glimmervoid 0.46.2-next.140 → 0.46.2-next.141
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/chunks/{main-DOdTqSJs.js → main-CR7hWfhj.js} +13 -13
- package/dist/client/assets/{alert-sound-BGx4LdwZ.js → alert-sound-BUKodjoa.js} +1 -1
- package/dist/client/assets/alert-sound-BUKodjoa.js.br +0 -0
- package/dist/client/assets/{benchmark-panel-DmyIMpSE.js → benchmark-panel-COhPYUMk.js} +1 -1
- package/dist/client/assets/benchmark-panel-COhPYUMk.js.br +0 -0
- package/dist/client/assets/{celebration-player-D5vqHPTv.js → celebration-player-J7-ZEqx0.js} +1 -1
- package/dist/client/assets/celebration-player-J7-ZEqx0.js.br +0 -0
- package/dist/client/assets/{dialogs-KuXZnfwC.js → dialogs-CH1b--5p.js} +1 -1
- package/dist/client/assets/dialogs-CH1b--5p.js.br +0 -0
- package/dist/client/assets/{doc-editor-ui-OPpbWk2i.js → doc-editor-ui-CMknDXM-.js} +1 -1
- package/dist/client/assets/doc-editor-ui-CMknDXM-.js.br +0 -0
- package/dist/client/assets/{first-run-checklist-BICtw3f_.js → first-run-checklist-DqVOUAR1.js} +1 -1
- package/dist/client/assets/first-run-checklist-DqVOUAR1.js.br +0 -0
- package/dist/client/assets/{hooks-panel-UXd6kftV.js → hooks-panel-DlLf9e5y.js} +1 -1
- package/dist/client/assets/hooks-panel-DlLf9e5y.js.br +0 -0
- package/dist/client/assets/{index-BcDfmAuk.js → index-C9FOevVH.js} +5 -5
- package/dist/client/assets/index-C9FOevVH.js.br +0 -0
- package/dist/client/assets/{issues-panel-D1xLAqkG.js → issues-panel-C5ynS_V9.js} +1 -1
- package/dist/client/assets/issues-panel-C5ynS_V9.js.br +0 -0
- package/dist/client/assets/{nyan-cat-D_Wgtw6g.js → nyan-cat-C7aStnXp.js} +1 -1
- package/dist/client/assets/nyan-cat-C7aStnXp.js.br +0 -0
- package/dist/client/assets/{phone-shell-BGUCsRyh.js → phone-shell-B5SBsrdy.js} +1 -1
- package/dist/client/assets/phone-shell-B5SBsrdy.js.br +0 -0
- package/dist/client/assets/{plan-face-DhN__i5r.js → plan-face-BIW7eUkD.js} +1 -1
- package/dist/client/assets/plan-face-BIW7eUkD.js.br +0 -0
- package/dist/client/assets/{plan-render-mPHVh69n.js → plan-render-D9CKjwhD.js} +1 -1
- package/dist/client/assets/plan-render-D9CKjwhD.js.br +0 -0
- package/dist/client/assets/{pr-scope-tabs-Cxb7a5h9.js → pr-scope-tabs-BtRXh-dU.js} +1 -1
- package/dist/client/assets/pr-scope-tabs-BtRXh-dU.js.br +0 -0
- package/dist/client/assets/{radar-panel-BrQynCPO.js → radar-panel-9mIN8IWs.js} +1 -1
- package/dist/client/assets/radar-panel-9mIN8IWs.js.br +0 -0
- package/dist/client/assets/{resume-dialog-BHeA8T70.js → resume-dialog-BVCjVjwE.js} +1 -1
- package/dist/client/assets/resume-dialog-BVCjVjwE.js.br +0 -0
- package/dist/client/assets/{review-queue-panel-BK2UvUw7.js → review-queue-panel-CjIbdtjx.js} +1 -1
- package/dist/client/assets/review-queue-panel-CjIbdtjx.js.br +0 -0
- package/dist/client/assets/{settings-panel-XqOeh2vT.js → settings-panel-BB4dlD0s.js} +2 -2
- package/dist/client/assets/settings-panel-BB4dlD0s.js.br +0 -0
- package/dist/client/assets/{shown-lightbox-Z7V0d1Ea.js → shown-lightbox-BMlKqsYu.js} +1 -1
- package/dist/client/assets/shown-lightbox-BMlKqsYu.js.br +0 -0
- package/dist/client/assets/{trace-panel-BMX1noJ8.js → trace-panel-BM50NrSk.js} +1 -1
- package/dist/client/assets/trace-panel-BM50NrSk.js.br +0 -0
- package/dist/client/assets/{usage-panel-Btu-cPSN.js → usage-panel-B9UToJmw.js} +1 -1
- package/dist/client/assets/usage-panel-B9UToJmw.js.br +0 -0
- package/dist/client/assets/{visions-panel-DlcWh7VY.js → visions-panel-qRoFKqdn.js} +1 -1
- package/dist/client/assets/visions-panel-qRoFKqdn.js.br +0 -0
- package/dist/client/index.html +1 -1
- package/dist/client/index.html.br +0 -0
- package/dist/server/index.js +1 -1
- package/package.json +1 -1
- package/dist/client/assets/alert-sound-BGx4LdwZ.js.br +0 -0
- package/dist/client/assets/benchmark-panel-DmyIMpSE.js.br +0 -0
- package/dist/client/assets/celebration-player-D5vqHPTv.js.br +0 -0
- package/dist/client/assets/dialogs-KuXZnfwC.js.br +0 -0
- package/dist/client/assets/doc-editor-ui-OPpbWk2i.js.br +0 -0
- package/dist/client/assets/first-run-checklist-BICtw3f_.js.br +0 -0
- package/dist/client/assets/hooks-panel-UXd6kftV.js.br +0 -0
- package/dist/client/assets/index-BcDfmAuk.js.br +0 -0
- package/dist/client/assets/issues-panel-D1xLAqkG.js.br +0 -0
- package/dist/client/assets/nyan-cat-D_Wgtw6g.js.br +0 -0
- package/dist/client/assets/phone-shell-BGUCsRyh.js.br +0 -0
- package/dist/client/assets/plan-face-DhN__i5r.js.br +0 -0
- package/dist/client/assets/plan-render-mPHVh69n.js.br +0 -0
- package/dist/client/assets/pr-scope-tabs-Cxb7a5h9.js.br +0 -0
- package/dist/client/assets/radar-panel-BrQynCPO.js.br +0 -0
- package/dist/client/assets/resume-dialog-BHeA8T70.js.br +0 -0
- package/dist/client/assets/review-queue-panel-BK2UvUw7.js.br +0 -0
- package/dist/client/assets/settings-panel-XqOeh2vT.js.br +0 -0
- package/dist/client/assets/shown-lightbox-Z7V0d1Ea.js.br +0 -0
- package/dist/client/assets/trace-panel-BMX1noJ8.js.br +0 -0
- package/dist/client/assets/usage-panel-Btu-cPSN.js.br +0 -0
- package/dist/client/assets/visions-panel-DlcWh7VY.js.br +0 -0
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/first-run-checklist-
|
|
2
|
-
import{l as e,m as t,n,o as r,s as i,u as a}from"./zod-BRLv4KqJ.js";import{$ as o,Bt as s,Ft as c,I as l,J as u,Lt as d,M as f,Nt as p,Ot as m,Pt as h,Q as g,St as _,Tt as v,Vt as ee,X as te,Y as ne,_ as re,_t as y,at as ie,ct as ae,f as oe,g as se,h as ce,ht as le,it as ue,jt as de,kt as fe,lt as pe,m as me,n as b,nt as he,ot as ge,q as _e,rt as ve,s as ye,t as be,u as xe,ut as Se,v as Ce,vt as we,wt as Te,xt as Ee,yt as De,zt as Oe}from"./updates-view-core-B_e7uWeW.js";import{A as ke,C as Ae,D as je,E as x,O as Me,S as Ne,T as Pe,b as Fe,c as Ie,d as Le,f as Re,g as ze,h as S,k as Be,l as Ve,m as C,n as He,o as w,t as Ue,v as We,w as Ge,x as Ke,y as qe}from"./dom-helpers-C7P3_59O.js";import{S as Je,_ as Ye,a as Xe,b as Ze,c as T,d as Qe,f as $e,g as et,h as tt,i as nt,l as E,m as rt,n as it,o as at,p as ot,r as st,s as ct,t as lt,u as ut,v as dt,x as ft,y as pt}from"./control-ws-BYg67aMo.js";import{S as mt,_ as ht,a as gt,b as _t,c as vt,d as yt,f as bt,g as xt,h as St,i as D,l as Ct,m as wt,n as Tt,o as O,r as k,s as Et,t as A,u as Dt,x as Ot,y as kt}from"./card-registry-DsAFY_8B.js";import{a as At,i as jt,n as Mt,r as Nt,t as Pt}from"./modal-Bh-cVr-I.js";import{a as Ft,c as It,i as Lt,n as Rt,o as zt,r as Bt,s as Vt,t as Ht}from"./session-tick-XGyxrRw7.js";(function(){let e=document.createElement(`link`).relList;if(e&&e.supports&&e.supports(`modulepreload`))return;for(let e of document.querySelectorAll(`link[rel="modulepreload"]`))n(e);new MutationObserver(e=>{for(let t of e)if(t.type===`childList`)for(let e of t.addedNodes)e.tagName===`LINK`&&e.rel===`modulepreload`&&n(e)}).observe(document,{childList:!0,subtree:!0});function t(e){let t={};return e.integrity&&(t.integrity=e.integrity),e.referrerPolicy&&(t.referrerPolicy=e.referrerPolicy),t.credentials=e.crossOrigin===`use-credentials`?`include`:e.crossOrigin===`anonymous`?`omit`:`same-origin`,t}function n(e){if(e.ep)return;e.ep=!0;let n=t(e);fetch(e.href,n)}})();var Ut=new Map,Wt=new Set;function Gt(e){let t=m.safeParse(e);if(!t.success)T(`reviews`,`dropped github-prs: ${Je(t.error.issues)}`);else{Ut=new Map(Object.entries(t.data.prs));for(let e of Wt)e()}}function Kt(e){return Ut.get(e.toLowerCase())}function qt(e){Wt.add(e)}function Jt(e){return e===`remote`?`remote`:`local`}function Yt(e,t){return Jt(t)===`local`||e!==`shutdown`}var Xt=Object.freeze({setTimeoutFn:(e,t)=>setTimeout(e,t),clearTimeoutFn:e=>clearTimeout(e),setIntervalFn:(e,t)=>setInterval(e,t),clearIntervalFn:e=>clearInterval(e)});function Zt(e){return typeof e!=`object`||!e||!(`unref`in e)||typeof e.unref!=`function`||e.unref(),e}function Qt({mode:e,delayMs:t,run:n,setTimeoutFn:r=Xt.setTimeoutFn,clearTimeoutFn:i=Xt.clearTimeoutFn,unref:a=!0}){let o=null;function s(){o&&=(i(o),null)}function c(){e===`leading`&&o||(s(),o=r(()=>{o=null,n()},t),a&&Zt(o))}return{schedule:c,cancel:s,get isArmed(){return o!==null}}}function $t(e){return`Git tracks an old Glimmervoid post-turn report in ${e===1?`1 repository`:`${e} repositories`}. Nothing reads it, so run this to stop git tracking it and commit the deletion git then shows. Glimmervoid deletes the file itself on its next start:`}var en=Object.freeze({layout:`desktop`,activeView:`focus`,phoneScreen:null,focusedSessionId:null,selectedSessionId:null,borrowedCardId:null}),tn=e=>e||null,nn=Object.freeze({setLayout:e=>({layout:e}),setActiveView:e=>({activeView:e}),setPhoneScreen:e=>({phoneScreen:tn(e)}),focusSession:e=>({focusedSessionId:tn(e)}),selectSession:e=>({selectedSessionId:tn(e)}),borrowCard:e=>({borrowedCardId:tn(e)})});function rn(e){let t=Object.freeze({...en,...e}),n=new Set;function r(){return t}function i(e){return typeof e==`function`?(n.add(e),()=>n.delete(e)):()=>{}}function a(e){let n=[];for(let r of Object.keys(e)){if(!(r in en))throw Error(`ui-state: unknown key "${r}"`);Object.is(t[r],e[r])||n.push(r)}return n}function o(e,r){let i=nn[e];if(!i)throw Error(`ui-state: unknown action "${e}"`);let o=i(r),s=a(o);if(s.length===0)return t;let c=t;t=Object.freeze({...t,...o});for(let e of n)try{e(t,s,c)}catch{}return t}return{snapshot:r,subscribe:i,dispatch:o}}var j=rn(),an=()=>j.snapshot().activeView;function on(){return j.snapshot().borrowedCardId}function sn(e,t,n,{className:r}={}){if(!e?.card||!n)return;let i=on();i&&i!==t&&cn();let a=e.card;a._cardHostClass&&a._cardHostClass!==r&&a.classList.remove(a._cardHostClass),a._cardHostClass=r||``,r&&a.classList.add(r),Ue(a,n),j.dispatch(`borrowCard`,t),e._ensureTerminalReady?.(),e._setBorrowed?.(!0),e._showPreferredFace?.()}function cn(){let e=on();if(j.dispatch(`borrowCard`,null),!e)return null;let t=O.get(e);t?._showTerminalFace?.(),t?._setBorrowed?.(!1),t?._setActiveViewer?.(!1);let n=t?.card;return n&&(n._cardHostClass&&n.classList.remove(n._cardHostClass),delete n._cardHostClass,ze(n,Tt)),e}var ln=[{name:`Nyan cat`,sprite:`is-cat`,trail:`is-rainbow`},{name:`Unicorn`,sprite:`is-unicorn`,trail:`is-sparkles`},{name:`Dragon`,sprite:`is-dragon`,trail:`is-embers`},{name:`Pig`,sprite:`is-pig`,trail:`is-hearts`},{name:`Whale`,sprite:`is-whale`,trail:`is-bubbles`},{name:`Fox`,sprite:`is-fox`,trail:`is-paws`},{name:`Frog`,sprite:`is-frog`,trail:`is-dust`},{name:`Penguin`,sprite:`is-penguin`,trail:`is-snow`},{name:`Bee`,sprite:`is-bee`,trail:`is-honey`},{name:`Owl`,sprite:`is-owl`,trail:`is-stars`},{name:`Cow`,sprite:`is-cow`,trail:`is-daisies`},{name:`Panda`,sprite:`is-panda`,trail:`is-bamboo`},{name:`Red panda`,sprite:`is-red-panda`,trail:`is-leaves`},{name:`Deer`,sprite:`is-deer`,trail:`is-acorns`},{name:`Horse`,sprite:`is-horse`,trail:`is-clover`},{name:`Sheep`,sprite:`is-sheep`,trail:`is-clouds`},{name:`Hamster`,sprite:`is-hamster`,trail:`is-seeds`},{name:`Giraffe`,sprite:`is-giraffe`,trail:`is-acacia`},{name:`Hedgehog`,sprite:`is-hedgehog`,trail:`is-logomarks`}],un=1/25,dn=3;function fn(e,t,n){return typeof e!=`number`||!Number.isFinite(e)?t:Math.min(n.max,Math.max(n.min,e))}function pn(e){if(!Array.isArray(e))return[];let t=new Set(ln.map(e=>e.sprite));return[...new Set(e.filter(e=>typeof e==`string`&&t.has(e)))]}function mn(e={}){let t=je,n=Be,r=Me,i=fn(e.flyingAnimalsMinGapSeconds,t.flyingAnimalsMinGapSeconds,n),a=fn(e.flyingAnimalsMaxGapSeconds,t.flyingAnimalsMaxGapSeconds,n),o=fn(e.flyingAnimalsMinDurationSeconds,t.flyingAnimalsMinDurationSeconds,r),s=fn(e.flyingAnimalsMaxDurationSeconds,t.flyingAnimalsMaxDurationSeconds,r);return{flyingAnimalsMinGapSeconds:Math.min(i,a),flyingAnimalsMaxGapSeconds:Math.max(i,a),flyingAnimalsMinDurationSeconds:Math.min(o,s),flyingAnimalsMaxDurationSeconds:Math.max(o,s),flyingAnimalsScale:fn(e.flyingAnimalsScale,t.flyingAnimalsScale,ke),flyingAnimalsOnPhone:typeof e.flyingAnimalsOnPhone==`boolean`?e.flyingAnimalsOnPhone:t.flyingAnimalsOnPhone,flyingAnimalsExcludedSprites:pn(e.flyingAnimalsExcludedSprites)}}function hn(e){return ln.some(t=>!e.includes(t.sprite))}function gn(e,t=-1,n=Math.random){let r=ln.flatMap((t,n)=>e.includes(t.sprite)?[]:[n]);if(r.length===0)return null;let i=r.length>1?r.filter(e=>e!==t):r,a=Math.min(1,Math.max(0,n()));return i[Math.min(i.length-1,Math.floor(a*i.length))]}function _n(e,t,n=Math.random,r){let i=r===void 0?gn(e.flyingAnimalsExcludedSprites,t,n):ln.findIndex(e=>e.sprite===r);if(i===null||i<0)return null;let a=e.flyingAnimalsMinDurationSeconds+n()*(e.flyingAnimalsMaxDurationSeconds-e.flyingAnimalsMinDurationSeconds),o=1e3*(e.flyingAnimalsMinGapSeconds+n()*(e.flyingAnimalsMaxGapSeconds-e.flyingAnimalsMinGapSeconds)),s=n()*a,c=n(),l=n()<.5,u=n()<un?dn:1;return{animalIndex:i,durationSeconds:a,gapMs:o,firstDelaySeconds:s,verticalProgress:c,isRightToLeft:l,arcProgress:(n()*2-1)*u}}function vn({isEnabled:e,hasReducedMotion:t,isPhone:n,options:r}){return t?`Flights are disabled because reduced motion is enabled.`:e?n&&!r.flyingAnimalsOnPhone?`Turn on Show on phone layout to use Fly now here.`:null:`Turn on flying animals to use Fly now.`}var yn=68,bn=42,xn=768,Sn=.68,Cn=64,wn=5,Tn=8,En=85;function Dn(e,t,n){return Math.min(Math.max(e,t),n)}function On({viewportWidthPx:e,viewportHeightPx:t,verticalProgress:n,isRightToLeft:r=!1,arcProgress:i=0}){let a=Dn(e/xn,Sn,1),o=(wn+70*n*n)*t/100,s=Math.max(o,Cn),c=En*t/100,l=Dn(i*Tn*t/100,Cn-s,c-s),u=-.45*e,d=1.45*e;return{scale:a,spriteWidthPx:yn,spriteHeightPx:bn,topPx:s,startXpx:r?d:u,endXpx:r?u:d,facing:r?-1:1,arcPx:l}}function kn(e,t){let n=Number.isFinite(t)&&t>0?t:1;return Math.max(1,Math.round(e*n))/n}function An(e,t,n){let r=kn(e.scale*t,n);return[[`--nyan-top`,`${e.topPx}px`],[`--nyan-scale`,String(r)],[`--nyan-width`,`${e.spriteWidthPx}px`],[`--nyan-height`,`${e.spriteHeightPx}px`],[`--nyan-start-x`,`${e.startXpx}px`],[`--nyan-end-x`,`${e.endXpx}px`],[`--nyan-facing`,String(e.facing)],[`--nyan-arc`,`${e.arcPx}px`],[`--nyan-travel`,`${Math.abs(e.endXpx-e.startXpx)/r}px`]]}var jn=`chime`,Mn=`custom:`,Nn=`/custom-sounds`,Pn=Object.freeze({chime:{label:`Chime`,peakGain:.12,tones:[{frequency:659.25,startSeconds:0,durationSeconds:.35,waveform:`sine`},{frequency:987.77,startSeconds:.14,durationSeconds:.5,waveform:`sine`}]},ping:{label:`Soft ping`,peakGain:.08,tones:[{frequency:1046.5,startSeconds:0,durationSeconds:.12,waveform:`triangle`},{frequency:1046.5,startSeconds:.13,durationSeconds:.12,waveform:`triangle`},{frequency:1318.51,startSeconds:.26,durationSeconds:.2,waveform:`triangle`}]},beep:{label:`Beep`,peakGain:.15,tones:[{frequency:880,startSeconds:0,durationSeconds:.2,waveform:`sine`}]}}),Fn=Object.freeze(Object.entries(Pn).map(([e,t])=>({id:e,label:t.label})));function In(e){return`${Mn}${e}`}function Ln(e){return`${Nn}/${encodeURIComponent(e)}`}function Rn(e){return e.startsWith(Mn)&&e.slice(7)||null}function zn(e){let t=(e??[]).map(e=>({id:In(e),label:e}));return[...Fn,...t]}function Bn(e,t){if(typeof e!=`string`)return jn;if(Object.hasOwn(Pn,e))return e;let n=Rn(e);return n&&(t===null||t.includes(n))?e:jn}function Vn(e){return typeof e!=`object`||!e||!(`sounds`in e)||!Array.isArray(e.sounds)?[]:e.sounds.filter(e=>typeof e==`string`&&e!==``)}function Hn(e,t){try{let n=localStorage.getItem(e);return n===null?t:JSON.parse(n)}catch{return t}}function Un(e,t){try{localStorage.setItem(e,JSON.stringify(t))}catch{}}var Wn=`↑`,Gn=`↓`,Kn=`←`,qn=`→`,Jn=`⌘`,Yn=`⌥`,Xn=Array.from({length:9},(e,t)=>[`Digit${t+1}`,t+1]),Zn=`KeyJ`,Qn=new Map([[`Minus`,`-`],[`Equal`,`=`],[`BracketLeft`,`[`],[`BracketRight`,`]`],[`Semicolon`,`;`],[`Quote`,`'`],[`Comma`,`,`],[`Period`,`.`],[`Slash`,`/`],[`Backquote`,"`"],[`Backslash`,`\\`]]),$n=new Set([`KeyQ`,`KeyW`,`KeyT`,`KeyN`,`KeyL`,`KeyR`]),er=new Set([`KeyC`,`KeyV`,`KeyX`,`KeyA`,`KeyZ`]);function tr(e){let t=/^(?:Key|Digit)([A-Z0-9])$/.exec(e);return t?t[1]:Qn.get(e)??null}function nr(e){return{action:`next-attention`,keyCaptions:[tr(e)??e],label:`Jump to the next session needing you`,stepByCode:new Map([[e,0]])}}var rr=[{action:`rail-step`,keyCaptions:[Wn,Gn],label:`Previous / next session in the rail`,stepByCode:new Map([[`ArrowUp`,-1],[`ArrowDown`,1]])},{action:`view-step`,keyCaptions:[Kn,qn],label:`Previous / next view tab`,stepByCode:new Map([[`ArrowLeft`,-1],[`ArrowRight`,1]]),unavailablePlatform:`other`},{action:`view-step`,keyCaptions:[`PgUp`,`PgDn`],label:`Previous / next view tab`,stepByCode:new Map([[`PageUp`,-1],[`PageDown`,1]]),unavailablePlatform:`mac`},{action:`session-nth`,keyCaptions:[`1..9`],label:`Jump to session 1 to 9`,stepByCode:new Map(Xn),isShellChord:!0,needsMacOption:!0},{action:`new-session`,keyCaptions:[`0`],label:`Add a session`,stepByCode:new Map([[`Digit0`,0]]),isShellChord:!0},{action:`quick-session`,keyCaptions:[`0`],label:`Add a session like the one you are in`,stepByCode:new Map([[`Digit0`,0]]),needsMacOption:!0,needsShiftOffMac:!0},{action:`merge`,keyCaptions:[`I`],label:`Merge the selected session`,stepByCode:new Map([[`KeyI`,0]])},{action:`close-session`,keyCaptions:[`K`],label:`Close the selected session`,stepByCode:new Map([[`KeyK`,0]])},{action:`resolve-or-resync`,keyCaptions:[`U`],label:`Resolve a parked merge, or resync the base branch`,stepByCode:new Map([[`KeyU`,0]]),isShellChord:!0},{action:`streamer-mode`,keyCaptions:[`\\`],label:`Turn streamer mode on or off`,stepByCode:new Map([[`Backslash`,0]]),isShellChord:!0}];function ir(e,t){return[nr(t),...rr].filter(t=>t.unavailablePlatform!==e)}function ar(e){if(tr(e)===null)return`Pick a letter, digit or punctuation key.`;if($n.has(e))return`The browser keeps that shortcut for itself.`;if(er.has(e))return`That shortcut stays with copy, cut, paste, select all and undo.`;let t=rr.find(t=>t.stepByCode.has(e));return t?`That key is already used to ${t.label.charAt(0).toLowerCase()}${t.label.slice(1)}.`:null}function or(e){return typeof e==`string`&&ar(e)===null}var sr=new Set([`Meta`,`Alt`,`Control`,`Shift`,`OS`]);function cr(e,t){if(e.key===`Escape`)return{kind:`cancelled`};if(sr.has(e.key))return{kind:`ignored`};let n=t===`mac`?`Cmd`:`Alt`;if(!ur(e,t,nr(e.code)))return{kind:`refused`,reason:`Hold ${n} alone while pressing the key.`};let r=ar(e.code);return r?{kind:`refused`,reason:r}:{kind:`recorded`,keyCode:e.code}}function lr(e){return/Mac|iPhone|iPad/.test(e)?`mac`:`other`}function ur(e,t,n){return e.ctrlKey?!1:t===`mac`?!e.shiftKey&&e.metaKey&&e.altKey===!!n.needsMacOption:e.altKey&&!e.metaKey&&e.shiftKey===!!n.needsShiftOffMac}function dr(e,t,n){return n.isTerminalFocused&&t!==`mac`&&!!e.isShellChord}var fr=new Set([`ArrowUp`,`ArrowDown`,`ArrowLeft`,`ArrowRight`,`PageUp`,`PageDown`]);function pr(e){return fr.has(e.key)?e.key:e.code}function mr(e,t,n={isTerminalFocused:!1},r=Zn){let i=pr(e);for(let a of ir(t,r)){let r=a.stepByCode.get(i);if(r!==void 0&&ur(e,t,a))return dr(a,t,n)?null:{action:a.action,step:r}}return null}function hr(e,t){return t===`focus`||e.action===`quick-session`}function gr(e,t){return e===`mac`?t?.needsMacOption?`${Jn}${Yn}`:Jn:t?.needsShiftOffMac?`Alt+Shift`:`Alt`}function _r(e,t,n){let r=ir(t,n).find(t=>t.action===e);if(!r)throw Error(`Unknown dashboard shortcut: ${e}`);return r}function vr(e,t,n=Zn){let r=_r(e,t,n);return[gr(t,r),r.keyCaptions.join(` `)]}function yr(e,t){let[n,r]=vr(e,t);return t===`mac`?`${n}${r}`:`${n}+${r}`}function br(e){let t=e===`mac`?`Meta`:`Alt`;return`ArrowUp ArrowDown ${t}+ArrowUp ${t}+ArrowDown`}function xr(e){return e===`mac`?`Cmd+Enter`:`Ctrl+Enter`}function Sr(e,t=Zn){let n=e===`mac`?Jn:`Ctrl`;return[{title:`Dashboard`,items:ir(e,t).map(t=>({combos:t.keyCaptions.map(n=>[gr(e,t),n]),label:t.label}))},{title:`Navigation`,items:[{combos:[[Wn],[Gn]],label:`Move rail highlight (rail focused)`},{combos:[[Kn],[qn]],label:`Switch view tab (tab focused)`}]},{title:`Reviews`,items:[{combos:[[`J`],[`K`]],label:`Next / previous pull request in the queue`},{combos:[[`N`],[`P`]],label:`Next / previous finding`},{combos:[[`X`]],label:`Post or drop the current finding`},{combos:[[`O`]],label:`Open the pull request in a session`},{combos:[[`A`],[`R`],[`C`]],label:`Pick Approve, Request changes or Comment`},{combos:[[n,`Enter`]],label:`Post the picked action, or the leading one from the note`},{combos:[[`Esc`]],label:`Drop the picked action`}]},{title:`Terminal`,items:[{combos:[[n,`C`]],label:`Copy selection`},{combos:[[n,`V`]],label:`Paste`},{combos:[[n,`Backspace`]],label:`Delete previous word`}]},{title:`General`,items:[{combos:[[`Esc`]],label:`Close dialog / cancel rename`}]}]}var Cr=`glimmervoid-ui-prefs`,wr=`glimmervoid:sidebar-width`,Tr=e=>t=>typeof t==`boolean`?t:e,Er=e=>t=>typeof t==`string`?t:e,Dr=e=>typeof e==`string`&&e?e:null,Or=e=>typeof e==`number`&&Number.isFinite(e)?e:null,kr=e=>t=>Or(t)??e,Ar=e=>Array.isArray(e)?[...new Set(e.filter(e=>typeof e==`string`&&e!==``))]:[],jr={soundEnabled:Tr(!0),soundId:Er(jn),themeId:Er(`phyrexian`),flyingAnimalsEnabled:Tr(!1),flyingAnimalsMinGapSeconds:kr(je.flyingAnimalsMinGapSeconds),flyingAnimalsMaxGapSeconds:kr(je.flyingAnimalsMaxGapSeconds),flyingAnimalsMinDurationSeconds:kr(je.flyingAnimalsMinDurationSeconds),flyingAnimalsMaxDurationSeconds:kr(je.flyingAnimalsMaxDurationSeconds),flyingAnimalsScale:kr(je.flyingAnimalsScale),flyingAnimalsOnPhone:Tr(je.flyingAnimalsOnPhone),flyingAnimalsExcludedSprites:pn,notificationsEnabled:Tr(!0),sessionUsageChips:Tr(!1),phoneArrowPad:Tr(!1),nextAttentionKeyCode:e=>or(e)?e:Zn,activeView:Er(`focus`),lastFocusedSessionId:Dr,railWidth:Or,reviewSidebarExpanded:Tr(!1),prsQueueWidth:Or,prsQueueCollapsed:Tr(!1),keptProjects:Ar,traceHiddenKinds:Ar,dismissedUpdate:Dr,telemetryNoticeDismissed:Tr(!1),radarAttentionAck:Er(``),prsAttentionAck:Er(``),prsUnseenRows:Er(``),usageAttentionAck:Er(``),visionsAttentionAck:Er(``)};function Mr(e,t,n){e[t]=jr[t](n)}function Nr(){let e=Hn(Cr,{}),t={};for(let n of Object.keys(jr))Mr(t,n,e?.[n]);return t}function M(e){return Nr()[e]}function N(e,t){let n=Nr();Mr(n,e,t),Un(Cr,n)}var Pr=()=>M(`soundEnabled`),Fr=e=>N(`soundEnabled`,e),Ir=()=>M(`soundId`),Lr=e=>N(`soundId`,e),Rr=()=>M(`notificationsEnabled`),zr=e=>N(`notificationsEnabled`,e),Br=()=>M(`sessionUsageChips`),Vr=e=>N(`sessionUsageChips`,e),Hr=()=>M(`phoneArrowPad`),Ur=e=>N(`phoneArrowPad`,e),Wr=()=>M(`nextAttentionKeyCode`),Gr=e=>N(`nextAttentionKeyCode`,e),Kr=()=>M(`themeId`),qr=e=>N(`themeId`,e),Jr=()=>M(`flyingAnimalsEnabled`),Yr=e=>N(`flyingAnimalsEnabled`,e),Xr=()=>M(`activeView`),Zr=e=>N(`activeView`,e),Qr=()=>M(`railWidth`),$r=e=>N(`railWidth`,e),ei=()=>M(`reviewSidebarExpanded`),ti=e=>N(`reviewSidebarExpanded`,e),ni=()=>M(`prsQueueWidth`),ri=e=>N(`prsQueueWidth`,e),ii=()=>M(`prsQueueCollapsed`),ai=e=>N(`prsQueueCollapsed`,e),oi=()=>M(`keptProjects`),si=e=>N(`keptProjects`,e),ci=()=>M(`traceHiddenKinds`),li=e=>N(`traceHiddenKinds`,e),ui=()=>M(`dismissedUpdate`),di=e=>N(`dismissedUpdate`,e),fi=()=>M(`telemetryNoticeDismissed`),pi=e=>N(`telemetryNoticeDismissed`,e),mi=()=>M(`radarAttentionAck`),hi=e=>N(`radarAttentionAck`,e),gi=()=>M(`prsAttentionAck`),_i=e=>N(`prsAttentionAck`,e),vi=()=>M(`prsUnseenRows`),yi=e=>N(`prsUnseenRows`,e),bi=()=>M(`usageAttentionAck`),xi=e=>N(`usageAttentionAck`,e),Si=()=>M(`visionsAttentionAck`),Ci=e=>N(`visionsAttentionAck`,e),wi=()=>M(`lastFocusedSessionId`),Ti=e=>N(`lastFocusedSessionId`,e),Ei=()=>Or(Hn(wr,null)),Di=e=>Un(wr,Or(e)),Oi=e=>N(`flyingAnimalsMinGapSeconds`,e),ki=e=>N(`flyingAnimalsMaxGapSeconds`,e),Ai=e=>N(`flyingAnimalsMinDurationSeconds`,e),ji=e=>N(`flyingAnimalsMaxDurationSeconds`,e),Mi=e=>N(`flyingAnimalsScale`,e),Ni=e=>N(`flyingAnimalsOnPhone`,e),Pi=e=>N(`flyingAnimalsExcludedSprites`,e),Fi=()=>mn(Nr()),Ii=()=>{let e=Nr();return Object.fromEntries(Object.keys(je).map(t=>[t,e[t]]))},Li=()=>Un(Cr,{...Nr(),...je}),Ri=On({viewportWidthPx:1440,viewportHeightPx:900,verticalProgress:0});function zi(e,t=``){let n=w(`div`,`flying-animal-preview ${t}`.trim());n.setAttribute(`aria-hidden`,`true`),n.style.setProperty(`--nyan-width`,`${Ri.spriteWidthPx}px`),n.style.setProperty(`--nyan-height`,`${Ri.spriteHeightPx}px`);let r=w(`div`,`flying-animal-preview-stage`);return r.append(w(`div`,`nyan-trail ${e.trail}`),w(`div`,`nyan-sprite ${e.sprite}`)),n.append(r),n}function Bi(){let e=gn(Fi().flyingAnimalsExcludedSprites);return e===null?null:ln[e]??null}var Vi=[],Hi=new Set;function Ui(e){let t=ie.safeParse(e);if(t.success){Vi=t.data;for(let e of Hi)e()}}function Wi(e){return Vi.find(t=>t.agent===e)??null}function Gi(e){return Hi.add(e),()=>{Hi.delete(e)}}var Ki=`modulepreload`,qi=function(e){return`/`+e},Ji={},Yi=function(e){return e.pathname.endsWith(`.css`)},Xi=function(e,t,n){if(t in e)return e[t];let r=n();if(!r){e[t]=void 0;return}let i=r.then(()=>{e[t]=void 0},n=>{throw e[t]=void 0,n});return e[t]=i,i},P=function(e,t,n){let r=Promise.resolve();if(t&&t.length>0){let e,i=document.querySelector(`meta[property=csp-nonce]`),a=i?.nonce||i?.getAttribute(`nonce`);function o(e){return Promise.all(e.map(e=>Promise.resolve(e).then(e=>({status:`fulfilled`,value:e}),e=>({status:`rejected`,reason:e}))))}function s(e){return import.meta.resolve?new URL(import.meta.resolve(e)):new URL(e,import.meta.url)}r=o(t.map(t=>{t=qi(t,n);let r=s(t),i=Yi(r);return Xi(Ji,r.href,()=>{if(e===void 0){e={all:new Set,styles:new Set};let t=document.getElementsByTagName(`link`);for(let n=t.length-1;n>=0;n--){let r=t[n];e.all.add(r.href),r.rel===`stylesheet`&&e.styles.add(r.href)}}if((i?e.styles:e.all).has(r.href))return;let t=document.createElement(`link`);if(t.rel=i?`stylesheet`:Ki,i||(t.as=`script`),t.crossOrigin=``,t.href=r.href,a&&t.setAttribute(`nonce`,a),document.head.appendChild(t),i)return new Promise((e,n)=>{t.addEventListener(`load`,e),t.addEventListener(`error`,()=>n(Error(`Unable to preload CSS for ${r}`)))})})}).filter(e=>e!==void 0))}function i(e){let t=new Event(`vite:preloadError`,{cancelable:!0});if(t.payload=e,window.dispatchEvent(t),!t.defaultPrevented)throw e}return r.then(t=>{for(let e of t||[])e.status===`rejected`&&i(e.reason);return e().catch(i)})},Zi=null,Qi=null,$i=!1,ea=null;function ta(){return Qi??=P(()=>import(`./first-run-checklist-BICtw3f_.js`).then(e=>(Zi=e,e),e=>(Qi=null,T(`first-run`,`first-run checklist failed to load: ${ft(e)}`),null)),__vite__mapDeps([0,1,2,3,4,5])),Qi}function na(e,t){ea={host:e,isShown:t},Zi?Zi.showFirstRunChecklist(e,t):t&&$i&&ta().then(e=>{e&&ea&&e.showFirstRunChecklist(ea.host,ea.isShown)})}function ra(){Zi?.refreshFirstRunChecklist()}function ia(){$i=!0,ea&&na(ea.host,ea.isShown)}var aa=new Map;function oa(e){return aa.get(e)??[]}function sa(e){return oa(e).length>0}function ca(e){k(e)?.btnDocs.classList.toggle(`visible`,sa(e))}var la=null,ua=null;function da(){return ua??=P(()=>import(`./doc-editor-ui-OPpbWk2i.js`).then(e=>(la=e,e),e=>(ua=null,T(`doc-editor`,`doc editor failed to load: ${ft(e)}`),null)),__vite__mapDeps([6,1,2,3,4,7,8])),ua}function fa(e){da().then(t=>t?.openDocEditor(e))}function pa(e){la?.applyDocsToOpenEditor(e)}function ma(e){aa.set(e.id,e.docs),e.docs.length===0&&aa.delete(e.id),ca(e.id),pa(e.id)}function ha(e){let t=[...aa.keys()];aa.clear();for(let[t,n]of Object.entries(e.sessions))aa.set(t,n);for(let e of new Set([...t,...aa.keys()]))ca(e),pa(e)}var ga=new Map,_a=new Set,va=[],ya=[],ba=null,xa=null,Sa=!1;function Ca(e){return ga.get(e)??[]}function wa(e){return Ca(e).length>0}function Ta(e){return _a.has(e)}function Ea(e){va.push(e)}function Da(e){ya.push(e)}function Oa(e){let t=k(e);t&&(t.btnShown.classList.toggle(`visible`,wa(e)),t.shownUnopenedDot.hidden=!Ta(e))}function ka(e){if(_a.delete(e)){Oa(e);for(let t of va)t(e,[])}}function Aa(){return xa??=P(()=>import(`./shown-lightbox-Z7V0d1Ea.js`).then(e=>(ba=e,e),e=>(xa=null,T(`shown-files`,`shown file viewer failed to load: ${ft(e)}`),null)),__vite__mapDeps([9,1,7])),xa}function ja(e,t=null){wa(e)&&Aa().then(n=>n?.openShownLightbox(e,t))}function Ma(e){return e.slice(-50)}function Na(e,t){if(t.length===0)return;let n=ba?.isLightboxOpenOn(e)??!1;n||_a.add(e),Oa(e),n&&ba?.repaintLightboxOn(e);for(let n of va)n(e,t)}function Pa(e){let t=new Set(Ca(e.id).map(e=>e.id)),n=e.files.filter(e=>!t.has(e.id));if(ga.set(e.id,Ma([...Ca(e.id),...n])),Na(e.id,n),n.length!==0)for(let t of ya)t(e.id,n)}function Fa(e){let t=new Map(ga),n=Sa;Sa=!0,ga.clear();for(let[t,n]of Object.entries(e.sessions))ga.set(t,Ma(n));for(let e of new Set([...t.keys(),...ga.keys()])){wa(e)||_a.delete(e);let r=new Set((t.get(e)??[]).map(e=>e.id)),i=n?Ca(e).filter(e=>!r.has(e.id)):[];Oa(e),Na(e,i),ba?.repaintLightboxOn(e)}}function Ia({dialogClass:e,titleText:t,titleId:n,body:r,onCloseRequest:i}){let a=Nt({dialogClass:e,closeOnBackdrop:!1,onEscape:i}),o=w(`div`,`coherence-journal-header`),s=w(`h3`,`dialog-title`,t);s.id=n;let c=w(`button`,`btn-dialog btn-dialog-cancel`,`Close`);return c.type=`button`,o.append(s,c),a.dialog.append(o,...r),Pt(a.dialog,s.id),c.addEventListener(`click`,i),a.overlay.addEventListener(`click`,e=>{e.target===a.overlay&&i()}),{close:a.close,focusClose:()=>c.focus()}}function La({requestPrefix:e,dialogClass:t,titleText:n,unavailableLabel:r,timeoutMs:i}){let a=null;function o(e){e.timer!==null&&clearTimeout(e.timer),e.timer=null,e.requestId=null}function s({sessionId:s,status:c,body:l,parts:u,paintBeforeRequest:d,buildRequest:f}){a?.close();let p=st(e),m=Ia({dialogClass:t,titleText:n,titleId:`${p}-title`,body:l,onCloseRequest:()=>h.close()}),h={sessionId:s,status:c,parts:u,requestId:p,timer:null,close:()=>{o(h),a===h&&(a=null),m.close()}};a=h,d?.(),m.focusClose(),E(f(p))?h.timer=setTimeout(()=>{h.requestId=null,h.timer=null,c.textContent=`${r}: request timed out`},i):(h.requestId=null,c.textContent=`${r}: not connected`)}function c(e){let t=a;return!t||t.sessionId!==e.id||t.requestId===null||t.requestId!==e.requestId?null:(o(t),t)}return{open:s,settleResponse:c,currentPanel:()=>a}}var Ra=2,za={needsYou:1,broken:2,askedOfYou:3,waiting:4,settled:5},Ba={danger:za.broken,warn:za.askedOfYou,wait:za.waiting,ok:za.settled,muted:za.settled};function Va(e){return e?Ba[e]:za.settled}function Ha(e){let t=[...e].sort((e,t)=>e.tier-t.tier),n=t.slice(Ra);return{visible:t.slice(0,Ra),overflowCount:n.length,overflowHoverText:n.map(e=>`${e.text} ${e.hoverText}`).join(`
|
|
1
|
+
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/first-run-checklist-DqVOUAR1.js","assets/dom-helpers-C7P3_59O.js","assets/control-ws-BYg67aMo.js","assets/updates-view-core-B_e7uWeW.js","assets/zod-BRLv4KqJ.js","assets/repo-roots-adder-CiAPoQhG.js","assets/doc-editor-ui-CMknDXM-.js","assets/modal-Bh-cVr-I.js","assets/plan-render-D9CKjwhD.js","assets/shown-lightbox-BMlKqsYu.js","assets/dialogs-CH1b--5p.js","assets/session-tick-XGyxrRw7.js","assets/card-registry-DsAFY_8B.js","assets/xterm-CdMfg81L.js","assets/rolldown-runtime-DK3Fl9T5.js","assets/resume-dialog-BVCjVjwE.js","assets/plan-face-BIW7eUkD.js","assets/plan-face-BKvWQchw.css","assets/phone-shell-B5SBsrdy.js","assets/celebration-player-J7-ZEqx0.js","assets/alert-sound-BUKodjoa.js","assets/nyan-cat-C7aStnXp.js","assets/review-queue-panel-CjIbdtjx.js","assets/pr-scope-tabs-BtRXh-dU.js","assets/review-queue-panel-Dfky79CM.css","assets/issues-panel-C5ynS_V9.js","assets/issues-panel-CPjbxcmf.css","assets/usage-panel-B9UToJmw.js","assets/usage-panel-DNM1lX5J.css","assets/radar-panel-9mIN8IWs.js","assets/radar-panel-DZnRUVtP.css","assets/visions-panel-qRoFKqdn.js","assets/visions-panel-pBP6aaaP.css","assets/hooks-panel-DlLf9e5y.js","assets/hooks-panel-vO6hRv8A.css","assets/trace-panel-BM50NrSk.js","assets/trace-panel-8Txvz14_.css","assets/benchmark-panel-COhPYUMk.js","assets/benchmark-panel-DDwPBdjB.css","assets/settings-panel-BB4dlD0s.js","assets/settings-panel-DF9_cNvu.css"])))=>i.map(i=>d[i]);
|
|
2
|
+
import{l as e,m as t,n,o as r,s as i,u as a}from"./zod-BRLv4KqJ.js";import{$ as o,Bt as s,Ft as c,I as l,J as u,Lt as d,M as f,Nt as p,Ot as m,Pt as h,Q as g,St as _,Tt as v,Vt as ee,X as te,Y as ne,_ as re,_t as y,at as ie,ct as ae,f as oe,g as se,h as ce,ht as le,it as ue,jt as de,kt as fe,lt as pe,m as me,n as b,nt as he,ot as ge,q as _e,rt as ve,s as ye,t as be,u as xe,ut as Se,v as Ce,vt as we,wt as Te,xt as Ee,yt as De,zt as Oe}from"./updates-view-core-B_e7uWeW.js";import{A as ke,C as Ae,D as je,E as x,O as Me,S as Ne,T as Pe,b as Fe,c as Ie,d as Le,f as Re,g as ze,h as S,k as Be,l as Ve,m as C,n as He,o as w,t as Ue,v as We,w as Ge,x as Ke,y as qe}from"./dom-helpers-C7P3_59O.js";import{S as Je,_ as Ye,a as Xe,b as Ze,c as T,d as Qe,f as $e,g as et,h as tt,i as nt,l as E,m as rt,n as it,o as at,p as ot,r as st,s as ct,t as lt,u as ut,v as dt,x as ft,y as pt}from"./control-ws-BYg67aMo.js";import{S as mt,_ as ht,a as gt,b as _t,c as vt,d as yt,f as bt,g as xt,h as St,i as D,l as Ct,m as wt,n as Tt,o as O,r as k,s as Et,t as A,u as Dt,x as Ot,y as kt}from"./card-registry-DsAFY_8B.js";import{a as At,i as jt,n as Mt,r as Nt,t as Pt}from"./modal-Bh-cVr-I.js";import{a as Ft,c as It,i as Lt,n as Rt,o as zt,r as Bt,s as Vt,t as Ht}from"./session-tick-XGyxrRw7.js";(function(){let e=document.createElement(`link`).relList;if(e&&e.supports&&e.supports(`modulepreload`))return;for(let e of document.querySelectorAll(`link[rel="modulepreload"]`))n(e);new MutationObserver(e=>{for(let t of e)if(t.type===`childList`)for(let e of t.addedNodes)e.tagName===`LINK`&&e.rel===`modulepreload`&&n(e)}).observe(document,{childList:!0,subtree:!0});function t(e){let t={};return e.integrity&&(t.integrity=e.integrity),e.referrerPolicy&&(t.referrerPolicy=e.referrerPolicy),t.credentials=e.crossOrigin===`use-credentials`?`include`:e.crossOrigin===`anonymous`?`omit`:`same-origin`,t}function n(e){if(e.ep)return;e.ep=!0;let n=t(e);fetch(e.href,n)}})();var Ut=new Map,Wt=new Set;function Gt(e){let t=m.safeParse(e);if(!t.success)T(`reviews`,`dropped github-prs: ${Je(t.error.issues)}`);else{Ut=new Map(Object.entries(t.data.prs));for(let e of Wt)e()}}function Kt(e){return Ut.get(e.toLowerCase())}function qt(e){Wt.add(e)}function Jt(e){return e===`remote`?`remote`:`local`}function Yt(e,t){return Jt(t)===`local`||e!==`shutdown`}var Xt=Object.freeze({setTimeoutFn:(e,t)=>setTimeout(e,t),clearTimeoutFn:e=>clearTimeout(e),setIntervalFn:(e,t)=>setInterval(e,t),clearIntervalFn:e=>clearInterval(e)});function Zt(e){return typeof e!=`object`||!e||!(`unref`in e)||typeof e.unref!=`function`||e.unref(),e}function Qt({mode:e,delayMs:t,run:n,setTimeoutFn:r=Xt.setTimeoutFn,clearTimeoutFn:i=Xt.clearTimeoutFn,unref:a=!0}){let o=null;function s(){o&&=(i(o),null)}function c(){e===`leading`&&o||(s(),o=r(()=>{o=null,n()},t),a&&Zt(o))}return{schedule:c,cancel:s,get isArmed(){return o!==null}}}function $t(e){return`Git tracks an old Glimmervoid post-turn report in ${e===1?`1 repository`:`${e} repositories`}. Nothing reads it, so run this to stop git tracking it and commit the deletion git then shows. Glimmervoid deletes the file itself on its next start:`}var en=Object.freeze({layout:`desktop`,activeView:`focus`,phoneScreen:null,focusedSessionId:null,selectedSessionId:null,borrowedCardId:null}),tn=e=>e||null,nn=Object.freeze({setLayout:e=>({layout:e}),setActiveView:e=>({activeView:e}),setPhoneScreen:e=>({phoneScreen:tn(e)}),focusSession:e=>({focusedSessionId:tn(e)}),selectSession:e=>({selectedSessionId:tn(e)}),borrowCard:e=>({borrowedCardId:tn(e)})});function rn(e){let t=Object.freeze({...en,...e}),n=new Set;function r(){return t}function i(e){return typeof e==`function`?(n.add(e),()=>n.delete(e)):()=>{}}function a(e){let n=[];for(let r of Object.keys(e)){if(!(r in en))throw Error(`ui-state: unknown key "${r}"`);Object.is(t[r],e[r])||n.push(r)}return n}function o(e,r){let i=nn[e];if(!i)throw Error(`ui-state: unknown action "${e}"`);let o=i(r),s=a(o);if(s.length===0)return t;let c=t;t=Object.freeze({...t,...o});for(let e of n)try{e(t,s,c)}catch{}return t}return{snapshot:r,subscribe:i,dispatch:o}}var j=rn(),an=()=>j.snapshot().activeView;function on(){return j.snapshot().borrowedCardId}function sn(e,t,n,{className:r}={}){if(!e?.card||!n)return;let i=on();i&&i!==t&&cn();let a=e.card;a._cardHostClass&&a._cardHostClass!==r&&a.classList.remove(a._cardHostClass),a._cardHostClass=r||``,r&&a.classList.add(r),Ue(a,n),j.dispatch(`borrowCard`,t),e._ensureTerminalReady?.(),e._setBorrowed?.(!0),e._showPreferredFace?.()}function cn(){let e=on();if(j.dispatch(`borrowCard`,null),!e)return null;let t=O.get(e);t?._showTerminalFace?.(),t?._setBorrowed?.(!1),t?._setActiveViewer?.(!1);let n=t?.card;return n&&(n._cardHostClass&&n.classList.remove(n._cardHostClass),delete n._cardHostClass,ze(n,Tt)),e}var ln=[{name:`Nyan cat`,sprite:`is-cat`,trail:`is-rainbow`},{name:`Unicorn`,sprite:`is-unicorn`,trail:`is-sparkles`},{name:`Dragon`,sprite:`is-dragon`,trail:`is-embers`},{name:`Pig`,sprite:`is-pig`,trail:`is-hearts`},{name:`Whale`,sprite:`is-whale`,trail:`is-bubbles`},{name:`Fox`,sprite:`is-fox`,trail:`is-paws`},{name:`Frog`,sprite:`is-frog`,trail:`is-dust`},{name:`Penguin`,sprite:`is-penguin`,trail:`is-snow`},{name:`Bee`,sprite:`is-bee`,trail:`is-honey`},{name:`Owl`,sprite:`is-owl`,trail:`is-stars`},{name:`Cow`,sprite:`is-cow`,trail:`is-daisies`},{name:`Panda`,sprite:`is-panda`,trail:`is-bamboo`},{name:`Red panda`,sprite:`is-red-panda`,trail:`is-leaves`},{name:`Deer`,sprite:`is-deer`,trail:`is-acorns`},{name:`Horse`,sprite:`is-horse`,trail:`is-clover`},{name:`Sheep`,sprite:`is-sheep`,trail:`is-clouds`},{name:`Hamster`,sprite:`is-hamster`,trail:`is-seeds`},{name:`Giraffe`,sprite:`is-giraffe`,trail:`is-acacia`},{name:`Hedgehog`,sprite:`is-hedgehog`,trail:`is-logomarks`}],un=1/25,dn=3;function fn(e,t,n){return typeof e!=`number`||!Number.isFinite(e)?t:Math.min(n.max,Math.max(n.min,e))}function pn(e){if(!Array.isArray(e))return[];let t=new Set(ln.map(e=>e.sprite));return[...new Set(e.filter(e=>typeof e==`string`&&t.has(e)))]}function mn(e={}){let t=je,n=Be,r=Me,i=fn(e.flyingAnimalsMinGapSeconds,t.flyingAnimalsMinGapSeconds,n),a=fn(e.flyingAnimalsMaxGapSeconds,t.flyingAnimalsMaxGapSeconds,n),o=fn(e.flyingAnimalsMinDurationSeconds,t.flyingAnimalsMinDurationSeconds,r),s=fn(e.flyingAnimalsMaxDurationSeconds,t.flyingAnimalsMaxDurationSeconds,r);return{flyingAnimalsMinGapSeconds:Math.min(i,a),flyingAnimalsMaxGapSeconds:Math.max(i,a),flyingAnimalsMinDurationSeconds:Math.min(o,s),flyingAnimalsMaxDurationSeconds:Math.max(o,s),flyingAnimalsScale:fn(e.flyingAnimalsScale,t.flyingAnimalsScale,ke),flyingAnimalsOnPhone:typeof e.flyingAnimalsOnPhone==`boolean`?e.flyingAnimalsOnPhone:t.flyingAnimalsOnPhone,flyingAnimalsExcludedSprites:pn(e.flyingAnimalsExcludedSprites)}}function hn(e){return ln.some(t=>!e.includes(t.sprite))}function gn(e,t=-1,n=Math.random){let r=ln.flatMap((t,n)=>e.includes(t.sprite)?[]:[n]);if(r.length===0)return null;let i=r.length>1?r.filter(e=>e!==t):r,a=Math.min(1,Math.max(0,n()));return i[Math.min(i.length-1,Math.floor(a*i.length))]}function _n(e,t,n=Math.random,r){let i=r===void 0?gn(e.flyingAnimalsExcludedSprites,t,n):ln.findIndex(e=>e.sprite===r);if(i===null||i<0)return null;let a=e.flyingAnimalsMinDurationSeconds+n()*(e.flyingAnimalsMaxDurationSeconds-e.flyingAnimalsMinDurationSeconds),o=1e3*(e.flyingAnimalsMinGapSeconds+n()*(e.flyingAnimalsMaxGapSeconds-e.flyingAnimalsMinGapSeconds)),s=n()*a,c=n(),l=n()<.5,u=n()<un?dn:1;return{animalIndex:i,durationSeconds:a,gapMs:o,firstDelaySeconds:s,verticalProgress:c,isRightToLeft:l,arcProgress:(n()*2-1)*u}}function vn({isEnabled:e,hasReducedMotion:t,isPhone:n,options:r}){return t?`Flights are disabled because reduced motion is enabled.`:e?n&&!r.flyingAnimalsOnPhone?`Turn on Show on phone layout to use Fly now here.`:null:`Turn on flying animals to use Fly now.`}var yn=68,bn=42,xn=768,Sn=.68,Cn=64,wn=5,Tn=8,En=85;function Dn(e,t,n){return Math.min(Math.max(e,t),n)}function On({viewportWidthPx:e,viewportHeightPx:t,verticalProgress:n,isRightToLeft:r=!1,arcProgress:i=0}){let a=Dn(e/xn,Sn,1),o=(wn+70*n*n)*t/100,s=Math.max(o,Cn),c=En*t/100,l=Dn(i*Tn*t/100,Cn-s,c-s),u=-.45*e,d=1.45*e;return{scale:a,spriteWidthPx:yn,spriteHeightPx:bn,topPx:s,startXpx:r?d:u,endXpx:r?u:d,facing:r?-1:1,arcPx:l}}function kn(e,t){let n=Number.isFinite(t)&&t>0?t:1;return Math.max(1,Math.round(e*n))/n}function An(e,t,n){let r=kn(e.scale*t,n);return[[`--nyan-top`,`${e.topPx}px`],[`--nyan-scale`,String(r)],[`--nyan-width`,`${e.spriteWidthPx}px`],[`--nyan-height`,`${e.spriteHeightPx}px`],[`--nyan-start-x`,`${e.startXpx}px`],[`--nyan-end-x`,`${e.endXpx}px`],[`--nyan-facing`,String(e.facing)],[`--nyan-arc`,`${e.arcPx}px`],[`--nyan-travel`,`${Math.abs(e.endXpx-e.startXpx)/r}px`]]}var jn=`chime`,Mn=`custom:`,Nn=`/custom-sounds`,Pn=Object.freeze({chime:{label:`Chime`,peakGain:.12,tones:[{frequency:659.25,startSeconds:0,durationSeconds:.35,waveform:`sine`},{frequency:987.77,startSeconds:.14,durationSeconds:.5,waveform:`sine`}]},ping:{label:`Soft ping`,peakGain:.08,tones:[{frequency:1046.5,startSeconds:0,durationSeconds:.12,waveform:`triangle`},{frequency:1046.5,startSeconds:.13,durationSeconds:.12,waveform:`triangle`},{frequency:1318.51,startSeconds:.26,durationSeconds:.2,waveform:`triangle`}]},beep:{label:`Beep`,peakGain:.15,tones:[{frequency:880,startSeconds:0,durationSeconds:.2,waveform:`sine`}]}}),Fn=Object.freeze(Object.entries(Pn).map(([e,t])=>({id:e,label:t.label})));function In(e){return`${Mn}${e}`}function Ln(e){return`${Nn}/${encodeURIComponent(e)}`}function Rn(e){return e.startsWith(Mn)&&e.slice(7)||null}function zn(e){let t=(e??[]).map(e=>({id:In(e),label:e}));return[...Fn,...t]}function Bn(e,t){if(typeof e!=`string`)return jn;if(Object.hasOwn(Pn,e))return e;let n=Rn(e);return n&&(t===null||t.includes(n))?e:jn}function Vn(e){return typeof e!=`object`||!e||!(`sounds`in e)||!Array.isArray(e.sounds)?[]:e.sounds.filter(e=>typeof e==`string`&&e!==``)}function Hn(e,t){try{let n=localStorage.getItem(e);return n===null?t:JSON.parse(n)}catch{return t}}function Un(e,t){try{localStorage.setItem(e,JSON.stringify(t))}catch{}}var Wn=`↑`,Gn=`↓`,Kn=`←`,qn=`→`,Jn=`⌘`,Yn=`⌥`,Xn=Array.from({length:9},(e,t)=>[`Digit${t+1}`,t+1]),Zn=`KeyJ`,Qn=new Map([[`Minus`,`-`],[`Equal`,`=`],[`BracketLeft`,`[`],[`BracketRight`,`]`],[`Semicolon`,`;`],[`Quote`,`'`],[`Comma`,`,`],[`Period`,`.`],[`Slash`,`/`],[`Backquote`,"`"],[`Backslash`,`\\`]]),$n=new Set([`KeyQ`,`KeyW`,`KeyT`,`KeyN`,`KeyL`,`KeyR`]),er=new Set([`KeyC`,`KeyV`,`KeyX`,`KeyA`,`KeyZ`]);function tr(e){let t=/^(?:Key|Digit)([A-Z0-9])$/.exec(e);return t?t[1]:Qn.get(e)??null}function nr(e){return{action:`next-attention`,keyCaptions:[tr(e)??e],label:`Jump to the next session needing you`,stepByCode:new Map([[e,0]])}}var rr=[{action:`rail-step`,keyCaptions:[Wn,Gn],label:`Previous / next session in the rail`,stepByCode:new Map([[`ArrowUp`,-1],[`ArrowDown`,1]])},{action:`view-step`,keyCaptions:[Kn,qn],label:`Previous / next view tab`,stepByCode:new Map([[`ArrowLeft`,-1],[`ArrowRight`,1]]),unavailablePlatform:`other`},{action:`view-step`,keyCaptions:[`PgUp`,`PgDn`],label:`Previous / next view tab`,stepByCode:new Map([[`PageUp`,-1],[`PageDown`,1]]),unavailablePlatform:`mac`},{action:`session-nth`,keyCaptions:[`1..9`],label:`Jump to session 1 to 9`,stepByCode:new Map(Xn),isShellChord:!0,needsMacOption:!0},{action:`new-session`,keyCaptions:[`0`],label:`Add a session`,stepByCode:new Map([[`Digit0`,0]]),isShellChord:!0},{action:`quick-session`,keyCaptions:[`0`],label:`Add a session like the one you are in`,stepByCode:new Map([[`Digit0`,0]]),needsMacOption:!0,needsShiftOffMac:!0},{action:`merge`,keyCaptions:[`I`],label:`Merge the selected session`,stepByCode:new Map([[`KeyI`,0]])},{action:`close-session`,keyCaptions:[`K`],label:`Close the selected session`,stepByCode:new Map([[`KeyK`,0]])},{action:`resolve-or-resync`,keyCaptions:[`U`],label:`Resolve a parked merge, or resync the base branch`,stepByCode:new Map([[`KeyU`,0]]),isShellChord:!0},{action:`streamer-mode`,keyCaptions:[`\\`],label:`Turn streamer mode on or off`,stepByCode:new Map([[`Backslash`,0]]),isShellChord:!0}];function ir(e,t){return[nr(t),...rr].filter(t=>t.unavailablePlatform!==e)}function ar(e){if(tr(e)===null)return`Pick a letter, digit or punctuation key.`;if($n.has(e))return`The browser keeps that shortcut for itself.`;if(er.has(e))return`That shortcut stays with copy, cut, paste, select all and undo.`;let t=rr.find(t=>t.stepByCode.has(e));return t?`That key is already used to ${t.label.charAt(0).toLowerCase()}${t.label.slice(1)}.`:null}function or(e){return typeof e==`string`&&ar(e)===null}var sr=new Set([`Meta`,`Alt`,`Control`,`Shift`,`OS`]);function cr(e,t){if(e.key===`Escape`)return{kind:`cancelled`};if(sr.has(e.key))return{kind:`ignored`};let n=t===`mac`?`Cmd`:`Alt`;if(!ur(e,t,nr(e.code)))return{kind:`refused`,reason:`Hold ${n} alone while pressing the key.`};let r=ar(e.code);return r?{kind:`refused`,reason:r}:{kind:`recorded`,keyCode:e.code}}function lr(e){return/Mac|iPhone|iPad/.test(e)?`mac`:`other`}function ur(e,t,n){return e.ctrlKey?!1:t===`mac`?!e.shiftKey&&e.metaKey&&e.altKey===!!n.needsMacOption:e.altKey&&!e.metaKey&&e.shiftKey===!!n.needsShiftOffMac}function dr(e,t,n){return n.isTerminalFocused&&t!==`mac`&&!!e.isShellChord}var fr=new Set([`ArrowUp`,`ArrowDown`,`ArrowLeft`,`ArrowRight`,`PageUp`,`PageDown`]);function pr(e){return fr.has(e.key)?e.key:e.code}function mr(e,t,n={isTerminalFocused:!1},r=Zn){let i=pr(e);for(let a of ir(t,r)){let r=a.stepByCode.get(i);if(r!==void 0&&ur(e,t,a))return dr(a,t,n)?null:{action:a.action,step:r}}return null}function hr(e,t){return t===`focus`||e.action===`quick-session`}function gr(e,t){return e===`mac`?t?.needsMacOption?`${Jn}${Yn}`:Jn:t?.needsShiftOffMac?`Alt+Shift`:`Alt`}function _r(e,t,n){let r=ir(t,n).find(t=>t.action===e);if(!r)throw Error(`Unknown dashboard shortcut: ${e}`);return r}function vr(e,t,n=Zn){let r=_r(e,t,n);return[gr(t,r),r.keyCaptions.join(` `)]}function yr(e,t){let[n,r]=vr(e,t);return t===`mac`?`${n}${r}`:`${n}+${r}`}function br(e){let t=e===`mac`?`Meta`:`Alt`;return`ArrowUp ArrowDown ${t}+ArrowUp ${t}+ArrowDown`}function xr(e){return e===`mac`?`Cmd+Enter`:`Ctrl+Enter`}function Sr(e,t=Zn){let n=e===`mac`?Jn:`Ctrl`;return[{title:`Dashboard`,items:ir(e,t).map(t=>({combos:t.keyCaptions.map(n=>[gr(e,t),n]),label:t.label}))},{title:`Navigation`,items:[{combos:[[Wn],[Gn]],label:`Move rail highlight (rail focused)`},{combos:[[Kn],[qn]],label:`Switch view tab (tab focused)`}]},{title:`Reviews`,items:[{combos:[[`J`],[`K`]],label:`Next / previous pull request in the queue`},{combos:[[`N`],[`P`]],label:`Next / previous finding`},{combos:[[`X`]],label:`Post or drop the current finding`},{combos:[[`O`]],label:`Open the pull request in a session`},{combos:[[`A`],[`R`],[`C`]],label:`Pick Approve, Request changes or Comment`},{combos:[[n,`Enter`]],label:`Post the picked action, or the leading one from the note`},{combos:[[`Esc`]],label:`Drop the picked action`}]},{title:`Terminal`,items:[{combos:[[n,`C`]],label:`Copy selection`},{combos:[[n,`V`]],label:`Paste`},{combos:[[n,`Backspace`]],label:`Delete previous word`}]},{title:`General`,items:[{combos:[[`Esc`]],label:`Close dialog / cancel rename`}]}]}var Cr=`glimmervoid-ui-prefs`,wr=`glimmervoid:sidebar-width`,Tr=e=>t=>typeof t==`boolean`?t:e,Er=e=>t=>typeof t==`string`?t:e,Dr=e=>typeof e==`string`&&e?e:null,Or=e=>typeof e==`number`&&Number.isFinite(e)?e:null,kr=e=>t=>Or(t)??e,Ar=e=>Array.isArray(e)?[...new Set(e.filter(e=>typeof e==`string`&&e!==``))]:[],jr={soundEnabled:Tr(!0),soundId:Er(jn),themeId:Er(`phyrexian`),flyingAnimalsEnabled:Tr(!1),flyingAnimalsMinGapSeconds:kr(je.flyingAnimalsMinGapSeconds),flyingAnimalsMaxGapSeconds:kr(je.flyingAnimalsMaxGapSeconds),flyingAnimalsMinDurationSeconds:kr(je.flyingAnimalsMinDurationSeconds),flyingAnimalsMaxDurationSeconds:kr(je.flyingAnimalsMaxDurationSeconds),flyingAnimalsScale:kr(je.flyingAnimalsScale),flyingAnimalsOnPhone:Tr(je.flyingAnimalsOnPhone),flyingAnimalsExcludedSprites:pn,notificationsEnabled:Tr(!0),sessionUsageChips:Tr(!1),phoneArrowPad:Tr(!1),nextAttentionKeyCode:e=>or(e)?e:Zn,activeView:Er(`focus`),lastFocusedSessionId:Dr,railWidth:Or,reviewSidebarExpanded:Tr(!1),prsQueueWidth:Or,prsQueueCollapsed:Tr(!1),keptProjects:Ar,traceHiddenKinds:Ar,dismissedUpdate:Dr,telemetryNoticeDismissed:Tr(!1),radarAttentionAck:Er(``),prsAttentionAck:Er(``),prsUnseenRows:Er(``),usageAttentionAck:Er(``),visionsAttentionAck:Er(``)};function Mr(e,t,n){e[t]=jr[t](n)}function Nr(){let e=Hn(Cr,{}),t={};for(let n of Object.keys(jr))Mr(t,n,e?.[n]);return t}function M(e){return Nr()[e]}function N(e,t){let n=Nr();Mr(n,e,t),Un(Cr,n)}var Pr=()=>M(`soundEnabled`),Fr=e=>N(`soundEnabled`,e),Ir=()=>M(`soundId`),Lr=e=>N(`soundId`,e),Rr=()=>M(`notificationsEnabled`),zr=e=>N(`notificationsEnabled`,e),Br=()=>M(`sessionUsageChips`),Vr=e=>N(`sessionUsageChips`,e),Hr=()=>M(`phoneArrowPad`),Ur=e=>N(`phoneArrowPad`,e),Wr=()=>M(`nextAttentionKeyCode`),Gr=e=>N(`nextAttentionKeyCode`,e),Kr=()=>M(`themeId`),qr=e=>N(`themeId`,e),Jr=()=>M(`flyingAnimalsEnabled`),Yr=e=>N(`flyingAnimalsEnabled`,e),Xr=()=>M(`activeView`),Zr=e=>N(`activeView`,e),Qr=()=>M(`railWidth`),$r=e=>N(`railWidth`,e),ei=()=>M(`reviewSidebarExpanded`),ti=e=>N(`reviewSidebarExpanded`,e),ni=()=>M(`prsQueueWidth`),ri=e=>N(`prsQueueWidth`,e),ii=()=>M(`prsQueueCollapsed`),ai=e=>N(`prsQueueCollapsed`,e),oi=()=>M(`keptProjects`),si=e=>N(`keptProjects`,e),ci=()=>M(`traceHiddenKinds`),li=e=>N(`traceHiddenKinds`,e),ui=()=>M(`dismissedUpdate`),di=e=>N(`dismissedUpdate`,e),fi=()=>M(`telemetryNoticeDismissed`),pi=e=>N(`telemetryNoticeDismissed`,e),mi=()=>M(`radarAttentionAck`),hi=e=>N(`radarAttentionAck`,e),gi=()=>M(`prsAttentionAck`),_i=e=>N(`prsAttentionAck`,e),vi=()=>M(`prsUnseenRows`),yi=e=>N(`prsUnseenRows`,e),bi=()=>M(`usageAttentionAck`),xi=e=>N(`usageAttentionAck`,e),Si=()=>M(`visionsAttentionAck`),Ci=e=>N(`visionsAttentionAck`,e),wi=()=>M(`lastFocusedSessionId`),Ti=e=>N(`lastFocusedSessionId`,e),Ei=()=>Or(Hn(wr,null)),Di=e=>Un(wr,Or(e)),Oi=e=>N(`flyingAnimalsMinGapSeconds`,e),ki=e=>N(`flyingAnimalsMaxGapSeconds`,e),Ai=e=>N(`flyingAnimalsMinDurationSeconds`,e),ji=e=>N(`flyingAnimalsMaxDurationSeconds`,e),Mi=e=>N(`flyingAnimalsScale`,e),Ni=e=>N(`flyingAnimalsOnPhone`,e),Pi=e=>N(`flyingAnimalsExcludedSprites`,e),Fi=()=>mn(Nr()),Ii=()=>{let e=Nr();return Object.fromEntries(Object.keys(je).map(t=>[t,e[t]]))},Li=()=>Un(Cr,{...Nr(),...je}),Ri=On({viewportWidthPx:1440,viewportHeightPx:900,verticalProgress:0});function zi(e,t=``){let n=w(`div`,`flying-animal-preview ${t}`.trim());n.setAttribute(`aria-hidden`,`true`),n.style.setProperty(`--nyan-width`,`${Ri.spriteWidthPx}px`),n.style.setProperty(`--nyan-height`,`${Ri.spriteHeightPx}px`);let r=w(`div`,`flying-animal-preview-stage`);return r.append(w(`div`,`nyan-trail ${e.trail}`),w(`div`,`nyan-sprite ${e.sprite}`)),n.append(r),n}function Bi(){let e=gn(Fi().flyingAnimalsExcludedSprites);return e===null?null:ln[e]??null}var Vi=[],Hi=new Set;function Ui(e){let t=ie.safeParse(e);if(t.success){Vi=t.data;for(let e of Hi)e()}}function Wi(e){return Vi.find(t=>t.agent===e)??null}function Gi(e){return Hi.add(e),()=>{Hi.delete(e)}}var Ki=`modulepreload`,qi=function(e){return`/`+e},Ji={},Yi=function(e){return e.pathname.endsWith(`.css`)},Xi=function(e,t,n){if(t in e)return e[t];let r=n();if(!r){e[t]=void 0;return}let i=r.then(()=>{e[t]=void 0},n=>{throw e[t]=void 0,n});return e[t]=i,i},P=function(e,t,n){let r=Promise.resolve();if(t&&t.length>0){let e,i=document.querySelector(`meta[property=csp-nonce]`),a=i?.nonce||i?.getAttribute(`nonce`);function o(e){return Promise.all(e.map(e=>Promise.resolve(e).then(e=>({status:`fulfilled`,value:e}),e=>({status:`rejected`,reason:e}))))}function s(e){return import.meta.resolve?new URL(import.meta.resolve(e)):new URL(e,import.meta.url)}r=o(t.map(t=>{t=qi(t,n);let r=s(t),i=Yi(r);return Xi(Ji,r.href,()=>{if(e===void 0){e={all:new Set,styles:new Set};let t=document.getElementsByTagName(`link`);for(let n=t.length-1;n>=0;n--){let r=t[n];e.all.add(r.href),r.rel===`stylesheet`&&e.styles.add(r.href)}}if((i?e.styles:e.all).has(r.href))return;let t=document.createElement(`link`);if(t.rel=i?`stylesheet`:Ki,i||(t.as=`script`),t.crossOrigin=``,t.href=r.href,a&&t.setAttribute(`nonce`,a),document.head.appendChild(t),i)return new Promise((e,n)=>{t.addEventListener(`load`,e),t.addEventListener(`error`,()=>n(Error(`Unable to preload CSS for ${r}`)))})})}).filter(e=>e!==void 0))}function i(e){let t=new Event(`vite:preloadError`,{cancelable:!0});if(t.payload=e,window.dispatchEvent(t),!t.defaultPrevented)throw e}return r.then(t=>{for(let e of t||[])e.status===`rejected`&&i(e.reason);return e().catch(i)})},Zi=null,Qi=null,$i=!1,ea=null;function ta(){return Qi??=P(()=>import(`./first-run-checklist-DqVOUAR1.js`).then(e=>(Zi=e,e),e=>(Qi=null,T(`first-run`,`first-run checklist failed to load: ${ft(e)}`),null)),__vite__mapDeps([0,1,2,3,4,5])),Qi}function na(e,t){ea={host:e,isShown:t},Zi?Zi.showFirstRunChecklist(e,t):t&&$i&&ta().then(e=>{e&&ea&&e.showFirstRunChecklist(ea.host,ea.isShown)})}function ra(){Zi?.refreshFirstRunChecklist()}function ia(){$i=!0,ea&&na(ea.host,ea.isShown)}var aa=new Map;function oa(e){return aa.get(e)??[]}function sa(e){return oa(e).length>0}function ca(e){k(e)?.btnDocs.classList.toggle(`visible`,sa(e))}var la=null,ua=null;function da(){return ua??=P(()=>import(`./doc-editor-ui-CMknDXM-.js`).then(e=>(la=e,e),e=>(ua=null,T(`doc-editor`,`doc editor failed to load: ${ft(e)}`),null)),__vite__mapDeps([6,1,2,3,4,7,8])),ua}function fa(e){da().then(t=>t?.openDocEditor(e))}function pa(e){la?.applyDocsToOpenEditor(e)}function ma(e){aa.set(e.id,e.docs),e.docs.length===0&&aa.delete(e.id),ca(e.id),pa(e.id)}function ha(e){let t=[...aa.keys()];aa.clear();for(let[t,n]of Object.entries(e.sessions))aa.set(t,n);for(let e of new Set([...t,...aa.keys()]))ca(e),pa(e)}var ga=new Map,_a=new Set,va=[],ya=[],ba=null,xa=null,Sa=!1;function Ca(e){return ga.get(e)??[]}function wa(e){return Ca(e).length>0}function Ta(e){return _a.has(e)}function Ea(e){va.push(e)}function Da(e){ya.push(e)}function Oa(e){let t=k(e);t&&(t.btnShown.classList.toggle(`visible`,wa(e)),t.shownUnopenedDot.hidden=!Ta(e))}function ka(e){if(_a.delete(e)){Oa(e);for(let t of va)t(e,[])}}function Aa(){return xa??=P(()=>import(`./shown-lightbox-BMlKqsYu.js`).then(e=>(ba=e,e),e=>(xa=null,T(`shown-files`,`shown file viewer failed to load: ${ft(e)}`),null)),__vite__mapDeps([9,1,7])),xa}function ja(e,t=null){wa(e)&&Aa().then(n=>n?.openShownLightbox(e,t))}function Ma(e){return e.slice(-50)}function Na(e,t){if(t.length===0)return;let n=ba?.isLightboxOpenOn(e)??!1;n||_a.add(e),Oa(e),n&&ba?.repaintLightboxOn(e);for(let n of va)n(e,t)}function Pa(e){let t=new Set(Ca(e.id).map(e=>e.id)),n=e.files.filter(e=>!t.has(e.id));if(ga.set(e.id,Ma([...Ca(e.id),...n])),Na(e.id,n),n.length!==0)for(let t of ya)t(e.id,n)}function Fa(e){let t=new Map(ga),n=Sa;Sa=!0,ga.clear();for(let[t,n]of Object.entries(e.sessions))ga.set(t,Ma(n));for(let e of new Set([...t.keys(),...ga.keys()])){wa(e)||_a.delete(e);let r=new Set((t.get(e)??[]).map(e=>e.id)),i=n?Ca(e).filter(e=>!r.has(e.id)):[];Oa(e),Na(e,i),ba?.repaintLightboxOn(e)}}function Ia({dialogClass:e,titleText:t,titleId:n,body:r,onCloseRequest:i}){let a=Nt({dialogClass:e,closeOnBackdrop:!1,onEscape:i}),o=w(`div`,`coherence-journal-header`),s=w(`h3`,`dialog-title`,t);s.id=n;let c=w(`button`,`btn-dialog btn-dialog-cancel`,`Close`);return c.type=`button`,o.append(s,c),a.dialog.append(o,...r),Pt(a.dialog,s.id),c.addEventListener(`click`,i),a.overlay.addEventListener(`click`,e=>{e.target===a.overlay&&i()}),{close:a.close,focusClose:()=>c.focus()}}function La({requestPrefix:e,dialogClass:t,titleText:n,unavailableLabel:r,timeoutMs:i}){let a=null;function o(e){e.timer!==null&&clearTimeout(e.timer),e.timer=null,e.requestId=null}function s({sessionId:s,status:c,body:l,parts:u,paintBeforeRequest:d,buildRequest:f}){a?.close();let p=st(e),m=Ia({dialogClass:t,titleText:n,titleId:`${p}-title`,body:l,onCloseRequest:()=>h.close()}),h={sessionId:s,status:c,parts:u,requestId:p,timer:null,close:()=>{o(h),a===h&&(a=null),m.close()}};a=h,d?.(),m.focusClose(),E(f(p))?h.timer=setTimeout(()=>{h.requestId=null,h.timer=null,c.textContent=`${r}: request timed out`},i):(h.requestId=null,c.textContent=`${r}: not connected`)}function c(e){let t=a;return!t||t.sessionId!==e.id||t.requestId===null||t.requestId!==e.requestId?null:(o(t),t)}return{open:s,settleResponse:c,currentPanel:()=>a}}var Ra=2,za={needsYou:1,broken:2,askedOfYou:3,waiting:4,settled:5},Ba={danger:za.broken,warn:za.askedOfYou,wait:za.waiting,ok:za.settled,muted:za.settled};function Va(e){return e?Ba[e]:za.settled}function Ha(e){let t=[...e].sort((e,t)=>e.tier-t.tier),n=t.slice(Ra);return{visible:t.slice(0,Ra),overflowCount:n.length,overflowHoverText:n.map(e=>`${e.text} ${e.hoverText}`).join(`
|
|
3
3
|
`)}}function Ua(e){return e.map(e=>[e.key,e.text,e.hoverText,e.look?.icon,e.look?.tone,e.tier].join(`|`)).join(`
|
|
4
|
-
`)}var Wa={decision:`Decision`,retraction:`Retraction`,conjecture:`Conjecture`,resolution:`Resolution`,dismissal:`Dismissal`,defect:`Defect`,experiment:`Experiment`,close:`Close`,unable:`Unable`,escalation:`Escalation`,acknowledgement:`Acknowledgement`,enactment:`Enactment`};function Ga(e){return e?.active!==!1||e.reason===y.notInstalled?[]:[{key:`coherence-hooks`,text:`Hooks off`,hoverText:`Coherence hooks not active: ${e.reason}${e.version?` (${e.version})`:``}`,look:{icon:`failed`,tone:`danger`},tier:za.broken}]}function Ka(e){let t=Ee.safeParse(e.kind);return{heading:`${t.success?Wa[t.data]:e.kind} | ${e.at??`Unknown time`} | ${e.id}`,text:e.text,detail:e.detail,supersedes:e.supersedes?`Supersedes: ${e.supersedes}`:null}}function qa(e,t){let n=[];return e?.active===!1&&n.push(`Coherence hooks not active: ${e.reason}${e.version?` (${e.version})`:``}`),t&&!t.journal.ok&&n.push(`Journal unavailable: ${t.journal.reason}`),{lines:n}}var Ja=new Map,Ya=new Map,Xa=La({requestPrefix:`coherence-journal`,dialogClass:`dialog coherence-journal-drawer`,titleText:`Coherence journal`,unavailableLabel:`Journal unavailable`,timeoutMs:5e3});function Za(e,t){Ya.delete(e),t&&Ya.set(e,t),ro(e)}function Qa(e){Ja.delete(e),Ya.delete(e);let t=Xa.currentPanel();t?.sessionId===e&&t.close()}function $a(e){let t=Ja.get(e.id);t&&t.updatedAt>e.updatedAt||(Ja.set(e.id,e),ro(e.id))}function eo(e){Ja.clear();for(let[t,n]of Object.entries(e.sessions))Ja.set(t,n);let t=Xa.currentPanel();t&&ro(t.sessionId)}function to(e){return Ga(Ya.get(e)??null).map(t=>({...t,onActivate:()=>io(e)}))}function no(e){return Ja.get(e)?.journal.ok===!0}function ro(e){let t=Xa.currentPanel();if(!t||t.sessionId!==e)return;let n=qa(Ya.get(e)??null,Ja.get(e)??null);t.parts.reading.replaceChildren(...n.lines.map(e=>w(`p`,null,e)))}function io(e){let t=w(`div`,`coherence-journal-reading`),n=w(`p`,`coherence-journal-status`,`Loading journal`);n.setAttribute(`role`,`status`);let r=w(`div`,`coherence-journal-entries`);Xa.open({sessionId:e,status:n,body:[t,n,r],parts:{reading:t,entries:r},paintBeforeRequest:()=>ro(e),buildRequest:t=>({type:`session-coherence-journal`,id:e,requestId:t})})}function ao(e){let t=Xa.settleResponse(e);t&&(e.ok?(t.status.textContent=e.entries.length===0?`No journal entries`:`${e.entries.length} journal entries (up to 200)`,t.parts.entries.replaceChildren(...e.entries.map(e=>{let t=Ka(e),n=w(`article`,`coherence-journal-entry`);return n.append(w(`h4`,null,t.heading),w(`p`,null,t.text)),t.detail&&n.append(w(`p`,null,t.detail)),t.supersedes&&n.append(w(`p`,null,t.supersedes)),n}))):t.status.textContent=`Journal unavailable: ${e.error||`could not read journal`}`)}var oo=new Set([`http:`,`https:`]);function so(e){let t;try{t=new URL(e)}catch{return null}return oo.has(t.protocol)?t.href:null}var co=/\bElectron\/\d/,lo=new Set([`localhost`,`127.0.0.1`]);function uo(e){return co.test(e)}function fo({userAgent:e,pageHostname:t}){return uo(e)&&lo.has(t)}function po(e){return so(e)!==null}var mo=new Set([0,1]);function ho({button:e,opensInNewTab:t}){return t&&mo.has(e)}function go(){return fo({userAgent:navigator.userAgent,pageHostname:location.hostname})}function _o(e){window.open(e,`_blank`,`noopener,noreferrer`)}async function vo(e){try{let t=await ot();return(await fetch(`/open-external`,{method:`POST`,credentials:`same-origin`,cache:`no-store`,headers:{"content-type":`application/json`,"x-glimmervoid-page-token":t},body:JSON.stringify({url:e})})).ok}catch{return!1}}function yo(e){!go()||!po(e)?_o(e):vo(e).then(t=>{t||_o(e)})}function bo(e){if(e.defaultPrevented)return;let t=e.target instanceof Element?e.target.closest(`a[href]`):null;t instanceof HTMLAnchorElement&&ho({button:e.button,opensInNewTab:t.target===`_blank`})&&po(t.href)&&(e.preventDefault(),yo(t.href))}function xo(e){go()&&(e.addEventListener(`click`,bo,!0),e.addEventListener(`auxclick`,bo,!0))}var So=`#c084fc`,Co=Object.freeze({failed:{icon:Fe[x.FAILED],color:`#ef4444`},waiting:{icon:Fe[x.WAITING],color:`#f59e0b`}});function wo({waitingCount:e,failedCount:t}){return e>0?`waiting`:t>0?`failed`:`idle`}function To(e){return Ke[e].map(({tag:e,attributes:t})=>`<${e} ${Object.entries(t).map(([e,t])=>`${e}="${t}"`).join(` `)}/>`).join(``)}function Eo(e){if(e===`idle`)return`<path d="M10 8 L22 16 L10 24Z" fill="${So}"/>`;let{icon:t,color:n}=Co[e];return`<g color="${n}" transform="translate(4 4) scale(1.5)">${To(t)}</g>`}function Do(e){return`<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 32 32"><rect width="32" height="32" rx="6" fill="#0a0810"/><rect x="1" y="1" width="30" height="30" rx="5" fill="none" stroke="#2a2440" stroke-width="1"/>${Eo(e)}</svg>`}function Oo(){let e=document.querySelector(`link[rel="icon"]`);if(e instanceof HTMLLinkElement)return e;let t=document.createElement(`link`);return t.rel=`icon`,t.type=`image/svg+xml`,document.head.append(t),t}var ko=Oo(),Ao=`idle`;function jo(e){let t=wo(e);t!==Ao&&(Ao=t,ko.href=`data:image/svg+xml,${encodeURIComponent(Do(t))}`)}function Mo(e,t){return Number.isFinite(e)?Math.round(Math.min(t.maxPx,Math.max(t.minPx,e))):null}function No(e,t){return e===`ArrowRight`?t:e===`ArrowLeft`?-t:null}function Po({resizer:e,column:t,widthHost:n,widthProperty:r,bounds:i,keyStepPx:a,getStoredWidth:o,setStoredWidth:s,growsLeftward:c=!1}){let l=c?-1:1;e.setAttribute(`aria-valuemin`,String(i.minPx)),e.setAttribute(`aria-valuemax`,String(i.maxPx));let u=t=>{let a=Mo(t,i);return a===null?null:(n.style.setProperty(r,`${a}px`),e.setAttribute(`aria-valuenow`,String(a)),a)},d=o();d!==null&&u(d);let f=0,p=0;e.addEventListener(`pointerdown`,n=>{n.button===0&&(f=n.clientX,p=t.getBoundingClientRect().width,e.setPointerCapture(n.pointerId),e.dataset.dragging=`true`,n.preventDefault())}),e.addEventListener(`pointermove`,t=>{e.hasPointerCapture(t.pointerId)&&u(p+l*(t.clientX-f))});let m=t=>{e.releasePointerCapture(t.pointerId),delete e.dataset.dragging};e.addEventListener(`pointerup`,t=>{e.hasPointerCapture(t.pointerId)&&(m(t),s(u(p+l*(t.clientX-f))))}),e.addEventListener(`pointercancel`,t=>{e.hasPointerCapture(t.pointerId)&&(m(t),u(p))}),e.addEventListener(`dblclick`,()=>{n.style.removeProperty(r),e.setAttribute(`aria-valuenow`,String(Math.round(t.getBoundingClientRect().width))),s(null)}),e.addEventListener(`keydown`,e=>{let n=No(e.key,a);if(n===null)return;e.preventDefault();let r=u(t.getBoundingClientRect().width+l*n);r!==null&&s(r)})}var Fo=new Set,Io=!1,Lo=()=>{};function Ro(e){Lo=e}function zo(e){Fo.add(e),!Io&&(Io=!0,requestAnimationFrame(Bo))}function Bo(){if(Io=!1,Fo.size===0)return;let e=new Set(Fo);Fo.clear(),Lo(e)}document.addEventListener(`visibilitychange`,()=>{document.hidden||Bo()});function Vo(e){let t=[],n=[],r=n=>e[t[n]??0]??0;e.forEach((e,i)=>{if(e<0)return;let a=0,o=t.length;for(;a<o;){let t=a+o>>1;r(t)<e?a=t+1:o=t}n[i]=a>0?t[a-1]??-1:-1,t[a]=i});let i=new Set,a=t.at(-1)??-1;for(;a>=0;)i.add(a),a=n[a]??-1;return i}function Ho(e,t){let n=new Map;Array.from(e.children).forEach((e,t)=>{n.set(e,t)});let r=Vo(t.map(e=>n.get(e)??-1)),i=null;for(let n=t.length-1;n>=0;--n){let a=t[n];a&&(r.has(n)||e.insertBefore(a,i),i=a)}}function F(e,t){e.textContent!==t&&(e.textContent=t)}function Uo(e,t){e.hidden!==t&&(e.hidden=t)}function I(e,t,n){e.getAttribute(t)!==n&&e.setAttribute(t,n)}function Wo(e,t,n){e.dataset[t]!==n&&(e.dataset[t]=n)}var Go=`http://www.w3.org/2000/svg`;function Ko(e,t){let n=document.createElementNS(Go,e);for(let[e,r]of Object.entries(t))n.setAttribute(e,r);return n}function qo(e,t){let n=document.createElementNS(Go,`svg`);return n.setAttribute(`width`,String(e)),n.setAttribute(`height`,String(t)),n.setAttribute(`viewBox`,`0 0 ${e} ${t}`),n.setAttribute(`aria-hidden`,`true`),n}var Jo=`M4 4L12 12M12 4L4 12`,Yo=`M10 3L5 8L10 13`,Xo=`M12 8a4 4 0 1 1-8 0a4 4 0 1 1 8 0M8 1.5v2.5M8 12v2.5M1.5 8h2.5M12 8h2.5M3.4 3.4l1.77 1.77M10.83 10.83l1.77 1.77M3.4 12.6l1.77-1.77M10.83 5.17l1.77-1.77`,Zo=`M3 4h10M3 8h10M3 12h10`,Qo=`M3 8h0.01M8 8h0.01M13 8h0.01`,$o=`M8 2.5v6M5 5.5h6M5 12.5h6`,es=`M4.5 12.5h7a3 3 0 0 0 0.4-5.97a4 4 0 0 0-7.7 0.57a2.7 2.7 0 0 0 0.3 5.4z`,ts=`M8 1.8l5.2 2v4c0 3.2-2.2 5.4-5.2 6.4c-3-1-5.2-3.2-5.2-6.4v-4z`,ns=`${ts}M2 2l12 12`,rs=`M9.2 1.5L3.5 9h4.3l-1 5.5L12.5 7H8.2z`,is=`M8.7 4.2L5.6 8.6h2.5l-.6 3.2l3.1-4.4H8.1z`,as=`M3 13V9M8 13V3M13 13V6.5`;function L(e,t=`2`){let n=qo(16,16);return n.classList.add(`line-icon`),n.append(Ko(`path`,{d:e,fill:`none`,stroke:`currentColor`,"stroke-width":t,"stroke-linecap":`round`,"stroke-linejoin":`round`})),n}function os(e,t){let{class:n,...r}=t,i=qo(16,16);return n!==void 0&&i.classList.add(n),i.append(Ko(e,r)),i}function ss(e){let t=document.createElement(`span`);t.className=`status-icon`,t.dataset.icon=e;for(let n of Ke[e])t.append(os(n.tag,n.attributes));return t}function cs(e,t){e.dataset.icon!==t&&(e.dataset.icon=t,e.replaceChildren(ss(t)))}var ls={busy:`text-text-muted`,ok:`text-state-done`,error:`text-state-failed`},us=15e3,ds=`Something went wrong. Details are hidden in streamer mode.`;function fs(e,t){return e!==`error`||t.startsWith(`Not connected to the server. Reconnecting.`)?t:document.documentElement.hasAttribute(`data-streamer`)?ds:t}var ps={busy:`working`,ok:`complete`,error:`failed`};function ms(e){let t=e.querySelector(`:scope > .action-status-icon`),n=e.querySelector(`:scope > .action-status-text`);if(t&&n&&e.childNodes.length===2)return{iconElement:t,textElement:n};let r=w(`span`,`action-status-icon`);r.setAttribute(`aria-hidden`,`true`);let i=w(`span`,`action-status-text`);return e.replaceChildren(r,i),{iconElement:r,textElement:i}}function hs(e){e.replaceChildren(),delete e.dataset.tone}function gs(e,t,n){if(!n){hs(e);return}if(!t){hs(e),e.textContent=n;return}e.dataset.tone=t;let{iconElement:r,textElement:i}=ms(e);cs(r,ps[t]),i.textContent=fs(t,n)}function _s(e=`action-status`){let t=w(`p`,e);return t.setAttribute(`role`,`status`),t.hidden=!0,{element:t,show:(n,r)=>{t.className=`${e} text-xs ${ls[n]}`,gs(t,n,r),t.hidden=!r},clear:()=>{t.hidden=!0,hs(t)}}}function vs(e,t){return E(e)?!0:(t.show(`error`,b),!1)}function ys(e,t){let n=e instanceof Error?e.message:``;return n===`Request timed out`?`The server did not answer within ${Math.round(t/1e3)} s.`:n||`Not connected to the server. Reconnecting.`}async function bs(e,t,n,{busyText:r,timeoutMs:i=us}={}){r&&n.show(`busy`,r);try{let r=await ut(e,t,{timeoutMs:i});return n.clear(),r}catch(e){return n.show(`error`,ys(e,i)),null}}var xs=null,Ss=3e4,Cs=null;function ws(){let e=document.getElementById(`header-status`),t=document.getElementById(`header-status-text`),n=document.getElementById(`header-status-age`),r=document.getElementById(`header-status-dismiss`);return!e||!t||!n||!r?null:(r.dataset.wired===void 0&&(r.dataset.wired=``,r.addEventListener(`click`,Os)),{line:e,text:t,age:n})}function Ts(){let e=ws();if(!e||!xs)return;let t=g(Date.now()-xs.raisedAt,{...ne,justNowBelowSeconds:60});e.age.textContent!==t&&(e.age.textContent=t)}function R({source:e,sessionId:t,message:n,hidesInStreamerMode:r=!0}){let i=ws();if(!i)return;let a=r?fs(`error`,n):n,o=w(`strong`,`header-status-source`,e);i.text.replaceChildren(o,` ${a}`),i.text.title=`${e}: ${a}`,xs={source:e,sessionId:t??null,raisedAt:Date.now()},Ts(),Cs??=window.setInterval(Ts,Ss),i.line.hidden=!1}function Es(e,t){xs?.source===e&&(t===void 0||xs.sessionId===t)&&Os()}function Ds(e){xs?.sessionId===e&&Os()}function Os(){xs=null,Cs!==null&&window.clearInterval(Cs),Cs=null;let e=ws();e&&(e.line.hidden=!0,e.text.replaceChildren(),e.text.title=``,e.age.textContent=``)}function z(e){return String(e).replace(/&/g,`&`).replace(/</g,`<`).replace(/>/g,`>`).replace(/"/g,`"`).replace(/'/g,`'`)}var ks={horizontal:new Map([[`ArrowLeft`,-1],[`ArrowRight`,1]]),vertical:new Map([[`ArrowUp`,-1],[`ArrowDown`,1]]),both:new Map([[`ArrowLeft`,-1],[`ArrowRight`,1],[`ArrowUp`,-1],[`ArrowDown`,1]])};function As(e,t,n){return e<0?t>0?0:n-1:((e+t)%n+n)%n}function js(e,t,n,r){if(n===0)return null;if(e===`Home`)return 0;if(e===`End`)return n-1;let i=ks[r].get(e);return i===void 0?null:As(t,i,n)}function Ms(e,t,n){let r=w(`button`,`popup-menu-item ${n}`);return r.type=`button`,r.setAttribute(`role`,`menuitem`),r.setAttribute(`aria-label`,e),r.append(w(`span`,`popup-menu-item-label`,e),w(`span`,`popup-menu-item-hint`,t)),r}function Ns(e){return e.key===`ArrowDown`||e.key===`ArrowUp`}function Ps(e,t){let n=document.activeElement,r=n instanceof HTMLElement?e.indexOf(n):-1,i=js(t.key,r,e.length,`vertical`);i!==null&&e[i].focus()}function Fs(e){return e.key===`Home`||e.key===`End`}function Is(e){return e.metaKey||e.altKey||e.ctrlKey}function Ls(e,t,n){let r=e.relatedTarget;return r instanceof Node&&!t.contains(r)&&!n.contains(r)}function Rs({trigger:e,menu:t,menuItems:n,isOpen:r,open:i,close:a,signal:o}){function s(e){e.preventDefault(),e.stopPropagation(),r()||i(),Ps(n(),e)}e.addEventListener(`keydown`,e=>{!Is(e)&&Ns(e)&&s(e)},{signal:o}),t.addEventListener(`keydown`,e=>{Is(e)||(Ns(e)||Fs(e))&&s(e)},{signal:o}),document.addEventListener(`keydown`,t=>{t.key!==`Escape`||t.defaultPrevented||!r()||jt()||(t.preventDefault(),a(),e.focus())},{signal:o});for(let n of[e,t])n.addEventListener(`focusout`,n=>{r()&&Ls(n,t,e)&&a()},{signal:o})}var zs=`hover-tip`,Bs=`[data-tip-label]`,Vs=6,Hs=8,Us=null,Ws=null;function Gs(e){return e instanceof Element?e.closest(Bs):null}function Ks(){return Us||(Us=w(`div`,`hover-tip`),Us.id=zs,Us.setAttribute(`role`,`tooltip`),Us.hidden=!0,document.body.append(Us),Us)}function qs(e,t){let n=w(`span`,`hover-tip-text`);n.append(w(`b`,`hover-tip-label`,t.dataset.tipLabel??``));let r=t.dataset.tipDetail;r&&n.append(w(`span`,`hover-tip-detail`,r));let i=t.querySelector(`svg`)?.cloneNode(!0);e.replaceChildren(...i?[i]:[],n)}function Js(e,t){let n=t.getBoundingClientRect(),r=e.offsetWidth,i=window.innerWidth-r-Hs,a=Math.max(Hs,Math.min(n.right-r,i));e.style.left=`${a}px`,e.style.top=`${n.bottom+Vs}px`}function Ys(e){let t=Ks();Ws&&Ws!==e&&Ws.removeAttribute(`aria-describedby`),Ws=e,qs(t,e),t.hidden=!1,Js(t,e),e.setAttribute(`aria-describedby`,zs)}function Xs(){Ws&&(Ws.removeAttribute(`aria-describedby`),Ws=null,Us&&(Us.hidden=!0))}function Zs(e){Ws===e&&(!e.dataset.tipLabel||!e.isConnected?Xs():Ys(e))}var Qs=!1;function $s(){Qs||(Qs=!0,document.addEventListener(`pointerover`,e=>{let t=Gs(e.target);t?Ys(t):Xs()}),document.addEventListener(`pointerout`,e=>{Ws&&(e.relatedTarget instanceof Node&&Ws.contains(e.relatedTarget)||Xs())}),document.addEventListener(`focusin`,e=>{let t=Gs(e.target);t?Ys(t):Xs()}),document.addEventListener(`focusout`,Xs),document.addEventListener(`pointerdown`,Xs),document.addEventListener(`scroll`,Xs,!0),document.addEventListener(`keydown`,e=>{e.key===`Escape`&&Xs()}))}var ec=new WeakMap;function tc(e){let t=ec.get(e);if(t?.element.parentElement===e.card)return t;let n=t??_s(`session-action-status m-0 px-3 py-1`);return e.termWrap.before(n.element),ec.set(e,n),n}function nc(e,t){let n=tc(e);return vs(t,n)?(n.clear(),!0):!1}var rc=!1,ic=new Set;function ac(e){rc=!!e,Bc();for(let e of ic)e(rc)}function oc(e){return ic.add(e),()=>ic.delete(e)}function sc(){return rc}var cc=null;function lc(e){cc=e}var uc=null;function dc(e){uc=e}var fc=null;function pc(e){fc=e}function mc(e,t){let n=w(`span`,`tag-icon ${e}`);return n.tabIndex=0,n.setAttribute(`role`,`img`),n.setAttribute(`aria-label`,t),n}function hc(e){let t=qo(16,16);return t.classList.add(`line-icon`),t.append(Ko(`path`,{d:e,fill:`currentColor`})),t}function gc(){let e=L(ts,`1.5`);return e.append(Ko(`path`,{d:is,fill:`currentColor`})),e}function _c(e){return`Runs in Coder workspace ${e}`}function vc(e,t){let n=t?`Sane YOLO`:`YOLO`;e.setAttribute(`aria-label`,n),e.dataset.tipLabel=n,e.dataset.tipDetail=t?`Skips permission prompts; Sane YOLO blocks catastrophic commands`:`Running with --dangerously-skip-permissions`,e.replaceChildren(t?gc():hc(rs)),Zs(e)}function yc(e,t){t&&(e.dataset.saneYolo=``),t||delete e.dataset.saneYolo;let n=e.querySelector(`.perms-badge`);n&&vc(n,t)}function bc(e,t){let n=k(e);n&&yc(n.card,t)}function xc(e,t,n,r={}){let i=n||x.INITIALIZING,a=w(`div`,`session-card`);a.dataset.id=e,a.dataset.session=t,a.dataset.state=i,r.skipPerms&&(a.dataset.skipPerms=``),r.saneYolo&&(a.dataset.saneYolo=``),r.worktree&&(a.dataset.worktree=``),r.workspace&&(a.dataset.workspace=``),r.remoteWorkspace&&(a.dataset.remoteWorkspace=r.remoteWorkspace),r.guarded&&(a.dataset.guarded=``),r.guardrailsReleased&&(a.dataset.guardrailsReleased=``),r.ephemeral&&(a.dataset.ephemeral=``),r.path&&(a.dataset.path=String(r.path));let o=w(`div`,`session-card-header`),s=w(`span`,`session-name`,t);s.title=`Double-click or press F2 to rename`,s.tabIndex=0;let c=r.skipPerms?mc(`perms-badge`,`YOLO`):null;c&&vc(c,r.saneYolo===!0);let l=w(`span`,`session-task-title`);Dc(l,r.taskTitle);let u=w(`div`,`session-actions`),d=w(`div`,`session-overflow`),f=w(`button`,`btn-action btn-session-menu visible`);f.append(L(Qo)),f.type=`button`,f.title=`Session actions`,f.setAttribute(`aria-label`,`Session actions`),f.setAttribute(`aria-haspopup`,`menu`),f.setAttribute(`aria-expanded`,`false`);let p=w(`div`,`popup-menu session-overflow-menu`);p.id=`session-menu-${e}`,p.setAttribute(`role`,`menu`),f.setAttribute(`aria-controls`,p.id);let m=Ms(`Restart...`,`Into this conversation, a fresh one, or an earlier one`,`overflow-restart`);m.setAttribute(`aria-haspopup`,`dialog`);let h=Ms(`Edit repositories...`,`Add or remove repositories in this workspace`,`overflow-workspace-repos`),g=Ms(`Link pull request...`,`Link or unlink pull requests for this session`,`overflow-link-pr visible`),_=w(`button`,`tag-icon guardrails-badge`);_.type=`button`,_.setAttribute(`aria-label`,`Guardrails`),Cc(_,a),g.onclick=()=>{p.classList.remove(`open`),f.setAttribute(`aria-expanded`,`false`),wc(e)};let v=Ms(`Coherence journal`,`Decisions and notes this session recorded`,`overflow-coherence-journal`);v.setAttribute(`aria-haspopup`,`dialog`);let ee=()=>v.classList.toggle(`visible`,uc?.isReadable(e)===!0);f.onclick=ee,f.onkeydown=ee,v.onclick=()=>{p.classList.remove(`open`),f.setAttribute(`aria-expanded`,`false`),uc?.open(e)};let te=Ms(`Session setup`,`MCP servers, plugins and hooks this session loaded`,`overflow-session-setup visible`);te.setAttribute(`aria-haspopup`,`dialog`),te.onclick=()=>{p.classList.remove(`open`),f.setAttribute(`aria-expanded`,`false`),fc?.(e)},p.append(m,h,v,te,g),d.append(f,p);let ne=w(`button`,`btn-action btn-debug`);ne.append(L(Xo)),ne.title=`Debug state`,ne.setAttribute(`aria-label`,`Debug session state`);let re=w(`button`,`btn-action btn-trace`);re.append(L(Zo)),re.type=`button`,re.title=`Trace`,re.setAttribute(`aria-label`,`Trace`);let y=w(`button`,`btn-action btn-remove visible`);y.append(L(Jo)),y.type=`button`,y.title=`Remove session`,y.setAttribute(`aria-label`,`Remove session`);let ie=w(`button`,`btn-action btn-face-plan`,`Plan`);ie.type=`button`,ie.title=`Show plan`;let ae=w(`button`,`btn-action btn-face-plan btn-docs`,`Docs`);ae.type=`button`,ae.title=`Open docs the agent surfaced`;let oe=w(`button`,`btn-action btn-face-plan btn-shown`,`Shown`);oe.type=`button`,oe.title=`Open files the agent showed you`;let se=w(`span`,`shown-unopened-dot`);se.hidden=!0,se.title=`New shown file`,u.append(se,oe,ae,ie,ne,re,d,y);let ce=w(`div`,`session-card-tags`),le=mc(`usage-badge`,`Usage`);le.append(L(as,`2.2`)),c&&ce.append(c),ce.append(_,le),$s();let ue=w(`span`,`session-ownership`);ue.hidden=!0,o.append(s,l,ue,ce,u);let de=w(`div`,`terminal-wrap`);return a.append(o,de),{card:a,header:o,nameEl:s,taskTitleEl:l,btnRestart:m,btnSessionMenu:f,btnWorkspaceRepos:h,btnGuardrails:_,btnTrace:re,btnRemove:y,btnPlan:ie,btnDocs:ae,btnShown:oe,shownUnopenedDot:se,btnDebug:ne,sessionMenu:p,termWrap:de}}var Sc={on:`Credentials, Glimmervoid state and blocked folders are off-limits to this session.`,released:`This session can read, write and reach anything your account can.`};function Cc(e,t){let n=t.dataset.guarded!==void 0,r=t.dataset.ephemeral===void 0&&(n||t.dataset.guardrailsReleased!==void 0),i=n?` Click to release.`:` Click to restore.`;e.setAttribute(`aria-pressed`,String(n)),e.setAttribute(`aria-disabled`,String(!r)),e.dataset.tipLabel=n?`Guardrails on`:`Guardrails released`,e.dataset.tipDetail=`${n?Sc.on:Sc.released}${r?i:``}`,e.replaceChildren(L(n?ts:ns,`1.6`)),Zs(e)}function wc(e){let{dialog:t,close:n,actions:r,btnCancel:i}=Mt({title:`Link pull request`}),a=w(`p`,`dialog-message`,`Paste a GitHub pull request URL or owner/repo#number.`),o=w(`input`,`dialog-input`);o.type=`text`,o.placeholder=`owner/repo#123`,o.autocomplete=`off`,o.spellcheck=!1,o.setAttribute(`aria-label`,`Pull request URL or owner/repo#number`);let s=w(`div`,`dialog-error`);s.setAttribute(`role`,`alert`);let c=w(`div`,`session-pr-chips dialog-linked-prs`);c.hidden=!0,cc?.(c,e);let l=w(`button`,`btn-dialog btn-dialog-confirm`,`Link`);l.type=`button`,r.append(l),t.append(c,a,o,s,r);function u(){let t=le(o.value);t?E({type:`link-session-pr`,id:e,key:t})?n():s.textContent=b:s.textContent=`Enter a github.com pull request URL or owner/repo#number.`}i.addEventListener(`click`,n),l.addEventListener(`click`,u),o.addEventListener(`keydown`,e=>{e.key===`Enter`&&(e.preventDefault(),u())}),requestAnimationFrame(()=>o.focus())}function Tc(e,t){e.tabIndex=0,e.setAttribute(`role`,`button`),e.addEventListener(`click`,t),e.addEventListener(`keydown`,e=>{(e.key===`Enter`||e.key===` `)&&(e.preventDefault(),t())})}function Ec(e,t){let n=e.querySelector(`.session-ownership`);n&&(F(n,t??``),Uo(n,t===null))}function Dc(e,t){e.title=t??``,t&&e.removeAttribute(`aria-label`),t||e.setAttribute(`aria-label`,`Describe the task`),!e.querySelector(`input`)&&(e.textContent=t??``)}function Oc(e,t){let n=e.titleTargetEl?.isConnected?e.titleTargetEl:e.taskTitleEl;if(n.querySelector(`input`))return;let r=document.createElement(`input`);r.type=`text`,r.className=`session-title-input`,r.setAttribute(`aria-label`,`Task`),r.value=e.taskTitleIsCustom?e.taskTitle??``:``,r.placeholder=e.taskTitle??`What is this session working on?`,r.maxLength=120;let i=n.getAttribute(`role`),a=n.getAttribute(`tabindex`);n.removeAttribute(`role`),n.removeAttribute(`tabindex`),n.replaceChildren(r),r.focus(),r.select();function o(o){r.removeEventListener(`blur`,s),r.removeEventListener(`keydown`,c),o&&nc(e,{type:`set-session-title`,id:t,title:r.value.trim()}),n.replaceChildren(),i!==null&&n.setAttribute(`role`,i),a!==null&&n.setAttribute(`tabindex`,a),Dc(n,e.taskTitle)}function s(){o(!0)}function c(e){e.stopPropagation(),e.key===`Enter`&&(e.preventDefault(),o(!0)),e.key===`Escape`&&(e.preventDefault(),o(!1))}r.addEventListener(`blur`,s),r.addEventListener(`keydown`,c)}var kc=`session-rename-input`;function Ac(e){return!!e?.querySelector(`.${kc}`)}function jc(e,t,{returnsFocusToTerminal:n=!0}={}){let r=e.renameTargetEl?.isConnected?e.renameTargetEl:e.nameEl;if(!r||Ac(r))return;let i=e.card?.dataset.session??r.textContent??``,a=document.createElement(`input`);a.type=`text`,a.className=kc,a.value=i,a.maxLength=64,r.textContent=``,r.appendChild(a),a.focus(),a.select();let o=tc(e);function s(t){return e.card.dataset.ephemeral===void 0?we.test(t)?[...O.values()].some(n=>n!==e&&n.card.dataset.session===t)?`Session "${t}" already exists.`:``:De:`This session cannot be renamed`}function c(t=e.card?.dataset.session??i){r.textContent=t,e.nameEl&&e.nameEl!==r&&(e.nameEl.textContent=t),n&&e.term?.focus()}function l(){let e=a.value.trim(),t=e&&e!==i?s(e):``;t?(o.show(`error`,t),a.select()):u()}function u(){let n=a.value.trim();if(f(),!n||n===i){c();return}let r=s(n);r?(o.show(`error`,r),c()):nc(e,{type:`rename-session`,id:t,newName:n})?c(n):c()}function d(){f(),c()}function f(){a.removeEventListener(`blur`,u),a.removeEventListener(`keydown`,p)}function p(e){e.key===`Enter`&&(e.preventDefault(),l()),e.key===`Escape`&&(e.preventDefault(),d()),e.stopPropagation()}a.addEventListener(`blur`,u),a.addEventListener(`keydown`,p)}function Mc(){let e=w(`button`,`debug-close`);return e.type=`button`,e.title=`Close`,e.setAttribute(`aria-label`,`Close debug overlay`),e.append(L(Jo)),e}function Nc(e){return e?o(new Date(e)):`-`}function Pc(e){return`${(Number(e||0)/1e3).toFixed(1)}s`}function Fc(e){return e.decision===`gated`?`(${Number(e.active)||0} bg)`:e.decision===`wait`||e.decision===`release`?`(quiet ${Pc(e.quietMs)})`:``}function Ic(e){let t=`<span class="debug-dim">${Nc(e.ts)}</span>`;if(e.kind===`signal`){let n=z([e.signal,e.source].filter(Boolean).join(`/`));return e.action===`transition`?`${t} ${n} → <span class="debug-label">${z(e.event||``)}</span>`:e.action===`gate-held`?`${t} ${n} → held <span class="debug-dim">(${Number(e.active)||0} bg)</span>`:`${t} ${n} → <span class="debug-dim">no-op</span>`}if(e.kind===`gate`){let n=(e.repeats??0)>1?` <span class="debug-dim">x${Number(e.repeats)}</span>`:``,r=Fc(e),i=r?` <span class="debug-dim">${r}</span>`:``;return`${t} gate <span class="debug-label">${z(e.decision||`?`)}</span>${i}${n}`}if(e.kind===`notify`){let n=z(e.category||e.to||`?`);return e.category?`${t} notify <span class="debug-label">${n}</span>: fired`:`${t} notify ${n}: <span class="debug-dim">silent (${z(e.reason||``)})</span>`}return e.kind===`notify-state`?`${t} notify ${z(e.category||`?`)}: <span class="debug-dim">${z(e.from||`?`)} → ${z(e.to||`?`)}</span>`:`${t} <span class="debug-dim">${z(e.kind||`decision`)}</span>`}function Lc(e,t){if(!e.debugOverlay)return;let n=t,r=``;if(r+=`<div class="debug-section"><div class="debug-section-title">State</div>`,r+=`<div class="debug-field"><span class="debug-label">Current:</span> <span class="debug-value">${z(n.state)}</span></div>`,r+=`</div>`,r+=`<div class="debug-section"><div class="debug-section-title">Transitions (last ${n.transitions.length})</div>`,n.transitions.length===0&&(r+=`<div class="debug-field debug-dim">No transitions recorded</div>`),n.transitions.length>0)for(let e of n.transitions){let t=e.detail&&typeof e.detail==`object`?e.detail:null,n=t?[t.signal,t.source,t.deferred?`deferred`:null].filter(Boolean):[],i=n.length>0?` <span class="debug-dim">${z(n.join(`/`))}</span>`:``;r+=`<div class="debug-field"><span class="debug-dim">${Nc(e.timestamp)}</span> ${z(e.from)} → ${z(e.to)} <span class="debug-label">${z(e.event)}</span>${i}</div>`}r+=`</div>`;let i=n.detection||{},a=i.lastSignal,o=i.titleState||{};r+=`<div class="debug-section"><div class="debug-section-title">Detection</div>`,r+=`<div class="debug-field"><span class="debug-label">Last signal:</span> <span class="debug-value">${a?`${z(a.signal)} (${z(a.source||`?`)}${a.confidence?`/${z(a.confidence)}`:``})`:`none`}</span></div>`,r+=`<div class="debug-field"><span class="debug-label">Hooks injected:</span> <span class="debug-value">${i.hooksInjected?`yes`:`no`}</span></div>`,r+=`<div class="debug-field"><span class="debug-label">Hook seen:</span> <span class="debug-value">${i.hookSeen?`yes`:`no (degraded → title)`}</span></div>`,r+=`<div class="debug-field"><span class="debug-label">Title state:</span> <span class="debug-value">${z(o.lastKind||`none`)}${o.hasSeenSpinner?` · spun`:``}</span></div>`,r+=`</div>`;let s=i.agents||{},c=i.gate;r+=`<div class="debug-section"><div class="debug-section-title">Agents</div>`,r+=`<div class="debug-field"><span class="debug-label">Active:</span> <span class="debug-value">${Number(s.active)||0} (counted ${Number(s.counted)||0}, declared ${Number(s.declared)||0})</span></div>`,r+=`<div class="debug-field"><span class="debug-label">Idle:</span> <span class="debug-value">${Number(s.idleNames)||0} names, ${Number(s.idleTasks)||0} tasks</span></div>`;let l=c?`held ${Pc(c.heldForMs)} (seq ${Number(c.seq)||0}, lastActivity ${Number(c.lastActivitySeq)||0})`:`none`;r+=`<div class="debug-field"><span class="debug-label">Gate:</span> <span class="debug-value">${z(l)}</span></div>`,r+=`</div>`;let u=Array.isArray(n.decisions)?n.decisions:[];r+=`<div class="debug-section"><div class="debug-section-title">Decisions (last ${u.length})</div>`,u.length===0&&(r+=`<div class="debug-field debug-dim">No decisions recorded</div>`);for(let e of u)r+=`<div class="debug-field">${Ic(e)}</div>`;r+=`</div>`,e.debugOverlay.innerHTML=r,e.debugOverlay.prepend(Mc())}function Rc(e,t){if(e.debugOpen){zc(e);return}let n=document.createElement(`div`);n.className=`debug-overlay`,n.innerHTML=`<div class="debug-field debug-dim">Loading...</div>`,n.prepend(Mc()),e.card.appendChild(n),e.debugOverlay=n,e.debugOpen=!0,n.addEventListener(`click`,t=>{t.stopPropagation(),t.target instanceof Element&&t.target.closest(`.debug-close`)&&zc(e)}),E({type:`debug-state`,id:t})}function zc(e){e.debugOverlay&&=(e.debugOverlay.remove(),null),e.debugOpen=!1}function Bc(){for(let[,e]of O)e.btnDebug.classList.toggle(`visible`,rc),e.btnTrace.classList.toggle(`visible`,rc),!rc&&e.debugOpen&&zc(e)}function Vc(e){let t=typeof e.id==`string`?O.get(e.id):void 0;t?.debugOpen&&Lc(t,e.payload)}function Hc(e){k(e)?.debugOpen&&E({type:`debug-state`,id:e})}var Uc={merged:`M5.45 5.154A4.25 4.25 0 0 0 9.25 7.5h1.378a2.251 2.251 0 1 1 0 1.5H9.25A5.734 5.734 0 0 1 5 7.123v3.505a2.25 2.25 0 1 1-1.5 0V5.372a2.25 2.25 0 1 1 1.95-.218ZM4.25 13.5a.75.75 0 1 0 0-1.5.75.75 0 0 0 0 1.5Zm8.5-4.5a.75.75 0 1 0 0-1.5.75.75 0 0 0 0 1.5ZM5 3.25a.75.75 0 1 0 0 .005V3.25Z`,draft:`M3.25 1A2.25 2.25 0 0 1 4 5.372v5.256a2.251 2.251 0 1 1-1.5 0V5.372A2.251 2.251 0 0 1 3.25 1Zm9.5 14a2.25 2.25 0 1 1 0-4.5 2.25 2.25 0 0 1 0 4.5ZM2.5 3.25a.75.75 0 1 0 1.5 0 .75.75 0 0 0-1.5 0ZM3.25 12a.75.75 0 1 0 0 1.5.75.75 0 0 0 0-1.5Zm9.5 0a.75.75 0 1 0 0 1.5.75.75 0 0 0 0-1.5ZM14 7.5a1.25 1.25 0 1 1-2.5 0 1.25 1.25 0 0 1 2.5 0Zm0-4.25a1.25 1.25 0 1 1-2.5 0 1.25 1.25 0 0 1 2.5 0Z`,conflict:`M6.457 1.047c.659-1.234 2.427-1.234 3.086 0l6.082 11.378A1.75 1.75 0 0 1 14.082 15H1.918a1.75 1.75 0 0 1-1.543-2.575Zm1.763.707a.25.25 0 0 0-.44 0L1.698 13.132a.25.25 0 0 0 .22.368h12.164a.25.25 0 0 0 .22-.368Zm.53 3.996v2.5a.75.75 0 0 1-1.5 0v-2.5a.75.75 0 0 1 1.5 0ZM9 11a1 1 0 1 1-2 0 1 1 0 0 1 2 0Z`,behind:`M13.03 8.22a.75.75 0 0 1 0 1.06l-4.25 4.25a.75.75 0 0 1-1.06 0L3.47 9.28a.751.751 0 0 1 .018-1.042.751.751 0 0 1 1.042-.018l2.97 2.97V3.75a.75.75 0 0 1 1.5 0v7.44l2.97-2.97a.75.75 0 0 1 1.06 0Z`,failed:`M2.343 13.657A8 8 0 1 1 13.658 2.343 8 8 0 0 1 2.343 13.657ZM6.03 4.97a.751.751 0 0 0-1.042.018.751.751 0 0 0-.018 1.042L6.94 8 4.97 9.97a.749.749 0 0 0 .326 1.275.749.749 0 0 0 .734-.215L8 9.06l1.97 1.97a.749.749 0 0 0 1.275-.326.749.749 0 0 0-.215-.734L9.06 8l1.97-1.97a.749.749 0 0 0-.326-1.275.749.749 0 0 0-.734.215L8 6.94Z`,running:`M8 4a4 4 0 1 1 0 8 4 4 0 0 1 0-8Z`,passed:`M13.78 4.22a.75.75 0 0 1 0 1.06l-7.25 7.25a.75.75 0 0 1-1.06 0L2.22 9.28a.751.751 0 0 1 .018-1.042.751.751 0 0 1 1.042-.018L6 10.94l6.72-6.72a.75.75 0 0 1 1.06 0Z`,ready:`M8 16A8 8 0 1 1 8 0a8 8 0 0 1 0 16Zm3.78-9.72a.751.751 0 0 0-.018-1.042.751.751 0 0 0-1.042-.018L6.75 9.19 5.28 7.72a.751.751 0 0 0-1.042.018.751.751 0 0 0-.018 1.042l2 2a.75.75 0 0 0 1.06 0Z`,"changes-requested":`M1 1.75C1 .784 1.784 0 2.75 0h7.586c.464 0 .909.184 1.237.513l2.914 2.914c.329.328.513.773.513 1.237v9.586A1.75 1.75 0 0 1 13.25 16H2.75A1.75 1.75 0 0 1 1 14.25Zm1.75-.25a.25.25 0 0 0-.25.25v12.5c0 .138.112.25.25.25h10.5a.25.25 0 0 0 .25-.25V4.664a.25.25 0 0 0-.073-.177l-2.914-2.914a.25.25 0 0 0-.177-.073ZM8 3.25a.75.75 0 0 1 .75.75v1.5h1.5a.75.75 0 0 1 0 1.5h-1.5v1.5a.75.75 0 0 1-1.5 0V7h-1.5a.75.75 0 0 1 0-1.5h1.5V4A.75.75 0 0 1 8 3.25Zm-3 8a.75.75 0 0 1 .75-.75h4.5a.75.75 0 0 1 0 1.5h-4.5a.75.75 0 0 1-.75-.75Z`,thread:`M1 2.75C1 1.784 1.784 1 2.75 1h10.5c.966 0 1.75.784 1.75 1.75v7.5A1.75 1.75 0 0 1 13.25 12H9.06l-2.573 2.573A1.458 1.458 0 0 1 4 13.543V12H2.75A1.75 1.75 0 0 1 1 10.25Zm1.75-.25a.25.25 0 0 0-.25.25v7.5c0 .138.112.25.25.25h2a.75.75 0 0 1 .75.75v2.19l2.72-2.72a.749.749 0 0 1 .53-.22h4.5a.25.25 0 0 0 .25-.25v-7.5a.25.25 0 0 0-.25-.25Z`,reviewer:`M1.75 1h12.5c.966 0 1.75.784 1.75 1.75v8.5A1.75 1.75 0 0 1 14.25 13H8.061l-2.574 2.573A1.458 1.458 0 0 1 3 14.543V13H1.75A1.75 1.75 0 0 1 0 11.25v-8.5C0 1.784.784 1 1.75 1ZM1.5 2.75v8.5c0 .138.112.25.25.25h2a.75.75 0 0 1 .75.75v2.19l2.72-2.72a.749.749 0 0 1 .53-.22h6.5a.25.25 0 0 0 .25-.25v-8.5a.25.25 0 0 0-.25-.25H1.75a.25.25 0 0 0-.25.25Zm5.28 1.72a.75.75 0 0 1 0 1.06L5.31 7l1.47 1.47a.751.751 0 0 1-.018 1.042.751.751 0 0 1-1.042.018l-2-2a.75.75 0 0 1 0-1.06l2-2a.75.75 0 0 1 1.06 0Zm2.44 0a.75.75 0 0 1 1.06 0l2 2a.75.75 0 0 1 0 1.06l-2 2a.751.751 0 0 1-1.042-.018.751.751 0 0 1-.018-1.042L10.69 7 9.22 5.53a.75.75 0 0 1 0-1.06Z`,"your-turn":`M8 16a2 2 0 0 0 1.985-1.75c.017-.137-.097-.25-.235-.25h-3.5c-.138 0-.252.113-.235.25A2 2 0 0 0 8 16ZM3 5a5 5 0 0 1 10 0v2.947c0 .05.015.098.042.139l1.703 2.555A1.519 1.519 0 0 1 13.482 13H2.518a1.516 1.516 0 0 1-1.263-2.36l1.703-2.554A.255.255 0 0 0 3 7.947Zm5-3.5A3.5 3.5 0 0 0 4.5 5v2.947c0 .346-.102.683-.294.97l-1.703 2.556a.017.017 0 0 0-.003.01l.001.006c0 .002.002.004.004.006l.006.004.007.001h10.964l.007-.001.006-.004.004-.006.001-.007a.017.017 0 0 0-.003-.01l-1.703-2.554a1.745 1.745 0 0 1-.294-.97V5A3.5 3.5 0 0 0 8 1.5Z`,queued:`M8 0a8 8 0 1 1 0 16A8 8 0 0 1 8 0ZM1.5 8a6.5 6.5 0 1 0 13 0 6.5 6.5 0 0 0-13 0Zm7-3.25v2.992l2.028.812a.75.75 0 0 1-.557 1.392l-2.5-1A.751.751 0 0 1 7 8.25v-3.5a.75.75 0 0 1 1.5 0Z`,discarded:`M8 0a8 8 0 1 1 0 16A8 8 0 0 1 8 0ZM1.5 8a6.5 6.5 0 1 0 13 0 6.5 6.5 0 0 0-13 0Zm9.78-2.22-5.5 5.5a.749.749 0 0 1-1.275-.326.749.749 0 0 1 .215-.734l5.5-5.5a.751.751 0 0 1 1.042.018.751.751 0 0 1 .018 1.042Z`,stale:`M1.705 8.005a.75.75 0 0 1 .834.656 5.5 5.5 0 0 0 9.592 2.97l-1.204-1.204a.25.25 0 0 1 .177-.427h3.646a.25.25 0 0 1 .25.25v3.646a.25.25 0 0 1-.427.177l-1.38-1.38A7.002 7.002 0 0 1 1.05 8.84a.75.75 0 0 1 .656-.834ZM8 2.5a5.487 5.487 0 0 0-4.131 1.869l1.204 1.204A.25.25 0 0 1 4.896 6H1.25A.25.25 0 0 1 1 5.75V2.104a.25.25 0 0 1 .427-.177l1.38 1.38A7.002 7.002 0 0 1 14.95 7.16a.75.75 0 0 1-1.49.178A5.5 5.5 0 0 0 8 2.5Z`,unknown:`M0 8a8 8 0 1 1 16 0A8 8 0 0 1 0 8Zm8-6.5a6.5 6.5 0 1 0 0 13 6.5 6.5 0 0 0 0-13ZM6.92 6.085h.001a.749.749 0 1 1-1.342-.67c.169-.339.436-.701.849-.977C6.845 4.16 7.369 4 8 4a2.756 2.756 0 0 1 1.637.525c.503.377.863.965.863 1.725 0 .448-.115.83-.329 1.15-.205.307-.47.513-.692.662-.109.072-.22.138-.313.195l-.006.004a6.24 6.24 0 0 0-.26.16.952.952 0 0 0-.276.245.75.75 0 0 1-1.248-.832c.184-.264.42-.489.692-.661.103-.067.207-.132.313-.195l.007-.004c.1-.061.182-.11.258-.161a.969.969 0 0 0 .277-.245C8.96 6.514 9 6.427 9 6.25a.612.612 0 0 0-.262-.525A1.27 1.27 0 0 0 8 5.5c-.369 0-.595.09-.74.187a1.01 1.01 0 0 0-.34.398ZM9 11a1 1 0 1 1-2 0 1 1 0 0 1 2 0Z`,none:`M2 7.75A.75.75 0 0 1 2.75 7h10a.75.75 0 0 1 0 1.5h-10A.75.75 0 0 1 2 7.75Z`};function Wc(e,t){let n=qo(16,16);return n.classList.add(`pr-status-icon`),t&&(n.dataset.tone=t),n.append(Ko(`path`,{d:Uc[e],fill:`currentColor`})),n}function Gc(e,{className:t=``,linkUrl:n,ariaLabel:r,onActivate:i}={}){let a=`signal ${t}`.trim(),o=n?Ie(a,``,n,e.hoverText):w(`span`,a);return o.title=e.hoverText,r&&o.setAttribute(`aria-label`,r),e.look&&(o.dataset.tone=e.look.tone,o.append(Wc(e.look.icon,e.look.tone))),o.append(e.text),i&&Kc(o,i,!n),o}function Kc(e,t,n){e.addEventListener(`click`,e=>{e.stopPropagation(),!e.defaultPrevented&&(e.button!==0||e.metaKey||e.ctrlKey||e.shiftKey||e.altKey||(e.preventDefault(),t()))}),n&&(e.tabIndex=0,e.setAttribute(`role`,`button`)),e.addEventListener(`keydown`,e=>{(e.key===`Enter`||e.key===` `)&&(e.metaKey||e.ctrlKey||e.shiftKey||e.altKey||(e.stopPropagation(),e.preventDefault(),t()))})}function qc(e){e.removeAttribute(`tabindex`),e.removeAttribute(`role`)}function Jc(e,t){if(e.closest(`button, a[href]`))for(let e of t){qc(e);for(let t of e.querySelectorAll(`[role="button"]`))qc(t)}}function Yc(e){if(e.overflowCount===0)return null;let t=w(`span`,`signal-overflow`,`+${e.overflowCount}`);return t.title=e.overflowHoverText,t}function Xc(e,t,n=e=>Gc(e,e)){let r=Ua(t);if(e.dataset.signalSignature===r)return;e.dataset.signalSignature=r;let i=Ha(t),a=i.visible.map(n),o=Yc(i);o&&a.push(o),Jc(e,a),e.hidden=a.length===0,e.replaceChildren(...a)}var Zc=[],Qc=`plan`,$c={parked:{text:`PARKED`,hoverText:`Merge parked`,look:{icon:`failed`,tone:`danger`},tier:za.broken},merging:{text:`MERGING`,hoverText:`Merging`,look:{icon:`queued`,tone:`wait`},tier:za.waiting}};function el(e){Zc.push(e)}function tl(e){let t=$c[e];return t?[{...t,key:`merge`}]:[]}function nl(e){let t=e.closest(`.session-row`),n=t?.dataset.id;t&&n&&Xc(e,[...tl(t.dataset.merge??``),...Zc.flatMap(e=>e(n))])}function rl(){for(let e of document.querySelectorAll(`.session-row-signals`))nl(e)}function il(e,t=``){let n=w(e,`session-row ${t}`.trim());return n.innerHTML=`<span class="session-row-glyph" aria-hidden="true"></span><span class="session-row-main"><span class="session-row-title"><span class="session-row-name"></span><span class="session-row-cloud" hidden></span></span><span class="session-row-task" hidden></span><span class="session-row-ownership" hidden></span><span class="session-row-meta"><span class="session-row-label"></span><span class="session-row-signals" hidden></span></span></span><span class="session-row-elapsed" aria-hidden="true"></span><span class="session-row-attention-tab" aria-hidden="true" hidden></span>`,{row:n,refs:{glyph:C(n,`.session-row-glyph`),label:C(n,`.session-row-label`),ownership:C(n,`.session-row-ownership`),name:C(n,`.session-row-name`),cloud:C(n,`.session-row-cloud`),task:C(n,`.session-row-task`),signals:C(n,`.session-row-signals`),elapsed:C(n,`.session-row-elapsed`),attentionTab:C(n,`.session-row-attention-tab`)}}}function al(e,t){let n=w(`div`,`session-row-item`),r=w(`button`,`session-row-remove`);return r.append(L(Jo)),r.type=`button`,r.title=`Remove session`,r.setAttribute(`aria-label`,`Remove session`),r.addEventListener(`click`,e=>{e.stopPropagation(),t()}),n.append(e,r),{item:n,removeButton:r}}function ol(e,t,n,r=!1,i=null){Wo(e,`state`,n),Wo(e,`prompt`,i??``);let{icon:a,label:o,isMonitoring:s}=We(n,r),c=i===Qc?`Plan ready`:o;return e.toggleAttribute(`data-monitoring`,s),cs(t.glyph,a),F(t.label,c),c}function sl(e,t){return Uo(e,!t),t?(e.title=_c(t),e.firstChild||e.append(L(es)),e.title):null}function cl(e){let t=e.ownerId?O.get(e.ownerId):void 0,n=t?gt(t):null,r=A.ownedCountByOwnerId.get(e.card.dataset.id??``)??0;return yt({ownerName:n,ownedCount:r})}function ll(e,t,n){let r=cl(n);return F(t.ownership,r??``),Uo(t.ownership,r===null),e.closest(`.session-row-item`)?.toggleAttribute(`data-owned`,n.ownerId!==null&&O.has(n.ownerId)),Ec(n.card,r),r}function ul(e){return e===null?null:e===1?`next up`:`#${e} in line`}function dl(e,t,n){Uo(t,n===null),F(t,n===null?``:String(n)),e.toggleAttribute(`data-attention-head`,n===1)}function fl(e,t,{ui:n,state:r,name:i,mergeStatus:a,attentionPosition:o}){let s=ol(e,t,r,n.awaitingBackgroundTasks,n.pendingPromptKind);F(t.name,i);let c=sl(t.cloud,n.card.dataset.remoteWorkspace);F(t.task,n.taskTitle??``),Uo(t.task,!n.taskTitle||n.taskTitle===i),Wo(e,`merge`,a),nl(t.signals),Wo(e,`activity`,n._activity||``),F(t.elapsed,Bt(n));let l=ll(e,t,n);dl(e,t.attentionTab,o);let u=[i,c,n.taskTitle,s,l,ul(o)].filter(Boolean).join(`, `);return I(e,`aria-label`,u),I(e,`title`,u),s}var pl={ready:{label:`Ready`,meaning:`Ready to merge, or nothing left for you to do.`},passed:{label:`Passed`,meaning:`Checks passing, approved, or nothing open.`},failed:{label:`Failed`,meaning:`Checks failing, an automated review failed, or an auto-rebase failed.`},conflict:{label:`Conflict`,meaning:`Merge conflicts with the base branch.`},"your-turn":{label:`Your turn`,meaning:`Waiting on you: a review to give or a thread to answer.`},"changes-requested":{label:`Changes`,meaning:`A reviewer requested changes.`},thread:{label:`Threads`,meaning:`Unresolved review threads or comments.`},behind:{label:`Behind`,meaning:`The branch is behind its base.`},stale:{label:`Out of date`,meaning:`New commits landed since the automated review.`},running:{label:`Running`,meaning:`Checks or an automated review in progress.`},reviewer:{label:`Reviewer`,meaning:`Waiting on a reviewer.`},queued:{label:`Queued`,meaning:`Waiting for an automated review slot.`},draft:{label:`Draft`,meaning:`Still a draft.`},merged:{label:`Merged`,meaning:`Merged.`},discarded:{label:`Discarded`,meaning:`Review discarded or dismissed.`},unknown:{label:`Unknown`,meaning:`GitHub has not computed this yet.`},none:{label:`None`,meaning:`Nothing applies, such as no checks or no review requested.`}},ml=(e,t,n=!1)=>({state:e,awaitingBackgroundTasks:n,label:n?`Monitoring`:Ne[e],meaning:t}),hl=Object.freeze([ml(x.DORMANT,`Not started yet.`),ml(x.STARTING,`Setting up the worktree and booting the agent.`),ml(x.RUNNING,`The agent is mid-turn.`),ml(x.RUNNING,`The turn ended but background tasks or sub-agents are still running.`,!0),ml(x.WAITING,`Waiting on a permission prompt or your answer.`),ml(x.COMPLETE,`Finished a turn you have not looked at yet.`),ml(x.IDLE,`Ready for the next prompt.`),ml(x.DONE,`The agent process ended.`),ml(x.FAILED,`The agent failed to start or crashed. A red line above the terminal says why it could not start; its terminal output shows a crash.`)]);function gl(e,t){let n=w(`section`,`status-legend`),r=w(`dl`,`status-legend-rows`);return r.append(...t),n.append(w(`h2`,`status-legend-title`,e),r),n}function _l(e,t){let n=w(`div`,`status-legend-row`);return n.append(e,w(`dd`,`status-legend-meaning`,t)),n}function vl(){return gl(`Status colors`,hl.map(e=>{let t=w(`dt`,`status-legend-badge`),n=w(`span`,`status-legend-glyph`),r=w(`span`,`status-legend-name`);n.setAttribute(`aria-hidden`,`true`),t.append(n,r);let i=_l(t,e.meaning);return ol(i,{glyph:n,label:r},e.state,e.awaitingBackgroundTasks),i}))}function yl(){return gl(`Pull request icons`,Object.keys(pl).map(e=>{let t=pl[e],n=w(`dt`,`status-legend-badge`);return n.append(Wc(e),w(`span`,`status-legend-name`,t.label)),_l(n,t.meaning)}))}var bl=new Set(oi());function xl(){si([...bl])}function Sl(e){if(!e)return;let t=String(e);bl.has(t)||(bl.add(t),xl())}function Cl(e,t){let n=new Set;for(let r of e||[]){let e=t(r);if(!e)continue;let i=String(e);n.add(i),Sl(i)}return[...bl].filter(e=>!n.has(e))}function wl(e){return!e||!bl.delete(String(e))?!1:(xl(),!0)}function Tl(e,t=`explicit-state`){let n=t===`dormant-fallback`?e||x.DORMANT:e;return n===x.DORMANT?`start-session`:n===x.COMPLETE?`dismiss`:null}function El({previousState:e,nextState:t,isPhoneLayout:n,isDocumentVisible:r,isDocumentFocused:i,isActiveViewer:a,hasFocusInsideTerminal:o}){return t!==x.COMPLETE||!e||e===x.COMPLETE||!r?!1:n?a:i&&o}function Dl(e,t){if(!e)return null;let n=t.get(e);return!n||(n.currentState||x.DORMANT)===x.DORMANT?null:e}function Ol(e,t){if(e===t)return!0;let n=`${t} (`;if(!e.startsWith(n)||!e.endsWith(`)`))return!1;let r=e.slice(n.length,-1);return/^\d+$/.test(r)}function kl(e,t){let n=0;for(let r of t)Ol(r,e)&&n++;return n}function Al(e,t){let n=new Set(t);if(!n.has(e))return e;for(let t=2;t<1e3;t++){let r=`${e} (${t})`;if(!n.has(r))return r}return`${e} (${Date.now()})`}function jl(){let e=[];for(let[,t]of O)e.push(t.card.dataset.session??``);return e}function Ml(e){return kl(e,jl())}function Nl(e){return Al(e??``,jl())}function B(){return j.snapshot().selectedSessionId}function Pl(e){j.dispatch(`selectSession`,e)}function Fl(e){return j.subscribe((t,n)=>{n.includes(`selectedSessionId`)&&e(t.selectedSessionId)})}function Il(e,t=`explicit-state`){let n=O.get(e);if(!n)return null;let r=Tl(n.currentState,t);return r&&nc(n,{type:r,id:e}),n}function Ll(e,{rememberFocus:t=!0}={}){Pl(e),t&&Ti(e)}function Rl(){return Dl(wi(),O)}function zl(e=gt){let t=[...O];return Ct(t,e)}function Bl(e,t){let n=O.get(e);return n?nc(n,t):E(t)?!0:(R({source:`Session action`,sessionId:e,message:`${b} Try the action again once the header shows Connected.`}),!1)}var Vl=`Add session`;function Hl(e){return e.type===`add-session-result`&&e.error?e.error:e.type===`error`?e.message:`The session was not added.`}var Ul=!1;function Wl(e){Ul||(Ul=!0,P(()=>import(`./dialogs-KuXZnfwC.js`).then(t=>{Ul=!1,e(t)},()=>{Ul=!1,R({source:Vl,message:`The Add session dialog did not load. Reload the page, then add the session again.`})}),__vite__mapDeps([10,3,4,1,2,7,11,12,5])))}function Gl(){Wl(e=>e.createAddSessionDialog())}async function Kl(e,t){try{let n=Nl(t),r=await ut(`add-session`,{name:n,path:e},{timeoutMs:us});if(r.type===`add-session-result`&&r.ok){Es(Vl);return}R({source:Vl,message:Hl(r)})}catch(e){R({source:Vl,message:`The session was not added: ${ys(e,us)} Add it again once the server answers.`})}}function ql(e,t){e&&Kl(e,t)}async function Jl(e,t){try{let n=await ut(`quick-session`,{id:e},{timeoutMs:us});if(n.type===`add-session-result`&&n.ok){Es(Vl),n.sessionId&&t(n.sessionId);return}R({source:Vl,sessionId:e,message:Hl(n)})}catch(t){R({source:Vl,sessionId:e,message:`The session was not added: ${ys(t,us)} Add it again once the server answers.`})}}function Yl(e,t){Jl(e,t)}var Xl=39e5,Zl=`Remove session`;async function Ql(e,t,n,r=[]){try{let i=await ut(`remove-session`,{id:t,discardWork:n,confirmedKeptPaths:r},{timeoutMs:Xl});if(i.type!==`remove-session-result`||i.ok)return;if(!i.canDiscardWork){R({source:Zl,sessionId:t,message:`"${gt(e)}" was not removed: ${i.error??`the server gave no reason`}. Try Remove again from its actions menu.`});return}At({title:`Remove Session`,message:i.error??`Remove session "${gt(e)}"?`,confirmLabel:`Remove`,danger:!0,onConfirm:()=>{Ql(e,t,!0,(i.keptPaths??[]).map(e=>e.path))}})}catch(n){R({source:Zl,sessionId:t,message:`"${gt(e)}" was not removed: ${ys(n,Xl)} Try Remove again from its actions menu.`})}}function $l(e){let t=O.get(e);t&&Ql(t,e,!1)}var eu=Object.freeze({[x.IDLE]:`compaction_restore_idle`,[x.COMPLETE]:`compaction_restore_complete`,[x.WAITING]:`compaction_restore_waiting`});function tu(e){return Object.values(eu).some(t=>t===e)}var nu=22,ru={image:`Image`,video:`Video`,page:`Page`},iu=new WeakMap;function au(e){let t=e.registerMarker(0);if(!t)return null;let n=iu.get(e);if(n&&!n.marker.isDisposed&&n.marker.line===t.line)return t.dispose(),n;let r={marker:t,chipCount:0};return iu.set(e,r),r}function ou(e,t){let n=w(`button`,`shown-chip`);if(n.type=`button`,n.title=t.caption??t.pageTitle??t.name,n.setAttribute(`aria-label`,`Open ${t.name}`),t.kind===`image`){let r=w(`img`,`shown-chip-thumb`);r.src=`/shown/${encodeURIComponent(e)}/${encodeURIComponent(t.id)}`,r.alt=``,r.decoding=`async`,n.append(r)}return t.kind!==`image`&&n.append(w(`span`,`shown-chip-kind`,ru[t.kind])),n.append(w(`span`,`shown-chip-name`,t.pageTitle??t.name)),n.addEventListener(`click`,n=>{n.stopPropagation(),ja(e,t.id)}),n}function su(e,t,n){let r=au(e);if(!r)return;let i=e.registerDecoration({marker:r.marker,anchor:`right`,x:r.chipCount*nu,width:nu,layer:`top`});if(!i)return;r.chipCount+=1;let a=ou(t,n);i.onRender(e=>{e.contains(a)||e.replaceChildren(a),e.classList.add(`shown-chip-slot`)})}function cu(e,t){let n=k(e)?.term;if(n)for(let r of t)su(n,e,r)}var lu=`(max-width: 768px)`,uu=`(pointer: coarse)`;function du({coarse:e,narrowWidth:t}={}){return e===!0&&t===!0?`phone`:`desktop`}var fu=window.matchMedia?.(uu),pu=window.matchMedia?.(lu);function mu(){return du({coarse:!!fu?.matches,narrowWidth:!!pu?.matches})}function hu(e){document.documentElement.dataset.layout!==e&&(document.documentElement.dataset.layout=e)}function gu(){j.subscribe((e,t)=>{t.includes(`layout`)&&hu(e.layout)});let e=mu();hu(e),j.dispatch(`setLayout`,e);let t=()=>j.dispatch(`setLayout`,mu());return fu?.addEventListener?.(`change`,t),pu?.addEventListener?.(`change`,t),e}function _u(){return j.snapshot().layout===`phone`}function vu(e){return j.subscribe((t,n)=>{n.includes(`layout`)&&e(t.layout)})}function yu(e){if(!e)return 0;let t=0;return e.listenerMismatch&&t++,e.orphanPty&&t++,e.destroyedReachable&&t++,t}function bu(e,t){return e||yu(t)>0}var xu={DORMANT:`DOR`,INITIALIZING:`INI`,STARTING:`STA`,RUNNING:`RUN`,WAITING:`WAI`,IDLE:`IDL`,COMPLETE:`CMP`,DONE:`DON`,FAILED:`FAI`},Su=null,Cu=!1,wu=!1,Tu=null,Eu=null,Du=null,Ou=`—`;function ku(e){return e==null?Ou:te(e,`GB`)}function Au(e){return e==null?Ou:he(e,{smallestUnit:`s`,dropsZeroRemainder:!1})}function ju(e){return e==null?Ou:`${Au(Math.max(0,Math.round((Date.now()-e)/1e3)))} ago`}function Mu(){let e=w(`div`,`health-footer`);e.dataset.expanded=`false`,e.hidden=!0;let t=w(`div`,`health-summary`),n=w(`button`,`health-toggle`);n.type=`button`,n.setAttribute(`aria-expanded`,`false`),n.setAttribute(`aria-controls`,`health-detail`);let r=w(`span`,`health-chev`,`▲`);r.setAttribute(`aria-hidden`,`true`),n.append(r,w(`span`,`health-toggle-label`,`Health`));let i=w(`div`,`health-stats`);t.append(n,i);let a=w(`div`,`health-detail`);return a.id=`health-detail`,a.hidden=!0,n.addEventListener(`click`,()=>{wu=!wu,e.dataset.expanded=String(wu),n.setAttribute(`aria-expanded`,String(wu)),a.hidden=!wu,wu&&(E({type:`request-health-snapshot`}),Pu())}),e.append(t,a),Tu=e,Eu=i,Du=a,e}function Nu(){if(!Eu||!Su)return;let e=Su,t=yu(e.anomalies);Eu.innerHTML=`
|
|
4
|
+
`)}var Wa={decision:`Decision`,retraction:`Retraction`,conjecture:`Conjecture`,resolution:`Resolution`,dismissal:`Dismissal`,defect:`Defect`,experiment:`Experiment`,close:`Close`,unable:`Unable`,escalation:`Escalation`,acknowledgement:`Acknowledgement`,enactment:`Enactment`};function Ga(e){return e?.active!==!1||e.reason===y.notInstalled?[]:[{key:`coherence-hooks`,text:`Hooks off`,hoverText:`Coherence hooks not active: ${e.reason}${e.version?` (${e.version})`:``}`,look:{icon:`failed`,tone:`danger`},tier:za.broken}]}function Ka(e){let t=Ee.safeParse(e.kind);return{heading:`${t.success?Wa[t.data]:e.kind} | ${e.at??`Unknown time`} | ${e.id}`,text:e.text,detail:e.detail,supersedes:e.supersedes?`Supersedes: ${e.supersedes}`:null}}function qa(e,t){let n=[];return e?.active===!1&&n.push(`Coherence hooks not active: ${e.reason}${e.version?` (${e.version})`:``}`),t&&!t.journal.ok&&n.push(`Journal unavailable: ${t.journal.reason}`),{lines:n}}var Ja=new Map,Ya=new Map,Xa=La({requestPrefix:`coherence-journal`,dialogClass:`dialog coherence-journal-drawer`,titleText:`Coherence journal`,unavailableLabel:`Journal unavailable`,timeoutMs:5e3});function Za(e,t){Ya.delete(e),t&&Ya.set(e,t),ro(e)}function Qa(e){Ja.delete(e),Ya.delete(e);let t=Xa.currentPanel();t?.sessionId===e&&t.close()}function $a(e){let t=Ja.get(e.id);t&&t.updatedAt>e.updatedAt||(Ja.set(e.id,e),ro(e.id))}function eo(e){Ja.clear();for(let[t,n]of Object.entries(e.sessions))Ja.set(t,n);let t=Xa.currentPanel();t&&ro(t.sessionId)}function to(e){return Ga(Ya.get(e)??null).map(t=>({...t,onActivate:()=>io(e)}))}function no(e){return Ja.get(e)?.journal.ok===!0}function ro(e){let t=Xa.currentPanel();if(!t||t.sessionId!==e)return;let n=qa(Ya.get(e)??null,Ja.get(e)??null);t.parts.reading.replaceChildren(...n.lines.map(e=>w(`p`,null,e)))}function io(e){let t=w(`div`,`coherence-journal-reading`),n=w(`p`,`coherence-journal-status`,`Loading journal`);n.setAttribute(`role`,`status`);let r=w(`div`,`coherence-journal-entries`);Xa.open({sessionId:e,status:n,body:[t,n,r],parts:{reading:t,entries:r},paintBeforeRequest:()=>ro(e),buildRequest:t=>({type:`session-coherence-journal`,id:e,requestId:t})})}function ao(e){let t=Xa.settleResponse(e);t&&(e.ok?(t.status.textContent=e.entries.length===0?`No journal entries`:`${e.entries.length} journal entries (up to 200)`,t.parts.entries.replaceChildren(...e.entries.map(e=>{let t=Ka(e),n=w(`article`,`coherence-journal-entry`);return n.append(w(`h4`,null,t.heading),w(`p`,null,t.text)),t.detail&&n.append(w(`p`,null,t.detail)),t.supersedes&&n.append(w(`p`,null,t.supersedes)),n}))):t.status.textContent=`Journal unavailable: ${e.error||`could not read journal`}`)}var oo=new Set([`http:`,`https:`]);function so(e){let t;try{t=new URL(e)}catch{return null}return oo.has(t.protocol)?t.href:null}var co=/\bElectron\/\d/,lo=new Set([`localhost`,`127.0.0.1`]);function uo(e){return co.test(e)}function fo({userAgent:e,pageHostname:t}){return uo(e)&&lo.has(t)}function po(e){return so(e)!==null}var mo=new Set([0,1]);function ho({button:e,opensInNewTab:t}){return t&&mo.has(e)}function go(){return fo({userAgent:navigator.userAgent,pageHostname:location.hostname})}function _o(e){window.open(e,`_blank`,`noopener,noreferrer`)}async function vo(e){try{let t=await ot();return(await fetch(`/open-external`,{method:`POST`,credentials:`same-origin`,cache:`no-store`,headers:{"content-type":`application/json`,"x-glimmervoid-page-token":t},body:JSON.stringify({url:e})})).ok}catch{return!1}}function yo(e){!go()||!po(e)?_o(e):vo(e).then(t=>{t||_o(e)})}function bo(e){if(e.defaultPrevented)return;let t=e.target instanceof Element?e.target.closest(`a[href]`):null;t instanceof HTMLAnchorElement&&ho({button:e.button,opensInNewTab:t.target===`_blank`})&&po(t.href)&&(e.preventDefault(),yo(t.href))}function xo(e){go()&&(e.addEventListener(`click`,bo,!0),e.addEventListener(`auxclick`,bo,!0))}var So=`#c084fc`,Co=Object.freeze({failed:{icon:Fe[x.FAILED],color:`#ef4444`},waiting:{icon:Fe[x.WAITING],color:`#f59e0b`}});function wo({waitingCount:e,failedCount:t}){return e>0?`waiting`:t>0?`failed`:`idle`}function To(e){return Ke[e].map(({tag:e,attributes:t})=>`<${e} ${Object.entries(t).map(([e,t])=>`${e}="${t}"`).join(` `)}/>`).join(``)}function Eo(e){if(e===`idle`)return`<path d="M10 8 L22 16 L10 24Z" fill="${So}"/>`;let{icon:t,color:n}=Co[e];return`<g color="${n}" transform="translate(4 4) scale(1.5)">${To(t)}</g>`}function Do(e){return`<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 32 32"><rect width="32" height="32" rx="6" fill="#0a0810"/><rect x="1" y="1" width="30" height="30" rx="5" fill="none" stroke="#2a2440" stroke-width="1"/>${Eo(e)}</svg>`}function Oo(){let e=document.querySelector(`link[rel="icon"]`);if(e instanceof HTMLLinkElement)return e;let t=document.createElement(`link`);return t.rel=`icon`,t.type=`image/svg+xml`,document.head.append(t),t}var ko=Oo(),Ao=`idle`;function jo(e){let t=wo(e);t!==Ao&&(Ao=t,ko.href=`data:image/svg+xml,${encodeURIComponent(Do(t))}`)}function Mo(e,t){return Number.isFinite(e)?Math.round(Math.min(t.maxPx,Math.max(t.minPx,e))):null}function No(e,t){return e===`ArrowRight`?t:e===`ArrowLeft`?-t:null}function Po({resizer:e,column:t,widthHost:n,widthProperty:r,bounds:i,keyStepPx:a,getStoredWidth:o,setStoredWidth:s,growsLeftward:c=!1}){let l=c?-1:1;e.setAttribute(`aria-valuemin`,String(i.minPx)),e.setAttribute(`aria-valuemax`,String(i.maxPx));let u=t=>{let a=Mo(t,i);return a===null?null:(n.style.setProperty(r,`${a}px`),e.setAttribute(`aria-valuenow`,String(a)),a)},d=o();d!==null&&u(d);let f=0,p=0;e.addEventListener(`pointerdown`,n=>{n.button===0&&(f=n.clientX,p=t.getBoundingClientRect().width,e.setPointerCapture(n.pointerId),e.dataset.dragging=`true`,n.preventDefault())}),e.addEventListener(`pointermove`,t=>{e.hasPointerCapture(t.pointerId)&&u(p+l*(t.clientX-f))});let m=t=>{e.releasePointerCapture(t.pointerId),delete e.dataset.dragging};e.addEventListener(`pointerup`,t=>{e.hasPointerCapture(t.pointerId)&&(m(t),s(u(p+l*(t.clientX-f))))}),e.addEventListener(`pointercancel`,t=>{e.hasPointerCapture(t.pointerId)&&(m(t),u(p))}),e.addEventListener(`dblclick`,()=>{n.style.removeProperty(r),e.setAttribute(`aria-valuenow`,String(Math.round(t.getBoundingClientRect().width))),s(null)}),e.addEventListener(`keydown`,e=>{let n=No(e.key,a);if(n===null)return;e.preventDefault();let r=u(t.getBoundingClientRect().width+l*n);r!==null&&s(r)})}var Fo=new Set,Io=!1,Lo=()=>{};function Ro(e){Lo=e}function zo(e){Fo.add(e),!Io&&(Io=!0,requestAnimationFrame(Bo))}function Bo(){if(Io=!1,Fo.size===0)return;let e=new Set(Fo);Fo.clear(),Lo(e)}document.addEventListener(`visibilitychange`,()=>{document.hidden||Bo()});function Vo(e){let t=[],n=[],r=n=>e[t[n]??0]??0;e.forEach((e,i)=>{if(e<0)return;let a=0,o=t.length;for(;a<o;){let t=a+o>>1;r(t)<e?a=t+1:o=t}n[i]=a>0?t[a-1]??-1:-1,t[a]=i});let i=new Set,a=t.at(-1)??-1;for(;a>=0;)i.add(a),a=n[a]??-1;return i}function Ho(e,t){let n=new Map;Array.from(e.children).forEach((e,t)=>{n.set(e,t)});let r=Vo(t.map(e=>n.get(e)??-1)),i=null;for(let n=t.length-1;n>=0;--n){let a=t[n];a&&(r.has(n)||e.insertBefore(a,i),i=a)}}function F(e,t){e.textContent!==t&&(e.textContent=t)}function Uo(e,t){e.hidden!==t&&(e.hidden=t)}function I(e,t,n){e.getAttribute(t)!==n&&e.setAttribute(t,n)}function Wo(e,t,n){e.dataset[t]!==n&&(e.dataset[t]=n)}var Go=`http://www.w3.org/2000/svg`;function Ko(e,t){let n=document.createElementNS(Go,e);for(let[e,r]of Object.entries(t))n.setAttribute(e,r);return n}function qo(e,t){let n=document.createElementNS(Go,`svg`);return n.setAttribute(`width`,String(e)),n.setAttribute(`height`,String(t)),n.setAttribute(`viewBox`,`0 0 ${e} ${t}`),n.setAttribute(`aria-hidden`,`true`),n}var Jo=`M4 4L12 12M12 4L4 12`,Yo=`M10 3L5 8L10 13`,Xo=`M12 8a4 4 0 1 1-8 0a4 4 0 1 1 8 0M8 1.5v2.5M8 12v2.5M1.5 8h2.5M12 8h2.5M3.4 3.4l1.77 1.77M10.83 10.83l1.77 1.77M3.4 12.6l1.77-1.77M10.83 5.17l1.77-1.77`,Zo=`M3 4h10M3 8h10M3 12h10`,Qo=`M3 8h0.01M8 8h0.01M13 8h0.01`,$o=`M8 2.5v6M5 5.5h6M5 12.5h6`,es=`M4.5 12.5h7a3 3 0 0 0 0.4-5.97a4 4 0 0 0-7.7 0.57a2.7 2.7 0 0 0 0.3 5.4z`,ts=`M8 1.8l5.2 2v4c0 3.2-2.2 5.4-5.2 6.4c-3-1-5.2-3.2-5.2-6.4v-4z`,ns=`${ts}M2 2l12 12`,rs=`M9.2 1.5L3.5 9h4.3l-1 5.5L12.5 7H8.2z`,is=`M8.7 4.2L5.6 8.6h2.5l-.6 3.2l3.1-4.4H8.1z`,as=`M3 13V9M8 13V3M13 13V6.5`;function L(e,t=`2`){let n=qo(16,16);return n.classList.add(`line-icon`),n.append(Ko(`path`,{d:e,fill:`none`,stroke:`currentColor`,"stroke-width":t,"stroke-linecap":`round`,"stroke-linejoin":`round`})),n}function os(e,t){let{class:n,...r}=t,i=qo(16,16);return n!==void 0&&i.classList.add(n),i.append(Ko(e,r)),i}function ss(e){let t=document.createElement(`span`);t.className=`status-icon`,t.dataset.icon=e;for(let n of Ke[e])t.append(os(n.tag,n.attributes));return t}function cs(e,t){e.dataset.icon!==t&&(e.dataset.icon=t,e.replaceChildren(ss(t)))}var ls={busy:`text-text-muted`,ok:`text-state-done`,error:`text-state-failed`},us=15e3,ds=`Something went wrong. Details are hidden in streamer mode.`;function fs(e,t){return e!==`error`||t.startsWith(`Not connected to the server. Reconnecting.`)?t:document.documentElement.hasAttribute(`data-streamer`)?ds:t}var ps={busy:`working`,ok:`complete`,error:`failed`};function ms(e){let t=e.querySelector(`:scope > .action-status-icon`),n=e.querySelector(`:scope > .action-status-text`);if(t&&n&&e.childNodes.length===2)return{iconElement:t,textElement:n};let r=w(`span`,`action-status-icon`);r.setAttribute(`aria-hidden`,`true`);let i=w(`span`,`action-status-text`);return e.replaceChildren(r,i),{iconElement:r,textElement:i}}function hs(e){e.replaceChildren(),delete e.dataset.tone}function gs(e,t,n){if(!n){hs(e);return}if(!t){hs(e),e.textContent=n;return}e.dataset.tone=t;let{iconElement:r,textElement:i}=ms(e);cs(r,ps[t]),i.textContent=fs(t,n)}function _s(e=`action-status`){let t=w(`p`,e);return t.setAttribute(`role`,`status`),t.hidden=!0,{element:t,show:(n,r)=>{t.className=`${e} text-xs ${ls[n]}`,gs(t,n,r),t.hidden=!r},clear:()=>{t.hidden=!0,hs(t)}}}function vs(e,t){return E(e)?!0:(t.show(`error`,b),!1)}function ys(e,t){let n=e instanceof Error?e.message:``;return n===`Request timed out`?`The server did not answer within ${Math.round(t/1e3)} s.`:n||`Not connected to the server. Reconnecting.`}async function bs(e,t,n,{busyText:r,timeoutMs:i=us}={}){r&&n.show(`busy`,r);try{let r=await ut(e,t,{timeoutMs:i});return n.clear(),r}catch(e){return n.show(`error`,ys(e,i)),null}}var xs=null,Ss=3e4,Cs=null;function ws(){let e=document.getElementById(`header-status`),t=document.getElementById(`header-status-text`),n=document.getElementById(`header-status-age`),r=document.getElementById(`header-status-dismiss`);return!e||!t||!n||!r?null:(r.dataset.wired===void 0&&(r.dataset.wired=``,r.addEventListener(`click`,Os)),{line:e,text:t,age:n})}function Ts(){let e=ws();if(!e||!xs)return;let t=g(Date.now()-xs.raisedAt,{...ne,justNowBelowSeconds:60});e.age.textContent!==t&&(e.age.textContent=t)}function R({source:e,sessionId:t,message:n,hidesInStreamerMode:r=!0}){let i=ws();if(!i)return;let a=r?fs(`error`,n):n,o=w(`strong`,`header-status-source`,e);i.text.replaceChildren(o,` ${a}`),i.text.title=`${e}: ${a}`,xs={source:e,sessionId:t??null,raisedAt:Date.now()},Ts(),Cs??=window.setInterval(Ts,Ss),i.line.hidden=!1}function Es(e,t){xs?.source===e&&(t===void 0||xs.sessionId===t)&&Os()}function Ds(e){xs?.sessionId===e&&Os()}function Os(){xs=null,Cs!==null&&window.clearInterval(Cs),Cs=null;let e=ws();e&&(e.line.hidden=!0,e.text.replaceChildren(),e.text.title=``,e.age.textContent=``)}function z(e){return String(e).replace(/&/g,`&`).replace(/</g,`<`).replace(/>/g,`>`).replace(/"/g,`"`).replace(/'/g,`'`)}var ks={horizontal:new Map([[`ArrowLeft`,-1],[`ArrowRight`,1]]),vertical:new Map([[`ArrowUp`,-1],[`ArrowDown`,1]]),both:new Map([[`ArrowLeft`,-1],[`ArrowRight`,1],[`ArrowUp`,-1],[`ArrowDown`,1]])};function As(e,t,n){return e<0?t>0?0:n-1:((e+t)%n+n)%n}function js(e,t,n,r){if(n===0)return null;if(e===`Home`)return 0;if(e===`End`)return n-1;let i=ks[r].get(e);return i===void 0?null:As(t,i,n)}function Ms(e,t,n){let r=w(`button`,`popup-menu-item ${n}`);return r.type=`button`,r.setAttribute(`role`,`menuitem`),r.setAttribute(`aria-label`,e),r.append(w(`span`,`popup-menu-item-label`,e),w(`span`,`popup-menu-item-hint`,t)),r}function Ns(e){return e.key===`ArrowDown`||e.key===`ArrowUp`}function Ps(e,t){let n=document.activeElement,r=n instanceof HTMLElement?e.indexOf(n):-1,i=js(t.key,r,e.length,`vertical`);i!==null&&e[i].focus()}function Fs(e){return e.key===`Home`||e.key===`End`}function Is(e){return e.metaKey||e.altKey||e.ctrlKey}function Ls(e,t,n){let r=e.relatedTarget;return r instanceof Node&&!t.contains(r)&&!n.contains(r)}function Rs({trigger:e,menu:t,menuItems:n,isOpen:r,open:i,close:a,signal:o}){function s(e){e.preventDefault(),e.stopPropagation(),r()||i(),Ps(n(),e)}e.addEventListener(`keydown`,e=>{!Is(e)&&Ns(e)&&s(e)},{signal:o}),t.addEventListener(`keydown`,e=>{Is(e)||(Ns(e)||Fs(e))&&s(e)},{signal:o}),document.addEventListener(`keydown`,t=>{t.key!==`Escape`||t.defaultPrevented||!r()||jt()||(t.preventDefault(),a(),e.focus())},{signal:o});for(let n of[e,t])n.addEventListener(`focusout`,n=>{r()&&Ls(n,t,e)&&a()},{signal:o})}var zs=`hover-tip`,Bs=`[data-tip-label]`,Vs=6,Hs=8,Us=null,Ws=null;function Gs(e){return e instanceof Element?e.closest(Bs):null}function Ks(){return Us||(Us=w(`div`,`hover-tip`),Us.id=zs,Us.setAttribute(`role`,`tooltip`),Us.hidden=!0,document.body.append(Us),Us)}function qs(e,t){let n=w(`span`,`hover-tip-text`);n.append(w(`b`,`hover-tip-label`,t.dataset.tipLabel??``));let r=t.dataset.tipDetail;r&&n.append(w(`span`,`hover-tip-detail`,r));let i=t.querySelector(`svg`)?.cloneNode(!0);e.replaceChildren(...i?[i]:[],n)}function Js(e,t){let n=t.getBoundingClientRect(),r=e.offsetWidth,i=window.innerWidth-r-Hs,a=Math.max(Hs,Math.min(n.right-r,i));e.style.left=`${a}px`,e.style.top=`${n.bottom+Vs}px`}function Ys(e){let t=Ks();Ws&&Ws!==e&&Ws.removeAttribute(`aria-describedby`),Ws=e,qs(t,e),t.hidden=!1,Js(t,e),e.setAttribute(`aria-describedby`,zs)}function Xs(){Ws&&(Ws.removeAttribute(`aria-describedby`),Ws=null,Us&&(Us.hidden=!0))}function Zs(e){Ws===e&&(!e.dataset.tipLabel||!e.isConnected?Xs():Ys(e))}var Qs=!1;function $s(){Qs||(Qs=!0,document.addEventListener(`pointerover`,e=>{let t=Gs(e.target);t?Ys(t):Xs()}),document.addEventListener(`pointerout`,e=>{Ws&&(e.relatedTarget instanceof Node&&Ws.contains(e.relatedTarget)||Xs())}),document.addEventListener(`focusin`,e=>{let t=Gs(e.target);t?Ys(t):Xs()}),document.addEventListener(`focusout`,Xs),document.addEventListener(`pointerdown`,Xs),document.addEventListener(`scroll`,Xs,!0),document.addEventListener(`keydown`,e=>{e.key===`Escape`&&Xs()}))}var ec=new WeakMap;function tc(e){let t=ec.get(e);if(t?.element.parentElement===e.card)return t;let n=t??_s(`session-action-status m-0 px-3 py-1`);return e.termWrap.before(n.element),ec.set(e,n),n}function nc(e,t){let n=tc(e);return vs(t,n)?(n.clear(),!0):!1}var rc=!1,ic=new Set;function ac(e){rc=!!e,Bc();for(let e of ic)e(rc)}function oc(e){return ic.add(e),()=>ic.delete(e)}function sc(){return rc}var cc=null;function lc(e){cc=e}var uc=null;function dc(e){uc=e}var fc=null;function pc(e){fc=e}function mc(e,t){let n=w(`span`,`tag-icon ${e}`);return n.tabIndex=0,n.setAttribute(`role`,`img`),n.setAttribute(`aria-label`,t),n}function hc(e){let t=qo(16,16);return t.classList.add(`line-icon`),t.append(Ko(`path`,{d:e,fill:`currentColor`})),t}function gc(){let e=L(ts,`1.5`);return e.append(Ko(`path`,{d:is,fill:`currentColor`})),e}function _c(e){return`Runs in Coder workspace ${e}`}function vc(e,t){let n=t?`Sane YOLO`:`YOLO`;e.setAttribute(`aria-label`,n),e.dataset.tipLabel=n,e.dataset.tipDetail=t?`Skips permission prompts; Sane YOLO blocks catastrophic commands`:`Running with --dangerously-skip-permissions`,e.replaceChildren(t?gc():hc(rs)),Zs(e)}function yc(e,t){t&&(e.dataset.saneYolo=``),t||delete e.dataset.saneYolo;let n=e.querySelector(`.perms-badge`);n&&vc(n,t)}function bc(e,t){let n=k(e);n&&yc(n.card,t)}function xc(e,t,n,r={}){let i=n||x.INITIALIZING,a=w(`div`,`session-card`);a.dataset.id=e,a.dataset.session=t,a.dataset.state=i,r.skipPerms&&(a.dataset.skipPerms=``),r.saneYolo&&(a.dataset.saneYolo=``),r.worktree&&(a.dataset.worktree=``),r.workspace&&(a.dataset.workspace=``),r.remoteWorkspace&&(a.dataset.remoteWorkspace=r.remoteWorkspace),r.guarded&&(a.dataset.guarded=``),r.guardrailsReleased&&(a.dataset.guardrailsReleased=``),r.ephemeral&&(a.dataset.ephemeral=``),r.path&&(a.dataset.path=String(r.path));let o=w(`div`,`session-card-header`),s=w(`span`,`session-name`,t);s.title=`Double-click or press F2 to rename`,s.tabIndex=0;let c=r.skipPerms?mc(`perms-badge`,`YOLO`):null;c&&vc(c,r.saneYolo===!0);let l=w(`span`,`session-task-title`);Dc(l,r.taskTitle);let u=w(`div`,`session-actions`),d=w(`div`,`session-overflow`),f=w(`button`,`btn-action btn-session-menu visible`);f.append(L(Qo)),f.type=`button`,f.title=`Session actions`,f.setAttribute(`aria-label`,`Session actions`),f.setAttribute(`aria-haspopup`,`menu`),f.setAttribute(`aria-expanded`,`false`);let p=w(`div`,`popup-menu session-overflow-menu`);p.id=`session-menu-${e}`,p.setAttribute(`role`,`menu`),f.setAttribute(`aria-controls`,p.id);let m=Ms(`Restart...`,`Into this conversation, a fresh one, or an earlier one`,`overflow-restart`);m.setAttribute(`aria-haspopup`,`dialog`);let h=Ms(`Edit repositories...`,`Add or remove repositories in this workspace`,`overflow-workspace-repos`),g=Ms(`Link pull request...`,`Link or unlink pull requests for this session`,`overflow-link-pr visible`),_=w(`button`,`tag-icon guardrails-badge`);_.type=`button`,_.setAttribute(`aria-label`,`Guardrails`),Cc(_,a),g.onclick=()=>{p.classList.remove(`open`),f.setAttribute(`aria-expanded`,`false`),wc(e)};let v=Ms(`Coherence journal`,`Decisions and notes this session recorded`,`overflow-coherence-journal`);v.setAttribute(`aria-haspopup`,`dialog`);let ee=()=>v.classList.toggle(`visible`,uc?.isReadable(e)===!0);f.onclick=ee,f.onkeydown=ee,v.onclick=()=>{p.classList.remove(`open`),f.setAttribute(`aria-expanded`,`false`),uc?.open(e)};let te=Ms(`Session setup`,`MCP servers, plugins and hooks this session loaded`,`overflow-session-setup visible`);te.setAttribute(`aria-haspopup`,`dialog`),te.onclick=()=>{p.classList.remove(`open`),f.setAttribute(`aria-expanded`,`false`),fc?.(e)},p.append(m,h,v,te,g),d.append(f,p);let ne=w(`button`,`btn-action btn-debug`);ne.append(L(Xo)),ne.title=`Debug state`,ne.setAttribute(`aria-label`,`Debug session state`);let re=w(`button`,`btn-action btn-trace`);re.append(L(Zo)),re.type=`button`,re.title=`Trace`,re.setAttribute(`aria-label`,`Trace`);let y=w(`button`,`btn-action btn-remove visible`);y.append(L(Jo)),y.type=`button`,y.title=`Remove session`,y.setAttribute(`aria-label`,`Remove session`);let ie=w(`button`,`btn-action btn-face-plan`,`Plan`);ie.type=`button`,ie.title=`Show plan`;let ae=w(`button`,`btn-action btn-face-plan btn-docs`,`Docs`);ae.type=`button`,ae.title=`Open docs the agent surfaced`;let oe=w(`button`,`btn-action btn-face-plan btn-shown`,`Shown`);oe.type=`button`,oe.title=`Open files the agent showed you`;let se=w(`span`,`shown-unopened-dot`);se.hidden=!0,se.title=`New shown file`,u.append(se,oe,ae,ie,ne,re,d,y);let ce=w(`div`,`session-card-tags`),le=mc(`usage-badge`,`Usage`);le.append(L(as,`2.2`)),c&&ce.append(c),ce.append(_,le),$s();let ue=w(`span`,`session-ownership`);ue.hidden=!0,o.append(s,l,ue,ce,u);let de=w(`div`,`terminal-wrap`);return a.append(o,de),{card:a,header:o,nameEl:s,taskTitleEl:l,btnRestart:m,btnSessionMenu:f,btnWorkspaceRepos:h,btnGuardrails:_,btnTrace:re,btnRemove:y,btnPlan:ie,btnDocs:ae,btnShown:oe,shownUnopenedDot:se,btnDebug:ne,sessionMenu:p,termWrap:de}}var Sc={on:`Credentials, Glimmervoid state and blocked folders are off-limits to this session.`,released:`This session can read, write and reach anything your account can.`};function Cc(e,t){let n=t.dataset.guarded!==void 0,r=t.dataset.ephemeral===void 0&&(n||t.dataset.guardrailsReleased!==void 0),i=n?` Click to release.`:` Click to restore.`;e.setAttribute(`aria-pressed`,String(n)),e.setAttribute(`aria-disabled`,String(!r)),e.dataset.tipLabel=n?`Guardrails on`:`Guardrails released`,e.dataset.tipDetail=`${n?Sc.on:Sc.released}${r?i:``}`,e.replaceChildren(L(n?ts:ns,`1.6`)),Zs(e)}function wc(e){let{dialog:t,close:n,actions:r,btnCancel:i}=Mt({title:`Link pull request`}),a=w(`p`,`dialog-message`,`Paste a GitHub pull request URL or owner/repo#number.`),o=w(`input`,`dialog-input`);o.type=`text`,o.placeholder=`owner/repo#123`,o.autocomplete=`off`,o.spellcheck=!1,o.setAttribute(`aria-label`,`Pull request URL or owner/repo#number`);let s=w(`div`,`dialog-error`);s.setAttribute(`role`,`alert`);let c=w(`div`,`session-pr-chips dialog-linked-prs`);c.hidden=!0,cc?.(c,e);let l=w(`button`,`btn-dialog btn-dialog-confirm`,`Link`);l.type=`button`,r.append(l),t.append(c,a,o,s,r);function u(){let t=le(o.value);t?E({type:`link-session-pr`,id:e,key:t})?n():s.textContent=b:s.textContent=`Enter a github.com pull request URL or owner/repo#number.`}i.addEventListener(`click`,n),l.addEventListener(`click`,u),o.addEventListener(`keydown`,e=>{e.key===`Enter`&&(e.preventDefault(),u())}),requestAnimationFrame(()=>o.focus())}function Tc(e,t){e.tabIndex=0,e.setAttribute(`role`,`button`),e.addEventListener(`click`,t),e.addEventListener(`keydown`,e=>{(e.key===`Enter`||e.key===` `)&&(e.preventDefault(),t())})}function Ec(e,t){let n=e.querySelector(`.session-ownership`);n&&(F(n,t??``),Uo(n,t===null))}function Dc(e,t){e.title=t??``,t&&e.removeAttribute(`aria-label`),t||e.setAttribute(`aria-label`,`Describe the task`),!e.querySelector(`input`)&&(e.textContent=t??``)}function Oc(e,t){let n=e.titleTargetEl?.isConnected?e.titleTargetEl:e.taskTitleEl;if(n.querySelector(`input`))return;let r=document.createElement(`input`);r.type=`text`,r.className=`session-title-input`,r.setAttribute(`aria-label`,`Task`),r.value=e.taskTitleIsCustom?e.taskTitle??``:``,r.placeholder=e.taskTitle??`What is this session working on?`,r.maxLength=120;let i=n.getAttribute(`role`),a=n.getAttribute(`tabindex`);n.removeAttribute(`role`),n.removeAttribute(`tabindex`),n.replaceChildren(r),r.focus(),r.select();function o(o){r.removeEventListener(`blur`,s),r.removeEventListener(`keydown`,c),o&&nc(e,{type:`set-session-title`,id:t,title:r.value.trim()}),n.replaceChildren(),i!==null&&n.setAttribute(`role`,i),a!==null&&n.setAttribute(`tabindex`,a),Dc(n,e.taskTitle)}function s(){o(!0)}function c(e){e.stopPropagation(),e.key===`Enter`&&(e.preventDefault(),o(!0)),e.key===`Escape`&&(e.preventDefault(),o(!1))}r.addEventListener(`blur`,s),r.addEventListener(`keydown`,c)}var kc=`session-rename-input`;function Ac(e){return!!e?.querySelector(`.${kc}`)}function jc(e,t,{returnsFocusToTerminal:n=!0}={}){let r=e.renameTargetEl?.isConnected?e.renameTargetEl:e.nameEl;if(!r||Ac(r))return;let i=e.card?.dataset.session??r.textContent??``,a=document.createElement(`input`);a.type=`text`,a.className=kc,a.value=i,a.maxLength=64,r.textContent=``,r.appendChild(a),a.focus(),a.select();let o=tc(e);function s(t){return e.card.dataset.ephemeral===void 0?we.test(t)?[...O.values()].some(n=>n!==e&&n.card.dataset.session===t)?`Session "${t}" already exists.`:``:De:`This session cannot be renamed`}function c(t=e.card?.dataset.session??i){r.textContent=t,e.nameEl&&e.nameEl!==r&&(e.nameEl.textContent=t),n&&e.term?.focus()}function l(){let e=a.value.trim(),t=e&&e!==i?s(e):``;t?(o.show(`error`,t),a.select()):u()}function u(){let n=a.value.trim();if(f(),!n||n===i){c();return}let r=s(n);r?(o.show(`error`,r),c()):nc(e,{type:`rename-session`,id:t,newName:n})?c(n):c()}function d(){f(),c()}function f(){a.removeEventListener(`blur`,u),a.removeEventListener(`keydown`,p)}function p(e){e.key===`Enter`&&(e.preventDefault(),l()),e.key===`Escape`&&(e.preventDefault(),d()),e.stopPropagation()}a.addEventListener(`blur`,u),a.addEventListener(`keydown`,p)}function Mc(){let e=w(`button`,`debug-close`);return e.type=`button`,e.title=`Close`,e.setAttribute(`aria-label`,`Close debug overlay`),e.append(L(Jo)),e}function Nc(e){return e?o(new Date(e)):`-`}function Pc(e){return`${(Number(e||0)/1e3).toFixed(1)}s`}function Fc(e){return e.decision===`gated`?`(${Number(e.active)||0} bg)`:e.decision===`wait`||e.decision===`release`?`(quiet ${Pc(e.quietMs)})`:``}function Ic(e){let t=`<span class="debug-dim">${Nc(e.ts)}</span>`;if(e.kind===`signal`){let n=z([e.signal,e.source].filter(Boolean).join(`/`));return e.action===`transition`?`${t} ${n} → <span class="debug-label">${z(e.event||``)}</span>`:e.action===`gate-held`?`${t} ${n} → held <span class="debug-dim">(${Number(e.active)||0} bg)</span>`:`${t} ${n} → <span class="debug-dim">no-op</span>`}if(e.kind===`gate`){let n=(e.repeats??0)>1?` <span class="debug-dim">x${Number(e.repeats)}</span>`:``,r=Fc(e),i=r?` <span class="debug-dim">${r}</span>`:``;return`${t} gate <span class="debug-label">${z(e.decision||`?`)}</span>${i}${n}`}if(e.kind===`notify`){let n=z(e.category||e.to||`?`);return e.category?`${t} notify <span class="debug-label">${n}</span>: fired`:`${t} notify ${n}: <span class="debug-dim">silent (${z(e.reason||``)})</span>`}return e.kind===`notify-state`?`${t} notify ${z(e.category||`?`)}: <span class="debug-dim">${z(e.from||`?`)} → ${z(e.to||`?`)}</span>`:`${t} <span class="debug-dim">${z(e.kind||`decision`)}</span>`}function Lc(e,t){if(!e.debugOverlay)return;let n=t,r=``;if(r+=`<div class="debug-section"><div class="debug-section-title">State</div>`,r+=`<div class="debug-field"><span class="debug-label">Current:</span> <span class="debug-value">${z(n.state)}</span></div>`,r+=`</div>`,r+=`<div class="debug-section"><div class="debug-section-title">Transitions (last ${n.transitions.length})</div>`,n.transitions.length===0&&(r+=`<div class="debug-field debug-dim">No transitions recorded</div>`),n.transitions.length>0)for(let e of n.transitions){let t=e.detail&&typeof e.detail==`object`?e.detail:null,n=t?[t.signal,t.source,t.deferred?`deferred`:null].filter(Boolean):[],i=n.length>0?` <span class="debug-dim">${z(n.join(`/`))}</span>`:``;r+=`<div class="debug-field"><span class="debug-dim">${Nc(e.timestamp)}</span> ${z(e.from)} → ${z(e.to)} <span class="debug-label">${z(e.event)}</span>${i}</div>`}r+=`</div>`;let i=n.detection||{},a=i.lastSignal,o=i.titleState||{};r+=`<div class="debug-section"><div class="debug-section-title">Detection</div>`,r+=`<div class="debug-field"><span class="debug-label">Last signal:</span> <span class="debug-value">${a?`${z(a.signal)} (${z(a.source||`?`)}${a.confidence?`/${z(a.confidence)}`:``})`:`none`}</span></div>`,r+=`<div class="debug-field"><span class="debug-label">Hooks injected:</span> <span class="debug-value">${i.hooksInjected?`yes`:`no`}</span></div>`,r+=`<div class="debug-field"><span class="debug-label">Hook seen:</span> <span class="debug-value">${i.hookSeen?`yes`:`no (degraded → title)`}</span></div>`,r+=`<div class="debug-field"><span class="debug-label">Title state:</span> <span class="debug-value">${z(o.lastKind||`none`)}${o.hasSeenSpinner?` · spun`:``}</span></div>`,r+=`</div>`;let s=i.agents||{},c=i.gate;r+=`<div class="debug-section"><div class="debug-section-title">Agents</div>`,r+=`<div class="debug-field"><span class="debug-label">Active:</span> <span class="debug-value">${Number(s.active)||0} (counted ${Number(s.counted)||0}, declared ${Number(s.declared)||0})</span></div>`,r+=`<div class="debug-field"><span class="debug-label">Idle:</span> <span class="debug-value">${Number(s.idleNames)||0} names, ${Number(s.idleTasks)||0} tasks</span></div>`;let l=c?`held ${Pc(c.heldForMs)} (seq ${Number(c.seq)||0}, lastActivity ${Number(c.lastActivitySeq)||0})`:`none`;r+=`<div class="debug-field"><span class="debug-label">Gate:</span> <span class="debug-value">${z(l)}</span></div>`,r+=`</div>`;let u=Array.isArray(n.decisions)?n.decisions:[];r+=`<div class="debug-section"><div class="debug-section-title">Decisions (last ${u.length})</div>`,u.length===0&&(r+=`<div class="debug-field debug-dim">No decisions recorded</div>`);for(let e of u)r+=`<div class="debug-field">${Ic(e)}</div>`;r+=`</div>`,e.debugOverlay.innerHTML=r,e.debugOverlay.prepend(Mc())}function Rc(e,t){if(e.debugOpen){zc(e);return}let n=document.createElement(`div`);n.className=`debug-overlay`,n.innerHTML=`<div class="debug-field debug-dim">Loading...</div>`,n.prepend(Mc()),e.card.appendChild(n),e.debugOverlay=n,e.debugOpen=!0,n.addEventListener(`click`,t=>{t.stopPropagation(),t.target instanceof Element&&t.target.closest(`.debug-close`)&&zc(e)}),E({type:`debug-state`,id:t})}function zc(e){e.debugOverlay&&=(e.debugOverlay.remove(),null),e.debugOpen=!1}function Bc(){for(let[,e]of O)e.btnDebug.classList.toggle(`visible`,rc),e.btnTrace.classList.toggle(`visible`,rc),!rc&&e.debugOpen&&zc(e)}function Vc(e){let t=typeof e.id==`string`?O.get(e.id):void 0;t?.debugOpen&&Lc(t,e.payload)}function Hc(e){k(e)?.debugOpen&&E({type:`debug-state`,id:e})}var Uc={merged:`M5.45 5.154A4.25 4.25 0 0 0 9.25 7.5h1.378a2.251 2.251 0 1 1 0 1.5H9.25A5.734 5.734 0 0 1 5 7.123v3.505a2.25 2.25 0 1 1-1.5 0V5.372a2.25 2.25 0 1 1 1.95-.218ZM4.25 13.5a.75.75 0 1 0 0-1.5.75.75 0 0 0 0 1.5Zm8.5-4.5a.75.75 0 1 0 0-1.5.75.75 0 0 0 0 1.5ZM5 3.25a.75.75 0 1 0 0 .005V3.25Z`,draft:`M3.25 1A2.25 2.25 0 0 1 4 5.372v5.256a2.251 2.251 0 1 1-1.5 0V5.372A2.251 2.251 0 0 1 3.25 1Zm9.5 14a2.25 2.25 0 1 1 0-4.5 2.25 2.25 0 0 1 0 4.5ZM2.5 3.25a.75.75 0 1 0 1.5 0 .75.75 0 0 0-1.5 0ZM3.25 12a.75.75 0 1 0 0 1.5.75.75 0 0 0 0-1.5Zm9.5 0a.75.75 0 1 0 0 1.5.75.75 0 0 0 0-1.5ZM14 7.5a1.25 1.25 0 1 1-2.5 0 1.25 1.25 0 0 1 2.5 0Zm0-4.25a1.25 1.25 0 1 1-2.5 0 1.25 1.25 0 0 1 2.5 0Z`,conflict:`M6.457 1.047c.659-1.234 2.427-1.234 3.086 0l6.082 11.378A1.75 1.75 0 0 1 14.082 15H1.918a1.75 1.75 0 0 1-1.543-2.575Zm1.763.707a.25.25 0 0 0-.44 0L1.698 13.132a.25.25 0 0 0 .22.368h12.164a.25.25 0 0 0 .22-.368Zm.53 3.996v2.5a.75.75 0 0 1-1.5 0v-2.5a.75.75 0 0 1 1.5 0ZM9 11a1 1 0 1 1-2 0 1 1 0 0 1 2 0Z`,behind:`M13.03 8.22a.75.75 0 0 1 0 1.06l-4.25 4.25a.75.75 0 0 1-1.06 0L3.47 9.28a.751.751 0 0 1 .018-1.042.751.751 0 0 1 1.042-.018l2.97 2.97V3.75a.75.75 0 0 1 1.5 0v7.44l2.97-2.97a.75.75 0 0 1 1.06 0Z`,failed:`M2.343 13.657A8 8 0 1 1 13.658 2.343 8 8 0 0 1 2.343 13.657ZM6.03 4.97a.751.751 0 0 0-1.042.018.751.751 0 0 0-.018 1.042L6.94 8 4.97 9.97a.749.749 0 0 0 .326 1.275.749.749 0 0 0 .734-.215L8 9.06l1.97 1.97a.749.749 0 0 0 1.275-.326.749.749 0 0 0-.215-.734L9.06 8l1.97-1.97a.749.749 0 0 0-.326-1.275.749.749 0 0 0-.734.215L8 6.94Z`,running:`M8 4a4 4 0 1 1 0 8 4 4 0 0 1 0-8Z`,passed:`M13.78 4.22a.75.75 0 0 1 0 1.06l-7.25 7.25a.75.75 0 0 1-1.06 0L2.22 9.28a.751.751 0 0 1 .018-1.042.751.751 0 0 1 1.042-.018L6 10.94l6.72-6.72a.75.75 0 0 1 1.06 0Z`,ready:`M8 16A8 8 0 1 1 8 0a8 8 0 0 1 0 16Zm3.78-9.72a.751.751 0 0 0-.018-1.042.751.751 0 0 0-1.042-.018L6.75 9.19 5.28 7.72a.751.751 0 0 0-1.042.018.751.751 0 0 0-.018 1.042l2 2a.75.75 0 0 0 1.06 0Z`,"changes-requested":`M1 1.75C1 .784 1.784 0 2.75 0h7.586c.464 0 .909.184 1.237.513l2.914 2.914c.329.328.513.773.513 1.237v9.586A1.75 1.75 0 0 1 13.25 16H2.75A1.75 1.75 0 0 1 1 14.25Zm1.75-.25a.25.25 0 0 0-.25.25v12.5c0 .138.112.25.25.25h10.5a.25.25 0 0 0 .25-.25V4.664a.25.25 0 0 0-.073-.177l-2.914-2.914a.25.25 0 0 0-.177-.073ZM8 3.25a.75.75 0 0 1 .75.75v1.5h1.5a.75.75 0 0 1 0 1.5h-1.5v1.5a.75.75 0 0 1-1.5 0V7h-1.5a.75.75 0 0 1 0-1.5h1.5V4A.75.75 0 0 1 8 3.25Zm-3 8a.75.75 0 0 1 .75-.75h4.5a.75.75 0 0 1 0 1.5h-4.5a.75.75 0 0 1-.75-.75Z`,thread:`M1 2.75C1 1.784 1.784 1 2.75 1h10.5c.966 0 1.75.784 1.75 1.75v7.5A1.75 1.75 0 0 1 13.25 12H9.06l-2.573 2.573A1.458 1.458 0 0 1 4 13.543V12H2.75A1.75 1.75 0 0 1 1 10.25Zm1.75-.25a.25.25 0 0 0-.25.25v7.5c0 .138.112.25.25.25h2a.75.75 0 0 1 .75.75v2.19l2.72-2.72a.749.749 0 0 1 .53-.22h4.5a.25.25 0 0 0 .25-.25v-7.5a.25.25 0 0 0-.25-.25Z`,reviewer:`M1.75 1h12.5c.966 0 1.75.784 1.75 1.75v8.5A1.75 1.75 0 0 1 14.25 13H8.061l-2.574 2.573A1.458 1.458 0 0 1 3 14.543V13H1.75A1.75 1.75 0 0 1 0 11.25v-8.5C0 1.784.784 1 1.75 1ZM1.5 2.75v8.5c0 .138.112.25.25.25h2a.75.75 0 0 1 .75.75v2.19l2.72-2.72a.749.749 0 0 1 .53-.22h6.5a.25.25 0 0 0 .25-.25v-8.5a.25.25 0 0 0-.25-.25H1.75a.25.25 0 0 0-.25.25Zm5.28 1.72a.75.75 0 0 1 0 1.06L5.31 7l1.47 1.47a.751.751 0 0 1-.018 1.042.751.751 0 0 1-1.042.018l-2-2a.75.75 0 0 1 0-1.06l2-2a.75.75 0 0 1 1.06 0Zm2.44 0a.75.75 0 0 1 1.06 0l2 2a.75.75 0 0 1 0 1.06l-2 2a.751.751 0 0 1-1.042-.018.751.751 0 0 1-.018-1.042L10.69 7 9.22 5.53a.75.75 0 0 1 0-1.06Z`,"your-turn":`M8 16a2 2 0 0 0 1.985-1.75c.017-.137-.097-.25-.235-.25h-3.5c-.138 0-.252.113-.235.25A2 2 0 0 0 8 16ZM3 5a5 5 0 0 1 10 0v2.947c0 .05.015.098.042.139l1.703 2.555A1.519 1.519 0 0 1 13.482 13H2.518a1.516 1.516 0 0 1-1.263-2.36l1.703-2.554A.255.255 0 0 0 3 7.947Zm5-3.5A3.5 3.5 0 0 0 4.5 5v2.947c0 .346-.102.683-.294.97l-1.703 2.556a.017.017 0 0 0-.003.01l.001.006c0 .002.002.004.004.006l.006.004.007.001h10.964l.007-.001.006-.004.004-.006.001-.007a.017.017 0 0 0-.003-.01l-1.703-2.554a1.745 1.745 0 0 1-.294-.97V5A3.5 3.5 0 0 0 8 1.5Z`,queued:`M8 0a8 8 0 1 1 0 16A8 8 0 0 1 8 0ZM1.5 8a6.5 6.5 0 1 0 13 0 6.5 6.5 0 0 0-13 0Zm7-3.25v2.992l2.028.812a.75.75 0 0 1-.557 1.392l-2.5-1A.751.751 0 0 1 7 8.25v-3.5a.75.75 0 0 1 1.5 0Z`,discarded:`M8 0a8 8 0 1 1 0 16A8 8 0 0 1 8 0ZM1.5 8a6.5 6.5 0 1 0 13 0 6.5 6.5 0 0 0-13 0Zm9.78-2.22-5.5 5.5a.749.749 0 0 1-1.275-.326.749.749 0 0 1 .215-.734l5.5-5.5a.751.751 0 0 1 1.042.018.751.751 0 0 1 .018 1.042Z`,stale:`M1.705 8.005a.75.75 0 0 1 .834.656 5.5 5.5 0 0 0 9.592 2.97l-1.204-1.204a.25.25 0 0 1 .177-.427h3.646a.25.25 0 0 1 .25.25v3.646a.25.25 0 0 1-.427.177l-1.38-1.38A7.002 7.002 0 0 1 1.05 8.84a.75.75 0 0 1 .656-.834ZM8 2.5a5.487 5.487 0 0 0-4.131 1.869l1.204 1.204A.25.25 0 0 1 4.896 6H1.25A.25.25 0 0 1 1 5.75V2.104a.25.25 0 0 1 .427-.177l1.38 1.38A7.002 7.002 0 0 1 14.95 7.16a.75.75 0 0 1-1.49.178A5.5 5.5 0 0 0 8 2.5Z`,unknown:`M0 8a8 8 0 1 1 16 0A8 8 0 0 1 0 8Zm8-6.5a6.5 6.5 0 1 0 0 13 6.5 6.5 0 0 0 0-13ZM6.92 6.085h.001a.749.749 0 1 1-1.342-.67c.169-.339.436-.701.849-.977C6.845 4.16 7.369 4 8 4a2.756 2.756 0 0 1 1.637.525c.503.377.863.965.863 1.725 0 .448-.115.83-.329 1.15-.205.307-.47.513-.692.662-.109.072-.22.138-.313.195l-.006.004a6.24 6.24 0 0 0-.26.16.952.952 0 0 0-.276.245.75.75 0 0 1-1.248-.832c.184-.264.42-.489.692-.661.103-.067.207-.132.313-.195l.007-.004c.1-.061.182-.11.258-.161a.969.969 0 0 0 .277-.245C8.96 6.514 9 6.427 9 6.25a.612.612 0 0 0-.262-.525A1.27 1.27 0 0 0 8 5.5c-.369 0-.595.09-.74.187a1.01 1.01 0 0 0-.34.398ZM9 11a1 1 0 1 1-2 0 1 1 0 0 1 2 0Z`,none:`M2 7.75A.75.75 0 0 1 2.75 7h10a.75.75 0 0 1 0 1.5h-10A.75.75 0 0 1 2 7.75Z`};function Wc(e,t){let n=qo(16,16);return n.classList.add(`pr-status-icon`),t&&(n.dataset.tone=t),n.append(Ko(`path`,{d:Uc[e],fill:`currentColor`})),n}function Gc(e,{className:t=``,linkUrl:n,ariaLabel:r,onActivate:i}={}){let a=`signal ${t}`.trim(),o=n?Ie(a,``,n,e.hoverText):w(`span`,a);return o.title=e.hoverText,r&&o.setAttribute(`aria-label`,r),e.look&&(o.dataset.tone=e.look.tone,o.append(Wc(e.look.icon,e.look.tone))),o.append(e.text),i&&Kc(o,i,!n),o}function Kc(e,t,n){e.addEventListener(`click`,e=>{e.stopPropagation(),!e.defaultPrevented&&(e.button!==0||e.metaKey||e.ctrlKey||e.shiftKey||e.altKey||(e.preventDefault(),t()))}),n&&(e.tabIndex=0,e.setAttribute(`role`,`button`)),e.addEventListener(`keydown`,e=>{(e.key===`Enter`||e.key===` `)&&(e.metaKey||e.ctrlKey||e.shiftKey||e.altKey||(e.stopPropagation(),e.preventDefault(),t()))})}function qc(e){e.removeAttribute(`tabindex`),e.removeAttribute(`role`)}function Jc(e,t){if(e.closest(`button, a[href]`))for(let e of t){qc(e);for(let t of e.querySelectorAll(`[role="button"]`))qc(t)}}function Yc(e){if(e.overflowCount===0)return null;let t=w(`span`,`signal-overflow`,`+${e.overflowCount}`);return t.title=e.overflowHoverText,t}function Xc(e,t,n=e=>Gc(e,e)){let r=Ua(t);if(e.dataset.signalSignature===r)return;e.dataset.signalSignature=r;let i=Ha(t),a=i.visible.map(n),o=Yc(i);o&&a.push(o),Jc(e,a),e.hidden=a.length===0,e.replaceChildren(...a)}var Zc=[],Qc=`plan`,$c={parked:{text:`PARKED`,hoverText:`Merge parked`,look:{icon:`failed`,tone:`danger`},tier:za.broken},merging:{text:`MERGING`,hoverText:`Merging`,look:{icon:`queued`,tone:`wait`},tier:za.waiting}};function el(e){Zc.push(e)}function tl(e){let t=$c[e];return t?[{...t,key:`merge`}]:[]}function nl(e){let t=e.closest(`.session-row`),n=t?.dataset.id;t&&n&&Xc(e,[...tl(t.dataset.merge??``),...Zc.flatMap(e=>e(n))])}function rl(){for(let e of document.querySelectorAll(`.session-row-signals`))nl(e)}function il(e,t=``){let n=w(e,`session-row ${t}`.trim());return n.innerHTML=`<span class="session-row-glyph" aria-hidden="true"></span><span class="session-row-main"><span class="session-row-title"><span class="session-row-name"></span><span class="session-row-cloud" hidden></span></span><span class="session-row-task" hidden></span><span class="session-row-ownership" hidden></span><span class="session-row-meta"><span class="session-row-label"></span><span class="session-row-signals" hidden></span></span></span><span class="session-row-elapsed" aria-hidden="true"></span><span class="session-row-attention-tab" aria-hidden="true" hidden></span>`,{row:n,refs:{glyph:C(n,`.session-row-glyph`),label:C(n,`.session-row-label`),ownership:C(n,`.session-row-ownership`),name:C(n,`.session-row-name`),cloud:C(n,`.session-row-cloud`),task:C(n,`.session-row-task`),signals:C(n,`.session-row-signals`),elapsed:C(n,`.session-row-elapsed`),attentionTab:C(n,`.session-row-attention-tab`)}}}function al(e,t){let n=w(`div`,`session-row-item`),r=w(`button`,`session-row-remove`);return r.append(L(Jo)),r.type=`button`,r.title=`Remove session`,r.setAttribute(`aria-label`,`Remove session`),r.addEventListener(`click`,e=>{e.stopPropagation(),t()}),n.append(e,r),{item:n,removeButton:r}}function ol(e,t,n,r=!1,i=null){Wo(e,`state`,n),Wo(e,`prompt`,i??``);let{icon:a,label:o,isMonitoring:s}=We(n,r),c=i===Qc?`Plan ready`:o;return e.toggleAttribute(`data-monitoring`,s),cs(t.glyph,a),F(t.label,c),c}function sl(e,t){return Uo(e,!t),t?(e.title=_c(t),e.firstChild||e.append(L(es)),e.title):null}function cl(e){let t=e.ownerId?O.get(e.ownerId):void 0,n=t?gt(t):null,r=A.ownedCountByOwnerId.get(e.card.dataset.id??``)??0;return yt({ownerName:n,ownedCount:r})}function ll(e,t,n){let r=cl(n);return F(t.ownership,r??``),Uo(t.ownership,r===null),e.closest(`.session-row-item`)?.toggleAttribute(`data-owned`,n.ownerId!==null&&O.has(n.ownerId)),Ec(n.card,r),r}function ul(e){return e===null?null:e===1?`next up`:`#${e} in line`}function dl(e,t,n){Uo(t,n===null),F(t,n===null?``:String(n)),e.toggleAttribute(`data-attention-head`,n===1)}function fl(e,t,{ui:n,state:r,name:i,mergeStatus:a,attentionPosition:o}){let s=ol(e,t,r,n.awaitingBackgroundTasks,n.pendingPromptKind);F(t.name,i);let c=sl(t.cloud,n.card.dataset.remoteWorkspace);F(t.task,n.taskTitle??``),Uo(t.task,!n.taskTitle||n.taskTitle===i),Wo(e,`merge`,a),nl(t.signals),Wo(e,`activity`,n._activity||``),F(t.elapsed,Bt(n));let l=ll(e,t,n);dl(e,t.attentionTab,o);let u=[i,c,n.taskTitle,s,l,ul(o)].filter(Boolean).join(`, `);return I(e,`aria-label`,u),I(e,`title`,u),s}var pl={ready:{label:`Ready`,meaning:`Ready to merge, or nothing left for you to do.`},passed:{label:`Passed`,meaning:`Checks passing, approved, or nothing open.`},failed:{label:`Failed`,meaning:`Checks failing, an automated review failed, or an auto-rebase failed.`},conflict:{label:`Conflict`,meaning:`Merge conflicts with the base branch.`},"your-turn":{label:`Your turn`,meaning:`Waiting on you: a review to give or a thread to answer.`},"changes-requested":{label:`Changes`,meaning:`A reviewer requested changes.`},thread:{label:`Threads`,meaning:`Unresolved review threads or comments.`},behind:{label:`Behind`,meaning:`The branch is behind its base.`},stale:{label:`Out of date`,meaning:`New commits landed since the automated review.`},running:{label:`Running`,meaning:`Checks or an automated review in progress.`},reviewer:{label:`Reviewer`,meaning:`Waiting on a reviewer.`},queued:{label:`Queued`,meaning:`Waiting for an automated review slot.`},draft:{label:`Draft`,meaning:`Still a draft.`},merged:{label:`Merged`,meaning:`Merged.`},discarded:{label:`Discarded`,meaning:`Review discarded or dismissed.`},unknown:{label:`Unknown`,meaning:`GitHub has not computed this yet.`},none:{label:`None`,meaning:`Nothing applies, such as no checks or no review requested.`}},ml=(e,t,n=!1)=>({state:e,awaitingBackgroundTasks:n,label:n?`Monitoring`:Ne[e],meaning:t}),hl=Object.freeze([ml(x.DORMANT,`Not started yet.`),ml(x.STARTING,`Setting up the worktree and booting the agent.`),ml(x.RUNNING,`The agent is mid-turn.`),ml(x.RUNNING,`The turn ended but background tasks or sub-agents are still running.`,!0),ml(x.WAITING,`Waiting on a permission prompt or your answer.`),ml(x.COMPLETE,`Finished a turn you have not looked at yet.`),ml(x.IDLE,`Ready for the next prompt.`),ml(x.DONE,`The agent process ended.`),ml(x.FAILED,`The agent failed to start or crashed. A red line above the terminal says why it could not start; its terminal output shows a crash.`)]);function gl(e,t){let n=w(`section`,`status-legend`),r=w(`dl`,`status-legend-rows`);return r.append(...t),n.append(w(`h2`,`status-legend-title`,e),r),n}function _l(e,t){let n=w(`div`,`status-legend-row`);return n.append(e,w(`dd`,`status-legend-meaning`,t)),n}function vl(){return gl(`Status colors`,hl.map(e=>{let t=w(`dt`,`status-legend-badge`),n=w(`span`,`status-legend-glyph`),r=w(`span`,`status-legend-name`);n.setAttribute(`aria-hidden`,`true`),t.append(n,r);let i=_l(t,e.meaning);return ol(i,{glyph:n,label:r},e.state,e.awaitingBackgroundTasks),i}))}function yl(){return gl(`Pull request icons`,Object.keys(pl).map(e=>{let t=pl[e],n=w(`dt`,`status-legend-badge`);return n.append(Wc(e),w(`span`,`status-legend-name`,t.label)),_l(n,t.meaning)}))}var bl=new Set(oi());function xl(){si([...bl])}function Sl(e){if(!e)return;let t=String(e);bl.has(t)||(bl.add(t),xl())}function Cl(e,t){let n=new Set;for(let r of e||[]){let e=t(r);if(!e)continue;let i=String(e);n.add(i),Sl(i)}return[...bl].filter(e=>!n.has(e))}function wl(e){return!e||!bl.delete(String(e))?!1:(xl(),!0)}function Tl(e,t=`explicit-state`){let n=t===`dormant-fallback`?e||x.DORMANT:e;return n===x.DORMANT?`start-session`:n===x.COMPLETE?`dismiss`:null}function El({previousState:e,nextState:t,isPhoneLayout:n,isDocumentVisible:r,isDocumentFocused:i,isActiveViewer:a,hasFocusInsideTerminal:o}){return t!==x.COMPLETE||!e||e===x.COMPLETE||!r?!1:n?a:i&&o}function Dl(e,t){if(!e)return null;let n=t.get(e);return!n||(n.currentState||x.DORMANT)===x.DORMANT?null:e}function Ol(e,t){if(e===t)return!0;let n=`${t} (`;if(!e.startsWith(n)||!e.endsWith(`)`))return!1;let r=e.slice(n.length,-1);return/^\d+$/.test(r)}function kl(e,t){let n=0;for(let r of t)Ol(r,e)&&n++;return n}function Al(e,t){let n=new Set(t);if(!n.has(e))return e;for(let t=2;t<1e3;t++){let r=`${e} (${t})`;if(!n.has(r))return r}return`${e} (${Date.now()})`}function jl(){let e=[];for(let[,t]of O)e.push(t.card.dataset.session??``);return e}function Ml(e){return kl(e,jl())}function Nl(e){return Al(e??``,jl())}function B(){return j.snapshot().selectedSessionId}function Pl(e){j.dispatch(`selectSession`,e)}function Fl(e){return j.subscribe((t,n)=>{n.includes(`selectedSessionId`)&&e(t.selectedSessionId)})}function Il(e,t=`explicit-state`){let n=O.get(e);if(!n)return null;let r=Tl(n.currentState,t);return r&&nc(n,{type:r,id:e}),n}function Ll(e,{rememberFocus:t=!0}={}){Pl(e),t&&Ti(e)}function Rl(){return Dl(wi(),O)}function zl(e=gt){let t=[...O];return Ct(t,e)}function Bl(e,t){let n=O.get(e);return n?nc(n,t):E(t)?!0:(R({source:`Session action`,sessionId:e,message:`${b} Try the action again once the header shows Connected.`}),!1)}var Vl=`Add session`;function Hl(e){return e.type===`add-session-result`&&e.error?e.error:e.type===`error`?e.message:`The session was not added.`}var Ul=!1;function Wl(e){Ul||(Ul=!0,P(()=>import(`./dialogs-CH1b--5p.js`).then(t=>{Ul=!1,e(t)},()=>{Ul=!1,R({source:Vl,message:`The Add session dialog did not load. Reload the page, then add the session again.`})}),__vite__mapDeps([10,3,4,1,2,7,11,12,5])))}function Gl(){Wl(e=>e.createAddSessionDialog())}async function Kl(e,t){try{let n=Nl(t),r=await ut(`add-session`,{name:n,path:e},{timeoutMs:us});if(r.type===`add-session-result`&&r.ok){Es(Vl);return}R({source:Vl,message:Hl(r)})}catch(e){R({source:Vl,message:`The session was not added: ${ys(e,us)} Add it again once the server answers.`})}}function ql(e,t){e&&Kl(e,t)}async function Jl(e,t){try{let n=await ut(`quick-session`,{id:e},{timeoutMs:us});if(n.type===`add-session-result`&&n.ok){Es(Vl),n.sessionId&&t(n.sessionId);return}R({source:Vl,sessionId:e,message:Hl(n)})}catch(t){R({source:Vl,sessionId:e,message:`The session was not added: ${ys(t,us)} Add it again once the server answers.`})}}function Yl(e,t){Jl(e,t)}var Xl=39e5,Zl=`Remove session`;async function Ql(e,t,n,r=[]){try{let i=await ut(`remove-session`,{id:t,discardWork:n,confirmedKeptPaths:r},{timeoutMs:Xl});if(i.type!==`remove-session-result`||i.ok)return;if(!i.canDiscardWork){R({source:Zl,sessionId:t,message:`"${gt(e)}" was not removed: ${i.error??`the server gave no reason`}. Try Remove again from its actions menu.`});return}At({title:`Remove Session`,message:i.error??`Remove session "${gt(e)}"?`,confirmLabel:`Remove`,danger:!0,onConfirm:()=>{Ql(e,t,!0,(i.keptPaths??[]).map(e=>e.path))}})}catch(n){R({source:Zl,sessionId:t,message:`"${gt(e)}" was not removed: ${ys(n,Xl)} Try Remove again from its actions menu.`})}}function $l(e){let t=O.get(e);t&&Ql(t,e,!1)}var eu=Object.freeze({[x.IDLE]:`compaction_restore_idle`,[x.COMPLETE]:`compaction_restore_complete`,[x.WAITING]:`compaction_restore_waiting`});function tu(e){return Object.values(eu).some(t=>t===e)}var nu=22,ru={image:`Image`,video:`Video`,page:`Page`},iu=new WeakMap;function au(e){let t=e.registerMarker(0);if(!t)return null;let n=iu.get(e);if(n&&!n.marker.isDisposed&&n.marker.line===t.line)return t.dispose(),n;let r={marker:t,chipCount:0};return iu.set(e,r),r}function ou(e,t){let n=w(`button`,`shown-chip`);if(n.type=`button`,n.title=t.caption??t.pageTitle??t.name,n.setAttribute(`aria-label`,`Open ${t.name}`),t.kind===`image`){let r=w(`img`,`shown-chip-thumb`);r.src=`/shown/${encodeURIComponent(e)}/${encodeURIComponent(t.id)}`,r.alt=``,r.decoding=`async`,n.append(r)}return t.kind!==`image`&&n.append(w(`span`,`shown-chip-kind`,ru[t.kind])),n.append(w(`span`,`shown-chip-name`,t.pageTitle??t.name)),n.addEventListener(`click`,n=>{n.stopPropagation(),ja(e,t.id)}),n}function su(e,t,n){let r=au(e);if(!r)return;let i=e.registerDecoration({marker:r.marker,anchor:`right`,x:r.chipCount*nu,width:nu,layer:`top`});if(!i)return;r.chipCount+=1;let a=ou(t,n);i.onRender(e=>{e.contains(a)||e.replaceChildren(a),e.classList.add(`shown-chip-slot`)})}function cu(e,t){let n=k(e)?.term;if(n)for(let r of t)su(n,e,r)}var lu=`(max-width: 768px)`,uu=`(pointer: coarse)`;function du({coarse:e,narrowWidth:t}={}){return e===!0&&t===!0?`phone`:`desktop`}var fu=window.matchMedia?.(uu),pu=window.matchMedia?.(lu);function mu(){return du({coarse:!!fu?.matches,narrowWidth:!!pu?.matches})}function hu(e){document.documentElement.dataset.layout!==e&&(document.documentElement.dataset.layout=e)}function gu(){j.subscribe((e,t)=>{t.includes(`layout`)&&hu(e.layout)});let e=mu();hu(e),j.dispatch(`setLayout`,e);let t=()=>j.dispatch(`setLayout`,mu());return fu?.addEventListener?.(`change`,t),pu?.addEventListener?.(`change`,t),e}function _u(){return j.snapshot().layout===`phone`}function vu(e){return j.subscribe((t,n)=>{n.includes(`layout`)&&e(t.layout)})}function yu(e){if(!e)return 0;let t=0;return e.listenerMismatch&&t++,e.orphanPty&&t++,e.destroyedReachable&&t++,t}function bu(e,t){return e||yu(t)>0}var xu={DORMANT:`DOR`,INITIALIZING:`INI`,STARTING:`STA`,RUNNING:`RUN`,WAITING:`WAI`,IDLE:`IDL`,COMPLETE:`CMP`,DONE:`DON`,FAILED:`FAI`},Su=null,Cu=!1,wu=!1,Tu=null,Eu=null,Du=null,Ou=`—`;function ku(e){return e==null?Ou:te(e,`GB`)}function Au(e){return e==null?Ou:he(e,{smallestUnit:`s`,dropsZeroRemainder:!1})}function ju(e){return e==null?Ou:`${Au(Math.max(0,Math.round((Date.now()-e)/1e3)))} ago`}function Mu(){let e=w(`div`,`health-footer`);e.dataset.expanded=`false`,e.hidden=!0;let t=w(`div`,`health-summary`),n=w(`button`,`health-toggle`);n.type=`button`,n.setAttribute(`aria-expanded`,`false`),n.setAttribute(`aria-controls`,`health-detail`);let r=w(`span`,`health-chev`,`▲`);r.setAttribute(`aria-hidden`,`true`),n.append(r,w(`span`,`health-toggle-label`,`Health`));let i=w(`div`,`health-stats`);t.append(n,i);let a=w(`div`,`health-detail`);return a.id=`health-detail`,a.hidden=!0,n.addEventListener(`click`,()=>{wu=!wu,e.dataset.expanded=String(wu),n.setAttribute(`aria-expanded`,String(wu)),a.hidden=!wu,wu&&(E({type:`request-health-snapshot`}),Pu())}),e.append(t,a),Tu=e,Eu=i,Du=a,e}function Nu(){if(!Eu||!Su)return;let e=Su,t=yu(e.anomalies);Eu.innerHTML=`
|
|
5
5
|
<span class="health-stat" title="V8 heap used"><span class="health-stat-label">Heap</span> ${ku(e.process.heapUsed)}</span>
|
|
6
6
|
<span class="health-stat" title="Resident set size (process memory)"><span class="health-stat-label">RSS</span> ${ku(e.process.rss)}</span>
|
|
7
7
|
<span class="health-stat" title="External buffers (PTY data lives here)"><span class="health-stat-label">Ext</span> ${ku(e.process.external)}</span>
|
|
@@ -73,6 +73,6 @@ import{l as e,m as t,n,o as r,s as i,u as a}from"./zod-BRLv4KqJ.js";import{$ as
|
|
|
73
73
|
</table>
|
|
74
74
|
</div>
|
|
75
75
|
`}function Fu(){if(!Tu)return;let e=bu(Cu,Su?.anomalies),t=Tu.hidden;Tu.hidden=!e,e&&t&&Su&&(Nu(),wu&&Pu())}function Iu(e){Cu=e,Fu()}function Lu(e){if(Tu)return Tu;let t=Mu();return e.appendChild(t),Fu(),t}function Ru(e){Su=e,Fu(),Tu&&!Tu.hidden&&(Nu(),wu&&Pu())}var zu=`#plan/`;function Bu(e){return`${zu}${encodeURIComponent(e)}`}function Vu(e){if(!e.startsWith(zu))return null;let t=e.slice(6);if(!t||t.includes(`/`))return null;try{return decodeURIComponent(t)||null}catch{return null}}var Hu=Object.freeze([{kind:`approve`,label:`Approve`},{kind:`revise`,label:`Send feedback`},{kind:`terminal`,label:`Answer in terminal`}]);function Uu(e){return e===`approve`||e===`approve-accept-edits`}function Wu(e){return(e.state===`decided`||e.state===`closed`)&&Uu(e.lastDecision)}function Gu(e,t){let n=e.reviews.find(e=>e.agentId===t);return n!==void 0&&Wu(n)}function Ku(e,t){return e.reviews.find(e=>e.agentId===t)??e.reviews[0]??null}function qu(e){let t=Ku(e.state,e.selectedAgentId);return t?e.selectedRevision&&t.revisions.some(t=>t.revision===e.selectedRevision)?e.selectedRevision:t.revisions.at(-1)?.revision??null:null}function Ju(e,t){return Ku(e,t)?.openRevision?.revision??null}function Yu(e,t,n){if(n===null)return null;let r=Ku(e,t)?.revisions??[],i=r.findIndex(e=>e.revision===n);return i<=0?null:r[i-1].revision}function Xu(e,t){let n=t-e;return Number.isFinite(n)?g(n,{rounding:`floor`,wording:`abbreviated`,suffix:` ago`,justNowBelowSeconds:60}):`just now`}function Zu(e,t,n){return t!==null&&t.state===`open`&&t.openRevision!==null&&t.openRevision.revision===n&&e.body!==null&&e.isConnected&&e.isDraft!==!0&&!e.isDecisionInFlight}function Qu(e,t,n){let r=Zu(e,t,n),i=(e.pendingCommentCount??0)>0,a=e.hasUnsavedComment!==!0;return Hu.map(({kind:e,label:t})=>({kind:e,label:t,enabled:r&&(e===`terminal`||a&&(e===`revise`?i:!i))}))}function $u(e,t){return e.openRevision===null?t!==null&&e.approvedRevision===t?`Approved`:e.state===`released`?`Answer in the terminal`:e.state===`decided`?e.lastDecision===`revise`?`Feedback sent, waiting for the next revision`:`Approved`:`Closed`:e.openRevision.revision===t?``:`Rev ${e.openRevision.revision} is the one open`}function ed(e){let t=0;for(let n of e.comments??[])t+=n.comment.trim().length+(n.heading?.length??0);return t}function td(e){return new TextEncoder().encode(JSON.stringify(e)).byteLength+pe}function nd(e){let t=e.plan;if(t!==void 0&&t.length===0)return`the edited plan is empty, so nothing was sent`;if(t!==void 0&&new TextEncoder().encode(t).byteLength>524288)return`the edited plan is over the plan size cap, so nothing was sent`;let n=e.comments??[];return n.length>40?`more than 40 section comments are pending, so nothing was sent`:n.find(e=>e.comment.length>4e3||(e.heading?.length??0)>4e3)?`a section comment is over ${Te} characters, so nothing was sent`:ed(e)>1e4?`the feedback composes more than the ${v} characters the hook reply carries, so nothing was sent`:td(e)>Se?`the decision is larger than one control frame carries, so nothing was sent`:null}function rd(e){return e?`, ${e}`:``}function id(e,t,n){if(!e.isConnected)return`Disconnected`;if(!t||n===null)return`No plan revision selected`;if(e.isDecisionInFlight)return`Sending your decision`;if(e.body===null)return`Loading`;if(e.isDraft===!0)return`Draft`;let r=$u(t,n);if(r)return r;if(e.hasUnsavedComment===!0)return`Save or cancel the open comment first.`;let i=e.pendingCommentCount??0;return i<=0?``:i===1?`1 comment to send. Remove it to approve.`:`${i} comments to send. Remove them to approve.`}function ad(e,t,n){let r=id(e,t,n);return r?`${r}${rd(e.problem)}`:e.problem??``}function od(e){let t=Ku(e.state,e.selectedAgentId),n=qu(e);return{tabs:e.state.reviews.map(e=>({agentId:e.agentId,label:e.agentId===null?`Main`:e.agentType||`Agent`,selected:e===t})),revisions:(t?.revisions??[]).map(e=>({revision:e.revision,label:`Rev ${e.revision}`,isOpen:e.revision===t?.openRevision?.revision,receivedAt:e.receivedAt,selected:e.revision===n})),selectedAgentId:t?.agentId??null,selectedRevision:n,previousRevision:Yu(e.state,t?.agentId??null,n),status:ad(e,t,n),actions:Qu(e,t,n),modes:[{kind:`read`,label:`Read`,enabled:!0},{kind:`changes`,label:`Changes`,enabled:Yu(e.state,t?.agentId??null,n)!==null&&e.isDraft!==!0},{kind:`edit`,label:`Edit`,enabled:Zu(e,t,n)}]}}function sd(e,t){let n=e.reviews.findIndex(e=>e.agentId===t.agentId),r=[...(n===-1?null:e.reviews[n])?.revisions??[]],i=r.findIndex(e=>e.revision===t.revision),a={revision:t.revision,receivedAt:t.receivedAt,chars:t.chars,title:t.title};r[i===-1?r.length:i]=a,r.sort((e,t)=>e.revision-t.revision);let o={agentId:t.agentId,agentType:t.agentType,revisions:r,state:t.state,openRevision:t.state===`open`?{revision:t.revision,since:t.receivedAt}:null,approvedRevision:t.approvedRevision,lastDecision:t.lastDecision},s=[...e.reviews];return s[n===-1?s.length:n]=o,{reviews:s}}function cd({headingOffsets:e,scrollTop:t,isScrolledToEnd:n,readingLineOffset:r}){if(e.length===0)return null;if(n)return e.length-1;let i=t+r,a=0;for(let t=0;t<e.length&&!(e[t]>i);t++)a=t;return a}var ld=lr(navigator.userAgent),ud=`next-attention-keys`,dd=Wr();function fd(){return dd}function pd(e,t){t.forEach((t,n)=>{n>0&&e.appendChild(w(`span`,`shortcut-sep`,`+`)),e.appendChild(w(`kbd`,`kbd`,t))})}function md(e){let t=w(`span`,`shortcut-keys`);return pd(t,e),t}function hd(){let e=md(vr(`next-attention`,ld,dd));return e.classList.add(ud),e}function gd(e){dd=e;let t=vr(`next-attention`,ld,e);for(let e of document.querySelectorAll(`.${ud}`))e.replaceChildren(),pd(e,t)}var _d=10;function vd(e){let t=new Map;for(let n of e.files){let e=n.path.split(`/`);for(let r=0;r<e.length;r++){let i=e.slice(0,r).join(`/`),a=t.get(i);a!==void 0&&a.localeCompare(n.path)<=0||t.set(i,n.path)}}return t}function yd(e,t){let n=[],r=new Set(e.files.map(e=>e.path));for(let i of e.links){let a=t.get(i.providerRepo),o=a?.firstChangedPathByDirectory.get(i.packageDir),s=o??i.importers.find(e=>r.has(e))??i.importers[0]??i.consumerManifest,c=o&&a?a.repo:e,l=i.importerCount===1?`file`:`files`,u=i.providerChangedPathCount===1?`file`:`files`,d=i.changedImporterCount===1?`file`:`files`,f=i.isLocalLink?`Linked locally (${i.versionSpec}), so ${i.providerRepo} changes reach it now.`:`Uses ${i.versionSpec} from the registry, so ${i.providerRepo} changes reach it only after a publish.`;i.providerChangedPathCount>0&&(f+=` ${i.providerRepo} changed ${i.providerChangedPathCount} ${u} in ${i.packageDir||`the repository root`}.`),i.changedImporterCount>0&&(f+=` ${i.changedImporterCount} importing ${d} changed here.`),n.push({dedupeKey:`link:${i.providerRepo}:${i.packageName}:${e.name}`,kind:`link`,severity:6,path:s,openPath:`${c.sessionPathPrefix}${s}`,text:`${e.name} imports ${i.packageName} from ${i.providerRepo} in ${i.importerCount} ${l}`,detail:f})}for(let t of e.collisions)n.push({dedupeKey:`collision:${e.sessionPathPrefix}${t.path}:${t.otherSessionId}`,kind:`collision`,severity:5,path:t.path,openPath:`${e.sessionPathPrefix}${t.path}`,text:`Also being changed in "${t.otherSessionName}"`,detail:`Another live session is changing this file, so the two may conflict.`});for(let t of e.coChangeGaps){let r=t.confidence>0?Math.round(t.support/t.confidence):0;n.push({dedupeKey:`co-change:${e.sessionPathPrefix}${t.path}:${t.partner}`,kind:`co-change`,severity:4,path:t.path,openPath:`${e.sessionPathPrefix}${t.path}`,text:`Usually changes with ${t.partner}, which is not in this change`,detail:`${t.support} of the ${r} commits that touched it also touched ${t.partner}.`})}return n}function bd(e,t,n){let r=e.get(t)??[];r.push(n),e.set(t,r)}function xd(e,t){for(let n of e.hotspots)bd(t,`${e.sessionPathPrefix}${n.path}`,{text:`often fixed`,title:`${n.fixCommitCount} of its last ${n.commitCount} commits were fixes.`});for(let n of e.blastRadius)n.transitiveDependentCount<_d||bd(t,`${e.sessionPathPrefix}${n.path}`,{text:`${n.transitiveDependentCount} depend on it`,title:`${n.transitiveDependentCount} files depend on it: ${n.directDependentCount} directly, ${n.dependentTestCount} of them tests.`})}function Sd(e,t){return t.severity-e.severity||e.openPath.localeCompare(t.openPath)||e.dedupeKey.localeCompare(t.dedupeKey)}function Cd(e){let t=new Set(e.repos.flatMap(e=>e.links.map(e=>e.providerRepo))),n=new Map;for(let r of e.repos)t.has(r.name)&&!n.has(r.name)&&n.set(r.name,{repo:r,firstChangedPathByDirectory:vd(r)});let r=new Map,i=new Map,a=e.error?[e.error]:[];for(let t of e.repos){for(let e of yd(t,n))r.has(e.dedupeKey)||r.set(e.dedupeKey,e);xd(t,i),t.error&&a.push(e.repos.length>1?`${t.name}: ${t.error}`:t.error)}return{worthALook:[...r.values()].sort(Sd),hintsByOpenPath:i,repos:e.repos.map(e=>({name:e.name,sessionPathPrefix:e.sessionPathPrefix})),errors:a}}function wd(e,t){let n=null;for(let r of e)t.startsWith(r.sessionPathPrefix)&&(n&&n.sessionPathPrefix.length>=r.sessionPathPrefix.length||(n=r));return n?.name??null}var Td=5;function Ed(e,t){let n=w(`button`,`review-look-line`);return n.type=`button`,n.dataset.kind=e.kind,n.title=`${e.detail} Click to open ${e.path} below.`,n.append(w(`span`,`review-look-file`,e.path),w(`span`,`review-look-text`,e.text)),n.addEventListener(`click`,()=>t(e.openPath)),n}function Dd(e,{isShowingAll:t,onShowAll:n,onOpenFile:r}){if(e.worthALook.length===0&&e.errors.length===0)return null;let i=w(`section`,`review-look`);if(i.append(w(`h3`,`review-group-label`,`Worth a look`)),e.errors.length>0){let t=w(`p`,`review-look-error`,`Could not check this change for anything worth a look.`);t.title=e.errors.join(`
|
|
76
|
-
`),i.append(t)}let a=t?e.worthALook:e.worthALook.slice(0,Td);if(a.length>0){let e=w(`div`,`review-look-list`);for(let t of a)e.append(Ed(t,r));i.append(e)}let o=e.worthALook.length-a.length;if(o===0)return i;let s=w(`div`,`review-look-more`),c=w(`button`,`review-look-show-all`,`Show all`);return c.type=`button`,c.addEventListener(`click`,n),s.append(w(`span`,`review-look-more-count`,`+${o} more`),c),i.append(s),i}function Od(e){return(e??[]).map(e=>{let t=w(`span`,`review-file-hint`,e.text);return t.title=e.title,t})}function kd(e){let t=/^@@+ -(\d+)(?:,\d+)? \+(\d+)(?:,\d+)? @@/.exec(e);if(!t)return null;let n=Number(t[1]),r=Number(t[2]);return!Number.isFinite(n)||!Number.isFinite(r)?null:{oldStart:n,newStart:r}}function Ad(e){let t=[];if(!e)return t;let n=String(e).split(/\r?\n/),r=null,i=null,a=null,o=null,s=()=>{if(a===null)return null;let e=a;return a=e+1,e},c=()=>{if(o===null)return null;let e=o;return o=e+1,e},l=e=>{let n={path:``,oldPath:null,status:`modified`,added:0,removed:0,binary:!1,hunks:[]};t.push(n),i=null;let r=/^diff --git a\/(.+?) b\/(.+)$/.exec(e);return r&&(n.oldPath=r[1]??null,n.path=r[2]??``),n};for(let e of n)if(e.startsWith(`diff --git `))r=l(e);else{if(!r){if(!e.startsWith(`--- `)&&!e.startsWith(`@@`))continue;r=l(`diff --git a/ b/`)}if(r){if(e.startsWith(`new file mode`))r.status=`added`;else if(e.startsWith(`deleted file mode`))r.status=`deleted`;else if(e.startsWith(`rename from `))r.oldPath=e.slice(12),r.status=`renamed`;else if(e.startsWith(`rename to `))r.path=e.slice(10),r.status=`renamed`;else if(e.startsWith(`Binary files`))r.binary=!0;else if(!(e.startsWith(`index `)||e.startsWith(`similarity index`)||e.startsWith(`dissimilarity index`)||e.startsWith(`old mode`)||e.startsWith(`new mode`))){if(e.startsWith(`--- `)){if(e===`--- /dev/null`){r.status=`added`;continue}if(!r.path){let t=e.slice(4).replace(/^a\//,``);t&&t!==`/dev/null`&&(r.oldPath=r.oldPath||t)}}else if(e.startsWith(`+++ `)){if(e===`+++ /dev/null`){r.status=`deleted`;continue}if(!r.path){let t=e.slice(4).replace(/^b\//,``);t&&t!==`/dev/null`&&(r.path=t)}}else if(e.startsWith(`@@`)){i={header:e,lines:[]},r.hunks.push(i);let t=kd(e);a=t?t.oldStart:null,o=t?t.newStart:null}else if(i){if(e===``)continue;let t=e[0];if(t===`+`){i.lines.push({type:`add`,text:e.slice(1),oldLineNumber:null,newLineNumber:c()}),r.added++;continue}if(t===`-`){i.lines.push({type:`del`,text:e.slice(1),oldLineNumber:s(),newLineNumber:null}),r.removed++;continue}if(t===`\\`){i.lines.push({type:`meta`,text:e.slice(1).trim(),oldLineNumber:null,newLineNumber:null});continue}i.lines.push({type:`context`,text:t===` `?e.slice(1):e,oldLineNumber:s(),newLineNumber:c()})}}}}for(let e of t)e.path||=e.oldPath||`(unknown)`;return t}function jd(e,t){return t===`merged`||t===`none`||e===`parked`&&t===`pending-review`}function Md(e){let t=0,n=0;for(let r of e||[])t+=r.added||0,n+=r.removed||0;return{files:(e||[]).length,added:t,removed:n}}function Nd({changedFileCount:e,hasCommits:t,canMerge:n,isWorkspace:r,live:i,effectiveBase:a}){let o=`${e} file${e===1?``:`s`} changed`,s=(t,n)=>e>0?`${o}, ${t}`:n;if(r)return{text:e>0?`${o} in this worktree`:`Changes in this worktree`,namesMergeTarget:!1};if(n){let e=Rd(a);return{text:s(`ready to merge into ${e}`,`Ready to merge into ${e}`),namesMergeTarget:!0}}return i?t?{text:s(`not ready to merge`,`Not ready to merge`),namesMergeTarget:!1}:{text:s(`not committed yet`,`Not committed yet`),namesMergeTarget:!1}:{text:s(`session ended`,`Session ended`),namesMergeTarget:!1}}function Pd({status:e,mergeReason:t,fetched:n,hasDiffError:r,hasChanges:i,hasCommits:a,canMerge:o,isWorkspace:s,live:c,effectiveBase:l,changedFileCount:u=0}){return e===`parked`&&t===`base-diverged`?{text:`Parked: base branch diverged`,namesMergeTarget:!1}:e===`parked`?{text:`Parked: merge conflict`,namesMergeTarget:!1}:e===`merging`?{text:`Merging`,namesMergeTarget:!1}:e===`merged`?{text:`Merged`,namesMergeTarget:!1}:r?{text:`Could not read changes`,namesMergeTarget:!1}:n?i?Nd({changedFileCount:u,hasCommits:a,canMerge:o,isWorkspace:s,live:c,effectiveBase:l}):{text:`No changes yet`,namesMergeTarget:!1,isEmpty:!0}:{text:`Checking for changes`,namesMergeTarget:!1}}function Fd(e,t){return e?`Edits this session makes in its worktree show up here.`:`Edits this session makes show up here, ready to merge into ${Rd(t)}.`}function Id(e,t){return e.namesMergeTarget?null:`merges into ${Rd(t)}`}function Ld({status:e,mergeReason:t,live:n,isMergeRendered:r,hasChanges:i}){return e===`parked`&&n&&t!==`base-diverged`?`resolve`:!i&&e!==`parked`&&e!==`merging`?`none`:r?`merge`:`none`}function Rd(e){return e||`base`}function zd(e,t){return`Merge into ${Rd(e)}, push it, and rebase this worktree, then keep working (${t})`}function Bd(e){return e===`base-diverged`?`Resync the base branch by hand, then Merge again.`:`Needs manual merge`}function Vd(e,t,n){let r=e!==`parked`||e===`parked`&&t===`base-diverged`;return{isRendered:r,isEnabled:r&&e!==`merging`&&n}}function Hd({status:e,hasCommits:t,live:n,state:r}){return e===`merging`?null:t?!n&&(e===`parked`||e===`merged`)?`Session ended.`:!n||e===`parked`?null:r===`INITIALIZING`||r===`STARTING`?`Starting up. Mergeable once the session is live.`:null:n?`Nothing is committed yet. Merge opens once the session commits.`:null}function Ud(e){return e.map(e=>{let t=e.member?`${e.member}/ `:``,n=ee(e.sha);return!e.verified||!e.ref?{text:`${t}vs ${n}, base branch not found`,fullSha:e.sha,isUnverified:!0}:{text:`${t}vs ${e.ref} @ ${n}`,fullSha:e.sha,isUnverified:!1}})}function Wd({fetched:e,changedFileCount:t,hasCommits:n}){return!e||t>0||n}function Gd(e){return e||`its upstream`}function Kd(e){if(!e)return null;let t=e.branch||`Base branch`,{state:n,ahead:r,behind:i}=e,a=Gd(e.upstream);return n===`no-upstream`?`${t}: no upstream`:n===`unknown`&&e.error&&e.action===void 0?`${t}: sync check failed: ${e.error}`:n===`unknown`?`${t}: sync state unknown vs ${a}`:n===`in-sync`?`${t}: in sync with ${a}`:n===`ahead`?`${t}: ${r} ahead of ${a}`:n===`behind`?`${t}: ${i} behind ${a}`:n===`diverged`?`${t}: ${r} ahead, ${i} behind ${a}`:null}function qd(e){return!e||e.fetched===!1?`recheck`:e.state===`ahead`||e.state===`behind`?`resync`:`recheck`}function Jd(e,t,n){let r=n?` (${t})`:``;if(!e||qd(e)===`recheck`)return`Click to fetch and check again${r}`;let i=e.branch||`Base branch`,a=Gd(e.upstream);return e.state===`behind`?`Click to fast-forward ${i} to ${a}${r}`:`Click to push ${i} to ${a}${r}`}function Yd(e){return e?.state!==`in-sync`||e.fetched===!1}function Xd(e){if(e.error)return`Resync failed: ${e.error}`;let t=e.branch||`The base branch`,n=Gd(e.upstream);return e.action===`fast-forwarded`?`Fast-forwarded ${t} to ${n}.`:e.action===`pushed`?`Pushed ${t} to ${n}.`:e.state===`diverged`?`${t} has diverged from ${n}. Resolve manually.`:e.state===`in-sync`?null:e.state===`no-upstream`?`${t} has no upstream to resync against.`:`Could not determine sync status.`}var Zd=new Set([`pending-review`,`parked`]),Qd=600,$d=yr(`merge`,ld),ef=yr(`resolve-or-resync`,ld),tf={minPx:260,maxPx:700},nf=16,rf=5e3,af=new Map,of=new Map,sf=new Map,cf=new Map,lf=new Map,uf=new Map,df=new Set,ff=new WeakMap,pf=new WeakMap,mf=new Set,hf=new Set,gf=!1,_f=null,vf=null,V=null,H=null,yf=null,bf=null,xf=null,Sf=null,Cf=null,wf=!1,Tf=null,Ef=null,Df=null,Of=null,kf=new Map,U=null,Af=null;function jf(e,t){let n=w(`button`,`review-icon-button`);return n.type=`button`,n.title=e,n.setAttribute(`aria-label`,e),n.append(L(t)),n}function Mf(){wf=!1,V?.querySelector(`.review-more-menu`)?.remove(),V?.querySelector(`.review-more-button`)?.setAttribute(`aria-expanded`,`false`)}function Nf({panel:e}){if(vf=e,!vf)return;let t=vf,n=w(`div`,`review-sidebar-head`),r=w(`span`,`review-sidebar-title`,`Review`);Cf=w(`span`,`review-sidebar-session`),r.append(Cf);let i=e=>{t.toggleAttribute(`data-collapsed`,e),ti(!e)},a=jf(`Close review`,`M6 3L11 8L6 13`);a.classList.add(`review-sidebar-close`),a.addEventListener(`click`,()=>i(!0)),n.append(r,a);let o=w(`div`,`review-sidebar-rail`),s=jf(`Open review`,`M10 3L5 8L10 13`);s.classList.add(`review-sidebar-open`),s.addEventListener(`click`,()=>i(!1)),bf=w(`div`,`review-rail-status`),xf=w(`span`,`review-rail-added`),Sf=w(`span`,`review-rail-removed`),bf.append(xf,Sf),yf=w(`span`,`review-rail-label`,`Review`),o.append(s,yf,bf),V=w(`div`,`review-controls`),H=w(`div`,`review-sidebar-body`);let c=w(`div`,`review-resize-handle`);c.setAttribute(`role`,`separator`),c.setAttribute(`aria-orientation`,`vertical`),c.setAttribute(`aria-label`,`Resize review sidebar`),c.tabIndex=0,t.append(o,n,V,H,c),t.toggleAttribute(`data-collapsed`,!ei()),Ff(H),document.addEventListener(`keydown`,e=>{e.key===`Escape`&&wf&&(e.preventDefault(),Mf(),V?.querySelector(`.review-more-button`)?.focus())}),document.addEventListener(`pointerdown`,e=>{wf&&e.target instanceof Element&&(V?.contains(e.target)&&e.target.closest(`.review-more-button, .review-more-menu`)||Mf())}),Po({resizer:c,column:t,widthHost:t,widthProperty:`--sidebar-width`,bounds:tf,keyStepPx:nf,getStoredWidth:Ei,setStoredWidth:Di,growsLeftward:!0}),Fl(e=>{wf=!1,Df=null,mf.clear(),hf.clear(),gf=!1,_f=null,e&&cp(e),e&&!up(e)&&dp(e),W()}),W()}function Pf(e,t){let n=af.get(e);af.set(e,t),jd(n,t)&&(sf.delete(e),cf.delete(e),lf.delete(e),e===B()&&lp(e)),e===B()&&W()}function Ff(e){let t=!1,n=null,r=null,i=e=>E({type:`watch-session-changes`,id:e}),a=()=>{let e=t&&document.visibilityState===`visible`?B():null;e!==n&&(r&&clearInterval(r),r=null,n=e,i(e),e&&(r=setInterval(()=>i(e),ge)))};new IntersectionObserver(e=>{t=e[e.length-1]?.isIntersecting??!1,a()}).observe(e),document.addEventListener(`visibilitychange`,a),Fl(a)}function If(e){vf&&(e?(Ue(vf,e),W()):(ze(vf),W()))}function Lf(e,t,n=null){let r=t||`none`;of.set(e,n);let i=kf.get(e);i!==void 0&&i!==r&&kf.delete(e),Pf(e,r)}function Rf(e){let t=D(e);t&&kf.delete(t)&&t===B()&&W()}function zf(e,t,n=null){of.set(e,n),kf.delete(e),Pf(e,t||`none`)}function Bf(e,t){sf.set(e,t),cf.delete(e),e===B()&&(_f&&_p(_f,t),W(),vp())}function Vf(e,t){let n=D(e);n&&(cf.set(n,t),n===B()&&W())}function Hf(e,t){let n=D(e);if(!n)return;let r=_.safeParse(t);r.success&&r.data.sessionId===n&&(lf.set(n,r.data),n===B()&&W())}function Uf(e,t){let n=D(e),r=t;uf.set(n,r),r&&r.action!==void 0&&Wf(n,r),n===B()&&W()}function Wf(e,t){df.delete(e),clearTimeout(Af??void 0),Af=null;let n=Xd(t);U=n?{forId:e,text:n,isError:!!t.error}:null,U&&!U.isError&&(Af=setTimeout(()=>{U&&U.forId===e&&(U=null),W()},5e3))}function Gf(e){let t=D(e);t&&t===B()&&cp(t)}function Kf(e){let t=D(e);if(t!==B())return;let n=!sf.has(t)||cf.has(t),r=!lf.has(t)||qf(lf.get(t));n&&cp(t),r&&!n&&lp(t),W()}function qf(e){return e?!!e.error||e.repos.some(e=>e.error!==null):!1}function Jf(e){let t=D(e);af.delete(t),of.delete(t),sf.delete(t),cf.delete(t),lf.delete(t),uf.delete(t),df.delete(t),U&&U.forId===t&&(clearTimeout(Af??void 0),U=null),t===B()?Pl(null):W()}function Yf(){let e=B(),t=e?O.get(e):null;if(!e||!t)return Xf(null,`No session is open to merge.`);if(up(e))return Xf(e,`A workspace session has no worktree to merge.`);if(kf.has(e))return Xf(e,`Merge is already on its way for "${gp(t,e)}".`);let n=af.get(e)||`none`,r=!!sf.get(e)?.hasCommits,i=Vd(n,of.get(e)||null,ip(t.currentState,r));return Ld({status:n,mergeReason:of.get(e)||null,live:sp(t.currentState),isMergeRendered:i.isRendered,hasChanges:rp(e)})!==`merge`||!i.isEnabled?Xf(e,Hd({status:n,hasCommits:r,live:sp(t.currentState),state:t.currentState})??`Nothing to merge in "${gp(t,e)}" right now.`):(ap(e,t.currentState),!0)}function Xf(e,t){return Df={forId:e,text:t},clearTimeout(Of??void 0),Of=setTimeout(()=>{Df=null,W()},rf),W(),!1}function Zf(){let e=B();if(!e||up(e))return!1;let t=O.get(e);if(!t)return!1;let n=af.get(e)||`none`,r=of.get(e)||null;return Ld({status:n,mergeReason:r,live:sp(t.currentState),isMergeRendered:Vd(n,r,!1).isRendered,hasChanges:rp(e)})!==`resolve`||Qf(e)?!1:($f(e),!0)}function Qf(e){return Tf?.forId===e&&!Tf.isError}function $f(e){let t=E({type:`resolve-session-merge`,id:e});Tf=t?{forId:e,text:`Resolve prompt sent`,isError:!1}:{forId:e,text:`Not connected. The resolve prompt was not sent.`,isError:!0},clearTimeout(Ef??void 0),Ef=setTimeout(()=>{Tf=null,W()},t?3e3:rf),W()}function ep(){let e=B();return!e||!O.has(e)||up(e)||pp(e)?!1:(mp(e),!0)}function tp(e){if(!e)return{committed:[],uncommitted:[]};let t=ff.get(e);if(t)return t;let n={committed:Ad(e.committed?.diff||``),uncommitted:Ad(e.uncommitted?.diff||``)};return ff.set(e,n),n}function np(e){let t=pf.get(e);if(t)return t;let n=Cd(e);return pf.set(e,n),n}function rp(e){let t=tp(sf.get(e)),n=[...t.committed,...t.uncommitted],r=sf.get(e)??null;return Wd({fetched:sf.has(e),changedFileCount:Md(n).files,hasCommits:!!r?.hasCommits})}function ip(e,t){return(Ge.includes(e)||e===x.RUNNING)&&t}function ap(e,t){t===x.RUNNING?At({title:`Merge while working`,message:`This session still looks like it is working. Merging rebases its worktree under it. Merge anyway?`,confirmLabel:`Merge anyway`,onConfirm:()=>op(e,!0)}):op(e,!1)}function op(e,t){kf.has(e)||(E(t?{type:`merge-continue-session`,id:e,force:!0}:{type:`merge-continue-session`,id:e})?(kf.set(e,af.get(e)||`none`),e===B()&&W()):Xf(e,`Not connected. The merge was not sent.`))}function sp(e){return e!==x.DORMANT&&e!==x.DONE&&e!==x.FAILED}function cp(e){E({type:`request-session-diff`,id:e}),lp(e)}function lp(e){lf.has(e)||lf.set(e,null),E({type:`request-change-map`,id:e})}function up(e){return O.get(e)?.card.dataset.workspace!==void 0}function dp(e){uf.set(e,null),E({type:`request-branch-sync`,id:e}),e===B()&&W()}function fp(e){df.add(e),clearTimeout(Af??void 0),U&&U.forId===e&&(U=null),E({type:`resync-branch`,id:e}),e===B()&&W()}function pp(e){return df.has(e)||uf.get(e)===null}function mp(e){pp(e)||(qd(uf.get(e))===`resync`?fp(e):dp(e))}function hp(e,t){return t?{text:`Resyncing`,loading:!0,error:!1}:U&&U.forId===e?{text:U.text,loading:!1,error:U.isError}:null}function gp(e,t){return e?.card?.dataset.session||t}function _p(e,t){if(!t)return;let{committed:n,uncommitted:r}=tp(t);for(let t of n)(t.path===e||t.oldPath===e)&&mf.add(`committed:${t.path}`);for(let t of r)(t.path===e||t.oldPath===e)&&mf.add(`uncommitted:${t.path}`)}function vp(){if(!H||!_f)return;let e=H.querySelectorAll(`.review-file`);for(let t of e)if(t.dataset.path===_f||t.dataset.oldPath===_f){t.scrollIntoView({block:`nearest`}),_f=null;return}}function yp(e){_f=e,_p(e,sf.get(B()??``)),W(),vp()}function bp(){gf=!0,W()}function W(){let e=H?.scrollTop??0;xp(),H&&(H.scrollTop=e)}function xp(){if(!V||!H)return;V.replaceChildren(),H.replaceChildren(),yf&&(yf.hidden=!0),bf&&(bf.hidden=!0);let e=B(),t=e?O.get(e):null;if(Cp(e,t),!e||!t){Df&&V.append(Sp(Df.text,!0)),wp(`No session selected`,`Click a session name to review its changes here.`);return}let n=up(e),r=af.get(e)||`none`,i=of.get(e)||null,a=t.currentState,o=Zd.has(r),s=sf.has(e),c=s?sf.get(e):null,l=cf.get(e)??null,{committed:u,uncommitted:d}=tp(c),f=!!c?.hasCommits,p=sp(a),m=Vd(r,i,ip(a,f)),h=uf.get(e),g=df.has(e),_=Rd(t.effectiveBase),v=Md([...u,...d]),ee=Ld({status:r,mergeReason:i,live:p,hasChanges:Wd({fetched:s,changedFileCount:v.files,hasCommits:f}),isMergeRendered:m.isRendered}),te=Pd({status:r,mergeReason:i,fetched:s,hasDiffError:l!==null,hasChanges:v.files>0||f,hasCommits:f,canMerge:!n&&m.isEnabled,isWorkspace:n,live:p,effectiveBase:_,changedFileCount:v.files}),ne=te.isEmpty===!0,re=ne||_u()||Yd(h),y=w(`div`,`review-status-headline`);if(y.append(w(`span`,`review-status-text`,te.text)),!n&&!re){let t=Kd(h);if(t){y.title=t;let n=jf(`Refresh branch sync`,`M13 6A5 5 0 1 0 13 10M13 2v4H9`);n.classList.add(`review-branch-sync-refresh`),n.title=Jd(h,ef,ee!==`resolve`),n.disabled=pp(e),n.setAttribute(`aria-description`,t),n.addEventListener(`click`,()=>mp(e)),y.append(w(`span`,`sr-only`,t),n)}}if(ne||V.append(y),u.length>0)for(let e of Ud(c?.bases??[])){let t=w(`div`,e.isUnverified?`review-diff-base review-diff-base-unverified`:`review-diff-base`,e.text);t.title=e.fullSha,V.append(t)}let ie=w(`div`,`review-status-meta`);if(s&&v.files>0&&ie.append(w(`span`,`review-status-added`,`+${v.added}`),w(`span`,`review-status-removed`,`-${v.removed}`),w(`span`,`review-status-spacer`)),!n&&re){let t=Tp(e,ee!==`resolve`);t&&ie.append(t)}ie.childElementCount>0&&V.append(ie),r===`parked`&&V.append(w(`div`,`review-status-explanation`,Bd(i))),yf&&(yf.hidden=!1),bf&&(bf.hidden=!1,bf.setAttribute(`aria-label`,`${te.text}, +${v.added}, -${v.removed}`),bf.title=te.text),xf&&(xf.textContent=`+${v.added}`),Sf&&(Sf.textContent=`-${v.removed}`);let ae=n?null:Ap(e,{status:r,reviewable:o,mergeAction:m,live:p,state:a,effectiveBase:_,primaryAction:ee});ae&&V.append(ae);let oe=n?null:hp(e,g),se=!n&&ee===`merge`&&!m.isEnabled?Hd({status:r,hasCommits:f,live:p,state:a}):null;if(se){let e=w(`div`,`review-control-reason`,se);e.id=`review-merge-reason`,V.append(e),V.querySelector(`#review-merge-btn`)?.setAttribute(`aria-describedby`,e.id)}if(oe?.text){let e=w(`div`,oe.loading?`review-control-reason review-loading`:`review-control-reason`,oe.text);e.id=`review-resync-reason`,oe.error&&e.classList.add(`review-control-reason-error`),e.setAttribute(`role`,`status`),ie.append(e),ie.isConnected||V.insertBefore(ie,y.isConnected?y.nextSibling:V.firstChild),V.querySelector(`.review-branch-sync-button, .review-branch-sync-refresh`)?.setAttribute(`aria-describedby`,e.id)}if(Tf?.forId===e&&V.append(Sp(Tf.text,Tf.isError)),Df&&(Df.forId===e||Df.forId===null)&&V.append(Sp(Df.text,!0)),l){H.append(w(`p`,`review-diff-error`,l));return}if(ne){wp(te.text,Fd(n,_));return}let ce=lf.get(e),le=ce?np(ce):null,ue=le?Dd(le,{isShowingAll:gf,onShowAll:bp,onOpenFile:yp}):null;ue&&H.append(ue);let de=u.length>0&&d.length>0;u.length>0&&H.append(Ep({kind:`committed`,label:de?`Committed`:null,meaning:Id(te,_),files:u,changeMapView:le})),d.length>0&&H.append(Ep({kind:`uncommitted`,label:de?`Not committed yet`:null,meaning:null,files:d,changeMapView:le}))}function Sp(e,t){let n=w(`div`,t?`review-control-reason review-control-reason-error`:`review-resolve-sent`,e);return n.setAttribute(`role`,`status`),n}function Cp(e,t){if(!Cf)return;let n=e&&t?gp(t,e):``;Cf.textContent=n,Cf.hidden=!n,Cf.title=n}function wp(e,t){if(!H)return;let n=w(`div`,`review-empty`);n.append(w(`div`,`review-empty-title`,e),w(`div`,`review-empty-desc`,t)),H.append(n)}function Tp(e,t){let n=uf.get(e);if(n===void 0)return null;if(n===null)return w(`span`,`review-branch-sync-text review-loading`,`Checking branch sync...`);let r=Kd(n)||`Base branch: sync state unknown`,i=w(`span`,`review-branch-sync-text`);n.state&&(i.dataset.syncState=n.state),n.fetched===!1&&(i.dataset.stale=`true`);let a=jf(`Refresh branch sync`,`M13 6A5 5 0 1 0 13 10M13 2v4H9`);return a.classList.add(`review-branch-sync-button`),a.title=Jd(n,ef,t),a.disabled=df.has(e),a.addEventListener(`click`,()=>mp(e)),i.append(a,w(`span`,`review-branch-sync-label`,r)),i}function Ep({kind:e,label:t,meaning:n,files:r,changeMapView:i}){let a=w(`div`,`review-section`);a.dataset.kind=e,t&&a.append(Dp(t,n,r));let o=w(`div`,`review-diff`),s=i&&i.repos.length>1?i.repos:[],c=null;for(let t of r){let n=s.length>0?wd(s,t.path):null;n&&n!==c&&o.append(w(`div`,`review-repo-label`,n)),c=n,o.append(Op(t,e,i))}return a.append(o),a}function Dp(e,t,n){let r=Md(n),i=w(`div`,`review-section-head`),a=w(`div`,`review-section-id`);a.append(w(`span`,`review-section-label`,e)),t&&a.append(w(`span`,`review-section-meaning`,t));let o=w(`div`,`review-section-stat`);return o.append(w(`span`,`review-stat-files`,`${r.files} file${r.files===1?``:`s`}`),w(`span`,`review-add`,`+${r.added}`),w(`span`,`review-del`,`-${r.removed}`)),i.append(a,o),i}function Op(e,t,n){let r=`${t}:${e.path}`,i=mf.has(r),a=w(`div`,`review-file`);a.dataset.path=e.path,e.oldPath&&(a.dataset.oldPath=e.oldPath),a.dataset.status=e.status,a.dataset.open=i?`true`:`false`;let o=w(`button`,`review-file-head`);o.type=`button`,o.setAttribute(`aria-expanded`,i?`true`:`false`);let s=w(`span`,`review-file-twisty`,i?`▾`:`▸`);s.setAttribute(`aria-hidden`,`true`);let c=w(`span`,`review-file-name`);c.append(w(`span`,`review-file-path`,e.path));let l=Od(n?.hintsByOpenPath.get(e.path));if(l.length>0){let e=w(`span`,`review-file-hints`);e.append(...l),c.append(e)}o.append(s,c);let u=w(`span`,`review-file-counts`);if(e.binary&&u.append(w(`span`,`review-bin`,`bin`)),e.binary||u.append(w(`span`,`review-add`,`+${e.added}`),w(`span`,`review-del`,`-${e.removed}`)),o.append(u),o.addEventListener(`click`,()=>{let e=mf.has(r);e&&mf.delete(r),e||mf.add(r),W()}),a.append(o),!i)return a;let d=w(`div`,`review-file-body`);if(e.binary)return d.append(w(`div`,`review-file-binary`,`Binary file not shown`)),a.append(d),a;let f=0,p=!1;for(let t of e.hunks){if(f>=Qd&&!hf.has(r)){p=!0;break}d.append(w(`div`,`review-hunk-head`,t.header));for(let e of t.lines){if(f>=Qd&&!hf.has(r)){p=!0;break}let t=w(`div`,`review-line review-line-${e.type}`),n=e.type===`add`?`+`:e.type===`del`?`-`:e.type===`meta`?`\\`:` `;t.append(w(`span`,`review-line-gutter`,n)),t.append(w(`span`,`review-line-text`,e.text)),d.append(t),f++}if(p)break}if(p){let e=w(`button`,`review-expand`,`Show the rest of this file`);e.type=`button`,e.addEventListener(`click`,()=>{hf.add(r),W()}),d.append(e)}return a.append(d),a}function kp({id:e,label:t,shortcut:n,title:r,disabled:i=!1,danger:a=!1,onClick:o}){let s=w(`button`,a?`review-btn review-btn-danger`:`review-btn review-btn-primary`);return s.type=`button`,e&&(s.id=e),r&&(s.title=r),s.disabled=i,s.innerHTML=n?`${t} <kbd class="review-shortcut" aria-hidden="true">${n}</kbd>`:t,s.addEventListener(`click`,o),s}function Ap(e,{status:t,reviewable:n,mergeAction:r,live:i,state:a,effectiveBase:o,primaryAction:s}){let c=w(`div`,`review-actions`),l=s===`resolve`;s===`merge`&&c.append(kp({id:`review-merge-btn`,label:`Merge`,shortcut:$d,title:zd(o,$d),disabled:!r.isEnabled||kf.has(e),onClick:()=>ap(e,a)})),l&&c.append(kp({label:`Resolve`,shortcut:ef,title:`Paste a resolve prompt into this session so the agent can finish the merge (${ef})`,disabled:Qf(e),onClick:()=>$f(e)}));let u=w(`div`,`review-action-controls`);if(u.append(c),!n||i)return c.childElementCount>0?u:null;let d=jf(`More review actions`,Qo);if(d.classList.add(`review-more-button`),d.setAttribute(`aria-haspopup`,`menu`),d.setAttribute(`aria-expanded`,String(wf)),d.setAttribute(`aria-controls`,`review-more-menu`),d.addEventListener(`click`,()=>{wf=!wf,W(),(V?.querySelector(wf?`.review-more-menu button:not(:disabled)`:`.review-more-button`)??V?.querySelector(`.review-more-button`))?.focus()}),c.append(d),!wf)return u;let f=w(`div`,`review-more-menu`);if(f.id=`review-more-menu`,f.setAttribute(`role`,`menu`),f.setAttribute(`aria-label`,`More review actions`),n&&!i){let n=kp({label:`Discard worktree`,danger:!0,disabled:t===`merging`,onClick:()=>{wf=!1,W();let t=gp(O.get(e),e);At({title:`Discard worktree`,message:`Throw away the worktree changes for "${t}"? This cannot be undone.`,confirmLabel:`Discard`,danger:!0,onConfirm:()=>E({type:`discard-session-worktree`,id:e})})}});n.setAttribute(`role`,`menuitem`),f.append(n)}return u.append(f),u}var jp=160,Mp=Object.freeze({Bash:`command`,Read:`file_path`,Edit:`file_path`,MultiEdit:`file_path`,Write:`file_path`,NotebookEdit:`notebook_path`,Grep:`pattern`,Glob:`pattern`,WebFetch:`url`,WebSearch:`query`,Task:`description`,Agent:`description`,Skill:`skill`});function Np(e){let t=e.split(/\r?\n/,1)[0]?.trim()??``;return t.length<=jp?t:`${t.slice(0,157)}...`}function Pp(e,t){let n=Mp[e];if(!n||!t||typeof t!=`object`||Array.isArray(t))return``;let r=t[n];return typeof r==`string`?Np(r):``}var Fp=5e3;function Ip(e){let t=e.match(/<command-name>([^<]*)<\/command-name>/)?.[1];return t===void 0||/[\r\n]/.test(t)?null:t.trim()||null}function Lp(e,t){if(!e.toolUseId)return Ip(e.text)??`context`;let n=t.get(e.toolUseId);return n?Pp(n.name,n.input)||n.name:`expansion`}function Rp(e){return e.kind!==`expansion`||e.toolUseId?!1:Ip(e.text)!==null}function zp(e){return e.kind===`prompt`||e.kind===`session`||Rp(e)}function Bp(e){return new TextEncoder().encode(e).byteLength}var Vp={prompt:`PROMPT`,expansion:`EXPANSION`,thinking:`THINKING`,assistant:`ASSISTANT`,tool_call:`TOOL`,tool_result:`RESULT`,session:`SESSION`,notice:`NOTICE`,raw:`RAW`};function Hp(e,t){if(e.kind===`prompt`)return{prefix:`Prompt: `,text:Np(e.text)};if(e.kind===`thinking`)return{prefix:`Thinking: `,text:Np(e.text)};if(e.kind===`assistant`)return{prefix:`Assistant: `,text:Np(e.text)};if(e.kind===`notice`)return{prefix:`Notice: `,text:Np(e.text)};if(e.kind===`raw`)return{prefix:`Raw: `,text:Np(e.line)};if(e.kind===`session`)return{prefix:`Session: `,text:`${e.vendor} ${e.vendorSessionId}`};if(e.kind===`expansion`)return{prefix:`Expansion: `,text:Lp(e,t)};if(e.kind===`tool_call`){let t=Pp(e.name,e.input);return t?{prefix:`${e.name}: `,text:t}:{prefix:``,text:e.name}}return{prefix:`${t.get(e.toolUseId)?.name??`Tool`} result: `,text:`${Bp(e.content)} bytes`}}function Up(e){if(!e.agentType)return``;let t=e.agentId?` ${e.agentId.slice(-6)}`:``;return`[${e.agentType}${t}] `}function Wp(e,t){let n=Hp(e,t),r=Up(e),i=e.kind===`tool_call`||e.kind===`tool_result`?`${n.prefix}${n.text}`:n.text,a=[],o=e.kind===`notice`?`muted`:`default`;if(e.kind===`tool_result`&&e.isError&&(o=`error`,a.push(`error`)),e.truncated===!0&&(o!==`error`&&(o=`muted`),a.push(`truncated`)),e.kind===`tool_result`){let n=t.get(e.toolUseId),r=n?e.ts-n.ts:NaN;Number.isFinite(r)&&r>=0&&a.push(r>1e3?`${(r/1e3).toFixed(1)}s`:`${Math.round(r)}ms`)}return{kind:e.kind,tag:Vp[e.kind],text:`${r}${i}`,tone:o,badges:a}}function Gp(e,t){return{record:e,...Wp(e,t)}}function Kp(e){return e.kind!==`tool_result`&&e.kind!==`expansion`?null:e.toolUseId||null}function qp(e,t){let n=Kp(e);return!n||t.has(n)?null:n}function Jp(e,t,n=1){e.set(t,(e.get(t)??0)+n)}function Yp(e,t){let n=(e.get(t)??0)-1;n>0?e.set(t,n):e.delete(t)}function Xp(e,t){if(t.size!==0)for(let n of e.turns)for(let r=0;r<n.rows.length;r+=1){let i=n.rows[r],a=Kp(i.record);a&&t.has(a)&&(n.rows[r]=Gp(i.record,e.toolCallByUseId))}}function Zp(){return{turns:[],toolCallByUseId:new Map,unresolvedToolUseCounts:new Map}}function Qp(){return{rowCount:0,toolCallCount:0,errorCount:0,resultBytes:0}}function $p(e,t,n){e.metrics.rowCount+=n,t.record.kind===`tool_call`&&(e.metrics.toolCallCount+=n),t.record.kind===`tool_result`&&(e.metrics.resultBytes+=Bp(t.record.content)*n,t.record.isError&&(e.metrics.errorCount+=n))}function em(e,t){for(let n of t)n.kind===`tool_call`&&e.toolCallByUseId.set(n.toolUseId,n);let n=[],r=e.turns[e.turns.length-1]??null;for(let i of t){let t=qp(i,e.toolCallByUseId);t&&Jp(e.unresolvedToolUseCounts,t);let a=Gp(i,e.toolCallByUseId);if(zp(i)){r={head:a,rows:[],hasTrimmedRows:!1,startedAt:i.ts,metrics:Qp()},$p(r,a,1),e.turns.push(r),n.push({turnIndex:e.turns.length-1,isNewTurn:!0,head:a,rows:[]});continue}r||(r={head:null,rows:[],hasTrimmedRows:!1,startedAt:i.ts,metrics:Qp()},e.turns.push(r),n.push({turnIndex:e.turns.length-1,isNewTurn:!0,head:null,rows:[]})),r.rows.push(a),$p(r,a,1);let o=e.turns.length-1,s=n[n.length-1];s&&s.turnIndex===o?s.rows.push(a):n.push({turnIndex:o,isNewTurn:!1,head:null,rows:[a]})}return n}function tm(e,t){let n=Zp();em(n,t);let r=new Set;for(let[t,i]of n.toolCallByUseId)e.toolCallByUseId.has(t)||(e.toolCallByUseId.set(t,i),r.add(t));let i=new Set;for(let t of r)e.unresolvedToolUseCounts.delete(t)&&i.add(t);for(let[t,r]of n.unresolvedToolUseCounts)e.toolCallByUseId.has(t)||Jp(e.unresolvedToolUseCounts,t,r);let a=n.turns[n.turns.length-1],o=e.turns[0],s=!!a&&!!o&&!o.head,c=s?a.head:null,l=s?a.rows:[];if(s){n.turns.pop();let e=a.startedAt,t=o.startedAt;e!==null&&(t===null||e<t)&&(o.startedAt=a.startedAt),o.head=c,o.rows=[...l,...o.rows],o.metrics={rowCount:a.metrics.rowCount+o.metrics.rowCount,toolCallCount:a.metrics.toolCallCount+o.metrics.toolCallCount,errorCount:a.metrics.errorCount+o.metrics.errorCount,resultBytes:a.metrics.resultBytes+o.metrics.resultBytes}}return e.turns=[...n.turns,...e.turns],Xp(e,i),{newTurns:n.turns,mergedHead:c,mergedRows:l,needsRerender:i.size>0}}function nm(e){return e.rows.length+ +!!e.head}function rm(e){let t=0;for(let n of e.turns)t+=nm(n);return t}function im(e,t){for(let n of t){if(n.record.kind===`tool_call`){e.toolCallByUseId.delete(n.record.toolUseId);continue}let t=Kp(n.record);t&&Yp(e.unresolvedToolUseCounts,t)}}function am(e,t){im(e,t.head?[t.head,...t.rows]:t.rows)}function om(e,t){let n=e.turns[0];if(!n)return 0;let r=Math.min(t,n.rows.length);if(r<=0)return 0;let i=n.rows.slice(0,r);im(e,i);for(let e of i)$p(n,e,-1);return n.rows=n.rows.slice(r),n.hasTrimmedRows=!0,r}function sm(e,t=Fp){let n=rm(e),r=0;for(;n>t&&r<e.turns.length-1;){let t=e.turns[r];if(!t)break;n-=nm(t),am(e,t),r+=1}return r>0&&(e.turns=e.turns.slice(r)),n<=t?{droppedTurnCount:r,droppedRowCount:0}:{droppedTurnCount:r,droppedRowCount:om(e,n-t)}}function cm(e){let t=[],n=new Set;for(let r of e)r.id&&r.name&&!n.has(r.id)&&(n.add(r.id),t.push({id:r.id,label:r.name}));return t}function lm(e,t,n,r=!0){return t&&e.some(e=>e.id===t)?t:n&&e.some(e=>e.id===n)?n:r?e[0]?.id??null:null}function um(e){return!e.selectedSessionId||!e.isPanelVisible||e.hasPendingRequest?null:e.hasLoadedOnce?{id:e.selectedSessionId,direction:`forward`,after:e.nextOffset}:{id:e.selectedSessionId,direction:`tail`,after:0,endingAt:`tail`}}function dm(e,t=Fp){return!e.selectedSessionId||!e.hasLoadedOnce||e.hasDroppedEarliestRows||e.residentRowCount>=t?!1:e.firstOffset>0}function fm(e,t=Fp){return!dm(e,t)||e.hasPendingRequest||!e.selectedSessionId?null:{id:e.selectedSessionId,direction:`earlier`,after:0,endingAt:e.firstOffset}}function pm(e){let{pendingRequest:t,resident:n,reply:r}=e;return!t||t.id!==r.id?`ignore`:!n||n.sessionId!==r.id?`stale`:r.reset||r.next<r.start?`reset`:t.direction===`tail`?n.hasLoadedOnce?`stale`:`seed`:t.direction===`earlier`?n.firstOffset===t.endingAt?r.next===t.endingAt?`prepend`:`reset`:`stale`:n.nextOffset===t.after?r.start===t.after?`append`:`reset`:`stale`}var mm=1e4,hm=null,gm=null,_m=[],vm=null,ym=null,G=null,bm=null,xm=!1,Sm=null,Cm=()=>!1,wm=new Set;function K(e){for(let t of wm)t(e)}function Tm(){bm&&=(clearTimeout(bm.timeoutHandle),null)}function Em(){bm=null,Sm=`The trace did not load within ${Math.round(mm/1e3)} s.`,K({kind:`rebuild`})}function Dm(e){Tm(),xm=!1,Sm=null,vm=e,G=e?{sessionId:e,grouping:Zp(),firstOffset:0,nextOffset:0,hasDroppedEarliestRows:!1,filePath:``,hasLoadedOnce:!1}:null,K({kind:`selection-reset`})}function Om(e){let t=lm(_m,ym,vm,e);return ym&&t===ym&&(ym=null),t!==vm&&(Dm(t),!0)}function km(e){if(!hm)return;let t=e.endingAt===void 0?{type:`session-trace`,id:e.id,after:e.after}:{type:`session-trace`,id:e.id,endingAt:e.endingAt};hm(t)?bm={request:e,timeoutHandle:setTimeout(Em,mm)}:(Sm=b,K({kind:`header`}))}function Am(e=!1){if(!hm)return;let t=um({selectedSessionId:vm,isPanelVisible:e||Cm(),hasPendingRequest:!!bm,hasLoadedOnce:G?.hasLoadedOnce??!1,nextOffset:G?.nextOffset??0});t&&km(t)}function jm(){xm&&!bm&&(xm=!1,Am())}function Mm(){if(!G)return;let e=sm(G.grouping),t=e.droppedTurnCount>0||e.droppedRowCount>0,n=t&&!G.hasDroppedEarliestRows;t&&(G.hasDroppedEarliestRows=!0),K({kind:`trimmed`,trim:{droppedTurnCount:e.droppedTurnCount,droppedRowCount:e.droppedRowCount,hasJustDroppedEarliestRows:n}})}function Nm(e){G&&(K({kind:`records-appended`,appends:em(G.grouping,e)}),Mm())}function Pm(e){G&&(K({kind:`records-prepended`,prepend:tm(G.grouping,e)}),Mm())}function Fm(e){if(!e||typeof e!=`object`)return null;let t=e;return typeof t.id!=`string`||!Array.isArray(t.records)||typeof t.next!=`number`||typeof t.start!=`number`?null:{id:t.id,records:t.records,start:t.start,next:t.next,reset:t.reset===!0,path:typeof t.path==`string`?t.path:``}}function Im(){return{selectedSessionId:vm,hasPendingRequest:!!bm,hasLoadedOnce:G?.hasLoadedOnce??!1,hasDroppedEarliestRows:G?.hasDroppedEarliestRows??!1,firstOffset:G?.firstOffset??0,residentRowCount:G?rm(G.grouping):0}}function Lm(){return{sessionOptions:_m,selectedSessionId:vm,selectedTrace:G,pendingSessionId:bm?.request.id??null,traceFailureText:Sm}}function Rm(e){wm.add(e)}function zm(e){Cm=e}function Bm(){if(!hm)return;let e=fm(Im());e&&km(e)}function Vm(e){_m.some(t=>t.id===e)&&e!==vm&&(ym=null,Dm(e),Am(),K({kind:`rebuild`}))}function Hm(){let e=Om(!0);return Am(!0),e}function Um(e){hm=e}function Wm(e){gm=e}function Gm(e){ym=e,gm?.()}function Km(e){_m=cm(e);let t=Om(Cm());t&&Am(),K({kind:`sessions`,hasSelectionChanged:t})}function qm(e){let t=Fm(e);if(!t)return;let n=pm({pendingRequest:bm?.request??null,resident:G?{sessionId:G.sessionId,firstOffset:G.firstOffset,nextOffset:G.nextOffset,hasLoadedOnce:G.hasLoadedOnce}:null,reply:{id:t.id,start:t.start,next:t.next,reset:t.reset}});n===`ignore`?jm():(Tm(),Sm&&(Sm=null,K({kind:`header`})),n===`stale`?jm():n===`reset`?(Dm(t.id),G&&(G.filePath=t.path),Am(),K({kind:`rebuild`}),jm()):G&&(G.filePath=t.path,n===`prepend`?(G.firstOffset=t.start,Pm(t.records),jm()):(n===`seed`&&(G.hasLoadedOnce=!0,G.firstOffset=t.start),G.nextOffset=t.next,Nm(t.records),jm())))}function Jm(e){let t=e?.id;typeof t==`string`&&t===vm&&Cm()&&(bm?xm=!0:Am())}function Ym(e){let t=e?.id;if(typeof t!=`string`||bm?.request.id!==t)return!1;Tm(),xm=!1;let n=e?.message;return Sm=typeof n==`string`&&n?n:`The trace could not be read.`,K({kind:`rebuild`}),!0}function Xm(e){Tm(),xm=!1,Sm=e?null:b,e?(K({kind:`header`}),Am()):K({kind:`rebuild`})}var Zm=80,Qm=Object.freeze([{value:`7`,label:`Last 7 days`,days:7},{value:`30`,label:`Last 30 days`,days:30},{value:`90`,label:`Last 90 days`,days:90},{value:`all`,label:`All retained`,days:null}]);function $m(e){return e.replace(/\B(?=(\d{3})+(?!\d))/g,`,`)}function eh(e){return e.includes(`.`)?e.replace(/0+$/,``).replace(/\.$/,``):e}function th(e){if(typeof e!=`number`||!Number.isFinite(e))return`-`;let t=Math.round(e);return`${t<0?`-`:``}${$m(String(Math.abs(t)))}`}function nh(e){if(typeof e!=`number`||!Number.isFinite(e))return`-`;let t=Math.abs(e);if(t===0)return`$0.00`;let n=e<0?`-`:``;if(t<1e-4)return e<0?`above -$0.0001`:`<$0.0001`;if(t<.01)return`${n}$${t.toFixed(4)}`;let[r,i]=t.toFixed(2).split(`.`);return`${n}$${$m(r)}.${i}`}function rh(e){if(typeof e!=`number`||!Number.isFinite(e))return`-`;let t=e<0?`-`:``,n=Math.abs(e);if(n<1e3){let e=Math.round(n);return`${e===0?``:t}${e}`}return n<999950?`${t}${eh((n/1e3).toFixed(1))}k`:n<999995e3?`${t}${eh((n/1e6).toFixed(2))}M`:`${t}${eh((n/1e9).toFixed(2))}B`}function ih(e){return typeof e!=`number`||!Number.isFinite(e)?`ok`:e>=100?`crit`:e>=Zm?`warn`:`ok`}function ah(e){let t=ve(e?.max,null);return t===null||t<=0?null:t}function oh(e){let t=ah(e),n=ve(e?.pct,null);return t===null||n===null?null:n*100}function sh(e,t){let n=ah(t),r=ve(e?.projectedTokens,null);return n===null||r===null?null:r/n*100}var ch=90;function lh(e){let t=e?.budget?.rows;return Array.isArray(t)?t.filter(e=>e&&ve(e.budgetUsd,null)!==null):[]}function uh(e){let t=ve(e?.pct,null);return t===null?0:t}function dh(e,t){let n=e?.[t];if(!n||typeof n!=`object`)return null;let r=ve(n.pct,null),i=ve(n.resetsAtMs,null);return r===null&&i===null?null:{pct:r,resetsAtMs:i}}function fh(e){return e?.vendor===`codex`?`codex`:`claude`}function ph(e){return dh(e,`fiveHour`)?.pct??null}function mh(e,t=null){let n=ph(t);if(n!==null)return ih(n);let r=ih(oh(e?.tokenLimit));return r===`ok`?ih(sh(e?.activeBlock?.projection,e?.tokenLimit)):r}function hh(e,t=null){let n=[],r=mh(e,t);r!==`ok`&&n.push(`block:${r}`),e?.anomaly?.daily&&n.push(`anomaly:daily`),e?.anomaly?.burn&&n.push(`anomaly:burn`);for(let t of lh(e)){let e=uh(t);if(e<ch)continue;let r=typeof t?.scope==`string`&&t.scope?t.scope:`budget`;n.push(`budget:${r}:${e>=100?`over`:`near`}`)}return _e(n)}function gh(e,t=``){let n=e?.source;if(n===`fetched`){let e=ue(t,``);return e?`Prices fetched from the public model price table, ${e}.`:`Prices fetched from the public model price table.`}if(n===`cache`){let e=ue(t,``);return e?`Prices from the cached public model price table, ${e}.`:`Prices from the cached public model price table.`}return n===`snapshot`?`Prices from the price table bundled with this Glimmervoid build.`:n===`unavailable`?`Model prices could not be loaded, so every cost below counts as zero.`:`Pricing source not reported yet.`}function _h(e){if(typeof e==`number`&&Number.isFinite(e))return e;if(typeof e!=`string`)return null;let t=Date.parse(e);return Number.isFinite(t)?t:null}function vh(e){if(Array.isArray(e))return e.length;let t=Number(e);return Number.isFinite(t)?t:null}function yh(e){if(!e||typeof e!=`object`)return``;let t=[],n=vh(e.dirs);if(n!==null&&t.push(`${th(n)} transcript ${n===1?`directory`:`directories`}`),Number.isFinite(e.files)&&t.push(`${th(e.files)} files`),Number.isFinite(e.entries)&&t.push(`${th(e.entries)} entries`),Number.isFinite(e.lastScanMs)&&t.push(`last pass ${th(e.lastScanMs)}ms`),t.length===0)return``;let r=`Scanned ${t.join(`, `)}.`;return e.partial===!0?`${r} Some files were skipped this pass and will be re-read on the next one.`:r}function bh(e){return ue(e?.error,``)}function xh(e,t){if(!e||typeof e!=`object`)return!1;let n=e.requestId;return n==null||n===t}function Sh(e){let t=ve(e?.officialCostUSD,null);if(t!==null&&t>0)return{costUSD:t,source:`official`};let n=ve(e?.costUSD,null);return n!==null&&n>0?{costUSD:n,source:`estimated`}:{costUSD:null,source:null}}function Ch(e){let t=Number(e?.tokens);if(!Number.isFinite(t)||t<=0)return``;let{costUSD:n}=Sh(e);return n===null?rh(t):`${rh(t)} ${nh(n)}`}function wh(e){let{source:t}=Sh(e);return t===`official`?`Tokens counted from the transcript; cost reported by Claude Code for this conversation`:`Tokens and estimated API list-price cost for this conversation`}function Th({hasPlan:e,pendingPromptKind:t,hasOpenReview:n,hasApprovedReview:r=!1}){return e&&(n||t===`plan`&&!r)?`plan`:`terminal`}function Eh({hasPlan:e,isBorrowed:t,face:n}){return!e||n===`plan`?`hidden`:t?`face`:`navigate`}function Dh(e){return e instanceof Error?e.message:String(e)}function Oh(e,t,n=!1){let r=w(`label`,`dialog-checkbox-label`),i=w(`input`);return i.type=`checkbox`,i.className=`dialog-checkbox`,i.value=t,i.checked=n,r.append(i,w(`span`,null,e)),r}function kh(e){return e.split(/[\\/]/).filter(Boolean).at(-1)??e}async function Ah(e){let[t,n]=await Promise.all([ut(`get-workspace-repos`,{id:e}),ut(`scan-repo-roots`,{}).catch(()=>null)]);if(t.type!==`workspace-repos`)throw Error(`Unexpected reply`);if(!t.ok)throw Error(t.error||`Could not read the workspace`);let r=t.repos.map(e=>({name:kh(e),path:e,isMember:!0})),i=new Set(t.repos),a=n?.type===`repo-roots-scanned`?n.directories:[];for(let e of a.flatMap(e=>e.projects))i.has(e.path)||(i.add(e.path),r.push({name:e.name,path:e.path,isMember:!1}));return r}function jh(e){let{overlay:t,dialog:n,close:r,actions:i,btnCancel:a}=Mt({title:`Workspace repositories`}),o=w(`p`,`dialog-message`,`Saving restarts the session and resumes its conversation. A removed repository keeps its workspace branch, so committed work survives.`),s=w(`fieldset`,`dialog-workspace-list`);s.setAttribute(`aria-label`,`Workspace repositories`),s.append(w(`div`,`dialog-hint`,`Loading repositories...`));let c=w(`div`,`dialog-hint`);c.setAttribute(`role`,`status`);let l=w(`div`,`dialog-error`),u=w(`button`,`btn-dialog btn-dialog-confirm`,`Save`);u.type=`button`,u.disabled=!0,i.append(u),n.append(o,s,c,l,i),a.addEventListener(`click`,r),requestAnimationFrame(()=>a.focus()),Ah(e).then(e=>{if(t.isConnected){s.textContent=``;for(let t of e)s.append(Oh(t.name,t.path,t.isMember));u.disabled=!1}}).catch(e=>{t.isConnected&&(s.textContent=``,l.textContent=`Could not load repositories: ${Dh(e)}`)}),u.addEventListener(`click`,()=>{let n=[...s.querySelectorAll(`input:checked`)].map(e=>e.value);n.length<2?l.textContent=`Select at least two repositories.`:(l.textContent=``,u.disabled=!0,c.textContent=`Saving`,ut(`set-workspace-repos`,{id:e,repos:n}).then(e=>{if(!t.isConnected)return;if(e.type===`set-workspace-repos-result`&&e.ok){r();return}let n=e.type===`set-workspace-repos-result`?e.error:null;l.textContent=n||`Could not update the workspace.`}).catch(e=>{t.isConnected&&(l.textContent=`Could not update the workspace: ${Dh(e)}`)}).finally(()=>{c.textContent=``,u.disabled=!1}))})}function Mh(e,t,n){return{body:String(n||`Session needs attention`),tag:`glimmervoid-${e||``}-${t||``}`,renotify:!0}}var Nh=4e3;function Ph(e,t){return`glimmervoid-notify-claim-${e||``}-${t||``}`}function Fh(e,t,n,r=Nh){try{let i=e.getItem(t);if(i){let e=Number(i);if(Number.isFinite(e)&&n-e<r)return!1}return e.setItem(t,String(n)),!0}catch{return!0}}function Ih(){return typeof Notification>`u`?null:Notification}function Lh(){return Ih()!==null}function Rh(){let e=Ih();return e?e.permission:`unavailable`}async function zh(){let e=Ih();if(!e)return`denied`;if(e.permission!=="default")return e.permission;try{return await e.requestPermission()}catch{return e.permission}}function Bh(){return!Lh()&&!window.isSecureContext?`Browsers allow desktop notifications only over HTTPS or on localhost, and this page is plain HTTP on another address. Open the dashboard on localhost, or use Telegram.`:Lh()?Rh()===`denied`&&Rr()?`Blocked by the browser. Allow notifications for this site in its site settings.`:null:`This browser does not support desktop notifications.`}function Vh(){return Rr()&&Rh()==="default"}function Hh(e=()=>{}){let t=w(`div`,`notification-permission`),n=()=>{let r=Bh();if(t.replaceChildren(),t.hidden=!r&&!Vh(),r){t.append(w(`p`,`notification-permission-hint text-xs text-text-muted`,r));return}let i=w(`button`,`btn-dialog btn-dialog-cancel`,`Enable desktop notifications`);i.type=`button`,i.addEventListener(`click`,()=>{i.disabled=!0,zh().then(()=>{n(),e()})}),t.append(i)};return n(),{element:t,refresh:n}}var Uh=`Notifications`,Wh=`Desktop notifications are blocked by the browser, so alerts show only in this tab. Allow notifications for this site to get them again.`,Gh=new Map,Kh=!1;function qh(){Kh||(Kh=!0,R({source:Uh,message:Wh,hidesInStreamerMode:!1}))}function Jh(e,t){let n=Gh.get(e)??new Set;n.add(t),Gh.set(e,n),t.addEventListener(`close`,()=>n.delete(t))}function Yh(e){let t=Gh.get(e);if(t){Gh.delete(e);for(let e of t)e.close()}}function Xh(e){return!Lh()||!Rr()||document.documentElement.hasAttribute(`data-streamer`)?!1:e||!document.hasFocus()}function Zh(e=!1){return Xh(e)&&Rh()===`granted`}function Qh({session:e,category:t,message:n,kind:r,ignoreFocus:i=!1}={}){let a=Ih();if(!a||!Xh(!!i)||(a.permission===`denied`&&qh(),a.permission!==`granted`)||(Es(Uh),!Fh(window.localStorage,Ph(e,t),Date.now())))return;let o=typeof e==`string`?e:``,s=O.get(o),c=s?gt(s):``;try{let i=new a(c||`Glimmervoid`,Mh(e,t,n));i.onclick=()=>{window.focus(),r===`plan`&&o&&(window.location.hash=Bu(o)),i.close()},s&&Jh(o,i)}catch{}}var $h=`CommitMono`,eg=[400,700].map(e=>`${e} 14px ${$h}`),tg=`monospace`;function ng(e){return e.trim().replace(/^['"]|['"]$/g,``)}function rg(e,t){let n=e.split(`,`).map(e=>e.trim()).filter(e=>e.length>0),r=t?n:n.filter(e=>ng(e)!==$h);return r.length>0?r.join(`, `):tg}function ig(e,t,n){return Promise.all(t.map(t=>e.load(t))).then(n,()=>void 0)}function ag(e,t){for(let n of e)n.term&&(n.term.options.fontFamily=t,n._syncGrid?.())}function og(){return document.fonts?eg.every(e=>document.fonts.check(e)):!1}function sg(){return rg(getComputedStyle(document.documentElement).getPropertyValue(`--font-mono`),og())}function cg(e){document.fonts&&ig(document.fonts,eg,e)}var lg=3e4,ug=24,dg=null,fg=[`Android`,`iPhone`,`iPad`,`Windows`,`Mac OS X`,`Linux`],pg=[/Firefox\/\d+/,/Edg\/\d+/,/Chrome\/\d+/,/Version\/\d+/];function mg(){let e=navigator.userAgent,t=fg.find(t=>e.includes(t))??`unknown platform`;return`${pg.map(t=>t.exec(e)?.[0]).find(e=>e!==void 0)?.replace(`Version`,`Safari`)??`unknown browser`} on ${t}`}function hg(){let e=Reflect.get(navigator,`connection`);if(typeof e!=`object`||!e)return[];let t=Reflect.get(e,`type`),n=Reflect.get(e,`rtt`);return[typeof t==`string`?t:``,typeof n==`number`?`${n}ms`:``].filter(e=>e!==``)}function gg(){return[navigator.onLine?`online`:`offline`,...hg()].join(` `)}function _g(e,t){let n=[],r=0;for(let i of e){let e=i.length+1;if(r+e>t)break;n.push(i),r+=e}return{takenMarks:n,usedChars:r}}function vg(e,t){let n=e.join(` `);if(n.length<=t)return n;let r=t-ug,i=_g(e,r/2),a=_g(e.slice(i.takenMarks.length).reverse(),r-i.usedChars),o=e.length-i.takenMarks.length-a.takenMarks.length;return[...i.takenMarks,`(${o} marks dropped)`,...a.takenMarks.reverse()].join(` `)}function yg(e){return e.marks.some(e=>e.startsWith(`terminal-bytes`))}function bg(e){let t=yg(e)&&!e.isCapped?`terminal live`:`terminal not live after ${lg/1e3} s`,n=`hidden ${Math.round(e.hiddenForMs/1e3)} s, ${t}, ${mg()}, ${e.networkAtWake}: `,r=n+vg(e.marks,ae-n.length);return E({type:`client-log`,scope:`wake`,text:r.slice(0,ae)})}function xg(){let e=dg;e&&(e.isCapped||yg(e))&&bg(e)&&(dg=null,clearTimeout(e.capTimer))}function Sg(){dg&&(dg.isCapped=!0,xg())}function Cg(e,t){e.marks.push(`${t}+${Math.round(performance.now()-e.startedAtMs)}`)}function wg(e){dg&&(e===`terminal-bytes`&&yg(dg)||(Cg(dg,e),(e===`terminal-bytes`||e===`control-opened`)&&xg()))}function Tg(e){dg&&Cg(dg,e===`link`?[`link`,...hg()].join(`-`):e)}function Eg(e,t){dg||={startedAtMs:performance.now(),hiddenForMs:t,networkAtWake:gg(),marks:[],isCapped:!1,capTimer:setTimeout(Sg,lg)},wg(e)}var Dg=6,Og=262144,kg=16384,Ag=()=>{};function jg(e,t){if(t.length<=kg)e.push(t);else for(let n=0;n<t.length;n+=kg)e.push(t.slice(n,n+kg))}function Mg({budget:e=Dg,maxChunkBytes:t=Og,requestFrame:n,cancelFrame:r}={}){let i=n||(e=>requestAnimationFrame(e)),a=r||(e=>cancelAnimationFrame(e)),o=new Map,s=[],c=0,l=null;function u(){l===null&&(l=i(h))}function d(e){return e.readIdx<e.pending.length}function f(e){d(e)||(e.pending.length=0,e.readIdx=0,e.dirty=!1)}function p(e){return!!(e?.live&&e.dirty&&!e.inFlight&&d(e))}function m(){for(let e of o.values())if(p(e))return!0;return!1}function h(){l=null;let n=s.length,r=0;for(let i=0;i<n&&r<e;i++){let e=s[(c+i)%n],a=o.get(e);if(!p(a))continue;let l=[],m=0;for(;a.readIdx<a.pending.length;){let e=a.pending[a.readIdx];if(typeof e!=`string`){if(m>0)break;a.readIdx++,e.run();continue}let n=t-m;if(m+e.length<=t)jg(l,e),m+=e.length,a.readIdx++;else{m===0&&(jg(l,e.slice(0,n)),m+=n,a.pending[a.readIdx]=e.slice(n));break}}let h=l.pop();if(h===void 0)f(a),r++;else{f(a),d(a)&&a.readIdx>=64&&(a.pending.splice(0,a.readIdx),a.readIdx=0),a.inFlight=!0;for(let e of l)a.write(e,Ag);a.write(h,()=>{a.live&&(a.inFlight=!1,d(a)&&(a.dirty=!0,u()))}),r++}}n>0&&(c=(c+1)%n),m()&&u()}return{register(e,t){let n=o.get(e);n?(n.write=t,n.live=!0):(o.set(e,{write:t,pending:[],readIdx:0,inFlight:!1,dirty:!1,live:!0}),s.push(e))},unregister(e){let t=o.get(e);if(!t)return;t.live=!1,o.delete(e);let n=s.indexOf(e);n!==-1&&s.splice(n,1),c>=s.length&&(c=0)},enqueue(e,t){let n=o.get(e);n&&t&&(n.pending.push(t),n.dirty=!0,u())},enqueueAction(e,t){let n=o.get(e);n&&(n.pending.push({run:t}),n.dirty=!0,u())},has(e){return o.has(e)},size(){return o.size},running(){return l!==null},stop(){l!==null&&(a(l),l=null)}}}var Ng=Mg(),Pg={"--state-monitoring":`#22d3ee`,"--state-monitoring-bg":`rgba(34, 211, 238, 0.06)`,"--state-running":`#22c55e`,"--state-running-bg":`rgba(34, 197, 94, 0.06)`,"--state-waiting":`#f59e0b`,"--state-waiting-bg":`rgba(245, 158, 11, 0.08)`,"--state-failed":`#ef4444`,"--state-failed-bg":`rgba(239, 68, 68, 0.06)`,"--state-initializing":`#6b7280`,"--state-initializing-bg":`rgba(107, 114, 128, 0.06)`,"--state-idle":`#eab308`,"--state-idle-bg":`rgba(234, 179, 8, 0.06)`},Fg={background:`--bg-card`,cursor:`--accent`,cursorAccent:`--bg-card`,black:`--border`,brightBlack:`--text-muted`,red:`#ef4444`,brightRed:`#f87171`,green:`#22c55e`,brightGreen:`#4ade80`,yellow:`#eab308`,brightYellow:`#facc15`,cyan:`#06b6d4`,brightCyan:`#22d3ee`},Ig={golgari:{label:`Golgari (Green/Black)`,colors:{"--bg":`#060b08`,"--bg-card":`#0a120e`,"--bg-header":`#081009`,"--bg-surface":`#0e1a12`,"--border":`#1a2e1f`,"--border-dim":`#122016`,"--border-hover":`#2a4a32`,"--text":`#b8ccbe`,"--text-dim":`#6a9070`,"--text-head":`#dceede`,"--text-muted":`#7a9a80`,"--accent":`#2dd4a0`,"--accent-dim":`#1a9a6e`,...Pg,"--state-monitoring":`#22d3ee`,"--state-monitoring-bg":`rgba(34, 211, 238, 0.08)`,"--state-done":`#94a3b8`,"--state-done-bg":`rgba(45, 212, 160, 0.06)`,"--state-starting":`#a78bfa`,"--state-starting-bg":`rgba(167, 139, 250, 0.06)`,"--state-complete":`#34d399`,"--state-complete-bg":`rgba(52, 211, 153, 0.06)`},terminal:{...Fg,foreground:`#c8dece`,blue:`--accent`,brightBlue:`#5ee8bc`,magenta:`#a855f7`,brightMagenta:`#c084fc`,white:`#c8dece`,brightWhite:`#e8f5ea`}},midnight:{label:`Midnight (Blue/Purple)`,colors:{"--bg":`#080816`,"--bg-card":`#0e0e20`,"--bg-header":`#0b0b1a`,"--bg-surface":`#131328`,"--border":`#1c1c38`,"--border-dim":`#141430`,"--border-hover":`#2a2a50`,"--text":`#b8b8d4`,"--text-dim":`#8585b3`,"--text-head":`#dcdcf0`,"--text-muted":`#7c7ca9`,"--accent":`#4f6ef7`,"--accent-dim":`#3a54c0`,...Pg,"--state-monitoring":`#22d3ee`,"--state-monitoring-bg":`rgba(34, 211, 238, 0.08)`,"--state-done":`#94a3b8`,"--state-done-bg":`rgba(59, 130, 246, 0.06)`,"--state-starting":`#a855f7`,"--state-starting-bg":`rgba(168, 85, 247, 0.06)`,"--state-complete":`#60a5fa`,"--state-complete-bg":`rgba(96, 165, 250, 0.06)`},terminal:{...Fg,foreground:`#c8c8e0`,blue:`--accent`,brightBlue:`#60a5fa`,magenta:`#a855f7`,brightMagenta:`#c084fc`,white:`#c8c8e0`,brightWhite:`#e8e8ff`}},phyrexian:{label:`Phyrexian (Iridescent)`,colors:{"--bg":`#0a0810`,"--bg-card":`#100e18`,"--bg-header":`#0c0a14`,"--bg-surface":`#16122a`,"--border":`#2a2440`,"--border-dim":`#1e1a32`,"--border-hover":`#3e3660`,"--text":`#c8c0e0`,"--text-dim":`#8d82b9`,"--text-head":`#e8e0ff`,"--text-muted":`#8579b1`,"--accent":`#c084fc`,"--accent-dim":`#9656d6`,...Pg,"--state-monitoring":`#60a5fa`,"--state-monitoring-bg":`rgba(96, 165, 250, 0.08)`,"--state-done":`#67e8f9`,"--state-done-bg":`rgba(103, 232, 249, 0.06)`,"--state-starting":`#f472b6`,"--state-starting-bg":`rgba(244, 114, 182, 0.06)`,"--state-complete":`#34d399`,"--state-complete-bg":`rgba(52, 211, 153, 0.06)`},terminal:{...Fg,foreground:`#c8c0e0`,blue:`#67e8f9`,brightBlue:`#a5f3fc`,magenta:`--accent`,brightMagenta:`#d8b4fe`,white:`#c8c0e0`,brightWhite:`#e8e0ff`}},compleated:{label:`Compleated (Light)`,colors:{"--bg":`#ece8e0`,"--bg-card":`#f7f4ee`,"--bg-header":`#f0ece4`,"--bg-surface":`#e4e0d6`,"--border":`#b8b0a0`,"--border-dim":`#ccc6b8`,"--border-hover":`#908878`,"--text":`#2a2622`,"--text-dim":`#5a5448`,"--text-head":`#0e0c0a`,"--text-muted":`#676157`,"--accent":`#0e0c0a`,"--accent-dim":`#2a2622`,"--state-running":`#16803c`,"--state-running-bg":`rgba(22, 128, 60, 0.08)`,"--state-waiting":`#b45309`,"--state-waiting-bg":`rgba(180, 83, 9, 0.08)`,"--state-failed":`#dc2626`,"--state-failed-bg":`rgba(220, 38, 38, 0.06)`,"--state-monitoring":`#0e7490`,"--state-monitoring-bg":`rgba(14, 116, 144, 0.08)`,"--state-done":`#64748b`,"--state-done-bg":`rgba(26, 24, 22, 0.06)`,"--state-initializing":`#6b7280`,"--state-initializing-bg":`rgba(107, 114, 128, 0.06)`,"--state-idle":`#a16207`,"--state-idle-bg":`rgba(161, 98, 7, 0.06)`,"--state-starting":`#7c3aed`,"--state-starting-bg":`rgba(124, 58, 237, 0.06)`,"--state-complete":`#059669`,"--state-complete-bg":`rgba(5, 150, 105, 0.06)`},terminal:{background:`#faf8f4`,foreground:`#1a1816`,cursor:`#1a1816`,cursorAccent:`#faf8f4`,black:`#1a1816`,brightBlack:`#5a5448`,red:`#b91c1c`,brightRed:`#dc2626`,green:`#15803d`,brightGreen:`#16a34a`,yellow:`#92400e`,brightYellow:`#a16207`,blue:`#1d4ed8`,brightBlue:`#2563eb`,magenta:`#6d28d9`,brightMagenta:`#7c3aed`,cyan:`#0e7490`,brightCyan:`#0891b2`,white:`#5a5448`,brightWhite:`#3a3630`}},unicorn:{label:`Rainbow Unicorns (Dark)`,colors:{"--bg":`#191022`,"--bg-card":`#201730`,"--bg-header":`#1c1329`,"--bg-surface":`#281c3c`,"--border":`#3a2c52`,"--border-dim":`#2a2040`,"--border-hover":`#55407a`,"--text":`#d4c8e6`,"--text-dim":`#9a88b8`,"--text-head":`#ede4fa`,"--text-muted":`#a897c4`,"--accent":`#e8a3c4`,"--accent-dim":`#c4739e`,"--state-running":`#42d780`,"--state-running-bg":`rgba(66, 215, 128, 0.10)`,"--state-waiting":`#f79f3b`,"--state-waiting-bg":`rgba(247, 159, 59, 0.10)`,"--state-failed":`#f05442`,"--state-failed-bg":`rgba(240, 84, 66, 0.13)`,"--state-monitoring":`#2dd4bf`,"--state-monitoring-bg":`rgba(45, 212, 191, 0.08)`,"--state-done":`#f04ca4`,"--state-done-bg":`rgba(240, 76, 164, 0.13)`,"--state-initializing":`#8f87a6`,"--state-initializing-bg":`rgba(143, 135, 166, 0.08)`,"--state-idle":`#bcb02f`,"--state-idle-bg":`rgba(188, 176, 47, 0.08)`,"--state-starting":`#a17ef1`,"--state-starting-bg":`rgba(161, 126, 241, 0.08)`,"--state-complete":`#34baf4`,"--state-complete-bg":`rgba(52, 186, 244, 0.14)`},terminal:{background:`#201730`,foreground:`#d4c8e6`,cursor:`--accent`,cursorAccent:`#201730`,black:`#8c7dab`,brightBlack:`#9c8fb5`,red:`#e8887e`,brightRed:`#f4a89f`,green:`#86e0ab`,brightGreen:`#a3edc0`,yellow:`#f0c674`,brightYellow:`#f5d896`,blue:`#9cb3f0`,brightBlue:`#b5c8f5`,magenta:`#dd8ecf`,brightMagenta:`#e6a8dc`,cyan:`#7fd4d0`,brightCyan:`#a0e6e2`,white:`#d4c8e6`,brightWhite:`#f4ecfc`}},"posthog-light":{label:`PostHog (Light)`,colors:{"--bg":`#eeefe9`,"--bg-card":`#fdfdf8`,"--bg-header":`#eeefe9`,"--bg-surface":`#e5e7e0`,"--border":`#bfc1b7`,"--border-dim":`#d2d3cc`,"--border-hover":`#9ea096`,"--text":`#23251d`,"--text-dim":`#65675e`,"--text-head":`#111111`,"--text-muted":`#73756b`,"--accent":`#c03300`,"--accent-dim":`#8e2600`,"--state-running":`#237a36`,"--state-running-bg":`rgba(77, 117, 51, 0.08)`,"--state-waiting":`#b17816`,"--state-waiting-bg":`rgba(177, 120, 22, 0.10)`,"--state-failed":`#8c0d3b`,"--state-failed-bg":`rgba(140, 13, 59, 0.07)`,"--state-monitoring":`#0e7490`,"--state-monitoring-bg":`rgba(14, 116, 144, 0.08)`,"--state-done":`#3e6b9e`,"--state-done-bg":`rgba(62, 107, 158, 0.08)`,"--state-initializing":`#73756b`,"--state-initializing-bg":`rgba(115, 117, 107, 0.07)`,"--state-idle":`#835c19`,"--state-idle-bg":`rgba(131, 92, 25, 0.07)`,"--state-starting":`#a621c8`,"--state-starting-bg":`rgba(166, 33, 200, 0.07)`,"--state-complete":`#34796f`,"--state-complete-bg":`rgba(52, 121, 111, 0.08)`},terminal:{background:`--bg-card`,foreground:`#23251d`,cursor:`--accent`,cursorAccent:`--bg-card`,black:`#23251d`,brightBlack:`#65675e`,red:`#c03300`,brightRed:`#df6133`,green:`#4d7533`,brightGreen:`#6aa84f`,yellow:`#835c19`,brightYellow:`#b17816`,blue:`#3e6b9e`,brightBlue:`#2f80fa`,magenta:`#74108d`,brightMagenta:`#a621c8`,cyan:`#34796f`,brightCyan:`#30abc6`,white:`#4d4f46`,brightWhite:`#23251d`}},"posthog-dark":{label:`PostHog (Dark)`,colors:{"--bg":`#1e1f23`,"--bg-card":`#25262b`,"--bg-header":`#232429`,"--bg-surface":`#2d2e37`,"--border":`#3e424f`,"--border-dim":`#32343f`,"--border-hover":`#626674`,"--text":`#edeef4`,"--text-dim":`#aeb3c2`,"--text-head":`#fafafa`,"--text-muted":`#9ea096`,"--accent":`#f87a4c`,"--accent-dim":`#f54e00`,"--state-running":`#36c46f`,"--state-running-bg":`rgba(54, 196, 111, 0.08)`,"--state-waiting":`#f7a501`,"--state-waiting-bg":`rgba(247, 165, 1, 0.09)`,"--state-failed":`#f35454`,"--state-failed-bg":`rgba(243, 84, 84, 0.09)`,"--state-monitoring":`#22d3ee`,"--state-monitoring-bg":`rgba(34, 211, 238, 0.08)`,"--state-done":`#589df8`,"--state-done-bg":`rgba(88, 157, 248, 0.08)`,"--state-initializing":`#8f8f8c`,"--state-initializing-bg":`rgba(143, 143, 140, 0.07)`,"--state-idle":`#ffce5c`,"--state-idle-bg":`rgba(255, 206, 92, 0.07)`,"--state-starting":`#8567ff`,"--state-starting-bg":`rgba(133, 103, 255, 0.09)`,"--state-complete":`#29dbbb`,"--state-complete-bg":`rgba(41, 219, 187, 0.08)`},terminal:{background:`--bg-card`,foreground:`#edeef4`,cursor:`--accent`,cursorAccent:`--bg-card`,black:`--border`,brightBlack:`--text-muted`,red:`#f35454`,brightRed:`#f87a4c`,green:`#36c46f`,brightGreen:`#96e5b6`,yellow:`#f7a501`,brightYellow:`#ffce5c`,blue:`#2f80fa`,brightBlue:`#9fc4ff`,magenta:`#8567ff`,brightMagenta:`#e2d6ff`,cyan:`#30abc6`,brightCyan:`#29dbbb`,white:`#aeb3c2`,brightWhite:`#fafafa`}}},Lg=`phyrexian`,Rg=null,zg=null;function Bg(e){let t=Ig[e];if(!t)return;let n=zg;zg=e;let r=document.documentElement;r.dataset.theme=e;for(let[e,n]of Object.entries(t.colors))r.style.setProperty(e,n);e===`unicorn`&&n!==null&&n!==`unicorn`&&Rg?.()}function Vg(e){Rg=e}function Hg(e){document.documentElement.toggleAttribute(`data-show-usage`,e)}function Ug(e){document.documentElement.toggleAttribute(`data-arrow-pad`,e)}function Wg(){let e=Ig[zg||Lg];if(!e)return{};let t=getComputedStyle(document.documentElement),n={};for(let[r,i]of Object.entries(e.terminal))n[r]=i.startsWith(`--`)?t.getPropertyValue(i).trim():i;return n}function Gg(){return Object.entries(Ig).map(([e,t])=>({id:e,label:t.label}))}var Kg=e().int().min(1).max(500),qg=e().int().min(1).max(200);r(`type`,[a({type:i(`input`),data:t()}),a({type:i(`claim`),cols:Kg,rows:qg}),a({type:i(`unview`)}),a({type:i(`pause-output`)}),a({type:i(`resume-output`)})]);var Jg=a({type:i(`pty-size`),cols:Kg,rows:qg,seq:e().int().nonnegative()}),Yg=a({type:i(`output-beat`)}),Xg=r(`type`,[Jg,Yg]),Zg=`history`,Qg=`output`,$g=`paused`;n([`screen`,`deep`]);function e_(e){try{return JSON.parse(e)}catch{return null}}function t_(e){let t=Xg.safeParse(e_(e));return t.success?t.data:null}var n_=new Set([1,5,25,100]);function r_(e){return e.isOutputPaused?`${e.history} paused`:e.history}function i_(e,t){return!e||!t?!1:e.cols===t.cols&&e.rows===t.rows}function a_(e){return!e||!Number.isInteger(e.cols)||!Number.isInteger(e.rows)?!1:e.cols>0&&e.rows>0}function o_(e){return{cols:Math.min(Math.max(e.cols,1),500),rows:Math.min(Math.max(e.rows,1),200)}}function s_({authoritative:e,isActiveViewer:t,lastClaim:n}){return!(t&&i_(e,n))}function c_({isDocumentVisible:e,isDocumentFocused:t,hasFocusInsideCard:n,hasWindowBlurredSinceFocus:r,isPhoneLayout:i}){return e?i||t?!0:n&&!r:!1}function l_({isBorrowedCard:e,isTerminalFaceShown:t}){return!e||!t}function u_({viewportTopLine:e,scrollbackLineCount:t,isDeepHistoryLoadedOrPending:n}){return e===0&&t>0&&t<5e3&&!n}function d_(e,t,n){let r=new URLSearchParams;t&&r.set(Zg,`deep`),n&&r.set(Qg,$g);let i=`/terminals/${encodeURIComponent(e)}`,a=r.toString();return a?`${i}?${a}`:i}function f_({authoritative:e,isActiveViewer:t,isDocumentEngaged:n,isDataWsOpen:r,lastClaim:i}){return!t||!n||!r?`none`:s_({authoritative:e,isActiveViewer:t,lastClaim:i})?`rebid`:`resync`}function p_({isActiveViewer:e,lastClaim:t,owedClaim:n}){return e?n??t:null}function m_({authoritative:e,applied:t,proposal:n,isActiveViewer:r,isDataWsOpen:i,lastClaim:a}){let o=!!e&&!i_(e,t),s=a_(n)?o_(n):null,c=r&&!!s&&!i_(s,a);return{resizeTo:o?e:null,owedClaim:c?s:null,keepsPendingSettle:r&&!s,sendUnview:!r&&i&&!!a,isFollowing:s_({authoritative:e,isActiveViewer:r,lastClaim:a})}}function h_(e){return e instanceof ArrayBuffer||ArrayBuffer.isView(e)?new TextDecoder().decode(e):null}function g_(e){let t=h_(e);return t===null?null:t_(t)}function __(e,t){if(typeof e==`string`)return{kind:`bytes`,data:e};let n=g_(e);return n?n.type===`output-beat`?{kind:`beat`}:t.hasSeenSize?n.seq<=t.lastSeq?{kind:`stale`}:{kind:`size`,cols:n.cols,rows:n.rows,seq:n.seq}:{kind:`attach-size`,cols:n.cols,rows:n.rows,seq:n.seq}:{kind:`ignored`}}var v_=``,y_=`\x1B`,b_=`\r`,x_=new Map([[`deleteContentBackward`,v_],[`deleteByComposition`,v_],[`deleteCompositionText`,v_],[`deleteWordBackward`,y_],[`deleteSoftLineBackward`,y_],[`deleteHardLineBackward`,y_]]);function S_(e){return x_.get(e)??``}var C_=new Set([`insertFromPaste`,`insertFromPasteAsQuotation`,`insertFromDrop`,`insertFromYank`,`historyUndo`,`historyRedo`]);function w_(e){return typeof e!=`string`||e===``||!C_.has(e)}function T_(e){return e?e.keyCode===229||e.key===`Process`:!1}function E_(e,t){let n=Array.from(e??``),r=Array.from(t??``),i=Math.min(n.length,r.length),a=0;for(;a<i&&n[a]===r[a];)a++;return v_.repeat(n.length-a)+r.slice(a).join(``).replace(/\r\n|\n|\r/g,b_)}var D_=/https?:\/\/[^\s<>"']+/g,O_=new Set([`.`,`,`,`;`,`:`,`!`,`?`,`'`,`"`]),k_={")":`(`,"]":`[`,"}":`{`};function A_(e,t){let n=0;for(let r of e)r===t&&n++;return n}function j_(e){for(;;){let t=e[e.length-1];if(t===void 0)return e;if(O_.has(t)){e=e.slice(0,-1);continue}let n=k_[t];if(n&&A_(e,n)<A_(e,t))e=e.slice(0,-1);else return e}}function M_(e){let t=[];for(let n of e.matchAll(D_)){let e=j_(n[0]);e.length<=8||t.push({start:n.index,end:n.index+e.length,url:e})}return t}var N_=50;function P_(){return{activate(e,t){yo(t)},allowNonHttpProtocols:!1}}function F_(e,t){let n=t-1;for(;n>0&&e.getLine(n)?.isWrapped&&t-1-n<N_;)n--;let r=t-1;for(;e.getLine(r+1)?.isWrapped&&r-(t-1)<N_;)r++;let i=``,a=[];for(let t=n;t<=r;t++){let n=e.getLine(t);if(!n)break;for(let e=0;e<n.length;e++){let r=n.getCell(e);if(!r)break;if(r.getWidth()===0)continue;let o=r.getChars()||` `;for(let n=0;n<o.length;n++)i+=o[n],a.push({x:e+1,y:t+1})}}return{text:i,cellAt:a}}function I_(e){return e.registerLinkProvider({provideLinks(t,n){let r=e.buffer?.active;if(!r)return n(void 0);let{text:i,cellAt:a}=F_(r,t),o=[];for(let{start:e,end:t,url:n}of M_(i)){let r=a[e],i=a[t-1];r&&i&&o.push({range:{start:r,end:i},text:n,activate(e,t){yo(t)}})}n(o.length?o:void 0)}})}var L_=`(?:password|passwd|pwd|token|api[_-]?key|secret|credential|auth[_-]?token|access[_-]?key|secret[_-]?key|private[_-]?key|client[_-]?secret|connection[_-]?string)`,R_=`(?:"[^"\\r\\n]*"|'[^'\\r\\n]*'|[^\\s\\r\\n]+)`,q=`[^\\S\\r\\n]`,z_=`${L_}${q}*(?:=>|[:=])${q}*`,B_=`[?&][A-Za-z0-9_.-]*`,V_=`[^\\r\\n;&|]{0,200}?`,H_=`(?:mysql|mysqldump|mysqladmin|mysqlshow|mariadb|mariadb-dump)`,U_=RegExp(`(${z_})${R_}`,`gi`),W_=RegExp(`(\\bBearer${q}+)[A-Za-z0-9._~+/=-]{8,}`,`gi`),G_=[/\bAKIA[0-9A-Z]{16}\b/g,/\bgh[pousr]_[A-Za-z0-9]{16,}\b/g,/\bgithub_pat_[A-Za-z0-9_]{20,}\b/g,/\bsk-ant-[A-Za-z0-9_-]{20,}/g,/\bsk-[A-Za-z0-9_-]{20,}/g,/\bph[cx]_[A-Za-z0-9]{20,}\b/g,/\bxox[abprs]-[A-Za-z0-9-]{10,}\b/g,/\beyJ[A-Za-z0-9_=-]{6,}\.[A-Za-z0-9_=-]{6,}\.[A-Za-z0-9_=-]{4,}/g,/-----BEGIN(?:[A-Z0-9 ]+)? PRIVATE KEY-----/g],K_=[RegExp(`((?:^|\\s)--?${L_}${q}+)${R_}`,`gi`),RegExp(`((?:^|\\s)-(?:pwd|pw)(?![a-z])${q}*=?${q}*)${R_}`,`g`),RegExp(`(-AsPlainText${q}+)${R_}`,`gi`),RegExp(`((?:^|\\s)setx${q}+[^\\s\\r\\n]*${L_}[^\\s\\r\\n]*${q}+)${R_}`,`gi`)],q_=[RegExp(`(\\bauthorization${q}*:${q}*Basic${q}+)[A-Za-z0-9+/=_-]{8,}`,`gi`),RegExp(`(\\bdocker${q}+login\\b${V_}${q}-p(?:${q}+|=))${R_}`,`gi`),RegExp(`(\\bcurl\\b${V_}${q}(?:--user|-u)(?:${q}+|=)[^\\s:\\r\\n]+:)${R_}`,`gi`),RegExp(`(\\b${H_}\\b${V_}${q}-p)${R_}`,`g`),/\b([a-z][a-z0-9+.-]*:\/\/[^\s:/@]+:)[^\s@/]+(?=@)/gi];[...K_,...q_];var J_=[/-----END(?:[A-Z0-9 ]+)? PRIVATE KEY-----/g,/^([^\S\r\n]*)(?=[A-Za-z0-9+/]*[g-zG-Z+/])(?=[A-Za-z0-9+/=]{60,76}[^\S\r\n]*$)[A-Za-z0-9+/]+={0,2}(?=[^\S\r\n]*$)/gm],Y_=RegExp(`(${B_}(?:${L_}|_key)=)[^&#\\s]+`,`gi`),X_=[U_,RegExp(`(\\b(?=[A-Z0-9_]*(?:SECRET|TOKEN|KEY|PASSWORD))[A-Z][A-Z0-9_]*=)${R_}`,`g`)],Z_=[W_,...K_,...q_,...G_,...J_];function Q_(e,t){return[...e.matchAll(t)].map(e=>({matchStart:e.index,valueStart:e.index+(e[1]??``).length,end:e.index+e[0].length}))}function $_(e,t){let n=0;return e.filter(e=>{for(;n<t.length&&t[n].end<=e.matchStart;)n+=1;let r=t.at(n);return!r||e.matchStart<r.matchStart})}function ev(e){let t=[];for(let n of e.toSorted((e,t)=>e.start-t.start)){let e=t.at(-1);e&&n.start<=e.end?e.end=Math.max(e.end,n.end):t.push({...n})}return t}function tv(e){let t=Q_(e,Y_);return ev([...t,...X_.flatMap(n=>$_(Q_(e,n),t)),...Z_.flatMap(t=>Q_(e,t))].map(e=>({start:e.valueStart,end:e.end})))}var nv=`glimmervoid-streamer-mode`,rv=new Set,iv=Hn(nv,!1)===!0,av=null;function ov(e){document.documentElement.toggleAttribute(`data-streamer`,e),av?.setAttribute(`aria-pressed`,String(e))}ov(iv);function sv(){return iv}function cv(e){if(Un(nv,e),e!==sv()){iv=e,ov(e);for(let t of rv)t(e)}}function lv(e){return rv.add(e),()=>rv.delete(e)}async function uv(e){try{let t=await ut(`update-settings`,{settings:{streamerMode:e}},{timeoutMs:us});return t.type===`settings-error`?String(t.message):(cv(e),``)}catch(e){return ys(e,us)}}var dv=`Streamer mode`;async function fv(){let e=!sv();e&&cv(!0);let t=await uv(e);t?R({source:dv,message:`${e?`Streamer mode is on in this browser only. The server did not save it`:`Streamer mode is still on. The server did not save the change`}: ${t} Toggle it again to retry.`,hidesInStreamerMode:!1}):Es(dv)}function pv(){fv()}function mv(e){av=e,ov(sv()),e.addEventListener(`click`,pv)}var hv=`#808080`,gv=new WeakMap;function _v(e,t,n){return`${e}:${t}:${n}`}function vv(e){return _v(e.marker.line,e.x,e.width)}function yv(e,t){let n=t;for(;n>0&&t-n<63&&e.getLine(n)?.isWrapped;)n--;return n}function bv(e,t){let n=t;for(;n-t<63&&e.getLine(n+1)?.isWrapped;)n++;return n}function xv(e,t,n){let r=``;for(let i=t;i<=n;i++)r+=e.getLine(i)?.translateToString(!1)??``;return r}function Sv(e,t,n,r){let i=``,a=[];for(let o=t;o<=n;o++){let t=e.getLine(o);if(!t)break;for(let e=0;e<t.length;e++){let n=t.getCell(e,r);if(!n)break;let s=n.getWidth();if(s===0)continue;let c=n.getChars()||` `;for(let t=0;t<c.length;t++)i+=c[t],a.push({line:o,x:e,width:s})}}return{text:i,cellAt:a}}function Cv(e,t){let n=null;for(let r of t)n&&n.line===r.line?n.width=Math.max(n.width,r.x+r.width-n.x):(n={line:r.line,x:r.x,width:r.width},e.push(n))}function wv(e,t,n,r){let i=[];if(tv(xv(e,t,n)).length===0)return i;let{text:a,cellAt:o}=Sv(e,t,n,r);for(let e of tv(a))Cv(i,o.slice(e.start,e.end));return i}function Tv(e,t){let n=e.getNullCell(),r=[],i=t;for(;i<e.length;){let t=bv(e,i);r.push(...wv(e,i,t,n)),i=t+1}return r}function Ev(){return{masks:[],watermark:null,isFullRescanOwed:!0}}function Dv(e){e.decoration.dispose(),e.marker.dispose()}function Ov(e){for(let t of e.masks)Dv(t);e.masks.length=0,e.watermark?.dispose(),e.watermark=null,e.isFullRescanOwed=!0}function kv(e,t){let n=e.watermark;return e.isFullRescanOwed||!n||n.isDisposed?0:Math.min(n.line,t.baseY)}function Av(e){let t=0;for(;t<e.masks.length&&e.masks[t].marker.isDisposed;)e.masks[t].decoration.dispose(),t++;t>0&&e.masks.splice(0,t)}function jv(e,t){let n=new Map,r=e.masks.at(-1);for(;r&&(r.marker.isDisposed||r.marker.line>=t);)e.masks.pop(),r.marker.isDisposed&&r.decoration.dispose(),r.marker.isDisposed||n.set(vv(r),r),r=e.masks.at(-1);return Av(e),n}function Mv(e,t){let n={normal:Ev(),alternate:Ev()},r=e.cols;function i(t){return e.buffer.active.type===t}function a(t,n){if(!i(n)||t.isDisposed)return!1;let r=t.line-e.buffer.active.viewportY;return r>=0&&r<e.rows}function o(t,n,r){t.style.backgroundColor=e.options.theme?.foreground??hv,t.style.pointerEvents=`none`,t.style.display=a(n,r)?`block`:`none`}function s(e){for(let t of n[e].masks){let n=t.decoration.element;n&&o(n,t.marker,e)}}function c(t,n){let r=e.registerMarker(t.line-(n.baseY+n.cursorY));if(!r)return null;let i=e.registerDecoration({marker:r,x:t.x,width:t.width,layer:`top`});if(!i)return r.dispose(),null;let a=n.type;return i.onRender(e=>o(e,r,a)),{marker:r,decoration:i,x:t.x,width:t.width}}function l(){if(!sv())return;let t=e.buffer.active,r=n[t.type],i=yv(t,kv(r,t)),a=jv(r,i);for(let e of Tv(t,i)){let n=_v(e.line,e.x,e.width),i=a.get(n);a.delete(n);let o=i??c(e,t);o&&r.masks.push(o)}for(let e of a.values())Dv(e);r.watermark?.dispose(),r.watermark=e.registerMarker(-t.cursorY)??null,r.isFullRescanOwed=!1}function u(){Ov(n.normal),Ov(n.alternate)}function d(){u(),r=e.cols,l()}let f=[e.onWriteParsed(l),e.onResize(({cols:e})=>{e!==r&&(r=e,n.normal.isFullRescanOwed=!0,n.alternate.isFullRescanOwed=!0,l())}),e.buffer.onBufferChange(e=>{Ov(n.alternate),s(`normal`),e.type===`alternate`&&l()})],p=lv(d);t.addEventListener(`abort`,()=>{p();for(let e of f)e.dispose();u(),gv.delete(e)},{once:!0}),gv.set(e,d)}function Nv(e){gv.get(e)?.()}function Pv({hasTerminal:e,isSocketOpen:t,isInputHeld:n}){return e?n||!t?`connecting`:`live`:`none`}var Fv=`Upload`;async function Iv(e,t){return Es(Fv,e),Rv(e,t)}async function Lv(e,t){Es(Fv,e);for(let n of t)await Rv(e,n)}async function Rv(e,t){let n={"x-glimmervoid-upload-name":encodeURIComponent(t.name)};t.type&&(n[`content-type`]=t.type);try{let r=await fetch(`/upload/${encodeURIComponent(e)}`,{method:`POST`,body:t,headers:n});return r.ok?!0:(R({source:Fv,sessionId:e,message:await zv(r,t.name)}),!1)}catch{return R({source:Fv,sessionId:e,message:`${t.name} was not uploaded because the server did not answer. Check that Glimmervoid is running, then drop the file again.`}),!1}}async function zv(e,t){try{let n=await e.json();if(n&&typeof n.error==`string`)return`${t} was not uploaded: ${n.error.replace(/\.$/,``)}. Fix that, then drop the file again.`}catch{}return`${t} was not uploaded (HTTP ${e.status}). Drop the file again, or check the Glimmervoid terminal for errors.`}var Bv=10,Vv=1.2,Hv=.005,Uv=4,Wv=.08,Gv=5;function Kv(e,t){let n=Math.abs(t);return n<Bv?!1:n>Math.abs(e)*Vv}function qv(e,t,n=1/0){if(!(t>0))return{scrollLines:0,remainderPx:e};let r=Math.trunc(e/t),i=Math.max(-n,Math.min(n,r));return{scrollLines:i===0?0:-i,remainderPx:e-i*t}}function Jv(e,t,n){let r=e.length>=Uv?e.slice(1):e.slice();return r.push({positionPx:t,timestampMs:n}),r}function Yv(e){if(!e||e.length<2)return 0;let t=e[0],n=e[e.length-1],r=n.timestampMs-t.timestampMs;if(!(r>0))return 0;let i=(n.positionPx-t.positionPx)/r,a=Math.abs(i);if(!(a>=Wv))return 0;let o=Math.min(a,Gv);return i<0?-o:o}function Xv({velocityPxPerMs:e,startedAtMs:t,cellHeightPx:n,pendingPx:r=0}){return!e||!(n>0)?null:{velocityPxPerMs:e,lastMs:t,cellHeightPx:n,pendingPx:r}}function Zv(e,t){if(!e)return{scrollLines:0,state:null};let n=t-e.lastMs;if(!(n>0))return{scrollLines:0,state:e};let r=Math.abs(e.velocityPxPerMs)-Hv*n;if(!(r>0))return{scrollLines:0,state:null};let i=e.velocityPxPerMs<0?-1:1,a=i*r*n,{scrollLines:o,remainderPx:s}=qv(e.pendingPx+a,e.cellHeightPx);return{scrollLines:o,state:{velocityPxPerMs:i*r,lastMs:t,cellHeightPx:e.cellHeightPx,pendingPx:s}}}function Qv(e,t){return e===`alternate`||!!t&&t!==`none`}function $v(e,t){return!(e>0)||!(t>0)?0:e/t}var ey=1;function ty(e){return typeof e._core?._viewport?.handleTouchScroll==`function`}function ny(e,t){for(let n of e)if(n.identifier===t)return n;return null}function ry(e,t){if(ty(t))return;let n=()=>document.documentElement.dataset.layout===`phone`,r=null,i=0,a=0,o=0,s=!1,c=0,l=[],u=null,d=null,f=()=>{d!==null&&cancelAnimationFrame(d),d=null,u=null},p=()=>Qv(t.buffer?.active?.type,t.modes?.mouseTrackingMode),m=()=>{let e=t.element?.querySelector(`.xterm-screen`);return $v(e?.clientHeight||t.element?.clientHeight||0,t.rows)},h=()=>{r=null,s=!1,c=0,l=[]},g=(e,n,r)=>{let i=e<0?-1:1;for(let a=0;a<Math.abs(e);a++)t.element?.dispatchEvent(new WheelEvent(`wheel`,{deltaY:i,deltaMode:ey,clientX:n,clientY:r,bubbles:!0,cancelable:!0}))},_=()=>{if(d=null,!u)return;if(!e.isConnected||!n()||p()){f();return}let r=t.buffer?.active?.viewportY,{scrollLines:i,state:a}=Zv(u,performance.now());u=a,i!==0&&t.scrollLines(i),u&&(i!==0&&t.buffer?.active?.viewportY===r?f():d=requestAnimationFrame(_))},v=(e,t,n)=>{u=Xv({velocityPxPerMs:e,startedAtMs:t,cellHeightPx:m(),pendingPx:n}),u&&(d=requestAnimationFrame(_))};e.addEventListener(`touchstart`,e=>{if(f(),!n()||e.touches.length!==1){h();return}let t=e.touches[0];r=t.identifier,i=t.clientX,a=t.clientY,o=t.clientY,s=!1,c=0,l=[]},{passive:!0}),e.addEventListener(`touchmove`,e=>{if(r===null||!n())return;let u=ny(e.touches,r);if(!u)return;if(!s){if(!Kv(u.clientX-i,u.clientY-a))return;s=!0,o=u.clientY,c=0,l=Jv([],u.clientY,e.timeStamp)}e.cancelable&&e.preventDefault(),c+=u.clientY-o,o=u.clientY,l=Jv(l,u.clientY,e.timeStamp);let d=p(),{scrollLines:f,remainderPx:h}=qv(c,m(),d?8:void 0);c=h,f!==0&&(d?g(f,u.clientX,u.clientY):t.scrollLines(f))},{passive:!1}),e.addEventListener(`touchend`,e=>{if(!s||p()){h();return}l=Jv(l,o,e.timeStamp);let t=Yv(l),n=c;h(),t!==0&&v(t,performance.now(),n)},{passive:!0}),e.addEventListener(`touchcancel`,()=>{f(),h()},{passive:!0})}function iy(e){return e.needsReload?!0:e.wasAttachedWithoutLayout&&e.hasLayoutNow}function ay(e,t,n=[]){let r=new Set(Array.isArray(n)?n:[n]),i=[];for(let n of e)e.length-i.length>=t&&!r.has(n)&&i.push(n);return i}var oy=null,sy=null;function cy(){return oy}function ly(){return oy?Promise.resolve(oy):(sy??=Promise.all([P(()=>import(`./xterm-CdMfg81L.js`).then(e=>e.t),__vite__mapDeps([13,14])),P(()=>import(`./xterm-CdMfg81L.js`).then(e=>e.r),__vite__mapDeps([13,14])),P(()=>import(`./xterm-CdMfg81L.js`).then(e=>e.n),__vite__mapDeps([13,14]))]).then(([e,t,n])=>(oy={Terminal:e.Terminal,FitAddon:t.FitAddon,WebglAddon:n.WebglAddon},oy)).catch(e=>{throw sy=null,e}),sy)}var uy=window.matchMedia?.(`(pointer: coarse)`).matches?4:12,dy=new Map;function fy(e){return e.clientWidth>0&&e.clientHeight>0}function py(e){let t=e.webglAddon;if(!t)return;let n=[...e.term?.element?.querySelectorAll(`canvas`)??[]];e.webglAddon=null;try{t.dispose()}catch{}for(let e of n)e.getContext(`webgl2`)?.getExtension(`WEBGL_lose_context`)?.loseContext()}function my(e){dy.delete(e),e.needsWebGLReload=!1,e.webglAttachedWithoutLayout=!1,py(e)}function hy(e){let t=[e],n=j.snapshot().borrowedCardId,r=n?O.get(n):void 0;r&&t.push(r);for(let e of ay([...dy.keys()],uy,t))my(e),e.needsWebGLReload=!0}function gy(e){e?.term&&iy({needsReload:e.needsWebGLReload,wasAttachedWithoutLayout:e.webglAttachedWithoutLayout,hasLayoutNow:fy(e.termWrap)})&&xy(e,{isForced:!0})}function _y(){for(let e of dy.keys()){let t=e.term;if(e.webglAddon&&t)try{t.clearTextureAtlas(),t.refresh(0,t.rows-1)}catch{my(e),e.needsWebGLReload=!0}}}var vy=!1;function yy(){vy||(vy=!0,requestAnimationFrame(()=>{vy=!1,_y()}))}function by(e){e?.addEventListener(`contextrestored`,yy)}function xy(e,t={}){try{if(e.webglAddon&&!e.needsWebGLReload&&!t.isForced){dy.delete(e),dy.set(e,!0);return}e.webglAddon&&(py(e),dy.delete(e));let n=cy();if(!n)return;hy(e);let r=new n.WebglAddon;r.onContextLoss(()=>{r.dispose(),e.webglAddon=null,dy.delete(e),e.needsWebGLReload=!0});let i=e.term;if(!i)throw Error(`webgl: the terminal was disposed before the addon loaded`);i.loadAddon(r),r.onChangeTextureAtlas(by),r.onAddTextureAtlasCanvas(by),by(r.textureAtlas),e.webglAddon=r,e.needsWebGLReload=!1,e.webglAttachedWithoutLayout=!fy(e.termWrap),dy.set(e,!0),requestAnimationFrame(()=>{e.webglAddon===r&&e.term&&e.term.refresh(0,e.term.rows-1)})}catch{e.webglAddon=null,e.needsWebGLReload=!1,e.webglAttachedWithoutLayout=!1,dy.delete(e)}}function Sy(e){let t=mr(e,ld,{isTerminalFocused:!0},fd());return t?hr(t,document.body.dataset.activeView):!1}var Cy=1024,wy=250,Ty=`(max-width: 768px)`,Ey=12,Dy=14,Oy=5e4,ky=!1;function Ay(e){ky=e}var jy=!1;window.addEventListener(`blur`,()=>{jy=!0}),window.addEventListener(`focus`,()=>{jy=!1});function My(e){let t=document.activeElement;return c_({isDocumentVisible:document.visibilityState===`visible`,isDocumentFocused:document.hasFocus(),hasFocusInsideCard:t instanceof Node&&e.contains(t),hasWindowBlurredSinceFocus:jy,isPhoneLayout:_u()})}function Ny(e,t){return l_({isBorrowedCard:j.snapshot().borrowedCardId===t,isTerminalFaceShown:e.face===`terminal`})}var Py=new WeakMap,Fy=new WeakMap,Iy=new WeakSet,Ly=new WeakSet,Ry=new WeakSet,zy=new WeakMap,By=5e3,Vy=15e3,Hy=`Keys you type now are held and sent once the terminal reconnects.`,Uy=`The terminal is still reconnecting and its key buffer is full, so new keys are dropped.`,Wy=`The agent copied text. The browser needs a click before it can reach your clipboard.`,Gy=`The clipboard is unavailable in this browser.`;function Ky(e,t,n,r){let i=zy.get(e);i&&(i.clearTimerId!==null&&clearTimeout(i.clearTimerId),i.clearTimerId=null,i.shownKind=t,i.status.show(n,r),n!==`busy`&&(i.clearTimerId=setTimeout(()=>qy(e,t),n===`ok`?By:Vy)))}function qy(e,t){let n=zy.get(e);n&&n.shownKind===t&&(n.clearTimerId!==null&&clearTimeout(n.clearTimerId),n.clearTimerId=null,n.shownKind=null,n.status.clear())}function Jy(e){let t=e.buffer.active;return t.viewportY<t.baseY}function Yy(e,t,{hasNewOutput:n=!1}={}){let r=zy.get(e)?.jumpToLatestButton;if(!r)return;let i=Jy(t);r.hidden=!i,i?n&&(r.dataset.hasNewOutput=`true`):delete r.dataset.hasNewOutput}function Xy(e,t){if(Py.has(e)||!Jy(t))return;let n=t.buffer.active,r=n.length-n.viewportY;Iy.has(e)?Py.set(e,r):Fy.set(e,r)}function Zy(e,t,n){let r=e.term;r&&u_({viewportTopLine:n,scrollbackLineCount:r.buffer.active.baseY,isDeepHistoryLoadedOrPending:Iy.has(e)})&&(Iy.add(e),Ly.add(e),Py.set(e,r.buffer.active.length-n),Fb(t))}var Qy=new WeakMap;function $y(e,t){return document.visibilityState===`visible`&&!Ny(e,t)}function eb(e,t){if(e&&xb(e,t))return;let n=e?.dataWs;if(!e||n?.readyState!==WebSocket.OPEN)return;let r=$y(e,t);Qy.get(n)!==r&&(Qy.set(n,r),n.send(JSON.stringify({type:r?`resume-output`:`pause-output`})))}function tb(){for(let[e,t]of O)eb(t,e)}document.addEventListener(`visibilitychange`,tb),j.subscribe((e,t)=>{t.includes(`borrowedCardId`)&&tb()});function nb(e){let t=atob(e),n=new Uint8Array(t.length);for(let e=0;e<t.length;e++)n[e]=t.charCodeAt(e);return new TextDecoder().decode(n)}function rb(e,t,n){let r=(n instanceof Error?n.message:``)||String(n);console.error(`[clipboard:${t}]`,n),Ky(e,`clipboard`,`error`,`Clipboard ${t} failed: ${r}`)}function ib(e,t,n,r){let i=qe(t);i?i.then(()=>{r&&Ky(e,`clipboard`,`ok`,r)}).catch(t=>rb(e,n,t)):Ky(e,`clipboard`,`error`,Gy)}function ab(e,t){let n=zy.get(e);n&&(n.pendingClipboardText=t,n.clipboardPrompt.hidden=!1)}function ob(e){let t=zy.get(e),n=t?.pendingClipboardText;t&&n!=null&&(t.pendingClipboardText=null,t.clipboardPrompt.hidden=!0,ib(e,n,`osc52 write`,`Copied to the clipboard.`))}function sb(e,t,n){let r=_s(`terminal-notice`),i=w(`div`,`terminal-clipboard-prompt`);i.hidden=!0;let a=w(`button`,`btn-dialog btn-dialog-confirm`,`Copy to clipboard`);a.type=`button`,a.addEventListener(`click`,()=>ob(t)),i.append(w(`span`,`terminal-clipboard-prompt-text`,Wy),a);let o=w(`div`,`terminal-notices`);o.append(i,r.element);let s=w(`button`,`terminal-jump-latest btn-dialog btn-dialog-ghost`,`Jump to latest`);s.type=`button`,s.hidden=!0,s.addEventListener(`click`,()=>{n.scrollToBottom(),n.focus()});let c=w(`div`,`terminal-drop-zone`);c.setAttribute(`aria-hidden`,`true`),c.append(w(`span`,`terminal-drop-zone-label`,`Drop to upload to this session`)),e.append(o,s,c),zy.set(t,{status:r,shownKind:null,clearTimerId:null,clipboardPrompt:i,pendingClipboardText:null,jumpToLatestButton:s})}function cb(e,t){return O.get(e)===t&&!t.dataWs}function lb(e){return e.querySelector(`:scope > .terminal-connecting`)}function ub(e){if(lb(e))return;let t=w(`div`,`terminal-connecting`);t.append(w(`span`,`terminal-connecting-label`,`Connecting`)),e.append(t)}function db(e){let t=lb(e);if(!t)return;t.querySelector(`:scope > .terminal-connecting-animal`)?.remove();let n=Bi();n&&t.prepend(zi(n,`terminal-connecting-animal`))}var fb=new Set,pb=new WeakSet;function mb(e){return fb.add(e),()=>fb.delete(e)}function hb(){let e=0;for(let[t,n]of O)n.card.dataset.link===`connecting`&&$y(n,t)&&e++;return e}function gb(e){let t=Pv({hasTerminal:e.term!==null||pb.has(e),isSocketOpen:e.dataWs?.readyState===WebSocket.OPEN,isInputHeld:jb}),n=t===`connecting`&&!jb&&Ly.has(e)?`live`:t;if(n===`none`){delete e.card.dataset.link,_b();return}let r=n===`connecting`&&e.card.dataset.link!==`connecting`;e.card.dataset.link=n,r&&db(e.termWrap),_b()}function _b(){for(let e of fb)e()}function vb(e,t,n){Xy(t,n),Ng.unregister(e),t.dataWs=null,gb(t),t._resetGridClaim?.()}var yb=new WeakMap;function bb(e,t,n,r){vb(e,t,n),clearTimeout(yb.get(t)),yb.delete(t),r===0&&rt()?Ab(e,t,n):yb.set(t,setTimeout(()=>{yb.delete(t),cb(e,t)&&ot().catch(()=>{}).then(()=>{cb(e,t)&&Ab(e,t,n)})},r))}function xb(e,t){let n=Ry.has(e),r=!e.dataWs&&O.get(t)===e;return!(n||r)||!e.term||!$y(e,t)?!1:(Ry.delete(e),e._dataWsRetryAttempt=0,bb(t,e,e.term,0),!0)}function Sb(e,t,n){vb(e,t,n),Ry.add(t)}var Cb=15e3,wb=new Map;function Tb(e){if(!rt()||wb.has(e)||O.get(e)?.dataWs)return;let t=d_(e,!1,!1),n=new WebSocket(dt(location,tt(t)));n.binaryType=`arraybuffer`;let r=[],i=e=>r.push(e),a=()=>Eb(e,n),o=()=>{n.readyState===WebSocket.CONNECTING&&a()};n.addEventListener(`message`,i),n.addEventListener(`close`,a);let s=setTimeout(o,et),c=setTimeout(a,Cb);wb.set(e,{socket:n,attachPath:t,bufferedMessages:r,release:()=>{n.removeEventListener(`message`,i),n.removeEventListener(`close`,a),clearTimeout(s),clearTimeout(c)}})}function Eb(e,t){let n=wb.get(e);n?.socket===t&&(wb.delete(e),n.release(),t.close())}function Db(e,t){let n=wb.get(e);if(!n)return null;let r=n.socket.readyState===WebSocket.CONNECTING||n.socket.readyState===WebSocket.OPEN;return n.attachPath!==t||!r?(Eb(e,n.socket),null):(wb.delete(e),n.release(),n)}var Ob=new WeakMap;function kb(e,t,n){if(t.openedAtMs===null)return;let r=Math.round(performance.now()-t.openedAtMs);if(r>=1e3){Ob.delete(e);return}let i=(Ob.get(e)??0)+1;if(Ob.set(e,i),!n_.has(i))return;let a=n.wasClean?`clean`:`unclean`,o=t.hasReceivedBytes?`yes`:`no`;T(`terminal`,`fast close ${i}x, session ${t.sessionId}, code ${n.code}, reason '${n.reason}', ${a}, open ${r} ms, bytes ${o}, attach ${t.attachDescription}`)}function Ab(e,t,n){Ry.delete(t);let r=Py.get(t);Py.delete(t);let i=Fy.get(t);Fy.delete(t);let a=r!==void 0,o=r??i,s=!1,c=$y(t,e),l=d_(e,a,!c),u=Db(e,l),d=u?.socket??new WebSocket(dt(location,tt(l)));Qy.set(d,c),d.binaryType=`arraybuffer`,t.dataWs=d,c&&wg(`terminal-connecting`),gb(t);let f=!1,p=!1,m={sessionId:e,attachDescription:r_({history:a?`deep`:`screen`,isOutputPaused:!c}),openedAtMs:null,hasReceivedBytes:!1},h={hasSeenSize:!1,lastSeq:0},g=setTimeout(()=>{d.readyState===WebSocket.CONNECTING&&(p=!0,c&&wg(`terminal-abandoned`),d.close())},et);Ng.register(e,(e,t)=>n.write(e,t));let _=r=>{if(t.dataWs!==d)return;let i=__(r.data,h);if(i.kind===`bytes`){m.hasReceivedBytes=!0,zt(t),Qy.get(d)&&wg(`terminal-bytes`);let r=s;if(s=!1,Ng.enqueue(e,i.data),!r)return;let a=o??0;Ng.enqueueAction(e,()=>{n.scrollToLine(Math.max(0,n.buffer.active.length-a))});return}if(i.kind===`beat`){zt(t);return}if(i.kind===`attach-size`){s=o!==void 0,a||Iy.delete(t),h.hasSeenSize=!0,h.lastSeq=i.seq,n.reset(),Nv(n),t.ptySize={cols:i.cols,rows:i.rows},t._syncGrid?.();return}if(i.kind!==`size`)return;h.lastSeq=i.seq;let c={cols:i.cols,rows:i.rows};Ng.enqueueAction(e,()=>{t.ptySize=c,t._syncGrid?.()})};d.addEventListener(`message`,_),d.addEventListener(`close`,r=>{if(clearTimeout(g),t.dataWs!==d)return;if(kb(t,m,r),c&&!p&&wg(`terminal-closed`),Ly.delete(t),!f&&!p&&$e(),!$y(t,e)){Sb(e,t,n);return}if(p){bb(e,t,n,0);return}let i=pt(t._dataWsRetryAttempt||0);t._dataWsRetryAttempt=(t._dataWsRetryAttempt||0)+1,bb(e,t,n,i)});let v=()=>{clearTimeout(g),f=!0,m.openedAtMs=performance.now(),c&&wg(`terminal-opened`),t._dataWsRetryAttempt=0,Ly.delete(t),gb(t),eb(t,e),t._syncGrid?.({isActivationEdge:!0}),t._retryOwedGridClaim?.(),t._inputQueue?.length&&setTimeout(()=>{t.dataWs===d&&Mb(t)},50)};d.addEventListener(`open`,v),d.readyState===WebSocket.OPEN&&v();for(let e of u?.bufferedMessages??[])_(e)}var jb=!1;function Mb(e){let t=e._inputQueue,n=e.dataWs;if(!jb&&t?.length&&n?.readyState===WebSocket.OPEN){for(let e of t)n.send(JSON.stringify({type:`input`,data:e}));t.length=0,qy(e,`keys`)}}function Nb(){jb=!0;for(let e of O.values())gb(e)}function Pb(){jb=!1;for(let e of O.values())gb(e),Mb(e)}function Fb(e){let t=k(e);if(typeof e!=`string`||!t?.term)return;let n=t.dataWs;t._dataWsRetryAttempt=0,bb(e,t,t.term,0),n?.close()}function Ib(){for(let[e,t]of O)t.term&&($y(t,e)?Fb(e):Lb(e,t,t.term))}function Lb(e,t,n){let r=t.dataWs;r&&(Sb(e,t,n),r.close())}function Rb(){for(let[e,t]of O)t.term&&Lb(e,t,t.term)}function zb(e,t){let n=e.dataWs;e.dataWs=null,Ng.unregister(t),n&&n.readyState<=WebSocket.OPEN&&n.close()}function Bb(e,t,n){if(!e||t==null||t===``)return!1;if(n?.fromSoftKeyboard||e._resetSoftKeyboardBuffer?.(),!jb&&!e._inputQueue?.length&&e.dataWs?.readyState===WebSocket.OPEN)return e.dataWs.send(JSON.stringify({type:`input`,data:t})),!0;if(!e._inputQueue)return!1;let r=e.dataWs?.readyState!==WebSocket.OPEN;return e._inputQueue.length>=Cy?(Ky(e,`keys`,`error`,Uy),!1):(e._inputQueue.push(t),r&&Ky(e,`keys`,`busy`,Hy),!0)}function Vb(e,t,n){let r=window.matchMedia?.(Ty).matches?Ey:Dy,i=new n.Terminal({cursorBlink:ky,fontSize:r,fontFamily:sg(),theme:Wg(),scrollback:Oy,allowProposedApi:!0,linkHandler:P_()}),a=new n.FitAddon;i.loadAddon(a),ub(e),i.open(e),sb(e,t,i),I_(i),Mv(i,t.abortController.signal),t.term=i,t.fitAddon=a,my(t);let o=null,s=null,c=!1,l=null,u=null;function d(){s!==null&&(clearTimeout(s),s=null)}function f(){if(!c)return null;let e=t.fitAddon;if(!e)return null;let n=e.proposeDimensions();return n?{cols:n.cols,rows:n.rows}:null}function p(e){if(!c||!My(t.card)||t.dataWs?.readyState!==WebSocket.OPEN)return!1;t.dataWs.send(JSON.stringify({type:`claim`,cols:e.cols,rows:e.rows})),l=e,u=null;let n=s_({authoritative:t.ptySize??null,isActiveViewer:c,lastClaim:l});return t.card.dataset.grid=n?`following`:`exact`,!0}function m(e){d(),u=e,s=setTimeout(()=>{s=null,p(e)},wy)}function h(){u&&s===null&&p(u)}function g({isActivationEdge:e=!1}={}){let n=t.term;if(!n)return;let r=m_({authoritative:t.ptySize??null,applied:{cols:n.cols,rows:n.rows},proposal:f(),isActiveViewer:c,isDataWsOpen:t.dataWs?.readyState===WebSocket.OPEN,lastClaim:l});r.resizeTo&&n.resize(r.resizeTo.cols,r.resizeTo.rows),t.card.dataset.grid=r.isFollowing?`following`:`exact`,r.keepsPendingSettle||(d(),u=null),r.sendUnview?(l=null,t.dataWs?.send(JSON.stringify({type:`unview`}))):r.owedClaim&&(e&&p(r.owedClaim)||m(r.owedClaim))}function _(){let e=f_({authoritative:t.ptySize??null,isActiveViewer:c,isDocumentEngaged:My(t.card),isDataWsOpen:t.dataWs?.readyState===WebSocket.OPEN,lastClaim:l});e!==`none`&&(d(),e===`rebid`&&(l=null),g({isActivationEdge:!0}))}let v=new ResizeObserver(()=>{o===null&&(o=requestAnimationFrame(()=>{o=null,g()}))});v.observe(e),t.resizeObserver=v,t._syncGrid=g,t._resetGridClaim=()=>{d(),u=p_({isActiveViewer:c,lastClaim:l,owedClaim:u}),l=null},t._retryOwedGridClaim=h,t._syncGridOnEngagementEdge=_,t._isActiveViewer=()=>c,t._setActiveViewer=e=>{c!==e&&(c=e,d(),u=null,e&&gy(t),g({isActivationEdge:!0}))},t.card.addEventListener(`focusin`,()=>{jy=!1,_()},{signal:t.abortController.signal}),xy(t);let ee=null;i.onScroll(()=>{ee===null&&(ee=requestAnimationFrame(()=>{ee=null,t.term&&(t.term.refresh(0,t.term.rows-1),Yy(t,t.term))}))}),i.onWriteParsed(()=>Yy(t,i,{hasNewOutput:!0})),i.parser.registerOscHandler(52,e=>{let n=e.indexOf(`;`);if(n<0)return!0;let r=e.slice(n+1);if(r===``||r===`?`)return!0;let i;try{i=nb(r)}catch(e){return rb(t,`osc52 decode`,e),!0}return document.hasFocus()&&navigator.userActivation?.isActive!==!1?(ib(t,i,`osc52 write`),!0):(ab(t,i),!0)}),i.attachCustomKeyEventHandler(e=>{if(e.shiftKey&&e.key===`Enter`)return e.type===`keydown`&&Bb(t,`\x1B\r`),!1;if(e.type!==`keydown`)return!0;if(Sy(e))return!1;let n=e.ctrlKey||e.metaKey;if(n&&e.key===`c`&&i.hasSelection()){let e=i.getSelection();return i.clearSelection(),ib(t,e,`copy`),!1}return n&&e.key===`v`?!1:n&&e.key===`Backspace`?(Bb(t,`\x1B`),!1):!0}),Hb(e,i,t),ry(e,i)}function Hb(e,t,n){let r=t.textarea;if(!r)return;let i=``,a=()=>{i=r.value},o=()=>{i=``,_u()&&r.value!==``&&(r.value=``)};n._resetSoftKeyboardBuffer=o;let s=()=>{let e=E_(i,r.value);return i=r.value,e!==``&&(Bb(n,e,{fromSoftKeyboard:!0}),t.scrollToBottom(),!0)},c=(t,n)=>{e.addEventListener(t,e=>{_u()?n(e):a()},!0)};c(`keydown`,e=>{T_(e)?e.stopPropagation():(s(),queueMicrotask(o))}),c(`compositionstart`,e=>{e.stopPropagation()}),c(`compositionupdate`,e=>{e.stopPropagation()}),c(`compositionend`,e=>{e.stopPropagation(),setTimeout(s,0)}),c(`input`,e=>{if(!w_(e.inputType)){queueMicrotask(o);return}if(e.stopPropagation(),s())return;let r=S_(e.inputType);r!==``&&(Bb(n,r,{fromSoftKeyboard:!0}),t.scrollToBottom())})}function Ub(e,t){e._inputQueue=[];let n=e.term;n&&(n.onData(n=>{Bb(e,n),e.unseenOutcome&&E({type:`dismiss`,id:t,expectedState:e.currentState})}),n.onScroll(n=>{Zy(e,t,n)}),Gb(e.termWrap,t,e.abortController.signal),gb(e),queueMicrotask(()=>{cb(t,e)&&Ab(t,e,n)}))}function Wb(e){return!!e&&Array.from(e.types).includes(`Files`)}function Gb(e,t,n){e.addEventListener(`paste`,e=>{let n=e.clipboardData;n&&n.files.length!==0&&n.getData(`text/plain`)===``&&(e.preventDefault(),e.stopPropagation(),Lv(t,Array.from(n.files)))},{capture:!0,signal:n}),e.addEventListener(`dragover`,t=>{Wb(t.dataTransfer)&&(t.preventDefault(),t.dataTransfer.dropEffect=`copy`,e.dataset.dropTarget=`true`)},{signal:n}),e.addEventListener(`dragleave`,t=>{t.relatedTarget instanceof Node&&e.contains(t.relatedTarget)||delete e.dataset.dropTarget},{signal:n}),e.addEventListener(`drop`,n=>{delete e.dataset.dropTarget,Wb(n.dataTransfer)&&(n.preventDefault(),n.stopPropagation(),Lv(t,Array.from(n.dataTransfer.files)))},{capture:!0,signal:n})}function Kb(e,t){if(e.term||pb.has(e))return;let n=cy();if(n){qb(e,t,n);return}pb.add(e);let r=e._isActiveViewer?.()===!0;e._isActiveViewer=()=>r,e._setActiveViewer=e=>{r=e},ub(e.termWrap),gb(e),ly().then(n=>{pb.delete(e),!(e.term||e.abortController.signal.aborted||O.get(t)!==e)&&(qb(e,t,n),e._setActiveViewer?.(r))},()=>{pb.delete(e),gb(e)})}function qb(e,t,n){Vb(e.termWrap,e,n),Ub(e,t)}function Jb(e){e?._syncGridOnEngagementEdge?.()}function Yb(e,t){if(!e)return;Kb(e,t),eb(e,t),gy(e);let n=e.term;n&&(n.refresh(0,n.rows-1),Jb(e))}function Xb(e,t,n){e&&(n&&Kb(e,t),e._setActiveViewer?.(n))}var Zb=e=>e==null?``:String(e),Qb=e=>Ae.includes(e),$b=e=>Pe.includes(e);Da(cu);var ex=null,tx=null;function nx(){return ex??=P(()=>import(`./alert-sound-BGx4LdwZ.js`),[]).catch(e=>(ex=null,T(`alert-sound`,`alert sound failed to load: ${ft(e)}`),null)),ex}function rx(){return tx??=P(()=>import(`./resume-dialog-BHeA8T70.js`),__vite__mapDeps([15,3,4,1,2,12,7])).catch(e=>(tx=null,T(`resume-dialog`,`restart dialog failed to load: ${ft(e)}`),null)),tx}function ix(){let e=Ir();nx().then(t=>t?.playAlertSound(e))}var ax=null,ox=null;function sx(){return ox??=P(()=>import(`./plan-face-DhN__i5r.js`).then(e=>(ax=e,e),()=>(ox=null,null)),__vite__mapDeps([16,3,4,1,7,8,17])),ox}function cx(e){let t=w(`section`,`plan-face`);t.hidden=!0;let n=null,r=!1,i=null,a={},o=new Map;function s(s){if(r=!1,e.signal?.aborted)return;if(!s){e.reportProblem(`The plan view did not load. Open the plan again to retry.`),i!==null&&e.showTerminal(),i=null;return}let c=s.createPlanFace(e);t.replaceWith(c.el),c.update(a);for(let e of o.values())c.update({draft:e});o.clear(),n=c,i!==null&&c.show(i)}return{get el(){return n?.el??t},show(e){n?n.show(e):(i=e,!r&&(r=!0,sx().then(s)))},hide(){i=null,n?.hide()},update(e){n?n.update(e):(e.state&&(a.state=e.state),typeof e.isConnected==`boolean`&&(a.isConnected=e.isConnected),e.draft&&o.set(e.draft.agentId,e.draft))}}}function lx(e){let t=e.currentState;e.btnRestart.classList.toggle(`visible`,Qb(t)||$b(t)||t===x.DORMANT),e.btnWorkspaceRepos.classList.toggle(`visible`,e.card.dataset.workspace!==void 0),e.btnTrace.classList.toggle(`visible`,sc()),e.btnPlan.classList.toggle(`visible`,Eh(e)!==`hidden`)}function ux(e){e.sessionMenu.classList.remove(`open`),e.btnSessionMenu.setAttribute(`aria-expanded`,`false`)}function dx(e,t){Tc(e.taskTitleEl,()=>Oc(e,t)),e.nameEl.addEventListener(`dblclick`,n=>{n.preventDefault(),jc(e,t)}),e.nameEl.addEventListener(`click`,()=>{Ac(e.nameEl)||Pl(t)}),e.nameEl.addEventListener(`keydown`,n=>{n.target===e.nameEl&&(n.key===`F2`||n.key===`Enter`)&&(n.preventDefault(),jc(e,t))}),e.btnRestart.addEventListener(`click`,()=>{ux(e),rx().then(n=>n?.openRestartDialog(t,{readState:()=>e.currentState,canListEarlier:e.card.dataset.ephemeral===void 0}))}),e.btnWorkspaceRepos.addEventListener(`click`,()=>{ux(e),jh(t)}),e.btnTrace.addEventListener(`click`,()=>{ux(e),Gm(t)}),e.btnDocs.addEventListener(`click`,()=>{ux(e),fa(t)}),e.btnShown.addEventListener(`click`,()=>{ux(e),ja(t)}),e.btnGuardrails.addEventListener(`click`,()=>{if(e.btnGuardrails.getAttribute(`aria-disabled`)===`true`)return;let n=n=>()=>{nc(e,{type:`set-session-guardrails`,id:t,isOn:n})};e.card.dataset.guarded===void 0?At({title:`Restore guardrails`,message:`This session restarts with guardrails on, interrupting any turn in progress.`,confirmLabel:`Restore guardrails`,danger:!1,onConfirm:n(!0)}):At({title:`Release guardrails`,message:`This session restarts without guardrails, interrupting any turn in progress. It can then read, write and reach anything your account can, including credentials and Glimmervoid itself.`,confirmLabel:`Release guardrails`,danger:!0,onConfirm:n(!1)})}),e.btnPlan.addEventListener(`click`,()=>{let n=Eh(e);n!==`hidden`&&(n===`face`?Sx(t):location.hash=Bu(t))}),e.btnRemove.addEventListener(`click`,()=>{ux(e),$l(t)});function n(){for(let[,t]of O)t!==e&&ux(t);e.sessionMenu.classList.add(`open`),e.btnSessionMenu.setAttribute(`aria-expanded`,`true`)}e.btnSessionMenu.addEventListener(`click`,t=>{t.stopPropagation(),e.sessionMenu.classList.contains(`open`)?ux(e):n()}),Rs({trigger:e.btnSessionMenu,menu:e.sessionMenu,menuItems:()=>[...e.sessionMenu.querySelectorAll(`.popup-menu-item.visible`)],isOpen:()=>e.sessionMenu.classList.contains(`open`),open:n,close:()=>ux(e),signal:e.abortController.signal}),document.addEventListener(`click`,t=>{let n=t.target instanceof Node?t.target:null;!e.sessionMenu.contains(n)&&n!==e.btnSessionMenu&&ux(e)},{signal:e.abortController.signal}),e.btnDebug.addEventListener(`click`,n=>{n.stopPropagation(),Rc(e,t)}),document.addEventListener(`click`,t=>{let n=t.target instanceof Node?t.target:null;e.debugOpen&&!e.card.contains(n)&&zc(e)},{signal:e.abortController.signal})}function fx(e,t,n){let r=k(e);if(r){r.taskTitle=typeof t==`string`?t:null,r.taskTitleIsCustom=n===!0;for(let e of[r.taskTitleEl,r.titleTargetEl])e&&Dc(e,r.taskTitle)}}function px(e){return typeof e==`string`&&O.has(e)}function mx(){return O.size}function hx(e){let t=e||{};t.cursorBlink!=null&&Ay(t.cursorBlink),t.debugMode!=null&&(ac(t.debugMode),Iu(t.debugMode));for(let[,e]of O)e.term&&t.cursorBlink!=null&&(e.term.options.cursorBlink=t.cursorBlink)}function gx(){ag(O.values(),sg())}function _x(e){return{state:e.currentState,unseenOutcome:e.unseenOutcome,ownerId:e.ownerId}}function vx(){let e=mt(A.counts),t=e>0?`(${e}) Glimmervoid`:`Glimmervoid`;document.title!==t&&(document.title=t)}function yx(e,t,n,r={}){if(!Tt)return;let i=D(e),a=Zb(n)||x.DORMANT,o=xc(i,Zb(t),a,r),s=a===x.DORMANT;Tt.appendChild(o.card);let c;function l(){c.face=`terminal`,c.card.dataset.face=`terminal`,c.termWrap.hidden=!1,c.planFace.hide(),lx(c),Yb(c,i)}let u=new AbortController,d=cx({signal:u.signal,requestPlan:(e,t,n)=>E({type:`session-plan`,id:e,agentId:t,revision:n}),requestDraft:(e,t)=>E({type:`session-plan`,id:e,agentId:t,draft:!0}),showTerminal:l,sendDecision:(e,t)=>E({type:`plan-decision`,id:e,...t}),reportProblem:e=>Gx(i,e)});c={term:null,fitAddon:null,webglAddon:null,needsWebGLReload:!1,webglAttachedWithoutLayout:!1,dataWs:null,card:o.card,nameEl:o.nameEl,taskTitleEl:o.taskTitleEl,taskTitle:r.taskTitle??null,taskTitleIsCustom:r.taskTitleIsCustom??!1,path:Zb(r.path),ownerId:r.ownerId??null,stateSince:typeof r.stateSince==`number`&&Number.isFinite(r.stateSince)?r.stateSince:Date.now(),sessionMenu:o.sessionMenu,termWrap:o.termWrap,btnDebug:o.btnDebug,btnRestart:o.btnRestart,btnSessionMenu:o.btnSessionMenu,btnWorkspaceRepos:o.btnWorkspaceRepos,btnGuardrails:o.btnGuardrails,btnTrace:o.btnTrace,btnPlan:o.btnPlan,btnDocs:o.btnDocs,btnShown:o.btnShown,shownUnopenedDot:o.shownUnopenedDot,btnRemove:o.btnRemove,debugOverlay:null,debugOpen:!1,abortController:u,currentState:a,face:`terminal`,isBorrowed:!1,hasPlan:!1,pendingPromptKind:null,planReviewState:{reviews:[]},planFace:d},c._ensureTerminalReady=()=>Yb(c,i),c._showTerminalFace=l,c._showPreferredFace=()=>{bx(c)===`plan`?Sx(i):l()},c._setBorrowed=e=>{c.isBorrowed=e,lx(c)},o.card.append(d.el);let f=O.get(i);return f&&Ot(A,_x(f)),O.set(i,c),_t(A,_x(c)),Lt(i,c),dx(c,i),lx(c),c.btnDocs.classList.toggle(`visible`,sa(i)),Oa(i),a===x.RUNNING&&It(c,!0),s||Kb(c,i),vx(),c}function bx(e){let t=e.planReviewState.reviews.some(e=>e.state===`open`),n=e.planReviewState.reviews.some(Wu);return Th({hasPlan:e.hasPlan,pendingPromptKind:e.pendingPromptKind,hasOpenReview:t,hasApprovedReview:n})}function xx(e){let t=k(e);return!t?.isBorrowed||bx(t)!==`plan`?!1:Sx(e)}function Sx(e){let t=k(e);return!t?.isBorrowed||!t.hasPlan?!1:(t.face=`plan`,t.card.dataset.face=`plan`,t.termWrap.hidden=!0,t.planFace.show(D(e)),lx(t),eb(t,D(e)),!0)}function Cx(e,t){let n=k(e);n&&(n.hasPlan=t===!0,lx(n),xx(e))}function wx(e){let t=k(e.id);t&&(t.planReviewState=sd(t.planReviewState,e),t.hasPlan=e.hasPlan,t.planFace.update({state:t.planReviewState}),lx(t),xx(e.id))}function Tx(e){let t=k(e.id);t&&t.planFace.update({draft:e})}function Ex(e){let t=k(e.id);t&&(t.planReviewState={reviews:e.reviews},t.hasPlan=!0,t.planFace.update({response:e}),lx(t))}function Dx(e){if(e.type!==`error`&&e.type!==`session-error`||e.scope!==`plan`&&e.scope!==`plan-decision`)return!1;let t=k(e.id);return t?e.scope===`plan`?(t.planFace.update({requestFailed:!0}),!0):(t.planFace.update({decisionRefused:!0,refusalText:e.message}),!0):!1}function Ox(e){for(let[,t]of O)t.planFace.update({isConnected:e})}function kx(e,t){let n=k(e);n&&(n.effectiveBase=typeof t==`string`?t:void 0)}function Ax(e,t){let n=k(e);n&&(n.agent=typeof t==`string`?t:null,lx(n))}function jx(e,t){let n=k(e);n&&(t?n.card.dataset.worktree=``:delete n.card.dataset.worktree)}function Mx(e,t,n){let r=k(e);r&&(Nx(r.card,`guarded`,t),Nx(r.card,`guardrailsReleased`,n),Cc(r.btnGuardrails,r.card))}function Nx(e,t,n){n?e.dataset[t]=``:delete e.dataset[t]}function Px(e,t,n=!1){let r=k(e);r&&(r.activeAgents=Math.max(0,Number(t)||0),r.awaitingBackgroundTasks=Ve(r.currentState,n===!0),r.card.toggleAttribute(`data-monitoring`,r.awaitingBackgroundTasks))}function Fx(e,t){let n=k(e);if(!n)return;let r=Ch(t),i=n.card.querySelector(`.usage-badge`);if(r)n.card.dataset.usage=``,i&&(i.dataset.tipLabel=r,i.dataset.tipDetail=wh(t),Zs(i));else{if(delete n.card.dataset.usage,!i)return;delete i.dataset.tipLabel,Zs(i)}}function Ix(e,t){let n=k(e);n&&(n.pendingPromptKind=typeof t==`string`?t:null,xx(e))}function Lx(e,t){let n=k(e);n&&(Ot(A,_x(n)),n.unseenOutcome=t??null,_t(A,_x(n)))}function Rx(e,t){t===`pending-review`||t===`parked`||t===`merging`?e.dataset.merge=t:delete e.dataset.merge}function zx(e,t,n=null){let r=k(e),i=Zb(t)||`none`;r&&Rx(r.card,i),Lf(D(e),i,Zb(n)||null)}function Bx(e,t,n=null){let r=k(e),i=Zb(t)||`none`;r&&Rx(r.card,i),zf(D(e),i,Zb(n)||null)}function Vx(e,t){Bf(D(e),t)}function Hx(e,t){let n=k(e);if(!n)return;let r=Zb(t);n.card.dataset.session=r,n.nameEl.textContent=r}function Ux(e){let t=k(e);t&&(zc(t),Ot(A,_x(t)),O.delete(D(e)),Lt(D(e),void 0),ax?.dropPlanBodyCache(D(e)),t.resizeObserver&&t.resizeObserver.disconnect(),t.abortController&&t.abortController.abort(),zb(t,D(e)),my(t),t.term&&t.term.dispose(),t.term=null,t.fitAddon=null,t.card&&t.card.remove(),vx())}function Wx(e,t,n){if(!t||!e.term)return;let r=n===x.DONE?`Session complete`:`Session failed`,i=n===x.DONE?`\x1B[34m`:`\x1B[31m`;e.term.write(`\r\n\r\n\x1b[2m${i} ${r}\x1b[0m\r\n\r\n\x1b[2m Open the session actions menu and choose Restart to start a new session.\x1b[0m\r\n`)}function Gx(e,t){let n=k(e);n?tc(n).show(`error`,t):R({source:`Session`,sessionId:typeof e==`string`?e:void 0,message:t})}function Kx(e,t){let n=k(e);if(!n)return;let r=n.card.querySelector(`:scope > .session-failure-reason`);if(!(n.currentState===x.FAILED&&t)){r?.remove();return}let i=r??w(`p`,`session-failure-reason`);i.setAttribute(`role`,`status`),i.textContent=t,r||n.termWrap.before(i)}function qx(e,t){e.term&&(t===x.DONE||t===x.FAILED)&&(e.term.clear(),e.term.reset())}function Jx(e){let t=O.get(e);t&&wt({state:t.currentState,unseenOutcome:t.unseenOutcome})&&document.visibilityState===`visible`&&(_u()||document.hasFocus())&&E({type:`dismiss`,id:e,expectedState:t.currentState})}function Yx(e,t,n){let r=document.activeElement;return El({previousState:t,nextState:n,isPhoneLayout:_u(),isDocumentVisible:document.visibilityState===`visible`,isDocumentFocused:document.hasFocus(),isActiveViewer:e._isActiveViewer?.()===!0,hasFocusInsideTerminal:r instanceof Node&&e.termWrap.contains(r)})}function Xx(){return Pr()&&!Zh()}function Zx(e,t,n,r=``){let i=k(e);if(!i)return;let a=Zb(t),o=i.currentState;Ot(A,_x(i)),i.currentState=a,_t(A,_x(i)),Lt(D(e),i),a!==x.RUNNING&&(i.awaitingBackgroundTasks=!1),a!==o&&(i.stateSince=typeof n==`number`&&Number.isFinite(n)?n:Date.now(),It(i,a===x.RUNNING)),o===x.DORMANT&&a!==x.DORMANT&&Kb(i,D(e)),kt({state:a})===`resting`&&Yh(D(e)),i.card.dataset.state=a,i.card.toggleAttribute(`data-monitoring`,Ve(a,i.awaitingBackgroundTasks)),lx(i),(a===x.WAITING&&o!==x.WAITING||a===x.COMPLETE&&o!==x.COMPLETE)&&!tu(r)&&Xx()&&ix(),Yx(i,o,a)&&E({type:`dismiss`,id:D(e),expectedState:x.COMPLETE});let s=a===x.DONE||a===x.FAILED,c=o!==x.DONE&&o!==x.FAILED&&o!==x.INITIALIZING;s&&c&&(i.card.classList.remove(`completion-flash`),requestAnimationFrame(()=>{requestAnimationFrame(()=>{i.card.classList.add(`completion-flash`),i.card.addEventListener(`animationend`,()=>i.card.classList.remove(`completion-flash`),{once:!0})})}),Xx()&&ix()),(a===x.DONE||a===x.FAILED)&&Wx(i,c,a),a===x.INITIALIZING&&qx(i,o),vx()}var Qx=`(no path)`;function $x(e){if(!e)return Qx;let t=String(e).replace(/[/\\]+$/,``),n=Math.max(t.lastIndexOf(`/`),t.lastIndexOf(`\\`));return(n===-1?t:t.slice(n+1))||`(no path)`}function eS(e,t,n){let r=Array.isArray(e)?e:[],i=new Map;for(let e of r){let n=t(e),r=n?String(n):Qx,a=i.get(r);a||(a={key:r,label:r===`(no path)`?Qx:$x(r),title:r,rows:[]},i.set(r,a)),a.rows.push(e)}if(n)for(let e of n){if(!e)continue;let t=String(e);t===`(no path)`||i.has(t)||i.set(t,{key:t,label:$x(t),title:t,rows:[]})}let a=[...i.values()];return a.sort((e,t)=>e.label.localeCompare(t.label,void 0,{numeric:!0,sensitivity:`base`})||e.key.localeCompare(t.key)),{flat:i.size<=1,order:a.map(e=>e.key),groups:a}}function tS(e,t){if(!e||!Array.isArray(e.groups))return[];let n=t||new Set,r=[];if(e.flat){for(let t of e.groups)for(let e of t.rows)r.push(e.id);return r}let i=new Map(e.groups.map(e=>[e.key,e]));for(let t of e.order){if(n.has(t))continue;let e=i.get(t);if(e)for(let t of e.rows)r.push(t.id)}return r}function nS({onAdd:e,onForget:t}){let n=w(`div`,`session-group-header`),r=w(`span`,`session-group-label`),i=w(`span`,`session-group-count`),a=w(`span`,`session-group-rule`);a.setAttribute(`aria-hidden`,`true`);let o=w(`button`,`session-group-add`,`+`);o.type=`button`,o.addEventListener(`click`,()=>e(n.dataset.path,n.dataset.label));let s=w(`button`,`session-group-forget`);return s.type=`button`,s.append(L(Jo)),s.addEventListener(`click`,()=>t(n.dataset.path)),n.append(r,i,a,s,o),{header:n,label:r,count:i,addButton:o,forgetButton:s}}function rS(e,t,n){let{header:r,label:i,count:a,addButton:o,forgetButton:s}=e,c=t.key===Qx,l=t.rows.length===0;Wo(r,`path`,t.key),Wo(r,`label`,t.label),I(r,`title`,t.title),r.toggleAttribute(`data-empty`,l),F(i,t.label),F(a,String(t.rows.length)),I(a,`title`,`${t.rows.length} ${t.rows.length===1?`session`:`sessions`}`),Uo(o,c),Uo(s,c||!l),c||(I(o,`title`,`Add a session to ${t.label}`),I(o,`aria-label`,`Add a session to ${t.label}`)),!c&&l&&(I(s,`title`,`Remove ${t.label} from the ${n}`),I(s,`aria-label`,`Remove ${t.label} from the ${n}`))}var iS={waitingCount:0,finishedCount:0,failedCount:0},aS={failed:Fe[x.FAILED],waiting:Fe[x.WAITING],finished:Fe[x.COMPLETE]},oS={failed:`failed`,waiting:`needs you`,finished:`finished`},sS=[`NI.`,`THIS QUEUE IS DECEASED`,`AND NOW, NOTHING AT ALL`,`TOUCH GRASS, BRIEFLY`,`GO STRETCH`,`THE AGENTS ARE COPING`,`MORALE IS ADEQUATE`,`REQUIESCAT`,`STANDARDS ARE BEING MET`,`THE AGENTS WANT SPACE`,`NO CAUSE FOR ALARM`,`KINDLY GO AWAY`,`THEY COPE WITHOUT YOU`,`PRESS HARDER, PERHAPS`,`OH, WELL DONE`,`THAT DID NOTHING. AGAIN.`,`WELL. YOU TRIED.`,`SUBJECT PRESSED BUTTON`,`THE BUTTON WORKS. YOU?`,`WE HAVE NO PROBLEMS`,`THE LAWYERS SAY RELAX`,`BRING A TOWEL`],cS=2500,lS=`cubic-bezier(0.16, 1, 0.3, 1)`,uS=`cubic-bezier(0.5, 0, 0.2, 1)`,dS=260,fS=200,pS=200,mS=300,hS=28,gS=360,_S=420,vS=200,yS=3,bS=window.matchMedia?.(`(prefers-reduced-motion: reduce)`),xS=new WeakMap;function SS(e){let t=xS.get(e);if(!t)throw Error(`attention banner was not built by buildAttentionBanner`);return t}function CS(e){return!document.hidden&&typeof e.animate==`function`&&e.getClientRects().length>0}function wS(){return bS?.matches??!1}function TS(e){return e.map(e=>({easing:lS,...e}))}function ES(e,t){let n=w(`div`,`attention-banner`);n.setAttribute(`role`,`status`),n.style.setProperty(`--attention-head-tile-px`,`${Et.headTile}px`),n.style.setProperty(`--attention-tile-px`,`${Et.tile}px`),n.style.setProperty(`--attention-tile-gap-px`,`${Et.tileGap}px`),n.style.setProperty(`--attention-overflow-px`,`${Et.overflowSlot}px`);let r=w(`span`,`attention-banner-chips`),i=w(`span`,`attention-tile-overflow`);i.setAttribute(`aria-hidden`,`true`),i.hidden=!0,r.append(i);let a=w(`span`,`attention-banner-line`);a.setAttribute(`aria-hidden`,`true`);let o=w(`span`,`attention-banner-status`);o.append(r,w(`span`,`attention-banner-count`),a);let s=w(`button`,`attention-banner-jump-row`);return s.type=`button`,s.append(o),t&&(t.classList.add(`attention-banner-jump`),s.append(t)),n.addEventListener(`click`,()=>e.onJump()),n.append(s),xS.set(n,{hooks:e,tiles:[],tileById:new Map,headId:null,flyingIds:new Set,tetheredId:null,tetheredRow:null,lastAllClearLine:null,allClearLineTimer:null,pressAnimations:[]}),typeof ResizeObserver==`function`&&new ResizeObserver(()=>OS(n)).observe(r),DS(n,iS,[]),n}function DS(e,t,n){let r=SS(e);r.tiles=n,F(C(e,`.attention-banner-count`),vt(t));let i=n.length>0;e.toggleAttribute(`data-empty`,!i),e.toggleAttribute(`data-jumpable`,i),i&&WS(e,r),OS(e)}function OS(e){let t=SS(e),n=C(e,`.attention-banner-chips`),r=C(n,`.attention-tile-overflow`),i=CS(e),a=t.tiles.slice(0,bt(n.clientWidth,t.tiles.length)),o=new Set(a.map(({id:e})=>e)),s=new Map;if(i)for(let[e,n]of t.tileById)s.set(e,n.getBoundingClientRect().left);let c=[...t.tileById].filter(([e])=>!o.has(e)),l=c.map(([,e])=>({left:e.offsetLeft,top:e.offsetTop}));c.forEach(([e,n],r)=>{t.tileById.delete(e),t.flyingIds.has(e)||!i?n.remove():MS(n,l[r])});let u=t.headId,d=[],f=null;a.forEach((i,a)=>{let o=t.tileById.get(i.id),s=o??AS(e,i.id);o||(t.tileById.set(i.id,s),d.push(s)),jS(s,i,a===0),(s.parentElement!==n||kS(s)!==f)&&n.insertBefore(s,r),f=s});let p=t.tiles.length-a.length;Uo(r,p===0),F(r,`+${p}`),I(r,`title`,`${p} more after these`),t.headId=a[0]?.id??null;let m=t.tiles[0]?.kind;if(m&&(e.dataset.headKind=m),m||delete e.dataset.headKind,t.tetheredId&&!o.has(t.tetheredId)&&IS(e,null),i){for(let e of d)NS(e);a.forEach(({id:e},n)=>{let r=t.tileById.get(e),i=s.get(e);if(!r||i===void 0)return;let a=i-r.getBoundingClientRect().left;e===t.headId&&e!==u?FS(r,a):a!==0&&PS(r,a,n)})}}function kS(e){let t=e.previousElementSibling;for(;t?.hasAttribute(`data-leaving`);)t=t.previousElementSibling;return t}function AS(e,t){let n=w(`span`,`attention-tile`);n.setAttribute(`role`,`img`),n.dataset.id=t;let r=w(`span`,`attention-tile-icon`);return r.setAttribute(`aria-hidden`,`true`),n.append(r),n.addEventListener(`pointerenter`,()=>IS(e,t)),n.addEventListener(`pointerleave`,()=>IS(e,null)),n}function jS(e,{kind:t,name:n},r){e.dataset.kind=t,e.toggleAttribute(`data-head`,r);let i=`${n}, ${oS[t]}`;e.title=i,e.setAttribute(`aria-label`,i),cs(C(e,`.attention-tile-icon`),aS[t])}function MS(e,t){e.toggleAttribute(`data-leaving`,!0),e.style.left=`${t.left}px`,e.style.top=`${t.top}px`;let n=wS()?[{opacity:1},{opacity:0}]:TS([{transform:`none`,opacity:1},{transform:`scale(0.6)`,opacity:0}]),r=e.animate(n,{duration:pS,fill:`forwards`});r.onfinish=()=>e.remove(),r.oncancel=()=>e.remove()}function NS(e){let t=wS()?[{opacity:0},{opacity:1}]:TS([{transform:`scale(0.6)`,opacity:0},{transform:`none`,opacity:1}]);e.animate(t,{duration:fS})}function PS(e,t,n){wS()||e.animate(TS([{transform:`translateX(${t}px)`},{transform:`none`}]),{duration:mS,delay:n*hS,fill:`backwards`})}function FS(e,t){wS()?e.animate([{opacity:.35},{opacity:1}],{duration:gS,easing:lS}):e.animate(TS([{transform:`translateX(${t}px) scale(0.8)`,filter:`brightness(1.8)`},{transform:`scale(1.1)`,offset:.6},{transform:`none`,filter:`none`}]),{duration:gS})}function IS(e,t){let n=SS(e),r=t?n.tileById.get(t):void 0,i=r&&t?t:null;if(i===n.tetheredId||(n.tetheredId&&n.tileById.get(n.tetheredId)?.toggleAttribute(`data-tethered`,!1),n.tetheredRow?.toggleAttribute(`data-tethered`,!1),n.tetheredRow?.style.removeProperty(`--tether`),n.tetheredId=i,n.tetheredRow=null,!r||!i))return;r.toggleAttribute(`data-tethered`,!0);let a=n.hooks.rowFor(i);if(!a)return;let o=getComputedStyle(r).getPropertyValue(`--tile`).trim();o&&a.style.setProperty(`--tether`,o),a.toggleAttribute(`data-tethered`,!0),n.tetheredRow=a}function LS(e){return!e||e.getClientRects().length===0?null:e.getBoundingClientRect()}function RS(e,t,n){let r=SS(e);if(r.flyingIds.has(t))return;let i=r.tileById.get(t);if(!i||!CS(e)){n();return}IS(e,null),r.flyingIds.add(t);let a=r.hooks.rowFor(t),o=i.getBoundingClientRect(),s=LS(a?.querySelector(`.session-row-glyph`)??a),c=i.cloneNode(!0);if(!(c instanceof HTMLElement)){r.flyingIds.delete(t),n();return}c.classList.add(`attention-tile-ghost`),c.setAttribute(`aria-hidden`,`true`),c.removeAttribute(`aria-label`),c.tabIndex=-1,c.style.left=`${o.left}px`,c.style.top=`${o.top}px`,c.style.width=`${o.width}px`,c.style.height=`${o.height}px`,document.body.append(c),i.style.visibility=`hidden`;let l=c.animate(zS(o,s),BS(s)),u=()=>{c.remove(),r.flyingIds.delete(t),i.isConnected&&(i.style.visibility=``),n()};l.onfinish=u,l.oncancel=u}function zS(e,t){return!t||wS()?[{opacity:1},{opacity:0}]:[{transform:`none`,opacity:1},{transform:`translateY(-5px) scale(1.2)`,opacity:1,offset:.25},{transform:`translate(${t.left+t.width/2-(e.left+e.width/2)}px, ${t.top+t.height/2-(e.top+e.height/2)}px) scale(${Math.min(1,t.width/e.width)})`,opacity:.2}]}function BS(e){return!e||wS()?{duration:vS,fill:`forwards`}:{duration:_S,easing:uS,fill:`forwards`}}function VS(e){let t=SS(e);e.hasAttribute(`data-empty`)&&US(e,t);for(let e of t.pressAnimations)e.cancel();if(t.pressAnimations=[],!CS(e))return;let n={duration:dS};if(t.pressAnimations.push(e.animate(TS([{opacity:0},{opacity:.07,offset:.3},{opacity:0}]),{...n,pseudoElement:`::after`})),!wS()){t.pressAnimations.push(e.animate(TS([{transform:`none`},{transform:`scale(0.97) translateY(1px)`,offset:.3},{transform:`none`}]),n));for(let r of e.querySelectorAll(`.attention-banner-jump .kbd`))t.pressAnimations.push(r.animate(TS([{transform:`none`},{transform:`translateY(${yS}px)`,offset:.3},{transform:`none`}]),n),r.animate(TS([{transform:`none`},{transform:`translateY(-${yS}px)`,offset:.3},{transform:`none`}]),{...n,pseudoElement:`::after`}))}}function HS(e){let t=sS.filter(t=>t!==e);return t[Math.floor(Math.random()*t.length)]??sS[0]}function US(e,t){let n=HS(t.lastAllClearLine);t.lastAllClearLine=n,C(e,`.attention-banner-line`).textContent=n,e.toggleAttribute(`data-all-clear-line`,!0),t.allClearLineTimer!==null&&window.clearTimeout(t.allClearLineTimer),t.allClearLineTimer=window.setTimeout(()=>WS(e,t),cS)}function WS(e,t){t.allClearLineTimer!==null&&window.clearTimeout(t.allClearLineTimer),t.allClearLineTimer=null,e.toggleAttribute(`data-all-clear-line`,!1)}var GS=e=>e.ui.path,KS=window.matchMedia?.(`(prefers-reduced-motion: reduce)`),qS=null,J=null,JS=null,YS=null,XS=null,ZS=null,QS=null,Y=!1,$S=!1,eC=new Map,X=new Map,tC=new Map,nC=new Map,Z=null,rC=``,iC=[],aC=new Set;function oC(){return tS(cC(_C()),aC)}function sC(e){let t=Z;if(Z=e||null,t&&t!==Z){let e=X.get(t);e&&(e.tabIndex=-1,e.setAttribute(`aria-selected`,`false`))}if(Z){let e=X.get(Z);e&&(e.tabIndex=0,e.setAttribute(`aria-selected`,`true`))}}function cC(e){return eS(e,GS,Cl(e,GS))}function lC(e){let t=nC.get(e.key),n=tC.get(e.key);return(!t||!n)&&(t=nS({onAdd:ql,onForget:e=>{wl(e),wC()}}),n=w(`div`,`focus-rail-list`),n.setAttribute(`role`,`listbox`),nC.set(e.key,t),tC.set(e.key,n)),rS(t,e,`rail`),I(n,`aria-label`,`${e.label} sessions`),{header:t.header,list:n}}function uC(){return Y}function dC(){return j.snapshot().focusedSessionId}function fC({rail:e,center:t,resizer:n}){if(qS=e,JS=t,!qS||!JS)return;let r=qS,i=JS;hC(n),r.removeAttribute(`role`),r.removeAttribute(`aria-label`),r.setAttribute(`aria-keyshortcuts`,br(ld)),J=ES({onJump:OC,rowFor:e=>X.get(e)},hd());let a=w(`details`,`rail-status-key`);a.append(w(`summary`,`rail-status-key-summary`,`Status key`),vl()),r.append(J,a),XS=w(`div`,`focus-empty`),XS.innerHTML=`<p class="focus-empty-title"></p><p class="focus-empty-desc"></p>`,ZS=XS.querySelector(`.focus-empty-title`),QS=XS.querySelector(`.focus-empty-desc`),YS=w(`div`,`focus-card-slot`),i.append(XS,YS),r.addEventListener(`keydown`,gC)}var pC={minPx:180,maxPx:480},mC=16;function hC(e){e&&qS&&Po({resizer:e,column:qS,widthHost:qS,widthProperty:`--rail-width`,bounds:pC,keyStepPx:mC,getStoredWidth:Qr,setStoredWidth:$r})}function gC(e){if(e.key===`Delete`||e.key===`Backspace`){let t=e.target instanceof HTMLElement?e.target:null,n=t?.dataset.id;if(!n||X.get(n)!==t)return;e.preventDefault(),$l(n);return}if(e.key!==`ArrowDown`&&e.key!==`ArrowUp`||e.altKey||e.metaKey||e.ctrlKey||e.shiftKey)return;let t=ht(oC(),Z,e.key===`ArrowDown`?1:-1);t!=null&&(e.preventDefault(),sC(t),X.get(t)?.focus())}function _C(){return xt(zl(vC))}function vC(e){return e.nameEl?e.nameEl.textContent:e.card&&(e.card.dataset.session||e.card.dataset.id)||``}function yC(e){let{row:t,refs:n}=il(`button`);t.type=`button`,t.dataset.id=e,t.setAttribute(`role`,`option`),t.addEventListener(`click`,()=>bC(e)),t.addEventListener(`pointerenter`,()=>{J&&IS(J,e)}),t.addEventListener(`pointerleave`,()=>{J&&IS(J,null)});let{item:r,removeButton:i}=al(t,()=>$l(e));return r.setAttribute(`role`,`presentation`),i.tabIndex=-1,Object.assign(t,{_refs:n,_row:r})}function bC(e){let t=Il(e);t&&(PC(e),AC(t,e))}function xC(e,{id:t,ui:n,state:r,name:i},a){let o=eC.get(t)||`none`;fl(e,e._refs,{ui:n,state:r,name:i??``,mergeStatus:o===`none`?``:o,attentionPosition:a}),e.classList.toggle(`focused`,t===dC()),e.classList.toggle(`has-unopened-shown`,Ta(t));let s=t===Z;I(e,`aria-selected`,String(s)),I(e,`tabindex`,s?`0`:`-1`)}function SC(e,t){if(!Y)return;let n=e?.card?.dataset.id,r=n?X.get(n):null;r&&(t===`flag`?r.dataset.activity=e._activity||``:Vt(r._refs?.glyph))}Ft(SC),Ht((e,t)=>{if(!Y)return;let n=X.get(e);n&&F(n._refs.elapsed,Bt(t))});var CC=new Map;function wC(e){if(!Y)return;let t=qS;if(!t)return;let n=_C(),r=cC(n),i=new Set,a=St(n,dC()),o=new Map(a.map(({id:e},t)=>[e,t+1])),s=(t,n)=>{let r=t.map(e=>e.id).join(`,`),a=n._lastOrderKey===r&&n.childElementCount===t.length;for(let n of t){let{id:t}=n;i.add(t);let r=X.get(t),a=!r;r||(r=yC(t),X.set(t,r));let s=o.get(t)??null;(!e||a||e.has(t)||CC.get(t)!==s)&&xC(r,n,s),CC.set(t,s)}a||Ho(n,t.flatMap(({id:e})=>X.get(e)?._row??[])),n._lastOrderKey=r},c=new Set(r.order),l=r.groups.map(e=>e.key).join(`
|
|
76
|
+
`),i.append(t)}let a=t?e.worthALook:e.worthALook.slice(0,Td);if(a.length>0){let e=w(`div`,`review-look-list`);for(let t of a)e.append(Ed(t,r));i.append(e)}let o=e.worthALook.length-a.length;if(o===0)return i;let s=w(`div`,`review-look-more`),c=w(`button`,`review-look-show-all`,`Show all`);return c.type=`button`,c.addEventListener(`click`,n),s.append(w(`span`,`review-look-more-count`,`+${o} more`),c),i.append(s),i}function Od(e){return(e??[]).map(e=>{let t=w(`span`,`review-file-hint`,e.text);return t.title=e.title,t})}function kd(e){let t=/^@@+ -(\d+)(?:,\d+)? \+(\d+)(?:,\d+)? @@/.exec(e);if(!t)return null;let n=Number(t[1]),r=Number(t[2]);return!Number.isFinite(n)||!Number.isFinite(r)?null:{oldStart:n,newStart:r}}function Ad(e){let t=[];if(!e)return t;let n=String(e).split(/\r?\n/),r=null,i=null,a=null,o=null,s=()=>{if(a===null)return null;let e=a;return a=e+1,e},c=()=>{if(o===null)return null;let e=o;return o=e+1,e},l=e=>{let n={path:``,oldPath:null,status:`modified`,added:0,removed:0,binary:!1,hunks:[]};t.push(n),i=null;let r=/^diff --git a\/(.+?) b\/(.+)$/.exec(e);return r&&(n.oldPath=r[1]??null,n.path=r[2]??``),n};for(let e of n)if(e.startsWith(`diff --git `))r=l(e);else{if(!r){if(!e.startsWith(`--- `)&&!e.startsWith(`@@`))continue;r=l(`diff --git a/ b/`)}if(r){if(e.startsWith(`new file mode`))r.status=`added`;else if(e.startsWith(`deleted file mode`))r.status=`deleted`;else if(e.startsWith(`rename from `))r.oldPath=e.slice(12),r.status=`renamed`;else if(e.startsWith(`rename to `))r.path=e.slice(10),r.status=`renamed`;else if(e.startsWith(`Binary files`))r.binary=!0;else if(!(e.startsWith(`index `)||e.startsWith(`similarity index`)||e.startsWith(`dissimilarity index`)||e.startsWith(`old mode`)||e.startsWith(`new mode`))){if(e.startsWith(`--- `)){if(e===`--- /dev/null`){r.status=`added`;continue}if(!r.path){let t=e.slice(4).replace(/^a\//,``);t&&t!==`/dev/null`&&(r.oldPath=r.oldPath||t)}}else if(e.startsWith(`+++ `)){if(e===`+++ /dev/null`){r.status=`deleted`;continue}if(!r.path){let t=e.slice(4).replace(/^b\//,``);t&&t!==`/dev/null`&&(r.path=t)}}else if(e.startsWith(`@@`)){i={header:e,lines:[]},r.hunks.push(i);let t=kd(e);a=t?t.oldStart:null,o=t?t.newStart:null}else if(i){if(e===``)continue;let t=e[0];if(t===`+`){i.lines.push({type:`add`,text:e.slice(1),oldLineNumber:null,newLineNumber:c()}),r.added++;continue}if(t===`-`){i.lines.push({type:`del`,text:e.slice(1),oldLineNumber:s(),newLineNumber:null}),r.removed++;continue}if(t===`\\`){i.lines.push({type:`meta`,text:e.slice(1).trim(),oldLineNumber:null,newLineNumber:null});continue}i.lines.push({type:`context`,text:t===` `?e.slice(1):e,oldLineNumber:s(),newLineNumber:c()})}}}}for(let e of t)e.path||=e.oldPath||`(unknown)`;return t}function jd(e,t){return t===`merged`||t===`none`||e===`parked`&&t===`pending-review`}function Md(e){let t=0,n=0;for(let r of e||[])t+=r.added||0,n+=r.removed||0;return{files:(e||[]).length,added:t,removed:n}}function Nd({changedFileCount:e,hasCommits:t,canMerge:n,isWorkspace:r,live:i,effectiveBase:a}){let o=`${e} file${e===1?``:`s`} changed`,s=(t,n)=>e>0?`${o}, ${t}`:n;if(r)return{text:e>0?`${o} in this worktree`:`Changes in this worktree`,namesMergeTarget:!1};if(n){let e=Rd(a);return{text:s(`ready to merge into ${e}`,`Ready to merge into ${e}`),namesMergeTarget:!0}}return i?t?{text:s(`not ready to merge`,`Not ready to merge`),namesMergeTarget:!1}:{text:s(`not committed yet`,`Not committed yet`),namesMergeTarget:!1}:{text:s(`session ended`,`Session ended`),namesMergeTarget:!1}}function Pd({status:e,mergeReason:t,fetched:n,hasDiffError:r,hasChanges:i,hasCommits:a,canMerge:o,isWorkspace:s,live:c,effectiveBase:l,changedFileCount:u=0}){return e===`parked`&&t===`base-diverged`?{text:`Parked: base branch diverged`,namesMergeTarget:!1}:e===`parked`?{text:`Parked: merge conflict`,namesMergeTarget:!1}:e===`merging`?{text:`Merging`,namesMergeTarget:!1}:e===`merged`?{text:`Merged`,namesMergeTarget:!1}:r?{text:`Could not read changes`,namesMergeTarget:!1}:n?i?Nd({changedFileCount:u,hasCommits:a,canMerge:o,isWorkspace:s,live:c,effectiveBase:l}):{text:`No changes yet`,namesMergeTarget:!1,isEmpty:!0}:{text:`Checking for changes`,namesMergeTarget:!1}}function Fd(e,t){return e?`Edits this session makes in its worktree show up here.`:`Edits this session makes show up here, ready to merge into ${Rd(t)}.`}function Id(e,t){return e.namesMergeTarget?null:`merges into ${Rd(t)}`}function Ld({status:e,mergeReason:t,live:n,isMergeRendered:r,hasChanges:i}){return e===`parked`&&n&&t!==`base-diverged`?`resolve`:!i&&e!==`parked`&&e!==`merging`?`none`:r?`merge`:`none`}function Rd(e){return e||`base`}function zd(e,t){return`Merge into ${Rd(e)}, push it, and rebase this worktree, then keep working (${t})`}function Bd(e){return e===`base-diverged`?`Resync the base branch by hand, then Merge again.`:`Needs manual merge`}function Vd(e,t,n){let r=e!==`parked`||e===`parked`&&t===`base-diverged`;return{isRendered:r,isEnabled:r&&e!==`merging`&&n}}function Hd({status:e,hasCommits:t,live:n,state:r}){return e===`merging`?null:t?!n&&(e===`parked`||e===`merged`)?`Session ended.`:!n||e===`parked`?null:r===`INITIALIZING`||r===`STARTING`?`Starting up. Mergeable once the session is live.`:null:n?`Nothing is committed yet. Merge opens once the session commits.`:null}function Ud(e){return e.map(e=>{let t=e.member?`${e.member}/ `:``,n=ee(e.sha);return!e.verified||!e.ref?{text:`${t}vs ${n}, base branch not found`,fullSha:e.sha,isUnverified:!0}:{text:`${t}vs ${e.ref} @ ${n}`,fullSha:e.sha,isUnverified:!1}})}function Wd({fetched:e,changedFileCount:t,hasCommits:n}){return!e||t>0||n}function Gd(e){return e||`its upstream`}function Kd(e){if(!e)return null;let t=e.branch||`Base branch`,{state:n,ahead:r,behind:i}=e,a=Gd(e.upstream);return n===`no-upstream`?`${t}: no upstream`:n===`unknown`&&e.error&&e.action===void 0?`${t}: sync check failed: ${e.error}`:n===`unknown`?`${t}: sync state unknown vs ${a}`:n===`in-sync`?`${t}: in sync with ${a}`:n===`ahead`?`${t}: ${r} ahead of ${a}`:n===`behind`?`${t}: ${i} behind ${a}`:n===`diverged`?`${t}: ${r} ahead, ${i} behind ${a}`:null}function qd(e){return!e||e.fetched===!1?`recheck`:e.state===`ahead`||e.state===`behind`?`resync`:`recheck`}function Jd(e,t,n){let r=n?` (${t})`:``;if(!e||qd(e)===`recheck`)return`Click to fetch and check again${r}`;let i=e.branch||`Base branch`,a=Gd(e.upstream);return e.state===`behind`?`Click to fast-forward ${i} to ${a}${r}`:`Click to push ${i} to ${a}${r}`}function Yd(e){return e?.state!==`in-sync`||e.fetched===!1}function Xd(e){if(e.error)return`Resync failed: ${e.error}`;let t=e.branch||`The base branch`,n=Gd(e.upstream);return e.action===`fast-forwarded`?`Fast-forwarded ${t} to ${n}.`:e.action===`pushed`?`Pushed ${t} to ${n}.`:e.state===`diverged`?`${t} has diverged from ${n}. Resolve manually.`:e.state===`in-sync`?null:e.state===`no-upstream`?`${t} has no upstream to resync against.`:`Could not determine sync status.`}var Zd=new Set([`pending-review`,`parked`]),Qd=600,$d=yr(`merge`,ld),ef=yr(`resolve-or-resync`,ld),tf={minPx:260,maxPx:700},nf=16,rf=5e3,af=new Map,of=new Map,sf=new Map,cf=new Map,lf=new Map,uf=new Map,df=new Set,ff=new WeakMap,pf=new WeakMap,mf=new Set,hf=new Set,gf=!1,_f=null,vf=null,V=null,H=null,yf=null,bf=null,xf=null,Sf=null,Cf=null,wf=!1,Tf=null,Ef=null,Df=null,Of=null,kf=new Map,U=null,Af=null;function jf(e,t){let n=w(`button`,`review-icon-button`);return n.type=`button`,n.title=e,n.setAttribute(`aria-label`,e),n.append(L(t)),n}function Mf(){wf=!1,V?.querySelector(`.review-more-menu`)?.remove(),V?.querySelector(`.review-more-button`)?.setAttribute(`aria-expanded`,`false`)}function Nf({panel:e}){if(vf=e,!vf)return;let t=vf,n=w(`div`,`review-sidebar-head`),r=w(`span`,`review-sidebar-title`,`Review`);Cf=w(`span`,`review-sidebar-session`),r.append(Cf);let i=e=>{t.toggleAttribute(`data-collapsed`,e),ti(!e)},a=jf(`Close review`,`M6 3L11 8L6 13`);a.classList.add(`review-sidebar-close`),a.addEventListener(`click`,()=>i(!0)),n.append(r,a);let o=w(`div`,`review-sidebar-rail`),s=jf(`Open review`,`M10 3L5 8L10 13`);s.classList.add(`review-sidebar-open`),s.addEventListener(`click`,()=>i(!1)),bf=w(`div`,`review-rail-status`),xf=w(`span`,`review-rail-added`),Sf=w(`span`,`review-rail-removed`),bf.append(xf,Sf),yf=w(`span`,`review-rail-label`,`Review`),o.append(s,yf,bf),V=w(`div`,`review-controls`),H=w(`div`,`review-sidebar-body`);let c=w(`div`,`review-resize-handle`);c.setAttribute(`role`,`separator`),c.setAttribute(`aria-orientation`,`vertical`),c.setAttribute(`aria-label`,`Resize review sidebar`),c.tabIndex=0,t.append(o,n,V,H,c),t.toggleAttribute(`data-collapsed`,!ei()),Ff(H),document.addEventListener(`keydown`,e=>{e.key===`Escape`&&wf&&(e.preventDefault(),Mf(),V?.querySelector(`.review-more-button`)?.focus())}),document.addEventListener(`pointerdown`,e=>{wf&&e.target instanceof Element&&(V?.contains(e.target)&&e.target.closest(`.review-more-button, .review-more-menu`)||Mf())}),Po({resizer:c,column:t,widthHost:t,widthProperty:`--sidebar-width`,bounds:tf,keyStepPx:nf,getStoredWidth:Ei,setStoredWidth:Di,growsLeftward:!0}),Fl(e=>{wf=!1,Df=null,mf.clear(),hf.clear(),gf=!1,_f=null,e&&cp(e),e&&!up(e)&&dp(e),W()}),W()}function Pf(e,t){let n=af.get(e);af.set(e,t),jd(n,t)&&(sf.delete(e),cf.delete(e),lf.delete(e),e===B()&&lp(e)),e===B()&&W()}function Ff(e){let t=!1,n=null,r=null,i=e=>E({type:`watch-session-changes`,id:e}),a=()=>{let e=t&&document.visibilityState===`visible`?B():null;e!==n&&(r&&clearInterval(r),r=null,n=e,i(e),e&&(r=setInterval(()=>i(e),ge)))};new IntersectionObserver(e=>{t=e[e.length-1]?.isIntersecting??!1,a()}).observe(e),document.addEventListener(`visibilitychange`,a),Fl(a)}function If(e){vf&&(e?(Ue(vf,e),W()):(ze(vf),W()))}function Lf(e,t,n=null){let r=t||`none`;of.set(e,n);let i=kf.get(e);i!==void 0&&i!==r&&kf.delete(e),Pf(e,r)}function Rf(e){let t=D(e);t&&kf.delete(t)&&t===B()&&W()}function zf(e,t,n=null){of.set(e,n),kf.delete(e),Pf(e,t||`none`)}function Bf(e,t){sf.set(e,t),cf.delete(e),e===B()&&(_f&&_p(_f,t),W(),vp())}function Vf(e,t){let n=D(e);n&&(cf.set(n,t),n===B()&&W())}function Hf(e,t){let n=D(e);if(!n)return;let r=_.safeParse(t);r.success&&r.data.sessionId===n&&(lf.set(n,r.data),n===B()&&W())}function Uf(e,t){let n=D(e),r=t;uf.set(n,r),r&&r.action!==void 0&&Wf(n,r),n===B()&&W()}function Wf(e,t){df.delete(e),clearTimeout(Af??void 0),Af=null;let n=Xd(t);U=n?{forId:e,text:n,isError:!!t.error}:null,U&&!U.isError&&(Af=setTimeout(()=>{U&&U.forId===e&&(U=null),W()},5e3))}function Gf(e){let t=D(e);t&&t===B()&&cp(t)}function Kf(e){let t=D(e);if(t!==B())return;let n=!sf.has(t)||cf.has(t),r=!lf.has(t)||qf(lf.get(t));n&&cp(t),r&&!n&&lp(t),W()}function qf(e){return e?!!e.error||e.repos.some(e=>e.error!==null):!1}function Jf(e){let t=D(e);af.delete(t),of.delete(t),sf.delete(t),cf.delete(t),lf.delete(t),uf.delete(t),df.delete(t),U&&U.forId===t&&(clearTimeout(Af??void 0),U=null),t===B()?Pl(null):W()}function Yf(){let e=B(),t=e?O.get(e):null;if(!e||!t)return Xf(null,`No session is open to merge.`);if(up(e))return Xf(e,`A workspace session has no worktree to merge.`);if(kf.has(e))return Xf(e,`Merge is already on its way for "${gp(t,e)}".`);let n=af.get(e)||`none`,r=!!sf.get(e)?.hasCommits,i=Vd(n,of.get(e)||null,ip(t.currentState,r));return Ld({status:n,mergeReason:of.get(e)||null,live:sp(t.currentState),isMergeRendered:i.isRendered,hasChanges:rp(e)})!==`merge`||!i.isEnabled?Xf(e,Hd({status:n,hasCommits:r,live:sp(t.currentState),state:t.currentState})??`Nothing to merge in "${gp(t,e)}" right now.`):(ap(e,t.currentState),!0)}function Xf(e,t){return Df={forId:e,text:t},clearTimeout(Of??void 0),Of=setTimeout(()=>{Df=null,W()},rf),W(),!1}function Zf(){let e=B();if(!e||up(e))return!1;let t=O.get(e);if(!t)return!1;let n=af.get(e)||`none`,r=of.get(e)||null;return Ld({status:n,mergeReason:r,live:sp(t.currentState),isMergeRendered:Vd(n,r,!1).isRendered,hasChanges:rp(e)})!==`resolve`||Qf(e)?!1:($f(e),!0)}function Qf(e){return Tf?.forId===e&&!Tf.isError}function $f(e){let t=E({type:`resolve-session-merge`,id:e});Tf=t?{forId:e,text:`Resolve prompt sent`,isError:!1}:{forId:e,text:`Not connected. The resolve prompt was not sent.`,isError:!0},clearTimeout(Ef??void 0),Ef=setTimeout(()=>{Tf=null,W()},t?3e3:rf),W()}function ep(){let e=B();return!e||!O.has(e)||up(e)||pp(e)?!1:(mp(e),!0)}function tp(e){if(!e)return{committed:[],uncommitted:[]};let t=ff.get(e);if(t)return t;let n={committed:Ad(e.committed?.diff||``),uncommitted:Ad(e.uncommitted?.diff||``)};return ff.set(e,n),n}function np(e){let t=pf.get(e);if(t)return t;let n=Cd(e);return pf.set(e,n),n}function rp(e){let t=tp(sf.get(e)),n=[...t.committed,...t.uncommitted],r=sf.get(e)??null;return Wd({fetched:sf.has(e),changedFileCount:Md(n).files,hasCommits:!!r?.hasCommits})}function ip(e,t){return(Ge.includes(e)||e===x.RUNNING)&&t}function ap(e,t){t===x.RUNNING?At({title:`Merge while working`,message:`This session still looks like it is working. Merging rebases its worktree under it. Merge anyway?`,confirmLabel:`Merge anyway`,onConfirm:()=>op(e,!0)}):op(e,!1)}function op(e,t){kf.has(e)||(E(t?{type:`merge-continue-session`,id:e,force:!0}:{type:`merge-continue-session`,id:e})?(kf.set(e,af.get(e)||`none`),e===B()&&W()):Xf(e,`Not connected. The merge was not sent.`))}function sp(e){return e!==x.DORMANT&&e!==x.DONE&&e!==x.FAILED}function cp(e){E({type:`request-session-diff`,id:e}),lp(e)}function lp(e){lf.has(e)||lf.set(e,null),E({type:`request-change-map`,id:e})}function up(e){return O.get(e)?.card.dataset.workspace!==void 0}function dp(e){uf.set(e,null),E({type:`request-branch-sync`,id:e}),e===B()&&W()}function fp(e){df.add(e),clearTimeout(Af??void 0),U&&U.forId===e&&(U=null),E({type:`resync-branch`,id:e}),e===B()&&W()}function pp(e){return df.has(e)||uf.get(e)===null}function mp(e){pp(e)||(qd(uf.get(e))===`resync`?fp(e):dp(e))}function hp(e,t){return t?{text:`Resyncing`,loading:!0,error:!1}:U&&U.forId===e?{text:U.text,loading:!1,error:U.isError}:null}function gp(e,t){return e?.card?.dataset.session||t}function _p(e,t){if(!t)return;let{committed:n,uncommitted:r}=tp(t);for(let t of n)(t.path===e||t.oldPath===e)&&mf.add(`committed:${t.path}`);for(let t of r)(t.path===e||t.oldPath===e)&&mf.add(`uncommitted:${t.path}`)}function vp(){if(!H||!_f)return;let e=H.querySelectorAll(`.review-file`);for(let t of e)if(t.dataset.path===_f||t.dataset.oldPath===_f){t.scrollIntoView({block:`nearest`}),_f=null;return}}function yp(e){_f=e,_p(e,sf.get(B()??``)),W(),vp()}function bp(){gf=!0,W()}function W(){let e=H?.scrollTop??0;xp(),H&&(H.scrollTop=e)}function xp(){if(!V||!H)return;V.replaceChildren(),H.replaceChildren(),yf&&(yf.hidden=!0),bf&&(bf.hidden=!0);let e=B(),t=e?O.get(e):null;if(Cp(e,t),!e||!t){Df&&V.append(Sp(Df.text,!0)),wp(`No session selected`,`Click a session name to review its changes here.`);return}let n=up(e),r=af.get(e)||`none`,i=of.get(e)||null,a=t.currentState,o=Zd.has(r),s=sf.has(e),c=s?sf.get(e):null,l=cf.get(e)??null,{committed:u,uncommitted:d}=tp(c),f=!!c?.hasCommits,p=sp(a),m=Vd(r,i,ip(a,f)),h=uf.get(e),g=df.has(e),_=Rd(t.effectiveBase),v=Md([...u,...d]),ee=Ld({status:r,mergeReason:i,live:p,hasChanges:Wd({fetched:s,changedFileCount:v.files,hasCommits:f}),isMergeRendered:m.isRendered}),te=Pd({status:r,mergeReason:i,fetched:s,hasDiffError:l!==null,hasChanges:v.files>0||f,hasCommits:f,canMerge:!n&&m.isEnabled,isWorkspace:n,live:p,effectiveBase:_,changedFileCount:v.files}),ne=te.isEmpty===!0,re=ne||_u()||Yd(h),y=w(`div`,`review-status-headline`);if(y.append(w(`span`,`review-status-text`,te.text)),!n&&!re){let t=Kd(h);if(t){y.title=t;let n=jf(`Refresh branch sync`,`M13 6A5 5 0 1 0 13 10M13 2v4H9`);n.classList.add(`review-branch-sync-refresh`),n.title=Jd(h,ef,ee!==`resolve`),n.disabled=pp(e),n.setAttribute(`aria-description`,t),n.addEventListener(`click`,()=>mp(e)),y.append(w(`span`,`sr-only`,t),n)}}if(ne||V.append(y),u.length>0)for(let e of Ud(c?.bases??[])){let t=w(`div`,e.isUnverified?`review-diff-base review-diff-base-unverified`:`review-diff-base`,e.text);t.title=e.fullSha,V.append(t)}let ie=w(`div`,`review-status-meta`);if(s&&v.files>0&&ie.append(w(`span`,`review-status-added`,`+${v.added}`),w(`span`,`review-status-removed`,`-${v.removed}`),w(`span`,`review-status-spacer`)),!n&&re){let t=Tp(e,ee!==`resolve`);t&&ie.append(t)}ie.childElementCount>0&&V.append(ie),r===`parked`&&V.append(w(`div`,`review-status-explanation`,Bd(i))),yf&&(yf.hidden=!1),bf&&(bf.hidden=!1,bf.setAttribute(`aria-label`,`${te.text}, +${v.added}, -${v.removed}`),bf.title=te.text),xf&&(xf.textContent=`+${v.added}`),Sf&&(Sf.textContent=`-${v.removed}`);let ae=n?null:Ap(e,{status:r,reviewable:o,mergeAction:m,live:p,state:a,effectiveBase:_,primaryAction:ee});ae&&V.append(ae);let oe=n?null:hp(e,g),se=!n&&ee===`merge`&&!m.isEnabled?Hd({status:r,hasCommits:f,live:p,state:a}):null;if(se){let e=w(`div`,`review-control-reason`,se);e.id=`review-merge-reason`,V.append(e),V.querySelector(`#review-merge-btn`)?.setAttribute(`aria-describedby`,e.id)}if(oe?.text){let e=w(`div`,oe.loading?`review-control-reason review-loading`:`review-control-reason`,oe.text);e.id=`review-resync-reason`,oe.error&&e.classList.add(`review-control-reason-error`),e.setAttribute(`role`,`status`),ie.append(e),ie.isConnected||V.insertBefore(ie,y.isConnected?y.nextSibling:V.firstChild),V.querySelector(`.review-branch-sync-button, .review-branch-sync-refresh`)?.setAttribute(`aria-describedby`,e.id)}if(Tf?.forId===e&&V.append(Sp(Tf.text,Tf.isError)),Df&&(Df.forId===e||Df.forId===null)&&V.append(Sp(Df.text,!0)),l){H.append(w(`p`,`review-diff-error`,l));return}if(ne){wp(te.text,Fd(n,_));return}let ce=lf.get(e),le=ce?np(ce):null,ue=le?Dd(le,{isShowingAll:gf,onShowAll:bp,onOpenFile:yp}):null;ue&&H.append(ue);let de=u.length>0&&d.length>0;u.length>0&&H.append(Ep({kind:`committed`,label:de?`Committed`:null,meaning:Id(te,_),files:u,changeMapView:le})),d.length>0&&H.append(Ep({kind:`uncommitted`,label:de?`Not committed yet`:null,meaning:null,files:d,changeMapView:le}))}function Sp(e,t){let n=w(`div`,t?`review-control-reason review-control-reason-error`:`review-resolve-sent`,e);return n.setAttribute(`role`,`status`),n}function Cp(e,t){if(!Cf)return;let n=e&&t?gp(t,e):``;Cf.textContent=n,Cf.hidden=!n,Cf.title=n}function wp(e,t){if(!H)return;let n=w(`div`,`review-empty`);n.append(w(`div`,`review-empty-title`,e),w(`div`,`review-empty-desc`,t)),H.append(n)}function Tp(e,t){let n=uf.get(e);if(n===void 0)return null;if(n===null)return w(`span`,`review-branch-sync-text review-loading`,`Checking branch sync...`);let r=Kd(n)||`Base branch: sync state unknown`,i=w(`span`,`review-branch-sync-text`);n.state&&(i.dataset.syncState=n.state),n.fetched===!1&&(i.dataset.stale=`true`);let a=jf(`Refresh branch sync`,`M13 6A5 5 0 1 0 13 10M13 2v4H9`);return a.classList.add(`review-branch-sync-button`),a.title=Jd(n,ef,t),a.disabled=df.has(e),a.addEventListener(`click`,()=>mp(e)),i.append(a,w(`span`,`review-branch-sync-label`,r)),i}function Ep({kind:e,label:t,meaning:n,files:r,changeMapView:i}){let a=w(`div`,`review-section`);a.dataset.kind=e,t&&a.append(Dp(t,n,r));let o=w(`div`,`review-diff`),s=i&&i.repos.length>1?i.repos:[],c=null;for(let t of r){let n=s.length>0?wd(s,t.path):null;n&&n!==c&&o.append(w(`div`,`review-repo-label`,n)),c=n,o.append(Op(t,e,i))}return a.append(o),a}function Dp(e,t,n){let r=Md(n),i=w(`div`,`review-section-head`),a=w(`div`,`review-section-id`);a.append(w(`span`,`review-section-label`,e)),t&&a.append(w(`span`,`review-section-meaning`,t));let o=w(`div`,`review-section-stat`);return o.append(w(`span`,`review-stat-files`,`${r.files} file${r.files===1?``:`s`}`),w(`span`,`review-add`,`+${r.added}`),w(`span`,`review-del`,`-${r.removed}`)),i.append(a,o),i}function Op(e,t,n){let r=`${t}:${e.path}`,i=mf.has(r),a=w(`div`,`review-file`);a.dataset.path=e.path,e.oldPath&&(a.dataset.oldPath=e.oldPath),a.dataset.status=e.status,a.dataset.open=i?`true`:`false`;let o=w(`button`,`review-file-head`);o.type=`button`,o.setAttribute(`aria-expanded`,i?`true`:`false`);let s=w(`span`,`review-file-twisty`,i?`▾`:`▸`);s.setAttribute(`aria-hidden`,`true`);let c=w(`span`,`review-file-name`);c.append(w(`span`,`review-file-path`,e.path));let l=Od(n?.hintsByOpenPath.get(e.path));if(l.length>0){let e=w(`span`,`review-file-hints`);e.append(...l),c.append(e)}o.append(s,c);let u=w(`span`,`review-file-counts`);if(e.binary&&u.append(w(`span`,`review-bin`,`bin`)),e.binary||u.append(w(`span`,`review-add`,`+${e.added}`),w(`span`,`review-del`,`-${e.removed}`)),o.append(u),o.addEventListener(`click`,()=>{let e=mf.has(r);e&&mf.delete(r),e||mf.add(r),W()}),a.append(o),!i)return a;let d=w(`div`,`review-file-body`);if(e.binary)return d.append(w(`div`,`review-file-binary`,`Binary file not shown`)),a.append(d),a;let f=0,p=!1;for(let t of e.hunks){if(f>=Qd&&!hf.has(r)){p=!0;break}d.append(w(`div`,`review-hunk-head`,t.header));for(let e of t.lines){if(f>=Qd&&!hf.has(r)){p=!0;break}let t=w(`div`,`review-line review-line-${e.type}`),n=e.type===`add`?`+`:e.type===`del`?`-`:e.type===`meta`?`\\`:` `;t.append(w(`span`,`review-line-gutter`,n)),t.append(w(`span`,`review-line-text`,e.text)),d.append(t),f++}if(p)break}if(p){let e=w(`button`,`review-expand`,`Show the rest of this file`);e.type=`button`,e.addEventListener(`click`,()=>{hf.add(r),W()}),d.append(e)}return a.append(d),a}function kp({id:e,label:t,shortcut:n,title:r,disabled:i=!1,danger:a=!1,onClick:o}){let s=w(`button`,a?`review-btn review-btn-danger`:`review-btn review-btn-primary`);return s.type=`button`,e&&(s.id=e),r&&(s.title=r),s.disabled=i,s.innerHTML=n?`${t} <kbd class="review-shortcut" aria-hidden="true">${n}</kbd>`:t,s.addEventListener(`click`,o),s}function Ap(e,{status:t,reviewable:n,mergeAction:r,live:i,state:a,effectiveBase:o,primaryAction:s}){let c=w(`div`,`review-actions`),l=s===`resolve`;s===`merge`&&c.append(kp({id:`review-merge-btn`,label:`Merge`,shortcut:$d,title:zd(o,$d),disabled:!r.isEnabled||kf.has(e),onClick:()=>ap(e,a)})),l&&c.append(kp({label:`Resolve`,shortcut:ef,title:`Paste a resolve prompt into this session so the agent can finish the merge (${ef})`,disabled:Qf(e),onClick:()=>$f(e)}));let u=w(`div`,`review-action-controls`);if(u.append(c),!n||i)return c.childElementCount>0?u:null;let d=jf(`More review actions`,Qo);if(d.classList.add(`review-more-button`),d.setAttribute(`aria-haspopup`,`menu`),d.setAttribute(`aria-expanded`,String(wf)),d.setAttribute(`aria-controls`,`review-more-menu`),d.addEventListener(`click`,()=>{wf=!wf,W(),(V?.querySelector(wf?`.review-more-menu button:not(:disabled)`:`.review-more-button`)??V?.querySelector(`.review-more-button`))?.focus()}),c.append(d),!wf)return u;let f=w(`div`,`review-more-menu`);if(f.id=`review-more-menu`,f.setAttribute(`role`,`menu`),f.setAttribute(`aria-label`,`More review actions`),n&&!i){let n=kp({label:`Discard worktree`,danger:!0,disabled:t===`merging`,onClick:()=>{wf=!1,W();let t=gp(O.get(e),e);At({title:`Discard worktree`,message:`Throw away the worktree changes for "${t}"? This cannot be undone.`,confirmLabel:`Discard`,danger:!0,onConfirm:()=>E({type:`discard-session-worktree`,id:e})})}});n.setAttribute(`role`,`menuitem`),f.append(n)}return u.append(f),u}var jp=160,Mp=Object.freeze({Bash:`command`,Read:`file_path`,Edit:`file_path`,MultiEdit:`file_path`,Write:`file_path`,NotebookEdit:`notebook_path`,Grep:`pattern`,Glob:`pattern`,WebFetch:`url`,WebSearch:`query`,Task:`description`,Agent:`description`,Skill:`skill`});function Np(e){let t=e.split(/\r?\n/,1)[0]?.trim()??``;return t.length<=jp?t:`${t.slice(0,157)}...`}function Pp(e,t){let n=Mp[e];if(!n||!t||typeof t!=`object`||Array.isArray(t))return``;let r=t[n];return typeof r==`string`?Np(r):``}var Fp=5e3;function Ip(e){let t=e.match(/<command-name>([^<]*)<\/command-name>/)?.[1];return t===void 0||/[\r\n]/.test(t)?null:t.trim()||null}function Lp(e,t){if(!e.toolUseId)return Ip(e.text)??`context`;let n=t.get(e.toolUseId);return n?Pp(n.name,n.input)||n.name:`expansion`}function Rp(e){return e.kind!==`expansion`||e.toolUseId?!1:Ip(e.text)!==null}function zp(e){return e.kind===`prompt`||e.kind===`session`||Rp(e)}function Bp(e){return new TextEncoder().encode(e).byteLength}var Vp={prompt:`PROMPT`,expansion:`EXPANSION`,thinking:`THINKING`,assistant:`ASSISTANT`,tool_call:`TOOL`,tool_result:`RESULT`,session:`SESSION`,notice:`NOTICE`,raw:`RAW`};function Hp(e,t){if(e.kind===`prompt`)return{prefix:`Prompt: `,text:Np(e.text)};if(e.kind===`thinking`)return{prefix:`Thinking: `,text:Np(e.text)};if(e.kind===`assistant`)return{prefix:`Assistant: `,text:Np(e.text)};if(e.kind===`notice`)return{prefix:`Notice: `,text:Np(e.text)};if(e.kind===`raw`)return{prefix:`Raw: `,text:Np(e.line)};if(e.kind===`session`)return{prefix:`Session: `,text:`${e.vendor} ${e.vendorSessionId}`};if(e.kind===`expansion`)return{prefix:`Expansion: `,text:Lp(e,t)};if(e.kind===`tool_call`){let t=Pp(e.name,e.input);return t?{prefix:`${e.name}: `,text:t}:{prefix:``,text:e.name}}return{prefix:`${t.get(e.toolUseId)?.name??`Tool`} result: `,text:`${Bp(e.content)} bytes`}}function Up(e){if(!e.agentType)return``;let t=e.agentId?` ${e.agentId.slice(-6)}`:``;return`[${e.agentType}${t}] `}function Wp(e,t){let n=Hp(e,t),r=Up(e),i=e.kind===`tool_call`||e.kind===`tool_result`?`${n.prefix}${n.text}`:n.text,a=[],o=e.kind===`notice`?`muted`:`default`;if(e.kind===`tool_result`&&e.isError&&(o=`error`,a.push(`error`)),e.truncated===!0&&(o!==`error`&&(o=`muted`),a.push(`truncated`)),e.kind===`tool_result`){let n=t.get(e.toolUseId),r=n?e.ts-n.ts:NaN;Number.isFinite(r)&&r>=0&&a.push(r>1e3?`${(r/1e3).toFixed(1)}s`:`${Math.round(r)}ms`)}return{kind:e.kind,tag:Vp[e.kind],text:`${r}${i}`,tone:o,badges:a}}function Gp(e,t){return{record:e,...Wp(e,t)}}function Kp(e){return e.kind!==`tool_result`&&e.kind!==`expansion`?null:e.toolUseId||null}function qp(e,t){let n=Kp(e);return!n||t.has(n)?null:n}function Jp(e,t,n=1){e.set(t,(e.get(t)??0)+n)}function Yp(e,t){let n=(e.get(t)??0)-1;n>0?e.set(t,n):e.delete(t)}function Xp(e,t){if(t.size!==0)for(let n of e.turns)for(let r=0;r<n.rows.length;r+=1){let i=n.rows[r],a=Kp(i.record);a&&t.has(a)&&(n.rows[r]=Gp(i.record,e.toolCallByUseId))}}function Zp(){return{turns:[],toolCallByUseId:new Map,unresolvedToolUseCounts:new Map}}function Qp(){return{rowCount:0,toolCallCount:0,errorCount:0,resultBytes:0}}function $p(e,t,n){e.metrics.rowCount+=n,t.record.kind===`tool_call`&&(e.metrics.toolCallCount+=n),t.record.kind===`tool_result`&&(e.metrics.resultBytes+=Bp(t.record.content)*n,t.record.isError&&(e.metrics.errorCount+=n))}function em(e,t){for(let n of t)n.kind===`tool_call`&&e.toolCallByUseId.set(n.toolUseId,n);let n=[],r=e.turns[e.turns.length-1]??null;for(let i of t){let t=qp(i,e.toolCallByUseId);t&&Jp(e.unresolvedToolUseCounts,t);let a=Gp(i,e.toolCallByUseId);if(zp(i)){r={head:a,rows:[],hasTrimmedRows:!1,startedAt:i.ts,metrics:Qp()},$p(r,a,1),e.turns.push(r),n.push({turnIndex:e.turns.length-1,isNewTurn:!0,head:a,rows:[]});continue}r||(r={head:null,rows:[],hasTrimmedRows:!1,startedAt:i.ts,metrics:Qp()},e.turns.push(r),n.push({turnIndex:e.turns.length-1,isNewTurn:!0,head:null,rows:[]})),r.rows.push(a),$p(r,a,1);let o=e.turns.length-1,s=n[n.length-1];s&&s.turnIndex===o?s.rows.push(a):n.push({turnIndex:o,isNewTurn:!1,head:null,rows:[a]})}return n}function tm(e,t){let n=Zp();em(n,t);let r=new Set;for(let[t,i]of n.toolCallByUseId)e.toolCallByUseId.has(t)||(e.toolCallByUseId.set(t,i),r.add(t));let i=new Set;for(let t of r)e.unresolvedToolUseCounts.delete(t)&&i.add(t);for(let[t,r]of n.unresolvedToolUseCounts)e.toolCallByUseId.has(t)||Jp(e.unresolvedToolUseCounts,t,r);let a=n.turns[n.turns.length-1],o=e.turns[0],s=!!a&&!!o&&!o.head,c=s?a.head:null,l=s?a.rows:[];if(s){n.turns.pop();let e=a.startedAt,t=o.startedAt;e!==null&&(t===null||e<t)&&(o.startedAt=a.startedAt),o.head=c,o.rows=[...l,...o.rows],o.metrics={rowCount:a.metrics.rowCount+o.metrics.rowCount,toolCallCount:a.metrics.toolCallCount+o.metrics.toolCallCount,errorCount:a.metrics.errorCount+o.metrics.errorCount,resultBytes:a.metrics.resultBytes+o.metrics.resultBytes}}return e.turns=[...n.turns,...e.turns],Xp(e,i),{newTurns:n.turns,mergedHead:c,mergedRows:l,needsRerender:i.size>0}}function nm(e){return e.rows.length+ +!!e.head}function rm(e){let t=0;for(let n of e.turns)t+=nm(n);return t}function im(e,t){for(let n of t){if(n.record.kind===`tool_call`){e.toolCallByUseId.delete(n.record.toolUseId);continue}let t=Kp(n.record);t&&Yp(e.unresolvedToolUseCounts,t)}}function am(e,t){im(e,t.head?[t.head,...t.rows]:t.rows)}function om(e,t){let n=e.turns[0];if(!n)return 0;let r=Math.min(t,n.rows.length);if(r<=0)return 0;let i=n.rows.slice(0,r);im(e,i);for(let e of i)$p(n,e,-1);return n.rows=n.rows.slice(r),n.hasTrimmedRows=!0,r}function sm(e,t=Fp){let n=rm(e),r=0;for(;n>t&&r<e.turns.length-1;){let t=e.turns[r];if(!t)break;n-=nm(t),am(e,t),r+=1}return r>0&&(e.turns=e.turns.slice(r)),n<=t?{droppedTurnCount:r,droppedRowCount:0}:{droppedTurnCount:r,droppedRowCount:om(e,n-t)}}function cm(e){let t=[],n=new Set;for(let r of e)r.id&&r.name&&!n.has(r.id)&&(n.add(r.id),t.push({id:r.id,label:r.name}));return t}function lm(e,t,n,r=!0){return t&&e.some(e=>e.id===t)?t:n&&e.some(e=>e.id===n)?n:r?e[0]?.id??null:null}function um(e){return!e.selectedSessionId||!e.isPanelVisible||e.hasPendingRequest?null:e.hasLoadedOnce?{id:e.selectedSessionId,direction:`forward`,after:e.nextOffset}:{id:e.selectedSessionId,direction:`tail`,after:0,endingAt:`tail`}}function dm(e,t=Fp){return!e.selectedSessionId||!e.hasLoadedOnce||e.hasDroppedEarliestRows||e.residentRowCount>=t?!1:e.firstOffset>0}function fm(e,t=Fp){return!dm(e,t)||e.hasPendingRequest||!e.selectedSessionId?null:{id:e.selectedSessionId,direction:`earlier`,after:0,endingAt:e.firstOffset}}function pm(e){let{pendingRequest:t,resident:n,reply:r}=e;return!t||t.id!==r.id?`ignore`:!n||n.sessionId!==r.id?`stale`:r.reset||r.next<r.start?`reset`:t.direction===`tail`?n.hasLoadedOnce?`stale`:`seed`:t.direction===`earlier`?n.firstOffset===t.endingAt?r.next===t.endingAt?`prepend`:`reset`:`stale`:n.nextOffset===t.after?r.start===t.after?`append`:`reset`:`stale`}var mm=1e4,hm=null,gm=null,_m=[],vm=null,ym=null,G=null,bm=null,xm=!1,Sm=null,Cm=()=>!1,wm=new Set;function K(e){for(let t of wm)t(e)}function Tm(){bm&&=(clearTimeout(bm.timeoutHandle),null)}function Em(){bm=null,Sm=`The trace did not load within ${Math.round(mm/1e3)} s.`,K({kind:`rebuild`})}function Dm(e){Tm(),xm=!1,Sm=null,vm=e,G=e?{sessionId:e,grouping:Zp(),firstOffset:0,nextOffset:0,hasDroppedEarliestRows:!1,filePath:``,hasLoadedOnce:!1}:null,K({kind:`selection-reset`})}function Om(e){let t=lm(_m,ym,vm,e);return ym&&t===ym&&(ym=null),t!==vm&&(Dm(t),!0)}function km(e){if(!hm)return;let t=e.endingAt===void 0?{type:`session-trace`,id:e.id,after:e.after}:{type:`session-trace`,id:e.id,endingAt:e.endingAt};hm(t)?bm={request:e,timeoutHandle:setTimeout(Em,mm)}:(Sm=b,K({kind:`header`}))}function Am(e=!1){if(!hm)return;let t=um({selectedSessionId:vm,isPanelVisible:e||Cm(),hasPendingRequest:!!bm,hasLoadedOnce:G?.hasLoadedOnce??!1,nextOffset:G?.nextOffset??0});t&&km(t)}function jm(){xm&&!bm&&(xm=!1,Am())}function Mm(){if(!G)return;let e=sm(G.grouping),t=e.droppedTurnCount>0||e.droppedRowCount>0,n=t&&!G.hasDroppedEarliestRows;t&&(G.hasDroppedEarliestRows=!0),K({kind:`trimmed`,trim:{droppedTurnCount:e.droppedTurnCount,droppedRowCount:e.droppedRowCount,hasJustDroppedEarliestRows:n}})}function Nm(e){G&&(K({kind:`records-appended`,appends:em(G.grouping,e)}),Mm())}function Pm(e){G&&(K({kind:`records-prepended`,prepend:tm(G.grouping,e)}),Mm())}function Fm(e){if(!e||typeof e!=`object`)return null;let t=e;return typeof t.id!=`string`||!Array.isArray(t.records)||typeof t.next!=`number`||typeof t.start!=`number`?null:{id:t.id,records:t.records,start:t.start,next:t.next,reset:t.reset===!0,path:typeof t.path==`string`?t.path:``}}function Im(){return{selectedSessionId:vm,hasPendingRequest:!!bm,hasLoadedOnce:G?.hasLoadedOnce??!1,hasDroppedEarliestRows:G?.hasDroppedEarliestRows??!1,firstOffset:G?.firstOffset??0,residentRowCount:G?rm(G.grouping):0}}function Lm(){return{sessionOptions:_m,selectedSessionId:vm,selectedTrace:G,pendingSessionId:bm?.request.id??null,traceFailureText:Sm}}function Rm(e){wm.add(e)}function zm(e){Cm=e}function Bm(){if(!hm)return;let e=fm(Im());e&&km(e)}function Vm(e){_m.some(t=>t.id===e)&&e!==vm&&(ym=null,Dm(e),Am(),K({kind:`rebuild`}))}function Hm(){let e=Om(!0);return Am(!0),e}function Um(e){hm=e}function Wm(e){gm=e}function Gm(e){ym=e,gm?.()}function Km(e){_m=cm(e);let t=Om(Cm());t&&Am(),K({kind:`sessions`,hasSelectionChanged:t})}function qm(e){let t=Fm(e);if(!t)return;let n=pm({pendingRequest:bm?.request??null,resident:G?{sessionId:G.sessionId,firstOffset:G.firstOffset,nextOffset:G.nextOffset,hasLoadedOnce:G.hasLoadedOnce}:null,reply:{id:t.id,start:t.start,next:t.next,reset:t.reset}});n===`ignore`?jm():(Tm(),Sm&&(Sm=null,K({kind:`header`})),n===`stale`?jm():n===`reset`?(Dm(t.id),G&&(G.filePath=t.path),Am(),K({kind:`rebuild`}),jm()):G&&(G.filePath=t.path,n===`prepend`?(G.firstOffset=t.start,Pm(t.records),jm()):(n===`seed`&&(G.hasLoadedOnce=!0,G.firstOffset=t.start),G.nextOffset=t.next,Nm(t.records),jm())))}function Jm(e){let t=e?.id;typeof t==`string`&&t===vm&&Cm()&&(bm?xm=!0:Am())}function Ym(e){let t=e?.id;if(typeof t!=`string`||bm?.request.id!==t)return!1;Tm(),xm=!1;let n=e?.message;return Sm=typeof n==`string`&&n?n:`The trace could not be read.`,K({kind:`rebuild`}),!0}function Xm(e){Tm(),xm=!1,Sm=e?null:b,e?(K({kind:`header`}),Am()):K({kind:`rebuild`})}var Zm=80,Qm=Object.freeze([{value:`7`,label:`Last 7 days`,days:7},{value:`30`,label:`Last 30 days`,days:30},{value:`90`,label:`Last 90 days`,days:90},{value:`all`,label:`All retained`,days:null}]);function $m(e){return e.replace(/\B(?=(\d{3})+(?!\d))/g,`,`)}function eh(e){return e.includes(`.`)?e.replace(/0+$/,``).replace(/\.$/,``):e}function th(e){if(typeof e!=`number`||!Number.isFinite(e))return`-`;let t=Math.round(e);return`${t<0?`-`:``}${$m(String(Math.abs(t)))}`}function nh(e){if(typeof e!=`number`||!Number.isFinite(e))return`-`;let t=Math.abs(e);if(t===0)return`$0.00`;let n=e<0?`-`:``;if(t<1e-4)return e<0?`above -$0.0001`:`<$0.0001`;if(t<.01)return`${n}$${t.toFixed(4)}`;let[r,i]=t.toFixed(2).split(`.`);return`${n}$${$m(r)}.${i}`}function rh(e){if(typeof e!=`number`||!Number.isFinite(e))return`-`;let t=e<0?`-`:``,n=Math.abs(e);if(n<1e3){let e=Math.round(n);return`${e===0?``:t}${e}`}return n<999950?`${t}${eh((n/1e3).toFixed(1))}k`:n<999995e3?`${t}${eh((n/1e6).toFixed(2))}M`:`${t}${eh((n/1e9).toFixed(2))}B`}function ih(e){return typeof e!=`number`||!Number.isFinite(e)?`ok`:e>=100?`crit`:e>=Zm?`warn`:`ok`}function ah(e){let t=ve(e?.max,null);return t===null||t<=0?null:t}function oh(e){let t=ah(e),n=ve(e?.pct,null);return t===null||n===null?null:n*100}function sh(e,t){let n=ah(t),r=ve(e?.projectedTokens,null);return n===null||r===null?null:r/n*100}var ch=90;function lh(e){let t=e?.budget?.rows;return Array.isArray(t)?t.filter(e=>e&&ve(e.budgetUsd,null)!==null):[]}function uh(e){let t=ve(e?.pct,null);return t===null?0:t}function dh(e,t){let n=e?.[t];if(!n||typeof n!=`object`)return null;let r=ve(n.pct,null),i=ve(n.resetsAtMs,null);return r===null&&i===null?null:{pct:r,resetsAtMs:i}}function fh(e){return e?.vendor===`codex`?`codex`:`claude`}function ph(e){return dh(e,`fiveHour`)?.pct??null}function mh(e,t=null){let n=ph(t);if(n!==null)return ih(n);let r=ih(oh(e?.tokenLimit));return r===`ok`?ih(sh(e?.activeBlock?.projection,e?.tokenLimit)):r}function hh(e,t=null){let n=[],r=mh(e,t);r!==`ok`&&n.push(`block:${r}`),e?.anomaly?.daily&&n.push(`anomaly:daily`),e?.anomaly?.burn&&n.push(`anomaly:burn`);for(let t of lh(e)){let e=uh(t);if(e<ch)continue;let r=typeof t?.scope==`string`&&t.scope?t.scope:`budget`;n.push(`budget:${r}:${e>=100?`over`:`near`}`)}return _e(n)}function gh(e,t=``){let n=e?.source;if(n===`fetched`){let e=ue(t,``);return e?`Prices fetched from the public model price table, ${e}.`:`Prices fetched from the public model price table.`}if(n===`cache`){let e=ue(t,``);return e?`Prices from the cached public model price table, ${e}.`:`Prices from the cached public model price table.`}return n===`snapshot`?`Prices from the price table bundled with this Glimmervoid build.`:n===`unavailable`?`Model prices could not be loaded, so every cost below counts as zero.`:`Pricing source not reported yet.`}function _h(e){if(typeof e==`number`&&Number.isFinite(e))return e;if(typeof e!=`string`)return null;let t=Date.parse(e);return Number.isFinite(t)?t:null}function vh(e){if(Array.isArray(e))return e.length;let t=Number(e);return Number.isFinite(t)?t:null}function yh(e){if(!e||typeof e!=`object`)return``;let t=[],n=vh(e.dirs);if(n!==null&&t.push(`${th(n)} transcript ${n===1?`directory`:`directories`}`),Number.isFinite(e.files)&&t.push(`${th(e.files)} files`),Number.isFinite(e.entries)&&t.push(`${th(e.entries)} entries`),Number.isFinite(e.lastScanMs)&&t.push(`last pass ${th(e.lastScanMs)}ms`),t.length===0)return``;let r=`Scanned ${t.join(`, `)}.`;return e.partial===!0?`${r} Some files were skipped this pass and will be re-read on the next one.`:r}function bh(e){return ue(e?.error,``)}function xh(e,t){if(!e||typeof e!=`object`)return!1;let n=e.requestId;return n==null||n===t}function Sh(e){let t=ve(e?.officialCostUSD,null);if(t!==null&&t>0)return{costUSD:t,source:`official`};let n=ve(e?.costUSD,null);return n!==null&&n>0?{costUSD:n,source:`estimated`}:{costUSD:null,source:null}}function Ch(e){let t=Number(e?.tokens);if(!Number.isFinite(t)||t<=0)return``;let{costUSD:n}=Sh(e);return n===null?rh(t):`${rh(t)} ${nh(n)}`}function wh(e){let{source:t}=Sh(e);return t===`official`?`Tokens counted from the transcript; cost reported by Claude Code for this conversation`:`Tokens and estimated API list-price cost for this conversation`}function Th({hasPlan:e,pendingPromptKind:t,hasOpenReview:n,hasApprovedReview:r=!1}){return e&&(n||t===`plan`&&!r)?`plan`:`terminal`}function Eh({hasPlan:e,isBorrowed:t,face:n}){return!e||n===`plan`?`hidden`:t?`face`:`navigate`}function Dh(e){return e instanceof Error?e.message:String(e)}function Oh(e,t,n=!1){let r=w(`label`,`dialog-checkbox-label`),i=w(`input`);return i.type=`checkbox`,i.className=`dialog-checkbox`,i.value=t,i.checked=n,r.append(i,w(`span`,null,e)),r}function kh(e){return e.split(/[\\/]/).filter(Boolean).at(-1)??e}async function Ah(e){let[t,n]=await Promise.all([ut(`get-workspace-repos`,{id:e}),ut(`scan-repo-roots`,{}).catch(()=>null)]);if(t.type!==`workspace-repos`)throw Error(`Unexpected reply`);if(!t.ok)throw Error(t.error||`Could not read the workspace`);let r=t.repos.map(e=>({name:kh(e),path:e,isMember:!0})),i=new Set(t.repos),a=n?.type===`repo-roots-scanned`?n.directories:[];for(let e of a.flatMap(e=>e.projects))i.has(e.path)||(i.add(e.path),r.push({name:e.name,path:e.path,isMember:!1}));return r}function jh(e){let{overlay:t,dialog:n,close:r,actions:i,btnCancel:a}=Mt({title:`Workspace repositories`}),o=w(`p`,`dialog-message`,`Saving restarts the session and resumes its conversation. A removed repository keeps its workspace branch, so committed work survives.`),s=w(`fieldset`,`dialog-workspace-list`);s.setAttribute(`aria-label`,`Workspace repositories`),s.append(w(`div`,`dialog-hint`,`Loading repositories...`));let c=w(`div`,`dialog-hint`);c.setAttribute(`role`,`status`);let l=w(`div`,`dialog-error`),u=w(`button`,`btn-dialog btn-dialog-confirm`,`Save`);u.type=`button`,u.disabled=!0,i.append(u),n.append(o,s,c,l,i),a.addEventListener(`click`,r),requestAnimationFrame(()=>a.focus()),Ah(e).then(e=>{if(t.isConnected){s.textContent=``;for(let t of e)s.append(Oh(t.name,t.path,t.isMember));u.disabled=!1}}).catch(e=>{t.isConnected&&(s.textContent=``,l.textContent=`Could not load repositories: ${Dh(e)}`)}),u.addEventListener(`click`,()=>{let n=[...s.querySelectorAll(`input:checked`)].map(e=>e.value);n.length<2?l.textContent=`Select at least two repositories.`:(l.textContent=``,u.disabled=!0,c.textContent=`Saving`,ut(`set-workspace-repos`,{id:e,repos:n}).then(e=>{if(!t.isConnected)return;if(e.type===`set-workspace-repos-result`&&e.ok){r();return}let n=e.type===`set-workspace-repos-result`?e.error:null;l.textContent=n||`Could not update the workspace.`}).catch(e=>{t.isConnected&&(l.textContent=`Could not update the workspace: ${Dh(e)}`)}).finally(()=>{c.textContent=``,u.disabled=!1}))})}function Mh(e,t,n){return{body:String(n||`Session needs attention`),tag:`glimmervoid-${e||``}-${t||``}`,renotify:!0}}var Nh=4e3;function Ph(e,t){return`glimmervoid-notify-claim-${e||``}-${t||``}`}function Fh(e,t,n,r=Nh){try{let i=e.getItem(t);if(i){let e=Number(i);if(Number.isFinite(e)&&n-e<r)return!1}return e.setItem(t,String(n)),!0}catch{return!0}}function Ih(){return typeof Notification>`u`?null:Notification}function Lh(){return Ih()!==null}function Rh(){let e=Ih();return e?e.permission:`unavailable`}async function zh(){let e=Ih();if(!e)return`denied`;if(e.permission!=="default")return e.permission;try{return await e.requestPermission()}catch{return e.permission}}function Bh(){return!Lh()&&!window.isSecureContext?`Browsers allow desktop notifications only over HTTPS or on localhost, and this page is plain HTTP on another address. Open the dashboard on localhost, or use Telegram.`:Lh()?Rh()===`denied`&&Rr()?`Blocked by the browser. Allow notifications for this site in its site settings.`:null:`This browser does not support desktop notifications.`}function Vh(){return Rr()&&Rh()==="default"}function Hh(e=()=>{}){let t=w(`div`,`notification-permission`),n=()=>{let r=Bh();if(t.replaceChildren(),t.hidden=!r&&!Vh(),r){t.append(w(`p`,`notification-permission-hint text-xs text-text-muted`,r));return}let i=w(`button`,`btn-dialog btn-dialog-cancel`,`Enable desktop notifications`);i.type=`button`,i.addEventListener(`click`,()=>{i.disabled=!0,zh().then(()=>{n(),e()})}),t.append(i)};return n(),{element:t,refresh:n}}var Uh=`Notifications`,Wh=`Desktop notifications are blocked by the browser, so alerts show only in this tab. Allow notifications for this site to get them again.`,Gh=new Map,Kh=!1;function qh(){Kh||(Kh=!0,R({source:Uh,message:Wh,hidesInStreamerMode:!1}))}function Jh(e,t){let n=Gh.get(e)??new Set;n.add(t),Gh.set(e,n),t.addEventListener(`close`,()=>n.delete(t))}function Yh(e){let t=Gh.get(e);if(t){Gh.delete(e);for(let e of t)e.close()}}function Xh(e){return!Lh()||!Rr()||document.documentElement.hasAttribute(`data-streamer`)?!1:e||!document.hasFocus()}function Zh(e=!1){return Xh(e)&&Rh()===`granted`}function Qh({session:e,category:t,message:n,kind:r,ignoreFocus:i=!1}={}){let a=Ih();if(!a||!Xh(!!i)||(a.permission===`denied`&&qh(),a.permission!==`granted`)||(Es(Uh),!Fh(window.localStorage,Ph(e,t),Date.now())))return;let o=typeof e==`string`?e:``,s=O.get(o),c=s?gt(s):``;try{let i=new a(c||`Glimmervoid`,Mh(e,t,n));i.onclick=()=>{window.focus(),r===`plan`&&o&&(window.location.hash=Bu(o)),i.close()},s&&Jh(o,i)}catch{}}var $h=`CommitMono`,eg=[400,700].map(e=>`${e} 14px ${$h}`),tg=`monospace`;function ng(e){return e.trim().replace(/^['"]|['"]$/g,``)}function rg(e,t){let n=e.split(`,`).map(e=>e.trim()).filter(e=>e.length>0),r=t?n:n.filter(e=>ng(e)!==$h);return r.length>0?r.join(`, `):tg}function ig(e,t,n){return Promise.all(t.map(t=>e.load(t))).then(n,()=>void 0)}function ag(e,t){for(let n of e)n.term&&(n.term.options.fontFamily=t,n._syncGrid?.())}function og(){return document.fonts?eg.every(e=>document.fonts.check(e)):!1}function sg(){return rg(getComputedStyle(document.documentElement).getPropertyValue(`--font-mono`),og())}function cg(e){document.fonts&&ig(document.fonts,eg,e)}var lg=3e4,ug=24,dg=null,fg=[`Android`,`iPhone`,`iPad`,`Windows`,`Mac OS X`,`Linux`],pg=[/Firefox\/\d+/,/Edg\/\d+/,/Chrome\/\d+/,/Version\/\d+/];function mg(){let e=navigator.userAgent,t=fg.find(t=>e.includes(t))??`unknown platform`;return`${pg.map(t=>t.exec(e)?.[0]).find(e=>e!==void 0)?.replace(`Version`,`Safari`)??`unknown browser`} on ${t}`}function hg(){let e=Reflect.get(navigator,`connection`);if(typeof e!=`object`||!e)return[];let t=Reflect.get(e,`type`),n=Reflect.get(e,`rtt`);return[typeof t==`string`?t:``,typeof n==`number`?`${n}ms`:``].filter(e=>e!==``)}function gg(){return[navigator.onLine?`online`:`offline`,...hg()].join(` `)}function _g(e,t){let n=[],r=0;for(let i of e){let e=i.length+1;if(r+e>t)break;n.push(i),r+=e}return{takenMarks:n,usedChars:r}}function vg(e,t){let n=e.join(` `);if(n.length<=t)return n;let r=t-ug,i=_g(e,r/2),a=_g(e.slice(i.takenMarks.length).reverse(),r-i.usedChars),o=e.length-i.takenMarks.length-a.takenMarks.length;return[...i.takenMarks,`(${o} marks dropped)`,...a.takenMarks.reverse()].join(` `)}function yg(e){return e.marks.some(e=>e.startsWith(`terminal-bytes`))}function bg(e){let t=yg(e)&&!e.isCapped?`terminal live`:`terminal not live after ${lg/1e3} s`,n=`hidden ${Math.round(e.hiddenForMs/1e3)} s, ${t}, ${mg()}, ${e.networkAtWake}: `,r=n+vg(e.marks,ae-n.length);return E({type:`client-log`,scope:`wake`,text:r.slice(0,ae)})}function xg(){let e=dg;e&&(e.isCapped||yg(e))&&bg(e)&&(dg=null,clearTimeout(e.capTimer))}function Sg(){dg&&(dg.isCapped=!0,xg())}function Cg(e,t){e.marks.push(`${t}+${Math.round(performance.now()-e.startedAtMs)}`)}function wg(e){dg&&(e===`terminal-bytes`&&yg(dg)||(Cg(dg,e),(e===`terminal-bytes`||e===`control-opened`)&&xg()))}function Tg(e){dg&&Cg(dg,e===`link`?[`link`,...hg()].join(`-`):e)}function Eg(e,t){dg||={startedAtMs:performance.now(),hiddenForMs:t,networkAtWake:gg(),marks:[],isCapped:!1,capTimer:setTimeout(Sg,lg)},wg(e)}var Dg=6,Og=262144,kg=16384,Ag=()=>{};function jg(e,t){if(t.length<=kg)e.push(t);else for(let n=0;n<t.length;n+=kg)e.push(t.slice(n,n+kg))}function Mg({budget:e=Dg,maxChunkBytes:t=Og,requestFrame:n,cancelFrame:r}={}){let i=n||(e=>requestAnimationFrame(e)),a=r||(e=>cancelAnimationFrame(e)),o=new Map,s=[],c=0,l=null;function u(){l===null&&(l=i(h))}function d(e){return e.readIdx<e.pending.length}function f(e){d(e)||(e.pending.length=0,e.readIdx=0,e.dirty=!1)}function p(e){return!!(e?.live&&e.dirty&&!e.inFlight&&d(e))}function m(){for(let e of o.values())if(p(e))return!0;return!1}function h(){l=null;let n=s.length,r=0;for(let i=0;i<n&&r<e;i++){let e=s[(c+i)%n],a=o.get(e);if(!p(a))continue;let l=[],m=0;for(;a.readIdx<a.pending.length;){let e=a.pending[a.readIdx];if(typeof e!=`string`){if(m>0)break;a.readIdx++,e.run();continue}let n=t-m;if(m+e.length<=t)jg(l,e),m+=e.length,a.readIdx++;else{m===0&&(jg(l,e.slice(0,n)),m+=n,a.pending[a.readIdx]=e.slice(n));break}}let h=l.pop();if(h===void 0)f(a),r++;else{f(a),d(a)&&a.readIdx>=64&&(a.pending.splice(0,a.readIdx),a.readIdx=0),a.inFlight=!0;for(let e of l)a.write(e,Ag);a.write(h,()=>{a.live&&(a.inFlight=!1,d(a)&&(a.dirty=!0,u()))}),r++}}n>0&&(c=(c+1)%n),m()&&u()}return{register(e,t){let n=o.get(e);n?(n.write=t,n.live=!0):(o.set(e,{write:t,pending:[],readIdx:0,inFlight:!1,dirty:!1,live:!0}),s.push(e))},unregister(e){let t=o.get(e);if(!t)return;t.live=!1,o.delete(e);let n=s.indexOf(e);n!==-1&&s.splice(n,1),c>=s.length&&(c=0)},enqueue(e,t){let n=o.get(e);n&&t&&(n.pending.push(t),n.dirty=!0,u())},enqueueAction(e,t){let n=o.get(e);n&&(n.pending.push({run:t}),n.dirty=!0,u())},has(e){return o.has(e)},size(){return o.size},running(){return l!==null},stop(){l!==null&&(a(l),l=null)}}}var Ng=Mg(),Pg={"--state-monitoring":`#22d3ee`,"--state-monitoring-bg":`rgba(34, 211, 238, 0.06)`,"--state-running":`#22c55e`,"--state-running-bg":`rgba(34, 197, 94, 0.06)`,"--state-waiting":`#f59e0b`,"--state-waiting-bg":`rgba(245, 158, 11, 0.08)`,"--state-failed":`#ef4444`,"--state-failed-bg":`rgba(239, 68, 68, 0.06)`,"--state-initializing":`#6b7280`,"--state-initializing-bg":`rgba(107, 114, 128, 0.06)`,"--state-idle":`#eab308`,"--state-idle-bg":`rgba(234, 179, 8, 0.06)`},Fg={background:`--bg-card`,cursor:`--accent`,cursorAccent:`--bg-card`,black:`--border`,brightBlack:`--text-muted`,red:`#ef4444`,brightRed:`#f87171`,green:`#22c55e`,brightGreen:`#4ade80`,yellow:`#eab308`,brightYellow:`#facc15`,cyan:`#06b6d4`,brightCyan:`#22d3ee`},Ig={golgari:{label:`Golgari (Green/Black)`,colors:{"--bg":`#060b08`,"--bg-card":`#0a120e`,"--bg-header":`#081009`,"--bg-surface":`#0e1a12`,"--border":`#1a2e1f`,"--border-dim":`#122016`,"--border-hover":`#2a4a32`,"--text":`#b8ccbe`,"--text-dim":`#6a9070`,"--text-head":`#dceede`,"--text-muted":`#7a9a80`,"--accent":`#2dd4a0`,"--accent-dim":`#1a9a6e`,...Pg,"--state-monitoring":`#22d3ee`,"--state-monitoring-bg":`rgba(34, 211, 238, 0.08)`,"--state-done":`#94a3b8`,"--state-done-bg":`rgba(45, 212, 160, 0.06)`,"--state-starting":`#a78bfa`,"--state-starting-bg":`rgba(167, 139, 250, 0.06)`,"--state-complete":`#34d399`,"--state-complete-bg":`rgba(52, 211, 153, 0.06)`},terminal:{...Fg,foreground:`#c8dece`,blue:`--accent`,brightBlue:`#5ee8bc`,magenta:`#a855f7`,brightMagenta:`#c084fc`,white:`#c8dece`,brightWhite:`#e8f5ea`}},midnight:{label:`Midnight (Blue/Purple)`,colors:{"--bg":`#080816`,"--bg-card":`#0e0e20`,"--bg-header":`#0b0b1a`,"--bg-surface":`#131328`,"--border":`#1c1c38`,"--border-dim":`#141430`,"--border-hover":`#2a2a50`,"--text":`#b8b8d4`,"--text-dim":`#8585b3`,"--text-head":`#dcdcf0`,"--text-muted":`#7c7ca9`,"--accent":`#4f6ef7`,"--accent-dim":`#3a54c0`,...Pg,"--state-monitoring":`#22d3ee`,"--state-monitoring-bg":`rgba(34, 211, 238, 0.08)`,"--state-done":`#94a3b8`,"--state-done-bg":`rgba(59, 130, 246, 0.06)`,"--state-starting":`#a855f7`,"--state-starting-bg":`rgba(168, 85, 247, 0.06)`,"--state-complete":`#60a5fa`,"--state-complete-bg":`rgba(96, 165, 250, 0.06)`},terminal:{...Fg,foreground:`#c8c8e0`,blue:`--accent`,brightBlue:`#60a5fa`,magenta:`#a855f7`,brightMagenta:`#c084fc`,white:`#c8c8e0`,brightWhite:`#e8e8ff`}},phyrexian:{label:`Phyrexian (Iridescent)`,colors:{"--bg":`#0a0810`,"--bg-card":`#100e18`,"--bg-header":`#0c0a14`,"--bg-surface":`#16122a`,"--border":`#2a2440`,"--border-dim":`#1e1a32`,"--border-hover":`#3e3660`,"--text":`#c8c0e0`,"--text-dim":`#8d82b9`,"--text-head":`#e8e0ff`,"--text-muted":`#8579b1`,"--accent":`#c084fc`,"--accent-dim":`#9656d6`,...Pg,"--state-monitoring":`#60a5fa`,"--state-monitoring-bg":`rgba(96, 165, 250, 0.08)`,"--state-done":`#67e8f9`,"--state-done-bg":`rgba(103, 232, 249, 0.06)`,"--state-starting":`#f472b6`,"--state-starting-bg":`rgba(244, 114, 182, 0.06)`,"--state-complete":`#34d399`,"--state-complete-bg":`rgba(52, 211, 153, 0.06)`},terminal:{...Fg,foreground:`#c8c0e0`,blue:`#67e8f9`,brightBlue:`#a5f3fc`,magenta:`--accent`,brightMagenta:`#d8b4fe`,white:`#c8c0e0`,brightWhite:`#e8e0ff`}},compleated:{label:`Compleated (Light)`,colors:{"--bg":`#ece8e0`,"--bg-card":`#f7f4ee`,"--bg-header":`#f0ece4`,"--bg-surface":`#e4e0d6`,"--border":`#b8b0a0`,"--border-dim":`#ccc6b8`,"--border-hover":`#908878`,"--text":`#2a2622`,"--text-dim":`#5a5448`,"--text-head":`#0e0c0a`,"--text-muted":`#676157`,"--accent":`#0e0c0a`,"--accent-dim":`#2a2622`,"--state-running":`#16803c`,"--state-running-bg":`rgba(22, 128, 60, 0.08)`,"--state-waiting":`#b45309`,"--state-waiting-bg":`rgba(180, 83, 9, 0.08)`,"--state-failed":`#dc2626`,"--state-failed-bg":`rgba(220, 38, 38, 0.06)`,"--state-monitoring":`#0e7490`,"--state-monitoring-bg":`rgba(14, 116, 144, 0.08)`,"--state-done":`#64748b`,"--state-done-bg":`rgba(26, 24, 22, 0.06)`,"--state-initializing":`#6b7280`,"--state-initializing-bg":`rgba(107, 114, 128, 0.06)`,"--state-idle":`#a16207`,"--state-idle-bg":`rgba(161, 98, 7, 0.06)`,"--state-starting":`#7c3aed`,"--state-starting-bg":`rgba(124, 58, 237, 0.06)`,"--state-complete":`#059669`,"--state-complete-bg":`rgba(5, 150, 105, 0.06)`},terminal:{background:`#faf8f4`,foreground:`#1a1816`,cursor:`#1a1816`,cursorAccent:`#faf8f4`,black:`#1a1816`,brightBlack:`#5a5448`,red:`#b91c1c`,brightRed:`#dc2626`,green:`#15803d`,brightGreen:`#16a34a`,yellow:`#92400e`,brightYellow:`#a16207`,blue:`#1d4ed8`,brightBlue:`#2563eb`,magenta:`#6d28d9`,brightMagenta:`#7c3aed`,cyan:`#0e7490`,brightCyan:`#0891b2`,white:`#5a5448`,brightWhite:`#3a3630`}},unicorn:{label:`Rainbow Unicorns (Dark)`,colors:{"--bg":`#191022`,"--bg-card":`#201730`,"--bg-header":`#1c1329`,"--bg-surface":`#281c3c`,"--border":`#3a2c52`,"--border-dim":`#2a2040`,"--border-hover":`#55407a`,"--text":`#d4c8e6`,"--text-dim":`#9a88b8`,"--text-head":`#ede4fa`,"--text-muted":`#a897c4`,"--accent":`#e8a3c4`,"--accent-dim":`#c4739e`,"--state-running":`#42d780`,"--state-running-bg":`rgba(66, 215, 128, 0.10)`,"--state-waiting":`#f79f3b`,"--state-waiting-bg":`rgba(247, 159, 59, 0.10)`,"--state-failed":`#f05442`,"--state-failed-bg":`rgba(240, 84, 66, 0.13)`,"--state-monitoring":`#2dd4bf`,"--state-monitoring-bg":`rgba(45, 212, 191, 0.08)`,"--state-done":`#f04ca4`,"--state-done-bg":`rgba(240, 76, 164, 0.13)`,"--state-initializing":`#8f87a6`,"--state-initializing-bg":`rgba(143, 135, 166, 0.08)`,"--state-idle":`#bcb02f`,"--state-idle-bg":`rgba(188, 176, 47, 0.08)`,"--state-starting":`#a17ef1`,"--state-starting-bg":`rgba(161, 126, 241, 0.08)`,"--state-complete":`#34baf4`,"--state-complete-bg":`rgba(52, 186, 244, 0.14)`},terminal:{background:`#201730`,foreground:`#d4c8e6`,cursor:`--accent`,cursorAccent:`#201730`,black:`#8c7dab`,brightBlack:`#9c8fb5`,red:`#e8887e`,brightRed:`#f4a89f`,green:`#86e0ab`,brightGreen:`#a3edc0`,yellow:`#f0c674`,brightYellow:`#f5d896`,blue:`#9cb3f0`,brightBlue:`#b5c8f5`,magenta:`#dd8ecf`,brightMagenta:`#e6a8dc`,cyan:`#7fd4d0`,brightCyan:`#a0e6e2`,white:`#d4c8e6`,brightWhite:`#f4ecfc`}},"posthog-light":{label:`PostHog (Light)`,colors:{"--bg":`#eeefe9`,"--bg-card":`#fdfdf8`,"--bg-header":`#eeefe9`,"--bg-surface":`#e5e7e0`,"--border":`#bfc1b7`,"--border-dim":`#d2d3cc`,"--border-hover":`#9ea096`,"--text":`#23251d`,"--text-dim":`#65675e`,"--text-head":`#111111`,"--text-muted":`#73756b`,"--accent":`#c03300`,"--accent-dim":`#8e2600`,"--state-running":`#237a36`,"--state-running-bg":`rgba(77, 117, 51, 0.08)`,"--state-waiting":`#b17816`,"--state-waiting-bg":`rgba(177, 120, 22, 0.10)`,"--state-failed":`#8c0d3b`,"--state-failed-bg":`rgba(140, 13, 59, 0.07)`,"--state-monitoring":`#0e7490`,"--state-monitoring-bg":`rgba(14, 116, 144, 0.08)`,"--state-done":`#3e6b9e`,"--state-done-bg":`rgba(62, 107, 158, 0.08)`,"--state-initializing":`#73756b`,"--state-initializing-bg":`rgba(115, 117, 107, 0.07)`,"--state-idle":`#835c19`,"--state-idle-bg":`rgba(131, 92, 25, 0.07)`,"--state-starting":`#a621c8`,"--state-starting-bg":`rgba(166, 33, 200, 0.07)`,"--state-complete":`#34796f`,"--state-complete-bg":`rgba(52, 121, 111, 0.08)`},terminal:{background:`--bg-card`,foreground:`#23251d`,cursor:`--accent`,cursorAccent:`--bg-card`,black:`#23251d`,brightBlack:`#65675e`,red:`#c03300`,brightRed:`#df6133`,green:`#4d7533`,brightGreen:`#6aa84f`,yellow:`#835c19`,brightYellow:`#b17816`,blue:`#3e6b9e`,brightBlue:`#2f80fa`,magenta:`#74108d`,brightMagenta:`#a621c8`,cyan:`#34796f`,brightCyan:`#30abc6`,white:`#4d4f46`,brightWhite:`#23251d`}},"posthog-dark":{label:`PostHog (Dark)`,colors:{"--bg":`#1e1f23`,"--bg-card":`#25262b`,"--bg-header":`#232429`,"--bg-surface":`#2d2e37`,"--border":`#3e424f`,"--border-dim":`#32343f`,"--border-hover":`#626674`,"--text":`#edeef4`,"--text-dim":`#aeb3c2`,"--text-head":`#fafafa`,"--text-muted":`#9ea096`,"--accent":`#f87a4c`,"--accent-dim":`#f54e00`,"--state-running":`#36c46f`,"--state-running-bg":`rgba(54, 196, 111, 0.08)`,"--state-waiting":`#f7a501`,"--state-waiting-bg":`rgba(247, 165, 1, 0.09)`,"--state-failed":`#f35454`,"--state-failed-bg":`rgba(243, 84, 84, 0.09)`,"--state-monitoring":`#22d3ee`,"--state-monitoring-bg":`rgba(34, 211, 238, 0.08)`,"--state-done":`#589df8`,"--state-done-bg":`rgba(88, 157, 248, 0.08)`,"--state-initializing":`#8f8f8c`,"--state-initializing-bg":`rgba(143, 143, 140, 0.07)`,"--state-idle":`#ffce5c`,"--state-idle-bg":`rgba(255, 206, 92, 0.07)`,"--state-starting":`#8567ff`,"--state-starting-bg":`rgba(133, 103, 255, 0.09)`,"--state-complete":`#29dbbb`,"--state-complete-bg":`rgba(41, 219, 187, 0.08)`},terminal:{background:`--bg-card`,foreground:`#edeef4`,cursor:`--accent`,cursorAccent:`--bg-card`,black:`--border`,brightBlack:`--text-muted`,red:`#f35454`,brightRed:`#f87a4c`,green:`#36c46f`,brightGreen:`#96e5b6`,yellow:`#f7a501`,brightYellow:`#ffce5c`,blue:`#2f80fa`,brightBlue:`#9fc4ff`,magenta:`#8567ff`,brightMagenta:`#e2d6ff`,cyan:`#30abc6`,brightCyan:`#29dbbb`,white:`#aeb3c2`,brightWhite:`#fafafa`}}},Lg=`phyrexian`,Rg=null,zg=null;function Bg(e){let t=Ig[e];if(!t)return;let n=zg;zg=e;let r=document.documentElement;r.dataset.theme=e;for(let[e,n]of Object.entries(t.colors))r.style.setProperty(e,n);e===`unicorn`&&n!==null&&n!==`unicorn`&&Rg?.()}function Vg(e){Rg=e}function Hg(e){document.documentElement.toggleAttribute(`data-show-usage`,e)}function Ug(e){document.documentElement.toggleAttribute(`data-arrow-pad`,e)}function Wg(){let e=Ig[zg||Lg];if(!e)return{};let t=getComputedStyle(document.documentElement),n={};for(let[r,i]of Object.entries(e.terminal))n[r]=i.startsWith(`--`)?t.getPropertyValue(i).trim():i;return n}function Gg(){return Object.entries(Ig).map(([e,t])=>({id:e,label:t.label}))}var Kg=e().int().min(1).max(500),qg=e().int().min(1).max(200);r(`type`,[a({type:i(`input`),data:t()}),a({type:i(`claim`),cols:Kg,rows:qg}),a({type:i(`unview`)}),a({type:i(`pause-output`)}),a({type:i(`resume-output`)})]);var Jg=a({type:i(`pty-size`),cols:Kg,rows:qg,seq:e().int().nonnegative()}),Yg=a({type:i(`output-beat`)}),Xg=r(`type`,[Jg,Yg]),Zg=`history`,Qg=`output`,$g=`paused`;n([`screen`,`deep`]);function e_(e){try{return JSON.parse(e)}catch{return null}}function t_(e){let t=Xg.safeParse(e_(e));return t.success?t.data:null}var n_=new Set([1,5,25,100]);function r_(e){return e.isOutputPaused?`${e.history} paused`:e.history}function i_(e,t){return!e||!t?!1:e.cols===t.cols&&e.rows===t.rows}function a_(e){return!e||!Number.isInteger(e.cols)||!Number.isInteger(e.rows)?!1:e.cols>0&&e.rows>0}function o_(e){return{cols:Math.min(Math.max(e.cols,1),500),rows:Math.min(Math.max(e.rows,1),200)}}function s_({authoritative:e,isActiveViewer:t,lastClaim:n}){return!(t&&i_(e,n))}function c_({isDocumentVisible:e,isDocumentFocused:t,hasFocusInsideCard:n,hasWindowBlurredSinceFocus:r,isPhoneLayout:i}){return e?i||t?!0:n&&!r:!1}function l_({isBorrowedCard:e,isTerminalFaceShown:t}){return!e||!t}function u_({viewportTopLine:e,scrollbackLineCount:t,isDeepHistoryLoadedOrPending:n}){return e===0&&t>0&&t<5e3&&!n}function d_(e,t,n){let r=new URLSearchParams;t&&r.set(Zg,`deep`),n&&r.set(Qg,$g);let i=`/terminals/${encodeURIComponent(e)}`,a=r.toString();return a?`${i}?${a}`:i}function f_({authoritative:e,isActiveViewer:t,isDocumentEngaged:n,isDataWsOpen:r,lastClaim:i}){return!t||!n||!r?`none`:s_({authoritative:e,isActiveViewer:t,lastClaim:i})?`rebid`:`resync`}function p_({isActiveViewer:e,lastClaim:t,owedClaim:n}){return e?n??t:null}function m_({authoritative:e,applied:t,proposal:n,isActiveViewer:r,isDataWsOpen:i,lastClaim:a}){let o=!!e&&!i_(e,t),s=a_(n)?o_(n):null,c=r&&!!s&&!i_(s,a);return{resizeTo:o?e:null,owedClaim:c?s:null,keepsPendingSettle:r&&!s,sendUnview:!r&&i&&!!a,isFollowing:s_({authoritative:e,isActiveViewer:r,lastClaim:a})}}function h_(e){return e instanceof ArrayBuffer||ArrayBuffer.isView(e)?new TextDecoder().decode(e):null}function g_(e){let t=h_(e);return t===null?null:t_(t)}function __(e,t){if(typeof e==`string`)return{kind:`bytes`,data:e};let n=g_(e);return n?n.type===`output-beat`?{kind:`beat`}:t.hasSeenSize?n.seq<=t.lastSeq?{kind:`stale`}:{kind:`size`,cols:n.cols,rows:n.rows,seq:n.seq}:{kind:`attach-size`,cols:n.cols,rows:n.rows,seq:n.seq}:{kind:`ignored`}}var v_=``,y_=`\x1B`,b_=`\r`,x_=new Map([[`deleteContentBackward`,v_],[`deleteByComposition`,v_],[`deleteCompositionText`,v_],[`deleteWordBackward`,y_],[`deleteSoftLineBackward`,y_],[`deleteHardLineBackward`,y_]]);function S_(e){return x_.get(e)??``}var C_=new Set([`insertFromPaste`,`insertFromPasteAsQuotation`,`insertFromDrop`,`insertFromYank`,`historyUndo`,`historyRedo`]);function w_(e){return typeof e!=`string`||e===``||!C_.has(e)}function T_(e){return e?e.keyCode===229||e.key===`Process`:!1}function E_(e,t){let n=Array.from(e??``),r=Array.from(t??``),i=Math.min(n.length,r.length),a=0;for(;a<i&&n[a]===r[a];)a++;return v_.repeat(n.length-a)+r.slice(a).join(``).replace(/\r\n|\n|\r/g,b_)}var D_=/https?:\/\/[^\s<>"']+/g,O_=new Set([`.`,`,`,`;`,`:`,`!`,`?`,`'`,`"`]),k_={")":`(`,"]":`[`,"}":`{`};function A_(e,t){let n=0;for(let r of e)r===t&&n++;return n}function j_(e){for(;;){let t=e[e.length-1];if(t===void 0)return e;if(O_.has(t)){e=e.slice(0,-1);continue}let n=k_[t];if(n&&A_(e,n)<A_(e,t))e=e.slice(0,-1);else return e}}function M_(e){let t=[];for(let n of e.matchAll(D_)){let e=j_(n[0]);e.length<=8||t.push({start:n.index,end:n.index+e.length,url:e})}return t}var N_=50;function P_(){return{activate(e,t){yo(t)},allowNonHttpProtocols:!1}}function F_(e,t){let n=t-1;for(;n>0&&e.getLine(n)?.isWrapped&&t-1-n<N_;)n--;let r=t-1;for(;e.getLine(r+1)?.isWrapped&&r-(t-1)<N_;)r++;let i=``,a=[];for(let t=n;t<=r;t++){let n=e.getLine(t);if(!n)break;for(let e=0;e<n.length;e++){let r=n.getCell(e);if(!r)break;if(r.getWidth()===0)continue;let o=r.getChars()||` `;for(let n=0;n<o.length;n++)i+=o[n],a.push({x:e+1,y:t+1})}}return{text:i,cellAt:a}}function I_(e){return e.registerLinkProvider({provideLinks(t,n){let r=e.buffer?.active;if(!r)return n(void 0);let{text:i,cellAt:a}=F_(r,t),o=[];for(let{start:e,end:t,url:n}of M_(i)){let r=a[e],i=a[t-1];r&&i&&o.push({range:{start:r,end:i},text:n,activate(e,t){yo(t)}})}n(o.length?o:void 0)}})}var L_=`(?:password|passwd|pwd|token|api[_-]?key|secret|credential|auth[_-]?token|access[_-]?key|secret[_-]?key|private[_-]?key|client[_-]?secret|connection[_-]?string)`,R_=`(?:"[^"\\r\\n]*"|'[^'\\r\\n]*'|[^\\s\\r\\n]+)`,q=`[^\\S\\r\\n]`,z_=`${L_}${q}*(?:=>|[:=])${q}*`,B_=`[?&][A-Za-z0-9_.-]*`,V_=`[^\\r\\n;&|]{0,200}?`,H_=`(?:mysql|mysqldump|mysqladmin|mysqlshow|mariadb|mariadb-dump)`,U_=RegExp(`(${z_})${R_}`,`gi`),W_=RegExp(`(\\bBearer${q}+)[A-Za-z0-9._~+/=-]{8,}`,`gi`),G_=[/\bAKIA[0-9A-Z]{16}\b/g,/\bgh[pousr]_[A-Za-z0-9]{16,}\b/g,/\bgithub_pat_[A-Za-z0-9_]{20,}\b/g,/\bsk-ant-[A-Za-z0-9_-]{20,}/g,/\bsk-[A-Za-z0-9_-]{20,}/g,/\bph[cx]_[A-Za-z0-9]{20,}\b/g,/\bxox[abprs]-[A-Za-z0-9-]{10,}\b/g,/\beyJ[A-Za-z0-9_=-]{6,}\.[A-Za-z0-9_=-]{6,}\.[A-Za-z0-9_=-]{4,}/g,/-----BEGIN(?:[A-Z0-9 ]+)? PRIVATE KEY-----/g],K_=[RegExp(`((?:^|\\s)--?${L_}${q}+)${R_}`,`gi`),RegExp(`((?:^|\\s)-(?:pwd|pw)(?![a-z])${q}*=?${q}*)${R_}`,`g`),RegExp(`(-AsPlainText${q}+)${R_}`,`gi`),RegExp(`((?:^|\\s)setx${q}+[^\\s\\r\\n]*${L_}[^\\s\\r\\n]*${q}+)${R_}`,`gi`)],q_=[RegExp(`(\\bauthorization${q}*:${q}*Basic${q}+)[A-Za-z0-9+/=_-]{8,}`,`gi`),RegExp(`(\\bdocker${q}+login\\b${V_}${q}-p(?:${q}+|=))${R_}`,`gi`),RegExp(`(\\bcurl\\b${V_}${q}(?:--user|-u)(?:${q}+|=)[^\\s:\\r\\n]+:)${R_}`,`gi`),RegExp(`(\\b${H_}\\b${V_}${q}-p)${R_}`,`g`),/\b([a-z][a-z0-9+.-]*:\/\/[^\s:/@]+:)[^\s@/]+(?=@)/gi];[...K_,...q_];var J_=[/-----END(?:[A-Z0-9 ]+)? PRIVATE KEY-----/g,/^([^\S\r\n]*)(?=[A-Za-z0-9+/]*[g-zG-Z+/])(?=[A-Za-z0-9+/=]{60,76}[^\S\r\n]*$)[A-Za-z0-9+/]+={0,2}(?=[^\S\r\n]*$)/gm],Y_=RegExp(`(${B_}(?:${L_}|_key)=)[^&#\\s]+`,`gi`),X_=[U_,RegExp(`(\\b(?=[A-Z0-9_]*(?:SECRET|TOKEN|KEY|PASSWORD))[A-Z][A-Z0-9_]*=)${R_}`,`g`)],Z_=[W_,...K_,...q_,...G_,...J_];function Q_(e,t){return[...e.matchAll(t)].map(e=>({matchStart:e.index,valueStart:e.index+(e[1]??``).length,end:e.index+e[0].length}))}function $_(e,t){let n=0;return e.filter(e=>{for(;n<t.length&&t[n].end<=e.matchStart;)n+=1;let r=t.at(n);return!r||e.matchStart<r.matchStart})}function ev(e){let t=[];for(let n of e.toSorted((e,t)=>e.start-t.start)){let e=t.at(-1);e&&n.start<=e.end?e.end=Math.max(e.end,n.end):t.push({...n})}return t}function tv(e){let t=Q_(e,Y_);return ev([...t,...X_.flatMap(n=>$_(Q_(e,n),t)),...Z_.flatMap(t=>Q_(e,t))].map(e=>({start:e.valueStart,end:e.end})))}var nv=`glimmervoid-streamer-mode`,rv=new Set,iv=Hn(nv,!1)===!0,av=null;function ov(e){document.documentElement.toggleAttribute(`data-streamer`,e),av?.setAttribute(`aria-pressed`,String(e))}ov(iv);function sv(){return iv}function cv(e){if(Un(nv,e),e!==sv()){iv=e,ov(e);for(let t of rv)t(e)}}function lv(e){return rv.add(e),()=>rv.delete(e)}async function uv(e){try{let t=await ut(`update-settings`,{settings:{streamerMode:e}},{timeoutMs:us});return t.type===`settings-error`?String(t.message):(cv(e),``)}catch(e){return ys(e,us)}}var dv=`Streamer mode`;async function fv(){let e=!sv();e&&cv(!0);let t=await uv(e);t?R({source:dv,message:`${e?`Streamer mode is on in this browser only. The server did not save it`:`Streamer mode is still on. The server did not save the change`}: ${t} Toggle it again to retry.`,hidesInStreamerMode:!1}):Es(dv)}function pv(){fv()}function mv(e){av=e,ov(sv()),e.addEventListener(`click`,pv)}var hv=`#808080`,gv=new WeakMap;function _v(e,t,n){return`${e}:${t}:${n}`}function vv(e){return _v(e.marker.line,e.x,e.width)}function yv(e,t){let n=t;for(;n>0&&t-n<63&&e.getLine(n)?.isWrapped;)n--;return n}function bv(e,t){let n=t;for(;n-t<63&&e.getLine(n+1)?.isWrapped;)n++;return n}function xv(e,t,n){let r=``;for(let i=t;i<=n;i++)r+=e.getLine(i)?.translateToString(!1)??``;return r}function Sv(e,t,n,r){let i=``,a=[];for(let o=t;o<=n;o++){let t=e.getLine(o);if(!t)break;for(let e=0;e<t.length;e++){let n=t.getCell(e,r);if(!n)break;let s=n.getWidth();if(s===0)continue;let c=n.getChars()||` `;for(let t=0;t<c.length;t++)i+=c[t],a.push({line:o,x:e,width:s})}}return{text:i,cellAt:a}}function Cv(e,t){let n=null;for(let r of t)n&&n.line===r.line?n.width=Math.max(n.width,r.x+r.width-n.x):(n={line:r.line,x:r.x,width:r.width},e.push(n))}function wv(e,t,n,r){let i=[];if(tv(xv(e,t,n)).length===0)return i;let{text:a,cellAt:o}=Sv(e,t,n,r);for(let e of tv(a))Cv(i,o.slice(e.start,e.end));return i}function Tv(e,t){let n=e.getNullCell(),r=[],i=t;for(;i<e.length;){let t=bv(e,i);r.push(...wv(e,i,t,n)),i=t+1}return r}function Ev(){return{masks:[],watermark:null,isFullRescanOwed:!0}}function Dv(e){e.decoration.dispose(),e.marker.dispose()}function Ov(e){for(let t of e.masks)Dv(t);e.masks.length=0,e.watermark?.dispose(),e.watermark=null,e.isFullRescanOwed=!0}function kv(e,t){let n=e.watermark;return e.isFullRescanOwed||!n||n.isDisposed?0:Math.min(n.line,t.baseY)}function Av(e){let t=0;for(;t<e.masks.length&&e.masks[t].marker.isDisposed;)e.masks[t].decoration.dispose(),t++;t>0&&e.masks.splice(0,t)}function jv(e,t){let n=new Map,r=e.masks.at(-1);for(;r&&(r.marker.isDisposed||r.marker.line>=t);)e.masks.pop(),r.marker.isDisposed&&r.decoration.dispose(),r.marker.isDisposed||n.set(vv(r),r),r=e.masks.at(-1);return Av(e),n}function Mv(e,t){let n={normal:Ev(),alternate:Ev()},r=e.cols;function i(t){return e.buffer.active.type===t}function a(t,n){if(!i(n)||t.isDisposed)return!1;let r=t.line-e.buffer.active.viewportY;return r>=0&&r<e.rows}function o(t,n,r){t.style.backgroundColor=e.options.theme?.foreground??hv,t.style.pointerEvents=`none`,t.style.display=a(n,r)?`block`:`none`}function s(e){for(let t of n[e].masks){let n=t.decoration.element;n&&o(n,t.marker,e)}}function c(t,n){let r=e.registerMarker(t.line-(n.baseY+n.cursorY));if(!r)return null;let i=e.registerDecoration({marker:r,x:t.x,width:t.width,layer:`top`});if(!i)return r.dispose(),null;let a=n.type;return i.onRender(e=>o(e,r,a)),{marker:r,decoration:i,x:t.x,width:t.width}}function l(){if(!sv())return;let t=e.buffer.active,r=n[t.type],i=yv(t,kv(r,t)),a=jv(r,i);for(let e of Tv(t,i)){let n=_v(e.line,e.x,e.width),i=a.get(n);a.delete(n);let o=i??c(e,t);o&&r.masks.push(o)}for(let e of a.values())Dv(e);r.watermark?.dispose(),r.watermark=e.registerMarker(-t.cursorY)??null,r.isFullRescanOwed=!1}function u(){Ov(n.normal),Ov(n.alternate)}function d(){u(),r=e.cols,l()}let f=[e.onWriteParsed(l),e.onResize(({cols:e})=>{e!==r&&(r=e,n.normal.isFullRescanOwed=!0,n.alternate.isFullRescanOwed=!0,l())}),e.buffer.onBufferChange(e=>{Ov(n.alternate),s(`normal`),e.type===`alternate`&&l()})],p=lv(d);t.addEventListener(`abort`,()=>{p();for(let e of f)e.dispose();u(),gv.delete(e)},{once:!0}),gv.set(e,d)}function Nv(e){gv.get(e)?.()}function Pv({hasTerminal:e,isSocketOpen:t,isInputHeld:n}){return e?n||!t?`connecting`:`live`:`none`}var Fv=`Upload`;async function Iv(e,t){return Es(Fv,e),Rv(e,t)}async function Lv(e,t){Es(Fv,e);for(let n of t)await Rv(e,n)}async function Rv(e,t){let n={"x-glimmervoid-upload-name":encodeURIComponent(t.name)};t.type&&(n[`content-type`]=t.type);try{let r=await fetch(`/upload/${encodeURIComponent(e)}`,{method:`POST`,body:t,headers:n});return r.ok?!0:(R({source:Fv,sessionId:e,message:await zv(r,t.name)}),!1)}catch{return R({source:Fv,sessionId:e,message:`${t.name} was not uploaded because the server did not answer. Check that Glimmervoid is running, then drop the file again.`}),!1}}async function zv(e,t){try{let n=await e.json();if(n&&typeof n.error==`string`)return`${t} was not uploaded: ${n.error.replace(/\.$/,``)}. Fix that, then drop the file again.`}catch{}return`${t} was not uploaded (HTTP ${e.status}). Drop the file again, or check the Glimmervoid terminal for errors.`}var Bv=10,Vv=1.2,Hv=.005,Uv=4,Wv=.08,Gv=5;function Kv(e,t){let n=Math.abs(t);return n<Bv?!1:n>Math.abs(e)*Vv}function qv(e,t,n=1/0){if(!(t>0))return{scrollLines:0,remainderPx:e};let r=Math.trunc(e/t),i=Math.max(-n,Math.min(n,r));return{scrollLines:i===0?0:-i,remainderPx:e-i*t}}function Jv(e,t,n){let r=e.length>=Uv?e.slice(1):e.slice();return r.push({positionPx:t,timestampMs:n}),r}function Yv(e){if(!e||e.length<2)return 0;let t=e[0],n=e[e.length-1],r=n.timestampMs-t.timestampMs;if(!(r>0))return 0;let i=(n.positionPx-t.positionPx)/r,a=Math.abs(i);if(!(a>=Wv))return 0;let o=Math.min(a,Gv);return i<0?-o:o}function Xv({velocityPxPerMs:e,startedAtMs:t,cellHeightPx:n,pendingPx:r=0}){return!e||!(n>0)?null:{velocityPxPerMs:e,lastMs:t,cellHeightPx:n,pendingPx:r}}function Zv(e,t){if(!e)return{scrollLines:0,state:null};let n=t-e.lastMs;if(!(n>0))return{scrollLines:0,state:e};let r=Math.abs(e.velocityPxPerMs)-Hv*n;if(!(r>0))return{scrollLines:0,state:null};let i=e.velocityPxPerMs<0?-1:1,a=i*r*n,{scrollLines:o,remainderPx:s}=qv(e.pendingPx+a,e.cellHeightPx);return{scrollLines:o,state:{velocityPxPerMs:i*r,lastMs:t,cellHeightPx:e.cellHeightPx,pendingPx:s}}}function Qv(e,t){return e===`alternate`||!!t&&t!==`none`}function $v(e,t){return!(e>0)||!(t>0)?0:e/t}var ey=1;function ty(e){return typeof e._core?._viewport?.handleTouchScroll==`function`}function ny(e,t){for(let n of e)if(n.identifier===t)return n;return null}function ry(e,t){if(ty(t))return;let n=()=>document.documentElement.dataset.layout===`phone`,r=null,i=0,a=0,o=0,s=!1,c=0,l=[],u=null,d=null,f=()=>{d!==null&&cancelAnimationFrame(d),d=null,u=null},p=()=>Qv(t.buffer?.active?.type,t.modes?.mouseTrackingMode),m=()=>{let e=t.element?.querySelector(`.xterm-screen`);return $v(e?.clientHeight||t.element?.clientHeight||0,t.rows)},h=()=>{r=null,s=!1,c=0,l=[]},g=(e,n,r)=>{let i=e<0?-1:1;for(let a=0;a<Math.abs(e);a++)t.element?.dispatchEvent(new WheelEvent(`wheel`,{deltaY:i,deltaMode:ey,clientX:n,clientY:r,bubbles:!0,cancelable:!0}))},_=()=>{if(d=null,!u)return;if(!e.isConnected||!n()||p()){f();return}let r=t.buffer?.active?.viewportY,{scrollLines:i,state:a}=Zv(u,performance.now());u=a,i!==0&&t.scrollLines(i),u&&(i!==0&&t.buffer?.active?.viewportY===r?f():d=requestAnimationFrame(_))},v=(e,t,n)=>{u=Xv({velocityPxPerMs:e,startedAtMs:t,cellHeightPx:m(),pendingPx:n}),u&&(d=requestAnimationFrame(_))};e.addEventListener(`touchstart`,e=>{if(f(),!n()||e.touches.length!==1){h();return}let t=e.touches[0];r=t.identifier,i=t.clientX,a=t.clientY,o=t.clientY,s=!1,c=0,l=[]},{passive:!0}),e.addEventListener(`touchmove`,e=>{if(r===null||!n())return;let u=ny(e.touches,r);if(!u)return;if(!s){if(!Kv(u.clientX-i,u.clientY-a))return;s=!0,o=u.clientY,c=0,l=Jv([],u.clientY,e.timeStamp)}e.cancelable&&e.preventDefault(),c+=u.clientY-o,o=u.clientY,l=Jv(l,u.clientY,e.timeStamp);let d=p(),{scrollLines:f,remainderPx:h}=qv(c,m(),d?8:void 0);c=h,f!==0&&(d?g(f,u.clientX,u.clientY):t.scrollLines(f))},{passive:!1}),e.addEventListener(`touchend`,e=>{if(!s||p()){h();return}l=Jv(l,o,e.timeStamp);let t=Yv(l),n=c;h(),t!==0&&v(t,performance.now(),n)},{passive:!0}),e.addEventListener(`touchcancel`,()=>{f(),h()},{passive:!0})}function iy(e){return e.needsReload?!0:e.wasAttachedWithoutLayout&&e.hasLayoutNow}function ay(e,t,n=[]){let r=new Set(Array.isArray(n)?n:[n]),i=[];for(let n of e)e.length-i.length>=t&&!r.has(n)&&i.push(n);return i}var oy=null,sy=null;function cy(){return oy}function ly(){return oy?Promise.resolve(oy):(sy??=Promise.all([P(()=>import(`./xterm-CdMfg81L.js`).then(e=>e.t),__vite__mapDeps([13,14])),P(()=>import(`./xterm-CdMfg81L.js`).then(e=>e.r),__vite__mapDeps([13,14])),P(()=>import(`./xterm-CdMfg81L.js`).then(e=>e.n),__vite__mapDeps([13,14]))]).then(([e,t,n])=>(oy={Terminal:e.Terminal,FitAddon:t.FitAddon,WebglAddon:n.WebglAddon},oy)).catch(e=>{throw sy=null,e}),sy)}var uy=window.matchMedia?.(`(pointer: coarse)`).matches?4:12,dy=new Map;function fy(e){return e.clientWidth>0&&e.clientHeight>0}function py(e){let t=e.webglAddon;if(!t)return;let n=[...e.term?.element?.querySelectorAll(`canvas`)??[]];e.webglAddon=null;try{t.dispose()}catch{}for(let e of n)e.getContext(`webgl2`)?.getExtension(`WEBGL_lose_context`)?.loseContext()}function my(e){dy.delete(e),e.needsWebGLReload=!1,e.webglAttachedWithoutLayout=!1,py(e)}function hy(e){let t=[e],n=j.snapshot().borrowedCardId,r=n?O.get(n):void 0;r&&t.push(r);for(let e of ay([...dy.keys()],uy,t))my(e),e.needsWebGLReload=!0}function gy(e){e?.term&&iy({needsReload:e.needsWebGLReload,wasAttachedWithoutLayout:e.webglAttachedWithoutLayout,hasLayoutNow:fy(e.termWrap)})&&xy(e,{isForced:!0})}function _y(){for(let e of dy.keys()){let t=e.term;if(e.webglAddon&&t)try{t.clearTextureAtlas(),t.refresh(0,t.rows-1)}catch{my(e),e.needsWebGLReload=!0}}}var vy=!1;function yy(){vy||(vy=!0,requestAnimationFrame(()=>{vy=!1,_y()}))}function by(e){e?.addEventListener(`contextrestored`,yy)}function xy(e,t={}){try{if(e.webglAddon&&!e.needsWebGLReload&&!t.isForced){dy.delete(e),dy.set(e,!0);return}e.webglAddon&&(py(e),dy.delete(e));let n=cy();if(!n)return;hy(e);let r=new n.WebglAddon;r.onContextLoss(()=>{r.dispose(),e.webglAddon=null,dy.delete(e),e.needsWebGLReload=!0});let i=e.term;if(!i)throw Error(`webgl: the terminal was disposed before the addon loaded`);i.loadAddon(r),r.onChangeTextureAtlas(by),r.onAddTextureAtlasCanvas(by),by(r.textureAtlas),e.webglAddon=r,e.needsWebGLReload=!1,e.webglAttachedWithoutLayout=!fy(e.termWrap),dy.set(e,!0),requestAnimationFrame(()=>{e.webglAddon===r&&e.term&&e.term.refresh(0,e.term.rows-1)})}catch{e.webglAddon=null,e.needsWebGLReload=!1,e.webglAttachedWithoutLayout=!1,dy.delete(e)}}function Sy(e){let t=mr(e,ld,{isTerminalFocused:!0},fd());return t?hr(t,document.body.dataset.activeView):!1}var Cy=1024,wy=250,Ty=`(max-width: 768px)`,Ey=12,Dy=14,Oy=5e4,ky=!1;function Ay(e){ky=e}var jy=!1;window.addEventListener(`blur`,()=>{jy=!0}),window.addEventListener(`focus`,()=>{jy=!1});function My(e){let t=document.activeElement;return c_({isDocumentVisible:document.visibilityState===`visible`,isDocumentFocused:document.hasFocus(),hasFocusInsideCard:t instanceof Node&&e.contains(t),hasWindowBlurredSinceFocus:jy,isPhoneLayout:_u()})}function Ny(e,t){return l_({isBorrowedCard:j.snapshot().borrowedCardId===t,isTerminalFaceShown:e.face===`terminal`})}var Py=new WeakMap,Fy=new WeakMap,Iy=new WeakSet,Ly=new WeakSet,Ry=new WeakSet,zy=new WeakMap,By=5e3,Vy=15e3,Hy=`Keys you type now are held and sent once the terminal reconnects.`,Uy=`The terminal is still reconnecting and its key buffer is full, so new keys are dropped.`,Wy=`The agent copied text. The browser needs a click before it can reach your clipboard.`,Gy=`The clipboard is unavailable in this browser.`;function Ky(e,t,n,r){let i=zy.get(e);i&&(i.clearTimerId!==null&&clearTimeout(i.clearTimerId),i.clearTimerId=null,i.shownKind=t,i.status.show(n,r),n!==`busy`&&(i.clearTimerId=setTimeout(()=>qy(e,t),n===`ok`?By:Vy)))}function qy(e,t){let n=zy.get(e);n&&n.shownKind===t&&(n.clearTimerId!==null&&clearTimeout(n.clearTimerId),n.clearTimerId=null,n.shownKind=null,n.status.clear())}function Jy(e){let t=e.buffer.active;return t.viewportY<t.baseY}function Yy(e,t,{hasNewOutput:n=!1}={}){let r=zy.get(e)?.jumpToLatestButton;if(!r)return;let i=Jy(t);r.hidden=!i,i?n&&(r.dataset.hasNewOutput=`true`):delete r.dataset.hasNewOutput}function Xy(e,t){if(Py.has(e)||!Jy(t))return;let n=t.buffer.active,r=n.length-n.viewportY;Iy.has(e)?Py.set(e,r):Fy.set(e,r)}function Zy(e,t,n){let r=e.term;r&&u_({viewportTopLine:n,scrollbackLineCount:r.buffer.active.baseY,isDeepHistoryLoadedOrPending:Iy.has(e)})&&(Iy.add(e),Ly.add(e),Py.set(e,r.buffer.active.length-n),Fb(t))}var Qy=new WeakMap;function $y(e,t){return document.visibilityState===`visible`&&!Ny(e,t)}function eb(e,t){if(e&&xb(e,t))return;let n=e?.dataWs;if(!e||n?.readyState!==WebSocket.OPEN)return;let r=$y(e,t);Qy.get(n)!==r&&(Qy.set(n,r),n.send(JSON.stringify({type:r?`resume-output`:`pause-output`})))}function tb(){for(let[e,t]of O)eb(t,e)}document.addEventListener(`visibilitychange`,tb),j.subscribe((e,t)=>{t.includes(`borrowedCardId`)&&tb()});function nb(e){let t=atob(e),n=new Uint8Array(t.length);for(let e=0;e<t.length;e++)n[e]=t.charCodeAt(e);return new TextDecoder().decode(n)}function rb(e,t,n){let r=(n instanceof Error?n.message:``)||String(n);console.error(`[clipboard:${t}]`,n),Ky(e,`clipboard`,`error`,`Clipboard ${t} failed: ${r}`)}function ib(e,t,n,r){let i=qe(t);i?i.then(()=>{r&&Ky(e,`clipboard`,`ok`,r)}).catch(t=>rb(e,n,t)):Ky(e,`clipboard`,`error`,Gy)}function ab(e,t){let n=zy.get(e);n&&(n.pendingClipboardText=t,n.clipboardPrompt.hidden=!1)}function ob(e){let t=zy.get(e),n=t?.pendingClipboardText;t&&n!=null&&(t.pendingClipboardText=null,t.clipboardPrompt.hidden=!0,ib(e,n,`osc52 write`,`Copied to the clipboard.`))}function sb(e,t,n){let r=_s(`terminal-notice`),i=w(`div`,`terminal-clipboard-prompt`);i.hidden=!0;let a=w(`button`,`btn-dialog btn-dialog-confirm`,`Copy to clipboard`);a.type=`button`,a.addEventListener(`click`,()=>ob(t)),i.append(w(`span`,`terminal-clipboard-prompt-text`,Wy),a);let o=w(`div`,`terminal-notices`);o.append(i,r.element);let s=w(`button`,`terminal-jump-latest btn-dialog btn-dialog-ghost`,`Jump to latest`);s.type=`button`,s.hidden=!0,s.addEventListener(`click`,()=>{n.scrollToBottom(),n.focus()});let c=w(`div`,`terminal-drop-zone`);c.setAttribute(`aria-hidden`,`true`),c.append(w(`span`,`terminal-drop-zone-label`,`Drop to upload to this session`)),e.append(o,s,c),zy.set(t,{status:r,shownKind:null,clearTimerId:null,clipboardPrompt:i,pendingClipboardText:null,jumpToLatestButton:s})}function cb(e,t){return O.get(e)===t&&!t.dataWs}function lb(e){return e.querySelector(`:scope > .terminal-connecting`)}function ub(e){if(lb(e))return;let t=w(`div`,`terminal-connecting`);t.append(w(`span`,`terminal-connecting-label`,`Connecting`)),e.append(t)}function db(e){let t=lb(e);if(!t)return;t.querySelector(`:scope > .terminal-connecting-animal`)?.remove();let n=Bi();n&&t.prepend(zi(n,`terminal-connecting-animal`))}var fb=new Set,pb=new WeakSet;function mb(e){return fb.add(e),()=>fb.delete(e)}function hb(){let e=0;for(let[t,n]of O)n.card.dataset.link===`connecting`&&$y(n,t)&&e++;return e}function gb(e){let t=Pv({hasTerminal:e.term!==null||pb.has(e),isSocketOpen:e.dataWs?.readyState===WebSocket.OPEN,isInputHeld:jb}),n=t===`connecting`&&!jb&&Ly.has(e)?`live`:t;if(n===`none`){delete e.card.dataset.link,_b();return}let r=n===`connecting`&&e.card.dataset.link!==`connecting`;e.card.dataset.link=n,r&&db(e.termWrap),_b()}function _b(){for(let e of fb)e()}function vb(e,t,n){Xy(t,n),Ng.unregister(e),t.dataWs=null,gb(t),t._resetGridClaim?.()}var yb=new WeakMap;function bb(e,t,n,r){vb(e,t,n),clearTimeout(yb.get(t)),yb.delete(t),r===0&&rt()?Ab(e,t,n):yb.set(t,setTimeout(()=>{yb.delete(t),cb(e,t)&&ot().catch(()=>{}).then(()=>{cb(e,t)&&Ab(e,t,n)})},r))}function xb(e,t){let n=Ry.has(e),r=!e.dataWs&&O.get(t)===e;return!(n||r)||!e.term||!$y(e,t)?!1:(Ry.delete(e),e._dataWsRetryAttempt=0,bb(t,e,e.term,0),!0)}function Sb(e,t,n){vb(e,t,n),Ry.add(t)}var Cb=15e3,wb=new Map;function Tb(e){if(!rt()||wb.has(e)||O.get(e)?.dataWs)return;let t=d_(e,!1,!1),n=new WebSocket(dt(location,tt(t)));n.binaryType=`arraybuffer`;let r=[],i=e=>r.push(e),a=()=>Eb(e,n),o=()=>{n.readyState===WebSocket.CONNECTING&&a()};n.addEventListener(`message`,i),n.addEventListener(`close`,a);let s=setTimeout(o,et),c=setTimeout(a,Cb);wb.set(e,{socket:n,attachPath:t,bufferedMessages:r,release:()=>{n.removeEventListener(`message`,i),n.removeEventListener(`close`,a),clearTimeout(s),clearTimeout(c)}})}function Eb(e,t){let n=wb.get(e);n?.socket===t&&(wb.delete(e),n.release(),t.close())}function Db(e,t){let n=wb.get(e);if(!n)return null;let r=n.socket.readyState===WebSocket.CONNECTING||n.socket.readyState===WebSocket.OPEN;return n.attachPath!==t||!r?(Eb(e,n.socket),null):(wb.delete(e),n.release(),n)}var Ob=new WeakMap;function kb(e,t,n){if(t.openedAtMs===null)return;let r=Math.round(performance.now()-t.openedAtMs);if(r>=1e3){Ob.delete(e);return}let i=(Ob.get(e)??0)+1;if(Ob.set(e,i),!n_.has(i))return;let a=n.wasClean?`clean`:`unclean`,o=t.hasReceivedBytes?`yes`:`no`;T(`terminal`,`fast close ${i}x, session ${t.sessionId}, code ${n.code}, reason '${n.reason}', ${a}, open ${r} ms, bytes ${o}, attach ${t.attachDescription}`)}function Ab(e,t,n){Ry.delete(t);let r=Py.get(t);Py.delete(t);let i=Fy.get(t);Fy.delete(t);let a=r!==void 0,o=r??i,s=!1,c=$y(t,e),l=d_(e,a,!c),u=Db(e,l),d=u?.socket??new WebSocket(dt(location,tt(l)));Qy.set(d,c),d.binaryType=`arraybuffer`,t.dataWs=d,c&&wg(`terminal-connecting`),gb(t);let f=!1,p=!1,m={sessionId:e,attachDescription:r_({history:a?`deep`:`screen`,isOutputPaused:!c}),openedAtMs:null,hasReceivedBytes:!1},h={hasSeenSize:!1,lastSeq:0},g=setTimeout(()=>{d.readyState===WebSocket.CONNECTING&&(p=!0,c&&wg(`terminal-abandoned`),d.close())},et);Ng.register(e,(e,t)=>n.write(e,t));let _=r=>{if(t.dataWs!==d)return;let i=__(r.data,h);if(i.kind===`bytes`){m.hasReceivedBytes=!0,zt(t),Qy.get(d)&&wg(`terminal-bytes`);let r=s;if(s=!1,Ng.enqueue(e,i.data),!r)return;let a=o??0;Ng.enqueueAction(e,()=>{n.scrollToLine(Math.max(0,n.buffer.active.length-a))});return}if(i.kind===`beat`){zt(t);return}if(i.kind===`attach-size`){s=o!==void 0,a||Iy.delete(t),h.hasSeenSize=!0,h.lastSeq=i.seq,n.reset(),Nv(n),t.ptySize={cols:i.cols,rows:i.rows},t._syncGrid?.();return}if(i.kind!==`size`)return;h.lastSeq=i.seq;let c={cols:i.cols,rows:i.rows};Ng.enqueueAction(e,()=>{t.ptySize=c,t._syncGrid?.()})};d.addEventListener(`message`,_),d.addEventListener(`close`,r=>{if(clearTimeout(g),t.dataWs!==d)return;if(kb(t,m,r),c&&!p&&wg(`terminal-closed`),Ly.delete(t),!f&&!p&&$e(),!$y(t,e)){Sb(e,t,n);return}if(p){bb(e,t,n,0);return}let i=pt(t._dataWsRetryAttempt||0);t._dataWsRetryAttempt=(t._dataWsRetryAttempt||0)+1,bb(e,t,n,i)});let v=()=>{clearTimeout(g),f=!0,m.openedAtMs=performance.now(),c&&wg(`terminal-opened`),t._dataWsRetryAttempt=0,Ly.delete(t),gb(t),eb(t,e),t._syncGrid?.({isActivationEdge:!0}),t._retryOwedGridClaim?.(),t._inputQueue?.length&&setTimeout(()=>{t.dataWs===d&&Mb(t)},50)};d.addEventListener(`open`,v),d.readyState===WebSocket.OPEN&&v();for(let e of u?.bufferedMessages??[])_(e)}var jb=!1;function Mb(e){let t=e._inputQueue,n=e.dataWs;if(!jb&&t?.length&&n?.readyState===WebSocket.OPEN){for(let e of t)n.send(JSON.stringify({type:`input`,data:e}));t.length=0,qy(e,`keys`)}}function Nb(){jb=!0;for(let e of O.values())gb(e)}function Pb(){jb=!1;for(let e of O.values())gb(e),Mb(e)}function Fb(e){let t=k(e);if(typeof e!=`string`||!t?.term)return;let n=t.dataWs;t._dataWsRetryAttempt=0,bb(e,t,t.term,0),n?.close()}function Ib(){for(let[e,t]of O)t.term&&($y(t,e)?Fb(e):Lb(e,t,t.term))}function Lb(e,t,n){let r=t.dataWs;r&&(Sb(e,t,n),r.close())}function Rb(){for(let[e,t]of O)t.term&&Lb(e,t,t.term)}function zb(e,t){let n=e.dataWs;e.dataWs=null,Ng.unregister(t),n&&n.readyState<=WebSocket.OPEN&&n.close()}function Bb(e,t,n){if(!e||t==null||t===``)return!1;if(n?.fromSoftKeyboard||e._resetSoftKeyboardBuffer?.(),!jb&&!e._inputQueue?.length&&e.dataWs?.readyState===WebSocket.OPEN)return e.dataWs.send(JSON.stringify({type:`input`,data:t})),!0;if(!e._inputQueue)return!1;let r=e.dataWs?.readyState!==WebSocket.OPEN;return e._inputQueue.length>=Cy?(Ky(e,`keys`,`error`,Uy),!1):(e._inputQueue.push(t),r&&Ky(e,`keys`,`busy`,Hy),!0)}function Vb(e,t,n){let r=window.matchMedia?.(Ty).matches?Ey:Dy,i=new n.Terminal({cursorBlink:ky,fontSize:r,fontFamily:sg(),theme:Wg(),scrollback:Oy,allowProposedApi:!0,linkHandler:P_()}),a=new n.FitAddon;i.loadAddon(a),ub(e),i.open(e),sb(e,t,i),I_(i),Mv(i,t.abortController.signal),t.term=i,t.fitAddon=a,my(t);let o=null,s=null,c=!1,l=null,u=null;function d(){s!==null&&(clearTimeout(s),s=null)}function f(){if(!c)return null;let e=t.fitAddon;if(!e)return null;let n=e.proposeDimensions();return n?{cols:n.cols,rows:n.rows}:null}function p(e){if(!c||!My(t.card)||t.dataWs?.readyState!==WebSocket.OPEN)return!1;t.dataWs.send(JSON.stringify({type:`claim`,cols:e.cols,rows:e.rows})),l=e,u=null;let n=s_({authoritative:t.ptySize??null,isActiveViewer:c,lastClaim:l});return t.card.dataset.grid=n?`following`:`exact`,!0}function m(e){d(),u=e,s=setTimeout(()=>{s=null,p(e)},wy)}function h(){u&&s===null&&p(u)}function g({isActivationEdge:e=!1}={}){let n=t.term;if(!n)return;let r=m_({authoritative:t.ptySize??null,applied:{cols:n.cols,rows:n.rows},proposal:f(),isActiveViewer:c,isDataWsOpen:t.dataWs?.readyState===WebSocket.OPEN,lastClaim:l});r.resizeTo&&n.resize(r.resizeTo.cols,r.resizeTo.rows),t.card.dataset.grid=r.isFollowing?`following`:`exact`,r.keepsPendingSettle||(d(),u=null),r.sendUnview?(l=null,t.dataWs?.send(JSON.stringify({type:`unview`}))):r.owedClaim&&(e&&p(r.owedClaim)||m(r.owedClaim))}function _(){let e=f_({authoritative:t.ptySize??null,isActiveViewer:c,isDocumentEngaged:My(t.card),isDataWsOpen:t.dataWs?.readyState===WebSocket.OPEN,lastClaim:l});e!==`none`&&(d(),e===`rebid`&&(l=null),g({isActivationEdge:!0}))}let v=new ResizeObserver(()=>{o===null&&(o=requestAnimationFrame(()=>{o=null,g()}))});v.observe(e),t.resizeObserver=v,t._syncGrid=g,t._resetGridClaim=()=>{d(),u=p_({isActiveViewer:c,lastClaim:l,owedClaim:u}),l=null},t._retryOwedGridClaim=h,t._syncGridOnEngagementEdge=_,t._isActiveViewer=()=>c,t._setActiveViewer=e=>{c!==e&&(c=e,d(),u=null,e&&gy(t),g({isActivationEdge:!0}))},t.card.addEventListener(`focusin`,()=>{jy=!1,_()},{signal:t.abortController.signal}),xy(t);let ee=null;i.onScroll(()=>{ee===null&&(ee=requestAnimationFrame(()=>{ee=null,t.term&&(t.term.refresh(0,t.term.rows-1),Yy(t,t.term))}))}),i.onWriteParsed(()=>Yy(t,i,{hasNewOutput:!0})),i.parser.registerOscHandler(52,e=>{let n=e.indexOf(`;`);if(n<0)return!0;let r=e.slice(n+1);if(r===``||r===`?`)return!0;let i;try{i=nb(r)}catch(e){return rb(t,`osc52 decode`,e),!0}return document.hasFocus()&&navigator.userActivation?.isActive!==!1?(ib(t,i,`osc52 write`),!0):(ab(t,i),!0)}),i.attachCustomKeyEventHandler(e=>{if(e.shiftKey&&e.key===`Enter`)return e.type===`keydown`&&Bb(t,`\x1B\r`),!1;if(e.type!==`keydown`)return!0;if(Sy(e))return!1;let n=e.ctrlKey||e.metaKey;if(n&&e.key===`c`&&i.hasSelection()){let e=i.getSelection();return i.clearSelection(),ib(t,e,`copy`),!1}return n&&e.key===`v`?!1:n&&e.key===`Backspace`?(Bb(t,`\x1B`),!1):!0}),Hb(e,i,t),ry(e,i)}function Hb(e,t,n){let r=t.textarea;if(!r)return;let i=``,a=()=>{i=r.value},o=()=>{i=``,_u()&&r.value!==``&&(r.value=``)};n._resetSoftKeyboardBuffer=o;let s=()=>{let e=E_(i,r.value);return i=r.value,e!==``&&(Bb(n,e,{fromSoftKeyboard:!0}),t.scrollToBottom(),!0)},c=(t,n)=>{e.addEventListener(t,e=>{_u()?n(e):a()},!0)};c(`keydown`,e=>{T_(e)?e.stopPropagation():(s(),queueMicrotask(o))}),c(`compositionstart`,e=>{e.stopPropagation()}),c(`compositionupdate`,e=>{e.stopPropagation()}),c(`compositionend`,e=>{e.stopPropagation(),setTimeout(s,0)}),c(`input`,e=>{if(!w_(e.inputType)){queueMicrotask(o);return}if(e.stopPropagation(),s())return;let r=S_(e.inputType);r!==``&&(Bb(n,r,{fromSoftKeyboard:!0}),t.scrollToBottom())})}function Ub(e,t){e._inputQueue=[];let n=e.term;n&&(n.onData(n=>{Bb(e,n),e.unseenOutcome&&E({type:`dismiss`,id:t,expectedState:e.currentState})}),n.onScroll(n=>{Zy(e,t,n)}),Gb(e.termWrap,t,e.abortController.signal),gb(e),queueMicrotask(()=>{cb(t,e)&&Ab(t,e,n)}))}function Wb(e){return!!e&&Array.from(e.types).includes(`Files`)}function Gb(e,t,n){e.addEventListener(`paste`,e=>{let n=e.clipboardData;n&&n.files.length!==0&&n.getData(`text/plain`)===``&&(e.preventDefault(),e.stopPropagation(),Lv(t,Array.from(n.files)))},{capture:!0,signal:n}),e.addEventListener(`dragover`,t=>{Wb(t.dataTransfer)&&(t.preventDefault(),t.dataTransfer.dropEffect=`copy`,e.dataset.dropTarget=`true`)},{signal:n}),e.addEventListener(`dragleave`,t=>{t.relatedTarget instanceof Node&&e.contains(t.relatedTarget)||delete e.dataset.dropTarget},{signal:n}),e.addEventListener(`drop`,n=>{delete e.dataset.dropTarget,Wb(n.dataTransfer)&&(n.preventDefault(),n.stopPropagation(),Lv(t,Array.from(n.dataTransfer.files)))},{capture:!0,signal:n})}function Kb(e,t){if(e.term||pb.has(e))return;let n=cy();if(n){qb(e,t,n);return}pb.add(e);let r=e._isActiveViewer?.()===!0;e._isActiveViewer=()=>r,e._setActiveViewer=e=>{r=e},ub(e.termWrap),gb(e),ly().then(n=>{pb.delete(e),!(e.term||e.abortController.signal.aborted||O.get(t)!==e)&&(qb(e,t,n),e._setActiveViewer?.(r))},()=>{pb.delete(e),gb(e)})}function qb(e,t,n){Vb(e.termWrap,e,n),Ub(e,t)}function Jb(e){e?._syncGridOnEngagementEdge?.()}function Yb(e,t){if(!e)return;Kb(e,t),eb(e,t),gy(e);let n=e.term;n&&(n.refresh(0,n.rows-1),Jb(e))}function Xb(e,t,n){e&&(n&&Kb(e,t),e._setActiveViewer?.(n))}var Zb=e=>e==null?``:String(e),Qb=e=>Ae.includes(e),$b=e=>Pe.includes(e);Da(cu);var ex=null,tx=null;function nx(){return ex??=P(()=>import(`./alert-sound-BUKodjoa.js`),[]).catch(e=>(ex=null,T(`alert-sound`,`alert sound failed to load: ${ft(e)}`),null)),ex}function rx(){return tx??=P(()=>import(`./resume-dialog-BVCjVjwE.js`),__vite__mapDeps([15,3,4,1,2,12,7])).catch(e=>(tx=null,T(`resume-dialog`,`restart dialog failed to load: ${ft(e)}`),null)),tx}function ix(){let e=Ir();nx().then(t=>t?.playAlertSound(e))}var ax=null,ox=null;function sx(){return ox??=P(()=>import(`./plan-face-BIW7eUkD.js`).then(e=>(ax=e,e),()=>(ox=null,null)),__vite__mapDeps([16,3,4,1,7,8,17])),ox}function cx(e){let t=w(`section`,`plan-face`);t.hidden=!0;let n=null,r=!1,i=null,a={},o=new Map;function s(s){if(r=!1,e.signal?.aborted)return;if(!s){e.reportProblem(`The plan view did not load. Open the plan again to retry.`),i!==null&&e.showTerminal(),i=null;return}let c=s.createPlanFace(e);t.replaceWith(c.el),c.update(a);for(let e of o.values())c.update({draft:e});o.clear(),n=c,i!==null&&c.show(i)}return{get el(){return n?.el??t},show(e){n?n.show(e):(i=e,!r&&(r=!0,sx().then(s)))},hide(){i=null,n?.hide()},update(e){n?n.update(e):(e.state&&(a.state=e.state),typeof e.isConnected==`boolean`&&(a.isConnected=e.isConnected),e.draft&&o.set(e.draft.agentId,e.draft))}}}function lx(e){let t=e.currentState;e.btnRestart.classList.toggle(`visible`,Qb(t)||$b(t)||t===x.DORMANT),e.btnWorkspaceRepos.classList.toggle(`visible`,e.card.dataset.workspace!==void 0),e.btnTrace.classList.toggle(`visible`,sc()),e.btnPlan.classList.toggle(`visible`,Eh(e)!==`hidden`)}function ux(e){e.sessionMenu.classList.remove(`open`),e.btnSessionMenu.setAttribute(`aria-expanded`,`false`)}function dx(e,t){Tc(e.taskTitleEl,()=>Oc(e,t)),e.nameEl.addEventListener(`dblclick`,n=>{n.preventDefault(),jc(e,t)}),e.nameEl.addEventListener(`click`,()=>{Ac(e.nameEl)||Pl(t)}),e.nameEl.addEventListener(`keydown`,n=>{n.target===e.nameEl&&(n.key===`F2`||n.key===`Enter`)&&(n.preventDefault(),jc(e,t))}),e.btnRestart.addEventListener(`click`,()=>{ux(e),rx().then(n=>n?.openRestartDialog(t,{readState:()=>e.currentState,canListEarlier:e.card.dataset.ephemeral===void 0}))}),e.btnWorkspaceRepos.addEventListener(`click`,()=>{ux(e),jh(t)}),e.btnTrace.addEventListener(`click`,()=>{ux(e),Gm(t)}),e.btnDocs.addEventListener(`click`,()=>{ux(e),fa(t)}),e.btnShown.addEventListener(`click`,()=>{ux(e),ja(t)}),e.btnGuardrails.addEventListener(`click`,()=>{if(e.btnGuardrails.getAttribute(`aria-disabled`)===`true`)return;let n=n=>()=>{nc(e,{type:`set-session-guardrails`,id:t,isOn:n})};e.card.dataset.guarded===void 0?At({title:`Restore guardrails`,message:`This session restarts with guardrails on, interrupting any turn in progress.`,confirmLabel:`Restore guardrails`,danger:!1,onConfirm:n(!0)}):At({title:`Release guardrails`,message:`This session restarts without guardrails, interrupting any turn in progress. It can then read, write and reach anything your account can, including credentials and Glimmervoid itself.`,confirmLabel:`Release guardrails`,danger:!0,onConfirm:n(!1)})}),e.btnPlan.addEventListener(`click`,()=>{let n=Eh(e);n!==`hidden`&&(n===`face`?Sx(t):location.hash=Bu(t))}),e.btnRemove.addEventListener(`click`,()=>{ux(e),$l(t)});function n(){for(let[,t]of O)t!==e&&ux(t);e.sessionMenu.classList.add(`open`),e.btnSessionMenu.setAttribute(`aria-expanded`,`true`)}e.btnSessionMenu.addEventListener(`click`,t=>{t.stopPropagation(),e.sessionMenu.classList.contains(`open`)?ux(e):n()}),Rs({trigger:e.btnSessionMenu,menu:e.sessionMenu,menuItems:()=>[...e.sessionMenu.querySelectorAll(`.popup-menu-item.visible`)],isOpen:()=>e.sessionMenu.classList.contains(`open`),open:n,close:()=>ux(e),signal:e.abortController.signal}),document.addEventListener(`click`,t=>{let n=t.target instanceof Node?t.target:null;!e.sessionMenu.contains(n)&&n!==e.btnSessionMenu&&ux(e)},{signal:e.abortController.signal}),e.btnDebug.addEventListener(`click`,n=>{n.stopPropagation(),Rc(e,t)}),document.addEventListener(`click`,t=>{let n=t.target instanceof Node?t.target:null;e.debugOpen&&!e.card.contains(n)&&zc(e)},{signal:e.abortController.signal})}function fx(e,t,n){let r=k(e);if(r){r.taskTitle=typeof t==`string`?t:null,r.taskTitleIsCustom=n===!0;for(let e of[r.taskTitleEl,r.titleTargetEl])e&&Dc(e,r.taskTitle)}}function px(e){return typeof e==`string`&&O.has(e)}function mx(){return O.size}function hx(e){let t=e||{};t.cursorBlink!=null&&Ay(t.cursorBlink),t.debugMode!=null&&(ac(t.debugMode),Iu(t.debugMode));for(let[,e]of O)e.term&&t.cursorBlink!=null&&(e.term.options.cursorBlink=t.cursorBlink)}function gx(){ag(O.values(),sg())}function _x(e){return{state:e.currentState,unseenOutcome:e.unseenOutcome,ownerId:e.ownerId}}function vx(){let e=mt(A.counts),t=e>0?`(${e}) Glimmervoid`:`Glimmervoid`;document.title!==t&&(document.title=t)}function yx(e,t,n,r={}){if(!Tt)return;let i=D(e),a=Zb(n)||x.DORMANT,o=xc(i,Zb(t),a,r),s=a===x.DORMANT;Tt.appendChild(o.card);let c;function l(){c.face=`terminal`,c.card.dataset.face=`terminal`,c.termWrap.hidden=!1,c.planFace.hide(),lx(c),Yb(c,i)}let u=new AbortController,d=cx({signal:u.signal,requestPlan:(e,t,n)=>E({type:`session-plan`,id:e,agentId:t,revision:n}),requestDraft:(e,t)=>E({type:`session-plan`,id:e,agentId:t,draft:!0}),showTerminal:l,sendDecision:(e,t)=>E({type:`plan-decision`,id:e,...t}),reportProblem:e=>Gx(i,e)});c={term:null,fitAddon:null,webglAddon:null,needsWebGLReload:!1,webglAttachedWithoutLayout:!1,dataWs:null,card:o.card,nameEl:o.nameEl,taskTitleEl:o.taskTitleEl,taskTitle:r.taskTitle??null,taskTitleIsCustom:r.taskTitleIsCustom??!1,path:Zb(r.path),ownerId:r.ownerId??null,stateSince:typeof r.stateSince==`number`&&Number.isFinite(r.stateSince)?r.stateSince:Date.now(),sessionMenu:o.sessionMenu,termWrap:o.termWrap,btnDebug:o.btnDebug,btnRestart:o.btnRestart,btnSessionMenu:o.btnSessionMenu,btnWorkspaceRepos:o.btnWorkspaceRepos,btnGuardrails:o.btnGuardrails,btnTrace:o.btnTrace,btnPlan:o.btnPlan,btnDocs:o.btnDocs,btnShown:o.btnShown,shownUnopenedDot:o.shownUnopenedDot,btnRemove:o.btnRemove,debugOverlay:null,debugOpen:!1,abortController:u,currentState:a,face:`terminal`,isBorrowed:!1,hasPlan:!1,pendingPromptKind:null,planReviewState:{reviews:[]},planFace:d},c._ensureTerminalReady=()=>Yb(c,i),c._showTerminalFace=l,c._showPreferredFace=()=>{bx(c)===`plan`?Sx(i):l()},c._setBorrowed=e=>{c.isBorrowed=e,lx(c)},o.card.append(d.el);let f=O.get(i);return f&&Ot(A,_x(f)),O.set(i,c),_t(A,_x(c)),Lt(i,c),dx(c,i),lx(c),c.btnDocs.classList.toggle(`visible`,sa(i)),Oa(i),a===x.RUNNING&&It(c,!0),s||Kb(c,i),vx(),c}function bx(e){let t=e.planReviewState.reviews.some(e=>e.state===`open`),n=e.planReviewState.reviews.some(Wu);return Th({hasPlan:e.hasPlan,pendingPromptKind:e.pendingPromptKind,hasOpenReview:t,hasApprovedReview:n})}function xx(e){let t=k(e);return!t?.isBorrowed||bx(t)!==`plan`?!1:Sx(e)}function Sx(e){let t=k(e);return!t?.isBorrowed||!t.hasPlan?!1:(t.face=`plan`,t.card.dataset.face=`plan`,t.termWrap.hidden=!0,t.planFace.show(D(e)),lx(t),eb(t,D(e)),!0)}function Cx(e,t){let n=k(e);n&&(n.hasPlan=t===!0,lx(n),xx(e))}function wx(e){let t=k(e.id);t&&(t.planReviewState=sd(t.planReviewState,e),t.hasPlan=e.hasPlan,t.planFace.update({state:t.planReviewState}),lx(t),xx(e.id))}function Tx(e){let t=k(e.id);t&&t.planFace.update({draft:e})}function Ex(e){let t=k(e.id);t&&(t.planReviewState={reviews:e.reviews},t.hasPlan=!0,t.planFace.update({response:e}),lx(t))}function Dx(e){if(e.type!==`error`&&e.type!==`session-error`||e.scope!==`plan`&&e.scope!==`plan-decision`)return!1;let t=k(e.id);return t?e.scope===`plan`?(t.planFace.update({requestFailed:!0}),!0):(t.planFace.update({decisionRefused:!0,refusalText:e.message}),!0):!1}function Ox(e){for(let[,t]of O)t.planFace.update({isConnected:e})}function kx(e,t){let n=k(e);n&&(n.effectiveBase=typeof t==`string`?t:void 0)}function Ax(e,t){let n=k(e);n&&(n.agent=typeof t==`string`?t:null,lx(n))}function jx(e,t){let n=k(e);n&&(t?n.card.dataset.worktree=``:delete n.card.dataset.worktree)}function Mx(e,t,n){let r=k(e);r&&(Nx(r.card,`guarded`,t),Nx(r.card,`guardrailsReleased`,n),Cc(r.btnGuardrails,r.card))}function Nx(e,t,n){n?e.dataset[t]=``:delete e.dataset[t]}function Px(e,t,n=!1){let r=k(e);r&&(r.activeAgents=Math.max(0,Number(t)||0),r.awaitingBackgroundTasks=Ve(r.currentState,n===!0),r.card.toggleAttribute(`data-monitoring`,r.awaitingBackgroundTasks))}function Fx(e,t){let n=k(e);if(!n)return;let r=Ch(t),i=n.card.querySelector(`.usage-badge`);if(r)n.card.dataset.usage=``,i&&(i.dataset.tipLabel=r,i.dataset.tipDetail=wh(t),Zs(i));else{if(delete n.card.dataset.usage,!i)return;delete i.dataset.tipLabel,Zs(i)}}function Ix(e,t){let n=k(e);n&&(n.pendingPromptKind=typeof t==`string`?t:null,xx(e))}function Lx(e,t){let n=k(e);n&&(Ot(A,_x(n)),n.unseenOutcome=t??null,_t(A,_x(n)))}function Rx(e,t){t===`pending-review`||t===`parked`||t===`merging`?e.dataset.merge=t:delete e.dataset.merge}function zx(e,t,n=null){let r=k(e),i=Zb(t)||`none`;r&&Rx(r.card,i),Lf(D(e),i,Zb(n)||null)}function Bx(e,t,n=null){let r=k(e),i=Zb(t)||`none`;r&&Rx(r.card,i),zf(D(e),i,Zb(n)||null)}function Vx(e,t){Bf(D(e),t)}function Hx(e,t){let n=k(e);if(!n)return;let r=Zb(t);n.card.dataset.session=r,n.nameEl.textContent=r}function Ux(e){let t=k(e);t&&(zc(t),Ot(A,_x(t)),O.delete(D(e)),Lt(D(e),void 0),ax?.dropPlanBodyCache(D(e)),t.resizeObserver&&t.resizeObserver.disconnect(),t.abortController&&t.abortController.abort(),zb(t,D(e)),my(t),t.term&&t.term.dispose(),t.term=null,t.fitAddon=null,t.card&&t.card.remove(),vx())}function Wx(e,t,n){if(!t||!e.term)return;let r=n===x.DONE?`Session complete`:`Session failed`,i=n===x.DONE?`\x1B[34m`:`\x1B[31m`;e.term.write(`\r\n\r\n\x1b[2m${i} ${r}\x1b[0m\r\n\r\n\x1b[2m Open the session actions menu and choose Restart to start a new session.\x1b[0m\r\n`)}function Gx(e,t){let n=k(e);n?tc(n).show(`error`,t):R({source:`Session`,sessionId:typeof e==`string`?e:void 0,message:t})}function Kx(e,t){let n=k(e);if(!n)return;let r=n.card.querySelector(`:scope > .session-failure-reason`);if(!(n.currentState===x.FAILED&&t)){r?.remove();return}let i=r??w(`p`,`session-failure-reason`);i.setAttribute(`role`,`status`),i.textContent=t,r||n.termWrap.before(i)}function qx(e,t){e.term&&(t===x.DONE||t===x.FAILED)&&(e.term.clear(),e.term.reset())}function Jx(e){let t=O.get(e);t&&wt({state:t.currentState,unseenOutcome:t.unseenOutcome})&&document.visibilityState===`visible`&&(_u()||document.hasFocus())&&E({type:`dismiss`,id:e,expectedState:t.currentState})}function Yx(e,t,n){let r=document.activeElement;return El({previousState:t,nextState:n,isPhoneLayout:_u(),isDocumentVisible:document.visibilityState===`visible`,isDocumentFocused:document.hasFocus(),isActiveViewer:e._isActiveViewer?.()===!0,hasFocusInsideTerminal:r instanceof Node&&e.termWrap.contains(r)})}function Xx(){return Pr()&&!Zh()}function Zx(e,t,n,r=``){let i=k(e);if(!i)return;let a=Zb(t),o=i.currentState;Ot(A,_x(i)),i.currentState=a,_t(A,_x(i)),Lt(D(e),i),a!==x.RUNNING&&(i.awaitingBackgroundTasks=!1),a!==o&&(i.stateSince=typeof n==`number`&&Number.isFinite(n)?n:Date.now(),It(i,a===x.RUNNING)),o===x.DORMANT&&a!==x.DORMANT&&Kb(i,D(e)),kt({state:a})===`resting`&&Yh(D(e)),i.card.dataset.state=a,i.card.toggleAttribute(`data-monitoring`,Ve(a,i.awaitingBackgroundTasks)),lx(i),(a===x.WAITING&&o!==x.WAITING||a===x.COMPLETE&&o!==x.COMPLETE)&&!tu(r)&&Xx()&&ix(),Yx(i,o,a)&&E({type:`dismiss`,id:D(e),expectedState:x.COMPLETE});let s=a===x.DONE||a===x.FAILED,c=o!==x.DONE&&o!==x.FAILED&&o!==x.INITIALIZING;s&&c&&(i.card.classList.remove(`completion-flash`),requestAnimationFrame(()=>{requestAnimationFrame(()=>{i.card.classList.add(`completion-flash`),i.card.addEventListener(`animationend`,()=>i.card.classList.remove(`completion-flash`),{once:!0})})}),Xx()&&ix()),(a===x.DONE||a===x.FAILED)&&Wx(i,c,a),a===x.INITIALIZING&&qx(i,o),vx()}var Qx=`(no path)`;function $x(e){if(!e)return Qx;let t=String(e).replace(/[/\\]+$/,``),n=Math.max(t.lastIndexOf(`/`),t.lastIndexOf(`\\`));return(n===-1?t:t.slice(n+1))||`(no path)`}function eS(e,t,n){let r=Array.isArray(e)?e:[],i=new Map;for(let e of r){let n=t(e),r=n?String(n):Qx,a=i.get(r);a||(a={key:r,label:r===`(no path)`?Qx:$x(r),title:r,rows:[]},i.set(r,a)),a.rows.push(e)}if(n)for(let e of n){if(!e)continue;let t=String(e);t===`(no path)`||i.has(t)||i.set(t,{key:t,label:$x(t),title:t,rows:[]})}let a=[...i.values()];return a.sort((e,t)=>e.label.localeCompare(t.label,void 0,{numeric:!0,sensitivity:`base`})||e.key.localeCompare(t.key)),{flat:i.size<=1,order:a.map(e=>e.key),groups:a}}function tS(e,t){if(!e||!Array.isArray(e.groups))return[];let n=t||new Set,r=[];if(e.flat){for(let t of e.groups)for(let e of t.rows)r.push(e.id);return r}let i=new Map(e.groups.map(e=>[e.key,e]));for(let t of e.order){if(n.has(t))continue;let e=i.get(t);if(e)for(let t of e.rows)r.push(t.id)}return r}function nS({onAdd:e,onForget:t}){let n=w(`div`,`session-group-header`),r=w(`span`,`session-group-label`),i=w(`span`,`session-group-count`),a=w(`span`,`session-group-rule`);a.setAttribute(`aria-hidden`,`true`);let o=w(`button`,`session-group-add`,`+`);o.type=`button`,o.addEventListener(`click`,()=>e(n.dataset.path,n.dataset.label));let s=w(`button`,`session-group-forget`);return s.type=`button`,s.append(L(Jo)),s.addEventListener(`click`,()=>t(n.dataset.path)),n.append(r,i,a,s,o),{header:n,label:r,count:i,addButton:o,forgetButton:s}}function rS(e,t,n){let{header:r,label:i,count:a,addButton:o,forgetButton:s}=e,c=t.key===Qx,l=t.rows.length===0;Wo(r,`path`,t.key),Wo(r,`label`,t.label),I(r,`title`,t.title),r.toggleAttribute(`data-empty`,l),F(i,t.label),F(a,String(t.rows.length)),I(a,`title`,`${t.rows.length} ${t.rows.length===1?`session`:`sessions`}`),Uo(o,c),Uo(s,c||!l),c||(I(o,`title`,`Add a session to ${t.label}`),I(o,`aria-label`,`Add a session to ${t.label}`)),!c&&l&&(I(s,`title`,`Remove ${t.label} from the ${n}`),I(s,`aria-label`,`Remove ${t.label} from the ${n}`))}var iS={waitingCount:0,finishedCount:0,failedCount:0},aS={failed:Fe[x.FAILED],waiting:Fe[x.WAITING],finished:Fe[x.COMPLETE]},oS={failed:`failed`,waiting:`needs you`,finished:`finished`},sS=[`NI.`,`THIS QUEUE IS DECEASED`,`AND NOW, NOTHING AT ALL`,`TOUCH GRASS, BRIEFLY`,`GO STRETCH`,`THE AGENTS ARE COPING`,`MORALE IS ADEQUATE`,`REQUIESCAT`,`STANDARDS ARE BEING MET`,`THE AGENTS WANT SPACE`,`NO CAUSE FOR ALARM`,`KINDLY GO AWAY`,`THEY COPE WITHOUT YOU`,`PRESS HARDER, PERHAPS`,`OH, WELL DONE`,`THAT DID NOTHING. AGAIN.`,`WELL. YOU TRIED.`,`SUBJECT PRESSED BUTTON`,`THE BUTTON WORKS. YOU?`,`WE HAVE NO PROBLEMS`,`THE LAWYERS SAY RELAX`,`BRING A TOWEL`],cS=2500,lS=`cubic-bezier(0.16, 1, 0.3, 1)`,uS=`cubic-bezier(0.5, 0, 0.2, 1)`,dS=260,fS=200,pS=200,mS=300,hS=28,gS=360,_S=420,vS=200,yS=3,bS=window.matchMedia?.(`(prefers-reduced-motion: reduce)`),xS=new WeakMap;function SS(e){let t=xS.get(e);if(!t)throw Error(`attention banner was not built by buildAttentionBanner`);return t}function CS(e){return!document.hidden&&typeof e.animate==`function`&&e.getClientRects().length>0}function wS(){return bS?.matches??!1}function TS(e){return e.map(e=>({easing:lS,...e}))}function ES(e,t){let n=w(`div`,`attention-banner`);n.setAttribute(`role`,`status`),n.style.setProperty(`--attention-head-tile-px`,`${Et.headTile}px`),n.style.setProperty(`--attention-tile-px`,`${Et.tile}px`),n.style.setProperty(`--attention-tile-gap-px`,`${Et.tileGap}px`),n.style.setProperty(`--attention-overflow-px`,`${Et.overflowSlot}px`);let r=w(`span`,`attention-banner-chips`),i=w(`span`,`attention-tile-overflow`);i.setAttribute(`aria-hidden`,`true`),i.hidden=!0,r.append(i);let a=w(`span`,`attention-banner-line`);a.setAttribute(`aria-hidden`,`true`);let o=w(`span`,`attention-banner-status`);o.append(r,w(`span`,`attention-banner-count`),a);let s=w(`button`,`attention-banner-jump-row`);return s.type=`button`,s.append(o),t&&(t.classList.add(`attention-banner-jump`),s.append(t)),n.addEventListener(`click`,()=>e.onJump()),n.append(s),xS.set(n,{hooks:e,tiles:[],tileById:new Map,headId:null,flyingIds:new Set,tetheredId:null,tetheredRow:null,lastAllClearLine:null,allClearLineTimer:null,pressAnimations:[]}),typeof ResizeObserver==`function`&&new ResizeObserver(()=>OS(n)).observe(r),DS(n,iS,[]),n}function DS(e,t,n){let r=SS(e);r.tiles=n,F(C(e,`.attention-banner-count`),vt(t));let i=n.length>0;e.toggleAttribute(`data-empty`,!i),e.toggleAttribute(`data-jumpable`,i),i&&WS(e,r),OS(e)}function OS(e){let t=SS(e),n=C(e,`.attention-banner-chips`),r=C(n,`.attention-tile-overflow`),i=CS(e),a=t.tiles.slice(0,bt(n.clientWidth,t.tiles.length)),o=new Set(a.map(({id:e})=>e)),s=new Map;if(i)for(let[e,n]of t.tileById)s.set(e,n.getBoundingClientRect().left);let c=[...t.tileById].filter(([e])=>!o.has(e)),l=c.map(([,e])=>({left:e.offsetLeft,top:e.offsetTop}));c.forEach(([e,n],r)=>{t.tileById.delete(e),t.flyingIds.has(e)||!i?n.remove():MS(n,l[r])});let u=t.headId,d=[],f=null;a.forEach((i,a)=>{let o=t.tileById.get(i.id),s=o??AS(e,i.id);o||(t.tileById.set(i.id,s),d.push(s)),jS(s,i,a===0),(s.parentElement!==n||kS(s)!==f)&&n.insertBefore(s,r),f=s});let p=t.tiles.length-a.length;Uo(r,p===0),F(r,`+${p}`),I(r,`title`,`${p} more after these`),t.headId=a[0]?.id??null;let m=t.tiles[0]?.kind;if(m&&(e.dataset.headKind=m),m||delete e.dataset.headKind,t.tetheredId&&!o.has(t.tetheredId)&&IS(e,null),i){for(let e of d)NS(e);a.forEach(({id:e},n)=>{let r=t.tileById.get(e),i=s.get(e);if(!r||i===void 0)return;let a=i-r.getBoundingClientRect().left;e===t.headId&&e!==u?FS(r,a):a!==0&&PS(r,a,n)})}}function kS(e){let t=e.previousElementSibling;for(;t?.hasAttribute(`data-leaving`);)t=t.previousElementSibling;return t}function AS(e,t){let n=w(`span`,`attention-tile`);n.setAttribute(`role`,`img`),n.dataset.id=t;let r=w(`span`,`attention-tile-icon`);return r.setAttribute(`aria-hidden`,`true`),n.append(r),n.addEventListener(`pointerenter`,()=>IS(e,t)),n.addEventListener(`pointerleave`,()=>IS(e,null)),n}function jS(e,{kind:t,name:n},r){e.dataset.kind=t,e.toggleAttribute(`data-head`,r);let i=`${n}, ${oS[t]}`;e.title=i,e.setAttribute(`aria-label`,i),cs(C(e,`.attention-tile-icon`),aS[t])}function MS(e,t){e.toggleAttribute(`data-leaving`,!0),e.style.left=`${t.left}px`,e.style.top=`${t.top}px`;let n=wS()?[{opacity:1},{opacity:0}]:TS([{transform:`none`,opacity:1},{transform:`scale(0.6)`,opacity:0}]),r=e.animate(n,{duration:pS,fill:`forwards`});r.onfinish=()=>e.remove(),r.oncancel=()=>e.remove()}function NS(e){let t=wS()?[{opacity:0},{opacity:1}]:TS([{transform:`scale(0.6)`,opacity:0},{transform:`none`,opacity:1}]);e.animate(t,{duration:fS})}function PS(e,t,n){wS()||e.animate(TS([{transform:`translateX(${t}px)`},{transform:`none`}]),{duration:mS,delay:n*hS,fill:`backwards`})}function FS(e,t){wS()?e.animate([{opacity:.35},{opacity:1}],{duration:gS,easing:lS}):e.animate(TS([{transform:`translateX(${t}px) scale(0.8)`,filter:`brightness(1.8)`},{transform:`scale(1.1)`,offset:.6},{transform:`none`,filter:`none`}]),{duration:gS})}function IS(e,t){let n=SS(e),r=t?n.tileById.get(t):void 0,i=r&&t?t:null;if(i===n.tetheredId||(n.tetheredId&&n.tileById.get(n.tetheredId)?.toggleAttribute(`data-tethered`,!1),n.tetheredRow?.toggleAttribute(`data-tethered`,!1),n.tetheredRow?.style.removeProperty(`--tether`),n.tetheredId=i,n.tetheredRow=null,!r||!i))return;r.toggleAttribute(`data-tethered`,!0);let a=n.hooks.rowFor(i);if(!a)return;let o=getComputedStyle(r).getPropertyValue(`--tile`).trim();o&&a.style.setProperty(`--tether`,o),a.toggleAttribute(`data-tethered`,!0),n.tetheredRow=a}function LS(e){return!e||e.getClientRects().length===0?null:e.getBoundingClientRect()}function RS(e,t,n){let r=SS(e);if(r.flyingIds.has(t))return;let i=r.tileById.get(t);if(!i||!CS(e)){n();return}IS(e,null),r.flyingIds.add(t);let a=r.hooks.rowFor(t),o=i.getBoundingClientRect(),s=LS(a?.querySelector(`.session-row-glyph`)??a),c=i.cloneNode(!0);if(!(c instanceof HTMLElement)){r.flyingIds.delete(t),n();return}c.classList.add(`attention-tile-ghost`),c.setAttribute(`aria-hidden`,`true`),c.removeAttribute(`aria-label`),c.tabIndex=-1,c.style.left=`${o.left}px`,c.style.top=`${o.top}px`,c.style.width=`${o.width}px`,c.style.height=`${o.height}px`,document.body.append(c),i.style.visibility=`hidden`;let l=c.animate(zS(o,s),BS(s)),u=()=>{c.remove(),r.flyingIds.delete(t),i.isConnected&&(i.style.visibility=``),n()};l.onfinish=u,l.oncancel=u}function zS(e,t){return!t||wS()?[{opacity:1},{opacity:0}]:[{transform:`none`,opacity:1},{transform:`translateY(-5px) scale(1.2)`,opacity:1,offset:.25},{transform:`translate(${t.left+t.width/2-(e.left+e.width/2)}px, ${t.top+t.height/2-(e.top+e.height/2)}px) scale(${Math.min(1,t.width/e.width)})`,opacity:.2}]}function BS(e){return!e||wS()?{duration:vS,fill:`forwards`}:{duration:_S,easing:uS,fill:`forwards`}}function VS(e){let t=SS(e);e.hasAttribute(`data-empty`)&&US(e,t);for(let e of t.pressAnimations)e.cancel();if(t.pressAnimations=[],!CS(e))return;let n={duration:dS};if(t.pressAnimations.push(e.animate(TS([{opacity:0},{opacity:.07,offset:.3},{opacity:0}]),{...n,pseudoElement:`::after`})),!wS()){t.pressAnimations.push(e.animate(TS([{transform:`none`},{transform:`scale(0.97) translateY(1px)`,offset:.3},{transform:`none`}]),n));for(let r of e.querySelectorAll(`.attention-banner-jump .kbd`))t.pressAnimations.push(r.animate(TS([{transform:`none`},{transform:`translateY(${yS}px)`,offset:.3},{transform:`none`}]),n),r.animate(TS([{transform:`none`},{transform:`translateY(-${yS}px)`,offset:.3},{transform:`none`}]),{...n,pseudoElement:`::after`}))}}function HS(e){let t=sS.filter(t=>t!==e);return t[Math.floor(Math.random()*t.length)]??sS[0]}function US(e,t){let n=HS(t.lastAllClearLine);t.lastAllClearLine=n,C(e,`.attention-banner-line`).textContent=n,e.toggleAttribute(`data-all-clear-line`,!0),t.allClearLineTimer!==null&&window.clearTimeout(t.allClearLineTimer),t.allClearLineTimer=window.setTimeout(()=>WS(e,t),cS)}function WS(e,t){t.allClearLineTimer!==null&&window.clearTimeout(t.allClearLineTimer),t.allClearLineTimer=null,e.toggleAttribute(`data-all-clear-line`,!1)}var GS=e=>e.ui.path,KS=window.matchMedia?.(`(prefers-reduced-motion: reduce)`),qS=null,J=null,JS=null,YS=null,XS=null,ZS=null,QS=null,Y=!1,$S=!1,eC=new Map,X=new Map,tC=new Map,nC=new Map,Z=null,rC=``,iC=[],aC=new Set;function oC(){return tS(cC(_C()),aC)}function sC(e){let t=Z;if(Z=e||null,t&&t!==Z){let e=X.get(t);e&&(e.tabIndex=-1,e.setAttribute(`aria-selected`,`false`))}if(Z){let e=X.get(Z);e&&(e.tabIndex=0,e.setAttribute(`aria-selected`,`true`))}}function cC(e){return eS(e,GS,Cl(e,GS))}function lC(e){let t=nC.get(e.key),n=tC.get(e.key);return(!t||!n)&&(t=nS({onAdd:ql,onForget:e=>{wl(e),wC()}}),n=w(`div`,`focus-rail-list`),n.setAttribute(`role`,`listbox`),nC.set(e.key,t),tC.set(e.key,n)),rS(t,e,`rail`),I(n,`aria-label`,`${e.label} sessions`),{header:t.header,list:n}}function uC(){return Y}function dC(){return j.snapshot().focusedSessionId}function fC({rail:e,center:t,resizer:n}){if(qS=e,JS=t,!qS||!JS)return;let r=qS,i=JS;hC(n),r.removeAttribute(`role`),r.removeAttribute(`aria-label`),r.setAttribute(`aria-keyshortcuts`,br(ld)),J=ES({onJump:OC,rowFor:e=>X.get(e)},hd());let a=w(`details`,`rail-status-key`);a.append(w(`summary`,`rail-status-key-summary`,`Status key`),vl()),r.append(J,a),XS=w(`div`,`focus-empty`),XS.innerHTML=`<p class="focus-empty-title"></p><p class="focus-empty-desc"></p>`,ZS=XS.querySelector(`.focus-empty-title`),QS=XS.querySelector(`.focus-empty-desc`),YS=w(`div`,`focus-card-slot`),i.append(XS,YS),r.addEventListener(`keydown`,gC)}var pC={minPx:180,maxPx:480},mC=16;function hC(e){e&&qS&&Po({resizer:e,column:qS,widthHost:qS,widthProperty:`--rail-width`,bounds:pC,keyStepPx:mC,getStoredWidth:Qr,setStoredWidth:$r})}function gC(e){if(e.key===`Delete`||e.key===`Backspace`){let t=e.target instanceof HTMLElement?e.target:null,n=t?.dataset.id;if(!n||X.get(n)!==t)return;e.preventDefault(),$l(n);return}if(e.key!==`ArrowDown`&&e.key!==`ArrowUp`||e.altKey||e.metaKey||e.ctrlKey||e.shiftKey)return;let t=ht(oC(),Z,e.key===`ArrowDown`?1:-1);t!=null&&(e.preventDefault(),sC(t),X.get(t)?.focus())}function _C(){return xt(zl(vC))}function vC(e){return e.nameEl?e.nameEl.textContent:e.card&&(e.card.dataset.session||e.card.dataset.id)||``}function yC(e){let{row:t,refs:n}=il(`button`);t.type=`button`,t.dataset.id=e,t.setAttribute(`role`,`option`),t.addEventListener(`click`,()=>bC(e)),t.addEventListener(`pointerenter`,()=>{J&&IS(J,e)}),t.addEventListener(`pointerleave`,()=>{J&&IS(J,null)});let{item:r,removeButton:i}=al(t,()=>$l(e));return r.setAttribute(`role`,`presentation`),i.tabIndex=-1,Object.assign(t,{_refs:n,_row:r})}function bC(e){let t=Il(e);t&&(PC(e),AC(t,e))}function xC(e,{id:t,ui:n,state:r,name:i},a){let o=eC.get(t)||`none`;fl(e,e._refs,{ui:n,state:r,name:i??``,mergeStatus:o===`none`?``:o,attentionPosition:a}),e.classList.toggle(`focused`,t===dC()),e.classList.toggle(`has-unopened-shown`,Ta(t));let s=t===Z;I(e,`aria-selected`,String(s)),I(e,`tabindex`,s?`0`:`-1`)}function SC(e,t){if(!Y)return;let n=e?.card?.dataset.id,r=n?X.get(n):null;r&&(t===`flag`?r.dataset.activity=e._activity||``:Vt(r._refs?.glyph))}Ft(SC),Ht((e,t)=>{if(!Y)return;let n=X.get(e);n&&F(n._refs.elapsed,Bt(t))});var CC=new Map;function wC(e){if(!Y)return;let t=qS;if(!t)return;let n=_C(),r=cC(n),i=new Set,a=St(n,dC()),o=new Map(a.map(({id:e},t)=>[e,t+1])),s=(t,n)=>{let r=t.map(e=>e.id).join(`,`),a=n._lastOrderKey===r&&n.childElementCount===t.length;for(let n of t){let{id:t}=n;i.add(t);let r=X.get(t),a=!r;r||(r=yC(t),X.set(t,r));let s=o.get(t)??null;(!e||a||e.has(t)||CC.get(t)!==s)&&xC(r,n,s),CC.set(t,s)}a||Ho(n,t.flatMap(({id:e})=>X.get(e)?._row??[])),n._lastOrderKey=r},c=new Set(r.order),l=r.groups.map(e=>e.key).join(`
|
|
77
77
|
`),u=l===rC;rC=l;for(let e of r.groups){let{header:n,list:r}=lC(e);u||t.append(n,r),s(e.rows,r)}for(let[e,t]of[...nC])c.has(e)||(t.header.remove(),tC.get(e)?.remove(),nC.delete(e),tC.delete(e));for(let[e,t]of X)i.has(e)||(t._row.remove(),X.delete(e),CC.delete(e),e===Z&&(Z=null));for(let e of[...eC.keys()])O.has(e)||eC.delete(e);let d=iC;iC=tS(r,aC);let f=dC();if(f&&!O.has(f)){j.dispatch(`focusSession`,null),Z=null;let e=TC(d,f);if(e){let t=!document.activeElement||document.activeElement===document.body;PC(e),t&&AC(O.get(e),e);return}}FC();let p=dC();if(p){let e=O.get(p);e&&e.card.parentElement!==YS&&MC(e,p)}DC(n,a)}function TC(e,t){let n=e.filter(e=>e===t||O.has(e));if(n.length<2)return iC.find(e=>O.has(e))??null;let r=n.indexOf(t)===n.length-1;return ht(n,t,r?-1:1)}function EC(){return St(_C(),dC())}function DC(e,t){J&&DS(J,Dt(e),t)}function OC(){if(!Y)return;J&&VS(J);let e=EC()[0]?.id;e&&kC(e)}function kC(e){if(!Y)return;X.get(e)?.scrollIntoView({block:`nearest`}),J&&RS(J,e,()=>jC(e));let t=O.get(e);Il(e),PC(e),AC(t,e)}function AC(e,t){e&&requestAnimationFrame(()=>requestAnimationFrame(()=>{Y&&dC()===t&&e.term?.focus()}))}function jC(e){if(KS?.matches||document.hidden)return;let t=X.get(e);t?.animate&&(t.animate([{transform:`scale(1)`},{transform:`scale(1.045)`,offset:.3},{transform:`scale(1)`}],{duration:360,easing:`cubic-bezier(0.22, 1, 0.36, 1)`}),t._row.animate([{boxShadow:`0 0 0 3px var(--accent)`},{boxShadow:`0 0 0 3px transparent`}],{duration:700,easing:`ease-out`}));let n=O.get(e)?.card;n?.animate&&n.animate([{opacity:.8},{opacity:1}],{duration:240,easing:`ease-out`})}function MC(e,t){YS&&(sn(e,t,YS,{className:`focus-centered`}),Xb(e,t,!0))}function NC(){let e=dC();e&&(on()===e&&cn(),j.dispatch(`focusSession`,null))}function PC(e){Y&&O.has(e)&&(Jx(e),Ll(e),e!==dC()&&(NC(),j.dispatch(`focusSession`,e),Z=e,wC()))}function FC(){if(!XS||!ZS||!QS)return;let e=dC(),t=!!(e&&O.has(e)),n=O.size>0;Uo(XS,t),na(XS,!n),Uo(ZS,!n),Uo(QS,!n),!t&&n&&(F(ZS,`No session selected`),F(QS,`Select a session from the rail on the left to focus it here.`))}function IC(e,t){eC.set(D(e),typeof t==`string`&&t?t:`none`),Y&&wC()}function LC(e){Y&&O.has(e)&&PC(e)}function RC(e){return!Y||!O.has(e)?!1:(PC(e),Sx(e))}function zC(e){if(!Y)return;let t=oC()[e-1];t&&bC(t)}function BC(e){if(!Y)return;let t=ht(oC(),Z,e);t!=null&&(bC(t),X.get(t)?.scrollIntoView({block:`nearest`}))}window.addEventListener(`focus`,()=>{let e=dC();Y&&e&&Jx(e)});function VC(){qS&&(Y=!0,NC(),Z=null,wC(),$S&&EC().length>0?OC():($S&&J&&VS(J),UC()))}function HC(e){$S=!0;try{e()}finally{$S=!1}}function UC(){if(!Y||dC())return;let e=Rl();e&&PC(e)}function WC(){Y&&=(NC(),Z=null,!1)}var GC=`t-[0-9a-f]{8}`,KC=`No intent yet. The visions proposes one after its first pass.`,qC=`Unowned`,JC=RegExp(`^${GC}$`);function YC(){return{byProject:{},unowned:[]}}function XC(e){if(!e||typeof e!=`object`)return null;let t=e,n=typeof t.text==`string`?t.text:``;if(!n)return null;let r=Number(t.ts),i=Number(t.hits);return{id:typeof t.id==`string`&&JC.test(t.id)?t.id:null,text:n,uris:Array.isArray(t.uris)?t.uris.filter(e=>typeof e==`string`&&e!==``):[],ts:Number.isFinite(r)&&r>0?r:0,hits:Number.isInteger(i)&&i>0?i:1}}function ZC(e){if(Array.isArray(e))return e.map(XC).filter(e=>e!==null);let t=XC(e);return t?[t]:[]}function QC(e){let t=e?.intent;if(!t||typeof t!=`object`)return YC();let n=t;if(!(Object.hasOwn(n,`byProject`)||Object.hasOwn(n,`unowned`)||Object.hasOwn(n,`global`)))return{byProject:{},unowned:ZC(n)};let r=n.byProject&&typeof n.byProject==`object`?n.byProject:{},i=[];for(let[e,t]of Object.entries(r)){let n=ZC(t);n.length!==0&&e&&i.push([e,n])}return{byProject:Object.fromEntries(i),unowned:ZC(Object.hasOwn(n,`unowned`)?n.unowned:n.global)}}function $C(e,t){let n=typeof t?.id==`string`?t.id:null;if(!n)return e;let r=e.findIndex(e=>e.id===n);return r<=0?e:[e[r],...e.slice(0,r),...e.slice(r+1)]}function ew(e,t){let n=e||YC(),r=t?.intent;if(!r||typeof r!=`object`)return n;let i=r,a=$C(Array.isArray(i.threads)?ZC(i.threads):ZC(i),i.active),o=typeof t?.projectId==`string`&&t.projectId?t.projectId:null;if(!o)return{byProject:{...n.byProject},unowned:a};let s={...n.byProject};return a.length===0&&delete s[o],a.length>0&&(s[o]=a),{byProject:s,unowned:n.unowned}}function tw(e,t=null){let n=t&&typeof t.get==`function`?t.get(e):null;return typeof n==`string`&&n?n:e}function nw(e,{key:t,label:n,now:r}){return e.map((e,i)=>({key:`${t}:${e.id||i}`,label:n,text:e.text,hasText:!0,active:i===0,meta:ow(e,r)}))}function rw(e,t=null,n=Date.now()){let r=e||YC(),i=Object.entries(r.byProject||{}).filter(([e,t])=>e&&Array.isArray(t)&&t.length>0).map(([e,n])=>({projectId:e,label:tw(e,t),threads:n})).sort((e,t)=>e.label.localeCompare(t.label)).flatMap(({projectId:e,label:t,threads:r})=>nw(r,{key:e,label:t,now:n})),a=nw(Array.isArray(r.unowned)?r.unowned:[],{key:`unowned`,label:qC,now:n});return i.length+a.length>0?[...a,...i]:[{key:`unowned`,label:qC,text:KC,hasText:!1,active:!1,meta:``}]}function iw(e){return e?.text?`proposed by visions`:``}function aw(e,t=Date.now()){let n=Number(e);return!Number.isFinite(n)||n<=0?``:g(Number(t)-n,{rounding:`floor`,wording:`spelled`,suffix:` ago`,justNowBelowSeconds:60})}function ow(e,t=Date.now()){let n=iw(e);if(!n)return``;let r=typeof e?.id==`string`&&e.id?`thread ${e.id}, `:``,i=aw(e?.ts,t);return i?`${r}${n}, ${i}`:`${r}${n}`}function sw(e){let t=Number(e?.range?.start?.line);return!Number.isFinite(t)||t<0?`L?`:`L${Math.floor(t)+1}`}function cw(e){return(typeof e?.hand==`string`?e.hand.trim():``)||null}function lw(e,t){let n=new Map(e),r=typeof t?.uri==`string`?t.uri:``;if(!r)return n;let i=cw(t);return i?(n.set(r,i),n):(n.delete(r),n)}function uw(e){let t=new Map,n=Array.isArray(e?.documents)?e.documents:[];for(let e of n){let n=typeof e?.uri==`string`?e.uri:``,r=typeof e?.hand==`string`?e.hand.trim():``;n&&r&&t.set(n,r)}return t}var dw=`hand`,fw=`unseen`,pw=`
|
|
78
|
-
`;function mw(e){let t=2166136261,n=3266489909;for(let r=0;r<e.length;r+=1){let i=e.charCodeAt(r);t=Math.imul(t^i,16777619)>>>0,n=Math.imul(n^i,2246822507)>>>0}return`${t.toString(36).padStart(7,`0`)}${n.toString(36).padStart(7,`0`)}`}function hw(e,t){return mw(JSON.stringify([e,...t]))}function gw(e,t){return hw(`finding`,[e,sw(t),String(t.code??``),String(t.message??``)])}function _w(e,t){return hw(`comment`,[e,Sw(t),String(t.message??``)])}function vw(e){return hw(`fix`,[e.uri,Aw(e),e.code,e.message,jw(e)])}function yw(e){return hw(`intent`,[e.key,e.text,e.active])}function bw(e,t,n,r=[],i=null){let a=[...n].map(([e,t])=>hw(`hand`,[e,t])).sort(),o=new Set;for(let r of[...e.keys(),...t.keys(),...n.keys()])o.add(hw(`document`,[r]));for(let[t,n]of e)for(let e of n)o.add(gw(t,e));for(let[e,n]of t)for(let t of n)o.add(_w(e,t));for(let e of r)o.add(vw(e));for(let e of rw(i,null,0))e.hasText&&o.add(yw(e));let s=[...o].sort();return{signature:[...a,...s].join(pw),handEntries:a,contentEntries:s}}function xw(e,t){let n=new Set(t.split(pw));return e.handEntries.some(e=>!n.has(e))?dw:e.contentEntries.some(e=>!n.has(e))?fw:null}function Sw(e){let t=Number(e?.line);return!Number.isFinite(t)||t<1?`L?`:`L${Math.floor(t)}`}function Cw(e){return Array.isArray(e?.diagnostics)?e.diagnostics:[]}function ww(e,t){let n=new Map(e),r=typeof t?.uri==`string`?t.uri:``;if(!r)return n;let i=Cw(t);return i.length===0?(n.delete(r),n):(n.set(r,i),n)}function Tw(e){return Array.isArray(e?.comments)?e.comments:[]}function Ew(e,t){let n=new Map(e),r=typeof t?.uri==`string`?t.uri:``;if(!r)return n;let i=Tw(t);return i.length===0?(n.delete(r),n):(n.set(r,i),n)}function Dw(e){let t=new Map,n=Array.isArray(e?.documents)?e.documents:[];for(let e of n){let n=typeof e?.uri==`string`?e.uri:``,r=Array.isArray(e?.diagnostics)?e.diagnostics:[];n&&r.length!==0&&t.set(n,r)}return t}function Ow(e){let t=new Map,n=Array.isArray(e?.documents)?e.documents:[];for(let e of n){let n=typeof e?.uri==`string`?e.uri:``,r=Array.isArray(e?.comments)?e.comments:[];n&&r.length!==0&&t.set(n,r)}return t}var kw=20;function Aw(e){let t=Number(e?.line);return!Number.isFinite(t)||t<0?`L?`:`L${Math.floor(t)+1}`}function jw(e){return e?.applied===!0?`applied`:`refused`}function Mw(e,{uri:t=``,ts:n=0}={}){if(!e||typeof e!=`object`)return null;let r=e,i=typeof r.message==`string`?r.message.trim():``;if(!i)return null;let a=Number(r.line),o=Number(r.ts??n);return{uri:typeof r.uri==`string`&&r.uri?r.uri:t,code:typeof r.code==`string`?r.code:``,line:Number.isFinite(a)&&a>0?Math.floor(a):0,message:i,applied:r.applied===!0,ts:Number.isFinite(o)&&o>0?o:0}}function Nw(e){let t=typeof e?.uri==`string`?e.uri:``,n=Number(e?.ts);return Mw(e?.fix,{uri:t,ts:Number.isFinite(n)?n:0})}function Pw(e,t,{max:n=kw}={}){let r=Nw(t);return r?[r,...e].slice(0,Math.max(0,Math.floor(n))):[...e]}function Fw(e,{max:t=kw}={}){let n=Array.isArray(e?.fixes)?e.fixes:[],r=[];for(let e of n){let t=Mw(e);t&&r.push(t)}return r.slice(0,Math.max(0,Math.floor(t)))}var Iw=100;function Lw(e){if(!e||typeof e!=`object`)return null;let t=e,n=Number(t.seq);if(!Number.isFinite(n))return null;let r=typeof t.summary==`string`?t.summary.trim():``;if(!r)return null;let i=Number(t.ts),a=t.scope&&typeof t.scope==`object`?t.scope:{};return{seq:Math.floor(n),source:typeof t.source==`string`?t.source:``,kind:typeof t.kind==`string`?t.kind:``,ts:Number.isFinite(i)&&i>0?i:0,summary:r,root:typeof a.root==`string`&&a.root?a.root:null,sessionId:typeof a.sessionId==`string`&&a.sessionId?a.sessionId:null}}function Rw(e){let t=Array.isArray(e?.events)?e.events:[],n=[];for(let e of t){let t=Lw(e);t&&n.push(t)}return n}function zw(e){let t=Number(e?.overflow);return!Number.isFinite(t)||t<=0?0:Math.floor(t)}function Bw(e,t){return[...e].sort((e,t)=>t.seq-e.seq).slice(0,Math.max(0,Math.floor(t)))}function Vw(e,t,{max:n=Iw}={}){let r=Rw(t);if(r.length===0)return Bw(e,n);let i=new Map;for(let t of e)i.set(t.seq,t);for(let e of r)i.set(e.seq,e);return Bw([...i.values()],n)}function Hw(e,{max:t=Iw}={}){return Bw(Rw(e),t)}var Uw=new Map,Ww=new Map,Gw=new Map,Kw=YC(),qw=new Map,Jw=null,Yw=!0,Xw=[],Zw=0,Qw=[],$w=null,eT=()=>!1,tT=new Set,nT=bw(Uw,Ww,Gw,Qw,Kw),rT=Si(),iT=u({getAck:()=>rT,setAck:e=>{rT=e,Ci(e)},signature:()=>nT.signature,isLooking:()=>eT()});function aT(e){for(let t of tT)t(e)}function oT(){nT=bw(Uw,Ww,Gw,Qw,Kw),nT.signature!==``&&iT.refresh(),$w?.(xw(nT,rT))}function sT(e){aT(e),oT()}function cT(){return{findingsByUri:Uw,commentsByUri:Ww,handsByUri:Gw,intent:Kw,projectNamesById:qw,isEnabled:Jw,isConnected:Yw,activityEvents:Xw,activityOverflow:Zw,fixEntries:Qw}}function lT(e){tT.add(e)}function uT(e){eT=e,oT()}function dT(e){$w=e,oT()}function fT(){nT.signature!==``&&iT.acknowledge(),oT()}function pT(e){qw=e instanceof Map?e:new Map,aT([`intent`])}function mT(e){Jw=e?.visions?.enabled===!0,aT([`feed`])}function hT(e){Yw=e,aT([`connection`])}function gT(e){Qw=Pw(Qw,e),sT([`fixes`])}function _T(e){Uw=ww(Uw,e),sT([`feed`])}function vT(e){Ww=Ew(Ww,e),sT([`feed`])}function yT(e){Gw=lw(Gw,e),sT([`feed`])}function bT(e){Kw=ew(Kw,e),sT([`intent`])}function xT(e){Xw=Vw(Xw,e),Zw=zw(e),sT([`activity`])}function ST(e){Xw=Hw(e),Zw=0,sT([`activity`])}function CT(e){Uw=Dw(e),Ww=Ow(e),Gw=uw(e),Kw=QC(e),Qw=Fw(e),sT([`intent`,`feed`,`fixes`])}var wT=null,TT=null,ET=!1,DT=null,OT=new Set;function kT(e,t){if(!e||typeof e!=`object`)return!1;let n=e.requestId;return typeof n!=`string`||!t||n===t}function AT(){for(let e of OT)e()}function jT(){return{report:wT,hasReportSendFailed:ET}}function MT(e){OT.add(e)}function NT(e){TT=e}function PT(){if(!TT)return;DT=st(`hooks-report`);let e=TT({type:`request-hooks-report`,requestId:DT});e!==!ET&&(ET=!e,AT())}function FT(e){kT(e,DT)&&(wT=e,ET=!1,AT())}function IT(){PT()}function LT(e){return e.filter(e=>!e.hasOwnPhoneScreen).map(e=>{let t=e.label.trim();return{id:e.view,label:t,glyph:e.glyph||t.charAt(0).toUpperCase(),el:e.el}})}var RT=null,zT=null,BT={},VT=null,HT=null,UT=null,WT=new Map,GT=new Map;function KT(){return zT??=P(()=>import(`./phone-shell-BGUCsRyh.js`).then(e=>{e.mountPhoneShell(BT),UT&&e.orderPhonePanels(UT);for(let[t,n]of WT)e.setPhoneScreenAvailable(t,n);for(let[t,n]of GT)e.setPhoneScreenAttention(t,n);return RT=e,e},e=>(zT=null,T(`phone-shell`,`phone shell failed to load: ${ft(e)}`),null)),__vite__mapDeps([18,3,4,1,12,11])),zT}function qT(e){BT=e}async function JT(e){let t={options:e};VT=t;let n=await KT();if(VT!==t)return!1;if(!n)return VT=null,HT=null,!1;VT=null,n.activatePhoneShell(t.options);let r=HT;return HT=null,r?.(n),!0}function YT(){VT=null,HT=null,RT?.deactivatePhoneShell()}function XT(){return VT!==null||(RT?.isPhoneShellActive()??!1)}function ZT(){return VT?VT.options?.sessionId??null:RT?.getPhoneSessionId()??null}function QT(e){UT=e,RT?.orderPhonePanels(e)}function $T(e,t){WT.set(e,t),RT?.setPhoneScreenAvailable(e,t)}function eE(e,t){GT.set(e,t),RT?.setPhoneScreenAttention(e,t)}function tE(){RT?.refreshPhoneBoard()}function nE(){RT?.syncPhoneHistory()}function rE(e){return VT?(HT=t=>{e(t)},!0):RT?e(RT):!1}function iE(e){return rE(t=>t.showPhonePlan(e))}function aE(e){return rE(t=>t.showPhoneSession(e))}function oE(e){return rE(t=>t.showPhoneScreen(e))}var sE={MERGE:`a merge commit`,SQUASH:`squash and merge`,REBASE:`rebase and merge`},cE=new Set([`FAILURE`,`ERROR`]);function lE(e){return sE[e]}function uE(e){return e.state===`MERGED`?`Already merged`:e.state===`OPEN`?e.isDraft?`Drafts cannot be merged`:e.isInMergeQueue?`Already in the merge queue`:e.mergeable===`CONFLICTING`||e.mergeStateStatus===`DIRTY`?`Resolve the merge conflicts first`:e.checks.failing.length>0||e.checks.state!==null&&cE.has(e.checks.state)?`Checks are failing`:e.stage===`ready`?null:`Not ready to merge yet`:`Closed`}function dE(e){return e.state===`MERGED`?`merged`:e.isDraft?`draft`:e.mergeable===`CONFLICTING`||e.mergeStateStatus===`DIRTY`?`conflicts`:e.mergeStateStatus===`BEHIND`?`behind`:e.checks.state===`FAILURE`||e.checks.state===`ERROR`?`checks-failing`:e.reviewDecision===`CHANGES_REQUESTED`?`changes-requested`:e.unresolvedThreads>0?`unresolved-threads`:e.checks.state===`PENDING`||e.checks.state===`EXPECTED`?`checks-pending`:e.reviewDecision===`REVIEW_REQUIRED`||e.mergeStateStatus===`BLOCKED`?`needs-approval`:e.mergeable===`MERGEABLE`&&[`CLEAN`,`HAS_HOOKS`,`UNSTABLE`].includes(e.mergeStateStatus)?`ready`:`unknown`}function fE(e){let t=de.parse({...e,key:`${e.repo}#${e.number}`,stage:`unknown`});return{...t,stage:dE(t)}}var pE=[`Needs you`,`Waiting`,`Ready to merge`,`Drafts`,`Merged today`],mE=[`Ready to merge`,`Needs you`,`Waiting`,`Drafts`,`Merged today`],hE={conflicts:`Needs you`,behind:`Needs you`,"checks-failing":`Needs you`,"changes-requested":`Needs you`,"unresolved-threads":`Needs you`,"checks-pending":`Waiting`,"needs-approval":`Waiting`,unknown:`Waiting`,ready:`Ready to merge`,draft:`Drafts`,merged:`Merged today`},gE={merged:`Merged`,draft:`Draft`,conflicts:`Merge conflicts`,behind:`Behind base`,"checks-failing":`Checks failing`,"changes-requested":`Changes requested`,"unresolved-threads":`Unresolved threads`,"checks-pending":`Checks running`,"needs-approval":`Needs approval`,ready:`Ready to merge`,unknown:`Status unknown`},_E={merged:`muted`,draft:`muted`,conflicts:`danger`,behind:`warn`,"checks-failing":`danger`,"changes-requested":`warn`,"unresolved-threads":`warn`,"checks-pending":`wait`,"needs-approval":`wait`,ready:`ok`,unknown:`muted`},vE={merged:`merged`,draft:`draft`,conflicts:`conflict`,behind:`behind`,"checks-failing":`failed`,"changes-requested":`changes-requested`,"unresolved-threads":`thread`,"checks-pending":`running`,"needs-approval":`reviewer`,ready:`ready`,unknown:`unknown`};function yE(e){let t=e.filter(e=>e.state===`OPEN`&&!e.isCrossRepository),n=new Map(t.map(e=>[JSON.stringify([e.repo.toLowerCase(),e.headRefName]),e])),r=new Map,i=[];for(let t of e){let e=t.state===`OPEN`?n.get(JSON.stringify([t.repo.toLowerCase(),t.baseRefName])):void 0;if(!e||e.key===t.key){i.push(t);continue}let a=r.get(e.key)??[];a.push(t),r.set(e.key,a)}let a=[],o=new Set;for(let t of[...i,...e]){if(o.has(t.key))continue;let e=[],n=[{pr:t,parentKey:null,depth:0}];for(;n.length>0;){let t=n.pop();if(!t||o.has(t.pr.key))continue;o.add(t.pr.key),e.push(t);let i=r.get(t.pr.key)??[];for(let e=i.length-1;e>=0;--e)n.push({pr:i[e],parentKey:t.pr.key,depth:t.depth+1})}a.push({root:t,rows:e})}return a}function bE(e){return pE[e.rows.reduce((e,{pr:t})=>Math.min(e,pE.indexOf(hE[t.stage])),pE.length-1)]}function xE(e){let t=new Map(pE.map(e=>[e,{title:e,prs:[],rows:[]}]));for(let n of yE(e)){let e=t.get(bE(n));if(e)for(let t of n.rows)e.rows.push(t),e.prs.push(t.pr)}return mE.flatMap(e=>t.get(e)??[])}function SE(e){return gE[e]}function CE(e){return _E[e]}function wE(e){return vE[e]}function TE(e,t){return e.flatMap(e=>{let n=t(e.key);if(!n)return[];let r=e.key.slice(0,e.key.lastIndexOf(`#`));return[{...fE({...n,repo:r}),...e}]})}function EE(e){let t=new Map;for(let n of e)for(let e of n.links){let r=fe(e),i=t.get(r)??[];i.at(-1)?.id!==n.id&&(i.push({id:n.id,title:n.title}),t.set(r,i))}return t}function DE(e,t){if(!e)return[];let n=new Set(e.filter(e=>e.state===`OPEN`).map(e=>e.key));return t.filter(e=>e.state===`MERGED`&&n.has(e.key))}var OE=3;function kE(e){if(e.length===1)return{message:`Merged ${e[0].key}`,detailLines:[e[0].title]};let t=e.slice(0,OE).map(e=>`${e.key} ${e.title}`),n=e.length-t.length,r=n>0?[...t,`and ${n} more`]:t;return{message:`Merged ${e.length} pull requests`,detailLines:r}}function AE(e,t){if(!e)return null;let n=e=>{let n=t(e.key);return n?{...e,checksState:n.rollupState,reviewDecision:Oe(n.reviewDecision,n.opinionatedWriterReviewStates),isDraft:n.isDraft,liveHead:n.headRefOid,prStage:fE(n).stage}:e};return{...e,drafts:e.drafts.map(n),inFlight:e.inFlight.map(n),queued:e.queued.map(n)}}function jE(e){return e.isDraft?{band:`not-ready`,reason:`draft`}:e.reviewDecision===`CHANGES_REQUESTED`?{band:`waiting-on-author`,reason:`changes-requested`}:e.checksState===`FAILURE`||e.checksState===`ERROR`?{band:`waiting-on-author`,reason:`checks-failing`}:e.checksState===`PENDING`||e.checksState===`EXPECTED`?{band:`not-ready`,reason:`checks-pending`}:e.requestSource===`direct`&&e.reviewDecision===`REVIEW_REQUIRED`?{band:`blocking-others`,reason:`direct-request`}:e.reviewDecision===`APPROVED`?{band:`actionable`,reason:`approved`}:{band:`actionable`,reason:e.requestSource===`direct`?`review-available`:`team-request`}}function ME(e){let t=e.viewerThreads;return t!==void 0&&t.total>0&&t.resolved===t.total}function NE(e){return e.status===`posted`&&PE(e)}function PE(e){if(!ME(e)||s(e))return!1;let t=LE(e);return e.status===`posted`&&e.postedEvent===`APPROVE`&&e.reviewedHead===t?!1:!(e.githubReviews??[]).some(e=>e.isViewer&&e.state===`APPROVED`&&e.commit===t)}function FE(e){let t={ready:[],noReviewNeeded:[],inReview:[],queued:[],attention:[],posted:[],discarded:[]};if(!e)return t;let n={"blocking-others":[],actionable:[],"waiting-on-author":[],"not-ready":[]},r={"blocking-others":[],actionable:[],"waiting-on-author":[],"not-ready":[]},i=[`blocking-others`,`actionable`,`waiting-on-author`,`not-ready`],a=new Set(e.inFlight.map(e=>e.key));t.inReview.push(...e.inFlight);for(let t of e.queued)a.has(t.key)||r[jE(t).band].push(t);for(let e of i)t.queued.push(...r[e]);let o=new Set(t.queued.map(e=>e.key));for(let r of e.drafts){if(a.has(r.key)||o.has(r.key))continue;if(RE(r).length>0||NE(r)){n.actionable.push(r);continue}let e=(r.status===`ready`||r.status===`stale`||r.status===`error`)&&!zE(r);e&&t.noReviewNeeded.push(r),r.status===`ready`&&!e&&n[jE(r).band].push(r),(r.status===`stale`||r.status===`error`)&&!e&&t.attention.push(r),r.status===`posted`&&t.posted.push(r),r.status===`discarded`&&t.discarded.push(r)}for(let e of i)t.ready.push(...n[e]);return t}function IE(e,t){return e.commit===t?e.isViewer||c.has(e.state):!1}function LE(e){return e.liveHead??e.reviewedHead}function RE(e){return(e.threads??[]).filter(e=>!e.isNit&&!e.isResolved)}function zE(e){return RE(e).length>0?!0:s(e)?!1:PE(e)?!0:!(e.githubReviews??[]).some(t=>IE(t,LE(e)))}function BE(e,t){return`${e}#${t}`}var VE=null,HE=null,UE=new Set;function WE(e){for(let t of UE)t(e)}function GE(){HE=AE(VE,Kt),WE({kind:`status`})}function KE(e){UE.add(e)}function qE(){return HE}function JE(){return FE(HE)}function YE(e){let t=d.safeParse(e);t.success?(VE=t.data,GE()):T(`reviews`,`dropped team-review-status: ${Je(t.error.issues)}`)}function XE(e){WE({kind:`action-result`,message:e})}function ZE(e){WE({kind:`open-session-result`,message:e})}function QE(e){WE({kind:`connection`,isConnected:e})}qt(GE);var $E=20,eD=[],tD=null,nD=!1,rD=0,iD=null;function aD(){return iD??=P(()=>import(`./celebration-player-D5vqHPTv.js`),__vite__mapDeps([19,1,20])).catch(e=>(iD=null,T(`merge-celebration`,`celebration player failed to load: ${ft(e)}`),null)),iD}function oD(e){return nD?`playing`:e?`queued`:`empty`}function sD(){if(!tD)return;let e=eD.length>0;tD.tray.dataset.state=oD(e),tD.count.textContent=e?String(eD.length):``,tD.button.disabled=nD||!e}function cD(){let e=eD.shift();if(nD=e!==void 0,sD(),!e)return;let t=rD;rD+=1,aD().then(n=>{n?(n.playCelebration(e,t),window.setTimeout(cD,n.CELEBRATION_DURATION_MS)):(eD.unshift(e),nD=!1,sD())})}function lD(e,t,n){tD={tray:e,button:t,count:n},t.addEventListener(`click`,()=>{rD=0,cD()}),sD()}function uD(e){eD.push(e),eD.length>$E&&eD.shift(),sD()}var dD=null,fD=null,pD=new Set,mD=new Map,hD=!1,gD=new Set;function _D(e){for(let t of gD)t(e)}function vD(){return[...mD].flatMap(([e,t])=>{let n=O.get(e);return!n||t.length===0?[]:[{id:e,title:gt(n)||e,links:t}]})}function yD(){let e=TE(dD?.prs??[],Kt),t=DE(fD,e);fD=e,CD(t),_D({kind:`prs`})}function bD(){hD||(hD=!0,queueMicrotask(()=>{hD=!1,yD()}))}function xD(e){gD.add(e)}function SD(){return{prs:TE(dD?.prs??[],Kt),status:dD,sessionsByPrKey:EE(vD())}}function CD(e){let t=e.filter(e=>!pD.has(e.key));if(t.length!==0){for(let e of t)pD.add(e.key);uD(kE(t))}}function wD(e){mD=e,bD()}function TD(){_D({kind:`session-state`})}function ED(e){let t=p.safeParse(e);t.success?(dD=t.data,yD()):T(`reviews`,`dropped my-prs-status: ${Je(t.error.issues)}`)}function DD(e){_D({kind:`merge-result`,message:e})}function OD(e){_D({kind:`connection`,isConnected:e})}qt(bD);var kD=[{id:`all`,label:`All`},{id:`reviewing`,label:`Reviewing`},{id:`mine`,label:`Mine`}],AD={turn:`Your turn`,working:`Agent working`,waiting:`Waiting on others`,aside:`Set aside`},jD=[`turn`,`working`,`waiting`,`aside`],MD={conflicts:`turn`,behind:`turn`,"checks-failing":`turn`,"changes-requested":`turn`,"unresolved-threads":`turn`,ready:`turn`,"checks-pending":`waiting`,"needs-approval":`waiting`,unknown:`waiting`,draft:`aside`,merged:`aside`},ND={directAsk:0,followUp:1,mineNeedsYou:2,teamReady:3,mineReady:4,failedReview:5,staleReview:6};function PD(e,t){return{source:`team`,key:`team:${e.key}`,prKey:fe(e),kind:t,review:e}}function FD(e){return e.status===`ready`?jE(e).band===`blocking-others`?ND.directAsk:ND.teamReady:ND.followUp}function ID(e){return[...e.ready.map(e=>({item:PD(e,`ready`),group:`turn`,turnRank:FD(e)})),...e.attention.map(e=>({item:PD(e,`attention`),group:`turn`,turnRank:e.status===`error`?ND.failedReview:ND.staleReview})),...e.inReview.map(e=>({item:PD(e,`inReview`),group:`working`,turnRank:0})),...e.queued.map(e=>({item:PD(e,`queued`),group:`working`,turnRank:0})),...e.noReviewNeeded.map(e=>({item:PD(e,`settled`),group:`waiting`,turnRank:0})),...e.posted.map(e=>({item:PD(e,`posted`),group:`waiting`,turnRank:0})),...e.discarded.map(e=>({item:PD(e,`discarded`),group:`aside`,turnRank:0}))]}function LD(e,t){let n=MD[e.stage];return n===`turn`&&e.stage!==`ready`&&t.has(fe(e))?`working`:n}function RD(e,t){return xE(e).flatMap(e=>e.rows).map(({pr:e,parentKey:n})=>({item:{source:`mine`,key:`mine:${e.key}`,prKey:fe(e),pr:e,stackedOn:n},group:LD(e,t),turnRank:e.stage===`ready`?ND.mineReady:ND.mineNeedsYou}))}function zD(e,t,n){let r=[...ID(e),...RD(t,n)];return jD.map(e=>{let t=r.filter(t=>t.group===e),n=e===`turn`?t.toSorted((e,t)=>e.turnRank-t.turnRank):t;return{id:e,title:AD[e],items:n.map(e=>e.item)}})}function BD(e,t){if(t===`all`)return[...e];let n=t===`reviewing`?`team`:`mine`;return e.map(e=>({...e,items:e.items.filter(e=>e.source===n)}))}function VD(e){return e.find(e=>e.id===`turn`)?.items??[]}function HD(e,t){return t?e.flatMap(e=>e.items).find(e=>e.key===t)??null:null}function UD(e,t){return HD(e,t)?t:e.flatMap(e=>e.items)[0]?.key??null}function WD(e){return e.source===`mine`?BE(e.pr.repo,e.pr.number):BE(e.review.repo,e.review.number)}function GD(e){return e.source===`team`?e.kind===`attention`&&`status`in e.review&&e.review.status===`error`?`failed`:`waiting`:e.pr.stage===`ready`?`finished`:e.pr.stage===`checks-failing`||e.pr.stage===`conflicts`?`failed`:`waiting`}function KD(e){return VD(e).map(e=>({id:e.key,kind:GD(e),name:WD(e)}))}function qD(e){return{waitingCount:e.filter(e=>e.kind===`waiting`).length,finishedCount:e.filter(e=>e.kind===`finished`).length,failedCount:e.filter(e=>e.kind===`failed`).length}}function JD(e,t){return KD(e).filter(e=>e.id!==t)}function YD({capturedOrder:e,actedKey:t,groups:n}){let r=VD(n).map(e=>e.key).filter(e=>e!==t),i=new Set(r);return e.slice(e.indexOf(t)+1).find(e=>i.has(e))??e.find(e=>i.has(e))??r[0]??null}function XD(e,t){let n=VD(e).map(e=>e.key),r=t?n.indexOf(t):-1;return r===-1?``:`${r+1} of ${n.length} in Your turn`}function ZD(e){return e.source===`mine`?`${e.key}@${e.pr.stage}`:`reviewedHead`in e.review?`${e.review.key}@${e.review.reviewedHead}`:`${e.review.key}@${e.kind}`}function QD(e){return VD(e).map(ZD)}function $D({turnEntries:e,acknowledged:t,unseen:n,isLooking:r}){let i=new Set(e),a=new Set(t.split(`|`).filter(e=>i.has(e))),o=new Set(n.split(`|`).filter(e=>i.has(e))),s=[...i].filter(e=>!a.has(e));if(r)return{isShown:!1,acknowledged:_e([...i]),unseen:_e([...o])};for(let e of s)o.add(e);return{isShown:s.length>0,acknowledged:_e([...a]),unseen:_e([...o])}}function eO(e){let t=e.find(e=>e.id===`working`)?.items.length??0;return t===0?`Nothing needs you right now.`:`Nothing needs you right now. ${t} ${t===1?`pull request is`:`pull requests are`} with an agent.`}function tO(e){return new Set(e.flatMap(e=>e.items).map(e=>(e.source===`mine`?e.pr.repo:e.review.repo).toLowerCase())).size>1}function nO(e){let t=e.filter(e=>e?.configured===!0);if(t.length===0)return e.find(e=>e!==null)??null;let n=t.toSorted((e,t)=>(e.lastRefreshedAt??e.lastSyncAt??0)-(t.lastRefreshedAt??t.lastSyncAt??0));return{...t.find(e=>e.error)??n[0],isRefreshing:t.some(e=>e.isRefreshing)}}var rO=new Map([[`j`,`next-row`],[`k`,`previous-row`],[`n`,`next-finding`],[`p`,`previous-finding`],[`x`,`toggle-finding`],[`o`,`open-session`],[`a`,`pick-approve`],[`r`,`pick-request-changes`],[`c`,`pick-comment`]]);function iO(e){return e.key===`Enter`&&e.metaKey!==e.ctrlKey&&!e.altKey&&!e.shiftKey?`post`:e.metaKey||e.ctrlKey||e.altKey||e.shiftKey?null:e.key===`Escape`?`cancel`:rO.get(e.key)??null}function aO(e,t,n){if(e.length===0)return null;let r=t===null?-1:e.indexOf(t);return r===-1?n===1?e[0]:e[e.length-1]:e[Math.min(e.length-1,Math.max(0,r+n))]}var oO=[],sO=null,cO=null,lO=null,uO=!1,dO=null,fO=gi(),pO=vi(),mO=new Set(pO.split(`|`).filter(Boolean)),hO=new Set,gO=new Set;function _O(e){for(let t of gO)t(e)}function vO(e){e!==fO&&(fO=e,_i(e))}function yO(e){e!==pO&&(pO=e,mO=new Set(e.split(`|`).filter(Boolean)),yi(e))}function bO(){return qE()!==null&&SD().status!==null}function xO(){if(!bO())return;let e=$D({turnEntries:QD(oO),acknowledged:fO,unseen:pO,isLooking:cO?.isLooking()??!1});vO(e.acknowledged),yO(e.unseen),dO?.(e.isShown)}function SO(e){lO=e,_O({kind:`reveal`})}function CO(e){gO.add(e)}function wO(e){cO=e,xO()}function TO(){let{prs:e,sessionsByPrKey:t}=SD();return oO=zD(JE(),e,new Set(t.keys())),xO(),oO}function EO(){bO()&&(vO(_e(QD(oO))),xO())}function DO(e){dO=e,xO()}function OO(){return pO}function kO(e){return mO.has(e)}function AO(e){return mO.has(e)?(yO(_e([...mO].filter(t=>t!==e))),!0):!1}function jO(e){sO=e}function MO(){return sO}function NO(){let e=lO;return lO=null,e}function PO(e){if(e!==uO){uO=e;for(let e of hO)e()}}function FO(e){hO.add(e)}function IO(){return document.documentElement.dataset.layout===`phone`&&uO}function LO(){IO()&&_O({kind:`return-to-queue`})}function RO(){let e=JD(oO,cO?.selectedKey()??null)[0]?.id??null;return e?(SO(e),!0):!1}function zO(e){let t=oO.flatMap(e=>e.items).find(t=>t.prKey===e.toLowerCase());return!t||!sO?.openReviews()?!1:(SO(t.key),EO(),!0)}KE(e=>{e.kind===`status`&&TO()}),xD(e=>{e.kind===`prs`&&TO()});var BO={OPEN:0,MERGED:1,CLOSED:2};function VO(e){return e?BO[e.state]:BO.OPEN}function HO(e,t){let n=`${e.repo}#${e.number}`,r=`#${e.number}`;if(!t)return{key:n,text:r,url:e.url,hoverText:e.repo,look:null,tier:Va(void 0)};let i=CE(t.stage);return{key:n,text:r,url:t.url,hoverText:`${e.repo}: ${t.title} (${SE(t.stage)})`,look:{icon:wE(t.stage),tone:i},tier:Va(i)}}function UO(e,t){let n=e.map(e=>{let n=t(fe(e));return{link:e,pr:n?fE(n):void 0}});return n.sort((e,t)=>VO(e.pr)-VO(t.pr)||t.link.linkedAt-e.link.linkedAt),n.map(({link:e,pr:t})=>HO(e,t))}var WO=new Map;function GO(e){return document.querySelectorAll(`[data-pr-chips-for="${CSS.escape(e)}"]`)}function KO(e){return UO(WO.get(e)??[],Kt).map(e=>({...e,className:`session-pr-chip`,linkUrl:e.url,ariaLabel:`Show pull request ${e.key} in Reviews`,hoverText:`${e.hoverText}. Show in Reviews; Cmd/Ctrl-click opens GitHub`,onActivate:()=>{zO(e.key)||yo(e.url)}}))}function qO(e,t){let n=Gc(e,e),r=w(`button`,`session-pr-chip-unlink`);r.append(L(Jo)),r.type=`button`,r.title=`Unlink ${e.key} from this session`,r.setAttribute(`aria-label`,`Unlink pull request ${e.key}`),r.addEventListener(`click`,n=>{n.stopPropagation(),n.preventDefault(),At({title:`Unlink pull request`,message:`Unlink ${e.key} from this session? Its checks and reviews stop showing here until you link it again.`,confirmLabel:`Unlink`,danger:!0,onConfirm:()=>{Bl(t,{type:`unlink-session-pr`,id:t,key:e.key})}})});let i=w(`span`,`session-pr-chip-item`);return i.append(n,r),i}function JO(e,t){e.dataset.prChipsFor=t,Xc(e,KO(t),e=>qO(e,t))}function YO(e){for(let t of e){let e=t.dataset.prChipsFor;e&&JO(t,e)}rl()}function XO(e,t){let n=h.shape.links.safeParse(t??[]);WO.set(e,n.success?n.data:[]),YO(GO(e)),wD(WO)}function ZO(e){WO.delete(e),wD(WO)}qt(()=>YO(document.querySelectorAll(`[data-pr-chips-for]`)));var QO=null,$O=new Set;function ek(){QO?.setAttribute(`aria-pressed`,String(!Pr()))}function tk(e){Fr(e),ek();for(let t of $O)t(e)}function nk(e){$O.add(e)}function rk(e){QO=e,ek(),e.addEventListener(`click`,()=>tk(!Pr()))}var ik={mine:`Mining merged pull requests.`,run:`Starting the run.`,cancel:`Cancelling the run.`},ak=null,ok=null,sk=!0,ck=new Map,lk=new Map,uk=new Set;function dk(){for(let e of uk)e()}function fk(e){uk.add(e)}function pk(){return{status:ak,isServerConnected:sk,pendingActionBySuite:ck,outcomeBySuite:lk}}function mk(e){ok=e}function hk(e,t){ok?.({type:`benchmark-action`,requestId:st(`benchmark`),suiteId:e,action:t})===!0?(ck.set(e,t),lk.set(e,ik[t]),dk()):(lk.set(e,b),dk())}function gk(e){if(sk=e,!e){for(let e of ck.keys())lk.delete(e);ck.clear()}dk()}function _k(e){ak=e,dk()}function vk(e){ck.delete(e.suiteId);let t=ak?.suites.find(t=>t.id===e.suiteId)?.candidateCount??0,n={mine:`Mining finished. ${t} candidate${t===1?``:`s`} awaiting approval in the candidates folder.`,run:`Run ${e.runId??``} started.`,cancel:`Run cancelled.`};lk.set(e.suiteId,e.ok?n[e.action]:e.error||`The server refused the action.`),dk()}var yk=45e3,bk=`The server did not answer within ${yk/1e3} s.`,xk=`Select the issue to load its description.`,Sk=null,Ck=null,wk=new Map,Tk=null,Ek=new Map,Dk=new Map,Ok=new Map,kk=new Map,Ak=new Map,jk=new Set;function Mk(e){for(let t of jk)t(e)}function Nk(e){return`${e.key}:${e.updatedAt}`}function Pk(e){let t=Ek.get(e);t&&(Ek.delete(e),Dk.set(t.issueKey,{text:bk,tone:`error`}),Mk(`detail`))}function Fk(e){let t=Ek.get(e);return t?(clearTimeout(t.timeoutHandle),Ek.delete(e),t):null}function Ik(){return{latestStatus:Ck,issueByKey:wk,selectedKey:Sk}}function Lk(e){jk.add(e)}function Rk(e){Sk=e}function zk(e){return[...Ek.values()].some(t=>t.issueKey===e.key)}function Bk(e){return Dk.get(e.key)}function Vk(e){let t=Nk(e),n=kk.get(t);return n===``?`No description.`:n??Ak.get(t)??`Loading description.`}function Hk(e){let t=Nk(e);if(kk.has(t)||[...Ok.values()].some(e=>e.cacheKey===t))return;let n=st(`issue-detail`);Ak.delete(t),Tk?.({type:`issue-detail`,requestId:n,repo:e.repo,issueNumber:e.number})?Ok.set(n,{cacheKey:t,timeoutHandle:setTimeout(()=>{Ok.delete(n),Ak.set(t,`${bk} ${xk}`),Mk(`detail`)},yk)}):Ak.set(t,`${b} ${xk}`)}function Uk(e){let t=e.projectId;if(!t||zk(e))return;let n=st(`open-issue-session`);Tk?.({type:`open-issue-session`,requestId:n,projectId:t,repo:e.repo,issueNumber:e.number})?(Ek.set(n,{issueKey:e.key,issueNumber:e.number,timeoutHandle:setTimeout(()=>Pk(n),yk)}),Dk.set(e.key,{text:`Opening session.`,tone:`busy`}),Mk(`detail`)):(Dk.set(e.key,{text:b,tone:`error`}),Mk(`detail`))}function Wk(e){Tk?.({type:`dashboard-telemetry`,event:`operator_action`,properties:{surface:`issues`,action:e}})}function Gk(e){Tk=e}function Kk(){Mk(`session-state`)}function qk(e){if(!e){for(let e of Ek.values())clearTimeout(e.timeoutHandle),Dk.set(e.issueKey,{text:b,tone:`error`});Ek.clear();for(let e of Ok.values())clearTimeout(e.timeoutHandle),Ak.set(e.cacheKey,`${b} ${xk}`);Ok.clear(),Mk(`status`)}}function Jk(e){let t=Ck?.issues.find(e=>e.key===Sk);Ck=e,wk=new Map(e.issues.map(e=>[e.key,e]));let n=e.issues.find(e=>e.key===Sk);n&&n.updatedAt!==t?.updatedAt&&Hk(n),Mk(`status`)}function Yk(e){let t=Ok.get(e.requestId);t&&(clearTimeout(t.timeoutHandle),Ok.delete(e.requestId),e.ok&&e.body!==null&&kk.set(t.cacheKey,e.body),(!e.ok||e.body===null)&&Ak.set(t.cacheKey,e.error||`Could not load description. Select the issue to try again.`),Mk(`detail`))}function Xk(e){if(typeof e.requestId!=`string`)return;let t=Fk(e.requestId);if(!t)return;let n=t.issueKey;if(e.ok===!0){let r=typeof e.sessionName==`string`?e.sessionName:`issue #${t.issueNumber}`,i=e.pending===!0?` Prompt queued.`:``,a=e.existing===!0?`already open`:`created`;Dk.set(n,{text:`Session "${r}" ${a}.${i}`,tone:`ok`});let o=Ck?.issues.find(e=>e.key===n);o&&typeof e.sessionId==`string`&&(o.sessionId=e.sessionId),Mk(`status`);return}let r=typeof e.error==`string`&&e.error?e.error:`Could not open session.`;Dk.set(n,{text:r,tone:`error`}),Mk(`detail`)}var Zk=null,Qk=null,$k=null,eA=()=>!1,tA=new Set,nA=new Set,rA=u({getAck:mi,setAck:hi,signature:()=>f({posthog:Zk}),isLooking:()=>eA()});function iA(e){for(let t of nA)t(e)}function aA(){Qk?.(rA.refresh())}function oA(){return{latest:Zk,archivedLocally:tA,traceOpener:$k}}function sA(e){nA.add(e)}function cA(e){eA=e,aA()}function lA(e){tA.add(e)}function uA(){rA.acknowledge(),aA()}function dA(e){Qk=e,aA()}function fA(e){$k=e}function pA(e){Zk=e,l(Zk,tA),iA({kind:`status`}),aA()}function mA(e){let t=Ce(Zk,e.projectId,e.issueId)?.inFlight===!0;se(Zk,e)&&iA({kind:`investigation-activity`,projectId:e.projectId,issueId:e.issueId,wasInFlight:t})}function hA(e){let t=re(Zk,e);iA({kind:`investigation-finished`,frame:e,isPatched:t}),t&&aA()}var gA=La({requestPrefix:`session-setup`,dialogClass:`dialog coherence-journal-drawer session-setup-dialog`,titleText:`Session setup`,unavailableLabel:`Session setup unavailable`,timeoutMs:15e3});function _A(e){let t=w(`ul`,`session-setup-list`);return t.append(...e.map(e=>w(`li`,null,e))),t}function vA(e,t){e.replaceChildren();function n(t,n){if(n.length===0)return;let r=He(`session-setup`,t);r.append(...n),e.append(r)}n(`Model`,t.model?[w(`p`,null,t.model)]:[]),n(`Plugins`,t.plugins.map(e=>{let t=w(`div`,`session-setup-plugin`);return t.append(w(`h3`,null,e.name)),e.skills.length>0&&t.append(w(`p`,`session-setup-label`,`Skills`),_A(e.skills)),e.agents.length>0&&t.append(w(`p`,`session-setup-label`,`Agents`),_A(e.agents)),t})),n(`MCP servers`,t.mcpServers.length>0?[_A(t.mcpServers)]:[]),n(`Hooks`,[...t.hookEvents.map(e=>{let t=w(`p`,`session-setup-hook`);return t.append(w(`span`,null,e.event),w(`span`,`session-setup-label`,`${e.runCount} runs`)),t}),...t.hookCommands.map(e=>w(`pre`,`coherence-command`,e))]),n(`Skills`,t.skills.length>0?[_A(t.skills)]:[]),n(`Agents`,t.agents.length>0?[_A(t.agents)]:[])}function yA(e){let t=w(`p`,`coherence-journal-status`,`Loading session setup`);t.setAttribute(`role`,`status`);let n=w(`div`,`session-setup-sections`);gA.open({sessionId:e,status:t,body:[t,n],parts:{sections:n},buildRequest:t=>({type:`session-setup`,id:e,requestId:t})})}function bA(e){let t=gA.settleResponse(e);if(!t)return;if(!e.ok||!e.setup){t.status.textContent=e.error||`Could not read session setup`;return}let n=t.parts.sections;vA(n,e.setup),t.status.textContent=n.childElementCount>0?``:`No session setup recorded yet`,t.status.hidden=n.childElementCount>0}function xA(e){return{skipPerms:e.skipPerms??e.dangerouslySkipPermissions??!1,saneYolo:e.saneYolo===!0,worktree:e.worktree??e.isWorktree??!1,workspace:e.workspace??e.isWorkspace??!1,remoteWorkspace:e.remoteWorkspace??null,guarded:e.guarded??e.isGuarded??!1,guardrailsReleased:e.guardrailsReleased??e.isGuardrailsReleased??!1,ephemeral:e.ephemeral===!0,ownerId:e.ownerId??null,path:e.path,stateSince:e.stateSince,taskTitle:typeof e.taskTitle==`string`?e.taskTitle:null,taskTitleIsCustom:e.taskTitleIsCustom===!0}}var SA={isVisible:document.visibilityState===`visible`,isFrozen:!1,isProbing:!1,isReplacing:!1},CA=document.visibilityState===`visible`?null:Date.now(),wA=null,TA=null;function EA(){wA!==null&&window.clearTimeout(wA),wA=null}function DA(e){EA();let t=Date.now()+e;wA=window.setTimeout(()=>{wA=null,AA({kind:`heartbeat-due`,lateByMs:Date.now()-t})},e)}function OA(){TA!==null&&window.clearTimeout(TA),TA=null}function kA(e){switch(e.kind){case`probe-control`:at(e.deadlineMs,e.isAnnounced).then(e=>{AA({kind:e?`pong`:`pong-missed`})});return;case`replace-control`:ct();return;case`close-sockets`:OA(),lt(),Rb();return;case`reconnect-shown-terminals`:Ib();return;case`hold-input`:Nb();return;case`release-input`:Pb();return;case`schedule-heartbeat`:DA(e.inMs);return;case`cancel-heartbeat`:EA();return}}function AA(e){let t=Ye(SA,e);SA=t.state;for(let e of t.actions)kA(e)}function jA(){if(document.visibilityState!==`visible`){CA=Date.now(),AA({kind:`hidden`});return}let e=CA===null?0:Date.now()-CA;CA=null,Eg(`shown`,e),AA({kind:`shown`,hiddenForMs:e})}function MA(e){OA(),wg(`control-${e}`),e===`connecting`?TA=window.setTimeout(()=>{TA=null,AA({kind:`handshake-overdue`})},et):AA({kind:e===`opened`?`control-opened`:`control-closed`})}function NA(){Eg(`resumed`,CA===null?0:Date.now()-CA),AA({kind:`resumed`})}function PA(){let e=Reflect.get(navigator,`connection`);e instanceof EventTarget&&e.addEventListener(`change`,()=>{Tg(`link`),AA({kind:`network-changed`})})}function FA(){Xe(MA),document.addEventListener(`visibilitychange`,jA),document.addEventListener(`freeze`,()=>AA({kind:`frozen`})),document.addEventListener(`resume`,NA),window.addEventListener(`pagehide`,e=>{e.persisted&&AA({kind:`frozen`})}),window.addEventListener(`pageshow`,e=>{e.persisted&&NA()}),window.addEventListener(`online`,()=>{Tg(`online`),AA({kind:`network-changed`})}),window.addEventListener(`offline`,()=>Tg(`offline`)),PA()}var IA={},LA=null,RA=null,zA=be,BA=null,VA=!1,HA=null,UA=[],WA=null,GA=()=>null,KA=()=>{},qA=new Set,JA=new Set;function YA(e){for(let t of JA)t(e)}function XA(e){JA.add(e)}function ZA(){return IA}function QA(e){return IA={...IA,...e},IA}function $A(){return{status:LA,journal:RA,request:zA,lastAutoCheckAt:BA,isCheckInFlight:VA,checkSendFailure:HA}}function ej(e){let t=ye(zA,e);t!==zA&&(zA=t,YA({kind:`update`,frame:`request`}))}function tj(){ej(E({type:`update-apply`})?`request-sent`:`request-unsent`)}function nj(){BA=Date.now();let e=E({type:`update-check`});VA=e,HA=e?null:b,YA({kind:`update`,frame:`request`})}function rj(e){KA=e}function ij(){KA()}function aj(e){UA=[...e]}function oj(){return UA}function sj(e=null,t=null,n=null){let r=WA!==null&&(WA.sectionId!==null||WA.isLink);e===null&&n===null&&r||(WA={sectionId:e,settingId:t,hashAtRequest:n??location.hash,isLink:n!==null},YA({kind:`activate`}))}function cj(){let e=WA;return WA=null,e}function lj(e){GA=e}function uj(){for(let e of qA)e()}function dj(e){qA.add(e)}function fj(){return _u()&&GA()===`section`}function pj(){fj()&&YA({kind:`return-to-list`})}function mj(e){e&&(IA=e,Ui(IA.agentLogins),YA({kind:`broadcast`}))}function hj(){YA({kind:`status`})}function gj(e){hj()}function _j(e){LA=e,VA=!1,HA=null,zA=ye(zA,`status-frame`),YA({kind:`update`,frame:`status`})}function vj(e){RA=e,zA=ye(zA,`progress-frame`),YA({kind:`update`,frame:`progress`})}function yj(e){if(e.scope!==`update`)return!1;let t=oe(e.message),n=zA.requested;return zA=ye(zA,`error-frame`,t),VA=!1,n||(HA=t),YA({kind:`update`,frame:`error`}),!0}function bj(e,t){return typeof t!=`string`||t===``?{knownBuild:e,reload:!1}:e==null?{knownBuild:t,reload:!1}:e===t?{knownBuild:e,reload:!1}:{knownBuild:t,reload:!0}}var xj=200;function Sj(e,t=null){return`#settings/${encodeURIComponent(e)}${t?`/${encodeURIComponent(t)}`:``}`}function Cj(e){return/^#settings(?:[/?]|$)/.test(e)}function wj(e){let t=e.trim();return t?`#settings?q=${encodeURIComponent(t)}`:`#settings`}function Tj(e){let t=/^#settings(?:\?(.*))?$/.exec(String(e??``));if(!t)return null;let n=new URLSearchParams(t[1]??``).get(`q`)??``;return{query:Array.from(n.trim()).slice(0,xj).join(``).trim()}}function Ej(e,t,n){let r=w(`a`,`settings-link`,n);return r.href=Sj(e,t),r}var Dj=!1,Oj=!1,kj=!1,Aj=null,jj=null;function Mj(){return jj??=P(()=>import(`./nyan-cat-D_Wgtw6g.js`).then(e=>e.r).then(e=>(Aj=e,e),e=>(jj=null,T(`flying-animals`,`nyan cat failed to load: ${ft(e)}`),null)),__vite__mapDeps([21,14,1])),jj}function Nj(e){!kj||e.currentFlightBlockReason(!0)?e.stopNyanCat():e.startNyanCat()}function Pj(){Oj=!0,Fj(Jr())}function Fj(e){let t=document.documentElement;Dj||(Dj=!0,vu(()=>Fj(Jr())),window.matchMedia(`(prefers-reduced-motion: reduce)`).addEventListener(`change`,()=>Fj(Jr()))),kj=e,e?(t.dataset.flyingAnimals=`true`,Aj?Nj(Aj):Oj&&Mj().then(e=>{e&&Nj(e)})):(delete t.dataset.flyingAnimals,Aj?.stopNyanCat())}var Ij=`•`.repeat(8),Lj=`[^/\\\\\\s"'\`<>:]+`,Rj=RegExp(`(?<![\\w./\\\\-])(?:/home/${Lj}|/Users/${Lj}|[A-Za-z]:[\\\\/]Users[\\\\/]${Lj}|/root(?![\\w.-]))`,`g`);function zj(e){let t=tv(e);if(t.length===0)return e;let n=``,r=0;for(let i of t)n+=e.slice(r,i.start)+Ij,r=i.end;return n+e.slice(r)}function Bj(e){return e.replace(Rj,`~`)}function Vj(e){return Bj(zj(e))}var Hj=`.xterm, input, textarea, script, style, [contenteditable]:not([contenteditable="false"])`,Uj=[`title`,`label`],Wj=new WeakMap,Gj=new WeakMap,Kj=null;function qj(e){let t=e instanceof Element?e:e.parentElement;return!t||t.closest(Hj)!==null}function Jj(e){let t=e.parentElement?.closest(`option`);return t!=null&&!t.hasAttribute(`value`)}function Yj(e,t){if(t&&e===t.masked)return t;let n=Vj(e);return n===e?null:{original:e,masked:n}}function Xj(e){let t=Jj(e)?null:Yj(e.data,Wj.get(e));t?(Wj.set(e,t),e.data!==t.masked&&(e.data=t.masked)):Wj.delete(e)}function Zj(e,t){let n=e.getAttribute(t),r=Gj.get(e),i=n===null?null:Yj(n,r?.get(t));if(!i){r?.delete(t);return}let a=r??new Map;a.set(t,i),Gj.set(e,a),n!==i.masked&&e.setAttribute(t,i.masked)}function Qj(e){for(let t of Uj)Zj(e,t)}function $j(e){return e instanceof Element&&e.matches(Hj)?NodeFilter.FILTER_REJECT:NodeFilter.FILTER_ACCEPT}function eM(e){Qj(e);let t=document.createTreeWalker(e,NodeFilter.SHOW_ELEMENT|NodeFilter.SHOW_TEXT,$j);for(let e=t.nextNode();e;e=t.nextNode())e instanceof Text&&Xj(e),e instanceof Element&&Qj(e)}function tM(e){qj(e)||(e instanceof Text&&Xj(e),e instanceof Element&&eM(e))}function nM(e){e instanceof Element&&!qj(e)&&Qj(e)}function rM(e){let t=new Set,n=new Set;for(let r of e){if(r.type===`childList`)for(let e of r.addedNodes)t.add(e);r.type===`characterData`&&t.add(r.target),r.type===`attributes`&&n.add(r.target)}for(let e of t)e.isConnected&&tM(e);for(let e of n)e.isConnected&&nM(e)}function iM(e){let t=document.createTreeWalker(e,NodeFilter.SHOW_ELEMENT|NodeFilter.SHOW_TEXT);aM(e);for(let e=t.nextNode();e;e=t.nextNode())aM(e)}function aM(e){if(e instanceof Text){let t=Wj.get(e);t&&e.data===t.masked&&(e.data=t.original);return}if(!(e instanceof Element))return;let t=Gj.get(e);if(t)for(let[n,r]of t)e.getAttribute(n)===r.masked&&e.setAttribute(n,r.original)}function oM(){if(Kj)return;let e=new MutationObserver(t=>{rM(t),e.takeRecords()});eM(document.body),e.observe(document.body,{childList:!0,subtree:!0,characterData:!0,attributes:!0,attributeFilter:Uj}),Kj=e}function sM(){Kj&&(Kj.disconnect(),Kj=null,iM(document.body),Wj=new WeakMap,Gj=new WeakMap)}function cM(e){e?oM():sM()}function lM(){cM(sv()),lv(cM)}function uM(e){if(typeof e!=`object`||!e||!(`telemetry`in e))return!1;let{telemetry:t}=e;return typeof t!=`object`||!t||!(`enabled`in t)?!1:t.enabled===!0}function dM(e){return typeof e!=`object`||!e||!(`telemetryForcedOff`in e)?!1:e.telemetryForcedOff===!0}function fM(e,t){return t||dM(e)?!1:uM(e)}var pM=2500;function mM({hasSnapshot:e,connectingTerminalCount:t,msSinceConnected:n}){return n<2500&&(!e||t>0)?`wait`:`reveal`}function hM(e){return g(Number(e)||0,{rounding:`round`,wording:`compact`,suffix:``,justNowBelowSeconds:0})}function gM(e){return typeof e!=`number`||!Number.isFinite(e)||e<=0?`never`:`${hM(Date.now()-e)} ago`}var _M=e=>`polled ${gM(e)}`;function vM(e){let t=[],n=[],r=null,i=e=>{let t=e.format(e.ts);e.el.textContent!==t&&(e.el.textContent=t)},a=()=>{let r=e();if(r&&!r.closest(`[hidden]`)){for(let e of t)i(e);for(let e of n)e()}};return{track(e,n,r=_M){let a={el:e,ts:n,format:r};i(a),t.push(a)},onTick(e){n.push(e)},reset(){t=[],n=[]},ensure(){r||=Rt(a)}}}var yM=2e4,bM=null,xM=null,SM={claude:null,codex:null},CM=null,wM=null,TM=null,EM=`all`,DM=!1,OM=null,kM=null,AM=!0,jM=()=>!1,MM=new Set,NM=u({getAck:bi,setAck:xi,signature:()=>hh(bM,SM.claude),isLooking:()=>jM()});function PM(e){for(let t of MM)t(e)}function FM(){CM?.(NM.refresh())}function IM(e){DM=e,PM(`refresh-status`),OM&&=(clearTimeout(OM),null),e&&(OM=setTimeout(()=>{OM=null,DM=!1,kM=`Usage did not answer within ${Math.round(yM/1e3)} s. Refresh to try again.`,PM(`refresh-status`)},yM))}function LM(e){let t=Qm.find(t=>t.value===e);return t?t.days:null}function RM(){return{report:bM,sessions:xM,planLimitsByVendor:SM,rangeValue:EM}}function zM(){let e=!AM||!DM&&kM!==null;return AM?DM?{text:`Refreshing`,isPending:!0,hasFailure:e}:{text:kM??``,isPending:!1,hasFailure:e}:{text:bM?`${b} The figures below are from before the connection dropped.`:b,isPending:DM,hasFailure:e}}function BM(e){MM.add(e)}function VM(e){jM=e,FM()}function HM(){NM.acknowledge(),FM()}function UM(e){CM=e,FM()}function WM(e){wM?.({type:`dashboard-telemetry`,event:`operator_action`,properties:{surface:`usage`,action:e}})}function GM(e){wM=e}function KM(e){EM=e}function qM({force:e=!1}={}){if(!wM)return;TM=st(`usage`);let t={type:`request-usage-report`,requestId:TM};e&&(t.force=!0);let n=LM(EM);n!==null&&(t.days=n),kM=null,IM(!0),!wM(t)&&(kM=b,IM(!1))}function JM(e){AM=e,PM(`refresh-status`)}function YM(e){xM=e,PM(`sessions`)}function XM(e){let t=e;SM={...SM,[fh(t)]:t},PM(`plan-limits`),FM()}function ZM(e){xh(e,TM)&&(kM=null,IM(!1),bM=e,PM(`report`),FM())}function QM(){let e=bM?.pricing||(xM?{source:xM.pricingSource}:null),t=_h(e?.fetchedAt),n=[gh(e,t!==null&&t>0?gM(t):``)],r=bh(bM);r&&n.push(r);let i=yh(bM?.scan);return i&&n.push(i),n}var $M={teamReview:e=>e?.teamReview?.enabled!==!1,issues:e=>e?.issues?.enabled===!0,posthog:e=>e?.posthog?.enabled===!0,visions:e=>e?.visions?.enabled===!0,usage:e=>e?.usage?.enabled!==!1,benchmarks:e=>e?.benchmarks?.enabled===!0},eN=[{rule:`teamReview`,sectionId:`lanes-team-review`,settingId:`team-review-enabled`},{rule:`issues`,sectionId:`lanes-issues`,settingId:`issues-enabled`},{rule:`usage`,sectionId:`machine-usage`,settingId:`usage-enabled`},{rule:`posthog`,sectionId:`lanes-posthog`,settingId:`posthog-enabled`},{rule:`visions`,sectionId:`lanes-visions`,settingId:`visions-enabled`},{rule:`benchmarks`,sectionId:`lanes-benchmarks`,settingId:`benchmarks-enabled`}];function tN(e,t){return t.isPhoneShellActive?t.phoneScreen===e:t.activeView===e}function nN(e,t){return e.flatMap(e=>!e.gate||!(`fromSettings`in e.gate)?[]:[{view:e,isAvailable:e.gate.fromSettings(t)}])}function rN(e,t){let n=new Set(e),r=[...new Set((t??[]).filter(e=>n.has(e)))];return[...r,...e.filter(e=>!r.includes(e))]}function iN(e,t,n){let r=e.filter(e=>e!==t);if(r.length===e.length)return[...e];let i=Math.max(0,Math.min(n,r.length));return[...r.slice(0,i),t,...r.slice(i)]}function aN(e){return{isActive:e===!0||typeof e==`string`,level:typeof e==`string`?e:null}}function oN(e,t,n){t&&e?.refreshOn?.includes(n)&&t.refresh?.(n)}function sN(e,t,n,r){for(let i of e)tN(i.view,t)&&oN(i,r(i.view),n)}function cN(){let e=new Map,t=new Map;function n(e,n){let r=t.get(e.view);if(r)return r;let i=n().catch(n=>{throw t.delete(e.view),n});return t.set(e.view,i),i}function r(t,n){return e.get(t.view)||(n.mount(t.el),e.set(t.view,n),n)}function i(t){return e.get(t)??null}function a(t){let i=e.get(t.view);return i?Promise.resolve(i):t.module?Promise.resolve(r(t,t.module)):n(t,t.load).then(e=>r(t,e))}function o(e){for(let t of e)t.module&&r(t,t.module)}async function s(t){for(let r of t)r.load&&!e.has(r.view)&&await n(r,r.load)}return{show:a,mountedModuleOf:i,mountEagerViews:o,prefetch:s}}function lN(e,t,n){let r=Number(e);return!e||!Number.isFinite(r)||t-r>n}var uN=`glimmervoid:preload-error-reload-at`,dN=3e4,fN=1e3,pN=cN();function mN(e,t){let n=pN.mountedModuleOf(e.view);n?t(n):pN.show(e).then(t).catch(t=>{throw T(`view`,`${e.view} failed to show: ${ft(t)}`),t})}function hN(e){return pN.mountedModuleOf(e)}function gN(e){pN.mountEagerViews(e)}function _N(e){let t=()=>{pN.prefetch(e.filter(e=>!e.tab.hidden))};`requestIdleCallback`in window?window.requestIdleCallback(t):setTimeout(t,fN)}function vN(e){let t=Date.now();lN(e.getItem(uN),t,dN)&&(e.setItem(uN,String(t)),location.reload())}function yN(e){window.addEventListener(`vite:preloadError`,()=>vN(e()))}function bN(e,t){fetch(e,{method:`HEAD`,cache:`no-store`}).then(e=>{e.status===404&&vN(t())}).catch(()=>{})}function xN(e){jO({openTerminal:e.openTerminal,openReviews:e.openReviews}),rj(e.onRestart);let t=[{view:`focus`,label:`Focus`,panelClass:`focus-view`,hasOwnPhoneScreen:!0,hasPanelChrome:!1,hasReviewSidebar:!0,module:{mount:()=>fC({rail:document.getElementById(`focus-rail`),center:document.getElementById(`focus-center`),resizer:document.getElementById(`focus-rail-resizer`)}),activate:VC,deactivate:WC}},{view:`prs`,label:`Reviews`,glyph:`⇅`,panelClass:`pr-view`,gate:{fromSettings:$M.teamReview},load:()=>P(()=>import(`./review-queue-panel-BK2UvUw7.js`).then(e=>e.view),__vite__mapDeps([22,3,4,1,2,7,23,12,24])),refreshOn:[`shown`],attention:{subscribe:DO,acknowledge:EO},onConnectionChange:e=>{OD(e),QE(e)}},{view:`issues`,label:`Issues`,glyph:`#`,panelClass:`issues-view`,gate:{fromSettings:$M.issues},load:()=>P(()=>import(`./issues-panel-D1xLAqkG.js`).then(e=>e.view),__vite__mapDeps([25,3,4,1,12,23,2,7,26])),refreshOn:[`shown`],onConnectionChange:qk},{view:`usage`,label:`Usage`,glyph:`◔`,panelClass:`usage-view`,gate:{fromSettings:$M.usage},load:()=>P(()=>import(`./usage-panel-Btu-cPSN.js`).then(e=>e.view),__vite__mapDeps([27,3,4,1,28])),attention:{subscribe:UM,acknowledge:HM},onConnectionChange:JM,refreshOn:[`shown`,`connected`,`usage-sessions`]},{view:`radar`,label:`Radar`,glyph:`◎`,panelClass:`radar-view`,gate:{fromSettings:$M.posthog},load:()=>P(()=>import(`./radar-panel-BrQynCPO.js`).then(e=>e.view),__vite__mapDeps([29,3,4,1,2,7,10,11,12,5,30])),attention:{subscribe:dA,acknowledge:uA}},{view:`visions`,label:`Visions`,glyph:`◇`,panelClass:`visions-view`,gate:{fromSettings:$M.visions},load:()=>P(()=>import(`./visions-panel-DlcWh7VY.js`).then(e=>e.view),__vite__mapDeps([31,3,4,1,32])),attention:{subscribe:dT,acknowledge:fT},refreshOn:[`shown`],onConnectionChange:hT},{view:`hooks`,label:`Hooks`,glyph:`◈`,panelClass:`hooks-view`,load:()=>P(()=>import(`./hooks-panel-UXd6kftV.js`).then(e=>e.view),__vite__mapDeps([33,4,3,1,2,7,34])),refreshOn:[`shown`,`connected`,`hooks-updated`]},{view:`trace`,label:`Trace`,panelClass:`trace-view`,gate:{subscribe:oc},load:()=>P(()=>import(`./trace-panel-BMX1noJ8.js`).then(e=>e.view),__vite__mapDeps([35,3,4,1,36])),refreshOn:[`shown`],onAvailabilityChange:e=>fA(e?Gm:null),onConnectionChange:Xm},{view:`benchmarks`,label:`Bench`,panelClass:`bench-view`,gate:{fromSettings:$M.benchmarks},load:()=>P(()=>import(`./benchmark-panel-DmyIMpSE.js`).then(e=>e.view),__vite__mapDeps([37,3,4,1,38])),onConnectionChange:gk},{view:`settings`,label:`Settings`,glyph:`@`,panelClass:`settings-view`,hasPanelChrome:!1,load:()=>P(()=>import(`./settings-panel-XqOeh2vT.js`).then(e=>e.view),__vite__mapDeps([39,3,4,1,2,7,20,10,11,12,5,21,14,40]))}],n=S(document,`#app-main`,`main`),r=t.map(t=>{let r=w(`button`,`header-tab`,t.label);r.id=`tab-${t.view}`,r.type=`button`,r.draggable=!0;let i=`view-${t.view}`;r.setAttribute(`role`,`tab`),r.setAttribute(`aria-controls`,i);let a=t.view===`focus`;r.setAttribute(`aria-selected`,String(a)),r.tabIndex=a?0:-1,t.glyph&&(r.dataset.phoneGlyph=t.glyph);let o=document.getElementById(i)??w(`section`);if(o.classList.add(t.panelClass),o.id=i,o.setAttribute(`role`,`tabpanel`),o.setAttribute(`aria-labelledby`,r.id),o.hidden=!0,o.parentElement||n.append(o),r.hidden=t.gate!==void 0,o.classList.toggle(`view-panel`,t.hasPanelChrome!==!1),t.attention){let n=w(`span`,`tab-activity`);n.id=`tab-${t.view}-activity`,n.setAttribute(`aria-hidden`,`true`),r.append(n),t.attention.subscribe(r=>{let{isActive:i,level:a}=aN(r);n.classList.toggle(`active`,i),a===null&&n.removeAttribute(`data-attention`),a!==null&&n.setAttribute(`data-attention`,a),e.setPhoneAttention(t.view,r)})}return{...t,tab:r,el:o}});return S(document,`#header-tabs`,`div`).replaceChildren(...r.map(e=>e.tab)),r}Bg(Kr()),Vg(()=>{P(()=>import(`./alert-sound-BGx4LdwZ.js`).then(e=>e.playNyanJingle(),e=>T(`alert-sound`,`nyan jingle failed to load: ${ft(e)}`)),[])}),Hg(Br()),Fj(Jr()),gu(),xo(document);var SN=S(document,`#connection-status`,`span`),CN=S(SN,`.connection-label`,`span`),wN=S(document,`#loading-screen`,`div`),TN=S(document,`#loading-status`,`div`),EN=S(document,`#loading-detail`,`div`),DN=S(document,`#shutdown-screen`,`div`),ON=S(document,`#shutdown-status`,`div`),kN=!1,AN=null,jN=!1;function MN(){let e=Bi(),t=wN.querySelector(`.loading-spinner`);e&&t&&t.replaceWith(zi(e,`loading-animal`))}MN();function NN(){kN||AN===null||mM({hasSnapshot:jN,connectingTerminalCount:hb(),msSinceConnected:performance.now()-AN})===`reveal`&&PN()}mb(NN);function PN(){if(kN)return;kN=!0,wN.classList.add(`fade-out`),_N(Q),Pj(),ia();let e=()=>wN.remove();wN.addEventListener(`transitionend`,e,{once:!0}),setTimeout(e,1e3)}function FN(e,t){SN.dataset.state=`shutdown`,CN.textContent=e,SN.title=e,jP.disabled=!0,ON.textContent=t,DN.classList.add(`active`)}var IN=new Set([`disconnected`,`connecting`]);function LN(e,t,n){SN.dataset.state=e,SN.toggleAttribute(`data-reconnected`,n),CN.textContent=t,SN.title=t}function RN(e,t){LN(e,t,e===`connected`&&IN.has(SN.dataset.state??``))}function zN(e,t){SN.dataset.state!==`shutdown`&&LN(e===`verified`?`connected`:e,t,!1)}var BN=1e4,VN=`Server`,HN=`Worktree`,UN=`Worktree warning`,WN=`The server is not answering. Check the terminal running Glimmervoid for errors, or start it again with glimmervoid. This page reconnects on its own.`,GN=`Server not answering. Check the Glimmervoid terminal for errors, or run glimmervoid. This page retries on its own.`,KN=null,qN=!1;function JN(){TN.textContent=`Reconnecting to server...`,EN.textContent=GN,EN.hidden=!qN}function YN(){KN=null,qN=!0,kN?R({source:VN,message:WN,hidesInStreamerMode:!1}):JN()}function XN(){KN!==null||qN||(KN=window.setTimeout(YN,BN))}function ZN(){KN!==null&&window.clearTimeout(KN),KN=null,qN=!1,EN.hidden=!0,Es(VN)}Qe((e,t)=>{if(e===`connecting`||e===`verified`)zN(e,t);else{RN(e,t),Ox(e===`connected`);for(let t of Q)t.onConnectionChange?.(e===`connected`);if(e===`connected`){if(ZN(),bN(import.meta.url,()=>window.sessionStorage),YP&&XP(YP),DN.classList.contains(`active`)){location.reload();return}ra(),document.body.classList.add(`app-ready`),!kN&&AN===null&&(AN=performance.now(),TN.textContent=`Connecting to sessions...`,setTimeout(PN,pM)),NN(),SF(),pP(`connected`),ut(`get-settings`,{}).then(e=>{e.settings&&(tF(e.settings),an()===`settings`&&IP(location.hash))}).catch(()=>{})}else e===`disconnected`&&DN.classList.contains(`active`)?ON.textContent=`Waiting for server...`:(XN(),kN||JN())}});function QN(){Kk(),TD(),tE()}function $N(){wC(),QN()}Ea(()=>wC()),Ro(e=>{wC(e),QN()});var eP=null;function tP(e){let t=bj(eP,e);eP=t.knownBuild,t.reload&&location.reload()}function nP(e){pT(new Map(e.filter(e=>!e.ephemeral).map(e=>[e.id,e.name]))),gj(e.filter(e=>!e.ephemeral).map(e=>({id:e.id,name:e.name,agent:e.agent,permissionMode:e.dangerouslySkipPermissions?`Skip permissions`:`Default`})));for(let t of e){Za(t.id,t.coherenceHooks),t.ephemeral||Sl(t.path),XO(t.id,t.linkedPrs);let e=px(t.id);e&&Zx(t.id,t.state,t.stateSince),e&&bc(t.id,!!t.saneYolo),e&&Mx(t.id,t.isGuarded,t.isGuardrailsReleased),e||yx(t.id,t.name,t.state,xA(t)),Kx(t.id,t.failureReason),fx(t.id,t.taskTitle,t.taskTitleIsCustom),Ax(t.id,t.agent),Bx(t.id,t.mergeStatus,t.mergeReason),kx(t.id,t.effectiveBase),Px(t.id,t.activeAgents,t.awaitingBackgroundTasks),Ix(t.id,t.pendingPromptKind),Lx(t.id,t.unseenOutcome),Cx(t.id,t.hasPlan),fP(t.id)}vx(),jo(A.counts),wC(),UC(),QN(),rP(),zP(location.hash),CF(),jN=!0,NN()}function rP(){Km([...O].map(([e,t])=>({id:e,name:gt(t)||e})))}function iP(e,t){Cx(e,t?.hasPlan===!0),Lx(e,t?.unseenOutcome),fP(e)}var aP=new Set([x.DONE,x.FAILED]);function oP(e,t){return e!==void 0&&aP.has(e)&&!aP.has(t)&&t!==x.DORMANT}function sP(e){let t=O.get(String(e.id)),n=document.querySelector(`.session-card[data-id="${CSS.escape(String(e.id))}"]`),r=n instanceof HTMLElement?n:null,i=r?r.dataset.skipPerms!==void 0:!1,a=e.saneYolo??(r?r.dataset.saneYolo!==void 0:!1),o=r?r.dataset.path:void 0;Ux(e.id),yx(e.id,e.session,x.DORMANT,xA({skipPerms:i,saneYolo:a,worktree:r?.dataset.worktree!==void 0,workspace:r?.dataset.workspace!==void 0,remoteWorkspace:r?.dataset.remoteWorkspace??null,guarded:r?.dataset.guarded!==void 0,guardrailsReleased:r?.dataset.guardrailsReleased!==void 0,ephemeral:r?.dataset.ephemeral!==void 0,path:o,stateSince:e.timestamp,taskTitle:t?.taskTitle,taskTitleIsCustom:t?.taskTitleIsCustom})),Ax(e.id,t?.agent),iP(e.id,t)}function cP(e,t){let n=O.get(String(e.id))?.currentState;t.to===x.DORMANT&&n!==x.DORMANT?(sP(e),Kf(e.id)):(Zx(e.id,t.to,e.timestamp,t.event),Kx(e.id,e.failureReason),e.saneYolo!==void 0&&bc(e.id,e.saneYolo),Kf(e.id),oP(n,t.to)&&Fb(e.id))}function lP(e){if(px(e.id))e.transition&&cP(e,e.transition),e.activeAgents!==void 0&&Px(e.id,e.activeAgents,e.awaitingBackgroundTasks),e.unseenOutcome!==void 0&&Lx(e.id,e.unseenOutcome),e.pendingPromptKind!==void 0&&Ix(e.id,e.pendingPromptKind),e.unseenOutcome!==void 0&&vx(),jo(A.counts),zo(e.id),Hc(e.id);else{if(!e.transition)return;yx(e.id,e.session,e.transition.to,xA({skipPerms:e.skipPerms,saneYolo:e.saneYolo,stateSince:e.timestamp})),jo(A.counts),Kk()}}var uP=new Map;function dP(e){let t=new Set;for(let n of e){if(!n?.id)continue;t.add(n.id);let e={tokens:n.tokens,costUSD:n.costUSD,officialCostUSD:n.officialCostUSD};uP.set(n.id,e),Fx(n.id,e)}for(let e of[...uP.keys()])t.has(e)||(uP.delete(e),Fx(e,null))}function fP(e){let t=uP.get(e);t&&Fx(e,t)}GM(E),NT(E),Um(E),Gk(E),mk(E),lc(JO),el(to),el(KO),dc({isReadable:no,open:io}),pc(yA);function pP(e){sN(Q,{isPhoneShellActive:XT(),activeView:an(),phoneScreen:j.snapshot().phoneScreen},e,hN)}lv(()=>pP(`settings-updated`));var mP={snapshot:e=>{tP(e.serverBuild),nP(e.sessions)},"hooks-report":e=>FT(e),"save-hook-result":()=>IT(),"delete-hook-result":()=>IT(),"session-status":e=>lP(e),"session-added":e=>{e.ephemeral||Sl(e.path),XO(e.id,e.linkedPrs),px(e.id)||(yx(e.id,e.session,e.state,xA(e)),Ax(e.id,e.agent),fP(e.id)),jo(A.counts),$N(),rP()},"session-close-confirm":e=>{$l(e.id)},"session-removed":e=>{Ds(e.id),Ux(e.id),Qa(e.id),Jf(e.id),ZO(e.id),jo(A.counts),$N(),rP()},"session-title":e=>{fx(e.id,e.taskTitle,e.isCustom),$N()},"session-prs":e=>XO(e.id,e.linkedPrs),"session-renamed":e=>{Hx(e.id,e.newName),$N(),rP()},"session-modified":e=>{e.ephemeral||Sl(e.path);let t=O.get(String(e.id)),n=B()===String(e.id);Za(e.id,null),Ux(e.id),Jf(e.id),XO(e.id,e.linkedPrs),yx(e.id,e.session,e.state,xA(e)),n&&Pl(String(e.id)),Ax(e.id,e.agent),iP(e.id,t),jo(A.counts),$N(),rP()},"session-git":e=>jx(e.id,!!e.worktree),"session-merge-status":e=>{zx(e.id,e.mergeStatus,e.reason),IC(e.id,e.mergeStatus),QN()},"session-worktree-blocked":e=>{R({source:HN,sessionId:e.id,message:`${e.session}: ${e.notice||`The integration branch was not found. Check the integration branch in Settings, then restart the session.`}`})},"session-worktree-warning":e=>{R({source:UN,sessionId:e.id,message:`${e.session}: ${e.notice||`The base branch could not be synced. The session keeps working on its current base.`}`})},"session-worktree-ready":e=>{Es(HN,e.id),kx(e.id,e.base)},"session-diff":e=>{Vx(e.id,e)},"session-diff-error":e=>{Vf(e.id,e.message)},"change-map":e=>Hf(e.id,e.map),"branch-sync-status":e=>Uf(e.id,e),"session-changed":e=>Gf(e.id),"debug-state-response":e=>Vc(e),"session-trace-response":e=>qm(e),"session-trace-changed":e=>Jm(e),"session-plan-changed":e=>{wx(e),QN()},"session-plan-draft":e=>{Tx(e)},"session-plan-response":e=>{Ex(e)},"session-docs-changed":e=>ma(e),"session-docs-snapshot":e=>ha(e),"session-shown":e=>Pa(e),"session-shown-snapshot":e=>Fa(e),"session-coherence-hooks":e=>{Za(e.id,e.coherenceHooks),$N()},"session-coherence":e=>{$a(e),$N()},"session-coherence-snapshot":e=>{eo(e),$N()},"session-coherence-journal-response":e=>ao(e),"session-setup-response":e=>bA(e),notify:e=>{Qh(e),Hc(e.session)},"update-status":e=>{xP(e),_j(e)},"update-progress":e=>vj(e.journal),"post-turn-leftovers":e=>CP(e),error:e=>{let t=yj(e),n=Ym(e),r=Dx(e);t||n||r||(e.id?Gx(e.id,e.message):R({source:VN,message:e.message}))},"session-error":e=>{Rf(e.id),!Dx(e)&&Gx(e.id,e.message)},"settings-updated":e=>{e.settings&&tF(e.settings),ra()},"agent-logins":e=>Ui(e.logins),"health-snapshot":e=>{e.stats&&Ru(e.stats)},"radar-status":e=>pA(e),"radar-investigation-activity":e=>mA(e),"radar-investigation-finished":e=>hA(e),"team-review-status":e=>YE(e),"github-prs":e=>Gt(e),"my-prs-status":ED,"benchmark-status":e=>_k(e),"benchmark-action-result":e=>vk(e),"my-pr-merge-result":e=>DD(e),"team-review-action-result":e=>XE(e),"open-team-review-session-result":e=>ZE(e),"issues-status":e=>Jk(e),"issue-detail-result":e=>Yk(e),"open-issue-session-result":e=>Xk(e),"usage-sessions":e=>{dP(e.sessions),YM(e)},"usage-report":e=>{ZM(e),hj()},"plan-limits":e=>XM(e),"usage-budget-alert":e=>Qh({session:`budget-${e.scope}-${e.periodKey}`,category:`threshold-${e.threshold}`,message:e.text,ignoreFocus:!0}),"visions-findings":e=>_T(e),"visions-comments":e=>vT(e),"visions-hand":e=>yT(e),"visions-intent":e=>bT(e),"visions-fix":e=>gT(e),"visions-snapshot":e=>CT(e),"ingest-activity":e=>xT(e),"ingest-snapshot":e=>ST(e),"client-trust":e=>gF(e.trust),"shutting-down":()=>FN(`Shutting down...`,`Shutting down sessions...`),restarting:()=>FN(`Restarting...`,`Restarting server...`)};function hP(e){let t=mP[e.type];t&&t(e)}nt(e=>{hP(e),pP(e.type)});var gP,_P=null;function vP(e,t,n){e.onclick=()=>{let e=qe(n);e?e.then(()=>{t.textContent=`Copied`}).catch(()=>{t.textContent=`Copy failed`}):t.textContent=`Copy failed`}}var yP=Ej(ce,me,`Update`).href;function bP(e){let{latestSha:t,latest:n}=e;return typeof n==`string`&&n?n:typeof t==`string`&&t?t:null}function xP(e){let t=S(document,`#update-banner`,`div`),{mode:n,tone:r,text:i}=xe(e),a=r===`security`;if(!e.updateAvailable&&!a){t.hidden=!0;return}let o=bP(e),s=o&&n===`restart`?`${o}:ready`:o;if(a&&i===_P||!a&&gP!==void 0&&s===gP||!a&&s&&ui()===s)return;t.classList.toggle(`update-banner-security`,a);let c=String(e.command??``);S(document,`#update-banner-text`,`span`).textContent=i,S(document,`#update-banner-cmd`,`code`).textContent=c;let l=S(document,`#update-banner-update`,`a`);l.href=yP,l.hidden=n!==`link`;let u=S(document,`#update-banner-restart`,`button`);u.hidden=n!==`restart`,u.onclick=hF;let d=S(document,`#update-banner-cmd`,`code`);d.hidden=n!==`command`;let f=S(document,`#update-banner-copy`,`button`);f.hidden=n!==`command`;let p=S(document,`#update-banner-copy-status`,`span`);p.hidden=n!==`command`,p.textContent=``;let m=S(document,`#update-banner-link`,`a`);m.hidden=!e.releaseUrl,m.href=typeof e.releaseUrl==`string`?e.releaseUrl:``,t.hidden=!1,vP(f,p,c),S(document,`#update-banner-dismiss`,`button`).onclick=()=>{t.hidden=!0,a?_P=i:(gP=s,di(s))}}var SP=!1;function CP({repositories:e,command:t}){let n=S(document,`#post-turn-leftovers-banner`,`div`);if(e.length===0){n.hidden=!0;return}if(SP)return;let r=S(document,`#post-turn-leftovers-copy-status`,`span`);S(document,`#post-turn-leftovers-text`,`span`).textContent=$t(e.length),S(document,`#post-turn-leftovers-cmd`,`code`).textContent=t,r.textContent=``,n.hidden=!1,vP(S(document,`#post-turn-leftovers-copy`,`button`),r,t),S(document,`#post-turn-leftovers-dismiss`,`button`).onclick=()=>{SP=!0,n.hidden=!0}}var wP=S(document,`#telemetry-banner`,`div`);function TP(){pi(!0),wP.hidden=!0}function EP(e){wP.hidden=!fM(e,fi())}var DP=S(document,`#telemetry-banner-settings`,`a`);DP.href=Ej(`privacy`,`telemetry-enabled`,`What's collected`).href,DP.addEventListener(`click`,TP),S(document,`#telemetry-banner-dismiss`,`button`).addEventListener(`click`,TP),S(document,`#btn-add-session-header`,`button`).addEventListener(`click`,Gl);var OP=S(document,`#btn-mute`,`button`);rk(OP);var kP=S(document,`#btn-streamer`,`button`);mv(kP),lM();var AP=S(document,`#power-menu`,`div`),jP=S(document,`#btn-power`,`button`),MP=S(document,`#power-menu-dropdown`,`div`);function NP(e){AP.classList.toggle(`open`,e),jP.setAttribute(`aria-expanded`,String(e))}jP.addEventListener(`click`,e=>{e.stopPropagation(),NP(!AP.classList.contains(`open`))}),Rs({trigger:jP,menu:MP,menuItems:()=>[...MP.querySelectorAll(`[role="menuitem"]`)].filter(e=>!e.hidden),isOpen:()=>AP.classList.contains(`open`),open:()=>NP(!0),close:()=>NP(!1)}),document.addEventListener(`click`,e=>{e.target instanceof Node&&(AP.contains(e.target)||NP(!1))}),Re(document.querySelector(`.header`));function PP(e){e&&sj(e),!oE(`settings`)&&$(`settings`,{section:e})}function FP(){Cj(location.hash)&&history.replaceState(history.state,``,`${location.pathname}${location.search}`)}function IP(e){return Cj(e)?(sj(null,null,e),oE(`settings`)||$(`settings`,{persist:!1}),!0):!1}var LP=`No plan is stored for this session yet. It appears here once the agent writes one.`,RP=`Plan`;function zP(e){let t=Vu(e);return t?!px(t)||(history.replaceState(history.state,``,`${location.pathname}${location.search}`),XT()?(iE(t)||R({source:RP,sessionId:t,message:LP}),!0):($(`focus`,{persist:!1}),RC(t)||R({source:RP,sessionId:t,message:LP}),!0)):!1}function BP(e){return zP(e)?!0:IP(e)}function VP(e){e.newURL===location.href&&BP(location.hash)}document.addEventListener(`click`,e=>{if(!XT()||e.defaultPrevented)return;let t=e.target instanceof Element?e.target.closest(`a[href^="#"]`):null;t instanceof HTMLAnchorElement&&BP(t.hash)&&e.preventDefault()}),lD(S(document,`#celebration-tray`,`div`),S(document,`#btn-celebrations`,`button`),S(document,`#celebration-tray-count`,`span`)),S(document,`#btn-help`,`button`).addEventListener(`click`,()=>{PP(`browser-shortcuts`)});var Q=xN({onRestart:hF,openTerminal:e=>{aE(e)||($(`focus`),LC(e))},openPlan:e=>{$(`focus`),RC(e)},openReviews:()=>GP(`prs`)?(oE(`prs`)||$(`prs`),!0):!1,setPhoneAttention:eE});function HP(){return Q.map(e=>e.view)}var UP=HP();aj(Q),Nf({panel:document.getElementById(`review-sidebar`)}),gN(Q);function WP(e){return Q.find(t=>t.view===e)}function GP(e){return Q.some(t=>t.view===e&&!t.tab.hidden)}var KP=!0,qP=null;function JP(e){WP(e)?.attention?.acknowledge()}var YP=null;function XP(e){YP=E({type:`dashboard-telemetry`,event:`view_shown`,properties:{view:e}})?null:e}function ZP(e){let t=WP(e);t&&(mN(t,e=>oN(t,e,`shown`)),XP(e))}function $(e,{section:t,setting:n,persist:r=!0}={}){let i=WP(e);if(!i||!GP(e))return;let a=an();j.dispatch(`setActiveView`,e),KP=r,r&&(qP=null),document.body.dataset.activeView=e,document.body.dataset.reviewSidebarHidden=String(i.hasReviewSidebar!==!0),r&&Zr(e);for(let t of Q){let n=t.view===e;t.el&&(t.el.hidden=!n),t.tab.setAttribute(`aria-selected`,String(n)),t.tab.tabIndex=n?0:-1}a!==e&&hN(a)?.deactivate?.(),mN(i,r=>{an()===e&&(r.activate?.(),oN(i,r,`shown`),e===`settings`&&t&&sj(t,n??null))}),XP(e),a===`settings`&&e!==`settings`&&FP(),JP(e)}function QP(e,t){let{view:n}=e;e.tab.hidden=!t,$T(n,t),e.onAvailabilityChange?.(t),!XT()&&(!t&&an()===n&&$(`focus`),t&&qP===n&&$(n))}function $P(e){for(let{view:t,isAvailable:n}of nN(Q,e))QP(t,n)}function eF(e){let t=rN(UP,e);Q.every((e,n)=>e.view===t[n])||(Q.sort((e,n)=>t.indexOf(e.view)-t.indexOf(n.view)),S(document,`#header-tabs`,`div`).append(...Q.map(e=>e.tab)),QT(t))}function tF(e){Ug(e.isExperimentalBuild===!0&&Hr()),hx(e),mj(e),mT(e),$P(e),EP(e),eF(e.viewTabOrder),cv(e.streamerMode===!0)}for(let e of Q)e.gate&&(QP(e,!1),`subscribe`in e.gate&&e.gate.subscribe(t=>QP(e,t)));Wm(()=>{GP(`trace`)&&(oE(`trace`)||$(`trace`))});function nF(){return Q.filter(e=>!e.tab.hidden)}function rF(e,t){let n=e[t];return $(n.view),n.tab}function iF(e,t){let n=nF();return rF(n,As(n.findIndex(t=>t.view===e),t,n.length))}function aF(e){Q.some(e=>e.tab===document.activeElement)&&e.focus()}var oF=null;function sF(e){let t=HP();eF(e),ut(`update-settings`,{settings:{viewTabOrder:e}}).then(e=>{e.type===`settings-error`&&eF(t)}).catch(()=>eF(t))}function cF(e){let t=oF;if(oF=null,!t||t===e)return;let n=HP();sF(iN(n,t,n.indexOf(e)))}for(let e=0;e<Q.length;e++){let{view:t,tab:n}=Q[e];n.addEventListener(`click`,()=>$(t)),n.addEventListener(`dragstart`,e=>{oF=t,e.dataTransfer?.setData(`text/plain`,t),e.dataTransfer&&(e.dataTransfer.effectAllowed=`move`)}),n.addEventListener(`dragover`,e=>{oF&&oF!==t&&(e.preventDefault(),n.dataset.dropTarget=`true`)}),n.addEventListener(`dragleave`,()=>delete n.dataset.dropTarget),n.addEventListener(`drop`,e=>{e.preventDefault(),delete n.dataset.dropTarget,cF(t)}),n.addEventListener(`dragend`,()=>{oF=null}),n.addEventListener(`keydown`,e=>{if(e.metaKey||e.altKey||e.ctrlKey||e.shiftKey)return;let t=nF(),n=t.findIndex(e=>e.view===an()),r=js(e.key,n,t.length,`horizontal`);r!==null&&(e.preventDefault(),rF(t,r).focus())})}var lF=Xr(),uF=Cj(location.hash),dF=Vu(location.hash);if(uF&&(sj(null,null,location.hash),$(`settings`,{persist:!1})),dF&&$(`focus`,{persist:!1}),!uF&&!dF){let e=GP(lF);e||(qP=lF),$(e?lF:`focus`,{persist:e})}qT({panels:LT(Q),onScreenShown:e=>{ZP(e),e!==`settings`&&FP(),e===`settings`&&!Cj(location.hash)&&sj(),JP(e)},canGoBack:e=>e===`settings`&&fj()||e===`prs`&&IO(),onBack:e=>{e===`settings`&&pj(),e===`prs`&&LO()},headerControls:[S(document,`.header-title`,`h1`),S(document,`#status-indicator`,`div`),S(document,`#celebration-tray`,`div`),S(document,`#btn-add-session-header`,`button`),S(document,`#btn-help`,`button`),OP,kP,AP]}),dj(nE),FO(nE);function fF(e){if(e===`phone`){let e=dC();for(let e of Q)hN(e.view)?.deactivate?.();let t=Cj(location.hash);JT({sessionId:e??void 0,linkedScreenId:t?`settings`:void 0}).then(e=>{e&&t&&sj(null,null,location.hash),!e&&_u()&&!XT()&&pF()});return}let t=ZT();YT(),pF(),t&&LC(t)}function pF(){let e=an();$(GP(e)?e:`focus`,{persist:KP})}_u()&&fF(`phone`),vu(fF),window.addEventListener(`hashchange`,VP);function mF({type:e,title:t,confirmLabel:n,danger:r,idleMessage:i,actionAfterKillingSessions:a}){NP(!1);let o=mx(),s=o>0?`Kill ${o} session${o>1?`s`:``} and ${a}?`:i;At({title:t,message:s,confirmLabel:n,danger:r||o>0,onConfirm:()=>E({type:e})})}function hF(){mF({type:`restart-server`,title:`Restart Server`,confirmLabel:`Restart`,danger:!1,idleMessage:`Restart the server?`,actionAfterKillingSessions:`restart the server`})}S(document,`#btn-restart`,`button`).addEventListener(`click`,hF);function gF(e){let t=Yt(`shutdown`,e);S(document,`#btn-shutdown`,`button`).hidden=!t,S(document,`#menu-divider-shutdown`,`div`).hidden=!t}S(document,`#btn-shutdown`,`button`).addEventListener(`click`,()=>{mF({type:`shutdown`,title:`Shut Down Server`,confirmLabel:`Shut Down`,danger:!0,idleMessage:`Shut down the server?`,actionAfterKillingSessions:`shut down the server`})});function _F(){return(document.activeElement?.closest(`.session-card`))?.dataset.id??null}function vF(e){LC(e),Ll(e),requestAnimationFrame(()=>requestAnimationFrame(()=>O.get(e)?.term?.focus()))}function yF(){let e=_F()??B();e?Yl(e,vF):document.getElementById(`btn-add-session-header`)?.click()}function bF({action:e,step:t}){switch(e){case`merge`:return Yf(),!0;case`close-session`:{let e=B();return e?($l(e),!0):!1}case`resolve-or-resync`:return Zf()||ep(),!0;case`new-session`:return document.getElementById(`btn-add-session-header`)?.click(),!0;case`quick-session`:return yF(),!0;case`next-attention`:return _u()?!1:uC()?(OC(),!0):(an()===`prs`&&RO()||HC(()=>$(`focus`)),!0);case`rail-step`:return uC()?(BC(t),!0):!1;case`view-step`:return!_u()&&(aF(iF(an(),t)),!0);case`session-nth`:return uC()?(zC(t),!0):!1;case`streamer-mode`:return pv(),!0}}document.addEventListener(`keydown`,e=>{if(e.repeat||Le(e))return;let t=mr(e,ld,{isTerminalFocused:document.activeElement?.classList.contains(`xterm-helper-textarea`)??!1},fd());t&&(jt()||bF(t)&&e.preventDefault())});var xF=Qt({mode:`trailing`,delayMs:150,run:()=>{E({type:`focus-change`,focused:document.hasFocus()})}});function SF(){xF.schedule()}function CF(){let e=ZT();e&&k(e)?._isActiveViewer?.()===!0&&Jx(e)}function wF(){SF(),Jb(k(on())),CF()}window.addEventListener(`focus`,wF),window.addEventListener(`blur`,wF),document.addEventListener(`visibilitychange`,wF),document.addEventListener(`visibilitychange`,()=>{document.visibilityState===`visible`&&_y()});var TF=Ze(E);window.addEventListener(`error`,e=>{TF(e.error),T(`uncaught`,ft(e.error??e.message))}),window.addEventListener(`unhandledrejection`,e=>{TF(e.reason),T(`unhandled-rejection`,ft(e.reason))}),yN(()=>window.sessionStorage),window.addEventListener(`pageshow`,e=>{e.persisted&&_y()}),Lu(S(document,`#health-footer-mount`,`div`)),cg(gx),XN(),FA(),it();var EF=wi();EF&&ot().then(()=>Tb(EF));export{kO as $,sn as $i,cd as $n,na as $r,rw as $t,ZA as A,ri as Ai,nh as An,nc as Ar,RE as At,Ik as B,jn as Bi,zm as Bn,cs as Br,CE as Bt,uj as C,Oi as Ci,Oh as Cn,fl as Cr,VD as Ct,pj as D,zr as Di,lh as Dn,Ac as Dr,xD as Dt,ij as E,Gr as Ei,uh as En,Wc as Er,SD as Et,oA as F,cr as Fi,eh as Fn,us as Fr,PE as Ft,Rk as G,Bn as Gi,If as Gn,Ko as Gr,MT as Gt,Bk as H,Rn as Hi,Im as Hn,$o as Hr,uE as Ht,cA as I,xr as Ii,bh as In,_s as Ir,NE as It,hk as J,An as Ji,gd as Jn,Po as Jr,cT as Jt,Lk as K,zn as Ki,ld as Kn,I as Kr,uT as Kt,sA as L,vr as Li,Hm as Ln,gs as Lr,BE as Lt,XA as M,Lr as Mi,dh as Mn,Oc as Mr,LE as Mt,cj as N,qr as Ni,sh as Nn,js as Nr,FE as Nt,lj as O,Ur as Oi,th as On,Tc as Or,KE as Ot,lA as P,li as Pi,ih as Pn,z as Pr,ME as Pt,wO as Q,ln as Qi,od as Qn,oa as Qr,jw as Qt,zk as R,Sr as Ri,Bm as Rn,ys as Rr,wE as Rt,QA as S,Ai as Si,Lh as Sn,il as Sr,aO as St,nj as T,Mi as Ti,mh as Tn,al as Tr,CD as Tt,Wk as U,Ln as Ui,Lm as Un,L as Ur,jT as Ut,Uk as V,Pn as Vi,Rm as Vn,Yo as Vr,lE as Vt,Hk as W,Vn as Wi,dm as Wn,qo as Wr,PT as Wt,tk as X,vn as Xi,md as Xn,ka as Xr,sw as Xt,fk as Y,_n as Yi,hd as Yn,so as Yr,Sw as Yt,nk as Z,hn as Zi,fd as Zn,Ca as Zr,Aw as Zt,Ej as _,Li as _i,Hg as _n,Nl as _r,YD as _t,WM as a,Fi as ai,rS as an,Yu as ar,OO as at,wj as b,ji as bi,Hh as bn,yl as br,iO as bt,KM as c,Ir as ci,Jx as cn,Hl as cr,NO as ct,RM as d,Jr as di,Xb as dn,ql as dr,KD as dt,on as ea,Wi as ei,ES as en,Xu as er,RO as et,QM as f,Rr as fi,Iv as fn,zl as fr,JD as ft,Fj as g,Pr as gi,Ug as gn,Ml as gr,BD as gt,hM as h,Br as hi,uv as hn,Ll as hr,nO as ht,eN as i,qt as ia,Ii as ii,nS as in,nd as ir,MO as it,$A as j,Vr as ji,oh as jn,jc as jr,jE as jt,oj as k,ai as ki,rh as kn,Dc as kr,qE as kt,BM as l,Kr as li,Sx as ln,Rl as lr,kD as lt,gM as m,ii as mi,lv as mn,$l as mr,UD as mt,rN as n,j as na,Gi as ni,VS as nn,Uu as nr,TO as nt,qM as o,Wr as oi,eS as on,_u as or,PO as ot,vM as p,Hr as pi,sv as pn,Il as pr,eO as pt,pk as q,On as qi,pd as qn,F as qr,lT as qt,$M as r,Kt as ra,zi as ri,RS as rn,Ju as rr,LO as rt,VM as s,ni as si,tS as sn,vu as sr,CO as st,iN as t,cn as ta,Ui as ti,DS as tn,Gu as tr,AO as tt,zM as u,ci as ui,Bb as un,Gl as ur,qD as ut,Tj as v,Yr as vi,Bg as vn,Cl as vr,ZD as vt,tj as w,Ni as wi,Qm as wn,ol as wr,XD as wt,mj as x,ki as xi,zh as xn,vl as xr,tO as xt,Sj as y,Pi as yi,Gg as yn,wl as yr,HD as yt,Vk as z,Nn as zi,Vm as zn,bs as zr,SE as zt};
|
|
78
|
+
`;function mw(e){let t=2166136261,n=3266489909;for(let r=0;r<e.length;r+=1){let i=e.charCodeAt(r);t=Math.imul(t^i,16777619)>>>0,n=Math.imul(n^i,2246822507)>>>0}return`${t.toString(36).padStart(7,`0`)}${n.toString(36).padStart(7,`0`)}`}function hw(e,t){return mw(JSON.stringify([e,...t]))}function gw(e,t){return hw(`finding`,[e,sw(t),String(t.code??``),String(t.message??``)])}function _w(e,t){return hw(`comment`,[e,Sw(t),String(t.message??``)])}function vw(e){return hw(`fix`,[e.uri,Aw(e),e.code,e.message,jw(e)])}function yw(e){return hw(`intent`,[e.key,e.text,e.active])}function bw(e,t,n,r=[],i=null){let a=[...n].map(([e,t])=>hw(`hand`,[e,t])).sort(),o=new Set;for(let r of[...e.keys(),...t.keys(),...n.keys()])o.add(hw(`document`,[r]));for(let[t,n]of e)for(let e of n)o.add(gw(t,e));for(let[e,n]of t)for(let t of n)o.add(_w(e,t));for(let e of r)o.add(vw(e));for(let e of rw(i,null,0))e.hasText&&o.add(yw(e));let s=[...o].sort();return{signature:[...a,...s].join(pw),handEntries:a,contentEntries:s}}function xw(e,t){let n=new Set(t.split(pw));return e.handEntries.some(e=>!n.has(e))?dw:e.contentEntries.some(e=>!n.has(e))?fw:null}function Sw(e){let t=Number(e?.line);return!Number.isFinite(t)||t<1?`L?`:`L${Math.floor(t)}`}function Cw(e){return Array.isArray(e?.diagnostics)?e.diagnostics:[]}function ww(e,t){let n=new Map(e),r=typeof t?.uri==`string`?t.uri:``;if(!r)return n;let i=Cw(t);return i.length===0?(n.delete(r),n):(n.set(r,i),n)}function Tw(e){return Array.isArray(e?.comments)?e.comments:[]}function Ew(e,t){let n=new Map(e),r=typeof t?.uri==`string`?t.uri:``;if(!r)return n;let i=Tw(t);return i.length===0?(n.delete(r),n):(n.set(r,i),n)}function Dw(e){let t=new Map,n=Array.isArray(e?.documents)?e.documents:[];for(let e of n){let n=typeof e?.uri==`string`?e.uri:``,r=Array.isArray(e?.diagnostics)?e.diagnostics:[];n&&r.length!==0&&t.set(n,r)}return t}function Ow(e){let t=new Map,n=Array.isArray(e?.documents)?e.documents:[];for(let e of n){let n=typeof e?.uri==`string`?e.uri:``,r=Array.isArray(e?.comments)?e.comments:[];n&&r.length!==0&&t.set(n,r)}return t}var kw=20;function Aw(e){let t=Number(e?.line);return!Number.isFinite(t)||t<0?`L?`:`L${Math.floor(t)+1}`}function jw(e){return e?.applied===!0?`applied`:`refused`}function Mw(e,{uri:t=``,ts:n=0}={}){if(!e||typeof e!=`object`)return null;let r=e,i=typeof r.message==`string`?r.message.trim():``;if(!i)return null;let a=Number(r.line),o=Number(r.ts??n);return{uri:typeof r.uri==`string`&&r.uri?r.uri:t,code:typeof r.code==`string`?r.code:``,line:Number.isFinite(a)&&a>0?Math.floor(a):0,message:i,applied:r.applied===!0,ts:Number.isFinite(o)&&o>0?o:0}}function Nw(e){let t=typeof e?.uri==`string`?e.uri:``,n=Number(e?.ts);return Mw(e?.fix,{uri:t,ts:Number.isFinite(n)?n:0})}function Pw(e,t,{max:n=kw}={}){let r=Nw(t);return r?[r,...e].slice(0,Math.max(0,Math.floor(n))):[...e]}function Fw(e,{max:t=kw}={}){let n=Array.isArray(e?.fixes)?e.fixes:[],r=[];for(let e of n){let t=Mw(e);t&&r.push(t)}return r.slice(0,Math.max(0,Math.floor(t)))}var Iw=100;function Lw(e){if(!e||typeof e!=`object`)return null;let t=e,n=Number(t.seq);if(!Number.isFinite(n))return null;let r=typeof t.summary==`string`?t.summary.trim():``;if(!r)return null;let i=Number(t.ts),a=t.scope&&typeof t.scope==`object`?t.scope:{};return{seq:Math.floor(n),source:typeof t.source==`string`?t.source:``,kind:typeof t.kind==`string`?t.kind:``,ts:Number.isFinite(i)&&i>0?i:0,summary:r,root:typeof a.root==`string`&&a.root?a.root:null,sessionId:typeof a.sessionId==`string`&&a.sessionId?a.sessionId:null}}function Rw(e){let t=Array.isArray(e?.events)?e.events:[],n=[];for(let e of t){let t=Lw(e);t&&n.push(t)}return n}function zw(e){let t=Number(e?.overflow);return!Number.isFinite(t)||t<=0?0:Math.floor(t)}function Bw(e,t){return[...e].sort((e,t)=>t.seq-e.seq).slice(0,Math.max(0,Math.floor(t)))}function Vw(e,t,{max:n=Iw}={}){let r=Rw(t);if(r.length===0)return Bw(e,n);let i=new Map;for(let t of e)i.set(t.seq,t);for(let e of r)i.set(e.seq,e);return Bw([...i.values()],n)}function Hw(e,{max:t=Iw}={}){return Bw(Rw(e),t)}var Uw=new Map,Ww=new Map,Gw=new Map,Kw=YC(),qw=new Map,Jw=null,Yw=!0,Xw=[],Zw=0,Qw=[],$w=null,eT=()=>!1,tT=new Set,nT=bw(Uw,Ww,Gw,Qw,Kw),rT=Si(),iT=u({getAck:()=>rT,setAck:e=>{rT=e,Ci(e)},signature:()=>nT.signature,isLooking:()=>eT()});function aT(e){for(let t of tT)t(e)}function oT(){nT=bw(Uw,Ww,Gw,Qw,Kw),nT.signature!==``&&iT.refresh(),$w?.(xw(nT,rT))}function sT(e){aT(e),oT()}function cT(){return{findingsByUri:Uw,commentsByUri:Ww,handsByUri:Gw,intent:Kw,projectNamesById:qw,isEnabled:Jw,isConnected:Yw,activityEvents:Xw,activityOverflow:Zw,fixEntries:Qw}}function lT(e){tT.add(e)}function uT(e){eT=e,oT()}function dT(e){$w=e,oT()}function fT(){nT.signature!==``&&iT.acknowledge(),oT()}function pT(e){qw=e instanceof Map?e:new Map,aT([`intent`])}function mT(e){Jw=e?.visions?.enabled===!0,aT([`feed`])}function hT(e){Yw=e,aT([`connection`])}function gT(e){Qw=Pw(Qw,e),sT([`fixes`])}function _T(e){Uw=ww(Uw,e),sT([`feed`])}function vT(e){Ww=Ew(Ww,e),sT([`feed`])}function yT(e){Gw=lw(Gw,e),sT([`feed`])}function bT(e){Kw=ew(Kw,e),sT([`intent`])}function xT(e){Xw=Vw(Xw,e),Zw=zw(e),sT([`activity`])}function ST(e){Xw=Hw(e),Zw=0,sT([`activity`])}function CT(e){Uw=Dw(e),Ww=Ow(e),Gw=uw(e),Kw=QC(e),Qw=Fw(e),sT([`intent`,`feed`,`fixes`])}var wT=null,TT=null,ET=!1,DT=null,OT=new Set;function kT(e,t){if(!e||typeof e!=`object`)return!1;let n=e.requestId;return typeof n!=`string`||!t||n===t}function AT(){for(let e of OT)e()}function jT(){return{report:wT,hasReportSendFailed:ET}}function MT(e){OT.add(e)}function NT(e){TT=e}function PT(){if(!TT)return;DT=st(`hooks-report`);let e=TT({type:`request-hooks-report`,requestId:DT});e!==!ET&&(ET=!e,AT())}function FT(e){kT(e,DT)&&(wT=e,ET=!1,AT())}function IT(){PT()}function LT(e){return e.filter(e=>!e.hasOwnPhoneScreen).map(e=>{let t=e.label.trim();return{id:e.view,label:t,glyph:e.glyph||t.charAt(0).toUpperCase(),el:e.el}})}var RT=null,zT=null,BT={},VT=null,HT=null,UT=null,WT=new Map,GT=new Map;function KT(){return zT??=P(()=>import(`./phone-shell-B5SBsrdy.js`).then(e=>{e.mountPhoneShell(BT),UT&&e.orderPhonePanels(UT);for(let[t,n]of WT)e.setPhoneScreenAvailable(t,n);for(let[t,n]of GT)e.setPhoneScreenAttention(t,n);return RT=e,e},e=>(zT=null,T(`phone-shell`,`phone shell failed to load: ${ft(e)}`),null)),__vite__mapDeps([18,3,4,1,12,11])),zT}function qT(e){BT=e}async function JT(e){let t={options:e};VT=t;let n=await KT();if(VT!==t)return!1;if(!n)return VT=null,HT=null,!1;VT=null,n.activatePhoneShell(t.options);let r=HT;return HT=null,r?.(n),!0}function YT(){VT=null,HT=null,RT?.deactivatePhoneShell()}function XT(){return VT!==null||(RT?.isPhoneShellActive()??!1)}function ZT(){return VT?VT.options?.sessionId??null:RT?.getPhoneSessionId()??null}function QT(e){UT=e,RT?.orderPhonePanels(e)}function $T(e,t){WT.set(e,t),RT?.setPhoneScreenAvailable(e,t)}function eE(e,t){GT.set(e,t),RT?.setPhoneScreenAttention(e,t)}function tE(){RT?.refreshPhoneBoard()}function nE(){RT?.syncPhoneHistory()}function rE(e){return VT?(HT=t=>{e(t)},!0):RT?e(RT):!1}function iE(e){return rE(t=>t.showPhonePlan(e))}function aE(e){return rE(t=>t.showPhoneSession(e))}function oE(e){return rE(t=>t.showPhoneScreen(e))}var sE={MERGE:`a merge commit`,SQUASH:`squash and merge`,REBASE:`rebase and merge`},cE=new Set([`FAILURE`,`ERROR`]);function lE(e){return sE[e]}function uE(e){return e.state===`MERGED`?`Already merged`:e.state===`OPEN`?e.isDraft?`Drafts cannot be merged`:e.isInMergeQueue?`Already in the merge queue`:e.mergeable===`CONFLICTING`||e.mergeStateStatus===`DIRTY`?`Resolve the merge conflicts first`:e.checks.failing.length>0||e.checks.state!==null&&cE.has(e.checks.state)?`Checks are failing`:e.stage===`ready`?null:`Not ready to merge yet`:`Closed`}function dE(e){return e.state===`MERGED`?`merged`:e.isDraft?`draft`:e.mergeable===`CONFLICTING`||e.mergeStateStatus===`DIRTY`?`conflicts`:e.mergeStateStatus===`BEHIND`?`behind`:e.checks.state===`FAILURE`||e.checks.state===`ERROR`?`checks-failing`:e.reviewDecision===`CHANGES_REQUESTED`?`changes-requested`:e.unresolvedThreads>0?`unresolved-threads`:e.checks.state===`PENDING`||e.checks.state===`EXPECTED`?`checks-pending`:e.reviewDecision===`REVIEW_REQUIRED`||e.mergeStateStatus===`BLOCKED`?`needs-approval`:e.mergeable===`MERGEABLE`&&[`CLEAN`,`HAS_HOOKS`,`UNSTABLE`].includes(e.mergeStateStatus)?`ready`:`unknown`}function fE(e){let t=de.parse({...e,key:`${e.repo}#${e.number}`,stage:`unknown`});return{...t,stage:dE(t)}}var pE=[`Needs you`,`Waiting`,`Ready to merge`,`Drafts`,`Merged today`],mE=[`Ready to merge`,`Needs you`,`Waiting`,`Drafts`,`Merged today`],hE={conflicts:`Needs you`,behind:`Needs you`,"checks-failing":`Needs you`,"changes-requested":`Needs you`,"unresolved-threads":`Needs you`,"checks-pending":`Waiting`,"needs-approval":`Waiting`,unknown:`Waiting`,ready:`Ready to merge`,draft:`Drafts`,merged:`Merged today`},gE={merged:`Merged`,draft:`Draft`,conflicts:`Merge conflicts`,behind:`Behind base`,"checks-failing":`Checks failing`,"changes-requested":`Changes requested`,"unresolved-threads":`Unresolved threads`,"checks-pending":`Checks running`,"needs-approval":`Needs approval`,ready:`Ready to merge`,unknown:`Status unknown`},_E={merged:`muted`,draft:`muted`,conflicts:`danger`,behind:`warn`,"checks-failing":`danger`,"changes-requested":`warn`,"unresolved-threads":`warn`,"checks-pending":`wait`,"needs-approval":`wait`,ready:`ok`,unknown:`muted`},vE={merged:`merged`,draft:`draft`,conflicts:`conflict`,behind:`behind`,"checks-failing":`failed`,"changes-requested":`changes-requested`,"unresolved-threads":`thread`,"checks-pending":`running`,"needs-approval":`reviewer`,ready:`ready`,unknown:`unknown`};function yE(e){let t=e.filter(e=>e.state===`OPEN`&&!e.isCrossRepository),n=new Map(t.map(e=>[JSON.stringify([e.repo.toLowerCase(),e.headRefName]),e])),r=new Map,i=[];for(let t of e){let e=t.state===`OPEN`?n.get(JSON.stringify([t.repo.toLowerCase(),t.baseRefName])):void 0;if(!e||e.key===t.key){i.push(t);continue}let a=r.get(e.key)??[];a.push(t),r.set(e.key,a)}let a=[],o=new Set;for(let t of[...i,...e]){if(o.has(t.key))continue;let e=[],n=[{pr:t,parentKey:null,depth:0}];for(;n.length>0;){let t=n.pop();if(!t||o.has(t.pr.key))continue;o.add(t.pr.key),e.push(t);let i=r.get(t.pr.key)??[];for(let e=i.length-1;e>=0;--e)n.push({pr:i[e],parentKey:t.pr.key,depth:t.depth+1})}a.push({root:t,rows:e})}return a}function bE(e){return pE[e.rows.reduce((e,{pr:t})=>Math.min(e,pE.indexOf(hE[t.stage])),pE.length-1)]}function xE(e){let t=new Map(pE.map(e=>[e,{title:e,prs:[],rows:[]}]));for(let n of yE(e)){let e=t.get(bE(n));if(e)for(let t of n.rows)e.rows.push(t),e.prs.push(t.pr)}return mE.flatMap(e=>t.get(e)??[])}function SE(e){return gE[e]}function CE(e){return _E[e]}function wE(e){return vE[e]}function TE(e,t){return e.flatMap(e=>{let n=t(e.key);if(!n)return[];let r=e.key.slice(0,e.key.lastIndexOf(`#`));return[{...fE({...n,repo:r}),...e}]})}function EE(e){let t=new Map;for(let n of e)for(let e of n.links){let r=fe(e),i=t.get(r)??[];i.at(-1)?.id!==n.id&&(i.push({id:n.id,title:n.title}),t.set(r,i))}return t}function DE(e,t){if(!e)return[];let n=new Set(e.filter(e=>e.state===`OPEN`).map(e=>e.key));return t.filter(e=>e.state===`MERGED`&&n.has(e.key))}var OE=3;function kE(e){if(e.length===1)return{message:`Merged ${e[0].key}`,detailLines:[e[0].title]};let t=e.slice(0,OE).map(e=>`${e.key} ${e.title}`),n=e.length-t.length,r=n>0?[...t,`and ${n} more`]:t;return{message:`Merged ${e.length} pull requests`,detailLines:r}}function AE(e,t){if(!e)return null;let n=e=>{let n=t(e.key);return n?{...e,checksState:n.rollupState,reviewDecision:Oe(n.reviewDecision,n.opinionatedWriterReviewStates),isDraft:n.isDraft,liveHead:n.headRefOid,prStage:fE(n).stage}:e};return{...e,drafts:e.drafts.map(n),inFlight:e.inFlight.map(n),queued:e.queued.map(n)}}function jE(e){return e.isDraft?{band:`not-ready`,reason:`draft`}:e.reviewDecision===`CHANGES_REQUESTED`?{band:`waiting-on-author`,reason:`changes-requested`}:e.checksState===`FAILURE`||e.checksState===`ERROR`?{band:`waiting-on-author`,reason:`checks-failing`}:e.checksState===`PENDING`||e.checksState===`EXPECTED`?{band:`not-ready`,reason:`checks-pending`}:e.requestSource===`direct`&&e.reviewDecision===`REVIEW_REQUIRED`?{band:`blocking-others`,reason:`direct-request`}:e.reviewDecision===`APPROVED`?{band:`actionable`,reason:`approved`}:{band:`actionable`,reason:e.requestSource===`direct`?`review-available`:`team-request`}}function ME(e){let t=e.viewerThreads;return t!==void 0&&t.total>0&&t.resolved===t.total}function NE(e){return e.status===`posted`&&PE(e)}function PE(e){if(!ME(e)||s(e))return!1;let t=LE(e);return e.status===`posted`&&e.postedEvent===`APPROVE`&&e.reviewedHead===t?!1:!(e.githubReviews??[]).some(e=>e.isViewer&&e.state===`APPROVED`&&e.commit===t)}function FE(e){let t={ready:[],noReviewNeeded:[],inReview:[],queued:[],attention:[],posted:[],discarded:[]};if(!e)return t;let n={"blocking-others":[],actionable:[],"waiting-on-author":[],"not-ready":[]},r={"blocking-others":[],actionable:[],"waiting-on-author":[],"not-ready":[]},i=[`blocking-others`,`actionable`,`waiting-on-author`,`not-ready`],a=new Set(e.inFlight.map(e=>e.key));t.inReview.push(...e.inFlight);for(let t of e.queued)a.has(t.key)||r[jE(t).band].push(t);for(let e of i)t.queued.push(...r[e]);let o=new Set(t.queued.map(e=>e.key));for(let r of e.drafts){if(a.has(r.key)||o.has(r.key))continue;if(RE(r).length>0||NE(r)){n.actionable.push(r);continue}let e=(r.status===`ready`||r.status===`stale`||r.status===`error`)&&!zE(r);e&&t.noReviewNeeded.push(r),r.status===`ready`&&!e&&n[jE(r).band].push(r),(r.status===`stale`||r.status===`error`)&&!e&&t.attention.push(r),r.status===`posted`&&t.posted.push(r),r.status===`discarded`&&t.discarded.push(r)}for(let e of i)t.ready.push(...n[e]);return t}function IE(e,t){return e.commit===t?e.isViewer||c.has(e.state):!1}function LE(e){return e.liveHead??e.reviewedHead}function RE(e){return(e.threads??[]).filter(e=>!e.isNit&&!e.isResolved)}function zE(e){return RE(e).length>0?!0:s(e)?!1:PE(e)?!0:!(e.githubReviews??[]).some(t=>IE(t,LE(e)))}function BE(e,t){return`${e}#${t}`}var VE=null,HE=null,UE=new Set;function WE(e){for(let t of UE)t(e)}function GE(){HE=AE(VE,Kt),WE({kind:`status`})}function KE(e){UE.add(e)}function qE(){return HE}function JE(){return FE(HE)}function YE(e){let t=d.safeParse(e);t.success?(VE=t.data,GE()):T(`reviews`,`dropped team-review-status: ${Je(t.error.issues)}`)}function XE(e){WE({kind:`action-result`,message:e})}function ZE(e){WE({kind:`open-session-result`,message:e})}function QE(e){WE({kind:`connection`,isConnected:e})}qt(GE);var $E=20,eD=[],tD=null,nD=!1,rD=0,iD=null;function aD(){return iD??=P(()=>import(`./celebration-player-J7-ZEqx0.js`),__vite__mapDeps([19,1,20])).catch(e=>(iD=null,T(`merge-celebration`,`celebration player failed to load: ${ft(e)}`),null)),iD}function oD(e){return nD?`playing`:e?`queued`:`empty`}function sD(){if(!tD)return;let e=eD.length>0;tD.tray.dataset.state=oD(e),tD.count.textContent=e?String(eD.length):``,tD.button.disabled=nD||!e}function cD(){let e=eD.shift();if(nD=e!==void 0,sD(),!e)return;let t=rD;rD+=1,aD().then(n=>{n?(n.playCelebration(e,t),window.setTimeout(cD,n.CELEBRATION_DURATION_MS)):(eD.unshift(e),nD=!1,sD())})}function lD(e,t,n){tD={tray:e,button:t,count:n},t.addEventListener(`click`,()=>{rD=0,cD()}),sD()}function uD(e){eD.push(e),eD.length>$E&&eD.shift(),sD()}var dD=null,fD=null,pD=new Set,mD=new Map,hD=!1,gD=new Set;function _D(e){for(let t of gD)t(e)}function vD(){return[...mD].flatMap(([e,t])=>{let n=O.get(e);return!n||t.length===0?[]:[{id:e,title:gt(n)||e,links:t}]})}function yD(){let e=TE(dD?.prs??[],Kt),t=DE(fD,e);fD=e,CD(t),_D({kind:`prs`})}function bD(){hD||(hD=!0,queueMicrotask(()=>{hD=!1,yD()}))}function xD(e){gD.add(e)}function SD(){return{prs:TE(dD?.prs??[],Kt),status:dD,sessionsByPrKey:EE(vD())}}function CD(e){let t=e.filter(e=>!pD.has(e.key));if(t.length!==0){for(let e of t)pD.add(e.key);uD(kE(t))}}function wD(e){mD=e,bD()}function TD(){_D({kind:`session-state`})}function ED(e){let t=p.safeParse(e);t.success?(dD=t.data,yD()):T(`reviews`,`dropped my-prs-status: ${Je(t.error.issues)}`)}function DD(e){_D({kind:`merge-result`,message:e})}function OD(e){_D({kind:`connection`,isConnected:e})}qt(bD);var kD=[{id:`all`,label:`All`},{id:`reviewing`,label:`Reviewing`},{id:`mine`,label:`Mine`}],AD={turn:`Your turn`,working:`Agent working`,waiting:`Waiting on others`,aside:`Set aside`},jD=[`turn`,`working`,`waiting`,`aside`],MD={conflicts:`turn`,behind:`turn`,"checks-failing":`turn`,"changes-requested":`turn`,"unresolved-threads":`turn`,ready:`turn`,"checks-pending":`waiting`,"needs-approval":`waiting`,unknown:`waiting`,draft:`aside`,merged:`aside`},ND={directAsk:0,followUp:1,mineNeedsYou:2,teamReady:3,mineReady:4,failedReview:5,staleReview:6};function PD(e,t){return{source:`team`,key:`team:${e.key}`,prKey:fe(e),kind:t,review:e}}function FD(e){return e.status===`ready`?jE(e).band===`blocking-others`?ND.directAsk:ND.teamReady:ND.followUp}function ID(e){return[...e.ready.map(e=>({item:PD(e,`ready`),group:`turn`,turnRank:FD(e)})),...e.attention.map(e=>({item:PD(e,`attention`),group:`turn`,turnRank:e.status===`error`?ND.failedReview:ND.staleReview})),...e.inReview.map(e=>({item:PD(e,`inReview`),group:`working`,turnRank:0})),...e.queued.map(e=>({item:PD(e,`queued`),group:`working`,turnRank:0})),...e.noReviewNeeded.map(e=>({item:PD(e,`settled`),group:`waiting`,turnRank:0})),...e.posted.map(e=>({item:PD(e,`posted`),group:`waiting`,turnRank:0})),...e.discarded.map(e=>({item:PD(e,`discarded`),group:`aside`,turnRank:0}))]}function LD(e,t){let n=MD[e.stage];return n===`turn`&&e.stage!==`ready`&&t.has(fe(e))?`working`:n}function RD(e,t){return xE(e).flatMap(e=>e.rows).map(({pr:e,parentKey:n})=>({item:{source:`mine`,key:`mine:${e.key}`,prKey:fe(e),pr:e,stackedOn:n},group:LD(e,t),turnRank:e.stage===`ready`?ND.mineReady:ND.mineNeedsYou}))}function zD(e,t,n){let r=[...ID(e),...RD(t,n)];return jD.map(e=>{let t=r.filter(t=>t.group===e),n=e===`turn`?t.toSorted((e,t)=>e.turnRank-t.turnRank):t;return{id:e,title:AD[e],items:n.map(e=>e.item)}})}function BD(e,t){if(t===`all`)return[...e];let n=t===`reviewing`?`team`:`mine`;return e.map(e=>({...e,items:e.items.filter(e=>e.source===n)}))}function VD(e){return e.find(e=>e.id===`turn`)?.items??[]}function HD(e,t){return t?e.flatMap(e=>e.items).find(e=>e.key===t)??null:null}function UD(e,t){return HD(e,t)?t:e.flatMap(e=>e.items)[0]?.key??null}function WD(e){return e.source===`mine`?BE(e.pr.repo,e.pr.number):BE(e.review.repo,e.review.number)}function GD(e){return e.source===`team`?e.kind===`attention`&&`status`in e.review&&e.review.status===`error`?`failed`:`waiting`:e.pr.stage===`ready`?`finished`:e.pr.stage===`checks-failing`||e.pr.stage===`conflicts`?`failed`:`waiting`}function KD(e){return VD(e).map(e=>({id:e.key,kind:GD(e),name:WD(e)}))}function qD(e){return{waitingCount:e.filter(e=>e.kind===`waiting`).length,finishedCount:e.filter(e=>e.kind===`finished`).length,failedCount:e.filter(e=>e.kind===`failed`).length}}function JD(e,t){return KD(e).filter(e=>e.id!==t)}function YD({capturedOrder:e,actedKey:t,groups:n}){let r=VD(n).map(e=>e.key).filter(e=>e!==t),i=new Set(r);return e.slice(e.indexOf(t)+1).find(e=>i.has(e))??e.find(e=>i.has(e))??r[0]??null}function XD(e,t){let n=VD(e).map(e=>e.key),r=t?n.indexOf(t):-1;return r===-1?``:`${r+1} of ${n.length} in Your turn`}function ZD(e){return e.source===`mine`?`${e.key}@${e.pr.stage}`:`reviewedHead`in e.review?`${e.review.key}@${e.review.reviewedHead}`:`${e.review.key}@${e.kind}`}function QD(e){return VD(e).map(ZD)}function $D({turnEntries:e,acknowledged:t,unseen:n,isLooking:r}){let i=new Set(e),a=new Set(t.split(`|`).filter(e=>i.has(e))),o=new Set(n.split(`|`).filter(e=>i.has(e))),s=[...i].filter(e=>!a.has(e));if(r)return{isShown:!1,acknowledged:_e([...i]),unseen:_e([...o])};for(let e of s)o.add(e);return{isShown:s.length>0,acknowledged:_e([...a]),unseen:_e([...o])}}function eO(e){let t=e.find(e=>e.id===`working`)?.items.length??0;return t===0?`Nothing needs you right now.`:`Nothing needs you right now. ${t} ${t===1?`pull request is`:`pull requests are`} with an agent.`}function tO(e){return new Set(e.flatMap(e=>e.items).map(e=>(e.source===`mine`?e.pr.repo:e.review.repo).toLowerCase())).size>1}function nO(e){let t=e.filter(e=>e?.configured===!0);if(t.length===0)return e.find(e=>e!==null)??null;let n=t.toSorted((e,t)=>(e.lastRefreshedAt??e.lastSyncAt??0)-(t.lastRefreshedAt??t.lastSyncAt??0));return{...t.find(e=>e.error)??n[0],isRefreshing:t.some(e=>e.isRefreshing)}}var rO=new Map([[`j`,`next-row`],[`k`,`previous-row`],[`n`,`next-finding`],[`p`,`previous-finding`],[`x`,`toggle-finding`],[`o`,`open-session`],[`a`,`pick-approve`],[`r`,`pick-request-changes`],[`c`,`pick-comment`]]);function iO(e){return e.key===`Enter`&&e.metaKey!==e.ctrlKey&&!e.altKey&&!e.shiftKey?`post`:e.metaKey||e.ctrlKey||e.altKey||e.shiftKey?null:e.key===`Escape`?`cancel`:rO.get(e.key)??null}function aO(e,t,n){if(e.length===0)return null;let r=t===null?-1:e.indexOf(t);return r===-1?n===1?e[0]:e[e.length-1]:e[Math.min(e.length-1,Math.max(0,r+n))]}var oO=[],sO=null,cO=null,lO=null,uO=!1,dO=null,fO=gi(),pO=vi(),mO=new Set(pO.split(`|`).filter(Boolean)),hO=new Set,gO=new Set;function _O(e){for(let t of gO)t(e)}function vO(e){e!==fO&&(fO=e,_i(e))}function yO(e){e!==pO&&(pO=e,mO=new Set(e.split(`|`).filter(Boolean)),yi(e))}function bO(){return qE()!==null&&SD().status!==null}function xO(){if(!bO())return;let e=$D({turnEntries:QD(oO),acknowledged:fO,unseen:pO,isLooking:cO?.isLooking()??!1});vO(e.acknowledged),yO(e.unseen),dO?.(e.isShown)}function SO(e){lO=e,_O({kind:`reveal`})}function CO(e){gO.add(e)}function wO(e){cO=e,xO()}function TO(){let{prs:e,sessionsByPrKey:t}=SD();return oO=zD(JE(),e,new Set(t.keys())),xO(),oO}function EO(){bO()&&(vO(_e(QD(oO))),xO())}function DO(e){dO=e,xO()}function OO(){return pO}function kO(e){return mO.has(e)}function AO(e){return mO.has(e)?(yO(_e([...mO].filter(t=>t!==e))),!0):!1}function jO(e){sO=e}function MO(){return sO}function NO(){let e=lO;return lO=null,e}function PO(e){if(e!==uO){uO=e;for(let e of hO)e()}}function FO(e){hO.add(e)}function IO(){return document.documentElement.dataset.layout===`phone`&&uO}function LO(){IO()&&_O({kind:`return-to-queue`})}function RO(){let e=JD(oO,cO?.selectedKey()??null)[0]?.id??null;return e?(SO(e),!0):!1}function zO(e){let t=oO.flatMap(e=>e.items).find(t=>t.prKey===e.toLowerCase());return!t||!sO?.openReviews()?!1:(SO(t.key),EO(),!0)}KE(e=>{e.kind===`status`&&TO()}),xD(e=>{e.kind===`prs`&&TO()});var BO={OPEN:0,MERGED:1,CLOSED:2};function VO(e){return e?BO[e.state]:BO.OPEN}function HO(e,t){let n=`${e.repo}#${e.number}`,r=`#${e.number}`;if(!t)return{key:n,text:r,url:e.url,hoverText:e.repo,look:null,tier:Va(void 0)};let i=CE(t.stage);return{key:n,text:r,url:t.url,hoverText:`${e.repo}: ${t.title} (${SE(t.stage)})`,look:{icon:wE(t.stage),tone:i},tier:Va(i)}}function UO(e,t){let n=e.map(e=>{let n=t(fe(e));return{link:e,pr:n?fE(n):void 0}});return n.sort((e,t)=>VO(e.pr)-VO(t.pr)||t.link.linkedAt-e.link.linkedAt),n.map(({link:e,pr:t})=>HO(e,t))}var WO=new Map;function GO(e){return document.querySelectorAll(`[data-pr-chips-for="${CSS.escape(e)}"]`)}function KO(e){return UO(WO.get(e)??[],Kt).map(e=>({...e,className:`session-pr-chip`,linkUrl:e.url,ariaLabel:`Show pull request ${e.key} in Reviews`,hoverText:`${e.hoverText}. Show in Reviews; Cmd/Ctrl-click opens GitHub`,onActivate:()=>{zO(e.key)||yo(e.url)}}))}function qO(e,t){let n=Gc(e,e),r=w(`button`,`session-pr-chip-unlink`);r.append(L(Jo)),r.type=`button`,r.title=`Unlink ${e.key} from this session`,r.setAttribute(`aria-label`,`Unlink pull request ${e.key}`),r.addEventListener(`click`,n=>{n.stopPropagation(),n.preventDefault(),At({title:`Unlink pull request`,message:`Unlink ${e.key} from this session? Its checks and reviews stop showing here until you link it again.`,confirmLabel:`Unlink`,danger:!0,onConfirm:()=>{Bl(t,{type:`unlink-session-pr`,id:t,key:e.key})}})});let i=w(`span`,`session-pr-chip-item`);return i.append(n,r),i}function JO(e,t){e.dataset.prChipsFor=t,Xc(e,KO(t),e=>qO(e,t))}function YO(e){for(let t of e){let e=t.dataset.prChipsFor;e&&JO(t,e)}rl()}function XO(e,t){let n=h.shape.links.safeParse(t??[]);WO.set(e,n.success?n.data:[]),YO(GO(e)),wD(WO)}function ZO(e){WO.delete(e),wD(WO)}qt(()=>YO(document.querySelectorAll(`[data-pr-chips-for]`)));var QO=null,$O=new Set;function ek(){QO?.setAttribute(`aria-pressed`,String(!Pr()))}function tk(e){Fr(e),ek();for(let t of $O)t(e)}function nk(e){$O.add(e)}function rk(e){QO=e,ek(),e.addEventListener(`click`,()=>tk(!Pr()))}var ik={mine:`Mining merged pull requests.`,run:`Starting the run.`,cancel:`Cancelling the run.`},ak=null,ok=null,sk=!0,ck=new Map,lk=new Map,uk=new Set;function dk(){for(let e of uk)e()}function fk(e){uk.add(e)}function pk(){return{status:ak,isServerConnected:sk,pendingActionBySuite:ck,outcomeBySuite:lk}}function mk(e){ok=e}function hk(e,t){ok?.({type:`benchmark-action`,requestId:st(`benchmark`),suiteId:e,action:t})===!0?(ck.set(e,t),lk.set(e,ik[t]),dk()):(lk.set(e,b),dk())}function gk(e){if(sk=e,!e){for(let e of ck.keys())lk.delete(e);ck.clear()}dk()}function _k(e){ak=e,dk()}function vk(e){ck.delete(e.suiteId);let t=ak?.suites.find(t=>t.id===e.suiteId)?.candidateCount??0,n={mine:`Mining finished. ${t} candidate${t===1?``:`s`} awaiting approval in the candidates folder.`,run:`Run ${e.runId??``} started.`,cancel:`Run cancelled.`};lk.set(e.suiteId,e.ok?n[e.action]:e.error||`The server refused the action.`),dk()}var yk=45e3,bk=`The server did not answer within ${yk/1e3} s.`,xk=`Select the issue to load its description.`,Sk=null,Ck=null,wk=new Map,Tk=null,Ek=new Map,Dk=new Map,Ok=new Map,kk=new Map,Ak=new Map,jk=new Set;function Mk(e){for(let t of jk)t(e)}function Nk(e){return`${e.key}:${e.updatedAt}`}function Pk(e){let t=Ek.get(e);t&&(Ek.delete(e),Dk.set(t.issueKey,{text:bk,tone:`error`}),Mk(`detail`))}function Fk(e){let t=Ek.get(e);return t?(clearTimeout(t.timeoutHandle),Ek.delete(e),t):null}function Ik(){return{latestStatus:Ck,issueByKey:wk,selectedKey:Sk}}function Lk(e){jk.add(e)}function Rk(e){Sk=e}function zk(e){return[...Ek.values()].some(t=>t.issueKey===e.key)}function Bk(e){return Dk.get(e.key)}function Vk(e){let t=Nk(e),n=kk.get(t);return n===``?`No description.`:n??Ak.get(t)??`Loading description.`}function Hk(e){let t=Nk(e);if(kk.has(t)||[...Ok.values()].some(e=>e.cacheKey===t))return;let n=st(`issue-detail`);Ak.delete(t),Tk?.({type:`issue-detail`,requestId:n,repo:e.repo,issueNumber:e.number})?Ok.set(n,{cacheKey:t,timeoutHandle:setTimeout(()=>{Ok.delete(n),Ak.set(t,`${bk} ${xk}`),Mk(`detail`)},yk)}):Ak.set(t,`${b} ${xk}`)}function Uk(e){let t=e.projectId;if(!t||zk(e))return;let n=st(`open-issue-session`);Tk?.({type:`open-issue-session`,requestId:n,projectId:t,repo:e.repo,issueNumber:e.number})?(Ek.set(n,{issueKey:e.key,issueNumber:e.number,timeoutHandle:setTimeout(()=>Pk(n),yk)}),Dk.set(e.key,{text:`Opening session.`,tone:`busy`}),Mk(`detail`)):(Dk.set(e.key,{text:b,tone:`error`}),Mk(`detail`))}function Wk(e){Tk?.({type:`dashboard-telemetry`,event:`operator_action`,properties:{surface:`issues`,action:e}})}function Gk(e){Tk=e}function Kk(){Mk(`session-state`)}function qk(e){if(!e){for(let e of Ek.values())clearTimeout(e.timeoutHandle),Dk.set(e.issueKey,{text:b,tone:`error`});Ek.clear();for(let e of Ok.values())clearTimeout(e.timeoutHandle),Ak.set(e.cacheKey,`${b} ${xk}`);Ok.clear(),Mk(`status`)}}function Jk(e){let t=Ck?.issues.find(e=>e.key===Sk);Ck=e,wk=new Map(e.issues.map(e=>[e.key,e]));let n=e.issues.find(e=>e.key===Sk);n&&n.updatedAt!==t?.updatedAt&&Hk(n),Mk(`status`)}function Yk(e){let t=Ok.get(e.requestId);t&&(clearTimeout(t.timeoutHandle),Ok.delete(e.requestId),e.ok&&e.body!==null&&kk.set(t.cacheKey,e.body),(!e.ok||e.body===null)&&Ak.set(t.cacheKey,e.error||`Could not load description. Select the issue to try again.`),Mk(`detail`))}function Xk(e){if(typeof e.requestId!=`string`)return;let t=Fk(e.requestId);if(!t)return;let n=t.issueKey;if(e.ok===!0){let r=typeof e.sessionName==`string`?e.sessionName:`issue #${t.issueNumber}`,i=e.pending===!0?` Prompt queued.`:``,a=e.existing===!0?`already open`:`created`;Dk.set(n,{text:`Session "${r}" ${a}.${i}`,tone:`ok`});let o=Ck?.issues.find(e=>e.key===n);o&&typeof e.sessionId==`string`&&(o.sessionId=e.sessionId),Mk(`status`);return}let r=typeof e.error==`string`&&e.error?e.error:`Could not open session.`;Dk.set(n,{text:r,tone:`error`}),Mk(`detail`)}var Zk=null,Qk=null,$k=null,eA=()=>!1,tA=new Set,nA=new Set,rA=u({getAck:mi,setAck:hi,signature:()=>f({posthog:Zk}),isLooking:()=>eA()});function iA(e){for(let t of nA)t(e)}function aA(){Qk?.(rA.refresh())}function oA(){return{latest:Zk,archivedLocally:tA,traceOpener:$k}}function sA(e){nA.add(e)}function cA(e){eA=e,aA()}function lA(e){tA.add(e)}function uA(){rA.acknowledge(),aA()}function dA(e){Qk=e,aA()}function fA(e){$k=e}function pA(e){Zk=e,l(Zk,tA),iA({kind:`status`}),aA()}function mA(e){let t=Ce(Zk,e.projectId,e.issueId)?.inFlight===!0;se(Zk,e)&&iA({kind:`investigation-activity`,projectId:e.projectId,issueId:e.issueId,wasInFlight:t})}function hA(e){let t=re(Zk,e);iA({kind:`investigation-finished`,frame:e,isPatched:t}),t&&aA()}var gA=La({requestPrefix:`session-setup`,dialogClass:`dialog coherence-journal-drawer session-setup-dialog`,titleText:`Session setup`,unavailableLabel:`Session setup unavailable`,timeoutMs:15e3});function _A(e){let t=w(`ul`,`session-setup-list`);return t.append(...e.map(e=>w(`li`,null,e))),t}function vA(e,t){e.replaceChildren();function n(t,n){if(n.length===0)return;let r=He(`session-setup`,t);r.append(...n),e.append(r)}n(`Model`,t.model?[w(`p`,null,t.model)]:[]),n(`Plugins`,t.plugins.map(e=>{let t=w(`div`,`session-setup-plugin`);return t.append(w(`h3`,null,e.name)),e.skills.length>0&&t.append(w(`p`,`session-setup-label`,`Skills`),_A(e.skills)),e.agents.length>0&&t.append(w(`p`,`session-setup-label`,`Agents`),_A(e.agents)),t})),n(`MCP servers`,t.mcpServers.length>0?[_A(t.mcpServers)]:[]),n(`Hooks`,[...t.hookEvents.map(e=>{let t=w(`p`,`session-setup-hook`);return t.append(w(`span`,null,e.event),w(`span`,`session-setup-label`,`${e.runCount} runs`)),t}),...t.hookCommands.map(e=>w(`pre`,`coherence-command`,e))]),n(`Skills`,t.skills.length>0?[_A(t.skills)]:[]),n(`Agents`,t.agents.length>0?[_A(t.agents)]:[])}function yA(e){let t=w(`p`,`coherence-journal-status`,`Loading session setup`);t.setAttribute(`role`,`status`);let n=w(`div`,`session-setup-sections`);gA.open({sessionId:e,status:t,body:[t,n],parts:{sections:n},buildRequest:t=>({type:`session-setup`,id:e,requestId:t})})}function bA(e){let t=gA.settleResponse(e);if(!t)return;if(!e.ok||!e.setup){t.status.textContent=e.error||`Could not read session setup`;return}let n=t.parts.sections;vA(n,e.setup),t.status.textContent=n.childElementCount>0?``:`No session setup recorded yet`,t.status.hidden=n.childElementCount>0}function xA(e){return{skipPerms:e.skipPerms??e.dangerouslySkipPermissions??!1,saneYolo:e.saneYolo===!0,worktree:e.worktree??e.isWorktree??!1,workspace:e.workspace??e.isWorkspace??!1,remoteWorkspace:e.remoteWorkspace??null,guarded:e.guarded??e.isGuarded??!1,guardrailsReleased:e.guardrailsReleased??e.isGuardrailsReleased??!1,ephemeral:e.ephemeral===!0,ownerId:e.ownerId??null,path:e.path,stateSince:e.stateSince,taskTitle:typeof e.taskTitle==`string`?e.taskTitle:null,taskTitleIsCustom:e.taskTitleIsCustom===!0}}var SA={isVisible:document.visibilityState===`visible`,isFrozen:!1,isProbing:!1,isReplacing:!1},CA=document.visibilityState===`visible`?null:Date.now(),wA=null,TA=null;function EA(){wA!==null&&window.clearTimeout(wA),wA=null}function DA(e){EA();let t=Date.now()+e;wA=window.setTimeout(()=>{wA=null,AA({kind:`heartbeat-due`,lateByMs:Date.now()-t})},e)}function OA(){TA!==null&&window.clearTimeout(TA),TA=null}function kA(e){switch(e.kind){case`probe-control`:at(e.deadlineMs,e.isAnnounced).then(e=>{AA({kind:e?`pong`:`pong-missed`})});return;case`replace-control`:ct();return;case`close-sockets`:OA(),lt(),Rb();return;case`reconnect-shown-terminals`:Ib();return;case`hold-input`:Nb();return;case`release-input`:Pb();return;case`schedule-heartbeat`:DA(e.inMs);return;case`cancel-heartbeat`:EA();return}}function AA(e){let t=Ye(SA,e);SA=t.state;for(let e of t.actions)kA(e)}function jA(){if(document.visibilityState!==`visible`){CA=Date.now(),AA({kind:`hidden`});return}let e=CA===null?0:Date.now()-CA;CA=null,Eg(`shown`,e),AA({kind:`shown`,hiddenForMs:e})}function MA(e){OA(),wg(`control-${e}`),e===`connecting`?TA=window.setTimeout(()=>{TA=null,AA({kind:`handshake-overdue`})},et):AA({kind:e===`opened`?`control-opened`:`control-closed`})}function NA(){Eg(`resumed`,CA===null?0:Date.now()-CA),AA({kind:`resumed`})}function PA(){let e=Reflect.get(navigator,`connection`);e instanceof EventTarget&&e.addEventListener(`change`,()=>{Tg(`link`),AA({kind:`network-changed`})})}function FA(){Xe(MA),document.addEventListener(`visibilitychange`,jA),document.addEventListener(`freeze`,()=>AA({kind:`frozen`})),document.addEventListener(`resume`,NA),window.addEventListener(`pagehide`,e=>{e.persisted&&AA({kind:`frozen`})}),window.addEventListener(`pageshow`,e=>{e.persisted&&NA()}),window.addEventListener(`online`,()=>{Tg(`online`),AA({kind:`network-changed`})}),window.addEventListener(`offline`,()=>Tg(`offline`)),PA()}var IA={},LA=null,RA=null,zA=be,BA=null,VA=!1,HA=null,UA=[],WA=null,GA=()=>null,KA=()=>{},qA=new Set,JA=new Set;function YA(e){for(let t of JA)t(e)}function XA(e){JA.add(e)}function ZA(){return IA}function QA(e){return IA={...IA,...e},IA}function $A(){return{status:LA,journal:RA,request:zA,lastAutoCheckAt:BA,isCheckInFlight:VA,checkSendFailure:HA}}function ej(e){let t=ye(zA,e);t!==zA&&(zA=t,YA({kind:`update`,frame:`request`}))}function tj(){ej(E({type:`update-apply`})?`request-sent`:`request-unsent`)}function nj(){BA=Date.now();let e=E({type:`update-check`});VA=e,HA=e?null:b,YA({kind:`update`,frame:`request`})}function rj(e){KA=e}function ij(){KA()}function aj(e){UA=[...e]}function oj(){return UA}function sj(e=null,t=null,n=null){let r=WA!==null&&(WA.sectionId!==null||WA.isLink);e===null&&n===null&&r||(WA={sectionId:e,settingId:t,hashAtRequest:n??location.hash,isLink:n!==null},YA({kind:`activate`}))}function cj(){let e=WA;return WA=null,e}function lj(e){GA=e}function uj(){for(let e of qA)e()}function dj(e){qA.add(e)}function fj(){return _u()&&GA()===`section`}function pj(){fj()&&YA({kind:`return-to-list`})}function mj(e){e&&(IA=e,Ui(IA.agentLogins),YA({kind:`broadcast`}))}function hj(){YA({kind:`status`})}function gj(e){hj()}function _j(e){LA=e,VA=!1,HA=null,zA=ye(zA,`status-frame`),YA({kind:`update`,frame:`status`})}function vj(e){RA=e,zA=ye(zA,`progress-frame`),YA({kind:`update`,frame:`progress`})}function yj(e){if(e.scope!==`update`)return!1;let t=oe(e.message),n=zA.requested;return zA=ye(zA,`error-frame`,t),VA=!1,n||(HA=t),YA({kind:`update`,frame:`error`}),!0}function bj(e,t){return typeof t!=`string`||t===``?{knownBuild:e,reload:!1}:e==null?{knownBuild:t,reload:!1}:e===t?{knownBuild:e,reload:!1}:{knownBuild:t,reload:!0}}var xj=200;function Sj(e,t=null){return`#settings/${encodeURIComponent(e)}${t?`/${encodeURIComponent(t)}`:``}`}function Cj(e){return/^#settings(?:[/?]|$)/.test(e)}function wj(e){let t=e.trim();return t?`#settings?q=${encodeURIComponent(t)}`:`#settings`}function Tj(e){let t=/^#settings(?:\?(.*))?$/.exec(String(e??``));if(!t)return null;let n=new URLSearchParams(t[1]??``).get(`q`)??``;return{query:Array.from(n.trim()).slice(0,xj).join(``).trim()}}function Ej(e,t,n){let r=w(`a`,`settings-link`,n);return r.href=Sj(e,t),r}var Dj=!1,Oj=!1,kj=!1,Aj=null,jj=null;function Mj(){return jj??=P(()=>import(`./nyan-cat-C7aStnXp.js`).then(e=>e.r).then(e=>(Aj=e,e),e=>(jj=null,T(`flying-animals`,`nyan cat failed to load: ${ft(e)}`),null)),__vite__mapDeps([21,14,1])),jj}function Nj(e){!kj||e.currentFlightBlockReason(!0)?e.stopNyanCat():e.startNyanCat()}function Pj(){Oj=!0,Fj(Jr())}function Fj(e){let t=document.documentElement;Dj||(Dj=!0,vu(()=>Fj(Jr())),window.matchMedia(`(prefers-reduced-motion: reduce)`).addEventListener(`change`,()=>Fj(Jr()))),kj=e,e?(t.dataset.flyingAnimals=`true`,Aj?Nj(Aj):Oj&&Mj().then(e=>{e&&Nj(e)})):(delete t.dataset.flyingAnimals,Aj?.stopNyanCat())}var Ij=`•`.repeat(8),Lj=`[^/\\\\\\s"'\`<>:]+`,Rj=RegExp(`(?<![\\w./\\\\-])(?:/home/${Lj}|/Users/${Lj}|[A-Za-z]:[\\\\/]Users[\\\\/]${Lj}|/root(?![\\w.-]))`,`g`);function zj(e){let t=tv(e);if(t.length===0)return e;let n=``,r=0;for(let i of t)n+=e.slice(r,i.start)+Ij,r=i.end;return n+e.slice(r)}function Bj(e){return e.replace(Rj,`~`)}function Vj(e){return Bj(zj(e))}var Hj=`.xterm, input, textarea, script, style, [contenteditable]:not([contenteditable="false"])`,Uj=[`title`,`label`],Wj=new WeakMap,Gj=new WeakMap,Kj=null;function qj(e){let t=e instanceof Element?e:e.parentElement;return!t||t.closest(Hj)!==null}function Jj(e){let t=e.parentElement?.closest(`option`);return t!=null&&!t.hasAttribute(`value`)}function Yj(e,t){if(t&&e===t.masked)return t;let n=Vj(e);return n===e?null:{original:e,masked:n}}function Xj(e){let t=Jj(e)?null:Yj(e.data,Wj.get(e));t?(Wj.set(e,t),e.data!==t.masked&&(e.data=t.masked)):Wj.delete(e)}function Zj(e,t){let n=e.getAttribute(t),r=Gj.get(e),i=n===null?null:Yj(n,r?.get(t));if(!i){r?.delete(t);return}let a=r??new Map;a.set(t,i),Gj.set(e,a),n!==i.masked&&e.setAttribute(t,i.masked)}function Qj(e){for(let t of Uj)Zj(e,t)}function $j(e){return e instanceof Element&&e.matches(Hj)?NodeFilter.FILTER_REJECT:NodeFilter.FILTER_ACCEPT}function eM(e){Qj(e);let t=document.createTreeWalker(e,NodeFilter.SHOW_ELEMENT|NodeFilter.SHOW_TEXT,$j);for(let e=t.nextNode();e;e=t.nextNode())e instanceof Text&&Xj(e),e instanceof Element&&Qj(e)}function tM(e){qj(e)||(e instanceof Text&&Xj(e),e instanceof Element&&eM(e))}function nM(e){e instanceof Element&&!qj(e)&&Qj(e)}function rM(e){let t=new Set,n=new Set;for(let r of e){if(r.type===`childList`)for(let e of r.addedNodes)t.add(e);r.type===`characterData`&&t.add(r.target),r.type===`attributes`&&n.add(r.target)}for(let e of t)e.isConnected&&tM(e);for(let e of n)e.isConnected&&nM(e)}function iM(e){let t=document.createTreeWalker(e,NodeFilter.SHOW_ELEMENT|NodeFilter.SHOW_TEXT);aM(e);for(let e=t.nextNode();e;e=t.nextNode())aM(e)}function aM(e){if(e instanceof Text){let t=Wj.get(e);t&&e.data===t.masked&&(e.data=t.original);return}if(!(e instanceof Element))return;let t=Gj.get(e);if(t)for(let[n,r]of t)e.getAttribute(n)===r.masked&&e.setAttribute(n,r.original)}function oM(){if(Kj)return;let e=new MutationObserver(t=>{rM(t),e.takeRecords()});eM(document.body),e.observe(document.body,{childList:!0,subtree:!0,characterData:!0,attributes:!0,attributeFilter:Uj}),Kj=e}function sM(){Kj&&(Kj.disconnect(),Kj=null,iM(document.body),Wj=new WeakMap,Gj=new WeakMap)}function cM(e){e?oM():sM()}function lM(){cM(sv()),lv(cM)}function uM(e){if(typeof e!=`object`||!e||!(`telemetry`in e))return!1;let{telemetry:t}=e;return typeof t!=`object`||!t||!(`enabled`in t)?!1:t.enabled===!0}function dM(e){return typeof e!=`object`||!e||!(`telemetryForcedOff`in e)?!1:e.telemetryForcedOff===!0}function fM(e,t){return t||dM(e)?!1:uM(e)}var pM=2500;function mM({hasSnapshot:e,connectingTerminalCount:t,msSinceConnected:n}){return n<2500&&(!e||t>0)?`wait`:`reveal`}function hM(e){return g(Number(e)||0,{rounding:`round`,wording:`compact`,suffix:``,justNowBelowSeconds:0})}function gM(e){return typeof e!=`number`||!Number.isFinite(e)||e<=0?`never`:`${hM(Date.now()-e)} ago`}var _M=e=>`polled ${gM(e)}`;function vM(e){let t=[],n=[],r=null,i=e=>{let t=e.format(e.ts);e.el.textContent!==t&&(e.el.textContent=t)},a=()=>{let r=e();if(r&&!r.closest(`[hidden]`)){for(let e of t)i(e);for(let e of n)e()}};return{track(e,n,r=_M){let a={el:e,ts:n,format:r};i(a),t.push(a)},onTick(e){n.push(e)},reset(){t=[],n=[]},ensure(){r||=Rt(a)}}}var yM=2e4,bM=null,xM=null,SM={claude:null,codex:null},CM=null,wM=null,TM=null,EM=`all`,DM=!1,OM=null,kM=null,AM=!0,jM=()=>!1,MM=new Set,NM=u({getAck:bi,setAck:xi,signature:()=>hh(bM,SM.claude),isLooking:()=>jM()});function PM(e){for(let t of MM)t(e)}function FM(){CM?.(NM.refresh())}function IM(e){DM=e,PM(`refresh-status`),OM&&=(clearTimeout(OM),null),e&&(OM=setTimeout(()=>{OM=null,DM=!1,kM=`Usage did not answer within ${Math.round(yM/1e3)} s. Refresh to try again.`,PM(`refresh-status`)},yM))}function LM(e){let t=Qm.find(t=>t.value===e);return t?t.days:null}function RM(){return{report:bM,sessions:xM,planLimitsByVendor:SM,rangeValue:EM}}function zM(){let e=!AM||!DM&&kM!==null;return AM?DM?{text:`Refreshing`,isPending:!0,hasFailure:e}:{text:kM??``,isPending:!1,hasFailure:e}:{text:bM?`${b} The figures below are from before the connection dropped.`:b,isPending:DM,hasFailure:e}}function BM(e){MM.add(e)}function VM(e){jM=e,FM()}function HM(){NM.acknowledge(),FM()}function UM(e){CM=e,FM()}function WM(e){wM?.({type:`dashboard-telemetry`,event:`operator_action`,properties:{surface:`usage`,action:e}})}function GM(e){wM=e}function KM(e){EM=e}function qM({force:e=!1}={}){if(!wM)return;TM=st(`usage`);let t={type:`request-usage-report`,requestId:TM};e&&(t.force=!0);let n=LM(EM);n!==null&&(t.days=n),kM=null,IM(!0),!wM(t)&&(kM=b,IM(!1))}function JM(e){AM=e,PM(`refresh-status`)}function YM(e){xM=e,PM(`sessions`)}function XM(e){let t=e;SM={...SM,[fh(t)]:t},PM(`plan-limits`),FM()}function ZM(e){xh(e,TM)&&(kM=null,IM(!1),bM=e,PM(`report`),FM())}function QM(){let e=bM?.pricing||(xM?{source:xM.pricingSource}:null),t=_h(e?.fetchedAt),n=[gh(e,t!==null&&t>0?gM(t):``)],r=bh(bM);r&&n.push(r);let i=yh(bM?.scan);return i&&n.push(i),n}var $M={teamReview:e=>e?.teamReview?.enabled!==!1,issues:e=>e?.issues?.enabled===!0,posthog:e=>e?.posthog?.enabled===!0,visions:e=>e?.visions?.enabled===!0,usage:e=>e?.usage?.enabled!==!1,benchmarks:e=>e?.benchmarks?.enabled===!0},eN=[{rule:`teamReview`,sectionId:`lanes-team-review`,settingId:`team-review-enabled`},{rule:`issues`,sectionId:`lanes-issues`,settingId:`issues-enabled`},{rule:`usage`,sectionId:`machine-usage`,settingId:`usage-enabled`},{rule:`posthog`,sectionId:`lanes-posthog`,settingId:`posthog-enabled`},{rule:`visions`,sectionId:`lanes-visions`,settingId:`visions-enabled`},{rule:`benchmarks`,sectionId:`lanes-benchmarks`,settingId:`benchmarks-enabled`}];function tN(e,t){return t.isPhoneShellActive?t.phoneScreen===e:t.activeView===e}function nN(e,t){return e.flatMap(e=>!e.gate||!(`fromSettings`in e.gate)?[]:[{view:e,isAvailable:e.gate.fromSettings(t)}])}function rN(e,t){let n=new Set(e),r=[...new Set((t??[]).filter(e=>n.has(e)))];return[...r,...e.filter(e=>!r.includes(e))]}function iN(e,t,n){let r=e.filter(e=>e!==t);if(r.length===e.length)return[...e];let i=Math.max(0,Math.min(n,r.length));return[...r.slice(0,i),t,...r.slice(i)]}function aN(e){return{isActive:e===!0||typeof e==`string`,level:typeof e==`string`?e:null}}function oN(e,t,n){t&&e?.refreshOn?.includes(n)&&t.refresh?.(n)}function sN(e,t,n,r){for(let i of e)tN(i.view,t)&&oN(i,r(i.view),n)}function cN(){let e=new Map,t=new Map;function n(e,n){let r=t.get(e.view);if(r)return r;let i=n().catch(n=>{throw t.delete(e.view),n});return t.set(e.view,i),i}function r(t,n){return e.get(t.view)||(n.mount(t.el),e.set(t.view,n),n)}function i(t){return e.get(t)??null}function a(t){let i=e.get(t.view);return i?Promise.resolve(i):t.module?Promise.resolve(r(t,t.module)):n(t,t.load).then(e=>r(t,e))}function o(e){for(let t of e)t.module&&r(t,t.module)}async function s(t){for(let r of t)r.load&&!e.has(r.view)&&await n(r,r.load)}return{show:a,mountedModuleOf:i,mountEagerViews:o,prefetch:s}}function lN(e,t,n){let r=Number(e);return!e||!Number.isFinite(r)||t-r>n}var uN=`glimmervoid:preload-error-reload-at`,dN=3e4,fN=1e3,pN=cN();function mN(e,t){let n=pN.mountedModuleOf(e.view);n?t(n):pN.show(e).then(t).catch(t=>{throw T(`view`,`${e.view} failed to show: ${ft(t)}`),t})}function hN(e){return pN.mountedModuleOf(e)}function gN(e){pN.mountEagerViews(e)}function _N(e){let t=()=>{pN.prefetch(e.filter(e=>!e.tab.hidden))};`requestIdleCallback`in window?window.requestIdleCallback(t):setTimeout(t,fN)}function vN(e){let t=Date.now();lN(e.getItem(uN),t,dN)&&(e.setItem(uN,String(t)),location.reload())}function yN(e){window.addEventListener(`vite:preloadError`,()=>vN(e()))}function bN(e,t){fetch(e,{method:`HEAD`,cache:`no-store`}).then(e=>{e.status===404&&vN(t())}).catch(()=>{})}function xN(e){jO({openTerminal:e.openTerminal,openReviews:e.openReviews}),rj(e.onRestart);let t=[{view:`focus`,label:`Focus`,panelClass:`focus-view`,hasOwnPhoneScreen:!0,hasPanelChrome:!1,hasReviewSidebar:!0,module:{mount:()=>fC({rail:document.getElementById(`focus-rail`),center:document.getElementById(`focus-center`),resizer:document.getElementById(`focus-rail-resizer`)}),activate:VC,deactivate:WC}},{view:`prs`,label:`Reviews`,glyph:`⇅`,panelClass:`pr-view`,gate:{fromSettings:$M.teamReview},load:()=>P(()=>import(`./review-queue-panel-CjIbdtjx.js`).then(e=>e.view),__vite__mapDeps([22,3,4,1,2,7,23,12,24])),refreshOn:[`shown`],attention:{subscribe:DO,acknowledge:EO},onConnectionChange:e=>{OD(e),QE(e)}},{view:`issues`,label:`Issues`,glyph:`#`,panelClass:`issues-view`,gate:{fromSettings:$M.issues},load:()=>P(()=>import(`./issues-panel-C5ynS_V9.js`).then(e=>e.view),__vite__mapDeps([25,3,4,1,12,23,2,7,26])),refreshOn:[`shown`],onConnectionChange:qk},{view:`usage`,label:`Usage`,glyph:`◔`,panelClass:`usage-view`,gate:{fromSettings:$M.usage},load:()=>P(()=>import(`./usage-panel-B9UToJmw.js`).then(e=>e.view),__vite__mapDeps([27,3,4,1,28])),attention:{subscribe:UM,acknowledge:HM},onConnectionChange:JM,refreshOn:[`shown`,`connected`,`usage-sessions`]},{view:`radar`,label:`Radar`,glyph:`◎`,panelClass:`radar-view`,gate:{fromSettings:$M.posthog},load:()=>P(()=>import(`./radar-panel-9mIN8IWs.js`).then(e=>e.view),__vite__mapDeps([29,3,4,1,2,7,10,11,12,5,30])),attention:{subscribe:dA,acknowledge:uA}},{view:`visions`,label:`Visions`,glyph:`◇`,panelClass:`visions-view`,gate:{fromSettings:$M.visions},load:()=>P(()=>import(`./visions-panel-qRoFKqdn.js`).then(e=>e.view),__vite__mapDeps([31,3,4,1,32])),attention:{subscribe:dT,acknowledge:fT},refreshOn:[`shown`],onConnectionChange:hT},{view:`hooks`,label:`Hooks`,glyph:`◈`,panelClass:`hooks-view`,load:()=>P(()=>import(`./hooks-panel-DlLf9e5y.js`).then(e=>e.view),__vite__mapDeps([33,4,3,1,2,7,34])),refreshOn:[`shown`,`connected`,`hooks-updated`]},{view:`trace`,label:`Trace`,panelClass:`trace-view`,gate:{subscribe:oc},load:()=>P(()=>import(`./trace-panel-BM50NrSk.js`).then(e=>e.view),__vite__mapDeps([35,3,4,1,36])),refreshOn:[`shown`],onAvailabilityChange:e=>fA(e?Gm:null),onConnectionChange:Xm},{view:`benchmarks`,label:`Bench`,panelClass:`bench-view`,gate:{fromSettings:$M.benchmarks},load:()=>P(()=>import(`./benchmark-panel-COhPYUMk.js`).then(e=>e.view),__vite__mapDeps([37,3,4,1,38])),onConnectionChange:gk},{view:`settings`,label:`Settings`,glyph:`@`,panelClass:`settings-view`,hasPanelChrome:!1,load:()=>P(()=>import(`./settings-panel-BB4dlD0s.js`).then(e=>e.view),__vite__mapDeps([39,3,4,1,2,7,20,10,11,12,5,21,14,40]))}],n=S(document,`#app-main`,`main`),r=t.map(t=>{let r=w(`button`,`header-tab`,t.label);r.id=`tab-${t.view}`,r.type=`button`,r.draggable=!0;let i=`view-${t.view}`;r.setAttribute(`role`,`tab`),r.setAttribute(`aria-controls`,i);let a=t.view===`focus`;r.setAttribute(`aria-selected`,String(a)),r.tabIndex=a?0:-1,t.glyph&&(r.dataset.phoneGlyph=t.glyph);let o=document.getElementById(i)??w(`section`);if(o.classList.add(t.panelClass),o.id=i,o.setAttribute(`role`,`tabpanel`),o.setAttribute(`aria-labelledby`,r.id),o.hidden=!0,o.parentElement||n.append(o),r.hidden=t.gate!==void 0,o.classList.toggle(`view-panel`,t.hasPanelChrome!==!1),t.attention){let n=w(`span`,`tab-activity`);n.id=`tab-${t.view}-activity`,n.setAttribute(`aria-hidden`,`true`),r.append(n),t.attention.subscribe(r=>{let{isActive:i,level:a}=aN(r);n.classList.toggle(`active`,i),a===null&&n.removeAttribute(`data-attention`),a!==null&&n.setAttribute(`data-attention`,a),e.setPhoneAttention(t.view,r)})}return{...t,tab:r,el:o}});return S(document,`#header-tabs`,`div`).replaceChildren(...r.map(e=>e.tab)),r}Bg(Kr()),Vg(()=>{P(()=>import(`./alert-sound-BUKodjoa.js`).then(e=>e.playNyanJingle(),e=>T(`alert-sound`,`nyan jingle failed to load: ${ft(e)}`)),[])}),Hg(Br()),Fj(Jr()),gu(),xo(document);var SN=S(document,`#connection-status`,`span`),CN=S(SN,`.connection-label`,`span`),wN=S(document,`#loading-screen`,`div`),TN=S(document,`#loading-status`,`div`),EN=S(document,`#loading-detail`,`div`),DN=S(document,`#shutdown-screen`,`div`),ON=S(document,`#shutdown-status`,`div`),kN=!1,AN=null,jN=!1;function MN(){let e=Bi(),t=wN.querySelector(`.loading-spinner`);e&&t&&t.replaceWith(zi(e,`loading-animal`))}MN();function NN(){kN||AN===null||mM({hasSnapshot:jN,connectingTerminalCount:hb(),msSinceConnected:performance.now()-AN})===`reveal`&&PN()}mb(NN);function PN(){if(kN)return;kN=!0,wN.classList.add(`fade-out`),_N(Q),Pj(),ia();let e=()=>wN.remove();wN.addEventListener(`transitionend`,e,{once:!0}),setTimeout(e,1e3)}function FN(e,t){SN.dataset.state=`shutdown`,CN.textContent=e,SN.title=e,jP.disabled=!0,ON.textContent=t,DN.classList.add(`active`)}var IN=new Set([`disconnected`,`connecting`]);function LN(e,t,n){SN.dataset.state=e,SN.toggleAttribute(`data-reconnected`,n),CN.textContent=t,SN.title=t}function RN(e,t){LN(e,t,e===`connected`&&IN.has(SN.dataset.state??``))}function zN(e,t){SN.dataset.state!==`shutdown`&&LN(e===`verified`?`connected`:e,t,!1)}var BN=1e4,VN=`Server`,HN=`Worktree`,UN=`Worktree warning`,WN=`The server is not answering. Check the terminal running Glimmervoid for errors, or start it again with glimmervoid. This page reconnects on its own.`,GN=`Server not answering. Check the Glimmervoid terminal for errors, or run glimmervoid. This page retries on its own.`,KN=null,qN=!1;function JN(){TN.textContent=`Reconnecting to server...`,EN.textContent=GN,EN.hidden=!qN}function YN(){KN=null,qN=!0,kN?R({source:VN,message:WN,hidesInStreamerMode:!1}):JN()}function XN(){KN!==null||qN||(KN=window.setTimeout(YN,BN))}function ZN(){KN!==null&&window.clearTimeout(KN),KN=null,qN=!1,EN.hidden=!0,Es(VN)}Qe((e,t)=>{if(e===`connecting`||e===`verified`)zN(e,t);else{RN(e,t),Ox(e===`connected`);for(let t of Q)t.onConnectionChange?.(e===`connected`);if(e===`connected`){if(ZN(),bN(import.meta.url,()=>window.sessionStorage),YP&&XP(YP),DN.classList.contains(`active`)){location.reload();return}ra(),document.body.classList.add(`app-ready`),!kN&&AN===null&&(AN=performance.now(),TN.textContent=`Connecting to sessions...`,setTimeout(PN,pM)),NN(),SF(),pP(`connected`),ut(`get-settings`,{}).then(e=>{e.settings&&(tF(e.settings),an()===`settings`&&IP(location.hash))}).catch(()=>{})}else e===`disconnected`&&DN.classList.contains(`active`)?ON.textContent=`Waiting for server...`:(XN(),kN||JN())}});function QN(){Kk(),TD(),tE()}function $N(){wC(),QN()}Ea(()=>wC()),Ro(e=>{wC(e),QN()});var eP=null;function tP(e){let t=bj(eP,e);eP=t.knownBuild,t.reload&&location.reload()}function nP(e){pT(new Map(e.filter(e=>!e.ephemeral).map(e=>[e.id,e.name]))),gj(e.filter(e=>!e.ephemeral).map(e=>({id:e.id,name:e.name,agent:e.agent,permissionMode:e.dangerouslySkipPermissions?`Skip permissions`:`Default`})));for(let t of e){Za(t.id,t.coherenceHooks),t.ephemeral||Sl(t.path),XO(t.id,t.linkedPrs);let e=px(t.id);e&&Zx(t.id,t.state,t.stateSince),e&&bc(t.id,!!t.saneYolo),e&&Mx(t.id,t.isGuarded,t.isGuardrailsReleased),e||yx(t.id,t.name,t.state,xA(t)),Kx(t.id,t.failureReason),fx(t.id,t.taskTitle,t.taskTitleIsCustom),Ax(t.id,t.agent),Bx(t.id,t.mergeStatus,t.mergeReason),kx(t.id,t.effectiveBase),Px(t.id,t.activeAgents,t.awaitingBackgroundTasks),Ix(t.id,t.pendingPromptKind),Lx(t.id,t.unseenOutcome),Cx(t.id,t.hasPlan),fP(t.id)}vx(),jo(A.counts),wC(),UC(),QN(),rP(),zP(location.hash),CF(),jN=!0,NN()}function rP(){Km([...O].map(([e,t])=>({id:e,name:gt(t)||e})))}function iP(e,t){Cx(e,t?.hasPlan===!0),Lx(e,t?.unseenOutcome),fP(e)}var aP=new Set([x.DONE,x.FAILED]);function oP(e,t){return e!==void 0&&aP.has(e)&&!aP.has(t)&&t!==x.DORMANT}function sP(e){let t=O.get(String(e.id)),n=document.querySelector(`.session-card[data-id="${CSS.escape(String(e.id))}"]`),r=n instanceof HTMLElement?n:null,i=r?r.dataset.skipPerms!==void 0:!1,a=e.saneYolo??(r?r.dataset.saneYolo!==void 0:!1),o=r?r.dataset.path:void 0;Ux(e.id),yx(e.id,e.session,x.DORMANT,xA({skipPerms:i,saneYolo:a,worktree:r?.dataset.worktree!==void 0,workspace:r?.dataset.workspace!==void 0,remoteWorkspace:r?.dataset.remoteWorkspace??null,guarded:r?.dataset.guarded!==void 0,guardrailsReleased:r?.dataset.guardrailsReleased!==void 0,ephemeral:r?.dataset.ephemeral!==void 0,path:o,stateSince:e.timestamp,taskTitle:t?.taskTitle,taskTitleIsCustom:t?.taskTitleIsCustom})),Ax(e.id,t?.agent),iP(e.id,t)}function cP(e,t){let n=O.get(String(e.id))?.currentState;t.to===x.DORMANT&&n!==x.DORMANT?(sP(e),Kf(e.id)):(Zx(e.id,t.to,e.timestamp,t.event),Kx(e.id,e.failureReason),e.saneYolo!==void 0&&bc(e.id,e.saneYolo),Kf(e.id),oP(n,t.to)&&Fb(e.id))}function lP(e){if(px(e.id))e.transition&&cP(e,e.transition),e.activeAgents!==void 0&&Px(e.id,e.activeAgents,e.awaitingBackgroundTasks),e.unseenOutcome!==void 0&&Lx(e.id,e.unseenOutcome),e.pendingPromptKind!==void 0&&Ix(e.id,e.pendingPromptKind),e.unseenOutcome!==void 0&&vx(),jo(A.counts),zo(e.id),Hc(e.id);else{if(!e.transition)return;yx(e.id,e.session,e.transition.to,xA({skipPerms:e.skipPerms,saneYolo:e.saneYolo,stateSince:e.timestamp})),jo(A.counts),Kk()}}var uP=new Map;function dP(e){let t=new Set;for(let n of e){if(!n?.id)continue;t.add(n.id);let e={tokens:n.tokens,costUSD:n.costUSD,officialCostUSD:n.officialCostUSD};uP.set(n.id,e),Fx(n.id,e)}for(let e of[...uP.keys()])t.has(e)||(uP.delete(e),Fx(e,null))}function fP(e){let t=uP.get(e);t&&Fx(e,t)}GM(E),NT(E),Um(E),Gk(E),mk(E),lc(JO),el(to),el(KO),dc({isReadable:no,open:io}),pc(yA);function pP(e){sN(Q,{isPhoneShellActive:XT(),activeView:an(),phoneScreen:j.snapshot().phoneScreen},e,hN)}lv(()=>pP(`settings-updated`));var mP={snapshot:e=>{tP(e.serverBuild),nP(e.sessions)},"hooks-report":e=>FT(e),"save-hook-result":()=>IT(),"delete-hook-result":()=>IT(),"session-status":e=>lP(e),"session-added":e=>{e.ephemeral||Sl(e.path),XO(e.id,e.linkedPrs),px(e.id)||(yx(e.id,e.session,e.state,xA(e)),Ax(e.id,e.agent),fP(e.id)),jo(A.counts),$N(),rP()},"session-close-confirm":e=>{$l(e.id)},"session-removed":e=>{Ds(e.id),Ux(e.id),Qa(e.id),Jf(e.id),ZO(e.id),jo(A.counts),$N(),rP()},"session-title":e=>{fx(e.id,e.taskTitle,e.isCustom),$N()},"session-prs":e=>XO(e.id,e.linkedPrs),"session-renamed":e=>{Hx(e.id,e.newName),$N(),rP()},"session-modified":e=>{e.ephemeral||Sl(e.path);let t=O.get(String(e.id)),n=B()===String(e.id);Za(e.id,null),Ux(e.id),Jf(e.id),XO(e.id,e.linkedPrs),yx(e.id,e.session,e.state,xA(e)),n&&Pl(String(e.id)),Ax(e.id,e.agent),iP(e.id,t),jo(A.counts),$N(),rP()},"session-git":e=>jx(e.id,!!e.worktree),"session-merge-status":e=>{zx(e.id,e.mergeStatus,e.reason),IC(e.id,e.mergeStatus),QN()},"session-worktree-blocked":e=>{R({source:HN,sessionId:e.id,message:`${e.session}: ${e.notice||`The integration branch was not found. Check the integration branch in Settings, then restart the session.`}`})},"session-worktree-warning":e=>{R({source:UN,sessionId:e.id,message:`${e.session}: ${e.notice||`The base branch could not be synced. The session keeps working on its current base.`}`})},"session-worktree-ready":e=>{Es(HN,e.id),kx(e.id,e.base)},"session-diff":e=>{Vx(e.id,e)},"session-diff-error":e=>{Vf(e.id,e.message)},"change-map":e=>Hf(e.id,e.map),"branch-sync-status":e=>Uf(e.id,e),"session-changed":e=>Gf(e.id),"debug-state-response":e=>Vc(e),"session-trace-response":e=>qm(e),"session-trace-changed":e=>Jm(e),"session-plan-changed":e=>{wx(e),QN()},"session-plan-draft":e=>{Tx(e)},"session-plan-response":e=>{Ex(e)},"session-docs-changed":e=>ma(e),"session-docs-snapshot":e=>ha(e),"session-shown":e=>Pa(e),"session-shown-snapshot":e=>Fa(e),"session-coherence-hooks":e=>{Za(e.id,e.coherenceHooks),$N()},"session-coherence":e=>{$a(e),$N()},"session-coherence-snapshot":e=>{eo(e),$N()},"session-coherence-journal-response":e=>ao(e),"session-setup-response":e=>bA(e),notify:e=>{Qh(e),Hc(e.session)},"update-status":e=>{xP(e),_j(e)},"update-progress":e=>vj(e.journal),"post-turn-leftovers":e=>CP(e),error:e=>{let t=yj(e),n=Ym(e),r=Dx(e);t||n||r||(e.id?Gx(e.id,e.message):R({source:VN,message:e.message}))},"session-error":e=>{Rf(e.id),!Dx(e)&&Gx(e.id,e.message)},"settings-updated":e=>{e.settings&&tF(e.settings),ra()},"agent-logins":e=>Ui(e.logins),"health-snapshot":e=>{e.stats&&Ru(e.stats)},"radar-status":e=>pA(e),"radar-investigation-activity":e=>mA(e),"radar-investigation-finished":e=>hA(e),"team-review-status":e=>YE(e),"github-prs":e=>Gt(e),"my-prs-status":ED,"benchmark-status":e=>_k(e),"benchmark-action-result":e=>vk(e),"my-pr-merge-result":e=>DD(e),"team-review-action-result":e=>XE(e),"open-team-review-session-result":e=>ZE(e),"issues-status":e=>Jk(e),"issue-detail-result":e=>Yk(e),"open-issue-session-result":e=>Xk(e),"usage-sessions":e=>{dP(e.sessions),YM(e)},"usage-report":e=>{ZM(e),hj()},"plan-limits":e=>XM(e),"usage-budget-alert":e=>Qh({session:`budget-${e.scope}-${e.periodKey}`,category:`threshold-${e.threshold}`,message:e.text,ignoreFocus:!0}),"visions-findings":e=>_T(e),"visions-comments":e=>vT(e),"visions-hand":e=>yT(e),"visions-intent":e=>bT(e),"visions-fix":e=>gT(e),"visions-snapshot":e=>CT(e),"ingest-activity":e=>xT(e),"ingest-snapshot":e=>ST(e),"client-trust":e=>gF(e.trust),"shutting-down":()=>FN(`Shutting down...`,`Shutting down sessions...`),restarting:()=>FN(`Restarting...`,`Restarting server...`)};function hP(e){let t=mP[e.type];t&&t(e)}nt(e=>{hP(e),pP(e.type)});var gP,_P=null;function vP(e,t,n){e.onclick=()=>{let e=qe(n);e?e.then(()=>{t.textContent=`Copied`}).catch(()=>{t.textContent=`Copy failed`}):t.textContent=`Copy failed`}}var yP=Ej(ce,me,`Update`).href;function bP(e){let{latestSha:t,latest:n}=e;return typeof n==`string`&&n?n:typeof t==`string`&&t?t:null}function xP(e){let t=S(document,`#update-banner`,`div`),{mode:n,tone:r,text:i}=xe(e),a=r===`security`;if(!e.updateAvailable&&!a){t.hidden=!0;return}let o=bP(e),s=o&&n===`restart`?`${o}:ready`:o;if(a&&i===_P||!a&&gP!==void 0&&s===gP||!a&&s&&ui()===s)return;t.classList.toggle(`update-banner-security`,a);let c=String(e.command??``);S(document,`#update-banner-text`,`span`).textContent=i,S(document,`#update-banner-cmd`,`code`).textContent=c;let l=S(document,`#update-banner-update`,`a`);l.href=yP,l.hidden=n!==`link`;let u=S(document,`#update-banner-restart`,`button`);u.hidden=n!==`restart`,u.onclick=hF;let d=S(document,`#update-banner-cmd`,`code`);d.hidden=n!==`command`;let f=S(document,`#update-banner-copy`,`button`);f.hidden=n!==`command`;let p=S(document,`#update-banner-copy-status`,`span`);p.hidden=n!==`command`,p.textContent=``;let m=S(document,`#update-banner-link`,`a`);m.hidden=!e.releaseUrl,m.href=typeof e.releaseUrl==`string`?e.releaseUrl:``,t.hidden=!1,vP(f,p,c),S(document,`#update-banner-dismiss`,`button`).onclick=()=>{t.hidden=!0,a?_P=i:(gP=s,di(s))}}var SP=!1;function CP({repositories:e,command:t}){let n=S(document,`#post-turn-leftovers-banner`,`div`);if(e.length===0){n.hidden=!0;return}if(SP)return;let r=S(document,`#post-turn-leftovers-copy-status`,`span`);S(document,`#post-turn-leftovers-text`,`span`).textContent=$t(e.length),S(document,`#post-turn-leftovers-cmd`,`code`).textContent=t,r.textContent=``,n.hidden=!1,vP(S(document,`#post-turn-leftovers-copy`,`button`),r,t),S(document,`#post-turn-leftovers-dismiss`,`button`).onclick=()=>{SP=!0,n.hidden=!0}}var wP=S(document,`#telemetry-banner`,`div`);function TP(){pi(!0),wP.hidden=!0}function EP(e){wP.hidden=!fM(e,fi())}var DP=S(document,`#telemetry-banner-settings`,`a`);DP.href=Ej(`privacy`,`telemetry-enabled`,`What's collected`).href,DP.addEventListener(`click`,TP),S(document,`#telemetry-banner-dismiss`,`button`).addEventListener(`click`,TP),S(document,`#btn-add-session-header`,`button`).addEventListener(`click`,Gl);var OP=S(document,`#btn-mute`,`button`);rk(OP);var kP=S(document,`#btn-streamer`,`button`);mv(kP),lM();var AP=S(document,`#power-menu`,`div`),jP=S(document,`#btn-power`,`button`),MP=S(document,`#power-menu-dropdown`,`div`);function NP(e){AP.classList.toggle(`open`,e),jP.setAttribute(`aria-expanded`,String(e))}jP.addEventListener(`click`,e=>{e.stopPropagation(),NP(!AP.classList.contains(`open`))}),Rs({trigger:jP,menu:MP,menuItems:()=>[...MP.querySelectorAll(`[role="menuitem"]`)].filter(e=>!e.hidden),isOpen:()=>AP.classList.contains(`open`),open:()=>NP(!0),close:()=>NP(!1)}),document.addEventListener(`click`,e=>{e.target instanceof Node&&(AP.contains(e.target)||NP(!1))}),Re(document.querySelector(`.header`));function PP(e){e&&sj(e),!oE(`settings`)&&$(`settings`,{section:e})}function FP(){Cj(location.hash)&&history.replaceState(history.state,``,`${location.pathname}${location.search}`)}function IP(e){return Cj(e)?(sj(null,null,e),oE(`settings`)||$(`settings`,{persist:!1}),!0):!1}var LP=`No plan is stored for this session yet. It appears here once the agent writes one.`,RP=`Plan`;function zP(e){let t=Vu(e);return t?!px(t)||(history.replaceState(history.state,``,`${location.pathname}${location.search}`),XT()?(iE(t)||R({source:RP,sessionId:t,message:LP}),!0):($(`focus`,{persist:!1}),RC(t)||R({source:RP,sessionId:t,message:LP}),!0)):!1}function BP(e){return zP(e)?!0:IP(e)}function VP(e){e.newURL===location.href&&BP(location.hash)}document.addEventListener(`click`,e=>{if(!XT()||e.defaultPrevented)return;let t=e.target instanceof Element?e.target.closest(`a[href^="#"]`):null;t instanceof HTMLAnchorElement&&BP(t.hash)&&e.preventDefault()}),lD(S(document,`#celebration-tray`,`div`),S(document,`#btn-celebrations`,`button`),S(document,`#celebration-tray-count`,`span`)),S(document,`#btn-help`,`button`).addEventListener(`click`,()=>{PP(`browser-shortcuts`)});var Q=xN({onRestart:hF,openTerminal:e=>{aE(e)||($(`focus`),LC(e))},openPlan:e=>{$(`focus`),RC(e)},openReviews:()=>GP(`prs`)?(oE(`prs`)||$(`prs`),!0):!1,setPhoneAttention:eE});function HP(){return Q.map(e=>e.view)}var UP=HP();aj(Q),Nf({panel:document.getElementById(`review-sidebar`)}),gN(Q);function WP(e){return Q.find(t=>t.view===e)}function GP(e){return Q.some(t=>t.view===e&&!t.tab.hidden)}var KP=!0,qP=null;function JP(e){WP(e)?.attention?.acknowledge()}var YP=null;function XP(e){YP=E({type:`dashboard-telemetry`,event:`view_shown`,properties:{view:e}})?null:e}function ZP(e){let t=WP(e);t&&(mN(t,e=>oN(t,e,`shown`)),XP(e))}function $(e,{section:t,setting:n,persist:r=!0}={}){let i=WP(e);if(!i||!GP(e))return;let a=an();j.dispatch(`setActiveView`,e),KP=r,r&&(qP=null),document.body.dataset.activeView=e,document.body.dataset.reviewSidebarHidden=String(i.hasReviewSidebar!==!0),r&&Zr(e);for(let t of Q){let n=t.view===e;t.el&&(t.el.hidden=!n),t.tab.setAttribute(`aria-selected`,String(n)),t.tab.tabIndex=n?0:-1}a!==e&&hN(a)?.deactivate?.(),mN(i,r=>{an()===e&&(r.activate?.(),oN(i,r,`shown`),e===`settings`&&t&&sj(t,n??null))}),XP(e),a===`settings`&&e!==`settings`&&FP(),JP(e)}function QP(e,t){let{view:n}=e;e.tab.hidden=!t,$T(n,t),e.onAvailabilityChange?.(t),!XT()&&(!t&&an()===n&&$(`focus`),t&&qP===n&&$(n))}function $P(e){for(let{view:t,isAvailable:n}of nN(Q,e))QP(t,n)}function eF(e){let t=rN(UP,e);Q.every((e,n)=>e.view===t[n])||(Q.sort((e,n)=>t.indexOf(e.view)-t.indexOf(n.view)),S(document,`#header-tabs`,`div`).append(...Q.map(e=>e.tab)),QT(t))}function tF(e){Ug(e.isExperimentalBuild===!0&&Hr()),hx(e),mj(e),mT(e),$P(e),EP(e),eF(e.viewTabOrder),cv(e.streamerMode===!0)}for(let e of Q)e.gate&&(QP(e,!1),`subscribe`in e.gate&&e.gate.subscribe(t=>QP(e,t)));Wm(()=>{GP(`trace`)&&(oE(`trace`)||$(`trace`))});function nF(){return Q.filter(e=>!e.tab.hidden)}function rF(e,t){let n=e[t];return $(n.view),n.tab}function iF(e,t){let n=nF();return rF(n,As(n.findIndex(t=>t.view===e),t,n.length))}function aF(e){Q.some(e=>e.tab===document.activeElement)&&e.focus()}var oF=null;function sF(e){let t=HP();eF(e),ut(`update-settings`,{settings:{viewTabOrder:e}}).then(e=>{e.type===`settings-error`&&eF(t)}).catch(()=>eF(t))}function cF(e){let t=oF;if(oF=null,!t||t===e)return;let n=HP();sF(iN(n,t,n.indexOf(e)))}for(let e=0;e<Q.length;e++){let{view:t,tab:n}=Q[e];n.addEventListener(`click`,()=>$(t)),n.addEventListener(`dragstart`,e=>{oF=t,e.dataTransfer?.setData(`text/plain`,t),e.dataTransfer&&(e.dataTransfer.effectAllowed=`move`)}),n.addEventListener(`dragover`,e=>{oF&&oF!==t&&(e.preventDefault(),n.dataset.dropTarget=`true`)}),n.addEventListener(`dragleave`,()=>delete n.dataset.dropTarget),n.addEventListener(`drop`,e=>{e.preventDefault(),delete n.dataset.dropTarget,cF(t)}),n.addEventListener(`dragend`,()=>{oF=null}),n.addEventListener(`keydown`,e=>{if(e.metaKey||e.altKey||e.ctrlKey||e.shiftKey)return;let t=nF(),n=t.findIndex(e=>e.view===an()),r=js(e.key,n,t.length,`horizontal`);r!==null&&(e.preventDefault(),rF(t,r).focus())})}var lF=Xr(),uF=Cj(location.hash),dF=Vu(location.hash);if(uF&&(sj(null,null,location.hash),$(`settings`,{persist:!1})),dF&&$(`focus`,{persist:!1}),!uF&&!dF){let e=GP(lF);e||(qP=lF),$(e?lF:`focus`,{persist:e})}qT({panels:LT(Q),onScreenShown:e=>{ZP(e),e!==`settings`&&FP(),e===`settings`&&!Cj(location.hash)&&sj(),JP(e)},canGoBack:e=>e===`settings`&&fj()||e===`prs`&&IO(),onBack:e=>{e===`settings`&&pj(),e===`prs`&&LO()},headerControls:[S(document,`.header-title`,`h1`),S(document,`#status-indicator`,`div`),S(document,`#celebration-tray`,`div`),S(document,`#btn-add-session-header`,`button`),S(document,`#btn-help`,`button`),OP,kP,AP]}),dj(nE),FO(nE);function fF(e){if(e===`phone`){let e=dC();for(let e of Q)hN(e.view)?.deactivate?.();let t=Cj(location.hash);JT({sessionId:e??void 0,linkedScreenId:t?`settings`:void 0}).then(e=>{e&&t&&sj(null,null,location.hash),!e&&_u()&&!XT()&&pF()});return}let t=ZT();YT(),pF(),t&&LC(t)}function pF(){let e=an();$(GP(e)?e:`focus`,{persist:KP})}_u()&&fF(`phone`),vu(fF),window.addEventListener(`hashchange`,VP);function mF({type:e,title:t,confirmLabel:n,danger:r,idleMessage:i,actionAfterKillingSessions:a}){NP(!1);let o=mx(),s=o>0?`Kill ${o} session${o>1?`s`:``} and ${a}?`:i;At({title:t,message:s,confirmLabel:n,danger:r||o>0,onConfirm:()=>E({type:e})})}function hF(){mF({type:`restart-server`,title:`Restart Server`,confirmLabel:`Restart`,danger:!1,idleMessage:`Restart the server?`,actionAfterKillingSessions:`restart the server`})}S(document,`#btn-restart`,`button`).addEventListener(`click`,hF);function gF(e){let t=Yt(`shutdown`,e);S(document,`#btn-shutdown`,`button`).hidden=!t,S(document,`#menu-divider-shutdown`,`div`).hidden=!t}S(document,`#btn-shutdown`,`button`).addEventListener(`click`,()=>{mF({type:`shutdown`,title:`Shut Down Server`,confirmLabel:`Shut Down`,danger:!0,idleMessage:`Shut down the server?`,actionAfterKillingSessions:`shut down the server`})});function _F(){return(document.activeElement?.closest(`.session-card`))?.dataset.id??null}function vF(e){LC(e),Ll(e),requestAnimationFrame(()=>requestAnimationFrame(()=>O.get(e)?.term?.focus()))}function yF(){let e=_F()??B();e?Yl(e,vF):document.getElementById(`btn-add-session-header`)?.click()}function bF({action:e,step:t}){switch(e){case`merge`:return Yf(),!0;case`close-session`:{let e=B();return e?($l(e),!0):!1}case`resolve-or-resync`:return Zf()||ep(),!0;case`new-session`:return document.getElementById(`btn-add-session-header`)?.click(),!0;case`quick-session`:return yF(),!0;case`next-attention`:return _u()?!1:uC()?(OC(),!0):(an()===`prs`&&RO()||HC(()=>$(`focus`)),!0);case`rail-step`:return uC()?(BC(t),!0):!1;case`view-step`:return!_u()&&(aF(iF(an(),t)),!0);case`session-nth`:return uC()?(zC(t),!0):!1;case`streamer-mode`:return pv(),!0}}document.addEventListener(`keydown`,e=>{if(e.repeat||Le(e))return;let t=mr(e,ld,{isTerminalFocused:document.activeElement?.classList.contains(`xterm-helper-textarea`)??!1},fd());t&&(jt()||bF(t)&&e.preventDefault())});var xF=Qt({mode:`trailing`,delayMs:150,run:()=>{E({type:`focus-change`,focused:document.hasFocus()})}});function SF(){xF.schedule()}function CF(){let e=ZT();e&&k(e)?._isActiveViewer?.()===!0&&Jx(e)}function wF(){SF(),Jb(k(on())),CF()}window.addEventListener(`focus`,wF),window.addEventListener(`blur`,wF),document.addEventListener(`visibilitychange`,wF),document.addEventListener(`visibilitychange`,()=>{document.visibilityState===`visible`&&_y()});var TF=Ze(E);window.addEventListener(`error`,e=>{TF(e.error),T(`uncaught`,ft(e.error??e.message))}),window.addEventListener(`unhandledrejection`,e=>{TF(e.reason),T(`unhandled-rejection`,ft(e.reason))}),yN(()=>window.sessionStorage),window.addEventListener(`pageshow`,e=>{e.persisted&&_y()}),Lu(S(document,`#health-footer-mount`,`div`)),cg(gx),XN(),FA(),it();var EF=wi();EF&&ot().then(()=>Tb(EF));export{kO as $,sn as $i,cd as $n,na as $r,rw as $t,ZA as A,ri as Ai,nh as An,nc as Ar,RE as At,Ik as B,jn as Bi,zm as Bn,cs as Br,CE as Bt,uj as C,Oi as Ci,Oh as Cn,fl as Cr,VD as Ct,pj as D,zr as Di,lh as Dn,Ac as Dr,xD as Dt,ij as E,Gr as Ei,uh as En,Wc as Er,SD as Et,oA as F,cr as Fi,eh as Fn,us as Fr,PE as Ft,Rk as G,Bn as Gi,If as Gn,Ko as Gr,MT as Gt,Bk as H,Rn as Hi,Im as Hn,$o as Hr,uE as Ht,cA as I,xr as Ii,bh as In,_s as Ir,NE as It,hk as J,An as Ji,gd as Jn,Po as Jr,cT as Jt,Lk as K,zn as Ki,ld as Kn,I as Kr,uT as Kt,sA as L,vr as Li,Hm as Ln,gs as Lr,BE as Lt,XA as M,Lr as Mi,dh as Mn,Oc as Mr,LE as Mt,cj as N,qr as Ni,sh as Nn,js as Nr,FE as Nt,lj as O,Ur as Oi,th as On,Tc as Or,KE as Ot,lA as P,li as Pi,ih as Pn,z as Pr,ME as Pt,wO as Q,ln as Qi,od as Qn,oa as Qr,jw as Qt,zk as R,Sr as Ri,Bm as Rn,ys as Rr,wE as Rt,QA as S,Ai as Si,Lh as Sn,il as Sr,aO as St,nj as T,Mi as Ti,mh as Tn,al as Tr,CD as Tt,Wk as U,Ln as Ui,Lm as Un,L as Ur,jT as Ut,Uk as V,Pn as Vi,Rm as Vn,Yo as Vr,lE as Vt,Hk as W,Vn as Wi,dm as Wn,qo as Wr,PT as Wt,tk as X,vn as Xi,md as Xn,ka as Xr,sw as Xt,fk as Y,_n as Yi,hd as Yn,so as Yr,Sw as Yt,nk as Z,hn as Zi,fd as Zn,Ca as Zr,Aw as Zt,Ej as _,Li as _i,Hg as _n,Nl as _r,YD as _t,WM as a,Fi as ai,rS as an,Yu as ar,OO as at,wj as b,ji as bi,Hh as bn,yl as br,iO as bt,KM as c,Ir as ci,Jx as cn,Hl as cr,NO as ct,RM as d,Jr as di,Xb as dn,ql as dr,KD as dt,on as ea,Wi as ei,ES as en,Xu as er,RO as et,QM as f,Rr as fi,Iv as fn,zl as fr,JD as ft,Fj as g,Pr as gi,Ug as gn,Ml as gr,BD as gt,hM as h,Br as hi,uv as hn,Ll as hr,nO as ht,eN as i,qt as ia,Ii as ii,nS as in,nd as ir,MO as it,$A as j,Vr as ji,oh as jn,jc as jr,jE as jt,oj as k,ai as ki,rh as kn,Dc as kr,qE as kt,BM as l,Kr as li,Sx as ln,Rl as lr,kD as lt,gM as m,ii as mi,lv as mn,$l as mr,UD as mt,rN as n,j as na,Gi as ni,VS as nn,Uu as nr,TO as nt,qM as o,Wr as oi,eS as on,_u as or,PO as ot,vM as p,Hr as pi,sv as pn,Il as pr,eO as pt,pk as q,On as qi,pd as qn,F as qr,lT as qt,$M as r,Kt as ra,zi as ri,RS as rn,Ju as rr,LO as rt,VM as s,ni as si,tS as sn,vu as sr,CO as st,iN as t,cn as ta,Ui as ti,DS as tn,Gu as tr,AO as tt,zM as u,ci as ui,Bb as un,Gl as ur,qD as ut,Tj as v,Yr as vi,Bg as vn,Cl as vr,ZD as vt,tj as w,Ni as wi,Qm as wn,ol as wr,XD as wt,mj as x,ki as xi,zh as xn,vl as xr,tO as xt,Sj as y,Pi as yi,Gg as yn,wl as yr,HD as yt,Vk as z,Nn as zi,Vm as zn,bs as zr,SE as zt};
|