glimmervoid 0.46.2-next.146 → 0.46.2-next.147
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/bin/glimmervoid.js +1 -1
- package/dist/chunks/{adapters-CPgK2P8p.js → adapters-B411QZPa.js} +16 -7
- package/dist/chunks/{adapters-DgiNl-zf.js → adapters-Dy_a5IJ0.js} +1 -1
- package/dist/chunks/{main-BlPPfUFv.js → main-BzRuLm8p.js} +7 -2
- package/dist/client/assets/{alert-sound-DDh_4QK8.js → alert-sound-a-r-xMzC.js} +1 -1
- package/dist/client/assets/alert-sound-a-r-xMzC.js.br +0 -0
- package/dist/client/assets/{benchmark-panel-BG1inIoZ.js → benchmark-panel-CEdfPEgm.js} +1 -1
- package/dist/client/assets/benchmark-panel-CEdfPEgm.js.br +0 -0
- package/dist/client/assets/{celebration-player-BnNh_F3x.js → celebration-player-C3ub9M-X.js} +1 -1
- package/dist/client/assets/celebration-player-C3ub9M-X.js.br +0 -0
- package/dist/client/assets/{dialogs-BHybHLEU.js → dialogs-BZSGSCHb.js} +1 -1
- package/dist/client/assets/dialogs-BZSGSCHb.js.br +0 -0
- package/dist/client/assets/{doc-editor-ui-DTv2f8o7.js → doc-editor-ui-BFGY3Mip.js} +1 -1
- package/dist/client/assets/doc-editor-ui-BFGY3Mip.js.br +0 -0
- package/dist/client/assets/{first-run-checklist-BEOgKHv2.js → first-run-checklist-j-DNxANV.js} +1 -1
- package/dist/client/assets/first-run-checklist-j-DNxANV.js.br +0 -0
- package/dist/client/assets/{hooks-panel-B7twURZa.js → hooks-panel-esfJMItp.js} +1 -1
- package/dist/client/assets/hooks-panel-esfJMItp.js.br +0 -0
- package/dist/client/assets/{index-CHy_VRVf.js → index-6j_Ukqob.js} +5 -5
- package/dist/client/assets/index-6j_Ukqob.js.br +0 -0
- package/dist/client/assets/{issues-panel-BxKdJ76u.js → issues-panel-CGFsmQwr.js} +1 -1
- package/dist/client/assets/issues-panel-CGFsmQwr.js.br +0 -0
- package/dist/client/assets/{nyan-cat-gMmu0ObP.js → nyan-cat-DhAjaQ--.js} +1 -1
- package/dist/client/assets/nyan-cat-DhAjaQ--.js.br +0 -0
- package/dist/client/assets/{phone-shell-3_2K29Wa.js → phone-shell-DLbSnQpc.js} +1 -1
- package/dist/client/assets/phone-shell-DLbSnQpc.js.br +0 -0
- package/dist/client/assets/{plan-face-BlnZai38.js → plan-face-Dskopzga.js} +1 -1
- package/dist/client/assets/plan-face-Dskopzga.js.br +0 -0
- package/dist/client/assets/{plan-render-vcKFoKV1.js → plan-render-C85979_d.js} +1 -1
- package/dist/client/assets/plan-render-C85979_d.js.br +0 -0
- package/dist/client/assets/{pr-scope-tabs-Bjy2oAxW.js → pr-scope-tabs-OBz-ZcBj.js} +1 -1
- package/dist/client/assets/pr-scope-tabs-OBz-ZcBj.js.br +0 -0
- package/dist/client/assets/{radar-panel-BUhFoFVK.js → radar-panel-ZX8G9OCD.js} +1 -1
- package/dist/client/assets/radar-panel-ZX8G9OCD.js.br +0 -0
- package/dist/client/assets/{resume-dialog-BkBCvw7S.js → resume-dialog-Zw1UXc7g.js} +1 -1
- package/dist/client/assets/resume-dialog-Zw1UXc7g.js.br +0 -0
- package/dist/client/assets/{review-queue-panel-DvEs6-Bf.js → review-queue-panel-sogJ-wbx.js} +1 -1
- package/dist/client/assets/review-queue-panel-sogJ-wbx.js.br +0 -0
- package/dist/client/assets/{settings-panel-CjIAPjuk.js → settings-panel-chP3FMVF.js} +2 -2
- package/dist/client/assets/settings-panel-chP3FMVF.js.br +0 -0
- package/dist/client/assets/{shown-lightbox-CfgPZKNs.js → shown-lightbox-D3coKoM9.js} +1 -1
- package/dist/client/assets/shown-lightbox-D3coKoM9.js.br +0 -0
- package/dist/client/assets/{trace-panel-C-ck4L5u.js → trace-panel-fzO0o4nU.js} +1 -1
- package/dist/client/assets/trace-panel-fzO0o4nU.js.br +0 -0
- package/dist/client/assets/{usage-panel-DiqtugGl.js → usage-panel-DS4fp99z.js} +1 -1
- package/dist/client/assets/usage-panel-DS4fp99z.js.br +0 -0
- package/dist/client/assets/{visions-panel-BCm5wau9.js → visions-panel-O9dWuSmt.js} +1 -1
- package/dist/client/assets/visions-panel-O9dWuSmt.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-DDh_4QK8.js.br +0 -0
- package/dist/client/assets/benchmark-panel-BG1inIoZ.js.br +0 -0
- package/dist/client/assets/celebration-player-BnNh_F3x.js.br +0 -0
- package/dist/client/assets/dialogs-BHybHLEU.js.br +0 -0
- package/dist/client/assets/doc-editor-ui-DTv2f8o7.js.br +0 -0
- package/dist/client/assets/first-run-checklist-BEOgKHv2.js.br +0 -0
- package/dist/client/assets/hooks-panel-B7twURZa.js.br +0 -0
- package/dist/client/assets/index-CHy_VRVf.js.br +0 -0
- package/dist/client/assets/issues-panel-BxKdJ76u.js.br +0 -0
- package/dist/client/assets/nyan-cat-gMmu0ObP.js.br +0 -0
- package/dist/client/assets/phone-shell-3_2K29Wa.js.br +0 -0
- package/dist/client/assets/plan-face-BlnZai38.js.br +0 -0
- package/dist/client/assets/plan-render-vcKFoKV1.js.br +0 -0
- package/dist/client/assets/pr-scope-tabs-Bjy2oAxW.js.br +0 -0
- package/dist/client/assets/radar-panel-BUhFoFVK.js.br +0 -0
- package/dist/client/assets/resume-dialog-BkBCvw7S.js.br +0 -0
- package/dist/client/assets/review-queue-panel-DvEs6-Bf.js.br +0 -0
- package/dist/client/assets/settings-panel-CjIAPjuk.js.br +0 -0
- package/dist/client/assets/shown-lightbox-CfgPZKNs.js.br +0 -0
- package/dist/client/assets/trace-panel-C-ck4L5u.js.br +0 -0
- package/dist/client/assets/usage-panel-DiqtugGl.js.br +0 -0
- package/dist/client/assets/visions-panel-BCm5wau9.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-BYoMfzXj.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{C as Je,S as Ye,_ as Xe,a as Ze,b as Qe,c as $e,d as et,f as tt,g as nt,h as rt,i as it,l as T,m as at,n as ot,o as st,p as ct,r as lt,s as ut,t as dt,u as E,v as ft,x as pt,y as mt}from"./control-ws-DUGWJI0x.js";import{S as ht,_ as gt,a as _t,b as vt,c as yt,d as bt,f as xt,g as St,h as Ct,i as D,l as wt,m as Tt,n as Et,o as O,r as k,s as Dt,t as A,u as Ot,x as kt,y as At}from"./card-registry-DITW3gYA.js";import{a as jt,i as Mt,n as Nt,r as Pt,t as Ft}from"./modal-Bh-cVr-I.js";import{a as It,c as Lt,i as Rt,n as zt,o as Bt,r as Vt,s as Ht,t as Ut}from"./session-tick-D8pYTYt7.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 Wt=new Map,Gt=new Set;function Kt(e){let t=m.safeParse(e);if(!t.success)T(`reviews`,`dropped github-prs: ${Je(t.error.issues)}`);else{Wt=new Map(Object.entries(t.data.prs));for(let e of Gt)e()}}function qt(e){return Wt.get(e.toLowerCase())}function Jt(e){Gt.add(e)}function Yt(e){return e===`remote`?`remote`:`local`}function Xt(e,t){return Yt(t)===`local`||e!==`shutdown`}var Zt=Object.freeze({setTimeoutFn:(e,t)=>setTimeout(e,t),clearTimeoutFn:e=>clearTimeout(e),setIntervalFn:(e,t)=>setInterval(e,t),clearIntervalFn:e=>clearInterval(e)});function Qt(e){return typeof e!=`object`||!e||!(`unref`in e)||typeof e.unref!=`function`||e.unref(),e}function $t({mode:e,delayMs:t,run:n,setTimeoutFn:r=Zt.setTimeoutFn,clearTimeoutFn:i=Zt.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&&Qt(o))}return{schedule:c,cancel:s,get isArmed(){return o!==null}}}function en(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 tn=Object.freeze({layout:`desktop`,activeView:`focus`,phoneScreen:null,focusedSessionId:null,selectedSessionId:null,borrowedCardId:null}),nn=e=>e||null,rn=Object.freeze({setLayout:e=>({layout:e}),setActiveView:e=>({activeView:e}),setPhoneScreen:e=>({phoneScreen:nn(e)}),focusSession:e=>({focusedSessionId:nn(e)}),selectSession:e=>({selectedSessionId:nn(e)}),borrowCard:e=>({borrowedCardId:nn(e)})});function an(e){let t=Object.freeze({...tn,...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 tn))throw Error(`ui-state: unknown key "${r}"`);Object.is(t[r],e[r])||n.push(r)}return n}function o(e,r){let i=rn[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=an(),on=()=>j.snapshot().activeView;function sn(){return j.snapshot().borrowedCardId}function cn(e,t,n,{className:r}={}){if(!e?.card||!n)return;let i=sn();i&&i!==t&&ln();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 ln(){let e=sn();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,Et)),e}var un=[{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`}],dn=1/25,fn=3;function pn(e,t,n){return typeof e!=`number`||!Number.isFinite(e)?t:Math.min(n.max,Math.max(n.min,e))}function mn(e){if(!Array.isArray(e))return[];let t=new Set(un.map(e=>e.sprite));return[...new Set(e.filter(e=>typeof e==`string`&&t.has(e)))]}function hn(e={}){let t=je,n=Be,r=Me,i=pn(e.flyingAnimalsMinGapSeconds,t.flyingAnimalsMinGapSeconds,n),a=pn(e.flyingAnimalsMaxGapSeconds,t.flyingAnimalsMaxGapSeconds,n),o=pn(e.flyingAnimalsMinDurationSeconds,t.flyingAnimalsMinDurationSeconds,r),s=pn(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:pn(e.flyingAnimalsScale,t.flyingAnimalsScale,ke),flyingAnimalsOnPhone:typeof e.flyingAnimalsOnPhone==`boolean`?e.flyingAnimalsOnPhone:t.flyingAnimalsOnPhone,flyingAnimalsExcludedSprites:mn(e.flyingAnimalsExcludedSprites)}}function gn(e){return un.some(t=>!e.includes(t.sprite))}function _n(e,t=-1,n=Math.random){let r=un.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 vn(e,t,n=Math.random,r){let i=r===void 0?_n(e.flyingAnimalsExcludedSprites,t,n):un.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()<dn?fn:1;return{animalIndex:i,durationSeconds:a,gapMs:o,firstDelaySeconds:s,verticalProgress:c,isRightToLeft:l,arcProgress:(n()*2-1)*u}}function yn({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 bn=68,xn=42,Sn=768,Cn=.68,wn=64,Tn=5,En=8,Dn=85;function On(e,t,n){return Math.min(Math.max(e,t),n)}function kn({viewportWidthPx:e,viewportHeightPx:t,verticalProgress:n,isRightToLeft:r=!1,arcProgress:i=0}){let a=On(e/Sn,Cn,1),o=(Tn+70*n*n)*t/100,s=Math.max(o,wn),c=Dn*t/100,l=On(i*En*t/100,wn-s,c-s),u=-.45*e,d=1.45*e;return{scale:a,spriteWidthPx:bn,spriteHeightPx:xn,topPx:s,startXpx:r?d:u,endXpx:r?u:d,facing:r?-1:1,arcPx:l}}function An(e,t){let n=Number.isFinite(t)&&t>0?t:1;return Math.max(1,Math.round(e*n))/n}function jn(e,t,n){let r=An(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 Mn=`chime`,Nn=`custom:`,Pn=`/custom-sounds`,Fn=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`}]}}),In=Object.freeze(Object.entries(Fn).map(([e,t])=>({id:e,label:t.label})));function Ln(e){return`${Nn}${e}`}function Rn(e){return`${Pn}/${encodeURIComponent(e)}`}function zn(e){return e.startsWith(Nn)&&e.slice(7)||null}function Bn(e){let t=(e??[]).map(e=>({id:Ln(e),label:e}));return[...In,...t]}function Vn(e,t){if(typeof e!=`string`)return Mn;if(Object.hasOwn(Fn,e))return e;let n=zn(e);return n&&(t===null||t.includes(n))?e:Mn}function Hn(e){return typeof e!=`object`||!e||!(`sounds`in e)||!Array.isArray(e.sounds)?[]:e.sounds.filter(e=>typeof e==`string`&&e!==``)}function Un(e,t){try{let n=localStorage.getItem(e);return n===null?t:JSON.parse(n)}catch{return t}}function Wn(e,t){try{localStorage.setItem(e,JSON.stringify(t))}catch{}}var Gn=`↑`,Kn=`↓`,qn=`←`,Jn=`→`,Yn=`⌘`,Xn=`⌥`,Zn=Array.from({length:9},(e,t)=>[`Digit${t+1}`,t+1]),Qn=`KeyJ`,$n=new Map([[`Minus`,`-`],[`Equal`,`=`],[`BracketLeft`,`[`],[`BracketRight`,`]`],[`Semicolon`,`;`],[`Quote`,`'`],[`Comma`,`,`],[`Period`,`.`],[`Slash`,`/`],[`Backquote`,"`"],[`Backslash`,`\\`]]),er=new Set([`KeyQ`,`KeyW`,`KeyT`,`KeyN`,`KeyL`,`KeyR`]),tr=new Set([`KeyC`,`KeyV`,`KeyX`,`KeyA`,`KeyZ`]);function nr(e){let t=/^(?:Key|Digit)([A-Z0-9])$/.exec(e);return t?t[1]:$n.get(e)??null}function rr(e){return{action:`next-attention`,keyCaptions:[nr(e)??e],label:`Jump to the next session needing you`,stepByCode:new Map([[e,0]])}}var ir=[{action:`rail-step`,keyCaptions:[Gn,Kn],label:`Previous / next session in the rail`,stepByCode:new Map([[`ArrowUp`,-1],[`ArrowDown`,1]])},{action:`view-step`,keyCaptions:[qn,Jn],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(Zn),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 ar(e,t){return[rr(t),...ir].filter(t=>t.unavailablePlatform!==e)}function or(e){if(nr(e)===null)return`Pick a letter, digit or punctuation key.`;if(er.has(e))return`The browser keeps that shortcut for itself.`;if(tr.has(e))return`That shortcut stays with copy, cut, paste, select all and undo.`;let t=ir.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 sr(e){return typeof e==`string`&&or(e)===null}var cr=new Set([`Meta`,`Alt`,`Control`,`Shift`,`OS`]);function lr(e,t){if(e.key===`Escape`)return{kind:`cancelled`};if(cr.has(e.key))return{kind:`ignored`};let n=t===`mac`?`Cmd`:`Alt`;if(!dr(e,t,rr(e.code)))return{kind:`refused`,reason:`Hold ${n} alone while pressing the key.`};let r=or(e.code);return r?{kind:`refused`,reason:r}:{kind:`recorded`,keyCode:e.code}}function ur(e){return/Mac|iPhone|iPad/.test(e)?`mac`:`other`}function dr(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 fr(e,t,n){return n.isTerminalFocused&&t!==`mac`&&!!e.isShellChord}var pr=new Set([`ArrowUp`,`ArrowDown`,`ArrowLeft`,`ArrowRight`,`PageUp`,`PageDown`]);function mr(e){return pr.has(e.key)?e.key:e.code}function hr(e,t,n={isTerminalFocused:!1},r=Qn){let i=mr(e);for(let a of ar(t,r)){let r=a.stepByCode.get(i);if(r!==void 0&&dr(e,t,a))return fr(a,t,n)?null:{action:a.action,step:r}}return null}function gr(e,t){return t===`focus`||e.action===`quick-session`}function _r(e,t){return e===`mac`?t?.needsMacOption?`${Yn}${Xn}`:Yn:t?.needsShiftOffMac?`Alt+Shift`:`Alt`}function vr(e,t,n){let r=ar(t,n).find(t=>t.action===e);if(!r)throw Error(`Unknown dashboard shortcut: ${e}`);return r}function yr(e,t,n=Qn){let r=vr(e,t,n);return[_r(t,r),r.keyCaptions.join(` `)]}function br(e,t){let[n,r]=yr(e,t);return t===`mac`?`${n}${r}`:`${n}+${r}`}function xr(e){let t=e===`mac`?`Meta`:`Alt`;return`ArrowUp ArrowDown ${t}+ArrowUp ${t}+ArrowDown`}function Sr(e){return e===`mac`?`Cmd+Enter`:`Ctrl+Enter`}function Cr(e,t=Qn){let n=e===`mac`?Yn:`Ctrl`;return[{title:`Dashboard`,items:ar(e,t).map(t=>({combos:t.keyCaptions.map(n=>[_r(e,t),n]),label:t.label}))},{title:`Navigation`,items:[{combos:[[Gn],[Kn]],label:`Move rail highlight (rail focused)`},{combos:[[qn],[Jn]],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 wr=`glimmervoid-ui-prefs`,Tr=`glimmervoid:sidebar-width`,Er=e=>t=>typeof t==`boolean`?t:e,Dr=e=>t=>typeof t==`string`?t:e,Or=e=>typeof e==`string`&&e?e:null,kr=e=>typeof e==`number`&&Number.isFinite(e)?e:null,Ar=e=>t=>kr(t)??e,jr=e=>Array.isArray(e)?[...new Set(e.filter(e=>typeof e==`string`&&e!==``))]:[],Mr={soundEnabled:Er(!0),soundId:Dr(Mn),themeId:Dr(`phyrexian`),flyingAnimalsEnabled:Er(!1),flyingAnimalsMinGapSeconds:Ar(je.flyingAnimalsMinGapSeconds),flyingAnimalsMaxGapSeconds:Ar(je.flyingAnimalsMaxGapSeconds),flyingAnimalsMinDurationSeconds:Ar(je.flyingAnimalsMinDurationSeconds),flyingAnimalsMaxDurationSeconds:Ar(je.flyingAnimalsMaxDurationSeconds),flyingAnimalsScale:Ar(je.flyingAnimalsScale),flyingAnimalsOnPhone:Er(je.flyingAnimalsOnPhone),flyingAnimalsExcludedSprites:mn,notificationsEnabled:Er(!0),sessionUsageChips:Er(!1),phoneArrowPad:Er(!1),nextAttentionKeyCode:e=>sr(e)?e:Qn,activeView:Dr(`focus`),lastFocusedSessionId:Or,railWidth:kr,reviewSidebarExpanded:Er(!1),prsQueueWidth:kr,prsQueueCollapsed:Er(!1),keptProjects:jr,traceHiddenKinds:jr,dismissedUpdate:Or,telemetryNoticeDismissed:Er(!1),radarAttentionAck:Dr(``),prsAttentionAck:Dr(``),prsUnseenRows:Dr(``),usageAttentionAck:Dr(``),visionsAttentionAck:Dr(``)};function Nr(e,t,n){e[t]=Mr[t](n)}function Pr(){let e=Un(wr,{}),t={};for(let n of Object.keys(Mr))Nr(t,n,e?.[n]);return t}function M(e){return Pr()[e]}function N(e,t){let n=Pr();Nr(n,e,t),Wn(wr,n)}var Fr=()=>M(`soundEnabled`),Ir=e=>N(`soundEnabled`,e),Lr=()=>M(`soundId`),Rr=e=>N(`soundId`,e),zr=()=>M(`notificationsEnabled`),Br=e=>N(`notificationsEnabled`,e),Vr=()=>M(`sessionUsageChips`),Hr=e=>N(`sessionUsageChips`,e),Ur=()=>M(`phoneArrowPad`),Wr=e=>N(`phoneArrowPad`,e),Gr=()=>M(`nextAttentionKeyCode`),Kr=e=>N(`nextAttentionKeyCode`,e),qr=()=>M(`themeId`),Jr=e=>N(`themeId`,e),Yr=()=>M(`flyingAnimalsEnabled`),Xr=e=>N(`flyingAnimalsEnabled`,e),Zr=()=>M(`activeView`),Qr=e=>N(`activeView`,e),$r=()=>M(`railWidth`),ei=e=>N(`railWidth`,e),ti=()=>M(`reviewSidebarExpanded`),ni=e=>N(`reviewSidebarExpanded`,e),ri=()=>M(`prsQueueWidth`),ii=e=>N(`prsQueueWidth`,e),ai=()=>M(`prsQueueCollapsed`),oi=e=>N(`prsQueueCollapsed`,e),si=()=>M(`keptProjects`),ci=e=>N(`keptProjects`,e),li=()=>M(`traceHiddenKinds`),ui=e=>N(`traceHiddenKinds`,e),di=()=>M(`dismissedUpdate`),fi=e=>N(`dismissedUpdate`,e),pi=()=>M(`telemetryNoticeDismissed`),mi=e=>N(`telemetryNoticeDismissed`,e),hi=()=>M(`radarAttentionAck`),gi=e=>N(`radarAttentionAck`,e),_i=()=>M(`prsAttentionAck`),vi=e=>N(`prsAttentionAck`,e),yi=()=>M(`prsUnseenRows`),bi=e=>N(`prsUnseenRows`,e),xi=()=>M(`usageAttentionAck`),Si=e=>N(`usageAttentionAck`,e),Ci=()=>M(`visionsAttentionAck`),wi=e=>N(`visionsAttentionAck`,e),Ti=()=>M(`lastFocusedSessionId`),Ei=e=>N(`lastFocusedSessionId`,e),Di=()=>kr(Un(Tr,null)),Oi=e=>Wn(Tr,kr(e)),ki=e=>N(`flyingAnimalsMinGapSeconds`,e),Ai=e=>N(`flyingAnimalsMaxGapSeconds`,e),ji=e=>N(`flyingAnimalsMinDurationSeconds`,e),Mi=e=>N(`flyingAnimalsMaxDurationSeconds`,e),Ni=e=>N(`flyingAnimalsScale`,e),Pi=e=>N(`flyingAnimalsOnPhone`,e),Fi=e=>N(`flyingAnimalsExcludedSprites`,e),Ii=()=>hn(Pr()),Li=()=>{let e=Pr();return Object.fromEntries(Object.keys(je).map(t=>[t,e[t]]))},Ri=()=>Wn(wr,{...Pr(),...je}),zi=kn({viewportWidthPx:1440,viewportHeightPx:900,verticalProgress:0});function Bi(e,t=``){let n=w(`div`,`flying-animal-preview ${t}`.trim());n.setAttribute(`aria-hidden`,`true`),n.style.setProperty(`--nyan-width`,`${zi.spriteWidthPx}px`),n.style.setProperty(`--nyan-height`,`${zi.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 Vi(){let e=_n(Ii().flyingAnimalsExcludedSprites);return e===null?null:un[e]??null}var Hi=[],Ui=new Set;function Wi(e){let t=ie.safeParse(e);if(t.success){Hi=t.data;for(let e of Ui)e()}}function Gi(e){return Hi.find(t=>t.agent===e)??null}function Ki(e){return Ui.add(e),()=>{Ui.delete(e)}}var qi=`modulepreload`,Ji=function(e){return`/`+e},Yi={},Xi=function(e){return e.pathname.endsWith(`.css`)},Zi=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=Ji(t,n);let r=s(t),i=Xi(r);return Zi(Yi,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`:qi,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)})},Qi=null,$i=null,ea=!1,ta=null;function na(){return $i??=P(()=>import(`./first-run-checklist-BEOgKHv2.js`).then(e=>(Qi=e,e),e=>($i=null,T(`first-run`,`first-run checklist failed to load: ${Ye(e)}`),null)),__vite__mapDeps([0,1,2,3,4,5])),$i}function ra(e,t){ta={host:e,isShown:t},Qi?Qi.showFirstRunChecklist(e,t):t&&ea&&na().then(e=>{e&&ta&&e.showFirstRunChecklist(ta.host,ta.isShown)})}function ia(){Qi?.refreshFirstRunChecklist()}function aa(){ea=!0,ta&&ra(ta.host,ta.isShown)}var oa=new Map;function sa(e){return oa.get(e)??[]}function ca(e){return sa(e).length>0}function la(e){k(e)?.btnDocs.classList.toggle(`visible`,ca(e))}var ua=null,da=null;function fa(){return da??=P(()=>import(`./doc-editor-ui-DTv2f8o7.js`).then(e=>(ua=e,e),e=>(da=null,T(`doc-editor`,`doc editor failed to load: ${Ye(e)}`),null)),__vite__mapDeps([6,1,2,3,4,7,8])),da}function pa(e){fa().then(t=>t?.openDocEditor(e))}function ma(e){ua?.applyDocsToOpenEditor(e)}function ha(e){oa.set(e.id,e.docs),e.docs.length===0&&oa.delete(e.id),la(e.id),ma(e.id)}function ga(e){let t=[...oa.keys()];oa.clear();for(let[t,n]of Object.entries(e.sessions))oa.set(t,n);for(let e of new Set([...t,...oa.keys()]))la(e),ma(e)}var _a=new Map,va=new Set,ya=[],ba=[],xa=null,Sa=null,Ca=!1;function wa(e){return _a.get(e)??[]}function Ta(e){return wa(e).length>0}function Ea(e){return va.has(e)}function Da(e){ya.push(e)}function Oa(e){ba.push(e)}function ka(e){let t=k(e);t&&(t.btnShown.classList.toggle(`visible`,Ta(e)),t.shownUnopenedDot.hidden=!Ea(e))}function Aa(e){if(va.delete(e)){ka(e);for(let t of ya)t(e,[])}}function ja(){return Sa??=P(()=>import(`./shown-lightbox-CfgPZKNs.js`).then(e=>(xa=e,e),e=>(Sa=null,T(`shown-files`,`shown file viewer failed to load: ${Ye(e)}`),null)),__vite__mapDeps([9,1,7,10])),Sa}function Ma(e,t=null){Ta(e)&&ja().then(n=>n?.openShownLightbox(e,t))}function Na(e){return e.slice(-50)}function Pa(e,t){if(t.length===0)return;let n=xa?.isLightboxOpenOn(e)??!1;n||va.add(e),ka(e),n&&xa?.repaintLightboxOn(e);for(let n of ya)n(e,t)}function Fa(e){let t=new Set(wa(e.id).map(e=>e.id)),n=e.files.filter(e=>!t.has(e.id));if(_a.set(e.id,Na([...wa(e.id),...n])),Pa(e.id,n),n.length!==0)for(let t of ba)t(e.id,n)}function Ia(e){let t=new Map(_a),n=Ca;Ca=!0,_a.clear();for(let[t,n]of Object.entries(e.sessions))_a.set(t,Na(n));for(let e of new Set([...t.keys(),..._a.keys()])){Ta(e)||va.delete(e);let r=new Set((t.get(e)??[]).map(e=>e.id)),i=n?wa(e).filter(e=>!r.has(e.id)):[];ka(e),Pa(e,i),xa?.repaintLightboxOn(e)}}function La({dialogClass:e,titleText:t,titleId:n,body:r,onCloseRequest:i}){let a=Pt({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),Ft(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 Ra({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=lt(e),m=La({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 za=2,Ba={needsYou:1,broken:2,askedOfYou:3,waiting:4,settled:5},Va={danger:Ba.broken,warn:Ba.askedOfYou,wait:Ba.waiting,ok:Ba.settled,muted:Ba.settled};function Ha(e){return e?Va[e]:Ba.settled}function Ua(e){let t=[...e].sort((e,t)=>e.tier-t.tier),n=t.slice(za);return{visible:t.slice(0,za),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-j-DNxANV.js","assets/dom-helpers-C7P3_59O.js","assets/control-ws-DUGWJI0x.js","assets/updates-view-core-BYoMfzXj.js","assets/zod-BRLv4KqJ.js","assets/repo-roots-adder-B4qgw7oP.js","assets/doc-editor-ui-BFGY3Mip.js","assets/modal-Bh-cVr-I.js","assets/plan-render-C85979_d.js","assets/shown-lightbox-D3coKoM9.js","assets/sandboxed-frame-C5WnwN5w.js","assets/dialogs-BZSGSCHb.js","assets/session-tick-D8pYTYt7.js","assets/card-registry-DITW3gYA.js","assets/xterm-CdMfg81L.js","assets/rolldown-runtime-DK3Fl9T5.js","assets/resume-dialog-Zw1UXc7g.js","assets/plan-face-Dskopzga.js","assets/plan-face-BKvWQchw.css","assets/phone-shell-DLbSnQpc.js","assets/celebration-player-C3ub9M-X.js","assets/alert-sound-a-r-xMzC.js","assets/nyan-cat-DhAjaQ--.js","assets/review-queue-panel-sogJ-wbx.js","assets/pr-scope-tabs-OBz-ZcBj.js","assets/review-queue-panel-O6IBmve5.css","assets/issues-panel-CGFsmQwr.js","assets/issues-panel-CPjbxcmf.css","assets/usage-panel-DS4fp99z.js","assets/usage-panel-DNM1lX5J.css","assets/radar-panel-ZX8G9OCD.js","assets/radar-panel-DZnRUVtP.css","assets/visions-panel-O9dWuSmt.js","assets/visions-panel-pBP6aaaP.css","assets/hooks-panel-esfJMItp.js","assets/hooks-panel-vO6hRv8A.css","assets/trace-panel-fzO0o4nU.js","assets/trace-panel-8Txvz14_.css","assets/benchmark-panel-CEdfPEgm.js","assets/benchmark-panel-DDwPBdjB.css","assets/settings-panel-chP3FMVF.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-BYoMfzXj.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{C as Je,S as Ye,_ as Xe,a as Ze,b as Qe,c as $e,d as et,f as tt,g as nt,h as rt,i as it,l as T,m as at,n as ot,o as st,p as ct,r as lt,s as ut,t as dt,u as E,v as ft,x as pt,y as mt}from"./control-ws-DUGWJI0x.js";import{S as ht,_ as gt,a as _t,b as vt,c as yt,d as bt,f as xt,g as St,h as Ct,i as D,l as wt,m as Tt,n as Et,o as O,r as k,s as Dt,t as A,u as Ot,x as kt,y as At}from"./card-registry-DITW3gYA.js";import{a as jt,i as Mt,n as Nt,r as Pt,t as Ft}from"./modal-Bh-cVr-I.js";import{a as It,c as Lt,i as Rt,n as zt,o as Bt,r as Vt,s as Ht,t as Ut}from"./session-tick-D8pYTYt7.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 Wt=new Map,Gt=new Set;function Kt(e){let t=m.safeParse(e);if(!t.success)T(`reviews`,`dropped github-prs: ${Je(t.error.issues)}`);else{Wt=new Map(Object.entries(t.data.prs));for(let e of Gt)e()}}function qt(e){return Wt.get(e.toLowerCase())}function Jt(e){Gt.add(e)}function Yt(e){return e===`remote`?`remote`:`local`}function Xt(e,t){return Yt(t)===`local`||e!==`shutdown`}var Zt=Object.freeze({setTimeoutFn:(e,t)=>setTimeout(e,t),clearTimeoutFn:e=>clearTimeout(e),setIntervalFn:(e,t)=>setInterval(e,t),clearIntervalFn:e=>clearInterval(e)});function Qt(e){return typeof e!=`object`||!e||!(`unref`in e)||typeof e.unref!=`function`||e.unref(),e}function $t({mode:e,delayMs:t,run:n,setTimeoutFn:r=Zt.setTimeoutFn,clearTimeoutFn:i=Zt.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&&Qt(o))}return{schedule:c,cancel:s,get isArmed(){return o!==null}}}function en(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 tn=Object.freeze({layout:`desktop`,activeView:`focus`,phoneScreen:null,focusedSessionId:null,selectedSessionId:null,borrowedCardId:null}),nn=e=>e||null,rn=Object.freeze({setLayout:e=>({layout:e}),setActiveView:e=>({activeView:e}),setPhoneScreen:e=>({phoneScreen:nn(e)}),focusSession:e=>({focusedSessionId:nn(e)}),selectSession:e=>({selectedSessionId:nn(e)}),borrowCard:e=>({borrowedCardId:nn(e)})});function an(e){let t=Object.freeze({...tn,...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 tn))throw Error(`ui-state: unknown key "${r}"`);Object.is(t[r],e[r])||n.push(r)}return n}function o(e,r){let i=rn[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=an(),on=()=>j.snapshot().activeView;function sn(){return j.snapshot().borrowedCardId}function cn(e,t,n,{className:r}={}){if(!e?.card||!n)return;let i=sn();i&&i!==t&&ln();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 ln(){let e=sn();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,Et)),e}var un=[{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`}],dn=1/25,fn=3;function pn(e,t,n){return typeof e!=`number`||!Number.isFinite(e)?t:Math.min(n.max,Math.max(n.min,e))}function mn(e){if(!Array.isArray(e))return[];let t=new Set(un.map(e=>e.sprite));return[...new Set(e.filter(e=>typeof e==`string`&&t.has(e)))]}function hn(e={}){let t=je,n=Be,r=Me,i=pn(e.flyingAnimalsMinGapSeconds,t.flyingAnimalsMinGapSeconds,n),a=pn(e.flyingAnimalsMaxGapSeconds,t.flyingAnimalsMaxGapSeconds,n),o=pn(e.flyingAnimalsMinDurationSeconds,t.flyingAnimalsMinDurationSeconds,r),s=pn(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:pn(e.flyingAnimalsScale,t.flyingAnimalsScale,ke),flyingAnimalsOnPhone:typeof e.flyingAnimalsOnPhone==`boolean`?e.flyingAnimalsOnPhone:t.flyingAnimalsOnPhone,flyingAnimalsExcludedSprites:mn(e.flyingAnimalsExcludedSprites)}}function gn(e){return un.some(t=>!e.includes(t.sprite))}function _n(e,t=-1,n=Math.random){let r=un.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 vn(e,t,n=Math.random,r){let i=r===void 0?_n(e.flyingAnimalsExcludedSprites,t,n):un.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()<dn?fn:1;return{animalIndex:i,durationSeconds:a,gapMs:o,firstDelaySeconds:s,verticalProgress:c,isRightToLeft:l,arcProgress:(n()*2-1)*u}}function yn({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 bn=68,xn=42,Sn=768,Cn=.68,wn=64,Tn=5,En=8,Dn=85;function On(e,t,n){return Math.min(Math.max(e,t),n)}function kn({viewportWidthPx:e,viewportHeightPx:t,verticalProgress:n,isRightToLeft:r=!1,arcProgress:i=0}){let a=On(e/Sn,Cn,1),o=(Tn+70*n*n)*t/100,s=Math.max(o,wn),c=Dn*t/100,l=On(i*En*t/100,wn-s,c-s),u=-.45*e,d=1.45*e;return{scale:a,spriteWidthPx:bn,spriteHeightPx:xn,topPx:s,startXpx:r?d:u,endXpx:r?u:d,facing:r?-1:1,arcPx:l}}function An(e,t){let n=Number.isFinite(t)&&t>0?t:1;return Math.max(1,Math.round(e*n))/n}function jn(e,t,n){let r=An(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 Mn=`chime`,Nn=`custom:`,Pn=`/custom-sounds`,Fn=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`}]}}),In=Object.freeze(Object.entries(Fn).map(([e,t])=>({id:e,label:t.label})));function Ln(e){return`${Nn}${e}`}function Rn(e){return`${Pn}/${encodeURIComponent(e)}`}function zn(e){return e.startsWith(Nn)&&e.slice(7)||null}function Bn(e){let t=(e??[]).map(e=>({id:Ln(e),label:e}));return[...In,...t]}function Vn(e,t){if(typeof e!=`string`)return Mn;if(Object.hasOwn(Fn,e))return e;let n=zn(e);return n&&(t===null||t.includes(n))?e:Mn}function Hn(e){return typeof e!=`object`||!e||!(`sounds`in e)||!Array.isArray(e.sounds)?[]:e.sounds.filter(e=>typeof e==`string`&&e!==``)}function Un(e,t){try{let n=localStorage.getItem(e);return n===null?t:JSON.parse(n)}catch{return t}}function Wn(e,t){try{localStorage.setItem(e,JSON.stringify(t))}catch{}}var Gn=`↑`,Kn=`↓`,qn=`←`,Jn=`→`,Yn=`⌘`,Xn=`⌥`,Zn=Array.from({length:9},(e,t)=>[`Digit${t+1}`,t+1]),Qn=`KeyJ`,$n=new Map([[`Minus`,`-`],[`Equal`,`=`],[`BracketLeft`,`[`],[`BracketRight`,`]`],[`Semicolon`,`;`],[`Quote`,`'`],[`Comma`,`,`],[`Period`,`.`],[`Slash`,`/`],[`Backquote`,"`"],[`Backslash`,`\\`]]),er=new Set([`KeyQ`,`KeyW`,`KeyT`,`KeyN`,`KeyL`,`KeyR`]),tr=new Set([`KeyC`,`KeyV`,`KeyX`,`KeyA`,`KeyZ`]);function nr(e){let t=/^(?:Key|Digit)([A-Z0-9])$/.exec(e);return t?t[1]:$n.get(e)??null}function rr(e){return{action:`next-attention`,keyCaptions:[nr(e)??e],label:`Jump to the next session needing you`,stepByCode:new Map([[e,0]])}}var ir=[{action:`rail-step`,keyCaptions:[Gn,Kn],label:`Previous / next session in the rail`,stepByCode:new Map([[`ArrowUp`,-1],[`ArrowDown`,1]])},{action:`view-step`,keyCaptions:[qn,Jn],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(Zn),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 ar(e,t){return[rr(t),...ir].filter(t=>t.unavailablePlatform!==e)}function or(e){if(nr(e)===null)return`Pick a letter, digit or punctuation key.`;if(er.has(e))return`The browser keeps that shortcut for itself.`;if(tr.has(e))return`That shortcut stays with copy, cut, paste, select all and undo.`;let t=ir.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 sr(e){return typeof e==`string`&&or(e)===null}var cr=new Set([`Meta`,`Alt`,`Control`,`Shift`,`OS`]);function lr(e,t){if(e.key===`Escape`)return{kind:`cancelled`};if(cr.has(e.key))return{kind:`ignored`};let n=t===`mac`?`Cmd`:`Alt`;if(!dr(e,t,rr(e.code)))return{kind:`refused`,reason:`Hold ${n} alone while pressing the key.`};let r=or(e.code);return r?{kind:`refused`,reason:r}:{kind:`recorded`,keyCode:e.code}}function ur(e){return/Mac|iPhone|iPad/.test(e)?`mac`:`other`}function dr(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 fr(e,t,n){return n.isTerminalFocused&&t!==`mac`&&!!e.isShellChord}var pr=new Set([`ArrowUp`,`ArrowDown`,`ArrowLeft`,`ArrowRight`,`PageUp`,`PageDown`]);function mr(e){return pr.has(e.key)?e.key:e.code}function hr(e,t,n={isTerminalFocused:!1},r=Qn){let i=mr(e);for(let a of ar(t,r)){let r=a.stepByCode.get(i);if(r!==void 0&&dr(e,t,a))return fr(a,t,n)?null:{action:a.action,step:r}}return null}function gr(e,t){return t===`focus`||e.action===`quick-session`}function _r(e,t){return e===`mac`?t?.needsMacOption?`${Yn}${Xn}`:Yn:t?.needsShiftOffMac?`Alt+Shift`:`Alt`}function vr(e,t,n){let r=ar(t,n).find(t=>t.action===e);if(!r)throw Error(`Unknown dashboard shortcut: ${e}`);return r}function yr(e,t,n=Qn){let r=vr(e,t,n);return[_r(t,r),r.keyCaptions.join(` `)]}function br(e,t){let[n,r]=yr(e,t);return t===`mac`?`${n}${r}`:`${n}+${r}`}function xr(e){let t=e===`mac`?`Meta`:`Alt`;return`ArrowUp ArrowDown ${t}+ArrowUp ${t}+ArrowDown`}function Sr(e){return e===`mac`?`Cmd+Enter`:`Ctrl+Enter`}function Cr(e,t=Qn){let n=e===`mac`?Yn:`Ctrl`;return[{title:`Dashboard`,items:ar(e,t).map(t=>({combos:t.keyCaptions.map(n=>[_r(e,t),n]),label:t.label}))},{title:`Navigation`,items:[{combos:[[Gn],[Kn]],label:`Move rail highlight (rail focused)`},{combos:[[qn],[Jn]],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 wr=`glimmervoid-ui-prefs`,Tr=`glimmervoid:sidebar-width`,Er=e=>t=>typeof t==`boolean`?t:e,Dr=e=>t=>typeof t==`string`?t:e,Or=e=>typeof e==`string`&&e?e:null,kr=e=>typeof e==`number`&&Number.isFinite(e)?e:null,Ar=e=>t=>kr(t)??e,jr=e=>Array.isArray(e)?[...new Set(e.filter(e=>typeof e==`string`&&e!==``))]:[],Mr={soundEnabled:Er(!0),soundId:Dr(Mn),themeId:Dr(`phyrexian`),flyingAnimalsEnabled:Er(!1),flyingAnimalsMinGapSeconds:Ar(je.flyingAnimalsMinGapSeconds),flyingAnimalsMaxGapSeconds:Ar(je.flyingAnimalsMaxGapSeconds),flyingAnimalsMinDurationSeconds:Ar(je.flyingAnimalsMinDurationSeconds),flyingAnimalsMaxDurationSeconds:Ar(je.flyingAnimalsMaxDurationSeconds),flyingAnimalsScale:Ar(je.flyingAnimalsScale),flyingAnimalsOnPhone:Er(je.flyingAnimalsOnPhone),flyingAnimalsExcludedSprites:mn,notificationsEnabled:Er(!0),sessionUsageChips:Er(!1),phoneArrowPad:Er(!1),nextAttentionKeyCode:e=>sr(e)?e:Qn,activeView:Dr(`focus`),lastFocusedSessionId:Or,railWidth:kr,reviewSidebarExpanded:Er(!1),prsQueueWidth:kr,prsQueueCollapsed:Er(!1),keptProjects:jr,traceHiddenKinds:jr,dismissedUpdate:Or,telemetryNoticeDismissed:Er(!1),radarAttentionAck:Dr(``),prsAttentionAck:Dr(``),prsUnseenRows:Dr(``),usageAttentionAck:Dr(``),visionsAttentionAck:Dr(``)};function Nr(e,t,n){e[t]=Mr[t](n)}function Pr(){let e=Un(wr,{}),t={};for(let n of Object.keys(Mr))Nr(t,n,e?.[n]);return t}function M(e){return Pr()[e]}function N(e,t){let n=Pr();Nr(n,e,t),Wn(wr,n)}var Fr=()=>M(`soundEnabled`),Ir=e=>N(`soundEnabled`,e),Lr=()=>M(`soundId`),Rr=e=>N(`soundId`,e),zr=()=>M(`notificationsEnabled`),Br=e=>N(`notificationsEnabled`,e),Vr=()=>M(`sessionUsageChips`),Hr=e=>N(`sessionUsageChips`,e),Ur=()=>M(`phoneArrowPad`),Wr=e=>N(`phoneArrowPad`,e),Gr=()=>M(`nextAttentionKeyCode`),Kr=e=>N(`nextAttentionKeyCode`,e),qr=()=>M(`themeId`),Jr=e=>N(`themeId`,e),Yr=()=>M(`flyingAnimalsEnabled`),Xr=e=>N(`flyingAnimalsEnabled`,e),Zr=()=>M(`activeView`),Qr=e=>N(`activeView`,e),$r=()=>M(`railWidth`),ei=e=>N(`railWidth`,e),ti=()=>M(`reviewSidebarExpanded`),ni=e=>N(`reviewSidebarExpanded`,e),ri=()=>M(`prsQueueWidth`),ii=e=>N(`prsQueueWidth`,e),ai=()=>M(`prsQueueCollapsed`),oi=e=>N(`prsQueueCollapsed`,e),si=()=>M(`keptProjects`),ci=e=>N(`keptProjects`,e),li=()=>M(`traceHiddenKinds`),ui=e=>N(`traceHiddenKinds`,e),di=()=>M(`dismissedUpdate`),fi=e=>N(`dismissedUpdate`,e),pi=()=>M(`telemetryNoticeDismissed`),mi=e=>N(`telemetryNoticeDismissed`,e),hi=()=>M(`radarAttentionAck`),gi=e=>N(`radarAttentionAck`,e),_i=()=>M(`prsAttentionAck`),vi=e=>N(`prsAttentionAck`,e),yi=()=>M(`prsUnseenRows`),bi=e=>N(`prsUnseenRows`,e),xi=()=>M(`usageAttentionAck`),Si=e=>N(`usageAttentionAck`,e),Ci=()=>M(`visionsAttentionAck`),wi=e=>N(`visionsAttentionAck`,e),Ti=()=>M(`lastFocusedSessionId`),Ei=e=>N(`lastFocusedSessionId`,e),Di=()=>kr(Un(Tr,null)),Oi=e=>Wn(Tr,kr(e)),ki=e=>N(`flyingAnimalsMinGapSeconds`,e),Ai=e=>N(`flyingAnimalsMaxGapSeconds`,e),ji=e=>N(`flyingAnimalsMinDurationSeconds`,e),Mi=e=>N(`flyingAnimalsMaxDurationSeconds`,e),Ni=e=>N(`flyingAnimalsScale`,e),Pi=e=>N(`flyingAnimalsOnPhone`,e),Fi=e=>N(`flyingAnimalsExcludedSprites`,e),Ii=()=>hn(Pr()),Li=()=>{let e=Pr();return Object.fromEntries(Object.keys(je).map(t=>[t,e[t]]))},Ri=()=>Wn(wr,{...Pr(),...je}),zi=kn({viewportWidthPx:1440,viewportHeightPx:900,verticalProgress:0});function Bi(e,t=``){let n=w(`div`,`flying-animal-preview ${t}`.trim());n.setAttribute(`aria-hidden`,`true`),n.style.setProperty(`--nyan-width`,`${zi.spriteWidthPx}px`),n.style.setProperty(`--nyan-height`,`${zi.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 Vi(){let e=_n(Ii().flyingAnimalsExcludedSprites);return e===null?null:un[e]??null}var Hi=[],Ui=new Set;function Wi(e){let t=ie.safeParse(e);if(t.success){Hi=t.data;for(let e of Ui)e()}}function Gi(e){return Hi.find(t=>t.agent===e)??null}function Ki(e){return Ui.add(e),()=>{Ui.delete(e)}}var qi=`modulepreload`,Ji=function(e){return`/`+e},Yi={},Xi=function(e){return e.pathname.endsWith(`.css`)},Zi=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=Ji(t,n);let r=s(t),i=Xi(r);return Zi(Yi,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`:qi,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)})},Qi=null,$i=null,ea=!1,ta=null;function na(){return $i??=P(()=>import(`./first-run-checklist-j-DNxANV.js`).then(e=>(Qi=e,e),e=>($i=null,T(`first-run`,`first-run checklist failed to load: ${Ye(e)}`),null)),__vite__mapDeps([0,1,2,3,4,5])),$i}function ra(e,t){ta={host:e,isShown:t},Qi?Qi.showFirstRunChecklist(e,t):t&&ea&&na().then(e=>{e&&ta&&e.showFirstRunChecklist(ta.host,ta.isShown)})}function ia(){Qi?.refreshFirstRunChecklist()}function aa(){ea=!0,ta&&ra(ta.host,ta.isShown)}var oa=new Map;function sa(e){return oa.get(e)??[]}function ca(e){return sa(e).length>0}function la(e){k(e)?.btnDocs.classList.toggle(`visible`,ca(e))}var ua=null,da=null;function fa(){return da??=P(()=>import(`./doc-editor-ui-BFGY3Mip.js`).then(e=>(ua=e,e),e=>(da=null,T(`doc-editor`,`doc editor failed to load: ${Ye(e)}`),null)),__vite__mapDeps([6,1,2,3,4,7,8])),da}function pa(e){fa().then(t=>t?.openDocEditor(e))}function ma(e){ua?.applyDocsToOpenEditor(e)}function ha(e){oa.set(e.id,e.docs),e.docs.length===0&&oa.delete(e.id),la(e.id),ma(e.id)}function ga(e){let t=[...oa.keys()];oa.clear();for(let[t,n]of Object.entries(e.sessions))oa.set(t,n);for(let e of new Set([...t,...oa.keys()]))la(e),ma(e)}var _a=new Map,va=new Set,ya=[],ba=[],xa=null,Sa=null,Ca=!1;function wa(e){return _a.get(e)??[]}function Ta(e){return wa(e).length>0}function Ea(e){return va.has(e)}function Da(e){ya.push(e)}function Oa(e){ba.push(e)}function ka(e){let t=k(e);t&&(t.btnShown.classList.toggle(`visible`,Ta(e)),t.shownUnopenedDot.hidden=!Ea(e))}function Aa(e){if(va.delete(e)){ka(e);for(let t of ya)t(e,[])}}function ja(){return Sa??=P(()=>import(`./shown-lightbox-D3coKoM9.js`).then(e=>(xa=e,e),e=>(Sa=null,T(`shown-files`,`shown file viewer failed to load: ${Ye(e)}`),null)),__vite__mapDeps([9,1,7,10])),Sa}function Ma(e,t=null){Ta(e)&&ja().then(n=>n?.openShownLightbox(e,t))}function Na(e){return e.slice(-50)}function Pa(e,t){if(t.length===0)return;let n=xa?.isLightboxOpenOn(e)??!1;n||va.add(e),ka(e),n&&xa?.repaintLightboxOn(e);for(let n of ya)n(e,t)}function Fa(e){let t=new Set(wa(e.id).map(e=>e.id)),n=e.files.filter(e=>!t.has(e.id));if(_a.set(e.id,Na([...wa(e.id),...n])),Pa(e.id,n),n.length!==0)for(let t of ba)t(e.id,n)}function Ia(e){let t=new Map(_a),n=Ca;Ca=!0,_a.clear();for(let[t,n]of Object.entries(e.sessions))_a.set(t,Na(n));for(let e of new Set([...t.keys(),..._a.keys()])){Ta(e)||va.delete(e);let r=new Set((t.get(e)??[]).map(e=>e.id)),i=n?wa(e).filter(e=>!r.has(e.id)):[];ka(e),Pa(e,i),xa?.repaintLightboxOn(e)}}function La({dialogClass:e,titleText:t,titleId:n,body:r,onCloseRequest:i}){let a=Pt({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),Ft(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 Ra({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=lt(e),m=La({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 za=2,Ba={needsYou:1,broken:2,askedOfYou:3,waiting:4,settled:5},Va={danger:Ba.broken,warn:Ba.askedOfYou,wait:Ba.waiting,ok:Ba.settled,muted:Ba.settled};function Ha(e){return e?Va[e]:Ba.settled}function Ua(e){let t=[...e].sort((e,t)=>e.tier-t.tier),n=t.slice(za);return{visible:t.slice(0,za),overflowCount:n.length,overflowHoverText:n.map(e=>`${e.text} ${e.hoverText}`).join(`
|
|
3
3
|
`)}}function Wa(e){return e.map(e=>[e.key,e.text,e.hoverText,e.look?.icon,e.look?.tone,e.tier].join(`|`)).join(`
|
|
4
|
-
`)}var Ga={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 Ka(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:Ba.broken}]}function qa(e){let t=Ee.safeParse(e.kind);return{heading:`${t.success?Ga[t.data]:e.kind} | ${e.at??`Unknown time`} | ${e.id}`,text:e.text,detail:e.detail,supersedes:e.supersedes?`Supersedes: ${e.supersedes}`:null}}function Ja(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 Ya=new Map,Xa=new Map,Za=Ra({requestPrefix:`coherence-journal`,dialogClass:`dialog coherence-journal-drawer`,titleText:`Coherence journal`,unavailableLabel:`Journal unavailable`,timeoutMs:5e3});function Qa(e,t){Xa.delete(e),t&&Xa.set(e,t),io(e)}function $a(e){Ya.delete(e),Xa.delete(e);let t=Za.currentPanel();t?.sessionId===e&&t.close()}function eo(e){let t=Ya.get(e.id);t&&t.updatedAt>e.updatedAt||(Ya.set(e.id,e),io(e.id))}function to(e){Ya.clear();for(let[t,n]of Object.entries(e.sessions))Ya.set(t,n);let t=Za.currentPanel();t&&io(t.sessionId)}function no(e){return Ka(Xa.get(e)??null).map(t=>({...t,onActivate:()=>ao(e)}))}function ro(e){return Ya.get(e)?.journal.ok===!0}function io(e){let t=Za.currentPanel();if(!t||t.sessionId!==e)return;let n=Ja(Xa.get(e)??null,Ya.get(e)??null);t.parts.reading.replaceChildren(...n.lines.map(e=>w(`p`,null,e)))}function ao(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`);Za.open({sessionId:e,status:n,body:[t,n,r],parts:{reading:t,entries:r},paintBeforeRequest:()=>io(e),buildRequest:t=>({type:`session-coherence-journal`,id:e,requestId:t})})}function oo(e){let t=Za.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=qa(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 so=new Set([`http:`,`https:`]);function co(e){let t;try{t=new URL(e)}catch{return null}return so.has(t.protocol)?t.href:null}var lo=/\bElectron\/\d/,uo=new Set([`localhost`,`127.0.0.1`]);function fo(e){return lo.test(e)}function po({userAgent:e,pageHostname:t}){return fo(e)&&uo.has(t)}function mo(e){return co(e)!==null}var ho=new Set([0,1]);function go({button:e,opensInNewTab:t}){return t&&ho.has(e)}function _o(){return po({userAgent:navigator.userAgent,pageHostname:location.hostname})}function vo(e){window.open(e,`_blank`,`noopener,noreferrer`)}async function yo(e){try{let t=await at();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 bo(e){!_o()||!mo(e)?vo(e):yo(e).then(t=>{t||vo(e)})}function xo(e){if(e.defaultPrevented)return;let t=e.target instanceof Element?e.target.closest(`a[href]`):null;t instanceof HTMLAnchorElement&&go({button:e.button,opensInNewTab:t.target===`_blank`})&&mo(t.href)&&(e.preventDefault(),bo(t.href))}function So(e){_o()&&(e.addEventListener(`click`,xo,!0),e.addEventListener(`auxclick`,xo,!0))}var Co=`#c084fc`,wo=Object.freeze({failed:{icon:Fe[x.FAILED],color:`#ef4444`},waiting:{icon:Fe[x.WAITING],color:`#f59e0b`}});function To({waitingCount:e,failedCount:t}){return e>0?`waiting`:t>0?`failed`:`idle`}function Eo(e){return Ke[e].map(({tag:e,attributes:t})=>`<${e} ${Object.entries(t).map(([e,t])=>`${e}="${t}"`).join(` `)}/>`).join(``)}function Do(e){if(e===`idle`)return`<path d="M10 8 L22 16 L10 24Z" fill="${Co}"/>`;let{icon:t,color:n}=wo[e];return`<g color="${n}" transform="translate(4 4) scale(1.5)">${Eo(t)}</g>`}function Oo(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"/>${Do(e)}</svg>`}function ko(){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 Ao=ko(),jo=`idle`;function Mo(e){let t=To(e);t!==jo&&(jo=t,Ao.href=`data:image/svg+xml,${encodeURIComponent(Oo(t))}`)}function No(e,t){return Number.isFinite(e)?Math.round(Math.min(t.maxPx,Math.max(t.minPx,e))):null}function Po(e,t){return e===`ArrowRight`?t:e===`ArrowLeft`?-t:null}function Fo({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=No(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=Po(e.key,a);if(n===null)return;e.preventDefault();let r=u(t.getBoundingClientRect().width+l*n);r!==null&&s(r)})}var Io=new Set,Lo=!1,Ro=()=>{};function zo(e){Ro=e}function Bo(e){Io.add(e),!Lo&&(Lo=!0,requestAnimationFrame(Vo))}function Vo(){if(Lo=!1,Io.size===0)return;let e=new Set(Io);Io.clear(),Ro(e)}document.addEventListener(`visibilitychange`,()=>{document.hidden||Vo()});function Ho(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 Uo(e,t){let n=new Map;Array.from(e.children).forEach((e,t)=>{n.set(e,t)});let r=Ho(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 Wo(e,t){e.hidden!==t&&(e.hidden=t)}function I(e,t,n){e.getAttribute(t)!==n&&e.setAttribute(t,n)}function Go(e,t,n){e.dataset[t]!==n&&(e.dataset[t]=n)}var Ko=`http://www.w3.org/2000/svg`;function qo(e,t){let n=document.createElementNS(Ko,e);for(let[e,r]of Object.entries(t))n.setAttribute(e,r);return n}function Jo(e,t){let n=document.createElementNS(Ko,`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 Yo=`M4 4L12 12M12 4L4 12`,Xo=`M10 3L5 8L10 13`,Zo=`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`,Qo=`M3 4h10M3 8h10M3 12h10`,$o=`M3 8h0.01M8 8h0.01M13 8h0.01`,es=`M8 2.5v6M5 5.5h6M5 12.5h6`,ts=`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`,ns=`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`,rs=`${ns}M2 2l12 12`,is=`M9.2 1.5L3.5 9h4.3l-1 5.5L12.5 7H8.2z`,as=`M8.7 4.2L5.6 8.6h2.5l-.6 3.2l3.1-4.4H8.1z`,os=`M3 13V9M8 13V3M13 13V6.5`;function L(e,t=`2`){let n=Jo(16,16);return n.classList.add(`line-icon`),n.append(qo(`path`,{d:e,fill:`none`,stroke:`currentColor`,"stroke-width":t,"stroke-linecap":`round`,"stroke-linejoin":`round`})),n}function ss(e,t){let{class:n,...r}=t,i=Jo(16,16);return n!==void 0&&i.classList.add(n),i.append(qo(e,r)),i}function cs(e){let t=document.createElement(`span`);t.className=`status-icon`,t.dataset.icon=e;for(let n of Ke[e])t.append(ss(n.tag,n.attributes));return t}function ls(e,t){e.dataset.icon!==t&&(e.dataset.icon=t,e.replaceChildren(cs(t)))}var us={busy:`text-text-muted`,ok:`text-state-done`,error:`text-state-failed`},ds=15e3,fs=`Something went wrong. Details are hidden in streamer mode.`;function ps(e,t){return e!==`error`||t.startsWith(`Not connected to the server. Reconnecting.`)?t:document.documentElement.hasAttribute(`data-streamer`)?fs:t}var ms={busy:`working`,ok:`complete`,error:`failed`};function hs(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 gs(e){e.replaceChildren(),delete e.dataset.tone}function _s(e,t,n){if(!n){gs(e);return}if(!t){gs(e),e.textContent=n;return}e.dataset.tone=t;let{iconElement:r,textElement:i}=hs(e);ls(r,ms[t]),i.textContent=ps(t,n)}function vs(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 ${us[n]}`,_s(t,n,r),t.hidden=!r},clear:()=>{t.hidden=!0,gs(t)}}}function ys(e,t){return E(e)?!0:(t.show(`error`,b),!1)}function bs(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 xs(e,t,n,{busyText:r,timeoutMs:i=ds}={}){r&&n.show(`busy`,r);try{let r=await et(e,t,{timeoutMs:i});return n.clear(),r}catch(e){return n.show(`error`,bs(e,i)),null}}var Ss=null,Cs=3e4,ws=null;function Ts(){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`,ks)),{line:e,text:t,age:n})}function Es(){let e=Ts();if(!e||!Ss)return;let t=g(Date.now()-Ss.raisedAt,{...ne,justNowBelowSeconds:60});e.age.textContent!==t&&(e.age.textContent=t)}function R({source:e,sessionId:t,message:n,hidesInStreamerMode:r=!0}){$e(e,n);let i=Ts();if(!i)return;let a=r?ps(`error`,n):n,o=w(`strong`,`header-status-source`,e);i.text.replaceChildren(o,` ${a}`),i.text.title=`${e}: ${a}`,Ss={source:e,sessionId:t??null,raisedAt:Date.now()},Es(),ws??=window.setInterval(Es,Cs),i.line.hidden=!1}function Ds(e,t){Ss?.source===e&&(t===void 0||Ss.sessionId===t)&&ks()}function Os(e){Ss?.sessionId===e&&ks()}function ks(){Ss=null,ws!==null&&window.clearInterval(ws),ws=null;let e=Ts();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 As={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 js(e,t,n){return e<0?t>0?0:n-1:((e+t)%n+n)%n}function Ms(e,t,n,r){if(n===0)return null;if(e===`Home`)return 0;if(e===`End`)return n-1;let i=As[r].get(e);return i===void 0?null:js(t,i,n)}function Ns(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 Ps(e){return e.key===`ArrowDown`||e.key===`ArrowUp`}function Fs(e,t){let n=document.activeElement,r=n instanceof HTMLElement?e.indexOf(n):-1,i=Ms(t.key,r,e.length,`vertical`);i!==null&&e[i].focus()}function Is(e){return e.key===`Home`||e.key===`End`}function Ls(e){return e.metaKey||e.altKey||e.ctrlKey}function Rs(e,t,n){let r=e.relatedTarget;return r instanceof Node&&!t.contains(r)&&!n.contains(r)}function zs({trigger:e,menu:t,menuItems:n,isOpen:r,open:i,close:a,signal:o}){function s(e){e.preventDefault(),e.stopPropagation(),r()||i(),Fs(n(),e)}e.addEventListener(`keydown`,e=>{!Ls(e)&&Ps(e)&&s(e)},{signal:o}),t.addEventListener(`keydown`,e=>{Ls(e)||(Ps(e)||Is(e))&&s(e)},{signal:o}),document.addEventListener(`keydown`,t=>{t.key!==`Escape`||t.defaultPrevented||!r()||Mt()||(t.preventDefault(),a(),e.focus())},{signal:o});for(let n of[e,t])n.addEventListener(`focusout`,n=>{r()&&Rs(n,t,e)&&a()},{signal:o})}var Bs=`hover-tip`,Vs=`[data-tip-label]`,Hs=6,Us=8,Ws=null,Gs=null;function Ks(e){return e instanceof Element?e.closest(Vs):null}function qs(){return Ws||(Ws=w(`div`,`hover-tip`),Ws.id=Bs,Ws.setAttribute(`role`,`tooltip`),Ws.hidden=!0,document.body.append(Ws),Ws)}function Js(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 Ys(e,t){let n=t.getBoundingClientRect(),r=e.offsetWidth,i=window.innerWidth-r-Us,a=Math.max(Us,Math.min(n.right-r,i));e.style.left=`${a}px`,e.style.top=`${n.bottom+Hs}px`}function Xs(e){let t=qs();Gs&&Gs!==e&&Gs.removeAttribute(`aria-describedby`),Gs=e,Js(t,e),t.hidden=!1,Ys(t,e),e.setAttribute(`aria-describedby`,Bs)}function Zs(){Gs&&(Gs.removeAttribute(`aria-describedby`),Gs=null,Ws&&(Ws.hidden=!0))}function Qs(e){Gs===e&&(!e.dataset.tipLabel||!e.isConnected?Zs():Xs(e))}var $s=!1;function ec(){$s||($s=!0,document.addEventListener(`pointerover`,e=>{let t=Ks(e.target);t?Xs(t):Zs()}),document.addEventListener(`pointerout`,e=>{Gs&&(e.relatedTarget instanceof Node&&Gs.contains(e.relatedTarget)||Zs())}),document.addEventListener(`focusin`,e=>{let t=Ks(e.target);t?Xs(t):Zs()}),document.addEventListener(`focusout`,Zs),document.addEventListener(`pointerdown`,Zs),document.addEventListener(`scroll`,Zs,!0),document.addEventListener(`keydown`,e=>{e.key===`Escape`&&Zs()}))}var tc=new WeakMap;function nc(e){let t=tc.get(e);if(t?.element.parentElement===e.card)return t;let n=t??vs(`session-action-status m-0 px-3 py-1`);return e.termWrap.before(n.element),tc.set(e,n),n}function rc(e,t){let n=nc(e);return ys(t,n)?(n.clear(),!0):!1}var ic=!1,ac=new Set;function oc(e){ic=!!e,Vc();for(let e of ac)e(ic)}function sc(e){return ac.add(e),()=>ac.delete(e)}function cc(){return ic}var lc=null;function uc(e){lc=e}var dc=null;function fc(e){dc=e}var pc=null;function mc(e){pc=e}function hc(e,t){let n=w(`span`,`tag-icon ${e}`);return n.tabIndex=0,n.setAttribute(`role`,`img`),n.setAttribute(`aria-label`,t),n}function gc(e){let t=Jo(16,16);return t.classList.add(`line-icon`),t.append(qo(`path`,{d:e,fill:`currentColor`})),t}function _c(){let e=L(ns,`1.5`);return e.append(qo(`path`,{d:as,fill:`currentColor`})),e}function vc(e){return`Runs in Coder workspace ${e}`}function yc(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?_c():gc(is)),Qs(e)}function bc(e,t){t&&(e.dataset.saneYolo=``),t||delete e.dataset.saneYolo;let n=e.querySelector(`.perms-badge`);n&&yc(n,t)}function xc(e,t){let n=k(e);n&&bc(n.card,t)}function Sc(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?hc(`perms-badge`,`YOLO`):null;c&&yc(c,r.saneYolo===!0);let l=w(`span`,`session-task-title`);Oc(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($o)),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=Ns(`Restart...`,`Into this conversation, a fresh one, or an earlier one`,`overflow-restart`);m.setAttribute(`aria-haspopup`,`dialog`);let h=Ns(`Edit repositories...`,`Add or remove repositories in this workspace`,`overflow-workspace-repos`),g=Ns(`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`),wc(_,a),g.onclick=()=>{p.classList.remove(`open`),f.setAttribute(`aria-expanded`,`false`),Tc(e)};let v=Ns(`Coherence journal`,`Decisions and notes this session recorded`,`overflow-coherence-journal`);v.setAttribute(`aria-haspopup`,`dialog`);let ee=()=>v.classList.toggle(`visible`,dc?.isReadable(e)===!0);f.onclick=ee,f.onkeydown=ee,v.onclick=()=>{p.classList.remove(`open`),f.setAttribute(`aria-expanded`,`false`),dc?.open(e)};let te=Ns(`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`),pc?.(e)},p.append(m,h,v,te,g),d.append(f,p);let ne=w(`button`,`btn-action btn-debug`);ne.append(L(Zo)),ne.title=`Debug state`,ne.setAttribute(`aria-label`,`Debug session state`);let re=w(`button`,`btn-action btn-trace`);re.append(L(Qo)),re.type=`button`,re.title=`Trace`,re.setAttribute(`aria-label`,`Trace`);let y=w(`button`,`btn-action btn-remove visible`);y.append(L(Yo)),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=hc(`usage-badge`,`Usage`);le.append(L(os,`2.2`)),c&&ce.append(c),ce.append(_,le),ec();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 Cc={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 wc(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?Cc.on:Cc.released}${r?i:``}`,e.replaceChildren(L(n?ns:rs,`1.6`)),Qs(e)}function Tc(e){let{dialog:t,close:n,actions:r,btnCancel:i}=Nt({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,lc?.(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 Ec(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 Dc(e,t){let n=e.querySelector(`.session-ownership`);n&&(F(n,t??``),Wo(n,t===null))}function Oc(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 kc(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&&rc(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),Oc(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 Ac=`session-rename-input`;function jc(e){return!!e?.querySelector(`.${Ac}`)}function Mc(e,t,{returnsFocusToTerminal:n=!0}={}){let r=e.renameTargetEl?.isConnected?e.renameTargetEl:e.nameEl;if(!r||jc(r))return;let i=e.card?.dataset.session??r.textContent??``,a=document.createElement(`input`);a.type=`text`,a.className=Ac,a.value=i,a.maxLength=64,r.textContent=``,r.appendChild(a),a.focus(),a.select();let o=nc(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()):rc(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 Nc(){let e=w(`button`,`debug-close`);return e.type=`button`,e.title=`Close`,e.setAttribute(`aria-label`,`Close debug overlay`),e.append(L(Yo)),e}function Pc(e){return e?o(new Date(e)):`-`}function Fc(e){return`${(Number(e||0)/1e3).toFixed(1)}s`}function Ic(e){return e.decision===`gated`?`(${Number(e.active)||0} bg)`:e.decision===`wait`||e.decision===`release`?`(quiet ${Fc(e.quietMs)})`:``}function Lc(e){let t=`<span class="debug-dim">${Pc(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=Ic(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 Rc(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">${Pc(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 ${Fc(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">${Lc(e)}</div>`;r+=`</div>`,e.debugOverlay.innerHTML=r,e.debugOverlay.prepend(Nc())}function zc(e,t){if(e.debugOpen){Bc(e);return}let n=document.createElement(`div`);n.className=`debug-overlay`,n.innerHTML=`<div class="debug-field debug-dim">Loading...</div>`,n.prepend(Nc()),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`)&&Bc(e)}),E({type:`debug-state`,id:t})}function Bc(e){e.debugOverlay&&=(e.debugOverlay.remove(),null),e.debugOpen=!1}function Vc(){for(let[,e]of O)e.btnDebug.classList.toggle(`visible`,ic),e.btnTrace.classList.toggle(`visible`,ic),!ic&&e.debugOpen&&Bc(e)}function Hc(e){let t=typeof e.id==`string`?O.get(e.id):void 0;t?.debugOpen&&Rc(t,e.payload)}function Uc(e){k(e)?.debugOpen&&E({type:`debug-state`,id:e})}var Wc={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 Gc(e,t){let n=Jo(16,16);return n.classList.add(`pr-status-icon`),t&&(n.dataset.tone=t),n.append(qo(`path`,{d:Wc[e],fill:`currentColor`})),n}function Kc(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(Gc(e.look.icon,e.look.tone))),o.append(e.text),i&&qc(o,i,!n),o}function qc(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 Jc(e){e.removeAttribute(`tabindex`),e.removeAttribute(`role`)}function Yc(e,t){if(e.closest(`button, a[href]`))for(let e of t){Jc(e);for(let t of e.querySelectorAll(`[role="button"]`))Jc(t)}}function Xc(e){if(e.overflowCount===0)return null;let t=w(`span`,`signal-overflow`,`+${e.overflowCount}`);return t.title=e.overflowHoverText,t}function Zc(e,t,n=e=>Kc(e,e)){let r=Wa(t);if(e.dataset.signalSignature===r)return;e.dataset.signalSignature=r;let i=Ua(t),a=i.visible.map(n),o=Xc(i);o&&a.push(o),Yc(e,a),e.hidden=a.length===0,e.replaceChildren(...a)}var Qc=[],$c=`plan`,el={parked:{text:`PARKED`,hoverText:`Merge parked`,look:{icon:`failed`,tone:`danger`},tier:Ba.broken},merging:{text:`MERGING`,hoverText:`Merging`,look:{icon:`queued`,tone:`wait`},tier:Ba.waiting}};function tl(e){Qc.push(e)}function nl(e){let t=el[e];return t?[{...t,key:`merge`}]:[]}function rl(e){let t=e.closest(`.session-row`),n=t?.dataset.id;t&&n&&Zc(e,[...nl(t.dataset.merge??``),...Qc.flatMap(e=>e(n))])}function il(){for(let e of document.querySelectorAll(`.session-row-signals`))rl(e)}function al(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 ol(e,t){let n=w(`div`,`session-row-item`),r=w(`button`,`session-row-remove`);return r.append(L(Yo)),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 sl(e,t,n,r=!1,i=null){Go(e,`state`,n),Go(e,`prompt`,i??``);let{icon:a,label:o,isMonitoring:s}=We(n,r),c=i===$c?`Plan ready`:o;return e.toggleAttribute(`data-monitoring`,s),ls(t.glyph,a),F(t.label,c),c}function cl(e,t){return Wo(e,!t),t?(e.title=vc(t),e.firstChild||e.append(L(ts)),e.title):null}function ll(e){let t=e.ownerId?O.get(e.ownerId):void 0,n=t?_t(t):null,r=A.ownedCountByOwnerId.get(e.card.dataset.id??``)??0;return bt({ownerName:n,ownedCount:r})}function ul(e,t,n){let r=ll(n);return F(t.ownership,r??``),Wo(t.ownership,r===null),e.closest(`.session-row-item`)?.toggleAttribute(`data-owned`,n.ownerId!==null&&O.has(n.ownerId)),Dc(n.card,r),r}function dl(e){return e===null?null:e===1?`next up`:`#${e} in line`}function fl(e,t,n){Wo(t,n===null),F(t,n===null?``:String(n)),e.toggleAttribute(`data-attention-head`,n===1)}function pl(e,t,{ui:n,state:r,name:i,mergeStatus:a,attentionPosition:o}){let s=sl(e,t,r,n.awaitingBackgroundTasks,n.pendingPromptKind);F(t.name,i);let c=cl(t.cloud,n.card.dataset.remoteWorkspace);F(t.task,n.taskTitle??``),Wo(t.task,!n.taskTitle||n.taskTitle===i),Go(e,`merge`,a),rl(t.signals),Go(e,`activity`,n._activity||``),F(t.elapsed,Vt(n));let l=ul(e,t,n);fl(e,t.attentionTab,o);let u=[i,c,n.taskTitle,s,l,dl(o)].filter(Boolean).join(`, `);return I(e,`aria-label`,u),I(e,`title`,u),s}var ml={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.`}},hl=(e,t,n=!1)=>({state:e,awaitingBackgroundTasks:n,label:n?`Monitoring`:Ne[e],meaning:t}),gl=Object.freeze([hl(x.DORMANT,`Not started yet.`),hl(x.STARTING,`Setting up the worktree and booting the agent.`),hl(x.RUNNING,`The agent is mid-turn.`),hl(x.RUNNING,`The turn ended but background tasks or sub-agents are still running.`,!0),hl(x.WAITING,`Waiting on a permission prompt or your answer.`),hl(x.COMPLETE,`Finished a turn you have not looked at yet.`),hl(x.IDLE,`Ready for the next prompt.`),hl(x.DONE,`The agent process ended.`),hl(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 _l(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 vl(e,t){let n=w(`div`,`status-legend-row`);return n.append(e,w(`dd`,`status-legend-meaning`,t)),n}function yl(){return _l(`Status colors`,gl.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=vl(t,e.meaning);return sl(i,{glyph:n,label:r},e.state,e.awaitingBackgroundTasks),i}))}function bl(){return _l(`Pull request icons`,Object.keys(ml).map(e=>{let t=ml[e],n=w(`dt`,`status-legend-badge`);return n.append(Gc(e),w(`span`,`status-legend-name`,t.label)),vl(n,t.meaning)}))}var xl=new Set(si());function Sl(){ci([...xl])}function Cl(e){if(!e)return;let t=String(e);xl.has(t)||(xl.add(t),Sl())}function wl(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),Cl(i)}return[...xl].filter(e=>!n.has(e))}function Tl(e){return!e||!xl.delete(String(e))?!1:(Sl(),!0)}function El(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 Dl({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 Ol(e,t){if(!e)return null;let n=t.get(e);return!n||(n.currentState||x.DORMANT)===x.DORMANT?null:e}function kl(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 Al(e,t){let n=0;for(let r of t)kl(r,e)&&n++;return n}function jl(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 Ml(){let e=[];for(let[,t]of O)e.push(t.card.dataset.session??``);return e}function Nl(e){return Al(e,Ml())}function Pl(e){return jl(e??``,Ml())}function B(){return j.snapshot().selectedSessionId}function Fl(e){j.dispatch(`selectSession`,e)}function Il(e){return j.subscribe((t,n)=>{n.includes(`selectedSessionId`)&&e(t.selectedSessionId)})}function Ll(e,t=`explicit-state`){let n=O.get(e);if(!n)return null;let r=El(n.currentState,t);return r&&rc(n,{type:r,id:e}),n}function Rl(e,{rememberFocus:t=!0}={}){Fl(e),t&&Ei(e)}function zl(){return Ol(Ti(),O)}function Bl(e=_t){let t=[...O];return wt(t,e)}function Vl(e,t){let n=O.get(e);return n?rc(n,t):E(t)?!0:(R({source:`Session action`,sessionId:e,message:`${b} Try the action again once the header shows Connected.`}),!1)}var Hl=`Add session`;function Ul(e){return e.type===`add-session-result`&&e.error?e.error:e.type===`error`?e.message:`The session was not added.`}var Wl=!1;function Gl(e){Wl||(Wl=!0,P(()=>import(`./dialogs-BHybHLEU.js`).then(t=>{Wl=!1,e(t)},()=>{Wl=!1,R({source:Hl,message:`The Add session dialog did not load. Reload the page, then add the session again.`})}),__vite__mapDeps([11,3,4,1,2,7,12,13,5,10])))}function Kl(){Gl(e=>e.createAddSessionDialog())}async function ql(e,t){try{let n=Pl(t),r=await et(`add-session`,{name:n,path:e},{timeoutMs:ds});if(r.type===`add-session-result`&&r.ok){Ds(Hl);return}R({source:Hl,message:Ul(r)})}catch(e){R({source:Hl,message:`The session was not added: ${bs(e,ds)} Add it again once the server answers.`})}}function Jl(e,t){e&&ql(e,t)}async function Yl(e,t){try{let n=await et(`quick-session`,{id:e},{timeoutMs:ds});if(n.type===`add-session-result`&&n.ok){Ds(Hl),n.sessionId&&t(n.sessionId);return}R({source:Hl,sessionId:e,message:Ul(n)})}catch(t){R({source:Hl,sessionId:e,message:`The session was not added: ${bs(t,ds)} Add it again once the server answers.`})}}function Xl(e,t){Yl(e,t)}var Zl=39e5,Ql=`Remove session`;async function $l(e,t,n,r=[]){try{let i=await et(`remove-session`,{id:t,discardWork:n,confirmedKeptPaths:r},{timeoutMs:Zl});if(i.type!==`remove-session-result`||i.ok)return;if(!i.canDiscardWork){R({source:Ql,sessionId:t,message:`"${_t(e)}" was not removed: ${i.error??`the server gave no reason`}. Try Remove again from its actions menu.`});return}jt({title:`Remove Session`,message:i.error??`Remove session "${_t(e)}"?`,confirmLabel:`Remove`,danger:!0,onConfirm:()=>{$l(e,t,!0,(i.keptPaths??[]).map(e=>e.path))}})}catch(n){R({source:Ql,sessionId:t,message:`"${_t(e)}" was not removed: ${bs(n,Zl)} Try Remove again from its actions menu.`})}}function eu(e){let t=O.get(e);t&&$l(t,e,!1)}var tu=Object.freeze({[x.IDLE]:`compaction_restore_idle`,[x.COMPLETE]:`compaction_restore_complete`,[x.WAITING]:`compaction_restore_waiting`});function nu(e){return Object.values(tu).some(t=>t===e)}var ru=22,iu={image:`Image`,video:`Video`,page:`Page`},au=new WeakMap;function ou(e){let t=e.registerMarker(0);if(!t)return null;let n=au.get(e);if(n&&!n.marker.isDisposed&&n.marker.line===t.line)return t.dispose(),n;let r={marker:t,chipCount:0};return au.set(e,r),r}function su(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`,iu[t.kind])),n.append(w(`span`,`shown-chip-name`,t.pageTitle??t.name)),n.addEventListener(`click`,n=>{n.stopPropagation(),Ma(e,t.id)}),n}function cu(e,t,n){let r=ou(e);if(!r)return;let i=e.registerDecoration({marker:r.marker,anchor:`right`,x:r.chipCount*ru,width:ru,layer:`top`});if(!i)return;r.chipCount+=1;let a=su(t,n);i.onRender(e=>{e.contains(a)||e.replaceChildren(a),e.classList.add(`shown-chip-slot`)})}function lu(e,t){let n=k(e)?.term;if(n)for(let r of t)cu(n,e,r)}var uu=`(max-width: 768px)`,du=`(pointer: coarse)`;function fu({coarse:e,narrowWidth:t}={}){return e===!0&&t===!0?`phone`:`desktop`}var pu=window.matchMedia?.(du),mu=window.matchMedia?.(uu);function hu(){return fu({coarse:!!pu?.matches,narrowWidth:!!mu?.matches})}function gu(e){document.documentElement.dataset.layout!==e&&(document.documentElement.dataset.layout=e)}function _u(){j.subscribe((e,t)=>{t.includes(`layout`)&&gu(e.layout)});let e=hu();gu(e),j.dispatch(`setLayout`,e);let t=()=>j.dispatch(`setLayout`,hu());return pu?.addEventListener?.(`change`,t),mu?.addEventListener?.(`change`,t),e}function vu(){return j.snapshot().layout===`phone`}function yu(e){return j.subscribe((t,n)=>{n.includes(`layout`)&&e(t.layout)})}function bu(e){if(!e)return 0;let t=0;return e.listenerMismatch&&t++,e.orphanPty&&t++,e.destroyedReachable&&t++,t}function xu(e,t){return e||bu(t)>0}var Su={DORMANT:`DOR`,INITIALIZING:`INI`,STARTING:`STA`,RUNNING:`RUN`,WAITING:`WAI`,IDLE:`IDL`,COMPLETE:`CMP`,DONE:`DON`,FAILED:`FAI`},Cu=null,wu=!1,Tu=!1,Eu=null,Du=null,Ou=null,ku=`—`;function Au(e){return e==null?ku:te(e,`GB`)}function ju(e){return e==null?ku:he(e,{smallestUnit:`s`,dropsZeroRemainder:!1})}function Mu(e){return e==null?ku:`${ju(Math.max(0,Math.round((Date.now()-e)/1e3)))} ago`}function Nu(){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`,()=>{Tu=!Tu,e.dataset.expanded=String(Tu),n.setAttribute(`aria-expanded`,String(Tu)),a.hidden=!Tu,Tu&&(E({type:`request-health-snapshot`}),Fu())}),e.append(t,a),Eu=e,Du=i,Ou=a,e}function Pu(){if(!Du||!Cu)return;let e=Cu,t=bu(e.anomalies);Du.innerHTML=`
|
|
4
|
+
`)}var Ga={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 Ka(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:Ba.broken}]}function qa(e){let t=Ee.safeParse(e.kind);return{heading:`${t.success?Ga[t.data]:e.kind} | ${e.at??`Unknown time`} | ${e.id}`,text:e.text,detail:e.detail,supersedes:e.supersedes?`Supersedes: ${e.supersedes}`:null}}function Ja(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 Ya=new Map,Xa=new Map,Za=Ra({requestPrefix:`coherence-journal`,dialogClass:`dialog coherence-journal-drawer`,titleText:`Coherence journal`,unavailableLabel:`Journal unavailable`,timeoutMs:5e3});function Qa(e,t){Xa.delete(e),t&&Xa.set(e,t),io(e)}function $a(e){Ya.delete(e),Xa.delete(e);let t=Za.currentPanel();t?.sessionId===e&&t.close()}function eo(e){let t=Ya.get(e.id);t&&t.updatedAt>e.updatedAt||(Ya.set(e.id,e),io(e.id))}function to(e){Ya.clear();for(let[t,n]of Object.entries(e.sessions))Ya.set(t,n);let t=Za.currentPanel();t&&io(t.sessionId)}function no(e){return Ka(Xa.get(e)??null).map(t=>({...t,onActivate:()=>ao(e)}))}function ro(e){return Ya.get(e)?.journal.ok===!0}function io(e){let t=Za.currentPanel();if(!t||t.sessionId!==e)return;let n=Ja(Xa.get(e)??null,Ya.get(e)??null);t.parts.reading.replaceChildren(...n.lines.map(e=>w(`p`,null,e)))}function ao(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`);Za.open({sessionId:e,status:n,body:[t,n,r],parts:{reading:t,entries:r},paintBeforeRequest:()=>io(e),buildRequest:t=>({type:`session-coherence-journal`,id:e,requestId:t})})}function oo(e){let t=Za.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=qa(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 so=new Set([`http:`,`https:`]);function co(e){let t;try{t=new URL(e)}catch{return null}return so.has(t.protocol)?t.href:null}var lo=/\bElectron\/\d/,uo=new Set([`localhost`,`127.0.0.1`]);function fo(e){return lo.test(e)}function po({userAgent:e,pageHostname:t}){return fo(e)&&uo.has(t)}function mo(e){return co(e)!==null}var ho=new Set([0,1]);function go({button:e,opensInNewTab:t}){return t&&ho.has(e)}function _o(){return po({userAgent:navigator.userAgent,pageHostname:location.hostname})}function vo(e){window.open(e,`_blank`,`noopener,noreferrer`)}async function yo(e){try{let t=await at();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 bo(e){!_o()||!mo(e)?vo(e):yo(e).then(t=>{t||vo(e)})}function xo(e){if(e.defaultPrevented)return;let t=e.target instanceof Element?e.target.closest(`a[href]`):null;t instanceof HTMLAnchorElement&&go({button:e.button,opensInNewTab:t.target===`_blank`})&&mo(t.href)&&(e.preventDefault(),bo(t.href))}function So(e){_o()&&(e.addEventListener(`click`,xo,!0),e.addEventListener(`auxclick`,xo,!0))}var Co=`#c084fc`,wo=Object.freeze({failed:{icon:Fe[x.FAILED],color:`#ef4444`},waiting:{icon:Fe[x.WAITING],color:`#f59e0b`}});function To({waitingCount:e,failedCount:t}){return e>0?`waiting`:t>0?`failed`:`idle`}function Eo(e){return Ke[e].map(({tag:e,attributes:t})=>`<${e} ${Object.entries(t).map(([e,t])=>`${e}="${t}"`).join(` `)}/>`).join(``)}function Do(e){if(e===`idle`)return`<path d="M10 8 L22 16 L10 24Z" fill="${Co}"/>`;let{icon:t,color:n}=wo[e];return`<g color="${n}" transform="translate(4 4) scale(1.5)">${Eo(t)}</g>`}function Oo(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"/>${Do(e)}</svg>`}function ko(){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 Ao=ko(),jo=`idle`;function Mo(e){let t=To(e);t!==jo&&(jo=t,Ao.href=`data:image/svg+xml,${encodeURIComponent(Oo(t))}`)}function No(e,t){return Number.isFinite(e)?Math.round(Math.min(t.maxPx,Math.max(t.minPx,e))):null}function Po(e,t){return e===`ArrowRight`?t:e===`ArrowLeft`?-t:null}function Fo({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=No(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=Po(e.key,a);if(n===null)return;e.preventDefault();let r=u(t.getBoundingClientRect().width+l*n);r!==null&&s(r)})}var Io=new Set,Lo=!1,Ro=()=>{};function zo(e){Ro=e}function Bo(e){Io.add(e),!Lo&&(Lo=!0,requestAnimationFrame(Vo))}function Vo(){if(Lo=!1,Io.size===0)return;let e=new Set(Io);Io.clear(),Ro(e)}document.addEventListener(`visibilitychange`,()=>{document.hidden||Vo()});function Ho(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 Uo(e,t){let n=new Map;Array.from(e.children).forEach((e,t)=>{n.set(e,t)});let r=Ho(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 Wo(e,t){e.hidden!==t&&(e.hidden=t)}function I(e,t,n){e.getAttribute(t)!==n&&e.setAttribute(t,n)}function Go(e,t,n){e.dataset[t]!==n&&(e.dataset[t]=n)}var Ko=`http://www.w3.org/2000/svg`;function qo(e,t){let n=document.createElementNS(Ko,e);for(let[e,r]of Object.entries(t))n.setAttribute(e,r);return n}function Jo(e,t){let n=document.createElementNS(Ko,`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 Yo=`M4 4L12 12M12 4L4 12`,Xo=`M10 3L5 8L10 13`,Zo=`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`,Qo=`M3 4h10M3 8h10M3 12h10`,$o=`M3 8h0.01M8 8h0.01M13 8h0.01`,es=`M8 2.5v6M5 5.5h6M5 12.5h6`,ts=`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`,ns=`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`,rs=`${ns}M2 2l12 12`,is=`M9.2 1.5L3.5 9h4.3l-1 5.5L12.5 7H8.2z`,as=`M8.7 4.2L5.6 8.6h2.5l-.6 3.2l3.1-4.4H8.1z`,os=`M3 13V9M8 13V3M13 13V6.5`;function L(e,t=`2`){let n=Jo(16,16);return n.classList.add(`line-icon`),n.append(qo(`path`,{d:e,fill:`none`,stroke:`currentColor`,"stroke-width":t,"stroke-linecap":`round`,"stroke-linejoin":`round`})),n}function ss(e,t){let{class:n,...r}=t,i=Jo(16,16);return n!==void 0&&i.classList.add(n),i.append(qo(e,r)),i}function cs(e){let t=document.createElement(`span`);t.className=`status-icon`,t.dataset.icon=e;for(let n of Ke[e])t.append(ss(n.tag,n.attributes));return t}function ls(e,t){e.dataset.icon!==t&&(e.dataset.icon=t,e.replaceChildren(cs(t)))}var us={busy:`text-text-muted`,ok:`text-state-done`,error:`text-state-failed`},ds=15e3,fs=`Something went wrong. Details are hidden in streamer mode.`;function ps(e,t){return e!==`error`||t.startsWith(`Not connected to the server. Reconnecting.`)?t:document.documentElement.hasAttribute(`data-streamer`)?fs:t}var ms={busy:`working`,ok:`complete`,error:`failed`};function hs(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 gs(e){e.replaceChildren(),delete e.dataset.tone}function _s(e,t,n){if(!n){gs(e);return}if(!t){gs(e),e.textContent=n;return}e.dataset.tone=t;let{iconElement:r,textElement:i}=hs(e);ls(r,ms[t]),i.textContent=ps(t,n)}function vs(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 ${us[n]}`,_s(t,n,r),t.hidden=!r},clear:()=>{t.hidden=!0,gs(t)}}}function ys(e,t){return E(e)?!0:(t.show(`error`,b),!1)}function bs(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 xs(e,t,n,{busyText:r,timeoutMs:i=ds}={}){r&&n.show(`busy`,r);try{let r=await et(e,t,{timeoutMs:i});return n.clear(),r}catch(e){return n.show(`error`,bs(e,i)),null}}var Ss=null,Cs=3e4,ws=null;function Ts(){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`,ks)),{line:e,text:t,age:n})}function Es(){let e=Ts();if(!e||!Ss)return;let t=g(Date.now()-Ss.raisedAt,{...ne,justNowBelowSeconds:60});e.age.textContent!==t&&(e.age.textContent=t)}function R({source:e,sessionId:t,message:n,hidesInStreamerMode:r=!0}){$e(e,n);let i=Ts();if(!i)return;let a=r?ps(`error`,n):n,o=w(`strong`,`header-status-source`,e);i.text.replaceChildren(o,` ${a}`),i.text.title=`${e}: ${a}`,Ss={source:e,sessionId:t??null,raisedAt:Date.now()},Es(),ws??=window.setInterval(Es,Cs),i.line.hidden=!1}function Ds(e,t){Ss?.source===e&&(t===void 0||Ss.sessionId===t)&&ks()}function Os(e){Ss?.sessionId===e&&ks()}function ks(){Ss=null,ws!==null&&window.clearInterval(ws),ws=null;let e=Ts();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 As={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 js(e,t,n){return e<0?t>0?0:n-1:((e+t)%n+n)%n}function Ms(e,t,n,r){if(n===0)return null;if(e===`Home`)return 0;if(e===`End`)return n-1;let i=As[r].get(e);return i===void 0?null:js(t,i,n)}function Ns(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 Ps(e){return e.key===`ArrowDown`||e.key===`ArrowUp`}function Fs(e,t){let n=document.activeElement,r=n instanceof HTMLElement?e.indexOf(n):-1,i=Ms(t.key,r,e.length,`vertical`);i!==null&&e[i].focus()}function Is(e){return e.key===`Home`||e.key===`End`}function Ls(e){return e.metaKey||e.altKey||e.ctrlKey}function Rs(e,t,n){let r=e.relatedTarget;return r instanceof Node&&!t.contains(r)&&!n.contains(r)}function zs({trigger:e,menu:t,menuItems:n,isOpen:r,open:i,close:a,signal:o}){function s(e){e.preventDefault(),e.stopPropagation(),r()||i(),Fs(n(),e)}e.addEventListener(`keydown`,e=>{!Ls(e)&&Ps(e)&&s(e)},{signal:o}),t.addEventListener(`keydown`,e=>{Ls(e)||(Ps(e)||Is(e))&&s(e)},{signal:o}),document.addEventListener(`keydown`,t=>{t.key!==`Escape`||t.defaultPrevented||!r()||Mt()||(t.preventDefault(),a(),e.focus())},{signal:o});for(let n of[e,t])n.addEventListener(`focusout`,n=>{r()&&Rs(n,t,e)&&a()},{signal:o})}var Bs=`hover-tip`,Vs=`[data-tip-label]`,Hs=6,Us=8,Ws=null,Gs=null;function Ks(e){return e instanceof Element?e.closest(Vs):null}function qs(){return Ws||(Ws=w(`div`,`hover-tip`),Ws.id=Bs,Ws.setAttribute(`role`,`tooltip`),Ws.hidden=!0,document.body.append(Ws),Ws)}function Js(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 Ys(e,t){let n=t.getBoundingClientRect(),r=e.offsetWidth,i=window.innerWidth-r-Us,a=Math.max(Us,Math.min(n.right-r,i));e.style.left=`${a}px`,e.style.top=`${n.bottom+Hs}px`}function Xs(e){let t=qs();Gs&&Gs!==e&&Gs.removeAttribute(`aria-describedby`),Gs=e,Js(t,e),t.hidden=!1,Ys(t,e),e.setAttribute(`aria-describedby`,Bs)}function Zs(){Gs&&(Gs.removeAttribute(`aria-describedby`),Gs=null,Ws&&(Ws.hidden=!0))}function Qs(e){Gs===e&&(!e.dataset.tipLabel||!e.isConnected?Zs():Xs(e))}var $s=!1;function ec(){$s||($s=!0,document.addEventListener(`pointerover`,e=>{let t=Ks(e.target);t?Xs(t):Zs()}),document.addEventListener(`pointerout`,e=>{Gs&&(e.relatedTarget instanceof Node&&Gs.contains(e.relatedTarget)||Zs())}),document.addEventListener(`focusin`,e=>{let t=Ks(e.target);t?Xs(t):Zs()}),document.addEventListener(`focusout`,Zs),document.addEventListener(`pointerdown`,Zs),document.addEventListener(`scroll`,Zs,!0),document.addEventListener(`keydown`,e=>{e.key===`Escape`&&Zs()}))}var tc=new WeakMap;function nc(e){let t=tc.get(e);if(t?.element.parentElement===e.card)return t;let n=t??vs(`session-action-status m-0 px-3 py-1`);return e.termWrap.before(n.element),tc.set(e,n),n}function rc(e,t){let n=nc(e);return ys(t,n)?(n.clear(),!0):!1}var ic=!1,ac=new Set;function oc(e){ic=!!e,Vc();for(let e of ac)e(ic)}function sc(e){return ac.add(e),()=>ac.delete(e)}function cc(){return ic}var lc=null;function uc(e){lc=e}var dc=null;function fc(e){dc=e}var pc=null;function mc(e){pc=e}function hc(e,t){let n=w(`span`,`tag-icon ${e}`);return n.tabIndex=0,n.setAttribute(`role`,`img`),n.setAttribute(`aria-label`,t),n}function gc(e){let t=Jo(16,16);return t.classList.add(`line-icon`),t.append(qo(`path`,{d:e,fill:`currentColor`})),t}function _c(){let e=L(ns,`1.5`);return e.append(qo(`path`,{d:as,fill:`currentColor`})),e}function vc(e){return`Runs in Coder workspace ${e}`}function yc(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?_c():gc(is)),Qs(e)}function bc(e,t){t&&(e.dataset.saneYolo=``),t||delete e.dataset.saneYolo;let n=e.querySelector(`.perms-badge`);n&&yc(n,t)}function xc(e,t){let n=k(e);n&&bc(n.card,t)}function Sc(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?hc(`perms-badge`,`YOLO`):null;c&&yc(c,r.saneYolo===!0);let l=w(`span`,`session-task-title`);Oc(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($o)),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=Ns(`Restart...`,`Into this conversation, a fresh one, or an earlier one`,`overflow-restart`);m.setAttribute(`aria-haspopup`,`dialog`);let h=Ns(`Edit repositories...`,`Add or remove repositories in this workspace`,`overflow-workspace-repos`),g=Ns(`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`),wc(_,a),g.onclick=()=>{p.classList.remove(`open`),f.setAttribute(`aria-expanded`,`false`),Tc(e)};let v=Ns(`Coherence journal`,`Decisions and notes this session recorded`,`overflow-coherence-journal`);v.setAttribute(`aria-haspopup`,`dialog`);let ee=()=>v.classList.toggle(`visible`,dc?.isReadable(e)===!0);f.onclick=ee,f.onkeydown=ee,v.onclick=()=>{p.classList.remove(`open`),f.setAttribute(`aria-expanded`,`false`),dc?.open(e)};let te=Ns(`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`),pc?.(e)},p.append(m,h,v,te,g),d.append(f,p);let ne=w(`button`,`btn-action btn-debug`);ne.append(L(Zo)),ne.title=`Debug state`,ne.setAttribute(`aria-label`,`Debug session state`);let re=w(`button`,`btn-action btn-trace`);re.append(L(Qo)),re.type=`button`,re.title=`Trace`,re.setAttribute(`aria-label`,`Trace`);let y=w(`button`,`btn-action btn-remove visible`);y.append(L(Yo)),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=hc(`usage-badge`,`Usage`);le.append(L(os,`2.2`)),c&&ce.append(c),ce.append(_,le),ec();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 Cc={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 wc(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?Cc.on:Cc.released}${r?i:``}`,e.replaceChildren(L(n?ns:rs,`1.6`)),Qs(e)}function Tc(e){let{dialog:t,close:n,actions:r,btnCancel:i}=Nt({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,lc?.(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 Ec(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 Dc(e,t){let n=e.querySelector(`.session-ownership`);n&&(F(n,t??``),Wo(n,t===null))}function Oc(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 kc(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&&rc(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),Oc(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 Ac=`session-rename-input`;function jc(e){return!!e?.querySelector(`.${Ac}`)}function Mc(e,t,{returnsFocusToTerminal:n=!0}={}){let r=e.renameTargetEl?.isConnected?e.renameTargetEl:e.nameEl;if(!r||jc(r))return;let i=e.card?.dataset.session??r.textContent??``,a=document.createElement(`input`);a.type=`text`,a.className=Ac,a.value=i,a.maxLength=64,r.textContent=``,r.appendChild(a),a.focus(),a.select();let o=nc(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()):rc(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 Nc(){let e=w(`button`,`debug-close`);return e.type=`button`,e.title=`Close`,e.setAttribute(`aria-label`,`Close debug overlay`),e.append(L(Yo)),e}function Pc(e){return e?o(new Date(e)):`-`}function Fc(e){return`${(Number(e||0)/1e3).toFixed(1)}s`}function Ic(e){return e.decision===`gated`?`(${Number(e.active)||0} bg)`:e.decision===`wait`||e.decision===`release`?`(quiet ${Fc(e.quietMs)})`:``}function Lc(e){let t=`<span class="debug-dim">${Pc(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=Ic(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 Rc(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">${Pc(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 ${Fc(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">${Lc(e)}</div>`;r+=`</div>`,e.debugOverlay.innerHTML=r,e.debugOverlay.prepend(Nc())}function zc(e,t){if(e.debugOpen){Bc(e);return}let n=document.createElement(`div`);n.className=`debug-overlay`,n.innerHTML=`<div class="debug-field debug-dim">Loading...</div>`,n.prepend(Nc()),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`)&&Bc(e)}),E({type:`debug-state`,id:t})}function Bc(e){e.debugOverlay&&=(e.debugOverlay.remove(),null),e.debugOpen=!1}function Vc(){for(let[,e]of O)e.btnDebug.classList.toggle(`visible`,ic),e.btnTrace.classList.toggle(`visible`,ic),!ic&&e.debugOpen&&Bc(e)}function Hc(e){let t=typeof e.id==`string`?O.get(e.id):void 0;t?.debugOpen&&Rc(t,e.payload)}function Uc(e){k(e)?.debugOpen&&E({type:`debug-state`,id:e})}var Wc={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 Gc(e,t){let n=Jo(16,16);return n.classList.add(`pr-status-icon`),t&&(n.dataset.tone=t),n.append(qo(`path`,{d:Wc[e],fill:`currentColor`})),n}function Kc(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(Gc(e.look.icon,e.look.tone))),o.append(e.text),i&&qc(o,i,!n),o}function qc(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 Jc(e){e.removeAttribute(`tabindex`),e.removeAttribute(`role`)}function Yc(e,t){if(e.closest(`button, a[href]`))for(let e of t){Jc(e);for(let t of e.querySelectorAll(`[role="button"]`))Jc(t)}}function Xc(e){if(e.overflowCount===0)return null;let t=w(`span`,`signal-overflow`,`+${e.overflowCount}`);return t.title=e.overflowHoverText,t}function Zc(e,t,n=e=>Kc(e,e)){let r=Wa(t);if(e.dataset.signalSignature===r)return;e.dataset.signalSignature=r;let i=Ua(t),a=i.visible.map(n),o=Xc(i);o&&a.push(o),Yc(e,a),e.hidden=a.length===0,e.replaceChildren(...a)}var Qc=[],$c=`plan`,el={parked:{text:`PARKED`,hoverText:`Merge parked`,look:{icon:`failed`,tone:`danger`},tier:Ba.broken},merging:{text:`MERGING`,hoverText:`Merging`,look:{icon:`queued`,tone:`wait`},tier:Ba.waiting}};function tl(e){Qc.push(e)}function nl(e){let t=el[e];return t?[{...t,key:`merge`}]:[]}function rl(e){let t=e.closest(`.session-row`),n=t?.dataset.id;t&&n&&Zc(e,[...nl(t.dataset.merge??``),...Qc.flatMap(e=>e(n))])}function il(){for(let e of document.querySelectorAll(`.session-row-signals`))rl(e)}function al(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 ol(e,t){let n=w(`div`,`session-row-item`),r=w(`button`,`session-row-remove`);return r.append(L(Yo)),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 sl(e,t,n,r=!1,i=null){Go(e,`state`,n),Go(e,`prompt`,i??``);let{icon:a,label:o,isMonitoring:s}=We(n,r),c=i===$c?`Plan ready`:o;return e.toggleAttribute(`data-monitoring`,s),ls(t.glyph,a),F(t.label,c),c}function cl(e,t){return Wo(e,!t),t?(e.title=vc(t),e.firstChild||e.append(L(ts)),e.title):null}function ll(e){let t=e.ownerId?O.get(e.ownerId):void 0,n=t?_t(t):null,r=A.ownedCountByOwnerId.get(e.card.dataset.id??``)??0;return bt({ownerName:n,ownedCount:r})}function ul(e,t,n){let r=ll(n);return F(t.ownership,r??``),Wo(t.ownership,r===null),e.closest(`.session-row-item`)?.toggleAttribute(`data-owned`,n.ownerId!==null&&O.has(n.ownerId)),Dc(n.card,r),r}function dl(e){return e===null?null:e===1?`next up`:`#${e} in line`}function fl(e,t,n){Wo(t,n===null),F(t,n===null?``:String(n)),e.toggleAttribute(`data-attention-head`,n===1)}function pl(e,t,{ui:n,state:r,name:i,mergeStatus:a,attentionPosition:o}){let s=sl(e,t,r,n.awaitingBackgroundTasks,n.pendingPromptKind);F(t.name,i);let c=cl(t.cloud,n.card.dataset.remoteWorkspace);F(t.task,n.taskTitle??``),Wo(t.task,!n.taskTitle||n.taskTitle===i),Go(e,`merge`,a),rl(t.signals),Go(e,`activity`,n._activity||``),F(t.elapsed,Vt(n));let l=ul(e,t,n);fl(e,t.attentionTab,o);let u=[i,c,n.taskTitle,s,l,dl(o)].filter(Boolean).join(`, `);return I(e,`aria-label`,u),I(e,`title`,u),s}var ml={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.`}},hl=(e,t,n=!1)=>({state:e,awaitingBackgroundTasks:n,label:n?`Monitoring`:Ne[e],meaning:t}),gl=Object.freeze([hl(x.DORMANT,`Not started yet.`),hl(x.STARTING,`Setting up the worktree and booting the agent.`),hl(x.RUNNING,`The agent is mid-turn.`),hl(x.RUNNING,`The turn ended but background tasks or sub-agents are still running.`,!0),hl(x.WAITING,`Waiting on a permission prompt or your answer.`),hl(x.COMPLETE,`Finished a turn you have not looked at yet.`),hl(x.IDLE,`Ready for the next prompt.`),hl(x.DONE,`The agent process ended.`),hl(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 _l(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 vl(e,t){let n=w(`div`,`status-legend-row`);return n.append(e,w(`dd`,`status-legend-meaning`,t)),n}function yl(){return _l(`Status colors`,gl.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=vl(t,e.meaning);return sl(i,{glyph:n,label:r},e.state,e.awaitingBackgroundTasks),i}))}function bl(){return _l(`Pull request icons`,Object.keys(ml).map(e=>{let t=ml[e],n=w(`dt`,`status-legend-badge`);return n.append(Gc(e),w(`span`,`status-legend-name`,t.label)),vl(n,t.meaning)}))}var xl=new Set(si());function Sl(){ci([...xl])}function Cl(e){if(!e)return;let t=String(e);xl.has(t)||(xl.add(t),Sl())}function wl(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),Cl(i)}return[...xl].filter(e=>!n.has(e))}function Tl(e){return!e||!xl.delete(String(e))?!1:(Sl(),!0)}function El(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 Dl({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 Ol(e,t){if(!e)return null;let n=t.get(e);return!n||(n.currentState||x.DORMANT)===x.DORMANT?null:e}function kl(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 Al(e,t){let n=0;for(let r of t)kl(r,e)&&n++;return n}function jl(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 Ml(){let e=[];for(let[,t]of O)e.push(t.card.dataset.session??``);return e}function Nl(e){return Al(e,Ml())}function Pl(e){return jl(e??``,Ml())}function B(){return j.snapshot().selectedSessionId}function Fl(e){j.dispatch(`selectSession`,e)}function Il(e){return j.subscribe((t,n)=>{n.includes(`selectedSessionId`)&&e(t.selectedSessionId)})}function Ll(e,t=`explicit-state`){let n=O.get(e);if(!n)return null;let r=El(n.currentState,t);return r&&rc(n,{type:r,id:e}),n}function Rl(e,{rememberFocus:t=!0}={}){Fl(e),t&&Ei(e)}function zl(){return Ol(Ti(),O)}function Bl(e=_t){let t=[...O];return wt(t,e)}function Vl(e,t){let n=O.get(e);return n?rc(n,t):E(t)?!0:(R({source:`Session action`,sessionId:e,message:`${b} Try the action again once the header shows Connected.`}),!1)}var Hl=`Add session`;function Ul(e){return e.type===`add-session-result`&&e.error?e.error:e.type===`error`?e.message:`The session was not added.`}var Wl=!1;function Gl(e){Wl||(Wl=!0,P(()=>import(`./dialogs-BZSGSCHb.js`).then(t=>{Wl=!1,e(t)},()=>{Wl=!1,R({source:Hl,message:`The Add session dialog did not load. Reload the page, then add the session again.`})}),__vite__mapDeps([11,3,4,1,2,7,12,13,5,10])))}function Kl(){Gl(e=>e.createAddSessionDialog())}async function ql(e,t){try{let n=Pl(t),r=await et(`add-session`,{name:n,path:e},{timeoutMs:ds});if(r.type===`add-session-result`&&r.ok){Ds(Hl);return}R({source:Hl,message:Ul(r)})}catch(e){R({source:Hl,message:`The session was not added: ${bs(e,ds)} Add it again once the server answers.`})}}function Jl(e,t){e&&ql(e,t)}async function Yl(e,t){try{let n=await et(`quick-session`,{id:e},{timeoutMs:ds});if(n.type===`add-session-result`&&n.ok){Ds(Hl),n.sessionId&&t(n.sessionId);return}R({source:Hl,sessionId:e,message:Ul(n)})}catch(t){R({source:Hl,sessionId:e,message:`The session was not added: ${bs(t,ds)} Add it again once the server answers.`})}}function Xl(e,t){Yl(e,t)}var Zl=39e5,Ql=`Remove session`;async function $l(e,t,n,r=[]){try{let i=await et(`remove-session`,{id:t,discardWork:n,confirmedKeptPaths:r},{timeoutMs:Zl});if(i.type!==`remove-session-result`||i.ok)return;if(!i.canDiscardWork){R({source:Ql,sessionId:t,message:`"${_t(e)}" was not removed: ${i.error??`the server gave no reason`}. Try Remove again from its actions menu.`});return}jt({title:`Remove Session`,message:i.error??`Remove session "${_t(e)}"?`,confirmLabel:`Remove`,danger:!0,onConfirm:()=>{$l(e,t,!0,(i.keptPaths??[]).map(e=>e.path))}})}catch(n){R({source:Ql,sessionId:t,message:`"${_t(e)}" was not removed: ${bs(n,Zl)} Try Remove again from its actions menu.`})}}function eu(e){let t=O.get(e);t&&$l(t,e,!1)}var tu=Object.freeze({[x.IDLE]:`compaction_restore_idle`,[x.COMPLETE]:`compaction_restore_complete`,[x.WAITING]:`compaction_restore_waiting`});function nu(e){return Object.values(tu).some(t=>t===e)}var ru=22,iu={image:`Image`,video:`Video`,page:`Page`},au=new WeakMap;function ou(e){let t=e.registerMarker(0);if(!t)return null;let n=au.get(e);if(n&&!n.marker.isDisposed&&n.marker.line===t.line)return t.dispose(),n;let r={marker:t,chipCount:0};return au.set(e,r),r}function su(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`,iu[t.kind])),n.append(w(`span`,`shown-chip-name`,t.pageTitle??t.name)),n.addEventListener(`click`,n=>{n.stopPropagation(),Ma(e,t.id)}),n}function cu(e,t,n){let r=ou(e);if(!r)return;let i=e.registerDecoration({marker:r.marker,anchor:`right`,x:r.chipCount*ru,width:ru,layer:`top`});if(!i)return;r.chipCount+=1;let a=su(t,n);i.onRender(e=>{e.contains(a)||e.replaceChildren(a),e.classList.add(`shown-chip-slot`)})}function lu(e,t){let n=k(e)?.term;if(n)for(let r of t)cu(n,e,r)}var uu=`(max-width: 768px)`,du=`(pointer: coarse)`;function fu({coarse:e,narrowWidth:t}={}){return e===!0&&t===!0?`phone`:`desktop`}var pu=window.matchMedia?.(du),mu=window.matchMedia?.(uu);function hu(){return fu({coarse:!!pu?.matches,narrowWidth:!!mu?.matches})}function gu(e){document.documentElement.dataset.layout!==e&&(document.documentElement.dataset.layout=e)}function _u(){j.subscribe((e,t)=>{t.includes(`layout`)&&gu(e.layout)});let e=hu();gu(e),j.dispatch(`setLayout`,e);let t=()=>j.dispatch(`setLayout`,hu());return pu?.addEventListener?.(`change`,t),mu?.addEventListener?.(`change`,t),e}function vu(){return j.snapshot().layout===`phone`}function yu(e){return j.subscribe((t,n)=>{n.includes(`layout`)&&e(t.layout)})}function bu(e){if(!e)return 0;let t=0;return e.listenerMismatch&&t++,e.orphanPty&&t++,e.destroyedReachable&&t++,t}function xu(e,t){return e||bu(t)>0}var Su={DORMANT:`DOR`,INITIALIZING:`INI`,STARTING:`STA`,RUNNING:`RUN`,WAITING:`WAI`,IDLE:`IDL`,COMPLETE:`CMP`,DONE:`DON`,FAILED:`FAI`},Cu=null,wu=!1,Tu=!1,Eu=null,Du=null,Ou=null,ku=`—`;function Au(e){return e==null?ku:te(e,`GB`)}function ju(e){return e==null?ku:he(e,{smallestUnit:`s`,dropsZeroRemainder:!1})}function Mu(e){return e==null?ku:`${ju(Math.max(0,Math.round((Date.now()-e)/1e3)))} ago`}function Nu(){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`,()=>{Tu=!Tu,e.dataset.expanded=String(Tu),n.setAttribute(`aria-expanded`,String(Tu)),a.hidden=!Tu,Tu&&(E({type:`request-health-snapshot`}),Fu())}),e.append(t,a),Eu=e,Du=i,Ou=a,e}function Pu(){if(!Du||!Cu)return;let e=Cu,t=bu(e.anomalies);Du.innerHTML=`
|
|
5
5
|
<span class="health-stat" title="V8 heap used"><span class="health-stat-label">Heap</span> ${Au(e.process.heapUsed)}</span>
|
|
6
6
|
<span class="health-stat" title="Resident set size (process memory)"><span class="health-stat-label">RSS</span> ${Au(e.process.rss)}</span>
|
|
7
7
|
<span class="health-stat" title="External buffers (PTY data lives here)"><span class="health-stat-label">Ext</span> ${Au(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 Iu(){if(!Eu)return;let e=xu(wu,Cu?.anomalies),t=Eu.hidden;Eu.hidden=!e,e&&t&&Cu&&(Pu(),Tu&&Fu())}function Lu(e){wu=e,Iu()}function Ru(e){if(Eu)return Eu;let t=Nu();return e.appendChild(t),Iu(),t}function zu(e){Cu=e,Iu(),Eu&&!Eu.hidden&&(Pu(),Tu&&Fu())}var Bu=`#plan/`;function Vu(e){return`${Bu}${encodeURIComponent(e)}`}function Hu(e){if(!e.startsWith(Bu))return null;let t=e.slice(6);if(!t||t.includes(`/`))return null;try{return decodeURIComponent(t)||null}catch{return null}}var Uu=Object.freeze([{kind:`approve`,label:`Approve`},{kind:`revise`,label:`Send feedback`},{kind:`terminal`,label:`Answer in terminal`}]);function Wu(e){return e===`approve`||e===`approve-accept-edits`}function Gu(e){return(e.state===`decided`||e.state===`closed`)&&Wu(e.lastDecision)}function Ku(e,t){let n=e.reviews.find(e=>e.agentId===t);return n!==void 0&&Gu(n)}function qu(e,t){return e.reviews.find(e=>e.agentId===t)??e.reviews[0]??null}function Ju(e){let t=qu(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 Yu(e,t){return qu(e,t)?.openRevision?.revision??null}function Xu(e,t,n){if(n===null)return null;let r=qu(e,t)?.revisions??[],i=r.findIndex(e=>e.revision===n);return i<=0?null:r[i-1].revision}function Zu(e,t){let n=t-e;return Number.isFinite(n)?g(n,{rounding:`floor`,wording:`abbreviated`,suffix:` ago`,justNowBelowSeconds:60}):`just now`}function Qu(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 $u(e,t,n){let r=Qu(e,t,n),i=(e.pendingCommentCount??0)>0,a=e.hasUnsavedComment!==!0;return Uu.map(({kind:e,label:t})=>({kind:e,label:t,enabled:r&&(e===`terminal`||a&&(e===`revise`?i:!i))}))}function ed(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 td(e){let t=0;for(let n of e.comments??[])t+=n.comment.trim().length+(n.heading?.length??0);return t}function nd(e){return new TextEncoder().encode(JSON.stringify(e)).byteLength+pe}function rd(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`:td(e)>1e4?`the feedback composes more than the ${v} characters the hook reply carries, so nothing was sent`:nd(e)>Se?`the decision is larger than one control frame carries, so nothing was sent`:null}function id(e){return e?`, ${e}`:``}function ad(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=ed(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 od(e,t,n){let r=ad(e,t,n);return r?`${r}${id(e.problem)}`:e.problem??``}function sd(e){let t=qu(e.state,e.selectedAgentId),n=Ju(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:Xu(e.state,t?.agentId??null,n),status:od(e,t,n),actions:$u(e,t,n),modes:[{kind:`read`,label:`Read`,enabled:!0},{kind:`changes`,label:`Changes`,enabled:Xu(e.state,t?.agentId??null,n)!==null&&e.isDraft!==!0},{kind:`edit`,label:`Edit`,enabled:Qu(e,t,n)}]}}function cd(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 ld({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 ud=ur(navigator.userAgent),dd=`next-attention-keys`,fd=Gr();function pd(){return fd}function md(e,t){t.forEach((t,n)=>{n>0&&e.appendChild(w(`span`,`shortcut-sep`,`+`)),e.appendChild(w(`kbd`,`kbd`,t))})}function hd(e){let t=w(`span`,`shortcut-keys`);return md(t,e),t}function gd(){let e=hd(yr(`next-attention`,ud,fd));return e.classList.add(dd),e}function _d(e){fd=e;let t=yr(`next-attention`,ud,e);for(let e of document.querySelectorAll(`.${dd}`))e.replaceChildren(),md(e,t)}var vd=10;function yd(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 bd(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 xd(e,t,n){let r=e.get(t)??[];r.push(n),e.set(t,r)}function Sd(e,t){for(let n of e.hotspots)xd(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<vd||xd(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 Cd(e,t){return t.severity-e.severity||e.openPath.localeCompare(t.openPath)||e.dedupeKey.localeCompare(t.dedupeKey)}function wd(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:yd(r)});let r=new Map,i=new Map,a=e.error?[e.error]:[];for(let t of e.repos){for(let e of bd(t,n))r.has(e.dedupeKey)||r.set(e.dedupeKey,e);Sd(t,i),t.error&&a.push(e.repos.length>1?`${t.name}: ${t.error}`:t.error)}return{worthALook:[...r.values()].sort(Cd),hintsByOpenPath:i,repos:e.repos.map(e=>({name:e.name,sessionPathPrefix:e.sessionPathPrefix})),errors:a}}function Td(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 Ed=5;function Dd(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 Od(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,Ed);if(a.length>0){let e=w(`div`,`review-look-list`);for(let t of a)e.append(Dd(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 kd(e){return(e??[]).map(e=>{let t=w(`span`,`review-file-hint`,e.text);return t.title=e.title,t})}function Ad(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 jd(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=Ad(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 Md(e,t){return t===`merged`||t===`none`||e===`parked`&&t===`pending-review`}function Nd(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 Pd({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=zd(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 Fd({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?Pd({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 Id(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 ${zd(t)}.`}function Ld(e,t){return e.namesMergeTarget?null:`merges into ${zd(t)}`}function Rd({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 zd(e){return e||`base`}function Bd(e,t){return`Merge into ${zd(e)}, push it, and rebase this worktree, then keep working (${t})`}function Vd(e){return e===`base-diverged`?`Resync the base branch by hand, then Merge again.`:`Needs manual merge`}function Hd(e,t,n){let r=e!==`parked`||e===`parked`&&t===`base-diverged`;return{isRendered:r,isEnabled:r&&e!==`merging`&&n}}function Ud({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 Wd(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 Gd({fetched:e,changedFileCount:t,hasCommits:n}){return!e||t>0||n}function Kd(e){return e||`its upstream`}function qd(e){if(!e)return null;let t=e.branch||`Base branch`,{state:n,ahead:r,behind:i}=e,a=Kd(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 Jd(e){return!e||e.fetched===!1?`recheck`:e.state===`ahead`||e.state===`behind`?`resync`:`recheck`}function Yd(e,t,n){let r=n?` (${t})`:``;if(!e||Jd(e)===`recheck`)return`Click to fetch and check again${r}`;let i=e.branch||`Base branch`,a=Kd(e.upstream);return e.state===`behind`?`Click to fast-forward ${i} to ${a}${r}`:`Click to push ${i} to ${a}${r}`}function Xd(e){return e?.state!==`in-sync`||e.fetched===!1}function Zd(e){if(e.error)return`Resync failed: ${e.error}`;let t=e.branch||`The base branch`,n=Kd(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 Qd=new Set([`pending-review`,`parked`]),$d=600,ef=br(`merge`,ud),tf=br(`resolve-or-resync`,ud),nf={minPx:260,maxPx:700},rf=16,af=5e3,of=new Map,sf=new Map,cf=new Map,lf=new Map,uf=new Map,df=new Map,ff=new Set,pf=new WeakMap,mf=new WeakMap,hf=new Set,gf=new Set,_f=!1,vf=null,yf=null,V=null,H=null,bf=null,xf=null,Sf=null,Cf=null,wf=null,Tf=!1,Ef=null,Df=null,Of=null,kf=null,Af=new Map,U=null,jf=null;function Mf(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 Nf(){Tf=!1,V?.querySelector(`.review-more-menu`)?.remove(),V?.querySelector(`.review-more-button`)?.setAttribute(`aria-expanded`,`false`)}function Pf({panel:e}){if(yf=e,!yf)return;let t=yf,n=w(`div`,`review-sidebar-head`),r=w(`span`,`review-sidebar-title`,`Review`);wf=w(`span`,`review-sidebar-session`),r.append(wf);let i=e=>{t.toggleAttribute(`data-collapsed`,e),ni(!e)},a=Mf(`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=Mf(`Open review`,`M10 3L5 8L10 13`);s.classList.add(`review-sidebar-open`),s.addEventListener(`click`,()=>i(!1)),xf=w(`div`,`review-rail-status`),Sf=w(`span`,`review-rail-added`),Cf=w(`span`,`review-rail-removed`),xf.append(Sf,Cf),bf=w(`span`,`review-rail-label`,`Review`),o.append(s,bf,xf),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`,!ti()),If(H),document.addEventListener(`keydown`,e=>{e.key===`Escape`&&Tf&&(e.preventDefault(),Nf(),V?.querySelector(`.review-more-button`)?.focus())}),document.addEventListener(`pointerdown`,e=>{Tf&&e.target instanceof Element&&(V?.contains(e.target)&&e.target.closest(`.review-more-button, .review-more-menu`)||Nf())}),Fo({resizer:c,column:t,widthHost:t,widthProperty:`--sidebar-width`,bounds:nf,keyStepPx:rf,getStoredWidth:Di,setStoredWidth:Oi,growsLeftward:!0}),Il(e=>{Tf=!1,Of=null,hf.clear(),gf.clear(),_f=!1,vf=null,e&&lp(e),e&&!dp(e)&&fp(e),W()}),W()}function Ff(e,t){let n=of.get(e);of.set(e,t),Md(n,t)&&(cf.delete(e),lf.delete(e),uf.delete(e),e===B()&&up(e)),e===B()&&W()}function If(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),Il(a)}function Lf(e){yf&&(e?(Ue(yf,e),W()):(ze(yf),W()))}function Rf(e,t,n=null){let r=t||`none`;sf.set(e,n);let i=Af.get(e);i!==void 0&&i!==r&&Af.delete(e),Ff(e,r)}function zf(e){let t=D(e);t&&Af.delete(t)&&t===B()&&W()}function Bf(e,t,n=null){sf.set(e,n),Af.delete(e),Ff(e,t||`none`)}function Vf(e,t){cf.set(e,t),lf.delete(e),e===B()&&(vf&&vp(vf,t),W(),yp())}function Hf(e,t){let n=D(e);n&&(lf.set(n,t),n===B()&&W())}function Uf(e,t){let n=D(e);if(!n)return;let r=_.safeParse(t);r.success&&r.data.sessionId===n&&(uf.set(n,r.data),n===B()&&W())}function Wf(e,t){let n=D(e),r=t;df.set(n,r),r&&r.action!==void 0&&Gf(n,r),n===B()&&W()}function Gf(e,t){ff.delete(e),clearTimeout(jf??void 0),jf=null;let n=Zd(t);U=n?{forId:e,text:n,isError:!!t.error}:null,U&&!U.isError&&(jf=setTimeout(()=>{U&&U.forId===e&&(U=null),W()},5e3))}function Kf(e){let t=D(e);t&&t===B()&&lp(t)}function qf(e){let t=D(e);if(t!==B())return;let n=!cf.has(t)||lf.has(t),r=!uf.has(t)||Jf(uf.get(t));n&&lp(t),r&&!n&&up(t),W()}function Jf(e){return e?!!e.error||e.repos.some(e=>e.error!==null):!1}function Yf(e){let t=D(e);of.delete(t),sf.delete(t),cf.delete(t),lf.delete(t),uf.delete(t),df.delete(t),ff.delete(t),U&&U.forId===t&&(clearTimeout(jf??void 0),U=null),t===B()?Fl(null):W()}function Xf(){let e=B(),t=e?O.get(e):null;if(!e||!t)return Zf(null,`No session is open to merge.`);if(dp(e))return Zf(e,`A workspace session has no worktree to merge.`);if(Af.has(e))return Zf(e,`Merge is already on its way for "${_p(t,e)}".`);let n=of.get(e)||`none`,r=!!cf.get(e)?.hasCommits,i=Hd(n,sf.get(e)||null,ap(t.currentState,r));return Rd({status:n,mergeReason:sf.get(e)||null,live:cp(t.currentState),isMergeRendered:i.isRendered,hasChanges:ip(e)})!==`merge`||!i.isEnabled?Zf(e,Ud({status:n,hasCommits:r,live:cp(t.currentState),state:t.currentState})??`Nothing to merge in "${_p(t,e)}" right now.`):(op(e,t.currentState),!0)}function Zf(e,t){return Of={forId:e,text:t},clearTimeout(kf??void 0),kf=setTimeout(()=>{Of=null,W()},af),W(),!1}function Qf(){let e=B();if(!e||dp(e))return!1;let t=O.get(e);if(!t)return!1;let n=of.get(e)||`none`,r=sf.get(e)||null;return Rd({status:n,mergeReason:r,live:cp(t.currentState),isMergeRendered:Hd(n,r,!1).isRendered,hasChanges:ip(e)})!==`resolve`||$f(e)?!1:(ep(e),!0)}function $f(e){return Ef?.forId===e&&!Ef.isError}function ep(e){let t=E({type:`resolve-session-merge`,id:e});Ef=t?{forId:e,text:`Resolve prompt sent`,isError:!1}:{forId:e,text:`Not connected. The resolve prompt was not sent.`,isError:!0},clearTimeout(Df??void 0),Df=setTimeout(()=>{Ef=null,W()},t?3e3:af),W()}function tp(){let e=B();return!e||!O.has(e)||dp(e)||mp(e)?!1:(hp(e),!0)}function np(e){if(!e)return{committed:[],uncommitted:[]};let t=pf.get(e);if(t)return t;let n={committed:jd(e.committed?.diff||``),uncommitted:jd(e.uncommitted?.diff||``)};return pf.set(e,n),n}function rp(e){let t=mf.get(e);if(t)return t;let n=wd(e);return mf.set(e,n),n}function ip(e){let t=np(cf.get(e)),n=[...t.committed,...t.uncommitted],r=cf.get(e)??null;return Gd({fetched:cf.has(e),changedFileCount:Nd(n).files,hasCommits:!!r?.hasCommits})}function ap(e,t){return(Ge.includes(e)||e===x.RUNNING)&&t}function op(e,t){t===x.RUNNING?jt({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:()=>sp(e,!0)}):sp(e,!1)}function sp(e,t){Af.has(e)||(E(t?{type:`merge-continue-session`,id:e,force:!0}:{type:`merge-continue-session`,id:e})?(Af.set(e,of.get(e)||`none`),e===B()&&W()):Zf(e,`Not connected. The merge was not sent.`))}function cp(e){return e!==x.DORMANT&&e!==x.DONE&&e!==x.FAILED}function lp(e){E({type:`request-session-diff`,id:e}),up(e)}function up(e){uf.has(e)||uf.set(e,null),E({type:`request-change-map`,id:e})}function dp(e){return O.get(e)?.card.dataset.workspace!==void 0}function fp(e){df.set(e,null),E({type:`request-branch-sync`,id:e}),e===B()&&W()}function pp(e){ff.add(e),clearTimeout(jf??void 0),U&&U.forId===e&&(U=null),E({type:`resync-branch`,id:e}),e===B()&&W()}function mp(e){return ff.has(e)||df.get(e)===null}function hp(e){mp(e)||(Jd(df.get(e))===`resync`?pp(e):fp(e))}function gp(e,t){return t?{text:`Resyncing`,loading:!0,error:!1}:U&&U.forId===e?{text:U.text,loading:!1,error:U.isError}:null}function _p(e,t){return e?.card?.dataset.session||t}function vp(e,t){if(!t)return;let{committed:n,uncommitted:r}=np(t);for(let t of n)(t.path===e||t.oldPath===e)&&hf.add(`committed:${t.path}`);for(let t of r)(t.path===e||t.oldPath===e)&&hf.add(`uncommitted:${t.path}`)}function yp(){if(!H||!vf)return;let e=H.querySelectorAll(`.review-file`);for(let t of e)if(t.dataset.path===vf||t.dataset.oldPath===vf){t.scrollIntoView({block:`nearest`}),vf=null;return}}function bp(e){vf=e,vp(e,cf.get(B()??``)),W(),yp()}function xp(){_f=!0,W()}function W(){let e=H?.scrollTop??0;Sp(),H&&(H.scrollTop=e)}function Sp(){if(!V||!H)return;V.replaceChildren(),H.replaceChildren(),bf&&(bf.hidden=!0),xf&&(xf.hidden=!0);let e=B(),t=e?O.get(e):null;if(wp(e,t),!e||!t){Of&&V.append(Cp(Of.text,!0)),Tp(`No session selected`,`Click a session name to review its changes here.`);return}let n=dp(e),r=of.get(e)||`none`,i=sf.get(e)||null,a=t.currentState,o=Qd.has(r),s=cf.has(e),c=s?cf.get(e):null,l=lf.get(e)??null,{committed:u,uncommitted:d}=np(c),f=!!c?.hasCommits,p=cp(a),m=Hd(r,i,ap(a,f)),h=df.get(e),g=ff.has(e),_=zd(t.effectiveBase),v=Nd([...u,...d]),ee=Rd({status:r,mergeReason:i,live:p,hasChanges:Gd({fetched:s,changedFileCount:v.files,hasCommits:f}),isMergeRendered:m.isRendered}),te=Fd({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||vu()||Xd(h),y=w(`div`,`review-status-headline`);if(y.append(w(`span`,`review-status-text`,te.text)),!n&&!re){let t=qd(h);if(t){y.title=t;let n=Mf(`Refresh branch sync`,`M13 6A5 5 0 1 0 13 10M13 2v4H9`);n.classList.add(`review-branch-sync-refresh`),n.title=Yd(h,tf,ee!==`resolve`),n.disabled=mp(e),n.setAttribute(`aria-description`,t),n.addEventListener(`click`,()=>hp(e)),y.append(w(`span`,`sr-only`,t),n)}}if(ne||V.append(y),u.length>0)for(let e of Wd(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=Ep(e,ee!==`resolve`);t&&ie.append(t)}ie.childElementCount>0&&V.append(ie),r===`parked`&&V.append(w(`div`,`review-status-explanation`,Vd(i))),bf&&(bf.hidden=!1),xf&&(xf.hidden=!1,xf.setAttribute(`aria-label`,`${te.text}, +${v.added}, -${v.removed}`),xf.title=te.text),Sf&&(Sf.textContent=`+${v.added}`),Cf&&(Cf.textContent=`-${v.removed}`);let ae=n?null:jp(e,{status:r,reviewable:o,mergeAction:m,live:p,state:a,effectiveBase:_,primaryAction:ee});ae&&V.append(ae);let oe=n?null:gp(e,g),se=!n&&ee===`merge`&&!m.isEnabled?Ud({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(Ef?.forId===e&&V.append(Cp(Ef.text,Ef.isError)),Of&&(Of.forId===e||Of.forId===null)&&V.append(Cp(Of.text,!0)),l){H.append(w(`p`,`review-diff-error`,l));return}if(ne){Tp(te.text,Id(n,_));return}let ce=uf.get(e),le=ce?rp(ce):null,ue=le?Od(le,{isShowingAll:_f,onShowAll:xp,onOpenFile:bp}):null;ue&&H.append(ue);let de=u.length>0&&d.length>0;u.length>0&&H.append(Dp({kind:`committed`,label:de?`Committed`:null,meaning:Ld(te,_),files:u,changeMapView:le})),d.length>0&&H.append(Dp({kind:`uncommitted`,label:de?`Not committed yet`:null,meaning:null,files:d,changeMapView:le}))}function Cp(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 wp(e,t){if(!wf)return;let n=e&&t?_p(t,e):``;wf.textContent=n,wf.hidden=!n,wf.title=n}function Tp(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 Ep(e,t){let n=df.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=qd(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=Mf(`Refresh branch sync`,`M13 6A5 5 0 1 0 13 10M13 2v4H9`);return a.classList.add(`review-branch-sync-button`),a.title=Yd(n,tf,t),a.disabled=ff.has(e),a.addEventListener(`click`,()=>hp(e)),i.append(a,w(`span`,`review-branch-sync-label`,r)),i}function Dp({kind:e,label:t,meaning:n,files:r,changeMapView:i}){let a=w(`div`,`review-section`);a.dataset.kind=e,t&&a.append(Op(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?Td(s,t.path):null;n&&n!==c&&o.append(w(`div`,`review-repo-label`,n)),c=n,o.append(kp(t,e,i))}return a.append(o),a}function Op(e,t,n){let r=Nd(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 kp(e,t,n){let r=`${t}:${e.path}`,i=hf.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=kd(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=hf.has(r);e&&hf.delete(r),e||hf.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>=$d&&!gf.has(r)){p=!0;break}d.append(w(`div`,`review-hunk-head`,t.header));for(let e of t.lines){if(f>=$d&&!gf.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`,()=>{gf.add(r),W()}),d.append(e)}return a.append(d),a}function Ap({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 jp(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(Ap({id:`review-merge-btn`,label:`Merge`,shortcut:ef,title:Bd(o,ef),disabled:!r.isEnabled||Af.has(e),onClick:()=>op(e,a)})),l&&c.append(Ap({label:`Resolve`,shortcut:tf,title:`Paste a resolve prompt into this session so the agent can finish the merge (${tf})`,disabled:$f(e),onClick:()=>ep(e)}));let u=w(`div`,`review-action-controls`);if(u.append(c),!n||i)return c.childElementCount>0?u:null;let d=Mf(`More review actions`,$o);if(d.classList.add(`review-more-button`),d.setAttribute(`aria-haspopup`,`menu`),d.setAttribute(`aria-expanded`,String(Tf)),d.setAttribute(`aria-controls`,`review-more-menu`),d.addEventListener(`click`,()=>{Tf=!Tf,W(),(V?.querySelector(Tf?`.review-more-menu button:not(:disabled)`:`.review-more-button`)??V?.querySelector(`.review-more-button`))?.focus()}),c.append(d),!Tf)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=Ap({label:`Discard worktree`,danger:!0,disabled:t===`merging`,onClick:()=>{Tf=!1,W();let t=_p(O.get(e),e);jt({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 Mp=160,Np=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 Pp(e){let t=e.split(/\r?\n/,1)[0]?.trim()??``;return t.length<=Mp?t:`${t.slice(0,157)}...`}function Fp(e,t){let n=Np[e];if(!n||!t||typeof t!=`object`||Array.isArray(t))return``;let r=t[n];return typeof r==`string`?Pp(r):``}var Ip=5e3;function Lp(e){let t=e.match(/<command-name>([^<]*)<\/command-name>/)?.[1];return t===void 0||/[\r\n]/.test(t)?null:t.trim()||null}function Rp(e,t){if(!e.toolUseId)return Lp(e.text)??`context`;let n=t.get(e.toolUseId);return n?Fp(n.name,n.input)||n.name:`expansion`}function zp(e){return e.kind!==`expansion`||e.toolUseId?!1:Lp(e.text)!==null}function Bp(e){return e.kind===`prompt`||e.kind===`session`||zp(e)}function Vp(e){return new TextEncoder().encode(e).byteLength}var Hp={prompt:`PROMPT`,expansion:`EXPANSION`,thinking:`THINKING`,assistant:`ASSISTANT`,tool_call:`TOOL`,tool_result:`RESULT`,session:`SESSION`,notice:`NOTICE`,raw:`RAW`};function Up(e,t){if(e.kind===`prompt`)return{prefix:`Prompt: `,text:Pp(e.text)};if(e.kind===`thinking`)return{prefix:`Thinking: `,text:Pp(e.text)};if(e.kind===`assistant`)return{prefix:`Assistant: `,text:Pp(e.text)};if(e.kind===`notice`)return{prefix:`Notice: `,text:Pp(e.text)};if(e.kind===`raw`)return{prefix:`Raw: `,text:Pp(e.line)};if(e.kind===`session`)return{prefix:`Session: `,text:`${e.vendor} ${e.vendorSessionId}`};if(e.kind===`expansion`)return{prefix:`Expansion: `,text:Rp(e,t)};if(e.kind===`tool_call`){let t=Fp(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:`${Vp(e.content)} bytes`}}function Wp(e){if(!e.agentType)return``;let t=e.agentId?` ${e.agentId.slice(-6)}`:``;return`[${e.agentType}${t}] `}function Gp(e,t){let n=Up(e,t),r=Wp(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:Hp[e.kind],text:`${r}${i}`,tone:o,badges:a}}function Kp(e,t){return{record:e,...Gp(e,t)}}function qp(e){return e.kind!==`tool_result`&&e.kind!==`expansion`?null:e.toolUseId||null}function Jp(e,t){let n=qp(e);return!n||t.has(n)?null:n}function Yp(e,t,n=1){e.set(t,(e.get(t)??0)+n)}function Xp(e,t){let n=(e.get(t)??0)-1;n>0?e.set(t,n):e.delete(t)}function Zp(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=qp(i.record);a&&t.has(a)&&(n.rows[r]=Kp(i.record,e.toolCallByUseId))}}function Qp(){return{turns:[],toolCallByUseId:new Map,unresolvedToolUseCounts:new Map}}function $p(){return{rowCount:0,toolCallCount:0,errorCount:0,resultBytes:0}}function em(e,t,n){e.metrics.rowCount+=n,t.record.kind===`tool_call`&&(e.metrics.toolCallCount+=n),t.record.kind===`tool_result`&&(e.metrics.resultBytes+=Vp(t.record.content)*n,t.record.isError&&(e.metrics.errorCount+=n))}function tm(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=Jp(i,e.toolCallByUseId);t&&Yp(e.unresolvedToolUseCounts,t);let a=Kp(i,e.toolCallByUseId);if(Bp(i)){r={head:a,rows:[],hasTrimmedRows:!1,startedAt:i.ts,metrics:$p()},em(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:$p()},e.turns.push(r),n.push({turnIndex:e.turns.length-1,isNewTurn:!0,head:null,rows:[]})),r.rows.push(a),em(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 nm(e,t){let n=Qp();tm(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)||Yp(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],Zp(e,i),{newTurns:n.turns,mergedHead:c,mergedRows:l,needsRerender:i.size>0}}function rm(e){return e.rows.length+ +!!e.head}function im(e){let t=0;for(let n of e.turns)t+=rm(n);return t}function am(e,t){for(let n of t){if(n.record.kind===`tool_call`){e.toolCallByUseId.delete(n.record.toolUseId);continue}let t=qp(n.record);t&&Xp(e.unresolvedToolUseCounts,t)}}function om(e,t){am(e,t.head?[t.head,...t.rows]:t.rows)}function sm(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);am(e,i);for(let e of i)em(n,e,-1);return n.rows=n.rows.slice(r),n.hasTrimmedRows=!0,r}function cm(e,t=Ip){let n=im(e),r=0;for(;n>t&&r<e.turns.length-1;){let t=e.turns[r];if(!t)break;n-=rm(t),om(e,t),r+=1}return r>0&&(e.turns=e.turns.slice(r)),n<=t?{droppedTurnCount:r,droppedRowCount:0}:{droppedTurnCount:r,droppedRowCount:sm(e,n-t)}}function lm(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 um(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 dm(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 fm(e,t=Ip){return!e.selectedSessionId||!e.hasLoadedOnce||e.hasDroppedEarliestRows||e.residentRowCount>=t?!1:e.firstOffset>0}function pm(e,t=Ip){return!fm(e,t)||e.hasPendingRequest||!e.selectedSessionId?null:{id:e.selectedSessionId,direction:`earlier`,after:0,endingAt:e.firstOffset}}function mm(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 hm=1e4,gm=null,_m=null,vm=[],ym=null,bm=null,G=null,xm=null,Sm=!1,Cm=null,wm=()=>!1,Tm=new Set;function K(e){for(let t of Tm)t(e)}function Em(){xm&&=(clearTimeout(xm.timeoutHandle),null)}function Dm(){xm=null,Cm=`The trace did not load within ${Math.round(hm/1e3)} s.`,K({kind:`rebuild`})}function Om(e){Em(),Sm=!1,Cm=null,ym=e,G=e?{sessionId:e,grouping:Qp(),firstOffset:0,nextOffset:0,hasDroppedEarliestRows:!1,filePath:``,hasLoadedOnce:!1}:null,K({kind:`selection-reset`})}function km(e){let t=um(vm,bm,ym,e);return bm&&t===bm&&(bm=null),t!==ym&&(Om(t),!0)}function Am(e){if(!gm)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};gm(t)?xm={request:e,timeoutHandle:setTimeout(Dm,hm)}:(Cm=b,K({kind:`header`}))}function jm(e=!1){if(!gm)return;let t=dm({selectedSessionId:ym,isPanelVisible:e||wm(),hasPendingRequest:!!xm,hasLoadedOnce:G?.hasLoadedOnce??!1,nextOffset:G?.nextOffset??0});t&&Am(t)}function Mm(){Sm&&!xm&&(Sm=!1,jm())}function Nm(){if(!G)return;let e=cm(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 Pm(e){G&&(K({kind:`records-appended`,appends:tm(G.grouping,e)}),Nm())}function Fm(e){G&&(K({kind:`records-prepended`,prepend:nm(G.grouping,e)}),Nm())}function Im(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 Lm(){return{selectedSessionId:ym,hasPendingRequest:!!xm,hasLoadedOnce:G?.hasLoadedOnce??!1,hasDroppedEarliestRows:G?.hasDroppedEarliestRows??!1,firstOffset:G?.firstOffset??0,residentRowCount:G?im(G.grouping):0}}function Rm(){return{sessionOptions:vm,selectedSessionId:ym,selectedTrace:G,pendingSessionId:xm?.request.id??null,traceFailureText:Cm}}function zm(e){Tm.add(e)}function Bm(e){wm=e}function Vm(){if(!gm)return;let e=pm(Lm());e&&Am(e)}function Hm(e){vm.some(t=>t.id===e)&&e!==ym&&(bm=null,Om(e),jm(),K({kind:`rebuild`}))}function Um(){let e=km(!0);return jm(!0),e}function Wm(e){gm=e}function Gm(e){_m=e}function Km(e){bm=e,_m?.()}function qm(e){vm=lm(e);let t=km(wm());t&&jm(),K({kind:`sessions`,hasSelectionChanged:t})}function Jm(e){let t=Im(e);if(!t)return;let n=mm({pendingRequest:xm?.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`?Mm():(Em(),Cm&&(Cm=null,K({kind:`header`})),n===`stale`?Mm():n===`reset`?(Om(t.id),G&&(G.filePath=t.path),jm(),K({kind:`rebuild`}),Mm()):G&&(G.filePath=t.path,n===`prepend`?(G.firstOffset=t.start,Fm(t.records),Mm()):(n===`seed`&&(G.hasLoadedOnce=!0,G.firstOffset=t.start),G.nextOffset=t.next,Pm(t.records),Mm())))}function Ym(e){let t=e?.id;typeof t==`string`&&t===ym&&wm()&&(xm?Sm=!0:jm())}function Xm(e){let t=e?.id;if(typeof t!=`string`||xm?.request.id!==t)return!1;Em(),Sm=!1;let n=e?.message;return Cm=typeof n==`string`&&n?n:`The trace could not be read.`,K({kind:`rebuild`}),!0}function Zm(e){Em(),Sm=!1,Cm=e?null:b,e?(K({kind:`header`}),jm()):K({kind:`rebuild`})}var Qm=80,$m=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 eh(e){return e.replace(/\B(?=(\d{3})+(?!\d))/g,`,`)}function th(e){return e.includes(`.`)?e.replace(/0+$/,``).replace(/\.$/,``):e}function nh(e){if(typeof e!=`number`||!Number.isFinite(e))return`-`;let t=Math.round(e);return`${t<0?`-`:``}${eh(String(Math.abs(t)))}`}function rh(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}$${eh(r)}.${i}`}function ih(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}${th((n/1e3).toFixed(1))}k`:n<999995e3?`${t}${th((n/1e6).toFixed(2))}M`:`${t}${th((n/1e9).toFixed(2))}B`}function ah(e){return typeof e!=`number`||!Number.isFinite(e)?`ok`:e>=100?`crit`:e>=Qm?`warn`:`ok`}function oh(e){let t=ve(e?.max,null);return t===null||t<=0?null:t}function sh(e){let t=oh(e),n=ve(e?.pct,null);return t===null||n===null?null:n*100}function ch(e,t){let n=oh(t),r=ve(e?.projectedTokens,null);return n===null||r===null?null:r/n*100}var lh=90;function uh(e){let t=e?.budget?.rows;return Array.isArray(t)?t.filter(e=>e&&ve(e.budgetUsd,null)!==null):[]}function dh(e){let t=ve(e?.pct,null);return t===null?0:t}function fh(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 ph(e){return e?.vendor===`codex`?`codex`:`claude`}function mh(e){return fh(e,`fiveHour`)?.pct??null}function hh(e,t=null){let n=mh(t);if(n!==null)return ah(n);let r=ah(sh(e?.tokenLimit));return r===`ok`?ah(ch(e?.activeBlock?.projection,e?.tokenLimit)):r}function gh(e,t=null){let n=[],r=hh(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 uh(e)){let e=dh(t);if(e<lh)continue;let r=typeof t?.scope==`string`&&t.scope?t.scope:`budget`;n.push(`budget:${r}:${e>=100?`over`:`near`}`)}return _e(n)}function _h(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 vh(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 yh(e){if(Array.isArray(e))return e.length;let t=Number(e);return Number.isFinite(t)?t:null}function bh(e){if(!e||typeof e!=`object`)return``;let t=[],n=yh(e.dirs);if(n!==null&&t.push(`${nh(n)} transcript ${n===1?`directory`:`directories`}`),Number.isFinite(e.files)&&t.push(`${nh(e.files)} files`),Number.isFinite(e.entries)&&t.push(`${nh(e.entries)} entries`),Number.isFinite(e.lastScanMs)&&t.push(`last pass ${nh(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 xh(e){return ue(e?.error,``)}function Sh(e,t){if(!e||typeof e!=`object`)return!1;let n=e.requestId;return n==null||n===t}function Ch(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 wh(e){let t=Number(e?.tokens);if(!Number.isFinite(t)||t<=0)return``;let{costUSD:n}=Ch(e);return n===null?ih(t):`${ih(t)} ${rh(n)}`}function Th(e){let{source:t}=Ch(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 Eh({hasPlan:e,pendingPromptKind:t,hasOpenReview:n,hasApprovedReview:r=!1}){return e&&(n||t===`plan`&&!r)?`plan`:`terminal`}function Dh({hasPlan:e,isBorrowed:t,face:n}){return!e||n===`plan`?`hidden`:t?`face`:`navigate`}function Oh(e){return e instanceof Error?e.message:String(e)}function kh(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 Ah(e){return e.split(/[\\/]/).filter(Boolean).at(-1)??e}async function jh(e){let[t,n]=await Promise.all([et(`get-workspace-repos`,{id:e}),et(`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:Ah(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 Mh(e){let{overlay:t,dialog:n,close:r,actions:i,btnCancel:a}=Nt({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()),jh(e).then(e=>{if(t.isConnected){s.textContent=``;for(let t of e)s.append(kh(t.name,t.path,t.isMember));u.disabled=!1}}).catch(e=>{t.isConnected&&(s.textContent=``,l.textContent=`Could not load repositories: ${Oh(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`,et(`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: ${Oh(e)}`)}).finally(()=>{c.textContent=``,u.disabled=!1}))})}function Nh(e,t,n){return{body:String(n||`Session needs attention`),tag:`glimmervoid-${e||``}-${t||``}`,renotify:!0}}var Ph=4e3;function Fh(e,t){return`glimmervoid-notify-claim-${e||``}-${t||``}`}function Ih(e,t,n,r=Ph){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 Lh(){return typeof Notification>`u`?null:Notification}function Rh(){return Lh()!==null}function zh(){let e=Lh();return e?e.permission:`unavailable`}async function Bh(){let e=Lh();if(!e)return`denied`;if(e.permission!=="default")return e.permission;try{return await e.requestPermission()}catch{return e.permission}}function Vh(){return!Rh()&&!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.`:Rh()?zh()===`denied`&&zr()?`Blocked by the browser. Allow notifications for this site in its site settings.`:null:`This browser does not support desktop notifications.`}function Hh(){return zr()&&zh()==="default"}function Uh(e=()=>{}){let t=w(`div`,`notification-permission`),n=()=>{let r=Vh();if(t.replaceChildren(),t.hidden=!r&&!Hh(),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,Bh().then(()=>{n(),e()})}),t.append(i)};return n(),{element:t,refresh:n}}var Wh=`Notifications`,Gh=`Desktop notifications are blocked by the browser, so alerts show only in this tab. Allow notifications for this site to get them again.`,Kh=new Map,qh=!1;function Jh(){qh||(qh=!0,R({source:Wh,message:Gh,hidesInStreamerMode:!1}))}function Yh(e,t){let n=Kh.get(e)??new Set;n.add(t),Kh.set(e,n),t.addEventListener(`close`,()=>n.delete(t))}function Xh(e){let t=Kh.get(e);if(t){Kh.delete(e);for(let e of t)e.close()}}function Zh(e){return!Rh()||!zr()||document.documentElement.hasAttribute(`data-streamer`)?!1:e||!document.hasFocus()}function Qh(e=!1){return Zh(e)&&zh()===`granted`}function $h({session:e,category:t,message:n,kind:r,ignoreFocus:i=!1}={}){let a=Lh();if(!a||!Zh(!!i)||(a.permission===`denied`&&Jh(),a.permission!==`granted`)||(Ds(Wh),!Ih(window.localStorage,Fh(e,t),Date.now())))return;let o=typeof e==`string`?e:``,s=O.get(o),c=s?_t(s):``;try{let i=new a(c||`Glimmervoid`,Nh(e,t,n));i.onclick=()=>{window.focus(),r===`plan`&&o&&(window.location.hash=Vu(o)),i.close()},s&&Yh(o,i)}catch{}}var eg=`CommitMono`,tg=[400,700].map(e=>`${e} 14px ${eg}`),ng=`monospace`;function rg(e){return e.trim().replace(/^['"]|['"]$/g,``)}function ig(e,t){let n=e.split(`,`).map(e=>e.trim()).filter(e=>e.length>0),r=t?n:n.filter(e=>rg(e)!==eg);return r.length>0?r.join(`, `):ng}function ag(e,t,n){return Promise.all(t.map(t=>e.load(t))).then(n,()=>void 0)}function og(e,t){for(let n of e)n.term&&(n.term.options.fontFamily=t,n._syncGrid?.())}function sg(){return document.fonts?tg.every(e=>document.fonts.check(e)):!1}function cg(){return ig(getComputedStyle(document.documentElement).getPropertyValue(`--font-mono`),sg())}function lg(e){document.fonts&&ag(document.fonts,tg,e)}var ug=3e4,dg=24,fg=null,pg=[`Android`,`iPhone`,`iPad`,`Windows`,`Mac OS X`,`Linux`],mg=[/Firefox\/\d+/,/Edg\/\d+/,/Chrome\/\d+/,/Version\/\d+/];function hg(){let e=navigator.userAgent,t=pg.find(t=>e.includes(t))??`unknown platform`;return`${mg.map(t=>t.exec(e)?.[0]).find(e=>e!==void 0)?.replace(`Version`,`Safari`)??`unknown browser`} on ${t}`}function gg(){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 _g(){return[navigator.onLine?`online`:`offline`,...gg()].join(` `)}function vg(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 yg(e,t){let n=e.join(` `);if(n.length<=t)return n;let r=t-dg,i=vg(e,r/2),a=vg(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 bg(e){return e.marks.some(e=>e.startsWith(`terminal-bytes`))}function xg(e){let t=bg(e)&&!e.isCapped?`terminal live`:`terminal not live after ${ug/1e3} s`,n=`hidden ${Math.round(e.hiddenForMs/1e3)} s, ${t}, ${hg()}, ${e.networkAtWake}: `,r=n+yg(e.marks,ae-n.length);return E({type:`client-log`,scope:`wake`,text:r.slice(0,ae)})}function Sg(){let e=fg;e&&(e.isCapped||bg(e))&&xg(e)&&(fg=null,clearTimeout(e.capTimer))}function Cg(){fg&&(fg.isCapped=!0,Sg())}function wg(e,t){e.marks.push(`${t}+${Math.round(performance.now()-e.startedAtMs)}`)}function Tg(e){fg&&(e===`terminal-bytes`&&bg(fg)||(wg(fg,e),(e===`terminal-bytes`||e===`control-opened`)&&Sg()))}function Eg(e){fg&&wg(fg,e===`link`?[`link`,...gg()].join(`-`):e)}function Dg(e,t){fg||={startedAtMs:performance.now(),hiddenForMs:t,networkAtWake:_g(),marks:[],isCapped:!1,capTimer:setTimeout(Cg,ug)},Tg(e)}var Og=6,kg=262144,Ag=16384,jg=()=>{};function Mg(e,t){if(t.length<=Ag)e.push(t);else for(let n=0;n<t.length;n+=Ag)e.push(t.slice(n,n+Ag))}function Ng({budget:e=Og,maxChunkBytes:t=kg,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)Mg(l,e),m+=e.length,a.readIdx++;else{m===0&&(Mg(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,jg);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 Pg=Ng(),Fg={"--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)`},Ig={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`},Lg={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`,...Fg,"--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:{...Ig,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`,...Fg,"--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:{...Ig,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`,...Fg,"--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:{...Ig,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`}}},Rg=`phyrexian`,zg=null,Bg=null;function Vg(e){let t=Lg[e];if(!t)return;let n=Bg;Bg=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`&&zg?.()}function Hg(e){zg=e}function Ug(e){document.documentElement.toggleAttribute(`data-show-usage`,e)}function Wg(e){document.documentElement.toggleAttribute(`data-arrow-pad`,e)}function Gg(){let e=Lg[Bg||Rg];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 Kg(){return Object.entries(Lg).map(([e,t])=>({id:e,label:t.label}))}var qg=e().int().min(1).max(500),Jg=e().int().min(1).max(200);r(`type`,[a({type:i(`input`),data:t()}),a({type:i(`claim`),cols:qg,rows:Jg}),a({type:i(`unview`)}),a({type:i(`pause-output`)}),a({type:i(`resume-output`)})]);var Yg=a({type:i(`pty-size`),cols:qg,rows:Jg,seq:e().int().nonnegative()}),Xg=a({type:i(`output-beat`)}),Zg=r(`type`,[Yg,Xg]),Qg=`history`,$g=`output`,e_=`paused`;n([`screen`,`deep`]);function t_(e){try{return JSON.parse(e)}catch{return null}}function n_(e){let t=Zg.safeParse(t_(e));return t.success?t.data:null}var r_=new Set([1,5,25,100]);function i_(e){return e.isOutputPaused?`${e.history} paused`:e.history}function a_(e,t){return!e||!t?!1:e.cols===t.cols&&e.rows===t.rows}function o_(e){return!e||!Number.isInteger(e.cols)||!Number.isInteger(e.rows)?!1:e.cols>0&&e.rows>0}function s_(e){return{cols:Math.min(Math.max(e.cols,1),500),rows:Math.min(Math.max(e.rows,1),200)}}function c_({authoritative:e,isActiveViewer:t,lastClaim:n}){return!(t&&a_(e,n))}function l_({isDocumentVisible:e,isDocumentFocused:t,hasFocusInsideCard:n,hasWindowBlurredSinceFocus:r,isPhoneLayout:i}){return e?i||t?!0:n&&!r:!1}function u_({isBorrowedCard:e,isTerminalFaceShown:t}){return!e||!t}function d_({viewportTopLine:e,scrollbackLineCount:t,isDeepHistoryLoadedOrPending:n}){return e===0&&t>0&&t<5e3&&!n}function f_(e,t,n){let r=new URLSearchParams;t&&r.set(Qg,`deep`),n&&r.set($g,e_);let i=`/terminals/${encodeURIComponent(e)}`,a=r.toString();return a?`${i}?${a}`:i}function p_({authoritative:e,isActiveViewer:t,isDocumentEngaged:n,isDataWsOpen:r,lastClaim:i}){return!t||!n||!r?`none`:c_({authoritative:e,isActiveViewer:t,lastClaim:i})?`rebid`:`resync`}function m_({isActiveViewer:e,lastClaim:t,owedClaim:n}){return e?n??t:null}function h_({authoritative:e,applied:t,proposal:n,isActiveViewer:r,isDataWsOpen:i,lastClaim:a}){let o=!!e&&!a_(e,t),s=o_(n)?s_(n):null,c=r&&!!s&&!a_(s,a);return{resizeTo:o?e:null,owedClaim:c?s:null,keepsPendingSettle:r&&!s,sendUnview:!r&&i&&!!a,isFollowing:c_({authoritative:e,isActiveViewer:r,lastClaim:a})}}function g_(e){return e instanceof ArrayBuffer||ArrayBuffer.isView(e)?new TextDecoder().decode(e):null}function __(e){let t=g_(e);return t===null?null:n_(t)}function v_(e,t){if(typeof e==`string`)return{kind:`bytes`,data:e};let n=__(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 y_=``,b_=`\x1B`,x_=`\r`,S_=new Map([[`deleteContentBackward`,y_],[`deleteByComposition`,y_],[`deleteCompositionText`,y_],[`deleteWordBackward`,b_],[`deleteSoftLineBackward`,b_],[`deleteHardLineBackward`,b_]]);function C_(e){return S_.get(e)??``}var w_=new Set([`insertFromPaste`,`insertFromPasteAsQuotation`,`insertFromDrop`,`insertFromYank`,`historyUndo`,`historyRedo`]);function T_(e){return typeof e!=`string`||e===``||!w_.has(e)}function E_(e){return e?e.keyCode===229||e.key===`Process`:!1}function D_(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 y_.repeat(n.length-a)+r.slice(a).join(``).replace(/\r\n|\n|\r/g,x_)}var O_=/https?:\/\/[^\s<>"']+/g,k_=new Set([`.`,`,`,`;`,`:`,`!`,`?`,`'`,`"`]),A_={")":`(`,"]":`[`,"}":`{`};function j_(e,t){let n=0;for(let r of e)r===t&&n++;return n}function M_(e){for(;;){let t=e[e.length-1];if(t===void 0)return e;if(k_.has(t)){e=e.slice(0,-1);continue}let n=A_[t];if(n&&j_(e,n)<j_(e,t))e=e.slice(0,-1);else return e}}function N_(e){let t=[];for(let n of e.matchAll(O_)){let e=M_(n[0]);e.length<=8||t.push({start:n.index,end:n.index+e.length,url:e})}return t}var P_=50;function F_(){return{activate(e,t){bo(t)},allowNonHttpProtocols:!1}}function I_(e,t){let n=t-1;for(;n>0&&e.getLine(n)?.isWrapped&&t-1-n<P_;)n--;let r=t-1;for(;e.getLine(r+1)?.isWrapped&&r-(t-1)<P_;)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 L_(e){return e.registerLinkProvider({provideLinks(t,n){let r=e.buffer?.active;if(!r)return n(void 0);let{text:i,cellAt:a}=I_(r,t),o=[];for(let{start:e,end:t,url:n}of N_(i)){let r=a[e],i=a[t-1];r&&i&&o.push({range:{start:r,end:i},text:n,activate(e,t){bo(t)}})}n(o.length?o:void 0)}})}var R_=`(?:password|passwd|pwd|token|api[_-]?key|secret|credential|auth[_-]?token|access[_-]?key|secret[_-]?key|private[_-]?key|client[_-]?secret|connection[_-]?string)`,z_=`(?:"[^"\\r\\n]*"|'[^'\\r\\n]*'|[^\\s\\r\\n]+)`,q=`[^\\S\\r\\n]`,B_=`${R_}${q}*(?:=>|[:=])${q}*`,V_=`[?&][A-Za-z0-9_.-]*`,H_=`[^\\r\\n;&|]{0,200}?`,U_=`(?:mysql|mysqldump|mysqladmin|mysqlshow|mariadb|mariadb-dump)`,W_=RegExp(`(${B_})${z_}`,`gi`),G_=RegExp(`(\\bBearer${q}+)[A-Za-z0-9._~+/=-]{8,}`,`gi`),K_=[/\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],q_=[RegExp(`((?:^|\\s)--?${R_}${q}+)${z_}`,`gi`),RegExp(`((?:^|\\s)-(?:pwd|pw)(?![a-z])${q}*=?${q}*)${z_}`,`g`),RegExp(`(-AsPlainText${q}+)${z_}`,`gi`),RegExp(`((?:^|\\s)setx${q}+[^\\s\\r\\n]*${R_}[^\\s\\r\\n]*${q}+)${z_}`,`gi`)],J_=[RegExp(`(\\bauthorization${q}*:${q}*Basic${q}+)[A-Za-z0-9+/=_-]{8,}`,`gi`),RegExp(`(\\bdocker${q}+login\\b${H_}${q}-p(?:${q}+|=))${z_}`,`gi`),RegExp(`(\\bcurl\\b${H_}${q}(?:--user|-u)(?:${q}+|=)[^\\s:\\r\\n]+:)${z_}`,`gi`),RegExp(`(\\b${U_}\\b${H_}${q}-p)${z_}`,`g`),/\b([a-z][a-z0-9+.-]*:\/\/[^\s:/@]+:)[^\s@/]+(?=@)/gi];[...q_,...J_];var Y_=[/-----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],X_=RegExp(`(${V_}(?:${R_}|_key)=)[^&#\\s]+`,`gi`),Z_=[W_,RegExp(`(\\b(?=[A-Z0-9_]*(?:SECRET|TOKEN|KEY|PASSWORD))[A-Z][A-Z0-9_]*=)${z_}`,`g`)],Q_=[G_,...q_,...J_,...K_,...Y_];function $_(e,t){return[...e.matchAll(t)].map(e=>({matchStart:e.index,valueStart:e.index+(e[1]??``).length,end:e.index+e[0].length}))}function ev(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 tv(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 nv(e){let t=$_(e,X_);return tv([...t,...Z_.flatMap(n=>ev($_(e,n),t)),...Q_.flatMap(t=>$_(e,t))].map(e=>({start:e.valueStart,end:e.end})))}var rv=`glimmervoid-streamer-mode`,iv=new Set,av=Un(rv,!1)===!0,ov=null;function sv(e){document.documentElement.toggleAttribute(`data-streamer`,e),ov?.setAttribute(`aria-pressed`,String(e))}sv(av);function cv(){return av}function lv(e){if(Wn(rv,e),e!==cv()){av=e,sv(e);for(let t of iv)t(e)}}function uv(e){return iv.add(e),()=>iv.delete(e)}async function dv(e){try{let t=await et(`update-settings`,{settings:{streamerMode:e}},{timeoutMs:ds});return t.type===`settings-error`?String(t.message):(lv(e),``)}catch(e){return bs(e,ds)}}var fv=`Streamer mode`;async function pv(){let e=!cv();e&&lv(!0);let t=await dv(e);t?R({source:fv,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}):Ds(fv)}function mv(){pv()}function hv(e){ov=e,sv(cv()),e.addEventListener(`click`,mv)}var gv=`#808080`,_v=new WeakMap;function vv(e,t,n){return`${e}:${t}:${n}`}function yv(e){return vv(e.marker.line,e.x,e.width)}function bv(e,t){let n=t;for(;n>0&&t-n<63&&e.getLine(n)?.isWrapped;)n--;return n}function xv(e,t){let n=t;for(;n-t<63&&e.getLine(n+1)?.isWrapped;)n++;return n}function Sv(e,t,n){let r=``;for(let i=t;i<=n;i++)r+=e.getLine(i)?.translateToString(!1)??``;return r}function Cv(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 wv(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 Tv(e,t,n,r){let i=[];if(nv(Sv(e,t,n)).length===0)return i;let{text:a,cellAt:o}=Cv(e,t,n,r);for(let e of nv(a))wv(i,o.slice(e.start,e.end));return i}function Ev(e,t){let n=e.getNullCell(),r=[],i=t;for(;i<e.length;){let t=xv(e,i);r.push(...Tv(e,i,t,n)),i=t+1}return r}function Dv(){return{masks:[],watermark:null,isFullRescanOwed:!0}}function Ov(e){e.decoration.dispose(),e.marker.dispose()}function kv(e){for(let t of e.masks)Ov(t);e.masks.length=0,e.watermark?.dispose(),e.watermark=null,e.isFullRescanOwed=!0}function Av(e,t){let n=e.watermark;return e.isFullRescanOwed||!n||n.isDisposed?0:Math.min(n.line,t.baseY)}function jv(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 Mv(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(yv(r),r),r=e.masks.at(-1);return jv(e),n}function Nv(e,t){let n={normal:Dv(),alternate:Dv()},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??gv,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(!cv())return;let t=e.buffer.active,r=n[t.type],i=bv(t,Av(r,t)),a=Mv(r,i);for(let e of Ev(t,i)){let n=vv(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())Ov(e);r.watermark?.dispose(),r.watermark=e.registerMarker(-t.cursorY)??null,r.isFullRescanOwed=!1}function u(){kv(n.normal),kv(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=>{kv(n.alternate),s(`normal`),e.type===`alternate`&&l()})],p=uv(d);t.addEventListener(`abort`,()=>{p();for(let e of f)e.dispose();u(),_v.delete(e)},{once:!0}),_v.set(e,d)}function Pv(e){_v.get(e)?.()}function Fv({hasTerminal:e,isSocketOpen:t,isInputHeld:n}){return e?n||!t?`connecting`:`live`:`none`}var Iv=`Upload`;async function Lv(e,t){return Ds(Iv,e),zv(e,t)}async function Rv(e,t){Ds(Iv,e);for(let n of t)await zv(e,n)}async function zv(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:Iv,sessionId:e,message:await Bv(r,t.name)}),!1)}catch{return R({source:Iv,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 Bv(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 Vv=10,Hv=1.2,Uv=.005,Wv=4,Gv=.08,Kv=5;function qv(e,t){let n=Math.abs(t);return n<Vv?!1:n>Math.abs(e)*Hv}function Jv(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 Yv(e,t,n){let r=e.length>=Wv?e.slice(1):e.slice();return r.push({positionPx:t,timestampMs:n}),r}function Xv(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>=Gv))return 0;let o=Math.min(a,Kv);return i<0?-o:o}function Zv({velocityPxPerMs:e,startedAtMs:t,cellHeightPx:n,pendingPx:r=0}){return!e||!(n>0)?null:{velocityPxPerMs:e,lastMs:t,cellHeightPx:n,pendingPx:r}}function Qv(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)-Uv*n;if(!(r>0))return{scrollLines:0,state:null};let i=e.velocityPxPerMs<0?-1:1,a=i*r*n,{scrollLines:o,remainderPx:s}=Jv(e.pendingPx+a,e.cellHeightPx);return{scrollLines:o,state:{velocityPxPerMs:i*r,lastMs:t,cellHeightPx:e.cellHeightPx,pendingPx:s}}}function $v(e,t){return e===`alternate`||!!t&&t!==`none`}function ey(e,t){return!(e>0)||!(t>0)?0:e/t}var ty=1;function ny(e){return typeof e._core?._viewport?.handleTouchScroll==`function`}function ry(e,t){for(let n of e)if(n.identifier===t)return n;return null}function iy(e,t){if(ny(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=()=>$v(t.buffer?.active?.type,t.modes?.mouseTrackingMode),m=()=>{let e=t.element?.querySelector(`.xterm-screen`);return ey(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:ty,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}=Qv(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=Zv({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=ry(e.touches,r);if(!u)return;if(!s){if(!qv(u.clientX-i,u.clientY-a))return;s=!0,o=u.clientY,c=0,l=Yv([],u.clientY,e.timeStamp)}e.cancelable&&e.preventDefault(),c+=u.clientY-o,o=u.clientY,l=Yv(l,u.clientY,e.timeStamp);let d=p(),{scrollLines:f,remainderPx:h}=Jv(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=Yv(l,o,e.timeStamp);let t=Xv(l),n=c;h(),t!==0&&v(t,performance.now(),n)},{passive:!0}),e.addEventListener(`touchcancel`,()=>{f(),h()},{passive:!0})}function ay(e){return e.needsReload?!0:e.wasAttachedWithoutLayout&&e.hasLayoutNow}function oy(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 sy=null,cy=null;function ly(){return sy}function uy(){return sy?Promise.resolve(sy):(cy??=Promise.all([P(()=>import(`./xterm-CdMfg81L.js`).then(e=>e.t),__vite__mapDeps([14,15])),P(()=>import(`./xterm-CdMfg81L.js`).then(e=>e.r),__vite__mapDeps([14,15])),P(()=>import(`./xterm-CdMfg81L.js`).then(e=>e.n),__vite__mapDeps([14,15]))]).then(([e,t,n])=>(sy={Terminal:e.Terminal,FitAddon:t.FitAddon,WebglAddon:n.WebglAddon},sy)).catch(e=>{throw cy=null,e}),cy)}var dy=window.matchMedia?.(`(pointer: coarse)`).matches?4:12,fy=new Map;function py(e){return e.clientWidth>0&&e.clientHeight>0}function my(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 hy(e){fy.delete(e),e.needsWebGLReload=!1,e.webglAttachedWithoutLayout=!1,my(e)}function gy(e){let t=[e],n=j.snapshot().borrowedCardId,r=n?O.get(n):void 0;r&&t.push(r);for(let e of oy([...fy.keys()],dy,t))hy(e),e.needsWebGLReload=!0}function _y(e){e?.term&&ay({needsReload:e.needsWebGLReload,wasAttachedWithoutLayout:e.webglAttachedWithoutLayout,hasLayoutNow:py(e.termWrap)})&&Sy(e,{isForced:!0})}function vy(){for(let e of fy.keys()){let t=e.term;if(e.webglAddon&&t)try{t.clearTextureAtlas(),t.refresh(0,t.rows-1)}catch{hy(e),e.needsWebGLReload=!0}}}var yy=!1;function by(){yy||(yy=!0,requestAnimationFrame(()=>{yy=!1,vy()}))}function xy(e){e?.addEventListener(`contextrestored`,by)}function Sy(e,t={}){try{if(e.webglAddon&&!e.needsWebGLReload&&!t.isForced){fy.delete(e),fy.set(e,!0);return}e.webglAddon&&(my(e),fy.delete(e));let n=ly();if(!n)return;gy(e);let r=new n.WebglAddon;r.onContextLoss(()=>{r.dispose(),e.webglAddon=null,fy.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(xy),r.onAddTextureAtlasCanvas(xy),xy(r.textureAtlas),e.webglAddon=r,e.needsWebGLReload=!1,e.webglAttachedWithoutLayout=!py(e.termWrap),fy.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,fy.delete(e)}}function Cy(e){let t=hr(e,ud,{isTerminalFocused:!0},pd());return t?gr(t,document.body.dataset.activeView):!1}var wy=1024,Ty=250,Ey=`(max-width: 768px)`,Dy=12,Oy=14,ky=5e4,Ay=!1;function jy(e){Ay=e}var My=!1;window.addEventListener(`blur`,()=>{My=!0}),window.addEventListener(`focus`,()=>{My=!1});function Ny(e){let t=document.activeElement;return l_({isDocumentVisible:document.visibilityState===`visible`,isDocumentFocused:document.hasFocus(),hasFocusInsideCard:t instanceof Node&&e.contains(t),hasWindowBlurredSinceFocus:My,isPhoneLayout:vu()})}function Py(e,t){return u_({isBorrowedCard:j.snapshot().borrowedCardId===t,isTerminalFaceShown:e.face===`terminal`})}var Fy=new WeakMap,Iy=new WeakMap,Ly=new WeakSet,Ry=new WeakSet,zy=new WeakSet,By=new WeakMap,Vy=5e3,Hy=15e3,Uy=`Keys you type now are held and sent once the terminal reconnects.`,Wy=`The terminal is still reconnecting and its key buffer is full, so new keys are dropped.`,Gy=`The agent copied text. The browser needs a click before it can reach your clipboard.`,Ky=`The clipboard is unavailable in this browser.`;function qy(e,t,n,r){let i=By.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(()=>Jy(e,t),n===`ok`?Vy:Hy)))}function Jy(e,t){let n=By.get(e);n&&n.shownKind===t&&(n.clearTimerId!==null&&clearTimeout(n.clearTimerId),n.clearTimerId=null,n.shownKind=null,n.status.clear())}function Yy(e){let t=e.buffer.active;return t.viewportY<t.baseY}function Xy(e,t,{hasNewOutput:n=!1}={}){let r=By.get(e)?.jumpToLatestButton;if(!r)return;let i=Yy(t);r.hidden=!i,i?n&&(r.dataset.hasNewOutput=`true`):delete r.dataset.hasNewOutput}function Zy(e,t){if(Fy.has(e)||!Yy(t))return;let n=t.buffer.active,r=n.length-n.viewportY;Ly.has(e)?Fy.set(e,r):Iy.set(e,r)}function Qy(e,t,n){let r=e.term;r&&d_({viewportTopLine:n,scrollbackLineCount:r.buffer.active.baseY,isDeepHistoryLoadedOrPending:Ly.has(e)})&&(Ly.add(e),Ry.add(e),Fy.set(e,r.buffer.active.length-n),Ib(t))}var $y=new WeakMap;function eb(e,t){return document.visibilityState===`visible`&&!Py(e,t)}function tb(e,t){if(e&&Sb(e,t))return;let n=e?.dataWs;if(!e||n?.readyState!==WebSocket.OPEN)return;let r=eb(e,t);$y.get(n)!==r&&($y.set(n,r),n.send(JSON.stringify({type:r?`resume-output`:`pause-output`})))}function nb(){for(let[e,t]of O)tb(t,e)}document.addEventListener(`visibilitychange`,nb),j.subscribe((e,t)=>{t.includes(`borrowedCardId`)&&nb()});function rb(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 ib(e,t,n){let r=(n instanceof Error?n.message:``)||String(n);console.error(`[clipboard:${t}]`,n),qy(e,`clipboard`,`error`,`Clipboard ${t} failed: ${r}`)}function ab(e,t,n,r){let i=qe(t);i?i.then(()=>{r&&qy(e,`clipboard`,`ok`,r)}).catch(t=>ib(e,n,t)):qy(e,`clipboard`,`error`,Ky)}function ob(e,t){let n=By.get(e);n&&(n.pendingClipboardText=t,n.clipboardPrompt.hidden=!1)}function sb(e){let t=By.get(e),n=t?.pendingClipboardText;t&&n!=null&&(t.pendingClipboardText=null,t.clipboardPrompt.hidden=!0,ab(e,n,`osc52 write`,`Copied to the clipboard.`))}function cb(e,t,n){let r=vs(`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`,()=>sb(t)),i.append(w(`span`,`terminal-clipboard-prompt-text`,Gy),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),By.set(t,{status:r,shownKind:null,clearTimerId:null,clipboardPrompt:i,pendingClipboardText:null,jumpToLatestButton:s})}function lb(e,t){return O.get(e)===t&&!t.dataWs}function ub(e){return e.querySelector(`:scope > .terminal-connecting`)}function db(e){if(ub(e))return;let t=w(`div`,`terminal-connecting`);t.append(w(`span`,`terminal-connecting-label`,`Connecting`)),e.append(t)}function fb(e){let t=ub(e);if(!t)return;t.querySelector(`:scope > .terminal-connecting-animal`)?.remove();let n=Vi();n&&t.prepend(Bi(n,`terminal-connecting-animal`))}var pb=new Set,mb=new WeakSet;function hb(e){return pb.add(e),()=>pb.delete(e)}function gb(){let e=0;for(let[t,n]of O)n.card.dataset.link===`connecting`&&eb(n,t)&&e++;return e}function _b(e){let t=Fv({hasTerminal:e.term!==null||mb.has(e),isSocketOpen:e.dataWs?.readyState===WebSocket.OPEN,isInputHeld:Mb}),n=t===`connecting`&&!Mb&&Ry.has(e)?`live`:t;if(n===`none`){delete e.card.dataset.link,vb();return}let r=n===`connecting`&&e.card.dataset.link!==`connecting`;e.card.dataset.link=n,r&&fb(e.termWrap),vb()}function vb(){for(let e of pb)e()}function yb(e,t,n){Zy(t,n),Pg.unregister(e),t.dataWs=null,_b(t),t._resetGridClaim?.()}var bb=new WeakMap;function xb(e,t,n,r){yb(e,t,n),clearTimeout(bb.get(t)),bb.delete(t),r===0&&rt()?jb(e,t,n):bb.set(t,setTimeout(()=>{bb.delete(t),lb(e,t)&&at().catch(()=>{}).then(()=>{lb(e,t)&&jb(e,t,n)})},r))}function Sb(e,t){let n=zy.has(e),r=!e.dataWs&&O.get(t)===e;return!(n||r)||!e.term||!eb(e,t)?!1:(zy.delete(e),e._dataWsRetryAttempt=0,xb(t,e,e.term,0),!0)}function Cb(e,t,n){yb(e,t,n),zy.add(t)}var wb=15e3,Tb=new Map;function Eb(e){if(!rt()||Tb.has(e)||O.get(e)?.dataWs)return;let t=f_(e,!1,!1),n=new WebSocket(mt(location,nt(t)));n.binaryType=`arraybuffer`;let r=[],i=e=>r.push(e),a=()=>Db(e,n),o=()=>{n.readyState===WebSocket.CONNECTING&&a()};n.addEventListener(`message`,i),n.addEventListener(`close`,a);let s=setTimeout(o,Xe),c=setTimeout(a,wb);Tb.set(e,{socket:n,attachPath:t,bufferedMessages:r,release:()=>{n.removeEventListener(`message`,i),n.removeEventListener(`close`,a),clearTimeout(s),clearTimeout(c)}})}function Db(e,t){let n=Tb.get(e);n?.socket===t&&(Tb.delete(e),n.release(),t.close())}function Ob(e,t){let n=Tb.get(e);if(!n)return null;let r=n.socket.readyState===WebSocket.CONNECTING||n.socket.readyState===WebSocket.OPEN;return n.attachPath!==t||!r?(Db(e,n.socket),null):(Tb.delete(e),n.release(),n)}var kb=new WeakMap;function Ab(e,t,n){if(t.openedAtMs===null)return;let r=Math.round(performance.now()-t.openedAtMs);if(r>=1e3){kb.delete(e);return}let i=(kb.get(e)??0)+1;if(kb.set(e,i),!r_.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 jb(e,t,n){zy.delete(t);let r=Fy.get(t);Fy.delete(t);let i=Iy.get(t);Iy.delete(t);let a=r!==void 0,o=r??i,s=!1,c=eb(t,e),l=f_(e,a,!c),u=Ob(e,l),d=u?.socket??new WebSocket(mt(location,nt(l)));$y.set(d,c),d.binaryType=`arraybuffer`,t.dataWs=d,c&&Tg(`terminal-connecting`),_b(t);let f=!1,p=!1,m={sessionId:e,attachDescription:i_({history:a?`deep`:`screen`,isOutputPaused:!c}),openedAtMs:null,hasReceivedBytes:!1},h={hasSeenSize:!1,lastSeq:0},g=setTimeout(()=>{d.readyState===WebSocket.CONNECTING&&(p=!0,c&&Tg(`terminal-abandoned`),d.close())},Xe);Pg.register(e,(e,t)=>n.write(e,t));let _=r=>{if(t.dataWs!==d)return;let i=v_(r.data,h);if(i.kind===`bytes`){m.hasReceivedBytes=!0,Bt(t),$y.get(d)&&Tg(`terminal-bytes`);let r=s;if(s=!1,Pg.enqueue(e,i.data),!r)return;let a=o??0;Pg.enqueueAction(e,()=>{n.scrollToLine(Math.max(0,n.buffer.active.length-a))});return}if(i.kind===`beat`){Bt(t);return}if(i.kind===`attach-size`){s=o!==void 0,a||Ly.delete(t),h.hasSeenSize=!0,h.lastSeq=i.seq,n.reset(),Pv(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};Pg.enqueueAction(e,()=>{t.ptySize=c,t._syncGrid?.()})};d.addEventListener(`message`,_),d.addEventListener(`close`,r=>{if(clearTimeout(g),t.dataWs!==d)return;if(Ab(t,m,r),c&&!p&&Tg(`terminal-closed`),Ry.delete(t),!f&&!p&&ct(),!eb(t,e)){Cb(e,t,n);return}if(p){xb(e,t,n,0);return}let i=Qe(t._dataWsRetryAttempt||0);t._dataWsRetryAttempt=(t._dataWsRetryAttempt||0)+1,xb(e,t,n,i)});let v=()=>{clearTimeout(g),f=!0,m.openedAtMs=performance.now(),c&&Tg(`terminal-opened`),t._dataWsRetryAttempt=0,Ry.delete(t),_b(t),tb(t,e),t._syncGrid?.({isActivationEdge:!0}),t._retryOwedGridClaim?.(),t._inputQueue?.length&&setTimeout(()=>{t.dataWs===d&&Nb(t)},50)};d.addEventListener(`open`,v),d.readyState===WebSocket.OPEN&&v();for(let e of u?.bufferedMessages??[])_(e)}var Mb=!1;function Nb(e){let t=e._inputQueue,n=e.dataWs;if(!Mb&&t?.length&&n?.readyState===WebSocket.OPEN){for(let e of t)n.send(JSON.stringify({type:`input`,data:e}));t.length=0,Jy(e,`keys`)}}function Pb(){Mb=!0;for(let e of O.values())_b(e)}function Fb(){Mb=!1;for(let e of O.values())_b(e),Nb(e)}function Ib(e){let t=k(e);if(typeof e!=`string`||!t?.term)return;let n=t.dataWs;t._dataWsRetryAttempt=0,xb(e,t,t.term,0),n?.close()}function Lb(){for(let[e,t]of O)t.term&&(eb(t,e)?Ib(e):Rb(e,t,t.term))}function Rb(e,t,n){let r=t.dataWs;r&&(Cb(e,t,n),r.close())}function zb(){for(let[e,t]of O)t.term&&Rb(e,t,t.term)}function Bb(e,t){let n=e.dataWs;e.dataWs=null,Pg.unregister(t),n&&n.readyState<=WebSocket.OPEN&&n.close()}function Vb(e,t,n){if(!e||t==null||t===``)return!1;if(n?.fromSoftKeyboard||e._resetSoftKeyboardBuffer?.(),!Mb&&!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>=wy?(qy(e,`keys`,`error`,Wy),!1):(e._inputQueue.push(t),r&&qy(e,`keys`,`busy`,Uy),!0)}function Hb(e,t,n){let r=window.matchMedia?.(Ey).matches?Dy:Oy,i=new n.Terminal({cursorBlink:Ay,fontSize:r,fontFamily:cg(),theme:Gg(),scrollback:ky,allowProposedApi:!0,linkHandler:F_()}),a=new n.FitAddon;i.loadAddon(a),db(e),i.open(e),cb(e,t,i),L_(i),Nv(i,t.abortController.signal),t.term=i,t.fitAddon=a,hy(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||!Ny(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=c_({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)},Ty)}function h(){u&&s===null&&p(u)}function g({isActivationEdge:e=!1}={}){let n=t.term;if(!n)return;let r=h_({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=p_({authoritative:t.ptySize??null,isActiveViewer:c,isDocumentEngaged:Ny(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=m_({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&&_y(t),g({isActivationEdge:!0}))},t.card.addEventListener(`focusin`,()=>{My=!1,_()},{signal:t.abortController.signal}),Sy(t);let ee=null;i.onScroll(()=>{ee===null&&(ee=requestAnimationFrame(()=>{ee=null,t.term&&(t.term.refresh(0,t.term.rows-1),Xy(t,t.term))}))}),i.onWriteParsed(()=>Xy(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=rb(r)}catch(e){return ib(t,`osc52 decode`,e),!0}return document.hasFocus()&&navigator.userActivation?.isActive!==!1?(ab(t,i,`osc52 write`),!0):(ob(t,i),!0)}),i.attachCustomKeyEventHandler(e=>{if(e.shiftKey&&e.key===`Enter`)return e.type===`keydown`&&Vb(t,`\x1B\r`),!1;if(e.type!==`keydown`)return!0;if(Cy(e))return!1;let n=e.ctrlKey||e.metaKey;if(n&&e.key===`c`&&i.hasSelection()){let e=i.getSelection();return i.clearSelection(),ab(t,e,`copy`),!1}return n&&e.key===`v`?!1:n&&e.key===`Backspace`?(Vb(t,`\x1B`),!1):!0}),Ub(e,i,t),iy(e,i)}function Ub(e,t,n){let r=t.textarea;if(!r)return;let i=``,a=()=>{i=r.value},o=()=>{i=``,vu()&&r.value!==``&&(r.value=``)};n._resetSoftKeyboardBuffer=o;let s=()=>{let e=D_(i,r.value);return i=r.value,e!==``&&(Vb(n,e,{fromSoftKeyboard:!0}),t.scrollToBottom(),!0)},c=(t,n)=>{e.addEventListener(t,e=>{vu()?n(e):a()},!0)};c(`keydown`,e=>{E_(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(!T_(e.inputType)){queueMicrotask(o);return}if(e.stopPropagation(),s())return;let r=C_(e.inputType);r!==``&&(Vb(n,r,{fromSoftKeyboard:!0}),t.scrollToBottom())})}function Wb(e,t){e._inputQueue=[];let n=e.term;n&&(n.onData(n=>{Vb(e,n),e.unseenOutcome&&E({type:`dismiss`,id:t,expectedState:e.currentState})}),n.onScroll(n=>{Qy(e,t,n)}),Kb(e.termWrap,t,e.abortController.signal),_b(e),queueMicrotask(()=>{lb(t,e)&&jb(t,e,n)}))}function Gb(e){return!!e&&Array.from(e.types).includes(`Files`)}function Kb(e,t,n){e.addEventListener(`paste`,e=>{let n=e.clipboardData;n&&n.files.length!==0&&n.getData(`text/plain`)===``&&(e.preventDefault(),e.stopPropagation(),Rv(t,Array.from(n.files)))},{capture:!0,signal:n}),e.addEventListener(`dragover`,t=>{Gb(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,Gb(n.dataTransfer)&&(n.preventDefault(),n.stopPropagation(),Rv(t,Array.from(n.dataTransfer.files)))},{capture:!0,signal:n})}function qb(e,t){if(e.term||mb.has(e))return;let n=ly();if(n){Jb(e,t,n);return}mb.add(e);let r=e._isActiveViewer?.()===!0;e._isActiveViewer=()=>r,e._setActiveViewer=e=>{r=e},db(e.termWrap),_b(e),uy().then(n=>{mb.delete(e),!(e.term||e.abortController.signal.aborted||O.get(t)!==e)&&(Jb(e,t,n),e._setActiveViewer?.(r))},()=>{mb.delete(e),_b(e)})}function Jb(e,t,n){Hb(e.termWrap,e,n),Wb(e,t)}function Yb(e){e?._syncGridOnEngagementEdge?.()}function Xb(e,t){if(!e)return;qb(e,t),tb(e,t),_y(e);let n=e.term;n&&(n.refresh(0,n.rows-1),Yb(e))}function Zb(e,t,n){e&&(n&&qb(e,t),e._setActiveViewer?.(n))}var Qb=e=>e==null?``:String(e),$b=e=>Ae.includes(e),ex=e=>Pe.includes(e);Oa(lu);var tx=null,nx=null;function rx(){return tx??=P(()=>import(`./alert-sound-DDh_4QK8.js`),[]).catch(e=>(tx=null,T(`alert-sound`,`alert sound failed to load: ${Ye(e)}`),null)),tx}function ix(){return nx??=P(()=>import(`./resume-dialog-BkBCvw7S.js`),__vite__mapDeps([16,3,4,1,2,13,7])).catch(e=>(nx=null,T(`resume-dialog`,`restart dialog failed to load: ${Ye(e)}`),null)),nx}function ax(){let e=Lr();rx().then(t=>t?.playAlertSound(e))}var ox=null,sx=null;function cx(){return sx??=P(()=>import(`./plan-face-BlnZai38.js`).then(e=>(ox=e,e),()=>(sx=null,null)),__vite__mapDeps([17,3,4,1,7,8,18])),sx}function lx(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,cx().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 ux(e){let t=e.currentState;e.btnRestart.classList.toggle(`visible`,$b(t)||ex(t)||t===x.DORMANT),e.btnWorkspaceRepos.classList.toggle(`visible`,e.card.dataset.workspace!==void 0),e.btnTrace.classList.toggle(`visible`,cc()),e.btnPlan.classList.toggle(`visible`,Dh(e)!==`hidden`)}function dx(e){e.sessionMenu.classList.remove(`open`),e.btnSessionMenu.setAttribute(`aria-expanded`,`false`)}function fx(e,t){Ec(e.taskTitleEl,()=>kc(e,t)),e.nameEl.addEventListener(`dblclick`,n=>{n.preventDefault(),Mc(e,t)}),e.nameEl.addEventListener(`click`,()=>{jc(e.nameEl)||Fl(t)}),e.nameEl.addEventListener(`keydown`,n=>{n.target===e.nameEl&&(n.key===`F2`||n.key===`Enter`)&&(n.preventDefault(),Mc(e,t))}),e.btnRestart.addEventListener(`click`,()=>{dx(e),ix().then(n=>n?.openRestartDialog(t,{readState:()=>e.currentState,canListEarlier:e.card.dataset.ephemeral===void 0}))}),e.btnWorkspaceRepos.addEventListener(`click`,()=>{dx(e),Mh(t)}),e.btnTrace.addEventListener(`click`,()=>{dx(e),Km(t)}),e.btnDocs.addEventListener(`click`,()=>{dx(e),pa(t)}),e.btnShown.addEventListener(`click`,()=>{dx(e),Ma(t)}),e.btnGuardrails.addEventListener(`click`,()=>{if(e.btnGuardrails.getAttribute(`aria-disabled`)===`true`)return;let n=n=>()=>{rc(e,{type:`set-session-guardrails`,id:t,isOn:n})};e.card.dataset.guarded===void 0?jt({title:`Restore guardrails`,message:`This session restarts with guardrails on, interrupting any turn in progress.`,confirmLabel:`Restore guardrails`,danger:!1,onConfirm:n(!0)}):jt({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=Dh(e);n!==`hidden`&&(n===`face`?Cx(t):location.hash=Vu(t))}),e.btnRemove.addEventListener(`click`,()=>{dx(e),eu(t)});function n(){for(let[,t]of O)t!==e&&dx(t);e.sessionMenu.classList.add(`open`),e.btnSessionMenu.setAttribute(`aria-expanded`,`true`)}e.btnSessionMenu.addEventListener(`click`,t=>{t.stopPropagation(),e.sessionMenu.classList.contains(`open`)?dx(e):n()}),zs({trigger:e.btnSessionMenu,menu:e.sessionMenu,menuItems:()=>[...e.sessionMenu.querySelectorAll(`.popup-menu-item.visible`)],isOpen:()=>e.sessionMenu.classList.contains(`open`),open:n,close:()=>dx(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&&dx(e)},{signal:e.abortController.signal}),e.btnDebug.addEventListener(`click`,n=>{n.stopPropagation(),zc(e,t)}),document.addEventListener(`click`,t=>{let n=t.target instanceof Node?t.target:null;e.debugOpen&&!e.card.contains(n)&&Bc(e)},{signal:e.abortController.signal})}function px(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&&Oc(e,r.taskTitle)}}function mx(e){return typeof e==`string`&&O.has(e)}function hx(){return O.size}function gx(e){let t=e||{};t.cursorBlink!=null&&jy(t.cursorBlink),t.debugMode!=null&&(oc(t.debugMode),Lu(t.debugMode));for(let[,e]of O)e.term&&t.cursorBlink!=null&&(e.term.options.cursorBlink=t.cursorBlink)}function _x(){og(O.values(),cg())}function vx(e){return{state:e.currentState,unseenOutcome:e.unseenOutcome,ownerId:e.ownerId}}function yx(){let e=ht(A.counts),t=e>0?`(${e}) Glimmervoid`:`Glimmervoid`;document.title!==t&&(document.title=t)}function bx(e,t,n,r={}){if(!Et)return;let i=D(e),a=Qb(n)||x.DORMANT,o=Sc(i,Qb(t),a,r),s=a===x.DORMANT;Et.appendChild(o.card);let c;function l(){c.face=`terminal`,c.card.dataset.face=`terminal`,c.termWrap.hidden=!1,c.planFace.hide(),ux(c),Xb(c,i)}let u=new AbortController,d=lx({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=>Kx(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:Qb(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=()=>Xb(c,i),c._showTerminalFace=l,c._showPreferredFace=()=>{xx(c)===`plan`?Cx(i):l()},c._setBorrowed=e=>{c.isBorrowed=e,ux(c)},o.card.append(d.el);let f=O.get(i);return f&&kt(A,vx(f)),O.set(i,c),vt(A,vx(c)),Rt(i,c),fx(c,i),ux(c),c.btnDocs.classList.toggle(`visible`,ca(i)),ka(i),a===x.RUNNING&&Lt(c,!0),s||qb(c,i),yx(),c}function xx(e){let t=e.planReviewState.reviews.some(e=>e.state===`open`),n=e.planReviewState.reviews.some(Gu);return Eh({hasPlan:e.hasPlan,pendingPromptKind:e.pendingPromptKind,hasOpenReview:t,hasApprovedReview:n})}function Sx(e){let t=k(e);return!t?.isBorrowed||xx(t)!==`plan`?!1:Cx(e)}function Cx(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)),ux(t),tb(t,D(e)),!0)}function wx(e,t){let n=k(e);n&&(n.hasPlan=t===!0,ux(n),Sx(e))}function Tx(e){let t=k(e.id);t&&(t.planReviewState=cd(t.planReviewState,e),t.hasPlan=e.hasPlan,t.planFace.update({state:t.planReviewState}),ux(t),Sx(e.id))}function Ex(e){let t=k(e.id);t&&t.planFace.update({draft:e})}function Dx(e){let t=k(e.id);t&&(t.planReviewState={reviews:e.reviews},t.hasPlan=!0,t.planFace.update({response:e}),ux(t))}function Ox(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 kx(e){for(let[,t]of O)t.planFace.update({isConnected:e})}function Ax(e,t){let n=k(e);n&&(n.effectiveBase=typeof t==`string`?t:void 0)}function jx(e,t){let n=k(e);n&&(n.agent=typeof t==`string`?t:null,ux(n))}function Mx(e,t){let n=k(e);n&&(t?n.card.dataset.worktree=``:delete n.card.dataset.worktree)}function Nx(e,t,n){let r=k(e);r&&(Px(r.card,`guarded`,t),Px(r.card,`guardrailsReleased`,n),wc(r.btnGuardrails,r.card))}function Px(e,t,n){n?e.dataset[t]=``:delete e.dataset[t]}function Fx(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 Ix(e,t){let n=k(e);if(!n)return;let r=wh(t),i=n.card.querySelector(`.usage-badge`);if(r)n.card.dataset.usage=``,i&&(i.dataset.tipLabel=r,i.dataset.tipDetail=Th(t),Qs(i));else{if(delete n.card.dataset.usage,!i)return;delete i.dataset.tipLabel,Qs(i)}}function Lx(e,t){let n=k(e);n&&(n.pendingPromptKind=typeof t==`string`?t:null,Sx(e))}function Rx(e,t){let n=k(e);n&&(kt(A,vx(n)),n.unseenOutcome=t??null,vt(A,vx(n)))}function zx(e,t){t===`pending-review`||t===`parked`||t===`merging`?e.dataset.merge=t:delete e.dataset.merge}function Bx(e,t,n=null){let r=k(e),i=Qb(t)||`none`;r&&zx(r.card,i),Rf(D(e),i,Qb(n)||null)}function Vx(e,t,n=null){let r=k(e),i=Qb(t)||`none`;r&&zx(r.card,i),Bf(D(e),i,Qb(n)||null)}function Hx(e,t){Vf(D(e),t)}function Ux(e,t){let n=k(e);if(!n)return;let r=Qb(t);n.card.dataset.session=r,n.nameEl.textContent=r}function Wx(e){let t=k(e);t&&(Bc(t),kt(A,vx(t)),O.delete(D(e)),Rt(D(e),void 0),ox?.dropPlanBodyCache(D(e)),t.resizeObserver&&t.resizeObserver.disconnect(),t.abortController&&t.abortController.abort(),Bb(t,D(e)),hy(t),t.term&&t.term.dispose(),t.term=null,t.fitAddon=null,t.card&&t.card.remove(),yx())}function Gx(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 Kx(e,t){let n=k(e);n?nc(n).show(`error`,t):R({source:`Session`,sessionId:typeof e==`string`?e:void 0,message:t})}function qx(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 Jx(e,t){e.term&&(t===x.DONE||t===x.FAILED)&&(e.term.clear(),e.term.reset())}function Yx(e){let t=O.get(e);t&&Tt({state:t.currentState,unseenOutcome:t.unseenOutcome})&&document.visibilityState===`visible`&&(vu()||document.hasFocus())&&E({type:`dismiss`,id:e,expectedState:t.currentState})}function Xx(e,t,n){let r=document.activeElement;return Dl({previousState:t,nextState:n,isPhoneLayout:vu(),isDocumentVisible:document.visibilityState===`visible`,isDocumentFocused:document.hasFocus(),isActiveViewer:e._isActiveViewer?.()===!0,hasFocusInsideTerminal:r instanceof Node&&e.termWrap.contains(r)})}function Zx(){return Fr()&&!Qh()}function Qx(e,t,n,r=``){let i=k(e);if(!i)return;let a=Qb(t),o=i.currentState;kt(A,vx(i)),i.currentState=a,vt(A,vx(i)),Rt(D(e),i),a!==x.RUNNING&&(i.awaitingBackgroundTasks=!1),a!==o&&(i.stateSince=typeof n==`number`&&Number.isFinite(n)?n:Date.now(),Lt(i,a===x.RUNNING)),o===x.DORMANT&&a!==x.DORMANT&&qb(i,D(e)),At({state:a})===`resting`&&Xh(D(e)),i.card.dataset.state=a,i.card.toggleAttribute(`data-monitoring`,Ve(a,i.awaitingBackgroundTasks)),ux(i),(a===x.WAITING&&o!==x.WAITING||a===x.COMPLETE&&o!==x.COMPLETE)&&!nu(r)&&Zx()&&ax(),Xx(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})})}),Zx()&&ax()),(a===x.DONE||a===x.FAILED)&&Gx(i,c,a),a===x.INITIALIZING&&Jx(i,o),yx()}var $x=`(no path)`;function eS(e){if(!e)return $x;let t=String(e).replace(/[/\\]+$/,``),n=Math.max(t.lastIndexOf(`/`),t.lastIndexOf(`\\`));return(n===-1?t:t.slice(n+1))||`(no path)`}function tS(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):$x,a=i.get(r);a||(a={key:r,label:r===`(no path)`?$x:eS(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:eS(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 nS(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 rS({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(Yo)),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 iS(e,t,n){let{header:r,label:i,count:a,addButton:o,forgetButton:s}=e,c=t.key===$x,l=t.rows.length===0;Go(r,`path`,t.key),Go(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`}`),Wo(o,c),Wo(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 aS={waitingCount:0,finishedCount:0,failedCount:0},oS={failed:Fe[x.FAILED],waiting:Fe[x.WAITING],finished:Fe[x.COMPLETE]},sS={failed:`failed`,waiting:`needs you`,finished:`finished`},cS=[`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`],lS=2500,uS=`cubic-bezier(0.16, 1, 0.3, 1)`,dS=`cubic-bezier(0.5, 0, 0.2, 1)`,fS=260,pS=200,mS=200,hS=300,gS=28,_S=360,vS=420,yS=200,bS=3,xS=window.matchMedia?.(`(prefers-reduced-motion: reduce)`),SS=new WeakMap;function CS(e){let t=SS.get(e);if(!t)throw Error(`attention banner was not built by buildAttentionBanner`);return t}function wS(e){return!document.hidden&&typeof e.animate==`function`&&e.getClientRects().length>0}function TS(){return xS?.matches??!1}function ES(e){return e.map(e=>({easing:uS,...e}))}function DS(e,t){let n=w(`div`,`attention-banner`);n.setAttribute(`role`,`status`),n.style.setProperty(`--attention-head-tile-px`,`${Dt.headTile}px`),n.style.setProperty(`--attention-tile-px`,`${Dt.tile}px`),n.style.setProperty(`--attention-tile-gap-px`,`${Dt.tileGap}px`),n.style.setProperty(`--attention-overflow-px`,`${Dt.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),SS.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(()=>kS(n)).observe(r),OS(n,aS,[]),n}function OS(e,t,n){let r=CS(e);r.tiles=n,F(C(e,`.attention-banner-count`),yt(t));let i=n.length>0;e.toggleAttribute(`data-empty`,!i),e.toggleAttribute(`data-jumpable`,i),i&&GS(e,r),kS(e)}function kS(e){let t=CS(e),n=C(e,`.attention-banner-chips`),r=C(n,`.attention-tile-overflow`),i=wS(e),a=t.tiles.slice(0,xt(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():NS(n,l[r])});let u=t.headId,d=[],f=null;a.forEach((i,a)=>{let o=t.tileById.get(i.id),s=o??jS(e,i.id);o||(t.tileById.set(i.id,s),d.push(s)),MS(s,i,a===0),(s.parentElement!==n||AS(s)!==f)&&n.insertBefore(s,r),f=s});let p=t.tiles.length-a.length;Wo(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)&&LS(e,null),i){for(let e of d)PS(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?IS(r,a):a!==0&&FS(r,a,n)})}}function AS(e){let t=e.previousElementSibling;for(;t?.hasAttribute(`data-leaving`);)t=t.previousElementSibling;return t}function jS(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`,()=>LS(e,t)),n.addEventListener(`pointerleave`,()=>LS(e,null)),n}function MS(e,{kind:t,name:n},r){e.dataset.kind=t,e.toggleAttribute(`data-head`,r);let i=`${n}, ${sS[t]}`;e.title=i,e.setAttribute(`aria-label`,i),ls(C(e,`.attention-tile-icon`),oS[t])}function NS(e,t){e.toggleAttribute(`data-leaving`,!0),e.style.left=`${t.left}px`,e.style.top=`${t.top}px`;let n=TS()?[{opacity:1},{opacity:0}]:ES([{transform:`none`,opacity:1},{transform:`scale(0.6)`,opacity:0}]),r=e.animate(n,{duration:mS,fill:`forwards`});r.onfinish=()=>e.remove(),r.oncancel=()=>e.remove()}function PS(e){let t=TS()?[{opacity:0},{opacity:1}]:ES([{transform:`scale(0.6)`,opacity:0},{transform:`none`,opacity:1}]);e.animate(t,{duration:pS})}function FS(e,t,n){TS()||e.animate(ES([{transform:`translateX(${t}px)`},{transform:`none`}]),{duration:hS,delay:n*gS,fill:`backwards`})}function IS(e,t){TS()?e.animate([{opacity:.35},{opacity:1}],{duration:_S,easing:uS}):e.animate(ES([{transform:`translateX(${t}px) scale(0.8)`,filter:`brightness(1.8)`},{transform:`scale(1.1)`,offset:.6},{transform:`none`,filter:`none`}]),{duration:_S})}function LS(e,t){let n=CS(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 RS(e){return!e||e.getClientRects().length===0?null:e.getBoundingClientRect()}function zS(e,t,n){let r=CS(e);if(r.flyingIds.has(t))return;let i=r.tileById.get(t);if(!i||!wS(e)){n();return}LS(e,null),r.flyingIds.add(t);let a=r.hooks.rowFor(t),o=i.getBoundingClientRect(),s=RS(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(BS(o,s),VS(s)),u=()=>{c.remove(),r.flyingIds.delete(t),i.isConnected&&(i.style.visibility=``),n()};l.onfinish=u,l.oncancel=u}function BS(e,t){return!t||TS()?[{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 VS(e){return!e||TS()?{duration:yS,fill:`forwards`}:{duration:vS,easing:dS,fill:`forwards`}}function HS(e){let t=CS(e);e.hasAttribute(`data-empty`)&&WS(e,t);for(let e of t.pressAnimations)e.cancel();if(t.pressAnimations=[],!wS(e))return;let n={duration:fS};if(t.pressAnimations.push(e.animate(ES([{opacity:0},{opacity:.07,offset:.3},{opacity:0}]),{...n,pseudoElement:`::after`})),!TS()){t.pressAnimations.push(e.animate(ES([{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(ES([{transform:`none`},{transform:`translateY(${bS}px)`,offset:.3},{transform:`none`}]),n),r.animate(ES([{transform:`none`},{transform:`translateY(-${bS}px)`,offset:.3},{transform:`none`}]),{...n,pseudoElement:`::after`}))}}function US(e){let t=cS.filter(t=>t!==e);return t[Math.floor(Math.random()*t.length)]??cS[0]}function WS(e,t){let n=US(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(()=>GS(e,t),lS)}function GS(e,t){t.allClearLineTimer!==null&&window.clearTimeout(t.allClearLineTimer),t.allClearLineTimer=null,e.toggleAttribute(`data-all-clear-line`,!1)}var KS=e=>e.ui.path,qS=window.matchMedia?.(`(prefers-reduced-motion: reduce)`),JS=null,J=null,YS=null,XS=null,ZS=null,QS=null,$S=null,Y=!1,eC=!1,tC=new Map,X=new Map,nC=new Map,rC=new Map,Z=null,iC=``,aC=[],oC=new Set;function sC(){return nS(lC(vC()),oC)}function cC(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 lC(e){return tS(e,KS,wl(e,KS))}function uC(e){let t=rC.get(e.key),n=nC.get(e.key);return(!t||!n)&&(t=rS({onAdd:Jl,onForget:e=>{Tl(e),TC()}}),n=w(`div`,`focus-rail-list`),n.setAttribute(`role`,`listbox`),rC.set(e.key,t),nC.set(e.key,n)),iS(t,e,`rail`),I(n,`aria-label`,`${e.label} sessions`),{header:t.header,list:n}}function dC(){return Y}function fC(){return j.snapshot().focusedSessionId}function pC({rail:e,center:t,resizer:n}){if(JS=e,YS=t,!JS||!YS)return;let r=JS,i=YS;gC(n),r.removeAttribute(`role`),r.removeAttribute(`aria-label`),r.setAttribute(`aria-keyshortcuts`,xr(ud)),J=DS({onJump:kC,rowFor:e=>X.get(e)},gd());let a=w(`details`,`rail-status-key`);a.append(w(`summary`,`rail-status-key-summary`,`Status key`),yl()),r.append(J,a),ZS=w(`div`,`focus-empty`),ZS.innerHTML=`<p class="focus-empty-title"></p><p class="focus-empty-desc"></p>`,QS=ZS.querySelector(`.focus-empty-title`),$S=ZS.querySelector(`.focus-empty-desc`),XS=w(`div`,`focus-card-slot`),i.append(ZS,XS),r.addEventListener(`keydown`,_C)}var mC={minPx:180,maxPx:480},hC=16;function gC(e){e&&JS&&Fo({resizer:e,column:JS,widthHost:JS,widthProperty:`--rail-width`,bounds:mC,keyStepPx:hC,getStoredWidth:$r,setStoredWidth:ei})}function _C(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(),eu(n);return}if(e.key!==`ArrowDown`&&e.key!==`ArrowUp`||e.altKey||e.metaKey||e.ctrlKey||e.shiftKey)return;let t=gt(sC(),Z,e.key===`ArrowDown`?1:-1);t!=null&&(e.preventDefault(),cC(t),X.get(t)?.focus())}function vC(){return St(Bl(yC))}function yC(e){return e.nameEl?e.nameEl.textContent:e.card&&(e.card.dataset.session||e.card.dataset.id)||``}function bC(e){let{row:t,refs:n}=al(`button`);t.type=`button`,t.dataset.id=e,t.setAttribute(`role`,`option`),t.addEventListener(`click`,()=>xC(e)),t.addEventListener(`pointerenter`,()=>{J&&LS(J,e)}),t.addEventListener(`pointerleave`,()=>{J&&LS(J,null)});let{item:r,removeButton:i}=ol(t,()=>eu(e));return r.setAttribute(`role`,`presentation`),i.tabIndex=-1,Object.assign(t,{_refs:n,_row:r})}function xC(e){let t=Ll(e);t&&(FC(e),jC(t,e))}function SC(e,{id:t,ui:n,state:r,name:i},a){let o=tC.get(t)||`none`;pl(e,e._refs,{ui:n,state:r,name:i??``,mergeStatus:o===`none`?``:o,attentionPosition:a}),e.classList.toggle(`focused`,t===fC()),e.classList.toggle(`has-unopened-shown`,Ea(t));let s=t===Z;I(e,`aria-selected`,String(s)),I(e,`tabindex`,s?`0`:`-1`)}function CC(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||``:Ht(r._refs?.glyph))}It(CC),Ut((e,t)=>{if(!Y)return;let n=X.get(e);n&&F(n._refs.elapsed,Vt(t))});var wC=new Map;function TC(e){if(!Y)return;let t=JS;if(!t)return;let n=vC(),r=lC(n),i=new Set,a=Ct(n,fC()),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=bC(t),X.set(t,r));let s=o.get(t)??null;(!e||a||e.has(t)||wC.get(t)!==s)&&SC(r,n,s),wC.set(t,s)}a||Uo(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,Ed);if(a.length>0){let e=w(`div`,`review-look-list`);for(let t of a)e.append(Dd(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 kd(e){return(e??[]).map(e=>{let t=w(`span`,`review-file-hint`,e.text);return t.title=e.title,t})}function Ad(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 jd(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=Ad(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 Md(e,t){return t===`merged`||t===`none`||e===`parked`&&t===`pending-review`}function Nd(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 Pd({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=zd(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 Fd({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?Pd({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 Id(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 ${zd(t)}.`}function Ld(e,t){return e.namesMergeTarget?null:`merges into ${zd(t)}`}function Rd({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 zd(e){return e||`base`}function Bd(e,t){return`Merge into ${zd(e)}, push it, and rebase this worktree, then keep working (${t})`}function Vd(e){return e===`base-diverged`?`Resync the base branch by hand, then Merge again.`:`Needs manual merge`}function Hd(e,t,n){let r=e!==`parked`||e===`parked`&&t===`base-diverged`;return{isRendered:r,isEnabled:r&&e!==`merging`&&n}}function Ud({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 Wd(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 Gd({fetched:e,changedFileCount:t,hasCommits:n}){return!e||t>0||n}function Kd(e){return e||`its upstream`}function qd(e){if(!e)return null;let t=e.branch||`Base branch`,{state:n,ahead:r,behind:i}=e,a=Kd(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 Jd(e){return!e||e.fetched===!1?`recheck`:e.state===`ahead`||e.state===`behind`?`resync`:`recheck`}function Yd(e,t,n){let r=n?` (${t})`:``;if(!e||Jd(e)===`recheck`)return`Click to fetch and check again${r}`;let i=e.branch||`Base branch`,a=Kd(e.upstream);return e.state===`behind`?`Click to fast-forward ${i} to ${a}${r}`:`Click to push ${i} to ${a}${r}`}function Xd(e){return e?.state!==`in-sync`||e.fetched===!1}function Zd(e){if(e.error)return`Resync failed: ${e.error}`;let t=e.branch||`The base branch`,n=Kd(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 Qd=new Set([`pending-review`,`parked`]),$d=600,ef=br(`merge`,ud),tf=br(`resolve-or-resync`,ud),nf={minPx:260,maxPx:700},rf=16,af=5e3,of=new Map,sf=new Map,cf=new Map,lf=new Map,uf=new Map,df=new Map,ff=new Set,pf=new WeakMap,mf=new WeakMap,hf=new Set,gf=new Set,_f=!1,vf=null,yf=null,V=null,H=null,bf=null,xf=null,Sf=null,Cf=null,wf=null,Tf=!1,Ef=null,Df=null,Of=null,kf=null,Af=new Map,U=null,jf=null;function Mf(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 Nf(){Tf=!1,V?.querySelector(`.review-more-menu`)?.remove(),V?.querySelector(`.review-more-button`)?.setAttribute(`aria-expanded`,`false`)}function Pf({panel:e}){if(yf=e,!yf)return;let t=yf,n=w(`div`,`review-sidebar-head`),r=w(`span`,`review-sidebar-title`,`Review`);wf=w(`span`,`review-sidebar-session`),r.append(wf);let i=e=>{t.toggleAttribute(`data-collapsed`,e),ni(!e)},a=Mf(`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=Mf(`Open review`,`M10 3L5 8L10 13`);s.classList.add(`review-sidebar-open`),s.addEventListener(`click`,()=>i(!1)),xf=w(`div`,`review-rail-status`),Sf=w(`span`,`review-rail-added`),Cf=w(`span`,`review-rail-removed`),xf.append(Sf,Cf),bf=w(`span`,`review-rail-label`,`Review`),o.append(s,bf,xf),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`,!ti()),If(H),document.addEventListener(`keydown`,e=>{e.key===`Escape`&&Tf&&(e.preventDefault(),Nf(),V?.querySelector(`.review-more-button`)?.focus())}),document.addEventListener(`pointerdown`,e=>{Tf&&e.target instanceof Element&&(V?.contains(e.target)&&e.target.closest(`.review-more-button, .review-more-menu`)||Nf())}),Fo({resizer:c,column:t,widthHost:t,widthProperty:`--sidebar-width`,bounds:nf,keyStepPx:rf,getStoredWidth:Di,setStoredWidth:Oi,growsLeftward:!0}),Il(e=>{Tf=!1,Of=null,hf.clear(),gf.clear(),_f=!1,vf=null,e&&lp(e),e&&!dp(e)&&fp(e),W()}),W()}function Ff(e,t){let n=of.get(e);of.set(e,t),Md(n,t)&&(cf.delete(e),lf.delete(e),uf.delete(e),e===B()&&up(e)),e===B()&&W()}function If(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),Il(a)}function Lf(e){yf&&(e?(Ue(yf,e),W()):(ze(yf),W()))}function Rf(e,t,n=null){let r=t||`none`;sf.set(e,n);let i=Af.get(e);i!==void 0&&i!==r&&Af.delete(e),Ff(e,r)}function zf(e){let t=D(e);t&&Af.delete(t)&&t===B()&&W()}function Bf(e,t,n=null){sf.set(e,n),Af.delete(e),Ff(e,t||`none`)}function Vf(e,t){cf.set(e,t),lf.delete(e),e===B()&&(vf&&vp(vf,t),W(),yp())}function Hf(e,t){let n=D(e);n&&(lf.set(n,t),n===B()&&W())}function Uf(e,t){let n=D(e);if(!n)return;let r=_.safeParse(t);r.success&&r.data.sessionId===n&&(uf.set(n,r.data),n===B()&&W())}function Wf(e,t){let n=D(e),r=t;df.set(n,r),r&&r.action!==void 0&&Gf(n,r),n===B()&&W()}function Gf(e,t){ff.delete(e),clearTimeout(jf??void 0),jf=null;let n=Zd(t);U=n?{forId:e,text:n,isError:!!t.error}:null,U&&!U.isError&&(jf=setTimeout(()=>{U&&U.forId===e&&(U=null),W()},5e3))}function Kf(e){let t=D(e);t&&t===B()&&lp(t)}function qf(e){let t=D(e);if(t!==B())return;let n=!cf.has(t)||lf.has(t),r=!uf.has(t)||Jf(uf.get(t));n&&lp(t),r&&!n&&up(t),W()}function Jf(e){return e?!!e.error||e.repos.some(e=>e.error!==null):!1}function Yf(e){let t=D(e);of.delete(t),sf.delete(t),cf.delete(t),lf.delete(t),uf.delete(t),df.delete(t),ff.delete(t),U&&U.forId===t&&(clearTimeout(jf??void 0),U=null),t===B()?Fl(null):W()}function Xf(){let e=B(),t=e?O.get(e):null;if(!e||!t)return Zf(null,`No session is open to merge.`);if(dp(e))return Zf(e,`A workspace session has no worktree to merge.`);if(Af.has(e))return Zf(e,`Merge is already on its way for "${_p(t,e)}".`);let n=of.get(e)||`none`,r=!!cf.get(e)?.hasCommits,i=Hd(n,sf.get(e)||null,ap(t.currentState,r));return Rd({status:n,mergeReason:sf.get(e)||null,live:cp(t.currentState),isMergeRendered:i.isRendered,hasChanges:ip(e)})!==`merge`||!i.isEnabled?Zf(e,Ud({status:n,hasCommits:r,live:cp(t.currentState),state:t.currentState})??`Nothing to merge in "${_p(t,e)}" right now.`):(op(e,t.currentState),!0)}function Zf(e,t){return Of={forId:e,text:t},clearTimeout(kf??void 0),kf=setTimeout(()=>{Of=null,W()},af),W(),!1}function Qf(){let e=B();if(!e||dp(e))return!1;let t=O.get(e);if(!t)return!1;let n=of.get(e)||`none`,r=sf.get(e)||null;return Rd({status:n,mergeReason:r,live:cp(t.currentState),isMergeRendered:Hd(n,r,!1).isRendered,hasChanges:ip(e)})!==`resolve`||$f(e)?!1:(ep(e),!0)}function $f(e){return Ef?.forId===e&&!Ef.isError}function ep(e){let t=E({type:`resolve-session-merge`,id:e});Ef=t?{forId:e,text:`Resolve prompt sent`,isError:!1}:{forId:e,text:`Not connected. The resolve prompt was not sent.`,isError:!0},clearTimeout(Df??void 0),Df=setTimeout(()=>{Ef=null,W()},t?3e3:af),W()}function tp(){let e=B();return!e||!O.has(e)||dp(e)||mp(e)?!1:(hp(e),!0)}function np(e){if(!e)return{committed:[],uncommitted:[]};let t=pf.get(e);if(t)return t;let n={committed:jd(e.committed?.diff||``),uncommitted:jd(e.uncommitted?.diff||``)};return pf.set(e,n),n}function rp(e){let t=mf.get(e);if(t)return t;let n=wd(e);return mf.set(e,n),n}function ip(e){let t=np(cf.get(e)),n=[...t.committed,...t.uncommitted],r=cf.get(e)??null;return Gd({fetched:cf.has(e),changedFileCount:Nd(n).files,hasCommits:!!r?.hasCommits})}function ap(e,t){return(Ge.includes(e)||e===x.RUNNING)&&t}function op(e,t){t===x.RUNNING?jt({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:()=>sp(e,!0)}):sp(e,!1)}function sp(e,t){Af.has(e)||(E(t?{type:`merge-continue-session`,id:e,force:!0}:{type:`merge-continue-session`,id:e})?(Af.set(e,of.get(e)||`none`),e===B()&&W()):Zf(e,`Not connected. The merge was not sent.`))}function cp(e){return e!==x.DORMANT&&e!==x.DONE&&e!==x.FAILED}function lp(e){E({type:`request-session-diff`,id:e}),up(e)}function up(e){uf.has(e)||uf.set(e,null),E({type:`request-change-map`,id:e})}function dp(e){return O.get(e)?.card.dataset.workspace!==void 0}function fp(e){df.set(e,null),E({type:`request-branch-sync`,id:e}),e===B()&&W()}function pp(e){ff.add(e),clearTimeout(jf??void 0),U&&U.forId===e&&(U=null),E({type:`resync-branch`,id:e}),e===B()&&W()}function mp(e){return ff.has(e)||df.get(e)===null}function hp(e){mp(e)||(Jd(df.get(e))===`resync`?pp(e):fp(e))}function gp(e,t){return t?{text:`Resyncing`,loading:!0,error:!1}:U&&U.forId===e?{text:U.text,loading:!1,error:U.isError}:null}function _p(e,t){return e?.card?.dataset.session||t}function vp(e,t){if(!t)return;let{committed:n,uncommitted:r}=np(t);for(let t of n)(t.path===e||t.oldPath===e)&&hf.add(`committed:${t.path}`);for(let t of r)(t.path===e||t.oldPath===e)&&hf.add(`uncommitted:${t.path}`)}function yp(){if(!H||!vf)return;let e=H.querySelectorAll(`.review-file`);for(let t of e)if(t.dataset.path===vf||t.dataset.oldPath===vf){t.scrollIntoView({block:`nearest`}),vf=null;return}}function bp(e){vf=e,vp(e,cf.get(B()??``)),W(),yp()}function xp(){_f=!0,W()}function W(){let e=H?.scrollTop??0;Sp(),H&&(H.scrollTop=e)}function Sp(){if(!V||!H)return;V.replaceChildren(),H.replaceChildren(),bf&&(bf.hidden=!0),xf&&(xf.hidden=!0);let e=B(),t=e?O.get(e):null;if(wp(e,t),!e||!t){Of&&V.append(Cp(Of.text,!0)),Tp(`No session selected`,`Click a session name to review its changes here.`);return}let n=dp(e),r=of.get(e)||`none`,i=sf.get(e)||null,a=t.currentState,o=Qd.has(r),s=cf.has(e),c=s?cf.get(e):null,l=lf.get(e)??null,{committed:u,uncommitted:d}=np(c),f=!!c?.hasCommits,p=cp(a),m=Hd(r,i,ap(a,f)),h=df.get(e),g=ff.has(e),_=zd(t.effectiveBase),v=Nd([...u,...d]),ee=Rd({status:r,mergeReason:i,live:p,hasChanges:Gd({fetched:s,changedFileCount:v.files,hasCommits:f}),isMergeRendered:m.isRendered}),te=Fd({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||vu()||Xd(h),y=w(`div`,`review-status-headline`);if(y.append(w(`span`,`review-status-text`,te.text)),!n&&!re){let t=qd(h);if(t){y.title=t;let n=Mf(`Refresh branch sync`,`M13 6A5 5 0 1 0 13 10M13 2v4H9`);n.classList.add(`review-branch-sync-refresh`),n.title=Yd(h,tf,ee!==`resolve`),n.disabled=mp(e),n.setAttribute(`aria-description`,t),n.addEventListener(`click`,()=>hp(e)),y.append(w(`span`,`sr-only`,t),n)}}if(ne||V.append(y),u.length>0)for(let e of Wd(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=Ep(e,ee!==`resolve`);t&&ie.append(t)}ie.childElementCount>0&&V.append(ie),r===`parked`&&V.append(w(`div`,`review-status-explanation`,Vd(i))),bf&&(bf.hidden=!1),xf&&(xf.hidden=!1,xf.setAttribute(`aria-label`,`${te.text}, +${v.added}, -${v.removed}`),xf.title=te.text),Sf&&(Sf.textContent=`+${v.added}`),Cf&&(Cf.textContent=`-${v.removed}`);let ae=n?null:jp(e,{status:r,reviewable:o,mergeAction:m,live:p,state:a,effectiveBase:_,primaryAction:ee});ae&&V.append(ae);let oe=n?null:gp(e,g),se=!n&&ee===`merge`&&!m.isEnabled?Ud({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(Ef?.forId===e&&V.append(Cp(Ef.text,Ef.isError)),Of&&(Of.forId===e||Of.forId===null)&&V.append(Cp(Of.text,!0)),l){H.append(w(`p`,`review-diff-error`,l));return}if(ne){Tp(te.text,Id(n,_));return}let ce=uf.get(e),le=ce?rp(ce):null,ue=le?Od(le,{isShowingAll:_f,onShowAll:xp,onOpenFile:bp}):null;ue&&H.append(ue);let de=u.length>0&&d.length>0;u.length>0&&H.append(Dp({kind:`committed`,label:de?`Committed`:null,meaning:Ld(te,_),files:u,changeMapView:le})),d.length>0&&H.append(Dp({kind:`uncommitted`,label:de?`Not committed yet`:null,meaning:null,files:d,changeMapView:le}))}function Cp(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 wp(e,t){if(!wf)return;let n=e&&t?_p(t,e):``;wf.textContent=n,wf.hidden=!n,wf.title=n}function Tp(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 Ep(e,t){let n=df.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=qd(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=Mf(`Refresh branch sync`,`M13 6A5 5 0 1 0 13 10M13 2v4H9`);return a.classList.add(`review-branch-sync-button`),a.title=Yd(n,tf,t),a.disabled=ff.has(e),a.addEventListener(`click`,()=>hp(e)),i.append(a,w(`span`,`review-branch-sync-label`,r)),i}function Dp({kind:e,label:t,meaning:n,files:r,changeMapView:i}){let a=w(`div`,`review-section`);a.dataset.kind=e,t&&a.append(Op(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?Td(s,t.path):null;n&&n!==c&&o.append(w(`div`,`review-repo-label`,n)),c=n,o.append(kp(t,e,i))}return a.append(o),a}function Op(e,t,n){let r=Nd(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 kp(e,t,n){let r=`${t}:${e.path}`,i=hf.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=kd(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=hf.has(r);e&&hf.delete(r),e||hf.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>=$d&&!gf.has(r)){p=!0;break}d.append(w(`div`,`review-hunk-head`,t.header));for(let e of t.lines){if(f>=$d&&!gf.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`,()=>{gf.add(r),W()}),d.append(e)}return a.append(d),a}function Ap({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 jp(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(Ap({id:`review-merge-btn`,label:`Merge`,shortcut:ef,title:Bd(o,ef),disabled:!r.isEnabled||Af.has(e),onClick:()=>op(e,a)})),l&&c.append(Ap({label:`Resolve`,shortcut:tf,title:`Paste a resolve prompt into this session so the agent can finish the merge (${tf})`,disabled:$f(e),onClick:()=>ep(e)}));let u=w(`div`,`review-action-controls`);if(u.append(c),!n||i)return c.childElementCount>0?u:null;let d=Mf(`More review actions`,$o);if(d.classList.add(`review-more-button`),d.setAttribute(`aria-haspopup`,`menu`),d.setAttribute(`aria-expanded`,String(Tf)),d.setAttribute(`aria-controls`,`review-more-menu`),d.addEventListener(`click`,()=>{Tf=!Tf,W(),(V?.querySelector(Tf?`.review-more-menu button:not(:disabled)`:`.review-more-button`)??V?.querySelector(`.review-more-button`))?.focus()}),c.append(d),!Tf)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=Ap({label:`Discard worktree`,danger:!0,disabled:t===`merging`,onClick:()=>{Tf=!1,W();let t=_p(O.get(e),e);jt({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 Mp=160,Np=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 Pp(e){let t=e.split(/\r?\n/,1)[0]?.trim()??``;return t.length<=Mp?t:`${t.slice(0,157)}...`}function Fp(e,t){let n=Np[e];if(!n||!t||typeof t!=`object`||Array.isArray(t))return``;let r=t[n];return typeof r==`string`?Pp(r):``}var Ip=5e3;function Lp(e){let t=e.match(/<command-name>([^<]*)<\/command-name>/)?.[1];return t===void 0||/[\r\n]/.test(t)?null:t.trim()||null}function Rp(e,t){if(!e.toolUseId)return Lp(e.text)??`context`;let n=t.get(e.toolUseId);return n?Fp(n.name,n.input)||n.name:`expansion`}function zp(e){return e.kind!==`expansion`||e.toolUseId?!1:Lp(e.text)!==null}function Bp(e){return e.kind===`prompt`||e.kind===`session`||zp(e)}function Vp(e){return new TextEncoder().encode(e).byteLength}var Hp={prompt:`PROMPT`,expansion:`EXPANSION`,thinking:`THINKING`,assistant:`ASSISTANT`,tool_call:`TOOL`,tool_result:`RESULT`,session:`SESSION`,notice:`NOTICE`,raw:`RAW`};function Up(e,t){if(e.kind===`prompt`)return{prefix:`Prompt: `,text:Pp(e.text)};if(e.kind===`thinking`)return{prefix:`Thinking: `,text:Pp(e.text)};if(e.kind===`assistant`)return{prefix:`Assistant: `,text:Pp(e.text)};if(e.kind===`notice`)return{prefix:`Notice: `,text:Pp(e.text)};if(e.kind===`raw`)return{prefix:`Raw: `,text:Pp(e.line)};if(e.kind===`session`)return{prefix:`Session: `,text:`${e.vendor} ${e.vendorSessionId}`};if(e.kind===`expansion`)return{prefix:`Expansion: `,text:Rp(e,t)};if(e.kind===`tool_call`){let t=Fp(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:`${Vp(e.content)} bytes`}}function Wp(e){if(!e.agentType)return``;let t=e.agentId?` ${e.agentId.slice(-6)}`:``;return`[${e.agentType}${t}] `}function Gp(e,t){let n=Up(e,t),r=Wp(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:Hp[e.kind],text:`${r}${i}`,tone:o,badges:a}}function Kp(e,t){return{record:e,...Gp(e,t)}}function qp(e){return e.kind!==`tool_result`&&e.kind!==`expansion`?null:e.toolUseId||null}function Jp(e,t){let n=qp(e);return!n||t.has(n)?null:n}function Yp(e,t,n=1){e.set(t,(e.get(t)??0)+n)}function Xp(e,t){let n=(e.get(t)??0)-1;n>0?e.set(t,n):e.delete(t)}function Zp(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=qp(i.record);a&&t.has(a)&&(n.rows[r]=Kp(i.record,e.toolCallByUseId))}}function Qp(){return{turns:[],toolCallByUseId:new Map,unresolvedToolUseCounts:new Map}}function $p(){return{rowCount:0,toolCallCount:0,errorCount:0,resultBytes:0}}function em(e,t,n){e.metrics.rowCount+=n,t.record.kind===`tool_call`&&(e.metrics.toolCallCount+=n),t.record.kind===`tool_result`&&(e.metrics.resultBytes+=Vp(t.record.content)*n,t.record.isError&&(e.metrics.errorCount+=n))}function tm(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=Jp(i,e.toolCallByUseId);t&&Yp(e.unresolvedToolUseCounts,t);let a=Kp(i,e.toolCallByUseId);if(Bp(i)){r={head:a,rows:[],hasTrimmedRows:!1,startedAt:i.ts,metrics:$p()},em(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:$p()},e.turns.push(r),n.push({turnIndex:e.turns.length-1,isNewTurn:!0,head:null,rows:[]})),r.rows.push(a),em(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 nm(e,t){let n=Qp();tm(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)||Yp(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],Zp(e,i),{newTurns:n.turns,mergedHead:c,mergedRows:l,needsRerender:i.size>0}}function rm(e){return e.rows.length+ +!!e.head}function im(e){let t=0;for(let n of e.turns)t+=rm(n);return t}function am(e,t){for(let n of t){if(n.record.kind===`tool_call`){e.toolCallByUseId.delete(n.record.toolUseId);continue}let t=qp(n.record);t&&Xp(e.unresolvedToolUseCounts,t)}}function om(e,t){am(e,t.head?[t.head,...t.rows]:t.rows)}function sm(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);am(e,i);for(let e of i)em(n,e,-1);return n.rows=n.rows.slice(r),n.hasTrimmedRows=!0,r}function cm(e,t=Ip){let n=im(e),r=0;for(;n>t&&r<e.turns.length-1;){let t=e.turns[r];if(!t)break;n-=rm(t),om(e,t),r+=1}return r>0&&(e.turns=e.turns.slice(r)),n<=t?{droppedTurnCount:r,droppedRowCount:0}:{droppedTurnCount:r,droppedRowCount:sm(e,n-t)}}function lm(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 um(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 dm(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 fm(e,t=Ip){return!e.selectedSessionId||!e.hasLoadedOnce||e.hasDroppedEarliestRows||e.residentRowCount>=t?!1:e.firstOffset>0}function pm(e,t=Ip){return!fm(e,t)||e.hasPendingRequest||!e.selectedSessionId?null:{id:e.selectedSessionId,direction:`earlier`,after:0,endingAt:e.firstOffset}}function mm(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 hm=1e4,gm=null,_m=null,vm=[],ym=null,bm=null,G=null,xm=null,Sm=!1,Cm=null,wm=()=>!1,Tm=new Set;function K(e){for(let t of Tm)t(e)}function Em(){xm&&=(clearTimeout(xm.timeoutHandle),null)}function Dm(){xm=null,Cm=`The trace did not load within ${Math.round(hm/1e3)} s.`,K({kind:`rebuild`})}function Om(e){Em(),Sm=!1,Cm=null,ym=e,G=e?{sessionId:e,grouping:Qp(),firstOffset:0,nextOffset:0,hasDroppedEarliestRows:!1,filePath:``,hasLoadedOnce:!1}:null,K({kind:`selection-reset`})}function km(e){let t=um(vm,bm,ym,e);return bm&&t===bm&&(bm=null),t!==ym&&(Om(t),!0)}function Am(e){if(!gm)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};gm(t)?xm={request:e,timeoutHandle:setTimeout(Dm,hm)}:(Cm=b,K({kind:`header`}))}function jm(e=!1){if(!gm)return;let t=dm({selectedSessionId:ym,isPanelVisible:e||wm(),hasPendingRequest:!!xm,hasLoadedOnce:G?.hasLoadedOnce??!1,nextOffset:G?.nextOffset??0});t&&Am(t)}function Mm(){Sm&&!xm&&(Sm=!1,jm())}function Nm(){if(!G)return;let e=cm(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 Pm(e){G&&(K({kind:`records-appended`,appends:tm(G.grouping,e)}),Nm())}function Fm(e){G&&(K({kind:`records-prepended`,prepend:nm(G.grouping,e)}),Nm())}function Im(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 Lm(){return{selectedSessionId:ym,hasPendingRequest:!!xm,hasLoadedOnce:G?.hasLoadedOnce??!1,hasDroppedEarliestRows:G?.hasDroppedEarliestRows??!1,firstOffset:G?.firstOffset??0,residentRowCount:G?im(G.grouping):0}}function Rm(){return{sessionOptions:vm,selectedSessionId:ym,selectedTrace:G,pendingSessionId:xm?.request.id??null,traceFailureText:Cm}}function zm(e){Tm.add(e)}function Bm(e){wm=e}function Vm(){if(!gm)return;let e=pm(Lm());e&&Am(e)}function Hm(e){vm.some(t=>t.id===e)&&e!==ym&&(bm=null,Om(e),jm(),K({kind:`rebuild`}))}function Um(){let e=km(!0);return jm(!0),e}function Wm(e){gm=e}function Gm(e){_m=e}function Km(e){bm=e,_m?.()}function qm(e){vm=lm(e);let t=km(wm());t&&jm(),K({kind:`sessions`,hasSelectionChanged:t})}function Jm(e){let t=Im(e);if(!t)return;let n=mm({pendingRequest:xm?.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`?Mm():(Em(),Cm&&(Cm=null,K({kind:`header`})),n===`stale`?Mm():n===`reset`?(Om(t.id),G&&(G.filePath=t.path),jm(),K({kind:`rebuild`}),Mm()):G&&(G.filePath=t.path,n===`prepend`?(G.firstOffset=t.start,Fm(t.records),Mm()):(n===`seed`&&(G.hasLoadedOnce=!0,G.firstOffset=t.start),G.nextOffset=t.next,Pm(t.records),Mm())))}function Ym(e){let t=e?.id;typeof t==`string`&&t===ym&&wm()&&(xm?Sm=!0:jm())}function Xm(e){let t=e?.id;if(typeof t!=`string`||xm?.request.id!==t)return!1;Em(),Sm=!1;let n=e?.message;return Cm=typeof n==`string`&&n?n:`The trace could not be read.`,K({kind:`rebuild`}),!0}function Zm(e){Em(),Sm=!1,Cm=e?null:b,e?(K({kind:`header`}),jm()):K({kind:`rebuild`})}var Qm=80,$m=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 eh(e){return e.replace(/\B(?=(\d{3})+(?!\d))/g,`,`)}function th(e){return e.includes(`.`)?e.replace(/0+$/,``).replace(/\.$/,``):e}function nh(e){if(typeof e!=`number`||!Number.isFinite(e))return`-`;let t=Math.round(e);return`${t<0?`-`:``}${eh(String(Math.abs(t)))}`}function rh(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}$${eh(r)}.${i}`}function ih(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}${th((n/1e3).toFixed(1))}k`:n<999995e3?`${t}${th((n/1e6).toFixed(2))}M`:`${t}${th((n/1e9).toFixed(2))}B`}function ah(e){return typeof e!=`number`||!Number.isFinite(e)?`ok`:e>=100?`crit`:e>=Qm?`warn`:`ok`}function oh(e){let t=ve(e?.max,null);return t===null||t<=0?null:t}function sh(e){let t=oh(e),n=ve(e?.pct,null);return t===null||n===null?null:n*100}function ch(e,t){let n=oh(t),r=ve(e?.projectedTokens,null);return n===null||r===null?null:r/n*100}var lh=90;function uh(e){let t=e?.budget?.rows;return Array.isArray(t)?t.filter(e=>e&&ve(e.budgetUsd,null)!==null):[]}function dh(e){let t=ve(e?.pct,null);return t===null?0:t}function fh(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 ph(e){return e?.vendor===`codex`?`codex`:`claude`}function mh(e){return fh(e,`fiveHour`)?.pct??null}function hh(e,t=null){let n=mh(t);if(n!==null)return ah(n);let r=ah(sh(e?.tokenLimit));return r===`ok`?ah(ch(e?.activeBlock?.projection,e?.tokenLimit)):r}function gh(e,t=null){let n=[],r=hh(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 uh(e)){let e=dh(t);if(e<lh)continue;let r=typeof t?.scope==`string`&&t.scope?t.scope:`budget`;n.push(`budget:${r}:${e>=100?`over`:`near`}`)}return _e(n)}function _h(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 vh(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 yh(e){if(Array.isArray(e))return e.length;let t=Number(e);return Number.isFinite(t)?t:null}function bh(e){if(!e||typeof e!=`object`)return``;let t=[],n=yh(e.dirs);if(n!==null&&t.push(`${nh(n)} transcript ${n===1?`directory`:`directories`}`),Number.isFinite(e.files)&&t.push(`${nh(e.files)} files`),Number.isFinite(e.entries)&&t.push(`${nh(e.entries)} entries`),Number.isFinite(e.lastScanMs)&&t.push(`last pass ${nh(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 xh(e){return ue(e?.error,``)}function Sh(e,t){if(!e||typeof e!=`object`)return!1;let n=e.requestId;return n==null||n===t}function Ch(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 wh(e){let t=Number(e?.tokens);if(!Number.isFinite(t)||t<=0)return``;let{costUSD:n}=Ch(e);return n===null?ih(t):`${ih(t)} ${rh(n)}`}function Th(e){let{source:t}=Ch(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 Eh({hasPlan:e,pendingPromptKind:t,hasOpenReview:n,hasApprovedReview:r=!1}){return e&&(n||t===`plan`&&!r)?`plan`:`terminal`}function Dh({hasPlan:e,isBorrowed:t,face:n}){return!e||n===`plan`?`hidden`:t?`face`:`navigate`}function Oh(e){return e instanceof Error?e.message:String(e)}function kh(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 Ah(e){return e.split(/[\\/]/).filter(Boolean).at(-1)??e}async function jh(e){let[t,n]=await Promise.all([et(`get-workspace-repos`,{id:e}),et(`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:Ah(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 Mh(e){let{overlay:t,dialog:n,close:r,actions:i,btnCancel:a}=Nt({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()),jh(e).then(e=>{if(t.isConnected){s.textContent=``;for(let t of e)s.append(kh(t.name,t.path,t.isMember));u.disabled=!1}}).catch(e=>{t.isConnected&&(s.textContent=``,l.textContent=`Could not load repositories: ${Oh(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`,et(`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: ${Oh(e)}`)}).finally(()=>{c.textContent=``,u.disabled=!1}))})}function Nh(e,t,n){return{body:String(n||`Session needs attention`),tag:`glimmervoid-${e||``}-${t||``}`,renotify:!0}}var Ph=4e3;function Fh(e,t){return`glimmervoid-notify-claim-${e||``}-${t||``}`}function Ih(e,t,n,r=Ph){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 Lh(){return typeof Notification>`u`?null:Notification}function Rh(){return Lh()!==null}function zh(){let e=Lh();return e?e.permission:`unavailable`}async function Bh(){let e=Lh();if(!e)return`denied`;if(e.permission!=="default")return e.permission;try{return await e.requestPermission()}catch{return e.permission}}function Vh(){return!Rh()&&!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.`:Rh()?zh()===`denied`&&zr()?`Blocked by the browser. Allow notifications for this site in its site settings.`:null:`This browser does not support desktop notifications.`}function Hh(){return zr()&&zh()==="default"}function Uh(e=()=>{}){let t=w(`div`,`notification-permission`),n=()=>{let r=Vh();if(t.replaceChildren(),t.hidden=!r&&!Hh(),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,Bh().then(()=>{n(),e()})}),t.append(i)};return n(),{element:t,refresh:n}}var Wh=`Notifications`,Gh=`Desktop notifications are blocked by the browser, so alerts show only in this tab. Allow notifications for this site to get them again.`,Kh=new Map,qh=!1;function Jh(){qh||(qh=!0,R({source:Wh,message:Gh,hidesInStreamerMode:!1}))}function Yh(e,t){let n=Kh.get(e)??new Set;n.add(t),Kh.set(e,n),t.addEventListener(`close`,()=>n.delete(t))}function Xh(e){let t=Kh.get(e);if(t){Kh.delete(e);for(let e of t)e.close()}}function Zh(e){return!Rh()||!zr()||document.documentElement.hasAttribute(`data-streamer`)?!1:e||!document.hasFocus()}function Qh(e=!1){return Zh(e)&&zh()===`granted`}function $h({session:e,category:t,message:n,kind:r,ignoreFocus:i=!1}={}){let a=Lh();if(!a||!Zh(!!i)||(a.permission===`denied`&&Jh(),a.permission!==`granted`)||(Ds(Wh),!Ih(window.localStorage,Fh(e,t),Date.now())))return;let o=typeof e==`string`?e:``,s=O.get(o),c=s?_t(s):``;try{let i=new a(c||`Glimmervoid`,Nh(e,t,n));i.onclick=()=>{window.focus(),r===`plan`&&o&&(window.location.hash=Vu(o)),i.close()},s&&Yh(o,i)}catch{}}var eg=`CommitMono`,tg=[400,700].map(e=>`${e} 14px ${eg}`),ng=`monospace`;function rg(e){return e.trim().replace(/^['"]|['"]$/g,``)}function ig(e,t){let n=e.split(`,`).map(e=>e.trim()).filter(e=>e.length>0),r=t?n:n.filter(e=>rg(e)!==eg);return r.length>0?r.join(`, `):ng}function ag(e,t,n){return Promise.all(t.map(t=>e.load(t))).then(n,()=>void 0)}function og(e,t){for(let n of e)n.term&&(n.term.options.fontFamily=t,n._syncGrid?.())}function sg(){return document.fonts?tg.every(e=>document.fonts.check(e)):!1}function cg(){return ig(getComputedStyle(document.documentElement).getPropertyValue(`--font-mono`),sg())}function lg(e){document.fonts&&ag(document.fonts,tg,e)}var ug=3e4,dg=24,fg=null,pg=[`Android`,`iPhone`,`iPad`,`Windows`,`Mac OS X`,`Linux`],mg=[/Firefox\/\d+/,/Edg\/\d+/,/Chrome\/\d+/,/Version\/\d+/];function hg(){let e=navigator.userAgent,t=pg.find(t=>e.includes(t))??`unknown platform`;return`${mg.map(t=>t.exec(e)?.[0]).find(e=>e!==void 0)?.replace(`Version`,`Safari`)??`unknown browser`} on ${t}`}function gg(){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 _g(){return[navigator.onLine?`online`:`offline`,...gg()].join(` `)}function vg(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 yg(e,t){let n=e.join(` `);if(n.length<=t)return n;let r=t-dg,i=vg(e,r/2),a=vg(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 bg(e){return e.marks.some(e=>e.startsWith(`terminal-bytes`))}function xg(e){let t=bg(e)&&!e.isCapped?`terminal live`:`terminal not live after ${ug/1e3} s`,n=`hidden ${Math.round(e.hiddenForMs/1e3)} s, ${t}, ${hg()}, ${e.networkAtWake}: `,r=n+yg(e.marks,ae-n.length);return E({type:`client-log`,scope:`wake`,text:r.slice(0,ae)})}function Sg(){let e=fg;e&&(e.isCapped||bg(e))&&xg(e)&&(fg=null,clearTimeout(e.capTimer))}function Cg(){fg&&(fg.isCapped=!0,Sg())}function wg(e,t){e.marks.push(`${t}+${Math.round(performance.now()-e.startedAtMs)}`)}function Tg(e){fg&&(e===`terminal-bytes`&&bg(fg)||(wg(fg,e),(e===`terminal-bytes`||e===`control-opened`)&&Sg()))}function Eg(e){fg&&wg(fg,e===`link`?[`link`,...gg()].join(`-`):e)}function Dg(e,t){fg||={startedAtMs:performance.now(),hiddenForMs:t,networkAtWake:_g(),marks:[],isCapped:!1,capTimer:setTimeout(Cg,ug)},Tg(e)}var Og=6,kg=262144,Ag=16384,jg=()=>{};function Mg(e,t){if(t.length<=Ag)e.push(t);else for(let n=0;n<t.length;n+=Ag)e.push(t.slice(n,n+Ag))}function Ng({budget:e=Og,maxChunkBytes:t=kg,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)Mg(l,e),m+=e.length,a.readIdx++;else{m===0&&(Mg(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,jg);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 Pg=Ng(),Fg={"--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)`},Ig={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`},Lg={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`,...Fg,"--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:{...Ig,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`,...Fg,"--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:{...Ig,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`,...Fg,"--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:{...Ig,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`}}},Rg=`phyrexian`,zg=null,Bg=null;function Vg(e){let t=Lg[e];if(!t)return;let n=Bg;Bg=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`&&zg?.()}function Hg(e){zg=e}function Ug(e){document.documentElement.toggleAttribute(`data-show-usage`,e)}function Wg(e){document.documentElement.toggleAttribute(`data-arrow-pad`,e)}function Gg(){let e=Lg[Bg||Rg];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 Kg(){return Object.entries(Lg).map(([e,t])=>({id:e,label:t.label}))}var qg=e().int().min(1).max(500),Jg=e().int().min(1).max(200);r(`type`,[a({type:i(`input`),data:t()}),a({type:i(`claim`),cols:qg,rows:Jg}),a({type:i(`unview`)}),a({type:i(`pause-output`)}),a({type:i(`resume-output`)})]);var Yg=a({type:i(`pty-size`),cols:qg,rows:Jg,seq:e().int().nonnegative()}),Xg=a({type:i(`output-beat`)}),Zg=r(`type`,[Yg,Xg]),Qg=`history`,$g=`output`,e_=`paused`;n([`screen`,`deep`]);function t_(e){try{return JSON.parse(e)}catch{return null}}function n_(e){let t=Zg.safeParse(t_(e));return t.success?t.data:null}var r_=new Set([1,5,25,100]);function i_(e){return e.isOutputPaused?`${e.history} paused`:e.history}function a_(e,t){return!e||!t?!1:e.cols===t.cols&&e.rows===t.rows}function o_(e){return!e||!Number.isInteger(e.cols)||!Number.isInteger(e.rows)?!1:e.cols>0&&e.rows>0}function s_(e){return{cols:Math.min(Math.max(e.cols,1),500),rows:Math.min(Math.max(e.rows,1),200)}}function c_({authoritative:e,isActiveViewer:t,lastClaim:n}){return!(t&&a_(e,n))}function l_({isDocumentVisible:e,isDocumentFocused:t,hasFocusInsideCard:n,hasWindowBlurredSinceFocus:r,isPhoneLayout:i}){return e?i||t?!0:n&&!r:!1}function u_({isBorrowedCard:e,isTerminalFaceShown:t}){return!e||!t}function d_({viewportTopLine:e,scrollbackLineCount:t,isDeepHistoryLoadedOrPending:n}){return e===0&&t>0&&t<5e3&&!n}function f_(e,t,n){let r=new URLSearchParams;t&&r.set(Qg,`deep`),n&&r.set($g,e_);let i=`/terminals/${encodeURIComponent(e)}`,a=r.toString();return a?`${i}?${a}`:i}function p_({authoritative:e,isActiveViewer:t,isDocumentEngaged:n,isDataWsOpen:r,lastClaim:i}){return!t||!n||!r?`none`:c_({authoritative:e,isActiveViewer:t,lastClaim:i})?`rebid`:`resync`}function m_({isActiveViewer:e,lastClaim:t,owedClaim:n}){return e?n??t:null}function h_({authoritative:e,applied:t,proposal:n,isActiveViewer:r,isDataWsOpen:i,lastClaim:a}){let o=!!e&&!a_(e,t),s=o_(n)?s_(n):null,c=r&&!!s&&!a_(s,a);return{resizeTo:o?e:null,owedClaim:c?s:null,keepsPendingSettle:r&&!s,sendUnview:!r&&i&&!!a,isFollowing:c_({authoritative:e,isActiveViewer:r,lastClaim:a})}}function g_(e){return e instanceof ArrayBuffer||ArrayBuffer.isView(e)?new TextDecoder().decode(e):null}function __(e){let t=g_(e);return t===null?null:n_(t)}function v_(e,t){if(typeof e==`string`)return{kind:`bytes`,data:e};let n=__(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 y_=``,b_=`\x1B`,x_=`\r`,S_=new Map([[`deleteContentBackward`,y_],[`deleteByComposition`,y_],[`deleteCompositionText`,y_],[`deleteWordBackward`,b_],[`deleteSoftLineBackward`,b_],[`deleteHardLineBackward`,b_]]);function C_(e){return S_.get(e)??``}var w_=new Set([`insertFromPaste`,`insertFromPasteAsQuotation`,`insertFromDrop`,`insertFromYank`,`historyUndo`,`historyRedo`]);function T_(e){return typeof e!=`string`||e===``||!w_.has(e)}function E_(e){return e?e.keyCode===229||e.key===`Process`:!1}function D_(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 y_.repeat(n.length-a)+r.slice(a).join(``).replace(/\r\n|\n|\r/g,x_)}var O_=/https?:\/\/[^\s<>"']+/g,k_=new Set([`.`,`,`,`;`,`:`,`!`,`?`,`'`,`"`]),A_={")":`(`,"]":`[`,"}":`{`};function j_(e,t){let n=0;for(let r of e)r===t&&n++;return n}function M_(e){for(;;){let t=e[e.length-1];if(t===void 0)return e;if(k_.has(t)){e=e.slice(0,-1);continue}let n=A_[t];if(n&&j_(e,n)<j_(e,t))e=e.slice(0,-1);else return e}}function N_(e){let t=[];for(let n of e.matchAll(O_)){let e=M_(n[0]);e.length<=8||t.push({start:n.index,end:n.index+e.length,url:e})}return t}var P_=50;function F_(){return{activate(e,t){bo(t)},allowNonHttpProtocols:!1}}function I_(e,t){let n=t-1;for(;n>0&&e.getLine(n)?.isWrapped&&t-1-n<P_;)n--;let r=t-1;for(;e.getLine(r+1)?.isWrapped&&r-(t-1)<P_;)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 L_(e){return e.registerLinkProvider({provideLinks(t,n){let r=e.buffer?.active;if(!r)return n(void 0);let{text:i,cellAt:a}=I_(r,t),o=[];for(let{start:e,end:t,url:n}of N_(i)){let r=a[e],i=a[t-1];r&&i&&o.push({range:{start:r,end:i},text:n,activate(e,t){bo(t)}})}n(o.length?o:void 0)}})}var R_=`(?:password|passwd|pwd|token|api[_-]?key|secret|credential|auth[_-]?token|access[_-]?key|secret[_-]?key|private[_-]?key|client[_-]?secret|connection[_-]?string)`,z_=`(?:"[^"\\r\\n]*"|'[^'\\r\\n]*'|[^\\s\\r\\n]+)`,q=`[^\\S\\r\\n]`,B_=`${R_}${q}*(?:=>|[:=])${q}*`,V_=`[?&][A-Za-z0-9_.-]*`,H_=`[^\\r\\n;&|]{0,200}?`,U_=`(?:mysql|mysqldump|mysqladmin|mysqlshow|mariadb|mariadb-dump)`,W_=RegExp(`(${B_})${z_}`,`gi`),G_=RegExp(`(\\bBearer${q}+)[A-Za-z0-9._~+/=-]{8,}`,`gi`),K_=[/\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],q_=[RegExp(`((?:^|\\s)--?${R_}${q}+)${z_}`,`gi`),RegExp(`((?:^|\\s)-(?:pwd|pw)(?![a-z])${q}*=?${q}*)${z_}`,`g`),RegExp(`(-AsPlainText${q}+)${z_}`,`gi`),RegExp(`((?:^|\\s)setx${q}+[^\\s\\r\\n]*${R_}[^\\s\\r\\n]*${q}+)${z_}`,`gi`)],J_=[RegExp(`(\\bauthorization${q}*:${q}*Basic${q}+)[A-Za-z0-9+/=_-]{8,}`,`gi`),RegExp(`(\\bdocker${q}+login\\b${H_}${q}-p(?:${q}+|=))${z_}`,`gi`),RegExp(`(\\bcurl\\b${H_}${q}(?:--user|-u)(?:${q}+|=)[^\\s:\\r\\n]+:)${z_}`,`gi`),RegExp(`(\\b${U_}\\b${H_}${q}-p)${z_}`,`g`),/\b([a-z][a-z0-9+.-]*:\/\/[^\s:/@]+:)[^\s@/]+(?=@)/gi];[...q_,...J_];var Y_=[/-----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],X_=RegExp(`(${V_}(?:${R_}|_key)=)[^&#\\s]+`,`gi`),Z_=[W_,RegExp(`(\\b(?=[A-Z0-9_]*(?:SECRET|TOKEN|KEY|PASSWORD))[A-Z][A-Z0-9_]*=)${z_}`,`g`)],Q_=[G_,...q_,...J_,...K_,...Y_];function $_(e,t){return[...e.matchAll(t)].map(e=>({matchStart:e.index,valueStart:e.index+(e[1]??``).length,end:e.index+e[0].length}))}function ev(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 tv(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 nv(e){let t=$_(e,X_);return tv([...t,...Z_.flatMap(n=>ev($_(e,n),t)),...Q_.flatMap(t=>$_(e,t))].map(e=>({start:e.valueStart,end:e.end})))}var rv=`glimmervoid-streamer-mode`,iv=new Set,av=Un(rv,!1)===!0,ov=null;function sv(e){document.documentElement.toggleAttribute(`data-streamer`,e),ov?.setAttribute(`aria-pressed`,String(e))}sv(av);function cv(){return av}function lv(e){if(Wn(rv,e),e!==cv()){av=e,sv(e);for(let t of iv)t(e)}}function uv(e){return iv.add(e),()=>iv.delete(e)}async function dv(e){try{let t=await et(`update-settings`,{settings:{streamerMode:e}},{timeoutMs:ds});return t.type===`settings-error`?String(t.message):(lv(e),``)}catch(e){return bs(e,ds)}}var fv=`Streamer mode`;async function pv(){let e=!cv();e&&lv(!0);let t=await dv(e);t?R({source:fv,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}):Ds(fv)}function mv(){pv()}function hv(e){ov=e,sv(cv()),e.addEventListener(`click`,mv)}var gv=`#808080`,_v=new WeakMap;function vv(e,t,n){return`${e}:${t}:${n}`}function yv(e){return vv(e.marker.line,e.x,e.width)}function bv(e,t){let n=t;for(;n>0&&t-n<63&&e.getLine(n)?.isWrapped;)n--;return n}function xv(e,t){let n=t;for(;n-t<63&&e.getLine(n+1)?.isWrapped;)n++;return n}function Sv(e,t,n){let r=``;for(let i=t;i<=n;i++)r+=e.getLine(i)?.translateToString(!1)??``;return r}function Cv(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 wv(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 Tv(e,t,n,r){let i=[];if(nv(Sv(e,t,n)).length===0)return i;let{text:a,cellAt:o}=Cv(e,t,n,r);for(let e of nv(a))wv(i,o.slice(e.start,e.end));return i}function Ev(e,t){let n=e.getNullCell(),r=[],i=t;for(;i<e.length;){let t=xv(e,i);r.push(...Tv(e,i,t,n)),i=t+1}return r}function Dv(){return{masks:[],watermark:null,isFullRescanOwed:!0}}function Ov(e){e.decoration.dispose(),e.marker.dispose()}function kv(e){for(let t of e.masks)Ov(t);e.masks.length=0,e.watermark?.dispose(),e.watermark=null,e.isFullRescanOwed=!0}function Av(e,t){let n=e.watermark;return e.isFullRescanOwed||!n||n.isDisposed?0:Math.min(n.line,t.baseY)}function jv(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 Mv(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(yv(r),r),r=e.masks.at(-1);return jv(e),n}function Nv(e,t){let n={normal:Dv(),alternate:Dv()},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??gv,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(!cv())return;let t=e.buffer.active,r=n[t.type],i=bv(t,Av(r,t)),a=Mv(r,i);for(let e of Ev(t,i)){let n=vv(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())Ov(e);r.watermark?.dispose(),r.watermark=e.registerMarker(-t.cursorY)??null,r.isFullRescanOwed=!1}function u(){kv(n.normal),kv(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=>{kv(n.alternate),s(`normal`),e.type===`alternate`&&l()})],p=uv(d);t.addEventListener(`abort`,()=>{p();for(let e of f)e.dispose();u(),_v.delete(e)},{once:!0}),_v.set(e,d)}function Pv(e){_v.get(e)?.()}function Fv({hasTerminal:e,isSocketOpen:t,isInputHeld:n}){return e?n||!t?`connecting`:`live`:`none`}var Iv=`Upload`;async function Lv(e,t){return Ds(Iv,e),zv(e,t)}async function Rv(e,t){Ds(Iv,e);for(let n of t)await zv(e,n)}async function zv(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:Iv,sessionId:e,message:await Bv(r,t.name)}),!1)}catch{return R({source:Iv,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 Bv(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 Vv=10,Hv=1.2,Uv=.005,Wv=4,Gv=.08,Kv=5;function qv(e,t){let n=Math.abs(t);return n<Vv?!1:n>Math.abs(e)*Hv}function Jv(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 Yv(e,t,n){let r=e.length>=Wv?e.slice(1):e.slice();return r.push({positionPx:t,timestampMs:n}),r}function Xv(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>=Gv))return 0;let o=Math.min(a,Kv);return i<0?-o:o}function Zv({velocityPxPerMs:e,startedAtMs:t,cellHeightPx:n,pendingPx:r=0}){return!e||!(n>0)?null:{velocityPxPerMs:e,lastMs:t,cellHeightPx:n,pendingPx:r}}function Qv(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)-Uv*n;if(!(r>0))return{scrollLines:0,state:null};let i=e.velocityPxPerMs<0?-1:1,a=i*r*n,{scrollLines:o,remainderPx:s}=Jv(e.pendingPx+a,e.cellHeightPx);return{scrollLines:o,state:{velocityPxPerMs:i*r,lastMs:t,cellHeightPx:e.cellHeightPx,pendingPx:s}}}function $v(e,t){return e===`alternate`||!!t&&t!==`none`}function ey(e,t){return!(e>0)||!(t>0)?0:e/t}var ty=1;function ny(e){return typeof e._core?._viewport?.handleTouchScroll==`function`}function ry(e,t){for(let n of e)if(n.identifier===t)return n;return null}function iy(e,t){if(ny(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=()=>$v(t.buffer?.active?.type,t.modes?.mouseTrackingMode),m=()=>{let e=t.element?.querySelector(`.xterm-screen`);return ey(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:ty,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}=Qv(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=Zv({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=ry(e.touches,r);if(!u)return;if(!s){if(!qv(u.clientX-i,u.clientY-a))return;s=!0,o=u.clientY,c=0,l=Yv([],u.clientY,e.timeStamp)}e.cancelable&&e.preventDefault(),c+=u.clientY-o,o=u.clientY,l=Yv(l,u.clientY,e.timeStamp);let d=p(),{scrollLines:f,remainderPx:h}=Jv(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=Yv(l,o,e.timeStamp);let t=Xv(l),n=c;h(),t!==0&&v(t,performance.now(),n)},{passive:!0}),e.addEventListener(`touchcancel`,()=>{f(),h()},{passive:!0})}function ay(e){return e.needsReload?!0:e.wasAttachedWithoutLayout&&e.hasLayoutNow}function oy(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 sy=null,cy=null;function ly(){return sy}function uy(){return sy?Promise.resolve(sy):(cy??=Promise.all([P(()=>import(`./xterm-CdMfg81L.js`).then(e=>e.t),__vite__mapDeps([14,15])),P(()=>import(`./xterm-CdMfg81L.js`).then(e=>e.r),__vite__mapDeps([14,15])),P(()=>import(`./xterm-CdMfg81L.js`).then(e=>e.n),__vite__mapDeps([14,15]))]).then(([e,t,n])=>(sy={Terminal:e.Terminal,FitAddon:t.FitAddon,WebglAddon:n.WebglAddon},sy)).catch(e=>{throw cy=null,e}),cy)}var dy=window.matchMedia?.(`(pointer: coarse)`).matches?4:12,fy=new Map;function py(e){return e.clientWidth>0&&e.clientHeight>0}function my(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 hy(e){fy.delete(e),e.needsWebGLReload=!1,e.webglAttachedWithoutLayout=!1,my(e)}function gy(e){let t=[e],n=j.snapshot().borrowedCardId,r=n?O.get(n):void 0;r&&t.push(r);for(let e of oy([...fy.keys()],dy,t))hy(e),e.needsWebGLReload=!0}function _y(e){e?.term&&ay({needsReload:e.needsWebGLReload,wasAttachedWithoutLayout:e.webglAttachedWithoutLayout,hasLayoutNow:py(e.termWrap)})&&Sy(e,{isForced:!0})}function vy(){for(let e of fy.keys()){let t=e.term;if(e.webglAddon&&t)try{t.clearTextureAtlas(),t.refresh(0,t.rows-1)}catch{hy(e),e.needsWebGLReload=!0}}}var yy=!1;function by(){yy||(yy=!0,requestAnimationFrame(()=>{yy=!1,vy()}))}function xy(e){e?.addEventListener(`contextrestored`,by)}function Sy(e,t={}){try{if(e.webglAddon&&!e.needsWebGLReload&&!t.isForced){fy.delete(e),fy.set(e,!0);return}e.webglAddon&&(my(e),fy.delete(e));let n=ly();if(!n)return;gy(e);let r=new n.WebglAddon;r.onContextLoss(()=>{r.dispose(),e.webglAddon=null,fy.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(xy),r.onAddTextureAtlasCanvas(xy),xy(r.textureAtlas),e.webglAddon=r,e.needsWebGLReload=!1,e.webglAttachedWithoutLayout=!py(e.termWrap),fy.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,fy.delete(e)}}function Cy(e){let t=hr(e,ud,{isTerminalFocused:!0},pd());return t?gr(t,document.body.dataset.activeView):!1}var wy=1024,Ty=250,Ey=`(max-width: 768px)`,Dy=12,Oy=14,ky=5e4,Ay=!1;function jy(e){Ay=e}var My=!1;window.addEventListener(`blur`,()=>{My=!0}),window.addEventListener(`focus`,()=>{My=!1});function Ny(e){let t=document.activeElement;return l_({isDocumentVisible:document.visibilityState===`visible`,isDocumentFocused:document.hasFocus(),hasFocusInsideCard:t instanceof Node&&e.contains(t),hasWindowBlurredSinceFocus:My,isPhoneLayout:vu()})}function Py(e,t){return u_({isBorrowedCard:j.snapshot().borrowedCardId===t,isTerminalFaceShown:e.face===`terminal`})}var Fy=new WeakMap,Iy=new WeakMap,Ly=new WeakSet,Ry=new WeakSet,zy=new WeakSet,By=new WeakMap,Vy=5e3,Hy=15e3,Uy=`Keys you type now are held and sent once the terminal reconnects.`,Wy=`The terminal is still reconnecting and its key buffer is full, so new keys are dropped.`,Gy=`The agent copied text. The browser needs a click before it can reach your clipboard.`,Ky=`The clipboard is unavailable in this browser.`;function qy(e,t,n,r){let i=By.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(()=>Jy(e,t),n===`ok`?Vy:Hy)))}function Jy(e,t){let n=By.get(e);n&&n.shownKind===t&&(n.clearTimerId!==null&&clearTimeout(n.clearTimerId),n.clearTimerId=null,n.shownKind=null,n.status.clear())}function Yy(e){let t=e.buffer.active;return t.viewportY<t.baseY}function Xy(e,t,{hasNewOutput:n=!1}={}){let r=By.get(e)?.jumpToLatestButton;if(!r)return;let i=Yy(t);r.hidden=!i,i?n&&(r.dataset.hasNewOutput=`true`):delete r.dataset.hasNewOutput}function Zy(e,t){if(Fy.has(e)||!Yy(t))return;let n=t.buffer.active,r=n.length-n.viewportY;Ly.has(e)?Fy.set(e,r):Iy.set(e,r)}function Qy(e,t,n){let r=e.term;r&&d_({viewportTopLine:n,scrollbackLineCount:r.buffer.active.baseY,isDeepHistoryLoadedOrPending:Ly.has(e)})&&(Ly.add(e),Ry.add(e),Fy.set(e,r.buffer.active.length-n),Ib(t))}var $y=new WeakMap;function eb(e,t){return document.visibilityState===`visible`&&!Py(e,t)}function tb(e,t){if(e&&Sb(e,t))return;let n=e?.dataWs;if(!e||n?.readyState!==WebSocket.OPEN)return;let r=eb(e,t);$y.get(n)!==r&&($y.set(n,r),n.send(JSON.stringify({type:r?`resume-output`:`pause-output`})))}function nb(){for(let[e,t]of O)tb(t,e)}document.addEventListener(`visibilitychange`,nb),j.subscribe((e,t)=>{t.includes(`borrowedCardId`)&&nb()});function rb(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 ib(e,t,n){let r=(n instanceof Error?n.message:``)||String(n);console.error(`[clipboard:${t}]`,n),qy(e,`clipboard`,`error`,`Clipboard ${t} failed: ${r}`)}function ab(e,t,n,r){let i=qe(t);i?i.then(()=>{r&&qy(e,`clipboard`,`ok`,r)}).catch(t=>ib(e,n,t)):qy(e,`clipboard`,`error`,Ky)}function ob(e,t){let n=By.get(e);n&&(n.pendingClipboardText=t,n.clipboardPrompt.hidden=!1)}function sb(e){let t=By.get(e),n=t?.pendingClipboardText;t&&n!=null&&(t.pendingClipboardText=null,t.clipboardPrompt.hidden=!0,ab(e,n,`osc52 write`,`Copied to the clipboard.`))}function cb(e,t,n){let r=vs(`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`,()=>sb(t)),i.append(w(`span`,`terminal-clipboard-prompt-text`,Gy),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),By.set(t,{status:r,shownKind:null,clearTimerId:null,clipboardPrompt:i,pendingClipboardText:null,jumpToLatestButton:s})}function lb(e,t){return O.get(e)===t&&!t.dataWs}function ub(e){return e.querySelector(`:scope > .terminal-connecting`)}function db(e){if(ub(e))return;let t=w(`div`,`terminal-connecting`);t.append(w(`span`,`terminal-connecting-label`,`Connecting`)),e.append(t)}function fb(e){let t=ub(e);if(!t)return;t.querySelector(`:scope > .terminal-connecting-animal`)?.remove();let n=Vi();n&&t.prepend(Bi(n,`terminal-connecting-animal`))}var pb=new Set,mb=new WeakSet;function hb(e){return pb.add(e),()=>pb.delete(e)}function gb(){let e=0;for(let[t,n]of O)n.card.dataset.link===`connecting`&&eb(n,t)&&e++;return e}function _b(e){let t=Fv({hasTerminal:e.term!==null||mb.has(e),isSocketOpen:e.dataWs?.readyState===WebSocket.OPEN,isInputHeld:Mb}),n=t===`connecting`&&!Mb&&Ry.has(e)?`live`:t;if(n===`none`){delete e.card.dataset.link,vb();return}let r=n===`connecting`&&e.card.dataset.link!==`connecting`;e.card.dataset.link=n,r&&fb(e.termWrap),vb()}function vb(){for(let e of pb)e()}function yb(e,t,n){Zy(t,n),Pg.unregister(e),t.dataWs=null,_b(t),t._resetGridClaim?.()}var bb=new WeakMap;function xb(e,t,n,r){yb(e,t,n),clearTimeout(bb.get(t)),bb.delete(t),r===0&&rt()?jb(e,t,n):bb.set(t,setTimeout(()=>{bb.delete(t),lb(e,t)&&at().catch(()=>{}).then(()=>{lb(e,t)&&jb(e,t,n)})},r))}function Sb(e,t){let n=zy.has(e),r=!e.dataWs&&O.get(t)===e;return!(n||r)||!e.term||!eb(e,t)?!1:(zy.delete(e),e._dataWsRetryAttempt=0,xb(t,e,e.term,0),!0)}function Cb(e,t,n){yb(e,t,n),zy.add(t)}var wb=15e3,Tb=new Map;function Eb(e){if(!rt()||Tb.has(e)||O.get(e)?.dataWs)return;let t=f_(e,!1,!1),n=new WebSocket(mt(location,nt(t)));n.binaryType=`arraybuffer`;let r=[],i=e=>r.push(e),a=()=>Db(e,n),o=()=>{n.readyState===WebSocket.CONNECTING&&a()};n.addEventListener(`message`,i),n.addEventListener(`close`,a);let s=setTimeout(o,Xe),c=setTimeout(a,wb);Tb.set(e,{socket:n,attachPath:t,bufferedMessages:r,release:()=>{n.removeEventListener(`message`,i),n.removeEventListener(`close`,a),clearTimeout(s),clearTimeout(c)}})}function Db(e,t){let n=Tb.get(e);n?.socket===t&&(Tb.delete(e),n.release(),t.close())}function Ob(e,t){let n=Tb.get(e);if(!n)return null;let r=n.socket.readyState===WebSocket.CONNECTING||n.socket.readyState===WebSocket.OPEN;return n.attachPath!==t||!r?(Db(e,n.socket),null):(Tb.delete(e),n.release(),n)}var kb=new WeakMap;function Ab(e,t,n){if(t.openedAtMs===null)return;let r=Math.round(performance.now()-t.openedAtMs);if(r>=1e3){kb.delete(e);return}let i=(kb.get(e)??0)+1;if(kb.set(e,i),!r_.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 jb(e,t,n){zy.delete(t);let r=Fy.get(t);Fy.delete(t);let i=Iy.get(t);Iy.delete(t);let a=r!==void 0,o=r??i,s=!1,c=eb(t,e),l=f_(e,a,!c),u=Ob(e,l),d=u?.socket??new WebSocket(mt(location,nt(l)));$y.set(d,c),d.binaryType=`arraybuffer`,t.dataWs=d,c&&Tg(`terminal-connecting`),_b(t);let f=!1,p=!1,m={sessionId:e,attachDescription:i_({history:a?`deep`:`screen`,isOutputPaused:!c}),openedAtMs:null,hasReceivedBytes:!1},h={hasSeenSize:!1,lastSeq:0},g=setTimeout(()=>{d.readyState===WebSocket.CONNECTING&&(p=!0,c&&Tg(`terminal-abandoned`),d.close())},Xe);Pg.register(e,(e,t)=>n.write(e,t));let _=r=>{if(t.dataWs!==d)return;let i=v_(r.data,h);if(i.kind===`bytes`){m.hasReceivedBytes=!0,Bt(t),$y.get(d)&&Tg(`terminal-bytes`);let r=s;if(s=!1,Pg.enqueue(e,i.data),!r)return;let a=o??0;Pg.enqueueAction(e,()=>{n.scrollToLine(Math.max(0,n.buffer.active.length-a))});return}if(i.kind===`beat`){Bt(t);return}if(i.kind===`attach-size`){s=o!==void 0,a||Ly.delete(t),h.hasSeenSize=!0,h.lastSeq=i.seq,n.reset(),Pv(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};Pg.enqueueAction(e,()=>{t.ptySize=c,t._syncGrid?.()})};d.addEventListener(`message`,_),d.addEventListener(`close`,r=>{if(clearTimeout(g),t.dataWs!==d)return;if(Ab(t,m,r),c&&!p&&Tg(`terminal-closed`),Ry.delete(t),!f&&!p&&ct(),!eb(t,e)){Cb(e,t,n);return}if(p){xb(e,t,n,0);return}let i=Qe(t._dataWsRetryAttempt||0);t._dataWsRetryAttempt=(t._dataWsRetryAttempt||0)+1,xb(e,t,n,i)});let v=()=>{clearTimeout(g),f=!0,m.openedAtMs=performance.now(),c&&Tg(`terminal-opened`),t._dataWsRetryAttempt=0,Ry.delete(t),_b(t),tb(t,e),t._syncGrid?.({isActivationEdge:!0}),t._retryOwedGridClaim?.(),t._inputQueue?.length&&setTimeout(()=>{t.dataWs===d&&Nb(t)},50)};d.addEventListener(`open`,v),d.readyState===WebSocket.OPEN&&v();for(let e of u?.bufferedMessages??[])_(e)}var Mb=!1;function Nb(e){let t=e._inputQueue,n=e.dataWs;if(!Mb&&t?.length&&n?.readyState===WebSocket.OPEN){for(let e of t)n.send(JSON.stringify({type:`input`,data:e}));t.length=0,Jy(e,`keys`)}}function Pb(){Mb=!0;for(let e of O.values())_b(e)}function Fb(){Mb=!1;for(let e of O.values())_b(e),Nb(e)}function Ib(e){let t=k(e);if(typeof e!=`string`||!t?.term)return;let n=t.dataWs;t._dataWsRetryAttempt=0,xb(e,t,t.term,0),n?.close()}function Lb(){for(let[e,t]of O)t.term&&(eb(t,e)?Ib(e):Rb(e,t,t.term))}function Rb(e,t,n){let r=t.dataWs;r&&(Cb(e,t,n),r.close())}function zb(){for(let[e,t]of O)t.term&&Rb(e,t,t.term)}function Bb(e,t){let n=e.dataWs;e.dataWs=null,Pg.unregister(t),n&&n.readyState<=WebSocket.OPEN&&n.close()}function Vb(e,t,n){if(!e||t==null||t===``)return!1;if(n?.fromSoftKeyboard||e._resetSoftKeyboardBuffer?.(),!Mb&&!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>=wy?(qy(e,`keys`,`error`,Wy),!1):(e._inputQueue.push(t),r&&qy(e,`keys`,`busy`,Uy),!0)}function Hb(e,t,n){let r=window.matchMedia?.(Ey).matches?Dy:Oy,i=new n.Terminal({cursorBlink:Ay,fontSize:r,fontFamily:cg(),theme:Gg(),scrollback:ky,allowProposedApi:!0,linkHandler:F_()}),a=new n.FitAddon;i.loadAddon(a),db(e),i.open(e),cb(e,t,i),L_(i),Nv(i,t.abortController.signal),t.term=i,t.fitAddon=a,hy(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||!Ny(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=c_({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)},Ty)}function h(){u&&s===null&&p(u)}function g({isActivationEdge:e=!1}={}){let n=t.term;if(!n)return;let r=h_({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=p_({authoritative:t.ptySize??null,isActiveViewer:c,isDocumentEngaged:Ny(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=m_({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&&_y(t),g({isActivationEdge:!0}))},t.card.addEventListener(`focusin`,()=>{My=!1,_()},{signal:t.abortController.signal}),Sy(t);let ee=null;i.onScroll(()=>{ee===null&&(ee=requestAnimationFrame(()=>{ee=null,t.term&&(t.term.refresh(0,t.term.rows-1),Xy(t,t.term))}))}),i.onWriteParsed(()=>Xy(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=rb(r)}catch(e){return ib(t,`osc52 decode`,e),!0}return document.hasFocus()&&navigator.userActivation?.isActive!==!1?(ab(t,i,`osc52 write`),!0):(ob(t,i),!0)}),i.attachCustomKeyEventHandler(e=>{if(e.shiftKey&&e.key===`Enter`)return e.type===`keydown`&&Vb(t,`\x1B\r`),!1;if(e.type!==`keydown`)return!0;if(Cy(e))return!1;let n=e.ctrlKey||e.metaKey;if(n&&e.key===`c`&&i.hasSelection()){let e=i.getSelection();return i.clearSelection(),ab(t,e,`copy`),!1}return n&&e.key===`v`?!1:n&&e.key===`Backspace`?(Vb(t,`\x1B`),!1):!0}),Ub(e,i,t),iy(e,i)}function Ub(e,t,n){let r=t.textarea;if(!r)return;let i=``,a=()=>{i=r.value},o=()=>{i=``,vu()&&r.value!==``&&(r.value=``)};n._resetSoftKeyboardBuffer=o;let s=()=>{let e=D_(i,r.value);return i=r.value,e!==``&&(Vb(n,e,{fromSoftKeyboard:!0}),t.scrollToBottom(),!0)},c=(t,n)=>{e.addEventListener(t,e=>{vu()?n(e):a()},!0)};c(`keydown`,e=>{E_(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(!T_(e.inputType)){queueMicrotask(o);return}if(e.stopPropagation(),s())return;let r=C_(e.inputType);r!==``&&(Vb(n,r,{fromSoftKeyboard:!0}),t.scrollToBottom())})}function Wb(e,t){e._inputQueue=[];let n=e.term;n&&(n.onData(n=>{Vb(e,n),e.unseenOutcome&&E({type:`dismiss`,id:t,expectedState:e.currentState})}),n.onScroll(n=>{Qy(e,t,n)}),Kb(e.termWrap,t,e.abortController.signal),_b(e),queueMicrotask(()=>{lb(t,e)&&jb(t,e,n)}))}function Gb(e){return!!e&&Array.from(e.types).includes(`Files`)}function Kb(e,t,n){e.addEventListener(`paste`,e=>{let n=e.clipboardData;n&&n.files.length!==0&&n.getData(`text/plain`)===``&&(e.preventDefault(),e.stopPropagation(),Rv(t,Array.from(n.files)))},{capture:!0,signal:n}),e.addEventListener(`dragover`,t=>{Gb(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,Gb(n.dataTransfer)&&(n.preventDefault(),n.stopPropagation(),Rv(t,Array.from(n.dataTransfer.files)))},{capture:!0,signal:n})}function qb(e,t){if(e.term||mb.has(e))return;let n=ly();if(n){Jb(e,t,n);return}mb.add(e);let r=e._isActiveViewer?.()===!0;e._isActiveViewer=()=>r,e._setActiveViewer=e=>{r=e},db(e.termWrap),_b(e),uy().then(n=>{mb.delete(e),!(e.term||e.abortController.signal.aborted||O.get(t)!==e)&&(Jb(e,t,n),e._setActiveViewer?.(r))},()=>{mb.delete(e),_b(e)})}function Jb(e,t,n){Hb(e.termWrap,e,n),Wb(e,t)}function Yb(e){e?._syncGridOnEngagementEdge?.()}function Xb(e,t){if(!e)return;qb(e,t),tb(e,t),_y(e);let n=e.term;n&&(n.refresh(0,n.rows-1),Yb(e))}function Zb(e,t,n){e&&(n&&qb(e,t),e._setActiveViewer?.(n))}var Qb=e=>e==null?``:String(e),$b=e=>Ae.includes(e),ex=e=>Pe.includes(e);Oa(lu);var tx=null,nx=null;function rx(){return tx??=P(()=>import(`./alert-sound-a-r-xMzC.js`),[]).catch(e=>(tx=null,T(`alert-sound`,`alert sound failed to load: ${Ye(e)}`),null)),tx}function ix(){return nx??=P(()=>import(`./resume-dialog-Zw1UXc7g.js`),__vite__mapDeps([16,3,4,1,2,13,7])).catch(e=>(nx=null,T(`resume-dialog`,`restart dialog failed to load: ${Ye(e)}`),null)),nx}function ax(){let e=Lr();rx().then(t=>t?.playAlertSound(e))}var ox=null,sx=null;function cx(){return sx??=P(()=>import(`./plan-face-Dskopzga.js`).then(e=>(ox=e,e),()=>(sx=null,null)),__vite__mapDeps([17,3,4,1,7,8,18])),sx}function lx(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,cx().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 ux(e){let t=e.currentState;e.btnRestart.classList.toggle(`visible`,$b(t)||ex(t)||t===x.DORMANT),e.btnWorkspaceRepos.classList.toggle(`visible`,e.card.dataset.workspace!==void 0),e.btnTrace.classList.toggle(`visible`,cc()),e.btnPlan.classList.toggle(`visible`,Dh(e)!==`hidden`)}function dx(e){e.sessionMenu.classList.remove(`open`),e.btnSessionMenu.setAttribute(`aria-expanded`,`false`)}function fx(e,t){Ec(e.taskTitleEl,()=>kc(e,t)),e.nameEl.addEventListener(`dblclick`,n=>{n.preventDefault(),Mc(e,t)}),e.nameEl.addEventListener(`click`,()=>{jc(e.nameEl)||Fl(t)}),e.nameEl.addEventListener(`keydown`,n=>{n.target===e.nameEl&&(n.key===`F2`||n.key===`Enter`)&&(n.preventDefault(),Mc(e,t))}),e.btnRestart.addEventListener(`click`,()=>{dx(e),ix().then(n=>n?.openRestartDialog(t,{readState:()=>e.currentState,canListEarlier:e.card.dataset.ephemeral===void 0}))}),e.btnWorkspaceRepos.addEventListener(`click`,()=>{dx(e),Mh(t)}),e.btnTrace.addEventListener(`click`,()=>{dx(e),Km(t)}),e.btnDocs.addEventListener(`click`,()=>{dx(e),pa(t)}),e.btnShown.addEventListener(`click`,()=>{dx(e),Ma(t)}),e.btnGuardrails.addEventListener(`click`,()=>{if(e.btnGuardrails.getAttribute(`aria-disabled`)===`true`)return;let n=n=>()=>{rc(e,{type:`set-session-guardrails`,id:t,isOn:n})};e.card.dataset.guarded===void 0?jt({title:`Restore guardrails`,message:`This session restarts with guardrails on, interrupting any turn in progress.`,confirmLabel:`Restore guardrails`,danger:!1,onConfirm:n(!0)}):jt({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=Dh(e);n!==`hidden`&&(n===`face`?Cx(t):location.hash=Vu(t))}),e.btnRemove.addEventListener(`click`,()=>{dx(e),eu(t)});function n(){for(let[,t]of O)t!==e&&dx(t);e.sessionMenu.classList.add(`open`),e.btnSessionMenu.setAttribute(`aria-expanded`,`true`)}e.btnSessionMenu.addEventListener(`click`,t=>{t.stopPropagation(),e.sessionMenu.classList.contains(`open`)?dx(e):n()}),zs({trigger:e.btnSessionMenu,menu:e.sessionMenu,menuItems:()=>[...e.sessionMenu.querySelectorAll(`.popup-menu-item.visible`)],isOpen:()=>e.sessionMenu.classList.contains(`open`),open:n,close:()=>dx(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&&dx(e)},{signal:e.abortController.signal}),e.btnDebug.addEventListener(`click`,n=>{n.stopPropagation(),zc(e,t)}),document.addEventListener(`click`,t=>{let n=t.target instanceof Node?t.target:null;e.debugOpen&&!e.card.contains(n)&&Bc(e)},{signal:e.abortController.signal})}function px(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&&Oc(e,r.taskTitle)}}function mx(e){return typeof e==`string`&&O.has(e)}function hx(){return O.size}function gx(e){let t=e||{};t.cursorBlink!=null&&jy(t.cursorBlink),t.debugMode!=null&&(oc(t.debugMode),Lu(t.debugMode));for(let[,e]of O)e.term&&t.cursorBlink!=null&&(e.term.options.cursorBlink=t.cursorBlink)}function _x(){og(O.values(),cg())}function vx(e){return{state:e.currentState,unseenOutcome:e.unseenOutcome,ownerId:e.ownerId}}function yx(){let e=ht(A.counts),t=e>0?`(${e}) Glimmervoid`:`Glimmervoid`;document.title!==t&&(document.title=t)}function bx(e,t,n,r={}){if(!Et)return;let i=D(e),a=Qb(n)||x.DORMANT,o=Sc(i,Qb(t),a,r),s=a===x.DORMANT;Et.appendChild(o.card);let c;function l(){c.face=`terminal`,c.card.dataset.face=`terminal`,c.termWrap.hidden=!1,c.planFace.hide(),ux(c),Xb(c,i)}let u=new AbortController,d=lx({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=>Kx(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:Qb(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=()=>Xb(c,i),c._showTerminalFace=l,c._showPreferredFace=()=>{xx(c)===`plan`?Cx(i):l()},c._setBorrowed=e=>{c.isBorrowed=e,ux(c)},o.card.append(d.el);let f=O.get(i);return f&&kt(A,vx(f)),O.set(i,c),vt(A,vx(c)),Rt(i,c),fx(c,i),ux(c),c.btnDocs.classList.toggle(`visible`,ca(i)),ka(i),a===x.RUNNING&&Lt(c,!0),s||qb(c,i),yx(),c}function xx(e){let t=e.planReviewState.reviews.some(e=>e.state===`open`),n=e.planReviewState.reviews.some(Gu);return Eh({hasPlan:e.hasPlan,pendingPromptKind:e.pendingPromptKind,hasOpenReview:t,hasApprovedReview:n})}function Sx(e){let t=k(e);return!t?.isBorrowed||xx(t)!==`plan`?!1:Cx(e)}function Cx(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)),ux(t),tb(t,D(e)),!0)}function wx(e,t){let n=k(e);n&&(n.hasPlan=t===!0,ux(n),Sx(e))}function Tx(e){let t=k(e.id);t&&(t.planReviewState=cd(t.planReviewState,e),t.hasPlan=e.hasPlan,t.planFace.update({state:t.planReviewState}),ux(t),Sx(e.id))}function Ex(e){let t=k(e.id);t&&t.planFace.update({draft:e})}function Dx(e){let t=k(e.id);t&&(t.planReviewState={reviews:e.reviews},t.hasPlan=!0,t.planFace.update({response:e}),ux(t))}function Ox(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 kx(e){for(let[,t]of O)t.planFace.update({isConnected:e})}function Ax(e,t){let n=k(e);n&&(n.effectiveBase=typeof t==`string`?t:void 0)}function jx(e,t){let n=k(e);n&&(n.agent=typeof t==`string`?t:null,ux(n))}function Mx(e,t){let n=k(e);n&&(t?n.card.dataset.worktree=``:delete n.card.dataset.worktree)}function Nx(e,t,n){let r=k(e);r&&(Px(r.card,`guarded`,t),Px(r.card,`guardrailsReleased`,n),wc(r.btnGuardrails,r.card))}function Px(e,t,n){n?e.dataset[t]=``:delete e.dataset[t]}function Fx(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 Ix(e,t){let n=k(e);if(!n)return;let r=wh(t),i=n.card.querySelector(`.usage-badge`);if(r)n.card.dataset.usage=``,i&&(i.dataset.tipLabel=r,i.dataset.tipDetail=Th(t),Qs(i));else{if(delete n.card.dataset.usage,!i)return;delete i.dataset.tipLabel,Qs(i)}}function Lx(e,t){let n=k(e);n&&(n.pendingPromptKind=typeof t==`string`?t:null,Sx(e))}function Rx(e,t){let n=k(e);n&&(kt(A,vx(n)),n.unseenOutcome=t??null,vt(A,vx(n)))}function zx(e,t){t===`pending-review`||t===`parked`||t===`merging`?e.dataset.merge=t:delete e.dataset.merge}function Bx(e,t,n=null){let r=k(e),i=Qb(t)||`none`;r&&zx(r.card,i),Rf(D(e),i,Qb(n)||null)}function Vx(e,t,n=null){let r=k(e),i=Qb(t)||`none`;r&&zx(r.card,i),Bf(D(e),i,Qb(n)||null)}function Hx(e,t){Vf(D(e),t)}function Ux(e,t){let n=k(e);if(!n)return;let r=Qb(t);n.card.dataset.session=r,n.nameEl.textContent=r}function Wx(e){let t=k(e);t&&(Bc(t),kt(A,vx(t)),O.delete(D(e)),Rt(D(e),void 0),ox?.dropPlanBodyCache(D(e)),t.resizeObserver&&t.resizeObserver.disconnect(),t.abortController&&t.abortController.abort(),Bb(t,D(e)),hy(t),t.term&&t.term.dispose(),t.term=null,t.fitAddon=null,t.card&&t.card.remove(),yx())}function Gx(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 Kx(e,t){let n=k(e);n?nc(n).show(`error`,t):R({source:`Session`,sessionId:typeof e==`string`?e:void 0,message:t})}function qx(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 Jx(e,t){e.term&&(t===x.DONE||t===x.FAILED)&&(e.term.clear(),e.term.reset())}function Yx(e){let t=O.get(e);t&&Tt({state:t.currentState,unseenOutcome:t.unseenOutcome})&&document.visibilityState===`visible`&&(vu()||document.hasFocus())&&E({type:`dismiss`,id:e,expectedState:t.currentState})}function Xx(e,t,n){let r=document.activeElement;return Dl({previousState:t,nextState:n,isPhoneLayout:vu(),isDocumentVisible:document.visibilityState===`visible`,isDocumentFocused:document.hasFocus(),isActiveViewer:e._isActiveViewer?.()===!0,hasFocusInsideTerminal:r instanceof Node&&e.termWrap.contains(r)})}function Zx(){return Fr()&&!Qh()}function Qx(e,t,n,r=``){let i=k(e);if(!i)return;let a=Qb(t),o=i.currentState;kt(A,vx(i)),i.currentState=a,vt(A,vx(i)),Rt(D(e),i),a!==x.RUNNING&&(i.awaitingBackgroundTasks=!1),a!==o&&(i.stateSince=typeof n==`number`&&Number.isFinite(n)?n:Date.now(),Lt(i,a===x.RUNNING)),o===x.DORMANT&&a!==x.DORMANT&&qb(i,D(e)),At({state:a})===`resting`&&Xh(D(e)),i.card.dataset.state=a,i.card.toggleAttribute(`data-monitoring`,Ve(a,i.awaitingBackgroundTasks)),ux(i),(a===x.WAITING&&o!==x.WAITING||a===x.COMPLETE&&o!==x.COMPLETE)&&!nu(r)&&Zx()&&ax(),Xx(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})})}),Zx()&&ax()),(a===x.DONE||a===x.FAILED)&&Gx(i,c,a),a===x.INITIALIZING&&Jx(i,o),yx()}var $x=`(no path)`;function eS(e){if(!e)return $x;let t=String(e).replace(/[/\\]+$/,``),n=Math.max(t.lastIndexOf(`/`),t.lastIndexOf(`\\`));return(n===-1?t:t.slice(n+1))||`(no path)`}function tS(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):$x,a=i.get(r);a||(a={key:r,label:r===`(no path)`?$x:eS(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:eS(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 nS(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 rS({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(Yo)),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 iS(e,t,n){let{header:r,label:i,count:a,addButton:o,forgetButton:s}=e,c=t.key===$x,l=t.rows.length===0;Go(r,`path`,t.key),Go(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`}`),Wo(o,c),Wo(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 aS={waitingCount:0,finishedCount:0,failedCount:0},oS={failed:Fe[x.FAILED],waiting:Fe[x.WAITING],finished:Fe[x.COMPLETE]},sS={failed:`failed`,waiting:`needs you`,finished:`finished`},cS=[`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`],lS=2500,uS=`cubic-bezier(0.16, 1, 0.3, 1)`,dS=`cubic-bezier(0.5, 0, 0.2, 1)`,fS=260,pS=200,mS=200,hS=300,gS=28,_S=360,vS=420,yS=200,bS=3,xS=window.matchMedia?.(`(prefers-reduced-motion: reduce)`),SS=new WeakMap;function CS(e){let t=SS.get(e);if(!t)throw Error(`attention banner was not built by buildAttentionBanner`);return t}function wS(e){return!document.hidden&&typeof e.animate==`function`&&e.getClientRects().length>0}function TS(){return xS?.matches??!1}function ES(e){return e.map(e=>({easing:uS,...e}))}function DS(e,t){let n=w(`div`,`attention-banner`);n.setAttribute(`role`,`status`),n.style.setProperty(`--attention-head-tile-px`,`${Dt.headTile}px`),n.style.setProperty(`--attention-tile-px`,`${Dt.tile}px`),n.style.setProperty(`--attention-tile-gap-px`,`${Dt.tileGap}px`),n.style.setProperty(`--attention-overflow-px`,`${Dt.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),SS.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(()=>kS(n)).observe(r),OS(n,aS,[]),n}function OS(e,t,n){let r=CS(e);r.tiles=n,F(C(e,`.attention-banner-count`),yt(t));let i=n.length>0;e.toggleAttribute(`data-empty`,!i),e.toggleAttribute(`data-jumpable`,i),i&&GS(e,r),kS(e)}function kS(e){let t=CS(e),n=C(e,`.attention-banner-chips`),r=C(n,`.attention-tile-overflow`),i=wS(e),a=t.tiles.slice(0,xt(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():NS(n,l[r])});let u=t.headId,d=[],f=null;a.forEach((i,a)=>{let o=t.tileById.get(i.id),s=o??jS(e,i.id);o||(t.tileById.set(i.id,s),d.push(s)),MS(s,i,a===0),(s.parentElement!==n||AS(s)!==f)&&n.insertBefore(s,r),f=s});let p=t.tiles.length-a.length;Wo(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)&&LS(e,null),i){for(let e of d)PS(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?IS(r,a):a!==0&&FS(r,a,n)})}}function AS(e){let t=e.previousElementSibling;for(;t?.hasAttribute(`data-leaving`);)t=t.previousElementSibling;return t}function jS(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`,()=>LS(e,t)),n.addEventListener(`pointerleave`,()=>LS(e,null)),n}function MS(e,{kind:t,name:n},r){e.dataset.kind=t,e.toggleAttribute(`data-head`,r);let i=`${n}, ${sS[t]}`;e.title=i,e.setAttribute(`aria-label`,i),ls(C(e,`.attention-tile-icon`),oS[t])}function NS(e,t){e.toggleAttribute(`data-leaving`,!0),e.style.left=`${t.left}px`,e.style.top=`${t.top}px`;let n=TS()?[{opacity:1},{opacity:0}]:ES([{transform:`none`,opacity:1},{transform:`scale(0.6)`,opacity:0}]),r=e.animate(n,{duration:mS,fill:`forwards`});r.onfinish=()=>e.remove(),r.oncancel=()=>e.remove()}function PS(e){let t=TS()?[{opacity:0},{opacity:1}]:ES([{transform:`scale(0.6)`,opacity:0},{transform:`none`,opacity:1}]);e.animate(t,{duration:pS})}function FS(e,t,n){TS()||e.animate(ES([{transform:`translateX(${t}px)`},{transform:`none`}]),{duration:hS,delay:n*gS,fill:`backwards`})}function IS(e,t){TS()?e.animate([{opacity:.35},{opacity:1}],{duration:_S,easing:uS}):e.animate(ES([{transform:`translateX(${t}px) scale(0.8)`,filter:`brightness(1.8)`},{transform:`scale(1.1)`,offset:.6},{transform:`none`,filter:`none`}]),{duration:_S})}function LS(e,t){let n=CS(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 RS(e){return!e||e.getClientRects().length===0?null:e.getBoundingClientRect()}function zS(e,t,n){let r=CS(e);if(r.flyingIds.has(t))return;let i=r.tileById.get(t);if(!i||!wS(e)){n();return}LS(e,null),r.flyingIds.add(t);let a=r.hooks.rowFor(t),o=i.getBoundingClientRect(),s=RS(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(BS(o,s),VS(s)),u=()=>{c.remove(),r.flyingIds.delete(t),i.isConnected&&(i.style.visibility=``),n()};l.onfinish=u,l.oncancel=u}function BS(e,t){return!t||TS()?[{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 VS(e){return!e||TS()?{duration:yS,fill:`forwards`}:{duration:vS,easing:dS,fill:`forwards`}}function HS(e){let t=CS(e);e.hasAttribute(`data-empty`)&&WS(e,t);for(let e of t.pressAnimations)e.cancel();if(t.pressAnimations=[],!wS(e))return;let n={duration:fS};if(t.pressAnimations.push(e.animate(ES([{opacity:0},{opacity:.07,offset:.3},{opacity:0}]),{...n,pseudoElement:`::after`})),!TS()){t.pressAnimations.push(e.animate(ES([{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(ES([{transform:`none`},{transform:`translateY(${bS}px)`,offset:.3},{transform:`none`}]),n),r.animate(ES([{transform:`none`},{transform:`translateY(-${bS}px)`,offset:.3},{transform:`none`}]),{...n,pseudoElement:`::after`}))}}function US(e){let t=cS.filter(t=>t!==e);return t[Math.floor(Math.random()*t.length)]??cS[0]}function WS(e,t){let n=US(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(()=>GS(e,t),lS)}function GS(e,t){t.allClearLineTimer!==null&&window.clearTimeout(t.allClearLineTimer),t.allClearLineTimer=null,e.toggleAttribute(`data-all-clear-line`,!1)}var KS=e=>e.ui.path,qS=window.matchMedia?.(`(prefers-reduced-motion: reduce)`),JS=null,J=null,YS=null,XS=null,ZS=null,QS=null,$S=null,Y=!1,eC=!1,tC=new Map,X=new Map,nC=new Map,rC=new Map,Z=null,iC=``,aC=[],oC=new Set;function sC(){return nS(lC(vC()),oC)}function cC(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 lC(e){return tS(e,KS,wl(e,KS))}function uC(e){let t=rC.get(e.key),n=nC.get(e.key);return(!t||!n)&&(t=rS({onAdd:Jl,onForget:e=>{Tl(e),TC()}}),n=w(`div`,`focus-rail-list`),n.setAttribute(`role`,`listbox`),rC.set(e.key,t),nC.set(e.key,n)),iS(t,e,`rail`),I(n,`aria-label`,`${e.label} sessions`),{header:t.header,list:n}}function dC(){return Y}function fC(){return j.snapshot().focusedSessionId}function pC({rail:e,center:t,resizer:n}){if(JS=e,YS=t,!JS||!YS)return;let r=JS,i=YS;gC(n),r.removeAttribute(`role`),r.removeAttribute(`aria-label`),r.setAttribute(`aria-keyshortcuts`,xr(ud)),J=DS({onJump:kC,rowFor:e=>X.get(e)},gd());let a=w(`details`,`rail-status-key`);a.append(w(`summary`,`rail-status-key-summary`,`Status key`),yl()),r.append(J,a),ZS=w(`div`,`focus-empty`),ZS.innerHTML=`<p class="focus-empty-title"></p><p class="focus-empty-desc"></p>`,QS=ZS.querySelector(`.focus-empty-title`),$S=ZS.querySelector(`.focus-empty-desc`),XS=w(`div`,`focus-card-slot`),i.append(ZS,XS),r.addEventListener(`keydown`,_C)}var mC={minPx:180,maxPx:480},hC=16;function gC(e){e&&JS&&Fo({resizer:e,column:JS,widthHost:JS,widthProperty:`--rail-width`,bounds:mC,keyStepPx:hC,getStoredWidth:$r,setStoredWidth:ei})}function _C(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(),eu(n);return}if(e.key!==`ArrowDown`&&e.key!==`ArrowUp`||e.altKey||e.metaKey||e.ctrlKey||e.shiftKey)return;let t=gt(sC(),Z,e.key===`ArrowDown`?1:-1);t!=null&&(e.preventDefault(),cC(t),X.get(t)?.focus())}function vC(){return St(Bl(yC))}function yC(e){return e.nameEl?e.nameEl.textContent:e.card&&(e.card.dataset.session||e.card.dataset.id)||``}function bC(e){let{row:t,refs:n}=al(`button`);t.type=`button`,t.dataset.id=e,t.setAttribute(`role`,`option`),t.addEventListener(`click`,()=>xC(e)),t.addEventListener(`pointerenter`,()=>{J&&LS(J,e)}),t.addEventListener(`pointerleave`,()=>{J&&LS(J,null)});let{item:r,removeButton:i}=ol(t,()=>eu(e));return r.setAttribute(`role`,`presentation`),i.tabIndex=-1,Object.assign(t,{_refs:n,_row:r})}function xC(e){let t=Ll(e);t&&(FC(e),jC(t,e))}function SC(e,{id:t,ui:n,state:r,name:i},a){let o=tC.get(t)||`none`;pl(e,e._refs,{ui:n,state:r,name:i??``,mergeStatus:o===`none`?``:o,attentionPosition:a}),e.classList.toggle(`focused`,t===fC()),e.classList.toggle(`has-unopened-shown`,Ea(t));let s=t===Z;I(e,`aria-selected`,String(s)),I(e,`tabindex`,s?`0`:`-1`)}function CC(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||``:Ht(r._refs?.glyph))}It(CC),Ut((e,t)=>{if(!Y)return;let n=X.get(e);n&&F(n._refs.elapsed,Vt(t))});var wC=new Map;function TC(e){if(!Y)return;let t=JS;if(!t)return;let n=vC(),r=lC(n),i=new Set,a=Ct(n,fC()),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=bC(t),X.set(t,r));let s=o.get(t)??null;(!e||a||e.has(t)||wC.get(t)!==s)&&SC(r,n,s),wC.set(t,s)}a||Uo(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===iC;iC=l;for(let e of r.groups){let{header:n,list:r}=uC(e);u||t.append(n,r),s(e.rows,r)}for(let[e,t]of[...rC])c.has(e)||(t.header.remove(),nC.get(e)?.remove(),rC.delete(e),nC.delete(e));for(let[e,t]of X)i.has(e)||(t._row.remove(),X.delete(e),wC.delete(e),e===Z&&(Z=null));for(let e of[...tC.keys()])O.has(e)||tC.delete(e);let d=aC;aC=nS(r,oC);let f=fC();if(f&&!O.has(f)){j.dispatch(`focusSession`,null),Z=null;let e=EC(d,f);if(e){let t=!document.activeElement||document.activeElement===document.body;FC(e),t&&jC(O.get(e),e);return}}IC();let p=fC();if(p){let e=O.get(p);e&&e.card.parentElement!==XS&&NC(e,p)}OC(n,a)}function EC(e,t){let n=e.filter(e=>e===t||O.has(e));if(n.length<2)return aC.find(e=>O.has(e))??null;let r=n.indexOf(t)===n.length-1;return gt(n,t,r?-1:1)}function DC(){return Ct(vC(),fC())}function OC(e,t){J&&OS(J,Ot(e),t)}function kC(){if(!Y)return;J&&HS(J);let e=DC()[0]?.id;e&&AC(e)}function AC(e){if(!Y)return;X.get(e)?.scrollIntoView({block:`nearest`}),J&&zS(J,e,()=>MC(e));let t=O.get(e);Ll(e),FC(e),jC(t,e)}function jC(e,t){e&&requestAnimationFrame(()=>requestAnimationFrame(()=>{Y&&fC()===t&&e.term?.focus()}))}function MC(e){if(qS?.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 NC(e,t){XS&&(cn(e,t,XS,{className:`focus-centered`}),Zb(e,t,!0))}function PC(){let e=fC();e&&(sn()===e&&ln(),j.dispatch(`focusSession`,null))}function FC(e){Y&&O.has(e)&&(Yx(e),Rl(e),e!==fC()&&(PC(),j.dispatch(`focusSession`,e),Z=e,TC()))}function IC(){if(!ZS||!QS||!$S)return;let e=fC(),t=!!(e&&O.has(e)),n=O.size>0;Wo(ZS,t),ra(ZS,!n),Wo(QS,!n),Wo($S,!n),!t&&n&&(F(QS,`No session selected`),F($S,`Select a session from the rail on the left to focus it here.`))}function LC(e,t){tC.set(D(e),typeof t==`string`&&t?t:`none`),Y&&TC()}function RC(e){Y&&O.has(e)&&FC(e)}function zC(e){return!Y||!O.has(e)?!1:(FC(e),Cx(e))}function BC(e){if(!Y)return;let t=sC()[e-1];t&&xC(t)}function VC(e){if(!Y)return;let t=gt(sC(),Z,e);t!=null&&(xC(t),X.get(t)?.scrollIntoView({block:`nearest`}))}window.addEventListener(`focus`,()=>{let e=fC();Y&&e&&Yx(e)});function HC(){JS&&(Y=!0,PC(),Z=null,TC(),eC&&DC().length>0?kC():(eC&&J&&HS(J),WC()))}function UC(e){eC=!0;try{e()}finally{eC=!1}}function WC(){if(!Y||fC())return;let e=zl();e&&FC(e)}function GC(){Y&&=(PC(),Z=null,!1)}var KC=`t-[0-9a-f]{8}`,qC=`No intent yet. The visions proposes one after its first pass.`,JC=`Unowned`,YC=RegExp(`^${KC}$`);function XC(){return{byProject:{},unowned:[]}}function ZC(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`&&YC.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 QC(e){if(Array.isArray(e))return e.map(ZC).filter(e=>e!==null);let t=ZC(e);return t?[t]:[]}function $C(e){let t=e?.intent;if(!t||typeof t!=`object`)return XC();let n=t;if(!(Object.hasOwn(n,`byProject`)||Object.hasOwn(n,`unowned`)||Object.hasOwn(n,`global`)))return{byProject:{},unowned:QC(n)};let r=n.byProject&&typeof n.byProject==`object`?n.byProject:{},i=[];for(let[e,t]of Object.entries(r)){let n=QC(t);n.length!==0&&e&&i.push([e,n])}return{byProject:Object.fromEntries(i),unowned:QC(Object.hasOwn(n,`unowned`)?n.unowned:n.global)}}function ew(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 tw(e,t){let n=e||XC(),r=t?.intent;if(!r||typeof r!=`object`)return n;let i=r,a=ew(Array.isArray(i.threads)?QC(i.threads):QC(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 nw(e,t=null){let n=t&&typeof t.get==`function`?t.get(e):null;return typeof n==`string`&&n?n:e}function rw(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:sw(e,r)}))}function iw(e,t=null,n=Date.now()){let r=e||XC(),i=Object.entries(r.byProject||{}).filter(([e,t])=>e&&Array.isArray(t)&&t.length>0).map(([e,n])=>({projectId:e,label:nw(e,t),threads:n})).sort((e,t)=>e.label.localeCompare(t.label)).flatMap(({projectId:e,label:t,threads:r})=>rw(r,{key:e,label:t,now:n})),a=rw(Array.isArray(r.unowned)?r.unowned:[],{key:`unowned`,label:JC,now:n});return i.length+a.length>0?[...a,...i]:[{key:`unowned`,label:JC,text:qC,hasText:!1,active:!1,meta:``}]}function aw(e){return e?.text?`proposed by visions`:``}function ow(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 sw(e,t=Date.now()){let n=aw(e);if(!n)return``;let r=typeof e?.id==`string`&&e.id?`thread ${e.id}, `:``,i=ow(e?.ts,t);return i?`${r}${n}, ${i}`:`${r}${n}`}function cw(e){let t=Number(e?.range?.start?.line);return!Number.isFinite(t)||t<0?`L?`:`L${Math.floor(t)+1}`}function lw(e){return(typeof e?.hand==`string`?e.hand.trim():``)||null}function uw(e,t){let n=new Map(e),r=typeof t?.uri==`string`?t.uri:``;if(!r)return n;let i=lw(t);return i?(n.set(r,i),n):(n.delete(r),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=typeof e?.hand==`string`?e.hand.trim():``;n&&r&&t.set(n,r)}return t}var fw=`hand`,pw=`unseen`,mw=`
|
|
78
|
-
`;function hw(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 gw(e,t){return hw(JSON.stringify([e,...t]))}function _w(e,t){return gw(`finding`,[e,cw(t),String(t.code??``),String(t.message??``)])}function vw(e,t){return gw(`comment`,[e,Cw(t),String(t.message??``)])}function yw(e){return gw(`fix`,[e.uri,jw(e),e.code,e.message,Mw(e)])}function bw(e){return gw(`intent`,[e.key,e.text,e.active])}function xw(e,t,n,r=[],i=null){let a=[...n].map(([e,t])=>gw(`hand`,[e,t])).sort(),o=new Set;for(let r of[...e.keys(),...t.keys(),...n.keys()])o.add(gw(`document`,[r]));for(let[t,n]of e)for(let e of n)o.add(_w(t,e));for(let[e,n]of t)for(let t of n)o.add(vw(e,t));for(let e of r)o.add(yw(e));for(let e of iw(i,null,0))e.hasText&&o.add(bw(e));let s=[...o].sort();return{signature:[...a,...s].join(mw),handEntries:a,contentEntries:s}}function Sw(e,t){let n=new Set(t.split(mw));return e.handEntries.some(e=>!n.has(e))?fw:e.contentEntries.some(e=>!n.has(e))?pw:null}function Cw(e){let t=Number(e?.line);return!Number.isFinite(t)||t<1?`L?`:`L${Math.floor(t)}`}function ww(e){return Array.isArray(e?.diagnostics)?e.diagnostics:[]}function Tw(e,t){let n=new Map(e),r=typeof t?.uri==`string`?t.uri:``;if(!r)return n;let i=ww(t);return i.length===0?(n.delete(r),n):(n.set(r,i),n)}function Ew(e){return Array.isArray(e?.comments)?e.comments:[]}function Dw(e,t){let n=new Map(e),r=typeof t?.uri==`string`?t.uri:``;if(!r)return n;let i=Ew(t);return i.length===0?(n.delete(r),n):(n.set(r,i),n)}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?.diagnostics)?e.diagnostics:[];n&&r.length!==0&&t.set(n,r)}return t}function kw(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 Aw=20;function jw(e){let t=Number(e?.line);return!Number.isFinite(t)||t<0?`L?`:`L${Math.floor(t)+1}`}function Mw(e){return e?.applied===!0?`applied`:`refused`}function Nw(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 Pw(e){let t=typeof e?.uri==`string`?e.uri:``,n=Number(e?.ts);return Nw(e?.fix,{uri:t,ts:Number.isFinite(n)?n:0})}function Fw(e,t,{max:n=Aw}={}){let r=Pw(t);return r?[r,...e].slice(0,Math.max(0,Math.floor(n))):[...e]}function Iw(e,{max:t=Aw}={}){let n=Array.isArray(e?.fixes)?e.fixes:[],r=[];for(let e of n){let t=Nw(e);t&&r.push(t)}return r.slice(0,Math.max(0,Math.floor(t)))}var Lw=100;function Rw(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 zw(e){let t=Array.isArray(e?.events)?e.events:[],n=[];for(let e of t){let t=Rw(e);t&&n.push(t)}return n}function Bw(e){let t=Number(e?.overflow);return!Number.isFinite(t)||t<=0?0:Math.floor(t)}function Vw(e,t){return[...e].sort((e,t)=>t.seq-e.seq).slice(0,Math.max(0,Math.floor(t)))}function Hw(e,t,{max:n=Lw}={}){let r=zw(t);if(r.length===0)return Vw(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 Vw([...i.values()],n)}function Uw(e,{max:t=Lw}={}){return Vw(zw(e),t)}var Ww=new Map,Gw=new Map,Kw=new Map,qw=XC(),Jw=new Map,Yw=null,Xw=!0,Zw=[],Qw=0,$w=[],eT=null,tT=()=>!1,nT=new Set,rT=xw(Ww,Gw,Kw,$w,qw),iT=Ci(),aT=u({getAck:()=>iT,setAck:e=>{iT=e,wi(e)},signature:()=>rT.signature,isLooking:()=>tT()});function oT(e){for(let t of nT)t(e)}function sT(){rT=xw(Ww,Gw,Kw,$w,qw),rT.signature!==``&&aT.refresh(),eT?.(Sw(rT,iT))}function cT(e){oT(e),sT()}function lT(){return{findingsByUri:Ww,commentsByUri:Gw,handsByUri:Kw,intent:qw,projectNamesById:Jw,isEnabled:Yw,isConnected:Xw,activityEvents:Zw,activityOverflow:Qw,fixEntries:$w}}function uT(e){nT.add(e)}function dT(e){tT=e,sT()}function fT(e){eT=e,sT()}function pT(){rT.signature!==``&&aT.acknowledge(),sT()}function mT(e){Jw=e instanceof Map?e:new Map,oT([`intent`])}function hT(e){Yw=e?.visions?.enabled===!0,oT([`feed`])}function gT(e){Xw=e,oT([`connection`])}function _T(e){$w=Fw($w,e),cT([`fixes`])}function vT(e){Ww=Tw(Ww,e),cT([`feed`])}function yT(e){Gw=Dw(Gw,e),cT([`feed`])}function bT(e){Kw=uw(Kw,e),cT([`feed`])}function xT(e){qw=tw(qw,e),cT([`intent`])}function ST(e){Zw=Hw(Zw,e),Qw=Bw(e),cT([`activity`])}function CT(e){Zw=Uw(e),Qw=0,cT([`activity`])}function wT(e){Ww=Ow(e),Gw=kw(e),Kw=dw(e),qw=$C(e),$w=Iw(e),cT([`intent`,`feed`,`fixes`])}var TT=null,ET=null,DT=!1,OT=null,kT=new Set;function AT(e,t){if(!e||typeof e!=`object`)return!1;let n=e.requestId;return typeof n!=`string`||!t||n===t}function jT(){for(let e of kT)e()}function MT(){return{report:TT,hasReportSendFailed:DT}}function NT(e){kT.add(e)}function PT(e){ET=e}function FT(){if(!ET)return;OT=lt(`hooks-report`);let e=ET({type:`request-hooks-report`,requestId:OT});e!==!DT&&(DT=!e,jT())}function IT(e){AT(e,OT)&&(TT=e,DT=!1,jT())}function LT(){FT()}function RT(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 zT=null,BT=null,VT={},HT=null,UT=null,WT=null,GT=new Map,KT=new Map;function qT(){return BT??=P(()=>import(`./phone-shell-3_2K29Wa.js`).then(e=>{e.mountPhoneShell(VT),WT&&e.orderPhonePanels(WT);for(let[t,n]of GT)e.setPhoneScreenAvailable(t,n);for(let[t,n]of KT)e.setPhoneScreenAttention(t,n);return zT=e,e},e=>(BT=null,T(`phone-shell`,`phone shell failed to load: ${Ye(e)}`),null)),__vite__mapDeps([19,3,4,1,13,12])),BT}function JT(e){VT=e}async function YT(e){let t={options:e};HT=t;let n=await qT();if(HT!==t)return!1;if(!n)return HT=null,UT=null,!1;HT=null,n.activatePhoneShell(t.options);let r=UT;return UT=null,r?.(n),!0}function XT(){HT=null,UT=null,zT?.deactivatePhoneShell()}function ZT(){return HT!==null||(zT?.isPhoneShellActive()??!1)}function QT(){return HT?HT.options?.sessionId??null:zT?.getPhoneSessionId()??null}function $T(e){WT=e,zT?.orderPhonePanels(e)}function eE(e,t){GT.set(e,t),zT?.setPhoneScreenAvailable(e,t)}function tE(e,t){KT.set(e,t),zT?.setPhoneScreenAttention(e,t)}function nE(){zT?.refreshPhoneBoard()}function rE(){zT?.syncPhoneHistory()}function iE(e){return HT?(UT=t=>{e(t)},!0):zT?e(zT):!1}function aE(e){return iE(t=>t.showPhonePlan(e))}function oE(e){return iE(t=>t.showPhoneSession(e))}function sE(e){return iE(t=>t.showPhoneScreen(e))}var cE={MERGE:`a merge commit`,SQUASH:`squash and merge`,REBASE:`rebase and merge`},lE=new Set([`FAILURE`,`ERROR`]);function uE(e){return cE[e]}function dE(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&&lE.has(e.checks.state)?`Checks are failing`:e.stage===`ready`?null:`Not ready to merge yet`:`Closed`}function fE(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 pE(e){let t=de.parse({...e,key:`${e.repo}#${e.number}`,stage:`unknown`});return{...t,stage:fE(t)}}var mE=[`Needs you`,`Waiting`,`Ready to merge`,`Drafts`,`Merged today`],hE=[`Ready to merge`,`Needs you`,`Waiting`,`Drafts`,`Merged today`],gE={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`},_E={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`},vE={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`},yE={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 bE(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 xE(e){return mE[e.rows.reduce((e,{pr:t})=>Math.min(e,mE.indexOf(gE[t.stage])),mE.length-1)]}function SE(e){let t=new Map(mE.map(e=>[e,{title:e,prs:[],rows:[]}]));for(let n of bE(e)){let e=t.get(xE(n));if(e)for(let t of n.rows)e.rows.push(t),e.prs.push(t.pr)}return hE.flatMap(e=>t.get(e)??[])}function CE(e){return _E[e]}function wE(e){return vE[e]}function TE(e){return yE[e]}function EE(e,t){return e.flatMap(e=>{let n=t(e.key);if(!n)return[];let r=e.key.slice(0,e.key.lastIndexOf(`#`));return[{...pE({...n,repo:r}),...e}]})}function DE(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 OE(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 kE=3;function AE(e){if(e.length===1)return{message:`Merged ${e[0].key}`,detailLines:[e[0].title]};let t=e.slice(0,kE).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 jE(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:pE(n).stage}:e};return{...e,drafts:e.drafts.map(n),inFlight:e.inFlight.map(n),queued:e.queued.map(n)}}function ME(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 NE(e){let t=e.viewerThreads;return t!==void 0&&t.total>0&&t.resolved===t.total}function PE(e){return e.status===`posted`&&FE(e)}function FE(e){if(!NE(e)||s(e))return!1;let t=RE(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 IE(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[ME(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(zE(r).length>0||PE(r)){n.actionable.push(r);continue}let e=(r.status===`ready`||r.status===`stale`||r.status===`error`)&&!BE(r);e&&t.noReviewNeeded.push(r),r.status===`ready`&&!e&&n[ME(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 LE(e,t){return e.commit===t?e.isViewer||c.has(e.state):!1}function RE(e){return e.liveHead??e.reviewedHead}function zE(e){return(e.threads??[]).filter(e=>!e.isNit&&!e.isResolved)}function BE(e){return zE(e).length>0?!0:s(e)?!1:FE(e)?!0:!(e.githubReviews??[]).some(t=>LE(t,RE(e)))}function VE(e,t){return`${e}#${t}`}var HE=null,UE=null,WE=new Set;function GE(e){for(let t of WE)t(e)}function KE(){UE=jE(HE,qt),GE({kind:`status`})}function qE(e){WE.add(e)}function JE(){return UE}function YE(){return IE(UE)}function XE(e){let t=d.safeParse(e);t.success?(HE=t.data,KE()):T(`reviews`,`dropped team-review-status: ${Je(t.error.issues)}`)}function ZE(e){GE({kind:`action-result`,message:e})}function QE(e){GE({kind:`open-session-result`,message:e})}function $E(e){GE({kind:`connection`,isConnected:e})}Jt(KE);var eD=20,tD=[],nD=null,rD=!1,iD=0,aD=null;function oD(){return aD??=P(()=>import(`./celebration-player-BnNh_F3x.js`),__vite__mapDeps([20,1,21])).catch(e=>(aD=null,T(`merge-celebration`,`celebration player failed to load: ${Ye(e)}`),null)),aD}function sD(e){return rD?`playing`:e?`queued`:`empty`}function cD(){if(!nD)return;let e=tD.length>0;nD.tray.dataset.state=sD(e),nD.count.textContent=e?String(tD.length):``,nD.button.disabled=rD||!e}function lD(){let e=tD.shift();if(rD=e!==void 0,cD(),!e)return;let t=iD;iD+=1,oD().then(n=>{n?(n.playCelebration(e,t),window.setTimeout(lD,n.CELEBRATION_DURATION_MS)):(tD.unshift(e),rD=!1,cD())})}function uD(e,t,n){nD={tray:e,button:t,count:n},t.addEventListener(`click`,()=>{iD=0,lD()}),cD()}function dD(e){tD.push(e),tD.length>eD&&tD.shift(),cD()}var fD=null,pD=null,mD=new Set,hD=new Map,gD=!1,_D=new Set;function vD(e){for(let t of _D)t(e)}function yD(){return[...hD].flatMap(([e,t])=>{let n=O.get(e);return!n||t.length===0?[]:[{id:e,title:_t(n)||e,links:t}]})}function bD(){let e=EE(fD?.prs??[],qt),t=OE(pD,e);pD=e,wD(t),vD({kind:`prs`})}function xD(){gD||(gD=!0,queueMicrotask(()=>{gD=!1,bD()}))}function SD(e){_D.add(e)}function CD(){return{prs:EE(fD?.prs??[],qt),status:fD,sessionsByPrKey:DE(yD())}}function wD(e){let t=e.filter(e=>!mD.has(e.key));if(t.length!==0){for(let e of t)mD.add(e.key);dD(AE(t))}}function TD(e){hD=e,xD()}function ED(){vD({kind:`session-state`})}function DD(e){let t=p.safeParse(e);t.success?(fD=t.data,bD()):T(`reviews`,`dropped my-prs-status: ${Je(t.error.issues)}`)}function OD(e){vD({kind:`merge-result`,message:e})}function kD(e){vD({kind:`connection`,isConnected:e})}Jt(xD);var AD=[{id:`all`,label:`All`},{id:`reviewing`,label:`Reviewing`},{id:`mine`,label:`Mine`}],jD={turn:`Your turn`,working:`Agent working`,waiting:`Waiting on others`,aside:`Set aside`},MD=[`turn`,`working`,`waiting`,`aside`],ND={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`},PD={directAsk:0,followUp:1,mineNeedsYou:2,teamReady:3,mineReady:4,failedReview:5,staleReview:6};function FD(e,t){return{source:`team`,key:`team:${e.key}`,prKey:fe(e),kind:t,review:e}}function ID(e){return e.status===`ready`?ME(e).band===`blocking-others`?PD.directAsk:PD.teamReady:PD.followUp}function LD(e){return[...e.ready.map(e=>({item:FD(e,`ready`),group:`turn`,turnRank:ID(e)})),...e.attention.map(e=>({item:FD(e,`attention`),group:`turn`,turnRank:e.status===`error`?PD.failedReview:PD.staleReview})),...e.inReview.map(e=>({item:FD(e,`inReview`),group:`working`,turnRank:0})),...e.queued.map(e=>({item:FD(e,`queued`),group:`working`,turnRank:0})),...e.noReviewNeeded.map(e=>({item:FD(e,`settled`),group:`waiting`,turnRank:0})),...e.posted.map(e=>({item:FD(e,`posted`),group:`waiting`,turnRank:0})),...e.discarded.map(e=>({item:FD(e,`discarded`),group:`aside`,turnRank:0}))]}function RD(e,t){let n=ND[e.stage];return n===`turn`&&e.stage!==`ready`&&t.has(fe(e))?`working`:n}function zD(e,t){return SE(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:RD(e,t),turnRank:e.stage===`ready`?PD.mineReady:PD.mineNeedsYou}))}function BD(e,t,n){let r=[...LD(e),...zD(t,n)];return MD.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:jD[e],items:n.map(e=>e.item)}})}function VD(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 HD(e){return e.find(e=>e.id===`turn`)?.items??[]}function UD(e,t){return t?e.flatMap(e=>e.items).find(e=>e.key===t)??null:null}function WD(e,t){return UD(e,t)?t:e.flatMap(e=>e.items)[0]?.key??null}function GD(e){return e.source===`mine`?VE(e.pr.repo,e.pr.number):VE(e.review.repo,e.review.number)}function KD(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 qD(e){return HD(e).map(e=>({id:e.key,kind:KD(e),name:GD(e)}))}function JD(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 YD(e,t){return qD(e).filter(e=>e.id!==t)}function XD({capturedOrder:e,actedKey:t,groups:n}){let r=HD(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 ZD(e,t){let n=HD(e).map(e=>e.key),r=t?n.indexOf(t):-1;return r===-1?``:`${r+1} of ${n.length} in Your turn`}function QD(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 $D(e){return HD(e).map(QD)}function eO({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 tO(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 nO(e){return new Set(e.flatMap(e=>e.items).map(e=>(e.source===`mine`?e.pr.repo:e.review.repo).toLowerCase())).size>1}function rO(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 iO=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 aO(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`:iO.get(e.key)??null}function oO(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 sO=[],cO=null,lO=null,uO=null,dO=!1,fO=null,pO=_i(),mO=yi(),hO=new Set(mO.split(`|`).filter(Boolean)),gO=new Set,_O=new Set;function vO(e){for(let t of _O)t(e)}function yO(e){e!==pO&&(pO=e,vi(e))}function bO(e){e!==mO&&(mO=e,hO=new Set(e.split(`|`).filter(Boolean)),bi(e))}function xO(){return JE()!==null&&CD().status!==null}function SO(){if(!xO())return;let e=eO({turnEntries:$D(sO),acknowledged:pO,unseen:mO,isLooking:lO?.isLooking()??!1});yO(e.acknowledged),bO(e.unseen),fO?.(e.isShown)}function CO(e){uO=e,vO({kind:`reveal`})}function wO(e){_O.add(e)}function TO(e){lO=e,SO()}function EO(){let{prs:e,sessionsByPrKey:t}=CD();return sO=BD(YE(),e,new Set(t.keys())),SO(),sO}function DO(){xO()&&(yO(_e($D(sO))),SO())}function OO(e){fO=e,SO()}function kO(){return mO}function AO(e){return hO.has(e)}function jO(e){return hO.has(e)?(bO(_e([...hO].filter(t=>t!==e))),!0):!1}function MO(e){cO=e}function NO(){return cO}function PO(){let e=uO;return uO=null,e}function FO(e){if(e!==dO){dO=e;for(let e of gO)e()}}function IO(e){gO.add(e)}function LO(){return document.documentElement.dataset.layout===`phone`&&dO}function RO(){LO()&&vO({kind:`return-to-queue`})}function zO(){let e=YD(sO,lO?.selectedKey()??null)[0]?.id??null;return e?(CO(e),!0):!1}function BO(e){let t=sO.flatMap(e=>e.items).find(t=>t.prKey===e.toLowerCase());return!t||!cO?.openReviews()?!1:(CO(t.key),DO(),!0)}qE(e=>{e.kind===`status`&&EO()}),SD(e=>{e.kind===`prs`&&EO()});var VO={OPEN:0,MERGED:1,CLOSED:2};function HO(e){return e?VO[e.state]:VO.OPEN}function UO(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:Ha(void 0)};let i=wE(t.stage);return{key:n,text:r,url:t.url,hoverText:`${e.repo}: ${t.title} (${CE(t.stage)})`,look:{icon:TE(t.stage),tone:i},tier:Ha(i)}}function WO(e,t){let n=e.map(e=>{let n=t(fe(e));return{link:e,pr:n?pE(n):void 0}});return n.sort((e,t)=>HO(e.pr)-HO(t.pr)||t.link.linkedAt-e.link.linkedAt),n.map(({link:e,pr:t})=>UO(e,t))}var GO=new Map;function KO(e){return document.querySelectorAll(`[data-pr-chips-for="${CSS.escape(e)}"]`)}function qO(e){return WO(GO.get(e)??[],qt).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:()=>{BO(e.key)||bo(e.url)}}))}function JO(e,t){let n=Kc(e,e),r=w(`button`,`session-pr-chip-unlink`);r.append(L(Yo)),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(),jt({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:()=>{Vl(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 YO(e,t){e.dataset.prChipsFor=t,Zc(e,qO(t),e=>JO(e,t))}function XO(e){for(let t of e){let e=t.dataset.prChipsFor;e&&YO(t,e)}il()}function ZO(e,t){let n=h.shape.links.safeParse(t??[]);GO.set(e,n.success?n.data:[]),XO(KO(e)),TD(GO)}function QO(e){GO.delete(e),TD(GO)}Jt(()=>XO(document.querySelectorAll(`[data-pr-chips-for]`)));var $O=null,ek=new Set;function tk(){$O?.setAttribute(`aria-pressed`,String(!Fr()))}function nk(e){Ir(e),tk();for(let t of ek)t(e)}function rk(e){ek.add(e)}function ik(e){$O=e,tk(),e.addEventListener(`click`,()=>nk(!Fr()))}var ak={mine:`Mining merged pull requests.`,run:`Starting the run.`,cancel:`Cancelling the run.`},ok=null,sk=null,ck=!0,lk=new Map,uk=new Map,dk=new Set;function fk(){for(let e of dk)e()}function pk(e){dk.add(e)}function mk(){return{status:ok,isServerConnected:ck,pendingActionBySuite:lk,outcomeBySuite:uk}}function hk(e){sk=e}function gk(e,t){sk?.({type:`benchmark-action`,requestId:lt(`benchmark`),suiteId:e,action:t})===!0?(lk.set(e,t),uk.set(e,ak[t]),fk()):(uk.set(e,b),fk())}function _k(e){if(ck=e,!e){for(let e of lk.keys())uk.delete(e);lk.clear()}fk()}function vk(e){ok=e,fk()}function yk(e){lk.delete(e.suiteId);let t=ok?.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.`};uk.set(e.suiteId,e.ok?n[e.action]:e.error||`The server refused the action.`),fk()}var bk=45e3,xk=`The server did not answer within ${bk/1e3} s.`,Sk=`Select the issue to load its description.`,Ck=null,wk=null,Tk=new Map,Ek=null,Dk=new Map,Ok=new Map,kk=new Map,Ak=new Map,jk=new Map,Mk=new Set;function Nk(e){for(let t of Mk)t(e)}function Pk(e){return`${e.key}:${e.updatedAt}`}function Fk(e){let t=Dk.get(e);t&&(Dk.delete(e),Ok.set(t.issueKey,{text:xk,tone:`error`}),Nk(`detail`))}function Ik(e){let t=Dk.get(e);return t?(clearTimeout(t.timeoutHandle),Dk.delete(e),t):null}function Lk(){return{latestStatus:wk,issueByKey:Tk,selectedKey:Ck}}function Rk(e){Mk.add(e)}function zk(e){Ck=e}function Bk(e){return[...Dk.values()].some(t=>t.issueKey===e.key)}function Vk(e){return Ok.get(e.key)}function Hk(e){let t=Pk(e),n=Ak.get(t);return n===``?`No description.`:n??jk.get(t)??`Loading description.`}function Uk(e){let t=Pk(e);if(Ak.has(t)||[...kk.values()].some(e=>e.cacheKey===t))return;let n=lt(`issue-detail`);jk.delete(t),Ek?.({type:`issue-detail`,requestId:n,repo:e.repo,issueNumber:e.number})?kk.set(n,{cacheKey:t,timeoutHandle:setTimeout(()=>{kk.delete(n),jk.set(t,`${xk} ${Sk}`),Nk(`detail`)},bk)}):jk.set(t,`${b} ${Sk}`)}function Wk(e){let t=e.projectId;if(!t||Bk(e))return;let n=lt(`open-issue-session`);Ek?.({type:`open-issue-session`,requestId:n,projectId:t,repo:e.repo,issueNumber:e.number})?(Dk.set(n,{issueKey:e.key,issueNumber:e.number,timeoutHandle:setTimeout(()=>Fk(n),bk)}),Ok.set(e.key,{text:`Opening session.`,tone:`busy`}),Nk(`detail`)):(Ok.set(e.key,{text:b,tone:`error`}),Nk(`detail`))}function Gk(e){Ek?.({type:`dashboard-telemetry`,event:`operator_action`,properties:{surface:`issues`,action:e}})}function Kk(e){Ek=e}function qk(){Nk(`session-state`)}function Jk(e){if(!e){for(let e of Dk.values())clearTimeout(e.timeoutHandle),Ok.set(e.issueKey,{text:b,tone:`error`});Dk.clear();for(let e of kk.values())clearTimeout(e.timeoutHandle),jk.set(e.cacheKey,`${b} ${Sk}`);kk.clear(),Nk(`status`)}}function Yk(e){let t=wk?.issues.find(e=>e.key===Ck);wk=e,Tk=new Map(e.issues.map(e=>[e.key,e]));let n=e.issues.find(e=>e.key===Ck);n&&n.updatedAt!==t?.updatedAt&&Uk(n),Nk(`status`)}function Xk(e){let t=kk.get(e.requestId);t&&(clearTimeout(t.timeoutHandle),kk.delete(e.requestId),e.ok&&e.body!==null&&Ak.set(t.cacheKey,e.body),(!e.ok||e.body===null)&&jk.set(t.cacheKey,e.error||`Could not load description. Select the issue to try again.`),Nk(`detail`))}function Zk(e){if(typeof e.requestId!=`string`)return;let t=Ik(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`;Ok.set(n,{text:`Session "${r}" ${a}.${i}`,tone:`ok`});let o=wk?.issues.find(e=>e.key===n);o&&typeof e.sessionId==`string`&&(o.sessionId=e.sessionId),Nk(`status`);return}let r=typeof e.error==`string`&&e.error?e.error:`Could not open session.`;Ok.set(n,{text:r,tone:`error`}),Nk(`detail`)}var Qk=null,$k=null,eA=null,tA=()=>!1,nA=new Set,rA=new Set,iA=u({getAck:hi,setAck:gi,signature:()=>f({posthog:Qk}),isLooking:()=>tA()});function aA(e){for(let t of rA)t(e)}function oA(){$k?.(iA.refresh())}function sA(){return{latest:Qk,archivedLocally:nA,traceOpener:eA}}function cA(e){rA.add(e)}function lA(e){tA=e,oA()}function uA(e){nA.add(e)}function dA(){iA.acknowledge(),oA()}function fA(e){$k=e,oA()}function pA(e){eA=e}function mA(e){Qk=e,l(Qk,nA),aA({kind:`status`}),oA()}function hA(e){let t=Ce(Qk,e.projectId,e.issueId)?.inFlight===!0;se(Qk,e)&&aA({kind:`investigation-activity`,projectId:e.projectId,issueId:e.issueId,wasInFlight:t})}function gA(e){let t=re(Qk,e);aA({kind:`investigation-finished`,frame:e,isPatched:t}),t&&oA()}var _A=Ra({requestPrefix:`session-setup`,dialogClass:`dialog coherence-journal-drawer session-setup-dialog`,titleText:`Session setup`,unavailableLabel:`Session setup unavailable`,timeoutMs:15e3});function vA(e){let t=w(`ul`,`session-setup-list`);return t.append(...e.map(e=>w(`li`,null,e))),t}function yA(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`),vA(e.skills)),e.agents.length>0&&t.append(w(`p`,`session-setup-label`,`Agents`),vA(e.agents)),t})),n(`MCP servers`,t.mcpServers.length>0?[vA(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?[vA(t.skills)]:[]),n(`Agents`,t.agents.length>0?[vA(t.agents)]:[])}function bA(e){let t=w(`p`,`coherence-journal-status`,`Loading session setup`);t.setAttribute(`role`,`status`);let n=w(`div`,`session-setup-sections`);_A.open({sessionId:e,status:t,body:[t,n],parts:{sections:n},buildRequest:t=>({type:`session-setup`,id:e,requestId:t})})}function xA(e){let t=_A.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;yA(n,e.setup),t.status.textContent=n.childElementCount>0?``:`No session setup recorded yet`,t.status.hidden=n.childElementCount>0}function SA(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 CA={isVisible:document.visibilityState===`visible`,isFrozen:!1,isProbing:!1,isReplacing:!1},wA=document.visibilityState===`visible`?null:Date.now(),TA=null,EA=null;function DA(){TA!==null&&window.clearTimeout(TA),TA=null}function OA(e){DA();let t=Date.now()+e;TA=window.setTimeout(()=>{TA=null,jA({kind:`heartbeat-due`,lateByMs:Date.now()-t})},e)}function kA(){EA!==null&&window.clearTimeout(EA),EA=null}function AA(e){switch(e.kind){case`probe-control`:st(e.deadlineMs,e.isAnnounced).then(e=>{jA({kind:e?`pong`:`pong-missed`})});return;case`replace-control`:ut();return;case`close-sockets`:kA(),dt(),zb();return;case`reconnect-shown-terminals`:Lb();return;case`hold-input`:Pb();return;case`release-input`:Fb();return;case`schedule-heartbeat`:OA(e.inMs);return;case`cancel-heartbeat`:DA();return}}function jA(e){let t=ft(CA,e);CA=t.state;for(let e of t.actions)AA(e)}function MA(){if(document.visibilityState!==`visible`){wA=Date.now(),jA({kind:`hidden`});return}let e=wA===null?0:Date.now()-wA;wA=null,Dg(`shown`,e),jA({kind:`shown`,hiddenForMs:e})}function NA(e){kA(),Tg(`control-${e}`),e===`connecting`?EA=window.setTimeout(()=>{EA=null,jA({kind:`handshake-overdue`})},Xe):jA({kind:e===`opened`?`control-opened`:`control-closed`})}function PA(){Dg(`resumed`,wA===null?0:Date.now()-wA),jA({kind:`resumed`})}function FA(){let e=Reflect.get(navigator,`connection`);e instanceof EventTarget&&e.addEventListener(`change`,()=>{Eg(`link`),jA({kind:`network-changed`})})}function IA(){Ze(NA),document.addEventListener(`visibilitychange`,MA),document.addEventListener(`freeze`,()=>jA({kind:`frozen`})),document.addEventListener(`resume`,PA),window.addEventListener(`pagehide`,e=>{e.persisted&&jA({kind:`frozen`})}),window.addEventListener(`pageshow`,e=>{e.persisted&&PA()}),window.addEventListener(`online`,()=>{Eg(`online`),jA({kind:`network-changed`})}),window.addEventListener(`offline`,()=>Eg(`offline`)),FA()}var LA={},RA=null,zA=null,BA=be,VA=null,HA=!1,UA=null,WA=[],GA=null,KA=()=>null,qA=()=>{},JA=new Set,YA=new Set;function XA(e){for(let t of YA)t(e)}function ZA(e){YA.add(e)}function QA(){return LA}function $A(e){return LA={...LA,...e},LA}function ej(){return{status:RA,journal:zA,request:BA,lastAutoCheckAt:VA,isCheckInFlight:HA,checkSendFailure:UA}}function tj(e){let t=ye(BA,e);t!==BA&&(BA=t,XA({kind:`update`,frame:`request`}))}function nj(){tj(E({type:`update-apply`})?`request-sent`:`request-unsent`)}function rj(){VA=Date.now();let e=E({type:`update-check`});HA=e,UA=e?null:b,XA({kind:`update`,frame:`request`})}function ij(e){qA=e}function aj(){qA()}function oj(e){WA=[...e]}function sj(){return WA}function cj(e=null,t=null,n=null){let r=GA!==null&&(GA.sectionId!==null||GA.isLink);e===null&&n===null&&r||(GA={sectionId:e,settingId:t,hashAtRequest:n??location.hash,isLink:n!==null},XA({kind:`activate`}))}function lj(){let e=GA;return GA=null,e}function uj(e){KA=e}function dj(){for(let e of JA)e()}function fj(e){JA.add(e)}function pj(){return vu()&&KA()===`section`}function mj(){pj()&&XA({kind:`return-to-list`})}function hj(e){e&&(LA=e,Wi(LA.agentLogins),XA({kind:`broadcast`}))}function gj(){XA({kind:`status`})}function _j(e){gj()}function vj(e){RA=e,HA=!1,UA=null,BA=ye(BA,`status-frame`),XA({kind:`update`,frame:`status`})}function yj(e){zA=e,BA=ye(BA,`progress-frame`),XA({kind:`update`,frame:`progress`})}function bj(e){if(e.scope!==`update`)return!1;let t=oe(e.message),n=BA.requested;return BA=ye(BA,`error-frame`,t),HA=!1,n||(UA=t),XA({kind:`update`,frame:`error`}),!0}function xj(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 Sj=200;function Cj(e,t=null){return`#settings/${encodeURIComponent(e)}${t?`/${encodeURIComponent(t)}`:``}`}function wj(e){return/^#settings(?:[/?]|$)/.test(e)}function Tj(e){let t=e.trim();return t?`#settings?q=${encodeURIComponent(t)}`:`#settings`}function Ej(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,Sj).join(``).trim()}}function Dj(e,t,n){let r=w(`a`,`settings-link`,n);return r.href=Cj(e,t),r}var Oj=!1,kj=!1,Aj=!1,jj=null,Mj=null;function Nj(){return Mj??=P(()=>import(`./nyan-cat-gMmu0ObP.js`).then(e=>e.r).then(e=>(jj=e,e),e=>(Mj=null,T(`flying-animals`,`nyan cat failed to load: ${Ye(e)}`),null)),__vite__mapDeps([22,15,1])),Mj}function Pj(e){!Aj||e.currentFlightBlockReason(!0)?e.stopNyanCat():e.startNyanCat()}function Fj(){kj=!0,Ij(Yr())}function Ij(e){let t=document.documentElement;Oj||(Oj=!0,yu(()=>Ij(Yr())),window.matchMedia(`(prefers-reduced-motion: reduce)`).addEventListener(`change`,()=>Ij(Yr()))),Aj=e,e?(t.dataset.flyingAnimals=`true`,jj?Pj(jj):kj&&Nj().then(e=>{e&&Pj(e)})):(delete t.dataset.flyingAnimals,jj?.stopNyanCat())}var Lj=`•`.repeat(8),Rj=`[^/\\\\\\s"'\`<>:]+`,zj=RegExp(`(?<![\\w./\\\\-])(?:/home/${Rj}|/Users/${Rj}|[A-Za-z]:[\\\\/]Users[\\\\/]${Rj}|/root(?![\\w.-]))`,`g`);function Bj(e){let t=nv(e);if(t.length===0)return e;let n=``,r=0;for(let i of t)n+=e.slice(r,i.start)+Lj,r=i.end;return n+e.slice(r)}function Vj(e){return e.replace(zj,`~`)}function Hj(e){return Vj(Bj(e))}var Uj=`.xterm, input, textarea, script, style, [contenteditable]:not([contenteditable="false"])`,Wj=[`title`,`label`],Gj=new WeakMap,Kj=new WeakMap,qj=null;function Jj(e){let t=e instanceof Element?e:e.parentElement;return!t||t.closest(Uj)!==null}function Yj(e){let t=e.parentElement?.closest(`option`);return t!=null&&!t.hasAttribute(`value`)}function Xj(e,t){if(t&&e===t.masked)return t;let n=Hj(e);return n===e?null:{original:e,masked:n}}function Zj(e){let t=Yj(e)?null:Xj(e.data,Gj.get(e));t?(Gj.set(e,t),e.data!==t.masked&&(e.data=t.masked)):Gj.delete(e)}function Qj(e,t){let n=e.getAttribute(t),r=Kj.get(e),i=n===null?null:Xj(n,r?.get(t));if(!i){r?.delete(t);return}let a=r??new Map;a.set(t,i),Kj.set(e,a),n!==i.masked&&e.setAttribute(t,i.masked)}function $j(e){for(let t of Wj)Qj(e,t)}function eM(e){return e instanceof Element&&e.matches(Uj)?NodeFilter.FILTER_REJECT:NodeFilter.FILTER_ACCEPT}function tM(e){$j(e);let t=document.createTreeWalker(e,NodeFilter.SHOW_ELEMENT|NodeFilter.SHOW_TEXT,eM);for(let e=t.nextNode();e;e=t.nextNode())e instanceof Text&&Zj(e),e instanceof Element&&$j(e)}function nM(e){Jj(e)||(e instanceof Text&&Zj(e),e instanceof Element&&tM(e))}function rM(e){e instanceof Element&&!Jj(e)&&$j(e)}function iM(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&&nM(e);for(let e of n)e.isConnected&&rM(e)}function aM(e){let t=document.createTreeWalker(e,NodeFilter.SHOW_ELEMENT|NodeFilter.SHOW_TEXT);oM(e);for(let e=t.nextNode();e;e=t.nextNode())oM(e)}function oM(e){if(e instanceof Text){let t=Gj.get(e);t&&e.data===t.masked&&(e.data=t.original);return}if(!(e instanceof Element))return;let t=Kj.get(e);if(t)for(let[n,r]of t)e.getAttribute(n)===r.masked&&e.setAttribute(n,r.original)}function sM(){if(qj)return;let e=new MutationObserver(t=>{iM(t),e.takeRecords()});tM(document.body),e.observe(document.body,{childList:!0,subtree:!0,characterData:!0,attributes:!0,attributeFilter:Wj}),qj=e}function cM(){qj&&(qj.disconnect(),qj=null,aM(document.body),Gj=new WeakMap,Kj=new WeakMap)}function lM(e){e?sM():cM()}function uM(){lM(cv()),uv(lM)}function dM(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 fM(e){return typeof e!=`object`||!e||!(`telemetryForcedOff`in e)?!1:e.telemetryForcedOff===!0}function pM(e,t){return t||fM(e)?!1:dM(e)}var mM=2500;function hM({hasSnapshot:e,connectingTerminalCount:t,msSinceConnected:n}){return n<2500&&(!e||t>0)?`wait`:`reveal`}function gM(e){return g(Number(e)||0,{rounding:`round`,wording:`compact`,suffix:``,justNowBelowSeconds:0})}function _M(e){return typeof e!=`number`||!Number.isFinite(e)||e<=0?`never`:`${gM(Date.now()-e)} ago`}var vM=e=>`polled ${_M(e)}`;function yM(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=vM){let a={el:e,ts:n,format:r};i(a),t.push(a)},onTick(e){n.push(e)},reset(){t=[],n=[]},ensure(){r||=zt(a)}}}var bM=2e4,xM=null,SM=null,CM={claude:null,codex:null},wM=null,TM=null,EM=null,DM=`all`,OM=!1,kM=null,AM=null,jM=!0,MM=()=>!1,NM=new Set,PM=u({getAck:xi,setAck:Si,signature:()=>gh(xM,CM.claude),isLooking:()=>MM()});function FM(e){for(let t of NM)t(e)}function IM(){wM?.(PM.refresh())}function LM(e){OM=e,FM(`refresh-status`),kM&&=(clearTimeout(kM),null),e&&(kM=setTimeout(()=>{kM=null,OM=!1,AM=`Usage did not answer within ${Math.round(bM/1e3)} s. Refresh to try again.`,FM(`refresh-status`)},bM))}function RM(e){let t=$m.find(t=>t.value===e);return t?t.days:null}function zM(){return{report:xM,sessions:SM,planLimitsByVendor:CM,rangeValue:DM}}function BM(){let e=!jM||!OM&&AM!==null;return jM?OM?{text:`Refreshing`,isPending:!0,hasFailure:e}:{text:AM??``,isPending:!1,hasFailure:e}:{text:xM?`${b} The figures below are from before the connection dropped.`:b,isPending:OM,hasFailure:e}}function VM(e){NM.add(e)}function HM(e){MM=e,IM()}function UM(){PM.acknowledge(),IM()}function WM(e){wM=e,IM()}function GM(e){TM?.({type:`dashboard-telemetry`,event:`operator_action`,properties:{surface:`usage`,action:e}})}function KM(e){TM=e}function qM(e){DM=e}function JM({force:e=!1}={}){if(!TM)return;EM=lt(`usage`);let t={type:`request-usage-report`,requestId:EM};e&&(t.force=!0);let n=RM(DM);n!==null&&(t.days=n),AM=null,LM(!0),!TM(t)&&(AM=b,LM(!1))}function YM(e){jM=e,FM(`refresh-status`)}function XM(e){SM=e,FM(`sessions`)}function ZM(e){let t=e;CM={...CM,[ph(t)]:t},FM(`plan-limits`),IM()}function QM(e){Sh(e,EM)&&(AM=null,LM(!1),xM=e,FM(`report`),IM())}function $M(){let e=xM?.pricing||(SM?{source:SM.pricingSource}:null),t=vh(e?.fetchedAt),n=[_h(e,t!==null&&t>0?_M(t):``)],r=xh(xM);r&&n.push(r);let i=bh(xM?.scan);return i&&n.push(i),n}var eN={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},tN=[{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 nN(e,t){return t.isPhoneShellActive?t.phoneScreen===e:t.activeView===e}function rN(e,t){return e.flatMap(e=>!e.gate||!(`fromSettings`in e.gate)?[]:[{view:e,isAvailable:e.gate.fromSettings(t)}])}function iN(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 aN(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 oN(e){return{isActive:e===!0||typeof e==`string`,level:typeof e==`string`?e:null}}function sN(e,t,n){t&&e?.refreshOn?.includes(n)&&t.refresh?.(n)}function cN(e,t,n,r){for(let i of e)nN(i.view,t)&&sN(i,r(i.view),n)}function lN(){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 uN(e,t,n){let r=Number(e);return!e||!Number.isFinite(r)||t-r>n}var dN=`glimmervoid:preload-error-reload-at`,fN=3e4,pN=1e3,mN=lN();function hN(e,t){let n=mN.mountedModuleOf(e.view);n?t(n):mN.show(e).then(t).catch(t=>{throw T(`view`,`${e.view} failed to show: ${Ye(t)}`),t})}function gN(e){return mN.mountedModuleOf(e)}function _N(e){mN.mountEagerViews(e)}function vN(e){let t=()=>{mN.prefetch(e.filter(e=>!e.tab.hidden))};`requestIdleCallback`in window?window.requestIdleCallback(t):setTimeout(t,pN)}function yN(e){let t=Date.now();uN(e.getItem(dN),t,fN)&&(e.setItem(dN,String(t)),location.reload())}function bN(e){window.addEventListener(`vite:preloadError`,()=>yN(e()))}function xN(e,t){fetch(e,{method:`HEAD`,cache:`no-store`}).then(e=>{e.status===404&&yN(t())}).catch(()=>{})}function SN(e){MO({openTerminal:e.openTerminal,openReviews:e.openReviews}),ij(e.onRestart);let t=[{view:`focus`,label:`Focus`,panelClass:`focus-view`,hasOwnPhoneScreen:!0,hasPanelChrome:!1,hasReviewSidebar:!0,module:{mount:()=>pC({rail:document.getElementById(`focus-rail`),center:document.getElementById(`focus-center`),resizer:document.getElementById(`focus-rail-resizer`)}),activate:HC,deactivate:GC}},{view:`prs`,label:`Reviews`,glyph:`⇅`,panelClass:`pr-view`,gate:{fromSettings:eN.teamReview},load:()=>P(()=>import(`./review-queue-panel-DvEs6-Bf.js`).then(e=>e.view),__vite__mapDeps([23,3,4,1,2,7,24,13,25])),refreshOn:[`shown`],attention:{subscribe:OO,acknowledge:DO},onConnectionChange:e=>{kD(e),$E(e)}},{view:`issues`,label:`Issues`,glyph:`#`,panelClass:`issues-view`,gate:{fromSettings:eN.issues},load:()=>P(()=>import(`./issues-panel-BxKdJ76u.js`).then(e=>e.view),__vite__mapDeps([26,3,4,1,13,24,2,7,27])),refreshOn:[`shown`],onConnectionChange:Jk},{view:`usage`,label:`Usage`,glyph:`◔`,panelClass:`usage-view`,gate:{fromSettings:eN.usage},load:()=>P(()=>import(`./usage-panel-DiqtugGl.js`).then(e=>e.view),__vite__mapDeps([28,3,4,1,29])),attention:{subscribe:WM,acknowledge:UM},onConnectionChange:YM,refreshOn:[`shown`,`connected`,`usage-sessions`]},{view:`radar`,label:`Radar`,glyph:`◎`,panelClass:`radar-view`,gate:{fromSettings:eN.posthog},load:()=>P(()=>import(`./radar-panel-BUhFoFVK.js`).then(e=>e.view),__vite__mapDeps([30,3,4,1,2,7,11,12,13,5,10,31])),attention:{subscribe:fA,acknowledge:dA}},{view:`visions`,label:`Visions`,glyph:`◇`,panelClass:`visions-view`,gate:{fromSettings:eN.visions},load:()=>P(()=>import(`./visions-panel-BCm5wau9.js`).then(e=>e.view),__vite__mapDeps([32,3,4,1,33])),attention:{subscribe:fT,acknowledge:pT},refreshOn:[`shown`],onConnectionChange:gT},{view:`hooks`,label:`Hooks`,glyph:`◈`,panelClass:`hooks-view`,load:()=>P(()=>import(`./hooks-panel-B7twURZa.js`).then(e=>e.view),__vite__mapDeps([34,4,3,1,2,7,35])),refreshOn:[`shown`,`connected`,`hooks-updated`]},{view:`trace`,label:`Trace`,panelClass:`trace-view`,gate:{subscribe:sc},load:()=>P(()=>import(`./trace-panel-C-ck4L5u.js`).then(e=>e.view),__vite__mapDeps([36,3,4,1,37])),refreshOn:[`shown`],onAvailabilityChange:e=>pA(e?Km:null),onConnectionChange:Zm},{view:`benchmarks`,label:`Bench`,panelClass:`bench-view`,gate:{fromSettings:eN.benchmarks},load:()=>P(()=>import(`./benchmark-panel-BG1inIoZ.js`).then(e=>e.view),__vite__mapDeps([38,3,4,1,39])),onConnectionChange:_k},{view:`settings`,label:`Settings`,glyph:`@`,panelClass:`settings-view`,hasPanelChrome:!1,load:()=>P(()=>import(`./settings-panel-CjIAPjuk.js`).then(e=>e.view),__vite__mapDeps([40,3,4,1,2,7,21,11,12,13,5,10,22,15,41]))}],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}=oN(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}Vg(qr()),Hg(()=>{P(()=>import(`./alert-sound-DDh_4QK8.js`).then(e=>e.playNyanJingle(),e=>T(`alert-sound`,`nyan jingle failed to load: ${Ye(e)}`)),[])}),Ug(Vr()),Ij(Yr()),_u(),So(document);var CN=S(document,`#connection-status`,`span`),wN=S(CN,`.connection-label`,`span`),TN=S(document,`#loading-screen`,`div`),EN=S(document,`#loading-status`,`div`),DN=S(document,`#loading-detail`,`div`),ON=S(document,`#shutdown-screen`,`div`),kN=S(document,`#shutdown-status`,`div`),AN=!1,jN=null,MN=!1;function NN(){let e=Vi(),t=TN.querySelector(`.loading-spinner`);e&&t&&t.replaceWith(Bi(e,`loading-animal`))}NN();function PN(){AN||jN===null||hM({hasSnapshot:MN,connectingTerminalCount:gb(),msSinceConnected:performance.now()-jN})===`reveal`&&FN()}hb(PN);function FN(){if(AN)return;AN=!0,TN.classList.add(`fade-out`),vN(Q),Fj(),aa();let e=()=>TN.remove();TN.addEventListener(`transitionend`,e,{once:!0}),setTimeout(e,1e3)}function IN(e,t){CN.dataset.state=`shutdown`,wN.textContent=e,CN.title=e,MP.disabled=!0,kN.textContent=t,ON.classList.add(`active`)}var LN=new Set([`disconnected`,`connecting`]);function RN(e,t,n){CN.dataset.state=e,CN.toggleAttribute(`data-reconnected`,n),wN.textContent=t,CN.title=t}function zN(e,t){RN(e,t,e===`connected`&&LN.has(CN.dataset.state??``))}function BN(e,t){CN.dataset.state!==`shutdown`&&RN(e===`verified`?`connected`:e,t,!1)}var VN=1e4,HN=`Server`,UN=`Worktree`,WN=`Worktree warning`,GN=`The server is not answering. Check the terminal running Glimmervoid for errors, or start it again with glimmervoid. This page reconnects on its own.`,KN=`Server not answering. Check the Glimmervoid terminal for errors, or run glimmervoid. This page retries on its own.`,qN=null,JN=!1;function YN(){EN.textContent=`Reconnecting to server...`,DN.textContent=KN,DN.hidden=!JN}function XN(){qN=null,JN=!0,AN?R({source:HN,message:GN,hidesInStreamerMode:!1}):YN()}function ZN(){qN!==null||JN||(qN=window.setTimeout(XN,VN))}function QN(){qN!==null&&window.clearTimeout(qN),qN=null,JN=!1,DN.hidden=!0,Ds(HN)}tt((e,t)=>{if(e===`connecting`||e===`verified`)BN(e,t);else{zN(e,t),kx(e===`connected`);for(let t of Q)t.onConnectionChange?.(e===`connected`);if(e===`connected`){if(QN(),xN(import.meta.url,()=>window.sessionStorage),XP&&ZP(XP),ON.classList.contains(`active`)){location.reload();return}ia(),document.body.classList.add(`app-ready`),!AN&&jN===null&&(jN=performance.now(),EN.textContent=`Connecting to sessions...`,setTimeout(FN,mM)),PN(),CF(),mP(`connected`),et(`get-settings`,{}).then(e=>{e.settings&&(nF(e.settings),on()===`settings`&&LP(location.hash))}).catch(()=>{})}else e===`disconnected`&&ON.classList.contains(`active`)?kN.textContent=`Waiting for server...`:(ZN(),AN||YN())}});function $N(){qk(),ED(),nE()}function eP(){TC(),$N()}Da(()=>TC()),zo(e=>{TC(e),$N()});var tP=null;function nP(e){let t=xj(tP,e);tP=t.knownBuild,t.reload&&location.reload()}function rP(e){mT(new Map(e.filter(e=>!e.ephemeral).map(e=>[e.id,e.name]))),_j(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){Qa(t.id,t.coherenceHooks),t.ephemeral||Cl(t.path),ZO(t.id,t.linkedPrs);let e=mx(t.id);e&&Qx(t.id,t.state,t.stateSince),e&&xc(t.id,!!t.saneYolo),e&&Nx(t.id,t.isGuarded,t.isGuardrailsReleased),e||bx(t.id,t.name,t.state,SA(t)),qx(t.id,t.failureReason),px(t.id,t.taskTitle,t.taskTitleIsCustom),jx(t.id,t.agent),Vx(t.id,t.mergeStatus,t.mergeReason),Ax(t.id,t.effectiveBase),Fx(t.id,t.activeAgents,t.awaitingBackgroundTasks),Lx(t.id,t.pendingPromptKind),Rx(t.id,t.unseenOutcome),wx(t.id,t.hasPlan),pP(t.id)}yx(),Mo(A.counts),TC(),WC(),$N(),iP(),BP(location.hash),wF(),MN=!0,PN()}function iP(){qm([...O].map(([e,t])=>({id:e,name:_t(t)||e})))}function aP(e,t){wx(e,t?.hasPlan===!0),Rx(e,t?.unseenOutcome),pP(e)}var oP=new Set([x.DONE,x.FAILED]);function sP(e,t){return e!==void 0&&oP.has(e)&&!oP.has(t)&&t!==x.DORMANT}function cP(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;Wx(e.id),bx(e.id,e.session,x.DORMANT,SA({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})),jx(e.id,t?.agent),aP(e.id,t)}function lP(e,t){let n=O.get(String(e.id))?.currentState;t.to===x.DORMANT&&n!==x.DORMANT?(cP(e),qf(e.id)):(Qx(e.id,t.to,e.timestamp,t.event),qx(e.id,e.failureReason),e.saneYolo!==void 0&&xc(e.id,e.saneYolo),qf(e.id),sP(n,t.to)&&Ib(e.id))}function uP(e){if(mx(e.id))e.transition&&lP(e,e.transition),e.activeAgents!==void 0&&Fx(e.id,e.activeAgents,e.awaitingBackgroundTasks),e.unseenOutcome!==void 0&&Rx(e.id,e.unseenOutcome),e.pendingPromptKind!==void 0&&Lx(e.id,e.pendingPromptKind),e.unseenOutcome!==void 0&&yx(),Mo(A.counts),Bo(e.id),Uc(e.id);else{if(!e.transition)return;bx(e.id,e.session,e.transition.to,SA({skipPerms:e.skipPerms,saneYolo:e.saneYolo,stateSince:e.timestamp})),Mo(A.counts),qk()}}var dP=new Map;function fP(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};dP.set(n.id,e),Ix(n.id,e)}for(let e of[...dP.keys()])t.has(e)||(dP.delete(e),Ix(e,null))}function pP(e){let t=dP.get(e);t&&Ix(e,t)}KM(E),PT(E),Wm(E),Kk(E),hk(E),uc(YO),tl(no),tl(qO),fc({isReadable:ro,open:ao}),mc(bA);function mP(e){cN(Q,{isPhoneShellActive:ZT(),activeView:on(),phoneScreen:j.snapshot().phoneScreen},e,gN)}uv(()=>mP(`settings-updated`));var hP={snapshot:e=>{nP(e.serverBuild),rP(e.sessions)},"hooks-report":e=>IT(e),"save-hook-result":()=>LT(),"delete-hook-result":()=>LT(),"session-status":e=>uP(e),"session-added":e=>{e.ephemeral||Cl(e.path),ZO(e.id,e.linkedPrs),mx(e.id)||(bx(e.id,e.session,e.state,SA(e)),jx(e.id,e.agent),pP(e.id)),Mo(A.counts),eP(),iP()},"session-close-confirm":e=>{eu(e.id)},"session-removed":e=>{Os(e.id),Wx(e.id),$a(e.id),Yf(e.id),QO(e.id),Mo(A.counts),eP(),iP()},"session-title":e=>{px(e.id,e.taskTitle,e.isCustom),eP()},"session-prs":e=>ZO(e.id,e.linkedPrs),"session-renamed":e=>{Ux(e.id,e.newName),eP(),iP()},"session-modified":e=>{e.ephemeral||Cl(e.path);let t=O.get(String(e.id)),n=B()===String(e.id);Qa(e.id,null),Wx(e.id),Yf(e.id),ZO(e.id,e.linkedPrs),bx(e.id,e.session,e.state,SA(e)),n&&Fl(String(e.id)),jx(e.id,e.agent),aP(e.id,t),Mo(A.counts),eP(),iP()},"session-git":e=>Mx(e.id,!!e.worktree),"session-merge-status":e=>{Bx(e.id,e.mergeStatus,e.reason),LC(e.id,e.mergeStatus),$N()},"session-worktree-blocked":e=>{R({source:UN,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:WN,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=>{Ds(UN,e.id),Ax(e.id,e.base)},"session-diff":e=>{Hx(e.id,e)},"session-diff-error":e=>{Hf(e.id,e.message)},"change-map":e=>Uf(e.id,e.map),"branch-sync-status":e=>Wf(e.id,e),"session-changed":e=>Kf(e.id),"debug-state-response":e=>Hc(e),"session-trace-response":e=>Jm(e),"session-trace-changed":e=>Ym(e),"session-plan-changed":e=>{Tx(e),$N()},"session-plan-draft":e=>{Ex(e)},"session-plan-response":e=>{Dx(e)},"session-docs-changed":e=>ha(e),"session-docs-snapshot":e=>ga(e),"session-shown":e=>Fa(e),"session-shown-snapshot":e=>Ia(e),"session-coherence-hooks":e=>{Qa(e.id,e.coherenceHooks),eP()},"session-coherence":e=>{eo(e),eP()},"session-coherence-snapshot":e=>{to(e),eP()},"session-coherence-journal-response":e=>oo(e),"session-setup-response":e=>xA(e),notify:e=>{$h(e),Uc(e.session)},"update-status":e=>{SP(e),vj(e)},"update-progress":e=>yj(e.journal),"post-turn-leftovers":e=>wP(e),error:e=>{let t=bj(e),n=Xm(e),r=Ox(e);t||n||r||(e.id?Kx(e.id,e.message):R({source:HN,message:e.message}))},"session-error":e=>{zf(e.id),!Ox(e)&&Kx(e.id,e.message)},"settings-updated":e=>{e.settings&&nF(e.settings),ia()},"agent-logins":e=>Wi(e.logins),"health-snapshot":e=>{e.stats&&zu(e.stats)},"radar-status":e=>mA(e),"radar-investigation-activity":e=>hA(e),"radar-investigation-finished":e=>gA(e),"team-review-status":e=>XE(e),"github-prs":e=>Kt(e),"my-prs-status":DD,"benchmark-status":e=>vk(e),"benchmark-action-result":e=>yk(e),"my-pr-merge-result":e=>OD(e),"team-review-action-result":e=>ZE(e),"open-team-review-session-result":e=>QE(e),"issues-status":e=>Yk(e),"issue-detail-result":e=>Xk(e),"open-issue-session-result":e=>Zk(e),"usage-sessions":e=>{fP(e.sessions),XM(e)},"usage-report":e=>{QM(e),gj()},"plan-limits":e=>ZM(e),"usage-budget-alert":e=>$h({session:`budget-${e.scope}-${e.periodKey}`,category:`threshold-${e.threshold}`,message:e.text,ignoreFocus:!0}),"visions-findings":e=>vT(e),"visions-comments":e=>yT(e),"visions-hand":e=>bT(e),"visions-intent":e=>xT(e),"visions-fix":e=>_T(e),"visions-snapshot":e=>wT(e),"ingest-activity":e=>ST(e),"ingest-snapshot":e=>CT(e),"client-trust":e=>_F(e.trust),"shutting-down":()=>IN(`Shutting down...`,`Shutting down sessions...`),restarting:()=>IN(`Restarting...`,`Restarting server...`)};function gP(e){let t=hP[e.type];t&&t(e)}it(e=>{gP(e),mP(e.type)});var _P,vP=null;function yP(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 bP=Dj(ce,me,`Update`).href;function xP(e){let{latestSha:t,latest:n}=e;return typeof n==`string`&&n?n:typeof t==`string`&&t?t:null}function SP(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=xP(e),s=o&&n===`restart`?`${o}:ready`:o;if(a&&i===vP||!a&&_P!==void 0&&s===_P||!a&&s&&di()===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=bP,l.hidden=n!==`link`;let u=S(document,`#update-banner-restart`,`button`);u.hidden=n!==`restart`,u.onclick=gF;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,yP(f,p,c),S(document,`#update-banner-dismiss`,`button`).onclick=()=>{t.hidden=!0,a?vP=i:(_P=s,fi(s))}}var CP=!1;function wP({repositories:e,command:t}){let n=S(document,`#post-turn-leftovers-banner`,`div`);if(e.length===0){n.hidden=!0;return}if(CP)return;let r=S(document,`#post-turn-leftovers-copy-status`,`span`);S(document,`#post-turn-leftovers-text`,`span`).textContent=en(e.length),S(document,`#post-turn-leftovers-cmd`,`code`).textContent=t,r.textContent=``,n.hidden=!1,yP(S(document,`#post-turn-leftovers-copy`,`button`),r,t),S(document,`#post-turn-leftovers-dismiss`,`button`).onclick=()=>{CP=!0,n.hidden=!0}}var TP=S(document,`#telemetry-banner`,`div`);function EP(){mi(!0),TP.hidden=!0}function DP(e){TP.hidden=!pM(e,pi())}var OP=S(document,`#telemetry-banner-settings`,`a`);OP.href=Dj(`privacy`,`telemetry-enabled`,`What's collected`).href,OP.addEventListener(`click`,EP),S(document,`#telemetry-banner-dismiss`,`button`).addEventListener(`click`,EP),S(document,`#btn-add-session-header`,`button`).addEventListener(`click`,Kl);var kP=S(document,`#btn-mute`,`button`);ik(kP);var AP=S(document,`#btn-streamer`,`button`);hv(AP),uM();var jP=S(document,`#power-menu`,`div`),MP=S(document,`#btn-power`,`button`),NP=S(document,`#power-menu-dropdown`,`div`);function PP(e){jP.classList.toggle(`open`,e),MP.setAttribute(`aria-expanded`,String(e))}MP.addEventListener(`click`,e=>{e.stopPropagation(),PP(!jP.classList.contains(`open`))}),zs({trigger:MP,menu:NP,menuItems:()=>[...NP.querySelectorAll(`[role="menuitem"]`)].filter(e=>!e.hidden),isOpen:()=>jP.classList.contains(`open`),open:()=>PP(!0),close:()=>PP(!1)}),document.addEventListener(`click`,e=>{e.target instanceof Node&&(jP.contains(e.target)||PP(!1))}),Re(document.querySelector(`.header`));function FP(e){e&&cj(e),!sE(`settings`)&&$(`settings`,{section:e})}function IP(){wj(location.hash)&&history.replaceState(history.state,``,`${location.pathname}${location.search}`)}function LP(e){return wj(e)?(cj(null,null,e),sE(`settings`)||$(`settings`,{persist:!1}),!0):!1}var RP=`No plan is stored for this session yet. It appears here once the agent writes one.`,zP=`Plan`;function BP(e){let t=Hu(e);return t?!mx(t)||(history.replaceState(history.state,``,`${location.pathname}${location.search}`),ZT()?(aE(t)||R({source:zP,sessionId:t,message:RP}),!0):($(`focus`,{persist:!1}),zC(t)||R({source:zP,sessionId:t,message:RP}),!0)):!1}function VP(e){return BP(e)?!0:LP(e)}function HP(e){e.newURL===location.href&&VP(location.hash)}document.addEventListener(`click`,e=>{if(!ZT()||e.defaultPrevented)return;let t=e.target instanceof Element?e.target.closest(`a[href^="#"]`):null;t instanceof HTMLAnchorElement&&VP(t.hash)&&e.preventDefault()}),uD(S(document,`#celebration-tray`,`div`),S(document,`#btn-celebrations`,`button`),S(document,`#celebration-tray-count`,`span`)),S(document,`#btn-help`,`button`).addEventListener(`click`,()=>{FP(`browser-shortcuts`)});var Q=SN({onRestart:gF,openTerminal:e=>{oE(e)||($(`focus`),RC(e))},openPlan:e=>{$(`focus`),zC(e)},openReviews:()=>KP(`prs`)?(sE(`prs`)||$(`prs`),!0):!1,setPhoneAttention:tE});function UP(){return Q.map(e=>e.view)}var WP=UP();oj(Q),Pf({panel:document.getElementById(`review-sidebar`)}),_N(Q);function GP(e){return Q.find(t=>t.view===e)}function KP(e){return Q.some(t=>t.view===e&&!t.tab.hidden)}var qP=!0,JP=null;function YP(e){GP(e)?.attention?.acknowledge()}var XP=null;function ZP(e){XP=E({type:`dashboard-telemetry`,event:`view_shown`,properties:{view:e}})?null:e}function QP(e){let t=GP(e);t&&(hN(t,e=>sN(t,e,`shown`)),ZP(e))}function $(e,{section:t,setting:n,persist:r=!0}={}){let i=GP(e);if(!i||!KP(e))return;let a=on();j.dispatch(`setActiveView`,e),qP=r,r&&(JP=null),document.body.dataset.activeView=e,document.body.dataset.reviewSidebarHidden=String(i.hasReviewSidebar!==!0),r&&Qr(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&&gN(a)?.deactivate?.(),hN(i,r=>{on()===e&&(r.activate?.(),sN(i,r,`shown`),e===`settings`&&t&&cj(t,n??null))}),ZP(e),a===`settings`&&e!==`settings`&&IP(),YP(e)}function $P(e,t){let{view:n}=e;e.tab.hidden=!t,eE(n,t),e.onAvailabilityChange?.(t),!ZT()&&(!t&&on()===n&&$(`focus`),t&&JP===n&&$(n))}function eF(e){for(let{view:t,isAvailable:n}of rN(Q,e))$P(t,n)}function tF(e){let t=iN(WP,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)),$T(t))}function nF(e){Wg(e.isExperimentalBuild===!0&&Ur()),gx(e),hj(e),hT(e),eF(e),DP(e),tF(e.viewTabOrder),lv(e.streamerMode===!0)}for(let e of Q)e.gate&&($P(e,!1),`subscribe`in e.gate&&e.gate.subscribe(t=>$P(e,t)));Gm(()=>{KP(`trace`)&&(sE(`trace`)||$(`trace`))});function rF(){return Q.filter(e=>!e.tab.hidden)}function iF(e,t){let n=e[t];return $(n.view),n.tab}function aF(e,t){let n=rF();return iF(n,js(n.findIndex(t=>t.view===e),t,n.length))}function oF(e){Q.some(e=>e.tab===document.activeElement)&&e.focus()}var sF=null;function cF(e){let t=UP();tF(e),et(`update-settings`,{settings:{viewTabOrder:e}}).then(e=>{e.type===`settings-error`&&tF(t)}).catch(()=>tF(t))}function lF(e){let t=sF;if(sF=null,!t||t===e)return;let n=UP();cF(aN(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=>{sF=t,e.dataTransfer?.setData(`text/plain`,t),e.dataTransfer&&(e.dataTransfer.effectAllowed=`move`)}),n.addEventListener(`dragover`,e=>{sF&&sF!==t&&(e.preventDefault(),n.dataset.dropTarget=`true`)}),n.addEventListener(`dragleave`,()=>delete n.dataset.dropTarget),n.addEventListener(`drop`,e=>{e.preventDefault(),delete n.dataset.dropTarget,lF(t)}),n.addEventListener(`dragend`,()=>{sF=null}),n.addEventListener(`keydown`,e=>{if(e.metaKey||e.altKey||e.ctrlKey||e.shiftKey)return;let t=rF(),n=t.findIndex(e=>e.view===on()),r=Ms(e.key,n,t.length,`horizontal`);r!==null&&(e.preventDefault(),iF(t,r).focus())})}var uF=Zr(),dF=wj(location.hash),fF=Hu(location.hash);if(dF&&(cj(null,null,location.hash),$(`settings`,{persist:!1})),fF&&$(`focus`,{persist:!1}),!dF&&!fF){let e=KP(uF);e||(JP=uF),$(e?uF:`focus`,{persist:e})}JT({panels:RT(Q),onScreenShown:e=>{QP(e),e!==`settings`&&IP(),e===`settings`&&!wj(location.hash)&&cj(),YP(e)},canGoBack:e=>e===`settings`&&pj()||e===`prs`&&LO(),onBack:e=>{e===`settings`&&mj(),e===`prs`&&RO()},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`),kP,AP,jP]}),fj(rE),IO(rE);function pF(e){if(e===`phone`){let e=fC();for(let e of Q)gN(e.view)?.deactivate?.();let t=wj(location.hash);YT({sessionId:e??void 0,linkedScreenId:t?`settings`:void 0}).then(e=>{e&&t&&cj(null,null,location.hash),!e&&vu()&&!ZT()&&mF()});return}let t=QT();XT(),mF(),t&&RC(t)}function mF(){let e=on();$(KP(e)?e:`focus`,{persist:qP})}vu()&&pF(`phone`),yu(pF),window.addEventListener(`hashchange`,HP);function hF({type:e,title:t,confirmLabel:n,danger:r,idleMessage:i,actionAfterKillingSessions:a}){PP(!1);let o=hx(),s=o>0?`Kill ${o} session${o>1?`s`:``} and ${a}?`:i;jt({title:t,message:s,confirmLabel:n,danger:r||o>0,onConfirm:()=>E({type:e})})}function gF(){hF({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`,gF);function _F(e){let t=Xt(`shutdown`,e);S(document,`#btn-shutdown`,`button`).hidden=!t,S(document,`#menu-divider-shutdown`,`div`).hidden=!t}S(document,`#btn-shutdown`,`button`).addEventListener(`click`,()=>{hF({type:`shutdown`,title:`Shut Down Server`,confirmLabel:`Shut Down`,danger:!0,idleMessage:`Shut down the server?`,actionAfterKillingSessions:`shut down the server`})});function vF(){return(document.activeElement?.closest(`.session-card`))?.dataset.id??null}function yF(e){RC(e),Rl(e),requestAnimationFrame(()=>requestAnimationFrame(()=>O.get(e)?.term?.focus()))}function bF(){let e=vF()??B();e?Xl(e,yF):document.getElementById(`btn-add-session-header`)?.click()}function xF({action:e,step:t}){switch(e){case`merge`:return Xf(),!0;case`close-session`:{let e=B();return e?(eu(e),!0):!1}case`resolve-or-resync`:return Qf()||tp(),!0;case`new-session`:return document.getElementById(`btn-add-session-header`)?.click(),!0;case`quick-session`:return bF(),!0;case`next-attention`:return vu()?!1:dC()?(kC(),!0):(on()===`prs`&&zO()||UC(()=>$(`focus`)),!0);case`rail-step`:return dC()?(VC(t),!0):!1;case`view-step`:return!vu()&&(oF(aF(on(),t)),!0);case`session-nth`:return dC()?(BC(t),!0):!1;case`streamer-mode`:return mv(),!0}}document.addEventListener(`keydown`,e=>{if(e.repeat||Le(e))return;let t=hr(e,ud,{isTerminalFocused:document.activeElement?.classList.contains(`xterm-helper-textarea`)??!1},pd());t&&(Mt()||xF(t)&&e.preventDefault())});var SF=$t({mode:`trailing`,delayMs:150,run:()=>{E({type:`focus-change`,focused:document.hasFocus()})}});function CF(){SF.schedule()}function wF(){let e=QT();e&&k(e)?._isActiveViewer?.()===!0&&Yx(e)}function TF(){CF(),Yb(k(sn())),wF()}window.addEventListener(`focus`,TF),window.addEventListener(`blur`,TF),document.addEventListener(`visibilitychange`,TF),document.addEventListener(`visibilitychange`,()=>{document.visibilityState===`visible`&&vy()});var EF=pt(E);window.addEventListener(`error`,e=>{EF(e.error),T(`uncaught`,Ye(e.error??e.message))}),window.addEventListener(`unhandledrejection`,e=>{EF(e.reason),T(`unhandled-rejection`,Ye(e.reason))}),bN(()=>window.sessionStorage),window.addEventListener(`pageshow`,e=>{e.persisted&&vy()}),Ru(S(document,`#health-footer-mount`,`div`)),lg(_x),ZN(),IA(),ot();var DF=Ti();DF&&at().then(()=>Eb(DF));export{AO as $,cn as $i,ld as $n,ra as $r,iw as $t,QA as A,ii as Ai,rh as An,rc as Ar,zE as At,Lk as B,Mn as Bi,Bm as Bn,ls as Br,wE as Bt,dj as C,ki as Ci,kh as Cn,pl as Cr,HD as Ct,mj as D,Br as Di,uh as Dn,jc as Dr,SD as Dt,aj as E,Kr as Ei,dh as En,Gc as Er,CD as Et,sA as F,lr as Fi,th as Fn,ds as Fr,FE as Ft,zk as G,Vn as Gi,Lf as Gn,qo as Gr,NT as Gt,Vk as H,zn as Hi,Lm as Hn,es as Hr,dE as Ht,lA as I,Sr as Ii,xh as In,vs as Ir,PE as It,gk as J,jn as Ji,_d as Jn,Fo as Jr,lT as Jt,Rk as K,Bn as Ki,ud as Kn,I as Kr,dT as Kt,cA as L,yr as Li,Um as Ln,_s as Lr,VE as Lt,ZA as M,Rr as Mi,fh as Mn,kc as Mr,RE as Mt,lj as N,Jr as Ni,ch as Nn,Ms as Nr,IE as Nt,uj as O,Wr as Oi,nh as On,Ec as Or,qE as Ot,uA as P,ui as Pi,ah as Pn,z as Pr,NE as Pt,TO as Q,un as Qi,sd as Qn,sa as Qr,Mw as Qt,Bk as R,Cr as Ri,Vm as Rn,bs as Rr,TE as Rt,$A as S,ji as Si,Rh as Sn,al as Sr,oO as St,rj as T,Ni as Ti,hh as Tn,ol as Tr,wD as Tt,Gk as U,Rn as Ui,Rm as Un,L as Ur,MT as Ut,Wk as V,Fn as Vi,zm as Vn,Xo as Vr,uE as Vt,Uk as W,Hn as Wi,fm as Wn,Jo as Wr,FT as Wt,nk as X,yn as Xi,hd as Xn,Aa as Xr,cw as Xt,pk as Y,vn as Yi,gd as Yn,co as Yr,Cw as Yt,rk as Z,gn as Zi,pd as Zn,wa as Zr,jw as Zt,Dj as _,Ri as _i,Ug as _n,Pl as _r,XD as _t,GM as a,Ii as ai,iS as an,Xu as ar,kO as at,Tj as b,Mi as bi,Uh as bn,bl as br,aO as bt,qM as c,Lr as ci,Yx as cn,Ul as cr,PO as ct,zM as d,Yr as di,Zb as dn,Jl as dr,qD as dt,sn as ea,Gi as ei,DS as en,Zu as er,zO as et,$M as f,zr as fi,Lv as fn,Bl as fr,YD as ft,Ij as g,Fr as gi,Wg as gn,Nl as gr,VD as gt,gM as h,Vr as hi,dv as hn,Rl as hr,rO as ht,tN as i,Jt as ia,Li as ii,rS as in,rd as ir,NO as it,ej as j,Hr as ji,sh as jn,Mc as jr,ME as jt,sj as k,oi as ki,ih as kn,Oc as kr,JE as kt,VM as l,qr as li,Cx as ln,zl as lr,AD as lt,_M as m,ai as mi,uv as mn,eu as mr,WD as mt,iN as n,j as na,Ki as ni,HS as nn,Wu as nr,EO as nt,JM as o,Gr as oi,tS as on,vu as or,FO as ot,yM as p,Ur as pi,cv as pn,Ll as pr,tO as pt,mk as q,kn as qi,md as qn,F as qr,uT as qt,eN as r,qt as ra,Bi as ri,zS as rn,Yu as rr,RO as rt,HM as s,ri as si,nS as sn,yu as sr,wO as st,aN as t,ln as ta,Wi as ti,OS as tn,Ku as tr,jO as tt,BM as u,li as ui,Vb as un,Kl as ur,JD as ut,Ej as v,Xr as vi,Vg as vn,wl as vr,QD as vt,nj as w,Pi as wi,$m as wn,sl as wr,ZD as wt,hj as x,Ai as xi,Bh as xn,yl as xr,nO as xt,Cj as y,Fi as yi,Kg as yn,Tl as yr,UD as yt,Hk as z,Pn as zi,Hm as zn,xs as zr,CE as zt};
|
|
78
|
+
`;function hw(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 gw(e,t){return hw(JSON.stringify([e,...t]))}function _w(e,t){return gw(`finding`,[e,cw(t),String(t.code??``),String(t.message??``)])}function vw(e,t){return gw(`comment`,[e,Cw(t),String(t.message??``)])}function yw(e){return gw(`fix`,[e.uri,jw(e),e.code,e.message,Mw(e)])}function bw(e){return gw(`intent`,[e.key,e.text,e.active])}function xw(e,t,n,r=[],i=null){let a=[...n].map(([e,t])=>gw(`hand`,[e,t])).sort(),o=new Set;for(let r of[...e.keys(),...t.keys(),...n.keys()])o.add(gw(`document`,[r]));for(let[t,n]of e)for(let e of n)o.add(_w(t,e));for(let[e,n]of t)for(let t of n)o.add(vw(e,t));for(let e of r)o.add(yw(e));for(let e of iw(i,null,0))e.hasText&&o.add(bw(e));let s=[...o].sort();return{signature:[...a,...s].join(mw),handEntries:a,contentEntries:s}}function Sw(e,t){let n=new Set(t.split(mw));return e.handEntries.some(e=>!n.has(e))?fw:e.contentEntries.some(e=>!n.has(e))?pw:null}function Cw(e){let t=Number(e?.line);return!Number.isFinite(t)||t<1?`L?`:`L${Math.floor(t)}`}function ww(e){return Array.isArray(e?.diagnostics)?e.diagnostics:[]}function Tw(e,t){let n=new Map(e),r=typeof t?.uri==`string`?t.uri:``;if(!r)return n;let i=ww(t);return i.length===0?(n.delete(r),n):(n.set(r,i),n)}function Ew(e){return Array.isArray(e?.comments)?e.comments:[]}function Dw(e,t){let n=new Map(e),r=typeof t?.uri==`string`?t.uri:``;if(!r)return n;let i=Ew(t);return i.length===0?(n.delete(r),n):(n.set(r,i),n)}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?.diagnostics)?e.diagnostics:[];n&&r.length!==0&&t.set(n,r)}return t}function kw(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 Aw=20;function jw(e){let t=Number(e?.line);return!Number.isFinite(t)||t<0?`L?`:`L${Math.floor(t)+1}`}function Mw(e){return e?.applied===!0?`applied`:`refused`}function Nw(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 Pw(e){let t=typeof e?.uri==`string`?e.uri:``,n=Number(e?.ts);return Nw(e?.fix,{uri:t,ts:Number.isFinite(n)?n:0})}function Fw(e,t,{max:n=Aw}={}){let r=Pw(t);return r?[r,...e].slice(0,Math.max(0,Math.floor(n))):[...e]}function Iw(e,{max:t=Aw}={}){let n=Array.isArray(e?.fixes)?e.fixes:[],r=[];for(let e of n){let t=Nw(e);t&&r.push(t)}return r.slice(0,Math.max(0,Math.floor(t)))}var Lw=100;function Rw(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 zw(e){let t=Array.isArray(e?.events)?e.events:[],n=[];for(let e of t){let t=Rw(e);t&&n.push(t)}return n}function Bw(e){let t=Number(e?.overflow);return!Number.isFinite(t)||t<=0?0:Math.floor(t)}function Vw(e,t){return[...e].sort((e,t)=>t.seq-e.seq).slice(0,Math.max(0,Math.floor(t)))}function Hw(e,t,{max:n=Lw}={}){let r=zw(t);if(r.length===0)return Vw(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 Vw([...i.values()],n)}function Uw(e,{max:t=Lw}={}){return Vw(zw(e),t)}var Ww=new Map,Gw=new Map,Kw=new Map,qw=XC(),Jw=new Map,Yw=null,Xw=!0,Zw=[],Qw=0,$w=[],eT=null,tT=()=>!1,nT=new Set,rT=xw(Ww,Gw,Kw,$w,qw),iT=Ci(),aT=u({getAck:()=>iT,setAck:e=>{iT=e,wi(e)},signature:()=>rT.signature,isLooking:()=>tT()});function oT(e){for(let t of nT)t(e)}function sT(){rT=xw(Ww,Gw,Kw,$w,qw),rT.signature!==``&&aT.refresh(),eT?.(Sw(rT,iT))}function cT(e){oT(e),sT()}function lT(){return{findingsByUri:Ww,commentsByUri:Gw,handsByUri:Kw,intent:qw,projectNamesById:Jw,isEnabled:Yw,isConnected:Xw,activityEvents:Zw,activityOverflow:Qw,fixEntries:$w}}function uT(e){nT.add(e)}function dT(e){tT=e,sT()}function fT(e){eT=e,sT()}function pT(){rT.signature!==``&&aT.acknowledge(),sT()}function mT(e){Jw=e instanceof Map?e:new Map,oT([`intent`])}function hT(e){Yw=e?.visions?.enabled===!0,oT([`feed`])}function gT(e){Xw=e,oT([`connection`])}function _T(e){$w=Fw($w,e),cT([`fixes`])}function vT(e){Ww=Tw(Ww,e),cT([`feed`])}function yT(e){Gw=Dw(Gw,e),cT([`feed`])}function bT(e){Kw=uw(Kw,e),cT([`feed`])}function xT(e){qw=tw(qw,e),cT([`intent`])}function ST(e){Zw=Hw(Zw,e),Qw=Bw(e),cT([`activity`])}function CT(e){Zw=Uw(e),Qw=0,cT([`activity`])}function wT(e){Ww=Ow(e),Gw=kw(e),Kw=dw(e),qw=$C(e),$w=Iw(e),cT([`intent`,`feed`,`fixes`])}var TT=null,ET=null,DT=!1,OT=null,kT=new Set;function AT(e,t){if(!e||typeof e!=`object`)return!1;let n=e.requestId;return typeof n!=`string`||!t||n===t}function jT(){for(let e of kT)e()}function MT(){return{report:TT,hasReportSendFailed:DT}}function NT(e){kT.add(e)}function PT(e){ET=e}function FT(){if(!ET)return;OT=lt(`hooks-report`);let e=ET({type:`request-hooks-report`,requestId:OT});e!==!DT&&(DT=!e,jT())}function IT(e){AT(e,OT)&&(TT=e,DT=!1,jT())}function LT(){FT()}function RT(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 zT=null,BT=null,VT={},HT=null,UT=null,WT=null,GT=new Map,KT=new Map;function qT(){return BT??=P(()=>import(`./phone-shell-DLbSnQpc.js`).then(e=>{e.mountPhoneShell(VT),WT&&e.orderPhonePanels(WT);for(let[t,n]of GT)e.setPhoneScreenAvailable(t,n);for(let[t,n]of KT)e.setPhoneScreenAttention(t,n);return zT=e,e},e=>(BT=null,T(`phone-shell`,`phone shell failed to load: ${Ye(e)}`),null)),__vite__mapDeps([19,3,4,1,13,12])),BT}function JT(e){VT=e}async function YT(e){let t={options:e};HT=t;let n=await qT();if(HT!==t)return!1;if(!n)return HT=null,UT=null,!1;HT=null,n.activatePhoneShell(t.options);let r=UT;return UT=null,r?.(n),!0}function XT(){HT=null,UT=null,zT?.deactivatePhoneShell()}function ZT(){return HT!==null||(zT?.isPhoneShellActive()??!1)}function QT(){return HT?HT.options?.sessionId??null:zT?.getPhoneSessionId()??null}function $T(e){WT=e,zT?.orderPhonePanels(e)}function eE(e,t){GT.set(e,t),zT?.setPhoneScreenAvailable(e,t)}function tE(e,t){KT.set(e,t),zT?.setPhoneScreenAttention(e,t)}function nE(){zT?.refreshPhoneBoard()}function rE(){zT?.syncPhoneHistory()}function iE(e){return HT?(UT=t=>{e(t)},!0):zT?e(zT):!1}function aE(e){return iE(t=>t.showPhonePlan(e))}function oE(e){return iE(t=>t.showPhoneSession(e))}function sE(e){return iE(t=>t.showPhoneScreen(e))}var cE={MERGE:`a merge commit`,SQUASH:`squash and merge`,REBASE:`rebase and merge`},lE=new Set([`FAILURE`,`ERROR`]);function uE(e){return cE[e]}function dE(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&&lE.has(e.checks.state)?`Checks are failing`:e.stage===`ready`?null:`Not ready to merge yet`:`Closed`}function fE(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 pE(e){let t=de.parse({...e,key:`${e.repo}#${e.number}`,stage:`unknown`});return{...t,stage:fE(t)}}var mE=[`Needs you`,`Waiting`,`Ready to merge`,`Drafts`,`Merged today`],hE=[`Ready to merge`,`Needs you`,`Waiting`,`Drafts`,`Merged today`],gE={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`},_E={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`},vE={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`},yE={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 bE(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 xE(e){return mE[e.rows.reduce((e,{pr:t})=>Math.min(e,mE.indexOf(gE[t.stage])),mE.length-1)]}function SE(e){let t=new Map(mE.map(e=>[e,{title:e,prs:[],rows:[]}]));for(let n of bE(e)){let e=t.get(xE(n));if(e)for(let t of n.rows)e.rows.push(t),e.prs.push(t.pr)}return hE.flatMap(e=>t.get(e)??[])}function CE(e){return _E[e]}function wE(e){return vE[e]}function TE(e){return yE[e]}function EE(e,t){return e.flatMap(e=>{let n=t(e.key);if(!n)return[];let r=e.key.slice(0,e.key.lastIndexOf(`#`));return[{...pE({...n,repo:r}),...e}]})}function DE(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 OE(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 kE=3;function AE(e){if(e.length===1)return{message:`Merged ${e[0].key}`,detailLines:[e[0].title]};let t=e.slice(0,kE).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 jE(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:pE(n).stage}:e};return{...e,drafts:e.drafts.map(n),inFlight:e.inFlight.map(n),queued:e.queued.map(n)}}function ME(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 NE(e){let t=e.viewerThreads;return t!==void 0&&t.total>0&&t.resolved===t.total}function PE(e){return e.status===`posted`&&FE(e)}function FE(e){if(!NE(e)||s(e))return!1;let t=RE(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 IE(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[ME(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(zE(r).length>0||PE(r)){n.actionable.push(r);continue}let e=(r.status===`ready`||r.status===`stale`||r.status===`error`)&&!BE(r);e&&t.noReviewNeeded.push(r),r.status===`ready`&&!e&&n[ME(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 LE(e,t){return e.commit===t?e.isViewer||c.has(e.state):!1}function RE(e){return e.liveHead??e.reviewedHead}function zE(e){return(e.threads??[]).filter(e=>!e.isNit&&!e.isResolved)}function BE(e){return zE(e).length>0?!0:s(e)?!1:FE(e)?!0:!(e.githubReviews??[]).some(t=>LE(t,RE(e)))}function VE(e,t){return`${e}#${t}`}var HE=null,UE=null,WE=new Set;function GE(e){for(let t of WE)t(e)}function KE(){UE=jE(HE,qt),GE({kind:`status`})}function qE(e){WE.add(e)}function JE(){return UE}function YE(){return IE(UE)}function XE(e){let t=d.safeParse(e);t.success?(HE=t.data,KE()):T(`reviews`,`dropped team-review-status: ${Je(t.error.issues)}`)}function ZE(e){GE({kind:`action-result`,message:e})}function QE(e){GE({kind:`open-session-result`,message:e})}function $E(e){GE({kind:`connection`,isConnected:e})}Jt(KE);var eD=20,tD=[],nD=null,rD=!1,iD=0,aD=null;function oD(){return aD??=P(()=>import(`./celebration-player-C3ub9M-X.js`),__vite__mapDeps([20,1,21])).catch(e=>(aD=null,T(`merge-celebration`,`celebration player failed to load: ${Ye(e)}`),null)),aD}function sD(e){return rD?`playing`:e?`queued`:`empty`}function cD(){if(!nD)return;let e=tD.length>0;nD.tray.dataset.state=sD(e),nD.count.textContent=e?String(tD.length):``,nD.button.disabled=rD||!e}function lD(){let e=tD.shift();if(rD=e!==void 0,cD(),!e)return;let t=iD;iD+=1,oD().then(n=>{n?(n.playCelebration(e,t),window.setTimeout(lD,n.CELEBRATION_DURATION_MS)):(tD.unshift(e),rD=!1,cD())})}function uD(e,t,n){nD={tray:e,button:t,count:n},t.addEventListener(`click`,()=>{iD=0,lD()}),cD()}function dD(e){tD.push(e),tD.length>eD&&tD.shift(),cD()}var fD=null,pD=null,mD=new Set,hD=new Map,gD=!1,_D=new Set;function vD(e){for(let t of _D)t(e)}function yD(){return[...hD].flatMap(([e,t])=>{let n=O.get(e);return!n||t.length===0?[]:[{id:e,title:_t(n)||e,links:t}]})}function bD(){let e=EE(fD?.prs??[],qt),t=OE(pD,e);pD=e,wD(t),vD({kind:`prs`})}function xD(){gD||(gD=!0,queueMicrotask(()=>{gD=!1,bD()}))}function SD(e){_D.add(e)}function CD(){return{prs:EE(fD?.prs??[],qt),status:fD,sessionsByPrKey:DE(yD())}}function wD(e){let t=e.filter(e=>!mD.has(e.key));if(t.length!==0){for(let e of t)mD.add(e.key);dD(AE(t))}}function TD(e){hD=e,xD()}function ED(){vD({kind:`session-state`})}function DD(e){let t=p.safeParse(e);t.success?(fD=t.data,bD()):T(`reviews`,`dropped my-prs-status: ${Je(t.error.issues)}`)}function OD(e){vD({kind:`merge-result`,message:e})}function kD(e){vD({kind:`connection`,isConnected:e})}Jt(xD);var AD=[{id:`all`,label:`All`},{id:`reviewing`,label:`Reviewing`},{id:`mine`,label:`Mine`}],jD={turn:`Your turn`,working:`Agent working`,waiting:`Waiting on others`,aside:`Set aside`},MD=[`turn`,`working`,`waiting`,`aside`],ND={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`},PD={directAsk:0,followUp:1,mineNeedsYou:2,teamReady:3,mineReady:4,failedReview:5,staleReview:6};function FD(e,t){return{source:`team`,key:`team:${e.key}`,prKey:fe(e),kind:t,review:e}}function ID(e){return e.status===`ready`?ME(e).band===`blocking-others`?PD.directAsk:PD.teamReady:PD.followUp}function LD(e){return[...e.ready.map(e=>({item:FD(e,`ready`),group:`turn`,turnRank:ID(e)})),...e.attention.map(e=>({item:FD(e,`attention`),group:`turn`,turnRank:e.status===`error`?PD.failedReview:PD.staleReview})),...e.inReview.map(e=>({item:FD(e,`inReview`),group:`working`,turnRank:0})),...e.queued.map(e=>({item:FD(e,`queued`),group:`working`,turnRank:0})),...e.noReviewNeeded.map(e=>({item:FD(e,`settled`),group:`waiting`,turnRank:0})),...e.posted.map(e=>({item:FD(e,`posted`),group:`waiting`,turnRank:0})),...e.discarded.map(e=>({item:FD(e,`discarded`),group:`aside`,turnRank:0}))]}function RD(e,t){let n=ND[e.stage];return n===`turn`&&e.stage!==`ready`&&t.has(fe(e))?`working`:n}function zD(e,t){return SE(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:RD(e,t),turnRank:e.stage===`ready`?PD.mineReady:PD.mineNeedsYou}))}function BD(e,t,n){let r=[...LD(e),...zD(t,n)];return MD.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:jD[e],items:n.map(e=>e.item)}})}function VD(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 HD(e){return e.find(e=>e.id===`turn`)?.items??[]}function UD(e,t){return t?e.flatMap(e=>e.items).find(e=>e.key===t)??null:null}function WD(e,t){return UD(e,t)?t:e.flatMap(e=>e.items)[0]?.key??null}function GD(e){return e.source===`mine`?VE(e.pr.repo,e.pr.number):VE(e.review.repo,e.review.number)}function KD(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 qD(e){return HD(e).map(e=>({id:e.key,kind:KD(e),name:GD(e)}))}function JD(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 YD(e,t){return qD(e).filter(e=>e.id!==t)}function XD({capturedOrder:e,actedKey:t,groups:n}){let r=HD(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 ZD(e,t){let n=HD(e).map(e=>e.key),r=t?n.indexOf(t):-1;return r===-1?``:`${r+1} of ${n.length} in Your turn`}function QD(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 $D(e){return HD(e).map(QD)}function eO({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 tO(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 nO(e){return new Set(e.flatMap(e=>e.items).map(e=>(e.source===`mine`?e.pr.repo:e.review.repo).toLowerCase())).size>1}function rO(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 iO=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 aO(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`:iO.get(e.key)??null}function oO(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 sO=[],cO=null,lO=null,uO=null,dO=!1,fO=null,pO=_i(),mO=yi(),hO=new Set(mO.split(`|`).filter(Boolean)),gO=new Set,_O=new Set;function vO(e){for(let t of _O)t(e)}function yO(e){e!==pO&&(pO=e,vi(e))}function bO(e){e!==mO&&(mO=e,hO=new Set(e.split(`|`).filter(Boolean)),bi(e))}function xO(){return JE()!==null&&CD().status!==null}function SO(){if(!xO())return;let e=eO({turnEntries:$D(sO),acknowledged:pO,unseen:mO,isLooking:lO?.isLooking()??!1});yO(e.acknowledged),bO(e.unseen),fO?.(e.isShown)}function CO(e){uO=e,vO({kind:`reveal`})}function wO(e){_O.add(e)}function TO(e){lO=e,SO()}function EO(){let{prs:e,sessionsByPrKey:t}=CD();return sO=BD(YE(),e,new Set(t.keys())),SO(),sO}function DO(){xO()&&(yO(_e($D(sO))),SO())}function OO(e){fO=e,SO()}function kO(){return mO}function AO(e){return hO.has(e)}function jO(e){return hO.has(e)?(bO(_e([...hO].filter(t=>t!==e))),!0):!1}function MO(e){cO=e}function NO(){return cO}function PO(){let e=uO;return uO=null,e}function FO(e){if(e!==dO){dO=e;for(let e of gO)e()}}function IO(e){gO.add(e)}function LO(){return document.documentElement.dataset.layout===`phone`&&dO}function RO(){LO()&&vO({kind:`return-to-queue`})}function zO(){let e=YD(sO,lO?.selectedKey()??null)[0]?.id??null;return e?(CO(e),!0):!1}function BO(e){let t=sO.flatMap(e=>e.items).find(t=>t.prKey===e.toLowerCase());return!t||!cO?.openReviews()?!1:(CO(t.key),DO(),!0)}qE(e=>{e.kind===`status`&&EO()}),SD(e=>{e.kind===`prs`&&EO()});var VO={OPEN:0,MERGED:1,CLOSED:2};function HO(e){return e?VO[e.state]:VO.OPEN}function UO(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:Ha(void 0)};let i=wE(t.stage);return{key:n,text:r,url:t.url,hoverText:`${e.repo}: ${t.title} (${CE(t.stage)})`,look:{icon:TE(t.stage),tone:i},tier:Ha(i)}}function WO(e,t){let n=e.map(e=>{let n=t(fe(e));return{link:e,pr:n?pE(n):void 0}});return n.sort((e,t)=>HO(e.pr)-HO(t.pr)||t.link.linkedAt-e.link.linkedAt),n.map(({link:e,pr:t})=>UO(e,t))}var GO=new Map;function KO(e){return document.querySelectorAll(`[data-pr-chips-for="${CSS.escape(e)}"]`)}function qO(e){return WO(GO.get(e)??[],qt).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:()=>{BO(e.key)||bo(e.url)}}))}function JO(e,t){let n=Kc(e,e),r=w(`button`,`session-pr-chip-unlink`);r.append(L(Yo)),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(),jt({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:()=>{Vl(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 YO(e,t){e.dataset.prChipsFor=t,Zc(e,qO(t),e=>JO(e,t))}function XO(e){for(let t of e){let e=t.dataset.prChipsFor;e&&YO(t,e)}il()}function ZO(e,t){let n=h.shape.links.safeParse(t??[]);GO.set(e,n.success?n.data:[]),XO(KO(e)),TD(GO)}function QO(e){GO.delete(e),TD(GO)}Jt(()=>XO(document.querySelectorAll(`[data-pr-chips-for]`)));var $O=null,ek=new Set;function tk(){$O?.setAttribute(`aria-pressed`,String(!Fr()))}function nk(e){Ir(e),tk();for(let t of ek)t(e)}function rk(e){ek.add(e)}function ik(e){$O=e,tk(),e.addEventListener(`click`,()=>nk(!Fr()))}var ak={mine:`Mining merged pull requests.`,run:`Starting the run.`,cancel:`Cancelling the run.`},ok=null,sk=null,ck=!0,lk=new Map,uk=new Map,dk=new Set;function fk(){for(let e of dk)e()}function pk(e){dk.add(e)}function mk(){return{status:ok,isServerConnected:ck,pendingActionBySuite:lk,outcomeBySuite:uk}}function hk(e){sk=e}function gk(e,t){sk?.({type:`benchmark-action`,requestId:lt(`benchmark`),suiteId:e,action:t})===!0?(lk.set(e,t),uk.set(e,ak[t]),fk()):(uk.set(e,b),fk())}function _k(e){if(ck=e,!e){for(let e of lk.keys())uk.delete(e);lk.clear()}fk()}function vk(e){ok=e,fk()}function yk(e){lk.delete(e.suiteId);let t=ok?.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.`};uk.set(e.suiteId,e.ok?n[e.action]:e.error||`The server refused the action.`),fk()}var bk=45e3,xk=`The server did not answer within ${bk/1e3} s.`,Sk=`Select the issue to load its description.`,Ck=null,wk=null,Tk=new Map,Ek=null,Dk=new Map,Ok=new Map,kk=new Map,Ak=new Map,jk=new Map,Mk=new Set;function Nk(e){for(let t of Mk)t(e)}function Pk(e){return`${e.key}:${e.updatedAt}`}function Fk(e){let t=Dk.get(e);t&&(Dk.delete(e),Ok.set(t.issueKey,{text:xk,tone:`error`}),Nk(`detail`))}function Ik(e){let t=Dk.get(e);return t?(clearTimeout(t.timeoutHandle),Dk.delete(e),t):null}function Lk(){return{latestStatus:wk,issueByKey:Tk,selectedKey:Ck}}function Rk(e){Mk.add(e)}function zk(e){Ck=e}function Bk(e){return[...Dk.values()].some(t=>t.issueKey===e.key)}function Vk(e){return Ok.get(e.key)}function Hk(e){let t=Pk(e),n=Ak.get(t);return n===``?`No description.`:n??jk.get(t)??`Loading description.`}function Uk(e){let t=Pk(e);if(Ak.has(t)||[...kk.values()].some(e=>e.cacheKey===t))return;let n=lt(`issue-detail`);jk.delete(t),Ek?.({type:`issue-detail`,requestId:n,repo:e.repo,issueNumber:e.number})?kk.set(n,{cacheKey:t,timeoutHandle:setTimeout(()=>{kk.delete(n),jk.set(t,`${xk} ${Sk}`),Nk(`detail`)},bk)}):jk.set(t,`${b} ${Sk}`)}function Wk(e){let t=e.projectId;if(!t||Bk(e))return;let n=lt(`open-issue-session`);Ek?.({type:`open-issue-session`,requestId:n,projectId:t,repo:e.repo,issueNumber:e.number})?(Dk.set(n,{issueKey:e.key,issueNumber:e.number,timeoutHandle:setTimeout(()=>Fk(n),bk)}),Ok.set(e.key,{text:`Opening session.`,tone:`busy`}),Nk(`detail`)):(Ok.set(e.key,{text:b,tone:`error`}),Nk(`detail`))}function Gk(e){Ek?.({type:`dashboard-telemetry`,event:`operator_action`,properties:{surface:`issues`,action:e}})}function Kk(e){Ek=e}function qk(){Nk(`session-state`)}function Jk(e){if(!e){for(let e of Dk.values())clearTimeout(e.timeoutHandle),Ok.set(e.issueKey,{text:b,tone:`error`});Dk.clear();for(let e of kk.values())clearTimeout(e.timeoutHandle),jk.set(e.cacheKey,`${b} ${Sk}`);kk.clear(),Nk(`status`)}}function Yk(e){let t=wk?.issues.find(e=>e.key===Ck);wk=e,Tk=new Map(e.issues.map(e=>[e.key,e]));let n=e.issues.find(e=>e.key===Ck);n&&n.updatedAt!==t?.updatedAt&&Uk(n),Nk(`status`)}function Xk(e){let t=kk.get(e.requestId);t&&(clearTimeout(t.timeoutHandle),kk.delete(e.requestId),e.ok&&e.body!==null&&Ak.set(t.cacheKey,e.body),(!e.ok||e.body===null)&&jk.set(t.cacheKey,e.error||`Could not load description. Select the issue to try again.`),Nk(`detail`))}function Zk(e){if(typeof e.requestId!=`string`)return;let t=Ik(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`;Ok.set(n,{text:`Session "${r}" ${a}.${i}`,tone:`ok`});let o=wk?.issues.find(e=>e.key===n);o&&typeof e.sessionId==`string`&&(o.sessionId=e.sessionId),Nk(`status`);return}let r=typeof e.error==`string`&&e.error?e.error:`Could not open session.`;Ok.set(n,{text:r,tone:`error`}),Nk(`detail`)}var Qk=null,$k=null,eA=null,tA=()=>!1,nA=new Set,rA=new Set,iA=u({getAck:hi,setAck:gi,signature:()=>f({posthog:Qk}),isLooking:()=>tA()});function aA(e){for(let t of rA)t(e)}function oA(){$k?.(iA.refresh())}function sA(){return{latest:Qk,archivedLocally:nA,traceOpener:eA}}function cA(e){rA.add(e)}function lA(e){tA=e,oA()}function uA(e){nA.add(e)}function dA(){iA.acknowledge(),oA()}function fA(e){$k=e,oA()}function pA(e){eA=e}function mA(e){Qk=e,l(Qk,nA),aA({kind:`status`}),oA()}function hA(e){let t=Ce(Qk,e.projectId,e.issueId)?.inFlight===!0;se(Qk,e)&&aA({kind:`investigation-activity`,projectId:e.projectId,issueId:e.issueId,wasInFlight:t})}function gA(e){let t=re(Qk,e);aA({kind:`investigation-finished`,frame:e,isPatched:t}),t&&oA()}var _A=Ra({requestPrefix:`session-setup`,dialogClass:`dialog coherence-journal-drawer session-setup-dialog`,titleText:`Session setup`,unavailableLabel:`Session setup unavailable`,timeoutMs:15e3});function vA(e){let t=w(`ul`,`session-setup-list`);return t.append(...e.map(e=>w(`li`,null,e))),t}function yA(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`),vA(e.skills)),e.agents.length>0&&t.append(w(`p`,`session-setup-label`,`Agents`),vA(e.agents)),t})),n(`MCP servers`,t.mcpServers.length>0?[vA(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?[vA(t.skills)]:[]),n(`Agents`,t.agents.length>0?[vA(t.agents)]:[])}function bA(e){let t=w(`p`,`coherence-journal-status`,`Loading session setup`);t.setAttribute(`role`,`status`);let n=w(`div`,`session-setup-sections`);_A.open({sessionId:e,status:t,body:[t,n],parts:{sections:n},buildRequest:t=>({type:`session-setup`,id:e,requestId:t})})}function xA(e){let t=_A.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;yA(n,e.setup),t.status.textContent=n.childElementCount>0?``:`No session setup recorded yet`,t.status.hidden=n.childElementCount>0}function SA(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 CA={isVisible:document.visibilityState===`visible`,isFrozen:!1,isProbing:!1,isReplacing:!1},wA=document.visibilityState===`visible`?null:Date.now(),TA=null,EA=null;function DA(){TA!==null&&window.clearTimeout(TA),TA=null}function OA(e){DA();let t=Date.now()+e;TA=window.setTimeout(()=>{TA=null,jA({kind:`heartbeat-due`,lateByMs:Date.now()-t})},e)}function kA(){EA!==null&&window.clearTimeout(EA),EA=null}function AA(e){switch(e.kind){case`probe-control`:st(e.deadlineMs,e.isAnnounced).then(e=>{jA({kind:e?`pong`:`pong-missed`})});return;case`replace-control`:ut();return;case`close-sockets`:kA(),dt(),zb();return;case`reconnect-shown-terminals`:Lb();return;case`hold-input`:Pb();return;case`release-input`:Fb();return;case`schedule-heartbeat`:OA(e.inMs);return;case`cancel-heartbeat`:DA();return}}function jA(e){let t=ft(CA,e);CA=t.state;for(let e of t.actions)AA(e)}function MA(){if(document.visibilityState!==`visible`){wA=Date.now(),jA({kind:`hidden`});return}let e=wA===null?0:Date.now()-wA;wA=null,Dg(`shown`,e),jA({kind:`shown`,hiddenForMs:e})}function NA(e){kA(),Tg(`control-${e}`),e===`connecting`?EA=window.setTimeout(()=>{EA=null,jA({kind:`handshake-overdue`})},Xe):jA({kind:e===`opened`?`control-opened`:`control-closed`})}function PA(){Dg(`resumed`,wA===null?0:Date.now()-wA),jA({kind:`resumed`})}function FA(){let e=Reflect.get(navigator,`connection`);e instanceof EventTarget&&e.addEventListener(`change`,()=>{Eg(`link`),jA({kind:`network-changed`})})}function IA(){Ze(NA),document.addEventListener(`visibilitychange`,MA),document.addEventListener(`freeze`,()=>jA({kind:`frozen`})),document.addEventListener(`resume`,PA),window.addEventListener(`pagehide`,e=>{e.persisted&&jA({kind:`frozen`})}),window.addEventListener(`pageshow`,e=>{e.persisted&&PA()}),window.addEventListener(`online`,()=>{Eg(`online`),jA({kind:`network-changed`})}),window.addEventListener(`offline`,()=>Eg(`offline`)),FA()}var LA={},RA=null,zA=null,BA=be,VA=null,HA=!1,UA=null,WA=[],GA=null,KA=()=>null,qA=()=>{},JA=new Set,YA=new Set;function XA(e){for(let t of YA)t(e)}function ZA(e){YA.add(e)}function QA(){return LA}function $A(e){return LA={...LA,...e},LA}function ej(){return{status:RA,journal:zA,request:BA,lastAutoCheckAt:VA,isCheckInFlight:HA,checkSendFailure:UA}}function tj(e){let t=ye(BA,e);t!==BA&&(BA=t,XA({kind:`update`,frame:`request`}))}function nj(){tj(E({type:`update-apply`})?`request-sent`:`request-unsent`)}function rj(){VA=Date.now();let e=E({type:`update-check`});HA=e,UA=e?null:b,XA({kind:`update`,frame:`request`})}function ij(e){qA=e}function aj(){qA()}function oj(e){WA=[...e]}function sj(){return WA}function cj(e=null,t=null,n=null){let r=GA!==null&&(GA.sectionId!==null||GA.isLink);e===null&&n===null&&r||(GA={sectionId:e,settingId:t,hashAtRequest:n??location.hash,isLink:n!==null},XA({kind:`activate`}))}function lj(){let e=GA;return GA=null,e}function uj(e){KA=e}function dj(){for(let e of JA)e()}function fj(e){JA.add(e)}function pj(){return vu()&&KA()===`section`}function mj(){pj()&&XA({kind:`return-to-list`})}function hj(e){e&&(LA=e,Wi(LA.agentLogins),XA({kind:`broadcast`}))}function gj(){XA({kind:`status`})}function _j(e){gj()}function vj(e){RA=e,HA=!1,UA=null,BA=ye(BA,`status-frame`),XA({kind:`update`,frame:`status`})}function yj(e){zA=e,BA=ye(BA,`progress-frame`),XA({kind:`update`,frame:`progress`})}function bj(e){if(e.scope!==`update`)return!1;let t=oe(e.message),n=BA.requested;return BA=ye(BA,`error-frame`,t),HA=!1,n||(UA=t),XA({kind:`update`,frame:`error`}),!0}function xj(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 Sj=200;function Cj(e,t=null){return`#settings/${encodeURIComponent(e)}${t?`/${encodeURIComponent(t)}`:``}`}function wj(e){return/^#settings(?:[/?]|$)/.test(e)}function Tj(e){let t=e.trim();return t?`#settings?q=${encodeURIComponent(t)}`:`#settings`}function Ej(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,Sj).join(``).trim()}}function Dj(e,t,n){let r=w(`a`,`settings-link`,n);return r.href=Cj(e,t),r}var Oj=!1,kj=!1,Aj=!1,jj=null,Mj=null;function Nj(){return Mj??=P(()=>import(`./nyan-cat-DhAjaQ--.js`).then(e=>e.r).then(e=>(jj=e,e),e=>(Mj=null,T(`flying-animals`,`nyan cat failed to load: ${Ye(e)}`),null)),__vite__mapDeps([22,15,1])),Mj}function Pj(e){!Aj||e.currentFlightBlockReason(!0)?e.stopNyanCat():e.startNyanCat()}function Fj(){kj=!0,Ij(Yr())}function Ij(e){let t=document.documentElement;Oj||(Oj=!0,yu(()=>Ij(Yr())),window.matchMedia(`(prefers-reduced-motion: reduce)`).addEventListener(`change`,()=>Ij(Yr()))),Aj=e,e?(t.dataset.flyingAnimals=`true`,jj?Pj(jj):kj&&Nj().then(e=>{e&&Pj(e)})):(delete t.dataset.flyingAnimals,jj?.stopNyanCat())}var Lj=`•`.repeat(8),Rj=`[^/\\\\\\s"'\`<>:]+`,zj=RegExp(`(?<![\\w./\\\\-])(?:/home/${Rj}|/Users/${Rj}|[A-Za-z]:[\\\\/]Users[\\\\/]${Rj}|/root(?![\\w.-]))`,`g`);function Bj(e){let t=nv(e);if(t.length===0)return e;let n=``,r=0;for(let i of t)n+=e.slice(r,i.start)+Lj,r=i.end;return n+e.slice(r)}function Vj(e){return e.replace(zj,`~`)}function Hj(e){return Vj(Bj(e))}var Uj=`.xterm, input, textarea, script, style, [contenteditable]:not([contenteditable="false"])`,Wj=[`title`,`label`],Gj=new WeakMap,Kj=new WeakMap,qj=null;function Jj(e){let t=e instanceof Element?e:e.parentElement;return!t||t.closest(Uj)!==null}function Yj(e){let t=e.parentElement?.closest(`option`);return t!=null&&!t.hasAttribute(`value`)}function Xj(e,t){if(t&&e===t.masked)return t;let n=Hj(e);return n===e?null:{original:e,masked:n}}function Zj(e){let t=Yj(e)?null:Xj(e.data,Gj.get(e));t?(Gj.set(e,t),e.data!==t.masked&&(e.data=t.masked)):Gj.delete(e)}function Qj(e,t){let n=e.getAttribute(t),r=Kj.get(e),i=n===null?null:Xj(n,r?.get(t));if(!i){r?.delete(t);return}let a=r??new Map;a.set(t,i),Kj.set(e,a),n!==i.masked&&e.setAttribute(t,i.masked)}function $j(e){for(let t of Wj)Qj(e,t)}function eM(e){return e instanceof Element&&e.matches(Uj)?NodeFilter.FILTER_REJECT:NodeFilter.FILTER_ACCEPT}function tM(e){$j(e);let t=document.createTreeWalker(e,NodeFilter.SHOW_ELEMENT|NodeFilter.SHOW_TEXT,eM);for(let e=t.nextNode();e;e=t.nextNode())e instanceof Text&&Zj(e),e instanceof Element&&$j(e)}function nM(e){Jj(e)||(e instanceof Text&&Zj(e),e instanceof Element&&tM(e))}function rM(e){e instanceof Element&&!Jj(e)&&$j(e)}function iM(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&&nM(e);for(let e of n)e.isConnected&&rM(e)}function aM(e){let t=document.createTreeWalker(e,NodeFilter.SHOW_ELEMENT|NodeFilter.SHOW_TEXT);oM(e);for(let e=t.nextNode();e;e=t.nextNode())oM(e)}function oM(e){if(e instanceof Text){let t=Gj.get(e);t&&e.data===t.masked&&(e.data=t.original);return}if(!(e instanceof Element))return;let t=Kj.get(e);if(t)for(let[n,r]of t)e.getAttribute(n)===r.masked&&e.setAttribute(n,r.original)}function sM(){if(qj)return;let e=new MutationObserver(t=>{iM(t),e.takeRecords()});tM(document.body),e.observe(document.body,{childList:!0,subtree:!0,characterData:!0,attributes:!0,attributeFilter:Wj}),qj=e}function cM(){qj&&(qj.disconnect(),qj=null,aM(document.body),Gj=new WeakMap,Kj=new WeakMap)}function lM(e){e?sM():cM()}function uM(){lM(cv()),uv(lM)}function dM(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 fM(e){return typeof e!=`object`||!e||!(`telemetryForcedOff`in e)?!1:e.telemetryForcedOff===!0}function pM(e,t){return t||fM(e)?!1:dM(e)}var mM=2500;function hM({hasSnapshot:e,connectingTerminalCount:t,msSinceConnected:n}){return n<2500&&(!e||t>0)?`wait`:`reveal`}function gM(e){return g(Number(e)||0,{rounding:`round`,wording:`compact`,suffix:``,justNowBelowSeconds:0})}function _M(e){return typeof e!=`number`||!Number.isFinite(e)||e<=0?`never`:`${gM(Date.now()-e)} ago`}var vM=e=>`polled ${_M(e)}`;function yM(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=vM){let a={el:e,ts:n,format:r};i(a),t.push(a)},onTick(e){n.push(e)},reset(){t=[],n=[]},ensure(){r||=zt(a)}}}var bM=2e4,xM=null,SM=null,CM={claude:null,codex:null},wM=null,TM=null,EM=null,DM=`all`,OM=!1,kM=null,AM=null,jM=!0,MM=()=>!1,NM=new Set,PM=u({getAck:xi,setAck:Si,signature:()=>gh(xM,CM.claude),isLooking:()=>MM()});function FM(e){for(let t of NM)t(e)}function IM(){wM?.(PM.refresh())}function LM(e){OM=e,FM(`refresh-status`),kM&&=(clearTimeout(kM),null),e&&(kM=setTimeout(()=>{kM=null,OM=!1,AM=`Usage did not answer within ${Math.round(bM/1e3)} s. Refresh to try again.`,FM(`refresh-status`)},bM))}function RM(e){let t=$m.find(t=>t.value===e);return t?t.days:null}function zM(){return{report:xM,sessions:SM,planLimitsByVendor:CM,rangeValue:DM}}function BM(){let e=!jM||!OM&&AM!==null;return jM?OM?{text:`Refreshing`,isPending:!0,hasFailure:e}:{text:AM??``,isPending:!1,hasFailure:e}:{text:xM?`${b} The figures below are from before the connection dropped.`:b,isPending:OM,hasFailure:e}}function VM(e){NM.add(e)}function HM(e){MM=e,IM()}function UM(){PM.acknowledge(),IM()}function WM(e){wM=e,IM()}function GM(e){TM?.({type:`dashboard-telemetry`,event:`operator_action`,properties:{surface:`usage`,action:e}})}function KM(e){TM=e}function qM(e){DM=e}function JM({force:e=!1}={}){if(!TM)return;EM=lt(`usage`);let t={type:`request-usage-report`,requestId:EM};e&&(t.force=!0);let n=RM(DM);n!==null&&(t.days=n),AM=null,LM(!0),!TM(t)&&(AM=b,LM(!1))}function YM(e){jM=e,FM(`refresh-status`)}function XM(e){SM=e,FM(`sessions`)}function ZM(e){let t=e;CM={...CM,[ph(t)]:t},FM(`plan-limits`),IM()}function QM(e){Sh(e,EM)&&(AM=null,LM(!1),xM=e,FM(`report`),IM())}function $M(){let e=xM?.pricing||(SM?{source:SM.pricingSource}:null),t=vh(e?.fetchedAt),n=[_h(e,t!==null&&t>0?_M(t):``)],r=xh(xM);r&&n.push(r);let i=bh(xM?.scan);return i&&n.push(i),n}var eN={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},tN=[{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 nN(e,t){return t.isPhoneShellActive?t.phoneScreen===e:t.activeView===e}function rN(e,t){return e.flatMap(e=>!e.gate||!(`fromSettings`in e.gate)?[]:[{view:e,isAvailable:e.gate.fromSettings(t)}])}function iN(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 aN(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 oN(e){return{isActive:e===!0||typeof e==`string`,level:typeof e==`string`?e:null}}function sN(e,t,n){t&&e?.refreshOn?.includes(n)&&t.refresh?.(n)}function cN(e,t,n,r){for(let i of e)nN(i.view,t)&&sN(i,r(i.view),n)}function lN(){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 uN(e,t,n){let r=Number(e);return!e||!Number.isFinite(r)||t-r>n}var dN=`glimmervoid:preload-error-reload-at`,fN=3e4,pN=1e3,mN=lN();function hN(e,t){let n=mN.mountedModuleOf(e.view);n?t(n):mN.show(e).then(t).catch(t=>{throw T(`view`,`${e.view} failed to show: ${Ye(t)}`),t})}function gN(e){return mN.mountedModuleOf(e)}function _N(e){mN.mountEagerViews(e)}function vN(e){let t=()=>{mN.prefetch(e.filter(e=>!e.tab.hidden))};`requestIdleCallback`in window?window.requestIdleCallback(t):setTimeout(t,pN)}function yN(e){let t=Date.now();uN(e.getItem(dN),t,fN)&&(e.setItem(dN,String(t)),location.reload())}function bN(e){window.addEventListener(`vite:preloadError`,()=>yN(e()))}function xN(e,t){fetch(e,{method:`HEAD`,cache:`no-store`}).then(e=>{e.status===404&&yN(t())}).catch(()=>{})}function SN(e){MO({openTerminal:e.openTerminal,openReviews:e.openReviews}),ij(e.onRestart);let t=[{view:`focus`,label:`Focus`,panelClass:`focus-view`,hasOwnPhoneScreen:!0,hasPanelChrome:!1,hasReviewSidebar:!0,module:{mount:()=>pC({rail:document.getElementById(`focus-rail`),center:document.getElementById(`focus-center`),resizer:document.getElementById(`focus-rail-resizer`)}),activate:HC,deactivate:GC}},{view:`prs`,label:`Reviews`,glyph:`⇅`,panelClass:`pr-view`,gate:{fromSettings:eN.teamReview},load:()=>P(()=>import(`./review-queue-panel-sogJ-wbx.js`).then(e=>e.view),__vite__mapDeps([23,3,4,1,2,7,24,13,25])),refreshOn:[`shown`],attention:{subscribe:OO,acknowledge:DO},onConnectionChange:e=>{kD(e),$E(e)}},{view:`issues`,label:`Issues`,glyph:`#`,panelClass:`issues-view`,gate:{fromSettings:eN.issues},load:()=>P(()=>import(`./issues-panel-CGFsmQwr.js`).then(e=>e.view),__vite__mapDeps([26,3,4,1,13,24,2,7,27])),refreshOn:[`shown`],onConnectionChange:Jk},{view:`usage`,label:`Usage`,glyph:`◔`,panelClass:`usage-view`,gate:{fromSettings:eN.usage},load:()=>P(()=>import(`./usage-panel-DS4fp99z.js`).then(e=>e.view),__vite__mapDeps([28,3,4,1,29])),attention:{subscribe:WM,acknowledge:UM},onConnectionChange:YM,refreshOn:[`shown`,`connected`,`usage-sessions`]},{view:`radar`,label:`Radar`,glyph:`◎`,panelClass:`radar-view`,gate:{fromSettings:eN.posthog},load:()=>P(()=>import(`./radar-panel-ZX8G9OCD.js`).then(e=>e.view),__vite__mapDeps([30,3,4,1,2,7,11,12,13,5,10,31])),attention:{subscribe:fA,acknowledge:dA}},{view:`visions`,label:`Visions`,glyph:`◇`,panelClass:`visions-view`,gate:{fromSettings:eN.visions},load:()=>P(()=>import(`./visions-panel-O9dWuSmt.js`).then(e=>e.view),__vite__mapDeps([32,3,4,1,33])),attention:{subscribe:fT,acknowledge:pT},refreshOn:[`shown`],onConnectionChange:gT},{view:`hooks`,label:`Hooks`,glyph:`◈`,panelClass:`hooks-view`,load:()=>P(()=>import(`./hooks-panel-esfJMItp.js`).then(e=>e.view),__vite__mapDeps([34,4,3,1,2,7,35])),refreshOn:[`shown`,`connected`,`hooks-updated`]},{view:`trace`,label:`Trace`,panelClass:`trace-view`,gate:{subscribe:sc},load:()=>P(()=>import(`./trace-panel-fzO0o4nU.js`).then(e=>e.view),__vite__mapDeps([36,3,4,1,37])),refreshOn:[`shown`],onAvailabilityChange:e=>pA(e?Km:null),onConnectionChange:Zm},{view:`benchmarks`,label:`Bench`,panelClass:`bench-view`,gate:{fromSettings:eN.benchmarks},load:()=>P(()=>import(`./benchmark-panel-CEdfPEgm.js`).then(e=>e.view),__vite__mapDeps([38,3,4,1,39])),onConnectionChange:_k},{view:`settings`,label:`Settings`,glyph:`@`,panelClass:`settings-view`,hasPanelChrome:!1,load:()=>P(()=>import(`./settings-panel-chP3FMVF.js`).then(e=>e.view),__vite__mapDeps([40,3,4,1,2,7,21,11,12,13,5,10,22,15,41]))}],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}=oN(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}Vg(qr()),Hg(()=>{P(()=>import(`./alert-sound-a-r-xMzC.js`).then(e=>e.playNyanJingle(),e=>T(`alert-sound`,`nyan jingle failed to load: ${Ye(e)}`)),[])}),Ug(Vr()),Ij(Yr()),_u(),So(document);var CN=S(document,`#connection-status`,`span`),wN=S(CN,`.connection-label`,`span`),TN=S(document,`#loading-screen`,`div`),EN=S(document,`#loading-status`,`div`),DN=S(document,`#loading-detail`,`div`),ON=S(document,`#shutdown-screen`,`div`),kN=S(document,`#shutdown-status`,`div`),AN=!1,jN=null,MN=!1;function NN(){let e=Vi(),t=TN.querySelector(`.loading-spinner`);e&&t&&t.replaceWith(Bi(e,`loading-animal`))}NN();function PN(){AN||jN===null||hM({hasSnapshot:MN,connectingTerminalCount:gb(),msSinceConnected:performance.now()-jN})===`reveal`&&FN()}hb(PN);function FN(){if(AN)return;AN=!0,TN.classList.add(`fade-out`),vN(Q),Fj(),aa();let e=()=>TN.remove();TN.addEventListener(`transitionend`,e,{once:!0}),setTimeout(e,1e3)}function IN(e,t){CN.dataset.state=`shutdown`,wN.textContent=e,CN.title=e,MP.disabled=!0,kN.textContent=t,ON.classList.add(`active`)}var LN=new Set([`disconnected`,`connecting`]);function RN(e,t,n){CN.dataset.state=e,CN.toggleAttribute(`data-reconnected`,n),wN.textContent=t,CN.title=t}function zN(e,t){RN(e,t,e===`connected`&&LN.has(CN.dataset.state??``))}function BN(e,t){CN.dataset.state!==`shutdown`&&RN(e===`verified`?`connected`:e,t,!1)}var VN=1e4,HN=`Server`,UN=`Worktree`,WN=`Worktree warning`,GN=`The server is not answering. Check the terminal running Glimmervoid for errors, or start it again with glimmervoid. This page reconnects on its own.`,KN=`Server not answering. Check the Glimmervoid terminal for errors, or run glimmervoid. This page retries on its own.`,qN=null,JN=!1;function YN(){EN.textContent=`Reconnecting to server...`,DN.textContent=KN,DN.hidden=!JN}function XN(){qN=null,JN=!0,AN?R({source:HN,message:GN,hidesInStreamerMode:!1}):YN()}function ZN(){qN!==null||JN||(qN=window.setTimeout(XN,VN))}function QN(){qN!==null&&window.clearTimeout(qN),qN=null,JN=!1,DN.hidden=!0,Ds(HN)}tt((e,t)=>{if(e===`connecting`||e===`verified`)BN(e,t);else{zN(e,t),kx(e===`connected`);for(let t of Q)t.onConnectionChange?.(e===`connected`);if(e===`connected`){if(QN(),xN(import.meta.url,()=>window.sessionStorage),XP&&ZP(XP),ON.classList.contains(`active`)){location.reload();return}ia(),document.body.classList.add(`app-ready`),!AN&&jN===null&&(jN=performance.now(),EN.textContent=`Connecting to sessions...`,setTimeout(FN,mM)),PN(),CF(),mP(`connected`),et(`get-settings`,{}).then(e=>{e.settings&&(nF(e.settings),on()===`settings`&&LP(location.hash))}).catch(()=>{})}else e===`disconnected`&&ON.classList.contains(`active`)?kN.textContent=`Waiting for server...`:(ZN(),AN||YN())}});function $N(){qk(),ED(),nE()}function eP(){TC(),$N()}Da(()=>TC()),zo(e=>{TC(e),$N()});var tP=null;function nP(e){let t=xj(tP,e);tP=t.knownBuild,t.reload&&location.reload()}function rP(e){mT(new Map(e.filter(e=>!e.ephemeral).map(e=>[e.id,e.name]))),_j(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){Qa(t.id,t.coherenceHooks),t.ephemeral||Cl(t.path),ZO(t.id,t.linkedPrs);let e=mx(t.id);e&&Qx(t.id,t.state,t.stateSince),e&&xc(t.id,!!t.saneYolo),e&&Nx(t.id,t.isGuarded,t.isGuardrailsReleased),e||bx(t.id,t.name,t.state,SA(t)),qx(t.id,t.failureReason),px(t.id,t.taskTitle,t.taskTitleIsCustom),jx(t.id,t.agent),Vx(t.id,t.mergeStatus,t.mergeReason),Ax(t.id,t.effectiveBase),Fx(t.id,t.activeAgents,t.awaitingBackgroundTasks),Lx(t.id,t.pendingPromptKind),Rx(t.id,t.unseenOutcome),wx(t.id,t.hasPlan),pP(t.id)}yx(),Mo(A.counts),TC(),WC(),$N(),iP(),BP(location.hash),wF(),MN=!0,PN()}function iP(){qm([...O].map(([e,t])=>({id:e,name:_t(t)||e})))}function aP(e,t){wx(e,t?.hasPlan===!0),Rx(e,t?.unseenOutcome),pP(e)}var oP=new Set([x.DONE,x.FAILED]);function sP(e,t){return e!==void 0&&oP.has(e)&&!oP.has(t)&&t!==x.DORMANT}function cP(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;Wx(e.id),bx(e.id,e.session,x.DORMANT,SA({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})),jx(e.id,t?.agent),aP(e.id,t)}function lP(e,t){let n=O.get(String(e.id))?.currentState;t.to===x.DORMANT&&n!==x.DORMANT?(cP(e),qf(e.id)):(Qx(e.id,t.to,e.timestamp,t.event),qx(e.id,e.failureReason),e.saneYolo!==void 0&&xc(e.id,e.saneYolo),qf(e.id),sP(n,t.to)&&Ib(e.id))}function uP(e){if(mx(e.id))e.transition&&lP(e,e.transition),e.activeAgents!==void 0&&Fx(e.id,e.activeAgents,e.awaitingBackgroundTasks),e.unseenOutcome!==void 0&&Rx(e.id,e.unseenOutcome),e.pendingPromptKind!==void 0&&Lx(e.id,e.pendingPromptKind),e.unseenOutcome!==void 0&&yx(),Mo(A.counts),Bo(e.id),Uc(e.id);else{if(!e.transition)return;bx(e.id,e.session,e.transition.to,SA({skipPerms:e.skipPerms,saneYolo:e.saneYolo,stateSince:e.timestamp})),Mo(A.counts),qk()}}var dP=new Map;function fP(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};dP.set(n.id,e),Ix(n.id,e)}for(let e of[...dP.keys()])t.has(e)||(dP.delete(e),Ix(e,null))}function pP(e){let t=dP.get(e);t&&Ix(e,t)}KM(E),PT(E),Wm(E),Kk(E),hk(E),uc(YO),tl(no),tl(qO),fc({isReadable:ro,open:ao}),mc(bA);function mP(e){cN(Q,{isPhoneShellActive:ZT(),activeView:on(),phoneScreen:j.snapshot().phoneScreen},e,gN)}uv(()=>mP(`settings-updated`));var hP={snapshot:e=>{nP(e.serverBuild),rP(e.sessions)},"hooks-report":e=>IT(e),"save-hook-result":()=>LT(),"delete-hook-result":()=>LT(),"session-status":e=>uP(e),"session-added":e=>{e.ephemeral||Cl(e.path),ZO(e.id,e.linkedPrs),mx(e.id)||(bx(e.id,e.session,e.state,SA(e)),jx(e.id,e.agent),pP(e.id)),Mo(A.counts),eP(),iP()},"session-close-confirm":e=>{eu(e.id)},"session-removed":e=>{Os(e.id),Wx(e.id),$a(e.id),Yf(e.id),QO(e.id),Mo(A.counts),eP(),iP()},"session-title":e=>{px(e.id,e.taskTitle,e.isCustom),eP()},"session-prs":e=>ZO(e.id,e.linkedPrs),"session-renamed":e=>{Ux(e.id,e.newName),eP(),iP()},"session-modified":e=>{e.ephemeral||Cl(e.path);let t=O.get(String(e.id)),n=B()===String(e.id);Qa(e.id,null),Wx(e.id),Yf(e.id),ZO(e.id,e.linkedPrs),bx(e.id,e.session,e.state,SA(e)),n&&Fl(String(e.id)),jx(e.id,e.agent),aP(e.id,t),Mo(A.counts),eP(),iP()},"session-git":e=>Mx(e.id,!!e.worktree),"session-merge-status":e=>{Bx(e.id,e.mergeStatus,e.reason),LC(e.id,e.mergeStatus),$N()},"session-worktree-blocked":e=>{R({source:UN,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:WN,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=>{Ds(UN,e.id),Ax(e.id,e.base)},"session-diff":e=>{Hx(e.id,e)},"session-diff-error":e=>{Hf(e.id,e.message)},"change-map":e=>Uf(e.id,e.map),"branch-sync-status":e=>Wf(e.id,e),"session-changed":e=>Kf(e.id),"debug-state-response":e=>Hc(e),"session-trace-response":e=>Jm(e),"session-trace-changed":e=>Ym(e),"session-plan-changed":e=>{Tx(e),$N()},"session-plan-draft":e=>{Ex(e)},"session-plan-response":e=>{Dx(e)},"session-docs-changed":e=>ha(e),"session-docs-snapshot":e=>ga(e),"session-shown":e=>Fa(e),"session-shown-snapshot":e=>Ia(e),"session-coherence-hooks":e=>{Qa(e.id,e.coherenceHooks),eP()},"session-coherence":e=>{eo(e),eP()},"session-coherence-snapshot":e=>{to(e),eP()},"session-coherence-journal-response":e=>oo(e),"session-setup-response":e=>xA(e),notify:e=>{$h(e),Uc(e.session)},"update-status":e=>{SP(e),vj(e)},"update-progress":e=>yj(e.journal),"post-turn-leftovers":e=>wP(e),error:e=>{let t=bj(e),n=Xm(e),r=Ox(e);t||n||r||(e.id?Kx(e.id,e.message):R({source:HN,message:e.message}))},"session-error":e=>{zf(e.id),!Ox(e)&&Kx(e.id,e.message)},"settings-updated":e=>{e.settings&&nF(e.settings),ia()},"agent-logins":e=>Wi(e.logins),"health-snapshot":e=>{e.stats&&zu(e.stats)},"radar-status":e=>mA(e),"radar-investigation-activity":e=>hA(e),"radar-investigation-finished":e=>gA(e),"team-review-status":e=>XE(e),"github-prs":e=>Kt(e),"my-prs-status":DD,"benchmark-status":e=>vk(e),"benchmark-action-result":e=>yk(e),"my-pr-merge-result":e=>OD(e),"team-review-action-result":e=>ZE(e),"open-team-review-session-result":e=>QE(e),"issues-status":e=>Yk(e),"issue-detail-result":e=>Xk(e),"open-issue-session-result":e=>Zk(e),"usage-sessions":e=>{fP(e.sessions),XM(e)},"usage-report":e=>{QM(e),gj()},"plan-limits":e=>ZM(e),"usage-budget-alert":e=>$h({session:`budget-${e.scope}-${e.periodKey}`,category:`threshold-${e.threshold}`,message:e.text,ignoreFocus:!0}),"visions-findings":e=>vT(e),"visions-comments":e=>yT(e),"visions-hand":e=>bT(e),"visions-intent":e=>xT(e),"visions-fix":e=>_T(e),"visions-snapshot":e=>wT(e),"ingest-activity":e=>ST(e),"ingest-snapshot":e=>CT(e),"client-trust":e=>_F(e.trust),"shutting-down":()=>IN(`Shutting down...`,`Shutting down sessions...`),restarting:()=>IN(`Restarting...`,`Restarting server...`)};function gP(e){let t=hP[e.type];t&&t(e)}it(e=>{gP(e),mP(e.type)});var _P,vP=null;function yP(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 bP=Dj(ce,me,`Update`).href;function xP(e){let{latestSha:t,latest:n}=e;return typeof n==`string`&&n?n:typeof t==`string`&&t?t:null}function SP(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=xP(e),s=o&&n===`restart`?`${o}:ready`:o;if(a&&i===vP||!a&&_P!==void 0&&s===_P||!a&&s&&di()===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=bP,l.hidden=n!==`link`;let u=S(document,`#update-banner-restart`,`button`);u.hidden=n!==`restart`,u.onclick=gF;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,yP(f,p,c),S(document,`#update-banner-dismiss`,`button`).onclick=()=>{t.hidden=!0,a?vP=i:(_P=s,fi(s))}}var CP=!1;function wP({repositories:e,command:t}){let n=S(document,`#post-turn-leftovers-banner`,`div`);if(e.length===0){n.hidden=!0;return}if(CP)return;let r=S(document,`#post-turn-leftovers-copy-status`,`span`);S(document,`#post-turn-leftovers-text`,`span`).textContent=en(e.length),S(document,`#post-turn-leftovers-cmd`,`code`).textContent=t,r.textContent=``,n.hidden=!1,yP(S(document,`#post-turn-leftovers-copy`,`button`),r,t),S(document,`#post-turn-leftovers-dismiss`,`button`).onclick=()=>{CP=!0,n.hidden=!0}}var TP=S(document,`#telemetry-banner`,`div`);function EP(){mi(!0),TP.hidden=!0}function DP(e){TP.hidden=!pM(e,pi())}var OP=S(document,`#telemetry-banner-settings`,`a`);OP.href=Dj(`privacy`,`telemetry-enabled`,`What's collected`).href,OP.addEventListener(`click`,EP),S(document,`#telemetry-banner-dismiss`,`button`).addEventListener(`click`,EP),S(document,`#btn-add-session-header`,`button`).addEventListener(`click`,Kl);var kP=S(document,`#btn-mute`,`button`);ik(kP);var AP=S(document,`#btn-streamer`,`button`);hv(AP),uM();var jP=S(document,`#power-menu`,`div`),MP=S(document,`#btn-power`,`button`),NP=S(document,`#power-menu-dropdown`,`div`);function PP(e){jP.classList.toggle(`open`,e),MP.setAttribute(`aria-expanded`,String(e))}MP.addEventListener(`click`,e=>{e.stopPropagation(),PP(!jP.classList.contains(`open`))}),zs({trigger:MP,menu:NP,menuItems:()=>[...NP.querySelectorAll(`[role="menuitem"]`)].filter(e=>!e.hidden),isOpen:()=>jP.classList.contains(`open`),open:()=>PP(!0),close:()=>PP(!1)}),document.addEventListener(`click`,e=>{e.target instanceof Node&&(jP.contains(e.target)||PP(!1))}),Re(document.querySelector(`.header`));function FP(e){e&&cj(e),!sE(`settings`)&&$(`settings`,{section:e})}function IP(){wj(location.hash)&&history.replaceState(history.state,``,`${location.pathname}${location.search}`)}function LP(e){return wj(e)?(cj(null,null,e),sE(`settings`)||$(`settings`,{persist:!1}),!0):!1}var RP=`No plan is stored for this session yet. It appears here once the agent writes one.`,zP=`Plan`;function BP(e){let t=Hu(e);return t?!mx(t)||(history.replaceState(history.state,``,`${location.pathname}${location.search}`),ZT()?(aE(t)||R({source:zP,sessionId:t,message:RP}),!0):($(`focus`,{persist:!1}),zC(t)||R({source:zP,sessionId:t,message:RP}),!0)):!1}function VP(e){return BP(e)?!0:LP(e)}function HP(e){e.newURL===location.href&&VP(location.hash)}document.addEventListener(`click`,e=>{if(!ZT()||e.defaultPrevented)return;let t=e.target instanceof Element?e.target.closest(`a[href^="#"]`):null;t instanceof HTMLAnchorElement&&VP(t.hash)&&e.preventDefault()}),uD(S(document,`#celebration-tray`,`div`),S(document,`#btn-celebrations`,`button`),S(document,`#celebration-tray-count`,`span`)),S(document,`#btn-help`,`button`).addEventListener(`click`,()=>{FP(`browser-shortcuts`)});var Q=SN({onRestart:gF,openTerminal:e=>{oE(e)||($(`focus`),RC(e))},openPlan:e=>{$(`focus`),zC(e)},openReviews:()=>KP(`prs`)?(sE(`prs`)||$(`prs`),!0):!1,setPhoneAttention:tE});function UP(){return Q.map(e=>e.view)}var WP=UP();oj(Q),Pf({panel:document.getElementById(`review-sidebar`)}),_N(Q);function GP(e){return Q.find(t=>t.view===e)}function KP(e){return Q.some(t=>t.view===e&&!t.tab.hidden)}var qP=!0,JP=null;function YP(e){GP(e)?.attention?.acknowledge()}var XP=null;function ZP(e){XP=E({type:`dashboard-telemetry`,event:`view_shown`,properties:{view:e}})?null:e}function QP(e){let t=GP(e);t&&(hN(t,e=>sN(t,e,`shown`)),ZP(e))}function $(e,{section:t,setting:n,persist:r=!0}={}){let i=GP(e);if(!i||!KP(e))return;let a=on();j.dispatch(`setActiveView`,e),qP=r,r&&(JP=null),document.body.dataset.activeView=e,document.body.dataset.reviewSidebarHidden=String(i.hasReviewSidebar!==!0),r&&Qr(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&&gN(a)?.deactivate?.(),hN(i,r=>{on()===e&&(r.activate?.(),sN(i,r,`shown`),e===`settings`&&t&&cj(t,n??null))}),ZP(e),a===`settings`&&e!==`settings`&&IP(),YP(e)}function $P(e,t){let{view:n}=e;e.tab.hidden=!t,eE(n,t),e.onAvailabilityChange?.(t),!ZT()&&(!t&&on()===n&&$(`focus`),t&&JP===n&&$(n))}function eF(e){for(let{view:t,isAvailable:n}of rN(Q,e))$P(t,n)}function tF(e){let t=iN(WP,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)),$T(t))}function nF(e){Wg(e.isExperimentalBuild===!0&&Ur()),gx(e),hj(e),hT(e),eF(e),DP(e),tF(e.viewTabOrder),lv(e.streamerMode===!0)}for(let e of Q)e.gate&&($P(e,!1),`subscribe`in e.gate&&e.gate.subscribe(t=>$P(e,t)));Gm(()=>{KP(`trace`)&&(sE(`trace`)||$(`trace`))});function rF(){return Q.filter(e=>!e.tab.hidden)}function iF(e,t){let n=e[t];return $(n.view),n.tab}function aF(e,t){let n=rF();return iF(n,js(n.findIndex(t=>t.view===e),t,n.length))}function oF(e){Q.some(e=>e.tab===document.activeElement)&&e.focus()}var sF=null;function cF(e){let t=UP();tF(e),et(`update-settings`,{settings:{viewTabOrder:e}}).then(e=>{e.type===`settings-error`&&tF(t)}).catch(()=>tF(t))}function lF(e){let t=sF;if(sF=null,!t||t===e)return;let n=UP();cF(aN(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=>{sF=t,e.dataTransfer?.setData(`text/plain`,t),e.dataTransfer&&(e.dataTransfer.effectAllowed=`move`)}),n.addEventListener(`dragover`,e=>{sF&&sF!==t&&(e.preventDefault(),n.dataset.dropTarget=`true`)}),n.addEventListener(`dragleave`,()=>delete n.dataset.dropTarget),n.addEventListener(`drop`,e=>{e.preventDefault(),delete n.dataset.dropTarget,lF(t)}),n.addEventListener(`dragend`,()=>{sF=null}),n.addEventListener(`keydown`,e=>{if(e.metaKey||e.altKey||e.ctrlKey||e.shiftKey)return;let t=rF(),n=t.findIndex(e=>e.view===on()),r=Ms(e.key,n,t.length,`horizontal`);r!==null&&(e.preventDefault(),iF(t,r).focus())})}var uF=Zr(),dF=wj(location.hash),fF=Hu(location.hash);if(dF&&(cj(null,null,location.hash),$(`settings`,{persist:!1})),fF&&$(`focus`,{persist:!1}),!dF&&!fF){let e=KP(uF);e||(JP=uF),$(e?uF:`focus`,{persist:e})}JT({panels:RT(Q),onScreenShown:e=>{QP(e),e!==`settings`&&IP(),e===`settings`&&!wj(location.hash)&&cj(),YP(e)},canGoBack:e=>e===`settings`&&pj()||e===`prs`&&LO(),onBack:e=>{e===`settings`&&mj(),e===`prs`&&RO()},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`),kP,AP,jP]}),fj(rE),IO(rE);function pF(e){if(e===`phone`){let e=fC();for(let e of Q)gN(e.view)?.deactivate?.();let t=wj(location.hash);YT({sessionId:e??void 0,linkedScreenId:t?`settings`:void 0}).then(e=>{e&&t&&cj(null,null,location.hash),!e&&vu()&&!ZT()&&mF()});return}let t=QT();XT(),mF(),t&&RC(t)}function mF(){let e=on();$(KP(e)?e:`focus`,{persist:qP})}vu()&&pF(`phone`),yu(pF),window.addEventListener(`hashchange`,HP);function hF({type:e,title:t,confirmLabel:n,danger:r,idleMessage:i,actionAfterKillingSessions:a}){PP(!1);let o=hx(),s=o>0?`Kill ${o} session${o>1?`s`:``} and ${a}?`:i;jt({title:t,message:s,confirmLabel:n,danger:r||o>0,onConfirm:()=>E({type:e})})}function gF(){hF({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`,gF);function _F(e){let t=Xt(`shutdown`,e);S(document,`#btn-shutdown`,`button`).hidden=!t,S(document,`#menu-divider-shutdown`,`div`).hidden=!t}S(document,`#btn-shutdown`,`button`).addEventListener(`click`,()=>{hF({type:`shutdown`,title:`Shut Down Server`,confirmLabel:`Shut Down`,danger:!0,idleMessage:`Shut down the server?`,actionAfterKillingSessions:`shut down the server`})});function vF(){return(document.activeElement?.closest(`.session-card`))?.dataset.id??null}function yF(e){RC(e),Rl(e),requestAnimationFrame(()=>requestAnimationFrame(()=>O.get(e)?.term?.focus()))}function bF(){let e=vF()??B();e?Xl(e,yF):document.getElementById(`btn-add-session-header`)?.click()}function xF({action:e,step:t}){switch(e){case`merge`:return Xf(),!0;case`close-session`:{let e=B();return e?(eu(e),!0):!1}case`resolve-or-resync`:return Qf()||tp(),!0;case`new-session`:return document.getElementById(`btn-add-session-header`)?.click(),!0;case`quick-session`:return bF(),!0;case`next-attention`:return vu()?!1:dC()?(kC(),!0):(on()===`prs`&&zO()||UC(()=>$(`focus`)),!0);case`rail-step`:return dC()?(VC(t),!0):!1;case`view-step`:return!vu()&&(oF(aF(on(),t)),!0);case`session-nth`:return dC()?(BC(t),!0):!1;case`streamer-mode`:return mv(),!0}}document.addEventListener(`keydown`,e=>{if(e.repeat||Le(e))return;let t=hr(e,ud,{isTerminalFocused:document.activeElement?.classList.contains(`xterm-helper-textarea`)??!1},pd());t&&(Mt()||xF(t)&&e.preventDefault())});var SF=$t({mode:`trailing`,delayMs:150,run:()=>{E({type:`focus-change`,focused:document.hasFocus()})}});function CF(){SF.schedule()}function wF(){let e=QT();e&&k(e)?._isActiveViewer?.()===!0&&Yx(e)}function TF(){CF(),Yb(k(sn())),wF()}window.addEventListener(`focus`,TF),window.addEventListener(`blur`,TF),document.addEventListener(`visibilitychange`,TF),document.addEventListener(`visibilitychange`,()=>{document.visibilityState===`visible`&&vy()});var EF=pt(E);window.addEventListener(`error`,e=>{EF(e.error),T(`uncaught`,Ye(e.error??e.message))}),window.addEventListener(`unhandledrejection`,e=>{EF(e.reason),T(`unhandled-rejection`,Ye(e.reason))}),bN(()=>window.sessionStorage),window.addEventListener(`pageshow`,e=>{e.persisted&&vy()}),Ru(S(document,`#health-footer-mount`,`div`)),lg(_x),ZN(),IA(),ot();var DF=Ti();DF&&at().then(()=>Eb(DF));export{AO as $,cn as $i,ld as $n,ra as $r,iw as $t,QA as A,ii as Ai,rh as An,rc as Ar,zE as At,Lk as B,Mn as Bi,Bm as Bn,ls as Br,wE as Bt,dj as C,ki as Ci,kh as Cn,pl as Cr,HD as Ct,mj as D,Br as Di,uh as Dn,jc as Dr,SD as Dt,aj as E,Kr as Ei,dh as En,Gc as Er,CD as Et,sA as F,lr as Fi,th as Fn,ds as Fr,FE as Ft,zk as G,Vn as Gi,Lf as Gn,qo as Gr,NT as Gt,Vk as H,zn as Hi,Lm as Hn,es as Hr,dE as Ht,lA as I,Sr as Ii,xh as In,vs as Ir,PE as It,gk as J,jn as Ji,_d as Jn,Fo as Jr,lT as Jt,Rk as K,Bn as Ki,ud as Kn,I as Kr,dT as Kt,cA as L,yr as Li,Um as Ln,_s as Lr,VE as Lt,ZA as M,Rr as Mi,fh as Mn,kc as Mr,RE as Mt,lj as N,Jr as Ni,ch as Nn,Ms as Nr,IE as Nt,uj as O,Wr as Oi,nh as On,Ec as Or,qE as Ot,uA as P,ui as Pi,ah as Pn,z as Pr,NE as Pt,TO as Q,un as Qi,sd as Qn,sa as Qr,Mw as Qt,Bk as R,Cr as Ri,Vm as Rn,bs as Rr,TE as Rt,$A as S,ji as Si,Rh as Sn,al as Sr,oO as St,rj as T,Ni as Ti,hh as Tn,ol as Tr,wD as Tt,Gk as U,Rn as Ui,Rm as Un,L as Ur,MT as Ut,Wk as V,Fn as Vi,zm as Vn,Xo as Vr,uE as Vt,Uk as W,Hn as Wi,fm as Wn,Jo as Wr,FT as Wt,nk as X,yn as Xi,hd as Xn,Aa as Xr,cw as Xt,pk as Y,vn as Yi,gd as Yn,co as Yr,Cw as Yt,rk as Z,gn as Zi,pd as Zn,wa as Zr,jw as Zt,Dj as _,Ri as _i,Ug as _n,Pl as _r,XD as _t,GM as a,Ii as ai,iS as an,Xu as ar,kO as at,Tj as b,Mi as bi,Uh as bn,bl as br,aO as bt,qM as c,Lr as ci,Yx as cn,Ul as cr,PO as ct,zM as d,Yr as di,Zb as dn,Jl as dr,qD as dt,sn as ea,Gi as ei,DS as en,Zu as er,zO as et,$M as f,zr as fi,Lv as fn,Bl as fr,YD as ft,Ij as g,Fr as gi,Wg as gn,Nl as gr,VD as gt,gM as h,Vr as hi,dv as hn,Rl as hr,rO as ht,tN as i,Jt as ia,Li as ii,rS as in,rd as ir,NO as it,ej as j,Hr as ji,sh as jn,Mc as jr,ME as jt,sj as k,oi as ki,ih as kn,Oc as kr,JE as kt,VM as l,qr as li,Cx as ln,zl as lr,AD as lt,_M as m,ai as mi,uv as mn,eu as mr,WD as mt,iN as n,j as na,Ki as ni,HS as nn,Wu as nr,EO as nt,JM as o,Gr as oi,tS as on,vu as or,FO as ot,yM as p,Ur as pi,cv as pn,Ll as pr,tO as pt,mk as q,kn as qi,md as qn,F as qr,uT as qt,eN as r,qt as ra,Bi as ri,zS as rn,Yu as rr,RO as rt,HM as s,ri as si,nS as sn,yu as sr,wO as st,aN as t,ln as ta,Wi as ti,OS as tn,Ku as tr,jO as tt,BM as u,li as ui,Vb as un,Kl as ur,JD as ut,Ej as v,Xr as vi,Vg as vn,wl as vr,QD as vt,nj as w,Pi as wi,$m as wn,sl as wr,ZD as wt,hj as x,Ai as xi,Bh as xn,yl as xr,nO as xt,Cj as y,Fi as yi,Kg as yn,Tl as yr,UD as yt,Hk as z,Pn as zi,Hm as zn,xs as zr,CE as zt};
|