diff --git a/ui-electrobun/build/dev-linux-x64/AgentOrchestrator-dev/Resources/app/bun/index.js b/ui-electrobun/build/dev-linux-x64/AgentOrchestrator-dev/Resources/app/bun/index.js index d6121c7..4bbf804 100644 --- a/ui-electrobun/build/dev-linux-x64/AgentOrchestrator-dev/Resources/app/bun/index.js +++ b/ui-electrobun/build/dev-linux-x64/AgentOrchestrator-dev/Resources/app/bun/index.js @@ -231861,6 +231861,105 @@ class PtyClient extends EventEmitter2 { } } +// src/bun/settings-db.ts +import { Database as Database2 } from "bun:sqlite"; +import { homedir as homedir3 } from "os"; +import { mkdirSync as mkdirSync2 } from "fs"; +import { join as join7 } from "path"; +var CONFIG_DIR = join7(homedir3(), ".config", "agor"); +var DB_PATH = join7(CONFIG_DIR, "settings.db"); +var SCHEMA = ` +PRAGMA journal_mode = WAL; +PRAGMA busy_timeout = 500; + +CREATE TABLE IF NOT EXISTS schema_version ( + version INTEGER NOT NULL +); + +CREATE TABLE IF NOT EXISTS settings ( + key TEXT PRIMARY KEY, + value TEXT NOT NULL +); + +CREATE TABLE IF NOT EXISTS projects ( + id TEXT PRIMARY KEY, + config TEXT NOT NULL -- JSON blob +); + +CREATE TABLE IF NOT EXISTS custom_themes ( + id TEXT PRIMARY KEY, + name TEXT NOT NULL, + palette TEXT NOT NULL -- JSON blob +); +`; + +class SettingsDb { + db; + constructor() { + mkdirSync2(CONFIG_DIR, { recursive: true }); + this.db = new Database2(DB_PATH); + this.db.exec(SCHEMA); + const version = this.db.query("SELECT version FROM schema_version LIMIT 1").get(); + if (!version) { + this.db.exec("INSERT INTO schema_version (version) VALUES (1)"); + } + } + getSetting(key) { + const row = this.db.query("SELECT value FROM settings WHERE key = ?").get(key); + return row?.value ?? null; + } + setSetting(key, value) { + this.db.query("INSERT INTO settings (key, value) VALUES (?, ?) ON CONFLICT(key) DO UPDATE SET value = excluded.value").run(key, value); + } + getAll() { + const rows = this.db.query("SELECT key, value FROM settings").all(); + return Object.fromEntries(rows.map((r) => [r.key, r.value])); + } + getProject(id) { + const row = this.db.query("SELECT config FROM projects WHERE id = ?").get(id); + if (!row) + return null; + try { + return JSON.parse(row.config); + } catch { + console.error(`[settings-db] Failed to parse project config for id=${id}`); + return null; + } + } + setProject(id, config) { + const json = JSON.stringify(config); + this.db.query("INSERT INTO projects (id, config) VALUES (?, ?) ON CONFLICT(id) DO UPDATE SET config = excluded.config").run(id, json); + } + listProjects() { + const rows = this.db.query("SELECT config FROM projects").all(); + return rows.flatMap((r) => { + try { + return [JSON.parse(r.config)]; + } catch { + return []; + } + }); + } + getCustomThemes() { + const rows = this.db.query("SELECT id, name, palette FROM custom_themes").all(); + return rows.flatMap((r) => { + try { + return [{ id: r.id, name: r.name, palette: JSON.parse(r.palette) }]; + } catch { + return []; + } + }); + } + saveCustomTheme(id, name531, palette) { + const json = JSON.stringify(palette); + this.db.query("INSERT INTO custom_themes (id, name, palette) VALUES (?, ?, ?) ON CONFLICT(id) DO UPDATE SET name = excluded.name, palette = excluded.palette").run(id, name531, json); + } + close() { + this.db.close(); + } +} +var settingsDb = new SettingsDb; + // src/bun/index.ts var DEV_SERVER_PORT = 9760; var DEV_SERVER_URL = `http://localhost:${DEV_SERVER_PORT}`; @@ -231932,6 +232031,53 @@ var rpc = BrowserView.defineRPC({ ptyClient.closeSession(sessionId); } catch {} return { ok: true }; + }, + "settings.get": ({ key }) => { + try { + return { value: settingsDb.getSetting(key) }; + } catch (err) { + console.error("[settings.get]", err); + return { value: null }; + } + }, + "settings.set": ({ key, value }) => { + try { + settingsDb.setSetting(key, value); + return { ok: true }; + } catch (err) { + console.error("[settings.set]", err); + return { ok: false }; + } + }, + "settings.getAll": () => { + try { + return { settings: settingsDb.getAll() }; + } catch (err) { + console.error("[settings.getAll]", err); + return { settings: {} }; + } + }, + "settings.getProjects": () => { + try { + const projects = settingsDb.listProjects().map((p) => ({ + id: p.id, + config: JSON.stringify(p) + })); + return { projects }; + } catch (err) { + console.error("[settings.getProjects]", err); + return { projects: [] }; + } + }, + "settings.setProject": ({ id, config }) => { + try { + const parsed = JSON.parse(config); + settingsDb.setProject(id, { id, ...parsed }); + return { ok: true }; + } catch (err) { + console.error("[settings.setProject]", err); + return { ok: false }; + } } }, messages: {} diff --git a/ui-electrobun/build/dev-linux-x64/AgentOrchestrator-dev/Resources/app/views/mainview/assets/index-I2iZIyVf.js b/ui-electrobun/build/dev-linux-x64/AgentOrchestrator-dev/Resources/app/views/mainview/assets/index-CZZnRPP5.js similarity index 60% rename from ui-electrobun/build/dev-linux-x64/AgentOrchestrator-dev/Resources/app/views/mainview/assets/index-I2iZIyVf.js rename to ui-electrobun/build/dev-linux-x64/AgentOrchestrator-dev/Resources/app/views/mainview/assets/index-CZZnRPP5.js index 6b2feed..87756a9 100644 --- a/ui-electrobun/build/dev-linux-x64/AgentOrchestrator-dev/Resources/app/views/mainview/assets/index-I2iZIyVf.js +++ b/ui-electrobun/build/dev-linux-x64/AgentOrchestrator-dev/Resources/app/views/mainview/assets/index-CZZnRPP5.js @@ -1,5 +1,5 @@ -var vc=Object.defineProperty;var da=e=>{throw TypeError(e)};var gc=(e,t,i)=>t in e?vc(e,t,{enumerable:!0,configurable:!0,writable:!0,value:i}):e[t]=i;var li=(e,t,i)=>gc(e,typeof t!="symbol"?t+"":t,i),mn=(e,t,i)=>t.has(e)||da("Cannot "+i);var $=(e,t,i)=>(mn(e,t,"read from private field"),i?i.call(e):t.get(e)),Re=(e,t,i)=>t.has(e)?da("Cannot add the same private member more than once"):t instanceof WeakSet?t.add(e):t.set(e,i),be=(e,t,i,s)=>(mn(e,t,"write to private field"),s?s.call(e,i):t.set(e,i),i),je=(e,t,i)=>(mn(e,t,"access private method"),i);(function(){const t=document.createElement("link").relList;if(t&&t.supports&&t.supports("modulepreload"))return;for(const r of document.querySelectorAll('link[rel="modulepreload"]'))s(r);new MutationObserver(r=>{for(const n of r)if(n.type==="childList")for(const a of n.addedNodes)a.tagName==="LINK"&&a.rel==="modulepreload"&&s(a)}).observe(document,{childList:!0,subtree:!0});function i(r){const n={};return r.integrity&&(n.integrity=r.integrity),r.referrerPolicy&&(n.referrerPolicy=r.referrerPolicy),r.crossOrigin==="use-credentials"?n.credentials="include":r.crossOrigin==="anonymous"?n.credentials="omit":n.credentials="same-origin",n}function s(r){if(r.ep)return;r.ep=!0;const n=i(r);fetch(r.href,n)}})();const pc="5";var kl;typeof window<"u"&&((kl=window.__svelte??(window.__svelte={})).v??(kl.v=new Set)).add(pc);const mc=1,Ac=2,Dl=4,wc=8,Cc=16,Sc=1,bc=2,St=Symbol(),yc="http://www.w3.org/1999/xhtml",zn=!1;var Ml=Array.isArray,xc=Array.prototype.indexOf,an=Array.from,kc=Object.defineProperty,Zs=Object.getOwnPropertyDescriptor,Ec=Object.getOwnPropertyDescriptors,Bc=Object.prototype,Ic=Array.prototype,Ll=Object.getPrototypeOf,ua=Object.isExtensible;const An=()=>{};function Dc(e){for(var t=0;t{e=s,t=r});return{promise:i,resolve:e,reject:t}}const gt=2,Fo=4,Wo=8,Mc=1<<24,Bi=16,Ii=32,vs=64,ln=128,ai=512,bt=1024,Nt=2048,Ai=4096,Gt=8192,Ui=16384,zo=32768,Es=65536,_a=1<<17,Tl=1<<18,Ls=1<<19,Lc=1<<20,yi=1<<25,cs=32768,Un=1<<21,Uo=1<<22,$i=1<<23,Pr=Symbol("$state"),Rc=Symbol(""),Cs=new class extends Error{constructor(){super(...arguments);li(this,"name","StaleReactionError");li(this,"message","The reaction that called `getAbortSignal()` was re-run or destroyed")}};function Pl(e){throw new Error("https://svelte.dev/e/lifecycle_outside_component")}function Tc(){throw new Error("https://svelte.dev/e/async_derived_orphan")}function Pc(e){throw new Error("https://svelte.dev/e/effect_in_teardown")}function Qc(){throw new Error("https://svelte.dev/e/effect_in_unowned_derived")}function Oc(e){throw new Error("https://svelte.dev/e/effect_orphan")}function Nc(){throw new Error("https://svelte.dev/e/effect_update_depth_exceeded")}function Hc(){throw new Error("https://svelte.dev/e/state_descriptors_fixed")}function Fc(){throw new Error("https://svelte.dev/e/state_prototype_fixed")}function Wc(){throw new Error("https://svelte.dev/e/state_unsafe_mutation")}function zc(){throw new Error("https://svelte.dev/e/svelte_boundary_reset_onerror")}function Uc(){console.warn("https://svelte.dev/e/svelte_boundary_reset_noop")}function Ql(e){return e===this.v}function $c(e,t){return e!=e?t==t:e!==t||e!==null&&typeof e=="object"||typeof e=="function"}function Ol(e){return!$c(e,this.v)}let gr=!1,qc=!1;function Gc(){gr=!0}let Ve=null;function Bs(e){Ve=e}function pt(e,t=!1,i){Ve={p:Ve,i:!1,c:null,e:null,s:e,x:null,l:gr&&!t?{s:null,u:null,$:[]}:null}}function mt(e){var t=Ve,i=t.e;if(i!==null){t.e=null;for(var s of i)th(s)}return e!==void 0&&(t.x=e),t.i=!0,Ve=t.p,e??{}}function pr(){return!gr||Ve!==null&&Ve.l===null}let Vi=[];function Nl(){var e=Vi;Vi=[],Dc(e)}function Rs(e){if(Vi.length===0&&!er){var t=Vi;queueMicrotask(()=>{t===Vi&&Nl()})}Vi.push(e)}function Kc(){for(;Vi.length>0;)Nl()}function Hl(e){var t=Qe;if(t===null)return Le.f|=$i,e;if((t.f&zo)===0){if((t.f&ln)===0)throw e;t.b.error(e)}else Is(e,t)}function Is(e,t){for(;t!==null;){if((t.f&ln)!==0)try{t.b.error(e);return}catch(i){e=i}t=t.parent}throw e}const kr=new Set;let De=null,Qr=null,Ze=null,Zt=[],hn=null,$n=!1,er=!1;var bs,ys,Zi,es,_r,xs,ks,vt,qn,qs,Gn,Fl,Wl;const rn=class rn{constructor(){Re(this,vt);li(this,"committed",!1);li(this,"current",new Map);li(this,"previous",new Map);Re(this,bs,new Set);Re(this,ys,new Set);Re(this,Zi,0);Re(this,es,0);Re(this,_r,null);Re(this,xs,new Set);Re(this,ks,new Set);li(this,"skipped_effects",new Set);li(this,"is_fork",!1)}is_deferred(){return this.is_fork||$(this,es)>0}process(t){var s;Zt=[],Qr=null,this.apply();var i={parent:null,effect:null,effects:[],render_effects:[]};for(const r of t)je(this,vt,qn).call(this,r,i);this.is_fork||je(this,vt,Fl).call(this),this.is_deferred()?(je(this,vt,qs).call(this,i.effects),je(this,vt,qs).call(this,i.render_effects)):(Qr=this,De=null,fa(i.render_effects),fa(i.effects),Qr=null,(s=$(this,_r))==null||s.resolve()),Ze=null}capture(t,i){this.previous.has(t)||this.previous.set(t,i),(t.f&$i)===0&&(this.current.set(t,t.v),Ze==null||Ze.set(t,t.v))}activate(){De=this,this.apply()}deactivate(){De===this&&(De=null,Ze=null)}flush(){if(this.activate(),Zt.length>0){if(zl(),De!==null&&De!==this)return}else $(this,Zi)===0&&this.process([]);this.deactivate()}discard(){for(const t of $(this,ys))t(this);$(this,ys).clear()}increment(t){be(this,Zi,$(this,Zi)+1),t&&be(this,es,$(this,es)+1)}decrement(t){be(this,Zi,$(this,Zi)-1),t&&be(this,es,$(this,es)-1),this.revive()}revive(){for(const t of $(this,xs))$(this,ks).delete(t),yt(t,Nt),ds(t);for(const t of $(this,ks))yt(t,Ai),ds(t);this.flush()}oncommit(t){$(this,bs).add(t)}ondiscard(t){$(this,ys).add(t)}settled(){return($(this,_r)??be(this,_r,Rl())).promise}static ensure(){if(De===null){const t=De=new rn;kr.add(De),er||rn.enqueue(()=>{De===t&&t.flush()})}return De}static enqueue(t){Rs(t)}apply(){}};bs=new WeakMap,ys=new WeakMap,Zi=new WeakMap,es=new WeakMap,_r=new WeakMap,xs=new WeakMap,ks=new WeakMap,vt=new WeakSet,qn=function(t,i){var c;t.f^=bt;for(var s=t.first;s!==null;){var r=s.f,n=(r&(Ii|vs))!==0,a=n&&(r&bt)!==0,o=a||(r&Gt)!==0||this.skipped_effects.has(s);if((s.f&ln)!==0&&((c=s.b)!=null&&c.is_pending())&&(i={parent:i,effect:s,effects:[],render_effects:[]}),!o&&s.fn!==null){n?s.f^=bt:(r&Fo)!==0?i.effects.push(s):Ar(s)&&((s.f&Bi)!==0&&$(this,xs).add(s),or(s));var h=s.first;if(h!==null){s=h;continue}}var l=s.parent;for(s=s.next;s===null&&l!==null;)l===i.effect&&(je(this,vt,qs).call(this,i.effects),je(this,vt,qs).call(this,i.render_effects),i=i.parent),s=l.next,l=l.parent}},qs=function(t){for(const i of t)(i.f&Nt)!==0?$(this,xs).add(i):(i.f&Ai)!==0&&$(this,ks).add(i),je(this,vt,Gn).call(this,i.deps),yt(i,bt)},Gn=function(t){if(t!==null)for(const i of t)(i.f>)===0||(i.f&cs)===0||(i.f^=cs,je(this,vt,Gn).call(this,i.deps))},Fl=function(){if($(this,es)===0){for(const t of $(this,bs))t();$(this,bs).clear()}$(this,Zi)===0&&je(this,vt,Wl).call(this)},Wl=function(){var n;if(kr.size>1){this.previous.clear();var t=Ze,i=!0,s={parent:null,effect:null,effects:[],render_effects:[]};for(const a of kr){if(a===this){i=!1;continue}const o=[];for(const[l,c]of this.current){if(a.current.has(l))if(i&&c!==a.current.get(l))a.current.set(l,c);else continue;o.push(l)}if(o.length===0)continue;const h=[...a.current.keys()].filter(l=>!this.current.has(l));if(h.length>0){var r=Zt;Zt=[];const l=new Set,c=new Map;for(const d of o)Ul(d,h,l,c);if(Zt.length>0){De=a,a.apply();for(const d of Zt)je(n=a,vt,qn).call(n,d,s);a.deactivate()}Zt=r}}De=null,Ze=t}this.committed=!0,kr.delete(this)};let xi=rn;function Jc(e){var t=er;er=!0;try{for(var i;;){if(Kc(),Zt.length===0&&(De==null||De.flush(),Zt.length===0))return hn=null,i;zl()}}finally{er=t}}function zl(){var e=as;$n=!0;var t=null;try{var i=0;for(Kr(!0);Zt.length>0;){var s=xi.ensure();if(i++>1e3){var r,n;jc()}s.process(Zt),qi.clear()}}finally{$n=!1,Kr(e),hn=null}}function jc(){try{Nc()}catch(e){Is(e,hn)}}let ni=null;function fa(e){var t=e.length;if(t!==0){for(var i=0;i0)){qi.clear();for(const r of ni){if((r.f&(Ui|Gt))!==0)continue;const n=[r];let a=r.parent;for(;a!==null;)ni.has(a)&&(ni.delete(a),n.push(a)),a=a.parent;for(let o=n.length-1;o>=0;o--){const h=n[o];(h.f&(Ui|Gt))===0&&or(h)}}ni.clear()}}ni=null}}function Ul(e,t,i,s){if(!i.has(e)&&(i.add(e),e.reactions!==null))for(const r of e.reactions){const n=r.f;(n>)!==0?Ul(r,t,i,s):(n&(Uo|Bi))!==0&&(n&Nt)===0&&$l(r,t,s)&&(yt(r,Nt),ds(r))}}function $l(e,t,i){const s=i.get(e);if(s!==void 0)return s;if(e.deps!==null)for(const r of e.deps){if(t.includes(r))return!0;if((r.f>)!==0&&$l(r,t,i))return i.set(r,!0),!0}return i.set(e,!1),!1}function ds(e){for(var t=hn=e;t.parent!==null;){t=t.parent;var i=t.f;if($n&&t===Qe&&(i&Bi)!==0&&(i&Tl)===0)return;if((i&(vs|Ii))!==0){if((i&bt)===0)return;t.f^=bt}}Zt.push(t)}function Yc(e){let t=0,i=us(0),s;return()=>{rr()&&(p(i),Go(()=>(t===0&&(s=wr(()=>e(()=>tr(i)))),t+=1,()=>{Rs(()=>{t-=1,t===0&&(s==null||s(),s=void 0,tr(i))})})))}}var Vc=Es|Ls|ln;function Xc(e,t,i){new Zc(e,t,i)}var Yt,Vt,Ho,ui,ts,_i,Xt,Pt,fi,bi,Hi,is,Fi,ss,Wi,nn,dt,ed,td,Kn,Or,Nr,Jn;class Zc{constructor(t,i,s){Re(this,dt);li(this,"parent");Re(this,Yt,!1);Re(this,Vt);Re(this,Ho,null);Re(this,ui);Re(this,ts);Re(this,_i);Re(this,Xt,null);Re(this,Pt,null);Re(this,fi,null);Re(this,bi,null);Re(this,Hi,null);Re(this,is,0);Re(this,Fi,0);Re(this,ss,!1);Re(this,Wi,null);Re(this,nn,Yc(()=>(be(this,Wi,us($(this,is))),()=>{be(this,Wi,null)})));be(this,Vt,t),be(this,ui,i),be(this,ts,s),this.parent=Qe.b,be(this,Yt,!!$(this,ui).pending),be(this,_i,Ko(()=>{Qe.b=this;{var r=je(this,dt,Kn).call(this);try{be(this,Xt,ei(()=>s(r)))}catch(n){this.error(n)}$(this,Fi)>0?je(this,dt,Nr).call(this):be(this,Yt,!1)}return()=>{var n;(n=$(this,Hi))==null||n.remove()}},Vc))}is_pending(){return $(this,Yt)||!!this.parent&&this.parent.is_pending()}has_pending_snippet(){return!!$(this,ui).pending}update_pending_count(t){je(this,dt,Jn).call(this,t),be(this,is,$(this,is)+t),$(this,Wi)&&Ds($(this,Wi),$(this,is))}get_effect_pending(){return $(this,nn).call(this),p($(this,Wi))}error(t){var i=$(this,ui).onerror;let s=$(this,ui).failed;if($(this,ss)||!i&&!s)throw t;$(this,Xt)&&(Ot($(this,Xt)),be(this,Xt,null)),$(this,Pt)&&(Ot($(this,Pt)),be(this,Pt,null)),$(this,fi)&&(Ot($(this,fi)),be(this,fi,null));var r=!1,n=!1;const a=()=>{if(r){Uc();return}r=!0,n&&zc(),xi.ensure(),be(this,is,0),$(this,fi)!==null&&os($(this,fi),()=>{be(this,fi,null)}),be(this,Yt,this.has_pending_snippet()),be(this,Xt,je(this,dt,Or).call(this,()=>(be(this,ss,!1),ei(()=>$(this,ts).call(this,$(this,Vt)))))),$(this,Fi)>0?je(this,dt,Nr).call(this):be(this,Yt,!1)};var o=Le;try{Qt(null),n=!0,i==null||i(t,a),n=!1}catch(h){Is(h,$(this,_i)&&$(this,_i).parent)}finally{Qt(o)}s&&Rs(()=>{be(this,fi,je(this,dt,Or).call(this,()=>{xi.ensure(),be(this,ss,!0);try{return ei(()=>{s($(this,Vt),()=>t,()=>a)})}catch(h){return Is(h,$(this,_i).parent),null}finally{be(this,ss,!1)}}))})}}Yt=new WeakMap,Vt=new WeakMap,Ho=new WeakMap,ui=new WeakMap,ts=new WeakMap,_i=new WeakMap,Xt=new WeakMap,Pt=new WeakMap,fi=new WeakMap,bi=new WeakMap,Hi=new WeakMap,is=new WeakMap,Fi=new WeakMap,ss=new WeakMap,Wi=new WeakMap,nn=new WeakMap,dt=new WeakSet,ed=function(){try{be(this,Xt,ei(()=>$(this,ts).call(this,$(this,Vt))))}catch(t){this.error(t)}be(this,Yt,!1)},td=function(){const t=$(this,ui).pending;t&&(be(this,Pt,ei(()=>t($(this,Vt)))),xi.enqueue(()=>{var i=je(this,dt,Kn).call(this);be(this,Xt,je(this,dt,Or).call(this,()=>(xi.ensure(),ei(()=>$(this,ts).call(this,i))))),$(this,Fi)>0?je(this,dt,Nr).call(this):(os($(this,Pt),()=>{be(this,Pt,null)}),be(this,Yt,!1))}))},Kn=function(){var t=$(this,Vt);return $(this,Yt)&&(be(this,Hi,Gi()),$(this,Vt).before($(this,Hi)),t=$(this,Hi)),t},Or=function(t){var i=Qe,s=Le,r=Ve;wi($(this,_i)),Qt($(this,_i)),Bs($(this,_i).ctx);try{return t()}catch(n){return Hl(n),null}finally{wi(i),Qt(s),Bs(r)}},Nr=function(){const t=$(this,ui).pending;$(this,Xt)!==null&&(be(this,bi,document.createDocumentFragment()),$(this,bi).append($(this,Hi)),ah($(this,Xt),$(this,bi))),$(this,Pt)===null&&be(this,Pt,ei(()=>t($(this,Vt))))},Jn=function(t){var i;if(!this.has_pending_snippet()){this.parent&&je(i=this.parent,dt,Jn).call(i,t);return}be(this,Fi,$(this,Fi)+t),$(this,Fi)===0&&(be(this,Yt,!1),$(this,Pt)&&os($(this,Pt),()=>{be(this,Pt,null)}),$(this,bi)&&($(this,Vt).before($(this,bi)),be(this,bi,null)))};function id(e,t,i,s){const r=pr()?$o:ql;if(i.length===0&&e.length===0){s(t.map(r));return}var n=De,a=Qe,o=sd();function h(){Promise.all(i.map(l=>rd(l))).then(l=>{o();try{s([...t.map(r),...l])}catch(c){(a.f&Ui)===0&&Is(c,a)}n==null||n.deactivate(),qr()}).catch(l=>{Is(l,a)})}e.length>0?Promise.all(e).then(()=>{o();try{return h()}finally{n==null||n.deactivate(),qr()}}):h()}function sd(){var e=Qe,t=Le,i=Ve,s=De;return function(n=!0){wi(e),Qt(t),Bs(i),n&&(s==null||s.activate())}}function qr(){wi(null),Qt(null),Bs(null)}function $o(e){var t=gt|Nt,i=Le!==null&&(Le.f>)!==0?Le:null;return Qe!==null&&(Qe.f|=Ls),{ctx:Ve,deps:null,effects:null,equals:Ql,f:t,fn:e,reactions:null,rv:0,v:St,wv:0,parent:i??Qe,ac:null}}function rd(e,t){let i=Qe;i===null&&Tc();var s=i.b,r=void 0,n=us(St),a=!Le,o=new Map;return md(()=>{var g;var h=Rl();r=h.promise;try{Promise.resolve(e()).then(h.resolve,h.reject).then(()=>{l===De&&l.committed&&l.deactivate(),qr()})}catch(_){h.reject(_),qr()}var l=De;if(a){var c=!s.is_pending();s.update_pending_count(1),l.increment(c),(g=o.get(l))==null||g.reject(Cs),o.delete(l),o.set(l,h)}const d=(_,v=void 0)=>{if(l.activate(),v)v!==Cs&&(n.f|=$i,Ds(n,v));else{(n.f&$i)!==0&&(n.f^=$i),Ds(n,_);for(const[u,f]of o){if(o.delete(u),u===l)break;f.reject(Cs)}}a&&(s.update_pending_count(-1),l.decrement(c))};h.promise.then(d,_=>d(null,_||"unknown"))}),eh(()=>{for(const h of o.values())h.reject(Cs)}),new Promise(h=>{function l(c){function d(){c===r?h(n):l(r)}c.then(d,d)}l(r)})}function st(e){const t=$o(e);return lh(t),t}function ql(e){const t=$o(e);return t.equals=Ol,t}function Gl(e){var t=e.effects;if(t!==null){e.effects=null;for(var i=0;i0&&!Jl&&ad()}return t}function ad(){Jl=!1;var e=as;Kr(!0);const t=Array.from(jn);try{for(const i of t)(i.f&bt)!==0&&yt(i,Ai),Ar(i)&&or(i)}finally{Kr(e)}jn.clear()}function ld(e,t=1){var i=p(e),s=t===1?i++:i--;return W(e,i),s}function hd(e,t=1){var i=p(e);return W(e,t===1?++i:--i)}function tr(e){W(e,e.v+1)}function jl(e,t){var i=e.reactions;if(i!==null)for(var s=pr(),r=i.length,n=0;n{if(ls===n)return o();var h=Le,l=ls;Qt(null),ma(n);var c=o();return Qt(h),ma(l),c};return s&&i.set("length",Z(e.length)),new Proxy(e,{defineProperty(o,h,l){(!("value"in l)||l.configurable===!1||l.enumerable===!1||l.writable===!1)&&Hc();var c=i.get(h);return c===void 0?c=a(()=>{var d=Z(l.value);return i.set(h,d),d}):W(c,l.value,!0),!0},deleteProperty(o,h){var l=i.get(h);if(l===void 0){if(h in o){const c=a(()=>Z(St));i.set(h,c),tr(r)}}else W(l,St),tr(r);return!0},get(o,h,l){var _;if(h===Pr)return e;var c=i.get(h),d=h in o;if(c===void 0&&(!d||(_=Zs(o,h))!=null&&_.writable)&&(c=a(()=>{var v=rt(d?o[h]:St),u=Z(v);return u}),i.set(h,c)),c!==void 0){var g=p(c);return g===St?void 0:g}return Reflect.get(o,h,l)},getOwnPropertyDescriptor(o,h){var l=Reflect.getOwnPropertyDescriptor(o,h);if(l&&"value"in l){var c=i.get(h);c&&(l.value=p(c))}else if(l===void 0){var d=i.get(h),g=d==null?void 0:d.v;if(d!==void 0&&g!==St)return{enumerable:!0,configurable:!0,value:g,writable:!0}}return l},has(o,h){var g;if(h===Pr)return!0;var l=i.get(h),c=l!==void 0&&l.v!==St||Reflect.has(o,h);if(l!==void 0||Qe!==null&&(!c||(g=Zs(o,h))!=null&&g.writable)){l===void 0&&(l=a(()=>{var _=c?rt(o[h]):St,v=Z(_);return v}),i.set(h,l));var d=p(l);if(d===St)return!1}return c},set(o,h,l,c){var b;var d=i.get(h),g=h in o;if(s&&h==="length")for(var _=l;_Z(St)),i.set(_+"",v))}if(d===void 0)(!g||(b=Zs(o,h))!=null&&b.writable)&&(d=a(()=>Z(void 0)),W(d,rt(l)),i.set(h,d));else{g=d.v!==St;var u=a(()=>rt(l));W(d,u)}var f=Reflect.getOwnPropertyDescriptor(o,h);if(f!=null&&f.set&&f.set.call(c,l),!g){if(s&&typeof h=="string"){var A=i.get("length"),k=Number(h);Number.isInteger(k)&&k>=A.v&&W(A,k+1)}tr(r)}return!0},ownKeys(o){p(r);var h=Reflect.ownKeys(o).filter(d=>{var g=i.get(d);return g===void 0||g.v!==St});for(var[l,c]of i)c.v!==St&&!(l in o)&&h.push(l);return h},setPrototypeOf(){Fc()}})}var va,Yl,Vl,Xl;function cd(){if(va===void 0){va=window,Yl=/Firefox/.test(navigator.userAgent);var e=Element.prototype,t=Node.prototype,i=Text.prototype;Vl=Zs(t,"firstChild").get,Xl=Zs(t,"nextSibling").get,ua(e)&&(e.__click=void 0,e.__className=void 0,e.__attributes=null,e.__style=void 0,e.__e=void 0),ua(i)&&(i.__t=void 0)}}function Gi(e=""){return document.createTextNode(e)}function Gr(e){return Vl.call(e)}function mr(e){return Xl.call(e)}function R(e,t){return Gr(e)}function ct(e,t=!1){{var i=Gr(e);return i instanceof Comment&&i.data===""?mr(i):i}}function P(e,t=1,i=!1){let s=e;for(;t--;)s=mr(s);return s}function dd(e){e.textContent=""}function Zl(){return!1}let ga=!1;function ud(){ga||(ga=!0,document.addEventListener("reset",e=>{Promise.resolve().then(()=>{var t;if(!e.defaultPrevented)for(const i of e.target.elements)(t=i.__on_r)==null||t.call(i)})},{capture:!0}))}function cn(e){var t=Le,i=Qe;Qt(null),wi(null);try{return e()}finally{Qt(t),wi(i)}}function _d(e,t,i,s=i){e.addEventListener(t,()=>cn(i));const r=e.__on_r;r?e.__on_r=()=>{r(),s(!0)}:e.__on_r=()=>s(!0),ud()}function fd(e){Qe===null&&(Le===null&&Oc(),Qc()),Ts&&Pc()}function vd(e,t){var i=t.last;i===null?t.last=t.first=e:(i.next=e,e.prev=i,t.last=e)}function Di(e,t,i){var s=Qe;s!==null&&(s.f&Gt)!==0&&(e|=Gt);var r={ctx:Ve,deps:null,nodes:null,f:e|Nt|ai,first:null,fn:t,last:null,next:null,parent:s,b:s&&s.b,prev:null,teardown:null,wv:0,ac:null};if(i)try{or(r),r.f|=zo}catch(o){throw Ot(r),o}else t!==null&&ds(r);var n=r;if(i&&n.deps===null&&n.teardown===null&&n.nodes===null&&n.first===n.last&&(n.f&Ls)===0&&(n=n.first,(e&Bi)!==0&&(e&Es)!==0&&n!==null&&(n.f|=Es)),n!==null&&(n.parent=s,s!==null&&vd(n,s),Le!==null&&(Le.f>)!==0&&(e&vs)===0)){var a=Le;(a.effects??(a.effects=[])).push(n)}return r}function rr(){return Le!==null&&!gi}function eh(e){const t=Di(Wo,null,!1);return yt(t,bt),t.teardown=e,t}function ns(e){fd();var t=Qe.f,i=!Le&&(t&Ii)!==0&&(t&zo)===0;if(i){var s=Ve;(s.e??(s.e=[])).push(e)}else return th(e)}function th(e){return Di(Fo|Lc,e,!1)}function gd(e){xi.ensure();const t=Di(vs|Ls,e,!0);return(i={})=>new Promise(s=>{i.outro?os(t,()=>{Ot(t),s(void 0)}):(Ot(t),s(void 0))})}function pd(e){return Di(Fo,e,!1)}function md(e){return Di(Uo|Ls,e,!0)}function Go(e,t=0){return Di(Wo|t,e,!0)}function ee(e,t=[],i=[],s=[]){id(s,t,i,r=>{Di(Wo,()=>e(...r.map(p)),!0)})}function Ko(e,t=0){var i=Di(Bi|t,e,!0);return i}function ei(e){return Di(Ii|Ls,e,!0)}function ih(e){var t=e.teardown;if(t!==null){const i=Ts,s=Le;pa(!0),Qt(null);try{t.call(null)}finally{pa(i),Qt(s)}}}function sh(e,t=!1){var i=e.first;for(e.first=e.last=null;i!==null;){const r=i.ac;r!==null&&cn(()=>{r.abort(Cs)});var s=i.next;(i.f&vs)!==0?i.parent=null:Ot(i,t),i=s}}function Ad(e){for(var t=e.first;t!==null;){var i=t.next;(t.f&Ii)===0&&Ot(t),t=i}}function Ot(e,t=!0){var i=!1;(t||(e.f&Tl)!==0)&&e.nodes!==null&&e.nodes.end!==null&&(wd(e.nodes.start,e.nodes.end),i=!0),sh(e,t&&!i),Jr(e,0),yt(e,Ui);var s=e.nodes&&e.nodes.t;if(s!==null)for(const n of s)n.stop();ih(e);var r=e.parent;r!==null&&r.first!==null&&rh(e),e.next=e.prev=e.teardown=e.ctx=e.deps=e.fn=e.nodes=e.ac=null}function wd(e,t){for(;e!==null;){var i=e===t?null:mr(e);e.remove(),e=i}}function rh(e){var t=e.parent,i=e.prev,s=e.next;i!==null&&(i.next=s),s!==null&&(s.prev=i),t!==null&&(t.first===e&&(t.first=s),t.last===e&&(t.last=i))}function os(e,t,i=!0){var s=[];nh(e,s,!0);var r=()=>{i&&Ot(e),t&&t()},n=s.length;if(n>0){var a=()=>--n||r();for(var o of s)o.out(a)}else r()}function nh(e,t,i){if((e.f&Gt)===0){e.f^=Gt;var s=e.nodes&&e.nodes.t;if(s!==null)for(const o of s)(o.is_global||i)&&t.push(o);for(var r=e.first;r!==null;){var n=r.next,a=(r.f&Es)!==0||(r.f&Ii)!==0&&(e.f&Bi)!==0;nh(r,t,a?i:!1),r=n}}}function Jo(e){oh(e,!0)}function oh(e,t){if((e.f&Gt)!==0){e.f^=Gt,(e.f&bt)===0&&(yt(e,Nt),ds(e));for(var i=e.first;i!==null;){var s=i.next,r=(i.f&Es)!==0||(i.f&Ii)!==0;oh(i,r?t:!1),i=s}var n=e.nodes&&e.nodes.t;if(n!==null)for(const a of n)(a.is_global||t)&&a.in()}}function ah(e,t){if(e.nodes)for(var i=e.nodes.start,s=e.nodes.end;i!==null;){var r=i===s?null:mr(i);t.append(i),i=r}}let as=!1;function Kr(e){as=e}let Ts=!1;function pa(e){Ts=e}let Le=null,gi=!1;function Qt(e){Le=e}let Qe=null;function wi(e){Qe=e}let Bt=null;function lh(e){Le!==null&&(Bt===null?Bt=[e]:Bt.push(e))}let Et=null,Wt=0,jt=null;function Cd(e){jt=e}let hh=1,nr=0,ls=nr;function ma(e){ls=e}function ch(){return++hh}function Ar(e){var t=e.f;if((t&Nt)!==0)return!0;if(t>&&(e.f&=~cs),(t&Ai)!==0){var i=e.deps;if(i!==null)for(var s=i.length,r=0;re.wv)return!0}(t&ai)!==0&&Ze===null&&yt(e,bt)}return!1}function dh(e,t,i=!0){var s=e.reactions;if(s!==null&&!(Bt!=null&&Bt.includes(e)))for(var r=0;r{e.ac.abort(Cs)}),e.ac=null);try{e.f|=Un;var c=e.fn,d=c(),g=e.deps;if(Et!==null){var _;if(Jr(e,Wt),g!==null&&Wt>0)for(g.length=Wt+Et.length,_=0;_i==null?void 0:i.call(this,n))}return e.startsWith("pointer")||e.startsWith("touch")||e==="wheel"?Rs(()=>{t.addEventListener(e,r,s)}):t.addEventListener(e,r,s),r}function xd(e,t,i,s,r){var n={capture:s,passive:r},a=yd(e,t,i,n);(t===document.body||t===window||t===document||t instanceof HTMLMediaElement)&&eh(()=>{t.removeEventListener(e,a,n)})}function It(e){for(var t=0;t{throw A});throw g}}finally{e.__root=t,delete e.currentTarget,Qt(c),wi(d)}}}function kd(e){var t=document.createElement("template");return t.innerHTML=e.replaceAll("",""),t.content}function Vn(e,t){var i=Qe;i.nodes===null&&(i.nodes={start:e,end:t,a:null,t:null})}function G(e,t){var i=(t&Sc)!==0,s=(t&bc)!==0,r,n=!e.startsWith("");return()=>{r===void 0&&(r=kd(n?e:""+e),i||(r=Gr(r)));var a=s||Yl?document.importNode(r,!0):r.cloneNode(!0);if(i){var o=Gr(a),h=a.lastChild;Vn(o,h)}else Vn(a,a);return a}}function $t(){var e=document.createDocumentFragment(),t=document.createComment(""),i=Gi();return e.append(t,i),Vn(t,i),e}function z(e,t){e!==null&&e.before(t)}const Ed=["touchstart","touchmove"];function Bd(e){return Ed.includes(e)}function J(e,t){var i=t==null?"":typeof t=="object"?t+"":t;i!==(e.__t??(e.__t=e.nodeValue))&&(e.__t=i,e.nodeValue=i+"")}function Id(e,t){return Dd(e,t)}const ps=new Map;function Dd(e,{target:t,anchor:i,props:s={},events:r,context:n,intro:a=!0}){cd();var o=new Set,h=d=>{for(var g=0;g{var d=i??t.appendChild(Gi());return Xc(d,{pending:()=>{}},g=>{if(n){pt({});var _=Ve;_.c=n}r&&(s.$$events=r),l=e(g,s)||{},n&&mt()}),()=>{var v;for(var g of o){t.removeEventListener(g,Gs);var _=ps.get(g);--_===0?(document.removeEventListener(g,Gs),ps.delete(g)):ps.set(g,_)}Yn.delete(h),d!==i&&((v=d.parentNode)==null||v.removeChild(d))}});return Md.set(l,c),l}let Md=new WeakMap;var oi,vi,zt,rs,fr,vr,on;class Ld{constructor(t,i=!0){li(this,"anchor");Re(this,oi,new Map);Re(this,vi,new Map);Re(this,zt,new Map);Re(this,rs,new Set);Re(this,fr,!0);Re(this,vr,()=>{var t=De;if($(this,oi).has(t)){var i=$(this,oi).get(t),s=$(this,vi).get(i);if(s)Jo(s),$(this,rs).delete(i);else{var r=$(this,zt).get(i);r&&($(this,vi).set(i,r.effect),$(this,zt).delete(i),r.fragment.lastChild.remove(),this.anchor.before(r.fragment),s=r.effect)}for(const[n,a]of $(this,oi)){if($(this,oi).delete(n),n===t)break;const o=$(this,zt).get(a);o&&(Ot(o.effect),$(this,zt).delete(a))}for(const[n,a]of $(this,vi)){if(n===i||$(this,rs).has(n))continue;const o=()=>{if(Array.from($(this,oi).values()).includes(n)){var l=document.createDocumentFragment();ah(a,l),l.append(Gi()),$(this,zt).set(n,{effect:a,fragment:l})}else Ot(a);$(this,rs).delete(n),$(this,vi).delete(n)};$(this,fr)||!s?($(this,rs).add(n),os(a,o,!1)):o()}}});Re(this,on,t=>{$(this,oi).delete(t);const i=Array.from($(this,oi).values());for(const[s,r]of $(this,zt))i.includes(s)||(Ot(r.effect),$(this,zt).delete(s))});this.anchor=t,be(this,fr,i)}ensure(t,i){var s=De,r=Zl();if(i&&!$(this,vi).has(t)&&!$(this,zt).has(t))if(r){var n=document.createDocumentFragment(),a=Gi();n.append(a),$(this,zt).set(t,{effect:ei(()=>i(a)),fragment:n})}else $(this,vi).set(t,ei(()=>i(this.anchor)));if($(this,oi).set(s,t),r){for(const[o,h]of $(this,vi))o===t?s.skipped_effects.delete(h):s.skipped_effects.add(h);for(const[o,h]of $(this,zt))o===t?s.skipped_effects.delete(h.effect):s.skipped_effects.add(h.effect);s.oncommit($(this,vr)),s.ondiscard($(this,on))}else $(this,vr).call(this)}}oi=new WeakMap,vi=new WeakMap,zt=new WeakMap,rs=new WeakMap,fr=new WeakMap,vr=new WeakMap,on=new WeakMap;function Yo(e){Ve===null&&Pl(),gr&&Ve.l!==null?Td(Ve).m.push(e):ns(()=>{const t=wr(e);if(typeof t=="function")return t})}function Rd(e){Ve===null&&Pl(),Yo(()=>()=>wr(e))}function Td(e){var t=e.l;return t.u??(t.u={a:[],b:[],m:[]})}function se(e,t,i=!1){var s=new Ld(e),r=i?Es:0;function n(a,o){s.ensure(a,o)}Ko(()=>{var a=!1;t((o,h=!0)=>{a=!0,n(h,o)}),a||n(!1,null)},r)}function Fe(e,t){return t}function Pd(e,t,i){for(var s=[],r=t.length,n,a=t.length,o=0;o{if(n){if(n.pending.delete(d),n.done.add(d),n.pending.size===0){var g=e.outrogroups;Xn(an(n.done)),g.delete(n),g.size===0&&(e.outrogroups=null)}}else a-=1},!1)}if(a===0){var h=s.length===0&&i!==null;if(h){var l=i,c=l.parentNode;dd(c),c.append(l),e.items.clear()}Xn(t,!h)}else n={pending:new Set(t),done:new Set},(e.outrogroups??(e.outrogroups=new Set)).add(n)}function Xn(e,t=!0){for(var i=0;i{var A=i();return Ml(A)?A:A==null?[]:an(A)}),g,_=!0;function v(){f.fallback=c,Qd(f,g,a,t,s),c!==null&&(g.length===0?(c.f&yi)===0?Jo(c):(c.f^=yi,Ks(c,null,a)):os(c,()=>{c=null}))}var u=Ko(()=>{g=p(d);for(var A=g.length,k=new Set,b=De,w=Zl(),y=0;yn(a)):(c=ei(()=>n(wa??(wa=Gi()))),c.f|=yi)),!_)if(w){for(const[S,D]of o)k.has(S)||b.skipped_effects.add(D.e);b.oncommit(v),b.ondiscard(()=>{})}else v();p(d)}),f={effect:u,items:o,outrogroups:null,fallback:c};_=!1}function Qd(e,t,i,s,r){var D,M,x,B,T,Q,O,L,I;var n=(s&wc)!==0,a=t.length,o=e.items,h=e.effect.first,l,c=null,d,g=[],_=[],v,u,f,A;if(n)for(A=0;A0){var S=(s&Dl)!==0&&a===0?i:null;if(n){for(A=0;A{var H,U;if(d!==void 0)for(f of d)(U=(H=f.nodes)==null?void 0:H.a)==null||U.apply()})}function Od(e,t,i,s,r,n,a,o){var h=(a&mc)!==0?(a&Cc)===0?od(i,!1,!1):us(i):null,l=(a&Ac)!==0?us(r):null;return{v:h,i:l,e:ei(()=>(n(t,h??i,l??r,o),()=>{e.delete(s)}))}}function Ks(e,t,i){if(e.nodes)for(var s=e.nodes.start,r=e.nodes.end,n=t&&(t.f&yi)===0?t.nodes.start:i;s!==null;){var a=mr(s);if(n.before(s),s===r)return;s=a}}function Ri(e,t,i){t===null?e.effect.first=i:t.next=i,i===null?e.effect.last=t:i.prev=t}const Ca=[...` -\r\f \v\uFEFF`];function Nd(e,t,i){var s=e==null?"":""+e;if(t&&(s=s?s+" "+t:t),i){for(var r in i)if(i[r])s=s?s+" "+r:r;else if(s.length)for(var n=r.length,a=0;(a=s.indexOf(r,a))>=0;){var o=a+n;(a===0||Ca.includes(s[a-1]))&&(o===s.length||Ca.includes(s[o]))?s=(a===0?"":s.substring(0,a))+s.substring(o+1):a=o}}return s===""?null:s}function Sa(e,t=!1){var i=t?" !important;":";",s="";for(var r in e){var n=e[r];n!=null&&n!==""&&(s+=" "+r+": "+n+i)}return s}function wn(e){return e[0]!=="-"||e[1]!=="-"?e.toLowerCase():e}function Hd(e,t){if(t){var i="",s,r;if(Array.isArray(t)?(s=t[0],r=t[1]):s=t,e){e=String(e).replaceAll(/\s*\/\*.*?\*\/\s*/g,"").trim();var n=!1,a=0,o=!1,h=[];s&&h.push(...Object.keys(s).map(wn)),r&&h.push(...Object.keys(r).map(wn));var l=0,c=-1;const u=e.length;for(var d=0;d{var n=r?e.defaultValue:e.value;if(n=Sn(e)?bn(n):n,i(n),De!==null&&s.add(De),await jo(),n!==(n=t())){var a=e.selectionStart,o=e.selectionEnd,h=e.value.length;if(e.value=n??"",o!==null){var l=e.value.length;a===o&&o===h&&l>h?(e.selectionStart=l,e.selectionEnd=l):(e.selectionStart=a,e.selectionEnd=Math.min(o,l))}}}),wr(t)==null&&e.value&&(i(Sn(e)?bn(e.value):e.value),De!==null&&s.add(De)),Go(()=>{var r=t();if(e===document.activeElement){var n=Qr??De;if(s.has(n))return}Sn(e)&&r===bn(e.value)||e.type==="date"&&!r&&!e.value||r!==e.value&&(e.value=r??"")})}function Sn(e){var t=e.type;return t==="number"||t==="range"}function bn(e){return e===""?null:+e}function ya(e,t){return e===t||(e==null?void 0:e[Pr])===t}function ar(e={},t,i,s){return pd(()=>{var r,n;return Go(()=>{r=n,n=[],wr(()=>{e!==i(...n)&&(t(e,...n),r&&ya(i(...r),e)&&t(null,...r))})}),()=>{Rs(()=>{n&&ya(i(...n),e)&&t(null,...n)})}}),e}function qt(e,t,i,s){var r=s,n=!0,a=()=>(n&&(n=!1,r=s),r),o;o=e[t],o===void 0&&s!==void 0&&(o=a());var h;return h=()=>{var l=e[t];return l===void 0?a():(n=!0,l)},h}const ki={claude:{upload:!0,context:!0,web:!0,slash:!0,images:!0,defaultModel:"claude-opus-4-5",label:"Claude"},codex:{upload:!0,context:!0,web:!1,slash:!0,images:!1,defaultModel:"gpt-5.4",label:"Codex"},ollama:{upload:!1,context:!0,web:!1,slash:!0,images:!1,defaultModel:"qwen3:8b",label:"Ollama"}};function $d(e){return ki[e]??ki.claude}var qd=G(''),Gd=G(''),Kd=G(''),Jd=G(''),jd=G(''),Yd=G(''),Vd=G(''),Xd=G(''),Zd=G(''),eu=G(''),tu=G(''),iu=G(''),su=G(''),ru=G('
',1);function nu(e,t){pt(t,!0);let i=qt(t,"model",3,"claude-opus-4-5"),s=qt(t,"provider",3,"claude"),r=qt(t,"contextPct",3,78),n=qt(t,"disabled",3,!1),a,o=Z(null),h=st(()=>$d(s())),l=st(()=>{const V=Math.min(100,Math.max(0,r())),ie=8,oe=10,X=10,j=V/100*2*Math.PI,F=oe,N=X-ie,K=oe+ie*Math.sin(j),le=X-ie*Math.cos(j),de=V>50?1:0;return V>=100?`M ${oe} ${X-ie} A ${ie} ${ie} 0 1 1 ${oe-.001} ${X-ie} Z`:`M ${F} ${N} A ${ie} ${ie} 0 ${de} 1 ${K} ${le}`}),c=st(()=>r()>=75?"var(--ctp-red)":r()>=50?"var(--ctp-yellow)":"var(--ctp-green)");function d(){a&&(a.style.height="auto",a.style.height=Math.min(a.scrollHeight,200)+"px")}function g(V){var ie;V.key==="Enter"&&!V.shiftKey&&(V.preventDefault(),t.value.trim()&&((ie=t.onSend)==null||ie.call(t))),V.key==="Escape"&&W(o,null)}function _(V){var ie;(ie=t.onInput)==null||ie.call(t,V.target.value),d()}function v(V){W(o,p(o)===V?null:V,!0)}function u(){W(o,null)}function f(V){V.key==="Escape"&&W(o,null)}const A=["Upload from computer","Paste from clipboard"],k=["Add file","Add folder","Add URL","Add image"],b=["Search the web","Fetch URL"],w=["/help","/clear","/compact","/review","/test","/commit"];var y=ru(),m=ct(y);m.__keydown=f;var C=R(m);C.__input=_,C.__keydown=g,ar(C,V=>a=V,()=>a);var E=P(C,2),S=R(E);{var D=V=>{var ie=Kd(),oe=R(ie);let X;oe.__click=()=>v("upload");var j=P(oe,2);{var F=N=>{var K=Gd();K.__keydown=le=>le.key==="Escape"&&u(),Te(K,21,()=>A,Fe,(le,de)=>{var fe=qd();fe.__click=u;var me=R(fe);ee(()=>J(me,p(de))),z(le,fe)}),z(N,K)};se(j,N=>{p(o)==="upload"&&N(F)})}ee(()=>X=ce(oe,1,"footer-btn svelte-icb1la",null,X,{active:p(o)==="upload"})),z(V,ie)};se(S,V=>{p(h).upload&&V(D)})}var M=P(S,2);{var x=V=>{var ie=Yd(),oe=R(ie);let X;oe.__click=()=>v("context");var j=P(oe,2);{var F=N=>{var K=jd();K.__keydown=le=>le.key==="Escape"&&u(),Te(K,21,()=>k,Fe,(le,de)=>{var fe=Jd();let me;fe.__click=u;var Me=R(fe);ee(()=>{me=ce(fe,1,"popup-item svelte-icb1la",null,me,{"disabled-item":p(de)==="Add image"&&!p(h).images}),J(Me,p(de))}),z(le,fe)}),z(N,K)};se(j,N=>{p(o)==="context"&&N(F)})}ee(()=>X=ce(oe,1,"footer-btn svelte-icb1la",null,X,{active:p(o)==="context"})),z(V,ie)};se(M,V=>{p(h).context&&V(x)})}var B=P(M,2);{var T=V=>{var ie=Zd(),oe=R(ie);let X;oe.__click=()=>v("web");var j=P(oe,2);{var F=N=>{var K=Xd();K.__keydown=le=>le.key==="Escape"&&u(),Te(K,21,()=>b,Fe,(le,de)=>{var fe=Vd();fe.__click=u;var me=R(fe);ee(()=>J(me,p(de))),z(le,fe)}),z(N,K)};se(j,N=>{p(o)==="web"&&N(F)})}ee(()=>X=ce(oe,1,"footer-btn svelte-icb1la",null,X,{active:p(o)==="web"})),z(V,ie)};se(B,V=>{p(h).web&&V(T)})}var Q=P(B,2);{var O=V=>{var ie=iu(),oe=R(ie);let X;oe.__click=()=>v("slash");var j=P(oe,2);{var F=N=>{var K=tu();K.__keydown=le=>le.key==="Escape"&&u(),Te(K,21,()=>w,Fe,(le,de)=>{var fe=eu();fe.__click=u;var me=R(fe);ee(()=>J(me,p(de))),z(le,fe)}),z(N,K)};se(j,N=>{p(o)==="slash"&&N(F)})}ee(()=>X=ce(oe,1,"footer-btn svelte-icb1la",null,X,{active:p(o)==="slash"})),z(V,ie)};se(Q,V=>{p(h).slash&&V(O)})}var L=P(Q,2),I=R(L),H=P(R(I)),U=P(I,2),re=R(U),ve=P(L,4),he=R(ve),ne=P(ve,4);ne.__click=function(...V){var ie;(ie=t.onSend)==null||ie.apply(this,V)};var pe=P(m,2);{var _e=V=>{var ie=su();ie.__click=u,ie.__keydown=oe=>oe.key==="Escape"&&u(),z(V,ie)};se(pe,V=>{p(o)!==null&&V(_e)})}ee(V=>{ir(C,t.value),ue(L,"title",`Context window: ${r()??""}% used`),ue(H,"d",p(l)),ue(H,"stroke",p(c)),Ut(U,`color: ${p(c)??""}`),J(re,`${r()??""}%`),J(he,i()),ne.disabled=V},[()=>n()||!t.value.trim()]),z(e,y),mt()}It(["keydown","input","click"]);var ou=G('
'),au=G('
'),lu=G('
'),hu=G('
'),cu=G('
'),du=G('
'),uu=G(' '),_u=G('
'),fu=G(''),vu=G('
input
'),gu=G('
'),pu=G('
'),mu=G('
result
'),Au=G('
'),wu=G('
',1);function Cu(e,t){pt(t,!0);let i=qt(t,"model",3,"claude-opus-4-5"),s=qt(t,"provider",3,"claude"),r=qt(t,"contextPct",3,0),n,a=Z(""),o=Z(rt(new Set)),h,l=Z(!1);ns(()=>{t.messages.length,jo().then(()=>{n&&(n.scrollTop=n.scrollHeight)})});function c(){var I;const L=p(a).trim();L&&(W(a,""),(I=t.onSend)==null||I.call(t,L))}function d(L){const I=new Set(p(o));I.has(L)?I.delete(L):I.add(L),W(o,I,!0)}function g(L){return L>=1e3?`${(L/1e3).toFixed(1)}k`:String(L)}function _(L){return`$${L.toFixed(3)}`}function v(L){return L==="running"?"dot-progress":L==="stalled"?"dot-error":"dot-success"}function u(L){L.preventDefault(),W(l,!0);const I=L.clientY,H=(h==null?void 0:h.getBoundingClientRect().height)??300;function U(ve){if(!h)return;const he=Math.max(120,H+(ve.clientY-I));h.style.flexBasis=`${he}px`,h.style.flexGrow="0",h.style.flexShrink="0"}function re(){W(l,!1),window.removeEventListener("mousemove",U),window.removeEventListener("mouseup",re)}window.addEventListener("mousemove",U),window.addEventListener("mouseup",re)}var f=wu(),A=ct(f),k=R(A),b=P(k,2),w=R(b),y=P(b,2),m=R(y),C=P(y,4),E=R(C),S=P(C,4),D=R(S),M=P(A,2),x=R(M);Te(x,23,()=>t.messages,L=>L.id,(L,I,H)=>{const U=st(()=>p(H)===0),re=st(()=>p(H)===t.messages.length-1);var ve=Au(),he=R(ve);{var ne=_e=>{var V=ou(),ie=R(V);ee(()=>J(ie,p(I).content)),z(_e,V)},pe=_e=>{var V=$t(),ie=ct(V);{var oe=j=>{var F=hu(),N=R(F);{var K=Me=>{var Ae=au();z(Me,Ae)};se(N,Me=>{p(U)||Me(K)})}var le=P(N,4);{var de=Me=>{var Ae=lu();z(Me,Ae)};se(le,Me=>{p(re)||Me(de)})}var fe=P(le,2),me=R(fe);ee(()=>J(me,p(I).content)),z(j,F)},X=j=>{var F=$t(),N=ct(F);{var K=de=>{var fe=vu(),me=R(fe);{var Me=Ne=>{var wt=cu();z(Ne,wt)};se(me,Ne=>{p(U)||Ne(Me)})}var Ae=P(me,4);{var we=Ne=>{var wt=du();z(Ne,wt)};se(Ae,Ne=>{p(re)||Ne(we)})}var ye=P(Ae,2),ae=R(ye),Ee=R(ae),qe=R(Ee),Oe=P(Ee,2);{var Lt=Ne=>{var wt=uu(),Os=R(wt);ee(()=>J(Os,p(I).toolPath)),z(Ne,wt)};se(Oe,Ne=>{p(I).toolPath&&Ne(Lt)})}var At=P(ae,2);let Se;var Ce=R(At),xe=P(R(Ce),2),ke=R(xe),Pe=P(Ce,2);{var Je=Ne=>{var wt=_u(),Os=R(wt);Os.__click=()=>d(p(I).id),z(Ne,wt)};se(Pe,Ne=>{p(o).has(p(I).id)||Ne(Je)})}var Rt=P(At,2);{var xt=Ne=>{var wt=fu();wt.__click=()=>d(p(I).id),z(Ne,wt)};se(Rt,Ne=>{p(o).has(p(I).id)&&Ne(xt)})}ee(Ne=>{J(qe,p(I).toolName??"Tool"),Se=ce(At,1,"tool-body svelte-9vsw7f",null,Se,Ne),J(ke,p(I).content)},[()=>({expanded:p(o).has(p(I).id)})]),z(de,fe)},le=de=>{var fe=$t(),me=ct(fe);{var Me=Ae=>{var we=mu(),ye=R(we);{var ae=Ce=>{var xe=gu();z(Ce,xe)};se(ye,Ce=>{p(U)||Ce(ae)})}var Ee=P(ye,4);{var qe=Ce=>{var xe=pu();z(Ce,xe)};se(Ee,Ce=>{p(re)||Ce(qe)})}var Oe=P(Ee,2),Lt=R(Oe),At=P(R(Lt),2),Se=R(At);ee(()=>J(Se,p(I).content)),z(Ae,we)};se(me,Ae=>{p(I).role==="tool-result"&&Ae(Me)},!0)}z(de,fe)};se(N,de=>{p(I).role==="tool-call"?de(K):de(le,!1)},!0)}z(j,F)};se(ie,j=>{p(I).role==="assistant"?j(oe):j(X,!1)},!0)}z(_e,V)};se(he,_e=>{p(I).role==="user"?_e(ne):_e(pe,!1)})}z(L,ve)}),ar(x,L=>n=L,()=>n);var B=P(x,4),T=R(B);nu(T,{get value(){return p(a)},get model(){return i()},get provider(){return s()},get contextPct(){return r()},onSend:c,onInput:L=>W(a,L,!0)}),ar(M,L=>h=L,()=>h);var Q=P(M,2);let O;Q.__mousedown=u,ee((L,I,H)=>{ce(k,1,`strip-dot ${L??""}`,"svelte-9vsw7f"),J(w,t.status==="running"?"Running":t.status==="stalled"?"Stalled":"Done"),J(m,i()),J(E,`${I??""} tok`),J(D,H),O=ce(Q,1,"resize-handle svelte-9vsw7f",null,O,{dragging:p(l)})},[()=>v(t.status),()=>g(t.tokens),()=>_(t.costUsd)]),z(e,f),mt()}It(["click","mousedown"]);/** +var Ec=Object.defineProperty;var wa=e=>{throw TypeError(e)};var Bc=(e,t,i)=>t in e?Ec(e,t,{enumerable:!0,configurable:!0,writable:!0,value:i}):e[t]=i;var _i=(e,t,i)=>Bc(e,typeof t!="symbol"?t+"":t,i),xn=(e,t,i)=>t.has(e)||wa("Cannot "+i);var $=(e,t,i)=>(xn(e,t,"read from private field"),i?i.call(e):t.get(e)),Le=(e,t,i)=>t.has(e)?wa("Cannot add the same private member more than once"):t instanceof WeakSet?t.add(e):t.set(e,i),Se=(e,t,i,s)=>(xn(e,t,"write to private field"),s?s.call(e,i):t.set(e,i),i),Ve=(e,t,i)=>(xn(e,t,"access private method"),i);(function(){const t=document.createElement("link").relList;if(t&&t.supports&&t.supports("modulepreload"))return;for(const r of document.querySelectorAll('link[rel="modulepreload"]'))s(r);new MutationObserver(r=>{for(const n of r)if(n.type==="childList")for(const a of n.addedNodes)a.tagName==="LINK"&&a.rel==="modulepreload"&&s(a)}).observe(document,{childList:!0,subtree:!0});function i(r){const n={};return r.integrity&&(n.integrity=r.integrity),r.referrerPolicy&&(n.referrerPolicy=r.referrerPolicy),r.crossOrigin==="use-credentials"?n.credentials="include":r.crossOrigin==="anonymous"?n.credentials="omit":n.credentials="same-origin",n}function s(r){if(r.ep)return;r.ep=!0;const n=i(r);fetch(r.href,n)}})();const Ic="5";var Nl;typeof window<"u"&&((Nl=window.__svelte??(window.__svelte={})).v??(Nl.v=new Set)).add(Ic);const Dc=1,Mc=2,zl=4,Lc=8,Rc=16,Tc=1,Pc=2,yt=Symbol(),Qc="http://www.w3.org/1999/xhtml",Yn=!1;var Ul=Array.isArray,Oc=Array.prototype.indexOf,fn=Array.from,Nc=Object.defineProperty,nr=Object.getOwnPropertyDescriptor,Fc=Object.getOwnPropertyDescriptors,Hc=Object.prototype,Wc=Array.prototype,$l=Object.getPrototypeOf,Ca=Object.isExtensible;const kn=()=>{};function zc(e){for(var t=0;t{e=s,t=r});return{promise:i,resolve:e,reject:t}}const wt=2,jo=4,Yo=8,Uc=1<<24,Ri=16,Ti=32,Cs=64,vn=128,ui=512,xt=1024,Nt=2048,yi=4096,Kt=8192,Yi=16384,Vo=32768,Ts=65536,ba=1<<17,Gl=1<<18,Fs=1<<19,$c=1<<20,Ii=1<<25,gs=32768,Vn=1<<21,Xo=1<<22,Vi=1<<23,Wr=Symbol("$state"),qc=Symbol(""),Bs=new class extends Error{constructor(){super(...arguments);_i(this,"name","StaleReactionError");_i(this,"message","The reaction that called `getAbortSignal()` was re-run or destroyed")}};function Kl(e){throw new Error("https://svelte.dev/e/lifecycle_outside_component")}function Gc(){throw new Error("https://svelte.dev/e/async_derived_orphan")}function Kc(e){throw new Error("https://svelte.dev/e/effect_in_teardown")}function Jc(){throw new Error("https://svelte.dev/e/effect_in_unowned_derived")}function jc(e){throw new Error("https://svelte.dev/e/effect_orphan")}function Yc(){throw new Error("https://svelte.dev/e/effect_update_depth_exceeded")}function Vc(){throw new Error("https://svelte.dev/e/state_descriptors_fixed")}function Xc(){throw new Error("https://svelte.dev/e/state_prototype_fixed")}function Zc(){throw new Error("https://svelte.dev/e/state_unsafe_mutation")}function ed(){throw new Error("https://svelte.dev/e/svelte_boundary_reset_onerror")}function td(){console.warn("https://svelte.dev/e/svelte_boundary_reset_noop")}function Jl(e){return e===this.v}function id(e,t){return e!=e?t==t:e!==t||e!==null&&typeof e=="object"||typeof e=="function"}function jl(e){return!id(e,this.v)}let br=!1,sd=!1;function rd(){br=!0}let Ze=null;function Ps(e){Ze=e}function Ct(e,t=!1,i){Ze={p:Ze,i:!1,c:null,e:null,s:e,x:null,l:br&&!t?{s:null,u:null,$:[]}:null}}function bt(e){var t=Ze,i=t.e;if(i!==null){t.e=null;for(var s of i)_h(s)}return e!==void 0&&(t.x=e),t.i=!0,Ze=t.p,e??{}}function Sr(){return!br||Ze!==null&&Ze.l===null}let rs=[];function Yl(){var e=rs;rs=[],zc(e)}function Hs(e){if(rs.length===0&&!or){var t=rs;queueMicrotask(()=>{t===rs&&Yl()})}rs.push(e)}function nd(){for(;rs.length>0;)Yl()}function Vl(e){var t=Qe;if(t===null)return De.f|=Vi,e;if((t.f&Vo)===0){if((t.f&vn)===0)throw e;t.b.error(e)}else Qs(e,t)}function Qs(e,t){for(;t!==null;){if((t.f&vn)!==0)try{t.b.error(e);return}catch(i){e=i}t=t.parent}throw e}const Lr=new Set;let Be=null,zr=null,tt=null,ti=[],gn=null,Xn=!1,or=!1;var Ds,Ms,os,as,Ar,Ls,Rs,At,Zn,Vs,eo,Xl,Zl;const dn=class dn{constructor(){Le(this,At);_i(this,"committed",!1);_i(this,"current",new Map);_i(this,"previous",new Map);Le(this,Ds,new Set);Le(this,Ms,new Set);Le(this,os,0);Le(this,as,0);Le(this,Ar,null);Le(this,Ls,new Set);Le(this,Rs,new Set);_i(this,"skipped_effects",new Set);_i(this,"is_fork",!1)}is_deferred(){return this.is_fork||$(this,as)>0}process(t){var s;ti=[],zr=null,this.apply();var i={parent:null,effect:null,effects:[],render_effects:[]};for(const r of t)Ve(this,At,Zn).call(this,r,i);this.is_fork||Ve(this,At,Xl).call(this),this.is_deferred()?(Ve(this,At,Vs).call(this,i.effects),Ve(this,At,Vs).call(this,i.render_effects)):(zr=this,Be=null,Sa(i.render_effects),Sa(i.effects),zr=null,(s=$(this,Ar))==null||s.resolve()),tt=null}capture(t,i){this.previous.has(t)||this.previous.set(t,i),(t.f&Vi)===0&&(this.current.set(t,t.v),tt==null||tt.set(t,t.v))}activate(){Be=this,this.apply()}deactivate(){Be===this&&(Be=null,tt=null)}flush(){if(this.activate(),ti.length>0){if(eh(),Be!==null&&Be!==this)return}else $(this,os)===0&&this.process([]);this.deactivate()}discard(){for(const t of $(this,Ms))t(this);$(this,Ms).clear()}increment(t){Se(this,os,$(this,os)+1),t&&Se(this,as,$(this,as)+1)}decrement(t){Se(this,os,$(this,os)-1),t&&Se(this,as,$(this,as)-1),this.revive()}revive(){for(const t of $(this,Ls))$(this,Rs).delete(t),kt(t,Nt),ps(t);for(const t of $(this,Rs))kt(t,yi),ps(t);this.flush()}oncommit(t){$(this,Ds).add(t)}ondiscard(t){$(this,Ms).add(t)}settled(){return($(this,Ar)??Se(this,Ar,ql())).promise}static ensure(){if(Be===null){const t=Be=new dn;Lr.add(Be),or||dn.enqueue(()=>{Be===t&&t.flush()})}return Be}static enqueue(t){Hs(t)}apply(){}};Ds=new WeakMap,Ms=new WeakMap,os=new WeakMap,as=new WeakMap,Ar=new WeakMap,Ls=new WeakMap,Rs=new WeakMap,At=new WeakSet,Zn=function(t,i){var c;t.f^=xt;for(var s=t.first;s!==null;){var r=s.f,n=(r&(Ti|Cs))!==0,a=n&&(r&xt)!==0,o=a||(r&Kt)!==0||this.skipped_effects.has(s);if((s.f&vn)!==0&&((c=s.b)!=null&&c.is_pending())&&(i={parent:i,effect:s,effects:[],render_effects:[]}),!o&&s.fn!==null){n?s.f^=xt:(r&jo)!==0?i.effects.push(s):xr(s)&&((s.f&Ri)!==0&&$(this,Ls).add(s),ur(s));var h=s.first;if(h!==null){s=h;continue}}var l=s.parent;for(s=s.next;s===null&&l!==null;)l===i.effect&&(Ve(this,At,Vs).call(this,i.effects),Ve(this,At,Vs).call(this,i.render_effects),i=i.parent),s=l.next,l=l.parent}},Vs=function(t){for(const i of t)(i.f&Nt)!==0?$(this,Ls).add(i):(i.f&yi)!==0&&$(this,Rs).add(i),Ve(this,At,eo).call(this,i.deps),kt(i,xt)},eo=function(t){if(t!==null)for(const i of t)(i.f&wt)===0||(i.f&gs)===0||(i.f^=gs,Ve(this,At,eo).call(this,i.deps))},Xl=function(){if($(this,as)===0){for(const t of $(this,Ds))t();$(this,Ds).clear()}$(this,os)===0&&Ve(this,At,Zl).call(this)},Zl=function(){var n;if(Lr.size>1){this.previous.clear();var t=tt,i=!0,s={parent:null,effect:null,effects:[],render_effects:[]};for(const a of Lr){if(a===this){i=!1;continue}const o=[];for(const[l,c]of this.current){if(a.current.has(l))if(i&&c!==a.current.get(l))a.current.set(l,c);else continue;o.push(l)}if(o.length===0)continue;const h=[...a.current.keys()].filter(l=>!this.current.has(l));if(h.length>0){var r=ti;ti=[];const l=new Set,c=new Map;for(const d of o)th(d,h,l,c);if(ti.length>0){Be=a,a.apply();for(const d of ti)Ve(n=a,At,Zn).call(n,d,s);a.deactivate()}ti=r}}Be=null,tt=t}this.committed=!0,Lr.delete(this)};let Di=dn;function od(e){var t=or;or=!0;try{for(var i;;){if(nd(),ti.length===0&&(Be==null||Be.flush(),ti.length===0))return gn=null,i;eh()}}finally{or=t}}function eh(){var e=_s;Xn=!0;var t=null;try{var i=0;for(en(!0);ti.length>0;){var s=Di.ensure();if(i++>1e3){var r,n;ad()}s.process(ti),Xi.clear()}}finally{Xn=!1,en(e),gn=null}}function ad(){try{Yc()}catch(e){Qs(e,gn)}}let ci=null;function Sa(e){var t=e.length;if(t!==0){for(var i=0;i0)){Xi.clear();for(const r of ci){if((r.f&(Yi|Kt))!==0)continue;const n=[r];let a=r.parent;for(;a!==null;)ci.has(a)&&(ci.delete(a),n.push(a)),a=a.parent;for(let o=n.length-1;o>=0;o--){const h=n[o];(h.f&(Yi|Kt))===0&&ur(h)}}ci.clear()}}ci=null}}function th(e,t,i,s){if(!i.has(e)&&(i.add(e),e.reactions!==null))for(const r of e.reactions){const n=r.f;(n&wt)!==0?th(r,t,i,s):(n&(Xo|Ri))!==0&&(n&Nt)===0&&ih(r,t,s)&&(kt(r,Nt),ps(r))}}function ih(e,t,i){const s=i.get(e);if(s!==void 0)return s;if(e.deps!==null)for(const r of e.deps){if(t.includes(r))return!0;if((r.f&wt)!==0&&ih(r,t,i))return i.set(r,!0),!0}return i.set(e,!1),!1}function ps(e){for(var t=gn=e;t.parent!==null;){t=t.parent;var i=t.f;if(Xn&&t===Qe&&(i&Ri)!==0&&(i&Gl)===0)return;if((i&(Cs|Ti))!==0){if((i&xt)===0)return;t.f^=xt}}ti.push(t)}function ld(e){let t=0,i=ms(0),s;return()=>{cr()&&(p(i),ta(()=>(t===0&&(s=kr(()=>e(()=>ar(i)))),t+=1,()=>{Hs(()=>{t-=1,t===0&&(s==null||s(),s=void 0,ar(i))})})))}}var hd=Ts|Fs|vn;function cd(e,t,i){new dd(e,t,i)}var Xt,Zt,Jo,pi,ls,mi,ei,Pt,Ai,Bi,Gi,hs,Ki,cs,Ji,un,ft,ud,_d,to,Ur,$r,io;class dd{constructor(t,i,s){Le(this,ft);_i(this,"parent");Le(this,Xt,!1);Le(this,Zt);Le(this,Jo,null);Le(this,pi);Le(this,ls);Le(this,mi);Le(this,ei,null);Le(this,Pt,null);Le(this,Ai,null);Le(this,Bi,null);Le(this,Gi,null);Le(this,hs,0);Le(this,Ki,0);Le(this,cs,!1);Le(this,Ji,null);Le(this,un,ld(()=>(Se(this,Ji,ms($(this,hs))),()=>{Se(this,Ji,null)})));Se(this,Zt,t),Se(this,pi,i),Se(this,ls,s),this.parent=Qe.b,Se(this,Xt,!!$(this,pi).pending),Se(this,mi,ia(()=>{Qe.b=this;{var r=Ve(this,ft,to).call(this);try{Se(this,ei,ii(()=>s(r)))}catch(n){this.error(n)}$(this,Ki)>0?Ve(this,ft,$r).call(this):Se(this,Xt,!1)}return()=>{var n;(n=$(this,Gi))==null||n.remove()}},hd))}is_pending(){return $(this,Xt)||!!this.parent&&this.parent.is_pending()}has_pending_snippet(){return!!$(this,pi).pending}update_pending_count(t){Ve(this,ft,io).call(this,t),Se(this,hs,$(this,hs)+t),$(this,Ji)&&Os($(this,Ji),$(this,hs))}get_effect_pending(){return $(this,un).call(this),p($(this,Ji))}error(t){var i=$(this,pi).onerror;let s=$(this,pi).failed;if($(this,cs)||!i&&!s)throw t;$(this,ei)&&(Ot($(this,ei)),Se(this,ei,null)),$(this,Pt)&&(Ot($(this,Pt)),Se(this,Pt,null)),$(this,Ai)&&(Ot($(this,Ai)),Se(this,Ai,null));var r=!1,n=!1;const a=()=>{if(r){td();return}r=!0,n&&ed(),Di.ensure(),Se(this,hs,0),$(this,Ai)!==null&&us($(this,Ai),()=>{Se(this,Ai,null)}),Se(this,Xt,this.has_pending_snippet()),Se(this,ei,Ve(this,ft,Ur).call(this,()=>(Se(this,cs,!1),ii(()=>$(this,ls).call(this,$(this,Zt)))))),$(this,Ki)>0?Ve(this,ft,$r).call(this):Se(this,Xt,!1)};var o=De;try{Qt(null),n=!0,i==null||i(t,a),n=!1}catch(h){Qs(h,$(this,mi)&&$(this,mi).parent)}finally{Qt(o)}s&&Hs(()=>{Se(this,Ai,Ve(this,ft,Ur).call(this,()=>{Di.ensure(),Se(this,cs,!0);try{return ii(()=>{s($(this,Zt),()=>t,()=>a)})}catch(h){return Qs(h,$(this,mi).parent),null}finally{Se(this,cs,!1)}}))})}}Xt=new WeakMap,Zt=new WeakMap,Jo=new WeakMap,pi=new WeakMap,ls=new WeakMap,mi=new WeakMap,ei=new WeakMap,Pt=new WeakMap,Ai=new WeakMap,Bi=new WeakMap,Gi=new WeakMap,hs=new WeakMap,Ki=new WeakMap,cs=new WeakMap,Ji=new WeakMap,un=new WeakMap,ft=new WeakSet,ud=function(){try{Se(this,ei,ii(()=>$(this,ls).call(this,$(this,Zt))))}catch(t){this.error(t)}Se(this,Xt,!1)},_d=function(){const t=$(this,pi).pending;t&&(Se(this,Pt,ii(()=>t($(this,Zt)))),Di.enqueue(()=>{var i=Ve(this,ft,to).call(this);Se(this,ei,Ve(this,ft,Ur).call(this,()=>(Di.ensure(),ii(()=>$(this,ls).call(this,i))))),$(this,Ki)>0?Ve(this,ft,$r).call(this):(us($(this,Pt),()=>{Se(this,Pt,null)}),Se(this,Xt,!1))}))},to=function(){var t=$(this,Zt);return $(this,Xt)&&(Se(this,Gi,Zi()),$(this,Zt).before($(this,Gi)),t=$(this,Gi)),t},Ur=function(t){var i=Qe,s=De,r=Ze;xi($(this,mi)),Qt($(this,mi)),Ps($(this,mi).ctx);try{return t()}catch(n){return Vl(n),null}finally{xi(i),Qt(s),Ps(r)}},$r=function(){const t=$(this,pi).pending;$(this,ei)!==null&&(Se(this,Bi,document.createDocumentFragment()),$(this,Bi).append($(this,Gi)),Ah($(this,ei),$(this,Bi))),$(this,Pt)===null&&Se(this,Pt,ii(()=>t($(this,Zt))))},io=function(t){var i;if(!this.has_pending_snippet()){this.parent&&Ve(i=this.parent,ft,io).call(i,t);return}Se(this,Ki,$(this,Ki)+t),$(this,Ki)===0&&(Se(this,Xt,!1),$(this,Pt)&&us($(this,Pt),()=>{Se(this,Pt,null)}),$(this,Bi)&&($(this,Zt).before($(this,Bi)),Se(this,Bi,null)))};function fd(e,t,i,s){const r=Sr()?Zo:sh;if(i.length===0&&e.length===0){s(t.map(r));return}var n=Be,a=Qe,o=vd();function h(){Promise.all(i.map(l=>gd(l))).then(l=>{o();try{s([...t.map(r),...l])}catch(c){(a.f&Yi)===0&&Qs(c,a)}n==null||n.deactivate(),Xr()}).catch(l=>{Qs(l,a)})}e.length>0?Promise.all(e).then(()=>{o();try{return h()}finally{n==null||n.deactivate(),Xr()}}):h()}function vd(){var e=Qe,t=De,i=Ze,s=Be;return function(n=!0){xi(e),Qt(t),Ps(i),n&&(s==null||s.activate())}}function Xr(){xi(null),Qt(null),Ps(null)}function Zo(e){var t=wt|Nt,i=De!==null&&(De.f&wt)!==0?De:null;return Qe!==null&&(Qe.f|=Fs),{ctx:Ze,deps:null,effects:null,equals:Jl,f:t,fn:e,reactions:null,rv:0,v:yt,wv:0,parent:i??Qe,ac:null}}function gd(e,t){let i=Qe;i===null&&Gc();var s=i.b,r=void 0,n=ms(yt),a=!De,o=new Map;return Dd(()=>{var v;var h=ql();r=h.promise;try{Promise.resolve(e()).then(h.resolve,h.reject).then(()=>{l===Be&&l.committed&&l.deactivate(),Xr()})}catch(u){h.reject(u),Xr()}var l=Be;if(a){var c=!s.is_pending();s.update_pending_count(1),l.increment(c),(v=o.get(l))==null||v.reject(Bs),o.delete(l),o.set(l,h)}const d=(u,g=void 0)=>{if(l.activate(),g)g!==Bs&&(n.f|=Vi,Os(n,g));else{(n.f&Vi)!==0&&(n.f^=Vi),Os(n,u);for(const[_,f]of o){if(o.delete(_),_===l)break;f.reject(Bs)}}a&&(s.update_pending_count(-1),l.decrement(c))};h.promise.then(d,u=>d(null,u||"unknown"))}),uh(()=>{for(const h of o.values())h.reject(Bs)}),new Promise(h=>{function l(c){function d(){c===r?h(n):l(r)}c.then(d,d)}l(r)})}function ot(e){const t=Zo(e);return wh(t),t}function sh(e){const t=Zo(e);return t.equals=jl,t}function rh(e){var t=e.effects;if(t!==null){e.effects=null;for(var i=0;i0&&!oh&&Ad()}return t}function Ad(){oh=!1;var e=_s;en(!0);const t=Array.from(so);try{for(const i of t)(i.f&xt)!==0&&kt(i,yi),xr(i)&&ur(i)}finally{en(e)}so.clear()}function wd(e,t=1){var i=p(e),s=t===1?i++:i--;return W(e,i),s}function Cd(e,t=1){var i=p(e);return W(e,t===1?++i:--i)}function ar(e){W(e,e.v+1)}function ah(e,t){var i=e.reactions;if(i!==null)for(var s=Sr(),r=i.length,n=0;n{if(fs===n)return o();var h=De,l=fs;Qt(null),Ea(n);var c=o();return Qt(h),Ea(l),c};return s&&i.set("length",V(e.length)),new Proxy(e,{defineProperty(o,h,l){(!("value"in l)||l.configurable===!1||l.enumerable===!1||l.writable===!1)&&Vc();var c=i.get(h);return c===void 0?c=a(()=>{var d=V(l.value);return i.set(h,d),d}):W(c,l.value,!0),!0},deleteProperty(o,h){var l=i.get(h);if(l===void 0){if(h in o){const c=a(()=>V(yt));i.set(h,c),ar(r)}}else W(l,yt),ar(r);return!0},get(o,h,l){var u;if(h===Wr)return e;var c=i.get(h),d=h in o;if(c===void 0&&(!d||(u=nr(o,h))!=null&&u.writable)&&(c=a(()=>{var g=Ne(d?o[h]:yt),_=V(g);return _}),i.set(h,c)),c!==void 0){var v=p(c);return v===yt?void 0:v}return Reflect.get(o,h,l)},getOwnPropertyDescriptor(o,h){var l=Reflect.getOwnPropertyDescriptor(o,h);if(l&&"value"in l){var c=i.get(h);c&&(l.value=p(c))}else if(l===void 0){var d=i.get(h),v=d==null?void 0:d.v;if(d!==void 0&&v!==yt)return{enumerable:!0,configurable:!0,value:v,writable:!0}}return l},has(o,h){var v;if(h===Wr)return!0;var l=i.get(h),c=l!==void 0&&l.v!==yt||Reflect.has(o,h);if(l!==void 0||Qe!==null&&(!c||(v=nr(o,h))!=null&&v.writable)){l===void 0&&(l=a(()=>{var u=c?Ne(o[h]):yt,g=V(u);return g}),i.set(h,l));var d=p(l);if(d===yt)return!1}return c},set(o,h,l,c){var S;var d=i.get(h),v=h in o;if(s&&h==="length")for(var u=l;uV(yt)),i.set(u+"",g))}if(d===void 0)(!v||(S=nr(o,h))!=null&&S.writable)&&(d=a(()=>V(void 0)),W(d,Ne(l)),i.set(h,d));else{v=d.v!==yt;var _=a(()=>Ne(l));W(d,_)}var f=Reflect.getOwnPropertyDescriptor(o,h);if(f!=null&&f.set&&f.set.call(c,l),!v){if(s&&typeof h=="string"){var A=i.get("length"),x=Number(h);Number.isInteger(x)&&x>=A.v&&W(A,x+1)}ar(r)}return!0},ownKeys(o){p(r);var h=Reflect.ownKeys(o).filter(d=>{var v=i.get(d);return v===void 0||v.v!==yt});for(var[l,c]of i)c.v!==yt&&!(l in o)&&h.push(l);return h},setPrototypeOf(){Xc()}})}var ya,lh,hh,ch;function bd(){if(ya===void 0){ya=window,lh=/Firefox/.test(navigator.userAgent);var e=Element.prototype,t=Node.prototype,i=Text.prototype;hh=nr(t,"firstChild").get,ch=nr(t,"nextSibling").get,Ca(e)&&(e.__click=void 0,e.__className=void 0,e.__attributes=null,e.__style=void 0,e.__e=void 0),Ca(i)&&(i.__t=void 0)}}function Zi(e=""){return document.createTextNode(e)}function Zr(e){return hh.call(e)}function yr(e){return ch.call(e)}function R(e,t){return Zr(e)}function at(e,t=!1){{var i=Zr(e);return i instanceof Comment&&i.data===""?yr(i):i}}function P(e,t=1,i=!1){let s=e;for(;t--;)s=yr(s);return s}function Sd(e){e.textContent=""}function dh(){return!1}let xa=!1;function yd(){xa||(xa=!0,document.addEventListener("reset",e=>{Promise.resolve().then(()=>{var t;if(!e.defaultPrevented)for(const i of e.target.elements)(t=i.__on_r)==null||t.call(i)})},{capture:!0}))}function pn(e){var t=De,i=Qe;Qt(null),xi(null);try{return e()}finally{Qt(t),xi(i)}}function xd(e,t,i,s=i){e.addEventListener(t,()=>pn(i));const r=e.__on_r;r?e.__on_r=()=>{r(),s(!0)}:e.__on_r=()=>s(!0),yd()}function kd(e){Qe===null&&(De===null&&jc(),Jc()),Ws&&Kc()}function Ed(e,t){var i=t.last;i===null?t.last=t.first=e:(i.next=e,e.prev=i,t.last=e)}function Pi(e,t,i){var s=Qe;s!==null&&(s.f&Kt)!==0&&(e|=Kt);var r={ctx:Ze,deps:null,nodes:null,f:e|Nt|ui,first:null,fn:t,last:null,next:null,parent:s,b:s&&s.b,prev:null,teardown:null,wv:0,ac:null};if(i)try{ur(r),r.f|=Vo}catch(o){throw Ot(r),o}else t!==null&&ps(r);var n=r;if(i&&n.deps===null&&n.teardown===null&&n.nodes===null&&n.first===n.last&&(n.f&Fs)===0&&(n=n.first,(e&Ri)!==0&&(e&Ts)!==0&&n!==null&&(n.f|=Ts)),n!==null&&(n.parent=s,s!==null&&Ed(n,s),De!==null&&(De.f&wt)!==0&&(e&Cs)===0)){var a=De;(a.effects??(a.effects=[])).push(n)}return r}function cr(){return De!==null&&!Ci}function uh(e){const t=Pi(Yo,null,!1);return kt(t,xt),t.teardown=e,t}function ri(e){kd();var t=Qe.f,i=!De&&(t&Ti)!==0&&(t&Vo)===0;if(i){var s=Ze;(s.e??(s.e=[])).push(e)}else return _h(e)}function _h(e){return Pi(jo|$c,e,!1)}function Bd(e){Di.ensure();const t=Pi(Cs|Fs,e,!0);return(i={})=>new Promise(s=>{i.outro?us(t,()=>{Ot(t),s(void 0)}):(Ot(t),s(void 0))})}function Id(e){return Pi(jo,e,!1)}function Dd(e){return Pi(Xo|Fs,e,!0)}function ta(e,t=0){return Pi(Yo|t,e,!0)}function ee(e,t=[],i=[],s=[]){fd(s,t,i,r=>{Pi(Yo,()=>e(...r.map(p)),!0)})}function ia(e,t=0){var i=Pi(Ri|t,e,!0);return i}function ii(e){return Pi(Ti|Fs,e,!0)}function fh(e){var t=e.teardown;if(t!==null){const i=Ws,s=De;ka(!0),Qt(null);try{t.call(null)}finally{ka(i),Qt(s)}}}function vh(e,t=!1){var i=e.first;for(e.first=e.last=null;i!==null;){const r=i.ac;r!==null&&pn(()=>{r.abort(Bs)});var s=i.next;(i.f&Cs)!==0?i.parent=null:Ot(i,t),i=s}}function Md(e){for(var t=e.first;t!==null;){var i=t.next;(t.f&Ti)===0&&Ot(t),t=i}}function Ot(e,t=!0){var i=!1;(t||(e.f&Gl)!==0)&&e.nodes!==null&&e.nodes.end!==null&&(Ld(e.nodes.start,e.nodes.end),i=!0),vh(e,t&&!i),tn(e,0),kt(e,Yi);var s=e.nodes&&e.nodes.t;if(s!==null)for(const n of s)n.stop();fh(e);var r=e.parent;r!==null&&r.first!==null&&gh(e),e.next=e.prev=e.teardown=e.ctx=e.deps=e.fn=e.nodes=e.ac=null}function Ld(e,t){for(;e!==null;){var i=e===t?null:yr(e);e.remove(),e=i}}function gh(e){var t=e.parent,i=e.prev,s=e.next;i!==null&&(i.next=s),s!==null&&(s.prev=i),t!==null&&(t.first===e&&(t.first=s),t.last===e&&(t.last=i))}function us(e,t,i=!0){var s=[];ph(e,s,!0);var r=()=>{i&&Ot(e),t&&t()},n=s.length;if(n>0){var a=()=>--n||r();for(var o of s)o.out(a)}else r()}function ph(e,t,i){if((e.f&Kt)===0){e.f^=Kt;var s=e.nodes&&e.nodes.t;if(s!==null)for(const o of s)(o.is_global||i)&&t.push(o);for(var r=e.first;r!==null;){var n=r.next,a=(r.f&Ts)!==0||(r.f&Ti)!==0&&(e.f&Ri)!==0;ph(r,t,a?i:!1),r=n}}}function sa(e){mh(e,!0)}function mh(e,t){if((e.f&Kt)!==0){e.f^=Kt,(e.f&xt)===0&&(kt(e,Nt),ps(e));for(var i=e.first;i!==null;){var s=i.next,r=(i.f&Ts)!==0||(i.f&Ti)!==0;mh(i,r?t:!1),i=s}var n=e.nodes&&e.nodes.t;if(n!==null)for(const a of n)(a.is_global||t)&&a.in()}}function Ah(e,t){if(e.nodes)for(var i=e.nodes.start,s=e.nodes.end;i!==null;){var r=i===s?null:yr(i);t.append(i),i=r}}let _s=!1;function en(e){_s=e}let Ws=!1;function ka(e){Ws=e}let De=null,Ci=!1;function Qt(e){De=e}let Qe=null;function xi(e){Qe=e}let It=null;function wh(e){De!==null&&(It===null?It=[e]:It.push(e))}let Bt=null,zt=0,Vt=null;function Rd(e){Vt=e}let Ch=1,dr=0,fs=dr;function Ea(e){fs=e}function bh(){return++Ch}function xr(e){var t=e.f;if((t&Nt)!==0)return!0;if(t&wt&&(e.f&=~gs),(t&yi)!==0){var i=e.deps;if(i!==null)for(var s=i.length,r=0;re.wv)return!0}(t&ui)!==0&&tt===null&&kt(e,xt)}return!1}function Sh(e,t,i=!0){var s=e.reactions;if(s!==null&&!(It!=null&&It.includes(e)))for(var r=0;r{e.ac.abort(Bs)}),e.ac=null);try{e.f|=Vn;var c=e.fn,d=c(),v=e.deps;if(Bt!==null){var u;if(tn(e,zt),v!==null&&zt>0)for(v.length=zt+Bt.length,u=0;ui==null?void 0:i.call(this,n))}return e.startsWith("pointer")||e.startsWith("touch")||e==="wheel"?Hs(()=>{t.addEventListener(e,r,s)}):t.addEventListener(e,r,s),r}function Od(e,t,i,s,r){var n={capture:s,passive:r},a=Qd(e,t,i,n);(t===document.body||t===window||t===document||t instanceof HTMLMediaElement)&&uh(()=>{t.removeEventListener(e,a,n)})}function Dt(e){for(var t=0;t{throw A});throw v}}finally{e.__root=t,delete e.currentTarget,Qt(c),xi(d)}}}function Nd(e){var t=document.createElement("template");return t.innerHTML=e.replaceAll("",""),t.content}function no(e,t){var i=Qe;i.nodes===null&&(i.nodes={start:e,end:t,a:null,t:null})}function G(e,t){var i=(t&Tc)!==0,s=(t&Pc)!==0,r,n=!e.startsWith("");return()=>{r===void 0&&(r=Nd(n?e:""+e),i||(r=Zr(r)));var a=s||lh?document.importNode(r,!0):r.cloneNode(!0);if(i){var o=Zr(a),h=a.lastChild;no(o,h)}else no(a,a);return a}}function qt(){var e=document.createDocumentFragment(),t=document.createComment(""),i=Zi();return e.append(t,i),no(t,i),e}function z(e,t){e!==null&&e.before(t)}const Fd=["touchstart","touchmove"];function Hd(e){return Fd.includes(e)}function J(e,t){var i=t==null?"":typeof t=="object"?t+"":t;i!==(e.__t??(e.__t=e.nodeValue))&&(e.__t=i,e.nodeValue=i+"")}function Wd(e,t){return zd(e,t)}const ys=new Map;function zd(e,{target:t,anchor:i,props:s={},events:r,context:n,intro:a=!0}){bd();var o=new Set,h=d=>{for(var v=0;v{var d=i??t.appendChild(Zi());return cd(d,{pending:()=>{}},v=>{if(n){Ct({});var u=Ze;u.c=n}r&&(s.$$events=r),l=e(v,s)||{},n&&bt()}),()=>{var g;for(var v of o){t.removeEventListener(v,Xs);var u=ys.get(v);--u===0?(document.removeEventListener(v,Xs),ys.delete(v)):ys.set(v,u)}ro.delete(h),d!==i&&((g=d.parentNode)==null||g.removeChild(d))}});return Ud.set(l,c),l}let Ud=new WeakMap;var di,wi,Ut,ds,wr,Cr,_n;class $d{constructor(t,i=!0){_i(this,"anchor");Le(this,di,new Map);Le(this,wi,new Map);Le(this,Ut,new Map);Le(this,ds,new Set);Le(this,wr,!0);Le(this,Cr,()=>{var t=Be;if($(this,di).has(t)){var i=$(this,di).get(t),s=$(this,wi).get(i);if(s)sa(s),$(this,ds).delete(i);else{var r=$(this,Ut).get(i);r&&($(this,wi).set(i,r.effect),$(this,Ut).delete(i),r.fragment.lastChild.remove(),this.anchor.before(r.fragment),s=r.effect)}for(const[n,a]of $(this,di)){if($(this,di).delete(n),n===t)break;const o=$(this,Ut).get(a);o&&(Ot(o.effect),$(this,Ut).delete(a))}for(const[n,a]of $(this,wi)){if(n===i||$(this,ds).has(n))continue;const o=()=>{if(Array.from($(this,di).values()).includes(n)){var l=document.createDocumentFragment();Ah(a,l),l.append(Zi()),$(this,Ut).set(n,{effect:a,fragment:l})}else Ot(a);$(this,ds).delete(n),$(this,wi).delete(n)};$(this,wr)||!s?($(this,ds).add(n),us(a,o,!1)):o()}}});Le(this,_n,t=>{$(this,di).delete(t);const i=Array.from($(this,di).values());for(const[s,r]of $(this,Ut))i.includes(s)||(Ot(r.effect),$(this,Ut).delete(s))});this.anchor=t,Se(this,wr,i)}ensure(t,i){var s=Be,r=dh();if(i&&!$(this,wi).has(t)&&!$(this,Ut).has(t))if(r){var n=document.createDocumentFragment(),a=Zi();n.append(a),$(this,Ut).set(t,{effect:ii(()=>i(a)),fragment:n})}else $(this,wi).set(t,ii(()=>i(this.anchor)));if($(this,di).set(s,t),r){for(const[o,h]of $(this,wi))o===t?s.skipped_effects.delete(h):s.skipped_effects.add(h);for(const[o,h]of $(this,Ut))o===t?s.skipped_effects.delete(h.effect):s.skipped_effects.add(h.effect);s.oncommit($(this,Cr)),s.ondiscard($(this,_n))}else $(this,Cr).call(this)}}di=new WeakMap,wi=new WeakMap,Ut=new WeakMap,ds=new WeakMap,wr=new WeakMap,Cr=new WeakMap,_n=new WeakMap;function mn(e){Ze===null&&Kl(),br&&Ze.l!==null?Gd(Ze).m.push(e):ri(()=>{const t=kr(e);if(typeof t=="function")return t})}function qd(e){Ze===null&&Kl(),mn(()=>()=>kr(e))}function Gd(e){var t=e.l;return t.u??(t.u={a:[],b:[],m:[]})}function se(e,t,i=!1){var s=new $d(e),r=i?Ts:0;function n(a,o){s.ensure(a,o)}ia(()=>{var a=!1;t((o,h=!0)=>{a=!0,n(h,o)}),a||n(!1,null)},r)}function He(e,t){return t}function Kd(e,t,i){for(var s=[],r=t.length,n,a=t.length,o=0;o{if(n){if(n.pending.delete(d),n.done.add(d),n.pending.size===0){var v=e.outrogroups;oo(fn(n.done)),v.delete(n),v.size===0&&(e.outrogroups=null)}}else a-=1},!1)}if(a===0){var h=s.length===0&&i!==null;if(h){var l=i,c=l.parentNode;Sd(c),c.append(l),e.items.clear()}oo(t,!h)}else n={pending:new Set(t),done:new Set},(e.outrogroups??(e.outrogroups=new Set)).add(n)}function oo(e,t=!0){for(var i=0;i{var A=i();return Ul(A)?A:A==null?[]:fn(A)}),v,u=!0;function g(){f.fallback=c,Jd(f,v,a,t,s),c!==null&&(v.length===0?(c.f&Ii)===0?sa(c):(c.f^=Ii,Zs(c,null,a)):us(c,()=>{c=null}))}var _=ia(()=>{v=p(d);for(var A=v.length,x=new Set,S=Be,w=dh(),y=0;yn(a)):(c=ii(()=>n(Ia??(Ia=Zi()))),c.f|=Ii)),!u)if(w){for(const[b,D]of o)x.has(b)||S.skipped_effects.add(D.e);S.oncommit(g),S.ondiscard(()=>{})}else g();p(d)}),f={effect:_,items:o,outrogroups:null,fallback:c};u=!1}function Jd(e,t,i,s,r){var D,M,k,B,T,Q,O,L,I;var n=(s&Lc)!==0,a=t.length,o=e.items,h=e.effect.first,l,c=null,d,v=[],u=[],g,_,f,A;if(n)for(A=0;A0){var b=(s&zl)!==0&&a===0?i:null;if(n){for(A=0;A{var F,U;if(d!==void 0)for(f of d)(U=(F=f.nodes)==null?void 0:F.a)==null||U.apply()})}function jd(e,t,i,s,r,n,a,o){var h=(a&Dc)!==0?(a&Rc)===0?md(i,!1,!1):ms(i):null,l=(a&Mc)!==0?ms(r):null;return{v:h,i:l,e:ii(()=>(n(t,h??i,l??r,o),()=>{e.delete(s)}))}}function Zs(e,t,i){if(e.nodes)for(var s=e.nodes.start,r=e.nodes.end,n=t&&(t.f&Ii)===0?t.nodes.start:i;s!==null;){var a=yr(s);if(n.before(s),s===r)return;s=a}}function Hi(e,t,i){t===null?e.effect.first=i:t.next=i,i===null?e.effect.last=t:i.prev=t}const Da=[...` +\r\f \v\uFEFF`];function Yd(e,t,i){var s=e==null?"":""+e;if(t&&(s=s?s+" "+t:t),i){for(var r in i)if(i[r])s=s?s+" "+r:r;else if(s.length)for(var n=r.length,a=0;(a=s.indexOf(r,a))>=0;){var o=a+n;(a===0||Da.includes(s[a-1]))&&(o===s.length||Da.includes(s[o]))?s=(a===0?"":s.substring(0,a))+s.substring(o+1):a=o}}return s===""?null:s}function Ma(e,t=!1){var i=t?" !important;":";",s="";for(var r in e){var n=e[r];n!=null&&n!==""&&(s+=" "+r+": "+n+i)}return s}function En(e){return e[0]!=="-"||e[1]!=="-"?e.toLowerCase():e}function Vd(e,t){if(t){var i="",s,r;if(Array.isArray(t)?(s=t[0],r=t[1]):s=t,e){e=String(e).replaceAll(/\s*\/\*.*?\*\/\s*/g,"").trim();var n=!1,a=0,o=!1,h=[];s&&h.push(...Object.keys(s).map(En)),r&&h.push(...Object.keys(r).map(En));var l=0,c=-1;const _=e.length;for(var d=0;d<_;d++){var v=e[d];if(o?v==="/"&&e[d-1]==="*"&&(o=!1):n?n===v&&(n=!1):v==="/"&&e[d+1]==="*"?o=!0:v==='"'||v==="'"?n=v:v==="("?a++:v===")"&&a--,!o&&n===!1&&a===0){if(v===":"&&c===-1)c=d;else if(v===";"||d===_-1){if(c!==-1){var u=En(e.substring(l,c).trim());if(!h.includes(u)){v!==";"&&d++;var g=e.substring(l,d).trim();i+=" "+g+";"}}l=d+1,c=-1}}}}return s&&(i+=Ma(s)),r&&(i+=Ma(r,!0)),i=i.trim(),i===""?null:i}return e==null?null:String(e)}function ce(e,t,i,s,r,n){var a=e.__className;if(a!==i||a===void 0){var o=Yd(i,s,n);o==null?e.removeAttribute("class"):t?e.className=o:e.setAttribute("class",o),e.__className=i}else if(n&&r!==n)for(var h in n){var l=!!n[h];(r==null||l!==!!r[h])&&e.classList.toggle(h,l)}return n}function Bn(e,t={},i,s){for(var r in i){var n=i[r];t[r]!==n&&(i[r]==null?e.style.removeProperty(r):e.style.setProperty(r,n,s))}}function $t(e,t,i,s){var r=e.__style;if(r!==t){var n=Vd(t,s);n==null?e.removeAttribute("style"):e.style.cssText=n,e.__style=t}else s&&(Array.isArray(s)?(Bn(e,i==null?void 0:i[0],s[0]),Bn(e,i==null?void 0:i[1],s[1],"important")):Bn(e,i,s));return s}const Xd=Symbol("is custom element"),Zd=Symbol("is html");function lr(e,t){var i=na(e);i.value===(i.value=t??void 0)||e.value===t&&(t!==0||e.nodeName!=="PROGRESS")||(e.value=t??"")}function eu(e,t){var i=na(e);i.checked!==(i.checked=t??void 0)&&(e.checked=t)}function ue(e,t,i,s){var r=na(e);r[t]!==(r[t]=i)&&(t==="loading"&&(e[qc]=i),i==null?e.removeAttribute(t):typeof i!="string"&&tu(e).includes(t)?e[t]=i:e.setAttribute(t,i))}function na(e){return e.__attributes??(e.__attributes={[Xd]:e.nodeName.includes("-"),[Zd]:e.namespaceURI===Qc})}var La=new Map;function tu(e){var t=e.getAttribute("is")||e.nodeName,i=La.get(t);if(i)return i;La.set(t,i=[]);for(var s,r=e,n=Element.prototype;n!==r;){s=Fc(r);for(var a in s)s[a].set&&i.push(a);r=$l(r)}return i}function ni(e,t,i=t){var s=new WeakSet;xd(e,"input",async r=>{var n=r?e.defaultValue:e.value;if(n=In(e)?Dn(n):n,i(n),Be!==null&&s.add(Be),await ra(),n!==(n=t())){var a=e.selectionStart,o=e.selectionEnd,h=e.value.length;if(e.value=n??"",o!==null){var l=e.value.length;a===o&&o===h&&l>h?(e.selectionStart=l,e.selectionEnd=l):(e.selectionStart=a,e.selectionEnd=Math.min(o,l))}}}),kr(t)==null&&e.value&&(i(In(e)?Dn(e.value):e.value),Be!==null&&s.add(Be)),ta(()=>{var r=t();if(e===document.activeElement){var n=zr??Be;if(s.has(n))return}In(e)&&r===Dn(e.value)||e.type==="date"&&!r&&!e.value||r!==e.value&&(e.value=r??"")})}function In(e){var t=e.type;return t==="number"||t==="range"}function Dn(e){return e===""?null:+e}function Ra(e,t){return e===t||(e==null?void 0:e[Wr])===t}function _r(e={},t,i,s){return Id(()=>{var r,n;return ta(()=>{r=n,n=[],kr(()=>{e!==i(...n)&&(t(e,...n),r&&Ra(i(...r),e)&&t(null,...r))})}),()=>{Hs(()=>{n&&Ra(i(...n),e)&&t(null,...n)})}}),e}function Gt(e,t,i,s){var r=s,n=!0,a=()=>(n&&(n=!1,r=s),r),o;o=e[t],o===void 0&&s!==void 0&&(o=a());var h;return h=()=>{var l=e[t];return l===void 0?a():(n=!0,l)},h}const Mi={claude:{upload:!0,context:!0,web:!0,slash:!0,images:!0,defaultModel:"claude-opus-4-5",label:"Claude"},codex:{upload:!0,context:!0,web:!1,slash:!0,images:!1,defaultModel:"gpt-5.4",label:"Codex"},ollama:{upload:!1,context:!0,web:!1,slash:!0,images:!1,defaultModel:"qwen3:8b",label:"Ollama"}};function iu(e){return Mi[e]??Mi.claude}var su=G(''),ru=G(''),nu=G(''),ou=G(''),au=G(''),lu=G(''),hu=G(''),cu=G(''),du=G(''),uu=G(''),_u=G(''),fu=G(''),vu=G(''),gu=G('
',1);function pu(e,t){Ct(t,!0);let i=Gt(t,"model",3,"claude-opus-4-5"),s=Gt(t,"provider",3,"claude"),r=Gt(t,"contextPct",3,78),n=Gt(t,"disabled",3,!1),a,o=V(null),h=ot(()=>iu(s())),l=ot(()=>{const X=Math.min(100,Math.max(0,r())),ie=8,oe=10,Z=10,j=X/100*2*Math.PI,H=oe,N=Z-ie,K=oe+ie*Math.sin(j),le=Z-ie*Math.cos(j),de=X>50?1:0;return X>=100?`M ${oe} ${Z-ie} A ${ie} ${ie} 0 1 1 ${oe-.001} ${Z-ie} Z`:`M ${H} ${N} A ${ie} ${ie} 0 ${de} 1 ${K} ${le}`}),c=ot(()=>r()>=75?"var(--ctp-red)":r()>=50?"var(--ctp-yellow)":"var(--ctp-green)");function d(){a&&(a.style.height="auto",a.style.height=Math.min(a.scrollHeight,200)+"px")}function v(X){var ie;X.key==="Enter"&&!X.shiftKey&&(X.preventDefault(),t.value.trim()&&((ie=t.onSend)==null||ie.call(t))),X.key==="Escape"&&W(o,null)}function u(X){var ie;(ie=t.onInput)==null||ie.call(t,X.target.value),d()}function g(X){W(o,p(o)===X?null:X,!0)}function _(){W(o,null)}function f(X){X.key==="Escape"&&W(o,null)}const A=["Upload from computer","Paste from clipboard"],x=["Add file","Add folder","Add URL","Add image"],S=["Search the web","Fetch URL"],w=["/help","/clear","/compact","/review","/test","/commit"];var y=gu(),m=at(y);m.__keydown=f;var C=R(m);C.__input=u,C.__keydown=v,_r(C,X=>a=X,()=>a);var E=P(C,2),b=R(E);{var D=X=>{var ie=nu(),oe=R(ie);let Z;oe.__click=()=>g("upload");var j=P(oe,2);{var H=N=>{var K=ru();K.__keydown=le=>le.key==="Escape"&&_(),Me(K,21,()=>A,He,(le,de)=>{var ve=su();ve.__click=_;var Ce=R(ve);ee(()=>J(Ce,p(de))),z(le,ve)}),z(N,K)};se(j,N=>{p(o)==="upload"&&N(H)})}ee(()=>Z=ce(oe,1,"footer-btn svelte-icb1la",null,Z,{active:p(o)==="upload"})),z(X,ie)};se(b,X=>{p(h).upload&&X(D)})}var M=P(b,2);{var k=X=>{var ie=lu(),oe=R(ie);let Z;oe.__click=()=>g("context");var j=P(oe,2);{var H=N=>{var K=au();K.__keydown=le=>le.key==="Escape"&&_(),Me(K,21,()=>x,He,(le,de)=>{var ve=ou();let Ce;ve.__click=_;var Ie=R(ve);ee(()=>{Ce=ce(ve,1,"popup-item svelte-icb1la",null,Ce,{"disabled-item":p(de)==="Add image"&&!p(h).images}),J(Ie,p(de))}),z(le,ve)}),z(N,K)};se(j,N=>{p(o)==="context"&&N(H)})}ee(()=>Z=ce(oe,1,"footer-btn svelte-icb1la",null,Z,{active:p(o)==="context"})),z(X,ie)};se(M,X=>{p(h).context&&X(k)})}var B=P(M,2);{var T=X=>{var ie=du(),oe=R(ie);let Z;oe.__click=()=>g("web");var j=P(oe,2);{var H=N=>{var K=cu();K.__keydown=le=>le.key==="Escape"&&_(),Me(K,21,()=>S,He,(le,de)=>{var ve=hu();ve.__click=_;var Ce=R(ve);ee(()=>J(Ce,p(de))),z(le,ve)}),z(N,K)};se(j,N=>{p(o)==="web"&&N(H)})}ee(()=>Z=ce(oe,1,"footer-btn svelte-icb1la",null,Z,{active:p(o)==="web"})),z(X,ie)};se(B,X=>{p(h).web&&X(T)})}var Q=P(B,2);{var O=X=>{var ie=fu(),oe=R(ie);let Z;oe.__click=()=>g("slash");var j=P(oe,2);{var H=N=>{var K=_u();K.__keydown=le=>le.key==="Escape"&&_(),Me(K,21,()=>w,He,(le,de)=>{var ve=uu();ve.__click=_;var Ce=R(ve);ee(()=>J(Ce,p(de))),z(le,ve)}),z(N,K)};se(j,N=>{p(o)==="slash"&&N(H)})}ee(()=>Z=ce(oe,1,"footer-btn svelte-icb1la",null,Z,{active:p(o)==="slash"})),z(X,ie)};se(Q,X=>{p(h).slash&&X(O)})}var L=P(Q,2),I=R(L),F=P(R(I)),U=P(I,2),re=R(U),ge=P(L,4),he=R(ge),ne=P(ge,4);ne.__click=function(...X){var ie;(ie=t.onSend)==null||ie.apply(this,X)};var we=P(m,2);{var _e=X=>{var ie=vu();ie.__click=_,ie.__keydown=oe=>oe.key==="Escape"&&_(),z(X,ie)};se(we,X=>{p(o)!==null&&X(_e)})}ee(X=>{lr(C,t.value),ue(L,"title",`Context window: ${r()??""}% used`),ue(F,"d",p(l)),ue(F,"stroke",p(c)),$t(U,`color: ${p(c)??""}`),J(re,`${r()??""}%`),J(he,i()),ne.disabled=X},[()=>n()||!t.value.trim()]),z(e,y),bt()}Dt(["keydown","input","click"]);var mu=G('
'),Au=G('
'),wu=G('
'),Cu=G('
'),bu=G('
'),Su=G('
'),yu=G(' '),xu=G('
'),ku=G(''),Eu=G('
input
'),Bu=G('
'),Iu=G('
'),Du=G('
result
'),Mu=G('
'),Lu=G('
',1);function Ru(e,t){Ct(t,!0);let i=Gt(t,"model",3,"claude-opus-4-5"),s=Gt(t,"provider",3,"claude"),r=Gt(t,"contextPct",3,0),n,a=V(""),o=V(Ne(new Set)),h,l=V(!1);ri(()=>{t.messages.length,ra().then(()=>{n&&(n.scrollTop=n.scrollHeight)})});function c(){var I;const L=p(a).trim();L&&(W(a,""),(I=t.onSend)==null||I.call(t,L))}function d(L){const I=new Set(p(o));I.has(L)?I.delete(L):I.add(L),W(o,I,!0)}function v(L){return L>=1e3?`${(L/1e3).toFixed(1)}k`:String(L)}function u(L){return`$${L.toFixed(3)}`}function g(L){return L==="running"?"dot-progress":L==="stalled"?"dot-error":"dot-success"}function _(L){L.preventDefault(),W(l,!0);const I=L.clientY,F=(h==null?void 0:h.getBoundingClientRect().height)??300;function U(ge){if(!h)return;const he=Math.max(120,F+(ge.clientY-I));h.style.flexBasis=`${he}px`,h.style.flexGrow="0",h.style.flexShrink="0"}function re(){W(l,!1),window.removeEventListener("mousemove",U),window.removeEventListener("mouseup",re)}window.addEventListener("mousemove",U),window.addEventListener("mouseup",re)}var f=Lu(),A=at(f),x=R(A),S=P(x,2),w=R(S),y=P(S,2),m=R(y),C=P(y,4),E=R(C),b=P(C,4),D=R(b),M=P(A,2),k=R(M);Me(k,23,()=>t.messages,L=>L.id,(L,I,F)=>{const U=ot(()=>p(F)===0),re=ot(()=>p(F)===t.messages.length-1);var ge=Mu(),he=R(ge);{var ne=_e=>{var X=mu(),ie=R(X);ee(()=>J(ie,p(I).content)),z(_e,X)},we=_e=>{var X=qt(),ie=at(X);{var oe=j=>{var H=Cu(),N=R(H);{var K=Ie=>{var Ae=Au();z(Ie,Ae)};se(N,Ie=>{p(U)||Ie(K)})}var le=P(N,4);{var de=Ie=>{var Ae=wu();z(Ie,Ae)};se(le,Ie=>{p(re)||Ie(de)})}var ve=P(le,2),Ce=R(ve);ee(()=>J(Ce,p(I).content)),z(j,H)},Z=j=>{var H=qt(),N=at(H);{var K=de=>{var ve=Eu(),Ce=R(ve);{var Ie=pe=>{var Fe=bu();z(pe,Fe)};se(Ce,pe=>{p(U)||pe(Ie)})}var Ae=P(Ce,4);{var be=pe=>{var Fe=Su();z(pe,Fe)};se(Ae,pe=>{p(re)||pe(be)})}var ye=P(Ae,2),ae=R(ye),Ee=R(ae),Ke=R(Ee),Pe=P(Ee,2);{var Rt=pe=>{var Fe=yu(),ai=R(Fe);ee(()=>J(ai,p(I).toolPath)),z(pe,Fe)};se(Pe,pe=>{p(I).toolPath&&pe(Rt)})}var ht=P(ae,2);let gt;var We=R(ht),Re=P(R(We),2),Je=R(Re),fe=P(We,2);{var Te=pe=>{var Fe=xu(),ai=R(Fe);ai.__click=()=>d(p(I).id),z(pe,Fe)};se(fe,pe=>{p(o).has(p(I).id)||pe(Te)})}var st=P(ht,2);{var Ue=pe=>{var Fe=ku();Fe.__click=()=>d(p(I).id),z(pe,Fe)};se(st,pe=>{p(o).has(p(I).id)&&pe(Ue)})}ee(pe=>{J(Ke,p(I).toolName??"Tool"),gt=ce(ht,1,"tool-body svelte-9vsw7f",null,gt,pe),J(Je,p(I).content)},[()=>({expanded:p(o).has(p(I).id)})]),z(de,ve)},le=de=>{var ve=qt(),Ce=at(ve);{var Ie=Ae=>{var be=Du(),ye=R(be);{var ae=We=>{var Re=Bu();z(We,Re)};se(ye,We=>{p(U)||We(ae)})}var Ee=P(ye,4);{var Ke=We=>{var Re=Iu();z(We,Re)};se(Ee,We=>{p(re)||We(Ke)})}var Pe=P(Ee,2),Rt=R(Pe),ht=P(R(Rt),2),gt=R(ht);ee(()=>J(gt,p(I).content)),z(Ae,be)};se(Ce,Ae=>{p(I).role==="tool-result"&&Ae(Ie)},!0)}z(de,ve)};se(N,de=>{p(I).role==="tool-call"?de(K):de(le,!1)},!0)}z(j,H)};se(ie,j=>{p(I).role==="assistant"?j(oe):j(Z,!1)},!0)}z(_e,X)};se(he,_e=>{p(I).role==="user"?_e(ne):_e(we,!1)})}z(L,ge)}),_r(k,L=>n=L,()=>n);var B=P(k,4),T=R(B);pu(T,{get value(){return p(a)},get model(){return i()},get provider(){return s()},get contextPct(){return r()},onSend:c,onInput:L=>W(a,L,!0)}),_r(M,L=>h=L,()=>h);var Q=P(M,2);let O;Q.__mousedown=_,ee((L,I,F)=>{ce(x,1,`strip-dot ${L??""}`,"svelte-9vsw7f"),J(w,t.status==="running"?"Running":t.status==="stalled"?"Stalled":"Done"),J(m,i()),J(E,`${I??""} tok`),J(D,F),O=ce(Q,1,"resize-handle svelte-9vsw7f",null,O,{dragging:p(l)})},[()=>g(t.status),()=>v(t.tokens),()=>u(t.costUsd)]),z(e,f),bt()}Dt(["click","mousedown"]);/** * Copyright (c) 2014-2024 The xterm.js authors. All rights reserved. * @license MIT * @@ -10,22 +10,22 @@ var vc=Object.defineProperty;var da=e=>{throw TypeError(e)};var gc=(e,t,i)=>t in * Fabrice Bellard's javascript vt100 for jslinux: * http://bellard.org/jslinux/ * Copyright (c) 2011 Fabrice Bellard - */var gh=Object.defineProperty,Su=Object.getOwnPropertyDescriptor,bu=(e,t)=>{for(var i in t)gh(e,i,{get:t[i],enumerable:!0})},Ke=(e,t,i,s)=>{for(var r=s>1?void 0:s?Su(t,i):t,n=e.length-1,a;n>=0;n--)(a=e[n])&&(r=(s?a(t,i,r):a(r))||r);return s&&r&&gh(t,i,r),r},te=(e,t)=>(i,s)=>t(i,s,e),xa="Terminal input",Zn={get:()=>xa,set:e=>xa=e},ka="Too much output to announce, navigate to rows manually to read",eo={get:()=>ka,set:e=>ka=e};function yu(e){return e.replace(/\r?\n/g,"\r")}function xu(e,t){return t?"\x1B[200~"+e+"\x1B[201~":e}function ku(e,t){e.clipboardData&&e.clipboardData.setData("text/plain",t.selectionText),e.preventDefault()}function Eu(e,t,i,s){if(e.stopPropagation(),e.clipboardData){let r=e.clipboardData.getData("text/plain");ph(r,t,i,s)}}function ph(e,t,i,s){e=yu(e),e=xu(e,i.decPrivateModes.bracketedPasteMode&&s.rawOptions.ignoreBracketedPasteMode!==!0),i.triggerDataEvent(e,!0),t.value=""}function mh(e,t,i){let s=i.getBoundingClientRect(),r=e.clientX-s.left-10,n=e.clientY-s.top-10;t.style.width="20px",t.style.height="20px",t.style.left=`${r}px`,t.style.top=`${n}px`,t.style.zIndex="1000",t.focus()}function Ea(e,t,i,s,r){mh(e,t,i),r&&s.rightClickSelect(e),t.value=s.selectionText,t.select()}function Ni(e){return e>65535?(e-=65536,String.fromCharCode((e>>10)+55296)+String.fromCharCode(e%1024+56320)):String.fromCharCode(e)}function dn(e,t=0,i=e.length){let s="";for(let r=t;r65535?(n-=65536,s+=String.fromCharCode((n>>10)+55296)+String.fromCharCode(n%1024+56320)):s+=String.fromCharCode(n)}return s}var Bu=class{constructor(){this._interim=0}clear(){this._interim=0}decode(e,t){let i=e.length;if(!i)return 0;let s=0,r=0;if(this._interim){let n=e.charCodeAt(r++);56320<=n&&n<=57343?t[s++]=(this._interim-55296)*1024+n-56320+65536:(t[s++]=this._interim,t[s++]=n),this._interim=0}for(let n=r;n=i)return this._interim=a,s;let o=e.charCodeAt(n);56320<=o&&o<=57343?t[s++]=(a-55296)*1024+o-56320+65536:(t[s++]=a,t[s++]=o);continue}a!==65279&&(t[s++]=a)}return s}},Iu=class{constructor(){this.interim=new Uint8Array(3)}clear(){this.interim.fill(0)}decode(e,t){let i=e.length;if(!i)return 0;let s=0,r,n,a,o,h=0,l=0;if(this.interim[0]){let g=!1,_=this.interim[0];_&=(_&224)===192?31:(_&240)===224?15:7;let v=0,u;for(;(u=this.interim[++v]&63)&&v<4;)_<<=6,_|=u;let f=(this.interim[0]&224)===192?2:(this.interim[0]&240)===224?3:4,A=f-v;for(;l=i)return 0;if(u=e[l++],(u&192)!==128){l--,g=!0;break}else this.interim[v++]=u,_<<=6,_|=u&63}g||(f===2?_<128?l--:t[s++]=_:f===3?_<2048||_>=55296&&_<=57343||_===65279||(t[s++]=_):_<65536||_>1114111||(t[s++]=_)),this.interim.fill(0)}let c=i-4,d=l;for(;d=i)return this.interim[0]=r,s;if(n=e[d++],(n&192)!==128){d--;continue}if(h=(r&31)<<6|n&63,h<128){d--;continue}t[s++]=h}else if((r&240)===224){if(d>=i)return this.interim[0]=r,s;if(n=e[d++],(n&192)!==128){d--;continue}if(d>=i)return this.interim[0]=r,this.interim[1]=n,s;if(a=e[d++],(a&192)!==128){d--;continue}if(h=(r&15)<<12|(n&63)<<6|a&63,h<2048||h>=55296&&h<=57343||h===65279)continue;t[s++]=h}else if((r&248)===240){if(d>=i)return this.interim[0]=r,s;if(n=e[d++],(n&192)!==128){d--;continue}if(d>=i)return this.interim[0]=r,this.interim[1]=n,s;if(a=e[d++],(a&192)!==128){d--;continue}if(d>=i)return this.interim[0]=r,this.interim[1]=n,this.interim[2]=a,s;if(o=e[d++],(o&192)!==128){d--;continue}if(h=(r&7)<<18|(n&63)<<12|(a&63)<<6|o&63,h<65536||h>1114111)continue;t[s++]=h}}return s}},Ah="",zi=" ",Cr=class wh{constructor(){this.fg=0,this.bg=0,this.extended=new jr}static toColorRGB(t){return[t>>>16&255,t>>>8&255,t&255]}static fromColorRGB(t){return(t[0]&255)<<16|(t[1]&255)<<8|t[2]&255}clone(){let t=new wh;return t.fg=this.fg,t.bg=this.bg,t.extended=this.extended.clone(),t}isInverse(){return this.fg&67108864}isBold(){return this.fg&134217728}isUnderline(){return this.hasExtendedAttrs()&&this.extended.underlineStyle!==0?1:this.fg&268435456}isBlink(){return this.fg&536870912}isInvisible(){return this.fg&1073741824}isItalic(){return this.bg&67108864}isDim(){return this.bg&134217728}isStrikethrough(){return this.fg&2147483648}isProtected(){return this.bg&536870912}isOverline(){return this.bg&1073741824}getFgColorMode(){return this.fg&50331648}getBgColorMode(){return this.bg&50331648}isFgRGB(){return(this.fg&50331648)===50331648}isBgRGB(){return(this.bg&50331648)===50331648}isFgPalette(){return(this.fg&50331648)===16777216||(this.fg&50331648)===33554432}isBgPalette(){return(this.bg&50331648)===16777216||(this.bg&50331648)===33554432}isFgDefault(){return(this.fg&50331648)===0}isBgDefault(){return(this.bg&50331648)===0}isAttributeDefault(){return this.fg===0&&this.bg===0}getFgColor(){switch(this.fg&50331648){case 16777216:case 33554432:return this.fg&255;case 50331648:return this.fg&16777215;default:return-1}}getBgColor(){switch(this.bg&50331648){case 16777216:case 33554432:return this.bg&255;case 50331648:return this.bg&16777215;default:return-1}}hasExtendedAttrs(){return this.bg&268435456}updateExtended(){this.extended.isEmpty()?this.bg&=-268435457:this.bg|=268435456}getUnderlineColor(){if(this.bg&268435456&&~this.extended.underlineColor)switch(this.extended.underlineColor&50331648){case 16777216:case 33554432:return this.extended.underlineColor&255;case 50331648:return this.extended.underlineColor&16777215;default:return this.getFgColor()}return this.getFgColor()}getUnderlineColorMode(){return this.bg&268435456&&~this.extended.underlineColor?this.extended.underlineColor&50331648:this.getFgColorMode()}isUnderlineColorRGB(){return this.bg&268435456&&~this.extended.underlineColor?(this.extended.underlineColor&50331648)===50331648:this.isFgRGB()}isUnderlineColorPalette(){return this.bg&268435456&&~this.extended.underlineColor?(this.extended.underlineColor&50331648)===16777216||(this.extended.underlineColor&50331648)===33554432:this.isFgPalette()}isUnderlineColorDefault(){return this.bg&268435456&&~this.extended.underlineColor?(this.extended.underlineColor&50331648)===0:this.isFgDefault()}getUnderlineStyle(){return this.fg&268435456?this.bg&268435456?this.extended.underlineStyle:1:0}getUnderlineVariantOffset(){return this.extended.underlineVariantOffset}},jr=class Ch{constructor(t=0,i=0){this._ext=0,this._urlId=0,this._ext=t,this._urlId=i}get ext(){return this._urlId?this._ext&-469762049|this.underlineStyle<<26:this._ext}set ext(t){this._ext=t}get underlineStyle(){return this._urlId?5:(this._ext&469762048)>>26}set underlineStyle(t){this._ext&=-469762049,this._ext|=t<<26&469762048}get underlineColor(){return this._ext&67108863}set underlineColor(t){this._ext&=-67108864,this._ext|=t&67108863}get urlId(){return this._urlId}set urlId(t){this._urlId=t}get underlineVariantOffset(){let t=(this._ext&3758096384)>>29;return t<0?t^4294967288:t}set underlineVariantOffset(t){this._ext&=536870911,this._ext|=t<<29&3758096384}clone(){return new Ch(this._ext,this._urlId)}isEmpty(){return this.underlineStyle===0&&this._urlId===0}},si=class Sh extends Cr{constructor(){super(...arguments),this.content=0,this.fg=0,this.bg=0,this.extended=new jr,this.combinedData=""}static fromCharData(t){let i=new Sh;return i.setFromCharData(t),i}isCombined(){return this.content&2097152}getWidth(){return this.content>>22}getChars(){return this.content&2097152?this.combinedData:this.content&2097151?Ni(this.content&2097151):""}getCode(){return this.isCombined()?this.combinedData.charCodeAt(this.combinedData.length-1):this.content&2097151}setFromCharData(t){this.fg=t[0],this.bg=0;let i=!1;if(t[1].length>2)i=!0;else if(t[1].length===2){let s=t[1].charCodeAt(0);if(55296<=s&&s<=56319){let r=t[1].charCodeAt(1);56320<=r&&r<=57343?this.content=(s-55296)*1024+r-56320+65536|t[2]<<22:i=!0}else i=!0}else this.content=t[1].charCodeAt(0)|t[2]<<22;i&&(this.combinedData=t[1],this.content=2097152|t[2]<<22)}getAsCharData(){return[this.fg,this.getChars(),this.getWidth(),this.getCode()]}},Ba="di$target",to="di$dependencies",yn=new Map;function Du(e){return e[to]||[]}function ut(e){if(yn.has(e))return yn.get(e);let t=function(i,s,r){if(arguments.length!==3)throw new Error("@IServiceName-decorator can only be used to decorate a parameter");Mu(t,i,r)};return t._id=e,yn.set(e,t),t}function Mu(e,t,i){t[Ba]===t?t[to].push({id:e,index:i}):(t[to]=[{id:e,index:i}],t[Ba]=t)}var Dt=ut("BufferService"),bh=ut("CoreMouseService"),gs=ut("CoreService"),Lu=ut("CharsetService"),Xo=ut("InstantiationService"),yh=ut("LogService"),Mt=ut("OptionsService"),xh=ut("OscLinkService"),Ru=ut("UnicodeService"),Sr=ut("DecorationService"),io=class{constructor(e,t,i){this._bufferService=e,this._optionsService=t,this._oscLinkService=i}provideLinks(e,t){var c;let i=this._bufferService.buffer.lines.get(e-1);if(!i){t(void 0);return}let s=[],r=this._optionsService.rawOptions.linkHandler,n=new si,a=i.getTrimmedLength(),o=-1,h=-1,l=!1;for(let d=0;dr?r.activate(u,f,_):Tu(u,f),hover:(u,f)=>{var A;return(A=r==null?void 0:r.hover)==null?void 0:A.call(r,u,f,_)},leave:(u,f)=>{var A;return(A=r==null?void 0:r.leave)==null?void 0:A.call(r,u,f,_)}})}l=!1,n.hasExtendedAttrs()&&n.extended.urlId?(h=d,o=n.extended.urlId):(h=-1,o=-1)}}t(s)}};io=Ke([te(0,Dt),te(1,Mt),te(2,xh)],io);function Tu(e,t){if(confirm(`Do you want to navigate to ${t}? + */var Bh=Object.defineProperty,Tu=Object.getOwnPropertyDescriptor,Pu=(e,t)=>{for(var i in t)Bh(e,i,{get:t[i],enumerable:!0})},Ye=(e,t,i,s)=>{for(var r=s>1?void 0:s?Tu(t,i):t,n=e.length-1,a;n>=0;n--)(a=e[n])&&(r=(s?a(t,i,r):a(r))||r);return s&&r&&Bh(t,i,r),r},te=(e,t)=>(i,s)=>t(i,s,e),Ta="Terminal input",ao={get:()=>Ta,set:e=>Ta=e},Pa="Too much output to announce, navigate to rows manually to read",lo={get:()=>Pa,set:e=>Pa=e};function Qu(e){return e.replace(/\r?\n/g,"\r")}function Ou(e,t){return t?"\x1B[200~"+e+"\x1B[201~":e}function Nu(e,t){e.clipboardData&&e.clipboardData.setData("text/plain",t.selectionText),e.preventDefault()}function Fu(e,t,i,s){if(e.stopPropagation(),e.clipboardData){let r=e.clipboardData.getData("text/plain");Ih(r,t,i,s)}}function Ih(e,t,i,s){e=Qu(e),e=Ou(e,i.decPrivateModes.bracketedPasteMode&&s.rawOptions.ignoreBracketedPasteMode!==!0),i.triggerDataEvent(e,!0),t.value=""}function Dh(e,t,i){let s=i.getBoundingClientRect(),r=e.clientX-s.left-10,n=e.clientY-s.top-10;t.style.width="20px",t.style.height="20px",t.style.left=`${r}px`,t.style.top=`${n}px`,t.style.zIndex="1000",t.focus()}function Qa(e,t,i,s,r){Dh(e,t,i),r&&s.rightClickSelect(e),t.value=s.selectionText,t.select()}function qi(e){return e>65535?(e-=65536,String.fromCharCode((e>>10)+55296)+String.fromCharCode(e%1024+56320)):String.fromCharCode(e)}function An(e,t=0,i=e.length){let s="";for(let r=t;r65535?(n-=65536,s+=String.fromCharCode((n>>10)+55296)+String.fromCharCode(n%1024+56320)):s+=String.fromCharCode(n)}return s}var Hu=class{constructor(){this._interim=0}clear(){this._interim=0}decode(e,t){let i=e.length;if(!i)return 0;let s=0,r=0;if(this._interim){let n=e.charCodeAt(r++);56320<=n&&n<=57343?t[s++]=(this._interim-55296)*1024+n-56320+65536:(t[s++]=this._interim,t[s++]=n),this._interim=0}for(let n=r;n=i)return this._interim=a,s;let o=e.charCodeAt(n);56320<=o&&o<=57343?t[s++]=(a-55296)*1024+o-56320+65536:(t[s++]=a,t[s++]=o);continue}a!==65279&&(t[s++]=a)}return s}},Wu=class{constructor(){this.interim=new Uint8Array(3)}clear(){this.interim.fill(0)}decode(e,t){let i=e.length;if(!i)return 0;let s=0,r,n,a,o,h=0,l=0;if(this.interim[0]){let v=!1,u=this.interim[0];u&=(u&224)===192?31:(u&240)===224?15:7;let g=0,_;for(;(_=this.interim[++g]&63)&&g<4;)u<<=6,u|=_;let f=(this.interim[0]&224)===192?2:(this.interim[0]&240)===224?3:4,A=f-g;for(;l=i)return 0;if(_=e[l++],(_&192)!==128){l--,v=!0;break}else this.interim[g++]=_,u<<=6,u|=_&63}v||(f===2?u<128?l--:t[s++]=u:f===3?u<2048||u>=55296&&u<=57343||u===65279||(t[s++]=u):u<65536||u>1114111||(t[s++]=u)),this.interim.fill(0)}let c=i-4,d=l;for(;d=i)return this.interim[0]=r,s;if(n=e[d++],(n&192)!==128){d--;continue}if(h=(r&31)<<6|n&63,h<128){d--;continue}t[s++]=h}else if((r&240)===224){if(d>=i)return this.interim[0]=r,s;if(n=e[d++],(n&192)!==128){d--;continue}if(d>=i)return this.interim[0]=r,this.interim[1]=n,s;if(a=e[d++],(a&192)!==128){d--;continue}if(h=(r&15)<<12|(n&63)<<6|a&63,h<2048||h>=55296&&h<=57343||h===65279)continue;t[s++]=h}else if((r&248)===240){if(d>=i)return this.interim[0]=r,s;if(n=e[d++],(n&192)!==128){d--;continue}if(d>=i)return this.interim[0]=r,this.interim[1]=n,s;if(a=e[d++],(a&192)!==128){d--;continue}if(d>=i)return this.interim[0]=r,this.interim[1]=n,this.interim[2]=a,s;if(o=e[d++],(o&192)!==128){d--;continue}if(h=(r&7)<<18|(n&63)<<12|(a&63)<<6|o&63,h<65536||h>1114111)continue;t[s++]=h}}return s}},Mh="",ji=" ",Er=class Lh{constructor(){this.fg=0,this.bg=0,this.extended=new sn}static toColorRGB(t){return[t>>>16&255,t>>>8&255,t&255]}static fromColorRGB(t){return(t[0]&255)<<16|(t[1]&255)<<8|t[2]&255}clone(){let t=new Lh;return t.fg=this.fg,t.bg=this.bg,t.extended=this.extended.clone(),t}isInverse(){return this.fg&67108864}isBold(){return this.fg&134217728}isUnderline(){return this.hasExtendedAttrs()&&this.extended.underlineStyle!==0?1:this.fg&268435456}isBlink(){return this.fg&536870912}isInvisible(){return this.fg&1073741824}isItalic(){return this.bg&67108864}isDim(){return this.bg&134217728}isStrikethrough(){return this.fg&2147483648}isProtected(){return this.bg&536870912}isOverline(){return this.bg&1073741824}getFgColorMode(){return this.fg&50331648}getBgColorMode(){return this.bg&50331648}isFgRGB(){return(this.fg&50331648)===50331648}isBgRGB(){return(this.bg&50331648)===50331648}isFgPalette(){return(this.fg&50331648)===16777216||(this.fg&50331648)===33554432}isBgPalette(){return(this.bg&50331648)===16777216||(this.bg&50331648)===33554432}isFgDefault(){return(this.fg&50331648)===0}isBgDefault(){return(this.bg&50331648)===0}isAttributeDefault(){return this.fg===0&&this.bg===0}getFgColor(){switch(this.fg&50331648){case 16777216:case 33554432:return this.fg&255;case 50331648:return this.fg&16777215;default:return-1}}getBgColor(){switch(this.bg&50331648){case 16777216:case 33554432:return this.bg&255;case 50331648:return this.bg&16777215;default:return-1}}hasExtendedAttrs(){return this.bg&268435456}updateExtended(){this.extended.isEmpty()?this.bg&=-268435457:this.bg|=268435456}getUnderlineColor(){if(this.bg&268435456&&~this.extended.underlineColor)switch(this.extended.underlineColor&50331648){case 16777216:case 33554432:return this.extended.underlineColor&255;case 50331648:return this.extended.underlineColor&16777215;default:return this.getFgColor()}return this.getFgColor()}getUnderlineColorMode(){return this.bg&268435456&&~this.extended.underlineColor?this.extended.underlineColor&50331648:this.getFgColorMode()}isUnderlineColorRGB(){return this.bg&268435456&&~this.extended.underlineColor?(this.extended.underlineColor&50331648)===50331648:this.isFgRGB()}isUnderlineColorPalette(){return this.bg&268435456&&~this.extended.underlineColor?(this.extended.underlineColor&50331648)===16777216||(this.extended.underlineColor&50331648)===33554432:this.isFgPalette()}isUnderlineColorDefault(){return this.bg&268435456&&~this.extended.underlineColor?(this.extended.underlineColor&50331648)===0:this.isFgDefault()}getUnderlineStyle(){return this.fg&268435456?this.bg&268435456?this.extended.underlineStyle:1:0}getUnderlineVariantOffset(){return this.extended.underlineVariantOffset}},sn=class Rh{constructor(t=0,i=0){this._ext=0,this._urlId=0,this._ext=t,this._urlId=i}get ext(){return this._urlId?this._ext&-469762049|this.underlineStyle<<26:this._ext}set ext(t){this._ext=t}get underlineStyle(){return this._urlId?5:(this._ext&469762048)>>26}set underlineStyle(t){this._ext&=-469762049,this._ext|=t<<26&469762048}get underlineColor(){return this._ext&67108863}set underlineColor(t){this._ext&=-67108864,this._ext|=t&67108863}get urlId(){return this._urlId}set urlId(t){this._urlId=t}get underlineVariantOffset(){let t=(this._ext&3758096384)>>29;return t<0?t^4294967288:t}set underlineVariantOffset(t){this._ext&=536870911,this._ext|=t<<29&3758096384}clone(){return new Rh(this._ext,this._urlId)}isEmpty(){return this.underlineStyle===0&&this._urlId===0}},oi=class Th extends Er{constructor(){super(...arguments),this.content=0,this.fg=0,this.bg=0,this.extended=new sn,this.combinedData=""}static fromCharData(t){let i=new Th;return i.setFromCharData(t),i}isCombined(){return this.content&2097152}getWidth(){return this.content>>22}getChars(){return this.content&2097152?this.combinedData:this.content&2097151?qi(this.content&2097151):""}getCode(){return this.isCombined()?this.combinedData.charCodeAt(this.combinedData.length-1):this.content&2097151}setFromCharData(t){this.fg=t[0],this.bg=0;let i=!1;if(t[1].length>2)i=!0;else if(t[1].length===2){let s=t[1].charCodeAt(0);if(55296<=s&&s<=56319){let r=t[1].charCodeAt(1);56320<=r&&r<=57343?this.content=(s-55296)*1024+r-56320+65536|t[2]<<22:i=!0}else i=!0}else this.content=t[1].charCodeAt(0)|t[2]<<22;i&&(this.combinedData=t[1],this.content=2097152|t[2]<<22)}getAsCharData(){return[this.fg,this.getChars(),this.getWidth(),this.getCode()]}},Oa="di$target",ho="di$dependencies",Mn=new Map;function zu(e){return e[ho]||[]}function vt(e){if(Mn.has(e))return Mn.get(e);let t=function(i,s,r){if(arguments.length!==3)throw new Error("@IServiceName-decorator can only be used to decorate a parameter");Uu(t,i,r)};return t._id=e,Mn.set(e,t),t}function Uu(e,t,i){t[Oa]===t?t[ho].push({id:e,index:i}):(t[ho]=[{id:e,index:i}],t[Oa]=t)}var Mt=vt("BufferService"),Ph=vt("CoreMouseService"),bs=vt("CoreService"),$u=vt("CharsetService"),oa=vt("InstantiationService"),Qh=vt("LogService"),Lt=vt("OptionsService"),Oh=vt("OscLinkService"),qu=vt("UnicodeService"),Br=vt("DecorationService"),co=class{constructor(e,t,i){this._bufferService=e,this._optionsService=t,this._oscLinkService=i}provideLinks(e,t){var c;let i=this._bufferService.buffer.lines.get(e-1);if(!i){t(void 0);return}let s=[],r=this._optionsService.rawOptions.linkHandler,n=new oi,a=i.getTrimmedLength(),o=-1,h=-1,l=!1;for(let d=0;dr?r.activate(_,f,u):Gu(_,f),hover:(_,f)=>{var A;return(A=r==null?void 0:r.hover)==null?void 0:A.call(r,_,f,u)},leave:(_,f)=>{var A;return(A=r==null?void 0:r.leave)==null?void 0:A.call(r,_,f,u)}})}l=!1,n.hasExtendedAttrs()&&n.extended.urlId?(h=d,o=n.extended.urlId):(h=-1,o=-1)}}t(s)}};co=Ye([te(0,Mt),te(1,Lt),te(2,Oh)],co);function Gu(e,t){if(confirm(`Do you want to navigate to ${t}? -WARNING: This link could potentially be dangerous`)){let i=window.open();if(i){try{i.opener=null}catch{}i.location.href=t}else console.warn("Opening link blocked as opener could not be cleared")}}var un=ut("CharSizeService"),Mi=ut("CoreBrowserService"),Zo=ut("MouseService"),Li=ut("RenderService"),Pu=ut("SelectionService"),kh=ut("CharacterJoinerService"),Ps=ut("ThemeService"),Eh=ut("LinkProviderService"),Qu=class{constructor(){this.listeners=[],this.unexpectedErrorHandler=function(e){setTimeout(()=>{throw e.stack?Ia.isErrorNoTelemetry(e)?new Ia(e.message+` +WARNING: This link could potentially be dangerous`)){let i=window.open();if(i){try{i.opener=null}catch{}i.location.href=t}else console.warn("Opening link blocked as opener could not be cleared")}}var wn=vt("CharSizeService"),Qi=vt("CoreBrowserService"),aa=vt("MouseService"),Oi=vt("RenderService"),Ku=vt("SelectionService"),Nh=vt("CharacterJoinerService"),zs=vt("ThemeService"),Fh=vt("LinkProviderService"),Ju=class{constructor(){this.listeners=[],this.unexpectedErrorHandler=function(e){setTimeout(()=>{throw e.stack?Na.isErrorNoTelemetry(e)?new Na(e.message+` `+e.stack):new Error(e.message+` -`+e.stack):e},0)}}addListener(e){return this.listeners.push(e),()=>{this._removeListener(e)}}emit(e){this.listeners.forEach(t=>{t(e)})}_removeListener(e){this.listeners.splice(this.listeners.indexOf(e),1)}setUnexpectedErrorHandler(e){this.unexpectedErrorHandler=e}getUnexpectedErrorHandler(){return this.unexpectedErrorHandler}onUnexpectedError(e){this.unexpectedErrorHandler(e),this.emit(e)}onUnexpectedExternalError(e){this.unexpectedErrorHandler(e)}},Ou=new Qu;function Hr(e){Nu(e)||Ou.onUnexpectedError(e)}var so="Canceled";function Nu(e){return e instanceof Hu?!0:e instanceof Error&&e.name===so&&e.message===so}var Hu=class extends Error{constructor(){super(so),this.name=this.message}};function Fu(e){return new Error(`Illegal argument: ${e}`)}var Ia=class ro extends Error{constructor(t){super(t),this.name="CodeExpectedError"}static fromError(t){if(t instanceof ro)return t;let i=new ro;return i.message=t.message,i.stack=t.stack,i}static isErrorNoTelemetry(t){return t.name==="CodeExpectedError"}},no=class Bh extends Error{constructor(t){super(t||"An unexpected bug occurred."),Object.setPrototypeOf(this,Bh.prototype)}};function Ht(e,t=0){return e[e.length-(1+t)]}var Wu;(e=>{function t(n){return n<0}e.isLessThan=t;function i(n){return n<=0}e.isLessThanOrEqual=i;function s(n){return n>0}e.isGreaterThan=s;function r(n){return n===0}e.isNeitherLessOrGreaterThan=r,e.greaterThan=1,e.lessThan=-1,e.neitherLessOrGreaterThan=0})(Wu||(Wu={}));function zu(e,t){let i=this,s=!1,r;return function(){return s||(s=!0,t||(r=e.apply(i,arguments))),r}}var Ih;(e=>{function t(w){return w&&typeof w=="object"&&typeof w[Symbol.iterator]=="function"}e.is=t;let i=Object.freeze([]);function s(){return i}e.empty=s;function*r(w){yield w}e.single=r;function n(w){return t(w)?w:r(w)}e.wrap=n;function a(w){return w||i}e.from=a;function*o(w){for(let y=w.length-1;y>=0;y--)yield w[y]}e.reverse=o;function h(w){return!w||w[Symbol.iterator]().next().done===!0}e.isEmpty=h;function l(w){return w[Symbol.iterator]().next().value}e.first=l;function c(w,y){let m=0;for(let C of w)if(y(C,m++))return!0;return!1}e.some=c;function d(w,y){for(let m of w)if(y(m))return m}e.find=d;function*g(w,y){for(let m of w)y(m)&&(yield m)}e.filter=g;function*_(w,y){let m=0;for(let C of w)yield y(C,m++)}e.map=_;function*v(w,y){let m=0;for(let C of w)yield*y(C,m++)}e.flatMap=v;function*u(...w){for(let y of w)yield*y}e.concat=u;function f(w,y,m){let C=m;for(let E of w)C=y(C,E);return C}e.reduce=f;function*A(w,y,m=w.length){for(y<0&&(y+=w.length),m<0?m+=w.length:m>w.length&&(m=w.length);y1)throw new AggregateError(t,"Encountered errors while disposing of store");return Array.isArray(e)?[]:e}else if(e)return e.dispose(),e}function Uu(...e){return ze(()=>_s(e))}function ze(e){return{dispose:zu(()=>{e()})}}var Dh=class Mh{constructor(){this._toDispose=new Set,this._isDisposed=!1}dispose(){this._isDisposed||(this._isDisposed=!0,this.clear())}get isDisposed(){return this._isDisposed}clear(){if(this._toDispose.size!==0)try{_s(this._toDispose)}finally{this._toDispose.clear()}}add(t){if(!t)return t;if(t===this)throw new Error("Cannot register a disposable on itself!");return this._isDisposed?Mh.DISABLE_DISPOSED_WARNING||console.warn(new Error("Trying to add a disposable to a DisposableStore that has already been disposed of. The added object will be leaked!").stack):this._toDispose.add(t),t}delete(t){if(t){if(t===this)throw new Error("Cannot dispose a disposable on itself!");this._toDispose.delete(t),t.dispose()}}deleteAndLeak(t){t&&this._toDispose.has(t)&&(this._toDispose.delete(t),void 0)}};Dh.DISABLE_DISPOSED_WARNING=!1;var Ki=Dh,Ie=class{constructor(){this._store=new Ki,this._store}dispose(){this._store.dispose()}_register(e){if(e===this)throw new Error("Cannot register a disposable on itself!");return this._store.add(e)}};Ie.None=Object.freeze({dispose(){}});var Ms=class{constructor(){this._isDisposed=!1}get value(){return this._isDisposed?void 0:this._value}set value(e){var t;this._isDisposed||e===this._value||((t=this._value)==null||t.dispose(),this._value=e)}clear(){this.value=void 0}dispose(){var e;this._isDisposed=!0,(e=this._value)==null||e.dispose(),this._value=void 0}clearAndLeak(){let e=this._value;return this._value=void 0,e}},Ei=typeof window=="object"?window:globalThis,oo=class ao{constructor(t){this.element=t,this.next=ao.Undefined,this.prev=ao.Undefined}};oo.Undefined=new oo(void 0);var Ue=oo,Da=class{constructor(){this._first=Ue.Undefined,this._last=Ue.Undefined,this._size=0}get size(){return this._size}isEmpty(){return this._first===Ue.Undefined}clear(){let t=this._first;for(;t!==Ue.Undefined;){let i=t.next;t.prev=Ue.Undefined,t.next=Ue.Undefined,t=i}this._first=Ue.Undefined,this._last=Ue.Undefined,this._size=0}unshift(t){return this._insert(t,!1)}push(t){return this._insert(t,!0)}_insert(t,i){let s=new Ue(t);if(this._first===Ue.Undefined)this._first=s,this._last=s;else if(i){let n=this._last;this._last=s,s.prev=n,n.next=s}else{let n=this._first;this._first=s,s.next=n,n.prev=s}this._size+=1;let r=!1;return()=>{r||(r=!0,this._remove(s))}}shift(){if(this._first!==Ue.Undefined){let t=this._first.element;return this._remove(this._first),t}}pop(){if(this._last!==Ue.Undefined){let t=this._last.element;return this._remove(this._last),t}}_remove(t){if(t.prev!==Ue.Undefined&&t.next!==Ue.Undefined){let i=t.prev;i.next=t.next,t.next.prev=i}else t.prev===Ue.Undefined&&t.next===Ue.Undefined?(this._first=Ue.Undefined,this._last=Ue.Undefined):t.next===Ue.Undefined?(this._last=this._last.prev,this._last.next=Ue.Undefined):t.prev===Ue.Undefined&&(this._first=this._first.next,this._first.prev=Ue.Undefined);this._size-=1}*[Symbol.iterator](){let t=this._first;for(;t!==Ue.Undefined;)yield t.element,t=t.next}},$u=globalThis.performance&&typeof globalThis.performance.now=="function",qu=class Lh{static create(t){return new Lh(t)}constructor(t){this._now=$u&&t===!1?Date.now:globalThis.performance.now.bind(globalThis.performance),this._startTime=this._now(),this._stopTime=-1}stop(){this._stopTime=this._now()}reset(){this._startTime=this._now(),this._stopTime=-1}elapsed(){return this._stopTime!==-1?this._stopTime-this._startTime:this._now()-this._startTime}},ft;(e=>{e.None=()=>Ie.None;function t(x,B){return d(x,()=>{},0,void 0,!0,void 0,B)}e.defer=t;function i(x){return(B,T=null,Q)=>{let O=!1,L;return L=x(I=>{if(!O)return L?L.dispose():O=!0,B.call(T,I)},null,Q),O&&L.dispose(),L}}e.once=i;function s(x,B,T){return l((Q,O=null,L)=>x(I=>Q.call(O,B(I)),null,L),T)}e.map=s;function r(x,B,T){return l((Q,O=null,L)=>x(I=>{B(I),Q.call(O,I)},null,L),T)}e.forEach=r;function n(x,B,T){return l((Q,O=null,L)=>x(I=>B(I)&&Q.call(O,I),null,L),T)}e.filter=n;function a(x){return x}e.signal=a;function o(...x){return(B,T=null,Q)=>{let O=Uu(...x.map(L=>L(I=>B.call(T,I))));return c(O,Q)}}e.any=o;function h(x,B,T,Q){let O=T;return s(x,L=>(O=B(O,L),O),Q)}e.reduce=h;function l(x,B){let T,Q={onWillAddFirstListener(){T=x(O.fire,O)},onDidRemoveLastListener(){T==null||T.dispose()}},O=new Y(Q);return B==null||B.add(O),O.event}function c(x,B){return B instanceof Array?B.push(x):B&&B.add(x),x}function d(x,B,T=100,Q=!1,O=!1,L,I){let H,U,re,ve=0,he,ne={leakWarningThreshold:L,onWillAddFirstListener(){H=x(_e=>{ve++,U=B(U,_e),Q&&!re&&(pe.fire(U),U=void 0),he=()=>{let V=U;U=void 0,re=void 0,(!Q||ve>1)&&pe.fire(V),ve=0},typeof T=="number"?(clearTimeout(re),re=setTimeout(he,T)):re===void 0&&(re=0,queueMicrotask(he))})},onWillRemoveListener(){O&&ve>0&&(he==null||he())},onDidRemoveLastListener(){he=void 0,H.dispose()}},pe=new Y(ne);return I==null||I.add(pe),pe.event}e.debounce=d;function g(x,B=0,T){return e.debounce(x,(Q,O)=>Q?(Q.push(O),Q):[O],B,void 0,!0,void 0,T)}e.accumulate=g;function _(x,B=(Q,O)=>Q===O,T){let Q=!0,O;return n(x,L=>{let I=Q||!B(L,O);return Q=!1,O=L,I},T)}e.latch=_;function v(x,B,T){return[e.filter(x,B,T),e.filter(x,Q=>!B(Q),T)]}e.split=v;function u(x,B=!1,T=[],Q){let O=T.slice(),L=x(U=>{O?O.push(U):H.fire(U)});Q&&Q.add(L);let I=()=>{O==null||O.forEach(U=>H.fire(U)),O=null},H=new Y({onWillAddFirstListener(){L||(L=x(U=>H.fire(U)),Q&&Q.add(L))},onDidAddFirstListener(){O&&(B?setTimeout(I):I())},onDidRemoveLastListener(){L&&L.dispose(),L=null}});return Q&&Q.add(H),H.event}e.buffer=u;function f(x,B){return(T,Q,O)=>{let L=B(new k);return x(function(I){let H=L.evaluate(I);H!==A&&T.call(Q,H)},void 0,O)}}e.chain=f;let A=Symbol("HaltChainable");class k{constructor(){this.steps=[]}map(B){return this.steps.push(B),this}forEach(B){return this.steps.push(T=>(B(T),T)),this}filter(B){return this.steps.push(T=>B(T)?T:A),this}reduce(B,T){let Q=T;return this.steps.push(O=>(Q=B(Q,O),Q)),this}latch(B=(T,Q)=>T===Q){let T=!0,Q;return this.steps.push(O=>{let L=T||!B(O,Q);return T=!1,Q=O,L?O:A}),this}evaluate(B){for(let T of this.steps)if(B=T(B),B===A)break;return B}}function b(x,B,T=Q=>Q){let Q=(...H)=>I.fire(T(...H)),O=()=>x.on(B,Q),L=()=>x.removeListener(B,Q),I=new Y({onWillAddFirstListener:O,onDidRemoveLastListener:L});return I.event}e.fromNodeEventEmitter=b;function w(x,B,T=Q=>Q){let Q=(...H)=>I.fire(T(...H)),O=()=>x.addEventListener(B,Q),L=()=>x.removeEventListener(B,Q),I=new Y({onWillAddFirstListener:O,onDidRemoveLastListener:L});return I.event}e.fromDOMEventEmitter=w;function y(x){return new Promise(B=>i(x)(B))}e.toPromise=y;function m(x){let B=new Y;return x.then(T=>{B.fire(T)},()=>{B.fire(void 0)}).finally(()=>{B.dispose()}),B.event}e.fromPromise=m;function C(x,B){return x(T=>B.fire(T))}e.forward=C;function E(x,B,T){return B(T),x(Q=>B(Q))}e.runAndSubscribe=E;class S{constructor(B,T){this._observable=B,this._counter=0,this._hasChanged=!1;let Q={onWillAddFirstListener:()=>{B.addObserver(this)},onDidRemoveLastListener:()=>{B.removeObserver(this)}};this.emitter=new Y(Q),T&&T.add(this.emitter)}beginUpdate(B){this._counter++}handlePossibleChange(B){}handleChange(B,T){this._hasChanged=!0}endUpdate(B){this._counter--,this._counter===0&&(this._observable.reportChanges(),this._hasChanged&&(this._hasChanged=!1,this.emitter.fire(this._observable.get())))}}function D(x,B){return new S(x,B).emitter.event}e.fromObservable=D;function M(x){return(B,T,Q)=>{let O=0,L=!1,I={beginUpdate(){O++},endUpdate(){O--,O===0&&(x.reportChanges(),L&&(L=!1,B.call(T)))},handlePossibleChange(){},handleChange(){L=!0}};x.addObserver(I),x.reportChanges();let H={dispose(){x.removeObserver(I)}};return Q instanceof Ki?Q.add(H):Array.isArray(Q)&&Q.push(H),H}}e.fromObservableLight=M})(ft||(ft={}));var lo=class ho{constructor(t){this.listenerCount=0,this.invocationCount=0,this.elapsedOverall=0,this.durations=[],this.name=`${t}_${ho._idPool++}`,ho.all.add(this)}start(t){this._stopWatch=new qu,this.listenerCount=t}stop(){if(this._stopWatch){let t=this._stopWatch.elapsed();this.durations.push(t),this.elapsedOverall+=t,this.invocationCount+=1,this._stopWatch=void 0}}};lo.all=new Set,lo._idPool=0;var Gu=lo,Ku=-1,Rh=class Th{constructor(t,i,s=(Th._idPool++).toString(16).padStart(3,"0")){this._errorHandler=t,this.threshold=i,this.name=s,this._warnCountdown=0}dispose(){var t;(t=this._stacks)==null||t.clear()}check(t,i){let s=this.threshold;if(s<=0||i{let n=this._stacks.get(t.value)||0;this._stacks.set(t.value,n-1)}}getMostFrequentStack(){if(!this._stacks)return;let t,i=0;for(let[s,r]of this._stacks)(!t||i{this._removeListener(e)}}emit(e){this.listeners.forEach(t=>{t(e)})}_removeListener(e){this.listeners.splice(this.listeners.indexOf(e),1)}setUnexpectedErrorHandler(e){this.unexpectedErrorHandler=e}getUnexpectedErrorHandler(){return this.unexpectedErrorHandler}onUnexpectedError(e){this.unexpectedErrorHandler(e),this.emit(e)}onUnexpectedExternalError(e){this.unexpectedErrorHandler(e)}},ju=new Ju;function qr(e){Yu(e)||ju.onUnexpectedError(e)}var uo="Canceled";function Yu(e){return e instanceof Vu?!0:e instanceof Error&&e.name===uo&&e.message===uo}var Vu=class extends Error{constructor(){super(uo),this.name=this.message}};function Xu(e){return new Error(`Illegal argument: ${e}`)}var Na=class _o extends Error{constructor(t){super(t),this.name="CodeExpectedError"}static fromError(t){if(t instanceof _o)return t;let i=new _o;return i.message=t.message,i.stack=t.stack,i}static isErrorNoTelemetry(t){return t.name==="CodeExpectedError"}},fo=class Hh extends Error{constructor(t){super(t||"An unexpected bug occurred."),Object.setPrototypeOf(this,Hh.prototype)}};function Ft(e,t=0){return e[e.length-(1+t)]}var Zu;(e=>{function t(n){return n<0}e.isLessThan=t;function i(n){return n<=0}e.isLessThanOrEqual=i;function s(n){return n>0}e.isGreaterThan=s;function r(n){return n===0}e.isNeitherLessOrGreaterThan=r,e.greaterThan=1,e.lessThan=-1,e.neitherLessOrGreaterThan=0})(Zu||(Zu={}));function e_(e,t){let i=this,s=!1,r;return function(){return s||(s=!0,t||(r=e.apply(i,arguments))),r}}var Wh;(e=>{function t(w){return w&&typeof w=="object"&&typeof w[Symbol.iterator]=="function"}e.is=t;let i=Object.freeze([]);function s(){return i}e.empty=s;function*r(w){yield w}e.single=r;function n(w){return t(w)?w:r(w)}e.wrap=n;function a(w){return w||i}e.from=a;function*o(w){for(let y=w.length-1;y>=0;y--)yield w[y]}e.reverse=o;function h(w){return!w||w[Symbol.iterator]().next().done===!0}e.isEmpty=h;function l(w){return w[Symbol.iterator]().next().value}e.first=l;function c(w,y){let m=0;for(let C of w)if(y(C,m++))return!0;return!1}e.some=c;function d(w,y){for(let m of w)if(y(m))return m}e.find=d;function*v(w,y){for(let m of w)y(m)&&(yield m)}e.filter=v;function*u(w,y){let m=0;for(let C of w)yield y(C,m++)}e.map=u;function*g(w,y){let m=0;for(let C of w)yield*y(C,m++)}e.flatMap=g;function*_(...w){for(let y of w)yield*y}e.concat=_;function f(w,y,m){let C=m;for(let E of w)C=y(C,E);return C}e.reduce=f;function*A(w,y,m=w.length){for(y<0&&(y+=w.length),m<0?m+=w.length:m>w.length&&(m=w.length);y1)throw new AggregateError(t,"Encountered errors while disposing of store");return Array.isArray(e)?[]:e}else if(e)return e.dispose(),e}function t_(...e){return $e(()=>As(e))}function $e(e){return{dispose:e_(()=>{e()})}}var zh=class Uh{constructor(){this._toDispose=new Set,this._isDisposed=!1}dispose(){this._isDisposed||(this._isDisposed=!0,this.clear())}get isDisposed(){return this._isDisposed}clear(){if(this._toDispose.size!==0)try{As(this._toDispose)}finally{this._toDispose.clear()}}add(t){if(!t)return t;if(t===this)throw new Error("Cannot register a disposable on itself!");return this._isDisposed?Uh.DISABLE_DISPOSED_WARNING||console.warn(new Error("Trying to add a disposable to a DisposableStore that has already been disposed of. The added object will be leaked!").stack):this._toDispose.add(t),t}delete(t){if(t){if(t===this)throw new Error("Cannot dispose a disposable on itself!");this._toDispose.delete(t),t.dispose()}}deleteAndLeak(t){t&&this._toDispose.has(t)&&(this._toDispose.delete(t),void 0)}};zh.DISABLE_DISPOSED_WARNING=!1;var es=zh,ke=class{constructor(){this._store=new es,this._store}dispose(){this._store.dispose()}_register(e){if(e===this)throw new Error("Cannot register a disposable on itself!");return this._store.add(e)}};ke.None=Object.freeze({dispose(){}});var Ns=class{constructor(){this._isDisposed=!1}get value(){return this._isDisposed?void 0:this._value}set value(e){var t;this._isDisposed||e===this._value||((t=this._value)==null||t.dispose(),this._value=e)}clear(){this.value=void 0}dispose(){var e;this._isDisposed=!0,(e=this._value)==null||e.dispose(),this._value=void 0}clearAndLeak(){let e=this._value;return this._value=void 0,e}},Li=typeof window=="object"?window:globalThis,vo=class go{constructor(t){this.element=t,this.next=go.Undefined,this.prev=go.Undefined}};vo.Undefined=new vo(void 0);var qe=vo,Fa=class{constructor(){this._first=qe.Undefined,this._last=qe.Undefined,this._size=0}get size(){return this._size}isEmpty(){return this._first===qe.Undefined}clear(){let t=this._first;for(;t!==qe.Undefined;){let i=t.next;t.prev=qe.Undefined,t.next=qe.Undefined,t=i}this._first=qe.Undefined,this._last=qe.Undefined,this._size=0}unshift(t){return this._insert(t,!1)}push(t){return this._insert(t,!0)}_insert(t,i){let s=new qe(t);if(this._first===qe.Undefined)this._first=s,this._last=s;else if(i){let n=this._last;this._last=s,s.prev=n,n.next=s}else{let n=this._first;this._first=s,s.next=n,n.prev=s}this._size+=1;let r=!1;return()=>{r||(r=!0,this._remove(s))}}shift(){if(this._first!==qe.Undefined){let t=this._first.element;return this._remove(this._first),t}}pop(){if(this._last!==qe.Undefined){let t=this._last.element;return this._remove(this._last),t}}_remove(t){if(t.prev!==qe.Undefined&&t.next!==qe.Undefined){let i=t.prev;i.next=t.next,t.next.prev=i}else t.prev===qe.Undefined&&t.next===qe.Undefined?(this._first=qe.Undefined,this._last=qe.Undefined):t.next===qe.Undefined?(this._last=this._last.prev,this._last.next=qe.Undefined):t.prev===qe.Undefined&&(this._first=this._first.next,this._first.prev=qe.Undefined);this._size-=1}*[Symbol.iterator](){let t=this._first;for(;t!==qe.Undefined;)yield t.element,t=t.next}},i_=globalThis.performance&&typeof globalThis.performance.now=="function",s_=class $h{static create(t){return new $h(t)}constructor(t){this._now=i_&&t===!1?Date.now:globalThis.performance.now.bind(globalThis.performance),this._startTime=this._now(),this._stopTime=-1}stop(){this._stopTime=this._now()}reset(){this._startTime=this._now(),this._stopTime=-1}elapsed(){return this._stopTime!==-1?this._stopTime-this._startTime:this._now()-this._startTime}},mt;(e=>{e.None=()=>ke.None;function t(k,B){return d(k,()=>{},0,void 0,!0,void 0,B)}e.defer=t;function i(k){return(B,T=null,Q)=>{let O=!1,L;return L=k(I=>{if(!O)return L?L.dispose():O=!0,B.call(T,I)},null,Q),O&&L.dispose(),L}}e.once=i;function s(k,B,T){return l((Q,O=null,L)=>k(I=>Q.call(O,B(I)),null,L),T)}e.map=s;function r(k,B,T){return l((Q,O=null,L)=>k(I=>{B(I),Q.call(O,I)},null,L),T)}e.forEach=r;function n(k,B,T){return l((Q,O=null,L)=>k(I=>B(I)&&Q.call(O,I),null,L),T)}e.filter=n;function a(k){return k}e.signal=a;function o(...k){return(B,T=null,Q)=>{let O=t_(...k.map(L=>L(I=>B.call(T,I))));return c(O,Q)}}e.any=o;function h(k,B,T,Q){let O=T;return s(k,L=>(O=B(O,L),O),Q)}e.reduce=h;function l(k,B){let T,Q={onWillAddFirstListener(){T=k(O.fire,O)},onDidRemoveLastListener(){T==null||T.dispose()}},O=new Y(Q);return B==null||B.add(O),O.event}function c(k,B){return B instanceof Array?B.push(k):B&&B.add(k),k}function d(k,B,T=100,Q=!1,O=!1,L,I){let F,U,re,ge=0,he,ne={leakWarningThreshold:L,onWillAddFirstListener(){F=k(_e=>{ge++,U=B(U,_e),Q&&!re&&(we.fire(U),U=void 0),he=()=>{let X=U;U=void 0,re=void 0,(!Q||ge>1)&&we.fire(X),ge=0},typeof T=="number"?(clearTimeout(re),re=setTimeout(he,T)):re===void 0&&(re=0,queueMicrotask(he))})},onWillRemoveListener(){O&&ge>0&&(he==null||he())},onDidRemoveLastListener(){he=void 0,F.dispose()}},we=new Y(ne);return I==null||I.add(we),we.event}e.debounce=d;function v(k,B=0,T){return e.debounce(k,(Q,O)=>Q?(Q.push(O),Q):[O],B,void 0,!0,void 0,T)}e.accumulate=v;function u(k,B=(Q,O)=>Q===O,T){let Q=!0,O;return n(k,L=>{let I=Q||!B(L,O);return Q=!1,O=L,I},T)}e.latch=u;function g(k,B,T){return[e.filter(k,B,T),e.filter(k,Q=>!B(Q),T)]}e.split=g;function _(k,B=!1,T=[],Q){let O=T.slice(),L=k(U=>{O?O.push(U):F.fire(U)});Q&&Q.add(L);let I=()=>{O==null||O.forEach(U=>F.fire(U)),O=null},F=new Y({onWillAddFirstListener(){L||(L=k(U=>F.fire(U)),Q&&Q.add(L))},onDidAddFirstListener(){O&&(B?setTimeout(I):I())},onDidRemoveLastListener(){L&&L.dispose(),L=null}});return Q&&Q.add(F),F.event}e.buffer=_;function f(k,B){return(T,Q,O)=>{let L=B(new x);return k(function(I){let F=L.evaluate(I);F!==A&&T.call(Q,F)},void 0,O)}}e.chain=f;let A=Symbol("HaltChainable");class x{constructor(){this.steps=[]}map(B){return this.steps.push(B),this}forEach(B){return this.steps.push(T=>(B(T),T)),this}filter(B){return this.steps.push(T=>B(T)?T:A),this}reduce(B,T){let Q=T;return this.steps.push(O=>(Q=B(Q,O),Q)),this}latch(B=(T,Q)=>T===Q){let T=!0,Q;return this.steps.push(O=>{let L=T||!B(O,Q);return T=!1,Q=O,L?O:A}),this}evaluate(B){for(let T of this.steps)if(B=T(B),B===A)break;return B}}function S(k,B,T=Q=>Q){let Q=(...F)=>I.fire(T(...F)),O=()=>k.on(B,Q),L=()=>k.removeListener(B,Q),I=new Y({onWillAddFirstListener:O,onDidRemoveLastListener:L});return I.event}e.fromNodeEventEmitter=S;function w(k,B,T=Q=>Q){let Q=(...F)=>I.fire(T(...F)),O=()=>k.addEventListener(B,Q),L=()=>k.removeEventListener(B,Q),I=new Y({onWillAddFirstListener:O,onDidRemoveLastListener:L});return I.event}e.fromDOMEventEmitter=w;function y(k){return new Promise(B=>i(k)(B))}e.toPromise=y;function m(k){let B=new Y;return k.then(T=>{B.fire(T)},()=>{B.fire(void 0)}).finally(()=>{B.dispose()}),B.event}e.fromPromise=m;function C(k,B){return k(T=>B.fire(T))}e.forward=C;function E(k,B,T){return B(T),k(Q=>B(Q))}e.runAndSubscribe=E;class b{constructor(B,T){this._observable=B,this._counter=0,this._hasChanged=!1;let Q={onWillAddFirstListener:()=>{B.addObserver(this)},onDidRemoveLastListener:()=>{B.removeObserver(this)}};this.emitter=new Y(Q),T&&T.add(this.emitter)}beginUpdate(B){this._counter++}handlePossibleChange(B){}handleChange(B,T){this._hasChanged=!0}endUpdate(B){this._counter--,this._counter===0&&(this._observable.reportChanges(),this._hasChanged&&(this._hasChanged=!1,this.emitter.fire(this._observable.get())))}}function D(k,B){return new b(k,B).emitter.event}e.fromObservable=D;function M(k){return(B,T,Q)=>{let O=0,L=!1,I={beginUpdate(){O++},endUpdate(){O--,O===0&&(k.reportChanges(),L&&(L=!1,B.call(T)))},handlePossibleChange(){},handleChange(){L=!0}};k.addObserver(I),k.reportChanges();let F={dispose(){k.removeObserver(I)}};return Q instanceof es?Q.add(F):Array.isArray(Q)&&Q.push(F),F}}e.fromObservableLight=M})(mt||(mt={}));var po=class mo{constructor(t){this.listenerCount=0,this.invocationCount=0,this.elapsedOverall=0,this.durations=[],this.name=`${t}_${mo._idPool++}`,mo.all.add(this)}start(t){this._stopWatch=new s_,this.listenerCount=t}stop(){if(this._stopWatch){let t=this._stopWatch.elapsed();this.durations.push(t),this.elapsedOverall+=t,this.invocationCount+=1,this._stopWatch=void 0}}};po.all=new Set,po._idPool=0;var r_=po,n_=-1,qh=class Gh{constructor(t,i,s=(Gh._idPool++).toString(16).padStart(3,"0")){this._errorHandler=t,this.threshold=i,this.name=s,this._warnCountdown=0}dispose(){var t;(t=this._stacks)==null||t.clear()}check(t,i){let s=this.threshold;if(s<=0||i{let n=this._stacks.get(t.value)||0;this._stacks.set(t.value,n-1)}}getMostFrequentStack(){if(!this._stacks)return;let t,i=0;for(let[s,r]of this._stacks)(!t||i{var o,h,l,c,d;if(this._leakageMon&&this._size>this._leakageMon.threshold**2){let g=`[${this._leakageMon.name}] REFUSES to accept new listeners because it exceeded its threshold by far (${this._size} vs ${this._leakageMon.threshold})`;console.warn(g);let _=this._leakageMon.getMostFrequentStack()??["UNKNOWN stack",-1],v=new Vu(`${g}. HINT: Stack shows most frequent listener (${_[1]}-times)`,_[0]);return(((o=this._options)==null?void 0:o.onListenerError)||Hr)(v),Ie.None}if(this._disposed)return Ie.None;i&&(t=t.bind(i));let r=new xn(t),n;this._leakageMon&&this._size>=Math.ceil(this._leakageMon.threshold*.2)&&(r.stack=ju.create(),n=this._leakageMon.check(r.stack,this._size+1)),this._listeners?this._listeners instanceof xn?(this._deliveryQueue??(this._deliveryQueue=new t_),this._listeners=[this._listeners,r]):this._listeners.push(r):((l=(h=this._options)==null?void 0:h.onWillAddFirstListener)==null||l.call(h,this),this._listeners=r,(d=(c=this._options)==null?void 0:c.onDidAddFirstListener)==null||d.call(c,this)),this._size++;let a=ze(()=>{n==null||n(),this._removeListener(r)});return s instanceof Ki?s.add(a):Array.isArray(s)&&s.push(a),a}),this._event}_removeListener(t){var n,a,o,h;if((a=(n=this._options)==null?void 0:n.onWillRemoveListener)==null||a.call(n,this),!this._listeners)return;if(this._size===1){this._listeners=void 0,(h=(o=this._options)==null?void 0:o.onDidRemoveLastListener)==null||h.call(o,this),this._size=0;return}let i=this._listeners,s=i.indexOf(t);if(s===-1)throw console.log("disposed?",this._disposed),console.log("size?",this._size),console.log("arr?",JSON.stringify(this._listeners)),new Error("Attempted to dispose unknown listener");this._size--,i[s]=void 0;let r=this._deliveryQueue.current===this;if(this._size*Zu<=i.length){let l=0;for(let c=0;c0}},t_=class{constructor(){this.i=-1,this.end=0}enqueue(e,t,i){this.i=0,this.end=i,this.current=e,this.value=t}reset(){this.i=this.end,this.current=void 0,this.value=void 0}},co=class{constructor(){this.mapWindowIdToZoomLevel=new Map,this._onDidChangeZoomLevel=new Y,this.onDidChangeZoomLevel=this._onDidChangeZoomLevel.event,this.mapWindowIdToZoomFactor=new Map,this._onDidChangeFullscreen=new Y,this.onDidChangeFullscreen=this._onDidChangeFullscreen.event,this.mapWindowIdToFullScreen=new Map}getZoomLevel(t){return this.mapWindowIdToZoomLevel.get(this.getWindowId(t))??0}setZoomLevel(t,i){if(this.getZoomLevel(i)===t)return;let s=this.getWindowId(i);this.mapWindowIdToZoomLevel.set(s,t),this._onDidChangeZoomLevel.fire(s)}getZoomFactor(t){return this.mapWindowIdToZoomFactor.get(this.getWindowId(t))??1}setZoomFactor(t,i){this.mapWindowIdToZoomFactor.set(this.getWindowId(i),t)}setFullscreen(t,i){if(this.isFullscreen(i)===t)return;let s=this.getWindowId(i);this.mapWindowIdToFullScreen.set(s,t),this._onDidChangeFullscreen.fire(s)}isFullscreen(t){return!!this.mapWindowIdToFullScreen.get(this.getWindowId(t))}getWindowId(t){return t.vscodeWindowId}};co.INSTANCE=new co;var ea=co;function i_(e,t,i){typeof t=="string"&&(t=e.matchMedia(t)),t.addEventListener("change",i)}ea.INSTANCE.onDidChangeZoomLevel;function s_(e){return ea.INSTANCE.getZoomFactor(e)}ea.INSTANCE.onDidChangeFullscreen;var Qs=typeof navigator=="object"?navigator.userAgent:"",uo=Qs.indexOf("Firefox")>=0,r_=Qs.indexOf("AppleWebKit")>=0,ta=Qs.indexOf("Chrome")>=0,n_=!ta&&Qs.indexOf("Safari")>=0;Qs.indexOf("Electron/")>=0;Qs.indexOf("Android")>=0;var kn=!1;if(typeof Ei.matchMedia=="function"){let e=Ei.matchMedia("(display-mode: standalone) or (display-mode: window-controls-overlay)"),t=Ei.matchMedia("(display-mode: fullscreen)");kn=e.matches,i_(Ei,e,({matches:i})=>{kn&&t.matches||(kn=i)})}var Ss="en",_o=!1,fo=!1,Fr=!1,Qh=!1,Er,Wr=Ss,Ma=Ss,o_,ri,hs=globalThis,_t,El;typeof hs.vscode<"u"&&typeof hs.vscode.process<"u"?_t=hs.vscode.process:typeof process<"u"&&typeof((El=process==null?void 0:process.versions)==null?void 0:El.node)=="string"&&(_t=process);var Bl,a_=typeof((Bl=_t==null?void 0:_t.versions)==null?void 0:Bl.electron)=="string",l_=a_&&(_t==null?void 0:_t.type)==="renderer",Il;if(typeof _t=="object"){_o=_t.platform==="win32",fo=_t.platform==="darwin",Fr=_t.platform==="linux",Fr&&_t.env.SNAP&&_t.env.SNAP_REVISION,_t.env.CI||_t.env.BUILD_ARTIFACTSTAGINGDIRECTORY,Er=Ss,Wr=Ss;let e=_t.env.VSCODE_NLS_CONFIG;if(e)try{let t=JSON.parse(e);Er=t.userLocale,Ma=t.osLocale,Wr=t.resolvedLanguage||Ss,o_=(Il=t.languagePack)==null?void 0:Il.translationsConfigFile}catch{}Qh=!0}else typeof navigator=="object"&&!l_?(ri=navigator.userAgent,_o=ri.indexOf("Windows")>=0,fo=ri.indexOf("Macintosh")>=0,(ri.indexOf("Macintosh")>=0||ri.indexOf("iPad")>=0||ri.indexOf("iPhone")>=0)&&navigator.maxTouchPoints&&navigator.maxTouchPoints>0,Fr=ri.indexOf("Linux")>=0,(ri==null?void 0:ri.indexOf("Mobi"))>=0,Wr=globalThis._VSCODE_NLS_LANGUAGE||Ss,Er=navigator.language.toLowerCase(),Ma=Er):console.error("Unable to resolve platform.");var Oh=_o,mi=fo,h_=Fr,La=Qh,Ci=ri,Ti=Wr,c_;(e=>{function t(){return Ti}e.value=t;function i(){return Ti.length===2?Ti==="en":Ti.length>=3?Ti[0]==="e"&&Ti[1]==="n"&&Ti[2]==="-":!1}e.isDefaultVariant=i;function s(){return Ti==="en"}e.isDefault=s})(c_||(c_={}));var d_=typeof hs.postMessage=="function"&&!hs.importScripts;(()=>{if(d_){let e=[];hs.addEventListener("message",i=>{if(i.data&&i.data.vscodeScheduleAsyncWork)for(let s=0,r=e.length;s{let s=++t;e.push({id:s,callback:i}),hs.postMessage({vscodeScheduleAsyncWork:s},"*")}}return e=>setTimeout(e)})();var u_=!!(Ci&&Ci.indexOf("Chrome")>=0);Ci&&Ci.indexOf("Firefox")>=0;!u_&&Ci&&Ci.indexOf("Safari")>=0;Ci&&Ci.indexOf("Edg/")>=0;Ci&&Ci.indexOf("Android")>=0;var ms=typeof navigator=="object"?navigator:{};La||document.queryCommandSupported&&document.queryCommandSupported("copy")||ms&&ms.clipboard&&ms.clipboard.writeText,La||ms&&ms.clipboard&&ms.clipboard.readText;var ia=class{constructor(){this._keyCodeToStr=[],this._strToKeyCode=Object.create(null)}define(e,t){this._keyCodeToStr[e]=t,this._strToKeyCode[t.toLowerCase()]=e}keyCodeToStr(e){return this._keyCodeToStr[e]}strToKeyCode(e){return this._strToKeyCode[e.toLowerCase()]||0}},En=new ia,Ra=new ia,Ta=new ia,__=new Array(230),Nh;(e=>{function t(o){return En.keyCodeToStr(o)}e.toString=t;function i(o){return En.strToKeyCode(o)}e.fromString=i;function s(o){return Ra.keyCodeToStr(o)}e.toUserSettingsUS=s;function r(o){return Ta.keyCodeToStr(o)}e.toUserSettingsGeneral=r;function n(o){return Ra.strToKeyCode(o)||Ta.strToKeyCode(o)}e.fromUserSettings=n;function a(o){if(o>=98&&o<=113)return null;switch(o){case 16:return"Up";case 18:return"Down";case 15:return"Left";case 17:return"Right"}return En.keyCodeToStr(o)}e.toElectronAccelerator=a})(Nh||(Nh={}));var f_=class Hh{constructor(t,i,s,r,n){this.ctrlKey=t,this.shiftKey=i,this.altKey=s,this.metaKey=r,this.keyCode=n}equals(t){return t instanceof Hh&&this.ctrlKey===t.ctrlKey&&this.shiftKey===t.shiftKey&&this.altKey===t.altKey&&this.metaKey===t.metaKey&&this.keyCode===t.keyCode}getHashCode(){let t=this.ctrlKey?"1":"0",i=this.shiftKey?"1":"0",s=this.altKey?"1":"0",r=this.metaKey?"1":"0";return`K${t}${i}${s}${r}${this.keyCode}`}isModifierKey(){return this.keyCode===0||this.keyCode===5||this.keyCode===57||this.keyCode===6||this.keyCode===4}toKeybinding(){return new v_([this])}isDuplicateModifierCase(){return this.ctrlKey&&this.keyCode===5||this.shiftKey&&this.keyCode===4||this.altKey&&this.keyCode===6||this.metaKey&&this.keyCode===57}},v_=class{constructor(e){if(e.length===0)throw Fu("chords");this.chords=e}getHashCode(){let e="";for(let t=0,i=this.chords.length;t{function t(i){return i===e.None||i===e.Cancelled||i instanceof y_?!0:!i||typeof i!="object"?!1:typeof i.isCancellationRequested=="boolean"&&typeof i.onCancellationRequested=="function"}e.isCancellationToken=t,e.None=Object.freeze({isCancellationRequested:!1,onCancellationRequested:ft.None}),e.Cancelled=Object.freeze({isCancellationRequested:!0,onCancellationRequested:Fh})})(b_||(b_={}));var y_=class{constructor(){this._isCancelled=!1,this._emitter=null}cancel(){this._isCancelled||(this._isCancelled=!0,this._emitter&&(this._emitter.fire(void 0),this.dispose()))}get isCancellationRequested(){return this._isCancelled}get onCancellationRequested(){return this._isCancelled?Fh:(this._emitter||(this._emitter=new Y),this._emitter.event)}dispose(){this._emitter&&(this._emitter.dispose(),this._emitter=null)}},sa=class{constructor(t,i){this._isDisposed=!1,this._token=-1,typeof t=="function"&&typeof i=="number"&&this.setIfNotSet(t,i)}dispose(){this.cancel(),this._isDisposed=!0}cancel(){this._token!==-1&&(clearTimeout(this._token),this._token=-1)}cancelAndSet(t,i){if(this._isDisposed)throw new no("Calling 'cancelAndSet' on a disposed TimeoutTimer");this.cancel(),this._token=setTimeout(()=>{this._token=-1,t()},i)}setIfNotSet(t,i){if(this._isDisposed)throw new no("Calling 'setIfNotSet' on a disposed TimeoutTimer");this._token===-1&&(this._token=setTimeout(()=>{this._token=-1,t()},i))}},x_=class{constructor(){this.disposable=void 0,this.isDisposed=!1}cancel(){var e;(e=this.disposable)==null||e.dispose(),this.disposable=void 0}cancelAndSet(e,t,i=globalThis){if(this.isDisposed)throw new no("Calling 'cancelAndSet' on a disposed IntervalTimer");this.cancel();let s=i.setInterval(()=>{e()},t);this.disposable=ze(()=>{i.clearInterval(s),this.disposable=void 0})}dispose(){this.cancel(),this.isDisposed=!0}},k_;(e=>{async function t(s){let r,n=await Promise.all(s.map(a=>a.then(o=>o,o=>{r||(r=o)})));if(typeof r<"u")throw r;return n}e.settled=t;function i(s){return new Promise(async(r,n)=>{try{await s(r,n)}catch(a){n(a)}})}e.withAsyncBody=i})(k_||(k_={}));var Na=class Jt{static fromArray(t){return new Jt(i=>{i.emitMany(t)})}static fromPromise(t){return new Jt(async i=>{i.emitMany(await t)})}static fromPromises(t){return new Jt(async i=>{await Promise.all(t.map(async s=>i.emitOne(await s)))})}static merge(t){return new Jt(async i=>{await Promise.all(t.map(async s=>{for await(let r of s)i.emitOne(r)}))})}constructor(t,i){this._state=0,this._results=[],this._error=null,this._onReturn=i,this._onStateChanged=new Y,queueMicrotask(async()=>{let s={emitOne:r=>this.emitOne(r),emitMany:r=>this.emitMany(r),reject:r=>this.reject(r)};try{await Promise.resolve(t(s)),this.resolve()}catch(r){this.reject(r)}finally{s.emitOne=void 0,s.emitMany=void 0,s.reject=void 0}})}[Symbol.asyncIterator](){let t=0;return{next:async()=>{do{if(this._state===2)throw this._error;if(t{var i;return(i=this._onReturn)==null||i.call(this),{done:!0,value:void 0}}}}static map(t,i){return new Jt(async s=>{for await(let r of t)s.emitOne(i(r))})}map(t){return Jt.map(this,t)}static filter(t,i){return new Jt(async s=>{for await(let r of t)i(r)&&s.emitOne(r)})}filter(t){return Jt.filter(this,t)}static coalesce(t){return Jt.filter(t,i=>!!i)}coalesce(){return Jt.coalesce(this)}static async toPromise(t){let i=[];for await(let s of t)i.push(s);return i}toPromise(){return Jt.toPromise(this)}emitOne(t){this._state===0&&(this._results.push(t),this._onStateChanged.fire())}emitMany(t){this._state===0&&(this._results=this._results.concat(t),this._onStateChanged.fire())}resolve(){this._state===0&&(this._state=1,this._onStateChanged.fire())}reject(t){this._state===0&&(this._state=2,this._error=t,this._onStateChanged.fire())}};Na.EMPTY=Na.fromArray([]);var{getWindow:pi,getWindowId:E_,onDidRegisterWindow:B_}=(function(){let e=new Map,t={window:Ei,disposables:new Ki};e.set(Ei.vscodeWindowId,t);let i=new Y,s=new Y,r=new Y;function n(a,o){return(typeof a=="number"?e.get(a):void 0)??(o?t:void 0)}return{onDidRegisterWindow:i.event,onWillUnregisterWindow:r.event,onDidUnregisterWindow:s.event,registerWindow(a){if(e.has(a.vscodeWindowId))return Ie.None;let o=new Ki,h={window:a,disposables:o.add(new Ki)};return e.set(a.vscodeWindowId,h),o.add(ze(()=>{e.delete(a.vscodeWindowId),s.fire(a)})),o.add(ge(a,ot.BEFORE_UNLOAD,()=>{r.fire(a)})),i.fire(h),o},getWindows(){return e.values()},getWindowsCount(){return e.size},getWindowId(a){return a.vscodeWindowId},hasWindow(a){return e.has(a)},getWindowById:n,getWindow(a){var l;let o=a;if((l=o==null?void 0:o.ownerDocument)!=null&&l.defaultView)return o.ownerDocument.defaultView.window;let h=a;return h!=null&&h.view?h.view.window:Ei},getDocument(a){return pi(a).document}}})(),I_=class{constructor(e,t,i,s){this._node=e,this._type=t,this._handler=i,this._options=s||!1,this._node.addEventListener(this._type,this._handler,this._options)}dispose(){this._handler&&(this._node.removeEventListener(this._type,this._handler,this._options),this._node=null,this._handler=null)}};function ge(e,t,i,s){return new I_(e,t,i,s)}var Ha=function(e,t,i,s){return ge(e,t,i,s)},ra,D_=class extends x_{constructor(e){super(),this.defaultTarget=e&&pi(e)}cancelAndSet(e,t,i){return super.cancelAndSet(e,t,i??this.defaultTarget)}},Fa=class{constructor(e,t=0){this._runner=e,this.priority=t,this._canceled=!1}dispose(){this._canceled=!0}execute(){if(!this._canceled)try{this._runner()}catch(e){Hr(e)}}static sort(e,t){return t.priority-e.priority}};(function(){let e=new Map,t=new Map,i=new Map,s=new Map,r=n=>{i.set(n,!1);let a=e.get(n)??[];for(t.set(n,a),e.set(n,[]),s.set(n,!0);a.length>0;)a.sort(Fa.sort),a.shift().execute();s.set(n,!1)};ra=(n,a,o=0)=>{let h=E_(n),l=new Fa(a,o),c=e.get(h);return c||(c=[],e.set(h,c)),c.push(l),i.get(h)||(i.set(h,!0),n.requestAnimationFrame(()=>r(h))),l}})();function M_(e){let t=e.getBoundingClientRect(),i=pi(e);return{left:t.left+i.scrollX,top:t.top+i.scrollY,width:t.width,height:t.height}}var ot={CLICK:"click",MOUSE_DOWN:"mousedown",MOUSE_OVER:"mouseover",MOUSE_LEAVE:"mouseleave",MOUSE_WHEEL:"wheel",POINTER_UP:"pointerup",POINTER_DOWN:"pointerdown",POINTER_MOVE:"pointermove",KEY_DOWN:"keydown",KEY_UP:"keyup",BEFORE_UNLOAD:"beforeunload",CHANGE:"change",FOCUS:"focus",BLUR:"blur",INPUT:"input"},L_=class{constructor(e){this.domNode=e,this._maxWidth="",this._width="",this._height="",this._top="",this._left="",this._bottom="",this._right="",this._paddingTop="",this._paddingLeft="",this._paddingBottom="",this._paddingRight="",this._fontFamily="",this._fontWeight="",this._fontSize="",this._fontStyle="",this._fontFeatureSettings="",this._fontVariationSettings="",this._textDecoration="",this._lineHeight="",this._letterSpacing="",this._className="",this._display="",this._position="",this._visibility="",this._color="",this._backgroundColor="",this._layerHint=!1,this._contain="none",this._boxShadow=""}setMaxWidth(e){let t=Tt(e);this._maxWidth!==t&&(this._maxWidth=t,this.domNode.style.maxWidth=this._maxWidth)}setWidth(e){let t=Tt(e);this._width!==t&&(this._width=t,this.domNode.style.width=this._width)}setHeight(e){let t=Tt(e);this._height!==t&&(this._height=t,this.domNode.style.height=this._height)}setTop(e){let t=Tt(e);this._top!==t&&(this._top=t,this.domNode.style.top=this._top)}setLeft(e){let t=Tt(e);this._left!==t&&(this._left=t,this.domNode.style.left=this._left)}setBottom(e){let t=Tt(e);this._bottom!==t&&(this._bottom=t,this.domNode.style.bottom=this._bottom)}setRight(e){let t=Tt(e);this._right!==t&&(this._right=t,this.domNode.style.right=this._right)}setPaddingTop(e){let t=Tt(e);this._paddingTop!==t&&(this._paddingTop=t,this.domNode.style.paddingTop=this._paddingTop)}setPaddingLeft(e){let t=Tt(e);this._paddingLeft!==t&&(this._paddingLeft=t,this.domNode.style.paddingLeft=this._paddingLeft)}setPaddingBottom(e){let t=Tt(e);this._paddingBottom!==t&&(this._paddingBottom=t,this.domNode.style.paddingBottom=this._paddingBottom)}setPaddingRight(e){let t=Tt(e);this._paddingRight!==t&&(this._paddingRight=t,this.domNode.style.paddingRight=this._paddingRight)}setFontFamily(e){this._fontFamily!==e&&(this._fontFamily=e,this.domNode.style.fontFamily=this._fontFamily)}setFontWeight(e){this._fontWeight!==e&&(this._fontWeight=e,this.domNode.style.fontWeight=this._fontWeight)}setFontSize(e){let t=Tt(e);this._fontSize!==t&&(this._fontSize=t,this.domNode.style.fontSize=this._fontSize)}setFontStyle(e){this._fontStyle!==e&&(this._fontStyle=e,this.domNode.style.fontStyle=this._fontStyle)}setFontFeatureSettings(e){this._fontFeatureSettings!==e&&(this._fontFeatureSettings=e,this.domNode.style.fontFeatureSettings=this._fontFeatureSettings)}setFontVariationSettings(e){this._fontVariationSettings!==e&&(this._fontVariationSettings=e,this.domNode.style.fontVariationSettings=this._fontVariationSettings)}setTextDecoration(e){this._textDecoration!==e&&(this._textDecoration=e,this.domNode.style.textDecoration=this._textDecoration)}setLineHeight(e){let t=Tt(e);this._lineHeight!==t&&(this._lineHeight=t,this.domNode.style.lineHeight=this._lineHeight)}setLetterSpacing(e){let t=Tt(e);this._letterSpacing!==t&&(this._letterSpacing=t,this.domNode.style.letterSpacing=this._letterSpacing)}setClassName(e){this._className!==e&&(this._className=e,this.domNode.className=this._className)}toggleClassName(e,t){this.domNode.classList.toggle(e,t),this._className=this.domNode.className}setDisplay(e){this._display!==e&&(this._display=e,this.domNode.style.display=this._display)}setPosition(e){this._position!==e&&(this._position=e,this.domNode.style.position=this._position)}setVisibility(e){this._visibility!==e&&(this._visibility=e,this.domNode.style.visibility=this._visibility)}setColor(e){this._color!==e&&(this._color=e,this.domNode.style.color=this._color)}setBackgroundColor(e){this._backgroundColor!==e&&(this._backgroundColor=e,this.domNode.style.backgroundColor=this._backgroundColor)}setLayerHinting(e){this._layerHint!==e&&(this._layerHint=e,this.domNode.style.transform=this._layerHint?"translate3d(0px, 0px, 0px)":"")}setBoxShadow(e){this._boxShadow!==e&&(this._boxShadow=e,this.domNode.style.boxShadow=e)}setContain(e){this._contain!==e&&(this._contain=e,this.domNode.style.contain=this._contain)}setAttribute(e,t){this.domNode.setAttribute(e,t)}removeAttribute(e){this.domNode.removeAttribute(e)}appendChild(e){this.domNode.appendChild(e.domNode)}removeChild(e){this.domNode.removeChild(e.domNode)}};function Tt(e){return typeof e=="number"?`${e}px`:e}function sr(e){return new L_(e)}var Wh=class{constructor(){this._hooks=new Ki,this._pointerMoveCallback=null,this._onStopCallback=null}dispose(){this.stopMonitoring(!1),this._hooks.dispose()}stopMonitoring(e,t){if(!this.isMonitoring())return;this._hooks.clear(),this._pointerMoveCallback=null;let i=this._onStopCallback;this._onStopCallback=null,e&&i&&i(t)}isMonitoring(){return!!this._pointerMoveCallback}startMonitoring(e,t,i,s,r){this.isMonitoring()&&this.stopMonitoring(!1),this._pointerMoveCallback=s,this._onStopCallback=r;let n=e;try{e.setPointerCapture(t),this._hooks.add(ze(()=>{try{e.releasePointerCapture(t)}catch{}}))}catch{n=pi(e)}this._hooks.add(ge(n,ot.POINTER_MOVE,a=>{if(a.buttons!==i){this.stopMonitoring(!0);return}a.preventDefault(),this._pointerMoveCallback(a)})),this._hooks.add(ge(n,ot.POINTER_UP,a=>this.stopMonitoring(!0)))}};function R_(e,t,i){let s=null,r=null;if(typeof i.value=="function"?(s="value",r=i.value,r.length!==0&&console.warn("Memoize should only be used in functions with zero parameters")):typeof i.get=="function"&&(s="get",r=i.get),!r)throw new Error("not supported");let n=`$memoize$${t}`;i[s]=function(...a){return this.hasOwnProperty(n)||Object.defineProperty(this,n,{configurable:!1,enumerable:!1,writable:!1,value:r.apply(this,a)}),this[n]}}var di;(e=>(e.Tap="-xterm-gesturetap",e.Change="-xterm-gesturechange",e.Start="-xterm-gesturestart",e.End="-xterm-gesturesend",e.Contextmenu="-xterm-gesturecontextmenu"))(di||(di={}));var Js=class Ct extends Ie{constructor(){super(),this.dispatched=!1,this.targets=new Da,this.ignoreTargets=new Da,this.activeTouches={},this.handle=null,this._lastSetTapCountTime=0,this._register(ft.runAndSubscribe(B_,({window:t,disposables:i})=>{i.add(ge(t.document,"touchstart",s=>this.onTouchStart(s),{passive:!1})),i.add(ge(t.document,"touchend",s=>this.onTouchEnd(t,s))),i.add(ge(t.document,"touchmove",s=>this.onTouchMove(s),{passive:!1}))},{window:Ei,disposables:this._store}))}static addTarget(t){if(!Ct.isTouchDevice())return Ie.None;Ct.INSTANCE||(Ct.INSTANCE=new Ct);let i=Ct.INSTANCE.targets.push(t);return ze(i)}static ignoreTarget(t){if(!Ct.isTouchDevice())return Ie.None;Ct.INSTANCE||(Ct.INSTANCE=new Ct);let i=Ct.INSTANCE.ignoreTargets.push(t);return ze(i)}static isTouchDevice(){return"ontouchstart"in Ei||navigator.maxTouchPoints>0}dispose(){this.handle&&(this.handle.dispose(),this.handle=null),super.dispose()}onTouchStart(t){let i=Date.now();this.handle&&(this.handle.dispose(),this.handle=null);for(let s=0,r=t.targetTouches.length;s=Ct.HOLD_DELAY&&Math.abs(h.initialPageX-Ht(h.rollingPageX))<30&&Math.abs(h.initialPageY-Ht(h.rollingPageY))<30){let c=this.newGestureEvent(di.Contextmenu,h.initialTarget);c.pageX=Ht(h.rollingPageX),c.pageY=Ht(h.rollingPageY),this.dispatchEvent(c)}else if(r===1){let c=Ht(h.rollingPageX),d=Ht(h.rollingPageY),g=Ht(h.rollingTimestamps)-h.rollingTimestamps[0],_=c-h.rollingPageX[0],v=d-h.rollingPageY[0],u=[...this.targets].filter(f=>h.initialTarget instanceof Node&&f.contains(h.initialTarget));this.inertia(t,u,s,Math.abs(_)/g,_>0?1:-1,c,Math.abs(v)/g,v>0?1:-1,d)}this.dispatchEvent(this.newGestureEvent(di.End,h.initialTarget)),delete this.activeTouches[o.identifier]}this.dispatched&&(i.preventDefault(),i.stopPropagation(),this.dispatched=!1)}newGestureEvent(t,i){let s=document.createEvent("CustomEvent");return s.initEvent(t,!1,!0),s.initialTarget=i,s.tapCount=0,s}dispatchEvent(t){if(t.type===di.Tap){let i=new Date().getTime(),s=0;i-this._lastSetTapCountTime>Ct.CLEAR_TAP_COUNT_TIME?s=1:s=2,this._lastSetTapCountTime=i,t.tapCount=s}else(t.type===di.Change||t.type===di.Contextmenu)&&(this._lastSetTapCountTime=0);if(t.initialTarget instanceof Node){for(let s of this.ignoreTargets)if(s.contains(t.initialTarget))return;let i=[];for(let s of this.targets)if(s.contains(t.initialTarget)){let r=0,n=t.initialTarget;for(;n&&n!==s;)r++,n=n.parentElement;i.push([r,s])}i.sort((s,r)=>s[0]-r[0]);for(let[s,r]of i)r.dispatchEvent(t),this.dispatched=!0}}inertia(t,i,s,r,n,a,o,h,l){this.handle=ra(t,()=>{let c=Date.now(),d=c-s,g=0,_=0,v=!0;r+=Ct.SCROLL_FRICTION*d,o+=Ct.SCROLL_FRICTION*d,r>0&&(v=!1,g=n*r*d),o>0&&(v=!1,_=h*o*d);let u=this.newGestureEvent(di.Change);u.translationX=g,u.translationY=_,i.forEach(f=>f.dispatchEvent(u)),v||this.inertia(t,i,c,r,n,a+g,o,h,l+_)})}onTouchMove(t){let i=Date.now();for(let s=0,r=t.changedTouches.length;s3&&(a.rollingPageX.shift(),a.rollingPageY.shift(),a.rollingTimestamps.shift()),a.rollingPageX.push(n.pageX),a.rollingPageY.push(n.pageY),a.rollingTimestamps.push(i)}this.dispatched&&(t.preventDefault(),t.stopPropagation(),this.dispatched=!1)}};Js.SCROLL_FRICTION=-.005,Js.HOLD_DELAY=700,Js.CLEAR_TAP_COUNT_TIME=400,Ke([R_],Js,"isTouchDevice",1);var T_=Js,na=class extends Ie{onclick(t,i){this._register(ge(t,ot.CLICK,s=>i(new Br(pi(t),s))))}onmousedown(t,i){this._register(ge(t,ot.MOUSE_DOWN,s=>i(new Br(pi(t),s))))}onmouseover(t,i){this._register(ge(t,ot.MOUSE_OVER,s=>i(new Br(pi(t),s))))}onmouseleave(t,i){this._register(ge(t,ot.MOUSE_LEAVE,s=>i(new Br(pi(t),s))))}onkeydown(t,i){this._register(ge(t,ot.KEY_DOWN,s=>i(new Pa(s))))}onkeyup(t,i){this._register(ge(t,ot.KEY_UP,s=>i(new Pa(s))))}oninput(t,i){this._register(ge(t,ot.INPUT,i))}onblur(t,i){this._register(ge(t,ot.BLUR,i))}onfocus(t,i){this._register(ge(t,ot.FOCUS,i))}onchange(t,i){this._register(ge(t,ot.CHANGE,i))}ignoreGesture(t){return T_.ignoreTarget(t)}},Wa=11,P_=class extends na{constructor(e){super(),this._onActivate=e.onActivate,this.bgDomNode=document.createElement("div"),this.bgDomNode.className="arrow-background",this.bgDomNode.style.position="absolute",this.bgDomNode.style.width=e.bgWidth+"px",this.bgDomNode.style.height=e.bgHeight+"px",typeof e.top<"u"&&(this.bgDomNode.style.top="0px"),typeof e.left<"u"&&(this.bgDomNode.style.left="0px"),typeof e.bottom<"u"&&(this.bgDomNode.style.bottom="0px"),typeof e.right<"u"&&(this.bgDomNode.style.right="0px"),this.domNode=document.createElement("div"),this.domNode.className=e.className,this.domNode.style.position="absolute",this.domNode.style.width=Wa+"px",this.domNode.style.height=Wa+"px",typeof e.top<"u"&&(this.domNode.style.top=e.top+"px"),typeof e.left<"u"&&(this.domNode.style.left=e.left+"px"),typeof e.bottom<"u"&&(this.domNode.style.bottom=e.bottom+"px"),typeof e.right<"u"&&(this.domNode.style.right=e.right+"px"),this._pointerMoveMonitor=this._register(new Wh),this._register(Ha(this.bgDomNode,ot.POINTER_DOWN,t=>this._arrowPointerDown(t))),this._register(Ha(this.domNode,ot.POINTER_DOWN,t=>this._arrowPointerDown(t))),this._pointerdownRepeatTimer=this._register(new D_),this._pointerdownScheduleRepeatTimer=this._register(new sa)}_arrowPointerDown(e){if(!e.target||!(e.target instanceof Element))return;let t=()=>{this._pointerdownRepeatTimer.cancelAndSet(()=>this._onActivate(),1e3/24,pi(e))};this._onActivate(),this._pointerdownRepeatTimer.cancel(),this._pointerdownScheduleRepeatTimer.cancelAndSet(t,200),this._pointerMoveMonitor.startMonitoring(e.target,e.pointerId,e.buttons,i=>{},()=>{this._pointerdownRepeatTimer.cancel(),this._pointerdownScheduleRepeatTimer.cancel()}),e.preventDefault()}},Q_=class vo{constructor(t,i,s,r,n,a,o){this._forceIntegerValues=t,this._scrollStateBrand=void 0,this._forceIntegerValues&&(i=i|0,s=s|0,r=r|0,n=n|0,a=a|0,o=o|0),this.rawScrollLeft=r,this.rawScrollTop=o,i<0&&(i=0),r+i>s&&(r=s-i),r<0&&(r=0),n<0&&(n=0),o+n>a&&(o=a-n),o<0&&(o=0),this.width=i,this.scrollWidth=s,this.scrollLeft=r,this.height=n,this.scrollHeight=a,this.scrollTop=o}equals(t){return this.rawScrollLeft===t.rawScrollLeft&&this.rawScrollTop===t.rawScrollTop&&this.width===t.width&&this.scrollWidth===t.scrollWidth&&this.scrollLeft===t.scrollLeft&&this.height===t.height&&this.scrollHeight===t.scrollHeight&&this.scrollTop===t.scrollTop}withScrollDimensions(t,i){return new vo(this._forceIntegerValues,typeof t.width<"u"?t.width:this.width,typeof t.scrollWidth<"u"?t.scrollWidth:this.scrollWidth,i?this.rawScrollLeft:this.scrollLeft,typeof t.height<"u"?t.height:this.height,typeof t.scrollHeight<"u"?t.scrollHeight:this.scrollHeight,i?this.rawScrollTop:this.scrollTop)}withScrollPosition(t){return new vo(this._forceIntegerValues,this.width,this.scrollWidth,typeof t.scrollLeft<"u"?t.scrollLeft:this.rawScrollLeft,this.height,this.scrollHeight,typeof t.scrollTop<"u"?t.scrollTop:this.rawScrollTop)}createScrollEvent(t,i){let s=this.width!==t.width,r=this.scrollWidth!==t.scrollWidth,n=this.scrollLeft!==t.scrollLeft,a=this.height!==t.height,o=this.scrollHeight!==t.scrollHeight,h=this.scrollTop!==t.scrollTop;return{inSmoothScrolling:i,oldWidth:t.width,oldScrollWidth:t.scrollWidth,oldScrollLeft:t.scrollLeft,width:this.width,scrollWidth:this.scrollWidth,scrollLeft:this.scrollLeft,oldHeight:t.height,oldScrollHeight:t.scrollHeight,oldScrollTop:t.scrollTop,height:this.height,scrollHeight:this.scrollHeight,scrollTop:this.scrollTop,widthChanged:s,scrollWidthChanged:r,scrollLeftChanged:n,heightChanged:a,scrollHeightChanged:o,scrollTopChanged:h}}},O_=class extends Ie{constructor(e){super(),this._scrollableBrand=void 0,this._onScroll=this._register(new Y),this.onScroll=this._onScroll.event,this._smoothScrollDuration=e.smoothScrollDuration,this._scheduleAtNextAnimationFrame=e.scheduleAtNextAnimationFrame,this._state=new Q_(e.forceIntegerValues,0,0,0,0,0,0),this._smoothScrolling=null}dispose(){this._smoothScrolling&&(this._smoothScrolling.dispose(),this._smoothScrolling=null),super.dispose()}setSmoothScrollDuration(e){this._smoothScrollDuration=e}validateScrollPosition(e){return this._state.withScrollPosition(e)}getScrollDimensions(){return this._state}setScrollDimensions(e,t){var s;let i=this._state.withScrollDimensions(e,t);this._setState(i,!!this._smoothScrolling),(s=this._smoothScrolling)==null||s.acceptScrollDimensions(this._state)}getFutureScrollPosition(){return this._smoothScrolling?this._smoothScrolling.to:this._state}getCurrentScrollPosition(){return this._state}setScrollPositionNow(e){let t=this._state.withScrollPosition(e);this._smoothScrolling&&(this._smoothScrolling.dispose(),this._smoothScrolling=null),this._setState(t,!1)}setScrollPositionSmooth(e,t){if(this._smoothScrollDuration===0)return this.setScrollPositionNow(e);if(this._smoothScrolling){e={scrollLeft:typeof e.scrollLeft>"u"?this._smoothScrolling.to.scrollLeft:e.scrollLeft,scrollTop:typeof e.scrollTop>"u"?this._smoothScrolling.to.scrollTop:e.scrollTop};let i=this._state.withScrollPosition(e);if(this._smoothScrolling.to.scrollLeft===i.scrollLeft&&this._smoothScrolling.to.scrollTop===i.scrollTop)return;let s;t?s=new Ua(this._smoothScrolling.from,i,this._smoothScrolling.startTime,this._smoothScrolling.duration):s=this._smoothScrolling.combine(this._state,i,this._smoothScrollDuration),this._smoothScrolling.dispose(),this._smoothScrolling=s}else{let i=this._state.withScrollPosition(e);this._smoothScrolling=Ua.start(this._state,i,this._smoothScrollDuration)}this._smoothScrolling.animationFrameDisposable=this._scheduleAtNextAnimationFrame(()=>{this._smoothScrolling&&(this._smoothScrolling.animationFrameDisposable=null,this._performSmoothScrolling())})}hasPendingScrollAnimation(){return!!this._smoothScrolling}_performSmoothScrolling(){if(!this._smoothScrolling)return;let e=this._smoothScrolling.tick(),t=this._state.withScrollPosition(e);if(this._setState(t,!0),!!this._smoothScrolling){if(e.isDone){this._smoothScrolling.dispose(),this._smoothScrolling=null;return}this._smoothScrolling.animationFrameDisposable=this._scheduleAtNextAnimationFrame(()=>{this._smoothScrolling&&(this._smoothScrolling.animationFrameDisposable=null,this._performSmoothScrolling())})}}_setState(e,t){let i=this._state;i.equals(e)||(this._state=e,this._onScroll.fire(this._state.createScrollEvent(i,t)))}},za=class{constructor(e,t,i){this.scrollLeft=e,this.scrollTop=t,this.isDone=i}};function Bn(e,t){let i=t-e;return function(s){return e+i*F_(s)}}function N_(e,t,i){return function(s){return s2.5*s){let r,n;return t{var e;(e=this._domNode)==null||e.setClassName(this._visibleClassName)},0))}_hide(e){var t;this._revealTimer.cancel(),this._isVisible&&(this._isVisible=!1,(t=this._domNode)==null||t.setClassName(this._invisibleClassName+(e?" fade":"")))}},z_=140,zh=class extends na{constructor(e){super(),this._lazyRender=e.lazyRender,this._host=e.host,this._scrollable=e.scrollable,this._scrollByPage=e.scrollByPage,this._scrollbarState=e.scrollbarState,this._visibilityController=this._register(new W_(e.visibility,"visible scrollbar "+e.extraScrollbarClassName,"invisible scrollbar "+e.extraScrollbarClassName)),this._visibilityController.setIsNeeded(this._scrollbarState.isNeeded()),this._pointerMoveMonitor=this._register(new Wh),this._shouldRender=!0,this.domNode=sr(document.createElement("div")),this.domNode.setAttribute("role","presentation"),this.domNode.setAttribute("aria-hidden","true"),this._visibilityController.setDomNode(this.domNode),this.domNode.setPosition("absolute"),this._register(ge(this.domNode.domNode,ot.POINTER_DOWN,t=>this._domNodePointerDown(t)))}_createArrow(e){let t=this._register(new P_(e));this.domNode.domNode.appendChild(t.bgDomNode),this.domNode.domNode.appendChild(t.domNode)}_createSlider(e,t,i,s){this.slider=sr(document.createElement("div")),this.slider.setClassName("slider"),this.slider.setPosition("absolute"),this.slider.setTop(e),this.slider.setLeft(t),typeof i=="number"&&this.slider.setWidth(i),typeof s=="number"&&this.slider.setHeight(s),this.slider.setLayerHinting(!0),this.slider.setContain("strict"),this.domNode.domNode.appendChild(this.slider.domNode),this._register(ge(this.slider.domNode,ot.POINTER_DOWN,r=>{r.button===0&&(r.preventDefault(),this._sliderPointerDown(r))})),this.onclick(this.slider.domNode,r=>{r.leftButton&&r.stopPropagation()})}_onElementSize(e){return this._scrollbarState.setVisibleSize(e)&&(this._visibilityController.setIsNeeded(this._scrollbarState.isNeeded()),this._shouldRender=!0,this._lazyRender||this.render()),this._shouldRender}_onElementScrollSize(e){return this._scrollbarState.setScrollSize(e)&&(this._visibilityController.setIsNeeded(this._scrollbarState.isNeeded()),this._shouldRender=!0,this._lazyRender||this.render()),this._shouldRender}_onElementScrollPosition(e){return this._scrollbarState.setScrollPosition(e)&&(this._visibilityController.setIsNeeded(this._scrollbarState.isNeeded()),this._shouldRender=!0,this._lazyRender||this.render()),this._shouldRender}beginReveal(){this._visibilityController.setShouldBeVisible(!0)}beginHide(){this._visibilityController.setShouldBeVisible(!1)}render(){this._shouldRender&&(this._shouldRender=!1,this._renderDomNode(this._scrollbarState.getRectangleLargeSize(),this._scrollbarState.getRectangleSmallSize()),this._updateSlider(this._scrollbarState.getSliderSize(),this._scrollbarState.getArrowSize()+this._scrollbarState.getSliderPosition()))}_domNodePointerDown(e){e.target===this.domNode.domNode&&this._onPointerDown(e)}delegatePointerDown(e){let t=this.domNode.domNode.getClientRects()[0].top,i=t+this._scrollbarState.getSliderPosition(),s=t+this._scrollbarState.getSliderPosition()+this._scrollbarState.getSliderSize(),r=this._sliderPointerPosition(e);i<=r&&r<=s?e.button===0&&(e.preventDefault(),this._sliderPointerDown(e)):this._onPointerDown(e)}_onPointerDown(e){let t,i;if(e.target===this.domNode.domNode&&typeof e.offsetX=="number"&&typeof e.offsetY=="number")t=e.offsetX,i=e.offsetY;else{let r=M_(this.domNode.domNode);t=e.pageX-r.left,i=e.pageY-r.top}let s=this._pointerDownRelativePosition(t,i);this._setDesiredScrollPositionNow(this._scrollByPage?this._scrollbarState.getDesiredScrollPositionFromOffsetPaged(s):this._scrollbarState.getDesiredScrollPositionFromOffset(s)),e.button===0&&(e.preventDefault(),this._sliderPointerDown(e))}_sliderPointerDown(e){if(!e.target||!(e.target instanceof Element))return;let t=this._sliderPointerPosition(e),i=this._sliderOrthogonalPointerPosition(e),s=this._scrollbarState.clone();this.slider.toggleClassName("active",!0),this._pointerMoveMonitor.startMonitoring(e.target,e.pointerId,e.buttons,r=>{let n=this._sliderOrthogonalPointerPosition(r),a=Math.abs(n-i);if(Oh&&a>z_){this._setDesiredScrollPositionNow(s.getScrollPosition());return}let o=this._sliderPointerPosition(r)-t;this._setDesiredScrollPositionNow(s.getDesiredScrollPositionFromDelta(o))},()=>{this.slider.toggleClassName("active",!1),this._host.onDragEnd()}),this._host.onDragStart()}_setDesiredScrollPositionNow(e){let t={};this.writeScrollPosition(t,e),this._scrollable.setScrollPositionNow(t)}updateScrollbarSize(e){this._updateScrollbarSize(e),this._scrollbarState.setScrollbarSize(e),this._shouldRender=!0,this._lazyRender||this.render()}isNeeded(){return this._scrollbarState.isNeeded()}},Uh=class po{constructor(t,i,s,r,n,a){this._scrollbarSize=Math.round(i),this._oppositeScrollbarSize=Math.round(s),this._arrowSize=Math.round(t),this._visibleSize=r,this._scrollSize=n,this._scrollPosition=a,this._computedAvailableSize=0,this._computedIsNeeded=!1,this._computedSliderSize=0,this._computedSliderRatio=0,this._computedSliderPosition=0,this._refreshComputedValues()}clone(){return new po(this._arrowSize,this._scrollbarSize,this._oppositeScrollbarSize,this._visibleSize,this._scrollSize,this._scrollPosition)}setVisibleSize(t){let i=Math.round(t);return this._visibleSize!==i?(this._visibleSize=i,this._refreshComputedValues(),!0):!1}setScrollSize(t){let i=Math.round(t);return this._scrollSize!==i?(this._scrollSize=i,this._refreshComputedValues(),!0):!1}setScrollPosition(t){let i=Math.round(t);return this._scrollPosition!==i?(this._scrollPosition=i,this._refreshComputedValues(),!0):!1}setScrollbarSize(t){this._scrollbarSize=Math.round(t)}setOppositeScrollbarSize(t){this._oppositeScrollbarSize=Math.round(t)}static _computeValues(t,i,s,r,n){let a=Math.max(0,s-t),o=Math.max(0,a-2*i),h=r>0&&r>s;if(!h)return{computedAvailableSize:Math.round(a),computedIsNeeded:h,computedSliderSize:Math.round(o),computedSliderRatio:0,computedSliderPosition:0};let l=Math.round(Math.max(20,Math.floor(s*o/r))),c=(o-l)/(r-s),d=n*c;return{computedAvailableSize:Math.round(a),computedIsNeeded:h,computedSliderSize:Math.round(l),computedSliderRatio:c,computedSliderPosition:Math.round(d)}}_refreshComputedValues(){let t=po._computeValues(this._oppositeScrollbarSize,this._arrowSize,this._visibleSize,this._scrollSize,this._scrollPosition);this._computedAvailableSize=t.computedAvailableSize,this._computedIsNeeded=t.computedIsNeeded,this._computedSliderSize=t.computedSliderSize,this._computedSliderRatio=t.computedSliderRatio,this._computedSliderPosition=t.computedSliderPosition}getArrowSize(){return this._arrowSize}getScrollPosition(){return this._scrollPosition}getRectangleLargeSize(){return this._computedAvailableSize}getRectangleSmallSize(){return this._scrollbarSize}isNeeded(){return this._computedIsNeeded}getSliderSize(){return this._computedSliderSize}getSliderPosition(){return this._computedSliderPosition}getDesiredScrollPositionFromOffset(t){if(!this._computedIsNeeded)return 0;let i=t-this._arrowSize-this._computedSliderSize/2;return Math.round(i/this._computedSliderRatio)}getDesiredScrollPositionFromOffsetPaged(t){if(!this._computedIsNeeded)return 0;let i=t-this._arrowSize,s=this._scrollPosition;return i0&&Math.abs(t.deltaY)>0)return 1;let s=.5;if((!this._isAlmostInt(t.deltaX)||!this._isAlmostInt(t.deltaY))&&(s+=.25),i){let r=Math.abs(t.deltaX),n=Math.abs(t.deltaY),a=Math.abs(i.deltaX),o=Math.abs(i.deltaY),h=Math.max(Math.min(r,a),1),l=Math.max(Math.min(n,o),1),c=Math.max(r,a),d=Math.max(n,o);c%h===0&&d%l===0&&(s-=.5)}return Math.min(Math.max(s,0),1)}_isAlmostInt(t){return Math.abs(Math.round(t)-t)<.01}};mo.INSTANCE=new mo;var K_=mo,J_=class extends na{constructor(e,t,i){super(),this._onScroll=this._register(new Y),this.onScroll=this._onScroll.event,this._onWillScroll=this._register(new Y),this.onWillScroll=this._onWillScroll.event,this._options=Y_(t),this._scrollable=i,this._register(this._scrollable.onScroll(r=>{this._onWillScroll.fire(r),this._onDidScroll(r),this._onScroll.fire(r)}));let s={onMouseWheel:r=>this._onMouseWheel(r),onDragStart:()=>this._onDragStart(),onDragEnd:()=>this._onDragEnd()};this._verticalScrollbar=this._register(new $_(this._scrollable,this._options,s)),this._horizontalScrollbar=this._register(new U_(this._scrollable,this._options,s)),this._domNode=document.createElement("div"),this._domNode.className="xterm-scrollable-element "+this._options.className,this._domNode.setAttribute("role","presentation"),this._domNode.style.position="relative",this._domNode.appendChild(e),this._domNode.appendChild(this._horizontalScrollbar.domNode.domNode),this._domNode.appendChild(this._verticalScrollbar.domNode.domNode),this._options.useShadows?(this._leftShadowDomNode=sr(document.createElement("div")),this._leftShadowDomNode.setClassName("shadow"),this._domNode.appendChild(this._leftShadowDomNode.domNode),this._topShadowDomNode=sr(document.createElement("div")),this._topShadowDomNode.setClassName("shadow"),this._domNode.appendChild(this._topShadowDomNode.domNode),this._topLeftShadowDomNode=sr(document.createElement("div")),this._topLeftShadowDomNode.setClassName("shadow"),this._domNode.appendChild(this._topLeftShadowDomNode.domNode)):(this._leftShadowDomNode=null,this._topShadowDomNode=null,this._topLeftShadowDomNode=null),this._listenOnDomNode=this._options.listenOnDomNode||this._domNode,this._mouseWheelToDispose=[],this._setListeningToMouseWheel(this._options.handleMouseWheel),this.onmouseover(this._listenOnDomNode,r=>this._onMouseOver(r)),this.onmouseleave(this._listenOnDomNode,r=>this._onMouseLeave(r)),this._hideTimeout=this._register(new sa),this._isDragging=!1,this._mouseIsOver=!1,this._shouldRender=!0,this._revealOnScroll=!0}get options(){return this._options}dispose(){this._mouseWheelToDispose=_s(this._mouseWheelToDispose),super.dispose()}getDomNode(){return this._domNode}getOverviewRulerLayoutInfo(){return{parent:this._domNode,insertBefore:this._verticalScrollbar.domNode.domNode}}delegateVerticalScrollbarPointerDown(e){this._verticalScrollbar.delegatePointerDown(e)}getScrollDimensions(){return this._scrollable.getScrollDimensions()}setScrollDimensions(e){this._scrollable.setScrollDimensions(e,!1)}updateClassName(e){this._options.className=e,mi&&(this._options.className+=" mac"),this._domNode.className="xterm-scrollable-element "+this._options.className}updateOptions(e){typeof e.handleMouseWheel<"u"&&(this._options.handleMouseWheel=e.handleMouseWheel,this._setListeningToMouseWheel(this._options.handleMouseWheel)),typeof e.mouseWheelScrollSensitivity<"u"&&(this._options.mouseWheelScrollSensitivity=e.mouseWheelScrollSensitivity),typeof e.fastScrollSensitivity<"u"&&(this._options.fastScrollSensitivity=e.fastScrollSensitivity),typeof e.scrollPredominantAxis<"u"&&(this._options.scrollPredominantAxis=e.scrollPredominantAxis),typeof e.horizontal<"u"&&(this._options.horizontal=e.horizontal),typeof e.vertical<"u"&&(this._options.vertical=e.vertical),typeof e.horizontalScrollbarSize<"u"&&(this._options.horizontalScrollbarSize=e.horizontalScrollbarSize),typeof e.verticalScrollbarSize<"u"&&(this._options.verticalScrollbarSize=e.verticalScrollbarSize),typeof e.scrollByPage<"u"&&(this._options.scrollByPage=e.scrollByPage),this._horizontalScrollbar.updateOptions(this._options),this._verticalScrollbar.updateOptions(this._options),this._options.lazyRender||this._render()}setRevealOnScroll(e){this._revealOnScroll=e}delegateScrollFromMouseWheelEvent(e){this._onMouseWheel(new Oa(e))}_setListeningToMouseWheel(e){if(this._mouseWheelToDispose.length>0!==e&&(this._mouseWheelToDispose=_s(this._mouseWheelToDispose),e)){let t=i=>{this._onMouseWheel(new Oa(i))};this._mouseWheelToDispose.push(ge(this._listenOnDomNode,ot.MOUSE_WHEEL,t,{passive:!1}))}}_onMouseWheel(e){var r;if((r=e.browserEvent)!=null&&r.defaultPrevented)return;let t=K_.INSTANCE;t.acceptStandardWheelEvent(e);let i=!1;if(e.deltaY||e.deltaX){let n=e.deltaY*this._options.mouseWheelScrollSensitivity,a=e.deltaX*this._options.mouseWheelScrollSensitivity;this._options.scrollPredominantAxis&&(this._options.scrollYToX&&a+n===0?a=n=0:Math.abs(n)>=Math.abs(a)?a=0:n=0),this._options.flipAxes&&([n,a]=[a,n]);let o=!mi&&e.browserEvent&&e.browserEvent.shiftKey;(this._options.scrollYToX||o)&&!a&&(a=n,n=0),e.browserEvent&&e.browserEvent.altKey&&(a=a*this._options.fastScrollSensitivity,n=n*this._options.fastScrollSensitivity);let h=this._scrollable.getFutureScrollPosition(),l={};if(n){let c=$a*n,d=h.scrollTop-(c<0?Math.floor(c):Math.ceil(c));this._verticalScrollbar.writeScrollPosition(l,d)}if(a){let c=$a*a,d=h.scrollLeft-(c<0?Math.floor(c):Math.ceil(c));this._horizontalScrollbar.writeScrollPosition(l,d)}l=this._scrollable.validateScrollPosition(l),(h.scrollLeft!==l.scrollLeft||h.scrollTop!==l.scrollTop)&&(this._options.mouseWheelSmoothScroll&&t.isPhysicalMouseWheel()?this._scrollable.setScrollPositionSmooth(l):this._scrollable.setScrollPositionNow(l),i=!0)}let s=i;!s&&this._options.alwaysConsumeMouseWheel&&(s=!0),!s&&this._options.consumeMouseWheelIfScrollbarIsNeeded&&(this._verticalScrollbar.isNeeded()||this._horizontalScrollbar.isNeeded())&&(s=!0),s&&(e.preventDefault(),e.stopPropagation())}_onDidScroll(e){this._shouldRender=this._horizontalScrollbar.onDidScroll(e)||this._shouldRender,this._shouldRender=this._verticalScrollbar.onDidScroll(e)||this._shouldRender,this._options.useShadows&&(this._shouldRender=!0),this._revealOnScroll&&this._reveal(),this._options.lazyRender||this._render()}renderNow(){if(!this._options.lazyRender)throw new Error("Please use `lazyRender` together with `renderNow`!");this._render()}_render(){if(this._shouldRender&&(this._shouldRender=!1,this._horizontalScrollbar.render(),this._verticalScrollbar.render(),this._options.useShadows)){let e=this._scrollable.getCurrentScrollPosition(),t=e.scrollTop>0,i=e.scrollLeft>0,s=i?" left":"",r=t?" top":"",n=i||t?" top-left-corner":"";this._leftShadowDomNode.setClassName(`shadow${s}`),this._topShadowDomNode.setClassName(`shadow${r}`),this._topLeftShadowDomNode.setClassName(`shadow${n}${r}${s}`)}}_onDragStart(){this._isDragging=!0,this._reveal()}_onDragEnd(){this._isDragging=!1,this._hide()}_onMouseLeave(e){this._mouseIsOver=!1,this._hide()}_onMouseOver(e){this._mouseIsOver=!0,this._reveal()}_reveal(){this._verticalScrollbar.beginReveal(),this._horizontalScrollbar.beginReveal(),this._scheduleHide()}_hide(){!this._mouseIsOver&&!this._isDragging&&(this._verticalScrollbar.beginHide(),this._horizontalScrollbar.beginHide())}_scheduleHide(){!this._mouseIsOver&&!this._isDragging&&this._hideTimeout.cancelAndSet(()=>this._hide(),q_)}},j_=class extends J_{constructor(e,t,i){super(e,t,i)}setScrollPosition(e){e.reuseAnimation?this._scrollable.setScrollPositionSmooth(e,e.reuseAnimation):this._scrollable.setScrollPositionNow(e)}getScrollPosition(){return this._scrollable.getCurrentScrollPosition()}};function Y_(e){let t={lazyRender:typeof e.lazyRender<"u"?e.lazyRender:!1,className:typeof e.className<"u"?e.className:"",useShadows:typeof e.useShadows<"u"?e.useShadows:!0,handleMouseWheel:typeof e.handleMouseWheel<"u"?e.handleMouseWheel:!0,flipAxes:typeof e.flipAxes<"u"?e.flipAxes:!1,consumeMouseWheelIfScrollbarIsNeeded:typeof e.consumeMouseWheelIfScrollbarIsNeeded<"u"?e.consumeMouseWheelIfScrollbarIsNeeded:!1,alwaysConsumeMouseWheel:typeof e.alwaysConsumeMouseWheel<"u"?e.alwaysConsumeMouseWheel:!1,scrollYToX:typeof e.scrollYToX<"u"?e.scrollYToX:!1,mouseWheelScrollSensitivity:typeof e.mouseWheelScrollSensitivity<"u"?e.mouseWheelScrollSensitivity:1,fastScrollSensitivity:typeof e.fastScrollSensitivity<"u"?e.fastScrollSensitivity:5,scrollPredominantAxis:typeof e.scrollPredominantAxis<"u"?e.scrollPredominantAxis:!0,mouseWheelSmoothScroll:typeof e.mouseWheelSmoothScroll<"u"?e.mouseWheelSmoothScroll:!0,arrowSize:typeof e.arrowSize<"u"?e.arrowSize:11,listenOnDomNode:typeof e.listenOnDomNode<"u"?e.listenOnDomNode:null,horizontal:typeof e.horizontal<"u"?e.horizontal:1,horizontalScrollbarSize:typeof e.horizontalScrollbarSize<"u"?e.horizontalScrollbarSize:10,horizontalSliderSize:typeof e.horizontalSliderSize<"u"?e.horizontalSliderSize:0,horizontalHasArrows:typeof e.horizontalHasArrows<"u"?e.horizontalHasArrows:!1,vertical:typeof e.vertical<"u"?e.vertical:1,verticalScrollbarSize:typeof e.verticalScrollbarSize<"u"?e.verticalScrollbarSize:10,verticalHasArrows:typeof e.verticalHasArrows<"u"?e.verticalHasArrows:!1,verticalSliderSize:typeof e.verticalSliderSize<"u"?e.verticalSliderSize:0,scrollByPage:typeof e.scrollByPage<"u"?e.scrollByPage:!1};return t.horizontalSliderSize=typeof e.horizontalSliderSize<"u"?e.horizontalSliderSize:t.horizontalScrollbarSize,t.verticalSliderSize=typeof e.verticalSliderSize<"u"?e.verticalSliderSize:t.verticalScrollbarSize,mi&&(t.className+=" mac"),t}var Ao=class extends Ie{constructor(e,t,i,s,r,n,a,o){super(),this._bufferService=i,this._optionsService=a,this._renderService=o,this._onRequestScrollLines=this._register(new Y),this.onRequestScrollLines=this._onRequestScrollLines.event,this._isSyncing=!1,this._isHandlingScroll=!1,this._suppressOnScrollHandler=!1;let h=this._register(new O_({forceIntegerValues:!1,smoothScrollDuration:this._optionsService.rawOptions.smoothScrollDuration,scheduleAtNextAnimationFrame:l=>ra(s.window,l)}));this._register(this._optionsService.onSpecificOptionChange("smoothScrollDuration",()=>{h.setSmoothScrollDuration(this._optionsService.rawOptions.smoothScrollDuration)})),this._scrollableElement=this._register(new j_(t,{vertical:1,horizontal:2,useShadows:!1,mouseWheelSmoothScroll:!0,...this._getChangeOptions()},h)),this._register(this._optionsService.onMultipleOptionChange(["scrollSensitivity","fastScrollSensitivity","overviewRuler"],()=>this._scrollableElement.updateOptions(this._getChangeOptions()))),this._register(r.onProtocolChange(l=>{this._scrollableElement.updateOptions({handleMouseWheel:!(l&16)})})),this._scrollableElement.setScrollDimensions({height:0,scrollHeight:0}),this._register(ft.runAndSubscribe(n.onChangeColors,()=>{this._scrollableElement.getDomNode().style.backgroundColor=n.colors.background.css})),e.appendChild(this._scrollableElement.getDomNode()),this._register(ze(()=>this._scrollableElement.getDomNode().remove())),this._styleElement=s.mainDocument.createElement("style"),t.appendChild(this._styleElement),this._register(ze(()=>this._styleElement.remove())),this._register(ft.runAndSubscribe(n.onChangeColors,()=>{this._styleElement.textContent=[".xterm .xterm-scrollable-element > .scrollbar > .slider {",` background: ${n.colors.scrollbarSliderBackground.css};`,"}",".xterm .xterm-scrollable-element > .scrollbar > .slider:hover {",` background: ${n.colors.scrollbarSliderHoverBackground.css};`,"}",".xterm .xterm-scrollable-element > .scrollbar > .slider.active {",` background: ${n.colors.scrollbarSliderActiveBackground.css};`,"}"].join(` -`)})),this._register(this._bufferService.onResize(()=>this.queueSync())),this._register(this._bufferService.buffers.onBufferActivate(()=>{this._latestYDisp=void 0,this.queueSync()})),this._register(this._bufferService.onScroll(()=>this._sync())),this._register(this._scrollableElement.onScroll(l=>this._handleScroll(l)))}scrollLines(e){let t=this._scrollableElement.getScrollPosition();this._scrollableElement.setScrollPosition({reuseAnimation:!0,scrollTop:t.scrollTop+e*this._renderService.dimensions.css.cell.height})}scrollToLine(e,t){t&&(this._latestYDisp=e),this._scrollableElement.setScrollPosition({reuseAnimation:!t,scrollTop:e*this._renderService.dimensions.css.cell.height})}_getChangeOptions(){var e;return{mouseWheelScrollSensitivity:this._optionsService.rawOptions.scrollSensitivity,fastScrollSensitivity:this._optionsService.rawOptions.fastScrollSensitivity,verticalScrollbarSize:((e=this._optionsService.rawOptions.overviewRuler)==null?void 0:e.width)||14}}queueSync(e){e!==void 0&&(this._latestYDisp=e),this._queuedAnimationFrame===void 0&&(this._queuedAnimationFrame=this._renderService.addRefreshCallback(()=>{this._queuedAnimationFrame=void 0,this._sync(this._latestYDisp)}))}_sync(e=this._bufferService.buffer.ydisp){!this._renderService||this._isSyncing||(this._isSyncing=!0,this._suppressOnScrollHandler=!0,this._scrollableElement.setScrollDimensions({height:this._renderService.dimensions.css.canvas.height,scrollHeight:this._renderService.dimensions.css.cell.height*this._bufferService.buffer.lines.length}),this._suppressOnScrollHandler=!1,e!==this._latestYDisp&&this._scrollableElement.setScrollPosition({scrollTop:e*this._renderService.dimensions.css.cell.height}),this._isSyncing=!1)}_handleScroll(e){if(!this._renderService||this._isHandlingScroll||this._suppressOnScrollHandler)return;this._isHandlingScroll=!0;let t=Math.round(e.scrollTop/this._renderService.dimensions.css.cell.height),i=t-this._bufferService.buffer.ydisp;i!==0&&(this._latestYDisp=t,this._onRequestScrollLines.fire(i)),this._isHandlingScroll=!1}};Ao=Ke([te(2,Dt),te(3,Mi),te(4,bh),te(5,Ps),te(6,Mt),te(7,Li)],Ao);var wo=class extends Ie{constructor(e,t,i,s,r){super(),this._screenElement=e,this._bufferService=t,this._coreBrowserService=i,this._decorationService=s,this._renderService=r,this._decorationElements=new Map,this._altBufferIsActive=!1,this._dimensionsChanged=!1,this._container=document.createElement("div"),this._container.classList.add("xterm-decoration-container"),this._screenElement.appendChild(this._container),this._register(this._renderService.onRenderedViewportChange(()=>this._doRefreshDecorations())),this._register(this._renderService.onDimensionsChange(()=>{this._dimensionsChanged=!0,this._queueRefresh()})),this._register(this._coreBrowserService.onDprChange(()=>this._queueRefresh())),this._register(this._bufferService.buffers.onBufferActivate(()=>{this._altBufferIsActive=this._bufferService.buffer===this._bufferService.buffers.alt})),this._register(this._decorationService.onDecorationRegistered(()=>this._queueRefresh())),this._register(this._decorationService.onDecorationRemoved(n=>this._removeDecoration(n))),this._register(ze(()=>{this._container.remove(),this._decorationElements.clear()}))}_queueRefresh(){this._animationFrame===void 0&&(this._animationFrame=this._renderService.addRefreshCallback(()=>{this._doRefreshDecorations(),this._animationFrame=void 0}))}_doRefreshDecorations(){for(let e of this._decorationService.decorations)this._renderDecoration(e);this._dimensionsChanged=!1}_renderDecoration(e){this._refreshStyle(e),this._dimensionsChanged&&this._refreshXPosition(e)}_createElement(e){var s;let t=this._coreBrowserService.mainDocument.createElement("div");t.classList.add("xterm-decoration"),t.classList.toggle("xterm-decoration-top-layer",((s=e==null?void 0:e.options)==null?void 0:s.layer)==="top"),t.style.width=`${Math.round((e.options.width||1)*this._renderService.dimensions.css.cell.width)}px`,t.style.height=`${(e.options.height||1)*this._renderService.dimensions.css.cell.height}px`,t.style.top=`${(e.marker.line-this._bufferService.buffers.active.ydisp)*this._renderService.dimensions.css.cell.height}px`,t.style.lineHeight=`${this._renderService.dimensions.css.cell.height}px`;let i=e.options.x??0;return i&&i>this._bufferService.cols&&(t.style.display="none"),this._refreshXPosition(e,t),t}_refreshStyle(e){let t=e.marker.line-this._bufferService.buffers.active.ydisp;if(t<0||t>=this._bufferService.rows)e.element&&(e.element.style.display="none",e.onRenderEmitter.fire(e.element));else{let i=this._decorationElements.get(e);i||(i=this._createElement(e),e.element=i,this._decorationElements.set(e,i),this._container.appendChild(i),e.onDispose(()=>{this._decorationElements.delete(e),i.remove()})),i.style.display=this._altBufferIsActive?"none":"block",this._altBufferIsActive||(i.style.width=`${Math.round((e.options.width||1)*this._renderService.dimensions.css.cell.width)}px`,i.style.height=`${(e.options.height||1)*this._renderService.dimensions.css.cell.height}px`,i.style.top=`${t*this._renderService.dimensions.css.cell.height}px`,i.style.lineHeight=`${this._renderService.dimensions.css.cell.height}px`),e.onRenderEmitter.fire(i)}}_refreshXPosition(e,t=e.element){if(!t)return;let i=e.options.x??0;(e.options.anchor||"left")==="right"?t.style.right=i?`${i*this._renderService.dimensions.css.cell.width}px`:"":t.style.left=i?`${i*this._renderService.dimensions.css.cell.width}px`:""}_removeDecoration(e){var t;(t=this._decorationElements.get(e))==null||t.remove(),this._decorationElements.delete(e),e.dispose()}};wo=Ke([te(1,Dt),te(2,Mi),te(3,Sr),te(4,Li)],wo);var V_=class{constructor(){this._zones=[],this._zonePool=[],this._zonePoolIndex=0,this._linePadding={full:0,left:0,center:0,right:0}}get zones(){return this._zonePool.length=Math.min(this._zonePool.length,this._zones.length),this._zones}clear(){this._zones.length=0,this._zonePoolIndex=0}addDecoration(e){if(e.options.overviewRulerOptions){for(let t of this._zones)if(t.color===e.options.overviewRulerOptions.color&&t.position===e.options.overviewRulerOptions.position){if(this._lineIntersectsZone(t,e.marker.line))return;if(this._lineAdjacentToZone(t,e.marker.line,e.options.overviewRulerOptions.position)){this._addLineToZone(t,e.marker.line);return}}if(this._zonePoolIndex=e.startBufferLine&&t<=e.endBufferLine}_lineAdjacentToZone(e,t,i){return t>=e.startBufferLine-this._linePadding[i||"full"]&&t<=e.endBufferLine+this._linePadding[i||"full"]}_addLineToZone(e,t){e.startBufferLine=Math.min(e.startBufferLine,t),e.endBufferLine=Math.max(e.endBufferLine,t)}},hi={full:0,left:0,center:0,right:0},Pi={full:0,left:0,center:0,right:0},Ns={full:0,left:0,center:0,right:0},Yr=class extends Ie{constructor(e,t,i,s,r,n,a,o){var l;super(),this._viewportElement=e,this._screenElement=t,this._bufferService=i,this._decorationService=s,this._renderService=r,this._optionsService=n,this._themeService=a,this._coreBrowserService=o,this._colorZoneStore=new V_,this._shouldUpdateDimensions=!0,this._shouldUpdateAnchor=!0,this._lastKnownBufferLength=0,this._canvas=this._coreBrowserService.mainDocument.createElement("canvas"),this._canvas.classList.add("xterm-decoration-overview-ruler"),this._refreshCanvasDimensions(),(l=this._viewportElement.parentElement)==null||l.insertBefore(this._canvas,this._viewportElement),this._register(ze(()=>{var c;return(c=this._canvas)==null?void 0:c.remove()}));let h=this._canvas.getContext("2d");if(h)this._ctx=h;else throw new Error("Ctx cannot be null");this._register(this._decorationService.onDecorationRegistered(()=>this._queueRefresh(void 0,!0))),this._register(this._decorationService.onDecorationRemoved(()=>this._queueRefresh(void 0,!0))),this._register(this._renderService.onRenderedViewportChange(()=>this._queueRefresh())),this._register(this._bufferService.buffers.onBufferActivate(()=>{this._canvas.style.display=this._bufferService.buffer===this._bufferService.buffers.alt?"none":"block"})),this._register(this._bufferService.onScroll(()=>{this._lastKnownBufferLength!==this._bufferService.buffers.normal.lines.length&&(this._refreshDrawHeightConstants(),this._refreshColorZonePadding())})),this._register(this._renderService.onRender(()=>{(!this._containerHeight||this._containerHeight!==this._screenElement.clientHeight)&&(this._queueRefresh(!0),this._containerHeight=this._screenElement.clientHeight)})),this._register(this._coreBrowserService.onDprChange(()=>this._queueRefresh(!0))),this._register(this._optionsService.onSpecificOptionChange("overviewRuler",()=>this._queueRefresh(!0))),this._register(this._themeService.onChangeColors(()=>this._queueRefresh())),this._queueRefresh(!0)}get _width(){var e;return((e=this._optionsService.options.overviewRuler)==null?void 0:e.width)||0}_refreshDrawConstants(){let e=Math.floor((this._canvas.width-1)/3),t=Math.ceil((this._canvas.width-1)/3);Pi.full=this._canvas.width,Pi.left=e,Pi.center=t,Pi.right=e,this._refreshDrawHeightConstants(),Ns.full=1,Ns.left=1,Ns.center=1+Pi.left,Ns.right=1+Pi.left+Pi.center}_refreshDrawHeightConstants(){hi.full=Math.round(2*this._coreBrowserService.dpr);let e=this._canvas.height/this._bufferService.buffer.lines.length,t=Math.round(Math.max(Math.min(e,12),6)*this._coreBrowserService.dpr);hi.left=t,hi.center=t,hi.right=t}_refreshColorZonePadding(){this._colorZoneStore.setPadding({full:Math.floor(this._bufferService.buffers.active.lines.length/(this._canvas.height-1)*hi.full),left:Math.floor(this._bufferService.buffers.active.lines.length/(this._canvas.height-1)*hi.left),center:Math.floor(this._bufferService.buffers.active.lines.length/(this._canvas.height-1)*hi.center),right:Math.floor(this._bufferService.buffers.active.lines.length/(this._canvas.height-1)*hi.right)}),this._lastKnownBufferLength=this._bufferService.buffers.normal.lines.length}_refreshCanvasDimensions(){this._canvas.style.width=`${this._width}px`,this._canvas.width=Math.round(this._width*this._coreBrowserService.dpr),this._canvas.style.height=`${this._screenElement.clientHeight}px`,this._canvas.height=Math.round(this._screenElement.clientHeight*this._coreBrowserService.dpr),this._refreshDrawConstants(),this._refreshColorZonePadding()}_refreshDecorations(){this._shouldUpdateDimensions&&this._refreshCanvasDimensions(),this._ctx.clearRect(0,0,this._canvas.width,this._canvas.height),this._colorZoneStore.clear();for(let t of this._decorationService.decorations)this._colorZoneStore.addDecoration(t);this._ctx.lineWidth=1,this._renderRulerOutline();let e=this._colorZoneStore.zones;for(let t of e)t.position!=="full"&&this._renderColorZone(t);for(let t of e)t.position==="full"&&this._renderColorZone(t);this._shouldUpdateDimensions=!1,this._shouldUpdateAnchor=!1}_renderRulerOutline(){this._ctx.fillStyle=this._themeService.colors.overviewRulerBorder.css,this._ctx.fillRect(0,0,1,this._canvas.height),this._optionsService.rawOptions.overviewRuler.showTopBorder&&this._ctx.fillRect(1,0,this._canvas.width-1,1),this._optionsService.rawOptions.overviewRuler.showBottomBorder&&this._ctx.fillRect(1,this._canvas.height-1,this._canvas.width-1,this._canvas.height)}_renderColorZone(e){this._ctx.fillStyle=e.color,this._ctx.fillRect(Ns[e.position||"full"],Math.round((this._canvas.height-1)*(e.startBufferLine/this._bufferService.buffers.active.lines.length)-hi[e.position||"full"]/2),Pi[e.position||"full"],Math.round((this._canvas.height-1)*((e.endBufferLine-e.startBufferLine)/this._bufferService.buffers.active.lines.length)+hi[e.position||"full"]))}_queueRefresh(e,t){this._shouldUpdateDimensions=e||this._shouldUpdateDimensions,this._shouldUpdateAnchor=t||this._shouldUpdateAnchor,this._animationFrame===void 0&&(this._animationFrame=this._coreBrowserService.window.requestAnimationFrame(()=>{this._refreshDecorations(),this._animationFrame=void 0}))}};Yr=Ke([te(2,Dt),te(3,Sr),te(4,Li),te(5,Mt),te(6,Ps),te(7,Mi)],Yr);var q;(e=>(e.NUL="\0",e.SOH="",e.STX="",e.ETX="",e.EOT="",e.ENQ="",e.ACK="",e.BEL="\x07",e.BS="\b",e.HT=" ",e.LF=` -`,e.VT="\v",e.FF="\f",e.CR="\r",e.SO="",e.SI="",e.DLE="",e.DC1="",e.DC2="",e.DC3="",e.DC4="",e.NAK="",e.SYN="",e.ETB="",e.CAN="",e.EM="",e.SUB="",e.ESC="\x1B",e.FS="",e.GS="",e.RS="",e.US="",e.SP=" ",e.DEL=""))(q||(q={}));var zr;(e=>(e.PAD="€",e.HOP="",e.BPH="‚",e.NBH="ƒ",e.IND="„",e.NEL="…",e.SSA="†",e.ESA="‡",e.HTS="ˆ",e.HTJ="‰",e.VTS="Š",e.PLD="‹",e.PLU="Œ",e.RI="",e.SS2="Ž",e.SS3="",e.DCS="",e.PU1="‘",e.PU2="’",e.STS="“",e.CCH="”",e.MW="•",e.SPA="–",e.EPA="—",e.SOS="˜",e.SGCI="™",e.SCI="š",e.CSI="›",e.ST="œ",e.OSC="",e.PM="ž",e.APC="Ÿ"))(zr||(zr={}));var $h;(e=>e.ST=`${q.ESC}\\`)($h||($h={}));var Co=class{constructor(e,t,i,s,r,n){this._textarea=e,this._compositionView=t,this._bufferService=i,this._optionsService=s,this._coreService=r,this._renderService=n,this._isComposing=!1,this._isSendingComposition=!1,this._compositionPosition={start:0,end:0},this._dataAlreadySent=""}get isComposing(){return this._isComposing}compositionstart(){this._isComposing=!0,this._compositionPosition.start=this._textarea.value.length,this._compositionView.textContent="",this._dataAlreadySent="",this._compositionView.classList.add("active")}compositionupdate(e){this._compositionView.textContent=e.data,this.updateCompositionElements(),setTimeout(()=>{this._compositionPosition.end=this._textarea.value.length},0)}compositionend(){this._finalizeComposition(!0)}keydown(e){if(this._isComposing||this._isSendingComposition){if(e.keyCode===20||e.keyCode===229||e.keyCode===16||e.keyCode===17||e.keyCode===18)return!1;this._finalizeComposition(!1)}return e.keyCode===229?(this._handleAnyTextareaChanges(),!1):!0}_finalizeComposition(e){if(this._compositionView.classList.remove("active"),this._isComposing=!1,e){let t={start:this._compositionPosition.start,end:this._compositionPosition.end};this._isSendingComposition=!0,setTimeout(()=>{if(this._isSendingComposition){this._isSendingComposition=!1;let i;t.start+=this._dataAlreadySent.length,this._isComposing?i=this._textarea.value.substring(t.start,this._compositionPosition.start):i=this._textarea.value.substring(t.start),i.length>0&&this._coreService.triggerDataEvent(i,!0)}},0)}else{this._isSendingComposition=!1;let t=this._textarea.value.substring(this._compositionPosition.start,this._compositionPosition.end);this._coreService.triggerDataEvent(t,!0)}}_handleAnyTextareaChanges(){let e=this._textarea.value;setTimeout(()=>{if(!this._isComposing){let t=this._textarea.value,i=t.replace(e,"");this._dataAlreadySent=i,t.length>e.length?this._coreService.triggerDataEvent(i,!0):t.lengththis.updateCompositionElements(!0),0)}}};Co=Ke([te(2,Dt),te(3,Mt),te(4,gs),te(5,Li)],Co);var at=0,lt=0,ht=0,Ge=0,qa={css:"#00000000",rgba:0},et;(e=>{function t(r,n,a,o){return o!==void 0?`#${Ji(r)}${Ji(n)}${Ji(a)}${Ji(o)}`:`#${Ji(r)}${Ji(n)}${Ji(a)}`}e.toCss=t;function i(r,n,a,o=255){return(r<<24|n<<16|a<<8|o)>>>0}e.toRgba=i;function s(r,n,a,o){return{css:e.toCss(r,n,a,o),rgba:e.toRgba(r,n,a,o)}}e.toColor=s})(et||(et={}));var We;(e=>{function t(h,l){if(Ge=(l.rgba&255)/255,Ge===1)return{css:l.css,rgba:l.rgba};let c=l.rgba>>24&255,d=l.rgba>>16&255,g=l.rgba>>8&255,_=h.rgba>>24&255,v=h.rgba>>16&255,u=h.rgba>>8&255;at=_+Math.round((c-_)*Ge),lt=v+Math.round((d-v)*Ge),ht=u+Math.round((g-u)*Ge);let f=et.toCss(at,lt,ht),A=et.toRgba(at,lt,ht);return{css:f,rgba:A}}e.blend=t;function i(h){return(h.rgba&255)===255}e.isOpaque=i;function s(h,l,c){let d=Ur.ensureContrastRatio(h.rgba,l.rgba,c);if(d)return et.toColor(d>>24&255,d>>16&255,d>>8&255)}e.ensureContrastRatio=s;function r(h){let l=(h.rgba|255)>>>0;return[at,lt,ht]=Ur.toChannels(l),{css:et.toCss(at,lt,ht),rgba:l}}e.opaque=r;function n(h,l){return Ge=Math.round(l*255),[at,lt,ht]=Ur.toChannels(h.rgba),{css:et.toCss(at,lt,ht,Ge),rgba:et.toRgba(at,lt,ht,Ge)}}e.opacity=n;function a(h,l){return Ge=h.rgba&255,n(h,Ge*l/255)}e.multiplyOpacity=a;function o(h){return[h.rgba>>24&255,h.rgba>>16&255,h.rgba>>8&255]}e.toColorRGB=o})(We||(We={}));var $e;(e=>{let t,i;try{let r=document.createElement("canvas");r.width=1,r.height=1;let n=r.getContext("2d",{willReadFrequently:!0});n&&(t=n,t.globalCompositeOperation="copy",i=t.createLinearGradient(0,0,1,1))}catch{}function s(r){if(r.match(/#[\da-f]{3,8}/i))switch(r.length){case 4:return at=parseInt(r.slice(1,2).repeat(2),16),lt=parseInt(r.slice(2,3).repeat(2),16),ht=parseInt(r.slice(3,4).repeat(2),16),et.toColor(at,lt,ht);case 5:return at=parseInt(r.slice(1,2).repeat(2),16),lt=parseInt(r.slice(2,3).repeat(2),16),ht=parseInt(r.slice(3,4).repeat(2),16),Ge=parseInt(r.slice(4,5).repeat(2),16),et.toColor(at,lt,ht,Ge);case 7:return{css:r,rgba:(parseInt(r.slice(1),16)<<8|255)>>>0};case 9:return{css:r,rgba:parseInt(r.slice(1),16)>>>0}}let n=r.match(/rgba?\(\s*(\d{1,3})\s*,\s*(\d{1,3})\s*,\s*(\d{1,3})\s*(,\s*(0|1|\d?\.(\d+))\s*)?\)/);if(n)return at=parseInt(n[1]),lt=parseInt(n[2]),ht=parseInt(n[3]),Ge=Math.round((n[5]===void 0?1:parseFloat(n[5]))*255),et.toColor(at,lt,ht,Ge);if(!t||!i)throw new Error("css.toColor: Unsupported css format");if(t.fillStyle=i,t.fillStyle=r,typeof t.fillStyle!="string")throw new Error("css.toColor: Unsupported css format");if(t.fillRect(0,0,1,1),[at,lt,ht,Ge]=t.getImageData(0,0,1,1).data,Ge!==255)throw new Error("css.toColor: Unsupported css format");return{rgba:et.toRgba(at,lt,ht,Ge),css:r}}e.toColor=s})($e||($e={}));var kt;(e=>{function t(s){return i(s>>16&255,s>>8&255,s&255)}e.relativeLuminance=t;function i(s,r,n){let a=s/255,o=r/255,h=n/255,l=a<=.03928?a/12.92:Math.pow((a+.055)/1.055,2.4),c=o<=.03928?o/12.92:Math.pow((o+.055)/1.055,2.4),d=h<=.03928?h/12.92:Math.pow((h+.055)/1.055,2.4);return l*.2126+c*.7152+d*.0722}e.relativeLuminance2=i})(kt||(kt={}));var Ur;(e=>{function t(a,o){if(Ge=(o&255)/255,Ge===1)return o;let h=o>>24&255,l=o>>16&255,c=o>>8&255,d=a>>24&255,g=a>>16&255,_=a>>8&255;return at=d+Math.round((h-d)*Ge),lt=g+Math.round((l-g)*Ge),ht=_+Math.round((c-_)*Ge),et.toRgba(at,lt,ht)}e.blend=t;function i(a,o,h){let l=kt.relativeLuminance(a>>8),c=kt.relativeLuminance(o>>8);if(Si(l,c)>8));if(v>8));return v>f?_:u}return _}let d=r(a,o,h),g=Si(l,kt.relativeLuminance(d>>8));if(g>8));return g>v?d:_}return d}}e.ensureContrastRatio=i;function s(a,o,h){let l=a>>24&255,c=a>>16&255,d=a>>8&255,g=o>>24&255,_=o>>16&255,v=o>>8&255,u=Si(kt.relativeLuminance2(g,_,v),kt.relativeLuminance2(l,c,d));for(;u0||_>0||v>0);)g-=Math.max(0,Math.ceil(g*.1)),_-=Math.max(0,Math.ceil(_*.1)),v-=Math.max(0,Math.ceil(v*.1)),u=Si(kt.relativeLuminance2(g,_,v),kt.relativeLuminance2(l,c,d));return(g<<24|_<<16|v<<8|255)>>>0}e.reduceLuminance=s;function r(a,o,h){let l=a>>24&255,c=a>>16&255,d=a>>8&255,g=o>>24&255,_=o>>16&255,v=o>>8&255,u=Si(kt.relativeLuminance2(g,_,v),kt.relativeLuminance2(l,c,d));for(;u>>0}e.increaseLuminance=r;function n(a){return[a>>24&255,a>>16&255,a>>8&255,a&255]}e.toChannels=n})(Ur||(Ur={}));function Ji(e){let t=e.toString(16);return t.length<2?"0"+t:t}function Si(e,t){return e1){let c=this._getJoinedRanges(s,a,n,t,r);for(let d=0;d1){let l=this._getJoinedRanges(s,a,n,t,r);for(let c=0;c=D,L=B,I=this._workCell;if(g.length>0&&B===g[0][0]&&O){let N=g.shift(),K=this._isCellInSelection(N[0],t);for(k=N[0]+1;k=N[1]),O?(Q=!0,I=new X_(this._workCell,e.translateToString(!0,N[0],N[1]),N[1]-N[0]),L=N[1]-1,T=I.getWidth()):D=N[1]}let H=this._isCellInSelection(B,t),U=i&&B===n,re=x&&B>=l&&B<=c,ve=!1;this._decorationService.forEachDecorationAtCell(B,t,void 0,N=>{ve=!0});let he=I.getChars()||zi;if(he===" "&&(I.isUnderline()||I.isOverline())&&(he=" "),S=T*o-h.get(he,I.isBold(),I.isItalic()),!u)u=this._document.createElement("span");else if(f&&(H&&E||!H&&!E&&I.bg===b)&&(H&&E&&_.selectionForeground||I.fg===w)&&I.extended.ext===y&&re===m&&S===C&&!U&&!Q&&!ve&&O){I.isInvisible()?A+=zi:A+=he,f++;continue}else f&&(u.textContent=A),u=this._document.createElement("span"),f=0,A="";if(b=I.bg,w=I.fg,y=I.extended.ext,m=re,C=S,E=H,Q&&n>=B&&n<=L&&(n=B),!this._coreService.isCursorHidden&&U&&this._coreService.isCursorInitialized){if(M.push("xterm-cursor"),this._coreBrowserService.isFocused)a&&M.push("xterm-cursor-blink"),M.push(s==="bar"?"xterm-cursor-bar":s==="underline"?"xterm-cursor-underline":"xterm-cursor-block");else if(r)switch(r){case"outline":M.push("xterm-cursor-outline");break;case"block":M.push("xterm-cursor-block");break;case"bar":M.push("xterm-cursor-bar");break;case"underline":M.push("xterm-cursor-underline");break}}if(I.isBold()&&M.push("xterm-bold"),I.isItalic()&&M.push("xterm-italic"),I.isDim()&&M.push("xterm-dim"),I.isInvisible()?A=zi:A=I.getChars()||zi,I.isUnderline()&&(M.push(`xterm-underline-${I.extended.underlineStyle}`),A===" "&&(A=" "),!I.isUnderlineColorDefault()))if(I.isUnderlineColorRGB())u.style.textDecorationColor=`rgb(${Cr.toColorRGB(I.getUnderlineColor()).join(",")})`;else{let N=I.getUnderlineColor();this._optionsService.rawOptions.drawBoldTextInBrightColors&&I.isBold()&&N<8&&(N+=8),u.style.textDecorationColor=_.ansi[N].css}I.isOverline()&&(M.push("xterm-overline"),A===" "&&(A=" ")),I.isStrikethrough()&&M.push("xterm-strikethrough"),re&&(u.style.textDecoration="underline");let ne=I.getFgColor(),pe=I.getFgColorMode(),_e=I.getBgColor(),V=I.getBgColorMode(),ie=!!I.isInverse();if(ie){let N=ne;ne=_e,_e=N;let K=pe;pe=V,V=K}let oe,X,j=!1;this._decorationService.forEachDecorationAtCell(B,t,void 0,N=>{N.options.layer!=="top"&&j||(N.backgroundColorRGB&&(V=50331648,_e=N.backgroundColorRGB.rgba>>8&16777215,oe=N.backgroundColorRGB),N.foregroundColorRGB&&(pe=50331648,ne=N.foregroundColorRGB.rgba>>8&16777215,X=N.foregroundColorRGB),j=N.options.layer==="top")}),!j&&H&&(oe=this._coreBrowserService.isFocused?_.selectionBackgroundOpaque:_.selectionInactiveBackgroundOpaque,_e=oe.rgba>>8&16777215,V=50331648,j=!0,_.selectionForeground&&(pe=50331648,ne=_.selectionForeground.rgba>>8&16777215,X=_.selectionForeground)),j&&M.push("xterm-decoration-top");let F;switch(V){case 16777216:case 33554432:F=_.ansi[_e],M.push(`xterm-bg-${_e}`);break;case 50331648:F=et.toColor(_e>>16,_e>>8&255,_e&255),this._addStyle(u,`background-color:#${Ga((_e>>>0).toString(16),"0",6)}`);break;case 0:default:ie?(F=_.foreground,M.push("xterm-bg-257")):F=_.background}switch(oe||I.isDim()&&(oe=We.multiplyOpacity(F,.5)),pe){case 16777216:case 33554432:I.isBold()&&ne<8&&this._optionsService.rawOptions.drawBoldTextInBrightColors&&(ne+=8),this._applyMinimumContrast(u,F,_.ansi[ne],I,oe,void 0)||M.push(`xterm-fg-${ne}`);break;case 50331648:let N=et.toColor(ne>>16&255,ne>>8&255,ne&255);this._applyMinimumContrast(u,F,N,I,oe,X)||this._addStyle(u,`color:#${Ga(ne.toString(16),"0",6)}`);break;case 0:default:this._applyMinimumContrast(u,F,_.foreground,I,oe,X)||ie&&M.push("xterm-fg-257")}M.length&&(u.className=M.join(" "),M.length=0),!U&&!Q&&!ve&&O?f++:u.textContent=A,S!==this.defaultSpacing&&(u.style.letterSpacing=`${S}px`),d.push(u),B=L}return u&&f&&(u.textContent=A),d}_applyMinimumContrast(e,t,i,s,r,n){if(this._optionsService.rawOptions.minimumContrastRatio===1||tf(s.getCode()))return!1;let a=this._getContrastCache(s),o;if(!r&&!n&&(o=a.getColor(t.rgba,i.rgba)),o===void 0){let h=this._optionsService.rawOptions.minimumContrastRatio/(s.isDim()?2:1);o=We.ensureContrastRatio(r||t,n||i,h),a.setColor((r||t).rgba,(n||i).rgba,o??null)}return o?(this._addStyle(e,`color:${o.css}`),!0):!1}_getContrastCache(e){return e.isDim()?this._themeService.colors.halfContrastCache:this._themeService.colors.contrastCache}_addStyle(e,t){e.setAttribute("style",`${e.getAttribute("style")||""}${t};`)}_isCellInSelection(e,t){let i=this._selectionStart,s=this._selectionEnd;return!i||!s?!1:this._columnSelectMode?i[0]<=s[0]?e>=i[0]&&t>=i[1]&&e=i[1]&&e>=s[0]&&t<=s[1]:t>i[1]&&t=i[0]&&e=i[0]}};So=Ke([te(1,kh),te(2,Mt),te(3,Mi),te(4,gs),te(5,Sr),te(6,Ps)],So);function Ga(e,t,i){for(;e.length0&&(this._flat[s]=a),a}let r=e;t&&(r+="B"),i&&(r+="I");let n=this._holey.get(r);if(n===void 0){let a=0;t&&(a|=1),i&&(a|=2),n=this._measure(e,a),n>0&&this._holey.set(r,n)}return n}_measure(e,t){let i=this._measureElements[t];return i.textContent=e.repeat(32),i.offsetWidth/32}},nf=class{constructor(){this.clear()}clear(){this.hasSelection=!1,this.columnSelectMode=!1,this.viewportStartRow=0,this.viewportEndRow=0,this.viewportCappedStartRow=0,this.viewportCappedEndRow=0,this.startCol=0,this.endCol=0,this.selectionStart=void 0,this.selectionEnd=void 0}update(e,t,i,s=!1){if(this.selectionStart=t,this.selectionEnd=i,!t||!i||t[0]===i[0]&&t[1]===i[1]){this.clear();return}let r=e.buffers.active.ydisp,n=t[1]-r,a=i[1]-r,o=Math.max(n,0),h=Math.min(a,e.rows-1);if(o>=e.rows||h<0){this.clear();return}this.hasSelection=!0,this.columnSelectMode=s,this.viewportStartRow=n,this.viewportEndRow=a,this.viewportCappedStartRow=o,this.viewportCappedEndRow=h,this.startCol=t[0],this.endCol=i[0]}isCellSelected(e,t,i){return this.hasSelection?(i-=e.buffer.active.viewportY,this.columnSelectMode?this.startCol<=this.endCol?t>=this.startCol&&i>=this.viewportCappedStartRow&&t=this.viewportCappedStartRow&&t>=this.endCol&&i<=this.viewportCappedEndRow:i>this.viewportStartRow&&i=this.startCol&&t=this.startCol):!1}};function of(){return new nf}var In="xterm-dom-renderer-owner-",Kt="xterm-rows",Dr="xterm-fg-",Ka="xterm-bg-",Hs="xterm-focus",Mr="xterm-selection",af=1,bo=class extends Ie{constructor(e,t,i,s,r,n,a,o,h,l,c,d,g,_){super(),this._terminal=e,this._document=t,this._element=i,this._screenElement=s,this._viewportElement=r,this._helperContainer=n,this._linkifier2=a,this._charSizeService=h,this._optionsService=l,this._bufferService=c,this._coreService=d,this._coreBrowserService=g,this._themeService=_,this._terminalClass=af++,this._rowElements=[],this._selectionRenderModel=of(),this.onRequestRedraw=this._register(new Y).event,this._rowContainer=this._document.createElement("div"),this._rowContainer.classList.add(Kt),this._rowContainer.style.lineHeight="normal",this._rowContainer.setAttribute("aria-hidden","true"),this._refreshRowElements(this._bufferService.cols,this._bufferService.rows),this._selectionContainer=this._document.createElement("div"),this._selectionContainer.classList.add(Mr),this._selectionContainer.setAttribute("aria-hidden","true"),this.dimensions=sf(),this._updateDimensions(),this._register(this._optionsService.onOptionChange(()=>this._handleOptionsChanged())),this._register(this._themeService.onChangeColors(v=>this._injectCss(v))),this._injectCss(this._themeService.colors),this._rowFactory=o.createInstance(So,document),this._element.classList.add(In+this._terminalClass),this._screenElement.appendChild(this._rowContainer),this._screenElement.appendChild(this._selectionContainer),this._register(this._linkifier2.onShowLinkUnderline(v=>this._handleLinkHover(v))),this._register(this._linkifier2.onHideLinkUnderline(v=>this._handleLinkLeave(v))),this._register(ze(()=>{this._element.classList.remove(In+this._terminalClass),this._rowContainer.remove(),this._selectionContainer.remove(),this._widthCache.dispose(),this._themeStyleElement.remove(),this._dimensionsStyleElement.remove()})),this._widthCache=new rf(this._document,this._helperContainer),this._widthCache.setFont(this._optionsService.rawOptions.fontFamily,this._optionsService.rawOptions.fontSize,this._optionsService.rawOptions.fontWeight,this._optionsService.rawOptions.fontWeightBold),this._setDefaultSpacing()}_updateDimensions(){let e=this._coreBrowserService.dpr;this.dimensions.device.char.width=this._charSizeService.width*e,this.dimensions.device.char.height=Math.ceil(this._charSizeService.height*e),this.dimensions.device.cell.width=this.dimensions.device.char.width+Math.round(this._optionsService.rawOptions.letterSpacing),this.dimensions.device.cell.height=Math.floor(this.dimensions.device.char.height*this._optionsService.rawOptions.lineHeight),this.dimensions.device.char.left=0,this.dimensions.device.char.top=0,this.dimensions.device.canvas.width=this.dimensions.device.cell.width*this._bufferService.cols,this.dimensions.device.canvas.height=this.dimensions.device.cell.height*this._bufferService.rows,this.dimensions.css.canvas.width=Math.round(this.dimensions.device.canvas.width/e),this.dimensions.css.canvas.height=Math.round(this.dimensions.device.canvas.height/e),this.dimensions.css.cell.width=this.dimensions.css.canvas.width/this._bufferService.cols,this.dimensions.css.cell.height=this.dimensions.css.canvas.height/this._bufferService.rows;for(let i of this._rowElements)i.style.width=`${this.dimensions.css.canvas.width}px`,i.style.height=`${this.dimensions.css.cell.height}px`,i.style.lineHeight=`${this.dimensions.css.cell.height}px`,i.style.overflow="hidden";this._dimensionsStyleElement||(this._dimensionsStyleElement=this._document.createElement("style"),this._screenElement.appendChild(this._dimensionsStyleElement));let t=`${this._terminalSelector} .${Kt} span { display: inline-block; height: 100%; vertical-align: top;}`;this._dimensionsStyleElement.textContent=t,this._selectionContainer.style.height=this._viewportElement.style.height,this._screenElement.style.width=`${this.dimensions.css.canvas.width}px`,this._screenElement.style.height=`${this.dimensions.css.canvas.height}px`}_injectCss(e){this._themeStyleElement||(this._themeStyleElement=this._document.createElement("style"),this._screenElement.appendChild(this._themeStyleElement));let t=`${this._terminalSelector} .${Kt} { pointer-events: none; color: ${e.foreground.css}; font-family: ${this._optionsService.rawOptions.fontFamily}; font-size: ${this._optionsService.rawOptions.fontSize}px; font-kerning: none; white-space: pre}`;t+=`${this._terminalSelector} .${Kt} .xterm-dim { color: ${We.multiplyOpacity(e.foreground,.5).css};}`,t+=`${this._terminalSelector} span:not(.xterm-bold) { font-weight: ${this._optionsService.rawOptions.fontWeight};}${this._terminalSelector} span.xterm-bold { font-weight: ${this._optionsService.rawOptions.fontWeightBold};}${this._terminalSelector} span.xterm-italic { font-style: italic;}`;let i=`blink_underline_${this._terminalClass}`,s=`blink_bar_${this._terminalClass}`,r=`blink_block_${this._terminalClass}`;t+=`@keyframes ${i} { 50% { border-bottom-style: hidden; }}`,t+=`@keyframes ${s} { 50% { box-shadow: none; }}`,t+=`@keyframes ${r} { 0% { background-color: ${e.cursor.css}; color: ${e.cursorAccent.css}; } 50% { background-color: inherit; color: ${e.cursor.css}; }}`,t+=`${this._terminalSelector} .${Kt}.${Hs} .xterm-cursor.xterm-cursor-blink.xterm-cursor-underline { animation: ${i} 1s step-end infinite;}${this._terminalSelector} .${Kt}.${Hs} .xterm-cursor.xterm-cursor-blink.xterm-cursor-bar { animation: ${s} 1s step-end infinite;}${this._terminalSelector} .${Kt}.${Hs} .xterm-cursor.xterm-cursor-blink.xterm-cursor-block { animation: ${r} 1s step-end infinite;}${this._terminalSelector} .${Kt} .xterm-cursor.xterm-cursor-block { background-color: ${e.cursor.css}; color: ${e.cursorAccent.css};}${this._terminalSelector} .${Kt} .xterm-cursor.xterm-cursor-block:not(.xterm-cursor-blink) { background-color: ${e.cursor.css} !important; color: ${e.cursorAccent.css} !important;}${this._terminalSelector} .${Kt} .xterm-cursor.xterm-cursor-outline { outline: 1px solid ${e.cursor.css}; outline-offset: -1px;}${this._terminalSelector} .${Kt} .xterm-cursor.xterm-cursor-bar { box-shadow: ${this._optionsService.rawOptions.cursorWidth}px 0 0 ${e.cursor.css} inset;}${this._terminalSelector} .${Kt} .xterm-cursor.xterm-cursor-underline { border-bottom: 1px ${e.cursor.css}; border-bottom-style: solid; height: calc(100% - 1px);}`,t+=`${this._terminalSelector} .${Mr} { position: absolute; top: 0; left: 0; z-index: 1; pointer-events: none;}${this._terminalSelector}.focus .${Mr} div { position: absolute; background-color: ${e.selectionBackgroundOpaque.css};}${this._terminalSelector} .${Mr} div { position: absolute; background-color: ${e.selectionInactiveBackgroundOpaque.css};}`;for(let[n,a]of e.ansi.entries())t+=`${this._terminalSelector} .${Dr}${n} { color: ${a.css}; }${this._terminalSelector} .${Dr}${n}.xterm-dim { color: ${We.multiplyOpacity(a,.5).css}; }${this._terminalSelector} .${Ka}${n} { background-color: ${a.css}; }`;t+=`${this._terminalSelector} .${Dr}257 { color: ${We.opaque(e.background).css}; }${this._terminalSelector} .${Dr}257.xterm-dim { color: ${We.multiplyOpacity(We.opaque(e.background),.5).css}; }${this._terminalSelector} .${Ka}257 { background-color: ${e.foreground.css}; }`,this._themeStyleElement.textContent=t}_setDefaultSpacing(){let e=this.dimensions.css.cell.width-this._widthCache.get("W",!1,!1);this._rowContainer.style.letterSpacing=`${e}px`,this._rowFactory.defaultSpacing=e}handleDevicePixelRatioChange(){this._updateDimensions(),this._widthCache.clear(),this._setDefaultSpacing()}_refreshRowElements(e,t){for(let i=this._rowElements.length;i<=t;i++){let s=this._document.createElement("div");this._rowContainer.appendChild(s),this._rowElements.push(s)}for(;this._rowElements.length>t;)this._rowContainer.removeChild(this._rowElements.pop())}handleResize(e,t){this._refreshRowElements(e,t),this._updateDimensions(),this.handleSelectionChanged(this._selectionRenderModel.selectionStart,this._selectionRenderModel.selectionEnd,this._selectionRenderModel.columnSelectMode)}handleCharSizeChanged(){this._updateDimensions(),this._widthCache.clear(),this._setDefaultSpacing()}handleBlur(){this._rowContainer.classList.remove(Hs),this.renderRows(0,this._bufferService.rows-1)}handleFocus(){this._rowContainer.classList.add(Hs),this.renderRows(this._bufferService.buffer.y,this._bufferService.buffer.y)}handleSelectionChanged(e,t,i){if(this._selectionContainer.replaceChildren(),this._rowFactory.handleSelectionChanged(e,t,i),this.renderRows(0,this._bufferService.rows-1),!e||!t||(this._selectionRenderModel.update(this._terminal,e,t,i),!this._selectionRenderModel.hasSelection))return;let s=this._selectionRenderModel.viewportStartRow,r=this._selectionRenderModel.viewportEndRow,n=this._selectionRenderModel.viewportCappedStartRow,a=this._selectionRenderModel.viewportCappedEndRow,o=this._document.createDocumentFragment();if(i){let h=e[0]>t[0];o.appendChild(this._createSelectionElement(n,h?t[0]:e[0],h?e[0]:t[0],a-n+1))}else{let h=s===n?e[0]:0,l=n===r?t[0]:this._bufferService.cols;o.appendChild(this._createSelectionElement(n,h,l));let c=a-n-1;if(o.appendChild(this._createSelectionElement(n+1,0,this._bufferService.cols,c)),n!==a){let d=r===a?t[0]:this._bufferService.cols;o.appendChild(this._createSelectionElement(a,0,d))}}this._selectionContainer.appendChild(o)}_createSelectionElement(e,t,i,s=1){let r=this._document.createElement("div"),n=t*this.dimensions.css.cell.width,a=this.dimensions.css.cell.width*(i-t);return n+a>this.dimensions.css.canvas.width&&(a=this.dimensions.css.canvas.width-n),r.style.height=`${s*this.dimensions.css.cell.height}px`,r.style.top=`${e*this.dimensions.css.cell.height}px`,r.style.left=`${n}px`,r.style.width=`${a}px`,r}handleCursorMove(){}_handleOptionsChanged(){this._updateDimensions(),this._injectCss(this._themeService.colors),this._widthCache.setFont(this._optionsService.rawOptions.fontFamily,this._optionsService.rawOptions.fontSize,this._optionsService.rawOptions.fontWeight,this._optionsService.rawOptions.fontWeightBold),this._setDefaultSpacing()}clear(){for(let e of this._rowElements)e.replaceChildren()}renderRows(e,t){let i=this._bufferService.buffer,s=i.ybase+i.y,r=Math.min(i.x,this._bufferService.cols-1),n=this._coreService.decPrivateModes.cursorBlink??this._optionsService.rawOptions.cursorBlink,a=this._coreService.decPrivateModes.cursorStyle??this._optionsService.rawOptions.cursorStyle,o=this._optionsService.rawOptions.cursorInactiveStyle;for(let h=e;h<=t;h++){let l=h+i.ydisp,c=this._rowElements[h],d=i.lines.get(l);if(!c||!d)break;c.replaceChildren(...this._rowFactory.createRow(d,l,l===s,a,o,r,n,this.dimensions.css.cell.width,this._widthCache,-1,-1))}}get _terminalSelector(){return`.${In}${this._terminalClass}`}_handleLinkHover(e){this._setCellUnderline(e.x1,e.x2,e.y1,e.y2,e.cols,!0)}_handleLinkLeave(e){this._setCellUnderline(e.x1,e.x2,e.y1,e.y2,e.cols,!1)}_setCellUnderline(e,t,i,s,r,n){i<0&&(e=0),s<0&&(t=0);let a=this._bufferService.rows-1;i=Math.max(Math.min(i,a),0),s=Math.max(Math.min(s,a),0),r=Math.min(r,this._bufferService.cols);let o=this._bufferService.buffer,h=o.ybase+o.y,l=Math.min(o.x,r-1),c=this._optionsService.rawOptions.cursorBlink,d=this._optionsService.rawOptions.cursorStyle,g=this._optionsService.rawOptions.cursorInactiveStyle;for(let _=i;_<=s;++_){let v=_+o.ydisp,u=this._rowElements[_],f=o.lines.get(v);if(!u||!f)break;u.replaceChildren(...this._rowFactory.createRow(f,v,v===h,d,g,l,c,this.dimensions.css.cell.width,this._widthCache,n?_===i?e:0:-1,n?(_===s?t:r)-1:-1))}}};bo=Ke([te(7,Xo),te(8,un),te(9,Mt),te(10,Dt),te(11,gs),te(12,Mi),te(13,Ps)],bo);var yo=class extends Ie{constructor(e,t,i){super(),this._optionsService=i,this.width=0,this.height=0,this._onCharSizeChange=this._register(new Y),this.onCharSizeChange=this._onCharSizeChange.event;try{this._measureStrategy=this._register(new hf(this._optionsService))}catch{this._measureStrategy=this._register(new lf(e,t,this._optionsService))}this._register(this._optionsService.onMultipleOptionChange(["fontFamily","fontSize"],()=>this.measure()))}get hasValidSize(){return this.width>0&&this.height>0}measure(){let e=this._measureStrategy.measure();(e.width!==this.width||e.height!==this.height)&&(this.width=e.width,this.height=e.height,this._onCharSizeChange.fire())}};yo=Ke([te(2,Mt)],yo);var qh=class extends Ie{constructor(){super(...arguments),this._result={width:0,height:0}}_validateAndSet(e,t){e!==void 0&&e>0&&t!==void 0&&t>0&&(this._result.width=e,this._result.height=t)}},lf=class extends qh{constructor(e,t,i){super(),this._document=e,this._parentElement=t,this._optionsService=i,this._measureElement=this._document.createElement("span"),this._measureElement.classList.add("xterm-char-measure-element"),this._measureElement.textContent="W".repeat(32),this._measureElement.setAttribute("aria-hidden","true"),this._measureElement.style.whiteSpace="pre",this._measureElement.style.fontKerning="none",this._parentElement.appendChild(this._measureElement)}measure(){return this._measureElement.style.fontFamily=this._optionsService.rawOptions.fontFamily,this._measureElement.style.fontSize=`${this._optionsService.rawOptions.fontSize}px`,this._validateAndSet(Number(this._measureElement.offsetWidth)/32,Number(this._measureElement.offsetHeight)),this._result}},hf=class extends qh{constructor(e){super(),this._optionsService=e,this._canvas=new OffscreenCanvas(100,100),this._ctx=this._canvas.getContext("2d");let t=this._ctx.measureText("W");if(!("width"in t&&"fontBoundingBoxAscent"in t&&"fontBoundingBoxDescent"in t))throw new Error("Required font metrics not supported")}measure(){this._ctx.font=`${this._optionsService.rawOptions.fontSize}px ${this._optionsService.rawOptions.fontFamily}`;let e=this._ctx.measureText("W");return this._validateAndSet(e.width,e.fontBoundingBoxAscent+e.fontBoundingBoxDescent),this._result}},cf=class extends Ie{constructor(e,t,i){super(),this._textarea=e,this._window=t,this.mainDocument=i,this._isFocused=!1,this._cachedIsFocused=void 0,this._screenDprMonitor=this._register(new df(this._window)),this._onDprChange=this._register(new Y),this.onDprChange=this._onDprChange.event,this._onWindowChange=this._register(new Y),this.onWindowChange=this._onWindowChange.event,this._register(this.onWindowChange(s=>this._screenDprMonitor.setWindow(s))),this._register(ft.forward(this._screenDprMonitor.onDprChange,this._onDprChange)),this._register(ge(this._textarea,"focus",()=>this._isFocused=!0)),this._register(ge(this._textarea,"blur",()=>this._isFocused=!1))}get window(){return this._window}set window(e){this._window!==e&&(this._window=e,this._onWindowChange.fire(this._window))}get dpr(){return this.window.devicePixelRatio}get isFocused(){return this._cachedIsFocused===void 0&&(this._cachedIsFocused=this._isFocused&&this._textarea.ownerDocument.hasFocus(),queueMicrotask(()=>this._cachedIsFocused=void 0)),this._cachedIsFocused}},df=class extends Ie{constructor(e){super(),this._parentWindow=e,this._windowResizeListener=this._register(new Ms),this._onDprChange=this._register(new Y),this.onDprChange=this._onDprChange.event,this._outerListener=()=>this._setDprAndFireIfDiffers(),this._currentDevicePixelRatio=this._parentWindow.devicePixelRatio,this._updateDpr(),this._setWindowResizeListener(),this._register(ze(()=>this.clearListener()))}setWindow(e){this._parentWindow=e,this._setWindowResizeListener(),this._setDprAndFireIfDiffers()}_setWindowResizeListener(){this._windowResizeListener.value=ge(this._parentWindow,"resize",()=>this._setDprAndFireIfDiffers())}_setDprAndFireIfDiffers(){this._parentWindow.devicePixelRatio!==this._currentDevicePixelRatio&&this._onDprChange.fire(this._parentWindow.devicePixelRatio),this._updateDpr()}_updateDpr(){var e;this._outerListener&&((e=this._resolutionMediaMatchList)==null||e.removeListener(this._outerListener),this._currentDevicePixelRatio=this._parentWindow.devicePixelRatio,this._resolutionMediaMatchList=this._parentWindow.matchMedia(`screen and (resolution: ${this._parentWindow.devicePixelRatio}dppx)`),this._resolutionMediaMatchList.addListener(this._outerListener))}clearListener(){!this._resolutionMediaMatchList||!this._outerListener||(this._resolutionMediaMatchList.removeListener(this._outerListener),this._resolutionMediaMatchList=void 0,this._outerListener=void 0)}},uf=class extends Ie{constructor(){super(),this.linkProviders=[],this._register(ze(()=>this.linkProviders.length=0))}registerLinkProvider(e){return this.linkProviders.push(e),{dispose:()=>{let t=this.linkProviders.indexOf(e);t!==-1&&this.linkProviders.splice(t,1)}}}};function oa(e,t,i){let s=i.getBoundingClientRect(),r=e.getComputedStyle(i),n=parseInt(r.getPropertyValue("padding-left")),a=parseInt(r.getPropertyValue("padding-top"));return[t.clientX-s.left-n,t.clientY-s.top-a]}function _f(e,t,i,s,r,n,a,o,h){if(!n)return;let l=oa(e,t,i);if(l)return l[0]=Math.ceil((l[0]+(h?a/2:0))/a),l[1]=Math.ceil(l[1]/o),l[0]=Math.min(Math.max(l[0],1),s+(h?1:0)),l[1]=Math.min(Math.max(l[1],1),r),l}var xo=class{constructor(e,t){this._renderService=e,this._charSizeService=t}getCoords(e,t,i,s,r){return _f(window,e,t,i,s,this._charSizeService.hasValidSize,this._renderService.dimensions.css.cell.width,this._renderService.dimensions.css.cell.height,r)}getMouseReportCoords(e,t){let i=oa(window,e,t);if(this._charSizeService.hasValidSize)return i[0]=Math.min(Math.max(i[0],0),this._renderService.dimensions.css.canvas.width-1),i[1]=Math.min(Math.max(i[1],0),this._renderService.dimensions.css.canvas.height-1),{col:Math.floor(i[0]/this._renderService.dimensions.css.cell.width),row:Math.floor(i[1]/this._renderService.dimensions.css.cell.height),x:Math.floor(i[0]),y:Math.floor(i[1])}}};xo=Ke([te(0,Li),te(1,un)],xo);var ff=class{constructor(e,t){this._renderCallback=e,this._coreBrowserService=t,this._refreshCallbacks=[]}dispose(){this._animationFrame&&(this._coreBrowserService.window.cancelAnimationFrame(this._animationFrame),this._animationFrame=void 0)}addRefreshCallback(e){return this._refreshCallbacks.push(e),this._animationFrame||(this._animationFrame=this._coreBrowserService.window.requestAnimationFrame(()=>this._innerRefresh())),this._animationFrame}refresh(e,t,i){this._rowCount=i,e=e!==void 0?e:0,t=t!==void 0?t:this._rowCount-1,this._rowStart=this._rowStart!==void 0?Math.min(this._rowStart,e):e,this._rowEnd=this._rowEnd!==void 0?Math.max(this._rowEnd,t):t,!this._animationFrame&&(this._animationFrame=this._coreBrowserService.window.requestAnimationFrame(()=>this._innerRefresh()))}_innerRefresh(){if(this._animationFrame=void 0,this._rowStart===void 0||this._rowEnd===void 0||this._rowCount===void 0){this._runRefreshCallbacks();return}let e=Math.max(this._rowStart,0),t=Math.min(this._rowEnd,this._rowCount-1);this._rowStart=void 0,this._rowEnd=void 0,this._renderCallback(e,t),this._runRefreshCallbacks()}_runRefreshCallbacks(){for(let e of this._refreshCallbacks)e(0);this._refreshCallbacks=[]}},Gh={};bu(Gh,{getSafariVersion:()=>gf,isChromeOS:()=>Yh,isFirefox:()=>Kh,isIpad:()=>pf,isIphone:()=>mf,isLegacyEdge:()=>vf,isLinux:()=>aa,isMac:()=>Xr,isNode:()=>_n,isSafari:()=>Jh,isWindows:()=>jh});var _n=typeof process<"u"&&"title"in process,br=_n?"node":navigator.userAgent,yr=_n?"node":navigator.platform,Kh=br.includes("Firefox"),vf=br.includes("Edge"),Jh=/^((?!chrome|android).)*safari/i.test(br);function gf(){if(!Jh)return 0;let e=br.match(/Version\/(\d+)/);return e===null||e.length<2?0:parseInt(e[1])}var Xr=["Macintosh","MacIntel","MacPPC","Mac68K"].includes(yr),pf=yr==="iPad",mf=yr==="iPhone",jh=["Windows","Win16","Win32","WinCE"].includes(yr),aa=yr.indexOf("Linux")>=0,Yh=/\bCrOS\b/.test(br),Vh=class{constructor(){this._tasks=[],this._i=0}enqueue(e){this._tasks.push(e),this._start()}flush(){for(;this._ir){s-t<-20&&console.warn(`task queue exceeded allotted deadline by ${Math.abs(Math.round(s-t))}ms`),this._start();return}s=r}this.clear()}},Af=class extends Vh{_requestCallback(e){return setTimeout(()=>e(this._createDeadline(16)))}_cancelCallback(e){clearTimeout(e)}_createDeadline(e){let t=performance.now()+e;return{timeRemaining:()=>Math.max(0,t-performance.now())}}},wf=class extends Vh{_requestCallback(e){return requestIdleCallback(e)}_cancelCallback(e){cancelIdleCallback(e)}},Zr=!_n&&"requestIdleCallback"in window?wf:Af,Cf=class{constructor(){this._queue=new Zr}set(e){this._queue.clear(),this._queue.enqueue(e)}flush(){this._queue.flush()}},ko=class extends Ie{constructor(e,t,i,s,r,n,a,o,h){super(),this._rowCount=e,this._optionsService=i,this._charSizeService=s,this._coreService=r,this._coreBrowserService=o,this._renderer=this._register(new Ms),this._pausedResizeTask=new Cf,this._observerDisposable=this._register(new Ms),this._isPaused=!1,this._needsFullRefresh=!1,this._isNextRenderRedrawOnly=!0,this._needsSelectionRefresh=!1,this._canvasWidth=0,this._canvasHeight=0,this._selectionState={start:void 0,end:void 0,columnSelectMode:!1},this._onDimensionsChange=this._register(new Y),this.onDimensionsChange=this._onDimensionsChange.event,this._onRenderedViewportChange=this._register(new Y),this.onRenderedViewportChange=this._onRenderedViewportChange.event,this._onRender=this._register(new Y),this.onRender=this._onRender.event,this._onRefreshRequest=this._register(new Y),this.onRefreshRequest=this._onRefreshRequest.event,this._renderDebouncer=new ff((l,c)=>this._renderRows(l,c),this._coreBrowserService),this._register(this._renderDebouncer),this._syncOutputHandler=new Sf(this._coreBrowserService,this._coreService,()=>this._fullRefresh()),this._register(ze(()=>this._syncOutputHandler.dispose())),this._register(this._coreBrowserService.onDprChange(()=>this.handleDevicePixelRatioChange())),this._register(a.onResize(()=>this._fullRefresh())),this._register(a.buffers.onBufferActivate(()=>{var l;return(l=this._renderer.value)==null?void 0:l.clear()})),this._register(this._optionsService.onOptionChange(()=>this._handleOptionsChanged())),this._register(this._charSizeService.onCharSizeChange(()=>this.handleCharSizeChanged())),this._register(n.onDecorationRegistered(()=>this._fullRefresh())),this._register(n.onDecorationRemoved(()=>this._fullRefresh())),this._register(this._optionsService.onMultipleOptionChange(["customGlyphs","drawBoldTextInBrightColors","letterSpacing","lineHeight","fontFamily","fontSize","fontWeight","fontWeightBold","minimumContrastRatio","rescaleOverlappingGlyphs"],()=>{this.clear(),this.handleResize(a.cols,a.rows),this._fullRefresh()})),this._register(this._optionsService.onMultipleOptionChange(["cursorBlink","cursorStyle"],()=>this.refreshRows(a.buffer.y,a.buffer.y,!0))),this._register(h.onChangeColors(()=>this._fullRefresh())),this._registerIntersectionObserver(this._coreBrowserService.window,t),this._register(this._coreBrowserService.onWindowChange(l=>this._registerIntersectionObserver(l,t)))}get dimensions(){return this._renderer.value.dimensions}_registerIntersectionObserver(e,t){if("IntersectionObserver"in e){let i=new e.IntersectionObserver(s=>this._handleIntersectionChange(s[s.length-1]),{threshold:0});i.observe(t),this._observerDisposable.value=ze(()=>i.disconnect())}}_handleIntersectionChange(e){this._isPaused=e.isIntersecting===void 0?e.intersectionRatio===0:!e.isIntersecting,!this._isPaused&&!this._charSizeService.hasValidSize&&this._charSizeService.measure(),!this._isPaused&&this._needsFullRefresh&&(this._pausedResizeTask.flush(),this.refreshRows(0,this._rowCount-1),this._needsFullRefresh=!1)}refreshRows(e,t,i=!1){if(this._isPaused){this._needsFullRefresh=!0;return}if(this._coreService.decPrivateModes.synchronizedOutput){this._syncOutputHandler.bufferRows(e,t);return}let s=this._syncOutputHandler.flush();s&&(e=Math.min(e,s.start),t=Math.max(t,s.end)),i||(this._isNextRenderRedrawOnly=!1),this._renderDebouncer.refresh(e,t,this._rowCount)}_renderRows(e,t){if(this._renderer.value){if(this._coreService.decPrivateModes.synchronizedOutput){this._syncOutputHandler.bufferRows(e,t);return}e=Math.min(e,this._rowCount-1),t=Math.min(t,this._rowCount-1),this._renderer.value.renderRows(e,t),this._needsSelectionRefresh&&(this._renderer.value.handleSelectionChanged(this._selectionState.start,this._selectionState.end,this._selectionState.columnSelectMode),this._needsSelectionRefresh=!1),this._isNextRenderRedrawOnly||this._onRenderedViewportChange.fire({start:e,end:t}),this._onRender.fire({start:e,end:t}),this._isNextRenderRedrawOnly=!0}}resize(e,t){this._rowCount=t,this._fireOnCanvasResize()}_handleOptionsChanged(){this._renderer.value&&(this.refreshRows(0,this._rowCount-1),this._fireOnCanvasResize())}_fireOnCanvasResize(){this._renderer.value&&(this._renderer.value.dimensions.css.canvas.width===this._canvasWidth&&this._renderer.value.dimensions.css.canvas.height===this._canvasHeight||this._onDimensionsChange.fire(this._renderer.value.dimensions))}hasRenderer(){return!!this._renderer.value}setRenderer(e){this._renderer.value=e,this._renderer.value&&(this._renderer.value.onRequestRedraw(t=>this.refreshRows(t.start,t.end,!0)),this._needsSelectionRefresh=!0,this._fullRefresh())}addRefreshCallback(e){return this._renderDebouncer.addRefreshCallback(e)}_fullRefresh(){this._isPaused?this._needsFullRefresh=!0:this.refreshRows(0,this._rowCount-1)}clearTextureAtlas(){var e,t;this._renderer.value&&((t=(e=this._renderer.value).clearTextureAtlas)==null||t.call(e),this._fullRefresh())}handleDevicePixelRatioChange(){this._charSizeService.measure(),this._renderer.value&&(this._renderer.value.handleDevicePixelRatioChange(),this.refreshRows(0,this._rowCount-1))}handleResize(e,t){this._renderer.value&&(this._isPaused?this._pausedResizeTask.set(()=>{var i;return(i=this._renderer.value)==null?void 0:i.handleResize(e,t)}):this._renderer.value.handleResize(e,t),this._fullRefresh())}handleCharSizeChanged(){var e;(e=this._renderer.value)==null||e.handleCharSizeChanged()}handleBlur(){var e;(e=this._renderer.value)==null||e.handleBlur()}handleFocus(){var e;(e=this._renderer.value)==null||e.handleFocus()}handleSelectionChanged(e,t,i){var s;this._selectionState.start=e,this._selectionState.end=t,this._selectionState.columnSelectMode=i,(s=this._renderer.value)==null||s.handleSelectionChanged(e,t,i)}handleCursorMove(){var e;(e=this._renderer.value)==null||e.handleCursorMove()}clear(){var e;(e=this._renderer.value)==null||e.clear()}};ko=Ke([te(2,Mt),te(3,un),te(4,gs),te(5,Sr),te(6,Dt),te(7,Mi),te(8,Ps)],ko);var Sf=class{constructor(e,t,i){this._coreBrowserService=e,this._coreService=t,this._onTimeout=i,this._start=0,this._end=0,this._isBuffering=!1}bufferRows(e,t){this._isBuffering?(this._start=Math.min(this._start,e),this._end=Math.max(this._end,t)):(this._start=e,this._end=t,this._isBuffering=!0),this._timeout===void 0&&(this._timeout=this._coreBrowserService.window.setTimeout(()=>{this._timeout=void 0,this._coreService.decPrivateModes.synchronizedOutput=!1,this._onTimeout()},1e3))}flush(){if(this._timeout!==void 0&&(this._coreBrowserService.window.clearTimeout(this._timeout),this._timeout=void 0),!this._isBuffering)return;let e={start:this._start,end:this._end};return this._isBuffering=!1,e}dispose(){this._timeout!==void 0&&(this._coreBrowserService.window.clearTimeout(this._timeout),this._timeout=void 0)}};function bf(e,t,i,s){let r=i.buffer.x,n=i.buffer.y;if(!i.buffer.hasScrollback)return kf(r,n,e,t,i,s)+fn(n,t,i,s)+Ef(r,n,e,t,i,s);let a;if(n===t)return a=r>e?"D":"C",hr(Math.abs(r-e),lr(a,s));a=n>t?"D":"C";let o=Math.abs(n-t),h=xf(n>t?e:r,i)+(o-1)*i.cols+1+yf(n>t?r:e);return hr(h,lr(a,s))}function yf(e,t){return e-1}function xf(e,t){return t.cols-e}function kf(e,t,i,s,r,n){return fn(t,s,r,n).length===0?"":hr(Zh(e,t,e,t-fs(t,r),!1,r).length,lr("D",n))}function fn(e,t,i,s){let r=e-fs(e,i),n=t-fs(t,i),a=Math.abs(r-n)-Bf(e,t,i);return hr(a,lr(Xh(e,t),s))}function Ef(e,t,i,s,r,n){let a;fn(t,s,r,n).length>0?a=s-fs(s,r):a=t;let o=s,h=If(e,t,i,s,r,n);return hr(Zh(e,a,i,o,h==="C",r).length,lr(h,n))}function Bf(e,t,i){var a;let s=0,r=e-fs(e,i),n=t-fs(t,i);for(let o=0;o=0&&e0?a=s-fs(s,r):a=t,e=i&&at?"A":"B"}function Zh(e,t,i,s,r,n){let a=e,o=t,h="";for(;(a!==i||o!==s)&&o>=0&&on.cols-1?(h+=n.buffer.translateBufferLineToString(o,!1,e,a),a=0,e=0,o++):!r&&a<0&&(h+=n.buffer.translateBufferLineToString(o,!1,0,e+1),a=n.cols-1,e=a,o--);return h+n.buffer.translateBufferLineToString(o,!1,e,a)}function lr(e,t){let i=t?"O":"[";return q.ESC+i+e}function hr(e,t){e=Math.floor(e);let i="";for(let s=0;sthis._bufferService.cols?e%this._bufferService.cols===0?[this._bufferService.cols,this.selectionStart[1]+Math.floor(e/this._bufferService.cols)-1]:[e%this._bufferService.cols,this.selectionStart[1]+Math.floor(e/this._bufferService.cols)]:[e,this.selectionStart[1]]}if(this.selectionStartLength&&this.selectionEnd[1]===this.selectionStart[1]){let e=this.selectionStart[0]+this.selectionStartLength;return e>this._bufferService.cols?[e%this._bufferService.cols,this.selectionStart[1]+Math.floor(e/this._bufferService.cols)]:[Math.max(e,this.selectionEnd[0]),this.selectionEnd[1]]}return this.selectionEnd}}areSelectionValuesReversed(){let e=this.selectionStart,t=this.selectionEnd;return!e||!t?!1:e[1]>t[1]||e[1]===t[1]&&e[0]>t[0]}handleTrim(e){return this.selectionStart&&(this.selectionStart[1]-=e),this.selectionEnd&&(this.selectionEnd[1]-=e),this.selectionEnd&&this.selectionEnd[1]<0?(this.clearSelection(),!0):(this.selectionStart&&this.selectionStart[1]<0&&(this.selectionStart[1]=0),!1)}};function Ja(e,t){if(e.start.y>e.end.y)throw new Error(`Buffer range end (${e.end.x}, ${e.end.y}) cannot be before start (${e.start.x}, ${e.start.y})`);return t*(e.end.y-e.start.y)+(e.end.x-e.start.x+1)}var Dn=50,Mf=15,Lf=50,Rf=500,Tf=" ",Pf=new RegExp(Tf,"g"),Eo=class extends Ie{constructor(e,t,i,s,r,n,a,o,h){super(),this._element=e,this._screenElement=t,this._linkifier=i,this._bufferService=s,this._coreService=r,this._mouseService=n,this._optionsService=a,this._renderService=o,this._coreBrowserService=h,this._dragScrollAmount=0,this._enabled=!0,this._workCell=new si,this._mouseDownTimeStamp=0,this._oldHasSelection=!1,this._oldSelectionStart=void 0,this._oldSelectionEnd=void 0,this._onLinuxMouseSelection=this._register(new Y),this.onLinuxMouseSelection=this._onLinuxMouseSelection.event,this._onRedrawRequest=this._register(new Y),this.onRequestRedraw=this._onRedrawRequest.event,this._onSelectionChange=this._register(new Y),this.onSelectionChange=this._onSelectionChange.event,this._onRequestScrollLines=this._register(new Y),this.onRequestScrollLines=this._onRequestScrollLines.event,this._mouseMoveListener=l=>this._handleMouseMove(l),this._mouseUpListener=l=>this._handleMouseUp(l),this._coreService.onUserInput(()=>{this.hasSelection&&this.clearSelection()}),this._trimListener=this._bufferService.buffer.lines.onTrim(l=>this._handleTrim(l)),this._register(this._bufferService.buffers.onBufferActivate(l=>this._handleBufferActivate(l))),this.enable(),this._model=new Df(this._bufferService),this._activeSelectionMode=0,this._register(ze(()=>{this._removeMouseDownListeners()})),this._register(this._bufferService.onResize(l=>{l.rowsChanged&&this.clearSelection()}))}reset(){this.clearSelection()}disable(){this.clearSelection(),this._enabled=!1}enable(){this._enabled=!0}get selectionStart(){return this._model.finalSelectionStart}get selectionEnd(){return this._model.finalSelectionEnd}get hasSelection(){let e=this._model.finalSelectionStart,t=this._model.finalSelectionEnd;return!e||!t?!1:e[0]!==t[0]||e[1]!==t[1]}get selectionText(){let e=this._model.finalSelectionStart,t=this._model.finalSelectionEnd;if(!e||!t)return"";let i=this._bufferService.buffer,s=[];if(this._activeSelectionMode===3){if(e[0]===t[0])return"";let r=e[0]r.replace(Pf," ")).join(jh?`\r +`))}},l_=class extends Error{constructor(e,t){super(e),this.name="ListenerLeakError",this.stack=t}},h_=class extends Error{constructor(e,t){super(e),this.name="ListenerRefusalError",this.stack=t}},c_=0,Ln=class{constructor(e){this.value=e,this.id=c_++}},d_=2,u_,Y=class{constructor(t){var i,s,r,n;this._size=0,this._options=t,this._leakageMon=(i=this._options)!=null&&i.leakWarningThreshold?new o_((t==null?void 0:t.onListenerError)??qr,((s=this._options)==null?void 0:s.leakWarningThreshold)??n_):void 0,this._perfMon=(r=this._options)!=null&&r._profName?new r_(this._options._profName):void 0,this._deliveryQueue=(n=this._options)==null?void 0:n.deliveryQueue}dispose(){var t,i,s,r;this._disposed||(this._disposed=!0,((t=this._deliveryQueue)==null?void 0:t.current)===this&&this._deliveryQueue.reset(),this._listeners&&(this._listeners=void 0,this._size=0),(s=(i=this._options)==null?void 0:i.onDidRemoveLastListener)==null||s.call(i),(r=this._leakageMon)==null||r.dispose())}get event(){return this._event??(this._event=(t,i,s)=>{var o,h,l,c,d;if(this._leakageMon&&this._size>this._leakageMon.threshold**2){let v=`[${this._leakageMon.name}] REFUSES to accept new listeners because it exceeded its threshold by far (${this._size} vs ${this._leakageMon.threshold})`;console.warn(v);let u=this._leakageMon.getMostFrequentStack()??["UNKNOWN stack",-1],g=new h_(`${v}. HINT: Stack shows most frequent listener (${u[1]}-times)`,u[0]);return(((o=this._options)==null?void 0:o.onListenerError)||qr)(g),ke.None}if(this._disposed)return ke.None;i&&(t=t.bind(i));let r=new Ln(t),n;this._leakageMon&&this._size>=Math.ceil(this._leakageMon.threshold*.2)&&(r.stack=a_.create(),n=this._leakageMon.check(r.stack,this._size+1)),this._listeners?this._listeners instanceof Ln?(this._deliveryQueue??(this._deliveryQueue=new __),this._listeners=[this._listeners,r]):this._listeners.push(r):((l=(h=this._options)==null?void 0:h.onWillAddFirstListener)==null||l.call(h,this),this._listeners=r,(d=(c=this._options)==null?void 0:c.onDidAddFirstListener)==null||d.call(c,this)),this._size++;let a=$e(()=>{n==null||n(),this._removeListener(r)});return s instanceof es?s.add(a):Array.isArray(s)&&s.push(a),a}),this._event}_removeListener(t){var n,a,o,h;if((a=(n=this._options)==null?void 0:n.onWillRemoveListener)==null||a.call(n,this),!this._listeners)return;if(this._size===1){this._listeners=void 0,(h=(o=this._options)==null?void 0:o.onDidRemoveLastListener)==null||h.call(o,this),this._size=0;return}let i=this._listeners,s=i.indexOf(t);if(s===-1)throw console.log("disposed?",this._disposed),console.log("size?",this._size),console.log("arr?",JSON.stringify(this._listeners)),new Error("Attempted to dispose unknown listener");this._size--,i[s]=void 0;let r=this._deliveryQueue.current===this;if(this._size*d_<=i.length){let l=0;for(let c=0;c0}},__=class{constructor(){this.i=-1,this.end=0}enqueue(e,t,i){this.i=0,this.end=i,this.current=e,this.value=t}reset(){this.i=this.end,this.current=void 0,this.value=void 0}},Ao=class{constructor(){this.mapWindowIdToZoomLevel=new Map,this._onDidChangeZoomLevel=new Y,this.onDidChangeZoomLevel=this._onDidChangeZoomLevel.event,this.mapWindowIdToZoomFactor=new Map,this._onDidChangeFullscreen=new Y,this.onDidChangeFullscreen=this._onDidChangeFullscreen.event,this.mapWindowIdToFullScreen=new Map}getZoomLevel(t){return this.mapWindowIdToZoomLevel.get(this.getWindowId(t))??0}setZoomLevel(t,i){if(this.getZoomLevel(i)===t)return;let s=this.getWindowId(i);this.mapWindowIdToZoomLevel.set(s,t),this._onDidChangeZoomLevel.fire(s)}getZoomFactor(t){return this.mapWindowIdToZoomFactor.get(this.getWindowId(t))??1}setZoomFactor(t,i){this.mapWindowIdToZoomFactor.set(this.getWindowId(i),t)}setFullscreen(t,i){if(this.isFullscreen(i)===t)return;let s=this.getWindowId(i);this.mapWindowIdToFullScreen.set(s,t),this._onDidChangeFullscreen.fire(s)}isFullscreen(t){return!!this.mapWindowIdToFullScreen.get(this.getWindowId(t))}getWindowId(t){return t.vscodeWindowId}};Ao.INSTANCE=new Ao;var la=Ao;function f_(e,t,i){typeof t=="string"&&(t=e.matchMedia(t)),t.addEventListener("change",i)}la.INSTANCE.onDidChangeZoomLevel;function v_(e){return la.INSTANCE.getZoomFactor(e)}la.INSTANCE.onDidChangeFullscreen;var Us=typeof navigator=="object"?navigator.userAgent:"",wo=Us.indexOf("Firefox")>=0,g_=Us.indexOf("AppleWebKit")>=0,ha=Us.indexOf("Chrome")>=0,p_=!ha&&Us.indexOf("Safari")>=0;Us.indexOf("Electron/")>=0;Us.indexOf("Android")>=0;var Rn=!1;if(typeof Li.matchMedia=="function"){let e=Li.matchMedia("(display-mode: standalone) or (display-mode: window-controls-overlay)"),t=Li.matchMedia("(display-mode: fullscreen)");Rn=e.matches,f_(Li,e,({matches:i})=>{Rn&&t.matches||(Rn=i)})}var Is="en",Co=!1,bo=!1,Gr=!1,Jh=!1,Rr,Kr=Is,Ha=Is,m_,hi,vs=globalThis,pt,Fl;typeof vs.vscode<"u"&&typeof vs.vscode.process<"u"?pt=vs.vscode.process:typeof process<"u"&&typeof((Fl=process==null?void 0:process.versions)==null?void 0:Fl.node)=="string"&&(pt=process);var Hl,A_=typeof((Hl=pt==null?void 0:pt.versions)==null?void 0:Hl.electron)=="string",w_=A_&&(pt==null?void 0:pt.type)==="renderer",Wl;if(typeof pt=="object"){Co=pt.platform==="win32",bo=pt.platform==="darwin",Gr=pt.platform==="linux",Gr&&pt.env.SNAP&&pt.env.SNAP_REVISION,pt.env.CI||pt.env.BUILD_ARTIFACTSTAGINGDIRECTORY,Rr=Is,Kr=Is;let e=pt.env.VSCODE_NLS_CONFIG;if(e)try{let t=JSON.parse(e);Rr=t.userLocale,Ha=t.osLocale,Kr=t.resolvedLanguage||Is,m_=(Wl=t.languagePack)==null?void 0:Wl.translationsConfigFile}catch{}Jh=!0}else typeof navigator=="object"&&!w_?(hi=navigator.userAgent,Co=hi.indexOf("Windows")>=0,bo=hi.indexOf("Macintosh")>=0,(hi.indexOf("Macintosh")>=0||hi.indexOf("iPad")>=0||hi.indexOf("iPhone")>=0)&&navigator.maxTouchPoints&&navigator.maxTouchPoints>0,Gr=hi.indexOf("Linux")>=0,(hi==null?void 0:hi.indexOf("Mobi"))>=0,Kr=globalThis._VSCODE_NLS_LANGUAGE||Is,Rr=navigator.language.toLowerCase(),Ha=Rr):console.error("Unable to resolve platform.");var jh=Co,Si=bo,C_=Gr,Wa=Jh,ki=hi,Wi=Kr,b_;(e=>{function t(){return Wi}e.value=t;function i(){return Wi.length===2?Wi==="en":Wi.length>=3?Wi[0]==="e"&&Wi[1]==="n"&&Wi[2]==="-":!1}e.isDefaultVariant=i;function s(){return Wi==="en"}e.isDefault=s})(b_||(b_={}));var S_=typeof vs.postMessage=="function"&&!vs.importScripts;(()=>{if(S_){let e=[];vs.addEventListener("message",i=>{if(i.data&&i.data.vscodeScheduleAsyncWork)for(let s=0,r=e.length;s{let s=++t;e.push({id:s,callback:i}),vs.postMessage({vscodeScheduleAsyncWork:s},"*")}}return e=>setTimeout(e)})();var y_=!!(ki&&ki.indexOf("Chrome")>=0);ki&&ki.indexOf("Firefox")>=0;!y_&&ki&&ki.indexOf("Safari")>=0;ki&&ki.indexOf("Edg/")>=0;ki&&ki.indexOf("Android")>=0;var xs=typeof navigator=="object"?navigator:{};Wa||document.queryCommandSupported&&document.queryCommandSupported("copy")||xs&&xs.clipboard&&xs.clipboard.writeText,Wa||xs&&xs.clipboard&&xs.clipboard.readText;var ca=class{constructor(){this._keyCodeToStr=[],this._strToKeyCode=Object.create(null)}define(e,t){this._keyCodeToStr[e]=t,this._strToKeyCode[t.toLowerCase()]=e}keyCodeToStr(e){return this._keyCodeToStr[e]}strToKeyCode(e){return this._strToKeyCode[e.toLowerCase()]||0}},Tn=new ca,za=new ca,Ua=new ca,x_=new Array(230),Yh;(e=>{function t(o){return Tn.keyCodeToStr(o)}e.toString=t;function i(o){return Tn.strToKeyCode(o)}e.fromString=i;function s(o){return za.keyCodeToStr(o)}e.toUserSettingsUS=s;function r(o){return Ua.keyCodeToStr(o)}e.toUserSettingsGeneral=r;function n(o){return za.strToKeyCode(o)||Ua.strToKeyCode(o)}e.fromUserSettings=n;function a(o){if(o>=98&&o<=113)return null;switch(o){case 16:return"Up";case 18:return"Down";case 15:return"Left";case 17:return"Right"}return Tn.keyCodeToStr(o)}e.toElectronAccelerator=a})(Yh||(Yh={}));var k_=class Vh{constructor(t,i,s,r,n){this.ctrlKey=t,this.shiftKey=i,this.altKey=s,this.metaKey=r,this.keyCode=n}equals(t){return t instanceof Vh&&this.ctrlKey===t.ctrlKey&&this.shiftKey===t.shiftKey&&this.altKey===t.altKey&&this.metaKey===t.metaKey&&this.keyCode===t.keyCode}getHashCode(){let t=this.ctrlKey?"1":"0",i=this.shiftKey?"1":"0",s=this.altKey?"1":"0",r=this.metaKey?"1":"0";return`K${t}${i}${s}${r}${this.keyCode}`}isModifierKey(){return this.keyCode===0||this.keyCode===5||this.keyCode===57||this.keyCode===6||this.keyCode===4}toKeybinding(){return new E_([this])}isDuplicateModifierCase(){return this.ctrlKey&&this.keyCode===5||this.shiftKey&&this.keyCode===4||this.altKey&&this.keyCode===6||this.metaKey&&this.keyCode===57}},E_=class{constructor(e){if(e.length===0)throw Xu("chords");this.chords=e}getHashCode(){let e="";for(let t=0,i=this.chords.length;t{function t(i){return i===e.None||i===e.Cancelled||i instanceof Q_?!0:!i||typeof i!="object"?!1:typeof i.isCancellationRequested=="boolean"&&typeof i.onCancellationRequested=="function"}e.isCancellationToken=t,e.None=Object.freeze({isCancellationRequested:!1,onCancellationRequested:mt.None}),e.Cancelled=Object.freeze({isCancellationRequested:!0,onCancellationRequested:Xh})})(P_||(P_={}));var Q_=class{constructor(){this._isCancelled=!1,this._emitter=null}cancel(){this._isCancelled||(this._isCancelled=!0,this._emitter&&(this._emitter.fire(void 0),this.dispose()))}get isCancellationRequested(){return this._isCancelled}get onCancellationRequested(){return this._isCancelled?Xh:(this._emitter||(this._emitter=new Y),this._emitter.event)}dispose(){this._emitter&&(this._emitter.dispose(),this._emitter=null)}},da=class{constructor(t,i){this._isDisposed=!1,this._token=-1,typeof t=="function"&&typeof i=="number"&&this.setIfNotSet(t,i)}dispose(){this.cancel(),this._isDisposed=!0}cancel(){this._token!==-1&&(clearTimeout(this._token),this._token=-1)}cancelAndSet(t,i){if(this._isDisposed)throw new fo("Calling 'cancelAndSet' on a disposed TimeoutTimer");this.cancel(),this._token=setTimeout(()=>{this._token=-1,t()},i)}setIfNotSet(t,i){if(this._isDisposed)throw new fo("Calling 'setIfNotSet' on a disposed TimeoutTimer");this._token===-1&&(this._token=setTimeout(()=>{this._token=-1,t()},i))}},O_=class{constructor(){this.disposable=void 0,this.isDisposed=!1}cancel(){var e;(e=this.disposable)==null||e.dispose(),this.disposable=void 0}cancelAndSet(e,t,i=globalThis){if(this.isDisposed)throw new fo("Calling 'cancelAndSet' on a disposed IntervalTimer");this.cancel();let s=i.setInterval(()=>{e()},t);this.disposable=$e(()=>{i.clearInterval(s),this.disposable=void 0})}dispose(){this.cancel(),this.isDisposed=!0}},N_;(e=>{async function t(s){let r,n=await Promise.all(s.map(a=>a.then(o=>o,o=>{r||(r=o)})));if(typeof r<"u")throw r;return n}e.settled=t;function i(s){return new Promise(async(r,n)=>{try{await s(r,n)}catch(a){n(a)}})}e.withAsyncBody=i})(N_||(N_={}));var Ka=class Yt{static fromArray(t){return new Yt(i=>{i.emitMany(t)})}static fromPromise(t){return new Yt(async i=>{i.emitMany(await t)})}static fromPromises(t){return new Yt(async i=>{await Promise.all(t.map(async s=>i.emitOne(await s)))})}static merge(t){return new Yt(async i=>{await Promise.all(t.map(async s=>{for await(let r of s)i.emitOne(r)}))})}constructor(t,i){this._state=0,this._results=[],this._error=null,this._onReturn=i,this._onStateChanged=new Y,queueMicrotask(async()=>{let s={emitOne:r=>this.emitOne(r),emitMany:r=>this.emitMany(r),reject:r=>this.reject(r)};try{await Promise.resolve(t(s)),this.resolve()}catch(r){this.reject(r)}finally{s.emitOne=void 0,s.emitMany=void 0,s.reject=void 0}})}[Symbol.asyncIterator](){let t=0;return{next:async()=>{do{if(this._state===2)throw this._error;if(t{var i;return(i=this._onReturn)==null||i.call(this),{done:!0,value:void 0}}}}static map(t,i){return new Yt(async s=>{for await(let r of t)s.emitOne(i(r))})}map(t){return Yt.map(this,t)}static filter(t,i){return new Yt(async s=>{for await(let r of t)i(r)&&s.emitOne(r)})}filter(t){return Yt.filter(this,t)}static coalesce(t){return Yt.filter(t,i=>!!i)}coalesce(){return Yt.coalesce(this)}static async toPromise(t){let i=[];for await(let s of t)i.push(s);return i}toPromise(){return Yt.toPromise(this)}emitOne(t){this._state===0&&(this._results.push(t),this._onStateChanged.fire())}emitMany(t){this._state===0&&(this._results=this._results.concat(t),this._onStateChanged.fire())}resolve(){this._state===0&&(this._state=1,this._onStateChanged.fire())}reject(t){this._state===0&&(this._state=2,this._error=t,this._onStateChanged.fire())}};Ka.EMPTY=Ka.fromArray([]);var{getWindow:bi,getWindowId:F_,onDidRegisterWindow:H_}=(function(){let e=new Map,t={window:Li,disposables:new es};e.set(Li.vscodeWindowId,t);let i=new Y,s=new Y,r=new Y;function n(a,o){return(typeof a=="number"?e.get(a):void 0)??(o?t:void 0)}return{onDidRegisterWindow:i.event,onWillUnregisterWindow:r.event,onDidUnregisterWindow:s.event,registerWindow(a){if(e.has(a.vscodeWindowId))return ke.None;let o=new es,h={window:a,disposables:o.add(new es)};return e.set(a.vscodeWindowId,h),o.add($e(()=>{e.delete(a.vscodeWindowId),s.fire(a)})),o.add(me(a,ct.BEFORE_UNLOAD,()=>{r.fire(a)})),i.fire(h),o},getWindows(){return e.values()},getWindowsCount(){return e.size},getWindowId(a){return a.vscodeWindowId},hasWindow(a){return e.has(a)},getWindowById:n,getWindow(a){var l;let o=a;if((l=o==null?void 0:o.ownerDocument)!=null&&l.defaultView)return o.ownerDocument.defaultView.window;let h=a;return h!=null&&h.view?h.view.window:Li},getDocument(a){return bi(a).document}}})(),W_=class{constructor(e,t,i,s){this._node=e,this._type=t,this._handler=i,this._options=s||!1,this._node.addEventListener(this._type,this._handler,this._options)}dispose(){this._handler&&(this._node.removeEventListener(this._type,this._handler,this._options),this._node=null,this._handler=null)}};function me(e,t,i,s){return new W_(e,t,i,s)}var Ja=function(e,t,i,s){return me(e,t,i,s)},ua,z_=class extends O_{constructor(e){super(),this.defaultTarget=e&&bi(e)}cancelAndSet(e,t,i){return super.cancelAndSet(e,t,i??this.defaultTarget)}},ja=class{constructor(e,t=0){this._runner=e,this.priority=t,this._canceled=!1}dispose(){this._canceled=!0}execute(){if(!this._canceled)try{this._runner()}catch(e){qr(e)}}static sort(e,t){return t.priority-e.priority}};(function(){let e=new Map,t=new Map,i=new Map,s=new Map,r=n=>{i.set(n,!1);let a=e.get(n)??[];for(t.set(n,a),e.set(n,[]),s.set(n,!0);a.length>0;)a.sort(ja.sort),a.shift().execute();s.set(n,!1)};ua=(n,a,o=0)=>{let h=F_(n),l=new ja(a,o),c=e.get(h);return c||(c=[],e.set(h,c)),c.push(l),i.get(h)||(i.set(h,!0),n.requestAnimationFrame(()=>r(h))),l}})();function U_(e){let t=e.getBoundingClientRect(),i=bi(e);return{left:t.left+i.scrollX,top:t.top+i.scrollY,width:t.width,height:t.height}}var ct={CLICK:"click",MOUSE_DOWN:"mousedown",MOUSE_OVER:"mouseover",MOUSE_LEAVE:"mouseleave",MOUSE_WHEEL:"wheel",POINTER_UP:"pointerup",POINTER_DOWN:"pointerdown",POINTER_MOVE:"pointermove",KEY_DOWN:"keydown",KEY_UP:"keyup",BEFORE_UNLOAD:"beforeunload",CHANGE:"change",FOCUS:"focus",BLUR:"blur",INPUT:"input"},$_=class{constructor(e){this.domNode=e,this._maxWidth="",this._width="",this._height="",this._top="",this._left="",this._bottom="",this._right="",this._paddingTop="",this._paddingLeft="",this._paddingBottom="",this._paddingRight="",this._fontFamily="",this._fontWeight="",this._fontSize="",this._fontStyle="",this._fontFeatureSettings="",this._fontVariationSettings="",this._textDecoration="",this._lineHeight="",this._letterSpacing="",this._className="",this._display="",this._position="",this._visibility="",this._color="",this._backgroundColor="",this._layerHint=!1,this._contain="none",this._boxShadow=""}setMaxWidth(e){let t=Tt(e);this._maxWidth!==t&&(this._maxWidth=t,this.domNode.style.maxWidth=this._maxWidth)}setWidth(e){let t=Tt(e);this._width!==t&&(this._width=t,this.domNode.style.width=this._width)}setHeight(e){let t=Tt(e);this._height!==t&&(this._height=t,this.domNode.style.height=this._height)}setTop(e){let t=Tt(e);this._top!==t&&(this._top=t,this.domNode.style.top=this._top)}setLeft(e){let t=Tt(e);this._left!==t&&(this._left=t,this.domNode.style.left=this._left)}setBottom(e){let t=Tt(e);this._bottom!==t&&(this._bottom=t,this.domNode.style.bottom=this._bottom)}setRight(e){let t=Tt(e);this._right!==t&&(this._right=t,this.domNode.style.right=this._right)}setPaddingTop(e){let t=Tt(e);this._paddingTop!==t&&(this._paddingTop=t,this.domNode.style.paddingTop=this._paddingTop)}setPaddingLeft(e){let t=Tt(e);this._paddingLeft!==t&&(this._paddingLeft=t,this.domNode.style.paddingLeft=this._paddingLeft)}setPaddingBottom(e){let t=Tt(e);this._paddingBottom!==t&&(this._paddingBottom=t,this.domNode.style.paddingBottom=this._paddingBottom)}setPaddingRight(e){let t=Tt(e);this._paddingRight!==t&&(this._paddingRight=t,this.domNode.style.paddingRight=this._paddingRight)}setFontFamily(e){this._fontFamily!==e&&(this._fontFamily=e,this.domNode.style.fontFamily=this._fontFamily)}setFontWeight(e){this._fontWeight!==e&&(this._fontWeight=e,this.domNode.style.fontWeight=this._fontWeight)}setFontSize(e){let t=Tt(e);this._fontSize!==t&&(this._fontSize=t,this.domNode.style.fontSize=this._fontSize)}setFontStyle(e){this._fontStyle!==e&&(this._fontStyle=e,this.domNode.style.fontStyle=this._fontStyle)}setFontFeatureSettings(e){this._fontFeatureSettings!==e&&(this._fontFeatureSettings=e,this.domNode.style.fontFeatureSettings=this._fontFeatureSettings)}setFontVariationSettings(e){this._fontVariationSettings!==e&&(this._fontVariationSettings=e,this.domNode.style.fontVariationSettings=this._fontVariationSettings)}setTextDecoration(e){this._textDecoration!==e&&(this._textDecoration=e,this.domNode.style.textDecoration=this._textDecoration)}setLineHeight(e){let t=Tt(e);this._lineHeight!==t&&(this._lineHeight=t,this.domNode.style.lineHeight=this._lineHeight)}setLetterSpacing(e){let t=Tt(e);this._letterSpacing!==t&&(this._letterSpacing=t,this.domNode.style.letterSpacing=this._letterSpacing)}setClassName(e){this._className!==e&&(this._className=e,this.domNode.className=this._className)}toggleClassName(e,t){this.domNode.classList.toggle(e,t),this._className=this.domNode.className}setDisplay(e){this._display!==e&&(this._display=e,this.domNode.style.display=this._display)}setPosition(e){this._position!==e&&(this._position=e,this.domNode.style.position=this._position)}setVisibility(e){this._visibility!==e&&(this._visibility=e,this.domNode.style.visibility=this._visibility)}setColor(e){this._color!==e&&(this._color=e,this.domNode.style.color=this._color)}setBackgroundColor(e){this._backgroundColor!==e&&(this._backgroundColor=e,this.domNode.style.backgroundColor=this._backgroundColor)}setLayerHinting(e){this._layerHint!==e&&(this._layerHint=e,this.domNode.style.transform=this._layerHint?"translate3d(0px, 0px, 0px)":"")}setBoxShadow(e){this._boxShadow!==e&&(this._boxShadow=e,this.domNode.style.boxShadow=e)}setContain(e){this._contain!==e&&(this._contain=e,this.domNode.style.contain=this._contain)}setAttribute(e,t){this.domNode.setAttribute(e,t)}removeAttribute(e){this.domNode.removeAttribute(e)}appendChild(e){this.domNode.appendChild(e.domNode)}removeChild(e){this.domNode.removeChild(e.domNode)}};function Tt(e){return typeof e=="number"?`${e}px`:e}function hr(e){return new $_(e)}var Zh=class{constructor(){this._hooks=new es,this._pointerMoveCallback=null,this._onStopCallback=null}dispose(){this.stopMonitoring(!1),this._hooks.dispose()}stopMonitoring(e,t){if(!this.isMonitoring())return;this._hooks.clear(),this._pointerMoveCallback=null;let i=this._onStopCallback;this._onStopCallback=null,e&&i&&i(t)}isMonitoring(){return!!this._pointerMoveCallback}startMonitoring(e,t,i,s,r){this.isMonitoring()&&this.stopMonitoring(!1),this._pointerMoveCallback=s,this._onStopCallback=r;let n=e;try{e.setPointerCapture(t),this._hooks.add($e(()=>{try{e.releasePointerCapture(t)}catch{}}))}catch{n=bi(e)}this._hooks.add(me(n,ct.POINTER_MOVE,a=>{if(a.buttons!==i){this.stopMonitoring(!0);return}a.preventDefault(),this._pointerMoveCallback(a)})),this._hooks.add(me(n,ct.POINTER_UP,a=>this.stopMonitoring(!0)))}};function q_(e,t,i){let s=null,r=null;if(typeof i.value=="function"?(s="value",r=i.value,r.length!==0&&console.warn("Memoize should only be used in functions with zero parameters")):typeof i.get=="function"&&(s="get",r=i.get),!r)throw new Error("not supported");let n=`$memoize$${t}`;i[s]=function(...a){return this.hasOwnProperty(n)||Object.defineProperty(this,n,{configurable:!1,enumerable:!1,writable:!1,value:r.apply(this,a)}),this[n]}}var gi;(e=>(e.Tap="-xterm-gesturetap",e.Change="-xterm-gesturechange",e.Start="-xterm-gesturestart",e.End="-xterm-gesturesend",e.Contextmenu="-xterm-gesturecontextmenu"))(gi||(gi={}));var er=class St extends ke{constructor(){super(),this.dispatched=!1,this.targets=new Fa,this.ignoreTargets=new Fa,this.activeTouches={},this.handle=null,this._lastSetTapCountTime=0,this._register(mt.runAndSubscribe(H_,({window:t,disposables:i})=>{i.add(me(t.document,"touchstart",s=>this.onTouchStart(s),{passive:!1})),i.add(me(t.document,"touchend",s=>this.onTouchEnd(t,s))),i.add(me(t.document,"touchmove",s=>this.onTouchMove(s),{passive:!1}))},{window:Li,disposables:this._store}))}static addTarget(t){if(!St.isTouchDevice())return ke.None;St.INSTANCE||(St.INSTANCE=new St);let i=St.INSTANCE.targets.push(t);return $e(i)}static ignoreTarget(t){if(!St.isTouchDevice())return ke.None;St.INSTANCE||(St.INSTANCE=new St);let i=St.INSTANCE.ignoreTargets.push(t);return $e(i)}static isTouchDevice(){return"ontouchstart"in Li||navigator.maxTouchPoints>0}dispose(){this.handle&&(this.handle.dispose(),this.handle=null),super.dispose()}onTouchStart(t){let i=Date.now();this.handle&&(this.handle.dispose(),this.handle=null);for(let s=0,r=t.targetTouches.length;s=St.HOLD_DELAY&&Math.abs(h.initialPageX-Ft(h.rollingPageX))<30&&Math.abs(h.initialPageY-Ft(h.rollingPageY))<30){let c=this.newGestureEvent(gi.Contextmenu,h.initialTarget);c.pageX=Ft(h.rollingPageX),c.pageY=Ft(h.rollingPageY),this.dispatchEvent(c)}else if(r===1){let c=Ft(h.rollingPageX),d=Ft(h.rollingPageY),v=Ft(h.rollingTimestamps)-h.rollingTimestamps[0],u=c-h.rollingPageX[0],g=d-h.rollingPageY[0],_=[...this.targets].filter(f=>h.initialTarget instanceof Node&&f.contains(h.initialTarget));this.inertia(t,_,s,Math.abs(u)/v,u>0?1:-1,c,Math.abs(g)/v,g>0?1:-1,d)}this.dispatchEvent(this.newGestureEvent(gi.End,h.initialTarget)),delete this.activeTouches[o.identifier]}this.dispatched&&(i.preventDefault(),i.stopPropagation(),this.dispatched=!1)}newGestureEvent(t,i){let s=document.createEvent("CustomEvent");return s.initEvent(t,!1,!0),s.initialTarget=i,s.tapCount=0,s}dispatchEvent(t){if(t.type===gi.Tap){let i=new Date().getTime(),s=0;i-this._lastSetTapCountTime>St.CLEAR_TAP_COUNT_TIME?s=1:s=2,this._lastSetTapCountTime=i,t.tapCount=s}else(t.type===gi.Change||t.type===gi.Contextmenu)&&(this._lastSetTapCountTime=0);if(t.initialTarget instanceof Node){for(let s of this.ignoreTargets)if(s.contains(t.initialTarget))return;let i=[];for(let s of this.targets)if(s.contains(t.initialTarget)){let r=0,n=t.initialTarget;for(;n&&n!==s;)r++,n=n.parentElement;i.push([r,s])}i.sort((s,r)=>s[0]-r[0]);for(let[s,r]of i)r.dispatchEvent(t),this.dispatched=!0}}inertia(t,i,s,r,n,a,o,h,l){this.handle=ua(t,()=>{let c=Date.now(),d=c-s,v=0,u=0,g=!0;r+=St.SCROLL_FRICTION*d,o+=St.SCROLL_FRICTION*d,r>0&&(g=!1,v=n*r*d),o>0&&(g=!1,u=h*o*d);let _=this.newGestureEvent(gi.Change);_.translationX=v,_.translationY=u,i.forEach(f=>f.dispatchEvent(_)),g||this.inertia(t,i,c,r,n,a+v,o,h,l+u)})}onTouchMove(t){let i=Date.now();for(let s=0,r=t.changedTouches.length;s3&&(a.rollingPageX.shift(),a.rollingPageY.shift(),a.rollingTimestamps.shift()),a.rollingPageX.push(n.pageX),a.rollingPageY.push(n.pageY),a.rollingTimestamps.push(i)}this.dispatched&&(t.preventDefault(),t.stopPropagation(),this.dispatched=!1)}};er.SCROLL_FRICTION=-.005,er.HOLD_DELAY=700,er.CLEAR_TAP_COUNT_TIME=400,Ye([q_],er,"isTouchDevice",1);var G_=er,_a=class extends ke{onclick(t,i){this._register(me(t,ct.CLICK,s=>i(new Tr(bi(t),s))))}onmousedown(t,i){this._register(me(t,ct.MOUSE_DOWN,s=>i(new Tr(bi(t),s))))}onmouseover(t,i){this._register(me(t,ct.MOUSE_OVER,s=>i(new Tr(bi(t),s))))}onmouseleave(t,i){this._register(me(t,ct.MOUSE_LEAVE,s=>i(new Tr(bi(t),s))))}onkeydown(t,i){this._register(me(t,ct.KEY_DOWN,s=>i(new $a(s))))}onkeyup(t,i){this._register(me(t,ct.KEY_UP,s=>i(new $a(s))))}oninput(t,i){this._register(me(t,ct.INPUT,i))}onblur(t,i){this._register(me(t,ct.BLUR,i))}onfocus(t,i){this._register(me(t,ct.FOCUS,i))}onchange(t,i){this._register(me(t,ct.CHANGE,i))}ignoreGesture(t){return G_.ignoreTarget(t)}},Ya=11,K_=class extends _a{constructor(e){super(),this._onActivate=e.onActivate,this.bgDomNode=document.createElement("div"),this.bgDomNode.className="arrow-background",this.bgDomNode.style.position="absolute",this.bgDomNode.style.width=e.bgWidth+"px",this.bgDomNode.style.height=e.bgHeight+"px",typeof e.top<"u"&&(this.bgDomNode.style.top="0px"),typeof e.left<"u"&&(this.bgDomNode.style.left="0px"),typeof e.bottom<"u"&&(this.bgDomNode.style.bottom="0px"),typeof e.right<"u"&&(this.bgDomNode.style.right="0px"),this.domNode=document.createElement("div"),this.domNode.className=e.className,this.domNode.style.position="absolute",this.domNode.style.width=Ya+"px",this.domNode.style.height=Ya+"px",typeof e.top<"u"&&(this.domNode.style.top=e.top+"px"),typeof e.left<"u"&&(this.domNode.style.left=e.left+"px"),typeof e.bottom<"u"&&(this.domNode.style.bottom=e.bottom+"px"),typeof e.right<"u"&&(this.domNode.style.right=e.right+"px"),this._pointerMoveMonitor=this._register(new Zh),this._register(Ja(this.bgDomNode,ct.POINTER_DOWN,t=>this._arrowPointerDown(t))),this._register(Ja(this.domNode,ct.POINTER_DOWN,t=>this._arrowPointerDown(t))),this._pointerdownRepeatTimer=this._register(new z_),this._pointerdownScheduleRepeatTimer=this._register(new da)}_arrowPointerDown(e){if(!e.target||!(e.target instanceof Element))return;let t=()=>{this._pointerdownRepeatTimer.cancelAndSet(()=>this._onActivate(),1e3/24,bi(e))};this._onActivate(),this._pointerdownRepeatTimer.cancel(),this._pointerdownScheduleRepeatTimer.cancelAndSet(t,200),this._pointerMoveMonitor.startMonitoring(e.target,e.pointerId,e.buttons,i=>{},()=>{this._pointerdownRepeatTimer.cancel(),this._pointerdownScheduleRepeatTimer.cancel()}),e.preventDefault()}},J_=class So{constructor(t,i,s,r,n,a,o){this._forceIntegerValues=t,this._scrollStateBrand=void 0,this._forceIntegerValues&&(i=i|0,s=s|0,r=r|0,n=n|0,a=a|0,o=o|0),this.rawScrollLeft=r,this.rawScrollTop=o,i<0&&(i=0),r+i>s&&(r=s-i),r<0&&(r=0),n<0&&(n=0),o+n>a&&(o=a-n),o<0&&(o=0),this.width=i,this.scrollWidth=s,this.scrollLeft=r,this.height=n,this.scrollHeight=a,this.scrollTop=o}equals(t){return this.rawScrollLeft===t.rawScrollLeft&&this.rawScrollTop===t.rawScrollTop&&this.width===t.width&&this.scrollWidth===t.scrollWidth&&this.scrollLeft===t.scrollLeft&&this.height===t.height&&this.scrollHeight===t.scrollHeight&&this.scrollTop===t.scrollTop}withScrollDimensions(t,i){return new So(this._forceIntegerValues,typeof t.width<"u"?t.width:this.width,typeof t.scrollWidth<"u"?t.scrollWidth:this.scrollWidth,i?this.rawScrollLeft:this.scrollLeft,typeof t.height<"u"?t.height:this.height,typeof t.scrollHeight<"u"?t.scrollHeight:this.scrollHeight,i?this.rawScrollTop:this.scrollTop)}withScrollPosition(t){return new So(this._forceIntegerValues,this.width,this.scrollWidth,typeof t.scrollLeft<"u"?t.scrollLeft:this.rawScrollLeft,this.height,this.scrollHeight,typeof t.scrollTop<"u"?t.scrollTop:this.rawScrollTop)}createScrollEvent(t,i){let s=this.width!==t.width,r=this.scrollWidth!==t.scrollWidth,n=this.scrollLeft!==t.scrollLeft,a=this.height!==t.height,o=this.scrollHeight!==t.scrollHeight,h=this.scrollTop!==t.scrollTop;return{inSmoothScrolling:i,oldWidth:t.width,oldScrollWidth:t.scrollWidth,oldScrollLeft:t.scrollLeft,width:this.width,scrollWidth:this.scrollWidth,scrollLeft:this.scrollLeft,oldHeight:t.height,oldScrollHeight:t.scrollHeight,oldScrollTop:t.scrollTop,height:this.height,scrollHeight:this.scrollHeight,scrollTop:this.scrollTop,widthChanged:s,scrollWidthChanged:r,scrollLeftChanged:n,heightChanged:a,scrollHeightChanged:o,scrollTopChanged:h}}},j_=class extends ke{constructor(e){super(),this._scrollableBrand=void 0,this._onScroll=this._register(new Y),this.onScroll=this._onScroll.event,this._smoothScrollDuration=e.smoothScrollDuration,this._scheduleAtNextAnimationFrame=e.scheduleAtNextAnimationFrame,this._state=new J_(e.forceIntegerValues,0,0,0,0,0,0),this._smoothScrolling=null}dispose(){this._smoothScrolling&&(this._smoothScrolling.dispose(),this._smoothScrolling=null),super.dispose()}setSmoothScrollDuration(e){this._smoothScrollDuration=e}validateScrollPosition(e){return this._state.withScrollPosition(e)}getScrollDimensions(){return this._state}setScrollDimensions(e,t){var s;let i=this._state.withScrollDimensions(e,t);this._setState(i,!!this._smoothScrolling),(s=this._smoothScrolling)==null||s.acceptScrollDimensions(this._state)}getFutureScrollPosition(){return this._smoothScrolling?this._smoothScrolling.to:this._state}getCurrentScrollPosition(){return this._state}setScrollPositionNow(e){let t=this._state.withScrollPosition(e);this._smoothScrolling&&(this._smoothScrolling.dispose(),this._smoothScrolling=null),this._setState(t,!1)}setScrollPositionSmooth(e,t){if(this._smoothScrollDuration===0)return this.setScrollPositionNow(e);if(this._smoothScrolling){e={scrollLeft:typeof e.scrollLeft>"u"?this._smoothScrolling.to.scrollLeft:e.scrollLeft,scrollTop:typeof e.scrollTop>"u"?this._smoothScrolling.to.scrollTop:e.scrollTop};let i=this._state.withScrollPosition(e);if(this._smoothScrolling.to.scrollLeft===i.scrollLeft&&this._smoothScrolling.to.scrollTop===i.scrollTop)return;let s;t?s=new Xa(this._smoothScrolling.from,i,this._smoothScrolling.startTime,this._smoothScrolling.duration):s=this._smoothScrolling.combine(this._state,i,this._smoothScrollDuration),this._smoothScrolling.dispose(),this._smoothScrolling=s}else{let i=this._state.withScrollPosition(e);this._smoothScrolling=Xa.start(this._state,i,this._smoothScrollDuration)}this._smoothScrolling.animationFrameDisposable=this._scheduleAtNextAnimationFrame(()=>{this._smoothScrolling&&(this._smoothScrolling.animationFrameDisposable=null,this._performSmoothScrolling())})}hasPendingScrollAnimation(){return!!this._smoothScrolling}_performSmoothScrolling(){if(!this._smoothScrolling)return;let e=this._smoothScrolling.tick(),t=this._state.withScrollPosition(e);if(this._setState(t,!0),!!this._smoothScrolling){if(e.isDone){this._smoothScrolling.dispose(),this._smoothScrolling=null;return}this._smoothScrolling.animationFrameDisposable=this._scheduleAtNextAnimationFrame(()=>{this._smoothScrolling&&(this._smoothScrolling.animationFrameDisposable=null,this._performSmoothScrolling())})}}_setState(e,t){let i=this._state;i.equals(e)||(this._state=e,this._onScroll.fire(this._state.createScrollEvent(i,t)))}},Va=class{constructor(e,t,i){this.scrollLeft=e,this.scrollTop=t,this.isDone=i}};function Pn(e,t){let i=t-e;return function(s){return e+i*X_(s)}}function Y_(e,t,i){return function(s){return s2.5*s){let r,n;return t{var e;(e=this._domNode)==null||e.setClassName(this._visibleClassName)},0))}_hide(e){var t;this._revealTimer.cancel(),this._isVisible&&(this._isVisible=!1,(t=this._domNode)==null||t.setClassName(this._invisibleClassName+(e?" fade":"")))}},ef=140,ec=class extends _a{constructor(e){super(),this._lazyRender=e.lazyRender,this._host=e.host,this._scrollable=e.scrollable,this._scrollByPage=e.scrollByPage,this._scrollbarState=e.scrollbarState,this._visibilityController=this._register(new Z_(e.visibility,"visible scrollbar "+e.extraScrollbarClassName,"invisible scrollbar "+e.extraScrollbarClassName)),this._visibilityController.setIsNeeded(this._scrollbarState.isNeeded()),this._pointerMoveMonitor=this._register(new Zh),this._shouldRender=!0,this.domNode=hr(document.createElement("div")),this.domNode.setAttribute("role","presentation"),this.domNode.setAttribute("aria-hidden","true"),this._visibilityController.setDomNode(this.domNode),this.domNode.setPosition("absolute"),this._register(me(this.domNode.domNode,ct.POINTER_DOWN,t=>this._domNodePointerDown(t)))}_createArrow(e){let t=this._register(new K_(e));this.domNode.domNode.appendChild(t.bgDomNode),this.domNode.domNode.appendChild(t.domNode)}_createSlider(e,t,i,s){this.slider=hr(document.createElement("div")),this.slider.setClassName("slider"),this.slider.setPosition("absolute"),this.slider.setTop(e),this.slider.setLeft(t),typeof i=="number"&&this.slider.setWidth(i),typeof s=="number"&&this.slider.setHeight(s),this.slider.setLayerHinting(!0),this.slider.setContain("strict"),this.domNode.domNode.appendChild(this.slider.domNode),this._register(me(this.slider.domNode,ct.POINTER_DOWN,r=>{r.button===0&&(r.preventDefault(),this._sliderPointerDown(r))})),this.onclick(this.slider.domNode,r=>{r.leftButton&&r.stopPropagation()})}_onElementSize(e){return this._scrollbarState.setVisibleSize(e)&&(this._visibilityController.setIsNeeded(this._scrollbarState.isNeeded()),this._shouldRender=!0,this._lazyRender||this.render()),this._shouldRender}_onElementScrollSize(e){return this._scrollbarState.setScrollSize(e)&&(this._visibilityController.setIsNeeded(this._scrollbarState.isNeeded()),this._shouldRender=!0,this._lazyRender||this.render()),this._shouldRender}_onElementScrollPosition(e){return this._scrollbarState.setScrollPosition(e)&&(this._visibilityController.setIsNeeded(this._scrollbarState.isNeeded()),this._shouldRender=!0,this._lazyRender||this.render()),this._shouldRender}beginReveal(){this._visibilityController.setShouldBeVisible(!0)}beginHide(){this._visibilityController.setShouldBeVisible(!1)}render(){this._shouldRender&&(this._shouldRender=!1,this._renderDomNode(this._scrollbarState.getRectangleLargeSize(),this._scrollbarState.getRectangleSmallSize()),this._updateSlider(this._scrollbarState.getSliderSize(),this._scrollbarState.getArrowSize()+this._scrollbarState.getSliderPosition()))}_domNodePointerDown(e){e.target===this.domNode.domNode&&this._onPointerDown(e)}delegatePointerDown(e){let t=this.domNode.domNode.getClientRects()[0].top,i=t+this._scrollbarState.getSliderPosition(),s=t+this._scrollbarState.getSliderPosition()+this._scrollbarState.getSliderSize(),r=this._sliderPointerPosition(e);i<=r&&r<=s?e.button===0&&(e.preventDefault(),this._sliderPointerDown(e)):this._onPointerDown(e)}_onPointerDown(e){let t,i;if(e.target===this.domNode.domNode&&typeof e.offsetX=="number"&&typeof e.offsetY=="number")t=e.offsetX,i=e.offsetY;else{let r=U_(this.domNode.domNode);t=e.pageX-r.left,i=e.pageY-r.top}let s=this._pointerDownRelativePosition(t,i);this._setDesiredScrollPositionNow(this._scrollByPage?this._scrollbarState.getDesiredScrollPositionFromOffsetPaged(s):this._scrollbarState.getDesiredScrollPositionFromOffset(s)),e.button===0&&(e.preventDefault(),this._sliderPointerDown(e))}_sliderPointerDown(e){if(!e.target||!(e.target instanceof Element))return;let t=this._sliderPointerPosition(e),i=this._sliderOrthogonalPointerPosition(e),s=this._scrollbarState.clone();this.slider.toggleClassName("active",!0),this._pointerMoveMonitor.startMonitoring(e.target,e.pointerId,e.buttons,r=>{let n=this._sliderOrthogonalPointerPosition(r),a=Math.abs(n-i);if(jh&&a>ef){this._setDesiredScrollPositionNow(s.getScrollPosition());return}let o=this._sliderPointerPosition(r)-t;this._setDesiredScrollPositionNow(s.getDesiredScrollPositionFromDelta(o))},()=>{this.slider.toggleClassName("active",!1),this._host.onDragEnd()}),this._host.onDragStart()}_setDesiredScrollPositionNow(e){let t={};this.writeScrollPosition(t,e),this._scrollable.setScrollPositionNow(t)}updateScrollbarSize(e){this._updateScrollbarSize(e),this._scrollbarState.setScrollbarSize(e),this._shouldRender=!0,this._lazyRender||this.render()}isNeeded(){return this._scrollbarState.isNeeded()}},tc=class xo{constructor(t,i,s,r,n,a){this._scrollbarSize=Math.round(i),this._oppositeScrollbarSize=Math.round(s),this._arrowSize=Math.round(t),this._visibleSize=r,this._scrollSize=n,this._scrollPosition=a,this._computedAvailableSize=0,this._computedIsNeeded=!1,this._computedSliderSize=0,this._computedSliderRatio=0,this._computedSliderPosition=0,this._refreshComputedValues()}clone(){return new xo(this._arrowSize,this._scrollbarSize,this._oppositeScrollbarSize,this._visibleSize,this._scrollSize,this._scrollPosition)}setVisibleSize(t){let i=Math.round(t);return this._visibleSize!==i?(this._visibleSize=i,this._refreshComputedValues(),!0):!1}setScrollSize(t){let i=Math.round(t);return this._scrollSize!==i?(this._scrollSize=i,this._refreshComputedValues(),!0):!1}setScrollPosition(t){let i=Math.round(t);return this._scrollPosition!==i?(this._scrollPosition=i,this._refreshComputedValues(),!0):!1}setScrollbarSize(t){this._scrollbarSize=Math.round(t)}setOppositeScrollbarSize(t){this._oppositeScrollbarSize=Math.round(t)}static _computeValues(t,i,s,r,n){let a=Math.max(0,s-t),o=Math.max(0,a-2*i),h=r>0&&r>s;if(!h)return{computedAvailableSize:Math.round(a),computedIsNeeded:h,computedSliderSize:Math.round(o),computedSliderRatio:0,computedSliderPosition:0};let l=Math.round(Math.max(20,Math.floor(s*o/r))),c=(o-l)/(r-s),d=n*c;return{computedAvailableSize:Math.round(a),computedIsNeeded:h,computedSliderSize:Math.round(l),computedSliderRatio:c,computedSliderPosition:Math.round(d)}}_refreshComputedValues(){let t=xo._computeValues(this._oppositeScrollbarSize,this._arrowSize,this._visibleSize,this._scrollSize,this._scrollPosition);this._computedAvailableSize=t.computedAvailableSize,this._computedIsNeeded=t.computedIsNeeded,this._computedSliderSize=t.computedSliderSize,this._computedSliderRatio=t.computedSliderRatio,this._computedSliderPosition=t.computedSliderPosition}getArrowSize(){return this._arrowSize}getScrollPosition(){return this._scrollPosition}getRectangleLargeSize(){return this._computedAvailableSize}getRectangleSmallSize(){return this._scrollbarSize}isNeeded(){return this._computedIsNeeded}getSliderSize(){return this._computedSliderSize}getSliderPosition(){return this._computedSliderPosition}getDesiredScrollPositionFromOffset(t){if(!this._computedIsNeeded)return 0;let i=t-this._arrowSize-this._computedSliderSize/2;return Math.round(i/this._computedSliderRatio)}getDesiredScrollPositionFromOffsetPaged(t){if(!this._computedIsNeeded)return 0;let i=t-this._arrowSize,s=this._scrollPosition;return i0&&Math.abs(t.deltaY)>0)return 1;let s=.5;if((!this._isAlmostInt(t.deltaX)||!this._isAlmostInt(t.deltaY))&&(s+=.25),i){let r=Math.abs(t.deltaX),n=Math.abs(t.deltaY),a=Math.abs(i.deltaX),o=Math.abs(i.deltaY),h=Math.max(Math.min(r,a),1),l=Math.max(Math.min(n,o),1),c=Math.max(r,a),d=Math.max(n,o);c%h===0&&d%l===0&&(s-=.5)}return Math.min(Math.max(s,0),1)}_isAlmostInt(t){return Math.abs(Math.round(t)-t)<.01}};ko.INSTANCE=new ko;var of=ko,af=class extends _a{constructor(e,t,i){super(),this._onScroll=this._register(new Y),this.onScroll=this._onScroll.event,this._onWillScroll=this._register(new Y),this.onWillScroll=this._onWillScroll.event,this._options=hf(t),this._scrollable=i,this._register(this._scrollable.onScroll(r=>{this._onWillScroll.fire(r),this._onDidScroll(r),this._onScroll.fire(r)}));let s={onMouseWheel:r=>this._onMouseWheel(r),onDragStart:()=>this._onDragStart(),onDragEnd:()=>this._onDragEnd()};this._verticalScrollbar=this._register(new sf(this._scrollable,this._options,s)),this._horizontalScrollbar=this._register(new tf(this._scrollable,this._options,s)),this._domNode=document.createElement("div"),this._domNode.className="xterm-scrollable-element "+this._options.className,this._domNode.setAttribute("role","presentation"),this._domNode.style.position="relative",this._domNode.appendChild(e),this._domNode.appendChild(this._horizontalScrollbar.domNode.domNode),this._domNode.appendChild(this._verticalScrollbar.domNode.domNode),this._options.useShadows?(this._leftShadowDomNode=hr(document.createElement("div")),this._leftShadowDomNode.setClassName("shadow"),this._domNode.appendChild(this._leftShadowDomNode.domNode),this._topShadowDomNode=hr(document.createElement("div")),this._topShadowDomNode.setClassName("shadow"),this._domNode.appendChild(this._topShadowDomNode.domNode),this._topLeftShadowDomNode=hr(document.createElement("div")),this._topLeftShadowDomNode.setClassName("shadow"),this._domNode.appendChild(this._topLeftShadowDomNode.domNode)):(this._leftShadowDomNode=null,this._topShadowDomNode=null,this._topLeftShadowDomNode=null),this._listenOnDomNode=this._options.listenOnDomNode||this._domNode,this._mouseWheelToDispose=[],this._setListeningToMouseWheel(this._options.handleMouseWheel),this.onmouseover(this._listenOnDomNode,r=>this._onMouseOver(r)),this.onmouseleave(this._listenOnDomNode,r=>this._onMouseLeave(r)),this._hideTimeout=this._register(new da),this._isDragging=!1,this._mouseIsOver=!1,this._shouldRender=!0,this._revealOnScroll=!0}get options(){return this._options}dispose(){this._mouseWheelToDispose=As(this._mouseWheelToDispose),super.dispose()}getDomNode(){return this._domNode}getOverviewRulerLayoutInfo(){return{parent:this._domNode,insertBefore:this._verticalScrollbar.domNode.domNode}}delegateVerticalScrollbarPointerDown(e){this._verticalScrollbar.delegatePointerDown(e)}getScrollDimensions(){return this._scrollable.getScrollDimensions()}setScrollDimensions(e){this._scrollable.setScrollDimensions(e,!1)}updateClassName(e){this._options.className=e,Si&&(this._options.className+=" mac"),this._domNode.className="xterm-scrollable-element "+this._options.className}updateOptions(e){typeof e.handleMouseWheel<"u"&&(this._options.handleMouseWheel=e.handleMouseWheel,this._setListeningToMouseWheel(this._options.handleMouseWheel)),typeof e.mouseWheelScrollSensitivity<"u"&&(this._options.mouseWheelScrollSensitivity=e.mouseWheelScrollSensitivity),typeof e.fastScrollSensitivity<"u"&&(this._options.fastScrollSensitivity=e.fastScrollSensitivity),typeof e.scrollPredominantAxis<"u"&&(this._options.scrollPredominantAxis=e.scrollPredominantAxis),typeof e.horizontal<"u"&&(this._options.horizontal=e.horizontal),typeof e.vertical<"u"&&(this._options.vertical=e.vertical),typeof e.horizontalScrollbarSize<"u"&&(this._options.horizontalScrollbarSize=e.horizontalScrollbarSize),typeof e.verticalScrollbarSize<"u"&&(this._options.verticalScrollbarSize=e.verticalScrollbarSize),typeof e.scrollByPage<"u"&&(this._options.scrollByPage=e.scrollByPage),this._horizontalScrollbar.updateOptions(this._options),this._verticalScrollbar.updateOptions(this._options),this._options.lazyRender||this._render()}setRevealOnScroll(e){this._revealOnScroll=e}delegateScrollFromMouseWheelEvent(e){this._onMouseWheel(new Ga(e))}_setListeningToMouseWheel(e){if(this._mouseWheelToDispose.length>0!==e&&(this._mouseWheelToDispose=As(this._mouseWheelToDispose),e)){let t=i=>{this._onMouseWheel(new Ga(i))};this._mouseWheelToDispose.push(me(this._listenOnDomNode,ct.MOUSE_WHEEL,t,{passive:!1}))}}_onMouseWheel(e){var r;if((r=e.browserEvent)!=null&&r.defaultPrevented)return;let t=of.INSTANCE;t.acceptStandardWheelEvent(e);let i=!1;if(e.deltaY||e.deltaX){let n=e.deltaY*this._options.mouseWheelScrollSensitivity,a=e.deltaX*this._options.mouseWheelScrollSensitivity;this._options.scrollPredominantAxis&&(this._options.scrollYToX&&a+n===0?a=n=0:Math.abs(n)>=Math.abs(a)?a=0:n=0),this._options.flipAxes&&([n,a]=[a,n]);let o=!Si&&e.browserEvent&&e.browserEvent.shiftKey;(this._options.scrollYToX||o)&&!a&&(a=n,n=0),e.browserEvent&&e.browserEvent.altKey&&(a=a*this._options.fastScrollSensitivity,n=n*this._options.fastScrollSensitivity);let h=this._scrollable.getFutureScrollPosition(),l={};if(n){let c=Za*n,d=h.scrollTop-(c<0?Math.floor(c):Math.ceil(c));this._verticalScrollbar.writeScrollPosition(l,d)}if(a){let c=Za*a,d=h.scrollLeft-(c<0?Math.floor(c):Math.ceil(c));this._horizontalScrollbar.writeScrollPosition(l,d)}l=this._scrollable.validateScrollPosition(l),(h.scrollLeft!==l.scrollLeft||h.scrollTop!==l.scrollTop)&&(this._options.mouseWheelSmoothScroll&&t.isPhysicalMouseWheel()?this._scrollable.setScrollPositionSmooth(l):this._scrollable.setScrollPositionNow(l),i=!0)}let s=i;!s&&this._options.alwaysConsumeMouseWheel&&(s=!0),!s&&this._options.consumeMouseWheelIfScrollbarIsNeeded&&(this._verticalScrollbar.isNeeded()||this._horizontalScrollbar.isNeeded())&&(s=!0),s&&(e.preventDefault(),e.stopPropagation())}_onDidScroll(e){this._shouldRender=this._horizontalScrollbar.onDidScroll(e)||this._shouldRender,this._shouldRender=this._verticalScrollbar.onDidScroll(e)||this._shouldRender,this._options.useShadows&&(this._shouldRender=!0),this._revealOnScroll&&this._reveal(),this._options.lazyRender||this._render()}renderNow(){if(!this._options.lazyRender)throw new Error("Please use `lazyRender` together with `renderNow`!");this._render()}_render(){if(this._shouldRender&&(this._shouldRender=!1,this._horizontalScrollbar.render(),this._verticalScrollbar.render(),this._options.useShadows)){let e=this._scrollable.getCurrentScrollPosition(),t=e.scrollTop>0,i=e.scrollLeft>0,s=i?" left":"",r=t?" top":"",n=i||t?" top-left-corner":"";this._leftShadowDomNode.setClassName(`shadow${s}`),this._topShadowDomNode.setClassName(`shadow${r}`),this._topLeftShadowDomNode.setClassName(`shadow${n}${r}${s}`)}}_onDragStart(){this._isDragging=!0,this._reveal()}_onDragEnd(){this._isDragging=!1,this._hide()}_onMouseLeave(e){this._mouseIsOver=!1,this._hide()}_onMouseOver(e){this._mouseIsOver=!0,this._reveal()}_reveal(){this._verticalScrollbar.beginReveal(),this._horizontalScrollbar.beginReveal(),this._scheduleHide()}_hide(){!this._mouseIsOver&&!this._isDragging&&(this._verticalScrollbar.beginHide(),this._horizontalScrollbar.beginHide())}_scheduleHide(){!this._mouseIsOver&&!this._isDragging&&this._hideTimeout.cancelAndSet(()=>this._hide(),rf)}},lf=class extends af{constructor(e,t,i){super(e,t,i)}setScrollPosition(e){e.reuseAnimation?this._scrollable.setScrollPositionSmooth(e,e.reuseAnimation):this._scrollable.setScrollPositionNow(e)}getScrollPosition(){return this._scrollable.getCurrentScrollPosition()}};function hf(e){let t={lazyRender:typeof e.lazyRender<"u"?e.lazyRender:!1,className:typeof e.className<"u"?e.className:"",useShadows:typeof e.useShadows<"u"?e.useShadows:!0,handleMouseWheel:typeof e.handleMouseWheel<"u"?e.handleMouseWheel:!0,flipAxes:typeof e.flipAxes<"u"?e.flipAxes:!1,consumeMouseWheelIfScrollbarIsNeeded:typeof e.consumeMouseWheelIfScrollbarIsNeeded<"u"?e.consumeMouseWheelIfScrollbarIsNeeded:!1,alwaysConsumeMouseWheel:typeof e.alwaysConsumeMouseWheel<"u"?e.alwaysConsumeMouseWheel:!1,scrollYToX:typeof e.scrollYToX<"u"?e.scrollYToX:!1,mouseWheelScrollSensitivity:typeof e.mouseWheelScrollSensitivity<"u"?e.mouseWheelScrollSensitivity:1,fastScrollSensitivity:typeof e.fastScrollSensitivity<"u"?e.fastScrollSensitivity:5,scrollPredominantAxis:typeof e.scrollPredominantAxis<"u"?e.scrollPredominantAxis:!0,mouseWheelSmoothScroll:typeof e.mouseWheelSmoothScroll<"u"?e.mouseWheelSmoothScroll:!0,arrowSize:typeof e.arrowSize<"u"?e.arrowSize:11,listenOnDomNode:typeof e.listenOnDomNode<"u"?e.listenOnDomNode:null,horizontal:typeof e.horizontal<"u"?e.horizontal:1,horizontalScrollbarSize:typeof e.horizontalScrollbarSize<"u"?e.horizontalScrollbarSize:10,horizontalSliderSize:typeof e.horizontalSliderSize<"u"?e.horizontalSliderSize:0,horizontalHasArrows:typeof e.horizontalHasArrows<"u"?e.horizontalHasArrows:!1,vertical:typeof e.vertical<"u"?e.vertical:1,verticalScrollbarSize:typeof e.verticalScrollbarSize<"u"?e.verticalScrollbarSize:10,verticalHasArrows:typeof e.verticalHasArrows<"u"?e.verticalHasArrows:!1,verticalSliderSize:typeof e.verticalSliderSize<"u"?e.verticalSliderSize:0,scrollByPage:typeof e.scrollByPage<"u"?e.scrollByPage:!1};return t.horizontalSliderSize=typeof e.horizontalSliderSize<"u"?e.horizontalSliderSize:t.horizontalScrollbarSize,t.verticalSliderSize=typeof e.verticalSliderSize<"u"?e.verticalSliderSize:t.verticalScrollbarSize,Si&&(t.className+=" mac"),t}var Eo=class extends ke{constructor(e,t,i,s,r,n,a,o){super(),this._bufferService=i,this._optionsService=a,this._renderService=o,this._onRequestScrollLines=this._register(new Y),this.onRequestScrollLines=this._onRequestScrollLines.event,this._isSyncing=!1,this._isHandlingScroll=!1,this._suppressOnScrollHandler=!1;let h=this._register(new j_({forceIntegerValues:!1,smoothScrollDuration:this._optionsService.rawOptions.smoothScrollDuration,scheduleAtNextAnimationFrame:l=>ua(s.window,l)}));this._register(this._optionsService.onSpecificOptionChange("smoothScrollDuration",()=>{h.setSmoothScrollDuration(this._optionsService.rawOptions.smoothScrollDuration)})),this._scrollableElement=this._register(new lf(t,{vertical:1,horizontal:2,useShadows:!1,mouseWheelSmoothScroll:!0,...this._getChangeOptions()},h)),this._register(this._optionsService.onMultipleOptionChange(["scrollSensitivity","fastScrollSensitivity","overviewRuler"],()=>this._scrollableElement.updateOptions(this._getChangeOptions()))),this._register(r.onProtocolChange(l=>{this._scrollableElement.updateOptions({handleMouseWheel:!(l&16)})})),this._scrollableElement.setScrollDimensions({height:0,scrollHeight:0}),this._register(mt.runAndSubscribe(n.onChangeColors,()=>{this._scrollableElement.getDomNode().style.backgroundColor=n.colors.background.css})),e.appendChild(this._scrollableElement.getDomNode()),this._register($e(()=>this._scrollableElement.getDomNode().remove())),this._styleElement=s.mainDocument.createElement("style"),t.appendChild(this._styleElement),this._register($e(()=>this._styleElement.remove())),this._register(mt.runAndSubscribe(n.onChangeColors,()=>{this._styleElement.textContent=[".xterm .xterm-scrollable-element > .scrollbar > .slider {",` background: ${n.colors.scrollbarSliderBackground.css};`,"}",".xterm .xterm-scrollable-element > .scrollbar > .slider:hover {",` background: ${n.colors.scrollbarSliderHoverBackground.css};`,"}",".xterm .xterm-scrollable-element > .scrollbar > .slider.active {",` background: ${n.colors.scrollbarSliderActiveBackground.css};`,"}"].join(` +`)})),this._register(this._bufferService.onResize(()=>this.queueSync())),this._register(this._bufferService.buffers.onBufferActivate(()=>{this._latestYDisp=void 0,this.queueSync()})),this._register(this._bufferService.onScroll(()=>this._sync())),this._register(this._scrollableElement.onScroll(l=>this._handleScroll(l)))}scrollLines(e){let t=this._scrollableElement.getScrollPosition();this._scrollableElement.setScrollPosition({reuseAnimation:!0,scrollTop:t.scrollTop+e*this._renderService.dimensions.css.cell.height})}scrollToLine(e,t){t&&(this._latestYDisp=e),this._scrollableElement.setScrollPosition({reuseAnimation:!t,scrollTop:e*this._renderService.dimensions.css.cell.height})}_getChangeOptions(){var e;return{mouseWheelScrollSensitivity:this._optionsService.rawOptions.scrollSensitivity,fastScrollSensitivity:this._optionsService.rawOptions.fastScrollSensitivity,verticalScrollbarSize:((e=this._optionsService.rawOptions.overviewRuler)==null?void 0:e.width)||14}}queueSync(e){e!==void 0&&(this._latestYDisp=e),this._queuedAnimationFrame===void 0&&(this._queuedAnimationFrame=this._renderService.addRefreshCallback(()=>{this._queuedAnimationFrame=void 0,this._sync(this._latestYDisp)}))}_sync(e=this._bufferService.buffer.ydisp){!this._renderService||this._isSyncing||(this._isSyncing=!0,this._suppressOnScrollHandler=!0,this._scrollableElement.setScrollDimensions({height:this._renderService.dimensions.css.canvas.height,scrollHeight:this._renderService.dimensions.css.cell.height*this._bufferService.buffer.lines.length}),this._suppressOnScrollHandler=!1,e!==this._latestYDisp&&this._scrollableElement.setScrollPosition({scrollTop:e*this._renderService.dimensions.css.cell.height}),this._isSyncing=!1)}_handleScroll(e){if(!this._renderService||this._isHandlingScroll||this._suppressOnScrollHandler)return;this._isHandlingScroll=!0;let t=Math.round(e.scrollTop/this._renderService.dimensions.css.cell.height),i=t-this._bufferService.buffer.ydisp;i!==0&&(this._latestYDisp=t,this._onRequestScrollLines.fire(i)),this._isHandlingScroll=!1}};Eo=Ye([te(2,Mt),te(3,Qi),te(4,Ph),te(5,zs),te(6,Lt),te(7,Oi)],Eo);var Bo=class extends ke{constructor(e,t,i,s,r){super(),this._screenElement=e,this._bufferService=t,this._coreBrowserService=i,this._decorationService=s,this._renderService=r,this._decorationElements=new Map,this._altBufferIsActive=!1,this._dimensionsChanged=!1,this._container=document.createElement("div"),this._container.classList.add("xterm-decoration-container"),this._screenElement.appendChild(this._container),this._register(this._renderService.onRenderedViewportChange(()=>this._doRefreshDecorations())),this._register(this._renderService.onDimensionsChange(()=>{this._dimensionsChanged=!0,this._queueRefresh()})),this._register(this._coreBrowserService.onDprChange(()=>this._queueRefresh())),this._register(this._bufferService.buffers.onBufferActivate(()=>{this._altBufferIsActive=this._bufferService.buffer===this._bufferService.buffers.alt})),this._register(this._decorationService.onDecorationRegistered(()=>this._queueRefresh())),this._register(this._decorationService.onDecorationRemoved(n=>this._removeDecoration(n))),this._register($e(()=>{this._container.remove(),this._decorationElements.clear()}))}_queueRefresh(){this._animationFrame===void 0&&(this._animationFrame=this._renderService.addRefreshCallback(()=>{this._doRefreshDecorations(),this._animationFrame=void 0}))}_doRefreshDecorations(){for(let e of this._decorationService.decorations)this._renderDecoration(e);this._dimensionsChanged=!1}_renderDecoration(e){this._refreshStyle(e),this._dimensionsChanged&&this._refreshXPosition(e)}_createElement(e){var s;let t=this._coreBrowserService.mainDocument.createElement("div");t.classList.add("xterm-decoration"),t.classList.toggle("xterm-decoration-top-layer",((s=e==null?void 0:e.options)==null?void 0:s.layer)==="top"),t.style.width=`${Math.round((e.options.width||1)*this._renderService.dimensions.css.cell.width)}px`,t.style.height=`${(e.options.height||1)*this._renderService.dimensions.css.cell.height}px`,t.style.top=`${(e.marker.line-this._bufferService.buffers.active.ydisp)*this._renderService.dimensions.css.cell.height}px`,t.style.lineHeight=`${this._renderService.dimensions.css.cell.height}px`;let i=e.options.x??0;return i&&i>this._bufferService.cols&&(t.style.display="none"),this._refreshXPosition(e,t),t}_refreshStyle(e){let t=e.marker.line-this._bufferService.buffers.active.ydisp;if(t<0||t>=this._bufferService.rows)e.element&&(e.element.style.display="none",e.onRenderEmitter.fire(e.element));else{let i=this._decorationElements.get(e);i||(i=this._createElement(e),e.element=i,this._decorationElements.set(e,i),this._container.appendChild(i),e.onDispose(()=>{this._decorationElements.delete(e),i.remove()})),i.style.display=this._altBufferIsActive?"none":"block",this._altBufferIsActive||(i.style.width=`${Math.round((e.options.width||1)*this._renderService.dimensions.css.cell.width)}px`,i.style.height=`${(e.options.height||1)*this._renderService.dimensions.css.cell.height}px`,i.style.top=`${t*this._renderService.dimensions.css.cell.height}px`,i.style.lineHeight=`${this._renderService.dimensions.css.cell.height}px`),e.onRenderEmitter.fire(i)}}_refreshXPosition(e,t=e.element){if(!t)return;let i=e.options.x??0;(e.options.anchor||"left")==="right"?t.style.right=i?`${i*this._renderService.dimensions.css.cell.width}px`:"":t.style.left=i?`${i*this._renderService.dimensions.css.cell.width}px`:""}_removeDecoration(e){var t;(t=this._decorationElements.get(e))==null||t.remove(),this._decorationElements.delete(e),e.dispose()}};Bo=Ye([te(1,Mt),te(2,Qi),te(3,Br),te(4,Oi)],Bo);var cf=class{constructor(){this._zones=[],this._zonePool=[],this._zonePoolIndex=0,this._linePadding={full:0,left:0,center:0,right:0}}get zones(){return this._zonePool.length=Math.min(this._zonePool.length,this._zones.length),this._zones}clear(){this._zones.length=0,this._zonePoolIndex=0}addDecoration(e){if(e.options.overviewRulerOptions){for(let t of this._zones)if(t.color===e.options.overviewRulerOptions.color&&t.position===e.options.overviewRulerOptions.position){if(this._lineIntersectsZone(t,e.marker.line))return;if(this._lineAdjacentToZone(t,e.marker.line,e.options.overviewRulerOptions.position)){this._addLineToZone(t,e.marker.line);return}}if(this._zonePoolIndex=e.startBufferLine&&t<=e.endBufferLine}_lineAdjacentToZone(e,t,i){return t>=e.startBufferLine-this._linePadding[i||"full"]&&t<=e.endBufferLine+this._linePadding[i||"full"]}_addLineToZone(e,t){e.startBufferLine=Math.min(e.startBufferLine,t),e.endBufferLine=Math.max(e.endBufferLine,t)}},fi={full:0,left:0,center:0,right:0},zi={full:0,left:0,center:0,right:0},$s={full:0,left:0,center:0,right:0},rn=class extends ke{constructor(e,t,i,s,r,n,a,o){var l;super(),this._viewportElement=e,this._screenElement=t,this._bufferService=i,this._decorationService=s,this._renderService=r,this._optionsService=n,this._themeService=a,this._coreBrowserService=o,this._colorZoneStore=new cf,this._shouldUpdateDimensions=!0,this._shouldUpdateAnchor=!0,this._lastKnownBufferLength=0,this._canvas=this._coreBrowserService.mainDocument.createElement("canvas"),this._canvas.classList.add("xterm-decoration-overview-ruler"),this._refreshCanvasDimensions(),(l=this._viewportElement.parentElement)==null||l.insertBefore(this._canvas,this._viewportElement),this._register($e(()=>{var c;return(c=this._canvas)==null?void 0:c.remove()}));let h=this._canvas.getContext("2d");if(h)this._ctx=h;else throw new Error("Ctx cannot be null");this._register(this._decorationService.onDecorationRegistered(()=>this._queueRefresh(void 0,!0))),this._register(this._decorationService.onDecorationRemoved(()=>this._queueRefresh(void 0,!0))),this._register(this._renderService.onRenderedViewportChange(()=>this._queueRefresh())),this._register(this._bufferService.buffers.onBufferActivate(()=>{this._canvas.style.display=this._bufferService.buffer===this._bufferService.buffers.alt?"none":"block"})),this._register(this._bufferService.onScroll(()=>{this._lastKnownBufferLength!==this._bufferService.buffers.normal.lines.length&&(this._refreshDrawHeightConstants(),this._refreshColorZonePadding())})),this._register(this._renderService.onRender(()=>{(!this._containerHeight||this._containerHeight!==this._screenElement.clientHeight)&&(this._queueRefresh(!0),this._containerHeight=this._screenElement.clientHeight)})),this._register(this._coreBrowserService.onDprChange(()=>this._queueRefresh(!0))),this._register(this._optionsService.onSpecificOptionChange("overviewRuler",()=>this._queueRefresh(!0))),this._register(this._themeService.onChangeColors(()=>this._queueRefresh())),this._queueRefresh(!0)}get _width(){var e;return((e=this._optionsService.options.overviewRuler)==null?void 0:e.width)||0}_refreshDrawConstants(){let e=Math.floor((this._canvas.width-1)/3),t=Math.ceil((this._canvas.width-1)/3);zi.full=this._canvas.width,zi.left=e,zi.center=t,zi.right=e,this._refreshDrawHeightConstants(),$s.full=1,$s.left=1,$s.center=1+zi.left,$s.right=1+zi.left+zi.center}_refreshDrawHeightConstants(){fi.full=Math.round(2*this._coreBrowserService.dpr);let e=this._canvas.height/this._bufferService.buffer.lines.length,t=Math.round(Math.max(Math.min(e,12),6)*this._coreBrowserService.dpr);fi.left=t,fi.center=t,fi.right=t}_refreshColorZonePadding(){this._colorZoneStore.setPadding({full:Math.floor(this._bufferService.buffers.active.lines.length/(this._canvas.height-1)*fi.full),left:Math.floor(this._bufferService.buffers.active.lines.length/(this._canvas.height-1)*fi.left),center:Math.floor(this._bufferService.buffers.active.lines.length/(this._canvas.height-1)*fi.center),right:Math.floor(this._bufferService.buffers.active.lines.length/(this._canvas.height-1)*fi.right)}),this._lastKnownBufferLength=this._bufferService.buffers.normal.lines.length}_refreshCanvasDimensions(){this._canvas.style.width=`${this._width}px`,this._canvas.width=Math.round(this._width*this._coreBrowserService.dpr),this._canvas.style.height=`${this._screenElement.clientHeight}px`,this._canvas.height=Math.round(this._screenElement.clientHeight*this._coreBrowserService.dpr),this._refreshDrawConstants(),this._refreshColorZonePadding()}_refreshDecorations(){this._shouldUpdateDimensions&&this._refreshCanvasDimensions(),this._ctx.clearRect(0,0,this._canvas.width,this._canvas.height),this._colorZoneStore.clear();for(let t of this._decorationService.decorations)this._colorZoneStore.addDecoration(t);this._ctx.lineWidth=1,this._renderRulerOutline();let e=this._colorZoneStore.zones;for(let t of e)t.position!=="full"&&this._renderColorZone(t);for(let t of e)t.position==="full"&&this._renderColorZone(t);this._shouldUpdateDimensions=!1,this._shouldUpdateAnchor=!1}_renderRulerOutline(){this._ctx.fillStyle=this._themeService.colors.overviewRulerBorder.css,this._ctx.fillRect(0,0,1,this._canvas.height),this._optionsService.rawOptions.overviewRuler.showTopBorder&&this._ctx.fillRect(1,0,this._canvas.width-1,1),this._optionsService.rawOptions.overviewRuler.showBottomBorder&&this._ctx.fillRect(1,this._canvas.height-1,this._canvas.width-1,this._canvas.height)}_renderColorZone(e){this._ctx.fillStyle=e.color,this._ctx.fillRect($s[e.position||"full"],Math.round((this._canvas.height-1)*(e.startBufferLine/this._bufferService.buffers.active.lines.length)-fi[e.position||"full"]/2),zi[e.position||"full"],Math.round((this._canvas.height-1)*((e.endBufferLine-e.startBufferLine)/this._bufferService.buffers.active.lines.length)+fi[e.position||"full"]))}_queueRefresh(e,t){this._shouldUpdateDimensions=e||this._shouldUpdateDimensions,this._shouldUpdateAnchor=t||this._shouldUpdateAnchor,this._animationFrame===void 0&&(this._animationFrame=this._coreBrowserService.window.requestAnimationFrame(()=>{this._refreshDecorations(),this._animationFrame=void 0}))}};rn=Ye([te(2,Mt),te(3,Br),te(4,Oi),te(5,Lt),te(6,zs),te(7,Qi)],rn);var q;(e=>(e.NUL="\0",e.SOH="",e.STX="",e.ETX="",e.EOT="",e.ENQ="",e.ACK="",e.BEL="\x07",e.BS="\b",e.HT=" ",e.LF=` +`,e.VT="\v",e.FF="\f",e.CR="\r",e.SO="",e.SI="",e.DLE="",e.DC1="",e.DC2="",e.DC3="",e.DC4="",e.NAK="",e.SYN="",e.ETB="",e.CAN="",e.EM="",e.SUB="",e.ESC="\x1B",e.FS="",e.GS="",e.RS="",e.US="",e.SP=" ",e.DEL=""))(q||(q={}));var Jr;(e=>(e.PAD="€",e.HOP="",e.BPH="‚",e.NBH="ƒ",e.IND="„",e.NEL="…",e.SSA="†",e.ESA="‡",e.HTS="ˆ",e.HTJ="‰",e.VTS="Š",e.PLD="‹",e.PLU="Œ",e.RI="",e.SS2="Ž",e.SS3="",e.DCS="",e.PU1="‘",e.PU2="’",e.STS="“",e.CCH="”",e.MW="•",e.SPA="–",e.EPA="—",e.SOS="˜",e.SGCI="™",e.SCI="š",e.CSI="›",e.ST="œ",e.OSC="",e.PM="ž",e.APC="Ÿ"))(Jr||(Jr={}));var ic;(e=>e.ST=`${q.ESC}\\`)(ic||(ic={}));var Io=class{constructor(e,t,i,s,r,n){this._textarea=e,this._compositionView=t,this._bufferService=i,this._optionsService=s,this._coreService=r,this._renderService=n,this._isComposing=!1,this._isSendingComposition=!1,this._compositionPosition={start:0,end:0},this._dataAlreadySent=""}get isComposing(){return this._isComposing}compositionstart(){this._isComposing=!0,this._compositionPosition.start=this._textarea.value.length,this._compositionView.textContent="",this._dataAlreadySent="",this._compositionView.classList.add("active")}compositionupdate(e){this._compositionView.textContent=e.data,this.updateCompositionElements(),setTimeout(()=>{this._compositionPosition.end=this._textarea.value.length},0)}compositionend(){this._finalizeComposition(!0)}keydown(e){if(this._isComposing||this._isSendingComposition){if(e.keyCode===20||e.keyCode===229||e.keyCode===16||e.keyCode===17||e.keyCode===18)return!1;this._finalizeComposition(!1)}return e.keyCode===229?(this._handleAnyTextareaChanges(),!1):!0}_finalizeComposition(e){if(this._compositionView.classList.remove("active"),this._isComposing=!1,e){let t={start:this._compositionPosition.start,end:this._compositionPosition.end};this._isSendingComposition=!0,setTimeout(()=>{if(this._isSendingComposition){this._isSendingComposition=!1;let i;t.start+=this._dataAlreadySent.length,this._isComposing?i=this._textarea.value.substring(t.start,this._compositionPosition.start):i=this._textarea.value.substring(t.start),i.length>0&&this._coreService.triggerDataEvent(i,!0)}},0)}else{this._isSendingComposition=!1;let t=this._textarea.value.substring(this._compositionPosition.start,this._compositionPosition.end);this._coreService.triggerDataEvent(t,!0)}}_handleAnyTextareaChanges(){let e=this._textarea.value;setTimeout(()=>{if(!this._isComposing){let t=this._textarea.value,i=t.replace(e,"");this._dataAlreadySent=i,t.length>e.length?this._coreService.triggerDataEvent(i,!0):t.lengththis.updateCompositionElements(!0),0)}}};Io=Ye([te(2,Mt),te(3,Lt),te(4,bs),te(5,Oi)],Io);var dt=0,ut=0,_t=0,je=0,el={css:"#00000000",rgba:0},it;(e=>{function t(r,n,a,o){return o!==void 0?`#${ts(r)}${ts(n)}${ts(a)}${ts(o)}`:`#${ts(r)}${ts(n)}${ts(a)}`}e.toCss=t;function i(r,n,a,o=255){return(r<<24|n<<16|a<<8|o)>>>0}e.toRgba=i;function s(r,n,a,o){return{css:e.toCss(r,n,a,o),rgba:e.toRgba(r,n,a,o)}}e.toColor=s})(it||(it={}));var ze;(e=>{function t(h,l){if(je=(l.rgba&255)/255,je===1)return{css:l.css,rgba:l.rgba};let c=l.rgba>>24&255,d=l.rgba>>16&255,v=l.rgba>>8&255,u=h.rgba>>24&255,g=h.rgba>>16&255,_=h.rgba>>8&255;dt=u+Math.round((c-u)*je),ut=g+Math.round((d-g)*je),_t=_+Math.round((v-_)*je);let f=it.toCss(dt,ut,_t),A=it.toRgba(dt,ut,_t);return{css:f,rgba:A}}e.blend=t;function i(h){return(h.rgba&255)===255}e.isOpaque=i;function s(h,l,c){let d=jr.ensureContrastRatio(h.rgba,l.rgba,c);if(d)return it.toColor(d>>24&255,d>>16&255,d>>8&255)}e.ensureContrastRatio=s;function r(h){let l=(h.rgba|255)>>>0;return[dt,ut,_t]=jr.toChannels(l),{css:it.toCss(dt,ut,_t),rgba:l}}e.opaque=r;function n(h,l){return je=Math.round(l*255),[dt,ut,_t]=jr.toChannels(h.rgba),{css:it.toCss(dt,ut,_t,je),rgba:it.toRgba(dt,ut,_t,je)}}e.opacity=n;function a(h,l){return je=h.rgba&255,n(h,je*l/255)}e.multiplyOpacity=a;function o(h){return[h.rgba>>24&255,h.rgba>>16&255,h.rgba>>8&255]}e.toColorRGB=o})(ze||(ze={}));var Ge;(e=>{let t,i;try{let r=document.createElement("canvas");r.width=1,r.height=1;let n=r.getContext("2d",{willReadFrequently:!0});n&&(t=n,t.globalCompositeOperation="copy",i=t.createLinearGradient(0,0,1,1))}catch{}function s(r){if(r.match(/#[\da-f]{3,8}/i))switch(r.length){case 4:return dt=parseInt(r.slice(1,2).repeat(2),16),ut=parseInt(r.slice(2,3).repeat(2),16),_t=parseInt(r.slice(3,4).repeat(2),16),it.toColor(dt,ut,_t);case 5:return dt=parseInt(r.slice(1,2).repeat(2),16),ut=parseInt(r.slice(2,3).repeat(2),16),_t=parseInt(r.slice(3,4).repeat(2),16),je=parseInt(r.slice(4,5).repeat(2),16),it.toColor(dt,ut,_t,je);case 7:return{css:r,rgba:(parseInt(r.slice(1),16)<<8|255)>>>0};case 9:return{css:r,rgba:parseInt(r.slice(1),16)>>>0}}let n=r.match(/rgba?\(\s*(\d{1,3})\s*,\s*(\d{1,3})\s*,\s*(\d{1,3})\s*(,\s*(0|1|\d?\.(\d+))\s*)?\)/);if(n)return dt=parseInt(n[1]),ut=parseInt(n[2]),_t=parseInt(n[3]),je=Math.round((n[5]===void 0?1:parseFloat(n[5]))*255),it.toColor(dt,ut,_t,je);if(!t||!i)throw new Error("css.toColor: Unsupported css format");if(t.fillStyle=i,t.fillStyle=r,typeof t.fillStyle!="string")throw new Error("css.toColor: Unsupported css format");if(t.fillRect(0,0,1,1),[dt,ut,_t,je]=t.getImageData(0,0,1,1).data,je!==255)throw new Error("css.toColor: Unsupported css format");return{rgba:it.toRgba(dt,ut,_t,je),css:r}}e.toColor=s})(Ge||(Ge={}));var Et;(e=>{function t(s){return i(s>>16&255,s>>8&255,s&255)}e.relativeLuminance=t;function i(s,r,n){let a=s/255,o=r/255,h=n/255,l=a<=.03928?a/12.92:Math.pow((a+.055)/1.055,2.4),c=o<=.03928?o/12.92:Math.pow((o+.055)/1.055,2.4),d=h<=.03928?h/12.92:Math.pow((h+.055)/1.055,2.4);return l*.2126+c*.7152+d*.0722}e.relativeLuminance2=i})(Et||(Et={}));var jr;(e=>{function t(a,o){if(je=(o&255)/255,je===1)return o;let h=o>>24&255,l=o>>16&255,c=o>>8&255,d=a>>24&255,v=a>>16&255,u=a>>8&255;return dt=d+Math.round((h-d)*je),ut=v+Math.round((l-v)*je),_t=u+Math.round((c-u)*je),it.toRgba(dt,ut,_t)}e.blend=t;function i(a,o,h){let l=Et.relativeLuminance(a>>8),c=Et.relativeLuminance(o>>8);if(Ei(l,c)>8));if(g>8));return g>f?u:_}return u}let d=r(a,o,h),v=Ei(l,Et.relativeLuminance(d>>8));if(v>8));return v>g?d:u}return d}}e.ensureContrastRatio=i;function s(a,o,h){let l=a>>24&255,c=a>>16&255,d=a>>8&255,v=o>>24&255,u=o>>16&255,g=o>>8&255,_=Ei(Et.relativeLuminance2(v,u,g),Et.relativeLuminance2(l,c,d));for(;_0||u>0||g>0);)v-=Math.max(0,Math.ceil(v*.1)),u-=Math.max(0,Math.ceil(u*.1)),g-=Math.max(0,Math.ceil(g*.1)),_=Ei(Et.relativeLuminance2(v,u,g),Et.relativeLuminance2(l,c,d));return(v<<24|u<<16|g<<8|255)>>>0}e.reduceLuminance=s;function r(a,o,h){let l=a>>24&255,c=a>>16&255,d=a>>8&255,v=o>>24&255,u=o>>16&255,g=o>>8&255,_=Ei(Et.relativeLuminance2(v,u,g),Et.relativeLuminance2(l,c,d));for(;_>>0}e.increaseLuminance=r;function n(a){return[a>>24&255,a>>16&255,a>>8&255,a&255]}e.toChannels=n})(jr||(jr={}));function ts(e){let t=e.toString(16);return t.length<2?"0"+t:t}function Ei(e,t){return e1){let c=this._getJoinedRanges(s,a,n,t,r);for(let d=0;d1){let l=this._getJoinedRanges(s,a,n,t,r);for(let c=0;c=D,L=B,I=this._workCell;if(v.length>0&&B===v[0][0]&&O){let N=v.shift(),K=this._isCellInSelection(N[0],t);for(x=N[0]+1;x=N[1]),O?(Q=!0,I=new df(this._workCell,e.translateToString(!0,N[0],N[1]),N[1]-N[0]),L=N[1]-1,T=I.getWidth()):D=N[1]}let F=this._isCellInSelection(B,t),U=i&&B===n,re=k&&B>=l&&B<=c,ge=!1;this._decorationService.forEachDecorationAtCell(B,t,void 0,N=>{ge=!0});let he=I.getChars()||ji;if(he===" "&&(I.isUnderline()||I.isOverline())&&(he=" "),b=T*o-h.get(he,I.isBold(),I.isItalic()),!_)_=this._document.createElement("span");else if(f&&(F&&E||!F&&!E&&I.bg===S)&&(F&&E&&u.selectionForeground||I.fg===w)&&I.extended.ext===y&&re===m&&b===C&&!U&&!Q&&!ge&&O){I.isInvisible()?A+=ji:A+=he,f++;continue}else f&&(_.textContent=A),_=this._document.createElement("span"),f=0,A="";if(S=I.bg,w=I.fg,y=I.extended.ext,m=re,C=b,E=F,Q&&n>=B&&n<=L&&(n=B),!this._coreService.isCursorHidden&&U&&this._coreService.isCursorInitialized){if(M.push("xterm-cursor"),this._coreBrowserService.isFocused)a&&M.push("xterm-cursor-blink"),M.push(s==="bar"?"xterm-cursor-bar":s==="underline"?"xterm-cursor-underline":"xterm-cursor-block");else if(r)switch(r){case"outline":M.push("xterm-cursor-outline");break;case"block":M.push("xterm-cursor-block");break;case"bar":M.push("xterm-cursor-bar");break;case"underline":M.push("xterm-cursor-underline");break}}if(I.isBold()&&M.push("xterm-bold"),I.isItalic()&&M.push("xterm-italic"),I.isDim()&&M.push("xterm-dim"),I.isInvisible()?A=ji:A=I.getChars()||ji,I.isUnderline()&&(M.push(`xterm-underline-${I.extended.underlineStyle}`),A===" "&&(A=" "),!I.isUnderlineColorDefault()))if(I.isUnderlineColorRGB())_.style.textDecorationColor=`rgb(${Er.toColorRGB(I.getUnderlineColor()).join(",")})`;else{let N=I.getUnderlineColor();this._optionsService.rawOptions.drawBoldTextInBrightColors&&I.isBold()&&N<8&&(N+=8),_.style.textDecorationColor=u.ansi[N].css}I.isOverline()&&(M.push("xterm-overline"),A===" "&&(A=" ")),I.isStrikethrough()&&M.push("xterm-strikethrough"),re&&(_.style.textDecoration="underline");let ne=I.getFgColor(),we=I.getFgColorMode(),_e=I.getBgColor(),X=I.getBgColorMode(),ie=!!I.isInverse();if(ie){let N=ne;ne=_e,_e=N;let K=we;we=X,X=K}let oe,Z,j=!1;this._decorationService.forEachDecorationAtCell(B,t,void 0,N=>{N.options.layer!=="top"&&j||(N.backgroundColorRGB&&(X=50331648,_e=N.backgroundColorRGB.rgba>>8&16777215,oe=N.backgroundColorRGB),N.foregroundColorRGB&&(we=50331648,ne=N.foregroundColorRGB.rgba>>8&16777215,Z=N.foregroundColorRGB),j=N.options.layer==="top")}),!j&&F&&(oe=this._coreBrowserService.isFocused?u.selectionBackgroundOpaque:u.selectionInactiveBackgroundOpaque,_e=oe.rgba>>8&16777215,X=50331648,j=!0,u.selectionForeground&&(we=50331648,ne=u.selectionForeground.rgba>>8&16777215,Z=u.selectionForeground)),j&&M.push("xterm-decoration-top");let H;switch(X){case 16777216:case 33554432:H=u.ansi[_e],M.push(`xterm-bg-${_e}`);break;case 50331648:H=it.toColor(_e>>16,_e>>8&255,_e&255),this._addStyle(_,`background-color:#${tl((_e>>>0).toString(16),"0",6)}`);break;case 0:default:ie?(H=u.foreground,M.push("xterm-bg-257")):H=u.background}switch(oe||I.isDim()&&(oe=ze.multiplyOpacity(H,.5)),we){case 16777216:case 33554432:I.isBold()&&ne<8&&this._optionsService.rawOptions.drawBoldTextInBrightColors&&(ne+=8),this._applyMinimumContrast(_,H,u.ansi[ne],I,oe,void 0)||M.push(`xterm-fg-${ne}`);break;case 50331648:let N=it.toColor(ne>>16&255,ne>>8&255,ne&255);this._applyMinimumContrast(_,H,N,I,oe,Z)||this._addStyle(_,`color:#${tl(ne.toString(16),"0",6)}`);break;case 0:default:this._applyMinimumContrast(_,H,u.foreground,I,oe,Z)||ie&&M.push("xterm-fg-257")}M.length&&(_.className=M.join(" "),M.length=0),!U&&!Q&&!ge&&O?f++:_.textContent=A,b!==this.defaultSpacing&&(_.style.letterSpacing=`${b}px`),d.push(_),B=L}return _&&f&&(_.textContent=A),d}_applyMinimumContrast(e,t,i,s,r,n){if(this._optionsService.rawOptions.minimumContrastRatio===1||ff(s.getCode()))return!1;let a=this._getContrastCache(s),o;if(!r&&!n&&(o=a.getColor(t.rgba,i.rgba)),o===void 0){let h=this._optionsService.rawOptions.minimumContrastRatio/(s.isDim()?2:1);o=ze.ensureContrastRatio(r||t,n||i,h),a.setColor((r||t).rgba,(n||i).rgba,o??null)}return o?(this._addStyle(e,`color:${o.css}`),!0):!1}_getContrastCache(e){return e.isDim()?this._themeService.colors.halfContrastCache:this._themeService.colors.contrastCache}_addStyle(e,t){e.setAttribute("style",`${e.getAttribute("style")||""}${t};`)}_isCellInSelection(e,t){let i=this._selectionStart,s=this._selectionEnd;return!i||!s?!1:this._columnSelectMode?i[0]<=s[0]?e>=i[0]&&t>=i[1]&&e=i[1]&&e>=s[0]&&t<=s[1]:t>i[1]&&t=i[0]&&e=i[0]}};Do=Ye([te(1,Nh),te(2,Lt),te(3,Qi),te(4,bs),te(5,Br),te(6,zs)],Do);function tl(e,t,i){for(;e.length0&&(this._flat[s]=a),a}let r=e;t&&(r+="B"),i&&(r+="I");let n=this._holey.get(r);if(n===void 0){let a=0;t&&(a|=1),i&&(a|=2),n=this._measure(e,a),n>0&&this._holey.set(r,n)}return n}_measure(e,t){let i=this._measureElements[t];return i.textContent=e.repeat(32),i.offsetWidth/32}},pf=class{constructor(){this.clear()}clear(){this.hasSelection=!1,this.columnSelectMode=!1,this.viewportStartRow=0,this.viewportEndRow=0,this.viewportCappedStartRow=0,this.viewportCappedEndRow=0,this.startCol=0,this.endCol=0,this.selectionStart=void 0,this.selectionEnd=void 0}update(e,t,i,s=!1){if(this.selectionStart=t,this.selectionEnd=i,!t||!i||t[0]===i[0]&&t[1]===i[1]){this.clear();return}let r=e.buffers.active.ydisp,n=t[1]-r,a=i[1]-r,o=Math.max(n,0),h=Math.min(a,e.rows-1);if(o>=e.rows||h<0){this.clear();return}this.hasSelection=!0,this.columnSelectMode=s,this.viewportStartRow=n,this.viewportEndRow=a,this.viewportCappedStartRow=o,this.viewportCappedEndRow=h,this.startCol=t[0],this.endCol=i[0]}isCellSelected(e,t,i){return this.hasSelection?(i-=e.buffer.active.viewportY,this.columnSelectMode?this.startCol<=this.endCol?t>=this.startCol&&i>=this.viewportCappedStartRow&&t=this.viewportCappedStartRow&&t>=this.endCol&&i<=this.viewportCappedEndRow:i>this.viewportStartRow&&i=this.startCol&&t=this.startCol):!1}};function mf(){return new pf}var Qn="xterm-dom-renderer-owner-",Jt="xterm-rows",Qr="xterm-fg-",il="xterm-bg-",qs="xterm-focus",Or="xterm-selection",Af=1,Mo=class extends ke{constructor(e,t,i,s,r,n,a,o,h,l,c,d,v,u){super(),this._terminal=e,this._document=t,this._element=i,this._screenElement=s,this._viewportElement=r,this._helperContainer=n,this._linkifier2=a,this._charSizeService=h,this._optionsService=l,this._bufferService=c,this._coreService=d,this._coreBrowserService=v,this._themeService=u,this._terminalClass=Af++,this._rowElements=[],this._selectionRenderModel=mf(),this.onRequestRedraw=this._register(new Y).event,this._rowContainer=this._document.createElement("div"),this._rowContainer.classList.add(Jt),this._rowContainer.style.lineHeight="normal",this._rowContainer.setAttribute("aria-hidden","true"),this._refreshRowElements(this._bufferService.cols,this._bufferService.rows),this._selectionContainer=this._document.createElement("div"),this._selectionContainer.classList.add(Or),this._selectionContainer.setAttribute("aria-hidden","true"),this.dimensions=vf(),this._updateDimensions(),this._register(this._optionsService.onOptionChange(()=>this._handleOptionsChanged())),this._register(this._themeService.onChangeColors(g=>this._injectCss(g))),this._injectCss(this._themeService.colors),this._rowFactory=o.createInstance(Do,document),this._element.classList.add(Qn+this._terminalClass),this._screenElement.appendChild(this._rowContainer),this._screenElement.appendChild(this._selectionContainer),this._register(this._linkifier2.onShowLinkUnderline(g=>this._handleLinkHover(g))),this._register(this._linkifier2.onHideLinkUnderline(g=>this._handleLinkLeave(g))),this._register($e(()=>{this._element.classList.remove(Qn+this._terminalClass),this._rowContainer.remove(),this._selectionContainer.remove(),this._widthCache.dispose(),this._themeStyleElement.remove(),this._dimensionsStyleElement.remove()})),this._widthCache=new gf(this._document,this._helperContainer),this._widthCache.setFont(this._optionsService.rawOptions.fontFamily,this._optionsService.rawOptions.fontSize,this._optionsService.rawOptions.fontWeight,this._optionsService.rawOptions.fontWeightBold),this._setDefaultSpacing()}_updateDimensions(){let e=this._coreBrowserService.dpr;this.dimensions.device.char.width=this._charSizeService.width*e,this.dimensions.device.char.height=Math.ceil(this._charSizeService.height*e),this.dimensions.device.cell.width=this.dimensions.device.char.width+Math.round(this._optionsService.rawOptions.letterSpacing),this.dimensions.device.cell.height=Math.floor(this.dimensions.device.char.height*this._optionsService.rawOptions.lineHeight),this.dimensions.device.char.left=0,this.dimensions.device.char.top=0,this.dimensions.device.canvas.width=this.dimensions.device.cell.width*this._bufferService.cols,this.dimensions.device.canvas.height=this.dimensions.device.cell.height*this._bufferService.rows,this.dimensions.css.canvas.width=Math.round(this.dimensions.device.canvas.width/e),this.dimensions.css.canvas.height=Math.round(this.dimensions.device.canvas.height/e),this.dimensions.css.cell.width=this.dimensions.css.canvas.width/this._bufferService.cols,this.dimensions.css.cell.height=this.dimensions.css.canvas.height/this._bufferService.rows;for(let i of this._rowElements)i.style.width=`${this.dimensions.css.canvas.width}px`,i.style.height=`${this.dimensions.css.cell.height}px`,i.style.lineHeight=`${this.dimensions.css.cell.height}px`,i.style.overflow="hidden";this._dimensionsStyleElement||(this._dimensionsStyleElement=this._document.createElement("style"),this._screenElement.appendChild(this._dimensionsStyleElement));let t=`${this._terminalSelector} .${Jt} span { display: inline-block; height: 100%; vertical-align: top;}`;this._dimensionsStyleElement.textContent=t,this._selectionContainer.style.height=this._viewportElement.style.height,this._screenElement.style.width=`${this.dimensions.css.canvas.width}px`,this._screenElement.style.height=`${this.dimensions.css.canvas.height}px`}_injectCss(e){this._themeStyleElement||(this._themeStyleElement=this._document.createElement("style"),this._screenElement.appendChild(this._themeStyleElement));let t=`${this._terminalSelector} .${Jt} { pointer-events: none; color: ${e.foreground.css}; font-family: ${this._optionsService.rawOptions.fontFamily}; font-size: ${this._optionsService.rawOptions.fontSize}px; font-kerning: none; white-space: pre}`;t+=`${this._terminalSelector} .${Jt} .xterm-dim { color: ${ze.multiplyOpacity(e.foreground,.5).css};}`,t+=`${this._terminalSelector} span:not(.xterm-bold) { font-weight: ${this._optionsService.rawOptions.fontWeight};}${this._terminalSelector} span.xterm-bold { font-weight: ${this._optionsService.rawOptions.fontWeightBold};}${this._terminalSelector} span.xterm-italic { font-style: italic;}`;let i=`blink_underline_${this._terminalClass}`,s=`blink_bar_${this._terminalClass}`,r=`blink_block_${this._terminalClass}`;t+=`@keyframes ${i} { 50% { border-bottom-style: hidden; }}`,t+=`@keyframes ${s} { 50% { box-shadow: none; }}`,t+=`@keyframes ${r} { 0% { background-color: ${e.cursor.css}; color: ${e.cursorAccent.css}; } 50% { background-color: inherit; color: ${e.cursor.css}; }}`,t+=`${this._terminalSelector} .${Jt}.${qs} .xterm-cursor.xterm-cursor-blink.xterm-cursor-underline { animation: ${i} 1s step-end infinite;}${this._terminalSelector} .${Jt}.${qs} .xterm-cursor.xterm-cursor-blink.xterm-cursor-bar { animation: ${s} 1s step-end infinite;}${this._terminalSelector} .${Jt}.${qs} .xterm-cursor.xterm-cursor-blink.xterm-cursor-block { animation: ${r} 1s step-end infinite;}${this._terminalSelector} .${Jt} .xterm-cursor.xterm-cursor-block { background-color: ${e.cursor.css}; color: ${e.cursorAccent.css};}${this._terminalSelector} .${Jt} .xterm-cursor.xterm-cursor-block:not(.xterm-cursor-blink) { background-color: ${e.cursor.css} !important; color: ${e.cursorAccent.css} !important;}${this._terminalSelector} .${Jt} .xterm-cursor.xterm-cursor-outline { outline: 1px solid ${e.cursor.css}; outline-offset: -1px;}${this._terminalSelector} .${Jt} .xterm-cursor.xterm-cursor-bar { box-shadow: ${this._optionsService.rawOptions.cursorWidth}px 0 0 ${e.cursor.css} inset;}${this._terminalSelector} .${Jt} .xterm-cursor.xterm-cursor-underline { border-bottom: 1px ${e.cursor.css}; border-bottom-style: solid; height: calc(100% - 1px);}`,t+=`${this._terminalSelector} .${Or} { position: absolute; top: 0; left: 0; z-index: 1; pointer-events: none;}${this._terminalSelector}.focus .${Or} div { position: absolute; background-color: ${e.selectionBackgroundOpaque.css};}${this._terminalSelector} .${Or} div { position: absolute; background-color: ${e.selectionInactiveBackgroundOpaque.css};}`;for(let[n,a]of e.ansi.entries())t+=`${this._terminalSelector} .${Qr}${n} { color: ${a.css}; }${this._terminalSelector} .${Qr}${n}.xterm-dim { color: ${ze.multiplyOpacity(a,.5).css}; }${this._terminalSelector} .${il}${n} { background-color: ${a.css}; }`;t+=`${this._terminalSelector} .${Qr}257 { color: ${ze.opaque(e.background).css}; }${this._terminalSelector} .${Qr}257.xterm-dim { color: ${ze.multiplyOpacity(ze.opaque(e.background),.5).css}; }${this._terminalSelector} .${il}257 { background-color: ${e.foreground.css}; }`,this._themeStyleElement.textContent=t}_setDefaultSpacing(){let e=this.dimensions.css.cell.width-this._widthCache.get("W",!1,!1);this._rowContainer.style.letterSpacing=`${e}px`,this._rowFactory.defaultSpacing=e}handleDevicePixelRatioChange(){this._updateDimensions(),this._widthCache.clear(),this._setDefaultSpacing()}_refreshRowElements(e,t){for(let i=this._rowElements.length;i<=t;i++){let s=this._document.createElement("div");this._rowContainer.appendChild(s),this._rowElements.push(s)}for(;this._rowElements.length>t;)this._rowContainer.removeChild(this._rowElements.pop())}handleResize(e,t){this._refreshRowElements(e,t),this._updateDimensions(),this.handleSelectionChanged(this._selectionRenderModel.selectionStart,this._selectionRenderModel.selectionEnd,this._selectionRenderModel.columnSelectMode)}handleCharSizeChanged(){this._updateDimensions(),this._widthCache.clear(),this._setDefaultSpacing()}handleBlur(){this._rowContainer.classList.remove(qs),this.renderRows(0,this._bufferService.rows-1)}handleFocus(){this._rowContainer.classList.add(qs),this.renderRows(this._bufferService.buffer.y,this._bufferService.buffer.y)}handleSelectionChanged(e,t,i){if(this._selectionContainer.replaceChildren(),this._rowFactory.handleSelectionChanged(e,t,i),this.renderRows(0,this._bufferService.rows-1),!e||!t||(this._selectionRenderModel.update(this._terminal,e,t,i),!this._selectionRenderModel.hasSelection))return;let s=this._selectionRenderModel.viewportStartRow,r=this._selectionRenderModel.viewportEndRow,n=this._selectionRenderModel.viewportCappedStartRow,a=this._selectionRenderModel.viewportCappedEndRow,o=this._document.createDocumentFragment();if(i){let h=e[0]>t[0];o.appendChild(this._createSelectionElement(n,h?t[0]:e[0],h?e[0]:t[0],a-n+1))}else{let h=s===n?e[0]:0,l=n===r?t[0]:this._bufferService.cols;o.appendChild(this._createSelectionElement(n,h,l));let c=a-n-1;if(o.appendChild(this._createSelectionElement(n+1,0,this._bufferService.cols,c)),n!==a){let d=r===a?t[0]:this._bufferService.cols;o.appendChild(this._createSelectionElement(a,0,d))}}this._selectionContainer.appendChild(o)}_createSelectionElement(e,t,i,s=1){let r=this._document.createElement("div"),n=t*this.dimensions.css.cell.width,a=this.dimensions.css.cell.width*(i-t);return n+a>this.dimensions.css.canvas.width&&(a=this.dimensions.css.canvas.width-n),r.style.height=`${s*this.dimensions.css.cell.height}px`,r.style.top=`${e*this.dimensions.css.cell.height}px`,r.style.left=`${n}px`,r.style.width=`${a}px`,r}handleCursorMove(){}_handleOptionsChanged(){this._updateDimensions(),this._injectCss(this._themeService.colors),this._widthCache.setFont(this._optionsService.rawOptions.fontFamily,this._optionsService.rawOptions.fontSize,this._optionsService.rawOptions.fontWeight,this._optionsService.rawOptions.fontWeightBold),this._setDefaultSpacing()}clear(){for(let e of this._rowElements)e.replaceChildren()}renderRows(e,t){let i=this._bufferService.buffer,s=i.ybase+i.y,r=Math.min(i.x,this._bufferService.cols-1),n=this._coreService.decPrivateModes.cursorBlink??this._optionsService.rawOptions.cursorBlink,a=this._coreService.decPrivateModes.cursorStyle??this._optionsService.rawOptions.cursorStyle,o=this._optionsService.rawOptions.cursorInactiveStyle;for(let h=e;h<=t;h++){let l=h+i.ydisp,c=this._rowElements[h],d=i.lines.get(l);if(!c||!d)break;c.replaceChildren(...this._rowFactory.createRow(d,l,l===s,a,o,r,n,this.dimensions.css.cell.width,this._widthCache,-1,-1))}}get _terminalSelector(){return`.${Qn}${this._terminalClass}`}_handleLinkHover(e){this._setCellUnderline(e.x1,e.x2,e.y1,e.y2,e.cols,!0)}_handleLinkLeave(e){this._setCellUnderline(e.x1,e.x2,e.y1,e.y2,e.cols,!1)}_setCellUnderline(e,t,i,s,r,n){i<0&&(e=0),s<0&&(t=0);let a=this._bufferService.rows-1;i=Math.max(Math.min(i,a),0),s=Math.max(Math.min(s,a),0),r=Math.min(r,this._bufferService.cols);let o=this._bufferService.buffer,h=o.ybase+o.y,l=Math.min(o.x,r-1),c=this._optionsService.rawOptions.cursorBlink,d=this._optionsService.rawOptions.cursorStyle,v=this._optionsService.rawOptions.cursorInactiveStyle;for(let u=i;u<=s;++u){let g=u+o.ydisp,_=this._rowElements[u],f=o.lines.get(g);if(!_||!f)break;_.replaceChildren(...this._rowFactory.createRow(f,g,g===h,d,v,l,c,this.dimensions.css.cell.width,this._widthCache,n?u===i?e:0:-1,n?(u===s?t:r)-1:-1))}}};Mo=Ye([te(7,oa),te(8,wn),te(9,Lt),te(10,Mt),te(11,bs),te(12,Qi),te(13,zs)],Mo);var Lo=class extends ke{constructor(e,t,i){super(),this._optionsService=i,this.width=0,this.height=0,this._onCharSizeChange=this._register(new Y),this.onCharSizeChange=this._onCharSizeChange.event;try{this._measureStrategy=this._register(new Cf(this._optionsService))}catch{this._measureStrategy=this._register(new wf(e,t,this._optionsService))}this._register(this._optionsService.onMultipleOptionChange(["fontFamily","fontSize"],()=>this.measure()))}get hasValidSize(){return this.width>0&&this.height>0}measure(){let e=this._measureStrategy.measure();(e.width!==this.width||e.height!==this.height)&&(this.width=e.width,this.height=e.height,this._onCharSizeChange.fire())}};Lo=Ye([te(2,Lt)],Lo);var sc=class extends ke{constructor(){super(...arguments),this._result={width:0,height:0}}_validateAndSet(e,t){e!==void 0&&e>0&&t!==void 0&&t>0&&(this._result.width=e,this._result.height=t)}},wf=class extends sc{constructor(e,t,i){super(),this._document=e,this._parentElement=t,this._optionsService=i,this._measureElement=this._document.createElement("span"),this._measureElement.classList.add("xterm-char-measure-element"),this._measureElement.textContent="W".repeat(32),this._measureElement.setAttribute("aria-hidden","true"),this._measureElement.style.whiteSpace="pre",this._measureElement.style.fontKerning="none",this._parentElement.appendChild(this._measureElement)}measure(){return this._measureElement.style.fontFamily=this._optionsService.rawOptions.fontFamily,this._measureElement.style.fontSize=`${this._optionsService.rawOptions.fontSize}px`,this._validateAndSet(Number(this._measureElement.offsetWidth)/32,Number(this._measureElement.offsetHeight)),this._result}},Cf=class extends sc{constructor(e){super(),this._optionsService=e,this._canvas=new OffscreenCanvas(100,100),this._ctx=this._canvas.getContext("2d");let t=this._ctx.measureText("W");if(!("width"in t&&"fontBoundingBoxAscent"in t&&"fontBoundingBoxDescent"in t))throw new Error("Required font metrics not supported")}measure(){this._ctx.font=`${this._optionsService.rawOptions.fontSize}px ${this._optionsService.rawOptions.fontFamily}`;let e=this._ctx.measureText("W");return this._validateAndSet(e.width,e.fontBoundingBoxAscent+e.fontBoundingBoxDescent),this._result}},bf=class extends ke{constructor(e,t,i){super(),this._textarea=e,this._window=t,this.mainDocument=i,this._isFocused=!1,this._cachedIsFocused=void 0,this._screenDprMonitor=this._register(new Sf(this._window)),this._onDprChange=this._register(new Y),this.onDprChange=this._onDprChange.event,this._onWindowChange=this._register(new Y),this.onWindowChange=this._onWindowChange.event,this._register(this.onWindowChange(s=>this._screenDprMonitor.setWindow(s))),this._register(mt.forward(this._screenDprMonitor.onDprChange,this._onDprChange)),this._register(me(this._textarea,"focus",()=>this._isFocused=!0)),this._register(me(this._textarea,"blur",()=>this._isFocused=!1))}get window(){return this._window}set window(e){this._window!==e&&(this._window=e,this._onWindowChange.fire(this._window))}get dpr(){return this.window.devicePixelRatio}get isFocused(){return this._cachedIsFocused===void 0&&(this._cachedIsFocused=this._isFocused&&this._textarea.ownerDocument.hasFocus(),queueMicrotask(()=>this._cachedIsFocused=void 0)),this._cachedIsFocused}},Sf=class extends ke{constructor(e){super(),this._parentWindow=e,this._windowResizeListener=this._register(new Ns),this._onDprChange=this._register(new Y),this.onDprChange=this._onDprChange.event,this._outerListener=()=>this._setDprAndFireIfDiffers(),this._currentDevicePixelRatio=this._parentWindow.devicePixelRatio,this._updateDpr(),this._setWindowResizeListener(),this._register($e(()=>this.clearListener()))}setWindow(e){this._parentWindow=e,this._setWindowResizeListener(),this._setDprAndFireIfDiffers()}_setWindowResizeListener(){this._windowResizeListener.value=me(this._parentWindow,"resize",()=>this._setDprAndFireIfDiffers())}_setDprAndFireIfDiffers(){this._parentWindow.devicePixelRatio!==this._currentDevicePixelRatio&&this._onDprChange.fire(this._parentWindow.devicePixelRatio),this._updateDpr()}_updateDpr(){var e;this._outerListener&&((e=this._resolutionMediaMatchList)==null||e.removeListener(this._outerListener),this._currentDevicePixelRatio=this._parentWindow.devicePixelRatio,this._resolutionMediaMatchList=this._parentWindow.matchMedia(`screen and (resolution: ${this._parentWindow.devicePixelRatio}dppx)`),this._resolutionMediaMatchList.addListener(this._outerListener))}clearListener(){!this._resolutionMediaMatchList||!this._outerListener||(this._resolutionMediaMatchList.removeListener(this._outerListener),this._resolutionMediaMatchList=void 0,this._outerListener=void 0)}},yf=class extends ke{constructor(){super(),this.linkProviders=[],this._register($e(()=>this.linkProviders.length=0))}registerLinkProvider(e){return this.linkProviders.push(e),{dispose:()=>{let t=this.linkProviders.indexOf(e);t!==-1&&this.linkProviders.splice(t,1)}}}};function fa(e,t,i){let s=i.getBoundingClientRect(),r=e.getComputedStyle(i),n=parseInt(r.getPropertyValue("padding-left")),a=parseInt(r.getPropertyValue("padding-top"));return[t.clientX-s.left-n,t.clientY-s.top-a]}function xf(e,t,i,s,r,n,a,o,h){if(!n)return;let l=fa(e,t,i);if(l)return l[0]=Math.ceil((l[0]+(h?a/2:0))/a),l[1]=Math.ceil(l[1]/o),l[0]=Math.min(Math.max(l[0],1),s+(h?1:0)),l[1]=Math.min(Math.max(l[1],1),r),l}var Ro=class{constructor(e,t){this._renderService=e,this._charSizeService=t}getCoords(e,t,i,s,r){return xf(window,e,t,i,s,this._charSizeService.hasValidSize,this._renderService.dimensions.css.cell.width,this._renderService.dimensions.css.cell.height,r)}getMouseReportCoords(e,t){let i=fa(window,e,t);if(this._charSizeService.hasValidSize)return i[0]=Math.min(Math.max(i[0],0),this._renderService.dimensions.css.canvas.width-1),i[1]=Math.min(Math.max(i[1],0),this._renderService.dimensions.css.canvas.height-1),{col:Math.floor(i[0]/this._renderService.dimensions.css.cell.width),row:Math.floor(i[1]/this._renderService.dimensions.css.cell.height),x:Math.floor(i[0]),y:Math.floor(i[1])}}};Ro=Ye([te(0,Oi),te(1,wn)],Ro);var kf=class{constructor(e,t){this._renderCallback=e,this._coreBrowserService=t,this._refreshCallbacks=[]}dispose(){this._animationFrame&&(this._coreBrowserService.window.cancelAnimationFrame(this._animationFrame),this._animationFrame=void 0)}addRefreshCallback(e){return this._refreshCallbacks.push(e),this._animationFrame||(this._animationFrame=this._coreBrowserService.window.requestAnimationFrame(()=>this._innerRefresh())),this._animationFrame}refresh(e,t,i){this._rowCount=i,e=e!==void 0?e:0,t=t!==void 0?t:this._rowCount-1,this._rowStart=this._rowStart!==void 0?Math.min(this._rowStart,e):e,this._rowEnd=this._rowEnd!==void 0?Math.max(this._rowEnd,t):t,!this._animationFrame&&(this._animationFrame=this._coreBrowserService.window.requestAnimationFrame(()=>this._innerRefresh()))}_innerRefresh(){if(this._animationFrame=void 0,this._rowStart===void 0||this._rowEnd===void 0||this._rowCount===void 0){this._runRefreshCallbacks();return}let e=Math.max(this._rowStart,0),t=Math.min(this._rowEnd,this._rowCount-1);this._rowStart=void 0,this._rowEnd=void 0,this._renderCallback(e,t),this._runRefreshCallbacks()}_runRefreshCallbacks(){for(let e of this._refreshCallbacks)e(0);this._refreshCallbacks=[]}},rc={};Pu(rc,{getSafariVersion:()=>Bf,isChromeOS:()=>lc,isFirefox:()=>nc,isIpad:()=>If,isIphone:()=>Df,isLegacyEdge:()=>Ef,isLinux:()=>va,isMac:()=>on,isNode:()=>Cn,isSafari:()=>oc,isWindows:()=>ac});var Cn=typeof process<"u"&&"title"in process,Ir=Cn?"node":navigator.userAgent,Dr=Cn?"node":navigator.platform,nc=Ir.includes("Firefox"),Ef=Ir.includes("Edge"),oc=/^((?!chrome|android).)*safari/i.test(Ir);function Bf(){if(!oc)return 0;let e=Ir.match(/Version\/(\d+)/);return e===null||e.length<2?0:parseInt(e[1])}var on=["Macintosh","MacIntel","MacPPC","Mac68K"].includes(Dr),If=Dr==="iPad",Df=Dr==="iPhone",ac=["Windows","Win16","Win32","WinCE"].includes(Dr),va=Dr.indexOf("Linux")>=0,lc=/\bCrOS\b/.test(Ir),hc=class{constructor(){this._tasks=[],this._i=0}enqueue(e){this._tasks.push(e),this._start()}flush(){for(;this._ir){s-t<-20&&console.warn(`task queue exceeded allotted deadline by ${Math.abs(Math.round(s-t))}ms`),this._start();return}s=r}this.clear()}},Mf=class extends hc{_requestCallback(e){return setTimeout(()=>e(this._createDeadline(16)))}_cancelCallback(e){clearTimeout(e)}_createDeadline(e){let t=performance.now()+e;return{timeRemaining:()=>Math.max(0,t-performance.now())}}},Lf=class extends hc{_requestCallback(e){return requestIdleCallback(e)}_cancelCallback(e){cancelIdleCallback(e)}},an=!Cn&&"requestIdleCallback"in window?Lf:Mf,Rf=class{constructor(){this._queue=new an}set(e){this._queue.clear(),this._queue.enqueue(e)}flush(){this._queue.flush()}},To=class extends ke{constructor(e,t,i,s,r,n,a,o,h){super(),this._rowCount=e,this._optionsService=i,this._charSizeService=s,this._coreService=r,this._coreBrowserService=o,this._renderer=this._register(new Ns),this._pausedResizeTask=new Rf,this._observerDisposable=this._register(new Ns),this._isPaused=!1,this._needsFullRefresh=!1,this._isNextRenderRedrawOnly=!0,this._needsSelectionRefresh=!1,this._canvasWidth=0,this._canvasHeight=0,this._selectionState={start:void 0,end:void 0,columnSelectMode:!1},this._onDimensionsChange=this._register(new Y),this.onDimensionsChange=this._onDimensionsChange.event,this._onRenderedViewportChange=this._register(new Y),this.onRenderedViewportChange=this._onRenderedViewportChange.event,this._onRender=this._register(new Y),this.onRender=this._onRender.event,this._onRefreshRequest=this._register(new Y),this.onRefreshRequest=this._onRefreshRequest.event,this._renderDebouncer=new kf((l,c)=>this._renderRows(l,c),this._coreBrowserService),this._register(this._renderDebouncer),this._syncOutputHandler=new Tf(this._coreBrowserService,this._coreService,()=>this._fullRefresh()),this._register($e(()=>this._syncOutputHandler.dispose())),this._register(this._coreBrowserService.onDprChange(()=>this.handleDevicePixelRatioChange())),this._register(a.onResize(()=>this._fullRefresh())),this._register(a.buffers.onBufferActivate(()=>{var l;return(l=this._renderer.value)==null?void 0:l.clear()})),this._register(this._optionsService.onOptionChange(()=>this._handleOptionsChanged())),this._register(this._charSizeService.onCharSizeChange(()=>this.handleCharSizeChanged())),this._register(n.onDecorationRegistered(()=>this._fullRefresh())),this._register(n.onDecorationRemoved(()=>this._fullRefresh())),this._register(this._optionsService.onMultipleOptionChange(["customGlyphs","drawBoldTextInBrightColors","letterSpacing","lineHeight","fontFamily","fontSize","fontWeight","fontWeightBold","minimumContrastRatio","rescaleOverlappingGlyphs"],()=>{this.clear(),this.handleResize(a.cols,a.rows),this._fullRefresh()})),this._register(this._optionsService.onMultipleOptionChange(["cursorBlink","cursorStyle"],()=>this.refreshRows(a.buffer.y,a.buffer.y,!0))),this._register(h.onChangeColors(()=>this._fullRefresh())),this._registerIntersectionObserver(this._coreBrowserService.window,t),this._register(this._coreBrowserService.onWindowChange(l=>this._registerIntersectionObserver(l,t)))}get dimensions(){return this._renderer.value.dimensions}_registerIntersectionObserver(e,t){if("IntersectionObserver"in e){let i=new e.IntersectionObserver(s=>this._handleIntersectionChange(s[s.length-1]),{threshold:0});i.observe(t),this._observerDisposable.value=$e(()=>i.disconnect())}}_handleIntersectionChange(e){this._isPaused=e.isIntersecting===void 0?e.intersectionRatio===0:!e.isIntersecting,!this._isPaused&&!this._charSizeService.hasValidSize&&this._charSizeService.measure(),!this._isPaused&&this._needsFullRefresh&&(this._pausedResizeTask.flush(),this.refreshRows(0,this._rowCount-1),this._needsFullRefresh=!1)}refreshRows(e,t,i=!1){if(this._isPaused){this._needsFullRefresh=!0;return}if(this._coreService.decPrivateModes.synchronizedOutput){this._syncOutputHandler.bufferRows(e,t);return}let s=this._syncOutputHandler.flush();s&&(e=Math.min(e,s.start),t=Math.max(t,s.end)),i||(this._isNextRenderRedrawOnly=!1),this._renderDebouncer.refresh(e,t,this._rowCount)}_renderRows(e,t){if(this._renderer.value){if(this._coreService.decPrivateModes.synchronizedOutput){this._syncOutputHandler.bufferRows(e,t);return}e=Math.min(e,this._rowCount-1),t=Math.min(t,this._rowCount-1),this._renderer.value.renderRows(e,t),this._needsSelectionRefresh&&(this._renderer.value.handleSelectionChanged(this._selectionState.start,this._selectionState.end,this._selectionState.columnSelectMode),this._needsSelectionRefresh=!1),this._isNextRenderRedrawOnly||this._onRenderedViewportChange.fire({start:e,end:t}),this._onRender.fire({start:e,end:t}),this._isNextRenderRedrawOnly=!0}}resize(e,t){this._rowCount=t,this._fireOnCanvasResize()}_handleOptionsChanged(){this._renderer.value&&(this.refreshRows(0,this._rowCount-1),this._fireOnCanvasResize())}_fireOnCanvasResize(){this._renderer.value&&(this._renderer.value.dimensions.css.canvas.width===this._canvasWidth&&this._renderer.value.dimensions.css.canvas.height===this._canvasHeight||this._onDimensionsChange.fire(this._renderer.value.dimensions))}hasRenderer(){return!!this._renderer.value}setRenderer(e){this._renderer.value=e,this._renderer.value&&(this._renderer.value.onRequestRedraw(t=>this.refreshRows(t.start,t.end,!0)),this._needsSelectionRefresh=!0,this._fullRefresh())}addRefreshCallback(e){return this._renderDebouncer.addRefreshCallback(e)}_fullRefresh(){this._isPaused?this._needsFullRefresh=!0:this.refreshRows(0,this._rowCount-1)}clearTextureAtlas(){var e,t;this._renderer.value&&((t=(e=this._renderer.value).clearTextureAtlas)==null||t.call(e),this._fullRefresh())}handleDevicePixelRatioChange(){this._charSizeService.measure(),this._renderer.value&&(this._renderer.value.handleDevicePixelRatioChange(),this.refreshRows(0,this._rowCount-1))}handleResize(e,t){this._renderer.value&&(this._isPaused?this._pausedResizeTask.set(()=>{var i;return(i=this._renderer.value)==null?void 0:i.handleResize(e,t)}):this._renderer.value.handleResize(e,t),this._fullRefresh())}handleCharSizeChanged(){var e;(e=this._renderer.value)==null||e.handleCharSizeChanged()}handleBlur(){var e;(e=this._renderer.value)==null||e.handleBlur()}handleFocus(){var e;(e=this._renderer.value)==null||e.handleFocus()}handleSelectionChanged(e,t,i){var s;this._selectionState.start=e,this._selectionState.end=t,this._selectionState.columnSelectMode=i,(s=this._renderer.value)==null||s.handleSelectionChanged(e,t,i)}handleCursorMove(){var e;(e=this._renderer.value)==null||e.handleCursorMove()}clear(){var e;(e=this._renderer.value)==null||e.clear()}};To=Ye([te(2,Lt),te(3,wn),te(4,bs),te(5,Br),te(6,Mt),te(7,Qi),te(8,zs)],To);var Tf=class{constructor(e,t,i){this._coreBrowserService=e,this._coreService=t,this._onTimeout=i,this._start=0,this._end=0,this._isBuffering=!1}bufferRows(e,t){this._isBuffering?(this._start=Math.min(this._start,e),this._end=Math.max(this._end,t)):(this._start=e,this._end=t,this._isBuffering=!0),this._timeout===void 0&&(this._timeout=this._coreBrowserService.window.setTimeout(()=>{this._timeout=void 0,this._coreService.decPrivateModes.synchronizedOutput=!1,this._onTimeout()},1e3))}flush(){if(this._timeout!==void 0&&(this._coreBrowserService.window.clearTimeout(this._timeout),this._timeout=void 0),!this._isBuffering)return;let e={start:this._start,end:this._end};return this._isBuffering=!1,e}dispose(){this._timeout!==void 0&&(this._coreBrowserService.window.clearTimeout(this._timeout),this._timeout=void 0)}};function Pf(e,t,i,s){let r=i.buffer.x,n=i.buffer.y;if(!i.buffer.hasScrollback)return Nf(r,n,e,t,i,s)+bn(n,t,i,s)+Ff(r,n,e,t,i,s);let a;if(n===t)return a=r>e?"D":"C",vr(Math.abs(r-e),fr(a,s));a=n>t?"D":"C";let o=Math.abs(n-t),h=Of(n>t?e:r,i)+(o-1)*i.cols+1+Qf(n>t?r:e);return vr(h,fr(a,s))}function Qf(e,t){return e-1}function Of(e,t){return t.cols-e}function Nf(e,t,i,s,r,n){return bn(t,s,r,n).length===0?"":vr(dc(e,t,e,t-ws(t,r),!1,r).length,fr("D",n))}function bn(e,t,i,s){let r=e-ws(e,i),n=t-ws(t,i),a=Math.abs(r-n)-Hf(e,t,i);return vr(a,fr(cc(e,t),s))}function Ff(e,t,i,s,r,n){let a;bn(t,s,r,n).length>0?a=s-ws(s,r):a=t;let o=s,h=Wf(e,t,i,s,r,n);return vr(dc(e,a,i,o,h==="C",r).length,fr(h,n))}function Hf(e,t,i){var a;let s=0,r=e-ws(e,i),n=t-ws(t,i);for(let o=0;o=0&&e0?a=s-ws(s,r):a=t,e=i&&at?"A":"B"}function dc(e,t,i,s,r,n){let a=e,o=t,h="";for(;(a!==i||o!==s)&&o>=0&&on.cols-1?(h+=n.buffer.translateBufferLineToString(o,!1,e,a),a=0,e=0,o++):!r&&a<0&&(h+=n.buffer.translateBufferLineToString(o,!1,0,e+1),a=n.cols-1,e=a,o--);return h+n.buffer.translateBufferLineToString(o,!1,e,a)}function fr(e,t){let i=t?"O":"[";return q.ESC+i+e}function vr(e,t){e=Math.floor(e);let i="";for(let s=0;sthis._bufferService.cols?e%this._bufferService.cols===0?[this._bufferService.cols,this.selectionStart[1]+Math.floor(e/this._bufferService.cols)-1]:[e%this._bufferService.cols,this.selectionStart[1]+Math.floor(e/this._bufferService.cols)]:[e,this.selectionStart[1]]}if(this.selectionStartLength&&this.selectionEnd[1]===this.selectionStart[1]){let e=this.selectionStart[0]+this.selectionStartLength;return e>this._bufferService.cols?[e%this._bufferService.cols,this.selectionStart[1]+Math.floor(e/this._bufferService.cols)]:[Math.max(e,this.selectionEnd[0]),this.selectionEnd[1]]}return this.selectionEnd}}areSelectionValuesReversed(){let e=this.selectionStart,t=this.selectionEnd;return!e||!t?!1:e[1]>t[1]||e[1]===t[1]&&e[0]>t[0]}handleTrim(e){return this.selectionStart&&(this.selectionStart[1]-=e),this.selectionEnd&&(this.selectionEnd[1]-=e),this.selectionEnd&&this.selectionEnd[1]<0?(this.clearSelection(),!0):(this.selectionStart&&this.selectionStart[1]<0&&(this.selectionStart[1]=0),!1)}};function sl(e,t){if(e.start.y>e.end.y)throw new Error(`Buffer range end (${e.end.x}, ${e.end.y}) cannot be before start (${e.start.x}, ${e.start.y})`);return t*(e.end.y-e.start.y)+(e.end.x-e.start.x+1)}var On=50,Uf=15,$f=50,qf=500,Gf=" ",Kf=new RegExp(Gf,"g"),Po=class extends ke{constructor(e,t,i,s,r,n,a,o,h){super(),this._element=e,this._screenElement=t,this._linkifier=i,this._bufferService=s,this._coreService=r,this._mouseService=n,this._optionsService=a,this._renderService=o,this._coreBrowserService=h,this._dragScrollAmount=0,this._enabled=!0,this._workCell=new oi,this._mouseDownTimeStamp=0,this._oldHasSelection=!1,this._oldSelectionStart=void 0,this._oldSelectionEnd=void 0,this._onLinuxMouseSelection=this._register(new Y),this.onLinuxMouseSelection=this._onLinuxMouseSelection.event,this._onRedrawRequest=this._register(new Y),this.onRequestRedraw=this._onRedrawRequest.event,this._onSelectionChange=this._register(new Y),this.onSelectionChange=this._onSelectionChange.event,this._onRequestScrollLines=this._register(new Y),this.onRequestScrollLines=this._onRequestScrollLines.event,this._mouseMoveListener=l=>this._handleMouseMove(l),this._mouseUpListener=l=>this._handleMouseUp(l),this._coreService.onUserInput(()=>{this.hasSelection&&this.clearSelection()}),this._trimListener=this._bufferService.buffer.lines.onTrim(l=>this._handleTrim(l)),this._register(this._bufferService.buffers.onBufferActivate(l=>this._handleBufferActivate(l))),this.enable(),this._model=new zf(this._bufferService),this._activeSelectionMode=0,this._register($e(()=>{this._removeMouseDownListeners()})),this._register(this._bufferService.onResize(l=>{l.rowsChanged&&this.clearSelection()}))}reset(){this.clearSelection()}disable(){this.clearSelection(),this._enabled=!1}enable(){this._enabled=!0}get selectionStart(){return this._model.finalSelectionStart}get selectionEnd(){return this._model.finalSelectionEnd}get hasSelection(){let e=this._model.finalSelectionStart,t=this._model.finalSelectionEnd;return!e||!t?!1:e[0]!==t[0]||e[1]!==t[1]}get selectionText(){let e=this._model.finalSelectionStart,t=this._model.finalSelectionEnd;if(!e||!t)return"";let i=this._bufferService.buffer,s=[];if(this._activeSelectionMode===3){if(e[0]===t[0])return"";let r=e[0]r.replace(Kf," ")).join(ac?`\r `:` -`)}clearSelection(){this._model.clearSelection(),this._removeMouseDownListeners(),this.refresh(),this._onSelectionChange.fire()}refresh(e){this._refreshAnimationFrame||(this._refreshAnimationFrame=this._coreBrowserService.window.requestAnimationFrame(()=>this._refresh())),aa&&e&&this.selectionText.length&&this._onLinuxMouseSelection.fire(this.selectionText)}_refresh(){this._refreshAnimationFrame=void 0,this._onRedrawRequest.fire({start:this._model.finalSelectionStart,end:this._model.finalSelectionEnd,columnSelectMode:this._activeSelectionMode===3})}_isClickInSelection(e){let t=this._getMouseBufferCoords(e),i=this._model.finalSelectionStart,s=this._model.finalSelectionEnd;return!i||!s||!t?!1:this._areCoordsInSelection(t,i,s)}isCellInSelection(e,t){let i=this._model.finalSelectionStart,s=this._model.finalSelectionEnd;return!i||!s?!1:this._areCoordsInSelection([e,t],i,s)}_areCoordsInSelection(e,t,i){return e[1]>t[1]&&e[1]=t[0]&&e[0]=t[0]}_selectWordAtCursor(e,t){var r,n;let i=(n=(r=this._linkifier.currentLink)==null?void 0:r.link)==null?void 0:n.range;if(i)return this._model.selectionStart=[i.start.x-1,i.start.y-1],this._model.selectionStartLength=Ja(i,this._bufferService.cols),this._model.selectionEnd=void 0,!0;let s=this._getMouseBufferCoords(e);return s?(this._selectWordAt(s,t),this._model.selectionEnd=void 0,!0):!1}selectAll(){this._model.isSelectAllActive=!0,this.refresh(),this._onSelectionChange.fire()}selectLines(e,t){this._model.clearSelection(),e=Math.max(e,0),t=Math.min(t,this._bufferService.buffer.lines.length-1),this._model.selectionStart=[0,e],this._model.selectionEnd=[this._bufferService.cols,t],this.refresh(),this._onSelectionChange.fire()}_handleTrim(e){this._model.handleTrim(e)&&this.refresh()}_getMouseBufferCoords(e){let t=this._mouseService.getCoords(e,this._screenElement,this._bufferService.cols,this._bufferService.rows,!0);if(t)return t[0]--,t[1]--,t[1]+=this._bufferService.buffer.ydisp,t}_getMouseEventScrollAmount(e){let t=oa(this._coreBrowserService.window,e,this._screenElement)[1],i=this._renderService.dimensions.css.canvas.height;return t>=0&&t<=i?0:(t>i&&(t-=i),t=Math.min(Math.max(t,-Dn),Dn),t/=Dn,t/Math.abs(t)+Math.round(t*(Mf-1)))}shouldForceSelection(e){return Xr?e.altKey&&this._optionsService.rawOptions.macOptionClickForcesSelection:e.shiftKey}handleMouseDown(e){if(this._mouseDownTimeStamp=e.timeStamp,!(e.button===2&&this.hasSelection)&&e.button===0){if(!this._enabled){if(!this.shouldForceSelection(e))return;e.stopPropagation()}e.preventDefault(),this._dragScrollAmount=0,this._enabled&&e.shiftKey?this._handleIncrementalClick(e):e.detail===1?this._handleSingleClick(e):e.detail===2?this._handleDoubleClick(e):e.detail===3&&this._handleTripleClick(e),this._addMouseDownListeners(),this.refresh(!0)}}_addMouseDownListeners(){this._screenElement.ownerDocument&&(this._screenElement.ownerDocument.addEventListener("mousemove",this._mouseMoveListener),this._screenElement.ownerDocument.addEventListener("mouseup",this._mouseUpListener)),this._dragScrollIntervalTimer=this._coreBrowserService.window.setInterval(()=>this._dragScroll(),Lf)}_removeMouseDownListeners(){this._screenElement.ownerDocument&&(this._screenElement.ownerDocument.removeEventListener("mousemove",this._mouseMoveListener),this._screenElement.ownerDocument.removeEventListener("mouseup",this._mouseUpListener)),this._coreBrowserService.window.clearInterval(this._dragScrollIntervalTimer),this._dragScrollIntervalTimer=void 0}_handleIncrementalClick(e){this._model.selectionStart&&(this._model.selectionEnd=this._getMouseBufferCoords(e))}_handleSingleClick(e){if(this._model.selectionStartLength=0,this._model.isSelectAllActive=!1,this._activeSelectionMode=this.shouldColumnSelect(e)?3:0,this._model.selectionStart=this._getMouseBufferCoords(e),!this._model.selectionStart)return;this._model.selectionEnd=void 0;let t=this._bufferService.buffer.lines.get(this._model.selectionStart[1]);t&&t.length!==this._model.selectionStart[0]&&t.hasWidth(this._model.selectionStart[0])===0&&this._model.selectionStart[0]++}_handleDoubleClick(e){this._selectWordAtCursor(e,!0)&&(this._activeSelectionMode=1)}_handleTripleClick(e){let t=this._getMouseBufferCoords(e);t&&(this._activeSelectionMode=2,this._selectLineAt(t[1]))}shouldColumnSelect(e){return e.altKey&&!(Xr&&this._optionsService.rawOptions.macOptionClickForcesSelection)}_handleMouseMove(e){if(e.stopImmediatePropagation(),!this._model.selectionStart)return;let t=this._model.selectionEnd?[this._model.selectionEnd[0],this._model.selectionEnd[1]]:null;if(this._model.selectionEnd=this._getMouseBufferCoords(e),!this._model.selectionEnd){this.refresh(!0);return}this._activeSelectionMode===2?this._model.selectionEnd[1]0?this._model.selectionEnd[0]=this._bufferService.cols:this._dragScrollAmount<0&&(this._model.selectionEnd[0]=0));let i=this._bufferService.buffer;if(this._model.selectionEnd[1]0?(this._activeSelectionMode!==3&&(this._model.selectionEnd[0]=this._bufferService.cols),this._model.selectionEnd[1]=Math.min(e.ydisp+this._bufferService.rows,e.lines.length-1)):(this._activeSelectionMode!==3&&(this._model.selectionEnd[0]=0),this._model.selectionEnd[1]=e.ydisp),this.refresh()}}_handleMouseUp(e){let t=e.timeStamp-this._mouseDownTimeStamp;if(this._removeMouseDownListeners(),this.selectionText.length<=1&&tthis._handleTrim(t))}_convertViewportColToCharacterIndex(e,t){let i=t;for(let s=0;t>=s;s++){let r=e.loadCell(s,this._workCell).getChars().length;this._workCell.getWidth()===0?i--:r>1&&t!==s&&(i+=r-1)}return i}setSelection(e,t,i){this._model.clearSelection(),this._removeMouseDownListeners(),this._model.selectionStart=[e,t],this._model.selectionStartLength=i,this.refresh(),this._fireEventIfSelectionChanged()}rightClickSelect(e){this._isClickInSelection(e)||(this._selectWordAtCursor(e,!1)&&this.refresh(!0),this._fireEventIfSelectionChanged())}_getWordAt(e,t,i=!0,s=!0){if(e[0]>=this._bufferService.cols)return;let r=this._bufferService.buffer,n=r.lines.get(e[1]);if(!n)return;let a=r.translateBufferLineToString(e[1],!1),o=this._convertViewportColToCharacterIndex(n,e[0]),h=o,l=e[0]-o,c=0,d=0,g=0,_=0;if(a.charAt(o)===" "){for(;o>0&&a.charAt(o-1)===" ";)o--;for(;h1&&(_+=k-1,h+=k-1);f>0&&o>0&&!this._isCharWordSeparator(n.loadCell(f-1,this._workCell));){n.loadCell(f-1,this._workCell);let b=this._workCell.getChars().length;this._workCell.getWidth()===0?(c++,f--):b>1&&(g+=b-1,o-=b-1),o--,f--}for(;A1&&(_+=b-1,h+=b-1),h++,A++}}h++;let v=o+l-c+g,u=Math.min(this._bufferService.cols,h-o+c+d-g-_);if(!(!t&&a.slice(o,h).trim()==="")){if(i&&v===0&&n.getCodePoint(0)!==32){let f=r.lines.get(e[1]-1);if(f&&n.isWrapped&&f.getCodePoint(this._bufferService.cols-1)!==32){let A=this._getWordAt([this._bufferService.cols-1,e[1]-1],!1,!0,!1);if(A){let k=this._bufferService.cols-A.start;v-=k,u+=k}}}if(s&&v+u===this._bufferService.cols&&n.getCodePoint(this._bufferService.cols-1)!==32){let f=r.lines.get(e[1]+1);if(f!=null&&f.isWrapped&&f.getCodePoint(0)!==32){let A=this._getWordAt([0,e[1]+1],!1,!1,!0);A&&(u+=A.length)}}return{start:v,length:u}}}_selectWordAt(e,t){let i=this._getWordAt(e,t);if(i){for(;i.start<0;)i.start+=this._bufferService.cols,e[1]--;this._model.selectionStart=[i.start,e[1]],this._model.selectionStartLength=i.length}}_selectToWordAt(e){let t=this._getWordAt(e,!0);if(t){let i=e[1];for(;t.start<0;)t.start+=this._bufferService.cols,i--;if(!this._model.areSelectionValuesReversed())for(;t.start+t.length>this._bufferService.cols;)t.length-=this._bufferService.cols,i++;this._model.selectionEnd=[this._model.areSelectionValuesReversed()?t.start:t.start+t.length,i]}}_isCharWordSeparator(e){return e.getWidth()===0?!1:this._optionsService.rawOptions.wordSeparator.indexOf(e.getChars())>=0}_selectLineAt(e){let t=this._bufferService.buffer.getWrappedRangeForLine(e),i={start:{x:0,y:t.first},end:{x:this._bufferService.cols-1,y:t.last}};this._model.selectionStart=[0,t.first],this._model.selectionEnd=void 0,this._model.selectionStartLength=Ja(i,this._bufferService.cols)}};Eo=Ke([te(3,Dt),te(4,gs),te(5,Zo),te(6,Mt),te(7,Li),te(8,Mi)],Eo);var ja=class{constructor(){this._data={}}set(e,t,i){this._data[e]||(this._data[e]={}),this._data[e][t]=i}get(e,t){return this._data[e]?this._data[e][t]:void 0}clear(){this._data={}}},Ya=class{constructor(){this._color=new ja,this._css=new ja}setCss(e,t,i){this._css.set(e,t,i)}getCss(e,t){return this._css.get(e,t)}setColor(e,t,i){this._color.set(e,t,i)}getColor(e,t){return this._color.get(e,t)}clear(){this._color.clear(),this._css.clear()}},tt=Object.freeze((()=>{let e=[$e.toColor("#2e3436"),$e.toColor("#cc0000"),$e.toColor("#4e9a06"),$e.toColor("#c4a000"),$e.toColor("#3465a4"),$e.toColor("#75507b"),$e.toColor("#06989a"),$e.toColor("#d3d7cf"),$e.toColor("#555753"),$e.toColor("#ef2929"),$e.toColor("#8ae234"),$e.toColor("#fce94f"),$e.toColor("#729fcf"),$e.toColor("#ad7fa8"),$e.toColor("#34e2e2"),$e.toColor("#eeeeec")],t=[0,95,135,175,215,255];for(let i=0;i<216;i++){let s=t[i/36%6|0],r=t[i/6%6|0],n=t[i%6];e.push({css:et.toCss(s,r,n),rgba:et.toRgba(s,r,n)})}for(let i=0;i<24;i++){let s=8+i*10;e.push({css:et.toCss(s,s,s),rgba:et.toRgba(s,s,s)})}return e})()),ji=$e.toColor("#ffffff"),js=$e.toColor("#000000"),Va=$e.toColor("#ffffff"),Xa=js,Fs={css:"rgba(255, 255, 255, 0.3)",rgba:4294967117},Qf=ji,Bo=class extends Ie{constructor(e){super(),this._optionsService=e,this._contrastCache=new Ya,this._halfContrastCache=new Ya,this._onChangeColors=this._register(new Y),this.onChangeColors=this._onChangeColors.event,this._colors={foreground:ji,background:js,cursor:Va,cursorAccent:Xa,selectionForeground:void 0,selectionBackgroundTransparent:Fs,selectionBackgroundOpaque:We.blend(js,Fs),selectionInactiveBackgroundTransparent:Fs,selectionInactiveBackgroundOpaque:We.blend(js,Fs),scrollbarSliderBackground:We.opacity(ji,.2),scrollbarSliderHoverBackground:We.opacity(ji,.4),scrollbarSliderActiveBackground:We.opacity(ji,.5),overviewRulerBorder:ji,ansi:tt.slice(),contrastCache:this._contrastCache,halfContrastCache:this._halfContrastCache},this._updateRestoreColors(),this._setTheme(this._optionsService.rawOptions.theme),this._register(this._optionsService.onSpecificOptionChange("minimumContrastRatio",()=>this._contrastCache.clear())),this._register(this._optionsService.onSpecificOptionChange("theme",()=>this._setTheme(this._optionsService.rawOptions.theme)))}get colors(){return this._colors}_setTheme(e={}){let t=this._colors;if(t.foreground=He(e.foreground,ji),t.background=He(e.background,js),t.cursor=We.blend(t.background,He(e.cursor,Va)),t.cursorAccent=We.blend(t.background,He(e.cursorAccent,Xa)),t.selectionBackgroundTransparent=He(e.selectionBackground,Fs),t.selectionBackgroundOpaque=We.blend(t.background,t.selectionBackgroundTransparent),t.selectionInactiveBackgroundTransparent=He(e.selectionInactiveBackground,t.selectionBackgroundTransparent),t.selectionInactiveBackgroundOpaque=We.blend(t.background,t.selectionInactiveBackgroundTransparent),t.selectionForeground=e.selectionForeground?He(e.selectionForeground,qa):void 0,t.selectionForeground===qa&&(t.selectionForeground=void 0),We.isOpaque(t.selectionBackgroundTransparent)&&(t.selectionBackgroundTransparent=We.opacity(t.selectionBackgroundTransparent,.3)),We.isOpaque(t.selectionInactiveBackgroundTransparent)&&(t.selectionInactiveBackgroundTransparent=We.opacity(t.selectionInactiveBackgroundTransparent,.3)),t.scrollbarSliderBackground=He(e.scrollbarSliderBackground,We.opacity(t.foreground,.2)),t.scrollbarSliderHoverBackground=He(e.scrollbarSliderHoverBackground,We.opacity(t.foreground,.4)),t.scrollbarSliderActiveBackground=He(e.scrollbarSliderActiveBackground,We.opacity(t.foreground,.5)),t.overviewRulerBorder=He(e.overviewRulerBorder,Qf),t.ansi=tt.slice(),t.ansi[0]=He(e.black,tt[0]),t.ansi[1]=He(e.red,tt[1]),t.ansi[2]=He(e.green,tt[2]),t.ansi[3]=He(e.yellow,tt[3]),t.ansi[4]=He(e.blue,tt[4]),t.ansi[5]=He(e.magenta,tt[5]),t.ansi[6]=He(e.cyan,tt[6]),t.ansi[7]=He(e.white,tt[7]),t.ansi[8]=He(e.brightBlack,tt[8]),t.ansi[9]=He(e.brightRed,tt[9]),t.ansi[10]=He(e.brightGreen,tt[10]),t.ansi[11]=He(e.brightYellow,tt[11]),t.ansi[12]=He(e.brightBlue,tt[12]),t.ansi[13]=He(e.brightMagenta,tt[13]),t.ansi[14]=He(e.brightCyan,tt[14]),t.ansi[15]=He(e.brightWhite,tt[15]),e.extendedAnsi){let i=Math.min(t.ansi.length-16,e.extendedAnsi.length);for(let s=0;sn.index-a.index),s=[];for(let n of i){let a=this._services.get(n.id);if(!a)throw new Error(`[createInstance] ${e.name} depends on UNKNOWN service ${n.id._id}.`);s.push(a)}let r=i.length>0?i[0].index:t.length;if(t.length!==r)throw new Error(`[createInstance] First service dependency of ${e.name} at position ${r+1} conflicts with ${t.length} static arguments`);return new e(...t,...s)}},Hf={trace:0,debug:1,info:2,warn:3,error:4,off:5},Ff="xterm.js: ",Io=class extends Ie{constructor(e){super(),this._optionsService=e,this._logLevel=5,this._updateLogLevel(),this._register(this._optionsService.onSpecificOptionChange("logLevel",()=>this._updateLogLevel()))}get logLevel(){return this._logLevel}_updateLogLevel(){this._logLevel=Hf[this._optionsService.rawOptions.logLevel]}_evalLazyOptionalParams(e){for(let t=0;tthis._length)for(let t=this._length;t=e;s--)this._array[this._getCyclicIndex(s+i.length)]=this._array[this._getCyclicIndex(s)];for(let s=0;sthis._maxLength){let s=this._length+i.length-this._maxLength;this._startIndex+=s,this._length=this._maxLength,this.onTrimEmitter.fire(s)}else this._length+=i.length}trimStart(e){e>this._length&&(e=this._length),this._startIndex+=e,this._length-=e,this.onTrimEmitter.fire(e)}shiftElements(e,t,i){if(!(t<=0)){if(e<0||e>=this._length)throw new Error("start argument out of range");if(e+i<0)throw new Error("Cannot shift elements in list beyond index 0");if(i>0){for(let r=t-1;r>=0;r--)this.set(e+r+i,this.get(e+r));let s=e+t+i-this._length;if(s>0)for(this._length+=s;this._length>this._maxLength;)this._length--,this._startIndex++,this.onTrimEmitter.fire(1)}else for(let s=0;s>22,i&2097152?this._combined[t].charCodeAt(this._combined[t].length-1):s]}set(t,i){this._data[t*Be+1]=i[0],i[1].length>1?(this._combined[t]=i[1],this._data[t*Be+0]=t|2097152|i[2]<<22):this._data[t*Be+0]=i[1].charCodeAt(0)|i[2]<<22}getWidth(t){return this._data[t*Be+0]>>22}hasWidth(t){return this._data[t*Be+0]&12582912}getFg(t){return this._data[t*Be+1]}getBg(t){return this._data[t*Be+2]}hasContent(t){return this._data[t*Be+0]&4194303}getCodePoint(t){let i=this._data[t*Be+0];return i&2097152?this._combined[t].charCodeAt(this._combined[t].length-1):i&2097151}isCombined(t){return this._data[t*Be+0]&2097152}getString(t){let i=this._data[t*Be+0];return i&2097152?this._combined[t]:i&2097151?Ni(i&2097151):""}isProtected(t){return this._data[t*Be+2]&536870912}loadCell(t,i){return Lr=t*Be,i.content=this._data[Lr+0],i.fg=this._data[Lr+1],i.bg=this._data[Lr+2],i.content&2097152&&(i.combinedData=this._combined[t]),i.bg&268435456&&(i.extended=this._extendedAttrs[t]),i}setCell(t,i){i.content&2097152&&(this._combined[t]=i.combinedData),i.bg&268435456&&(this._extendedAttrs[t]=i.extended),this._data[t*Be+0]=i.content,this._data[t*Be+1]=i.fg,this._data[t*Be+2]=i.bg}setCellFromCodepoint(t,i,s,r){r.bg&268435456&&(this._extendedAttrs[t]=r.extended),this._data[t*Be+0]=i|s<<22,this._data[t*Be+1]=r.fg,this._data[t*Be+2]=r.bg}addCodepointToCell(t,i,s){let r=this._data[t*Be+0];r&2097152?this._combined[t]+=Ni(i):r&2097151?(this._combined[t]=Ni(r&2097151)+Ni(i),r&=-2097152,r|=2097152):r=i|1<<22,s&&(r&=-12582913,r|=s<<22),this._data[t*Be+0]=r}insertCells(t,i,s){if(t%=this.length,t&&this.getWidth(t-1)===2&&this.setCellFromCodepoint(t-1,0,1,s),i=0;--n)this.setCell(t+i+n,this.loadCell(t+n,r));for(let n=0;nthis.length){if(this._data.buffer.byteLength>=s*4)this._data=new Uint32Array(this._data.buffer,0,s);else{let r=new Uint32Array(s);r.set(this._data),this._data=r}for(let r=this.length;r=t&&delete this._combined[o]}let n=Object.keys(this._extendedAttrs);for(let a=0;a=t&&delete this._extendedAttrs[o]}}return this.length=t,s*4*Mn=0;--t)if(this._data[t*Be+0]&4194303)return t+(this._data[t*Be+0]>>22);return 0}getNoBgTrimmedLength(){for(let t=this.length-1;t>=0;--t)if(this._data[t*Be+0]&4194303||this._data[t*Be+2]&50331648)return t+(this._data[t*Be+0]>>22);return 0}copyCellsFrom(t,i,s,r,n){let a=t._data;if(n)for(let h=r-1;h>=0;h--){for(let l=0;l=i&&(this._combined[l-i+s]=t._combined[l])}}translateToString(t,i,s,r){i=i??0,s=s??this.length,t&&(s=Math.min(s,this.getTrimmedLength())),r&&(r.length=0);let n="";for(;i>22||1}return r&&r.push(i),n}};function Wf(e,t,i,s,r,n){let a=[];for(let o=0;o=o&&s0&&(f>d||c[f].getTrimmedLength()===0);f--)u++;u>0&&(a.push(o+c.length-u),a.push(u)),o+=c.length-1}return a}function zf(e,t){let i=[],s=0,r=t[s],n=0;for(let a=0;acr(e,l,t)).reduce((h,l)=>h+l),n=0,a=0,o=0;for(;oh&&(n-=h,a++);let l=e[a].getWidth(n-1)===2;l&&n--;let c=l?i-1:i;s.push(c),o+=c}return s}function cr(e,t,i){if(t===e.length-1)return e[t].getTrimmedLength();let s=!e[t].hasContent(i-1)&&e[t].getWidth(i-1)===1,r=e[t+1].getWidth(0)===2;return s&&r?i-1:i}var tc=class ic{constructor(t){this.line=t,this.isDisposed=!1,this._disposables=[],this._id=ic._nextId++,this._onDispose=this.register(new Y),this.onDispose=this._onDispose.event}get id(){return this._id}dispose(){this.isDisposed||(this.isDisposed=!0,this.line=-1,this._onDispose.fire(),_s(this._disposables),this._disposables.length=0)}register(t){return this._disposables.push(t),t}};tc._nextId=1;var qf=tc,nt={},Yi=nt.B;nt[0]={"`":"◆",a:"▒",b:"␉",c:"␌",d:"␍",e:"␊",f:"°",g:"±",h:"␤",i:"␋",j:"┘",k:"┐",l:"┌",m:"└",n:"┼",o:"⎺",p:"⎻",q:"─",r:"⎼",s:"⎽",t:"├",u:"┤",v:"┴",w:"┬",x:"│",y:"≤",z:"≥","{":"π","|":"≠","}":"£","~":"·"};nt.A={"#":"£"};nt.B=void 0;nt[4]={"#":"£","@":"¾","[":"ij","\\":"½","]":"|","{":"¨","|":"f","}":"¼","~":"´"};nt.C=nt[5]={"[":"Ä","\\":"Ö","]":"Å","^":"Ü","`":"é","{":"ä","|":"ö","}":"å","~":"ü"};nt.R={"#":"£","@":"à","[":"°","\\":"ç","]":"§","{":"é","|":"ù","}":"è","~":"¨"};nt.Q={"@":"à","[":"â","\\":"ç","]":"ê","^":"î","`":"ô","{":"é","|":"ù","}":"è","~":"û"};nt.K={"@":"§","[":"Ä","\\":"Ö","]":"Ü","{":"ä","|":"ö","}":"ü","~":"ß"};nt.Y={"#":"£","@":"§","[":"°","\\":"ç","]":"é","`":"ù","{":"à","|":"ò","}":"è","~":"ì"};nt.E=nt[6]={"@":"Ä","[":"Æ","\\":"Ø","]":"Å","^":"Ü","`":"ä","{":"æ","|":"ø","}":"å","~":"ü"};nt.Z={"#":"£","@":"§","[":"¡","\\":"Ñ","]":"¿","{":"°","|":"ñ","}":"ç"};nt.H=nt[7]={"@":"É","[":"Ä","\\":"Ö","]":"Å","^":"Ü","`":"é","{":"ä","|":"ö","}":"å","~":"ü"};nt["="]={"#":"ù","@":"à","[":"é","\\":"ç","]":"ê","^":"î",_:"è","`":"ô","{":"ä","|":"ö","}":"ü","~":"û"};var el=4294967295,tl=class{constructor(e,t,i){this._hasScrollback=e,this._optionsService=t,this._bufferService=i,this.ydisp=0,this.ybase=0,this.y=0,this.x=0,this.tabs={},this.savedY=0,this.savedX=0,this.savedCurAttrData=Xe.clone(),this.savedCharset=Yi,this.markers=[],this._nullCell=si.fromCharData([0,Ah,1,0]),this._whitespaceCell=si.fromCharData([0,zi,1,32]),this._isClearing=!1,this._memoryCleanupQueue=new Zr,this._memoryCleanupPosition=0,this._cols=this._bufferService.cols,this._rows=this._bufferService.rows,this.lines=new Za(this._getCorrectBufferLength(this._rows)),this.scrollTop=0,this.scrollBottom=this._rows-1,this.setupTabStops()}getNullCell(e){return e?(this._nullCell.fg=e.fg,this._nullCell.bg=e.bg,this._nullCell.extended=e.extended):(this._nullCell.fg=0,this._nullCell.bg=0,this._nullCell.extended=new jr),this._nullCell}getWhitespaceCell(e){return e?(this._whitespaceCell.fg=e.fg,this._whitespaceCell.bg=e.bg,this._whitespaceCell.extended=e.extended):(this._whitespaceCell.fg=0,this._whitespaceCell.bg=0,this._whitespaceCell.extended=new jr),this._whitespaceCell}getBlankLine(e,t){return new Ys(this._bufferService.cols,this.getNullCell(e),t)}get hasScrollback(){return this._hasScrollback&&this.lines.maxLength>this._rows}get isCursorInViewport(){let e=this.ybase+this.y-this.ydisp;return e>=0&&eel?el:t}fillViewportRows(e){if(this.lines.length===0){e===void 0&&(e=Xe);let t=this._rows;for(;t--;)this.lines.push(this.getBlankLine(e))}}clear(){this.ydisp=0,this.ybase=0,this.y=0,this.x=0,this.lines=new Za(this._getCorrectBufferLength(this._rows)),this.scrollTop=0,this.scrollBottom=this._rows-1,this.setupTabStops()}resize(e,t){let i=this.getNullCell(Xe),s=0,r=this._getCorrectBufferLength(t);if(r>this.lines.maxLength&&(this.lines.maxLength=r),this.lines.length>0){if(this._cols0&&this.lines.length<=this.ybase+this.y+n+1?(this.ybase--,n++,this.ydisp>0&&this.ydisp--):this.lines.push(new Ys(e,i)));else for(let a=this._rows;a>t;a--)this.lines.length>t+this.ybase&&(this.lines.length>this.ybase+this.y+1?this.lines.pop():(this.ybase++,this.ydisp++));if(r0&&(this.lines.trimStart(a),this.ybase=Math.max(this.ybase-a,0),this.ydisp=Math.max(this.ydisp-a,0),this.savedY=Math.max(this.savedY-a,0)),this.lines.maxLength=r}this.x=Math.min(this.x,e-1),this.y=Math.min(this.y,t-1),n&&(this.y+=n),this.savedX=Math.min(this.savedX,e-1),this.scrollTop=0}if(this.scrollBottom=t-1,this._isReflowEnabled&&(this._reflow(e,t),this._cols>e))for(let n=0;n.1*this.lines.length&&(this._memoryCleanupPosition=0,this._memoryCleanupQueue.enqueue(()=>this._batchedMemoryCleanup()))}_batchedMemoryCleanup(){let e=!0;this._memoryCleanupPosition>=this.lines.length&&(this._memoryCleanupPosition=0,e=!1);let t=0;for(;this._memoryCleanupPosition100)return!0;return e}get _isReflowEnabled(){let e=this._optionsService.rawOptions.windowsPty;return e&&e.buildNumber?this._hasScrollback&&e.backend==="conpty"&&e.buildNumber>=21376:this._hasScrollback&&!this._optionsService.rawOptions.windowsMode}_reflow(e,t){this._cols!==e&&(e>this._cols?this._reflowLarger(e,t):this._reflowSmaller(e,t))}_reflowLarger(e,t){let i=this._optionsService.rawOptions.reflowCursorLine,s=Wf(this.lines,this._cols,e,this.ybase+this.y,this.getNullCell(Xe),i);if(s.length>0){let r=zf(this.lines,s);Uf(this.lines,r.layout),this._reflowLargerAdjustViewport(e,t,r.countRemoved)}}_reflowLargerAdjustViewport(e,t,i){let s=this.getNullCell(Xe),r=i;for(;r-- >0;)this.ybase===0?(this.y>0&&this.y--,this.lines.length=0;a--){let o=this.lines.get(a);if(!o||!o.isWrapped&&o.getTrimmedLength()<=e)continue;let h=[o];for(;o.isWrapped&&a>0;)o=this.lines.get(--a),h.unshift(o);if(!i){let b=this.ybase+this.y;if(b>=a&&b0&&(r.push({start:a+h.length+n,newLines:_}),n+=_.length),h.push(..._);let v=c.length-1,u=c[v];u===0&&(v--,u=c[v]);let f=h.length-d-1,A=l;for(;f>=0;){let b=Math.min(A,u);if(h[v]===void 0)break;if(h[v].copyCellsFrom(h[f],A-b,u-b,b,!0),u-=b,u===0&&(v--,u=c[v]),A-=b,A===0){f--;let w=Math.max(f,0);A=cr(h,w,this._cols)}}for(let b=0;b0;)this.ybase===0?this.y0){let a=[],o=[];for(let u=0;u=0;u--)if(d&&d.start>l+g){for(let f=d.newLines.length-1;f>=0;f--)this.lines.set(u--,d.newLines[f]);u++,a.push({index:l+1,amount:d.newLines.length}),g+=d.newLines.length,d=r[++c]}else this.lines.set(u,o[l--]);let _=0;for(let u=a.length-1;u>=0;u--)a[u].index+=_,this.lines.onInsertEmitter.fire(a[u]),_+=a[u].amount;let v=Math.max(0,h+n-this.lines.maxLength);v>0&&this.lines.onTrimEmitter.fire(v)}}translateBufferLineToString(e,t,i=0,s){let r=this.lines.get(e);return r?r.translateToString(t,i,s):""}getWrappedRangeForLine(e){let t=e,i=e;for(;t>0&&this.lines.get(t).isWrapped;)t--;for(;i+10;);return e>=this._cols?this._cols-1:e<0?0:e}nextStop(e){for(e==null&&(e=this.x);!this.tabs[++e]&&e=this._cols?this._cols-1:e<0?0:e}clearMarkers(e){this._isClearing=!0;for(let t=0;t{t.line-=i,t.line<0&&t.dispose()})),t.register(this.lines.onInsert(i=>{t.line>=i.index&&(t.line+=i.amount)})),t.register(this.lines.onDelete(i=>{t.line>=i.index&&t.linei.index&&(t.line-=i.amount)})),t.register(t.onDispose(()=>this._removeMarker(t))),t}_removeMarker(e){this._isClearing||this.markers.splice(this.markers.indexOf(e),1)}},Gf=class extends Ie{constructor(e,t){super(),this._optionsService=e,this._bufferService=t,this._onBufferActivate=this._register(new Y),this.onBufferActivate=this._onBufferActivate.event,this.reset(),this._register(this._optionsService.onSpecificOptionChange("scrollback",()=>this.resize(this._bufferService.cols,this._bufferService.rows))),this._register(this._optionsService.onSpecificOptionChange("tabStopWidth",()=>this.setupTabStops()))}reset(){this._normal=new tl(!0,this._optionsService,this._bufferService),this._normal.fillViewportRows(),this._alt=new tl(!1,this._optionsService,this._bufferService),this._activeBuffer=this._normal,this._onBufferActivate.fire({activeBuffer:this._normal,inactiveBuffer:this._alt}),this.setupTabStops()}get alt(){return this._alt}get active(){return this._activeBuffer}get normal(){return this._normal}activateNormalBuffer(){this._activeBuffer!==this._normal&&(this._normal.x=this._alt.x,this._normal.y=this._alt.y,this._alt.clearAllMarkers(),this._alt.clear(),this._activeBuffer=this._normal,this._onBufferActivate.fire({activeBuffer:this._normal,inactiveBuffer:this._alt}))}activateAltBuffer(e){this._activeBuffer!==this._alt&&(this._alt.fillViewportRows(e),this._alt.x=this._normal.x,this._alt.y=this._normal.y,this._activeBuffer=this._alt,this._onBufferActivate.fire({activeBuffer:this._alt,inactiveBuffer:this._normal}))}resize(e,t){this._normal.resize(e,t),this._alt.resize(e,t),this.setupTabStops(e)}setupTabStops(e){this._normal.setupTabStops(e),this._alt.setupTabStops(e)}},sc=2,rc=1,Do=class extends Ie{constructor(e){super(),this.isUserScrolling=!1,this._onResize=this._register(new Y),this.onResize=this._onResize.event,this._onScroll=this._register(new Y),this.onScroll=this._onScroll.event,this.cols=Math.max(e.rawOptions.cols||0,sc),this.rows=Math.max(e.rawOptions.rows||0,rc),this.buffers=this._register(new Gf(e,this)),this._register(this.buffers.onBufferActivate(t=>{this._onScroll.fire(t.activeBuffer.ydisp)}))}get buffer(){return this.buffers.active}resize(e,t){let i=this.cols!==e,s=this.rows!==t;this.cols=e,this.rows=t,this.buffers.resize(e,t),this._onResize.fire({cols:e,rows:t,colsChanged:i,rowsChanged:s})}reset(){this.buffers.reset(),this.isUserScrolling=!1}scroll(e,t=!1){let i=this.buffer,s;s=this._cachedBlankLine,(!s||s.length!==this.cols||s.getFg(0)!==e.fg||s.getBg(0)!==e.bg)&&(s=i.getBlankLine(e,t),this._cachedBlankLine=s),s.isWrapped=t;let r=i.ybase+i.scrollTop,n=i.ybase+i.scrollBottom;if(i.scrollTop===0){let a=i.lines.isFull;n===i.lines.length-1?a?i.lines.recycle().copyFrom(s):i.lines.push(s.clone()):i.lines.splice(n+1,0,s.clone()),a?this.isUserScrolling&&(i.ydisp=Math.max(i.ydisp-1,0)):(i.ybase++,this.isUserScrolling||i.ydisp++)}else{let a=n-r+1;i.lines.shiftElements(r+1,a-1,-1),i.lines.set(n,s.clone())}this.isUserScrolling||(i.ydisp=i.ybase),this._onScroll.fire(i.ydisp)}scrollLines(e,t){let i=this.buffer;if(e<0){if(i.ydisp===0)return;this.isUserScrolling=!0}else e+i.ydisp>=i.ybase&&(this.isUserScrolling=!1);let s=i.ydisp;i.ydisp=Math.max(Math.min(i.ydisp+e,i.ybase),0),s!==i.ydisp&&(t||this._onScroll.fire(i.ydisp))}};Do=Ke([te(0,Mt)],Do);var As={cols:80,rows:24,cursorBlink:!1,cursorStyle:"block",cursorWidth:1,cursorInactiveStyle:"outline",customGlyphs:!0,drawBoldTextInBrightColors:!0,documentOverride:null,fastScrollModifier:"alt",fastScrollSensitivity:5,fontFamily:"monospace",fontSize:15,fontWeight:"normal",fontWeightBold:"bold",ignoreBracketedPasteMode:!1,lineHeight:1,letterSpacing:0,linkHandler:null,logLevel:"info",logger:null,scrollback:1e3,scrollOnEraseInDisplay:!1,scrollOnUserInput:!0,scrollSensitivity:1,screenReaderMode:!1,smoothScrollDuration:0,macOptionIsMeta:!1,macOptionClickForcesSelection:!1,minimumContrastRatio:1,disableStdin:!1,allowProposedApi:!1,allowTransparency:!1,tabStopWidth:8,theme:{},reflowCursorLine:!1,rescaleOverlappingGlyphs:!1,rightClickSelectsWord:Xr,windowOptions:{},windowsMode:!1,windowsPty:{},wordSeparator:" ()[]{}',\"`",altClickMovesCursor:!0,convertEol:!1,termName:"xterm",cancelEvents:!1,overviewRuler:{}},Kf=["normal","bold","100","200","300","400","500","600","700","800","900"],Jf=class extends Ie{constructor(e){super(),this._onOptionChange=this._register(new Y),this.onOptionChange=this._onOptionChange.event;let t={...As};for(let i in e)if(i in t)try{let s=e[i];t[i]=this._sanitizeAndValidateOption(i,s)}catch(s){console.error(s)}this.rawOptions=t,this.options={...t},this._setupOptions(),this._register(ze(()=>{this.rawOptions.linkHandler=null,this.rawOptions.documentOverride=null}))}onSpecificOptionChange(e,t){return this.onOptionChange(i=>{i===e&&t(this.rawOptions[e])})}onMultipleOptionChange(e,t){return this.onOptionChange(i=>{e.indexOf(i)!==-1&&t()})}_setupOptions(){let e=i=>{if(!(i in As))throw new Error(`No option with key "${i}"`);return this.rawOptions[i]},t=(i,s)=>{if(!(i in As))throw new Error(`No option with key "${i}"`);s=this._sanitizeAndValidateOption(i,s),this.rawOptions[i]!==s&&(this.rawOptions[i]=s,this._onOptionChange.fire(i))};for(let i in this.rawOptions){let s={get:e.bind(this,i),set:t.bind(this,i)};Object.defineProperty(this.options,i,s)}}_sanitizeAndValidateOption(e,t){switch(e){case"cursorStyle":if(t||(t=As[e]),!jf(t))throw new Error(`"${t}" is not a valid value for ${e}`);break;case"wordSeparator":t||(t=As[e]);break;case"fontWeight":case"fontWeightBold":if(typeof t=="number"&&1<=t&&t<=1e3)break;t=Kf.includes(t)?t:As[e];break;case"cursorWidth":t=Math.floor(t);case"lineHeight":case"tabStopWidth":if(t<1)throw new Error(`${e} cannot be less than 1, value: ${t}`);break;case"minimumContrastRatio":t=Math.max(1,Math.min(21,Math.round(t*10)/10));break;case"scrollback":if(t=Math.min(t,4294967295),t<0)throw new Error(`${e} cannot be less than 0, value: ${t}`);break;case"fastScrollSensitivity":case"scrollSensitivity":if(t<=0)throw new Error(`${e} cannot be less than or equal to 0, value: ${t}`);break;case"rows":case"cols":if(!t&&t!==0)throw new Error(`${e} must be numeric, value: ${t}`);break;case"windowsPty":t=t??{};break}return t}};function jf(e){return e==="block"||e==="underline"||e==="bar"}function Vs(e,t=5){if(typeof e!="object")return e;let i=Array.isArray(e)?[]:{};for(let s in e)i[s]=t<=1?e[s]:e[s]&&Vs(e[s],t-1);return i}var il=Object.freeze({insertMode:!1}),sl=Object.freeze({applicationCursorKeys:!1,applicationKeypad:!1,bracketedPasteMode:!1,cursorBlink:void 0,cursorStyle:void 0,origin:!1,reverseWraparound:!1,sendFocus:!1,synchronizedOutput:!1,wraparound:!0}),Mo=class extends Ie{constructor(e,t,i){super(),this._bufferService=e,this._logService=t,this._optionsService=i,this.isCursorInitialized=!1,this.isCursorHidden=!1,this._onData=this._register(new Y),this.onData=this._onData.event,this._onUserInput=this._register(new Y),this.onUserInput=this._onUserInput.event,this._onBinary=this._register(new Y),this.onBinary=this._onBinary.event,this._onRequestScrollToBottom=this._register(new Y),this.onRequestScrollToBottom=this._onRequestScrollToBottom.event,this.modes=Vs(il),this.decPrivateModes=Vs(sl)}reset(){this.modes=Vs(il),this.decPrivateModes=Vs(sl)}triggerDataEvent(e,t=!1){if(this._optionsService.rawOptions.disableStdin)return;let i=this._bufferService.buffer;t&&this._optionsService.rawOptions.scrollOnUserInput&&i.ybase!==i.ydisp&&this._onRequestScrollToBottom.fire(),t&&this._onUserInput.fire(),this._logService.debug(`sending data "${e}"`),this._logService.trace("sending data (codes)",()=>e.split("").map(s=>s.charCodeAt(0))),this._onData.fire(e)}triggerBinaryEvent(e){this._optionsService.rawOptions.disableStdin||(this._logService.debug(`sending binary "${e}"`),this._logService.trace("sending binary (codes)",()=>e.split("").map(t=>t.charCodeAt(0))),this._onBinary.fire(e))}};Mo=Ke([te(0,Dt),te(1,yh),te(2,Mt)],Mo);var rl={NONE:{events:0,restrict:()=>!1},X10:{events:1,restrict:e=>e.button===4||e.action!==1?!1:(e.ctrl=!1,e.alt=!1,e.shift=!1,!0)},VT200:{events:19,restrict:e=>e.action!==32},DRAG:{events:23,restrict:e=>!(e.action===32&&e.button===3)},ANY:{events:31,restrict:e=>!0}};function Ln(e,t){let i=(e.ctrl?16:0)|(e.shift?4:0)|(e.alt?8:0);return e.button===4?(i|=64,i|=e.action):(i|=e.button&3,e.button&4&&(i|=64),e.button&8&&(i|=128),e.action===32?i|=32:e.action===0&&!t&&(i|=3)),i}var Rn=String.fromCharCode,nl={DEFAULT:e=>{let t=[Ln(e,!1)+32,e.col+32,e.row+32];return t[0]>255||t[1]>255||t[2]>255?"":`\x1B[M${Rn(t[0])}${Rn(t[1])}${Rn(t[2])}`},SGR:e=>{let t=e.action===0&&e.button!==4?"m":"M";return`\x1B[<${Ln(e,!0)};${e.col};${e.row}${t}`},SGR_PIXELS:e=>{let t=e.action===0&&e.button!==4?"m":"M";return`\x1B[<${Ln(e,!0)};${e.x};${e.y}${t}`}},Lo=class extends Ie{constructor(e,t,i){super(),this._bufferService=e,this._coreService=t,this._optionsService=i,this._protocols={},this._encodings={},this._activeProtocol="",this._activeEncoding="",this._lastEvent=null,this._wheelPartialScroll=0,this._onProtocolChange=this._register(new Y),this.onProtocolChange=this._onProtocolChange.event;for(let s of Object.keys(rl))this.addProtocol(s,rl[s]);for(let s of Object.keys(nl))this.addEncoding(s,nl[s]);this.reset()}addProtocol(e,t){this._protocols[e]=t}addEncoding(e,t){this._encodings[e]=t}get activeProtocol(){return this._activeProtocol}get areMouseEventsActive(){return this._protocols[this._activeProtocol].events!==0}set activeProtocol(e){if(!this._protocols[e])throw new Error(`unknown protocol "${e}"`);this._activeProtocol=e,this._onProtocolChange.fire(this._protocols[e].events)}get activeEncoding(){return this._activeEncoding}set activeEncoding(e){if(!this._encodings[e])throw new Error(`unknown encoding "${e}"`);this._activeEncoding=e}reset(){this.activeProtocol="NONE",this.activeEncoding="DEFAULT",this._lastEvent=null,this._wheelPartialScroll=0}consumeWheelEvent(e,t,i){if(e.deltaY===0||e.shiftKey||t===void 0||i===void 0)return 0;let s=t/i,r=this._applyScrollModifier(e.deltaY,e);return e.deltaMode===WheelEvent.DOM_DELTA_PIXEL?(r/=s+0,Math.abs(e.deltaY)<50&&(r*=.3),this._wheelPartialScroll+=r,r=Math.floor(Math.abs(this._wheelPartialScroll))*(this._wheelPartialScroll>0?1:-1),this._wheelPartialScroll%=1):e.deltaMode===WheelEvent.DOM_DELTA_PAGE&&(r*=this._bufferService.rows),r}_applyScrollModifier(e,t){return t.altKey||t.ctrlKey||t.shiftKey?e*this._optionsService.rawOptions.fastScrollSensitivity*this._optionsService.rawOptions.scrollSensitivity:e*this._optionsService.rawOptions.scrollSensitivity}triggerMouseEvent(e){if(e.col<0||e.col>=this._bufferService.cols||e.row<0||e.row>=this._bufferService.rows||e.button===4&&e.action===32||e.button===3&&e.action!==32||e.button!==4&&(e.action===2||e.action===3)||(e.col++,e.row++,e.action===32&&this._lastEvent&&this._equalEvents(this._lastEvent,e,this._activeEncoding==="SGR_PIXELS"))||!this._protocols[this._activeProtocol].restrict(e))return!1;let t=this._encodings[this._activeEncoding](e);return t&&(this._activeEncoding==="DEFAULT"?this._coreService.triggerBinaryEvent(t):this._coreService.triggerDataEvent(t,!0)),this._lastEvent=e,!0}explainEvents(e){return{down:!!(e&1),up:!!(e&2),drag:!!(e&4),move:!!(e&8),wheel:!!(e&16)}}_equalEvents(e,t,i){if(i){if(e.x!==t.x||e.y!==t.y)return!1}else if(e.col!==t.col||e.row!==t.row)return!1;return!(e.button!==t.button||e.action!==t.action||e.ctrl!==t.ctrl||e.alt!==t.alt||e.shift!==t.shift)}};Lo=Ke([te(0,Dt),te(1,gs),te(2,Mt)],Lo);var Tn=[[768,879],[1155,1158],[1160,1161],[1425,1469],[1471,1471],[1473,1474],[1476,1477],[1479,1479],[1536,1539],[1552,1557],[1611,1630],[1648,1648],[1750,1764],[1767,1768],[1770,1773],[1807,1807],[1809,1809],[1840,1866],[1958,1968],[2027,2035],[2305,2306],[2364,2364],[2369,2376],[2381,2381],[2385,2388],[2402,2403],[2433,2433],[2492,2492],[2497,2500],[2509,2509],[2530,2531],[2561,2562],[2620,2620],[2625,2626],[2631,2632],[2635,2637],[2672,2673],[2689,2690],[2748,2748],[2753,2757],[2759,2760],[2765,2765],[2786,2787],[2817,2817],[2876,2876],[2879,2879],[2881,2883],[2893,2893],[2902,2902],[2946,2946],[3008,3008],[3021,3021],[3134,3136],[3142,3144],[3146,3149],[3157,3158],[3260,3260],[3263,3263],[3270,3270],[3276,3277],[3298,3299],[3393,3395],[3405,3405],[3530,3530],[3538,3540],[3542,3542],[3633,3633],[3636,3642],[3655,3662],[3761,3761],[3764,3769],[3771,3772],[3784,3789],[3864,3865],[3893,3893],[3895,3895],[3897,3897],[3953,3966],[3968,3972],[3974,3975],[3984,3991],[3993,4028],[4038,4038],[4141,4144],[4146,4146],[4150,4151],[4153,4153],[4184,4185],[4448,4607],[4959,4959],[5906,5908],[5938,5940],[5970,5971],[6002,6003],[6068,6069],[6071,6077],[6086,6086],[6089,6099],[6109,6109],[6155,6157],[6313,6313],[6432,6434],[6439,6440],[6450,6450],[6457,6459],[6679,6680],[6912,6915],[6964,6964],[6966,6970],[6972,6972],[6978,6978],[7019,7027],[7616,7626],[7678,7679],[8203,8207],[8234,8238],[8288,8291],[8298,8303],[8400,8431],[12330,12335],[12441,12442],[43014,43014],[43019,43019],[43045,43046],[64286,64286],[65024,65039],[65056,65059],[65279,65279],[65529,65531]],Yf=[[68097,68099],[68101,68102],[68108,68111],[68152,68154],[68159,68159],[119143,119145],[119155,119170],[119173,119179],[119210,119213],[119362,119364],[917505,917505],[917536,917631],[917760,917999]],it;function Vf(e,t){let i=0,s=t.length-1,r;if(et[s][1])return!1;for(;s>=i;)if(r=i+s>>1,e>t[r][1])i=r+1;else if(e=131072&&e<=196605||e>=196608&&e<=262141?2:1}charProperties(e,t){let i=this.wcwidth(e),s=i===0&&t!==0;if(s){let r=Xi.extractWidth(t);r===0?s=!1:r>i&&(i=r)}return Xi.createPropertyValue(0,i,s)}},Xi=class $r{constructor(){this._providers=Object.create(null),this._active="",this._onChange=new Y,this.onChange=this._onChange.event;let t=new Xf;this.register(t),this._active=t.version,this._activeProvider=t}static extractShouldJoin(t){return(t&1)!==0}static extractWidth(t){return t>>1&3}static extractCharKind(t){return t>>3}static createPropertyValue(t,i,s=!1){return(t&16777215)<<3|(i&3)<<1|(s?1:0)}dispose(){this._onChange.dispose()}get versions(){return Object.keys(this._providers)}get activeVersion(){return this._active}set activeVersion(t){if(!this._providers[t])throw new Error(`unknown Unicode version "${t}"`);this._active=t,this._activeProvider=this._providers[t],this._onChange.fire(t)}register(t){this._providers[t.version]=t}wcwidth(t){return this._activeProvider.wcwidth(t)}getStringCellWidth(t){let i=0,s=0,r=t.length;for(let n=0;n=r)return i+this.wcwidth(a);let l=t.charCodeAt(n);56320<=l&&l<=57343?a=(a-55296)*1024+l-56320+65536:i+=this.wcwidth(l)}let o=this.charProperties(a,s),h=$r.extractWidth(o);$r.extractShouldJoin(o)&&(h-=$r.extractWidth(s)),i+=h,s=o}return i}charProperties(t,i){return this._activeProvider.charProperties(t,i)}},Zf=class{constructor(){this.glevel=0,this._charsets=[]}reset(){this.charset=void 0,this._charsets=[],this.glevel=0}setgLevel(e){this.glevel=e,this.charset=this._charsets[e]}setgCharset(e,t){this._charsets[e]=t,this.glevel===e&&(this.charset=t)}};function ol(e){var s;let t=(s=e.buffer.lines.get(e.buffer.ybase+e.buffer.y-1))==null?void 0:s.get(e.cols-1),i=e.buffer.lines.get(e.buffer.ybase+e.buffer.y);i&&t&&(i.isWrapped=t[3]!==0&&t[3]!==32)}var Ws=2147483647,ev=256,nc=class Ro{constructor(t=32,i=32){if(this.maxLength=t,this.maxSubParamsLength=i,i>ev)throw new Error("maxSubParamsLength must not be greater than 256");this.params=new Int32Array(t),this.length=0,this._subParams=new Int32Array(i),this._subParamsLength=0,this._subParamsIdx=new Uint16Array(t),this._rejectDigits=!1,this._rejectSubDigits=!1,this._digitIsSub=!1}static fromArray(t){let i=new Ro;if(!t.length)return i;for(let s=Array.isArray(t[0])?1:0;s>8,r=this._subParamsIdx[i]&255;r-s>0&&t.push(Array.prototype.slice.call(this._subParams,s,r))}return t}reset(){this.length=0,this._subParamsLength=0,this._rejectDigits=!1,this._rejectSubDigits=!1,this._digitIsSub=!1}addParam(t){if(this._digitIsSub=!1,this.length>=this.maxLength){this._rejectDigits=!0;return}if(t<-1)throw new Error("values lesser than -1 are not allowed");this._subParamsIdx[this.length]=this._subParamsLength<<8|this._subParamsLength,this.params[this.length++]=t>Ws?Ws:t}addSubParam(t){if(this._digitIsSub=!0,!!this.length){if(this._rejectDigits||this._subParamsLength>=this.maxSubParamsLength){this._rejectSubDigits=!0;return}if(t<-1)throw new Error("values lesser than -1 are not allowed");this._subParams[this._subParamsLength++]=t>Ws?Ws:t,this._subParamsIdx[this.length-1]++}}hasSubParams(t){return(this._subParamsIdx[t]&255)-(this._subParamsIdx[t]>>8)>0}getSubParams(t){let i=this._subParamsIdx[t]>>8,s=this._subParamsIdx[t]&255;return s-i>0?this._subParams.subarray(i,s):null}getSubParamsAll(){let t={};for(let i=0;i>8,r=this._subParamsIdx[i]&255;r-s>0&&(t[i]=this._subParams.slice(s,r))}return t}addDigit(t){let i;if(this._rejectDigits||!(i=this._digitIsSub?this._subParamsLength:this.length)||this._digitIsSub&&this._rejectSubDigits)return;let s=this._digitIsSub?this._subParams:this.params,r=s[i-1];s[i-1]=~r?Math.min(r*10+t,Ws):t}},zs=[],tv=class{constructor(){this._state=0,this._active=zs,this._id=-1,this._handlers=Object.create(null),this._handlerFb=()=>{},this._stack={paused:!1,loopPosition:0,fallThrough:!1}}registerHandler(e,t){this._handlers[e]===void 0&&(this._handlers[e]=[]);let i=this._handlers[e];return i.push(t),{dispose:()=>{let s=i.indexOf(t);s!==-1&&i.splice(s,1)}}}clearHandler(e){this._handlers[e]&&delete this._handlers[e]}setHandlerFallback(e){this._handlerFb=e}dispose(){this._handlers=Object.create(null),this._handlerFb=()=>{},this._active=zs}reset(){if(this._state===2)for(let e=this._stack.paused?this._stack.loopPosition-1:this._active.length-1;e>=0;--e)this._active[e].end(!1);this._stack.paused=!1,this._active=zs,this._id=-1,this._state=0}_start(){if(this._active=this._handlers[this._id]||zs,!this._active.length)this._handlerFb(this._id,"START");else for(let e=this._active.length-1;e>=0;e--)this._active[e].start()}_put(e,t,i){if(!this._active.length)this._handlerFb(this._id,"PUT",dn(e,t,i));else for(let s=this._active.length-1;s>=0;s--)this._active[s].put(e,t,i)}start(){this.reset(),this._state=1}put(e,t,i){if(this._state!==3){if(this._state===1)for(;t0&&this._put(e,t,i)}}end(e,t=!0){if(this._state!==0){if(this._state!==3)if(this._state===1&&this._start(),!this._active.length)this._handlerFb(this._id,"END",e);else{let i=!1,s=this._active.length-1,r=!1;if(this._stack.paused&&(s=this._stack.loopPosition-1,i=t,r=this._stack.fallThrough,this._stack.paused=!1),!r&&i===!1){for(;s>=0&&(i=this._active[s].end(e),i!==!0);s--)if(i instanceof Promise)return this._stack.paused=!0,this._stack.loopPosition=s,this._stack.fallThrough=!1,i;s--}for(;s>=0;s--)if(i=this._active[s].end(!1),i instanceof Promise)return this._stack.paused=!0,this._stack.loopPosition=s,this._stack.fallThrough=!0,i}this._active=zs,this._id=-1,this._state=0}}},Ft=class{constructor(t){this._handler=t,this._data="",this._hitLimit=!1}start(){this._data="",this._hitLimit=!1}put(t,i,s){this._hitLimit||(this._data+=dn(t,i,s),this._data.length>1e7&&(this._data="",this._hitLimit=!0))}end(t){let i=!1;if(this._hitLimit)i=!1;else if(t&&(i=this._handler(this._data),i instanceof Promise))return i.then(s=>(this._data="",this._hitLimit=!1,s));return this._data="",this._hitLimit=!1,i}},Us=[],iv=class{constructor(){this._handlers=Object.create(null),this._active=Us,this._ident=0,this._handlerFb=()=>{},this._stack={paused:!1,loopPosition:0,fallThrough:!1}}dispose(){this._handlers=Object.create(null),this._handlerFb=()=>{},this._active=Us}registerHandler(e,t){this._handlers[e]===void 0&&(this._handlers[e]=[]);let i=this._handlers[e];return i.push(t),{dispose:()=>{let s=i.indexOf(t);s!==-1&&i.splice(s,1)}}}clearHandler(e){this._handlers[e]&&delete this._handlers[e]}setHandlerFallback(e){this._handlerFb=e}reset(){if(this._active.length)for(let e=this._stack.paused?this._stack.loopPosition-1:this._active.length-1;e>=0;--e)this._active[e].unhook(!1);this._stack.paused=!1,this._active=Us,this._ident=0}hook(e,t){if(this.reset(),this._ident=e,this._active=this._handlers[e]||Us,!this._active.length)this._handlerFb(this._ident,"HOOK",t);else for(let i=this._active.length-1;i>=0;i--)this._active[i].hook(t)}put(e,t,i){if(!this._active.length)this._handlerFb(this._ident,"PUT",dn(e,t,i));else for(let s=this._active.length-1;s>=0;s--)this._active[s].put(e,t,i)}unhook(e,t=!0){if(!this._active.length)this._handlerFb(this._ident,"UNHOOK",e);else{let i=!1,s=this._active.length-1,r=!1;if(this._stack.paused&&(s=this._stack.loopPosition-1,i=t,r=this._stack.fallThrough,this._stack.paused=!1),!r&&i===!1){for(;s>=0&&(i=this._active[s].unhook(e),i!==!0);s--)if(i instanceof Promise)return this._stack.paused=!0,this._stack.loopPosition=s,this._stack.fallThrough=!1,i;s--}for(;s>=0;s--)if(i=this._active[s].unhook(!1),i instanceof Promise)return this._stack.paused=!0,this._stack.loopPosition=s,this._stack.fallThrough=!0,i}this._active=Us,this._ident=0}},Xs=new nc;Xs.addParam(0);var al=class{constructor(e){this._handler=e,this._data="",this._params=Xs,this._hitLimit=!1}hook(e){this._params=e.length>1||e.params[0]?e.clone():Xs,this._data="",this._hitLimit=!1}put(e,t,i){this._hitLimit||(this._data+=dn(e,t,i),this._data.length>1e7&&(this._data="",this._hitLimit=!0))}unhook(e){let t=!1;if(this._hitLimit)t=!1;else if(e&&(t=this._handler(this._data,this._params),t instanceof Promise))return t.then(i=>(this._params=Xs,this._data="",this._hitLimit=!1,i));return this._params=Xs,this._data="",this._hitLimit=!1,t}},sv=class{constructor(e){this.table=new Uint8Array(e)}setDefault(e,t){this.table.fill(e<<4|t)}add(e,t,i,s){this.table[t<<8|e]=i<<4|s}addMany(e,t,i,s){for(let r=0;rh),i=(o,h)=>t.slice(o,h),s=i(32,127),r=i(0,24);r.push(25),r.push.apply(r,i(28,32));let n=i(0,14),a;e.setDefault(1,0),e.addMany(s,0,2,0);for(a in n)e.addMany([24,26,153,154],a,3,0),e.addMany(i(128,144),a,3,0),e.addMany(i(144,152),a,3,0),e.add(156,a,0,0),e.add(27,a,11,1),e.add(157,a,4,8),e.addMany([152,158,159],a,0,7),e.add(155,a,11,3),e.add(144,a,11,9);return e.addMany(r,0,3,0),e.addMany(r,1,3,1),e.add(127,1,0,1),e.addMany(r,8,0,8),e.addMany(r,3,3,3),e.add(127,3,0,3),e.addMany(r,4,3,4),e.add(127,4,0,4),e.addMany(r,6,3,6),e.addMany(r,5,3,5),e.add(127,5,0,5),e.addMany(r,2,3,2),e.add(127,2,0,2),e.add(93,1,4,8),e.addMany(s,8,5,8),e.add(127,8,5,8),e.addMany([156,27,24,26,7],8,6,0),e.addMany(i(28,32),8,0,8),e.addMany([88,94,95],1,0,7),e.addMany(s,7,0,7),e.addMany(r,7,0,7),e.add(156,7,0,0),e.add(127,7,0,7),e.add(91,1,11,3),e.addMany(i(64,127),3,7,0),e.addMany(i(48,60),3,8,4),e.addMany([60,61,62,63],3,9,4),e.addMany(i(48,60),4,8,4),e.addMany(i(64,127),4,7,0),e.addMany([60,61,62,63],4,0,6),e.addMany(i(32,64),6,0,6),e.add(127,6,0,6),e.addMany(i(64,127),6,0,0),e.addMany(i(32,48),3,9,5),e.addMany(i(32,48),5,9,5),e.addMany(i(48,64),5,0,6),e.addMany(i(64,127),5,7,0),e.addMany(i(32,48),4,9,5),e.addMany(i(32,48),1,9,2),e.addMany(i(32,48),2,9,2),e.addMany(i(48,127),2,10,0),e.addMany(i(48,80),1,10,0),e.addMany(i(81,88),1,10,0),e.addMany([89,90,92],1,10,0),e.addMany(i(96,127),1,10,0),e.add(80,1,11,9),e.addMany(r,9,0,9),e.add(127,9,0,9),e.addMany(i(28,32),9,0,9),e.addMany(i(32,48),9,9,12),e.addMany(i(48,60),9,8,10),e.addMany([60,61,62,63],9,9,10),e.addMany(r,11,0,11),e.addMany(i(32,128),11,0,11),e.addMany(i(28,32),11,0,11),e.addMany(r,10,0,10),e.add(127,10,0,10),e.addMany(i(28,32),10,0,10),e.addMany(i(48,60),10,8,10),e.addMany([60,61,62,63],10,0,11),e.addMany(i(32,48),10,9,12),e.addMany(r,12,0,12),e.add(127,12,0,12),e.addMany(i(28,32),12,0,12),e.addMany(i(32,48),12,9,12),e.addMany(i(48,64),12,0,11),e.addMany(i(64,127),12,12,13),e.addMany(i(64,127),10,12,13),e.addMany(i(64,127),9,12,13),e.addMany(r,13,13,13),e.addMany(s,13,13,13),e.add(127,13,0,13),e.addMany([27,156,24,26],13,14,0),e.add(ti,0,2,0),e.add(ti,8,5,8),e.add(ti,6,0,6),e.add(ti,11,0,11),e.add(ti,13,13,13),e})(),nv=class extends Ie{constructor(e=rv){super(),this._transitions=e,this._parseStack={state:0,handlers:[],handlerPos:0,transition:0,chunkPos:0},this.initialState=0,this.currentState=this.initialState,this._params=new nc,this._params.addParam(0),this._collect=0,this.precedingJoinState=0,this._printHandlerFb=(t,i,s)=>{},this._executeHandlerFb=t=>{},this._csiHandlerFb=(t,i)=>{},this._escHandlerFb=t=>{},this._errorHandlerFb=t=>t,this._printHandler=this._printHandlerFb,this._executeHandlers=Object.create(null),this._csiHandlers=Object.create(null),this._escHandlers=Object.create(null),this._register(ze(()=>{this._csiHandlers=Object.create(null),this._executeHandlers=Object.create(null),this._escHandlers=Object.create(null)})),this._oscParser=this._register(new tv),this._dcsParser=this._register(new iv),this._errorHandler=this._errorHandlerFb,this.registerEscHandler({final:"\\"},()=>!0)}_identifier(e,t=[64,126]){let i=0;if(e.prefix){if(e.prefix.length>1)throw new Error("only one byte as prefix supported");if(i=e.prefix.charCodeAt(0),i&&60>i||i>63)throw new Error("prefix must be in range 0x3c .. 0x3f")}if(e.intermediates){if(e.intermediates.length>2)throw new Error("only two bytes as intermediates are supported");for(let r=0;rn||n>47)throw new Error("intermediate must be in range 0x20 .. 0x2f");i<<=8,i|=n}}if(e.final.length!==1)throw new Error("final must be a single byte");let s=e.final.charCodeAt(0);if(t[0]>s||s>t[1])throw new Error(`final must be in range ${t[0]} .. ${t[1]}`);return i<<=8,i|=s,i}identToString(e){let t=[];for(;e;)t.push(String.fromCharCode(e&255)),e>>=8;return t.reverse().join("")}setPrintHandler(e){this._printHandler=e}clearPrintHandler(){this._printHandler=this._printHandlerFb}registerEscHandler(e,t){let i=this._identifier(e,[48,126]);this._escHandlers[i]===void 0&&(this._escHandlers[i]=[]);let s=this._escHandlers[i];return s.push(t),{dispose:()=>{let r=s.indexOf(t);r!==-1&&s.splice(r,1)}}}clearEscHandler(e){this._escHandlers[this._identifier(e,[48,126])]&&delete this._escHandlers[this._identifier(e,[48,126])]}setEscHandlerFallback(e){this._escHandlerFb=e}setExecuteHandler(e,t){this._executeHandlers[e.charCodeAt(0)]=t}clearExecuteHandler(e){this._executeHandlers[e.charCodeAt(0)]&&delete this._executeHandlers[e.charCodeAt(0)]}setExecuteHandlerFallback(e){this._executeHandlerFb=e}registerCsiHandler(e,t){let i=this._identifier(e);this._csiHandlers[i]===void 0&&(this._csiHandlers[i]=[]);let s=this._csiHandlers[i];return s.push(t),{dispose:()=>{let r=s.indexOf(t);r!==-1&&s.splice(r,1)}}}clearCsiHandler(e){this._csiHandlers[this._identifier(e)]&&delete this._csiHandlers[this._identifier(e)]}setCsiHandlerFallback(e){this._csiHandlerFb=e}registerDcsHandler(e,t){return this._dcsParser.registerHandler(this._identifier(e),t)}clearDcsHandler(e){this._dcsParser.clearHandler(this._identifier(e))}setDcsHandlerFallback(e){this._dcsParser.setHandlerFallback(e)}registerOscHandler(e,t){return this._oscParser.registerHandler(e,t)}clearOscHandler(e){this._oscParser.clearHandler(e)}setOscHandlerFallback(e){this._oscParser.setHandlerFallback(e)}setErrorHandler(e){this._errorHandler=e}clearErrorHandler(){this._errorHandler=this._errorHandlerFb}reset(){this.currentState=this.initialState,this._oscParser.reset(),this._dcsParser.reset(),this._params.reset(),this._params.addParam(0),this._collect=0,this.precedingJoinState=0,this._parseStack.state!==0&&(this._parseStack.state=2,this._parseStack.handlers=[])}_preserveStack(e,t,i,s,r){this._parseStack.state=e,this._parseStack.handlers=t,this._parseStack.handlerPos=i,this._parseStack.transition=s,this._parseStack.chunkPos=r}parse(e,t,i){let s=0,r=0,n=0,a;if(this._parseStack.state)if(this._parseStack.state===2)this._parseStack.state=0,n=this._parseStack.chunkPos+1;else{if(i===void 0||this._parseStack.state===1)throw this._parseStack.state=1,new Error("improper continuation due to previous async handler, giving up parsing");let o=this._parseStack.handlers,h=this._parseStack.handlerPos-1;switch(this._parseStack.state){case 3:if(i===!1&&h>-1){for(;h>=0&&(a=o[h](this._params),a!==!0);h--)if(a instanceof Promise)return this._parseStack.handlerPos=h,a}this._parseStack.handlers=[];break;case 4:if(i===!1&&h>-1){for(;h>=0&&(a=o[h](),a!==!0);h--)if(a instanceof Promise)return this._parseStack.handlerPos=h,a}this._parseStack.handlers=[];break;case 6:if(s=e[this._parseStack.chunkPos],a=this._dcsParser.unhook(s!==24&&s!==26,i),a)return a;s===27&&(this._parseStack.transition|=1),this._params.reset(),this._params.addParam(0),this._collect=0;break;case 5:if(s=e[this._parseStack.chunkPos],a=this._oscParser.end(s!==24&&s!==26,i),a)return a;s===27&&(this._parseStack.transition|=1),this._params.reset(),this._params.addParam(0),this._collect=0;break}this._parseStack.state=0,n=this._parseStack.chunkPos+1,this.precedingJoinState=0,this.currentState=this._parseStack.transition&15}for(let o=n;o>4){case 2:for(let g=o+1;;++g){if(g>=t||(s=e[g])<32||s>126&&s=t||(s=e[g])<32||s>126&&s=t||(s=e[g])<32||s>126&&s=t||(s=e[g])<32||s>126&&s=0&&(a=h[l](this._params),a!==!0);l--)if(a instanceof Promise)return this._preserveStack(3,h,l,r,o),a;l<0&&this._csiHandlerFb(this._collect<<8|s,this._params),this.precedingJoinState=0;break;case 8:do switch(s){case 59:this._params.addParam(0);break;case 58:this._params.addSubParam(-1);break;default:this._params.addDigit(s-48)}while(++o47&&s<60);o--;break;case 9:this._collect<<=8,this._collect|=s;break;case 10:let c=this._escHandlers[this._collect<<8|s],d=c?c.length-1:-1;for(;d>=0&&(a=c[d](),a!==!0);d--)if(a instanceof Promise)return this._preserveStack(4,c,d,r,o),a;d<0&&this._escHandlerFb(this._collect<<8|s),this.precedingJoinState=0;break;case 11:this._params.reset(),this._params.addParam(0),this._collect=0;break;case 12:this._dcsParser.hook(this._collect<<8|s,this._params);break;case 13:for(let g=o+1;;++g)if(g>=t||(s=e[g])===24||s===26||s===27||s>127&&s=t||(s=e[g])<32||s>127&&s>4:n>>8}return s}}function Pn(e,t){let i=e.toString(16),s=i.length<2?"0"+i:i;switch(t){case 4:return i[0];case 8:return s;case 12:return(s+s).slice(0,3);default:return s+s}}function lv(e,t=16){let[i,s,r]=e;return`rgb:${Pn(i,t)}/${Pn(s,t)}/${Pn(r,t)}`}var hv={"(":0,")":1,"*":2,"+":3,"-":1,".":2},Qi=131072,hl=10;function cl(e,t){if(e>24)return t.setWinLines||!1;switch(e){case 1:return!!t.restoreWin;case 2:return!!t.minimizeWin;case 3:return!!t.setWinPosition;case 4:return!!t.setWinSizePixels;case 5:return!!t.raiseWin;case 6:return!!t.lowerWin;case 7:return!!t.refreshWin;case 8:return!!t.setWinSizeChars;case 9:return!!t.maximizeWin;case 10:return!!t.fullscreenWin;case 11:return!!t.getWinState;case 13:return!!t.getWinPosition;case 14:return!!t.getWinSizePixels;case 15:return!!t.getScreenSizePixels;case 16:return!!t.getCellSizePixels;case 18:return!!t.getWinSizeChars;case 19:return!!t.getScreenSizeChars;case 20:return!!t.getIconTitle;case 21:return!!t.getWinTitle;case 22:return!!t.pushTitle;case 23:return!!t.popTitle;case 24:return!!t.setWinLines}return!1}var dl=5e3,ul=0,cv=class extends Ie{constructor(e,t,i,s,r,n,a,o,h=new nv){super(),this._bufferService=e,this._charsetService=t,this._coreService=i,this._logService=s,this._optionsService=r,this._oscLinkService=n,this._coreMouseService=a,this._unicodeService=o,this._parser=h,this._parseBuffer=new Uint32Array(4096),this._stringDecoder=new Bu,this._utf8Decoder=new Iu,this._windowTitle="",this._iconName="",this._windowTitleStack=[],this._iconNameStack=[],this._curAttrData=Xe.clone(),this._eraseAttrDataInternal=Xe.clone(),this._onRequestBell=this._register(new Y),this.onRequestBell=this._onRequestBell.event,this._onRequestRefreshRows=this._register(new Y),this.onRequestRefreshRows=this._onRequestRefreshRows.event,this._onRequestReset=this._register(new Y),this.onRequestReset=this._onRequestReset.event,this._onRequestSendFocus=this._register(new Y),this.onRequestSendFocus=this._onRequestSendFocus.event,this._onRequestSyncScrollBar=this._register(new Y),this.onRequestSyncScrollBar=this._onRequestSyncScrollBar.event,this._onRequestWindowsOptionsReport=this._register(new Y),this.onRequestWindowsOptionsReport=this._onRequestWindowsOptionsReport.event,this._onA11yChar=this._register(new Y),this.onA11yChar=this._onA11yChar.event,this._onA11yTab=this._register(new Y),this.onA11yTab=this._onA11yTab.event,this._onCursorMove=this._register(new Y),this.onCursorMove=this._onCursorMove.event,this._onLineFeed=this._register(new Y),this.onLineFeed=this._onLineFeed.event,this._onScroll=this._register(new Y),this.onScroll=this._onScroll.event,this._onTitleChange=this._register(new Y),this.onTitleChange=this._onTitleChange.event,this._onColor=this._register(new Y),this.onColor=this._onColor.event,this._parseStack={paused:!1,cursorStartX:0,cursorStartY:0,decodedLength:0,position:0},this._specialColors=[256,257,258],this._register(this._parser),this._dirtyRowTracker=new To(this._bufferService),this._activeBuffer=this._bufferService.buffer,this._register(this._bufferService.buffers.onBufferActivate(l=>this._activeBuffer=l.activeBuffer)),this._parser.setCsiHandlerFallback((l,c)=>{this._logService.debug("Unknown CSI code: ",{identifier:this._parser.identToString(l),params:c.toArray()})}),this._parser.setEscHandlerFallback(l=>{this._logService.debug("Unknown ESC code: ",{identifier:this._parser.identToString(l)})}),this._parser.setExecuteHandlerFallback(l=>{this._logService.debug("Unknown EXECUTE code: ",{code:l})}),this._parser.setOscHandlerFallback((l,c,d)=>{this._logService.debug("Unknown OSC code: ",{identifier:l,action:c,data:d})}),this._parser.setDcsHandlerFallback((l,c,d)=>{c==="HOOK"&&(d=d.toArray()),this._logService.debug("Unknown DCS code: ",{identifier:this._parser.identToString(l),action:c,payload:d})}),this._parser.setPrintHandler((l,c,d)=>this.print(l,c,d)),this._parser.registerCsiHandler({final:"@"},l=>this.insertChars(l)),this._parser.registerCsiHandler({intermediates:" ",final:"@"},l=>this.scrollLeft(l)),this._parser.registerCsiHandler({final:"A"},l=>this.cursorUp(l)),this._parser.registerCsiHandler({intermediates:" ",final:"A"},l=>this.scrollRight(l)),this._parser.registerCsiHandler({final:"B"},l=>this.cursorDown(l)),this._parser.registerCsiHandler({final:"C"},l=>this.cursorForward(l)),this._parser.registerCsiHandler({final:"D"},l=>this.cursorBackward(l)),this._parser.registerCsiHandler({final:"E"},l=>this.cursorNextLine(l)),this._parser.registerCsiHandler({final:"F"},l=>this.cursorPrecedingLine(l)),this._parser.registerCsiHandler({final:"G"},l=>this.cursorCharAbsolute(l)),this._parser.registerCsiHandler({final:"H"},l=>this.cursorPosition(l)),this._parser.registerCsiHandler({final:"I"},l=>this.cursorForwardTab(l)),this._parser.registerCsiHandler({final:"J"},l=>this.eraseInDisplay(l,!1)),this._parser.registerCsiHandler({prefix:"?",final:"J"},l=>this.eraseInDisplay(l,!0)),this._parser.registerCsiHandler({final:"K"},l=>this.eraseInLine(l,!1)),this._parser.registerCsiHandler({prefix:"?",final:"K"},l=>this.eraseInLine(l,!0)),this._parser.registerCsiHandler({final:"L"},l=>this.insertLines(l)),this._parser.registerCsiHandler({final:"M"},l=>this.deleteLines(l)),this._parser.registerCsiHandler({final:"P"},l=>this.deleteChars(l)),this._parser.registerCsiHandler({final:"S"},l=>this.scrollUp(l)),this._parser.registerCsiHandler({final:"T"},l=>this.scrollDown(l)),this._parser.registerCsiHandler({final:"X"},l=>this.eraseChars(l)),this._parser.registerCsiHandler({final:"Z"},l=>this.cursorBackwardTab(l)),this._parser.registerCsiHandler({final:"`"},l=>this.charPosAbsolute(l)),this._parser.registerCsiHandler({final:"a"},l=>this.hPositionRelative(l)),this._parser.registerCsiHandler({final:"b"},l=>this.repeatPrecedingCharacter(l)),this._parser.registerCsiHandler({final:"c"},l=>this.sendDeviceAttributesPrimary(l)),this._parser.registerCsiHandler({prefix:">",final:"c"},l=>this.sendDeviceAttributesSecondary(l)),this._parser.registerCsiHandler({final:"d"},l=>this.linePosAbsolute(l)),this._parser.registerCsiHandler({final:"e"},l=>this.vPositionRelative(l)),this._parser.registerCsiHandler({final:"f"},l=>this.hVPosition(l)),this._parser.registerCsiHandler({final:"g"},l=>this.tabClear(l)),this._parser.registerCsiHandler({final:"h"},l=>this.setMode(l)),this._parser.registerCsiHandler({prefix:"?",final:"h"},l=>this.setModePrivate(l)),this._parser.registerCsiHandler({final:"l"},l=>this.resetMode(l)),this._parser.registerCsiHandler({prefix:"?",final:"l"},l=>this.resetModePrivate(l)),this._parser.registerCsiHandler({final:"m"},l=>this.charAttributes(l)),this._parser.registerCsiHandler({final:"n"},l=>this.deviceStatus(l)),this._parser.registerCsiHandler({prefix:"?",final:"n"},l=>this.deviceStatusPrivate(l)),this._parser.registerCsiHandler({intermediates:"!",final:"p"},l=>this.softReset(l)),this._parser.registerCsiHandler({intermediates:" ",final:"q"},l=>this.setCursorStyle(l)),this._parser.registerCsiHandler({final:"r"},l=>this.setScrollRegion(l)),this._parser.registerCsiHandler({final:"s"},l=>this.saveCursor(l)),this._parser.registerCsiHandler({final:"t"},l=>this.windowOptions(l)),this._parser.registerCsiHandler({final:"u"},l=>this.restoreCursor(l)),this._parser.registerCsiHandler({intermediates:"'",final:"}"},l=>this.insertColumns(l)),this._parser.registerCsiHandler({intermediates:"'",final:"~"},l=>this.deleteColumns(l)),this._parser.registerCsiHandler({intermediates:'"',final:"q"},l=>this.selectProtected(l)),this._parser.registerCsiHandler({intermediates:"$",final:"p"},l=>this.requestMode(l,!0)),this._parser.registerCsiHandler({prefix:"?",intermediates:"$",final:"p"},l=>this.requestMode(l,!1)),this._parser.setExecuteHandler(q.BEL,()=>this.bell()),this._parser.setExecuteHandler(q.LF,()=>this.lineFeed()),this._parser.setExecuteHandler(q.VT,()=>this.lineFeed()),this._parser.setExecuteHandler(q.FF,()=>this.lineFeed()),this._parser.setExecuteHandler(q.CR,()=>this.carriageReturn()),this._parser.setExecuteHandler(q.BS,()=>this.backspace()),this._parser.setExecuteHandler(q.HT,()=>this.tab()),this._parser.setExecuteHandler(q.SO,()=>this.shiftOut()),this._parser.setExecuteHandler(q.SI,()=>this.shiftIn()),this._parser.setExecuteHandler(zr.IND,()=>this.index()),this._parser.setExecuteHandler(zr.NEL,()=>this.nextLine()),this._parser.setExecuteHandler(zr.HTS,()=>this.tabSet()),this._parser.registerOscHandler(0,new Ft(l=>(this.setTitle(l),this.setIconName(l),!0))),this._parser.registerOscHandler(1,new Ft(l=>this.setIconName(l))),this._parser.registerOscHandler(2,new Ft(l=>this.setTitle(l))),this._parser.registerOscHandler(4,new Ft(l=>this.setOrReportIndexedColor(l))),this._parser.registerOscHandler(8,new Ft(l=>this.setHyperlink(l))),this._parser.registerOscHandler(10,new Ft(l=>this.setOrReportFgColor(l))),this._parser.registerOscHandler(11,new Ft(l=>this.setOrReportBgColor(l))),this._parser.registerOscHandler(12,new Ft(l=>this.setOrReportCursorColor(l))),this._parser.registerOscHandler(104,new Ft(l=>this.restoreIndexedColor(l))),this._parser.registerOscHandler(110,new Ft(l=>this.restoreFgColor(l))),this._parser.registerOscHandler(111,new Ft(l=>this.restoreBgColor(l))),this._parser.registerOscHandler(112,new Ft(l=>this.restoreCursorColor(l))),this._parser.registerEscHandler({final:"7"},()=>this.saveCursor()),this._parser.registerEscHandler({final:"8"},()=>this.restoreCursor()),this._parser.registerEscHandler({final:"D"},()=>this.index()),this._parser.registerEscHandler({final:"E"},()=>this.nextLine()),this._parser.registerEscHandler({final:"H"},()=>this.tabSet()),this._parser.registerEscHandler({final:"M"},()=>this.reverseIndex()),this._parser.registerEscHandler({final:"="},()=>this.keypadApplicationMode()),this._parser.registerEscHandler({final:">"},()=>this.keypadNumericMode()),this._parser.registerEscHandler({final:"c"},()=>this.fullReset()),this._parser.registerEscHandler({final:"n"},()=>this.setgLevel(2)),this._parser.registerEscHandler({final:"o"},()=>this.setgLevel(3)),this._parser.registerEscHandler({final:"|"},()=>this.setgLevel(3)),this._parser.registerEscHandler({final:"}"},()=>this.setgLevel(2)),this._parser.registerEscHandler({final:"~"},()=>this.setgLevel(1)),this._parser.registerEscHandler({intermediates:"%",final:"@"},()=>this.selectDefaultCharset()),this._parser.registerEscHandler({intermediates:"%",final:"G"},()=>this.selectDefaultCharset());for(let l in nt)this._parser.registerEscHandler({intermediates:"(",final:l},()=>this.selectCharset("("+l)),this._parser.registerEscHandler({intermediates:")",final:l},()=>this.selectCharset(")"+l)),this._parser.registerEscHandler({intermediates:"*",final:l},()=>this.selectCharset("*"+l)),this._parser.registerEscHandler({intermediates:"+",final:l},()=>this.selectCharset("+"+l)),this._parser.registerEscHandler({intermediates:"-",final:l},()=>this.selectCharset("-"+l)),this._parser.registerEscHandler({intermediates:".",final:l},()=>this.selectCharset("."+l)),this._parser.registerEscHandler({intermediates:"/",final:l},()=>this.selectCharset("/"+l));this._parser.registerEscHandler({intermediates:"#",final:"8"},()=>this.screenAlignmentPattern()),this._parser.setErrorHandler(l=>(this._logService.error("Parsing error: ",l),l)),this._parser.registerDcsHandler({intermediates:"$",final:"q"},new al((l,c)=>this.requestStatusString(l,c)))}getAttrData(){return this._curAttrData}_preserveStack(e,t,i,s){this._parseStack.paused=!0,this._parseStack.cursorStartX=e,this._parseStack.cursorStartY=t,this._parseStack.decodedLength=i,this._parseStack.position=s}_logSlowResolvingAsync(e){this._logService.logLevel<=3&&Promise.race([e,new Promise((t,i)=>setTimeout(()=>i("#SLOW_TIMEOUT"),dl))]).catch(t=>{if(t!=="#SLOW_TIMEOUT")throw t;console.warn(`async parser handler taking longer than ${dl} ms`)})}_getCurrentLinkId(){return this._curAttrData.extended.urlId}parse(e,t){let i,s=this._activeBuffer.x,r=this._activeBuffer.y,n=0,a=this._parseStack.paused;if(a){if(i=this._parser.parse(this._parseBuffer,this._parseStack.decodedLength,t))return this._logSlowResolvingAsync(i),i;s=this._parseStack.cursorStartX,r=this._parseStack.cursorStartY,this._parseStack.paused=!1,e.length>Qi&&(n=this._parseStack.position+Qi)}if(this._logService.logLevel<=1&&this._logService.debug(`parsing data ${typeof e=="string"?` "${e}"`:` "${Array.prototype.map.call(e,l=>String.fromCharCode(l)).join("")}"`}`),this._logService.logLevel===0&&this._logService.trace("parsing data (codes)",typeof e=="string"?e.split("").map(l=>l.charCodeAt(0)):e),this._parseBuffer.lengthQi)for(let l=n;l0&&d.getWidth(this._activeBuffer.x-1)===2&&d.setCellFromCodepoint(this._activeBuffer.x-1,0,1,c);let g=this._parser.precedingJoinState;for(let _=t;_o){if(h){let A=d,k=this._activeBuffer.x-f;for(this._activeBuffer.x=f,this._activeBuffer.y++,this._activeBuffer.y===this._activeBuffer.scrollBottom+1?(this._activeBuffer.y--,this._bufferService.scroll(this._eraseAttrData(),!0)):(this._activeBuffer.y>=this._bufferService.rows&&(this._activeBuffer.y=this._bufferService.rows-1),this._activeBuffer.lines.get(this._activeBuffer.ybase+this._activeBuffer.y).isWrapped=!0),d=this._activeBuffer.lines.get(this._activeBuffer.ybase+this._activeBuffer.y),f>0&&d instanceof Ys&&d.copyCellsFrom(A,k,0,f,!1);k=0;)d.setCellFromCodepoint(this._activeBuffer.x++,0,0,c);continue}if(l&&(d.insertCells(this._activeBuffer.x,r-f,this._activeBuffer.getNullCell(c)),d.getWidth(o-1)===2&&d.setCellFromCodepoint(o-1,0,1,c)),d.setCellFromCodepoint(this._activeBuffer.x++,s,r,c),r>0)for(;--r;)d.setCellFromCodepoint(this._activeBuffer.x++,0,0,c)}this._parser.precedingJoinState=g,this._activeBuffer.x0&&d.getWidth(this._activeBuffer.x)===0&&!d.hasContent(this._activeBuffer.x)&&d.setCellFromCodepoint(this._activeBuffer.x,0,1,c),this._dirtyRowTracker.markDirty(this._activeBuffer.y)}registerCsiHandler(e,t){return e.final==="t"&&!e.prefix&&!e.intermediates?this._parser.registerCsiHandler(e,i=>cl(i.params[0],this._optionsService.rawOptions.windowOptions)?t(i):!0):this._parser.registerCsiHandler(e,t)}registerDcsHandler(e,t){return this._parser.registerDcsHandler(e,new al(t))}registerEscHandler(e,t){return this._parser.registerEscHandler(e,t)}registerOscHandler(e,t){return this._parser.registerOscHandler(e,new Ft(t))}bell(){return this._onRequestBell.fire(),!0}lineFeed(){return this._dirtyRowTracker.markDirty(this._activeBuffer.y),this._optionsService.rawOptions.convertEol&&(this._activeBuffer.x=0),this._activeBuffer.y++,this._activeBuffer.y===this._activeBuffer.scrollBottom+1?(this._activeBuffer.y--,this._bufferService.scroll(this._eraseAttrData())):this._activeBuffer.y>=this._bufferService.rows?this._activeBuffer.y=this._bufferService.rows-1:this._activeBuffer.lines.get(this._activeBuffer.ybase+this._activeBuffer.y).isWrapped=!1,this._activeBuffer.x>=this._bufferService.cols&&this._activeBuffer.x--,this._dirtyRowTracker.markDirty(this._activeBuffer.y),this._onLineFeed.fire(),!0}carriageReturn(){return this._activeBuffer.x=0,!0}backspace(){var e;if(!this._coreService.decPrivateModes.reverseWraparound)return this._restrictCursor(),this._activeBuffer.x>0&&this._activeBuffer.x--,!0;if(this._restrictCursor(this._bufferService.cols),this._activeBuffer.x>0)this._activeBuffer.x--;else if(this._activeBuffer.x===0&&this._activeBuffer.y>this._activeBuffer.scrollTop&&this._activeBuffer.y<=this._activeBuffer.scrollBottom&&((e=this._activeBuffer.lines.get(this._activeBuffer.ybase+this._activeBuffer.y))!=null&&e.isWrapped)){this._activeBuffer.lines.get(this._activeBuffer.ybase+this._activeBuffer.y).isWrapped=!1,this._activeBuffer.y--,this._activeBuffer.x=this._bufferService.cols-1;let t=this._activeBuffer.lines.get(this._activeBuffer.ybase+this._activeBuffer.y);t.hasWidth(this._activeBuffer.x)&&!t.hasContent(this._activeBuffer.x)&&this._activeBuffer.x--}return this._restrictCursor(),!0}tab(){if(this._activeBuffer.x>=this._bufferService.cols)return!0;let e=this._activeBuffer.x;return this._activeBuffer.x=this._activeBuffer.nextStop(),this._optionsService.rawOptions.screenReaderMode&&this._onA11yTab.fire(this._activeBuffer.x-e),!0}shiftOut(){return this._charsetService.setgLevel(1),!0}shiftIn(){return this._charsetService.setgLevel(0),!0}_restrictCursor(e=this._bufferService.cols-1){this._activeBuffer.x=Math.min(e,Math.max(0,this._activeBuffer.x)),this._activeBuffer.y=this._coreService.decPrivateModes.origin?Math.min(this._activeBuffer.scrollBottom,Math.max(this._activeBuffer.scrollTop,this._activeBuffer.y)):Math.min(this._bufferService.rows-1,Math.max(0,this._activeBuffer.y)),this._dirtyRowTracker.markDirty(this._activeBuffer.y)}_setCursor(e,t){this._dirtyRowTracker.markDirty(this._activeBuffer.y),this._coreService.decPrivateModes.origin?(this._activeBuffer.x=e,this._activeBuffer.y=this._activeBuffer.scrollTop+t):(this._activeBuffer.x=e,this._activeBuffer.y=t),this._restrictCursor(),this._dirtyRowTracker.markDirty(this._activeBuffer.y)}_moveCursor(e,t){this._restrictCursor(),this._setCursor(this._activeBuffer.x+e,this._activeBuffer.y+t)}cursorUp(e){let t=this._activeBuffer.y-this._activeBuffer.scrollTop;return t>=0?this._moveCursor(0,-Math.min(t,e.params[0]||1)):this._moveCursor(0,-(e.params[0]||1)),!0}cursorDown(e){let t=this._activeBuffer.scrollBottom-this._activeBuffer.y;return t>=0?this._moveCursor(0,Math.min(t,e.params[0]||1)):this._moveCursor(0,e.params[0]||1),!0}cursorForward(e){return this._moveCursor(e.params[0]||1,0),!0}cursorBackward(e){return this._moveCursor(-(e.params[0]||1),0),!0}cursorNextLine(e){return this.cursorDown(e),this._activeBuffer.x=0,!0}cursorPrecedingLine(e){return this.cursorUp(e),this._activeBuffer.x=0,!0}cursorCharAbsolute(e){return this._setCursor((e.params[0]||1)-1,this._activeBuffer.y),!0}cursorPosition(e){return this._setCursor(e.length>=2?(e.params[1]||1)-1:0,(e.params[0]||1)-1),!0}charPosAbsolute(e){return this._setCursor((e.params[0]||1)-1,this._activeBuffer.y),!0}hPositionRelative(e){return this._moveCursor(e.params[0]||1,0),!0}linePosAbsolute(e){return this._setCursor(this._activeBuffer.x,(e.params[0]||1)-1),!0}vPositionRelative(e){return this._moveCursor(0,e.params[0]||1),!0}hVPosition(e){return this.cursorPosition(e),!0}tabClear(e){let t=e.params[0];return t===0?delete this._activeBuffer.tabs[this._activeBuffer.x]:t===3&&(this._activeBuffer.tabs={}),!0}cursorForwardTab(e){if(this._activeBuffer.x>=this._bufferService.cols)return!0;let t=e.params[0]||1;for(;t--;)this._activeBuffer.x=this._activeBuffer.nextStop();return!0}cursorBackwardTab(e){if(this._activeBuffer.x>=this._bufferService.cols)return!0;let t=e.params[0]||1;for(;t--;)this._activeBuffer.x=this._activeBuffer.prevStop();return!0}selectProtected(e){let t=e.params[0];return t===1&&(this._curAttrData.bg|=536870912),(t===2||t===0)&&(this._curAttrData.bg&=-536870913),!0}_eraseInBufferLine(e,t,i,s=!1,r=!1){let n=this._activeBuffer.lines.get(this._activeBuffer.ybase+e);n.replaceCells(t,i,this._activeBuffer.getNullCell(this._eraseAttrData()),r),s&&(n.isWrapped=!1)}_resetBufferLine(e,t=!1){let i=this._activeBuffer.lines.get(this._activeBuffer.ybase+e);i&&(i.fill(this._activeBuffer.getNullCell(this._eraseAttrData()),t),this._bufferService.buffer.clearMarkers(this._activeBuffer.ybase+e),i.isWrapped=!1)}eraseInDisplay(e,t=!1){var s;this._restrictCursor(this._bufferService.cols);let i;switch(e.params[0]){case 0:for(i=this._activeBuffer.y,this._dirtyRowTracker.markDirty(i),this._eraseInBufferLine(i++,this._activeBuffer.x,this._bufferService.cols,this._activeBuffer.x===0,t);i=this._bufferService.cols&&(this._activeBuffer.lines.get(i+1).isWrapped=!1);i--;)this._resetBufferLine(i,t);this._dirtyRowTracker.markDirty(0);break;case 2:if(this._optionsService.rawOptions.scrollOnEraseInDisplay){for(i=this._bufferService.rows,this._dirtyRowTracker.markRangeDirty(0,i-1);i--&&!((s=this._activeBuffer.lines.get(this._activeBuffer.ybase+i))!=null&&s.getTrimmedLength()););for(;i>=0;i--)this._bufferService.scroll(this._eraseAttrData())}else{for(i=this._bufferService.rows,this._dirtyRowTracker.markDirty(i-1);i--;)this._resetBufferLine(i,t);this._dirtyRowTracker.markDirty(0)}break;case 3:let r=this._activeBuffer.lines.length-this._bufferService.rows;r>0&&(this._activeBuffer.lines.trimStart(r),this._activeBuffer.ybase=Math.max(this._activeBuffer.ybase-r,0),this._activeBuffer.ydisp=Math.max(this._activeBuffer.ydisp-r,0),this._onScroll.fire(0));break}return!0}eraseInLine(e,t=!1){switch(this._restrictCursor(this._bufferService.cols),e.params[0]){case 0:this._eraseInBufferLine(this._activeBuffer.y,this._activeBuffer.x,this._bufferService.cols,this._activeBuffer.x===0,t);break;case 1:this._eraseInBufferLine(this._activeBuffer.y,0,this._activeBuffer.x+1,!1,t);break;case 2:this._eraseInBufferLine(this._activeBuffer.y,0,this._bufferService.cols,!0,t);break}return this._dirtyRowTracker.markDirty(this._activeBuffer.y),!0}insertLines(e){this._restrictCursor();let t=e.params[0]||1;if(this._activeBuffer.y>this._activeBuffer.scrollBottom||this._activeBuffer.ythis._activeBuffer.scrollBottom||this._activeBuffer.ythis._activeBuffer.scrollBottom||this._activeBuffer.ythis._activeBuffer.scrollBottom||this._activeBuffer.ythis._activeBuffer.scrollBottom||this._activeBuffer.ythis._activeBuffer.scrollBottom||this._activeBuffer.y65535?2:1}let h=o;for(let l=1;l0||(this._is("xterm")||this._is("rxvt-unicode")||this._is("screen")?this._coreService.triggerDataEvent(q.ESC+"[?1;2c"):this._is("linux")&&this._coreService.triggerDataEvent(q.ESC+"[?6c")),!0}sendDeviceAttributesSecondary(e){return e.params[0]>0||(this._is("xterm")?this._coreService.triggerDataEvent(q.ESC+"[>0;276;0c"):this._is("rxvt-unicode")?this._coreService.triggerDataEvent(q.ESC+"[>85;95;0c"):this._is("linux")?this._coreService.triggerDataEvent(e.params[0]+"c"):this._is("screen")&&this._coreService.triggerDataEvent(q.ESC+"[>83;40003;0c")),!0}_is(e){return(this._optionsService.rawOptions.termName+"").indexOf(e)===0}setMode(e){for(let t=0;t(u[u.NOT_RECOGNIZED=0]="NOT_RECOGNIZED",u[u.SET=1]="SET",u[u.RESET=2]="RESET",u[u.PERMANENTLY_SET=3]="PERMANENTLY_SET",u[u.PERMANENTLY_RESET=4]="PERMANENTLY_RESET"))(void 0||(i={}));let s=this._coreService.decPrivateModes,{activeProtocol:r,activeEncoding:n}=this._coreMouseService,a=this._coreService,{buffers:o,cols:h}=this._bufferService,{active:l,alt:c}=o,d=this._optionsService.rawOptions,g=(u,f)=>(a.triggerDataEvent(`${q.ESC}[${t?"":"?"}${u};${f}$y`),!0),_=u=>u?1:2,v=e.params[0];return t?v===2?g(v,4):v===4?g(v,_(a.modes.insertMode)):v===12?g(v,3):v===20?g(v,_(d.convertEol)):g(v,0):v===1?g(v,_(s.applicationCursorKeys)):v===3?g(v,d.windowOptions.setWinLines?h===80?2:h===132?1:0:0):v===6?g(v,_(s.origin)):v===7?g(v,_(s.wraparound)):v===8?g(v,3):v===9?g(v,_(r==="X10")):v===12?g(v,_(d.cursorBlink)):v===25?g(v,_(!a.isCursorHidden)):v===45?g(v,_(s.reverseWraparound)):v===66?g(v,_(s.applicationKeypad)):v===67?g(v,4):v===1e3?g(v,_(r==="VT200")):v===1002?g(v,_(r==="DRAG")):v===1003?g(v,_(r==="ANY")):v===1004?g(v,_(s.sendFocus)):v===1005?g(v,4):v===1006?g(v,_(n==="SGR")):v===1015?g(v,4):v===1016?g(v,_(n==="SGR_PIXELS")):v===1048?g(v,1):v===47||v===1047||v===1049?g(v,_(l===c)):v===2004?g(v,_(s.bracketedPasteMode)):v===2026?g(v,_(s.synchronizedOutput)):g(v,0)}_updateAttrColor(e,t,i,s,r){return t===2?(e|=50331648,e&=-16777216,e|=Cr.fromColorRGB([i,s,r])):t===5&&(e&=-50331904,e|=33554432|i&255),e}_extractColor(e,t,i){let s=[0,0,-1,0,0,0],r=0,n=0;do{if(s[n+r]=e.params[t+n],e.hasSubParams(t+n)){let a=e.getSubParams(t+n),o=0;do s[1]===5&&(r=1),s[n+o+1+r]=a[o];while(++o=2||s[1]===2&&n+r>=5)break;s[1]&&(r=1)}while(++n+t5)&&(e=1),t.extended.underlineStyle=e,t.fg|=268435456,e===0&&(t.fg&=-268435457),t.updateExtended()}_processSGR0(e){e.fg=Xe.fg,e.bg=Xe.bg,e.extended=e.extended.clone(),e.extended.underlineStyle=0,e.extended.underlineColor&=-67108864,e.updateExtended()}charAttributes(e){if(e.length===1&&e.params[0]===0)return this._processSGR0(this._curAttrData),!0;let t=e.length,i,s=this._curAttrData;for(let r=0;r=30&&i<=37?(s.fg&=-50331904,s.fg|=16777216|i-30):i>=40&&i<=47?(s.bg&=-50331904,s.bg|=16777216|i-40):i>=90&&i<=97?(s.fg&=-50331904,s.fg|=16777216|i-90|8):i>=100&&i<=107?(s.bg&=-50331904,s.bg|=16777216|i-100|8):i===0?this._processSGR0(s):i===1?s.fg|=134217728:i===3?s.bg|=67108864:i===4?(s.fg|=268435456,this._processUnderline(e.hasSubParams(r)?e.getSubParams(r)[0]:1,s)):i===5?s.fg|=536870912:i===7?s.fg|=67108864:i===8?s.fg|=1073741824:i===9?s.fg|=2147483648:i===2?s.bg|=134217728:i===21?this._processUnderline(2,s):i===22?(s.fg&=-134217729,s.bg&=-134217729):i===23?s.bg&=-67108865:i===24?(s.fg&=-268435457,this._processUnderline(0,s)):i===25?s.fg&=-536870913:i===27?s.fg&=-67108865:i===28?s.fg&=-1073741825:i===29?s.fg&=2147483647:i===39?(s.fg&=-67108864,s.fg|=Xe.fg&16777215):i===49?(s.bg&=-67108864,s.bg|=Xe.bg&16777215):i===38||i===48||i===58?r+=this._extractColor(e,r,s):i===53?s.bg|=1073741824:i===55?s.bg&=-1073741825:i===59?(s.extended=s.extended.clone(),s.extended.underlineColor=-1,s.updateExtended()):i===100?(s.fg&=-67108864,s.fg|=Xe.fg&16777215,s.bg&=-67108864,s.bg|=Xe.bg&16777215):this._logService.debug("Unknown SGR attribute: %d.",i);return!0}deviceStatus(e){switch(e.params[0]){case 5:this._coreService.triggerDataEvent(`${q.ESC}[0n`);break;case 6:let t=this._activeBuffer.y+1,i=this._activeBuffer.x+1;this._coreService.triggerDataEvent(`${q.ESC}[${t};${i}R`);break}return!0}deviceStatusPrivate(e){switch(e.params[0]){case 6:let t=this._activeBuffer.y+1,i=this._activeBuffer.x+1;this._coreService.triggerDataEvent(`${q.ESC}[?${t};${i}R`);break}return!0}softReset(e){return this._coreService.isCursorHidden=!1,this._onRequestSyncScrollBar.fire(),this._activeBuffer.scrollTop=0,this._activeBuffer.scrollBottom=this._bufferService.rows-1,this._curAttrData=Xe.clone(),this._coreService.reset(),this._charsetService.reset(),this._activeBuffer.savedX=0,this._activeBuffer.savedY=this._activeBuffer.ybase,this._activeBuffer.savedCurAttrData.fg=this._curAttrData.fg,this._activeBuffer.savedCurAttrData.bg=this._curAttrData.bg,this._activeBuffer.savedCharset=this._charsetService.charset,this._coreService.decPrivateModes.origin=!1,!0}setCursorStyle(e){let t=e.length===0?1:e.params[0];if(t===0)this._coreService.decPrivateModes.cursorStyle=void 0,this._coreService.decPrivateModes.cursorBlink=void 0;else{switch(t){case 1:case 2:this._coreService.decPrivateModes.cursorStyle="block";break;case 3:case 4:this._coreService.decPrivateModes.cursorStyle="underline";break;case 5:case 6:this._coreService.decPrivateModes.cursorStyle="bar";break}let i=t%2===1;this._coreService.decPrivateModes.cursorBlink=i}return!0}setScrollRegion(e){let t=e.params[0]||1,i;return(e.length<2||(i=e.params[1])>this._bufferService.rows||i===0)&&(i=this._bufferService.rows),i>t&&(this._activeBuffer.scrollTop=t-1,this._activeBuffer.scrollBottom=i-1,this._setCursor(0,0)),!0}windowOptions(e){if(!cl(e.params[0],this._optionsService.rawOptions.windowOptions))return!0;let t=e.length>1?e.params[1]:0;switch(e.params[0]){case 14:t!==2&&this._onRequestWindowsOptionsReport.fire(0);break;case 16:this._onRequestWindowsOptionsReport.fire(1);break;case 18:this._bufferService&&this._coreService.triggerDataEvent(`${q.ESC}[8;${this._bufferService.rows};${this._bufferService.cols}t`);break;case 22:(t===0||t===2)&&(this._windowTitleStack.push(this._windowTitle),this._windowTitleStack.length>hl&&this._windowTitleStack.shift()),(t===0||t===1)&&(this._iconNameStack.push(this._iconName),this._iconNameStack.length>hl&&this._iconNameStack.shift());break;case 23:(t===0||t===2)&&this._windowTitleStack.length&&this.setTitle(this._windowTitleStack.pop()),(t===0||t===1)&&this._iconNameStack.length&&this.setIconName(this._iconNameStack.pop());break}return!0}saveCursor(e){return this._activeBuffer.savedX=this._activeBuffer.x,this._activeBuffer.savedY=this._activeBuffer.ybase+this._activeBuffer.y,this._activeBuffer.savedCurAttrData.fg=this._curAttrData.fg,this._activeBuffer.savedCurAttrData.bg=this._curAttrData.bg,this._activeBuffer.savedCharset=this._charsetService.charset,!0}restoreCursor(e){return this._activeBuffer.x=this._activeBuffer.savedX||0,this._activeBuffer.y=Math.max(this._activeBuffer.savedY-this._activeBuffer.ybase,0),this._curAttrData.fg=this._activeBuffer.savedCurAttrData.fg,this._curAttrData.bg=this._activeBuffer.savedCurAttrData.bg,this._charsetService.charset=this._savedCharset,this._activeBuffer.savedCharset&&(this._charsetService.charset=this._activeBuffer.savedCharset),this._restrictCursor(),!0}setTitle(e){return this._windowTitle=e,this._onTitleChange.fire(e),!0}setIconName(e){return this._iconName=e,!0}setOrReportIndexedColor(e){let t=[],i=e.split(";");for(;i.length>1;){let s=i.shift(),r=i.shift();if(/^\d+$/.exec(s)){let n=parseInt(s);if(_l(n))if(r==="?")t.push({type:0,index:n});else{let a=ll(r);a&&t.push({type:1,index:n,color:a})}}}return t.length&&this._onColor.fire(t),!0}setHyperlink(e){let t=e.indexOf(";");if(t===-1)return!0;let i=e.slice(0,t).trim(),s=e.slice(t+1);return s?this._createHyperlink(i,s):i.trim()?!1:this._finishHyperlink()}_createHyperlink(e,t){this._getCurrentLinkId()&&this._finishHyperlink();let i=e.split(":"),s,r=i.findIndex(n=>n.startsWith("id="));return r!==-1&&(s=i[r].slice(3)||void 0),this._curAttrData.extended=this._curAttrData.extended.clone(),this._curAttrData.extended.urlId=this._oscLinkService.registerLink({id:s,uri:t}),this._curAttrData.updateExtended(),!0}_finishHyperlink(){return this._curAttrData.extended=this._curAttrData.extended.clone(),this._curAttrData.extended.urlId=0,this._curAttrData.updateExtended(),!0}_setOrReportSpecialColor(e,t){let i=e.split(";");for(let s=0;s=this._specialColors.length);++s,++t)if(i[s]==="?")this._onColor.fire([{type:0,index:this._specialColors[t]}]);else{let r=ll(i[s]);r&&this._onColor.fire([{type:1,index:this._specialColors[t],color:r}])}return!0}setOrReportFgColor(e){return this._setOrReportSpecialColor(e,0)}setOrReportBgColor(e){return this._setOrReportSpecialColor(e,1)}setOrReportCursorColor(e){return this._setOrReportSpecialColor(e,2)}restoreIndexedColor(e){if(!e)return this._onColor.fire([{type:2}]),!0;let t=[],i=e.split(";");for(let s=0;s=this._bufferService.rows&&(this._activeBuffer.y=this._bufferService.rows-1),this._restrictCursor(),!0}tabSet(){return this._activeBuffer.tabs[this._activeBuffer.x]=!0,!0}reverseIndex(){if(this._restrictCursor(),this._activeBuffer.y===this._activeBuffer.scrollTop){let e=this._activeBuffer.scrollBottom-this._activeBuffer.scrollTop;this._activeBuffer.lines.shiftElements(this._activeBuffer.ybase+this._activeBuffer.y,e,1),this._activeBuffer.lines.set(this._activeBuffer.ybase+this._activeBuffer.y,this._activeBuffer.getBlankLine(this._eraseAttrData())),this._dirtyRowTracker.markRangeDirty(this._activeBuffer.scrollTop,this._activeBuffer.scrollBottom)}else this._activeBuffer.y--,this._restrictCursor();return!0}fullReset(){return this._parser.reset(),this._onRequestReset.fire(),!0}reset(){this._curAttrData=Xe.clone(),this._eraseAttrDataInternal=Xe.clone()}_eraseAttrData(){return this._eraseAttrDataInternal.bg&=-67108864,this._eraseAttrDataInternal.bg|=this._curAttrData.bg&67108863,this._eraseAttrDataInternal}setgLevel(e){return this._charsetService.setgLevel(e),!0}screenAlignmentPattern(){let e=new si;e.content=1<<22|69,e.fg=this._curAttrData.fg,e.bg=this._curAttrData.bg,this._setCursor(0,0);for(let t=0;t(this._coreService.triggerDataEvent(`${q.ESC}${a}${q.ESC}\\`),!0),s=this._bufferService.buffer,r=this._optionsService.rawOptions;return i(e==='"q'?`P1$r${this._curAttrData.isProtected()?1:0}"q`:e==='"p'?'P1$r61;1"p':e==="r"?`P1$r${s.scrollTop+1};${s.scrollBottom+1}r`:e==="m"?"P1$r0m":e===" q"?`P1$r${{block:2,underline:4,bar:6}[r.cursorStyle]-(r.cursorBlink?1:0)} q`:"P0$r")}markRangeDirty(e,t){this._dirtyRowTracker.markRangeDirty(e,t)}},To=class{constructor(e){this._bufferService=e,this.clearRange()}clearRange(){this.start=this._bufferService.buffer.y,this.end=this._bufferService.buffer.y}markDirty(e){ethis.end&&(this.end=e)}markRangeDirty(e,t){e>t&&(ul=e,e=t,t=ul),ethis.end&&(this.end=t)}markAllDirty(){this.markRangeDirty(0,this._bufferService.rows-1)}};To=Ke([te(0,Dt)],To);function _l(e){return 0<=e&&e<256}var dv=5e7,fl=12,uv=50,_v=class extends Ie{constructor(e){super(),this._action=e,this._writeBuffer=[],this._callbacks=[],this._pendingData=0,this._bufferOffset=0,this._isSyncWriting=!1,this._syncCalls=0,this._didUserInput=!1,this._onWriteParsed=this._register(new Y),this.onWriteParsed=this._onWriteParsed.event}handleUserInput(){this._didUserInput=!0}writeSync(e,t){if(t!==void 0&&this._syncCalls>t){this._syncCalls=0;return}if(this._pendingData+=e.length,this._writeBuffer.push(e),this._callbacks.push(void 0),this._syncCalls++,this._isSyncWriting)return;this._isSyncWriting=!0;let i;for(;i=this._writeBuffer.shift();){this._action(i);let s=this._callbacks.shift();s&&s()}this._pendingData=0,this._bufferOffset=2147483647,this._isSyncWriting=!1,this._syncCalls=0}write(e,t){if(this._pendingData>dv)throw new Error("write data discarded, use flow control to avoid losing data");if(!this._writeBuffer.length){if(this._bufferOffset=0,this._didUserInput){this._didUserInput=!1,this._pendingData+=e.length,this._writeBuffer.push(e),this._callbacks.push(t),this._innerWrite();return}setTimeout(()=>this._innerWrite())}this._pendingData+=e.length,this._writeBuffer.push(e),this._callbacks.push(t)}_innerWrite(e=0,t=!0){let i=e||performance.now();for(;this._writeBuffer.length>this._bufferOffset;){let s=this._writeBuffer[this._bufferOffset],r=this._action(s,t);if(r){let a=o=>performance.now()-i>=fl?setTimeout(()=>this._innerWrite(0,o)):this._innerWrite(i,o);r.catch(o=>(queueMicrotask(()=>{throw o}),Promise.resolve(!1))).then(a);return}let n=this._callbacks[this._bufferOffset];if(n&&n(),this._bufferOffset++,this._pendingData-=s.length,performance.now()-i>=fl)break}this._writeBuffer.length>this._bufferOffset?(this._bufferOffset>uv&&(this._writeBuffer=this._writeBuffer.slice(this._bufferOffset),this._callbacks=this._callbacks.slice(this._bufferOffset),this._bufferOffset=0),setTimeout(()=>this._innerWrite())):(this._writeBuffer.length=0,this._callbacks.length=0,this._pendingData=0,this._bufferOffset=0),this._onWriteParsed.fire()}},Po=class{constructor(e){this._bufferService=e,this._nextId=1,this._entriesWithId=new Map,this._dataByLinkId=new Map}registerLink(e){let t=this._bufferService.buffer;if(e.id===void 0){let o=t.addMarker(t.ybase+t.y),h={data:e,id:this._nextId++,lines:[o]};return o.onDispose(()=>this._removeMarkerFromLink(h,o)),this._dataByLinkId.set(h.id,h),h.id}let i=e,s=this._getEntryIdKey(i),r=this._entriesWithId.get(s);if(r)return this.addLineToLink(r.id,t.ybase+t.y),r.id;let n=t.addMarker(t.ybase+t.y),a={id:this._nextId++,key:this._getEntryIdKey(i),data:i,lines:[n]};return n.onDispose(()=>this._removeMarkerFromLink(a,n)),this._entriesWithId.set(a.key,a),this._dataByLinkId.set(a.id,a),a.id}addLineToLink(e,t){let i=this._dataByLinkId.get(e);if(i&&i.lines.every(s=>s.line!==t)){let s=this._bufferService.buffer.addMarker(t);i.lines.push(s),s.onDispose(()=>this._removeMarkerFromLink(i,s))}}getLinkData(e){var t;return(t=this._dataByLinkId.get(e))==null?void 0:t.data}_getEntryIdKey(e){return`${e.id};;${e.uri}`}_removeMarkerFromLink(e,t){let i=e.lines.indexOf(t);i!==-1&&(e.lines.splice(i,1),e.lines.length===0&&(e.data.id!==void 0&&this._entriesWithId.delete(e.key),this._dataByLinkId.delete(e.id)))}};Po=Ke([te(0,Dt)],Po);var vl=!1,fv=class extends Ie{constructor(e){super(),this._windowsWrappingHeuristics=this._register(new Ms),this._onBinary=this._register(new Y),this.onBinary=this._onBinary.event,this._onData=this._register(new Y),this.onData=this._onData.event,this._onLineFeed=this._register(new Y),this.onLineFeed=this._onLineFeed.event,this._onResize=this._register(new Y),this.onResize=this._onResize.event,this._onWriteParsed=this._register(new Y),this.onWriteParsed=this._onWriteParsed.event,this._onScroll=this._register(new Y),this._instantiationService=new Nf,this.optionsService=this._register(new Jf(e)),this._instantiationService.setService(Mt,this.optionsService),this._bufferService=this._register(this._instantiationService.createInstance(Do)),this._instantiationService.setService(Dt,this._bufferService),this._logService=this._register(this._instantiationService.createInstance(Io)),this._instantiationService.setService(yh,this._logService),this.coreService=this._register(this._instantiationService.createInstance(Mo)),this._instantiationService.setService(gs,this.coreService),this.coreMouseService=this._register(this._instantiationService.createInstance(Lo)),this._instantiationService.setService(bh,this.coreMouseService),this.unicodeService=this._register(this._instantiationService.createInstance(Xi)),this._instantiationService.setService(Ru,this.unicodeService),this._charsetService=this._instantiationService.createInstance(Zf),this._instantiationService.setService(Lu,this._charsetService),this._oscLinkService=this._instantiationService.createInstance(Po),this._instantiationService.setService(xh,this._oscLinkService),this._inputHandler=this._register(new cv(this._bufferService,this._charsetService,this.coreService,this._logService,this.optionsService,this._oscLinkService,this.coreMouseService,this.unicodeService)),this._register(ft.forward(this._inputHandler.onLineFeed,this._onLineFeed)),this._register(this._inputHandler),this._register(ft.forward(this._bufferService.onResize,this._onResize)),this._register(ft.forward(this.coreService.onData,this._onData)),this._register(ft.forward(this.coreService.onBinary,this._onBinary)),this._register(this.coreService.onRequestScrollToBottom(()=>this.scrollToBottom(!0))),this._register(this.coreService.onUserInput(()=>this._writeBuffer.handleUserInput())),this._register(this.optionsService.onMultipleOptionChange(["windowsMode","windowsPty"],()=>this._handleWindowsPtyOptionChange())),this._register(this._bufferService.onScroll(()=>{this._onScroll.fire({position:this._bufferService.buffer.ydisp}),this._inputHandler.markRangeDirty(this._bufferService.buffer.scrollTop,this._bufferService.buffer.scrollBottom)})),this._writeBuffer=this._register(new _v((t,i)=>this._inputHandler.parse(t,i))),this._register(ft.forward(this._writeBuffer.onWriteParsed,this._onWriteParsed))}get onScroll(){return this._onScrollApi||(this._onScrollApi=this._register(new Y),this._onScroll.event(e=>{var t;(t=this._onScrollApi)==null||t.fire(e.position)})),this._onScrollApi.event}get cols(){return this._bufferService.cols}get rows(){return this._bufferService.rows}get buffers(){return this._bufferService.buffers}get options(){return this.optionsService.options}set options(e){for(let t in e)this.optionsService.options[t]=e[t]}write(e,t){this._writeBuffer.write(e,t)}writeSync(e,t){this._logService.logLevel<=3&&!vl&&(this._logService.warn("writeSync is unreliable and will be removed soon."),vl=!0),this._writeBuffer.writeSync(e,t)}input(e,t=!0){this.coreService.triggerDataEvent(e,t)}resize(e,t){isNaN(e)||isNaN(t)||(e=Math.max(e,sc),t=Math.max(t,rc),this._bufferService.resize(e,t))}scroll(e,t=!1){this._bufferService.scroll(e,t)}scrollLines(e,t){this._bufferService.scrollLines(e,t)}scrollPages(e){this.scrollLines(e*(this.rows-1))}scrollToTop(){this.scrollLines(-this._bufferService.buffer.ydisp)}scrollToBottom(e){this.scrollLines(this._bufferService.buffer.ybase-this._bufferService.buffer.ydisp)}scrollToLine(e){let t=e-this._bufferService.buffer.ydisp;t!==0&&this.scrollLines(t)}registerEscHandler(e,t){return this._inputHandler.registerEscHandler(e,t)}registerDcsHandler(e,t){return this._inputHandler.registerDcsHandler(e,t)}registerCsiHandler(e,t){return this._inputHandler.registerCsiHandler(e,t)}registerOscHandler(e,t){return this._inputHandler.registerOscHandler(e,t)}_setup(){this._handleWindowsPtyOptionChange()}reset(){this._inputHandler.reset(),this._bufferService.reset(),this._charsetService.reset(),this.coreService.reset(),this.coreMouseService.reset()}_handleWindowsPtyOptionChange(){let e=!1,t=this.optionsService.rawOptions.windowsPty;t&&t.buildNumber!==void 0&&t.buildNumber!==void 0?e=t.backend==="conpty"&&t.buildNumber<21376:this.optionsService.rawOptions.windowsMode&&(e=!0),e?this._enableWindowsWrappingHeuristics():this._windowsWrappingHeuristics.clear()}_enableWindowsWrappingHeuristics(){if(!this._windowsWrappingHeuristics.value){let e=[];e.push(this.onLineFeed(ol.bind(null,this._bufferService))),e.push(this.registerCsiHandler({final:"H"},()=>(ol(this._bufferService),!1))),this._windowsWrappingHeuristics.value=ze(()=>{for(let t of e)t.dispose()})}}},vv={48:["0",")"],49:["1","!"],50:["2","@"],51:["3","#"],52:["4","$"],53:["5","%"],54:["6","^"],55:["7","&"],56:["8","*"],57:["9","("],186:[";",":"],187:["=","+"],188:[",","<"],189:["-","_"],190:[".",">"],191:["/","?"],192:["`","~"],219:["[","{"],220:["\\","|"],221:["]","}"],222:["'",'"']};function gv(e,t,i,s){var a;let r={type:0,cancel:!1,key:void 0},n=(e.shiftKey?1:0)|(e.altKey?2:0)|(e.ctrlKey?4:0)|(e.metaKey?8:0);switch(e.keyCode){case 0:e.key==="UIKeyInputUpArrow"?t?r.key=q.ESC+"OA":r.key=q.ESC+"[A":e.key==="UIKeyInputLeftArrow"?t?r.key=q.ESC+"OD":r.key=q.ESC+"[D":e.key==="UIKeyInputRightArrow"?t?r.key=q.ESC+"OC":r.key=q.ESC+"[C":e.key==="UIKeyInputDownArrow"&&(t?r.key=q.ESC+"OB":r.key=q.ESC+"[B");break;case 8:r.key=e.ctrlKey?"\b":q.DEL,e.altKey&&(r.key=q.ESC+r.key);break;case 9:if(e.shiftKey){r.key=q.ESC+"[Z";break}r.key=q.HT,r.cancel=!0;break;case 13:r.key=e.altKey?q.ESC+q.CR:q.CR,r.cancel=!0;break;case 27:r.key=q.ESC,e.altKey&&(r.key=q.ESC+q.ESC),r.cancel=!0;break;case 37:if(e.metaKey)break;n?r.key=q.ESC+"[1;"+(n+1)+"D":t?r.key=q.ESC+"OD":r.key=q.ESC+"[D";break;case 39:if(e.metaKey)break;n?r.key=q.ESC+"[1;"+(n+1)+"C":t?r.key=q.ESC+"OC":r.key=q.ESC+"[C";break;case 38:if(e.metaKey)break;n?r.key=q.ESC+"[1;"+(n+1)+"A":t?r.key=q.ESC+"OA":r.key=q.ESC+"[A";break;case 40:if(e.metaKey)break;n?r.key=q.ESC+"[1;"+(n+1)+"B":t?r.key=q.ESC+"OB":r.key=q.ESC+"[B";break;case 45:!e.shiftKey&&!e.ctrlKey&&(r.key=q.ESC+"[2~");break;case 46:n?r.key=q.ESC+"[3;"+(n+1)+"~":r.key=q.ESC+"[3~";break;case 36:n?r.key=q.ESC+"[1;"+(n+1)+"H":t?r.key=q.ESC+"OH":r.key=q.ESC+"[H";break;case 35:n?r.key=q.ESC+"[1;"+(n+1)+"F":t?r.key=q.ESC+"OF":r.key=q.ESC+"[F";break;case 33:e.shiftKey?r.type=2:e.ctrlKey?r.key=q.ESC+"[5;"+(n+1)+"~":r.key=q.ESC+"[5~";break;case 34:e.shiftKey?r.type=3:e.ctrlKey?r.key=q.ESC+"[6;"+(n+1)+"~":r.key=q.ESC+"[6~";break;case 112:n?r.key=q.ESC+"[1;"+(n+1)+"P":r.key=q.ESC+"OP";break;case 113:n?r.key=q.ESC+"[1;"+(n+1)+"Q":r.key=q.ESC+"OQ";break;case 114:n?r.key=q.ESC+"[1;"+(n+1)+"R":r.key=q.ESC+"OR";break;case 115:n?r.key=q.ESC+"[1;"+(n+1)+"S":r.key=q.ESC+"OS";break;case 116:n?r.key=q.ESC+"[15;"+(n+1)+"~":r.key=q.ESC+"[15~";break;case 117:n?r.key=q.ESC+"[17;"+(n+1)+"~":r.key=q.ESC+"[17~";break;case 118:n?r.key=q.ESC+"[18;"+(n+1)+"~":r.key=q.ESC+"[18~";break;case 119:n?r.key=q.ESC+"[19;"+(n+1)+"~":r.key=q.ESC+"[19~";break;case 120:n?r.key=q.ESC+"[20;"+(n+1)+"~":r.key=q.ESC+"[20~";break;case 121:n?r.key=q.ESC+"[21;"+(n+1)+"~":r.key=q.ESC+"[21~";break;case 122:n?r.key=q.ESC+"[23;"+(n+1)+"~":r.key=q.ESC+"[23~";break;case 123:n?r.key=q.ESC+"[24;"+(n+1)+"~":r.key=q.ESC+"[24~";break;default:if(e.ctrlKey&&!e.shiftKey&&!e.altKey&&!e.metaKey)e.keyCode>=65&&e.keyCode<=90?r.key=String.fromCharCode(e.keyCode-64):e.keyCode===32?r.key=q.NUL:e.keyCode>=51&&e.keyCode<=55?r.key=String.fromCharCode(e.keyCode-51+27):e.keyCode===56?r.key=q.DEL:e.keyCode===219?r.key=q.ESC:e.keyCode===220?r.key=q.FS:e.keyCode===221&&(r.key=q.GS);else if((!i||s)&&e.altKey&&!e.metaKey){let o=(a=vv[e.keyCode])==null?void 0:a[e.shiftKey?1:0];if(o)r.key=q.ESC+o;else if(e.keyCode>=65&&e.keyCode<=90){let h=e.ctrlKey?e.keyCode-64:e.keyCode+32,l=String.fromCharCode(h);e.shiftKey&&(l=l.toUpperCase()),r.key=q.ESC+l}else if(e.keyCode===32)r.key=q.ESC+(e.ctrlKey?q.NUL:" ");else if(e.key==="Dead"&&e.code.startsWith("Key")){let h=e.code.slice(3,4);e.shiftKey||(h=h.toLowerCase()),r.key=q.ESC+h,r.cancel=!0}}else i&&!e.altKey&&!e.ctrlKey&&!e.shiftKey&&e.metaKey?e.keyCode===65&&(r.type=1):e.key&&!e.ctrlKey&&!e.altKey&&!e.metaKey&&e.keyCode>=48&&e.key.length===1?r.key=e.key:e.key&&e.ctrlKey&&(e.key==="_"&&(r.key=q.US),e.key==="@"&&(r.key=q.NUL));break}return r}var Ye=0,pv=class{constructor(e){this._getKey=e,this._array=[],this._insertedValues=[],this._flushInsertedTask=new Zr,this._isFlushingInserted=!1,this._deletedIndices=[],this._flushDeletedTask=new Zr,this._isFlushingDeleted=!1}clear(){this._array.length=0,this._insertedValues.length=0,this._flushInsertedTask.clear(),this._isFlushingInserted=!1,this._deletedIndices.length=0,this._flushDeletedTask.clear(),this._isFlushingDeleted=!1}insert(e){this._flushCleanupDeleted(),this._insertedValues.length===0&&this._flushInsertedTask.enqueue(()=>this._flushInserted()),this._insertedValues.push(e)}_flushInserted(){let e=this._insertedValues.sort((r,n)=>this._getKey(r)-this._getKey(n)),t=0,i=0,s=new Array(this._array.length+this._insertedValues.length);for(let r=0;r=this._array.length||this._getKey(e[t])<=this._getKey(this._array[i])?(s[r]=e[t],t++):s[r]=this._array[i++];this._array=s,this._insertedValues.length=0}_flushCleanupInserted(){!this._isFlushingInserted&&this._insertedValues.length>0&&this._flushInsertedTask.flush()}delete(e){if(this._flushCleanupInserted(),this._array.length===0)return!1;let t=this._getKey(e);if(t===void 0||(Ye=this._search(t),Ye===-1)||this._getKey(this._array[Ye])!==t)return!1;do if(this._array[Ye]===e)return this._deletedIndices.length===0&&this._flushDeletedTask.enqueue(()=>this._flushDeleted()),this._deletedIndices.push(Ye),!0;while(++Yer-n),t=0,i=new Array(this._array.length-e.length),s=0;for(let r=0;r0&&this._flushDeletedTask.flush()}*getKeyIterator(e){if(this._flushCleanupInserted(),this._flushCleanupDeleted(),this._array.length!==0&&(Ye=this._search(e),!(Ye<0||Ye>=this._array.length)&&this._getKey(this._array[Ye])===e))do yield this._array[Ye];while(++Ye=this._array.length)&&this._getKey(this._array[Ye])===e))do t(this._array[Ye]);while(++Ye=t;){let s=t+i>>1,r=this._getKey(this._array[s]);if(r>e)i=s-1;else if(r0&&this._getKey(this._array[s-1])===e;)s--;return s}}return t}},Qn=0,gl=0,mv=class extends Ie{constructor(){super(),this._decorations=new pv(e=>e==null?void 0:e.marker.line),this._onDecorationRegistered=this._register(new Y),this.onDecorationRegistered=this._onDecorationRegistered.event,this._onDecorationRemoved=this._register(new Y),this.onDecorationRemoved=this._onDecorationRemoved.event,this._register(ze(()=>this.reset()))}get decorations(){return this._decorations.values()}registerDecoration(e){if(e.marker.isDisposed)return;let t=new Av(e);if(t){let i=t.marker.onDispose(()=>t.dispose()),s=t.onDispose(()=>{s.dispose(),t&&(this._decorations.delete(t)&&this._onDecorationRemoved.fire(t),i.dispose())});this._decorations.insert(t),this._onDecorationRegistered.fire(t)}return t}reset(){for(let e of this._decorations.values())e.dispose();this._decorations.clear()}*getDecorationsAtCell(e,t,i){let s=0,r=0;for(let n of this._decorations.getKeyIterator(t))s=n.options.x??0,r=s+(n.options.width??1),e>=s&&e{Qn=r.options.x??0,gl=Qn+(r.options.width??1),e>=Qn&&e=this._debounceThresholdMS)this._lastRefreshMs=s,this._innerRefresh();else if(!this._additionalRefreshRequested){let r=s-this._lastRefreshMs,n=this._debounceThresholdMS-r;this._additionalRefreshRequested=!0,this._refreshTimeoutID=window.setTimeout(()=>{this._lastRefreshMs=performance.now(),this._innerRefresh(),this._additionalRefreshRequested=!1,this._refreshTimeoutID=void 0},n)}}_innerRefresh(){if(this._rowStart===void 0||this._rowEnd===void 0||this._rowCount===void 0)return;let e=Math.max(this._rowStart,0),t=Math.min(this._rowEnd,this._rowCount-1);this._rowStart=void 0,this._rowEnd=void 0,this._renderCallback(e,t)}},pl=20,en=class extends Ie{constructor(e,t,i,s){super(),this._terminal=e,this._coreBrowserService=i,this._renderService=s,this._rowColumns=new WeakMap,this._liveRegionLineCount=0,this._charsToConsume=[],this._charsToAnnounce="";let r=this._coreBrowserService.mainDocument;this._accessibilityContainer=r.createElement("div"),this._accessibilityContainer.classList.add("xterm-accessibility"),this._rowContainer=r.createElement("div"),this._rowContainer.setAttribute("role","list"),this._rowContainer.classList.add("xterm-accessibility-tree"),this._rowElements=[];for(let n=0;nthis._handleBoundaryFocus(n,0),this._bottomBoundaryFocusListener=n=>this._handleBoundaryFocus(n,1),this._rowElements[0].addEventListener("focus",this._topBoundaryFocusListener),this._rowElements[this._rowElements.length-1].addEventListener("focus",this._bottomBoundaryFocusListener),this._accessibilityContainer.appendChild(this._rowContainer),this._liveRegion=r.createElement("div"),this._liveRegion.classList.add("live-region"),this._liveRegion.setAttribute("aria-live","assertive"),this._accessibilityContainer.appendChild(this._liveRegion),this._liveRegionDebouncer=this._register(new Cv(this._renderRows.bind(this))),!this._terminal.element)throw new Error("Cannot enable accessibility before Terminal.open");this._terminal.element.insertAdjacentElement("afterbegin",this._accessibilityContainer),this._register(this._terminal.onResize(n=>this._handleResize(n.rows))),this._register(this._terminal.onRender(n=>this._refreshRows(n.start,n.end))),this._register(this._terminal.onScroll(()=>this._refreshRows())),this._register(this._terminal.onA11yChar(n=>this._handleChar(n))),this._register(this._terminal.onLineFeed(()=>this._handleChar(` -`))),this._register(this._terminal.onA11yTab(n=>this._handleTab(n))),this._register(this._terminal.onKey(n=>this._handleKey(n.key))),this._register(this._terminal.onBlur(()=>this._clearLiveRegion())),this._register(this._renderService.onDimensionsChange(()=>this._refreshRowsDimensions())),this._register(ge(r,"selectionchange",()=>this._handleSelectionChange())),this._register(this._coreBrowserService.onDprChange(()=>this._refreshRowsDimensions())),this._refreshRowsDimensions(),this._refreshRows(),this._register(ze(()=>{this._accessibilityContainer.remove(),this._rowElements.length=0}))}_handleTab(e){for(let t=0;t0?this._charsToConsume.shift()!==e&&(this._charsToAnnounce+=e):this._charsToAnnounce+=e,e===` -`&&(this._liveRegionLineCount++,this._liveRegionLineCount===pl+1&&(this._liveRegion.textContent+=eo.get())))}_clearLiveRegion(){this._liveRegion.textContent="",this._liveRegionLineCount=0}_handleKey(e){this._clearLiveRegion(),new RegExp("\\p{Control}","u").test(e)||this._charsToConsume.push(e)}_refreshRows(e,t){this._liveRegionDebouncer.refresh(e,t,this._terminal.rows)}_renderRows(e,t){let i=this._terminal.buffer,s=i.lines.length.toString();for(let r=e;r<=t;r++){let n=i.lines.get(i.ydisp+r),a=[],o=(n==null?void 0:n.translateToString(!0,void 0,void 0,a))||"",h=(i.ydisp+r+1).toString(),l=this._rowElements[r];l&&(o.length===0?(l.textContent=" ",this._rowColumns.set(l,[0,1])):(l.textContent=o,this._rowColumns.set(l,a)),l.setAttribute("aria-posinset",h),l.setAttribute("aria-setsize",s),this._alignRowWidth(l))}this._announceCharacters()}_announceCharacters(){this._charsToAnnounce.length!==0&&(this._liveRegion.textContent+=this._charsToAnnounce,this._charsToAnnounce="")}_handleBoundaryFocus(e,t){let i=e.target,s=this._rowElements[t===0?1:this._rowElements.length-2],r=i.getAttribute("aria-posinset"),n=t===0?"1":`${this._terminal.buffer.lines.length}`;if(r===n||e.relatedTarget!==s)return;let a,o;if(t===0?(a=i,o=this._rowElements.pop(),this._rowContainer.removeChild(o)):(a=this._rowElements.shift(),o=i,this._rowContainer.removeChild(a)),a.removeEventListener("focus",this._topBoundaryFocusListener),o.removeEventListener("focus",this._bottomBoundaryFocusListener),t===0){let h=this._createAccessibilityTreeNode();this._rowElements.unshift(h),this._rowContainer.insertAdjacentElement("afterbegin",h)}else{let h=this._createAccessibilityTreeNode();this._rowElements.push(h),this._rowContainer.appendChild(h)}this._rowElements[0].addEventListener("focus",this._topBoundaryFocusListener),this._rowElements[this._rowElements.length-1].addEventListener("focus",this._bottomBoundaryFocusListener),this._terminal.scrollLines(t===0?-1:1),this._rowElements[t===0?1:this._rowElements.length-2].focus(),e.preventDefault(),e.stopImmediatePropagation()}_handleSelectionChange(){var o;if(this._rowElements.length===0)return;let e=this._coreBrowserService.mainDocument.getSelection();if(!e)return;if(e.isCollapsed){this._rowContainer.contains(e.anchorNode)&&this._terminal.clearSelection();return}if(!e.anchorNode||!e.focusNode){console.error("anchorNode and/or focusNode are null");return}let t={node:e.anchorNode,offset:e.anchorOffset},i={node:e.focusNode,offset:e.focusOffset};if((t.node.compareDocumentPosition(i.node)&Node.DOCUMENT_POSITION_PRECEDING||t.node===i.node&&t.offset>i.offset)&&([t,i]=[i,t]),t.node.compareDocumentPosition(this._rowElements[0])&(Node.DOCUMENT_POSITION_CONTAINED_BY|Node.DOCUMENT_POSITION_FOLLOWING)&&(t={node:this._rowElements[0].childNodes[0],offset:0}),!this._rowContainer.contains(t.node))return;let s=this._rowElements.slice(-1)[0];if(i.node.compareDocumentPosition(s)&(Node.DOCUMENT_POSITION_CONTAINED_BY|Node.DOCUMENT_POSITION_PRECEDING)&&(i={node:s,offset:((o=s.textContent)==null?void 0:o.length)??0}),!this._rowContainer.contains(i.node))return;let r=({node:h,offset:l})=>{let c=h instanceof Text?h.parentNode:h,d=parseInt(c==null?void 0:c.getAttribute("aria-posinset"),10)-1;if(isNaN(d))return console.warn("row is invalid. Race condition?"),null;let g=this._rowColumns.get(c);if(!g)return console.warn("columns is null. Race condition?"),null;let _=l=this._terminal.cols&&(++d,_=0),{row:d,column:_}},n=r(t),a=r(i);if(!(!n||!a)){if(n.row>a.row||n.row===a.row&&n.column>=a.column)throw new Error("invalid range");this._terminal.select(n.column,n.row,(a.row-n.row)*this._terminal.cols-n.column+a.column)}}_handleResize(e){this._rowElements[this._rowElements.length-1].removeEventListener("focus",this._bottomBoundaryFocusListener);for(let t=this._rowContainer.children.length;te;)this._rowContainer.removeChild(this._rowElements.pop());this._rowElements[this._rowElements.length-1].addEventListener("focus",this._bottomBoundaryFocusListener),this._refreshRowsDimensions()}_createAccessibilityTreeNode(){let e=this._coreBrowserService.mainDocument.createElement("div");return e.setAttribute("role","listitem"),e.tabIndex=-1,this._refreshRowDimensions(e),e}_refreshRowsDimensions(){if(this._renderService.dimensions.css.cell.height){Object.assign(this._accessibilityContainer.style,{width:`${this._renderService.dimensions.css.canvas.width}px`,fontSize:`${this._terminal.options.fontSize}px`}),this._rowElements.length!==this._terminal.rows&&this._handleResize(this._terminal.rows);for(let e=0;e{var n;_s(this._linkCacheDisposables),this._linkCacheDisposables.length=0,this._lastMouseEvent=void 0,(n=this._activeProviderReplies)==null||n.clear()})),this._register(this._bufferService.onResize(()=>{this._clearCurrentLink(),this._wasResized=!0})),this._register(ge(this._element,"mouseleave",()=>{this._isMouseOut=!0,this._clearCurrentLink()})),this._register(ge(this._element,"mousemove",this._handleMouseMove.bind(this))),this._register(ge(this._element,"mousedown",this._handleMouseDown.bind(this))),this._register(ge(this._element,"mouseup",this._handleMouseUp.bind(this)))}get currentLink(){return this._currentLink}_handleMouseMove(e){this._lastMouseEvent=e;let t=this._positionFromMouseEvent(e,this._element,this._mouseService);if(!t)return;this._isMouseOut=!1;let i=e.composedPath();for(let s=0;s{n==null||n.forEach(a=>{a.link.dispose&&a.link.dispose()})}),this._activeProviderReplies=new Map,this._activeLine=e.y);let i=!1;for(let[n,a]of this._linkProviderService.linkProviders.entries())t?(r=this._activeProviderReplies)!=null&&r.get(n)&&(i=this._checkLinkProviderResult(n,e,i)):a.provideLinks(e.y,o=>{var l,c;if(this._isMouseOut)return;let h=o==null?void 0:o.map(d=>({link:d}));(l=this._activeProviderReplies)==null||l.set(n,h),i=this._checkLinkProviderResult(n,e,i),((c=this._activeProviderReplies)==null?void 0:c.size)===this._linkProviderService.linkProviders.length&&this._removeIntersectingLinks(e.y,this._activeProviderReplies)})}_removeIntersectingLinks(e,t){let i=new Set;for(let s=0;se?this._bufferService.cols:a.link.range.end.x;for(let l=o;l<=h;l++){if(i.has(l)){r.splice(n--,1);break}i.add(l)}}}}_checkLinkProviderResult(e,t,i){var n;if(!this._activeProviderReplies)return i;let s=this._activeProviderReplies.get(e),r=!1;for(let a=0;athis._linkAtPosition(o.link,t));a&&(i=!0,this._handleNewLink(a))}if(this._activeProviderReplies.size===this._linkProviderService.linkProviders.length&&!i)for(let a=0;athis._linkAtPosition(h.link,t));if(o){i=!0,this._handleNewLink(o);break}}return i}_handleMouseDown(){this._mouseDownLink=this._currentLink}_handleMouseUp(e){if(!this._currentLink)return;let t=this._positionFromMouseEvent(e,this._element,this._mouseService);t&&this._mouseDownLink&&Sv(this._mouseDownLink.link,this._currentLink.link)&&this._linkAtPosition(this._currentLink.link,t)&&this._currentLink.link.activate(e,this._currentLink.link.text)}_clearCurrentLink(e,t){!this._currentLink||!this._lastMouseEvent||(!e||!t||this._currentLink.link.range.start.y>=e&&this._currentLink.link.range.end.y<=t)&&(this._linkLeave(this._element,this._currentLink.link,this._lastMouseEvent),this._currentLink=void 0,_s(this._linkCacheDisposables),this._linkCacheDisposables.length=0)}_handleNewLink(e){if(!this._lastMouseEvent)return;let t=this._positionFromMouseEvent(this._lastMouseEvent,this._element,this._mouseService);t&&this._linkAtPosition(e.link,t)&&(this._currentLink=e,this._currentLink.state={decorations:{underline:e.link.decorations===void 0?!0:e.link.decorations.underline,pointerCursor:e.link.decorations===void 0?!0:e.link.decorations.pointerCursor},isHovered:!0},this._linkHover(this._element,e.link,this._lastMouseEvent),e.link.decorations={},Object.defineProperties(e.link.decorations,{pointerCursor:{get:()=>{var i,s;return(s=(i=this._currentLink)==null?void 0:i.state)==null?void 0:s.decorations.pointerCursor},set:i=>{var s;(s=this._currentLink)!=null&&s.state&&this._currentLink.state.decorations.pointerCursor!==i&&(this._currentLink.state.decorations.pointerCursor=i,this._currentLink.state.isHovered&&this._element.classList.toggle("xterm-cursor-pointer",i))}},underline:{get:()=>{var i,s;return(s=(i=this._currentLink)==null?void 0:i.state)==null?void 0:s.decorations.underline},set:i=>{var s,r,n;(s=this._currentLink)!=null&&s.state&&((n=(r=this._currentLink)==null?void 0:r.state)==null?void 0:n.decorations.underline)!==i&&(this._currentLink.state.decorations.underline=i,this._currentLink.state.isHovered&&this._fireUnderlineEvent(e.link,i))}}}),this._linkCacheDisposables.push(this._renderService.onRenderedViewportChange(i=>{if(!this._currentLink)return;let s=i.start===0?0:i.start+1+this._bufferService.buffer.ydisp,r=this._bufferService.buffer.ydisp+1+i.end;if(this._currentLink.link.range.start.y>=s&&this._currentLink.link.range.end.y<=r&&(this._clearCurrentLink(s,r),this._lastMouseEvent)){let n=this._positionFromMouseEvent(this._lastMouseEvent,this._element,this._mouseService);n&&this._askForLink(n,!1)}})))}_linkHover(e,t,i){var s;(s=this._currentLink)!=null&&s.state&&(this._currentLink.state.isHovered=!0,this._currentLink.state.decorations.underline&&this._fireUnderlineEvent(t,!0),this._currentLink.state.decorations.pointerCursor&&e.classList.add("xterm-cursor-pointer")),t.hover&&t.hover(i,t.text)}_fireUnderlineEvent(e,t){let i=e.range,s=this._bufferService.buffer.ydisp,r=this._createLinkUnderlineEvent(i.start.x-1,i.start.y-s-1,i.end.x,i.end.y-s-1,void 0);(t?this._onShowLinkUnderline:this._onHideLinkUnderline).fire(r)}_linkLeave(e,t,i){var s;(s=this._currentLink)!=null&&s.state&&(this._currentLink.state.isHovered=!1,this._currentLink.state.decorations.underline&&this._fireUnderlineEvent(t,!1),this._currentLink.state.decorations.pointerCursor&&e.classList.remove("xterm-cursor-pointer")),t.leave&&t.leave(i,t.text)}_linkAtPosition(e,t){let i=e.range.start.y*this._bufferService.cols+e.range.start.x,s=e.range.end.y*this._bufferService.cols+e.range.end.x,r=t.y*this._bufferService.cols+t.x;return i<=r&&r<=s}_positionFromMouseEvent(e,t,i){let s=i.getCoords(e,t,this._bufferService.cols,this._bufferService.rows);if(s)return{x:s[0],y:s[1]+this._bufferService.buffer.ydisp}}_createLinkUnderlineEvent(e,t,i,s,r){return{x1:e,y1:t,x2:i,y2:s,cols:this._bufferService.cols,fg:r}}};Qo=Ke([te(1,Zo),te(2,Li),te(3,Dt),te(4,Eh)],Qo);function Sv(e,t){return e.text===t.text&&e.range.start.x===t.range.start.x&&e.range.start.y===t.range.start.y&&e.range.end.x===t.range.end.x&&e.range.end.y===t.range.end.y}var bv=class extends fv{constructor(e={}){super(e),this._linkifier=this._register(new Ms),this.browser=Gh,this._keyDownHandled=!1,this._keyDownSeen=!1,this._keyPressHandled=!1,this._unprocessedDeadKey=!1,this._accessibilityManager=this._register(new Ms),this._onCursorMove=this._register(new Y),this.onCursorMove=this._onCursorMove.event,this._onKey=this._register(new Y),this.onKey=this._onKey.event,this._onRender=this._register(new Y),this.onRender=this._onRender.event,this._onSelectionChange=this._register(new Y),this.onSelectionChange=this._onSelectionChange.event,this._onTitleChange=this._register(new Y),this.onTitleChange=this._onTitleChange.event,this._onBell=this._register(new Y),this.onBell=this._onBell.event,this._onFocus=this._register(new Y),this._onBlur=this._register(new Y),this._onA11yCharEmitter=this._register(new Y),this._onA11yTabEmitter=this._register(new Y),this._onWillOpen=this._register(new Y),this._setup(),this._decorationService=this._instantiationService.createInstance(mv),this._instantiationService.setService(Sr,this._decorationService),this._linkProviderService=this._instantiationService.createInstance(uf),this._instantiationService.setService(Eh,this._linkProviderService),this._linkProviderService.registerLinkProvider(this._instantiationService.createInstance(io)),this._register(this._inputHandler.onRequestBell(()=>this._onBell.fire())),this._register(this._inputHandler.onRequestRefreshRows(t=>this.refresh((t==null?void 0:t.start)??0,(t==null?void 0:t.end)??this.rows-1))),this._register(this._inputHandler.onRequestSendFocus(()=>this._reportFocus())),this._register(this._inputHandler.onRequestReset(()=>this.reset())),this._register(this._inputHandler.onRequestWindowsOptionsReport(t=>this._reportWindowsOptions(t))),this._register(this._inputHandler.onColor(t=>this._handleColorEvent(t))),this._register(ft.forward(this._inputHandler.onCursorMove,this._onCursorMove)),this._register(ft.forward(this._inputHandler.onTitleChange,this._onTitleChange)),this._register(ft.forward(this._inputHandler.onA11yChar,this._onA11yCharEmitter)),this._register(ft.forward(this._inputHandler.onA11yTab,this._onA11yTabEmitter)),this._register(this._bufferService.onResize(t=>this._afterResize(t.cols,t.rows))),this._register(ze(()=>{var t,i;this._customKeyEventHandler=void 0,(i=(t=this.element)==null?void 0:t.parentNode)==null||i.removeChild(this.element)}))}get linkifier(){return this._linkifier.value}get onFocus(){return this._onFocus.event}get onBlur(){return this._onBlur.event}get onA11yChar(){return this._onA11yCharEmitter.event}get onA11yTab(){return this._onA11yTabEmitter.event}get onWillOpen(){return this._onWillOpen.event}_handleColorEvent(e){if(this._themeService)for(let t of e){let i,s="";switch(t.index){case 256:i="foreground",s="10";break;case 257:i="background",s="11";break;case 258:i="cursor",s="12";break;default:i="ansi",s="4;"+t.index}switch(t.type){case 0:let r=We.toColorRGB(i==="ansi"?this._themeService.colors.ansi[t.index]:this._themeService.colors[i]);this.coreService.triggerDataEvent(`${q.ESC}]${s};${lv(r)}${$h.ST}`);break;case 1:if(i==="ansi")this._themeService.modifyColors(n=>n.ansi[t.index]=et.toColor(...t.color));else{let n=i;this._themeService.modifyColors(a=>a[n]=et.toColor(...t.color))}break;case 2:this._themeService.restoreColor(t.index);break}}}_setup(){super._setup(),this._customKeyEventHandler=void 0}get buffer(){return this.buffers.active}focus(){this.textarea&&this.textarea.focus({preventScroll:!0})}_handleScreenReaderModeOptionChange(e){e?!this._accessibilityManager.value&&this._renderService&&(this._accessibilityManager.value=this._instantiationService.createInstance(en,this)):this._accessibilityManager.clear()}_handleTextAreaFocus(e){this.coreService.decPrivateModes.sendFocus&&this.coreService.triggerDataEvent(q.ESC+"[I"),this.element.classList.add("focus"),this._showCursor(),this._onFocus.fire()}blur(){var e;return(e=this.textarea)==null?void 0:e.blur()}_handleTextAreaBlur(){this.textarea.value="",this.refresh(this.buffer.y,this.buffer.y),this.coreService.decPrivateModes.sendFocus&&this.coreService.triggerDataEvent(q.ESC+"[O"),this.element.classList.remove("focus"),this._onBlur.fire()}_syncTextArea(){if(!this.textarea||!this.buffer.isCursorInViewport||this._compositionHelper.isComposing||!this._renderService)return;let e=this.buffer.ybase+this.buffer.y,t=this.buffer.lines.get(e);if(!t)return;let i=Math.min(this.buffer.x,this.cols-1),s=this._renderService.dimensions.css.cell.height,r=t.getWidth(i),n=this._renderService.dimensions.css.cell.width*r,a=this.buffer.y*this._renderService.dimensions.css.cell.height,o=i*this._renderService.dimensions.css.cell.width;this.textarea.style.left=o+"px",this.textarea.style.top=a+"px",this.textarea.style.width=n+"px",this.textarea.style.height=s+"px",this.textarea.style.lineHeight=s+"px",this.textarea.style.zIndex="-5"}_initGlobal(){this._bindKeys(),this._register(ge(this.element,"copy",t=>{this.hasSelection()&&ku(t,this._selectionService)}));let e=t=>Eu(t,this.textarea,this.coreService,this.optionsService);this._register(ge(this.textarea,"paste",e)),this._register(ge(this.element,"paste",e)),Kh?this._register(ge(this.element,"mousedown",t=>{t.button===2&&Ea(t,this.textarea,this.screenElement,this._selectionService,this.options.rightClickSelectsWord)})):this._register(ge(this.element,"contextmenu",t=>{Ea(t,this.textarea,this.screenElement,this._selectionService,this.options.rightClickSelectsWord)})),aa&&this._register(ge(this.element,"auxclick",t=>{t.button===1&&mh(t,this.textarea,this.screenElement)}))}_bindKeys(){this._register(ge(this.textarea,"keyup",e=>this._keyUp(e),!0)),this._register(ge(this.textarea,"keydown",e=>this._keyDown(e),!0)),this._register(ge(this.textarea,"keypress",e=>this._keyPress(e),!0)),this._register(ge(this.textarea,"compositionstart",()=>this._compositionHelper.compositionstart())),this._register(ge(this.textarea,"compositionupdate",e=>this._compositionHelper.compositionupdate(e))),this._register(ge(this.textarea,"compositionend",()=>this._compositionHelper.compositionend())),this._register(ge(this.textarea,"input",e=>this._inputEvent(e),!0)),this._register(this.onRender(()=>this._compositionHelper.updateCompositionElements()))}open(e){var r;if(!e)throw new Error("Terminal requires a parent element.");if(e.isConnected||this._logService.debug("Terminal.open was called on an element that was not attached to the DOM"),((r=this.element)==null?void 0:r.ownerDocument.defaultView)&&this._coreBrowserService){this.element.ownerDocument.defaultView!==this._coreBrowserService.window&&(this._coreBrowserService.window=this.element.ownerDocument.defaultView);return}this._document=e.ownerDocument,this.options.documentOverride&&this.options.documentOverride instanceof Document&&(this._document=this.optionsService.rawOptions.documentOverride),this.element=this._document.createElement("div"),this.element.dir="ltr",this.element.classList.add("terminal"),this.element.classList.add("xterm"),e.appendChild(this.element);let t=this._document.createDocumentFragment();this._viewportElement=this._document.createElement("div"),this._viewportElement.classList.add("xterm-viewport"),t.appendChild(this._viewportElement),this.screenElement=this._document.createElement("div"),this.screenElement.classList.add("xterm-screen"),this._register(ge(this.screenElement,"mousemove",n=>this.updateCursorStyle(n))),this._helperContainer=this._document.createElement("div"),this._helperContainer.classList.add("xterm-helpers"),this.screenElement.appendChild(this._helperContainer),t.appendChild(this.screenElement);let i=this.textarea=this._document.createElement("textarea");this.textarea.classList.add("xterm-helper-textarea"),this.textarea.setAttribute("aria-label",Zn.get()),Yh||this.textarea.setAttribute("aria-multiline","false"),this.textarea.setAttribute("autocorrect","off"),this.textarea.setAttribute("autocapitalize","off"),this.textarea.setAttribute("spellcheck","false"),this.textarea.tabIndex=0,this._register(this.optionsService.onSpecificOptionChange("disableStdin",()=>i.readOnly=this.optionsService.rawOptions.disableStdin)),this.textarea.readOnly=this.optionsService.rawOptions.disableStdin,this._coreBrowserService=this._register(this._instantiationService.createInstance(cf,this.textarea,e.ownerDocument.defaultView??window,this._document??typeof window<"u"?window.document:null)),this._instantiationService.setService(Mi,this._coreBrowserService),this._register(ge(this.textarea,"focus",n=>this._handleTextAreaFocus(n))),this._register(ge(this.textarea,"blur",()=>this._handleTextAreaBlur())),this._helperContainer.appendChild(this.textarea),this._charSizeService=this._instantiationService.createInstance(yo,this._document,this._helperContainer),this._instantiationService.setService(un,this._charSizeService),this._themeService=this._instantiationService.createInstance(Bo),this._instantiationService.setService(Ps,this._themeService),this._characterJoinerService=this._instantiationService.createInstance(Vr),this._instantiationService.setService(kh,this._characterJoinerService),this._renderService=this._register(this._instantiationService.createInstance(ko,this.rows,this.screenElement)),this._instantiationService.setService(Li,this._renderService),this._register(this._renderService.onRenderedViewportChange(n=>this._onRender.fire(n))),this.onResize(n=>this._renderService.resize(n.cols,n.rows)),this._compositionView=this._document.createElement("div"),this._compositionView.classList.add("composition-view"),this._compositionHelper=this._instantiationService.createInstance(Co,this.textarea,this._compositionView),this._helperContainer.appendChild(this._compositionView),this._mouseService=this._instantiationService.createInstance(xo),this._instantiationService.setService(Zo,this._mouseService);let s=this._linkifier.value=this._register(this._instantiationService.createInstance(Qo,this.screenElement));this.element.appendChild(t);try{this._onWillOpen.fire(this.element)}catch{}this._renderService.hasRenderer()||this._renderService.setRenderer(this._createRenderer()),this._register(this.onCursorMove(()=>{this._renderService.handleCursorMove(),this._syncTextArea()})),this._register(this.onResize(()=>this._renderService.handleResize(this.cols,this.rows))),this._register(this.onBlur(()=>this._renderService.handleBlur())),this._register(this.onFocus(()=>this._renderService.handleFocus())),this._viewport=this._register(this._instantiationService.createInstance(Ao,this.element,this.screenElement)),this._register(this._viewport.onRequestScrollLines(n=>{super.scrollLines(n,!1),this.refresh(0,this.rows-1)})),this._selectionService=this._register(this._instantiationService.createInstance(Eo,this.element,this.screenElement,s)),this._instantiationService.setService(Pu,this._selectionService),this._register(this._selectionService.onRequestScrollLines(n=>this.scrollLines(n.amount,n.suppressScrollEvent))),this._register(this._selectionService.onSelectionChange(()=>this._onSelectionChange.fire())),this._register(this._selectionService.onRequestRedraw(n=>this._renderService.handleSelectionChanged(n.start,n.end,n.columnSelectMode))),this._register(this._selectionService.onLinuxMouseSelection(n=>{this.textarea.value=n,this.textarea.focus(),this.textarea.select()})),this._register(ft.any(this._onScroll.event,this._inputHandler.onScroll)(()=>{var n;this._selectionService.refresh(),(n=this._viewport)==null||n.queueSync()})),this._register(this._instantiationService.createInstance(wo,this.screenElement)),this._register(ge(this.element,"mousedown",n=>this._selectionService.handleMouseDown(n))),this.coreMouseService.areMouseEventsActive?(this._selectionService.disable(),this.element.classList.add("enable-mouse-events")):this._selectionService.enable(),this.options.screenReaderMode&&(this._accessibilityManager.value=this._instantiationService.createInstance(en,this)),this._register(this.optionsService.onSpecificOptionChange("screenReaderMode",n=>this._handleScreenReaderModeOptionChange(n))),this.options.overviewRuler.width&&(this._overviewRulerRenderer=this._register(this._instantiationService.createInstance(Yr,this._viewportElement,this.screenElement))),this.optionsService.onSpecificOptionChange("overviewRuler",n=>{!this._overviewRulerRenderer&&n&&this._viewportElement&&this.screenElement&&(this._overviewRulerRenderer=this._register(this._instantiationService.createInstance(Yr,this._viewportElement,this.screenElement)))}),this._charSizeService.measure(),this.refresh(0,this.rows-1),this._initGlobal(),this.bindMouse()}_createRenderer(){return this._instantiationService.createInstance(bo,this,this._document,this.element,this.screenElement,this._viewportElement,this._helperContainer,this.linkifier)}bindMouse(){let e=this,t=this.element;function i(n){var l,c,d,g,_;let a=e._mouseService.getMouseReportCoords(n,e.screenElement);if(!a)return!1;let o,h;switch(n.overrideType||n.type){case"mousemove":h=32,n.buttons===void 0?(o=3,n.button!==void 0&&(o=n.button<3?n.button:3)):o=n.buttons&1?0:n.buttons&4?1:n.buttons&2?2:3;break;case"mouseup":h=0,o=n.button<3?n.button:3;break;case"mousedown":h=1,o=n.button<3?n.button:3;break;case"wheel":if(e._customWheelEventHandler&&e._customWheelEventHandler(n)===!1)return!1;let v=n.deltaY;if(v===0||e.coreMouseService.consumeWheelEvent(n,(g=(d=(c=(l=e._renderService)==null?void 0:l.dimensions)==null?void 0:c.device)==null?void 0:d.cell)==null?void 0:g.height,(_=e._coreBrowserService)==null?void 0:_.dpr)===0)return!1;h=v<0?0:1,o=4;break;default:return!1}return h===void 0||o===void 0||o>4?!1:e.coreMouseService.triggerMouseEvent({col:a.col,row:a.row,x:a.x,y:a.y,button:o,action:h,ctrl:n.ctrlKey,alt:n.altKey,shift:n.shiftKey})}let s={mouseup:null,wheel:null,mousedrag:null,mousemove:null},r={mouseup:n=>(i(n),n.buttons||(this._document.removeEventListener("mouseup",s.mouseup),s.mousedrag&&this._document.removeEventListener("mousemove",s.mousedrag)),this.cancel(n)),wheel:n=>(i(n),this.cancel(n,!0)),mousedrag:n=>{n.buttons&&i(n)},mousemove:n=>{n.buttons||i(n)}};this._register(this.coreMouseService.onProtocolChange(n=>{n?(this.optionsService.rawOptions.logLevel==="debug"&&this._logService.debug("Binding to mouse events:",this.coreMouseService.explainEvents(n)),this.element.classList.add("enable-mouse-events"),this._selectionService.disable()):(this._logService.debug("Unbinding from mouse events."),this.element.classList.remove("enable-mouse-events"),this._selectionService.enable()),n&8?s.mousemove||(t.addEventListener("mousemove",r.mousemove),s.mousemove=r.mousemove):(t.removeEventListener("mousemove",s.mousemove),s.mousemove=null),n&16?s.wheel||(t.addEventListener("wheel",r.wheel,{passive:!1}),s.wheel=r.wheel):(t.removeEventListener("wheel",s.wheel),s.wheel=null),n&2?s.mouseup||(s.mouseup=r.mouseup):(this._document.removeEventListener("mouseup",s.mouseup),s.mouseup=null),n&4?s.mousedrag||(s.mousedrag=r.mousedrag):(this._document.removeEventListener("mousemove",s.mousedrag),s.mousedrag=null)})),this.coreMouseService.activeProtocol=this.coreMouseService.activeProtocol,this._register(ge(t,"mousedown",n=>{if(n.preventDefault(),this.focus(),!(!this.coreMouseService.areMouseEventsActive||this._selectionService.shouldForceSelection(n)))return i(n),s.mouseup&&this._document.addEventListener("mouseup",s.mouseup),s.mousedrag&&this._document.addEventListener("mousemove",s.mousedrag),this.cancel(n)})),this._register(ge(t,"wheel",n=>{var a,o,h,l,c;if(!s.wheel){if(this._customWheelEventHandler&&this._customWheelEventHandler(n)===!1)return!1;if(!this.buffer.hasScrollback){if(n.deltaY===0)return!1;if(e.coreMouseService.consumeWheelEvent(n,(l=(h=(o=(a=e._renderService)==null?void 0:a.dimensions)==null?void 0:o.device)==null?void 0:h.cell)==null?void 0:l.height,(c=e._coreBrowserService)==null?void 0:c.dpr)===0)return this.cancel(n,!0);let d=q.ESC+(this.coreService.decPrivateModes.applicationCursorKeys?"O":"[")+(n.deltaY<0?"A":"B");return this.coreService.triggerDataEvent(d,!0),this.cancel(n,!0)}}},{passive:!1}))}refresh(e,t){var i;(i=this._renderService)==null||i.refreshRows(e,t)}updateCursorStyle(e){var t;(t=this._selectionService)!=null&&t.shouldColumnSelect(e)?this.element.classList.add("column-select"):this.element.classList.remove("column-select")}_showCursor(){this.coreService.isCursorInitialized||(this.coreService.isCursorInitialized=!0,this.refresh(this.buffer.y,this.buffer.y))}scrollLines(e,t){this._viewport?this._viewport.scrollLines(e):super.scrollLines(e,t),this.refresh(0,this.rows-1)}scrollPages(e){this.scrollLines(e*(this.rows-1))}scrollToTop(){this.scrollLines(-this._bufferService.buffer.ydisp)}scrollToBottom(e){e&&this._viewport?this._viewport.scrollToLine(this.buffer.ybase,!0):this.scrollLines(this._bufferService.buffer.ybase-this._bufferService.buffer.ydisp)}scrollToLine(e){let t=e-this._bufferService.buffer.ydisp;t!==0&&this.scrollLines(t)}paste(e){ph(e,this.textarea,this.coreService,this.optionsService)}attachCustomKeyEventHandler(e){this._customKeyEventHandler=e}attachCustomWheelEventHandler(e){this._customWheelEventHandler=e}registerLinkProvider(e){return this._linkProviderService.registerLinkProvider(e)}registerCharacterJoiner(e){if(!this._characterJoinerService)throw new Error("Terminal must be opened first");let t=this._characterJoinerService.register(e);return this.refresh(0,this.rows-1),t}deregisterCharacterJoiner(e){if(!this._characterJoinerService)throw new Error("Terminal must be opened first");this._characterJoinerService.deregister(e)&&this.refresh(0,this.rows-1)}get markers(){return this.buffer.markers}registerMarker(e){return this.buffer.addMarker(this.buffer.ybase+this.buffer.y+e)}registerDecoration(e){return this._decorationService.registerDecoration(e)}hasSelection(){return this._selectionService?this._selectionService.hasSelection:!1}select(e,t,i){this._selectionService.setSelection(e,t,i)}getSelection(){return this._selectionService?this._selectionService.selectionText:""}getSelectionPosition(){if(!(!this._selectionService||!this._selectionService.hasSelection))return{start:{x:this._selectionService.selectionStart[0],y:this._selectionService.selectionStart[1]},end:{x:this._selectionService.selectionEnd[0],y:this._selectionService.selectionEnd[1]}}}clearSelection(){var e;(e=this._selectionService)==null||e.clearSelection()}selectAll(){var e;(e=this._selectionService)==null||e.selectAll()}selectLines(e,t){var i;(i=this._selectionService)==null||i.selectLines(e,t)}_keyDown(e){if(this._keyDownHandled=!1,this._keyDownSeen=!0,this._customKeyEventHandler&&this._customKeyEventHandler(e)===!1)return!1;let t=this.browser.isMac&&this.options.macOptionIsMeta&&e.altKey;if(!t&&!this._compositionHelper.keydown(e))return this.options.scrollOnUserInput&&this.buffer.ybase!==this.buffer.ydisp&&this.scrollToBottom(!0),!1;!t&&(e.key==="Dead"||e.key==="AltGraph")&&(this._unprocessedDeadKey=!0);let i=gv(e,this.coreService.decPrivateModes.applicationCursorKeys,this.browser.isMac,this.options.macOptionIsMeta);if(this.updateCursorStyle(e),i.type===3||i.type===2){let s=this.rows-1;return this.scrollLines(i.type===2?-s:s),this.cancel(e,!0)}if(i.type===1&&this.selectAll(),this._isThirdLevelShift(this.browser,e)||(i.cancel&&this.cancel(e,!0),!i.key)||e.key&&!e.ctrlKey&&!e.altKey&&!e.metaKey&&e.key.length===1&&e.key.charCodeAt(0)>=65&&e.key.charCodeAt(0)<=90)return!0;if(this._unprocessedDeadKey)return this._unprocessedDeadKey=!1,!0;if((i.key===q.ETX||i.key===q.CR)&&(this.textarea.value=""),this._onKey.fire({key:i.key,domEvent:e}),this._showCursor(),this.coreService.triggerDataEvent(i.key,!0),!this.optionsService.rawOptions.screenReaderMode||e.altKey||e.ctrlKey)return this.cancel(e,!0);this._keyDownHandled=!0}_isThirdLevelShift(e,t){let i=e.isMac&&!this.options.macOptionIsMeta&&t.altKey&&!t.ctrlKey&&!t.metaKey||e.isWindows&&t.altKey&&t.ctrlKey&&!t.metaKey||e.isWindows&&t.getModifierState("AltGraph");return t.type==="keypress"?i:i&&(!t.keyCode||t.keyCode>47)}_keyUp(e){this._keyDownSeen=!1,!(this._customKeyEventHandler&&this._customKeyEventHandler(e)===!1)&&(yv(e)||this.focus(),this.updateCursorStyle(e),this._keyPressHandled=!1)}_keyPress(e){let t;if(this._keyPressHandled=!1,this._keyDownHandled||this._customKeyEventHandler&&this._customKeyEventHandler(e)===!1)return!1;if(this.cancel(e),e.charCode)t=e.charCode;else if(e.which===null||e.which===void 0)t=e.keyCode;else if(e.which!==0&&e.charCode!==0)t=e.which;else return!1;return!t||(e.altKey||e.ctrlKey||e.metaKey)&&!this._isThirdLevelShift(this.browser,e)?!1:(t=String.fromCharCode(t),this._onKey.fire({key:t,domEvent:e}),this._showCursor(),this.coreService.triggerDataEvent(t,!0),this._keyPressHandled=!0,this._unprocessedDeadKey=!1,!0)}_inputEvent(e){if(e.data&&e.inputType==="insertText"&&(!e.composed||!this._keyDownSeen)&&!this.optionsService.rawOptions.screenReaderMode){if(this._keyPressHandled)return!1;this._unprocessedDeadKey=!1;let t=e.data;return this.coreService.triggerDataEvent(t,!0),this.cancel(e),!0}return!1}resize(e,t){if(e===this.cols&&t===this.rows){this._charSizeService&&!this._charSizeService.hasValidSize&&this._charSizeService.measure();return}super.resize(e,t)}_afterResize(e,t){var i;(i=this._charSizeService)==null||i.measure()}clear(){if(!(this.buffer.ybase===0&&this.buffer.y===0)){this.buffer.clearAllMarkers(),this.buffer.lines.set(0,this.buffer.lines.get(this.buffer.ybase+this.buffer.y)),this.buffer.lines.length=1,this.buffer.ydisp=0,this.buffer.ybase=0,this.buffer.y=0;for(let e=1;e=0;e--)this._addons[e].instance.dispose()}loadAddon(e,t){let i={instance:t,dispose:t.dispose,isDisposed:!1};this._addons.push(i),t.dispose=()=>this._wrappedAddonDispose(i),t.activate(e)}_wrappedAddonDispose(e){if(e.isDisposed)return;let t=-1;for(let i=0;i=this._line.length))return t?(this._line.loadCell(e,t),t):this._line.loadCell(e,new si)}translateToString(e,t,i){return this._line.translateToString(e,t,i)}},ml=class{constructor(e,t){this._buffer=e,this.type=t}init(e){return this._buffer=e,this}get cursorY(){return this._buffer.y}get cursorX(){return this._buffer.x}get viewportY(){return this._buffer.ydisp}get baseY(){return this._buffer.ybase}get length(){return this._buffer.lines.length}getLine(e){let t=this._buffer.lines.get(e);if(t)return new kv(t)}getNullCell(){return new si}},Ev=class extends Ie{constructor(e){super(),this._core=e,this._onBufferChange=this._register(new Y),this.onBufferChange=this._onBufferChange.event,this._normal=new ml(this._core.buffers.normal,"normal"),this._alternate=new ml(this._core.buffers.alt,"alternate"),this._core.buffers.onBufferActivate(()=>this._onBufferChange.fire(this.active))}get active(){if(this._core.buffers.active===this._core.buffers.normal)return this.normal;if(this._core.buffers.active===this._core.buffers.alt)return this.alternate;throw new Error("Active buffer is neither normal nor alternate")}get normal(){return this._normal.init(this._core.buffers.normal)}get alternate(){return this._alternate.init(this._core.buffers.alt)}},Bv=class{constructor(e){this._core=e}registerCsiHandler(e,t){return this._core.registerCsiHandler(e,i=>t(i.toArray()))}addCsiHandler(e,t){return this.registerCsiHandler(e,t)}registerDcsHandler(e,t){return this._core.registerDcsHandler(e,(i,s)=>t(i,s.toArray()))}addDcsHandler(e,t){return this.registerDcsHandler(e,t)}registerEscHandler(e,t){return this._core.registerEscHandler(e,t)}addEscHandler(e,t){return this.registerEscHandler(e,t)}registerOscHandler(e,t){return this._core.registerOscHandler(e,t)}addOscHandler(e,t){return this.registerOscHandler(e,t)}},Iv=class{constructor(e){this._core=e}register(e){this._core.unicodeService.register(e)}get versions(){return this._core.unicodeService.versions}get activeVersion(){return this._core.unicodeService.activeVersion}set activeVersion(e){this._core.unicodeService.activeVersion=e}},Dv=["cols","rows"],ci=0,Mv=class extends Ie{constructor(e){super(),this._core=this._register(new bv(e)),this._addonManager=this._register(new xv),this._publicOptions={...this._core.options};let t=s=>this._core.options[s],i=(s,r)=>{this._checkReadonlyOptions(s),this._core.options[s]=r};for(let s in this._core.options){let r={get:t.bind(this,s),set:i.bind(this,s)};Object.defineProperty(this._publicOptions,s,r)}}_checkReadonlyOptions(e){if(Dv.includes(e))throw new Error(`Option "${e}" can only be set in the constructor`)}_checkProposedApi(){if(!this._core.optionsService.rawOptions.allowProposedApi)throw new Error("You must set the allowProposedApi option to true to use proposed API")}get onBell(){return this._core.onBell}get onBinary(){return this._core.onBinary}get onCursorMove(){return this._core.onCursorMove}get onData(){return this._core.onData}get onKey(){return this._core.onKey}get onLineFeed(){return this._core.onLineFeed}get onRender(){return this._core.onRender}get onResize(){return this._core.onResize}get onScroll(){return this._core.onScroll}get onSelectionChange(){return this._core.onSelectionChange}get onTitleChange(){return this._core.onTitleChange}get onWriteParsed(){return this._core.onWriteParsed}get element(){return this._core.element}get parser(){return this._parser||(this._parser=new Bv(this._core)),this._parser}get unicode(){return this._checkProposedApi(),new Iv(this._core)}get textarea(){return this._core.textarea}get rows(){return this._core.rows}get cols(){return this._core.cols}get buffer(){return this._buffer||(this._buffer=this._register(new Ev(this._core))),this._buffer}get markers(){return this._checkProposedApi(),this._core.markers}get modes(){let e=this._core.coreService.decPrivateModes,t="none";switch(this._core.coreMouseService.activeProtocol){case"X10":t="x10";break;case"VT200":t="vt200";break;case"DRAG":t="drag";break;case"ANY":t="any";break}return{applicationCursorKeysMode:e.applicationCursorKeys,applicationKeypadMode:e.applicationKeypad,bracketedPasteMode:e.bracketedPasteMode,insertMode:this._core.coreService.modes.insertMode,mouseTrackingMode:t,originMode:e.origin,reverseWraparoundMode:e.reverseWraparound,sendFocusMode:e.sendFocus,synchronizedOutputMode:e.synchronizedOutput,wraparoundMode:e.wraparound}}get options(){return this._publicOptions}set options(e){for(let t in e)this._publicOptions[t]=e[t]}blur(){this._core.blur()}focus(){this._core.focus()}input(e,t=!0){this._core.input(e,t)}resize(e,t){this._verifyIntegers(e,t),this._core.resize(e,t)}open(e){this._core.open(e)}attachCustomKeyEventHandler(e){this._core.attachCustomKeyEventHandler(e)}attachCustomWheelEventHandler(e){this._core.attachCustomWheelEventHandler(e)}registerLinkProvider(e){return this._core.registerLinkProvider(e)}registerCharacterJoiner(e){return this._checkProposedApi(),this._core.registerCharacterJoiner(e)}deregisterCharacterJoiner(e){this._checkProposedApi(),this._core.deregisterCharacterJoiner(e)}registerMarker(e=0){return this._verifyIntegers(e),this._core.registerMarker(e)}registerDecoration(e){return this._checkProposedApi(),this._verifyPositiveIntegers(e.x??0,e.width??0,e.height??0),this._core.registerDecoration(e)}hasSelection(){return this._core.hasSelection()}select(e,t,i){this._verifyIntegers(e,t,i),this._core.select(e,t,i)}getSelection(){return this._core.getSelection()}getSelectionPosition(){return this._core.getSelectionPosition()}clearSelection(){this._core.clearSelection()}selectAll(){this._core.selectAll()}selectLines(e,t){this._verifyIntegers(e,t),this._core.selectLines(e,t)}dispose(){super.dispose()}scrollLines(e){this._verifyIntegers(e),this._core.scrollLines(e)}scrollPages(e){this._verifyIntegers(e),this._core.scrollPages(e)}scrollToTop(){this._core.scrollToTop()}scrollToBottom(){this._core.scrollToBottom()}scrollToLine(e){this._verifyIntegers(e),this._core.scrollToLine(e)}clear(){this._core.clear()}write(e,t){this._core.write(e,t)}writeln(e,t){this._core.write(e),this._core.write(`\r -`,t)}paste(e){this._core.paste(e)}refresh(e,t){this._verifyIntegers(e,t),this._core.refresh(e,t)}reset(){this._core.reset()}clearTextureAtlas(){this._core.clearTextureAtlas()}loadAddon(e){this._addonManager.loadAddon(this,e)}static get strings(){return{get promptLabel(){return Zn.get()},set promptLabel(e){Zn.set(e)},get tooMuchOutput(){return eo.get()},set tooMuchOutput(e){eo.set(e)}}}_verifyIntegers(...e){for(ci of e)if(ci===1/0||isNaN(ci)||ci%1!==0)throw new Error("This API only accepts integers")}_verifyPositiveIntegers(...e){for(ci of e)if(ci&&(ci===1/0||isNaN(ci)||ci%1!==0||ci<0))throw new Error("This API only accepts positive integers")}},On={exports:{}},Al;function Lv(){return Al||(Al=1,(function(e,t){(function(i,s){e.exports=s()})(self,(()=>(()=>{var i={903:(a,o,h)=>{Object.defineProperty(o,"__esModule",{value:!0}),o.BaseRenderLayer=void 0;const l=h(274),c=h(627),d=h(237),g=h(860),_=h(374),v=h(296),u=h(345),f=h(859),A=h(399),k=h(855);class b extends f.Disposable{get canvas(){return this._canvas}get cacheCanvas(){var m;return(m=this._charAtlas)==null?void 0:m.pages[0].canvas}constructor(m,C,E,S,D,M,x,B,T,Q){super(),this._terminal=m,this._container=C,this._alpha=D,this._themeService=M,this._bufferService=x,this._optionsService=B,this._decorationService=T,this._coreBrowserService=Q,this._deviceCharWidth=0,this._deviceCharHeight=0,this._deviceCellWidth=0,this._deviceCellHeight=0,this._deviceCharLeft=0,this._deviceCharTop=0,this._selectionModel=(0,v.createSelectionRenderModel)(),this._bitmapGenerator=[],this._charAtlasDisposable=this.register(new f.MutableDisposable),this._onAddTextureAtlasCanvas=this.register(new u.EventEmitter),this.onAddTextureAtlasCanvas=this._onAddTextureAtlasCanvas.event,this._cellColorResolver=new l.CellColorResolver(this._terminal,this._optionsService,this._selectionModel,this._decorationService,this._coreBrowserService,this._themeService),this._canvas=this._coreBrowserService.mainDocument.createElement("canvas"),this._canvas.classList.add(`xterm-${E}-layer`),this._canvas.style.zIndex=S.toString(),this._initCanvas(),this._container.appendChild(this._canvas),this._refreshCharAtlas(this._themeService.colors),this.register(this._themeService.onChangeColors((O=>{this._refreshCharAtlas(O),this.reset(),this.handleSelectionChanged(this._selectionModel.selectionStart,this._selectionModel.selectionEnd,this._selectionModel.columnSelectMode)}))),this.register((0,f.toDisposable)((()=>{this._canvas.remove()})))}_initCanvas(){this._ctx=(0,_.throwIfFalsy)(this._canvas.getContext("2d",{alpha:this._alpha})),this._alpha||this._clearAll()}handleBlur(){}handleFocus(){}handleCursorMove(){}handleGridChanged(m,C){}handleSelectionChanged(m,C,E=!1){this._selectionModel.update(this._terminal._core,m,C,E)}_setTransparency(m){if(m===this._alpha)return;const C=this._canvas;this._alpha=m,this._canvas=this._canvas.cloneNode(),this._initCanvas(),this._container.replaceChild(this._canvas,C),this._refreshCharAtlas(this._themeService.colors),this.handleGridChanged(0,this._bufferService.rows-1)}_refreshCharAtlas(m){if(!(this._deviceCharWidth<=0&&this._deviceCharHeight<=0)){this._charAtlas=(0,c.acquireTextureAtlas)(this._terminal,this._optionsService.rawOptions,m,this._deviceCellWidth,this._deviceCellHeight,this._deviceCharWidth,this._deviceCharHeight,this._coreBrowserService.dpr),this._charAtlasDisposable.value=(0,u.forwardEvent)(this._charAtlas.onAddTextureAtlasCanvas,this._onAddTextureAtlasCanvas),this._charAtlas.warmUp();for(let C=0;C1?this._charAtlas.getRasterizedGlyphCombinedChar(S,this._cellColorResolver.result.bg,this._cellColorResolver.result.fg,this._cellColorResolver.result.ext,!0):this._charAtlas.getRasterizedGlyph(m.getCode()||k.WHITESPACE_CELL_CODE,this._cellColorResolver.result.bg,this._cellColorResolver.result.fg,this._cellColorResolver.result.ext,!0),!x.size.x||!x.size.y)return;this._ctx.save(),this._clipRow(E),this._bitmapGenerator[x.texturePage]&&this._charAtlas.pages[x.texturePage].canvas!==this._bitmapGenerator[x.texturePage].canvas&&((Q=(T=this._bitmapGenerator[x.texturePage])==null?void 0:T.bitmap)==null||Q.close(),delete this._bitmapGenerator[x.texturePage]),this._charAtlas.pages[x.texturePage].version!==((O=this._bitmapGenerator[x.texturePage])==null?void 0:O.version)&&(this._bitmapGenerator[x.texturePage]||(this._bitmapGenerator[x.texturePage]=new w(this._charAtlas.pages[x.texturePage].canvas)),this._bitmapGenerator[x.texturePage].refresh(),this._bitmapGenerator[x.texturePage].version=this._charAtlas.pages[x.texturePage].version);let B=x.size.x;this._optionsService.rawOptions.rescaleOverlappingGlyphs&&(0,_.allowRescaling)(D,M,x.size.x,this._deviceCellWidth)&&(B=this._deviceCellWidth-1),this._ctx.drawImage(((L=this._bitmapGenerator[x.texturePage])==null?void 0:L.bitmap)||this._charAtlas.pages[x.texturePage].canvas,x.texturePosition.x,x.texturePosition.y,x.size.x,x.size.y,C*this._deviceCellWidth+this._deviceCharLeft-x.offset.x,E*this._deviceCellHeight+this._deviceCharTop-x.offset.y,B,x.size.y),this._ctx.restore()}_clipRow(m){this._ctx.beginPath(),this._ctx.rect(0,m*this._deviceCellHeight,this._bufferService.cols*this._deviceCellWidth,this._deviceCellHeight),this._ctx.clip()}_getFont(m,C){return`${C?"italic":""} ${m?this._optionsService.rawOptions.fontWeightBold:this._optionsService.rawOptions.fontWeight} ${this._optionsService.rawOptions.fontSize*this._coreBrowserService.dpr}px ${this._optionsService.rawOptions.fontFamily}`}}o.BaseRenderLayer=b;class w{get bitmap(){return this._bitmap}constructor(m){this.canvas=m,this._state=0,this._commitTimeout=void 0,this._bitmap=void 0,this.version=-1}refresh(){var m;(m=this._bitmap)==null||m.close(),this._bitmap=void 0,A.isSafari||(this._commitTimeout===void 0&&(this._commitTimeout=window.setTimeout((()=>this._generate()),100)),this._state===1&&(this._state=2))}_generate(){var m;this._state===0&&((m=this._bitmap)==null||m.close(),this._bitmap=void 0,this._state=1,window.createImageBitmap(this.canvas).then((C=>{this._state===2?this.refresh():this._bitmap=C,this._state=0})),this._commitTimeout&&(this._commitTimeout=void 0))}}},949:(a,o,h)=>{Object.defineProperty(o,"__esModule",{value:!0}),o.CanvasRenderer=void 0;const l=h(627),c=h(56),d=h(374),g=h(345),_=h(859),v=h(873),u=h(43),f=h(630),A=h(744);class k extends _.Disposable{constructor(w,y,m,C,E,S,D,M,x,B,T){super(),this._terminal=w,this._screenElement=y,this._bufferService=C,this._charSizeService=E,this._optionsService=S,this._coreBrowserService=x,this._themeService=T,this._observerDisposable=this.register(new _.MutableDisposable),this._onRequestRedraw=this.register(new g.EventEmitter),this.onRequestRedraw=this._onRequestRedraw.event,this._onChangeTextureAtlas=this.register(new g.EventEmitter),this.onChangeTextureAtlas=this._onChangeTextureAtlas.event,this._onAddTextureAtlasCanvas=this.register(new g.EventEmitter),this.onAddTextureAtlasCanvas=this._onAddTextureAtlasCanvas.event;const Q=this._optionsService.rawOptions.allowTransparency;this._renderLayers=[new A.TextRenderLayer(this._terminal,this._screenElement,0,Q,this._bufferService,this._optionsService,D,B,this._coreBrowserService,T),new f.SelectionRenderLayer(this._terminal,this._screenElement,1,this._bufferService,this._coreBrowserService,B,this._optionsService,T),new u.LinkRenderLayer(this._terminal,this._screenElement,2,m,this._bufferService,this._optionsService,B,this._coreBrowserService,T),new v.CursorRenderLayer(this._terminal,this._screenElement,3,this._onRequestRedraw,this._bufferService,this._optionsService,M,this._coreBrowserService,B,T)];for(const O of this._renderLayers)(0,g.forwardEvent)(O.onAddTextureAtlasCanvas,this._onAddTextureAtlasCanvas);this.dimensions=(0,d.createRenderDimensions)(),this._devicePixelRatio=this._coreBrowserService.dpr,this._updateDimensions(),this._observerDisposable.value=(0,c.observeDevicePixelDimensions)(this._renderLayers[0].canvas,this._coreBrowserService.window,((O,L)=>this._setCanvasDevicePixelDimensions(O,L))),this.register(this._coreBrowserService.onWindowChange((O=>{this._observerDisposable.value=(0,c.observeDevicePixelDimensions)(this._renderLayers[0].canvas,O,((L,I)=>this._setCanvasDevicePixelDimensions(L,I)))}))),this.register((0,_.toDisposable)((()=>{for(const O of this._renderLayers)O.dispose();(0,l.removeTerminalFromCache)(this._terminal)})))}get textureAtlas(){return this._renderLayers[0].cacheCanvas}handleDevicePixelRatioChange(){this._devicePixelRatio!==this._coreBrowserService.dpr&&(this._devicePixelRatio=this._coreBrowserService.dpr,this.handleResize(this._bufferService.cols,this._bufferService.rows))}handleResize(w,y){this._updateDimensions();for(const m of this._renderLayers)m.resize(this.dimensions);this._screenElement.style.width=`${this.dimensions.css.canvas.width}px`,this._screenElement.style.height=`${this.dimensions.css.canvas.height}px`}handleCharSizeChanged(){this.handleResize(this._bufferService.cols,this._bufferService.rows)}handleBlur(){this._runOperation((w=>w.handleBlur()))}handleFocus(){this._runOperation((w=>w.handleFocus()))}handleSelectionChanged(w,y,m=!1){this._runOperation((C=>C.handleSelectionChanged(w,y,m))),this._themeService.colors.selectionForeground&&this._onRequestRedraw.fire({start:0,end:this._bufferService.rows-1})}handleCursorMove(){this._runOperation((w=>w.handleCursorMove()))}clear(){this._runOperation((w=>w.reset()))}_runOperation(w){for(const y of this._renderLayers)w(y)}renderRows(w,y){for(const m of this._renderLayers)m.handleGridChanged(w,y)}clearTextureAtlas(){for(const w of this._renderLayers)w.clearTextureAtlas()}_updateDimensions(){if(!this._charSizeService.hasValidSize)return;const w=this._coreBrowserService.dpr;this.dimensions.device.char.width=Math.floor(this._charSizeService.width*w),this.dimensions.device.char.height=Math.ceil(this._charSizeService.height*w),this.dimensions.device.cell.height=Math.floor(this.dimensions.device.char.height*this._optionsService.rawOptions.lineHeight),this.dimensions.device.char.top=this._optionsService.rawOptions.lineHeight===1?0:Math.round((this.dimensions.device.cell.height-this.dimensions.device.char.height)/2),this.dimensions.device.cell.width=this.dimensions.device.char.width+Math.round(this._optionsService.rawOptions.letterSpacing),this.dimensions.device.char.left=Math.floor(this._optionsService.rawOptions.letterSpacing/2),this.dimensions.device.canvas.height=this._bufferService.rows*this.dimensions.device.cell.height,this.dimensions.device.canvas.width=this._bufferService.cols*this.dimensions.device.cell.width,this.dimensions.css.canvas.height=Math.round(this.dimensions.device.canvas.height/w),this.dimensions.css.canvas.width=Math.round(this.dimensions.device.canvas.width/w),this.dimensions.css.cell.height=this.dimensions.css.canvas.height/this._bufferService.rows,this.dimensions.css.cell.width=this.dimensions.css.canvas.width/this._bufferService.cols}_setCanvasDevicePixelDimensions(w,y){this.dimensions.device.canvas.height=y,this.dimensions.device.canvas.width=w;for(const m of this._renderLayers)m.resize(this.dimensions);this._requestRedrawViewport()}_requestRedrawViewport(){this._onRequestRedraw.fire({start:0,end:this._bufferService.rows-1})}}o.CanvasRenderer=k},873:(a,o,h)=>{Object.defineProperty(o,"__esModule",{value:!0}),o.CursorRenderLayer=void 0;const l=h(457),c=h(859),d=h(399),g=h(782),_=h(903);class v extends _.BaseRenderLayer{constructor(f,A,k,b,w,y,m,C,E,S){super(f,A,"cursor",k,!0,S,w,y,E,C),this._onRequestRedraw=b,this._coreService=m,this._cursorBlinkStateManager=this.register(new c.MutableDisposable),this._cell=new g.CellData,this._state={x:0,y:0,isFocused:!1,style:"",width:0},this._cursorRenderers={bar:this._renderBarCursor.bind(this),block:this._renderBlockCursor.bind(this),underline:this._renderUnderlineCursor.bind(this),outline:this._renderOutlineCursor.bind(this)},this.register(y.onOptionChange((()=>this._handleOptionsChanged()))),this._handleOptionsChanged()}resize(f){super.resize(f),this._state={x:0,y:0,isFocused:!1,style:"",width:0}}reset(){var f;this._clearCursor(),(f=this._cursorBlinkStateManager.value)==null||f.restartBlinkAnimation(),this._handleOptionsChanged()}handleBlur(){var f;(f=this._cursorBlinkStateManager.value)==null||f.pause(),this._onRequestRedraw.fire({start:this._bufferService.buffer.y,end:this._bufferService.buffer.y})}handleFocus(){var f;(f=this._cursorBlinkStateManager.value)==null||f.resume(),this._onRequestRedraw.fire({start:this._bufferService.buffer.y,end:this._bufferService.buffer.y})}_handleOptionsChanged(){this._optionsService.rawOptions.cursorBlink?this._cursorBlinkStateManager.value||(this._cursorBlinkStateManager.value=new l.CursorBlinkStateManager((()=>this._render(!0)),this._coreBrowserService)):this._cursorBlinkStateManager.clear(),this._onRequestRedraw.fire({start:this._bufferService.buffer.y,end:this._bufferService.buffer.y})}handleCursorMove(){var f;(f=this._cursorBlinkStateManager.value)==null||f.restartBlinkAnimation()}handleGridChanged(f,A){!this._cursorBlinkStateManager.value||this._cursorBlinkStateManager.value.isPaused?this._render(!1):this._cursorBlinkStateManager.value.restartBlinkAnimation()}_render(f){if(!this._coreService.isCursorInitialized||this._coreService.isCursorHidden)return void this._clearCursor();const A=this._bufferService.buffer.ybase+this._bufferService.buffer.y,k=A-this._bufferService.buffer.ydisp;if(k<0||k>=this._bufferService.rows)return void this._clearCursor();const b=Math.min(this._bufferService.buffer.x,this._bufferService.cols-1);if(this._bufferService.buffer.lines.get(A).loadCell(b,this._cell),this._cell.content!==void 0){if(!this._coreBrowserService.isFocused){this._clearCursor(),this._ctx.save(),this._ctx.fillStyle=this._themeService.colors.cursor.css;const w=this._optionsService.rawOptions.cursorStyle,y=this._optionsService.rawOptions.cursorInactiveStyle;return y&&y!=="none"&&this._cursorRenderers[y](b,k,this._cell),this._ctx.restore(),this._state.x=b,this._state.y=k,this._state.isFocused=!1,this._state.style=w,void(this._state.width=this._cell.getWidth())}if(!this._cursorBlinkStateManager.value||this._cursorBlinkStateManager.value.isCursorVisible){if(this._state){if(this._state.x===b&&this._state.y===k&&this._state.isFocused===this._coreBrowserService.isFocused&&this._state.style===this._optionsService.rawOptions.cursorStyle&&this._state.width===this._cell.getWidth())return;this._clearCursor()}this._ctx.save(),this._cursorRenderers[this._optionsService.rawOptions.cursorStyle||"block"](b,k,this._cell),this._ctx.restore(),this._state.x=b,this._state.y=k,this._state.isFocused=!1,this._state.style=this._optionsService.rawOptions.cursorStyle,this._state.width=this._cell.getWidth()}else this._clearCursor()}}_clearCursor(){this._state&&(d.isFirefox||this._coreBrowserService.dpr<1?this._clearAll():this._clearCells(this._state.x,this._state.y,this._state.width,1),this._state={x:0,y:0,isFocused:!1,style:"",width:0})}_renderBarCursor(f,A,k){this._ctx.save(),this._ctx.fillStyle=this._themeService.colors.cursor.css,this._fillLeftLineAtCell(f,A,this._optionsService.rawOptions.cursorWidth),this._ctx.restore()}_renderBlockCursor(f,A,k){this._ctx.save(),this._ctx.fillStyle=this._themeService.colors.cursor.css,this._fillCells(f,A,k.getWidth(),1),this._ctx.fillStyle=this._themeService.colors.cursorAccent.css,this._fillCharTrueColor(k,f,A),this._ctx.restore()}_renderUnderlineCursor(f,A,k){this._ctx.save(),this._ctx.fillStyle=this._themeService.colors.cursor.css,this._fillBottomLineAtCells(f,A),this._ctx.restore()}_renderOutlineCursor(f,A,k){this._ctx.save(),this._ctx.strokeStyle=this._themeService.colors.cursor.css,this._strokeRectAtCell(f,A,k.getWidth(),1),this._ctx.restore()}}o.CursorRenderLayer=v},574:(a,o)=>{Object.defineProperty(o,"__esModule",{value:!0}),o.GridCache=void 0,o.GridCache=class{constructor(){this.cache=[]}resize(h,l){for(let c=0;c{Object.defineProperty(o,"__esModule",{value:!0}),o.LinkRenderLayer=void 0;const l=h(197),c=h(237),d=h(903);class g extends d.BaseRenderLayer{constructor(v,u,f,A,k,b,w,y,m){super(v,u,"link",f,!0,m,k,b,w,y),this.register(A.onShowLinkUnderline((C=>this._handleShowLinkUnderline(C)))),this.register(A.onHideLinkUnderline((C=>this._handleHideLinkUnderline(C))))}resize(v){super.resize(v),this._state=void 0}reset(){this._clearCurrentLink()}_clearCurrentLink(){if(this._state){this._clearCells(this._state.x1,this._state.y1,this._state.cols-this._state.x1,1);const v=this._state.y2-this._state.y1-1;v>0&&this._clearCells(0,this._state.y1+1,this._state.cols,v),this._clearCells(0,this._state.y2,this._state.x2,1),this._state=void 0}}_handleShowLinkUnderline(v){if(v.fg===c.INVERTED_DEFAULT_COLOR?this._ctx.fillStyle=this._themeService.colors.background.css:v.fg&&(0,l.is256Color)(v.fg)?this._ctx.fillStyle=this._themeService.colors.ansi[v.fg].css:this._ctx.fillStyle=this._themeService.colors.foreground.css,v.y1===v.y2)this._fillBottomLineAtCells(v.x1,v.y1,v.x2-v.x1);else{this._fillBottomLineAtCells(v.x1,v.y1,v.cols-v.x1);for(let u=v.y1+1;u{Object.defineProperty(o,"__esModule",{value:!0}),o.SelectionRenderLayer=void 0;const l=h(903);class c extends l.BaseRenderLayer{constructor(g,_,v,u,f,A,k,b){super(g,_,"selection",v,!0,b,u,k,A,f),this._clearState()}_clearState(){this._state={start:void 0,end:void 0,columnSelectMode:void 0,ydisp:void 0}}resize(g){super.resize(g),this._selectionModel.selectionStart&&this._selectionModel.selectionEnd&&(this._clearState(),this._redrawSelection(this._selectionModel.selectionStart,this._selectionModel.selectionEnd,this._selectionModel.columnSelectMode))}reset(){this._state.start&&this._state.end&&(this._clearState(),this._clearAll())}handleBlur(){this.reset(),this._redrawSelection(this._selectionModel.selectionStart,this._selectionModel.selectionEnd,this._selectionModel.columnSelectMode)}handleFocus(){this.reset(),this._redrawSelection(this._selectionModel.selectionStart,this._selectionModel.selectionEnd,this._selectionModel.columnSelectMode)}handleSelectionChanged(g,_,v){super.handleSelectionChanged(g,_,v),this._redrawSelection(g,_,v)}_redrawSelection(g,_,v){if(!this._didStateChange(g,_,v,this._bufferService.buffer.ydisp))return;if(this._clearAll(),!g||!_)return void this._clearState();const u=g[1]-this._bufferService.buffer.ydisp,f=_[1]-this._bufferService.buffer.ydisp,A=Math.max(u,0),k=Math.min(f,this._bufferService.rows-1);if(A>=this._bufferService.rows||k<0)this._state.ydisp=this._bufferService.buffer.ydisp;else{if(this._ctx.fillStyle=(this._coreBrowserService.isFocused?this._themeService.colors.selectionBackgroundTransparent:this._themeService.colors.selectionInactiveBackgroundTransparent).css,v){const b=g[0],w=_[0]-b,y=k-A+1;this._fillCells(b,A,w,y)}else{const b=u===A?g[0]:0,w=A===f?_[0]:this._bufferService.cols;this._fillCells(b,A,w-b,1);const y=Math.max(k-A-1,0);if(this._fillCells(0,A+1,this._bufferService.cols,y),A!==k){const m=f===k?_[0]:this._bufferService.cols;this._fillCells(0,k,m,1)}}this._state.start=[g[0],g[1]],this._state.end=[_[0],_[1]],this._state.columnSelectMode=v,this._state.ydisp=this._bufferService.buffer.ydisp}}_didStateChange(g,_,v,u){return!this._areCoordinatesEqual(g,this._state.start)||!this._areCoordinatesEqual(_,this._state.end)||v!==this._state.columnSelectMode||u!==this._state.ydisp}_areCoordinatesEqual(g,_){return!(!g||!_)&&g[0]===_[0]&&g[1]===_[1]}}o.SelectionRenderLayer=c},744:(a,o,h)=>{Object.defineProperty(o,"__esModule",{value:!0}),o.TextRenderLayer=void 0;const l=h(577),c=h(147),d=h(782),g=h(855),_=h(903),v=h(574);class u extends _.BaseRenderLayer{constructor(A,k,b,w,y,m,C,E,S,D){super(A,k,"text",b,w,D,y,m,E,S),this._characterJoinerService=C,this._characterWidth=0,this._characterFont="",this._characterOverlapCache={},this._workCell=new d.CellData,this._state=new v.GridCache,this.register(m.onSpecificOptionChange("allowTransparency",(M=>this._setTransparency(M))))}resize(A){super.resize(A);const k=this._getFont(!1,!1);this._characterWidth===A.device.char.width&&this._characterFont===k||(this._characterWidth=A.device.char.width,this._characterFont=k,this._characterOverlapCache={}),this._state.clear(),this._state.resize(this._bufferService.cols,this._bufferService.rows)}reset(){this._state.clear(),this._clearAll()}_forEachCell(A,k,b){for(let w=A;w<=k;w++){const y=w+this._bufferService.buffer.ydisp,m=this._bufferService.buffer.lines.get(y),C=this._characterJoinerService.getJoinedCharacters(y);for(let E=0;E0&&E===C[0][0]){D=!0;const x=C.shift();S=new l.JoinedCellData(this._workCell,m.translateToString(!0,x[0],x[1]),x[1]-x[0]),M=x[1]-1}!D&&this._isOverlapping(S)&&M{let M=null;E.isInverse()?M=E.isFgDefault()?this._themeService.colors.foreground.css:E.isFgRGB()?`rgb(${c.AttributeData.toColorRGB(E.getFgColor()).join(",")})`:this._themeService.colors.ansi[E.getFgColor()].css:E.isBgRGB()?M=`rgb(${c.AttributeData.toColorRGB(E.getBgColor()).join(",")})`:E.isBgPalette()&&(M=this._themeService.colors.ansi[E.getBgColor()].css);let x=!1;this._decorationService.forEachDecorationAtCell(S,this._bufferService.buffer.ydisp+D,void 0,(B=>{B.options.layer!=="top"&&x||(B.backgroundColorRGB&&(M=B.backgroundColorRGB.css),x=B.options.layer==="top")})),C===null&&(y=S,m=D),D!==m?(b.fillStyle=C||"",this._fillCells(y,m,w-y,1),y=S,m=D):C!==M&&(b.fillStyle=C||"",this._fillCells(y,m,S-y,1),y=S,m=D),C=M})),C!==null&&(b.fillStyle=C,this._fillCells(y,m,w-y,1)),b.restore()}_drawForeground(A,k){this._forEachCell(A,k,((b,w,y)=>this._drawChars(b,w,y)))}handleGridChanged(A,k){this._state.cache.length!==0&&(this._charAtlas&&this._charAtlas.beginFrame(),this._clearCells(0,A,this._bufferService.cols,k-A+1),this._drawBackground(A,k),this._drawForeground(A,k))}_isOverlapping(A){if(A.getWidth()!==1||A.getCode()<256)return!1;const k=A.getChars();if(this._characterOverlapCache.hasOwnProperty(k))return this._characterOverlapCache[k];this._ctx.save(),this._ctx.font=this._characterFont;const b=Math.floor(this._ctx.measureText(k).width)>this._characterWidth;return this._ctx.restore(),this._characterOverlapCache[k]=b,b}}o.TextRenderLayer=u},274:(a,o,h)=>{Object.defineProperty(o,"__esModule",{value:!0}),o.CellColorResolver=void 0;const l=h(855),c=h(160),d=h(374);let g,_=0,v=0,u=!1,f=!1,A=!1,k=0;o.CellColorResolver=class{constructor(b,w,y,m,C,E){this._terminal=b,this._optionService=w,this._selectionRenderModel=y,this._decorationService=m,this._coreBrowserService=C,this._themeService=E,this.result={fg:0,bg:0,ext:0}}resolve(b,w,y,m){if(this.result.bg=b.bg,this.result.fg=b.fg,this.result.ext=268435456&b.bg?b.extended.ext:0,v=0,_=0,f=!1,u=!1,A=!1,g=this._themeService.colors,k=0,b.getCode()!==l.NULL_CELL_CODE&&b.extended.underlineStyle===4){const C=Math.max(1,Math.floor(this._optionService.rawOptions.fontSize*this._coreBrowserService.dpr/15));k=w*m%(2*Math.round(C))}if(this._decorationService.forEachDecorationAtCell(w,y,"bottom",(C=>{C.backgroundColorRGB&&(v=C.backgroundColorRGB.rgba>>8&16777215,f=!0),C.foregroundColorRGB&&(_=C.foregroundColorRGB.rgba>>8&16777215,u=!0)})),A=this._selectionRenderModel.isCellSelected(this._terminal,w,y),A){if(67108864&this.result.fg||(50331648&this.result.bg)!=0){if(67108864&this.result.fg)switch(50331648&this.result.fg){case 16777216:case 33554432:v=this._themeService.colors.ansi[255&this.result.fg].rgba;break;case 50331648:v=(16777215&this.result.fg)<<8|255;break;default:v=this._themeService.colors.foreground.rgba}else switch(50331648&this.result.bg){case 16777216:case 33554432:v=this._themeService.colors.ansi[255&this.result.bg].rgba;break;case 50331648:v=(16777215&this.result.bg)<<8|255}v=c.rgba.blend(v,4294967040&(this._coreBrowserService.isFocused?g.selectionBackgroundOpaque:g.selectionInactiveBackgroundOpaque).rgba|128)>>8&16777215}else v=(this._coreBrowserService.isFocused?g.selectionBackgroundOpaque:g.selectionInactiveBackgroundOpaque).rgba>>8&16777215;if(f=!0,g.selectionForeground&&(_=g.selectionForeground.rgba>>8&16777215,u=!0),(0,d.treatGlyphAsBackgroundColor)(b.getCode())){if(67108864&this.result.fg&&(50331648&this.result.bg)==0)_=(this._coreBrowserService.isFocused?g.selectionBackgroundOpaque:g.selectionInactiveBackgroundOpaque).rgba>>8&16777215;else{if(67108864&this.result.fg)switch(50331648&this.result.bg){case 16777216:case 33554432:_=this._themeService.colors.ansi[255&this.result.bg].rgba;break;case 50331648:_=(16777215&this.result.bg)<<8|255}else switch(50331648&this.result.fg){case 16777216:case 33554432:_=this._themeService.colors.ansi[255&this.result.fg].rgba;break;case 50331648:_=(16777215&this.result.fg)<<8|255;break;default:_=this._themeService.colors.foreground.rgba}_=c.rgba.blend(_,4294967040&(this._coreBrowserService.isFocused?g.selectionBackgroundOpaque:g.selectionInactiveBackgroundOpaque).rgba|128)>>8&16777215}u=!0}}this._decorationService.forEachDecorationAtCell(w,y,"top",(C=>{C.backgroundColorRGB&&(v=C.backgroundColorRGB.rgba>>8&16777215,f=!0),C.foregroundColorRGB&&(_=C.foregroundColorRGB.rgba>>8&16777215,u=!0)})),f&&(v=A?-16777216&b.bg&-134217729|v|50331648:-16777216&b.bg|v|50331648),u&&(_=-16777216&b.fg&-67108865|_|50331648),67108864&this.result.fg&&(f&&!u&&(_=(50331648&this.result.bg)==0?-134217728&this.result.fg|16777215&g.background.rgba>>8|50331648:-134217728&this.result.fg|67108863&this.result.bg,u=!0),!f&&u&&(v=(50331648&this.result.fg)==0?-67108864&this.result.bg|16777215&g.foreground.rgba>>8|50331648:-67108864&this.result.bg|67108863&this.result.fg,f=!0)),g=void 0,this.result.bg=f?v:this.result.bg,this.result.fg=u?_:this.result.fg,this.result.ext&=536870911,this.result.ext|=k<<29&3758096384}}},627:(a,o,h)=>{Object.defineProperty(o,"__esModule",{value:!0}),o.removeTerminalFromCache=o.acquireTextureAtlas=void 0;const l=h(509),c=h(197),d=[];o.acquireTextureAtlas=function(g,_,v,u,f,A,k,b){const w=(0,c.generateConfig)(u,f,A,k,_,v,b);for(let C=0;C=0){if((0,c.configEquals)(E.config,w))return E.atlas;E.ownedBy.length===1?(E.atlas.dispose(),d.splice(C,1)):E.ownedBy.splice(S,1);break}}for(let C=0;C{Object.defineProperty(o,"__esModule",{value:!0}),o.is256Color=o.configEquals=o.generateConfig=void 0;const l=h(160);o.generateConfig=function(c,d,g,_,v,u,f){const A={foreground:u.foreground,background:u.background,cursor:l.NULL_COLOR,cursorAccent:l.NULL_COLOR,selectionForeground:l.NULL_COLOR,selectionBackgroundTransparent:l.NULL_COLOR,selectionBackgroundOpaque:l.NULL_COLOR,selectionInactiveBackgroundTransparent:l.NULL_COLOR,selectionInactiveBackgroundOpaque:l.NULL_COLOR,ansi:u.ansi.slice(),contrastCache:u.contrastCache,halfContrastCache:u.halfContrastCache};return{customGlyphs:v.customGlyphs,devicePixelRatio:f,letterSpacing:v.letterSpacing,lineHeight:v.lineHeight,deviceCellWidth:c,deviceCellHeight:d,deviceCharWidth:g,deviceCharHeight:_,fontFamily:v.fontFamily,fontSize:v.fontSize,fontWeight:v.fontWeight,fontWeightBold:v.fontWeightBold,allowTransparency:v.allowTransparency,drawBoldTextInBrightColors:v.drawBoldTextInBrightColors,minimumContrastRatio:v.minimumContrastRatio,colors:A}},o.configEquals=function(c,d){for(let g=0;g{Object.defineProperty(o,"__esModule",{value:!0}),o.TEXT_BASELINE=o.DIM_OPACITY=o.INVERTED_DEFAULT_COLOR=void 0;const l=h(399);o.INVERTED_DEFAULT_COLOR=257,o.DIM_OPACITY=.5,o.TEXT_BASELINE=l.isFirefox||l.isLegacyEdge?"bottom":"ideographic"},457:(a,o)=>{Object.defineProperty(o,"__esModule",{value:!0}),o.CursorBlinkStateManager=void 0,o.CursorBlinkStateManager=class{constructor(h,l){this._renderCallback=h,this._coreBrowserService=l,this.isCursorVisible=!0,this._coreBrowserService.isFocused&&this._restartInterval()}get isPaused(){return!(this._blinkStartTimeout||this._blinkInterval)}dispose(){this._blinkInterval&&(this._coreBrowserService.window.clearInterval(this._blinkInterval),this._blinkInterval=void 0),this._blinkStartTimeout&&(this._coreBrowserService.window.clearTimeout(this._blinkStartTimeout),this._blinkStartTimeout=void 0),this._animationFrame&&(this._coreBrowserService.window.cancelAnimationFrame(this._animationFrame),this._animationFrame=void 0)}restartBlinkAnimation(){this.isPaused||(this._animationTimeRestarted=Date.now(),this.isCursorVisible=!0,this._animationFrame||(this._animationFrame=this._coreBrowserService.window.requestAnimationFrame((()=>{this._renderCallback(),this._animationFrame=void 0}))))}_restartInterval(h=600){this._blinkInterval&&(this._coreBrowserService.window.clearInterval(this._blinkInterval),this._blinkInterval=void 0),this._blinkStartTimeout=this._coreBrowserService.window.setTimeout((()=>{if(this._animationTimeRestarted){const l=600-(Date.now()-this._animationTimeRestarted);if(this._animationTimeRestarted=void 0,l>0)return void this._restartInterval(l)}this.isCursorVisible=!1,this._animationFrame=this._coreBrowserService.window.requestAnimationFrame((()=>{this._renderCallback(),this._animationFrame=void 0})),this._blinkInterval=this._coreBrowserService.window.setInterval((()=>{if(this._animationTimeRestarted){const l=600-(Date.now()-this._animationTimeRestarted);return this._animationTimeRestarted=void 0,void this._restartInterval(l)}this.isCursorVisible=!this.isCursorVisible,this._animationFrame=this._coreBrowserService.window.requestAnimationFrame((()=>{this._renderCallback(),this._animationFrame=void 0}))}),600)}),h)}pause(){this.isCursorVisible=!0,this._blinkInterval&&(this._coreBrowserService.window.clearInterval(this._blinkInterval),this._blinkInterval=void 0),this._blinkStartTimeout&&(this._coreBrowserService.window.clearTimeout(this._blinkStartTimeout),this._blinkStartTimeout=void 0),this._animationFrame&&(this._coreBrowserService.window.cancelAnimationFrame(this._animationFrame),this._animationFrame=void 0)}resume(){this.pause(),this._animationTimeRestarted=void 0,this._restartInterval(),this.restartBlinkAnimation()}}},860:(a,o,h)=>{Object.defineProperty(o,"__esModule",{value:!0}),o.tryDrawCustomChar=o.powerlineDefinitions=o.boxDrawingDefinitions=o.blockElementDefinitions=void 0;const l=h(374);o.blockElementDefinitions={"▀":[{x:0,y:0,w:8,h:4}],"▁":[{x:0,y:7,w:8,h:1}],"▂":[{x:0,y:6,w:8,h:2}],"▃":[{x:0,y:5,w:8,h:3}],"▄":[{x:0,y:4,w:8,h:4}],"▅":[{x:0,y:3,w:8,h:5}],"▆":[{x:0,y:2,w:8,h:6}],"▇":[{x:0,y:1,w:8,h:7}],"█":[{x:0,y:0,w:8,h:8}],"▉":[{x:0,y:0,w:7,h:8}],"▊":[{x:0,y:0,w:6,h:8}],"▋":[{x:0,y:0,w:5,h:8}],"▌":[{x:0,y:0,w:4,h:8}],"▍":[{x:0,y:0,w:3,h:8}],"▎":[{x:0,y:0,w:2,h:8}],"▏":[{x:0,y:0,w:1,h:8}],"▐":[{x:4,y:0,w:4,h:8}],"▔":[{x:0,y:0,w:8,h:1}],"▕":[{x:7,y:0,w:1,h:8}],"▖":[{x:0,y:4,w:4,h:4}],"▗":[{x:4,y:4,w:4,h:4}],"▘":[{x:0,y:0,w:4,h:4}],"▙":[{x:0,y:0,w:4,h:8},{x:0,y:4,w:8,h:4}],"▚":[{x:0,y:0,w:4,h:4},{x:4,y:4,w:4,h:4}],"▛":[{x:0,y:0,w:4,h:8},{x:4,y:0,w:4,h:4}],"▜":[{x:0,y:0,w:8,h:4},{x:4,y:0,w:4,h:8}],"▝":[{x:4,y:0,w:4,h:4}],"▞":[{x:4,y:0,w:4,h:4},{x:0,y:4,w:4,h:4}],"▟":[{x:4,y:0,w:4,h:8},{x:0,y:4,w:8,h:4}],"🭰":[{x:1,y:0,w:1,h:8}],"🭱":[{x:2,y:0,w:1,h:8}],"🭲":[{x:3,y:0,w:1,h:8}],"🭳":[{x:4,y:0,w:1,h:8}],"🭴":[{x:5,y:0,w:1,h:8}],"🭵":[{x:6,y:0,w:1,h:8}],"🭶":[{x:0,y:1,w:8,h:1}],"🭷":[{x:0,y:2,w:8,h:1}],"🭸":[{x:0,y:3,w:8,h:1}],"🭹":[{x:0,y:4,w:8,h:1}],"🭺":[{x:0,y:5,w:8,h:1}],"🭻":[{x:0,y:6,w:8,h:1}],"🭼":[{x:0,y:0,w:1,h:8},{x:0,y:7,w:8,h:1}],"🭽":[{x:0,y:0,w:1,h:8},{x:0,y:0,w:8,h:1}],"🭾":[{x:7,y:0,w:1,h:8},{x:0,y:0,w:8,h:1}],"🭿":[{x:7,y:0,w:1,h:8},{x:0,y:7,w:8,h:1}],"🮀":[{x:0,y:0,w:8,h:1},{x:0,y:7,w:8,h:1}],"🮁":[{x:0,y:0,w:8,h:1},{x:0,y:2,w:8,h:1},{x:0,y:4,w:8,h:1},{x:0,y:7,w:8,h:1}],"🮂":[{x:0,y:0,w:8,h:2}],"🮃":[{x:0,y:0,w:8,h:3}],"🮄":[{x:0,y:0,w:8,h:5}],"🮅":[{x:0,y:0,w:8,h:6}],"🮆":[{x:0,y:0,w:8,h:7}],"🮇":[{x:6,y:0,w:2,h:8}],"🮈":[{x:5,y:0,w:3,h:8}],"🮉":[{x:3,y:0,w:5,h:8}],"🮊":[{x:2,y:0,w:6,h:8}],"🮋":[{x:1,y:0,w:7,h:8}],"🮕":[{x:0,y:0,w:2,h:2},{x:4,y:0,w:2,h:2},{x:2,y:2,w:2,h:2},{x:6,y:2,w:2,h:2},{x:0,y:4,w:2,h:2},{x:4,y:4,w:2,h:2},{x:2,y:6,w:2,h:2},{x:6,y:6,w:2,h:2}],"🮖":[{x:2,y:0,w:2,h:2},{x:6,y:0,w:2,h:2},{x:0,y:2,w:2,h:2},{x:4,y:2,w:2,h:2},{x:2,y:4,w:2,h:2},{x:6,y:4,w:2,h:2},{x:0,y:6,w:2,h:2},{x:4,y:6,w:2,h:2}],"🮗":[{x:0,y:2,w:8,h:2},{x:0,y:6,w:8,h:2}]};const c={"░":[[1,0,0,0],[0,0,0,0],[0,0,1,0],[0,0,0,0]],"▒":[[1,0],[0,0],[0,1],[0,0]],"▓":[[0,1],[1,1],[1,0],[1,1]]};o.boxDrawingDefinitions={"─":{1:"M0,.5 L1,.5"},"━":{3:"M0,.5 L1,.5"},"│":{1:"M.5,0 L.5,1"},"┃":{3:"M.5,0 L.5,1"},"┌":{1:"M0.5,1 L.5,.5 L1,.5"},"┏":{3:"M0.5,1 L.5,.5 L1,.5"},"┐":{1:"M0,.5 L.5,.5 L.5,1"},"┓":{3:"M0,.5 L.5,.5 L.5,1"},"└":{1:"M.5,0 L.5,.5 L1,.5"},"┗":{3:"M.5,0 L.5,.5 L1,.5"},"┘":{1:"M.5,0 L.5,.5 L0,.5"},"┛":{3:"M.5,0 L.5,.5 L0,.5"},"├":{1:"M.5,0 L.5,1 M.5,.5 L1,.5"},"┣":{3:"M.5,0 L.5,1 M.5,.5 L1,.5"},"┤":{1:"M.5,0 L.5,1 M.5,.5 L0,.5"},"┫":{3:"M.5,0 L.5,1 M.5,.5 L0,.5"},"┬":{1:"M0,.5 L1,.5 M.5,.5 L.5,1"},"┳":{3:"M0,.5 L1,.5 M.5,.5 L.5,1"},"┴":{1:"M0,.5 L1,.5 M.5,.5 L.5,0"},"┻":{3:"M0,.5 L1,.5 M.5,.5 L.5,0"},"┼":{1:"M0,.5 L1,.5 M.5,0 L.5,1"},"╋":{3:"M0,.5 L1,.5 M.5,0 L.5,1"},"╴":{1:"M.5,.5 L0,.5"},"╸":{3:"M.5,.5 L0,.5"},"╵":{1:"M.5,.5 L.5,0"},"╹":{3:"M.5,.5 L.5,0"},"╶":{1:"M.5,.5 L1,.5"},"╺":{3:"M.5,.5 L1,.5"},"╷":{1:"M.5,.5 L.5,1"},"╻":{3:"M.5,.5 L.5,1"},"═":{1:(u,f)=>`M0,${.5-f} L1,${.5-f} M0,${.5+f} L1,${.5+f}`},"║":{1:(u,f)=>`M${.5-u},0 L${.5-u},1 M${.5+u},0 L${.5+u},1`},"╒":{1:(u,f)=>`M.5,1 L.5,${.5-f} L1,${.5-f} M.5,${.5+f} L1,${.5+f}`},"╓":{1:(u,f)=>`M${.5-u},1 L${.5-u},.5 L1,.5 M${.5+u},.5 L${.5+u},1`},"╔":{1:(u,f)=>`M1,${.5-f} L${.5-u},${.5-f} L${.5-u},1 M1,${.5+f} L${.5+u},${.5+f} L${.5+u},1`},"╕":{1:(u,f)=>`M0,${.5-f} L.5,${.5-f} L.5,1 M0,${.5+f} L.5,${.5+f}`},"╖":{1:(u,f)=>`M${.5+u},1 L${.5+u},.5 L0,.5 M${.5-u},.5 L${.5-u},1`},"╗":{1:(u,f)=>`M0,${.5+f} L${.5-u},${.5+f} L${.5-u},1 M0,${.5-f} L${.5+u},${.5-f} L${.5+u},1`},"╘":{1:(u,f)=>`M.5,0 L.5,${.5+f} L1,${.5+f} M.5,${.5-f} L1,${.5-f}`},"╙":{1:(u,f)=>`M1,.5 L${.5-u},.5 L${.5-u},0 M${.5+u},.5 L${.5+u},0`},"╚":{1:(u,f)=>`M1,${.5-f} L${.5+u},${.5-f} L${.5+u},0 M1,${.5+f} L${.5-u},${.5+f} L${.5-u},0`},"╛":{1:(u,f)=>`M0,${.5+f} L.5,${.5+f} L.5,0 M0,${.5-f} L.5,${.5-f}`},"╜":{1:(u,f)=>`M0,.5 L${.5+u},.5 L${.5+u},0 M${.5-u},.5 L${.5-u},0`},"╝":{1:(u,f)=>`M0,${.5-f} L${.5-u},${.5-f} L${.5-u},0 M0,${.5+f} L${.5+u},${.5+f} L${.5+u},0`},"╞":{1:(u,f)=>`M.5,0 L.5,1 M.5,${.5-f} L1,${.5-f} M.5,${.5+f} L1,${.5+f}`},"╟":{1:(u,f)=>`M${.5-u},0 L${.5-u},1 M${.5+u},0 L${.5+u},1 M${.5+u},.5 L1,.5`},"╠":{1:(u,f)=>`M${.5-u},0 L${.5-u},1 M1,${.5+f} L${.5+u},${.5+f} L${.5+u},1 M1,${.5-f} L${.5+u},${.5-f} L${.5+u},0`},"╡":{1:(u,f)=>`M.5,0 L.5,1 M0,${.5-f} L.5,${.5-f} M0,${.5+f} L.5,${.5+f}`},"╢":{1:(u,f)=>`M0,.5 L${.5-u},.5 M${.5-u},0 L${.5-u},1 M${.5+u},0 L${.5+u},1`},"╣":{1:(u,f)=>`M${.5+u},0 L${.5+u},1 M0,${.5+f} L${.5-u},${.5+f} L${.5-u},1 M0,${.5-f} L${.5-u},${.5-f} L${.5-u},0`},"╤":{1:(u,f)=>`M0,${.5-f} L1,${.5-f} M0,${.5+f} L1,${.5+f} M.5,${.5+f} L.5,1`},"╥":{1:(u,f)=>`M0,.5 L1,.5 M${.5-u},.5 L${.5-u},1 M${.5+u},.5 L${.5+u},1`},"╦":{1:(u,f)=>`M0,${.5-f} L1,${.5-f} M0,${.5+f} L${.5-u},${.5+f} L${.5-u},1 M1,${.5+f} L${.5+u},${.5+f} L${.5+u},1`},"╧":{1:(u,f)=>`M.5,0 L.5,${.5-f} M0,${.5-f} L1,${.5-f} M0,${.5+f} L1,${.5+f}`},"╨":{1:(u,f)=>`M0,.5 L1,.5 M${.5-u},.5 L${.5-u},0 M${.5+u},.5 L${.5+u},0`},"╩":{1:(u,f)=>`M0,${.5+f} L1,${.5+f} M0,${.5-f} L${.5-u},${.5-f} L${.5-u},0 M1,${.5-f} L${.5+u},${.5-f} L${.5+u},0`},"╪":{1:(u,f)=>`M.5,0 L.5,1 M0,${.5-f} L1,${.5-f} M0,${.5+f} L1,${.5+f}`},"╫":{1:(u,f)=>`M0,.5 L1,.5 M${.5-u},0 L${.5-u},1 M${.5+u},0 L${.5+u},1`},"╬":{1:(u,f)=>`M0,${.5+f} L${.5-u},${.5+f} L${.5-u},1 M1,${.5+f} L${.5+u},${.5+f} L${.5+u},1 M0,${.5-f} L${.5-u},${.5-f} L${.5-u},0 M1,${.5-f} L${.5+u},${.5-f} L${.5+u},0`},"╱":{1:"M1,0 L0,1"},"╲":{1:"M0,0 L1,1"},"╳":{1:"M1,0 L0,1 M0,0 L1,1"},"╼":{1:"M.5,.5 L0,.5",3:"M.5,.5 L1,.5"},"╽":{1:"M.5,.5 L.5,0",3:"M.5,.5 L.5,1"},"╾":{1:"M.5,.5 L1,.5",3:"M.5,.5 L0,.5"},"╿":{1:"M.5,.5 L.5,1",3:"M.5,.5 L.5,0"},"┍":{1:"M.5,.5 L.5,1",3:"M.5,.5 L1,.5"},"┎":{1:"M.5,.5 L1,.5",3:"M.5,.5 L.5,1"},"┑":{1:"M.5,.5 L.5,1",3:"M.5,.5 L0,.5"},"┒":{1:"M.5,.5 L0,.5",3:"M.5,.5 L.5,1"},"┕":{1:"M.5,.5 L.5,0",3:"M.5,.5 L1,.5"},"┖":{1:"M.5,.5 L1,.5",3:"M.5,.5 L.5,0"},"┙":{1:"M.5,.5 L.5,0",3:"M.5,.5 L0,.5"},"┚":{1:"M.5,.5 L0,.5",3:"M.5,.5 L.5,0"},"┝":{1:"M.5,0 L.5,1",3:"M.5,.5 L1,.5"},"┞":{1:"M0.5,1 L.5,.5 L1,.5",3:"M.5,.5 L.5,0"},"┟":{1:"M.5,0 L.5,.5 L1,.5",3:"M.5,.5 L.5,1"},"┠":{1:"M.5,.5 L1,.5",3:"M.5,0 L.5,1"},"┡":{1:"M.5,.5 L.5,1",3:"M.5,0 L.5,.5 L1,.5"},"┢":{1:"M.5,.5 L.5,0",3:"M0.5,1 L.5,.5 L1,.5"},"┥":{1:"M.5,0 L.5,1",3:"M.5,.5 L0,.5"},"┦":{1:"M0,.5 L.5,.5 L.5,1",3:"M.5,.5 L.5,0"},"┧":{1:"M.5,0 L.5,.5 L0,.5",3:"M.5,.5 L.5,1"},"┨":{1:"M.5,.5 L0,.5",3:"M.5,0 L.5,1"},"┩":{1:"M.5,.5 L.5,1",3:"M.5,0 L.5,.5 L0,.5"},"┪":{1:"M.5,.5 L.5,0",3:"M0,.5 L.5,.5 L.5,1"},"┭":{1:"M0.5,1 L.5,.5 L1,.5",3:"M.5,.5 L0,.5"},"┮":{1:"M0,.5 L.5,.5 L.5,1",3:"M.5,.5 L1,.5"},"┯":{1:"M.5,.5 L.5,1",3:"M0,.5 L1,.5"},"┰":{1:"M0,.5 L1,.5",3:"M.5,.5 L.5,1"},"┱":{1:"M.5,.5 L1,.5",3:"M0,.5 L.5,.5 L.5,1"},"┲":{1:"M.5,.5 L0,.5",3:"M0.5,1 L.5,.5 L1,.5"},"┵":{1:"M.5,0 L.5,.5 L1,.5",3:"M.5,.5 L0,.5"},"┶":{1:"M.5,0 L.5,.5 L0,.5",3:"M.5,.5 L1,.5"},"┷":{1:"M.5,.5 L.5,0",3:"M0,.5 L1,.5"},"┸":{1:"M0,.5 L1,.5",3:"M.5,.5 L.5,0"},"┹":{1:"M.5,.5 L1,.5",3:"M.5,0 L.5,.5 L0,.5"},"┺":{1:"M.5,.5 L0,.5",3:"M.5,0 L.5,.5 L1,.5"},"┽":{1:"M.5,0 L.5,1 M.5,.5 L1,.5",3:"M.5,.5 L0,.5"},"┾":{1:"M.5,0 L.5,1 M.5,.5 L0,.5",3:"M.5,.5 L1,.5"},"┿":{1:"M.5,0 L.5,1",3:"M0,.5 L1,.5"},"╀":{1:"M0,.5 L1,.5 M.5,.5 L.5,1",3:"M.5,.5 L.5,0"},"╁":{1:"M.5,.5 L.5,0 M0,.5 L1,.5",3:"M.5,.5 L.5,1"},"╂":{1:"M0,.5 L1,.5",3:"M.5,0 L.5,1"},"╃":{1:"M0.5,1 L.5,.5 L1,.5",3:"M.5,0 L.5,.5 L0,.5"},"╄":{1:"M0,.5 L.5,.5 L.5,1",3:"M.5,0 L.5,.5 L1,.5"},"╅":{1:"M.5,0 L.5,.5 L1,.5",3:"M0,.5 L.5,.5 L.5,1"},"╆":{1:"M.5,0 L.5,.5 L0,.5",3:"M0.5,1 L.5,.5 L1,.5"},"╇":{1:"M.5,.5 L.5,1",3:"M.5,.5 L.5,0 M0,.5 L1,.5"},"╈":{1:"M.5,.5 L.5,0",3:"M0,.5 L1,.5 M.5,.5 L.5,1"},"╉":{1:"M.5,.5 L1,.5",3:"M.5,0 L.5,1 M.5,.5 L0,.5"},"╊":{1:"M.5,.5 L0,.5",3:"M.5,0 L.5,1 M.5,.5 L1,.5"},"╌":{1:"M.1,.5 L.4,.5 M.6,.5 L.9,.5"},"╍":{3:"M.1,.5 L.4,.5 M.6,.5 L.9,.5"},"┄":{1:"M.0667,.5 L.2667,.5 M.4,.5 L.6,.5 M.7333,.5 L.9333,.5"},"┅":{3:"M.0667,.5 L.2667,.5 M.4,.5 L.6,.5 M.7333,.5 L.9333,.5"},"┈":{1:"M.05,.5 L.2,.5 M.3,.5 L.45,.5 M.55,.5 L.7,.5 M.8,.5 L.95,.5"},"┉":{3:"M.05,.5 L.2,.5 M.3,.5 L.45,.5 M.55,.5 L.7,.5 M.8,.5 L.95,.5"},"╎":{1:"M.5,.1 L.5,.4 M.5,.6 L.5,.9"},"╏":{3:"M.5,.1 L.5,.4 M.5,.6 L.5,.9"},"┆":{1:"M.5,.0667 L.5,.2667 M.5,.4 L.5,.6 M.5,.7333 L.5,.9333"},"┇":{3:"M.5,.0667 L.5,.2667 M.5,.4 L.5,.6 M.5,.7333 L.5,.9333"},"┊":{1:"M.5,.05 L.5,.2 M.5,.3 L.5,.45 L.5,.55 M.5,.7 L.5,.95"},"┋":{3:"M.5,.05 L.5,.2 M.5,.3 L.5,.45 L.5,.55 M.5,.7 L.5,.95"},"╭":{1:(u,f)=>`M.5,1 L.5,${.5+f/.15*.5} C.5,${.5+f/.15*.5},.5,.5,1,.5`},"╮":{1:(u,f)=>`M.5,1 L.5,${.5+f/.15*.5} C.5,${.5+f/.15*.5},.5,.5,0,.5`},"╯":{1:(u,f)=>`M.5,0 L.5,${.5-f/.15*.5} C.5,${.5-f/.15*.5},.5,.5,0,.5`},"╰":{1:(u,f)=>`M.5,0 L.5,${.5-f/.15*.5} C.5,${.5-f/.15*.5},.5,.5,1,.5`}},o.powerlineDefinitions={"":{d:"M0,0 L1,.5 L0,1",type:0,rightPadding:2},"":{d:"M-1,-.5 L1,.5 L-1,1.5",type:1,leftPadding:1,rightPadding:1},"":{d:"M1,0 L0,.5 L1,1",type:0,leftPadding:2},"":{d:"M2,-.5 L0,.5 L2,1.5",type:1,leftPadding:1,rightPadding:1},"":{d:"M0,0 L0,1 C0.552,1,1,0.776,1,.5 C1,0.224,0.552,0,0,0",type:0,rightPadding:1},"":{d:"M.2,1 C.422,1,.8,.826,.78,.5 C.8,.174,0.422,0,.2,0",type:1,rightPadding:1},"":{d:"M1,0 L1,1 C0.448,1,0,0.776,0,.5 C0,0.224,0.448,0,1,0",type:0,leftPadding:1},"":{d:"M.8,1 C0.578,1,0.2,.826,.22,.5 C0.2,0.174,0.578,0,0.8,0",type:1,leftPadding:1},"":{d:"M-.5,-.5 L1.5,1.5 L-.5,1.5",type:0},"":{d:"M-.5,-.5 L1.5,1.5",type:1,leftPadding:1,rightPadding:1},"":{d:"M1.5,-.5 L-.5,1.5 L1.5,1.5",type:0},"":{d:"M1.5,-.5 L-.5,1.5 L-.5,-.5",type:0},"":{d:"M1.5,-.5 L-.5,1.5",type:1,leftPadding:1,rightPadding:1},"":{d:"M-.5,-.5 L1.5,1.5 L1.5,-.5",type:0}},o.powerlineDefinitions[""]=o.powerlineDefinitions[""],o.powerlineDefinitions[""]=o.powerlineDefinitions[""],o.tryDrawCustomChar=function(u,f,A,k,b,w,y,m){const C=o.blockElementDefinitions[f];if(C)return(function(M,x,B,T,Q,O){for(let L=0;L7&&parseInt(I.slice(7,9),16)||1;else{if(!I.startsWith("rgba"))throw new Error(`Unexpected fillStyle color format "${I}" when drawing pattern glyph`);[pe,_e,V,ie]=I.substring(5,I.length-1).split(",").map((oe=>parseFloat(oe)))}for(let oe=0;oeu.bezierCurveTo(f[0],f[1],f[2],f[3],f[4],f[5]),L:(u,f)=>u.lineTo(f[0],f[1]),M:(u,f)=>u.moveTo(f[0],f[1])};function v(u,f,A,k,b,w,y,m=0,C=0){const E=u.map((S=>parseFloat(S)||parseInt(S)));if(E.length<2)throw new Error("Too few arguments for instruction");for(let S=0;S{Object.defineProperty(o,"__esModule",{value:!0}),o.observeDevicePixelDimensions=void 0;const l=h(859);o.observeDevicePixelDimensions=function(c,d,g){let _=new d.ResizeObserver((v=>{const u=v.find((k=>k.target===c));if(!u)return;if(!("devicePixelContentBoxSize"in u))return _==null||_.disconnect(),void(_=void 0);const f=u.devicePixelContentBoxSize[0].inlineSize,A=u.devicePixelContentBoxSize[0].blockSize;f>0&&A>0&&g(f,A)}));try{_.observe(c,{box:["device-pixel-content-box"]})}catch{_.disconnect(),_=void 0}return(0,l.toDisposable)((()=>_==null?void 0:_.disconnect()))}},374:(a,o)=>{function h(c){return 57508<=c&&c<=57558}function l(c){return c>=128512&&c<=128591||c>=127744&&c<=128511||c>=128640&&c<=128767||c>=9728&&c<=9983||c>=9984&&c<=10175||c>=65024&&c<=65039||c>=129280&&c<=129535||c>=127462&&c<=127487}Object.defineProperty(o,"__esModule",{value:!0}),o.computeNextVariantOffset=o.createRenderDimensions=o.treatGlyphAsBackgroundColor=o.allowRescaling=o.isEmoji=o.isRestrictedPowerlineGlyph=o.isPowerlineGlyph=o.throwIfFalsy=void 0,o.throwIfFalsy=function(c){if(!c)throw new Error("value must not be falsy");return c},o.isPowerlineGlyph=h,o.isRestrictedPowerlineGlyph=function(c){return 57520<=c&&c<=57527},o.isEmoji=l,o.allowRescaling=function(c,d,g,_){return d===1&&g>Math.ceil(1.5*_)&&c!==void 0&&c>255&&!l(c)&&!h(c)&&!(function(v){return 57344<=v&&v<=63743})(c)},o.treatGlyphAsBackgroundColor=function(c){return h(c)||(function(d){return 9472<=d&&d<=9631})(c)},o.createRenderDimensions=function(){return{css:{canvas:{width:0,height:0},cell:{width:0,height:0}},device:{canvas:{width:0,height:0},cell:{width:0,height:0},char:{width:0,height:0,left:0,top:0}}}},o.computeNextVariantOffset=function(c,d,g=0){return(c-(2*Math.round(d)-g))%(2*Math.round(d))}},296:(a,o)=>{Object.defineProperty(o,"__esModule",{value:!0}),o.createSelectionRenderModel=void 0;class h{constructor(){this.clear()}clear(){this.hasSelection=!1,this.columnSelectMode=!1,this.viewportStartRow=0,this.viewportEndRow=0,this.viewportCappedStartRow=0,this.viewportCappedEndRow=0,this.startCol=0,this.endCol=0,this.selectionStart=void 0,this.selectionEnd=void 0}update(c,d,g,_=!1){if(this.selectionStart=d,this.selectionEnd=g,!d||!g||d[0]===g[0]&&d[1]===g[1])return void this.clear();const v=c.buffers.active.ydisp,u=d[1]-v,f=g[1]-v,A=Math.max(u,0),k=Math.min(f,c.rows-1);A>=c.rows||k<0?this.clear():(this.hasSelection=!0,this.columnSelectMode=_,this.viewportStartRow=u,this.viewportEndRow=f,this.viewportCappedStartRow=A,this.viewportCappedEndRow=k,this.startCol=d[0],this.endCol=g[0])}isCellSelected(c,d,g){return!!this.hasSelection&&(g-=c.buffer.active.viewportY,this.columnSelectMode?this.startCol<=this.endCol?d>=this.startCol&&g>=this.viewportCappedStartRow&&d=this.viewportCappedStartRow&&d>=this.endCol&&g<=this.viewportCappedEndRow:g>this.viewportStartRow&&g=this.startCol&&d=this.startCol)}}o.createSelectionRenderModel=function(){return new h}},509:(a,o,h)=>{Object.defineProperty(o,"__esModule",{value:!0}),o.TextureAtlas=void 0;const l=h(237),c=h(860),d=h(374),g=h(160),_=h(345),v=h(485),u=h(385),f=h(147),A=h(855),k={texturePage:0,texturePosition:{x:0,y:0},texturePositionClipSpace:{x:0,y:0},offset:{x:0,y:0},size:{x:0,y:0},sizeClipSpace:{x:0,y:0}};let b;class w{get pages(){return this._pages}constructor(S,D,M){this._document=S,this._config=D,this._unicodeService=M,this._didWarmUp=!1,this._cacheMap=new v.FourKeyMap,this._cacheMapCombined=new v.FourKeyMap,this._pages=[],this._activePages=[],this._workBoundingBox={top:0,left:0,bottom:0,right:0},this._workAttributeData=new f.AttributeData,this._textureSize=512,this._onAddTextureAtlasCanvas=new _.EventEmitter,this.onAddTextureAtlasCanvas=this._onAddTextureAtlasCanvas.event,this._onRemoveTextureAtlasCanvas=new _.EventEmitter,this.onRemoveTextureAtlasCanvas=this._onRemoveTextureAtlasCanvas.event,this._requestClearModel=!1,this._createNewPage(),this._tmpCanvas=C(S,4*this._config.deviceCellWidth+4,this._config.deviceCellHeight+4),this._tmpCtx=(0,d.throwIfFalsy)(this._tmpCanvas.getContext("2d",{alpha:this._config.allowTransparency,willReadFrequently:!0}))}dispose(){for(const S of this.pages)S.canvas.remove();this._onAddTextureAtlasCanvas.dispose()}warmUp(){this._didWarmUp||(this._doWarmUp(),this._didWarmUp=!0)}_doWarmUp(){const S=new u.IdleTaskQueue;for(let D=33;D<126;D++)S.enqueue((()=>{if(!this._cacheMap.get(D,A.DEFAULT_COLOR,A.DEFAULT_COLOR,A.DEFAULT_EXT)){const M=this._drawToCache(D,A.DEFAULT_COLOR,A.DEFAULT_COLOR,A.DEFAULT_EXT);this._cacheMap.set(D,A.DEFAULT_COLOR,A.DEFAULT_COLOR,A.DEFAULT_EXT,M)}}))}beginFrame(){return this._requestClearModel}clearTexture(){if(this._pages[0].currentRow.x!==0||this._pages[0].currentRow.y!==0){for(const S of this._pages)S.clear();this._cacheMap.clear(),this._cacheMapCombined.clear(),this._didWarmUp=!1}}_createNewPage(){if(w.maxAtlasPages&&this._pages.length>=Math.max(4,w.maxAtlasPages)){const D=this._pages.filter((L=>2*L.canvas.width<=(w.maxTextureSize||4096))).sort(((L,I)=>I.canvas.width!==L.canvas.width?I.canvas.width-L.canvas.width:I.percentageUsed-L.percentageUsed));let M=-1,x=0;for(let L=0;LL.glyphs[0].texturePage)).sort(((L,I)=>L>I?1:-1)),Q=this.pages.length-B.length,O=this._mergePages(B,Q);O.version++;for(let L=T.length-1;L>=0;L--)this._deletePage(T[L]);this.pages.push(O),this._requestClearModel=!0,this._onAddTextureAtlasCanvas.fire(O.canvas)}const S=new y(this._document,this._textureSize);return this._pages.push(S),this._activePages.push(S),this._onAddTextureAtlasCanvas.fire(S.canvas),S}_mergePages(S,D){const M=2*S[0].canvas.width,x=new y(this._document,M,S);for(const[B,T]of S.entries()){const Q=B*T.canvas.width%M,O=Math.floor(B/2)*T.canvas.height;x.ctx.drawImage(T.canvas,Q,O);for(const I of T.glyphs)I.texturePage=D,I.sizeClipSpace.x=I.size.x/M,I.sizeClipSpace.y=I.size.y/M,I.texturePosition.x+=Q,I.texturePosition.y+=O,I.texturePositionClipSpace.x=I.texturePosition.x/M,I.texturePositionClipSpace.y=I.texturePosition.y/M;this._onRemoveTextureAtlasCanvas.fire(T.canvas);const L=this._activePages.indexOf(T);L!==-1&&this._activePages.splice(L,1)}return x}_deletePage(S){this._pages.splice(S,1);for(let D=S;D=this._config.colors.ansi.length)throw new Error("No color found for idx "+S);return this._config.colors.ansi[S]}_getBackgroundColor(S,D,M,x){if(this._config.allowTransparency)return g.NULL_COLOR;let B;switch(S){case 16777216:case 33554432:B=this._getColorFromAnsiIndex(D);break;case 50331648:const T=f.AttributeData.toColorRGB(D);B=g.channels.toColor(T[0],T[1],T[2]);break;default:B=M?g.color.opaque(this._config.colors.foreground):this._config.colors.background}return B}_getForegroundColor(S,D,M,x,B,T,Q,O,L,I){const H=this._getMinimumContrastColor(S,D,M,x,B,T,Q,L,O,I);if(H)return H;let U;switch(B){case 16777216:case 33554432:this._config.drawBoldTextInBrightColors&&L&&T<8&&(T+=8),U=this._getColorFromAnsiIndex(T);break;case 50331648:const re=f.AttributeData.toColorRGB(T);U=g.channels.toColor(re[0],re[1],re[2]);break;default:U=Q?this._config.colors.background:this._config.colors.foreground}return this._config.allowTransparency&&(U=g.color.opaque(U)),O&&(U=g.color.multiplyOpacity(U,l.DIM_OPACITY)),U}_resolveBackgroundRgba(S,D,M){switch(S){case 16777216:case 33554432:return this._getColorFromAnsiIndex(D).rgba;case 50331648:return D<<8;default:return M?this._config.colors.foreground.rgba:this._config.colors.background.rgba}}_resolveForegroundRgba(S,D,M,x){switch(S){case 16777216:case 33554432:return this._config.drawBoldTextInBrightColors&&x&&D<8&&(D+=8),this._getColorFromAnsiIndex(D).rgba;case 50331648:return D<<8;default:return M?this._config.colors.background.rgba:this._config.colors.foreground.rgba}}_getMinimumContrastColor(S,D,M,x,B,T,Q,O,L,I){if(this._config.minimumContrastRatio===1||I)return;const H=this._getContrastCache(L),U=H.getColor(S,x);if(U!==void 0)return U||void 0;const re=this._resolveBackgroundRgba(D,M,Q),ve=this._resolveForegroundRgba(B,T,Q,O),he=g.rgba.ensureContrastRatio(re,ve,this._config.minimumContrastRatio/(L?2:1));if(!he)return void H.setColor(S,x,null);const ne=g.channels.toColor(he>>24&255,he>>16&255,he>>8&255);return H.setColor(S,x,ne),ne}_getContrastCache(S){return S?this._config.colors.halfContrastCache:this._config.colors.contrastCache}_drawToCache(S,D,M,x,B=!1){const T=typeof S=="number"?String.fromCharCode(S):S,Q=Math.min(this._config.deviceCellWidth*Math.max(T.length,2)+4,this._textureSize);this._tmpCanvas.width=ae?2*ae-Se:ae-Se;Se>=ae||Ne===0?(this._tmpCtx.setLineDash([Math.round(ae),Math.round(ae)]),this._tmpCtx.moveTo(xe+Ne,Oe),this._tmpCtx.lineTo(ke,Oe)):(this._tmpCtx.setLineDash([Math.round(ae),Math.round(ae)]),this._tmpCtx.moveTo(xe,Oe),this._tmpCtx.lineTo(xe+Ne,Oe),this._tmpCtx.moveTo(xe+Ne+ae,Oe),this._tmpCtx.lineTo(ke,Oe)),Se=(0,d.computeNextVariantOffset)(ke-xe,ae,Se);break;case 5:const wt=.6,Os=.3,pn=ke-xe,ha=Math.floor(wt*pn),ca=Math.floor(Os*pn),fc=pn-ha-ca;this._tmpCtx.setLineDash([ha,ca,fc]),this._tmpCtx.moveTo(xe,Oe),this._tmpCtx.lineTo(ke,Oe);break;default:this._tmpCtx.moveTo(xe,Oe),this._tmpCtx.lineTo(ke,Oe)}this._tmpCtx.stroke(),this._tmpCtx.restore()}if(this._tmpCtx.restore(),!le&&this._config.fontSize>=12&&!this._config.allowTransparency&&T!==" "){this._tmpCtx.save(),this._tmpCtx.textBaseline="alphabetic";const Ce=this._tmpCtx.measureText(T);if(this._tmpCtx.restore(),"actualBoundingBoxDescent"in Ce&&Ce.actualBoundingBoxDescent>0){this._tmpCtx.save();const xe=new Path2D;xe.rect(qe,Oe-Math.ceil(ae/2),this._config.deviceCellWidth*de,At-Oe+Math.ceil(ae/2)),this._tmpCtx.clip(xe),this._tmpCtx.lineWidth=3*this._config.devicePixelRatio,this._tmpCtx.strokeStyle=ie.css,this._tmpCtx.strokeText(T,K,K+this._config.deviceCharHeight),this._tmpCtx.restore()}}}if(he){const ae=Math.max(1,Math.floor(this._config.fontSize*this._config.devicePixelRatio/15)),Ee=ae%2==1?.5:0;this._tmpCtx.lineWidth=ae,this._tmpCtx.strokeStyle=this._tmpCtx.fillStyle,this._tmpCtx.beginPath(),this._tmpCtx.moveTo(K,K+Ee),this._tmpCtx.lineTo(K+this._config.deviceCharWidth*de,K+Ee),this._tmpCtx.stroke()}if(le||this._tmpCtx.fillText(T,K,K+this._config.deviceCharHeight),T==="_"&&!this._config.allowTransparency){let ae=m(this._tmpCtx.getImageData(K,K,this._config.deviceCellWidth,this._config.deviceCellHeight),ie,N,fe);if(ae)for(let Ee=1;Ee<=5&&(this._tmpCtx.save(),this._tmpCtx.fillStyle=ie.css,this._tmpCtx.fillRect(0,0,this._tmpCanvas.width,this._tmpCanvas.height),this._tmpCtx.restore(),this._tmpCtx.fillText(T,K,K+this._config.deviceCharHeight-Ee),ae=m(this._tmpCtx.getImageData(K,K,this._config.deviceCellWidth,this._config.deviceCellHeight),ie,N,fe),ae);Ee++);}if(ve){const ae=Math.max(1,Math.floor(this._config.fontSize*this._config.devicePixelRatio/10)),Ee=this._tmpCtx.lineWidth%2==1?.5:0;this._tmpCtx.lineWidth=ae,this._tmpCtx.strokeStyle=this._tmpCtx.fillStyle,this._tmpCtx.beginPath(),this._tmpCtx.moveTo(K,K+Math.floor(this._config.deviceCharHeight/2)-Ee),this._tmpCtx.lineTo(K+this._config.deviceCharWidth*de,K+Math.floor(this._config.deviceCharHeight/2)-Ee),this._tmpCtx.stroke()}this._tmpCtx.restore();const me=this._tmpCtx.getImageData(0,0,this._tmpCanvas.width,this._tmpCanvas.height);let Me;if(Me=this._config.allowTransparency?(function(ae){for(let Ee=0;Ee0)return!1;return!0})(me):m(me,ie,N,fe),Me)return k;const Ae=this._findGlyphBoundingBox(me,this._workBoundingBox,Q,F,le,K);let we,ye;for(;;){if(this._activePages.length===0){const ae=this._createNewPage();we=ae,ye=ae.currentRow,ye.height=Ae.size.y;break}we=this._activePages[this._activePages.length-1],ye=we.currentRow;for(const ae of this._activePages)Ae.size.y<=ae.currentRow.height&&(we=ae,ye=ae.currentRow);for(let ae=this._activePages.length-1;ae>=0;ae--)for(const Ee of this._activePages[ae].fixedRows)Ee.height<=ye.height&&Ae.size.y<=Ee.height&&(we=this._activePages[ae],ye=Ee);if(ye.y+Ae.size.y>=we.canvas.height||ye.height>Ae.size.y+2){let ae=!1;if(we.currentRow.y+we.currentRow.height+Ae.size.y>=we.canvas.height){let Ee;for(const qe of this._activePages)if(qe.currentRow.y+qe.currentRow.height+Ae.size.y=w.maxAtlasPages&&ye.y+Ae.size.y<=we.canvas.height&&ye.height>=Ae.size.y&&ye.x+Ae.size.x<=we.canvas.width)ae=!0;else{const qe=this._createNewPage();we=qe,ye=qe.currentRow,ye.height=Ae.size.y,ae=!0}}ae||(we.currentRow.height>0&&we.fixedRows.push(we.currentRow),ye={x:0,y:we.currentRow.y+we.currentRow.height,height:Ae.size.y},we.fixedRows.push(ye),we.currentRow={x:0,y:ye.y+ye.height,height:0})}if(ye.x+Ae.size.x<=we.canvas.width)break;ye===we.currentRow?(ye.x=0,ye.y+=ye.height,ye.height=0):we.fixedRows.splice(we.fixedRows.indexOf(ye),1)}return Ae.texturePage=this._pages.indexOf(we),Ae.texturePosition.x=ye.x,Ae.texturePosition.y=ye.y,Ae.texturePositionClipSpace.x=ye.x/we.canvas.width,Ae.texturePositionClipSpace.y=ye.y/we.canvas.height,Ae.sizeClipSpace.x/=we.canvas.width,Ae.sizeClipSpace.y/=we.canvas.height,ye.height=Math.max(ye.height,Ae.size.y),ye.x+=Ae.size.x,we.ctx.putImageData(me,Ae.texturePosition.x-this._workBoundingBox.left,Ae.texturePosition.y-this._workBoundingBox.top,this._workBoundingBox.left,this._workBoundingBox.top,Ae.size.x,Ae.size.y),we.addGlyph(Ae),we.version++,Ae}_findGlyphBoundingBox(S,D,M,x,B,T){D.top=0;const Q=x?this._config.deviceCellHeight:this._tmpCanvas.height,O=x?this._config.deviceCellWidth:M;let L=!1;for(let I=0;I=T;I--){for(let H=0;H=0;I--){for(let H=0;H>>24,B=S.rgba>>>16&255,T=S.rgba>>>8&255,Q=D.rgba>>>24,O=D.rgba>>>16&255,L=D.rgba>>>8&255,I=Math.floor((Math.abs(x-Q)+Math.abs(B-O)+Math.abs(T-L))/12);let H=!0;for(let U=0;U=0;E--)(y=A[E])&&(C=(m<3?y(C):m>3?y(k,b,C):y(k,b))||C);return m>3&&C&&Object.defineProperty(k,b,C),C},c=this&&this.__param||function(A,k){return function(b,w){k(b,w,A)}};Object.defineProperty(o,"__esModule",{value:!0}),o.CharacterJoinerService=o.JoinedCellData=void 0;const d=h(147),g=h(855),_=h(782),v=h(97);class u extends d.AttributeData{constructor(k,b,w){super(),this.content=0,this.combinedData="",this.fg=k.fg,this.bg=k.bg,this.combinedData=b,this._width=w}isCombined(){return 2097152}getWidth(){return this._width}getChars(){return this.combinedData}getCode(){return 2097151}setFromCharData(k){throw new Error("not implemented")}getAsCharData(){return[this.fg,this.getChars(),this.getWidth(),this.getCode()]}}o.JoinedCellData=u;let f=o.CharacterJoinerService=class oc{constructor(k){this._bufferService=k,this._characterJoiners=[],this._nextCharacterJoinerId=0,this._workCell=new _.CellData}register(k){const b={id:this._nextCharacterJoinerId++,handler:k};return this._characterJoiners.push(b),b.id}deregister(k){for(let b=0;b1){const x=this._getJoinedRanges(y,E,C,b,m);for(let B=0;B1){const M=this._getJoinedRanges(y,E,C,b,m);for(let x=0;x{Object.defineProperty(o,"__esModule",{value:!0}),o.contrastRatio=o.toPaddedHex=o.rgba=o.rgb=o.css=o.color=o.channels=o.NULL_COLOR=void 0;let h=0,l=0,c=0,d=0;var g,_,v,u,f;function A(b){const w=b.toString(16);return w.length<2?"0"+w:w}function k(b,w){return b>>0},b.toColor=function(w,y,m,C){return{css:b.toCss(w,y,m,C),rgba:b.toRgba(w,y,m,C)}}})(g||(o.channels=g={})),(function(b){function w(y,m){return d=Math.round(255*m),[h,l,c]=f.toChannels(y.rgba),{css:g.toCss(h,l,c,d),rgba:g.toRgba(h,l,c,d)}}b.blend=function(y,m){if(d=(255&m.rgba)/255,d===1)return{css:m.css,rgba:m.rgba};const C=m.rgba>>24&255,E=m.rgba>>16&255,S=m.rgba>>8&255,D=y.rgba>>24&255,M=y.rgba>>16&255,x=y.rgba>>8&255;return h=D+Math.round((C-D)*d),l=M+Math.round((E-M)*d),c=x+Math.round((S-x)*d),{css:g.toCss(h,l,c),rgba:g.toRgba(h,l,c)}},b.isOpaque=function(y){return(255&y.rgba)==255},b.ensureContrastRatio=function(y,m,C){const E=f.ensureContrastRatio(y.rgba,m.rgba,C);if(E)return g.toColor(E>>24&255,E>>16&255,E>>8&255)},b.opaque=function(y){const m=(255|y.rgba)>>>0;return[h,l,c]=f.toChannels(m),{css:g.toCss(h,l,c),rgba:m}},b.opacity=w,b.multiplyOpacity=function(y,m){return d=255&y.rgba,w(y,d*m/255)},b.toColorRGB=function(y){return[y.rgba>>24&255,y.rgba>>16&255,y.rgba>>8&255]}})(_||(o.color=_={})),(function(b){let w,y;try{const m=document.createElement("canvas");m.width=1,m.height=1;const C=m.getContext("2d",{willReadFrequently:!0});C&&(w=C,w.globalCompositeOperation="copy",y=w.createLinearGradient(0,0,1,1))}catch{}b.toColor=function(m){if(m.match(/#[\da-f]{3,8}/i))switch(m.length){case 4:return h=parseInt(m.slice(1,2).repeat(2),16),l=parseInt(m.slice(2,3).repeat(2),16),c=parseInt(m.slice(3,4).repeat(2),16),g.toColor(h,l,c);case 5:return h=parseInt(m.slice(1,2).repeat(2),16),l=parseInt(m.slice(2,3).repeat(2),16),c=parseInt(m.slice(3,4).repeat(2),16),d=parseInt(m.slice(4,5).repeat(2),16),g.toColor(h,l,c,d);case 7:return{css:m,rgba:(parseInt(m.slice(1),16)<<8|255)>>>0};case 9:return{css:m,rgba:parseInt(m.slice(1),16)>>>0}}const C=m.match(/rgba?\(\s*(\d{1,3})\s*,\s*(\d{1,3})\s*,\s*(\d{1,3})\s*(,\s*(0|1|\d?\.(\d+))\s*)?\)/);if(C)return h=parseInt(C[1]),l=parseInt(C[2]),c=parseInt(C[3]),d=Math.round(255*(C[5]===void 0?1:parseFloat(C[5]))),g.toColor(h,l,c,d);if(!w||!y)throw new Error("css.toColor: Unsupported css format");if(w.fillStyle=y,w.fillStyle=m,typeof w.fillStyle!="string")throw new Error("css.toColor: Unsupported css format");if(w.fillRect(0,0,1,1),[h,l,c,d]=w.getImageData(0,0,1,1).data,d!==255)throw new Error("css.toColor: Unsupported css format");return{rgba:g.toRgba(h,l,c,d),css:m}}})(v||(o.css=v={})),(function(b){function w(y,m,C){const E=y/255,S=m/255,D=C/255;return .2126*(E<=.03928?E/12.92:Math.pow((E+.055)/1.055,2.4))+.7152*(S<=.03928?S/12.92:Math.pow((S+.055)/1.055,2.4))+.0722*(D<=.03928?D/12.92:Math.pow((D+.055)/1.055,2.4))}b.relativeLuminance=function(y){return w(y>>16&255,y>>8&255,255&y)},b.relativeLuminance2=w})(u||(o.rgb=u={})),(function(b){function w(m,C,E){const S=m>>24&255,D=m>>16&255,M=m>>8&255;let x=C>>24&255,B=C>>16&255,T=C>>8&255,Q=k(u.relativeLuminance2(x,B,T),u.relativeLuminance2(S,D,M));for(;Q0||B>0||T>0);)x-=Math.max(0,Math.ceil(.1*x)),B-=Math.max(0,Math.ceil(.1*B)),T-=Math.max(0,Math.ceil(.1*T)),Q=k(u.relativeLuminance2(x,B,T),u.relativeLuminance2(S,D,M));return(x<<24|B<<16|T<<8|255)>>>0}function y(m,C,E){const S=m>>24&255,D=m>>16&255,M=m>>8&255;let x=C>>24&255,B=C>>16&255,T=C>>8&255,Q=k(u.relativeLuminance2(x,B,T),u.relativeLuminance2(S,D,M));for(;Q>>0}b.blend=function(m,C){if(d=(255&C)/255,d===1)return C;const E=C>>24&255,S=C>>16&255,D=C>>8&255,M=m>>24&255,x=m>>16&255,B=m>>8&255;return h=M+Math.round((E-M)*d),l=x+Math.round((S-x)*d),c=B+Math.round((D-B)*d),g.toRgba(h,l,c)},b.ensureContrastRatio=function(m,C,E){const S=u.relativeLuminance(m>>8),D=u.relativeLuminance(C>>8);if(k(S,D)>8));if(Tk(S,u.relativeLuminance(Q>>8))?B:Q}return B}const M=y(m,C,E),x=k(S,u.relativeLuminance(M>>8));if(xk(S,u.relativeLuminance(B>>8))?M:B}return M}},b.reduceLuminance=w,b.increaseLuminance=y,b.toChannels=function(m){return[m>>24&255,m>>16&255,m>>8&255,255&m]}})(f||(o.rgba=f={})),o.toPaddedHex=A,o.contrastRatio=k},345:(a,o)=>{Object.defineProperty(o,"__esModule",{value:!0}),o.runAndSubscribe=o.forwardEvent=o.EventEmitter=void 0,o.EventEmitter=class{constructor(){this._listeners=[],this._disposed=!1}get event(){return this._event||(this._event=h=>(this._listeners.push(h),{dispose:()=>{if(!this._disposed){for(let l=0;ll.fire(c)))},o.runAndSubscribe=function(h,l){return l(void 0),h((c=>l(c)))}},859:(a,o)=>{function h(l){for(const c of l)c.dispose();l.length=0}Object.defineProperty(o,"__esModule",{value:!0}),o.getDisposeArrayDisposable=o.disposeArray=o.toDisposable=o.MutableDisposable=o.Disposable=void 0,o.Disposable=class{constructor(){this._disposables=[],this._isDisposed=!1}dispose(){this._isDisposed=!0;for(const l of this._disposables)l.dispose();this._disposables.length=0}register(l){return this._disposables.push(l),l}unregister(l){const c=this._disposables.indexOf(l);c!==-1&&this._disposables.splice(c,1)}},o.MutableDisposable=class{constructor(){this._isDisposed=!1}get value(){return this._isDisposed?void 0:this._value}set value(l){var c;this._isDisposed||l===this._value||((c=this._value)==null||c.dispose(),this._value=l)}clear(){this.value=void 0}dispose(){var l;this._isDisposed=!0,(l=this._value)==null||l.dispose(),this._value=void 0}},o.toDisposable=function(l){return{dispose:l}},o.disposeArray=h,o.getDisposeArrayDisposable=function(l){return{dispose:()=>h(l)}}},485:(a,o)=>{Object.defineProperty(o,"__esModule",{value:!0}),o.FourKeyMap=o.TwoKeyMap=void 0;class h{constructor(){this._data={}}set(c,d,g){this._data[c]||(this._data[c]={}),this._data[c][d]=g}get(c,d){return this._data[c]?this._data[c][d]:void 0}clear(){this._data={}}}o.TwoKeyMap=h,o.FourKeyMap=class{constructor(){this._data=new h}set(l,c,d,g,_){this._data.get(l,c)||this._data.set(l,c,new h),this._data.get(l,c).set(d,g,_)}get(l,c,d,g){var _;return(_=this._data.get(l,c))==null?void 0:_.get(d,g)}clear(){this._data.clear()}}},399:(a,o)=>{Object.defineProperty(o,"__esModule",{value:!0}),o.isChromeOS=o.isLinux=o.isWindows=o.isIphone=o.isIpad=o.isMac=o.getSafariVersion=o.isSafari=o.isLegacyEdge=o.isFirefox=o.isNode=void 0,o.isNode=typeof process<"u"&&"title"in process;const h=o.isNode?"node":navigator.userAgent,l=o.isNode?"node":navigator.platform;o.isFirefox=h.includes("Firefox"),o.isLegacyEdge=h.includes("Edge"),o.isSafari=/^((?!chrome|android).)*safari/i.test(h),o.getSafariVersion=function(){if(!o.isSafari)return 0;const c=h.match(/Version\/(\d+)/);return c===null||c.length<2?0:parseInt(c[1])},o.isMac=["Macintosh","MacIntel","MacPPC","Mac68K"].includes(l),o.isIpad=l==="iPad",o.isIphone=l==="iPhone",o.isWindows=["Windows","Win16","Win32","WinCE"].includes(l),o.isLinux=l.indexOf("Linux")>=0,o.isChromeOS=/\bCrOS\b/.test(h)},385:(a,o,h)=>{Object.defineProperty(o,"__esModule",{value:!0}),o.DebouncedIdleTask=o.IdleTaskQueue=o.PriorityTaskQueue=void 0;const l=h(399);class c{constructor(){this._tasks=[],this._i=0}enqueue(_){this._tasks.push(_),this._start()}flush(){for(;this._iA)return f-v<-20&&console.warn(`task queue exceeded allotted deadline by ${Math.abs(Math.round(f-v))}ms`),void this._start();f=A}this.clear()}}class d extends c{_requestCallback(_){return setTimeout((()=>_(this._createDeadline(16))))}_cancelCallback(_){clearTimeout(_)}_createDeadline(_){const v=Date.now()+_;return{timeRemaining:()=>Math.max(0,v-Date.now())}}}o.PriorityTaskQueue=d,o.IdleTaskQueue=!l.isNode&&"requestIdleCallback"in window?class extends c{_requestCallback(g){return requestIdleCallback(g)}_cancelCallback(g){cancelIdleCallback(g)}}:d,o.DebouncedIdleTask=class{constructor(){this._queue=new o.IdleTaskQueue}set(g){this._queue.clear(),this._queue.enqueue(g)}flush(){this._queue.flush()}}},147:(a,o)=>{Object.defineProperty(o,"__esModule",{value:!0}),o.ExtendedAttrs=o.AttributeData=void 0;class h{constructor(){this.fg=0,this.bg=0,this.extended=new l}static toColorRGB(d){return[d>>>16&255,d>>>8&255,255&d]}static fromColorRGB(d){return(255&d[0])<<16|(255&d[1])<<8|255&d[2]}clone(){const d=new h;return d.fg=this.fg,d.bg=this.bg,d.extended=this.extended.clone(),d}isInverse(){return 67108864&this.fg}isBold(){return 134217728&this.fg}isUnderline(){return this.hasExtendedAttrs()&&this.extended.underlineStyle!==0?1:268435456&this.fg}isBlink(){return 536870912&this.fg}isInvisible(){return 1073741824&this.fg}isItalic(){return 67108864&this.bg}isDim(){return 134217728&this.bg}isStrikethrough(){return 2147483648&this.fg}isProtected(){return 536870912&this.bg}isOverline(){return 1073741824&this.bg}getFgColorMode(){return 50331648&this.fg}getBgColorMode(){return 50331648&this.bg}isFgRGB(){return(50331648&this.fg)==50331648}isBgRGB(){return(50331648&this.bg)==50331648}isFgPalette(){return(50331648&this.fg)==16777216||(50331648&this.fg)==33554432}isBgPalette(){return(50331648&this.bg)==16777216||(50331648&this.bg)==33554432}isFgDefault(){return(50331648&this.fg)==0}isBgDefault(){return(50331648&this.bg)==0}isAttributeDefault(){return this.fg===0&&this.bg===0}getFgColor(){switch(50331648&this.fg){case 16777216:case 33554432:return 255&this.fg;case 50331648:return 16777215&this.fg;default:return-1}}getBgColor(){switch(50331648&this.bg){case 16777216:case 33554432:return 255&this.bg;case 50331648:return 16777215&this.bg;default:return-1}}hasExtendedAttrs(){return 268435456&this.bg}updateExtended(){this.extended.isEmpty()?this.bg&=-268435457:this.bg|=268435456}getUnderlineColor(){if(268435456&this.bg&&~this.extended.underlineColor)switch(50331648&this.extended.underlineColor){case 16777216:case 33554432:return 255&this.extended.underlineColor;case 50331648:return 16777215&this.extended.underlineColor;default:return this.getFgColor()}return this.getFgColor()}getUnderlineColorMode(){return 268435456&this.bg&&~this.extended.underlineColor?50331648&this.extended.underlineColor:this.getFgColorMode()}isUnderlineColorRGB(){return 268435456&this.bg&&~this.extended.underlineColor?(50331648&this.extended.underlineColor)==50331648:this.isFgRGB()}isUnderlineColorPalette(){return 268435456&this.bg&&~this.extended.underlineColor?(50331648&this.extended.underlineColor)==16777216||(50331648&this.extended.underlineColor)==33554432:this.isFgPalette()}isUnderlineColorDefault(){return 268435456&this.bg&&~this.extended.underlineColor?(50331648&this.extended.underlineColor)==0:this.isFgDefault()}getUnderlineStyle(){return 268435456&this.fg?268435456&this.bg?this.extended.underlineStyle:1:0}getUnderlineVariantOffset(){return this.extended.underlineVariantOffset}}o.AttributeData=h;class l{get ext(){return this._urlId?-469762049&this._ext|this.underlineStyle<<26:this._ext}set ext(d){this._ext=d}get underlineStyle(){return this._urlId?5:(469762048&this._ext)>>26}set underlineStyle(d){this._ext&=-469762049,this._ext|=d<<26&469762048}get underlineColor(){return 67108863&this._ext}set underlineColor(d){this._ext&=-67108864,this._ext|=67108863&d}get urlId(){return this._urlId}set urlId(d){this._urlId=d}get underlineVariantOffset(){const d=(3758096384&this._ext)>>29;return d<0?4294967288^d:d}set underlineVariantOffset(d){this._ext&=536870911,this._ext|=d<<29&3758096384}constructor(d=0,g=0){this._ext=0,this._urlId=0,this._ext=d,this._urlId=g}clone(){return new l(this._ext,this._urlId)}isEmpty(){return this.underlineStyle===0&&this._urlId===0}}o.ExtendedAttrs=l},782:(a,o,h)=>{Object.defineProperty(o,"__esModule",{value:!0}),o.CellData=void 0;const l=h(133),c=h(855),d=h(147);class g extends d.AttributeData{constructor(){super(...arguments),this.content=0,this.fg=0,this.bg=0,this.extended=new d.ExtendedAttrs,this.combinedData=""}static fromCharData(v){const u=new g;return u.setFromCharData(v),u}isCombined(){return 2097152&this.content}getWidth(){return this.content>>22}getChars(){return 2097152&this.content?this.combinedData:2097151&this.content?(0,l.stringFromCodePoint)(2097151&this.content):""}getCode(){return this.isCombined()?this.combinedData.charCodeAt(this.combinedData.length-1):2097151&this.content}setFromCharData(v){this.fg=v[c.CHAR_DATA_ATTR_INDEX],this.bg=0;let u=!1;if(v[c.CHAR_DATA_CHAR_INDEX].length>2)u=!0;else if(v[c.CHAR_DATA_CHAR_INDEX].length===2){const f=v[c.CHAR_DATA_CHAR_INDEX].charCodeAt(0);if(55296<=f&&f<=56319){const A=v[c.CHAR_DATA_CHAR_INDEX].charCodeAt(1);56320<=A&&A<=57343?this.content=1024*(f-55296)+A-56320+65536|v[c.CHAR_DATA_WIDTH_INDEX]<<22:u=!0}else u=!0}else this.content=v[c.CHAR_DATA_CHAR_INDEX].charCodeAt(0)|v[c.CHAR_DATA_WIDTH_INDEX]<<22;u&&(this.combinedData=v[c.CHAR_DATA_CHAR_INDEX],this.content=2097152|v[c.CHAR_DATA_WIDTH_INDEX]<<22)}getAsCharData(){return[this.fg,this.getChars(),this.getWidth(),this.getCode()]}}o.CellData=g},855:(a,o)=>{Object.defineProperty(o,"__esModule",{value:!0}),o.WHITESPACE_CELL_CODE=o.WHITESPACE_CELL_WIDTH=o.WHITESPACE_CELL_CHAR=o.NULL_CELL_CODE=o.NULL_CELL_WIDTH=o.NULL_CELL_CHAR=o.CHAR_DATA_CODE_INDEX=o.CHAR_DATA_WIDTH_INDEX=o.CHAR_DATA_CHAR_INDEX=o.CHAR_DATA_ATTR_INDEX=o.DEFAULT_EXT=o.DEFAULT_ATTR=o.DEFAULT_COLOR=void 0,o.DEFAULT_COLOR=0,o.DEFAULT_ATTR=256|o.DEFAULT_COLOR<<9,o.DEFAULT_EXT=0,o.CHAR_DATA_ATTR_INDEX=0,o.CHAR_DATA_CHAR_INDEX=1,o.CHAR_DATA_WIDTH_INDEX=2,o.CHAR_DATA_CODE_INDEX=3,o.NULL_CELL_CHAR="",o.NULL_CELL_WIDTH=1,o.NULL_CELL_CODE=0,o.WHITESPACE_CELL_CHAR=" ",o.WHITESPACE_CELL_WIDTH=1,o.WHITESPACE_CELL_CODE=32},133:(a,o)=>{Object.defineProperty(o,"__esModule",{value:!0}),o.Utf8ToUtf32=o.StringToUtf32=o.utf32ToString=o.stringFromCodePoint=void 0,o.stringFromCodePoint=function(h){return h>65535?(h-=65536,String.fromCharCode(55296+(h>>10))+String.fromCharCode(h%1024+56320)):String.fromCharCode(h)},o.utf32ToString=function(h,l=0,c=h.length){let d="";for(let g=l;g65535?(_-=65536,d+=String.fromCharCode(55296+(_>>10))+String.fromCharCode(_%1024+56320)):d+=String.fromCharCode(_)}return d},o.StringToUtf32=class{constructor(){this._interim=0}clear(){this._interim=0}decode(h,l){const c=h.length;if(!c)return 0;let d=0,g=0;if(this._interim){const _=h.charCodeAt(g++);56320<=_&&_<=57343?l[d++]=1024*(this._interim-55296)+_-56320+65536:(l[d++]=this._interim,l[d++]=_),this._interim=0}for(let _=g;_=c)return this._interim=v,d;const u=h.charCodeAt(_);56320<=u&&u<=57343?l[d++]=1024*(v-55296)+u-56320+65536:(l[d++]=v,l[d++]=u)}else v!==65279&&(l[d++]=v)}return d}},o.Utf8ToUtf32=class{constructor(){this.interim=new Uint8Array(3)}clear(){this.interim.fill(0)}decode(h,l){const c=h.length;if(!c)return 0;let d,g,_,v,u=0,f=0,A=0;if(this.interim[0]){let w=!1,y=this.interim[0];y&=(224&y)==192?31:(240&y)==224?15:7;let m,C=0;for(;(m=63&this.interim[++C])&&C<4;)y<<=6,y|=m;const E=(224&this.interim[0])==192?2:(240&this.interim[0])==224?3:4,S=E-C;for(;A=c)return 0;if(m=h[A++],(192&m)!=128){A--,w=!0;break}this.interim[C++]=m,y<<=6,y|=63&m}w||(E===2?y<128?A--:l[u++]=y:E===3?y<2048||y>=55296&&y<=57343||y===65279||(l[u++]=y):y<65536||y>1114111||(l[u++]=y)),this.interim.fill(0)}const k=c-4;let b=A;for(;b=c)return this.interim[0]=d,u;if(g=h[b++],(192&g)!=128){b--;continue}if(f=(31&d)<<6|63&g,f<128){b--;continue}l[u++]=f}else if((240&d)==224){if(b>=c)return this.interim[0]=d,u;if(g=h[b++],(192&g)!=128){b--;continue}if(b>=c)return this.interim[0]=d,this.interim[1]=g,u;if(_=h[b++],(192&_)!=128){b--;continue}if(f=(15&d)<<12|(63&g)<<6|63&_,f<2048||f>=55296&&f<=57343||f===65279)continue;l[u++]=f}else if((248&d)==240){if(b>=c)return this.interim[0]=d,u;if(g=h[b++],(192&g)!=128){b--;continue}if(b>=c)return this.interim[0]=d,this.interim[1]=g,u;if(_=h[b++],(192&_)!=128){b--;continue}if(b>=c)return this.interim[0]=d,this.interim[1]=g,this.interim[2]=_,u;if(v=h[b++],(192&v)!=128){b--;continue}if(f=(7&d)<<18|(63&g)<<12|(63&_)<<6|63&v,f<65536||f>1114111)continue;l[u++]=f}}return u}}},776:function(a,o,h){var l=this&&this.__decorate||function(f,A,k,b){var w,y=arguments.length,m=y<3?A:b===null?b=Object.getOwnPropertyDescriptor(A,k):b;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")m=Reflect.decorate(f,A,k,b);else for(var C=f.length-1;C>=0;C--)(w=f[C])&&(m=(y<3?w(m):y>3?w(A,k,m):w(A,k))||m);return y>3&&m&&Object.defineProperty(A,k,m),m},c=this&&this.__param||function(f,A){return function(k,b){A(k,b,f)}};Object.defineProperty(o,"__esModule",{value:!0}),o.traceCall=o.setTraceLogger=o.LogService=void 0;const d=h(859),g=h(97),_={trace:g.LogLevelEnum.TRACE,debug:g.LogLevelEnum.DEBUG,info:g.LogLevelEnum.INFO,warn:g.LogLevelEnum.WARN,error:g.LogLevelEnum.ERROR,off:g.LogLevelEnum.OFF};let v,u=o.LogService=class extends d.Disposable{get logLevel(){return this._logLevel}constructor(f){super(),this._optionsService=f,this._logLevel=g.LogLevelEnum.OFF,this._updateLogLevel(),this.register(this._optionsService.onSpecificOptionChange("logLevel",(()=>this._updateLogLevel()))),v=this}_updateLogLevel(){this._logLevel=_[this._optionsService.rawOptions.logLevel]}_evalLazyOptionalParams(f){for(let A=0;AJSON.stringify(m))).join(", ")})`);const y=b.apply(this,w);return v.trace(`GlyphRenderer#${b.name} return`,y),y}}},726:(a,o)=>{Object.defineProperty(o,"__esModule",{value:!0}),o.createDecorator=o.getServiceDependencies=o.serviceRegistry=void 0;const h="di$target",l="di$dependencies";o.serviceRegistry=new Map,o.getServiceDependencies=function(c){return c[l]||[]},o.createDecorator=function(c){if(o.serviceRegistry.has(c))return o.serviceRegistry.get(c);const d=function(g,_,v){if(arguments.length!==3)throw new Error("@IServiceName-decorator can only be used to decorate a parameter");(function(u,f,A){f[h]===f?f[l].push({id:u,index:A}):(f[l]=[{id:u,index:A}],f[h]=f)})(d,g,v)};return d.toString=()=>c,o.serviceRegistry.set(c,d),d}},97:(a,o,h)=>{Object.defineProperty(o,"__esModule",{value:!0}),o.IDecorationService=o.IUnicodeService=o.IOscLinkService=o.IOptionsService=o.ILogService=o.LogLevelEnum=o.IInstantiationService=o.ICharsetService=o.ICoreService=o.ICoreMouseService=o.IBufferService=void 0;const l=h(726);var c;o.IBufferService=(0,l.createDecorator)("BufferService"),o.ICoreMouseService=(0,l.createDecorator)("CoreMouseService"),o.ICoreService=(0,l.createDecorator)("CoreService"),o.ICharsetService=(0,l.createDecorator)("CharsetService"),o.IInstantiationService=(0,l.createDecorator)("InstantiationService"),(function(d){d[d.TRACE=0]="TRACE",d[d.DEBUG=1]="DEBUG",d[d.INFO=2]="INFO",d[d.WARN=3]="WARN",d[d.ERROR=4]="ERROR",d[d.OFF=5]="OFF"})(c||(o.LogLevelEnum=c={})),o.ILogService=(0,l.createDecorator)("LogService"),o.IOptionsService=(0,l.createDecorator)("OptionsService"),o.IOscLinkService=(0,l.createDecorator)("OscLinkService"),o.IUnicodeService=(0,l.createDecorator)("UnicodeService"),o.IDecorationService=(0,l.createDecorator)("DecorationService")}},s={};function r(a){var o=s[a];if(o!==void 0)return o.exports;var h=s[a]={exports:{}};return i[a].call(h.exports,h,h.exports,r),h.exports}var n={};return(()=>{var a=n;Object.defineProperty(a,"__esModule",{value:!0}),a.CanvasAddon=void 0;const o=r(345),h=r(859),l=r(776),c=r(949);class d extends h.Disposable{constructor(){super(...arguments),this._onChangeTextureAtlas=this.register(new o.EventEmitter),this.onChangeTextureAtlas=this._onChangeTextureAtlas.event,this._onAddTextureAtlasCanvas=this.register(new o.EventEmitter),this.onAddTextureAtlasCanvas=this._onAddTextureAtlasCanvas.event}get textureAtlas(){var _;return(_=this._renderer)==null?void 0:_.textureAtlas}activate(_){const v=_._core;if(!_.element)return void this.register(v.onWillOpen((()=>this.activate(_))));this._terminal=_;const u=v.coreService,f=v.optionsService,A=v.screenElement,k=v.linkifier,b=v,w=b._bufferService,y=b._renderService,m=b._characterJoinerService,C=b._charSizeService,E=b._coreBrowserService,S=b._decorationService,D=b._logService,M=b._themeService;(0,l.setTraceLogger)(D),this._renderer=new c.CanvasRenderer(_,A,k,w,C,f,m,u,E,S,M),this.register((0,o.forwardEvent)(this._renderer.onChangeTextureAtlas,this._onChangeTextureAtlas)),this.register((0,o.forwardEvent)(this._renderer.onAddTextureAtlasCanvas,this._onAddTextureAtlasCanvas)),y.setRenderer(this._renderer),y.handleResize(w.cols,w.rows),this.register((0,h.toDisposable)((()=>{var x;y.setRenderer(this._terminal._core._createRenderer()),y.handleResize(_.cols,_.rows),(x=this._renderer)==null||x.dispose(),this._renderer=void 0})))}clearTextureAtlas(){var _;(_=this._renderer)==null||_.clearTextureAtlas()}}a.CanvasAddon=d})(),n})()))})(On)),On.exports}var Rv=Lv();/** +`)}clearSelection(){this._model.clearSelection(),this._removeMouseDownListeners(),this.refresh(),this._onSelectionChange.fire()}refresh(e){this._refreshAnimationFrame||(this._refreshAnimationFrame=this._coreBrowserService.window.requestAnimationFrame(()=>this._refresh())),va&&e&&this.selectionText.length&&this._onLinuxMouseSelection.fire(this.selectionText)}_refresh(){this._refreshAnimationFrame=void 0,this._onRedrawRequest.fire({start:this._model.finalSelectionStart,end:this._model.finalSelectionEnd,columnSelectMode:this._activeSelectionMode===3})}_isClickInSelection(e){let t=this._getMouseBufferCoords(e),i=this._model.finalSelectionStart,s=this._model.finalSelectionEnd;return!i||!s||!t?!1:this._areCoordsInSelection(t,i,s)}isCellInSelection(e,t){let i=this._model.finalSelectionStart,s=this._model.finalSelectionEnd;return!i||!s?!1:this._areCoordsInSelection([e,t],i,s)}_areCoordsInSelection(e,t,i){return e[1]>t[1]&&e[1]=t[0]&&e[0]=t[0]}_selectWordAtCursor(e,t){var r,n;let i=(n=(r=this._linkifier.currentLink)==null?void 0:r.link)==null?void 0:n.range;if(i)return this._model.selectionStart=[i.start.x-1,i.start.y-1],this._model.selectionStartLength=sl(i,this._bufferService.cols),this._model.selectionEnd=void 0,!0;let s=this._getMouseBufferCoords(e);return s?(this._selectWordAt(s,t),this._model.selectionEnd=void 0,!0):!1}selectAll(){this._model.isSelectAllActive=!0,this.refresh(),this._onSelectionChange.fire()}selectLines(e,t){this._model.clearSelection(),e=Math.max(e,0),t=Math.min(t,this._bufferService.buffer.lines.length-1),this._model.selectionStart=[0,e],this._model.selectionEnd=[this._bufferService.cols,t],this.refresh(),this._onSelectionChange.fire()}_handleTrim(e){this._model.handleTrim(e)&&this.refresh()}_getMouseBufferCoords(e){let t=this._mouseService.getCoords(e,this._screenElement,this._bufferService.cols,this._bufferService.rows,!0);if(t)return t[0]--,t[1]--,t[1]+=this._bufferService.buffer.ydisp,t}_getMouseEventScrollAmount(e){let t=fa(this._coreBrowserService.window,e,this._screenElement)[1],i=this._renderService.dimensions.css.canvas.height;return t>=0&&t<=i?0:(t>i&&(t-=i),t=Math.min(Math.max(t,-On),On),t/=On,t/Math.abs(t)+Math.round(t*(Uf-1)))}shouldForceSelection(e){return on?e.altKey&&this._optionsService.rawOptions.macOptionClickForcesSelection:e.shiftKey}handleMouseDown(e){if(this._mouseDownTimeStamp=e.timeStamp,!(e.button===2&&this.hasSelection)&&e.button===0){if(!this._enabled){if(!this.shouldForceSelection(e))return;e.stopPropagation()}e.preventDefault(),this._dragScrollAmount=0,this._enabled&&e.shiftKey?this._handleIncrementalClick(e):e.detail===1?this._handleSingleClick(e):e.detail===2?this._handleDoubleClick(e):e.detail===3&&this._handleTripleClick(e),this._addMouseDownListeners(),this.refresh(!0)}}_addMouseDownListeners(){this._screenElement.ownerDocument&&(this._screenElement.ownerDocument.addEventListener("mousemove",this._mouseMoveListener),this._screenElement.ownerDocument.addEventListener("mouseup",this._mouseUpListener)),this._dragScrollIntervalTimer=this._coreBrowserService.window.setInterval(()=>this._dragScroll(),$f)}_removeMouseDownListeners(){this._screenElement.ownerDocument&&(this._screenElement.ownerDocument.removeEventListener("mousemove",this._mouseMoveListener),this._screenElement.ownerDocument.removeEventListener("mouseup",this._mouseUpListener)),this._coreBrowserService.window.clearInterval(this._dragScrollIntervalTimer),this._dragScrollIntervalTimer=void 0}_handleIncrementalClick(e){this._model.selectionStart&&(this._model.selectionEnd=this._getMouseBufferCoords(e))}_handleSingleClick(e){if(this._model.selectionStartLength=0,this._model.isSelectAllActive=!1,this._activeSelectionMode=this.shouldColumnSelect(e)?3:0,this._model.selectionStart=this._getMouseBufferCoords(e),!this._model.selectionStart)return;this._model.selectionEnd=void 0;let t=this._bufferService.buffer.lines.get(this._model.selectionStart[1]);t&&t.length!==this._model.selectionStart[0]&&t.hasWidth(this._model.selectionStart[0])===0&&this._model.selectionStart[0]++}_handleDoubleClick(e){this._selectWordAtCursor(e,!0)&&(this._activeSelectionMode=1)}_handleTripleClick(e){let t=this._getMouseBufferCoords(e);t&&(this._activeSelectionMode=2,this._selectLineAt(t[1]))}shouldColumnSelect(e){return e.altKey&&!(on&&this._optionsService.rawOptions.macOptionClickForcesSelection)}_handleMouseMove(e){if(e.stopImmediatePropagation(),!this._model.selectionStart)return;let t=this._model.selectionEnd?[this._model.selectionEnd[0],this._model.selectionEnd[1]]:null;if(this._model.selectionEnd=this._getMouseBufferCoords(e),!this._model.selectionEnd){this.refresh(!0);return}this._activeSelectionMode===2?this._model.selectionEnd[1]0?this._model.selectionEnd[0]=this._bufferService.cols:this._dragScrollAmount<0&&(this._model.selectionEnd[0]=0));let i=this._bufferService.buffer;if(this._model.selectionEnd[1]0?(this._activeSelectionMode!==3&&(this._model.selectionEnd[0]=this._bufferService.cols),this._model.selectionEnd[1]=Math.min(e.ydisp+this._bufferService.rows,e.lines.length-1)):(this._activeSelectionMode!==3&&(this._model.selectionEnd[0]=0),this._model.selectionEnd[1]=e.ydisp),this.refresh()}}_handleMouseUp(e){let t=e.timeStamp-this._mouseDownTimeStamp;if(this._removeMouseDownListeners(),this.selectionText.length<=1&&tthis._handleTrim(t))}_convertViewportColToCharacterIndex(e,t){let i=t;for(let s=0;t>=s;s++){let r=e.loadCell(s,this._workCell).getChars().length;this._workCell.getWidth()===0?i--:r>1&&t!==s&&(i+=r-1)}return i}setSelection(e,t,i){this._model.clearSelection(),this._removeMouseDownListeners(),this._model.selectionStart=[e,t],this._model.selectionStartLength=i,this.refresh(),this._fireEventIfSelectionChanged()}rightClickSelect(e){this._isClickInSelection(e)||(this._selectWordAtCursor(e,!1)&&this.refresh(!0),this._fireEventIfSelectionChanged())}_getWordAt(e,t,i=!0,s=!0){if(e[0]>=this._bufferService.cols)return;let r=this._bufferService.buffer,n=r.lines.get(e[1]);if(!n)return;let a=r.translateBufferLineToString(e[1],!1),o=this._convertViewportColToCharacterIndex(n,e[0]),h=o,l=e[0]-o,c=0,d=0,v=0,u=0;if(a.charAt(o)===" "){for(;o>0&&a.charAt(o-1)===" ";)o--;for(;h1&&(u+=x-1,h+=x-1);f>0&&o>0&&!this._isCharWordSeparator(n.loadCell(f-1,this._workCell));){n.loadCell(f-1,this._workCell);let S=this._workCell.getChars().length;this._workCell.getWidth()===0?(c++,f--):S>1&&(v+=S-1,o-=S-1),o--,f--}for(;A1&&(u+=S-1,h+=S-1),h++,A++}}h++;let g=o+l-c+v,_=Math.min(this._bufferService.cols,h-o+c+d-v-u);if(!(!t&&a.slice(o,h).trim()==="")){if(i&&g===0&&n.getCodePoint(0)!==32){let f=r.lines.get(e[1]-1);if(f&&n.isWrapped&&f.getCodePoint(this._bufferService.cols-1)!==32){let A=this._getWordAt([this._bufferService.cols-1,e[1]-1],!1,!0,!1);if(A){let x=this._bufferService.cols-A.start;g-=x,_+=x}}}if(s&&g+_===this._bufferService.cols&&n.getCodePoint(this._bufferService.cols-1)!==32){let f=r.lines.get(e[1]+1);if(f!=null&&f.isWrapped&&f.getCodePoint(0)!==32){let A=this._getWordAt([0,e[1]+1],!1,!1,!0);A&&(_+=A.length)}}return{start:g,length:_}}}_selectWordAt(e,t){let i=this._getWordAt(e,t);if(i){for(;i.start<0;)i.start+=this._bufferService.cols,e[1]--;this._model.selectionStart=[i.start,e[1]],this._model.selectionStartLength=i.length}}_selectToWordAt(e){let t=this._getWordAt(e,!0);if(t){let i=e[1];for(;t.start<0;)t.start+=this._bufferService.cols,i--;if(!this._model.areSelectionValuesReversed())for(;t.start+t.length>this._bufferService.cols;)t.length-=this._bufferService.cols,i++;this._model.selectionEnd=[this._model.areSelectionValuesReversed()?t.start:t.start+t.length,i]}}_isCharWordSeparator(e){return e.getWidth()===0?!1:this._optionsService.rawOptions.wordSeparator.indexOf(e.getChars())>=0}_selectLineAt(e){let t=this._bufferService.buffer.getWrappedRangeForLine(e),i={start:{x:0,y:t.first},end:{x:this._bufferService.cols-1,y:t.last}};this._model.selectionStart=[0,t.first],this._model.selectionEnd=void 0,this._model.selectionStartLength=sl(i,this._bufferService.cols)}};Po=Ye([te(3,Mt),te(4,bs),te(5,aa),te(6,Lt),te(7,Oi),te(8,Qi)],Po);var rl=class{constructor(){this._data={}}set(e,t,i){this._data[e]||(this._data[e]={}),this._data[e][t]=i}get(e,t){return this._data[e]?this._data[e][t]:void 0}clear(){this._data={}}},nl=class{constructor(){this._color=new rl,this._css=new rl}setCss(e,t,i){this._css.set(e,t,i)}getCss(e,t){return this._css.get(e,t)}setColor(e,t,i){this._color.set(e,t,i)}getColor(e,t){return this._color.get(e,t)}clear(){this._color.clear(),this._css.clear()}},rt=Object.freeze((()=>{let e=[Ge.toColor("#2e3436"),Ge.toColor("#cc0000"),Ge.toColor("#4e9a06"),Ge.toColor("#c4a000"),Ge.toColor("#3465a4"),Ge.toColor("#75507b"),Ge.toColor("#06989a"),Ge.toColor("#d3d7cf"),Ge.toColor("#555753"),Ge.toColor("#ef2929"),Ge.toColor("#8ae234"),Ge.toColor("#fce94f"),Ge.toColor("#729fcf"),Ge.toColor("#ad7fa8"),Ge.toColor("#34e2e2"),Ge.toColor("#eeeeec")],t=[0,95,135,175,215,255];for(let i=0;i<216;i++){let s=t[i/36%6|0],r=t[i/6%6|0],n=t[i%6];e.push({css:it.toCss(s,r,n),rgba:it.toRgba(s,r,n)})}for(let i=0;i<24;i++){let s=8+i*10;e.push({css:it.toCss(s,s,s),rgba:it.toRgba(s,s,s)})}return e})()),is=Ge.toColor("#ffffff"),tr=Ge.toColor("#000000"),ol=Ge.toColor("#ffffff"),al=tr,Gs={css:"rgba(255, 255, 255, 0.3)",rgba:4294967117},Jf=is,Qo=class extends ke{constructor(e){super(),this._optionsService=e,this._contrastCache=new nl,this._halfContrastCache=new nl,this._onChangeColors=this._register(new Y),this.onChangeColors=this._onChangeColors.event,this._colors={foreground:is,background:tr,cursor:ol,cursorAccent:al,selectionForeground:void 0,selectionBackgroundTransparent:Gs,selectionBackgroundOpaque:ze.blend(tr,Gs),selectionInactiveBackgroundTransparent:Gs,selectionInactiveBackgroundOpaque:ze.blend(tr,Gs),scrollbarSliderBackground:ze.opacity(is,.2),scrollbarSliderHoverBackground:ze.opacity(is,.4),scrollbarSliderActiveBackground:ze.opacity(is,.5),overviewRulerBorder:is,ansi:rt.slice(),contrastCache:this._contrastCache,halfContrastCache:this._halfContrastCache},this._updateRestoreColors(),this._setTheme(this._optionsService.rawOptions.theme),this._register(this._optionsService.onSpecificOptionChange("minimumContrastRatio",()=>this._contrastCache.clear())),this._register(this._optionsService.onSpecificOptionChange("theme",()=>this._setTheme(this._optionsService.rawOptions.theme)))}get colors(){return this._colors}_setTheme(e={}){let t=this._colors;if(t.foreground=Oe(e.foreground,is),t.background=Oe(e.background,tr),t.cursor=ze.blend(t.background,Oe(e.cursor,ol)),t.cursorAccent=ze.blend(t.background,Oe(e.cursorAccent,al)),t.selectionBackgroundTransparent=Oe(e.selectionBackground,Gs),t.selectionBackgroundOpaque=ze.blend(t.background,t.selectionBackgroundTransparent),t.selectionInactiveBackgroundTransparent=Oe(e.selectionInactiveBackground,t.selectionBackgroundTransparent),t.selectionInactiveBackgroundOpaque=ze.blend(t.background,t.selectionInactiveBackgroundTransparent),t.selectionForeground=e.selectionForeground?Oe(e.selectionForeground,el):void 0,t.selectionForeground===el&&(t.selectionForeground=void 0),ze.isOpaque(t.selectionBackgroundTransparent)&&(t.selectionBackgroundTransparent=ze.opacity(t.selectionBackgroundTransparent,.3)),ze.isOpaque(t.selectionInactiveBackgroundTransparent)&&(t.selectionInactiveBackgroundTransparent=ze.opacity(t.selectionInactiveBackgroundTransparent,.3)),t.scrollbarSliderBackground=Oe(e.scrollbarSliderBackground,ze.opacity(t.foreground,.2)),t.scrollbarSliderHoverBackground=Oe(e.scrollbarSliderHoverBackground,ze.opacity(t.foreground,.4)),t.scrollbarSliderActiveBackground=Oe(e.scrollbarSliderActiveBackground,ze.opacity(t.foreground,.5)),t.overviewRulerBorder=Oe(e.overviewRulerBorder,Jf),t.ansi=rt.slice(),t.ansi[0]=Oe(e.black,rt[0]),t.ansi[1]=Oe(e.red,rt[1]),t.ansi[2]=Oe(e.green,rt[2]),t.ansi[3]=Oe(e.yellow,rt[3]),t.ansi[4]=Oe(e.blue,rt[4]),t.ansi[5]=Oe(e.magenta,rt[5]),t.ansi[6]=Oe(e.cyan,rt[6]),t.ansi[7]=Oe(e.white,rt[7]),t.ansi[8]=Oe(e.brightBlack,rt[8]),t.ansi[9]=Oe(e.brightRed,rt[9]),t.ansi[10]=Oe(e.brightGreen,rt[10]),t.ansi[11]=Oe(e.brightYellow,rt[11]),t.ansi[12]=Oe(e.brightBlue,rt[12]),t.ansi[13]=Oe(e.brightMagenta,rt[13]),t.ansi[14]=Oe(e.brightCyan,rt[14]),t.ansi[15]=Oe(e.brightWhite,rt[15]),e.extendedAnsi){let i=Math.min(t.ansi.length-16,e.extendedAnsi.length);for(let s=0;sn.index-a.index),s=[];for(let n of i){let a=this._services.get(n.id);if(!a)throw new Error(`[createInstance] ${e.name} depends on UNKNOWN service ${n.id._id}.`);s.push(a)}let r=i.length>0?i[0].index:t.length;if(t.length!==r)throw new Error(`[createInstance] First service dependency of ${e.name} at position ${r+1} conflicts with ${t.length} static arguments`);return new e(...t,...s)}},Vf={trace:0,debug:1,info:2,warn:3,error:4,off:5},Xf="xterm.js: ",Oo=class extends ke{constructor(e){super(),this._optionsService=e,this._logLevel=5,this._updateLogLevel(),this._register(this._optionsService.onSpecificOptionChange("logLevel",()=>this._updateLogLevel()))}get logLevel(){return this._logLevel}_updateLogLevel(){this._logLevel=Vf[this._optionsService.rawOptions.logLevel]}_evalLazyOptionalParams(e){for(let t=0;tthis._length)for(let t=this._length;t=e;s--)this._array[this._getCyclicIndex(s+i.length)]=this._array[this._getCyclicIndex(s)];for(let s=0;sthis._maxLength){let s=this._length+i.length-this._maxLength;this._startIndex+=s,this._length=this._maxLength,this.onTrimEmitter.fire(s)}else this._length+=i.length}trimStart(e){e>this._length&&(e=this._length),this._startIndex+=e,this._length-=e,this.onTrimEmitter.fire(e)}shiftElements(e,t,i){if(!(t<=0)){if(e<0||e>=this._length)throw new Error("start argument out of range");if(e+i<0)throw new Error("Cannot shift elements in list beyond index 0");if(i>0){for(let r=t-1;r>=0;r--)this.set(e+r+i,this.get(e+r));let s=e+t+i-this._length;if(s>0)for(this._length+=s;this._length>this._maxLength;)this._length--,this._startIndex++,this.onTrimEmitter.fire(1)}else for(let s=0;s>22,i&2097152?this._combined[t].charCodeAt(this._combined[t].length-1):s]}set(t,i){this._data[t*xe+1]=i[0],i[1].length>1?(this._combined[t]=i[1],this._data[t*xe+0]=t|2097152|i[2]<<22):this._data[t*xe+0]=i[1].charCodeAt(0)|i[2]<<22}getWidth(t){return this._data[t*xe+0]>>22}hasWidth(t){return this._data[t*xe+0]&12582912}getFg(t){return this._data[t*xe+1]}getBg(t){return this._data[t*xe+2]}hasContent(t){return this._data[t*xe+0]&4194303}getCodePoint(t){let i=this._data[t*xe+0];return i&2097152?this._combined[t].charCodeAt(this._combined[t].length-1):i&2097151}isCombined(t){return this._data[t*xe+0]&2097152}getString(t){let i=this._data[t*xe+0];return i&2097152?this._combined[t]:i&2097151?qi(i&2097151):""}isProtected(t){return this._data[t*xe+2]&536870912}loadCell(t,i){return Nr=t*xe,i.content=this._data[Nr+0],i.fg=this._data[Nr+1],i.bg=this._data[Nr+2],i.content&2097152&&(i.combinedData=this._combined[t]),i.bg&268435456&&(i.extended=this._extendedAttrs[t]),i}setCell(t,i){i.content&2097152&&(this._combined[t]=i.combinedData),i.bg&268435456&&(this._extendedAttrs[t]=i.extended),this._data[t*xe+0]=i.content,this._data[t*xe+1]=i.fg,this._data[t*xe+2]=i.bg}setCellFromCodepoint(t,i,s,r){r.bg&268435456&&(this._extendedAttrs[t]=r.extended),this._data[t*xe+0]=i|s<<22,this._data[t*xe+1]=r.fg,this._data[t*xe+2]=r.bg}addCodepointToCell(t,i,s){let r=this._data[t*xe+0];r&2097152?this._combined[t]+=qi(i):r&2097151?(this._combined[t]=qi(r&2097151)+qi(i),r&=-2097152,r|=2097152):r=i|1<<22,s&&(r&=-12582913,r|=s<<22),this._data[t*xe+0]=r}insertCells(t,i,s){if(t%=this.length,t&&this.getWidth(t-1)===2&&this.setCellFromCodepoint(t-1,0,1,s),i=0;--n)this.setCell(t+i+n,this.loadCell(t+n,r));for(let n=0;nthis.length){if(this._data.buffer.byteLength>=s*4)this._data=new Uint32Array(this._data.buffer,0,s);else{let r=new Uint32Array(s);r.set(this._data),this._data=r}for(let r=this.length;r=t&&delete this._combined[o]}let n=Object.keys(this._extendedAttrs);for(let a=0;a=t&&delete this._extendedAttrs[o]}}return this.length=t,s*4*Nn=0;--t)if(this._data[t*xe+0]&4194303)return t+(this._data[t*xe+0]>>22);return 0}getNoBgTrimmedLength(){for(let t=this.length-1;t>=0;--t)if(this._data[t*xe+0]&4194303||this._data[t*xe+2]&50331648)return t+(this._data[t*xe+0]>>22);return 0}copyCellsFrom(t,i,s,r,n){let a=t._data;if(n)for(let h=r-1;h>=0;h--){for(let l=0;l=i&&(this._combined[l-i+s]=t._combined[l])}}translateToString(t,i,s,r){i=i??0,s=s??this.length,t&&(s=Math.min(s,this.getTrimmedLength())),r&&(r.length=0);let n="";for(;i>22||1}return r&&r.push(i),n}};function Zf(e,t,i,s,r,n){let a=[];for(let o=0;o=o&&s0&&(f>d||c[f].getTrimmedLength()===0);f--)_++;_>0&&(a.push(o+c.length-_),a.push(_)),o+=c.length-1}return a}function ev(e,t){let i=[],s=0,r=t[s],n=0;for(let a=0;agr(e,l,t)).reduce((h,l)=>h+l),n=0,a=0,o=0;for(;oh&&(n-=h,a++);let l=e[a].getWidth(n-1)===2;l&&n--;let c=l?i-1:i;s.push(c),o+=c}return s}function gr(e,t,i){if(t===e.length-1)return e[t].getTrimmedLength();let s=!e[t].hasContent(i-1)&&e[t].getWidth(i-1)===1,r=e[t+1].getWidth(0)===2;return s&&r?i-1:i}var _c=class fc{constructor(t){this.line=t,this.isDisposed=!1,this._disposables=[],this._id=fc._nextId++,this._onDispose=this.register(new Y),this.onDispose=this._onDispose.event}get id(){return this._id}dispose(){this.isDisposed||(this.isDisposed=!0,this.line=-1,this._onDispose.fire(),As(this._disposables),this._disposables.length=0)}register(t){return this._disposables.push(t),t}};_c._nextId=1;var sv=_c,lt={},ss=lt.B;lt[0]={"`":"◆",a:"▒",b:"␉",c:"␌",d:"␍",e:"␊",f:"°",g:"±",h:"␤",i:"␋",j:"┘",k:"┐",l:"┌",m:"└",n:"┼",o:"⎺",p:"⎻",q:"─",r:"⎼",s:"⎽",t:"├",u:"┤",v:"┴",w:"┬",x:"│",y:"≤",z:"≥","{":"π","|":"≠","}":"£","~":"·"};lt.A={"#":"£"};lt.B=void 0;lt[4]={"#":"£","@":"¾","[":"ij","\\":"½","]":"|","{":"¨","|":"f","}":"¼","~":"´"};lt.C=lt[5]={"[":"Ä","\\":"Ö","]":"Å","^":"Ü","`":"é","{":"ä","|":"ö","}":"å","~":"ü"};lt.R={"#":"£","@":"à","[":"°","\\":"ç","]":"§","{":"é","|":"ù","}":"è","~":"¨"};lt.Q={"@":"à","[":"â","\\":"ç","]":"ê","^":"î","`":"ô","{":"é","|":"ù","}":"è","~":"û"};lt.K={"@":"§","[":"Ä","\\":"Ö","]":"Ü","{":"ä","|":"ö","}":"ü","~":"ß"};lt.Y={"#":"£","@":"§","[":"°","\\":"ç","]":"é","`":"ù","{":"à","|":"ò","}":"è","~":"ì"};lt.E=lt[6]={"@":"Ä","[":"Æ","\\":"Ø","]":"Å","^":"Ü","`":"ä","{":"æ","|":"ø","}":"å","~":"ü"};lt.Z={"#":"£","@":"§","[":"¡","\\":"Ñ","]":"¿","{":"°","|":"ñ","}":"ç"};lt.H=lt[7]={"@":"É","[":"Ä","\\":"Ö","]":"Å","^":"Ü","`":"é","{":"ä","|":"ö","}":"å","~":"ü"};lt["="]={"#":"ù","@":"à","[":"é","\\":"ç","]":"ê","^":"î",_:"è","`":"ô","{":"ä","|":"ö","}":"ü","~":"û"};var hl=4294967295,cl=class{constructor(e,t,i){this._hasScrollback=e,this._optionsService=t,this._bufferService=i,this.ydisp=0,this.ybase=0,this.y=0,this.x=0,this.tabs={},this.savedY=0,this.savedX=0,this.savedCurAttrData=et.clone(),this.savedCharset=ss,this.markers=[],this._nullCell=oi.fromCharData([0,Mh,1,0]),this._whitespaceCell=oi.fromCharData([0,ji,1,32]),this._isClearing=!1,this._memoryCleanupQueue=new an,this._memoryCleanupPosition=0,this._cols=this._bufferService.cols,this._rows=this._bufferService.rows,this.lines=new ll(this._getCorrectBufferLength(this._rows)),this.scrollTop=0,this.scrollBottom=this._rows-1,this.setupTabStops()}getNullCell(e){return e?(this._nullCell.fg=e.fg,this._nullCell.bg=e.bg,this._nullCell.extended=e.extended):(this._nullCell.fg=0,this._nullCell.bg=0,this._nullCell.extended=new sn),this._nullCell}getWhitespaceCell(e){return e?(this._whitespaceCell.fg=e.fg,this._whitespaceCell.bg=e.bg,this._whitespaceCell.extended=e.extended):(this._whitespaceCell.fg=0,this._whitespaceCell.bg=0,this._whitespaceCell.extended=new sn),this._whitespaceCell}getBlankLine(e,t){return new ir(this._bufferService.cols,this.getNullCell(e),t)}get hasScrollback(){return this._hasScrollback&&this.lines.maxLength>this._rows}get isCursorInViewport(){let e=this.ybase+this.y-this.ydisp;return e>=0&&ehl?hl:t}fillViewportRows(e){if(this.lines.length===0){e===void 0&&(e=et);let t=this._rows;for(;t--;)this.lines.push(this.getBlankLine(e))}}clear(){this.ydisp=0,this.ybase=0,this.y=0,this.x=0,this.lines=new ll(this._getCorrectBufferLength(this._rows)),this.scrollTop=0,this.scrollBottom=this._rows-1,this.setupTabStops()}resize(e,t){let i=this.getNullCell(et),s=0,r=this._getCorrectBufferLength(t);if(r>this.lines.maxLength&&(this.lines.maxLength=r),this.lines.length>0){if(this._cols0&&this.lines.length<=this.ybase+this.y+n+1?(this.ybase--,n++,this.ydisp>0&&this.ydisp--):this.lines.push(new ir(e,i)));else for(let a=this._rows;a>t;a--)this.lines.length>t+this.ybase&&(this.lines.length>this.ybase+this.y+1?this.lines.pop():(this.ybase++,this.ydisp++));if(r0&&(this.lines.trimStart(a),this.ybase=Math.max(this.ybase-a,0),this.ydisp=Math.max(this.ydisp-a,0),this.savedY=Math.max(this.savedY-a,0)),this.lines.maxLength=r}this.x=Math.min(this.x,e-1),this.y=Math.min(this.y,t-1),n&&(this.y+=n),this.savedX=Math.min(this.savedX,e-1),this.scrollTop=0}if(this.scrollBottom=t-1,this._isReflowEnabled&&(this._reflow(e,t),this._cols>e))for(let n=0;n.1*this.lines.length&&(this._memoryCleanupPosition=0,this._memoryCleanupQueue.enqueue(()=>this._batchedMemoryCleanup()))}_batchedMemoryCleanup(){let e=!0;this._memoryCleanupPosition>=this.lines.length&&(this._memoryCleanupPosition=0,e=!1);let t=0;for(;this._memoryCleanupPosition100)return!0;return e}get _isReflowEnabled(){let e=this._optionsService.rawOptions.windowsPty;return e&&e.buildNumber?this._hasScrollback&&e.backend==="conpty"&&e.buildNumber>=21376:this._hasScrollback&&!this._optionsService.rawOptions.windowsMode}_reflow(e,t){this._cols!==e&&(e>this._cols?this._reflowLarger(e,t):this._reflowSmaller(e,t))}_reflowLarger(e,t){let i=this._optionsService.rawOptions.reflowCursorLine,s=Zf(this.lines,this._cols,e,this.ybase+this.y,this.getNullCell(et),i);if(s.length>0){let r=ev(this.lines,s);tv(this.lines,r.layout),this._reflowLargerAdjustViewport(e,t,r.countRemoved)}}_reflowLargerAdjustViewport(e,t,i){let s=this.getNullCell(et),r=i;for(;r-- >0;)this.ybase===0?(this.y>0&&this.y--,this.lines.length=0;a--){let o=this.lines.get(a);if(!o||!o.isWrapped&&o.getTrimmedLength()<=e)continue;let h=[o];for(;o.isWrapped&&a>0;)o=this.lines.get(--a),h.unshift(o);if(!i){let S=this.ybase+this.y;if(S>=a&&S0&&(r.push({start:a+h.length+n,newLines:u}),n+=u.length),h.push(...u);let g=c.length-1,_=c[g];_===0&&(g--,_=c[g]);let f=h.length-d-1,A=l;for(;f>=0;){let S=Math.min(A,_);if(h[g]===void 0)break;if(h[g].copyCellsFrom(h[f],A-S,_-S,S,!0),_-=S,_===0&&(g--,_=c[g]),A-=S,A===0){f--;let w=Math.max(f,0);A=gr(h,w,this._cols)}}for(let S=0;S0;)this.ybase===0?this.y0){let a=[],o=[];for(let _=0;_=0;_--)if(d&&d.start>l+v){for(let f=d.newLines.length-1;f>=0;f--)this.lines.set(_--,d.newLines[f]);_++,a.push({index:l+1,amount:d.newLines.length}),v+=d.newLines.length,d=r[++c]}else this.lines.set(_,o[l--]);let u=0;for(let _=a.length-1;_>=0;_--)a[_].index+=u,this.lines.onInsertEmitter.fire(a[_]),u+=a[_].amount;let g=Math.max(0,h+n-this.lines.maxLength);g>0&&this.lines.onTrimEmitter.fire(g)}}translateBufferLineToString(e,t,i=0,s){let r=this.lines.get(e);return r?r.translateToString(t,i,s):""}getWrappedRangeForLine(e){let t=e,i=e;for(;t>0&&this.lines.get(t).isWrapped;)t--;for(;i+10;);return e>=this._cols?this._cols-1:e<0?0:e}nextStop(e){for(e==null&&(e=this.x);!this.tabs[++e]&&e=this._cols?this._cols-1:e<0?0:e}clearMarkers(e){this._isClearing=!0;for(let t=0;t{t.line-=i,t.line<0&&t.dispose()})),t.register(this.lines.onInsert(i=>{t.line>=i.index&&(t.line+=i.amount)})),t.register(this.lines.onDelete(i=>{t.line>=i.index&&t.linei.index&&(t.line-=i.amount)})),t.register(t.onDispose(()=>this._removeMarker(t))),t}_removeMarker(e){this._isClearing||this.markers.splice(this.markers.indexOf(e),1)}},rv=class extends ke{constructor(e,t){super(),this._optionsService=e,this._bufferService=t,this._onBufferActivate=this._register(new Y),this.onBufferActivate=this._onBufferActivate.event,this.reset(),this._register(this._optionsService.onSpecificOptionChange("scrollback",()=>this.resize(this._bufferService.cols,this._bufferService.rows))),this._register(this._optionsService.onSpecificOptionChange("tabStopWidth",()=>this.setupTabStops()))}reset(){this._normal=new cl(!0,this._optionsService,this._bufferService),this._normal.fillViewportRows(),this._alt=new cl(!1,this._optionsService,this._bufferService),this._activeBuffer=this._normal,this._onBufferActivate.fire({activeBuffer:this._normal,inactiveBuffer:this._alt}),this.setupTabStops()}get alt(){return this._alt}get active(){return this._activeBuffer}get normal(){return this._normal}activateNormalBuffer(){this._activeBuffer!==this._normal&&(this._normal.x=this._alt.x,this._normal.y=this._alt.y,this._alt.clearAllMarkers(),this._alt.clear(),this._activeBuffer=this._normal,this._onBufferActivate.fire({activeBuffer:this._normal,inactiveBuffer:this._alt}))}activateAltBuffer(e){this._activeBuffer!==this._alt&&(this._alt.fillViewportRows(e),this._alt.x=this._normal.x,this._alt.y=this._normal.y,this._activeBuffer=this._alt,this._onBufferActivate.fire({activeBuffer:this._alt,inactiveBuffer:this._normal}))}resize(e,t){this._normal.resize(e,t),this._alt.resize(e,t),this.setupTabStops(e)}setupTabStops(e){this._normal.setupTabStops(e),this._alt.setupTabStops(e)}},vc=2,gc=1,No=class extends ke{constructor(e){super(),this.isUserScrolling=!1,this._onResize=this._register(new Y),this.onResize=this._onResize.event,this._onScroll=this._register(new Y),this.onScroll=this._onScroll.event,this.cols=Math.max(e.rawOptions.cols||0,vc),this.rows=Math.max(e.rawOptions.rows||0,gc),this.buffers=this._register(new rv(e,this)),this._register(this.buffers.onBufferActivate(t=>{this._onScroll.fire(t.activeBuffer.ydisp)}))}get buffer(){return this.buffers.active}resize(e,t){let i=this.cols!==e,s=this.rows!==t;this.cols=e,this.rows=t,this.buffers.resize(e,t),this._onResize.fire({cols:e,rows:t,colsChanged:i,rowsChanged:s})}reset(){this.buffers.reset(),this.isUserScrolling=!1}scroll(e,t=!1){let i=this.buffer,s;s=this._cachedBlankLine,(!s||s.length!==this.cols||s.getFg(0)!==e.fg||s.getBg(0)!==e.bg)&&(s=i.getBlankLine(e,t),this._cachedBlankLine=s),s.isWrapped=t;let r=i.ybase+i.scrollTop,n=i.ybase+i.scrollBottom;if(i.scrollTop===0){let a=i.lines.isFull;n===i.lines.length-1?a?i.lines.recycle().copyFrom(s):i.lines.push(s.clone()):i.lines.splice(n+1,0,s.clone()),a?this.isUserScrolling&&(i.ydisp=Math.max(i.ydisp-1,0)):(i.ybase++,this.isUserScrolling||i.ydisp++)}else{let a=n-r+1;i.lines.shiftElements(r+1,a-1,-1),i.lines.set(n,s.clone())}this.isUserScrolling||(i.ydisp=i.ybase),this._onScroll.fire(i.ydisp)}scrollLines(e,t){let i=this.buffer;if(e<0){if(i.ydisp===0)return;this.isUserScrolling=!0}else e+i.ydisp>=i.ybase&&(this.isUserScrolling=!1);let s=i.ydisp;i.ydisp=Math.max(Math.min(i.ydisp+e,i.ybase),0),s!==i.ydisp&&(t||this._onScroll.fire(i.ydisp))}};No=Ye([te(0,Lt)],No);var ks={cols:80,rows:24,cursorBlink:!1,cursorStyle:"block",cursorWidth:1,cursorInactiveStyle:"outline",customGlyphs:!0,drawBoldTextInBrightColors:!0,documentOverride:null,fastScrollModifier:"alt",fastScrollSensitivity:5,fontFamily:"monospace",fontSize:15,fontWeight:"normal",fontWeightBold:"bold",ignoreBracketedPasteMode:!1,lineHeight:1,letterSpacing:0,linkHandler:null,logLevel:"info",logger:null,scrollback:1e3,scrollOnEraseInDisplay:!1,scrollOnUserInput:!0,scrollSensitivity:1,screenReaderMode:!1,smoothScrollDuration:0,macOptionIsMeta:!1,macOptionClickForcesSelection:!1,minimumContrastRatio:1,disableStdin:!1,allowProposedApi:!1,allowTransparency:!1,tabStopWidth:8,theme:{},reflowCursorLine:!1,rescaleOverlappingGlyphs:!1,rightClickSelectsWord:on,windowOptions:{},windowsMode:!1,windowsPty:{},wordSeparator:" ()[]{}',\"`",altClickMovesCursor:!0,convertEol:!1,termName:"xterm",cancelEvents:!1,overviewRuler:{}},nv=["normal","bold","100","200","300","400","500","600","700","800","900"],ov=class extends ke{constructor(e){super(),this._onOptionChange=this._register(new Y),this.onOptionChange=this._onOptionChange.event;let t={...ks};for(let i in e)if(i in t)try{let s=e[i];t[i]=this._sanitizeAndValidateOption(i,s)}catch(s){console.error(s)}this.rawOptions=t,this.options={...t},this._setupOptions(),this._register($e(()=>{this.rawOptions.linkHandler=null,this.rawOptions.documentOverride=null}))}onSpecificOptionChange(e,t){return this.onOptionChange(i=>{i===e&&t(this.rawOptions[e])})}onMultipleOptionChange(e,t){return this.onOptionChange(i=>{e.indexOf(i)!==-1&&t()})}_setupOptions(){let e=i=>{if(!(i in ks))throw new Error(`No option with key "${i}"`);return this.rawOptions[i]},t=(i,s)=>{if(!(i in ks))throw new Error(`No option with key "${i}"`);s=this._sanitizeAndValidateOption(i,s),this.rawOptions[i]!==s&&(this.rawOptions[i]=s,this._onOptionChange.fire(i))};for(let i in this.rawOptions){let s={get:e.bind(this,i),set:t.bind(this,i)};Object.defineProperty(this.options,i,s)}}_sanitizeAndValidateOption(e,t){switch(e){case"cursorStyle":if(t||(t=ks[e]),!av(t))throw new Error(`"${t}" is not a valid value for ${e}`);break;case"wordSeparator":t||(t=ks[e]);break;case"fontWeight":case"fontWeightBold":if(typeof t=="number"&&1<=t&&t<=1e3)break;t=nv.includes(t)?t:ks[e];break;case"cursorWidth":t=Math.floor(t);case"lineHeight":case"tabStopWidth":if(t<1)throw new Error(`${e} cannot be less than 1, value: ${t}`);break;case"minimumContrastRatio":t=Math.max(1,Math.min(21,Math.round(t*10)/10));break;case"scrollback":if(t=Math.min(t,4294967295),t<0)throw new Error(`${e} cannot be less than 0, value: ${t}`);break;case"fastScrollSensitivity":case"scrollSensitivity":if(t<=0)throw new Error(`${e} cannot be less than or equal to 0, value: ${t}`);break;case"rows":case"cols":if(!t&&t!==0)throw new Error(`${e} must be numeric, value: ${t}`);break;case"windowsPty":t=t??{};break}return t}};function av(e){return e==="block"||e==="underline"||e==="bar"}function sr(e,t=5){if(typeof e!="object")return e;let i=Array.isArray(e)?[]:{};for(let s in e)i[s]=t<=1?e[s]:e[s]&&sr(e[s],t-1);return i}var dl=Object.freeze({insertMode:!1}),ul=Object.freeze({applicationCursorKeys:!1,applicationKeypad:!1,bracketedPasteMode:!1,cursorBlink:void 0,cursorStyle:void 0,origin:!1,reverseWraparound:!1,sendFocus:!1,synchronizedOutput:!1,wraparound:!0}),Fo=class extends ke{constructor(e,t,i){super(),this._bufferService=e,this._logService=t,this._optionsService=i,this.isCursorInitialized=!1,this.isCursorHidden=!1,this._onData=this._register(new Y),this.onData=this._onData.event,this._onUserInput=this._register(new Y),this.onUserInput=this._onUserInput.event,this._onBinary=this._register(new Y),this.onBinary=this._onBinary.event,this._onRequestScrollToBottom=this._register(new Y),this.onRequestScrollToBottom=this._onRequestScrollToBottom.event,this.modes=sr(dl),this.decPrivateModes=sr(ul)}reset(){this.modes=sr(dl),this.decPrivateModes=sr(ul)}triggerDataEvent(e,t=!1){if(this._optionsService.rawOptions.disableStdin)return;let i=this._bufferService.buffer;t&&this._optionsService.rawOptions.scrollOnUserInput&&i.ybase!==i.ydisp&&this._onRequestScrollToBottom.fire(),t&&this._onUserInput.fire(),this._logService.debug(`sending data "${e}"`),this._logService.trace("sending data (codes)",()=>e.split("").map(s=>s.charCodeAt(0))),this._onData.fire(e)}triggerBinaryEvent(e){this._optionsService.rawOptions.disableStdin||(this._logService.debug(`sending binary "${e}"`),this._logService.trace("sending binary (codes)",()=>e.split("").map(t=>t.charCodeAt(0))),this._onBinary.fire(e))}};Fo=Ye([te(0,Mt),te(1,Qh),te(2,Lt)],Fo);var _l={NONE:{events:0,restrict:()=>!1},X10:{events:1,restrict:e=>e.button===4||e.action!==1?!1:(e.ctrl=!1,e.alt=!1,e.shift=!1,!0)},VT200:{events:19,restrict:e=>e.action!==32},DRAG:{events:23,restrict:e=>!(e.action===32&&e.button===3)},ANY:{events:31,restrict:e=>!0}};function Fn(e,t){let i=(e.ctrl?16:0)|(e.shift?4:0)|(e.alt?8:0);return e.button===4?(i|=64,i|=e.action):(i|=e.button&3,e.button&4&&(i|=64),e.button&8&&(i|=128),e.action===32?i|=32:e.action===0&&!t&&(i|=3)),i}var Hn=String.fromCharCode,fl={DEFAULT:e=>{let t=[Fn(e,!1)+32,e.col+32,e.row+32];return t[0]>255||t[1]>255||t[2]>255?"":`\x1B[M${Hn(t[0])}${Hn(t[1])}${Hn(t[2])}`},SGR:e=>{let t=e.action===0&&e.button!==4?"m":"M";return`\x1B[<${Fn(e,!0)};${e.col};${e.row}${t}`},SGR_PIXELS:e=>{let t=e.action===0&&e.button!==4?"m":"M";return`\x1B[<${Fn(e,!0)};${e.x};${e.y}${t}`}},Ho=class extends ke{constructor(e,t,i){super(),this._bufferService=e,this._coreService=t,this._optionsService=i,this._protocols={},this._encodings={},this._activeProtocol="",this._activeEncoding="",this._lastEvent=null,this._wheelPartialScroll=0,this._onProtocolChange=this._register(new Y),this.onProtocolChange=this._onProtocolChange.event;for(let s of Object.keys(_l))this.addProtocol(s,_l[s]);for(let s of Object.keys(fl))this.addEncoding(s,fl[s]);this.reset()}addProtocol(e,t){this._protocols[e]=t}addEncoding(e,t){this._encodings[e]=t}get activeProtocol(){return this._activeProtocol}get areMouseEventsActive(){return this._protocols[this._activeProtocol].events!==0}set activeProtocol(e){if(!this._protocols[e])throw new Error(`unknown protocol "${e}"`);this._activeProtocol=e,this._onProtocolChange.fire(this._protocols[e].events)}get activeEncoding(){return this._activeEncoding}set activeEncoding(e){if(!this._encodings[e])throw new Error(`unknown encoding "${e}"`);this._activeEncoding=e}reset(){this.activeProtocol="NONE",this.activeEncoding="DEFAULT",this._lastEvent=null,this._wheelPartialScroll=0}consumeWheelEvent(e,t,i){if(e.deltaY===0||e.shiftKey||t===void 0||i===void 0)return 0;let s=t/i,r=this._applyScrollModifier(e.deltaY,e);return e.deltaMode===WheelEvent.DOM_DELTA_PIXEL?(r/=s+0,Math.abs(e.deltaY)<50&&(r*=.3),this._wheelPartialScroll+=r,r=Math.floor(Math.abs(this._wheelPartialScroll))*(this._wheelPartialScroll>0?1:-1),this._wheelPartialScroll%=1):e.deltaMode===WheelEvent.DOM_DELTA_PAGE&&(r*=this._bufferService.rows),r}_applyScrollModifier(e,t){return t.altKey||t.ctrlKey||t.shiftKey?e*this._optionsService.rawOptions.fastScrollSensitivity*this._optionsService.rawOptions.scrollSensitivity:e*this._optionsService.rawOptions.scrollSensitivity}triggerMouseEvent(e){if(e.col<0||e.col>=this._bufferService.cols||e.row<0||e.row>=this._bufferService.rows||e.button===4&&e.action===32||e.button===3&&e.action!==32||e.button!==4&&(e.action===2||e.action===3)||(e.col++,e.row++,e.action===32&&this._lastEvent&&this._equalEvents(this._lastEvent,e,this._activeEncoding==="SGR_PIXELS"))||!this._protocols[this._activeProtocol].restrict(e))return!1;let t=this._encodings[this._activeEncoding](e);return t&&(this._activeEncoding==="DEFAULT"?this._coreService.triggerBinaryEvent(t):this._coreService.triggerDataEvent(t,!0)),this._lastEvent=e,!0}explainEvents(e){return{down:!!(e&1),up:!!(e&2),drag:!!(e&4),move:!!(e&8),wheel:!!(e&16)}}_equalEvents(e,t,i){if(i){if(e.x!==t.x||e.y!==t.y)return!1}else if(e.col!==t.col||e.row!==t.row)return!1;return!(e.button!==t.button||e.action!==t.action||e.ctrl!==t.ctrl||e.alt!==t.alt||e.shift!==t.shift)}};Ho=Ye([te(0,Mt),te(1,bs),te(2,Lt)],Ho);var Wn=[[768,879],[1155,1158],[1160,1161],[1425,1469],[1471,1471],[1473,1474],[1476,1477],[1479,1479],[1536,1539],[1552,1557],[1611,1630],[1648,1648],[1750,1764],[1767,1768],[1770,1773],[1807,1807],[1809,1809],[1840,1866],[1958,1968],[2027,2035],[2305,2306],[2364,2364],[2369,2376],[2381,2381],[2385,2388],[2402,2403],[2433,2433],[2492,2492],[2497,2500],[2509,2509],[2530,2531],[2561,2562],[2620,2620],[2625,2626],[2631,2632],[2635,2637],[2672,2673],[2689,2690],[2748,2748],[2753,2757],[2759,2760],[2765,2765],[2786,2787],[2817,2817],[2876,2876],[2879,2879],[2881,2883],[2893,2893],[2902,2902],[2946,2946],[3008,3008],[3021,3021],[3134,3136],[3142,3144],[3146,3149],[3157,3158],[3260,3260],[3263,3263],[3270,3270],[3276,3277],[3298,3299],[3393,3395],[3405,3405],[3530,3530],[3538,3540],[3542,3542],[3633,3633],[3636,3642],[3655,3662],[3761,3761],[3764,3769],[3771,3772],[3784,3789],[3864,3865],[3893,3893],[3895,3895],[3897,3897],[3953,3966],[3968,3972],[3974,3975],[3984,3991],[3993,4028],[4038,4038],[4141,4144],[4146,4146],[4150,4151],[4153,4153],[4184,4185],[4448,4607],[4959,4959],[5906,5908],[5938,5940],[5970,5971],[6002,6003],[6068,6069],[6071,6077],[6086,6086],[6089,6099],[6109,6109],[6155,6157],[6313,6313],[6432,6434],[6439,6440],[6450,6450],[6457,6459],[6679,6680],[6912,6915],[6964,6964],[6966,6970],[6972,6972],[6978,6978],[7019,7027],[7616,7626],[7678,7679],[8203,8207],[8234,8238],[8288,8291],[8298,8303],[8400,8431],[12330,12335],[12441,12442],[43014,43014],[43019,43019],[43045,43046],[64286,64286],[65024,65039],[65056,65059],[65279,65279],[65529,65531]],lv=[[68097,68099],[68101,68102],[68108,68111],[68152,68154],[68159,68159],[119143,119145],[119155,119170],[119173,119179],[119210,119213],[119362,119364],[917505,917505],[917536,917631],[917760,917999]],nt;function hv(e,t){let i=0,s=t.length-1,r;if(et[s][1])return!1;for(;s>=i;)if(r=i+s>>1,e>t[r][1])i=r+1;else if(e=131072&&e<=196605||e>=196608&&e<=262141?2:1}charProperties(e,t){let i=this.wcwidth(e),s=i===0&&t!==0;if(s){let r=ns.extractWidth(t);r===0?s=!1:r>i&&(i=r)}return ns.createPropertyValue(0,i,s)}},ns=class Yr{constructor(){this._providers=Object.create(null),this._active="",this._onChange=new Y,this.onChange=this._onChange.event;let t=new cv;this.register(t),this._active=t.version,this._activeProvider=t}static extractShouldJoin(t){return(t&1)!==0}static extractWidth(t){return t>>1&3}static extractCharKind(t){return t>>3}static createPropertyValue(t,i,s=!1){return(t&16777215)<<3|(i&3)<<1|(s?1:0)}dispose(){this._onChange.dispose()}get versions(){return Object.keys(this._providers)}get activeVersion(){return this._active}set activeVersion(t){if(!this._providers[t])throw new Error(`unknown Unicode version "${t}"`);this._active=t,this._activeProvider=this._providers[t],this._onChange.fire(t)}register(t){this._providers[t.version]=t}wcwidth(t){return this._activeProvider.wcwidth(t)}getStringCellWidth(t){let i=0,s=0,r=t.length;for(let n=0;n=r)return i+this.wcwidth(a);let l=t.charCodeAt(n);56320<=l&&l<=57343?a=(a-55296)*1024+l-56320+65536:i+=this.wcwidth(l)}let o=this.charProperties(a,s),h=Yr.extractWidth(o);Yr.extractShouldJoin(o)&&(h-=Yr.extractWidth(s)),i+=h,s=o}return i}charProperties(t,i){return this._activeProvider.charProperties(t,i)}},dv=class{constructor(){this.glevel=0,this._charsets=[]}reset(){this.charset=void 0,this._charsets=[],this.glevel=0}setgLevel(e){this.glevel=e,this.charset=this._charsets[e]}setgCharset(e,t){this._charsets[e]=t,this.glevel===e&&(this.charset=t)}};function vl(e){var s;let t=(s=e.buffer.lines.get(e.buffer.ybase+e.buffer.y-1))==null?void 0:s.get(e.cols-1),i=e.buffer.lines.get(e.buffer.ybase+e.buffer.y);i&&t&&(i.isWrapped=t[3]!==0&&t[3]!==32)}var Ks=2147483647,uv=256,pc=class Wo{constructor(t=32,i=32){if(this.maxLength=t,this.maxSubParamsLength=i,i>uv)throw new Error("maxSubParamsLength must not be greater than 256");this.params=new Int32Array(t),this.length=0,this._subParams=new Int32Array(i),this._subParamsLength=0,this._subParamsIdx=new Uint16Array(t),this._rejectDigits=!1,this._rejectSubDigits=!1,this._digitIsSub=!1}static fromArray(t){let i=new Wo;if(!t.length)return i;for(let s=Array.isArray(t[0])?1:0;s>8,r=this._subParamsIdx[i]&255;r-s>0&&t.push(Array.prototype.slice.call(this._subParams,s,r))}return t}reset(){this.length=0,this._subParamsLength=0,this._rejectDigits=!1,this._rejectSubDigits=!1,this._digitIsSub=!1}addParam(t){if(this._digitIsSub=!1,this.length>=this.maxLength){this._rejectDigits=!0;return}if(t<-1)throw new Error("values lesser than -1 are not allowed");this._subParamsIdx[this.length]=this._subParamsLength<<8|this._subParamsLength,this.params[this.length++]=t>Ks?Ks:t}addSubParam(t){if(this._digitIsSub=!0,!!this.length){if(this._rejectDigits||this._subParamsLength>=this.maxSubParamsLength){this._rejectSubDigits=!0;return}if(t<-1)throw new Error("values lesser than -1 are not allowed");this._subParams[this._subParamsLength++]=t>Ks?Ks:t,this._subParamsIdx[this.length-1]++}}hasSubParams(t){return(this._subParamsIdx[t]&255)-(this._subParamsIdx[t]>>8)>0}getSubParams(t){let i=this._subParamsIdx[t]>>8,s=this._subParamsIdx[t]&255;return s-i>0?this._subParams.subarray(i,s):null}getSubParamsAll(){let t={};for(let i=0;i>8,r=this._subParamsIdx[i]&255;r-s>0&&(t[i]=this._subParams.slice(s,r))}return t}addDigit(t){let i;if(this._rejectDigits||!(i=this._digitIsSub?this._subParamsLength:this.length)||this._digitIsSub&&this._rejectSubDigits)return;let s=this._digitIsSub?this._subParams:this.params,r=s[i-1];s[i-1]=~r?Math.min(r*10+t,Ks):t}},Js=[],_v=class{constructor(){this._state=0,this._active=Js,this._id=-1,this._handlers=Object.create(null),this._handlerFb=()=>{},this._stack={paused:!1,loopPosition:0,fallThrough:!1}}registerHandler(e,t){this._handlers[e]===void 0&&(this._handlers[e]=[]);let i=this._handlers[e];return i.push(t),{dispose:()=>{let s=i.indexOf(t);s!==-1&&i.splice(s,1)}}}clearHandler(e){this._handlers[e]&&delete this._handlers[e]}setHandlerFallback(e){this._handlerFb=e}dispose(){this._handlers=Object.create(null),this._handlerFb=()=>{},this._active=Js}reset(){if(this._state===2)for(let e=this._stack.paused?this._stack.loopPosition-1:this._active.length-1;e>=0;--e)this._active[e].end(!1);this._stack.paused=!1,this._active=Js,this._id=-1,this._state=0}_start(){if(this._active=this._handlers[this._id]||Js,!this._active.length)this._handlerFb(this._id,"START");else for(let e=this._active.length-1;e>=0;e--)this._active[e].start()}_put(e,t,i){if(!this._active.length)this._handlerFb(this._id,"PUT",An(e,t,i));else for(let s=this._active.length-1;s>=0;s--)this._active[s].put(e,t,i)}start(){this.reset(),this._state=1}put(e,t,i){if(this._state!==3){if(this._state===1)for(;t0&&this._put(e,t,i)}}end(e,t=!0){if(this._state!==0){if(this._state!==3)if(this._state===1&&this._start(),!this._active.length)this._handlerFb(this._id,"END",e);else{let i=!1,s=this._active.length-1,r=!1;if(this._stack.paused&&(s=this._stack.loopPosition-1,i=t,r=this._stack.fallThrough,this._stack.paused=!1),!r&&i===!1){for(;s>=0&&(i=this._active[s].end(e),i!==!0);s--)if(i instanceof Promise)return this._stack.paused=!0,this._stack.loopPosition=s,this._stack.fallThrough=!1,i;s--}for(;s>=0;s--)if(i=this._active[s].end(!1),i instanceof Promise)return this._stack.paused=!0,this._stack.loopPosition=s,this._stack.fallThrough=!0,i}this._active=Js,this._id=-1,this._state=0}}},Ht=class{constructor(t){this._handler=t,this._data="",this._hitLimit=!1}start(){this._data="",this._hitLimit=!1}put(t,i,s){this._hitLimit||(this._data+=An(t,i,s),this._data.length>1e7&&(this._data="",this._hitLimit=!0))}end(t){let i=!1;if(this._hitLimit)i=!1;else if(t&&(i=this._handler(this._data),i instanceof Promise))return i.then(s=>(this._data="",this._hitLimit=!1,s));return this._data="",this._hitLimit=!1,i}},js=[],fv=class{constructor(){this._handlers=Object.create(null),this._active=js,this._ident=0,this._handlerFb=()=>{},this._stack={paused:!1,loopPosition:0,fallThrough:!1}}dispose(){this._handlers=Object.create(null),this._handlerFb=()=>{},this._active=js}registerHandler(e,t){this._handlers[e]===void 0&&(this._handlers[e]=[]);let i=this._handlers[e];return i.push(t),{dispose:()=>{let s=i.indexOf(t);s!==-1&&i.splice(s,1)}}}clearHandler(e){this._handlers[e]&&delete this._handlers[e]}setHandlerFallback(e){this._handlerFb=e}reset(){if(this._active.length)for(let e=this._stack.paused?this._stack.loopPosition-1:this._active.length-1;e>=0;--e)this._active[e].unhook(!1);this._stack.paused=!1,this._active=js,this._ident=0}hook(e,t){if(this.reset(),this._ident=e,this._active=this._handlers[e]||js,!this._active.length)this._handlerFb(this._ident,"HOOK",t);else for(let i=this._active.length-1;i>=0;i--)this._active[i].hook(t)}put(e,t,i){if(!this._active.length)this._handlerFb(this._ident,"PUT",An(e,t,i));else for(let s=this._active.length-1;s>=0;s--)this._active[s].put(e,t,i)}unhook(e,t=!0){if(!this._active.length)this._handlerFb(this._ident,"UNHOOK",e);else{let i=!1,s=this._active.length-1,r=!1;if(this._stack.paused&&(s=this._stack.loopPosition-1,i=t,r=this._stack.fallThrough,this._stack.paused=!1),!r&&i===!1){for(;s>=0&&(i=this._active[s].unhook(e),i!==!0);s--)if(i instanceof Promise)return this._stack.paused=!0,this._stack.loopPosition=s,this._stack.fallThrough=!1,i;s--}for(;s>=0;s--)if(i=this._active[s].unhook(!1),i instanceof Promise)return this._stack.paused=!0,this._stack.loopPosition=s,this._stack.fallThrough=!0,i}this._active=js,this._ident=0}},rr=new pc;rr.addParam(0);var gl=class{constructor(e){this._handler=e,this._data="",this._params=rr,this._hitLimit=!1}hook(e){this._params=e.length>1||e.params[0]?e.clone():rr,this._data="",this._hitLimit=!1}put(e,t,i){this._hitLimit||(this._data+=An(e,t,i),this._data.length>1e7&&(this._data="",this._hitLimit=!0))}unhook(e){let t=!1;if(this._hitLimit)t=!1;else if(e&&(t=this._handler(this._data,this._params),t instanceof Promise))return t.then(i=>(this._params=rr,this._data="",this._hitLimit=!1,i));return this._params=rr,this._data="",this._hitLimit=!1,t}},vv=class{constructor(e){this.table=new Uint8Array(e)}setDefault(e,t){this.table.fill(e<<4|t)}add(e,t,i,s){this.table[t<<8|e]=i<<4|s}addMany(e,t,i,s){for(let r=0;rh),i=(o,h)=>t.slice(o,h),s=i(32,127),r=i(0,24);r.push(25),r.push.apply(r,i(28,32));let n=i(0,14),a;e.setDefault(1,0),e.addMany(s,0,2,0);for(a in n)e.addMany([24,26,153,154],a,3,0),e.addMany(i(128,144),a,3,0),e.addMany(i(144,152),a,3,0),e.add(156,a,0,0),e.add(27,a,11,1),e.add(157,a,4,8),e.addMany([152,158,159],a,0,7),e.add(155,a,11,3),e.add(144,a,11,9);return e.addMany(r,0,3,0),e.addMany(r,1,3,1),e.add(127,1,0,1),e.addMany(r,8,0,8),e.addMany(r,3,3,3),e.add(127,3,0,3),e.addMany(r,4,3,4),e.add(127,4,0,4),e.addMany(r,6,3,6),e.addMany(r,5,3,5),e.add(127,5,0,5),e.addMany(r,2,3,2),e.add(127,2,0,2),e.add(93,1,4,8),e.addMany(s,8,5,8),e.add(127,8,5,8),e.addMany([156,27,24,26,7],8,6,0),e.addMany(i(28,32),8,0,8),e.addMany([88,94,95],1,0,7),e.addMany(s,7,0,7),e.addMany(r,7,0,7),e.add(156,7,0,0),e.add(127,7,0,7),e.add(91,1,11,3),e.addMany(i(64,127),3,7,0),e.addMany(i(48,60),3,8,4),e.addMany([60,61,62,63],3,9,4),e.addMany(i(48,60),4,8,4),e.addMany(i(64,127),4,7,0),e.addMany([60,61,62,63],4,0,6),e.addMany(i(32,64),6,0,6),e.add(127,6,0,6),e.addMany(i(64,127),6,0,0),e.addMany(i(32,48),3,9,5),e.addMany(i(32,48),5,9,5),e.addMany(i(48,64),5,0,6),e.addMany(i(64,127),5,7,0),e.addMany(i(32,48),4,9,5),e.addMany(i(32,48),1,9,2),e.addMany(i(32,48),2,9,2),e.addMany(i(48,127),2,10,0),e.addMany(i(48,80),1,10,0),e.addMany(i(81,88),1,10,0),e.addMany([89,90,92],1,10,0),e.addMany(i(96,127),1,10,0),e.add(80,1,11,9),e.addMany(r,9,0,9),e.add(127,9,0,9),e.addMany(i(28,32),9,0,9),e.addMany(i(32,48),9,9,12),e.addMany(i(48,60),9,8,10),e.addMany([60,61,62,63],9,9,10),e.addMany(r,11,0,11),e.addMany(i(32,128),11,0,11),e.addMany(i(28,32),11,0,11),e.addMany(r,10,0,10),e.add(127,10,0,10),e.addMany(i(28,32),10,0,10),e.addMany(i(48,60),10,8,10),e.addMany([60,61,62,63],10,0,11),e.addMany(i(32,48),10,9,12),e.addMany(r,12,0,12),e.add(127,12,0,12),e.addMany(i(28,32),12,0,12),e.addMany(i(32,48),12,9,12),e.addMany(i(48,64),12,0,11),e.addMany(i(64,127),12,12,13),e.addMany(i(64,127),10,12,13),e.addMany(i(64,127),9,12,13),e.addMany(r,13,13,13),e.addMany(s,13,13,13),e.add(127,13,0,13),e.addMany([27,156,24,26],13,14,0),e.add(si,0,2,0),e.add(si,8,5,8),e.add(si,6,0,6),e.add(si,11,0,11),e.add(si,13,13,13),e})(),pv=class extends ke{constructor(e=gv){super(),this._transitions=e,this._parseStack={state:0,handlers:[],handlerPos:0,transition:0,chunkPos:0},this.initialState=0,this.currentState=this.initialState,this._params=new pc,this._params.addParam(0),this._collect=0,this.precedingJoinState=0,this._printHandlerFb=(t,i,s)=>{},this._executeHandlerFb=t=>{},this._csiHandlerFb=(t,i)=>{},this._escHandlerFb=t=>{},this._errorHandlerFb=t=>t,this._printHandler=this._printHandlerFb,this._executeHandlers=Object.create(null),this._csiHandlers=Object.create(null),this._escHandlers=Object.create(null),this._register($e(()=>{this._csiHandlers=Object.create(null),this._executeHandlers=Object.create(null),this._escHandlers=Object.create(null)})),this._oscParser=this._register(new _v),this._dcsParser=this._register(new fv),this._errorHandler=this._errorHandlerFb,this.registerEscHandler({final:"\\"},()=>!0)}_identifier(e,t=[64,126]){let i=0;if(e.prefix){if(e.prefix.length>1)throw new Error("only one byte as prefix supported");if(i=e.prefix.charCodeAt(0),i&&60>i||i>63)throw new Error("prefix must be in range 0x3c .. 0x3f")}if(e.intermediates){if(e.intermediates.length>2)throw new Error("only two bytes as intermediates are supported");for(let r=0;rn||n>47)throw new Error("intermediate must be in range 0x20 .. 0x2f");i<<=8,i|=n}}if(e.final.length!==1)throw new Error("final must be a single byte");let s=e.final.charCodeAt(0);if(t[0]>s||s>t[1])throw new Error(`final must be in range ${t[0]} .. ${t[1]}`);return i<<=8,i|=s,i}identToString(e){let t=[];for(;e;)t.push(String.fromCharCode(e&255)),e>>=8;return t.reverse().join("")}setPrintHandler(e){this._printHandler=e}clearPrintHandler(){this._printHandler=this._printHandlerFb}registerEscHandler(e,t){let i=this._identifier(e,[48,126]);this._escHandlers[i]===void 0&&(this._escHandlers[i]=[]);let s=this._escHandlers[i];return s.push(t),{dispose:()=>{let r=s.indexOf(t);r!==-1&&s.splice(r,1)}}}clearEscHandler(e){this._escHandlers[this._identifier(e,[48,126])]&&delete this._escHandlers[this._identifier(e,[48,126])]}setEscHandlerFallback(e){this._escHandlerFb=e}setExecuteHandler(e,t){this._executeHandlers[e.charCodeAt(0)]=t}clearExecuteHandler(e){this._executeHandlers[e.charCodeAt(0)]&&delete this._executeHandlers[e.charCodeAt(0)]}setExecuteHandlerFallback(e){this._executeHandlerFb=e}registerCsiHandler(e,t){let i=this._identifier(e);this._csiHandlers[i]===void 0&&(this._csiHandlers[i]=[]);let s=this._csiHandlers[i];return s.push(t),{dispose:()=>{let r=s.indexOf(t);r!==-1&&s.splice(r,1)}}}clearCsiHandler(e){this._csiHandlers[this._identifier(e)]&&delete this._csiHandlers[this._identifier(e)]}setCsiHandlerFallback(e){this._csiHandlerFb=e}registerDcsHandler(e,t){return this._dcsParser.registerHandler(this._identifier(e),t)}clearDcsHandler(e){this._dcsParser.clearHandler(this._identifier(e))}setDcsHandlerFallback(e){this._dcsParser.setHandlerFallback(e)}registerOscHandler(e,t){return this._oscParser.registerHandler(e,t)}clearOscHandler(e){this._oscParser.clearHandler(e)}setOscHandlerFallback(e){this._oscParser.setHandlerFallback(e)}setErrorHandler(e){this._errorHandler=e}clearErrorHandler(){this._errorHandler=this._errorHandlerFb}reset(){this.currentState=this.initialState,this._oscParser.reset(),this._dcsParser.reset(),this._params.reset(),this._params.addParam(0),this._collect=0,this.precedingJoinState=0,this._parseStack.state!==0&&(this._parseStack.state=2,this._parseStack.handlers=[])}_preserveStack(e,t,i,s,r){this._parseStack.state=e,this._parseStack.handlers=t,this._parseStack.handlerPos=i,this._parseStack.transition=s,this._parseStack.chunkPos=r}parse(e,t,i){let s=0,r=0,n=0,a;if(this._parseStack.state)if(this._parseStack.state===2)this._parseStack.state=0,n=this._parseStack.chunkPos+1;else{if(i===void 0||this._parseStack.state===1)throw this._parseStack.state=1,new Error("improper continuation due to previous async handler, giving up parsing");let o=this._parseStack.handlers,h=this._parseStack.handlerPos-1;switch(this._parseStack.state){case 3:if(i===!1&&h>-1){for(;h>=0&&(a=o[h](this._params),a!==!0);h--)if(a instanceof Promise)return this._parseStack.handlerPos=h,a}this._parseStack.handlers=[];break;case 4:if(i===!1&&h>-1){for(;h>=0&&(a=o[h](),a!==!0);h--)if(a instanceof Promise)return this._parseStack.handlerPos=h,a}this._parseStack.handlers=[];break;case 6:if(s=e[this._parseStack.chunkPos],a=this._dcsParser.unhook(s!==24&&s!==26,i),a)return a;s===27&&(this._parseStack.transition|=1),this._params.reset(),this._params.addParam(0),this._collect=0;break;case 5:if(s=e[this._parseStack.chunkPos],a=this._oscParser.end(s!==24&&s!==26,i),a)return a;s===27&&(this._parseStack.transition|=1),this._params.reset(),this._params.addParam(0),this._collect=0;break}this._parseStack.state=0,n=this._parseStack.chunkPos+1,this.precedingJoinState=0,this.currentState=this._parseStack.transition&15}for(let o=n;o>4){case 2:for(let v=o+1;;++v){if(v>=t||(s=e[v])<32||s>126&&s=t||(s=e[v])<32||s>126&&s=t||(s=e[v])<32||s>126&&s=t||(s=e[v])<32||s>126&&s=0&&(a=h[l](this._params),a!==!0);l--)if(a instanceof Promise)return this._preserveStack(3,h,l,r,o),a;l<0&&this._csiHandlerFb(this._collect<<8|s,this._params),this.precedingJoinState=0;break;case 8:do switch(s){case 59:this._params.addParam(0);break;case 58:this._params.addSubParam(-1);break;default:this._params.addDigit(s-48)}while(++o47&&s<60);o--;break;case 9:this._collect<<=8,this._collect|=s;break;case 10:let c=this._escHandlers[this._collect<<8|s],d=c?c.length-1:-1;for(;d>=0&&(a=c[d](),a!==!0);d--)if(a instanceof Promise)return this._preserveStack(4,c,d,r,o),a;d<0&&this._escHandlerFb(this._collect<<8|s),this.precedingJoinState=0;break;case 11:this._params.reset(),this._params.addParam(0),this._collect=0;break;case 12:this._dcsParser.hook(this._collect<<8|s,this._params);break;case 13:for(let v=o+1;;++v)if(v>=t||(s=e[v])===24||s===26||s===27||s>127&&s=t||(s=e[v])<32||s>127&&s>4:n>>8}return s}}function zn(e,t){let i=e.toString(16),s=i.length<2?"0"+i:i;switch(t){case 4:return i[0];case 8:return s;case 12:return(s+s).slice(0,3);default:return s+s}}function wv(e,t=16){let[i,s,r]=e;return`rgb:${zn(i,t)}/${zn(s,t)}/${zn(r,t)}`}var Cv={"(":0,")":1,"*":2,"+":3,"-":1,".":2},Ui=131072,ml=10;function Al(e,t){if(e>24)return t.setWinLines||!1;switch(e){case 1:return!!t.restoreWin;case 2:return!!t.minimizeWin;case 3:return!!t.setWinPosition;case 4:return!!t.setWinSizePixels;case 5:return!!t.raiseWin;case 6:return!!t.lowerWin;case 7:return!!t.refreshWin;case 8:return!!t.setWinSizeChars;case 9:return!!t.maximizeWin;case 10:return!!t.fullscreenWin;case 11:return!!t.getWinState;case 13:return!!t.getWinPosition;case 14:return!!t.getWinSizePixels;case 15:return!!t.getScreenSizePixels;case 16:return!!t.getCellSizePixels;case 18:return!!t.getWinSizeChars;case 19:return!!t.getScreenSizeChars;case 20:return!!t.getIconTitle;case 21:return!!t.getWinTitle;case 22:return!!t.pushTitle;case 23:return!!t.popTitle;case 24:return!!t.setWinLines}return!1}var wl=5e3,Cl=0,bv=class extends ke{constructor(e,t,i,s,r,n,a,o,h=new pv){super(),this._bufferService=e,this._charsetService=t,this._coreService=i,this._logService=s,this._optionsService=r,this._oscLinkService=n,this._coreMouseService=a,this._unicodeService=o,this._parser=h,this._parseBuffer=new Uint32Array(4096),this._stringDecoder=new Hu,this._utf8Decoder=new Wu,this._windowTitle="",this._iconName="",this._windowTitleStack=[],this._iconNameStack=[],this._curAttrData=et.clone(),this._eraseAttrDataInternal=et.clone(),this._onRequestBell=this._register(new Y),this.onRequestBell=this._onRequestBell.event,this._onRequestRefreshRows=this._register(new Y),this.onRequestRefreshRows=this._onRequestRefreshRows.event,this._onRequestReset=this._register(new Y),this.onRequestReset=this._onRequestReset.event,this._onRequestSendFocus=this._register(new Y),this.onRequestSendFocus=this._onRequestSendFocus.event,this._onRequestSyncScrollBar=this._register(new Y),this.onRequestSyncScrollBar=this._onRequestSyncScrollBar.event,this._onRequestWindowsOptionsReport=this._register(new Y),this.onRequestWindowsOptionsReport=this._onRequestWindowsOptionsReport.event,this._onA11yChar=this._register(new Y),this.onA11yChar=this._onA11yChar.event,this._onA11yTab=this._register(new Y),this.onA11yTab=this._onA11yTab.event,this._onCursorMove=this._register(new Y),this.onCursorMove=this._onCursorMove.event,this._onLineFeed=this._register(new Y),this.onLineFeed=this._onLineFeed.event,this._onScroll=this._register(new Y),this.onScroll=this._onScroll.event,this._onTitleChange=this._register(new Y),this.onTitleChange=this._onTitleChange.event,this._onColor=this._register(new Y),this.onColor=this._onColor.event,this._parseStack={paused:!1,cursorStartX:0,cursorStartY:0,decodedLength:0,position:0},this._specialColors=[256,257,258],this._register(this._parser),this._dirtyRowTracker=new zo(this._bufferService),this._activeBuffer=this._bufferService.buffer,this._register(this._bufferService.buffers.onBufferActivate(l=>this._activeBuffer=l.activeBuffer)),this._parser.setCsiHandlerFallback((l,c)=>{this._logService.debug("Unknown CSI code: ",{identifier:this._parser.identToString(l),params:c.toArray()})}),this._parser.setEscHandlerFallback(l=>{this._logService.debug("Unknown ESC code: ",{identifier:this._parser.identToString(l)})}),this._parser.setExecuteHandlerFallback(l=>{this._logService.debug("Unknown EXECUTE code: ",{code:l})}),this._parser.setOscHandlerFallback((l,c,d)=>{this._logService.debug("Unknown OSC code: ",{identifier:l,action:c,data:d})}),this._parser.setDcsHandlerFallback((l,c,d)=>{c==="HOOK"&&(d=d.toArray()),this._logService.debug("Unknown DCS code: ",{identifier:this._parser.identToString(l),action:c,payload:d})}),this._parser.setPrintHandler((l,c,d)=>this.print(l,c,d)),this._parser.registerCsiHandler({final:"@"},l=>this.insertChars(l)),this._parser.registerCsiHandler({intermediates:" ",final:"@"},l=>this.scrollLeft(l)),this._parser.registerCsiHandler({final:"A"},l=>this.cursorUp(l)),this._parser.registerCsiHandler({intermediates:" ",final:"A"},l=>this.scrollRight(l)),this._parser.registerCsiHandler({final:"B"},l=>this.cursorDown(l)),this._parser.registerCsiHandler({final:"C"},l=>this.cursorForward(l)),this._parser.registerCsiHandler({final:"D"},l=>this.cursorBackward(l)),this._parser.registerCsiHandler({final:"E"},l=>this.cursorNextLine(l)),this._parser.registerCsiHandler({final:"F"},l=>this.cursorPrecedingLine(l)),this._parser.registerCsiHandler({final:"G"},l=>this.cursorCharAbsolute(l)),this._parser.registerCsiHandler({final:"H"},l=>this.cursorPosition(l)),this._parser.registerCsiHandler({final:"I"},l=>this.cursorForwardTab(l)),this._parser.registerCsiHandler({final:"J"},l=>this.eraseInDisplay(l,!1)),this._parser.registerCsiHandler({prefix:"?",final:"J"},l=>this.eraseInDisplay(l,!0)),this._parser.registerCsiHandler({final:"K"},l=>this.eraseInLine(l,!1)),this._parser.registerCsiHandler({prefix:"?",final:"K"},l=>this.eraseInLine(l,!0)),this._parser.registerCsiHandler({final:"L"},l=>this.insertLines(l)),this._parser.registerCsiHandler({final:"M"},l=>this.deleteLines(l)),this._parser.registerCsiHandler({final:"P"},l=>this.deleteChars(l)),this._parser.registerCsiHandler({final:"S"},l=>this.scrollUp(l)),this._parser.registerCsiHandler({final:"T"},l=>this.scrollDown(l)),this._parser.registerCsiHandler({final:"X"},l=>this.eraseChars(l)),this._parser.registerCsiHandler({final:"Z"},l=>this.cursorBackwardTab(l)),this._parser.registerCsiHandler({final:"`"},l=>this.charPosAbsolute(l)),this._parser.registerCsiHandler({final:"a"},l=>this.hPositionRelative(l)),this._parser.registerCsiHandler({final:"b"},l=>this.repeatPrecedingCharacter(l)),this._parser.registerCsiHandler({final:"c"},l=>this.sendDeviceAttributesPrimary(l)),this._parser.registerCsiHandler({prefix:">",final:"c"},l=>this.sendDeviceAttributesSecondary(l)),this._parser.registerCsiHandler({final:"d"},l=>this.linePosAbsolute(l)),this._parser.registerCsiHandler({final:"e"},l=>this.vPositionRelative(l)),this._parser.registerCsiHandler({final:"f"},l=>this.hVPosition(l)),this._parser.registerCsiHandler({final:"g"},l=>this.tabClear(l)),this._parser.registerCsiHandler({final:"h"},l=>this.setMode(l)),this._parser.registerCsiHandler({prefix:"?",final:"h"},l=>this.setModePrivate(l)),this._parser.registerCsiHandler({final:"l"},l=>this.resetMode(l)),this._parser.registerCsiHandler({prefix:"?",final:"l"},l=>this.resetModePrivate(l)),this._parser.registerCsiHandler({final:"m"},l=>this.charAttributes(l)),this._parser.registerCsiHandler({final:"n"},l=>this.deviceStatus(l)),this._parser.registerCsiHandler({prefix:"?",final:"n"},l=>this.deviceStatusPrivate(l)),this._parser.registerCsiHandler({intermediates:"!",final:"p"},l=>this.softReset(l)),this._parser.registerCsiHandler({intermediates:" ",final:"q"},l=>this.setCursorStyle(l)),this._parser.registerCsiHandler({final:"r"},l=>this.setScrollRegion(l)),this._parser.registerCsiHandler({final:"s"},l=>this.saveCursor(l)),this._parser.registerCsiHandler({final:"t"},l=>this.windowOptions(l)),this._parser.registerCsiHandler({final:"u"},l=>this.restoreCursor(l)),this._parser.registerCsiHandler({intermediates:"'",final:"}"},l=>this.insertColumns(l)),this._parser.registerCsiHandler({intermediates:"'",final:"~"},l=>this.deleteColumns(l)),this._parser.registerCsiHandler({intermediates:'"',final:"q"},l=>this.selectProtected(l)),this._parser.registerCsiHandler({intermediates:"$",final:"p"},l=>this.requestMode(l,!0)),this._parser.registerCsiHandler({prefix:"?",intermediates:"$",final:"p"},l=>this.requestMode(l,!1)),this._parser.setExecuteHandler(q.BEL,()=>this.bell()),this._parser.setExecuteHandler(q.LF,()=>this.lineFeed()),this._parser.setExecuteHandler(q.VT,()=>this.lineFeed()),this._parser.setExecuteHandler(q.FF,()=>this.lineFeed()),this._parser.setExecuteHandler(q.CR,()=>this.carriageReturn()),this._parser.setExecuteHandler(q.BS,()=>this.backspace()),this._parser.setExecuteHandler(q.HT,()=>this.tab()),this._parser.setExecuteHandler(q.SO,()=>this.shiftOut()),this._parser.setExecuteHandler(q.SI,()=>this.shiftIn()),this._parser.setExecuteHandler(Jr.IND,()=>this.index()),this._parser.setExecuteHandler(Jr.NEL,()=>this.nextLine()),this._parser.setExecuteHandler(Jr.HTS,()=>this.tabSet()),this._parser.registerOscHandler(0,new Ht(l=>(this.setTitle(l),this.setIconName(l),!0))),this._parser.registerOscHandler(1,new Ht(l=>this.setIconName(l))),this._parser.registerOscHandler(2,new Ht(l=>this.setTitle(l))),this._parser.registerOscHandler(4,new Ht(l=>this.setOrReportIndexedColor(l))),this._parser.registerOscHandler(8,new Ht(l=>this.setHyperlink(l))),this._parser.registerOscHandler(10,new Ht(l=>this.setOrReportFgColor(l))),this._parser.registerOscHandler(11,new Ht(l=>this.setOrReportBgColor(l))),this._parser.registerOscHandler(12,new Ht(l=>this.setOrReportCursorColor(l))),this._parser.registerOscHandler(104,new Ht(l=>this.restoreIndexedColor(l))),this._parser.registerOscHandler(110,new Ht(l=>this.restoreFgColor(l))),this._parser.registerOscHandler(111,new Ht(l=>this.restoreBgColor(l))),this._parser.registerOscHandler(112,new Ht(l=>this.restoreCursorColor(l))),this._parser.registerEscHandler({final:"7"},()=>this.saveCursor()),this._parser.registerEscHandler({final:"8"},()=>this.restoreCursor()),this._parser.registerEscHandler({final:"D"},()=>this.index()),this._parser.registerEscHandler({final:"E"},()=>this.nextLine()),this._parser.registerEscHandler({final:"H"},()=>this.tabSet()),this._parser.registerEscHandler({final:"M"},()=>this.reverseIndex()),this._parser.registerEscHandler({final:"="},()=>this.keypadApplicationMode()),this._parser.registerEscHandler({final:">"},()=>this.keypadNumericMode()),this._parser.registerEscHandler({final:"c"},()=>this.fullReset()),this._parser.registerEscHandler({final:"n"},()=>this.setgLevel(2)),this._parser.registerEscHandler({final:"o"},()=>this.setgLevel(3)),this._parser.registerEscHandler({final:"|"},()=>this.setgLevel(3)),this._parser.registerEscHandler({final:"}"},()=>this.setgLevel(2)),this._parser.registerEscHandler({final:"~"},()=>this.setgLevel(1)),this._parser.registerEscHandler({intermediates:"%",final:"@"},()=>this.selectDefaultCharset()),this._parser.registerEscHandler({intermediates:"%",final:"G"},()=>this.selectDefaultCharset());for(let l in lt)this._parser.registerEscHandler({intermediates:"(",final:l},()=>this.selectCharset("("+l)),this._parser.registerEscHandler({intermediates:")",final:l},()=>this.selectCharset(")"+l)),this._parser.registerEscHandler({intermediates:"*",final:l},()=>this.selectCharset("*"+l)),this._parser.registerEscHandler({intermediates:"+",final:l},()=>this.selectCharset("+"+l)),this._parser.registerEscHandler({intermediates:"-",final:l},()=>this.selectCharset("-"+l)),this._parser.registerEscHandler({intermediates:".",final:l},()=>this.selectCharset("."+l)),this._parser.registerEscHandler({intermediates:"/",final:l},()=>this.selectCharset("/"+l));this._parser.registerEscHandler({intermediates:"#",final:"8"},()=>this.screenAlignmentPattern()),this._parser.setErrorHandler(l=>(this._logService.error("Parsing error: ",l),l)),this._parser.registerDcsHandler({intermediates:"$",final:"q"},new gl((l,c)=>this.requestStatusString(l,c)))}getAttrData(){return this._curAttrData}_preserveStack(e,t,i,s){this._parseStack.paused=!0,this._parseStack.cursorStartX=e,this._parseStack.cursorStartY=t,this._parseStack.decodedLength=i,this._parseStack.position=s}_logSlowResolvingAsync(e){this._logService.logLevel<=3&&Promise.race([e,new Promise((t,i)=>setTimeout(()=>i("#SLOW_TIMEOUT"),wl))]).catch(t=>{if(t!=="#SLOW_TIMEOUT")throw t;console.warn(`async parser handler taking longer than ${wl} ms`)})}_getCurrentLinkId(){return this._curAttrData.extended.urlId}parse(e,t){let i,s=this._activeBuffer.x,r=this._activeBuffer.y,n=0,a=this._parseStack.paused;if(a){if(i=this._parser.parse(this._parseBuffer,this._parseStack.decodedLength,t))return this._logSlowResolvingAsync(i),i;s=this._parseStack.cursorStartX,r=this._parseStack.cursorStartY,this._parseStack.paused=!1,e.length>Ui&&(n=this._parseStack.position+Ui)}if(this._logService.logLevel<=1&&this._logService.debug(`parsing data ${typeof e=="string"?` "${e}"`:` "${Array.prototype.map.call(e,l=>String.fromCharCode(l)).join("")}"`}`),this._logService.logLevel===0&&this._logService.trace("parsing data (codes)",typeof e=="string"?e.split("").map(l=>l.charCodeAt(0)):e),this._parseBuffer.lengthUi)for(let l=n;l0&&d.getWidth(this._activeBuffer.x-1)===2&&d.setCellFromCodepoint(this._activeBuffer.x-1,0,1,c);let v=this._parser.precedingJoinState;for(let u=t;uo){if(h){let A=d,x=this._activeBuffer.x-f;for(this._activeBuffer.x=f,this._activeBuffer.y++,this._activeBuffer.y===this._activeBuffer.scrollBottom+1?(this._activeBuffer.y--,this._bufferService.scroll(this._eraseAttrData(),!0)):(this._activeBuffer.y>=this._bufferService.rows&&(this._activeBuffer.y=this._bufferService.rows-1),this._activeBuffer.lines.get(this._activeBuffer.ybase+this._activeBuffer.y).isWrapped=!0),d=this._activeBuffer.lines.get(this._activeBuffer.ybase+this._activeBuffer.y),f>0&&d instanceof ir&&d.copyCellsFrom(A,x,0,f,!1);x=0;)d.setCellFromCodepoint(this._activeBuffer.x++,0,0,c);continue}if(l&&(d.insertCells(this._activeBuffer.x,r-f,this._activeBuffer.getNullCell(c)),d.getWidth(o-1)===2&&d.setCellFromCodepoint(o-1,0,1,c)),d.setCellFromCodepoint(this._activeBuffer.x++,s,r,c),r>0)for(;--r;)d.setCellFromCodepoint(this._activeBuffer.x++,0,0,c)}this._parser.precedingJoinState=v,this._activeBuffer.x0&&d.getWidth(this._activeBuffer.x)===0&&!d.hasContent(this._activeBuffer.x)&&d.setCellFromCodepoint(this._activeBuffer.x,0,1,c),this._dirtyRowTracker.markDirty(this._activeBuffer.y)}registerCsiHandler(e,t){return e.final==="t"&&!e.prefix&&!e.intermediates?this._parser.registerCsiHandler(e,i=>Al(i.params[0],this._optionsService.rawOptions.windowOptions)?t(i):!0):this._parser.registerCsiHandler(e,t)}registerDcsHandler(e,t){return this._parser.registerDcsHandler(e,new gl(t))}registerEscHandler(e,t){return this._parser.registerEscHandler(e,t)}registerOscHandler(e,t){return this._parser.registerOscHandler(e,new Ht(t))}bell(){return this._onRequestBell.fire(),!0}lineFeed(){return this._dirtyRowTracker.markDirty(this._activeBuffer.y),this._optionsService.rawOptions.convertEol&&(this._activeBuffer.x=0),this._activeBuffer.y++,this._activeBuffer.y===this._activeBuffer.scrollBottom+1?(this._activeBuffer.y--,this._bufferService.scroll(this._eraseAttrData())):this._activeBuffer.y>=this._bufferService.rows?this._activeBuffer.y=this._bufferService.rows-1:this._activeBuffer.lines.get(this._activeBuffer.ybase+this._activeBuffer.y).isWrapped=!1,this._activeBuffer.x>=this._bufferService.cols&&this._activeBuffer.x--,this._dirtyRowTracker.markDirty(this._activeBuffer.y),this._onLineFeed.fire(),!0}carriageReturn(){return this._activeBuffer.x=0,!0}backspace(){var e;if(!this._coreService.decPrivateModes.reverseWraparound)return this._restrictCursor(),this._activeBuffer.x>0&&this._activeBuffer.x--,!0;if(this._restrictCursor(this._bufferService.cols),this._activeBuffer.x>0)this._activeBuffer.x--;else if(this._activeBuffer.x===0&&this._activeBuffer.y>this._activeBuffer.scrollTop&&this._activeBuffer.y<=this._activeBuffer.scrollBottom&&((e=this._activeBuffer.lines.get(this._activeBuffer.ybase+this._activeBuffer.y))!=null&&e.isWrapped)){this._activeBuffer.lines.get(this._activeBuffer.ybase+this._activeBuffer.y).isWrapped=!1,this._activeBuffer.y--,this._activeBuffer.x=this._bufferService.cols-1;let t=this._activeBuffer.lines.get(this._activeBuffer.ybase+this._activeBuffer.y);t.hasWidth(this._activeBuffer.x)&&!t.hasContent(this._activeBuffer.x)&&this._activeBuffer.x--}return this._restrictCursor(),!0}tab(){if(this._activeBuffer.x>=this._bufferService.cols)return!0;let e=this._activeBuffer.x;return this._activeBuffer.x=this._activeBuffer.nextStop(),this._optionsService.rawOptions.screenReaderMode&&this._onA11yTab.fire(this._activeBuffer.x-e),!0}shiftOut(){return this._charsetService.setgLevel(1),!0}shiftIn(){return this._charsetService.setgLevel(0),!0}_restrictCursor(e=this._bufferService.cols-1){this._activeBuffer.x=Math.min(e,Math.max(0,this._activeBuffer.x)),this._activeBuffer.y=this._coreService.decPrivateModes.origin?Math.min(this._activeBuffer.scrollBottom,Math.max(this._activeBuffer.scrollTop,this._activeBuffer.y)):Math.min(this._bufferService.rows-1,Math.max(0,this._activeBuffer.y)),this._dirtyRowTracker.markDirty(this._activeBuffer.y)}_setCursor(e,t){this._dirtyRowTracker.markDirty(this._activeBuffer.y),this._coreService.decPrivateModes.origin?(this._activeBuffer.x=e,this._activeBuffer.y=this._activeBuffer.scrollTop+t):(this._activeBuffer.x=e,this._activeBuffer.y=t),this._restrictCursor(),this._dirtyRowTracker.markDirty(this._activeBuffer.y)}_moveCursor(e,t){this._restrictCursor(),this._setCursor(this._activeBuffer.x+e,this._activeBuffer.y+t)}cursorUp(e){let t=this._activeBuffer.y-this._activeBuffer.scrollTop;return t>=0?this._moveCursor(0,-Math.min(t,e.params[0]||1)):this._moveCursor(0,-(e.params[0]||1)),!0}cursorDown(e){let t=this._activeBuffer.scrollBottom-this._activeBuffer.y;return t>=0?this._moveCursor(0,Math.min(t,e.params[0]||1)):this._moveCursor(0,e.params[0]||1),!0}cursorForward(e){return this._moveCursor(e.params[0]||1,0),!0}cursorBackward(e){return this._moveCursor(-(e.params[0]||1),0),!0}cursorNextLine(e){return this.cursorDown(e),this._activeBuffer.x=0,!0}cursorPrecedingLine(e){return this.cursorUp(e),this._activeBuffer.x=0,!0}cursorCharAbsolute(e){return this._setCursor((e.params[0]||1)-1,this._activeBuffer.y),!0}cursorPosition(e){return this._setCursor(e.length>=2?(e.params[1]||1)-1:0,(e.params[0]||1)-1),!0}charPosAbsolute(e){return this._setCursor((e.params[0]||1)-1,this._activeBuffer.y),!0}hPositionRelative(e){return this._moveCursor(e.params[0]||1,0),!0}linePosAbsolute(e){return this._setCursor(this._activeBuffer.x,(e.params[0]||1)-1),!0}vPositionRelative(e){return this._moveCursor(0,e.params[0]||1),!0}hVPosition(e){return this.cursorPosition(e),!0}tabClear(e){let t=e.params[0];return t===0?delete this._activeBuffer.tabs[this._activeBuffer.x]:t===3&&(this._activeBuffer.tabs={}),!0}cursorForwardTab(e){if(this._activeBuffer.x>=this._bufferService.cols)return!0;let t=e.params[0]||1;for(;t--;)this._activeBuffer.x=this._activeBuffer.nextStop();return!0}cursorBackwardTab(e){if(this._activeBuffer.x>=this._bufferService.cols)return!0;let t=e.params[0]||1;for(;t--;)this._activeBuffer.x=this._activeBuffer.prevStop();return!0}selectProtected(e){let t=e.params[0];return t===1&&(this._curAttrData.bg|=536870912),(t===2||t===0)&&(this._curAttrData.bg&=-536870913),!0}_eraseInBufferLine(e,t,i,s=!1,r=!1){let n=this._activeBuffer.lines.get(this._activeBuffer.ybase+e);n.replaceCells(t,i,this._activeBuffer.getNullCell(this._eraseAttrData()),r),s&&(n.isWrapped=!1)}_resetBufferLine(e,t=!1){let i=this._activeBuffer.lines.get(this._activeBuffer.ybase+e);i&&(i.fill(this._activeBuffer.getNullCell(this._eraseAttrData()),t),this._bufferService.buffer.clearMarkers(this._activeBuffer.ybase+e),i.isWrapped=!1)}eraseInDisplay(e,t=!1){var s;this._restrictCursor(this._bufferService.cols);let i;switch(e.params[0]){case 0:for(i=this._activeBuffer.y,this._dirtyRowTracker.markDirty(i),this._eraseInBufferLine(i++,this._activeBuffer.x,this._bufferService.cols,this._activeBuffer.x===0,t);i=this._bufferService.cols&&(this._activeBuffer.lines.get(i+1).isWrapped=!1);i--;)this._resetBufferLine(i,t);this._dirtyRowTracker.markDirty(0);break;case 2:if(this._optionsService.rawOptions.scrollOnEraseInDisplay){for(i=this._bufferService.rows,this._dirtyRowTracker.markRangeDirty(0,i-1);i--&&!((s=this._activeBuffer.lines.get(this._activeBuffer.ybase+i))!=null&&s.getTrimmedLength()););for(;i>=0;i--)this._bufferService.scroll(this._eraseAttrData())}else{for(i=this._bufferService.rows,this._dirtyRowTracker.markDirty(i-1);i--;)this._resetBufferLine(i,t);this._dirtyRowTracker.markDirty(0)}break;case 3:let r=this._activeBuffer.lines.length-this._bufferService.rows;r>0&&(this._activeBuffer.lines.trimStart(r),this._activeBuffer.ybase=Math.max(this._activeBuffer.ybase-r,0),this._activeBuffer.ydisp=Math.max(this._activeBuffer.ydisp-r,0),this._onScroll.fire(0));break}return!0}eraseInLine(e,t=!1){switch(this._restrictCursor(this._bufferService.cols),e.params[0]){case 0:this._eraseInBufferLine(this._activeBuffer.y,this._activeBuffer.x,this._bufferService.cols,this._activeBuffer.x===0,t);break;case 1:this._eraseInBufferLine(this._activeBuffer.y,0,this._activeBuffer.x+1,!1,t);break;case 2:this._eraseInBufferLine(this._activeBuffer.y,0,this._bufferService.cols,!0,t);break}return this._dirtyRowTracker.markDirty(this._activeBuffer.y),!0}insertLines(e){this._restrictCursor();let t=e.params[0]||1;if(this._activeBuffer.y>this._activeBuffer.scrollBottom||this._activeBuffer.ythis._activeBuffer.scrollBottom||this._activeBuffer.ythis._activeBuffer.scrollBottom||this._activeBuffer.ythis._activeBuffer.scrollBottom||this._activeBuffer.ythis._activeBuffer.scrollBottom||this._activeBuffer.ythis._activeBuffer.scrollBottom||this._activeBuffer.y65535?2:1}let h=o;for(let l=1;l0||(this._is("xterm")||this._is("rxvt-unicode")||this._is("screen")?this._coreService.triggerDataEvent(q.ESC+"[?1;2c"):this._is("linux")&&this._coreService.triggerDataEvent(q.ESC+"[?6c")),!0}sendDeviceAttributesSecondary(e){return e.params[0]>0||(this._is("xterm")?this._coreService.triggerDataEvent(q.ESC+"[>0;276;0c"):this._is("rxvt-unicode")?this._coreService.triggerDataEvent(q.ESC+"[>85;95;0c"):this._is("linux")?this._coreService.triggerDataEvent(e.params[0]+"c"):this._is("screen")&&this._coreService.triggerDataEvent(q.ESC+"[>83;40003;0c")),!0}_is(e){return(this._optionsService.rawOptions.termName+"").indexOf(e)===0}setMode(e){for(let t=0;t(_[_.NOT_RECOGNIZED=0]="NOT_RECOGNIZED",_[_.SET=1]="SET",_[_.RESET=2]="RESET",_[_.PERMANENTLY_SET=3]="PERMANENTLY_SET",_[_.PERMANENTLY_RESET=4]="PERMANENTLY_RESET"))(void 0||(i={}));let s=this._coreService.decPrivateModes,{activeProtocol:r,activeEncoding:n}=this._coreMouseService,a=this._coreService,{buffers:o,cols:h}=this._bufferService,{active:l,alt:c}=o,d=this._optionsService.rawOptions,v=(_,f)=>(a.triggerDataEvent(`${q.ESC}[${t?"":"?"}${_};${f}$y`),!0),u=_=>_?1:2,g=e.params[0];return t?g===2?v(g,4):g===4?v(g,u(a.modes.insertMode)):g===12?v(g,3):g===20?v(g,u(d.convertEol)):v(g,0):g===1?v(g,u(s.applicationCursorKeys)):g===3?v(g,d.windowOptions.setWinLines?h===80?2:h===132?1:0:0):g===6?v(g,u(s.origin)):g===7?v(g,u(s.wraparound)):g===8?v(g,3):g===9?v(g,u(r==="X10")):g===12?v(g,u(d.cursorBlink)):g===25?v(g,u(!a.isCursorHidden)):g===45?v(g,u(s.reverseWraparound)):g===66?v(g,u(s.applicationKeypad)):g===67?v(g,4):g===1e3?v(g,u(r==="VT200")):g===1002?v(g,u(r==="DRAG")):g===1003?v(g,u(r==="ANY")):g===1004?v(g,u(s.sendFocus)):g===1005?v(g,4):g===1006?v(g,u(n==="SGR")):g===1015?v(g,4):g===1016?v(g,u(n==="SGR_PIXELS")):g===1048?v(g,1):g===47||g===1047||g===1049?v(g,u(l===c)):g===2004?v(g,u(s.bracketedPasteMode)):g===2026?v(g,u(s.synchronizedOutput)):v(g,0)}_updateAttrColor(e,t,i,s,r){return t===2?(e|=50331648,e&=-16777216,e|=Er.fromColorRGB([i,s,r])):t===5&&(e&=-50331904,e|=33554432|i&255),e}_extractColor(e,t,i){let s=[0,0,-1,0,0,0],r=0,n=0;do{if(s[n+r]=e.params[t+n],e.hasSubParams(t+n)){let a=e.getSubParams(t+n),o=0;do s[1]===5&&(r=1),s[n+o+1+r]=a[o];while(++o=2||s[1]===2&&n+r>=5)break;s[1]&&(r=1)}while(++n+t5)&&(e=1),t.extended.underlineStyle=e,t.fg|=268435456,e===0&&(t.fg&=-268435457),t.updateExtended()}_processSGR0(e){e.fg=et.fg,e.bg=et.bg,e.extended=e.extended.clone(),e.extended.underlineStyle=0,e.extended.underlineColor&=-67108864,e.updateExtended()}charAttributes(e){if(e.length===1&&e.params[0]===0)return this._processSGR0(this._curAttrData),!0;let t=e.length,i,s=this._curAttrData;for(let r=0;r=30&&i<=37?(s.fg&=-50331904,s.fg|=16777216|i-30):i>=40&&i<=47?(s.bg&=-50331904,s.bg|=16777216|i-40):i>=90&&i<=97?(s.fg&=-50331904,s.fg|=16777216|i-90|8):i>=100&&i<=107?(s.bg&=-50331904,s.bg|=16777216|i-100|8):i===0?this._processSGR0(s):i===1?s.fg|=134217728:i===3?s.bg|=67108864:i===4?(s.fg|=268435456,this._processUnderline(e.hasSubParams(r)?e.getSubParams(r)[0]:1,s)):i===5?s.fg|=536870912:i===7?s.fg|=67108864:i===8?s.fg|=1073741824:i===9?s.fg|=2147483648:i===2?s.bg|=134217728:i===21?this._processUnderline(2,s):i===22?(s.fg&=-134217729,s.bg&=-134217729):i===23?s.bg&=-67108865:i===24?(s.fg&=-268435457,this._processUnderline(0,s)):i===25?s.fg&=-536870913:i===27?s.fg&=-67108865:i===28?s.fg&=-1073741825:i===29?s.fg&=2147483647:i===39?(s.fg&=-67108864,s.fg|=et.fg&16777215):i===49?(s.bg&=-67108864,s.bg|=et.bg&16777215):i===38||i===48||i===58?r+=this._extractColor(e,r,s):i===53?s.bg|=1073741824:i===55?s.bg&=-1073741825:i===59?(s.extended=s.extended.clone(),s.extended.underlineColor=-1,s.updateExtended()):i===100?(s.fg&=-67108864,s.fg|=et.fg&16777215,s.bg&=-67108864,s.bg|=et.bg&16777215):this._logService.debug("Unknown SGR attribute: %d.",i);return!0}deviceStatus(e){switch(e.params[0]){case 5:this._coreService.triggerDataEvent(`${q.ESC}[0n`);break;case 6:let t=this._activeBuffer.y+1,i=this._activeBuffer.x+1;this._coreService.triggerDataEvent(`${q.ESC}[${t};${i}R`);break}return!0}deviceStatusPrivate(e){switch(e.params[0]){case 6:let t=this._activeBuffer.y+1,i=this._activeBuffer.x+1;this._coreService.triggerDataEvent(`${q.ESC}[?${t};${i}R`);break}return!0}softReset(e){return this._coreService.isCursorHidden=!1,this._onRequestSyncScrollBar.fire(),this._activeBuffer.scrollTop=0,this._activeBuffer.scrollBottom=this._bufferService.rows-1,this._curAttrData=et.clone(),this._coreService.reset(),this._charsetService.reset(),this._activeBuffer.savedX=0,this._activeBuffer.savedY=this._activeBuffer.ybase,this._activeBuffer.savedCurAttrData.fg=this._curAttrData.fg,this._activeBuffer.savedCurAttrData.bg=this._curAttrData.bg,this._activeBuffer.savedCharset=this._charsetService.charset,this._coreService.decPrivateModes.origin=!1,!0}setCursorStyle(e){let t=e.length===0?1:e.params[0];if(t===0)this._coreService.decPrivateModes.cursorStyle=void 0,this._coreService.decPrivateModes.cursorBlink=void 0;else{switch(t){case 1:case 2:this._coreService.decPrivateModes.cursorStyle="block";break;case 3:case 4:this._coreService.decPrivateModes.cursorStyle="underline";break;case 5:case 6:this._coreService.decPrivateModes.cursorStyle="bar";break}let i=t%2===1;this._coreService.decPrivateModes.cursorBlink=i}return!0}setScrollRegion(e){let t=e.params[0]||1,i;return(e.length<2||(i=e.params[1])>this._bufferService.rows||i===0)&&(i=this._bufferService.rows),i>t&&(this._activeBuffer.scrollTop=t-1,this._activeBuffer.scrollBottom=i-1,this._setCursor(0,0)),!0}windowOptions(e){if(!Al(e.params[0],this._optionsService.rawOptions.windowOptions))return!0;let t=e.length>1?e.params[1]:0;switch(e.params[0]){case 14:t!==2&&this._onRequestWindowsOptionsReport.fire(0);break;case 16:this._onRequestWindowsOptionsReport.fire(1);break;case 18:this._bufferService&&this._coreService.triggerDataEvent(`${q.ESC}[8;${this._bufferService.rows};${this._bufferService.cols}t`);break;case 22:(t===0||t===2)&&(this._windowTitleStack.push(this._windowTitle),this._windowTitleStack.length>ml&&this._windowTitleStack.shift()),(t===0||t===1)&&(this._iconNameStack.push(this._iconName),this._iconNameStack.length>ml&&this._iconNameStack.shift());break;case 23:(t===0||t===2)&&this._windowTitleStack.length&&this.setTitle(this._windowTitleStack.pop()),(t===0||t===1)&&this._iconNameStack.length&&this.setIconName(this._iconNameStack.pop());break}return!0}saveCursor(e){return this._activeBuffer.savedX=this._activeBuffer.x,this._activeBuffer.savedY=this._activeBuffer.ybase+this._activeBuffer.y,this._activeBuffer.savedCurAttrData.fg=this._curAttrData.fg,this._activeBuffer.savedCurAttrData.bg=this._curAttrData.bg,this._activeBuffer.savedCharset=this._charsetService.charset,!0}restoreCursor(e){return this._activeBuffer.x=this._activeBuffer.savedX||0,this._activeBuffer.y=Math.max(this._activeBuffer.savedY-this._activeBuffer.ybase,0),this._curAttrData.fg=this._activeBuffer.savedCurAttrData.fg,this._curAttrData.bg=this._activeBuffer.savedCurAttrData.bg,this._charsetService.charset=this._savedCharset,this._activeBuffer.savedCharset&&(this._charsetService.charset=this._activeBuffer.savedCharset),this._restrictCursor(),!0}setTitle(e){return this._windowTitle=e,this._onTitleChange.fire(e),!0}setIconName(e){return this._iconName=e,!0}setOrReportIndexedColor(e){let t=[],i=e.split(";");for(;i.length>1;){let s=i.shift(),r=i.shift();if(/^\d+$/.exec(s)){let n=parseInt(s);if(bl(n))if(r==="?")t.push({type:0,index:n});else{let a=pl(r);a&&t.push({type:1,index:n,color:a})}}}return t.length&&this._onColor.fire(t),!0}setHyperlink(e){let t=e.indexOf(";");if(t===-1)return!0;let i=e.slice(0,t).trim(),s=e.slice(t+1);return s?this._createHyperlink(i,s):i.trim()?!1:this._finishHyperlink()}_createHyperlink(e,t){this._getCurrentLinkId()&&this._finishHyperlink();let i=e.split(":"),s,r=i.findIndex(n=>n.startsWith("id="));return r!==-1&&(s=i[r].slice(3)||void 0),this._curAttrData.extended=this._curAttrData.extended.clone(),this._curAttrData.extended.urlId=this._oscLinkService.registerLink({id:s,uri:t}),this._curAttrData.updateExtended(),!0}_finishHyperlink(){return this._curAttrData.extended=this._curAttrData.extended.clone(),this._curAttrData.extended.urlId=0,this._curAttrData.updateExtended(),!0}_setOrReportSpecialColor(e,t){let i=e.split(";");for(let s=0;s=this._specialColors.length);++s,++t)if(i[s]==="?")this._onColor.fire([{type:0,index:this._specialColors[t]}]);else{let r=pl(i[s]);r&&this._onColor.fire([{type:1,index:this._specialColors[t],color:r}])}return!0}setOrReportFgColor(e){return this._setOrReportSpecialColor(e,0)}setOrReportBgColor(e){return this._setOrReportSpecialColor(e,1)}setOrReportCursorColor(e){return this._setOrReportSpecialColor(e,2)}restoreIndexedColor(e){if(!e)return this._onColor.fire([{type:2}]),!0;let t=[],i=e.split(";");for(let s=0;s=this._bufferService.rows&&(this._activeBuffer.y=this._bufferService.rows-1),this._restrictCursor(),!0}tabSet(){return this._activeBuffer.tabs[this._activeBuffer.x]=!0,!0}reverseIndex(){if(this._restrictCursor(),this._activeBuffer.y===this._activeBuffer.scrollTop){let e=this._activeBuffer.scrollBottom-this._activeBuffer.scrollTop;this._activeBuffer.lines.shiftElements(this._activeBuffer.ybase+this._activeBuffer.y,e,1),this._activeBuffer.lines.set(this._activeBuffer.ybase+this._activeBuffer.y,this._activeBuffer.getBlankLine(this._eraseAttrData())),this._dirtyRowTracker.markRangeDirty(this._activeBuffer.scrollTop,this._activeBuffer.scrollBottom)}else this._activeBuffer.y--,this._restrictCursor();return!0}fullReset(){return this._parser.reset(),this._onRequestReset.fire(),!0}reset(){this._curAttrData=et.clone(),this._eraseAttrDataInternal=et.clone()}_eraseAttrData(){return this._eraseAttrDataInternal.bg&=-67108864,this._eraseAttrDataInternal.bg|=this._curAttrData.bg&67108863,this._eraseAttrDataInternal}setgLevel(e){return this._charsetService.setgLevel(e),!0}screenAlignmentPattern(){let e=new oi;e.content=1<<22|69,e.fg=this._curAttrData.fg,e.bg=this._curAttrData.bg,this._setCursor(0,0);for(let t=0;t(this._coreService.triggerDataEvent(`${q.ESC}${a}${q.ESC}\\`),!0),s=this._bufferService.buffer,r=this._optionsService.rawOptions;return i(e==='"q'?`P1$r${this._curAttrData.isProtected()?1:0}"q`:e==='"p'?'P1$r61;1"p':e==="r"?`P1$r${s.scrollTop+1};${s.scrollBottom+1}r`:e==="m"?"P1$r0m":e===" q"?`P1$r${{block:2,underline:4,bar:6}[r.cursorStyle]-(r.cursorBlink?1:0)} q`:"P0$r")}markRangeDirty(e,t){this._dirtyRowTracker.markRangeDirty(e,t)}},zo=class{constructor(e){this._bufferService=e,this.clearRange()}clearRange(){this.start=this._bufferService.buffer.y,this.end=this._bufferService.buffer.y}markDirty(e){ethis.end&&(this.end=e)}markRangeDirty(e,t){e>t&&(Cl=e,e=t,t=Cl),ethis.end&&(this.end=t)}markAllDirty(){this.markRangeDirty(0,this._bufferService.rows-1)}};zo=Ye([te(0,Mt)],zo);function bl(e){return 0<=e&&e<256}var Sv=5e7,Sl=12,yv=50,xv=class extends ke{constructor(e){super(),this._action=e,this._writeBuffer=[],this._callbacks=[],this._pendingData=0,this._bufferOffset=0,this._isSyncWriting=!1,this._syncCalls=0,this._didUserInput=!1,this._onWriteParsed=this._register(new Y),this.onWriteParsed=this._onWriteParsed.event}handleUserInput(){this._didUserInput=!0}writeSync(e,t){if(t!==void 0&&this._syncCalls>t){this._syncCalls=0;return}if(this._pendingData+=e.length,this._writeBuffer.push(e),this._callbacks.push(void 0),this._syncCalls++,this._isSyncWriting)return;this._isSyncWriting=!0;let i;for(;i=this._writeBuffer.shift();){this._action(i);let s=this._callbacks.shift();s&&s()}this._pendingData=0,this._bufferOffset=2147483647,this._isSyncWriting=!1,this._syncCalls=0}write(e,t){if(this._pendingData>Sv)throw new Error("write data discarded, use flow control to avoid losing data");if(!this._writeBuffer.length){if(this._bufferOffset=0,this._didUserInput){this._didUserInput=!1,this._pendingData+=e.length,this._writeBuffer.push(e),this._callbacks.push(t),this._innerWrite();return}setTimeout(()=>this._innerWrite())}this._pendingData+=e.length,this._writeBuffer.push(e),this._callbacks.push(t)}_innerWrite(e=0,t=!0){let i=e||performance.now();for(;this._writeBuffer.length>this._bufferOffset;){let s=this._writeBuffer[this._bufferOffset],r=this._action(s,t);if(r){let a=o=>performance.now()-i>=Sl?setTimeout(()=>this._innerWrite(0,o)):this._innerWrite(i,o);r.catch(o=>(queueMicrotask(()=>{throw o}),Promise.resolve(!1))).then(a);return}let n=this._callbacks[this._bufferOffset];if(n&&n(),this._bufferOffset++,this._pendingData-=s.length,performance.now()-i>=Sl)break}this._writeBuffer.length>this._bufferOffset?(this._bufferOffset>yv&&(this._writeBuffer=this._writeBuffer.slice(this._bufferOffset),this._callbacks=this._callbacks.slice(this._bufferOffset),this._bufferOffset=0),setTimeout(()=>this._innerWrite())):(this._writeBuffer.length=0,this._callbacks.length=0,this._pendingData=0,this._bufferOffset=0),this._onWriteParsed.fire()}},Uo=class{constructor(e){this._bufferService=e,this._nextId=1,this._entriesWithId=new Map,this._dataByLinkId=new Map}registerLink(e){let t=this._bufferService.buffer;if(e.id===void 0){let o=t.addMarker(t.ybase+t.y),h={data:e,id:this._nextId++,lines:[o]};return o.onDispose(()=>this._removeMarkerFromLink(h,o)),this._dataByLinkId.set(h.id,h),h.id}let i=e,s=this._getEntryIdKey(i),r=this._entriesWithId.get(s);if(r)return this.addLineToLink(r.id,t.ybase+t.y),r.id;let n=t.addMarker(t.ybase+t.y),a={id:this._nextId++,key:this._getEntryIdKey(i),data:i,lines:[n]};return n.onDispose(()=>this._removeMarkerFromLink(a,n)),this._entriesWithId.set(a.key,a),this._dataByLinkId.set(a.id,a),a.id}addLineToLink(e,t){let i=this._dataByLinkId.get(e);if(i&&i.lines.every(s=>s.line!==t)){let s=this._bufferService.buffer.addMarker(t);i.lines.push(s),s.onDispose(()=>this._removeMarkerFromLink(i,s))}}getLinkData(e){var t;return(t=this._dataByLinkId.get(e))==null?void 0:t.data}_getEntryIdKey(e){return`${e.id};;${e.uri}`}_removeMarkerFromLink(e,t){let i=e.lines.indexOf(t);i!==-1&&(e.lines.splice(i,1),e.lines.length===0&&(e.data.id!==void 0&&this._entriesWithId.delete(e.key),this._dataByLinkId.delete(e.id)))}};Uo=Ye([te(0,Mt)],Uo);var yl=!1,kv=class extends ke{constructor(e){super(),this._windowsWrappingHeuristics=this._register(new Ns),this._onBinary=this._register(new Y),this.onBinary=this._onBinary.event,this._onData=this._register(new Y),this.onData=this._onData.event,this._onLineFeed=this._register(new Y),this.onLineFeed=this._onLineFeed.event,this._onResize=this._register(new Y),this.onResize=this._onResize.event,this._onWriteParsed=this._register(new Y),this.onWriteParsed=this._onWriteParsed.event,this._onScroll=this._register(new Y),this._instantiationService=new Yf,this.optionsService=this._register(new ov(e)),this._instantiationService.setService(Lt,this.optionsService),this._bufferService=this._register(this._instantiationService.createInstance(No)),this._instantiationService.setService(Mt,this._bufferService),this._logService=this._register(this._instantiationService.createInstance(Oo)),this._instantiationService.setService(Qh,this._logService),this.coreService=this._register(this._instantiationService.createInstance(Fo)),this._instantiationService.setService(bs,this.coreService),this.coreMouseService=this._register(this._instantiationService.createInstance(Ho)),this._instantiationService.setService(Ph,this.coreMouseService),this.unicodeService=this._register(this._instantiationService.createInstance(ns)),this._instantiationService.setService(qu,this.unicodeService),this._charsetService=this._instantiationService.createInstance(dv),this._instantiationService.setService($u,this._charsetService),this._oscLinkService=this._instantiationService.createInstance(Uo),this._instantiationService.setService(Oh,this._oscLinkService),this._inputHandler=this._register(new bv(this._bufferService,this._charsetService,this.coreService,this._logService,this.optionsService,this._oscLinkService,this.coreMouseService,this.unicodeService)),this._register(mt.forward(this._inputHandler.onLineFeed,this._onLineFeed)),this._register(this._inputHandler),this._register(mt.forward(this._bufferService.onResize,this._onResize)),this._register(mt.forward(this.coreService.onData,this._onData)),this._register(mt.forward(this.coreService.onBinary,this._onBinary)),this._register(this.coreService.onRequestScrollToBottom(()=>this.scrollToBottom(!0))),this._register(this.coreService.onUserInput(()=>this._writeBuffer.handleUserInput())),this._register(this.optionsService.onMultipleOptionChange(["windowsMode","windowsPty"],()=>this._handleWindowsPtyOptionChange())),this._register(this._bufferService.onScroll(()=>{this._onScroll.fire({position:this._bufferService.buffer.ydisp}),this._inputHandler.markRangeDirty(this._bufferService.buffer.scrollTop,this._bufferService.buffer.scrollBottom)})),this._writeBuffer=this._register(new xv((t,i)=>this._inputHandler.parse(t,i))),this._register(mt.forward(this._writeBuffer.onWriteParsed,this._onWriteParsed))}get onScroll(){return this._onScrollApi||(this._onScrollApi=this._register(new Y),this._onScroll.event(e=>{var t;(t=this._onScrollApi)==null||t.fire(e.position)})),this._onScrollApi.event}get cols(){return this._bufferService.cols}get rows(){return this._bufferService.rows}get buffers(){return this._bufferService.buffers}get options(){return this.optionsService.options}set options(e){for(let t in e)this.optionsService.options[t]=e[t]}write(e,t){this._writeBuffer.write(e,t)}writeSync(e,t){this._logService.logLevel<=3&&!yl&&(this._logService.warn("writeSync is unreliable and will be removed soon."),yl=!0),this._writeBuffer.writeSync(e,t)}input(e,t=!0){this.coreService.triggerDataEvent(e,t)}resize(e,t){isNaN(e)||isNaN(t)||(e=Math.max(e,vc),t=Math.max(t,gc),this._bufferService.resize(e,t))}scroll(e,t=!1){this._bufferService.scroll(e,t)}scrollLines(e,t){this._bufferService.scrollLines(e,t)}scrollPages(e){this.scrollLines(e*(this.rows-1))}scrollToTop(){this.scrollLines(-this._bufferService.buffer.ydisp)}scrollToBottom(e){this.scrollLines(this._bufferService.buffer.ybase-this._bufferService.buffer.ydisp)}scrollToLine(e){let t=e-this._bufferService.buffer.ydisp;t!==0&&this.scrollLines(t)}registerEscHandler(e,t){return this._inputHandler.registerEscHandler(e,t)}registerDcsHandler(e,t){return this._inputHandler.registerDcsHandler(e,t)}registerCsiHandler(e,t){return this._inputHandler.registerCsiHandler(e,t)}registerOscHandler(e,t){return this._inputHandler.registerOscHandler(e,t)}_setup(){this._handleWindowsPtyOptionChange()}reset(){this._inputHandler.reset(),this._bufferService.reset(),this._charsetService.reset(),this.coreService.reset(),this.coreMouseService.reset()}_handleWindowsPtyOptionChange(){let e=!1,t=this.optionsService.rawOptions.windowsPty;t&&t.buildNumber!==void 0&&t.buildNumber!==void 0?e=t.backend==="conpty"&&t.buildNumber<21376:this.optionsService.rawOptions.windowsMode&&(e=!0),e?this._enableWindowsWrappingHeuristics():this._windowsWrappingHeuristics.clear()}_enableWindowsWrappingHeuristics(){if(!this._windowsWrappingHeuristics.value){let e=[];e.push(this.onLineFeed(vl.bind(null,this._bufferService))),e.push(this.registerCsiHandler({final:"H"},()=>(vl(this._bufferService),!1))),this._windowsWrappingHeuristics.value=$e(()=>{for(let t of e)t.dispose()})}}},Ev={48:["0",")"],49:["1","!"],50:["2","@"],51:["3","#"],52:["4","$"],53:["5","%"],54:["6","^"],55:["7","&"],56:["8","*"],57:["9","("],186:[";",":"],187:["=","+"],188:[",","<"],189:["-","_"],190:[".",">"],191:["/","?"],192:["`","~"],219:["[","{"],220:["\\","|"],221:["]","}"],222:["'",'"']};function Bv(e,t,i,s){var a;let r={type:0,cancel:!1,key:void 0},n=(e.shiftKey?1:0)|(e.altKey?2:0)|(e.ctrlKey?4:0)|(e.metaKey?8:0);switch(e.keyCode){case 0:e.key==="UIKeyInputUpArrow"?t?r.key=q.ESC+"OA":r.key=q.ESC+"[A":e.key==="UIKeyInputLeftArrow"?t?r.key=q.ESC+"OD":r.key=q.ESC+"[D":e.key==="UIKeyInputRightArrow"?t?r.key=q.ESC+"OC":r.key=q.ESC+"[C":e.key==="UIKeyInputDownArrow"&&(t?r.key=q.ESC+"OB":r.key=q.ESC+"[B");break;case 8:r.key=e.ctrlKey?"\b":q.DEL,e.altKey&&(r.key=q.ESC+r.key);break;case 9:if(e.shiftKey){r.key=q.ESC+"[Z";break}r.key=q.HT,r.cancel=!0;break;case 13:r.key=e.altKey?q.ESC+q.CR:q.CR,r.cancel=!0;break;case 27:r.key=q.ESC,e.altKey&&(r.key=q.ESC+q.ESC),r.cancel=!0;break;case 37:if(e.metaKey)break;n?r.key=q.ESC+"[1;"+(n+1)+"D":t?r.key=q.ESC+"OD":r.key=q.ESC+"[D";break;case 39:if(e.metaKey)break;n?r.key=q.ESC+"[1;"+(n+1)+"C":t?r.key=q.ESC+"OC":r.key=q.ESC+"[C";break;case 38:if(e.metaKey)break;n?r.key=q.ESC+"[1;"+(n+1)+"A":t?r.key=q.ESC+"OA":r.key=q.ESC+"[A";break;case 40:if(e.metaKey)break;n?r.key=q.ESC+"[1;"+(n+1)+"B":t?r.key=q.ESC+"OB":r.key=q.ESC+"[B";break;case 45:!e.shiftKey&&!e.ctrlKey&&(r.key=q.ESC+"[2~");break;case 46:n?r.key=q.ESC+"[3;"+(n+1)+"~":r.key=q.ESC+"[3~";break;case 36:n?r.key=q.ESC+"[1;"+(n+1)+"H":t?r.key=q.ESC+"OH":r.key=q.ESC+"[H";break;case 35:n?r.key=q.ESC+"[1;"+(n+1)+"F":t?r.key=q.ESC+"OF":r.key=q.ESC+"[F";break;case 33:e.shiftKey?r.type=2:e.ctrlKey?r.key=q.ESC+"[5;"+(n+1)+"~":r.key=q.ESC+"[5~";break;case 34:e.shiftKey?r.type=3:e.ctrlKey?r.key=q.ESC+"[6;"+(n+1)+"~":r.key=q.ESC+"[6~";break;case 112:n?r.key=q.ESC+"[1;"+(n+1)+"P":r.key=q.ESC+"OP";break;case 113:n?r.key=q.ESC+"[1;"+(n+1)+"Q":r.key=q.ESC+"OQ";break;case 114:n?r.key=q.ESC+"[1;"+(n+1)+"R":r.key=q.ESC+"OR";break;case 115:n?r.key=q.ESC+"[1;"+(n+1)+"S":r.key=q.ESC+"OS";break;case 116:n?r.key=q.ESC+"[15;"+(n+1)+"~":r.key=q.ESC+"[15~";break;case 117:n?r.key=q.ESC+"[17;"+(n+1)+"~":r.key=q.ESC+"[17~";break;case 118:n?r.key=q.ESC+"[18;"+(n+1)+"~":r.key=q.ESC+"[18~";break;case 119:n?r.key=q.ESC+"[19;"+(n+1)+"~":r.key=q.ESC+"[19~";break;case 120:n?r.key=q.ESC+"[20;"+(n+1)+"~":r.key=q.ESC+"[20~";break;case 121:n?r.key=q.ESC+"[21;"+(n+1)+"~":r.key=q.ESC+"[21~";break;case 122:n?r.key=q.ESC+"[23;"+(n+1)+"~":r.key=q.ESC+"[23~";break;case 123:n?r.key=q.ESC+"[24;"+(n+1)+"~":r.key=q.ESC+"[24~";break;default:if(e.ctrlKey&&!e.shiftKey&&!e.altKey&&!e.metaKey)e.keyCode>=65&&e.keyCode<=90?r.key=String.fromCharCode(e.keyCode-64):e.keyCode===32?r.key=q.NUL:e.keyCode>=51&&e.keyCode<=55?r.key=String.fromCharCode(e.keyCode-51+27):e.keyCode===56?r.key=q.DEL:e.keyCode===219?r.key=q.ESC:e.keyCode===220?r.key=q.FS:e.keyCode===221&&(r.key=q.GS);else if((!i||s)&&e.altKey&&!e.metaKey){let o=(a=Ev[e.keyCode])==null?void 0:a[e.shiftKey?1:0];if(o)r.key=q.ESC+o;else if(e.keyCode>=65&&e.keyCode<=90){let h=e.ctrlKey?e.keyCode-64:e.keyCode+32,l=String.fromCharCode(h);e.shiftKey&&(l=l.toUpperCase()),r.key=q.ESC+l}else if(e.keyCode===32)r.key=q.ESC+(e.ctrlKey?q.NUL:" ");else if(e.key==="Dead"&&e.code.startsWith("Key")){let h=e.code.slice(3,4);e.shiftKey||(h=h.toLowerCase()),r.key=q.ESC+h,r.cancel=!0}}else i&&!e.altKey&&!e.ctrlKey&&!e.shiftKey&&e.metaKey?e.keyCode===65&&(r.type=1):e.key&&!e.ctrlKey&&!e.altKey&&!e.metaKey&&e.keyCode>=48&&e.key.length===1?r.key=e.key:e.key&&e.ctrlKey&&(e.key==="_"&&(r.key=q.US),e.key==="@"&&(r.key=q.NUL));break}return r}var Xe=0,Iv=class{constructor(e){this._getKey=e,this._array=[],this._insertedValues=[],this._flushInsertedTask=new an,this._isFlushingInserted=!1,this._deletedIndices=[],this._flushDeletedTask=new an,this._isFlushingDeleted=!1}clear(){this._array.length=0,this._insertedValues.length=0,this._flushInsertedTask.clear(),this._isFlushingInserted=!1,this._deletedIndices.length=0,this._flushDeletedTask.clear(),this._isFlushingDeleted=!1}insert(e){this._flushCleanupDeleted(),this._insertedValues.length===0&&this._flushInsertedTask.enqueue(()=>this._flushInserted()),this._insertedValues.push(e)}_flushInserted(){let e=this._insertedValues.sort((r,n)=>this._getKey(r)-this._getKey(n)),t=0,i=0,s=new Array(this._array.length+this._insertedValues.length);for(let r=0;r=this._array.length||this._getKey(e[t])<=this._getKey(this._array[i])?(s[r]=e[t],t++):s[r]=this._array[i++];this._array=s,this._insertedValues.length=0}_flushCleanupInserted(){!this._isFlushingInserted&&this._insertedValues.length>0&&this._flushInsertedTask.flush()}delete(e){if(this._flushCleanupInserted(),this._array.length===0)return!1;let t=this._getKey(e);if(t===void 0||(Xe=this._search(t),Xe===-1)||this._getKey(this._array[Xe])!==t)return!1;do if(this._array[Xe]===e)return this._deletedIndices.length===0&&this._flushDeletedTask.enqueue(()=>this._flushDeleted()),this._deletedIndices.push(Xe),!0;while(++Xer-n),t=0,i=new Array(this._array.length-e.length),s=0;for(let r=0;r0&&this._flushDeletedTask.flush()}*getKeyIterator(e){if(this._flushCleanupInserted(),this._flushCleanupDeleted(),this._array.length!==0&&(Xe=this._search(e),!(Xe<0||Xe>=this._array.length)&&this._getKey(this._array[Xe])===e))do yield this._array[Xe];while(++Xe=this._array.length)&&this._getKey(this._array[Xe])===e))do t(this._array[Xe]);while(++Xe=t;){let s=t+i>>1,r=this._getKey(this._array[s]);if(r>e)i=s-1;else if(r0&&this._getKey(this._array[s-1])===e;)s--;return s}}return t}},Un=0,xl=0,Dv=class extends ke{constructor(){super(),this._decorations=new Iv(e=>e==null?void 0:e.marker.line),this._onDecorationRegistered=this._register(new Y),this.onDecorationRegistered=this._onDecorationRegistered.event,this._onDecorationRemoved=this._register(new Y),this.onDecorationRemoved=this._onDecorationRemoved.event,this._register($e(()=>this.reset()))}get decorations(){return this._decorations.values()}registerDecoration(e){if(e.marker.isDisposed)return;let t=new Mv(e);if(t){let i=t.marker.onDispose(()=>t.dispose()),s=t.onDispose(()=>{s.dispose(),t&&(this._decorations.delete(t)&&this._onDecorationRemoved.fire(t),i.dispose())});this._decorations.insert(t),this._onDecorationRegistered.fire(t)}return t}reset(){for(let e of this._decorations.values())e.dispose();this._decorations.clear()}*getDecorationsAtCell(e,t,i){let s=0,r=0;for(let n of this._decorations.getKeyIterator(t))s=n.options.x??0,r=s+(n.options.width??1),e>=s&&e{Un=r.options.x??0,xl=Un+(r.options.width??1),e>=Un&&e=this._debounceThresholdMS)this._lastRefreshMs=s,this._innerRefresh();else if(!this._additionalRefreshRequested){let r=s-this._lastRefreshMs,n=this._debounceThresholdMS-r;this._additionalRefreshRequested=!0,this._refreshTimeoutID=window.setTimeout(()=>{this._lastRefreshMs=performance.now(),this._innerRefresh(),this._additionalRefreshRequested=!1,this._refreshTimeoutID=void 0},n)}}_innerRefresh(){if(this._rowStart===void 0||this._rowEnd===void 0||this._rowCount===void 0)return;let e=Math.max(this._rowStart,0),t=Math.min(this._rowEnd,this._rowCount-1);this._rowStart=void 0,this._rowEnd=void 0,this._renderCallback(e,t)}},kl=20,ln=class extends ke{constructor(e,t,i,s){super(),this._terminal=e,this._coreBrowserService=i,this._renderService=s,this._rowColumns=new WeakMap,this._liveRegionLineCount=0,this._charsToConsume=[],this._charsToAnnounce="";let r=this._coreBrowserService.mainDocument;this._accessibilityContainer=r.createElement("div"),this._accessibilityContainer.classList.add("xterm-accessibility"),this._rowContainer=r.createElement("div"),this._rowContainer.setAttribute("role","list"),this._rowContainer.classList.add("xterm-accessibility-tree"),this._rowElements=[];for(let n=0;nthis._handleBoundaryFocus(n,0),this._bottomBoundaryFocusListener=n=>this._handleBoundaryFocus(n,1),this._rowElements[0].addEventListener("focus",this._topBoundaryFocusListener),this._rowElements[this._rowElements.length-1].addEventListener("focus",this._bottomBoundaryFocusListener),this._accessibilityContainer.appendChild(this._rowContainer),this._liveRegion=r.createElement("div"),this._liveRegion.classList.add("live-region"),this._liveRegion.setAttribute("aria-live","assertive"),this._accessibilityContainer.appendChild(this._liveRegion),this._liveRegionDebouncer=this._register(new Rv(this._renderRows.bind(this))),!this._terminal.element)throw new Error("Cannot enable accessibility before Terminal.open");this._terminal.element.insertAdjacentElement("afterbegin",this._accessibilityContainer),this._register(this._terminal.onResize(n=>this._handleResize(n.rows))),this._register(this._terminal.onRender(n=>this._refreshRows(n.start,n.end))),this._register(this._terminal.onScroll(()=>this._refreshRows())),this._register(this._terminal.onA11yChar(n=>this._handleChar(n))),this._register(this._terminal.onLineFeed(()=>this._handleChar(` +`))),this._register(this._terminal.onA11yTab(n=>this._handleTab(n))),this._register(this._terminal.onKey(n=>this._handleKey(n.key))),this._register(this._terminal.onBlur(()=>this._clearLiveRegion())),this._register(this._renderService.onDimensionsChange(()=>this._refreshRowsDimensions())),this._register(me(r,"selectionchange",()=>this._handleSelectionChange())),this._register(this._coreBrowserService.onDprChange(()=>this._refreshRowsDimensions())),this._refreshRowsDimensions(),this._refreshRows(),this._register($e(()=>{this._accessibilityContainer.remove(),this._rowElements.length=0}))}_handleTab(e){for(let t=0;t0?this._charsToConsume.shift()!==e&&(this._charsToAnnounce+=e):this._charsToAnnounce+=e,e===` +`&&(this._liveRegionLineCount++,this._liveRegionLineCount===kl+1&&(this._liveRegion.textContent+=lo.get())))}_clearLiveRegion(){this._liveRegion.textContent="",this._liveRegionLineCount=0}_handleKey(e){this._clearLiveRegion(),new RegExp("\\p{Control}","u").test(e)||this._charsToConsume.push(e)}_refreshRows(e,t){this._liveRegionDebouncer.refresh(e,t,this._terminal.rows)}_renderRows(e,t){let i=this._terminal.buffer,s=i.lines.length.toString();for(let r=e;r<=t;r++){let n=i.lines.get(i.ydisp+r),a=[],o=(n==null?void 0:n.translateToString(!0,void 0,void 0,a))||"",h=(i.ydisp+r+1).toString(),l=this._rowElements[r];l&&(o.length===0?(l.textContent=" ",this._rowColumns.set(l,[0,1])):(l.textContent=o,this._rowColumns.set(l,a)),l.setAttribute("aria-posinset",h),l.setAttribute("aria-setsize",s),this._alignRowWidth(l))}this._announceCharacters()}_announceCharacters(){this._charsToAnnounce.length!==0&&(this._liveRegion.textContent+=this._charsToAnnounce,this._charsToAnnounce="")}_handleBoundaryFocus(e,t){let i=e.target,s=this._rowElements[t===0?1:this._rowElements.length-2],r=i.getAttribute("aria-posinset"),n=t===0?"1":`${this._terminal.buffer.lines.length}`;if(r===n||e.relatedTarget!==s)return;let a,o;if(t===0?(a=i,o=this._rowElements.pop(),this._rowContainer.removeChild(o)):(a=this._rowElements.shift(),o=i,this._rowContainer.removeChild(a)),a.removeEventListener("focus",this._topBoundaryFocusListener),o.removeEventListener("focus",this._bottomBoundaryFocusListener),t===0){let h=this._createAccessibilityTreeNode();this._rowElements.unshift(h),this._rowContainer.insertAdjacentElement("afterbegin",h)}else{let h=this._createAccessibilityTreeNode();this._rowElements.push(h),this._rowContainer.appendChild(h)}this._rowElements[0].addEventListener("focus",this._topBoundaryFocusListener),this._rowElements[this._rowElements.length-1].addEventListener("focus",this._bottomBoundaryFocusListener),this._terminal.scrollLines(t===0?-1:1),this._rowElements[t===0?1:this._rowElements.length-2].focus(),e.preventDefault(),e.stopImmediatePropagation()}_handleSelectionChange(){var o;if(this._rowElements.length===0)return;let e=this._coreBrowserService.mainDocument.getSelection();if(!e)return;if(e.isCollapsed){this._rowContainer.contains(e.anchorNode)&&this._terminal.clearSelection();return}if(!e.anchorNode||!e.focusNode){console.error("anchorNode and/or focusNode are null");return}let t={node:e.anchorNode,offset:e.anchorOffset},i={node:e.focusNode,offset:e.focusOffset};if((t.node.compareDocumentPosition(i.node)&Node.DOCUMENT_POSITION_PRECEDING||t.node===i.node&&t.offset>i.offset)&&([t,i]=[i,t]),t.node.compareDocumentPosition(this._rowElements[0])&(Node.DOCUMENT_POSITION_CONTAINED_BY|Node.DOCUMENT_POSITION_FOLLOWING)&&(t={node:this._rowElements[0].childNodes[0],offset:0}),!this._rowContainer.contains(t.node))return;let s=this._rowElements.slice(-1)[0];if(i.node.compareDocumentPosition(s)&(Node.DOCUMENT_POSITION_CONTAINED_BY|Node.DOCUMENT_POSITION_PRECEDING)&&(i={node:s,offset:((o=s.textContent)==null?void 0:o.length)??0}),!this._rowContainer.contains(i.node))return;let r=({node:h,offset:l})=>{let c=h instanceof Text?h.parentNode:h,d=parseInt(c==null?void 0:c.getAttribute("aria-posinset"),10)-1;if(isNaN(d))return console.warn("row is invalid. Race condition?"),null;let v=this._rowColumns.get(c);if(!v)return console.warn("columns is null. Race condition?"),null;let u=l=this._terminal.cols&&(++d,u=0),{row:d,column:u}},n=r(t),a=r(i);if(!(!n||!a)){if(n.row>a.row||n.row===a.row&&n.column>=a.column)throw new Error("invalid range");this._terminal.select(n.column,n.row,(a.row-n.row)*this._terminal.cols-n.column+a.column)}}_handleResize(e){this._rowElements[this._rowElements.length-1].removeEventListener("focus",this._bottomBoundaryFocusListener);for(let t=this._rowContainer.children.length;te;)this._rowContainer.removeChild(this._rowElements.pop());this._rowElements[this._rowElements.length-1].addEventListener("focus",this._bottomBoundaryFocusListener),this._refreshRowsDimensions()}_createAccessibilityTreeNode(){let e=this._coreBrowserService.mainDocument.createElement("div");return e.setAttribute("role","listitem"),e.tabIndex=-1,this._refreshRowDimensions(e),e}_refreshRowsDimensions(){if(this._renderService.dimensions.css.cell.height){Object.assign(this._accessibilityContainer.style,{width:`${this._renderService.dimensions.css.canvas.width}px`,fontSize:`${this._terminal.options.fontSize}px`}),this._rowElements.length!==this._terminal.rows&&this._handleResize(this._terminal.rows);for(let e=0;e{var n;As(this._linkCacheDisposables),this._linkCacheDisposables.length=0,this._lastMouseEvent=void 0,(n=this._activeProviderReplies)==null||n.clear()})),this._register(this._bufferService.onResize(()=>{this._clearCurrentLink(),this._wasResized=!0})),this._register(me(this._element,"mouseleave",()=>{this._isMouseOut=!0,this._clearCurrentLink()})),this._register(me(this._element,"mousemove",this._handleMouseMove.bind(this))),this._register(me(this._element,"mousedown",this._handleMouseDown.bind(this))),this._register(me(this._element,"mouseup",this._handleMouseUp.bind(this)))}get currentLink(){return this._currentLink}_handleMouseMove(e){this._lastMouseEvent=e;let t=this._positionFromMouseEvent(e,this._element,this._mouseService);if(!t)return;this._isMouseOut=!1;let i=e.composedPath();for(let s=0;s{n==null||n.forEach(a=>{a.link.dispose&&a.link.dispose()})}),this._activeProviderReplies=new Map,this._activeLine=e.y);let i=!1;for(let[n,a]of this._linkProviderService.linkProviders.entries())t?(r=this._activeProviderReplies)!=null&&r.get(n)&&(i=this._checkLinkProviderResult(n,e,i)):a.provideLinks(e.y,o=>{var l,c;if(this._isMouseOut)return;let h=o==null?void 0:o.map(d=>({link:d}));(l=this._activeProviderReplies)==null||l.set(n,h),i=this._checkLinkProviderResult(n,e,i),((c=this._activeProviderReplies)==null?void 0:c.size)===this._linkProviderService.linkProviders.length&&this._removeIntersectingLinks(e.y,this._activeProviderReplies)})}_removeIntersectingLinks(e,t){let i=new Set;for(let s=0;se?this._bufferService.cols:a.link.range.end.x;for(let l=o;l<=h;l++){if(i.has(l)){r.splice(n--,1);break}i.add(l)}}}}_checkLinkProviderResult(e,t,i){var n;if(!this._activeProviderReplies)return i;let s=this._activeProviderReplies.get(e),r=!1;for(let a=0;athis._linkAtPosition(o.link,t));a&&(i=!0,this._handleNewLink(a))}if(this._activeProviderReplies.size===this._linkProviderService.linkProviders.length&&!i)for(let a=0;athis._linkAtPosition(h.link,t));if(o){i=!0,this._handleNewLink(o);break}}return i}_handleMouseDown(){this._mouseDownLink=this._currentLink}_handleMouseUp(e){if(!this._currentLink)return;let t=this._positionFromMouseEvent(e,this._element,this._mouseService);t&&this._mouseDownLink&&Tv(this._mouseDownLink.link,this._currentLink.link)&&this._linkAtPosition(this._currentLink.link,t)&&this._currentLink.link.activate(e,this._currentLink.link.text)}_clearCurrentLink(e,t){!this._currentLink||!this._lastMouseEvent||(!e||!t||this._currentLink.link.range.start.y>=e&&this._currentLink.link.range.end.y<=t)&&(this._linkLeave(this._element,this._currentLink.link,this._lastMouseEvent),this._currentLink=void 0,As(this._linkCacheDisposables),this._linkCacheDisposables.length=0)}_handleNewLink(e){if(!this._lastMouseEvent)return;let t=this._positionFromMouseEvent(this._lastMouseEvent,this._element,this._mouseService);t&&this._linkAtPosition(e.link,t)&&(this._currentLink=e,this._currentLink.state={decorations:{underline:e.link.decorations===void 0?!0:e.link.decorations.underline,pointerCursor:e.link.decorations===void 0?!0:e.link.decorations.pointerCursor},isHovered:!0},this._linkHover(this._element,e.link,this._lastMouseEvent),e.link.decorations={},Object.defineProperties(e.link.decorations,{pointerCursor:{get:()=>{var i,s;return(s=(i=this._currentLink)==null?void 0:i.state)==null?void 0:s.decorations.pointerCursor},set:i=>{var s;(s=this._currentLink)!=null&&s.state&&this._currentLink.state.decorations.pointerCursor!==i&&(this._currentLink.state.decorations.pointerCursor=i,this._currentLink.state.isHovered&&this._element.classList.toggle("xterm-cursor-pointer",i))}},underline:{get:()=>{var i,s;return(s=(i=this._currentLink)==null?void 0:i.state)==null?void 0:s.decorations.underline},set:i=>{var s,r,n;(s=this._currentLink)!=null&&s.state&&((n=(r=this._currentLink)==null?void 0:r.state)==null?void 0:n.decorations.underline)!==i&&(this._currentLink.state.decorations.underline=i,this._currentLink.state.isHovered&&this._fireUnderlineEvent(e.link,i))}}}),this._linkCacheDisposables.push(this._renderService.onRenderedViewportChange(i=>{if(!this._currentLink)return;let s=i.start===0?0:i.start+1+this._bufferService.buffer.ydisp,r=this._bufferService.buffer.ydisp+1+i.end;if(this._currentLink.link.range.start.y>=s&&this._currentLink.link.range.end.y<=r&&(this._clearCurrentLink(s,r),this._lastMouseEvent)){let n=this._positionFromMouseEvent(this._lastMouseEvent,this._element,this._mouseService);n&&this._askForLink(n,!1)}})))}_linkHover(e,t,i){var s;(s=this._currentLink)!=null&&s.state&&(this._currentLink.state.isHovered=!0,this._currentLink.state.decorations.underline&&this._fireUnderlineEvent(t,!0),this._currentLink.state.decorations.pointerCursor&&e.classList.add("xterm-cursor-pointer")),t.hover&&t.hover(i,t.text)}_fireUnderlineEvent(e,t){let i=e.range,s=this._bufferService.buffer.ydisp,r=this._createLinkUnderlineEvent(i.start.x-1,i.start.y-s-1,i.end.x,i.end.y-s-1,void 0);(t?this._onShowLinkUnderline:this._onHideLinkUnderline).fire(r)}_linkLeave(e,t,i){var s;(s=this._currentLink)!=null&&s.state&&(this._currentLink.state.isHovered=!1,this._currentLink.state.decorations.underline&&this._fireUnderlineEvent(t,!1),this._currentLink.state.decorations.pointerCursor&&e.classList.remove("xterm-cursor-pointer")),t.leave&&t.leave(i,t.text)}_linkAtPosition(e,t){let i=e.range.start.y*this._bufferService.cols+e.range.start.x,s=e.range.end.y*this._bufferService.cols+e.range.end.x,r=t.y*this._bufferService.cols+t.x;return i<=r&&r<=s}_positionFromMouseEvent(e,t,i){let s=i.getCoords(e,t,this._bufferService.cols,this._bufferService.rows);if(s)return{x:s[0],y:s[1]+this._bufferService.buffer.ydisp}}_createLinkUnderlineEvent(e,t,i,s,r){return{x1:e,y1:t,x2:i,y2:s,cols:this._bufferService.cols,fg:r}}};$o=Ye([te(1,aa),te(2,Oi),te(3,Mt),te(4,Fh)],$o);function Tv(e,t){return e.text===t.text&&e.range.start.x===t.range.start.x&&e.range.start.y===t.range.start.y&&e.range.end.x===t.range.end.x&&e.range.end.y===t.range.end.y}var Pv=class extends kv{constructor(e={}){super(e),this._linkifier=this._register(new Ns),this.browser=rc,this._keyDownHandled=!1,this._keyDownSeen=!1,this._keyPressHandled=!1,this._unprocessedDeadKey=!1,this._accessibilityManager=this._register(new Ns),this._onCursorMove=this._register(new Y),this.onCursorMove=this._onCursorMove.event,this._onKey=this._register(new Y),this.onKey=this._onKey.event,this._onRender=this._register(new Y),this.onRender=this._onRender.event,this._onSelectionChange=this._register(new Y),this.onSelectionChange=this._onSelectionChange.event,this._onTitleChange=this._register(new Y),this.onTitleChange=this._onTitleChange.event,this._onBell=this._register(new Y),this.onBell=this._onBell.event,this._onFocus=this._register(new Y),this._onBlur=this._register(new Y),this._onA11yCharEmitter=this._register(new Y),this._onA11yTabEmitter=this._register(new Y),this._onWillOpen=this._register(new Y),this._setup(),this._decorationService=this._instantiationService.createInstance(Dv),this._instantiationService.setService(Br,this._decorationService),this._linkProviderService=this._instantiationService.createInstance(yf),this._instantiationService.setService(Fh,this._linkProviderService),this._linkProviderService.registerLinkProvider(this._instantiationService.createInstance(co)),this._register(this._inputHandler.onRequestBell(()=>this._onBell.fire())),this._register(this._inputHandler.onRequestRefreshRows(t=>this.refresh((t==null?void 0:t.start)??0,(t==null?void 0:t.end)??this.rows-1))),this._register(this._inputHandler.onRequestSendFocus(()=>this._reportFocus())),this._register(this._inputHandler.onRequestReset(()=>this.reset())),this._register(this._inputHandler.onRequestWindowsOptionsReport(t=>this._reportWindowsOptions(t))),this._register(this._inputHandler.onColor(t=>this._handleColorEvent(t))),this._register(mt.forward(this._inputHandler.onCursorMove,this._onCursorMove)),this._register(mt.forward(this._inputHandler.onTitleChange,this._onTitleChange)),this._register(mt.forward(this._inputHandler.onA11yChar,this._onA11yCharEmitter)),this._register(mt.forward(this._inputHandler.onA11yTab,this._onA11yTabEmitter)),this._register(this._bufferService.onResize(t=>this._afterResize(t.cols,t.rows))),this._register($e(()=>{var t,i;this._customKeyEventHandler=void 0,(i=(t=this.element)==null?void 0:t.parentNode)==null||i.removeChild(this.element)}))}get linkifier(){return this._linkifier.value}get onFocus(){return this._onFocus.event}get onBlur(){return this._onBlur.event}get onA11yChar(){return this._onA11yCharEmitter.event}get onA11yTab(){return this._onA11yTabEmitter.event}get onWillOpen(){return this._onWillOpen.event}_handleColorEvent(e){if(this._themeService)for(let t of e){let i,s="";switch(t.index){case 256:i="foreground",s="10";break;case 257:i="background",s="11";break;case 258:i="cursor",s="12";break;default:i="ansi",s="4;"+t.index}switch(t.type){case 0:let r=ze.toColorRGB(i==="ansi"?this._themeService.colors.ansi[t.index]:this._themeService.colors[i]);this.coreService.triggerDataEvent(`${q.ESC}]${s};${wv(r)}${ic.ST}`);break;case 1:if(i==="ansi")this._themeService.modifyColors(n=>n.ansi[t.index]=it.toColor(...t.color));else{let n=i;this._themeService.modifyColors(a=>a[n]=it.toColor(...t.color))}break;case 2:this._themeService.restoreColor(t.index);break}}}_setup(){super._setup(),this._customKeyEventHandler=void 0}get buffer(){return this.buffers.active}focus(){this.textarea&&this.textarea.focus({preventScroll:!0})}_handleScreenReaderModeOptionChange(e){e?!this._accessibilityManager.value&&this._renderService&&(this._accessibilityManager.value=this._instantiationService.createInstance(ln,this)):this._accessibilityManager.clear()}_handleTextAreaFocus(e){this.coreService.decPrivateModes.sendFocus&&this.coreService.triggerDataEvent(q.ESC+"[I"),this.element.classList.add("focus"),this._showCursor(),this._onFocus.fire()}blur(){var e;return(e=this.textarea)==null?void 0:e.blur()}_handleTextAreaBlur(){this.textarea.value="",this.refresh(this.buffer.y,this.buffer.y),this.coreService.decPrivateModes.sendFocus&&this.coreService.triggerDataEvent(q.ESC+"[O"),this.element.classList.remove("focus"),this._onBlur.fire()}_syncTextArea(){if(!this.textarea||!this.buffer.isCursorInViewport||this._compositionHelper.isComposing||!this._renderService)return;let e=this.buffer.ybase+this.buffer.y,t=this.buffer.lines.get(e);if(!t)return;let i=Math.min(this.buffer.x,this.cols-1),s=this._renderService.dimensions.css.cell.height,r=t.getWidth(i),n=this._renderService.dimensions.css.cell.width*r,a=this.buffer.y*this._renderService.dimensions.css.cell.height,o=i*this._renderService.dimensions.css.cell.width;this.textarea.style.left=o+"px",this.textarea.style.top=a+"px",this.textarea.style.width=n+"px",this.textarea.style.height=s+"px",this.textarea.style.lineHeight=s+"px",this.textarea.style.zIndex="-5"}_initGlobal(){this._bindKeys(),this._register(me(this.element,"copy",t=>{this.hasSelection()&&Nu(t,this._selectionService)}));let e=t=>Fu(t,this.textarea,this.coreService,this.optionsService);this._register(me(this.textarea,"paste",e)),this._register(me(this.element,"paste",e)),nc?this._register(me(this.element,"mousedown",t=>{t.button===2&&Qa(t,this.textarea,this.screenElement,this._selectionService,this.options.rightClickSelectsWord)})):this._register(me(this.element,"contextmenu",t=>{Qa(t,this.textarea,this.screenElement,this._selectionService,this.options.rightClickSelectsWord)})),va&&this._register(me(this.element,"auxclick",t=>{t.button===1&&Dh(t,this.textarea,this.screenElement)}))}_bindKeys(){this._register(me(this.textarea,"keyup",e=>this._keyUp(e),!0)),this._register(me(this.textarea,"keydown",e=>this._keyDown(e),!0)),this._register(me(this.textarea,"keypress",e=>this._keyPress(e),!0)),this._register(me(this.textarea,"compositionstart",()=>this._compositionHelper.compositionstart())),this._register(me(this.textarea,"compositionupdate",e=>this._compositionHelper.compositionupdate(e))),this._register(me(this.textarea,"compositionend",()=>this._compositionHelper.compositionend())),this._register(me(this.textarea,"input",e=>this._inputEvent(e),!0)),this._register(this.onRender(()=>this._compositionHelper.updateCompositionElements()))}open(e){var r;if(!e)throw new Error("Terminal requires a parent element.");if(e.isConnected||this._logService.debug("Terminal.open was called on an element that was not attached to the DOM"),((r=this.element)==null?void 0:r.ownerDocument.defaultView)&&this._coreBrowserService){this.element.ownerDocument.defaultView!==this._coreBrowserService.window&&(this._coreBrowserService.window=this.element.ownerDocument.defaultView);return}this._document=e.ownerDocument,this.options.documentOverride&&this.options.documentOverride instanceof Document&&(this._document=this.optionsService.rawOptions.documentOverride),this.element=this._document.createElement("div"),this.element.dir="ltr",this.element.classList.add("terminal"),this.element.classList.add("xterm"),e.appendChild(this.element);let t=this._document.createDocumentFragment();this._viewportElement=this._document.createElement("div"),this._viewportElement.classList.add("xterm-viewport"),t.appendChild(this._viewportElement),this.screenElement=this._document.createElement("div"),this.screenElement.classList.add("xterm-screen"),this._register(me(this.screenElement,"mousemove",n=>this.updateCursorStyle(n))),this._helperContainer=this._document.createElement("div"),this._helperContainer.classList.add("xterm-helpers"),this.screenElement.appendChild(this._helperContainer),t.appendChild(this.screenElement);let i=this.textarea=this._document.createElement("textarea");this.textarea.classList.add("xterm-helper-textarea"),this.textarea.setAttribute("aria-label",ao.get()),lc||this.textarea.setAttribute("aria-multiline","false"),this.textarea.setAttribute("autocorrect","off"),this.textarea.setAttribute("autocapitalize","off"),this.textarea.setAttribute("spellcheck","false"),this.textarea.tabIndex=0,this._register(this.optionsService.onSpecificOptionChange("disableStdin",()=>i.readOnly=this.optionsService.rawOptions.disableStdin)),this.textarea.readOnly=this.optionsService.rawOptions.disableStdin,this._coreBrowserService=this._register(this._instantiationService.createInstance(bf,this.textarea,e.ownerDocument.defaultView??window,this._document??typeof window<"u"?window.document:null)),this._instantiationService.setService(Qi,this._coreBrowserService),this._register(me(this.textarea,"focus",n=>this._handleTextAreaFocus(n))),this._register(me(this.textarea,"blur",()=>this._handleTextAreaBlur())),this._helperContainer.appendChild(this.textarea),this._charSizeService=this._instantiationService.createInstance(Lo,this._document,this._helperContainer),this._instantiationService.setService(wn,this._charSizeService),this._themeService=this._instantiationService.createInstance(Qo),this._instantiationService.setService(zs,this._themeService),this._characterJoinerService=this._instantiationService.createInstance(nn),this._instantiationService.setService(Nh,this._characterJoinerService),this._renderService=this._register(this._instantiationService.createInstance(To,this.rows,this.screenElement)),this._instantiationService.setService(Oi,this._renderService),this._register(this._renderService.onRenderedViewportChange(n=>this._onRender.fire(n))),this.onResize(n=>this._renderService.resize(n.cols,n.rows)),this._compositionView=this._document.createElement("div"),this._compositionView.classList.add("composition-view"),this._compositionHelper=this._instantiationService.createInstance(Io,this.textarea,this._compositionView),this._helperContainer.appendChild(this._compositionView),this._mouseService=this._instantiationService.createInstance(Ro),this._instantiationService.setService(aa,this._mouseService);let s=this._linkifier.value=this._register(this._instantiationService.createInstance($o,this.screenElement));this.element.appendChild(t);try{this._onWillOpen.fire(this.element)}catch{}this._renderService.hasRenderer()||this._renderService.setRenderer(this._createRenderer()),this._register(this.onCursorMove(()=>{this._renderService.handleCursorMove(),this._syncTextArea()})),this._register(this.onResize(()=>this._renderService.handleResize(this.cols,this.rows))),this._register(this.onBlur(()=>this._renderService.handleBlur())),this._register(this.onFocus(()=>this._renderService.handleFocus())),this._viewport=this._register(this._instantiationService.createInstance(Eo,this.element,this.screenElement)),this._register(this._viewport.onRequestScrollLines(n=>{super.scrollLines(n,!1),this.refresh(0,this.rows-1)})),this._selectionService=this._register(this._instantiationService.createInstance(Po,this.element,this.screenElement,s)),this._instantiationService.setService(Ku,this._selectionService),this._register(this._selectionService.onRequestScrollLines(n=>this.scrollLines(n.amount,n.suppressScrollEvent))),this._register(this._selectionService.onSelectionChange(()=>this._onSelectionChange.fire())),this._register(this._selectionService.onRequestRedraw(n=>this._renderService.handleSelectionChanged(n.start,n.end,n.columnSelectMode))),this._register(this._selectionService.onLinuxMouseSelection(n=>{this.textarea.value=n,this.textarea.focus(),this.textarea.select()})),this._register(mt.any(this._onScroll.event,this._inputHandler.onScroll)(()=>{var n;this._selectionService.refresh(),(n=this._viewport)==null||n.queueSync()})),this._register(this._instantiationService.createInstance(Bo,this.screenElement)),this._register(me(this.element,"mousedown",n=>this._selectionService.handleMouseDown(n))),this.coreMouseService.areMouseEventsActive?(this._selectionService.disable(),this.element.classList.add("enable-mouse-events")):this._selectionService.enable(),this.options.screenReaderMode&&(this._accessibilityManager.value=this._instantiationService.createInstance(ln,this)),this._register(this.optionsService.onSpecificOptionChange("screenReaderMode",n=>this._handleScreenReaderModeOptionChange(n))),this.options.overviewRuler.width&&(this._overviewRulerRenderer=this._register(this._instantiationService.createInstance(rn,this._viewportElement,this.screenElement))),this.optionsService.onSpecificOptionChange("overviewRuler",n=>{!this._overviewRulerRenderer&&n&&this._viewportElement&&this.screenElement&&(this._overviewRulerRenderer=this._register(this._instantiationService.createInstance(rn,this._viewportElement,this.screenElement)))}),this._charSizeService.measure(),this.refresh(0,this.rows-1),this._initGlobal(),this.bindMouse()}_createRenderer(){return this._instantiationService.createInstance(Mo,this,this._document,this.element,this.screenElement,this._viewportElement,this._helperContainer,this.linkifier)}bindMouse(){let e=this,t=this.element;function i(n){var l,c,d,v,u;let a=e._mouseService.getMouseReportCoords(n,e.screenElement);if(!a)return!1;let o,h;switch(n.overrideType||n.type){case"mousemove":h=32,n.buttons===void 0?(o=3,n.button!==void 0&&(o=n.button<3?n.button:3)):o=n.buttons&1?0:n.buttons&4?1:n.buttons&2?2:3;break;case"mouseup":h=0,o=n.button<3?n.button:3;break;case"mousedown":h=1,o=n.button<3?n.button:3;break;case"wheel":if(e._customWheelEventHandler&&e._customWheelEventHandler(n)===!1)return!1;let g=n.deltaY;if(g===0||e.coreMouseService.consumeWheelEvent(n,(v=(d=(c=(l=e._renderService)==null?void 0:l.dimensions)==null?void 0:c.device)==null?void 0:d.cell)==null?void 0:v.height,(u=e._coreBrowserService)==null?void 0:u.dpr)===0)return!1;h=g<0?0:1,o=4;break;default:return!1}return h===void 0||o===void 0||o>4?!1:e.coreMouseService.triggerMouseEvent({col:a.col,row:a.row,x:a.x,y:a.y,button:o,action:h,ctrl:n.ctrlKey,alt:n.altKey,shift:n.shiftKey})}let s={mouseup:null,wheel:null,mousedrag:null,mousemove:null},r={mouseup:n=>(i(n),n.buttons||(this._document.removeEventListener("mouseup",s.mouseup),s.mousedrag&&this._document.removeEventListener("mousemove",s.mousedrag)),this.cancel(n)),wheel:n=>(i(n),this.cancel(n,!0)),mousedrag:n=>{n.buttons&&i(n)},mousemove:n=>{n.buttons||i(n)}};this._register(this.coreMouseService.onProtocolChange(n=>{n?(this.optionsService.rawOptions.logLevel==="debug"&&this._logService.debug("Binding to mouse events:",this.coreMouseService.explainEvents(n)),this.element.classList.add("enable-mouse-events"),this._selectionService.disable()):(this._logService.debug("Unbinding from mouse events."),this.element.classList.remove("enable-mouse-events"),this._selectionService.enable()),n&8?s.mousemove||(t.addEventListener("mousemove",r.mousemove),s.mousemove=r.mousemove):(t.removeEventListener("mousemove",s.mousemove),s.mousemove=null),n&16?s.wheel||(t.addEventListener("wheel",r.wheel,{passive:!1}),s.wheel=r.wheel):(t.removeEventListener("wheel",s.wheel),s.wheel=null),n&2?s.mouseup||(s.mouseup=r.mouseup):(this._document.removeEventListener("mouseup",s.mouseup),s.mouseup=null),n&4?s.mousedrag||(s.mousedrag=r.mousedrag):(this._document.removeEventListener("mousemove",s.mousedrag),s.mousedrag=null)})),this.coreMouseService.activeProtocol=this.coreMouseService.activeProtocol,this._register(me(t,"mousedown",n=>{if(n.preventDefault(),this.focus(),!(!this.coreMouseService.areMouseEventsActive||this._selectionService.shouldForceSelection(n)))return i(n),s.mouseup&&this._document.addEventListener("mouseup",s.mouseup),s.mousedrag&&this._document.addEventListener("mousemove",s.mousedrag),this.cancel(n)})),this._register(me(t,"wheel",n=>{var a,o,h,l,c;if(!s.wheel){if(this._customWheelEventHandler&&this._customWheelEventHandler(n)===!1)return!1;if(!this.buffer.hasScrollback){if(n.deltaY===0)return!1;if(e.coreMouseService.consumeWheelEvent(n,(l=(h=(o=(a=e._renderService)==null?void 0:a.dimensions)==null?void 0:o.device)==null?void 0:h.cell)==null?void 0:l.height,(c=e._coreBrowserService)==null?void 0:c.dpr)===0)return this.cancel(n,!0);let d=q.ESC+(this.coreService.decPrivateModes.applicationCursorKeys?"O":"[")+(n.deltaY<0?"A":"B");return this.coreService.triggerDataEvent(d,!0),this.cancel(n,!0)}}},{passive:!1}))}refresh(e,t){var i;(i=this._renderService)==null||i.refreshRows(e,t)}updateCursorStyle(e){var t;(t=this._selectionService)!=null&&t.shouldColumnSelect(e)?this.element.classList.add("column-select"):this.element.classList.remove("column-select")}_showCursor(){this.coreService.isCursorInitialized||(this.coreService.isCursorInitialized=!0,this.refresh(this.buffer.y,this.buffer.y))}scrollLines(e,t){this._viewport?this._viewport.scrollLines(e):super.scrollLines(e,t),this.refresh(0,this.rows-1)}scrollPages(e){this.scrollLines(e*(this.rows-1))}scrollToTop(){this.scrollLines(-this._bufferService.buffer.ydisp)}scrollToBottom(e){e&&this._viewport?this._viewport.scrollToLine(this.buffer.ybase,!0):this.scrollLines(this._bufferService.buffer.ybase-this._bufferService.buffer.ydisp)}scrollToLine(e){let t=e-this._bufferService.buffer.ydisp;t!==0&&this.scrollLines(t)}paste(e){Ih(e,this.textarea,this.coreService,this.optionsService)}attachCustomKeyEventHandler(e){this._customKeyEventHandler=e}attachCustomWheelEventHandler(e){this._customWheelEventHandler=e}registerLinkProvider(e){return this._linkProviderService.registerLinkProvider(e)}registerCharacterJoiner(e){if(!this._characterJoinerService)throw new Error("Terminal must be opened first");let t=this._characterJoinerService.register(e);return this.refresh(0,this.rows-1),t}deregisterCharacterJoiner(e){if(!this._characterJoinerService)throw new Error("Terminal must be opened first");this._characterJoinerService.deregister(e)&&this.refresh(0,this.rows-1)}get markers(){return this.buffer.markers}registerMarker(e){return this.buffer.addMarker(this.buffer.ybase+this.buffer.y+e)}registerDecoration(e){return this._decorationService.registerDecoration(e)}hasSelection(){return this._selectionService?this._selectionService.hasSelection:!1}select(e,t,i){this._selectionService.setSelection(e,t,i)}getSelection(){return this._selectionService?this._selectionService.selectionText:""}getSelectionPosition(){if(!(!this._selectionService||!this._selectionService.hasSelection))return{start:{x:this._selectionService.selectionStart[0],y:this._selectionService.selectionStart[1]},end:{x:this._selectionService.selectionEnd[0],y:this._selectionService.selectionEnd[1]}}}clearSelection(){var e;(e=this._selectionService)==null||e.clearSelection()}selectAll(){var e;(e=this._selectionService)==null||e.selectAll()}selectLines(e,t){var i;(i=this._selectionService)==null||i.selectLines(e,t)}_keyDown(e){if(this._keyDownHandled=!1,this._keyDownSeen=!0,this._customKeyEventHandler&&this._customKeyEventHandler(e)===!1)return!1;let t=this.browser.isMac&&this.options.macOptionIsMeta&&e.altKey;if(!t&&!this._compositionHelper.keydown(e))return this.options.scrollOnUserInput&&this.buffer.ybase!==this.buffer.ydisp&&this.scrollToBottom(!0),!1;!t&&(e.key==="Dead"||e.key==="AltGraph")&&(this._unprocessedDeadKey=!0);let i=Bv(e,this.coreService.decPrivateModes.applicationCursorKeys,this.browser.isMac,this.options.macOptionIsMeta);if(this.updateCursorStyle(e),i.type===3||i.type===2){let s=this.rows-1;return this.scrollLines(i.type===2?-s:s),this.cancel(e,!0)}if(i.type===1&&this.selectAll(),this._isThirdLevelShift(this.browser,e)||(i.cancel&&this.cancel(e,!0),!i.key)||e.key&&!e.ctrlKey&&!e.altKey&&!e.metaKey&&e.key.length===1&&e.key.charCodeAt(0)>=65&&e.key.charCodeAt(0)<=90)return!0;if(this._unprocessedDeadKey)return this._unprocessedDeadKey=!1,!0;if((i.key===q.ETX||i.key===q.CR)&&(this.textarea.value=""),this._onKey.fire({key:i.key,domEvent:e}),this._showCursor(),this.coreService.triggerDataEvent(i.key,!0),!this.optionsService.rawOptions.screenReaderMode||e.altKey||e.ctrlKey)return this.cancel(e,!0);this._keyDownHandled=!0}_isThirdLevelShift(e,t){let i=e.isMac&&!this.options.macOptionIsMeta&&t.altKey&&!t.ctrlKey&&!t.metaKey||e.isWindows&&t.altKey&&t.ctrlKey&&!t.metaKey||e.isWindows&&t.getModifierState("AltGraph");return t.type==="keypress"?i:i&&(!t.keyCode||t.keyCode>47)}_keyUp(e){this._keyDownSeen=!1,!(this._customKeyEventHandler&&this._customKeyEventHandler(e)===!1)&&(Qv(e)||this.focus(),this.updateCursorStyle(e),this._keyPressHandled=!1)}_keyPress(e){let t;if(this._keyPressHandled=!1,this._keyDownHandled||this._customKeyEventHandler&&this._customKeyEventHandler(e)===!1)return!1;if(this.cancel(e),e.charCode)t=e.charCode;else if(e.which===null||e.which===void 0)t=e.keyCode;else if(e.which!==0&&e.charCode!==0)t=e.which;else return!1;return!t||(e.altKey||e.ctrlKey||e.metaKey)&&!this._isThirdLevelShift(this.browser,e)?!1:(t=String.fromCharCode(t),this._onKey.fire({key:t,domEvent:e}),this._showCursor(),this.coreService.triggerDataEvent(t,!0),this._keyPressHandled=!0,this._unprocessedDeadKey=!1,!0)}_inputEvent(e){if(e.data&&e.inputType==="insertText"&&(!e.composed||!this._keyDownSeen)&&!this.optionsService.rawOptions.screenReaderMode){if(this._keyPressHandled)return!1;this._unprocessedDeadKey=!1;let t=e.data;return this.coreService.triggerDataEvent(t,!0),this.cancel(e),!0}return!1}resize(e,t){if(e===this.cols&&t===this.rows){this._charSizeService&&!this._charSizeService.hasValidSize&&this._charSizeService.measure();return}super.resize(e,t)}_afterResize(e,t){var i;(i=this._charSizeService)==null||i.measure()}clear(){if(!(this.buffer.ybase===0&&this.buffer.y===0)){this.buffer.clearAllMarkers(),this.buffer.lines.set(0,this.buffer.lines.get(this.buffer.ybase+this.buffer.y)),this.buffer.lines.length=1,this.buffer.ydisp=0,this.buffer.ybase=0,this.buffer.y=0;for(let e=1;e=0;e--)this._addons[e].instance.dispose()}loadAddon(e,t){let i={instance:t,dispose:t.dispose,isDisposed:!1};this._addons.push(i),t.dispose=()=>this._wrappedAddonDispose(i),t.activate(e)}_wrappedAddonDispose(e){if(e.isDisposed)return;let t=-1;for(let i=0;i=this._line.length))return t?(this._line.loadCell(e,t),t):this._line.loadCell(e,new oi)}translateToString(e,t,i){return this._line.translateToString(e,t,i)}},El=class{constructor(e,t){this._buffer=e,this.type=t}init(e){return this._buffer=e,this}get cursorY(){return this._buffer.y}get cursorX(){return this._buffer.x}get viewportY(){return this._buffer.ydisp}get baseY(){return this._buffer.ybase}get length(){return this._buffer.lines.length}getLine(e){let t=this._buffer.lines.get(e);if(t)return new Nv(t)}getNullCell(){return new oi}},Fv=class extends ke{constructor(e){super(),this._core=e,this._onBufferChange=this._register(new Y),this.onBufferChange=this._onBufferChange.event,this._normal=new El(this._core.buffers.normal,"normal"),this._alternate=new El(this._core.buffers.alt,"alternate"),this._core.buffers.onBufferActivate(()=>this._onBufferChange.fire(this.active))}get active(){if(this._core.buffers.active===this._core.buffers.normal)return this.normal;if(this._core.buffers.active===this._core.buffers.alt)return this.alternate;throw new Error("Active buffer is neither normal nor alternate")}get normal(){return this._normal.init(this._core.buffers.normal)}get alternate(){return this._alternate.init(this._core.buffers.alt)}},Hv=class{constructor(e){this._core=e}registerCsiHandler(e,t){return this._core.registerCsiHandler(e,i=>t(i.toArray()))}addCsiHandler(e,t){return this.registerCsiHandler(e,t)}registerDcsHandler(e,t){return this._core.registerDcsHandler(e,(i,s)=>t(i,s.toArray()))}addDcsHandler(e,t){return this.registerDcsHandler(e,t)}registerEscHandler(e,t){return this._core.registerEscHandler(e,t)}addEscHandler(e,t){return this.registerEscHandler(e,t)}registerOscHandler(e,t){return this._core.registerOscHandler(e,t)}addOscHandler(e,t){return this.registerOscHandler(e,t)}},Wv=class{constructor(e){this._core=e}register(e){this._core.unicodeService.register(e)}get versions(){return this._core.unicodeService.versions}get activeVersion(){return this._core.unicodeService.activeVersion}set activeVersion(e){this._core.unicodeService.activeVersion=e}},zv=["cols","rows"],vi=0,Uv=class extends ke{constructor(e){super(),this._core=this._register(new Pv(e)),this._addonManager=this._register(new Ov),this._publicOptions={...this._core.options};let t=s=>this._core.options[s],i=(s,r)=>{this._checkReadonlyOptions(s),this._core.options[s]=r};for(let s in this._core.options){let r={get:t.bind(this,s),set:i.bind(this,s)};Object.defineProperty(this._publicOptions,s,r)}}_checkReadonlyOptions(e){if(zv.includes(e))throw new Error(`Option "${e}" can only be set in the constructor`)}_checkProposedApi(){if(!this._core.optionsService.rawOptions.allowProposedApi)throw new Error("You must set the allowProposedApi option to true to use proposed API")}get onBell(){return this._core.onBell}get onBinary(){return this._core.onBinary}get onCursorMove(){return this._core.onCursorMove}get onData(){return this._core.onData}get onKey(){return this._core.onKey}get onLineFeed(){return this._core.onLineFeed}get onRender(){return this._core.onRender}get onResize(){return this._core.onResize}get onScroll(){return this._core.onScroll}get onSelectionChange(){return this._core.onSelectionChange}get onTitleChange(){return this._core.onTitleChange}get onWriteParsed(){return this._core.onWriteParsed}get element(){return this._core.element}get parser(){return this._parser||(this._parser=new Hv(this._core)),this._parser}get unicode(){return this._checkProposedApi(),new Wv(this._core)}get textarea(){return this._core.textarea}get rows(){return this._core.rows}get cols(){return this._core.cols}get buffer(){return this._buffer||(this._buffer=this._register(new Fv(this._core))),this._buffer}get markers(){return this._checkProposedApi(),this._core.markers}get modes(){let e=this._core.coreService.decPrivateModes,t="none";switch(this._core.coreMouseService.activeProtocol){case"X10":t="x10";break;case"VT200":t="vt200";break;case"DRAG":t="drag";break;case"ANY":t="any";break}return{applicationCursorKeysMode:e.applicationCursorKeys,applicationKeypadMode:e.applicationKeypad,bracketedPasteMode:e.bracketedPasteMode,insertMode:this._core.coreService.modes.insertMode,mouseTrackingMode:t,originMode:e.origin,reverseWraparoundMode:e.reverseWraparound,sendFocusMode:e.sendFocus,synchronizedOutputMode:e.synchronizedOutput,wraparoundMode:e.wraparound}}get options(){return this._publicOptions}set options(e){for(let t in e)this._publicOptions[t]=e[t]}blur(){this._core.blur()}focus(){this._core.focus()}input(e,t=!0){this._core.input(e,t)}resize(e,t){this._verifyIntegers(e,t),this._core.resize(e,t)}open(e){this._core.open(e)}attachCustomKeyEventHandler(e){this._core.attachCustomKeyEventHandler(e)}attachCustomWheelEventHandler(e){this._core.attachCustomWheelEventHandler(e)}registerLinkProvider(e){return this._core.registerLinkProvider(e)}registerCharacterJoiner(e){return this._checkProposedApi(),this._core.registerCharacterJoiner(e)}deregisterCharacterJoiner(e){this._checkProposedApi(),this._core.deregisterCharacterJoiner(e)}registerMarker(e=0){return this._verifyIntegers(e),this._core.registerMarker(e)}registerDecoration(e){return this._checkProposedApi(),this._verifyPositiveIntegers(e.x??0,e.width??0,e.height??0),this._core.registerDecoration(e)}hasSelection(){return this._core.hasSelection()}select(e,t,i){this._verifyIntegers(e,t,i),this._core.select(e,t,i)}getSelection(){return this._core.getSelection()}getSelectionPosition(){return this._core.getSelectionPosition()}clearSelection(){this._core.clearSelection()}selectAll(){this._core.selectAll()}selectLines(e,t){this._verifyIntegers(e,t),this._core.selectLines(e,t)}dispose(){super.dispose()}scrollLines(e){this._verifyIntegers(e),this._core.scrollLines(e)}scrollPages(e){this._verifyIntegers(e),this._core.scrollPages(e)}scrollToTop(){this._core.scrollToTop()}scrollToBottom(){this._core.scrollToBottom()}scrollToLine(e){this._verifyIntegers(e),this._core.scrollToLine(e)}clear(){this._core.clear()}write(e,t){this._core.write(e,t)}writeln(e,t){this._core.write(e),this._core.write(`\r +`,t)}paste(e){this._core.paste(e)}refresh(e,t){this._verifyIntegers(e,t),this._core.refresh(e,t)}reset(){this._core.reset()}clearTextureAtlas(){this._core.clearTextureAtlas()}loadAddon(e){this._addonManager.loadAddon(this,e)}static get strings(){return{get promptLabel(){return ao.get()},set promptLabel(e){ao.set(e)},get tooMuchOutput(){return lo.get()},set tooMuchOutput(e){lo.set(e)}}}_verifyIntegers(...e){for(vi of e)if(vi===1/0||isNaN(vi)||vi%1!==0)throw new Error("This API only accepts integers")}_verifyPositiveIntegers(...e){for(vi of e)if(vi&&(vi===1/0||isNaN(vi)||vi%1!==0||vi<0))throw new Error("This API only accepts positive integers")}},$n={exports:{}},Bl;function $v(){return Bl||(Bl=1,(function(e,t){(function(i,s){e.exports=s()})(self,(()=>(()=>{var i={903:(a,o,h)=>{Object.defineProperty(o,"__esModule",{value:!0}),o.BaseRenderLayer=void 0;const l=h(274),c=h(627),d=h(237),v=h(860),u=h(374),g=h(296),_=h(345),f=h(859),A=h(399),x=h(855);class S extends f.Disposable{get canvas(){return this._canvas}get cacheCanvas(){var m;return(m=this._charAtlas)==null?void 0:m.pages[0].canvas}constructor(m,C,E,b,D,M,k,B,T,Q){super(),this._terminal=m,this._container=C,this._alpha=D,this._themeService=M,this._bufferService=k,this._optionsService=B,this._decorationService=T,this._coreBrowserService=Q,this._deviceCharWidth=0,this._deviceCharHeight=0,this._deviceCellWidth=0,this._deviceCellHeight=0,this._deviceCharLeft=0,this._deviceCharTop=0,this._selectionModel=(0,g.createSelectionRenderModel)(),this._bitmapGenerator=[],this._charAtlasDisposable=this.register(new f.MutableDisposable),this._onAddTextureAtlasCanvas=this.register(new _.EventEmitter),this.onAddTextureAtlasCanvas=this._onAddTextureAtlasCanvas.event,this._cellColorResolver=new l.CellColorResolver(this._terminal,this._optionsService,this._selectionModel,this._decorationService,this._coreBrowserService,this._themeService),this._canvas=this._coreBrowserService.mainDocument.createElement("canvas"),this._canvas.classList.add(`xterm-${E}-layer`),this._canvas.style.zIndex=b.toString(),this._initCanvas(),this._container.appendChild(this._canvas),this._refreshCharAtlas(this._themeService.colors),this.register(this._themeService.onChangeColors((O=>{this._refreshCharAtlas(O),this.reset(),this.handleSelectionChanged(this._selectionModel.selectionStart,this._selectionModel.selectionEnd,this._selectionModel.columnSelectMode)}))),this.register((0,f.toDisposable)((()=>{this._canvas.remove()})))}_initCanvas(){this._ctx=(0,u.throwIfFalsy)(this._canvas.getContext("2d",{alpha:this._alpha})),this._alpha||this._clearAll()}handleBlur(){}handleFocus(){}handleCursorMove(){}handleGridChanged(m,C){}handleSelectionChanged(m,C,E=!1){this._selectionModel.update(this._terminal._core,m,C,E)}_setTransparency(m){if(m===this._alpha)return;const C=this._canvas;this._alpha=m,this._canvas=this._canvas.cloneNode(),this._initCanvas(),this._container.replaceChild(this._canvas,C),this._refreshCharAtlas(this._themeService.colors),this.handleGridChanged(0,this._bufferService.rows-1)}_refreshCharAtlas(m){if(!(this._deviceCharWidth<=0&&this._deviceCharHeight<=0)){this._charAtlas=(0,c.acquireTextureAtlas)(this._terminal,this._optionsService.rawOptions,m,this._deviceCellWidth,this._deviceCellHeight,this._deviceCharWidth,this._deviceCharHeight,this._coreBrowserService.dpr),this._charAtlasDisposable.value=(0,_.forwardEvent)(this._charAtlas.onAddTextureAtlasCanvas,this._onAddTextureAtlasCanvas),this._charAtlas.warmUp();for(let C=0;C1?this._charAtlas.getRasterizedGlyphCombinedChar(b,this._cellColorResolver.result.bg,this._cellColorResolver.result.fg,this._cellColorResolver.result.ext,!0):this._charAtlas.getRasterizedGlyph(m.getCode()||x.WHITESPACE_CELL_CODE,this._cellColorResolver.result.bg,this._cellColorResolver.result.fg,this._cellColorResolver.result.ext,!0),!k.size.x||!k.size.y)return;this._ctx.save(),this._clipRow(E),this._bitmapGenerator[k.texturePage]&&this._charAtlas.pages[k.texturePage].canvas!==this._bitmapGenerator[k.texturePage].canvas&&((Q=(T=this._bitmapGenerator[k.texturePage])==null?void 0:T.bitmap)==null||Q.close(),delete this._bitmapGenerator[k.texturePage]),this._charAtlas.pages[k.texturePage].version!==((O=this._bitmapGenerator[k.texturePage])==null?void 0:O.version)&&(this._bitmapGenerator[k.texturePage]||(this._bitmapGenerator[k.texturePage]=new w(this._charAtlas.pages[k.texturePage].canvas)),this._bitmapGenerator[k.texturePage].refresh(),this._bitmapGenerator[k.texturePage].version=this._charAtlas.pages[k.texturePage].version);let B=k.size.x;this._optionsService.rawOptions.rescaleOverlappingGlyphs&&(0,u.allowRescaling)(D,M,k.size.x,this._deviceCellWidth)&&(B=this._deviceCellWidth-1),this._ctx.drawImage(((L=this._bitmapGenerator[k.texturePage])==null?void 0:L.bitmap)||this._charAtlas.pages[k.texturePage].canvas,k.texturePosition.x,k.texturePosition.y,k.size.x,k.size.y,C*this._deviceCellWidth+this._deviceCharLeft-k.offset.x,E*this._deviceCellHeight+this._deviceCharTop-k.offset.y,B,k.size.y),this._ctx.restore()}_clipRow(m){this._ctx.beginPath(),this._ctx.rect(0,m*this._deviceCellHeight,this._bufferService.cols*this._deviceCellWidth,this._deviceCellHeight),this._ctx.clip()}_getFont(m,C){return`${C?"italic":""} ${m?this._optionsService.rawOptions.fontWeightBold:this._optionsService.rawOptions.fontWeight} ${this._optionsService.rawOptions.fontSize*this._coreBrowserService.dpr}px ${this._optionsService.rawOptions.fontFamily}`}}o.BaseRenderLayer=S;class w{get bitmap(){return this._bitmap}constructor(m){this.canvas=m,this._state=0,this._commitTimeout=void 0,this._bitmap=void 0,this.version=-1}refresh(){var m;(m=this._bitmap)==null||m.close(),this._bitmap=void 0,A.isSafari||(this._commitTimeout===void 0&&(this._commitTimeout=window.setTimeout((()=>this._generate()),100)),this._state===1&&(this._state=2))}_generate(){var m;this._state===0&&((m=this._bitmap)==null||m.close(),this._bitmap=void 0,this._state=1,window.createImageBitmap(this.canvas).then((C=>{this._state===2?this.refresh():this._bitmap=C,this._state=0})),this._commitTimeout&&(this._commitTimeout=void 0))}}},949:(a,o,h)=>{Object.defineProperty(o,"__esModule",{value:!0}),o.CanvasRenderer=void 0;const l=h(627),c=h(56),d=h(374),v=h(345),u=h(859),g=h(873),_=h(43),f=h(630),A=h(744);class x extends u.Disposable{constructor(w,y,m,C,E,b,D,M,k,B,T){super(),this._terminal=w,this._screenElement=y,this._bufferService=C,this._charSizeService=E,this._optionsService=b,this._coreBrowserService=k,this._themeService=T,this._observerDisposable=this.register(new u.MutableDisposable),this._onRequestRedraw=this.register(new v.EventEmitter),this.onRequestRedraw=this._onRequestRedraw.event,this._onChangeTextureAtlas=this.register(new v.EventEmitter),this.onChangeTextureAtlas=this._onChangeTextureAtlas.event,this._onAddTextureAtlasCanvas=this.register(new v.EventEmitter),this.onAddTextureAtlasCanvas=this._onAddTextureAtlasCanvas.event;const Q=this._optionsService.rawOptions.allowTransparency;this._renderLayers=[new A.TextRenderLayer(this._terminal,this._screenElement,0,Q,this._bufferService,this._optionsService,D,B,this._coreBrowserService,T),new f.SelectionRenderLayer(this._terminal,this._screenElement,1,this._bufferService,this._coreBrowserService,B,this._optionsService,T),new _.LinkRenderLayer(this._terminal,this._screenElement,2,m,this._bufferService,this._optionsService,B,this._coreBrowserService,T),new g.CursorRenderLayer(this._terminal,this._screenElement,3,this._onRequestRedraw,this._bufferService,this._optionsService,M,this._coreBrowserService,B,T)];for(const O of this._renderLayers)(0,v.forwardEvent)(O.onAddTextureAtlasCanvas,this._onAddTextureAtlasCanvas);this.dimensions=(0,d.createRenderDimensions)(),this._devicePixelRatio=this._coreBrowserService.dpr,this._updateDimensions(),this._observerDisposable.value=(0,c.observeDevicePixelDimensions)(this._renderLayers[0].canvas,this._coreBrowserService.window,((O,L)=>this._setCanvasDevicePixelDimensions(O,L))),this.register(this._coreBrowserService.onWindowChange((O=>{this._observerDisposable.value=(0,c.observeDevicePixelDimensions)(this._renderLayers[0].canvas,O,((L,I)=>this._setCanvasDevicePixelDimensions(L,I)))}))),this.register((0,u.toDisposable)((()=>{for(const O of this._renderLayers)O.dispose();(0,l.removeTerminalFromCache)(this._terminal)})))}get textureAtlas(){return this._renderLayers[0].cacheCanvas}handleDevicePixelRatioChange(){this._devicePixelRatio!==this._coreBrowserService.dpr&&(this._devicePixelRatio=this._coreBrowserService.dpr,this.handleResize(this._bufferService.cols,this._bufferService.rows))}handleResize(w,y){this._updateDimensions();for(const m of this._renderLayers)m.resize(this.dimensions);this._screenElement.style.width=`${this.dimensions.css.canvas.width}px`,this._screenElement.style.height=`${this.dimensions.css.canvas.height}px`}handleCharSizeChanged(){this.handleResize(this._bufferService.cols,this._bufferService.rows)}handleBlur(){this._runOperation((w=>w.handleBlur()))}handleFocus(){this._runOperation((w=>w.handleFocus()))}handleSelectionChanged(w,y,m=!1){this._runOperation((C=>C.handleSelectionChanged(w,y,m))),this._themeService.colors.selectionForeground&&this._onRequestRedraw.fire({start:0,end:this._bufferService.rows-1})}handleCursorMove(){this._runOperation((w=>w.handleCursorMove()))}clear(){this._runOperation((w=>w.reset()))}_runOperation(w){for(const y of this._renderLayers)w(y)}renderRows(w,y){for(const m of this._renderLayers)m.handleGridChanged(w,y)}clearTextureAtlas(){for(const w of this._renderLayers)w.clearTextureAtlas()}_updateDimensions(){if(!this._charSizeService.hasValidSize)return;const w=this._coreBrowserService.dpr;this.dimensions.device.char.width=Math.floor(this._charSizeService.width*w),this.dimensions.device.char.height=Math.ceil(this._charSizeService.height*w),this.dimensions.device.cell.height=Math.floor(this.dimensions.device.char.height*this._optionsService.rawOptions.lineHeight),this.dimensions.device.char.top=this._optionsService.rawOptions.lineHeight===1?0:Math.round((this.dimensions.device.cell.height-this.dimensions.device.char.height)/2),this.dimensions.device.cell.width=this.dimensions.device.char.width+Math.round(this._optionsService.rawOptions.letterSpacing),this.dimensions.device.char.left=Math.floor(this._optionsService.rawOptions.letterSpacing/2),this.dimensions.device.canvas.height=this._bufferService.rows*this.dimensions.device.cell.height,this.dimensions.device.canvas.width=this._bufferService.cols*this.dimensions.device.cell.width,this.dimensions.css.canvas.height=Math.round(this.dimensions.device.canvas.height/w),this.dimensions.css.canvas.width=Math.round(this.dimensions.device.canvas.width/w),this.dimensions.css.cell.height=this.dimensions.css.canvas.height/this._bufferService.rows,this.dimensions.css.cell.width=this.dimensions.css.canvas.width/this._bufferService.cols}_setCanvasDevicePixelDimensions(w,y){this.dimensions.device.canvas.height=y,this.dimensions.device.canvas.width=w;for(const m of this._renderLayers)m.resize(this.dimensions);this._requestRedrawViewport()}_requestRedrawViewport(){this._onRequestRedraw.fire({start:0,end:this._bufferService.rows-1})}}o.CanvasRenderer=x},873:(a,o,h)=>{Object.defineProperty(o,"__esModule",{value:!0}),o.CursorRenderLayer=void 0;const l=h(457),c=h(859),d=h(399),v=h(782),u=h(903);class g extends u.BaseRenderLayer{constructor(f,A,x,S,w,y,m,C,E,b){super(f,A,"cursor",x,!0,b,w,y,E,C),this._onRequestRedraw=S,this._coreService=m,this._cursorBlinkStateManager=this.register(new c.MutableDisposable),this._cell=new v.CellData,this._state={x:0,y:0,isFocused:!1,style:"",width:0},this._cursorRenderers={bar:this._renderBarCursor.bind(this),block:this._renderBlockCursor.bind(this),underline:this._renderUnderlineCursor.bind(this),outline:this._renderOutlineCursor.bind(this)},this.register(y.onOptionChange((()=>this._handleOptionsChanged()))),this._handleOptionsChanged()}resize(f){super.resize(f),this._state={x:0,y:0,isFocused:!1,style:"",width:0}}reset(){var f;this._clearCursor(),(f=this._cursorBlinkStateManager.value)==null||f.restartBlinkAnimation(),this._handleOptionsChanged()}handleBlur(){var f;(f=this._cursorBlinkStateManager.value)==null||f.pause(),this._onRequestRedraw.fire({start:this._bufferService.buffer.y,end:this._bufferService.buffer.y})}handleFocus(){var f;(f=this._cursorBlinkStateManager.value)==null||f.resume(),this._onRequestRedraw.fire({start:this._bufferService.buffer.y,end:this._bufferService.buffer.y})}_handleOptionsChanged(){this._optionsService.rawOptions.cursorBlink?this._cursorBlinkStateManager.value||(this._cursorBlinkStateManager.value=new l.CursorBlinkStateManager((()=>this._render(!0)),this._coreBrowserService)):this._cursorBlinkStateManager.clear(),this._onRequestRedraw.fire({start:this._bufferService.buffer.y,end:this._bufferService.buffer.y})}handleCursorMove(){var f;(f=this._cursorBlinkStateManager.value)==null||f.restartBlinkAnimation()}handleGridChanged(f,A){!this._cursorBlinkStateManager.value||this._cursorBlinkStateManager.value.isPaused?this._render(!1):this._cursorBlinkStateManager.value.restartBlinkAnimation()}_render(f){if(!this._coreService.isCursorInitialized||this._coreService.isCursorHidden)return void this._clearCursor();const A=this._bufferService.buffer.ybase+this._bufferService.buffer.y,x=A-this._bufferService.buffer.ydisp;if(x<0||x>=this._bufferService.rows)return void this._clearCursor();const S=Math.min(this._bufferService.buffer.x,this._bufferService.cols-1);if(this._bufferService.buffer.lines.get(A).loadCell(S,this._cell),this._cell.content!==void 0){if(!this._coreBrowserService.isFocused){this._clearCursor(),this._ctx.save(),this._ctx.fillStyle=this._themeService.colors.cursor.css;const w=this._optionsService.rawOptions.cursorStyle,y=this._optionsService.rawOptions.cursorInactiveStyle;return y&&y!=="none"&&this._cursorRenderers[y](S,x,this._cell),this._ctx.restore(),this._state.x=S,this._state.y=x,this._state.isFocused=!1,this._state.style=w,void(this._state.width=this._cell.getWidth())}if(!this._cursorBlinkStateManager.value||this._cursorBlinkStateManager.value.isCursorVisible){if(this._state){if(this._state.x===S&&this._state.y===x&&this._state.isFocused===this._coreBrowserService.isFocused&&this._state.style===this._optionsService.rawOptions.cursorStyle&&this._state.width===this._cell.getWidth())return;this._clearCursor()}this._ctx.save(),this._cursorRenderers[this._optionsService.rawOptions.cursorStyle||"block"](S,x,this._cell),this._ctx.restore(),this._state.x=S,this._state.y=x,this._state.isFocused=!1,this._state.style=this._optionsService.rawOptions.cursorStyle,this._state.width=this._cell.getWidth()}else this._clearCursor()}}_clearCursor(){this._state&&(d.isFirefox||this._coreBrowserService.dpr<1?this._clearAll():this._clearCells(this._state.x,this._state.y,this._state.width,1),this._state={x:0,y:0,isFocused:!1,style:"",width:0})}_renderBarCursor(f,A,x){this._ctx.save(),this._ctx.fillStyle=this._themeService.colors.cursor.css,this._fillLeftLineAtCell(f,A,this._optionsService.rawOptions.cursorWidth),this._ctx.restore()}_renderBlockCursor(f,A,x){this._ctx.save(),this._ctx.fillStyle=this._themeService.colors.cursor.css,this._fillCells(f,A,x.getWidth(),1),this._ctx.fillStyle=this._themeService.colors.cursorAccent.css,this._fillCharTrueColor(x,f,A),this._ctx.restore()}_renderUnderlineCursor(f,A,x){this._ctx.save(),this._ctx.fillStyle=this._themeService.colors.cursor.css,this._fillBottomLineAtCells(f,A),this._ctx.restore()}_renderOutlineCursor(f,A,x){this._ctx.save(),this._ctx.strokeStyle=this._themeService.colors.cursor.css,this._strokeRectAtCell(f,A,x.getWidth(),1),this._ctx.restore()}}o.CursorRenderLayer=g},574:(a,o)=>{Object.defineProperty(o,"__esModule",{value:!0}),o.GridCache=void 0,o.GridCache=class{constructor(){this.cache=[]}resize(h,l){for(let c=0;c{Object.defineProperty(o,"__esModule",{value:!0}),o.LinkRenderLayer=void 0;const l=h(197),c=h(237),d=h(903);class v extends d.BaseRenderLayer{constructor(g,_,f,A,x,S,w,y,m){super(g,_,"link",f,!0,m,x,S,w,y),this.register(A.onShowLinkUnderline((C=>this._handleShowLinkUnderline(C)))),this.register(A.onHideLinkUnderline((C=>this._handleHideLinkUnderline(C))))}resize(g){super.resize(g),this._state=void 0}reset(){this._clearCurrentLink()}_clearCurrentLink(){if(this._state){this._clearCells(this._state.x1,this._state.y1,this._state.cols-this._state.x1,1);const g=this._state.y2-this._state.y1-1;g>0&&this._clearCells(0,this._state.y1+1,this._state.cols,g),this._clearCells(0,this._state.y2,this._state.x2,1),this._state=void 0}}_handleShowLinkUnderline(g){if(g.fg===c.INVERTED_DEFAULT_COLOR?this._ctx.fillStyle=this._themeService.colors.background.css:g.fg&&(0,l.is256Color)(g.fg)?this._ctx.fillStyle=this._themeService.colors.ansi[g.fg].css:this._ctx.fillStyle=this._themeService.colors.foreground.css,g.y1===g.y2)this._fillBottomLineAtCells(g.x1,g.y1,g.x2-g.x1);else{this._fillBottomLineAtCells(g.x1,g.y1,g.cols-g.x1);for(let _=g.y1+1;_{Object.defineProperty(o,"__esModule",{value:!0}),o.SelectionRenderLayer=void 0;const l=h(903);class c extends l.BaseRenderLayer{constructor(v,u,g,_,f,A,x,S){super(v,u,"selection",g,!0,S,_,x,A,f),this._clearState()}_clearState(){this._state={start:void 0,end:void 0,columnSelectMode:void 0,ydisp:void 0}}resize(v){super.resize(v),this._selectionModel.selectionStart&&this._selectionModel.selectionEnd&&(this._clearState(),this._redrawSelection(this._selectionModel.selectionStart,this._selectionModel.selectionEnd,this._selectionModel.columnSelectMode))}reset(){this._state.start&&this._state.end&&(this._clearState(),this._clearAll())}handleBlur(){this.reset(),this._redrawSelection(this._selectionModel.selectionStart,this._selectionModel.selectionEnd,this._selectionModel.columnSelectMode)}handleFocus(){this.reset(),this._redrawSelection(this._selectionModel.selectionStart,this._selectionModel.selectionEnd,this._selectionModel.columnSelectMode)}handleSelectionChanged(v,u,g){super.handleSelectionChanged(v,u,g),this._redrawSelection(v,u,g)}_redrawSelection(v,u,g){if(!this._didStateChange(v,u,g,this._bufferService.buffer.ydisp))return;if(this._clearAll(),!v||!u)return void this._clearState();const _=v[1]-this._bufferService.buffer.ydisp,f=u[1]-this._bufferService.buffer.ydisp,A=Math.max(_,0),x=Math.min(f,this._bufferService.rows-1);if(A>=this._bufferService.rows||x<0)this._state.ydisp=this._bufferService.buffer.ydisp;else{if(this._ctx.fillStyle=(this._coreBrowserService.isFocused?this._themeService.colors.selectionBackgroundTransparent:this._themeService.colors.selectionInactiveBackgroundTransparent).css,g){const S=v[0],w=u[0]-S,y=x-A+1;this._fillCells(S,A,w,y)}else{const S=_===A?v[0]:0,w=A===f?u[0]:this._bufferService.cols;this._fillCells(S,A,w-S,1);const y=Math.max(x-A-1,0);if(this._fillCells(0,A+1,this._bufferService.cols,y),A!==x){const m=f===x?u[0]:this._bufferService.cols;this._fillCells(0,x,m,1)}}this._state.start=[v[0],v[1]],this._state.end=[u[0],u[1]],this._state.columnSelectMode=g,this._state.ydisp=this._bufferService.buffer.ydisp}}_didStateChange(v,u,g,_){return!this._areCoordinatesEqual(v,this._state.start)||!this._areCoordinatesEqual(u,this._state.end)||g!==this._state.columnSelectMode||_!==this._state.ydisp}_areCoordinatesEqual(v,u){return!(!v||!u)&&v[0]===u[0]&&v[1]===u[1]}}o.SelectionRenderLayer=c},744:(a,o,h)=>{Object.defineProperty(o,"__esModule",{value:!0}),o.TextRenderLayer=void 0;const l=h(577),c=h(147),d=h(782),v=h(855),u=h(903),g=h(574);class _ extends u.BaseRenderLayer{constructor(A,x,S,w,y,m,C,E,b,D){super(A,x,"text",S,w,D,y,m,E,b),this._characterJoinerService=C,this._characterWidth=0,this._characterFont="",this._characterOverlapCache={},this._workCell=new d.CellData,this._state=new g.GridCache,this.register(m.onSpecificOptionChange("allowTransparency",(M=>this._setTransparency(M))))}resize(A){super.resize(A);const x=this._getFont(!1,!1);this._characterWidth===A.device.char.width&&this._characterFont===x||(this._characterWidth=A.device.char.width,this._characterFont=x,this._characterOverlapCache={}),this._state.clear(),this._state.resize(this._bufferService.cols,this._bufferService.rows)}reset(){this._state.clear(),this._clearAll()}_forEachCell(A,x,S){for(let w=A;w<=x;w++){const y=w+this._bufferService.buffer.ydisp,m=this._bufferService.buffer.lines.get(y),C=this._characterJoinerService.getJoinedCharacters(y);for(let E=0;E0&&E===C[0][0]){D=!0;const k=C.shift();b=new l.JoinedCellData(this._workCell,m.translateToString(!0,k[0],k[1]),k[1]-k[0]),M=k[1]-1}!D&&this._isOverlapping(b)&&M{let M=null;E.isInverse()?M=E.isFgDefault()?this._themeService.colors.foreground.css:E.isFgRGB()?`rgb(${c.AttributeData.toColorRGB(E.getFgColor()).join(",")})`:this._themeService.colors.ansi[E.getFgColor()].css:E.isBgRGB()?M=`rgb(${c.AttributeData.toColorRGB(E.getBgColor()).join(",")})`:E.isBgPalette()&&(M=this._themeService.colors.ansi[E.getBgColor()].css);let k=!1;this._decorationService.forEachDecorationAtCell(b,this._bufferService.buffer.ydisp+D,void 0,(B=>{B.options.layer!=="top"&&k||(B.backgroundColorRGB&&(M=B.backgroundColorRGB.css),k=B.options.layer==="top")})),C===null&&(y=b,m=D),D!==m?(S.fillStyle=C||"",this._fillCells(y,m,w-y,1),y=b,m=D):C!==M&&(S.fillStyle=C||"",this._fillCells(y,m,b-y,1),y=b,m=D),C=M})),C!==null&&(S.fillStyle=C,this._fillCells(y,m,w-y,1)),S.restore()}_drawForeground(A,x){this._forEachCell(A,x,((S,w,y)=>this._drawChars(S,w,y)))}handleGridChanged(A,x){this._state.cache.length!==0&&(this._charAtlas&&this._charAtlas.beginFrame(),this._clearCells(0,A,this._bufferService.cols,x-A+1),this._drawBackground(A,x),this._drawForeground(A,x))}_isOverlapping(A){if(A.getWidth()!==1||A.getCode()<256)return!1;const x=A.getChars();if(this._characterOverlapCache.hasOwnProperty(x))return this._characterOverlapCache[x];this._ctx.save(),this._ctx.font=this._characterFont;const S=Math.floor(this._ctx.measureText(x).width)>this._characterWidth;return this._ctx.restore(),this._characterOverlapCache[x]=S,S}}o.TextRenderLayer=_},274:(a,o,h)=>{Object.defineProperty(o,"__esModule",{value:!0}),o.CellColorResolver=void 0;const l=h(855),c=h(160),d=h(374);let v,u=0,g=0,_=!1,f=!1,A=!1,x=0;o.CellColorResolver=class{constructor(S,w,y,m,C,E){this._terminal=S,this._optionService=w,this._selectionRenderModel=y,this._decorationService=m,this._coreBrowserService=C,this._themeService=E,this.result={fg:0,bg:0,ext:0}}resolve(S,w,y,m){if(this.result.bg=S.bg,this.result.fg=S.fg,this.result.ext=268435456&S.bg?S.extended.ext:0,g=0,u=0,f=!1,_=!1,A=!1,v=this._themeService.colors,x=0,S.getCode()!==l.NULL_CELL_CODE&&S.extended.underlineStyle===4){const C=Math.max(1,Math.floor(this._optionService.rawOptions.fontSize*this._coreBrowserService.dpr/15));x=w*m%(2*Math.round(C))}if(this._decorationService.forEachDecorationAtCell(w,y,"bottom",(C=>{C.backgroundColorRGB&&(g=C.backgroundColorRGB.rgba>>8&16777215,f=!0),C.foregroundColorRGB&&(u=C.foregroundColorRGB.rgba>>8&16777215,_=!0)})),A=this._selectionRenderModel.isCellSelected(this._terminal,w,y),A){if(67108864&this.result.fg||(50331648&this.result.bg)!=0){if(67108864&this.result.fg)switch(50331648&this.result.fg){case 16777216:case 33554432:g=this._themeService.colors.ansi[255&this.result.fg].rgba;break;case 50331648:g=(16777215&this.result.fg)<<8|255;break;default:g=this._themeService.colors.foreground.rgba}else switch(50331648&this.result.bg){case 16777216:case 33554432:g=this._themeService.colors.ansi[255&this.result.bg].rgba;break;case 50331648:g=(16777215&this.result.bg)<<8|255}g=c.rgba.blend(g,4294967040&(this._coreBrowserService.isFocused?v.selectionBackgroundOpaque:v.selectionInactiveBackgroundOpaque).rgba|128)>>8&16777215}else g=(this._coreBrowserService.isFocused?v.selectionBackgroundOpaque:v.selectionInactiveBackgroundOpaque).rgba>>8&16777215;if(f=!0,v.selectionForeground&&(u=v.selectionForeground.rgba>>8&16777215,_=!0),(0,d.treatGlyphAsBackgroundColor)(S.getCode())){if(67108864&this.result.fg&&(50331648&this.result.bg)==0)u=(this._coreBrowserService.isFocused?v.selectionBackgroundOpaque:v.selectionInactiveBackgroundOpaque).rgba>>8&16777215;else{if(67108864&this.result.fg)switch(50331648&this.result.bg){case 16777216:case 33554432:u=this._themeService.colors.ansi[255&this.result.bg].rgba;break;case 50331648:u=(16777215&this.result.bg)<<8|255}else switch(50331648&this.result.fg){case 16777216:case 33554432:u=this._themeService.colors.ansi[255&this.result.fg].rgba;break;case 50331648:u=(16777215&this.result.fg)<<8|255;break;default:u=this._themeService.colors.foreground.rgba}u=c.rgba.blend(u,4294967040&(this._coreBrowserService.isFocused?v.selectionBackgroundOpaque:v.selectionInactiveBackgroundOpaque).rgba|128)>>8&16777215}_=!0}}this._decorationService.forEachDecorationAtCell(w,y,"top",(C=>{C.backgroundColorRGB&&(g=C.backgroundColorRGB.rgba>>8&16777215,f=!0),C.foregroundColorRGB&&(u=C.foregroundColorRGB.rgba>>8&16777215,_=!0)})),f&&(g=A?-16777216&S.bg&-134217729|g|50331648:-16777216&S.bg|g|50331648),_&&(u=-16777216&S.fg&-67108865|u|50331648),67108864&this.result.fg&&(f&&!_&&(u=(50331648&this.result.bg)==0?-134217728&this.result.fg|16777215&v.background.rgba>>8|50331648:-134217728&this.result.fg|67108863&this.result.bg,_=!0),!f&&_&&(g=(50331648&this.result.fg)==0?-67108864&this.result.bg|16777215&v.foreground.rgba>>8|50331648:-67108864&this.result.bg|67108863&this.result.fg,f=!0)),v=void 0,this.result.bg=f?g:this.result.bg,this.result.fg=_?u:this.result.fg,this.result.ext&=536870911,this.result.ext|=x<<29&3758096384}}},627:(a,o,h)=>{Object.defineProperty(o,"__esModule",{value:!0}),o.removeTerminalFromCache=o.acquireTextureAtlas=void 0;const l=h(509),c=h(197),d=[];o.acquireTextureAtlas=function(v,u,g,_,f,A,x,S){const w=(0,c.generateConfig)(_,f,A,x,u,g,S);for(let C=0;C=0){if((0,c.configEquals)(E.config,w))return E.atlas;E.ownedBy.length===1?(E.atlas.dispose(),d.splice(C,1)):E.ownedBy.splice(b,1);break}}for(let C=0;C{Object.defineProperty(o,"__esModule",{value:!0}),o.is256Color=o.configEquals=o.generateConfig=void 0;const l=h(160);o.generateConfig=function(c,d,v,u,g,_,f){const A={foreground:_.foreground,background:_.background,cursor:l.NULL_COLOR,cursorAccent:l.NULL_COLOR,selectionForeground:l.NULL_COLOR,selectionBackgroundTransparent:l.NULL_COLOR,selectionBackgroundOpaque:l.NULL_COLOR,selectionInactiveBackgroundTransparent:l.NULL_COLOR,selectionInactiveBackgroundOpaque:l.NULL_COLOR,ansi:_.ansi.slice(),contrastCache:_.contrastCache,halfContrastCache:_.halfContrastCache};return{customGlyphs:g.customGlyphs,devicePixelRatio:f,letterSpacing:g.letterSpacing,lineHeight:g.lineHeight,deviceCellWidth:c,deviceCellHeight:d,deviceCharWidth:v,deviceCharHeight:u,fontFamily:g.fontFamily,fontSize:g.fontSize,fontWeight:g.fontWeight,fontWeightBold:g.fontWeightBold,allowTransparency:g.allowTransparency,drawBoldTextInBrightColors:g.drawBoldTextInBrightColors,minimumContrastRatio:g.minimumContrastRatio,colors:A}},o.configEquals=function(c,d){for(let v=0;v{Object.defineProperty(o,"__esModule",{value:!0}),o.TEXT_BASELINE=o.DIM_OPACITY=o.INVERTED_DEFAULT_COLOR=void 0;const l=h(399);o.INVERTED_DEFAULT_COLOR=257,o.DIM_OPACITY=.5,o.TEXT_BASELINE=l.isFirefox||l.isLegacyEdge?"bottom":"ideographic"},457:(a,o)=>{Object.defineProperty(o,"__esModule",{value:!0}),o.CursorBlinkStateManager=void 0,o.CursorBlinkStateManager=class{constructor(h,l){this._renderCallback=h,this._coreBrowserService=l,this.isCursorVisible=!0,this._coreBrowserService.isFocused&&this._restartInterval()}get isPaused(){return!(this._blinkStartTimeout||this._blinkInterval)}dispose(){this._blinkInterval&&(this._coreBrowserService.window.clearInterval(this._blinkInterval),this._blinkInterval=void 0),this._blinkStartTimeout&&(this._coreBrowserService.window.clearTimeout(this._blinkStartTimeout),this._blinkStartTimeout=void 0),this._animationFrame&&(this._coreBrowserService.window.cancelAnimationFrame(this._animationFrame),this._animationFrame=void 0)}restartBlinkAnimation(){this.isPaused||(this._animationTimeRestarted=Date.now(),this.isCursorVisible=!0,this._animationFrame||(this._animationFrame=this._coreBrowserService.window.requestAnimationFrame((()=>{this._renderCallback(),this._animationFrame=void 0}))))}_restartInterval(h=600){this._blinkInterval&&(this._coreBrowserService.window.clearInterval(this._blinkInterval),this._blinkInterval=void 0),this._blinkStartTimeout=this._coreBrowserService.window.setTimeout((()=>{if(this._animationTimeRestarted){const l=600-(Date.now()-this._animationTimeRestarted);if(this._animationTimeRestarted=void 0,l>0)return void this._restartInterval(l)}this.isCursorVisible=!1,this._animationFrame=this._coreBrowserService.window.requestAnimationFrame((()=>{this._renderCallback(),this._animationFrame=void 0})),this._blinkInterval=this._coreBrowserService.window.setInterval((()=>{if(this._animationTimeRestarted){const l=600-(Date.now()-this._animationTimeRestarted);return this._animationTimeRestarted=void 0,void this._restartInterval(l)}this.isCursorVisible=!this.isCursorVisible,this._animationFrame=this._coreBrowserService.window.requestAnimationFrame((()=>{this._renderCallback(),this._animationFrame=void 0}))}),600)}),h)}pause(){this.isCursorVisible=!0,this._blinkInterval&&(this._coreBrowserService.window.clearInterval(this._blinkInterval),this._blinkInterval=void 0),this._blinkStartTimeout&&(this._coreBrowserService.window.clearTimeout(this._blinkStartTimeout),this._blinkStartTimeout=void 0),this._animationFrame&&(this._coreBrowserService.window.cancelAnimationFrame(this._animationFrame),this._animationFrame=void 0)}resume(){this.pause(),this._animationTimeRestarted=void 0,this._restartInterval(),this.restartBlinkAnimation()}}},860:(a,o,h)=>{Object.defineProperty(o,"__esModule",{value:!0}),o.tryDrawCustomChar=o.powerlineDefinitions=o.boxDrawingDefinitions=o.blockElementDefinitions=void 0;const l=h(374);o.blockElementDefinitions={"▀":[{x:0,y:0,w:8,h:4}],"▁":[{x:0,y:7,w:8,h:1}],"▂":[{x:0,y:6,w:8,h:2}],"▃":[{x:0,y:5,w:8,h:3}],"▄":[{x:0,y:4,w:8,h:4}],"▅":[{x:0,y:3,w:8,h:5}],"▆":[{x:0,y:2,w:8,h:6}],"▇":[{x:0,y:1,w:8,h:7}],"█":[{x:0,y:0,w:8,h:8}],"▉":[{x:0,y:0,w:7,h:8}],"▊":[{x:0,y:0,w:6,h:8}],"▋":[{x:0,y:0,w:5,h:8}],"▌":[{x:0,y:0,w:4,h:8}],"▍":[{x:0,y:0,w:3,h:8}],"▎":[{x:0,y:0,w:2,h:8}],"▏":[{x:0,y:0,w:1,h:8}],"▐":[{x:4,y:0,w:4,h:8}],"▔":[{x:0,y:0,w:8,h:1}],"▕":[{x:7,y:0,w:1,h:8}],"▖":[{x:0,y:4,w:4,h:4}],"▗":[{x:4,y:4,w:4,h:4}],"▘":[{x:0,y:0,w:4,h:4}],"▙":[{x:0,y:0,w:4,h:8},{x:0,y:4,w:8,h:4}],"▚":[{x:0,y:0,w:4,h:4},{x:4,y:4,w:4,h:4}],"▛":[{x:0,y:0,w:4,h:8},{x:4,y:0,w:4,h:4}],"▜":[{x:0,y:0,w:8,h:4},{x:4,y:0,w:4,h:8}],"▝":[{x:4,y:0,w:4,h:4}],"▞":[{x:4,y:0,w:4,h:4},{x:0,y:4,w:4,h:4}],"▟":[{x:4,y:0,w:4,h:8},{x:0,y:4,w:8,h:4}],"🭰":[{x:1,y:0,w:1,h:8}],"🭱":[{x:2,y:0,w:1,h:8}],"🭲":[{x:3,y:0,w:1,h:8}],"🭳":[{x:4,y:0,w:1,h:8}],"🭴":[{x:5,y:0,w:1,h:8}],"🭵":[{x:6,y:0,w:1,h:8}],"🭶":[{x:0,y:1,w:8,h:1}],"🭷":[{x:0,y:2,w:8,h:1}],"🭸":[{x:0,y:3,w:8,h:1}],"🭹":[{x:0,y:4,w:8,h:1}],"🭺":[{x:0,y:5,w:8,h:1}],"🭻":[{x:0,y:6,w:8,h:1}],"🭼":[{x:0,y:0,w:1,h:8},{x:0,y:7,w:8,h:1}],"🭽":[{x:0,y:0,w:1,h:8},{x:0,y:0,w:8,h:1}],"🭾":[{x:7,y:0,w:1,h:8},{x:0,y:0,w:8,h:1}],"🭿":[{x:7,y:0,w:1,h:8},{x:0,y:7,w:8,h:1}],"🮀":[{x:0,y:0,w:8,h:1},{x:0,y:7,w:8,h:1}],"🮁":[{x:0,y:0,w:8,h:1},{x:0,y:2,w:8,h:1},{x:0,y:4,w:8,h:1},{x:0,y:7,w:8,h:1}],"🮂":[{x:0,y:0,w:8,h:2}],"🮃":[{x:0,y:0,w:8,h:3}],"🮄":[{x:0,y:0,w:8,h:5}],"🮅":[{x:0,y:0,w:8,h:6}],"🮆":[{x:0,y:0,w:8,h:7}],"🮇":[{x:6,y:0,w:2,h:8}],"🮈":[{x:5,y:0,w:3,h:8}],"🮉":[{x:3,y:0,w:5,h:8}],"🮊":[{x:2,y:0,w:6,h:8}],"🮋":[{x:1,y:0,w:7,h:8}],"🮕":[{x:0,y:0,w:2,h:2},{x:4,y:0,w:2,h:2},{x:2,y:2,w:2,h:2},{x:6,y:2,w:2,h:2},{x:0,y:4,w:2,h:2},{x:4,y:4,w:2,h:2},{x:2,y:6,w:2,h:2},{x:6,y:6,w:2,h:2}],"🮖":[{x:2,y:0,w:2,h:2},{x:6,y:0,w:2,h:2},{x:0,y:2,w:2,h:2},{x:4,y:2,w:2,h:2},{x:2,y:4,w:2,h:2},{x:6,y:4,w:2,h:2},{x:0,y:6,w:2,h:2},{x:4,y:6,w:2,h:2}],"🮗":[{x:0,y:2,w:8,h:2},{x:0,y:6,w:8,h:2}]};const c={"░":[[1,0,0,0],[0,0,0,0],[0,0,1,0],[0,0,0,0]],"▒":[[1,0],[0,0],[0,1],[0,0]],"▓":[[0,1],[1,1],[1,0],[1,1]]};o.boxDrawingDefinitions={"─":{1:"M0,.5 L1,.5"},"━":{3:"M0,.5 L1,.5"},"│":{1:"M.5,0 L.5,1"},"┃":{3:"M.5,0 L.5,1"},"┌":{1:"M0.5,1 L.5,.5 L1,.5"},"┏":{3:"M0.5,1 L.5,.5 L1,.5"},"┐":{1:"M0,.5 L.5,.5 L.5,1"},"┓":{3:"M0,.5 L.5,.5 L.5,1"},"└":{1:"M.5,0 L.5,.5 L1,.5"},"┗":{3:"M.5,0 L.5,.5 L1,.5"},"┘":{1:"M.5,0 L.5,.5 L0,.5"},"┛":{3:"M.5,0 L.5,.5 L0,.5"},"├":{1:"M.5,0 L.5,1 M.5,.5 L1,.5"},"┣":{3:"M.5,0 L.5,1 M.5,.5 L1,.5"},"┤":{1:"M.5,0 L.5,1 M.5,.5 L0,.5"},"┫":{3:"M.5,0 L.5,1 M.5,.5 L0,.5"},"┬":{1:"M0,.5 L1,.5 M.5,.5 L.5,1"},"┳":{3:"M0,.5 L1,.5 M.5,.5 L.5,1"},"┴":{1:"M0,.5 L1,.5 M.5,.5 L.5,0"},"┻":{3:"M0,.5 L1,.5 M.5,.5 L.5,0"},"┼":{1:"M0,.5 L1,.5 M.5,0 L.5,1"},"╋":{3:"M0,.5 L1,.5 M.5,0 L.5,1"},"╴":{1:"M.5,.5 L0,.5"},"╸":{3:"M.5,.5 L0,.5"},"╵":{1:"M.5,.5 L.5,0"},"╹":{3:"M.5,.5 L.5,0"},"╶":{1:"M.5,.5 L1,.5"},"╺":{3:"M.5,.5 L1,.5"},"╷":{1:"M.5,.5 L.5,1"},"╻":{3:"M.5,.5 L.5,1"},"═":{1:(_,f)=>`M0,${.5-f} L1,${.5-f} M0,${.5+f} L1,${.5+f}`},"║":{1:(_,f)=>`M${.5-_},0 L${.5-_},1 M${.5+_},0 L${.5+_},1`},"╒":{1:(_,f)=>`M.5,1 L.5,${.5-f} L1,${.5-f} M.5,${.5+f} L1,${.5+f}`},"╓":{1:(_,f)=>`M${.5-_},1 L${.5-_},.5 L1,.5 M${.5+_},.5 L${.5+_},1`},"╔":{1:(_,f)=>`M1,${.5-f} L${.5-_},${.5-f} L${.5-_},1 M1,${.5+f} L${.5+_},${.5+f} L${.5+_},1`},"╕":{1:(_,f)=>`M0,${.5-f} L.5,${.5-f} L.5,1 M0,${.5+f} L.5,${.5+f}`},"╖":{1:(_,f)=>`M${.5+_},1 L${.5+_},.5 L0,.5 M${.5-_},.5 L${.5-_},1`},"╗":{1:(_,f)=>`M0,${.5+f} L${.5-_},${.5+f} L${.5-_},1 M0,${.5-f} L${.5+_},${.5-f} L${.5+_},1`},"╘":{1:(_,f)=>`M.5,0 L.5,${.5+f} L1,${.5+f} M.5,${.5-f} L1,${.5-f}`},"╙":{1:(_,f)=>`M1,.5 L${.5-_},.5 L${.5-_},0 M${.5+_},.5 L${.5+_},0`},"╚":{1:(_,f)=>`M1,${.5-f} L${.5+_},${.5-f} L${.5+_},0 M1,${.5+f} L${.5-_},${.5+f} L${.5-_},0`},"╛":{1:(_,f)=>`M0,${.5+f} L.5,${.5+f} L.5,0 M0,${.5-f} L.5,${.5-f}`},"╜":{1:(_,f)=>`M0,.5 L${.5+_},.5 L${.5+_},0 M${.5-_},.5 L${.5-_},0`},"╝":{1:(_,f)=>`M0,${.5-f} L${.5-_},${.5-f} L${.5-_},0 M0,${.5+f} L${.5+_},${.5+f} L${.5+_},0`},"╞":{1:(_,f)=>`M.5,0 L.5,1 M.5,${.5-f} L1,${.5-f} M.5,${.5+f} L1,${.5+f}`},"╟":{1:(_,f)=>`M${.5-_},0 L${.5-_},1 M${.5+_},0 L${.5+_},1 M${.5+_},.5 L1,.5`},"╠":{1:(_,f)=>`M${.5-_},0 L${.5-_},1 M1,${.5+f} L${.5+_},${.5+f} L${.5+_},1 M1,${.5-f} L${.5+_},${.5-f} L${.5+_},0`},"╡":{1:(_,f)=>`M.5,0 L.5,1 M0,${.5-f} L.5,${.5-f} M0,${.5+f} L.5,${.5+f}`},"╢":{1:(_,f)=>`M0,.5 L${.5-_},.5 M${.5-_},0 L${.5-_},1 M${.5+_},0 L${.5+_},1`},"╣":{1:(_,f)=>`M${.5+_},0 L${.5+_},1 M0,${.5+f} L${.5-_},${.5+f} L${.5-_},1 M0,${.5-f} L${.5-_},${.5-f} L${.5-_},0`},"╤":{1:(_,f)=>`M0,${.5-f} L1,${.5-f} M0,${.5+f} L1,${.5+f} M.5,${.5+f} L.5,1`},"╥":{1:(_,f)=>`M0,.5 L1,.5 M${.5-_},.5 L${.5-_},1 M${.5+_},.5 L${.5+_},1`},"╦":{1:(_,f)=>`M0,${.5-f} L1,${.5-f} M0,${.5+f} L${.5-_},${.5+f} L${.5-_},1 M1,${.5+f} L${.5+_},${.5+f} L${.5+_},1`},"╧":{1:(_,f)=>`M.5,0 L.5,${.5-f} M0,${.5-f} L1,${.5-f} M0,${.5+f} L1,${.5+f}`},"╨":{1:(_,f)=>`M0,.5 L1,.5 M${.5-_},.5 L${.5-_},0 M${.5+_},.5 L${.5+_},0`},"╩":{1:(_,f)=>`M0,${.5+f} L1,${.5+f} M0,${.5-f} L${.5-_},${.5-f} L${.5-_},0 M1,${.5-f} L${.5+_},${.5-f} L${.5+_},0`},"╪":{1:(_,f)=>`M.5,0 L.5,1 M0,${.5-f} L1,${.5-f} M0,${.5+f} L1,${.5+f}`},"╫":{1:(_,f)=>`M0,.5 L1,.5 M${.5-_},0 L${.5-_},1 M${.5+_},0 L${.5+_},1`},"╬":{1:(_,f)=>`M0,${.5+f} L${.5-_},${.5+f} L${.5-_},1 M1,${.5+f} L${.5+_},${.5+f} L${.5+_},1 M0,${.5-f} L${.5-_},${.5-f} L${.5-_},0 M1,${.5-f} L${.5+_},${.5-f} L${.5+_},0`},"╱":{1:"M1,0 L0,1"},"╲":{1:"M0,0 L1,1"},"╳":{1:"M1,0 L0,1 M0,0 L1,1"},"╼":{1:"M.5,.5 L0,.5",3:"M.5,.5 L1,.5"},"╽":{1:"M.5,.5 L.5,0",3:"M.5,.5 L.5,1"},"╾":{1:"M.5,.5 L1,.5",3:"M.5,.5 L0,.5"},"╿":{1:"M.5,.5 L.5,1",3:"M.5,.5 L.5,0"},"┍":{1:"M.5,.5 L.5,1",3:"M.5,.5 L1,.5"},"┎":{1:"M.5,.5 L1,.5",3:"M.5,.5 L.5,1"},"┑":{1:"M.5,.5 L.5,1",3:"M.5,.5 L0,.5"},"┒":{1:"M.5,.5 L0,.5",3:"M.5,.5 L.5,1"},"┕":{1:"M.5,.5 L.5,0",3:"M.5,.5 L1,.5"},"┖":{1:"M.5,.5 L1,.5",3:"M.5,.5 L.5,0"},"┙":{1:"M.5,.5 L.5,0",3:"M.5,.5 L0,.5"},"┚":{1:"M.5,.5 L0,.5",3:"M.5,.5 L.5,0"},"┝":{1:"M.5,0 L.5,1",3:"M.5,.5 L1,.5"},"┞":{1:"M0.5,1 L.5,.5 L1,.5",3:"M.5,.5 L.5,0"},"┟":{1:"M.5,0 L.5,.5 L1,.5",3:"M.5,.5 L.5,1"},"┠":{1:"M.5,.5 L1,.5",3:"M.5,0 L.5,1"},"┡":{1:"M.5,.5 L.5,1",3:"M.5,0 L.5,.5 L1,.5"},"┢":{1:"M.5,.5 L.5,0",3:"M0.5,1 L.5,.5 L1,.5"},"┥":{1:"M.5,0 L.5,1",3:"M.5,.5 L0,.5"},"┦":{1:"M0,.5 L.5,.5 L.5,1",3:"M.5,.5 L.5,0"},"┧":{1:"M.5,0 L.5,.5 L0,.5",3:"M.5,.5 L.5,1"},"┨":{1:"M.5,.5 L0,.5",3:"M.5,0 L.5,1"},"┩":{1:"M.5,.5 L.5,1",3:"M.5,0 L.5,.5 L0,.5"},"┪":{1:"M.5,.5 L.5,0",3:"M0,.5 L.5,.5 L.5,1"},"┭":{1:"M0.5,1 L.5,.5 L1,.5",3:"M.5,.5 L0,.5"},"┮":{1:"M0,.5 L.5,.5 L.5,1",3:"M.5,.5 L1,.5"},"┯":{1:"M.5,.5 L.5,1",3:"M0,.5 L1,.5"},"┰":{1:"M0,.5 L1,.5",3:"M.5,.5 L.5,1"},"┱":{1:"M.5,.5 L1,.5",3:"M0,.5 L.5,.5 L.5,1"},"┲":{1:"M.5,.5 L0,.5",3:"M0.5,1 L.5,.5 L1,.5"},"┵":{1:"M.5,0 L.5,.5 L1,.5",3:"M.5,.5 L0,.5"},"┶":{1:"M.5,0 L.5,.5 L0,.5",3:"M.5,.5 L1,.5"},"┷":{1:"M.5,.5 L.5,0",3:"M0,.5 L1,.5"},"┸":{1:"M0,.5 L1,.5",3:"M.5,.5 L.5,0"},"┹":{1:"M.5,.5 L1,.5",3:"M.5,0 L.5,.5 L0,.5"},"┺":{1:"M.5,.5 L0,.5",3:"M.5,0 L.5,.5 L1,.5"},"┽":{1:"M.5,0 L.5,1 M.5,.5 L1,.5",3:"M.5,.5 L0,.5"},"┾":{1:"M.5,0 L.5,1 M.5,.5 L0,.5",3:"M.5,.5 L1,.5"},"┿":{1:"M.5,0 L.5,1",3:"M0,.5 L1,.5"},"╀":{1:"M0,.5 L1,.5 M.5,.5 L.5,1",3:"M.5,.5 L.5,0"},"╁":{1:"M.5,.5 L.5,0 M0,.5 L1,.5",3:"M.5,.5 L.5,1"},"╂":{1:"M0,.5 L1,.5",3:"M.5,0 L.5,1"},"╃":{1:"M0.5,1 L.5,.5 L1,.5",3:"M.5,0 L.5,.5 L0,.5"},"╄":{1:"M0,.5 L.5,.5 L.5,1",3:"M.5,0 L.5,.5 L1,.5"},"╅":{1:"M.5,0 L.5,.5 L1,.5",3:"M0,.5 L.5,.5 L.5,1"},"╆":{1:"M.5,0 L.5,.5 L0,.5",3:"M0.5,1 L.5,.5 L1,.5"},"╇":{1:"M.5,.5 L.5,1",3:"M.5,.5 L.5,0 M0,.5 L1,.5"},"╈":{1:"M.5,.5 L.5,0",3:"M0,.5 L1,.5 M.5,.5 L.5,1"},"╉":{1:"M.5,.5 L1,.5",3:"M.5,0 L.5,1 M.5,.5 L0,.5"},"╊":{1:"M.5,.5 L0,.5",3:"M.5,0 L.5,1 M.5,.5 L1,.5"},"╌":{1:"M.1,.5 L.4,.5 M.6,.5 L.9,.5"},"╍":{3:"M.1,.5 L.4,.5 M.6,.5 L.9,.5"},"┄":{1:"M.0667,.5 L.2667,.5 M.4,.5 L.6,.5 M.7333,.5 L.9333,.5"},"┅":{3:"M.0667,.5 L.2667,.5 M.4,.5 L.6,.5 M.7333,.5 L.9333,.5"},"┈":{1:"M.05,.5 L.2,.5 M.3,.5 L.45,.5 M.55,.5 L.7,.5 M.8,.5 L.95,.5"},"┉":{3:"M.05,.5 L.2,.5 M.3,.5 L.45,.5 M.55,.5 L.7,.5 M.8,.5 L.95,.5"},"╎":{1:"M.5,.1 L.5,.4 M.5,.6 L.5,.9"},"╏":{3:"M.5,.1 L.5,.4 M.5,.6 L.5,.9"},"┆":{1:"M.5,.0667 L.5,.2667 M.5,.4 L.5,.6 M.5,.7333 L.5,.9333"},"┇":{3:"M.5,.0667 L.5,.2667 M.5,.4 L.5,.6 M.5,.7333 L.5,.9333"},"┊":{1:"M.5,.05 L.5,.2 M.5,.3 L.5,.45 L.5,.55 M.5,.7 L.5,.95"},"┋":{3:"M.5,.05 L.5,.2 M.5,.3 L.5,.45 L.5,.55 M.5,.7 L.5,.95"},"╭":{1:(_,f)=>`M.5,1 L.5,${.5+f/.15*.5} C.5,${.5+f/.15*.5},.5,.5,1,.5`},"╮":{1:(_,f)=>`M.5,1 L.5,${.5+f/.15*.5} C.5,${.5+f/.15*.5},.5,.5,0,.5`},"╯":{1:(_,f)=>`M.5,0 L.5,${.5-f/.15*.5} C.5,${.5-f/.15*.5},.5,.5,0,.5`},"╰":{1:(_,f)=>`M.5,0 L.5,${.5-f/.15*.5} C.5,${.5-f/.15*.5},.5,.5,1,.5`}},o.powerlineDefinitions={"":{d:"M0,0 L1,.5 L0,1",type:0,rightPadding:2},"":{d:"M-1,-.5 L1,.5 L-1,1.5",type:1,leftPadding:1,rightPadding:1},"":{d:"M1,0 L0,.5 L1,1",type:0,leftPadding:2},"":{d:"M2,-.5 L0,.5 L2,1.5",type:1,leftPadding:1,rightPadding:1},"":{d:"M0,0 L0,1 C0.552,1,1,0.776,1,.5 C1,0.224,0.552,0,0,0",type:0,rightPadding:1},"":{d:"M.2,1 C.422,1,.8,.826,.78,.5 C.8,.174,0.422,0,.2,0",type:1,rightPadding:1},"":{d:"M1,0 L1,1 C0.448,1,0,0.776,0,.5 C0,0.224,0.448,0,1,0",type:0,leftPadding:1},"":{d:"M.8,1 C0.578,1,0.2,.826,.22,.5 C0.2,0.174,0.578,0,0.8,0",type:1,leftPadding:1},"":{d:"M-.5,-.5 L1.5,1.5 L-.5,1.5",type:0},"":{d:"M-.5,-.5 L1.5,1.5",type:1,leftPadding:1,rightPadding:1},"":{d:"M1.5,-.5 L-.5,1.5 L1.5,1.5",type:0},"":{d:"M1.5,-.5 L-.5,1.5 L-.5,-.5",type:0},"":{d:"M1.5,-.5 L-.5,1.5",type:1,leftPadding:1,rightPadding:1},"":{d:"M-.5,-.5 L1.5,1.5 L1.5,-.5",type:0}},o.powerlineDefinitions[""]=o.powerlineDefinitions[""],o.powerlineDefinitions[""]=o.powerlineDefinitions[""],o.tryDrawCustomChar=function(_,f,A,x,S,w,y,m){const C=o.blockElementDefinitions[f];if(C)return(function(M,k,B,T,Q,O){for(let L=0;L7&&parseInt(I.slice(7,9),16)||1;else{if(!I.startsWith("rgba"))throw new Error(`Unexpected fillStyle color format "${I}" when drawing pattern glyph`);[we,_e,X,ie]=I.substring(5,I.length-1).split(",").map((oe=>parseFloat(oe)))}for(let oe=0;oe_.bezierCurveTo(f[0],f[1],f[2],f[3],f[4],f[5]),L:(_,f)=>_.lineTo(f[0],f[1]),M:(_,f)=>_.moveTo(f[0],f[1])};function g(_,f,A,x,S,w,y,m=0,C=0){const E=_.map((b=>parseFloat(b)||parseInt(b)));if(E.length<2)throw new Error("Too few arguments for instruction");for(let b=0;b{Object.defineProperty(o,"__esModule",{value:!0}),o.observeDevicePixelDimensions=void 0;const l=h(859);o.observeDevicePixelDimensions=function(c,d,v){let u=new d.ResizeObserver((g=>{const _=g.find((x=>x.target===c));if(!_)return;if(!("devicePixelContentBoxSize"in _))return u==null||u.disconnect(),void(u=void 0);const f=_.devicePixelContentBoxSize[0].inlineSize,A=_.devicePixelContentBoxSize[0].blockSize;f>0&&A>0&&v(f,A)}));try{u.observe(c,{box:["device-pixel-content-box"]})}catch{u.disconnect(),u=void 0}return(0,l.toDisposable)((()=>u==null?void 0:u.disconnect()))}},374:(a,o)=>{function h(c){return 57508<=c&&c<=57558}function l(c){return c>=128512&&c<=128591||c>=127744&&c<=128511||c>=128640&&c<=128767||c>=9728&&c<=9983||c>=9984&&c<=10175||c>=65024&&c<=65039||c>=129280&&c<=129535||c>=127462&&c<=127487}Object.defineProperty(o,"__esModule",{value:!0}),o.computeNextVariantOffset=o.createRenderDimensions=o.treatGlyphAsBackgroundColor=o.allowRescaling=o.isEmoji=o.isRestrictedPowerlineGlyph=o.isPowerlineGlyph=o.throwIfFalsy=void 0,o.throwIfFalsy=function(c){if(!c)throw new Error("value must not be falsy");return c},o.isPowerlineGlyph=h,o.isRestrictedPowerlineGlyph=function(c){return 57520<=c&&c<=57527},o.isEmoji=l,o.allowRescaling=function(c,d,v,u){return d===1&&v>Math.ceil(1.5*u)&&c!==void 0&&c>255&&!l(c)&&!h(c)&&!(function(g){return 57344<=g&&g<=63743})(c)},o.treatGlyphAsBackgroundColor=function(c){return h(c)||(function(d){return 9472<=d&&d<=9631})(c)},o.createRenderDimensions=function(){return{css:{canvas:{width:0,height:0},cell:{width:0,height:0}},device:{canvas:{width:0,height:0},cell:{width:0,height:0},char:{width:0,height:0,left:0,top:0}}}},o.computeNextVariantOffset=function(c,d,v=0){return(c-(2*Math.round(d)-v))%(2*Math.round(d))}},296:(a,o)=>{Object.defineProperty(o,"__esModule",{value:!0}),o.createSelectionRenderModel=void 0;class h{constructor(){this.clear()}clear(){this.hasSelection=!1,this.columnSelectMode=!1,this.viewportStartRow=0,this.viewportEndRow=0,this.viewportCappedStartRow=0,this.viewportCappedEndRow=0,this.startCol=0,this.endCol=0,this.selectionStart=void 0,this.selectionEnd=void 0}update(c,d,v,u=!1){if(this.selectionStart=d,this.selectionEnd=v,!d||!v||d[0]===v[0]&&d[1]===v[1])return void this.clear();const g=c.buffers.active.ydisp,_=d[1]-g,f=v[1]-g,A=Math.max(_,0),x=Math.min(f,c.rows-1);A>=c.rows||x<0?this.clear():(this.hasSelection=!0,this.columnSelectMode=u,this.viewportStartRow=_,this.viewportEndRow=f,this.viewportCappedStartRow=A,this.viewportCappedEndRow=x,this.startCol=d[0],this.endCol=v[0])}isCellSelected(c,d,v){return!!this.hasSelection&&(v-=c.buffer.active.viewportY,this.columnSelectMode?this.startCol<=this.endCol?d>=this.startCol&&v>=this.viewportCappedStartRow&&d=this.viewportCappedStartRow&&d>=this.endCol&&v<=this.viewportCappedEndRow:v>this.viewportStartRow&&v=this.startCol&&d=this.startCol)}}o.createSelectionRenderModel=function(){return new h}},509:(a,o,h)=>{Object.defineProperty(o,"__esModule",{value:!0}),o.TextureAtlas=void 0;const l=h(237),c=h(860),d=h(374),v=h(160),u=h(345),g=h(485),_=h(385),f=h(147),A=h(855),x={texturePage:0,texturePosition:{x:0,y:0},texturePositionClipSpace:{x:0,y:0},offset:{x:0,y:0},size:{x:0,y:0},sizeClipSpace:{x:0,y:0}};let S;class w{get pages(){return this._pages}constructor(b,D,M){this._document=b,this._config=D,this._unicodeService=M,this._didWarmUp=!1,this._cacheMap=new g.FourKeyMap,this._cacheMapCombined=new g.FourKeyMap,this._pages=[],this._activePages=[],this._workBoundingBox={top:0,left:0,bottom:0,right:0},this._workAttributeData=new f.AttributeData,this._textureSize=512,this._onAddTextureAtlasCanvas=new u.EventEmitter,this.onAddTextureAtlasCanvas=this._onAddTextureAtlasCanvas.event,this._onRemoveTextureAtlasCanvas=new u.EventEmitter,this.onRemoveTextureAtlasCanvas=this._onRemoveTextureAtlasCanvas.event,this._requestClearModel=!1,this._createNewPage(),this._tmpCanvas=C(b,4*this._config.deviceCellWidth+4,this._config.deviceCellHeight+4),this._tmpCtx=(0,d.throwIfFalsy)(this._tmpCanvas.getContext("2d",{alpha:this._config.allowTransparency,willReadFrequently:!0}))}dispose(){for(const b of this.pages)b.canvas.remove();this._onAddTextureAtlasCanvas.dispose()}warmUp(){this._didWarmUp||(this._doWarmUp(),this._didWarmUp=!0)}_doWarmUp(){const b=new _.IdleTaskQueue;for(let D=33;D<126;D++)b.enqueue((()=>{if(!this._cacheMap.get(D,A.DEFAULT_COLOR,A.DEFAULT_COLOR,A.DEFAULT_EXT)){const M=this._drawToCache(D,A.DEFAULT_COLOR,A.DEFAULT_COLOR,A.DEFAULT_EXT);this._cacheMap.set(D,A.DEFAULT_COLOR,A.DEFAULT_COLOR,A.DEFAULT_EXT,M)}}))}beginFrame(){return this._requestClearModel}clearTexture(){if(this._pages[0].currentRow.x!==0||this._pages[0].currentRow.y!==0){for(const b of this._pages)b.clear();this._cacheMap.clear(),this._cacheMapCombined.clear(),this._didWarmUp=!1}}_createNewPage(){if(w.maxAtlasPages&&this._pages.length>=Math.max(4,w.maxAtlasPages)){const D=this._pages.filter((L=>2*L.canvas.width<=(w.maxTextureSize||4096))).sort(((L,I)=>I.canvas.width!==L.canvas.width?I.canvas.width-L.canvas.width:I.percentageUsed-L.percentageUsed));let M=-1,k=0;for(let L=0;LL.glyphs[0].texturePage)).sort(((L,I)=>L>I?1:-1)),Q=this.pages.length-B.length,O=this._mergePages(B,Q);O.version++;for(let L=T.length-1;L>=0;L--)this._deletePage(T[L]);this.pages.push(O),this._requestClearModel=!0,this._onAddTextureAtlasCanvas.fire(O.canvas)}const b=new y(this._document,this._textureSize);return this._pages.push(b),this._activePages.push(b),this._onAddTextureAtlasCanvas.fire(b.canvas),b}_mergePages(b,D){const M=2*b[0].canvas.width,k=new y(this._document,M,b);for(const[B,T]of b.entries()){const Q=B*T.canvas.width%M,O=Math.floor(B/2)*T.canvas.height;k.ctx.drawImage(T.canvas,Q,O);for(const I of T.glyphs)I.texturePage=D,I.sizeClipSpace.x=I.size.x/M,I.sizeClipSpace.y=I.size.y/M,I.texturePosition.x+=Q,I.texturePosition.y+=O,I.texturePositionClipSpace.x=I.texturePosition.x/M,I.texturePositionClipSpace.y=I.texturePosition.y/M;this._onRemoveTextureAtlasCanvas.fire(T.canvas);const L=this._activePages.indexOf(T);L!==-1&&this._activePages.splice(L,1)}return k}_deletePage(b){this._pages.splice(b,1);for(let D=b;D=this._config.colors.ansi.length)throw new Error("No color found for idx "+b);return this._config.colors.ansi[b]}_getBackgroundColor(b,D,M,k){if(this._config.allowTransparency)return v.NULL_COLOR;let B;switch(b){case 16777216:case 33554432:B=this._getColorFromAnsiIndex(D);break;case 50331648:const T=f.AttributeData.toColorRGB(D);B=v.channels.toColor(T[0],T[1],T[2]);break;default:B=M?v.color.opaque(this._config.colors.foreground):this._config.colors.background}return B}_getForegroundColor(b,D,M,k,B,T,Q,O,L,I){const F=this._getMinimumContrastColor(b,D,M,k,B,T,Q,L,O,I);if(F)return F;let U;switch(B){case 16777216:case 33554432:this._config.drawBoldTextInBrightColors&&L&&T<8&&(T+=8),U=this._getColorFromAnsiIndex(T);break;case 50331648:const re=f.AttributeData.toColorRGB(T);U=v.channels.toColor(re[0],re[1],re[2]);break;default:U=Q?this._config.colors.background:this._config.colors.foreground}return this._config.allowTransparency&&(U=v.color.opaque(U)),O&&(U=v.color.multiplyOpacity(U,l.DIM_OPACITY)),U}_resolveBackgroundRgba(b,D,M){switch(b){case 16777216:case 33554432:return this._getColorFromAnsiIndex(D).rgba;case 50331648:return D<<8;default:return M?this._config.colors.foreground.rgba:this._config.colors.background.rgba}}_resolveForegroundRgba(b,D,M,k){switch(b){case 16777216:case 33554432:return this._config.drawBoldTextInBrightColors&&k&&D<8&&(D+=8),this._getColorFromAnsiIndex(D).rgba;case 50331648:return D<<8;default:return M?this._config.colors.background.rgba:this._config.colors.foreground.rgba}}_getMinimumContrastColor(b,D,M,k,B,T,Q,O,L,I){if(this._config.minimumContrastRatio===1||I)return;const F=this._getContrastCache(L),U=F.getColor(b,k);if(U!==void 0)return U||void 0;const re=this._resolveBackgroundRgba(D,M,Q),ge=this._resolveForegroundRgba(B,T,Q,O),he=v.rgba.ensureContrastRatio(re,ge,this._config.minimumContrastRatio/(L?2:1));if(!he)return void F.setColor(b,k,null);const ne=v.channels.toColor(he>>24&255,he>>16&255,he>>8&255);return F.setColor(b,k,ne),ne}_getContrastCache(b){return b?this._config.colors.halfContrastCache:this._config.colors.contrastCache}_drawToCache(b,D,M,k,B=!1){const T=typeof b=="number"?String.fromCharCode(b):b,Q=Math.min(this._config.deviceCellWidth*Math.max(T.length,2)+4,this._textureSize);this._tmpCanvas.width=ae?2*ae-gt:ae-gt;gt>=ae||pe===0?(this._tmpCtx.setLineDash([Math.round(ae),Math.round(ae)]),this._tmpCtx.moveTo(Re+pe,Pe),this._tmpCtx.lineTo(Je,Pe)):(this._tmpCtx.setLineDash([Math.round(ae),Math.round(ae)]),this._tmpCtx.moveTo(Re,Pe),this._tmpCtx.lineTo(Re+pe,Pe),this._tmpCtx.moveTo(Re+pe+ae,Pe),this._tmpCtx.lineTo(Je,Pe)),gt=(0,d.computeNextVariantOffset)(Je-Re,ae,gt);break;case 5:const Fe=.6,ai=.3,li=Je-Re,Ss=Math.floor(Fe*li),Ni=Math.floor(ai*li),Fi=li-Ss-Ni;this._tmpCtx.setLineDash([Ss,Ni,Fi]),this._tmpCtx.moveTo(Re,Pe),this._tmpCtx.lineTo(Je,Pe);break;default:this._tmpCtx.moveTo(Re,Pe),this._tmpCtx.lineTo(Je,Pe)}this._tmpCtx.stroke(),this._tmpCtx.restore()}if(this._tmpCtx.restore(),!le&&this._config.fontSize>=12&&!this._config.allowTransparency&&T!==" "){this._tmpCtx.save(),this._tmpCtx.textBaseline="alphabetic";const We=this._tmpCtx.measureText(T);if(this._tmpCtx.restore(),"actualBoundingBoxDescent"in We&&We.actualBoundingBoxDescent>0){this._tmpCtx.save();const Re=new Path2D;Re.rect(Ke,Pe-Math.ceil(ae/2),this._config.deviceCellWidth*de,ht-Pe+Math.ceil(ae/2)),this._tmpCtx.clip(Re),this._tmpCtx.lineWidth=3*this._config.devicePixelRatio,this._tmpCtx.strokeStyle=ie.css,this._tmpCtx.strokeText(T,K,K+this._config.deviceCharHeight),this._tmpCtx.restore()}}}if(he){const ae=Math.max(1,Math.floor(this._config.fontSize*this._config.devicePixelRatio/15)),Ee=ae%2==1?.5:0;this._tmpCtx.lineWidth=ae,this._tmpCtx.strokeStyle=this._tmpCtx.fillStyle,this._tmpCtx.beginPath(),this._tmpCtx.moveTo(K,K+Ee),this._tmpCtx.lineTo(K+this._config.deviceCharWidth*de,K+Ee),this._tmpCtx.stroke()}if(le||this._tmpCtx.fillText(T,K,K+this._config.deviceCharHeight),T==="_"&&!this._config.allowTransparency){let ae=m(this._tmpCtx.getImageData(K,K,this._config.deviceCellWidth,this._config.deviceCellHeight),ie,N,ve);if(ae)for(let Ee=1;Ee<=5&&(this._tmpCtx.save(),this._tmpCtx.fillStyle=ie.css,this._tmpCtx.fillRect(0,0,this._tmpCanvas.width,this._tmpCanvas.height),this._tmpCtx.restore(),this._tmpCtx.fillText(T,K,K+this._config.deviceCharHeight-Ee),ae=m(this._tmpCtx.getImageData(K,K,this._config.deviceCellWidth,this._config.deviceCellHeight),ie,N,ve),ae);Ee++);}if(ge){const ae=Math.max(1,Math.floor(this._config.fontSize*this._config.devicePixelRatio/10)),Ee=this._tmpCtx.lineWidth%2==1?.5:0;this._tmpCtx.lineWidth=ae,this._tmpCtx.strokeStyle=this._tmpCtx.fillStyle,this._tmpCtx.beginPath(),this._tmpCtx.moveTo(K,K+Math.floor(this._config.deviceCharHeight/2)-Ee),this._tmpCtx.lineTo(K+this._config.deviceCharWidth*de,K+Math.floor(this._config.deviceCharHeight/2)-Ee),this._tmpCtx.stroke()}this._tmpCtx.restore();const Ce=this._tmpCtx.getImageData(0,0,this._tmpCanvas.width,this._tmpCanvas.height);let Ie;if(Ie=this._config.allowTransparency?(function(ae){for(let Ee=0;Ee0)return!1;return!0})(Ce):m(Ce,ie,N,ve),Ie)return x;const Ae=this._findGlyphBoundingBox(Ce,this._workBoundingBox,Q,H,le,K);let be,ye;for(;;){if(this._activePages.length===0){const ae=this._createNewPage();be=ae,ye=ae.currentRow,ye.height=Ae.size.y;break}be=this._activePages[this._activePages.length-1],ye=be.currentRow;for(const ae of this._activePages)Ae.size.y<=ae.currentRow.height&&(be=ae,ye=ae.currentRow);for(let ae=this._activePages.length-1;ae>=0;ae--)for(const Ee of this._activePages[ae].fixedRows)Ee.height<=ye.height&&Ae.size.y<=Ee.height&&(be=this._activePages[ae],ye=Ee);if(ye.y+Ae.size.y>=be.canvas.height||ye.height>Ae.size.y+2){let ae=!1;if(be.currentRow.y+be.currentRow.height+Ae.size.y>=be.canvas.height){let Ee;for(const Ke of this._activePages)if(Ke.currentRow.y+Ke.currentRow.height+Ae.size.y=w.maxAtlasPages&&ye.y+Ae.size.y<=be.canvas.height&&ye.height>=Ae.size.y&&ye.x+Ae.size.x<=be.canvas.width)ae=!0;else{const Ke=this._createNewPage();be=Ke,ye=Ke.currentRow,ye.height=Ae.size.y,ae=!0}}ae||(be.currentRow.height>0&&be.fixedRows.push(be.currentRow),ye={x:0,y:be.currentRow.y+be.currentRow.height,height:Ae.size.y},be.fixedRows.push(ye),be.currentRow={x:0,y:ye.y+ye.height,height:0})}if(ye.x+Ae.size.x<=be.canvas.width)break;ye===be.currentRow?(ye.x=0,ye.y+=ye.height,ye.height=0):be.fixedRows.splice(be.fixedRows.indexOf(ye),1)}return Ae.texturePage=this._pages.indexOf(be),Ae.texturePosition.x=ye.x,Ae.texturePosition.y=ye.y,Ae.texturePositionClipSpace.x=ye.x/be.canvas.width,Ae.texturePositionClipSpace.y=ye.y/be.canvas.height,Ae.sizeClipSpace.x/=be.canvas.width,Ae.sizeClipSpace.y/=be.canvas.height,ye.height=Math.max(ye.height,Ae.size.y),ye.x+=Ae.size.x,be.ctx.putImageData(Ce,Ae.texturePosition.x-this._workBoundingBox.left,Ae.texturePosition.y-this._workBoundingBox.top,this._workBoundingBox.left,this._workBoundingBox.top,Ae.size.x,Ae.size.y),be.addGlyph(Ae),be.version++,Ae}_findGlyphBoundingBox(b,D,M,k,B,T){D.top=0;const Q=k?this._config.deviceCellHeight:this._tmpCanvas.height,O=k?this._config.deviceCellWidth:M;let L=!1;for(let I=0;I=T;I--){for(let F=0;F=0;I--){for(let F=0;F>>24,B=b.rgba>>>16&255,T=b.rgba>>>8&255,Q=D.rgba>>>24,O=D.rgba>>>16&255,L=D.rgba>>>8&255,I=Math.floor((Math.abs(k-Q)+Math.abs(B-O)+Math.abs(T-L))/12);let F=!0;for(let U=0;U=0;E--)(y=A[E])&&(C=(m<3?y(C):m>3?y(x,S,C):y(x,S))||C);return m>3&&C&&Object.defineProperty(x,S,C),C},c=this&&this.__param||function(A,x){return function(S,w){x(S,w,A)}};Object.defineProperty(o,"__esModule",{value:!0}),o.CharacterJoinerService=o.JoinedCellData=void 0;const d=h(147),v=h(855),u=h(782),g=h(97);class _ extends d.AttributeData{constructor(x,S,w){super(),this.content=0,this.combinedData="",this.fg=x.fg,this.bg=x.bg,this.combinedData=S,this._width=w}isCombined(){return 2097152}getWidth(){return this._width}getChars(){return this.combinedData}getCode(){return 2097151}setFromCharData(x){throw new Error("not implemented")}getAsCharData(){return[this.fg,this.getChars(),this.getWidth(),this.getCode()]}}o.JoinedCellData=_;let f=o.CharacterJoinerService=class mc{constructor(x){this._bufferService=x,this._characterJoiners=[],this._nextCharacterJoinerId=0,this._workCell=new u.CellData}register(x){const S={id:this._nextCharacterJoinerId++,handler:x};return this._characterJoiners.push(S),S.id}deregister(x){for(let S=0;S1){const k=this._getJoinedRanges(y,E,C,S,m);for(let B=0;B1){const M=this._getJoinedRanges(y,E,C,S,m);for(let k=0;k{Object.defineProperty(o,"__esModule",{value:!0}),o.contrastRatio=o.toPaddedHex=o.rgba=o.rgb=o.css=o.color=o.channels=o.NULL_COLOR=void 0;let h=0,l=0,c=0,d=0;var v,u,g,_,f;function A(S){const w=S.toString(16);return w.length<2?"0"+w:w}function x(S,w){return S>>0},S.toColor=function(w,y,m,C){return{css:S.toCss(w,y,m,C),rgba:S.toRgba(w,y,m,C)}}})(v||(o.channels=v={})),(function(S){function w(y,m){return d=Math.round(255*m),[h,l,c]=f.toChannels(y.rgba),{css:v.toCss(h,l,c,d),rgba:v.toRgba(h,l,c,d)}}S.blend=function(y,m){if(d=(255&m.rgba)/255,d===1)return{css:m.css,rgba:m.rgba};const C=m.rgba>>24&255,E=m.rgba>>16&255,b=m.rgba>>8&255,D=y.rgba>>24&255,M=y.rgba>>16&255,k=y.rgba>>8&255;return h=D+Math.round((C-D)*d),l=M+Math.round((E-M)*d),c=k+Math.round((b-k)*d),{css:v.toCss(h,l,c),rgba:v.toRgba(h,l,c)}},S.isOpaque=function(y){return(255&y.rgba)==255},S.ensureContrastRatio=function(y,m,C){const E=f.ensureContrastRatio(y.rgba,m.rgba,C);if(E)return v.toColor(E>>24&255,E>>16&255,E>>8&255)},S.opaque=function(y){const m=(255|y.rgba)>>>0;return[h,l,c]=f.toChannels(m),{css:v.toCss(h,l,c),rgba:m}},S.opacity=w,S.multiplyOpacity=function(y,m){return d=255&y.rgba,w(y,d*m/255)},S.toColorRGB=function(y){return[y.rgba>>24&255,y.rgba>>16&255,y.rgba>>8&255]}})(u||(o.color=u={})),(function(S){let w,y;try{const m=document.createElement("canvas");m.width=1,m.height=1;const C=m.getContext("2d",{willReadFrequently:!0});C&&(w=C,w.globalCompositeOperation="copy",y=w.createLinearGradient(0,0,1,1))}catch{}S.toColor=function(m){if(m.match(/#[\da-f]{3,8}/i))switch(m.length){case 4:return h=parseInt(m.slice(1,2).repeat(2),16),l=parseInt(m.slice(2,3).repeat(2),16),c=parseInt(m.slice(3,4).repeat(2),16),v.toColor(h,l,c);case 5:return h=parseInt(m.slice(1,2).repeat(2),16),l=parseInt(m.slice(2,3).repeat(2),16),c=parseInt(m.slice(3,4).repeat(2),16),d=parseInt(m.slice(4,5).repeat(2),16),v.toColor(h,l,c,d);case 7:return{css:m,rgba:(parseInt(m.slice(1),16)<<8|255)>>>0};case 9:return{css:m,rgba:parseInt(m.slice(1),16)>>>0}}const C=m.match(/rgba?\(\s*(\d{1,3})\s*,\s*(\d{1,3})\s*,\s*(\d{1,3})\s*(,\s*(0|1|\d?\.(\d+))\s*)?\)/);if(C)return h=parseInt(C[1]),l=parseInt(C[2]),c=parseInt(C[3]),d=Math.round(255*(C[5]===void 0?1:parseFloat(C[5]))),v.toColor(h,l,c,d);if(!w||!y)throw new Error("css.toColor: Unsupported css format");if(w.fillStyle=y,w.fillStyle=m,typeof w.fillStyle!="string")throw new Error("css.toColor: Unsupported css format");if(w.fillRect(0,0,1,1),[h,l,c,d]=w.getImageData(0,0,1,1).data,d!==255)throw new Error("css.toColor: Unsupported css format");return{rgba:v.toRgba(h,l,c,d),css:m}}})(g||(o.css=g={})),(function(S){function w(y,m,C){const E=y/255,b=m/255,D=C/255;return .2126*(E<=.03928?E/12.92:Math.pow((E+.055)/1.055,2.4))+.7152*(b<=.03928?b/12.92:Math.pow((b+.055)/1.055,2.4))+.0722*(D<=.03928?D/12.92:Math.pow((D+.055)/1.055,2.4))}S.relativeLuminance=function(y){return w(y>>16&255,y>>8&255,255&y)},S.relativeLuminance2=w})(_||(o.rgb=_={})),(function(S){function w(m,C,E){const b=m>>24&255,D=m>>16&255,M=m>>8&255;let k=C>>24&255,B=C>>16&255,T=C>>8&255,Q=x(_.relativeLuminance2(k,B,T),_.relativeLuminance2(b,D,M));for(;Q0||B>0||T>0);)k-=Math.max(0,Math.ceil(.1*k)),B-=Math.max(0,Math.ceil(.1*B)),T-=Math.max(0,Math.ceil(.1*T)),Q=x(_.relativeLuminance2(k,B,T),_.relativeLuminance2(b,D,M));return(k<<24|B<<16|T<<8|255)>>>0}function y(m,C,E){const b=m>>24&255,D=m>>16&255,M=m>>8&255;let k=C>>24&255,B=C>>16&255,T=C>>8&255,Q=x(_.relativeLuminance2(k,B,T),_.relativeLuminance2(b,D,M));for(;Q>>0}S.blend=function(m,C){if(d=(255&C)/255,d===1)return C;const E=C>>24&255,b=C>>16&255,D=C>>8&255,M=m>>24&255,k=m>>16&255,B=m>>8&255;return h=M+Math.round((E-M)*d),l=k+Math.round((b-k)*d),c=B+Math.round((D-B)*d),v.toRgba(h,l,c)},S.ensureContrastRatio=function(m,C,E){const b=_.relativeLuminance(m>>8),D=_.relativeLuminance(C>>8);if(x(b,D)>8));if(Tx(b,_.relativeLuminance(Q>>8))?B:Q}return B}const M=y(m,C,E),k=x(b,_.relativeLuminance(M>>8));if(kx(b,_.relativeLuminance(B>>8))?M:B}return M}},S.reduceLuminance=w,S.increaseLuminance=y,S.toChannels=function(m){return[m>>24&255,m>>16&255,m>>8&255,255&m]}})(f||(o.rgba=f={})),o.toPaddedHex=A,o.contrastRatio=x},345:(a,o)=>{Object.defineProperty(o,"__esModule",{value:!0}),o.runAndSubscribe=o.forwardEvent=o.EventEmitter=void 0,o.EventEmitter=class{constructor(){this._listeners=[],this._disposed=!1}get event(){return this._event||(this._event=h=>(this._listeners.push(h),{dispose:()=>{if(!this._disposed){for(let l=0;ll.fire(c)))},o.runAndSubscribe=function(h,l){return l(void 0),h((c=>l(c)))}},859:(a,o)=>{function h(l){for(const c of l)c.dispose();l.length=0}Object.defineProperty(o,"__esModule",{value:!0}),o.getDisposeArrayDisposable=o.disposeArray=o.toDisposable=o.MutableDisposable=o.Disposable=void 0,o.Disposable=class{constructor(){this._disposables=[],this._isDisposed=!1}dispose(){this._isDisposed=!0;for(const l of this._disposables)l.dispose();this._disposables.length=0}register(l){return this._disposables.push(l),l}unregister(l){const c=this._disposables.indexOf(l);c!==-1&&this._disposables.splice(c,1)}},o.MutableDisposable=class{constructor(){this._isDisposed=!1}get value(){return this._isDisposed?void 0:this._value}set value(l){var c;this._isDisposed||l===this._value||((c=this._value)==null||c.dispose(),this._value=l)}clear(){this.value=void 0}dispose(){var l;this._isDisposed=!0,(l=this._value)==null||l.dispose(),this._value=void 0}},o.toDisposable=function(l){return{dispose:l}},o.disposeArray=h,o.getDisposeArrayDisposable=function(l){return{dispose:()=>h(l)}}},485:(a,o)=>{Object.defineProperty(o,"__esModule",{value:!0}),o.FourKeyMap=o.TwoKeyMap=void 0;class h{constructor(){this._data={}}set(c,d,v){this._data[c]||(this._data[c]={}),this._data[c][d]=v}get(c,d){return this._data[c]?this._data[c][d]:void 0}clear(){this._data={}}}o.TwoKeyMap=h,o.FourKeyMap=class{constructor(){this._data=new h}set(l,c,d,v,u){this._data.get(l,c)||this._data.set(l,c,new h),this._data.get(l,c).set(d,v,u)}get(l,c,d,v){var u;return(u=this._data.get(l,c))==null?void 0:u.get(d,v)}clear(){this._data.clear()}}},399:(a,o)=>{Object.defineProperty(o,"__esModule",{value:!0}),o.isChromeOS=o.isLinux=o.isWindows=o.isIphone=o.isIpad=o.isMac=o.getSafariVersion=o.isSafari=o.isLegacyEdge=o.isFirefox=o.isNode=void 0,o.isNode=typeof process<"u"&&"title"in process;const h=o.isNode?"node":navigator.userAgent,l=o.isNode?"node":navigator.platform;o.isFirefox=h.includes("Firefox"),o.isLegacyEdge=h.includes("Edge"),o.isSafari=/^((?!chrome|android).)*safari/i.test(h),o.getSafariVersion=function(){if(!o.isSafari)return 0;const c=h.match(/Version\/(\d+)/);return c===null||c.length<2?0:parseInt(c[1])},o.isMac=["Macintosh","MacIntel","MacPPC","Mac68K"].includes(l),o.isIpad=l==="iPad",o.isIphone=l==="iPhone",o.isWindows=["Windows","Win16","Win32","WinCE"].includes(l),o.isLinux=l.indexOf("Linux")>=0,o.isChromeOS=/\bCrOS\b/.test(h)},385:(a,o,h)=>{Object.defineProperty(o,"__esModule",{value:!0}),o.DebouncedIdleTask=o.IdleTaskQueue=o.PriorityTaskQueue=void 0;const l=h(399);class c{constructor(){this._tasks=[],this._i=0}enqueue(u){this._tasks.push(u),this._start()}flush(){for(;this._iA)return f-g<-20&&console.warn(`task queue exceeded allotted deadline by ${Math.abs(Math.round(f-g))}ms`),void this._start();f=A}this.clear()}}class d extends c{_requestCallback(u){return setTimeout((()=>u(this._createDeadline(16))))}_cancelCallback(u){clearTimeout(u)}_createDeadline(u){const g=Date.now()+u;return{timeRemaining:()=>Math.max(0,g-Date.now())}}}o.PriorityTaskQueue=d,o.IdleTaskQueue=!l.isNode&&"requestIdleCallback"in window?class extends c{_requestCallback(v){return requestIdleCallback(v)}_cancelCallback(v){cancelIdleCallback(v)}}:d,o.DebouncedIdleTask=class{constructor(){this._queue=new o.IdleTaskQueue}set(v){this._queue.clear(),this._queue.enqueue(v)}flush(){this._queue.flush()}}},147:(a,o)=>{Object.defineProperty(o,"__esModule",{value:!0}),o.ExtendedAttrs=o.AttributeData=void 0;class h{constructor(){this.fg=0,this.bg=0,this.extended=new l}static toColorRGB(d){return[d>>>16&255,d>>>8&255,255&d]}static fromColorRGB(d){return(255&d[0])<<16|(255&d[1])<<8|255&d[2]}clone(){const d=new h;return d.fg=this.fg,d.bg=this.bg,d.extended=this.extended.clone(),d}isInverse(){return 67108864&this.fg}isBold(){return 134217728&this.fg}isUnderline(){return this.hasExtendedAttrs()&&this.extended.underlineStyle!==0?1:268435456&this.fg}isBlink(){return 536870912&this.fg}isInvisible(){return 1073741824&this.fg}isItalic(){return 67108864&this.bg}isDim(){return 134217728&this.bg}isStrikethrough(){return 2147483648&this.fg}isProtected(){return 536870912&this.bg}isOverline(){return 1073741824&this.bg}getFgColorMode(){return 50331648&this.fg}getBgColorMode(){return 50331648&this.bg}isFgRGB(){return(50331648&this.fg)==50331648}isBgRGB(){return(50331648&this.bg)==50331648}isFgPalette(){return(50331648&this.fg)==16777216||(50331648&this.fg)==33554432}isBgPalette(){return(50331648&this.bg)==16777216||(50331648&this.bg)==33554432}isFgDefault(){return(50331648&this.fg)==0}isBgDefault(){return(50331648&this.bg)==0}isAttributeDefault(){return this.fg===0&&this.bg===0}getFgColor(){switch(50331648&this.fg){case 16777216:case 33554432:return 255&this.fg;case 50331648:return 16777215&this.fg;default:return-1}}getBgColor(){switch(50331648&this.bg){case 16777216:case 33554432:return 255&this.bg;case 50331648:return 16777215&this.bg;default:return-1}}hasExtendedAttrs(){return 268435456&this.bg}updateExtended(){this.extended.isEmpty()?this.bg&=-268435457:this.bg|=268435456}getUnderlineColor(){if(268435456&this.bg&&~this.extended.underlineColor)switch(50331648&this.extended.underlineColor){case 16777216:case 33554432:return 255&this.extended.underlineColor;case 50331648:return 16777215&this.extended.underlineColor;default:return this.getFgColor()}return this.getFgColor()}getUnderlineColorMode(){return 268435456&this.bg&&~this.extended.underlineColor?50331648&this.extended.underlineColor:this.getFgColorMode()}isUnderlineColorRGB(){return 268435456&this.bg&&~this.extended.underlineColor?(50331648&this.extended.underlineColor)==50331648:this.isFgRGB()}isUnderlineColorPalette(){return 268435456&this.bg&&~this.extended.underlineColor?(50331648&this.extended.underlineColor)==16777216||(50331648&this.extended.underlineColor)==33554432:this.isFgPalette()}isUnderlineColorDefault(){return 268435456&this.bg&&~this.extended.underlineColor?(50331648&this.extended.underlineColor)==0:this.isFgDefault()}getUnderlineStyle(){return 268435456&this.fg?268435456&this.bg?this.extended.underlineStyle:1:0}getUnderlineVariantOffset(){return this.extended.underlineVariantOffset}}o.AttributeData=h;class l{get ext(){return this._urlId?-469762049&this._ext|this.underlineStyle<<26:this._ext}set ext(d){this._ext=d}get underlineStyle(){return this._urlId?5:(469762048&this._ext)>>26}set underlineStyle(d){this._ext&=-469762049,this._ext|=d<<26&469762048}get underlineColor(){return 67108863&this._ext}set underlineColor(d){this._ext&=-67108864,this._ext|=67108863&d}get urlId(){return this._urlId}set urlId(d){this._urlId=d}get underlineVariantOffset(){const d=(3758096384&this._ext)>>29;return d<0?4294967288^d:d}set underlineVariantOffset(d){this._ext&=536870911,this._ext|=d<<29&3758096384}constructor(d=0,v=0){this._ext=0,this._urlId=0,this._ext=d,this._urlId=v}clone(){return new l(this._ext,this._urlId)}isEmpty(){return this.underlineStyle===0&&this._urlId===0}}o.ExtendedAttrs=l},782:(a,o,h)=>{Object.defineProperty(o,"__esModule",{value:!0}),o.CellData=void 0;const l=h(133),c=h(855),d=h(147);class v extends d.AttributeData{constructor(){super(...arguments),this.content=0,this.fg=0,this.bg=0,this.extended=new d.ExtendedAttrs,this.combinedData=""}static fromCharData(g){const _=new v;return _.setFromCharData(g),_}isCombined(){return 2097152&this.content}getWidth(){return this.content>>22}getChars(){return 2097152&this.content?this.combinedData:2097151&this.content?(0,l.stringFromCodePoint)(2097151&this.content):""}getCode(){return this.isCombined()?this.combinedData.charCodeAt(this.combinedData.length-1):2097151&this.content}setFromCharData(g){this.fg=g[c.CHAR_DATA_ATTR_INDEX],this.bg=0;let _=!1;if(g[c.CHAR_DATA_CHAR_INDEX].length>2)_=!0;else if(g[c.CHAR_DATA_CHAR_INDEX].length===2){const f=g[c.CHAR_DATA_CHAR_INDEX].charCodeAt(0);if(55296<=f&&f<=56319){const A=g[c.CHAR_DATA_CHAR_INDEX].charCodeAt(1);56320<=A&&A<=57343?this.content=1024*(f-55296)+A-56320+65536|g[c.CHAR_DATA_WIDTH_INDEX]<<22:_=!0}else _=!0}else this.content=g[c.CHAR_DATA_CHAR_INDEX].charCodeAt(0)|g[c.CHAR_DATA_WIDTH_INDEX]<<22;_&&(this.combinedData=g[c.CHAR_DATA_CHAR_INDEX],this.content=2097152|g[c.CHAR_DATA_WIDTH_INDEX]<<22)}getAsCharData(){return[this.fg,this.getChars(),this.getWidth(),this.getCode()]}}o.CellData=v},855:(a,o)=>{Object.defineProperty(o,"__esModule",{value:!0}),o.WHITESPACE_CELL_CODE=o.WHITESPACE_CELL_WIDTH=o.WHITESPACE_CELL_CHAR=o.NULL_CELL_CODE=o.NULL_CELL_WIDTH=o.NULL_CELL_CHAR=o.CHAR_DATA_CODE_INDEX=o.CHAR_DATA_WIDTH_INDEX=o.CHAR_DATA_CHAR_INDEX=o.CHAR_DATA_ATTR_INDEX=o.DEFAULT_EXT=o.DEFAULT_ATTR=o.DEFAULT_COLOR=void 0,o.DEFAULT_COLOR=0,o.DEFAULT_ATTR=256|o.DEFAULT_COLOR<<9,o.DEFAULT_EXT=0,o.CHAR_DATA_ATTR_INDEX=0,o.CHAR_DATA_CHAR_INDEX=1,o.CHAR_DATA_WIDTH_INDEX=2,o.CHAR_DATA_CODE_INDEX=3,o.NULL_CELL_CHAR="",o.NULL_CELL_WIDTH=1,o.NULL_CELL_CODE=0,o.WHITESPACE_CELL_CHAR=" ",o.WHITESPACE_CELL_WIDTH=1,o.WHITESPACE_CELL_CODE=32},133:(a,o)=>{Object.defineProperty(o,"__esModule",{value:!0}),o.Utf8ToUtf32=o.StringToUtf32=o.utf32ToString=o.stringFromCodePoint=void 0,o.stringFromCodePoint=function(h){return h>65535?(h-=65536,String.fromCharCode(55296+(h>>10))+String.fromCharCode(h%1024+56320)):String.fromCharCode(h)},o.utf32ToString=function(h,l=0,c=h.length){let d="";for(let v=l;v65535?(u-=65536,d+=String.fromCharCode(55296+(u>>10))+String.fromCharCode(u%1024+56320)):d+=String.fromCharCode(u)}return d},o.StringToUtf32=class{constructor(){this._interim=0}clear(){this._interim=0}decode(h,l){const c=h.length;if(!c)return 0;let d=0,v=0;if(this._interim){const u=h.charCodeAt(v++);56320<=u&&u<=57343?l[d++]=1024*(this._interim-55296)+u-56320+65536:(l[d++]=this._interim,l[d++]=u),this._interim=0}for(let u=v;u=c)return this._interim=g,d;const _=h.charCodeAt(u);56320<=_&&_<=57343?l[d++]=1024*(g-55296)+_-56320+65536:(l[d++]=g,l[d++]=_)}else g!==65279&&(l[d++]=g)}return d}},o.Utf8ToUtf32=class{constructor(){this.interim=new Uint8Array(3)}clear(){this.interim.fill(0)}decode(h,l){const c=h.length;if(!c)return 0;let d,v,u,g,_=0,f=0,A=0;if(this.interim[0]){let w=!1,y=this.interim[0];y&=(224&y)==192?31:(240&y)==224?15:7;let m,C=0;for(;(m=63&this.interim[++C])&&C<4;)y<<=6,y|=m;const E=(224&this.interim[0])==192?2:(240&this.interim[0])==224?3:4,b=E-C;for(;A=c)return 0;if(m=h[A++],(192&m)!=128){A--,w=!0;break}this.interim[C++]=m,y<<=6,y|=63&m}w||(E===2?y<128?A--:l[_++]=y:E===3?y<2048||y>=55296&&y<=57343||y===65279||(l[_++]=y):y<65536||y>1114111||(l[_++]=y)),this.interim.fill(0)}const x=c-4;let S=A;for(;S=c)return this.interim[0]=d,_;if(v=h[S++],(192&v)!=128){S--;continue}if(f=(31&d)<<6|63&v,f<128){S--;continue}l[_++]=f}else if((240&d)==224){if(S>=c)return this.interim[0]=d,_;if(v=h[S++],(192&v)!=128){S--;continue}if(S>=c)return this.interim[0]=d,this.interim[1]=v,_;if(u=h[S++],(192&u)!=128){S--;continue}if(f=(15&d)<<12|(63&v)<<6|63&u,f<2048||f>=55296&&f<=57343||f===65279)continue;l[_++]=f}else if((248&d)==240){if(S>=c)return this.interim[0]=d,_;if(v=h[S++],(192&v)!=128){S--;continue}if(S>=c)return this.interim[0]=d,this.interim[1]=v,_;if(u=h[S++],(192&u)!=128){S--;continue}if(S>=c)return this.interim[0]=d,this.interim[1]=v,this.interim[2]=u,_;if(g=h[S++],(192&g)!=128){S--;continue}if(f=(7&d)<<18|(63&v)<<12|(63&u)<<6|63&g,f<65536||f>1114111)continue;l[_++]=f}}return _}}},776:function(a,o,h){var l=this&&this.__decorate||function(f,A,x,S){var w,y=arguments.length,m=y<3?A:S===null?S=Object.getOwnPropertyDescriptor(A,x):S;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")m=Reflect.decorate(f,A,x,S);else for(var C=f.length-1;C>=0;C--)(w=f[C])&&(m=(y<3?w(m):y>3?w(A,x,m):w(A,x))||m);return y>3&&m&&Object.defineProperty(A,x,m),m},c=this&&this.__param||function(f,A){return function(x,S){A(x,S,f)}};Object.defineProperty(o,"__esModule",{value:!0}),o.traceCall=o.setTraceLogger=o.LogService=void 0;const d=h(859),v=h(97),u={trace:v.LogLevelEnum.TRACE,debug:v.LogLevelEnum.DEBUG,info:v.LogLevelEnum.INFO,warn:v.LogLevelEnum.WARN,error:v.LogLevelEnum.ERROR,off:v.LogLevelEnum.OFF};let g,_=o.LogService=class extends d.Disposable{get logLevel(){return this._logLevel}constructor(f){super(),this._optionsService=f,this._logLevel=v.LogLevelEnum.OFF,this._updateLogLevel(),this.register(this._optionsService.onSpecificOptionChange("logLevel",(()=>this._updateLogLevel()))),g=this}_updateLogLevel(){this._logLevel=u[this._optionsService.rawOptions.logLevel]}_evalLazyOptionalParams(f){for(let A=0;AJSON.stringify(m))).join(", ")})`);const y=S.apply(this,w);return g.trace(`GlyphRenderer#${S.name} return`,y),y}}},726:(a,o)=>{Object.defineProperty(o,"__esModule",{value:!0}),o.createDecorator=o.getServiceDependencies=o.serviceRegistry=void 0;const h="di$target",l="di$dependencies";o.serviceRegistry=new Map,o.getServiceDependencies=function(c){return c[l]||[]},o.createDecorator=function(c){if(o.serviceRegistry.has(c))return o.serviceRegistry.get(c);const d=function(v,u,g){if(arguments.length!==3)throw new Error("@IServiceName-decorator can only be used to decorate a parameter");(function(_,f,A){f[h]===f?f[l].push({id:_,index:A}):(f[l]=[{id:_,index:A}],f[h]=f)})(d,v,g)};return d.toString=()=>c,o.serviceRegistry.set(c,d),d}},97:(a,o,h)=>{Object.defineProperty(o,"__esModule",{value:!0}),o.IDecorationService=o.IUnicodeService=o.IOscLinkService=o.IOptionsService=o.ILogService=o.LogLevelEnum=o.IInstantiationService=o.ICharsetService=o.ICoreService=o.ICoreMouseService=o.IBufferService=void 0;const l=h(726);var c;o.IBufferService=(0,l.createDecorator)("BufferService"),o.ICoreMouseService=(0,l.createDecorator)("CoreMouseService"),o.ICoreService=(0,l.createDecorator)("CoreService"),o.ICharsetService=(0,l.createDecorator)("CharsetService"),o.IInstantiationService=(0,l.createDecorator)("InstantiationService"),(function(d){d[d.TRACE=0]="TRACE",d[d.DEBUG=1]="DEBUG",d[d.INFO=2]="INFO",d[d.WARN=3]="WARN",d[d.ERROR=4]="ERROR",d[d.OFF=5]="OFF"})(c||(o.LogLevelEnum=c={})),o.ILogService=(0,l.createDecorator)("LogService"),o.IOptionsService=(0,l.createDecorator)("OptionsService"),o.IOscLinkService=(0,l.createDecorator)("OscLinkService"),o.IUnicodeService=(0,l.createDecorator)("UnicodeService"),o.IDecorationService=(0,l.createDecorator)("DecorationService")}},s={};function r(a){var o=s[a];if(o!==void 0)return o.exports;var h=s[a]={exports:{}};return i[a].call(h.exports,h,h.exports,r),h.exports}var n={};return(()=>{var a=n;Object.defineProperty(a,"__esModule",{value:!0}),a.CanvasAddon=void 0;const o=r(345),h=r(859),l=r(776),c=r(949);class d extends h.Disposable{constructor(){super(...arguments),this._onChangeTextureAtlas=this.register(new o.EventEmitter),this.onChangeTextureAtlas=this._onChangeTextureAtlas.event,this._onAddTextureAtlasCanvas=this.register(new o.EventEmitter),this.onAddTextureAtlasCanvas=this._onAddTextureAtlasCanvas.event}get textureAtlas(){var u;return(u=this._renderer)==null?void 0:u.textureAtlas}activate(u){const g=u._core;if(!u.element)return void this.register(g.onWillOpen((()=>this.activate(u))));this._terminal=u;const _=g.coreService,f=g.optionsService,A=g.screenElement,x=g.linkifier,S=g,w=S._bufferService,y=S._renderService,m=S._characterJoinerService,C=S._charSizeService,E=S._coreBrowserService,b=S._decorationService,D=S._logService,M=S._themeService;(0,l.setTraceLogger)(D),this._renderer=new c.CanvasRenderer(u,A,x,w,C,f,m,_,E,b,M),this.register((0,o.forwardEvent)(this._renderer.onChangeTextureAtlas,this._onChangeTextureAtlas)),this.register((0,o.forwardEvent)(this._renderer.onAddTextureAtlasCanvas,this._onAddTextureAtlasCanvas)),y.setRenderer(this._renderer),y.handleResize(w.cols,w.rows),this.register((0,h.toDisposable)((()=>{var k;y.setRenderer(this._terminal._core._createRenderer()),y.handleResize(u.cols,u.rows),(k=this._renderer)==null||k.dispose(),this._renderer=void 0})))}clearTextureAtlas(){var u;(u=this._renderer)==null||u.clearTextureAtlas()}}a.CanvasAddon=d})(),n})()))})($n)),$n.exports}var qv=$v();/** * Copyright (c) 2014-2024 The xterm.js authors. All rights reserved. * @license MIT * @@ -36,7 +36,7 @@ WARNING: This link could potentially be dangerous`)){let i=window.open();if(i){t * Fabrice Bellard's javascript vt100 for jslinux: * http://bellard.org/jslinux/ * Copyright (c) 2011 Fabrice Bellard - */var Tv=2,Pv=1,Qv=class{activate(e){this._terminal=e}dispose(){}fit(){let e=this.proposeDimensions();if(!e||!this._terminal||isNaN(e.cols)||isNaN(e.rows))return;let t=this._terminal._core;(this._terminal.rows!==e.rows||this._terminal.cols!==e.cols)&&(t._renderService.clear(),this._terminal.resize(e.cols,e.rows))}proposeDimensions(){var d;if(!this._terminal||!this._terminal.element||!this._terminal.element.parentElement)return;let e=this._terminal._core._renderService.dimensions;if(e.css.cell.width===0||e.css.cell.height===0)return;let t=this._terminal.options.scrollback===0?0:((d=this._terminal.options.overviewRuler)==null?void 0:d.width)||14,i=window.getComputedStyle(this._terminal.element.parentElement),s=parseInt(i.getPropertyValue("height")),r=Math.max(0,parseInt(i.getPropertyValue("width"))),n=window.getComputedStyle(this._terminal.element),a={top:parseInt(n.getPropertyValue("padding-top")),bottom:parseInt(n.getPropertyValue("padding-bottom")),right:parseInt(n.getPropertyValue("padding-right")),left:parseInt(n.getPropertyValue("padding-left"))},o=a.top+a.bottom,h=a.right+a.left,l=s-o,c=r-h-t;return{cols:Math.max(Tv,Math.floor(c/e.css.cell.width)),rows:Math.max(Pv,Math.floor(l/e.css.cell.height))}}};/** + */var Gv=2,Kv=1,Jv=class{activate(e){this._terminal=e}dispose(){}fit(){let e=this.proposeDimensions();if(!e||!this._terminal||isNaN(e.cols)||isNaN(e.rows))return;let t=this._terminal._core;(this._terminal.rows!==e.rows||this._terminal.cols!==e.cols)&&(t._renderService.clear(),this._terminal.resize(e.cols,e.rows))}proposeDimensions(){var d;if(!this._terminal||!this._terminal.element||!this._terminal.element.parentElement)return;let e=this._terminal._core._renderService.dimensions;if(e.css.cell.width===0||e.css.cell.height===0)return;let t=this._terminal.options.scrollback===0?0:((d=this._terminal.options.overviewRuler)==null?void 0:d.width)||14,i=window.getComputedStyle(this._terminal.element.parentElement),s=parseInt(i.getPropertyValue("height")),r=Math.max(0,parseInt(i.getPropertyValue("width"))),n=window.getComputedStyle(this._terminal.element),a={top:parseInt(n.getPropertyValue("padding-top")),bottom:parseInt(n.getPropertyValue("padding-bottom")),right:parseInt(n.getPropertyValue("padding-right")),left:parseInt(n.getPropertyValue("padding-left"))},o=a.top+a.bottom,h=a.right+a.left,l=s-o,c=r-h-t;return{cols:Math.max(Gv,Math.floor(c/e.css.cell.width)),rows:Math.max(Kv,Math.floor(l/e.css.cell.height))}}};/** * Copyright (c) 2014-2024 The xterm.js authors. All rights reserved. * @license MIT * @@ -47,8 +47,8 @@ WARNING: This link could potentially be dangerous`)){let i=window.open();if(i){t * Fabrice Bellard's javascript vt100 for jslinux: * http://bellard.org/jslinux/ * Copyright (c) 2011 Fabrice Bellard - */var Ov=Object.create,ac=Object.defineProperty,Nv=Object.getOwnPropertyDescriptor,Hv=Object.getOwnPropertyNames,Fv=Object.getPrototypeOf,Wv=Object.prototype.hasOwnProperty,xr=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),zv=(e,t,i,s)=>{if(t&&typeof t=="object"||typeof t=="function")for(let r of Hv(t))!Wv.call(e,r)&&r!==i&&ac(e,r,{get:()=>t[r],enumerable:!(s=Nv(t,r))||s.enumerable});return e},vn=(e,t,i)=>(i=e!=null?Ov(Fv(e)):{},zv(!e||!e.__esModule?ac(i,"default",{value:e,enumerable:!0}):i,e)),la=xr(e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.DEFAULT_FOREGROUND=e.DEFAULT_BACKGROUND=e.PALETTE_ANSI_256=e.PALETTE_VT340_GREY=e.PALETTE_VT340_COLOR=e.normalizeHLS=e.normalizeRGB=e.nearestColorIndex=e.fromRGBA8888=e.toRGBA8888=e.alpha=e.blue=e.green=e.red=e.BIG_ENDIAN=void 0,e.BIG_ENDIAN=new Uint8Array(new Uint32Array([4278190080]).buffer)[0]===255,e.BIG_ENDIAN&&console.warn("BE platform detected. This version of node-sixel works only on LE properly.");function t(_){return _&255}e.red=t;function i(_){return _>>>8&255}e.green=i;function s(_){return _>>>16&255}e.blue=s;function r(_){return _>>>24&255}e.alpha=r;function n(_,v,u,f=255){return((f&255)<<24|(u&255)<<16|(v&255)<<8|_&255)>>>0}e.toRGBA8888=n;function a(_){return[_&255,_>>8&255,_>>16&255,_>>>24]}e.fromRGBA8888=a;function o(_,v){let u=t(_),f=i(_),A=s(_),k=Number.MAX_SAFE_INTEGER,b=-1;for(let w=0;w1&&(u-=1),u*6<1?v+(_-v)*6*u:u*2<1?_:u*3<2?v+(_-v)*(4-u*6):v}function c(_,v,u){if(!u){let k=Math.round(v*255);return n(k,k,k)}let f=v<.5?v*(1+u):v+u-v*u,A=2*v-f;return n(h(0,255,Math.round(l(f,A,_+1/3)*255)),h(0,255,Math.round(l(f,A,_)*255)),h(0,255,Math.round(l(f,A,_-1/3)*255)))}function d(_,v,u){return(4278190080|Math.round(u/100*255)<<16|Math.round(v/100*255)<<8|Math.round(_/100*255))>>>0}e.normalizeRGB=d;function g(_,v,u){return c((_+240%360)/360,v/100,u/100)}e.normalizeHLS=g,e.PALETTE_VT340_COLOR=new Uint32Array([d(0,0,0),d(20,20,80),d(80,13,13),d(20,80,20),d(80,20,80),d(20,80,80),d(80,80,20),d(53,53,53),d(26,26,26),d(33,33,60),d(60,26,26),d(33,60,33),d(60,33,60),d(33,60,60),d(60,60,33),d(80,80,80)]),e.PALETTE_VT340_GREY=new Uint32Array([d(0,0,0),d(13,13,13),d(26,26,26),d(40,40,40),d(6,6,6),d(20,20,20),d(33,33,33),d(46,46,46),d(0,0,0),d(13,13,13),d(26,26,26),d(40,40,40),d(6,6,6),d(20,20,20),d(33,33,33),d(46,46,46)]),e.PALETTE_ANSI_256=(()=>{let _=[n(0,0,0),n(205,0,0),n(0,205,0),n(205,205,0),n(0,0,238),n(205,0,205),n(0,250,205),n(229,229,229),n(127,127,127),n(255,0,0),n(0,255,0),n(255,255,0),n(92,92,255),n(255,0,255),n(0,255,255),n(255,255,255)],v=[0,95,135,175,215,255];for(let u=0;u<6;++u)for(let f=0;f<6;++f)for(let A=0;A<6;++A)_.push(n(v[u],v[f],v[A]));for(let u=8;u<=238;u+=10)_.push(n(u,u,u));return new Uint32Array(_)})(),e.DEFAULT_BACKGROUND=n(0,0,0,255),e.DEFAULT_FOREGROUND=n(255,255,255,255)}),Uv=xr(e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.InWasm=void 0;function t(s){if(typeof Buffer<"u")return Buffer.from(s,"base64");let r=atob(s),n=new Uint8Array(r.length);for(let a=0;ao||(o=t(a)):()=>Promise.resolve(o||(o=t(a))):r===1?n?()=>h||(h=new l.Module(o||(o=t(a)))):()=>h?Promise.resolve(h):l.compile(o||(o=t(a))).then(c=>h=c):n?c=>new l.Instance(h||(h=new l.Module(o||(o=t(a)))),c):c=>h?l.instantiate(h,c):l.instantiate(o||(o=t(a)),c).then(d=>(h=d.module)&&d.instance)}if(typeof _wasmCtx>"u")throw new Error('must run "inwasm"');_wasmCtx.add(s)}e.InWasm=i}),$v=xr(e=>{Object.defineProperty(e,"__esModule",{value:!0});var t=Uv(),i=(0,t.InWasm)({s:1,t:0,d:"AGFzbQEAAAABBQFgAAF/Ag8BA2VudgZtZW1vcnkCAAEDAwIAAAcNAgNkZWMAAANlbmQAAQqxAwKuAQEFf0GIKCgCAEGgKGohAUGEKCgCACIAQYAoKAIAQQFrQXxxIgJIBEAgAkGgKGohAyAAQaAoaiEAA0AgAC0AA0ECdCgCgCAgAC0AAkECdCgCgBggAC0AAUECdCgCgBAgAC0AAEECdCgCgAhycnIiBEH///8HSwRAQQEPCyABIAQ2AgAgAUEDaiEBIABBBGoiACADSQ0ACwtBhCggAjYCAEGIKCABQaAoazYCAEEAC/4BAQZ/AkBBgCgoAgAiAUGEKCgCACIAa0EFTgRAQQEhAxAADQFBgCgoAgAhAUGEKCgCACEAC0EBIQMgASAAayIEQQJIDQAgAEGhKGotAABBAnQoAoAQIABBoChqLQAAQQJ0KAKACHIhAQJAIARBAkYEQEEBIQIMAQtBASECIAAtAKIoIgVBPUcEQEECIQIgBUECdCgCgBggAXIhAQsgBEEERw0AIAAtAKMoIgBBPUYNACACQQFqIQIgAEECdCgCgCAgAXIhAQsgAUH///8HSw0AQYgoKAIAQaAoaiABNgIAQYgoQYgoKAIAIAJqIgA2AgAgAEGQKCgCAEchAwsgAwsAdglwcm9kdWNlcnMBDHByb2Nlc3NlZC1ieQEFY2xhbmdWMTguMC4wIChodHRwczovL2dpdGh1Yi5jb20vbGx2bS9sbHZtLXByb2plY3QgZDFlNjg1ZGY0NWRjNTk0NGI0M2QyNTQ3ZDAxMzhjZDRhM2VlNGVmZSkALA90YXJnZXRfZmVhdHVyZXMCKw9tdXRhYmxlLWdsb2JhbHMrCHNpZ24tZXh0"}),s=new Uint8Array("ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".split("").map(o=>o.charCodeAt(0))),r=new Uint32Array(1024);r.fill(4278190080);for(let o=0;o>4|(o<<4&255)<<8;for(let o=0;o>2<<8|(o<<6&255)<<16;for(let o=0;othis.keepSize?this._inst=this._m32=this._d=this._mem=null:(this._m32[1280]=0,this._m32[1281]=0,this._m32[1282]=0))}init(o){let h=this._m32,l=(Math.ceil(o/3)+1288)*4;this._inst?this._mem.buffer.byteLengthc[1283]?1:(this._d.set(o.subarray(h,l),c[1280]),c[1280]+=l-h,c[1280]-c[1281]>=131072?this._inst.exports.dec():0)}end(){return this._inst?this._inst.exports.end():1}};e.default=a}),qv=xr(e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.LIMITS=void 0,e.LIMITS={CHUNK_SIZE:16384,PALETTE_SIZE:4096,MAX_WIDTH:16384,BYTES:"AGFzbQEAAAABJAdgAAF/YAJ/fwBgA39/fwF/YAF/AX9gAABgBH9/f38AYAF/AAIlAgNlbnYLaGFuZGxlX2JhbmQAAwNlbnYLbW9kZV9wYXJzZWQAAwMTEgQAAAAAAQQBAQUBAAACAgAGAwQFAXABBwcFBAEBBwcGCAF/AUGAihoLB9wBDgZtZW1vcnkCABFnZXRfc3RhdGVfYWRkcmVzcwADEWdldF9jaHVua19hZGRyZXNzAAQOZ2V0X3AwX2FkZHJlc3MABRNnZXRfcGFsZXR0ZV9hZGRyZXNzAAYEaW5pdAALBmRlY29kZQAMDWN1cnJlbnRfd2lkdGgADQ5jdXJyZW50X2hlaWdodAAOGV9faW5kaXJlY3RfZnVuY3Rpb25fdGFibGUBAAtfaW5pdGlhbGl6ZQACCXN0YWNrU2F2ZQARDHN0YWNrUmVzdG9yZQASCnN0YWNrQWxsb2MAEwkMAQBBAQsGCgcJDxACDAEBCq5UEgMAAQsFAEGgCAsGAEGQiQELBgBBsIkCCwUAQZAJC+okAQh/QeQIKAIAIQVB4AgoAgAhA0HoCCgCACEIIAFBkIkBaiIJQf8BOgAAIAAgAUgEQCAAQZCJAWohBgNAIAMhBCAGQQFqIQECQCAGLQAAQf8AcSIDQTBrQQlLBEAgASEGDAELQewIKAIAQQJ0QewIaiICKAIAIQADQCACIAMgAEEKbGpBMGsiADYCACABLQAAIQMgAUEBaiIGIQEgA0H/AHEiA0Ewa0EKSQ0ACwsCQAJAAkACQAJAAkACQAJ/AkACQCADQT9rIgBBP00EQCAERQ0BIARBIUYEQAJAQfAIKAIAIgFBASABGyIHIAhqIgFB1AgoAgAiA0gNACADQf//AEoNAANAIANBAnQiAkGgiQJqIgRBoAgpAwA3AwAgAkGoiQJqQaAIKQMANwMAIAJBsIkCakGgCCkDADcDACACQbiJAmpBoAgpAwA3AwAgAkHAiQJqQaAIKQMANwMAIAJByIkCakGgCCkDADcDACACQdCJAmpBoAgpAwA3AwAgAkHYiQJqQaAIKQMANwMAIAJB4IkCakGgCCkDADcDACACQeiJAmpBoAgpAwA3AwAgAkHwiQJqQaAIKQMANwMAIAJB+IkCakGgCCkDADcDACACQYCKAmpBoAgpAwA3AwAgAkGIigJqQaAIKQMANwMAIAJBkIoCakGgCCkDADcDACACQZiKAmpBoAgpAwA3AwAgAkGgigJqQaAIKQMANwMAIAJBqIoCakGgCCkDADcDACACQbCKAmpBoAgpAwA3AwAgAkG4igJqQaAIKQMANwMAIAJBwIoCakGgCCkDADcDACACQciKAmpBoAgpAwA3AwAgAkHQigJqQaAIKQMANwMAIAJB2IoCakGgCCkDADcDACACQeCKAmpBoAgpAwA3AwAgAkHoigJqQaAIKQMANwMAIAJB8IoCakGgCCkDADcDACACQfiKAmpBoAgpAwA3AwAgAkGAiwJqQaAIKQMANwMAIAJBiIsCakGgCCkDADcDACACQZCLAmpBoAgpAwA3AwAgAkGYiwJqQaAIKQMANwMAIAJBoIsCakGgCCkDADcDACACQaiLAmpBoAgpAwA3AwAgAkGwiwJqQaAIKQMANwMAIAJBuIsCakGgCCkDADcDACACQcCLAmpBoAgpAwA3AwAgAkHIiwJqQaAIKQMANwMAIAJB0IsCakGgCCkDADcDACACQdiLAmpBoAgpAwA3AwAgAkHgiwJqQaAIKQMANwMAIAJB6IsCakGgCCkDADcDACACQfCLAmpBoAgpAwA3AwAgAkH4iwJqQaAIKQMANwMAIAJBgIwCakGgCCkDADcDACACQYiMAmpBoAgpAwA3AwAgAkGQjAJqQaAIKQMANwMAIAJBmIwCakGgCCkDADcDACACQaCMAmpBoAgpAwA3AwAgAkGojAJqQaAIKQMANwMAIAJBsIwCakGgCCkDADcDACACQbiMAmpBoAgpAwA3AwAgAkHAjAJqQaAIKQMANwMAIAJByIwCakGgCCkDADcDACACQdCMAmpBoAgpAwA3AwAgAkHYjAJqQaAIKQMANwMAIAJB4IwCakGgCCkDADcDACACQeiMAmpBoAgpAwA3AwAgAkHwjAJqQaAIKQMANwMAIAJB+IwCakGgCCkDADcDACACQYCNAmpBoAgpAwA3AwAgAkGIjQJqQaAIKQMANwMAIAJBkI0CakGgCCkDADcDACACQZiNAmpBoAgpAwA3AwAgAkGwiQZqIARBgAT8CgAAQdQIKAIAQQJ0QcCJCmogBEGABPwKAABB1AgoAgBBAnRB0IkOaiAEQYAE/AoAAEHUCCgCAEECdEHgiRJqIARBgAT8CgAAQdQIKAIAQQJ0QfCJFmogBEGABPwKAABB1AhB1AgoAgAiAkGAAWoiAzYCACABIANIDQEgAkGA/wBIDQALCwJAIABFDQAgCEH//wBLDQBBgIABIAhrIAcgAUH//wBLGyECAkAgAEEBcUUNACACRQ0AIAhBAnRBoIkCaiEDIAIhBCACQQdxIgcEQANAIAMgBTYCACADQQRqIQMgBEEBayEEIAdBAWsiBw0ACwsgAkEBa0EHSQ0AA0AgAyAFNgIcIAMgBTYCGCADIAU2AhQgAyAFNgIQIAMgBTYCDCADIAU2AgggAyAFNgIEIAMgBTYCACADQSBqIQMgBEEIayIEDQALCwJAIABBAnFFDQAgAkUNACAIQQJ0QbCJBmohAyACIQQgAkEHcSIHBEADQCADIAU2AgAgA0EEaiEDIARBAWshBCAHQQFrIgcNAAsLIAJBAWtBB0kNAANAIAMgBTYCHCADIAU2AhggAyAFNgIUIAMgBTYCECADIAU2AgwgAyAFNgIIIAMgBTYCBCADIAU2AgAgA0EgaiEDIARBCGsiBA0ACwsCQCAAQQRxRQ0AIAJFDQAgCEECdEHAiQpqIQMgAiEEIAJBB3EiBwRAA0AgAyAFNgIAIANBBGohAyAEQQFrIQQgB0EBayIHDQALCyACQQFrQQdJDQADQCADIAU2AhwgAyAFNgIYIAMgBTYCFCADIAU2AhAgAyAFNgIMIAMgBTYCCCADIAU2AgQgAyAFNgIAIANBIGohAyAEQQhrIgQNAAsLAkAgAEEIcUUNACACRQ0AIAhBAnRB0IkOaiEDIAIhBCACQQdxIgcEQANAIAMgBTYCACADQQRqIQMgBEEBayEEIAdBAWsiBw0ACwsgAkEBa0EHSQ0AA0AgAyAFNgIcIAMgBTYCGCADIAU2AhQgAyAFNgIQIAMgBTYCDCADIAU2AgggAyAFNgIEIAMgBTYCACADQSBqIQMgBEEIayIEDQALCwJAIABBEHFFDQAgAkUNACAIQQJ0QeCJEmohAyACIQQgAkEHcSIHBEADQCADIAU2AgAgA0EEaiEDIARBAWshBCAHQQFrIgcNAAsLIAJBAWtBB0kNAANAIAMgBTYCHCADIAU2AhggAyAFNgIUIAMgBTYCECADIAU2AgwgAyAFNgIIIAMgBTYCBCADIAU2AgAgA0EgaiEDIARBCGsiBA0ACwsgAEEgcUUNACACRQ0AIAJBAWshByAIQQJ0QfCJFmohAyACQQdxIgQEQANAIAMgBTYCACADQQRqIQMgAkEBayECIARBAWsiBA0ACwsgB0EHSQ0AA0AgAyAFNgIcIAMgBTYCGCADIAU2AhQgAyAFNgIQIAMgBTYCDCADIAU2AgggAyAFNgIEIAMgBTYCACADQSBqIQMgAkEIayICDQALC0HcCEHcCCgCACAAcjYCACAGQQFqIgIgBi0AAEH/AHEiA0E/ayIAQT9LDQQaDAMLAkBB7AgoAgAiBEEBRgRAQfAIKAIAIgNBzAgoAgAiAUkNASADIAFwIQMMAQtB+AgoAgAhAkH0CCgCACEBAkACQCAEQQVHDQAgAUEBRw0AIAJB6QJODQQMAQsgAkHkAEoNA0H8CCgCAEHkAEoNA0GACSgCAEHkAEoNAwsCQCABRQ0AIAFBAkoNACACQfwIKAIAQYAJKAIAIAFBAnRBiAhqKAIAEQIAIQFB8AgoAgAiA0HMCCgCACICTwR/IAMgAnAFIAMLQQJ0QZAJaiABNgIAC0HwCCgCACIDQcwIKAIAIgFJDQAgAyABcCEDCyADQQJ0QZAJaigCACEFDAELIANB/QBxQSFHBEAgCCEBIAYhAgwECyAEQSNHDQQCQEHsCCgCACICQQFGBEBB8AgoAgAiAUHMCCgCACIASQ0BIAEgAHAhAQwBC0H4CCgCACEBQfQIKAIAIQACQAJAIAJBBUcNACAAQQFHDQAgAUHpAkgNAQwHCyABQeQASg0GQfwIKAIAQeQASg0GQYAJKAIAQeQASg0GCwJAIABFDQAgAEECSg0AIAFB/AgoAgBBgAkoAgAgAEECdEGICGooAgARAgAhAEHwCCgCACIBQcwIKAIAIgJPBH8gASACcAUgAQtBAnRBkAlqIAA2AgALQfAIKAIAIgFBzAgoAgAiAEkNACABIABwIQELIAFBAnRBkAlqKAIAIQUMBAsgCCEBIAYhAgtB1AgoAgAhBgNAAkAgASAGSA0AIAZB//8ASg0AIAZBAnQiBEGgiQJqIgZBoAgpAwA3AwAgBEGoiQJqQaAIKQMANwMAIARBsIkCakGgCCkDADcDACAEQbiJAmpBoAgpAwA3AwAgBEHAiQJqQaAIKQMANwMAIARByIkCakGgCCkDADcDACAEQdCJAmpBoAgpAwA3AwAgBEHYiQJqQaAIKQMANwMAIARB4IkCakGgCCkDADcDACAEQeiJAmpBoAgpAwA3AwAgBEHwiQJqQaAIKQMANwMAIARB+IkCakGgCCkDADcDACAEQYCKAmpBoAgpAwA3AwAgBEGIigJqQaAIKQMANwMAIARBkIoCakGgCCkDADcDACAEQZiKAmpBoAgpAwA3AwAgBEGgigJqQaAIKQMANwMAIARBqIoCakGgCCkDADcDACAEQbCKAmpBoAgpAwA3AwAgBEG4igJqQaAIKQMANwMAIARBwIoCakGgCCkDADcDACAEQciKAmpBoAgpAwA3AwAgBEHQigJqQaAIKQMANwMAIARB2IoCakGgCCkDADcDACAEQeCKAmpBoAgpAwA3AwAgBEHoigJqQaAIKQMANwMAIARB8IoCakGgCCkDADcDACAEQfiKAmpBoAgpAwA3AwAgBEGAiwJqQaAIKQMANwMAIARBiIsCakGgCCkDADcDACAEQZCLAmpBoAgpAwA3AwAgBEGYiwJqQaAIKQMANwMAIARBoIsCakGgCCkDADcDACAEQaiLAmpBoAgpAwA3AwAgBEGwiwJqQaAIKQMANwMAIARBuIsCakGgCCkDADcDACAEQcCLAmpBoAgpAwA3AwAgBEHIiwJqQaAIKQMANwMAIARB0IsCakGgCCkDADcDACAEQdiLAmpBoAgpAwA3AwAgBEHgiwJqQaAIKQMANwMAIARB6IsCakGgCCkDADcDACAEQfCLAmpBoAgpAwA3AwAgBEH4iwJqQaAIKQMANwMAIARBgIwCakGgCCkDADcDACAEQYiMAmpBoAgpAwA3AwAgBEGQjAJqQaAIKQMANwMAIARBmIwCakGgCCkDADcDACAEQaCMAmpBoAgpAwA3AwAgBEGojAJqQaAIKQMANwMAIARBsIwCakGgCCkDADcDACAEQbiMAmpBoAgpAwA3AwAgBEHAjAJqQaAIKQMANwMAIARByIwCakGgCCkDADcDACAEQdCMAmpBoAgpAwA3AwAgBEHYjAJqQaAIKQMANwMAIARB4IwCakGgCCkDADcDACAEQeiMAmpBoAgpAwA3AwAgBEHwjAJqQaAIKQMANwMAIARB+IwCakGgCCkDADcDACAEQYCNAmpBoAgpAwA3AwAgBEGIjQJqQaAIKQMANwMAIARBkI0CakGgCCkDADcDACAEQZiNAmpBoAgpAwA3AwAgBEGwiQZqIAZBgAT8CgAAQdQIKAIAQQJ0QcCJCmogBkGABPwKAABB1AgoAgBBAnRB0IkOaiAGQYAE/AoAAEHUCCgCAEECdEHgiRJqIAZBgAT8CgAAQdQIKAIAQQJ0QfCJFmogBkGABPwKAABB1AhB1AgoAgBBgAFqIgY2AgALIAFB//8ATQRAIABBAXEgAWxBAnRBoIkCaiAFNgIAIABBAXZBAXEgAWxBAnRBsIkGaiAFNgIAIABBAnZBAXEgAWxBAnRBwIkKaiAFNgIAIABBA3ZBAXEgAWxBAnRB0IkOaiAFNgIAIABBBHZBAXEgAWxBAnRB4IkSaiAFNgIAIABBBXYgAWxBAnRB8IkWaiAFNgIAQdQIKAIAIQYLIAFBAWohAUHcCEHcCCgCACAAcjYCACACLQAAIQAgAkEBaiIEIQIgAEH/AHEiA0E/ayIAQcAASQ0ACyAECyECQQAhBCACIQYgASEIIANB/QBxQSFGDQELIANBJGsOCgEDAwMDAwMDAwIDC0HsCEIBNwIADAQLQdgIIAFB2AgoAgAiACAAIAFIGyIAQYCAASAAQYCAAUgbNgIADAILQegIIAFB2AgoAgAiACAAIAFIGyIAQYCAASAAQYCAAUgbIgA2AgBB2AggADYCACAAQQRrEAAEQEHoCEEENgIAQdgIQQQ2AgBB0AhBATYCAA8LEAgMAQsCQCADQTtHDQBB7AgoAgAiAEEHSg0AQewIIABBAWo2AgAgAEECdEHwCGpBADYCAAsgAiEGIAQhAyABIQgMAQtBBCEIIAIhBiAEIQMLIAYgCUkNAAsLQeQIIAU2AgBB4AggAzYCAEHoCCAINgIAC9ELAgF+CH9B2AhCBDcDAEGojQJBoAgpAwAiADcDAEGgjQIgADcDAEGYjQIgADcDAEGQjQIgADcDAEGIjQIgADcDAEGAjQIgADcDAEH4jAIgADcDAEHwjAIgADcDAEHojAIgADcDAEHgjAIgADcDAEHYjAIgADcDAEHQjAIgADcDAEHIjAIgADcDAEHAjAIgADcDAEG4jAIgADcDAEGwjAIgADcDAEGojAIgADcDAEGgjAIgADcDAEGYjAIgADcDAEGQjAIgADcDAEGIjAIgADcDAEGAjAIgADcDAEH4iwIgADcDAEHwiwIgADcDAEHoiwIgADcDAEHgiwIgADcDAEHYiwIgADcDAEHQiwIgADcDAEHIiwIgADcDAEHAiwIgADcDAEG4iwIgADcDAEGwiwIgADcDAEGoiwIgADcDAEGgiwIgADcDAEGYiwIgADcDAEGQiwIgADcDAEGIiwIgADcDAEGAiwIgADcDAEH4igIgADcDAEHwigIgADcDAEHoigIgADcDAEHgigIgADcDAEHYigIgADcDAEHQigIgADcDAEHIigIgADcDAEHAigIgADcDAEG4igIgADcDAEGwigIgADcDAEGoigIgADcDAEGgigIgADcDAEGYigIgADcDAEGQigIgADcDAEGIigIgADcDAEGAigIgADcDAEH4iQIgADcDAEHwiQIgADcDAEHoiQIgADcDAEHgiQIgADcDAEHYiQIgADcDAEHQiQIgADcDAEHIiQIgADcDAEHAiQIgADcDAEG4iQIgADcDAEGwiQIgADcDAEGoCCgCACIEQf8AakGAAW0hCAJAIARBgQFIDQBBASEBIAhBAiAIQQJKG0EBayICQQFxIQMgBEGBAk4EQCACQX5xIQIDQCABQQl0IgdBEHJBoIkCakGwiQJBgAT8CgAAIAdBsI0CakGwiQJBgAT8CgAAIAFBAmohASACQQJrIgINAAsLIANFDQAgAUEJdEEQckGgiQJqQbCJAkGABPwKAAALAkAgBEEBSA0AIAhBASAIQQFKGyIDQQFxIQUCQCADQQFrIgdFBEBBACEBDAELIANB/v///wdxIQJBACEBA0AgAUEJdCIGQRByQbCJBmpBsIkCQYAE/AoAACAGQZAEckGwiQZqQbCJAkGABPwKAAAgAUECaiEBIAJBAmsiAg0ACwsgBQRAIAFBCXRBEHJBsIkGakGwiQJBgAT8CgAACyAEQQFIDQAgA0EBcSEFIAcEfyADQf7///8HcSECQQAhAQNAIAFBCXQiBkEQckHAiQpqQbCJAkGABPwKAAAgBkGQBHJBwIkKakGwiQJBgAT8CgAAIAFBAmohASACQQJrIgINAAsgAUEHdEEEcgVBBAshASAFBEAgAUECdEHAiQpqQbCJAkGABPwKAAALIARBAUgNACADQQFxIQUgBwR/IANB/v///wdxIQJBACEBA0AgAUEJdCIGQRByQdCJDmpBsIkCQYAE/AoAACAGQZAEckHQiQ5qQbCJAkGABPwKAAAgAUECaiEBIAJBAmsiAg0ACyABQQd0QQRyBUEECyEBIAUEQCABQQJ0QdCJDmpBsIkCQYAE/AoAAAsgBEEBSA0AIANBAXEhBSAHBH8gA0H+////B3EhAkEAIQEDQCABQQl0IgZBEHJB4IkSakGwiQJBgAT8CgAAIAZBkARyQeCJEmpBsIkCQYAE/AoAACABQQJqIQEgAkECayICDQALIAFBB3RBBHIFQQQLIQEgBQRAIAFBAnRB4IkSakGwiQJBgAT8CgAACyAEQQFIDQAgA0EBcSEEIAcEfyADQf7///8HcSECQQAhAQNAIAFBCXQiA0EQckHwiRZqQbCJAkGABPwKAAAgA0GQBHJB8IkWakGwiQJBgAT8CgAAIAFBAmohASACQQJrIgINAAsgAUEHdEEEcgVBBAshASAERQ0AIAFBAnRB8IkWakGwiQJBgAT8CgAAC0HUCCAIQQd0QQRyNgIAC58TAgh/AX5B5AgoAgAhA0HgCCgCACECQegIKAIAIQcgAUGQiQFqIglB/wE6AAAgACABSARAIABBkIkBaiEIA0AgAiEEIAhBAWohAQJAIAgtAABB/wBxIgJBMGtBCUsEQCABIQgMAQtB7AgoAgBBAnRB7AhqIgUoAgAhAANAIAUgAiAAQQpsakEwayIANgIAIAEtAAAhAiABQQFqIgghASACQf8AcSICQTBrQQpJDQALCwJAAkACQAJAAkACQAJ/AkAgAkE/ayIAQT9NBEAgBEUNASAEQSFGBEBB8AgoAgAiAUEBIAEbIgQgB2ohAQJAIABFDQAgB0H//wBLDQBBgIABIAdrIAQgAUH//wBLGyEFAkAgAEEBcUUNACAHQQJ0QaCJAmohAiAFIgRBB3EiBgRAA0AgAiADNgIAIAJBBGohAiAEQQFrIQQgBkEBayIGDQALCyAFQQFrQQdJDQADQCACIAM2AhwgAiADNgIYIAIgAzYCFCACIAM2AhAgAiADNgIMIAIgAzYCCCACIAM2AgQgAiADNgIAIAJBIGohAiAEQQhrIgQNAAsLAkAgAEECcUUNACAHQQJ0QbCJBmohAiAFIgRBB3EiBgRAA0AgAiADNgIAIAJBBGohAiAEQQFrIQQgBkEBayIGDQALCyAFQQFrQQdJDQADQCACIAM2AhwgAiADNgIYIAIgAzYCFCACIAM2AhAgAiADNgIMIAIgAzYCCCACIAM2AgQgAiADNgIAIAJBIGohAiAEQQhrIgQNAAsLAkAgAEEEcUUNACAHQQJ0QcCJCmohAiAFIgRBB3EiBgRAA0AgAiADNgIAIAJBBGohAiAEQQFrIQQgBkEBayIGDQALCyAFQQFrQQdJDQADQCACIAM2AhwgAiADNgIYIAIgAzYCFCACIAM2AhAgAiADNgIMIAIgAzYCCCACIAM2AgQgAiADNgIAIAJBIGohAiAEQQhrIgQNAAsLAkAgAEEIcUUNACAHQQJ0QdCJDmohAiAFIgRBB3EiBgRAA0AgAiADNgIAIAJBBGohAiAEQQFrIQQgBkEBayIGDQALCyAFQQFrQQdJDQADQCACIAM2AhwgAiADNgIYIAIgAzYCFCACIAM2AhAgAiADNgIMIAIgAzYCCCACIAM2AgQgAiADNgIAIAJBIGohAiAEQQhrIgQNAAsLAkAgAEEQcUUNACAHQQJ0QeCJEmohAiAFIgRBB3EiBgRAA0AgAiADNgIAIAJBBGohAiAEQQFrIQQgBkEBayIGDQALCyAFQQFrQQdJDQADQCACIAM2AhwgAiADNgIYIAIgAzYCFCACIAM2AhAgAiADNgIMIAIgAzYCCCACIAM2AgQgAiADNgIAIAJBIGohAiAEQQhrIgQNAAsLIABBIHFFDQAgBUEBayEEIAdBAnRB8IkWaiEAIAVBB3EiAgRAA0AgACADNgIAIABBBGohACAFQQFrIQUgAkEBayICDQALCyAEQQdJDQADQCAAIAM2AhwgACADNgIYIAAgAzYCFCAAIAM2AhAgACADNgIMIAAgAzYCCCAAIAM2AgQgACADNgIAIABBIGohACAFQQhrIgUNAAsLIAhBAWoiBSAILQAAQf8AcSICQT9rIgBBP00NAxoMBAsCQEHsCCgCACIFQQFGBEBB8AgoAgAiAUHMCCgCACIESQ0BIAEgBHAhAQwBC0H4CCgCACEEQfQIKAIAIQECQAJAIAVBBUcNACABQQFHDQAgBEHpAk4NBAwBCyAEQeQASg0DQfwIKAIAQeQASg0DQYAJKAIAQeQASg0DCwJAIAFFDQAgAUECSg0AIARB/AgoAgBBgAkoAgAgAUECdEGICGooAgARAgAhBEHwCCgCACIBQcwIKAIAIgVPBH8gASAFcAUgAQtBAnRBkAlqIAQ2AgALQfAIKAIAIgFBzAgoAgAiBEkNACABIARwIQELIAFBAnRBkAlqKAIAIQMMAQsgAkH9AHFBIUcEQCAHIQEgAiEADAQLIARBI0cNBAJAQewIKAIAIgRBAUYEQEHwCCgCACIBQcwIKAIAIgBJDQEgASAAcCEBDAELQfgIKAIAIQFB9AgoAgAhAAJAAkAgBEEFRw0AIABBAUcNACABQekCSA0BDAcLIAFB5ABKDQZB/AgoAgBB5ABKDQZBgAkoAgBB5ABKDQYLAkAgAEUNACAAQQJKDQAgAUH8CCgCAEGACSgCACAAQQJ0QYgIaigCABECACEAQfAIKAIAIgFBzAgoAgAiBE8EfyABIARwBSABC0ECdEGQCWogADYCAAtB8AgoAgAiAUHMCCgCACIASQ0AIAEgAHAhAQsgAUECdEGQCWooAgAhAwwECyAHIQEgCAshBQNAIAFB//8ATQRAIABBAXEgAWxBAnRBoIkCaiADNgIAIABBAXZBAXEgAWxBAnRBsIkGaiADNgIAIABBAnZBAXEgAWxBAnRBwIkKaiADNgIAIABBA3ZBAXEgAWxBAnRB0IkOaiADNgIAIABBBHZBAXEgAWxBAnRB4IkSaiADNgIAIABBBXYgAWxBAnRB8IkWaiADNgIACyABQQFqIQEgBS0AACEAIAVBAWoiBCEFIABB/wBxIgJBP2siAEHAAEkNAAsgBCEFC0EAIQQgBSEIIAEhByACIQAgAkH9AHFBIUYNAQtBBCEHIAQhAiAAQSRrDgoDAgICAgICAgIBAgtB7AhCATcCAAwCC0GoCCgCAEEEaxAABEBB0AhBATYCAA8LAkBBqAgoAgAiBkEFSA0AQaAIKQMAIQogBkEDa0EBdiIBQQdxIQJBACEAIAFBAWtBB08EQCABQfj///8HcSEFA0AgAEEDdCIBQbCJAmogCjcDACABQQhyQbCJAmogCjcDACABQRByQbCJAmogCjcDACABQRhyQbCJAmogCjcDACABQSByQbCJAmogCjcDACABQShyQbCJAmogCjcDACABQTByQbCJAmogCjcDACABQThyQbCJAmogCjcDACAAQQhqIQAgBUEIayIFDQALCyACRQ0AA0AgAEEDdEGwiQJqIAo3AwAgAEEBaiEAIAJBAWsiAg0ACwtBwIkGQbCJAiAGQQJ0IgD8CgAAQdCJCkGwiQIgAPwKAABB4IkOQbCJAiAA/AoAAEHwiRJBsIkCIAD8CgAAQYCKFkGwiQIgAPwKAAAgBCECDAELAkAgAEE7Rw0AQewIKAIAIgBBB0oNAEHsCCAAQQFqNgIAIABBAnRB8AhqQQA2AgALIAEhBwsgCCAJSQ0ACwtB5AggAzYCAEHgCCACNgIAQegIIAc2AgAL4gcCBX8BfgJAQdAIAn8CQAJAIAAgAU4NACABQZCJAWohBiAAQZCJAWohBQNAIAUtAAAiA0H/AHEhAgJAAkACQAJAAkACQAJAQeAIKAIAIgRBIkcEQCAEDQcgAkEiRgRAQewIQgE3AgBB4AhBIjYCAAwICyACQT9rQcAASQ0GIANBIWsiAkEMTQ0BDAULAkAgAkEwayIEQQlNBEBB7AgoAgBBAnRB7AhqIgIgBCACKAIAQQpsajYCAAwBC0HsCCgCACEEIAJBO0YEQCAEQQdKDQFB7AggBEEBajYCACAEQQJ0QfAIakEANgIADAELIARBBEYEQEHECEECNgIAQbAIQfAIKQMANwMAQbgIQfgIKAIAIgI2AgBBvAhB/AgoAgAiBDYCAEHICEECQQFBwAgoAgAiAxs2AgBBrAggBEEAIAMbNgIAQagIIAJBgIABIAJBgIABSBtBBGpBACADGzYCAEHgCEEANgIADAoLIAJBP2tBwABJDQQLIANBIWsiAkEMTQ0BDAILQQEgAnRBjSBxRQ0DDAQLQQEgAnRBjSBxDQELIANBoQFrIgJBDEsNA0EBIAJ0QY0gcUUNAwtBxAhCgYCAgBA3AgBBsAhB8AgoAgBBAEHsCCgCACICQQBKGzYCAEG0CEH0CCgCAEEAIAJBAUobNgIAQbgIQfgIKAIAQQAgAkECShs2AgBB4AhBADYCAEG8CEEANgIADAQLIANBoQFrIgJBDEsNAUEBIAJ0QY0gcUUNAQtBxAhCgYCAgBA3AgBBsAhCADcDAEG4CEIANwMADAMLIAVBAWoiBSAGSQ0ACwsCQEHICCgCAA4DAwEAAQsCQEGoCCgCACIFQQVIDQBBoAgpAwAhByAFQQNrQQF2IgNBB3EhBEEAIQIgA0EBa0EHTwRAIANB+P///wdxIQYDQCACQQN0IgNBsIkCaiAHNwMAIANBCHJBsIkCaiAHNwMAIANBEHJBsIkCaiAHNwMAIANBGHJBsIkCaiAHNwMAIANBIHJBsIkCaiAHNwMAIANBKHJBsIkCaiAHNwMAIANBMHJBsIkCaiAHNwMAIANBOHJBsIkCaiAHNwMAIAJBCGohAiAGQQhrIgYNAAsLIARFDQADQCACQQN0QbCJAmogBzcDACACQQFqIQIgBEEBayIEDQALC0HAiQZBsIkCIAVBAnQiA/wKAABB0IkKQbCJAiAD/AoAAEHgiQ5BsIkCIAP8CgAAQfCJEkGwiQIgA/wKAABBgIoWQbCJAiAD/AoAAEECDAELEAhByAgoAgALEAEiAjYCACACDQAgACABQcgIKAIAQQJ0QYAIaigCABEBAAsLdABB6AhBBDYCAEHkCCAANgIAQewIQgE3AgBBxAhCADcCAEHACCADNgIAQdwIQgA3AgBBqAhCADcDAEGwCEIANwMAQbgIQgA3AwBBzAggAkGAICACQYAgSRs2AgBBoAggAa1CgYCAgBB+NwMAQdAIQQA2AgALIwBB0AgoAgBFBEAgACABQcgIKAIAQQJ0QYAIaigCABEBAAsLWgECfwJAAkACQEHICCgCAEEBaw4CAAECC0HYCEHoCCgCACIAQdgIKAIAIgEgACABShsiAEGAgAEgAEGAgAFIGyIANgIAIABBBGsPC0GoCCgCAEEEayEACyAAC0IBAX8Cf0EGQdwIKAIAIgBBIHENABpBBSAAQRBxDQAaQQQgAEEIcQ0AGkEDIABBBHENABpBAiAAQQFxIABBAnEbCwu9BQEFfQJ/IAJFBEAgAUH/AWxBMmpB5ABtIgBBCHQgAHIgAEEQdHIMAQsgArJDAADIQpUhBiAAQfABarJDAAC0Q5UhBQJ9IAGyQwAAyEKVIgNDAAAAP10EQCADIAZDAACAP5KUDAELIAYgA0MAAIA/IAaTlJILIQcgAyADkiEGAkAgBUOrqqo+kiIEQwAAAABdBEAgBEMAAIA/kiEEDAELIARDAACAP15FDQAgBEMAAIC/kiEECyAGIAeTIQMgBUMAAAAAXSEAAn8CfSADIAcgA5NDAADAQJQgBJSSIARDq6oqPl0NABogByAEQwAAAD9dDQAaIAMgBEOrqio/XUUNABogAyAHIAOTIARDAADAwJRDAACAQJKUkgtDAAB/Q5RDAAAAP5IiBkMAAIBPXSAGQwAAAABgcQRAIAapDAELQQALIQECQCAABEAgBUMAAIA/kiEEDAELIAUiBEMAAIA/XkUNACAFQwAAgL+SIQQLIAVDq6qqvpIiBUMAAAAAXSECAn8CfSADIAcgA5NDAADAQJQgBJSSIARDq6oqPl0NABogByAEQwAAAD9dDQAaIAMgBEOrqio/XUUNABogAyAHIAOTIARDAADAwJRDAACAQJKUkgtDAAB/Q5RDAAAAP5IiBkMAAIBPXSAGQwAAAABgcQRAIAapDAELQQALIQACQCACBEAgBUMAAIA/kiEFDAELIAVDAACAP15FDQAgBUMAAIC/kiEFCwJAIAVDq6oqPl0EQCADIAcgA5NDAADAQJQgBZSSIQcMAQsgBUMAAAA/XQ0AIAVDq6oqP11FBEAgAyEHDAELIAMgByADkyAFQwAAwMCUQwAAgECSlJIhBwsgAEEIdAJ/IAdDAAB/Q5RDAAAAP5IiBkMAAIBPXSAGQwAAAABgcQRAIAapDAELQQALQRB0ciABcgtBgICAeHILNwAgAEH/AWxBMmpB5ABtIAFB/wFsQTJqQeQAbUEIdHIgAkH/AWxBMmpB5ABtQRB0ckGAgIB4cgsEACMACwYAIAAkAAsQACMAIABrQXBxIgAkACAACwsYAQBBgAgLEQEAAAACAAAAAwAAAAQAAAAF"}}),Gv=xr(e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.decodeAsync=e.decode=e.Decoder=e.DecoderAsync=void 0;var t=la(),i=qv();function s(_){if(typeof Buffer<"u")return Buffer.from(_,"base64");let v=atob(_),u=new Uint8Array(v.length);for(let f=0;f1,this.modeHandler=_=>1}handle_band(_){return this.bandHandler(_)}mode_parsed(_){return this.modeHandler(_)}},h={memoryLimit:2048*65536,sixelColor:t.DEFAULT_FOREGROUND,fillColor:t.DEFAULT_BACKGROUND,palette:t.PALETTE_VT340_COLOR,paletteLimit:i.LIMITS.PALETTE_SIZE,truncate:!0};function l(_){let v=new o,u={env:{handle_band:v.handle_band.bind(v),mode_parsed:v.mode_parsed.bind(v)}};return WebAssembly.instantiate(n||r,u).then(f=>(n=n||f.module,new c(_,f.instance||f,v)))}e.DecoderAsync=l;var c=class{constructor(_,v,u){if(this._PIXEL_OFFSET=i.LIMITS.MAX_WIDTH+4,this._canvas=a,this._bandWidths=[],this._maxWidth=0,this._minWidth=i.LIMITS.MAX_WIDTH,this._lastOffset=0,this._currentHeight=0,this._opts=Object.assign({},h,_),this._opts.paletteLimit>i.LIMITS.PALETTE_SIZE)throw new Error(`DecoderOptions.paletteLimit must not exceed ${i.LIMITS.PALETTE_SIZE}`);if(v)u.bandHandler=this._handle_band.bind(this),u.modeHandler=this._initCanvas.bind(this);else{let f=n||(n=new WebAssembly.Module(r));v=new WebAssembly.Instance(f,{env:{handle_band:this._handle_band.bind(this),mode_parsed:this._initCanvas.bind(this)}})}this._instance=v,this._wasm=this._instance.exports,this._chunk=new Uint8Array(this._wasm.memory.buffer,this._wasm.get_chunk_address(),i.LIMITS.CHUNK_SIZE),this._states=new Uint32Array(this._wasm.memory.buffer,this._wasm.get_state_address(),12),this._palette=new Uint32Array(this._wasm.memory.buffer,this._wasm.get_palette_address(),i.LIMITS.PALETTE_SIZE),this._palette.set(this._opts.palette),this._pSrc=new Uint32Array(this._wasm.memory.buffer,this._wasm.get_p0_address()),this._wasm.init(t.DEFAULT_FOREGROUND,0,this._opts.paletteLimit,0)}get _fillColor(){return this._states[0]}get _truncate(){return this._states[8]}get _rasterWidth(){return this._states[6]}get _rasterHeight(){return this._states[7]}get _width(){return this._states[2]?this._states[2]-4:0}get _height(){return this._states[3]}get _level(){return this._states[9]}get _mode(){return this._states[10]}get _paletteLimit(){return this._states[11]}_initCanvas(_){if(_===2){let v=this.width*this.height;if(v>this._canvas.length){if(this._opts.memoryLimit&&v*4>this._opts.memoryLimit)throw this.release(),new Error("image exceeds memory limit");this._canvas=new Uint32Array(v)}this._maxWidth=this._width}else if(_===1)if(this._level===2){let v=Math.min(this._rasterWidth,i.LIMITS.MAX_WIDTH)*this._rasterHeight;if(v>this._canvas.length){if(this._opts.memoryLimit&&v*4>this._opts.memoryLimit)throw this.release(),new Error("image exceeds memory limit");this._canvas=new Uint32Array(v)}}else this._canvas.length<65536&&(this._canvas=new Uint32Array(65536));return 0}_realloc(_,v){let u=_+v;if(u>this._canvas.length){if(this._opts.memoryLimit&&u*4>this._opts.memoryLimit)throw this.release(),new Error("image exceeds memory limit");let f=new Uint32Array(Math.ceil(u/65536)*65536);f.set(this._canvas),this._canvas=f}}_handle_band(_){let v=this._PIXEL_OFFSET,u=this._lastOffset;if(this._mode===2){let f=this.height-this._currentHeight,A=0;for(;A<6&&f>0;)this._canvas.set(this._pSrc.subarray(v*A,v*A+_),u+_*A),A++,f--;this._lastOffset+=_*A,this._currentHeight+=A}else if(this._mode===1){this._realloc(u,_*6),this._maxWidth=Math.max(this._maxWidth,_),this._minWidth=Math.min(this._minWidth,_);for(let f=0;f<6;++f)this._canvas.set(this._pSrc.subarray(v*f,v*f+_),u+_*f);this._bandWidths.push(_),this._lastOffset+=_*6,this._currentHeight+=6}return 0}get width(){return this._mode!==1?this._width:Math.max(this._maxWidth,this._wasm.current_width())}get height(){return this._mode!==1?this._height:this._wasm.current_width()?this._bandWidths.length*6+this._wasm.current_height():this._bandWidths.length*6}get palette(){return this._palette.subarray(0,this._paletteLimit)}get memoryUsage(){return this._canvas.byteLength+this._wasm.memory.buffer.byteLength+8*this._bandWidths.length}get properties(){return{width:this.width,height:this.height,mode:this._mode,level:this._level,truncate:!!this._truncate,paletteLimit:this._paletteLimit,fillColor:this._fillColor,memUsage:this.memoryUsage,rasterAttributes:{numerator:this._states[4],denominator:this._states[5],width:this._rasterWidth,height:this._rasterHeight}}}init(_=this._opts.fillColor,v=this._opts.palette,u=this._opts.paletteLimit,f=this._opts.truncate){this._wasm.init(this._opts.sixelColor,_,u,f?1:0),v&&this._palette.set(v.subarray(0,i.LIMITS.PALETTE_SIZE)),this._bandWidths.length=0,this._maxWidth=0,this._minWidth=i.LIMITS.MAX_WIDTH,this._lastOffset=0,this._currentHeight=0}decode(_,v=0,u=_.length){let f=v;for(;f0){let u=this._PIXEL_OFFSET,f=this._lastOffset,A=0;for(;A<6&&v>0;)this._canvas.set(this._pSrc.subarray(u*A,u*A+_),f+_*A),A++,v--;v&&this._canvas.fill(this._fillColor,f+_*A)}return this._canvas.subarray(0,this.width*this.height)}if(this._mode===1){if(this._minWidth===this._maxWidth){let A=!1;if(_)if(_!==this._minWidth)A=!0;else{let k=this._PIXEL_OFFSET,b=this._lastOffset;this._realloc(b,_*6);for(let w=0;w<6;++w)this._canvas.set(this._pSrc.subarray(k*w,k*w+_),b+_*w)}if(!A)return this._canvas.subarray(0,this.width*this.height)}let v=new Uint32Array(this.width*this.height);v.fill(this._fillColor);let u=0,f=0;for(let A=0;A{function t(n){return n<0}e.isLessThan=t;function i(n){return n<=0}e.isLessThanOrEqual=i;function s(n){return n>0}e.isGreaterThan=s;function r(n){return n===0}e.isNeitherLessOrGreaterThan=r,e.greaterThan=1,e.lessThan=-1,e.neitherLessOrGreaterThan=0})(Kv||(Kv={}));function Jv(e,t){let i=this,s=!1,r;return function(){return s||(s=!0,t||(r=e.apply(i,arguments))),r}}var lc;(e=>{function t(w){return w&&typeof w=="object"&&typeof w[Symbol.iterator]=="function"}e.is=t;let i=Object.freeze([]);function s(){return i}e.empty=s;function*r(w){yield w}e.single=r;function n(w){return t(w)?w:r(w)}e.wrap=n;function a(w){return w||i}e.from=a;function*o(w){for(let y=w.length-1;y>=0;y--)yield w[y]}e.reverse=o;function h(w){return!w||w[Symbol.iterator]().next().done===!0}e.isEmpty=h;function l(w){return w[Symbol.iterator]().next().value}e.first=l;function c(w,y){let m=0;for(let C of w)if(y(C,m++))return!0;return!1}e.some=c;function d(w,y){for(let m of w)if(y(m))return m}e.find=d;function*g(w,y){for(let m of w)y(m)&&(yield m)}e.filter=g;function*_(w,y){let m=0;for(let C of w)yield y(C,m++)}e.map=_;function*v(w,y){let m=0;for(let C of w)yield*y(C,m++)}e.flatMap=v;function*u(...w){for(let y of w)yield*y}e.concat=u;function f(w,y,m){let C=m;for(let E of w)C=y(C,E);return C}e.reduce=f;function*A(w,y,m=w.length){for(y<0&&(y+=w.length),m<0?m+=w.length:m>w.length&&(m=w.length);y1)throw new AggregateError(t,"Encountered errors while disposing of store");return Array.isArray(e)?[]:e}else if(e)return e.dispose(),e}function Yv(e){return{dispose:Jv(()=>{e()})}}var hc=class cc{constructor(){this._toDispose=new Set,this._isDisposed=!1}dispose(){this._isDisposed||(this._isDisposed=!0,this.clear())}get isDisposed(){return this._isDisposed}clear(){if(this._toDispose.size!==0)try{jv(this._toDispose)}finally{this._toDispose.clear()}}add(t){if(!t)return t;if(t===this)throw new Error("Cannot register a disposable on itself!");return this._isDisposed?cc.DISABLE_DISPOSED_WARNING||console.warn(new Error("Trying to add a disposable to a DisposableStore that has already been disposed of. The added object will be leaked!").stack):this._toDispose.add(t),t}delete(t){if(t){if(t===this)throw new Error("Cannot dispose a disposable on itself!");this._toDispose.delete(t),t.dispose()}}deleteAndLeak(t){t&&this._toDispose.has(t)&&(this._toDispose.delete(t),void 0)}};hc.DISABLE_DISPOSED_WARNING=!1;var Vv=hc,dc=class{constructor(){this._store=new Vv,this._store}dispose(){this._store.dispose()}_register(e){if(e===this)throw new Error("Cannot register a disposable on itself!");return this._store.add(e)}};dc.None=Object.freeze({dispose(){}});var Xv=class{constructor(){this._isDisposed=!1}get value(){return this._isDisposed?void 0:this._value}set value(e){var t;this._isDisposed||e===this._value||((t=this._value)==null||t.dispose(),this._value=e)}clear(){this.value=void 0}dispose(){var e;this._isDisposed=!0,(e=this._value)==null||e.dispose(),this._value=void 0}clearAndLeak(){let e=this._value;return this._value=void 0,e}},Zv=4096,Nn=24,gn=class Oi extends dc{constructor(t){super(),this._terminal=t,this._optionsRefresh=this._register(new Xv),this._oldOpen=this._terminal._core.open,this._terminal._core.open=i=>{var s;(s=this._oldOpen)==null||s.call(this._terminal._core,i),this._open()},this._terminal._core.screenElement&&this._open(),this._optionsRefresh.value=this._terminal._core.optionsService.onOptionChange(i=>{var s;i==="fontSize"&&(this.rescaleCanvas(),(s=this._renderService)==null||s.refreshRows(0,this._terminal.rows))}),this._register(Yv(()=>{var i;this.removeLayerFromDom(),this._terminal._core&&this._oldOpen&&(this._terminal._core.open=this._oldOpen,this._oldOpen=void 0),this._renderService&&this._oldSetRenderer&&(this._renderService.setRenderer=this._oldSetRenderer,this._oldSetRenderer=void 0),this._renderService=void 0,this.canvas=void 0,this._ctx=void 0,(i=this._placeholderBitmap)==null||i.close(),this._placeholderBitmap=void 0,this._placeholder=void 0}))}static createCanvas(t,i,s){let r=(t||document).createElement("canvas");return r.width=i|0,r.height=s|0,r}static createImageData(t,i,s,r){if(typeof ImageData!="function"){let n=t.createImageData(i,s);return r&&n.data.set(new Uint8ClampedArray(r,0,i*s*4)),n}return r?new ImageData(new Uint8ClampedArray(r,0,i*s*4),i,s):new ImageData(i,s)}static createImageBitmap(t){return typeof createImageBitmap!="function"?Promise.resolve(void 0):createImageBitmap(t)}showPlaceholder(t){var i,s;t?!this._placeholder&&this.cellSize.height!==-1&&this._createPlaceHolder(Math.max(this.cellSize.height+1,Nn)):((i=this._placeholderBitmap)==null||i.close(),this._placeholderBitmap=void 0,this._placeholder=void 0),(s=this._renderService)==null||s.refreshRows(0,this._terminal.rows)}get dimensions(){var t;return(t=this._renderService)==null?void 0:t.dimensions}get cellSize(){var t,i;return{width:((t=this.dimensions)==null?void 0:t.css.cell.width)||-1,height:((i=this.dimensions)==null?void 0:i.css.cell.height)||-1}}clearLines(t,i){var s,r,n,a;(a=this._ctx)==null||a.clearRect(0,t*(((s=this.dimensions)==null?void 0:s.css.cell.height)||0),((r=this.dimensions)==null?void 0:r.css.canvas.width)||0,(++i-t)*(((n=this.dimensions)==null?void 0:n.css.cell.height)||0))}clearAll(){var t,i,s;(s=this._ctx)==null||s.clearRect(0,0,((t=this.canvas)==null?void 0:t.width)||0,((i=this.canvas)==null?void 0:i.height)||0)}draw(t,i,s,r,n=1){if(!this._ctx)return;let{width:a,height:o}=this.cellSize;if(a===-1||o===-1)return;this._rescaleImage(t,a,o);let h=t.actual,l=Math.ceil(h.width/a),c=i%l*a,d=Math.floor(i/l)*o,g=s*a,_=r*o,v=n*a+c>h.width?h.width-c:n*a,u=d+o>h.height?h.height-d:o;this._ctx.drawImage(h,Math.floor(c),Math.floor(d),Math.ceil(v),Math.ceil(u),Math.floor(g),Math.floor(_),Math.ceil(v),Math.ceil(u))}extractTile(t,i){let{width:s,height:r}=this.cellSize;if(s===-1||r===-1)return;this._rescaleImage(t,s,r);let n=t.actual,a=Math.ceil(n.width/s),o=i%a*s,h=Math.floor(i/a)*r,l=s+o>n.width?n.width-o:s,c=h+r>n.height?n.height-h:r,d=Oi.createCanvas(this.document,l,c),g=d.getContext("2d");if(g)return g.drawImage(n,Math.floor(o),Math.floor(h),Math.floor(l),Math.floor(c),0,0,Math.floor(l),Math.floor(c)),d}drawPlaceholder(t,i,s=1){if(this._ctx){let{width:r,height:n}=this.cellSize;if(r===-1||n===-1||(this._placeholder?n>=this._placeholder.height&&this._createPlaceHolder(n+1):this._createPlaceHolder(Math.max(n+1,Nn)),!this._placeholder))return;this._ctx.drawImage(this._placeholderBitmap||this._placeholder,t*r,i*n%2?0:1,r*s,n,t*r,i*n,r*s,n)}}rescaleCanvas(){this.canvas&&(this.canvas.width!==this.dimensions.css.canvas.width||this.canvas.height!==this.dimensions.css.canvas.height)&&(this.canvas.width=this.dimensions.css.canvas.width||0,this.canvas.height=this.dimensions.css.canvas.height||0)}_rescaleImage(t,i,s){if(i===t.actualCellSize.width&&s===t.actualCellSize.height)return;let{width:r,height:n}=t.origCellSize;if(i===r&&s===n){t.actual=t.orig,t.actualCellSize.width=r,t.actualCellSize.height=n;return}let a=Oi.createCanvas(this.document,Math.ceil(t.orig.width*i/r),Math.ceil(t.orig.height*s/n)),o=a.getContext("2d");o&&(o.drawImage(t.orig,0,0,a.width,a.height),t.actual=a,t.actualCellSize.width=i,t.actualCellSize.height=s)}_open(){this._renderService=this._terminal._core._renderService,this._oldSetRenderer=this._renderService.setRenderer.bind(this._renderService),this._renderService.setRenderer=t=>{var i;this.removeLayerFromDom(),(i=this._oldSetRenderer)==null||i.call(this._renderService,t)}}insertLayerToDom(){var t,i;this.document&&this._terminal._core.screenElement?this.canvas||(this.canvas=Oi.createCanvas(this.document,((t=this.dimensions)==null?void 0:t.css.canvas.width)||0,((i=this.dimensions)==null?void 0:i.css.canvas.height)||0),this.canvas.classList.add("xterm-image-layer"),this._terminal._core.screenElement.appendChild(this.canvas),this._ctx=this.canvas.getContext("2d",{alpha:!0,desynchronized:!0}),this.clearAll()):console.warn("image addon: cannot insert output canvas to DOM, missing document or screenElement")}removeLayerFromDom(){this.canvas&&(this._ctx=void 0,this.canvas.remove(),this.canvas=void 0)}_createPlaceHolder(t=Nn){var d;(d=this._placeholderBitmap)==null||d.close(),this._placeholderBitmap=void 0;let i=32,s=Oi.createCanvas(this.document,i,t),r=s.getContext("2d",{alpha:!1});if(!r)return;let n=Oi.createImageData(r,i,t),a=new Uint32Array(n.data.buffer),o=(0,wl.toRGBA8888)(0,0,0),h=(0,wl.toRGBA8888)(255,255,255);a.fill(o);for(let g=0;gthis._placeholderBitmap=g)}get document(){var t;return(t=this._terminal._core._coreBrowserService)==null?void 0:t.window.document}},dr={width:7,height:14},Oo=class uc{constructor(t=0,i=0,s=-1,r=-1){this.imageId=s,this.tileId=r,this._ext=0,this._urlId=0,this._ext=t,this._urlId=i}get ext(){return this._urlId?this._ext&-469762049|this.underlineStyle<<26:this._ext}set ext(t){this._ext=t}get underlineStyle(){return this._urlId?5:(this._ext&469762048)>>26}set underlineStyle(t){this._ext&=-469762049,this._ext|=t<<26&469762048}get underlineColor(){return this._ext&67108863}set underlineColor(t){this._ext&=-67108864,this._ext|=t&67108863}get underlineVariantOffset(){let t=(this._ext&3758096384)>>29;return t<0?t^4294967288:t}set underlineVariantOffset(t){this._ext&=536870911,this._ext|=t<<29&3758096384}get urlId(){return this._urlId}set urlId(t){this._urlId=t}clone(){return new uc(this._ext,this._urlId,this.imageId,this.tileId)}isEmpty(){return this.underlineStyle===0&&this._urlId===0&&this.imageId===-1}},$s=new Oo,eg=class{constructor(e,t,i){this._terminal=e,this._renderer=t,this._opts=i,this._images=new Map,this._lastId=0,this._lowestId=0,this._fullyCleared=!1,this._needsFullClear=!1,this._pixelLimit=25e5;try{this.setLimit(this._opts.storageLimit)}catch(s){console.error(s.message),console.warn(`storageLimit is set to ${this.getLimit()} MB`)}this._viewportMetrics={cols:this._terminal.cols,rows:this._terminal.rows}}dispose(){this.reset()}reset(){var e;for(let t of this._images.values())(e=t.marker)==null||e.dispose();this._images.clear(),this._renderer.clearAll()}getLimit(){return this._pixelLimit*4/1e6}setLimit(e){if(e<.5||e>1e3)throw RangeError("invalid storageLimit, should be at least 0.5 MB and not exceed 1G");this._pixelLimit=e/4*1e6>>>0,this._evictOldest(0)}getUsage(){return this._getStoredPixels()*4/1e6}_getStoredPixels(){let e=0;for(let t of this._images.values())t.orig&&(e+=t.orig.width*t.orig.height,t.actual&&t.actual!==t.orig&&(e+=t.actual.width*t.actual.height));return e}_delImg(e){let t=this._images.get(e);this._images.delete(e),t&&window.ImageBitmap&&t.orig instanceof ImageBitmap&&t.orig.close()}wipeAlternate(){var t;let e=[];for(let[i,s]of this._images.entries())s.bufferType==="alternate"&&((t=s.marker)==null||t.dispose(),e.push(i));for(let i of e)this._delImg(i);this._needsFullClear=!0,this._fullyCleared=!1}advanceCursor(e){if(this._opts.sixelScrolling){let t=this._renderer.cellSize;(t.width===-1||t.height===-1)&&(t=dr);let i=Math.ceil(e/t.height);for(let s=1;s=a);++k)this._writeToCell(A,c+k,r,f*i+k),d++;if(this._opts.sixelScrolling)f=o)break;n.x=c}this._terminal._core._inputHandler._dirtyRowTracker.markDirty(n.y),this._opts.sixelScrolling?n.x=c:(n.x=h,n.y=l);let g=[];for(let[f,A]of this._images.entries())A.tileCount<1&&((u=A.marker)==null||u.dispose(),g.push(f));for(let f of g)this._delImg(f);let _=this._terminal.registerMarker(0);_==null||_.onDispose(()=>{this._images.get(r)&&this._delImg(r)}),this._terminal.buffer.active.type==="alternate"&&this._evictOnAlternate();let v={orig:e,origCellSize:t,actual:e,actualCellSize:{...t},marker:_||void 0,tileCount:d,bufferType:this._terminal.buffer.active.type};this._images.set(r,v)}render(e){if(!this._renderer.canvas&&this._images.size&&(this._renderer.insertLayerToDom(),!this._renderer.canvas))return;if(this._renderer.rescaleCanvas(),!this._images.size){this._fullyCleared||(this._renderer.clearAll(),this._fullyCleared=!0,this._needsFullClear=!1),this._renderer.canvas&&this._renderer.removeLayerFromDom();return}this._needsFullClear&&(this._renderer.clearAll(),this._fullyCleared=!0,this._needsFullClear=!1);let{start:t,end:i}=e,s=this._terminal._core.buffer,r=this._terminal._core.cols;this._renderer.clearLines(t,i);for(let n=t;n<=i;++n){let a=s.lines.get(n+s.ydisp);if(!a)return;for(let o=0;o=e.cols){this._viewportMetrics=e;return}let t=this._terminal._core.buffer,i=t.lines.length,s=this._viewportMetrics.cols-1;for(let n=0;n=c)continue;let d=!1;for(let v=s+1;v>e.cols;++v)if(a._data[v*3+0]&4194303){d=!0;break}if(d)continue;let g=Math.min(e.cols,c-o.tileId%c+s),_=o.tileId;for(let v=s+1;v57)throw new Error("illegal char");t=t*10+e[i]-48}return t}function Cl(e){let t=tn(e);if(!t.match(/^((auto)|(\d+?((px)|(%)){0,1}))$/))throw new Error("illegal size");return t}function ig(e){if(typeof Buffer<"u")return Buffer.from(tn(e),"base64").toString();let t=atob(tn(e)),i=new Uint8Array(t.length);for(let s=0;s6)return-1;for(let a=t;a=Fn)return this._a();n[r++]=o}break;case 58:return s===3&&!this._storeValue(r)?this._a():(this.state=4,a+1);default:if(r>=Fn)return this._a();n[r++]=o}}return this.state=s,this._position=r,-2}_a(){return this.state=1,-1}_storeKey(e){let t=tn(this._buffer.subarray(0,e));return t?(this._key=t,this.fields[t]=null,!0):!1}_storeValue(e){if(this._key){try{let t=this._buffer.slice(0,e);this.fields[this._key]=Sl[this._key]?Sl[this._key](t):t}catch{return!1}return!0}return!1}},sn={mime:"unsupported",width:0,height:0};function rg(e){if(e.length<24)return sn;let t=new Uint32Array(e.buffer,e.byteOffset,6);if(t[0]===1196314761&&t[1]===169478669&&t[3]===1380206665)return{mime:"image/png",width:e[16]<<24|e[17]<<16|e[18]<<8|e[19],height:e[20]<<24|e[21]<<16|e[22]<<8|e[23]};if(e[0]===255&&e[1]===216&&e[2]===255){let[i,s]=ng(e);return{mime:"image/jpeg",width:i,height:s}}return t[0]===944130375&&(e[4]===55||e[4]===57)&&e[5]===97?{mime:"image/gif",width:e[7]<<8|e[6],height:e[9]<<8|e[8]}:sn}function ng(e){let t=e.length,i=4,s=e[i]<<8|e[i+1];for(;;){if(i+=s,i>=t)return[0,0];if(e[i]!==255)return[0,0];if(e[i+1]===192||e[i+1]===194)return i+80){if(this._header=Object.assign({},Wn,this._hp.fields),!this._header.inline||!this._header.size||this._header.size>this._opts.iipSizeLimit){this._aborted=!0;return}this._dec.init(this._header.size),this._dec.put(e,s,i)&&(this._dec.release(),this._aborted=!0)}}}end(e){if(this._aborted)return!0;let t=0,i=0,s=!0;if((s=e)&&(s=!this._dec.end())&&(this._metrics=rg(this._dec.data8),(s=this._metrics.mime!=="unsupported")&&(t=this._metrics.width,i=this._metrics.height,(s=t&&i&&t*i{a.addEventListener("load",()=>{var l;URL.revokeObjectURL(n);let h=gn.createCanvas(window.document,t,i);(l=h.getContext("2d"))==null||l.drawImage(a,0,0,t,i),this._storage.addImage(h),o(!0)}),a.src=n,setTimeout(()=>o(!0),1e3)})}return createImageBitmap(r,{resizeWidth:t,resizeHeight:i}).then(n=>(this._storage.addImage(n),!0))}_resize(e,t){var h,l,c,d;let i=((h=this._renderer.dimensions)==null?void 0:h.css.cell.width)||dr.width,s=((l=this._renderer.dimensions)==null?void 0:l.css.cell.height)||dr.height,r=((c=this._renderer.dimensions)==null?void 0:c.css.canvas.width)||i*this._coreTerminal.cols,n=((d=this._renderer.dimensions)==null?void 0:d.css.canvas.height)||s*this._coreTerminal.rows,a=this._dim(this._header.width,r,i),o=this._dim(this._header.height,n,s);if(!a&&!o){let g=r/e,_=(n-s)/t,v=Math.min(g,_);return v<1?[e*v,t*v]:[e,t]}return a?this._header.preserveAspectRatio||!a||!o?[a,t*a/e]:[a,o]:[e*o/t,o]}_dim(e,t,i){return e==="auto"?0:e.endsWith("%")?parseInt(e.slice(0,-1))*t/100:e.endsWith("px")?parseInt(e.slice(0,-2)):parseInt(e)*i}},ur=vn(la()),lg=vn(Gv()),hg=4194304,No=ur.PALETTE_ANSI_256;No.set(ur.PALETTE_VT340_COLOR);var cg=class{constructor(e,t,i){this._opts=e,this._storage=t,this._coreTerminal=i,this._size=0,this._aborted=!1,(0,lg.DecoderAsync)({memoryLimit:this._opts.pixelLimit*4,palette:No,paletteLimit:this._opts.sixelPaletteLimit}).then(s=>this._dec=s)}reset(){this._dec&&(this._dec.release(),this._dec._palette.fill(0),this._dec.init(0,No,this._opts.sixelPaletteLimit))}hook(e){var t;if(this._size=0,this._aborted=!1,this._dec){let i=e.params[1]===1?0:dg(this._coreTerminal._core._inputHandler._curAttrData,(t=this._coreTerminal._core._themeService)==null?void 0:t.colors);this._dec.init(i,null,this._opts.sixelPaletteLimit)}}put(e,t,i){if(!(this._aborted||!this._dec)){if(this._size+=i-t,this._size>this._opts.sixelSizeLimit){console.warn("SIXEL: too much data, aborting"),this._aborted=!0,this._dec.release();return}try{this._dec.decode(e,t,i)}catch(s){console.warn(`SIXEL: error while decoding image - ${s}`),this._aborted=!0,this._dec.release()}}}unhook(e){var r;if(this._aborted||!e||!this._dec)return!0;let t=this._dec.width,i=this._dec.height;if(!t||!i)return i&&this._storage.advanceCursor(i),!0;let s=gn.createCanvas(void 0,t,i);return(r=s.getContext("2d"))==null||r.putImageData(new ImageData(this._dec.data8,t,i),0,0),this._dec.memoryUsage>hg&&this._dec.release(),this._storage.addImage(s),!0}};function dg(e,t){let i=0;if(!t)return i;if(e.isInverse())if(e.isFgDefault())i=Rr(t.foreground.rgba);else if(e.isFgRGB()){let s=e.constructor.toColorRGB(e.getFgColor());i=(0,ur.toRGBA8888)(...s)}else i=Rr(t.ansi[e.getFgColor()].rgba);else if(e.isBgDefault())i=Rr(t.background.rgba);else if(e.isBgRGB()){let s=e.constructor.toColorRGB(e.getBgColor());i=(0,ur.toRGBA8888)(...s)}else i=Rr(t.ansi[e.getBgColor()].rgba);return i}function Rr(e){return ur.BIG_ENDIAN?e:(e&255)<<24|(e>>>8&255)<<16|(e>>>16&255)<<8|e>>>24&255}var yl={enableSizeReports:!0,pixelLimit:16777216,sixelSupport:!0,sixelScrolling:!0,sixelPaletteLimit:256,sixelSizeLimit:25e6,storageLimit:128,showPlaceholder:!0,iipSupport:!0,iipSizeLimit:2e7},xl=4096,ug=class{constructor(e){this._disposables=[],this._handlers=new Map,this._opts=Object.assign({},yl,e),this._defaultOpts=Object.assign({},yl,e)}dispose(){for(let e of this._disposables)e.dispose();this._disposables.length=0,this._handlers.clear()}_disposeLater(...e){for(let t of e)this._disposables.push(t)}activate(e){if(this._terminal=e,this._renderer=new gn(e),this._storage=new eg(e,this._renderer,this._opts),this._opts.enableSizeReports){let t=e.options.windowOptions||{};t.getWinSizePixels=!0,t.getCellSizePixels=!0,t.getWinSizeChars=!0,e.options.windowOptions=t}if(this._disposeLater(this._renderer,this._storage,e.parser.registerCsiHandler({prefix:"?",final:"h"},t=>this._decset(t)),e.parser.registerCsiHandler({prefix:"?",final:"l"},t=>this._decrst(t)),e.parser.registerCsiHandler({final:"c"},t=>this._da1(t)),e.parser.registerCsiHandler({prefix:"?",final:"S"},t=>this._xtermGraphicsAttributes(t)),e.onRender(t=>{var i;return(i=this._storage)==null?void 0:i.render(t)}),e.parser.registerCsiHandler({intermediates:"!",final:"p"},()=>this.reset()),e.parser.registerEscHandler({final:"c"},()=>this.reset()),e._core._inputHandler.onRequestReset(()=>this.reset()),e.buffer.onBufferChange(()=>{var t;return(t=this._storage)==null?void 0:t.wipeAlternate()}),e.onResize(t=>{var i;return(i=this._storage)==null?void 0:i.viewportResize(t)})),this._opts.sixelSupport){let t=new cg(this._opts,this._storage,e);this._handlers.set("sixel",t),this._disposeLater(e._core._inputHandler._parser.registerDcsHandler({final:"q"},t))}if(this._opts.iipSupport){let t=new ag(this._opts,this._renderer,this._storage,e);this._handlers.set("iip",t),this._disposeLater(e._core._inputHandler._parser.registerOscHandler(1337,t))}}reset(){var e;this._opts.sixelScrolling=this._defaultOpts.sixelScrolling,this._opts.sixelPaletteLimit=this._defaultOpts.sixelPaletteLimit,(e=this._storage)==null||e.reset();for(let t of this._handlers.values())t.reset();return!1}get storageLimit(){var e;return((e=this._storage)==null?void 0:e.getLimit())||-1}set storageLimit(e){var t;(t=this._storage)==null||t.setLimit(e),this._opts.storageLimit=e}get storageUsage(){return this._storage?this._storage.getUsage():-1}get showPlaceholder(){return this._opts.showPlaceholder}set showPlaceholder(e){var t;this._opts.showPlaceholder=e,(t=this._renderer)==null||t.showPlaceholder(e)}getImageAtBufferCell(e,t){var i;return(i=this._storage)==null?void 0:i.getImageAtBufferCell(e,t)}extractTileAtBufferCell(e,t){var i;return(i=this._storage)==null?void 0:i.extractTileAtBufferCell(e,t)}_report(e){var t;(t=this._terminal)==null||t._core.coreService.triggerDataEvent(e)}_decset(e){for(let t=0;t2&&!(e[2]instanceof Array)&&e[2]<=xl?(this._opts.sixelPaletteLimit=e[2],this._report(`\x1B[?${e[0]};0;${this._opts.sixelPaletteLimit}S`)):this._report(`\x1B[?${e[0]};2S`),!0;case 4:return this._report(`\x1B[?${e[0]};0;${xl}S`),!0;default:return this._report(`\x1B[?${e[0]};2S`),!0}if(e[0]===2)switch(e[1]){case 1:let o=(i=(t=this._renderer)==null?void 0:t.dimensions)==null?void 0:i.css.canvas.width,h=(r=(s=this._renderer)==null?void 0:s.dimensions)==null?void 0:r.css.canvas.height;if(!o||!h){let c=dr;o=(((n=this._terminal)==null?void 0:n.cols)||80)*c.width,h=(((a=this._terminal)==null?void 0:a.rows)||24)*c.height}if(o*h');function fg(e,t){pt(t,!0);const i={background:"#1e1e2e",foreground:"#cdd6f4",cursor:"#f5e0dc",cursorAccent:"#1e1e2e",selectionBackground:"#585b7066",black:"#45475a",red:"#f38ba8",green:"#a6e3a1",yellow:"#f9e2af",blue:"#89b4fa",magenta:"#f5c2e7",cyan:"#94e2d5",white:"#bac2de",brightBlack:"#585b70",brightRed:"#f38ba8",brightGreen:"#a6e3a1",brightYellow:"#f9e2af",brightBlue:"#89b4fa",brightMagenta:"#f5c2e7",brightCyan:"#94e2d5",brightWhite:"#a6adc8"};let s,r,n;function a(h){const l=atob(h),c=new Uint8Array(l.length);for(let d=0;d{var g,_,v;r=new Mv({theme:i,fontFamily:"'JetBrains Mono', 'Fira Code', monospace",fontSize:13,cursorBlink:!0,allowProposedApi:!0,scrollback:5e3}),n=new Qv,r.loadAddon(n),r.loadAddon(new Rv.CanvasAddon),r.loadAddon(new ug({enableSizeReports:!0,sixelSupport:!0,sixelScrolling:!0,sixelPaletteLimit:4096,showPlaceholder:!0})),r.open(s),n.fit();const{cols:h,rows:l}=r,c=await((g=ws.rpc)==null?void 0:g.request["pty.create"]({sessionId:t.sessionId,cols:h,rows:l,cwd:t.cwd}));c!=null&&c.ok||(r.writeln(`\x1B[31m[agor] Failed to connect to PTY daemon: ${(c==null?void 0:c.error)??"unknown error"}\x1B[0m`),r.writeln("\x1B[33m[agor] Is agor-ptyd running? Start it with: agor-ptyd\x1B[0m")),(_=ws.rpc)==null||_.addMessageListener("pty.output",({sessionId:u,data:f})=>{u===t.sessionId&&r.write(a(f))}),(v=ws.rpc)==null||v.addMessageListener("pty.closed",({sessionId:u,exitCode:f})=>{u===t.sessionId&&r.writeln(`\r -\x1B[90m[Process exited${f!==null?` with code ${f}`:""}]\x1B[0m`)}),r.onData(u=>{var f;(f=ws.rpc)==null||f.request["pty.write"]({sessionId:t.sessionId,data:u}).catch(A=>{console.error("[pty.write] error:",A)})}),r.onResize(({cols:u,rows:f})=>{var A;(A=ws.rpc)==null||A.request["pty.resize"]({sessionId:t.sessionId,cols:u,rows:f}).catch(()=>{})});const d=new ResizeObserver(()=>{n.fit()});return d.observe(s),()=>d.disconnect()}),Rd(()=>{var h;(h=ws.rpc)==null||h.request["pty.unsubscribe"]({sessionId:t.sessionId}).catch(()=>{}),r==null||r.dispose()});var o=_g();ar(o,h=>s=h,()=>s),z(e,o),mt()}var vg=G(''),gg=G('
'),pg=G('
'),mg=G('
'),Ag=G('
');function wg(e,t){pt(t,!0);let i=qt(t,"accent",3,"var(--ctp-mauve)");const r=`${t.projectId}-t1`;let n=Z(rt([{id:r,title:"shell 1"}])),a=Z(r),o=Z(!0),h=Z(2),l=Z(rt(new Set([r])));function c(){document.activeElement instanceof HTMLElement&&document.activeElement.blur()}function d(){c();const S=`${t.projectId}-t${p(h)}`;W(n,[...p(n),{id:S,title:`shell ${p(h)}`}],!0),ld(h),W(a,S),W(l,new Set([...p(l),S]),!0)}function g(S,D){D.stopPropagation(),c();const M=p(n).findIndex(B=>B.id===S);if(W(n,p(n).filter(B=>B.id!==S),!0),p(a)===S){const B=p(n)[Math.min(M,p(n).length-1)];W(a,(B==null?void 0:B.id)??"",!0)}const x=new Set(p(l));x.delete(S),W(l,x,!0)}function _(S){c(),W(a,S,!0),p(l).has(S)||W(l,new Set([...p(l),S]),!0),p(o)||W(o,!0)}function v(){c(),W(o,!p(o))}var u=Ag(),f=R(u);f.__mousedown=c;var A=R(f);A.__click=v;var k=R(A);let b;var w=P(A,2),y=R(w);Te(y,17,()=>p(n),S=>S.id,(S,D)=>{var M=gg();let x;M.__click=()=>_(p(D).id),M.__keydown=L=>{(L.key==="Enter"||L.key===" ")&&_(p(D).id)};var B=R(M),T=R(B),Q=P(B,2);{var O=L=>{var I=vg();I.__click=H=>g(p(D).id,H),ee(()=>ue(I,"aria-label",`Close ${p(D).title??""}`)),z(L,I)};se(Q,L=>{p(n).length>1&&L(O)})}ee(()=>{x=ce(M,1,"term-tab svelte-n9472g",null,x,{active:p(a)===p(D).id}),ue(M,"tabindex",p(a)===p(D).id?0:-1),ue(M,"aria-selected",p(a)===p(D).id),J(T,p(D).title)}),z(S,M)});var m=P(y,2);m.__click=()=>d();var C=P(f,2);{var E=S=>{var D=mg();Te(D,21,()=>p(n),M=>M.id,(M,x)=>{var B=$t(),T=ct(B);{var Q=O=>{var L=pg();let I;var H=R(L);fg(H,{get sessionId(){return p(x).id}}),ee(()=>I=Ut(L,"",I,{display:p(a)===p(x).id?"flex":"none"})),z(O,L)};se(T,O=>{p(l).has(p(x).id)&&O(Q)})}z(M,B)}),z(S,D)};se(C,S=>{p(o)&&S(E)})}ee(()=>{Ut(u,`--accent: ${i()??""}`),ue(A,"title",p(o)?"Collapse terminal":"Expand terminal"),b=ce(k,0,"chevron svelte-n9472g",null,b,{open:p(o)})}),z(e,u),mt()}It(["mousedown","click","keydown"]);var Cg=G(' ',1),Sg=G(''),bg=G('
(click to open in editor)
'),yg=G('
');function xg(e,t){pt(t,!0);const i=[{name:"src",type:"dir",children:[{name:"lib",type:"dir",children:[{name:"stores",type:"dir",children:[{name:"workspace.svelte.ts",type:"file"},{name:"agents.svelte.ts",type:"file"},{name:"health.svelte.ts",type:"file"}]},{name:"adapters",type:"dir",children:[{name:"claude-messages.ts",type:"file"},{name:"agent-bridge.ts",type:"file"}]},{name:"agent-dispatcher.ts",type:"file"}]},{name:"App.svelte",type:"file"}]},{name:"src-tauri",type:"dir",children:[{name:"src",type:"dir",children:[{name:"lib.rs",type:"file"},{name:"btmsg.rs",type:"file"}]}]},{name:"Cargo.toml",type:"file"},{name:"package.json",type:"file"},{name:"vite.config.ts",type:"file"}];let s=Z(rt(new Set(["src","src/lib","src/lib/stores"]))),r=Z(null);function n(g){const _=new Set(p(s));_.has(g)?_.delete(g):_.add(g),W(s,_,!0)}function a(g){W(r,g,!0)}function o(g){return g.endsWith(".ts")||g.endsWith(".svelte.ts")?"⟨/⟩":g.endsWith(".svelte")?"◈":g.endsWith(".rs")?"⊕":g.endsWith(".toml")?"⚙":g.endsWith(".json")?"{}":"·"}var h=yg(),l=R(h);{const g=(_,v=An,u=An,f=An)=>{var A=$t(),k=ct(A);{var b=y=>{var m=Cg(),C=ct(m);C.__click=()=>n(u());let E;var S=R(C);let D;var M=P(S,4),x=R(M),B=P(C,2);{var T=Q=>{var O=$t(),L=ct(O);Te(L,17,()=>v().children,Fe,(I,H)=>{g(I,()=>p(H),()=>`${u()}/${p(H).name}`,()=>f()+1)}),z(Q,O)};se(B,Q=>{p(s).has(u())&&v().children&&Q(T)})}ee((Q,O)=>{ue(C,"aria-expanded",Q),E=Ut(C,"",E,{"padding-left":`${.5+f()*.875}rem`}),D=ce(S,1,"fb-chevron svelte-ly4nw6",null,D,O),J(x,v().name)},[()=>p(s).has(u()),()=>({open:p(s).has(u())})]),z(y,m)},w=y=>{var m=Sg();let C;m.__click=()=>a(u());let E;var S=R(m),D=R(S),M=P(S,2),x=R(M);ee(B=>{C=ce(m,1,"fb-row fb-file svelte-ly4nw6",null,C,{selected:p(r)===u()}),ue(m,"title",u()),E=Ut(m,"",E,{"padding-left":`${.5+f()*.875}rem`}),J(D,B),J(x,v().name)},[()=>o(v().name)]),z(y,m)};se(k,y=>{v().type==="dir"?y(b):y(w,!1)})}z(_,A)};Te(l,21,()=>i,Fe,(_,v)=>{g(_,()=>p(v),()=>p(v).name,()=>0)})}var c=P(l,2);{var d=g=>{var _=bg(),v=R(_),u=R(v);ee(()=>J(u,p(r))),z(g,_)};se(c,g=>{p(r)&&g(d)})}z(e,h),mt()}It(["click"]);Gc();var kg=G(' '),Eg=G('

'),Bg=G('
via Memora
');function Ig(e){const t=[{id:1,title:"Agent Orchestrator — Tech Stack",body:"Tauri 2.x + Svelte 5 frontend. Rust backend with rusqlite (WAL mode). Agent sessions via @anthropic-ai/claude-agent-sdk query(). Sidecar uses stdio NDJSON.",tags:["agor","tech-stack","architecture"],trust:"human",updatedAt:"2026-03-20"},{id:2,title:"btmsg SQLite conventions",body:'All queries use named column access (row.get("column_name")) — never positional indices. Rust structs use #[serde(rename_all = "camelCase")].',tags:["agor","database","btmsg"],trust:"agent",updatedAt:"2026-03-19"},{id:3,title:"Wake Scheduler — 3 strategies",body:"persistent=resume prompt, on-demand=fresh session, smart=threshold-gated on-demand. 6 wake signals from S-3 hybrid tribunal. Pure scorer in wake-scorer.ts (24 tests).",tags:["agor","wake-scheduler","agents"],trust:"agent",updatedAt:"2026-03-18"},{id:4,title:"Svelte 5 runes file extension rule",body:'Store files using Svelte 5 runes ($state, $derived) MUST have .svelte.ts extension. Plain .ts compiles but fails at runtime with "rune_outside_svelte".',tags:["agor","svelte","conventions"],trust:"auto",updatedAt:"2026-03-17"}],i={human:"Human",agent:"Agent",auto:"Auto"};var s=Bg(),r=R(s),n=R(r),a=R(n),o=P(r,2);Te(o,5,()=>t,h=>h.id,(h,l)=>{var c=Eg(),d=R(c),g=R(d),_=R(g),v=P(g,2),u=R(v),f=P(d,2),A=R(f),k=P(f,2),b=R(k);Te(b,5,()=>p(l).tags,Fe,(m,C)=>{var E=kg(),S=R(E);ee(()=>J(S,p(C))),z(m,E)});var w=P(b,2),y=R(w);ee(()=>{J(_,p(l).title),ce(v,1,`trust-badge trust-${p(l).trust??""}`,"svelte-1k7ge8m"),ue(v,"title",`Source: ${i[p(l).trust]??""}`),J(u,i[p(l).trust]),J(A,p(l).body),J(y,p(l).updatedAt)}),z(h,c)}),ee(()=>J(a,`${t.length??""} fragments`)),z(e,s)}var Dg=G(' '),Mg=G(" "),Lg=G(' '),Rg=G(''),Tg=G('
No markdown files open
'),Pg=G('
'),Qg=G('
Tokens used
Context %
Model
'),Og=G('
'),Ng=G('
No SSH connections configured
'),Hg=G('
'),Fg=G('
');function Wg(e,t){pt(t,!0);let i=qt(t,"provider",3,"claude"),s=qt(t,"model",3,"claude-opus-4-5"),r=qt(t,"contextPct",3,0),n=qt(t,"burnRate",3,0),a=qt(t,"blinkVisible",3,!0),o=Z("model");const h=t.messages.slice();let l=Z(rt(h)),c=Z(rt(new Set(["model"])));const d=["model","docs","context","files","ssh","memory"];function g(j){W(o,j,!0),W(c,new Set([...p(c),j]),!0)}function _(j){const F={id:p(l).length+1,role:"user",content:j};W(l,[...p(l),F],!0),setTimeout(()=>{W(l,[...p(l),{id:p(l).length+1,role:"assistant",content:`(demo) Received: "${j}"`}],!0)},400)}var v=Fg(),u=R(v),f=R(u),A=R(f);let k;var b=P(f,2),w=R(b),y=P(b,2),m=R(y),C=P(y,2),E=R(C),S=P(C,2);{var D=j=>{var F=Dg(),N=R(F);ee(()=>{ue(F,"title",`Profile: ${t.profile??""}`),J(N,t.profile)}),z(j,F)};se(S,j=>{t.profile&&j(D)})}var M=P(S,2);{var x=j=>{var F=Mg();let N;var K=R(F);ee(()=>{N=ce(F,1,"ctx-badge svelte-1aqfagj",null,N,{"ctx-warn":r()>=75,"ctx-danger":r()>=90}),ue(F,"title",`Context window ${r()??""}% used`),J(K,`${r()??""}%`)}),z(j,F)};se(M,j=>{r()>50&&j(x)})}var B=P(M,2);{var T=j=>{var F=Lg(),N=R(F);ee(K=>J(N,`$${K??""}/hr`),[()=>n().toFixed(2)]),z(j,F)};se(B,j=>{n()>0&&j(T)})}var Q=P(u,2);Te(Q,21,()=>d,Fe,(j,F)=>{var N=Rg();let K;N.__click=()=>g(p(F));var le=R(N);ee(de=>{K=ce(N,1,"tab-btn svelte-1aqfagj",null,K,{active:p(o)===p(F)}),ue(N,"aria-selected",p(o)===p(F)),ue(N,"aria-controls",`tabpanel-${t.id??""}-${p(F)??""}`),J(le,de)},[()=>p(F).charAt(0).toUpperCase()+p(F).slice(1)]),z(j,N)});var O=P(Q,2),L=R(O);let I;var H=R(L);Cu(H,{get messages(){return p(l)},get status(){return t.status},get costUsd(){return t.costUsd},get tokens(){return t.tokens},get model(){return s()},get provider(){return i()},get profile(){return t.profile},get contextPct(){return r()},get burnRate(){return n()},onSend:_});var U=P(H,2);wg(U,{get projectId(){return t.id},get accent(){return t.accent}});var re=P(L,2);{var ve=j=>{var F=Tg();let N;ee(()=>{ue(F,"id",`tabpanel-${t.id??""}-docs`),N=Ut(F,"",N,{display:p(o)==="docs"?"flex":"none"})}),z(j,F)};se(re,j=>{p(c).has("docs")&&j(ve)})}var he=P(re,2);{var ne=j=>{var F=Qg();let N;var K=R(F),le=R(K),de=R(le),fe=P(R(de),2),me=R(fe),Me=P(de,2),Ae=P(R(Me),2),we=R(Ae),ye=P(Me,2),ae=P(R(ye),2),Ee=R(ae),qe=P(le,2),Oe=R(qe);let Lt,At;var Se=P(qe,2),Ce=P(R(Se),2);Te(Ce,17,()=>p(l).slice(0,5),Fe,(xe,ke)=>{var Pe=Pg(),Je=R(Pe),Rt=R(Je),xt=P(Je,2),Ne=R(xt);ee(wt=>{ce(Je,1,`ctx-turn-role ctx-role-${p(ke).role??""}`,"svelte-1aqfagj"),J(Rt,p(ke).role),J(Ne,`${wt??""}${p(ke).content.length>60?"…":""}`)},[()=>p(ke).content.slice(0,60)]),z(xe,Pe)}),ee(xe=>{ue(F,"id",`tabpanel-${t.id??""}-context`),N=Ut(F,"",N,{display:p(o)==="context"?"flex":"none"}),J(me,xe),J(we,`${r()??""}%`),J(Ee,s()),ue(qe,"title",`${r()??""}% context used`),Lt=ce(Oe,1,"ctx-meter-bar svelte-1aqfagj",null,Lt,{"meter-warn":r()>=75,"meter-danger":r()>=90}),At=Ut(Oe,"",At,{width:`${r()??""}%`})},[()=>t.tokens.toLocaleString()]),z(j,F)};se(he,j=>{p(c).has("context")&&j(ne)})}var pe=P(he,2);{var _e=j=>{var F=Og();let N;var K=R(F);xg(K,{}),ee(()=>{ue(F,"id",`tabpanel-${t.id??""}-files`),N=Ut(F,"",N,{display:p(o)==="files"?"flex":"none"})}),z(j,F)};se(pe,j=>{p(c).has("files")&&j(_e)})}var V=P(pe,2);{var ie=j=>{var F=Ng();let N;ee(()=>{ue(F,"id",`tabpanel-${t.id??""}-ssh`),N=Ut(F,"",N,{display:p(o)==="ssh"?"flex":"none"})}),z(j,F)};se(V,j=>{p(c).has("ssh")&&j(ie)})}var oe=P(V,2);{var X=j=>{var F=Hg();let N;var K=R(F);Ig(K),ee(()=>{ue(F,"id",`tabpanel-${t.id??""}-memory`),N=Ut(F,"",N,{display:p(o)==="memory"?"flex":"none"})}),z(j,F)};se(oe,j=>{p(c).has("memory")&&j(X)})}ee(()=>{Ut(v,`--accent: ${t.accent??""}`),ue(v,"aria-label",`Project: ${t.name??""}`),ue(f,"aria-label",`Status: ${t.status??""}`),k=ce(A,1,`status-dot ${t.status??""}`,"svelte-1aqfagj",k,{"blink-off":t.status==="running"&&!a()}),ue(A,"aria-label",t.status),ue(b,"title",t.name),J(w,t.name),ue(y,"title",t.cwd),J(m,t.cwd),ue(C,"title",`Provider: ${i()??""}`),J(E,i()),ue(Q,"aria-label",`${t.name??""} tabs`),ue(L,"id",`tabpanel-${t.id??""}-model`),I=Ut(L,"",I,{display:p(o)==="model"?"flex":"none"})}),z(e,v),mt()}It(["click"]);var zg=G('
  • '),Ug=G('
      '),$g=G('
    • '),qg=G('
        '),Gg=G('
      • '),Kg=G('
          '),Jg=G(""),jg=G('

          Theme

          UI Font

          Terminal Font

          Terminal Cursor

          Scrollback

          lines (100–100k)
          ');function Yg(e,t){pt(t,!0);const i=[{id:"mocha",label:"Catppuccin Mocha",group:"Catppuccin"},{id:"macchiato",label:"Catppuccin Macchiato",group:"Catppuccin"},{id:"frappe",label:"Catppuccin Frappé",group:"Catppuccin"},{id:"latte",label:"Catppuccin Latte",group:"Catppuccin"}],s=[{value:"",label:"System Default"},{value:"Inter",label:"Inter"},{value:"IBM Plex Sans",label:"IBM Plex Sans"},{value:"Noto Sans",label:"Noto Sans"},{value:"Roboto",label:"Roboto"},{value:"Ubuntu",label:"Ubuntu"}],r=[{value:"",label:"Default (JetBrains Mono)"},{value:"JetBrains Mono",label:"JetBrains Mono"},{value:"Fira Code",label:"Fira Code"},{value:"Cascadia Code",label:"Cascadia Code"},{value:"Source Code Pro",label:"Source Code Pro"},{value:"IBM Plex Mono",label:"IBM Plex Mono"},{value:"monospace",label:"monospace"}];let n=Z("mocha"),a=Z(""),o=Z(14),h=Z(""),l=Z(13),c=Z("block"),d=Z(!0),g=Z(1e3),_=Z(!1),v=Z(!1),u=Z(!1),f=st(()=>{var Se;return((Se=i.find(Ce=>Ce.id===p(n)))==null?void 0:Se.label)??"Catppuccin Mocha"}),A=st(()=>{var Se;return((Se=s.find(Ce=>Ce.value===p(a)))==null?void 0:Se.label)??"System Default"}),k=st(()=>{var Se;return((Se=r.find(Ce=>Ce.value===p(h)))==null?void 0:Se.label)??"Default (JetBrains Mono)"});function b(){W(_,!1),W(v,!1),W(u,!1)}function w(Se){Se.target.closest(".dd-wrap")||b()}function y(Se){Se.key==="Escape"&&b()}var m=jg();m.__click=w,m.__keydown=y;var C=P(R(m),2),E=R(C),S=R(E);S.__click=()=>{W(_,!p(_)),W(v,!1),W(u,!1)};var D=R(S),M=P(D);let x;var B=P(S,2);{var T=Se=>{var Ce=Ug();Te(Ce,21,()=>i,Fe,(xe,ke)=>{var Pe=zg();let Je;Pe.__click=()=>{W(n,p(ke).id,!0),W(_,!1)},Pe.__keydown=xt=>(xt.key==="Enter"||xt.key===" ")&&(W(n,p(ke).id,!0),W(_,!1));var Rt=R(Pe);ee(()=>{Je=ce(Pe,1,"dd-item svelte-1901l6h",null,Je,{sel:p(n)===p(ke).id}),ue(Pe,"aria-selected",p(n)===p(ke).id),J(Rt,p(ke).label)}),z(xe,Pe)}),z(Se,Ce)};se(B,Se=>{p(_)&&Se(T)})}var Q=P(C,4),O=R(Q),L=R(O);L.__click=()=>{W(v,!p(v)),W(_,!1),W(u,!1)};var I=R(L),H=P(I);let U;var re=P(L,2);{var ve=Se=>{var Ce=qg();Te(Ce,21,()=>s,Fe,(xe,ke)=>{var Pe=$g();let Je;Pe.__click=()=>{W(a,p(ke).value,!0),W(v,!1)},Pe.__keydown=xt=>(xt.key==="Enter"||xt.key===" ")&&(W(a,p(ke).value,!0),W(v,!1));var Rt=R(Pe);ee(()=>{Je=ce(Pe,1,"dd-item svelte-1901l6h",null,Je,{sel:p(a)===p(ke).value}),ue(Pe,"aria-selected",p(a)===p(ke).value),J(Rt,p(ke).label)}),z(xe,Pe)}),z(Se,Ce)};se(re,Se=>{p(v)&&Se(ve)})}var he=P(O,2),ne=R(he);ne.__click=()=>W(o,Math.max(8,p(o)-1),!0);var pe=P(ne,2),_e=R(pe),V=P(pe,2);V.__click=()=>W(o,Math.min(24,p(o)+1),!0);var ie=P(Q,4),oe=R(ie),X=R(oe);X.__click=()=>{W(u,!p(u)),W(_,!1),W(v,!1)};var j=R(X),F=P(j);let N;var K=P(X,2);{var le=Se=>{var Ce=Kg();Te(Ce,21,()=>r,Fe,(xe,ke)=>{var Pe=Gg();let Je;Pe.__click=()=>{W(h,p(ke).value,!0),W(u,!1)},Pe.__keydown=xt=>(xt.key==="Enter"||xt.key===" ")&&(W(h,p(ke).value,!0),W(u,!1));var Rt=R(Pe);ee(()=>{Je=ce(Pe,1,"dd-item svelte-1901l6h",null,Je,{sel:p(h)===p(ke).value}),ue(Pe,"aria-selected",p(h)===p(ke).value),J(Rt,p(ke).label)}),z(xe,Pe)}),z(Se,Ce)};se(K,Se=>{p(u)&&Se(le)})}var de=P(oe,2),fe=R(de);fe.__click=()=>W(l,Math.max(8,p(l)-1),!0);var me=P(fe,2),Me=R(me),Ae=P(me,2);Ae.__click=()=>W(l,Math.min(24,p(l)+1),!0);var we=P(ie,4),ye=R(we);Te(ye,20,()=>["block","line","underline"],Fe,(Se,Ce)=>{var xe=Jg();xe.__click=()=>W(c,Ce,!0);let ke;var Pe=R(xe);ee(Je=>{ke=ce(xe,1,"svelte-1901l6h",null,ke,{active:p(c)===Ce}),J(Pe,Je)},[()=>Ce[0].toUpperCase()+Ce.slice(1)]),z(Se,xe)});var ae=P(ye,2),Ee=P(R(ae),2);let qe;Ee.__click=()=>W(d,!p(d));var Oe=R(Ee),Lt=P(we,4),At=R(Lt);ee(()=>{J(D,`${p(f)??""} `),x=ce(M,0,"chev svelte-1901l6h",null,x,{open:p(_)}),J(I,`${p(A)??""} `),U=ce(H,0,"chev svelte-1901l6h",null,U,{open:p(v)}),J(_e,`${p(o)??""}px`),J(j,`${p(k)??""} `),N=ce(F,0,"chev svelte-1901l6h",null,N,{open:p(u)}),J(Me,`${p(l)??""}px`),qe=ce(Ee,1,"toggle svelte-1901l6h",null,qe,{on:p(d)}),J(Oe,p(d)?"On":"Off")}),ii(At,()=>p(g),Se=>W(g,Se)),z(e,m),mt()}It(["click","keydown"]);var Vg=G('Images'),Xg=G('Web'),Zg=G('Upload'),ep=G('
          '),tp=G('
          '),ip=G('

          Defaults

          Permission mode

          System prompt template

          Providers

          ');function sp(e,t){pt(t,!0);const i=[{id:"claude",label:"Claude",desc:"Anthropic — claude-opus/sonnet/haiku"},{id:"codex",label:"Codex",desc:"OpenAI — gpt-5.4"},{id:"ollama",label:"Ollama",desc:"Local — qwen3, llama3, etc."}];let s=Z("/bin/bash"),r=Z("~"),n=Z("bypassPermissions"),a=Z(""),o=Z(rt({claude:{enabled:!0,model:"claude-opus-4-5"},codex:{enabled:!1,model:"gpt-5.4"},ollama:{enabled:!1,model:"qwen3:8b"}})),h=Z(null);function l(S){p(o)[S]={...p(o)[S],enabled:!p(o)[S].enabled},W(o,{...p(o)},!0)}function c(S,D){p(o)[S]={...p(o)[S],model:D},W(o,{...p(o)},!0)}var d=ip(),g=P(R(d),2),_=P(R(g),2),v=P(g,2),u=P(R(v),2),f=P(v,4),A=R(f);A.__click=()=>W(n,"bypassPermissions");let k;var b=P(A,2);b.__click=()=>W(n,"default");let w;var y=P(b,2);y.__click=()=>W(n,"plan");let m;var C=P(f,4),E=P(C,4);Te(E,21,()=>i,Fe,(S,D)=>{const M=st(()=>p(o)[p(D).id]);var x=tp();let B;var T=R(x);T.__click=()=>W(h,p(h)===p(D).id?null:p(D).id,!0);var Q=R(T),O=R(Q),L=P(Q,2),I=R(L),H=P(L,2),U=R(H),re=P(T,2);{var ve=he=>{var ne=ep(),pe=R(ne),_e=P(R(pe),2);let V;_e.__click=()=>l(p(D).id);var ie=P(pe,2),oe=R(ie),X=P(oe,2);X.__change=me=>c(p(D).id,me.target.value);var j=P(ie,2),F=R(j);{var N=me=>{var Me=Vg();z(me,Me)};se(F,me=>{ki[p(D).id].images&&me(N)})}var K=P(F,2);{var le=me=>{var Me=Xg();z(me,Me)};se(K,me=>{ki[p(D).id].web&&me(le)})}var de=P(K,2);{var fe=me=>{var Me=Zg();z(me,Me)};se(de,me=>{ki[p(D).id].upload&&me(fe)})}ee(()=>{V=ce(_e,1,"toggle svelte-1m5vtsu",null,V,{on:p(M).enabled}),ue(_e,"aria-checked",p(M).enabled),ue(_e,"aria-label",`Toggle ${p(D).label??""} provider`),ue(oe,"for",`model-${p(D).id??""}`),ue(X,"id",`model-${p(D).id??""}`),ir(X,p(M).model),ue(X,"placeholder",ki[p(D).id].defaultModel)}),z(he,ne)};se(re,he=>{p(h)===p(D).id&&he(ve)})}ee(()=>{B=ce(x,1,"prov-panel svelte-1m5vtsu",null,B,{disabled:!p(M).enabled}),J(O,p(D).label),J(I,p(D).desc),J(U,p(h)===p(D).id?"▴":"▾")}),z(S,x)}),ee(()=>{k=ce(A,1,"svelte-1m5vtsu",null,k,{active:p(n)==="bypassPermissions"}),w=ce(b,1,"svelte-1m5vtsu",null,w,{active:p(n)==="default"}),m=ce(y,1,"svelte-1m5vtsu",null,m,{active:p(n)==="plan"})}),ii(_,()=>p(s),S=>W(s,S)),ii(u,()=>p(r),S=>W(r,S)),ii(C,()=>p(a),S=>W(a,S)),z(e,d),mt()}It(["click","change"]);var rp=G('

          No secrets stored.

          '),np=G('
          '),op=G('
          '),ap=G('
        • '),lp=G('
        • All known keys stored
        • '),hp=G('
          '),cp=G('
          '),dp=G('

          Keyring Status

          Stored Secrets

          Branch Policies

          ');function up(e,t){pt(t,!0);const i={ANTHROPIC_API_KEY:"Anthropic API Key",OPENAI_API_KEY:"OpenAI API Key",GITHUB_TOKEN:"GitHub Token",OLLAMA_API_KEY:"Ollama API Key"};let s=!0,r=Z(rt(["ANTHROPIC_API_KEY"])),n=Z(null),a=Z(""),o=Z(""),h=Z(!1),l=Z(!1),c=Z(rt([{pattern:"main",action:"block"},{pattern:"prod*",action:"warn"}])),d=Z(""),g=Z("warn"),_=st(()=>Object.keys(i).filter(X=>!p(r).includes(X))),v=st(()=>p(a)?i[p(a)]??p(a):"Select key...");function u(){!p(a)||!p(o)||(W(l,!0),setTimeout(()=>{W(r,[...p(r),p(a)],!0),W(a,""),W(o,""),W(l,!1)},400))}function f(X){W(r,p(r).filter(j=>j!==X),!0),p(n)===X&&W(n,null)}function A(){p(d).trim()&&(W(c,[...p(c),{pattern:p(d).trim(),action:p(g)}],!0),W(d,""),W(g,"warn"))}function k(X){W(c,p(c).filter((j,F)=>F!==X),!0)}function b(X){X.target.closest(".dd-wrap")||W(h,!1)}var w=dp();w.__click=b,w.__keydown=X=>X.key==="Escape"&&W(h,!1);var y=P(R(w),2);ce(y,1,"keyring-status svelte-rv3lwt",null,{},{ok:s,unavail:!s});var m=P(R(y),2);m.textContent="System keyring available";var C=P(y,4);{var E=X=>{var j=rp();z(X,j)},S=X=>{var j=op();Te(j,21,()=>p(r),Fe,(F,N)=>{var K=np(),le=R(K),de=R(le),fe=P(le,2),me=R(fe),Me=P(fe,2);Me.__click=()=>W(n,p(n)===p(N)?null:p(N),!0);var Ae=R(Me),we=P(Me,2);we.__click=()=>f(p(N)),ee(()=>{J(de,i[p(N)]??p(N)),J(me,p(n)===p(N)?"••••••• (revealed)":"•••••••"),J(Ae,p(n)===p(N)?"🙈":"👁")}),z(F,K)}),z(X,j)};se(C,X=>{p(r).length===0?X(E):X(S,!1)})}var D=P(C,2),M=R(D),x=R(M);x.__click=()=>W(h,!p(h));var B=R(x),T=P(B);let Q;var O=P(x,2);{var L=X=>{var j=hp(),F=R(j);Te(F,17,()=>p(_),Fe,(le,de)=>{var fe=ap();fe.__click=()=>{W(a,p(de),!0),W(h,!1)},fe.__keydown=Me=>(Me.key==="Enter"||Me.key===" ")&&(W(a,p(de),!0),W(h,!1));var me=R(fe);ee(()=>{ue(fe,"aria-selected",p(a)===p(de)),J(me,i[p(de)])}),z(le,fe)});var N=P(F,2);{var K=le=>{var de=lp();z(le,de)};se(N,le=>{p(_).length===0&&le(K)})}z(X,j)};se(O,X=>{p(h)&&X(L)})}var I=P(M,2),H=P(I,2);H.__click=u;var U=R(H),re=P(D,4);Te(re,21,()=>p(c),Fe,(X,j,F)=>{var N=cp(),K=R(N),le=R(K),de=P(K,2);let fe;var me=R(de),Me=P(de,2);Me.__click=()=>k(F),ee(()=>{J(le,p(j).pattern),fe=ce(de,1,"pol-action svelte-rv3lwt",null,fe,{block:p(j).action==="block",warn:p(j).action==="warn"}),J(me,p(j).action)}),z(X,N)});var ve=P(re,2),he=R(ve),ne=P(he,2),pe=R(ne);pe.__click=()=>W(g,"warn");let _e;var V=P(pe,2);V.__click=()=>W(g,"block");let ie;var oe=P(ne,2);oe.__click=A,ee(X=>{J(B,`${p(v)??""} `),Q=ce(T,0,"chev svelte-rv3lwt",null,Q,{open:p(h)}),H.disabled=!p(a)||!p(o)||p(l),J(U,p(l)?"…":"Save"),_e=ce(pe,1,"svelte-rv3lwt",null,_e,{active:p(g)==="warn"}),ie=ce(V,1,"svelte-rv3lwt",null,ie,{active:p(g)==="block"}),oe.disabled=X},[()=>!p(d).trim()]),ii(I,()=>p(o),X=>W(o,X)),ii(he,()=>p(d),X=>W(d,X)),z(e,w),mt()}It(["click","keydown"]);var _p=G(""),fp=G(""),vp=G(""),gp=G('

          Provider

          Model

          Options

          Stall threshold

          Anchor budget

          Custom context

          ',1),pp=G('

          Project

          ');function mp(e,t){pt(t,!0);const i=["small","medium","large","full"],s=Object.keys(ki);let r=Z(rt([{id:"p1",name:"agent-orchestrator",provider:"claude",model:"claude-opus-4-5",useWorktrees:!1,useSandbox:!1,stallThreshold:15,anchorScale:"medium",customContext:""},{id:"p2",name:"quanta-discord-bot",provider:"claude",model:"claude-sonnet-4-5",useWorktrees:!1,useSandbox:!1,stallThreshold:15,anchorScale:"medium",customContext:""}])),n=Z("p1"),a=st(()=>p(r).find(g=>g.id===p(n)));function o(g){W(r,p(r).map(_=>_.id===p(n)?{..._,...g}:_),!0)}var h=pp(),l=P(R(h),2);Te(l,21,()=>p(r),Fe,(g,_)=>{var v=_p();let u;v.__click=()=>W(n,p(_).id,!0);var f=R(v);ee(()=>{u=ce(v,1,"proj-tab svelte-15znwuq",null,u,{active:p(n)===p(_).id}),J(f,p(_).name)}),z(g,v)});var c=P(l,2);{var d=g=>{var _=gp(),v=P(ct(_),2);Te(v,21,()=>s,Fe,(B,T)=>{var Q=fp();Q.__click=()=>o({provider:p(T)});let O;var L=R(Q);ee(()=>{O=ce(Q,1,"svelte-15znwuq",null,O,{active:p(a).provider===p(T)}),J(L,ki[p(T)].label)}),z(B,Q)});var u=P(v,4);u.__change=B=>o({model:B.target.value});var f=P(u,4),A=R(f),k=P(R(A),2);let b;k.__click=()=>o({useWorktrees:!p(a).useWorktrees});var w=P(A,2),y=P(R(w),2);let m;y.__click=()=>o({useSandbox:!p(a).useSandbox});var C=P(f,4),E=R(C);E.__input=B=>o({stallThreshold:parseInt(B.target.value,10)});var S=P(E,2),D=R(S),M=P(C,4);Te(M,21,()=>i,Fe,(B,T)=>{var Q=vp();Q.__click=()=>o({anchorScale:p(T)});let O;var L=R(Q);ee(I=>{O=ce(Q,1,"svelte-15znwuq",null,O,{active:p(a).anchorScale===p(T)}),J(L,I)},[()=>p(T)[0].toUpperCase()+p(T).slice(1)]),z(B,Q)});var x=P(M,4);x.__change=B=>o({customContext:B.target.value}),ee(()=>{ir(u,p(a).model),ue(u,"placeholder",ki[p(a).provider].defaultModel),b=ce(k,1,"toggle svelte-15znwuq",null,b,{on:p(a).useWorktrees}),ue(k,"aria-checked",p(a).useWorktrees),m=ce(y,1,"toggle svelte-15znwuq",null,m,{on:p(a).useSandbox}),ue(y,"aria-checked",p(a).useSandbox),ir(E,p(a).stallThreshold),J(D,`${p(a).stallThreshold??""} min`),ir(x,p(a).customContext)}),z(g,_)};se(c,g=>{p(a)&&g(d)})}z(e,h),mt()}It(["click","change","input"]);var Ap=G(""),wp=G('
          '),Cp=G(""),Sp=G(''),bp=G('

          Wake Strategy

          Session Anchors

          Anchor budget scale

          Health Monitoring

          Notifications

          ');function yp(e,t){pt(t,!0);const i={persistent:"Persistent","on-demand":"On-demand",smart:"Smart"},s={persistent:"Resume prompt whenever manager wakes","on-demand":"Fresh session on each wake",smart:"Threshold-gated on-demand"},r=["complete","error","crash","stall"],n=["small","medium","large","full"];let a=Z("persistent"),o=Z(50),h=Z(!0),l=Z("medium"),c=Z(15),d=Z(!0),g=Z(rt(new Set(["complete","error","crash"])));function _(O){const L=new Set(p(g));L.has(O)?L.delete(O):L.add(O),W(g,L,!0)}var v=bp(),u=P(R(v),2);Te(u,21,()=>Object.keys(i),Fe,(O,L)=>{var I=Ap();I.__click=()=>W(a,p(L),!0);let H;var U=R(I);ee(()=>{H=ce(I,1,"svelte-r8m6y",null,H,{active:p(a)===p(L)}),J(U,i[p(L)])}),z(O,I)});var f=P(u,2),A=R(f),k=P(f,2);{var b=O=>{var L=wp(),I=P(R(L),2),H=P(I,2),U=R(H);ee(()=>J(U,`${p(o)??""}%`)),ii(I,()=>p(o),re=>W(o,re)),z(O,L)};se(k,O=>{p(a)==="smart"&&O(b)})}var w=P(k,4),y=P(R(w),2);let m;y.__click=()=>W(h,!p(h));var C=P(w,4);Te(C,21,()=>n,Fe,(O,L)=>{var I=Cp();I.__click=()=>W(l,p(L),!0);let H;var U=R(I);ee(re=>{H=ce(I,1,"svelte-r8m6y",null,H,{active:p(l)===p(L)}),J(U,re)},[()=>p(L)[0].toUpperCase()+p(L).slice(1)]),z(O,I)});var E=P(C,4),S=P(R(E),2),D=P(S,2),M=R(D),x=P(E,4),B=P(R(x),2);let T;B.__click=()=>W(d,!p(d));var Q=P(x,2);Te(Q,21,()=>r,Fe,(O,L)=>{var I=Sp();let H;var U=R(I);U.__change=()=>_(p(L));var re=P(U);ee((ve,he)=>{H=ce(I,1,"notif-chip svelte-r8m6y",null,H,ve),zd(U,he),ue(U,"aria-label",`Notify on ${p(L)??""}`),J(re,` ${p(L)??""}`)},[()=>({active:p(g).has(p(L))}),()=>p(g).has(p(L))]),z(O,I)}),ee(()=>{J(A,s[p(a)]),m=ce(y,1,"toggle svelte-r8m6y",null,m,{on:p(h)}),ue(y,"aria-checked",p(h)),J(M,`${p(c)??""} min`),T=ce(B,1,"toggle svelte-r8m6y",null,T,{on:p(d)}),ue(B,"aria-checked",p(d))}),ii(S,()=>p(c),O=>W(c,O)),z(e,v),mt()}It(["click","change"]);var xp=G(""),kp=G('
          '),Ep=G('

          No plugins found in config dir.

          '),Bp=G('

          '),Ip=G('

          Logging

          Telemetry

          Relay

          seconds

          Plugins

          Updates

          Settings Data

          ');function Dp(e,t){pt(t,!0);const i=["trace","debug","info","warn","error"];let s=Z(rt([{id:"quanta-plugin",name:"Quanta Plugin",version:"1.2.0",enabled:!0},{id:"session-wrap",name:"Session Wrap",version:"0.4.1",enabled:!1}])),r=Z("info"),n=Z(""),a=Z(""),o=Z(30),h=Z(!1),l=Z(null);function c(L){W(s,p(s).map(I=>I.id===L?{...I,enabled:!I.enabled}:I),!0)}function d(){W(h,!0),W(l,null),setTimeout(()=>{W(h,!1),W(l,"Already up to date (v3.0.0-dev)")},1200)}function g(){const L=JSON.stringify({logLevel:p(r),otlpEndpoint:p(n),relayUrls:p(a),connTimeout:p(o)},null,2),I=new Blob([L],{type:"application/json"}),H=URL.createObjectURL(I),U=document.createElement("a");U.href=H,U.download="agor-settings.json",U.click(),URL.revokeObjectURL(H)}var _=Ip(),v=P(R(_),2);Te(v,21,()=>i,Fe,(L,I)=>{var H=xp();H.__click=()=>W(r,p(I),!0);let U;var re=R(H);ee(()=>{U=ce(H,1,"svelte-1ovc5q5",null,U,{active:p(r)===p(I)}),J(re,p(I))}),z(L,H)});var u=P(v,4),f=P(R(u),2),A=P(u,4),k=P(R(A),2),b=P(A,2),w=P(R(b),2),y=P(b,4),m=R(y);Te(m,17,()=>p(s),Fe,(L,I)=>{var H=kp(),U=R(H),re=R(U),ve=R(re),he=P(re,2),ne=R(he),pe=P(U,2);let _e;pe.__click=()=>c(p(I).id),ee(()=>{J(ve,p(I).name),J(ne,`v${p(I).version??""}`),_e=ce(pe,1,"toggle svelte-1ovc5q5",null,_e,{on:p(I).enabled}),ue(pe,"aria-checked",p(I).enabled),ue(pe,"aria-label",`Toggle ${p(I).name??""}`)}),z(L,H)});var C=P(m,2);{var E=L=>{var I=Ep();z(L,I)};se(C,L=>{p(s).length===0&&L(E)})}var S=P(y,4),D=R(S);D.textContent="v3.0.0-dev";var M=P(D,2);M.__click=d;var x=R(M),B=P(S,2);{var T=L=>{var I=Bp(),H=R(I);ee(()=>J(H,p(l))),z(L,I)};se(B,L=>{p(l)&&L(T)})}var Q=P(B,4),O=R(Q);O.__click=g,ee(()=>{M.disabled=p(h),J(x,p(h)?"Checking…":"Check for updates")}),ii(f,()=>p(n),L=>W(n,L)),ii(k,()=>p(a),L=>W(a,L)),ii(w,()=>p(o),L=>W(o,L)),z(e,_),mt()}It(["click"]);var Mp=G(''),Lp=G('');function Rp(e,t){pt(t,!0);const i=[{id:"appearance",label:"Appearance",icon:"🎨"},{id:"agents",label:"Agents",icon:"🤖"},{id:"security",label:"Security",icon:"🔒"},{id:"projects",label:"Projects",icon:"📁"},{id:"orchestration",label:"Orchestration",icon:"⚙"},{id:"advanced",label:"Advanced",icon:"🔧"}];let s=Z("appearance");function r(l){l.target===l.currentTarget&&t.onClose()}function n(l){l.key==="Escape"&&t.onClose()}var a=$t(),o=ct(a);{var h=l=>{var c=Lp();c.__click=r,c.__keydown=n;var d=R(c);d.__click=w=>w.stopPropagation(),d.__keydown=w=>w.stopPropagation();var g=R(d),_=P(R(g),2);_.__click=function(...w){var y;(y=t.onClose)==null||y.apply(this,w)};var v=P(g,2),u=R(v);Te(u,21,()=>i,Fe,(w,y)=>{var m=Mp();let C;m.__click=()=>W(s,p(y).id,!0);var E=R(m),S=R(E),D=P(E,2),M=R(D);ee(()=>{C=ce(m,1,"cat-btn svelte-1gl9lco",null,C,{active:p(s)===p(y).id}),ue(m,"aria-current",p(s)===p(y).id?"page":void 0),J(S,p(y).icon),J(M,p(y).label)}),z(w,m)});var f=P(u,2),A=R(f);{var k=w=>{Yg(w,{})},b=w=>{var y=$t(),m=ct(y);{var C=S=>{sp(S,{})},E=S=>{var D=$t(),M=ct(D);{var x=T=>{up(T,{})},B=T=>{var Q=$t(),O=ct(Q);{var L=H=>{mp(H,{})},I=H=>{var U=$t(),re=ct(U);{var ve=ne=>{yp(ne,{})},he=ne=>{var pe=$t(),_e=ct(pe);{var V=ie=>{Dp(ie,{})};se(_e,ie=>{p(s)==="advanced"&&ie(V)},!0)}z(ne,pe)};se(re,ne=>{p(s)==="orchestration"?ne(ve):ne(he,!1)},!0)}z(H,U)};se(O,H=>{p(s)==="projects"?H(L):H(I,!1)},!0)}z(T,Q)};se(M,T=>{p(s)==="security"?T(x):T(B,!1)},!0)}z(S,D)};se(m,S=>{p(s)==="agents"?S(C):S(E,!1)},!0)}z(w,y)};se(A,w=>{p(s)==="appearance"?w(k):w(b,!1)})}z(l,c)};se(o,l=>{t.open&&l(h)})}z(e,a),mt()}It(["click","keydown"]);var Tp=G(' '),Pp=G(' '),Qp=G('
        • '),Op=G('
        • No commands found
        • '),Np=G('');function Hp(e,t){pt(t,!0);const i=[{id:"new-terminal",label:"New Terminal Tab",shortcut:"Ctrl+`",action:()=>{}},{id:"settings",label:"Open Settings",shortcut:"Ctrl+,",action:()=>{}},{id:"search",label:"Search Messages",shortcut:"Ctrl+F",action:()=>{}},{id:"new-project",label:"Add Project",description:"Open a project directory",action:()=>{}},{id:"clear-agent",label:"Clear Agent Context",description:"Reset agent session",action:()=>{}},{id:"copy-cost",label:"Copy Session Cost",action:()=>{}},{id:"docs",label:"Open Documentation",shortcut:"F1",action:()=>{}},{id:"theme",label:"Change Theme",description:"Currently: Catppuccin Mocha",action:()=>{}},{id:"split-h",label:"Split Horizontally",shortcut:"Ctrl+\\",action:()=>{}},{id:"split-v",label:"Split Vertically",shortcut:"Ctrl+Shift+\\",action:()=>{}}];let s=Z(""),r=Z(0),n=Z(void 0),a=st(()=>p(s).trim()===""?i:i.filter(_=>{var v;return _.label.toLowerCase().includes(p(s).toLowerCase())||((v=_.description)==null?void 0:v.toLowerCase().includes(p(s).toLowerCase()))}));ns(()=>{t.open&&(W(s,""),W(r,0),jo().then(()=>{var _;return(_=p(n))==null?void 0:_.focus()}))}),ns(()=>{const _=p(a).length;p(r)>=_&&W(r,Math.max(0,_-1),!0)});function o(_){if(_.key==="Escape"){t.onClose();return}if(_.key==="ArrowDown"){_.preventDefault(),W(r,Math.min(p(r)+1,p(a).length-1),!0);return}if(_.key==="ArrowUp"){_.preventDefault(),W(r,Math.max(p(r)-1,0),!0);return}_.key==="Enter"&&p(a)[p(r)]&&(p(a)[p(r)].action(),t.onClose())}function h(_){_.action(),t.onClose()}function l(_){_.target===_.currentTarget&&t.onClose()}var c=$t(),d=ct(c);{var g=_=>{var v=Np();v.__click=l,v.__keydown=o;var u=R(v),f=R(u),A=P(R(f),2);A.__keydown=o,ar(A,m=>W(n,m),()=>p(n));var k=P(f,2),b=R(k);Te(b,19,()=>p(a),m=>m.id,(m,C,E)=>{var S=Qp();let D;S.__click=()=>h(p(C));var M=R(S),x=R(M),B=P(M,2);{var T=L=>{var I=Tp(),H=R(I);ee(()=>J(H,p(C).description)),z(L,I)};se(B,L=>{p(C).description&&L(T)})}var Q=P(B,2);{var O=L=>{var I=Pp(),H=R(I);ee(()=>J(H,p(C).shortcut)),z(L,I)};se(Q,L=>{p(C).shortcut&&L(O)})}ee(()=>{ue(S,"id",`cmd-${p(C).id??""}`),D=ce(S,1,"palette-item svelte-o5jp2k",null,D,{selected:p(E)===p(r)}),ue(S,"aria-selected",p(E)===p(r)),J(x,p(C).label)}),xd("mouseenter",S,()=>W(r,p(E),!0)),z(m,S)});var w=P(b,2);{var y=m=>{var C=Op();z(m,C)};se(w,m=>{p(a).length===0&&m(y)})}ee(()=>ue(A,"aria-activedescendant",p(a)[p(r)]?`cmd-${p(a)[p(r)].id}`:void 0)),ii(A,()=>p(s),m=>W(s,m)),z(_,v)};se(d,_=>{t.open&&_(g)})}z(e,c),mt()}It(["click","keydown"]);var Fp=G('
          '),Wp=G('
          ');function zp(e,t){pt(t,!0);let i=Z(rt([])),s=Z(0);function r(l,c="info",d=4e3){const g=hd(s);W(i,[...p(i),{id:g,message:l,variant:c,dismissAt:Date.now()+d}],!0),setTimeout(()=>n(g),d)}function n(l){W(i,p(i).filter(c=>c.id!==l),!0)}Yo(()=>{setTimeout(()=>{r("Agent Orchestrator connected","success",4e3)},800)});const a={success:"✓",warning:"⚠",error:"✕",info:"ℹ"};var o={addToast:r},h=Wp();return Te(h,21,()=>p(i),l=>l.id,(l,c)=>{var d=Fp(),g=R(d),_=R(g),v=P(g,2),u=R(v),f=P(v,2);f.__click=()=>n(p(c).id),ee(()=>{ce(d,1,`toast toast-${p(c).variant??""}`,"svelte-13j0wuy"),J(_,a[p(c).variant]),J(u,p(c).message)}),z(l,d)}),z(e,h),mt(o)}It(["click"]);var Up=G(' running'),$p=G(' idle'),qp=G(' stalled'),Gp=G(' attention'),Kp=G(''),Jp=G('
          session tokens cost Ctrl+K
          ',1);function jp(e,t){pt(t,!0);const i=[{id:"p1",name:"agent-orchestrator",cwd:"~/code/ai/agent-orchestrator",accent:"var(--ctp-mauve)",status:"running",costUsd:.034,tokens:18420,provider:"claude",profile:"dev",model:"claude-opus-4-5",contextPct:78,burnRate:.12,messages:[{id:1,role:"user",content:"Add a wake scheduler for Manager agents that wakes them when review queue depth > 3."},{id:2,role:"assistant",content:"Reading existing wake-scheduler.svelte.ts to understand the 3-strategy pattern..."},{id:3,role:"tool-call",content:'Read("src/lib/stores/wake-scheduler.svelte.ts")'},{id:4,role:"tool-result",content:`// 312 lines + */var jv=Object.create,Ac=Object.defineProperty,Yv=Object.getOwnPropertyDescriptor,Vv=Object.getOwnPropertyNames,Xv=Object.getPrototypeOf,Zv=Object.prototype.hasOwnProperty,Mr=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),eg=(e,t,i,s)=>{if(t&&typeof t=="object"||typeof t=="function")for(let r of Vv(t))!Zv.call(e,r)&&r!==i&&Ac(e,r,{get:()=>t[r],enumerable:!(s=Yv(t,r))||s.enumerable});return e},Sn=(e,t,i)=>(i=e!=null?jv(Xv(e)):{},eg(!e||!e.__esModule?Ac(i,"default",{value:e,enumerable:!0}):i,e)),ga=Mr(e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.DEFAULT_FOREGROUND=e.DEFAULT_BACKGROUND=e.PALETTE_ANSI_256=e.PALETTE_VT340_GREY=e.PALETTE_VT340_COLOR=e.normalizeHLS=e.normalizeRGB=e.nearestColorIndex=e.fromRGBA8888=e.toRGBA8888=e.alpha=e.blue=e.green=e.red=e.BIG_ENDIAN=void 0,e.BIG_ENDIAN=new Uint8Array(new Uint32Array([4278190080]).buffer)[0]===255,e.BIG_ENDIAN&&console.warn("BE platform detected. This version of node-sixel works only on LE properly.");function t(u){return u&255}e.red=t;function i(u){return u>>>8&255}e.green=i;function s(u){return u>>>16&255}e.blue=s;function r(u){return u>>>24&255}e.alpha=r;function n(u,g,_,f=255){return((f&255)<<24|(_&255)<<16|(g&255)<<8|u&255)>>>0}e.toRGBA8888=n;function a(u){return[u&255,u>>8&255,u>>16&255,u>>>24]}e.fromRGBA8888=a;function o(u,g){let _=t(u),f=i(u),A=s(u),x=Number.MAX_SAFE_INTEGER,S=-1;for(let w=0;w1&&(_-=1),_*6<1?g+(u-g)*6*_:_*2<1?u:_*3<2?g+(u-g)*(4-_*6):g}function c(u,g,_){if(!_){let x=Math.round(g*255);return n(x,x,x)}let f=g<.5?g*(1+_):g+_-g*_,A=2*g-f;return n(h(0,255,Math.round(l(f,A,u+1/3)*255)),h(0,255,Math.round(l(f,A,u)*255)),h(0,255,Math.round(l(f,A,u-1/3)*255)))}function d(u,g,_){return(4278190080|Math.round(_/100*255)<<16|Math.round(g/100*255)<<8|Math.round(u/100*255))>>>0}e.normalizeRGB=d;function v(u,g,_){return c((u+240%360)/360,g/100,_/100)}e.normalizeHLS=v,e.PALETTE_VT340_COLOR=new Uint32Array([d(0,0,0),d(20,20,80),d(80,13,13),d(20,80,20),d(80,20,80),d(20,80,80),d(80,80,20),d(53,53,53),d(26,26,26),d(33,33,60),d(60,26,26),d(33,60,33),d(60,33,60),d(33,60,60),d(60,60,33),d(80,80,80)]),e.PALETTE_VT340_GREY=new Uint32Array([d(0,0,0),d(13,13,13),d(26,26,26),d(40,40,40),d(6,6,6),d(20,20,20),d(33,33,33),d(46,46,46),d(0,0,0),d(13,13,13),d(26,26,26),d(40,40,40),d(6,6,6),d(20,20,20),d(33,33,33),d(46,46,46)]),e.PALETTE_ANSI_256=(()=>{let u=[n(0,0,0),n(205,0,0),n(0,205,0),n(205,205,0),n(0,0,238),n(205,0,205),n(0,250,205),n(229,229,229),n(127,127,127),n(255,0,0),n(0,255,0),n(255,255,0),n(92,92,255),n(255,0,255),n(0,255,255),n(255,255,255)],g=[0,95,135,175,215,255];for(let _=0;_<6;++_)for(let f=0;f<6;++f)for(let A=0;A<6;++A)u.push(n(g[_],g[f],g[A]));for(let _=8;_<=238;_+=10)u.push(n(_,_,_));return new Uint32Array(u)})(),e.DEFAULT_BACKGROUND=n(0,0,0,255),e.DEFAULT_FOREGROUND=n(255,255,255,255)}),tg=Mr(e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.InWasm=void 0;function t(s){if(typeof Buffer<"u")return Buffer.from(s,"base64");let r=atob(s),n=new Uint8Array(r.length);for(let a=0;ao||(o=t(a)):()=>Promise.resolve(o||(o=t(a))):r===1?n?()=>h||(h=new l.Module(o||(o=t(a)))):()=>h?Promise.resolve(h):l.compile(o||(o=t(a))).then(c=>h=c):n?c=>new l.Instance(h||(h=new l.Module(o||(o=t(a)))),c):c=>h?l.instantiate(h,c):l.instantiate(o||(o=t(a)),c).then(d=>(h=d.module)&&d.instance)}if(typeof _wasmCtx>"u")throw new Error('must run "inwasm"');_wasmCtx.add(s)}e.InWasm=i}),ig=Mr(e=>{Object.defineProperty(e,"__esModule",{value:!0});var t=tg(),i=(0,t.InWasm)({s:1,t:0,d:"AGFzbQEAAAABBQFgAAF/Ag8BA2VudgZtZW1vcnkCAAEDAwIAAAcNAgNkZWMAAANlbmQAAQqxAwKuAQEFf0GIKCgCAEGgKGohAUGEKCgCACIAQYAoKAIAQQFrQXxxIgJIBEAgAkGgKGohAyAAQaAoaiEAA0AgAC0AA0ECdCgCgCAgAC0AAkECdCgCgBggAC0AAUECdCgCgBAgAC0AAEECdCgCgAhycnIiBEH///8HSwRAQQEPCyABIAQ2AgAgAUEDaiEBIABBBGoiACADSQ0ACwtBhCggAjYCAEGIKCABQaAoazYCAEEAC/4BAQZ/AkBBgCgoAgAiAUGEKCgCACIAa0EFTgRAQQEhAxAADQFBgCgoAgAhAUGEKCgCACEAC0EBIQMgASAAayIEQQJIDQAgAEGhKGotAABBAnQoAoAQIABBoChqLQAAQQJ0KAKACHIhAQJAIARBAkYEQEEBIQIMAQtBASECIAAtAKIoIgVBPUcEQEECIQIgBUECdCgCgBggAXIhAQsgBEEERw0AIAAtAKMoIgBBPUYNACACQQFqIQIgAEECdCgCgCAgAXIhAQsgAUH///8HSw0AQYgoKAIAQaAoaiABNgIAQYgoQYgoKAIAIAJqIgA2AgAgAEGQKCgCAEchAwsgAwsAdglwcm9kdWNlcnMBDHByb2Nlc3NlZC1ieQEFY2xhbmdWMTguMC4wIChodHRwczovL2dpdGh1Yi5jb20vbGx2bS9sbHZtLXByb2plY3QgZDFlNjg1ZGY0NWRjNTk0NGI0M2QyNTQ3ZDAxMzhjZDRhM2VlNGVmZSkALA90YXJnZXRfZmVhdHVyZXMCKw9tdXRhYmxlLWdsb2JhbHMrCHNpZ24tZXh0"}),s=new Uint8Array("ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".split("").map(o=>o.charCodeAt(0))),r=new Uint32Array(1024);r.fill(4278190080);for(let o=0;o>4|(o<<4&255)<<8;for(let o=0;o>2<<8|(o<<6&255)<<16;for(let o=0;othis.keepSize?this._inst=this._m32=this._d=this._mem=null:(this._m32[1280]=0,this._m32[1281]=0,this._m32[1282]=0))}init(o){let h=this._m32,l=(Math.ceil(o/3)+1288)*4;this._inst?this._mem.buffer.byteLengthc[1283]?1:(this._d.set(o.subarray(h,l),c[1280]),c[1280]+=l-h,c[1280]-c[1281]>=131072?this._inst.exports.dec():0)}end(){return this._inst?this._inst.exports.end():1}};e.default=a}),sg=Mr(e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.LIMITS=void 0,e.LIMITS={CHUNK_SIZE:16384,PALETTE_SIZE:4096,MAX_WIDTH:16384,BYTES:"AGFzbQEAAAABJAdgAAF/YAJ/fwBgA39/fwF/YAF/AX9gAABgBH9/f38AYAF/AAIlAgNlbnYLaGFuZGxlX2JhbmQAAwNlbnYLbW9kZV9wYXJzZWQAAwMTEgQAAAAAAQQBAQUBAAACAgAGAwQFAXABBwcFBAEBBwcGCAF/AUGAihoLB9wBDgZtZW1vcnkCABFnZXRfc3RhdGVfYWRkcmVzcwADEWdldF9jaHVua19hZGRyZXNzAAQOZ2V0X3AwX2FkZHJlc3MABRNnZXRfcGFsZXR0ZV9hZGRyZXNzAAYEaW5pdAALBmRlY29kZQAMDWN1cnJlbnRfd2lkdGgADQ5jdXJyZW50X2hlaWdodAAOGV9faW5kaXJlY3RfZnVuY3Rpb25fdGFibGUBAAtfaW5pdGlhbGl6ZQACCXN0YWNrU2F2ZQARDHN0YWNrUmVzdG9yZQASCnN0YWNrQWxsb2MAEwkMAQBBAQsGCgcJDxACDAEBCq5UEgMAAQsFAEGgCAsGAEGQiQELBgBBsIkCCwUAQZAJC+okAQh/QeQIKAIAIQVB4AgoAgAhA0HoCCgCACEIIAFBkIkBaiIJQf8BOgAAIAAgAUgEQCAAQZCJAWohBgNAIAMhBCAGQQFqIQECQCAGLQAAQf8AcSIDQTBrQQlLBEAgASEGDAELQewIKAIAQQJ0QewIaiICKAIAIQADQCACIAMgAEEKbGpBMGsiADYCACABLQAAIQMgAUEBaiIGIQEgA0H/AHEiA0Ewa0EKSQ0ACwsCQAJAAkACQAJAAkACQAJ/AkACQCADQT9rIgBBP00EQCAERQ0BIARBIUYEQAJAQfAIKAIAIgFBASABGyIHIAhqIgFB1AgoAgAiA0gNACADQf//AEoNAANAIANBAnQiAkGgiQJqIgRBoAgpAwA3AwAgAkGoiQJqQaAIKQMANwMAIAJBsIkCakGgCCkDADcDACACQbiJAmpBoAgpAwA3AwAgAkHAiQJqQaAIKQMANwMAIAJByIkCakGgCCkDADcDACACQdCJAmpBoAgpAwA3AwAgAkHYiQJqQaAIKQMANwMAIAJB4IkCakGgCCkDADcDACACQeiJAmpBoAgpAwA3AwAgAkHwiQJqQaAIKQMANwMAIAJB+IkCakGgCCkDADcDACACQYCKAmpBoAgpAwA3AwAgAkGIigJqQaAIKQMANwMAIAJBkIoCakGgCCkDADcDACACQZiKAmpBoAgpAwA3AwAgAkGgigJqQaAIKQMANwMAIAJBqIoCakGgCCkDADcDACACQbCKAmpBoAgpAwA3AwAgAkG4igJqQaAIKQMANwMAIAJBwIoCakGgCCkDADcDACACQciKAmpBoAgpAwA3AwAgAkHQigJqQaAIKQMANwMAIAJB2IoCakGgCCkDADcDACACQeCKAmpBoAgpAwA3AwAgAkHoigJqQaAIKQMANwMAIAJB8IoCakGgCCkDADcDACACQfiKAmpBoAgpAwA3AwAgAkGAiwJqQaAIKQMANwMAIAJBiIsCakGgCCkDADcDACACQZCLAmpBoAgpAwA3AwAgAkGYiwJqQaAIKQMANwMAIAJBoIsCakGgCCkDADcDACACQaiLAmpBoAgpAwA3AwAgAkGwiwJqQaAIKQMANwMAIAJBuIsCakGgCCkDADcDACACQcCLAmpBoAgpAwA3AwAgAkHIiwJqQaAIKQMANwMAIAJB0IsCakGgCCkDADcDACACQdiLAmpBoAgpAwA3AwAgAkHgiwJqQaAIKQMANwMAIAJB6IsCakGgCCkDADcDACACQfCLAmpBoAgpAwA3AwAgAkH4iwJqQaAIKQMANwMAIAJBgIwCakGgCCkDADcDACACQYiMAmpBoAgpAwA3AwAgAkGQjAJqQaAIKQMANwMAIAJBmIwCakGgCCkDADcDACACQaCMAmpBoAgpAwA3AwAgAkGojAJqQaAIKQMANwMAIAJBsIwCakGgCCkDADcDACACQbiMAmpBoAgpAwA3AwAgAkHAjAJqQaAIKQMANwMAIAJByIwCakGgCCkDADcDACACQdCMAmpBoAgpAwA3AwAgAkHYjAJqQaAIKQMANwMAIAJB4IwCakGgCCkDADcDACACQeiMAmpBoAgpAwA3AwAgAkHwjAJqQaAIKQMANwMAIAJB+IwCakGgCCkDADcDACACQYCNAmpBoAgpAwA3AwAgAkGIjQJqQaAIKQMANwMAIAJBkI0CakGgCCkDADcDACACQZiNAmpBoAgpAwA3AwAgAkGwiQZqIARBgAT8CgAAQdQIKAIAQQJ0QcCJCmogBEGABPwKAABB1AgoAgBBAnRB0IkOaiAEQYAE/AoAAEHUCCgCAEECdEHgiRJqIARBgAT8CgAAQdQIKAIAQQJ0QfCJFmogBEGABPwKAABB1AhB1AgoAgAiAkGAAWoiAzYCACABIANIDQEgAkGA/wBIDQALCwJAIABFDQAgCEH//wBLDQBBgIABIAhrIAcgAUH//wBLGyECAkAgAEEBcUUNACACRQ0AIAhBAnRBoIkCaiEDIAIhBCACQQdxIgcEQANAIAMgBTYCACADQQRqIQMgBEEBayEEIAdBAWsiBw0ACwsgAkEBa0EHSQ0AA0AgAyAFNgIcIAMgBTYCGCADIAU2AhQgAyAFNgIQIAMgBTYCDCADIAU2AgggAyAFNgIEIAMgBTYCACADQSBqIQMgBEEIayIEDQALCwJAIABBAnFFDQAgAkUNACAIQQJ0QbCJBmohAyACIQQgAkEHcSIHBEADQCADIAU2AgAgA0EEaiEDIARBAWshBCAHQQFrIgcNAAsLIAJBAWtBB0kNAANAIAMgBTYCHCADIAU2AhggAyAFNgIUIAMgBTYCECADIAU2AgwgAyAFNgIIIAMgBTYCBCADIAU2AgAgA0EgaiEDIARBCGsiBA0ACwsCQCAAQQRxRQ0AIAJFDQAgCEECdEHAiQpqIQMgAiEEIAJBB3EiBwRAA0AgAyAFNgIAIANBBGohAyAEQQFrIQQgB0EBayIHDQALCyACQQFrQQdJDQADQCADIAU2AhwgAyAFNgIYIAMgBTYCFCADIAU2AhAgAyAFNgIMIAMgBTYCCCADIAU2AgQgAyAFNgIAIANBIGohAyAEQQhrIgQNAAsLAkAgAEEIcUUNACACRQ0AIAhBAnRB0IkOaiEDIAIhBCACQQdxIgcEQANAIAMgBTYCACADQQRqIQMgBEEBayEEIAdBAWsiBw0ACwsgAkEBa0EHSQ0AA0AgAyAFNgIcIAMgBTYCGCADIAU2AhQgAyAFNgIQIAMgBTYCDCADIAU2AgggAyAFNgIEIAMgBTYCACADQSBqIQMgBEEIayIEDQALCwJAIABBEHFFDQAgAkUNACAIQQJ0QeCJEmohAyACIQQgAkEHcSIHBEADQCADIAU2AgAgA0EEaiEDIARBAWshBCAHQQFrIgcNAAsLIAJBAWtBB0kNAANAIAMgBTYCHCADIAU2AhggAyAFNgIUIAMgBTYCECADIAU2AgwgAyAFNgIIIAMgBTYCBCADIAU2AgAgA0EgaiEDIARBCGsiBA0ACwsgAEEgcUUNACACRQ0AIAJBAWshByAIQQJ0QfCJFmohAyACQQdxIgQEQANAIAMgBTYCACADQQRqIQMgAkEBayECIARBAWsiBA0ACwsgB0EHSQ0AA0AgAyAFNgIcIAMgBTYCGCADIAU2AhQgAyAFNgIQIAMgBTYCDCADIAU2AgggAyAFNgIEIAMgBTYCACADQSBqIQMgAkEIayICDQALC0HcCEHcCCgCACAAcjYCACAGQQFqIgIgBi0AAEH/AHEiA0E/ayIAQT9LDQQaDAMLAkBB7AgoAgAiBEEBRgRAQfAIKAIAIgNBzAgoAgAiAUkNASADIAFwIQMMAQtB+AgoAgAhAkH0CCgCACEBAkACQCAEQQVHDQAgAUEBRw0AIAJB6QJODQQMAQsgAkHkAEoNA0H8CCgCAEHkAEoNA0GACSgCAEHkAEoNAwsCQCABRQ0AIAFBAkoNACACQfwIKAIAQYAJKAIAIAFBAnRBiAhqKAIAEQIAIQFB8AgoAgAiA0HMCCgCACICTwR/IAMgAnAFIAMLQQJ0QZAJaiABNgIAC0HwCCgCACIDQcwIKAIAIgFJDQAgAyABcCEDCyADQQJ0QZAJaigCACEFDAELIANB/QBxQSFHBEAgCCEBIAYhAgwECyAEQSNHDQQCQEHsCCgCACICQQFGBEBB8AgoAgAiAUHMCCgCACIASQ0BIAEgAHAhAQwBC0H4CCgCACEBQfQIKAIAIQACQAJAIAJBBUcNACAAQQFHDQAgAUHpAkgNAQwHCyABQeQASg0GQfwIKAIAQeQASg0GQYAJKAIAQeQASg0GCwJAIABFDQAgAEECSg0AIAFB/AgoAgBBgAkoAgAgAEECdEGICGooAgARAgAhAEHwCCgCACIBQcwIKAIAIgJPBH8gASACcAUgAQtBAnRBkAlqIAA2AgALQfAIKAIAIgFBzAgoAgAiAEkNACABIABwIQELIAFBAnRBkAlqKAIAIQUMBAsgCCEBIAYhAgtB1AgoAgAhBgNAAkAgASAGSA0AIAZB//8ASg0AIAZBAnQiBEGgiQJqIgZBoAgpAwA3AwAgBEGoiQJqQaAIKQMANwMAIARBsIkCakGgCCkDADcDACAEQbiJAmpBoAgpAwA3AwAgBEHAiQJqQaAIKQMANwMAIARByIkCakGgCCkDADcDACAEQdCJAmpBoAgpAwA3AwAgBEHYiQJqQaAIKQMANwMAIARB4IkCakGgCCkDADcDACAEQeiJAmpBoAgpAwA3AwAgBEHwiQJqQaAIKQMANwMAIARB+IkCakGgCCkDADcDACAEQYCKAmpBoAgpAwA3AwAgBEGIigJqQaAIKQMANwMAIARBkIoCakGgCCkDADcDACAEQZiKAmpBoAgpAwA3AwAgBEGgigJqQaAIKQMANwMAIARBqIoCakGgCCkDADcDACAEQbCKAmpBoAgpAwA3AwAgBEG4igJqQaAIKQMANwMAIARBwIoCakGgCCkDADcDACAEQciKAmpBoAgpAwA3AwAgBEHQigJqQaAIKQMANwMAIARB2IoCakGgCCkDADcDACAEQeCKAmpBoAgpAwA3AwAgBEHoigJqQaAIKQMANwMAIARB8IoCakGgCCkDADcDACAEQfiKAmpBoAgpAwA3AwAgBEGAiwJqQaAIKQMANwMAIARBiIsCakGgCCkDADcDACAEQZCLAmpBoAgpAwA3AwAgBEGYiwJqQaAIKQMANwMAIARBoIsCakGgCCkDADcDACAEQaiLAmpBoAgpAwA3AwAgBEGwiwJqQaAIKQMANwMAIARBuIsCakGgCCkDADcDACAEQcCLAmpBoAgpAwA3AwAgBEHIiwJqQaAIKQMANwMAIARB0IsCakGgCCkDADcDACAEQdiLAmpBoAgpAwA3AwAgBEHgiwJqQaAIKQMANwMAIARB6IsCakGgCCkDADcDACAEQfCLAmpBoAgpAwA3AwAgBEH4iwJqQaAIKQMANwMAIARBgIwCakGgCCkDADcDACAEQYiMAmpBoAgpAwA3AwAgBEGQjAJqQaAIKQMANwMAIARBmIwCakGgCCkDADcDACAEQaCMAmpBoAgpAwA3AwAgBEGojAJqQaAIKQMANwMAIARBsIwCakGgCCkDADcDACAEQbiMAmpBoAgpAwA3AwAgBEHAjAJqQaAIKQMANwMAIARByIwCakGgCCkDADcDACAEQdCMAmpBoAgpAwA3AwAgBEHYjAJqQaAIKQMANwMAIARB4IwCakGgCCkDADcDACAEQeiMAmpBoAgpAwA3AwAgBEHwjAJqQaAIKQMANwMAIARB+IwCakGgCCkDADcDACAEQYCNAmpBoAgpAwA3AwAgBEGIjQJqQaAIKQMANwMAIARBkI0CakGgCCkDADcDACAEQZiNAmpBoAgpAwA3AwAgBEGwiQZqIAZBgAT8CgAAQdQIKAIAQQJ0QcCJCmogBkGABPwKAABB1AgoAgBBAnRB0IkOaiAGQYAE/AoAAEHUCCgCAEECdEHgiRJqIAZBgAT8CgAAQdQIKAIAQQJ0QfCJFmogBkGABPwKAABB1AhB1AgoAgBBgAFqIgY2AgALIAFB//8ATQRAIABBAXEgAWxBAnRBoIkCaiAFNgIAIABBAXZBAXEgAWxBAnRBsIkGaiAFNgIAIABBAnZBAXEgAWxBAnRBwIkKaiAFNgIAIABBA3ZBAXEgAWxBAnRB0IkOaiAFNgIAIABBBHZBAXEgAWxBAnRB4IkSaiAFNgIAIABBBXYgAWxBAnRB8IkWaiAFNgIAQdQIKAIAIQYLIAFBAWohAUHcCEHcCCgCACAAcjYCACACLQAAIQAgAkEBaiIEIQIgAEH/AHEiA0E/ayIAQcAASQ0ACyAECyECQQAhBCACIQYgASEIIANB/QBxQSFGDQELIANBJGsOCgEDAwMDAwMDAwIDC0HsCEIBNwIADAQLQdgIIAFB2AgoAgAiACAAIAFIGyIAQYCAASAAQYCAAUgbNgIADAILQegIIAFB2AgoAgAiACAAIAFIGyIAQYCAASAAQYCAAUgbIgA2AgBB2AggADYCACAAQQRrEAAEQEHoCEEENgIAQdgIQQQ2AgBB0AhBATYCAA8LEAgMAQsCQCADQTtHDQBB7AgoAgAiAEEHSg0AQewIIABBAWo2AgAgAEECdEHwCGpBADYCAAsgAiEGIAQhAyABIQgMAQtBBCEIIAIhBiAEIQMLIAYgCUkNAAsLQeQIIAU2AgBB4AggAzYCAEHoCCAINgIAC9ELAgF+CH9B2AhCBDcDAEGojQJBoAgpAwAiADcDAEGgjQIgADcDAEGYjQIgADcDAEGQjQIgADcDAEGIjQIgADcDAEGAjQIgADcDAEH4jAIgADcDAEHwjAIgADcDAEHojAIgADcDAEHgjAIgADcDAEHYjAIgADcDAEHQjAIgADcDAEHIjAIgADcDAEHAjAIgADcDAEG4jAIgADcDAEGwjAIgADcDAEGojAIgADcDAEGgjAIgADcDAEGYjAIgADcDAEGQjAIgADcDAEGIjAIgADcDAEGAjAIgADcDAEH4iwIgADcDAEHwiwIgADcDAEHoiwIgADcDAEHgiwIgADcDAEHYiwIgADcDAEHQiwIgADcDAEHIiwIgADcDAEHAiwIgADcDAEG4iwIgADcDAEGwiwIgADcDAEGoiwIgADcDAEGgiwIgADcDAEGYiwIgADcDAEGQiwIgADcDAEGIiwIgADcDAEGAiwIgADcDAEH4igIgADcDAEHwigIgADcDAEHoigIgADcDAEHgigIgADcDAEHYigIgADcDAEHQigIgADcDAEHIigIgADcDAEHAigIgADcDAEG4igIgADcDAEGwigIgADcDAEGoigIgADcDAEGgigIgADcDAEGYigIgADcDAEGQigIgADcDAEGIigIgADcDAEGAigIgADcDAEH4iQIgADcDAEHwiQIgADcDAEHoiQIgADcDAEHgiQIgADcDAEHYiQIgADcDAEHQiQIgADcDAEHIiQIgADcDAEHAiQIgADcDAEG4iQIgADcDAEGwiQIgADcDAEGoCCgCACIEQf8AakGAAW0hCAJAIARBgQFIDQBBASEBIAhBAiAIQQJKG0EBayICQQFxIQMgBEGBAk4EQCACQX5xIQIDQCABQQl0IgdBEHJBoIkCakGwiQJBgAT8CgAAIAdBsI0CakGwiQJBgAT8CgAAIAFBAmohASACQQJrIgINAAsLIANFDQAgAUEJdEEQckGgiQJqQbCJAkGABPwKAAALAkAgBEEBSA0AIAhBASAIQQFKGyIDQQFxIQUCQCADQQFrIgdFBEBBACEBDAELIANB/v///wdxIQJBACEBA0AgAUEJdCIGQRByQbCJBmpBsIkCQYAE/AoAACAGQZAEckGwiQZqQbCJAkGABPwKAAAgAUECaiEBIAJBAmsiAg0ACwsgBQRAIAFBCXRBEHJBsIkGakGwiQJBgAT8CgAACyAEQQFIDQAgA0EBcSEFIAcEfyADQf7///8HcSECQQAhAQNAIAFBCXQiBkEQckHAiQpqQbCJAkGABPwKAAAgBkGQBHJBwIkKakGwiQJBgAT8CgAAIAFBAmohASACQQJrIgINAAsgAUEHdEEEcgVBBAshASAFBEAgAUECdEHAiQpqQbCJAkGABPwKAAALIARBAUgNACADQQFxIQUgBwR/IANB/v///wdxIQJBACEBA0AgAUEJdCIGQRByQdCJDmpBsIkCQYAE/AoAACAGQZAEckHQiQ5qQbCJAkGABPwKAAAgAUECaiEBIAJBAmsiAg0ACyABQQd0QQRyBUEECyEBIAUEQCABQQJ0QdCJDmpBsIkCQYAE/AoAAAsgBEEBSA0AIANBAXEhBSAHBH8gA0H+////B3EhAkEAIQEDQCABQQl0IgZBEHJB4IkSakGwiQJBgAT8CgAAIAZBkARyQeCJEmpBsIkCQYAE/AoAACABQQJqIQEgAkECayICDQALIAFBB3RBBHIFQQQLIQEgBQRAIAFBAnRB4IkSakGwiQJBgAT8CgAACyAEQQFIDQAgA0EBcSEEIAcEfyADQf7///8HcSECQQAhAQNAIAFBCXQiA0EQckHwiRZqQbCJAkGABPwKAAAgA0GQBHJB8IkWakGwiQJBgAT8CgAAIAFBAmohASACQQJrIgINAAsgAUEHdEEEcgVBBAshASAERQ0AIAFBAnRB8IkWakGwiQJBgAT8CgAAC0HUCCAIQQd0QQRyNgIAC58TAgh/AX5B5AgoAgAhA0HgCCgCACECQegIKAIAIQcgAUGQiQFqIglB/wE6AAAgACABSARAIABBkIkBaiEIA0AgAiEEIAhBAWohAQJAIAgtAABB/wBxIgJBMGtBCUsEQCABIQgMAQtB7AgoAgBBAnRB7AhqIgUoAgAhAANAIAUgAiAAQQpsakEwayIANgIAIAEtAAAhAiABQQFqIgghASACQf8AcSICQTBrQQpJDQALCwJAAkACQAJAAkACQAJ/AkAgAkE/ayIAQT9NBEAgBEUNASAEQSFGBEBB8AgoAgAiAUEBIAEbIgQgB2ohAQJAIABFDQAgB0H//wBLDQBBgIABIAdrIAQgAUH//wBLGyEFAkAgAEEBcUUNACAHQQJ0QaCJAmohAiAFIgRBB3EiBgRAA0AgAiADNgIAIAJBBGohAiAEQQFrIQQgBkEBayIGDQALCyAFQQFrQQdJDQADQCACIAM2AhwgAiADNgIYIAIgAzYCFCACIAM2AhAgAiADNgIMIAIgAzYCCCACIAM2AgQgAiADNgIAIAJBIGohAiAEQQhrIgQNAAsLAkAgAEECcUUNACAHQQJ0QbCJBmohAiAFIgRBB3EiBgRAA0AgAiADNgIAIAJBBGohAiAEQQFrIQQgBkEBayIGDQALCyAFQQFrQQdJDQADQCACIAM2AhwgAiADNgIYIAIgAzYCFCACIAM2AhAgAiADNgIMIAIgAzYCCCACIAM2AgQgAiADNgIAIAJBIGohAiAEQQhrIgQNAAsLAkAgAEEEcUUNACAHQQJ0QcCJCmohAiAFIgRBB3EiBgRAA0AgAiADNgIAIAJBBGohAiAEQQFrIQQgBkEBayIGDQALCyAFQQFrQQdJDQADQCACIAM2AhwgAiADNgIYIAIgAzYCFCACIAM2AhAgAiADNgIMIAIgAzYCCCACIAM2AgQgAiADNgIAIAJBIGohAiAEQQhrIgQNAAsLAkAgAEEIcUUNACAHQQJ0QdCJDmohAiAFIgRBB3EiBgRAA0AgAiADNgIAIAJBBGohAiAEQQFrIQQgBkEBayIGDQALCyAFQQFrQQdJDQADQCACIAM2AhwgAiADNgIYIAIgAzYCFCACIAM2AhAgAiADNgIMIAIgAzYCCCACIAM2AgQgAiADNgIAIAJBIGohAiAEQQhrIgQNAAsLAkAgAEEQcUUNACAHQQJ0QeCJEmohAiAFIgRBB3EiBgRAA0AgAiADNgIAIAJBBGohAiAEQQFrIQQgBkEBayIGDQALCyAFQQFrQQdJDQADQCACIAM2AhwgAiADNgIYIAIgAzYCFCACIAM2AhAgAiADNgIMIAIgAzYCCCACIAM2AgQgAiADNgIAIAJBIGohAiAEQQhrIgQNAAsLIABBIHFFDQAgBUEBayEEIAdBAnRB8IkWaiEAIAVBB3EiAgRAA0AgACADNgIAIABBBGohACAFQQFrIQUgAkEBayICDQALCyAEQQdJDQADQCAAIAM2AhwgACADNgIYIAAgAzYCFCAAIAM2AhAgACADNgIMIAAgAzYCCCAAIAM2AgQgACADNgIAIABBIGohACAFQQhrIgUNAAsLIAhBAWoiBSAILQAAQf8AcSICQT9rIgBBP00NAxoMBAsCQEHsCCgCACIFQQFGBEBB8AgoAgAiAUHMCCgCACIESQ0BIAEgBHAhAQwBC0H4CCgCACEEQfQIKAIAIQECQAJAIAVBBUcNACABQQFHDQAgBEHpAk4NBAwBCyAEQeQASg0DQfwIKAIAQeQASg0DQYAJKAIAQeQASg0DCwJAIAFFDQAgAUECSg0AIARB/AgoAgBBgAkoAgAgAUECdEGICGooAgARAgAhBEHwCCgCACIBQcwIKAIAIgVPBH8gASAFcAUgAQtBAnRBkAlqIAQ2AgALQfAIKAIAIgFBzAgoAgAiBEkNACABIARwIQELIAFBAnRBkAlqKAIAIQMMAQsgAkH9AHFBIUcEQCAHIQEgAiEADAQLIARBI0cNBAJAQewIKAIAIgRBAUYEQEHwCCgCACIBQcwIKAIAIgBJDQEgASAAcCEBDAELQfgIKAIAIQFB9AgoAgAhAAJAAkAgBEEFRw0AIABBAUcNACABQekCSA0BDAcLIAFB5ABKDQZB/AgoAgBB5ABKDQZBgAkoAgBB5ABKDQYLAkAgAEUNACAAQQJKDQAgAUH8CCgCAEGACSgCACAAQQJ0QYgIaigCABECACEAQfAIKAIAIgFBzAgoAgAiBE8EfyABIARwBSABC0ECdEGQCWogADYCAAtB8AgoAgAiAUHMCCgCACIASQ0AIAEgAHAhAQsgAUECdEGQCWooAgAhAwwECyAHIQEgCAshBQNAIAFB//8ATQRAIABBAXEgAWxBAnRBoIkCaiADNgIAIABBAXZBAXEgAWxBAnRBsIkGaiADNgIAIABBAnZBAXEgAWxBAnRBwIkKaiADNgIAIABBA3ZBAXEgAWxBAnRB0IkOaiADNgIAIABBBHZBAXEgAWxBAnRB4IkSaiADNgIAIABBBXYgAWxBAnRB8IkWaiADNgIACyABQQFqIQEgBS0AACEAIAVBAWoiBCEFIABB/wBxIgJBP2siAEHAAEkNAAsgBCEFC0EAIQQgBSEIIAEhByACIQAgAkH9AHFBIUYNAQtBBCEHIAQhAiAAQSRrDgoDAgICAgICAgIBAgtB7AhCATcCAAwCC0GoCCgCAEEEaxAABEBB0AhBATYCAA8LAkBBqAgoAgAiBkEFSA0AQaAIKQMAIQogBkEDa0EBdiIBQQdxIQJBACEAIAFBAWtBB08EQCABQfj///8HcSEFA0AgAEEDdCIBQbCJAmogCjcDACABQQhyQbCJAmogCjcDACABQRByQbCJAmogCjcDACABQRhyQbCJAmogCjcDACABQSByQbCJAmogCjcDACABQShyQbCJAmogCjcDACABQTByQbCJAmogCjcDACABQThyQbCJAmogCjcDACAAQQhqIQAgBUEIayIFDQALCyACRQ0AA0AgAEEDdEGwiQJqIAo3AwAgAEEBaiEAIAJBAWsiAg0ACwtBwIkGQbCJAiAGQQJ0IgD8CgAAQdCJCkGwiQIgAPwKAABB4IkOQbCJAiAA/AoAAEHwiRJBsIkCIAD8CgAAQYCKFkGwiQIgAPwKAAAgBCECDAELAkAgAEE7Rw0AQewIKAIAIgBBB0oNAEHsCCAAQQFqNgIAIABBAnRB8AhqQQA2AgALIAEhBwsgCCAJSQ0ACwtB5AggAzYCAEHgCCACNgIAQegIIAc2AgAL4gcCBX8BfgJAQdAIAn8CQAJAIAAgAU4NACABQZCJAWohBiAAQZCJAWohBQNAIAUtAAAiA0H/AHEhAgJAAkACQAJAAkACQAJAQeAIKAIAIgRBIkcEQCAEDQcgAkEiRgRAQewIQgE3AgBB4AhBIjYCAAwICyACQT9rQcAASQ0GIANBIWsiAkEMTQ0BDAULAkAgAkEwayIEQQlNBEBB7AgoAgBBAnRB7AhqIgIgBCACKAIAQQpsajYCAAwBC0HsCCgCACEEIAJBO0YEQCAEQQdKDQFB7AggBEEBajYCACAEQQJ0QfAIakEANgIADAELIARBBEYEQEHECEECNgIAQbAIQfAIKQMANwMAQbgIQfgIKAIAIgI2AgBBvAhB/AgoAgAiBDYCAEHICEECQQFBwAgoAgAiAxs2AgBBrAggBEEAIAMbNgIAQagIIAJBgIABIAJBgIABSBtBBGpBACADGzYCAEHgCEEANgIADAoLIAJBP2tBwABJDQQLIANBIWsiAkEMTQ0BDAILQQEgAnRBjSBxRQ0DDAQLQQEgAnRBjSBxDQELIANBoQFrIgJBDEsNA0EBIAJ0QY0gcUUNAwtBxAhCgYCAgBA3AgBBsAhB8AgoAgBBAEHsCCgCACICQQBKGzYCAEG0CEH0CCgCAEEAIAJBAUobNgIAQbgIQfgIKAIAQQAgAkECShs2AgBB4AhBADYCAEG8CEEANgIADAQLIANBoQFrIgJBDEsNAUEBIAJ0QY0gcUUNAQtBxAhCgYCAgBA3AgBBsAhCADcDAEG4CEIANwMADAMLIAVBAWoiBSAGSQ0ACwsCQEHICCgCAA4DAwEAAQsCQEGoCCgCACIFQQVIDQBBoAgpAwAhByAFQQNrQQF2IgNBB3EhBEEAIQIgA0EBa0EHTwRAIANB+P///wdxIQYDQCACQQN0IgNBsIkCaiAHNwMAIANBCHJBsIkCaiAHNwMAIANBEHJBsIkCaiAHNwMAIANBGHJBsIkCaiAHNwMAIANBIHJBsIkCaiAHNwMAIANBKHJBsIkCaiAHNwMAIANBMHJBsIkCaiAHNwMAIANBOHJBsIkCaiAHNwMAIAJBCGohAiAGQQhrIgYNAAsLIARFDQADQCACQQN0QbCJAmogBzcDACACQQFqIQIgBEEBayIEDQALC0HAiQZBsIkCIAVBAnQiA/wKAABB0IkKQbCJAiAD/AoAAEHgiQ5BsIkCIAP8CgAAQfCJEkGwiQIgA/wKAABBgIoWQbCJAiAD/AoAAEECDAELEAhByAgoAgALEAEiAjYCACACDQAgACABQcgIKAIAQQJ0QYAIaigCABEBAAsLdABB6AhBBDYCAEHkCCAANgIAQewIQgE3AgBBxAhCADcCAEHACCADNgIAQdwIQgA3AgBBqAhCADcDAEGwCEIANwMAQbgIQgA3AwBBzAggAkGAICACQYAgSRs2AgBBoAggAa1CgYCAgBB+NwMAQdAIQQA2AgALIwBB0AgoAgBFBEAgACABQcgIKAIAQQJ0QYAIaigCABEBAAsLWgECfwJAAkACQEHICCgCAEEBaw4CAAECC0HYCEHoCCgCACIAQdgIKAIAIgEgACABShsiAEGAgAEgAEGAgAFIGyIANgIAIABBBGsPC0GoCCgCAEEEayEACyAAC0IBAX8Cf0EGQdwIKAIAIgBBIHENABpBBSAAQRBxDQAaQQQgAEEIcQ0AGkEDIABBBHENABpBAiAAQQFxIABBAnEbCwu9BQEFfQJ/IAJFBEAgAUH/AWxBMmpB5ABtIgBBCHQgAHIgAEEQdHIMAQsgArJDAADIQpUhBiAAQfABarJDAAC0Q5UhBQJ9IAGyQwAAyEKVIgNDAAAAP10EQCADIAZDAACAP5KUDAELIAYgA0MAAIA/IAaTlJILIQcgAyADkiEGAkAgBUOrqqo+kiIEQwAAAABdBEAgBEMAAIA/kiEEDAELIARDAACAP15FDQAgBEMAAIC/kiEECyAGIAeTIQMgBUMAAAAAXSEAAn8CfSADIAcgA5NDAADAQJQgBJSSIARDq6oqPl0NABogByAEQwAAAD9dDQAaIAMgBEOrqio/XUUNABogAyAHIAOTIARDAADAwJRDAACAQJKUkgtDAAB/Q5RDAAAAP5IiBkMAAIBPXSAGQwAAAABgcQRAIAapDAELQQALIQECQCAABEAgBUMAAIA/kiEEDAELIAUiBEMAAIA/XkUNACAFQwAAgL+SIQQLIAVDq6qqvpIiBUMAAAAAXSECAn8CfSADIAcgA5NDAADAQJQgBJSSIARDq6oqPl0NABogByAEQwAAAD9dDQAaIAMgBEOrqio/XUUNABogAyAHIAOTIARDAADAwJRDAACAQJKUkgtDAAB/Q5RDAAAAP5IiBkMAAIBPXSAGQwAAAABgcQRAIAapDAELQQALIQACQCACBEAgBUMAAIA/kiEFDAELIAVDAACAP15FDQAgBUMAAIC/kiEFCwJAIAVDq6oqPl0EQCADIAcgA5NDAADAQJQgBZSSIQcMAQsgBUMAAAA/XQ0AIAVDq6oqP11FBEAgAyEHDAELIAMgByADkyAFQwAAwMCUQwAAgECSlJIhBwsgAEEIdAJ/IAdDAAB/Q5RDAAAAP5IiBkMAAIBPXSAGQwAAAABgcQRAIAapDAELQQALQRB0ciABcgtBgICAeHILNwAgAEH/AWxBMmpB5ABtIAFB/wFsQTJqQeQAbUEIdHIgAkH/AWxBMmpB5ABtQRB0ckGAgIB4cgsEACMACwYAIAAkAAsQACMAIABrQXBxIgAkACAACwsYAQBBgAgLEQEAAAACAAAAAwAAAAQAAAAF"}}),rg=Mr(e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.decodeAsync=e.decode=e.Decoder=e.DecoderAsync=void 0;var t=ga(),i=sg();function s(u){if(typeof Buffer<"u")return Buffer.from(u,"base64");let g=atob(u),_=new Uint8Array(g.length);for(let f=0;f<_.length;++f)_[f]=g.charCodeAt(f);return _}var r=s(i.LIMITS.BYTES),n,a=new Uint32Array,o=class{constructor(){this.bandHandler=u=>1,this.modeHandler=u=>1}handle_band(u){return this.bandHandler(u)}mode_parsed(u){return this.modeHandler(u)}},h={memoryLimit:2048*65536,sixelColor:t.DEFAULT_FOREGROUND,fillColor:t.DEFAULT_BACKGROUND,palette:t.PALETTE_VT340_COLOR,paletteLimit:i.LIMITS.PALETTE_SIZE,truncate:!0};function l(u){let g=new o,_={env:{handle_band:g.handle_band.bind(g),mode_parsed:g.mode_parsed.bind(g)}};return WebAssembly.instantiate(n||r,_).then(f=>(n=n||f.module,new c(u,f.instance||f,g)))}e.DecoderAsync=l;var c=class{constructor(u,g,_){if(this._PIXEL_OFFSET=i.LIMITS.MAX_WIDTH+4,this._canvas=a,this._bandWidths=[],this._maxWidth=0,this._minWidth=i.LIMITS.MAX_WIDTH,this._lastOffset=0,this._currentHeight=0,this._opts=Object.assign({},h,u),this._opts.paletteLimit>i.LIMITS.PALETTE_SIZE)throw new Error(`DecoderOptions.paletteLimit must not exceed ${i.LIMITS.PALETTE_SIZE}`);if(g)_.bandHandler=this._handle_band.bind(this),_.modeHandler=this._initCanvas.bind(this);else{let f=n||(n=new WebAssembly.Module(r));g=new WebAssembly.Instance(f,{env:{handle_band:this._handle_band.bind(this),mode_parsed:this._initCanvas.bind(this)}})}this._instance=g,this._wasm=this._instance.exports,this._chunk=new Uint8Array(this._wasm.memory.buffer,this._wasm.get_chunk_address(),i.LIMITS.CHUNK_SIZE),this._states=new Uint32Array(this._wasm.memory.buffer,this._wasm.get_state_address(),12),this._palette=new Uint32Array(this._wasm.memory.buffer,this._wasm.get_palette_address(),i.LIMITS.PALETTE_SIZE),this._palette.set(this._opts.palette),this._pSrc=new Uint32Array(this._wasm.memory.buffer,this._wasm.get_p0_address()),this._wasm.init(t.DEFAULT_FOREGROUND,0,this._opts.paletteLimit,0)}get _fillColor(){return this._states[0]}get _truncate(){return this._states[8]}get _rasterWidth(){return this._states[6]}get _rasterHeight(){return this._states[7]}get _width(){return this._states[2]?this._states[2]-4:0}get _height(){return this._states[3]}get _level(){return this._states[9]}get _mode(){return this._states[10]}get _paletteLimit(){return this._states[11]}_initCanvas(u){if(u===2){let g=this.width*this.height;if(g>this._canvas.length){if(this._opts.memoryLimit&&g*4>this._opts.memoryLimit)throw this.release(),new Error("image exceeds memory limit");this._canvas=new Uint32Array(g)}this._maxWidth=this._width}else if(u===1)if(this._level===2){let g=Math.min(this._rasterWidth,i.LIMITS.MAX_WIDTH)*this._rasterHeight;if(g>this._canvas.length){if(this._opts.memoryLimit&&g*4>this._opts.memoryLimit)throw this.release(),new Error("image exceeds memory limit");this._canvas=new Uint32Array(g)}}else this._canvas.length<65536&&(this._canvas=new Uint32Array(65536));return 0}_realloc(u,g){let _=u+g;if(_>this._canvas.length){if(this._opts.memoryLimit&&_*4>this._opts.memoryLimit)throw this.release(),new Error("image exceeds memory limit");let f=new Uint32Array(Math.ceil(_/65536)*65536);f.set(this._canvas),this._canvas=f}}_handle_band(u){let g=this._PIXEL_OFFSET,_=this._lastOffset;if(this._mode===2){let f=this.height-this._currentHeight,A=0;for(;A<6&&f>0;)this._canvas.set(this._pSrc.subarray(g*A,g*A+u),_+u*A),A++,f--;this._lastOffset+=u*A,this._currentHeight+=A}else if(this._mode===1){this._realloc(_,u*6),this._maxWidth=Math.max(this._maxWidth,u),this._minWidth=Math.min(this._minWidth,u);for(let f=0;f<6;++f)this._canvas.set(this._pSrc.subarray(g*f,g*f+u),_+u*f);this._bandWidths.push(u),this._lastOffset+=u*6,this._currentHeight+=6}return 0}get width(){return this._mode!==1?this._width:Math.max(this._maxWidth,this._wasm.current_width())}get height(){return this._mode!==1?this._height:this._wasm.current_width()?this._bandWidths.length*6+this._wasm.current_height():this._bandWidths.length*6}get palette(){return this._palette.subarray(0,this._paletteLimit)}get memoryUsage(){return this._canvas.byteLength+this._wasm.memory.buffer.byteLength+8*this._bandWidths.length}get properties(){return{width:this.width,height:this.height,mode:this._mode,level:this._level,truncate:!!this._truncate,paletteLimit:this._paletteLimit,fillColor:this._fillColor,memUsage:this.memoryUsage,rasterAttributes:{numerator:this._states[4],denominator:this._states[5],width:this._rasterWidth,height:this._rasterHeight}}}init(u=this._opts.fillColor,g=this._opts.palette,_=this._opts.paletteLimit,f=this._opts.truncate){this._wasm.init(this._opts.sixelColor,u,_,f?1:0),g&&this._palette.set(g.subarray(0,i.LIMITS.PALETTE_SIZE)),this._bandWidths.length=0,this._maxWidth=0,this._minWidth=i.LIMITS.MAX_WIDTH,this._lastOffset=0,this._currentHeight=0}decode(u,g=0,_=u.length){let f=g;for(;f<_;){let A=Math.min(_-f,i.LIMITS.CHUNK_SIZE);this._chunk.set(u.subarray(f,f+=A)),this._wasm.decode(0,A)}}decodeString(u,g=0,_=u.length){let f=g;for(;f<_;){let A=Math.min(_-f,i.LIMITS.CHUNK_SIZE);for(let x=0,S=f;x0){let _=this._PIXEL_OFFSET,f=this._lastOffset,A=0;for(;A<6&&g>0;)this._canvas.set(this._pSrc.subarray(_*A,_*A+u),f+u*A),A++,g--;g&&this._canvas.fill(this._fillColor,f+u*A)}return this._canvas.subarray(0,this.width*this.height)}if(this._mode===1){if(this._minWidth===this._maxWidth){let A=!1;if(u)if(u!==this._minWidth)A=!0;else{let x=this._PIXEL_OFFSET,S=this._lastOffset;this._realloc(S,u*6);for(let w=0;w<6;++w)this._canvas.set(this._pSrc.subarray(x*w,x*w+u),S+u*w)}if(!A)return this._canvas.subarray(0,this.width*this.height)}let g=new Uint32Array(this.width*this.height);g.fill(this._fillColor);let _=0,f=0;for(let A=0;A{function t(n){return n<0}e.isLessThan=t;function i(n){return n<=0}e.isLessThanOrEqual=i;function s(n){return n>0}e.isGreaterThan=s;function r(n){return n===0}e.isNeitherLessOrGreaterThan=r,e.greaterThan=1,e.lessThan=-1,e.neitherLessOrGreaterThan=0})(ng||(ng={}));function og(e,t){let i=this,s=!1,r;return function(){return s||(s=!0,t||(r=e.apply(i,arguments))),r}}var wc;(e=>{function t(w){return w&&typeof w=="object"&&typeof w[Symbol.iterator]=="function"}e.is=t;let i=Object.freeze([]);function s(){return i}e.empty=s;function*r(w){yield w}e.single=r;function n(w){return t(w)?w:r(w)}e.wrap=n;function a(w){return w||i}e.from=a;function*o(w){for(let y=w.length-1;y>=0;y--)yield w[y]}e.reverse=o;function h(w){return!w||w[Symbol.iterator]().next().done===!0}e.isEmpty=h;function l(w){return w[Symbol.iterator]().next().value}e.first=l;function c(w,y){let m=0;for(let C of w)if(y(C,m++))return!0;return!1}e.some=c;function d(w,y){for(let m of w)if(y(m))return m}e.find=d;function*v(w,y){for(let m of w)y(m)&&(yield m)}e.filter=v;function*u(w,y){let m=0;for(let C of w)yield y(C,m++)}e.map=u;function*g(w,y){let m=0;for(let C of w)yield*y(C,m++)}e.flatMap=g;function*_(...w){for(let y of w)yield*y}e.concat=_;function f(w,y,m){let C=m;for(let E of w)C=y(C,E);return C}e.reduce=f;function*A(w,y,m=w.length){for(y<0&&(y+=w.length),m<0?m+=w.length:m>w.length&&(m=w.length);y1)throw new AggregateError(t,"Encountered errors while disposing of store");return Array.isArray(e)?[]:e}else if(e)return e.dispose(),e}function lg(e){return{dispose:og(()=>{e()})}}var Cc=class bc{constructor(){this._toDispose=new Set,this._isDisposed=!1}dispose(){this._isDisposed||(this._isDisposed=!0,this.clear())}get isDisposed(){return this._isDisposed}clear(){if(this._toDispose.size!==0)try{ag(this._toDispose)}finally{this._toDispose.clear()}}add(t){if(!t)return t;if(t===this)throw new Error("Cannot register a disposable on itself!");return this._isDisposed?bc.DISABLE_DISPOSED_WARNING||console.warn(new Error("Trying to add a disposable to a DisposableStore that has already been disposed of. The added object will be leaked!").stack):this._toDispose.add(t),t}delete(t){if(t){if(t===this)throw new Error("Cannot dispose a disposable on itself!");this._toDispose.delete(t),t.dispose()}}deleteAndLeak(t){t&&this._toDispose.has(t)&&(this._toDispose.delete(t),void 0)}};Cc.DISABLE_DISPOSED_WARNING=!1;var hg=Cc,Sc=class{constructor(){this._store=new hg,this._store}dispose(){this._store.dispose()}_register(e){if(e===this)throw new Error("Cannot register a disposable on itself!");return this._store.add(e)}};Sc.None=Object.freeze({dispose(){}});var cg=class{constructor(){this._isDisposed=!1}get value(){return this._isDisposed?void 0:this._value}set value(e){var t;this._isDisposed||e===this._value||((t=this._value)==null||t.dispose(),this._value=e)}clear(){this.value=void 0}dispose(){var e;this._isDisposed=!0,(e=this._value)==null||e.dispose(),this._value=void 0}clearAndLeak(){let e=this._value;return this._value=void 0,e}},dg=4096,qn=24,yn=class $i extends Sc{constructor(t){super(),this._terminal=t,this._optionsRefresh=this._register(new cg),this._oldOpen=this._terminal._core.open,this._terminal._core.open=i=>{var s;(s=this._oldOpen)==null||s.call(this._terminal._core,i),this._open()},this._terminal._core.screenElement&&this._open(),this._optionsRefresh.value=this._terminal._core.optionsService.onOptionChange(i=>{var s;i==="fontSize"&&(this.rescaleCanvas(),(s=this._renderService)==null||s.refreshRows(0,this._terminal.rows))}),this._register(lg(()=>{var i;this.removeLayerFromDom(),this._terminal._core&&this._oldOpen&&(this._terminal._core.open=this._oldOpen,this._oldOpen=void 0),this._renderService&&this._oldSetRenderer&&(this._renderService.setRenderer=this._oldSetRenderer,this._oldSetRenderer=void 0),this._renderService=void 0,this.canvas=void 0,this._ctx=void 0,(i=this._placeholderBitmap)==null||i.close(),this._placeholderBitmap=void 0,this._placeholder=void 0}))}static createCanvas(t,i,s){let r=(t||document).createElement("canvas");return r.width=i|0,r.height=s|0,r}static createImageData(t,i,s,r){if(typeof ImageData!="function"){let n=t.createImageData(i,s);return r&&n.data.set(new Uint8ClampedArray(r,0,i*s*4)),n}return r?new ImageData(new Uint8ClampedArray(r,0,i*s*4),i,s):new ImageData(i,s)}static createImageBitmap(t){return typeof createImageBitmap!="function"?Promise.resolve(void 0):createImageBitmap(t)}showPlaceholder(t){var i,s;t?!this._placeholder&&this.cellSize.height!==-1&&this._createPlaceHolder(Math.max(this.cellSize.height+1,qn)):((i=this._placeholderBitmap)==null||i.close(),this._placeholderBitmap=void 0,this._placeholder=void 0),(s=this._renderService)==null||s.refreshRows(0,this._terminal.rows)}get dimensions(){var t;return(t=this._renderService)==null?void 0:t.dimensions}get cellSize(){var t,i;return{width:((t=this.dimensions)==null?void 0:t.css.cell.width)||-1,height:((i=this.dimensions)==null?void 0:i.css.cell.height)||-1}}clearLines(t,i){var s,r,n,a;(a=this._ctx)==null||a.clearRect(0,t*(((s=this.dimensions)==null?void 0:s.css.cell.height)||0),((r=this.dimensions)==null?void 0:r.css.canvas.width)||0,(++i-t)*(((n=this.dimensions)==null?void 0:n.css.cell.height)||0))}clearAll(){var t,i,s;(s=this._ctx)==null||s.clearRect(0,0,((t=this.canvas)==null?void 0:t.width)||0,((i=this.canvas)==null?void 0:i.height)||0)}draw(t,i,s,r,n=1){if(!this._ctx)return;let{width:a,height:o}=this.cellSize;if(a===-1||o===-1)return;this._rescaleImage(t,a,o);let h=t.actual,l=Math.ceil(h.width/a),c=i%l*a,d=Math.floor(i/l)*o,v=s*a,u=r*o,g=n*a+c>h.width?h.width-c:n*a,_=d+o>h.height?h.height-d:o;this._ctx.drawImage(h,Math.floor(c),Math.floor(d),Math.ceil(g),Math.ceil(_),Math.floor(v),Math.floor(u),Math.ceil(g),Math.ceil(_))}extractTile(t,i){let{width:s,height:r}=this.cellSize;if(s===-1||r===-1)return;this._rescaleImage(t,s,r);let n=t.actual,a=Math.ceil(n.width/s),o=i%a*s,h=Math.floor(i/a)*r,l=s+o>n.width?n.width-o:s,c=h+r>n.height?n.height-h:r,d=$i.createCanvas(this.document,l,c),v=d.getContext("2d");if(v)return v.drawImage(n,Math.floor(o),Math.floor(h),Math.floor(l),Math.floor(c),0,0,Math.floor(l),Math.floor(c)),d}drawPlaceholder(t,i,s=1){if(this._ctx){let{width:r,height:n}=this.cellSize;if(r===-1||n===-1||(this._placeholder?n>=this._placeholder.height&&this._createPlaceHolder(n+1):this._createPlaceHolder(Math.max(n+1,qn)),!this._placeholder))return;this._ctx.drawImage(this._placeholderBitmap||this._placeholder,t*r,i*n%2?0:1,r*s,n,t*r,i*n,r*s,n)}}rescaleCanvas(){this.canvas&&(this.canvas.width!==this.dimensions.css.canvas.width||this.canvas.height!==this.dimensions.css.canvas.height)&&(this.canvas.width=this.dimensions.css.canvas.width||0,this.canvas.height=this.dimensions.css.canvas.height||0)}_rescaleImage(t,i,s){if(i===t.actualCellSize.width&&s===t.actualCellSize.height)return;let{width:r,height:n}=t.origCellSize;if(i===r&&s===n){t.actual=t.orig,t.actualCellSize.width=r,t.actualCellSize.height=n;return}let a=$i.createCanvas(this.document,Math.ceil(t.orig.width*i/r),Math.ceil(t.orig.height*s/n)),o=a.getContext("2d");o&&(o.drawImage(t.orig,0,0,a.width,a.height),t.actual=a,t.actualCellSize.width=i,t.actualCellSize.height=s)}_open(){this._renderService=this._terminal._core._renderService,this._oldSetRenderer=this._renderService.setRenderer.bind(this._renderService),this._renderService.setRenderer=t=>{var i;this.removeLayerFromDom(),(i=this._oldSetRenderer)==null||i.call(this._renderService,t)}}insertLayerToDom(){var t,i;this.document&&this._terminal._core.screenElement?this.canvas||(this.canvas=$i.createCanvas(this.document,((t=this.dimensions)==null?void 0:t.css.canvas.width)||0,((i=this.dimensions)==null?void 0:i.css.canvas.height)||0),this.canvas.classList.add("xterm-image-layer"),this._terminal._core.screenElement.appendChild(this.canvas),this._ctx=this.canvas.getContext("2d",{alpha:!0,desynchronized:!0}),this.clearAll()):console.warn("image addon: cannot insert output canvas to DOM, missing document or screenElement")}removeLayerFromDom(){this.canvas&&(this._ctx=void 0,this.canvas.remove(),this.canvas=void 0)}_createPlaceHolder(t=qn){var d;(d=this._placeholderBitmap)==null||d.close(),this._placeholderBitmap=void 0;let i=32,s=$i.createCanvas(this.document,i,t),r=s.getContext("2d",{alpha:!1});if(!r)return;let n=$i.createImageData(r,i,t),a=new Uint32Array(n.data.buffer),o=(0,Il.toRGBA8888)(0,0,0),h=(0,Il.toRGBA8888)(255,255,255);a.fill(o);for(let v=0;vthis._placeholderBitmap=v)}get document(){var t;return(t=this._terminal._core._coreBrowserService)==null?void 0:t.window.document}},pr={width:7,height:14},qo=class yc{constructor(t=0,i=0,s=-1,r=-1){this.imageId=s,this.tileId=r,this._ext=0,this._urlId=0,this._ext=t,this._urlId=i}get ext(){return this._urlId?this._ext&-469762049|this.underlineStyle<<26:this._ext}set ext(t){this._ext=t}get underlineStyle(){return this._urlId?5:(this._ext&469762048)>>26}set underlineStyle(t){this._ext&=-469762049,this._ext|=t<<26&469762048}get underlineColor(){return this._ext&67108863}set underlineColor(t){this._ext&=-67108864,this._ext|=t&67108863}get underlineVariantOffset(){let t=(this._ext&3758096384)>>29;return t<0?t^4294967288:t}set underlineVariantOffset(t){this._ext&=536870911,this._ext|=t<<29&3758096384}get urlId(){return this._urlId}set urlId(t){this._urlId=t}clone(){return new yc(this._ext,this._urlId,this.imageId,this.tileId)}isEmpty(){return this.underlineStyle===0&&this._urlId===0&&this.imageId===-1}},Ys=new qo,ug=class{constructor(e,t,i){this._terminal=e,this._renderer=t,this._opts=i,this._images=new Map,this._lastId=0,this._lowestId=0,this._fullyCleared=!1,this._needsFullClear=!1,this._pixelLimit=25e5;try{this.setLimit(this._opts.storageLimit)}catch(s){console.error(s.message),console.warn(`storageLimit is set to ${this.getLimit()} MB`)}this._viewportMetrics={cols:this._terminal.cols,rows:this._terminal.rows}}dispose(){this.reset()}reset(){var e;for(let t of this._images.values())(e=t.marker)==null||e.dispose();this._images.clear(),this._renderer.clearAll()}getLimit(){return this._pixelLimit*4/1e6}setLimit(e){if(e<.5||e>1e3)throw RangeError("invalid storageLimit, should be at least 0.5 MB and not exceed 1G");this._pixelLimit=e/4*1e6>>>0,this._evictOldest(0)}getUsage(){return this._getStoredPixels()*4/1e6}_getStoredPixels(){let e=0;for(let t of this._images.values())t.orig&&(e+=t.orig.width*t.orig.height,t.actual&&t.actual!==t.orig&&(e+=t.actual.width*t.actual.height));return e}_delImg(e){let t=this._images.get(e);this._images.delete(e),t&&window.ImageBitmap&&t.orig instanceof ImageBitmap&&t.orig.close()}wipeAlternate(){var t;let e=[];for(let[i,s]of this._images.entries())s.bufferType==="alternate"&&((t=s.marker)==null||t.dispose(),e.push(i));for(let i of e)this._delImg(i);this._needsFullClear=!0,this._fullyCleared=!1}advanceCursor(e){if(this._opts.sixelScrolling){let t=this._renderer.cellSize;(t.width===-1||t.height===-1)&&(t=pr);let i=Math.ceil(e/t.height);for(let s=1;s=a);++x)this._writeToCell(A,c+x,r,f*i+x),d++;if(this._opts.sixelScrolling)f=o)break;n.x=c}this._terminal._core._inputHandler._dirtyRowTracker.markDirty(n.y),this._opts.sixelScrolling?n.x=c:(n.x=h,n.y=l);let v=[];for(let[f,A]of this._images.entries())A.tileCount<1&&((_=A.marker)==null||_.dispose(),v.push(f));for(let f of v)this._delImg(f);let u=this._terminal.registerMarker(0);u==null||u.onDispose(()=>{this._images.get(r)&&this._delImg(r)}),this._terminal.buffer.active.type==="alternate"&&this._evictOnAlternate();let g={orig:e,origCellSize:t,actual:e,actualCellSize:{...t},marker:u||void 0,tileCount:d,bufferType:this._terminal.buffer.active.type};this._images.set(r,g)}render(e){if(!this._renderer.canvas&&this._images.size&&(this._renderer.insertLayerToDom(),!this._renderer.canvas))return;if(this._renderer.rescaleCanvas(),!this._images.size){this._fullyCleared||(this._renderer.clearAll(),this._fullyCleared=!0,this._needsFullClear=!1),this._renderer.canvas&&this._renderer.removeLayerFromDom();return}this._needsFullClear&&(this._renderer.clearAll(),this._fullyCleared=!0,this._needsFullClear=!1);let{start:t,end:i}=e,s=this._terminal._core.buffer,r=this._terminal._core.cols;this._renderer.clearLines(t,i);for(let n=t;n<=i;++n){let a=s.lines.get(n+s.ydisp);if(!a)return;for(let o=0;o=e.cols){this._viewportMetrics=e;return}let t=this._terminal._core.buffer,i=t.lines.length,s=this._viewportMetrics.cols-1;for(let n=0;n=c)continue;let d=!1;for(let g=s+1;g>e.cols;++g)if(a._data[g*3+0]&4194303){d=!0;break}if(d)continue;let v=Math.min(e.cols,c-o.tileId%c+s),u=o.tileId;for(let g=s+1;g57)throw new Error("illegal char");t=t*10+e[i]-48}return t}function Dl(e){let t=hn(e);if(!t.match(/^((auto)|(\d+?((px)|(%)){0,1}))$/))throw new Error("illegal size");return t}function fg(e){if(typeof Buffer<"u")return Buffer.from(hn(e),"base64").toString();let t=atob(hn(e)),i=new Uint8Array(t.length);for(let s=0;s6)return-1;for(let a=t;a=Kn)return this._a();n[r++]=o}break;case 58:return s===3&&!this._storeValue(r)?this._a():(this.state=4,a+1);default:if(r>=Kn)return this._a();n[r++]=o}}return this.state=s,this._position=r,-2}_a(){return this.state=1,-1}_storeKey(e){let t=hn(this._buffer.subarray(0,e));return t?(this._key=t,this.fields[t]=null,!0):!1}_storeValue(e){if(this._key){try{let t=this._buffer.slice(0,e);this.fields[this._key]=Ml[this._key]?Ml[this._key](t):t}catch{return!1}return!0}return!1}},cn={mime:"unsupported",width:0,height:0};function gg(e){if(e.length<24)return cn;let t=new Uint32Array(e.buffer,e.byteOffset,6);if(t[0]===1196314761&&t[1]===169478669&&t[3]===1380206665)return{mime:"image/png",width:e[16]<<24|e[17]<<16|e[18]<<8|e[19],height:e[20]<<24|e[21]<<16|e[22]<<8|e[23]};if(e[0]===255&&e[1]===216&&e[2]===255){let[i,s]=pg(e);return{mime:"image/jpeg",width:i,height:s}}return t[0]===944130375&&(e[4]===55||e[4]===57)&&e[5]===97?{mime:"image/gif",width:e[7]<<8|e[6],height:e[9]<<8|e[8]}:cn}function pg(e){let t=e.length,i=4,s=e[i]<<8|e[i+1];for(;;){if(i+=s,i>=t)return[0,0];if(e[i]!==255)return[0,0];if(e[i+1]===192||e[i+1]===194)return i+80){if(this._header=Object.assign({},Jn,this._hp.fields),!this._header.inline||!this._header.size||this._header.size>this._opts.iipSizeLimit){this._aborted=!0;return}this._dec.init(this._header.size),this._dec.put(e,s,i)&&(this._dec.release(),this._aborted=!0)}}}end(e){if(this._aborted)return!0;let t=0,i=0,s=!0;if((s=e)&&(s=!this._dec.end())&&(this._metrics=gg(this._dec.data8),(s=this._metrics.mime!=="unsupported")&&(t=this._metrics.width,i=this._metrics.height,(s=t&&i&&t*i{a.addEventListener("load",()=>{var l;URL.revokeObjectURL(n);let h=yn.createCanvas(window.document,t,i);(l=h.getContext("2d"))==null||l.drawImage(a,0,0,t,i),this._storage.addImage(h),o(!0)}),a.src=n,setTimeout(()=>o(!0),1e3)})}return createImageBitmap(r,{resizeWidth:t,resizeHeight:i}).then(n=>(this._storage.addImage(n),!0))}_resize(e,t){var h,l,c,d;let i=((h=this._renderer.dimensions)==null?void 0:h.css.cell.width)||pr.width,s=((l=this._renderer.dimensions)==null?void 0:l.css.cell.height)||pr.height,r=((c=this._renderer.dimensions)==null?void 0:c.css.canvas.width)||i*this._coreTerminal.cols,n=((d=this._renderer.dimensions)==null?void 0:d.css.canvas.height)||s*this._coreTerminal.rows,a=this._dim(this._header.width,r,i),o=this._dim(this._header.height,n,s);if(!a&&!o){let v=r/e,u=(n-s)/t,g=Math.min(v,u);return g<1?[e*g,t*g]:[e,t]}return a?this._header.preserveAspectRatio||!a||!o?[a,t*a/e]:[a,o]:[e*o/t,o]}_dim(e,t,i){return e==="auto"?0:e.endsWith("%")?parseInt(e.slice(0,-1))*t/100:e.endsWith("px")?parseInt(e.slice(0,-2)):parseInt(e)*i}},mr=Sn(ga()),wg=Sn(rg()),Cg=4194304,Go=mr.PALETTE_ANSI_256;Go.set(mr.PALETTE_VT340_COLOR);var bg=class{constructor(e,t,i){this._opts=e,this._storage=t,this._coreTerminal=i,this._size=0,this._aborted=!1,(0,wg.DecoderAsync)({memoryLimit:this._opts.pixelLimit*4,palette:Go,paletteLimit:this._opts.sixelPaletteLimit}).then(s=>this._dec=s)}reset(){this._dec&&(this._dec.release(),this._dec._palette.fill(0),this._dec.init(0,Go,this._opts.sixelPaletteLimit))}hook(e){var t;if(this._size=0,this._aborted=!1,this._dec){let i=e.params[1]===1?0:Sg(this._coreTerminal._core._inputHandler._curAttrData,(t=this._coreTerminal._core._themeService)==null?void 0:t.colors);this._dec.init(i,null,this._opts.sixelPaletteLimit)}}put(e,t,i){if(!(this._aborted||!this._dec)){if(this._size+=i-t,this._size>this._opts.sixelSizeLimit){console.warn("SIXEL: too much data, aborting"),this._aborted=!0,this._dec.release();return}try{this._dec.decode(e,t,i)}catch(s){console.warn(`SIXEL: error while decoding image - ${s}`),this._aborted=!0,this._dec.release()}}}unhook(e){var r;if(this._aborted||!e||!this._dec)return!0;let t=this._dec.width,i=this._dec.height;if(!t||!i)return i&&this._storage.advanceCursor(i),!0;let s=yn.createCanvas(void 0,t,i);return(r=s.getContext("2d"))==null||r.putImageData(new ImageData(this._dec.data8,t,i),0,0),this._dec.memoryUsage>Cg&&this._dec.release(),this._storage.addImage(s),!0}};function Sg(e,t){let i=0;if(!t)return i;if(e.isInverse())if(e.isFgDefault())i=Fr(t.foreground.rgba);else if(e.isFgRGB()){let s=e.constructor.toColorRGB(e.getFgColor());i=(0,mr.toRGBA8888)(...s)}else i=Fr(t.ansi[e.getFgColor()].rgba);else if(e.isBgDefault())i=Fr(t.background.rgba);else if(e.isBgRGB()){let s=e.constructor.toColorRGB(e.getBgColor());i=(0,mr.toRGBA8888)(...s)}else i=Fr(t.ansi[e.getBgColor()].rgba);return i}function Fr(e){return mr.BIG_ENDIAN?e:(e&255)<<24|(e>>>8&255)<<16|(e>>>16&255)<<8|e>>>24&255}var Rl={enableSizeReports:!0,pixelLimit:16777216,sixelSupport:!0,sixelScrolling:!0,sixelPaletteLimit:256,sixelSizeLimit:25e6,storageLimit:128,showPlaceholder:!0,iipSupport:!0,iipSizeLimit:2e7},Tl=4096,yg=class{constructor(e){this._disposables=[],this._handlers=new Map,this._opts=Object.assign({},Rl,e),this._defaultOpts=Object.assign({},Rl,e)}dispose(){for(let e of this._disposables)e.dispose();this._disposables.length=0,this._handlers.clear()}_disposeLater(...e){for(let t of e)this._disposables.push(t)}activate(e){if(this._terminal=e,this._renderer=new yn(e),this._storage=new ug(e,this._renderer,this._opts),this._opts.enableSizeReports){let t=e.options.windowOptions||{};t.getWinSizePixels=!0,t.getCellSizePixels=!0,t.getWinSizeChars=!0,e.options.windowOptions=t}if(this._disposeLater(this._renderer,this._storage,e.parser.registerCsiHandler({prefix:"?",final:"h"},t=>this._decset(t)),e.parser.registerCsiHandler({prefix:"?",final:"l"},t=>this._decrst(t)),e.parser.registerCsiHandler({final:"c"},t=>this._da1(t)),e.parser.registerCsiHandler({prefix:"?",final:"S"},t=>this._xtermGraphicsAttributes(t)),e.onRender(t=>{var i;return(i=this._storage)==null?void 0:i.render(t)}),e.parser.registerCsiHandler({intermediates:"!",final:"p"},()=>this.reset()),e.parser.registerEscHandler({final:"c"},()=>this.reset()),e._core._inputHandler.onRequestReset(()=>this.reset()),e.buffer.onBufferChange(()=>{var t;return(t=this._storage)==null?void 0:t.wipeAlternate()}),e.onResize(t=>{var i;return(i=this._storage)==null?void 0:i.viewportResize(t)})),this._opts.sixelSupport){let t=new bg(this._opts,this._storage,e);this._handlers.set("sixel",t),this._disposeLater(e._core._inputHandler._parser.registerDcsHandler({final:"q"},t))}if(this._opts.iipSupport){let t=new Ag(this._opts,this._renderer,this._storage,e);this._handlers.set("iip",t),this._disposeLater(e._core._inputHandler._parser.registerOscHandler(1337,t))}}reset(){var e;this._opts.sixelScrolling=this._defaultOpts.sixelScrolling,this._opts.sixelPaletteLimit=this._defaultOpts.sixelPaletteLimit,(e=this._storage)==null||e.reset();for(let t of this._handlers.values())t.reset();return!1}get storageLimit(){var e;return((e=this._storage)==null?void 0:e.getLimit())||-1}set storageLimit(e){var t;(t=this._storage)==null||t.setLimit(e),this._opts.storageLimit=e}get storageUsage(){return this._storage?this._storage.getUsage():-1}get showPlaceholder(){return this._opts.showPlaceholder}set showPlaceholder(e){var t;this._opts.showPlaceholder=e,(t=this._renderer)==null||t.showPlaceholder(e)}getImageAtBufferCell(e,t){var i;return(i=this._storage)==null?void 0:i.getImageAtBufferCell(e,t)}extractTileAtBufferCell(e,t){var i;return(i=this._storage)==null?void 0:i.extractTileAtBufferCell(e,t)}_report(e){var t;(t=this._terminal)==null||t._core.coreService.triggerDataEvent(e)}_decset(e){for(let t=0;t2&&!(e[2]instanceof Array)&&e[2]<=Tl?(this._opts.sixelPaletteLimit=e[2],this._report(`\x1B[?${e[0]};0;${this._opts.sixelPaletteLimit}S`)):this._report(`\x1B[?${e[0]};2S`),!0;case 4:return this._report(`\x1B[?${e[0]};0;${Tl}S`),!0;default:return this._report(`\x1B[?${e[0]};2S`),!0}if(e[0]===2)switch(e[1]){case 1:let o=(i=(t=this._renderer)==null?void 0:t.dimensions)==null?void 0:i.css.canvas.width,h=(r=(s=this._renderer)==null?void 0:s.dimensions)==null?void 0:r.css.canvas.height;if(!o||!h){let c=pr;o=(((n=this._terminal)==null?void 0:n.cols)||80)*c.width,h=(((a=this._terminal)==null?void 0:a.rows)||24)*c.height}if(o*h');function kg(e,t){Ct(t,!0);const i={background:"#1e1e2e",foreground:"#cdd6f4",cursor:"#f5e0dc",cursorAccent:"#1e1e2e",selectionBackground:"#585b7066",black:"#45475a",red:"#f38ba8",green:"#a6e3a1",yellow:"#f9e2af",blue:"#89b4fa",magenta:"#f5c2e7",cyan:"#94e2d5",white:"#bac2de",brightBlack:"#585b70",brightRed:"#f38ba8",brightGreen:"#a6e3a1",brightYellow:"#f9e2af",brightBlue:"#89b4fa",brightMagenta:"#f5c2e7",brightCyan:"#94e2d5",brightWhite:"#a6adc8"};let s,r,n;function a(h){const l=atob(h),c=new Uint8Array(l.length);for(let d=0;d{var v,u,g;r=new Uv({theme:i,fontFamily:"'JetBrains Mono', 'Fira Code', monospace",fontSize:13,cursorBlink:!0,allowProposedApi:!0,scrollback:5e3}),n=new Jv,r.loadAddon(n),r.loadAddon(new qv.CanvasAddon),r.loadAddon(new yg({enableSizeReports:!0,sixelSupport:!0,sixelScrolling:!0,sixelPaletteLimit:4096,showPlaceholder:!0})),r.open(s),n.fit();const{cols:h,rows:l}=r,c=await((v=Es.rpc)==null?void 0:v.request["pty.create"]({sessionId:t.sessionId,cols:h,rows:l,cwd:t.cwd}));c!=null&&c.ok||(r.writeln(`\x1B[31m[agor] Failed to connect to PTY daemon: ${(c==null?void 0:c.error)??"unknown error"}\x1B[0m`),r.writeln("\x1B[33m[agor] Is agor-ptyd running? Start it with: agor-ptyd\x1B[0m")),(u=Es.rpc)==null||u.addMessageListener("pty.output",({sessionId:_,data:f})=>{_===t.sessionId&&r.write(a(f))}),(g=Es.rpc)==null||g.addMessageListener("pty.closed",({sessionId:_,exitCode:f})=>{_===t.sessionId&&r.writeln(`\r +\x1B[90m[Process exited${f!==null?` with code ${f}`:""}]\x1B[0m`)}),r.onData(_=>{var f;(f=Es.rpc)==null||f.request["pty.write"]({sessionId:t.sessionId,data:_}).catch(A=>{console.error("[pty.write] error:",A)})}),r.onResize(({cols:_,rows:f})=>{var A;(A=Es.rpc)==null||A.request["pty.resize"]({sessionId:t.sessionId,cols:_,rows:f}).catch(()=>{})});const d=new ResizeObserver(()=>{n.fit()});return d.observe(s),()=>d.disconnect()}),qd(()=>{var h;(h=Es.rpc)==null||h.request["pty.unsubscribe"]({sessionId:t.sessionId}).catch(()=>{}),r==null||r.dispose()});var o=xg();_r(o,h=>s=h,()=>s),z(e,o),bt()}var Eg=G(''),Bg=G('
          '),Ig=G('
          '),Dg=G('
          '),Mg=G('
          ');function Lg(e,t){Ct(t,!0);let i=Gt(t,"accent",3,"var(--ctp-mauve)");const r=`${t.projectId}-t1`;let n=V(Ne([{id:r,title:"shell 1"}])),a=V(r),o=V(!0),h=V(2),l=V(Ne(new Set([r])));function c(){document.activeElement instanceof HTMLElement&&document.activeElement.blur()}function d(){c();const b=`${t.projectId}-t${p(h)}`;W(n,[...p(n),{id:b,title:`shell ${p(h)}`}],!0),wd(h),W(a,b),W(l,new Set([...p(l),b]),!0)}function v(b,D){D.stopPropagation(),c();const M=p(n).findIndex(B=>B.id===b);if(W(n,p(n).filter(B=>B.id!==b),!0),p(a)===b){const B=p(n)[Math.min(M,p(n).length-1)];W(a,(B==null?void 0:B.id)??"",!0)}const k=new Set(p(l));k.delete(b),W(l,k,!0)}function u(b){c(),W(a,b,!0),p(l).has(b)||W(l,new Set([...p(l),b]),!0),p(o)||W(o,!0)}function g(){c(),W(o,!p(o))}var _=Mg(),f=R(_);f.__mousedown=c;var A=R(f);A.__click=g;var x=R(A);let S;var w=P(A,2),y=R(w);Me(y,17,()=>p(n),b=>b.id,(b,D)=>{var M=Bg();let k;M.__click=()=>u(p(D).id),M.__keydown=L=>{(L.key==="Enter"||L.key===" ")&&u(p(D).id)};var B=R(M),T=R(B),Q=P(B,2);{var O=L=>{var I=Eg();I.__click=F=>v(p(D).id,F),ee(()=>ue(I,"aria-label",`Close ${p(D).title??""}`)),z(L,I)};se(Q,L=>{p(n).length>1&&L(O)})}ee(()=>{k=ce(M,1,"term-tab svelte-n9472g",null,k,{active:p(a)===p(D).id}),ue(M,"tabindex",p(a)===p(D).id?0:-1),ue(M,"aria-selected",p(a)===p(D).id),J(T,p(D).title)}),z(b,M)});var m=P(y,2);m.__click=()=>d();var C=P(f,2);{var E=b=>{var D=Dg();Me(D,21,()=>p(n),M=>M.id,(M,k)=>{var B=qt(),T=at(B);{var Q=O=>{var L=Ig();let I;var F=R(L);kg(F,{get sessionId(){return p(k).id}}),ee(()=>I=$t(L,"",I,{display:p(a)===p(k).id?"flex":"none"})),z(O,L)};se(T,O=>{p(l).has(p(k).id)&&O(Q)})}z(M,B)}),z(b,D)};se(C,b=>{p(o)&&b(E)})}ee(()=>{$t(_,`--accent: ${i()??""}`),ue(A,"title",p(o)?"Collapse terminal":"Expand terminal"),S=ce(x,0,"chevron svelte-n9472g",null,S,{open:p(o)})}),z(e,_),bt()}Dt(["mousedown","click","keydown"]);var Rg=G(' ',1),Tg=G(''),Pg=G('
          (click to open in editor)
          '),Qg=G('
          ');function Og(e,t){Ct(t,!0);const i=[{name:"src",type:"dir",children:[{name:"lib",type:"dir",children:[{name:"stores",type:"dir",children:[{name:"workspace.svelte.ts",type:"file"},{name:"agents.svelte.ts",type:"file"},{name:"health.svelte.ts",type:"file"}]},{name:"adapters",type:"dir",children:[{name:"claude-messages.ts",type:"file"},{name:"agent-bridge.ts",type:"file"}]},{name:"agent-dispatcher.ts",type:"file"}]},{name:"App.svelte",type:"file"}]},{name:"src-tauri",type:"dir",children:[{name:"src",type:"dir",children:[{name:"lib.rs",type:"file"},{name:"btmsg.rs",type:"file"}]}]},{name:"Cargo.toml",type:"file"},{name:"package.json",type:"file"},{name:"vite.config.ts",type:"file"}];let s=V(Ne(new Set(["src","src/lib","src/lib/stores"]))),r=V(null);function n(v){const u=new Set(p(s));u.has(v)?u.delete(v):u.add(v),W(s,u,!0)}function a(v){W(r,v,!0)}function o(v){return v.endsWith(".ts")||v.endsWith(".svelte.ts")?"⟨/⟩":v.endsWith(".svelte")?"◈":v.endsWith(".rs")?"⊕":v.endsWith(".toml")?"⚙":v.endsWith(".json")?"{}":"·"}var h=Qg(),l=R(h);{const v=(u,g=kn,_=kn,f=kn)=>{var A=qt(),x=at(A);{var S=y=>{var m=Rg(),C=at(m);C.__click=()=>n(_());let E;var b=R(C);let D;var M=P(b,4),k=R(M),B=P(C,2);{var T=Q=>{var O=qt(),L=at(O);Me(L,17,()=>g().children,He,(I,F)=>{v(I,()=>p(F),()=>`${_()}/${p(F).name}`,()=>f()+1)}),z(Q,O)};se(B,Q=>{p(s).has(_())&&g().children&&Q(T)})}ee((Q,O)=>{ue(C,"aria-expanded",Q),E=$t(C,"",E,{"padding-left":`${.5+f()*.875}rem`}),D=ce(b,1,"fb-chevron svelte-ly4nw6",null,D,O),J(k,g().name)},[()=>p(s).has(_()),()=>({open:p(s).has(_())})]),z(y,m)},w=y=>{var m=Tg();let C;m.__click=()=>a(_());let E;var b=R(m),D=R(b),M=P(b,2),k=R(M);ee(B=>{C=ce(m,1,"fb-row fb-file svelte-ly4nw6",null,C,{selected:p(r)===_()}),ue(m,"title",_()),E=$t(m,"",E,{"padding-left":`${.5+f()*.875}rem`}),J(D,B),J(k,g().name)},[()=>o(g().name)]),z(y,m)};se(x,y=>{g().type==="dir"?y(S):y(w,!1)})}z(u,A)};Me(l,21,()=>i,He,(u,g)=>{v(u,()=>p(g),()=>p(g).name,()=>0)})}var c=P(l,2);{var d=v=>{var u=Pg(),g=R(u),_=R(g);ee(()=>J(_,p(r))),z(v,u)};se(c,v=>{p(r)&&v(d)})}z(e,h),bt()}Dt(["click"]);rd();var Ng=G(' '),Fg=G('

          '),Hg=G('
          via Memora
          ');function Wg(e){const t=[{id:1,title:"Agent Orchestrator — Tech Stack",body:"Tauri 2.x + Svelte 5 frontend. Rust backend with rusqlite (WAL mode). Agent sessions via @anthropic-ai/claude-agent-sdk query(). Sidecar uses stdio NDJSON.",tags:["agor","tech-stack","architecture"],trust:"human",updatedAt:"2026-03-20"},{id:2,title:"btmsg SQLite conventions",body:'All queries use named column access (row.get("column_name")) — never positional indices. Rust structs use #[serde(rename_all = "camelCase")].',tags:["agor","database","btmsg"],trust:"agent",updatedAt:"2026-03-19"},{id:3,title:"Wake Scheduler — 3 strategies",body:"persistent=resume prompt, on-demand=fresh session, smart=threshold-gated on-demand. 6 wake signals from S-3 hybrid tribunal. Pure scorer in wake-scorer.ts (24 tests).",tags:["agor","wake-scheduler","agents"],trust:"agent",updatedAt:"2026-03-18"},{id:4,title:"Svelte 5 runes file extension rule",body:'Store files using Svelte 5 runes ($state, $derived) MUST have .svelte.ts extension. Plain .ts compiles but fails at runtime with "rune_outside_svelte".',tags:["agor","svelte","conventions"],trust:"auto",updatedAt:"2026-03-17"}],i={human:"Human",agent:"Agent",auto:"Auto"};var s=Hg(),r=R(s),n=R(r),a=R(n),o=P(r,2);Me(o,5,()=>t,h=>h.id,(h,l)=>{var c=Fg(),d=R(c),v=R(d),u=R(v),g=P(v,2),_=R(g),f=P(d,2),A=R(f),x=P(f,2),S=R(x);Me(S,5,()=>p(l).tags,He,(m,C)=>{var E=Ng(),b=R(E);ee(()=>J(b,p(C))),z(m,E)});var w=P(S,2),y=R(w);ee(()=>{J(u,p(l).title),ce(g,1,`trust-badge trust-${p(l).trust??""}`,"svelte-1k7ge8m"),ue(g,"title",`Source: ${i[p(l).trust]??""}`),J(_,i[p(l).trust]),J(A,p(l).body),J(y,p(l).updatedAt)}),z(h,c)}),ee(()=>J(a,`${t.length??""} fragments`)),z(e,s)}var zg=G(' '),Ug=G(" "),$g=G(' '),qg=G(''),Gg=G('
          No markdown files open
          '),Kg=G('
          '),Jg=G('
          Tokens used
          Context %
          Model
          '),jg=G('
          '),Yg=G('
          No SSH connections configured
          '),Vg=G('
          '),Xg=G('
          ');function Zg(e,t){Ct(t,!0);let i=Gt(t,"provider",3,"claude"),s=Gt(t,"model",3,"claude-opus-4-5"),r=Gt(t,"contextPct",3,0),n=Gt(t,"burnRate",3,0),a=Gt(t,"blinkVisible",3,!0),o=V("model");const h=t.messages.slice();let l=V(Ne(h)),c=V(Ne(new Set(["model"])));const d=["model","docs","context","files","ssh","memory"];function v(j){W(o,j,!0),W(c,new Set([...p(c),j]),!0)}function u(j){const H={id:p(l).length+1,role:"user",content:j};W(l,[...p(l),H],!0),setTimeout(()=>{W(l,[...p(l),{id:p(l).length+1,role:"assistant",content:`(demo) Received: "${j}"`}],!0)},400)}var g=Xg(),_=R(g),f=R(_),A=R(f);let x;var S=P(f,2),w=R(S),y=P(S,2),m=R(y),C=P(y,2),E=R(C),b=P(C,2);{var D=j=>{var H=zg(),N=R(H);ee(()=>{ue(H,"title",`Profile: ${t.profile??""}`),J(N,t.profile)}),z(j,H)};se(b,j=>{t.profile&&j(D)})}var M=P(b,2);{var k=j=>{var H=Ug();let N;var K=R(H);ee(()=>{N=ce(H,1,"ctx-badge svelte-1aqfagj",null,N,{"ctx-warn":r()>=75,"ctx-danger":r()>=90}),ue(H,"title",`Context window ${r()??""}% used`),J(K,`${r()??""}%`)}),z(j,H)};se(M,j=>{r()>50&&j(k)})}var B=P(M,2);{var T=j=>{var H=$g(),N=R(H);ee(K=>J(N,`$${K??""}/hr`),[()=>n().toFixed(2)]),z(j,H)};se(B,j=>{n()>0&&j(T)})}var Q=P(_,2);Me(Q,21,()=>d,He,(j,H)=>{var N=qg();let K;N.__click=()=>v(p(H));var le=R(N);ee(de=>{K=ce(N,1,"tab-btn svelte-1aqfagj",null,K,{active:p(o)===p(H)}),ue(N,"aria-selected",p(o)===p(H)),ue(N,"aria-controls",`tabpanel-${t.id??""}-${p(H)??""}`),J(le,de)},[()=>p(H).charAt(0).toUpperCase()+p(H).slice(1)]),z(j,N)});var O=P(Q,2),L=R(O);let I;var F=R(L);Ru(F,{get messages(){return p(l)},get status(){return t.status},get costUsd(){return t.costUsd},get tokens(){return t.tokens},get model(){return s()},get provider(){return i()},get profile(){return t.profile},get contextPct(){return r()},get burnRate(){return n()},onSend:u});var U=P(F,2);Lg(U,{get projectId(){return t.id},get accent(){return t.accent}});var re=P(L,2);{var ge=j=>{var H=Gg();let N;ee(()=>{ue(H,"id",`tabpanel-${t.id??""}-docs`),N=$t(H,"",N,{display:p(o)==="docs"?"flex":"none"})}),z(j,H)};se(re,j=>{p(c).has("docs")&&j(ge)})}var he=P(re,2);{var ne=j=>{var H=Jg();let N;var K=R(H),le=R(K),de=R(le),ve=P(R(de),2),Ce=R(ve),Ie=P(de,2),Ae=P(R(Ie),2),be=R(Ae),ye=P(Ie,2),ae=P(R(ye),2),Ee=R(ae),Ke=P(le,2),Pe=R(Ke);let Rt,ht;var gt=P(Ke,2),We=P(R(gt),2);Me(We,17,()=>p(l).slice(0,5),He,(Re,Je)=>{var fe=Kg(),Te=R(fe),st=R(Te),Ue=P(Te,2),pe=R(Ue);ee(Fe=>{ce(Te,1,`ctx-turn-role ctx-role-${p(Je).role??""}`,"svelte-1aqfagj"),J(st,p(Je).role),J(pe,`${Fe??""}${p(Je).content.length>60?"…":""}`)},[()=>p(Je).content.slice(0,60)]),z(Re,fe)}),ee(Re=>{ue(H,"id",`tabpanel-${t.id??""}-context`),N=$t(H,"",N,{display:p(o)==="context"?"flex":"none"}),J(Ce,Re),J(be,`${r()??""}%`),J(Ee,s()),ue(Ke,"title",`${r()??""}% context used`),Rt=ce(Pe,1,"ctx-meter-bar svelte-1aqfagj",null,Rt,{"meter-warn":r()>=75,"meter-danger":r()>=90}),ht=$t(Pe,"",ht,{width:`${r()??""}%`})},[()=>t.tokens.toLocaleString()]),z(j,H)};se(he,j=>{p(c).has("context")&&j(ne)})}var we=P(he,2);{var _e=j=>{var H=jg();let N;var K=R(H);Og(K,{}),ee(()=>{ue(H,"id",`tabpanel-${t.id??""}-files`),N=$t(H,"",N,{display:p(o)==="files"?"flex":"none"})}),z(j,H)};se(we,j=>{p(c).has("files")&&j(_e)})}var X=P(we,2);{var ie=j=>{var H=Yg();let N;ee(()=>{ue(H,"id",`tabpanel-${t.id??""}-ssh`),N=$t(H,"",N,{display:p(o)==="ssh"?"flex":"none"})}),z(j,H)};se(X,j=>{p(c).has("ssh")&&j(ie)})}var oe=P(X,2);{var Z=j=>{var H=Vg();let N;var K=R(H);Wg(K),ee(()=>{ue(H,"id",`tabpanel-${t.id??""}-memory`),N=$t(H,"",N,{display:p(o)==="memory"?"flex":"none"})}),z(j,H)};se(oe,j=>{p(c).has("memory")&&j(Z)})}ee(()=>{$t(g,`--accent: ${t.accent??""}`),ue(g,"aria-label",`Project: ${t.name??""}`),ue(f,"aria-label",`Status: ${t.status??""}`),x=ce(A,1,`status-dot ${t.status??""}`,"svelte-1aqfagj",x,{"blink-off":t.status==="running"&&!a()}),ue(A,"aria-label",t.status),ue(S,"title",t.name),J(w,t.name),ue(y,"title",t.cwd),J(m,t.cwd),ue(C,"title",`Provider: ${i()??""}`),J(E,i()),ue(Q,"aria-label",`${t.name??""} tabs`),ue(L,"id",`tabpanel-${t.id??""}-model`),I=$t(L,"",I,{display:p(o)==="model"?"flex":"none"})}),z(e,g),bt()}Dt(["click"]);const pa=[{id:"mocha",label:"Catppuccin Mocha",group:"Catppuccin",isDark:!0},{id:"macchiato",label:"Catppuccin Macchiato",group:"Catppuccin",isDark:!0},{id:"frappe",label:"Catppuccin Frappé",group:"Catppuccin",isDark:!0},{id:"latte",label:"Catppuccin Latte",group:"Catppuccin",isDark:!1},{id:"vscode-dark",label:"VSCode Dark+",group:"Editor",isDark:!0},{id:"atom-one-dark",label:"Atom One Dark",group:"Editor",isDark:!0},{id:"monokai",label:"Monokai",group:"Editor",isDark:!0},{id:"dracula",label:"Dracula",group:"Editor",isDark:!0},{id:"nord",label:"Nord",group:"Editor",isDark:!0},{id:"solarized-dark",label:"Solarized Dark",group:"Editor",isDark:!0},{id:"github-dark",label:"GitHub Dark",group:"Editor",isDark:!0},{id:"tokyo-night",label:"Tokyo Night",group:"Deep Dark",isDark:!0},{id:"gruvbox-dark",label:"Gruvbox Dark",group:"Deep Dark",isDark:!0},{id:"ayu-dark",label:"Ayu Dark",group:"Deep Dark",isDark:!0},{id:"poimandres",label:"Poimandres",group:"Deep Dark",isDark:!0},{id:"vesper",label:"Vesper",group:"Deep Dark",isDark:!0},{id:"midnight",label:"Midnight",group:"Deep Dark",isDark:!0}],ep=[...new Set(pa.map(e=>e.group))],Pl={latte:{rosewater:"#dc8a78",flamingo:"#dd7878",pink:"#ea76cb",mauve:"#8839ef",red:"#d20f39",maroon:"#e64553",peach:"#fe640b",yellow:"#df8e1d",green:"#40a02b",teal:"#179299",sky:"#04a5e5",sapphire:"#209fb5",blue:"#1e66f5",lavender:"#7287fd",text:"#4c4f69",subtext1:"#5c5f77",subtext0:"#6c6f85",overlay2:"#7c7f93",overlay1:"#8c8fa1",overlay0:"#9ca0b0",surface2:"#acb0be",surface1:"#bcc0cc",surface0:"#ccd0da",base:"#eff1f5",mantle:"#e6e9ef",crust:"#dce0e8"},frappe:{rosewater:"#f2d5cf",flamingo:"#eebebe",pink:"#f4b8e4",mauve:"#ca9ee6",red:"#e78284",maroon:"#ea999c",peach:"#ef9f76",yellow:"#e5c890",green:"#a6d189",teal:"#81c8be",sky:"#99d1db",sapphire:"#85c1dc",blue:"#8caaee",lavender:"#babbf1",text:"#c6d0f5",subtext1:"#b5bfe2",subtext0:"#a5adce",overlay2:"#949cbb",overlay1:"#838ba7",overlay0:"#737994",surface2:"#626880",surface1:"#51576d",surface0:"#414559",base:"#303446",mantle:"#292c3c",crust:"#232634"},macchiato:{rosewater:"#f4dbd6",flamingo:"#f0c6c6",pink:"#f5bde6",mauve:"#c6a0f6",red:"#ed8796",maroon:"#ee99a0",peach:"#f5a97f",yellow:"#eed49f",green:"#a6da95",teal:"#8bd5ca",sky:"#91d7e3",sapphire:"#7dc4e4",blue:"#8aadf4",lavender:"#b7bdf8",text:"#cad3f5",subtext1:"#b8c0e0",subtext0:"#a5adcb",overlay2:"#939ab7",overlay1:"#8087a2",overlay0:"#6e738d",surface2:"#5b6078",surface1:"#494d64",surface0:"#363a4f",base:"#24273a",mantle:"#1e2030",crust:"#181926"},mocha:{rosewater:"#f5e0dc",flamingo:"#f2cdcd",pink:"#f5c2e7",mauve:"#cba6f7",red:"#f38ba8",maroon:"#eba0ac",peach:"#fab387",yellow:"#f9e2af",green:"#a6e3a1",teal:"#94e2d5",sky:"#89dceb",sapphire:"#74c7ec",blue:"#89b4fa",lavender:"#b4befe",text:"#cdd6f4",subtext1:"#bac2de",subtext0:"#a6adc8",overlay2:"#9399b2",overlay1:"#7f849c",overlay0:"#6c7086",surface2:"#585b70",surface1:"#45475a",surface0:"#313244",base:"#1e1e2e",mantle:"#181825",crust:"#11111b"},"vscode-dark":{rosewater:"#d4a0a0",flamingo:"#cf8686",pink:"#c586c0",mauve:"#c586c0",red:"#f44747",maroon:"#d16969",peach:"#ce9178",yellow:"#dcdcaa",green:"#6a9955",teal:"#4ec9b0",sky:"#9cdcfe",sapphire:"#4fc1ff",blue:"#569cd6",lavender:"#b4b4f7",text:"#d4d4d4",subtext1:"#cccccc",subtext0:"#b0b0b0",overlay2:"#858585",overlay1:"#6e6e6e",overlay0:"#5a5a5a",surface2:"#3e3e42",surface1:"#333338",surface0:"#2d2d30",base:"#1e1e1e",mantle:"#181818",crust:"#111111"},"atom-one-dark":{rosewater:"#e5c07b",flamingo:"#e06c75",pink:"#c678dd",mauve:"#c678dd",red:"#e06c75",maroon:"#be5046",peach:"#d19a66",yellow:"#e5c07b",green:"#98c379",teal:"#56b6c2",sky:"#56b6c2",sapphire:"#61afef",blue:"#61afef",lavender:"#c8ccd4",text:"#abb2bf",subtext1:"#9da5b4",subtext0:"#8b92a0",overlay2:"#7f848e",overlay1:"#636d83",overlay0:"#545862",surface2:"#474b56",surface1:"#3b3f4c",surface0:"#333842",base:"#282c34",mantle:"#21252b",crust:"#181a1f"},monokai:{rosewater:"#f8f8f2",flamingo:"#f92672",pink:"#f92672",mauve:"#ae81ff",red:"#f92672",maroon:"#f92672",peach:"#fd971f",yellow:"#e6db74",green:"#a6e22e",teal:"#66d9ef",sky:"#66d9ef",sapphire:"#66d9ef",blue:"#66d9ef",lavender:"#ae81ff",text:"#f8f8f2",subtext1:"#e8e8e2",subtext0:"#cfcfc2",overlay2:"#a8a8a2",overlay1:"#90908a",overlay0:"#75715e",surface2:"#595950",surface1:"#49483e",surface0:"#3e3d32",base:"#272822",mantle:"#1e1f1c",crust:"#141411"},dracula:{rosewater:"#f1c4e0",flamingo:"#ff79c6",pink:"#ff79c6",mauve:"#bd93f9",red:"#ff5555",maroon:"#ff6e6e",peach:"#ffb86c",yellow:"#f1fa8c",green:"#50fa7b",teal:"#8be9fd",sky:"#8be9fd",sapphire:"#8be9fd",blue:"#6272a4",lavender:"#bd93f9",text:"#f8f8f2",subtext1:"#e8e8e2",subtext0:"#c0c0ba",overlay2:"#a0a0a0",overlay1:"#7f7f7f",overlay0:"#6272a4",surface2:"#555969",surface1:"#44475a",surface0:"#383a4a",base:"#282a36",mantle:"#21222c",crust:"#191a21"},nord:{rosewater:"#d08770",flamingo:"#bf616a",pink:"#b48ead",mauve:"#b48ead",red:"#bf616a",maroon:"#bf616a",peach:"#d08770",yellow:"#ebcb8b",green:"#a3be8c",teal:"#8fbcbb",sky:"#88c0d0",sapphire:"#81a1c1",blue:"#5e81ac",lavender:"#b48ead",text:"#eceff4",subtext1:"#e5e9f0",subtext0:"#d8dee9",overlay2:"#a5adba",overlay1:"#8891a0",overlay0:"#6c7588",surface2:"#4c566a",surface1:"#434c5e",surface0:"#3b4252",base:"#2e3440",mantle:"#272c36",crust:"#20242c"},"solarized-dark":{rosewater:"#d33682",flamingo:"#dc322f",pink:"#d33682",mauve:"#6c71c4",red:"#dc322f",maroon:"#cb4b16",peach:"#cb4b16",yellow:"#b58900",green:"#859900",teal:"#2aa198",sky:"#2aa198",sapphire:"#268bd2",blue:"#268bd2",lavender:"#6c71c4",text:"#839496",subtext1:"#93a1a1",subtext0:"#778a8b",overlay2:"#657b83",overlay1:"#586e75",overlay0:"#4a6068",surface2:"#1c4753",surface1:"#143845",surface0:"#073642",base:"#002b36",mantle:"#00222b",crust:"#001a21"},"github-dark":{rosewater:"#ffa198",flamingo:"#ff7b72",pink:"#f778ba",mauve:"#d2a8ff",red:"#ff7b72",maroon:"#ffa198",peach:"#ffa657",yellow:"#e3b341",green:"#7ee787",teal:"#56d4dd",sky:"#79c0ff",sapphire:"#79c0ff",blue:"#58a6ff",lavender:"#d2a8ff",text:"#c9d1d9",subtext1:"#b1bac4",subtext0:"#8b949e",overlay2:"#6e7681",overlay1:"#565c64",overlay0:"#484f58",surface2:"#373e47",surface1:"#30363d",surface0:"#21262d",base:"#0d1117",mantle:"#090c10",crust:"#050608"},"tokyo-night":{rosewater:"#f7768e",flamingo:"#ff9e64",pink:"#bb9af7",mauve:"#bb9af7",red:"#f7768e",maroon:"#db4b4b",peach:"#ff9e64",yellow:"#e0af68",green:"#9ece6a",teal:"#73daca",sky:"#7dcfff",sapphire:"#7aa2f7",blue:"#7aa2f7",lavender:"#bb9af7",text:"#c0caf5",subtext1:"#a9b1d6",subtext0:"#9aa5ce",overlay2:"#787c99",overlay1:"#565f89",overlay0:"#414868",surface2:"#3b4261",surface1:"#292e42",surface0:"#232433",base:"#1a1b26",mantle:"#16161e",crust:"#101014"},"gruvbox-dark":{rosewater:"#d65d0e",flamingo:"#cc241d",pink:"#d3869b",mauve:"#b16286",red:"#fb4934",maroon:"#cc241d",peach:"#fe8019",yellow:"#fabd2f",green:"#b8bb26",teal:"#8ec07c",sky:"#83a598",sapphire:"#83a598",blue:"#458588",lavender:"#d3869b",text:"#ebdbb2",subtext1:"#d5c4a1",subtext0:"#bdae93",overlay2:"#a89984",overlay1:"#928374",overlay0:"#7c6f64",surface2:"#504945",surface1:"#3c3836",surface0:"#32302f",base:"#1d2021",mantle:"#191b1c",crust:"#141617"},"ayu-dark":{rosewater:"#f07178",flamingo:"#f07178",pink:"#d2a6ff",mauve:"#d2a6ff",red:"#f07178",maroon:"#f07178",peach:"#ff8f40",yellow:"#ffb454",green:"#aad94c",teal:"#95e6cb",sky:"#73b8ff",sapphire:"#59c2ff",blue:"#59c2ff",lavender:"#d2a6ff",text:"#bfbdb6",subtext1:"#acaaa4",subtext0:"#9b9892",overlay2:"#73726e",overlay1:"#5c5b57",overlay0:"#464542",surface2:"#383838",surface1:"#2c2c2c",surface0:"#242424",base:"#0b0e14",mantle:"#080a0f",crust:"#05070a"},poimandres:{rosewater:"#d0679d",flamingo:"#d0679d",pink:"#fcc5e9",mauve:"#a6accd",red:"#d0679d",maroon:"#d0679d",peach:"#e4f0fb",yellow:"#fffac2",green:"#5de4c7",teal:"#5de4c7",sky:"#89ddff",sapphire:"#add7ff",blue:"#91b4d5",lavender:"#a6accd",text:"#e4f0fb",subtext1:"#d0d6e0",subtext0:"#a6accd",overlay2:"#767c9d",overlay1:"#506477",overlay0:"#3e4f5e",surface2:"#303340",surface1:"#252b37",surface0:"#1e2433",base:"#1b1e28",mantle:"#171922",crust:"#12141c"},vesper:{rosewater:"#de6e6e",flamingo:"#de6e6e",pink:"#c79bf0",mauve:"#c79bf0",red:"#de6e6e",maroon:"#de6e6e",peach:"#ffcfa8",yellow:"#ffc799",green:"#7cb37c",teal:"#6bccb0",sky:"#8abeb7",sapphire:"#6eb4bf",blue:"#6eb4bf",lavender:"#c79bf0",text:"#b8b5ad",subtext1:"#a09d95",subtext0:"#878480",overlay2:"#6e6b66",overlay1:"#55524d",overlay0:"#3d3a36",surface2:"#302e2a",surface1:"#252320",surface0:"#1c1a17",base:"#101010",mantle:"#0a0a0a",crust:"#050505"},midnight:{rosewater:"#e8a0bf",flamingo:"#ea6f91",pink:"#e8a0bf",mauve:"#c4a7e7",red:"#eb6f92",maroon:"#ea6f91",peach:"#f6c177",yellow:"#ebbcba",green:"#9ccfd8",teal:"#9ccfd8",sky:"#a4d4e4",sapphire:"#8bbee8",blue:"#7ba4cc",lavender:"#c4a7e7",text:"#c4c4c4",subtext1:"#a8a8a8",subtext0:"#8c8c8c",overlay2:"#6e6e6e",overlay1:"#525252",overlay0:"#383838",surface2:"#262626",surface1:"#1a1a1a",surface0:"#111111",base:"#000000",mantle:"#000000",crust:"#000000"}},Ql=pa;function tp(e){return Pl[e]??Pl.mocha}const ip=[["--ctp-rosewater","rosewater"],["--ctp-flamingo","flamingo"],["--ctp-pink","pink"],["--ctp-mauve","mauve"],["--ctp-red","red"],["--ctp-maroon","maroon"],["--ctp-peach","peach"],["--ctp-yellow","yellow"],["--ctp-green","green"],["--ctp-teal","teal"],["--ctp-sky","sky"],["--ctp-sapphire","sapphire"],["--ctp-blue","blue"],["--ctp-lavender","lavender"],["--ctp-text","text"],["--ctp-subtext1","subtext1"],["--ctp-subtext0","subtext0"],["--ctp-overlay2","overlay2"],["--ctp-overlay1","overlay1"],["--ctp-overlay0","overlay0"],["--ctp-surface2","surface2"],["--ctp-surface1","surface1"],["--ctp-surface0","surface0"],["--ctp-base","base"],["--ctp-mantle","mantle"],["--ctp-crust","crust"]];function sp(e){const t=tp(e),i=document.documentElement.style;for(const[s,r]of ip)i.setProperty(s,t[r])}const Ol="theme",jn="mocha";function rp(e){return pa.some(t=>t.id===e)}function np(){let e=V(jn),t=null;function i(n){sp(n),W(e,n,!0)}function s(n){i(n),t&&t.request["settings.set"]({key:Ol,value:n}).catch(a=>{console.error("[theme-store] Failed to persist theme:",a)})}async function r(n){t=n;try{const o=(await t.request["settings.get"]({key:Ol})).value;o&&rp(o)?i(o):i(jn)}catch(a){console.error("[theme-store] Failed to load theme from settings:",a),i(jn)}}return{get currentTheme(){return p(e)},setTheme:s,initTheme:r}}const Vr=np(),jt={uiFontFamily:"",uiFontSize:14,termFontFamily:"",termFontSize:13};function op(){let e=V(Ne(jt.uiFontFamily)),t=V(Ne(jt.uiFontSize)),i=V(Ne(jt.termFontFamily)),s=V(Ne(jt.termFontSize)),r=null;const n=new Set;function a(v,u){const g=document.documentElement.style;g.setProperty("--ui-font-family",v||"system-ui, -apple-system, sans-serif"),g.setProperty("--ui-font-size",`${u}px`),W(e,v,!0),W(t,u,!0)}function o(v,u){const g=document.documentElement.style;g.setProperty("--term-font-family",v||"JetBrains Mono, Consolas, monospace"),g.setProperty("--term-font-size",`${u}px`),W(i,v,!0),W(s,u,!0);for(const _ of n)try{_(v,u)}catch(f){console.error("[font-store] termFont callback error:",f)}}function h(v,u){a(v,u),r&&(r.request["settings.set"]({key:"ui_font_family",value:v}).catch(console.error),r.request["settings.set"]({key:"ui_font_size",value:String(u)}).catch(console.error))}function l(v,u){o(v,u),r&&(r.request["settings.set"]({key:"term_font_family",value:v}).catch(console.error),r.request["settings.set"]({key:"term_font_size",value:String(u)}).catch(console.error))}function c(v){return n.add(v),()=>n.delete(v)}async function d(v){r=v;try{const{settings:u}=await r.request["settings.getAll"]({}),g=u.ui_font_family??jt.uiFontFamily,_=parseInt(u.ui_font_size??"",10),f=isNaN(_)?jt.uiFontSize:_,A=u.term_font_family??jt.termFontFamily,x=parseInt(u.term_font_size??"",10),S=isNaN(x)?jt.termFontSize:x;a(g,f),o(A,S)}catch(u){console.error("[font-store] Failed to load font settings:",u),a(jt.uiFontFamily,jt.uiFontSize),o(jt.termFontFamily,jt.termFontSize)}}return{get uiFontFamily(){return p(e)},get uiFontSize(){return p(t)},get termFontFamily(){return p(i)},get termFontSize(){return p(s)},setUIFont:h,setTermFont:l,onTermFontChange:c,initFonts:d}}const Wt=op();var ap=G('
        • '),lp=G(' ',1),hp=G('
            '),cp=G('
          • '),dp=G('
              '),up=G('
            • '),_p=G('
                '),fp=G(""),vp=G('

                Theme

                UI Font

                Terminal Font

                Terminal Cursor

                Scrollback

                lines (100–100k)
                ');function gp(e,t){Ct(t,!0);const i=[{value:"",label:"System Default"},{value:"Inter",label:"Inter"},{value:"IBM Plex Sans",label:"IBM Plex Sans"},{value:"Noto Sans",label:"Noto Sans"},{value:"Roboto",label:"Roboto"},{value:"Ubuntu",label:"Ubuntu"}],s=[{value:"",label:"Default (JetBrains Mono)"},{value:"JetBrains Mono",label:"JetBrains Mono"},{value:"Fira Code",label:"Fira Code"},{value:"Cascadia Code",label:"Cascadia Code"},{value:"Source Code Pro",label:"Source Code Pro"},{value:"IBM Plex Mono",label:"IBM Plex Mono"},{value:"monospace",label:"monospace"}];let r=V(Ne(Vr.currentTheme)),n=V(Ne(Wt.uiFontFamily)),a=V(Ne(Wt.uiFontSize)),o=V(Ne(Wt.termFontFamily)),h=V(Ne(Wt.termFontSize)),l=V("block"),c=V(!0),d=V(1e3);ri(()=>{W(r,Vr.currentTheme,!0)}),ri(()=>{W(n,Wt.uiFontFamily,!0)}),ri(()=>{W(a,Wt.uiFontSize,!0)}),ri(()=>{W(o,Wt.termFontFamily,!0)}),ri(()=>{W(h,Wt.termFontSize,!0)});let v=V(!1),u=V(!1),g=V(!1),_=ot(()=>{var fe;return((fe=Ql.find(Te=>Te.id===p(r)))==null?void 0:fe.label)??"Catppuccin Mocha"}),f=ot(()=>{var fe;return((fe=i.find(Te=>Te.value===p(n)))==null?void 0:fe.label)??"System Default"}),A=ot(()=>{var fe;return((fe=s.find(Te=>Te.value===p(o)))==null?void 0:fe.label)??"Default (JetBrains Mono)"});function x(fe){W(r,fe,!0),W(v,!1),Vr.setTheme(fe)}function S(fe){W(n,fe,!0),W(u,!1),Wt.setUIFont(fe,p(a))}function w(fe){W(o,fe,!0),W(g,!1),Wt.setTermFont(fe,p(h))}function y(fe){W(a,Math.max(8,Math.min(24,p(a)+fe)),!0),Wt.setUIFont(p(n),p(a))}function m(fe){W(h,Math.max(8,Math.min(24,p(h)+fe)),!0),Wt.setTermFont(p(o),p(h))}function C(){W(v,!1),W(u,!1),W(g,!1)}function E(fe){fe.target.closest(".dd-wrap")||C()}function b(fe){fe.key==="Escape"&&C()}var D=vp();D.__click=E,D.__keydown=b;var M=P(R(D),2),k=R(M),B=R(k);B.__click=()=>{W(v,!p(v)),W(u,!1),W(g,!1)};var T=R(B),Q=P(T);let O;var L=P(B,2);{var I=fe=>{var Te=hp();Me(Te,21,()=>ep,He,(st,Ue)=>{var pe=lp(),Fe=at(pe),ai=R(Fe),li=P(Fe,2);Me(li,17,()=>Ql.filter(Ss=>Ss.group===p(Ue)),He,(Ss,Ni)=>{var Fi=ap();let ma;Fi.__click=()=>x(p(Ni).id),Fi.__keydown=Aa=>(Aa.key==="Enter"||Aa.key===" ")&&x(p(Ni).id);var kc=R(Fi);ee(()=>{ma=ce(Fi,1,"dd-item svelte-1901l6h",null,ma,{sel:p(r)===p(Ni).id}),ue(Fi,"aria-selected",p(r)===p(Ni).id),J(kc,p(Ni).label)}),z(Ss,Fi)}),ee(()=>J(ai,p(Ue))),z(st,pe)}),z(fe,Te)};se(L,fe=>{p(v)&&fe(I)})}var F=P(M,4),U=R(F),re=R(U);re.__click=()=>{W(u,!p(u)),W(v,!1),W(g,!1)};var ge=R(re),he=P(ge);let ne;var we=P(re,2);{var _e=fe=>{var Te=dp();Me(Te,21,()=>i,He,(st,Ue)=>{var pe=cp();let Fe;pe.__click=()=>S(p(Ue).value),pe.__keydown=li=>(li.key==="Enter"||li.key===" ")&&S(p(Ue).value);var ai=R(pe);ee(()=>{Fe=ce(pe,1,"dd-item svelte-1901l6h",null,Fe,{sel:p(n)===p(Ue).value}),ue(pe,"aria-selected",p(n)===p(Ue).value),J(ai,p(Ue).label)}),z(st,pe)}),z(fe,Te)};se(we,fe=>{p(u)&&fe(_e)})}var X=P(U,2),ie=R(X);ie.__click=()=>y(-1);var oe=P(ie,2),Z=R(oe),j=P(oe,2);j.__click=()=>y(1);var H=P(F,4),N=R(H),K=R(N);K.__click=()=>{W(g,!p(g)),W(v,!1),W(u,!1)};var le=R(K),de=P(le);let ve;var Ce=P(K,2);{var Ie=fe=>{var Te=_p();Me(Te,21,()=>s,He,(st,Ue)=>{var pe=up();let Fe;pe.__click=()=>w(p(Ue).value),pe.__keydown=li=>(li.key==="Enter"||li.key===" ")&&w(p(Ue).value);var ai=R(pe);ee(()=>{Fe=ce(pe,1,"dd-item svelte-1901l6h",null,Fe,{sel:p(o)===p(Ue).value}),ue(pe,"aria-selected",p(o)===p(Ue).value),J(ai,p(Ue).label)}),z(st,pe)}),z(fe,Te)};se(Ce,fe=>{p(g)&&fe(Ie)})}var Ae=P(N,2),be=R(Ae);be.__click=()=>m(-1);var ye=P(be,2),ae=R(ye),Ee=P(ye,2);Ee.__click=()=>m(1);var Ke=P(H,4),Pe=R(Ke);Me(Pe,20,()=>["block","line","underline"],He,(fe,Te)=>{var st=fp();st.__click=()=>W(l,Te,!0);let Ue;var pe=R(st);ee(Fe=>{Ue=ce(st,1,"svelte-1901l6h",null,Ue,{active:p(l)===Te}),J(pe,Fe)},[()=>Te[0].toUpperCase()+Te.slice(1)]),z(fe,st)});var Rt=P(Pe,2),ht=P(R(Rt),2);let gt;ht.__click=()=>W(c,!p(c));var We=R(ht),Re=P(Ke,4),Je=R(Re);ee(()=>{J(T,`${p(_)??""} `),O=ce(Q,0,"chev svelte-1901l6h",null,O,{open:p(v)}),J(ge,`${p(f)??""} `),ne=ce(he,0,"chev svelte-1901l6h",null,ne,{open:p(u)}),J(Z,`${p(a)??""}px`),J(le,`${p(A)??""} `),ve=ce(de,0,"chev svelte-1901l6h",null,ve,{open:p(g)}),J(ae,`${p(h)??""}px`),gt=ce(ht,1,"toggle svelte-1901l6h",null,gt,{on:p(c)}),J(We,p(c)?"On":"Off")}),ni(Je,()=>p(d),fe=>W(d,fe)),z(e,D),bt()}Dt(["click","keydown"]);var pp=G('Images'),mp=G('Web'),Ap=G('Upload'),wp=G('
                '),Cp=G('
                '),bp=G('

                Defaults

                Permission mode

                System prompt template

                Providers

                ');function Sp(e,t){Ct(t,!0);const i=[{id:"claude",label:"Claude",desc:"Anthropic — claude-opus/sonnet/haiku"},{id:"codex",label:"Codex",desc:"OpenAI — gpt-5.4"},{id:"ollama",label:"Ollama",desc:"Local — qwen3, llama3, etc."}];let s=V("/bin/bash"),r=V("~"),n=V("bypassPermissions"),a=V(""),o=V(Ne({claude:{enabled:!0,model:"claude-opus-4-5"},codex:{enabled:!1,model:"gpt-5.4"},ollama:{enabled:!1,model:"qwen3:8b"}})),h=V(null);function l(b){p(o)[b]={...p(o)[b],enabled:!p(o)[b].enabled},W(o,{...p(o)},!0)}function c(b,D){p(o)[b]={...p(o)[b],model:D},W(o,{...p(o)},!0)}var d=bp(),v=P(R(d),2),u=P(R(v),2),g=P(v,2),_=P(R(g),2),f=P(g,4),A=R(f);A.__click=()=>W(n,"bypassPermissions");let x;var S=P(A,2);S.__click=()=>W(n,"default");let w;var y=P(S,2);y.__click=()=>W(n,"plan");let m;var C=P(f,4),E=P(C,4);Me(E,21,()=>i,He,(b,D)=>{const M=ot(()=>p(o)[p(D).id]);var k=Cp();let B;var T=R(k);T.__click=()=>W(h,p(h)===p(D).id?null:p(D).id,!0);var Q=R(T),O=R(Q),L=P(Q,2),I=R(L),F=P(L,2),U=R(F),re=P(T,2);{var ge=he=>{var ne=wp(),we=R(ne),_e=P(R(we),2);let X;_e.__click=()=>l(p(D).id);var ie=P(we,2),oe=R(ie),Z=P(oe,2);Z.__change=Ce=>c(p(D).id,Ce.target.value);var j=P(ie,2),H=R(j);{var N=Ce=>{var Ie=pp();z(Ce,Ie)};se(H,Ce=>{Mi[p(D).id].images&&Ce(N)})}var K=P(H,2);{var le=Ce=>{var Ie=mp();z(Ce,Ie)};se(K,Ce=>{Mi[p(D).id].web&&Ce(le)})}var de=P(K,2);{var ve=Ce=>{var Ie=Ap();z(Ce,Ie)};se(de,Ce=>{Mi[p(D).id].upload&&Ce(ve)})}ee(()=>{X=ce(_e,1,"toggle svelte-1m5vtsu",null,X,{on:p(M).enabled}),ue(_e,"aria-checked",p(M).enabled),ue(_e,"aria-label",`Toggle ${p(D).label??""} provider`),ue(oe,"for",`model-${p(D).id??""}`),ue(Z,"id",`model-${p(D).id??""}`),lr(Z,p(M).model),ue(Z,"placeholder",Mi[p(D).id].defaultModel)}),z(he,ne)};se(re,he=>{p(h)===p(D).id&&he(ge)})}ee(()=>{B=ce(k,1,"prov-panel svelte-1m5vtsu",null,B,{disabled:!p(M).enabled}),J(O,p(D).label),J(I,p(D).desc),J(U,p(h)===p(D).id?"▴":"▾")}),z(b,k)}),ee(()=>{x=ce(A,1,"svelte-1m5vtsu",null,x,{active:p(n)==="bypassPermissions"}),w=ce(S,1,"svelte-1m5vtsu",null,w,{active:p(n)==="default"}),m=ce(y,1,"svelte-1m5vtsu",null,m,{active:p(n)==="plan"})}),ni(u,()=>p(s),b=>W(s,b)),ni(_,()=>p(r),b=>W(r,b)),ni(C,()=>p(a),b=>W(a,b)),z(e,d),bt()}Dt(["click","change"]);var yp=G('

                No secrets stored.

                '),xp=G('
                '),kp=G('
                '),Ep=G('
              • '),Bp=G('
              • All known keys stored
              • '),Ip=G('
                '),Dp=G('
                '),Mp=G('

                Keyring Status

                Stored Secrets

                Branch Policies

                ');function Lp(e,t){Ct(t,!0);const i={ANTHROPIC_API_KEY:"Anthropic API Key",OPENAI_API_KEY:"OpenAI API Key",GITHUB_TOKEN:"GitHub Token",OLLAMA_API_KEY:"Ollama API Key"};let s=!0,r=V(Ne(["ANTHROPIC_API_KEY"])),n=V(null),a=V(""),o=V(""),h=V(!1),l=V(!1),c=V(Ne([{pattern:"main",action:"block"},{pattern:"prod*",action:"warn"}])),d=V(""),v=V("warn"),u=ot(()=>Object.keys(i).filter(Z=>!p(r).includes(Z))),g=ot(()=>p(a)?i[p(a)]??p(a):"Select key...");function _(){!p(a)||!p(o)||(W(l,!0),setTimeout(()=>{W(r,[...p(r),p(a)],!0),W(a,""),W(o,""),W(l,!1)},400))}function f(Z){W(r,p(r).filter(j=>j!==Z),!0),p(n)===Z&&W(n,null)}function A(){p(d).trim()&&(W(c,[...p(c),{pattern:p(d).trim(),action:p(v)}],!0),W(d,""),W(v,"warn"))}function x(Z){W(c,p(c).filter((j,H)=>H!==Z),!0)}function S(Z){Z.target.closest(".dd-wrap")||W(h,!1)}var w=Mp();w.__click=S,w.__keydown=Z=>Z.key==="Escape"&&W(h,!1);var y=P(R(w),2);ce(y,1,"keyring-status svelte-rv3lwt",null,{},{ok:s,unavail:!s});var m=P(R(y),2);m.textContent="System keyring available";var C=P(y,4);{var E=Z=>{var j=yp();z(Z,j)},b=Z=>{var j=kp();Me(j,21,()=>p(r),He,(H,N)=>{var K=xp(),le=R(K),de=R(le),ve=P(le,2),Ce=R(ve),Ie=P(ve,2);Ie.__click=()=>W(n,p(n)===p(N)?null:p(N),!0);var Ae=R(Ie),be=P(Ie,2);be.__click=()=>f(p(N)),ee(()=>{J(de,i[p(N)]??p(N)),J(Ce,p(n)===p(N)?"••••••• (revealed)":"•••••••"),J(Ae,p(n)===p(N)?"🙈":"👁")}),z(H,K)}),z(Z,j)};se(C,Z=>{p(r).length===0?Z(E):Z(b,!1)})}var D=P(C,2),M=R(D),k=R(M);k.__click=()=>W(h,!p(h));var B=R(k),T=P(B);let Q;var O=P(k,2);{var L=Z=>{var j=Ip(),H=R(j);Me(H,17,()=>p(u),He,(le,de)=>{var ve=Ep();ve.__click=()=>{W(a,p(de),!0),W(h,!1)},ve.__keydown=Ie=>(Ie.key==="Enter"||Ie.key===" ")&&(W(a,p(de),!0),W(h,!1));var Ce=R(ve);ee(()=>{ue(ve,"aria-selected",p(a)===p(de)),J(Ce,i[p(de)])}),z(le,ve)});var N=P(H,2);{var K=le=>{var de=Bp();z(le,de)};se(N,le=>{p(u).length===0&&le(K)})}z(Z,j)};se(O,Z=>{p(h)&&Z(L)})}var I=P(M,2),F=P(I,2);F.__click=_;var U=R(F),re=P(D,4);Me(re,21,()=>p(c),He,(Z,j,H)=>{var N=Dp(),K=R(N),le=R(K),de=P(K,2);let ve;var Ce=R(de),Ie=P(de,2);Ie.__click=()=>x(H),ee(()=>{J(le,p(j).pattern),ve=ce(de,1,"pol-action svelte-rv3lwt",null,ve,{block:p(j).action==="block",warn:p(j).action==="warn"}),J(Ce,p(j).action)}),z(Z,N)});var ge=P(re,2),he=R(ge),ne=P(he,2),we=R(ne);we.__click=()=>W(v,"warn");let _e;var X=P(we,2);X.__click=()=>W(v,"block");let ie;var oe=P(ne,2);oe.__click=A,ee(Z=>{J(B,`${p(g)??""} `),Q=ce(T,0,"chev svelte-rv3lwt",null,Q,{open:p(h)}),F.disabled=!p(a)||!p(o)||p(l),J(U,p(l)?"…":"Save"),_e=ce(we,1,"svelte-rv3lwt",null,_e,{active:p(v)==="warn"}),ie=ce(X,1,"svelte-rv3lwt",null,ie,{active:p(v)==="block"}),oe.disabled=Z},[()=>!p(d).trim()]),ni(I,()=>p(o),Z=>W(o,Z)),ni(he,()=>p(d),Z=>W(d,Z)),z(e,w),bt()}Dt(["click","keydown"]);var Rp=G(""),Tp=G(""),Pp=G(""),Qp=G('

                Provider

                Model

                Options

                Stall threshold

                Anchor budget

                Custom context

                ',1),Op=G('

                Project

                ');function Np(e,t){Ct(t,!0);const i=["small","medium","large","full"],s=Object.keys(Mi);let r=V(Ne([{id:"p1",name:"agent-orchestrator",provider:"claude",model:"claude-opus-4-5",useWorktrees:!1,useSandbox:!1,stallThreshold:15,anchorScale:"medium",customContext:""},{id:"p2",name:"quanta-discord-bot",provider:"claude",model:"claude-sonnet-4-5",useWorktrees:!1,useSandbox:!1,stallThreshold:15,anchorScale:"medium",customContext:""}])),n=V("p1"),a=ot(()=>p(r).find(v=>v.id===p(n)));function o(v){W(r,p(r).map(u=>u.id===p(n)?{...u,...v}:u),!0)}var h=Op(),l=P(R(h),2);Me(l,21,()=>p(r),He,(v,u)=>{var g=Rp();let _;g.__click=()=>W(n,p(u).id,!0);var f=R(g);ee(()=>{_=ce(g,1,"proj-tab svelte-15znwuq",null,_,{active:p(n)===p(u).id}),J(f,p(u).name)}),z(v,g)});var c=P(l,2);{var d=v=>{var u=Qp(),g=P(at(u),2);Me(g,21,()=>s,He,(B,T)=>{var Q=Tp();Q.__click=()=>o({provider:p(T)});let O;var L=R(Q);ee(()=>{O=ce(Q,1,"svelte-15znwuq",null,O,{active:p(a).provider===p(T)}),J(L,Mi[p(T)].label)}),z(B,Q)});var _=P(g,4);_.__change=B=>o({model:B.target.value});var f=P(_,4),A=R(f),x=P(R(A),2);let S;x.__click=()=>o({useWorktrees:!p(a).useWorktrees});var w=P(A,2),y=P(R(w),2);let m;y.__click=()=>o({useSandbox:!p(a).useSandbox});var C=P(f,4),E=R(C);E.__input=B=>o({stallThreshold:parseInt(B.target.value,10)});var b=P(E,2),D=R(b),M=P(C,4);Me(M,21,()=>i,He,(B,T)=>{var Q=Pp();Q.__click=()=>o({anchorScale:p(T)});let O;var L=R(Q);ee(I=>{O=ce(Q,1,"svelte-15znwuq",null,O,{active:p(a).anchorScale===p(T)}),J(L,I)},[()=>p(T)[0].toUpperCase()+p(T).slice(1)]),z(B,Q)});var k=P(M,4);k.__change=B=>o({customContext:B.target.value}),ee(()=>{lr(_,p(a).model),ue(_,"placeholder",Mi[p(a).provider].defaultModel),S=ce(x,1,"toggle svelte-15znwuq",null,S,{on:p(a).useWorktrees}),ue(x,"aria-checked",p(a).useWorktrees),m=ce(y,1,"toggle svelte-15znwuq",null,m,{on:p(a).useSandbox}),ue(y,"aria-checked",p(a).useSandbox),lr(E,p(a).stallThreshold),J(D,`${p(a).stallThreshold??""} min`),lr(k,p(a).customContext)}),z(v,u)};se(c,v=>{p(a)&&v(d)})}z(e,h),bt()}Dt(["click","change","input"]);var Fp=G(""),Hp=G('
                '),Wp=G(""),zp=G(''),Up=G('

                Wake Strategy

                Session Anchors

                Anchor budget scale

                Health Monitoring

                Notifications

                ');function $p(e,t){Ct(t,!0);const i={persistent:"Persistent","on-demand":"On-demand",smart:"Smart"},s={persistent:"Resume prompt whenever manager wakes","on-demand":"Fresh session on each wake",smart:"Threshold-gated on-demand"},r=["complete","error","crash","stall"],n=["small","medium","large","full"];let a=V("persistent"),o=V(50),h=V(!0),l=V("medium"),c=V(15),d=V(!0),v=V(Ne(new Set(["complete","error","crash"])));function u(O){const L=new Set(p(v));L.has(O)?L.delete(O):L.add(O),W(v,L,!0)}var g=Up(),_=P(R(g),2);Me(_,21,()=>Object.keys(i),He,(O,L)=>{var I=Fp();I.__click=()=>W(a,p(L),!0);let F;var U=R(I);ee(()=>{F=ce(I,1,"svelte-r8m6y",null,F,{active:p(a)===p(L)}),J(U,i[p(L)])}),z(O,I)});var f=P(_,2),A=R(f),x=P(f,2);{var S=O=>{var L=Hp(),I=P(R(L),2),F=P(I,2),U=R(F);ee(()=>J(U,`${p(o)??""}%`)),ni(I,()=>p(o),re=>W(o,re)),z(O,L)};se(x,O=>{p(a)==="smart"&&O(S)})}var w=P(x,4),y=P(R(w),2);let m;y.__click=()=>W(h,!p(h));var C=P(w,4);Me(C,21,()=>n,He,(O,L)=>{var I=Wp();I.__click=()=>W(l,p(L),!0);let F;var U=R(I);ee(re=>{F=ce(I,1,"svelte-r8m6y",null,F,{active:p(l)===p(L)}),J(U,re)},[()=>p(L)[0].toUpperCase()+p(L).slice(1)]),z(O,I)});var E=P(C,4),b=P(R(E),2),D=P(b,2),M=R(D),k=P(E,4),B=P(R(k),2);let T;B.__click=()=>W(d,!p(d));var Q=P(k,2);Me(Q,21,()=>r,He,(O,L)=>{var I=zp();let F;var U=R(I);U.__change=()=>u(p(L));var re=P(U);ee((ge,he)=>{F=ce(I,1,"notif-chip svelte-r8m6y",null,F,ge),eu(U,he),ue(U,"aria-label",`Notify on ${p(L)??""}`),J(re,` ${p(L)??""}`)},[()=>({active:p(v).has(p(L))}),()=>p(v).has(p(L))]),z(O,I)}),ee(()=>{J(A,s[p(a)]),m=ce(y,1,"toggle svelte-r8m6y",null,m,{on:p(h)}),ue(y,"aria-checked",p(h)),J(M,`${p(c)??""} min`),T=ce(B,1,"toggle svelte-r8m6y",null,T,{on:p(d)}),ue(B,"aria-checked",p(d))}),ni(b,()=>p(c),O=>W(c,O)),z(e,g),bt()}Dt(["click","change"]);var qp=G(""),Gp=G('
                '),Kp=G('

                No plugins found in config dir.

                '),Jp=G('

                '),jp=G('

                Logging

                Telemetry

                Relay

                seconds

                Plugins

                Updates

                Settings Data

                ');function Yp(e,t){Ct(t,!0);const i=["trace","debug","info","warn","error"];let s=V(Ne([{id:"quanta-plugin",name:"Quanta Plugin",version:"1.2.0",enabled:!0},{id:"session-wrap",name:"Session Wrap",version:"0.4.1",enabled:!1}])),r=V("info"),n=V(""),a=V(""),o=V(30),h=V(!1),l=V(null);function c(L){W(s,p(s).map(I=>I.id===L?{...I,enabled:!I.enabled}:I),!0)}function d(){W(h,!0),W(l,null),setTimeout(()=>{W(h,!1),W(l,"Already up to date (v3.0.0-dev)")},1200)}function v(){const L=JSON.stringify({logLevel:p(r),otlpEndpoint:p(n),relayUrls:p(a),connTimeout:p(o)},null,2),I=new Blob([L],{type:"application/json"}),F=URL.createObjectURL(I),U=document.createElement("a");U.href=F,U.download="agor-settings.json",U.click(),URL.revokeObjectURL(F)}var u=jp(),g=P(R(u),2);Me(g,21,()=>i,He,(L,I)=>{var F=qp();F.__click=()=>W(r,p(I),!0);let U;var re=R(F);ee(()=>{U=ce(F,1,"svelte-1ovc5q5",null,U,{active:p(r)===p(I)}),J(re,p(I))}),z(L,F)});var _=P(g,4),f=P(R(_),2),A=P(_,4),x=P(R(A),2),S=P(A,2),w=P(R(S),2),y=P(S,4),m=R(y);Me(m,17,()=>p(s),He,(L,I)=>{var F=Gp(),U=R(F),re=R(U),ge=R(re),he=P(re,2),ne=R(he),we=P(U,2);let _e;we.__click=()=>c(p(I).id),ee(()=>{J(ge,p(I).name),J(ne,`v${p(I).version??""}`),_e=ce(we,1,"toggle svelte-1ovc5q5",null,_e,{on:p(I).enabled}),ue(we,"aria-checked",p(I).enabled),ue(we,"aria-label",`Toggle ${p(I).name??""}`)}),z(L,F)});var C=P(m,2);{var E=L=>{var I=Kp();z(L,I)};se(C,L=>{p(s).length===0&&L(E)})}var b=P(y,4),D=R(b);D.textContent="v3.0.0-dev";var M=P(D,2);M.__click=d;var k=R(M),B=P(b,2);{var T=L=>{var I=Jp(),F=R(I);ee(()=>J(F,p(l))),z(L,I)};se(B,L=>{p(l)&&L(T)})}var Q=P(B,4),O=R(Q);O.__click=v,ee(()=>{M.disabled=p(h),J(k,p(h)?"Checking…":"Check for updates")}),ni(f,()=>p(n),L=>W(n,L)),ni(x,()=>p(a),L=>W(a,L)),ni(w,()=>p(o),L=>W(o,L)),z(e,u),bt()}Dt(["click"]);var Vp=G(''),Xp=G('');function Zp(e,t){Ct(t,!0);const i=[{id:"appearance",label:"Appearance",icon:"🎨"},{id:"agents",label:"Agents",icon:"🤖"},{id:"security",label:"Security",icon:"🔒"},{id:"projects",label:"Projects",icon:"📁"},{id:"orchestration",label:"Orchestration",icon:"⚙"},{id:"advanced",label:"Advanced",icon:"🔧"}];let s=V("appearance");function r(l){l.target===l.currentTarget&&t.onClose()}function n(l){l.key==="Escape"&&t.onClose()}var a=qt(),o=at(a);{var h=l=>{var c=Xp();c.__click=r,c.__keydown=n;var d=R(c);d.__click=w=>w.stopPropagation(),d.__keydown=w=>w.stopPropagation();var v=R(d),u=P(R(v),2);u.__click=function(...w){var y;(y=t.onClose)==null||y.apply(this,w)};var g=P(v,2),_=R(g);Me(_,21,()=>i,He,(w,y)=>{var m=Vp();let C;m.__click=()=>W(s,p(y).id,!0);var E=R(m),b=R(E),D=P(E,2),M=R(D);ee(()=>{C=ce(m,1,"cat-btn svelte-1gl9lco",null,C,{active:p(s)===p(y).id}),ue(m,"aria-current",p(s)===p(y).id?"page":void 0),J(b,p(y).icon),J(M,p(y).label)}),z(w,m)});var f=P(_,2),A=R(f);{var x=w=>{gp(w,{})},S=w=>{var y=qt(),m=at(y);{var C=b=>{Sp(b,{})},E=b=>{var D=qt(),M=at(D);{var k=T=>{Lp(T,{})},B=T=>{var Q=qt(),O=at(Q);{var L=F=>{Np(F,{})},I=F=>{var U=qt(),re=at(U);{var ge=ne=>{$p(ne,{})},he=ne=>{var we=qt(),_e=at(we);{var X=ie=>{Yp(ie,{})};se(_e,ie=>{p(s)==="advanced"&&ie(X)},!0)}z(ne,we)};se(re,ne=>{p(s)==="orchestration"?ne(ge):ne(he,!1)},!0)}z(F,U)};se(O,F=>{p(s)==="projects"?F(L):F(I,!1)},!0)}z(T,Q)};se(M,T=>{p(s)==="security"?T(k):T(B,!1)},!0)}z(b,D)};se(m,b=>{p(s)==="agents"?b(C):b(E,!1)},!0)}z(w,y)};se(A,w=>{p(s)==="appearance"?w(x):w(S,!1)})}z(l,c)};se(o,l=>{t.open&&l(h)})}z(e,a),bt()}Dt(["click","keydown"]);var em=G(' '),tm=G(' '),im=G('
              • '),sm=G('
              • No commands found
              • '),rm=G('');function nm(e,t){Ct(t,!0);const i=[{id:"new-terminal",label:"New Terminal Tab",shortcut:"Ctrl+`",action:()=>{}},{id:"settings",label:"Open Settings",shortcut:"Ctrl+,",action:()=>{}},{id:"search",label:"Search Messages",shortcut:"Ctrl+F",action:()=>{}},{id:"new-project",label:"Add Project",description:"Open a project directory",action:()=>{}},{id:"clear-agent",label:"Clear Agent Context",description:"Reset agent session",action:()=>{}},{id:"copy-cost",label:"Copy Session Cost",action:()=>{}},{id:"docs",label:"Open Documentation",shortcut:"F1",action:()=>{}},{id:"theme",label:"Change Theme",description:"Currently: Catppuccin Mocha",action:()=>{}},{id:"split-h",label:"Split Horizontally",shortcut:"Ctrl+\\",action:()=>{}},{id:"split-v",label:"Split Vertically",shortcut:"Ctrl+Shift+\\",action:()=>{}}];let s=V(""),r=V(0),n=V(void 0),a=ot(()=>p(s).trim()===""?i:i.filter(u=>{var g;return u.label.toLowerCase().includes(p(s).toLowerCase())||((g=u.description)==null?void 0:g.toLowerCase().includes(p(s).toLowerCase()))}));ri(()=>{t.open&&(W(s,""),W(r,0),ra().then(()=>{var u;return(u=p(n))==null?void 0:u.focus()}))}),ri(()=>{const u=p(a).length;p(r)>=u&&W(r,Math.max(0,u-1),!0)});function o(u){if(u.key==="Escape"){t.onClose();return}if(u.key==="ArrowDown"){u.preventDefault(),W(r,Math.min(p(r)+1,p(a).length-1),!0);return}if(u.key==="ArrowUp"){u.preventDefault(),W(r,Math.max(p(r)-1,0),!0);return}u.key==="Enter"&&p(a)[p(r)]&&(p(a)[p(r)].action(),t.onClose())}function h(u){u.action(),t.onClose()}function l(u){u.target===u.currentTarget&&t.onClose()}var c=qt(),d=at(c);{var v=u=>{var g=rm();g.__click=l,g.__keydown=o;var _=R(g),f=R(_),A=P(R(f),2);A.__keydown=o,_r(A,m=>W(n,m),()=>p(n));var x=P(f,2),S=R(x);Me(S,19,()=>p(a),m=>m.id,(m,C,E)=>{var b=im();let D;b.__click=()=>h(p(C));var M=R(b),k=R(M),B=P(M,2);{var T=L=>{var I=em(),F=R(I);ee(()=>J(F,p(C).description)),z(L,I)};se(B,L=>{p(C).description&&L(T)})}var Q=P(B,2);{var O=L=>{var I=tm(),F=R(I);ee(()=>J(F,p(C).shortcut)),z(L,I)};se(Q,L=>{p(C).shortcut&&L(O)})}ee(()=>{ue(b,"id",`cmd-${p(C).id??""}`),D=ce(b,1,"palette-item svelte-o5jp2k",null,D,{selected:p(E)===p(r)}),ue(b,"aria-selected",p(E)===p(r)),J(k,p(C).label)}),Od("mouseenter",b,()=>W(r,p(E),!0)),z(m,b)});var w=P(S,2);{var y=m=>{var C=sm();z(m,C)};se(w,m=>{p(a).length===0&&m(y)})}ee(()=>ue(A,"aria-activedescendant",p(a)[p(r)]?`cmd-${p(a)[p(r)].id}`:void 0)),ni(A,()=>p(s),m=>W(s,m)),z(u,g)};se(d,u=>{t.open&&u(v)})}z(e,c),bt()}Dt(["click","keydown"]);var om=G('
                '),am=G('
                ');function lm(e,t){Ct(t,!0);let i=V(Ne([])),s=V(0);function r(l,c="info",d=4e3){const v=Cd(s);W(i,[...p(i),{id:v,message:l,variant:c,dismissAt:Date.now()+d}],!0),setTimeout(()=>n(v),d)}function n(l){W(i,p(i).filter(c=>c.id!==l),!0)}mn(()=>{setTimeout(()=>{r("Agent Orchestrator connected","success",4e3)},800)});const a={success:"✓",warning:"⚠",error:"✕",info:"ℹ"};var o={addToast:r},h=am();return Me(h,21,()=>p(i),l=>l.id,(l,c)=>{var d=om(),v=R(d),u=R(v),g=P(v,2),_=R(g),f=P(g,2);f.__click=()=>n(p(c).id),ee(()=>{ce(d,1,`toast toast-${p(c).variant??""}`,"svelte-13j0wuy"),J(u,a[p(c).variant]),J(_,p(c).message)}),z(l,d)}),z(e,h),bt(o)}Dt(["click"]);var hm=G(' running'),cm=G(' idle'),dm=G(' stalled'),um=G(' attention'),_m=G(''),fm=G('
                session tokens cost Ctrl+K
                ',1);function vm(e,t){Ct(t,!0);const i=[{id:"p1",name:"agent-orchestrator",cwd:"~/code/ai/agent-orchestrator",accent:"var(--ctp-mauve)",status:"running",costUsd:.034,tokens:18420,provider:"claude",profile:"dev",model:"claude-opus-4-5",contextPct:78,burnRate:.12,messages:[{id:1,role:"user",content:"Add a wake scheduler for Manager agents that wakes them when review queue depth > 3."},{id:2,role:"assistant",content:"Reading existing wake-scheduler.svelte.ts to understand the 3-strategy pattern..."},{id:3,role:"tool-call",content:'Read("src/lib/stores/wake-scheduler.svelte.ts")'},{id:4,role:"tool-result",content:`// 312 lines export type WakeStrategy = "persistent" | "on-demand" | "smart"; ...`},{id:5,role:"assistant",content:"Found the WakeSignal enum. I'll add ReviewBacklog(0.6) and hook into bttask polling. Writing wake-scorer.ts update now."},{id:6,role:"tool-call",content:`Edit("src/lib/utils/wake-scorer.ts", old="// signals", new="// signals ReviewBacklog = 0.6,")`},{id:7,role:"assistant",content:"Done. ReviewBacklog signal added at priority 0.6 (between TaskQueuePressure 0.7 and PeriodicFloor 0.1). Run `npm test` to verify 24 scorer tests still pass."}]},{id:"p2",name:"quanta-discord-bot",cwd:"~/code/quanta/discord-bot",accent:"var(--ctp-sapphire)",status:"idle",costUsd:.011,tokens:6830,provider:"claude",model:"claude-sonnet-4-5",contextPct:32,messages:[{id:1,role:"user",content:"Why is the QRAG MCP server returning 504s on large semantic search queries?"},{id:2,role:"assistant",content:"Checking the MCP HTTP handler timeout config and Qdrant query path..."},{id:3,role:"tool-call",content:'Read("src/mcp/server.ts", offset=120, limit=40)'},{id:4,role:"tool-result",content:`const QUERY_TIMEOUT_MS = 5000; // default @@ -56,4 +56,4 @@ export type WakeStrategy = "persistent" | "on-demand" | "smart"; 1. Raise timeout to 15s (quick fix) 2. Lower ef to 128 for faster approximate search (~3s, slight recall drop) -Recommend option 2 for latency-sensitive bot responses.`},{id:6,role:"user",content:"Go with option 2."},{id:7,role:"assistant",content:"Updated `ef_searching: 128` in qdrant-config.ts and raised timeout to 8s as safety margin. Restarted service on port 9320."}]}];let s=Z(!1),r=Z(!1),n=Z(2),a=rt(Date.now()),o=Z(!0);ns(()=>{const F=setInterval(()=>{W(o,!p(o))},500);return()=>clearInterval(F)});let h=Z("0m");ns(()=>{function F(){const K=Math.floor((Date.now()-a)/6e4);W(h,K<60?`${K}m`:`${Math.floor(K/60)}h ${K%60}m`,!0)}F();const N=setInterval(F,1e4);return()=>clearInterval(N)}),ns(()=>{function F(N){(N.ctrlKey||N.metaKey)&&N.key==="k"&&(N.preventDefault(),W(r,!p(r))),(N.ctrlKey||N.metaKey)&&N.key===","&&(N.preventDefault(),W(s,!p(s)))}return window.addEventListener("keydown",F),()=>window.removeEventListener("keydown",F)});let l=st(()=>i.filter(F=>F.status==="running").length),c=st(()=>i.filter(F=>F.status==="idle").length),d=st(()=>i.filter(F=>F.status==="stalled").length),g=st(()=>i.reduce((F,N)=>F+N.costUsd,0)),_=st(()=>i.reduce((F,N)=>F+N.tokens,0)),v=st(()=>i.filter(F=>F.status==="stalled"||(F.contextPct??0)>=75));function u(F){return F>=1e3?`${(F/1e3).toFixed(1)}k`:String(F)}function f(F){return`$${F.toFixed(3)}`}var A=Jp(),k=ct(A);Rp(k,{get open(){return p(s)},onClose:()=>W(s,!1)});var b=P(k,2);Hp(b,{get open(){return p(r)},onClose:()=>W(r,!1)});var w=P(b,2);zp(w,{});var y=P(w,2),m=R(y),C=P(R(m),2);let E;C.__click=()=>W(s,!p(s));var S=P(m,2),D=R(S);Te(D,21,()=>i,F=>F.id,(F,N)=>{Wg(F,{get id(){return p(N).id},get name(){return p(N).name},get cwd(){return p(N).cwd},get accent(){return p(N).accent},get status(){return p(N).status},get costUsd(){return p(N).costUsd},get tokens(){return p(N).tokens},get messages(){return p(N).messages},get provider(){return p(N).provider},get profile(){return p(N).profile},get model(){return p(N).model},get contextPct(){return p(N).contextPct},get burnRate(){return p(N).burnRate},get blinkVisible(){return p(o)}})});var M=P(y,2),x=R(M);{var B=F=>{var N=Up(),K=P(R(N),2),le=R(K);ee(()=>J(le,p(l))),z(F,N)};se(x,F=>{p(l)>0&&F(B)})}var T=P(x,2);{var Q=F=>{var N=$p(),K=P(R(N),2),le=R(K);ee(()=>J(le,p(c))),z(F,N)};se(T,F=>{p(c)>0&&F(Q)})}var O=P(T,2);{var L=F=>{var N=qp(),K=P(R(N),2),le=R(K);ee(()=>J(le,p(d))),z(F,N)};se(O,F=>{p(d)>0&&F(L)})}var I=P(O,2);{var H=F=>{var N=Gp(),K=P(R(N),2),le=R(K);ee(de=>{ue(N,"title",`Needs attention: ${de??""}`),J(le,p(v).length)},[()=>p(v).map(de=>de.name).join(", ")]),z(F,N)};se(I,F=>{p(v).length>0&&F(H)})}var U=P(I,4),re=P(R(U),2),ve=R(re),he=P(U,2),ne=P(R(he),2),pe=R(ne),_e=P(he,2),V=P(R(_e),2),ie=R(V),oe=P(_e,2);oe.__click=()=>W(n,0);var X=P(R(oe),2);{var j=F=>{var N=Kp(),K=R(N);ee(()=>J(K,p(n))),z(F,N)};se(X,F=>{p(n)>0&&F(j)})}ee((F,N)=>{E=ce(C,1,"sidebar-icon svelte-krfyfn",null,E,{active:p(s)}),J(ve,p(h)),J(pe,F),J(ie,N),ue(oe,"aria-label",p(n)>0?`${p(n)} unread notifications`:"Notifications")},[()=>u(p(_)),()=>f(p(g))]),z(e,A),mt()}It(["click"]);const Yp=1e10,Vp=1e3;function Tr(e,t){const i=e.map(s=>`"${s}"`).join(", ");return new Error(`This RPC instance cannot ${t} because the transport did not provide one or more of these methods: ${i}`)}function Xp(e={}){let t={},i={},s;function r(C){var E;i.unregisterHandler&&i.unregisterHandler(),i=C,(E=i.registerHandler)==null||E.call(i,y)}function n(C){if(typeof C=="function"){s=C;return}s=(E,S)=>{const D=C[E];if(D)return D(S);const M=C._;if(!M)throw new Error(`The requested method has no handler: ${String(E)}`);return M(E,S)}}const{maxRequestTime:a=Vp}=e;e.transport&&r(e.transport),e.requestHandler&&n(e.requestHandler),e._debugHooks&&(t=e._debugHooks);let o=0;function h(){return o<=Yp?++o:o=0}const l=new Map,c=new Map;function d(C,...E){const S=E[0];return new Promise((D,M)=>{var T;if(!i.send)throw Tr(["send"],"make requests");const x=h(),B={type:"request",id:x,method:C,params:S};l.set(x,{resolve:D,reject:M}),a!==1/0&&c.set(x,setTimeout(()=>{c.delete(x),l.delete(x),M(new Error("RPC request timed out."))},a)),(T=t.onSend)==null||T.call(t,B),i.send(B)})}const g=new Proxy(d,{get:(C,E,S)=>E in C?Reflect.get(C,E,S):D=>d(E,D)}),_=g;function v(C,...E){var M;const S=E[0];if(!i.send)throw Tr(["send"],"send messages");const D={type:"message",id:C,payload:S};(M=t.onSend)==null||M.call(t,D),i.send(D)}const u=new Proxy(v,{get:(C,E,S)=>E in C?Reflect.get(C,E,S):D=>v(E,D)}),f=u,A=new Map,k=new Set;function b(C,E){if(!i.registerHandler)throw Tr(["registerHandler"],"register message listeners");if(C==="*"){k.add(E);return}A.has(C)||A.set(C,new Set),A.get(C).add(E)}function w(C,E){var S,D;if(C==="*"){k.delete(E);return}(S=A.get(C))==null||S.delete(E),((D=A.get(C))==null?void 0:D.size)===0&&A.delete(C)}async function y(C){var E,S;if((E=t.onReceive)==null||E.call(t,C),!("type"in C))throw new Error("Message does not contain a type.");if(C.type==="request"){if(!i.send||!s)throw Tr(["send","requestHandler"],"handle requests");const{id:D,method:M,params:x}=C;let B;try{B={type:"response",id:D,success:!0,payload:await s(M,x)}}catch(T){if(!(T instanceof Error))throw T;B={type:"response",id:D,success:!1,error:T.message}}(S=t.onSend)==null||S.call(t,B),i.send(B);return}if(C.type==="response"){const D=c.get(C.id);D!=null&&clearTimeout(D),c.delete(C.id);const{resolve:M,reject:x}=l.get(C.id)??{};l.delete(C.id),C.success?M==null||M(C.payload):x==null||x(new Error(C.error));return}if(C.type==="message"){for(const M of k)M(C.id,C.payload);const D=A.get(C.id);if(!D)return;for(const M of D)M(C.payload);return}throw new Error(`Unexpected RPC message type: ${C.type}`)}return{setTransport:r,setRequestHandler:n,request:g,requestProxy:_,send:u,sendProxy:f,addMessageListener:b,removeMessageListener:w,proxy:{send:f,request:_}}}function Zp(e,t){const i={maxRequestTime:t.maxRequestTime,requestHandler:{...t.handlers.requests,...t.extraRequestHandlers},transport:{registerHandler:()=>{}}},s=Xp(i),r=t.handlers.messages;return r&&s.addMessageListener("*",((n,a)=>{const o=r["*"];o&&o(n,a);const h=r[n];h&&h(a)})),s}const em=window.__electrobunWebviewId,tm=window.__electrobunRpcSocketPort;class _c{constructor(t){this.rpc=t.rpc,this.init()}init(){this.initSocketToBun(),window.__electrobun.receiveMessageFromBun=this.receiveMessageFromBun.bind(this),this.rpc&&this.rpc.setTransport(this.createTransport())}initSocketToBun(){const t=new WebSocket(`ws://localhost:${tm}/socket?webviewId=${em}`);this.bunSocket=t,t.addEventListener("open",()=>{}),t.addEventListener("message",async i=>{var r;const s=i.data;if(typeof s=="string")try{const n=JSON.parse(s),a=await window.__electrobun_decrypt(n.encryptedData,n.iv,n.tag);(r=this.rpcHandler)==null||r.call(this,JSON.parse(a))}catch(n){console.error("Error parsing bun message:",n)}else s instanceof Blob||console.error("UNKNOWN DATA TYPE RECEIVED:",i.data)}),t.addEventListener("error",i=>{console.error("Socket error:",i)}),t.addEventListener("close",i=>{})}createTransport(){const t=this;return{send(i){try{const s=JSON.stringify(i);t.bunBridge(s)}catch(s){console.error("bun: failed to serialize message to webview",s)}},registerHandler(i){t.rpcHandler=i}}}async bunBridge(t){var i,s;if(((i=this.bunSocket)==null?void 0:i.readyState)===WebSocket.OPEN)try{const{encryptedData:r,iv:n,tag:a}=await window.__electrobun_encrypt(t),h=JSON.stringify({encryptedData:r,iv:n,tag:a});this.bunSocket.send(h);return}catch(r){console.error("Error sending message to bun via socket:",r)}(s=window.__electrobunBunBridge)==null||s.postMessage(t)}receiveMessageFromBun(t){this.rpcHandler&&this.rpcHandler(t)}static defineRPC(t){return Zp("webview",{...t,extraRequestHandlers:{evaluateJavascriptWithResponse:({script:i})=>new Promise(s=>{try{const n=new Function(i)();n instanceof Promise?n.then(a=>{s(a)}).catch(a=>{console.error("bun: async script execution failed",a),s(String(a))}):s(n)}catch(r){console.error("bun: failed to eval script",r),s(String(r))}})}})}}const im=_c.defineRPC({maxRequestTime:1e4,handlers:{requests:{},messages:{}}}),ws=new _c({rpc:im});Id(jp,{target:document.getElementById("app")}); +Recommend option 2 for latency-sensitive bot responses.`},{id:6,role:"user",content:"Go with option 2."},{id:7,role:"assistant",content:"Updated `ef_searching: 128` in qdrant-config.ts and raised timeout to 8s as safety margin. Restarted service on port 9320."}]}];mn(()=>{Vr.initTheme(Ko).catch(console.error),Wt.initFonts(Ko).catch(console.error)});let s=V(!1),r=V(!1),n=V(2),a=Ne(Date.now()),o=V(!0);ri(()=>{const H=setInterval(()=>{W(o,!p(o))},500);return()=>clearInterval(H)});let h=V("0m");ri(()=>{function H(){const K=Math.floor((Date.now()-a)/6e4);W(h,K<60?`${K}m`:`${Math.floor(K/60)}h ${K%60}m`,!0)}H();const N=setInterval(H,1e4);return()=>clearInterval(N)}),ri(()=>{function H(N){(N.ctrlKey||N.metaKey)&&N.key==="k"&&(N.preventDefault(),W(r,!p(r))),(N.ctrlKey||N.metaKey)&&N.key===","&&(N.preventDefault(),W(s,!p(s)))}return window.addEventListener("keydown",H),()=>window.removeEventListener("keydown",H)});let l=ot(()=>i.filter(H=>H.status==="running").length),c=ot(()=>i.filter(H=>H.status==="idle").length),d=ot(()=>i.filter(H=>H.status==="stalled").length),v=ot(()=>i.reduce((H,N)=>H+N.costUsd,0)),u=ot(()=>i.reduce((H,N)=>H+N.tokens,0)),g=ot(()=>i.filter(H=>H.status==="stalled"||(H.contextPct??0)>=75));function _(H){return H>=1e3?`${(H/1e3).toFixed(1)}k`:String(H)}function f(H){return`$${H.toFixed(3)}`}var A=fm(),x=at(A);Zp(x,{get open(){return p(s)},onClose:()=>W(s,!1)});var S=P(x,2);nm(S,{get open(){return p(r)},onClose:()=>W(r,!1)});var w=P(S,2);lm(w,{});var y=P(w,2),m=R(y),C=P(R(m),2);let E;C.__click=()=>W(s,!p(s));var b=P(m,2),D=R(b);Me(D,21,()=>i,H=>H.id,(H,N)=>{Zg(H,{get id(){return p(N).id},get name(){return p(N).name},get cwd(){return p(N).cwd},get accent(){return p(N).accent},get status(){return p(N).status},get costUsd(){return p(N).costUsd},get tokens(){return p(N).tokens},get messages(){return p(N).messages},get provider(){return p(N).provider},get profile(){return p(N).profile},get model(){return p(N).model},get contextPct(){return p(N).contextPct},get burnRate(){return p(N).burnRate},get blinkVisible(){return p(o)}})});var M=P(y,2),k=R(M);{var B=H=>{var N=hm(),K=P(R(N),2),le=R(K);ee(()=>J(le,p(l))),z(H,N)};se(k,H=>{p(l)>0&&H(B)})}var T=P(k,2);{var Q=H=>{var N=cm(),K=P(R(N),2),le=R(K);ee(()=>J(le,p(c))),z(H,N)};se(T,H=>{p(c)>0&&H(Q)})}var O=P(T,2);{var L=H=>{var N=dm(),K=P(R(N),2),le=R(K);ee(()=>J(le,p(d))),z(H,N)};se(O,H=>{p(d)>0&&H(L)})}var I=P(O,2);{var F=H=>{var N=um(),K=P(R(N),2),le=R(K);ee(de=>{ue(N,"title",`Needs attention: ${de??""}`),J(le,p(g).length)},[()=>p(g).map(de=>de.name).join(", ")]),z(H,N)};se(I,H=>{p(g).length>0&&H(F)})}var U=P(I,4),re=P(R(U),2),ge=R(re),he=P(U,2),ne=P(R(he),2),we=R(ne),_e=P(he,2),X=P(R(_e),2),ie=R(X),oe=P(_e,2);oe.__click=()=>W(n,0);var Z=P(R(oe),2);{var j=H=>{var N=_m(),K=R(N);ee(()=>J(K,p(n))),z(H,N)};se(Z,H=>{p(n)>0&&H(j)})}ee((H,N)=>{E=ce(C,1,"sidebar-icon svelte-krfyfn",null,E,{active:p(s)}),J(ge,p(h)),J(we,H),J(ie,N),ue(oe,"aria-label",p(n)>0?`${p(n)} unread notifications`:"Notifications")},[()=>_(p(u)),()=>f(p(v))]),z(e,A),bt()}Dt(["click"]);const gm=1e10,pm=1e3;function Hr(e,t){const i=e.map(s=>`"${s}"`).join(", ");return new Error(`This RPC instance cannot ${t} because the transport did not provide one or more of these methods: ${i}`)}function mm(e={}){let t={},i={},s;function r(C){var E;i.unregisterHandler&&i.unregisterHandler(),i=C,(E=i.registerHandler)==null||E.call(i,y)}function n(C){if(typeof C=="function"){s=C;return}s=(E,b)=>{const D=C[E];if(D)return D(b);const M=C._;if(!M)throw new Error(`The requested method has no handler: ${String(E)}`);return M(E,b)}}const{maxRequestTime:a=pm}=e;e.transport&&r(e.transport),e.requestHandler&&n(e.requestHandler),e._debugHooks&&(t=e._debugHooks);let o=0;function h(){return o<=gm?++o:o=0}const l=new Map,c=new Map;function d(C,...E){const b=E[0];return new Promise((D,M)=>{var T;if(!i.send)throw Hr(["send"],"make requests");const k=h(),B={type:"request",id:k,method:C,params:b};l.set(k,{resolve:D,reject:M}),a!==1/0&&c.set(k,setTimeout(()=>{c.delete(k),l.delete(k),M(new Error("RPC request timed out."))},a)),(T=t.onSend)==null||T.call(t,B),i.send(B)})}const v=new Proxy(d,{get:(C,E,b)=>E in C?Reflect.get(C,E,b):D=>d(E,D)}),u=v;function g(C,...E){var M;const b=E[0];if(!i.send)throw Hr(["send"],"send messages");const D={type:"message",id:C,payload:b};(M=t.onSend)==null||M.call(t,D),i.send(D)}const _=new Proxy(g,{get:(C,E,b)=>E in C?Reflect.get(C,E,b):D=>g(E,D)}),f=_,A=new Map,x=new Set;function S(C,E){if(!i.registerHandler)throw Hr(["registerHandler"],"register message listeners");if(C==="*"){x.add(E);return}A.has(C)||A.set(C,new Set),A.get(C).add(E)}function w(C,E){var b,D;if(C==="*"){x.delete(E);return}(b=A.get(C))==null||b.delete(E),((D=A.get(C))==null?void 0:D.size)===0&&A.delete(C)}async function y(C){var E,b;if((E=t.onReceive)==null||E.call(t,C),!("type"in C))throw new Error("Message does not contain a type.");if(C.type==="request"){if(!i.send||!s)throw Hr(["send","requestHandler"],"handle requests");const{id:D,method:M,params:k}=C;let B;try{B={type:"response",id:D,success:!0,payload:await s(M,k)}}catch(T){if(!(T instanceof Error))throw T;B={type:"response",id:D,success:!1,error:T.message}}(b=t.onSend)==null||b.call(t,B),i.send(B);return}if(C.type==="response"){const D=c.get(C.id);D!=null&&clearTimeout(D),c.delete(C.id);const{resolve:M,reject:k}=l.get(C.id)??{};l.delete(C.id),C.success?M==null||M(C.payload):k==null||k(new Error(C.error));return}if(C.type==="message"){for(const M of x)M(C.id,C.payload);const D=A.get(C.id);if(!D)return;for(const M of D)M(C.payload);return}throw new Error(`Unexpected RPC message type: ${C.type}`)}return{setTransport:r,setRequestHandler:n,request:v,requestProxy:u,send:_,sendProxy:f,addMessageListener:S,removeMessageListener:w,proxy:{send:f,request:u}}}function Am(e,t){const i={maxRequestTime:t.maxRequestTime,requestHandler:{...t.handlers.requests,...t.extraRequestHandlers},transport:{registerHandler:()=>{}}},s=mm(i),r=t.handlers.messages;return r&&s.addMessageListener("*",((n,a)=>{const o=r["*"];o&&o(n,a);const h=r[n];h&&h(a)})),s}const wm=window.__electrobunWebviewId,Cm=window.__electrobunRpcSocketPort;class xc{constructor(t){this.rpc=t.rpc,this.init()}init(){this.initSocketToBun(),window.__electrobun.receiveMessageFromBun=this.receiveMessageFromBun.bind(this),this.rpc&&this.rpc.setTransport(this.createTransport())}initSocketToBun(){const t=new WebSocket(`ws://localhost:${Cm}/socket?webviewId=${wm}`);this.bunSocket=t,t.addEventListener("open",()=>{}),t.addEventListener("message",async i=>{var r;const s=i.data;if(typeof s=="string")try{const n=JSON.parse(s),a=await window.__electrobun_decrypt(n.encryptedData,n.iv,n.tag);(r=this.rpcHandler)==null||r.call(this,JSON.parse(a))}catch(n){console.error("Error parsing bun message:",n)}else s instanceof Blob||console.error("UNKNOWN DATA TYPE RECEIVED:",i.data)}),t.addEventListener("error",i=>{console.error("Socket error:",i)}),t.addEventListener("close",i=>{})}createTransport(){const t=this;return{send(i){try{const s=JSON.stringify(i);t.bunBridge(s)}catch(s){console.error("bun: failed to serialize message to webview",s)}},registerHandler(i){t.rpcHandler=i}}}async bunBridge(t){var i,s;if(((i=this.bunSocket)==null?void 0:i.readyState)===WebSocket.OPEN)try{const{encryptedData:r,iv:n,tag:a}=await window.__electrobun_encrypt(t),h=JSON.stringify({encryptedData:r,iv:n,tag:a});this.bunSocket.send(h);return}catch(r){console.error("Error sending message to bun via socket:",r)}(s=window.__electrobunBunBridge)==null||s.postMessage(t)}receiveMessageFromBun(t){this.rpcHandler&&this.rpcHandler(t)}static defineRPC(t){return Am("webview",{...t,extraRequestHandlers:{evaluateJavascriptWithResponse:({script:i})=>new Promise(s=>{try{const n=new Function(i)();n instanceof Promise?n.then(a=>{s(a)}).catch(a=>{console.error("bun: async script execution failed",a),s(String(a))}):s(n)}catch(r){console.error("bun: failed to eval script",r),s(String(r))}})}})}}const Ko=xc.defineRPC({maxRequestTime:1e4,handlers:{requests:{},messages:{}}}),Es=new xc({rpc:Ko});Wd(vm,{target:document.getElementById("app")}); diff --git a/ui-electrobun/build/dev-linux-x64/AgentOrchestrator-dev/Resources/app/views/mainview/assets/index-x9Y0o9Mz.css b/ui-electrobun/build/dev-linux-x64/AgentOrchestrator-dev/Resources/app/views/mainview/assets/index-DSZtflYD.css similarity index 51% rename from ui-electrobun/build/dev-linux-x64/AgentOrchestrator-dev/Resources/app/views/mainview/assets/index-x9Y0o9Mz.css rename to ui-electrobun/build/dev-linux-x64/AgentOrchestrator-dev/Resources/app/views/mainview/assets/index-DSZtflYD.css index 2e18c7a..3818285 100644 --- a/ui-electrobun/build/dev-linux-x64/AgentOrchestrator-dev/Resources/app/views/mainview/assets/index-x9Y0o9Mz.css +++ b/ui-electrobun/build/dev-linux-x64/AgentOrchestrator-dev/Resources/app/views/mainview/assets/index-DSZtflYD.css @@ -29,4 +29,4 @@ * The original design remains. The terminal itself * has been extended to include xterm CSI codes, among * other features. - */.xterm{cursor:text;position:relative;user-select:none;-ms-user-select:none;-webkit-user-select:none}.xterm.focus,.xterm:focus{outline:none}.xterm .xterm-helpers{position:absolute;top:0;z-index:5}.xterm .xterm-helper-textarea{padding:0;border:0;margin:0;position:absolute;opacity:0;left:-9999em;top:0;width:0;height:0;z-index:-5;white-space:nowrap;overflow:hidden;resize:none}.xterm .composition-view{background:#000;color:#fff;display:none;position:absolute;white-space:nowrap;z-index:1}.xterm .composition-view.active{display:block}.xterm .xterm-viewport{background-color:#000;overflow-y:scroll;cursor:default;position:absolute;right:0;left:0;top:0;bottom:0}.xterm .xterm-screen{position:relative}.xterm .xterm-screen canvas{position:absolute;left:0;top:0}.xterm-char-measure-element{display:inline-block;visibility:hidden;position:absolute;top:0;left:-9999em;line-height:normal}.xterm.enable-mouse-events{cursor:default}.xterm.xterm-cursor-pointer,.xterm .xterm-cursor-pointer{cursor:pointer}.xterm.column-select.focus{cursor:crosshair}.xterm .xterm-accessibility:not(.debug),.xterm .xterm-message{position:absolute;left:0;top:0;bottom:0;right:0;z-index:10;color:transparent;pointer-events:none}.xterm .xterm-accessibility-tree:not(.debug) *::selection{color:transparent}.xterm .xterm-accessibility-tree{font-family:monospace;-webkit-user-select:text;user-select:text;white-space:pre}.xterm .xterm-accessibility-tree>div{transform-origin:left;width:fit-content}.xterm .live-region{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}.xterm-dim{opacity:1!important}.xterm-underline-1{text-decoration:underline}.xterm-underline-2{text-decoration:double underline}.xterm-underline-3{text-decoration:wavy underline}.xterm-underline-4{text-decoration:dotted underline}.xterm-underline-5{text-decoration:dashed underline}.xterm-overline{text-decoration:overline}.xterm-overline.xterm-underline-1{text-decoration:overline underline}.xterm-overline.xterm-underline-2{text-decoration:overline double underline}.xterm-overline.xterm-underline-3{text-decoration:overline wavy underline}.xterm-overline.xterm-underline-4{text-decoration:overline dotted underline}.xterm-overline.xterm-underline-5{text-decoration:overline dashed underline}.xterm-strikethrough{text-decoration:line-through}.xterm-screen .xterm-decoration-container .xterm-decoration{z-index:6;position:absolute}.xterm-screen .xterm-decoration-container .xterm-decoration.xterm-decoration-top-layer{z-index:7}.xterm-decoration-overview-ruler{z-index:8;position:absolute;top:0;right:0;pointer-events:none}.xterm-decoration-top{z-index:2;position:relative}.xterm .xterm-scrollable-element>.scrollbar{cursor:default}.xterm .xterm-scrollable-element>.scrollbar>.scra{cursor:pointer;font-size:11px!important}.xterm .xterm-scrollable-element>.visible{opacity:1;background:#0000;transition:opacity .1s linear;z-index:11}.xterm .xterm-scrollable-element>.invisible{opacity:0;pointer-events:none}.xterm .xterm-scrollable-element>.invisible.fade{transition:opacity .8s linear}.xterm .xterm-scrollable-element>.shadow{position:absolute;display:none}.xterm .xterm-scrollable-element>.shadow.top{display:block;top:0;left:3px;height:3px;width:100%;box-shadow:var(--vscode-scrollbar-shadow, #000) 0 6px 6px -6px inset}.xterm .xterm-scrollable-element>.shadow.left{display:block;top:3px;left:0;height:100%;width:3px;box-shadow:var(--vscode-scrollbar-shadow, #000) 6px 0 6px -6px inset}.xterm .xterm-scrollable-element>.shadow.top-left-corner{display:block;top:0;left:0;height:3px;width:3px}.xterm .xterm-scrollable-element>.shadow.top.left{box-shadow:var(--vscode-scrollbar-shadow, #000) 6px 0 6px -6px inset}.chat-input-outer.svelte-icb1la{background:var(--ctp-crust);border:1px solid var(--ctp-surface1);border-radius:.5rem;box-shadow:0 1px 2px #0000001a;display:flex;flex-direction:column;overflow:visible;position:relative;z-index:30}.chat-textarea.svelte-icb1la{background:transparent;border:none;outline:none;resize:none;color:var(--ctp-text);font-family:var(--ui-font-family);font-size:.8125rem;line-height:1.5;padding:.625rem .875rem;min-height:2.5rem;max-height:12.5rem;overflow-y:auto;width:100%;box-sizing:border-box}.chat-textarea.svelte-icb1la:focus{box-shadow:0 0 0 3px color-mix(in srgb,var(--ctp-peach) 12%,transparent)}.chat-textarea.svelte-icb1la::placeholder{color:var(--ctp-subtext0)}.chat-textarea.svelte-icb1la::-webkit-scrollbar{width:.25rem}.chat-textarea.svelte-icb1la::-webkit-scrollbar-thumb{background:var(--ctp-surface1);border-radius:.25rem}.footer-strip.svelte-icb1la{display:flex;align-items:center;gap:.125rem;padding:.3125rem;border-top:.5px solid var(--ctp-surface1);position:relative}.popup-wrap.svelte-icb1la{position:relative}.footer-btn.svelte-icb1la{background:transparent;border:none;color:var(--ctp-overlay1);cursor:pointer;padding:.25rem;border-radius:.25rem;display:flex;align-items:center;justify-content:center;transition:color .12s,background .12s}.footer-btn.svelte-icb1la:hover{color:var(--ctp-text);background:var(--ctp-surface0)}.footer-btn.active.svelte-icb1la{color:var(--ctp-blue);background:color-mix(in srgb,var(--ctp-blue) 12%,transparent)}.popup-menu.svelte-icb1la{position:absolute;bottom:calc(100% + .375rem);left:0;z-index:100;background:var(--ctp-surface0);border:1px solid var(--ctp-surface1);border-radius:.375rem;box-shadow:0 .5rem 1.25rem color-mix(in srgb,var(--ctp-crust) 70%,transparent);min-width:10rem;padding:.25rem;display:flex;flex-direction:column;gap:.0625rem}.popup-item.svelte-icb1la{width:100%;background:transparent;border:none;color:var(--ctp-text);font-family:var(--ui-font-family);font-size:.8125rem;padding:.35rem .625rem;border-radius:.25rem;text-align:left;cursor:pointer;transition:background .08s,color .08s}.popup-item.svelte-icb1la:hover{background:var(--ctp-surface1)}.popup-slash.svelte-icb1la{font-family:var(--term-font-family);color:var(--ctp-blue)}.popup-slash.svelte-icb1la:hover{color:var(--ctp-text)}.disabled-item.svelte-icb1la{opacity:.4;cursor:not-allowed}.popup-backdrop.svelte-icb1la{position:fixed;top:0;right:0;bottom:0;left:0;z-index:29}.context-indicator.svelte-icb1la{display:flex;align-items:center;gap:.25rem;padding:.125rem .25rem;cursor:default}.ctx-pct.svelte-icb1la{font-size:.6875rem;font-weight:600;min-width:2rem;letter-spacing:-.01em}.model-label.svelte-icb1la{font-size:.85em;color:var(--ctp-overlay1);padding:0 .25rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:8rem}.footer-spacer.svelte-icb1la{flex:1}.footer-divider.svelte-icb1la{width:1px;height:1rem;background:var(--ctp-surface1);margin:0 .25rem;flex-shrink:0}.send-btn.svelte-icb1la{width:26px;height:26px;background:var(--ctp-peach);border:none;border-radius:5px;color:#f5efe6;cursor:pointer;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:filter .12s}.send-btn.svelte-icb1la:hover:not(:disabled){filter:brightness(1.1)}.send-btn.svelte-icb1la:disabled{opacity:.4;cursor:not-allowed}.status-strip.svelte-9vsw7f{display:flex;align-items:center;gap:.375rem;padding:.25rem .75rem;background:var(--ctp-mantle);border-bottom:.5px solid var(--ctp-surface1);font-size:.6875rem;color:var(--ctp-subtext0);flex-shrink:0}.strip-dot.svelte-9vsw7f{width:7px;height:7px;border-radius:50%;flex-shrink:0}.dot-success.svelte-9vsw7f{background:var(--ctp-green)}.dot-progress.svelte-9vsw7f{background:var(--ctp-peach)}.dot-error.svelte-9vsw7f{background:var(--ctp-red)}.strip-label.svelte-9vsw7f{color:var(--ctp-subtext1);font-weight:500}.strip-model.svelte-9vsw7f{color:var(--ctp-overlay1);margin-left:.25rem}.strip-spacer.svelte-9vsw7f{flex:1}.strip-tokens.svelte-9vsw7f{color:var(--ctp-overlay1)}.strip-sep.svelte-9vsw7f{width:1px;height:.75rem;background:var(--ctp-surface1);margin:0 .125rem}.strip-cost.svelte-9vsw7f{color:var(--ctp-text);font-weight:500}.agent-pane.svelte-9vsw7f{display:flex;flex-direction:column;flex:1;min-height:0;overflow:hidden;position:relative;background:var(--ctp-base)}.messages-scroll.svelte-9vsw7f{flex:1;min-height:0;overflow-y:auto;padding:1.25rem 1.25rem 2.5rem;display:flex;flex-direction:column;gap:0}.messages-scroll.svelte-9vsw7f::-webkit-scrollbar{width:.25rem}.messages-scroll.svelte-9vsw7f::-webkit-scrollbar-track{background:transparent}.messages-scroll.svelte-9vsw7f::-webkit-scrollbar-thumb{background:var(--ctp-surface1);border-radius:.25rem}.scroll-fade.svelte-9vsw7f{position:absolute;bottom:0;left:0;right:0;height:150px;background:linear-gradient(to bottom,transparent,var(--ctp-base));pointer-events:none;z-index:10}.floating-input.svelte-9vsw7f{position:absolute;bottom:16px;left:16px;right:16px;z-index:20}.msg-row.svelte-9vsw7f{display:flex;flex-direction:column}@keyframes svelte-9vsw7f-fadeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.msg-animated.svelte-9vsw7f{animation:svelte-9vsw7f-fadeIn .3s ease-in-out}.user-bubble.svelte-9vsw7f{display:inline-block;align-self:flex-start;background:var(--ctp-surface0);border:1px solid var(--ctp-surface1);border-radius:6px;padding:.25rem .375rem;margin:.5rem 0;font-size:.8125rem;line-height:1.5;color:var(--ctp-text);white-space:pre-wrap;word-break:break-word;max-width:85%}.timeline-row.svelte-9vsw7f{position:relative;padding-left:1.875rem}.timeline-line-up.svelte-9vsw7f{position:absolute;left:12px;top:0;height:14px;width:1px;background:var(--ctp-surface0)}.timeline-line-down.svelte-9vsw7f{position:absolute;left:12px;top:22px;bottom:0;width:1px;background:var(--ctp-surface0)}.timeline-diamond.svelte-9vsw7f{position:absolute;left:9px;top:14px;width:7px;height:7px;transform:rotate(45deg);flex-shrink:0}.timeline-content.svelte-9vsw7f{font-size:.8125rem;line-height:1.6;color:var(--ctp-text);padding:.5rem 0;white-space:pre-wrap;word-break:break-word}.tool-box.svelte-9vsw7f{border:.5px solid var(--ctp-surface1);background:var(--ctp-mantle);border-radius:5px;overflow:hidden;margin:.25rem 0;font-size:.8125rem}.tool-result-box.svelte-9vsw7f{border-color:color-mix(in srgb,var(--ctp-teal) 30%,var(--ctp-surface1))}.tool-header.svelte-9vsw7f{display:flex;align-items:center;gap:.5rem;padding:.3rem .5rem;border-bottom:.5px solid var(--ctp-surface1)}.tool-name.svelte-9vsw7f{font-weight:700;font-size:.8125rem;color:var(--ctp-text)}.tool-path.svelte-9vsw7f{font-family:var(--term-font-family);font-size:.8125rem;color:var(--ctp-blue)}.tool-body.svelte-9vsw7f{position:relative;max-height:60px;overflow:hidden}.tool-body.expanded.svelte-9vsw7f{max-height:none}.tool-grid.svelte-9vsw7f{display:grid;grid-template-columns:4rem 1fr;gap:.25rem;padding:.375rem .5rem}.tool-col-label.svelte-9vsw7f{font-family:var(--term-font-family);font-size:.85em;color:var(--ctp-subtext0);opacity:.5;padding-top:.05em;white-space:nowrap}.tool-col-content.svelte-9vsw7f{font-family:var(--term-font-family);font-size:.8125rem;color:var(--ctp-subtext1);white-space:pre-wrap;word-break:break-all;line-height:1.4}.tool-result-content.svelte-9vsw7f{color:var(--ctp-teal)}.tool-fade-overlay.svelte-9vsw7f{position:absolute;bottom:0;left:0;right:0;height:2.5rem;background:linear-gradient(to bottom,transparent,var(--ctp-mantle));display:flex;align-items:flex-end;justify-content:center;padding-bottom:.25rem}.show-more-btn.svelte-9vsw7f,.collapse-btn.svelte-9vsw7f{background:transparent;border:none;color:var(--ctp-blue);font-size:.75rem;cursor:pointer;padding:.125rem .375rem;border-radius:.2rem;font-family:var(--ui-font-family);transition:color .12s}.show-more-btn.svelte-9vsw7f:hover,.collapse-btn.svelte-9vsw7f:hover{color:var(--ctp-lavender)}.collapse-btn.svelte-9vsw7f{display:block;margin:0 auto .25rem}.resize-handle.svelte-9vsw7f{height:4px;background:transparent;cursor:row-resize;flex-shrink:0;transition:background .12s}.resize-handle.svelte-9vsw7f:hover,.resize-handle.dragging.svelte-9vsw7f{background:var(--ctp-surface1)}.terminal-container.svelte-aiqx64{width:100%;height:100%;min-height:10rem}.xterm{padding:.5rem}.term-wrapper.svelte-n9472g{display:flex;flex-direction:column;flex:1;min-height:0}.term-bar.svelte-n9472g{display:flex;align-items:stretch;height:1.75rem;background:var(--ctp-mantle);border-top:1px solid var(--ctp-surface0);flex-shrink:0;z-index:5}.expand-btn.svelte-n9472g{width:1.75rem;flex-shrink:0;background:transparent;border:none;border-right:1px solid var(--ctp-surface0);color:var(--ctp-overlay1);cursor:pointer;display:flex;align-items:center;justify-content:center;padding:0}.expand-btn.svelte-n9472g:hover{color:var(--ctp-text)}.expand-btn.svelte-n9472g svg:where(.svelte-n9472g){width:.75rem;height:.75rem;transition:transform .15s}.chevron.open.svelte-n9472g{transform:rotate(90deg)}.term-tabs.svelte-n9472g{display:flex;align-items:stretch;flex:1;overflow-x:auto;scrollbar-width:none;gap:.125rem;padding:0 .25rem}.term-tabs.svelte-n9472g::-webkit-scrollbar{display:none}.term-tab.svelte-n9472g{display:flex;align-items:center;gap:.25rem;padding:0 .5rem;background:transparent;border:none;border-bottom:2px solid transparent;color:var(--ctp-subtext0);font-size:.6875rem;cursor:pointer;white-space:nowrap;margin-bottom:-1px;font-family:inherit}.term-tab.svelte-n9472g:hover{color:var(--ctp-text)}.term-tab.active.svelte-n9472g{color:var(--ctp-text);border-bottom-color:var(--accent)}.tab-label.svelte-n9472g{pointer-events:none}.tab-close.svelte-n9472g{width:.875rem;height:.875rem;border-radius:.2rem;font-size:.6875rem;color:var(--ctp-overlay0);cursor:pointer;display:flex;align-items:center;justify-content:center;background:transparent;border:none;padding:0;font-family:inherit;line-height:1}.tab-close.svelte-n9472g:hover{background:var(--ctp-surface1);color:var(--ctp-red)}.tab-add.svelte-n9472g{align-self:center;width:1.25rem;height:1.25rem;flex-shrink:0;background:transparent;border:1px solid var(--ctp-surface1);border-radius:.2rem;color:var(--ctp-overlay1);font-size:.75rem;cursor:pointer;display:flex;align-items:center;justify-content:center;margin-left:.125rem}.tab-add.svelte-n9472g:hover{background:var(--ctp-surface0);color:var(--ctp-text)}.term-panes.svelte-n9472g{flex:1;min-height:8rem;position:relative}.term-pane.svelte-n9472g{position:absolute;top:0;right:0;bottom:0;left:0;flex-direction:column}.file-browser.svelte-ly4nw6{display:flex;flex-direction:column;height:100%;overflow:hidden;font-size:.8125rem}.fb-tree.svelte-ly4nw6{flex:1;overflow-y:auto;padding:.25rem 0}.fb-tree.svelte-ly4nw6::-webkit-scrollbar{width:.25rem}.fb-tree.svelte-ly4nw6::-webkit-scrollbar-track{background:transparent}.fb-tree.svelte-ly4nw6::-webkit-scrollbar-thumb{background:var(--ctp-surface1);border-radius:.25rem}.fb-row.svelte-ly4nw6{display:flex;align-items:center;gap:.3rem;width:100%;background:transparent;border:none;color:var(--ctp-text);font-family:var(--ui-font-family);font-size:.8125rem;padding-top:.2rem;padding-bottom:.2rem;padding-right:.5rem;cursor:pointer;text-align:left;white-space:nowrap;transition:background .08s}.fb-row.svelte-ly4nw6:hover{background:var(--ctp-surface0)}.fb-file.selected.svelte-ly4nw6{background:color-mix(in srgb,var(--accent, var(--ctp-mauve)) 15%,transparent);color:var(--accent, var(--ctp-mauve))}.fb-chevron.svelte-ly4nw6{display:inline-block;width:.875rem;font-size:.875rem;color:var(--ctp-overlay1);transition:transform .12s;transform:rotate(0);flex-shrink:0;line-height:1}.fb-chevron.open.svelte-ly4nw6{transform:rotate(90deg)}.fb-icon.svelte-ly4nw6{flex-shrink:0;font-style:normal}.file-type.svelte-ly4nw6{font-size:.6875rem;color:var(--ctp-overlay1);font-family:var(--term-font-family)}.fb-name.svelte-ly4nw6{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.fb-dir.svelte-ly4nw6 .fb-name:where(.svelte-ly4nw6){color:var(--ctp-subtext1);font-weight:500}.fb-preview.svelte-ly4nw6{border-top:1px solid var(--ctp-surface0);padding:.5rem .75rem;background:var(--ctp-mantle);flex-shrink:0}.fb-preview-label.svelte-ly4nw6{font-size:.75rem;color:var(--ctp-subtext0);font-family:var(--term-font-family);margin-bottom:.2rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.fb-preview-content.svelte-ly4nw6{font-size:.75rem;color:var(--ctp-overlay0);font-style:italic}.memory-tab.svelte-1k7ge8m{display:flex;flex-direction:column;height:100%;overflow:hidden}.memory-header.svelte-1k7ge8m{display:flex;align-items:center;justify-content:space-between;padding:.375rem .625rem;border-bottom:1px solid var(--ctp-surface0);background:var(--ctp-mantle);flex-shrink:0;font-size:.75rem}.memory-count.svelte-1k7ge8m{color:var(--ctp-text);font-weight:500}.memory-hint.svelte-1k7ge8m{color:var(--ctp-overlay0);font-style:italic}.memory-list.svelte-1k7ge8m{flex:1;overflow-y:auto;padding:.375rem;display:flex;flex-direction:column;gap:.375rem}.memory-list.svelte-1k7ge8m::-webkit-scrollbar{width:.25rem}.memory-list.svelte-1k7ge8m::-webkit-scrollbar-track{background:transparent}.memory-list.svelte-1k7ge8m::-webkit-scrollbar-thumb{background:var(--ctp-surface1);border-radius:.25rem}.memory-card.svelte-1k7ge8m{background:var(--ctp-surface0);border:1px solid var(--ctp-surface1);border-radius:.375rem;padding:.5rem .625rem;display:flex;flex-direction:column;gap:.3rem;transition:border-color .12s}.memory-card.svelte-1k7ge8m:hover{border-color:var(--ctp-surface2)}.memory-card-top.svelte-1k7ge8m{display:flex;align-items:flex-start;gap:.5rem}.memory-title.svelte-1k7ge8m{flex:1;font-size:.8125rem;font-weight:600;color:var(--ctp-text);line-height:1.3}.trust-badge.svelte-1k7ge8m{flex-shrink:0;padding:.1rem .35rem;border-radius:.25rem;font-size:.6rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em}.trust-human.svelte-1k7ge8m{background:color-mix(in srgb,var(--ctp-green) 15%,transparent);color:var(--ctp-green)}.trust-agent.svelte-1k7ge8m{background:color-mix(in srgb,var(--ctp-blue) 15%,transparent);color:var(--ctp-blue)}.trust-auto.svelte-1k7ge8m{background:color-mix(in srgb,var(--ctp-overlay1) 15%,transparent);color:var(--ctp-overlay1)}.memory-body.svelte-1k7ge8m{margin:0;font-size:.75rem;color:var(--ctp-subtext1);line-height:1.45;font-family:var(--ui-font-family)}.memory-footer.svelte-1k7ge8m{display:flex;align-items:center;gap:.5rem;margin-top:.1rem}.memory-tags.svelte-1k7ge8m{display:flex;flex-wrap:wrap;gap:.25rem;flex:1}.tag.svelte-1k7ge8m{padding:.05rem .3rem;background:var(--ctp-surface1);border-radius:.2rem;font-size:.625rem;color:var(--ctp-overlay1);font-family:var(--term-font-family)}.memory-date.svelte-1k7ge8m{font-size:.625rem;color:var(--ctp-overlay0);white-space:nowrap;flex-shrink:0}.project-card.svelte-1aqfagj{background:var(--ctp-base);border:1px solid var(--ctp-surface0);border-radius:.5rem;display:flex;flex-direction:column;overflow:hidden;min-height:0;position:relative}.project-card.svelte-1aqfagj:before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:var(--accent, var(--ctp-mauve));border-radius:.5rem 0 0 .5rem}.project-header.svelte-1aqfagj{height:2.5rem;background:var(--ctp-mantle);border-bottom:1px solid var(--ctp-surface0);display:flex;align-items:center;gap:.375rem;padding:0 .625rem 0 .875rem;flex-shrink:0;overflow:hidden}.status-dot-wrap.svelte-1aqfagj{flex-shrink:0;width:.625rem;height:.625rem;position:relative}.status-dot.svelte-1aqfagj{width:100%;height:100%;border-radius:50%;background:var(--ctp-overlay0)}.status-dot.running.svelte-1aqfagj{background:var(--ctp-green)}.status-dot.idle.svelte-1aqfagj{background:var(--ctp-overlay1)}.status-dot.stalled.svelte-1aqfagj{background:var(--ctp-peach)}.status-dot.blink-off.svelte-1aqfagj{opacity:.3}.project-name.svelte-1aqfagj{font-weight:600;color:var(--ctp-text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex-shrink:1;min-width:0}.project-cwd.svelte-1aqfagj{font-size:.6875rem;color:var(--ctp-subtext0);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;direction:rtl;max-width:8rem;flex-shrink:2}.provider-badge.svelte-1aqfagj,.profile-badge.svelte-1aqfagj,.ctx-badge.svelte-1aqfagj,.burn-badge.svelte-1aqfagj{flex-shrink:0;padding:.1rem .375rem;border-radius:.25rem;font-size:.6rem;font-weight:600;text-transform:uppercase;letter-spacing:.03em;white-space:nowrap}.provider-badge.svelte-1aqfagj{background:color-mix(in srgb,var(--accent, var(--ctp-mauve)) 15%,transparent);color:var(--accent, var(--ctp-mauve))}.profile-badge.svelte-1aqfagj{background:color-mix(in srgb,var(--ctp-blue) 12%,transparent);color:var(--ctp-blue)}.ctx-badge.svelte-1aqfagj{background:color-mix(in srgb,var(--ctp-yellow) 15%,transparent);color:var(--ctp-yellow)}.ctx-badge.ctx-warn.svelte-1aqfagj{color:var(--ctp-peach);background:color-mix(in srgb,var(--ctp-peach) 15%,transparent)}.ctx-badge.ctx-danger.svelte-1aqfagj{color:var(--ctp-red);background:color-mix(in srgb,var(--ctp-red) 15%,transparent)}.burn-badge.svelte-1aqfagj{background:color-mix(in srgb,var(--ctp-peach) 10%,transparent);color:var(--ctp-peach)}.tab-bar.svelte-1aqfagj{height:2rem;background:var(--ctp-mantle);border-bottom:1px solid var(--ctp-surface0);display:flex;align-items:stretch;flex-shrink:0;padding:0 .25rem;gap:.125rem;overflow-x:auto;scrollbar-width:none}.tab-bar.svelte-1aqfagj::-webkit-scrollbar{display:none}.tab-btn.svelte-1aqfagj{padding:0 .625rem;background:transparent;border:none;border-bottom:2px solid transparent;color:var(--ctp-subtext0);font-family:var(--ui-font-family);font-size:.8125rem;cursor:pointer;white-space:nowrap;transition:color .12s,border-color .12s;margin-bottom:-1px;flex-shrink:0}.tab-btn.svelte-1aqfagj:hover{color:var(--ctp-text)}.tab-btn.active.svelte-1aqfagj{color:var(--ctp-text);border-bottom-color:var(--accent, var(--ctp-mauve))}.tab-content.svelte-1aqfagj{flex:1;min-height:0;overflow:hidden;display:flex;flex-direction:column}.tab-pane.svelte-1aqfagj{flex:1;min-height:0;flex-direction:column;overflow:hidden}.placeholder-pane.svelte-1aqfagj{flex:1;display:flex;align-items:center;justify-content:center;color:var(--ctp-overlay0);font-size:.8125rem;font-style:italic}.context-pane.svelte-1aqfagj{display:flex;flex-direction:column;gap:.75rem;padding:.625rem;overflow-y:auto;flex:1}.ctx-stats-row.svelte-1aqfagj{display:flex;gap:1rem}.ctx-stat.svelte-1aqfagj{display:flex;flex-direction:column;gap:.125rem}.ctx-stat-label.svelte-1aqfagj{font-size:.625rem;text-transform:uppercase;letter-spacing:.05em;color:var(--ctp-overlay0);font-weight:600}.ctx-stat-value.svelte-1aqfagj{font-size:.875rem;font-weight:600;color:var(--ctp-text);font-family:var(--term-font-family)}.ctx-meter-wrap.svelte-1aqfagj{height:.375rem;background:var(--ctp-surface0);border-radius:.25rem;overflow:hidden}.ctx-meter-bar.svelte-1aqfagj{height:100%;background:var(--ctp-teal);border-radius:.25rem;transition:width .3s}.ctx-meter-bar.meter-warn.svelte-1aqfagj{background:var(--ctp-peach)}.ctx-meter-bar.meter-danger.svelte-1aqfagj{background:var(--ctp-red)}.ctx-section-label.svelte-1aqfagj{font-size:.625rem;text-transform:uppercase;letter-spacing:.05em;color:var(--ctp-overlay0);font-weight:600;margin-bottom:.25rem}.ctx-turn-list.svelte-1aqfagj{display:flex;flex-direction:column;gap:.25rem}.ctx-turn-row.svelte-1aqfagj{display:flex;align-items:baseline;gap:.5rem;font-size:.75rem}.ctx-turn-role.svelte-1aqfagj{flex-shrink:0;font-size:.625rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;min-width:4.5rem}.ctx-role-user.svelte-1aqfagj{color:var(--ctp-blue)}.ctx-role-assistant.svelte-1aqfagj{color:var(--ctp-mauve)}.ctx-role-tool-call.svelte-1aqfagj{color:var(--ctp-peach)}.ctx-role-tool-result.svelte-1aqfagj{color:var(--ctp-teal)}.ctx-turn-preview.svelte-1aqfagj{color:var(--ctp-subtext0);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1}.section.svelte-1901l6h{display:flex;flex-direction:column;gap:.5rem}.sh.svelte-1901l6h{margin:.375rem 0 .125rem;font-size:.6875rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--ctp-overlay0)}.field.svelte-1901l6h{position:relative}.row.svelte-1901l6h{display:flex;align-items:center;gap:.5rem}.flex1.svelte-1901l6h{flex:1;min-width:0}.dd-wrap.svelte-1901l6h{position:relative}.dd-btn.svelte-1901l6h{width:100%;display:flex;align-items:center;justify-content:space-between;gap:.375rem;background:var(--ctp-surface0);border:1px solid var(--ctp-surface1);border-radius:.25rem;padding:.3rem .5rem;color:var(--ctp-text);font-family:var(--ui-font-family);font-size:.8125rem;cursor:pointer;text-align:left}.dd-btn.svelte-1901l6h:hover{border-color:var(--ctp-surface2)}.chev.svelte-1901l6h{width:.75rem;height:.75rem;color:var(--ctp-overlay1);transition:transform .15s;flex-shrink:0}.chev.open.svelte-1901l6h{transform:rotate(180deg)}.dd-list.svelte-1901l6h{position:absolute;top:calc(100% + .125rem);left:0;right:0;z-index:50;list-style:none;margin:0;padding:.25rem;background:var(--ctp-mantle);border:1px solid var(--ctp-surface1);border-radius:.3rem;max-height:12rem;overflow-y:auto;box-shadow:0 .5rem 1rem color-mix(in srgb,var(--ctp-crust) 60%,transparent)}.dd-item.svelte-1901l6h{padding:.3rem .5rem;border-radius:.2rem;font-size:.8125rem;color:var(--ctp-subtext1);cursor:pointer;outline:none;list-style:none}.dd-item.svelte-1901l6h:hover,.dd-item.svelte-1901l6h:focus{background:var(--ctp-surface0);color:var(--ctp-text)}.dd-item.sel.svelte-1901l6h{background:color-mix(in srgb,var(--ctp-mauve) 15%,transparent);color:var(--ctp-mauve);font-weight:500}.stepper.svelte-1901l6h{display:flex;align-items:center;gap:.25rem;flex-shrink:0}.stepper.svelte-1901l6h button:where(.svelte-1901l6h){width:1.375rem;height:1.375rem;background:var(--ctp-surface0);border:1px solid var(--ctp-surface1);border-radius:.2rem;color:var(--ctp-text);font-size:.875rem;cursor:pointer;display:flex;align-items:center;justify-content:center}.stepper.svelte-1901l6h button:where(.svelte-1901l6h):hover{background:var(--ctp-surface1)}.stepper.svelte-1901l6h span:where(.svelte-1901l6h){font-size:.8125rem;color:var(--ctp-text);min-width:2.5rem;text-align:center}.seg.svelte-1901l6h{display:flex;border-radius:.25rem;overflow:hidden;border:1px solid var(--ctp-surface1)}.seg.svelte-1901l6h button:where(.svelte-1901l6h){flex:1;padding:.25rem .5rem;background:var(--ctp-surface0);border:none;color:var(--ctp-overlay1);font-size:.75rem;cursor:pointer}.seg.svelte-1901l6h button:where(.svelte-1901l6h):hover{background:var(--ctp-surface1);color:var(--ctp-subtext1)}.seg.svelte-1901l6h button.active:where(.svelte-1901l6h){background:var(--ctp-blue);color:var(--ctp-base)}.toggle-row.svelte-1901l6h{display:flex;align-items:center;gap:.375rem;font-size:.8125rem;color:var(--ctp-subtext0);cursor:pointer}.toggle.svelte-1901l6h{padding:.1875rem .5rem;background:var(--ctp-surface0);border:none;border-radius:.2rem;color:var(--ctp-subtext0);cursor:pointer;font-size:.75rem}.toggle.on.svelte-1901l6h{background:var(--ctp-green);color:var(--ctp-base)}.num-in.svelte-1901l6h{width:5rem;padding:.3rem .5rem;background:var(--ctp-surface0);border:1px solid var(--ctp-surface1);border-radius:.25rem;color:var(--ctp-text);font-size:.8125rem}.num-in.svelte-1901l6h:focus{outline:none;border-color:var(--ctp-blue)}.hint.svelte-1901l6h{font-size:.6875rem;color:var(--ctp-overlay0)}.section.svelte-1m5vtsu{display:flex;flex-direction:column;gap:.5rem}.sh.svelte-1m5vtsu{margin:.125rem 0;font-size:.6875rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--ctp-overlay0)}.field.svelte-1m5vtsu{display:flex;flex-direction:column;gap:.2rem}.lbl.svelte-1m5vtsu{font-size:.75rem;color:var(--ctp-subtext0)}.text-in.svelte-1m5vtsu{padding:.3rem .5rem;background:var(--ctp-surface0);border:1px solid var(--ctp-surface1);border-radius:.25rem;color:var(--ctp-text);font-size:.8125rem;font-family:var(--ui-font-family)}.text-in.svelte-1m5vtsu:focus{outline:none;border-color:var(--ctp-blue)}.prompt.svelte-1m5vtsu{padding:.375rem .5rem;background:var(--ctp-surface0);border:1px solid var(--ctp-surface1);border-radius:.25rem;color:var(--ctp-text);font-size:.8rem;font-family:var(--term-font-family, monospace);resize:vertical;min-height:3rem;line-height:1.4}.prompt.svelte-1m5vtsu:focus{outline:none;border-color:var(--ctp-blue)}.prompt.svelte-1m5vtsu::placeholder{color:var(--ctp-overlay0)}.seg.svelte-1m5vtsu{display:flex;border-radius:.25rem;overflow:hidden;border:1px solid var(--ctp-surface1)}.seg.svelte-1m5vtsu button:where(.svelte-1m5vtsu){flex:1;padding:.25rem .5rem;background:var(--ctp-surface0);border:none;color:var(--ctp-overlay1);font-size:.75rem;cursor:pointer;font-family:var(--ui-font-family)}.seg.svelte-1m5vtsu button:where(.svelte-1m5vtsu):not(:last-child){border-right:1px solid var(--ctp-surface1)}.seg.svelte-1m5vtsu button:where(.svelte-1m5vtsu):hover{background:var(--ctp-surface1);color:var(--ctp-subtext1)}.seg.svelte-1m5vtsu button.active:where(.svelte-1m5vtsu){background:color-mix(in srgb,var(--ctp-blue) 20%,var(--ctp-surface0));color:var(--ctp-blue);font-weight:600}.prov-list.svelte-1m5vtsu{display:flex;flex-direction:column;gap:.3rem}.prov-panel.svelte-1m5vtsu{background:var(--ctp-surface0);border:1px solid var(--ctp-surface1);border-radius:.3rem;overflow:hidden;transition:opacity .15s}.prov-panel.disabled.svelte-1m5vtsu{opacity:.5}.prov-hdr.svelte-1m5vtsu{display:flex;align-items:center;gap:.5rem;width:100%;padding:.45rem .625rem;background:transparent;border:none;color:var(--ctp-text);cursor:pointer;text-align:left;font-size:.8rem;font-family:var(--ui-font-family)}.prov-hdr.svelte-1m5vtsu:hover{background:var(--ctp-base)}.prov-name.svelte-1m5vtsu{font-weight:600;white-space:nowrap}.prov-desc.svelte-1m5vtsu{flex:1;color:var(--ctp-overlay0);font-size:.7rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.prov-chev.svelte-1m5vtsu{color:var(--ctp-overlay0);font-size:.7rem;flex-shrink:0}.prov-body.svelte-1m5vtsu{padding:.5rem .625rem;border-top:1px solid var(--ctp-surface1);display:flex;flex-direction:column;gap:.5rem}.toggle-row.svelte-1m5vtsu{display:flex;align-items:center;justify-content:space-between;cursor:pointer}.toggle.svelte-1m5vtsu{position:relative;width:2rem;height:1.125rem;border:none;border-radius:.5625rem;background:var(--ctp-surface1);cursor:pointer;transition:background .2s;padding:0;flex-shrink:0}.toggle.on.svelte-1m5vtsu{background:var(--ctp-blue)}.thumb.svelte-1m5vtsu{position:absolute;top:.125rem;left:.125rem;width:.875rem;height:.875rem;border-radius:50%;background:var(--ctp-text);transition:transform .2s}.toggle.on.svelte-1m5vtsu .thumb:where(.svelte-1m5vtsu){transform:translate(.875rem)}.caps.svelte-1m5vtsu{display:flex;flex-wrap:wrap;gap:.25rem}.cap.svelte-1m5vtsu{padding:.125rem .5rem;background:color-mix(in srgb,var(--ctp-blue) 10%,transparent);color:var(--ctp-blue);border-radius:.75rem;font-size:.65rem;font-weight:500}.section.svelte-rv3lwt{display:flex;flex-direction:column;gap:.5rem}.sh.svelte-rv3lwt{margin:.375rem 0 .125rem;font-size:.6875rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--ctp-overlay0)}.keyring-status.svelte-rv3lwt{display:flex;align-items:center;gap:.5rem;font-size:.8rem;padding:.375rem .5rem;border-radius:.25rem;background:var(--ctp-surface0)}.ks-dot.svelte-rv3lwt{width:.5rem;height:.5rem;border-radius:50%;flex-shrink:0;background:var(--ctp-overlay0)}.keyring-status.ok.svelte-rv3lwt .ks-dot:where(.svelte-rv3lwt){background:var(--ctp-green)}.keyring-status.unavail.svelte-rv3lwt .ks-dot:where(.svelte-rv3lwt){background:var(--ctp-peach)}.keyring-status.ok.svelte-rv3lwt{color:var(--ctp-subtext1)}.keyring-status.unavail.svelte-rv3lwt{color:var(--ctp-peach)}.empty-hint.svelte-rv3lwt{font-size:.8rem;color:var(--ctp-overlay0);margin:0;font-style:italic}.secret-list.svelte-rv3lwt{display:flex;flex-direction:column;gap:.25rem}.secret-row.svelte-rv3lwt{display:flex;align-items:center;gap:.375rem;padding:.3rem .5rem;background:var(--ctp-surface0);border:1px solid var(--ctp-surface1);border-radius:.25rem}.secret-key.svelte-rv3lwt{font-size:.8rem;color:var(--ctp-text);font-weight:500;flex:1}.secret-val.svelte-rv3lwt{font-family:var(--term-font-family, monospace);font-size:.75rem;color:var(--ctp-overlay1);min-width:7rem}.add-secret.svelte-rv3lwt,.add-policy.svelte-rv3lwt{display:flex;align-items:center;gap:.375rem;margin-top:.25rem}.flex1.svelte-rv3lwt{flex:1;min-width:0}.dd-wrap.svelte-rv3lwt{position:relative;flex-shrink:0}.dd-btn.svelte-rv3lwt{display:flex;align-items:center;justify-content:space-between;gap:.25rem;background:var(--ctp-surface0);border:1px solid var(--ctp-surface1);border-radius:.25rem;color:var(--ctp-subtext1);font-family:var(--ui-font-family);cursor:pointer;white-space:nowrap}.dd-btn.small.svelte-rv3lwt{padding:.275rem .5rem;font-size:.75rem;min-width:8rem}.chev.svelte-rv3lwt{width:.625rem;height:.625rem;color:var(--ctp-overlay1);transition:transform .15s}.chev.open.svelte-rv3lwt{transform:rotate(180deg)}.dd-list.svelte-rv3lwt{position:absolute;top:calc(100% + .125rem);left:0;z-index:50;list-style:none;margin:0;padding:.2rem;background:var(--ctp-mantle);border:1px solid var(--ctp-surface1);border-radius:.25rem;min-width:10rem;box-shadow:0 .5rem 1rem color-mix(in srgb,var(--ctp-crust) 60%,transparent)}.dd-item.svelte-rv3lwt{padding:.3rem .5rem;border-radius:.2rem;font-size:.8rem;color:var(--ctp-subtext1);cursor:pointer;outline:none}.dd-item.svelte-rv3lwt:hover,.dd-item.svelte-rv3lwt:focus{background:var(--ctp-surface0);color:var(--ctp-text)}.disabled-item.svelte-rv3lwt{opacity:.4;cursor:not-allowed}.text-in.svelte-rv3lwt{padding:.275rem .5rem;background:var(--ctp-surface0);border:1px solid var(--ctp-surface1);border-radius:.25rem;color:var(--ctp-text);font-size:.8rem;font-family:var(--ui-font-family)}.text-in.svelte-rv3lwt:focus{outline:none;border-color:var(--ctp-blue)}.save-btn.svelte-rv3lwt{padding:.275rem .625rem;background:var(--ctp-blue);border:none;border-radius:.25rem;color:var(--ctp-base);font-size:.75rem;font-weight:600;cursor:pointer;font-family:var(--ui-font-family);flex-shrink:0}.save-btn.svelte-rv3lwt:hover:not(:disabled){filter:brightness(1.1)}.save-btn.svelte-rv3lwt:disabled{opacity:.4;cursor:not-allowed}.policy-list.svelte-rv3lwt{display:flex;flex-direction:column;gap:.25rem}.policy-row.svelte-rv3lwt{display:flex;align-items:center;gap:.375rem;padding:.3rem .5rem;background:var(--ctp-surface0);border:1px solid var(--ctp-surface1);border-radius:.25rem}.pol-pattern.svelte-rv3lwt{font-family:var(--term-font-family, monospace);font-size:.8rem;color:var(--ctp-text);flex:1}.pol-action.svelte-rv3lwt{font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;padding:.1rem .375rem;border-radius:.2rem}.pol-action.block.svelte-rv3lwt{background:color-mix(in srgb,var(--ctp-red) 15%,transparent);color:var(--ctp-red)}.pol-action.warn.svelte-rv3lwt{background:color-mix(in srgb,var(--ctp-yellow) 15%,transparent);color:var(--ctp-yellow)}.icon-btn.svelte-rv3lwt{background:none;border:none;color:var(--ctp-overlay0);cursor:pointer;font-size:.85rem;padding:.2rem;border-radius:.15rem}.icon-btn.svelte-rv3lwt:hover{color:var(--ctp-text);background:var(--ctp-surface1)}.icon-btn.danger.svelte-rv3lwt:hover{color:var(--ctp-red)}.seg.svelte-rv3lwt{display:flex;border-radius:.25rem;overflow:hidden;border:1px solid var(--ctp-surface1);flex-shrink:0}.seg.svelte-rv3lwt button:where(.svelte-rv3lwt){padding:.25rem .5rem;background:var(--ctp-surface0);border:none;color:var(--ctp-overlay1);font-size:.75rem;cursor:pointer;font-family:var(--ui-font-family)}.seg.svelte-rv3lwt button:where(.svelte-rv3lwt):not(:last-child){border-right:1px solid var(--ctp-surface1)}.seg.svelte-rv3lwt button.active:where(.svelte-rv3lwt){background:color-mix(in srgb,var(--ctp-blue) 20%,var(--ctp-surface0));color:var(--ctp-blue);font-weight:600}.section.svelte-15znwuq{display:flex;flex-direction:column;gap:.4rem}.sh.svelte-15znwuq{margin:.125rem 0;font-size:.6875rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--ctp-overlay0)}.lbl.svelte-15znwuq{font-size:.8rem;color:var(--ctp-subtext0)}.proj-tabs.svelte-15znwuq{display:flex;gap:.25rem;flex-wrap:wrap}.proj-tab.svelte-15znwuq{padding:.25rem .625rem;background:var(--ctp-surface0);border:1px solid var(--ctp-surface1);border-radius:.25rem;color:var(--ctp-subtext0);font-size:.75rem;cursor:pointer;font-family:var(--ui-font-family)}.proj-tab.svelte-15znwuq:hover{color:var(--ctp-text);border-color:var(--ctp-surface2)}.proj-tab.active.svelte-15znwuq{border-color:var(--ctp-mauve);color:var(--ctp-mauve);background:color-mix(in srgb,var(--ctp-mauve) 10%,var(--ctp-surface0))}.text-in.svelte-15znwuq{padding:.3rem .5rem;background:var(--ctp-surface0);border:1px solid var(--ctp-surface1);border-radius:.25rem;color:var(--ctp-text);font-size:.8125rem;font-family:var(--ui-font-family)}.text-in.svelte-15znwuq:focus{outline:none;border-color:var(--ctp-blue)}.prompt.svelte-15znwuq{padding:.375rem .5rem;background:var(--ctp-surface0);border:1px solid var(--ctp-surface1);border-radius:.25rem;color:var(--ctp-text);font-size:.8rem;font-family:var(--term-font-family, monospace);resize:vertical;line-height:1.4}.prompt.svelte-15znwuq:focus{outline:none;border-color:var(--ctp-blue)}.prompt.svelte-15znwuq::placeholder{color:var(--ctp-overlay0)}.seg.svelte-15znwuq{display:flex;border-radius:.25rem;overflow:hidden;border:1px solid var(--ctp-surface1)}.seg.svelte-15znwuq button:where(.svelte-15znwuq){flex:1;padding:.25rem .375rem;background:var(--ctp-surface0);border:none;color:var(--ctp-overlay1);font-size:.75rem;cursor:pointer;font-family:var(--ui-font-family)}.seg.svelte-15znwuq button:where(.svelte-15znwuq):not(:last-child){border-right:1px solid var(--ctp-surface1)}.seg.svelte-15znwuq button:where(.svelte-15znwuq):hover{background:var(--ctp-surface1);color:var(--ctp-subtext1)}.seg.svelte-15znwuq button.active:where(.svelte-15znwuq){background:color-mix(in srgb,var(--ctp-blue) 20%,var(--ctp-surface0));color:var(--ctp-blue);font-weight:600}.toggle-fields.svelte-15znwuq{display:flex;flex-direction:column;gap:.375rem}.toggle-row.svelte-15znwuq{display:flex;align-items:center;justify-content:space-between;cursor:pointer;padding:.25rem 0}.toggle.svelte-15znwuq{position:relative;width:2rem;height:1.125rem;border:none;border-radius:.5625rem;background:var(--ctp-surface1);cursor:pointer;transition:background .2s;padding:0;flex-shrink:0}.toggle.on.svelte-15znwuq{background:var(--ctp-blue)}.thumb.svelte-15znwuq{position:absolute;top:.125rem;left:.125rem;width:.875rem;height:.875rem;border-radius:50%;background:var(--ctp-text);transition:transform .2s;display:block}.toggle.on.svelte-15znwuq .thumb:where(.svelte-15znwuq){transform:translate(.875rem)}.slider-row.svelte-15znwuq{display:flex;align-items:center;gap:.625rem}.slider-row.svelte-15znwuq input[type=range]:where(.svelte-15znwuq){flex:1;accent-color:var(--ctp-blue)}.slider-val.svelte-15znwuq{font-size:.8rem;color:var(--ctp-text);min-width:3.5rem;text-align:right}.section.svelte-r8m6y{display:flex;flex-direction:column;gap:.5rem}.sh.svelte-r8m6y{margin:.125rem 0;font-size:.6875rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--ctp-overlay0)}.lbl.svelte-r8m6y{font-size:.8rem;color:var(--ctp-subtext0)}.desc.svelte-r8m6y{font-size:.75rem;color:var(--ctp-overlay1);margin:0;font-style:italic}.seg.svelte-r8m6y{display:flex;border-radius:.25rem;overflow:hidden;border:1px solid var(--ctp-surface1)}.seg.svelte-r8m6y button:where(.svelte-r8m6y){flex:1;padding:.25rem .5rem;background:var(--ctp-surface0);border:none;color:var(--ctp-overlay1);font-size:.75rem;cursor:pointer;font-family:var(--ui-font-family)}.seg.svelte-r8m6y button:where(.svelte-r8m6y):not(:last-child){border-right:1px solid var(--ctp-surface1)}.seg.svelte-r8m6y button:where(.svelte-r8m6y):hover{background:var(--ctp-surface1);color:var(--ctp-subtext1)}.seg.svelte-r8m6y button.active:where(.svelte-r8m6y){background:color-mix(in srgb,var(--ctp-blue) 20%,var(--ctp-surface0));color:var(--ctp-blue);font-weight:600}.slider-row.svelte-r8m6y{display:flex;align-items:center;gap:.5rem}.slider-row.svelte-r8m6y input[type=range]:where(.svelte-r8m6y){flex:1;accent-color:var(--ctp-blue)}.slider-val.svelte-r8m6y{font-size:.8rem;color:var(--ctp-text);min-width:3rem;text-align:right}.toggle-row.svelte-r8m6y{display:flex;align-items:center;justify-content:space-between;cursor:pointer;padding:.125rem 0}.toggle.svelte-r8m6y{position:relative;width:2rem;height:1.125rem;border:none;border-radius:.5625rem;background:var(--ctp-surface1);cursor:pointer;transition:background .2s;padding:0;flex-shrink:0}.toggle.on.svelte-r8m6y{background:var(--ctp-blue)}.thumb.svelte-r8m6y{position:absolute;top:.125rem;left:.125rem;width:.875rem;height:.875rem;border-radius:50%;background:var(--ctp-text);transition:transform .2s;display:block}.toggle.on.svelte-r8m6y .thumb:where(.svelte-r8m6y){transform:translate(.875rem)}.notif-types.svelte-r8m6y{display:flex;flex-wrap:wrap;gap:.375rem}.notif-chip.svelte-r8m6y{display:flex;align-items:center;gap:.25rem;padding:.2rem .5rem;border-radius:.25rem;font-size:.75rem;cursor:pointer;background:var(--ctp-surface0);border:1px solid var(--ctp-surface1);color:var(--ctp-subtext0);transition:all .12s}.notif-chip.svelte-r8m6y input:where(.svelte-r8m6y){display:none}.notif-chip.active.svelte-r8m6y{background:color-mix(in srgb,var(--ctp-blue) 15%,var(--ctp-surface0));border-color:var(--ctp-blue);color:var(--ctp-blue)}.notif-chip.svelte-r8m6y:hover{border-color:var(--ctp-surface2);color:var(--ctp-subtext1)}.section.svelte-1ovc5q5{display:flex;flex-direction:column;gap:.5rem}.sh.svelte-1ovc5q5{margin:.125rem 0;font-size:.6875rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--ctp-overlay0)}.lbl.svelte-1ovc5q5{font-size:.75rem;color:var(--ctp-subtext0)}.field.svelte-1ovc5q5{display:flex;flex-direction:column;gap:.2rem}.row.svelte-1ovc5q5{flex-direction:row;align-items:center;gap:.5rem}.text-in.svelte-1ovc5q5{padding:.3rem .5rem;background:var(--ctp-surface0);border:1px solid var(--ctp-surface1);border-radius:.25rem;color:var(--ctp-text);font-size:.8125rem;font-family:var(--ui-font-family)}.text-in.svelte-1ovc5q5:focus{outline:none;border-color:var(--ctp-blue)}.prompt.svelte-1ovc5q5{padding:.375rem .5rem;background:var(--ctp-surface0);border:1px solid var(--ctp-surface1);border-radius:.25rem;color:var(--ctp-text);font-size:.8rem;font-family:var(--term-font-family, monospace);resize:vertical;line-height:1.4}.prompt.svelte-1ovc5q5:focus{outline:none;border-color:var(--ctp-blue)}.prompt.svelte-1ovc5q5::placeholder{color:var(--ctp-overlay0)}.num-in.svelte-1ovc5q5{width:4rem;padding:.3rem .5rem;background:var(--ctp-surface0);border:1px solid var(--ctp-surface1);border-radius:.25rem;color:var(--ctp-text);font-size:.8125rem;-moz-appearance:textfield}.num-in.svelte-1ovc5q5::-webkit-inner-spin-button,.num-in.svelte-1ovc5q5::-webkit-outer-spin-button{-webkit-appearance:none}.num-in.svelte-1ovc5q5:focus{outline:none;border-color:var(--ctp-blue)}.unit.svelte-1ovc5q5{font-size:.75rem;color:var(--ctp-overlay0)}.seg.svelte-1ovc5q5{display:flex;border-radius:.25rem;overflow:hidden;border:1px solid var(--ctp-surface1)}.seg.svelte-1ovc5q5 button:where(.svelte-1ovc5q5){flex:1;padding:.25rem .375rem;background:var(--ctp-surface0);border:none;color:var(--ctp-overlay1);font-size:.7rem;cursor:pointer;font-family:var(--ui-font-family)}.seg.svelte-1ovc5q5 button:where(.svelte-1ovc5q5):not(:last-child){border-right:1px solid var(--ctp-surface1)}.seg.svelte-1ovc5q5 button:where(.svelte-1ovc5q5):hover{background:var(--ctp-surface1);color:var(--ctp-subtext1)}.seg.svelte-1ovc5q5 button.active:where(.svelte-1ovc5q5){background:color-mix(in srgb,var(--ctp-blue) 20%,var(--ctp-surface0));color:var(--ctp-blue);font-weight:600}.plugin-list.svelte-1ovc5q5{display:flex;flex-direction:column;gap:.25rem}.plugin-row.svelte-1ovc5q5{display:flex;align-items:center;justify-content:space-between;padding:.375rem .5rem;background:var(--ctp-surface0);border:1px solid var(--ctp-surface1);border-radius:.25rem}.plug-info.svelte-1ovc5q5{display:flex;align-items:baseline;gap:.5rem}.plug-name.svelte-1ovc5q5{font-size:.8rem;color:var(--ctp-text);font-weight:500}.plug-ver.svelte-1ovc5q5{font-size:.7rem;color:var(--ctp-overlay0)}.empty.svelte-1ovc5q5{font-size:.8rem;color:var(--ctp-overlay0);margin:0;font-style:italic}.toggle.svelte-1ovc5q5{position:relative;width:2rem;height:1.125rem;border:none;border-radius:.5625rem;background:var(--ctp-surface1);cursor:pointer;transition:background .2s;padding:0;flex-shrink:0}.toggle.on.svelte-1ovc5q5{background:var(--ctp-blue)}.thumb.svelte-1ovc5q5{position:absolute;top:.125rem;left:.125rem;width:.875rem;height:.875rem;border-radius:50%;background:var(--ctp-text);transition:transform .2s;display:block}.toggle.on.svelte-1ovc5q5 .thumb:where(.svelte-1ovc5q5){transform:translate(.875rem)}.update-row.svelte-1ovc5q5{display:flex;align-items:center;gap:.625rem}.version-label.svelte-1ovc5q5{font-size:.75rem;color:var(--ctp-overlay1);font-family:var(--term-font-family, monospace)}.update-result.svelte-1ovc5q5{font-size:.75rem;color:var(--ctp-green);margin:.125rem 0 0}.data-row.svelte-1ovc5q5{display:flex;gap:.5rem}.action-btn.svelte-1ovc5q5{padding:.275rem .75rem;background:var(--ctp-surface0);border:1px solid var(--ctp-surface1);border-radius:.25rem;color:var(--ctp-subtext1);font-size:.8rem;cursor:pointer;font-family:var(--ui-font-family);transition:background .12s,color .12s}.action-btn.svelte-1ovc5q5:hover:not(:disabled){background:var(--ctp-surface1);color:var(--ctp-text)}.action-btn.svelte-1ovc5q5:disabled{opacity:.4;cursor:not-allowed}.action-btn.secondary.svelte-1ovc5q5{color:var(--ctp-overlay0)}.drawer-backdrop.svelte-1gl9lco{position:fixed;top:0;right:0;bottom:0;left:0;z-index:200;background:color-mix(in srgb,var(--ctp-crust) 60%,transparent);display:flex;align-items:stretch}.drawer-panel.svelte-1gl9lco{width:30rem;max-width:95vw;background:var(--ctp-mantle);border-right:1px solid var(--ctp-surface0);display:flex;flex-direction:column;overflow:hidden;animation:svelte-1gl9lco-slide-in .18s ease-out}@keyframes svelte-1gl9lco-slide-in{0%{transform:translate(-100%);opacity:0}to{transform:translate(0);opacity:1}}.drawer-header.svelte-1gl9lco{height:3rem;display:flex;align-items:center;padding:0 .875rem;border-bottom:1px solid var(--ctp-surface0);flex-shrink:0}.drawer-title.svelte-1gl9lco{flex:1;margin:0;font-size:.9375rem;font-weight:600;color:var(--ctp-text)}.drawer-close.svelte-1gl9lco{width:1.75rem;height:1.75rem;background:transparent;border:none;border-radius:.3rem;color:var(--ctp-overlay1);font-size:1.125rem;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .12s,color .12s}.drawer-close.svelte-1gl9lco:hover{background:var(--ctp-surface0);color:var(--ctp-text)}.drawer-body.svelte-1gl9lco{flex:1;min-height:0;display:flex;overflow:hidden}.cat-nav.svelte-1gl9lco{width:8.5rem;flex-shrink:0;background:var(--ctp-crust);border-right:1px solid var(--ctp-surface0);display:flex;flex-direction:column;padding:.375rem 0;gap:.0625rem;overflow-y:auto}.cat-nav.svelte-1gl9lco::-webkit-scrollbar{display:none}.cat-btn.svelte-1gl9lco{display:flex;align-items:center;gap:.5rem;padding:.5rem .75rem;background:transparent;border:none;color:var(--ctp-subtext0);font-family:var(--ui-font-family);font-size:.8125rem;cursor:pointer;text-align:left;border-radius:0;transition:background .1s,color .1s}.cat-btn.svelte-1gl9lco:hover{background:var(--ctp-surface0);color:var(--ctp-text)}.cat-btn.active.svelte-1gl9lco{background:var(--ctp-surface0);color:var(--ctp-text);border-left:2px solid var(--ctp-mauve);padding-left:calc(.75rem - 2px)}.cat-icon.svelte-1gl9lco{font-size:.875rem;flex-shrink:0}.cat-label.svelte-1gl9lco{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cat-content.svelte-1gl9lco{flex:1;min-width:0;overflow-y:auto;padding:.875rem}.cat-content.svelte-1gl9lco::-webkit-scrollbar{width:.375rem}.cat-content.svelte-1gl9lco::-webkit-scrollbar-track{background:transparent}.cat-content.svelte-1gl9lco::-webkit-scrollbar-thumb{background:var(--ctp-surface1);border-radius:.25rem}.palette-backdrop.svelte-o5jp2k{position:fixed;top:0;right:0;bottom:0;left:0;z-index:300;background:color-mix(in srgb,var(--ctp-crust) 70%,transparent);display:flex;align-items:flex-start;justify-content:center;padding-top:6rem}.palette-panel.svelte-o5jp2k{width:36rem;max-width:92vw;background:var(--ctp-mantle);border:1px solid var(--ctp-surface1);border-radius:.625rem;overflow:hidden;box-shadow:0 1.25rem 3rem color-mix(in srgb,var(--ctp-crust) 60%,transparent);animation:svelte-o5jp2k-palette-appear .12s ease-out}@keyframes svelte-o5jp2k-palette-appear{0%{transform:translateY(-.5rem) scale(.98);opacity:0}to{transform:translateY(0) scale(1);opacity:1}}.palette-input-row.svelte-o5jp2k{display:flex;align-items:center;gap:.5rem;padding:0 .75rem;border-bottom:1px solid var(--ctp-surface0);height:3rem}.palette-icon.svelte-o5jp2k{width:1rem;height:1rem;color:var(--ctp-overlay1);flex-shrink:0}.palette-input.svelte-o5jp2k{flex:1;background:transparent;border:none;outline:none;color:var(--ctp-text);font-family:var(--ui-font-family);font-size:.9375rem;caret-color:var(--ctp-mauve)}.palette-input.svelte-o5jp2k::placeholder{color:var(--ctp-overlay0)}.palette-esc-hint.svelte-o5jp2k{padding:.15rem .35rem;background:var(--ctp-surface0);border:1px solid var(--ctp-surface1);border-radius:.25rem;font-size:.6875rem;color:var(--ctp-overlay1);font-family:var(--ui-font-family);white-space:nowrap}.palette-list.svelte-o5jp2k{list-style:none;margin:0;padding:.375rem;max-height:22rem;overflow-y:auto;display:flex;flex-direction:column;gap:.0625rem}.palette-list.svelte-o5jp2k::-webkit-scrollbar{width:.375rem}.palette-list.svelte-o5jp2k::-webkit-scrollbar-track{background:transparent}.palette-list.svelte-o5jp2k::-webkit-scrollbar-thumb{background:var(--ctp-surface1);border-radius:.25rem}.palette-item.svelte-o5jp2k{display:flex;align-items:center;gap:.5rem;padding:.5rem .625rem;border-radius:.375rem;cursor:pointer;transition:background .08s}.palette-item.selected.svelte-o5jp2k,.palette-item.svelte-o5jp2k:hover{background:var(--ctp-surface0)}.cmd-label.svelte-o5jp2k{flex:1;font-size:.875rem;color:var(--ctp-text)}.cmd-desc.svelte-o5jp2k{font-size:.75rem;color:var(--ctp-subtext0);max-width:12rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cmd-shortcut.svelte-o5jp2k{padding:.1rem .3rem;background:var(--ctp-surface1);border:1px solid var(--ctp-surface2);border-radius:.2rem;font-size:.6875rem;color:var(--ctp-subtext0);font-family:var(--ui-font-family);white-space:nowrap;flex-shrink:0}.palette-empty.svelte-o5jp2k{padding:1.5rem;text-align:center;font-size:.875rem;color:var(--ctp-overlay0);font-style:italic}.toast-container.svelte-13j0wuy{position:fixed;bottom:2.5rem;right:.875rem;z-index:400;display:flex;flex-direction:column;gap:.375rem;pointer-events:none}.toast.svelte-13j0wuy{display:flex;align-items:center;gap:.5rem;padding:.5rem .625rem;border-radius:.4375rem;border:1px solid var(--ctp-surface1);background:var(--ctp-mantle);font-size:.8125rem;color:var(--ctp-text);pointer-events:auto;animation:svelte-13j0wuy-toast-in .18s ease-out;min-width:14rem;max-width:22rem;box-shadow:0 .5rem 1.5rem color-mix(in srgb,var(--ctp-crust) 70%,transparent)}@keyframes svelte-13j0wuy-toast-in{0%{transform:translate(1.5rem);opacity:0}to{transform:translate(0);opacity:1}}.toast-success.svelte-13j0wuy{border-left:3px solid var(--ctp-green)}.toast-warning.svelte-13j0wuy{border-left:3px solid var(--ctp-yellow)}.toast-error.svelte-13j0wuy{border-left:3px solid var(--ctp-red)}.toast-info.svelte-13j0wuy{border-left:3px solid var(--ctp-blue)}.toast-icon.svelte-13j0wuy{flex-shrink:0;font-size:.75rem;font-weight:700}.toast-success.svelte-13j0wuy .toast-icon:where(.svelte-13j0wuy){color:var(--ctp-green)}.toast-warning.svelte-13j0wuy .toast-icon:where(.svelte-13j0wuy){color:var(--ctp-yellow)}.toast-error.svelte-13j0wuy .toast-icon:where(.svelte-13j0wuy){color:var(--ctp-red)}.toast-info.svelte-13j0wuy .toast-icon:where(.svelte-13j0wuy){color:var(--ctp-blue)}.toast-msg.svelte-13j0wuy{flex:1;line-height:1.4}.toast-close.svelte-13j0wuy{flex-shrink:0;width:1.25rem;height:1.25rem;background:transparent;border:none;color:var(--ctp-overlay1);font-size:1rem;cursor:pointer;display:flex;align-items:center;justify-content:center;border-radius:.2rem;padding:0;transition:color .1s,background .1s;line-height:1}.toast-close.svelte-13j0wuy:hover{color:var(--ctp-text);background:var(--ctp-surface0)}body{overflow:hidden}#app{display:flex;flex-direction:column;height:100vh}.app-shell.svelte-krfyfn{flex:1;min-height:0;display:flex;overflow:hidden}.sidebar.svelte-krfyfn{width:var(--sidebar-width);flex-shrink:0;background:var(--ctp-mantle);border-right:1px solid var(--ctp-surface0);display:flex;flex-direction:column;align-items:center;padding:.5rem 0;gap:.25rem}.sidebar-spacer.svelte-krfyfn{flex:1}.sidebar-icon.svelte-krfyfn{width:2rem;height:2rem;border-radius:.375rem;border:none;background:transparent;color:var(--ctp-overlay1);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .15s,color .15s;padding:0}.sidebar-icon.svelte-krfyfn:hover{background:var(--ctp-surface0);color:var(--ctp-text)}.sidebar-icon.active.svelte-krfyfn{background:var(--ctp-surface1);color:var(--ctp-mauve)}.sidebar-icon.svelte-krfyfn svg:where(.svelte-krfyfn){width:1rem;height:1rem}.workspace.svelte-krfyfn{flex:1;min-width:0;display:flex;flex-direction:column;overflow:hidden}.project-grid.svelte-krfyfn{flex:1;min-height:0;display:grid;grid-template-columns:1fr 1fr;gap:.5rem;padding:.5rem;background:var(--ctp-crust)}.status-bar.svelte-krfyfn{height:var(--status-bar-height);background:var(--ctp-crust);border-top:1px solid var(--ctp-surface0);display:flex;align-items:center;gap:.875rem;padding:0 .625rem;flex-shrink:0;font-size:.6875rem;color:var(--ctp-subtext0)}.status-segment.svelte-krfyfn{display:flex;align-items:center;gap:.25rem;white-space:nowrap}.status-dot-sm.svelte-krfyfn{width:.4375rem;height:.4375rem;border-radius:50%;flex-shrink:0}.status-dot-sm.green.svelte-krfyfn{background:var(--ctp-green)}.status-dot-sm.gray.svelte-krfyfn{background:var(--ctp-overlay0)}.status-dot-sm.orange.svelte-krfyfn{background:var(--ctp-peach)}.status-value.svelte-krfyfn{color:var(--ctp-text);font-weight:500}.status-bar-spacer.svelte-krfyfn{flex:1}.attn-badge.svelte-krfyfn{color:var(--ctp-yellow)}.attn-icon.svelte-krfyfn{width:.75rem;height:.75rem;stroke:var(--ctp-yellow)}.notif-btn.svelte-krfyfn{position:relative;width:1.5rem;height:1.5rem;background:transparent;border:none;color:var(--ctp-subtext0);cursor:pointer;display:flex;align-items:center;justify-content:center;border-radius:.25rem;transition:color .12s;padding:0;flex-shrink:0}.notif-btn.svelte-krfyfn:hover{color:var(--ctp-text)}.notif-btn.svelte-krfyfn svg:where(.svelte-krfyfn){width:.875rem;height:.875rem}.notif-badge.svelte-krfyfn{position:absolute;top:.125rem;right:.125rem;min-width:.875rem;height:.875rem;background:var(--ctp-red);color:var(--ctp-base);border-radius:.4375rem;font-size:.5rem;font-weight:700;display:flex;align-items:center;justify-content:center;padding:0 .2rem;line-height:1}.palette-hint.svelte-krfyfn{padding:.1rem .3rem;background:var(--ctp-surface0);border:1px solid var(--ctp-surface1);border-radius:.2rem;font-size:.6rem;color:var(--ctp-overlay0);font-family:var(--ui-font-family);cursor:pointer;transition:color .1s}.palette-hint.svelte-krfyfn:hover{color:var(--ctp-subtext0)} + */.xterm{cursor:text;position:relative;user-select:none;-ms-user-select:none;-webkit-user-select:none}.xterm.focus,.xterm:focus{outline:none}.xterm .xterm-helpers{position:absolute;top:0;z-index:5}.xterm .xterm-helper-textarea{padding:0;border:0;margin:0;position:absolute;opacity:0;left:-9999em;top:0;width:0;height:0;z-index:-5;white-space:nowrap;overflow:hidden;resize:none}.xterm .composition-view{background:#000;color:#fff;display:none;position:absolute;white-space:nowrap;z-index:1}.xterm .composition-view.active{display:block}.xterm .xterm-viewport{background-color:#000;overflow-y:scroll;cursor:default;position:absolute;right:0;left:0;top:0;bottom:0}.xterm .xterm-screen{position:relative}.xterm .xterm-screen canvas{position:absolute;left:0;top:0}.xterm-char-measure-element{display:inline-block;visibility:hidden;position:absolute;top:0;left:-9999em;line-height:normal}.xterm.enable-mouse-events{cursor:default}.xterm.xterm-cursor-pointer,.xterm .xterm-cursor-pointer{cursor:pointer}.xterm.column-select.focus{cursor:crosshair}.xterm .xterm-accessibility:not(.debug),.xterm .xterm-message{position:absolute;left:0;top:0;bottom:0;right:0;z-index:10;color:transparent;pointer-events:none}.xterm .xterm-accessibility-tree:not(.debug) *::selection{color:transparent}.xterm .xterm-accessibility-tree{font-family:monospace;-webkit-user-select:text;user-select:text;white-space:pre}.xterm .xterm-accessibility-tree>div{transform-origin:left;width:fit-content}.xterm .live-region{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}.xterm-dim{opacity:1!important}.xterm-underline-1{text-decoration:underline}.xterm-underline-2{text-decoration:double underline}.xterm-underline-3{text-decoration:wavy underline}.xterm-underline-4{text-decoration:dotted underline}.xterm-underline-5{text-decoration:dashed underline}.xterm-overline{text-decoration:overline}.xterm-overline.xterm-underline-1{text-decoration:overline underline}.xterm-overline.xterm-underline-2{text-decoration:overline double underline}.xterm-overline.xterm-underline-3{text-decoration:overline wavy underline}.xterm-overline.xterm-underline-4{text-decoration:overline dotted underline}.xterm-overline.xterm-underline-5{text-decoration:overline dashed underline}.xterm-strikethrough{text-decoration:line-through}.xterm-screen .xterm-decoration-container .xterm-decoration{z-index:6;position:absolute}.xterm-screen .xterm-decoration-container .xterm-decoration.xterm-decoration-top-layer{z-index:7}.xterm-decoration-overview-ruler{z-index:8;position:absolute;top:0;right:0;pointer-events:none}.xterm-decoration-top{z-index:2;position:relative}.xterm .xterm-scrollable-element>.scrollbar{cursor:default}.xterm .xterm-scrollable-element>.scrollbar>.scra{cursor:pointer;font-size:11px!important}.xterm .xterm-scrollable-element>.visible{opacity:1;background:#0000;transition:opacity .1s linear;z-index:11}.xterm .xterm-scrollable-element>.invisible{opacity:0;pointer-events:none}.xterm .xterm-scrollable-element>.invisible.fade{transition:opacity .8s linear}.xterm .xterm-scrollable-element>.shadow{position:absolute;display:none}.xterm .xterm-scrollable-element>.shadow.top{display:block;top:0;left:3px;height:3px;width:100%;box-shadow:var(--vscode-scrollbar-shadow, #000) 0 6px 6px -6px inset}.xterm .xterm-scrollable-element>.shadow.left{display:block;top:3px;left:0;height:100%;width:3px;box-shadow:var(--vscode-scrollbar-shadow, #000) 6px 0 6px -6px inset}.xterm .xterm-scrollable-element>.shadow.top-left-corner{display:block;top:0;left:0;height:3px;width:3px}.xterm .xterm-scrollable-element>.shadow.top.left{box-shadow:var(--vscode-scrollbar-shadow, #000) 6px 0 6px -6px inset}.chat-input-outer.svelte-icb1la{background:var(--ctp-crust);border:1px solid var(--ctp-surface1);border-radius:.5rem;box-shadow:0 1px 2px #0000001a;display:flex;flex-direction:column;overflow:visible;position:relative;z-index:30}.chat-textarea.svelte-icb1la{background:transparent;border:none;outline:none;resize:none;color:var(--ctp-text);font-family:var(--ui-font-family);font-size:.8125rem;line-height:1.5;padding:.625rem .875rem;min-height:2.5rem;max-height:12.5rem;overflow-y:auto;width:100%;box-sizing:border-box}.chat-textarea.svelte-icb1la:focus{box-shadow:0 0 0 3px color-mix(in srgb,var(--ctp-peach) 12%,transparent)}.chat-textarea.svelte-icb1la::placeholder{color:var(--ctp-subtext0)}.chat-textarea.svelte-icb1la::-webkit-scrollbar{width:.25rem}.chat-textarea.svelte-icb1la::-webkit-scrollbar-thumb{background:var(--ctp-surface1);border-radius:.25rem}.footer-strip.svelte-icb1la{display:flex;align-items:center;gap:.125rem;padding:.3125rem;border-top:.5px solid var(--ctp-surface1);position:relative}.popup-wrap.svelte-icb1la{position:relative}.footer-btn.svelte-icb1la{background:transparent;border:none;color:var(--ctp-overlay1);cursor:pointer;padding:.25rem;border-radius:.25rem;display:flex;align-items:center;justify-content:center;transition:color .12s,background .12s}.footer-btn.svelte-icb1la:hover{color:var(--ctp-text);background:var(--ctp-surface0)}.footer-btn.active.svelte-icb1la{color:var(--ctp-blue);background:color-mix(in srgb,var(--ctp-blue) 12%,transparent)}.popup-menu.svelte-icb1la{position:absolute;bottom:calc(100% + .375rem);left:0;z-index:100;background:var(--ctp-surface0);border:1px solid var(--ctp-surface1);border-radius:.375rem;box-shadow:0 .5rem 1.25rem color-mix(in srgb,var(--ctp-crust) 70%,transparent);min-width:10rem;padding:.25rem;display:flex;flex-direction:column;gap:.0625rem}.popup-item.svelte-icb1la{width:100%;background:transparent;border:none;color:var(--ctp-text);font-family:var(--ui-font-family);font-size:.8125rem;padding:.35rem .625rem;border-radius:.25rem;text-align:left;cursor:pointer;transition:background .08s,color .08s}.popup-item.svelte-icb1la:hover{background:var(--ctp-surface1)}.popup-slash.svelte-icb1la{font-family:var(--term-font-family);color:var(--ctp-blue)}.popup-slash.svelte-icb1la:hover{color:var(--ctp-text)}.disabled-item.svelte-icb1la{opacity:.4;cursor:not-allowed}.popup-backdrop.svelte-icb1la{position:fixed;top:0;right:0;bottom:0;left:0;z-index:29}.context-indicator.svelte-icb1la{display:flex;align-items:center;gap:.25rem;padding:.125rem .25rem;cursor:default}.ctx-pct.svelte-icb1la{font-size:.6875rem;font-weight:600;min-width:2rem;letter-spacing:-.01em}.model-label.svelte-icb1la{font-size:.85em;color:var(--ctp-overlay1);padding:0 .25rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:8rem}.footer-spacer.svelte-icb1la{flex:1}.footer-divider.svelte-icb1la{width:1px;height:1rem;background:var(--ctp-surface1);margin:0 .25rem;flex-shrink:0}.send-btn.svelte-icb1la{width:26px;height:26px;background:var(--ctp-peach);border:none;border-radius:5px;color:#f5efe6;cursor:pointer;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:filter .12s}.send-btn.svelte-icb1la:hover:not(:disabled){filter:brightness(1.1)}.send-btn.svelte-icb1la:disabled{opacity:.4;cursor:not-allowed}.status-strip.svelte-9vsw7f{display:flex;align-items:center;gap:.375rem;padding:.25rem .75rem;background:var(--ctp-mantle);border-bottom:.5px solid var(--ctp-surface1);font-size:.6875rem;color:var(--ctp-subtext0);flex-shrink:0}.strip-dot.svelte-9vsw7f{width:7px;height:7px;border-radius:50%;flex-shrink:0}.dot-success.svelte-9vsw7f{background:var(--ctp-green)}.dot-progress.svelte-9vsw7f{background:var(--ctp-peach)}.dot-error.svelte-9vsw7f{background:var(--ctp-red)}.strip-label.svelte-9vsw7f{color:var(--ctp-subtext1);font-weight:500}.strip-model.svelte-9vsw7f{color:var(--ctp-overlay1);margin-left:.25rem}.strip-spacer.svelte-9vsw7f{flex:1}.strip-tokens.svelte-9vsw7f{color:var(--ctp-overlay1)}.strip-sep.svelte-9vsw7f{width:1px;height:.75rem;background:var(--ctp-surface1);margin:0 .125rem}.strip-cost.svelte-9vsw7f{color:var(--ctp-text);font-weight:500}.agent-pane.svelte-9vsw7f{display:flex;flex-direction:column;flex:1;min-height:0;overflow:hidden;position:relative;background:var(--ctp-base)}.messages-scroll.svelte-9vsw7f{flex:1;min-height:0;overflow-y:auto;padding:1.25rem 1.25rem 2.5rem;display:flex;flex-direction:column;gap:0}.messages-scroll.svelte-9vsw7f::-webkit-scrollbar{width:.25rem}.messages-scroll.svelte-9vsw7f::-webkit-scrollbar-track{background:transparent}.messages-scroll.svelte-9vsw7f::-webkit-scrollbar-thumb{background:var(--ctp-surface1);border-radius:.25rem}.scroll-fade.svelte-9vsw7f{position:absolute;bottom:0;left:0;right:0;height:150px;background:linear-gradient(to bottom,transparent,var(--ctp-base));pointer-events:none;z-index:10}.floating-input.svelte-9vsw7f{position:absolute;bottom:16px;left:16px;right:16px;z-index:20}.msg-row.svelte-9vsw7f{display:flex;flex-direction:column}@keyframes svelte-9vsw7f-fadeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.msg-animated.svelte-9vsw7f{animation:svelte-9vsw7f-fadeIn .3s ease-in-out}.user-bubble.svelte-9vsw7f{display:inline-block;align-self:flex-start;background:var(--ctp-surface0);border:1px solid var(--ctp-surface1);border-radius:6px;padding:.25rem .375rem;margin:.5rem 0;font-size:.8125rem;line-height:1.5;color:var(--ctp-text);white-space:pre-wrap;word-break:break-word;max-width:85%}.timeline-row.svelte-9vsw7f{position:relative;padding-left:1.875rem}.timeline-line-up.svelte-9vsw7f{position:absolute;left:12px;top:0;height:14px;width:1px;background:var(--ctp-surface0)}.timeline-line-down.svelte-9vsw7f{position:absolute;left:12px;top:22px;bottom:0;width:1px;background:var(--ctp-surface0)}.timeline-diamond.svelte-9vsw7f{position:absolute;left:9px;top:14px;width:7px;height:7px;transform:rotate(45deg);flex-shrink:0}.timeline-content.svelte-9vsw7f{font-size:.8125rem;line-height:1.6;color:var(--ctp-text);padding:.5rem 0;white-space:pre-wrap;word-break:break-word}.tool-box.svelte-9vsw7f{border:.5px solid var(--ctp-surface1);background:var(--ctp-mantle);border-radius:5px;overflow:hidden;margin:.25rem 0;font-size:.8125rem}.tool-result-box.svelte-9vsw7f{border-color:color-mix(in srgb,var(--ctp-teal) 30%,var(--ctp-surface1))}.tool-header.svelte-9vsw7f{display:flex;align-items:center;gap:.5rem;padding:.3rem .5rem;border-bottom:.5px solid var(--ctp-surface1)}.tool-name.svelte-9vsw7f{font-weight:700;font-size:.8125rem;color:var(--ctp-text)}.tool-path.svelte-9vsw7f{font-family:var(--term-font-family);font-size:.8125rem;color:var(--ctp-blue)}.tool-body.svelte-9vsw7f{position:relative;max-height:60px;overflow:hidden}.tool-body.expanded.svelte-9vsw7f{max-height:none}.tool-grid.svelte-9vsw7f{display:grid;grid-template-columns:4rem 1fr;gap:.25rem;padding:.375rem .5rem}.tool-col-label.svelte-9vsw7f{font-family:var(--term-font-family);font-size:.85em;color:var(--ctp-subtext0);opacity:.5;padding-top:.05em;white-space:nowrap}.tool-col-content.svelte-9vsw7f{font-family:var(--term-font-family);font-size:.8125rem;color:var(--ctp-subtext1);white-space:pre-wrap;word-break:break-all;line-height:1.4}.tool-result-content.svelte-9vsw7f{color:var(--ctp-teal)}.tool-fade-overlay.svelte-9vsw7f{position:absolute;bottom:0;left:0;right:0;height:2.5rem;background:linear-gradient(to bottom,transparent,var(--ctp-mantle));display:flex;align-items:flex-end;justify-content:center;padding-bottom:.25rem}.show-more-btn.svelte-9vsw7f,.collapse-btn.svelte-9vsw7f{background:transparent;border:none;color:var(--ctp-blue);font-size:.75rem;cursor:pointer;padding:.125rem .375rem;border-radius:.2rem;font-family:var(--ui-font-family);transition:color .12s}.show-more-btn.svelte-9vsw7f:hover,.collapse-btn.svelte-9vsw7f:hover{color:var(--ctp-lavender)}.collapse-btn.svelte-9vsw7f{display:block;margin:0 auto .25rem}.resize-handle.svelte-9vsw7f{height:4px;background:transparent;cursor:row-resize;flex-shrink:0;transition:background .12s}.resize-handle.svelte-9vsw7f:hover,.resize-handle.dragging.svelte-9vsw7f{background:var(--ctp-surface1)}.terminal-container.svelte-aiqx64{width:100%;height:100%;min-height:10rem}.xterm{padding:.5rem}.term-wrapper.svelte-n9472g{display:flex;flex-direction:column;flex:1;min-height:0}.term-bar.svelte-n9472g{display:flex;align-items:stretch;height:1.75rem;background:var(--ctp-mantle);border-top:1px solid var(--ctp-surface0);flex-shrink:0;z-index:5}.expand-btn.svelte-n9472g{width:1.75rem;flex-shrink:0;background:transparent;border:none;border-right:1px solid var(--ctp-surface0);color:var(--ctp-overlay1);cursor:pointer;display:flex;align-items:center;justify-content:center;padding:0}.expand-btn.svelte-n9472g:hover{color:var(--ctp-text)}.expand-btn.svelte-n9472g svg:where(.svelte-n9472g){width:.75rem;height:.75rem;transition:transform .15s}.chevron.open.svelte-n9472g{transform:rotate(90deg)}.term-tabs.svelte-n9472g{display:flex;align-items:stretch;flex:1;overflow-x:auto;scrollbar-width:none;gap:.125rem;padding:0 .25rem}.term-tabs.svelte-n9472g::-webkit-scrollbar{display:none}.term-tab.svelte-n9472g{display:flex;align-items:center;gap:.25rem;padding:0 .5rem;background:transparent;border:none;border-bottom:2px solid transparent;color:var(--ctp-subtext0);font-size:.6875rem;cursor:pointer;white-space:nowrap;margin-bottom:-1px;font-family:inherit}.term-tab.svelte-n9472g:hover{color:var(--ctp-text)}.term-tab.active.svelte-n9472g{color:var(--ctp-text);border-bottom-color:var(--accent)}.tab-label.svelte-n9472g{pointer-events:none}.tab-close.svelte-n9472g{width:.875rem;height:.875rem;border-radius:.2rem;font-size:.6875rem;color:var(--ctp-overlay0);cursor:pointer;display:flex;align-items:center;justify-content:center;background:transparent;border:none;padding:0;font-family:inherit;line-height:1}.tab-close.svelte-n9472g:hover{background:var(--ctp-surface1);color:var(--ctp-red)}.tab-add.svelte-n9472g{align-self:center;width:1.25rem;height:1.25rem;flex-shrink:0;background:transparent;border:1px solid var(--ctp-surface1);border-radius:.2rem;color:var(--ctp-overlay1);font-size:.75rem;cursor:pointer;display:flex;align-items:center;justify-content:center;margin-left:.125rem}.tab-add.svelte-n9472g:hover{background:var(--ctp-surface0);color:var(--ctp-text)}.term-panes.svelte-n9472g{flex:1;min-height:8rem;position:relative}.term-pane.svelte-n9472g{position:absolute;top:0;right:0;bottom:0;left:0;flex-direction:column}.file-browser.svelte-ly4nw6{display:flex;flex-direction:column;height:100%;overflow:hidden;font-size:.8125rem}.fb-tree.svelte-ly4nw6{flex:1;overflow-y:auto;padding:.25rem 0}.fb-tree.svelte-ly4nw6::-webkit-scrollbar{width:.25rem}.fb-tree.svelte-ly4nw6::-webkit-scrollbar-track{background:transparent}.fb-tree.svelte-ly4nw6::-webkit-scrollbar-thumb{background:var(--ctp-surface1);border-radius:.25rem}.fb-row.svelte-ly4nw6{display:flex;align-items:center;gap:.3rem;width:100%;background:transparent;border:none;color:var(--ctp-text);font-family:var(--ui-font-family);font-size:.8125rem;padding-top:.2rem;padding-bottom:.2rem;padding-right:.5rem;cursor:pointer;text-align:left;white-space:nowrap;transition:background .08s}.fb-row.svelte-ly4nw6:hover{background:var(--ctp-surface0)}.fb-file.selected.svelte-ly4nw6{background:color-mix(in srgb,var(--accent, var(--ctp-mauve)) 15%,transparent);color:var(--accent, var(--ctp-mauve))}.fb-chevron.svelte-ly4nw6{display:inline-block;width:.875rem;font-size:.875rem;color:var(--ctp-overlay1);transition:transform .12s;transform:rotate(0);flex-shrink:0;line-height:1}.fb-chevron.open.svelte-ly4nw6{transform:rotate(90deg)}.fb-icon.svelte-ly4nw6{flex-shrink:0;font-style:normal}.file-type.svelte-ly4nw6{font-size:.6875rem;color:var(--ctp-overlay1);font-family:var(--term-font-family)}.fb-name.svelte-ly4nw6{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.fb-dir.svelte-ly4nw6 .fb-name:where(.svelte-ly4nw6){color:var(--ctp-subtext1);font-weight:500}.fb-preview.svelte-ly4nw6{border-top:1px solid var(--ctp-surface0);padding:.5rem .75rem;background:var(--ctp-mantle);flex-shrink:0}.fb-preview-label.svelte-ly4nw6{font-size:.75rem;color:var(--ctp-subtext0);font-family:var(--term-font-family);margin-bottom:.2rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.fb-preview-content.svelte-ly4nw6{font-size:.75rem;color:var(--ctp-overlay0);font-style:italic}.memory-tab.svelte-1k7ge8m{display:flex;flex-direction:column;height:100%;overflow:hidden}.memory-header.svelte-1k7ge8m{display:flex;align-items:center;justify-content:space-between;padding:.375rem .625rem;border-bottom:1px solid var(--ctp-surface0);background:var(--ctp-mantle);flex-shrink:0;font-size:.75rem}.memory-count.svelte-1k7ge8m{color:var(--ctp-text);font-weight:500}.memory-hint.svelte-1k7ge8m{color:var(--ctp-overlay0);font-style:italic}.memory-list.svelte-1k7ge8m{flex:1;overflow-y:auto;padding:.375rem;display:flex;flex-direction:column;gap:.375rem}.memory-list.svelte-1k7ge8m::-webkit-scrollbar{width:.25rem}.memory-list.svelte-1k7ge8m::-webkit-scrollbar-track{background:transparent}.memory-list.svelte-1k7ge8m::-webkit-scrollbar-thumb{background:var(--ctp-surface1);border-radius:.25rem}.memory-card.svelte-1k7ge8m{background:var(--ctp-surface0);border:1px solid var(--ctp-surface1);border-radius:.375rem;padding:.5rem .625rem;display:flex;flex-direction:column;gap:.3rem;transition:border-color .12s}.memory-card.svelte-1k7ge8m:hover{border-color:var(--ctp-surface2)}.memory-card-top.svelte-1k7ge8m{display:flex;align-items:flex-start;gap:.5rem}.memory-title.svelte-1k7ge8m{flex:1;font-size:.8125rem;font-weight:600;color:var(--ctp-text);line-height:1.3}.trust-badge.svelte-1k7ge8m{flex-shrink:0;padding:.1rem .35rem;border-radius:.25rem;font-size:.6rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em}.trust-human.svelte-1k7ge8m{background:color-mix(in srgb,var(--ctp-green) 15%,transparent);color:var(--ctp-green)}.trust-agent.svelte-1k7ge8m{background:color-mix(in srgb,var(--ctp-blue) 15%,transparent);color:var(--ctp-blue)}.trust-auto.svelte-1k7ge8m{background:color-mix(in srgb,var(--ctp-overlay1) 15%,transparent);color:var(--ctp-overlay1)}.memory-body.svelte-1k7ge8m{margin:0;font-size:.75rem;color:var(--ctp-subtext1);line-height:1.45;font-family:var(--ui-font-family)}.memory-footer.svelte-1k7ge8m{display:flex;align-items:center;gap:.5rem;margin-top:.1rem}.memory-tags.svelte-1k7ge8m{display:flex;flex-wrap:wrap;gap:.25rem;flex:1}.tag.svelte-1k7ge8m{padding:.05rem .3rem;background:var(--ctp-surface1);border-radius:.2rem;font-size:.625rem;color:var(--ctp-overlay1);font-family:var(--term-font-family)}.memory-date.svelte-1k7ge8m{font-size:.625rem;color:var(--ctp-overlay0);white-space:nowrap;flex-shrink:0}.project-card.svelte-1aqfagj{background:var(--ctp-base);border:1px solid var(--ctp-surface0);border-radius:.5rem;display:flex;flex-direction:column;overflow:hidden;min-height:0;position:relative}.project-card.svelte-1aqfagj:before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:var(--accent, var(--ctp-mauve));border-radius:.5rem 0 0 .5rem}.project-header.svelte-1aqfagj{height:2.5rem;background:var(--ctp-mantle);border-bottom:1px solid var(--ctp-surface0);display:flex;align-items:center;gap:.375rem;padding:0 .625rem 0 .875rem;flex-shrink:0;overflow:hidden}.status-dot-wrap.svelte-1aqfagj{flex-shrink:0;width:.625rem;height:.625rem;position:relative}.status-dot.svelte-1aqfagj{width:100%;height:100%;border-radius:50%;background:var(--ctp-overlay0)}.status-dot.running.svelte-1aqfagj{background:var(--ctp-green)}.status-dot.idle.svelte-1aqfagj{background:var(--ctp-overlay1)}.status-dot.stalled.svelte-1aqfagj{background:var(--ctp-peach)}.status-dot.blink-off.svelte-1aqfagj{opacity:.3}.project-name.svelte-1aqfagj{font-weight:600;color:var(--ctp-text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex-shrink:1;min-width:0}.project-cwd.svelte-1aqfagj{font-size:.6875rem;color:var(--ctp-subtext0);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;direction:rtl;max-width:8rem;flex-shrink:2}.provider-badge.svelte-1aqfagj,.profile-badge.svelte-1aqfagj,.ctx-badge.svelte-1aqfagj,.burn-badge.svelte-1aqfagj{flex-shrink:0;padding:.1rem .375rem;border-radius:.25rem;font-size:.6rem;font-weight:600;text-transform:uppercase;letter-spacing:.03em;white-space:nowrap}.provider-badge.svelte-1aqfagj{background:color-mix(in srgb,var(--accent, var(--ctp-mauve)) 15%,transparent);color:var(--accent, var(--ctp-mauve))}.profile-badge.svelte-1aqfagj{background:color-mix(in srgb,var(--ctp-blue) 12%,transparent);color:var(--ctp-blue)}.ctx-badge.svelte-1aqfagj{background:color-mix(in srgb,var(--ctp-yellow) 15%,transparent);color:var(--ctp-yellow)}.ctx-badge.ctx-warn.svelte-1aqfagj{color:var(--ctp-peach);background:color-mix(in srgb,var(--ctp-peach) 15%,transparent)}.ctx-badge.ctx-danger.svelte-1aqfagj{color:var(--ctp-red);background:color-mix(in srgb,var(--ctp-red) 15%,transparent)}.burn-badge.svelte-1aqfagj{background:color-mix(in srgb,var(--ctp-peach) 10%,transparent);color:var(--ctp-peach)}.tab-bar.svelte-1aqfagj{height:2rem;background:var(--ctp-mantle);border-bottom:1px solid var(--ctp-surface0);display:flex;align-items:stretch;flex-shrink:0;padding:0 .25rem;gap:.125rem;overflow-x:auto;scrollbar-width:none}.tab-bar.svelte-1aqfagj::-webkit-scrollbar{display:none}.tab-btn.svelte-1aqfagj{padding:0 .625rem;background:transparent;border:none;border-bottom:2px solid transparent;color:var(--ctp-subtext0);font-family:var(--ui-font-family);font-size:.8125rem;cursor:pointer;white-space:nowrap;transition:color .12s,border-color .12s;margin-bottom:-1px;flex-shrink:0}.tab-btn.svelte-1aqfagj:hover{color:var(--ctp-text)}.tab-btn.active.svelte-1aqfagj{color:var(--ctp-text);border-bottom-color:var(--accent, var(--ctp-mauve))}.tab-content.svelte-1aqfagj{flex:1;min-height:0;overflow:hidden;display:flex;flex-direction:column}.tab-pane.svelte-1aqfagj{flex:1;min-height:0;flex-direction:column;overflow:hidden}.placeholder-pane.svelte-1aqfagj{flex:1;display:flex;align-items:center;justify-content:center;color:var(--ctp-overlay0);font-size:.8125rem;font-style:italic}.context-pane.svelte-1aqfagj{display:flex;flex-direction:column;gap:.75rem;padding:.625rem;overflow-y:auto;flex:1}.ctx-stats-row.svelte-1aqfagj{display:flex;gap:1rem}.ctx-stat.svelte-1aqfagj{display:flex;flex-direction:column;gap:.125rem}.ctx-stat-label.svelte-1aqfagj{font-size:.625rem;text-transform:uppercase;letter-spacing:.05em;color:var(--ctp-overlay0);font-weight:600}.ctx-stat-value.svelte-1aqfagj{font-size:.875rem;font-weight:600;color:var(--ctp-text);font-family:var(--term-font-family)}.ctx-meter-wrap.svelte-1aqfagj{height:.375rem;background:var(--ctp-surface0);border-radius:.25rem;overflow:hidden}.ctx-meter-bar.svelte-1aqfagj{height:100%;background:var(--ctp-teal);border-radius:.25rem;transition:width .3s}.ctx-meter-bar.meter-warn.svelte-1aqfagj{background:var(--ctp-peach)}.ctx-meter-bar.meter-danger.svelte-1aqfagj{background:var(--ctp-red)}.ctx-section-label.svelte-1aqfagj{font-size:.625rem;text-transform:uppercase;letter-spacing:.05em;color:var(--ctp-overlay0);font-weight:600;margin-bottom:.25rem}.ctx-turn-list.svelte-1aqfagj{display:flex;flex-direction:column;gap:.25rem}.ctx-turn-row.svelte-1aqfagj{display:flex;align-items:baseline;gap:.5rem;font-size:.75rem}.ctx-turn-role.svelte-1aqfagj{flex-shrink:0;font-size:.625rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;min-width:4.5rem}.ctx-role-user.svelte-1aqfagj{color:var(--ctp-blue)}.ctx-role-assistant.svelte-1aqfagj{color:var(--ctp-mauve)}.ctx-role-tool-call.svelte-1aqfagj{color:var(--ctp-peach)}.ctx-role-tool-result.svelte-1aqfagj{color:var(--ctp-teal)}.ctx-turn-preview.svelte-1aqfagj{color:var(--ctp-subtext0);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1}.section.svelte-1901l6h{display:flex;flex-direction:column;gap:.5rem}.sh.svelte-1901l6h{margin:.375rem 0 .125rem;font-size:.6875rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--ctp-overlay0)}.field.svelte-1901l6h{position:relative}.row.svelte-1901l6h{display:flex;align-items:center;gap:.5rem}.flex1.svelte-1901l6h{flex:1;min-width:0}.dd-wrap.svelte-1901l6h{position:relative}.dd-btn.svelte-1901l6h{width:100%;display:flex;align-items:center;justify-content:space-between;gap:.375rem;background:var(--ctp-surface0);border:1px solid var(--ctp-surface1);border-radius:.25rem;padding:.3rem .5rem;color:var(--ctp-text);font-family:var(--ui-font-family);font-size:.8125rem;cursor:pointer;text-align:left}.dd-btn.svelte-1901l6h:hover{border-color:var(--ctp-surface2)}.chev.svelte-1901l6h{width:.75rem;height:.75rem;color:var(--ctp-overlay1);transition:transform .15s;flex-shrink:0}.chev.open.svelte-1901l6h{transform:rotate(180deg)}.dd-list.svelte-1901l6h{position:absolute;top:calc(100% + .125rem);left:0;right:0;z-index:50;list-style:none;margin:0;padding:.25rem;background:var(--ctp-mantle);border:1px solid var(--ctp-surface1);border-radius:.3rem;max-height:14rem;overflow-y:auto;box-shadow:0 .5rem 1rem color-mix(in srgb,var(--ctp-crust) 60%,transparent)}.dd-group-label.svelte-1901l6h{padding:.25rem .5rem .125rem;font-size:.625rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--ctp-overlay0);border-top:1px solid var(--ctp-surface0)}.dd-group-label.svelte-1901l6h:first-child{border-top:none}.dd-item.svelte-1901l6h{padding:.3rem .5rem;border-radius:.2rem;font-size:.8125rem;color:var(--ctp-subtext1);cursor:pointer;outline:none;list-style:none}.dd-item.svelte-1901l6h:hover,.dd-item.svelte-1901l6h:focus{background:var(--ctp-surface0);color:var(--ctp-text)}.dd-item.sel.svelte-1901l6h{background:color-mix(in srgb,var(--ctp-mauve) 15%,transparent);color:var(--ctp-mauve);font-weight:500}.stepper.svelte-1901l6h{display:flex;align-items:center;gap:.25rem;flex-shrink:0}.stepper.svelte-1901l6h button:where(.svelte-1901l6h){width:1.375rem;height:1.375rem;background:var(--ctp-surface0);border:1px solid var(--ctp-surface1);border-radius:.2rem;color:var(--ctp-text);font-size:.875rem;cursor:pointer;display:flex;align-items:center;justify-content:center}.stepper.svelte-1901l6h button:where(.svelte-1901l6h):hover{background:var(--ctp-surface1)}.stepper.svelte-1901l6h span:where(.svelte-1901l6h){font-size:.8125rem;color:var(--ctp-text);min-width:2.5rem;text-align:center}.seg.svelte-1901l6h{display:flex;border-radius:.25rem;overflow:hidden;border:1px solid var(--ctp-surface1)}.seg.svelte-1901l6h button:where(.svelte-1901l6h){flex:1;padding:.25rem .5rem;background:var(--ctp-surface0);border:none;color:var(--ctp-overlay1);font-size:.75rem;cursor:pointer}.seg.svelte-1901l6h button:where(.svelte-1901l6h):hover{background:var(--ctp-surface1);color:var(--ctp-subtext1)}.seg.svelte-1901l6h button.active:where(.svelte-1901l6h){background:var(--ctp-blue);color:var(--ctp-base)}.toggle-row.svelte-1901l6h{display:flex;align-items:center;gap:.375rem;font-size:.8125rem;color:var(--ctp-subtext0);cursor:pointer}.toggle.svelte-1901l6h{padding:.1875rem .5rem;background:var(--ctp-surface0);border:none;border-radius:.2rem;color:var(--ctp-subtext0);cursor:pointer;font-size:.75rem}.toggle.on.svelte-1901l6h{background:var(--ctp-green);color:var(--ctp-base)}.num-in.svelte-1901l6h{width:5rem;padding:.3rem .5rem;background:var(--ctp-surface0);border:1px solid var(--ctp-surface1);border-radius:.25rem;color:var(--ctp-text);font-size:.8125rem}.num-in.svelte-1901l6h:focus{outline:none;border-color:var(--ctp-blue)}.hint.svelte-1901l6h{font-size:.6875rem;color:var(--ctp-overlay0)}.section.svelte-1m5vtsu{display:flex;flex-direction:column;gap:.5rem}.sh.svelte-1m5vtsu{margin:.125rem 0;font-size:.6875rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--ctp-overlay0)}.field.svelte-1m5vtsu{display:flex;flex-direction:column;gap:.2rem}.lbl.svelte-1m5vtsu{font-size:.75rem;color:var(--ctp-subtext0)}.text-in.svelte-1m5vtsu{padding:.3rem .5rem;background:var(--ctp-surface0);border:1px solid var(--ctp-surface1);border-radius:.25rem;color:var(--ctp-text);font-size:.8125rem;font-family:var(--ui-font-family)}.text-in.svelte-1m5vtsu:focus{outline:none;border-color:var(--ctp-blue)}.prompt.svelte-1m5vtsu{padding:.375rem .5rem;background:var(--ctp-surface0);border:1px solid var(--ctp-surface1);border-radius:.25rem;color:var(--ctp-text);font-size:.8rem;font-family:var(--term-font-family, monospace);resize:vertical;min-height:3rem;line-height:1.4}.prompt.svelte-1m5vtsu:focus{outline:none;border-color:var(--ctp-blue)}.prompt.svelte-1m5vtsu::placeholder{color:var(--ctp-overlay0)}.seg.svelte-1m5vtsu{display:flex;border-radius:.25rem;overflow:hidden;border:1px solid var(--ctp-surface1)}.seg.svelte-1m5vtsu button:where(.svelte-1m5vtsu){flex:1;padding:.25rem .5rem;background:var(--ctp-surface0);border:none;color:var(--ctp-overlay1);font-size:.75rem;cursor:pointer;font-family:var(--ui-font-family)}.seg.svelte-1m5vtsu button:where(.svelte-1m5vtsu):not(:last-child){border-right:1px solid var(--ctp-surface1)}.seg.svelte-1m5vtsu button:where(.svelte-1m5vtsu):hover{background:var(--ctp-surface1);color:var(--ctp-subtext1)}.seg.svelte-1m5vtsu button.active:where(.svelte-1m5vtsu){background:color-mix(in srgb,var(--ctp-blue) 20%,var(--ctp-surface0));color:var(--ctp-blue);font-weight:600}.prov-list.svelte-1m5vtsu{display:flex;flex-direction:column;gap:.3rem}.prov-panel.svelte-1m5vtsu{background:var(--ctp-surface0);border:1px solid var(--ctp-surface1);border-radius:.3rem;overflow:hidden;transition:opacity .15s}.prov-panel.disabled.svelte-1m5vtsu{opacity:.5}.prov-hdr.svelte-1m5vtsu{display:flex;align-items:center;gap:.5rem;width:100%;padding:.45rem .625rem;background:transparent;border:none;color:var(--ctp-text);cursor:pointer;text-align:left;font-size:.8rem;font-family:var(--ui-font-family)}.prov-hdr.svelte-1m5vtsu:hover{background:var(--ctp-base)}.prov-name.svelte-1m5vtsu{font-weight:600;white-space:nowrap}.prov-desc.svelte-1m5vtsu{flex:1;color:var(--ctp-overlay0);font-size:.7rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.prov-chev.svelte-1m5vtsu{color:var(--ctp-overlay0);font-size:.7rem;flex-shrink:0}.prov-body.svelte-1m5vtsu{padding:.5rem .625rem;border-top:1px solid var(--ctp-surface1);display:flex;flex-direction:column;gap:.5rem}.toggle-row.svelte-1m5vtsu{display:flex;align-items:center;justify-content:space-between;cursor:pointer}.toggle.svelte-1m5vtsu{position:relative;width:2rem;height:1.125rem;border:none;border-radius:.5625rem;background:var(--ctp-surface1);cursor:pointer;transition:background .2s;padding:0;flex-shrink:0}.toggle.on.svelte-1m5vtsu{background:var(--ctp-blue)}.thumb.svelte-1m5vtsu{position:absolute;top:.125rem;left:.125rem;width:.875rem;height:.875rem;border-radius:50%;background:var(--ctp-text);transition:transform .2s}.toggle.on.svelte-1m5vtsu .thumb:where(.svelte-1m5vtsu){transform:translate(.875rem)}.caps.svelte-1m5vtsu{display:flex;flex-wrap:wrap;gap:.25rem}.cap.svelte-1m5vtsu{padding:.125rem .5rem;background:color-mix(in srgb,var(--ctp-blue) 10%,transparent);color:var(--ctp-blue);border-radius:.75rem;font-size:.65rem;font-weight:500}.section.svelte-rv3lwt{display:flex;flex-direction:column;gap:.5rem}.sh.svelte-rv3lwt{margin:.375rem 0 .125rem;font-size:.6875rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--ctp-overlay0)}.keyring-status.svelte-rv3lwt{display:flex;align-items:center;gap:.5rem;font-size:.8rem;padding:.375rem .5rem;border-radius:.25rem;background:var(--ctp-surface0)}.ks-dot.svelte-rv3lwt{width:.5rem;height:.5rem;border-radius:50%;flex-shrink:0;background:var(--ctp-overlay0)}.keyring-status.ok.svelte-rv3lwt .ks-dot:where(.svelte-rv3lwt){background:var(--ctp-green)}.keyring-status.unavail.svelte-rv3lwt .ks-dot:where(.svelte-rv3lwt){background:var(--ctp-peach)}.keyring-status.ok.svelte-rv3lwt{color:var(--ctp-subtext1)}.keyring-status.unavail.svelte-rv3lwt{color:var(--ctp-peach)}.empty-hint.svelte-rv3lwt{font-size:.8rem;color:var(--ctp-overlay0);margin:0;font-style:italic}.secret-list.svelte-rv3lwt{display:flex;flex-direction:column;gap:.25rem}.secret-row.svelte-rv3lwt{display:flex;align-items:center;gap:.375rem;padding:.3rem .5rem;background:var(--ctp-surface0);border:1px solid var(--ctp-surface1);border-radius:.25rem}.secret-key.svelte-rv3lwt{font-size:.8rem;color:var(--ctp-text);font-weight:500;flex:1}.secret-val.svelte-rv3lwt{font-family:var(--term-font-family, monospace);font-size:.75rem;color:var(--ctp-overlay1);min-width:7rem}.add-secret.svelte-rv3lwt,.add-policy.svelte-rv3lwt{display:flex;align-items:center;gap:.375rem;margin-top:.25rem}.flex1.svelte-rv3lwt{flex:1;min-width:0}.dd-wrap.svelte-rv3lwt{position:relative;flex-shrink:0}.dd-btn.svelte-rv3lwt{display:flex;align-items:center;justify-content:space-between;gap:.25rem;background:var(--ctp-surface0);border:1px solid var(--ctp-surface1);border-radius:.25rem;color:var(--ctp-subtext1);font-family:var(--ui-font-family);cursor:pointer;white-space:nowrap}.dd-btn.small.svelte-rv3lwt{padding:.275rem .5rem;font-size:.75rem;min-width:8rem}.chev.svelte-rv3lwt{width:.625rem;height:.625rem;color:var(--ctp-overlay1);transition:transform .15s}.chev.open.svelte-rv3lwt{transform:rotate(180deg)}.dd-list.svelte-rv3lwt{position:absolute;top:calc(100% + .125rem);left:0;z-index:50;list-style:none;margin:0;padding:.2rem;background:var(--ctp-mantle);border:1px solid var(--ctp-surface1);border-radius:.25rem;min-width:10rem;box-shadow:0 .5rem 1rem color-mix(in srgb,var(--ctp-crust) 60%,transparent)}.dd-item.svelte-rv3lwt{padding:.3rem .5rem;border-radius:.2rem;font-size:.8rem;color:var(--ctp-subtext1);cursor:pointer;outline:none}.dd-item.svelte-rv3lwt:hover,.dd-item.svelte-rv3lwt:focus{background:var(--ctp-surface0);color:var(--ctp-text)}.disabled-item.svelte-rv3lwt{opacity:.4;cursor:not-allowed}.text-in.svelte-rv3lwt{padding:.275rem .5rem;background:var(--ctp-surface0);border:1px solid var(--ctp-surface1);border-radius:.25rem;color:var(--ctp-text);font-size:.8rem;font-family:var(--ui-font-family)}.text-in.svelte-rv3lwt:focus{outline:none;border-color:var(--ctp-blue)}.save-btn.svelte-rv3lwt{padding:.275rem .625rem;background:var(--ctp-blue);border:none;border-radius:.25rem;color:var(--ctp-base);font-size:.75rem;font-weight:600;cursor:pointer;font-family:var(--ui-font-family);flex-shrink:0}.save-btn.svelte-rv3lwt:hover:not(:disabled){filter:brightness(1.1)}.save-btn.svelte-rv3lwt:disabled{opacity:.4;cursor:not-allowed}.policy-list.svelte-rv3lwt{display:flex;flex-direction:column;gap:.25rem}.policy-row.svelte-rv3lwt{display:flex;align-items:center;gap:.375rem;padding:.3rem .5rem;background:var(--ctp-surface0);border:1px solid var(--ctp-surface1);border-radius:.25rem}.pol-pattern.svelte-rv3lwt{font-family:var(--term-font-family, monospace);font-size:.8rem;color:var(--ctp-text);flex:1}.pol-action.svelte-rv3lwt{font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;padding:.1rem .375rem;border-radius:.2rem}.pol-action.block.svelte-rv3lwt{background:color-mix(in srgb,var(--ctp-red) 15%,transparent);color:var(--ctp-red)}.pol-action.warn.svelte-rv3lwt{background:color-mix(in srgb,var(--ctp-yellow) 15%,transparent);color:var(--ctp-yellow)}.icon-btn.svelte-rv3lwt{background:none;border:none;color:var(--ctp-overlay0);cursor:pointer;font-size:.85rem;padding:.2rem;border-radius:.15rem}.icon-btn.svelte-rv3lwt:hover{color:var(--ctp-text);background:var(--ctp-surface1)}.icon-btn.danger.svelte-rv3lwt:hover{color:var(--ctp-red)}.seg.svelte-rv3lwt{display:flex;border-radius:.25rem;overflow:hidden;border:1px solid var(--ctp-surface1);flex-shrink:0}.seg.svelte-rv3lwt button:where(.svelte-rv3lwt){padding:.25rem .5rem;background:var(--ctp-surface0);border:none;color:var(--ctp-overlay1);font-size:.75rem;cursor:pointer;font-family:var(--ui-font-family)}.seg.svelte-rv3lwt button:where(.svelte-rv3lwt):not(:last-child){border-right:1px solid var(--ctp-surface1)}.seg.svelte-rv3lwt button.active:where(.svelte-rv3lwt){background:color-mix(in srgb,var(--ctp-blue) 20%,var(--ctp-surface0));color:var(--ctp-blue);font-weight:600}.section.svelte-15znwuq{display:flex;flex-direction:column;gap:.4rem}.sh.svelte-15znwuq{margin:.125rem 0;font-size:.6875rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--ctp-overlay0)}.lbl.svelte-15znwuq{font-size:.8rem;color:var(--ctp-subtext0)}.proj-tabs.svelte-15znwuq{display:flex;gap:.25rem;flex-wrap:wrap}.proj-tab.svelte-15znwuq{padding:.25rem .625rem;background:var(--ctp-surface0);border:1px solid var(--ctp-surface1);border-radius:.25rem;color:var(--ctp-subtext0);font-size:.75rem;cursor:pointer;font-family:var(--ui-font-family)}.proj-tab.svelte-15znwuq:hover{color:var(--ctp-text);border-color:var(--ctp-surface2)}.proj-tab.active.svelte-15znwuq{border-color:var(--ctp-mauve);color:var(--ctp-mauve);background:color-mix(in srgb,var(--ctp-mauve) 10%,var(--ctp-surface0))}.text-in.svelte-15znwuq{padding:.3rem .5rem;background:var(--ctp-surface0);border:1px solid var(--ctp-surface1);border-radius:.25rem;color:var(--ctp-text);font-size:.8125rem;font-family:var(--ui-font-family)}.text-in.svelte-15znwuq:focus{outline:none;border-color:var(--ctp-blue)}.prompt.svelte-15znwuq{padding:.375rem .5rem;background:var(--ctp-surface0);border:1px solid var(--ctp-surface1);border-radius:.25rem;color:var(--ctp-text);font-size:.8rem;font-family:var(--term-font-family, monospace);resize:vertical;line-height:1.4}.prompt.svelte-15znwuq:focus{outline:none;border-color:var(--ctp-blue)}.prompt.svelte-15znwuq::placeholder{color:var(--ctp-overlay0)}.seg.svelte-15znwuq{display:flex;border-radius:.25rem;overflow:hidden;border:1px solid var(--ctp-surface1)}.seg.svelte-15znwuq button:where(.svelte-15znwuq){flex:1;padding:.25rem .375rem;background:var(--ctp-surface0);border:none;color:var(--ctp-overlay1);font-size:.75rem;cursor:pointer;font-family:var(--ui-font-family)}.seg.svelte-15znwuq button:where(.svelte-15znwuq):not(:last-child){border-right:1px solid var(--ctp-surface1)}.seg.svelte-15znwuq button:where(.svelte-15znwuq):hover{background:var(--ctp-surface1);color:var(--ctp-subtext1)}.seg.svelte-15znwuq button.active:where(.svelte-15znwuq){background:color-mix(in srgb,var(--ctp-blue) 20%,var(--ctp-surface0));color:var(--ctp-blue);font-weight:600}.toggle-fields.svelte-15znwuq{display:flex;flex-direction:column;gap:.375rem}.toggle-row.svelte-15znwuq{display:flex;align-items:center;justify-content:space-between;cursor:pointer;padding:.25rem 0}.toggle.svelte-15znwuq{position:relative;width:2rem;height:1.125rem;border:none;border-radius:.5625rem;background:var(--ctp-surface1);cursor:pointer;transition:background .2s;padding:0;flex-shrink:0}.toggle.on.svelte-15znwuq{background:var(--ctp-blue)}.thumb.svelte-15znwuq{position:absolute;top:.125rem;left:.125rem;width:.875rem;height:.875rem;border-radius:50%;background:var(--ctp-text);transition:transform .2s;display:block}.toggle.on.svelte-15znwuq .thumb:where(.svelte-15znwuq){transform:translate(.875rem)}.slider-row.svelte-15znwuq{display:flex;align-items:center;gap:.625rem}.slider-row.svelte-15znwuq input[type=range]:where(.svelte-15znwuq){flex:1;accent-color:var(--ctp-blue)}.slider-val.svelte-15znwuq{font-size:.8rem;color:var(--ctp-text);min-width:3.5rem;text-align:right}.section.svelte-r8m6y{display:flex;flex-direction:column;gap:.5rem}.sh.svelte-r8m6y{margin:.125rem 0;font-size:.6875rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--ctp-overlay0)}.lbl.svelte-r8m6y{font-size:.8rem;color:var(--ctp-subtext0)}.desc.svelte-r8m6y{font-size:.75rem;color:var(--ctp-overlay1);margin:0;font-style:italic}.seg.svelte-r8m6y{display:flex;border-radius:.25rem;overflow:hidden;border:1px solid var(--ctp-surface1)}.seg.svelte-r8m6y button:where(.svelte-r8m6y){flex:1;padding:.25rem .5rem;background:var(--ctp-surface0);border:none;color:var(--ctp-overlay1);font-size:.75rem;cursor:pointer;font-family:var(--ui-font-family)}.seg.svelte-r8m6y button:where(.svelte-r8m6y):not(:last-child){border-right:1px solid var(--ctp-surface1)}.seg.svelte-r8m6y button:where(.svelte-r8m6y):hover{background:var(--ctp-surface1);color:var(--ctp-subtext1)}.seg.svelte-r8m6y button.active:where(.svelte-r8m6y){background:color-mix(in srgb,var(--ctp-blue) 20%,var(--ctp-surface0));color:var(--ctp-blue);font-weight:600}.slider-row.svelte-r8m6y{display:flex;align-items:center;gap:.5rem}.slider-row.svelte-r8m6y input[type=range]:where(.svelte-r8m6y){flex:1;accent-color:var(--ctp-blue)}.slider-val.svelte-r8m6y{font-size:.8rem;color:var(--ctp-text);min-width:3rem;text-align:right}.toggle-row.svelte-r8m6y{display:flex;align-items:center;justify-content:space-between;cursor:pointer;padding:.125rem 0}.toggle.svelte-r8m6y{position:relative;width:2rem;height:1.125rem;border:none;border-radius:.5625rem;background:var(--ctp-surface1);cursor:pointer;transition:background .2s;padding:0;flex-shrink:0}.toggle.on.svelte-r8m6y{background:var(--ctp-blue)}.thumb.svelte-r8m6y{position:absolute;top:.125rem;left:.125rem;width:.875rem;height:.875rem;border-radius:50%;background:var(--ctp-text);transition:transform .2s;display:block}.toggle.on.svelte-r8m6y .thumb:where(.svelte-r8m6y){transform:translate(.875rem)}.notif-types.svelte-r8m6y{display:flex;flex-wrap:wrap;gap:.375rem}.notif-chip.svelte-r8m6y{display:flex;align-items:center;gap:.25rem;padding:.2rem .5rem;border-radius:.25rem;font-size:.75rem;cursor:pointer;background:var(--ctp-surface0);border:1px solid var(--ctp-surface1);color:var(--ctp-subtext0);transition:all .12s}.notif-chip.svelte-r8m6y input:where(.svelte-r8m6y){display:none}.notif-chip.active.svelte-r8m6y{background:color-mix(in srgb,var(--ctp-blue) 15%,var(--ctp-surface0));border-color:var(--ctp-blue);color:var(--ctp-blue)}.notif-chip.svelte-r8m6y:hover{border-color:var(--ctp-surface2);color:var(--ctp-subtext1)}.section.svelte-1ovc5q5{display:flex;flex-direction:column;gap:.5rem}.sh.svelte-1ovc5q5{margin:.125rem 0;font-size:.6875rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--ctp-overlay0)}.lbl.svelte-1ovc5q5{font-size:.75rem;color:var(--ctp-subtext0)}.field.svelte-1ovc5q5{display:flex;flex-direction:column;gap:.2rem}.row.svelte-1ovc5q5{flex-direction:row;align-items:center;gap:.5rem}.text-in.svelte-1ovc5q5{padding:.3rem .5rem;background:var(--ctp-surface0);border:1px solid var(--ctp-surface1);border-radius:.25rem;color:var(--ctp-text);font-size:.8125rem;font-family:var(--ui-font-family)}.text-in.svelte-1ovc5q5:focus{outline:none;border-color:var(--ctp-blue)}.prompt.svelte-1ovc5q5{padding:.375rem .5rem;background:var(--ctp-surface0);border:1px solid var(--ctp-surface1);border-radius:.25rem;color:var(--ctp-text);font-size:.8rem;font-family:var(--term-font-family, monospace);resize:vertical;line-height:1.4}.prompt.svelte-1ovc5q5:focus{outline:none;border-color:var(--ctp-blue)}.prompt.svelte-1ovc5q5::placeholder{color:var(--ctp-overlay0)}.num-in.svelte-1ovc5q5{width:4rem;padding:.3rem .5rem;background:var(--ctp-surface0);border:1px solid var(--ctp-surface1);border-radius:.25rem;color:var(--ctp-text);font-size:.8125rem;-moz-appearance:textfield}.num-in.svelte-1ovc5q5::-webkit-inner-spin-button,.num-in.svelte-1ovc5q5::-webkit-outer-spin-button{-webkit-appearance:none}.num-in.svelte-1ovc5q5:focus{outline:none;border-color:var(--ctp-blue)}.unit.svelte-1ovc5q5{font-size:.75rem;color:var(--ctp-overlay0)}.seg.svelte-1ovc5q5{display:flex;border-radius:.25rem;overflow:hidden;border:1px solid var(--ctp-surface1)}.seg.svelte-1ovc5q5 button:where(.svelte-1ovc5q5){flex:1;padding:.25rem .375rem;background:var(--ctp-surface0);border:none;color:var(--ctp-overlay1);font-size:.7rem;cursor:pointer;font-family:var(--ui-font-family)}.seg.svelte-1ovc5q5 button:where(.svelte-1ovc5q5):not(:last-child){border-right:1px solid var(--ctp-surface1)}.seg.svelte-1ovc5q5 button:where(.svelte-1ovc5q5):hover{background:var(--ctp-surface1);color:var(--ctp-subtext1)}.seg.svelte-1ovc5q5 button.active:where(.svelte-1ovc5q5){background:color-mix(in srgb,var(--ctp-blue) 20%,var(--ctp-surface0));color:var(--ctp-blue);font-weight:600}.plugin-list.svelte-1ovc5q5{display:flex;flex-direction:column;gap:.25rem}.plugin-row.svelte-1ovc5q5{display:flex;align-items:center;justify-content:space-between;padding:.375rem .5rem;background:var(--ctp-surface0);border:1px solid var(--ctp-surface1);border-radius:.25rem}.plug-info.svelte-1ovc5q5{display:flex;align-items:baseline;gap:.5rem}.plug-name.svelte-1ovc5q5{font-size:.8rem;color:var(--ctp-text);font-weight:500}.plug-ver.svelte-1ovc5q5{font-size:.7rem;color:var(--ctp-overlay0)}.empty.svelte-1ovc5q5{font-size:.8rem;color:var(--ctp-overlay0);margin:0;font-style:italic}.toggle.svelte-1ovc5q5{position:relative;width:2rem;height:1.125rem;border:none;border-radius:.5625rem;background:var(--ctp-surface1);cursor:pointer;transition:background .2s;padding:0;flex-shrink:0}.toggle.on.svelte-1ovc5q5{background:var(--ctp-blue)}.thumb.svelte-1ovc5q5{position:absolute;top:.125rem;left:.125rem;width:.875rem;height:.875rem;border-radius:50%;background:var(--ctp-text);transition:transform .2s;display:block}.toggle.on.svelte-1ovc5q5 .thumb:where(.svelte-1ovc5q5){transform:translate(.875rem)}.update-row.svelte-1ovc5q5{display:flex;align-items:center;gap:.625rem}.version-label.svelte-1ovc5q5{font-size:.75rem;color:var(--ctp-overlay1);font-family:var(--term-font-family, monospace)}.update-result.svelte-1ovc5q5{font-size:.75rem;color:var(--ctp-green);margin:.125rem 0 0}.data-row.svelte-1ovc5q5{display:flex;gap:.5rem}.action-btn.svelte-1ovc5q5{padding:.275rem .75rem;background:var(--ctp-surface0);border:1px solid var(--ctp-surface1);border-radius:.25rem;color:var(--ctp-subtext1);font-size:.8rem;cursor:pointer;font-family:var(--ui-font-family);transition:background .12s,color .12s}.action-btn.svelte-1ovc5q5:hover:not(:disabled){background:var(--ctp-surface1);color:var(--ctp-text)}.action-btn.svelte-1ovc5q5:disabled{opacity:.4;cursor:not-allowed}.action-btn.secondary.svelte-1ovc5q5{color:var(--ctp-overlay0)}.drawer-backdrop.svelte-1gl9lco{position:fixed;top:0;right:0;bottom:0;left:0;z-index:200;background:color-mix(in srgb,var(--ctp-crust) 60%,transparent);display:flex;align-items:stretch}.drawer-panel.svelte-1gl9lco{width:30rem;max-width:95vw;background:var(--ctp-mantle);border-right:1px solid var(--ctp-surface0);display:flex;flex-direction:column;overflow:hidden;animation:svelte-1gl9lco-slide-in .18s ease-out}@keyframes svelte-1gl9lco-slide-in{0%{transform:translate(-100%);opacity:0}to{transform:translate(0);opacity:1}}.drawer-header.svelte-1gl9lco{height:3rem;display:flex;align-items:center;padding:0 .875rem;border-bottom:1px solid var(--ctp-surface0);flex-shrink:0}.drawer-title.svelte-1gl9lco{flex:1;margin:0;font-size:.9375rem;font-weight:600;color:var(--ctp-text)}.drawer-close.svelte-1gl9lco{width:1.75rem;height:1.75rem;background:transparent;border:none;border-radius:.3rem;color:var(--ctp-overlay1);font-size:1.125rem;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .12s,color .12s}.drawer-close.svelte-1gl9lco:hover{background:var(--ctp-surface0);color:var(--ctp-text)}.drawer-body.svelte-1gl9lco{flex:1;min-height:0;display:flex;overflow:hidden}.cat-nav.svelte-1gl9lco{width:8.5rem;flex-shrink:0;background:var(--ctp-crust);border-right:1px solid var(--ctp-surface0);display:flex;flex-direction:column;padding:.375rem 0;gap:.0625rem;overflow-y:auto}.cat-nav.svelte-1gl9lco::-webkit-scrollbar{display:none}.cat-btn.svelte-1gl9lco{display:flex;align-items:center;gap:.5rem;padding:.5rem .75rem;background:transparent;border:none;color:var(--ctp-subtext0);font-family:var(--ui-font-family);font-size:.8125rem;cursor:pointer;text-align:left;border-radius:0;transition:background .1s,color .1s}.cat-btn.svelte-1gl9lco:hover{background:var(--ctp-surface0);color:var(--ctp-text)}.cat-btn.active.svelte-1gl9lco{background:var(--ctp-surface0);color:var(--ctp-text);border-left:2px solid var(--ctp-mauve);padding-left:calc(.75rem - 2px)}.cat-icon.svelte-1gl9lco{font-size:.875rem;flex-shrink:0}.cat-label.svelte-1gl9lco{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cat-content.svelte-1gl9lco{flex:1;min-width:0;overflow-y:auto;padding:.875rem}.cat-content.svelte-1gl9lco::-webkit-scrollbar{width:.375rem}.cat-content.svelte-1gl9lco::-webkit-scrollbar-track{background:transparent}.cat-content.svelte-1gl9lco::-webkit-scrollbar-thumb{background:var(--ctp-surface1);border-radius:.25rem}.palette-backdrop.svelte-o5jp2k{position:fixed;top:0;right:0;bottom:0;left:0;z-index:300;background:color-mix(in srgb,var(--ctp-crust) 70%,transparent);display:flex;align-items:flex-start;justify-content:center;padding-top:6rem}.palette-panel.svelte-o5jp2k{width:36rem;max-width:92vw;background:var(--ctp-mantle);border:1px solid var(--ctp-surface1);border-radius:.625rem;overflow:hidden;box-shadow:0 1.25rem 3rem color-mix(in srgb,var(--ctp-crust) 60%,transparent);animation:svelte-o5jp2k-palette-appear .12s ease-out}@keyframes svelte-o5jp2k-palette-appear{0%{transform:translateY(-.5rem) scale(.98);opacity:0}to{transform:translateY(0) scale(1);opacity:1}}.palette-input-row.svelte-o5jp2k{display:flex;align-items:center;gap:.5rem;padding:0 .75rem;border-bottom:1px solid var(--ctp-surface0);height:3rem}.palette-icon.svelte-o5jp2k{width:1rem;height:1rem;color:var(--ctp-overlay1);flex-shrink:0}.palette-input.svelte-o5jp2k{flex:1;background:transparent;border:none;outline:none;color:var(--ctp-text);font-family:var(--ui-font-family);font-size:.9375rem;caret-color:var(--ctp-mauve)}.palette-input.svelte-o5jp2k::placeholder{color:var(--ctp-overlay0)}.palette-esc-hint.svelte-o5jp2k{padding:.15rem .35rem;background:var(--ctp-surface0);border:1px solid var(--ctp-surface1);border-radius:.25rem;font-size:.6875rem;color:var(--ctp-overlay1);font-family:var(--ui-font-family);white-space:nowrap}.palette-list.svelte-o5jp2k{list-style:none;margin:0;padding:.375rem;max-height:22rem;overflow-y:auto;display:flex;flex-direction:column;gap:.0625rem}.palette-list.svelte-o5jp2k::-webkit-scrollbar{width:.375rem}.palette-list.svelte-o5jp2k::-webkit-scrollbar-track{background:transparent}.palette-list.svelte-o5jp2k::-webkit-scrollbar-thumb{background:var(--ctp-surface1);border-radius:.25rem}.palette-item.svelte-o5jp2k{display:flex;align-items:center;gap:.5rem;padding:.5rem .625rem;border-radius:.375rem;cursor:pointer;transition:background .08s}.palette-item.selected.svelte-o5jp2k,.palette-item.svelte-o5jp2k:hover{background:var(--ctp-surface0)}.cmd-label.svelte-o5jp2k{flex:1;font-size:.875rem;color:var(--ctp-text)}.cmd-desc.svelte-o5jp2k{font-size:.75rem;color:var(--ctp-subtext0);max-width:12rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cmd-shortcut.svelte-o5jp2k{padding:.1rem .3rem;background:var(--ctp-surface1);border:1px solid var(--ctp-surface2);border-radius:.2rem;font-size:.6875rem;color:var(--ctp-subtext0);font-family:var(--ui-font-family);white-space:nowrap;flex-shrink:0}.palette-empty.svelte-o5jp2k{padding:1.5rem;text-align:center;font-size:.875rem;color:var(--ctp-overlay0);font-style:italic}.toast-container.svelte-13j0wuy{position:fixed;bottom:2.5rem;right:.875rem;z-index:400;display:flex;flex-direction:column;gap:.375rem;pointer-events:none}.toast.svelte-13j0wuy{display:flex;align-items:center;gap:.5rem;padding:.5rem .625rem;border-radius:.4375rem;border:1px solid var(--ctp-surface1);background:var(--ctp-mantle);font-size:.8125rem;color:var(--ctp-text);pointer-events:auto;animation:svelte-13j0wuy-toast-in .18s ease-out;min-width:14rem;max-width:22rem;box-shadow:0 .5rem 1.5rem color-mix(in srgb,var(--ctp-crust) 70%,transparent)}@keyframes svelte-13j0wuy-toast-in{0%{transform:translate(1.5rem);opacity:0}to{transform:translate(0);opacity:1}}.toast-success.svelte-13j0wuy{border-left:3px solid var(--ctp-green)}.toast-warning.svelte-13j0wuy{border-left:3px solid var(--ctp-yellow)}.toast-error.svelte-13j0wuy{border-left:3px solid var(--ctp-red)}.toast-info.svelte-13j0wuy{border-left:3px solid var(--ctp-blue)}.toast-icon.svelte-13j0wuy{flex-shrink:0;font-size:.75rem;font-weight:700}.toast-success.svelte-13j0wuy .toast-icon:where(.svelte-13j0wuy){color:var(--ctp-green)}.toast-warning.svelte-13j0wuy .toast-icon:where(.svelte-13j0wuy){color:var(--ctp-yellow)}.toast-error.svelte-13j0wuy .toast-icon:where(.svelte-13j0wuy){color:var(--ctp-red)}.toast-info.svelte-13j0wuy .toast-icon:where(.svelte-13j0wuy){color:var(--ctp-blue)}.toast-msg.svelte-13j0wuy{flex:1;line-height:1.4}.toast-close.svelte-13j0wuy{flex-shrink:0;width:1.25rem;height:1.25rem;background:transparent;border:none;color:var(--ctp-overlay1);font-size:1rem;cursor:pointer;display:flex;align-items:center;justify-content:center;border-radius:.2rem;padding:0;transition:color .1s,background .1s;line-height:1}.toast-close.svelte-13j0wuy:hover{color:var(--ctp-text);background:var(--ctp-surface0)}body{overflow:hidden}#app{display:flex;flex-direction:column;height:100vh}.app-shell.svelte-krfyfn{flex:1;min-height:0;display:flex;overflow:hidden}.sidebar.svelte-krfyfn{width:var(--sidebar-width);flex-shrink:0;background:var(--ctp-mantle);border-right:1px solid var(--ctp-surface0);display:flex;flex-direction:column;align-items:center;padding:.5rem 0;gap:.25rem}.sidebar-spacer.svelte-krfyfn{flex:1}.sidebar-icon.svelte-krfyfn{width:2rem;height:2rem;border-radius:.375rem;border:none;background:transparent;color:var(--ctp-overlay1);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .15s,color .15s;padding:0}.sidebar-icon.svelte-krfyfn:hover{background:var(--ctp-surface0);color:var(--ctp-text)}.sidebar-icon.active.svelte-krfyfn{background:var(--ctp-surface1);color:var(--ctp-mauve)}.sidebar-icon.svelte-krfyfn svg:where(.svelte-krfyfn){width:1rem;height:1rem}.workspace.svelte-krfyfn{flex:1;min-width:0;display:flex;flex-direction:column;overflow:hidden}.project-grid.svelte-krfyfn{flex:1;min-height:0;display:grid;grid-template-columns:1fr 1fr;gap:.5rem;padding:.5rem;background:var(--ctp-crust)}.status-bar.svelte-krfyfn{height:var(--status-bar-height);background:var(--ctp-crust);border-top:1px solid var(--ctp-surface0);display:flex;align-items:center;gap:.875rem;padding:0 .625rem;flex-shrink:0;font-size:.6875rem;color:var(--ctp-subtext0)}.status-segment.svelte-krfyfn{display:flex;align-items:center;gap:.25rem;white-space:nowrap}.status-dot-sm.svelte-krfyfn{width:.4375rem;height:.4375rem;border-radius:50%;flex-shrink:0}.status-dot-sm.green.svelte-krfyfn{background:var(--ctp-green)}.status-dot-sm.gray.svelte-krfyfn{background:var(--ctp-overlay0)}.status-dot-sm.orange.svelte-krfyfn{background:var(--ctp-peach)}.status-value.svelte-krfyfn{color:var(--ctp-text);font-weight:500}.status-bar-spacer.svelte-krfyfn{flex:1}.attn-badge.svelte-krfyfn{color:var(--ctp-yellow)}.attn-icon.svelte-krfyfn{width:.75rem;height:.75rem;stroke:var(--ctp-yellow)}.notif-btn.svelte-krfyfn{position:relative;width:1.5rem;height:1.5rem;background:transparent;border:none;color:var(--ctp-subtext0);cursor:pointer;display:flex;align-items:center;justify-content:center;border-radius:.25rem;transition:color .12s;padding:0;flex-shrink:0}.notif-btn.svelte-krfyfn:hover{color:var(--ctp-text)}.notif-btn.svelte-krfyfn svg:where(.svelte-krfyfn){width:.875rem;height:.875rem}.notif-badge.svelte-krfyfn{position:absolute;top:.125rem;right:.125rem;min-width:.875rem;height:.875rem;background:var(--ctp-red);color:var(--ctp-base);border-radius:.4375rem;font-size:.5rem;font-weight:700;display:flex;align-items:center;justify-content:center;padding:0 .2rem;line-height:1}.palette-hint.svelte-krfyfn{padding:.1rem .3rem;background:var(--ctp-surface0);border:1px solid var(--ctp-surface1);border-radius:.2rem;font-size:.6rem;color:var(--ctp-overlay0);font-family:var(--ui-font-family);cursor:pointer;transition:color .1s}.palette-hint.svelte-krfyfn:hover{color:var(--ctp-subtext0)} diff --git a/ui-electrobun/build/dev-linux-x64/AgentOrchestrator-dev/Resources/app/views/mainview/index.html b/ui-electrobun/build/dev-linux-x64/AgentOrchestrator-dev/Resources/app/views/mainview/index.html index 6010200..be0ebb5 100644 --- a/ui-electrobun/build/dev-linux-x64/AgentOrchestrator-dev/Resources/app/views/mainview/index.html +++ b/ui-electrobun/build/dev-linux-x64/AgentOrchestrator-dev/Resources/app/views/mainview/index.html @@ -4,8 +4,8 @@ Svelte App - - + +
                diff --git a/ui-electrobun/src/bun/index.ts b/ui-electrobun/src/bun/index.ts index 1a9b62b..d484fd9 100644 --- a/ui-electrobun/src/bun/index.ts +++ b/ui-electrobun/src/bun/index.ts @@ -1,6 +1,7 @@ import path from "path"; import { BrowserWindow, BrowserView, Updater } from "electrobun/bun"; import { PtyClient } from "./pty-client.ts"; +import { settingsDb } from "./settings-db.ts"; import type { PtyRPCSchema } from "../shared/pty-rpc-schema.ts"; const DEV_SERVER_PORT = 9760; // Project convention: 9700+ range @@ -96,6 +97,60 @@ const rpc = BrowserView.defineRPC({ } catch { /* ignore */ } return { ok: true }; }, + + // ── Settings handlers ───────────────────────────────────────────────── + + "settings.get": ({ key }) => { + try { + return { value: settingsDb.getSetting(key) }; + } catch (err) { + console.error("[settings.get]", err); + return { value: null }; + } + }, + + "settings.set": ({ key, value }) => { + try { + settingsDb.setSetting(key, value); + return { ok: true }; + } catch (err) { + console.error("[settings.set]", err); + return { ok: false }; + } + }, + + "settings.getAll": () => { + try { + return { settings: settingsDb.getAll() }; + } catch (err) { + console.error("[settings.getAll]", err); + return { settings: {} }; + } + }, + + "settings.getProjects": () => { + try { + const projects = settingsDb.listProjects().map((p) => ({ + id: p.id, + config: JSON.stringify(p), + })); + return { projects }; + } catch (err) { + console.error("[settings.getProjects]", err); + return { projects: [] }; + } + }, + + "settings.setProject": ({ id, config }) => { + try { + const parsed = JSON.parse(config); + settingsDb.setProject(id, { id, ...parsed }); + return { ok: true }; + } catch (err) { + console.error("[settings.setProject]", err); + return { ok: false }; + } + }, }, messages: { diff --git a/ui-electrobun/src/bun/settings-db.ts b/ui-electrobun/src/bun/settings-db.ts new file mode 100644 index 0000000..5f6a609 --- /dev/null +++ b/ui-electrobun/src/bun/settings-db.ts @@ -0,0 +1,173 @@ +/** + * SQLite-backed settings store for the Bun process. + * Uses bun:sqlite (built-in, synchronous, zero external deps). + * DB path: ~/.config/agor/settings.db + */ + +import { Database } from "bun:sqlite"; +import { homedir } from "os"; +import { mkdirSync } from "fs"; +import { join } from "path"; + +// ── DB path ────────────────────────────────────────────────────────────────── + +const CONFIG_DIR = join(homedir(), ".config", "agor"); +const DB_PATH = join(CONFIG_DIR, "settings.db"); + +// ── Schema ─────────────────────────────────────────────────────────────────── + +const SCHEMA = ` +PRAGMA journal_mode = WAL; +PRAGMA busy_timeout = 500; + +CREATE TABLE IF NOT EXISTS schema_version ( + version INTEGER NOT NULL +); + +CREATE TABLE IF NOT EXISTS settings ( + key TEXT PRIMARY KEY, + value TEXT NOT NULL +); + +CREATE TABLE IF NOT EXISTS projects ( + id TEXT PRIMARY KEY, + config TEXT NOT NULL -- JSON blob +); + +CREATE TABLE IF NOT EXISTS custom_themes ( + id TEXT PRIMARY KEY, + name TEXT NOT NULL, + palette TEXT NOT NULL -- JSON blob +); +`; + +// ── SettingsDb class ───────────────────────────────────────────────────────── + +export interface ProjectConfig { + id: string; + name: string; + cwd: string; + accent?: string; + provider?: string; + profile?: string; + model?: string; + [key: string]: unknown; +} + +export interface CustomTheme { + id: string; + name: string; + palette: Record; +} + +export class SettingsDb { + private db: Database; + + constructor() { + // Ensure config dir exists before opening DB + mkdirSync(CONFIG_DIR, { recursive: true }); + + this.db = new Database(DB_PATH); + this.db.exec(SCHEMA); + + // Seed schema_version row if missing + const version = this.db + .query<{ version: number }, []>("SELECT version FROM schema_version LIMIT 1") + .get(); + if (!version) { + this.db.exec("INSERT INTO schema_version (version) VALUES (1)"); + } + } + + // ── Settings ────────────────────────────────────────────────────────────── + + getSetting(key: string): string | null { + const row = this.db + .query<{ value: string }, [string]>("SELECT value FROM settings WHERE key = ?") + .get(key); + return row?.value ?? null; + } + + setSetting(key: string, value: string): void { + this.db + .query("INSERT INTO settings (key, value) VALUES (?, ?) ON CONFLICT(key) DO UPDATE SET value = excluded.value") + .run(key, value); + } + + getAll(): Record { + const rows = this.db + .query<{ key: string; value: string }, []>("SELECT key, value FROM settings") + .all(); + return Object.fromEntries(rows.map((r) => [r.key, r.value])); + } + + // ── Projects ────────────────────────────────────────────────────────────── + + getProject(id: string): ProjectConfig | null { + const row = this.db + .query<{ config: string }, [string]>("SELECT config FROM projects WHERE id = ?") + .get(id); + if (!row) return null; + try { + return JSON.parse(row.config) as ProjectConfig; + } catch { + console.error(`[settings-db] Failed to parse project config for id=${id}`); + return null; + } + } + + setProject(id: string, config: ProjectConfig): void { + const json = JSON.stringify(config); + this.db + .query("INSERT INTO projects (id, config) VALUES (?, ?) ON CONFLICT(id) DO UPDATE SET config = excluded.config") + .run(id, json); + } + + listProjects(): ProjectConfig[] { + const rows = this.db + .query<{ config: string }, []>("SELECT config FROM projects") + .all(); + return rows.flatMap((r) => { + try { + return [JSON.parse(r.config) as ProjectConfig]; + } catch { + return []; + } + }); + } + + // ── Custom Themes ───────────────────────────────────────────────────────── + + getCustomThemes(): CustomTheme[] { + const rows = this.db + .query<{ id: string; name: string; palette: string }, []>( + "SELECT id, name, palette FROM custom_themes" + ) + .all(); + return rows.flatMap((r) => { + try { + return [{ id: r.id, name: r.name, palette: JSON.parse(r.palette) }]; + } catch { + return []; + } + }); + } + + saveCustomTheme(id: string, name: string, palette: Record): void { + const json = JSON.stringify(palette); + this.db + .query( + "INSERT INTO custom_themes (id, name, palette) VALUES (?, ?, ?) ON CONFLICT(id) DO UPDATE SET name = excluded.name, palette = excluded.palette" + ) + .run(id, name, json); + } + + // ── Lifecycle ───────────────────────────────────────────────────────────── + + close(): void { + this.db.close(); + } +} + +// Singleton — one DB handle for the process lifetime +export const settingsDb = new SettingsDb(); diff --git a/ui-electrobun/src/mainview/App.svelte b/ui-electrobun/src/mainview/App.svelte index 6d3dd08..9e253d1 100644 --- a/ui-electrobun/src/mainview/App.svelte +++ b/ui-electrobun/src/mainview/App.svelte @@ -1,8 +1,12 @@ @@ -64,12 +101,16 @@ {#if themeOpen}
                  - {#each THEMES as t} -
                • { themeId = t.id; themeOpen = false; }} - onkeydown={e => (e.key === 'Enter' || e.key === ' ') && (themeId = t.id, themeOpen = false)} - >{t.label}
                • + {#each THEME_GROUPS as group} + + {#each THEMES.filter(t => t.group === group) as t} +
                • selectTheme(t.id)} + onkeydown={e => (e.key === 'Enter' || e.key === ' ') && selectTheme(t.id)} + >{t.label}
                • + {/each} {/each}
                {/if} @@ -86,19 +127,20 @@ {#if uiFontOpen}
                  {#each UI_FONTS as f} -
                • { uiFont = f.value; uiFontOpen = false; }} - onkeydown={e => (e.key === 'Enter' || e.key === ' ') && (uiFont = f.value, uiFontOpen = false)} + onclick={() => selectUIFont(f.value)} + onkeydown={e => (e.key === 'Enter' || e.key === ' ') && selectUIFont(f.value)} >{f.label}
                • {/each}
                {/if}
                - + {uiFontSize}px - +
                @@ -112,19 +154,20 @@ {#if termFontOpen}
                  {#each TERM_FONTS as f} -
                • { termFont = f.value; termFontOpen = false; }} - onkeydown={e => (e.key === 'Enter' || e.key === ' ') && (termFont = f.value, termFontOpen = false)} + onclick={() => selectTermFont(f.value)} + onkeydown={e => (e.key === 'Enter' || e.key === ' ') && selectTermFont(f.value)} >{f.label}
                • {/each}
                {/if}
                - + {termFontSize}px - +
                @@ -169,9 +212,16 @@ position: absolute; top: calc(100% + 0.125rem); left: 0; right: 0; z-index: 50; list-style: none; margin: 0; padding: 0.25rem; background: var(--ctp-mantle); border: 1px solid var(--ctp-surface1); border-radius: 0.3rem; - max-height: 12rem; overflow-y: auto; + max-height: 14rem; overflow-y: auto; box-shadow: 0 0.5rem 1rem color-mix(in srgb, var(--ctp-crust) 60%, transparent); } + .dd-group-label { + padding: 0.25rem 0.5rem 0.125rem; + font-size: 0.625rem; font-weight: 700; text-transform: uppercase; + letter-spacing: 0.06em; color: var(--ctp-overlay0); + border-top: 1px solid var(--ctp-surface0); + } + .dd-group-label:first-child { border-top: none; } .dd-item { padding: 0.3rem 0.5rem; border-radius: 0.2rem; font-size: 0.8125rem; color: var(--ctp-subtext1); cursor: pointer; outline: none; list-style: none; diff --git a/ui-electrobun/src/mainview/theme-store.svelte.ts b/ui-electrobun/src/mainview/theme-store.svelte.ts new file mode 100644 index 0000000..f2df772 --- /dev/null +++ b/ui-electrobun/src/mainview/theme-store.svelte.ts @@ -0,0 +1,86 @@ +/** + * Svelte 5 rune-based theme store. + * Applies all 26 --ctp-* CSS vars to document.documentElement instantly. + * Persists selection via settings RPC. + * + * Usage: + * import { themeStore } from './theme-store.svelte'; + * themeStore.setTheme('tokyo-night'); + * await themeStore.initTheme(rpc); + */ + +import { applyCssVars, THEME_LIST, type ThemeId } from "./themes.ts"; + +const SETTING_KEY = "theme"; +const DEFAULT_THEME: ThemeId = "mocha"; + +// ── Minimal RPC interface ───────────────────────────────────────────────────── +// Avoids importing the full Electroview class — just the subset we need. + +interface SettingsRpc { + request: { + "settings.get"(p: { key: string }): Promise<{ value: string | null }>; + "settings.set"(p: { key: string; value: string }): Promise<{ ok: boolean }>; + }; +} + +// ── Helpers ─────────────────────────────────────────────────────────────────── + +function isValidThemeId(id: string): id is ThemeId { + return THEME_LIST.some((t) => t.id === id); +} + +// ── Store ───────────────────────────────────────────────────────────────────── + +function createThemeStore() { + let currentThemeId = $state(DEFAULT_THEME); + let rpc: SettingsRpc | null = null; + + /** Apply CSS vars immediately — synchronous, no flash. */ + function applyToDocument(id: ThemeId): void { + applyCssVars(id); + currentThemeId = id; + } + + /** + * Change the active theme. + * Applies CSS vars immediately and persists asynchronously. + */ + function setTheme(id: ThemeId): void { + applyToDocument(id); + if (rpc) { + rpc.request["settings.set"]({ key: SETTING_KEY, value: id }).catch((err) => { + console.error("[theme-store] Failed to persist theme:", err); + }); + } + } + + /** + * Load persisted theme from settings on startup. + * Call once in App.svelte onMount. + */ + async function initTheme(rpcInstance: SettingsRpc): Promise { + rpc = rpcInstance; + try { + const result = await rpc.request["settings.get"]({ key: SETTING_KEY }); + const saved = result.value; + if (saved && isValidThemeId(saved)) { + applyToDocument(saved); + } else { + // Apply default to ensure vars are set even when nothing was persisted. + applyToDocument(DEFAULT_THEME); + } + } catch (err) { + console.error("[theme-store] Failed to load theme from settings:", err); + applyToDocument(DEFAULT_THEME); + } + } + + return { + get currentTheme() { return currentThemeId; }, + setTheme, + initTheme, + }; +} + +export const themeStore = createThemeStore(); diff --git a/ui-electrobun/src/mainview/themes.ts b/ui-electrobun/src/mainview/themes.ts new file mode 100644 index 0000000..4f01fd6 --- /dev/null +++ b/ui-electrobun/src/mainview/themes.ts @@ -0,0 +1,310 @@ +/** + * Full 17-theme palette definitions. + * Ported from src/lib/styles/themes.ts — kept in sync manually. + * Each theme maps to the same 26 --ctp-* CSS custom property slots. + */ + +// ── Types ───────────────────────────────────────────────────────────────────── + +export type ThemeId = + | "mocha" | "macchiato" | "frappe" | "latte" + | "vscode-dark" | "atom-one-dark" | "monokai" | "dracula" + | "nord" | "solarized-dark" | "github-dark" + | "tokyo-night" | "gruvbox-dark" | "ayu-dark" | "poimandres" + | "vesper" | "midnight"; + +export interface ThemePalette { + rosewater: string; flamingo: string; pink: string; mauve: string; + red: string; maroon: string; peach: string; yellow: string; + green: string; teal: string; sky: string; sapphire: string; + blue: string; lavender: string; + text: string; subtext1: string; subtext0: string; + overlay2: string; overlay1: string; overlay0: string; + surface2: string; surface1: string; surface0: string; + base: string; mantle: string; crust: string; +} + +export interface XtermTheme { + background: string; foreground: string; + cursor: string; cursorAccent: string; + selectionBackground: string; selectionForeground: string; + black: string; red: string; green: string; yellow: string; + blue: string; magenta: string; cyan: string; white: string; + brightBlack: string; brightRed: string; brightGreen: string; + brightYellow: string; brightBlue: string; brightMagenta: string; + brightCyan: string; brightWhite: string; +} + +export interface ThemeMeta { + id: ThemeId; + label: string; + group: string; + isDark: boolean; +} + +// ── Metadata list ───────────────────────────────────────────────────────────── + +export const THEME_LIST: ThemeMeta[] = [ + { id: "mocha", label: "Catppuccin Mocha", group: "Catppuccin", isDark: true }, + { id: "macchiato", label: "Catppuccin Macchiato",group: "Catppuccin", isDark: true }, + { id: "frappe", label: "Catppuccin Frappé", group: "Catppuccin", isDark: true }, + { id: "latte", label: "Catppuccin Latte", group: "Catppuccin", isDark: false }, + { id: "vscode-dark", label: "VSCode Dark+", group: "Editor", isDark: true }, + { id: "atom-one-dark", label: "Atom One Dark", group: "Editor", isDark: true }, + { id: "monokai", label: "Monokai", group: "Editor", isDark: true }, + { id: "dracula", label: "Dracula", group: "Editor", isDark: true }, + { id: "nord", label: "Nord", group: "Editor", isDark: true }, + { id: "solarized-dark", label: "Solarized Dark", group: "Editor", isDark: true }, + { id: "github-dark", label: "GitHub Dark", group: "Editor", isDark: true }, + { id: "tokyo-night", label: "Tokyo Night", group: "Deep Dark", isDark: true }, + { id: "gruvbox-dark", label: "Gruvbox Dark", group: "Deep Dark", isDark: true }, + { id: "ayu-dark", label: "Ayu Dark", group: "Deep Dark", isDark: true }, + { id: "poimandres", label: "Poimandres", group: "Deep Dark", isDark: true }, + { id: "vesper", label: "Vesper", group: "Deep Dark", isDark: true }, + { id: "midnight", label: "Midnight", group: "Deep Dark", isDark: true }, +]; + +/** Unique group names in display order. */ +export const THEME_GROUPS: string[] = [...new Set(THEME_LIST.map((t) => t.group))]; + +// ── Palettes ────────────────────────────────────────────────────────────────── + +const PALETTES: Record = { + latte: { + rosewater: "#dc8a78", flamingo: "#dd7878", pink: "#ea76cb", mauve: "#8839ef", + red: "#d20f39", maroon: "#e64553", peach: "#fe640b", yellow: "#df8e1d", + green: "#40a02b", teal: "#179299", sky: "#04a5e5", sapphire: "#209fb5", + blue: "#1e66f5", lavender: "#7287fd", + text: "#4c4f69", subtext1: "#5c5f77", subtext0: "#6c6f85", + overlay2: "#7c7f93", overlay1: "#8c8fa1", overlay0: "#9ca0b0", + surface2: "#acb0be", surface1: "#bcc0cc", surface0: "#ccd0da", + base: "#eff1f5", mantle: "#e6e9ef", crust: "#dce0e8", + }, + frappe: { + rosewater: "#f2d5cf", flamingo: "#eebebe", pink: "#f4b8e4", mauve: "#ca9ee6", + red: "#e78284", maroon: "#ea999c", peach: "#ef9f76", yellow: "#e5c890", + green: "#a6d189", teal: "#81c8be", sky: "#99d1db", sapphire: "#85c1dc", + blue: "#8caaee", lavender: "#babbf1", + text: "#c6d0f5", subtext1: "#b5bfe2", subtext0: "#a5adce", + overlay2: "#949cbb", overlay1: "#838ba7", overlay0: "#737994", + surface2: "#626880", surface1: "#51576d", surface0: "#414559", + base: "#303446", mantle: "#292c3c", crust: "#232634", + }, + macchiato: { + rosewater: "#f4dbd6", flamingo: "#f0c6c6", pink: "#f5bde6", mauve: "#c6a0f6", + red: "#ed8796", maroon: "#ee99a0", peach: "#f5a97f", yellow: "#eed49f", + green: "#a6da95", teal: "#8bd5ca", sky: "#91d7e3", sapphire: "#7dc4e4", + blue: "#8aadf4", lavender: "#b7bdf8", + text: "#cad3f5", subtext1: "#b8c0e0", subtext0: "#a5adcb", + overlay2: "#939ab7", overlay1: "#8087a2", overlay0: "#6e738d", + surface2: "#5b6078", surface1: "#494d64", surface0: "#363a4f", + base: "#24273a", mantle: "#1e2030", crust: "#181926", + }, + mocha: { + rosewater: "#f5e0dc", flamingo: "#f2cdcd", pink: "#f5c2e7", mauve: "#cba6f7", + red: "#f38ba8", maroon: "#eba0ac", peach: "#fab387", yellow: "#f9e2af", + green: "#a6e3a1", teal: "#94e2d5", sky: "#89dceb", sapphire: "#74c7ec", + blue: "#89b4fa", lavender: "#b4befe", + text: "#cdd6f4", subtext1: "#bac2de", subtext0: "#a6adc8", + overlay2: "#9399b2", overlay1: "#7f849c", overlay0: "#6c7086", + surface2: "#585b70", surface1: "#45475a", surface0: "#313244", + base: "#1e1e2e", mantle: "#181825", crust: "#11111b", + }, + "vscode-dark": { + rosewater: "#d4a0a0", flamingo: "#cf8686", pink: "#c586c0", mauve: "#c586c0", + red: "#f44747", maroon: "#d16969", peach: "#ce9178", yellow: "#dcdcaa", + green: "#6a9955", teal: "#4ec9b0", sky: "#9cdcfe", sapphire: "#4fc1ff", + blue: "#569cd6", lavender: "#b4b4f7", + text: "#d4d4d4", subtext1: "#cccccc", subtext0: "#b0b0b0", + overlay2: "#858585", overlay1: "#6e6e6e", overlay0: "#5a5a5a", + surface2: "#3e3e42", surface1: "#333338", surface0: "#2d2d30", + base: "#1e1e1e", mantle: "#181818", crust: "#111111", + }, + "atom-one-dark": { + rosewater: "#e5c07b", flamingo: "#e06c75", pink: "#c678dd", mauve: "#c678dd", + red: "#e06c75", maroon: "#be5046", peach: "#d19a66", yellow: "#e5c07b", + green: "#98c379", teal: "#56b6c2", sky: "#56b6c2", sapphire: "#61afef", + blue: "#61afef", lavender: "#c8ccd4", + text: "#abb2bf", subtext1: "#9da5b4", subtext0: "#8b92a0", + overlay2: "#7f848e", overlay1: "#636d83", overlay0: "#545862", + surface2: "#474b56", surface1: "#3b3f4c", surface0: "#333842", + base: "#282c34", mantle: "#21252b", crust: "#181a1f", + }, + monokai: { + rosewater: "#f8f8f2", flamingo: "#f92672", pink: "#f92672", mauve: "#ae81ff", + red: "#f92672", maroon: "#f92672", peach: "#fd971f", yellow: "#e6db74", + green: "#a6e22e", teal: "#66d9ef", sky: "#66d9ef", sapphire: "#66d9ef", + blue: "#66d9ef", lavender: "#ae81ff", + text: "#f8f8f2", subtext1: "#e8e8e2", subtext0: "#cfcfc2", + overlay2: "#a8a8a2", overlay1: "#90908a", overlay0: "#75715e", + surface2: "#595950", surface1: "#49483e", surface0: "#3e3d32", + base: "#272822", mantle: "#1e1f1c", crust: "#141411", + }, + dracula: { + rosewater: "#f1c4e0", flamingo: "#ff79c6", pink: "#ff79c6", mauve: "#bd93f9", + red: "#ff5555", maroon: "#ff6e6e", peach: "#ffb86c", yellow: "#f1fa8c", + green: "#50fa7b", teal: "#8be9fd", sky: "#8be9fd", sapphire: "#8be9fd", + blue: "#6272a4", lavender: "#bd93f9", + text: "#f8f8f2", subtext1: "#e8e8e2", subtext0: "#c0c0ba", + overlay2: "#a0a0a0", overlay1: "#7f7f7f", overlay0: "#6272a4", + surface2: "#555969", surface1: "#44475a", surface0: "#383a4a", + base: "#282a36", mantle: "#21222c", crust: "#191a21", + }, + nord: { + rosewater: "#d08770", flamingo: "#bf616a", pink: "#b48ead", mauve: "#b48ead", + red: "#bf616a", maroon: "#bf616a", peach: "#d08770", yellow: "#ebcb8b", + green: "#a3be8c", teal: "#8fbcbb", sky: "#88c0d0", sapphire: "#81a1c1", + blue: "#5e81ac", lavender: "#b48ead", + text: "#eceff4", subtext1: "#e5e9f0", subtext0: "#d8dee9", + overlay2: "#a5adba", overlay1: "#8891a0", overlay0: "#6c7588", + surface2: "#4c566a", surface1: "#434c5e", surface0: "#3b4252", + base: "#2e3440", mantle: "#272c36", crust: "#20242c", + }, + "solarized-dark": { + rosewater: "#d33682", flamingo: "#dc322f", pink: "#d33682", mauve: "#6c71c4", + red: "#dc322f", maroon: "#cb4b16", peach: "#cb4b16", yellow: "#b58900", + green: "#859900", teal: "#2aa198", sky: "#2aa198", sapphire: "#268bd2", + blue: "#268bd2", lavender: "#6c71c4", + text: "#839496", subtext1: "#93a1a1", subtext0: "#778a8b", + overlay2: "#657b83", overlay1: "#586e75", overlay0: "#4a6068", + surface2: "#1c4753", surface1: "#143845", surface0: "#073642", + base: "#002b36", mantle: "#00222b", crust: "#001a21", + }, + "github-dark": { + rosewater: "#ffa198", flamingo: "#ff7b72", pink: "#f778ba", mauve: "#d2a8ff", + red: "#ff7b72", maroon: "#ffa198", peach: "#ffa657", yellow: "#e3b341", + green: "#7ee787", teal: "#56d4dd", sky: "#79c0ff", sapphire: "#79c0ff", + blue: "#58a6ff", lavender: "#d2a8ff", + text: "#c9d1d9", subtext1: "#b1bac4", subtext0: "#8b949e", + overlay2: "#6e7681", overlay1: "#565c64", overlay0: "#484f58", + surface2: "#373e47", surface1: "#30363d", surface0: "#21262d", + base: "#0d1117", mantle: "#090c10", crust: "#050608", + }, + "tokyo-night": { + rosewater: "#f7768e", flamingo: "#ff9e64", pink: "#bb9af7", mauve: "#bb9af7", + red: "#f7768e", maroon: "#db4b4b", peach: "#ff9e64", yellow: "#e0af68", + green: "#9ece6a", teal: "#73daca", sky: "#7dcfff", sapphire: "#7aa2f7", + blue: "#7aa2f7", lavender: "#bb9af7", + text: "#c0caf5", subtext1: "#a9b1d6", subtext0: "#9aa5ce", + overlay2: "#787c99", overlay1: "#565f89", overlay0: "#414868", + surface2: "#3b4261", surface1: "#292e42", surface0: "#232433", + base: "#1a1b26", mantle: "#16161e", crust: "#101014", + }, + "gruvbox-dark": { + rosewater: "#d65d0e", flamingo: "#cc241d", pink: "#d3869b", mauve: "#b16286", + red: "#fb4934", maroon: "#cc241d", peach: "#fe8019", yellow: "#fabd2f", + green: "#b8bb26", teal: "#8ec07c", sky: "#83a598", sapphire: "#83a598", + blue: "#458588", lavender: "#d3869b", + text: "#ebdbb2", subtext1: "#d5c4a1", subtext0: "#bdae93", + overlay2: "#a89984", overlay1: "#928374", overlay0: "#7c6f64", + surface2: "#504945", surface1: "#3c3836", surface0: "#32302f", + base: "#1d2021", mantle: "#191b1c", crust: "#141617", + }, + "ayu-dark": { + rosewater: "#f07178", flamingo: "#f07178", pink: "#d2a6ff", mauve: "#d2a6ff", + red: "#f07178", maroon: "#f07178", peach: "#ff8f40", yellow: "#ffb454", + green: "#aad94c", teal: "#95e6cb", sky: "#73b8ff", sapphire: "#59c2ff", + blue: "#59c2ff", lavender: "#d2a6ff", + text: "#bfbdb6", subtext1: "#acaaa4", subtext0: "#9b9892", + overlay2: "#73726e", overlay1: "#5c5b57", overlay0: "#464542", + surface2: "#383838", surface1: "#2c2c2c", surface0: "#242424", + base: "#0b0e14", mantle: "#080a0f", crust: "#05070a", + }, + poimandres: { + rosewater: "#d0679d", flamingo: "#d0679d", pink: "#fcc5e9", mauve: "#a6accd", + red: "#d0679d", maroon: "#d0679d", peach: "#e4f0fb", yellow: "#fffac2", + green: "#5de4c7", teal: "#5de4c7", sky: "#89ddff", sapphire: "#add7ff", + blue: "#91b4d5", lavender: "#a6accd", + text: "#e4f0fb", subtext1: "#d0d6e0", subtext0: "#a6accd", + overlay2: "#767c9d", overlay1: "#506477", overlay0: "#3e4f5e", + surface2: "#303340", surface1: "#252b37", surface0: "#1e2433", + base: "#1b1e28", mantle: "#171922", crust: "#12141c", + }, + vesper: { + rosewater: "#de6e6e", flamingo: "#de6e6e", pink: "#c79bf0", mauve: "#c79bf0", + red: "#de6e6e", maroon: "#de6e6e", peach: "#ffcfa8", yellow: "#ffc799", + green: "#7cb37c", teal: "#6bccb0", sky: "#8abeb7", sapphire: "#6eb4bf", + blue: "#6eb4bf", lavender: "#c79bf0", + text: "#b8b5ad", subtext1: "#a09d95", subtext0: "#878480", + overlay2: "#6e6b66", overlay1: "#55524d", overlay0: "#3d3a36", + surface2: "#302e2a", surface1: "#252320", surface0: "#1c1a17", + base: "#101010", mantle: "#0a0a0a", crust: "#050505", + }, + midnight: { + rosewater: "#e8a0bf", flamingo: "#ea6f91", pink: "#e8a0bf", mauve: "#c4a7e7", + red: "#eb6f92", maroon: "#ea6f91", peach: "#f6c177", yellow: "#ebbcba", + green: "#9ccfd8", teal: "#9ccfd8", sky: "#a4d4e4", sapphire: "#8bbee8", + blue: "#7ba4cc", lavender: "#c4a7e7", + text: "#c4c4c4", subtext1: "#a8a8a8", subtext0: "#8c8c8c", + overlay2: "#6e6e6e", overlay1: "#525252", overlay0: "#383838", + surface2: "#262626", surface1: "#1a1a1a", surface0: "#111111", + base: "#000000", mantle: "#000000", crust: "#000000", + }, +}; + +// ── Public API ──────────────────────────────────────────────────────────────── + +export const THEMES = THEME_LIST; + +export function getTheme(id: ThemeId): ThemeMeta { + return THEME_LIST.find((t) => t.id === id) ?? THEME_LIST[0]; +} + +export function getPalette(id: ThemeId): ThemePalette { + return PALETTES[id] ?? PALETTES.mocha; +} + +/** Build xterm.js ITheme from a named theme. */ +export function getXtermTheme(id: ThemeId): XtermTheme { + const p = getPalette(id); + return { + background: p.base, + foreground: p.text, + cursor: p.rosewater, + cursorAccent: p.base, + selectionBackground: p.surface1, + selectionForeground: p.text, + black: p.surface1, + red: p.red, + green: p.green, + yellow: p.yellow, + blue: p.blue, + magenta: p.pink, + cyan: p.teal, + white: p.subtext1, + brightBlack: p.surface2, + brightRed: p.red, + brightGreen: p.green, + brightYellow: p.yellow, + brightBlue: p.blue, + brightMagenta: p.pink, + brightCyan: p.teal, + brightWhite: p.subtext0, + }; +} + +/** CSS custom property name → palette key mapping (26 vars). */ +export const CSS_VAR_MAP: [string, keyof ThemePalette][] = [ + ["--ctp-rosewater", "rosewater"], ["--ctp-flamingo", "flamingo"], + ["--ctp-pink", "pink"], ["--ctp-mauve", "mauve"], + ["--ctp-red", "red"], ["--ctp-maroon", "maroon"], + ["--ctp-peach", "peach"], ["--ctp-yellow", "yellow"], + ["--ctp-green", "green"], ["--ctp-teal", "teal"], + ["--ctp-sky", "sky"], ["--ctp-sapphire", "sapphire"], + ["--ctp-blue", "blue"], ["--ctp-lavender", "lavender"], + ["--ctp-text", "text"], ["--ctp-subtext1", "subtext1"], + ["--ctp-subtext0", "subtext0"], ["--ctp-overlay2", "overlay2"], + ["--ctp-overlay1", "overlay1"], ["--ctp-overlay0", "overlay0"], + ["--ctp-surface2", "surface2"], ["--ctp-surface1", "surface1"], + ["--ctp-surface0", "surface0"], ["--ctp-base", "base"], + ["--ctp-mantle", "mantle"], ["--ctp-crust", "crust"], +]; + +/** Apply all 26 --ctp-* CSS custom properties to document.documentElement. */ +export function applyCssVars(id: ThemeId): void { + const p = getPalette(id); + const style = document.documentElement.style; + for (const [varName, key] of CSS_VAR_MAP) { + style.setProperty(varName, p[key]); + } +} diff --git a/ui-electrobun/src/shared/pty-rpc-schema.ts b/ui-electrobun/src/shared/pty-rpc-schema.ts index 207bc6d..a04a791 100644 --- a/ui-electrobun/src/shared/pty-rpc-schema.ts +++ b/ui-electrobun/src/shared/pty-rpc-schema.ts @@ -43,6 +43,34 @@ export type PtyRPCRequests = { params: { sessionId: string }; response: { ok: boolean }; }; + + // ── Settings RPC ─────────────────────────────────────────────────────────── + + /** Get a single setting value by key. Returns null if not set. */ + "settings.get": { + params: { key: string }; + response: { value: string | null }; + }; + /** Persist a setting key/value pair. */ + "settings.set": { + params: { key: string; value: string }; + response: { ok: boolean }; + }; + /** Return all settings as a flat object. */ + "settings.getAll": { + params: Record; + response: { settings: Record }; + }; + /** Return all persisted projects. */ + "settings.getProjects": { + params: Record; + response: { projects: Array<{ id: string; config: string }> }; + }; + /** Persist a project config (JSON-serialised on the caller side). */ + "settings.setProject": { + params: { id: string; config: string }; + response: { ok: boolean }; + }; }; // ── Messages (Bun → WebView, fire-and-forget) ────────────────────────────────