@minimalcorp/tsunagi 0.1.21 → 0.1.22
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.next/standalone/apps/web/.next/BUILD_ID +1 -1
- package/.next/standalone/apps/web/.next/build-manifest.json +3 -3
- package/.next/standalone/apps/web/.next/prerender-manifest.json +3 -3
- package/.next/standalone/apps/web/.next/server/app/_global-error.html +1 -1
- package/.next/standalone/apps/web/.next/server/app/_global-error.rsc +1 -1
- package/.next/standalone/apps/web/.next/server/app/_global-error.segments/__PAGE__.segment.rsc +1 -1
- package/.next/standalone/apps/web/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
- package/.next/standalone/apps/web/.next/server/app/_global-error.segments/_head.segment.rsc +1 -1
- package/.next/standalone/apps/web/.next/server/app/_global-error.segments/_index.segment.rsc +1 -1
- package/.next/standalone/apps/web/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
- package/.next/standalone/apps/web/.next/server/app/_not-found/page.js.nft.json +1 -1
- package/.next/standalone/apps/web/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
- package/.next/standalone/apps/web/.next/server/app/_not-found.html +1 -1
- package/.next/standalone/apps/web/.next/server/app/_not-found.rsc +13 -13
- package/.next/standalone/apps/web/.next/server/app/_not-found.segments/_full.segment.rsc +13 -13
- package/.next/standalone/apps/web/.next/server/app/_not-found.segments/_head.segment.rsc +4 -4
- package/.next/standalone/apps/web/.next/server/app/_not-found.segments/_index.segment.rsc +8 -8
- package/.next/standalone/apps/web/.next/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +2 -2
- package/.next/standalone/apps/web/.next/server/app/_not-found.segments/_not-found.segment.rsc +3 -3
- package/.next/standalone/apps/web/.next/server/app/_not-found.segments/_tree.segment.rsc +2 -2
- package/.next/standalone/apps/web/.next/server/app/index.html +1 -1
- package/.next/standalone/apps/web/.next/server/app/index.rsc +15 -15
- package/.next/standalone/apps/web/.next/server/app/index.segments/__PAGE__.segment.rsc +4 -4
- package/.next/standalone/apps/web/.next/server/app/index.segments/_full.segment.rsc +15 -15
- package/.next/standalone/apps/web/.next/server/app/index.segments/_head.segment.rsc +4 -4
- package/.next/standalone/apps/web/.next/server/app/index.segments/_index.segment.rsc +8 -8
- package/.next/standalone/apps/web/.next/server/app/index.segments/_tree.segment.rsc +2 -2
- package/.next/standalone/apps/web/.next/server/app/page.js.nft.json +1 -1
- package/.next/standalone/apps/web/.next/server/app/page_client-reference-manifest.js +1 -1
- package/.next/standalone/apps/web/.next/server/app/settings/page.js.nft.json +1 -1
- package/.next/standalone/apps/web/.next/server/app/settings/page_client-reference-manifest.js +1 -1
- package/.next/standalone/apps/web/.next/server/app/settings.html +1 -1
- package/.next/standalone/apps/web/.next/server/app/settings.rsc +15 -15
- package/.next/standalone/apps/web/.next/server/app/settings.segments/_full.segment.rsc +15 -15
- package/.next/standalone/apps/web/.next/server/app/settings.segments/_head.segment.rsc +4 -4
- package/.next/standalone/apps/web/.next/server/app/settings.segments/_index.segment.rsc +8 -8
- package/.next/standalone/apps/web/.next/server/app/settings.segments/_tree.segment.rsc +2 -2
- package/.next/standalone/apps/web/.next/server/app/settings.segments/settings/__PAGE__.segment.rsc +4 -4
- package/.next/standalone/apps/web/.next/server/app/settings.segments/settings.segment.rsc +3 -3
- package/.next/standalone/apps/web/.next/server/app/tasks/[id]/page.js.nft.json +1 -1
- package/.next/standalone/apps/web/.next/server/app/tasks/[id]/page_client-reference-manifest.js +1 -1
- package/.next/standalone/apps/web/.next/server/chunks/ssr/{[root-of-the-server]__05isylw._.js → [root-of-the-server]__07kf5h-._.js} +15 -15
- package/.next/standalone/apps/web/.next/server/chunks/ssr/{[root-of-the-server]__0ro8-ey._.js → [root-of-the-server]__0_gamc9._.js} +14 -14
- package/.next/standalone/apps/web/.next/server/chunks/ssr/{[root-of-the-server]__0.71xtd._.js → [root-of-the-server]__0a7t~wn._.js} +2 -2
- package/.next/standalone/apps/web/.next/server/chunks/ssr/{[root-of-the-server]__0a0hk7u._.js → [root-of-the-server]__0cwejmp._.js} +2 -2
- package/.next/standalone/apps/web/.next/server/chunks/ssr/{_0m02uow._.js → _06gug4~._.js} +2 -2
- package/.next/standalone/apps/web/.next/server/chunks/ssr/_0_3mc_u._.js +14 -0
- package/.next/standalone/apps/web/.next/server/chunks/ssr/_0g.cd6a._.js +1 -1
- package/.next/standalone/apps/web/.next/server/chunks/ssr/{_12haisb._.js → _0gpi5iq._.js} +2 -2
- package/.next/standalone/apps/web/.next/server/chunks/ssr/{_0ciirh0._.js → _0ie-fls._.js} +2 -2
- package/.next/standalone/apps/web/.next/server/chunks/ssr/apps_web_src_0w0y9fd._.js +3 -0
- package/.next/standalone/apps/web/.next/server/chunks/ssr/apps_web_src_app_settings_page_tsx_0i6itlb._.js +1 -1
- package/.next/standalone/apps/web/.next/server/chunks/ssr/apps_web_src_app_tasks_[id]_page_tsx_0jshsm2._.js +1 -1
- package/.next/standalone/apps/web/.next/server/chunks/ssr/{node_modules_07l1hvz._.js → node_modules_0-dhyl6._.js} +1 -1
- package/.next/standalone/apps/web/.next/server/chunks/ssr/{node_modules_0.2komk._.js → node_modules_0-ecrjy._.js} +1 -1
- package/.next/standalone/apps/web/.next/server/chunks/ssr/{node_modules_0f2d1ld._.js → node_modules_0.6~k__._.js} +1 -1
- package/.next/standalone/apps/web/.next/server/chunks/ssr/{node_modules_0o5v9qy._.js → node_modules_0.7pxhy._.js} +1 -1
- package/.next/standalone/apps/web/.next/server/chunks/ssr/{node_modules_0--8gmr._.js → node_modules_0126g83._.js} +1 -1
- package/.next/standalone/apps/web/.next/server/chunks/ssr/{node_modules_12fhr6_._.js → node_modules_06iewnh._.js} +1 -1
- package/.next/standalone/apps/web/.next/server/chunks/ssr/{node_modules_0rry_x9._.js → node_modules_0efb87~._.js} +1 -1
- package/.next/standalone/apps/web/.next/server/chunks/ssr/{node_modules_05ji-z-._.js → node_modules_0j3gfu0._.js} +1 -1
- package/.next/standalone/apps/web/.next/server/chunks/ssr/{node_modules_0coeuci._.js → node_modules_0of7.-5._.js} +1 -1
- package/.next/standalone/apps/web/.next/server/chunks/ssr/{node_modules_0jnk_y1._.js → node_modules_0r6ewmn._.js} +1 -1
- package/.next/standalone/apps/web/.next/server/chunks/ssr/{node_modules_05c~np0._.js → node_modules_0s64~o2._.js} +1 -1
- package/.next/standalone/apps/web/.next/server/chunks/ssr/{node_modules_0j0v234._.js → node_modules_0uwlz8.._.js} +1 -1
- package/.next/standalone/apps/web/.next/server/chunks/ssr/{node_modules_0s5._2.._.js → node_modules_0w5pf1p._.js} +1 -1
- package/.next/standalone/apps/web/.next/server/chunks/ssr/{node_modules_0o-eb.1._.js → node_modules_0ybihhp._.js} +1 -1
- package/.next/standalone/apps/web/.next/server/chunks/ssr/{node_modules_11h4-ta._.js → node_modules_0zmomoe._.js} +1 -1
- package/.next/standalone/apps/web/.next/server/chunks/ssr/{node_modules_0al2sy~._.js → node_modules_11gk90a._.js} +1 -1
- package/.next/standalone/apps/web/.next/server/middleware-build-manifest.js +3 -3
- package/.next/standalone/apps/web/.next/server/pages/404.html +1 -1
- package/.next/standalone/apps/web/.next/server/pages/500.html +1 -1
- package/.next/standalone/apps/web/.next/server/server-reference-manifest.js +1 -1
- package/.next/standalone/apps/web/.next/server/server-reference-manifest.json +1 -1
- package/.next/standalone/apps/web/.next/static/chunks/0-nditm2kmxy3.js +1 -0
- package/.next/standalone/apps/web/.next/static/chunks/{10i6zv0moo8jf.js → 00vlzdkbq6_w3.js} +1 -1
- package/.next/standalone/apps/web/.next/static/chunks/05b63w8.ny19p.js +1 -0
- package/.next/standalone/apps/web/.next/static/chunks/{0dqrg945xihvq.js → 0e9140l311w8t.js} +13 -13
- package/.next/standalone/apps/web/.next/static/chunks/0krkukgs6hg9c.js +1 -0
- package/.next/standalone/apps/web/.next/static/chunks/{16ud~dw7vj3ay.js → 0kw1z8z_ld6s0.js} +13 -13
- package/.next/standalone/apps/web/.next/static/chunks/0sy8tzk6r-pb~.js +1 -0
- package/.next/standalone/apps/web/.next/static/chunks/0tggf01u1vugi.js +3 -0
- package/.next/standalone/apps/web/.next/static/chunks/0thsn6nq5b-cz.js +12 -0
- package/.next/standalone/apps/web/.next/static/chunks/0vfrsmi1vl53y.css +4 -0
- package/.next/standalone/apps/web/.next/static/chunks/10ildl1-mw9ez.js +5 -0
- package/dist/server/index.js +10 -0
- package/dist/server/lib/whisper-process.d.ts +23 -0
- package/dist/server/lib/whisper-process.js +196 -0
- package/dist/server/routes/whisper.d.ts +2 -0
- package/dist/server/routes/whisper.js +56 -0
- package/npm-shrinkwrap.json +2 -2
- package/package.json +2 -1
- package/whisper-server/README.md +23 -0
- package/whisper-server/download_model.py +14 -0
- package/whisper-server/requirements.txt +6 -0
- package/whisper-server/run.sh +24 -0
- package/whisper-server/server.py +52 -0
- package/.next/standalone/apps/web/.next/server/chunks/ssr/_0-0rmdn._.js +0 -3
- package/.next/standalone/apps/web/.next/server/chunks/ssr/_075y~8w._.js +0 -14
- package/.next/standalone/apps/web/.next/static/chunks/0120px2-6x5y9.js +0 -12
- package/.next/standalone/apps/web/.next/static/chunks/01vu~a32zh7cz.js +0 -1
- package/.next/standalone/apps/web/.next/static/chunks/0dv3n-mxhr4w1.js +0 -1
- package/.next/standalone/apps/web/.next/static/chunks/0eh4r4805-t.c.js +0 -3
- package/.next/standalone/apps/web/.next/static/chunks/0w12j2_zw_0ax.js +0 -1
- package/.next/standalone/apps/web/.next/static/chunks/0xn4aezxw~.je.js +0 -1
- package/.next/standalone/apps/web/.next/static/chunks/147e715pxo.p..css +0 -4
- package/.next/standalone/apps/web/.next/static/chunks/1490sj3xb9_m6.js +0 -5
- /package/.next/standalone/apps/web/.next/static/{qdfRw8pC3EF2mv12yUFzd → Sabbf98Kp2U-uM3Ul0na7}/_buildManifest.js +0 -0
- /package/.next/standalone/apps/web/.next/static/{qdfRw8pC3EF2mv12yUFzd → Sabbf98Kp2U-uM3Ul0na7}/_clientMiddlewareManifest.js +0 -0
- /package/.next/standalone/apps/web/.next/static/{qdfRw8pC3EF2mv12yUFzd → Sabbf98Kp2U-uM3Ul0na7}/_ssgManifest.js +0 -0
|
@@ -8,28 +8,28 @@ ${a.themeCSS}`),void 0!==a.fontFamily&&(c+=`
|
|
|
8
8
|
|
|
9
9
|
If you want to hide the \`${b.titleName}\`, you can wrap it with our VisuallyHidden component.
|
|
10
10
|
|
|
11
|
-
For more information, see https://radix-ui.com/primitives/docs/components/${b.docsSlug}`;return p.useEffect(()=>{a&&(document.getElementById(a)||console.error(c))},[c,a]),null},li=({contentRef:a,descriptionId:b})=>{let c=lg("DialogDescriptionWarning"),d=`Warning: Missing \`Description\` or \`aria-describedby={undefined}\` for {${c.contentName}}.`;return p.useEffect(()=>{let c=a.current?.getAttribute("aria-describedby");b&&c&&(document.getElementById(b)||console.warn(d))},[d,a,b]),null},lj=Symbol.for("react.lazy"),lk=p[" use ".trim().toString()];function ll(a){var b;return null!=a&&"object"==typeof a&&"$$typeof"in a&&a.$$typeof===lj&&"_payload"in a&&"object"==typeof(b=a._payload)&&null!==b&&"then"in b}var lm=Symbol("radix.slottable");function ln(a){return p.isValidElement(a)&&"function"==typeof a.type&&"__radixId"in a.type&&a.type.__radixId===lm}var lo=["a","button","div","form","h2","h3","img","input","label","li","nav","ol","p","select","span","svg","ul"].reduce((a,b)=>{var c,d;let e,f,g,h=(d=c=`Primitive.${b}`,(e=p.forwardRef((a,b)=>{let{children:c,...d}=a;if(ll(c)&&"function"==typeof lk&&(c=lk(c._payload)),p.isValidElement(c)){var e;let a,f,g=(e=c,(f=(a=Object.getOwnPropertyDescriptor(e.props,"ref")?.get)&&"isReactWarning"in a&&a.isReactWarning)?e.ref:(f=(a=Object.getOwnPropertyDescriptor(e,"ref")?.get)&&"isReactWarning"in a&&a.isReactWarning)?e.props.ref:e.props.ref||e.ref),h=function(a,b){let c={...b};for(let d in b){let e=a[d],f=b[d];/^on[A-Z]/.test(d)?e&&f?c[d]=(...a)=>{let b=f(...a);return e(...a),b}:e&&(c[d]=e):"style"===d?c[d]={...e,...f}:"className"===d&&(c[d]=[e,f].filter(Boolean).join(" "))}return{...a,...c}}(d,c.props);return c.type!==p.Fragment&&(h.ref=b?jI(b,g):g),p.cloneElement(c,h)}return p.Children.count(c)>1?p.Children.only(null):null})).displayName=`${d}.SlotClone`,f=e,(g=p.forwardRef((a,b)=>{let{children:c,...d}=a;ll(c)&&"function"==typeof lk&&(c=lk(c._payload));let e=p.Children.toArray(c),g=e.find(ln);if(g){let a=g.props.children,c=e.map(b=>b!==g?b:p.Children.count(a)>1?p.Children.only(null):p.isValidElement(a)?a.props.children:null);return(0,o.jsx)(f,{...d,ref:b,children:p.isValidElement(a)?p.cloneElement(a,void 0,c):null})}return(0,o.jsx)(f,{...d,ref:b,children:c})})).displayName=`${c}.Slot`,g),i=p.forwardRef((a,c)=>{let{asChild:d,...e}=a;return(0,o.jsx)(d?h:b,{...e,ref:c})});return i.displayName=`Primitive.${b}`,{...a,[b]:i}},{}),lp='[cmdk-group=""]',lq='[cmdk-group-items=""]',lr='[cmdk-item=""]',ls=`${lr}:not([aria-disabled="true"])`,lt="cmdk-item-select",lu="data-value",lv=(a,b,c)=>{var d;return d=a,function a(b,c,d,e,f,g,h){if(g===c.length)return f===b.length?1:.99;var i=`${f},${g}`;if(void 0!==h[i])return h[i];for(var j,k,l,m,n=e.charAt(g),o=d.indexOf(n,f),p=0;o>=0;)(j=a(b,c,d,e,o+1,g+1,h))>p&&(o===f?j*=1:jB.test(b.charAt(o-1))?(j*=.8,(l=b.slice(f,o-1).match(jC))&&f>0&&(j*=Math.pow(.999,l.length))):jD.test(b.charAt(o-1))?(j*=.9,(m=b.slice(f,o-1).match(jE))&&f>0&&(j*=Math.pow(.999,m.length))):(j*=.17,f>0&&(j*=Math.pow(.999,o-f))),b.charAt(o)!==c.charAt(g)&&(j*=.9999)),(j<.1&&d.charAt(o-1)===e.charAt(g+1)||e.charAt(g+1)===e.charAt(g)&&d.charAt(o-1)!==e.charAt(g))&&.1*(k=a(b,c,d,e,o+1,g+2,h))>j&&(j=.1*k),j>p&&(p=j),o=d.indexOf(n,o+1);return h[i]=p,p}(d=c&&c.length>0?`${d+" "+c.join(" ")}`:d,b,jF(d),jF(b),0,0,{})},lw=p.createContext(void 0),lx=p.createContext(void 0),ly=p.createContext(void 0),lz=p.forwardRef((a,b)=>{let c=lJ(()=>{var b,c;return{search:"",value:null!=(c=null!=(b=a.value)?b:a.defaultValue)?c:"",selectedItemId:void 0,filtered:{count:0,items:new Map,groups:new Set}}}),d=lJ(()=>new Set),e=lJ(()=>new Map),f=lJ(()=>new Map),g=lJ(()=>new Set),h=lH(a),{label:i,children:j,value:k,onValueChange:l,filter:m,shouldFilter:n,loop:o,disablePointerSelection:q=!1,vimBindings:r=!0,...s}=a,u=jN(),v=jN(),w=jN(),x=p.useRef(null),y=lM();lI(()=>{if(void 0!==k){let a=k.trim();c.current.value=a,z.emit()}},[k]),lI(()=>{y(6,F)},[]);let z=p.useMemo(()=>({subscribe:a=>(g.current.add(a),()=>g.current.delete(a)),snapshot:()=>c.current,setState:(a,b,d)=>{var e,f,g,i;if(!Object.is(c.current[a],b)){if(c.current[a]=b,"search"===a)E(),C(),y(1,D);else if("value"===a){if(document.activeElement.hasAttribute("cmdk-input")||document.activeElement.hasAttribute("cmdk-root")){let a=document.getElementById(w);a?a.focus():null==(e=document.getElementById(u))||e.focus()}if(y(7,()=>{var a;c.current.selectedItemId=null==(a=G())?void 0:a.id,z.emit()}),d||y(5,F),(null==(f=h.current)?void 0:f.value)!==void 0){null==(i=(g=h.current).onValueChange)||i.call(g,null!=b?b:"");return}}z.emit()}},emit:()=>{g.current.forEach(a=>a())}}),[]),A=p.useMemo(()=>({value:(a,b,d)=>{var e;b!==(null==(e=f.current.get(a))?void 0:e.value)&&(f.current.set(a,{value:b,keywords:d}),c.current.filtered.items.set(a,B(b,d)),y(2,()=>{C(),z.emit()}))},item:(a,b)=>(d.current.add(a),b&&(e.current.has(b)?e.current.get(b).add(a):e.current.set(b,new Set([a]))),y(3,()=>{E(),C(),c.current.value||D(),z.emit()}),()=>{f.current.delete(a),d.current.delete(a),c.current.filtered.items.delete(a);let b=G();y(4,()=>{E(),(null==b?void 0:b.getAttribute("id"))===a&&D(),z.emit()})}),group:a=>(e.current.has(a)||e.current.set(a,new Set),()=>{f.current.delete(a),e.current.delete(a)}),filter:()=>h.current.shouldFilter,label:i||a["aria-label"],getDisablePointerSelection:()=>h.current.disablePointerSelection,listId:u,inputId:w,labelId:v,listInnerRef:x}),[]);function B(a,b){var d,e;let f=null!=(e=null==(d=h.current)?void 0:d.filter)?e:lv;return a?f(a,c.current.search,b):0}function C(){if(!c.current.search||!1===h.current.shouldFilter)return;let a=c.current.filtered.items,b=[];c.current.filtered.groups.forEach(c=>{let d=e.current.get(c),f=0;d.forEach(b=>{f=Math.max(a.get(b),f)}),b.push([c,f])});let d=x.current;H().sort((b,c)=>{var d,e;let f=b.getAttribute("id"),g=c.getAttribute("id");return(null!=(d=a.get(g))?d:0)-(null!=(e=a.get(f))?e:0)}).forEach(a=>{let b=a.closest(lq);b?b.appendChild(a.parentElement===b?a:a.closest(`${lq} > *`)):d.appendChild(a.parentElement===d?a:a.closest(`${lq} > *`))}),b.sort((a,b)=>b[1]-a[1]).forEach(a=>{var b;let c=null==(b=x.current)?void 0:b.querySelector(`${lp}[${lu}="${encodeURIComponent(a[0])}"]`);null==c||c.parentElement.appendChild(c)})}function D(){let a=H().find(a=>"true"!==a.getAttribute("aria-disabled")),b=null==a?void 0:a.getAttribute(lu);z.setState("value",b||void 0)}function E(){var a,b,g,i;if(!c.current.search||!1===h.current.shouldFilter){c.current.filtered.count=d.current.size;return}c.current.filtered.groups=new Set;let j=0;for(let e of d.current){let d=B(null!=(b=null==(a=f.current.get(e))?void 0:a.value)?b:"",null!=(i=null==(g=f.current.get(e))?void 0:g.keywords)?i:[]);c.current.filtered.items.set(e,d),d>0&&j++}for(let[a,b]of e.current)for(let d of b)if(c.current.filtered.items.get(d)>0){c.current.filtered.groups.add(a);break}c.current.filtered.count=j}function F(){var a,b,c;let d=G();d&&((null==(a=d.parentElement)?void 0:a.firstChild)===d&&(null==(c=null==(b=d.closest(lp))?void 0:b.querySelector('[cmdk-group-heading=""]'))||c.scrollIntoView({block:"nearest"})),d.scrollIntoView({block:"nearest"}))}function G(){var a;return null==(a=x.current)?void 0:a.querySelector(`${lr}[aria-selected="true"]`)}function H(){var a;return Array.from((null==(a=x.current)?void 0:a.querySelectorAll(ls))||[])}function I(a){let b=H()[a];b&&z.setState("value",b.getAttribute(lu))}function J(a){var b;let c=G(),d=H(),e=d.findIndex(a=>a===c),f=d[e+a];null!=(b=h.current)&&b.loop&&(f=e+a<0?d[d.length-1]:e+a===d.length?d[0]:d[e+a]),f&&z.setState("value",f.getAttribute(lu))}function K(a){let b=G(),c=null==b?void 0:b.closest(lp),d;for(;c&&!d;)d=null==(c=a>0?function(a,b){let c=a.nextElementSibling;for(;c;){if(c.matches(b))return c;c=c.nextElementSibling}}(c,lp):function(a,b){let c=a.previousElementSibling;for(;c;){if(c.matches(b))return c;c=c.previousElementSibling}}(c,lp))?void 0:c.querySelector(ls);d?z.setState("value",d.getAttribute(lu)):J(a)}let L=()=>I(H().length-1),M=a=>{a.preventDefault(),a.metaKey?L():a.altKey?K(1):J(1)},N=a=>{a.preventDefault(),a.metaKey?I(0):a.altKey?K(-1):J(-1)};return p.createElement(lo.div,{ref:b,tabIndex:-1,...s,"cmdk-root":"",onKeyDown:a=>{var b;null==(b=s.onKeyDown)||b.call(s,a);let c=a.nativeEvent.isComposing||229===a.keyCode;if(!(a.defaultPrevented||c))switch(a.key){case"n":case"j":r&&a.ctrlKey&&M(a);break;case"ArrowDown":M(a);break;case"p":case"k":r&&a.ctrlKey&&N(a);break;case"ArrowUp":N(a);break;case"Home":a.preventDefault(),I(0);break;case"End":a.preventDefault(),L();break;case"Enter":{a.preventDefault();let b=G();if(b){let a=new Event(lt);b.dispatchEvent(a)}}}}},p.createElement("label",{"cmdk-label":"",htmlFor:A.inputId,id:A.labelId,style:lO},i),lN(a,a=>p.createElement(lx.Provider,{value:z},p.createElement(lw.Provider,{value:A},a))))}),lA=p.forwardRef((a,b)=>{var c,d;let e=jN(),f=p.useRef(null),g=p.useContext(ly),h=p.useContext(lw),i=lH(a),j=null!=(d=null==(c=i.current)?void 0:c.forceMount)?d:null==g?void 0:g.forceMount;lI(()=>{if(!j)return h.item(e,null==g?void 0:g.id)},[j]);let k=lL(e,f,[a.value,a.children,f],a.keywords),l=p.useContext(lx),m=lK(a=>a.value&&a.value===k.current),n=lK(a=>!!j||!1===h.filter()||!a.search||a.filtered.items.get(e)>0);function o(){var a,b;q(),null==(b=(a=i.current).onSelect)||b.call(a,k.current)}function q(){l.setState("value",k.current,!0)}if(p.useEffect(()=>{let b=f.current;if(!(!b||a.disabled))return b.addEventListener(lt,o),()=>b.removeEventListener(lt,o)},[n,a.onSelect,a.disabled]),!n)return null;let{disabled:r,value:s,onSelect:u,forceMount:v,keywords:w,...x}=a;return p.createElement(lo.div,{ref:jI(f,b),...x,id:e,"cmdk-item":"",role:"option","aria-disabled":!!r,"aria-selected":!!m,"data-disabled":!!r,"data-selected":!!m,onPointerMove:r||h.getDisablePointerSelection()?void 0:q,onClick:r?void 0:o},a.children)}),lB=p.forwardRef((a,b)=>{let{heading:c,children:d,forceMount:e,...f}=a,g=jN(),h=p.useRef(null),i=p.useRef(null),j=jN(),k=p.useContext(lw),l=lK(a=>!!e||!1===k.filter()||!a.search||a.filtered.groups.has(g));lI(()=>k.group(g),[]),lL(g,h,[a.value,a.heading,i]);let m=p.useMemo(()=>({id:g,forceMount:e}),[e]);return p.createElement(lo.div,{ref:jI(h,b),...f,"cmdk-group":"",role:"presentation",hidden:!l||void 0},c&&p.createElement("div",{ref:i,"cmdk-group-heading":"","aria-hidden":!0,id:j},c),lN(a,a=>p.createElement("div",{"cmdk-group-items":"",role:"group","aria-labelledby":c?j:void 0},p.createElement(ly.Provider,{value:m},a))))}),lC=p.forwardRef((a,b)=>{let{alwaysRender:c,...d}=a,e=p.useRef(null),f=lK(a=>!a.search);return c||f?p.createElement(lo.div,{ref:jI(e,b),...d,"cmdk-separator":"",role:"separator"}):null}),lD=p.forwardRef((a,b)=>{let{onValueChange:c,...d}=a,e=null!=a.value,f=p.useContext(lx),g=lK(a=>a.search),h=lK(a=>a.selectedItemId),i=p.useContext(lw);return p.useEffect(()=>{null!=a.value&&f.setState("search",a.value)},[a.value]),p.createElement(lo.input,{ref:b,...d,"cmdk-input":"",autoComplete:"off",autoCorrect:"off",spellCheck:!1,"aria-autocomplete":"list",role:"combobox","aria-expanded":!0,"aria-controls":i.listId,"aria-labelledby":i.labelId,"aria-activedescendant":h,id:i.inputId,type:"text",value:e?a.value:g,onChange:a=>{e||f.setState("search",a.target.value),null==c||c(a.target.value)}})}),lE=p.forwardRef((a,b)=>{let{children:c,label:d="Suggestions",...e}=a,f=p.useRef(null),g=p.useRef(null),h=lK(a=>a.selectedItemId),i=p.useContext(lw);return p.useEffect(()=>{if(g.current&&f.current){let a=g.current,b=f.current,c,d=new ResizeObserver(()=>{c=requestAnimationFrame(()=>{let c=a.offsetHeight;b.style.setProperty("--cmdk-list-height",c.toFixed(1)+"px")})});return d.observe(a),()=>{cancelAnimationFrame(c),d.unobserve(a)}}},[]),p.createElement(lo.div,{ref:jI(f,b),...e,"cmdk-list":"",role:"listbox",tabIndex:-1,"aria-activedescendant":h,"aria-label":d,id:i.listId},lN(a,a=>p.createElement("div",{ref:jI(g,i.listInnerRef),"cmdk-list-sizer":""},a)))}),lF=p.forwardRef((a,b)=>{let{open:c,onOpenChange:d,overlayClassName:e,contentClassName:f,container:g,...h}=a;return p.createElement(kX,{open:c,onOpenChange:d},p.createElement(k0,{container:g},p.createElement(k2,{"cmdk-overlay":"",className:e}),p.createElement(k6,{"aria-label":a.label,"cmdk-dialog":"",className:f},p.createElement(lz,{ref:b,...h}))))}),lG=Object.assign(lz,{List:lE,Item:lA,Input:lD,Group:lB,Separator:lC,Dialog:lF,Empty:p.forwardRef((a,b)=>lK(a=>0===a.filtered.count)?p.createElement(lo.div,{ref:b,...a,"cmdk-empty":"",role:"presentation"}):null),Loading:p.forwardRef((a,b)=>{let{progress:c,children:d,label:e="Loading...",...f}=a;return p.createElement(lo.div,{ref:b,...f,"cmdk-loading":"",role:"progressbar","aria-valuenow":c,"aria-valuemin":0,"aria-valuemax":100,"aria-label":e},lN(a,a=>p.createElement("div",{"aria-hidden":!0},a)))})});function lH(a){let b=p.useRef(a);return lI(()=>{b.current=a}),b}var lI=p.useEffect;function lJ(a){let b=p.useRef();return void 0===b.current&&(b.current=a()),b}function lK(a){let b=p.useContext(lx),c=()=>a(b.snapshot());return p.useSyncExternalStore(b.subscribe,c,c)}function lL(a,b,c,d=[]){let e=p.useRef(),f=p.useContext(lw);return lI(()=>{var g;let h=(()=>{var a;for(let b of c){if("string"==typeof b)return b.trim();if("object"==typeof b&&"current"in b)return b.current?null==(a=b.current.textContent)?void 0:a.trim():e.current}})(),i=d.map(a=>a.trim());f.value(a,h,i),null==(g=b.current)||g.setAttribute(lu,h),e.current=h}),e}var lM=()=>{let[a,b]=p.useState(),c=lJ(()=>new Map);return lI(()=>{c.current.forEach(a=>a()),c.current=new Map},[a]),(a,d)=>{c.current.set(a,d),b({})}};function lN({asChild:a,children:b},c){let d;return a&&p.isValidElement(b)?p.cloneElement("function"==typeof(d=b.type)?d(b.props):"render"in d?d.render(b.props):b,{ref:b.ref},c(b.props.children)):c(b)}var lO={position:"absolute",width:"1px",height:"1px",padding:"0",margin:"-1px",overflow:"hidden",clip:"rect(0, 0, 0, 0)",whiteSpace:"nowrap",borderWidth:"0"};a.i(26807);var lP=a.i(187),lQ=a.i(28503);function lR({className:a,...b}){return(0,o.jsx)("textarea",{"data-slot":"textarea",className:(0,jx.cn)("flex field-sizing-content min-h-16 w-full resize-none rounded-md border border-input bg-input/20 px-2 py-2 text-sm transition-colors outline-none placeholder:text-muted-foreground focus-visible:border-ring focus-visible:ring-2 focus-visible:ring-ring/30 disabled:cursor-not-allowed disabled:opacity-50 aria-invalid:border-destructive aria-invalid:ring-2 aria-invalid:ring-destructive/20 md:text-xs/relaxed dark:bg-input/30 dark:aria-invalid:border-destructive/50 dark:aria-invalid:ring-destructive/40",a),...b})}function lS({className:a,...b}){return(0,o.jsx)("div",{"data-slot":"input-group",role:"group",className:(0,jx.cn)("group/input-group relative flex h-7 w-full min-w-0 items-center rounded-md border border-input bg-input/20 transition-colors outline-none in-data-[slot=combobox-content]:focus-within:border-inherit in-data-[slot=combobox-content]:focus-within:ring-0 has-data-[align=block-end]:rounded-md has-data-[align=block-start]:rounded-md has-[[data-slot=input-group-control]:focus-visible]:border-ring has-[[data-slot=input-group-control]:focus-visible]:ring-2 has-[[data-slot=input-group-control]:focus-visible]:ring-ring/30 has-[[data-slot][aria-invalid=true]]:border-destructive has-[[data-slot][aria-invalid=true]]:ring-2 has-[[data-slot][aria-invalid=true]]:ring-destructive/20 has-[textarea]:rounded-md has-[>[data-align=block-end]]:h-auto has-[>[data-align=block-end]]:flex-col has-[>[data-align=block-start]]:h-auto has-[>[data-align=block-start]]:flex-col has-[>textarea]:h-auto dark:bg-input/30 dark:has-[[data-slot][aria-invalid=true]]:ring-destructive/40 has-[>[data-align=block-end]]:[&>input]:pt-3 has-[>[data-align=block-start]]:[&>input]:pb-3 has-[>[data-align=inline-end]]:[&>input]:pr-1.5 has-[>[data-align=inline-start]]:[&>input]:pl-1.5",a),...b})}let lT=(0,lP.cva)("flex h-auto cursor-text items-center justify-center gap-1 py-2 text-xs/relaxed font-medium text-muted-foreground select-none group-data-[disabled=true]/input-group:opacity-50 **:data-[slot=kbd]:rounded-[calc(var(--radius-sm)-2px)] **:data-[slot=kbd]:bg-muted-foreground/10 **:data-[slot=kbd]:px-1 **:data-[slot=kbd]:text-[0.625rem] [&>svg:not([class*='size-'])]:size-3.5",{variants:{align:{"inline-start":"order-first pl-2 has-[>button]:ml-[-0.275rem] has-[>kbd]:ml-[-0.275rem]","inline-end":"order-last pr-2 has-[>button]:mr-[-0.275rem] has-[>kbd]:mr-[-0.275rem]","block-start":"order-first w-full justify-start px-2 pt-2 group-has-[>input]/input-group:pt-2 [.border-b]:pb-2","block-end":"order-last w-full justify-start px-2 pb-2 group-has-[>input]/input-group:pb-2 [.border-t]:pt-2"}},defaultVariants:{align:"inline-start"}});function lU({className:a,align:b="inline-start",...c}){return(0,o.jsx)("div",{role:"group","data-slot":"input-group-addon","data-align":b,className:(0,jx.cn)(lT({align:b}),a),onClick:a=>{a.target.closest("button")||a.currentTarget.parentElement?.querySelector("input")?.focus()},...c})}(0,lP.cva)("flex items-center gap-2 rounded-md text-xs/relaxed shadow-none",{variants:{size:{xs:"h-5 gap-1 rounded-[calc(var(--radius-sm)-2px)] px-1 [&>svg:not([class*='size-'])]:size-3",sm:"gap-1","icon-xs":"size-6 p-0 has-[>svg]:p-0","icon-sm":"size-7 p-0 has-[>svg]:p-0"}},defaultVariants:{size:"xs"}});let lV=(0,d$.default)("search",[["path",{d:"m21 21-4.34-4.34",key:"14j7rj"}],["circle",{cx:"11",cy:"11",r:"8",key:"4ej97u"}]]);a.s(["default",0,lV],50537);var lW=a.i(34157);a.s(["CheckIcon",()=>lW.default],6406);var lW=lW;function lX({className:a,...b}){return(0,o.jsx)(lG,{"data-slot":"command",className:(0,jx.cn)("flex size-full flex-col overflow-hidden rounded-xl bg-popover p-1 text-popover-foreground",a),...b})}function lY({className:a,...b}){return(0,o.jsx)("div",{"data-slot":"command-input-wrapper",className:"p-1 pb-0",children:(0,o.jsxs)(lS,{className:"h-8! bg-input/20 dark:bg-input/30",children:[(0,o.jsx)(lG.Input,{"data-slot":"command-input",className:(0,jx.cn)("w-full text-xs/relaxed outline-hidden disabled:cursor-not-allowed disabled:opacity-50",a),...b}),(0,o.jsx)(lU,{children:(0,o.jsx)(lV,{className:"size-3.5 shrink-0 opacity-50"})})]})})}function lZ({className:a,...b}){return(0,o.jsx)(lG.List,{"data-slot":"command-list",className:(0,jx.cn)("no-scrollbar max-h-72 scroll-py-1 overflow-x-hidden overflow-y-auto outline-none",a),...b})}function l$({className:a,...b}){return(0,o.jsx)(lG.Empty,{"data-slot":"command-empty",className:(0,jx.cn)("py-6 text-center text-xs/relaxed",a),...b})}function l_({className:a,...b}){return(0,o.jsx)(lG.Group,{"data-slot":"command-group",className:(0,jx.cn)("overflow-hidden p-1 text-foreground **:[[cmdk-group-heading]]:px-2.5 **:[[cmdk-group-heading]]:py-1.5 **:[[cmdk-group-heading]]:text-xs **:[[cmdk-group-heading]]:font-medium **:[[cmdk-group-heading]]:text-muted-foreground",a),...b})}function l0({className:a,children:b,...c}){return(0,o.jsxs)(lG.Item,{"data-slot":"command-item",className:(0,jx.cn)("group/command-item relative flex min-h-7 cursor-default items-center gap-2 rounded-md px-2.5 py-1.5 text-xs/relaxed outline-hidden select-none in-data-[slot=dialog-content]:rounded-md data-[disabled=true]:pointer-events-none data-[disabled=true]:opacity-50 data-selected:bg-muted data-selected:text-foreground [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-3.5 data-selected:*:[svg]:text-foreground",a),...c,children:[b,(0,o.jsx)(lW.default,{className:"ml-auto opacity-0 group-has-data-[slot=command-shortcut]/command-item:hidden group-data-[checked=true]/command-item:opacity-100"})]})}function l1({options:a,value:b,onChange:c,placeholder:d="Select option",disabled:e=!1,className:f="",allowCustomValue:g=!1,multiple:h=!1,onClear:i,showClearButton:j=!1}){let[k,l]=(0,p.useState)(!1),[m,n]=(0,p.useState)(""),q=(0,p.useRef)(null),r=(0,p.useMemo)(()=>Array.isArray(b)?b:[b],[b]),s=(0,p.useMemo)(()=>{if(h){if(1===r.length&&"all"===r[0]){let b=a.find(a=>"all"===a.value);return b?.label||""}return r.filter(a=>"all"!==a).map(b=>a.find(a=>a.value===b)?.label).filter(Boolean).join(", ")}return r.map(b=>a.find(a=>a.value===b)?.label).filter(Boolean).join(", ")},[r,a,h]),u=(0,p.useMemo)(()=>{let b={};for(let c of a){let a=c.group||"Other";b[a]||(b[a]=[]),b[a].push(c)}return b},[a]),v=(0,p.useMemo)(()=>Object.keys(u).length>1||!u.Other,[u]),w=a=>{if(h){let b=[...r],d=b.indexOf(a);d>=0?b.splice(d,1):b.push(a),c(b.length>0?b:[])}else c(a),l(!1)},x=()=>{g&&m&&!h&&(c(m),l(!1))};return(0,o.jsxs)(jy,{open:k,onOpenChange:a=>{l(a),a||n("")},children:[(0,o.jsxs)("div",{className:`relative ${f}`,children:[(0,o.jsx)(jz,{ref:q,disabled:e,className:`flex h-9 w-full items-center justify-between pl-3 ${j?"pr-16":"pr-10"} border border-input rounded-md text-sm bg-input/20 dark:bg-input/30 text-foreground transition-colors outline-none hover:border-ring focus-visible:border-ring focus-visible:ring-2 focus-visible:ring-ring/30 data-[state=open]:border-ring data-[state=open]:ring-2 data-[state=open]:ring-ring/30 disabled:opacity-50 disabled:cursor-not-allowed disabled:pointer-events-none cursor-pointer overflow-hidden text-ellipsis whitespace-nowrap text-left shadow-xs`,children:(0,o.jsx)("span",{className:"truncate",children:s||(0,o.jsx)("span",{className:"text-muted-foreground",children:d})})}),j&&i&&(0,o.jsx)("button",{type:"button",onClick:a=>{a.stopPropagation(),i()},className:"absolute right-8 top-1/2 -translate-y-1/2 text-muted-foreground hover:text-foreground transition-colors cursor-pointer z-10","aria-label":"Clear selection",children:(0,o.jsx)(hk.X,{className:"w-4 h-4"})}),(0,o.jsx)(hj,{className:"absolute right-2 top-1/2 -translate-y-1/2 w-4 h-4 text-muted-foreground pointer-events-none"})]}),(0,o.jsx)(jA,{className:"w-[var(--anchor-width)] p-0",align:"start",sideOffset:4,children:(0,o.jsxs)(lX,{filter:(b,c)=>{let d=a.find(a=>a.value===b);return d?+!!`${d.label} ${d.group||""}`.toLowerCase().includes(c.toLowerCase()):0},children:[(0,o.jsx)(lY,{placeholder:"Search...",value:m,onValueChange:n,onKeyDown:a=>{"Enter"===a.key&&g&&x()}}),(0,o.jsxs)(lZ,{children:[(0,o.jsx)(l$,{children:g&&m?(0,o.jsxs)("button",{type:"button",className:"w-full px-2 py-1.5 text-left text-xs cursor-pointer hover:bg-accent rounded",onClick:x,children:['Use "',m,'"']}):"No options found"}),v?Object.entries(u).map(([a,b])=>(0,o.jsx)(l_,{heading:a,children:b.map(a=>(0,o.jsx)(l0,{value:a.value,"data-checked":r.includes(a.value),onSelect:()=>w(a.value),children:(0,o.jsx)("span",{className:"truncate",children:a.label})},a.value))},a)):(0,o.jsx)(l_,{children:a.map(a=>(0,o.jsx)(l0,{value:a.value,"data-checked":r.includes(a.value),onSelect:()=>w(a.value),children:(0,o.jsx)("span",{className:"truncate",children:a.label})},a.value))})]})]})})]})}let l2=(0,d$.default)("code",[["path",{d:"m16 18 6-6-6-6",key:"eg8j8"}],["path",{d:"m8 6-6 6 6 6",key:"ppft3o"}]]);var l3=a.i(77156),l4=a.i(91399);function l5({value:a,onChange:b,editorRef:c,theme:d,activeTab:e,onTabChange:f,disabled:g,onFocusChange:h}){let i=(0,p.useCallback)(a=>{b(a??"")},[b]),j=(0,o.jsx)("div",{className:"border border-border rounded overflow-hidden h-full",children:(0,o.jsx)(q.Editor,{height:"100%",defaultLanguage:"markdown",value:a,onChange:i,onMount:a=>{c.current=a,a.layout(),a.onDidFocusEditorText(()=>h?.(!0)),a.onDidBlurEditorText(()=>h?.(!1))},options:{minimap:{enabled:!1},lineNumbers:"on",wordWrap:"on",fontSize:13,scrollBeyondLastLine:!1,readOnly:g},theme:"dark"===d?"vs-dark":"vs-light"})}),k=(0,o.jsx)("div",{className:"border border-border rounded overflow-y-auto h-full p-4 prose prose-sm prose-slate dark:prose-invert max-w-none",children:a?(0,o.jsx)(cN,{remarkPlugins:[dZ],components:hd,children:a}):(0,o.jsx)("p",{className:"text-muted-foreground italic",children:"No content"})});return(0,o.jsxs)("div",{className:"flex flex-col flex-1 min-h-0",children:[(0,o.jsxs)("div",{className:"flex gap-1 mb-2 md:hidden flex-shrink-0",children:[(0,o.jsxs)(d2.Button,{type:"button",variant:"editor"===e?"default":"outline",size:"sm",onClick:()=>f("editor"),children:[(0,o.jsx)(l2,{className:"w-4 h-4 mr-1"}),"Editor"]}),(0,o.jsxs)(d2.Button,{type:"button",variant:"preview"===e?"default":"outline",size:"sm",onClick:()=>f("preview"),children:[(0,o.jsx)(l3.Eye,{className:"w-4 h-4 mr-1"}),"Preview"]})]}),(0,o.jsxs)("div",{className:"hidden md:grid md:grid-cols-2 md:gap-4 flex-1 min-h-0",children:[j,k]}),(0,o.jsx)("div",{className:"md:hidden flex-1 min-h-0",children:"editor"===e?j:k})]})}a.s(["TaskDialog",0,function({mode:a,isOpen:b,onClose:c,repositories:d=[],task:e,onUpdate:f}){let g=hh(),[h,i]=(0,p.useState)(""),[j,k]=(0,p.useState)([]),[l,m]=(0,p.useState)(""),[n,q]=(0,p.useState)(!1),[r,s]=(0,p.useState)(""),[u,v]=(0,p.useState)({title:"",description:"",owner:"",repo:"",branch:"",baseBranch:"",status:"backlog",effort:void 0,order:void 0}),[w,x]=(0,p.useState)(!1),[y,z]=(0,p.useState)({}),[A,B]=(0,p.useState)("editor"),[C,D]=(0,p.useState)(!1),E=(0,p.useRef)(null),{effectiveTheme:F}=(0,he.useTheme)();(0,p.useEffect)(()=>{"edit"===a&&e&&v({title:e.title,description:e.description,owner:e.owner,repo:e.repo,branch:e.branch,baseBranch:"",status:e.status,effort:e.effort,order:e.order})},[a,e,b]);let G=(0,p.useMemo)(()=>d.map(a=>({value:`${a.owner}/${a.repo}`,label:`${a.owner}/${a.repo}`})),[d]),H=(0,p.useMemo)(()=>j.map(a=>({value:a,label:a===l?`${a} (default)`:a})),[j,l]);(0,p.useEffect)(()=>{if("create"===a){if(!h){k([]),m(""),v(a=>({...a,baseBranch:""}));return}(async()=>{q(!0),s("");try{let[a,b]=h.split("/"),c=await fetch((0,l4.apiUrl)(`/api/repos/${a}/${b}/branches`));if(!c.ok)throw Error("Failed to fetch branches");let d=await c.json();k(d.data.branches),m(d.data.defaultBranch),v(a=>({...a,baseBranch:d.data.defaultBranch}))}catch(a){console.error("Failed to fetch branches:",a),s("Failed to load branches. Repository may not be initialized."),k([]),m("")}finally{q(!1)}})()}},[h,a]);let I=async b=>{if(b.preventDefault(),z({}),"create"===a){x(!0);try{let a=await fetch((0,l4.apiUrl)("/api/tasks/validate"),{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({title:u.title,owner:u.owner,repo:u.repo,branch:u.branch})}),b=await a.json();if(!b.valid){let a={};b.errors.forEach(b=>{a[b.field]=b.message}),z(a),x(!1);return}let d={title:u.title,description:u.description,owner:u.owner,repo:u.repo,branch:u.branch,baseBranch:u.baseBranch};c(),i(""),v({title:"",description:"",owner:"",repo:"",branch:"",baseBranch:"",status:"backlog",effort:void 0,order:void 0}),x(!1);let e=g.loading("Creating task...",d.title);try{if(!(await fetch((0,l4.apiUrl)("/api/tasks"),{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(d)})).ok)throw Error("Failed to create task");g.dismiss(e)}catch(b){let a=b instanceof Error?b.message:"Unknown error";g.error(e,"Failed to create task",a)}}catch(b){x(!1);let a=b instanceof Error?b.message:"Validation failed";g.error(void 0,"Validation failed",a)}}else if("edit"===a&&f&&e){x(!0);try{let a=await f(e.id,{title:u.title,description:u.description,status:u.status,effort:u.effort,order:u.order});if(a.success)c();else if(a.errors){let b={};a.errors.forEach(a=>{b[a.field]=a.message}),z(b)}}catch(a){console.error("Failed to update task:",a),z({global:a instanceof Error?a.message:"Failed to update task. Please try again."})}finally{x(!1)}}},J="create"===a,K=J?"Add New Task":"Edit Task",L=J?"Create":"Save";return(0,o.jsxs)(hi.Dialog,{open:b,onOpenChange:a=>{a.open||w||c()},title:K,maxWidth:J?"2xl":"6xl",fullScreen:!J,showCloseButton:!w,dismissOnEsc:!C,children:[w&&(0,o.jsx)("div",{className:"absolute inset-0 bg-card bg-opacity-90 rounded-lg flex items-center justify-center z-10",children:(0,o.jsx)(hf.LoadingSpinner,{size:"lg",message:J?"Creating task...":"Saving task..."})}),y.global&&(0,o.jsx)("div",{className:"mb-4 p-3 bg-destructive/10 border border-destructive/50 rounded text-destructive text-sm",children:y.global}),(0,o.jsxs)("form",{onSubmit:I,className:J?"space-y-4":"flex flex-col gap-4 flex-1 min-h-0 overflow-hidden",children:[J&&(0,o.jsxs)("div",{children:[(0,o.jsx)("label",{className:"block text-sm font-medium mb-1 text-foreground",children:"Repository *"}),(0,o.jsx)(l1,{options:G,value:h,onChange:a=>{let b=Array.isArray(a)?a[0]||"":a;if(i(b),b){let[a,c]=b.split("/");v(b=>({...b,owner:a,repo:c,baseBranch:""}))}else v(a=>({...a,owner:"",repo:"",baseBranch:""}))},placeholder:"Select repository",disabled:w})]}),(0,o.jsxs)("div",{children:[(0,o.jsx)("label",{className:"block text-sm font-medium mb-1 text-foreground",children:"Title *"}),(0,o.jsx)(lQ.Input,{type:"text",required:!0,maxLength:200,value:u.title,onChange:a=>v({...u,title:a.target.value}),className:"w-full",disabled:w})]}),!J&&e&&(0,o.jsxs)("div",{className:"grid grid-cols-2 gap-x-4 gap-y-2 p-3 bg-muted/50 rounded-md text-sm",children:[(0,o.jsxs)("div",{children:[(0,o.jsx)("span",{className:"font-medium text-foreground",children:"Repository"}),(0,o.jsxs)("p",{className:"text-muted-foreground",children:[e.owner,"/",e.repo]})]}),(0,o.jsxs)("div",{children:[(0,o.jsx)("span",{className:"font-medium text-foreground",children:"Branch"}),(0,o.jsx)("p",{className:"text-muted-foreground",children:e.branch})]}),(0,o.jsxs)("div",{children:[(0,o.jsx)("span",{className:"font-medium text-foreground",children:"Base Branch"}),(0,o.jsx)("p",{className:"text-muted-foreground",children:e.baseBranch||"N/A"})]}),(0,o.jsxs)("div",{children:[(0,o.jsx)("span",{className:"font-medium text-foreground",children:"Worktree"}),(0,o.jsx)("p",{className:"text-muted-foreground capitalize",children:e.worktreeStatus})]})]}),(0,o.jsxs)("div",{className:J?"":"flex flex-col flex-1 min-h-0",children:[(0,o.jsx)("label",{className:"block text-sm font-medium mb-1 text-foreground flex-shrink-0",children:"Description"}),J?(0,o.jsx)(lR,{maxLength:5e3,value:u.description,onChange:a=>v({...u,description:a.target.value}),className:"min-h-24 w-full",disabled:w}):(0,o.jsx)(l5,{value:u.description,onChange:a=>v(b=>({...b,description:a})),editorRef:E,theme:F,activeTab:A,onTabChange:B,disabled:w,onFocusChange:D})]}),!J&&(0,o.jsxs)("div",{className:"grid grid-cols-3 gap-4 flex-shrink-0",children:[(0,o.jsxs)("div",{children:[(0,o.jsx)("label",{className:"block text-sm font-medium mb-1 text-foreground",children:"Status"}),(0,o.jsxs)("select",{value:u.status,onChange:a=>v({...u,status:a.target.value}),className:"w-full h-9 pl-3 pr-10 py-1 rounded-md border border-input bg-transparent text-sm shadow-xs text-foreground",disabled:w,children:[(0,o.jsx)("option",{value:"backlog",children:"Backlog"}),(0,o.jsx)("option",{value:"planning",children:"Planning"}),(0,o.jsx)("option",{value:"tasking",children:"Tasking"}),(0,o.jsx)("option",{value:"coding",children:"Coding"}),(0,o.jsx)("option",{value:"reviewing",children:"Reviewing"}),(0,o.jsx)("option",{value:"done",children:"Done"})]})]}),(0,o.jsxs)("div",{children:[(0,o.jsx)("label",{className:"block text-sm font-medium mb-1 text-foreground",children:"Effort (h)"}),(0,o.jsx)(lQ.Input,{type:"number",step:"0.5",min:"0.5",max:"40",value:u.effort??"",onChange:a=>v({...u,effort:parseFloat(a.target.value)||void 0}),className:"w-full",placeholder:"2.5",disabled:w})]}),(0,o.jsxs)("div",{children:[(0,o.jsx)("label",{className:"block text-sm font-medium mb-1 text-foreground",children:"Order"}),(0,o.jsx)(lQ.Input,{type:"number",min:"0",value:u.order??"",onChange:a=>v({...u,order:parseInt(a.target.value)||void 0}),className:"w-full",placeholder:"0",disabled:w})]})]}),J&&(0,o.jsxs)("div",{children:[(0,o.jsx)("label",{className:"block text-sm font-medium mb-1 text-foreground",children:"Base Branch *"}),n?(0,o.jsxs)("div",{className:"w-full h-9 px-3 rounded-md border border-input bg-transparent text-muted-foreground flex items-center gap-2",children:[(0,o.jsx)(hf.LoadingSpinner,{size:"sm"}),(0,o.jsx)("span",{className:"text-xs",children:"Loading branches..."})]}):j.length>0?(0,o.jsx)(l1,{options:H,value:u.baseBranch,onChange:a=>{let b=Array.isArray(a)?a[0]||"":a;v({...u,baseBranch:b})},placeholder:"Select base branch",disabled:w}):(0,o.jsx)("div",{className:"w-full h-9 px-3 rounded-md border border-input bg-transparent text-sm text-muted-foreground flex items-center",children:r||"Select repository first"}),(0,o.jsx)("p",{className:"text-xs text-muted-foreground mt-1",children:"Your new branch will be created from this branch"})]}),J&&(0,o.jsxs)("div",{children:[(0,o.jsx)("label",{className:"block text-sm font-medium mb-1 text-foreground",children:"New Branch Name *"}),(0,o.jsx)(lQ.Input,{type:"text",required:!0,maxLength:255,value:u.branch,onChange:a=>v({...u,branch:a.target.value}),className:`w-full ${y.branch?"border-destructive":""}`,placeholder:"feature/new-feature",disabled:w,"aria-invalid":!!y.branch}),y.branch&&(0,o.jsx)("p",{className:"text-xs text-destructive mt-1",children:y.branch}),!y.branch&&(0,o.jsxs)("p",{className:"text-xs text-muted-foreground mt-1",children:["Will be created from ",u.baseBranch||"base branch"]})]}),(0,o.jsxs)("div",{className:"flex justify-end gap-2",children:[(0,o.jsx)(d2.Button,{type:"button",variant:"outline",size:"lg",onClick:c,className:"active:scale-95",disabled:w,children:"Cancel"}),(0,o.jsx)(d2.Button,{type:"submit",size:"lg",className:"active:scale-95",disabled:w||J&&n,children:L})]})]})]})}],92712)},63588,a=>{"use strict";let b=(0,a.i(60137).default)("message-square",[["path",{d:"M22 17a2 2 0 0 1-2 2H6.828a2 2 0 0 0-1.414.586l-2.202 2.202A.71.71 0 0 1 2 21.286V5a2 2 0 0 1 2-2h16a2 2 0 0 1 2 2z",key:"18887p"}]]);a.s(["MessageSquare",0,b],63588)},67453,62722,a=>{"use strict";var b=a.i(67511);a.s(["CheckCircle2",()=>b.default],67453);let c=(0,a.i(60137).default)("circle-x",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"m15 9-6 6",key:"1uzhvr"}],["path",{d:"m9 9 6 6",key:"z0biqf"}]]);a.s(["XCircle",0,c],62722)},65025,a=>{"use strict";var b,c=a.i(87924);a.s([],5993),a.i(5993);var d=a.i(72131),e=a.i(35850),f=a.i(49538);let g=new Map;function h(a,b,c){return null==a?"":(function(a,b){let c=JSON.stringify({locale:a,options:b}),d=g.get(c);if(d)return d;let e=new Intl.NumberFormat(a,b);return g.set(c,e),e})(b,c).format(a)}var i=a.i(2840),j=a.i(21376);let k=d.createContext(void 0);function l(){let a=d.useContext(k);if(void 0===a)throw Error((0,j.default)(51));return a}let m=((b={}).complete="data-complete",b.indeterminate="data-indeterminate",b.progressing="data-progressing",b),n={status:a=>"progressing"===a?{[m.progressing]:""}:"complete"===a?{[m.complete]:""}:"indeterminate"===a?{[m.indeterminate]:""}:null};function o(a,b){return null==b?"indeterminate progress":a||`${b}%`}let p=d.forwardRef(function(a,b){var g;let{format:j,getAriaValueText:l=o,locale:m,max:p=100,min:q=0,value:r,render:s,className:u,children:v,...w}=a,[x,y]=d.useState(),z=(0,e.useValueAsRef)(j),A="indeterminate";Number.isFinite(r)&&(A=r===p?"complete":"progressing");let B=(g=z.current,null==r?"":g?h(r,m,g):h(r/100,m,{style:"percent"})),C=d.useMemo(()=>({status:A}),[A]),D={"aria-labelledby":x,"aria-valuemax":p,"aria-valuemin":q,"aria-valuenow":r??void 0,"aria-valuetext":l(B,r),role:"progressbar",children:(0,c.jsxs)(d.Fragment,{children:[v,(0,c.jsx)("span",{role:"presentation",style:f.visuallyHidden,children:"x"})]})},E=d.useMemo(()=>({formattedValue:B,max:p,min:q,setLabelId:y,state:C,status:A,value:r}),[B,p,q,y,C,A,r]),F=(0,i.useRenderElement)("div",a,{state:C,ref:b,props:[D,w],stateAttributesMapping:n});return(0,c.jsx)(k.Provider,{value:E,children:F})}),q=d.forwardRef(function(a,b){let{render:c,className:d,...e}=a,{state:f}=l();return(0,i.useRenderElement)("div",a,{state:f,ref:b,props:e,stateAttributesMapping:n})}),r=d.forwardRef(function(a,b){let{render:c,className:e,...f}=a,{max:g,min:h,value:j,state:k}=l(),m=Number.isFinite(j)&&null!==j?(j-h)*100/(g-h):null,o=d.useCallback(()=>null==m?{}:{insetInlineStart:0,height:"inherit",width:`${m}%`},[m]);return(0,i.useRenderElement)("div",a,{state:k,ref:b,props:[{style:o()},f],stateAttributesMapping:n})}),s=d.forwardRef(function(a,b){let{className:c,render:d,children:e,...f}=a,{value:g,formattedValue:h,state:j}=l(),k=null==g?"indeterminate":h,m=null==g?null:h;return(0,i.useRenderElement)("span",a,{state:j,ref:b,props:[{"aria-hidden":!0,children:"function"==typeof e?e(k,g):m},f],stateAttributesMapping:n})});var u=a.i(67669);let v=d.forwardRef(function(a,b){let{render:c,className:d,id:e,...f}=a,{setLabelId:g,state:h}=l(),j=(0,u.useRegisteredLabelId)(e,g);return(0,i.useRenderElement)("span",a,{state:h,ref:b,props:[{id:j,role:"presentation"},f],stateAttributesMapping:n})});a.s(["Indicator",0,r,"Label",0,v,"Root",0,p,"Track",0,q,"Value",0,s],85806);var w=a.i(85806),w=w,x=a.i(760);function y({className:a,...b}){return(0,c.jsx)(w.Track,{className:(0,x.cn)("relative flex h-1 w-full items-center overflow-x-hidden rounded-md bg-muted",a),"data-slot":"progress-track",...b})}function z({className:a,...b}){return(0,c.jsx)(w.Indicator,{"data-slot":"progress-indicator",className:(0,x.cn)("h-full bg-primary",a),style:{transition:"width 500ms ease-in-out"},...b})}a.s(["Progress",0,function({className:a,children:b,value:d,...e}){return(0,c.jsxs)(w.Root,{value:d,"data-slot":"progress",className:(0,x.cn)("flex flex-wrap gap-3",a),...e,children:[b,(0,c.jsx)(y,{children:(0,c.jsx)(z,{})})]})}],65025)},70845,82434,a=>{"use strict";var b=a.i(60137);let c=(0,b.default)("circle-pause",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["line",{x1:"10",x2:"10",y1:"15",y2:"9",key:"c1nkhi"}],["line",{x1:"14",x2:"14",y1:"15",y2:"9",key:"h65svq"}]]);a.s(["CirclePause",0,c],70845);let d=(0,b.default)("bot",[["path",{d:"M12 8V4H8",key:"hb8ula"}],["rect",{width:"16",height:"12",x:"4",y:"8",rx:"2",key:"enze0r"}],["path",{d:"M2 14h2",key:"vft8re"}],["path",{d:"M20 14h2",key:"4cs60a"}],["path",{d:"M15 13v2",key:"1xurst"}],["path",{d:"M9 13v2",key:"rq6x2g"}]]);a.s(["Bot",0,d],82434)},80386,a=>{"use strict";let b=(0,a.i(60137).default)("terminal",[["path",{d:"M12 19h8",key:"baeox8"}],["path",{d:"m4 17 6-6-6-6",key:"1yngyt"}]]);a.s(["Terminal",0,b],80386)},33591,a=>{"use strict";let b=(0,a.i(60137).default)("wifi-off",[["path",{d:"M12 20h.01",key:"zekei9"}],["path",{d:"M8.5 16.429a5 5 0 0 1 7 0",key:"1bycff"}],["path",{d:"M5 12.859a10 10 0 0 1 5.17-2.69",key:"1dl1wf"}],["path",{d:"M19 12.859a10 10 0 0 0-2.007-1.523",key:"4k23kn"}],["path",{d:"M2 8.82a15 15 0 0 1 4.177-2.643",key:"1grhjp"}],["path",{d:"M22 8.82a15 15 0 0 0-11.288-3.764",key:"z3jwby"}],["path",{d:"m2 2 20 20",key:"1ooewy"}]]);a.s(["WifiOff",0,b],33591)},501,10450,99813,a=>{"use strict";let b,c,d,e,f,g,h,i,j,k,l,m;var n=a.i(87924),o=a.i(72131),p=a.i(33508),q=a.i(96221),r=a.i(70845),s=a.i(82434),u=a.i(80386),v=a.i(92e3),w=a.i(33591),x=a.i(67453),y=a.i(62722),z=a.i(63588),A=a.i(90002),B=a.i(39524);function C({entry:a}){if(!a||"idle"===a.terminal)return(0,n.jsxs)("div",{className:"flex items-center gap-1 text-xs text-muted-foreground",children:[(0,n.jsx)(r.CirclePause,{className:"w-3 h-3"}),(0,n.jsx)("span",{children:"idle"})]});if("connecting"===a.terminal)return(0,n.jsxs)("div",{className:"flex items-center gap-1 text-xs text-muted-foreground",children:[(0,n.jsx)(q.Loader2,{className:"w-3 h-3 animate-spin"}),(0,n.jsx)("span",{children:"connecting"})]});if("error"===a.terminal)return(0,n.jsxs)("div",{className:"flex items-center gap-1 text-xs text-destructive",children:[(0,n.jsx)(v.AlertCircle,{className:"w-3 h-3"}),(0,n.jsx)("span",{children:"error"})]});if("exited"===a.terminal||"paused"===a.terminal)return(0,n.jsxs)("div",{className:"flex items-center gap-1 text-xs text-muted-foreground",children:[(0,n.jsx)(w.WifiOff,{className:"w-3 h-3"}),(0,n.jsx)("span",{children:a.terminal})]});switch(a.claude){case"running":return(0,n.jsxs)("div",{className:"flex items-center gap-1 text-xs text-primary",children:[(0,n.jsx)(q.Loader2,{className:"w-3 h-3 animate-spin"}),(0,n.jsx)("span",{children:"running"})]});case"waiting":return(0,n.jsxs)("div",{className:"flex items-center gap-1 text-xs text-warning",children:[(0,n.jsx)(z.MessageSquare,{className:"w-3 h-3"}),(0,n.jsx)("span",{children:"waiting"})]});case"success":return(0,n.jsxs)("div",{className:"flex items-center gap-1 text-xs text-success",children:[(0,n.jsx)(x.CheckCircle2,{className:"w-3 h-3"}),(0,n.jsx)("span",{children:"success"})]});case"failure":case"error":return(0,n.jsxs)("div",{className:"flex items-center gap-1 text-xs text-destructive",children:[(0,n.jsx)(y.XCircle,{className:"w-3 h-3"}),(0,n.jsx)("span",{children:"failure"===a.claude?"failure":"error"})]});default:return(0,n.jsxs)("div",{className:"flex items-center gap-1 text-xs text-muted-foreground",children:[(0,n.jsx)(r.CirclePause,{className:"w-3 h-3"}),(0,n.jsx)("span",{children:"idle"})]})}}a.s(["SessionTabs",0,function({tabs:a,activeTabId:b,onTabChange:c,onTabCreateTerminal:d,onTabCreateClaude:e,onTabDelete:f,tabStatusMap:g}){let h=(0,o.useRef)([]),[i,j]=(0,o.useState)({left:0,width:0}),[k,l]=(0,o.useState)(null);(0,o.useEffect)(()=>{let c=a.findIndex(a=>a.tab_id===b);if(-1!==c&&h.current[c]){let a=h.current[c];a&&j({left:a.offsetLeft,width:a.offsetWidth})}},[b,a]);let m=new Map,q=0;for(let b of a)"terminal"===b.mode&&(q+=1,m.set(b.tab_id,q));return(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)(A.ConfirmDialog,{open:null!==k,onOpenChange:a=>{a.open||l(null)},title:"Delete Tab",message:k?.isRunning?"This tab is running. Are you sure you want to delete it?":"Delete this tab?",confirmLabel:"Delete",cancelLabel:"Cancel",onConfirm:()=>{k&&f(k.tabId)},variant:"danger"}),(0,n.jsxs)("div",{className:"relative flex items-center gap-2 overflow-x-auto border-b border-border pb-1",children:[a.map((d,e)=>{let f=b===d.tab_id,i=g?.get(d.tab_id),j=(i?.claude==="running"||i?.claude==="waiting")&&i?.terminal==="connected";return(0,n.jsxs)("div",{ref:a=>{h.current[e]=a},onClick:()=>c(d.tab_id),className:`
|
|
11
|
+
For more information, see https://radix-ui.com/primitives/docs/components/${b.docsSlug}`;return p.useEffect(()=>{a&&(document.getElementById(a)||console.error(c))},[c,a]),null},li=({contentRef:a,descriptionId:b})=>{let c=lg("DialogDescriptionWarning"),d=`Warning: Missing \`Description\` or \`aria-describedby={undefined}\` for {${c.contentName}}.`;return p.useEffect(()=>{let c=a.current?.getAttribute("aria-describedby");b&&c&&(document.getElementById(b)||console.warn(d))},[d,a,b]),null},lj=Symbol.for("react.lazy"),lk=p[" use ".trim().toString()];function ll(a){var b;return null!=a&&"object"==typeof a&&"$$typeof"in a&&a.$$typeof===lj&&"_payload"in a&&"object"==typeof(b=a._payload)&&null!==b&&"then"in b}var lm=Symbol("radix.slottable");function ln(a){return p.isValidElement(a)&&"function"==typeof a.type&&"__radixId"in a.type&&a.type.__radixId===lm}var lo=["a","button","div","form","h2","h3","img","input","label","li","nav","ol","p","select","span","svg","ul"].reduce((a,b)=>{var c,d;let e,f,g,h=(d=c=`Primitive.${b}`,(e=p.forwardRef((a,b)=>{let{children:c,...d}=a;if(ll(c)&&"function"==typeof lk&&(c=lk(c._payload)),p.isValidElement(c)){var e;let a,f,g=(e=c,(f=(a=Object.getOwnPropertyDescriptor(e.props,"ref")?.get)&&"isReactWarning"in a&&a.isReactWarning)?e.ref:(f=(a=Object.getOwnPropertyDescriptor(e,"ref")?.get)&&"isReactWarning"in a&&a.isReactWarning)?e.props.ref:e.props.ref||e.ref),h=function(a,b){let c={...b};for(let d in b){let e=a[d],f=b[d];/^on[A-Z]/.test(d)?e&&f?c[d]=(...a)=>{let b=f(...a);return e(...a),b}:e&&(c[d]=e):"style"===d?c[d]={...e,...f}:"className"===d&&(c[d]=[e,f].filter(Boolean).join(" "))}return{...a,...c}}(d,c.props);return c.type!==p.Fragment&&(h.ref=b?jI(b,g):g),p.cloneElement(c,h)}return p.Children.count(c)>1?p.Children.only(null):null})).displayName=`${d}.SlotClone`,f=e,(g=p.forwardRef((a,b)=>{let{children:c,...d}=a;ll(c)&&"function"==typeof lk&&(c=lk(c._payload));let e=p.Children.toArray(c),g=e.find(ln);if(g){let a=g.props.children,c=e.map(b=>b!==g?b:p.Children.count(a)>1?p.Children.only(null):p.isValidElement(a)?a.props.children:null);return(0,o.jsx)(f,{...d,ref:b,children:p.isValidElement(a)?p.cloneElement(a,void 0,c):null})}return(0,o.jsx)(f,{...d,ref:b,children:c})})).displayName=`${c}.Slot`,g),i=p.forwardRef((a,c)=>{let{asChild:d,...e}=a;return(0,o.jsx)(d?h:b,{...e,ref:c})});return i.displayName=`Primitive.${b}`,{...a,[b]:i}},{}),lp='[cmdk-group=""]',lq='[cmdk-group-items=""]',lr='[cmdk-item=""]',ls=`${lr}:not([aria-disabled="true"])`,lt="cmdk-item-select",lu="data-value",lv=(a,b,c)=>{var d;return d=a,function a(b,c,d,e,f,g,h){if(g===c.length)return f===b.length?1:.99;var i=`${f},${g}`;if(void 0!==h[i])return h[i];for(var j,k,l,m,n=e.charAt(g),o=d.indexOf(n,f),p=0;o>=0;)(j=a(b,c,d,e,o+1,g+1,h))>p&&(o===f?j*=1:jB.test(b.charAt(o-1))?(j*=.8,(l=b.slice(f,o-1).match(jC))&&f>0&&(j*=Math.pow(.999,l.length))):jD.test(b.charAt(o-1))?(j*=.9,(m=b.slice(f,o-1).match(jE))&&f>0&&(j*=Math.pow(.999,m.length))):(j*=.17,f>0&&(j*=Math.pow(.999,o-f))),b.charAt(o)!==c.charAt(g)&&(j*=.9999)),(j<.1&&d.charAt(o-1)===e.charAt(g+1)||e.charAt(g+1)===e.charAt(g)&&d.charAt(o-1)!==e.charAt(g))&&.1*(k=a(b,c,d,e,o+1,g+2,h))>j&&(j=.1*k),j>p&&(p=j),o=d.indexOf(n,o+1);return h[i]=p,p}(d=c&&c.length>0?`${d+" "+c.join(" ")}`:d,b,jF(d),jF(b),0,0,{})},lw=p.createContext(void 0),lx=p.createContext(void 0),ly=p.createContext(void 0),lz=p.forwardRef((a,b)=>{let c=lJ(()=>{var b,c;return{search:"",value:null!=(c=null!=(b=a.value)?b:a.defaultValue)?c:"",selectedItemId:void 0,filtered:{count:0,items:new Map,groups:new Set}}}),d=lJ(()=>new Set),e=lJ(()=>new Map),f=lJ(()=>new Map),g=lJ(()=>new Set),h=lH(a),{label:i,children:j,value:k,onValueChange:l,filter:m,shouldFilter:n,loop:o,disablePointerSelection:q=!1,vimBindings:r=!0,...s}=a,u=jN(),v=jN(),w=jN(),x=p.useRef(null),y=lM();lI(()=>{if(void 0!==k){let a=k.trim();c.current.value=a,z.emit()}},[k]),lI(()=>{y(6,F)},[]);let z=p.useMemo(()=>({subscribe:a=>(g.current.add(a),()=>g.current.delete(a)),snapshot:()=>c.current,setState:(a,b,d)=>{var e,f,g,i;if(!Object.is(c.current[a],b)){if(c.current[a]=b,"search"===a)E(),C(),y(1,D);else if("value"===a){if(document.activeElement.hasAttribute("cmdk-input")||document.activeElement.hasAttribute("cmdk-root")){let a=document.getElementById(w);a?a.focus():null==(e=document.getElementById(u))||e.focus()}if(y(7,()=>{var a;c.current.selectedItemId=null==(a=G())?void 0:a.id,z.emit()}),d||y(5,F),(null==(f=h.current)?void 0:f.value)!==void 0){null==(i=(g=h.current).onValueChange)||i.call(g,null!=b?b:"");return}}z.emit()}},emit:()=>{g.current.forEach(a=>a())}}),[]),A=p.useMemo(()=>({value:(a,b,d)=>{var e;b!==(null==(e=f.current.get(a))?void 0:e.value)&&(f.current.set(a,{value:b,keywords:d}),c.current.filtered.items.set(a,B(b,d)),y(2,()=>{C(),z.emit()}))},item:(a,b)=>(d.current.add(a),b&&(e.current.has(b)?e.current.get(b).add(a):e.current.set(b,new Set([a]))),y(3,()=>{E(),C(),c.current.value||D(),z.emit()}),()=>{f.current.delete(a),d.current.delete(a),c.current.filtered.items.delete(a);let b=G();y(4,()=>{E(),(null==b?void 0:b.getAttribute("id"))===a&&D(),z.emit()})}),group:a=>(e.current.has(a)||e.current.set(a,new Set),()=>{f.current.delete(a),e.current.delete(a)}),filter:()=>h.current.shouldFilter,label:i||a["aria-label"],getDisablePointerSelection:()=>h.current.disablePointerSelection,listId:u,inputId:w,labelId:v,listInnerRef:x}),[]);function B(a,b){var d,e;let f=null!=(e=null==(d=h.current)?void 0:d.filter)?e:lv;return a?f(a,c.current.search,b):0}function C(){if(!c.current.search||!1===h.current.shouldFilter)return;let a=c.current.filtered.items,b=[];c.current.filtered.groups.forEach(c=>{let d=e.current.get(c),f=0;d.forEach(b=>{f=Math.max(a.get(b),f)}),b.push([c,f])});let d=x.current;H().sort((b,c)=>{var d,e;let f=b.getAttribute("id"),g=c.getAttribute("id");return(null!=(d=a.get(g))?d:0)-(null!=(e=a.get(f))?e:0)}).forEach(a=>{let b=a.closest(lq);b?b.appendChild(a.parentElement===b?a:a.closest(`${lq} > *`)):d.appendChild(a.parentElement===d?a:a.closest(`${lq} > *`))}),b.sort((a,b)=>b[1]-a[1]).forEach(a=>{var b;let c=null==(b=x.current)?void 0:b.querySelector(`${lp}[${lu}="${encodeURIComponent(a[0])}"]`);null==c||c.parentElement.appendChild(c)})}function D(){let a=H().find(a=>"true"!==a.getAttribute("aria-disabled")),b=null==a?void 0:a.getAttribute(lu);z.setState("value",b||void 0)}function E(){var a,b,g,i;if(!c.current.search||!1===h.current.shouldFilter){c.current.filtered.count=d.current.size;return}c.current.filtered.groups=new Set;let j=0;for(let e of d.current){let d=B(null!=(b=null==(a=f.current.get(e))?void 0:a.value)?b:"",null!=(i=null==(g=f.current.get(e))?void 0:g.keywords)?i:[]);c.current.filtered.items.set(e,d),d>0&&j++}for(let[a,b]of e.current)for(let d of b)if(c.current.filtered.items.get(d)>0){c.current.filtered.groups.add(a);break}c.current.filtered.count=j}function F(){var a,b,c;let d=G();d&&((null==(a=d.parentElement)?void 0:a.firstChild)===d&&(null==(c=null==(b=d.closest(lp))?void 0:b.querySelector('[cmdk-group-heading=""]'))||c.scrollIntoView({block:"nearest"})),d.scrollIntoView({block:"nearest"}))}function G(){var a;return null==(a=x.current)?void 0:a.querySelector(`${lr}[aria-selected="true"]`)}function H(){var a;return Array.from((null==(a=x.current)?void 0:a.querySelectorAll(ls))||[])}function I(a){let b=H()[a];b&&z.setState("value",b.getAttribute(lu))}function J(a){var b;let c=G(),d=H(),e=d.findIndex(a=>a===c),f=d[e+a];null!=(b=h.current)&&b.loop&&(f=e+a<0?d[d.length-1]:e+a===d.length?d[0]:d[e+a]),f&&z.setState("value",f.getAttribute(lu))}function K(a){let b=G(),c=null==b?void 0:b.closest(lp),d;for(;c&&!d;)d=null==(c=a>0?function(a,b){let c=a.nextElementSibling;for(;c;){if(c.matches(b))return c;c=c.nextElementSibling}}(c,lp):function(a,b){let c=a.previousElementSibling;for(;c;){if(c.matches(b))return c;c=c.previousElementSibling}}(c,lp))?void 0:c.querySelector(ls);d?z.setState("value",d.getAttribute(lu)):J(a)}let L=()=>I(H().length-1),M=a=>{a.preventDefault(),a.metaKey?L():a.altKey?K(1):J(1)},N=a=>{a.preventDefault(),a.metaKey?I(0):a.altKey?K(-1):J(-1)};return p.createElement(lo.div,{ref:b,tabIndex:-1,...s,"cmdk-root":"",onKeyDown:a=>{var b;null==(b=s.onKeyDown)||b.call(s,a);let c=a.nativeEvent.isComposing||229===a.keyCode;if(!(a.defaultPrevented||c))switch(a.key){case"n":case"j":r&&a.ctrlKey&&M(a);break;case"ArrowDown":M(a);break;case"p":case"k":r&&a.ctrlKey&&N(a);break;case"ArrowUp":N(a);break;case"Home":a.preventDefault(),I(0);break;case"End":a.preventDefault(),L();break;case"Enter":{a.preventDefault();let b=G();if(b){let a=new Event(lt);b.dispatchEvent(a)}}}}},p.createElement("label",{"cmdk-label":"",htmlFor:A.inputId,id:A.labelId,style:lO},i),lN(a,a=>p.createElement(lx.Provider,{value:z},p.createElement(lw.Provider,{value:A},a))))}),lA=p.forwardRef((a,b)=>{var c,d;let e=jN(),f=p.useRef(null),g=p.useContext(ly),h=p.useContext(lw),i=lH(a),j=null!=(d=null==(c=i.current)?void 0:c.forceMount)?d:null==g?void 0:g.forceMount;lI(()=>{if(!j)return h.item(e,null==g?void 0:g.id)},[j]);let k=lL(e,f,[a.value,a.children,f],a.keywords),l=p.useContext(lx),m=lK(a=>a.value&&a.value===k.current),n=lK(a=>!!j||!1===h.filter()||!a.search||a.filtered.items.get(e)>0);function o(){var a,b;q(),null==(b=(a=i.current).onSelect)||b.call(a,k.current)}function q(){l.setState("value",k.current,!0)}if(p.useEffect(()=>{let b=f.current;if(!(!b||a.disabled))return b.addEventListener(lt,o),()=>b.removeEventListener(lt,o)},[n,a.onSelect,a.disabled]),!n)return null;let{disabled:r,value:s,onSelect:u,forceMount:v,keywords:w,...x}=a;return p.createElement(lo.div,{ref:jI(f,b),...x,id:e,"cmdk-item":"",role:"option","aria-disabled":!!r,"aria-selected":!!m,"data-disabled":!!r,"data-selected":!!m,onPointerMove:r||h.getDisablePointerSelection()?void 0:q,onClick:r?void 0:o},a.children)}),lB=p.forwardRef((a,b)=>{let{heading:c,children:d,forceMount:e,...f}=a,g=jN(),h=p.useRef(null),i=p.useRef(null),j=jN(),k=p.useContext(lw),l=lK(a=>!!e||!1===k.filter()||!a.search||a.filtered.groups.has(g));lI(()=>k.group(g),[]),lL(g,h,[a.value,a.heading,i]);let m=p.useMemo(()=>({id:g,forceMount:e}),[e]);return p.createElement(lo.div,{ref:jI(h,b),...f,"cmdk-group":"",role:"presentation",hidden:!l||void 0},c&&p.createElement("div",{ref:i,"cmdk-group-heading":"","aria-hidden":!0,id:j},c),lN(a,a=>p.createElement("div",{"cmdk-group-items":"",role:"group","aria-labelledby":c?j:void 0},p.createElement(ly.Provider,{value:m},a))))}),lC=p.forwardRef((a,b)=>{let{alwaysRender:c,...d}=a,e=p.useRef(null),f=lK(a=>!a.search);return c||f?p.createElement(lo.div,{ref:jI(e,b),...d,"cmdk-separator":"",role:"separator"}):null}),lD=p.forwardRef((a,b)=>{let{onValueChange:c,...d}=a,e=null!=a.value,f=p.useContext(lx),g=lK(a=>a.search),h=lK(a=>a.selectedItemId),i=p.useContext(lw);return p.useEffect(()=>{null!=a.value&&f.setState("search",a.value)},[a.value]),p.createElement(lo.input,{ref:b,...d,"cmdk-input":"",autoComplete:"off",autoCorrect:"off",spellCheck:!1,"aria-autocomplete":"list",role:"combobox","aria-expanded":!0,"aria-controls":i.listId,"aria-labelledby":i.labelId,"aria-activedescendant":h,id:i.inputId,type:"text",value:e?a.value:g,onChange:a=>{e||f.setState("search",a.target.value),null==c||c(a.target.value)}})}),lE=p.forwardRef((a,b)=>{let{children:c,label:d="Suggestions",...e}=a,f=p.useRef(null),g=p.useRef(null),h=lK(a=>a.selectedItemId),i=p.useContext(lw);return p.useEffect(()=>{if(g.current&&f.current){let a=g.current,b=f.current,c,d=new ResizeObserver(()=>{c=requestAnimationFrame(()=>{let c=a.offsetHeight;b.style.setProperty("--cmdk-list-height",c.toFixed(1)+"px")})});return d.observe(a),()=>{cancelAnimationFrame(c),d.unobserve(a)}}},[]),p.createElement(lo.div,{ref:jI(f,b),...e,"cmdk-list":"",role:"listbox",tabIndex:-1,"aria-activedescendant":h,"aria-label":d,id:i.listId},lN(a,a=>p.createElement("div",{ref:jI(g,i.listInnerRef),"cmdk-list-sizer":""},a)))}),lF=p.forwardRef((a,b)=>{let{open:c,onOpenChange:d,overlayClassName:e,contentClassName:f,container:g,...h}=a;return p.createElement(kX,{open:c,onOpenChange:d},p.createElement(k0,{container:g},p.createElement(k2,{"cmdk-overlay":"",className:e}),p.createElement(k6,{"aria-label":a.label,"cmdk-dialog":"",className:f},p.createElement(lz,{ref:b,...h}))))}),lG=Object.assign(lz,{List:lE,Item:lA,Input:lD,Group:lB,Separator:lC,Dialog:lF,Empty:p.forwardRef((a,b)=>lK(a=>0===a.filtered.count)?p.createElement(lo.div,{ref:b,...a,"cmdk-empty":"",role:"presentation"}):null),Loading:p.forwardRef((a,b)=>{let{progress:c,children:d,label:e="Loading...",...f}=a;return p.createElement(lo.div,{ref:b,...f,"cmdk-loading":"",role:"progressbar","aria-valuenow":c,"aria-valuemin":0,"aria-valuemax":100,"aria-label":e},lN(a,a=>p.createElement("div",{"aria-hidden":!0},a)))})});function lH(a){let b=p.useRef(a);return lI(()=>{b.current=a}),b}var lI=p.useEffect;function lJ(a){let b=p.useRef();return void 0===b.current&&(b.current=a()),b}function lK(a){let b=p.useContext(lx),c=()=>a(b.snapshot());return p.useSyncExternalStore(b.subscribe,c,c)}function lL(a,b,c,d=[]){let e=p.useRef(),f=p.useContext(lw);return lI(()=>{var g;let h=(()=>{var a;for(let b of c){if("string"==typeof b)return b.trim();if("object"==typeof b&&"current"in b)return b.current?null==(a=b.current.textContent)?void 0:a.trim():e.current}})(),i=d.map(a=>a.trim());f.value(a,h,i),null==(g=b.current)||g.setAttribute(lu,h),e.current=h}),e}var lM=()=>{let[a,b]=p.useState(),c=lJ(()=>new Map);return lI(()=>{c.current.forEach(a=>a()),c.current=new Map},[a]),(a,d)=>{c.current.set(a,d),b({})}};function lN({asChild:a,children:b},c){let d;return a&&p.isValidElement(b)?p.cloneElement("function"==typeof(d=b.type)?d(b.props):"render"in d?d.render(b.props):b,{ref:b.ref},c(b.props.children)):c(b)}var lO={position:"absolute",width:"1px",height:"1px",padding:"0",margin:"-1px",overflow:"hidden",clip:"rect(0, 0, 0, 0)",whiteSpace:"nowrap",borderWidth:"0"};a.i(26807);var lP=a.i(187),lQ=a.i(28503);function lR({className:a,...b}){return(0,o.jsx)("textarea",{"data-slot":"textarea",className:(0,jx.cn)("flex field-sizing-content min-h-16 w-full resize-none rounded-md border border-input bg-input/20 px-2 py-2 text-sm transition-colors outline-none placeholder:text-muted-foreground focus-visible:border-ring focus-visible:ring-2 focus-visible:ring-ring/30 disabled:cursor-not-allowed disabled:opacity-50 aria-invalid:border-destructive aria-invalid:ring-2 aria-invalid:ring-destructive/20 md:text-xs/relaxed dark:bg-input/30 dark:aria-invalid:border-destructive/50 dark:aria-invalid:ring-destructive/40",a),...b})}function lS({className:a,...b}){return(0,o.jsx)("div",{"data-slot":"input-group",role:"group",className:(0,jx.cn)("group/input-group relative flex h-7 w-full min-w-0 items-center rounded-md border border-input bg-input/20 transition-colors outline-none in-data-[slot=combobox-content]:focus-within:border-inherit in-data-[slot=combobox-content]:focus-within:ring-0 has-data-[align=block-end]:rounded-md has-data-[align=block-start]:rounded-md has-[[data-slot=input-group-control]:focus-visible]:border-ring has-[[data-slot=input-group-control]:focus-visible]:ring-2 has-[[data-slot=input-group-control]:focus-visible]:ring-ring/30 has-[[data-slot][aria-invalid=true]]:border-destructive has-[[data-slot][aria-invalid=true]]:ring-2 has-[[data-slot][aria-invalid=true]]:ring-destructive/20 has-[textarea]:rounded-md has-[>[data-align=block-end]]:h-auto has-[>[data-align=block-end]]:flex-col has-[>[data-align=block-start]]:h-auto has-[>[data-align=block-start]]:flex-col has-[>textarea]:h-auto dark:bg-input/30 dark:has-[[data-slot][aria-invalid=true]]:ring-destructive/40 has-[>[data-align=block-end]]:[&>input]:pt-3 has-[>[data-align=block-start]]:[&>input]:pb-3 has-[>[data-align=inline-end]]:[&>input]:pr-1.5 has-[>[data-align=inline-start]]:[&>input]:pl-1.5",a),...b})}let lT=(0,lP.cva)("flex h-auto cursor-text items-center justify-center gap-1 py-2 text-xs/relaxed font-medium text-muted-foreground select-none group-data-[disabled=true]/input-group:opacity-50 **:data-[slot=kbd]:rounded-[calc(var(--radius-sm)-2px)] **:data-[slot=kbd]:bg-muted-foreground/10 **:data-[slot=kbd]:px-1 **:data-[slot=kbd]:text-[0.625rem] [&>svg:not([class*='size-'])]:size-3.5",{variants:{align:{"inline-start":"order-first pl-2 has-[>button]:ml-[-0.275rem] has-[>kbd]:ml-[-0.275rem]","inline-end":"order-last pr-2 has-[>button]:mr-[-0.275rem] has-[>kbd]:mr-[-0.275rem]","block-start":"order-first w-full justify-start px-2 pt-2 group-has-[>input]/input-group:pt-2 [.border-b]:pb-2","block-end":"order-last w-full justify-start px-2 pb-2 group-has-[>input]/input-group:pb-2 [.border-t]:pt-2"}},defaultVariants:{align:"inline-start"}});function lU({className:a,align:b="inline-start",...c}){return(0,o.jsx)("div",{role:"group","data-slot":"input-group-addon","data-align":b,className:(0,jx.cn)(lT({align:b}),a),onClick:a=>{a.target.closest("button")||a.currentTarget.parentElement?.querySelector("input")?.focus()},...c})}(0,lP.cva)("flex items-center gap-2 rounded-md text-xs/relaxed shadow-none",{variants:{size:{xs:"h-5 gap-1 rounded-[calc(var(--radius-sm)-2px)] px-1 [&>svg:not([class*='size-'])]:size-3",sm:"gap-1","icon-xs":"size-6 p-0 has-[>svg]:p-0","icon-sm":"size-7 p-0 has-[>svg]:p-0"}},defaultVariants:{size:"xs"}});let lV=(0,d$.default)("search",[["path",{d:"m21 21-4.34-4.34",key:"14j7rj"}],["circle",{cx:"11",cy:"11",r:"8",key:"4ej97u"}]]);a.s(["default",0,lV],50537);var lW=a.i(34157);a.s(["CheckIcon",()=>lW.default],6406);var lW=lW;function lX({className:a,...b}){return(0,o.jsx)(lG,{"data-slot":"command",className:(0,jx.cn)("flex size-full flex-col overflow-hidden rounded-xl bg-popover p-1 text-popover-foreground",a),...b})}function lY({className:a,...b}){return(0,o.jsx)("div",{"data-slot":"command-input-wrapper",className:"p-1 pb-0",children:(0,o.jsxs)(lS,{className:"h-8! bg-input/20 dark:bg-input/30",children:[(0,o.jsx)(lG.Input,{"data-slot":"command-input",className:(0,jx.cn)("w-full text-xs/relaxed outline-hidden disabled:cursor-not-allowed disabled:opacity-50",a),...b}),(0,o.jsx)(lU,{children:(0,o.jsx)(lV,{className:"size-3.5 shrink-0 opacity-50"})})]})})}function lZ({className:a,...b}){return(0,o.jsx)(lG.List,{"data-slot":"command-list",className:(0,jx.cn)("no-scrollbar max-h-72 scroll-py-1 overflow-x-hidden overflow-y-auto outline-none",a),...b})}function l$({className:a,...b}){return(0,o.jsx)(lG.Empty,{"data-slot":"command-empty",className:(0,jx.cn)("py-6 text-center text-xs/relaxed",a),...b})}function l_({className:a,...b}){return(0,o.jsx)(lG.Group,{"data-slot":"command-group",className:(0,jx.cn)("overflow-hidden p-1 text-foreground **:[[cmdk-group-heading]]:px-2.5 **:[[cmdk-group-heading]]:py-1.5 **:[[cmdk-group-heading]]:text-xs **:[[cmdk-group-heading]]:font-medium **:[[cmdk-group-heading]]:text-muted-foreground",a),...b})}function l0({className:a,children:b,...c}){return(0,o.jsxs)(lG.Item,{"data-slot":"command-item",className:(0,jx.cn)("group/command-item relative flex min-h-7 cursor-default items-center gap-2 rounded-md px-2.5 py-1.5 text-xs/relaxed outline-hidden select-none in-data-[slot=dialog-content]:rounded-md data-[disabled=true]:pointer-events-none data-[disabled=true]:opacity-50 data-selected:bg-muted data-selected:text-foreground [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-3.5 data-selected:*:[svg]:text-foreground",a),...c,children:[b,(0,o.jsx)(lW.default,{className:"ml-auto opacity-0 group-has-data-[slot=command-shortcut]/command-item:hidden group-data-[checked=true]/command-item:opacity-100"})]})}function l1({options:a,value:b,onChange:c,placeholder:d="Select option",disabled:e=!1,className:f="",allowCustomValue:g=!1,multiple:h=!1,onClear:i,showClearButton:j=!1}){let[k,l]=(0,p.useState)(!1),[m,n]=(0,p.useState)(""),q=(0,p.useRef)(null),r=(0,p.useMemo)(()=>Array.isArray(b)?b:[b],[b]),s=(0,p.useMemo)(()=>{if(h){if(1===r.length&&"all"===r[0]){let b=a.find(a=>"all"===a.value);return b?.label||""}return r.filter(a=>"all"!==a).map(b=>a.find(a=>a.value===b)?.label).filter(Boolean).join(", ")}return r.map(b=>a.find(a=>a.value===b)?.label).filter(Boolean).join(", ")},[r,a,h]),u=(0,p.useMemo)(()=>{let b={};for(let c of a){let a=c.group||"Other";b[a]||(b[a]=[]),b[a].push(c)}return b},[a]),v=(0,p.useMemo)(()=>Object.keys(u).length>1||!u.Other,[u]),w=a=>{if(h){let b=[...r],d=b.indexOf(a);d>=0?b.splice(d,1):b.push(a),c(b.length>0?b:[])}else c(a),l(!1)},x=()=>{g&&m&&!h&&(c(m),l(!1))};return(0,o.jsxs)(jy,{open:k,onOpenChange:a=>{l(a),a||n("")},children:[(0,o.jsxs)("div",{className:`relative ${f}`,children:[(0,o.jsx)(jz,{ref:q,disabled:e,className:`flex h-9 w-full items-center justify-between pl-3 ${j?"pr-16":"pr-10"} border border-input rounded-md text-sm bg-input/20 dark:bg-input/30 text-foreground transition-colors outline-none hover:border-ring focus-visible:border-ring focus-visible:ring-2 focus-visible:ring-ring/30 data-[state=open]:border-ring data-[state=open]:ring-2 data-[state=open]:ring-ring/30 disabled:opacity-50 disabled:cursor-not-allowed disabled:pointer-events-none cursor-pointer overflow-hidden text-ellipsis whitespace-nowrap text-left shadow-xs`,children:(0,o.jsx)("span",{className:"truncate",children:s||(0,o.jsx)("span",{className:"text-muted-foreground",children:d})})}),j&&i&&(0,o.jsx)("button",{type:"button",onClick:a=>{a.stopPropagation(),i()},className:"absolute right-8 top-1/2 -translate-y-1/2 text-muted-foreground hover:text-foreground transition-colors cursor-pointer z-10","aria-label":"Clear selection",children:(0,o.jsx)(hk.X,{className:"w-4 h-4"})}),(0,o.jsx)(hj,{className:"absolute right-2 top-1/2 -translate-y-1/2 w-4 h-4 text-muted-foreground pointer-events-none"})]}),(0,o.jsx)(jA,{className:"w-[var(--anchor-width)] p-0",align:"start",sideOffset:4,children:(0,o.jsxs)(lX,{filter:(b,c)=>{let d=a.find(a=>a.value===b);return d?+!!`${d.label} ${d.group||""}`.toLowerCase().includes(c.toLowerCase()):0},children:[(0,o.jsx)(lY,{placeholder:"Search...",value:m,onValueChange:n,onKeyDown:a=>{"Enter"===a.key&&g&&x()}}),(0,o.jsxs)(lZ,{children:[(0,o.jsx)(l$,{children:g&&m?(0,o.jsxs)("button",{type:"button",className:"w-full px-2 py-1.5 text-left text-xs cursor-pointer hover:bg-accent rounded",onClick:x,children:['Use "',m,'"']}):"No options found"}),v?Object.entries(u).map(([a,b])=>(0,o.jsx)(l_,{heading:a,children:b.map(a=>(0,o.jsx)(l0,{value:a.value,"data-checked":r.includes(a.value),onSelect:()=>w(a.value),children:(0,o.jsx)("span",{className:"truncate",children:a.label})},a.value))},a)):(0,o.jsx)(l_,{children:a.map(a=>(0,o.jsx)(l0,{value:a.value,"data-checked":r.includes(a.value),onSelect:()=>w(a.value),children:(0,o.jsx)("span",{className:"truncate",children:a.label})},a.value))})]})]})})]})}let l2=(0,d$.default)("code",[["path",{d:"m16 18 6-6-6-6",key:"eg8j8"}],["path",{d:"m8 6-6 6 6 6",key:"ppft3o"}]]);var l3=a.i(77156),l4=a.i(91399);function l5({value:a,onChange:b,editorRef:c,theme:d,activeTab:e,onTabChange:f,disabled:g,onFocusChange:h}){let i=(0,p.useCallback)(a=>{b(a??"")},[b]),j=(0,o.jsx)("div",{className:"border border-border rounded overflow-hidden h-full",children:(0,o.jsx)(q.Editor,{height:"100%",defaultLanguage:"markdown",value:a,onChange:i,onMount:a=>{c.current=a,a.layout(),a.onDidFocusEditorText(()=>h?.(!0)),a.onDidBlurEditorText(()=>h?.(!1))},options:{minimap:{enabled:!1},lineNumbers:"on",wordWrap:"on",fontSize:13,scrollBeyondLastLine:!1,readOnly:g},theme:"dark"===d?"vs-dark":"vs-light"})}),k=(0,o.jsx)("div",{className:"border border-border rounded overflow-y-auto h-full p-4 prose prose-sm prose-slate dark:prose-invert max-w-none",children:a?(0,o.jsx)(cN,{remarkPlugins:[dZ],components:hd,children:a}):(0,o.jsx)("p",{className:"text-muted-foreground italic",children:"No content"})});return(0,o.jsxs)("div",{className:"flex flex-col flex-1 min-h-0",children:[(0,o.jsxs)("div",{className:"flex gap-1 mb-2 md:hidden flex-shrink-0",children:[(0,o.jsxs)(d2.Button,{type:"button",variant:"editor"===e?"default":"outline",size:"sm",onClick:()=>f("editor"),children:[(0,o.jsx)(l2,{className:"w-4 h-4 mr-1"}),"Editor"]}),(0,o.jsxs)(d2.Button,{type:"button",variant:"preview"===e?"default":"outline",size:"sm",onClick:()=>f("preview"),children:[(0,o.jsx)(l3.Eye,{className:"w-4 h-4 mr-1"}),"Preview"]})]}),(0,o.jsxs)("div",{className:"hidden md:grid md:grid-cols-2 md:gap-4 flex-1 min-h-0",children:[j,k]}),(0,o.jsx)("div",{className:"md:hidden flex-1 min-h-0",children:"editor"===e?j:k})]})}a.s(["TaskDialog",0,function({mode:a,isOpen:b,onClose:c,repositories:d=[],task:e,onUpdate:f}){let g=hh(),[h,i]=(0,p.useState)(""),[j,k]=(0,p.useState)([]),[l,m]=(0,p.useState)(""),[n,q]=(0,p.useState)(!1),[r,s]=(0,p.useState)(""),[u,v]=(0,p.useState)({title:"",description:"",owner:"",repo:"",branch:"",baseBranch:"",status:"backlog",effort:void 0,order:void 0}),[w,x]=(0,p.useState)(!1),[y,z]=(0,p.useState)({}),[A,B]=(0,p.useState)("editor"),[C,D]=(0,p.useState)(!1),E=(0,p.useRef)(null),{effectiveTheme:F}=(0,he.useTheme)();(0,p.useEffect)(()=>{"edit"===a&&e&&v({title:e.title,description:e.description,owner:e.owner,repo:e.repo,branch:e.branch,baseBranch:"",status:e.status,effort:e.effort,order:e.order})},[a,e,b]);let G=(0,p.useMemo)(()=>d.map(a=>({value:`${a.owner}/${a.repo}`,label:`${a.owner}/${a.repo}`})),[d]),H=(0,p.useMemo)(()=>j.map(a=>({value:a,label:a===l?`${a} (default)`:a})),[j,l]);(0,p.useEffect)(()=>{if("create"===a){if(!h){k([]),m(""),v(a=>({...a,baseBranch:""}));return}(async()=>{q(!0),s("");try{let[a,b]=h.split("/"),c=await fetch((0,l4.apiUrl)(`/api/repos/${a}/${b}/branches`));if(!c.ok)throw Error("Failed to fetch branches");let d=await c.json();k(d.data.branches),m(d.data.defaultBranch),v(a=>({...a,baseBranch:d.data.defaultBranch}))}catch(a){console.error("Failed to fetch branches:",a),s("Failed to load branches. Repository may not be initialized."),k([]),m("")}finally{q(!1)}})()}},[h,a]);let I=async b=>{if(b.preventDefault(),z({}),"create"===a){x(!0);try{let a=await fetch((0,l4.apiUrl)("/api/tasks/validate"),{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({title:u.title,owner:u.owner,repo:u.repo,branch:u.branch})}),b=await a.json();if(!b.valid){let a={};b.errors.forEach(b=>{a[b.field]=b.message}),z(a),x(!1);return}let d={title:u.title,description:u.description,owner:u.owner,repo:u.repo,branch:u.branch,baseBranch:u.baseBranch};c(),i(""),v({title:"",description:"",owner:"",repo:"",branch:"",baseBranch:"",status:"backlog",effort:void 0,order:void 0}),x(!1);let e=g.loading("Creating task...",d.title);try{if(!(await fetch((0,l4.apiUrl)("/api/tasks"),{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(d)})).ok)throw Error("Failed to create task");g.dismiss(e)}catch(b){let a=b instanceof Error?b.message:"Unknown error";g.error(e,"Failed to create task",a)}}catch(b){x(!1);let a=b instanceof Error?b.message:"Validation failed";g.error(void 0,"Validation failed",a)}}else if("edit"===a&&f&&e){x(!0);try{let a=await f(e.id,{title:u.title,description:u.description,status:u.status,effort:u.effort,order:u.order});if(a.success)c();else if(a.errors){let b={};a.errors.forEach(a=>{b[a.field]=a.message}),z(b)}}catch(a){console.error("Failed to update task:",a),z({global:a instanceof Error?a.message:"Failed to update task. Please try again."})}finally{x(!1)}}},J="create"===a,K=J?"Add New Task":"Edit Task",L=J?"Create":"Save";return(0,o.jsxs)(hi.Dialog,{open:b,onOpenChange:a=>{a.open||w||c()},title:K,maxWidth:J?"2xl":"6xl",fullScreen:!J,showCloseButton:!w,dismissOnEsc:!C,children:[w&&(0,o.jsx)("div",{className:"absolute inset-0 bg-card bg-opacity-90 rounded-lg flex items-center justify-center z-10",children:(0,o.jsx)(hf.LoadingSpinner,{size:"lg",message:J?"Creating task...":"Saving task..."})}),y.global&&(0,o.jsx)("div",{className:"mb-4 p-3 bg-destructive/10 border border-destructive/50 rounded text-destructive text-sm",children:y.global}),(0,o.jsxs)("form",{onSubmit:I,className:J?"space-y-4":"flex flex-col gap-4 flex-1 min-h-0 overflow-hidden",children:[J&&(0,o.jsxs)("div",{children:[(0,o.jsx)("label",{className:"block text-sm font-medium mb-1 text-foreground",children:"Repository *"}),(0,o.jsx)(l1,{options:G,value:h,onChange:a=>{let b=Array.isArray(a)?a[0]||"":a;if(i(b),b){let[a,c]=b.split("/");v(b=>({...b,owner:a,repo:c,baseBranch:""}))}else v(a=>({...a,owner:"",repo:"",baseBranch:""}))},placeholder:"Select repository",disabled:w})]}),(0,o.jsxs)("div",{children:[(0,o.jsx)("label",{className:"block text-sm font-medium mb-1 text-foreground",children:"Title *"}),(0,o.jsx)(lQ.Input,{type:"text",required:!0,maxLength:200,value:u.title,onChange:a=>v({...u,title:a.target.value}),className:"w-full",disabled:w})]}),!J&&e&&(0,o.jsxs)("div",{className:"grid grid-cols-2 gap-x-4 gap-y-2 p-3 bg-muted/50 rounded-md text-sm",children:[(0,o.jsxs)("div",{children:[(0,o.jsx)("span",{className:"font-medium text-foreground",children:"Repository"}),(0,o.jsxs)("p",{className:"text-muted-foreground",children:[e.owner,"/",e.repo]})]}),(0,o.jsxs)("div",{children:[(0,o.jsx)("span",{className:"font-medium text-foreground",children:"Branch"}),(0,o.jsx)("p",{className:"text-muted-foreground",children:e.branch})]}),(0,o.jsxs)("div",{children:[(0,o.jsx)("span",{className:"font-medium text-foreground",children:"Base Branch"}),(0,o.jsx)("p",{className:"text-muted-foreground",children:e.baseBranch||"N/A"})]}),(0,o.jsxs)("div",{children:[(0,o.jsx)("span",{className:"font-medium text-foreground",children:"Worktree"}),(0,o.jsx)("p",{className:"text-muted-foreground capitalize",children:e.worktreeStatus})]})]}),(0,o.jsxs)("div",{className:J?"":"flex flex-col flex-1 min-h-0",children:[(0,o.jsx)("label",{className:"block text-sm font-medium mb-1 text-foreground flex-shrink-0",children:"Description"}),J?(0,o.jsx)(lR,{maxLength:5e3,value:u.description,onChange:a=>v({...u,description:a.target.value}),className:"min-h-24 w-full",disabled:w}):(0,o.jsx)(l5,{value:u.description,onChange:a=>v(b=>({...b,description:a})),editorRef:E,theme:F,activeTab:A,onTabChange:B,disabled:w,onFocusChange:D})]}),!J&&(0,o.jsxs)("div",{className:"grid grid-cols-3 gap-4 flex-shrink-0",children:[(0,o.jsxs)("div",{children:[(0,o.jsx)("label",{className:"block text-sm font-medium mb-1 text-foreground",children:"Status"}),(0,o.jsxs)("select",{value:u.status,onChange:a=>v({...u,status:a.target.value}),className:"w-full h-9 pl-3 pr-10 py-1 rounded-md border border-input bg-transparent text-sm shadow-xs text-foreground",disabled:w,children:[(0,o.jsx)("option",{value:"backlog",children:"Backlog"}),(0,o.jsx)("option",{value:"planning",children:"Planning"}),(0,o.jsx)("option",{value:"tasking",children:"Tasking"}),(0,o.jsx)("option",{value:"coding",children:"Coding"}),(0,o.jsx)("option",{value:"reviewing",children:"Reviewing"}),(0,o.jsx)("option",{value:"done",children:"Done"})]})]}),(0,o.jsxs)("div",{children:[(0,o.jsx)("label",{className:"block text-sm font-medium mb-1 text-foreground",children:"Effort (h)"}),(0,o.jsx)(lQ.Input,{type:"number",step:"0.5",min:"0.5",max:"40",value:u.effort??"",onChange:a=>v({...u,effort:parseFloat(a.target.value)||void 0}),className:"w-full",placeholder:"2.5",disabled:w})]}),(0,o.jsxs)("div",{children:[(0,o.jsx)("label",{className:"block text-sm font-medium mb-1 text-foreground",children:"Order"}),(0,o.jsx)(lQ.Input,{type:"number",min:"0",value:u.order??"",onChange:a=>v({...u,order:parseInt(a.target.value)||void 0}),className:"w-full",placeholder:"0",disabled:w})]})]}),J&&(0,o.jsxs)("div",{children:[(0,o.jsx)("label",{className:"block text-sm font-medium mb-1 text-foreground",children:"Base Branch *"}),n?(0,o.jsxs)("div",{className:"w-full h-9 px-3 rounded-md border border-input bg-transparent text-muted-foreground flex items-center gap-2",children:[(0,o.jsx)(hf.LoadingSpinner,{size:"sm"}),(0,o.jsx)("span",{className:"text-xs",children:"Loading branches..."})]}):j.length>0?(0,o.jsx)(l1,{options:H,value:u.baseBranch,onChange:a=>{let b=Array.isArray(a)?a[0]||"":a;v({...u,baseBranch:b})},placeholder:"Select base branch",disabled:w}):(0,o.jsx)("div",{className:"w-full h-9 px-3 rounded-md border border-input bg-transparent text-sm text-muted-foreground flex items-center",children:r||"Select repository first"}),(0,o.jsx)("p",{className:"text-xs text-muted-foreground mt-1",children:"Your new branch will be created from this branch"})]}),J&&(0,o.jsxs)("div",{children:[(0,o.jsx)("label",{className:"block text-sm font-medium mb-1 text-foreground",children:"New Branch Name *"}),(0,o.jsx)(lQ.Input,{type:"text",required:!0,maxLength:255,value:u.branch,onChange:a=>v({...u,branch:a.target.value}),className:`w-full ${y.branch?"border-destructive":""}`,placeholder:"feature/new-feature",disabled:w,"aria-invalid":!!y.branch}),y.branch&&(0,o.jsx)("p",{className:"text-xs text-destructive mt-1",children:y.branch}),!y.branch&&(0,o.jsxs)("p",{className:"text-xs text-muted-foreground mt-1",children:["Will be created from ",u.baseBranch||"base branch"]})]}),(0,o.jsxs)("div",{className:"flex justify-end gap-2",children:[(0,o.jsx)(d2.Button,{type:"button",variant:"outline",size:"lg",onClick:c,className:"active:scale-95",disabled:w,children:"Cancel"}),(0,o.jsx)(d2.Button,{type:"submit",size:"lg",className:"active:scale-95",disabled:w||J&&n,children:L})]})]})]})}],92712)},63588,a=>{"use strict";let b=(0,a.i(60137).default)("message-square",[["path",{d:"M22 17a2 2 0 0 1-2 2H6.828a2 2 0 0 0-1.414.586l-2.202 2.202A.71.71 0 0 1 2 21.286V5a2 2 0 0 1 2-2h16a2 2 0 0 1 2 2z",key:"18887p"}]]);a.s(["MessageSquare",0,b],63588)},62722,a=>{"use strict";let b=(0,a.i(60137).default)("circle-x",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"m15 9-6 6",key:"1uzhvr"}],["path",{d:"m9 9 6 6",key:"z0biqf"}]]);a.s(["XCircle",0,b],62722)},70845,82434,a=>{"use strict";var b=a.i(60137);let c=(0,b.default)("circle-pause",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["line",{x1:"10",x2:"10",y1:"15",y2:"9",key:"c1nkhi"}],["line",{x1:"14",x2:"14",y1:"15",y2:"9",key:"h65svq"}]]);a.s(["CirclePause",0,c],70845);let d=(0,b.default)("bot",[["path",{d:"M12 8V4H8",key:"hb8ula"}],["rect",{width:"16",height:"12",x:"4",y:"8",rx:"2",key:"enze0r"}],["path",{d:"M2 14h2",key:"vft8re"}],["path",{d:"M20 14h2",key:"4cs60a"}],["path",{d:"M15 13v2",key:"1xurst"}],["path",{d:"M9 13v2",key:"rq6x2g"}]]);a.s(["Bot",0,d],82434)},80386,a=>{"use strict";let b=(0,a.i(60137).default)("terminal",[["path",{d:"M12 19h8",key:"baeox8"}],["path",{d:"m4 17 6-6-6-6",key:"1yngyt"}]]);a.s(["Terminal",0,b],80386)},33591,a=>{"use strict";let b=(0,a.i(60137).default)("wifi-off",[["path",{d:"M12 20h.01",key:"zekei9"}],["path",{d:"M8.5 16.429a5 5 0 0 1 7 0",key:"1bycff"}],["path",{d:"M5 12.859a10 10 0 0 1 5.17-2.69",key:"1dl1wf"}],["path",{d:"M19 12.859a10 10 0 0 0-2.007-1.523",key:"4k23kn"}],["path",{d:"M2 8.82a15 15 0 0 1 4.177-2.643",key:"1grhjp"}],["path",{d:"M22 8.82a15 15 0 0 0-11.288-3.764",key:"z3jwby"}],["path",{d:"m2 2 20 20",key:"1ooewy"}]]);a.s(["WifiOff",0,b],33591)},501,10450,99813,a=>{"use strict";let b,c,d,e,f,g,h,i,j,k,l,m;var n=a.i(87924),o=a.i(72131),p=a.i(33508),q=a.i(96221),r=a.i(70845),s=a.i(82434),u=a.i(80386),v=a.i(92e3),w=a.i(33591),x=a.i(67453),y=a.i(62722),z=a.i(63588),A=a.i(90002),B=a.i(39524),C=a.i(4975),D=a.i(48124),E=a.i(91399),F=a.i(6828);let G=["running","running_external"];function H({onTranscribed:a}){let[b,c]=(0,o.useState)(!1),[d,e]=(0,o.useState)("idle"),[f,g]=(0,o.useState)(0),[h,i]=(0,o.useState)(null),j=(0,o.useRef)(null),k=(0,o.useRef)([]),l=(0,o.useRef)(null),m=(0,o.useRef)(null),p=(0,o.useRef)(null),r=(0,o.useRef)(0);(0,o.useEffect)(()=>{c("true"===localStorage.getItem("tsunagi:voice-input-enabled"))},[]),(0,o.useEffect)(()=>{if(!b)return;let a=!1,c=async()=>{try{let b=await fetch((0,E.apiUrl)("/api/whisper/server/status")),c=await b.json();a||i(c.step)}catch{a||i("not_running")}};c();let d=setInterval(c,5e3);return()=>{a=!0,clearInterval(d)}},[b]);let s=(0,o.useCallback)(()=>{p.current&&(clearInterval(p.current),p.current=null),m.current?.close(),m.current=null,g(0)},[]);(0,o.useEffect)(()=>()=>{s()},[s]);let u=(0,o.useCallback)(a=>{let b=new AudioContext,c=b.createMediaStreamSource(a),d=b.createAnalyser();d.fftSize=2048,c.connect(d),m.current=b,r.current=0;let e=new Float32Array(d.fftSize);p.current=setInterval(()=>{d.getFloatTimeDomainData(e);let a=0;for(let b=0;b<e.length;b++)a+=e[b]*e[b];let b=Math.sqrt(a/e.length),c=Math.min(1,Math.max(0,((b>0?20*Math.log10(b):-60)- -60)/50));r.current=.3*r.current+.7*c,g(r.current)},50)},[]),v=(0,o.useCallback)(async b=>{e("transcribing");try{let c=new FormData;c.append("file",b,"recording.webm");let d=await fetch((0,E.apiUrl)("/api/whisper/transcribe"),{method:"POST",body:c});if(!d.ok){let a=await d.json().catch(()=>null);throw Error(a?.error||`HTTPエラー: ${d.status}`)}let e=await d.json();e.text&&a(e.text)}catch(a){F.toaster.create({type:"error",title:"文字起こしに失敗しました",description:a instanceof Error?a.message:String(a)})}finally{e("idle")}},[a]),w=(0,o.useCallback)(async()=>{try{let a=await navigator.mediaDevices.getUserMedia({audio:!0});l.current=a,k.current=[],u(a);let b=new MediaRecorder(a,{audioBitsPerSecond:128e3});b.ondataavailable=a=>{a.data.size>0&&k.current.push(a.data)},b.onstop=()=>{l.current?.getTracks().forEach(a=>a.stop()),l.current=null,s();let a=new Blob(k.current,{type:"audio/webm"});v(a)},j.current=b,b.start(),e("recording")}catch(a){F.toaster.create({type:"error",title:"マイクにアクセスできませんでした",description:a instanceof Error?a.message:String(a)})}},[v,u,s]),x=(0,o.useCallback)(()=>{j.current?.stop()},[]);if(!b)return null;let y=null!==h&&G.includes(h);return(0,n.jsxs)("div",{className:"recording"===d?"inline-flex items-center gap-2 rounded-md bg-destructive/10 p-1":"inline-flex",children:[(0,n.jsx)(B.Button,{size:"icon",variant:"recording"===d?"destructive":"default",onClick:"recording"===d?x:()=>void w(),disabled:"transcribing"===d||"idle"===d&&!y,title:"recording"===d?"停止して入力":"idle"!==d||y?"音声入力":"Whisperサーバーが起動していません(Settingsから起動してください)",children:"transcribing"===d?(0,n.jsx)(q.Loader2,{className:"w-4 h-4 animate-spin"}):"recording"===d?(0,n.jsx)(D.Square,{className:"w-4 h-4"}):(0,n.jsx)(C.Mic,{className:"w-4 h-4"})}),"recording"===d&&(0,n.jsx)("div",{"aria-hidden":!0,className:"h-1.5 w-16 overflow-hidden rounded-full bg-background/60",children:(0,n.jsx)("div",{className:"h-full rounded-full bg-destructive",style:{width:`${Math.round(100*f)}%`}})})]})}function I({entry:a}){if(!a||"idle"===a.terminal)return(0,n.jsxs)("div",{className:"flex items-center gap-1 text-xs text-muted-foreground",children:[(0,n.jsx)(r.CirclePause,{className:"w-3 h-3"}),(0,n.jsx)("span",{children:"idle"})]});if("connecting"===a.terminal)return(0,n.jsxs)("div",{className:"flex items-center gap-1 text-xs text-muted-foreground",children:[(0,n.jsx)(q.Loader2,{className:"w-3 h-3 animate-spin"}),(0,n.jsx)("span",{children:"connecting"})]});if("error"===a.terminal)return(0,n.jsxs)("div",{className:"flex items-center gap-1 text-xs text-destructive",children:[(0,n.jsx)(v.AlertCircle,{className:"w-3 h-3"}),(0,n.jsx)("span",{children:"error"})]});if("exited"===a.terminal||"paused"===a.terminal)return(0,n.jsxs)("div",{className:"flex items-center gap-1 text-xs text-muted-foreground",children:[(0,n.jsx)(w.WifiOff,{className:"w-3 h-3"}),(0,n.jsx)("span",{children:a.terminal})]});switch(a.claude){case"running":return(0,n.jsxs)("div",{className:"flex items-center gap-1 text-xs text-primary",children:[(0,n.jsx)(q.Loader2,{className:"w-3 h-3 animate-spin"}),(0,n.jsx)("span",{children:"running"})]});case"waiting":return(0,n.jsxs)("div",{className:"flex items-center gap-1 text-xs text-warning",children:[(0,n.jsx)(z.MessageSquare,{className:"w-3 h-3"}),(0,n.jsx)("span",{children:"waiting"})]});case"success":return(0,n.jsxs)("div",{className:"flex items-center gap-1 text-xs text-success",children:[(0,n.jsx)(x.CheckCircle2,{className:"w-3 h-3"}),(0,n.jsx)("span",{children:"success"})]});case"failure":case"error":return(0,n.jsxs)("div",{className:"flex items-center gap-1 text-xs text-destructive",children:[(0,n.jsx)(y.XCircle,{className:"w-3 h-3"}),(0,n.jsx)("span",{children:"failure"===a.claude?"failure":"error"})]});default:return(0,n.jsxs)("div",{className:"flex items-center gap-1 text-xs text-muted-foreground",children:[(0,n.jsx)(r.CirclePause,{className:"w-3 h-3"}),(0,n.jsx)("span",{children:"idle"})]})}}a.s(["SessionTabs",0,function({tabs:a,activeTabId:b,onTabChange:c,onTabCreateTerminal:d,onTabCreateClaude:e,onTabDelete:f,tabStatusMap:g,onVoiceInputTranscribed:h}){let i=(0,o.useRef)([]),[j,k]=(0,o.useState)({left:0,width:0}),[l,m]=(0,o.useState)(null);(0,o.useEffect)(()=>{let c=a.findIndex(a=>a.tab_id===b);if(-1!==c&&i.current[c]){let a=i.current[c];a&&k({left:a.offsetLeft,width:a.offsetWidth})}},[b,a]);let q=new Map,r=0;for(let b of a)"terminal"===b.mode&&(r+=1,q.set(b.tab_id,r));return(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)(A.ConfirmDialog,{open:null!==l,onOpenChange:a=>{a.open||m(null)},title:"Delete Tab",message:l?.isRunning?"This tab is running. Are you sure you want to delete it?":"Delete this tab?",confirmLabel:"Delete",cancelLabel:"Cancel",onConfirm:()=>{l&&f(l.tabId)},variant:"danger"}),(0,n.jsxs)("div",{className:"relative flex items-center gap-2 overflow-x-auto border-b border-border pb-1",children:[a.map((d,e)=>{let f=b===d.tab_id,h=g?.get(d.tab_id),j=(h?.claude==="running"||h?.claude==="waiting")&&h?.terminal==="connected";return(0,n.jsxs)("div",{ref:a=>{i.current[e]=a},onClick:()=>c(d.tab_id),className:`
|
|
12
12
|
flex items-center gap-2 px-4 pt-1 pb-2 h-10 flex-shrink-0 transition-colors cursor-pointer
|
|
13
13
|
${f?"text-primary":j?"text-primary-light":"text-muted-foreground hover:text-foreground"}
|
|
14
|
-
`,children:[(0,n.jsx)("div",{className:"font-medium flex items-center gap-2",children:"terminal"===d.mode?(0,n.jsxs)("span",{className:"text-xs",children:["terminal ",m.get(d.tab_id)]}):(0,n.jsx)(C,{entry:i})}),a.length>1&&(0,n.jsx)(B.Button,{variant:"ghost",size:"icon-xs",onClick:a=>{a.stopPropagation(),l({tabId:d.tab_id,isRunning:j})},children:(0,n.jsx)(p.X,{className:"w-4 h-4"})})]},d.tab_id)}),(0,n.jsxs)("div",{className:"flex items-center gap-2 flex-shrink-0 ml-auto",children:[(0,n.jsx)("div",{className:"w-px self-stretch bg-theme"}),d&&(0,n.jsx)(B.Button,{size:"icon",onClick:d,title:"Open terminal",children:(0,n.jsx)(u.Terminal,{className:"w-4 h-4"})}),(0,n.jsx)(B.Button,{size:"icon",onClick:e,title:"Open terminal with Claude",children:(0,n.jsx)(s.Bot,{className:"w-4 h-4"})})]}),(0,n.jsx)("div",{className:"absolute bottom-0 h-0.5 bg-primary transition-[left,width]",style:{left:`${i.left}px`,width:`${i.width}px`}})]})]})}],501);var D=Object.defineProperty,E=Object.getOwnPropertyDescriptor,F=(a,b,c,d)=>{for(var e,f=d>1?void 0:d?E(b,c):b,g=a.length-1;g>=0;g--)(e=a[g])&&(f=(d?e(b,c,f):e(f))||f);return d&&f&&D(b,c,f),f},G=(a,b)=>(c,d)=>b(c,d,a),H="Terminal input",I="Too much output to announce, navigate to rows manually to read";function J(a,b,c,d){var e;e=a=a.replace(/\r?\n/g,"\r"),a=c.decPrivateModes.bracketedPasteMode&&!0!==d.rawOptions.ignoreBracketedPasteMode?"\x1b[200~"+e+"\x1b[201~":e,c.triggerDataEvent(a,!0),b.value=""}function K(a,b,c){let d=c.getBoundingClientRect(),e=a.clientX-d.left-10,f=a.clientY-d.top-10;b.style.width="20px",b.style.height="20px",b.style.left=`${e}px`,b.style.top=`${f}px`,b.style.zIndex="1000",b.focus()}function L(a,b,c,d,e){K(a,b,c),e&&d.rightClickSelect(a),b.value=d.selectionText,b.select()}function M(a){return a>65535?String.fromCharCode(((a-=65536)>>10)+55296)+String.fromCharCode(a%1024+56320):String.fromCharCode(a)}function N(a,b=0,c=a.length){let d="";for(let e=b;e<c;++e){let b=a[e];b>65535?(b-=65536,d+=String.fromCharCode((b>>10)+55296)+String.fromCharCode(b%1024+56320)):d+=String.fromCharCode(b)}return d}var O=class{constructor(){this._interim=0}clear(){this._interim=0}decode(a,b){let c=a.length;if(!c)return 0;let d=0,e=0;if(this._interim){let c=a.charCodeAt(e++);56320<=c&&c<=57343?b[d++]=(this._interim-55296)*1024+c-56320+65536:(b[d++]=this._interim,b[d++]=c),this._interim=0}for(let f=e;f<c;++f){let e=a.charCodeAt(f);if(55296<=e&&e<=56319){if(++f>=c)return this._interim=e,d;let g=a.charCodeAt(f);56320<=g&&g<=57343?b[d++]=(e-55296)*1024+g-56320+65536:(b[d++]=e,b[d++]=g);continue}65279!==e&&(b[d++]=e)}return d}},P=class{constructor(){this.interim=new Uint8Array(3)}clear(){this.interim.fill(0)}decode(a,b){let c=a.length;if(!c)return 0;let d=0,e,f,g,h,i=0,j=0;if(this.interim[0]){let e=!1,f=this.interim[0];f&=(224&f)==192?31:(240&f)==224?15:7;let g=0,h;for(;(h=63&this.interim[++g])&&g<4;)f<<=6,f|=h;let i=(224&this.interim[0])==192?2:(240&this.interim[0])==224?3:4,k=i-g;for(;j<k;){if(j>=c)return 0;if((192&(h=a[j++]))!=128){j--,e=!0;break}this.interim[g++]=h,f<<=6,f|=63&h}e||(2===i?f<128?j--:b[d++]=f:3===i?f<2048||f>=55296&&f<=57343||65279===f||(b[d++]=f):f<65536||f>1114111||(b[d++]=f)),this.interim.fill(0)}let k=c-4,l=j;for(;l<c;){for(;l<k&&!(128&(e=a[l]))&&!(128&(f=a[l+1]))&&!(128&(g=a[l+2]))&&!(128&(h=a[l+3]));)b[d++]=e,b[d++]=f,b[d++]=g,b[d++]=h,l+=4;if((e=a[l++])<128)b[d++]=e;else if((224&e)==192){if(l>=c)return this.interim[0]=e,d;if((192&(f=a[l++]))!=128||(i=(31&e)<<6|63&f)<128){l--;continue}b[d++]=i}else if((240&e)==224){if(l>=c)return this.interim[0]=e,d;if((192&(f=a[l++]))!=128){l--;continue}if(l>=c)return this.interim[0]=e,this.interim[1]=f,d;if((192&(g=a[l++]))!=128){l--;continue}if((i=(15&e)<<12|(63&f)<<6|63&g)<2048||i>=55296&&i<=57343||65279===i)continue;b[d++]=i}else if((248&e)==240){if(l>=c)return this.interim[0]=e,d;if((192&(f=a[l++]))!=128){l--;continue}if(l>=c)return this.interim[0]=e,this.interim[1]=f,d;if((192&(g=a[l++]))!=128){l--;continue}if(l>=c)return this.interim[0]=e,this.interim[1]=f,this.interim[2]=g,d;if((192&(h=a[l++]))!=128){l--;continue}if((i=(7&e)<<18|(63&f)<<12|(63&g)<<6|63&h)<65536||i>1114111)continue;b[d++]=i}}return d}},Q=class a{constructor(){this.fg=0,this.bg=0,this.extended=new R}static toColorRGB(a){return[a>>>16&255,a>>>8&255,255&a]}static fromColorRGB(a){return(255&a[0])<<16|(255&a[1])<<8|255&a[2]}clone(){let b=new a;return b.fg=this.fg,b.bg=this.bg,b.extended=this.extended.clone(),b}isInverse(){return 0x4000000&this.fg}isBold(){return 0x8000000&this.fg}isUnderline(){return this.hasExtendedAttrs()&&0!==this.extended.underlineStyle?1:0x10000000&this.fg}isBlink(){return 0x20000000&this.fg}isInvisible(){return 0x40000000&this.fg}isItalic(){return 0x4000000&this.bg}isDim(){return 0x8000000&this.bg}isStrikethrough(){return 0x80000000&this.fg}isProtected(){return 0x20000000&this.bg}isOverline(){return 0x40000000&this.bg}getFgColorMode(){return 0x3000000&this.fg}getBgColorMode(){return 0x3000000&this.bg}isFgRGB(){return(0x3000000&this.fg)==0x3000000}isBgRGB(){return(0x3000000&this.bg)==0x3000000}isFgPalette(){return(0x3000000&this.fg)==0x1000000||(0x3000000&this.fg)==0x2000000}isBgPalette(){return(0x3000000&this.bg)==0x1000000||(0x3000000&this.bg)==0x2000000}isFgDefault(){return(0x3000000&this.fg)==0}isBgDefault(){return(0x3000000&this.bg)==0}isAttributeDefault(){return 0===this.fg&&0===this.bg}getFgColor(){switch(0x3000000&this.fg){case 0x1000000:case 0x2000000:return 255&this.fg;case 0x3000000:return 0xffffff&this.fg;default:return -1}}getBgColor(){switch(0x3000000&this.bg){case 0x1000000:case 0x2000000:return 255&this.bg;case 0x3000000:return 0xffffff&this.bg;default:return -1}}hasExtendedAttrs(){return 0x10000000&this.bg}updateExtended(){this.extended.isEmpty()?this.bg&=-0x10000001:this.bg|=0x10000000}getUnderlineColor(){if(0x10000000&this.bg&&~this.extended.underlineColor)switch(0x3000000&this.extended.underlineColor){case 0x1000000:case 0x2000000:return 255&this.extended.underlineColor;case 0x3000000:return 0xffffff&this.extended.underlineColor}return this.getFgColor()}getUnderlineColorMode(){return 0x10000000&this.bg&&~this.extended.underlineColor?0x3000000&this.extended.underlineColor:this.getFgColorMode()}isUnderlineColorRGB(){return 0x10000000&this.bg&&~this.extended.underlineColor?(0x3000000&this.extended.underlineColor)==0x3000000:this.isFgRGB()}isUnderlineColorPalette(){return 0x10000000&this.bg&&~this.extended.underlineColor?(0x3000000&this.extended.underlineColor)==0x1000000||(0x3000000&this.extended.underlineColor)==0x2000000:this.isFgPalette()}isUnderlineColorDefault(){return 0x10000000&this.bg&&~this.extended.underlineColor?(0x3000000&this.extended.underlineColor)==0:this.isFgDefault()}getUnderlineStyle(){return 0x10000000&this.fg?0x10000000&this.bg?this.extended.underlineStyle:1:0}getUnderlineVariantOffset(){return this.extended.underlineVariantOffset}},R=class a{constructor(a=0,b=0){this._ext=0,this._urlId=0,this._ext=a,this._urlId=b}get ext(){return this._urlId?-0x1c000001&this._ext|this.underlineStyle<<26:this._ext}set ext(a){this._ext=a}get underlineStyle(){return this._urlId?5:(0x1c000000&this._ext)>>26}set underlineStyle(a){this._ext&=-0x1c000001,this._ext|=a<<26&0x1c000000}get underlineColor(){return 0x3ffffff&this._ext}set underlineColor(a){this._ext&=-0x4000000,this._ext|=0x3ffffff&a}get urlId(){return this._urlId}set urlId(a){this._urlId=a}get underlineVariantOffset(){let a=(0xe0000000&this._ext)>>29;return a<0?0xfffffff8^a:a}set underlineVariantOffset(a){this._ext&=0x1fffffff,this._ext|=a<<29&0xe0000000}clone(){return new a(this._ext,this._urlId)}isEmpty(){return 0===this.underlineStyle&&0===this._urlId}},S=class a extends Q{constructor(){super(...arguments),this.content=0,this.fg=0,this.bg=0,this.extended=new R,this.combinedData=""}static fromCharData(b){let c=new a;return c.setFromCharData(b),c}isCombined(){return 2097152&this.content}getWidth(){return this.content>>22}getChars(){return 2097152&this.content?this.combinedData:2097151&this.content?M(2097151&this.content):""}getCode(){return this.isCombined()?this.combinedData.charCodeAt(this.combinedData.length-1):2097151&this.content}setFromCharData(a){this.fg=a[0],this.bg=0;let b=!1;if(a[1].length>2)b=!0;else if(2===a[1].length){let c=a[1].charCodeAt(0);if(55296<=c&&c<=56319){let d=a[1].charCodeAt(1);56320<=d&&d<=57343?this.content=(c-55296)*1024+d-56320+65536|a[2]<<22:b=!0}else b=!0}else this.content=a[1].charCodeAt(0)|a[2]<<22;b&&(this.combinedData=a[1],this.content=2097152|a[2]<<22)}getAsCharData(){return[this.fg,this.getChars(),this.getWidth(),this.getCode()]}},T="di$target",U="di$dependencies",V=new Map;function W(a){if(V.has(a))return V.get(a);let b=function(a,c,d){var e,f,g;if(3!=arguments.length)throw Error("@IServiceName-decorator can only be used to decorate a parameter");e=b,f=a,g=d,f[T]===f?f[U].push({id:e,index:g}):(f[U]=[{id:e,index:g}],f[T]=f)};return b._id=a,V.set(a,b),b}var X=W("BufferService"),Y=W("CoreMouseService"),Z=W("CoreService"),$=W("CharsetService"),_=W("InstantiationService"),aa=W("LogService"),ab=W("OptionsService"),ac=W("OscLinkService"),ad=W("UnicodeService"),ae=W("DecorationService"),af=class{constructor(a,b,c){this._bufferService=a,this._optionsService=b,this._oscLinkService=c}provideLinks(a,b){let c=this._bufferService.buffer.lines.get(a-1);if(!c)return void b(void 0);let d=[],e=this._optionsService.rawOptions.linkHandler,f=new S,g=c.getTrimmedLength(),h=-1,i=-1,j=!1;for(let b=0;b<g;b++)if(!(-1===i&&!c.hasContent(b))){if(c.loadCell(b,f),f.hasExtendedAttrs()&&f.extended.urlId)if(-1===i){i=b,h=f.extended.urlId;continue}else j=f.extended.urlId!==h;else -1!==i&&(j=!0);if(j||-1!==i&&b===g-1){let c=this._oscLinkService.getLinkData(h)?.uri;if(c){let f={start:{x:i+1,y:a},end:{x:b+ +(!j&&b===g-1),y:a}},h=!1;if(!e?.allowNonHttpProtocols)try{let a=new URL(c);["http:","https:"].includes(a.protocol)||(h=!0)}catch{h=!0}h||d.push({text:c,range:f,activate:(a,b)=>e?e.activate(a,b,f):function(a){if(confirm(`Do you want to navigate to ${a}?
|
|
14
|
+
`,children:[(0,n.jsx)("div",{className:"font-medium flex items-center gap-2",children:"terminal"===d.mode?(0,n.jsxs)("span",{className:"text-xs",children:["terminal ",q.get(d.tab_id)]}):(0,n.jsx)(I,{entry:h})}),a.length>1&&(0,n.jsx)(B.Button,{variant:"ghost",size:"icon-xs",onClick:a=>{a.stopPropagation(),m({tabId:d.tab_id,isRunning:j})},children:(0,n.jsx)(p.X,{className:"w-4 h-4"})})]},d.tab_id)}),(0,n.jsxs)("div",{className:"flex items-center gap-2 flex-shrink-0 ml-auto",children:[h&&(0,n.jsx)(H,{onTranscribed:h}),(0,n.jsx)("div",{className:"w-px self-stretch bg-theme"}),d&&(0,n.jsx)(B.Button,{size:"icon",onClick:d,title:"Open terminal",children:(0,n.jsx)(u.Terminal,{className:"w-4 h-4"})}),(0,n.jsx)(B.Button,{size:"icon",onClick:e,title:"Open terminal with Claude",children:(0,n.jsx)(s.Bot,{className:"w-4 h-4"})})]}),(0,n.jsx)("div",{className:"absolute bottom-0 h-0.5 bg-primary transition-[left,width]",style:{left:`${j.left}px`,width:`${j.width}px`}})]})]})}],501);var J=Object.defineProperty,K=Object.getOwnPropertyDescriptor,L=(a,b,c,d)=>{for(var e,f=d>1?void 0:d?K(b,c):b,g=a.length-1;g>=0;g--)(e=a[g])&&(f=(d?e(b,c,f):e(f))||f);return d&&f&&J(b,c,f),f},M=(a,b)=>(c,d)=>b(c,d,a),N="Terminal input",O="Too much output to announce, navigate to rows manually to read";function P(a,b,c,d){var e;e=a=a.replace(/\r?\n/g,"\r"),a=c.decPrivateModes.bracketedPasteMode&&!0!==d.rawOptions.ignoreBracketedPasteMode?"\x1b[200~"+e+"\x1b[201~":e,c.triggerDataEvent(a,!0),b.value=""}function Q(a,b,c){let d=c.getBoundingClientRect(),e=a.clientX-d.left-10,f=a.clientY-d.top-10;b.style.width="20px",b.style.height="20px",b.style.left=`${e}px`,b.style.top=`${f}px`,b.style.zIndex="1000",b.focus()}function R(a,b,c,d,e){Q(a,b,c),e&&d.rightClickSelect(a),b.value=d.selectionText,b.select()}function S(a){return a>65535?String.fromCharCode(((a-=65536)>>10)+55296)+String.fromCharCode(a%1024+56320):String.fromCharCode(a)}function T(a,b=0,c=a.length){let d="";for(let e=b;e<c;++e){let b=a[e];b>65535?(b-=65536,d+=String.fromCharCode((b>>10)+55296)+String.fromCharCode(b%1024+56320)):d+=String.fromCharCode(b)}return d}var U=class{constructor(){this._interim=0}clear(){this._interim=0}decode(a,b){let c=a.length;if(!c)return 0;let d=0,e=0;if(this._interim){let c=a.charCodeAt(e++);56320<=c&&c<=57343?b[d++]=(this._interim-55296)*1024+c-56320+65536:(b[d++]=this._interim,b[d++]=c),this._interim=0}for(let f=e;f<c;++f){let e=a.charCodeAt(f);if(55296<=e&&e<=56319){if(++f>=c)return this._interim=e,d;let g=a.charCodeAt(f);56320<=g&&g<=57343?b[d++]=(e-55296)*1024+g-56320+65536:(b[d++]=e,b[d++]=g);continue}65279!==e&&(b[d++]=e)}return d}},V=class{constructor(){this.interim=new Uint8Array(3)}clear(){this.interim.fill(0)}decode(a,b){let c=a.length;if(!c)return 0;let d=0,e,f,g,h,i=0,j=0;if(this.interim[0]){let e=!1,f=this.interim[0];f&=(224&f)==192?31:(240&f)==224?15:7;let g=0,h;for(;(h=63&this.interim[++g])&&g<4;)f<<=6,f|=h;let i=(224&this.interim[0])==192?2:(240&this.interim[0])==224?3:4,k=i-g;for(;j<k;){if(j>=c)return 0;if((192&(h=a[j++]))!=128){j--,e=!0;break}this.interim[g++]=h,f<<=6,f|=63&h}e||(2===i?f<128?j--:b[d++]=f:3===i?f<2048||f>=55296&&f<=57343||65279===f||(b[d++]=f):f<65536||f>1114111||(b[d++]=f)),this.interim.fill(0)}let k=c-4,l=j;for(;l<c;){for(;l<k&&!(128&(e=a[l]))&&!(128&(f=a[l+1]))&&!(128&(g=a[l+2]))&&!(128&(h=a[l+3]));)b[d++]=e,b[d++]=f,b[d++]=g,b[d++]=h,l+=4;if((e=a[l++])<128)b[d++]=e;else if((224&e)==192){if(l>=c)return this.interim[0]=e,d;if((192&(f=a[l++]))!=128||(i=(31&e)<<6|63&f)<128){l--;continue}b[d++]=i}else if((240&e)==224){if(l>=c)return this.interim[0]=e,d;if((192&(f=a[l++]))!=128){l--;continue}if(l>=c)return this.interim[0]=e,this.interim[1]=f,d;if((192&(g=a[l++]))!=128){l--;continue}if((i=(15&e)<<12|(63&f)<<6|63&g)<2048||i>=55296&&i<=57343||65279===i)continue;b[d++]=i}else if((248&e)==240){if(l>=c)return this.interim[0]=e,d;if((192&(f=a[l++]))!=128){l--;continue}if(l>=c)return this.interim[0]=e,this.interim[1]=f,d;if((192&(g=a[l++]))!=128){l--;continue}if(l>=c)return this.interim[0]=e,this.interim[1]=f,this.interim[2]=g,d;if((192&(h=a[l++]))!=128){l--;continue}if((i=(7&e)<<18|(63&f)<<12|(63&g)<<6|63&h)<65536||i>1114111)continue;b[d++]=i}}return d}},W=class a{constructor(){this.fg=0,this.bg=0,this.extended=new X}static toColorRGB(a){return[a>>>16&255,a>>>8&255,255&a]}static fromColorRGB(a){return(255&a[0])<<16|(255&a[1])<<8|255&a[2]}clone(){let b=new a;return b.fg=this.fg,b.bg=this.bg,b.extended=this.extended.clone(),b}isInverse(){return 0x4000000&this.fg}isBold(){return 0x8000000&this.fg}isUnderline(){return this.hasExtendedAttrs()&&0!==this.extended.underlineStyle?1:0x10000000&this.fg}isBlink(){return 0x20000000&this.fg}isInvisible(){return 0x40000000&this.fg}isItalic(){return 0x4000000&this.bg}isDim(){return 0x8000000&this.bg}isStrikethrough(){return 0x80000000&this.fg}isProtected(){return 0x20000000&this.bg}isOverline(){return 0x40000000&this.bg}getFgColorMode(){return 0x3000000&this.fg}getBgColorMode(){return 0x3000000&this.bg}isFgRGB(){return(0x3000000&this.fg)==0x3000000}isBgRGB(){return(0x3000000&this.bg)==0x3000000}isFgPalette(){return(0x3000000&this.fg)==0x1000000||(0x3000000&this.fg)==0x2000000}isBgPalette(){return(0x3000000&this.bg)==0x1000000||(0x3000000&this.bg)==0x2000000}isFgDefault(){return(0x3000000&this.fg)==0}isBgDefault(){return(0x3000000&this.bg)==0}isAttributeDefault(){return 0===this.fg&&0===this.bg}getFgColor(){switch(0x3000000&this.fg){case 0x1000000:case 0x2000000:return 255&this.fg;case 0x3000000:return 0xffffff&this.fg;default:return -1}}getBgColor(){switch(0x3000000&this.bg){case 0x1000000:case 0x2000000:return 255&this.bg;case 0x3000000:return 0xffffff&this.bg;default:return -1}}hasExtendedAttrs(){return 0x10000000&this.bg}updateExtended(){this.extended.isEmpty()?this.bg&=-0x10000001:this.bg|=0x10000000}getUnderlineColor(){if(0x10000000&this.bg&&~this.extended.underlineColor)switch(0x3000000&this.extended.underlineColor){case 0x1000000:case 0x2000000:return 255&this.extended.underlineColor;case 0x3000000:return 0xffffff&this.extended.underlineColor}return this.getFgColor()}getUnderlineColorMode(){return 0x10000000&this.bg&&~this.extended.underlineColor?0x3000000&this.extended.underlineColor:this.getFgColorMode()}isUnderlineColorRGB(){return 0x10000000&this.bg&&~this.extended.underlineColor?(0x3000000&this.extended.underlineColor)==0x3000000:this.isFgRGB()}isUnderlineColorPalette(){return 0x10000000&this.bg&&~this.extended.underlineColor?(0x3000000&this.extended.underlineColor)==0x1000000||(0x3000000&this.extended.underlineColor)==0x2000000:this.isFgPalette()}isUnderlineColorDefault(){return 0x10000000&this.bg&&~this.extended.underlineColor?(0x3000000&this.extended.underlineColor)==0:this.isFgDefault()}getUnderlineStyle(){return 0x10000000&this.fg?0x10000000&this.bg?this.extended.underlineStyle:1:0}getUnderlineVariantOffset(){return this.extended.underlineVariantOffset}},X=class a{constructor(a=0,b=0){this._ext=0,this._urlId=0,this._ext=a,this._urlId=b}get ext(){return this._urlId?-0x1c000001&this._ext|this.underlineStyle<<26:this._ext}set ext(a){this._ext=a}get underlineStyle(){return this._urlId?5:(0x1c000000&this._ext)>>26}set underlineStyle(a){this._ext&=-0x1c000001,this._ext|=a<<26&0x1c000000}get underlineColor(){return 0x3ffffff&this._ext}set underlineColor(a){this._ext&=-0x4000000,this._ext|=0x3ffffff&a}get urlId(){return this._urlId}set urlId(a){this._urlId=a}get underlineVariantOffset(){let a=(0xe0000000&this._ext)>>29;return a<0?0xfffffff8^a:a}set underlineVariantOffset(a){this._ext&=0x1fffffff,this._ext|=a<<29&0xe0000000}clone(){return new a(this._ext,this._urlId)}isEmpty(){return 0===this.underlineStyle&&0===this._urlId}},Y=class a extends W{constructor(){super(...arguments),this.content=0,this.fg=0,this.bg=0,this.extended=new X,this.combinedData=""}static fromCharData(b){let c=new a;return c.setFromCharData(b),c}isCombined(){return 2097152&this.content}getWidth(){return this.content>>22}getChars(){return 2097152&this.content?this.combinedData:2097151&this.content?S(2097151&this.content):""}getCode(){return this.isCombined()?this.combinedData.charCodeAt(this.combinedData.length-1):2097151&this.content}setFromCharData(a){this.fg=a[0],this.bg=0;let b=!1;if(a[1].length>2)b=!0;else if(2===a[1].length){let c=a[1].charCodeAt(0);if(55296<=c&&c<=56319){let d=a[1].charCodeAt(1);56320<=d&&d<=57343?this.content=(c-55296)*1024+d-56320+65536|a[2]<<22:b=!0}else b=!0}else this.content=a[1].charCodeAt(0)|a[2]<<22;b&&(this.combinedData=a[1],this.content=2097152|a[2]<<22)}getAsCharData(){return[this.fg,this.getChars(),this.getWidth(),this.getCode()]}},Z="di$target",$="di$dependencies",_=new Map;function aa(a){if(_.has(a))return _.get(a);let b=function(a,c,d){var e,f,g;if(3!=arguments.length)throw Error("@IServiceName-decorator can only be used to decorate a parameter");e=b,f=a,g=d,f[Z]===f?f[$].push({id:e,index:g}):(f[$]=[{id:e,index:g}],f[Z]=f)};return b._id=a,_.set(a,b),b}var ab=aa("BufferService"),ac=aa("CoreMouseService"),ad=aa("CoreService"),ae=aa("CharsetService"),af=aa("InstantiationService"),ag=aa("LogService"),ah=aa("OptionsService"),ai=aa("OscLinkService"),aj=aa("UnicodeService"),ak=aa("DecorationService"),al=class{constructor(a,b,c){this._bufferService=a,this._optionsService=b,this._oscLinkService=c}provideLinks(a,b){let c=this._bufferService.buffer.lines.get(a-1);if(!c)return void b(void 0);let d=[],e=this._optionsService.rawOptions.linkHandler,f=new Y,g=c.getTrimmedLength(),h=-1,i=-1,j=!1;for(let b=0;b<g;b++)if(!(-1===i&&!c.hasContent(b))){if(c.loadCell(b,f),f.hasExtendedAttrs()&&f.extended.urlId)if(-1===i){i=b,h=f.extended.urlId;continue}else j=f.extended.urlId!==h;else -1!==i&&(j=!0);if(j||-1!==i&&b===g-1){let c=this._oscLinkService.getLinkData(h)?.uri;if(c){let f={start:{x:i+1,y:a},end:{x:b+ +(!j&&b===g-1),y:a}},h=!1;if(!e?.allowNonHttpProtocols)try{let a=new URL(c);["http:","https:"].includes(a.protocol)||(h=!0)}catch{h=!0}h||d.push({text:c,range:f,activate:(a,b)=>e?e.activate(a,b,f):function(a){if(confirm(`Do you want to navigate to ${a}?
|
|
15
15
|
|
|
16
|
-
WARNING: This link could potentially be dangerous`)){let b=window.open();if(b){try{b.opener=null}catch{}b.location.href=a}else console.warn("Opening link blocked as opener could not be cleared")}}(b),hover:(a,b)=>e?.hover?.(a,b,f),leave:(a,b)=>e?.leave?.(a,b,f)})}j=!1,f.hasExtendedAttrs()&&f.extended.urlId?(i=b,h=f.extended.urlId):(i=-1,h=-1)}}b(d)}};
|
|
16
|
+
WARNING: This link could potentially be dangerous`)){let b=window.open();if(b){try{b.opener=null}catch{}b.location.href=a}else console.warn("Opening link blocked as opener could not be cleared")}}(b),hover:(a,b)=>e?.hover?.(a,b,f),leave:(a,b)=>e?.leave?.(a,b,f)})}j=!1,f.hasExtendedAttrs()&&f.extended.urlId?(i=b,h=f.extended.urlId):(i=-1,h=-1)}}b(d)}};al=L([M(0,ab),M(1,ah),M(2,ai)],al);var am=aa("CharSizeService"),an=aa("CoreBrowserService"),ao=aa("MouseService"),ap=aa("RenderService"),aq=aa("SelectionService"),ar=aa("CharacterJoinerService"),as=aa("ThemeService"),at=aa("LinkProviderService"),au=new class{constructor(){this.listeners=[],this.unexpectedErrorHandler=function(a){setTimeout(()=>{throw a.stack?ay.isErrorNoTelemetry(a)?new ay(a.message+`
|
|
17
17
|
|
|
18
18
|
`+a.stack):Error(a.message+`
|
|
19
19
|
|
|
20
|
-
`+a.stack):a},0)}}addListener(a){return this.listeners.push(a),()=>{this._removeListener(a)}}emit(a){this.listeners.forEach(b=>{b(a)})}_removeListener(a){this.listeners.splice(this.listeners.indexOf(a),1)}setUnexpectedErrorHandler(a){this.unexpectedErrorHandler=a}getUnexpectedErrorHandler(){return this.unexpectedErrorHandler}onUnexpectedError(a){this.unexpectedErrorHandler(a),this.emit(a)}onUnexpectedExternalError(a){this.unexpectedErrorHandler(a)}};function ap(a){var b;(b=a)instanceof ar||b instanceof Error&&b.name===aq&&b.message===aq||ao.onUnexpectedError(a)}var aq="Canceled",ar=class extends Error{constructor(){super(aq),this.name=this.message}},as=class a extends Error{constructor(a){super(a),this.name="CodeExpectedError"}static fromError(b){if(b instanceof a)return b;let c=new a;return c.message=b.message,c.stack=b.stack,c}static isErrorNoTelemetry(a){return"CodeExpectedError"===a.name}},at=class a extends Error{constructor(b){super(b||"An unexpected bug occurred."),Object.setPrototypeOf(this,a.prototype)}};function au(a,b=0){return a[a.length-(1+b)]}(aL=aM||={}).isLessThan=function(a){return a<0},aL.isLessThanOrEqual=function(a){return a<=0},aL.isGreaterThan=function(a){return a>0},aL.isNeitherLessOrGreaterThan=function(a){return 0===a},aL.greaterThan=1,aL.lessThan=-1,aL.neitherLessOrGreaterThan=0;var av=class a{constructor(a){this.iterate=a}forEach(a){this.iterate(b=>(a(b),!0))}toArray(){let a=[];return this.iterate(b=>(a.push(b),!0)),a}filter(b){return new a(a=>this.iterate(c=>!b(c)||a(c)))}map(b){return new a(a=>this.iterate(c=>a(b(c))))}some(a){let b=!1;return this.iterate(c=>!(b=a(c))),b}findFirst(a){let b;return this.iterate(c=>!a(c)||(b=c,!1)),b}findLast(a){let b;return this.iterate(c=>(a(c)&&(b=c),!0)),b}findLastMaxBy(a){let b,c=!0;return this.iterate(d=>((c||aM.isGreaterThan(a(d,b)))&&(c=!1,b=d),!0)),b}};av.empty=new av(a=>{});function aw(a){}function ax(a,b){}function ay(a){if(aN.is(a)){let b=[];for(let c of a)if(c)try{c.dispose()}catch(a){b.push(a)}if(1===b.length)throw b[0];if(b.length>1)throw AggregateError(b,"Encountered errors while disposing of store");return Array.isArray(a)?[]:a}if(a)return a.dispose(),a}function az(a){let b={dispose:function(a,b){let c=this,d=!1,e;return function(){if(d)return e;if(d=!0,b)try{e=a.apply(c,arguments)}finally{b()}else e=a.apply(c,arguments);return e}}(()=>{aw(b),a()})};return b}(a=>{function b(a){return a&&"object"==typeof a&&"function"==typeof a[Symbol.iterator]}a.is=b;let c=Object.freeze([]);function*d(a){yield a}a.empty=function(){return c},a.single=d,a.wrap=function(a){return b(a)?a:d(a)},a.from=function(a){return a||c},a.reverse=function*(a){for(let b=a.length-1;b>=0;b--)yield a[b]},a.isEmpty=function(a){return!a||!0===a[Symbol.iterator]().next().done},a.first=function(a){return a[Symbol.iterator]().next().value},a.some=function(a,b){let c=0;for(let d of a)if(b(d,c++))return!0;return!1},a.find=function(a,b){for(let c of a)if(b(c))return c},a.filter=function*(a,b){for(let c of a)b(c)&&(yield c)},a.map=function*(a,b){let c=0;for(let d of a)yield b(d,c++)},a.flatMap=function*(a,b){let c=0;for(let d of a)yield*b(d,c++)},a.concat=function*(...a){for(let b of a)yield*b},a.reduce=function(a,b,c){let d=c;for(let c of a)d=b(d,c);return d},a.slice=function*(a,b,c=a.length){for(b<0&&(b+=a.length),c<0?c+=a.length:c>a.length&&(c=a.length);b<c;b++)yield a[b]},a.consume=function(b,c=1/0){let d=[];if(0===c)return[d,b];let e=b[Symbol.iterator]();for(let b=0;b<c;b++){let b=e.next();if(b.done)return[d,a.empty()];d.push(b.value)}return[d,{[Symbol.iterator]:()=>e}]},a.asyncToArray=async function(a){let b=[];for await(let c of a)b.push(c);return Promise.resolve(b)}})(aN||={});var aA=class a{constructor(){var a;this._toDispose=new Set,this._isDisposed=!1,a=this}dispose(){this._isDisposed||(aw(this),this._isDisposed=!0,this.clear())}get isDisposed(){return this._isDisposed}clear(){if(0!==this._toDispose.size)try{ay(this._toDispose)}finally{this._toDispose.clear()}}add(b){if(!b)return b;if(b===this)throw Error("Cannot register a disposable on itself!");return ax(b,this),this._isDisposed?a.DISABLE_DISPOSED_WARNING||console.warn(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(b),b}delete(a){if(a){if(a===this)throw Error("Cannot dispose a disposable on itself!");this._toDispose.delete(a),a.dispose()}}deleteAndLeak(a){a&&this._toDispose.has(a)&&(this._toDispose.delete(a),ax(a,null))}};aA.DISABLE_DISPOSED_WARNING=!1;var aB=aA,aC=class{constructor(){var a;this._store=new aB,a=this,ax(this._store,this)}dispose(){aw(this),this._store.dispose()}_register(a){if(a===this)throw Error("Cannot register a disposable on itself!");return this._store.add(a)}};aC.None=Object.freeze({dispose(){}});var aD=class{constructor(){var a;this._isDisposed=!1,a=this}get value(){return this._isDisposed?void 0:this._value}set value(a){this._isDisposed||a===this._value||(this._value?.dispose(),a&&ax(a,this),this._value=a)}clear(){this.value=void 0}dispose(){this._isDisposed=!0,aw(this),this._value?.dispose(),this._value=void 0}clearAndLeak(){let a=this._value;return this._value=void 0,a&&ax(a,null),a}},aE=globalThis,aF=class a{constructor(b){this.element=b,this.next=a.Undefined,this.prev=a.Undefined}};aF.Undefined=new aF(void 0);var aG=class{constructor(){this._first=aF.Undefined,this._last=aF.Undefined,this._size=0}get size(){return this._size}isEmpty(){return this._first===aF.Undefined}clear(){let a=this._first;for(;a!==aF.Undefined;){let b=a.next;a.prev=aF.Undefined,a.next=aF.Undefined,a=b}this._first=aF.Undefined,this._last=aF.Undefined,this._size=0}unshift(a){return this._insert(a,!1)}push(a){return this._insert(a,!0)}_insert(a,b){let c=new aF(a);if(this._first===aF.Undefined)this._first=c,this._last=c;else if(b){let a=this._last;this._last=c,c.prev=a,a.next=c}else{let a=this._first;this._first=c,c.next=a,a.prev=c}this._size+=1;let d=!1;return()=>{d||(d=!0,this._remove(c))}}shift(){if(this._first!==aF.Undefined){let a=this._first.element;return this._remove(this._first),a}}pop(){if(this._last!==aF.Undefined){let a=this._last.element;return this._remove(this._last),a}}_remove(a){if(a.prev!==aF.Undefined&&a.next!==aF.Undefined){let b=a.prev;b.next=a.next,a.next.prev=b}else a.prev===aF.Undefined&&a.next===aF.Undefined?(this._first=aF.Undefined,this._last=aF.Undefined):a.next===aF.Undefined?(this._last=this._last.prev,this._last.next=aF.Undefined):a.prev===aF.Undefined&&(this._first=this._first.next,this._first.prev=aF.Undefined);this._size-=1}*[Symbol.iterator](){let a=this._first;for(;a!==aF.Undefined;)yield a.element,a=a.next}},aH=globalThis.performance&&"function"==typeof globalThis.performance.now,aI=class a{static create(b){return new a(b)}constructor(a){this._now=aH&&!1===a?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 -1!==this._stopTime?this._stopTime-this._startTime:this._now()-this._startTime}};(a=>{function b(a){}function c(a){return(b,c=null,d)=>{let e=!1,f;return f=a(a=>{if(!e)return f?f.dispose():e=!0,b.call(c,a)},null,d),e&&f.dispose(),f}}function d(a,b,c){return f((c,d=null,e)=>a(a=>c.call(d,b(a)),null,e),c)}function e(a,b,c){return f((c,d=null,e)=>a(a=>b(a)&&c.call(d,a),null,e),c)}function f(a,c){let d,e={onWillAddFirstListener(){d=a(f.fire,f)},onDidRemoveLastListener(){d?.dispose()}};c||b(e);let f=new aV(e);return c?.add(f),f.event}function g(a,c,d=100,e=!1,f=!1,h,i){let j,k,l,m=0,n,o={leakWarningThreshold:h,onWillAddFirstListener(){j=a(a=>{m++,k=c(k,a),e&&!l&&(p.fire(k),k=void 0),n=()=>{let a=k;k=void 0,l=void 0,(!e||m>1)&&p.fire(a),m=0},"number"==typeof d?(clearTimeout(l),l=setTimeout(n,d)):void 0===l&&(l=0,queueMicrotask(n))})},onWillRemoveListener(){f&&m>0&&n?.()},onDidRemoveLastListener(){n=void 0,j.dispose()}};i||b(o);let p=new aV(o);return i?.add(p),p.event}a.None=()=>aC.None,a.defer=function(a,b){return g(a,()=>{},0,void 0,!0,void 0,b)},a.once=c,a.map=d,a.forEach=function(a,b,c){return f((c,d=null,e)=>a(a=>{b(a),c.call(d,a)},null,e),c)},a.filter=e,a.signal=function(a){return a},a.any=function(...a){return(b,c=null,d)=>{var e,f;return e=function(...a){let b=az(()=>ay(a));return b}(...a.map(a=>a(a=>b.call(c,a)))),(f=d)instanceof Array?f.push(e):f&&f.add(e),e}},a.reduce=function(a,b,c,e){let f=c;return d(a,a=>f=b(f,a),e)},a.debounce=g,a.accumulate=function(b,c=0,d){return a.debounce(b,(a,b)=>a?(a.push(b),a):[b],c,void 0,!0,void 0,d)},a.latch=function(a,b=(a,b)=>a===b,c){let d=!0,f;return e(a,a=>{let c=d||!b(a,f);return d=!1,f=a,c},c)},a.split=function(b,c,d){return[a.filter(b,c,d),a.filter(b,a=>!c(a),d)]},a.buffer=function(a,b=!1,c=[],d){let e=c.slice(),f=a(a=>{e?e.push(a):h.fire(a)});d&&d.add(f);let g=()=>{e?.forEach(a=>h.fire(a)),e=null},h=new aV({onWillAddFirstListener(){f||(f=a(a=>h.fire(a)),d&&d.add(f))},onDidAddFirstListener(){e&&(b?setTimeout(g):g())},onDidRemoveLastListener(){f&&f.dispose(),f=null}});return d&&d.add(h),h.event},a.chain=function(a,b){return(c,d,e)=>{let f=b(new i);return a(function(a){let b=f.evaluate(a);b!==h&&c.call(d,b)},void 0,e)}};let h=Symbol("HaltChainable");class i{constructor(){this.steps=[]}map(a){return this.steps.push(a),this}forEach(a){return this.steps.push(b=>(a(b),b)),this}filter(a){return this.steps.push(b=>a(b)?b:h),this}reduce(a,b){let c=b;return this.steps.push(b=>c=a(c,b)),this}latch(a=(a,b)=>a===b){let b=!0,c;return this.steps.push(d=>{let e=b||!a(d,c);return b=!1,c=d,e?d:h}),this}evaluate(a){for(let b of this.steps)if((a=b(a))===h)break;return a}}a.fromNodeEventEmitter=function(a,b,c=a=>a){let d=(...a)=>e.fire(c(...a)),e=new aV({onWillAddFirstListener:()=>a.on(b,d),onDidRemoveLastListener:()=>a.removeListener(b,d)});return e.event},a.fromDOMEventEmitter=function(a,b,c=a=>a){let d=(...a)=>e.fire(c(...a)),e=new aV({onWillAddFirstListener:()=>a.addEventListener(b,d),onDidRemoveLastListener:()=>a.removeEventListener(b,d)});return e.event},a.toPromise=function(a){return new Promise(b=>c(a)(b))},a.fromPromise=function(a){let b=new aV;return a.then(a=>{b.fire(a)},()=>{b.fire(void 0)}).finally(()=>{b.dispose()}),b.event},a.forward=function(a,b){return a(a=>b.fire(a))},a.runAndSubscribe=function(a,b,c){return b(c),a(a=>b(a))};class j{constructor(a,c){this._observable=a,this._counter=0,this._hasChanged=!1;let d={onWillAddFirstListener:()=>{a.addObserver(this)},onDidRemoveLastListener:()=>{a.removeObserver(this)}};c||b(d),this.emitter=new aV(d),c&&c.add(this.emitter)}beginUpdate(a){this._counter++}handlePossibleChange(a){}handleChange(a,b){this._hasChanged=!0}endUpdate(a){this._counter--,0===this._counter&&(this._observable.reportChanges(),this._hasChanged&&(this._hasChanged=!1,this.emitter.fire(this._observable.get())))}}a.fromObservable=function(a,b){return new j(a,b).emitter.event},a.fromObservableLight=function(a){return(b,c,d)=>{let e=0,f=!1,g={beginUpdate(){e++},endUpdate(){0==--e&&(a.reportChanges(),f&&(f=!1,b.call(c)))},handlePossibleChange(){},handleChange(){f=!0}};a.addObserver(g),a.reportChanges();let h={dispose(){a.removeObserver(g)}};return d instanceof aB?d.add(h):Array.isArray(d)&&d.push(h),h}}})(aO||={});var aJ=class a{constructor(b){this.listenerCount=0,this.invocationCount=0,this.elapsedOverall=0,this.durations=[],this.name=`${b}_${a._idPool++}`,a.all.add(this)}start(a){this._stopWatch=new aI,this.listenerCount=a}stop(){if(this._stopWatch){let a=this._stopWatch.elapsed();this.durations.push(a),this.elapsedOverall+=a,this.invocationCount+=1,this._stopWatch=void 0}}};aJ.all=new Set,aJ._idPool=0;var aK=class a{constructor(b,c,d=(a._idPool++).toString(16).padStart(3,"0")){this._errorHandler=b,this.threshold=c,this.name=d,this._warnCountdown=0}dispose(){this._stacks?.clear()}check(a,b){let c=this.threshold;if(c<=0||b<c)return;this._stacks||(this._stacks=new Map);let d=this._stacks.get(a.value)||0;if(this._stacks.set(a.value,d+1),this._warnCountdown-=1,this._warnCountdown<=0){this._warnCountdown=.5*c;let[a,d]=this.getMostFrequentStack(),e=`[${this.name}] potential listener LEAK detected, having ${b} listeners already. MOST frequent listener (${d}):`;console.warn(e),console.warn(a);let f=new aR(e,a);this._errorHandler(f)}return()=>{let b=this._stacks.get(a.value)||0;this._stacks.set(a.value,b-1)}}getMostFrequentStack(){if(!this._stacks)return;let a,b=0;for(let[c,d]of this._stacks)(!a||b<d)&&(a=[c,d],b=d);return a}};aK._idPool=1;var aL,aM,aN,aO,aP,aQ=class a{constructor(a){this.value=a}static create(){return new a(Error().stack??"")}print(){console.warn(this.value.split(`
|
|
20
|
+
`+a.stack):a},0)}}addListener(a){return this.listeners.push(a),()=>{this._removeListener(a)}}emit(a){this.listeners.forEach(b=>{b(a)})}_removeListener(a){this.listeners.splice(this.listeners.indexOf(a),1)}setUnexpectedErrorHandler(a){this.unexpectedErrorHandler=a}getUnexpectedErrorHandler(){return this.unexpectedErrorHandler}onUnexpectedError(a){this.unexpectedErrorHandler(a),this.emit(a)}onUnexpectedExternalError(a){this.unexpectedErrorHandler(a)}};function av(a){var b;(b=a)instanceof ax||b instanceof Error&&b.name===aw&&b.message===aw||au.onUnexpectedError(a)}var aw="Canceled",ax=class extends Error{constructor(){super(aw),this.name=this.message}},ay=class a extends Error{constructor(a){super(a),this.name="CodeExpectedError"}static fromError(b){if(b instanceof a)return b;let c=new a;return c.message=b.message,c.stack=b.stack,c}static isErrorNoTelemetry(a){return"CodeExpectedError"===a.name}},az=class a extends Error{constructor(b){super(b||"An unexpected bug occurred."),Object.setPrototypeOf(this,a.prototype)}};function aA(a,b=0){return a[a.length-(1+b)]}(aR=aS||={}).isLessThan=function(a){return a<0},aR.isLessThanOrEqual=function(a){return a<=0},aR.isGreaterThan=function(a){return a>0},aR.isNeitherLessOrGreaterThan=function(a){return 0===a},aR.greaterThan=1,aR.lessThan=-1,aR.neitherLessOrGreaterThan=0;var aB=class a{constructor(a){this.iterate=a}forEach(a){this.iterate(b=>(a(b),!0))}toArray(){let a=[];return this.iterate(b=>(a.push(b),!0)),a}filter(b){return new a(a=>this.iterate(c=>!b(c)||a(c)))}map(b){return new a(a=>this.iterate(c=>a(b(c))))}some(a){let b=!1;return this.iterate(c=>!(b=a(c))),b}findFirst(a){let b;return this.iterate(c=>!a(c)||(b=c,!1)),b}findLast(a){let b;return this.iterate(c=>(a(c)&&(b=c),!0)),b}findLastMaxBy(a){let b,c=!0;return this.iterate(d=>((c||aS.isGreaterThan(a(d,b)))&&(c=!1,b=d),!0)),b}};aB.empty=new aB(a=>{});function aC(a){}function aD(a,b){}function aE(a){if(aT.is(a)){let b=[];for(let c of a)if(c)try{c.dispose()}catch(a){b.push(a)}if(1===b.length)throw b[0];if(b.length>1)throw AggregateError(b,"Encountered errors while disposing of store");return Array.isArray(a)?[]:a}if(a)return a.dispose(),a}function aF(a){let b={dispose:function(a,b){let c=this,d=!1,e;return function(){if(d)return e;if(d=!0,b)try{e=a.apply(c,arguments)}finally{b()}else e=a.apply(c,arguments);return e}}(()=>{aC(b),a()})};return b}(a=>{function b(a){return a&&"object"==typeof a&&"function"==typeof a[Symbol.iterator]}a.is=b;let c=Object.freeze([]);function*d(a){yield a}a.empty=function(){return c},a.single=d,a.wrap=function(a){return b(a)?a:d(a)},a.from=function(a){return a||c},a.reverse=function*(a){for(let b=a.length-1;b>=0;b--)yield a[b]},a.isEmpty=function(a){return!a||!0===a[Symbol.iterator]().next().done},a.first=function(a){return a[Symbol.iterator]().next().value},a.some=function(a,b){let c=0;for(let d of a)if(b(d,c++))return!0;return!1},a.find=function(a,b){for(let c of a)if(b(c))return c},a.filter=function*(a,b){for(let c of a)b(c)&&(yield c)},a.map=function*(a,b){let c=0;for(let d of a)yield b(d,c++)},a.flatMap=function*(a,b){let c=0;for(let d of a)yield*b(d,c++)},a.concat=function*(...a){for(let b of a)yield*b},a.reduce=function(a,b,c){let d=c;for(let c of a)d=b(d,c);return d},a.slice=function*(a,b,c=a.length){for(b<0&&(b+=a.length),c<0?c+=a.length:c>a.length&&(c=a.length);b<c;b++)yield a[b]},a.consume=function(b,c=1/0){let d=[];if(0===c)return[d,b];let e=b[Symbol.iterator]();for(let b=0;b<c;b++){let b=e.next();if(b.done)return[d,a.empty()];d.push(b.value)}return[d,{[Symbol.iterator]:()=>e}]},a.asyncToArray=async function(a){let b=[];for await(let c of a)b.push(c);return Promise.resolve(b)}})(aT||={});var aG=class a{constructor(){var a;this._toDispose=new Set,this._isDisposed=!1,a=this}dispose(){this._isDisposed||(aC(this),this._isDisposed=!0,this.clear())}get isDisposed(){return this._isDisposed}clear(){if(0!==this._toDispose.size)try{aE(this._toDispose)}finally{this._toDispose.clear()}}add(b){if(!b)return b;if(b===this)throw Error("Cannot register a disposable on itself!");return aD(b,this),this._isDisposed?a.DISABLE_DISPOSED_WARNING||console.warn(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(b),b}delete(a){if(a){if(a===this)throw Error("Cannot dispose a disposable on itself!");this._toDispose.delete(a),a.dispose()}}deleteAndLeak(a){a&&this._toDispose.has(a)&&(this._toDispose.delete(a),aD(a,null))}};aG.DISABLE_DISPOSED_WARNING=!1;var aH=aG,aI=class{constructor(){var a;this._store=new aH,a=this,aD(this._store,this)}dispose(){aC(this),this._store.dispose()}_register(a){if(a===this)throw Error("Cannot register a disposable on itself!");return this._store.add(a)}};aI.None=Object.freeze({dispose(){}});var aJ=class{constructor(){var a;this._isDisposed=!1,a=this}get value(){return this._isDisposed?void 0:this._value}set value(a){this._isDisposed||a===this._value||(this._value?.dispose(),a&&aD(a,this),this._value=a)}clear(){this.value=void 0}dispose(){this._isDisposed=!0,aC(this),this._value?.dispose(),this._value=void 0}clearAndLeak(){let a=this._value;return this._value=void 0,a&&aD(a,null),a}},aK=globalThis,aL=class a{constructor(b){this.element=b,this.next=a.Undefined,this.prev=a.Undefined}};aL.Undefined=new aL(void 0);var aM=class{constructor(){this._first=aL.Undefined,this._last=aL.Undefined,this._size=0}get size(){return this._size}isEmpty(){return this._first===aL.Undefined}clear(){let a=this._first;for(;a!==aL.Undefined;){let b=a.next;a.prev=aL.Undefined,a.next=aL.Undefined,a=b}this._first=aL.Undefined,this._last=aL.Undefined,this._size=0}unshift(a){return this._insert(a,!1)}push(a){return this._insert(a,!0)}_insert(a,b){let c=new aL(a);if(this._first===aL.Undefined)this._first=c,this._last=c;else if(b){let a=this._last;this._last=c,c.prev=a,a.next=c}else{let a=this._first;this._first=c,c.next=a,a.prev=c}this._size+=1;let d=!1;return()=>{d||(d=!0,this._remove(c))}}shift(){if(this._first!==aL.Undefined){let a=this._first.element;return this._remove(this._first),a}}pop(){if(this._last!==aL.Undefined){let a=this._last.element;return this._remove(this._last),a}}_remove(a){if(a.prev!==aL.Undefined&&a.next!==aL.Undefined){let b=a.prev;b.next=a.next,a.next.prev=b}else a.prev===aL.Undefined&&a.next===aL.Undefined?(this._first=aL.Undefined,this._last=aL.Undefined):a.next===aL.Undefined?(this._last=this._last.prev,this._last.next=aL.Undefined):a.prev===aL.Undefined&&(this._first=this._first.next,this._first.prev=aL.Undefined);this._size-=1}*[Symbol.iterator](){let a=this._first;for(;a!==aL.Undefined;)yield a.element,a=a.next}},aN=globalThis.performance&&"function"==typeof globalThis.performance.now,aO=class a{static create(b){return new a(b)}constructor(a){this._now=aN&&!1===a?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 -1!==this._stopTime?this._stopTime-this._startTime:this._now()-this._startTime}};(a=>{function b(a){}function c(a){return(b,c=null,d)=>{let e=!1,f;return f=a(a=>{if(!e)return f?f.dispose():e=!0,b.call(c,a)},null,d),e&&f.dispose(),f}}function d(a,b,c){return f((c,d=null,e)=>a(a=>c.call(d,b(a)),null,e),c)}function e(a,b,c){return f((c,d=null,e)=>a(a=>b(a)&&c.call(d,a),null,e),c)}function f(a,c){let d,e={onWillAddFirstListener(){d=a(f.fire,f)},onDidRemoveLastListener(){d?.dispose()}};c||b(e);let f=new a_(e);return c?.add(f),f.event}function g(a,c,d=100,e=!1,f=!1,h,i){let j,k,l,m=0,n,o={leakWarningThreshold:h,onWillAddFirstListener(){j=a(a=>{m++,k=c(k,a),e&&!l&&(p.fire(k),k=void 0),n=()=>{let a=k;k=void 0,l=void 0,(!e||m>1)&&p.fire(a),m=0},"number"==typeof d?(clearTimeout(l),l=setTimeout(n,d)):void 0===l&&(l=0,queueMicrotask(n))})},onWillRemoveListener(){f&&m>0&&n?.()},onDidRemoveLastListener(){n=void 0,j.dispose()}};i||b(o);let p=new a_(o);return i?.add(p),p.event}a.None=()=>aI.None,a.defer=function(a,b){return g(a,()=>{},0,void 0,!0,void 0,b)},a.once=c,a.map=d,a.forEach=function(a,b,c){return f((c,d=null,e)=>a(a=>{b(a),c.call(d,a)},null,e),c)},a.filter=e,a.signal=function(a){return a},a.any=function(...a){return(b,c=null,d)=>{var e,f;return e=function(...a){let b=aF(()=>aE(a));return b}(...a.map(a=>a(a=>b.call(c,a)))),(f=d)instanceof Array?f.push(e):f&&f.add(e),e}},a.reduce=function(a,b,c,e){let f=c;return d(a,a=>f=b(f,a),e)},a.debounce=g,a.accumulate=function(b,c=0,d){return a.debounce(b,(a,b)=>a?(a.push(b),a):[b],c,void 0,!0,void 0,d)},a.latch=function(a,b=(a,b)=>a===b,c){let d=!0,f;return e(a,a=>{let c=d||!b(a,f);return d=!1,f=a,c},c)},a.split=function(b,c,d){return[a.filter(b,c,d),a.filter(b,a=>!c(a),d)]},a.buffer=function(a,b=!1,c=[],d){let e=c.slice(),f=a(a=>{e?e.push(a):h.fire(a)});d&&d.add(f);let g=()=>{e?.forEach(a=>h.fire(a)),e=null},h=new a_({onWillAddFirstListener(){f||(f=a(a=>h.fire(a)),d&&d.add(f))},onDidAddFirstListener(){e&&(b?setTimeout(g):g())},onDidRemoveLastListener(){f&&f.dispose(),f=null}});return d&&d.add(h),h.event},a.chain=function(a,b){return(c,d,e)=>{let f=b(new i);return a(function(a){let b=f.evaluate(a);b!==h&&c.call(d,b)},void 0,e)}};let h=Symbol("HaltChainable");class i{constructor(){this.steps=[]}map(a){return this.steps.push(a),this}forEach(a){return this.steps.push(b=>(a(b),b)),this}filter(a){return this.steps.push(b=>a(b)?b:h),this}reduce(a,b){let c=b;return this.steps.push(b=>c=a(c,b)),this}latch(a=(a,b)=>a===b){let b=!0,c;return this.steps.push(d=>{let e=b||!a(d,c);return b=!1,c=d,e?d:h}),this}evaluate(a){for(let b of this.steps)if((a=b(a))===h)break;return a}}a.fromNodeEventEmitter=function(a,b,c=a=>a){let d=(...a)=>e.fire(c(...a)),e=new a_({onWillAddFirstListener:()=>a.on(b,d),onDidRemoveLastListener:()=>a.removeListener(b,d)});return e.event},a.fromDOMEventEmitter=function(a,b,c=a=>a){let d=(...a)=>e.fire(c(...a)),e=new a_({onWillAddFirstListener:()=>a.addEventListener(b,d),onDidRemoveLastListener:()=>a.removeEventListener(b,d)});return e.event},a.toPromise=function(a){return new Promise(b=>c(a)(b))},a.fromPromise=function(a){let b=new a_;return a.then(a=>{b.fire(a)},()=>{b.fire(void 0)}).finally(()=>{b.dispose()}),b.event},a.forward=function(a,b){return a(a=>b.fire(a))},a.runAndSubscribe=function(a,b,c){return b(c),a(a=>b(a))};class j{constructor(a,c){this._observable=a,this._counter=0,this._hasChanged=!1;let d={onWillAddFirstListener:()=>{a.addObserver(this)},onDidRemoveLastListener:()=>{a.removeObserver(this)}};c||b(d),this.emitter=new a_(d),c&&c.add(this.emitter)}beginUpdate(a){this._counter++}handlePossibleChange(a){}handleChange(a,b){this._hasChanged=!0}endUpdate(a){this._counter--,0===this._counter&&(this._observable.reportChanges(),this._hasChanged&&(this._hasChanged=!1,this.emitter.fire(this._observable.get())))}}a.fromObservable=function(a,b){return new j(a,b).emitter.event},a.fromObservableLight=function(a){return(b,c,d)=>{let e=0,f=!1,g={beginUpdate(){e++},endUpdate(){0==--e&&(a.reportChanges(),f&&(f=!1,b.call(c)))},handlePossibleChange(){},handleChange(){f=!0}};a.addObserver(g),a.reportChanges();let h={dispose(){a.removeObserver(g)}};return d instanceof aH?d.add(h):Array.isArray(d)&&d.push(h),h}}})(aU||={});var aP=class a{constructor(b){this.listenerCount=0,this.invocationCount=0,this.elapsedOverall=0,this.durations=[],this.name=`${b}_${a._idPool++}`,a.all.add(this)}start(a){this._stopWatch=new aO,this.listenerCount=a}stop(){if(this._stopWatch){let a=this._stopWatch.elapsed();this.durations.push(a),this.elapsedOverall+=a,this.invocationCount+=1,this._stopWatch=void 0}}};aP.all=new Set,aP._idPool=0;var aQ=class a{constructor(b,c,d=(a._idPool++).toString(16).padStart(3,"0")){this._errorHandler=b,this.threshold=c,this.name=d,this._warnCountdown=0}dispose(){this._stacks?.clear()}check(a,b){let c=this.threshold;if(c<=0||b<c)return;this._stacks||(this._stacks=new Map);let d=this._stacks.get(a.value)||0;if(this._stacks.set(a.value,d+1),this._warnCountdown-=1,this._warnCountdown<=0){this._warnCountdown=.5*c;let[a,d]=this.getMostFrequentStack(),e=`[${this.name}] potential listener LEAK detected, having ${b} listeners already. MOST frequent listener (${d}):`;console.warn(e),console.warn(a);let f=new aX(e,a);this._errorHandler(f)}return()=>{let b=this._stacks.get(a.value)||0;this._stacks.set(a.value,b-1)}}getMostFrequentStack(){if(!this._stacks)return;let a,b=0;for(let[c,d]of this._stacks)(!a||b<d)&&(a=[c,d],b=d);return a}};aQ._idPool=1;var aR,aS,aT,aU,aV,aW=class a{constructor(a){this.value=a}static create(){return new a(Error().stack??"")}print(){console.warn(this.value.split(`
|
|
21
21
|
`).slice(2).join(`
|
|
22
|
-
`))}},
|
|
22
|
+
`))}},aX=class extends Error{constructor(a,b){super(a),this.name="ListenerLeakError",this.stack=b}},aY=class extends Error{constructor(a,b){super(a),this.name="ListenerRefusalError",this.stack=b}},aZ=0,a$=class{constructor(a){this.value=a,this.id=aZ++}},a_=class{constructor(a){this._size=0,this._options=a,this._leakageMon=this._options?.leakWarningThreshold?new aQ(a?.onListenerError??av,this._options?.leakWarningThreshold??-1):void 0,this._perfMon=this._options?._profName?new aP(this._options._profName):void 0,this._deliveryQueue=this._options?.deliveryQueue}dispose(){this._disposed||(this._disposed=!0,this._deliveryQueue?.current===this&&this._deliveryQueue.reset(),this._listeners&&(this._listeners=void 0,this._size=0),this._options?.onDidRemoveLastListener?.(),this._leakageMon?.dispose())}get event(){return this._event??=(a,b,c)=>{if(this._leakageMon&&this._size>this._leakageMon.threshold**2){let a=`[${this._leakageMon.name}] REFUSES to accept new listeners because it exceeded its threshold by far (${this._size} vs ${this._leakageMon.threshold})`;console.warn(a);let b=this._leakageMon.getMostFrequentStack()??["UNKNOWN stack",-1],c=new aY(`${a}. HINT: Stack shows most frequent listener (${b[1]}-times)`,b[0]);return(this._options?.onListenerError||av)(c),aI.None}if(this._disposed)return aI.None;b&&(a=a.bind(b));let d=new a$(a),e;this._leakageMon&&this._size>=Math.ceil(.2*this._leakageMon.threshold)&&(d.stack=aW.create(),e=this._leakageMon.check(d.stack,this._size+1)),this._listeners?this._listeners instanceof a$?(this._deliveryQueue??=new a0,this._listeners=[this._listeners,d]):this._listeners.push(d):(this._options?.onWillAddFirstListener?.(this),this._listeners=d,this._options?.onDidAddFirstListener?.(this)),this._size++;let f=aF(()=>{aV?.unregister(f),e?.(),this._removeListener(d)});if(c instanceof aH?c.add(f):Array.isArray(c)&&c.push(f),aV){let a=Error().stack.split(`
|
|
23
23
|
`).slice(2,3).join(`
|
|
24
|
-
`).trim(),b=/(file:|vscode-file:\/\/vscode-app)?(\/[^:]*:\d+:\d+)/.exec(a);aP.register(f,b?.[2]??a,f)}return f},this._event}_removeListener(a){if(this._options?.onWillRemoveListener?.(this),!this._listeners)return;if(1===this._size){this._listeners=void 0,this._options?.onDidRemoveLastListener?.(this),this._size=0;return}let b=this._listeners,c=b.indexOf(a);if(-1===c)throw console.log("disposed?",this._disposed),console.log("size?",this._size),console.log("arr?",JSON.stringify(this._listeners)),Error("Attempted to dispose unknown listener");this._size--,b[c]=void 0;let d=this._deliveryQueue.current===this;if(2*this._size<=b.length){let a=0;for(let c=0;c<b.length;c++)b[c]?b[a++]=b[c]:d&&(this._deliveryQueue.end--,a<this._deliveryQueue.i&&this._deliveryQueue.i--);b.length=a}}_deliver(a,b){if(!a)return;let c=this._options?.onListenerError||ap;try{a.value(b)}catch(a){c(a)}}_deliverQueue(a){let b=a.current._listeners;for(;a.i<a.end;)this._deliver(b[a.i++],a.value);a.reset()}fire(a){if(this._deliveryQueue?.current&&(this._deliverQueue(this._deliveryQueue),this._perfMon?.stop()),this._perfMon?.start(this._size),this._listeners)if(this._listeners instanceof aU)this._deliver(this._listeners,a);else{let b=this._deliveryQueue;b.enqueue(this,a,this._listeners.length),this._deliverQueue(b)}this._perfMon?.stop()}hasListeners(){return this._size>0}},aW=class{constructor(){this.i=-1,this.end=0}enqueue(a,b,c){this.i=0,this.end=c,this.current=a,this.value=b}reset(){this.i=this.end,this.current=void 0,this.value=void 0}},aX=class{constructor(){this.mapWindowIdToZoomLevel=new Map,this._onDidChangeZoomLevel=new aV,this.onDidChangeZoomLevel=this._onDidChangeZoomLevel.event,this.mapWindowIdToZoomFactor=new Map,this._onDidChangeFullscreen=new aV,this.onDidChangeFullscreen=this._onDidChangeFullscreen.event,this.mapWindowIdToFullScreen=new Map}getZoomLevel(a){return this.mapWindowIdToZoomLevel.get(this.getWindowId(a))??0}setZoomLevel(a,b){if(this.getZoomLevel(b)===a)return;let c=this.getWindowId(b);this.mapWindowIdToZoomLevel.set(c,a),this._onDidChangeZoomLevel.fire(c)}getZoomFactor(a){return this.mapWindowIdToZoomFactor.get(this.getWindowId(a))??1}setZoomFactor(a,b){this.mapWindowIdToZoomFactor.set(this.getWindowId(b),a)}setFullscreen(a,b){if(this.isFullscreen(b)===a)return;let c=this.getWindowId(b);this.mapWindowIdToFullScreen.set(c,a),this._onDidChangeFullscreen.fire(c)}isFullscreen(a){return!!this.mapWindowIdToFullScreen.get(this.getWindowId(a))}getWindowId(a){return a.vscodeWindowId}};aX.INSTANCE=new aX,aX.INSTANCE.onDidChangeZoomLevel,aX.INSTANCE.onDidChangeFullscreen;var aY="object"==typeof navigator?navigator.userAgent:"",aZ=aY.indexOf("Firefox")>=0,a$=aY.indexOf("AppleWebKit")>=0,a_=aY.indexOf("Chrome")>=0,a0=!a_&&aY.indexOf("Safari")>=0;aY.indexOf("Electron/"),aY.indexOf("Android");var a1=!1;if("function"==typeof aE.matchMedia){let a=aE.matchMedia("(display-mode: standalone) or (display-mode: window-controls-overlay)"),b=aE.matchMedia("(display-mode: fullscreen)");a1=a.matches,a2=a,"string"==typeof a2&&(a2=aE.matchMedia(a2)),a2.addEventListener("change",({matches:a})=>{a1&&b.matches||(a1=a)})}var a2,a3,a4,a5=!1,a6=!1,a7=!1,a8=!1,a9=!1,ba="en",bb=globalThis;"u">typeof bb.vscode&&"u">typeof bb.vscode.process?a4=bb.vscode.process:"u">typeof process&&"string"==typeof process?.versions?.node&&(a4=process);var bc="string"==typeof a4?.versions?.electron&&a4?.type==="renderer";if("object"==typeof a4){a5="win32"===a4.platform,a6="darwin"===a4.platform,(a7="linux"===a4.platform)&&a4.env.SNAP&&a4.env.SNAP_REVISION,a4.env.CI||a4.env.BUILD_ARTIFACTSTAGINGDIRECTORY,ba="en";let a=a4.env.VSCODE_NLS_CONFIG;if(a)try{let b=JSON.parse(a);b.userLocale,b.osLocale,ba=b.resolvedLanguage||"en",b.languagePack?.translationsConfigFile}catch{}a8=!0}else"object"!=typeof navigator||bc?console.error("Unable to resolve platform."):(a5=(a3=navigator.userAgent).indexOf("Windows")>=0,a6=a3.indexOf("Macintosh")>=0,(a3.indexOf("Macintosh")>=0||a3.indexOf("iPad")>=0||a3.indexOf("iPhone")>=0)&&navigator.maxTouchPoints&&navigator.maxTouchPoints,a7=a3.indexOf("Linux")>=0,a3?.indexOf("Mobi"),a9=!0,ba=globalThis._VSCODE_NLS_LANGUAGE||"en",navigator.language.toLowerCase());var bd=a5,be=a6,bf=a7,bg=a8;a9&&"function"==typeof bb.importScripts&&bb.origin;var bh,bi=a3,bj=ba;(bt=bh||={}).value=function(){return bj},bt.isDefaultVariant=function(){return 2===bj.length?"en"===bj:bj.length>=3&&"e"===bj[0]&&"n"===bj[1]&&"-"===bj[2]},bt.isDefault=function(){return"en"===bj};var bk="function"==typeof bb.postMessage&&!bb.importScripts,bl=(()=>{if(bk){let a=[];bb.addEventListener("message",b=>{if(b.data&&b.data.vscodeScheduleAsyncWork)for(let c=0,d=a.length;c<d;c++){let d=a[c];if(d.id===b.data.vscodeScheduleAsyncWork){a.splice(c,1),d.callback();return}}});let b=0;return c=>{let d=++b;a.push({id:d,callback:c}),bb.postMessage({vscodeScheduleAsyncWork:d},"*")}}return a=>setTimeout(a)})(),bm=!!(bi&&bi.indexOf("Chrome")>=0);bi&&bi.indexOf("Firefox"),!bm&&bi&&bi.indexOf("Safari"),bi&&bi.indexOf("Edg/"),bi&&bi.indexOf("Android");var bn="object"==typeof navigator?navigator:{};bg||document.queryCommandSupported&&document.queryCommandSupported("copy")||bn&&bn.clipboard&&bn.clipboard.writeText,bg||bn&&bn.clipboard&&bn.clipboard.readText,bg||a1||bn.keyboard,"ontouchstart"in aE||bn.maxTouchPoints,aE.PointerEvent&&("ontouchstart"in aE||navigator.maxTouchPoints);var bo=class{constructor(){this._keyCodeToStr=[],this._strToKeyCode=Object.create(null)}define(a,b){this._keyCodeToStr[a]=b,this._strToKeyCode[b.toLowerCase()]=a}keyCodeToStr(a){return this._keyCodeToStr[a]}strToKeyCode(a){return this._strToKeyCode[a.toLowerCase()]||0}},bp=new bo,bq=new bo,br=new bo,bs=Array(230);(bu=bv||={}).toString=function(a){return bp.keyCodeToStr(a)},bu.fromString=function(a){return bp.strToKeyCode(a)},bu.toUserSettingsUS=function(a){return bq.keyCodeToStr(a)},bu.toUserSettingsGeneral=function(a){return br.keyCodeToStr(a)},bu.fromUserSettings=function(a){return bq.strToKeyCode(a)||br.strToKeyCode(a)},bu.toElectronAccelerator=function(a){if(a>=98&&a<=113)return null;switch(a){case 16:return"Up";case 18:return"Down";case 15:return"Left";case 17:return"Right"}return bp.keyCodeToStr(a)};var bt,bu,bv,bw,bx=class a{constructor(a,b,c,d,e){this.ctrlKey=a,this.shiftKey=b,this.altKey=c,this.metaKey=d,this.keyCode=e}equals(b){return b instanceof a&&this.ctrlKey===b.ctrlKey&&this.shiftKey===b.shiftKey&&this.altKey===b.altKey&&this.metaKey===b.metaKey&&this.keyCode===b.keyCode}getHashCode(){let a=this.ctrlKey?"1":"0",b=this.shiftKey?"1":"0",c=this.altKey?"1":"0",d=this.metaKey?"1":"0";return`K${a}${b}${c}${d}${this.keyCode}`}isModifierKey(){return 0===this.keyCode||5===this.keyCode||57===this.keyCode||6===this.keyCode||4===this.keyCode}toKeybinding(){return new by([this])}isDuplicateModifierCase(){return this.ctrlKey&&5===this.keyCode||this.shiftKey&&4===this.keyCode||this.altKey&&6===this.keyCode||this.metaKey&&57===this.keyCode}},by=class{constructor(a){if(0===a.length)throw function(a){return a?Error(`Illegal argument: ${a}`):Error("Illegal argument")}("chords");this.chords=a}getHashCode(){let a="";for(let b=0,c=this.chords.length;b<c;b++)0!==b&&(a+=";"),a+=this.chords[b].getHashCode();return a}equals(a){if(null===a||this.chords.length!==a.chords.length)return!1;for(let b=0;b<this.chords.length;b++)if(!this.chords[b].equals(a.chords[b]))return!1;return!0}},bz=be?256:2048,bA=be?2048:256,bB=class{constructor(a){this._standardKeyboardEventBrand=!0,this.browserEvent=a,this.target=a.target,this.ctrlKey=a.ctrlKey,this.shiftKey=a.shiftKey,this.altKey=a.altKey,this.metaKey=a.metaKey,this.altGraphKey=a.getModifierState?.("AltGraph"),this.keyCode=function(a){if(a.charCode){let b=String.fromCharCode(a.charCode).toUpperCase();return bv.fromString(b)}let b=a.keyCode;if(3===b)return 7;if(aZ)switch(b){case 59:return 85;case 60:if(bf)return 97;break;case 61:return 86;case 107:return 109;case 109:return 111;case 173:return 88;case 224:if(be)return 57}else if(a$&&(be&&93===b||!be&&92===b))return 57;return bs[b]||0}(a),this.code=a.code,this.ctrlKey=this.ctrlKey||5===this.keyCode,this.altKey=this.altKey||6===this.keyCode,this.shiftKey=this.shiftKey||4===this.keyCode,this.metaKey=this.metaKey||57===this.keyCode,this._asKeybinding=this._computeKeybinding(),this._asKeyCodeChord=this._computeKeyCodeChord()}preventDefault(){this.browserEvent&&this.browserEvent.preventDefault&&this.browserEvent.preventDefault()}stopPropagation(){this.browserEvent&&this.browserEvent.stopPropagation&&this.browserEvent.stopPropagation()}toKeyCodeChord(){return this._asKeyCodeChord}equals(a){return this._asKeybinding===a}_computeKeybinding(){let a=0;5!==this.keyCode&&4!==this.keyCode&&6!==this.keyCode&&57!==this.keyCode&&(a=this.keyCode);let b=0;return this.ctrlKey&&(b|=bz),this.altKey&&(b|=512),this.shiftKey&&(b|=1024),this.metaKey&&(b|=bA),b|=a}_computeKeyCodeChord(){let a=0;return 5!==this.keyCode&&4!==this.keyCode&&6!==this.keyCode&&57!==this.keyCode&&(a=this.keyCode),new bx(this.ctrlKey,this.shiftKey,this.altKey,this.metaKey,a)}},bC=new WeakMap,bD=class{static getSameOriginWindowChain(a){let b=bC.get(a);if(!b){b=[],bC.set(a,b);let c=a,d;do(d=function(a){if(!a.parent||a.parent===a)return null;try{let b=a.location,c=a.parent.location;if("null"!==b.origin&&"null"!==c.origin&&b.origin!==c.origin)return null}catch{return null}return a.parent}(c))?b.push({window:new WeakRef(c),iframeElement:c.frameElement||null}):b.push({window:new WeakRef(c),iframeElement:null}),c=d;while(c)}return b.slice(0)}static getPositionOfChildWindowRelativeToAncestorWindow(a,b){if(!b||a===b)return{top:0,left:0};let c=0,d=0;for(let e of this.getSameOriginWindowChain(a)){let a=e.window.deref();if(c+=a?.scrollY??0,d+=a?.scrollX??0,a===b||!e.iframeElement)break;let f=e.iframeElement.getBoundingClientRect();c+=f.top,d+=f.left}return{top:c,left:d}}},bE=class{constructor(a,b){this.timestamp=Date.now(),this.browserEvent=b,this.leftButton=0===b.button,this.middleButton=1===b.button,this.rightButton=2===b.button,this.buttons=b.buttons,this.target=b.target,this.detail=b.detail||1,"dblclick"===b.type&&(this.detail=2),this.ctrlKey=b.ctrlKey,this.shiftKey=b.shiftKey,this.altKey=b.altKey,this.metaKey=b.metaKey,"number"==typeof b.pageX?(this.posx=b.pageX,this.posy=b.pageY):(this.posx=b.clientX+this.target.ownerDocument.body.scrollLeft+this.target.ownerDocument.documentElement.scrollLeft,this.posy=b.clientY+this.target.ownerDocument.body.scrollTop+this.target.ownerDocument.documentElement.scrollTop);let c=bD.getPositionOfChildWindowRelativeToAncestorWindow(a,b.view);this.posx-=c.left,this.posy-=c.top}preventDefault(){this.browserEvent.preventDefault()}stopPropagation(){this.browserEvent.stopPropagation()}},bF=class{constructor(a,b=0,c=0){this.browserEvent=a||null,this.target=a?a.target||a.targetNode||a.srcElement:null,this.deltaY=c,this.deltaX=b;let d=!1;if(a_){let a=navigator.userAgent.match(/Chrome\/(\d+)/);d=(a?parseInt(a[1]):123)<=122}if(a){let b=a.view?.devicePixelRatio||1;"u">typeof a.wheelDeltaY?d?this.deltaY=a.wheelDeltaY/(120*b):this.deltaY=a.wheelDeltaY/120:"u">typeof a.VERTICAL_AXIS&&a.axis===a.VERTICAL_AXIS?this.deltaY=-a.detail/3:"wheel"===a.type&&(a.deltaMode===a.DOM_DELTA_LINE?aZ&&!be?this.deltaY=-a.deltaY/3:this.deltaY=-a.deltaY:this.deltaY=-a.deltaY/40),"u">typeof a.wheelDeltaX?a0&&bd?this.deltaX=-(a.wheelDeltaX/120):d?this.deltaX=a.wheelDeltaX/(120*b):this.deltaX=a.wheelDeltaX/120:"u">typeof a.HORIZONTAL_AXIS&&a.axis===a.HORIZONTAL_AXIS?this.deltaX=-a.detail/3:"wheel"===a.type&&(a.deltaMode===a.DOM_DELTA_LINE?aZ&&!be?this.deltaX=-a.deltaX/3:this.deltaX=-a.deltaX:this.deltaX=-a.deltaX/40),0===this.deltaY&&0===this.deltaX&&a.wheelDelta&&(d?this.deltaY=a.wheelDelta/(120*b):this.deltaY=a.wheelDelta/120)}}preventDefault(){this.browserEvent?.preventDefault()}stopPropagation(){this.browserEvent?.stopPropagation()}},bG=Object.freeze(function(a,b){let c=setTimeout(a.bind(b),0);return{dispose(){clearTimeout(c)}}});(cw=bw||={}).isCancellationToken=function(a){return a===cw.None||a===cw.Cancelled||a instanceof bH||!!a&&"object"==typeof a&&"boolean"==typeof a.isCancellationRequested&&"function"==typeof a.onCancellationRequested},cw.None=Object.freeze({isCancellationRequested:!1,onCancellationRequested:aO.None}),cw.Cancelled=Object.freeze({isCancellationRequested:!0,onCancellationRequested:bG});var bH=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?bG:(this._emitter||(this._emitter=new aV),this._emitter.event)}dispose(){this._emitter&&(this._emitter.dispose(),this._emitter=null)}};Symbol("MicrotaskDelay");var bI=class{constructor(a,b){this._isDisposed=!1,this._token=-1,"function"==typeof a&&"number"==typeof b&&this.setIfNotSet(a,b)}dispose(){this.cancel(),this._isDisposed=!0}cancel(){-1!==this._token&&(clearTimeout(this._token),this._token=-1)}cancelAndSet(a,b){if(this._isDisposed)throw new at("Calling 'cancelAndSet' on a disposed TimeoutTimer");this.cancel(),this._token=setTimeout(()=>{this._token=-1,a()},b)}setIfNotSet(a,b){if(this._isDisposed)throw new at("Calling 'setIfNotSet' on a disposed TimeoutTimer");-1===this._token&&(this._token=setTimeout(()=>{this._token=-1,a()},b))}},bJ=class{constructor(){this.disposable=void 0,this.isDisposed=!1}cancel(){this.disposable?.dispose(),this.disposable=void 0}cancelAndSet(a,b,c=globalThis){if(this.isDisposed)throw new at("Calling 'cancelAndSet' on a disposed IntervalTimer");this.cancel();let d=c.setInterval(()=>{a()},b);this.disposable=az(()=>{c.clearInterval(d),this.disposable=void 0})}dispose(){this.cancel(),this.isDisposed=!0}};(cx=cy||={}).settled=async function(a){let b,c=await Promise.all(a.map(a=>a.then(a=>a,a=>{b||(b=a)})));if("u">typeof b)throw b;return c},cx.withAsyncBody=function(a){return new Promise(async(b,c)=>{try{await a(b,c)}catch(a){c(a)}})};var bK=class a{static fromArray(b){return new a(a=>{a.emitMany(b)})}static fromPromise(b){return new a(async a=>{a.emitMany(await b)})}static fromPromises(b){return new a(async a=>{await Promise.all(b.map(async b=>a.emitOne(await b)))})}static merge(b){return new a(async a=>{await Promise.all(b.map(async b=>{for await(let c of b)a.emitOne(c)}))})}constructor(a,b){this._state=0,this._results=[],this._error=null,this._onReturn=b,this._onStateChanged=new aV,queueMicrotask(async()=>{let b={emitOne:a=>this.emitOne(a),emitMany:a=>this.emitMany(a),reject:a=>this.reject(a)};try{await Promise.resolve(a(b)),this.resolve()}catch(a){this.reject(a)}finally{b.emitOne=void 0,b.emitMany=void 0,b.reject=void 0}})}[Symbol.asyncIterator](){let a=0;return{next:async()=>{for(;;){if(2===this._state)throw this._error;if(a<this._results.length)return{done:!1,value:this._results[a++]};if(1===this._state)return{done:!0,value:void 0};await aO.toPromise(this._onStateChanged.event)}},return:async()=>(this._onReturn?.(),{done:!0,value:void 0})}}static map(b,c){return new a(async a=>{for await(let d of b)a.emitOne(c(d))})}map(b){return a.map(this,b)}static filter(b,c){return new a(async a=>{for await(let d of b)c(d)&&a.emitOne(d)})}filter(b){return a.filter(this,b)}static coalesce(b){return a.filter(b,a=>!!a)}coalesce(){return a.coalesce(this)}static async toPromise(a){let b=[];for await(let c of a)b.push(c);return b}toPromise(){return a.toPromise(this)}emitOne(a){0===this._state&&(this._results.push(a),this._onStateChanged.fire())}emitMany(a){0===this._state&&(this._results=this._results.concat(a),this._onStateChanged.fire())}resolve(){0===this._state&&(this._state=1,this._onStateChanged.fire())}reject(a){0===this._state&&(this._state=2,this._error=a,this._onStateChanged.fire())}};bK.EMPTY=bK.fromArray([]);function bL(a,b){return(b<<5)-b+a|0}function bM(a,b){b=bL(149417,b);for(let c=0,d=a.length;c<d;c++)b=bL(a.charCodeAt(c),b);return b}new DataView(new ArrayBuffer(320));var{registerWindow:bN,getWindow:bO,getDocument:bP,getWindows:bQ,getWindowsCount:bR,getWindowId:bS,getWindowById:bT,hasWindow:bU,onDidRegisterWindow:bV,onWillUnregisterWindow:bW,onDidUnregisterWindow:bX}=(b=new Map,c={window:aE,disposables:new aB},b.set(aE.vscodeWindowId,c),d=new aV,e=new aV,f=new aV,{onDidRegisterWindow:d.event,onWillUnregisterWindow:f.event,onDidUnregisterWindow:e.event,registerWindow(a){if(b.has(a.vscodeWindowId))return aC.None;let c=new aB,g={window:a,disposables:c.add(new aB)};return b.set(a.vscodeWindowId,g),c.add(az(()=>{b.delete(a.vscodeWindowId),e.fire(a)})),c.add(bZ(a,b2.BEFORE_UNLOAD,()=>{f.fire(a)})),d.fire(g),c},getWindows:()=>b.values(),getWindowsCount:()=>b.size,getWindowId:a=>a.vscodeWindowId,hasWindow:a=>b.has(a),getWindowById:function(a,d){return("number"==typeof a?b.get(a):void 0)??(d?c:void 0)},getWindow:a=>a?.ownerDocument?.defaultView?a.ownerDocument.defaultView.window:a?.view?a.view.window:aE,getDocument:a=>bO(a).document}),bY=class{constructor(a,b,c,d){this._node=a,this._type=b,this._handler=c,this._options=d||!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 bZ(a,b,c,d){return new bY(a,b,c,d)}var b$=function(a,b,c,d){var e;let f=c;return"click"===b||"mousedown"===b||"contextmenu"===b?(e=bO(a),f=function(a){return c(new bE(e,a))}):("keydown"===b||"keypress"===b||"keyup"===b)&&(f=function(a){return c(new bB(a))}),bZ(a,b,f,d)},b_=class extends bJ{constructor(a){super(),this.defaultTarget=a&&bO(a)}cancelAndSet(a,b,c){return super.cancelAndSet(a,b,c??this.defaultTarget)}},b0=class{constructor(a,b=0){this._runner=a,this.priority=b,this._canceled=!1}dispose(){this._canceled=!0}execute(){if(!this._canceled)try{this._runner()}catch(a){ap(a)}}static sort(a,b){return b.priority-a.priority}};g=new Map,h=new Map,i=new Map,j=new Map,cz=(a,b,c=0)=>{let d=bS(a),e=new b0(b,c),f=g.get(d);return f||(f=[],g.set(d,f)),f.push(e),i.get(d)||(i.set(d,!0),a.requestAnimationFrame(()=>(a=>{i.set(a,!1);let b=g.get(a)??[];for(h.set(a,b),g.set(a,[]),j.set(a,!0);b.length>0;)b.sort(b0.sort),b.shift().execute();j.set(a,!1)})(d))),e};var b1=class a{constructor(a,b){this.width=a,this.height=b}with(b=this.width,c=this.height){return b!==this.width||c!==this.height?new a(b,c):this}static is(a){return"object"==typeof a&&"number"==typeof a.height&&"number"==typeof a.width}static lift(b){return b instanceof a?b:new a(b.width,b.height)}static equals(a,b){return a===b||!!a&&!!b&&a.width===b.width&&a.height===b.height}};b1.None=new b1(0,0),new class{constructor(){this.mutationObservers=new Map}observe(a,b,c){let d=this.mutationObservers.get(a);d||(d=new Map,this.mutationObservers.set(a,d));let e=function a(b,c){switch(typeof b){case"object":var d,e,f,g;return null===b?bL(349,c):Array.isArray(b)?(d=b,e=bL(104579,e=c),d.reduce((b,c)=>a(c,b),e)):(f=b,g=bL(181387,g=c),Object.keys(f).sort().reduce((b,c)=>(b=bM(c,b),a(f[c],b)),g));case"string":return bM(b,c);case"boolean":return bL(b?433:863,c);case"number":return bL(b,c);case"undefined":return bL(937,c);default:return bL(617,c)}}(c,0),f=d.get(e);if(f)f.users+=1;else{let g=new aV,h=new MutationObserver(a=>g.fire(a));h.observe(a,c);let i=f={users:1,observer:h,onDidMutate:g.event};b.add(az(()=>{i.users-=1,0===i.users&&(g.dispose(),h.disconnect(),d?.delete(e),d?.size===0&&this.mutationObservers.delete(a))})),d.set(e,f)}return f.onDidMutate}};var b2={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"},b3=class{constructor(a){this.domNode=a,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(a){let b=b4(a);this._maxWidth!==b&&(this._maxWidth=b,this.domNode.style.maxWidth=this._maxWidth)}setWidth(a){let b=b4(a);this._width!==b&&(this._width=b,this.domNode.style.width=this._width)}setHeight(a){let b=b4(a);this._height!==b&&(this._height=b,this.domNode.style.height=this._height)}setTop(a){let b=b4(a);this._top!==b&&(this._top=b,this.domNode.style.top=this._top)}setLeft(a){let b=b4(a);this._left!==b&&(this._left=b,this.domNode.style.left=this._left)}setBottom(a){let b=b4(a);this._bottom!==b&&(this._bottom=b,this.domNode.style.bottom=this._bottom)}setRight(a){let b=b4(a);this._right!==b&&(this._right=b,this.domNode.style.right=this._right)}setPaddingTop(a){let b=b4(a);this._paddingTop!==b&&(this._paddingTop=b,this.domNode.style.paddingTop=this._paddingTop)}setPaddingLeft(a){let b=b4(a);this._paddingLeft!==b&&(this._paddingLeft=b,this.domNode.style.paddingLeft=this._paddingLeft)}setPaddingBottom(a){let b=b4(a);this._paddingBottom!==b&&(this._paddingBottom=b,this.domNode.style.paddingBottom=this._paddingBottom)}setPaddingRight(a){let b=b4(a);this._paddingRight!==b&&(this._paddingRight=b,this.domNode.style.paddingRight=this._paddingRight)}setFontFamily(a){this._fontFamily!==a&&(this._fontFamily=a,this.domNode.style.fontFamily=this._fontFamily)}setFontWeight(a){this._fontWeight!==a&&(this._fontWeight=a,this.domNode.style.fontWeight=this._fontWeight)}setFontSize(a){let b=b4(a);this._fontSize!==b&&(this._fontSize=b,this.domNode.style.fontSize=this._fontSize)}setFontStyle(a){this._fontStyle!==a&&(this._fontStyle=a,this.domNode.style.fontStyle=this._fontStyle)}setFontFeatureSettings(a){this._fontFeatureSettings!==a&&(this._fontFeatureSettings=a,this.domNode.style.fontFeatureSettings=this._fontFeatureSettings)}setFontVariationSettings(a){this._fontVariationSettings!==a&&(this._fontVariationSettings=a,this.domNode.style.fontVariationSettings=this._fontVariationSettings)}setTextDecoration(a){this._textDecoration!==a&&(this._textDecoration=a,this.domNode.style.textDecoration=this._textDecoration)}setLineHeight(a){let b=b4(a);this._lineHeight!==b&&(this._lineHeight=b,this.domNode.style.lineHeight=this._lineHeight)}setLetterSpacing(a){let b=b4(a);this._letterSpacing!==b&&(this._letterSpacing=b,this.domNode.style.letterSpacing=this._letterSpacing)}setClassName(a){this._className!==a&&(this._className=a,this.domNode.className=this._className)}toggleClassName(a,b){this.domNode.classList.toggle(a,b),this._className=this.domNode.className}setDisplay(a){this._display!==a&&(this._display=a,this.domNode.style.display=this._display)}setPosition(a){this._position!==a&&(this._position=a,this.domNode.style.position=this._position)}setVisibility(a){this._visibility!==a&&(this._visibility=a,this.domNode.style.visibility=this._visibility)}setColor(a){this._color!==a&&(this._color=a,this.domNode.style.color=this._color)}setBackgroundColor(a){this._backgroundColor!==a&&(this._backgroundColor=a,this.domNode.style.backgroundColor=this._backgroundColor)}setLayerHinting(a){this._layerHint!==a&&(this._layerHint=a,this.domNode.style.transform=this._layerHint?"translate3d(0px, 0px, 0px)":"")}setBoxShadow(a){this._boxShadow!==a&&(this._boxShadow=a,this.domNode.style.boxShadow=a)}setContain(a){this._contain!==a&&(this._contain=a,this.domNode.style.contain=this._contain)}setAttribute(a,b){this.domNode.setAttribute(a,b)}removeAttribute(a){this.domNode.removeAttribute(a)}appendChild(a){this.domNode.appendChild(a.domNode)}removeChild(a){this.domNode.removeChild(a.domNode)}};function b4(a){return"number"==typeof a?`${a}px`:a}function b5(a){return new b3(a)}var b6=class{constructor(){this._hooks=new aB,this._pointerMoveCallback=null,this._onStopCallback=null}dispose(){this.stopMonitoring(!1),this._hooks.dispose()}stopMonitoring(a,b){if(!this.isMonitoring())return;this._hooks.clear(),this._pointerMoveCallback=null;let c=this._onStopCallback;this._onStopCallback=null,a&&c&&c(b)}isMonitoring(){return!!this._pointerMoveCallback}startMonitoring(a,b,c,d,e){this.isMonitoring()&&this.stopMonitoring(!1),this._pointerMoveCallback=d,this._onStopCallback=e;let f=a;try{a.setPointerCapture(b),this._hooks.add(az(()=>{try{a.releasePointerCapture(b)}catch{}}))}catch{f=bO(a)}this._hooks.add(bZ(f,b2.POINTER_MOVE,a=>{a.buttons!==c?this.stopMonitoring(!0):(a.preventDefault(),this._pointerMoveCallback(a))})),this._hooks.add(bZ(f,b2.POINTER_UP,a=>this.stopMonitoring(!0)))}};(k=cA||={}).Tap="-xterm-gesturetap",k.Change="-xterm-gesturechange",k.Start="-xterm-gesturestart",k.End="-xterm-gesturesend",k.Contextmenu="-xterm-gesturecontextmenu";var b7=class a extends aC{constructor(){super(),this.dispatched=!1,this.targets=new aG,this.ignoreTargets=new aG,this.activeTouches={},this.handle=null,this._lastSetTapCountTime=0,this._register(aO.runAndSubscribe(bV,({window:a,disposables:b})=>{b.add(bZ(a.document,"touchstart",a=>this.onTouchStart(a),{passive:!1})),b.add(bZ(a.document,"touchend",b=>this.onTouchEnd(a,b))),b.add(bZ(a.document,"touchmove",a=>this.onTouchMove(a),{passive:!1}))},{window:aE,disposables:this._store}))}static addTarget(b){return a.isTouchDevice()?(a.INSTANCE||(a.INSTANCE=new a),az(a.INSTANCE.targets.push(b))):aC.None}static ignoreTarget(b){return a.isTouchDevice()?(a.INSTANCE||(a.INSTANCE=new a),az(a.INSTANCE.ignoreTargets.push(b))):aC.None}static isTouchDevice(){return"ontouchstart"in aE||navigator.maxTouchPoints>0}dispose(){this.handle&&(this.handle.dispose(),this.handle=null),super.dispose()}onTouchStart(a){let b=Date.now();this.handle&&(this.handle.dispose(),this.handle=null);for(let c=0,d=a.targetTouches.length;c<d;c++){let d=a.targetTouches.item(c);this.activeTouches[d.identifier]={id:d.identifier,initialTarget:d.target,initialTimeStamp:b,initialPageX:d.pageX,initialPageY:d.pageY,rollingTimestamps:[b],rollingPageX:[d.pageX],rollingPageY:[d.pageY]};let e=this.newGestureEvent(cA.Start,d.target);e.pageX=d.pageX,e.pageY=d.pageY,this.dispatchEvent(e)}this.dispatched&&(a.preventDefault(),a.stopPropagation(),this.dispatched=!1)}onTouchEnd(b,c){let d=Date.now(),e=Object.keys(this.activeTouches).length;for(let f=0,g=c.changedTouches.length;f<g;f++){let g=c.changedTouches.item(f);if(!this.activeTouches.hasOwnProperty(String(g.identifier))){console.warn("move of an UNKNOWN touch",g);continue}let h=this.activeTouches[g.identifier],i=Date.now()-h.initialTimeStamp;if(i<a.HOLD_DELAY&&30>Math.abs(h.initialPageX-au(h.rollingPageX))&&30>Math.abs(h.initialPageY-au(h.rollingPageY))){let a=this.newGestureEvent(cA.Tap,h.initialTarget);a.pageX=au(h.rollingPageX),a.pageY=au(h.rollingPageY),this.dispatchEvent(a)}else if(i>=a.HOLD_DELAY&&30>Math.abs(h.initialPageX-au(h.rollingPageX))&&30>Math.abs(h.initialPageY-au(h.rollingPageY))){let a=this.newGestureEvent(cA.Contextmenu,h.initialTarget);a.pageX=au(h.rollingPageX),a.pageY=au(h.rollingPageY),this.dispatchEvent(a)}else if(1===e){let a=au(h.rollingPageX),c=au(h.rollingPageY),e=au(h.rollingTimestamps)-h.rollingTimestamps[0],f=a-h.rollingPageX[0],g=c-h.rollingPageY[0],i=[...this.targets].filter(a=>h.initialTarget instanceof Node&&a.contains(h.initialTarget));this.inertia(b,i,d,Math.abs(f)/e,f>0?1:-1,a,Math.abs(g)/e,g>0?1:-1,c)}this.dispatchEvent(this.newGestureEvent(cA.End,h.initialTarget)),delete this.activeTouches[g.identifier]}this.dispatched&&(c.preventDefault(),c.stopPropagation(),this.dispatched=!1)}newGestureEvent(a,b){let c=document.createEvent("CustomEvent");return c.initEvent(a,!1,!0),c.initialTarget=b,c.tapCount=0,c}dispatchEvent(b){if(b.type===cA.Tap){let c=new Date().getTime(),d=0;d=c-this._lastSetTapCountTime>a.CLEAR_TAP_COUNT_TIME?1:2,this._lastSetTapCountTime=c,b.tapCount=d}else(b.type===cA.Change||b.type===cA.Contextmenu)&&(this._lastSetTapCountTime=0);if(b.initialTarget instanceof Node){for(let a of this.ignoreTargets)if(a.contains(b.initialTarget))return;let a=[];for(let c of this.targets)if(c.contains(b.initialTarget)){let d=0,e=b.initialTarget;for(;e&&e!==c;)d++,e=e.parentElement;a.push([d,c])}for(let[c,d]of(a.sort((a,b)=>a[0]-b[0]),a))d.dispatchEvent(b),this.dispatched=!0}}inertia(b,c,d,e,f,g,h,i,j){this.handle=cz(b,()=>{let k=Date.now(),l=k-d,m=0,n=0,o=!0;e+=a.SCROLL_FRICTION*l,h+=a.SCROLL_FRICTION*l,e>0&&(o=!1,m=f*e*l),h>0&&(o=!1,n=i*h*l);let p=this.newGestureEvent(cA.Change);p.translationX=m,p.translationY=n,c.forEach(a=>a.dispatchEvent(p)),o||this.inertia(b,c,k,e,f,g+m,h,i,j+n)})}onTouchMove(a){let b=Date.now();for(let c=0,d=a.changedTouches.length;c<d;c++){let d=a.changedTouches.item(c);if(!this.activeTouches.hasOwnProperty(String(d.identifier))){console.warn("end of an UNKNOWN touch",d);continue}let e=this.activeTouches[d.identifier],f=this.newGestureEvent(cA.Change,e.initialTarget);f.translationX=d.pageX-au(e.rollingPageX),f.translationY=d.pageY-au(e.rollingPageY),f.pageX=d.pageX,f.pageY=d.pageY,this.dispatchEvent(f),e.rollingPageX.length>3&&(e.rollingPageX.shift(),e.rollingPageY.shift(),e.rollingTimestamps.shift()),e.rollingPageX.push(d.pageX),e.rollingPageY.push(d.pageY),e.rollingTimestamps.push(b)}this.dispatched&&(a.preventDefault(),a.stopPropagation(),this.dispatched=!1)}};b7.SCROLL_FRICTION=-.005,b7.HOLD_DELAY=700,b7.CLEAR_TAP_COUNT_TIME=400,F([function(a,b,c){let d=null,e=null;if("function"==typeof c.value?(d="value",0!==(e=c.value).length&&console.warn("Memoize should only be used in functions with zero parameters")):"function"==typeof c.get&&(d="get",e=c.get),!e)throw Error("not supported");let f=`$memoize$${b}`;c[d]=function(...a){return this.hasOwnProperty(f)||Object.defineProperty(this,f,{configurable:!1,enumerable:!1,writable:!1,value:e.apply(this,a)}),this[f]}}],b7,"isTouchDevice",1);var b8=class extends aC{onclick(a,b){this._register(bZ(a,b2.CLICK,c=>b(new bE(bO(a),c))))}onmousedown(a,b){this._register(bZ(a,b2.MOUSE_DOWN,c=>b(new bE(bO(a),c))))}onmouseover(a,b){this._register(bZ(a,b2.MOUSE_OVER,c=>b(new bE(bO(a),c))))}onmouseleave(a,b){this._register(bZ(a,b2.MOUSE_LEAVE,c=>b(new bE(bO(a),c))))}onkeydown(a,b){this._register(bZ(a,b2.KEY_DOWN,a=>b(new bB(a))))}onkeyup(a,b){this._register(bZ(a,b2.KEY_UP,a=>b(new bB(a))))}oninput(a,b){this._register(bZ(a,b2.INPUT,b))}onblur(a,b){this._register(bZ(a,b2.BLUR,b))}onfocus(a,b){this._register(bZ(a,b2.FOCUS,b))}onchange(a,b){this._register(bZ(a,b2.CHANGE,b))}ignoreGesture(a){return b7.ignoreTarget(a)}},b9=class extends b8{constructor(a){super(),this._onActivate=a.onActivate,this.bgDomNode=document.createElement("div"),this.bgDomNode.className="arrow-background",this.bgDomNode.style.position="absolute",this.bgDomNode.style.width=a.bgWidth+"px",this.bgDomNode.style.height=a.bgHeight+"px","u">typeof a.top&&(this.bgDomNode.style.top="0px"),"u">typeof a.left&&(this.bgDomNode.style.left="0px"),"u">typeof a.bottom&&(this.bgDomNode.style.bottom="0px"),"u">typeof a.right&&(this.bgDomNode.style.right="0px"),this.domNode=document.createElement("div"),this.domNode.className=a.className,this.domNode.style.position="absolute",this.domNode.style.width="11px",this.domNode.style.height="11px","u">typeof a.top&&(this.domNode.style.top=a.top+"px"),"u">typeof a.left&&(this.domNode.style.left=a.left+"px"),"u">typeof a.bottom&&(this.domNode.style.bottom=a.bottom+"px"),"u">typeof a.right&&(this.domNode.style.right=a.right+"px"),this._pointerMoveMonitor=this._register(new b6),this._register(b$(this.bgDomNode,b2.POINTER_DOWN,a=>this._arrowPointerDown(a))),this._register(b$(this.domNode,b2.POINTER_DOWN,a=>this._arrowPointerDown(a))),this._pointerdownRepeatTimer=this._register(new b_),this._pointerdownScheduleRepeatTimer=this._register(new bI)}_arrowPointerDown(a){if(!a.target||!(a.target instanceof Element))return;let b=()=>{this._pointerdownRepeatTimer.cancelAndSet(()=>this._onActivate(),1e3/24,bO(a))};this._onActivate(),this._pointerdownRepeatTimer.cancel(),this._pointerdownScheduleRepeatTimer.cancelAndSet(b,200),this._pointerMoveMonitor.startMonitoring(a.target,a.pointerId,a.buttons,a=>{},()=>{this._pointerdownRepeatTimer.cancel(),this._pointerdownScheduleRepeatTimer.cancel()}),a.preventDefault()}},ca=class a{constructor(a,b,c,d,e,f,g){this._forceIntegerValues=a,this._scrollStateBrand=void 0,this._forceIntegerValues&&(b|=0,c|=0,d|=0,e|=0,f|=0,g|=0),this.rawScrollLeft=d,this.rawScrollTop=g,b<0&&(b=0),d+b>c&&(d=c-b),d<0&&(d=0),e<0&&(e=0),g+e>f&&(g=f-e),g<0&&(g=0),this.width=b,this.scrollWidth=c,this.scrollLeft=d,this.height=e,this.scrollHeight=f,this.scrollTop=g}equals(a){return this.rawScrollLeft===a.rawScrollLeft&&this.rawScrollTop===a.rawScrollTop&&this.width===a.width&&this.scrollWidth===a.scrollWidth&&this.scrollLeft===a.scrollLeft&&this.height===a.height&&this.scrollHeight===a.scrollHeight&&this.scrollTop===a.scrollTop}withScrollDimensions(b,c){return new a(this._forceIntegerValues,"u">typeof b.width?b.width:this.width,"u">typeof b.scrollWidth?b.scrollWidth:this.scrollWidth,c?this.rawScrollLeft:this.scrollLeft,"u">typeof b.height?b.height:this.height,"u">typeof b.scrollHeight?b.scrollHeight:this.scrollHeight,c?this.rawScrollTop:this.scrollTop)}withScrollPosition(b){return new a(this._forceIntegerValues,this.width,this.scrollWidth,"u">typeof b.scrollLeft?b.scrollLeft:this.rawScrollLeft,this.height,this.scrollHeight,"u">typeof b.scrollTop?b.scrollTop:this.rawScrollTop)}createScrollEvent(a,b){let c=this.width!==a.width,d=this.scrollWidth!==a.scrollWidth,e=this.scrollLeft!==a.scrollLeft,f=this.height!==a.height,g=this.scrollHeight!==a.scrollHeight,h=this.scrollTop!==a.scrollTop;return{inSmoothScrolling:b,oldWidth:a.width,oldScrollWidth:a.scrollWidth,oldScrollLeft:a.scrollLeft,width:this.width,scrollWidth:this.scrollWidth,scrollLeft:this.scrollLeft,oldHeight:a.height,oldScrollHeight:a.scrollHeight,oldScrollTop:a.scrollTop,height:this.height,scrollHeight:this.scrollHeight,scrollTop:this.scrollTop,widthChanged:c,scrollWidthChanged:d,scrollLeftChanged:e,heightChanged:f,scrollHeightChanged:g,scrollTopChanged:h}}},cb=class extends aC{constructor(a){super(),this._scrollableBrand=void 0,this._onScroll=this._register(new aV),this.onScroll=this._onScroll.event,this._smoothScrollDuration=a.smoothScrollDuration,this._scheduleAtNextAnimationFrame=a.scheduleAtNextAnimationFrame,this._state=new ca(a.forceIntegerValues,0,0,0,0,0,0),this._smoothScrolling=null}dispose(){this._smoothScrolling&&(this._smoothScrolling.dispose(),this._smoothScrolling=null),super.dispose()}setSmoothScrollDuration(a){this._smoothScrollDuration=a}validateScrollPosition(a){return this._state.withScrollPosition(a)}getScrollDimensions(){return this._state}setScrollDimensions(a,b){let c=this._state.withScrollDimensions(a,b);this._setState(c,!!this._smoothScrolling),this._smoothScrolling?.acceptScrollDimensions(this._state)}getFutureScrollPosition(){return this._smoothScrolling?this._smoothScrolling.to:this._state}getCurrentScrollPosition(){return this._state}setScrollPositionNow(a){let b=this._state.withScrollPosition(a);this._smoothScrolling&&(this._smoothScrolling.dispose(),this._smoothScrolling=null),this._setState(b,!1)}setScrollPositionSmooth(a,b){if(0===this._smoothScrollDuration)return this.setScrollPositionNow(a);if(this._smoothScrolling){let c;a={scrollLeft:typeof a.scrollLeft>"u"?this._smoothScrolling.to.scrollLeft:a.scrollLeft,scrollTop:typeof a.scrollTop>"u"?this._smoothScrolling.to.scrollTop:a.scrollTop};let d=this._state.withScrollPosition(a);if(this._smoothScrolling.to.scrollLeft===d.scrollLeft&&this._smoothScrolling.to.scrollTop===d.scrollTop)return;c=b?new ce(this._smoothScrolling.from,d,this._smoothScrolling.startTime,this._smoothScrolling.duration):this._smoothScrolling.combine(this._state,d,this._smoothScrollDuration),this._smoothScrolling.dispose(),this._smoothScrolling=c}else{let b=this._state.withScrollPosition(a);this._smoothScrolling=ce.start(this._state,b,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 a=this._smoothScrolling.tick(),b=this._state.withScrollPosition(a);if(this._setState(b,!0),this._smoothScrolling){if(a.isDone){this._smoothScrolling.dispose(),this._smoothScrolling=null;return}this._smoothScrolling.animationFrameDisposable=this._scheduleAtNextAnimationFrame(()=>{this._smoothScrolling&&(this._smoothScrolling.animationFrameDisposable=null,this._performSmoothScrolling())})}}_setState(a,b){let c=this._state;c.equals(a)||(this._state=a,this._onScroll.fire(this._state.createScrollEvent(c,b)))}},cc=class{constructor(a,b,c){this.scrollLeft=a,this.scrollTop=b,this.isDone=c}};function cd(a,b){let c=b-a;return function(b){return a+c*(1-Math.pow(1-b,3))}}var ce=class a{constructor(a,b,c,d){this.from=a,this.to=b,this.duration=d,this.startTime=c,this.animationFrameDisposable=null,this._initAnimations()}_initAnimations(){this.scrollLeft=this._initAnimation(this.from.scrollLeft,this.to.scrollLeft,this.to.width),this.scrollTop=this._initAnimation(this.from.scrollTop,this.to.scrollTop,this.to.height)}_initAnimation(a,b,c){if(Math.abs(a-b)>2.5*c){var d,e;let f,g;return a<b?(f=a+.75*c,g=b-.75*c):(f=a-.75*c,g=b+.75*c),d=cd(a,f),e=cd(g,b),function(a){return a<.33?d(a/.33):e((a-.33)/(1-.33))}}return cd(a,b)}dispose(){null!==this.animationFrameDisposable&&(this.animationFrameDisposable.dispose(),this.animationFrameDisposable=null)}acceptScrollDimensions(a){this.to=a.withScrollPosition(this.to),this._initAnimations()}tick(){return this._tick(Date.now())}_tick(a){let b=(a-this.startTime)/this.duration;return b<1?new cc(this.scrollLeft(b),this.scrollTop(b),!1):new cc(this.to.scrollLeft,this.to.scrollTop,!0)}combine(b,c,d){return a.start(b,c,d)}static start(b,c,d){return d+=10,new a(b,c,Date.now()-10,d)}},cf=class extends aC{constructor(a,b,c){super(),this._visibility=a,this._visibleClassName=b,this._invisibleClassName=c,this._domNode=null,this._isVisible=!1,this._isNeeded=!1,this._rawShouldBeVisible=!1,this._shouldBeVisible=!1,this._revealTimer=this._register(new bI)}setVisibility(a){this._visibility!==a&&(this._visibility=a,this._updateShouldBeVisible())}setShouldBeVisible(a){this._rawShouldBeVisible=a,this._updateShouldBeVisible()}_applyVisibilitySetting(){return 2!==this._visibility&&(3===this._visibility||this._rawShouldBeVisible)}_updateShouldBeVisible(){let a=this._applyVisibilitySetting();this._shouldBeVisible!==a&&(this._shouldBeVisible=a,this.ensureVisibility())}setIsNeeded(a){this._isNeeded!==a&&(this._isNeeded=a,this.ensureVisibility())}setDomNode(a){this._domNode=a,this._domNode.setClassName(this._invisibleClassName),this.setShouldBeVisible(!1)}ensureVisibility(){this._isNeeded?this._shouldBeVisible?this._reveal():this._hide(!0):this._hide(!1)}_reveal(){this._isVisible||(this._isVisible=!0,this._revealTimer.setIfNotSet(()=>{this._domNode?.setClassName(this._visibleClassName)},0))}_hide(a){this._revealTimer.cancel(),this._isVisible&&(this._isVisible=!1,this._domNode?.setClassName(this._invisibleClassName+(a?" fade":"")))}},cg=class extends b8{constructor(a){super(),this._lazyRender=a.lazyRender,this._host=a.host,this._scrollable=a.scrollable,this._scrollByPage=a.scrollByPage,this._scrollbarState=a.scrollbarState,this._visibilityController=this._register(new cf(a.visibility,"visible scrollbar "+a.extraScrollbarClassName,"invisible scrollbar "+a.extraScrollbarClassName)),this._visibilityController.setIsNeeded(this._scrollbarState.isNeeded()),this._pointerMoveMonitor=this._register(new b6),this._shouldRender=!0,this.domNode=b5(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(bZ(this.domNode.domNode,b2.POINTER_DOWN,a=>this._domNodePointerDown(a)))}_createArrow(a){let b=this._register(new b9(a));this.domNode.domNode.appendChild(b.bgDomNode),this.domNode.domNode.appendChild(b.domNode)}_createSlider(a,b,c,d){this.slider=b5(document.createElement("div")),this.slider.setClassName("slider"),this.slider.setPosition("absolute"),this.slider.setTop(a),this.slider.setLeft(b),"number"==typeof c&&this.slider.setWidth(c),"number"==typeof d&&this.slider.setHeight(d),this.slider.setLayerHinting(!0),this.slider.setContain("strict"),this.domNode.domNode.appendChild(this.slider.domNode),this._register(bZ(this.slider.domNode,b2.POINTER_DOWN,a=>{0===a.button&&(a.preventDefault(),this._sliderPointerDown(a))})),this.onclick(this.slider.domNode,a=>{a.leftButton&&a.stopPropagation()})}_onElementSize(a){return this._scrollbarState.setVisibleSize(a)&&(this._visibilityController.setIsNeeded(this._scrollbarState.isNeeded()),this._shouldRender=!0,this._lazyRender||this.render()),this._shouldRender}_onElementScrollSize(a){return this._scrollbarState.setScrollSize(a)&&(this._visibilityController.setIsNeeded(this._scrollbarState.isNeeded()),this._shouldRender=!0,this._lazyRender||this.render()),this._shouldRender}_onElementScrollPosition(a){return this._scrollbarState.setScrollPosition(a)&&(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(a){a.target===this.domNode.domNode&&this._onPointerDown(a)}delegatePointerDown(a){let b=this.domNode.domNode.getClientRects()[0].top,c=b+this._scrollbarState.getSliderPosition(),d=b+this._scrollbarState.getSliderPosition()+this._scrollbarState.getSliderSize(),e=this._sliderPointerPosition(a);c<=e&&e<=d?0===a.button&&(a.preventDefault(),this._sliderPointerDown(a)):this._onPointerDown(a)}_onPointerDown(a){let b,c;if(a.target===this.domNode.domNode&&"number"==typeof a.offsetX&&"number"==typeof a.offsetY)b=a.offsetX,c=a.offsetY;else{var d;let e,f,g=(e=(d=this.domNode.domNode).getBoundingClientRect(),f=bO(d),{left:e.left+f.scrollX,top:e.top+f.scrollY,width:e.width,height:e.height});b=a.pageX-g.left,c=a.pageY-g.top}let e=this._pointerDownRelativePosition(b,c);this._setDesiredScrollPositionNow(this._scrollByPage?this._scrollbarState.getDesiredScrollPositionFromOffsetPaged(e):this._scrollbarState.getDesiredScrollPositionFromOffset(e)),0===a.button&&(a.preventDefault(),this._sliderPointerDown(a))}_sliderPointerDown(a){if(!a.target||!(a.target instanceof Element))return;let b=this._sliderPointerPosition(a),c=this._sliderOrthogonalPointerPosition(a),d=this._scrollbarState.clone();this.slider.toggleClassName("active",!0),this._pointerMoveMonitor.startMonitoring(a.target,a.pointerId,a.buttons,a=>{let e=Math.abs(this._sliderOrthogonalPointerPosition(a)-c);if(bd&&e>140)return void this._setDesiredScrollPositionNow(d.getScrollPosition());let f=this._sliderPointerPosition(a)-b;this._setDesiredScrollPositionNow(d.getDesiredScrollPositionFromDelta(f))},()=>{this.slider.toggleClassName("active",!1),this._host.onDragEnd()}),this._host.onDragStart()}_setDesiredScrollPositionNow(a){let b={};this.writeScrollPosition(b,a),this._scrollable.setScrollPositionNow(b)}updateScrollbarSize(a){this._updateScrollbarSize(a),this._scrollbarState.setScrollbarSize(a),this._shouldRender=!0,this._lazyRender||this.render()}isNeeded(){return this._scrollbarState.isNeeded()}},ch=class a{constructor(a,b,c,d,e,f){this._scrollbarSize=Math.round(b),this._oppositeScrollbarSize=Math.round(c),this._arrowSize=Math.round(a),this._visibleSize=d,this._scrollSize=e,this._scrollPosition=f,this._computedAvailableSize=0,this._computedIsNeeded=!1,this._computedSliderSize=0,this._computedSliderRatio=0,this._computedSliderPosition=0,this._refreshComputedValues()}clone(){return new a(this._arrowSize,this._scrollbarSize,this._oppositeScrollbarSize,this._visibleSize,this._scrollSize,this._scrollPosition)}setVisibleSize(a){let b=Math.round(a);return this._visibleSize!==b&&(this._visibleSize=b,this._refreshComputedValues(),!0)}setScrollSize(a){let b=Math.round(a);return this._scrollSize!==b&&(this._scrollSize=b,this._refreshComputedValues(),!0)}setScrollPosition(a){let b=Math.round(a);return this._scrollPosition!==b&&(this._scrollPosition=b,this._refreshComputedValues(),!0)}setScrollbarSize(a){this._scrollbarSize=Math.round(a)}setOppositeScrollbarSize(a){this._oppositeScrollbarSize=Math.round(a)}static _computeValues(a,b,c,d,e){let f=Math.max(0,c-a),g=Math.max(0,f-2*b),h=d>0&&d>c;if(!h)return{computedAvailableSize:Math.round(f),computedIsNeeded:h,computedSliderSize:Math.round(g),computedSliderRatio:0,computedSliderPosition:0};let i=Math.round(Math.max(20,Math.floor(c*g/d))),j=(g-i)/(d-c);return{computedAvailableSize:Math.round(f),computedIsNeeded:h,computedSliderSize:Math.round(i),computedSliderRatio:j,computedSliderPosition:Math.round(e*j)}}_refreshComputedValues(){let b=a._computeValues(this._oppositeScrollbarSize,this._arrowSize,this._visibleSize,this._scrollSize,this._scrollPosition);this._computedAvailableSize=b.computedAvailableSize,this._computedIsNeeded=b.computedIsNeeded,this._computedSliderSize=b.computedSliderSize,this._computedSliderRatio=b.computedSliderRatio,this._computedSliderPosition=b.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(a){return this._computedIsNeeded?Math.round((a-this._arrowSize-this._computedSliderSize/2)/this._computedSliderRatio):0}getDesiredScrollPositionFromOffsetPaged(a){if(!this._computedIsNeeded)return 0;let b=a-this._arrowSize,c=this._scrollPosition;return b<this._computedSliderPosition?c-=this._visibleSize:c+=this._visibleSize,c}getDesiredScrollPositionFromDelta(a){return this._computedIsNeeded?Math.round((this._computedSliderPosition+a)/this._computedSliderRatio):0}},ci=class extends cg{constructor(a,b,c){let d=a.getScrollDimensions(),e=a.getCurrentScrollPosition();if(super({lazyRender:b.lazyRender,host:c,scrollbarState:new ch(b.horizontalHasArrows?b.arrowSize:0,2===b.horizontal?0:b.horizontalScrollbarSize,2===b.vertical?0:b.verticalScrollbarSize,d.width,d.scrollWidth,e.scrollLeft),visibility:b.horizontal,extraScrollbarClassName:"horizontal",scrollable:a,scrollByPage:b.scrollByPage}),b.horizontalHasArrows)throw Error("horizontalHasArrows is not supported in xterm.js");this._createSlider(Math.floor((b.horizontalScrollbarSize-b.horizontalSliderSize)/2),0,void 0,b.horizontalSliderSize)}_updateSlider(a,b){this.slider.setWidth(a),this.slider.setLeft(b)}_renderDomNode(a,b){this.domNode.setWidth(a),this.domNode.setHeight(b),this.domNode.setLeft(0),this.domNode.setBottom(0)}onDidScroll(a){return this._shouldRender=this._onElementScrollSize(a.scrollWidth)||this._shouldRender,this._shouldRender=this._onElementScrollPosition(a.scrollLeft)||this._shouldRender,this._shouldRender=this._onElementSize(a.width)||this._shouldRender,this._shouldRender}_pointerDownRelativePosition(a,b){return a}_sliderPointerPosition(a){return a.pageX}_sliderOrthogonalPointerPosition(a){return a.pageY}_updateScrollbarSize(a){this.slider.setHeight(a)}writeScrollPosition(a,b){a.scrollLeft=b}updateOptions(a){this.updateScrollbarSize(2===a.horizontal?0:a.horizontalScrollbarSize),this._scrollbarState.setOppositeScrollbarSize(2===a.vertical?0:a.verticalScrollbarSize),this._visibilityController.setVisibility(a.horizontal),this._scrollByPage=a.scrollByPage}},cj=class extends cg{constructor(a,b,c){let d=a.getScrollDimensions(),e=a.getCurrentScrollPosition();if(super({lazyRender:b.lazyRender,host:c,scrollbarState:new ch(b.verticalHasArrows?b.arrowSize:0,2===b.vertical?0:b.verticalScrollbarSize,0,d.height,d.scrollHeight,e.scrollTop),visibility:b.vertical,extraScrollbarClassName:"vertical",scrollable:a,scrollByPage:b.scrollByPage}),b.verticalHasArrows)throw Error("horizontalHasArrows is not supported in xterm.js");this._createSlider(0,Math.floor((b.verticalScrollbarSize-b.verticalSliderSize)/2),b.verticalSliderSize,void 0)}_updateSlider(a,b){this.slider.setHeight(a),this.slider.setTop(b)}_renderDomNode(a,b){this.domNode.setWidth(b),this.domNode.setHeight(a),this.domNode.setRight(0),this.domNode.setTop(0)}onDidScroll(a){return this._shouldRender=this._onElementScrollSize(a.scrollHeight)||this._shouldRender,this._shouldRender=this._onElementScrollPosition(a.scrollTop)||this._shouldRender,this._shouldRender=this._onElementSize(a.height)||this._shouldRender,this._shouldRender}_pointerDownRelativePosition(a,b){return b}_sliderPointerPosition(a){return a.pageY}_sliderOrthogonalPointerPosition(a){return a.pageX}_updateScrollbarSize(a){this.slider.setWidth(a)}writeScrollPosition(a,b){a.scrollTop=b}updateOptions(a){this.updateScrollbarSize(2===a.vertical?0:a.verticalScrollbarSize),this._scrollbarState.setOppositeScrollbarSize(0),this._visibilityController.setVisibility(a.vertical),this._scrollByPage=a.scrollByPage}},ck=class{constructor(a,b,c){this.timestamp=a,this.deltaX=b,this.deltaY=c,this.score=0}},cl=class{constructor(){this._capacity=5,this._memory=[],this._front=-1,this._rear=-1}isPhysicalMouseWheel(){if(-1===this._front&&-1===this._rear)return!1;let a=1,b=0,c=1,d=this._rear;for(;;){let e=d===this._front?a:Math.pow(2,-c);if(a-=e,b+=this._memory[d].score*e,d===this._front)break;d=(this._capacity+d-1)%this._capacity,c++}return b<=.5}acceptStandardWheelEvent(a){if(a_){var b;let c=(b=bO(a.browserEvent),aX.INSTANCE.getZoomFactor(b));this.accept(Date.now(),a.deltaX*c,a.deltaY*c)}else this.accept(Date.now(),a.deltaX,a.deltaY)}accept(a,b,c){let d=null,e=new ck(a,b,c);-1===this._front&&-1===this._rear?(this._memory[0]=e,this._front=0,this._rear=0):(d=this._memory[this._rear],this._rear=(this._rear+1)%this._capacity,this._rear===this._front&&(this._front=(this._front+1)%this._capacity),this._memory[this._rear]=e),e.score=this._computeScore(e,d)}_computeScore(a,b){if(Math.abs(a.deltaX)>0&&Math.abs(a.deltaY)>0)return 1;let c=.5;if(this._isAlmostInt(a.deltaX)&&this._isAlmostInt(a.deltaY)||(c+=.25),b){let d=Math.abs(a.deltaX),e=Math.abs(a.deltaY),f=Math.abs(b.deltaX),g=Math.abs(b.deltaY),h=Math.max(Math.min(d,f),1),i=Math.max(Math.min(e,g),1),j=Math.max(e,g);Math.max(d,f)%h==0&&j%i==0&&(c-=.5)}return Math.min(Math.max(c,0),1)}_isAlmostInt(a){return .01>Math.abs(Math.round(a)-a)}};cl.INSTANCE=new cl;var cm=class extends b8{constructor(a,b,c){super(),this._onScroll=this._register(new aV),this.onScroll=this._onScroll.event,this._onWillScroll=this._register(new aV),this.onWillScroll=this._onWillScroll.event,this._options=function(a){let b={lazyRender:"u">typeof a.lazyRender&&a.lazyRender,className:"u">typeof a.className?a.className:"",useShadows:!("u">typeof a.useShadows)||a.useShadows,handleMouseWheel:!("u">typeof a.handleMouseWheel)||a.handleMouseWheel,flipAxes:"u">typeof a.flipAxes&&a.flipAxes,consumeMouseWheelIfScrollbarIsNeeded:"u">typeof a.consumeMouseWheelIfScrollbarIsNeeded&&a.consumeMouseWheelIfScrollbarIsNeeded,alwaysConsumeMouseWheel:"u">typeof a.alwaysConsumeMouseWheel&&a.alwaysConsumeMouseWheel,scrollYToX:"u">typeof a.scrollYToX&&a.scrollYToX,mouseWheelScrollSensitivity:"u">typeof a.mouseWheelScrollSensitivity?a.mouseWheelScrollSensitivity:1,fastScrollSensitivity:"u">typeof a.fastScrollSensitivity?a.fastScrollSensitivity:5,scrollPredominantAxis:!("u">typeof a.scrollPredominantAxis)||a.scrollPredominantAxis,mouseWheelSmoothScroll:!("u">typeof a.mouseWheelSmoothScroll)||a.mouseWheelSmoothScroll,arrowSize:"u">typeof a.arrowSize?a.arrowSize:11,listenOnDomNode:"u">typeof a.listenOnDomNode?a.listenOnDomNode:null,horizontal:"u">typeof a.horizontal?a.horizontal:1,horizontalScrollbarSize:"u">typeof a.horizontalScrollbarSize?a.horizontalScrollbarSize:10,horizontalSliderSize:"u">typeof a.horizontalSliderSize?a.horizontalSliderSize:0,horizontalHasArrows:"u">typeof a.horizontalHasArrows&&a.horizontalHasArrows,vertical:"u">typeof a.vertical?a.vertical:1,verticalScrollbarSize:"u">typeof a.verticalScrollbarSize?a.verticalScrollbarSize:10,verticalHasArrows:"u">typeof a.verticalHasArrows&&a.verticalHasArrows,verticalSliderSize:"u">typeof a.verticalSliderSize?a.verticalSliderSize:0,scrollByPage:"u">typeof a.scrollByPage&&a.scrollByPage};return b.horizontalSliderSize="u">typeof a.horizontalSliderSize?a.horizontalSliderSize:b.horizontalScrollbarSize,b.verticalSliderSize="u">typeof a.verticalSliderSize?a.verticalSliderSize:b.verticalScrollbarSize,be&&(b.className+=" mac"),b}(b),this._scrollable=c,this._register(this._scrollable.onScroll(a=>{this._onWillScroll.fire(a),this._onDidScroll(a),this._onScroll.fire(a)}));let d={onMouseWheel:a=>this._onMouseWheel(a),onDragStart:()=>this._onDragStart(),onDragEnd:()=>this._onDragEnd()};this._verticalScrollbar=this._register(new cj(this._scrollable,this._options,d)),this._horizontalScrollbar=this._register(new ci(this._scrollable,this._options,d)),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(a),this._domNode.appendChild(this._horizontalScrollbar.domNode.domNode),this._domNode.appendChild(this._verticalScrollbar.domNode.domNode),this._options.useShadows?(this._leftShadowDomNode=b5(document.createElement("div")),this._leftShadowDomNode.setClassName("shadow"),this._domNode.appendChild(this._leftShadowDomNode.domNode),this._topShadowDomNode=b5(document.createElement("div")),this._topShadowDomNode.setClassName("shadow"),this._domNode.appendChild(this._topShadowDomNode.domNode),this._topLeftShadowDomNode=b5(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,a=>this._onMouseOver(a)),this.onmouseleave(this._listenOnDomNode,a=>this._onMouseLeave(a)),this._hideTimeout=this._register(new bI),this._isDragging=!1,this._mouseIsOver=!1,this._shouldRender=!0,this._revealOnScroll=!0}get options(){return this._options}dispose(){this._mouseWheelToDispose=ay(this._mouseWheelToDispose),super.dispose()}getDomNode(){return this._domNode}getOverviewRulerLayoutInfo(){return{parent:this._domNode,insertBefore:this._verticalScrollbar.domNode.domNode}}delegateVerticalScrollbarPointerDown(a){this._verticalScrollbar.delegatePointerDown(a)}getScrollDimensions(){return this._scrollable.getScrollDimensions()}setScrollDimensions(a){this._scrollable.setScrollDimensions(a,!1)}updateClassName(a){this._options.className=a,be&&(this._options.className+=" mac"),this._domNode.className="xterm-scrollable-element "+this._options.className}updateOptions(a){"u">typeof a.handleMouseWheel&&(this._options.handleMouseWheel=a.handleMouseWheel,this._setListeningToMouseWheel(this._options.handleMouseWheel)),"u">typeof a.mouseWheelScrollSensitivity&&(this._options.mouseWheelScrollSensitivity=a.mouseWheelScrollSensitivity),"u">typeof a.fastScrollSensitivity&&(this._options.fastScrollSensitivity=a.fastScrollSensitivity),"u">typeof a.scrollPredominantAxis&&(this._options.scrollPredominantAxis=a.scrollPredominantAxis),"u">typeof a.horizontal&&(this._options.horizontal=a.horizontal),"u">typeof a.vertical&&(this._options.vertical=a.vertical),"u">typeof a.horizontalScrollbarSize&&(this._options.horizontalScrollbarSize=a.horizontalScrollbarSize),"u">typeof a.verticalScrollbarSize&&(this._options.verticalScrollbarSize=a.verticalScrollbarSize),"u">typeof a.scrollByPage&&(this._options.scrollByPage=a.scrollByPage),this._horizontalScrollbar.updateOptions(this._options),this._verticalScrollbar.updateOptions(this._options),this._options.lazyRender||this._render()}setRevealOnScroll(a){this._revealOnScroll=a}delegateScrollFromMouseWheelEvent(a){this._onMouseWheel(new bF(a))}_setListeningToMouseWheel(a){if(this._mouseWheelToDispose.length>0!==a&&(this._mouseWheelToDispose=ay(this._mouseWheelToDispose),a)){let a=a=>{this._onMouseWheel(new bF(a))};this._mouseWheelToDispose.push(bZ(this._listenOnDomNode,b2.MOUSE_WHEEL,a,{passive:!1}))}}_onMouseWheel(a){if(a.browserEvent?.defaultPrevented)return;let b=cl.INSTANCE;b.acceptStandardWheelEvent(a);let c=!1;if(a.deltaY||a.deltaX){let d=a.deltaY*this._options.mouseWheelScrollSensitivity,e=a.deltaX*this._options.mouseWheelScrollSensitivity;this._options.scrollPredominantAxis&&(this._options.scrollYToX&&e+d===0?e=d=0:Math.abs(d)>=Math.abs(e)?e=0:d=0),this._options.flipAxes&&([d,e]=[e,d]);let f=!be&&a.browserEvent&&a.browserEvent.shiftKey;(this._options.scrollYToX||f)&&!e&&(e=d,d=0),a.browserEvent&&a.browserEvent.altKey&&(e*=this._options.fastScrollSensitivity,d*=this._options.fastScrollSensitivity);let g=this._scrollable.getFutureScrollPosition(),h={};if(d){let a=50*d,b=g.scrollTop-(a<0?Math.floor(a):Math.ceil(a));this._verticalScrollbar.writeScrollPosition(h,b)}if(e){let a=50*e,b=g.scrollLeft-(a<0?Math.floor(a):Math.ceil(a));this._horizontalScrollbar.writeScrollPosition(h,b)}h=this._scrollable.validateScrollPosition(h),(g.scrollLeft!==h.scrollLeft||g.scrollTop!==h.scrollTop)&&(this._options.mouseWheelSmoothScroll&&b.isPhysicalMouseWheel()?this._scrollable.setScrollPositionSmooth(h):this._scrollable.setScrollPositionNow(h),c=!0)}let d=c;!d&&this._options.alwaysConsumeMouseWheel&&(d=!0),!d&&this._options.consumeMouseWheelIfScrollbarIsNeeded&&(this._verticalScrollbar.isNeeded()||this._horizontalScrollbar.isNeeded())&&(d=!0),d&&(a.preventDefault(),a.stopPropagation())}_onDidScroll(a){this._shouldRender=this._horizontalScrollbar.onDidScroll(a)||this._shouldRender,this._shouldRender=this._verticalScrollbar.onDidScroll(a)||this._shouldRender,this._options.useShadows&&(this._shouldRender=!0),this._revealOnScroll&&this._reveal(),this._options.lazyRender||this._render()}renderNow(){if(!this._options.lazyRender)throw 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 a=this._scrollable.getCurrentScrollPosition(),b=a.scrollTop>0,c=a.scrollLeft>0,d=c?" left":"",e=b?" top":"";this._leftShadowDomNode.setClassName(`shadow${d}`),this._topShadowDomNode.setClassName(`shadow${e}`),this._topLeftShadowDomNode.setClassName(`shadow${c||b?" top-left-corner":""}${e}${d}`)}}_onDragStart(){this._isDragging=!0,this._reveal()}_onDragEnd(){this._isDragging=!1,this._hide()}_onMouseLeave(a){this._mouseIsOver=!1,this._hide()}_onMouseOver(a){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(),500)}},cn=class extends cm{constructor(a,b,c){super(a,b,c)}setScrollPosition(a){a.reuseAnimation?this._scrollable.setScrollPositionSmooth(a,a.reuseAnimation):this._scrollable.setScrollPositionNow(a)}getScrollPosition(){return this._scrollable.getCurrentScrollPosition()}},co=class extends aC{constructor(a,b,c,d,e,f,g,h){super(),this._bufferService=c,this._optionsService=g,this._renderService=h,this._onRequestScrollLines=this._register(new aV),this.onRequestScrollLines=this._onRequestScrollLines.event,this._isSyncing=!1,this._isHandlingScroll=!1,this._suppressOnScrollHandler=!1;let i=this._register(new cb({forceIntegerValues:!1,smoothScrollDuration:this._optionsService.rawOptions.smoothScrollDuration,scheduleAtNextAnimationFrame:a=>cz(d.window,a)}));this._register(this._optionsService.onSpecificOptionChange("smoothScrollDuration",()=>{i.setSmoothScrollDuration(this._optionsService.rawOptions.smoothScrollDuration)})),this._scrollableElement=this._register(new cn(b,{vertical:1,horizontal:2,useShadows:!1,mouseWheelSmoothScroll:!0,...this._getChangeOptions()},i)),this._register(this._optionsService.onMultipleOptionChange(["scrollSensitivity","fastScrollSensitivity","overviewRuler"],()=>this._scrollableElement.updateOptions(this._getChangeOptions()))),this._register(e.onProtocolChange(a=>{this._scrollableElement.updateOptions({handleMouseWheel:!(16&a)})})),this._scrollableElement.setScrollDimensions({height:0,scrollHeight:0}),this._register(aO.runAndSubscribe(f.onChangeColors,()=>{this._scrollableElement.getDomNode().style.backgroundColor=f.colors.background.css})),a.appendChild(this._scrollableElement.getDomNode()),this._register(az(()=>this._scrollableElement.getDomNode().remove())),this._styleElement=d.mainDocument.createElement("style"),b.appendChild(this._styleElement),this._register(az(()=>this._styleElement.remove())),this._register(aO.runAndSubscribe(f.onChangeColors,()=>{this._styleElement.textContent=[".xterm .xterm-scrollable-element > .scrollbar > .slider {",` background: ${f.colors.scrollbarSliderBackground.css};`,"}",".xterm .xterm-scrollable-element > .scrollbar > .slider:hover {",` background: ${f.colors.scrollbarSliderHoverBackground.css};`,"}",".xterm .xterm-scrollable-element > .scrollbar > .slider.active {",` background: ${f.colors.scrollbarSliderActiveBackground.css};`,"}"].join(`
|
|
25
|
-
`)})),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(a=>this._handleScroll(a)))}scrollLines(a){let b=this._scrollableElement.getScrollPosition();this._scrollableElement.setScrollPosition({reuseAnimation:!0,scrollTop:b.scrollTop+a*this._renderService.dimensions.css.cell.height})}scrollToLine(a,b){b&&(this._latestYDisp=a),this._scrollableElement.setScrollPosition({reuseAnimation:!b,scrollTop:a*this._renderService.dimensions.css.cell.height})}_getChangeOptions(){return{mouseWheelScrollSensitivity:this._optionsService.rawOptions.scrollSensitivity,fastScrollSensitivity:this._optionsService.rawOptions.fastScrollSensitivity,verticalScrollbarSize:this._optionsService.rawOptions.overviewRuler?.width||14}}queueSync(a){void 0!==a&&(this._latestYDisp=a),void 0===this._queuedAnimationFrame&&(this._queuedAnimationFrame=this._renderService.addRefreshCallback(()=>{this._queuedAnimationFrame=void 0,this._sync(this._latestYDisp)}))}_sync(a=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,a!==this._latestYDisp&&this._scrollableElement.setScrollPosition({scrollTop:a*this._renderService.dimensions.css.cell.height}),this._isSyncing=!1)}_handleScroll(a){if(!this._renderService||this._isHandlingScroll||this._suppressOnScrollHandler)return;this._isHandlingScroll=!0;let b=Math.round(a.scrollTop/this._renderService.dimensions.css.cell.height),c=b-this._bufferService.buffer.ydisp;0!==c&&(this._latestYDisp=b,this._onRequestScrollLines.fire(c)),this._isHandlingScroll=!1}};co=F([G(2,X),G(3,ah),G(4,Y),G(5,am),G(6,ab),G(7,aj)],co);var cp=class extends aC{constructor(a,b,c,d,e){super(),this._screenElement=a,this._bufferService=b,this._coreBrowserService=c,this._decorationService=d,this._renderService=e,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(a=>this._removeDecoration(a))),this._register(az(()=>{this._container.remove(),this._decorationElements.clear()}))}_queueRefresh(){void 0===this._animationFrame&&(this._animationFrame=this._renderService.addRefreshCallback(()=>{this._doRefreshDecorations(),this._animationFrame=void 0}))}_doRefreshDecorations(){for(let a of this._decorationService.decorations)this._renderDecoration(a);this._dimensionsChanged=!1}_renderDecoration(a){this._refreshStyle(a),this._dimensionsChanged&&this._refreshXPosition(a)}_createElement(a){let b=this._coreBrowserService.mainDocument.createElement("div");b.classList.add("xterm-decoration"),b.classList.toggle("xterm-decoration-top-layer",a?.options?.layer==="top"),b.style.width=`${Math.round((a.options.width||1)*this._renderService.dimensions.css.cell.width)}px`,b.style.height=`${(a.options.height||1)*this._renderService.dimensions.css.cell.height}px`,b.style.top=`${(a.marker.line-this._bufferService.buffers.active.ydisp)*this._renderService.dimensions.css.cell.height}px`,b.style.lineHeight=`${this._renderService.dimensions.css.cell.height}px`;let c=a.options.x??0;return c&&c>this._bufferService.cols&&(b.style.display="none"),this._refreshXPosition(a,b),b}_refreshStyle(a){let b=a.marker.line-this._bufferService.buffers.active.ydisp;if(b<0||b>=this._bufferService.rows)a.element&&(a.element.style.display="none",a.onRenderEmitter.fire(a.element));else{let c=this._decorationElements.get(a);c||(c=this._createElement(a),a.element=c,this._decorationElements.set(a,c),this._container.appendChild(c),a.onDispose(()=>{this._decorationElements.delete(a),c.remove()})),c.style.display=this._altBufferIsActive?"none":"block",this._altBufferIsActive||(c.style.width=`${Math.round((a.options.width||1)*this._renderService.dimensions.css.cell.width)}px`,c.style.height=`${(a.options.height||1)*this._renderService.dimensions.css.cell.height}px`,c.style.top=`${b*this._renderService.dimensions.css.cell.height}px`,c.style.lineHeight=`${this._renderService.dimensions.css.cell.height}px`),a.onRenderEmitter.fire(c)}}_refreshXPosition(a,b=a.element){if(!b)return;let c=a.options.x??0;"right"===(a.options.anchor||"left")?b.style.right=c?`${c*this._renderService.dimensions.css.cell.width}px`:"":b.style.left=c?`${c*this._renderService.dimensions.css.cell.width}px`:""}_removeDecoration(a){this._decorationElements.get(a)?.remove(),this._decorationElements.delete(a),a.dispose()}};cp=F([G(1,X),G(2,ah),G(3,ae),G(4,aj)],cp);var cq=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(a){if(a.options.overviewRulerOptions){for(let b of this._zones)if(b.color===a.options.overviewRulerOptions.color&&b.position===a.options.overviewRulerOptions.position){if(this._lineIntersectsZone(b,a.marker.line))return;if(this._lineAdjacentToZone(b,a.marker.line,a.options.overviewRulerOptions.position))return void this._addLineToZone(b,a.marker.line)}if(this._zonePoolIndex<this._zonePool.length){this._zonePool[this._zonePoolIndex].color=a.options.overviewRulerOptions.color,this._zonePool[this._zonePoolIndex].position=a.options.overviewRulerOptions.position,this._zonePool[this._zonePoolIndex].startBufferLine=a.marker.line,this._zonePool[this._zonePoolIndex].endBufferLine=a.marker.line,this._zones.push(this._zonePool[this._zonePoolIndex++]);return}this._zones.push({color:a.options.overviewRulerOptions.color,position:a.options.overviewRulerOptions.position,startBufferLine:a.marker.line,endBufferLine:a.marker.line}),this._zonePool.push(this._zones[this._zones.length-1]),this._zonePoolIndex++}}setPadding(a){this._linePadding=a}_lineIntersectsZone(a,b){return b>=a.startBufferLine&&b<=a.endBufferLine}_lineAdjacentToZone(a,b,c){return b>=a.startBufferLine-this._linePadding[c||"full"]&&b<=a.endBufferLine+this._linePadding[c||"full"]}_addLineToZone(a,b){a.startBufferLine=Math.min(a.startBufferLine,b),a.endBufferLine=Math.max(a.endBufferLine,b)}},cr={full:0,left:0,center:0,right:0},cs={full:0,left:0,center:0,right:0},ct={full:0,left:0,center:0,right:0},cu=class extends aC{constructor(a,b,c,d,e,f,g,h){super(),this._viewportElement=a,this._screenElement=b,this._bufferService=c,this._decorationService=d,this._renderService=e,this._optionsService=f,this._themeService=g,this._coreBrowserService=h,this._colorZoneStore=new cq,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(),this._viewportElement.parentElement?.insertBefore(this._canvas,this._viewportElement),this._register(az(()=>this._canvas?.remove()));let i=this._canvas.getContext("2d");if(i)this._ctx=i;else throw 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(){return this._optionsService.options.overviewRuler?.width||0}_refreshDrawConstants(){let a=Math.floor((this._canvas.width-1)/3),b=Math.ceil((this._canvas.width-1)/3);cs.full=this._canvas.width,cs.left=a,cs.center=b,cs.right=a,this._refreshDrawHeightConstants(),ct.full=1,ct.left=1,ct.center=1+cs.left,ct.right=1+cs.left+cs.center}_refreshDrawHeightConstants(){cr.full=Math.round(2*this._coreBrowserService.dpr);let a=Math.round(Math.max(Math.min(this._canvas.height/this._bufferService.buffer.lines.length,12),6)*this._coreBrowserService.dpr);cr.left=a,cr.center=a,cr.right=a}_refreshColorZonePadding(){this._colorZoneStore.setPadding({full:Math.floor(this._bufferService.buffers.active.lines.length/(this._canvas.height-1)*cr.full),left:Math.floor(this._bufferService.buffers.active.lines.length/(this._canvas.height-1)*cr.left),center:Math.floor(this._bufferService.buffers.active.lines.length/(this._canvas.height-1)*cr.center),right:Math.floor(this._bufferService.buffers.active.lines.length/(this._canvas.height-1)*cr.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(){for(let a of(this._shouldUpdateDimensions&&this._refreshCanvasDimensions(),this._ctx.clearRect(0,0,this._canvas.width,this._canvas.height),this._colorZoneStore.clear(),this._decorationService.decorations))this._colorZoneStore.addDecoration(a);this._ctx.lineWidth=1,this._renderRulerOutline();let a=this._colorZoneStore.zones;for(let b of a)"full"!==b.position&&this._renderColorZone(b);for(let b of a)"full"===b.position&&this._renderColorZone(b);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(a){this._ctx.fillStyle=a.color,this._ctx.fillRect(ct[a.position||"full"],Math.round((this._canvas.height-1)*(a.startBufferLine/this._bufferService.buffers.active.lines.length)-cr[a.position||"full"]/2),cs[a.position||"full"],Math.round((this._canvas.height-1)*((a.endBufferLine-a.startBufferLine)/this._bufferService.buffers.active.lines.length)+cr[a.position||"full"]))}_queueRefresh(a,b){this._shouldUpdateDimensions=a||this._shouldUpdateDimensions,this._shouldUpdateAnchor=b||this._shouldUpdateAnchor,void 0===this._animationFrame&&(this._animationFrame=this._coreBrowserService.window.requestAnimationFrame(()=>{this._refreshDecorations(),this._animationFrame=void 0}))}};cu=F([G(2,X),G(3,ae),G(4,aj),G(5,ab),G(6,am),G(7,ah)],cu),(l=cB||={}).NUL="\0",l.SOH="\x01",l.STX="\x02",l.ETX="\x03",l.EOT="\x04",l.ENQ="\x05",l.ACK="\x06",l.BEL="\x07",l.BS="\b",l.HT=" ",l.LF=`
|
|
26
|
-
`,l.VT="\v",l.FF="\f",l.CR="\r",l.SO="\x0e",l.SI="\x0f",l.DLE="\x10",l.DC1="\x11",l.DC2="\x12",l.DC3="\x13",l.DC4="\x14",l.NAK="\x15",l.SYN="\x16",l.ETB="\x17",l.CAN="\x18",l.EM="\x19",l.SUB="\x1a",l.ESC="\x1b",l.FS="\x1c",l.GS="\x1d",l.RS="\x1e",l.US="\x1f",l.SP=" ",l.DEL="",(m=cC||={}).PAD="",m.HOP="",m.BPH="",m.NBH="",m.IND="",m.NEL="
",m.SSA="",m.ESA="",m.HTS="",m.HTJ="",m.VTS="",m.PLD="",m.PLU="",m.RI="",m.SS2="",m.SS3="",m.DCS="",m.PU1="",m.PU2="",m.STS="",m.CCH="",m.MW="",m.SPA="",m.EPA="",m.SOS="",m.SGCI="",m.SCI="",m.CSI="",m.ST="",m.OSC="",m.PM="",m.APC="",(cD||={}).ST=`${cB.ESC}\\`;var cv=class{constructor(a,b,c,d,e,f){this._textarea=a,this._compositionView=b,this._bufferService=c,this._optionsService=d,this._coreService=e,this._renderService=f,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(a){this._compositionView.textContent=a.data,this.updateCompositionElements(),setTimeout(()=>{this._compositionPosition.end=this._textarea.value.length},0)}compositionend(){this._finalizeComposition(!0)}keydown(a){if(this._isComposing||this._isSendingComposition){if(20===a.keyCode||229===a.keyCode||16===a.keyCode||17===a.keyCode||18===a.keyCode)return!1;this._finalizeComposition(!1)}return 229!==a.keyCode||(this._handleAnyTextareaChanges(),!1)}_finalizeComposition(a){if(this._compositionView.classList.remove("active"),this._isComposing=!1,a){let a={start:this._compositionPosition.start,end:this._compositionPosition.end};this._isSendingComposition=!0,setTimeout(()=>{if(this._isSendingComposition){let b;this._isSendingComposition=!1,a.start+=this._dataAlreadySent.length,(b=this._isComposing?this._textarea.value.substring(a.start,this._compositionPosition.start):this._textarea.value.substring(a.start)).length>0&&this._coreService.triggerDataEvent(b,!0)}},0)}else{this._isSendingComposition=!1;let a=this._textarea.value.substring(this._compositionPosition.start,this._compositionPosition.end);this._coreService.triggerDataEvent(a,!0)}}_handleAnyTextareaChanges(){let a=this._textarea.value;setTimeout(()=>{if(!this._isComposing){let b=this._textarea.value,c=b.replace(a,"");this._dataAlreadySent=c,b.length>a.length?this._coreService.triggerDataEvent(c,!0):b.length<a.length?this._coreService.triggerDataEvent(`${cB.DEL}`,!0):b.length===a.length&&b!==a&&this._coreService.triggerDataEvent(b,!0)}},0)}updateCompositionElements(a){if(this._isComposing){if(this._bufferService.buffer.isCursorInViewport){let a=Math.min(this._bufferService.buffer.x,this._bufferService.cols-1),b=this._renderService.dimensions.css.cell.height,c=this._bufferService.buffer.y*this._renderService.dimensions.css.cell.height,d=a*this._renderService.dimensions.css.cell.width;this._compositionView.style.left=d+"px",this._compositionView.style.top=c+"px",this._compositionView.style.height=b+"px",this._compositionView.style.lineHeight=b+"px",this._compositionView.style.fontFamily=this._optionsService.rawOptions.fontFamily,this._compositionView.style.fontSize=this._optionsService.rawOptions.fontSize+"px";let e=this._compositionView.getBoundingClientRect();this._textarea.style.left=d+"px",this._textarea.style.top=c+"px",this._textarea.style.width=Math.max(e.width,1)+"px",this._textarea.style.height=Math.max(e.height,1)+"px",this._textarea.style.lineHeight=e.height+"px"}a||setTimeout(()=>this.updateCompositionElements(!0),0)}}};cv=F([G(2,X),G(3,ab),G(4,Z),G(5,aj)],cv);var cw,cx,cy,cz,cA,cB,cC,cD,cE,cF=0,cG=0,cH=0,cI=0,cJ={css:"#00000000",rgba:0};(el=cE||={}).toCss=function(a,b,c,d){return void 0!==d?`#${cR(a)}${cR(b)}${cR(c)}${cR(d)}`:`#${cR(a)}${cR(b)}${cR(c)}`},el.toRgba=function(a,b,c,d=255){return(a<<24|b<<16|c<<8|d)>>>0},el.toColor=function(a,b,c,d){return{css:el.toCss(a,b,c,d),rgba:el.toRgba(a,b,c,d)}};var cK=em||={};function cL(a,b){return cI=Math.round(255*b),[cF,cG,cH]=ep.toChannels(a.rgba),{css:cE.toCss(cF,cG,cH,cI),rgba:cE.toRgba(cF,cG,cH,cI)}}cK.blend=function(a,b){if(1==(cI=(255&b.rgba)/255))return{css:b.css,rgba:b.rgba};let c=b.rgba>>24&255,d=b.rgba>>16&255,e=b.rgba>>8&255,f=a.rgba>>24&255,g=a.rgba>>16&255,h=a.rgba>>8&255;return cF=f+Math.round((c-f)*cI),cG=g+Math.round((d-g)*cI),cH=h+Math.round((e-h)*cI),{css:cE.toCss(cF,cG,cH),rgba:cE.toRgba(cF,cG,cH)}},cK.isOpaque=function(a){return(255&a.rgba)==255},cK.ensureContrastRatio=function(a,b,c){let d=ep.ensureContrastRatio(a.rgba,b.rgba,c);if(d)return cE.toColor(d>>24&255,d>>16&255,d>>8&255)},cK.opaque=function(a){let b=(255|a.rgba)>>>0;return[cF,cG,cH]=ep.toChannels(b),{css:cE.toCss(cF,cG,cH),rgba:b}},cK.opacity=cL,cK.multiplyOpacity=function(a,b){return cI=255&a.rgba,cL(a,cI*b/255)},cK.toColorRGB=function(a){return[a.rgba>>24&255,a.rgba>>16&255,a.rgba>>8&255]},(a=>{let b,c;try{let a=document.createElement("canvas");a.width=1,a.height=1;let d=a.getContext("2d",{willReadFrequently:!0});d&&((b=d).globalCompositeOperation="copy",c=b.createLinearGradient(0,0,1,1))}catch{}a.toColor=function(a){if(a.match(/#[\da-f]{3,8}/i))switch(a.length){case 4:return cF=parseInt(a.slice(1,2).repeat(2),16),cG=parseInt(a.slice(2,3).repeat(2),16),cH=parseInt(a.slice(3,4).repeat(2),16),cE.toColor(cF,cG,cH);case 5:return cF=parseInt(a.slice(1,2).repeat(2),16),cG=parseInt(a.slice(2,3).repeat(2),16),cH=parseInt(a.slice(3,4).repeat(2),16),cI=parseInt(a.slice(4,5).repeat(2),16),cE.toColor(cF,cG,cH,cI);case 7:return{css:a,rgba:(parseInt(a.slice(1),16)<<8|255)>>>0};case 9:return{css:a,rgba:parseInt(a.slice(1),16)>>>0}}let d=a.match(/rgba?\(\s*(\d{1,3})\s*,\s*(\d{1,3})\s*,\s*(\d{1,3})\s*(,\s*(0|1|\d?\.(\d+))\s*)?\)/);if(d)return cF=parseInt(d[1]),cG=parseInt(d[2]),cH=parseInt(d[3]),cI=Math.round((void 0===d[5]?1:parseFloat(d[5]))*255),cE.toColor(cF,cG,cH,cI);if(!b||!c||(b.fillStyle=c,b.fillStyle=a,"string"!=typeof b.fillStyle)||(b.fillRect(0,0,1,1),[cF,cG,cH,cI]=b.getImageData(0,0,1,1).data,255!==cI))throw Error("css.toColor: Unsupported css format");return{rgba:cE.toRgba(cF,cG,cH,cI),css:a}}})(en||={});var cM=eo||={};function cN(a,b,c){let d=a/255,e=b/255,f=c/255;return .2126*(d<=.03928?d/12.92:Math.pow((d+.055)/1.055,2.4))+.7152*(e<=.03928?e/12.92:Math.pow((e+.055)/1.055,2.4))+.0722*(f<=.03928?f/12.92:Math.pow((f+.055)/1.055,2.4))}cM.relativeLuminance=function(a){return cN(a>>16&255,a>>8&255,255&a)},cM.relativeLuminance2=cN;var cO=ep||={};function cP(a,b,c){let d=a>>24&255,e=a>>16&255,f=a>>8&255,g=b>>24&255,h=b>>16&255,i=b>>8&255,j=cS(eo.relativeLuminance2(g,h,i),eo.relativeLuminance2(d,e,f));for(;j<c&&(g>0||h>0||i>0);)g-=Math.max(0,Math.ceil(.1*g)),h-=Math.max(0,Math.ceil(.1*h)),i-=Math.max(0,Math.ceil(.1*i)),j=cS(eo.relativeLuminance2(g,h,i),eo.relativeLuminance2(d,e,f));return(g<<24|h<<16|i<<8|255)>>>0}function cQ(a,b,c){let d=a>>24&255,e=a>>16&255,f=a>>8&255,g=b>>24&255,h=b>>16&255,i=b>>8&255,j=cS(eo.relativeLuminance2(g,h,i),eo.relativeLuminance2(d,e,f));for(;j<c&&(g<255||h<255||i<255);)g=Math.min(255,g+Math.ceil((255-g)*.1)),h=Math.min(255,h+Math.ceil((255-h)*.1)),i=Math.min(255,i+Math.ceil((255-i)*.1)),j=cS(eo.relativeLuminance2(g,h,i),eo.relativeLuminance2(d,e,f));return(g<<24|h<<16|i<<8|255)>>>0}function cR(a){let b=a.toString(16);return b.length<2?"0"+b:b}function cS(a,b){return a<b?(b+.05)/(a+.05):(a+.05)/(b+.05)}cO.blend=function(a,b){if(1==(cI=(255&b)/255))return b;let c=a>>24&255,d=a>>16&255,e=a>>8&255;return cF=c+Math.round(((b>>24&255)-c)*cI),cG=d+Math.round(((b>>16&255)-d)*cI),cH=e+Math.round(((b>>8&255)-e)*cI),cE.toRgba(cF,cG,cH)},cO.ensureContrastRatio=function(a,b,c){let d=eo.relativeLuminance(a>>8),e=eo.relativeLuminance(b>>8);if(cS(d,e)<c){if(e<d){let e=cP(a,b,c),f=cS(d,eo.relativeLuminance(e>>8));if(f<c){let g=cQ(a,b,c);return f>cS(d,eo.relativeLuminance(g>>8))?e:g}return e}let f=cQ(a,b,c),g=cS(d,eo.relativeLuminance(f>>8));if(g<c){let e=cP(a,b,c);return g>cS(d,eo.relativeLuminance(e>>8))?f:e}return f}},cO.reduceLuminance=cP,cO.increaseLuminance=cQ,cO.toChannels=function(a){return[a>>24&255,a>>16&255,a>>8&255,255&a]};var cT=class extends Q{constructor(a,b,c){super(),this.content=0,this.combinedData="",this.fg=a.fg,this.bg=a.bg,this.combinedData=b,this._width=c}isCombined(){return 2097152}getWidth(){return this._width}getChars(){return this.combinedData}getCode(){return 2097151}setFromCharData(a){throw Error("not implemented")}getAsCharData(){return[this.fg,this.getChars(),this.getWidth(),this.getCode()]}},cU=class{constructor(a){this._bufferService=a,this._characterJoiners=[],this._nextCharacterJoinerId=0,this._workCell=new S}register(a){let b={id:this._nextCharacterJoinerId++,handler:a};return this._characterJoiners.push(b),b.id}deregister(a){for(let b=0;b<this._characterJoiners.length;b++)if(this._characterJoiners[b].id===a)return this._characterJoiners.splice(b,1),!0;return!1}getJoinedCharacters(a){if(0===this._characterJoiners.length)return[];let b=this._bufferService.buffer.lines.get(a);if(!b||0===b.length)return[];let c=[],d=b.translateToString(!0),e=0,f=0,g=0,h=b.getFg(0),i=b.getBg(0);for(let a=0;a<b.getTrimmedLength();a++)if(b.loadCell(a,this._workCell),0!==this._workCell.getWidth()){if(this._workCell.fg!==h||this._workCell.bg!==i){if(a-e>1){let a=this._getJoinedRanges(d,g,f,b,e);for(let b=0;b<a.length;b++)c.push(a[b])}e=a,g=f,h=this._workCell.fg,i=this._workCell.bg}f+=this._workCell.getChars().length||1}if(this._bufferService.cols-e>1){let a=this._getJoinedRanges(d,g,f,b,e);for(let b=0;b<a.length;b++)c.push(a[b])}return c}_getJoinedRanges(a,b,c,d,e){let f=a.substring(b,c),g=[];try{g=this._characterJoiners[0].handler(f)}catch(a){console.error(a)}for(let a=1;a<this._characterJoiners.length;a++)try{let b=this._characterJoiners[a].handler(f);for(let a=0;a<b.length;a++)cU._mergeRanges(g,b[a])}catch(a){console.error(a)}return this._stringRangesToCellRanges(g,d,e),g}_stringRangesToCellRanges(a,b,c){let d=0,e=!1,f=0,g=a[0];if(g){for(let h=c;h<this._bufferService.cols;h++){let c=b.getWidth(h),i=b.getString(h).length||1;if(0!==c){if(!e&&g[0]<=f&&(g[0]=h,e=!0),g[1]<=f){if(g[1]=h,!(g=a[++d]))break;g[0]<=f?(g[0]=h,e=!0):e=!1}f+=i}}g&&(g[1]=this._bufferService.cols)}}static _mergeRanges(a,b){let c=!1;for(let d=0;d<a.length;d++){let e=a[d];if(c){if(b[1]<=e[0])return a[d-1][1]=b[1],a;if(b[1]<=e[1])return a[d-1][1]=Math.max(b[1],e[1]),a.splice(d,1),a;a.splice(d,1),d--}else{if(b[1]<=e[0])return a.splice(d,0,b),a;if(b[1]<=e[1])return e[0]=Math.min(b[0],e[0]),a;b[0]<e[1]&&(e[0]=Math.min(b[0],e[0]),c=!0);continue}}return c?a[a.length-1][1]=b[1]:a.push(b),a}};function cV(){return{width:0,height:0}}cU=F([G(0,X)],cU);var cW=class{constructor(a,b,c,d,e,f,g){this._document=a,this._characterJoinerService=b,this._optionsService=c,this._coreBrowserService=d,this._coreService=e,this._decorationService=f,this._themeService=g,this._workCell=new S,this._columnSelectMode=!1,this.defaultSpacing=0}handleSelectionChanged(a,b,c){this._selectionStart=a,this._selectionEnd=b,this._columnSelectMode=c}createRow(a,b,c,d,e,f,g,h,i,j,k){let l=[],m=this._characterJoinerService.getJoinedCharacters(b),n=this._themeService.colors,o=a.getNoBgTrimmedLength();c&&o<f+1&&(o=f+1);let p,q=0,r="",s=0,u=0,v=0,w=0,x=!1,y=0,z=!1,A=0,B=0,C=[],D=-1!==j&&-1!==k;for(let E=0;E<o;E++){let o;a.loadCell(E,this._workCell);let F=this._workCell.getWidth();if(0===F)continue;let G=!1,H=E>=B,I=E,J=this._workCell;if(m.length>0&&E===m[0][0]&&H){let d=m.shift(),e=this._isCellInSelection(d[0],b);for(s=d[0]+1;s<d[1];s++)H&&=e===this._isCellInSelection(s,b);(H&&=!c||f<d[0]||f>=d[1])?(G=!0,J=new cT(this._workCell,a.translateToString(!0,d[0],d[1]),d[1]-d[0]),I=d[1]-1,F=J.getWidth()):B=d[1]}let K=this._isCellInSelection(E,b),L=c&&E===f,M=D&&E>=j&&E<=k,N=!1;this._decorationService.forEachDecorationAtCell(E,b,void 0,a=>{N=!0});let O=J.getChars()||" ";if(" "===O&&(J.isUnderline()||J.isOverline())&&(O=" "),A=F*h-i.get(O,J.isBold(),J.isItalic()),p)if(q&&(K&&z||!K&&!z&&J.bg===u)&&(K&&z&&n.selectionForeground||J.fg===v)&&J.extended.ext===w&&M===x&&A===y&&!L&&!G&&!N&&H){J.isInvisible()?r+=" ":r+=O,q++;continue}else q&&(p.textContent=r),p=this._document.createElement("span"),q=0,r="";else p=this._document.createElement("span");if(u=J.bg,v=J.fg,w=J.extended.ext,x=M,y=A,z=K,G&&f>=E&&f<=I&&(f=E),!this._coreService.isCursorHidden&&L&&this._coreService.isCursorInitialized){if(C.push("xterm-cursor"),this._coreBrowserService.isFocused)g&&C.push("xterm-cursor-blink"),C.push("bar"===d?"xterm-cursor-bar":"underline"===d?"xterm-cursor-underline":"xterm-cursor-block");else if(e)switch(e){case"outline":C.push("xterm-cursor-outline");break;case"block":C.push("xterm-cursor-block");break;case"bar":C.push("xterm-cursor-bar");break;case"underline":C.push("xterm-cursor-underline")}}if(J.isBold()&&C.push("xterm-bold"),J.isItalic()&&C.push("xterm-italic"),J.isDim()&&C.push("xterm-dim"),r=J.isInvisible()?" ":J.getChars()||" ",J.isUnderline()&&(C.push(`xterm-underline-${J.extended.underlineStyle}`)," "===r&&(r=" "),!J.isUnderlineColorDefault()))if(J.isUnderlineColorRGB())p.style.textDecorationColor=`rgb(${Q.toColorRGB(J.getUnderlineColor()).join(",")})`;else{let a=J.getUnderlineColor();this._optionsService.rawOptions.drawBoldTextInBrightColors&&J.isBold()&&a<8&&(a+=8),p.style.textDecorationColor=n.ansi[a].css}J.isOverline()&&(C.push("xterm-overline")," "===r&&(r=" ")),J.isStrikethrough()&&C.push("xterm-strikethrough"),M&&(p.style.textDecoration="underline");let P=J.getFgColor(),R=J.getFgColorMode(),S=J.getBgColor(),T=J.getBgColorMode(),U=!!J.isInverse();if(U){let a=P;P=S,S=a;let b=R;R=T,T=b}let V,W,X=!1;switch(this._decorationService.forEachDecorationAtCell(E,b,void 0,a=>{"top"!==a.options.layer&&X||(a.backgroundColorRGB&&(T=0x3000000,S=a.backgroundColorRGB.rgba>>8&0xffffff,V=a.backgroundColorRGB),a.foregroundColorRGB&&(R=0x3000000,P=a.foregroundColorRGB.rgba>>8&0xffffff,W=a.foregroundColorRGB),X="top"===a.options.layer)}),!X&&K&&(S=(V=this._coreBrowserService.isFocused?n.selectionBackgroundOpaque:n.selectionInactiveBackgroundOpaque).rgba>>8&0xffffff,T=0x3000000,X=!0,n.selectionForeground&&(R=0x3000000,P=n.selectionForeground.rgba>>8&0xffffff,W=n.selectionForeground)),X&&C.push("xterm-decoration-top"),T){case 0x1000000:case 0x2000000:o=n.ansi[S],C.push(`xterm-bg-${S}`);break;case 0x3000000:o=cE.toColor(S>>16,S>>8&255,255&S),this._addStyle(p,`background-color:#${cX((S>>>0).toString(16),"0",6)}`);break;default:U?(o=n.foreground,C.push("xterm-bg-257")):o=n.background}switch(V||J.isDim()&&(V=em.multiplyOpacity(o,.5)),R){case 0x1000000:case 0x2000000:J.isBold()&&P<8&&this._optionsService.rawOptions.drawBoldTextInBrightColors&&(P+=8),this._applyMinimumContrast(p,o,n.ansi[P],J,V,void 0)||C.push(`xterm-fg-${P}`);break;case 0x3000000:let Y=cE.toColor(P>>16&255,P>>8&255,255&P);this._applyMinimumContrast(p,o,Y,J,V,W)||this._addStyle(p,`color:#${cX(P.toString(16),"0",6)}`);break;default:this._applyMinimumContrast(p,o,n.foreground,J,V,W)||U&&C.push("xterm-fg-257")}C.length&&(p.className=C.join(" "),C.length=0),L||G||N||!H?p.textContent=r:q++,A!==this.defaultSpacing&&(p.style.letterSpacing=`${A}px`),l.push(p),E=I}return p&&q&&(p.textContent=r),l}_applyMinimumContrast(a,b,c,d,e,f){var g,h,i;if(1===this._optionsService.rawOptions.minimumContrastRatio||57508<=(h=g=d.getCode())&&h<=57558||9472<=(i=g)&&i<=9631)return!1;let j=this._getContrastCache(d),k;if(e||f||(k=j.getColor(b.rgba,c.rgba)),void 0===k){let a=this._optionsService.rawOptions.minimumContrastRatio/(d.isDim()?2:1);k=em.ensureContrastRatio(e||b,f||c,a),j.setColor((e||b).rgba,(f||c).rgba,k??null)}return!!k&&(this._addStyle(a,`color:${k.css}`),!0)}_getContrastCache(a){return a.isDim()?this._themeService.colors.halfContrastCache:this._themeService.colors.contrastCache}_addStyle(a,b){a.setAttribute("style",`${a.getAttribute("style")||""}${b};`)}_isCellInSelection(a,b){let c=this._selectionStart,d=this._selectionEnd;return!!c&&!!d&&(this._columnSelectMode?c[0]<=d[0]?a>=c[0]&&b>=c[1]&&a<d[0]&&b<=d[1]:a<c[0]&&b>=c[1]&&a>=d[0]&&b<=d[1]:b>c[1]&&b<d[1]||c[1]===d[1]&&b===c[1]&&a>=c[0]&&a<d[0]||c[1]<d[1]&&b===d[1]&&a<d[0]||c[1]<d[1]&&b===c[1]&&a>=c[0])}};function cX(a,b,c){for(;a.length<c;)a=b+a;return a}cW=F([G(1,al),G(2,ab),G(3,ah),G(4,Z),G(5,ae),G(6,am)],cW);var cY=class{constructor(a,b){this._flat=new Float32Array(256),this._font="",this._fontSize=0,this._weight="normal",this._weightBold="bold",this._measureElements=[],this._container=a.createElement("div"),this._container.classList.add("xterm-width-cache-measure-container"),this._container.setAttribute("aria-hidden","true"),this._container.style.whiteSpace="pre",this._container.style.fontKerning="none";let c=a.createElement("span");c.classList.add("xterm-char-measure-element");let d=a.createElement("span");d.classList.add("xterm-char-measure-element"),d.style.fontWeight="bold";let e=a.createElement("span");e.classList.add("xterm-char-measure-element"),e.style.fontStyle="italic";let f=a.createElement("span");f.classList.add("xterm-char-measure-element"),f.style.fontWeight="bold",f.style.fontStyle="italic",this._measureElements=[c,d,e,f],this._container.appendChild(c),this._container.appendChild(d),this._container.appendChild(e),this._container.appendChild(f),b.appendChild(this._container),this.clear()}dispose(){this._container.remove(),this._measureElements.length=0,this._holey=void 0}clear(){this._flat.fill(-9999),this._holey=new Map}setFont(a,b,c,d){a===this._font&&b===this._fontSize&&c===this._weight&&d===this._weightBold||(this._font=a,this._fontSize=b,this._weight=c,this._weightBold=d,this._container.style.fontFamily=this._font,this._container.style.fontSize=`${this._fontSize}px`,this._measureElements[0].style.fontWeight=`${c}`,this._measureElements[1].style.fontWeight=`${d}`,this._measureElements[2].style.fontWeight=`${c}`,this._measureElements[3].style.fontWeight=`${d}`,this.clear())}get(a,b,c){let d=0;if(!b&&!c&&1===a.length&&(d=a.charCodeAt(0))<256){if(-9999!==this._flat[d])return this._flat[d];let b=this._measure(a,0);return b>0&&(this._flat[d]=b),b}let e=a;b&&(e+="B"),c&&(e+="I");let f=this._holey.get(e);if(void 0===f){let d=0;b&&(d|=1),c&&(d|=2),(f=this._measure(a,d))>0&&this._holey.set(e,f)}return f}_measure(a,b){let c=this._measureElements[b];return c.textContent=a.repeat(32),c.offsetWidth/32}},cZ=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(a,b,c,d=!1){if(this.selectionStart=b,this.selectionEnd=c,!b||!c||b[0]===c[0]&&b[1]===c[1])return void this.clear();let e=a.buffers.active.ydisp,f=b[1]-e,g=c[1]-e,h=Math.max(f,0),i=Math.min(g,a.rows-1);h>=a.rows||i<0?this.clear():(this.hasSelection=!0,this.columnSelectMode=d,this.viewportStartRow=f,this.viewportEndRow=g,this.viewportCappedStartRow=h,this.viewportCappedEndRow=i,this.startCol=b[0],this.endCol=c[0])}isCellSelected(a,b,c){return!!this.hasSelection&&(c-=a.buffer.active.viewportY,this.columnSelectMode?this.startCol<=this.endCol?b>=this.startCol&&c>=this.viewportCappedStartRow&&b<this.endCol&&c<=this.viewportCappedEndRow:b<this.startCol&&c>=this.viewportCappedStartRow&&b>=this.endCol&&c<=this.viewportCappedEndRow:c>this.viewportStartRow&&c<this.viewportEndRow||this.viewportStartRow===this.viewportEndRow&&c===this.viewportStartRow&&b>=this.startCol&&b<this.endCol||this.viewportStartRow<this.viewportEndRow&&c===this.viewportEndRow&&b<this.endCol||this.viewportStartRow<this.viewportEndRow&&c===this.viewportStartRow&&b>=this.startCol)}},c$="xterm-dom-renderer-owner-",c_="xterm-rows",c0="xterm-fg-",c1="xterm-bg-",c2="xterm-focus",c3="xterm-selection",c4=1,c5=class extends aC{constructor(a,b,c,d,e,f,g,h,i,j,k,l,m,n){super(),this._terminal=a,this._document=b,this._element=c,this._screenElement=d,this._viewportElement=e,this._helperContainer=f,this._linkifier2=g,this._charSizeService=i,this._optionsService=j,this._bufferService=k,this._coreService=l,this._coreBrowserService=m,this._themeService=n,this._terminalClass=c4++,this._rowElements=[],this._selectionRenderModel=new cZ,this.onRequestRedraw=this._register(new aV).event,this._rowContainer=this._document.createElement("div"),this._rowContainer.classList.add(c_),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(c3),this._selectionContainer.setAttribute("aria-hidden","true"),this.dimensions={css:{canvas:cV(),cell:cV()},device:{canvas:cV(),cell:cV(),char:{width:0,height:0,left:0,top:0}}},this._updateDimensions(),this._register(this._optionsService.onOptionChange(()=>this._handleOptionsChanged())),this._register(this._themeService.onChangeColors(a=>this._injectCss(a))),this._injectCss(this._themeService.colors),this._rowFactory=h.createInstance(cW,document),this._element.classList.add(c$+this._terminalClass),this._screenElement.appendChild(this._rowContainer),this._screenElement.appendChild(this._selectionContainer),this._register(this._linkifier2.onShowLinkUnderline(a=>this._handleLinkHover(a))),this._register(this._linkifier2.onHideLinkUnderline(a=>this._handleLinkLeave(a))),this._register(az(()=>{this._element.classList.remove(c$+this._terminalClass),this._rowContainer.remove(),this._selectionContainer.remove(),this._widthCache.dispose(),this._themeStyleElement.remove(),this._dimensionsStyleElement.remove()})),this._widthCache=new cY(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 a=this._coreBrowserService.dpr;for(let b of(this.dimensions.device.char.width=this._charSizeService.width*a,this.dimensions.device.char.height=Math.ceil(this._charSizeService.height*a),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/a),this.dimensions.css.canvas.height=Math.round(this.dimensions.device.canvas.height/a),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,this._rowElements))b.style.width=`${this.dimensions.css.canvas.width}px`,b.style.height=`${this.dimensions.css.cell.height}px`,b.style.lineHeight=`${this.dimensions.css.cell.height}px`,b.style.overflow="hidden";this._dimensionsStyleElement||(this._dimensionsStyleElement=this._document.createElement("style"),this._screenElement.appendChild(this._dimensionsStyleElement));let b=`${this._terminalSelector} .${c_} span { display: inline-block; height: 100%; vertical-align: top;}`;this._dimensionsStyleElement.textContent=b,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(a){this._themeStyleElement||(this._themeStyleElement=this._document.createElement("style"),this._screenElement.appendChild(this._themeStyleElement));let b=`${this._terminalSelector} .${c_} { pointer-events: none; color: ${a.foreground.css}; font-family: ${this._optionsService.rawOptions.fontFamily}; font-size: ${this._optionsService.rawOptions.fontSize}px; font-kerning: none; white-space: pre}`;b+=`${this._terminalSelector} .${c_} .xterm-dim { color: ${em.multiplyOpacity(a.foreground,.5).css};}${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 c=`blink_underline_${this._terminalClass}`,d=`blink_bar_${this._terminalClass}`,e=`blink_block_${this._terminalClass}`;for(let[f,g]of(b+=`@keyframes ${c} { 50% { border-bottom-style: hidden; }}@keyframes ${d} { 50% { box-shadow: none; }}@keyframes ${e} { 0% { background-color: ${a.cursor.css}; color: ${a.cursorAccent.css}; } 50% { background-color: inherit; color: ${a.cursor.css}; }}${this._terminalSelector} .${c_}.${c2} .xterm-cursor.xterm-cursor-blink.xterm-cursor-underline { animation: ${c} 1s step-end infinite;}${this._terminalSelector} .${c_}.${c2} .xterm-cursor.xterm-cursor-blink.xterm-cursor-bar { animation: ${d} 1s step-end infinite;}${this._terminalSelector} .${c_}.${c2} .xterm-cursor.xterm-cursor-blink.xterm-cursor-block { animation: ${e} 1s step-end infinite;}${this._terminalSelector} .${c_} .xterm-cursor.xterm-cursor-block { background-color: ${a.cursor.css}; color: ${a.cursorAccent.css};}${this._terminalSelector} .${c_} .xterm-cursor.xterm-cursor-block:not(.xterm-cursor-blink) { background-color: ${a.cursor.css} !important; color: ${a.cursorAccent.css} !important;}${this._terminalSelector} .${c_} .xterm-cursor.xterm-cursor-outline { outline: 1px solid ${a.cursor.css}; outline-offset: -1px;}${this._terminalSelector} .${c_} .xterm-cursor.xterm-cursor-bar { box-shadow: ${this._optionsService.rawOptions.cursorWidth}px 0 0 ${a.cursor.css} inset;}${this._terminalSelector} .${c_} .xterm-cursor.xterm-cursor-underline { border-bottom: 1px ${a.cursor.css}; border-bottom-style: solid; height: calc(100% - 1px);}${this._terminalSelector} .${c3} { position: absolute; top: 0; left: 0; z-index: 1; pointer-events: none;}${this._terminalSelector}.focus .${c3} div { position: absolute; background-color: ${a.selectionBackgroundOpaque.css};}${this._terminalSelector} .${c3} div { position: absolute; background-color: ${a.selectionInactiveBackgroundOpaque.css};}`,a.ansi.entries()))b+=`${this._terminalSelector} .${c0}${f} { color: ${g.css}; }${this._terminalSelector} .${c0}${f}.xterm-dim { color: ${em.multiplyOpacity(g,.5).css}; }${this._terminalSelector} .${c1}${f} { background-color: ${g.css}; }`;b+=`${this._terminalSelector} .${c0}257 { color: ${em.opaque(a.background).css}; }${this._terminalSelector} .${c0}257.xterm-dim { color: ${em.multiplyOpacity(em.opaque(a.background),.5).css}; }${this._terminalSelector} .${c1}257 { background-color: ${a.foreground.css}; }`,this._themeStyleElement.textContent=b}_setDefaultSpacing(){let a=this.dimensions.css.cell.width-this._widthCache.get("W",!1,!1);this._rowContainer.style.letterSpacing=`${a}px`,this._rowFactory.defaultSpacing=a}handleDevicePixelRatioChange(){this._updateDimensions(),this._widthCache.clear(),this._setDefaultSpacing()}_refreshRowElements(a,b){for(let a=this._rowElements.length;a<=b;a++){let a=this._document.createElement("div");this._rowContainer.appendChild(a),this._rowElements.push(a)}for(;this._rowElements.length>b;)this._rowContainer.removeChild(this._rowElements.pop())}handleResize(a,b){this._refreshRowElements(a,b),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(c2),this.renderRows(0,this._bufferService.rows-1)}handleFocus(){this._rowContainer.classList.add(c2),this.renderRows(this._bufferService.buffer.y,this._bufferService.buffer.y)}handleSelectionChanged(a,b,c){if(this._selectionContainer.replaceChildren(),this._rowFactory.handleSelectionChanged(a,b,c),this.renderRows(0,this._bufferService.rows-1),!a||!b||(this._selectionRenderModel.update(this._terminal,a,b,c),!this._selectionRenderModel.hasSelection))return;let d=this._selectionRenderModel.viewportStartRow,e=this._selectionRenderModel.viewportEndRow,f=this._selectionRenderModel.viewportCappedStartRow,g=this._selectionRenderModel.viewportCappedEndRow,h=this._document.createDocumentFragment();if(c){let c=a[0]>b[0];h.appendChild(this._createSelectionElement(f,c?b[0]:a[0],c?a[0]:b[0],g-f+1))}else{let c=d===f?a[0]:0,i=f===e?b[0]:this._bufferService.cols;if(h.appendChild(this._createSelectionElement(f,c,i)),h.appendChild(this._createSelectionElement(f+1,0,this._bufferService.cols,g-f-1)),f!==g){let a=e===g?b[0]:this._bufferService.cols;h.appendChild(this._createSelectionElement(g,0,a))}}this._selectionContainer.appendChild(h)}_createSelectionElement(a,b,c,d=1){let e=this._document.createElement("div"),f=b*this.dimensions.css.cell.width,g=this.dimensions.css.cell.width*(c-b);return f+g>this.dimensions.css.canvas.width&&(g=this.dimensions.css.canvas.width-f),e.style.height=`${d*this.dimensions.css.cell.height}px`,e.style.top=`${a*this.dimensions.css.cell.height}px`,e.style.left=`${f}px`,e.style.width=`${g}px`,e}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 a of this._rowElements)a.replaceChildren()}renderRows(a,b){let c=this._bufferService.buffer,d=c.ybase+c.y,e=Math.min(c.x,this._bufferService.cols-1),f=this._coreService.decPrivateModes.cursorBlink??this._optionsService.rawOptions.cursorBlink,g=this._coreService.decPrivateModes.cursorStyle??this._optionsService.rawOptions.cursorStyle,h=this._optionsService.rawOptions.cursorInactiveStyle;for(let i=a;i<=b;i++){let a=i+c.ydisp,b=this._rowElements[i],j=c.lines.get(a);if(!b||!j)break;b.replaceChildren(...this._rowFactory.createRow(j,a,a===d,g,h,e,f,this.dimensions.css.cell.width,this._widthCache,-1,-1))}}get _terminalSelector(){return`.${c$}${this._terminalClass}`}_handleLinkHover(a){this._setCellUnderline(a.x1,a.x2,a.y1,a.y2,a.cols,!0)}_handleLinkLeave(a){this._setCellUnderline(a.x1,a.x2,a.y1,a.y2,a.cols,!1)}_setCellUnderline(a,b,c,d,e,f){c<0&&(a=0),d<0&&(b=0);let g=this._bufferService.rows-1;c=Math.max(Math.min(c,g),0),d=Math.max(Math.min(d,g),0),e=Math.min(e,this._bufferService.cols);let h=this._bufferService.buffer,i=h.ybase+h.y,j=Math.min(h.x,e-1),k=this._optionsService.rawOptions.cursorBlink,l=this._optionsService.rawOptions.cursorStyle,m=this._optionsService.rawOptions.cursorInactiveStyle;for(let g=c;g<=d;++g){let n=g+h.ydisp,o=this._rowElements[g],p=h.lines.get(n);if(!o||!p)break;o.replaceChildren(...this._rowFactory.createRow(p,n,n===i,l,m,j,k,this.dimensions.css.cell.width,this._widthCache,f?g===c?a:0:-1,f?(g===d?b:e)-1:-1))}}};c5=F([G(7,_),G(8,ag),G(9,ab),G(10,X),G(11,Z),G(12,ah),G(13,am)],c5);var c6=class extends aC{constructor(a,b,c){super(),this._optionsService=c,this.width=0,this.height=0,this._onCharSizeChange=this._register(new aV),this.onCharSizeChange=this._onCharSizeChange.event;try{this._measureStrategy=this._register(new c9(this._optionsService))}catch{this._measureStrategy=this._register(new c8(a,b,this._optionsService))}this._register(this._optionsService.onMultipleOptionChange(["fontFamily","fontSize"],()=>this.measure()))}get hasValidSize(){return this.width>0&&this.height>0}measure(){let a=this._measureStrategy.measure();(a.width!==this.width||a.height!==this.height)&&(this.width=a.width,this.height=a.height,this._onCharSizeChange.fire())}};c6=F([G(2,ab)],c6);var c7=class extends aC{constructor(){super(...arguments),this._result={width:0,height:0}}_validateAndSet(a,b){void 0!==a&&a>0&&void 0!==b&&b>0&&(this._result.width=a,this._result.height=b)}},c8=class extends c7{constructor(a,b,c){super(),this._document=a,this._parentElement=b,this._optionsService=c,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}},c9=class extends c7{constructor(a){super(),this._optionsService=a,this._canvas=new OffscreenCanvas(100,100),this._ctx=this._canvas.getContext("2d");let b=this._ctx.measureText("W");if(!("width"in b&&"fontBoundingBoxAscent"in b&&"fontBoundingBoxDescent"in b))throw Error("Required font metrics not supported")}measure(){this._ctx.font=`${this._optionsService.rawOptions.fontSize}px ${this._optionsService.rawOptions.fontFamily}`;let a=this._ctx.measureText("W");return this._validateAndSet(a.width,a.fontBoundingBoxAscent+a.fontBoundingBoxDescent),this._result}},da=class extends aC{constructor(a,b,c){super(),this._textarea=a,this._window=b,this.mainDocument=c,this._isFocused=!1,this._cachedIsFocused=void 0,this._screenDprMonitor=this._register(new db(this._window)),this._onDprChange=this._register(new aV),this.onDprChange=this._onDprChange.event,this._onWindowChange=this._register(new aV),this.onWindowChange=this._onWindowChange.event,this._register(this.onWindowChange(a=>this._screenDprMonitor.setWindow(a))),this._register(aO.forward(this._screenDprMonitor.onDprChange,this._onDprChange)),this._register(bZ(this._textarea,"focus",()=>this._isFocused=!0)),this._register(bZ(this._textarea,"blur",()=>this._isFocused=!1))}get window(){return this._window}set window(a){this._window!==a&&(this._window=a,this._onWindowChange.fire(this._window))}get dpr(){return this.window.devicePixelRatio}get isFocused(){return void 0===this._cachedIsFocused&&(this._cachedIsFocused=this._isFocused&&this._textarea.ownerDocument.hasFocus(),queueMicrotask(()=>this._cachedIsFocused=void 0)),this._cachedIsFocused}},db=class extends aC{constructor(a){super(),this._parentWindow=a,this._windowResizeListener=this._register(new aD),this._onDprChange=this._register(new aV),this.onDprChange=this._onDprChange.event,this._outerListener=()=>this._setDprAndFireIfDiffers(),this._currentDevicePixelRatio=this._parentWindow.devicePixelRatio,this._updateDpr(),this._setWindowResizeListener(),this._register(az(()=>this.clearListener()))}setWindow(a){this._parentWindow=a,this._setWindowResizeListener(),this._setDprAndFireIfDiffers()}_setWindowResizeListener(){this._windowResizeListener.value=bZ(this._parentWindow,"resize",()=>this._setDprAndFireIfDiffers())}_setDprAndFireIfDiffers(){this._parentWindow.devicePixelRatio!==this._currentDevicePixelRatio&&this._onDprChange.fire(this._parentWindow.devicePixelRatio),this._updateDpr()}_updateDpr(){this._outerListener&&(this._resolutionMediaMatchList?.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)}},dc=class extends aC{constructor(){super(),this.linkProviders=[],this._register(az(()=>this.linkProviders.length=0))}registerLinkProvider(a){return this.linkProviders.push(a),{dispose:()=>{let b=this.linkProviders.indexOf(a);-1!==b&&this.linkProviders.splice(b,1)}}}};function dd(a,b,c){let d=c.getBoundingClientRect(),e=a.getComputedStyle(c),f=parseInt(e.getPropertyValue("padding-left")),g=parseInt(e.getPropertyValue("padding-top"));return[b.clientX-d.left-f,b.clientY-d.top-g]}var de=class{constructor(a,b){this._renderService=a,this._charSizeService=b}getCoords(a,b,c,d,e){return function(a,b,c,d,e,f,g,h,i){if(!f)return;let j=dd(a,b,c);return j[0]=Math.ceil((j[0]+(i?g/2:0))/g),j[1]=Math.ceil(j[1]/h),j[0]=Math.min(Math.max(j[0],1),d+ +!!i),j[1]=Math.min(Math.max(j[1],1),e),j}(window,a,b,c,d,this._charSizeService.hasValidSize,this._renderService.dimensions.css.cell.width,this._renderService.dimensions.css.cell.height,e)}getMouseReportCoords(a,b){let c=dd(window,a,b);if(this._charSizeService.hasValidSize)return c[0]=Math.min(Math.max(c[0],0),this._renderService.dimensions.css.canvas.width-1),c[1]=Math.min(Math.max(c[1],0),this._renderService.dimensions.css.canvas.height-1),{col:Math.floor(c[0]/this._renderService.dimensions.css.cell.width),row:Math.floor(c[1]/this._renderService.dimensions.css.cell.height),x:Math.floor(c[0]),y:Math.floor(c[1])}}};de=F([G(0,aj),G(1,ag)],de);var df=class{constructor(a,b){this._renderCallback=a,this._coreBrowserService=b,this._refreshCallbacks=[]}dispose(){this._animationFrame&&(this._coreBrowserService.window.cancelAnimationFrame(this._animationFrame),this._animationFrame=void 0)}addRefreshCallback(a){return this._refreshCallbacks.push(a),this._animationFrame||(this._animationFrame=this._coreBrowserService.window.requestAnimationFrame(()=>this._innerRefresh())),this._animationFrame}refresh(a,b,c){this._rowCount=c,a=void 0!==a?a:0,b=void 0!==b?b:this._rowCount-1,this._rowStart=void 0!==this._rowStart?Math.min(this._rowStart,a):a,this._rowEnd=void 0!==this._rowEnd?Math.max(this._rowEnd,b):b,this._animationFrame||(this._animationFrame=this._coreBrowserService.window.requestAnimationFrame(()=>this._innerRefresh()))}_innerRefresh(){if(this._animationFrame=void 0,void 0===this._rowStart||void 0===this._rowEnd||void 0===this._rowCount)return void this._runRefreshCallbacks();let a=Math.max(this._rowStart,0),b=Math.min(this._rowEnd,this._rowCount-1);this._rowStart=void 0,this._rowEnd=void 0,this._renderCallback(a,b),this._runRefreshCallbacks()}_runRefreshCallbacks(){for(let a of this._refreshCallbacks)a(0);this._refreshCallbacks=[]}},dg={},dh={getSafariVersion:()=>dq,isChromeOS:()=>dw,isFirefox:()=>dm,isIpad:()=>ds,isIphone:()=>dt,isLegacyEdge:()=>dn,isLinux:()=>dv,isMac:()=>dr,isNode:()=>dj,isSafari:()=>dp,isWindows:()=>du};for(var di in dh)D(dg,di,{get:dh[di],enumerable:!0});var dj="u">typeof process&&"title"in process,dk=dj?"node":navigator.userAgent,dl=dj?"node":navigator.platform,dm=dk.includes("Firefox"),dn=dk.includes("Edge"),dp=/^((?!chrome|android).)*safari/i.test(dk);function dq(){if(!dp)return 0;let a=dk.match(/Version\/(\d+)/);return null===a||a.length<2?0:parseInt(a[1])}var dr=["Macintosh","MacIntel","MacPPC","Mac68K"].includes(dl),ds="iPad"===dl,dt="iPhone"===dl,du=["Windows","Win16","Win32","WinCE"].includes(dl),dv=dl.indexOf("Linux")>=0,dw=/\bCrOS\b/.test(dk),dx=class{constructor(){this._tasks=[],this._i=0}enqueue(a){this._tasks.push(a),this._start()}flush(){for(;this._i<this._tasks.length;)this._tasks[this._i]()||this._i++;this.clear()}clear(){this._idleCallback&&(this._cancelCallback(this._idleCallback),this._idleCallback=void 0),this._i=0,this._tasks.length=0}_start(){this._idleCallback||(this._idleCallback=this._requestCallback(this._process.bind(this)))}_process(a){this._idleCallback=void 0;let b=0,c=0,d=a.timeRemaining(),e=0;for(;this._i<this._tasks.length;){if(b=performance.now(),this._tasks[this._i]()||this._i++,1.5*(c=Math.max(b=Math.max(1,performance.now()-b),c))>(e=a.timeRemaining())){d-b<-20&&console.warn(`task queue exceeded allotted deadline by ${Math.abs(Math.round(d-b))}ms`),this._start();return}d=e}this.clear()}},dy=class extends dx{_requestCallback(a){return setTimeout(()=>a(this._createDeadline(16)))}_cancelCallback(a){clearTimeout(a)}_createDeadline(a){let b=performance.now()+a;return{timeRemaining:()=>Math.max(0,b-performance.now())}}},dz=class extends dx{_requestCallback(a){return requestIdleCallback(a)}_cancelCallback(a){cancelIdleCallback(a)}},dA=!dj&&"requestIdleCallback"in window?dz:dy,dB=class{constructor(){this._queue=new dA}set(a){this._queue.clear(),this._queue.enqueue(a)}flush(){this._queue.flush()}},dC=class extends aC{constructor(a,b,c,d,e,f,g,h,i){super(),this._rowCount=a,this._optionsService=c,this._charSizeService=d,this._coreService=e,this._coreBrowserService=h,this._renderer=this._register(new aD),this._pausedResizeTask=new dB,this._observerDisposable=this._register(new aD),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 aV),this.onDimensionsChange=this._onDimensionsChange.event,this._onRenderedViewportChange=this._register(new aV),this.onRenderedViewportChange=this._onRenderedViewportChange.event,this._onRender=this._register(new aV),this.onRender=this._onRender.event,this._onRefreshRequest=this._register(new aV),this.onRefreshRequest=this._onRefreshRequest.event,this._renderDebouncer=new df((a,b)=>this._renderRows(a,b),this._coreBrowserService),this._register(this._renderDebouncer),this._syncOutputHandler=new dD(this._coreBrowserService,this._coreService,()=>this._fullRefresh()),this._register(az(()=>this._syncOutputHandler.dispose())),this._register(this._coreBrowserService.onDprChange(()=>this.handleDevicePixelRatioChange())),this._register(g.onResize(()=>this._fullRefresh())),this._register(g.buffers.onBufferActivate(()=>this._renderer.value?.clear())),this._register(this._optionsService.onOptionChange(()=>this._handleOptionsChanged())),this._register(this._charSizeService.onCharSizeChange(()=>this.handleCharSizeChanged())),this._register(f.onDecorationRegistered(()=>this._fullRefresh())),this._register(f.onDecorationRemoved(()=>this._fullRefresh())),this._register(this._optionsService.onMultipleOptionChange(["customGlyphs","drawBoldTextInBrightColors","letterSpacing","lineHeight","fontFamily","fontSize","fontWeight","fontWeightBold","minimumContrastRatio","rescaleOverlappingGlyphs"],()=>{this.clear(),this.handleResize(g.cols,g.rows),this._fullRefresh()})),this._register(this._optionsService.onMultipleOptionChange(["cursorBlink","cursorStyle"],()=>this.refreshRows(g.buffer.y,g.buffer.y,!0))),this._register(i.onChangeColors(()=>this._fullRefresh())),this._registerIntersectionObserver(this._coreBrowserService.window,b),this._register(this._coreBrowserService.onWindowChange(a=>this._registerIntersectionObserver(a,b)))}get dimensions(){return this._renderer.value.dimensions}_registerIntersectionObserver(a,b){if("IntersectionObserver"in a){let c=new a.IntersectionObserver(a=>this._handleIntersectionChange(a[a.length-1]),{threshold:0});c.observe(b),this._observerDisposable.value=az(()=>c.disconnect())}}_handleIntersectionChange(a){this._isPaused=void 0===a.isIntersecting?0===a.intersectionRatio:!a.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(a,b,c=!1){if(this._isPaused){this._needsFullRefresh=!0;return}if(this._coreService.decPrivateModes.synchronizedOutput)return void this._syncOutputHandler.bufferRows(a,b);let d=this._syncOutputHandler.flush();d&&(a=Math.min(a,d.start),b=Math.max(b,d.end)),c||(this._isNextRenderRedrawOnly=!1),this._renderDebouncer.refresh(a,b,this._rowCount)}_renderRows(a,b){if(this._renderer.value){if(this._coreService.decPrivateModes.synchronizedOutput)return void this._syncOutputHandler.bufferRows(a,b);a=Math.min(a,this._rowCount-1),b=Math.min(b,this._rowCount-1),this._renderer.value.renderRows(a,b),this._needsSelectionRefresh&&(this._renderer.value.handleSelectionChanged(this._selectionState.start,this._selectionState.end,this._selectionState.columnSelectMode),this._needsSelectionRefresh=!1),this._isNextRenderRedrawOnly||this._onRenderedViewportChange.fire({start:a,end:b}),this._onRender.fire({start:a,end:b}),this._isNextRenderRedrawOnly=!0}}resize(a,b){this._rowCount=b,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(a){this._renderer.value=a,this._renderer.value&&(this._renderer.value.onRequestRedraw(a=>this.refreshRows(a.start,a.end,!0)),this._needsSelectionRefresh=!0,this._fullRefresh())}addRefreshCallback(a){return this._renderDebouncer.addRefreshCallback(a)}_fullRefresh(){this._isPaused?this._needsFullRefresh=!0:this.refreshRows(0,this._rowCount-1)}clearTextureAtlas(){this._renderer.value&&(this._renderer.value.clearTextureAtlas?.(),this._fullRefresh())}handleDevicePixelRatioChange(){this._charSizeService.measure(),this._renderer.value&&(this._renderer.value.handleDevicePixelRatioChange(),this.refreshRows(0,this._rowCount-1))}handleResize(a,b){this._renderer.value&&(this._isPaused?this._pausedResizeTask.set(()=>this._renderer.value?.handleResize(a,b)):this._renderer.value.handleResize(a,b),this._fullRefresh())}handleCharSizeChanged(){this._renderer.value?.handleCharSizeChanged()}handleBlur(){this._renderer.value?.handleBlur()}handleFocus(){this._renderer.value?.handleFocus()}handleSelectionChanged(a,b,c){this._selectionState.start=a,this._selectionState.end=b,this._selectionState.columnSelectMode=c,this._renderer.value?.handleSelectionChanged(a,b,c)}handleCursorMove(){this._renderer.value?.handleCursorMove()}clear(){this._renderer.value?.clear()}};dC=F([G(2,ab),G(3,ag),G(4,Z),G(5,ae),G(6,X),G(7,ah),G(8,am)],dC);var dD=class{constructor(a,b,c){this._coreBrowserService=a,this._coreService=b,this._onTimeout=c,this._start=0,this._end=0,this._isBuffering=!1}bufferRows(a,b){this._isBuffering?(this._start=Math.min(this._start,a),this._end=Math.max(this._end,b)):(this._start=a,this._end=b,this._isBuffering=!0),void 0===this._timeout&&(this._timeout=this._coreBrowserService.window.setTimeout(()=>{this._timeout=void 0,this._coreService.decPrivateModes.synchronizedOutput=!1,this._onTimeout()},1e3))}flush(){if(void 0!==this._timeout&&(this._coreBrowserService.window.clearTimeout(this._timeout),this._timeout=void 0),!this._isBuffering)return;let a={start:this._start,end:this._end};return this._isBuffering=!1,a}dispose(){void 0!==this._timeout&&(this._coreBrowserService.window.clearTimeout(this._timeout),this._timeout=void 0)}};function dE(a,b,c,d){return dI(Math.abs(a-dF(a,c)-(b-dF(b,c)))-function(a,b,c){let d=0,e=a-dF(a,c),f=b-dF(b,c);for(let g=0;g<Math.abs(e-f);g++){let f="A"===function(a,b){return a>b?"A":"B"}(a,b)?-1:1;c.buffer.lines.get(e+f*g)?.isWrapped&&d++}return d}(a,b,c),dH(a>b?"A":"B",d))}function dF(a,b){let c=0,d=b.buffer.lines.get(a),e=d?.isWrapped;for(;e&&a>=0&&a<b.rows;)c++,d=b.buffer.lines.get(--a),e=d?.isWrapped;return c}function dG(a,b,c,d,e,f){let g=a,h=b,i="";for(;(g!==c||h!==d)&&h>=0&&h<f.buffer.lines.length;)g+=e?1:-1,e&&g>f.cols-1?(i+=f.buffer.translateBufferLineToString(h,!1,a,g),g=0,a=0,h++):!e&&g<0&&(i+=f.buffer.translateBufferLineToString(h,!1,0,a+1),a=g=f.cols-1,h--);return i+f.buffer.translateBufferLineToString(h,!1,a,g)}function dH(a,b){return cB.ESC+(b?"O":"[")+a}function dI(a,b){a=Math.floor(a);let c="";for(let d=0;d<a;d++)c+=b;return c}var dJ=class{constructor(a){this._bufferService=a,this.isSelectAllActive=!1,this.selectionStartLength=0}clearSelection(){this.selectionStart=void 0,this.selectionEnd=void 0,this.isSelectAllActive=!1,this.selectionStartLength=0}get finalSelectionStart(){return this.isSelectAllActive?[0,0]:this.selectionEnd&&this.selectionStart&&this.areSelectionValuesReversed()?this.selectionEnd:this.selectionStart}get finalSelectionEnd(){if(this.isSelectAllActive)return[this._bufferService.cols,this._bufferService.buffer.ybase+this._bufferService.rows-1];if(this.selectionStart){if(!this.selectionEnd||this.areSelectionValuesReversed()){let a=this.selectionStart[0]+this.selectionStartLength;return a>this._bufferService.cols?a%this._bufferService.cols==0?[this._bufferService.cols,this.selectionStart[1]+Math.floor(a/this._bufferService.cols)-1]:[a%this._bufferService.cols,this.selectionStart[1]+Math.floor(a/this._bufferService.cols)]:[a,this.selectionStart[1]]}if(this.selectionStartLength&&this.selectionEnd[1]===this.selectionStart[1]){let a=this.selectionStart[0]+this.selectionStartLength;return a>this._bufferService.cols?[a%this._bufferService.cols,this.selectionStart[1]+Math.floor(a/this._bufferService.cols)]:[Math.max(a,this.selectionEnd[0]),this.selectionEnd[1]]}return this.selectionEnd}}areSelectionValuesReversed(){let a=this.selectionStart,b=this.selectionEnd;return!!a&&!!b&&(a[1]>b[1]||a[1]===b[1]&&a[0]>b[0])}handleTrim(a){return this.selectionStart&&(this.selectionStart[1]-=a),this.selectionEnd&&(this.selectionEnd[1]-=a),this.selectionEnd&&this.selectionEnd[1]<0?(this.clearSelection(),!0):(this.selectionStart&&this.selectionStart[1]<0&&(this.selectionStart[1]=0),!1)}};function dK(a,b){if(a.start.y>a.end.y)throw Error(`Buffer range end (${a.end.x}, ${a.end.y}) cannot be before start (${a.start.x}, ${a.start.y})`);return b*(a.end.y-a.start.y)+(a.end.x-a.start.x+1)}var dL=RegExp(" ","g"),dM=class extends aC{constructor(a,b,c,d,e,f,g,h,i){super(),this._element=a,this._screenElement=b,this._linkifier=c,this._bufferService=d,this._coreService=e,this._mouseService=f,this._optionsService=g,this._renderService=h,this._coreBrowserService=i,this._dragScrollAmount=0,this._enabled=!0,this._workCell=new S,this._mouseDownTimeStamp=0,this._oldHasSelection=!1,this._oldSelectionStart=void 0,this._oldSelectionEnd=void 0,this._onLinuxMouseSelection=this._register(new aV),this.onLinuxMouseSelection=this._onLinuxMouseSelection.event,this._onRedrawRequest=this._register(new aV),this.onRequestRedraw=this._onRedrawRequest.event,this._onSelectionChange=this._register(new aV),this.onSelectionChange=this._onSelectionChange.event,this._onRequestScrollLines=this._register(new aV),this.onRequestScrollLines=this._onRequestScrollLines.event,this._mouseMoveListener=a=>this._handleMouseMove(a),this._mouseUpListener=a=>this._handleMouseUp(a),this._coreService.onUserInput(()=>{this.hasSelection&&this.clearSelection()}),this._trimListener=this._bufferService.buffer.lines.onTrim(a=>this._handleTrim(a)),this._register(this._bufferService.buffers.onBufferActivate(a=>this._handleBufferActivate(a))),this.enable(),this._model=new dJ(this._bufferService),this._activeSelectionMode=0,this._register(az(()=>{this._removeMouseDownListeners()})),this._register(this._bufferService.onResize(a=>{a.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 a=this._model.finalSelectionStart,b=this._model.finalSelectionEnd;return!!a&&!!b&&(a[0]!==b[0]||a[1]!==b[1])}get selectionText(){let a=this._model.finalSelectionStart,b=this._model.finalSelectionEnd;if(!a||!b)return"";let c=this._bufferService.buffer,d=[];if(3===this._activeSelectionMode){if(a[0]===b[0])return"";let e=a[0]<b[0]?a[0]:b[0],f=a[0]<b[0]?b[0]:a[0];for(let g=a[1];g<=b[1];g++){let a=c.translateBufferLineToString(g,!0,e,f);d.push(a)}}else{let e=a[1]===b[1]?b[0]:void 0;d.push(c.translateBufferLineToString(a[1],!0,a[0],e));for(let e=a[1]+1;e<=b[1]-1;e++){let a=c.lines.get(e),b=c.translateBufferLineToString(e,!0);a?.isWrapped?d[d.length-1]+=b:d.push(b)}if(a[1]!==b[1]){let a=c.lines.get(b[1]),e=c.translateBufferLineToString(b[1],!0,0,b[0]);a&&a.isWrapped?d[d.length-1]+=e:d.push(e)}}return d.map(a=>a.replace(dL," ")).join(du?`\r
|
|
24
|
+
`).trim(),b=/(file:|vscode-file:\/\/vscode-app)?(\/[^:]*:\d+:\d+)/.exec(a);aV.register(f,b?.[2]??a,f)}return f},this._event}_removeListener(a){if(this._options?.onWillRemoveListener?.(this),!this._listeners)return;if(1===this._size){this._listeners=void 0,this._options?.onDidRemoveLastListener?.(this),this._size=0;return}let b=this._listeners,c=b.indexOf(a);if(-1===c)throw console.log("disposed?",this._disposed),console.log("size?",this._size),console.log("arr?",JSON.stringify(this._listeners)),Error("Attempted to dispose unknown listener");this._size--,b[c]=void 0;let d=this._deliveryQueue.current===this;if(2*this._size<=b.length){let a=0;for(let c=0;c<b.length;c++)b[c]?b[a++]=b[c]:d&&(this._deliveryQueue.end--,a<this._deliveryQueue.i&&this._deliveryQueue.i--);b.length=a}}_deliver(a,b){if(!a)return;let c=this._options?.onListenerError||av;try{a.value(b)}catch(a){c(a)}}_deliverQueue(a){let b=a.current._listeners;for(;a.i<a.end;)this._deliver(b[a.i++],a.value);a.reset()}fire(a){if(this._deliveryQueue?.current&&(this._deliverQueue(this._deliveryQueue),this._perfMon?.stop()),this._perfMon?.start(this._size),this._listeners)if(this._listeners instanceof a$)this._deliver(this._listeners,a);else{let b=this._deliveryQueue;b.enqueue(this,a,this._listeners.length),this._deliverQueue(b)}this._perfMon?.stop()}hasListeners(){return this._size>0}},a0=class{constructor(){this.i=-1,this.end=0}enqueue(a,b,c){this.i=0,this.end=c,this.current=a,this.value=b}reset(){this.i=this.end,this.current=void 0,this.value=void 0}},a1=class{constructor(){this.mapWindowIdToZoomLevel=new Map,this._onDidChangeZoomLevel=new a_,this.onDidChangeZoomLevel=this._onDidChangeZoomLevel.event,this.mapWindowIdToZoomFactor=new Map,this._onDidChangeFullscreen=new a_,this.onDidChangeFullscreen=this._onDidChangeFullscreen.event,this.mapWindowIdToFullScreen=new Map}getZoomLevel(a){return this.mapWindowIdToZoomLevel.get(this.getWindowId(a))??0}setZoomLevel(a,b){if(this.getZoomLevel(b)===a)return;let c=this.getWindowId(b);this.mapWindowIdToZoomLevel.set(c,a),this._onDidChangeZoomLevel.fire(c)}getZoomFactor(a){return this.mapWindowIdToZoomFactor.get(this.getWindowId(a))??1}setZoomFactor(a,b){this.mapWindowIdToZoomFactor.set(this.getWindowId(b),a)}setFullscreen(a,b){if(this.isFullscreen(b)===a)return;let c=this.getWindowId(b);this.mapWindowIdToFullScreen.set(c,a),this._onDidChangeFullscreen.fire(c)}isFullscreen(a){return!!this.mapWindowIdToFullScreen.get(this.getWindowId(a))}getWindowId(a){return a.vscodeWindowId}};a1.INSTANCE=new a1,a1.INSTANCE.onDidChangeZoomLevel,a1.INSTANCE.onDidChangeFullscreen;var a2="object"==typeof navigator?navigator.userAgent:"",a3=a2.indexOf("Firefox")>=0,a4=a2.indexOf("AppleWebKit")>=0,a5=a2.indexOf("Chrome")>=0,a6=!a5&&a2.indexOf("Safari")>=0;a2.indexOf("Electron/"),a2.indexOf("Android");var a7=!1;if("function"==typeof aK.matchMedia){let a=aK.matchMedia("(display-mode: standalone) or (display-mode: window-controls-overlay)"),b=aK.matchMedia("(display-mode: fullscreen)");a7=a.matches,a8=a,"string"==typeof a8&&(a8=aK.matchMedia(a8)),a8.addEventListener("change",({matches:a})=>{a7&&b.matches||(a7=a)})}var a8,a9,ba,bb=!1,bc=!1,bd=!1,be=!1,bf=!1,bg="en",bh=globalThis;"u">typeof bh.vscode&&"u">typeof bh.vscode.process?ba=bh.vscode.process:"u">typeof process&&"string"==typeof process?.versions?.node&&(ba=process);var bi="string"==typeof ba?.versions?.electron&&ba?.type==="renderer";if("object"==typeof ba){bb="win32"===ba.platform,bc="darwin"===ba.platform,(bd="linux"===ba.platform)&&ba.env.SNAP&&ba.env.SNAP_REVISION,ba.env.CI||ba.env.BUILD_ARTIFACTSTAGINGDIRECTORY,bg="en";let a=ba.env.VSCODE_NLS_CONFIG;if(a)try{let b=JSON.parse(a);b.userLocale,b.osLocale,bg=b.resolvedLanguage||"en",b.languagePack?.translationsConfigFile}catch{}be=!0}else"object"!=typeof navigator||bi?console.error("Unable to resolve platform."):(bb=(a9=navigator.userAgent).indexOf("Windows")>=0,bc=a9.indexOf("Macintosh")>=0,(a9.indexOf("Macintosh")>=0||a9.indexOf("iPad")>=0||a9.indexOf("iPhone")>=0)&&navigator.maxTouchPoints&&navigator.maxTouchPoints,bd=a9.indexOf("Linux")>=0,a9?.indexOf("Mobi"),bf=!0,bg=globalThis._VSCODE_NLS_LANGUAGE||"en",navigator.language.toLowerCase());var bj=bb,bk=bc,bl=bd,bm=be;bf&&"function"==typeof bh.importScripts&&bh.origin;var bn,bo=a9,bp=bg;(bz=bn||={}).value=function(){return bp},bz.isDefaultVariant=function(){return 2===bp.length?"en"===bp:bp.length>=3&&"e"===bp[0]&&"n"===bp[1]&&"-"===bp[2]},bz.isDefault=function(){return"en"===bp};var bq="function"==typeof bh.postMessage&&!bh.importScripts,br=(()=>{if(bq){let a=[];bh.addEventListener("message",b=>{if(b.data&&b.data.vscodeScheduleAsyncWork)for(let c=0,d=a.length;c<d;c++){let d=a[c];if(d.id===b.data.vscodeScheduleAsyncWork){a.splice(c,1),d.callback();return}}});let b=0;return c=>{let d=++b;a.push({id:d,callback:c}),bh.postMessage({vscodeScheduleAsyncWork:d},"*")}}return a=>setTimeout(a)})(),bs=!!(bo&&bo.indexOf("Chrome")>=0);bo&&bo.indexOf("Firefox"),!bs&&bo&&bo.indexOf("Safari"),bo&&bo.indexOf("Edg/"),bo&&bo.indexOf("Android");var bt="object"==typeof navigator?navigator:{};bm||document.queryCommandSupported&&document.queryCommandSupported("copy")||bt&&bt.clipboard&&bt.clipboard.writeText,bm||bt&&bt.clipboard&&bt.clipboard.readText,bm||a7||bt.keyboard,"ontouchstart"in aK||bt.maxTouchPoints,aK.PointerEvent&&("ontouchstart"in aK||navigator.maxTouchPoints);var bu=class{constructor(){this._keyCodeToStr=[],this._strToKeyCode=Object.create(null)}define(a,b){this._keyCodeToStr[a]=b,this._strToKeyCode[b.toLowerCase()]=a}keyCodeToStr(a){return this._keyCodeToStr[a]}strToKeyCode(a){return this._strToKeyCode[a.toLowerCase()]||0}},bv=new bu,bw=new bu,bx=new bu,by=Array(230);(bA=bB||={}).toString=function(a){return bv.keyCodeToStr(a)},bA.fromString=function(a){return bv.strToKeyCode(a)},bA.toUserSettingsUS=function(a){return bw.keyCodeToStr(a)},bA.toUserSettingsGeneral=function(a){return bx.keyCodeToStr(a)},bA.fromUserSettings=function(a){return bw.strToKeyCode(a)||bx.strToKeyCode(a)},bA.toElectronAccelerator=function(a){if(a>=98&&a<=113)return null;switch(a){case 16:return"Up";case 18:return"Down";case 15:return"Left";case 17:return"Right"}return bv.keyCodeToStr(a)};var bz,bA,bB,bC,bD=class a{constructor(a,b,c,d,e){this.ctrlKey=a,this.shiftKey=b,this.altKey=c,this.metaKey=d,this.keyCode=e}equals(b){return b instanceof a&&this.ctrlKey===b.ctrlKey&&this.shiftKey===b.shiftKey&&this.altKey===b.altKey&&this.metaKey===b.metaKey&&this.keyCode===b.keyCode}getHashCode(){let a=this.ctrlKey?"1":"0",b=this.shiftKey?"1":"0",c=this.altKey?"1":"0",d=this.metaKey?"1":"0";return`K${a}${b}${c}${d}${this.keyCode}`}isModifierKey(){return 0===this.keyCode||5===this.keyCode||57===this.keyCode||6===this.keyCode||4===this.keyCode}toKeybinding(){return new bE([this])}isDuplicateModifierCase(){return this.ctrlKey&&5===this.keyCode||this.shiftKey&&4===this.keyCode||this.altKey&&6===this.keyCode||this.metaKey&&57===this.keyCode}},bE=class{constructor(a){if(0===a.length)throw function(a){return a?Error(`Illegal argument: ${a}`):Error("Illegal argument")}("chords");this.chords=a}getHashCode(){let a="";for(let b=0,c=this.chords.length;b<c;b++)0!==b&&(a+=";"),a+=this.chords[b].getHashCode();return a}equals(a){if(null===a||this.chords.length!==a.chords.length)return!1;for(let b=0;b<this.chords.length;b++)if(!this.chords[b].equals(a.chords[b]))return!1;return!0}},bF=bk?256:2048,bG=bk?2048:256,bH=class{constructor(a){this._standardKeyboardEventBrand=!0,this.browserEvent=a,this.target=a.target,this.ctrlKey=a.ctrlKey,this.shiftKey=a.shiftKey,this.altKey=a.altKey,this.metaKey=a.metaKey,this.altGraphKey=a.getModifierState?.("AltGraph"),this.keyCode=function(a){if(a.charCode){let b=String.fromCharCode(a.charCode).toUpperCase();return bB.fromString(b)}let b=a.keyCode;if(3===b)return 7;if(a3)switch(b){case 59:return 85;case 60:if(bl)return 97;break;case 61:return 86;case 107:return 109;case 109:return 111;case 173:return 88;case 224:if(bk)return 57}else if(a4&&(bk&&93===b||!bk&&92===b))return 57;return by[b]||0}(a),this.code=a.code,this.ctrlKey=this.ctrlKey||5===this.keyCode,this.altKey=this.altKey||6===this.keyCode,this.shiftKey=this.shiftKey||4===this.keyCode,this.metaKey=this.metaKey||57===this.keyCode,this._asKeybinding=this._computeKeybinding(),this._asKeyCodeChord=this._computeKeyCodeChord()}preventDefault(){this.browserEvent&&this.browserEvent.preventDefault&&this.browserEvent.preventDefault()}stopPropagation(){this.browserEvent&&this.browserEvent.stopPropagation&&this.browserEvent.stopPropagation()}toKeyCodeChord(){return this._asKeyCodeChord}equals(a){return this._asKeybinding===a}_computeKeybinding(){let a=0;5!==this.keyCode&&4!==this.keyCode&&6!==this.keyCode&&57!==this.keyCode&&(a=this.keyCode);let b=0;return this.ctrlKey&&(b|=bF),this.altKey&&(b|=512),this.shiftKey&&(b|=1024),this.metaKey&&(b|=bG),b|=a}_computeKeyCodeChord(){let a=0;return 5!==this.keyCode&&4!==this.keyCode&&6!==this.keyCode&&57!==this.keyCode&&(a=this.keyCode),new bD(this.ctrlKey,this.shiftKey,this.altKey,this.metaKey,a)}},bI=new WeakMap,bJ=class{static getSameOriginWindowChain(a){let b=bI.get(a);if(!b){b=[],bI.set(a,b);let c=a,d;do(d=function(a){if(!a.parent||a.parent===a)return null;try{let b=a.location,c=a.parent.location;if("null"!==b.origin&&"null"!==c.origin&&b.origin!==c.origin)return null}catch{return null}return a.parent}(c))?b.push({window:new WeakRef(c),iframeElement:c.frameElement||null}):b.push({window:new WeakRef(c),iframeElement:null}),c=d;while(c)}return b.slice(0)}static getPositionOfChildWindowRelativeToAncestorWindow(a,b){if(!b||a===b)return{top:0,left:0};let c=0,d=0;for(let e of this.getSameOriginWindowChain(a)){let a=e.window.deref();if(c+=a?.scrollY??0,d+=a?.scrollX??0,a===b||!e.iframeElement)break;let f=e.iframeElement.getBoundingClientRect();c+=f.top,d+=f.left}return{top:c,left:d}}},bK=class{constructor(a,b){this.timestamp=Date.now(),this.browserEvent=b,this.leftButton=0===b.button,this.middleButton=1===b.button,this.rightButton=2===b.button,this.buttons=b.buttons,this.target=b.target,this.detail=b.detail||1,"dblclick"===b.type&&(this.detail=2),this.ctrlKey=b.ctrlKey,this.shiftKey=b.shiftKey,this.altKey=b.altKey,this.metaKey=b.metaKey,"number"==typeof b.pageX?(this.posx=b.pageX,this.posy=b.pageY):(this.posx=b.clientX+this.target.ownerDocument.body.scrollLeft+this.target.ownerDocument.documentElement.scrollLeft,this.posy=b.clientY+this.target.ownerDocument.body.scrollTop+this.target.ownerDocument.documentElement.scrollTop);let c=bJ.getPositionOfChildWindowRelativeToAncestorWindow(a,b.view);this.posx-=c.left,this.posy-=c.top}preventDefault(){this.browserEvent.preventDefault()}stopPropagation(){this.browserEvent.stopPropagation()}},bL=class{constructor(a,b=0,c=0){this.browserEvent=a||null,this.target=a?a.target||a.targetNode||a.srcElement:null,this.deltaY=c,this.deltaX=b;let d=!1;if(a5){let a=navigator.userAgent.match(/Chrome\/(\d+)/);d=(a?parseInt(a[1]):123)<=122}if(a){let b=a.view?.devicePixelRatio||1;"u">typeof a.wheelDeltaY?d?this.deltaY=a.wheelDeltaY/(120*b):this.deltaY=a.wheelDeltaY/120:"u">typeof a.VERTICAL_AXIS&&a.axis===a.VERTICAL_AXIS?this.deltaY=-a.detail/3:"wheel"===a.type&&(a.deltaMode===a.DOM_DELTA_LINE?a3&&!bk?this.deltaY=-a.deltaY/3:this.deltaY=-a.deltaY:this.deltaY=-a.deltaY/40),"u">typeof a.wheelDeltaX?a6&&bj?this.deltaX=-(a.wheelDeltaX/120):d?this.deltaX=a.wheelDeltaX/(120*b):this.deltaX=a.wheelDeltaX/120:"u">typeof a.HORIZONTAL_AXIS&&a.axis===a.HORIZONTAL_AXIS?this.deltaX=-a.detail/3:"wheel"===a.type&&(a.deltaMode===a.DOM_DELTA_LINE?a3&&!bk?this.deltaX=-a.deltaX/3:this.deltaX=-a.deltaX:this.deltaX=-a.deltaX/40),0===this.deltaY&&0===this.deltaX&&a.wheelDelta&&(d?this.deltaY=a.wheelDelta/(120*b):this.deltaY=a.wheelDelta/120)}}preventDefault(){this.browserEvent?.preventDefault()}stopPropagation(){this.browserEvent?.stopPropagation()}},bM=Object.freeze(function(a,b){let c=setTimeout(a.bind(b),0);return{dispose(){clearTimeout(c)}}});(cC=bC||={}).isCancellationToken=function(a){return a===cC.None||a===cC.Cancelled||a instanceof bN||!!a&&"object"==typeof a&&"boolean"==typeof a.isCancellationRequested&&"function"==typeof a.onCancellationRequested},cC.None=Object.freeze({isCancellationRequested:!1,onCancellationRequested:aU.None}),cC.Cancelled=Object.freeze({isCancellationRequested:!0,onCancellationRequested:bM});var bN=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?bM:(this._emitter||(this._emitter=new a_),this._emitter.event)}dispose(){this._emitter&&(this._emitter.dispose(),this._emitter=null)}};Symbol("MicrotaskDelay");var bO=class{constructor(a,b){this._isDisposed=!1,this._token=-1,"function"==typeof a&&"number"==typeof b&&this.setIfNotSet(a,b)}dispose(){this.cancel(),this._isDisposed=!0}cancel(){-1!==this._token&&(clearTimeout(this._token),this._token=-1)}cancelAndSet(a,b){if(this._isDisposed)throw new az("Calling 'cancelAndSet' on a disposed TimeoutTimer");this.cancel(),this._token=setTimeout(()=>{this._token=-1,a()},b)}setIfNotSet(a,b){if(this._isDisposed)throw new az("Calling 'setIfNotSet' on a disposed TimeoutTimer");-1===this._token&&(this._token=setTimeout(()=>{this._token=-1,a()},b))}},bP=class{constructor(){this.disposable=void 0,this.isDisposed=!1}cancel(){this.disposable?.dispose(),this.disposable=void 0}cancelAndSet(a,b,c=globalThis){if(this.isDisposed)throw new az("Calling 'cancelAndSet' on a disposed IntervalTimer");this.cancel();let d=c.setInterval(()=>{a()},b);this.disposable=aF(()=>{c.clearInterval(d),this.disposable=void 0})}dispose(){this.cancel(),this.isDisposed=!0}};(cD=cE||={}).settled=async function(a){let b,c=await Promise.all(a.map(a=>a.then(a=>a,a=>{b||(b=a)})));if("u">typeof b)throw b;return c},cD.withAsyncBody=function(a){return new Promise(async(b,c)=>{try{await a(b,c)}catch(a){c(a)}})};var bQ=class a{static fromArray(b){return new a(a=>{a.emitMany(b)})}static fromPromise(b){return new a(async a=>{a.emitMany(await b)})}static fromPromises(b){return new a(async a=>{await Promise.all(b.map(async b=>a.emitOne(await b)))})}static merge(b){return new a(async a=>{await Promise.all(b.map(async b=>{for await(let c of b)a.emitOne(c)}))})}constructor(a,b){this._state=0,this._results=[],this._error=null,this._onReturn=b,this._onStateChanged=new a_,queueMicrotask(async()=>{let b={emitOne:a=>this.emitOne(a),emitMany:a=>this.emitMany(a),reject:a=>this.reject(a)};try{await Promise.resolve(a(b)),this.resolve()}catch(a){this.reject(a)}finally{b.emitOne=void 0,b.emitMany=void 0,b.reject=void 0}})}[Symbol.asyncIterator](){let a=0;return{next:async()=>{for(;;){if(2===this._state)throw this._error;if(a<this._results.length)return{done:!1,value:this._results[a++]};if(1===this._state)return{done:!0,value:void 0};await aU.toPromise(this._onStateChanged.event)}},return:async()=>(this._onReturn?.(),{done:!0,value:void 0})}}static map(b,c){return new a(async a=>{for await(let d of b)a.emitOne(c(d))})}map(b){return a.map(this,b)}static filter(b,c){return new a(async a=>{for await(let d of b)c(d)&&a.emitOne(d)})}filter(b){return a.filter(this,b)}static coalesce(b){return a.filter(b,a=>!!a)}coalesce(){return a.coalesce(this)}static async toPromise(a){let b=[];for await(let c of a)b.push(c);return b}toPromise(){return a.toPromise(this)}emitOne(a){0===this._state&&(this._results.push(a),this._onStateChanged.fire())}emitMany(a){0===this._state&&(this._results=this._results.concat(a),this._onStateChanged.fire())}resolve(){0===this._state&&(this._state=1,this._onStateChanged.fire())}reject(a){0===this._state&&(this._state=2,this._error=a,this._onStateChanged.fire())}};bQ.EMPTY=bQ.fromArray([]);function bR(a,b){return(b<<5)-b+a|0}function bS(a,b){b=bR(149417,b);for(let c=0,d=a.length;c<d;c++)b=bR(a.charCodeAt(c),b);return b}new DataView(new ArrayBuffer(320));var{registerWindow:bT,getWindow:bU,getDocument:bV,getWindows:bW,getWindowsCount:bX,getWindowId:bY,getWindowById:bZ,hasWindow:b$,onDidRegisterWindow:b_,onWillUnregisterWindow:b0,onDidUnregisterWindow:b1}=(b=new Map,c={window:aK,disposables:new aH},b.set(aK.vscodeWindowId,c),d=new a_,e=new a_,f=new a_,{onDidRegisterWindow:d.event,onWillUnregisterWindow:f.event,onDidUnregisterWindow:e.event,registerWindow(a){if(b.has(a.vscodeWindowId))return aI.None;let c=new aH,g={window:a,disposables:c.add(new aH)};return b.set(a.vscodeWindowId,g),c.add(aF(()=>{b.delete(a.vscodeWindowId),e.fire(a)})),c.add(b3(a,b8.BEFORE_UNLOAD,()=>{f.fire(a)})),d.fire(g),c},getWindows:()=>b.values(),getWindowsCount:()=>b.size,getWindowId:a=>a.vscodeWindowId,hasWindow:a=>b.has(a),getWindowById:function(a,d){return("number"==typeof a?b.get(a):void 0)??(d?c:void 0)},getWindow:a=>a?.ownerDocument?.defaultView?a.ownerDocument.defaultView.window:a?.view?a.view.window:aK,getDocument:a=>bU(a).document}),b2=class{constructor(a,b,c,d){this._node=a,this._type=b,this._handler=c,this._options=d||!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 b3(a,b,c,d){return new b2(a,b,c,d)}var b4=function(a,b,c,d){var e;let f=c;return"click"===b||"mousedown"===b||"contextmenu"===b?(e=bU(a),f=function(a){return c(new bK(e,a))}):("keydown"===b||"keypress"===b||"keyup"===b)&&(f=function(a){return c(new bH(a))}),b3(a,b,f,d)},b5=class extends bP{constructor(a){super(),this.defaultTarget=a&&bU(a)}cancelAndSet(a,b,c){return super.cancelAndSet(a,b,c??this.defaultTarget)}},b6=class{constructor(a,b=0){this._runner=a,this.priority=b,this._canceled=!1}dispose(){this._canceled=!0}execute(){if(!this._canceled)try{this._runner()}catch(a){av(a)}}static sort(a,b){return b.priority-a.priority}};g=new Map,h=new Map,i=new Map,j=new Map,cF=(a,b,c=0)=>{let d=bY(a),e=new b6(b,c),f=g.get(d);return f||(f=[],g.set(d,f)),f.push(e),i.get(d)||(i.set(d,!0),a.requestAnimationFrame(()=>(a=>{i.set(a,!1);let b=g.get(a)??[];for(h.set(a,b),g.set(a,[]),j.set(a,!0);b.length>0;)b.sort(b6.sort),b.shift().execute();j.set(a,!1)})(d))),e};var b7=class a{constructor(a,b){this.width=a,this.height=b}with(b=this.width,c=this.height){return b!==this.width||c!==this.height?new a(b,c):this}static is(a){return"object"==typeof a&&"number"==typeof a.height&&"number"==typeof a.width}static lift(b){return b instanceof a?b:new a(b.width,b.height)}static equals(a,b){return a===b||!!a&&!!b&&a.width===b.width&&a.height===b.height}};b7.None=new b7(0,0),new class{constructor(){this.mutationObservers=new Map}observe(a,b,c){let d=this.mutationObservers.get(a);d||(d=new Map,this.mutationObservers.set(a,d));let e=function a(b,c){switch(typeof b){case"object":var d,e,f,g;return null===b?bR(349,c):Array.isArray(b)?(d=b,e=bR(104579,e=c),d.reduce((b,c)=>a(c,b),e)):(f=b,g=bR(181387,g=c),Object.keys(f).sort().reduce((b,c)=>(b=bS(c,b),a(f[c],b)),g));case"string":return bS(b,c);case"boolean":return bR(b?433:863,c);case"number":return bR(b,c);case"undefined":return bR(937,c);default:return bR(617,c)}}(c,0),f=d.get(e);if(f)f.users+=1;else{let g=new a_,h=new MutationObserver(a=>g.fire(a));h.observe(a,c);let i=f={users:1,observer:h,onDidMutate:g.event};b.add(aF(()=>{i.users-=1,0===i.users&&(g.dispose(),h.disconnect(),d?.delete(e),d?.size===0&&this.mutationObservers.delete(a))})),d.set(e,f)}return f.onDidMutate}};var b8={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"},b9=class{constructor(a){this.domNode=a,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(a){let b=ca(a);this._maxWidth!==b&&(this._maxWidth=b,this.domNode.style.maxWidth=this._maxWidth)}setWidth(a){let b=ca(a);this._width!==b&&(this._width=b,this.domNode.style.width=this._width)}setHeight(a){let b=ca(a);this._height!==b&&(this._height=b,this.domNode.style.height=this._height)}setTop(a){let b=ca(a);this._top!==b&&(this._top=b,this.domNode.style.top=this._top)}setLeft(a){let b=ca(a);this._left!==b&&(this._left=b,this.domNode.style.left=this._left)}setBottom(a){let b=ca(a);this._bottom!==b&&(this._bottom=b,this.domNode.style.bottom=this._bottom)}setRight(a){let b=ca(a);this._right!==b&&(this._right=b,this.domNode.style.right=this._right)}setPaddingTop(a){let b=ca(a);this._paddingTop!==b&&(this._paddingTop=b,this.domNode.style.paddingTop=this._paddingTop)}setPaddingLeft(a){let b=ca(a);this._paddingLeft!==b&&(this._paddingLeft=b,this.domNode.style.paddingLeft=this._paddingLeft)}setPaddingBottom(a){let b=ca(a);this._paddingBottom!==b&&(this._paddingBottom=b,this.domNode.style.paddingBottom=this._paddingBottom)}setPaddingRight(a){let b=ca(a);this._paddingRight!==b&&(this._paddingRight=b,this.domNode.style.paddingRight=this._paddingRight)}setFontFamily(a){this._fontFamily!==a&&(this._fontFamily=a,this.domNode.style.fontFamily=this._fontFamily)}setFontWeight(a){this._fontWeight!==a&&(this._fontWeight=a,this.domNode.style.fontWeight=this._fontWeight)}setFontSize(a){let b=ca(a);this._fontSize!==b&&(this._fontSize=b,this.domNode.style.fontSize=this._fontSize)}setFontStyle(a){this._fontStyle!==a&&(this._fontStyle=a,this.domNode.style.fontStyle=this._fontStyle)}setFontFeatureSettings(a){this._fontFeatureSettings!==a&&(this._fontFeatureSettings=a,this.domNode.style.fontFeatureSettings=this._fontFeatureSettings)}setFontVariationSettings(a){this._fontVariationSettings!==a&&(this._fontVariationSettings=a,this.domNode.style.fontVariationSettings=this._fontVariationSettings)}setTextDecoration(a){this._textDecoration!==a&&(this._textDecoration=a,this.domNode.style.textDecoration=this._textDecoration)}setLineHeight(a){let b=ca(a);this._lineHeight!==b&&(this._lineHeight=b,this.domNode.style.lineHeight=this._lineHeight)}setLetterSpacing(a){let b=ca(a);this._letterSpacing!==b&&(this._letterSpacing=b,this.domNode.style.letterSpacing=this._letterSpacing)}setClassName(a){this._className!==a&&(this._className=a,this.domNode.className=this._className)}toggleClassName(a,b){this.domNode.classList.toggle(a,b),this._className=this.domNode.className}setDisplay(a){this._display!==a&&(this._display=a,this.domNode.style.display=this._display)}setPosition(a){this._position!==a&&(this._position=a,this.domNode.style.position=this._position)}setVisibility(a){this._visibility!==a&&(this._visibility=a,this.domNode.style.visibility=this._visibility)}setColor(a){this._color!==a&&(this._color=a,this.domNode.style.color=this._color)}setBackgroundColor(a){this._backgroundColor!==a&&(this._backgroundColor=a,this.domNode.style.backgroundColor=this._backgroundColor)}setLayerHinting(a){this._layerHint!==a&&(this._layerHint=a,this.domNode.style.transform=this._layerHint?"translate3d(0px, 0px, 0px)":"")}setBoxShadow(a){this._boxShadow!==a&&(this._boxShadow=a,this.domNode.style.boxShadow=a)}setContain(a){this._contain!==a&&(this._contain=a,this.domNode.style.contain=this._contain)}setAttribute(a,b){this.domNode.setAttribute(a,b)}removeAttribute(a){this.domNode.removeAttribute(a)}appendChild(a){this.domNode.appendChild(a.domNode)}removeChild(a){this.domNode.removeChild(a.domNode)}};function ca(a){return"number"==typeof a?`${a}px`:a}function cb(a){return new b9(a)}var cc=class{constructor(){this._hooks=new aH,this._pointerMoveCallback=null,this._onStopCallback=null}dispose(){this.stopMonitoring(!1),this._hooks.dispose()}stopMonitoring(a,b){if(!this.isMonitoring())return;this._hooks.clear(),this._pointerMoveCallback=null;let c=this._onStopCallback;this._onStopCallback=null,a&&c&&c(b)}isMonitoring(){return!!this._pointerMoveCallback}startMonitoring(a,b,c,d,e){this.isMonitoring()&&this.stopMonitoring(!1),this._pointerMoveCallback=d,this._onStopCallback=e;let f=a;try{a.setPointerCapture(b),this._hooks.add(aF(()=>{try{a.releasePointerCapture(b)}catch{}}))}catch{f=bU(a)}this._hooks.add(b3(f,b8.POINTER_MOVE,a=>{a.buttons!==c?this.stopMonitoring(!0):(a.preventDefault(),this._pointerMoveCallback(a))})),this._hooks.add(b3(f,b8.POINTER_UP,a=>this.stopMonitoring(!0)))}};(k=cG||={}).Tap="-xterm-gesturetap",k.Change="-xterm-gesturechange",k.Start="-xterm-gesturestart",k.End="-xterm-gesturesend",k.Contextmenu="-xterm-gesturecontextmenu";var cd=class a extends aI{constructor(){super(),this.dispatched=!1,this.targets=new aM,this.ignoreTargets=new aM,this.activeTouches={},this.handle=null,this._lastSetTapCountTime=0,this._register(aU.runAndSubscribe(b_,({window:a,disposables:b})=>{b.add(b3(a.document,"touchstart",a=>this.onTouchStart(a),{passive:!1})),b.add(b3(a.document,"touchend",b=>this.onTouchEnd(a,b))),b.add(b3(a.document,"touchmove",a=>this.onTouchMove(a),{passive:!1}))},{window:aK,disposables:this._store}))}static addTarget(b){return a.isTouchDevice()?(a.INSTANCE||(a.INSTANCE=new a),aF(a.INSTANCE.targets.push(b))):aI.None}static ignoreTarget(b){return a.isTouchDevice()?(a.INSTANCE||(a.INSTANCE=new a),aF(a.INSTANCE.ignoreTargets.push(b))):aI.None}static isTouchDevice(){return"ontouchstart"in aK||navigator.maxTouchPoints>0}dispose(){this.handle&&(this.handle.dispose(),this.handle=null),super.dispose()}onTouchStart(a){let b=Date.now();this.handle&&(this.handle.dispose(),this.handle=null);for(let c=0,d=a.targetTouches.length;c<d;c++){let d=a.targetTouches.item(c);this.activeTouches[d.identifier]={id:d.identifier,initialTarget:d.target,initialTimeStamp:b,initialPageX:d.pageX,initialPageY:d.pageY,rollingTimestamps:[b],rollingPageX:[d.pageX],rollingPageY:[d.pageY]};let e=this.newGestureEvent(cG.Start,d.target);e.pageX=d.pageX,e.pageY=d.pageY,this.dispatchEvent(e)}this.dispatched&&(a.preventDefault(),a.stopPropagation(),this.dispatched=!1)}onTouchEnd(b,c){let d=Date.now(),e=Object.keys(this.activeTouches).length;for(let f=0,g=c.changedTouches.length;f<g;f++){let g=c.changedTouches.item(f);if(!this.activeTouches.hasOwnProperty(String(g.identifier))){console.warn("move of an UNKNOWN touch",g);continue}let h=this.activeTouches[g.identifier],i=Date.now()-h.initialTimeStamp;if(i<a.HOLD_DELAY&&30>Math.abs(h.initialPageX-aA(h.rollingPageX))&&30>Math.abs(h.initialPageY-aA(h.rollingPageY))){let a=this.newGestureEvent(cG.Tap,h.initialTarget);a.pageX=aA(h.rollingPageX),a.pageY=aA(h.rollingPageY),this.dispatchEvent(a)}else if(i>=a.HOLD_DELAY&&30>Math.abs(h.initialPageX-aA(h.rollingPageX))&&30>Math.abs(h.initialPageY-aA(h.rollingPageY))){let a=this.newGestureEvent(cG.Contextmenu,h.initialTarget);a.pageX=aA(h.rollingPageX),a.pageY=aA(h.rollingPageY),this.dispatchEvent(a)}else if(1===e){let a=aA(h.rollingPageX),c=aA(h.rollingPageY),e=aA(h.rollingTimestamps)-h.rollingTimestamps[0],f=a-h.rollingPageX[0],g=c-h.rollingPageY[0],i=[...this.targets].filter(a=>h.initialTarget instanceof Node&&a.contains(h.initialTarget));this.inertia(b,i,d,Math.abs(f)/e,f>0?1:-1,a,Math.abs(g)/e,g>0?1:-1,c)}this.dispatchEvent(this.newGestureEvent(cG.End,h.initialTarget)),delete this.activeTouches[g.identifier]}this.dispatched&&(c.preventDefault(),c.stopPropagation(),this.dispatched=!1)}newGestureEvent(a,b){let c=document.createEvent("CustomEvent");return c.initEvent(a,!1,!0),c.initialTarget=b,c.tapCount=0,c}dispatchEvent(b){if(b.type===cG.Tap){let c=new Date().getTime(),d=0;d=c-this._lastSetTapCountTime>a.CLEAR_TAP_COUNT_TIME?1:2,this._lastSetTapCountTime=c,b.tapCount=d}else(b.type===cG.Change||b.type===cG.Contextmenu)&&(this._lastSetTapCountTime=0);if(b.initialTarget instanceof Node){for(let a of this.ignoreTargets)if(a.contains(b.initialTarget))return;let a=[];for(let c of this.targets)if(c.contains(b.initialTarget)){let d=0,e=b.initialTarget;for(;e&&e!==c;)d++,e=e.parentElement;a.push([d,c])}for(let[c,d]of(a.sort((a,b)=>a[0]-b[0]),a))d.dispatchEvent(b),this.dispatched=!0}}inertia(b,c,d,e,f,g,h,i,j){this.handle=cF(b,()=>{let k=Date.now(),l=k-d,m=0,n=0,o=!0;e+=a.SCROLL_FRICTION*l,h+=a.SCROLL_FRICTION*l,e>0&&(o=!1,m=f*e*l),h>0&&(o=!1,n=i*h*l);let p=this.newGestureEvent(cG.Change);p.translationX=m,p.translationY=n,c.forEach(a=>a.dispatchEvent(p)),o||this.inertia(b,c,k,e,f,g+m,h,i,j+n)})}onTouchMove(a){let b=Date.now();for(let c=0,d=a.changedTouches.length;c<d;c++){let d=a.changedTouches.item(c);if(!this.activeTouches.hasOwnProperty(String(d.identifier))){console.warn("end of an UNKNOWN touch",d);continue}let e=this.activeTouches[d.identifier],f=this.newGestureEvent(cG.Change,e.initialTarget);f.translationX=d.pageX-aA(e.rollingPageX),f.translationY=d.pageY-aA(e.rollingPageY),f.pageX=d.pageX,f.pageY=d.pageY,this.dispatchEvent(f),e.rollingPageX.length>3&&(e.rollingPageX.shift(),e.rollingPageY.shift(),e.rollingTimestamps.shift()),e.rollingPageX.push(d.pageX),e.rollingPageY.push(d.pageY),e.rollingTimestamps.push(b)}this.dispatched&&(a.preventDefault(),a.stopPropagation(),this.dispatched=!1)}};cd.SCROLL_FRICTION=-.005,cd.HOLD_DELAY=700,cd.CLEAR_TAP_COUNT_TIME=400,L([function(a,b,c){let d=null,e=null;if("function"==typeof c.value?(d="value",0!==(e=c.value).length&&console.warn("Memoize should only be used in functions with zero parameters")):"function"==typeof c.get&&(d="get",e=c.get),!e)throw Error("not supported");let f=`$memoize$${b}`;c[d]=function(...a){return this.hasOwnProperty(f)||Object.defineProperty(this,f,{configurable:!1,enumerable:!1,writable:!1,value:e.apply(this,a)}),this[f]}}],cd,"isTouchDevice",1);var ce=class extends aI{onclick(a,b){this._register(b3(a,b8.CLICK,c=>b(new bK(bU(a),c))))}onmousedown(a,b){this._register(b3(a,b8.MOUSE_DOWN,c=>b(new bK(bU(a),c))))}onmouseover(a,b){this._register(b3(a,b8.MOUSE_OVER,c=>b(new bK(bU(a),c))))}onmouseleave(a,b){this._register(b3(a,b8.MOUSE_LEAVE,c=>b(new bK(bU(a),c))))}onkeydown(a,b){this._register(b3(a,b8.KEY_DOWN,a=>b(new bH(a))))}onkeyup(a,b){this._register(b3(a,b8.KEY_UP,a=>b(new bH(a))))}oninput(a,b){this._register(b3(a,b8.INPUT,b))}onblur(a,b){this._register(b3(a,b8.BLUR,b))}onfocus(a,b){this._register(b3(a,b8.FOCUS,b))}onchange(a,b){this._register(b3(a,b8.CHANGE,b))}ignoreGesture(a){return cd.ignoreTarget(a)}},cf=class extends ce{constructor(a){super(),this._onActivate=a.onActivate,this.bgDomNode=document.createElement("div"),this.bgDomNode.className="arrow-background",this.bgDomNode.style.position="absolute",this.bgDomNode.style.width=a.bgWidth+"px",this.bgDomNode.style.height=a.bgHeight+"px","u">typeof a.top&&(this.bgDomNode.style.top="0px"),"u">typeof a.left&&(this.bgDomNode.style.left="0px"),"u">typeof a.bottom&&(this.bgDomNode.style.bottom="0px"),"u">typeof a.right&&(this.bgDomNode.style.right="0px"),this.domNode=document.createElement("div"),this.domNode.className=a.className,this.domNode.style.position="absolute",this.domNode.style.width="11px",this.domNode.style.height="11px","u">typeof a.top&&(this.domNode.style.top=a.top+"px"),"u">typeof a.left&&(this.domNode.style.left=a.left+"px"),"u">typeof a.bottom&&(this.domNode.style.bottom=a.bottom+"px"),"u">typeof a.right&&(this.domNode.style.right=a.right+"px"),this._pointerMoveMonitor=this._register(new cc),this._register(b4(this.bgDomNode,b8.POINTER_DOWN,a=>this._arrowPointerDown(a))),this._register(b4(this.domNode,b8.POINTER_DOWN,a=>this._arrowPointerDown(a))),this._pointerdownRepeatTimer=this._register(new b5),this._pointerdownScheduleRepeatTimer=this._register(new bO)}_arrowPointerDown(a){if(!a.target||!(a.target instanceof Element))return;let b=()=>{this._pointerdownRepeatTimer.cancelAndSet(()=>this._onActivate(),1e3/24,bU(a))};this._onActivate(),this._pointerdownRepeatTimer.cancel(),this._pointerdownScheduleRepeatTimer.cancelAndSet(b,200),this._pointerMoveMonitor.startMonitoring(a.target,a.pointerId,a.buttons,a=>{},()=>{this._pointerdownRepeatTimer.cancel(),this._pointerdownScheduleRepeatTimer.cancel()}),a.preventDefault()}},cg=class a{constructor(a,b,c,d,e,f,g){this._forceIntegerValues=a,this._scrollStateBrand=void 0,this._forceIntegerValues&&(b|=0,c|=0,d|=0,e|=0,f|=0,g|=0),this.rawScrollLeft=d,this.rawScrollTop=g,b<0&&(b=0),d+b>c&&(d=c-b),d<0&&(d=0),e<0&&(e=0),g+e>f&&(g=f-e),g<0&&(g=0),this.width=b,this.scrollWidth=c,this.scrollLeft=d,this.height=e,this.scrollHeight=f,this.scrollTop=g}equals(a){return this.rawScrollLeft===a.rawScrollLeft&&this.rawScrollTop===a.rawScrollTop&&this.width===a.width&&this.scrollWidth===a.scrollWidth&&this.scrollLeft===a.scrollLeft&&this.height===a.height&&this.scrollHeight===a.scrollHeight&&this.scrollTop===a.scrollTop}withScrollDimensions(b,c){return new a(this._forceIntegerValues,"u">typeof b.width?b.width:this.width,"u">typeof b.scrollWidth?b.scrollWidth:this.scrollWidth,c?this.rawScrollLeft:this.scrollLeft,"u">typeof b.height?b.height:this.height,"u">typeof b.scrollHeight?b.scrollHeight:this.scrollHeight,c?this.rawScrollTop:this.scrollTop)}withScrollPosition(b){return new a(this._forceIntegerValues,this.width,this.scrollWidth,"u">typeof b.scrollLeft?b.scrollLeft:this.rawScrollLeft,this.height,this.scrollHeight,"u">typeof b.scrollTop?b.scrollTop:this.rawScrollTop)}createScrollEvent(a,b){let c=this.width!==a.width,d=this.scrollWidth!==a.scrollWidth,e=this.scrollLeft!==a.scrollLeft,f=this.height!==a.height,g=this.scrollHeight!==a.scrollHeight,h=this.scrollTop!==a.scrollTop;return{inSmoothScrolling:b,oldWidth:a.width,oldScrollWidth:a.scrollWidth,oldScrollLeft:a.scrollLeft,width:this.width,scrollWidth:this.scrollWidth,scrollLeft:this.scrollLeft,oldHeight:a.height,oldScrollHeight:a.scrollHeight,oldScrollTop:a.scrollTop,height:this.height,scrollHeight:this.scrollHeight,scrollTop:this.scrollTop,widthChanged:c,scrollWidthChanged:d,scrollLeftChanged:e,heightChanged:f,scrollHeightChanged:g,scrollTopChanged:h}}},ch=class extends aI{constructor(a){super(),this._scrollableBrand=void 0,this._onScroll=this._register(new a_),this.onScroll=this._onScroll.event,this._smoothScrollDuration=a.smoothScrollDuration,this._scheduleAtNextAnimationFrame=a.scheduleAtNextAnimationFrame,this._state=new cg(a.forceIntegerValues,0,0,0,0,0,0),this._smoothScrolling=null}dispose(){this._smoothScrolling&&(this._smoothScrolling.dispose(),this._smoothScrolling=null),super.dispose()}setSmoothScrollDuration(a){this._smoothScrollDuration=a}validateScrollPosition(a){return this._state.withScrollPosition(a)}getScrollDimensions(){return this._state}setScrollDimensions(a,b){let c=this._state.withScrollDimensions(a,b);this._setState(c,!!this._smoothScrolling),this._smoothScrolling?.acceptScrollDimensions(this._state)}getFutureScrollPosition(){return this._smoothScrolling?this._smoothScrolling.to:this._state}getCurrentScrollPosition(){return this._state}setScrollPositionNow(a){let b=this._state.withScrollPosition(a);this._smoothScrolling&&(this._smoothScrolling.dispose(),this._smoothScrolling=null),this._setState(b,!1)}setScrollPositionSmooth(a,b){if(0===this._smoothScrollDuration)return this.setScrollPositionNow(a);if(this._smoothScrolling){let c;a={scrollLeft:typeof a.scrollLeft>"u"?this._smoothScrolling.to.scrollLeft:a.scrollLeft,scrollTop:typeof a.scrollTop>"u"?this._smoothScrolling.to.scrollTop:a.scrollTop};let d=this._state.withScrollPosition(a);if(this._smoothScrolling.to.scrollLeft===d.scrollLeft&&this._smoothScrolling.to.scrollTop===d.scrollTop)return;c=b?new ck(this._smoothScrolling.from,d,this._smoothScrolling.startTime,this._smoothScrolling.duration):this._smoothScrolling.combine(this._state,d,this._smoothScrollDuration),this._smoothScrolling.dispose(),this._smoothScrolling=c}else{let b=this._state.withScrollPosition(a);this._smoothScrolling=ck.start(this._state,b,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 a=this._smoothScrolling.tick(),b=this._state.withScrollPosition(a);if(this._setState(b,!0),this._smoothScrolling){if(a.isDone){this._smoothScrolling.dispose(),this._smoothScrolling=null;return}this._smoothScrolling.animationFrameDisposable=this._scheduleAtNextAnimationFrame(()=>{this._smoothScrolling&&(this._smoothScrolling.animationFrameDisposable=null,this._performSmoothScrolling())})}}_setState(a,b){let c=this._state;c.equals(a)||(this._state=a,this._onScroll.fire(this._state.createScrollEvent(c,b)))}},ci=class{constructor(a,b,c){this.scrollLeft=a,this.scrollTop=b,this.isDone=c}};function cj(a,b){let c=b-a;return function(b){return a+c*(1-Math.pow(1-b,3))}}var ck=class a{constructor(a,b,c,d){this.from=a,this.to=b,this.duration=d,this.startTime=c,this.animationFrameDisposable=null,this._initAnimations()}_initAnimations(){this.scrollLeft=this._initAnimation(this.from.scrollLeft,this.to.scrollLeft,this.to.width),this.scrollTop=this._initAnimation(this.from.scrollTop,this.to.scrollTop,this.to.height)}_initAnimation(a,b,c){if(Math.abs(a-b)>2.5*c){var d,e;let f,g;return a<b?(f=a+.75*c,g=b-.75*c):(f=a-.75*c,g=b+.75*c),d=cj(a,f),e=cj(g,b),function(a){return a<.33?d(a/.33):e((a-.33)/(1-.33))}}return cj(a,b)}dispose(){null!==this.animationFrameDisposable&&(this.animationFrameDisposable.dispose(),this.animationFrameDisposable=null)}acceptScrollDimensions(a){this.to=a.withScrollPosition(this.to),this._initAnimations()}tick(){return this._tick(Date.now())}_tick(a){let b=(a-this.startTime)/this.duration;return b<1?new ci(this.scrollLeft(b),this.scrollTop(b),!1):new ci(this.to.scrollLeft,this.to.scrollTop,!0)}combine(b,c,d){return a.start(b,c,d)}static start(b,c,d){return d+=10,new a(b,c,Date.now()-10,d)}},cl=class extends aI{constructor(a,b,c){super(),this._visibility=a,this._visibleClassName=b,this._invisibleClassName=c,this._domNode=null,this._isVisible=!1,this._isNeeded=!1,this._rawShouldBeVisible=!1,this._shouldBeVisible=!1,this._revealTimer=this._register(new bO)}setVisibility(a){this._visibility!==a&&(this._visibility=a,this._updateShouldBeVisible())}setShouldBeVisible(a){this._rawShouldBeVisible=a,this._updateShouldBeVisible()}_applyVisibilitySetting(){return 2!==this._visibility&&(3===this._visibility||this._rawShouldBeVisible)}_updateShouldBeVisible(){let a=this._applyVisibilitySetting();this._shouldBeVisible!==a&&(this._shouldBeVisible=a,this.ensureVisibility())}setIsNeeded(a){this._isNeeded!==a&&(this._isNeeded=a,this.ensureVisibility())}setDomNode(a){this._domNode=a,this._domNode.setClassName(this._invisibleClassName),this.setShouldBeVisible(!1)}ensureVisibility(){this._isNeeded?this._shouldBeVisible?this._reveal():this._hide(!0):this._hide(!1)}_reveal(){this._isVisible||(this._isVisible=!0,this._revealTimer.setIfNotSet(()=>{this._domNode?.setClassName(this._visibleClassName)},0))}_hide(a){this._revealTimer.cancel(),this._isVisible&&(this._isVisible=!1,this._domNode?.setClassName(this._invisibleClassName+(a?" fade":"")))}},cm=class extends ce{constructor(a){super(),this._lazyRender=a.lazyRender,this._host=a.host,this._scrollable=a.scrollable,this._scrollByPage=a.scrollByPage,this._scrollbarState=a.scrollbarState,this._visibilityController=this._register(new cl(a.visibility,"visible scrollbar "+a.extraScrollbarClassName,"invisible scrollbar "+a.extraScrollbarClassName)),this._visibilityController.setIsNeeded(this._scrollbarState.isNeeded()),this._pointerMoveMonitor=this._register(new cc),this._shouldRender=!0,this.domNode=cb(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(b3(this.domNode.domNode,b8.POINTER_DOWN,a=>this._domNodePointerDown(a)))}_createArrow(a){let b=this._register(new cf(a));this.domNode.domNode.appendChild(b.bgDomNode),this.domNode.domNode.appendChild(b.domNode)}_createSlider(a,b,c,d){this.slider=cb(document.createElement("div")),this.slider.setClassName("slider"),this.slider.setPosition("absolute"),this.slider.setTop(a),this.slider.setLeft(b),"number"==typeof c&&this.slider.setWidth(c),"number"==typeof d&&this.slider.setHeight(d),this.slider.setLayerHinting(!0),this.slider.setContain("strict"),this.domNode.domNode.appendChild(this.slider.domNode),this._register(b3(this.slider.domNode,b8.POINTER_DOWN,a=>{0===a.button&&(a.preventDefault(),this._sliderPointerDown(a))})),this.onclick(this.slider.domNode,a=>{a.leftButton&&a.stopPropagation()})}_onElementSize(a){return this._scrollbarState.setVisibleSize(a)&&(this._visibilityController.setIsNeeded(this._scrollbarState.isNeeded()),this._shouldRender=!0,this._lazyRender||this.render()),this._shouldRender}_onElementScrollSize(a){return this._scrollbarState.setScrollSize(a)&&(this._visibilityController.setIsNeeded(this._scrollbarState.isNeeded()),this._shouldRender=!0,this._lazyRender||this.render()),this._shouldRender}_onElementScrollPosition(a){return this._scrollbarState.setScrollPosition(a)&&(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(a){a.target===this.domNode.domNode&&this._onPointerDown(a)}delegatePointerDown(a){let b=this.domNode.domNode.getClientRects()[0].top,c=b+this._scrollbarState.getSliderPosition(),d=b+this._scrollbarState.getSliderPosition()+this._scrollbarState.getSliderSize(),e=this._sliderPointerPosition(a);c<=e&&e<=d?0===a.button&&(a.preventDefault(),this._sliderPointerDown(a)):this._onPointerDown(a)}_onPointerDown(a){let b,c;if(a.target===this.domNode.domNode&&"number"==typeof a.offsetX&&"number"==typeof a.offsetY)b=a.offsetX,c=a.offsetY;else{var d;let e,f,g=(e=(d=this.domNode.domNode).getBoundingClientRect(),f=bU(d),{left:e.left+f.scrollX,top:e.top+f.scrollY,width:e.width,height:e.height});b=a.pageX-g.left,c=a.pageY-g.top}let e=this._pointerDownRelativePosition(b,c);this._setDesiredScrollPositionNow(this._scrollByPage?this._scrollbarState.getDesiredScrollPositionFromOffsetPaged(e):this._scrollbarState.getDesiredScrollPositionFromOffset(e)),0===a.button&&(a.preventDefault(),this._sliderPointerDown(a))}_sliderPointerDown(a){if(!a.target||!(a.target instanceof Element))return;let b=this._sliderPointerPosition(a),c=this._sliderOrthogonalPointerPosition(a),d=this._scrollbarState.clone();this.slider.toggleClassName("active",!0),this._pointerMoveMonitor.startMonitoring(a.target,a.pointerId,a.buttons,a=>{let e=Math.abs(this._sliderOrthogonalPointerPosition(a)-c);if(bj&&e>140)return void this._setDesiredScrollPositionNow(d.getScrollPosition());let f=this._sliderPointerPosition(a)-b;this._setDesiredScrollPositionNow(d.getDesiredScrollPositionFromDelta(f))},()=>{this.slider.toggleClassName("active",!1),this._host.onDragEnd()}),this._host.onDragStart()}_setDesiredScrollPositionNow(a){let b={};this.writeScrollPosition(b,a),this._scrollable.setScrollPositionNow(b)}updateScrollbarSize(a){this._updateScrollbarSize(a),this._scrollbarState.setScrollbarSize(a),this._shouldRender=!0,this._lazyRender||this.render()}isNeeded(){return this._scrollbarState.isNeeded()}},cn=class a{constructor(a,b,c,d,e,f){this._scrollbarSize=Math.round(b),this._oppositeScrollbarSize=Math.round(c),this._arrowSize=Math.round(a),this._visibleSize=d,this._scrollSize=e,this._scrollPosition=f,this._computedAvailableSize=0,this._computedIsNeeded=!1,this._computedSliderSize=0,this._computedSliderRatio=0,this._computedSliderPosition=0,this._refreshComputedValues()}clone(){return new a(this._arrowSize,this._scrollbarSize,this._oppositeScrollbarSize,this._visibleSize,this._scrollSize,this._scrollPosition)}setVisibleSize(a){let b=Math.round(a);return this._visibleSize!==b&&(this._visibleSize=b,this._refreshComputedValues(),!0)}setScrollSize(a){let b=Math.round(a);return this._scrollSize!==b&&(this._scrollSize=b,this._refreshComputedValues(),!0)}setScrollPosition(a){let b=Math.round(a);return this._scrollPosition!==b&&(this._scrollPosition=b,this._refreshComputedValues(),!0)}setScrollbarSize(a){this._scrollbarSize=Math.round(a)}setOppositeScrollbarSize(a){this._oppositeScrollbarSize=Math.round(a)}static _computeValues(a,b,c,d,e){let f=Math.max(0,c-a),g=Math.max(0,f-2*b),h=d>0&&d>c;if(!h)return{computedAvailableSize:Math.round(f),computedIsNeeded:h,computedSliderSize:Math.round(g),computedSliderRatio:0,computedSliderPosition:0};let i=Math.round(Math.max(20,Math.floor(c*g/d))),j=(g-i)/(d-c);return{computedAvailableSize:Math.round(f),computedIsNeeded:h,computedSliderSize:Math.round(i),computedSliderRatio:j,computedSliderPosition:Math.round(e*j)}}_refreshComputedValues(){let b=a._computeValues(this._oppositeScrollbarSize,this._arrowSize,this._visibleSize,this._scrollSize,this._scrollPosition);this._computedAvailableSize=b.computedAvailableSize,this._computedIsNeeded=b.computedIsNeeded,this._computedSliderSize=b.computedSliderSize,this._computedSliderRatio=b.computedSliderRatio,this._computedSliderPosition=b.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(a){return this._computedIsNeeded?Math.round((a-this._arrowSize-this._computedSliderSize/2)/this._computedSliderRatio):0}getDesiredScrollPositionFromOffsetPaged(a){if(!this._computedIsNeeded)return 0;let b=a-this._arrowSize,c=this._scrollPosition;return b<this._computedSliderPosition?c-=this._visibleSize:c+=this._visibleSize,c}getDesiredScrollPositionFromDelta(a){return this._computedIsNeeded?Math.round((this._computedSliderPosition+a)/this._computedSliderRatio):0}},co=class extends cm{constructor(a,b,c){let d=a.getScrollDimensions(),e=a.getCurrentScrollPosition();if(super({lazyRender:b.lazyRender,host:c,scrollbarState:new cn(b.horizontalHasArrows?b.arrowSize:0,2===b.horizontal?0:b.horizontalScrollbarSize,2===b.vertical?0:b.verticalScrollbarSize,d.width,d.scrollWidth,e.scrollLeft),visibility:b.horizontal,extraScrollbarClassName:"horizontal",scrollable:a,scrollByPage:b.scrollByPage}),b.horizontalHasArrows)throw Error("horizontalHasArrows is not supported in xterm.js");this._createSlider(Math.floor((b.horizontalScrollbarSize-b.horizontalSliderSize)/2),0,void 0,b.horizontalSliderSize)}_updateSlider(a,b){this.slider.setWidth(a),this.slider.setLeft(b)}_renderDomNode(a,b){this.domNode.setWidth(a),this.domNode.setHeight(b),this.domNode.setLeft(0),this.domNode.setBottom(0)}onDidScroll(a){return this._shouldRender=this._onElementScrollSize(a.scrollWidth)||this._shouldRender,this._shouldRender=this._onElementScrollPosition(a.scrollLeft)||this._shouldRender,this._shouldRender=this._onElementSize(a.width)||this._shouldRender,this._shouldRender}_pointerDownRelativePosition(a,b){return a}_sliderPointerPosition(a){return a.pageX}_sliderOrthogonalPointerPosition(a){return a.pageY}_updateScrollbarSize(a){this.slider.setHeight(a)}writeScrollPosition(a,b){a.scrollLeft=b}updateOptions(a){this.updateScrollbarSize(2===a.horizontal?0:a.horizontalScrollbarSize),this._scrollbarState.setOppositeScrollbarSize(2===a.vertical?0:a.verticalScrollbarSize),this._visibilityController.setVisibility(a.horizontal),this._scrollByPage=a.scrollByPage}},cp=class extends cm{constructor(a,b,c){let d=a.getScrollDimensions(),e=a.getCurrentScrollPosition();if(super({lazyRender:b.lazyRender,host:c,scrollbarState:new cn(b.verticalHasArrows?b.arrowSize:0,2===b.vertical?0:b.verticalScrollbarSize,0,d.height,d.scrollHeight,e.scrollTop),visibility:b.vertical,extraScrollbarClassName:"vertical",scrollable:a,scrollByPage:b.scrollByPage}),b.verticalHasArrows)throw Error("horizontalHasArrows is not supported in xterm.js");this._createSlider(0,Math.floor((b.verticalScrollbarSize-b.verticalSliderSize)/2),b.verticalSliderSize,void 0)}_updateSlider(a,b){this.slider.setHeight(a),this.slider.setTop(b)}_renderDomNode(a,b){this.domNode.setWidth(b),this.domNode.setHeight(a),this.domNode.setRight(0),this.domNode.setTop(0)}onDidScroll(a){return this._shouldRender=this._onElementScrollSize(a.scrollHeight)||this._shouldRender,this._shouldRender=this._onElementScrollPosition(a.scrollTop)||this._shouldRender,this._shouldRender=this._onElementSize(a.height)||this._shouldRender,this._shouldRender}_pointerDownRelativePosition(a,b){return b}_sliderPointerPosition(a){return a.pageY}_sliderOrthogonalPointerPosition(a){return a.pageX}_updateScrollbarSize(a){this.slider.setWidth(a)}writeScrollPosition(a,b){a.scrollTop=b}updateOptions(a){this.updateScrollbarSize(2===a.vertical?0:a.verticalScrollbarSize),this._scrollbarState.setOppositeScrollbarSize(0),this._visibilityController.setVisibility(a.vertical),this._scrollByPage=a.scrollByPage}},cq=class{constructor(a,b,c){this.timestamp=a,this.deltaX=b,this.deltaY=c,this.score=0}},cr=class{constructor(){this._capacity=5,this._memory=[],this._front=-1,this._rear=-1}isPhysicalMouseWheel(){if(-1===this._front&&-1===this._rear)return!1;let a=1,b=0,c=1,d=this._rear;for(;;){let e=d===this._front?a:Math.pow(2,-c);if(a-=e,b+=this._memory[d].score*e,d===this._front)break;d=(this._capacity+d-1)%this._capacity,c++}return b<=.5}acceptStandardWheelEvent(a){if(a5){var b;let c=(b=bU(a.browserEvent),a1.INSTANCE.getZoomFactor(b));this.accept(Date.now(),a.deltaX*c,a.deltaY*c)}else this.accept(Date.now(),a.deltaX,a.deltaY)}accept(a,b,c){let d=null,e=new cq(a,b,c);-1===this._front&&-1===this._rear?(this._memory[0]=e,this._front=0,this._rear=0):(d=this._memory[this._rear],this._rear=(this._rear+1)%this._capacity,this._rear===this._front&&(this._front=(this._front+1)%this._capacity),this._memory[this._rear]=e),e.score=this._computeScore(e,d)}_computeScore(a,b){if(Math.abs(a.deltaX)>0&&Math.abs(a.deltaY)>0)return 1;let c=.5;if(this._isAlmostInt(a.deltaX)&&this._isAlmostInt(a.deltaY)||(c+=.25),b){let d=Math.abs(a.deltaX),e=Math.abs(a.deltaY),f=Math.abs(b.deltaX),g=Math.abs(b.deltaY),h=Math.max(Math.min(d,f),1),i=Math.max(Math.min(e,g),1),j=Math.max(e,g);Math.max(d,f)%h==0&&j%i==0&&(c-=.5)}return Math.min(Math.max(c,0),1)}_isAlmostInt(a){return .01>Math.abs(Math.round(a)-a)}};cr.INSTANCE=new cr;var cs=class extends ce{constructor(a,b,c){super(),this._onScroll=this._register(new a_),this.onScroll=this._onScroll.event,this._onWillScroll=this._register(new a_),this.onWillScroll=this._onWillScroll.event,this._options=function(a){let b={lazyRender:"u">typeof a.lazyRender&&a.lazyRender,className:"u">typeof a.className?a.className:"",useShadows:!("u">typeof a.useShadows)||a.useShadows,handleMouseWheel:!("u">typeof a.handleMouseWheel)||a.handleMouseWheel,flipAxes:"u">typeof a.flipAxes&&a.flipAxes,consumeMouseWheelIfScrollbarIsNeeded:"u">typeof a.consumeMouseWheelIfScrollbarIsNeeded&&a.consumeMouseWheelIfScrollbarIsNeeded,alwaysConsumeMouseWheel:"u">typeof a.alwaysConsumeMouseWheel&&a.alwaysConsumeMouseWheel,scrollYToX:"u">typeof a.scrollYToX&&a.scrollYToX,mouseWheelScrollSensitivity:"u">typeof a.mouseWheelScrollSensitivity?a.mouseWheelScrollSensitivity:1,fastScrollSensitivity:"u">typeof a.fastScrollSensitivity?a.fastScrollSensitivity:5,scrollPredominantAxis:!("u">typeof a.scrollPredominantAxis)||a.scrollPredominantAxis,mouseWheelSmoothScroll:!("u">typeof a.mouseWheelSmoothScroll)||a.mouseWheelSmoothScroll,arrowSize:"u">typeof a.arrowSize?a.arrowSize:11,listenOnDomNode:"u">typeof a.listenOnDomNode?a.listenOnDomNode:null,horizontal:"u">typeof a.horizontal?a.horizontal:1,horizontalScrollbarSize:"u">typeof a.horizontalScrollbarSize?a.horizontalScrollbarSize:10,horizontalSliderSize:"u">typeof a.horizontalSliderSize?a.horizontalSliderSize:0,horizontalHasArrows:"u">typeof a.horizontalHasArrows&&a.horizontalHasArrows,vertical:"u">typeof a.vertical?a.vertical:1,verticalScrollbarSize:"u">typeof a.verticalScrollbarSize?a.verticalScrollbarSize:10,verticalHasArrows:"u">typeof a.verticalHasArrows&&a.verticalHasArrows,verticalSliderSize:"u">typeof a.verticalSliderSize?a.verticalSliderSize:0,scrollByPage:"u">typeof a.scrollByPage&&a.scrollByPage};return b.horizontalSliderSize="u">typeof a.horizontalSliderSize?a.horizontalSliderSize:b.horizontalScrollbarSize,b.verticalSliderSize="u">typeof a.verticalSliderSize?a.verticalSliderSize:b.verticalScrollbarSize,bk&&(b.className+=" mac"),b}(b),this._scrollable=c,this._register(this._scrollable.onScroll(a=>{this._onWillScroll.fire(a),this._onDidScroll(a),this._onScroll.fire(a)}));let d={onMouseWheel:a=>this._onMouseWheel(a),onDragStart:()=>this._onDragStart(),onDragEnd:()=>this._onDragEnd()};this._verticalScrollbar=this._register(new cp(this._scrollable,this._options,d)),this._horizontalScrollbar=this._register(new co(this._scrollable,this._options,d)),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(a),this._domNode.appendChild(this._horizontalScrollbar.domNode.domNode),this._domNode.appendChild(this._verticalScrollbar.domNode.domNode),this._options.useShadows?(this._leftShadowDomNode=cb(document.createElement("div")),this._leftShadowDomNode.setClassName("shadow"),this._domNode.appendChild(this._leftShadowDomNode.domNode),this._topShadowDomNode=cb(document.createElement("div")),this._topShadowDomNode.setClassName("shadow"),this._domNode.appendChild(this._topShadowDomNode.domNode),this._topLeftShadowDomNode=cb(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,a=>this._onMouseOver(a)),this.onmouseleave(this._listenOnDomNode,a=>this._onMouseLeave(a)),this._hideTimeout=this._register(new bO),this._isDragging=!1,this._mouseIsOver=!1,this._shouldRender=!0,this._revealOnScroll=!0}get options(){return this._options}dispose(){this._mouseWheelToDispose=aE(this._mouseWheelToDispose),super.dispose()}getDomNode(){return this._domNode}getOverviewRulerLayoutInfo(){return{parent:this._domNode,insertBefore:this._verticalScrollbar.domNode.domNode}}delegateVerticalScrollbarPointerDown(a){this._verticalScrollbar.delegatePointerDown(a)}getScrollDimensions(){return this._scrollable.getScrollDimensions()}setScrollDimensions(a){this._scrollable.setScrollDimensions(a,!1)}updateClassName(a){this._options.className=a,bk&&(this._options.className+=" mac"),this._domNode.className="xterm-scrollable-element "+this._options.className}updateOptions(a){"u">typeof a.handleMouseWheel&&(this._options.handleMouseWheel=a.handleMouseWheel,this._setListeningToMouseWheel(this._options.handleMouseWheel)),"u">typeof a.mouseWheelScrollSensitivity&&(this._options.mouseWheelScrollSensitivity=a.mouseWheelScrollSensitivity),"u">typeof a.fastScrollSensitivity&&(this._options.fastScrollSensitivity=a.fastScrollSensitivity),"u">typeof a.scrollPredominantAxis&&(this._options.scrollPredominantAxis=a.scrollPredominantAxis),"u">typeof a.horizontal&&(this._options.horizontal=a.horizontal),"u">typeof a.vertical&&(this._options.vertical=a.vertical),"u">typeof a.horizontalScrollbarSize&&(this._options.horizontalScrollbarSize=a.horizontalScrollbarSize),"u">typeof a.verticalScrollbarSize&&(this._options.verticalScrollbarSize=a.verticalScrollbarSize),"u">typeof a.scrollByPage&&(this._options.scrollByPage=a.scrollByPage),this._horizontalScrollbar.updateOptions(this._options),this._verticalScrollbar.updateOptions(this._options),this._options.lazyRender||this._render()}setRevealOnScroll(a){this._revealOnScroll=a}delegateScrollFromMouseWheelEvent(a){this._onMouseWheel(new bL(a))}_setListeningToMouseWheel(a){if(this._mouseWheelToDispose.length>0!==a&&(this._mouseWheelToDispose=aE(this._mouseWheelToDispose),a)){let a=a=>{this._onMouseWheel(new bL(a))};this._mouseWheelToDispose.push(b3(this._listenOnDomNode,b8.MOUSE_WHEEL,a,{passive:!1}))}}_onMouseWheel(a){if(a.browserEvent?.defaultPrevented)return;let b=cr.INSTANCE;b.acceptStandardWheelEvent(a);let c=!1;if(a.deltaY||a.deltaX){let d=a.deltaY*this._options.mouseWheelScrollSensitivity,e=a.deltaX*this._options.mouseWheelScrollSensitivity;this._options.scrollPredominantAxis&&(this._options.scrollYToX&&e+d===0?e=d=0:Math.abs(d)>=Math.abs(e)?e=0:d=0),this._options.flipAxes&&([d,e]=[e,d]);let f=!bk&&a.browserEvent&&a.browserEvent.shiftKey;(this._options.scrollYToX||f)&&!e&&(e=d,d=0),a.browserEvent&&a.browserEvent.altKey&&(e*=this._options.fastScrollSensitivity,d*=this._options.fastScrollSensitivity);let g=this._scrollable.getFutureScrollPosition(),h={};if(d){let a=50*d,b=g.scrollTop-(a<0?Math.floor(a):Math.ceil(a));this._verticalScrollbar.writeScrollPosition(h,b)}if(e){let a=50*e,b=g.scrollLeft-(a<0?Math.floor(a):Math.ceil(a));this._horizontalScrollbar.writeScrollPosition(h,b)}h=this._scrollable.validateScrollPosition(h),(g.scrollLeft!==h.scrollLeft||g.scrollTop!==h.scrollTop)&&(this._options.mouseWheelSmoothScroll&&b.isPhysicalMouseWheel()?this._scrollable.setScrollPositionSmooth(h):this._scrollable.setScrollPositionNow(h),c=!0)}let d=c;!d&&this._options.alwaysConsumeMouseWheel&&(d=!0),!d&&this._options.consumeMouseWheelIfScrollbarIsNeeded&&(this._verticalScrollbar.isNeeded()||this._horizontalScrollbar.isNeeded())&&(d=!0),d&&(a.preventDefault(),a.stopPropagation())}_onDidScroll(a){this._shouldRender=this._horizontalScrollbar.onDidScroll(a)||this._shouldRender,this._shouldRender=this._verticalScrollbar.onDidScroll(a)||this._shouldRender,this._options.useShadows&&(this._shouldRender=!0),this._revealOnScroll&&this._reveal(),this._options.lazyRender||this._render()}renderNow(){if(!this._options.lazyRender)throw 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 a=this._scrollable.getCurrentScrollPosition(),b=a.scrollTop>0,c=a.scrollLeft>0,d=c?" left":"",e=b?" top":"";this._leftShadowDomNode.setClassName(`shadow${d}`),this._topShadowDomNode.setClassName(`shadow${e}`),this._topLeftShadowDomNode.setClassName(`shadow${c||b?" top-left-corner":""}${e}${d}`)}}_onDragStart(){this._isDragging=!0,this._reveal()}_onDragEnd(){this._isDragging=!1,this._hide()}_onMouseLeave(a){this._mouseIsOver=!1,this._hide()}_onMouseOver(a){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(),500)}},ct=class extends cs{constructor(a,b,c){super(a,b,c)}setScrollPosition(a){a.reuseAnimation?this._scrollable.setScrollPositionSmooth(a,a.reuseAnimation):this._scrollable.setScrollPositionNow(a)}getScrollPosition(){return this._scrollable.getCurrentScrollPosition()}},cu=class extends aI{constructor(a,b,c,d,e,f,g,h){super(),this._bufferService=c,this._optionsService=g,this._renderService=h,this._onRequestScrollLines=this._register(new a_),this.onRequestScrollLines=this._onRequestScrollLines.event,this._isSyncing=!1,this._isHandlingScroll=!1,this._suppressOnScrollHandler=!1;let i=this._register(new ch({forceIntegerValues:!1,smoothScrollDuration:this._optionsService.rawOptions.smoothScrollDuration,scheduleAtNextAnimationFrame:a=>cF(d.window,a)}));this._register(this._optionsService.onSpecificOptionChange("smoothScrollDuration",()=>{i.setSmoothScrollDuration(this._optionsService.rawOptions.smoothScrollDuration)})),this._scrollableElement=this._register(new ct(b,{vertical:1,horizontal:2,useShadows:!1,mouseWheelSmoothScroll:!0,...this._getChangeOptions()},i)),this._register(this._optionsService.onMultipleOptionChange(["scrollSensitivity","fastScrollSensitivity","overviewRuler"],()=>this._scrollableElement.updateOptions(this._getChangeOptions()))),this._register(e.onProtocolChange(a=>{this._scrollableElement.updateOptions({handleMouseWheel:!(16&a)})})),this._scrollableElement.setScrollDimensions({height:0,scrollHeight:0}),this._register(aU.runAndSubscribe(f.onChangeColors,()=>{this._scrollableElement.getDomNode().style.backgroundColor=f.colors.background.css})),a.appendChild(this._scrollableElement.getDomNode()),this._register(aF(()=>this._scrollableElement.getDomNode().remove())),this._styleElement=d.mainDocument.createElement("style"),b.appendChild(this._styleElement),this._register(aF(()=>this._styleElement.remove())),this._register(aU.runAndSubscribe(f.onChangeColors,()=>{this._styleElement.textContent=[".xterm .xterm-scrollable-element > .scrollbar > .slider {",` background: ${f.colors.scrollbarSliderBackground.css};`,"}",".xterm .xterm-scrollable-element > .scrollbar > .slider:hover {",` background: ${f.colors.scrollbarSliderHoverBackground.css};`,"}",".xterm .xterm-scrollable-element > .scrollbar > .slider.active {",` background: ${f.colors.scrollbarSliderActiveBackground.css};`,"}"].join(`
|
|
25
|
+
`)})),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(a=>this._handleScroll(a)))}scrollLines(a){let b=this._scrollableElement.getScrollPosition();this._scrollableElement.setScrollPosition({reuseAnimation:!0,scrollTop:b.scrollTop+a*this._renderService.dimensions.css.cell.height})}scrollToLine(a,b){b&&(this._latestYDisp=a),this._scrollableElement.setScrollPosition({reuseAnimation:!b,scrollTop:a*this._renderService.dimensions.css.cell.height})}_getChangeOptions(){return{mouseWheelScrollSensitivity:this._optionsService.rawOptions.scrollSensitivity,fastScrollSensitivity:this._optionsService.rawOptions.fastScrollSensitivity,verticalScrollbarSize:this._optionsService.rawOptions.overviewRuler?.width||14}}queueSync(a){void 0!==a&&(this._latestYDisp=a),void 0===this._queuedAnimationFrame&&(this._queuedAnimationFrame=this._renderService.addRefreshCallback(()=>{this._queuedAnimationFrame=void 0,this._sync(this._latestYDisp)}))}_sync(a=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,a!==this._latestYDisp&&this._scrollableElement.setScrollPosition({scrollTop:a*this._renderService.dimensions.css.cell.height}),this._isSyncing=!1)}_handleScroll(a){if(!this._renderService||this._isHandlingScroll||this._suppressOnScrollHandler)return;this._isHandlingScroll=!0;let b=Math.round(a.scrollTop/this._renderService.dimensions.css.cell.height),c=b-this._bufferService.buffer.ydisp;0!==c&&(this._latestYDisp=b,this._onRequestScrollLines.fire(c)),this._isHandlingScroll=!1}};cu=L([M(2,ab),M(3,an),M(4,ac),M(5,as),M(6,ah),M(7,ap)],cu);var cv=class extends aI{constructor(a,b,c,d,e){super(),this._screenElement=a,this._bufferService=b,this._coreBrowserService=c,this._decorationService=d,this._renderService=e,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(a=>this._removeDecoration(a))),this._register(aF(()=>{this._container.remove(),this._decorationElements.clear()}))}_queueRefresh(){void 0===this._animationFrame&&(this._animationFrame=this._renderService.addRefreshCallback(()=>{this._doRefreshDecorations(),this._animationFrame=void 0}))}_doRefreshDecorations(){for(let a of this._decorationService.decorations)this._renderDecoration(a);this._dimensionsChanged=!1}_renderDecoration(a){this._refreshStyle(a),this._dimensionsChanged&&this._refreshXPosition(a)}_createElement(a){let b=this._coreBrowserService.mainDocument.createElement("div");b.classList.add("xterm-decoration"),b.classList.toggle("xterm-decoration-top-layer",a?.options?.layer==="top"),b.style.width=`${Math.round((a.options.width||1)*this._renderService.dimensions.css.cell.width)}px`,b.style.height=`${(a.options.height||1)*this._renderService.dimensions.css.cell.height}px`,b.style.top=`${(a.marker.line-this._bufferService.buffers.active.ydisp)*this._renderService.dimensions.css.cell.height}px`,b.style.lineHeight=`${this._renderService.dimensions.css.cell.height}px`;let c=a.options.x??0;return c&&c>this._bufferService.cols&&(b.style.display="none"),this._refreshXPosition(a,b),b}_refreshStyle(a){let b=a.marker.line-this._bufferService.buffers.active.ydisp;if(b<0||b>=this._bufferService.rows)a.element&&(a.element.style.display="none",a.onRenderEmitter.fire(a.element));else{let c=this._decorationElements.get(a);c||(c=this._createElement(a),a.element=c,this._decorationElements.set(a,c),this._container.appendChild(c),a.onDispose(()=>{this._decorationElements.delete(a),c.remove()})),c.style.display=this._altBufferIsActive?"none":"block",this._altBufferIsActive||(c.style.width=`${Math.round((a.options.width||1)*this._renderService.dimensions.css.cell.width)}px`,c.style.height=`${(a.options.height||1)*this._renderService.dimensions.css.cell.height}px`,c.style.top=`${b*this._renderService.dimensions.css.cell.height}px`,c.style.lineHeight=`${this._renderService.dimensions.css.cell.height}px`),a.onRenderEmitter.fire(c)}}_refreshXPosition(a,b=a.element){if(!b)return;let c=a.options.x??0;"right"===(a.options.anchor||"left")?b.style.right=c?`${c*this._renderService.dimensions.css.cell.width}px`:"":b.style.left=c?`${c*this._renderService.dimensions.css.cell.width}px`:""}_removeDecoration(a){this._decorationElements.get(a)?.remove(),this._decorationElements.delete(a),a.dispose()}};cv=L([M(1,ab),M(2,an),M(3,ak),M(4,ap)],cv);var cw=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(a){if(a.options.overviewRulerOptions){for(let b of this._zones)if(b.color===a.options.overviewRulerOptions.color&&b.position===a.options.overviewRulerOptions.position){if(this._lineIntersectsZone(b,a.marker.line))return;if(this._lineAdjacentToZone(b,a.marker.line,a.options.overviewRulerOptions.position))return void this._addLineToZone(b,a.marker.line)}if(this._zonePoolIndex<this._zonePool.length){this._zonePool[this._zonePoolIndex].color=a.options.overviewRulerOptions.color,this._zonePool[this._zonePoolIndex].position=a.options.overviewRulerOptions.position,this._zonePool[this._zonePoolIndex].startBufferLine=a.marker.line,this._zonePool[this._zonePoolIndex].endBufferLine=a.marker.line,this._zones.push(this._zonePool[this._zonePoolIndex++]);return}this._zones.push({color:a.options.overviewRulerOptions.color,position:a.options.overviewRulerOptions.position,startBufferLine:a.marker.line,endBufferLine:a.marker.line}),this._zonePool.push(this._zones[this._zones.length-1]),this._zonePoolIndex++}}setPadding(a){this._linePadding=a}_lineIntersectsZone(a,b){return b>=a.startBufferLine&&b<=a.endBufferLine}_lineAdjacentToZone(a,b,c){return b>=a.startBufferLine-this._linePadding[c||"full"]&&b<=a.endBufferLine+this._linePadding[c||"full"]}_addLineToZone(a,b){a.startBufferLine=Math.min(a.startBufferLine,b),a.endBufferLine=Math.max(a.endBufferLine,b)}},cx={full:0,left:0,center:0,right:0},cy={full:0,left:0,center:0,right:0},cz={full:0,left:0,center:0,right:0},cA=class extends aI{constructor(a,b,c,d,e,f,g,h){super(),this._viewportElement=a,this._screenElement=b,this._bufferService=c,this._decorationService=d,this._renderService=e,this._optionsService=f,this._themeService=g,this._coreBrowserService=h,this._colorZoneStore=new cw,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(),this._viewportElement.parentElement?.insertBefore(this._canvas,this._viewportElement),this._register(aF(()=>this._canvas?.remove()));let i=this._canvas.getContext("2d");if(i)this._ctx=i;else throw 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(){return this._optionsService.options.overviewRuler?.width||0}_refreshDrawConstants(){let a=Math.floor((this._canvas.width-1)/3),b=Math.ceil((this._canvas.width-1)/3);cy.full=this._canvas.width,cy.left=a,cy.center=b,cy.right=a,this._refreshDrawHeightConstants(),cz.full=1,cz.left=1,cz.center=1+cy.left,cz.right=1+cy.left+cy.center}_refreshDrawHeightConstants(){cx.full=Math.round(2*this._coreBrowserService.dpr);let a=Math.round(Math.max(Math.min(this._canvas.height/this._bufferService.buffer.lines.length,12),6)*this._coreBrowserService.dpr);cx.left=a,cx.center=a,cx.right=a}_refreshColorZonePadding(){this._colorZoneStore.setPadding({full:Math.floor(this._bufferService.buffers.active.lines.length/(this._canvas.height-1)*cx.full),left:Math.floor(this._bufferService.buffers.active.lines.length/(this._canvas.height-1)*cx.left),center:Math.floor(this._bufferService.buffers.active.lines.length/(this._canvas.height-1)*cx.center),right:Math.floor(this._bufferService.buffers.active.lines.length/(this._canvas.height-1)*cx.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(){for(let a of(this._shouldUpdateDimensions&&this._refreshCanvasDimensions(),this._ctx.clearRect(0,0,this._canvas.width,this._canvas.height),this._colorZoneStore.clear(),this._decorationService.decorations))this._colorZoneStore.addDecoration(a);this._ctx.lineWidth=1,this._renderRulerOutline();let a=this._colorZoneStore.zones;for(let b of a)"full"!==b.position&&this._renderColorZone(b);for(let b of a)"full"===b.position&&this._renderColorZone(b);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(a){this._ctx.fillStyle=a.color,this._ctx.fillRect(cz[a.position||"full"],Math.round((this._canvas.height-1)*(a.startBufferLine/this._bufferService.buffers.active.lines.length)-cx[a.position||"full"]/2),cy[a.position||"full"],Math.round((this._canvas.height-1)*((a.endBufferLine-a.startBufferLine)/this._bufferService.buffers.active.lines.length)+cx[a.position||"full"]))}_queueRefresh(a,b){this._shouldUpdateDimensions=a||this._shouldUpdateDimensions,this._shouldUpdateAnchor=b||this._shouldUpdateAnchor,void 0===this._animationFrame&&(this._animationFrame=this._coreBrowserService.window.requestAnimationFrame(()=>{this._refreshDecorations(),this._animationFrame=void 0}))}};cA=L([M(2,ab),M(3,ak),M(4,ap),M(5,ah),M(6,as),M(7,an)],cA),(l=cH||={}).NUL="\0",l.SOH="\x01",l.STX="\x02",l.ETX="\x03",l.EOT="\x04",l.ENQ="\x05",l.ACK="\x06",l.BEL="\x07",l.BS="\b",l.HT=" ",l.LF=`
|
|
26
|
+
`,l.VT="\v",l.FF="\f",l.CR="\r",l.SO="\x0e",l.SI="\x0f",l.DLE="\x10",l.DC1="\x11",l.DC2="\x12",l.DC3="\x13",l.DC4="\x14",l.NAK="\x15",l.SYN="\x16",l.ETB="\x17",l.CAN="\x18",l.EM="\x19",l.SUB="\x1a",l.ESC="\x1b",l.FS="\x1c",l.GS="\x1d",l.RS="\x1e",l.US="\x1f",l.SP=" ",l.DEL="",(m=cI||={}).PAD="",m.HOP="",m.BPH="",m.NBH="",m.IND="",m.NEL="
",m.SSA="",m.ESA="",m.HTS="",m.HTJ="",m.VTS="",m.PLD="",m.PLU="",m.RI="",m.SS2="",m.SS3="",m.DCS="",m.PU1="",m.PU2="",m.STS="",m.CCH="",m.MW="",m.SPA="",m.EPA="",m.SOS="",m.SGCI="",m.SCI="",m.CSI="",m.ST="",m.OSC="",m.PM="",m.APC="",(cJ||={}).ST=`${cH.ESC}\\`;var cB=class{constructor(a,b,c,d,e,f){this._textarea=a,this._compositionView=b,this._bufferService=c,this._optionsService=d,this._coreService=e,this._renderService=f,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(a){this._compositionView.textContent=a.data,this.updateCompositionElements(),setTimeout(()=>{this._compositionPosition.end=this._textarea.value.length},0)}compositionend(){this._finalizeComposition(!0)}keydown(a){if(this._isComposing||this._isSendingComposition){if(20===a.keyCode||229===a.keyCode||16===a.keyCode||17===a.keyCode||18===a.keyCode)return!1;this._finalizeComposition(!1)}return 229!==a.keyCode||(this._handleAnyTextareaChanges(),!1)}_finalizeComposition(a){if(this._compositionView.classList.remove("active"),this._isComposing=!1,a){let a={start:this._compositionPosition.start,end:this._compositionPosition.end};this._isSendingComposition=!0,setTimeout(()=>{if(this._isSendingComposition){let b;this._isSendingComposition=!1,a.start+=this._dataAlreadySent.length,(b=this._isComposing?this._textarea.value.substring(a.start,this._compositionPosition.start):this._textarea.value.substring(a.start)).length>0&&this._coreService.triggerDataEvent(b,!0)}},0)}else{this._isSendingComposition=!1;let a=this._textarea.value.substring(this._compositionPosition.start,this._compositionPosition.end);this._coreService.triggerDataEvent(a,!0)}}_handleAnyTextareaChanges(){let a=this._textarea.value;setTimeout(()=>{if(!this._isComposing){let b=this._textarea.value,c=b.replace(a,"");this._dataAlreadySent=c,b.length>a.length?this._coreService.triggerDataEvent(c,!0):b.length<a.length?this._coreService.triggerDataEvent(`${cH.DEL}`,!0):b.length===a.length&&b!==a&&this._coreService.triggerDataEvent(b,!0)}},0)}updateCompositionElements(a){if(this._isComposing){if(this._bufferService.buffer.isCursorInViewport){let a=Math.min(this._bufferService.buffer.x,this._bufferService.cols-1),b=this._renderService.dimensions.css.cell.height,c=this._bufferService.buffer.y*this._renderService.dimensions.css.cell.height,d=a*this._renderService.dimensions.css.cell.width;this._compositionView.style.left=d+"px",this._compositionView.style.top=c+"px",this._compositionView.style.height=b+"px",this._compositionView.style.lineHeight=b+"px",this._compositionView.style.fontFamily=this._optionsService.rawOptions.fontFamily,this._compositionView.style.fontSize=this._optionsService.rawOptions.fontSize+"px";let e=this._compositionView.getBoundingClientRect();this._textarea.style.left=d+"px",this._textarea.style.top=c+"px",this._textarea.style.width=Math.max(e.width,1)+"px",this._textarea.style.height=Math.max(e.height,1)+"px",this._textarea.style.lineHeight=e.height+"px"}a||setTimeout(()=>this.updateCompositionElements(!0),0)}}};cB=L([M(2,ab),M(3,ah),M(4,ad),M(5,ap)],cB);var cC,cD,cE,cF,cG,cH,cI,cJ,cK,cL=0,cM=0,cN=0,cO=0,cP={css:"#00000000",rgba:0};(er=cK||={}).toCss=function(a,b,c,d){return void 0!==d?`#${cX(a)}${cX(b)}${cX(c)}${cX(d)}`:`#${cX(a)}${cX(b)}${cX(c)}`},er.toRgba=function(a,b,c,d=255){return(a<<24|b<<16|c<<8|d)>>>0},er.toColor=function(a,b,c,d){return{css:er.toCss(a,b,c,d),rgba:er.toRgba(a,b,c,d)}};var cQ=es||={};function cR(a,b){return cO=Math.round(255*b),[cL,cM,cN]=ev.toChannels(a.rgba),{css:cK.toCss(cL,cM,cN,cO),rgba:cK.toRgba(cL,cM,cN,cO)}}cQ.blend=function(a,b){if(1==(cO=(255&b.rgba)/255))return{css:b.css,rgba:b.rgba};let c=b.rgba>>24&255,d=b.rgba>>16&255,e=b.rgba>>8&255,f=a.rgba>>24&255,g=a.rgba>>16&255,h=a.rgba>>8&255;return cL=f+Math.round((c-f)*cO),cM=g+Math.round((d-g)*cO),cN=h+Math.round((e-h)*cO),{css:cK.toCss(cL,cM,cN),rgba:cK.toRgba(cL,cM,cN)}},cQ.isOpaque=function(a){return(255&a.rgba)==255},cQ.ensureContrastRatio=function(a,b,c){let d=ev.ensureContrastRatio(a.rgba,b.rgba,c);if(d)return cK.toColor(d>>24&255,d>>16&255,d>>8&255)},cQ.opaque=function(a){let b=(255|a.rgba)>>>0;return[cL,cM,cN]=ev.toChannels(b),{css:cK.toCss(cL,cM,cN),rgba:b}},cQ.opacity=cR,cQ.multiplyOpacity=function(a,b){return cO=255&a.rgba,cR(a,cO*b/255)},cQ.toColorRGB=function(a){return[a.rgba>>24&255,a.rgba>>16&255,a.rgba>>8&255]},(a=>{let b,c;try{let a=document.createElement("canvas");a.width=1,a.height=1;let d=a.getContext("2d",{willReadFrequently:!0});d&&((b=d).globalCompositeOperation="copy",c=b.createLinearGradient(0,0,1,1))}catch{}a.toColor=function(a){if(a.match(/#[\da-f]{3,8}/i))switch(a.length){case 4:return cL=parseInt(a.slice(1,2).repeat(2),16),cM=parseInt(a.slice(2,3).repeat(2),16),cN=parseInt(a.slice(3,4).repeat(2),16),cK.toColor(cL,cM,cN);case 5:return cL=parseInt(a.slice(1,2).repeat(2),16),cM=parseInt(a.slice(2,3).repeat(2),16),cN=parseInt(a.slice(3,4).repeat(2),16),cO=parseInt(a.slice(4,5).repeat(2),16),cK.toColor(cL,cM,cN,cO);case 7:return{css:a,rgba:(parseInt(a.slice(1),16)<<8|255)>>>0};case 9:return{css:a,rgba:parseInt(a.slice(1),16)>>>0}}let d=a.match(/rgba?\(\s*(\d{1,3})\s*,\s*(\d{1,3})\s*,\s*(\d{1,3})\s*(,\s*(0|1|\d?\.(\d+))\s*)?\)/);if(d)return cL=parseInt(d[1]),cM=parseInt(d[2]),cN=parseInt(d[3]),cO=Math.round((void 0===d[5]?1:parseFloat(d[5]))*255),cK.toColor(cL,cM,cN,cO);if(!b||!c||(b.fillStyle=c,b.fillStyle=a,"string"!=typeof b.fillStyle)||(b.fillRect(0,0,1,1),[cL,cM,cN,cO]=b.getImageData(0,0,1,1).data,255!==cO))throw Error("css.toColor: Unsupported css format");return{rgba:cK.toRgba(cL,cM,cN,cO),css:a}}})(et||={});var cS=eu||={};function cT(a,b,c){let d=a/255,e=b/255,f=c/255;return .2126*(d<=.03928?d/12.92:Math.pow((d+.055)/1.055,2.4))+.7152*(e<=.03928?e/12.92:Math.pow((e+.055)/1.055,2.4))+.0722*(f<=.03928?f/12.92:Math.pow((f+.055)/1.055,2.4))}cS.relativeLuminance=function(a){return cT(a>>16&255,a>>8&255,255&a)},cS.relativeLuminance2=cT;var cU=ev||={};function cV(a,b,c){let d=a>>24&255,e=a>>16&255,f=a>>8&255,g=b>>24&255,h=b>>16&255,i=b>>8&255,j=cY(eu.relativeLuminance2(g,h,i),eu.relativeLuminance2(d,e,f));for(;j<c&&(g>0||h>0||i>0);)g-=Math.max(0,Math.ceil(.1*g)),h-=Math.max(0,Math.ceil(.1*h)),i-=Math.max(0,Math.ceil(.1*i)),j=cY(eu.relativeLuminance2(g,h,i),eu.relativeLuminance2(d,e,f));return(g<<24|h<<16|i<<8|255)>>>0}function cW(a,b,c){let d=a>>24&255,e=a>>16&255,f=a>>8&255,g=b>>24&255,h=b>>16&255,i=b>>8&255,j=cY(eu.relativeLuminance2(g,h,i),eu.relativeLuminance2(d,e,f));for(;j<c&&(g<255||h<255||i<255);)g=Math.min(255,g+Math.ceil((255-g)*.1)),h=Math.min(255,h+Math.ceil((255-h)*.1)),i=Math.min(255,i+Math.ceil((255-i)*.1)),j=cY(eu.relativeLuminance2(g,h,i),eu.relativeLuminance2(d,e,f));return(g<<24|h<<16|i<<8|255)>>>0}function cX(a){let b=a.toString(16);return b.length<2?"0"+b:b}function cY(a,b){return a<b?(b+.05)/(a+.05):(a+.05)/(b+.05)}cU.blend=function(a,b){if(1==(cO=(255&b)/255))return b;let c=a>>24&255,d=a>>16&255,e=a>>8&255;return cL=c+Math.round(((b>>24&255)-c)*cO),cM=d+Math.round(((b>>16&255)-d)*cO),cN=e+Math.round(((b>>8&255)-e)*cO),cK.toRgba(cL,cM,cN)},cU.ensureContrastRatio=function(a,b,c){let d=eu.relativeLuminance(a>>8),e=eu.relativeLuminance(b>>8);if(cY(d,e)<c){if(e<d){let e=cV(a,b,c),f=cY(d,eu.relativeLuminance(e>>8));if(f<c){let g=cW(a,b,c);return f>cY(d,eu.relativeLuminance(g>>8))?e:g}return e}let f=cW(a,b,c),g=cY(d,eu.relativeLuminance(f>>8));if(g<c){let e=cV(a,b,c);return g>cY(d,eu.relativeLuminance(e>>8))?f:e}return f}},cU.reduceLuminance=cV,cU.increaseLuminance=cW,cU.toChannels=function(a){return[a>>24&255,a>>16&255,a>>8&255,255&a]};var cZ=class extends W{constructor(a,b,c){super(),this.content=0,this.combinedData="",this.fg=a.fg,this.bg=a.bg,this.combinedData=b,this._width=c}isCombined(){return 2097152}getWidth(){return this._width}getChars(){return this.combinedData}getCode(){return 2097151}setFromCharData(a){throw Error("not implemented")}getAsCharData(){return[this.fg,this.getChars(),this.getWidth(),this.getCode()]}},c$=class{constructor(a){this._bufferService=a,this._characterJoiners=[],this._nextCharacterJoinerId=0,this._workCell=new Y}register(a){let b={id:this._nextCharacterJoinerId++,handler:a};return this._characterJoiners.push(b),b.id}deregister(a){for(let b=0;b<this._characterJoiners.length;b++)if(this._characterJoiners[b].id===a)return this._characterJoiners.splice(b,1),!0;return!1}getJoinedCharacters(a){if(0===this._characterJoiners.length)return[];let b=this._bufferService.buffer.lines.get(a);if(!b||0===b.length)return[];let c=[],d=b.translateToString(!0),e=0,f=0,g=0,h=b.getFg(0),i=b.getBg(0);for(let a=0;a<b.getTrimmedLength();a++)if(b.loadCell(a,this._workCell),0!==this._workCell.getWidth()){if(this._workCell.fg!==h||this._workCell.bg!==i){if(a-e>1){let a=this._getJoinedRanges(d,g,f,b,e);for(let b=0;b<a.length;b++)c.push(a[b])}e=a,g=f,h=this._workCell.fg,i=this._workCell.bg}f+=this._workCell.getChars().length||1}if(this._bufferService.cols-e>1){let a=this._getJoinedRanges(d,g,f,b,e);for(let b=0;b<a.length;b++)c.push(a[b])}return c}_getJoinedRanges(a,b,c,d,e){let f=a.substring(b,c),g=[];try{g=this._characterJoiners[0].handler(f)}catch(a){console.error(a)}for(let a=1;a<this._characterJoiners.length;a++)try{let b=this._characterJoiners[a].handler(f);for(let a=0;a<b.length;a++)c$._mergeRanges(g,b[a])}catch(a){console.error(a)}return this._stringRangesToCellRanges(g,d,e),g}_stringRangesToCellRanges(a,b,c){let d=0,e=!1,f=0,g=a[0];if(g){for(let h=c;h<this._bufferService.cols;h++){let c=b.getWidth(h),i=b.getString(h).length||1;if(0!==c){if(!e&&g[0]<=f&&(g[0]=h,e=!0),g[1]<=f){if(g[1]=h,!(g=a[++d]))break;g[0]<=f?(g[0]=h,e=!0):e=!1}f+=i}}g&&(g[1]=this._bufferService.cols)}}static _mergeRanges(a,b){let c=!1;for(let d=0;d<a.length;d++){let e=a[d];if(c){if(b[1]<=e[0])return a[d-1][1]=b[1],a;if(b[1]<=e[1])return a[d-1][1]=Math.max(b[1],e[1]),a.splice(d,1),a;a.splice(d,1),d--}else{if(b[1]<=e[0])return a.splice(d,0,b),a;if(b[1]<=e[1])return e[0]=Math.min(b[0],e[0]),a;b[0]<e[1]&&(e[0]=Math.min(b[0],e[0]),c=!0);continue}}return c?a[a.length-1][1]=b[1]:a.push(b),a}};function c_(){return{width:0,height:0}}c$=L([M(0,ab)],c$);var c0=class{constructor(a,b,c,d,e,f,g){this._document=a,this._characterJoinerService=b,this._optionsService=c,this._coreBrowserService=d,this._coreService=e,this._decorationService=f,this._themeService=g,this._workCell=new Y,this._columnSelectMode=!1,this.defaultSpacing=0}handleSelectionChanged(a,b,c){this._selectionStart=a,this._selectionEnd=b,this._columnSelectMode=c}createRow(a,b,c,d,e,f,g,h,i,j,k){let l=[],m=this._characterJoinerService.getJoinedCharacters(b),n=this._themeService.colors,o=a.getNoBgTrimmedLength();c&&o<f+1&&(o=f+1);let p,q=0,r="",s=0,u=0,v=0,w=0,x=!1,y=0,z=!1,A=0,B=0,C=[],D=-1!==j&&-1!==k;for(let E=0;E<o;E++){let o;a.loadCell(E,this._workCell);let F=this._workCell.getWidth();if(0===F)continue;let G=!1,H=E>=B,I=E,J=this._workCell;if(m.length>0&&E===m[0][0]&&H){let d=m.shift(),e=this._isCellInSelection(d[0],b);for(s=d[0]+1;s<d[1];s++)H&&=e===this._isCellInSelection(s,b);(H&&=!c||f<d[0]||f>=d[1])?(G=!0,J=new cZ(this._workCell,a.translateToString(!0,d[0],d[1]),d[1]-d[0]),I=d[1]-1,F=J.getWidth()):B=d[1]}let K=this._isCellInSelection(E,b),L=c&&E===f,M=D&&E>=j&&E<=k,N=!1;this._decorationService.forEachDecorationAtCell(E,b,void 0,a=>{N=!0});let O=J.getChars()||" ";if(" "===O&&(J.isUnderline()||J.isOverline())&&(O=" "),A=F*h-i.get(O,J.isBold(),J.isItalic()),p)if(q&&(K&&z||!K&&!z&&J.bg===u)&&(K&&z&&n.selectionForeground||J.fg===v)&&J.extended.ext===w&&M===x&&A===y&&!L&&!G&&!N&&H){J.isInvisible()?r+=" ":r+=O,q++;continue}else q&&(p.textContent=r),p=this._document.createElement("span"),q=0,r="";else p=this._document.createElement("span");if(u=J.bg,v=J.fg,w=J.extended.ext,x=M,y=A,z=K,G&&f>=E&&f<=I&&(f=E),!this._coreService.isCursorHidden&&L&&this._coreService.isCursorInitialized){if(C.push("xterm-cursor"),this._coreBrowserService.isFocused)g&&C.push("xterm-cursor-blink"),C.push("bar"===d?"xterm-cursor-bar":"underline"===d?"xterm-cursor-underline":"xterm-cursor-block");else if(e)switch(e){case"outline":C.push("xterm-cursor-outline");break;case"block":C.push("xterm-cursor-block");break;case"bar":C.push("xterm-cursor-bar");break;case"underline":C.push("xterm-cursor-underline")}}if(J.isBold()&&C.push("xterm-bold"),J.isItalic()&&C.push("xterm-italic"),J.isDim()&&C.push("xterm-dim"),r=J.isInvisible()?" ":J.getChars()||" ",J.isUnderline()&&(C.push(`xterm-underline-${J.extended.underlineStyle}`)," "===r&&(r=" "),!J.isUnderlineColorDefault()))if(J.isUnderlineColorRGB())p.style.textDecorationColor=`rgb(${W.toColorRGB(J.getUnderlineColor()).join(",")})`;else{let a=J.getUnderlineColor();this._optionsService.rawOptions.drawBoldTextInBrightColors&&J.isBold()&&a<8&&(a+=8),p.style.textDecorationColor=n.ansi[a].css}J.isOverline()&&(C.push("xterm-overline")," "===r&&(r=" ")),J.isStrikethrough()&&C.push("xterm-strikethrough"),M&&(p.style.textDecoration="underline");let P=J.getFgColor(),Q=J.getFgColorMode(),R=J.getBgColor(),S=J.getBgColorMode(),T=!!J.isInverse();if(T){let a=P;P=R,R=a;let b=Q;Q=S,S=b}let U,V,X=!1;switch(this._decorationService.forEachDecorationAtCell(E,b,void 0,a=>{"top"!==a.options.layer&&X||(a.backgroundColorRGB&&(S=0x3000000,R=a.backgroundColorRGB.rgba>>8&0xffffff,U=a.backgroundColorRGB),a.foregroundColorRGB&&(Q=0x3000000,P=a.foregroundColorRGB.rgba>>8&0xffffff,V=a.foregroundColorRGB),X="top"===a.options.layer)}),!X&&K&&(R=(U=this._coreBrowserService.isFocused?n.selectionBackgroundOpaque:n.selectionInactiveBackgroundOpaque).rgba>>8&0xffffff,S=0x3000000,X=!0,n.selectionForeground&&(Q=0x3000000,P=n.selectionForeground.rgba>>8&0xffffff,V=n.selectionForeground)),X&&C.push("xterm-decoration-top"),S){case 0x1000000:case 0x2000000:o=n.ansi[R],C.push(`xterm-bg-${R}`);break;case 0x3000000:o=cK.toColor(R>>16,R>>8&255,255&R),this._addStyle(p,`background-color:#${c1((R>>>0).toString(16),"0",6)}`);break;default:T?(o=n.foreground,C.push("xterm-bg-257")):o=n.background}switch(U||J.isDim()&&(U=es.multiplyOpacity(o,.5)),Q){case 0x1000000:case 0x2000000:J.isBold()&&P<8&&this._optionsService.rawOptions.drawBoldTextInBrightColors&&(P+=8),this._applyMinimumContrast(p,o,n.ansi[P],J,U,void 0)||C.push(`xterm-fg-${P}`);break;case 0x3000000:let Y=cK.toColor(P>>16&255,P>>8&255,255&P);this._applyMinimumContrast(p,o,Y,J,U,V)||this._addStyle(p,`color:#${c1(P.toString(16),"0",6)}`);break;default:this._applyMinimumContrast(p,o,n.foreground,J,U,V)||T&&C.push("xterm-fg-257")}C.length&&(p.className=C.join(" "),C.length=0),L||G||N||!H?p.textContent=r:q++,A!==this.defaultSpacing&&(p.style.letterSpacing=`${A}px`),l.push(p),E=I}return p&&q&&(p.textContent=r),l}_applyMinimumContrast(a,b,c,d,e,f){var g,h,i;if(1===this._optionsService.rawOptions.minimumContrastRatio||57508<=(h=g=d.getCode())&&h<=57558||9472<=(i=g)&&i<=9631)return!1;let j=this._getContrastCache(d),k;if(e||f||(k=j.getColor(b.rgba,c.rgba)),void 0===k){let a=this._optionsService.rawOptions.minimumContrastRatio/(d.isDim()?2:1);k=es.ensureContrastRatio(e||b,f||c,a),j.setColor((e||b).rgba,(f||c).rgba,k??null)}return!!k&&(this._addStyle(a,`color:${k.css}`),!0)}_getContrastCache(a){return a.isDim()?this._themeService.colors.halfContrastCache:this._themeService.colors.contrastCache}_addStyle(a,b){a.setAttribute("style",`${a.getAttribute("style")||""}${b};`)}_isCellInSelection(a,b){let c=this._selectionStart,d=this._selectionEnd;return!!c&&!!d&&(this._columnSelectMode?c[0]<=d[0]?a>=c[0]&&b>=c[1]&&a<d[0]&&b<=d[1]:a<c[0]&&b>=c[1]&&a>=d[0]&&b<=d[1]:b>c[1]&&b<d[1]||c[1]===d[1]&&b===c[1]&&a>=c[0]&&a<d[0]||c[1]<d[1]&&b===d[1]&&a<d[0]||c[1]<d[1]&&b===c[1]&&a>=c[0])}};function c1(a,b,c){for(;a.length<c;)a=b+a;return a}c0=L([M(1,ar),M(2,ah),M(3,an),M(4,ad),M(5,ak),M(6,as)],c0);var c2=class{constructor(a,b){this._flat=new Float32Array(256),this._font="",this._fontSize=0,this._weight="normal",this._weightBold="bold",this._measureElements=[],this._container=a.createElement("div"),this._container.classList.add("xterm-width-cache-measure-container"),this._container.setAttribute("aria-hidden","true"),this._container.style.whiteSpace="pre",this._container.style.fontKerning="none";let c=a.createElement("span");c.classList.add("xterm-char-measure-element");let d=a.createElement("span");d.classList.add("xterm-char-measure-element"),d.style.fontWeight="bold";let e=a.createElement("span");e.classList.add("xterm-char-measure-element"),e.style.fontStyle="italic";let f=a.createElement("span");f.classList.add("xterm-char-measure-element"),f.style.fontWeight="bold",f.style.fontStyle="italic",this._measureElements=[c,d,e,f],this._container.appendChild(c),this._container.appendChild(d),this._container.appendChild(e),this._container.appendChild(f),b.appendChild(this._container),this.clear()}dispose(){this._container.remove(),this._measureElements.length=0,this._holey=void 0}clear(){this._flat.fill(-9999),this._holey=new Map}setFont(a,b,c,d){a===this._font&&b===this._fontSize&&c===this._weight&&d===this._weightBold||(this._font=a,this._fontSize=b,this._weight=c,this._weightBold=d,this._container.style.fontFamily=this._font,this._container.style.fontSize=`${this._fontSize}px`,this._measureElements[0].style.fontWeight=`${c}`,this._measureElements[1].style.fontWeight=`${d}`,this._measureElements[2].style.fontWeight=`${c}`,this._measureElements[3].style.fontWeight=`${d}`,this.clear())}get(a,b,c){let d=0;if(!b&&!c&&1===a.length&&(d=a.charCodeAt(0))<256){if(-9999!==this._flat[d])return this._flat[d];let b=this._measure(a,0);return b>0&&(this._flat[d]=b),b}let e=a;b&&(e+="B"),c&&(e+="I");let f=this._holey.get(e);if(void 0===f){let d=0;b&&(d|=1),c&&(d|=2),(f=this._measure(a,d))>0&&this._holey.set(e,f)}return f}_measure(a,b){let c=this._measureElements[b];return c.textContent=a.repeat(32),c.offsetWidth/32}},c3=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(a,b,c,d=!1){if(this.selectionStart=b,this.selectionEnd=c,!b||!c||b[0]===c[0]&&b[1]===c[1])return void this.clear();let e=a.buffers.active.ydisp,f=b[1]-e,g=c[1]-e,h=Math.max(f,0),i=Math.min(g,a.rows-1);h>=a.rows||i<0?this.clear():(this.hasSelection=!0,this.columnSelectMode=d,this.viewportStartRow=f,this.viewportEndRow=g,this.viewportCappedStartRow=h,this.viewportCappedEndRow=i,this.startCol=b[0],this.endCol=c[0])}isCellSelected(a,b,c){return!!this.hasSelection&&(c-=a.buffer.active.viewportY,this.columnSelectMode?this.startCol<=this.endCol?b>=this.startCol&&c>=this.viewportCappedStartRow&&b<this.endCol&&c<=this.viewportCappedEndRow:b<this.startCol&&c>=this.viewportCappedStartRow&&b>=this.endCol&&c<=this.viewportCappedEndRow:c>this.viewportStartRow&&c<this.viewportEndRow||this.viewportStartRow===this.viewportEndRow&&c===this.viewportStartRow&&b>=this.startCol&&b<this.endCol||this.viewportStartRow<this.viewportEndRow&&c===this.viewportEndRow&&b<this.endCol||this.viewportStartRow<this.viewportEndRow&&c===this.viewportStartRow&&b>=this.startCol)}},c4="xterm-dom-renderer-owner-",c5="xterm-rows",c6="xterm-fg-",c7="xterm-bg-",c8="xterm-focus",c9="xterm-selection",da=1,db=class extends aI{constructor(a,b,c,d,e,f,g,h,i,j,k,l,m,n){super(),this._terminal=a,this._document=b,this._element=c,this._screenElement=d,this._viewportElement=e,this._helperContainer=f,this._linkifier2=g,this._charSizeService=i,this._optionsService=j,this._bufferService=k,this._coreService=l,this._coreBrowserService=m,this._themeService=n,this._terminalClass=da++,this._rowElements=[],this._selectionRenderModel=new c3,this.onRequestRedraw=this._register(new a_).event,this._rowContainer=this._document.createElement("div"),this._rowContainer.classList.add(c5),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(c9),this._selectionContainer.setAttribute("aria-hidden","true"),this.dimensions={css:{canvas:c_(),cell:c_()},device:{canvas:c_(),cell:c_(),char:{width:0,height:0,left:0,top:0}}},this._updateDimensions(),this._register(this._optionsService.onOptionChange(()=>this._handleOptionsChanged())),this._register(this._themeService.onChangeColors(a=>this._injectCss(a))),this._injectCss(this._themeService.colors),this._rowFactory=h.createInstance(c0,document),this._element.classList.add(c4+this._terminalClass),this._screenElement.appendChild(this._rowContainer),this._screenElement.appendChild(this._selectionContainer),this._register(this._linkifier2.onShowLinkUnderline(a=>this._handleLinkHover(a))),this._register(this._linkifier2.onHideLinkUnderline(a=>this._handleLinkLeave(a))),this._register(aF(()=>{this._element.classList.remove(c4+this._terminalClass),this._rowContainer.remove(),this._selectionContainer.remove(),this._widthCache.dispose(),this._themeStyleElement.remove(),this._dimensionsStyleElement.remove()})),this._widthCache=new c2(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 a=this._coreBrowserService.dpr;for(let b of(this.dimensions.device.char.width=this._charSizeService.width*a,this.dimensions.device.char.height=Math.ceil(this._charSizeService.height*a),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/a),this.dimensions.css.canvas.height=Math.round(this.dimensions.device.canvas.height/a),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,this._rowElements))b.style.width=`${this.dimensions.css.canvas.width}px`,b.style.height=`${this.dimensions.css.cell.height}px`,b.style.lineHeight=`${this.dimensions.css.cell.height}px`,b.style.overflow="hidden";this._dimensionsStyleElement||(this._dimensionsStyleElement=this._document.createElement("style"),this._screenElement.appendChild(this._dimensionsStyleElement));let b=`${this._terminalSelector} .${c5} span { display: inline-block; height: 100%; vertical-align: top;}`;this._dimensionsStyleElement.textContent=b,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(a){this._themeStyleElement||(this._themeStyleElement=this._document.createElement("style"),this._screenElement.appendChild(this._themeStyleElement));let b=`${this._terminalSelector} .${c5} { pointer-events: none; color: ${a.foreground.css}; font-family: ${this._optionsService.rawOptions.fontFamily}; font-size: ${this._optionsService.rawOptions.fontSize}px; font-kerning: none; white-space: pre}`;b+=`${this._terminalSelector} .${c5} .xterm-dim { color: ${es.multiplyOpacity(a.foreground,.5).css};}${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 c=`blink_underline_${this._terminalClass}`,d=`blink_bar_${this._terminalClass}`,e=`blink_block_${this._terminalClass}`;for(let[f,g]of(b+=`@keyframes ${c} { 50% { border-bottom-style: hidden; }}@keyframes ${d} { 50% { box-shadow: none; }}@keyframes ${e} { 0% { background-color: ${a.cursor.css}; color: ${a.cursorAccent.css}; } 50% { background-color: inherit; color: ${a.cursor.css}; }}${this._terminalSelector} .${c5}.${c8} .xterm-cursor.xterm-cursor-blink.xterm-cursor-underline { animation: ${c} 1s step-end infinite;}${this._terminalSelector} .${c5}.${c8} .xterm-cursor.xterm-cursor-blink.xterm-cursor-bar { animation: ${d} 1s step-end infinite;}${this._terminalSelector} .${c5}.${c8} .xterm-cursor.xterm-cursor-blink.xterm-cursor-block { animation: ${e} 1s step-end infinite;}${this._terminalSelector} .${c5} .xterm-cursor.xterm-cursor-block { background-color: ${a.cursor.css}; color: ${a.cursorAccent.css};}${this._terminalSelector} .${c5} .xterm-cursor.xterm-cursor-block:not(.xterm-cursor-blink) { background-color: ${a.cursor.css} !important; color: ${a.cursorAccent.css} !important;}${this._terminalSelector} .${c5} .xterm-cursor.xterm-cursor-outline { outline: 1px solid ${a.cursor.css}; outline-offset: -1px;}${this._terminalSelector} .${c5} .xterm-cursor.xterm-cursor-bar { box-shadow: ${this._optionsService.rawOptions.cursorWidth}px 0 0 ${a.cursor.css} inset;}${this._terminalSelector} .${c5} .xterm-cursor.xterm-cursor-underline { border-bottom: 1px ${a.cursor.css}; border-bottom-style: solid; height: calc(100% - 1px);}${this._terminalSelector} .${c9} { position: absolute; top: 0; left: 0; z-index: 1; pointer-events: none;}${this._terminalSelector}.focus .${c9} div { position: absolute; background-color: ${a.selectionBackgroundOpaque.css};}${this._terminalSelector} .${c9} div { position: absolute; background-color: ${a.selectionInactiveBackgroundOpaque.css};}`,a.ansi.entries()))b+=`${this._terminalSelector} .${c6}${f} { color: ${g.css}; }${this._terminalSelector} .${c6}${f}.xterm-dim { color: ${es.multiplyOpacity(g,.5).css}; }${this._terminalSelector} .${c7}${f} { background-color: ${g.css}; }`;b+=`${this._terminalSelector} .${c6}257 { color: ${es.opaque(a.background).css}; }${this._terminalSelector} .${c6}257.xterm-dim { color: ${es.multiplyOpacity(es.opaque(a.background),.5).css}; }${this._terminalSelector} .${c7}257 { background-color: ${a.foreground.css}; }`,this._themeStyleElement.textContent=b}_setDefaultSpacing(){let a=this.dimensions.css.cell.width-this._widthCache.get("W",!1,!1);this._rowContainer.style.letterSpacing=`${a}px`,this._rowFactory.defaultSpacing=a}handleDevicePixelRatioChange(){this._updateDimensions(),this._widthCache.clear(),this._setDefaultSpacing()}_refreshRowElements(a,b){for(let a=this._rowElements.length;a<=b;a++){let a=this._document.createElement("div");this._rowContainer.appendChild(a),this._rowElements.push(a)}for(;this._rowElements.length>b;)this._rowContainer.removeChild(this._rowElements.pop())}handleResize(a,b){this._refreshRowElements(a,b),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(c8),this.renderRows(0,this._bufferService.rows-1)}handleFocus(){this._rowContainer.classList.add(c8),this.renderRows(this._bufferService.buffer.y,this._bufferService.buffer.y)}handleSelectionChanged(a,b,c){if(this._selectionContainer.replaceChildren(),this._rowFactory.handleSelectionChanged(a,b,c),this.renderRows(0,this._bufferService.rows-1),!a||!b||(this._selectionRenderModel.update(this._terminal,a,b,c),!this._selectionRenderModel.hasSelection))return;let d=this._selectionRenderModel.viewportStartRow,e=this._selectionRenderModel.viewportEndRow,f=this._selectionRenderModel.viewportCappedStartRow,g=this._selectionRenderModel.viewportCappedEndRow,h=this._document.createDocumentFragment();if(c){let c=a[0]>b[0];h.appendChild(this._createSelectionElement(f,c?b[0]:a[0],c?a[0]:b[0],g-f+1))}else{let c=d===f?a[0]:0,i=f===e?b[0]:this._bufferService.cols;if(h.appendChild(this._createSelectionElement(f,c,i)),h.appendChild(this._createSelectionElement(f+1,0,this._bufferService.cols,g-f-1)),f!==g){let a=e===g?b[0]:this._bufferService.cols;h.appendChild(this._createSelectionElement(g,0,a))}}this._selectionContainer.appendChild(h)}_createSelectionElement(a,b,c,d=1){let e=this._document.createElement("div"),f=b*this.dimensions.css.cell.width,g=this.dimensions.css.cell.width*(c-b);return f+g>this.dimensions.css.canvas.width&&(g=this.dimensions.css.canvas.width-f),e.style.height=`${d*this.dimensions.css.cell.height}px`,e.style.top=`${a*this.dimensions.css.cell.height}px`,e.style.left=`${f}px`,e.style.width=`${g}px`,e}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 a of this._rowElements)a.replaceChildren()}renderRows(a,b){let c=this._bufferService.buffer,d=c.ybase+c.y,e=Math.min(c.x,this._bufferService.cols-1),f=this._coreService.decPrivateModes.cursorBlink??this._optionsService.rawOptions.cursorBlink,g=this._coreService.decPrivateModes.cursorStyle??this._optionsService.rawOptions.cursorStyle,h=this._optionsService.rawOptions.cursorInactiveStyle;for(let i=a;i<=b;i++){let a=i+c.ydisp,b=this._rowElements[i],j=c.lines.get(a);if(!b||!j)break;b.replaceChildren(...this._rowFactory.createRow(j,a,a===d,g,h,e,f,this.dimensions.css.cell.width,this._widthCache,-1,-1))}}get _terminalSelector(){return`.${c4}${this._terminalClass}`}_handleLinkHover(a){this._setCellUnderline(a.x1,a.x2,a.y1,a.y2,a.cols,!0)}_handleLinkLeave(a){this._setCellUnderline(a.x1,a.x2,a.y1,a.y2,a.cols,!1)}_setCellUnderline(a,b,c,d,e,f){c<0&&(a=0),d<0&&(b=0);let g=this._bufferService.rows-1;c=Math.max(Math.min(c,g),0),d=Math.max(Math.min(d,g),0),e=Math.min(e,this._bufferService.cols);let h=this._bufferService.buffer,i=h.ybase+h.y,j=Math.min(h.x,e-1),k=this._optionsService.rawOptions.cursorBlink,l=this._optionsService.rawOptions.cursorStyle,m=this._optionsService.rawOptions.cursorInactiveStyle;for(let g=c;g<=d;++g){let n=g+h.ydisp,o=this._rowElements[g],p=h.lines.get(n);if(!o||!p)break;o.replaceChildren(...this._rowFactory.createRow(p,n,n===i,l,m,j,k,this.dimensions.css.cell.width,this._widthCache,f?g===c?a:0:-1,f?(g===d?b:e)-1:-1))}}};db=L([M(7,af),M(8,am),M(9,ah),M(10,ab),M(11,ad),M(12,an),M(13,as)],db);var dc=class extends aI{constructor(a,b,c){super(),this._optionsService=c,this.width=0,this.height=0,this._onCharSizeChange=this._register(new a_),this.onCharSizeChange=this._onCharSizeChange.event;try{this._measureStrategy=this._register(new df(this._optionsService))}catch{this._measureStrategy=this._register(new de(a,b,this._optionsService))}this._register(this._optionsService.onMultipleOptionChange(["fontFamily","fontSize"],()=>this.measure()))}get hasValidSize(){return this.width>0&&this.height>0}measure(){let a=this._measureStrategy.measure();(a.width!==this.width||a.height!==this.height)&&(this.width=a.width,this.height=a.height,this._onCharSizeChange.fire())}};dc=L([M(2,ah)],dc);var dd=class extends aI{constructor(){super(...arguments),this._result={width:0,height:0}}_validateAndSet(a,b){void 0!==a&&a>0&&void 0!==b&&b>0&&(this._result.width=a,this._result.height=b)}},de=class extends dd{constructor(a,b,c){super(),this._document=a,this._parentElement=b,this._optionsService=c,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}},df=class extends dd{constructor(a){super(),this._optionsService=a,this._canvas=new OffscreenCanvas(100,100),this._ctx=this._canvas.getContext("2d");let b=this._ctx.measureText("W");if(!("width"in b&&"fontBoundingBoxAscent"in b&&"fontBoundingBoxDescent"in b))throw Error("Required font metrics not supported")}measure(){this._ctx.font=`${this._optionsService.rawOptions.fontSize}px ${this._optionsService.rawOptions.fontFamily}`;let a=this._ctx.measureText("W");return this._validateAndSet(a.width,a.fontBoundingBoxAscent+a.fontBoundingBoxDescent),this._result}},dg=class extends aI{constructor(a,b,c){super(),this._textarea=a,this._window=b,this.mainDocument=c,this._isFocused=!1,this._cachedIsFocused=void 0,this._screenDprMonitor=this._register(new dh(this._window)),this._onDprChange=this._register(new a_),this.onDprChange=this._onDprChange.event,this._onWindowChange=this._register(new a_),this.onWindowChange=this._onWindowChange.event,this._register(this.onWindowChange(a=>this._screenDprMonitor.setWindow(a))),this._register(aU.forward(this._screenDprMonitor.onDprChange,this._onDprChange)),this._register(b3(this._textarea,"focus",()=>this._isFocused=!0)),this._register(b3(this._textarea,"blur",()=>this._isFocused=!1))}get window(){return this._window}set window(a){this._window!==a&&(this._window=a,this._onWindowChange.fire(this._window))}get dpr(){return this.window.devicePixelRatio}get isFocused(){return void 0===this._cachedIsFocused&&(this._cachedIsFocused=this._isFocused&&this._textarea.ownerDocument.hasFocus(),queueMicrotask(()=>this._cachedIsFocused=void 0)),this._cachedIsFocused}},dh=class extends aI{constructor(a){super(),this._parentWindow=a,this._windowResizeListener=this._register(new aJ),this._onDprChange=this._register(new a_),this.onDprChange=this._onDprChange.event,this._outerListener=()=>this._setDprAndFireIfDiffers(),this._currentDevicePixelRatio=this._parentWindow.devicePixelRatio,this._updateDpr(),this._setWindowResizeListener(),this._register(aF(()=>this.clearListener()))}setWindow(a){this._parentWindow=a,this._setWindowResizeListener(),this._setDprAndFireIfDiffers()}_setWindowResizeListener(){this._windowResizeListener.value=b3(this._parentWindow,"resize",()=>this._setDprAndFireIfDiffers())}_setDprAndFireIfDiffers(){this._parentWindow.devicePixelRatio!==this._currentDevicePixelRatio&&this._onDprChange.fire(this._parentWindow.devicePixelRatio),this._updateDpr()}_updateDpr(){this._outerListener&&(this._resolutionMediaMatchList?.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)}},di=class extends aI{constructor(){super(),this.linkProviders=[],this._register(aF(()=>this.linkProviders.length=0))}registerLinkProvider(a){return this.linkProviders.push(a),{dispose:()=>{let b=this.linkProviders.indexOf(a);-1!==b&&this.linkProviders.splice(b,1)}}}};function dj(a,b,c){let d=c.getBoundingClientRect(),e=a.getComputedStyle(c),f=parseInt(e.getPropertyValue("padding-left")),g=parseInt(e.getPropertyValue("padding-top"));return[b.clientX-d.left-f,b.clientY-d.top-g]}var dk=class{constructor(a,b){this._renderService=a,this._charSizeService=b}getCoords(a,b,c,d,e){return function(a,b,c,d,e,f,g,h,i){if(!f)return;let j=dj(a,b,c);return j[0]=Math.ceil((j[0]+(i?g/2:0))/g),j[1]=Math.ceil(j[1]/h),j[0]=Math.min(Math.max(j[0],1),d+ +!!i),j[1]=Math.min(Math.max(j[1],1),e),j}(window,a,b,c,d,this._charSizeService.hasValidSize,this._renderService.dimensions.css.cell.width,this._renderService.dimensions.css.cell.height,e)}getMouseReportCoords(a,b){let c=dj(window,a,b);if(this._charSizeService.hasValidSize)return c[0]=Math.min(Math.max(c[0],0),this._renderService.dimensions.css.canvas.width-1),c[1]=Math.min(Math.max(c[1],0),this._renderService.dimensions.css.canvas.height-1),{col:Math.floor(c[0]/this._renderService.dimensions.css.cell.width),row:Math.floor(c[1]/this._renderService.dimensions.css.cell.height),x:Math.floor(c[0]),y:Math.floor(c[1])}}};dk=L([M(0,ap),M(1,am)],dk);var dl=class{constructor(a,b){this._renderCallback=a,this._coreBrowserService=b,this._refreshCallbacks=[]}dispose(){this._animationFrame&&(this._coreBrowserService.window.cancelAnimationFrame(this._animationFrame),this._animationFrame=void 0)}addRefreshCallback(a){return this._refreshCallbacks.push(a),this._animationFrame||(this._animationFrame=this._coreBrowserService.window.requestAnimationFrame(()=>this._innerRefresh())),this._animationFrame}refresh(a,b,c){this._rowCount=c,a=void 0!==a?a:0,b=void 0!==b?b:this._rowCount-1,this._rowStart=void 0!==this._rowStart?Math.min(this._rowStart,a):a,this._rowEnd=void 0!==this._rowEnd?Math.max(this._rowEnd,b):b,this._animationFrame||(this._animationFrame=this._coreBrowserService.window.requestAnimationFrame(()=>this._innerRefresh()))}_innerRefresh(){if(this._animationFrame=void 0,void 0===this._rowStart||void 0===this._rowEnd||void 0===this._rowCount)return void this._runRefreshCallbacks();let a=Math.max(this._rowStart,0),b=Math.min(this._rowEnd,this._rowCount-1);this._rowStart=void 0,this._rowEnd=void 0,this._renderCallback(a,b),this._runRefreshCallbacks()}_runRefreshCallbacks(){for(let a of this._refreshCallbacks)a(0);this._refreshCallbacks=[]}},dm={},dn={getSafariVersion:()=>dw,isChromeOS:()=>dC,isFirefox:()=>dt,isIpad:()=>dy,isIphone:()=>dz,isLegacyEdge:()=>du,isLinux:()=>dB,isMac:()=>dx,isNode:()=>dq,isSafari:()=>dv,isWindows:()=>dA};for(var dp in dn)J(dm,dp,{get:dn[dp],enumerable:!0});var dq="u">typeof process&&"title"in process,dr=dq?"node":navigator.userAgent,ds=dq?"node":navigator.platform,dt=dr.includes("Firefox"),du=dr.includes("Edge"),dv=/^((?!chrome|android).)*safari/i.test(dr);function dw(){if(!dv)return 0;let a=dr.match(/Version\/(\d+)/);return null===a||a.length<2?0:parseInt(a[1])}var dx=["Macintosh","MacIntel","MacPPC","Mac68K"].includes(ds),dy="iPad"===ds,dz="iPhone"===ds,dA=["Windows","Win16","Win32","WinCE"].includes(ds),dB=ds.indexOf("Linux")>=0,dC=/\bCrOS\b/.test(dr),dD=class{constructor(){this._tasks=[],this._i=0}enqueue(a){this._tasks.push(a),this._start()}flush(){for(;this._i<this._tasks.length;)this._tasks[this._i]()||this._i++;this.clear()}clear(){this._idleCallback&&(this._cancelCallback(this._idleCallback),this._idleCallback=void 0),this._i=0,this._tasks.length=0}_start(){this._idleCallback||(this._idleCallback=this._requestCallback(this._process.bind(this)))}_process(a){this._idleCallback=void 0;let b=0,c=0,d=a.timeRemaining(),e=0;for(;this._i<this._tasks.length;){if(b=performance.now(),this._tasks[this._i]()||this._i++,1.5*(c=Math.max(b=Math.max(1,performance.now()-b),c))>(e=a.timeRemaining())){d-b<-20&&console.warn(`task queue exceeded allotted deadline by ${Math.abs(Math.round(d-b))}ms`),this._start();return}d=e}this.clear()}},dE=class extends dD{_requestCallback(a){return setTimeout(()=>a(this._createDeadline(16)))}_cancelCallback(a){clearTimeout(a)}_createDeadline(a){let b=performance.now()+a;return{timeRemaining:()=>Math.max(0,b-performance.now())}}},dF=class extends dD{_requestCallback(a){return requestIdleCallback(a)}_cancelCallback(a){cancelIdleCallback(a)}},dG=!dq&&"requestIdleCallback"in window?dF:dE,dH=class{constructor(){this._queue=new dG}set(a){this._queue.clear(),this._queue.enqueue(a)}flush(){this._queue.flush()}},dI=class extends aI{constructor(a,b,c,d,e,f,g,h,i){super(),this._rowCount=a,this._optionsService=c,this._charSizeService=d,this._coreService=e,this._coreBrowserService=h,this._renderer=this._register(new aJ),this._pausedResizeTask=new dH,this._observerDisposable=this._register(new aJ),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 a_),this.onDimensionsChange=this._onDimensionsChange.event,this._onRenderedViewportChange=this._register(new a_),this.onRenderedViewportChange=this._onRenderedViewportChange.event,this._onRender=this._register(new a_),this.onRender=this._onRender.event,this._onRefreshRequest=this._register(new a_),this.onRefreshRequest=this._onRefreshRequest.event,this._renderDebouncer=new dl((a,b)=>this._renderRows(a,b),this._coreBrowserService),this._register(this._renderDebouncer),this._syncOutputHandler=new dJ(this._coreBrowserService,this._coreService,()=>this._fullRefresh()),this._register(aF(()=>this._syncOutputHandler.dispose())),this._register(this._coreBrowserService.onDprChange(()=>this.handleDevicePixelRatioChange())),this._register(g.onResize(()=>this._fullRefresh())),this._register(g.buffers.onBufferActivate(()=>this._renderer.value?.clear())),this._register(this._optionsService.onOptionChange(()=>this._handleOptionsChanged())),this._register(this._charSizeService.onCharSizeChange(()=>this.handleCharSizeChanged())),this._register(f.onDecorationRegistered(()=>this._fullRefresh())),this._register(f.onDecorationRemoved(()=>this._fullRefresh())),this._register(this._optionsService.onMultipleOptionChange(["customGlyphs","drawBoldTextInBrightColors","letterSpacing","lineHeight","fontFamily","fontSize","fontWeight","fontWeightBold","minimumContrastRatio","rescaleOverlappingGlyphs"],()=>{this.clear(),this.handleResize(g.cols,g.rows),this._fullRefresh()})),this._register(this._optionsService.onMultipleOptionChange(["cursorBlink","cursorStyle"],()=>this.refreshRows(g.buffer.y,g.buffer.y,!0))),this._register(i.onChangeColors(()=>this._fullRefresh())),this._registerIntersectionObserver(this._coreBrowserService.window,b),this._register(this._coreBrowserService.onWindowChange(a=>this._registerIntersectionObserver(a,b)))}get dimensions(){return this._renderer.value.dimensions}_registerIntersectionObserver(a,b){if("IntersectionObserver"in a){let c=new a.IntersectionObserver(a=>this._handleIntersectionChange(a[a.length-1]),{threshold:0});c.observe(b),this._observerDisposable.value=aF(()=>c.disconnect())}}_handleIntersectionChange(a){this._isPaused=void 0===a.isIntersecting?0===a.intersectionRatio:!a.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(a,b,c=!1){if(this._isPaused){this._needsFullRefresh=!0;return}if(this._coreService.decPrivateModes.synchronizedOutput)return void this._syncOutputHandler.bufferRows(a,b);let d=this._syncOutputHandler.flush();d&&(a=Math.min(a,d.start),b=Math.max(b,d.end)),c||(this._isNextRenderRedrawOnly=!1),this._renderDebouncer.refresh(a,b,this._rowCount)}_renderRows(a,b){if(this._renderer.value){if(this._coreService.decPrivateModes.synchronizedOutput)return void this._syncOutputHandler.bufferRows(a,b);a=Math.min(a,this._rowCount-1),b=Math.min(b,this._rowCount-1),this._renderer.value.renderRows(a,b),this._needsSelectionRefresh&&(this._renderer.value.handleSelectionChanged(this._selectionState.start,this._selectionState.end,this._selectionState.columnSelectMode),this._needsSelectionRefresh=!1),this._isNextRenderRedrawOnly||this._onRenderedViewportChange.fire({start:a,end:b}),this._onRender.fire({start:a,end:b}),this._isNextRenderRedrawOnly=!0}}resize(a,b){this._rowCount=b,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(a){this._renderer.value=a,this._renderer.value&&(this._renderer.value.onRequestRedraw(a=>this.refreshRows(a.start,a.end,!0)),this._needsSelectionRefresh=!0,this._fullRefresh())}addRefreshCallback(a){return this._renderDebouncer.addRefreshCallback(a)}_fullRefresh(){this._isPaused?this._needsFullRefresh=!0:this.refreshRows(0,this._rowCount-1)}clearTextureAtlas(){this._renderer.value&&(this._renderer.value.clearTextureAtlas?.(),this._fullRefresh())}handleDevicePixelRatioChange(){this._charSizeService.measure(),this._renderer.value&&(this._renderer.value.handleDevicePixelRatioChange(),this.refreshRows(0,this._rowCount-1))}handleResize(a,b){this._renderer.value&&(this._isPaused?this._pausedResizeTask.set(()=>this._renderer.value?.handleResize(a,b)):this._renderer.value.handleResize(a,b),this._fullRefresh())}handleCharSizeChanged(){this._renderer.value?.handleCharSizeChanged()}handleBlur(){this._renderer.value?.handleBlur()}handleFocus(){this._renderer.value?.handleFocus()}handleSelectionChanged(a,b,c){this._selectionState.start=a,this._selectionState.end=b,this._selectionState.columnSelectMode=c,this._renderer.value?.handleSelectionChanged(a,b,c)}handleCursorMove(){this._renderer.value?.handleCursorMove()}clear(){this._renderer.value?.clear()}};dI=L([M(2,ah),M(3,am),M(4,ad),M(5,ak),M(6,ab),M(7,an),M(8,as)],dI);var dJ=class{constructor(a,b,c){this._coreBrowserService=a,this._coreService=b,this._onTimeout=c,this._start=0,this._end=0,this._isBuffering=!1}bufferRows(a,b){this._isBuffering?(this._start=Math.min(this._start,a),this._end=Math.max(this._end,b)):(this._start=a,this._end=b,this._isBuffering=!0),void 0===this._timeout&&(this._timeout=this._coreBrowserService.window.setTimeout(()=>{this._timeout=void 0,this._coreService.decPrivateModes.synchronizedOutput=!1,this._onTimeout()},1e3))}flush(){if(void 0!==this._timeout&&(this._coreBrowserService.window.clearTimeout(this._timeout),this._timeout=void 0),!this._isBuffering)return;let a={start:this._start,end:this._end};return this._isBuffering=!1,a}dispose(){void 0!==this._timeout&&(this._coreBrowserService.window.clearTimeout(this._timeout),this._timeout=void 0)}};function dK(a,b,c,d){return dO(Math.abs(a-dL(a,c)-(b-dL(b,c)))-function(a,b,c){let d=0,e=a-dL(a,c),f=b-dL(b,c);for(let g=0;g<Math.abs(e-f);g++){let f="A"===function(a,b){return a>b?"A":"B"}(a,b)?-1:1;c.buffer.lines.get(e+f*g)?.isWrapped&&d++}return d}(a,b,c),dN(a>b?"A":"B",d))}function dL(a,b){let c=0,d=b.buffer.lines.get(a),e=d?.isWrapped;for(;e&&a>=0&&a<b.rows;)c++,d=b.buffer.lines.get(--a),e=d?.isWrapped;return c}function dM(a,b,c,d,e,f){let g=a,h=b,i="";for(;(g!==c||h!==d)&&h>=0&&h<f.buffer.lines.length;)g+=e?1:-1,e&&g>f.cols-1?(i+=f.buffer.translateBufferLineToString(h,!1,a,g),g=0,a=0,h++):!e&&g<0&&(i+=f.buffer.translateBufferLineToString(h,!1,0,a+1),a=g=f.cols-1,h--);return i+f.buffer.translateBufferLineToString(h,!1,a,g)}function dN(a,b){return cH.ESC+(b?"O":"[")+a}function dO(a,b){a=Math.floor(a);let c="";for(let d=0;d<a;d++)c+=b;return c}var dP=class{constructor(a){this._bufferService=a,this.isSelectAllActive=!1,this.selectionStartLength=0}clearSelection(){this.selectionStart=void 0,this.selectionEnd=void 0,this.isSelectAllActive=!1,this.selectionStartLength=0}get finalSelectionStart(){return this.isSelectAllActive?[0,0]:this.selectionEnd&&this.selectionStart&&this.areSelectionValuesReversed()?this.selectionEnd:this.selectionStart}get finalSelectionEnd(){if(this.isSelectAllActive)return[this._bufferService.cols,this._bufferService.buffer.ybase+this._bufferService.rows-1];if(this.selectionStart){if(!this.selectionEnd||this.areSelectionValuesReversed()){let a=this.selectionStart[0]+this.selectionStartLength;return a>this._bufferService.cols?a%this._bufferService.cols==0?[this._bufferService.cols,this.selectionStart[1]+Math.floor(a/this._bufferService.cols)-1]:[a%this._bufferService.cols,this.selectionStart[1]+Math.floor(a/this._bufferService.cols)]:[a,this.selectionStart[1]]}if(this.selectionStartLength&&this.selectionEnd[1]===this.selectionStart[1]){let a=this.selectionStart[0]+this.selectionStartLength;return a>this._bufferService.cols?[a%this._bufferService.cols,this.selectionStart[1]+Math.floor(a/this._bufferService.cols)]:[Math.max(a,this.selectionEnd[0]),this.selectionEnd[1]]}return this.selectionEnd}}areSelectionValuesReversed(){let a=this.selectionStart,b=this.selectionEnd;return!!a&&!!b&&(a[1]>b[1]||a[1]===b[1]&&a[0]>b[0])}handleTrim(a){return this.selectionStart&&(this.selectionStart[1]-=a),this.selectionEnd&&(this.selectionEnd[1]-=a),this.selectionEnd&&this.selectionEnd[1]<0?(this.clearSelection(),!0):(this.selectionStart&&this.selectionStart[1]<0&&(this.selectionStart[1]=0),!1)}};function dQ(a,b){if(a.start.y>a.end.y)throw Error(`Buffer range end (${a.end.x}, ${a.end.y}) cannot be before start (${a.start.x}, ${a.start.y})`);return b*(a.end.y-a.start.y)+(a.end.x-a.start.x+1)}var dR=RegExp(" ","g"),dS=class extends aI{constructor(a,b,c,d,e,f,g,h,i){super(),this._element=a,this._screenElement=b,this._linkifier=c,this._bufferService=d,this._coreService=e,this._mouseService=f,this._optionsService=g,this._renderService=h,this._coreBrowserService=i,this._dragScrollAmount=0,this._enabled=!0,this._workCell=new Y,this._mouseDownTimeStamp=0,this._oldHasSelection=!1,this._oldSelectionStart=void 0,this._oldSelectionEnd=void 0,this._onLinuxMouseSelection=this._register(new a_),this.onLinuxMouseSelection=this._onLinuxMouseSelection.event,this._onRedrawRequest=this._register(new a_),this.onRequestRedraw=this._onRedrawRequest.event,this._onSelectionChange=this._register(new a_),this.onSelectionChange=this._onSelectionChange.event,this._onRequestScrollLines=this._register(new a_),this.onRequestScrollLines=this._onRequestScrollLines.event,this._mouseMoveListener=a=>this._handleMouseMove(a),this._mouseUpListener=a=>this._handleMouseUp(a),this._coreService.onUserInput(()=>{this.hasSelection&&this.clearSelection()}),this._trimListener=this._bufferService.buffer.lines.onTrim(a=>this._handleTrim(a)),this._register(this._bufferService.buffers.onBufferActivate(a=>this._handleBufferActivate(a))),this.enable(),this._model=new dP(this._bufferService),this._activeSelectionMode=0,this._register(aF(()=>{this._removeMouseDownListeners()})),this._register(this._bufferService.onResize(a=>{a.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 a=this._model.finalSelectionStart,b=this._model.finalSelectionEnd;return!!a&&!!b&&(a[0]!==b[0]||a[1]!==b[1])}get selectionText(){let a=this._model.finalSelectionStart,b=this._model.finalSelectionEnd;if(!a||!b)return"";let c=this._bufferService.buffer,d=[];if(3===this._activeSelectionMode){if(a[0]===b[0])return"";let e=a[0]<b[0]?a[0]:b[0],f=a[0]<b[0]?b[0]:a[0];for(let g=a[1];g<=b[1];g++){let a=c.translateBufferLineToString(g,!0,e,f);d.push(a)}}else{let e=a[1]===b[1]?b[0]:void 0;d.push(c.translateBufferLineToString(a[1],!0,a[0],e));for(let e=a[1]+1;e<=b[1]-1;e++){let a=c.lines.get(e),b=c.translateBufferLineToString(e,!0);a?.isWrapped?d[d.length-1]+=b:d.push(b)}if(a[1]!==b[1]){let a=c.lines.get(b[1]),e=c.translateBufferLineToString(b[1],!0,0,b[0]);a&&a.isWrapped?d[d.length-1]+=e:d.push(e)}}return d.map(a=>a.replace(dR," ")).join(dA?`\r
|
|
27
27
|
`:`
|
|
28
|
-
`)}clearSelection(){this._model.clearSelection(),this._removeMouseDownListeners(),this.refresh(),this._onSelectionChange.fire()}refresh(a){this._refreshAnimationFrame||(this._refreshAnimationFrame=this._coreBrowserService.window.requestAnimationFrame(()=>this._refresh())),dv&&a&&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:3===this._activeSelectionMode})}_isClickInSelection(a){let b=this._getMouseBufferCoords(a),c=this._model.finalSelectionStart,d=this._model.finalSelectionEnd;return!!c&&!!d&&!!b&&this._areCoordsInSelection(b,c,d)}isCellInSelection(a,b){let c=this._model.finalSelectionStart,d=this._model.finalSelectionEnd;return!!c&&!!d&&this._areCoordsInSelection([a,b],c,d)}_areCoordsInSelection(a,b,c){return a[1]>b[1]&&a[1]<c[1]||b[1]===c[1]&&a[1]===b[1]&&a[0]>=b[0]&&a[0]<c[0]||b[1]<c[1]&&a[1]===c[1]&&a[0]<c[0]||b[1]<c[1]&&a[1]===b[1]&&a[0]>=b[0]}_selectWordAtCursor(a,b){let c=this._linkifier.currentLink?.link?.range;if(c)return this._model.selectionStart=[c.start.x-1,c.start.y-1],this._model.selectionStartLength=dK(c,this._bufferService.cols),this._model.selectionEnd=void 0,!0;let d=this._getMouseBufferCoords(a);return!!d&&(this._selectWordAt(d,b),this._model.selectionEnd=void 0,!0)}selectAll(){this._model.isSelectAllActive=!0,this.refresh(),this._onSelectionChange.fire()}selectLines(a,b){this._model.clearSelection(),a=Math.max(a,0),b=Math.min(b,this._bufferService.buffer.lines.length-1),this._model.selectionStart=[0,a],this._model.selectionEnd=[this._bufferService.cols,b],this.refresh(),this._onSelectionChange.fire()}_handleTrim(a){this._model.handleTrim(a)&&this.refresh()}_getMouseBufferCoords(a){let b=this._mouseService.getCoords(a,this._screenElement,this._bufferService.cols,this._bufferService.rows,!0);if(b)return b[0]--,b[1]--,b[1]+=this._bufferService.buffer.ydisp,b}_getMouseEventScrollAmount(a){let b=dd(this._coreBrowserService.window,a,this._screenElement)[1],c=this._renderService.dimensions.css.canvas.height;return b>=0&&b<=c?0:(b>c&&(b-=c),(b=Math.min(Math.max(b,-50),50)/50)/Math.abs(b)+Math.round(14*b))}shouldForceSelection(a){return dr?a.altKey&&this._optionsService.rawOptions.macOptionClickForcesSelection:a.shiftKey}handleMouseDown(a){if(this._mouseDownTimeStamp=a.timeStamp,!(2===a.button&&this.hasSelection)&&0===a.button){if(!this._enabled){if(!this.shouldForceSelection(a))return;a.stopPropagation()}a.preventDefault(),this._dragScrollAmount=0,this._enabled&&a.shiftKey?this._handleIncrementalClick(a):1===a.detail?this._handleSingleClick(a):2===a.detail?this._handleDoubleClick(a):3===a.detail&&this._handleTripleClick(a),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(),50)}_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(a){this._model.selectionStart&&(this._model.selectionEnd=this._getMouseBufferCoords(a))}_handleSingleClick(a){if(this._model.selectionStartLength=0,this._model.isSelectAllActive=!1,this._activeSelectionMode=3*!!this.shouldColumnSelect(a),this._model.selectionStart=this._getMouseBufferCoords(a),!this._model.selectionStart)return;this._model.selectionEnd=void 0;let b=this._bufferService.buffer.lines.get(this._model.selectionStart[1]);b&&b.length!==this._model.selectionStart[0]&&0===b.hasWidth(this._model.selectionStart[0])&&this._model.selectionStart[0]++}_handleDoubleClick(a){this._selectWordAtCursor(a,!0)&&(this._activeSelectionMode=1)}_handleTripleClick(a){let b=this._getMouseBufferCoords(a);b&&(this._activeSelectionMode=2,this._selectLineAt(b[1]))}shouldColumnSelect(a){return a.altKey&&!(dr&&this._optionsService.rawOptions.macOptionClickForcesSelection)}_handleMouseMove(a){if(a.stopImmediatePropagation(),!this._model.selectionStart)return;let b=this._model.selectionEnd?[this._model.selectionEnd[0],this._model.selectionEnd[1]]:null;if(this._model.selectionEnd=this._getMouseBufferCoords(a),!this._model.selectionEnd)return void this.refresh(!0);2===this._activeSelectionMode?this._model.selectionEnd[1]<this._model.selectionStart[1]?this._model.selectionEnd[0]=0:this._model.selectionEnd[0]=this._bufferService.cols:1===this._activeSelectionMode&&this._selectToWordAt(this._model.selectionEnd),this._dragScrollAmount=this._getMouseEventScrollAmount(a),3!==this._activeSelectionMode&&(this._dragScrollAmount>0?this._model.selectionEnd[0]=this._bufferService.cols:this._dragScrollAmount<0&&(this._model.selectionEnd[0]=0));let c=this._bufferService.buffer;if(this._model.selectionEnd[1]<c.lines.length){let a=c.lines.get(this._model.selectionEnd[1]);a&&0===a.hasWidth(this._model.selectionEnd[0])&&this._model.selectionEnd[0]<this._bufferService.cols&&this._model.selectionEnd[0]++}b&&b[0]===this._model.selectionEnd[0]&&b[1]===this._model.selectionEnd[1]||this.refresh(!0)}_dragScroll(){if(!(!this._model.selectionEnd||!this._model.selectionStart)&&this._dragScrollAmount){this._onRequestScrollLines.fire({amount:this._dragScrollAmount,suppressScrollEvent:!1});let a=this._bufferService.buffer;this._dragScrollAmount>0?(3!==this._activeSelectionMode&&(this._model.selectionEnd[0]=this._bufferService.cols),this._model.selectionEnd[1]=Math.min(a.ydisp+this._bufferService.rows,a.lines.length-1)):(3!==this._activeSelectionMode&&(this._model.selectionEnd[0]=0),this._model.selectionEnd[1]=a.ydisp),this.refresh()}}_handleMouseUp(a){let b=a.timeStamp-this._mouseDownTimeStamp;if(this._removeMouseDownListeners(),this.selectionText.length<=1&&b<500&&a.altKey&&this._optionsService.rawOptions.altClickMovesCursor){if(this._bufferService.buffer.ybase===this._bufferService.buffer.ydisp){let b=this._mouseService.getCoords(a,this._element,this._bufferService.cols,this._bufferService.rows,!1);if(b&&void 0!==b[0]&&void 0!==b[1]){let a=function(a,b,c,d){var e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,u;let v,w=c.buffer.x,x=c.buffer.y;if(!c.buffer.hasScrollback){let u,v,y;return e=w,(0===dE(f=x,b,g=c,h=d).length?"":dI(dG(e,f,e,f-dF(f,g),!1,g).length,dH("D",h)))+dE(x,b,c,d)+(i=w,j=x,k=a,u=dE(j,l=b,m=c,n=d).length>0?l-dF(l,m):j,y=(o=i,p=j,v=dE(q=k,r=l,s=m,n).length>0?r-dF(r,s):p,o<q&&v<=r||o>=q&&v<r?"C":"D"),dI(dG(i,u,k,l,"C"===y,m).length,dH(y,n)))}if(x===b)return v=w>a?"D":"C",dI(Math.abs(w-a),dH(v,d));v=x>b?"D":"C";let y=Math.abs(x-b);return dI((u=x>b?a:w,c.cols-u+(y-1)*c.cols+1+((x>b?w:a)-1)),dH(v,d))}(b[0]-1,b[1]-1,this._bufferService,this._coreService.decPrivateModes.applicationCursorKeys);this._coreService.triggerDataEvent(a,!0)}}}else this._fireEventIfSelectionChanged()}_fireEventIfSelectionChanged(){let a=this._model.finalSelectionStart,b=this._model.finalSelectionEnd,c=!!a&&!!b&&(a[0]!==b[0]||a[1]!==b[1]);if(!c){this._oldHasSelection&&this._fireOnSelectionChange(a,b,c);return}!a||!b||this._oldSelectionStart&&this._oldSelectionEnd&&a[0]===this._oldSelectionStart[0]&&a[1]===this._oldSelectionStart[1]&&b[0]===this._oldSelectionEnd[0]&&b[1]===this._oldSelectionEnd[1]||this._fireOnSelectionChange(a,b,c)}_fireOnSelectionChange(a,b,c){this._oldSelectionStart=a,this._oldSelectionEnd=b,this._oldHasSelection=c,this._onSelectionChange.fire()}_handleBufferActivate(a){this.clearSelection(),this._trimListener.dispose(),this._trimListener=a.activeBuffer.lines.onTrim(a=>this._handleTrim(a))}_convertViewportColToCharacterIndex(a,b){let c=b;for(let d=0;b>=d;d++){let e=a.loadCell(d,this._workCell).getChars().length;0===this._workCell.getWidth()?c--:e>1&&b!==d&&(c+=e-1)}return c}setSelection(a,b,c){this._model.clearSelection(),this._removeMouseDownListeners(),this._model.selectionStart=[a,b],this._model.selectionStartLength=c,this.refresh(),this._fireEventIfSelectionChanged()}rightClickSelect(a){this._isClickInSelection(a)||(this._selectWordAtCursor(a,!1)&&this.refresh(!0),this._fireEventIfSelectionChanged())}_getWordAt(a,b,c=!0,d=!0){if(a[0]>=this._bufferService.cols)return;let e=this._bufferService.buffer,f=e.lines.get(a[1]);if(!f)return;let g=e.translateBufferLineToString(a[1],!1),h=this._convertViewportColToCharacterIndex(f,a[0]),i=h,j=a[0]-h,k=0,l=0,m=0,n=0;if(" "===g.charAt(h)){for(;h>0&&" "===g.charAt(h-1);)h--;for(;i<g.length&&" "===g.charAt(i+1);)i++}else{let b=a[0],c=a[0];0===f.getWidth(b)&&(k++,b--),2===f.getWidth(c)&&(l++,c++);let d=f.getString(c).length;for(d>1&&(n+=d-1,i+=d-1);b>0&&h>0&&!this._isCharWordSeparator(f.loadCell(b-1,this._workCell));){f.loadCell(b-1,this._workCell);let a=this._workCell.getChars().length;0===this._workCell.getWidth()?(k++,b--):a>1&&(m+=a-1,h-=a-1),h--,b--}for(;c<f.length&&i+1<g.length&&!this._isCharWordSeparator(f.loadCell(c+1,this._workCell));){f.loadCell(c+1,this._workCell);let a=this._workCell.getChars().length;2===this._workCell.getWidth()?(l++,c++):a>1&&(n+=a-1,i+=a-1),i++,c++}}i++;let o=h+j-k+m,p=Math.min(this._bufferService.cols,i-h+k+l-m-n);if(!(!b&&""===g.slice(h,i).trim())){if(c&&0===o&&32!==f.getCodePoint(0)){let b=e.lines.get(a[1]-1);if(b&&f.isWrapped&&32!==b.getCodePoint(this._bufferService.cols-1)){let b=this._getWordAt([this._bufferService.cols-1,a[1]-1],!1,!0,!1);if(b){let a=this._bufferService.cols-b.start;o-=a,p+=a}}}if(d&&o+p===this._bufferService.cols&&32!==f.getCodePoint(this._bufferService.cols-1)){let b=e.lines.get(a[1]+1);if(b?.isWrapped&&32!==b.getCodePoint(0)){let b=this._getWordAt([0,a[1]+1],!1,!1,!0);b&&(p+=b.length)}}return{start:o,length:p}}}_selectWordAt(a,b){let c=this._getWordAt(a,b);if(c){for(;c.start<0;)c.start+=this._bufferService.cols,a[1]--;this._model.selectionStart=[c.start,a[1]],this._model.selectionStartLength=c.length}}_selectToWordAt(a){let b=this._getWordAt(a,!0);if(b){let c=a[1];for(;b.start<0;)b.start+=this._bufferService.cols,c--;if(!this._model.areSelectionValuesReversed())for(;b.start+b.length>this._bufferService.cols;)b.length-=this._bufferService.cols,c++;this._model.selectionEnd=[this._model.areSelectionValuesReversed()?b.start:b.start+b.length,c]}}_isCharWordSeparator(a){return 0!==a.getWidth()&&this._optionsService.rawOptions.wordSeparator.indexOf(a.getChars())>=0}_selectLineAt(a){let b=this._bufferService.buffer.getWrappedRangeForLine(a),c={start:{x:0,y:b.first},end:{x:this._bufferService.cols-1,y:b.last}};this._model.selectionStart=[0,b.first],this._model.selectionEnd=void 0,this._model.selectionStartLength=dK(c,this._bufferService.cols)}};dM=F([G(3,X),G(4,Z),G(5,ai),G(6,ab),G(7,aj),G(8,ah)],dM);var dN=class{constructor(){this._data={}}set(a,b,c){this._data[a]||(this._data[a]={}),this._data[a][b]=c}get(a,b){return this._data[a]?this._data[a][b]:void 0}clear(){this._data={}}},dO=class{constructor(){this._color=new dN,this._css=new dN}setCss(a,b,c){this._css.set(a,b,c)}getCss(a,b){return this._css.get(a,b)}setColor(a,b,c){this._color.set(a,b,c)}getColor(a,b){return this._color.get(a,b)}clear(){this._color.clear(),this._css.clear()}},dP=Object.freeze((()=>{let a=[en.toColor("#2e3436"),en.toColor("#cc0000"),en.toColor("#4e9a06"),en.toColor("#c4a000"),en.toColor("#3465a4"),en.toColor("#75507b"),en.toColor("#06989a"),en.toColor("#d3d7cf"),en.toColor("#555753"),en.toColor("#ef2929"),en.toColor("#8ae234"),en.toColor("#fce94f"),en.toColor("#729fcf"),en.toColor("#ad7fa8"),en.toColor("#34e2e2"),en.toColor("#eeeeec")],b=[0,95,135,175,215,255];for(let c=0;c<216;c++){let d=b[c/36%6|0],e=b[c/6%6|0],f=b[c%6];a.push({css:cE.toCss(d,e,f),rgba:cE.toRgba(d,e,f)})}for(let b=0;b<24;b++){let c=8+10*b;a.push({css:cE.toCss(c,c,c),rgba:cE.toRgba(c,c,c)})}return a})()),dQ=en.toColor("#ffffff"),dR=en.toColor("#000000"),dS=en.toColor("#ffffff"),dT={css:"rgba(255, 255, 255, 0.3)",rgba:0xffffff4d},dU=class extends aC{constructor(a){super(),this._optionsService=a,this._contrastCache=new dO,this._halfContrastCache=new dO,this._onChangeColors=this._register(new aV),this.onChangeColors=this._onChangeColors.event,this._colors={foreground:dQ,background:dR,cursor:dS,cursorAccent:dR,selectionForeground:void 0,selectionBackgroundTransparent:dT,selectionBackgroundOpaque:em.blend(dR,dT),selectionInactiveBackgroundTransparent:dT,selectionInactiveBackgroundOpaque:em.blend(dR,dT),scrollbarSliderBackground:em.opacity(dQ,.2),scrollbarSliderHoverBackground:em.opacity(dQ,.4),scrollbarSliderActiveBackground:em.opacity(dQ,.5),overviewRulerBorder:dQ,ansi:dP.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(a={}){let b=this._colors;if(b.foreground=dV(a.foreground,dQ),b.background=dV(a.background,dR),b.cursor=em.blend(b.background,dV(a.cursor,dS)),b.cursorAccent=em.blend(b.background,dV(a.cursorAccent,dR)),b.selectionBackgroundTransparent=dV(a.selectionBackground,dT),b.selectionBackgroundOpaque=em.blend(b.background,b.selectionBackgroundTransparent),b.selectionInactiveBackgroundTransparent=dV(a.selectionInactiveBackground,b.selectionBackgroundTransparent),b.selectionInactiveBackgroundOpaque=em.blend(b.background,b.selectionInactiveBackgroundTransparent),b.selectionForeground=a.selectionForeground?dV(a.selectionForeground,cJ):void 0,b.selectionForeground===cJ&&(b.selectionForeground=void 0),em.isOpaque(b.selectionBackgroundTransparent)&&(b.selectionBackgroundTransparent=em.opacity(b.selectionBackgroundTransparent,.3)),em.isOpaque(b.selectionInactiveBackgroundTransparent)&&(b.selectionInactiveBackgroundTransparent=em.opacity(b.selectionInactiveBackgroundTransparent,.3)),b.scrollbarSliderBackground=dV(a.scrollbarSliderBackground,em.opacity(b.foreground,.2)),b.scrollbarSliderHoverBackground=dV(a.scrollbarSliderHoverBackground,em.opacity(b.foreground,.4)),b.scrollbarSliderActiveBackground=dV(a.scrollbarSliderActiveBackground,em.opacity(b.foreground,.5)),b.overviewRulerBorder=dV(a.overviewRulerBorder,dQ),b.ansi=dP.slice(),b.ansi[0]=dV(a.black,dP[0]),b.ansi[1]=dV(a.red,dP[1]),b.ansi[2]=dV(a.green,dP[2]),b.ansi[3]=dV(a.yellow,dP[3]),b.ansi[4]=dV(a.blue,dP[4]),b.ansi[5]=dV(a.magenta,dP[5]),b.ansi[6]=dV(a.cyan,dP[6]),b.ansi[7]=dV(a.white,dP[7]),b.ansi[8]=dV(a.brightBlack,dP[8]),b.ansi[9]=dV(a.brightRed,dP[9]),b.ansi[10]=dV(a.brightGreen,dP[10]),b.ansi[11]=dV(a.brightYellow,dP[11]),b.ansi[12]=dV(a.brightBlue,dP[12]),b.ansi[13]=dV(a.brightMagenta,dP[13]),b.ansi[14]=dV(a.brightCyan,dP[14]),b.ansi[15]=dV(a.brightWhite,dP[15]),a.extendedAnsi){let c=Math.min(b.ansi.length-16,a.extendedAnsi.length);for(let d=0;d<c;d++)b.ansi[d+16]=dV(a.extendedAnsi[d],dP[d+16])}this._contrastCache.clear(),this._halfContrastCache.clear(),this._updateRestoreColors(),this._onChangeColors.fire(this.colors)}restoreColor(a){this._restoreColor(a),this._onChangeColors.fire(this.colors)}_restoreColor(a){if(void 0===a){for(let a=0;a<this._restoreColors.ansi.length;++a)this._colors.ansi[a]=this._restoreColors.ansi[a];return}switch(a){case 256:this._colors.foreground=this._restoreColors.foreground;break;case 257:this._colors.background=this._restoreColors.background;break;case 258:this._colors.cursor=this._restoreColors.cursor;break;default:this._colors.ansi[a]=this._restoreColors.ansi[a]}}modifyColors(a){a(this._colors),this._onChangeColors.fire(this.colors)}_updateRestoreColors(){this._restoreColors={foreground:this._colors.foreground,background:this._colors.background,cursor:this._colors.cursor,ansi:this._colors.ansi.slice()}}};function dV(a,b){if(void 0!==a)try{return en.toColor(a)}catch{}return b}dU=F([G(0,ab)],dU);var dW=class{constructor(...a){for(let[b,c]of(this._entries=new Map,a))this.set(b,c)}set(a,b){let c=this._entries.get(a);return this._entries.set(a,b),c}forEach(a){for(let[b,c]of this._entries.entries())a(b,c)}has(a){return this._entries.has(a)}get(a){return this._entries.get(a)}},dX=class{constructor(){this._services=new dW,this._services.set(_,this)}setService(a,b){this._services.set(a,b)}getService(a){return this._services.get(a)}createInstance(a,...b){let c=(a[U]||[]).sort((a,b)=>a.index-b.index),d=[];for(let b of c){let c=this._services.get(b.id);if(!c)throw Error(`[createInstance] ${a.name} depends on UNKNOWN service ${b.id._id}.`);d.push(c)}let e=c.length>0?c[0].index:b.length;if(b.length!==e)throw Error(`[createInstance] First service dependency of ${a.name} at position ${e+1} conflicts with ${b.length} static arguments`);return new a(...b,...d)}},dY={trace:0,debug:1,info:2,warn:3,error:4,off:5},dZ=class extends aC{constructor(a){super(),this._optionsService=a,this._logLevel=5,this._updateLogLevel(),this._register(this._optionsService.onSpecificOptionChange("logLevel",()=>this._updateLogLevel()))}get logLevel(){return this._logLevel}_updateLogLevel(){this._logLevel=dY[this._optionsService.rawOptions.logLevel]}_evalLazyOptionalParams(a){for(let b=0;b<a.length;b++)"function"==typeof a[b]&&(a[b]=a[b]())}_log(a,b,c){this._evalLazyOptionalParams(c),a.call(console,(this._optionsService.options.logger?"":"xterm.js: ")+b,...c)}trace(a,...b){this._logLevel<=0&&this._log(this._optionsService.options.logger?.trace.bind(this._optionsService.options.logger)??console.log,a,b)}debug(a,...b){this._logLevel<=1&&this._log(this._optionsService.options.logger?.debug.bind(this._optionsService.options.logger)??console.log,a,b)}info(a,...b){this._logLevel<=2&&this._log(this._optionsService.options.logger?.info.bind(this._optionsService.options.logger)??console.info,a,b)}warn(a,...b){this._logLevel<=3&&this._log(this._optionsService.options.logger?.warn.bind(this._optionsService.options.logger)??console.warn,a,b)}error(a,...b){this._logLevel<=4&&this._log(this._optionsService.options.logger?.error.bind(this._optionsService.options.logger)??console.error,a,b)}};dZ=F([G(0,ab)],dZ);var d$=class extends aC{constructor(a){super(),this._maxLength=a,this.onDeleteEmitter=this._register(new aV),this.onDelete=this.onDeleteEmitter.event,this.onInsertEmitter=this._register(new aV),this.onInsert=this.onInsertEmitter.event,this.onTrimEmitter=this._register(new aV),this.onTrim=this.onTrimEmitter.event,this._array=Array(this._maxLength),this._startIndex=0,this._length=0}get maxLength(){return this._maxLength}set maxLength(a){if(this._maxLength===a)return;let b=Array(a);for(let c=0;c<Math.min(a,this.length);c++)b[c]=this._array[this._getCyclicIndex(c)];this._array=b,this._maxLength=a,this._startIndex=0}get length(){return this._length}set length(a){if(a>this._length)for(let b=this._length;b<a;b++)this._array[b]=void 0;this._length=a}get(a){return this._array[this._getCyclicIndex(a)]}set(a,b){this._array[this._getCyclicIndex(a)]=b}push(a){this._array[this._getCyclicIndex(this._length)]=a,this._length===this._maxLength?(this._startIndex=++this._startIndex%this._maxLength,this.onTrimEmitter.fire(1)):this._length++}recycle(){if(this._length!==this._maxLength)throw Error("Can only recycle when the buffer is full");return this._startIndex=++this._startIndex%this._maxLength,this.onTrimEmitter.fire(1),this._array[this._getCyclicIndex(this._length-1)]}get isFull(){return this._length===this._maxLength}pop(){return this._array[this._getCyclicIndex(this._length---1)]}splice(a,b,...c){if(b){for(let c=a;c<this._length-b;c++)this._array[this._getCyclicIndex(c)]=this._array[this._getCyclicIndex(c+b)];this._length-=b,this.onDeleteEmitter.fire({index:a,amount:b})}for(let b=this._length-1;b>=a;b--)this._array[this._getCyclicIndex(b+c.length)]=this._array[this._getCyclicIndex(b)];for(let b=0;b<c.length;b++)this._array[this._getCyclicIndex(a+b)]=c[b];if(c.length&&this.onInsertEmitter.fire({index:a,amount:c.length}),this._length+c.length>this._maxLength){let a=this._length+c.length-this._maxLength;this._startIndex+=a,this._length=this._maxLength,this.onTrimEmitter.fire(a)}else this._length+=c.length}trimStart(a){a>this._length&&(a=this._length),this._startIndex+=a,this._length-=a,this.onTrimEmitter.fire(a)}shiftElements(a,b,c){if(!(b<=0)){if(a<0||a>=this._length)throw Error("start argument out of range");if(a+c<0)throw Error("Cannot shift elements in list beyond index 0");if(c>0){for(let d=b-1;d>=0;d--)this.set(a+d+c,this.get(a+d));let d=a+b+c-this._length;if(d>0)for(this._length+=d;this._length>this._maxLength;)this._length--,this._startIndex++,this.onTrimEmitter.fire(1)}else for(let d=0;d<b;d++)this.set(a+d+c,this.get(a+d))}}_getCyclicIndex(a){return(this._startIndex+a)%this._maxLength}},d_=Object.freeze(new Q),d0=0,d1=class a{constructor(a,b,c=!1){this.isWrapped=c,this._combined={},this._extendedAttrs={},this._data=new Uint32Array(3*a);let d=b||S.fromCharData([0,"",1,0]);for(let b=0;b<a;++b)this.setCell(b,d);this.length=a}get(a){let b=this._data[3*a+0],c=2097151&b;return[this._data[3*a+1],2097152&b?this._combined[a]:c?M(c):"",b>>22,2097152&b?this._combined[a].charCodeAt(this._combined[a].length-1):c]}set(a,b){this._data[3*a+1]=b[0],b[1].length>1?(this._combined[a]=b[1],this._data[3*a+0]=2097152|a|b[2]<<22):this._data[3*a+0]=b[1].charCodeAt(0)|b[2]<<22}getWidth(a){return this._data[3*a+0]>>22}hasWidth(a){return 0xc00000&this._data[3*a+0]}getFg(a){return this._data[3*a+1]}getBg(a){return this._data[3*a+2]}hasContent(a){return 4194303&this._data[3*a+0]}getCodePoint(a){let b=this._data[3*a+0];return 2097152&b?this._combined[a].charCodeAt(this._combined[a].length-1):2097151&b}isCombined(a){return 2097152&this._data[3*a+0]}getString(a){let b=this._data[3*a+0];return 2097152&b?this._combined[a]:2097151&b?M(2097151&b):""}isProtected(a){return 0x20000000&this._data[3*a+2]}loadCell(a,b){return d0=3*a,b.content=this._data[d0+0],b.fg=this._data[d0+1],b.bg=this._data[d0+2],2097152&b.content&&(b.combinedData=this._combined[a]),0x10000000&b.bg&&(b.extended=this._extendedAttrs[a]),b}setCell(a,b){2097152&b.content&&(this._combined[a]=b.combinedData),0x10000000&b.bg&&(this._extendedAttrs[a]=b.extended),this._data[3*a+0]=b.content,this._data[3*a+1]=b.fg,this._data[3*a+2]=b.bg}setCellFromCodepoint(a,b,c,d){0x10000000&d.bg&&(this._extendedAttrs[a]=d.extended),this._data[3*a+0]=b|c<<22,this._data[3*a+1]=d.fg,this._data[3*a+2]=d.bg}addCodepointToCell(a,b,c){let d=this._data[3*a+0];2097152&d?this._combined[a]+=M(b):2097151&d?(this._combined[a]=M(2097151&d)+M(b),d&=-2097152,d|=2097152):d=4194304|b,c&&(d&=-0xc00001,d|=c<<22),this._data[3*a+0]=d}insertCells(a,b,c){if((a%=this.length)&&2===this.getWidth(a-1)&&this.setCellFromCodepoint(a-1,0,1,c),b<this.length-a){let d=new S;for(let c=this.length-a-b-1;c>=0;--c)this.setCell(a+b+c,this.loadCell(a+c,d));for(let d=0;d<b;++d)this.setCell(a+d,c)}else for(let b=a;b<this.length;++b)this.setCell(b,c);2===this.getWidth(this.length-1)&&this.setCellFromCodepoint(this.length-1,0,1,c)}deleteCells(a,b,c){if(a%=this.length,b<this.length-a){let d=new S;for(let c=0;c<this.length-a-b;++c)this.setCell(a+c,this.loadCell(a+b+c,d));for(let a=this.length-b;a<this.length;++a)this.setCell(a,c)}else for(let b=a;b<this.length;++b)this.setCell(b,c);a&&2===this.getWidth(a-1)&&this.setCellFromCodepoint(a-1,0,1,c),0!==this.getWidth(a)||this.hasContent(a)||this.setCellFromCodepoint(a,0,1,c)}replaceCells(a,b,c,d=!1){if(d){for(a&&2===this.getWidth(a-1)&&!this.isProtected(a-1)&&this.setCellFromCodepoint(a-1,0,1,c),b<this.length&&2===this.getWidth(b-1)&&!this.isProtected(b)&&this.setCellFromCodepoint(b,0,1,c);a<b&&a<this.length;)this.isProtected(a)||this.setCell(a,c),a++;return}for(a&&2===this.getWidth(a-1)&&this.setCellFromCodepoint(a-1,0,1,c),b<this.length&&2===this.getWidth(b-1)&&this.setCellFromCodepoint(b,0,1,c);a<b&&a<this.length;)this.setCell(a++,c)}resize(a,b){if(a===this.length)return 4*this._data.length*2<this._data.buffer.byteLength;let c=3*a;if(a>this.length){if(this._data.buffer.byteLength>=4*c)this._data=new Uint32Array(this._data.buffer,0,c);else{let a=new Uint32Array(c);a.set(this._data),this._data=a}for(let c=this.length;c<a;++c)this.setCell(c,b)}else{this._data=this._data.subarray(0,c);let b=Object.keys(this._combined);for(let c=0;c<b.length;c++){let d=parseInt(b[c],10);d>=a&&delete this._combined[d]}let d=Object.keys(this._extendedAttrs);for(let b=0;b<d.length;b++){let c=parseInt(d[b],10);c>=a&&delete this._extendedAttrs[c]}}return this.length=a,4*c*2<this._data.buffer.byteLength}cleanupMemory(){if(4*this._data.length*2<this._data.buffer.byteLength){let a=new Uint32Array(this._data.length);return a.set(this._data),this._data=a,1}return 0}fill(a,b=!1){if(b){for(let b=0;b<this.length;++b)this.isProtected(b)||this.setCell(b,a);return}this._combined={},this._extendedAttrs={};for(let b=0;b<this.length;++b)this.setCell(b,a)}copyFrom(a){for(let b in this.length!==a.length?this._data=new Uint32Array(a._data):this._data.set(a._data),this.length=a.length,this._combined={},a._combined)this._combined[b]=a._combined[b];for(let b in this._extendedAttrs={},a._extendedAttrs)this._extendedAttrs[b]=a._extendedAttrs[b];this.isWrapped=a.isWrapped}clone(){let b=new a(0);for(let a in b._data=new Uint32Array(this._data),b.length=this.length,this._combined)b._combined[a]=this._combined[a];for(let a in this._extendedAttrs)b._extendedAttrs[a]=this._extendedAttrs[a];return b.isWrapped=this.isWrapped,b}getTrimmedLength(){for(let a=this.length-1;a>=0;--a)if(4194303&this._data[3*a+0])return a+(this._data[3*a+0]>>22);return 0}getNoBgTrimmedLength(){for(let a=this.length-1;a>=0;--a)if(4194303&this._data[3*a+0]||0x3000000&this._data[3*a+2])return a+(this._data[3*a+0]>>22);return 0}copyCellsFrom(a,b,c,d,e){let f=a._data;if(e)for(let e=d-1;e>=0;e--){for(let a=0;a<3;a++)this._data[(c+e)*3+a]=f[(b+e)*3+a];0x10000000&f[(b+e)*3+2]&&(this._extendedAttrs[c+e]=a._extendedAttrs[b+e])}else for(let e=0;e<d;e++){for(let a=0;a<3;a++)this._data[(c+e)*3+a]=f[(b+e)*3+a];0x10000000&f[(b+e)*3+2]&&(this._extendedAttrs[c+e]=a._extendedAttrs[b+e])}let g=Object.keys(a._combined);for(let d=0;d<g.length;d++){let e=parseInt(g[d],10);e>=b&&(this._combined[e-b+c]=a._combined[e])}}translateToString(a,b,c,d){b=b??0,c=c??this.length,a&&(c=Math.min(c,this.getTrimmedLength())),d&&(d.length=0);let e="";for(;b<c;){let a=this._data[3*b+0],c=2097151&a,f=2097152&a?this._combined[b]:c?M(c):" ";if(e+=f,d)for(let a=0;a<f.length;++a)d.push(b);b+=a>>22||1}return d&&d.push(b),e}};function d2(a,b,c){if(b===a.length-1)return a[b].getTrimmedLength();let d=!a[b].hasContent(c-1)&&1===a[b].getWidth(c-1),e=2===a[b+1].getWidth(0);return d&&e?c-1:c}var d3=class a{constructor(b){this.line=b,this.isDisposed=!1,this._disposables=[],this._id=a._nextId++,this._onDispose=this.register(new aV),this.onDispose=this._onDispose.event}get id(){return this._id}dispose(){this.isDisposed||(this.isDisposed=!0,this.line=-1,this._onDispose.fire(),ay(this._disposables),this._disposables.length=0)}register(a){return this._disposables.push(a),a}};d3._nextId=1;var d4={},d5=d4.B;d4[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:"≥","{":"π","|":"≠","}":"£","~":"·"},d4.A={"#":"£"},d4.B=void 0,d4[4]={"#":"£","@":"¾","[":"ij","\\":"½","]":"|","{":"¨","|":"f","}":"¼","~":"´"},d4.C=d4[5]={"[":"Ä","\\":"Ö","]":"Å","^":"Ü","`":"é","{":"ä","|":"ö","}":"å","~":"ü"},d4.R={"#":"£","@":"à","[":"°","\\":"ç","]":"§","{":"é","|":"ù","}":"è","~":"¨"},d4.Q={"@":"à","[":"â","\\":"ç","]":"ê","^":"î","`":"ô","{":"é","|":"ù","}":"è","~":"û"},d4.K={"@":"§","[":"Ä","\\":"Ö","]":"Ü","{":"ä","|":"ö","}":"ü","~":"ß"},d4.Y={"#":"£","@":"§","[":"°","\\":"ç","]":"é","`":"ù","{":"à","|":"ò","}":"è","~":"ì"},d4.E=d4[6]={"@":"Ä","[":"Æ","\\":"Ø","]":"Å","^":"Ü","`":"ä","{":"æ","|":"ø","}":"å","~":"ü"},d4.Z={"#":"£","@":"§","[":"¡","\\":"Ñ","]":"¿","{":"°","|":"ñ","}":"ç"},d4.H=d4[7]={"@":"É","[":"Ä","\\":"Ö","]":"Å","^":"Ü","`":"é","{":"ä","|":"ö","}":"å","~":"ü"},d4["="]={"#":"ù","@":"à","[":"é","\\":"ç","]":"ê","^":"î",_:"è","`":"ô","{":"ä","|":"ö","}":"ü","~":"û"};var d6=class{constructor(a,b,c){this._hasScrollback=a,this._optionsService=b,this._bufferService=c,this.ydisp=0,this.ybase=0,this.y=0,this.x=0,this.tabs={},this.savedY=0,this.savedX=0,this.savedCurAttrData=d_.clone(),this.savedCharset=d5,this.markers=[],this._nullCell=S.fromCharData([0,"",1,0]),this._whitespaceCell=S.fromCharData([0," ",1,32]),this._isClearing=!1,this._memoryCleanupQueue=new dA,this._memoryCleanupPosition=0,this._cols=this._bufferService.cols,this._rows=this._bufferService.rows,this.lines=new d$(this._getCorrectBufferLength(this._rows)),this.scrollTop=0,this.scrollBottom=this._rows-1,this.setupTabStops()}getNullCell(a){return a?(this._nullCell.fg=a.fg,this._nullCell.bg=a.bg,this._nullCell.extended=a.extended):(this._nullCell.fg=0,this._nullCell.bg=0,this._nullCell.extended=new R),this._nullCell}getWhitespaceCell(a){return a?(this._whitespaceCell.fg=a.fg,this._whitespaceCell.bg=a.bg,this._whitespaceCell.extended=a.extended):(this._whitespaceCell.fg=0,this._whitespaceCell.bg=0,this._whitespaceCell.extended=new R),this._whitespaceCell}getBlankLine(a,b){return new d1(this._bufferService.cols,this.getNullCell(a),b)}get hasScrollback(){return this._hasScrollback&&this.lines.maxLength>this._rows}get isCursorInViewport(){let a=this.ybase+this.y-this.ydisp;return a>=0&&a<this._rows}_getCorrectBufferLength(a){if(!this._hasScrollback)return a;let b=a+this._optionsService.rawOptions.scrollback;return b>0xffffffff?0xffffffff:b}fillViewportRows(a){if(0===this.lines.length){void 0===a&&(a=d_);let b=this._rows;for(;b--;)this.lines.push(this.getBlankLine(a))}}clear(){this.ydisp=0,this.ybase=0,this.y=0,this.x=0,this.lines=new d$(this._getCorrectBufferLength(this._rows)),this.scrollTop=0,this.scrollBottom=this._rows-1,this.setupTabStops()}resize(a,b){let c=this.getNullCell(d_),d=0,e=this._getCorrectBufferLength(b);if(e>this.lines.maxLength&&(this.lines.maxLength=e),this.lines.length>0){if(this._cols<a)for(let b=0;b<this.lines.length;b++)d+=+this.lines.get(b).resize(a,c);let f=0;if(this._rows<b)for(let d=this._rows;d<b;d++)this.lines.length<b+this.ybase&&(this._optionsService.rawOptions.windowsMode||void 0!==this._optionsService.rawOptions.windowsPty.backend||void 0!==this._optionsService.rawOptions.windowsPty.buildNumber?this.lines.push(new d1(a,c)):this.ybase>0&&this.lines.length<=this.ybase+this.y+f+1?(this.ybase--,f++,this.ydisp>0&&this.ydisp--):this.lines.push(new d1(a,c)));else for(let a=this._rows;a>b;a--)this.lines.length>b+this.ybase&&(this.lines.length>this.ybase+this.y+1?this.lines.pop():(this.ybase++,this.ydisp++));if(e<this.lines.maxLength){let a=this.lines.length-e;a>0&&(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=e}this.x=Math.min(this.x,a-1),this.y=Math.min(this.y,b-1),f&&(this.y+=f),this.savedX=Math.min(this.savedX,a-1),this.scrollTop=0}if(this.scrollBottom=b-1,this._isReflowEnabled&&(this._reflow(a,b),this._cols>a))for(let b=0;b<this.lines.length;b++)d+=+this.lines.get(b).resize(a,c);this._cols=a,this._rows=b,this._memoryCleanupQueue.clear(),d>.1*this.lines.length&&(this._memoryCleanupPosition=0,this._memoryCleanupQueue.enqueue(()=>this._batchedMemoryCleanup()))}_batchedMemoryCleanup(){let a=!0;this._memoryCleanupPosition>=this.lines.length&&(this._memoryCleanupPosition=0,a=!1);let b=0;for(;this._memoryCleanupPosition<this.lines.length;)if((b+=this.lines.get(this._memoryCleanupPosition++).cleanupMemory())>100)return!0;return a}get _isReflowEnabled(){let a=this._optionsService.rawOptions.windowsPty;return a&&a.buildNumber?this._hasScrollback&&"conpty"===a.backend&&a.buildNumber>=21376:this._hasScrollback&&!this._optionsService.rawOptions.windowsMode}_reflow(a,b){this._cols!==a&&(a>this._cols?this._reflowLarger(a,b):this._reflowSmaller(a,b))}_reflowLarger(a,b){let c=this._optionsService.rawOptions.reflowCursorLine,d=function(a,b,c,d,e,f){let g=[];for(let h=0;h<a.length-1;h++){let i=h,j=a.get(++i);if(!j.isWrapped)continue;let k=[a.get(h)];for(;i<a.length&&j.isWrapped;)k.push(j),j=a.get(++i);if(!f&&d>=h&&d<i){h+=k.length-1;continue}let l=0,m=d2(k,0,b),n=1,o=0;for(;n<k.length;){let a=d2(k,n,b),d=Math.min(a-o,c-m);k[l].copyCellsFrom(k[n],o,m,d,!1),(m+=d)===c&&(l++,m=0),(o+=d)===a&&(n++,o=0),0===m&&0!==l&&2===k[l-1].getWidth(c-1)&&(k[l].copyCellsFrom(k[l-1],c-1,m++,1,!1),k[l-1].setCell(c-1,e))}k[l].replaceCells(m,c,e);let p=0;for(let a=k.length-1;a>0&&(a>l||0===k[a].getTrimmedLength());a--)p++;p>0&&(g.push(h+k.length-p),g.push(p)),h+=k.length-1}return g}(this.lines,this._cols,a,this.ybase+this.y,this.getNullCell(d_),c);if(d.length>0){let c=function(a,b){let c=[],d=0,e=b[0],f=0;for(let g=0;g<a.length;g++)if(e===g){let c=b[++d];a.onDeleteEmitter.fire({index:g-f,amount:c}),g+=c-1,f+=c,e=b[++d]}else c.push(g);return{layout:c,countRemoved:f}}(this.lines,d);(function(a,b){let c=[];for(let d=0;d<b.length;d++)c.push(a.get(b[d]));for(let b=0;b<c.length;b++)a.set(b,c[b]);a.length=b.length})(this.lines,c.layout),this._reflowLargerAdjustViewport(a,b,c.countRemoved)}}_reflowLargerAdjustViewport(a,b,c){let d=this.getNullCell(d_),e=c;for(;e-- >0;)0===this.ybase?(this.y>0&&this.y--,this.lines.length<b&&this.lines.push(new d1(a,d))):(this.ydisp===this.ybase&&this.ydisp--,this.ybase--);this.savedY=Math.max(this.savedY-c,0)}_reflowSmaller(a,b){let c=this._optionsService.rawOptions.reflowCursorLine,d=this.getNullCell(d_),e=[],f=0;for(let g=this.lines.length-1;g>=0;g--){let h=this.lines.get(g);if(!h||!h.isWrapped&&h.getTrimmedLength()<=a)continue;let i=[h];for(;h.isWrapped&&g>0;)h=this.lines.get(--g),i.unshift(h);if(!c){let a=this.ybase+this.y;if(a>=g&&a<g+i.length)continue}let j=i[i.length-1].getTrimmedLength(),k=function(a,b,c){let d=[],e=a.map((c,d)=>d2(a,d,b)).reduce((a,b)=>a+b),f=0,g=0,h=0;for(;h<e;){if(e-h<c){d.push(e-h);break}f+=c;let i=d2(a,g,b);f>i&&(f-=i,g++);let j=2===a[g].getWidth(f-1);j&&f--;let k=j?c-1:c;d.push(k),h+=k}return d}(i,this._cols,a),l=k.length-i.length,m;m=0===this.ybase&&this.y!==this.lines.length-1?Math.max(0,this.y-this.lines.maxLength+l):Math.max(0,this.lines.length-this.lines.maxLength+l);let n=[];for(let a=0;a<l;a++){let a=this.getBlankLine(d_,!0);n.push(a)}n.length>0&&(e.push({start:g+i.length+f,newLines:n}),f+=n.length),i.push(...n);let o=k.length-1,p=k[o];0===p&&(p=k[--o]);let q=i.length-l-1,r=j;for(;q>=0;){let a=Math.min(r,p);if(void 0===i[o])break;i[o].copyCellsFrom(i[q],r-a,p-a,a,!0),0==(p-=a)&&(p=k[--o]),0==(r-=a)&&(r=d2(i,Math.max(--q,0),this._cols))}for(let b=0;b<i.length;b++)k[b]<a&&i[b].setCell(k[b],d);let s=l-m;for(;s-- >0;)0===this.ybase?this.y<b-1?(this.y++,this.lines.pop()):(this.ybase++,this.ydisp++):this.ybase<Math.min(this.lines.maxLength,this.lines.length+f)-b&&(this.ybase===this.ydisp&&this.ydisp++,this.ybase++);this.savedY=Math.min(this.savedY+l,this.ybase+b-1)}if(e.length>0){let a=[],b=[];for(let a=0;a<this.lines.length;a++)b.push(this.lines.get(a));let c=this.lines.length,d=c-1,g=0,h=e[0];this.lines.length=Math.min(this.lines.maxLength,this.lines.length+f);let i=0;for(let j=Math.min(this.lines.maxLength-1,c+f-1);j>=0;j--)if(h&&h.start>d+i){for(let a=h.newLines.length-1;a>=0;a--)this.lines.set(j--,h.newLines[a]);j++,a.push({index:d+1,amount:h.newLines.length}),i+=h.newLines.length,h=e[++g]}else this.lines.set(j,b[d--]);let j=0;for(let b=a.length-1;b>=0;b--)a[b].index+=j,this.lines.onInsertEmitter.fire(a[b]),j+=a[b].amount;let k=Math.max(0,c+f-this.lines.maxLength);k>0&&this.lines.onTrimEmitter.fire(k)}}translateBufferLineToString(a,b,c=0,d){let e=this.lines.get(a);return e?e.translateToString(b,c,d):""}getWrappedRangeForLine(a){let b=a,c=a;for(;b>0&&this.lines.get(b).isWrapped;)b--;for(;c+1<this.lines.length&&this.lines.get(c+1).isWrapped;)c++;return{first:b,last:c}}setupTabStops(a){for(null!=a?this.tabs[a]||(a=this.prevStop(a)):(this.tabs={},a=0);a<this._cols;a+=this._optionsService.rawOptions.tabStopWidth)this.tabs[a]=!0}prevStop(a){for(null==a&&(a=this.x);!this.tabs[--a]&&a>0;);return a>=this._cols?this._cols-1:a<0?0:a}nextStop(a){for(null==a&&(a=this.x);!this.tabs[++a]&&a<this._cols;);return a>=this._cols?this._cols-1:a<0?0:a}clearMarkers(a){this._isClearing=!0;for(let b=0;b<this.markers.length;b++)this.markers[b].line===a&&(this.markers[b].dispose(),this.markers.splice(b--,1));this._isClearing=!1}clearAllMarkers(){this._isClearing=!0;for(let a=0;a<this.markers.length;a++)this.markers[a].dispose();this.markers.length=0,this._isClearing=!1}addMarker(a){let b=new d3(a);return this.markers.push(b),b.register(this.lines.onTrim(a=>{b.line-=a,b.line<0&&b.dispose()})),b.register(this.lines.onInsert(a=>{b.line>=a.index&&(b.line+=a.amount)})),b.register(this.lines.onDelete(a=>{b.line>=a.index&&b.line<a.index+a.amount&&b.dispose(),b.line>a.index&&(b.line-=a.amount)})),b.register(b.onDispose(()=>this._removeMarker(b))),b}_removeMarker(a){this._isClearing||this.markers.splice(this.markers.indexOf(a),1)}},d7=class extends aC{constructor(a,b){super(),this._optionsService=a,this._bufferService=b,this._onBufferActivate=this._register(new aV),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 d6(!0,this._optionsService,this._bufferService),this._normal.fillViewportRows(),this._alt=new d6(!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(a){this._activeBuffer!==this._alt&&(this._alt.fillViewportRows(a),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(a,b){this._normal.resize(a,b),this._alt.resize(a,b),this.setupTabStops(a)}setupTabStops(a){this._normal.setupTabStops(a),this._alt.setupTabStops(a)}},d8=class extends aC{constructor(a){super(),this.isUserScrolling=!1,this._onResize=this._register(new aV),this.onResize=this._onResize.event,this._onScroll=this._register(new aV),this.onScroll=this._onScroll.event,this.cols=Math.max(a.rawOptions.cols||0,2),this.rows=Math.max(a.rawOptions.rows||0,1),this.buffers=this._register(new d7(a,this)),this._register(this.buffers.onBufferActivate(a=>{this._onScroll.fire(a.activeBuffer.ydisp)}))}get buffer(){return this.buffers.active}resize(a,b){let c=this.cols!==a,d=this.rows!==b;this.cols=a,this.rows=b,this.buffers.resize(a,b),this._onResize.fire({cols:a,rows:b,colsChanged:c,rowsChanged:d})}reset(){this.buffers.reset(),this.isUserScrolling=!1}scroll(a,b=!1){let c=this.buffer,d;(d=this._cachedBlankLine)&&d.length===this.cols&&d.getFg(0)===a.fg&&d.getBg(0)===a.bg||(d=c.getBlankLine(a,b),this._cachedBlankLine=d),d.isWrapped=b;let e=c.ybase+c.scrollTop,f=c.ybase+c.scrollBottom;if(0===c.scrollTop){let a=c.lines.isFull;f===c.lines.length-1?a?c.lines.recycle().copyFrom(d):c.lines.push(d.clone()):c.lines.splice(f+1,0,d.clone()),a?this.isUserScrolling&&(c.ydisp=Math.max(c.ydisp-1,0)):(c.ybase++,this.isUserScrolling||c.ydisp++)}else{let a=f-e+1;c.lines.shiftElements(e+1,a-1,-1),c.lines.set(f,d.clone())}this.isUserScrolling||(c.ydisp=c.ybase),this._onScroll.fire(c.ydisp)}scrollLines(a,b){let c=this.buffer;if(a<0){if(0===c.ydisp)return;this.isUserScrolling=!0}else a+c.ydisp>=c.ybase&&(this.isUserScrolling=!1);let d=c.ydisp;c.ydisp=Math.max(Math.min(c.ydisp+a,c.ybase),0),d!==c.ydisp&&(b||this._onScroll.fire(c.ydisp))}};d8=F([G(0,ab)],d8);var d9={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:dr,windowOptions:{},windowsMode:!1,windowsPty:{},wordSeparator:" ()[]{}',\"`",altClickMovesCursor:!0,convertEol:!1,termName:"xterm",cancelEvents:!1,overviewRuler:{}},ea=["normal","bold","100","200","300","400","500","600","700","800","900"],eb=class extends aC{constructor(a){super(),this._onOptionChange=this._register(new aV),this.onOptionChange=this._onOptionChange.event;let b={...d9};for(let c in a)if(c in b)try{let d=a[c];b[c]=this._sanitizeAndValidateOption(c,d)}catch(a){console.error(a)}this.rawOptions=b,this.options={...b},this._setupOptions(),this._register(az(()=>{this.rawOptions.linkHandler=null,this.rawOptions.documentOverride=null}))}onSpecificOptionChange(a,b){return this.onOptionChange(c=>{c===a&&b(this.rawOptions[a])})}onMultipleOptionChange(a,b){return this.onOptionChange(c=>{-1!==a.indexOf(c)&&b()})}_setupOptions(){let a=a=>{if(!(a in d9))throw Error(`No option with key "${a}"`);return this.rawOptions[a]},b=(a,b)=>{if(!(a in d9))throw Error(`No option with key "${a}"`);b=this._sanitizeAndValidateOption(a,b),this.rawOptions[a]!==b&&(this.rawOptions[a]=b,this._onOptionChange.fire(a))};for(let c in this.rawOptions){let d={get:a.bind(this,c),set:b.bind(this,c)};Object.defineProperty(this.options,c,d)}}_sanitizeAndValidateOption(a,b){switch(a){case"cursorStyle":var c;if(b||(b=d9[a]),"block"!==(c=b)&&"underline"!==c&&"bar"!==c)throw Error(`"${b}" is not a valid value for ${a}`);break;case"wordSeparator":b||(b=d9[a]);break;case"fontWeight":case"fontWeightBold":if("number"==typeof b&&1<=b&&b<=1e3)break;b=ea.includes(b)?b:d9[a];break;case"cursorWidth":b=Math.floor(b);case"lineHeight":case"tabStopWidth":if(b<1)throw Error(`${a} cannot be less than 1, value: ${b}`);break;case"minimumContrastRatio":b=Math.max(1,Math.min(21,Math.round(10*b)/10));break;case"scrollback":if((b=Math.min(b,0xffffffff))<0)throw Error(`${a} cannot be less than 0, value: ${b}`);break;case"fastScrollSensitivity":case"scrollSensitivity":if(b<=0)throw Error(`${a} cannot be less than or equal to 0, value: ${b}`);break;case"rows":case"cols":if(!b&&0!==b)throw Error(`${a} must be numeric, value: ${b}`);break;case"windowsPty":b=b??{}}return b}};function ec(a,b=5){if("object"!=typeof a)return a;let c=Array.isArray(a)?[]:{};for(let d in a)c[d]=b<=1?a[d]:a[d]&&ec(a[d],b-1);return c}var ed=Object.freeze({insertMode:!1}),ee=Object.freeze({applicationCursorKeys:!1,applicationKeypad:!1,bracketedPasteMode:!1,cursorBlink:void 0,cursorStyle:void 0,origin:!1,reverseWraparound:!1,sendFocus:!1,synchronizedOutput:!1,wraparound:!0}),ef=class extends aC{constructor(a,b,c){super(),this._bufferService=a,this._logService=b,this._optionsService=c,this.isCursorInitialized=!1,this.isCursorHidden=!1,this._onData=this._register(new aV),this.onData=this._onData.event,this._onUserInput=this._register(new aV),this.onUserInput=this._onUserInput.event,this._onBinary=this._register(new aV),this.onBinary=this._onBinary.event,this._onRequestScrollToBottom=this._register(new aV),this.onRequestScrollToBottom=this._onRequestScrollToBottom.event,this.modes=ec(ed),this.decPrivateModes=ec(ee)}reset(){this.modes=ec(ed),this.decPrivateModes=ec(ee)}triggerDataEvent(a,b=!1){if(this._optionsService.rawOptions.disableStdin)return;let c=this._bufferService.buffer;b&&this._optionsService.rawOptions.scrollOnUserInput&&c.ybase!==c.ydisp&&this._onRequestScrollToBottom.fire(),b&&this._onUserInput.fire(),this._logService.debug(`sending data "${a}"`),this._logService.trace("sending data (codes)",()=>a.split("").map(a=>a.charCodeAt(0))),this._onData.fire(a)}triggerBinaryEvent(a){this._optionsService.rawOptions.disableStdin||(this._logService.debug(`sending binary "${a}"`),this._logService.trace("sending binary (codes)",()=>a.split("").map(a=>a.charCodeAt(0))),this._onBinary.fire(a))}};ef=F([G(0,X),G(1,aa),G(2,ab)],ef);var eg={NONE:{events:0,restrict:()=>!1},X10:{events:1,restrict:a=>4!==a.button&&1===a.action&&(a.ctrl=!1,a.alt=!1,a.shift=!1,!0)},VT200:{events:19,restrict:a=>32!==a.action},DRAG:{events:23,restrict:a=>32!==a.action||3!==a.button},ANY:{events:31,restrict:a=>!0}};function eh(a,b){let c=16*!!a.ctrl|4*!!a.shift|8*!!a.alt;return 4===a.button?(c|=64,c|=a.action):(c|=3&a.button,4&a.button&&(c|=64),8&a.button&&(c|=128),32===a.action?c|=32:0!==a.action||b||(c|=3)),c}var ei=String.fromCharCode,ej={DEFAULT:a=>{let b=[eh(a,!1)+32,a.col+32,a.row+32];return b[0]>255||b[1]>255||b[2]>255?"":`\x1b[M${ei(b[0])}${ei(b[1])}${ei(b[2])}`},SGR:a=>{let b=0===a.action&&4!==a.button?"m":"M";return`\x1b[<${eh(a,!0)};${a.col};${a.row}${b}`},SGR_PIXELS:a=>{let b=0===a.action&&4!==a.button?"m":"M";return`\x1b[<${eh(a,!0)};${a.x};${a.y}${b}`}},ek=class extends aC{constructor(a,b,c){for(let d of(super(),this._bufferService=a,this._coreService=b,this._optionsService=c,this._protocols={},this._encodings={},this._activeProtocol="",this._activeEncoding="",this._lastEvent=null,this._wheelPartialScroll=0,this._onProtocolChange=this._register(new aV),this.onProtocolChange=this._onProtocolChange.event,Object.keys(eg)))this.addProtocol(d,eg[d]);for(let a of Object.keys(ej))this.addEncoding(a,ej[a]);this.reset()}addProtocol(a,b){this._protocols[a]=b}addEncoding(a,b){this._encodings[a]=b}get activeProtocol(){return this._activeProtocol}get areMouseEventsActive(){return 0!==this._protocols[this._activeProtocol].events}set activeProtocol(a){if(!this._protocols[a])throw Error(`unknown protocol "${a}"`);this._activeProtocol=a,this._onProtocolChange.fire(this._protocols[a].events)}get activeEncoding(){return this._activeEncoding}set activeEncoding(a){if(!this._encodings[a])throw Error(`unknown encoding "${a}"`);this._activeEncoding=a}reset(){this.activeProtocol="NONE",this.activeEncoding="DEFAULT",this._lastEvent=null,this._wheelPartialScroll=0}consumeWheelEvent(a,b,c){if(0===a.deltaY||a.shiftKey||void 0===b||void 0===c)return 0;let d=this._applyScrollModifier(a.deltaY,a);return a.deltaMode===WheelEvent.DOM_DELTA_PIXEL?(d/=b/c+0,50>Math.abs(a.deltaY)&&(d*=.3),this._wheelPartialScroll+=d,d=Math.floor(Math.abs(this._wheelPartialScroll))*(this._wheelPartialScroll>0?1:-1),this._wheelPartialScroll%=1):a.deltaMode===WheelEvent.DOM_DELTA_PAGE&&(d*=this._bufferService.rows),d}_applyScrollModifier(a,b){return b.altKey||b.ctrlKey||b.shiftKey?a*this._optionsService.rawOptions.fastScrollSensitivity*this._optionsService.rawOptions.scrollSensitivity:a*this._optionsService.rawOptions.scrollSensitivity}triggerMouseEvent(a){if(a.col<0||a.col>=this._bufferService.cols||a.row<0||a.row>=this._bufferService.rows||4===a.button&&32===a.action||3===a.button&&32!==a.action||4!==a.button&&(2===a.action||3===a.action)||(a.col++,a.row++,32===a.action&&this._lastEvent&&this._equalEvents(this._lastEvent,a,"SGR_PIXELS"===this._activeEncoding))||!this._protocols[this._activeProtocol].restrict(a))return!1;let b=this._encodings[this._activeEncoding](a);return b&&("DEFAULT"===this._activeEncoding?this._coreService.triggerBinaryEvent(b):this._coreService.triggerDataEvent(b,!0)),this._lastEvent=a,!0}explainEvents(a){return{down:!!(1&a),up:!!(2&a),drag:!!(4&a),move:!!(8&a),wheel:!!(16&a)}}_equalEvents(a,b,c){if(c){if(a.x!==b.x||a.y!==b.y)return!1}else if(a.col!==b.col||a.row!==b.row)return!1;return a.button===b.button&&a.action===b.action&&a.ctrl===b.ctrl&&a.alt===b.alt&&a.shift===b.shift}};ek=F([G(0,X),G(1,Z),G(2,ab)],ek);var el,em,en,eo,ep,eq,er=[[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]],es=[[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]],et=class{constructor(){if(this.version="6",!eq){(eq=new Uint8Array(65536)).fill(1),eq[0]=0,eq.fill(0,1,32),eq.fill(0,127,160),eq.fill(2,4352,4448),eq[9001]=2,eq[9002]=2,eq.fill(2,11904,42192),eq[12351]=1,eq.fill(2,44032,55204),eq.fill(2,63744,64256),eq.fill(2,65040,65050),eq.fill(2,65072,65136),eq.fill(2,65280,65377),eq.fill(2,65504,65511);for(let a=0;a<er.length;++a)eq.fill(0,er[a][0],er[a][1]+1)}}wcwidth(a){return a<32?0:a<127?1:a<65536?eq[a]:!function(a,b){let c=0,d=b.length-1,e;if(a<b[0][0]||a>b[d][1])return!1;for(;d>=c;)if(a>b[e=c+d>>1][1])c=e+1;else{if(!(a<b[e][0]))return!0;d=e-1}return!1}(a,es)?a>=131072&&a<=196605||a>=196608&&a<=262141?2:1:0}charProperties(a,b){let c=this.wcwidth(a),d=0===c&&0!==b;if(d){let a=eu.extractWidth(b);0===a?d=!1:a>c&&(c=a)}return eu.createPropertyValue(0,c,d)}},eu=class a{constructor(){this._providers=Object.create(null),this._active="",this._onChange=new aV,this.onChange=this._onChange.event;let a=new et;this.register(a),this._active=a.version,this._activeProvider=a}static extractShouldJoin(a){return(1&a)!=0}static extractWidth(a){return a>>1&3}static extractCharKind(a){return a>>3}static createPropertyValue(a,b,c=!1){return(0xffffff&a)<<3|(3&b)<<1|!!c}dispose(){this._onChange.dispose()}get versions(){return Object.keys(this._providers)}get activeVersion(){return this._active}set activeVersion(a){if(!this._providers[a])throw Error(`unknown Unicode version "${a}"`);this._active=a,this._activeProvider=this._providers[a],this._onChange.fire(a)}register(a){this._providers[a.version]=a}wcwidth(a){return this._activeProvider.wcwidth(a)}getStringCellWidth(b){let c=0,d=0,e=b.length;for(let f=0;f<e;++f){let g=b.charCodeAt(f);if(55296<=g&&g<=56319){if(++f>=e)return c+this.wcwidth(g);let a=b.charCodeAt(f);56320<=a&&a<=57343?g=(g-55296)*1024+a-56320+65536:c+=this.wcwidth(a)}let h=this.charProperties(g,d),i=a.extractWidth(h);a.extractShouldJoin(h)&&(i-=a.extractWidth(d)),c+=i,d=h}return c}charProperties(a,b){return this._activeProvider.charProperties(a,b)}},ev=class{constructor(){this.glevel=0,this._charsets=[]}reset(){this.charset=void 0,this._charsets=[],this.glevel=0}setgLevel(a){this.glevel=a,this.charset=this._charsets[a]}setgCharset(a,b){this._charsets[a]=b,this.glevel===a&&(this.charset=b)}};function ew(a){let b=a.buffer.lines.get(a.buffer.ybase+a.buffer.y-1)?.get(a.cols-1),c=a.buffer.lines.get(a.buffer.ybase+a.buffer.y);c&&b&&(c.isWrapped=0!==b[3]&&32!==b[3])}var ex=class a{constructor(a=32,b=32){if(this.maxLength=a,this.maxSubParamsLength=b,b>256)throw Error("maxSubParamsLength must not be greater than 256");this.params=new Int32Array(a),this.length=0,this._subParams=new Int32Array(b),this._subParamsLength=0,this._subParamsIdx=new Uint16Array(a),this._rejectDigits=!1,this._rejectSubDigits=!1,this._digitIsSub=!1}static fromArray(b){let c=new a;if(!b.length)return c;for(let a=+!!Array.isArray(b[0]);a<b.length;++a){let d=b[a];if(Array.isArray(d))for(let a=0;a<d.length;++a)c.addSubParam(d[a]);else c.addParam(d)}return c}clone(){let b=new a(this.maxLength,this.maxSubParamsLength);return b.params.set(this.params),b.length=this.length,b._subParams.set(this._subParams),b._subParamsLength=this._subParamsLength,b._subParamsIdx.set(this._subParamsIdx),b._rejectDigits=this._rejectDigits,b._rejectSubDigits=this._rejectSubDigits,b._digitIsSub=this._digitIsSub,b}toArray(){let a=[];for(let b=0;b<this.length;++b){a.push(this.params[b]);let c=this._subParamsIdx[b]>>8,d=255&this._subParamsIdx[b];d-c>0&&a.push(Array.prototype.slice.call(this._subParams,c,d))}return a}reset(){this.length=0,this._subParamsLength=0,this._rejectDigits=!1,this._rejectSubDigits=!1,this._digitIsSub=!1}addParam(a){if(this._digitIsSub=!1,this.length>=this.maxLength){this._rejectDigits=!0;return}if(a<-1)throw Error("values lesser than -1 are not allowed");this._subParamsIdx[this.length]=this._subParamsLength<<8|this._subParamsLength,this.params[this.length++]=a>0x7fffffff?0x7fffffff:a}addSubParam(a){if(this._digitIsSub=!0,this.length){if(this._rejectDigits||this._subParamsLength>=this.maxSubParamsLength){this._rejectSubDigits=!0;return}if(a<-1)throw Error("values lesser than -1 are not allowed");this._subParams[this._subParamsLength++]=a>0x7fffffff?0x7fffffff:a,this._subParamsIdx[this.length-1]++}}hasSubParams(a){return(255&this._subParamsIdx[a])-(this._subParamsIdx[a]>>8)>0}getSubParams(a){let b=this._subParamsIdx[a]>>8,c=255&this._subParamsIdx[a];return c-b>0?this._subParams.subarray(b,c):null}getSubParamsAll(){let a={};for(let b=0;b<this.length;++b){let c=this._subParamsIdx[b]>>8,d=255&this._subParamsIdx[b];d-c>0&&(a[b]=this._subParams.slice(c,d))}return a}addDigit(a){let b;if(this._rejectDigits||!(b=this._digitIsSub?this._subParamsLength:this.length)||this._digitIsSub&&this._rejectSubDigits)return;let c=this._digitIsSub?this._subParams:this.params,d=c[b-1];c[b-1]=~d?Math.min(10*d+a,0x7fffffff):a}},ey=[],ez=class{constructor(){this._state=0,this._active=ey,this._id=-1,this._handlers=Object.create(null),this._handlerFb=()=>{},this._stack={paused:!1,loopPosition:0,fallThrough:!1}}registerHandler(a,b){void 0===this._handlers[a]&&(this._handlers[a]=[]);let c=this._handlers[a];return c.push(b),{dispose:()=>{let a=c.indexOf(b);-1!==a&&c.splice(a,1)}}}clearHandler(a){this._handlers[a]&&delete this._handlers[a]}setHandlerFallback(a){this._handlerFb=a}dispose(){this._handlers=Object.create(null),this._handlerFb=()=>{},this._active=ey}reset(){if(2===this._state)for(let a=this._stack.paused?this._stack.loopPosition-1:this._active.length-1;a>=0;--a)this._active[a].end(!1);this._stack.paused=!1,this._active=ey,this._id=-1,this._state=0}_start(){if(this._active=this._handlers[this._id]||ey,this._active.length)for(let a=this._active.length-1;a>=0;a--)this._active[a].start();else this._handlerFb(this._id,"START")}_put(a,b,c){if(this._active.length)for(let d=this._active.length-1;d>=0;d--)this._active[d].put(a,b,c);else this._handlerFb(this._id,"PUT",N(a,b,c))}start(){this.reset(),this._state=1}put(a,b,c){if(3!==this._state){if(1===this._state)for(;b<c;){let c=a[b++];if(59===c){this._state=2,this._start();break}if(c<48||57<c){this._state=3;return}-1===this._id&&(this._id=0),this._id=10*this._id+c-48}2===this._state&&c-b>0&&this._put(a,b,c)}}end(a,b=!0){if(0!==this._state){if(3!==this._state)if(1===this._state&&this._start(),this._active.length){let c=!1,d=this._active.length-1,e=!1;if(this._stack.paused&&(d=this._stack.loopPosition-1,c=b,e=this._stack.fallThrough,this._stack.paused=!1),!e&&!1===c){for(;d>=0&&!0!==(c=this._active[d].end(a));d--)if(c instanceof Promise)return this._stack.paused=!0,this._stack.loopPosition=d,this._stack.fallThrough=!1,c;d--}for(;d>=0;d--)if((c=this._active[d].end(!1))instanceof Promise)return this._stack.paused=!0,this._stack.loopPosition=d,this._stack.fallThrough=!0,c}else this._handlerFb(this._id,"END",a);this._active=ey,this._id=-1,this._state=0}}},eA=class{constructor(a){this._handler=a,this._data="",this._hitLimit=!1}start(){this._data="",this._hitLimit=!1}put(a,b,c){this._hitLimit||(this._data+=N(a,b,c),this._data.length>1e7&&(this._data="",this._hitLimit=!0))}end(a){let b=!1;if(this._hitLimit)b=!1;else if(a&&(b=this._handler(this._data))instanceof Promise)return b.then(a=>(this._data="",this._hitLimit=!1,a));return this._data="",this._hitLimit=!1,b}},eB=[],eC=class{constructor(){this._handlers=Object.create(null),this._active=eB,this._ident=0,this._handlerFb=()=>{},this._stack={paused:!1,loopPosition:0,fallThrough:!1}}dispose(){this._handlers=Object.create(null),this._handlerFb=()=>{},this._active=eB}registerHandler(a,b){void 0===this._handlers[a]&&(this._handlers[a]=[]);let c=this._handlers[a];return c.push(b),{dispose:()=>{let a=c.indexOf(b);-1!==a&&c.splice(a,1)}}}clearHandler(a){this._handlers[a]&&delete this._handlers[a]}setHandlerFallback(a){this._handlerFb=a}reset(){if(this._active.length)for(let a=this._stack.paused?this._stack.loopPosition-1:this._active.length-1;a>=0;--a)this._active[a].unhook(!1);this._stack.paused=!1,this._active=eB,this._ident=0}hook(a,b){if(this.reset(),this._ident=a,this._active=this._handlers[a]||eB,this._active.length)for(let a=this._active.length-1;a>=0;a--)this._active[a].hook(b);else this._handlerFb(this._ident,"HOOK",b)}put(a,b,c){if(this._active.length)for(let d=this._active.length-1;d>=0;d--)this._active[d].put(a,b,c);else this._handlerFb(this._ident,"PUT",N(a,b,c))}unhook(a,b=!0){if(this._active.length){let c=!1,d=this._active.length-1,e=!1;if(this._stack.paused&&(d=this._stack.loopPosition-1,c=b,e=this._stack.fallThrough,this._stack.paused=!1),!e&&!1===c){for(;d>=0&&!0!==(c=this._active[d].unhook(a));d--)if(c instanceof Promise)return this._stack.paused=!0,this._stack.loopPosition=d,this._stack.fallThrough=!1,c;d--}for(;d>=0;d--)if((c=this._active[d].unhook(!1))instanceof Promise)return this._stack.paused=!0,this._stack.loopPosition=d,this._stack.fallThrough=!0,c}else this._handlerFb(this._ident,"UNHOOK",a);this._active=eB,this._ident=0}},eD=new ex;eD.addParam(0);var eE=class{constructor(a){this._handler=a,this._data="",this._params=eD,this._hitLimit=!1}hook(a){this._params=a.length>1||a.params[0]?a.clone():eD,this._data="",this._hitLimit=!1}put(a,b,c){this._hitLimit||(this._data+=N(a,b,c),this._data.length>1e7&&(this._data="",this._hitLimit=!0))}unhook(a){let b=!1;if(this._hitLimit)b=!1;else if(a&&(b=this._handler(this._data,this._params))instanceof Promise)return b.then(a=>(this._params=eD,this._data="",this._hitLimit=!1,a));return this._params=eD,this._data="",this._hitLimit=!1,b}},eF=class{constructor(a){this.table=new Uint8Array(a)}setDefault(a,b){this.table.fill(a<<4|b)}add(a,b,c,d){this.table[b<<8|a]=c<<4|d}addMany(a,b,c,d){for(let e=0;e<a.length;e++)this.table[b<<8|a[e]]=c<<4|d}},eG=function(){let a=new eF(4095),b=Array.apply(null,Array(256)).map((a,b)=>b),c=(a,c)=>b.slice(a,c),d=c(32,127),e=c(0,24);e.push(25),e.push.apply(e,c(28,32));let f=c(0,14),g;for(g in a.setDefault(1,0),a.addMany(d,0,2,0),f)a.addMany([24,26,153,154],g,3,0),a.addMany(c(128,144),g,3,0),a.addMany(c(144,152),g,3,0),a.add(156,g,0,0),a.add(27,g,11,1),a.add(157,g,4,8),a.addMany([152,158,159],g,0,7),a.add(155,g,11,3),a.add(144,g,11,9);return a.addMany(e,0,3,0),a.addMany(e,1,3,1),a.add(127,1,0,1),a.addMany(e,8,0,8),a.addMany(e,3,3,3),a.add(127,3,0,3),a.addMany(e,4,3,4),a.add(127,4,0,4),a.addMany(e,6,3,6),a.addMany(e,5,3,5),a.add(127,5,0,5),a.addMany(e,2,3,2),a.add(127,2,0,2),a.add(93,1,4,8),a.addMany(d,8,5,8),a.add(127,8,5,8),a.addMany([156,27,24,26,7],8,6,0),a.addMany(c(28,32),8,0,8),a.addMany([88,94,95],1,0,7),a.addMany(d,7,0,7),a.addMany(e,7,0,7),a.add(156,7,0,0),a.add(127,7,0,7),a.add(91,1,11,3),a.addMany(c(64,127),3,7,0),a.addMany(c(48,60),3,8,4),a.addMany([60,61,62,63],3,9,4),a.addMany(c(48,60),4,8,4),a.addMany(c(64,127),4,7,0),a.addMany([60,61,62,63],4,0,6),a.addMany(c(32,64),6,0,6),a.add(127,6,0,6),a.addMany(c(64,127),6,0,0),a.addMany(c(32,48),3,9,5),a.addMany(c(32,48),5,9,5),a.addMany(c(48,64),5,0,6),a.addMany(c(64,127),5,7,0),a.addMany(c(32,48),4,9,5),a.addMany(c(32,48),1,9,2),a.addMany(c(32,48),2,9,2),a.addMany(c(48,127),2,10,0),a.addMany(c(48,80),1,10,0),a.addMany(c(81,88),1,10,0),a.addMany([89,90,92],1,10,0),a.addMany(c(96,127),1,10,0),a.add(80,1,11,9),a.addMany(e,9,0,9),a.add(127,9,0,9),a.addMany(c(28,32),9,0,9),a.addMany(c(32,48),9,9,12),a.addMany(c(48,60),9,8,10),a.addMany([60,61,62,63],9,9,10),a.addMany(e,11,0,11),a.addMany(c(32,128),11,0,11),a.addMany(c(28,32),11,0,11),a.addMany(e,10,0,10),a.add(127,10,0,10),a.addMany(c(28,32),10,0,10),a.addMany(c(48,60),10,8,10),a.addMany([60,61,62,63],10,0,11),a.addMany(c(32,48),10,9,12),a.addMany(e,12,0,12),a.add(127,12,0,12),a.addMany(c(28,32),12,0,12),a.addMany(c(32,48),12,9,12),a.addMany(c(48,64),12,0,11),a.addMany(c(64,127),12,12,13),a.addMany(c(64,127),10,12,13),a.addMany(c(64,127),9,12,13),a.addMany(e,13,13,13),a.addMany(d,13,13,13),a.add(127,13,0,13),a.addMany([27,156,24,26],13,14,0),a.add(160,0,2,0),a.add(160,8,5,8),a.add(160,6,0,6),a.add(160,11,0,11),a.add(160,13,13,13),a}(),eH=class extends aC{constructor(a=eG){super(),this._transitions=a,this._parseStack={state:0,handlers:[],handlerPos:0,transition:0,chunkPos:0},this.initialState=0,this.currentState=this.initialState,this._params=new ex,this._params.addParam(0),this._collect=0,this.precedingJoinState=0,this._printHandlerFb=(a,b,c)=>{},this._executeHandlerFb=a=>{},this._csiHandlerFb=(a,b)=>{},this._escHandlerFb=a=>{},this._errorHandlerFb=a=>a,this._printHandler=this._printHandlerFb,this._executeHandlers=Object.create(null),this._csiHandlers=Object.create(null),this._escHandlers=Object.create(null),this._register(az(()=>{this._csiHandlers=Object.create(null),this._executeHandlers=Object.create(null),this._escHandlers=Object.create(null)})),this._oscParser=this._register(new ez),this._dcsParser=this._register(new eC),this._errorHandler=this._errorHandlerFb,this.registerEscHandler({final:"\\"},()=>!0)}_identifier(a,b=[64,126]){let c=0;if(a.prefix){if(a.prefix.length>1)throw Error("only one byte as prefix supported");if((c=a.prefix.charCodeAt(0))&&60>c||c>63)throw Error("prefix must be in range 0x3c .. 0x3f")}if(a.intermediates){if(a.intermediates.length>2)throw Error("only two bytes as intermediates are supported");for(let b=0;b<a.intermediates.length;++b){let d=a.intermediates.charCodeAt(b);if(32>d||d>47)throw Error("intermediate must be in range 0x20 .. 0x2f");c<<=8,c|=d}}if(1!==a.final.length)throw Error("final must be a single byte");let d=a.final.charCodeAt(0);if(b[0]>d||d>b[1])throw Error(`final must be in range ${b[0]} .. ${b[1]}`);return c<<=8,c|=d}identToString(a){let b=[];for(;a;)b.push(String.fromCharCode(255&a)),a>>=8;return b.reverse().join("")}setPrintHandler(a){this._printHandler=a}clearPrintHandler(){this._printHandler=this._printHandlerFb}registerEscHandler(a,b){let c=this._identifier(a,[48,126]);void 0===this._escHandlers[c]&&(this._escHandlers[c]=[]);let d=this._escHandlers[c];return d.push(b),{dispose:()=>{let a=d.indexOf(b);-1!==a&&d.splice(a,1)}}}clearEscHandler(a){this._escHandlers[this._identifier(a,[48,126])]&&delete this._escHandlers[this._identifier(a,[48,126])]}setEscHandlerFallback(a){this._escHandlerFb=a}setExecuteHandler(a,b){this._executeHandlers[a.charCodeAt(0)]=b}clearExecuteHandler(a){this._executeHandlers[a.charCodeAt(0)]&&delete this._executeHandlers[a.charCodeAt(0)]}setExecuteHandlerFallback(a){this._executeHandlerFb=a}registerCsiHandler(a,b){let c=this._identifier(a);void 0===this._csiHandlers[c]&&(this._csiHandlers[c]=[]);let d=this._csiHandlers[c];return d.push(b),{dispose:()=>{let a=d.indexOf(b);-1!==a&&d.splice(a,1)}}}clearCsiHandler(a){this._csiHandlers[this._identifier(a)]&&delete this._csiHandlers[this._identifier(a)]}setCsiHandlerFallback(a){this._csiHandlerFb=a}registerDcsHandler(a,b){return this._dcsParser.registerHandler(this._identifier(a),b)}clearDcsHandler(a){this._dcsParser.clearHandler(this._identifier(a))}setDcsHandlerFallback(a){this._dcsParser.setHandlerFallback(a)}registerOscHandler(a,b){return this._oscParser.registerHandler(a,b)}clearOscHandler(a){this._oscParser.clearHandler(a)}setOscHandlerFallback(a){this._oscParser.setHandlerFallback(a)}setErrorHandler(a){this._errorHandler=a}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,0!==this._parseStack.state&&(this._parseStack.state=2,this._parseStack.handlers=[])}_preserveStack(a,b,c,d,e){this._parseStack.state=a,this._parseStack.handlers=b,this._parseStack.handlerPos=c,this._parseStack.transition=d,this._parseStack.chunkPos=e}parse(a,b,c){let d=0,e=0,f=0,g;if(this._parseStack.state)if(2===this._parseStack.state)this._parseStack.state=0,f=this._parseStack.chunkPos+1;else{if(void 0===c||1===this._parseStack.state)throw this._parseStack.state=1,Error("improper continuation due to previous async handler, giving up parsing");let b=this._parseStack.handlers,e=this._parseStack.handlerPos-1;switch(this._parseStack.state){case 3:if(!1===c&&e>-1){for(;e>=0&&!0!==(g=b[e](this._params));e--)if(g instanceof Promise)return this._parseStack.handlerPos=e,g}this._parseStack.handlers=[];break;case 4:if(!1===c&&e>-1){for(;e>=0&&!0!==(g=b[e]());e--)if(g instanceof Promise)return this._parseStack.handlerPos=e,g}this._parseStack.handlers=[];break;case 6:if(d=a[this._parseStack.chunkPos],g=this._dcsParser.unhook(24!==d&&26!==d,c))return g;27===d&&(this._parseStack.transition|=1),this._params.reset(),this._params.addParam(0),this._collect=0;break;case 5:if(d=a[this._parseStack.chunkPos],g=this._oscParser.end(24!==d&&26!==d,c))return g;27===d&&(this._parseStack.transition|=1),this._params.reset(),this._params.addParam(0),this._collect=0}this._parseStack.state=0,f=this._parseStack.chunkPos+1,this.precedingJoinState=0,this.currentState=15&this._parseStack.transition}for(let c=f;c<b;++c){switch(d=a[c],(e=this._transitions.table[this.currentState<<8|(d<160?d:160)])>>4){case 2:for(let e=c+1;;++e)if(e>=b||(d=a[e])<32||d>126&&d<160||++e>=b||(d=a[e])<32||d>126&&d<160||++e>=b||(d=a[e])<32||d>126&&d<160||++e>=b||(d=a[e])<32||d>126&&d<160){this._printHandler(a,c,e),c=e-1;break}break;case 3:this._executeHandlers[d]?this._executeHandlers[d]():this._executeHandlerFb(d),this.precedingJoinState=0;break;case 0:break;case 1:if(this._errorHandler({position:c,code:d,currentState:this.currentState,collect:this._collect,params:this._params,abort:!1}).abort)return;break;case 7:let f=this._csiHandlers[this._collect<<8|d],h=f?f.length-1:-1;for(;h>=0&&!0!==(g=f[h](this._params));h--)if(g instanceof Promise)return this._preserveStack(3,f,h,e,c),g;h<0&&this._csiHandlerFb(this._collect<<8|d,this._params),this.precedingJoinState=0;break;case 8:do switch(d){case 59:this._params.addParam(0);break;case 58:this._params.addSubParam(-1);break;default:this._params.addDigit(d-48)}while(++c<b&&(d=a[c])>47&&d<60)c--;break;case 9:this._collect<<=8,this._collect|=d;break;case 10:let i=this._escHandlers[this._collect<<8|d],j=i?i.length-1:-1;for(;j>=0&&!0!==(g=i[j]());j--)if(g instanceof Promise)return this._preserveStack(4,i,j,e,c),g;j<0&&this._escHandlerFb(this._collect<<8|d),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|d,this._params);break;case 13:for(let e=c+1;;++e)if(e>=b||24===(d=a[e])||26===d||27===d||d>127&&d<160){this._dcsParser.put(a,c,e),c=e-1;break}break;case 14:if(g=this._dcsParser.unhook(24!==d&&26!==d))return this._preserveStack(6,[],0,e,c),g;27===d&&(e|=1),this._params.reset(),this._params.addParam(0),this._collect=0,this.precedingJoinState=0;break;case 4:this._oscParser.start();break;case 5:for(let e=c+1;;e++)if(e>=b||(d=a[e])<32||d>127&&d<160){this._oscParser.put(a,c,e),c=e-1;break}break;case 6:if(g=this._oscParser.end(24!==d&&26!==d))return this._preserveStack(5,[],0,e,c),g;27===d&&(e|=1),this._params.reset(),this._params.addParam(0),this._collect=0,this.precedingJoinState=0}this.currentState=15&e}}},eI=/^([\da-f])\/([\da-f])\/([\da-f])$|^([\da-f]{2})\/([\da-f]{2})\/([\da-f]{2})$|^([\da-f]{3})\/([\da-f]{3})\/([\da-f]{3})$|^([\da-f]{4})\/([\da-f]{4})\/([\da-f]{4})$/,eJ=/^[\da-f]+$/;function eK(a){if(!a)return;let b=a.toLowerCase();if(0===b.indexOf("rgb:")){b=b.slice(4);let a=eI.exec(b);if(a){let b=a[1]?15:a[4]?255:a[7]?4095:65535;return[Math.round(parseInt(a[1]||a[4]||a[7]||a[10],16)/b*255),Math.round(parseInt(a[2]||a[5]||a[8]||a[11],16)/b*255),Math.round(parseInt(a[3]||a[6]||a[9]||a[12],16)/b*255)]}}else if(0===b.indexOf("#")&&(b=b.slice(1),eJ.exec(b)&&[3,6,9,12].includes(b.length))){let a=b.length/3,c=[0,0,0];for(let d=0;d<3;++d){let e=parseInt(b.slice(a*d,a*d+a),16);c[d]=1===a?e<<4:2===a?e:3===a?e>>4:e>>8}return c}}function eL(a,b){let c=a.toString(16),d=c.length<2?"0"+c:c;switch(b){case 4:return c[0];case 8:return d;case 12:return(d+d).slice(0,3);default:return d+d}}var eM={"(":0,")":1,"*":2,"+":3,"-":1,".":2};function eN(a,b){if(a>24)return b.setWinLines||!1;switch(a){case 1:return!!b.restoreWin;case 2:return!!b.minimizeWin;case 3:return!!b.setWinPosition;case 4:return!!b.setWinSizePixels;case 5:return!!b.raiseWin;case 6:return!!b.lowerWin;case 7:return!!b.refreshWin;case 8:return!!b.setWinSizeChars;case 9:return!!b.maximizeWin;case 10:return!!b.fullscreenWin;case 11:return!!b.getWinState;case 13:return!!b.getWinPosition;case 14:return!!b.getWinSizePixels;case 15:return!!b.getScreenSizePixels;case 16:return!!b.getCellSizePixels;case 18:return!!b.getWinSizeChars;case 19:return!!b.getScreenSizeChars;case 20:return!!b.getIconTitle;case 21:return!!b.getWinTitle;case 22:return!!b.pushTitle;case 23:return!!b.popTitle;case 24:return!!b.setWinLines}return!1}var eO=0,eP=class extends aC{constructor(a,b,c,d,e,f,g,h,i=new eH){for(let j in super(),this._bufferService=a,this._charsetService=b,this._coreService=c,this._logService=d,this._optionsService=e,this._oscLinkService=f,this._coreMouseService=g,this._unicodeService=h,this._parser=i,this._parseBuffer=new Uint32Array(4096),this._stringDecoder=new O,this._utf8Decoder=new P,this._windowTitle="",this._iconName="",this._windowTitleStack=[],this._iconNameStack=[],this._curAttrData=d_.clone(),this._eraseAttrDataInternal=d_.clone(),this._onRequestBell=this._register(new aV),this.onRequestBell=this._onRequestBell.event,this._onRequestRefreshRows=this._register(new aV),this.onRequestRefreshRows=this._onRequestRefreshRows.event,this._onRequestReset=this._register(new aV),this.onRequestReset=this._onRequestReset.event,this._onRequestSendFocus=this._register(new aV),this.onRequestSendFocus=this._onRequestSendFocus.event,this._onRequestSyncScrollBar=this._register(new aV),this.onRequestSyncScrollBar=this._onRequestSyncScrollBar.event,this._onRequestWindowsOptionsReport=this._register(new aV),this.onRequestWindowsOptionsReport=this._onRequestWindowsOptionsReport.event,this._onA11yChar=this._register(new aV),this.onA11yChar=this._onA11yChar.event,this._onA11yTab=this._register(new aV),this.onA11yTab=this._onA11yTab.event,this._onCursorMove=this._register(new aV),this.onCursorMove=this._onCursorMove.event,this._onLineFeed=this._register(new aV),this.onLineFeed=this._onLineFeed.event,this._onScroll=this._register(new aV),this.onScroll=this._onScroll.event,this._onTitleChange=this._register(new aV),this.onTitleChange=this._onTitleChange.event,this._onColor=this._register(new aV),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 eQ(this._bufferService),this._activeBuffer=this._bufferService.buffer,this._register(this._bufferService.buffers.onBufferActivate(a=>this._activeBuffer=a.activeBuffer)),this._parser.setCsiHandlerFallback((a,b)=>{this._logService.debug("Unknown CSI code: ",{identifier:this._parser.identToString(a),params:b.toArray()})}),this._parser.setEscHandlerFallback(a=>{this._logService.debug("Unknown ESC code: ",{identifier:this._parser.identToString(a)})}),this._parser.setExecuteHandlerFallback(a=>{this._logService.debug("Unknown EXECUTE code: ",{code:a})}),this._parser.setOscHandlerFallback((a,b,c)=>{this._logService.debug("Unknown OSC code: ",{identifier:a,action:b,data:c})}),this._parser.setDcsHandlerFallback((a,b,c)=>{"HOOK"===b&&(c=c.toArray()),this._logService.debug("Unknown DCS code: ",{identifier:this._parser.identToString(a),action:b,payload:c})}),this._parser.setPrintHandler((a,b,c)=>this.print(a,b,c)),this._parser.registerCsiHandler({final:"@"},a=>this.insertChars(a)),this._parser.registerCsiHandler({intermediates:" ",final:"@"},a=>this.scrollLeft(a)),this._parser.registerCsiHandler({final:"A"},a=>this.cursorUp(a)),this._parser.registerCsiHandler({intermediates:" ",final:"A"},a=>this.scrollRight(a)),this._parser.registerCsiHandler({final:"B"},a=>this.cursorDown(a)),this._parser.registerCsiHandler({final:"C"},a=>this.cursorForward(a)),this._parser.registerCsiHandler({final:"D"},a=>this.cursorBackward(a)),this._parser.registerCsiHandler({final:"E"},a=>this.cursorNextLine(a)),this._parser.registerCsiHandler({final:"F"},a=>this.cursorPrecedingLine(a)),this._parser.registerCsiHandler({final:"G"},a=>this.cursorCharAbsolute(a)),this._parser.registerCsiHandler({final:"H"},a=>this.cursorPosition(a)),this._parser.registerCsiHandler({final:"I"},a=>this.cursorForwardTab(a)),this._parser.registerCsiHandler({final:"J"},a=>this.eraseInDisplay(a,!1)),this._parser.registerCsiHandler({prefix:"?",final:"J"},a=>this.eraseInDisplay(a,!0)),this._parser.registerCsiHandler({final:"K"},a=>this.eraseInLine(a,!1)),this._parser.registerCsiHandler({prefix:"?",final:"K"},a=>this.eraseInLine(a,!0)),this._parser.registerCsiHandler({final:"L"},a=>this.insertLines(a)),this._parser.registerCsiHandler({final:"M"},a=>this.deleteLines(a)),this._parser.registerCsiHandler({final:"P"},a=>this.deleteChars(a)),this._parser.registerCsiHandler({final:"S"},a=>this.scrollUp(a)),this._parser.registerCsiHandler({final:"T"},a=>this.scrollDown(a)),this._parser.registerCsiHandler({final:"X"},a=>this.eraseChars(a)),this._parser.registerCsiHandler({final:"Z"},a=>this.cursorBackwardTab(a)),this._parser.registerCsiHandler({final:"`"},a=>this.charPosAbsolute(a)),this._parser.registerCsiHandler({final:"a"},a=>this.hPositionRelative(a)),this._parser.registerCsiHandler({final:"b"},a=>this.repeatPrecedingCharacter(a)),this._parser.registerCsiHandler({final:"c"},a=>this.sendDeviceAttributesPrimary(a)),this._parser.registerCsiHandler({prefix:">",final:"c"},a=>this.sendDeviceAttributesSecondary(a)),this._parser.registerCsiHandler({final:"d"},a=>this.linePosAbsolute(a)),this._parser.registerCsiHandler({final:"e"},a=>this.vPositionRelative(a)),this._parser.registerCsiHandler({final:"f"},a=>this.hVPosition(a)),this._parser.registerCsiHandler({final:"g"},a=>this.tabClear(a)),this._parser.registerCsiHandler({final:"h"},a=>this.setMode(a)),this._parser.registerCsiHandler({prefix:"?",final:"h"},a=>this.setModePrivate(a)),this._parser.registerCsiHandler({final:"l"},a=>this.resetMode(a)),this._parser.registerCsiHandler({prefix:"?",final:"l"},a=>this.resetModePrivate(a)),this._parser.registerCsiHandler({final:"m"},a=>this.charAttributes(a)),this._parser.registerCsiHandler({final:"n"},a=>this.deviceStatus(a)),this._parser.registerCsiHandler({prefix:"?",final:"n"},a=>this.deviceStatusPrivate(a)),this._parser.registerCsiHandler({intermediates:"!",final:"p"},a=>this.softReset(a)),this._parser.registerCsiHandler({intermediates:" ",final:"q"},a=>this.setCursorStyle(a)),this._parser.registerCsiHandler({final:"r"},a=>this.setScrollRegion(a)),this._parser.registerCsiHandler({final:"s"},a=>this.saveCursor(a)),this._parser.registerCsiHandler({final:"t"},a=>this.windowOptions(a)),this._parser.registerCsiHandler({final:"u"},a=>this.restoreCursor(a)),this._parser.registerCsiHandler({intermediates:"'",final:"}"},a=>this.insertColumns(a)),this._parser.registerCsiHandler({intermediates:"'",final:"~"},a=>this.deleteColumns(a)),this._parser.registerCsiHandler({intermediates:'"',final:"q"},a=>this.selectProtected(a)),this._parser.registerCsiHandler({intermediates:"$",final:"p"},a=>this.requestMode(a,!0)),this._parser.registerCsiHandler({prefix:"?",intermediates:"$",final:"p"},a=>this.requestMode(a,!1)),this._parser.setExecuteHandler(cB.BEL,()=>this.bell()),this._parser.setExecuteHandler(cB.LF,()=>this.lineFeed()),this._parser.setExecuteHandler(cB.VT,()=>this.lineFeed()),this._parser.setExecuteHandler(cB.FF,()=>this.lineFeed()),this._parser.setExecuteHandler(cB.CR,()=>this.carriageReturn()),this._parser.setExecuteHandler(cB.BS,()=>this.backspace()),this._parser.setExecuteHandler(cB.HT,()=>this.tab()),this._parser.setExecuteHandler(cB.SO,()=>this.shiftOut()),this._parser.setExecuteHandler(cB.SI,()=>this.shiftIn()),this._parser.setExecuteHandler(cC.IND,()=>this.index()),this._parser.setExecuteHandler(cC.NEL,()=>this.nextLine()),this._parser.setExecuteHandler(cC.HTS,()=>this.tabSet()),this._parser.registerOscHandler(0,new eA(a=>(this.setTitle(a),this.setIconName(a),!0))),this._parser.registerOscHandler(1,new eA(a=>this.setIconName(a))),this._parser.registerOscHandler(2,new eA(a=>this.setTitle(a))),this._parser.registerOscHandler(4,new eA(a=>this.setOrReportIndexedColor(a))),this._parser.registerOscHandler(8,new eA(a=>this.setHyperlink(a))),this._parser.registerOscHandler(10,new eA(a=>this.setOrReportFgColor(a))),this._parser.registerOscHandler(11,new eA(a=>this.setOrReportBgColor(a))),this._parser.registerOscHandler(12,new eA(a=>this.setOrReportCursorColor(a))),this._parser.registerOscHandler(104,new eA(a=>this.restoreIndexedColor(a))),this._parser.registerOscHandler(110,new eA(a=>this.restoreFgColor(a))),this._parser.registerOscHandler(111,new eA(a=>this.restoreBgColor(a))),this._parser.registerOscHandler(112,new eA(a=>this.restoreCursorColor(a))),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()),d4)this._parser.registerEscHandler({intermediates:"(",final:j},()=>this.selectCharset("("+j)),this._parser.registerEscHandler({intermediates:")",final:j},()=>this.selectCharset(")"+j)),this._parser.registerEscHandler({intermediates:"*",final:j},()=>this.selectCharset("*"+j)),this._parser.registerEscHandler({intermediates:"+",final:j},()=>this.selectCharset("+"+j)),this._parser.registerEscHandler({intermediates:"-",final:j},()=>this.selectCharset("-"+j)),this._parser.registerEscHandler({intermediates:".",final:j},()=>this.selectCharset("."+j)),this._parser.registerEscHandler({intermediates:"/",final:j},()=>this.selectCharset("/"+j));this._parser.registerEscHandler({intermediates:"#",final:"8"},()=>this.screenAlignmentPattern()),this._parser.setErrorHandler(a=>(this._logService.error("Parsing error: ",a),a)),this._parser.registerDcsHandler({intermediates:"$",final:"q"},new eE((a,b)=>this.requestStatusString(a,b)))}getAttrData(){return this._curAttrData}_preserveStack(a,b,c,d){this._parseStack.paused=!0,this._parseStack.cursorStartX=a,this._parseStack.cursorStartY=b,this._parseStack.decodedLength=c,this._parseStack.position=d}_logSlowResolvingAsync(a){this._logService.logLevel<=3&&Promise.race([a,new Promise((a,b)=>setTimeout(()=>b("#SLOW_TIMEOUT"),5e3))]).catch(a=>{if("#SLOW_TIMEOUT"!==a)throw a;console.warn("async parser handler taking longer than 5000 ms")})}_getCurrentLinkId(){return this._curAttrData.extended.urlId}parse(a,b){let c,d=this._activeBuffer.x,e=this._activeBuffer.y,f=0,g=this._parseStack.paused;if(g){if(c=this._parser.parse(this._parseBuffer,this._parseStack.decodedLength,b))return this._logSlowResolvingAsync(c),c;d=this._parseStack.cursorStartX,e=this._parseStack.cursorStartY,this._parseStack.paused=!1,a.length>131072&&(f=this._parseStack.position+131072)}if(this._logService.logLevel<=1&&this._logService.debug(`parsing data ${"string"==typeof a?` "${a}"`:` "${Array.prototype.map.call(a,a=>String.fromCharCode(a)).join("")}"`}`),0===this._logService.logLevel&&this._logService.trace("parsing data (codes)","string"==typeof a?a.split("").map(a=>a.charCodeAt(0)):a),this._parseBuffer.length<a.length&&this._parseBuffer.length<131072&&(this._parseBuffer=new Uint32Array(Math.min(a.length,131072))),g||this._dirtyRowTracker.clearRange(),a.length>131072)for(let b=f;b<a.length;b+=131072){let f=b+131072<a.length?b+131072:a.length,g="string"==typeof a?this._stringDecoder.decode(a.substring(b,f),this._parseBuffer):this._utf8Decoder.decode(a.subarray(b,f),this._parseBuffer);if(c=this._parser.parse(this._parseBuffer,g))return this._preserveStack(d,e,g,b),this._logSlowResolvingAsync(c),c}else if(!g){let b="string"==typeof a?this._stringDecoder.decode(a,this._parseBuffer):this._utf8Decoder.decode(a,this._parseBuffer);if(c=this._parser.parse(this._parseBuffer,b))return this._preserveStack(d,e,b,0),this._logSlowResolvingAsync(c),c}(this._activeBuffer.x!==d||this._activeBuffer.y!==e)&&this._onCursorMove.fire();let h=this._dirtyRowTracker.end+(this._bufferService.buffer.ybase-this._bufferService.buffer.ydisp),i=this._dirtyRowTracker.start+(this._bufferService.buffer.ybase-this._bufferService.buffer.ydisp);i<this._bufferService.rows&&this._onRequestRefreshRows.fire({start:Math.min(i,this._bufferService.rows-1),end:Math.min(h,this._bufferService.rows-1)})}print(a,b,c){let d,e,f=this._charsetService.charset,g=this._optionsService.rawOptions.screenReaderMode,h=this._bufferService.cols,i=this._coreService.decPrivateModes.wraparound,j=this._coreService.modes.insertMode,k=this._curAttrData,l=this._activeBuffer.lines.get(this._activeBuffer.ybase+this._activeBuffer.y);this._dirtyRowTracker.markDirty(this._activeBuffer.y),this._activeBuffer.x&&c-b>0&&2===l.getWidth(this._activeBuffer.x-1)&&l.setCellFromCodepoint(this._activeBuffer.x-1,0,1,k);let m=this._parser.precedingJoinState;for(let n=b;n<c;++n){if((d=a[n])<127&&f){let a=f[String.fromCharCode(d)];a&&(d=a.charCodeAt(0))}let b=this._unicodeService.charProperties(d,m);e=eu.extractWidth(b);let c=eu.extractShouldJoin(b),o=c?eu.extractWidth(m):0;if(m=b,g&&this._onA11yChar.fire(M(d)),this._getCurrentLinkId()&&this._oscLinkService.addLineToLink(this._getCurrentLinkId(),this._activeBuffer.ybase+this._activeBuffer.y),this._activeBuffer.x+e-o>h){if(i){let a=l,b=this._activeBuffer.x-o;for(this._activeBuffer.x=o,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),l=this._activeBuffer.lines.get(this._activeBuffer.ybase+this._activeBuffer.y),o>0&&l instanceof d1&&l.copyCellsFrom(a,b,0,o,!1);b<h;)a.setCellFromCodepoint(b++,0,1,k)}else if(this._activeBuffer.x=h-1,2===e)continue}if(c&&this._activeBuffer.x){let a=l.getWidth(this._activeBuffer.x-1)?1:2;l.addCodepointToCell(this._activeBuffer.x-a,d,e);for(let a=e-o;--a>=0;)l.setCellFromCodepoint(this._activeBuffer.x++,0,0,k);continue}if(j&&(l.insertCells(this._activeBuffer.x,e-o,this._activeBuffer.getNullCell(k)),2===l.getWidth(h-1)&&l.setCellFromCodepoint(h-1,0,1,k)),l.setCellFromCodepoint(this._activeBuffer.x++,d,e,k),e>0)for(;--e;)l.setCellFromCodepoint(this._activeBuffer.x++,0,0,k)}this._parser.precedingJoinState=m,this._activeBuffer.x<h&&c-b>0&&0===l.getWidth(this._activeBuffer.x)&&!l.hasContent(this._activeBuffer.x)&&l.setCellFromCodepoint(this._activeBuffer.x,0,1,k),this._dirtyRowTracker.markDirty(this._activeBuffer.y)}registerCsiHandler(a,b){return"t"!==a.final||a.prefix||a.intermediates?this._parser.registerCsiHandler(a,b):this._parser.registerCsiHandler(a,a=>!eN(a.params[0],this._optionsService.rawOptions.windowOptions)||b(a))}registerDcsHandler(a,b){return this._parser.registerDcsHandler(a,new eE(b))}registerEscHandler(a,b){return this._parser.registerEscHandler(a,b)}registerOscHandler(a,b){return this._parser.registerOscHandler(a,new eA(b))}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(){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(0===this._activeBuffer.x&&this._activeBuffer.y>this._activeBuffer.scrollTop&&this._activeBuffer.y<=this._activeBuffer.scrollBottom&&this._activeBuffer.lines.get(this._activeBuffer.ybase+this._activeBuffer.y)?.isWrapped){this._activeBuffer.lines.get(this._activeBuffer.ybase+this._activeBuffer.y).isWrapped=!1,this._activeBuffer.y--,this._activeBuffer.x=this._bufferService.cols-1;let a=this._activeBuffer.lines.get(this._activeBuffer.ybase+this._activeBuffer.y);a.hasWidth(this._activeBuffer.x)&&!a.hasContent(this._activeBuffer.x)&&this._activeBuffer.x--}return this._restrictCursor(),!0}tab(){if(this._activeBuffer.x>=this._bufferService.cols)return!0;let a=this._activeBuffer.x;return this._activeBuffer.x=this._activeBuffer.nextStop(),this._optionsService.rawOptions.screenReaderMode&&this._onA11yTab.fire(this._activeBuffer.x-a),!0}shiftOut(){return this._charsetService.setgLevel(1),!0}shiftIn(){return this._charsetService.setgLevel(0),!0}_restrictCursor(a=this._bufferService.cols-1){this._activeBuffer.x=Math.min(a,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(a,b){this._dirtyRowTracker.markDirty(this._activeBuffer.y),this._coreService.decPrivateModes.origin?(this._activeBuffer.x=a,this._activeBuffer.y=this._activeBuffer.scrollTop+b):(this._activeBuffer.x=a,this._activeBuffer.y=b),this._restrictCursor(),this._dirtyRowTracker.markDirty(this._activeBuffer.y)}_moveCursor(a,b){this._restrictCursor(),this._setCursor(this._activeBuffer.x+a,this._activeBuffer.y+b)}cursorUp(a){let b=this._activeBuffer.y-this._activeBuffer.scrollTop;return b>=0?this._moveCursor(0,-Math.min(b,a.params[0]||1)):this._moveCursor(0,-(a.params[0]||1)),!0}cursorDown(a){let b=this._activeBuffer.scrollBottom-this._activeBuffer.y;return b>=0?this._moveCursor(0,Math.min(b,a.params[0]||1)):this._moveCursor(0,a.params[0]||1),!0}cursorForward(a){return this._moveCursor(a.params[0]||1,0),!0}cursorBackward(a){return this._moveCursor(-(a.params[0]||1),0),!0}cursorNextLine(a){return this.cursorDown(a),this._activeBuffer.x=0,!0}cursorPrecedingLine(a){return this.cursorUp(a),this._activeBuffer.x=0,!0}cursorCharAbsolute(a){return this._setCursor((a.params[0]||1)-1,this._activeBuffer.y),!0}cursorPosition(a){return this._setCursor(a.length>=2?(a.params[1]||1)-1:0,(a.params[0]||1)-1),!0}charPosAbsolute(a){return this._setCursor((a.params[0]||1)-1,this._activeBuffer.y),!0}hPositionRelative(a){return this._moveCursor(a.params[0]||1,0),!0}linePosAbsolute(a){return this._setCursor(this._activeBuffer.x,(a.params[0]||1)-1),!0}vPositionRelative(a){return this._moveCursor(0,a.params[0]||1),!0}hVPosition(a){return this.cursorPosition(a),!0}tabClear(a){let b=a.params[0];return 0===b?delete this._activeBuffer.tabs[this._activeBuffer.x]:3===b&&(this._activeBuffer.tabs={}),!0}cursorForwardTab(a){if(this._activeBuffer.x>=this._bufferService.cols)return!0;let b=a.params[0]||1;for(;b--;)this._activeBuffer.x=this._activeBuffer.nextStop();return!0}cursorBackwardTab(a){if(this._activeBuffer.x>=this._bufferService.cols)return!0;let b=a.params[0]||1;for(;b--;)this._activeBuffer.x=this._activeBuffer.prevStop();return!0}selectProtected(a){let b=a.params[0];return 1===b&&(this._curAttrData.bg|=0x20000000),(2===b||0===b)&&(this._curAttrData.bg&=-0x20000001),!0}_eraseInBufferLine(a,b,c,d=!1,e=!1){let f=this._activeBuffer.lines.get(this._activeBuffer.ybase+a);f.replaceCells(b,c,this._activeBuffer.getNullCell(this._eraseAttrData()),e),d&&(f.isWrapped=!1)}_resetBufferLine(a,b=!1){let c=this._activeBuffer.lines.get(this._activeBuffer.ybase+a);c&&(c.fill(this._activeBuffer.getNullCell(this._eraseAttrData()),b),this._bufferService.buffer.clearMarkers(this._activeBuffer.ybase+a),c.isWrapped=!1)}eraseInDisplay(a,b=!1){let c;switch(this._restrictCursor(this._bufferService.cols),a.params[0]){case 0:for(c=this._activeBuffer.y,this._dirtyRowTracker.markDirty(c),this._eraseInBufferLine(c++,this._activeBuffer.x,this._bufferService.cols,0===this._activeBuffer.x,b);c<this._bufferService.rows;c++)this._resetBufferLine(c,b);this._dirtyRowTracker.markDirty(c);break;case 1:for(c=this._activeBuffer.y,this._dirtyRowTracker.markDirty(c),this._eraseInBufferLine(c,0,this._activeBuffer.x+1,!0,b),this._activeBuffer.x+1>=this._bufferService.cols&&(this._activeBuffer.lines.get(c+1).isWrapped=!1);c--;)this._resetBufferLine(c,b);this._dirtyRowTracker.markDirty(0);break;case 2:if(this._optionsService.rawOptions.scrollOnEraseInDisplay){for(c=this._bufferService.rows,this._dirtyRowTracker.markRangeDirty(0,c-1);c--&&!this._activeBuffer.lines.get(this._activeBuffer.ybase+c)?.getTrimmedLength(););for(;c>=0;c--)this._bufferService.scroll(this._eraseAttrData())}else{for(c=this._bufferService.rows,this._dirtyRowTracker.markDirty(c-1);c--;)this._resetBufferLine(c,b);this._dirtyRowTracker.markDirty(0)}break;case 3:let d=this._activeBuffer.lines.length-this._bufferService.rows;d>0&&(this._activeBuffer.lines.trimStart(d),this._activeBuffer.ybase=Math.max(this._activeBuffer.ybase-d,0),this._activeBuffer.ydisp=Math.max(this._activeBuffer.ydisp-d,0),this._onScroll.fire(0))}return!0}eraseInLine(a,b=!1){switch(this._restrictCursor(this._bufferService.cols),a.params[0]){case 0:this._eraseInBufferLine(this._activeBuffer.y,this._activeBuffer.x,this._bufferService.cols,0===this._activeBuffer.x,b);break;case 1:this._eraseInBufferLine(this._activeBuffer.y,0,this._activeBuffer.x+1,!1,b);break;case 2:this._eraseInBufferLine(this._activeBuffer.y,0,this._bufferService.cols,!0,b)}return this._dirtyRowTracker.markDirty(this._activeBuffer.y),!0}insertLines(a){this._restrictCursor();let b=a.params[0]||1;if(this._activeBuffer.y>this._activeBuffer.scrollBottom||this._activeBuffer.y<this._activeBuffer.scrollTop)return!0;let c=this._activeBuffer.ybase+this._activeBuffer.y,d=this._bufferService.rows-1-this._activeBuffer.scrollBottom,e=this._bufferService.rows-1+this._activeBuffer.ybase-d+1;for(;b--;)this._activeBuffer.lines.splice(e-1,1),this._activeBuffer.lines.splice(c,0,this._activeBuffer.getBlankLine(this._eraseAttrData()));return this._dirtyRowTracker.markRangeDirty(this._activeBuffer.y,this._activeBuffer.scrollBottom),this._activeBuffer.x=0,!0}deleteLines(a){this._restrictCursor();let b=a.params[0]||1;if(this._activeBuffer.y>this._activeBuffer.scrollBottom||this._activeBuffer.y<this._activeBuffer.scrollTop)return!0;let c=this._activeBuffer.ybase+this._activeBuffer.y,d;for(d=this._bufferService.rows-1-this._activeBuffer.scrollBottom,d=this._bufferService.rows-1+this._activeBuffer.ybase-d;b--;)this._activeBuffer.lines.splice(c,1),this._activeBuffer.lines.splice(d,0,this._activeBuffer.getBlankLine(this._eraseAttrData()));return this._dirtyRowTracker.markRangeDirty(this._activeBuffer.y,this._activeBuffer.scrollBottom),this._activeBuffer.x=0,!0}insertChars(a){this._restrictCursor();let b=this._activeBuffer.lines.get(this._activeBuffer.ybase+this._activeBuffer.y);return b&&(b.insertCells(this._activeBuffer.x,a.params[0]||1,this._activeBuffer.getNullCell(this._eraseAttrData())),this._dirtyRowTracker.markDirty(this._activeBuffer.y)),!0}deleteChars(a){this._restrictCursor();let b=this._activeBuffer.lines.get(this._activeBuffer.ybase+this._activeBuffer.y);return b&&(b.deleteCells(this._activeBuffer.x,a.params[0]||1,this._activeBuffer.getNullCell(this._eraseAttrData())),this._dirtyRowTracker.markDirty(this._activeBuffer.y)),!0}scrollUp(a){let b=a.params[0]||1;for(;b--;)this._activeBuffer.lines.splice(this._activeBuffer.ybase+this._activeBuffer.scrollTop,1),this._activeBuffer.lines.splice(this._activeBuffer.ybase+this._activeBuffer.scrollBottom,0,this._activeBuffer.getBlankLine(this._eraseAttrData()));return this._dirtyRowTracker.markRangeDirty(this._activeBuffer.scrollTop,this._activeBuffer.scrollBottom),!0}scrollDown(a){let b=a.params[0]||1;for(;b--;)this._activeBuffer.lines.splice(this._activeBuffer.ybase+this._activeBuffer.scrollBottom,1),this._activeBuffer.lines.splice(this._activeBuffer.ybase+this._activeBuffer.scrollTop,0,this._activeBuffer.getBlankLine(d_));return this._dirtyRowTracker.markRangeDirty(this._activeBuffer.scrollTop,this._activeBuffer.scrollBottom),!0}scrollLeft(a){if(this._activeBuffer.y>this._activeBuffer.scrollBottom||this._activeBuffer.y<this._activeBuffer.scrollTop)return!0;let b=a.params[0]||1;for(let a=this._activeBuffer.scrollTop;a<=this._activeBuffer.scrollBottom;++a){let c=this._activeBuffer.lines.get(this._activeBuffer.ybase+a);c.deleteCells(0,b,this._activeBuffer.getNullCell(this._eraseAttrData())),c.isWrapped=!1}return this._dirtyRowTracker.markRangeDirty(this._activeBuffer.scrollTop,this._activeBuffer.scrollBottom),!0}scrollRight(a){if(this._activeBuffer.y>this._activeBuffer.scrollBottom||this._activeBuffer.y<this._activeBuffer.scrollTop)return!0;let b=a.params[0]||1;for(let a=this._activeBuffer.scrollTop;a<=this._activeBuffer.scrollBottom;++a){let c=this._activeBuffer.lines.get(this._activeBuffer.ybase+a);c.insertCells(0,b,this._activeBuffer.getNullCell(this._eraseAttrData())),c.isWrapped=!1}return this._dirtyRowTracker.markRangeDirty(this._activeBuffer.scrollTop,this._activeBuffer.scrollBottom),!0}insertColumns(a){if(this._activeBuffer.y>this._activeBuffer.scrollBottom||this._activeBuffer.y<this._activeBuffer.scrollTop)return!0;let b=a.params[0]||1;for(let a=this._activeBuffer.scrollTop;a<=this._activeBuffer.scrollBottom;++a){let c=this._activeBuffer.lines.get(this._activeBuffer.ybase+a);c.insertCells(this._activeBuffer.x,b,this._activeBuffer.getNullCell(this._eraseAttrData())),c.isWrapped=!1}return this._dirtyRowTracker.markRangeDirty(this._activeBuffer.scrollTop,this._activeBuffer.scrollBottom),!0}deleteColumns(a){if(this._activeBuffer.y>this._activeBuffer.scrollBottom||this._activeBuffer.y<this._activeBuffer.scrollTop)return!0;let b=a.params[0]||1;for(let a=this._activeBuffer.scrollTop;a<=this._activeBuffer.scrollBottom;++a){let c=this._activeBuffer.lines.get(this._activeBuffer.ybase+a);c.deleteCells(this._activeBuffer.x,b,this._activeBuffer.getNullCell(this._eraseAttrData())),c.isWrapped=!1}return this._dirtyRowTracker.markRangeDirty(this._activeBuffer.scrollTop,this._activeBuffer.scrollBottom),!0}eraseChars(a){this._restrictCursor();let b=this._activeBuffer.lines.get(this._activeBuffer.ybase+this._activeBuffer.y);return b&&(b.replaceCells(this._activeBuffer.x,this._activeBuffer.x+(a.params[0]||1),this._activeBuffer.getNullCell(this._eraseAttrData())),this._dirtyRowTracker.markDirty(this._activeBuffer.y)),!0}repeatPrecedingCharacter(a){let b=this._parser.precedingJoinState;if(!b)return!0;let c=a.params[0]||1,d=eu.extractWidth(b),e=this._activeBuffer.x-d,f=this._activeBuffer.lines.get(this._activeBuffer.ybase+this._activeBuffer.y).getString(e),g=new Uint32Array(f.length*c),h=0;for(let a=0;a<f.length;){let b=f.codePointAt(a)||0;g[h++]=b,a+=b>65535?2:1}let i=h;for(let a=1;a<c;++a)g.copyWithin(i,0,h),i+=h;return this.print(g,0,i),!0}sendDeviceAttributesPrimary(a){return a.params[0]>0||(this._is("xterm")||this._is("rxvt-unicode")||this._is("screen")?this._coreService.triggerDataEvent(cB.ESC+"[?1;2c"):this._is("linux")&&this._coreService.triggerDataEvent(cB.ESC+"[?6c")),!0}sendDeviceAttributesSecondary(a){return a.params[0]>0||(this._is("xterm")?this._coreService.triggerDataEvent(cB.ESC+"[>0;276;0c"):this._is("rxvt-unicode")?this._coreService.triggerDataEvent(cB.ESC+"[>85;95;0c"):this._is("linux")?this._coreService.triggerDataEvent(a.params[0]+"c"):this._is("screen")&&this._coreService.triggerDataEvent(cB.ESC+"[>83;40003;0c")),!0}_is(a){return 0===(this._optionsService.rawOptions.termName+"").indexOf(a)}setMode(a){for(let b=0;b<a.length;b++)switch(a.params[b]){case 4:this._coreService.modes.insertMode=!0;break;case 20:this._optionsService.options.convertEol=!0}return!0}setModePrivate(a){for(let b=0;b<a.length;b++)switch(a.params[b]){case 1:this._coreService.decPrivateModes.applicationCursorKeys=!0;break;case 2:this._charsetService.setgCharset(0,d5),this._charsetService.setgCharset(1,d5),this._charsetService.setgCharset(2,d5),this._charsetService.setgCharset(3,d5);break;case 3:this._optionsService.rawOptions.windowOptions.setWinLines&&(this._bufferService.resize(132,this._bufferService.rows),this._onRequestReset.fire());break;case 6:this._coreService.decPrivateModes.origin=!0,this._setCursor(0,0);break;case 7:this._coreService.decPrivateModes.wraparound=!0;break;case 12:this._optionsService.options.cursorBlink=!0;break;case 45:this._coreService.decPrivateModes.reverseWraparound=!0;break;case 66:this._logService.debug("Serial port requested application keypad."),this._coreService.decPrivateModes.applicationKeypad=!0,this._onRequestSyncScrollBar.fire();break;case 9:this._coreMouseService.activeProtocol="X10";break;case 1e3:this._coreMouseService.activeProtocol="VT200";break;case 1002:this._coreMouseService.activeProtocol="DRAG";break;case 1003:this._coreMouseService.activeProtocol="ANY";break;case 1004:this._coreService.decPrivateModes.sendFocus=!0,this._onRequestSendFocus.fire();break;case 1005:this._logService.debug("DECSET 1005 not supported (see #2507)");break;case 1006:this._coreMouseService.activeEncoding="SGR";break;case 1015:this._logService.debug("DECSET 1015 not supported (see #2507)");break;case 1016:this._coreMouseService.activeEncoding="SGR_PIXELS";break;case 25:this._coreService.isCursorHidden=!1;break;case 1048:this.saveCursor();break;case 1049:this.saveCursor();case 47:case 1047:this._bufferService.buffers.activateAltBuffer(this._eraseAttrData()),this._coreService.isCursorInitialized=!0,this._onRequestRefreshRows.fire(void 0),this._onRequestSyncScrollBar.fire();break;case 2004:this._coreService.decPrivateModes.bracketedPasteMode=!0;break;case 2026:this._coreService.decPrivateModes.synchronizedOutput=!0}return!0}resetMode(a){for(let b=0;b<a.length;b++)switch(a.params[b]){case 4:this._coreService.modes.insertMode=!1;break;case 20:this._optionsService.options.convertEol=!1}return!0}resetModePrivate(a){for(let b=0;b<a.length;b++)switch(a.params[b]){case 1:this._coreService.decPrivateModes.applicationCursorKeys=!1;break;case 3:this._optionsService.rawOptions.windowOptions.setWinLines&&(this._bufferService.resize(80,this._bufferService.rows),this._onRequestReset.fire());break;case 6:this._coreService.decPrivateModes.origin=!1,this._setCursor(0,0);break;case 7:this._coreService.decPrivateModes.wraparound=!1;break;case 12:this._optionsService.options.cursorBlink=!1;break;case 45:this._coreService.decPrivateModes.reverseWraparound=!1;break;case 66:this._logService.debug("Switching back to normal keypad."),this._coreService.decPrivateModes.applicationKeypad=!1,this._onRequestSyncScrollBar.fire();break;case 9:case 1e3:case 1002:case 1003:this._coreMouseService.activeProtocol="NONE";break;case 1004:this._coreService.decPrivateModes.sendFocus=!1;break;case 1005:this._logService.debug("DECRST 1005 not supported (see #2507)");break;case 1006:case 1016:this._coreMouseService.activeEncoding="DEFAULT";break;case 1015:this._logService.debug("DECRST 1015 not supported (see #2507)");break;case 25:this._coreService.isCursorHidden=!0;break;case 1048:this.restoreCursor();break;case 1049:case 47:case 1047:this._bufferService.buffers.activateNormalBuffer(),1049===a.params[b]&&this.restoreCursor(),this._coreService.isCursorInitialized=!0,this._onRequestRefreshRows.fire(void 0),this._onRequestSyncScrollBar.fire();break;case 2004:this._coreService.decPrivateModes.bracketedPasteMode=!1;break;case 2026:this._coreService.decPrivateModes.synchronizedOutput=!1,this._onRequestRefreshRows.fire(void 0)}return!0}requestMode(a,b){let c,d,e,f;(d=c||={})[d.NOT_RECOGNIZED=0]="NOT_RECOGNIZED",d[d.SET=1]="SET",d[d.RESET=2]="RESET",d[d.PERMANENTLY_SET=3]="PERMANENTLY_SET",d[d.PERMANENTLY_RESET=4]="PERMANENTLY_RESET";let g=this._coreService.decPrivateModes,{activeProtocol:h,activeEncoding:i}=this._coreMouseService,j=this._coreService,{buffers:k,cols:l}=this._bufferService,{active:m,alt:n}=k,o=this._optionsService.rawOptions,p=a=>a?1:2,q=a.params[0];return e=q,f=b?2===q?4:4===q?p(j.modes.insertMode):12===q?3:20===q?p(o.convertEol):0:1===q?p(g.applicationCursorKeys):3===q?o.windowOptions.setWinLines?80===l?2:+(132===l):0:6===q?p(g.origin):7===q?p(g.wraparound):8===q?3:9===q?p("X10"===h):12===q?p(o.cursorBlink):25===q?p(!j.isCursorHidden):45===q?p(g.reverseWraparound):66===q?p(g.applicationKeypad):67===q?4:1e3===q?p("VT200"===h):1002===q?p("DRAG"===h):1003===q?p("ANY"===h):1004===q?p(g.sendFocus):1005===q?4:1006===q?p("SGR"===i):1015===q?4:1016===q?p("SGR_PIXELS"===i):1048===q?1:47===q||1047===q||1049===q?p(m===n):2004===q?p(g.bracketedPasteMode):2026===q?p(g.synchronizedOutput):0,j.triggerDataEvent(`${cB.ESC}[${b?"":"?"}${e};${f}$y`),!0}_updateAttrColor(a,b,c,d,e){return 2===b?(a|=0x3000000,a&=-0x1000000,a|=Q.fromColorRGB([c,d,e])):5===b&&(a&=-0x3000100,a|=0x2000000|255&c),a}_extractColor(a,b,c){let d=[0,0,-1,0,0,0],e=0,f=0;do{if(d[f+e]=a.params[b+f],a.hasSubParams(b+f)){let c=a.getSubParams(b+f),g=0;do 5===d[1]&&(e=1),d[f+g+1+e]=c[g];while(++g<c.length&&g+f+1+e<d.length)break}if(5===d[1]&&f+e>=2||2===d[1]&&f+e>=5)break;d[1]&&(e=1)}while(++f+b<a.length&&f+e<d.length)for(let a=2;a<d.length;++a)-1===d[a]&&(d[a]=0);switch(d[0]){case 38:c.fg=this._updateAttrColor(c.fg,d[1],d[3],d[4],d[5]);break;case 48:c.bg=this._updateAttrColor(c.bg,d[1],d[3],d[4],d[5]);break;case 58:c.extended=c.extended.clone(),c.extended.underlineColor=this._updateAttrColor(c.extended.underlineColor,d[1],d[3],d[4],d[5])}return f}_processUnderline(a,b){b.extended=b.extended.clone(),(!~a||a>5)&&(a=1),b.extended.underlineStyle=a,b.fg|=0x10000000,0===a&&(b.fg&=-0x10000001),b.updateExtended()}_processSGR0(a){a.fg=d_.fg,a.bg=d_.bg,a.extended=a.extended.clone(),a.extended.underlineStyle=0,a.extended.underlineColor&=-0x4000000,a.updateExtended()}charAttributes(a){if(1===a.length&&0===a.params[0])return this._processSGR0(this._curAttrData),!0;let b=a.length,c,d=this._curAttrData;for(let e=0;e<b;e++)(c=a.params[e])>=30&&c<=37?(d.fg&=-0x3000100,d.fg|=0x1000000|c-30):c>=40&&c<=47?(d.bg&=-0x3000100,d.bg|=0x1000000|c-40):c>=90&&c<=97?(d.fg&=-0x3000100,d.fg|=0x1000000|c-90|8):c>=100&&c<=107?(d.bg&=-0x3000100,d.bg|=0x1000000|c-100|8):0===c?this._processSGR0(d):1===c?d.fg|=0x8000000:3===c?d.bg|=0x4000000:4===c?(d.fg|=0x10000000,this._processUnderline(a.hasSubParams(e)?a.getSubParams(e)[0]:1,d)):5===c?d.fg|=0x20000000:7===c?d.fg|=0x4000000:8===c?d.fg|=0x40000000:9===c?d.fg|=0x80000000:2===c?d.bg|=0x8000000:21===c?this._processUnderline(2,d):22===c?(d.fg&=-0x8000001,d.bg&=-0x8000001):23===c?d.bg&=-0x4000001:24===c?(d.fg&=-0x10000001,this._processUnderline(0,d)):25===c?d.fg&=-0x20000001:27===c?d.fg&=-0x4000001:28===c?d.fg&=-0x40000001:29===c?d.fg&=0x7fffffff:39===c?(d.fg&=-0x4000000,d.fg|=0xffffff&d_.fg):49===c?(d.bg&=-0x4000000,d.bg|=0xffffff&d_.bg):38===c||48===c||58===c?e+=this._extractColor(a,e,d):53===c?d.bg|=0x40000000:55===c?d.bg&=-0x40000001:59===c?(d.extended=d.extended.clone(),d.extended.underlineColor=-1,d.updateExtended()):100===c?(d.fg&=-0x4000000,d.fg|=0xffffff&d_.fg,d.bg&=-0x4000000,d.bg|=0xffffff&d_.bg):this._logService.debug("Unknown SGR attribute: %d.",c);return!0}deviceStatus(a){switch(a.params[0]){case 5:this._coreService.triggerDataEvent(`${cB.ESC}[0n`);break;case 6:let b=this._activeBuffer.y+1,c=this._activeBuffer.x+1;this._coreService.triggerDataEvent(`${cB.ESC}[${b};${c}R`)}return!0}deviceStatusPrivate(a){if(6===a.params[0]){let a=this._activeBuffer.y+1,b=this._activeBuffer.x+1;this._coreService.triggerDataEvent(`${cB.ESC}[?${a};${b}R`)}return!0}softReset(a){return this._coreService.isCursorHidden=!1,this._onRequestSyncScrollBar.fire(),this._activeBuffer.scrollTop=0,this._activeBuffer.scrollBottom=this._bufferService.rows-1,this._curAttrData=d_.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(a){let b=0===a.length?1:a.params[0];if(0===b)this._coreService.decPrivateModes.cursorStyle=void 0,this._coreService.decPrivateModes.cursorBlink=void 0;else{switch(b){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"}this._coreService.decPrivateModes.cursorBlink=b%2==1}return!0}setScrollRegion(a){let b=a.params[0]||1,c;return(a.length<2||(c=a.params[1])>this._bufferService.rows||0===c)&&(c=this._bufferService.rows),c>b&&(this._activeBuffer.scrollTop=b-1,this._activeBuffer.scrollBottom=c-1,this._setCursor(0,0)),!0}windowOptions(a){if(!eN(a.params[0],this._optionsService.rawOptions.windowOptions))return!0;let b=a.length>1?a.params[1]:0;switch(a.params[0]){case 14:2!==b&&this._onRequestWindowsOptionsReport.fire(0);break;case 16:this._onRequestWindowsOptionsReport.fire(1);break;case 18:this._bufferService&&this._coreService.triggerDataEvent(`${cB.ESC}[8;${this._bufferService.rows};${this._bufferService.cols}t`);break;case 22:(0===b||2===b)&&(this._windowTitleStack.push(this._windowTitle),this._windowTitleStack.length>10&&this._windowTitleStack.shift()),(0===b||1===b)&&(this._iconNameStack.push(this._iconName),this._iconNameStack.length>10&&this._iconNameStack.shift());break;case 23:(0===b||2===b)&&this._windowTitleStack.length&&this.setTitle(this._windowTitleStack.pop()),(0===b||1===b)&&this._iconNameStack.length&&this.setIconName(this._iconNameStack.pop())}return!0}saveCursor(a){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(a){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(a){return this._windowTitle=a,this._onTitleChange.fire(a),!0}setIconName(a){return this._iconName=a,!0}setOrReportIndexedColor(a){let b=[],c=a.split(";");for(;c.length>1;){let a=c.shift(),d=c.shift();if(/^\d+$/.exec(a)){let c=parseInt(a);if(eR(c))if("?"===d)b.push({type:0,index:c});else{let a=eK(d);a&&b.push({type:1,index:c,color:a})}}}return b.length&&this._onColor.fire(b),!0}setHyperlink(a){let b=a.indexOf(";");if(-1===b)return!0;let c=a.slice(0,b).trim(),d=a.slice(b+1);return d?this._createHyperlink(c,d):!c.trim()&&this._finishHyperlink()}_createHyperlink(a,b){this._getCurrentLinkId()&&this._finishHyperlink();let c=a.split(":"),d,e=c.findIndex(a=>a.startsWith("id="));return -1!==e&&(d=c[e].slice(3)||void 0),this._curAttrData.extended=this._curAttrData.extended.clone(),this._curAttrData.extended.urlId=this._oscLinkService.registerLink({id:d,uri:b}),this._curAttrData.updateExtended(),!0}_finishHyperlink(){return this._curAttrData.extended=this._curAttrData.extended.clone(),this._curAttrData.extended.urlId=0,this._curAttrData.updateExtended(),!0}_setOrReportSpecialColor(a,b){let c=a.split(";");for(let a=0;a<c.length&&!(b>=this._specialColors.length);++a,++b)if("?"===c[a])this._onColor.fire([{type:0,index:this._specialColors[b]}]);else{let d=eK(c[a]);d&&this._onColor.fire([{type:1,index:this._specialColors[b],color:d}])}return!0}setOrReportFgColor(a){return this._setOrReportSpecialColor(a,0)}setOrReportBgColor(a){return this._setOrReportSpecialColor(a,1)}setOrReportCursorColor(a){return this._setOrReportSpecialColor(a,2)}restoreIndexedColor(a){if(!a)return this._onColor.fire([{type:2}]),!0;let b=[],c=a.split(";");for(let a=0;a<c.length;++a)if(/^\d+$/.exec(c[a])){let d=parseInt(c[a]);eR(d)&&b.push({type:2,index:d})}return b.length&&this._onColor.fire(b),!0}restoreFgColor(a){return this._onColor.fire([{type:2,index:256}]),!0}restoreBgColor(a){return this._onColor.fire([{type:2,index:257}]),!0}restoreCursorColor(a){return this._onColor.fire([{type:2,index:258}]),!0}nextLine(){return this._activeBuffer.x=0,this.index(),!0}keypadApplicationMode(){return this._logService.debug("Serial port requested application keypad."),this._coreService.decPrivateModes.applicationKeypad=!0,this._onRequestSyncScrollBar.fire(),!0}keypadNumericMode(){return this._logService.debug("Switching back to normal keypad."),this._coreService.decPrivateModes.applicationKeypad=!1,this._onRequestSyncScrollBar.fire(),!0}selectDefaultCharset(){return this._charsetService.setgLevel(0),this._charsetService.setgCharset(0,d5),!0}selectCharset(a){return 2!==a.length?this.selectDefaultCharset():"/"===a[0]||this._charsetService.setgCharset(eM[a[0]],d4[a[1]]||d5),!0}index(){return this._restrictCursor(),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._restrictCursor(),!0}tabSet(){return this._activeBuffer.tabs[this._activeBuffer.x]=!0,!0}reverseIndex(){if(this._restrictCursor(),this._activeBuffer.y===this._activeBuffer.scrollTop){let a=this._activeBuffer.scrollBottom-this._activeBuffer.scrollTop;this._activeBuffer.lines.shiftElements(this._activeBuffer.ybase+this._activeBuffer.y,a,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=d_.clone(),this._eraseAttrDataInternal=d_.clone()}_eraseAttrData(){return this._eraseAttrDataInternal.bg&=-0x4000000,this._eraseAttrDataInternal.bg|=0x3ffffff&this._curAttrData.bg,this._eraseAttrDataInternal}setgLevel(a){return this._charsetService.setgLevel(a),!0}screenAlignmentPattern(){let a=new S;a.content=4194373,a.fg=this._curAttrData.fg,a.bg=this._curAttrData.bg,this._setCursor(0,0);for(let b=0;b<this._bufferService.rows;++b){let c=this._activeBuffer.ybase+this._activeBuffer.y+b,d=this._activeBuffer.lines.get(c);d&&(d.fill(a),d.isWrapped=!1)}return this._dirtyRowTracker.markAllDirty(),this._setCursor(0,0),!0}requestStatusString(a,b){let c=a=>(this._coreService.triggerDataEvent(`${cB.ESC}${a}${cB.ESC}\\`),!0),d=this._bufferService.buffer,e=this._optionsService.rawOptions;return c('"q'===a?`P1$r${+!!this._curAttrData.isProtected()}"q`:'"p'===a?'P1$r61;1"p':"r"===a?`P1$r${d.scrollTop+1};${d.scrollBottom+1}r`:"m"===a?"P1$r0m":" q"===a?`P1$r${({block:2,underline:4,bar:6})[e.cursorStyle]-!!e.cursorBlink} q`:"P0$r")}markRangeDirty(a,b){this._dirtyRowTracker.markRangeDirty(a,b)}},eQ=class{constructor(a){this._bufferService=a,this.clearRange()}clearRange(){this.start=this._bufferService.buffer.y,this.end=this._bufferService.buffer.y}markDirty(a){a<this.start?this.start=a:a>this.end&&(this.end=a)}markRangeDirty(a,b){a>b&&(eO=a,a=b,b=eO),a<this.start&&(this.start=a),b>this.end&&(this.end=b)}markAllDirty(){this.markRangeDirty(0,this._bufferService.rows-1)}};function eR(a){return 0<=a&&a<256}eQ=F([G(0,X)],eQ);var eS=class extends aC{constructor(a){super(),this._action=a,this._writeBuffer=[],this._callbacks=[],this._pendingData=0,this._bufferOffset=0,this._isSyncWriting=!1,this._syncCalls=0,this._didUserInput=!1,this._onWriteParsed=this._register(new aV),this.onWriteParsed=this._onWriteParsed.event}handleUserInput(){this._didUserInput=!0}writeSync(a,b){let c;if(void 0!==b&&this._syncCalls>b){this._syncCalls=0;return}if(this._pendingData+=a.length,this._writeBuffer.push(a),this._callbacks.push(void 0),this._syncCalls++,!this._isSyncWriting){for(this._isSyncWriting=!0;c=this._writeBuffer.shift();){this._action(c);let a=this._callbacks.shift();a&&a()}this._pendingData=0,this._bufferOffset=0x7fffffff,this._isSyncWriting=!1,this._syncCalls=0}}write(a,b){if(this._pendingData>5e7)throw 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+=a.length,this._writeBuffer.push(a),this._callbacks.push(b),this._innerWrite();return}setTimeout(()=>this._innerWrite())}this._pendingData+=a.length,this._writeBuffer.push(a),this._callbacks.push(b)}_innerWrite(a=0,b=!0){let c=a||performance.now();for(;this._writeBuffer.length>this._bufferOffset;){let a=this._writeBuffer[this._bufferOffset],d=this._action(a,b);if(d){let a=a=>performance.now()-c>=12?setTimeout(()=>this._innerWrite(0,a)):this._innerWrite(c,a);d.catch(a=>(queueMicrotask(()=>{throw a}),Promise.resolve(!1))).then(a);return}let e=this._callbacks[this._bufferOffset];if(e&&e(),this._bufferOffset++,this._pendingData-=a.length,performance.now()-c>=12)break}this._writeBuffer.length>this._bufferOffset?(this._bufferOffset>50&&(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()}},eT=class{constructor(a){this._bufferService=a,this._nextId=1,this._entriesWithId=new Map,this._dataByLinkId=new Map}registerLink(a){let b=this._bufferService.buffer;if(void 0===a.id){let c=b.addMarker(b.ybase+b.y),d={data:a,id:this._nextId++,lines:[c]};return c.onDispose(()=>this._removeMarkerFromLink(d,c)),this._dataByLinkId.set(d.id,d),d.id}let c=this._getEntryIdKey(a),d=this._entriesWithId.get(c);if(d)return this.addLineToLink(d.id,b.ybase+b.y),d.id;let e=b.addMarker(b.ybase+b.y),f={id:this._nextId++,key:this._getEntryIdKey(a),data:a,lines:[e]};return e.onDispose(()=>this._removeMarkerFromLink(f,e)),this._entriesWithId.set(f.key,f),this._dataByLinkId.set(f.id,f),f.id}addLineToLink(a,b){let c=this._dataByLinkId.get(a);if(c&&c.lines.every(a=>a.line!==b)){let a=this._bufferService.buffer.addMarker(b);c.lines.push(a),a.onDispose(()=>this._removeMarkerFromLink(c,a))}}getLinkData(a){return this._dataByLinkId.get(a)?.data}_getEntryIdKey(a){return`${a.id};;${a.uri}`}_removeMarkerFromLink(a,b){let c=a.lines.indexOf(b);-1!==c&&(a.lines.splice(c,1),0===a.lines.length&&(void 0!==a.data.id&&this._entriesWithId.delete(a.key),this._dataByLinkId.delete(a.id)))}};eT=F([G(0,X)],eT);var eU=!1,eV=class extends aC{constructor(a){super(),this._windowsWrappingHeuristics=this._register(new aD),this._onBinary=this._register(new aV),this.onBinary=this._onBinary.event,this._onData=this._register(new aV),this.onData=this._onData.event,this._onLineFeed=this._register(new aV),this.onLineFeed=this._onLineFeed.event,this._onResize=this._register(new aV),this.onResize=this._onResize.event,this._onWriteParsed=this._register(new aV),this.onWriteParsed=this._onWriteParsed.event,this._onScroll=this._register(new aV),this._instantiationService=new dX,this.optionsService=this._register(new eb(a)),this._instantiationService.setService(ab,this.optionsService),this._bufferService=this._register(this._instantiationService.createInstance(d8)),this._instantiationService.setService(X,this._bufferService),this._logService=this._register(this._instantiationService.createInstance(dZ)),this._instantiationService.setService(aa,this._logService),this.coreService=this._register(this._instantiationService.createInstance(ef)),this._instantiationService.setService(Z,this.coreService),this.coreMouseService=this._register(this._instantiationService.createInstance(ek)),this._instantiationService.setService(Y,this.coreMouseService),this.unicodeService=this._register(this._instantiationService.createInstance(eu)),this._instantiationService.setService(ad,this.unicodeService),this._charsetService=this._instantiationService.createInstance(ev),this._instantiationService.setService($,this._charsetService),this._oscLinkService=this._instantiationService.createInstance(eT),this._instantiationService.setService(ac,this._oscLinkService),this._inputHandler=this._register(new eP(this._bufferService,this._charsetService,this.coreService,this._logService,this.optionsService,this._oscLinkService,this.coreMouseService,this.unicodeService)),this._register(aO.forward(this._inputHandler.onLineFeed,this._onLineFeed)),this._register(this._inputHandler),this._register(aO.forward(this._bufferService.onResize,this._onResize)),this._register(aO.forward(this.coreService.onData,this._onData)),this._register(aO.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 eS((a,b)=>this._inputHandler.parse(a,b))),this._register(aO.forward(this._writeBuffer.onWriteParsed,this._onWriteParsed))}get onScroll(){return this._onScrollApi||(this._onScrollApi=this._register(new aV),this._onScroll.event(a=>{this._onScrollApi?.fire(a.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(a){for(let b in a)this.optionsService.options[b]=a[b]}write(a,b){this._writeBuffer.write(a,b)}writeSync(a,b){this._logService.logLevel<=3&&!eU&&(this._logService.warn("writeSync is unreliable and will be removed soon."),eU=!0),this._writeBuffer.writeSync(a,b)}input(a,b=!0){this.coreService.triggerDataEvent(a,b)}resize(a,b){isNaN(a)||isNaN(b)||(a=Math.max(a,2),b=Math.max(b,1),this._bufferService.resize(a,b))}scroll(a,b=!1){this._bufferService.scroll(a,b)}scrollLines(a,b){this._bufferService.scrollLines(a,b)}scrollPages(a){this.scrollLines(a*(this.rows-1))}scrollToTop(){this.scrollLines(-this._bufferService.buffer.ydisp)}scrollToBottom(a){this.scrollLines(this._bufferService.buffer.ybase-this._bufferService.buffer.ydisp)}scrollToLine(a){let b=a-this._bufferService.buffer.ydisp;0!==b&&this.scrollLines(b)}registerEscHandler(a,b){return this._inputHandler.registerEscHandler(a,b)}registerDcsHandler(a,b){return this._inputHandler.registerDcsHandler(a,b)}registerCsiHandler(a,b){return this._inputHandler.registerCsiHandler(a,b)}registerOscHandler(a,b){return this._inputHandler.registerOscHandler(a,b)}_setup(){this._handleWindowsPtyOptionChange()}reset(){this._inputHandler.reset(),this._bufferService.reset(),this._charsetService.reset(),this.coreService.reset(),this.coreMouseService.reset()}_handleWindowsPtyOptionChange(){let a=!1,b=this.optionsService.rawOptions.windowsPty;b&&void 0!==b.buildNumber&&void 0!==b.buildNumber?a="conpty"===b.backend&&b.buildNumber<21376:this.optionsService.rawOptions.windowsMode&&(a=!0),a?this._enableWindowsWrappingHeuristics():this._windowsWrappingHeuristics.clear()}_enableWindowsWrappingHeuristics(){if(!this._windowsWrappingHeuristics.value){let a=[];a.push(this.onLineFeed(ew.bind(null,this._bufferService))),a.push(this.registerCsiHandler({final:"H"},()=>(ew(this._bufferService),!1))),this._windowsWrappingHeuristics.value=az(()=>{for(let b of a)b.dispose()})}}},eW={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:["'",'"']},eX=0,eY=class{constructor(a){this._getKey=a,this._array=[],this._insertedValues=[],this._flushInsertedTask=new dA,this._isFlushingInserted=!1,this._deletedIndices=[],this._flushDeletedTask=new dA,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(a){this._flushCleanupDeleted(),0===this._insertedValues.length&&this._flushInsertedTask.enqueue(()=>this._flushInserted()),this._insertedValues.push(a)}_flushInserted(){let a=this._insertedValues.sort((a,b)=>this._getKey(a)-this._getKey(b)),b=0,c=0,d=Array(this._array.length+this._insertedValues.length);for(let e=0;e<d.length;e++)c>=this._array.length||this._getKey(a[b])<=this._getKey(this._array[c])?(d[e]=a[b],b++):d[e]=this._array[c++];this._array=d,this._insertedValues.length=0}_flushCleanupInserted(){!this._isFlushingInserted&&this._insertedValues.length>0&&this._flushInsertedTask.flush()}delete(a){if(this._flushCleanupInserted(),0===this._array.length)return!1;let b=this._getKey(a);if(void 0===b||-1===(eX=this._search(b))||this._getKey(this._array[eX])!==b)return!1;do if(this._array[eX]===a)return 0===this._deletedIndices.length&&this._flushDeletedTask.enqueue(()=>this._flushDeleted()),this._deletedIndices.push(eX),!0;while(++eX<this._array.length&&this._getKey(this._array[eX])===b)return!1}_flushDeleted(){this._isFlushingDeleted=!0;let a=this._deletedIndices.sort((a,b)=>a-b),b=0,c=Array(this._array.length-a.length),d=0;for(let e=0;e<this._array.length;e++)a[b]===e?b++:c[d++]=this._array[e];this._array=c,this._deletedIndices.length=0,this._isFlushingDeleted=!1}_flushCleanupDeleted(){!this._isFlushingDeleted&&this._deletedIndices.length>0&&this._flushDeletedTask.flush()}*getKeyIterator(a){if(this._flushCleanupInserted(),this._flushCleanupDeleted(),0!==this._array.length&&!((eX=this._search(a))<0||eX>=this._array.length)&&this._getKey(this._array[eX])===a)do yield this._array[eX];while(++eX<this._array.length&&this._getKey(this._array[eX])===a)}forEachByKey(a,b){if(this._flushCleanupInserted(),this._flushCleanupDeleted(),0!==this._array.length&&!((eX=this._search(a))<0||eX>=this._array.length)&&this._getKey(this._array[eX])===a)do b(this._array[eX]);while(++eX<this._array.length&&this._getKey(this._array[eX])===a)}values(){return this._flushCleanupInserted(),this._flushCleanupDeleted(),[...this._array].values()}_search(a){let b=0,c=this._array.length-1;for(;c>=b;){let d=b+c>>1,e=this._getKey(this._array[d]);if(e>a)c=d-1;else if(e<a)b=d+1;else{for(;d>0&&this._getKey(this._array[d-1])===a;)d--;return d}}return b}},eZ=0,e$=0,e_=class extends aC{constructor(){super(),this._decorations=new eY(a=>a?.marker.line),this._onDecorationRegistered=this._register(new aV),this.onDecorationRegistered=this._onDecorationRegistered.event,this._onDecorationRemoved=this._register(new aV),this.onDecorationRemoved=this._onDecorationRemoved.event,this._register(az(()=>this.reset()))}get decorations(){return this._decorations.values()}registerDecoration(a){if(a.marker.isDisposed)return;let b=new e0(a);if(b){let a=b.marker.onDispose(()=>b.dispose()),c=b.onDispose(()=>{c.dispose(),b&&(this._decorations.delete(b)&&this._onDecorationRemoved.fire(b),a.dispose())});this._decorations.insert(b),this._onDecorationRegistered.fire(b)}return b}reset(){for(let a of this._decorations.values())a.dispose();this._decorations.clear()}*getDecorationsAtCell(a,b,c){let d=0,e=0;for(let f of this._decorations.getKeyIterator(b))e=(d=f.options.x??0)+(f.options.width??1),a>=d&&a<e&&(!c||(f.options.layer??"bottom")===c)&&(yield f)}forEachDecorationAtCell(a,b,c,d){this._decorations.forEachByKey(b,b=>{e$=(eZ=b.options.x??0)+(b.options.width??1),a>=eZ&&a<e$&&(!c||(b.options.layer??"bottom")===c)&&d(b)})}},e0=class extends aB{constructor(a){super(),this.options=a,this.onRenderEmitter=this.add(new aV),this.onRender=this.onRenderEmitter.event,this._onDispose=this.add(new aV),this.onDispose=this._onDispose.event,this._cachedBg=null,this._cachedFg=null,this.marker=a.marker,this.options.overviewRulerOptions&&!this.options.overviewRulerOptions.position&&(this.options.overviewRulerOptions.position="full")}get backgroundColorRGB(){return null===this._cachedBg&&(this.options.backgroundColor?this._cachedBg=en.toColor(this.options.backgroundColor):this._cachedBg=void 0),this._cachedBg}get foregroundColorRGB(){return null===this._cachedFg&&(this.options.foregroundColor?this._cachedFg=en.toColor(this.options.foregroundColor):this._cachedFg=void 0),this._cachedFg}dispose(){this._onDispose.fire(),super.dispose()}},e1=class{constructor(a,b=1e3){this._renderCallback=a,this._debounceThresholdMS=b,this._lastRefreshMs=0,this._additionalRefreshRequested=!1}dispose(){this._refreshTimeoutID&&clearTimeout(this._refreshTimeoutID)}refresh(a,b,c){this._rowCount=c,a=void 0!==a?a:0,b=void 0!==b?b:this._rowCount-1,this._rowStart=void 0!==this._rowStart?Math.min(this._rowStart,a):a,this._rowEnd=void 0!==this._rowEnd?Math.max(this._rowEnd,b):b;let d=performance.now();if(d-this._lastRefreshMs>=this._debounceThresholdMS)this._lastRefreshMs=d,this._innerRefresh();else if(!this._additionalRefreshRequested){let a=d-this._lastRefreshMs,b=this._debounceThresholdMS-a;this._additionalRefreshRequested=!0,this._refreshTimeoutID=window.setTimeout(()=>{this._lastRefreshMs=performance.now(),this._innerRefresh(),this._additionalRefreshRequested=!1,this._refreshTimeoutID=void 0},b)}}_innerRefresh(){if(void 0===this._rowStart||void 0===this._rowEnd||void 0===this._rowCount)return;let a=Math.max(this._rowStart,0),b=Math.min(this._rowEnd,this._rowCount-1);this._rowStart=void 0,this._rowEnd=void 0,this._renderCallback(a,b)}},e2=class extends aC{constructor(a,b,c,d){super(),this._terminal=a,this._coreBrowserService=c,this._renderService=d,this._rowColumns=new WeakMap,this._liveRegionLineCount=0,this._charsToConsume=[],this._charsToAnnounce="";let e=this._coreBrowserService.mainDocument;this._accessibilityContainer=e.createElement("div"),this._accessibilityContainer.classList.add("xterm-accessibility"),this._rowContainer=e.createElement("div"),this._rowContainer.setAttribute("role","list"),this._rowContainer.classList.add("xterm-accessibility-tree"),this._rowElements=[];for(let a=0;a<this._terminal.rows;a++)this._rowElements[a]=this._createAccessibilityTreeNode(),this._rowContainer.appendChild(this._rowElements[a]);if(this._topBoundaryFocusListener=a=>this._handleBoundaryFocus(a,0),this._bottomBoundaryFocusListener=a=>this._handleBoundaryFocus(a,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=e.createElement("div"),this._liveRegion.classList.add("live-region"),this._liveRegion.setAttribute("aria-live","assertive"),this._accessibilityContainer.appendChild(this._liveRegion),this._liveRegionDebouncer=this._register(new e1(this._renderRows.bind(this))),!this._terminal.element)throw Error("Cannot enable accessibility before Terminal.open");this._terminal.element.insertAdjacentElement("afterbegin",this._accessibilityContainer),this._register(this._terminal.onResize(a=>this._handleResize(a.rows))),this._register(this._terminal.onRender(a=>this._refreshRows(a.start,a.end))),this._register(this._terminal.onScroll(()=>this._refreshRows())),this._register(this._terminal.onA11yChar(a=>this._handleChar(a))),this._register(this._terminal.onLineFeed(()=>this._handleChar(`
|
|
29
|
-
`))),this._register(this._terminal.onA11yTab(a=>this._handleTab(a))),this._register(this._terminal.onKey(a=>this._handleKey(a.key))),this._register(this._terminal.onBlur(()=>this._clearLiveRegion())),this._register(this._renderService.onDimensionsChange(()=>this._refreshRowsDimensions())),this._register(
|
|
30
|
-
`&&(this._liveRegionLineCount++,21===this._liveRegionLineCount&&(this._liveRegion.textContent+=I)))}_clearLiveRegion(){this._liveRegion.textContent="",this._liveRegionLineCount=0}_handleKey(a){this._clearLiveRegion(),/\p{Control}/u.test(a)||this._charsToConsume.push(a)}_refreshRows(a,b){this._liveRegionDebouncer.refresh(a,b,this._terminal.rows)}_renderRows(a,b){let c=this._terminal.buffer,d=c.lines.length.toString();for(let e=a;e<=b;e++){let a=c.lines.get(c.ydisp+e),b=[],f=a?.translateToString(!0,void 0,void 0,b)||"",g=(c.ydisp+e+1).toString(),h=this._rowElements[e];h&&(0===f.length?(h.textContent=" ",this._rowColumns.set(h,[0,1])):(h.textContent=f,this._rowColumns.set(h,b)),h.setAttribute("aria-posinset",g),h.setAttribute("aria-setsize",d),this._alignRowWidth(h))}this._announceCharacters()}_announceCharacters(){0!==this._charsToAnnounce.length&&(this._liveRegion.textContent+=this._charsToAnnounce,this._charsToAnnounce="")}_handleBoundaryFocus(a,b){let c,d,e=a.target,f=this._rowElements[0===b?1:this._rowElements.length-2];if(e.getAttribute("aria-posinset")!==(0===b?"1":`${this._terminal.buffer.lines.length}`)&&a.relatedTarget===f){if(0===b?(c=e,d=this._rowElements.pop(),this._rowContainer.removeChild(d)):(c=this._rowElements.shift(),d=e,this._rowContainer.removeChild(c)),c.removeEventListener("focus",this._topBoundaryFocusListener),d.removeEventListener("focus",this._bottomBoundaryFocusListener),0===b){let a=this._createAccessibilityTreeNode();this._rowElements.unshift(a),this._rowContainer.insertAdjacentElement("afterbegin",a)}else{let a=this._createAccessibilityTreeNode();this._rowElements.push(a),this._rowContainer.appendChild(a)}this._rowElements[0].addEventListener("focus",this._topBoundaryFocusListener),this._rowElements[this._rowElements.length-1].addEventListener("focus",this._bottomBoundaryFocusListener),this._terminal.scrollLines(0===b?-1:1),this._rowElements[0===b?1:this._rowElements.length-2].focus(),a.preventDefault(),a.stopImmediatePropagation()}}_handleSelectionChange(){if(0===this._rowElements.length)return;let a=this._coreBrowserService.mainDocument.getSelection();if(!a)return;if(a.isCollapsed){this._rowContainer.contains(a.anchorNode)&&this._terminal.clearSelection();return}if(!a.anchorNode||!a.focusNode)return void console.error("anchorNode and/or focusNode are null");let b={node:a.anchorNode,offset:a.anchorOffset},c={node:a.focusNode,offset:a.focusOffset};if((b.node.compareDocumentPosition(c.node)&Node.DOCUMENT_POSITION_PRECEDING||b.node===c.node&&b.offset>c.offset)&&([b,c]=[c,b]),b.node.compareDocumentPosition(this._rowElements[0])&(Node.DOCUMENT_POSITION_CONTAINED_BY|Node.DOCUMENT_POSITION_FOLLOWING)&&(b={node:this._rowElements[0].childNodes[0],offset:0}),!this._rowContainer.contains(b.node))return;let d=this._rowElements.slice(-1)[0];if(c.node.compareDocumentPosition(d)&(Node.DOCUMENT_POSITION_CONTAINED_BY|Node.DOCUMENT_POSITION_PRECEDING)&&(c={node:d,offset:d.textContent?.length??0}),!this._rowContainer.contains(c.node))return;let e=({node:a,offset:b})=>{let c=a instanceof Text?a.parentNode:a,d=parseInt(c?.getAttribute("aria-posinset"),10)-1;if(isNaN(d))return console.warn("row is invalid. Race condition?"),null;let e=this._rowColumns.get(c);if(!e)return console.warn("columns is null. Race condition?"),null;let f=b<e.length?e[b]:e.slice(-1)[0]+1;return f>=this._terminal.cols&&(++d,f=0),{row:d,column:f}},f=e(b),g=e(c);if(!(!f||!g)){if(f.row>g.row||f.row===g.row&&f.column>=g.column)throw Error("invalid range");this._terminal.select(f.column,f.row,(g.row-f.row)*this._terminal.cols-f.column+g.column)}}_handleResize(a){this._rowElements[this._rowElements.length-1].removeEventListener("focus",this._bottomBoundaryFocusListener);for(let a=this._rowContainer.children.length;a<this._terminal.rows;a++)this._rowElements[a]=this._createAccessibilityTreeNode(),this._rowContainer.appendChild(this._rowElements[a]);for(;this._rowElements.length>a;)this._rowContainer.removeChild(this._rowElements.pop());this._rowElements[this._rowElements.length-1].addEventListener("focus",this._bottomBoundaryFocusListener),this._refreshRowsDimensions()}_createAccessibilityTreeNode(){let a=this._coreBrowserService.mainDocument.createElement("div");return a.setAttribute("role","listitem"),a.tabIndex=-1,this._refreshRowDimensions(a),a}_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 a=0;a<this._terminal.rows;a++)this._refreshRowDimensions(this._rowElements[a]),this._alignRowWidth(this._rowElements[a])}}_refreshRowDimensions(a){a.style.height=`${this._renderService.dimensions.css.cell.height}px`}_alignRowWidth(a){a.style.transform="";let b=a.getBoundingClientRect().width,c=this._rowColumns.get(a)?.slice(-1)?.[0];if(!c)return;let d=c*this._renderService.dimensions.css.cell.width;a.style.transform=`scaleX(${d/b})`}};e2=F([G(1,_),G(2,ah),G(3,aj)],e2);var e3=class extends aC{constructor(a,b,c,d,e){super(),this._element=a,this._mouseService=b,this._renderService=c,this._bufferService=d,this._linkProviderService=e,this._linkCacheDisposables=[],this._isMouseOut=!0,this._wasResized=!1,this._activeLine=-1,this._onShowLinkUnderline=this._register(new aV),this.onShowLinkUnderline=this._onShowLinkUnderline.event,this._onHideLinkUnderline=this._register(new aV),this.onHideLinkUnderline=this._onHideLinkUnderline.event,this._register(az(()=>{ay(this._linkCacheDisposables),this._linkCacheDisposables.length=0,this._lastMouseEvent=void 0,this._activeProviderReplies?.clear()})),this._register(this._bufferService.onResize(()=>{this._clearCurrentLink(),this._wasResized=!0})),this._register(bZ(this._element,"mouseleave",()=>{this._isMouseOut=!0,this._clearCurrentLink()})),this._register(bZ(this._element,"mousemove",this._handleMouseMove.bind(this))),this._register(bZ(this._element,"mousedown",this._handleMouseDown.bind(this))),this._register(bZ(this._element,"mouseup",this._handleMouseUp.bind(this)))}get currentLink(){return this._currentLink}_handleMouseMove(a){this._lastMouseEvent=a;let b=this._positionFromMouseEvent(a,this._element,this._mouseService);if(!b)return;this._isMouseOut=!1;let c=a.composedPath();for(let a=0;a<c.length;a++){let b=c[a];if(b.classList.contains("xterm"))break;if(b.classList.contains("xterm-hover"))return}this._lastBufferCell&&b.x===this._lastBufferCell.x&&b.y===this._lastBufferCell.y||(this._handleHover(b),this._lastBufferCell=b)}_handleHover(a){if(this._activeLine!==a.y||this._wasResized){this._clearCurrentLink(),this._askForLink(a,!1),this._wasResized=!1;return}this._currentLink&&this._linkAtPosition(this._currentLink.link,a)||(this._clearCurrentLink(),this._askForLink(a,!0))}_askForLink(a,b){this._activeProviderReplies&&b||(this._activeProviderReplies?.forEach(a=>{a?.forEach(a=>{a.link.dispose&&a.link.dispose()})}),this._activeProviderReplies=new Map,this._activeLine=a.y);let c=!1;for(let[d,e]of this._linkProviderService.linkProviders.entries())b?this._activeProviderReplies?.get(d)&&(c=this._checkLinkProviderResult(d,a,c)):e.provideLinks(a.y,b=>{if(this._isMouseOut)return;let e=b?.map(a=>({link:a}));this._activeProviderReplies?.set(d,e),c=this._checkLinkProviderResult(d,a,c),this._activeProviderReplies?.size===this._linkProviderService.linkProviders.length&&this._removeIntersectingLinks(a.y,this._activeProviderReplies)})}_removeIntersectingLinks(a,b){let c=new Set;for(let d=0;d<b.size;d++){let e=b.get(d);if(e)for(let b=0;b<e.length;b++){let d=e[b],f=d.link.range.start.y<a?0:d.link.range.start.x,g=d.link.range.end.y>a?this._bufferService.cols:d.link.range.end.x;for(let a=f;a<=g;a++){if(c.has(a)){e.splice(b--,1);break}c.add(a)}}}}_checkLinkProviderResult(a,b,c){if(!this._activeProviderReplies)return c;let d=this._activeProviderReplies.get(a),e=!1;for(let b=0;b<a;b++)(!this._activeProviderReplies.has(b)||this._activeProviderReplies.get(b))&&(e=!0);if(!e&&d){let a=d.find(a=>this._linkAtPosition(a.link,b));a&&(c=!0,this._handleNewLink(a))}if(this._activeProviderReplies.size===this._linkProviderService.linkProviders.length&&!c)for(let a=0;a<this._activeProviderReplies.size;a++){let d=this._activeProviderReplies.get(a)?.find(a=>this._linkAtPosition(a.link,b));if(d){c=!0,this._handleNewLink(d);break}}return c}_handleMouseDown(){this._mouseDownLink=this._currentLink}_handleMouseUp(a){var b,c;if(!this._currentLink)return;let d=this._positionFromMouseEvent(a,this._element,this._mouseService);d&&this._mouseDownLink&&(b=this._mouseDownLink.link,c=this._currentLink.link,b.text===c.text&&b.range.start.x===c.range.start.x&&b.range.start.y===c.range.start.y&&b.range.end.x===c.range.end.x&&b.range.end.y===c.range.end.y)&&this._linkAtPosition(this._currentLink.link,d)&&this._currentLink.link.activate(a,this._currentLink.link.text)}_clearCurrentLink(a,b){this._currentLink&&this._lastMouseEvent&&(!a||!b||this._currentLink.link.range.start.y>=a&&this._currentLink.link.range.end.y<=b)&&(this._linkLeave(this._element,this._currentLink.link,this._lastMouseEvent),this._currentLink=void 0,ay(this._linkCacheDisposables),this._linkCacheDisposables.length=0)}_handleNewLink(a){if(!this._lastMouseEvent)return;let b=this._positionFromMouseEvent(this._lastMouseEvent,this._element,this._mouseService);b&&this._linkAtPosition(a.link,b)&&(this._currentLink=a,this._currentLink.state={decorations:{underline:void 0===a.link.decorations||a.link.decorations.underline,pointerCursor:void 0===a.link.decorations||a.link.decorations.pointerCursor},isHovered:!0},this._linkHover(this._element,a.link,this._lastMouseEvent),a.link.decorations={},Object.defineProperties(a.link.decorations,{pointerCursor:{get:()=>this._currentLink?.state?.decorations.pointerCursor,set:a=>{this._currentLink?.state&&this._currentLink.state.decorations.pointerCursor!==a&&(this._currentLink.state.decorations.pointerCursor=a,this._currentLink.state.isHovered&&this._element.classList.toggle("xterm-cursor-pointer",a))}},underline:{get:()=>this._currentLink?.state?.decorations.underline,set:b=>{this._currentLink?.state&&this._currentLink?.state?.decorations.underline!==b&&(this._currentLink.state.decorations.underline=b,this._currentLink.state.isHovered&&this._fireUnderlineEvent(a.link,b))}}}),this._linkCacheDisposables.push(this._renderService.onRenderedViewportChange(a=>{if(!this._currentLink)return;let b=0===a.start?0:a.start+1+this._bufferService.buffer.ydisp,c=this._bufferService.buffer.ydisp+1+a.end;if(this._currentLink.link.range.start.y>=b&&this._currentLink.link.range.end.y<=c&&(this._clearCurrentLink(b,c),this._lastMouseEvent)){let a=this._positionFromMouseEvent(this._lastMouseEvent,this._element,this._mouseService);a&&this._askForLink(a,!1)}})))}_linkHover(a,b,c){this._currentLink?.state&&(this._currentLink.state.isHovered=!0,this._currentLink.state.decorations.underline&&this._fireUnderlineEvent(b,!0),this._currentLink.state.decorations.pointerCursor&&a.classList.add("xterm-cursor-pointer")),b.hover&&b.hover(c,b.text)}_fireUnderlineEvent(a,b){let c=a.range,d=this._bufferService.buffer.ydisp,e=this._createLinkUnderlineEvent(c.start.x-1,c.start.y-d-1,c.end.x,c.end.y-d-1,void 0);(b?this._onShowLinkUnderline:this._onHideLinkUnderline).fire(e)}_linkLeave(a,b,c){this._currentLink?.state&&(this._currentLink.state.isHovered=!1,this._currentLink.state.decorations.underline&&this._fireUnderlineEvent(b,!1),this._currentLink.state.decorations.pointerCursor&&a.classList.remove("xterm-cursor-pointer")),b.leave&&b.leave(c,b.text)}_linkAtPosition(a,b){let c=a.range.start.y*this._bufferService.cols+a.range.start.x,d=a.range.end.y*this._bufferService.cols+a.range.end.x,e=b.y*this._bufferService.cols+b.x;return c<=e&&e<=d}_positionFromMouseEvent(a,b,c){let d=c.getCoords(a,b,this._bufferService.cols,this._bufferService.rows);if(d)return{x:d[0],y:d[1]+this._bufferService.buffer.ydisp}}_createLinkUnderlineEvent(a,b,c,d,e){return{x1:a,y1:b,x2:c,y2:d,cols:this._bufferService.cols,fg:e}}};e3=F([G(1,ai),G(2,aj),G(3,X),G(4,an)],e3);var e4=class extends eV{constructor(a={}){super(a),this._linkifier=this._register(new aD),this.browser=dg,this._keyDownHandled=!1,this._keyDownSeen=!1,this._keyPressHandled=!1,this._unprocessedDeadKey=!1,this._accessibilityManager=this._register(new aD),this._onCursorMove=this._register(new aV),this.onCursorMove=this._onCursorMove.event,this._onKey=this._register(new aV),this.onKey=this._onKey.event,this._onRender=this._register(new aV),this.onRender=this._onRender.event,this._onSelectionChange=this._register(new aV),this.onSelectionChange=this._onSelectionChange.event,this._onTitleChange=this._register(new aV),this.onTitleChange=this._onTitleChange.event,this._onBell=this._register(new aV),this.onBell=this._onBell.event,this._onFocus=this._register(new aV),this._onBlur=this._register(new aV),this._onA11yCharEmitter=this._register(new aV),this._onA11yTabEmitter=this._register(new aV),this._onWillOpen=this._register(new aV),this._setup(),this._decorationService=this._instantiationService.createInstance(e_),this._instantiationService.setService(ae,this._decorationService),this._linkProviderService=this._instantiationService.createInstance(dc),this._instantiationService.setService(an,this._linkProviderService),this._linkProviderService.registerLinkProvider(this._instantiationService.createInstance(af)),this._register(this._inputHandler.onRequestBell(()=>this._onBell.fire())),this._register(this._inputHandler.onRequestRefreshRows(a=>this.refresh(a?.start??0,a?.end??this.rows-1))),this._register(this._inputHandler.onRequestSendFocus(()=>this._reportFocus())),this._register(this._inputHandler.onRequestReset(()=>this.reset())),this._register(this._inputHandler.onRequestWindowsOptionsReport(a=>this._reportWindowsOptions(a))),this._register(this._inputHandler.onColor(a=>this._handleColorEvent(a))),this._register(aO.forward(this._inputHandler.onCursorMove,this._onCursorMove)),this._register(aO.forward(this._inputHandler.onTitleChange,this._onTitleChange)),this._register(aO.forward(this._inputHandler.onA11yChar,this._onA11yCharEmitter)),this._register(aO.forward(this._inputHandler.onA11yTab,this._onA11yTabEmitter)),this._register(this._bufferService.onResize(a=>this._afterResize(a.cols,a.rows))),this._register(az(()=>{this._customKeyEventHandler=void 0,this.element?.parentNode?.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(a){if(this._themeService)for(let b of a){let a,c="";switch(b.index){case 256:a="foreground",c="10";break;case 257:a="background",c="11";break;case 258:a="cursor",c="12";break;default:a="ansi",c="4;"+b.index}switch(b.type){case 0:let d=em.toColorRGB("ansi"===a?this._themeService.colors.ansi[b.index]:this._themeService.colors[a]);this.coreService.triggerDataEvent(`${cB.ESC}]${c};${function(a,b=16){let[c,d,e]=a;return`rgb:${eL(c,b)}/${eL(d,b)}/${eL(e,b)}`}(d)}${cD.ST}`);break;case 1:if("ansi"===a)this._themeService.modifyColors(a=>a.ansi[b.index]=cE.toColor(...b.color));else{let c=a;this._themeService.modifyColors(a=>a[c]=cE.toColor(...b.color))}break;case 2:this._themeService.restoreColor(b.index)}}}_setup(){super._setup(),this._customKeyEventHandler=void 0}get buffer(){return this.buffers.active}focus(){this.textarea&&this.textarea.focus({preventScroll:!0})}_handleScreenReaderModeOptionChange(a){a?!this._accessibilityManager.value&&this._renderService&&(this._accessibilityManager.value=this._instantiationService.createInstance(e2,this)):this._accessibilityManager.clear()}_handleTextAreaFocus(a){this.coreService.decPrivateModes.sendFocus&&this.coreService.triggerDataEvent(cB.ESC+"[I"),this.element.classList.add("focus"),this._showCursor(),this._onFocus.fire()}blur(){return this.textarea?.blur()}_handleTextAreaBlur(){this.textarea.value="",this.refresh(this.buffer.y,this.buffer.y),this.coreService.decPrivateModes.sendFocus&&this.coreService.triggerDataEvent(cB.ESC+"[O"),this.element.classList.remove("focus"),this._onBlur.fire()}_syncTextArea(){if(!this.textarea||!this.buffer.isCursorInViewport||this._compositionHelper.isComposing||!this._renderService)return;let a=this.buffer.ybase+this.buffer.y,b=this.buffer.lines.get(a);if(!b)return;let c=Math.min(this.buffer.x,this.cols-1),d=this._renderService.dimensions.css.cell.height,e=b.getWidth(c),f=this._renderService.dimensions.css.cell.width*e,g=this.buffer.y*this._renderService.dimensions.css.cell.height,h=c*this._renderService.dimensions.css.cell.width;this.textarea.style.left=h+"px",this.textarea.style.top=g+"px",this.textarea.style.width=f+"px",this.textarea.style.height=d+"px",this.textarea.style.lineHeight=d+"px",this.textarea.style.zIndex="-5"}_initGlobal(){this._bindKeys(),this._register(bZ(this.element,"copy",a=>{var b;this.hasSelection()&&(b=this._selectionService,a.clipboardData&&a.clipboardData.setData("text/plain",b.selectionText),a.preventDefault())}));let a=a=>{var b,c,d;return b=this.textarea,c=this.coreService,d=this.optionsService,void(a.stopPropagation(),a.clipboardData&&J(a.clipboardData.getData("text/plain"),b,c,d))};this._register(bZ(this.textarea,"paste",a)),this._register(bZ(this.element,"paste",a)),dm?this._register(bZ(this.element,"mousedown",a=>{2===a.button&&L(a,this.textarea,this.screenElement,this._selectionService,this.options.rightClickSelectsWord)})):this._register(bZ(this.element,"contextmenu",a=>{L(a,this.textarea,this.screenElement,this._selectionService,this.options.rightClickSelectsWord)})),dv&&this._register(bZ(this.element,"auxclick",a=>{1===a.button&&K(a,this.textarea,this.screenElement)}))}_bindKeys(){this._register(bZ(this.textarea,"keyup",a=>this._keyUp(a),!0)),this._register(bZ(this.textarea,"keydown",a=>this._keyDown(a),!0)),this._register(bZ(this.textarea,"keypress",a=>this._keyPress(a),!0)),this._register(bZ(this.textarea,"compositionstart",()=>this._compositionHelper.compositionstart())),this._register(bZ(this.textarea,"compositionupdate",a=>this._compositionHelper.compositionupdate(a))),this._register(bZ(this.textarea,"compositionend",()=>this._compositionHelper.compositionend())),this._register(bZ(this.textarea,"input",a=>this._inputEvent(a),!0)),this._register(this.onRender(()=>this._compositionHelper.updateCompositionElements()))}open(a){if(!a)throw Error("Terminal requires a parent element.");if(a.isConnected||this._logService.debug("Terminal.open was called on an element that was not attached to the DOM"),this.element?.ownerDocument.defaultView&&this._coreBrowserService){this.element.ownerDocument.defaultView!==this._coreBrowserService.window&&(this._coreBrowserService.window=this.element.ownerDocument.defaultView);return}this._document=a.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"),a.appendChild(this.element);let b=this._document.createDocumentFragment();this._viewportElement=this._document.createElement("div"),this._viewportElement.classList.add("xterm-viewport"),b.appendChild(this._viewportElement),this.screenElement=this._document.createElement("div"),this.screenElement.classList.add("xterm-screen"),this._register(bZ(this.screenElement,"mousemove",a=>this.updateCursorStyle(a))),this._helperContainer=this._document.createElement("div"),this._helperContainer.classList.add("xterm-helpers"),this.screenElement.appendChild(this._helperContainer),b.appendChild(this.screenElement);let c=this.textarea=this._document.createElement("textarea");this.textarea.classList.add("xterm-helper-textarea"),this.textarea.setAttribute("aria-label",H),dw||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",()=>c.readOnly=this.optionsService.rawOptions.disableStdin)),this.textarea.readOnly=this.optionsService.rawOptions.disableStdin,this._coreBrowserService=this._register(this._instantiationService.createInstance(da,this.textarea,a.ownerDocument.defaultView??window,this._document?window.document:null)),this._instantiationService.setService(ah,this._coreBrowserService),this._register(bZ(this.textarea,"focus",a=>this._handleTextAreaFocus(a))),this._register(bZ(this.textarea,"blur",()=>this._handleTextAreaBlur())),this._helperContainer.appendChild(this.textarea),this._charSizeService=this._instantiationService.createInstance(c6,this._document,this._helperContainer),this._instantiationService.setService(ag,this._charSizeService),this._themeService=this._instantiationService.createInstance(dU),this._instantiationService.setService(am,this._themeService),this._characterJoinerService=this._instantiationService.createInstance(cU),this._instantiationService.setService(al,this._characterJoinerService),this._renderService=this._register(this._instantiationService.createInstance(dC,this.rows,this.screenElement)),this._instantiationService.setService(aj,this._renderService),this._register(this._renderService.onRenderedViewportChange(a=>this._onRender.fire(a))),this.onResize(a=>this._renderService.resize(a.cols,a.rows)),this._compositionView=this._document.createElement("div"),this._compositionView.classList.add("composition-view"),this._compositionHelper=this._instantiationService.createInstance(cv,this.textarea,this._compositionView),this._helperContainer.appendChild(this._compositionView),this._mouseService=this._instantiationService.createInstance(de),this._instantiationService.setService(ai,this._mouseService);let d=this._linkifier.value=this._register(this._instantiationService.createInstance(e3,this.screenElement));this.element.appendChild(b);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(co,this.element,this.screenElement)),this._register(this._viewport.onRequestScrollLines(a=>{super.scrollLines(a,!1),this.refresh(0,this.rows-1)})),this._selectionService=this._register(this._instantiationService.createInstance(dM,this.element,this.screenElement,d)),this._instantiationService.setService(ak,this._selectionService),this._register(this._selectionService.onRequestScrollLines(a=>this.scrollLines(a.amount,a.suppressScrollEvent))),this._register(this._selectionService.onSelectionChange(()=>this._onSelectionChange.fire())),this._register(this._selectionService.onRequestRedraw(a=>this._renderService.handleSelectionChanged(a.start,a.end,a.columnSelectMode))),this._register(this._selectionService.onLinuxMouseSelection(a=>{this.textarea.value=a,this.textarea.focus(),this.textarea.select()})),this._register(aO.any(this._onScroll.event,this._inputHandler.onScroll)(()=>{this._selectionService.refresh(),this._viewport?.queueSync()})),this._register(this._instantiationService.createInstance(cp,this.screenElement)),this._register(bZ(this.element,"mousedown",a=>this._selectionService.handleMouseDown(a))),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(e2,this)),this._register(this.optionsService.onSpecificOptionChange("screenReaderMode",a=>this._handleScreenReaderModeOptionChange(a))),this.options.overviewRuler.width&&(this._overviewRulerRenderer=this._register(this._instantiationService.createInstance(cu,this._viewportElement,this.screenElement))),this.optionsService.onSpecificOptionChange("overviewRuler",a=>{!this._overviewRulerRenderer&&a&&this._viewportElement&&this.screenElement&&(this._overviewRulerRenderer=this._register(this._instantiationService.createInstance(cu,this._viewportElement,this.screenElement)))}),this._charSizeService.measure(),this.refresh(0,this.rows-1),this._initGlobal(),this.bindMouse()}_createRenderer(){return this._instantiationService.createInstance(c5,this,this._document,this.element,this.screenElement,this._viewportElement,this._helperContainer,this.linkifier)}bindMouse(){let a=this,b=this.element;function c(b){let c,d,e=a._mouseService.getMouseReportCoords(b,a.screenElement);if(!e)return!1;switch(b.overrideType||b.type){case"mousemove":d=32,void 0===b.buttons?(c=3,void 0!==b.button&&(c=b.button<3?b.button:3)):c=1&b.buttons?0:4&b.buttons?1:2&b.buttons?2:3;break;case"mouseup":d=0,c=b.button<3?b.button:3;break;case"mousedown":d=1,c=b.button<3?b.button:3;break;case"wheel":if(a._customWheelEventHandler&&!1===a._customWheelEventHandler(b))return!1;let f=b.deltaY;if(0===f||0===a.coreMouseService.consumeWheelEvent(b,a._renderService?.dimensions?.device?.cell?.height,a._coreBrowserService?.dpr))return!1;d=f<0?0:1,c=4;break;default:return!1}return void 0!==d&&void 0!==c&&!(c>4)&&a.coreMouseService.triggerMouseEvent({col:e.col,row:e.row,x:e.x,y:e.y,button:c,action:d,ctrl:b.ctrlKey,alt:b.altKey,shift:b.shiftKey})}let d={mouseup:null,wheel:null,mousedrag:null,mousemove:null},e=a=>(c(a),a.buttons||(this._document.removeEventListener("mouseup",d.mouseup),d.mousedrag&&this._document.removeEventListener("mousemove",d.mousedrag)),this.cancel(a)),f=a=>(c(a),this.cancel(a,!0)),g=a=>{a.buttons&&c(a)},h=a=>{a.buttons||c(a)};this._register(this.coreMouseService.onProtocolChange(a=>{a?("debug"===this.optionsService.rawOptions.logLevel&&this._logService.debug("Binding to mouse events:",this.coreMouseService.explainEvents(a)),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()),8&a?d.mousemove||(b.addEventListener("mousemove",h),d.mousemove=h):(b.removeEventListener("mousemove",d.mousemove),d.mousemove=null),16&a?d.wheel||(b.addEventListener("wheel",f,{passive:!1}),d.wheel=f):(b.removeEventListener("wheel",d.wheel),d.wheel=null),2&a?d.mouseup||(d.mouseup=e):(this._document.removeEventListener("mouseup",d.mouseup),d.mouseup=null),4&a?d.mousedrag||(d.mousedrag=g):(this._document.removeEventListener("mousemove",d.mousedrag),d.mousedrag=null)})),this.coreMouseService.activeProtocol=this.coreMouseService.activeProtocol,this._register(bZ(b,"mousedown",a=>{if(a.preventDefault(),this.focus(),!(!this.coreMouseService.areMouseEventsActive||this._selectionService.shouldForceSelection(a)))return c(a),d.mouseup&&this._document.addEventListener("mouseup",d.mouseup),d.mousedrag&&this._document.addEventListener("mousemove",d.mousedrag),this.cancel(a)})),this._register(bZ(b,"wheel",b=>{if(!d.wheel){if(this._customWheelEventHandler&&!1===this._customWheelEventHandler(b))return!1;if(!this.buffer.hasScrollback){if(0===b.deltaY)return!1;if(0===a.coreMouseService.consumeWheelEvent(b,a._renderService?.dimensions?.device?.cell?.height,a._coreBrowserService?.dpr))return this.cancel(b,!0);let c=cB.ESC+(this.coreService.decPrivateModes.applicationCursorKeys?"O":"[")+(b.deltaY<0?"A":"B");return this.coreService.triggerDataEvent(c,!0),this.cancel(b,!0)}}},{passive:!1}))}refresh(a,b){this._renderService?.refreshRows(a,b)}updateCursorStyle(a){this._selectionService?.shouldColumnSelect(a)?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(a,b){this._viewport?this._viewport.scrollLines(a):super.scrollLines(a,b),this.refresh(0,this.rows-1)}scrollPages(a){this.scrollLines(a*(this.rows-1))}scrollToTop(){this.scrollLines(-this._bufferService.buffer.ydisp)}scrollToBottom(a){a&&this._viewport?this._viewport.scrollToLine(this.buffer.ybase,!0):this.scrollLines(this._bufferService.buffer.ybase-this._bufferService.buffer.ydisp)}scrollToLine(a){let b=a-this._bufferService.buffer.ydisp;0!==b&&this.scrollLines(b)}paste(a){J(a,this.textarea,this.coreService,this.optionsService)}attachCustomKeyEventHandler(a){this._customKeyEventHandler=a}attachCustomWheelEventHandler(a){this._customWheelEventHandler=a}registerLinkProvider(a){return this._linkProviderService.registerLinkProvider(a)}registerCharacterJoiner(a){if(!this._characterJoinerService)throw Error("Terminal must be opened first");let b=this._characterJoinerService.register(a);return this.refresh(0,this.rows-1),b}deregisterCharacterJoiner(a){if(!this._characterJoinerService)throw Error("Terminal must be opened first");this._characterJoinerService.deregister(a)&&this.refresh(0,this.rows-1)}get markers(){return this.buffer.markers}registerMarker(a){return this.buffer.addMarker(this.buffer.ybase+this.buffer.y+a)}registerDecoration(a){return this._decorationService.registerDecoration(a)}hasSelection(){return!!this._selectionService&&this._selectionService.hasSelection}select(a,b,c){this._selectionService.setSelection(a,b,c)}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(){this._selectionService?.clearSelection()}selectAll(){this._selectionService?.selectAll()}selectLines(a,b){this._selectionService?.selectLines(a,b)}_keyDown(a){if(this._keyDownHandled=!1,this._keyDownSeen=!0,this._customKeyEventHandler&&!1===this._customKeyEventHandler(a))return!1;let b=this.browser.isMac&&this.options.macOptionIsMeta&&a.altKey;if(!b&&!this._compositionHelper.keydown(a))return this.options.scrollOnUserInput&&this.buffer.ybase!==this.buffer.ydisp&&this.scrollToBottom(!0),!1;b||"Dead"!==a.key&&"AltGraph"!==a.key||(this._unprocessedDeadKey=!0);let c=function(a,b,c,d){let e={type:0,cancel:!1,key:void 0},f=!!a.shiftKey|2*!!a.altKey|4*!!a.ctrlKey|8*!!a.metaKey;switch(a.keyCode){case 0:"UIKeyInputUpArrow"===a.key?b?e.key=cB.ESC+"OA":e.key=cB.ESC+"[A":"UIKeyInputLeftArrow"===a.key?b?e.key=cB.ESC+"OD":e.key=cB.ESC+"[D":"UIKeyInputRightArrow"===a.key?b?e.key=cB.ESC+"OC":e.key=cB.ESC+"[C":"UIKeyInputDownArrow"===a.key&&(b?e.key=cB.ESC+"OB":e.key=cB.ESC+"[B");break;case 8:e.key=a.ctrlKey?"\b":cB.DEL,a.altKey&&(e.key=cB.ESC+e.key);break;case 9:if(a.shiftKey){e.key=cB.ESC+"[Z";break}e.key=cB.HT,e.cancel=!0;break;case 13:e.key=a.altKey?cB.ESC+cB.CR:cB.CR,e.cancel=!0;break;case 27:e.key=cB.ESC,a.altKey&&(e.key=cB.ESC+cB.ESC),e.cancel=!0;break;case 37:if(a.metaKey)break;f?e.key=cB.ESC+"[1;"+(f+1)+"D":b?e.key=cB.ESC+"OD":e.key=cB.ESC+"[D";break;case 39:if(a.metaKey)break;f?e.key=cB.ESC+"[1;"+(f+1)+"C":b?e.key=cB.ESC+"OC":e.key=cB.ESC+"[C";break;case 38:if(a.metaKey)break;f?e.key=cB.ESC+"[1;"+(f+1)+"A":b?e.key=cB.ESC+"OA":e.key=cB.ESC+"[A";break;case 40:if(a.metaKey)break;f?e.key=cB.ESC+"[1;"+(f+1)+"B":b?e.key=cB.ESC+"OB":e.key=cB.ESC+"[B";break;case 45:a.shiftKey||a.ctrlKey||(e.key=cB.ESC+"[2~");break;case 46:f?e.key=cB.ESC+"[3;"+(f+1)+"~":e.key=cB.ESC+"[3~";break;case 36:f?e.key=cB.ESC+"[1;"+(f+1)+"H":b?e.key=cB.ESC+"OH":e.key=cB.ESC+"[H";break;case 35:f?e.key=cB.ESC+"[1;"+(f+1)+"F":b?e.key=cB.ESC+"OF":e.key=cB.ESC+"[F";break;case 33:a.shiftKey?e.type=2:a.ctrlKey?e.key=cB.ESC+"[5;"+(f+1)+"~":e.key=cB.ESC+"[5~";break;case 34:a.shiftKey?e.type=3:a.ctrlKey?e.key=cB.ESC+"[6;"+(f+1)+"~":e.key=cB.ESC+"[6~";break;case 112:f?e.key=cB.ESC+"[1;"+(f+1)+"P":e.key=cB.ESC+"OP";break;case 113:f?e.key=cB.ESC+"[1;"+(f+1)+"Q":e.key=cB.ESC+"OQ";break;case 114:f?e.key=cB.ESC+"[1;"+(f+1)+"R":e.key=cB.ESC+"OR";break;case 115:f?e.key=cB.ESC+"[1;"+(f+1)+"S":e.key=cB.ESC+"OS";break;case 116:f?e.key=cB.ESC+"[15;"+(f+1)+"~":e.key=cB.ESC+"[15~";break;case 117:f?e.key=cB.ESC+"[17;"+(f+1)+"~":e.key=cB.ESC+"[17~";break;case 118:f?e.key=cB.ESC+"[18;"+(f+1)+"~":e.key=cB.ESC+"[18~";break;case 119:f?e.key=cB.ESC+"[19;"+(f+1)+"~":e.key=cB.ESC+"[19~";break;case 120:f?e.key=cB.ESC+"[20;"+(f+1)+"~":e.key=cB.ESC+"[20~";break;case 121:f?e.key=cB.ESC+"[21;"+(f+1)+"~":e.key=cB.ESC+"[21~";break;case 122:f?e.key=cB.ESC+"[23;"+(f+1)+"~":e.key=cB.ESC+"[23~";break;case 123:f?e.key=cB.ESC+"[24;"+(f+1)+"~":e.key=cB.ESC+"[24~";break;default:if(!a.ctrlKey||a.shiftKey||a.altKey||a.metaKey)if((!c||d)&&a.altKey&&!a.metaKey){let b=eW[a.keyCode]?.[+!!a.shiftKey];if(b)e.key=cB.ESC+b;else if(a.keyCode>=65&&a.keyCode<=90){let b=String.fromCharCode(a.ctrlKey?a.keyCode-64:a.keyCode+32);a.shiftKey&&(b=b.toUpperCase()),e.key=cB.ESC+b}else if(32===a.keyCode)e.key=cB.ESC+(a.ctrlKey?cB.NUL:" ");else if("Dead"===a.key&&a.code.startsWith("Key")){let b=a.code.slice(3,4);a.shiftKey||(b=b.toLowerCase()),e.key=cB.ESC+b,e.cancel=!0}}else!c||a.altKey||a.ctrlKey||a.shiftKey||!a.metaKey?!a.key||a.ctrlKey||a.altKey||a.metaKey||!(a.keyCode>=48)||1!==a.key.length?a.key&&a.ctrlKey&&("_"===a.key&&(e.key=cB.US),"@"===a.key&&(e.key=cB.NUL)):e.key=a.key:65===a.keyCode&&(e.type=1);else a.keyCode>=65&&a.keyCode<=90?e.key=String.fromCharCode(a.keyCode-64):32===a.keyCode?e.key=cB.NUL:a.keyCode>=51&&a.keyCode<=55?e.key=String.fromCharCode(a.keyCode-51+27):56===a.keyCode?e.key=cB.DEL:219===a.keyCode?e.key=cB.ESC:220===a.keyCode?e.key=cB.FS:221===a.keyCode&&(e.key=cB.GS)}return e}(a,this.coreService.decPrivateModes.applicationCursorKeys,this.browser.isMac,this.options.macOptionIsMeta);if(this.updateCursorStyle(a),3===c.type||2===c.type){let b=this.rows-1;return this.scrollLines(2===c.type?-b:b),this.cancel(a,!0)}return 1===c.type&&this.selectAll(),!!(this._isThirdLevelShift(this.browser,a)||(c.cancel&&this.cancel(a,!0),!c.key)||a.key&&!a.ctrlKey&&!a.altKey&&!a.metaKey&&1===a.key.length&&a.key.charCodeAt(0)>=65&&90>=a.key.charCodeAt(0))||(this._unprocessedDeadKey?(this._unprocessedDeadKey=!1,!0):((c.key===cB.ETX||c.key===cB.CR)&&(this.textarea.value=""),this._onKey.fire({key:c.key,domEvent:a}),this._showCursor(),this.coreService.triggerDataEvent(c.key,!0),!this.optionsService.rawOptions.screenReaderMode||a.altKey||a.ctrlKey)?this.cancel(a,!0):void(this._keyDownHandled=!0))}_isThirdLevelShift(a,b){let c=a.isMac&&!this.options.macOptionIsMeta&&b.altKey&&!b.ctrlKey&&!b.metaKey||a.isWindows&&b.altKey&&b.ctrlKey&&!b.metaKey||a.isWindows&&b.getModifierState("AltGraph");return"keypress"===b.type?c:c&&(!b.keyCode||b.keyCode>47)}_keyUp(a){var b;this._keyDownSeen=!1,this._customKeyEventHandler&&!1===this._customKeyEventHandler(a)||(16===(b=a).keyCode||17===b.keyCode||18===b.keyCode||this.focus(),this.updateCursorStyle(a),this._keyPressHandled=!1)}_keyPress(a){let b;if(this._keyPressHandled=!1,this._keyDownHandled||this._customKeyEventHandler&&!1===this._customKeyEventHandler(a))return!1;if(this.cancel(a),a.charCode)b=a.charCode;else if(null===a.which||void 0===a.which)b=a.keyCode;else{if(0===a.which||0===a.charCode)return!1;b=a.which}return!!b&&(!a.altKey&&!a.ctrlKey&&!a.metaKey||!!this._isThirdLevelShift(this.browser,a))&&(b=String.fromCharCode(b),this._onKey.fire({key:b,domEvent:a}),this._showCursor(),this.coreService.triggerDataEvent(b,!0),this._keyPressHandled=!0,this._unprocessedDeadKey=!1,!0)}_inputEvent(a){if(a.data&&"insertText"===a.inputType&&(!a.composed||!this._keyDownSeen)&&!this.optionsService.rawOptions.screenReaderMode){if(this._keyPressHandled)return!1;this._unprocessedDeadKey=!1;let b=a.data;return this.coreService.triggerDataEvent(b,!0),this.cancel(a),!0}return!1}resize(a,b){if(a===this.cols&&b===this.rows){this._charSizeService&&!this._charSizeService.hasValidSize&&this._charSizeService.measure();return}super.resize(a,b)}_afterResize(a,b){this._charSizeService?.measure()}clear(){if(0!==this.buffer.ybase||0!==this.buffer.y){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 a=1;a<this.rows;a++)this.buffer.lines.push(this.buffer.getBlankLine(d_));this._onScroll.fire({position:this.buffer.ydisp}),this.refresh(0,this.rows-1)}}reset(){this.options.rows=this.rows,this.options.cols=this.cols;let a=this._customKeyEventHandler;this._setup(),super.reset(),this._selectionService?.reset(),this._decorationService.reset(),this._customKeyEventHandler=a,this.refresh(0,this.rows-1)}clearTextureAtlas(){this._renderService?.clearTextureAtlas()}_reportFocus(){this.element?.classList.contains("focus")?this.coreService.triggerDataEvent(cB.ESC+"[I"):this.coreService.triggerDataEvent(cB.ESC+"[O")}_reportWindowsOptions(a){if(this._renderService)switch(a){case 0:let b=this._renderService.dimensions.css.canvas.width.toFixed(0),c=this._renderService.dimensions.css.canvas.height.toFixed(0);this.coreService.triggerDataEvent(`${cB.ESC}[4;${c};${b}t`);break;case 1:let d=this._renderService.dimensions.css.cell.width.toFixed(0),e=this._renderService.dimensions.css.cell.height.toFixed(0);this.coreService.triggerDataEvent(`${cB.ESC}[6;${e};${d}t`)}}cancel(a,b){if(!(!this.options.cancelEvents&&!b))return a.preventDefault(),a.stopPropagation(),!1}},e5=class{constructor(){this._addons=[]}dispose(){for(let a=this._addons.length-1;a>=0;a--)this._addons[a].instance.dispose()}loadAddon(a,b){let c={instance:b,dispose:b.dispose,isDisposed:!1};this._addons.push(c),b.dispose=()=>this._wrappedAddonDispose(c),b.activate(a)}_wrappedAddonDispose(a){if(a.isDisposed)return;let b=-1;for(let c=0;c<this._addons.length;c++)if(this._addons[c]===a){b=c;break}if(-1===b)throw Error("Could not dispose an addon that has not been loaded");a.isDisposed=!0,a.dispose.apply(a.instance),this._addons.splice(b,1)}},e6=class{constructor(a){this._line=a}get isWrapped(){return this._line.isWrapped}get length(){return this._line.length}getCell(a,b){if(!(a<0||a>=this._line.length))return b?(this._line.loadCell(a,b),b):this._line.loadCell(a,new S)}translateToString(a,b,c){return this._line.translateToString(a,b,c)}},e7=class{constructor(a,b){this._buffer=a,this.type=b}init(a){return this._buffer=a,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(a){let b=this._buffer.lines.get(a);if(b)return new e6(b)}getNullCell(){return new S}},e8=class extends aC{constructor(a){super(),this._core=a,this._onBufferChange=this._register(new aV),this.onBufferChange=this._onBufferChange.event,this._normal=new e7(this._core.buffers.normal,"normal"),this._alternate=new e7(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 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)}},e9=class{constructor(a){this._core=a}registerCsiHandler(a,b){return this._core.registerCsiHandler(a,a=>b(a.toArray()))}addCsiHandler(a,b){return this.registerCsiHandler(a,b)}registerDcsHandler(a,b){return this._core.registerDcsHandler(a,(a,c)=>b(a,c.toArray()))}addDcsHandler(a,b){return this.registerDcsHandler(a,b)}registerEscHandler(a,b){return this._core.registerEscHandler(a,b)}addEscHandler(a,b){return this.registerEscHandler(a,b)}registerOscHandler(a,b){return this._core.registerOscHandler(a,b)}addOscHandler(a,b){return this.registerOscHandler(a,b)}},fa=class{constructor(a){this._core=a}register(a){this._core.unicodeService.register(a)}get versions(){return this._core.unicodeService.versions}get activeVersion(){return this._core.unicodeService.activeVersion}set activeVersion(a){this._core.unicodeService.activeVersion=a}},fb=["cols","rows"],fc=0,fd=class extends aC{constructor(a){super(),this._core=this._register(new e4(a)),this._addonManager=this._register(new e5),this._publicOptions={...this._core.options};let b=a=>this._core.options[a],c=(a,b)=>{this._checkReadonlyOptions(a),this._core.options[a]=b};for(let a in this._core.options){let d={get:b.bind(this,a),set:c.bind(this,a)};Object.defineProperty(this._publicOptions,a,d)}}_checkReadonlyOptions(a){if(fb.includes(a))throw Error(`Option "${a}" can only be set in the constructor`)}_checkProposedApi(){if(!this._core.optionsService.rawOptions.allowProposedApi)throw 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 e9(this._core)),this._parser}get unicode(){return this._checkProposedApi(),new fa(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 e8(this._core))),this._buffer}get markers(){return this._checkProposedApi(),this._core.markers}get modes(){let a=this._core.coreService.decPrivateModes,b="none";switch(this._core.coreMouseService.activeProtocol){case"X10":b="x10";break;case"VT200":b="vt200";break;case"DRAG":b="drag";break;case"ANY":b="any"}return{applicationCursorKeysMode:a.applicationCursorKeys,applicationKeypadMode:a.applicationKeypad,bracketedPasteMode:a.bracketedPasteMode,insertMode:this._core.coreService.modes.insertMode,mouseTrackingMode:b,originMode:a.origin,reverseWraparoundMode:a.reverseWraparound,sendFocusMode:a.sendFocus,synchronizedOutputMode:a.synchronizedOutput,wraparoundMode:a.wraparound}}get options(){return this._publicOptions}set options(a){for(let b in a)this._publicOptions[b]=a[b]}blur(){this._core.blur()}focus(){this._core.focus()}input(a,b=!0){this._core.input(a,b)}resize(a,b){this._verifyIntegers(a,b),this._core.resize(a,b)}open(a){this._core.open(a)}attachCustomKeyEventHandler(a){this._core.attachCustomKeyEventHandler(a)}attachCustomWheelEventHandler(a){this._core.attachCustomWheelEventHandler(a)}registerLinkProvider(a){return this._core.registerLinkProvider(a)}registerCharacterJoiner(a){return this._checkProposedApi(),this._core.registerCharacterJoiner(a)}deregisterCharacterJoiner(a){this._checkProposedApi(),this._core.deregisterCharacterJoiner(a)}registerMarker(a=0){return this._verifyIntegers(a),this._core.registerMarker(a)}registerDecoration(a){return this._checkProposedApi(),this._verifyPositiveIntegers(a.x??0,a.width??0,a.height??0),this._core.registerDecoration(a)}hasSelection(){return this._core.hasSelection()}select(a,b,c){this._verifyIntegers(a,b,c),this._core.select(a,b,c)}getSelection(){return this._core.getSelection()}getSelectionPosition(){return this._core.getSelectionPosition()}clearSelection(){this._core.clearSelection()}selectAll(){this._core.selectAll()}selectLines(a,b){this._verifyIntegers(a,b),this._core.selectLines(a,b)}dispose(){super.dispose()}scrollLines(a){this._verifyIntegers(a),this._core.scrollLines(a)}scrollPages(a){this._verifyIntegers(a),this._core.scrollPages(a)}scrollToTop(){this._core.scrollToTop()}scrollToBottom(){this._core.scrollToBottom()}scrollToLine(a){this._verifyIntegers(a),this._core.scrollToLine(a)}clear(){this._core.clear()}write(a,b){this._core.write(a,b)}writeln(a,b){this._core.write(a),this._core.write(`\r
|
|
31
|
-
`,b)}paste(a){this._core.paste(a)}refresh(a,b){this._verifyIntegers(a,b),this._core.refresh(a,b)}reset(){this._core.reset()}clearTextureAtlas(){this._core.clearTextureAtlas()}loadAddon(a){this._addonManager.loadAddon(this,a)}static get strings(){return{get promptLabel(){return H},set promptLabel(t){H=t},get tooMuchOutput(){return I},set tooMuchOutput(t){I=t}}}_verifyIntegers(...a){for(fc of a)if(fc===1/0||isNaN(fc)||fc%1!=0)throw Error("This API only accepts integers")}_verifyPositiveIntegers(...a){for(fc of a)if(fc&&(fc===1/0||isNaN(fc)||fc%1!=0||fc<0))throw Error("This API only accepts positive integers")}};a.s(["Terminal",0,fd],10450);var fe=class{activate(a){this._terminal=a}dispose(){}fit(){let a=this.proposeDimensions();if(!a||!this._terminal||isNaN(a.cols)||isNaN(a.rows))return;let b=this._terminal._core;(this._terminal.rows!==a.rows||this._terminal.cols!==a.cols)&&(b._renderService.clear(),this._terminal.resize(a.cols,a.rows))}proposeDimensions(){if(!this._terminal||!this._terminal.element||!this._terminal.element.parentElement)return;let a=this._terminal._core._renderService.dimensions;if(0===a.css.cell.width||0===a.css.cell.height)return;let b=0===this._terminal.options.scrollback?0:this._terminal.options.overviewRuler?.width||14,c=window.getComputedStyle(this._terminal.element.parentElement),d=parseInt(c.getPropertyValue("height")),e=Math.max(0,parseInt(c.getPropertyValue("width"))),f=window.getComputedStyle(this._terminal.element),g={top:parseInt(f.getPropertyValue("padding-top")),bottom:parseInt(f.getPropertyValue("padding-bottom")),right:parseInt(f.getPropertyValue("padding-right")),left:parseInt(f.getPropertyValue("padding-left"))},h=g.top+g.bottom;return{cols:Math.max(2,Math.floor((e-(g.right+g.left)-b)/a.css.cell.width)),rows:Math.max(1,Math.floor((d-h)/a.css.cell.height))}}};a.s(["FitAddon",0,fe],99813)},22734,(a,b,c)=>{b.exports=a.x("fs",()=>require("fs"))},92509,(a,b,c)=>{b.exports=a.x("url",()=>require("url"))},33405,(a,b,c)=>{b.exports=a.x("child_process",()=>require("child_process"))},21517,(a,b,c)=>{b.exports=a.x("http",()=>require("http"))},24836,(a,b,c)=>{b.exports=a.x("https",()=>require("https"))},63047,(a,b,c)=>{var d=a.r(22734),e=a.r(92509),f=a.r(33405).spawn;function g(b){"use strict";b=b||{};var c,g,h=this,i=a.r(21517),j=a.r(24836),k={},l=!1,m={"User-Agent":"node-XMLHttpRequest",Accept:"*/*"},n=Object.assign({},m),o=["accept-charset","accept-encoding","access-control-request-headers","access-control-request-method","connection","content-length","content-transfer-encoding","cookie","cookie2","date","expect","host","keep-alive","origin","referer","te","trailer","transfer-encoding","upgrade","via"],p=["TRACE","TRACK","CONNECT"],q=!1,r=!1,s=!1,u={};this.UNSENT=0,this.OPENED=1,this.HEADERS_RECEIVED=2,this.LOADING=3,this.DONE=4,this.readyState=this.UNSENT,this.onreadystatechange=null,this.responseText="",this.responseXML="",this.response=Buffer.alloc(0),this.status=null,this.statusText=null,this.open=function(a,b,c,d,e){if(this.abort(),r=!1,s=!1,!(a&&-1===p.indexOf(a)))throw Error("SecurityError: Request method not allowed");k={method:a,url:b.toString(),async:"boolean"!=typeof c||c,user:d||null,password:e||null},v(this.OPENED)},this.setDisableHeaderCheck=function(a){l=a},this.setRequestHeader=function(a,b){if(this.readyState!=this.OPENED)throw Error("INVALID_STATE_ERR: setRequestHeader can only be called when state is OPEN");if(!l&&(!a||-1!==o.indexOf(a.toLowerCase())))return console.warn('Refused to set unsafe header "'+a+'"'),!1;if(q)throw Error("INVALID_STATE_ERR: send flag is true");return n[a]=b,!0},this.getResponseHeader=function(a){return"string"==typeof a&&this.readyState>this.OPENED&&g.headers[a.toLowerCase()]&&!r?g.headers[a.toLowerCase()]:null},this.getAllResponseHeaders=function(){if(this.readyState<this.HEADERS_RECEIVED||r)return"";var a="";for(var b in g.headers)"set-cookie"!==b&&"set-cookie2"!==b&&(a+=b+": "+g.headers[b]+"\r\n");return a.substr(0,a.length-2)},this.getRequestHeader=function(a){return"string"==typeof a&&n[a]?n[a]:""},this.send=function(a){if(this.readyState!=this.OPENED)throw Error("INVALID_STATE_ERR: connection must be opened before send() is called");if(q)throw Error("INVALID_STATE_ERR: send has already been called");var l,m=!1,o=!1,p=e.parse(k.url);switch(p.protocol){case"https:":m=!0;case"http:":l=p.hostname;break;case"file:":o=!0;break;case void 0:case"":l="localhost";break;default:throw Error("Protocol not supported.")}if(o){if("GET"!==k.method)throw Error("XMLHttpRequest: Only GET method is supported");if(k.async)d.readFile(unescape(p.pathname),function(a,b){a?h.handleError(a,a.errno||-1):(h.status=200,h.responseText=b.toString("utf8"),h.response=b,v(h.DONE))});else try{this.response=d.readFileSync(unescape(p.pathname)),this.responseText=this.response.toString("utf8"),this.status=200,v(h.DONE)}catch(a){this.handleError(a,a.errno||-1)}return}var s=p.port||(m?443:80),u=p.pathname+(p.search?p.search:"");if(n.Host=l,m&&443===s||80===s||(n.Host+=":"+p.port),k.user){void 0===k.password&&(k.password="");var w=new Buffer(k.user+":"+k.password);n.Authorization="Basic "+w.toString("base64")}"GET"===k.method||"HEAD"===k.method?a=null:a?(n["Content-Length"]=Buffer.isBuffer(a)?a.length:Buffer.byteLength(a),Object.keys(n).some(function(a){return"content-type"===a.toLowerCase()})||(n["Content-Type"]="text/plain;charset=UTF-8")):"POST"===k.method&&(n["Content-Length"]=0);var x=b.agent||!1,y={host:l,port:s,path:u,method:k.method,headers:n,agent:x};if(m&&(y.pfx=b.pfx,y.key=b.key,y.passphrase=b.passphrase,y.cert=b.cert,y.ca=b.ca,y.ciphers=b.ciphers,y.rejectUnauthorized=!1!==b.rejectUnauthorized),r=!1,k.async){var z=m?j.request:i.request;q=!0,h.dispatchEvent("readystatechange");var A=function(a){if(302===(g=a).statusCode||303===g.statusCode||307===g.statusCode){k.url=g.headers.location;var d=e.parse(k.url);l=d.hostname;var f={hostname:d.hostname,port:d.port,path:d.path,method:303===g.statusCode?"GET":k.method,headers:n};m&&(f.pfx=b.pfx,f.key=b.key,f.passphrase=b.passphrase,f.cert=b.cert,f.ca=b.ca,f.ciphers=b.ciphers,f.rejectUnauthorized=!1!==b.rejectUnauthorized),(c=z(f,A).on("error",B)).end();return}v(h.HEADERS_RECEIVED),h.status=g.statusCode,g.on("data",function(a){if(a){var b=Buffer.from(a);h.response=Buffer.concat([h.response,b])}q&&v(h.LOADING)}),g.on("end",function(){q&&(q=!1,v(h.DONE),h.responseText=h.response.toString("utf8"))}),g.on("error",function(a){h.handleError(a)})},B=function(a){if(c.reusedSocket&&"ECONNRESET"===a.code)return z(y,A).on("error",B);h.handleError(a)};c=z(y,A).on("error",B),b.autoUnref&&c.on("socket",a=>{a.unref()}),a&&c.write(a),c.end(),h.dispatchEvent("loadstart")}else{var C=".node-xmlhttprequest-content-"+process.pid,D=".node-xmlhttprequest-sync-"+process.pid;d.writeFileSync(D,"","utf8");for(var E="var http = require('http'), https = require('https'), fs = require('fs');var doRequest = http"+(m?"s":"")+".request;var options = "+JSON.stringify(y)+";var responseText = '';var responseData = Buffer.alloc(0);var req = doRequest(options, function(response) {response.on('data', function(chunk) { var data = Buffer.from(chunk); responseText += data.toString('utf8'); responseData = Buffer.concat([responseData, data]);});response.on('end', function() {fs.writeFileSync('"+C+"', JSON.stringify({err: null, data: {statusCode: response.statusCode, headers: response.headers, text: responseText, data: responseData.toString('base64')}}), 'utf8');fs.unlinkSync('"+D+"');});response.on('error', function(error) {fs.writeFileSync('"+C+"', 'NODE-XMLHTTPREQUEST-ERROR:' + JSON.stringify(error), 'utf8');fs.unlinkSync('"+D+"');});}).on('error', function(error) {fs.writeFileSync('"+C+"', 'NODE-XMLHTTPREQUEST-ERROR:' + JSON.stringify(error), 'utf8');fs.unlinkSync('"+D+"');});"+(a?"req.write('"+JSON.stringify(a).slice(1,-1).replace(/'/g,"\\'")+"');":"")+"req.end();",F=f(process.argv[0],["-e",E]);d.existsSync(D););if(h.responseText=d.readFileSync(C,"utf8"),F.stdin.end(),d.unlinkSync(C),h.responseText.match(/^NODE-XMLHTTPREQUEST-ERROR:/)){var G=JSON.parse(h.responseText.replace(/^NODE-XMLHTTPREQUEST-ERROR:/,""));h.handleError(G,503)}else{h.status=h.responseText.replace(/^NODE-XMLHTTPREQUEST-STATUS:([0-9]*),.*/,"$1");var H=JSON.parse(h.responseText.replace(/^NODE-XMLHTTPREQUEST-STATUS:[0-9]*,(.*)/,"$1"));g={statusCode:h.status,headers:H.data.headers},h.responseText=H.data.text,h.response=Buffer.from(H.data.data,"base64"),v(h.DONE,!0)}}},this.handleError=function(a,b){this.status=b||0,this.statusText=a,this.responseText=a.stack,r=!0,v(this.DONE)},this.abort=function(){c&&(c.abort(),c=null),n=Object.assign({},m),this.responseText="",this.responseXML="",this.response=Buffer.alloc(0),r=s=!0,this.readyState!==this.UNSENT&&(this.readyState!==this.OPENED||q)&&this.readyState!==this.DONE&&(q=!1,v(this.DONE)),this.readyState=this.UNSENT},this.addEventListener=function(a,b){a in u||(u[a]=[]),u[a].push(b)},this.removeEventListener=function(a,b){a in u&&(u[a]=u[a].filter(function(a){return a!==b}))},this.dispatchEvent=function(a){if("function"==typeof h["on"+a]&&(this.readyState===this.DONE&&k.async?setTimeout(function(){h["on"+a]()},0):h["on"+a]()),a in u)for(let b=0,c=u[a].length;b<c;b++)this.readyState===this.DONE?setTimeout(function(){u[a][b].call(h)},0):u[a][b].call(h)};var v=function(a){if(h.readyState!==a&&(h.readyState!==h.UNSENT||!s)&&(h.readyState=a,(k.async||h.readyState<h.OPENED||h.readyState===h.DONE)&&h.dispatchEvent("readystatechange"),h.readyState===h.DONE)){let a;a=s?"abort":r?"error":"load",h.dispatchEvent(a),h.dispatchEvent("loadend")}}}b.exports=g,g.XMLHttpRequest=g},84425,(a,b,c)=>{function d(a,b,c,d){return Math.round(a/c)+" "+d+(b>=1.5*c?"s":"")}b.exports=function(a,b){b=b||{};var c,e,f,g,h=typeof a;if("string"===h&&a.length>0){var i=a;if(!((i=String(i)).length>100)){var j=/^(-?(?:\d+)?\.?\d+) *(milliseconds?|msecs?|ms|seconds?|secs?|s|minutes?|mins?|m|hours?|hrs?|h|days?|d|weeks?|w|years?|yrs?|y)?$/i.exec(i);if(j){var k=parseFloat(j[1]);switch((j[2]||"ms").toLowerCase()){case"years":case"year":case"yrs":case"yr":case"y":return 315576e5*k;case"weeks":case"week":case"w":return 6048e5*k;case"days":case"day":case"d":return 864e5*k;case"hours":case"hour":case"hrs":case"hr":case"h":return 36e5*k;case"minutes":case"minute":case"mins":case"min":case"m":return 6e4*k;case"seconds":case"second":case"secs":case"sec":case"s":return 1e3*k;case"milliseconds":case"millisecond":case"msecs":case"msec":case"ms":return k;default:break}}}return}if("number"===h&&isFinite(a)){return b.long?(e=Math.abs(c=a))>=864e5?d(c,e,864e5,"day"):e>=36e5?d(c,e,36e5,"hour"):e>=6e4?d(c,e,6e4,"minute"):e>=1e3?d(c,e,1e3,"second"):c+" ms":(g=Math.abs(f=a))>=864e5?Math.round(f/864e5)+"d":g>=36e5?Math.round(f/36e5)+"h":g>=6e4?Math.round(f/6e4)+"m":g>=1e3?Math.round(f/1e3)+"s":f+"ms"}throw Error("val is not a non-empty string or a valid number. val="+JSON.stringify(a))}},11017,(a,b,c)=>{b.exports=function(b){function c(a){let b,e,f,g=null;function h(...a){if(!h.enabled)return;let d=Number(new Date);h.diff=d-(b||d),h.prev=b,h.curr=d,b=d,a[0]=c.coerce(a[0]),"string"!=typeof a[0]&&a.unshift("%O");let e=0;a[0]=a[0].replace(/%([a-zA-Z%])/g,(b,d)=>{if("%%"===b)return"%";e++;let f=c.formatters[d];if("function"==typeof f){let c=a[e];b=f.call(h,c),a.splice(e,1),e--}return b}),c.formatArgs.call(h,a),(h.log||c.log).apply(h,a)}return h.namespace=a,h.useColors=c.useColors(),h.color=c.selectColor(a),h.extend=d,h.destroy=c.destroy,Object.defineProperty(h,"enabled",{enumerable:!0,configurable:!1,get:()=>null!==g?g:(e!==c.namespaces&&(e=c.namespaces,f=c.enabled(a)),f),set:a=>{g=a}}),"function"==typeof c.init&&c.init(h),h}function d(a,b){let d=c(this.namespace+(void 0===b?":":b)+a);return d.log=this.log,d}function e(a,b){let c=0,d=0,e=-1,f=0;for(;c<a.length;)if(d<b.length&&(b[d]===a[c]||"*"===b[d]))"*"===b[d]?(e=d,f=c):c++,d++;else{if(-1===e)return!1;d=e+1,c=++f}for(;d<b.length&&"*"===b[d];)d++;return d===b.length}return c.debug=c,c.default=c,c.coerce=function(a){return a instanceof Error?a.stack||a.message:a},c.disable=function(){let a=[...c.names,...c.skips.map(a=>"-"+a)].join(",");return c.enable(""),a},c.enable=function(a){for(let b of(c.save(a),c.namespaces=a,c.names=[],c.skips=[],("string"==typeof a?a:"").trim().replace(/\s+/g,",").split(",").filter(Boolean)))"-"===b[0]?c.skips.push(b.slice(1)):c.names.push(b)},c.enabled=function(a){for(let b of c.skips)if(e(a,b))return!1;for(let b of c.names)if(e(a,b))return!0;return!1},c.humanize=a.r(84425),c.destroy=function(){console.warn("Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`.")},Object.keys(b).forEach(a=>{c[a]=b[a]}),c.names=[],c.skips=[],c.formatters={},c.selectColor=function(a){let b=0;for(let c=0;c<a.length;c++)b=(b<<5)-b+a.charCodeAt(c)|0;return c.colors[Math.abs(b)%c.colors.length]},c.enable(c.load()),c}},70722,(a,b,c)=>{b.exports=a.x("tty",()=>require("tty"))},55858,(a,b,c)=>{"use strict";b.exports=(a,b=process.argv)=>{let c=a.startsWith("-")?"":1===a.length?"-":"--",d=b.indexOf(c+a),e=b.indexOf("--");return -1!==d&&(-1===e||d<e)}},73083,(a,b,c)=>{"use strict";let d;a.r(46786);let e=a.r(70722),f=a.r(55858),{env:g}=process;function h(a,b={}){var c;return 0!==(c=function(a,{streamIsTTY:b,sniffFlags:c=!0}={}){let e=function(){if("FORCE_COLOR"in g)return"true"===g.FORCE_COLOR?1:"false"===g.FORCE_COLOR?0:0===g.FORCE_COLOR.length?1:Math.min(Number.parseInt(g.FORCE_COLOR,10),3)}();void 0!==e&&(d=e);let h=c?d:e;if(0===h)return 0;if(c){if(f("color=16m")||f("color=full")||f("color=truecolor"))return 3;if(f("color=256"))return 2}if(a&&!b&&void 0===h)return 0;let i=h||0;if("dumb"===g.TERM)return i;if("CI"in g)return["TRAVIS","CIRCLECI","APPVEYOR","GITLAB_CI","GITHUB_ACTIONS","BUILDKITE","DRONE"].some(a=>a in g)||"codeship"===g.CI_NAME?1:i;if("TEAMCITY_VERSION"in g)return+!!/^(9\.(0*[1-9]\d*)\.|\d{2,}\.)/.test(g.TEAMCITY_VERSION);if("truecolor"===g.COLORTERM)return 3;if("TERM_PROGRAM"in g){let a=Number.parseInt((g.TERM_PROGRAM_VERSION||"").split(".")[0],10);switch(g.TERM_PROGRAM){case"iTerm.app":return a>=3?3:2;case"Apple_Terminal":return 2}}return/-256(color)?$/i.test(g.TERM)?2:/^screen|^xterm|^vt100|^vt220|^rxvt|color|ansi|cygwin|linux/i.test(g.TERM)||"COLORTERM"in g?1:i}(a,{streamIsTTY:a&&a.isTTY,...b}))&&{level:c,hasBasic:!0,has256:c>=2,has16m:c>=3}}f("no-color")||f("no-colors")||f("color=false")||f("color=never")?d=0:(f("color")||f("colors")||f("color=true")||f("color=always"))&&(d=1),b.exports={supportsColor:h,stdout:h({isTTY:e.isatty(1)}),stderr:h({isTTY:e.isatty(2)})}},81454,(a,b,c)=>{let d=a.r(70722),e=a.r(24361);c.init=function(a){a.inspectOpts={};let b=Object.keys(c.inspectOpts);for(let d=0;d<b.length;d++)a.inspectOpts[b[d]]=c.inspectOpts[b[d]]},c.log=function(...a){return process.stderr.write(e.formatWithOptions(c.inspectOpts,...a)+"\n")},c.formatArgs=function(a){let{namespace:d,useColors:e}=this;if(e){let c=this.color,e="\x1b[3"+(c<8?c:"8;5;"+c),f=` ${e};1m${d} \u001B[0m`;a[0]=f+a[0].split("\n").join("\n"+f),a.push(e+"m+"+b.exports.humanize(this.diff)+"\x1b[0m")}else a[0]=(c.inspectOpts.hideDate?"":new Date().toISOString()+" ")+d+" "+a[0]},c.save=function(a){a?process.env.DEBUG=a:delete process.env.DEBUG},c.load=function(){return process.env.DEBUG},c.useColors=function(){return"colors"in c.inspectOpts?!!c.inspectOpts.colors:d.isatty(process.stderr.fd)},c.destroy=e.deprecate(()=>{},"Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`."),c.colors=[6,2,3,4,5,1];try{let b=a.r(73083);b&&(b.stderr||b).level>=2&&(c.colors=[20,21,26,27,32,33,38,39,40,41,42,43,44,45,56,57,62,63,68,69,74,75,76,77,78,79,80,81,92,93,98,99,112,113,128,129,134,135,148,149,160,161,162,163,164,165,166,167,168,169,170,171,172,173,178,179,184,185,196,197,198,199,200,201,202,203,204,205,206,207,208,209,214,215,220,221])}catch(a){}c.inspectOpts=Object.keys(process.env).filter(a=>/^debug_/i.test(a)).reduce((a,b)=>{let c=b.substring(6).toLowerCase().replace(/_([a-z])/g,(a,b)=>b.toUpperCase()),d=process.env[b];return d=!!/^(yes|on|true|enabled)$/i.test(d)||!/^(no|off|false|disabled)$/i.test(d)&&("null"===d?null:Number(d)),a[c]=d,a},{}),b.exports=a.r(11017)(c);let{formatters:f}=b.exports;f.o=function(a){return this.inspectOpts.colors=this.useColors,e.inspect(a,this.inspectOpts).split("\n").map(a=>a.trim()).join(" ")},f.O=function(a){return this.inspectOpts.colors=this.useColors,e.inspect(a,this.inspectOpts)}},47522,(a,b,c)=>{let d;c.formatArgs=function(a){if(a[0]=(this.useColors?"%c":"")+this.namespace+(this.useColors?" %c":" ")+a[0]+(this.useColors?"%c ":" ")+"+"+b.exports.humanize(this.diff),!this.useColors)return;let c="color: "+this.color;a.splice(1,0,c,"color: inherit");let d=0,e=0;a[0].replace(/%[a-zA-Z%]/g,a=>{"%%"!==a&&(d++,"%c"===a&&(e=d))}),a.splice(e,0,c)},c.save=function(a){try{a?c.storage.setItem("debug",a):c.storage.removeItem("debug")}catch(a){}},c.load=function(){let a;try{a=c.storage.getItem("debug")||c.storage.getItem("DEBUG")}catch(a){}return!a&&"u">typeof process&&"env"in process&&(a=process.env.DEBUG),a},c.useColors=function(){let a;return!("u">typeof navigator&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/(edge|trident)\/(\d+)/))&&("u">typeof document&&document.documentElement&&document.documentElement.style&&document.documentElement.style.WebkitAppearance||"u">typeof navigator&&navigator.userAgent&&(a=navigator.userAgent.toLowerCase().match(/firefox\/(\d+)/))&&parseInt(a[1],10)>=31||"u">typeof navigator&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/applewebkit\/(\d+)/))},c.storage=function(){try{return localStorage}catch(a){}}(),d=!1,c.destroy=()=>{d||(d=!0,console.warn("Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`."))},c.colors=["#0000CC","#0000FF","#0033CC","#0033FF","#0066CC","#0066FF","#0099CC","#0099FF","#00CC00","#00CC33","#00CC66","#00CC99","#00CCCC","#00CCFF","#3300CC","#3300FF","#3333CC","#3333FF","#3366CC","#3366FF","#3399CC","#3399FF","#33CC00","#33CC33","#33CC66","#33CC99","#33CCCC","#33CCFF","#6600CC","#6600FF","#6633CC","#6633FF","#66CC00","#66CC33","#9900CC","#9900FF","#9933CC","#9933FF","#99CC00","#99CC33","#CC0000","#CC0033","#CC0066","#CC0099","#CC00CC","#CC00FF","#CC3300","#CC3333","#CC3366","#CC3399","#CC33CC","#CC33FF","#CC6600","#CC6633","#CC9900","#CC9933","#CCCC00","#CCCC33","#FF0000","#FF0033","#FF0066","#FF0099","#FF00CC","#FF00FF","#FF3300","#FF3333","#FF3366","#FF3399","#FF33CC","#FF33FF","#FF6600","#FF6633","#FF9900","#FF9933","#FFCC00","#FFCC33"],c.log=console.debug||console.log||(()=>{}),b.exports=a.r(11017)(c);let{formatters:e}=b.exports;e.j=function(a){try{return JSON.stringify(a)}catch(a){return"[UnexpectedJSONParseError]: "+a.message}}},35290,(a,b,c)=>{"u"<typeof process||"renderer"===process.type||process.__nwjs?b.exports=a.r(47522):b.exports=a.r(81454)},27699,(a,b,c)=>{b.exports=a.x("events",()=>require("events"))},55004,(a,b,c)=>{b.exports=a.x("tls",()=>require("tls"))},88947,(a,b,c)=>{b.exports=a.x("stream",()=>require("stream"))},6461,(a,b,c)=>{b.exports=a.x("zlib",()=>require("zlib"))},17376,(a,b,c)=>{"use strict";let d=["nodebuffer","arraybuffer","fragments"],e="u">typeof Blob;e&&d.push("blob"),b.exports={BINARY_TYPES:d,EMPTY_BUFFER:Buffer.alloc(0),GUID:"258EAFA5-E914-47DA-95CA-C5AB0DC85B11",hasBlob:e,kForOnEventAttribute:Symbol("kIsForOnEventAttribute"),kListener:Symbol("kListener"),kStatusCode:Symbol("status-code"),kWebSocket:Symbol("websocket"),NOOP:()=>{}}},29618,(a,b,c)=>{"use strict";let{EMPTY_BUFFER:d}=a.r(17376),e=Buffer[Symbol.species];function f(a,b,c,d,e){for(let f=0;f<e;f++)c[d+f]=a[f]^b[3&f]}function g(a,b){for(let c=0;c<a.length;c++)a[c]^=b[3&c]}function h(a){let b;return(h.readOnly=!0,Buffer.isBuffer(a))?a:(a instanceof ArrayBuffer?b=new e(a):ArrayBuffer.isView(a)?b=new e(a.buffer,a.byteOffset,a.byteLength):(b=Buffer.from(a),h.readOnly=!1),b)}if(b.exports={concat:function(a,b){if(0===a.length)return d;if(1===a.length)return a[0];let c=Buffer.allocUnsafe(b),f=0;for(let b=0;b<a.length;b++){let d=a[b];c.set(d,f),f+=d.length}return f<b?new e(c.buffer,c.byteOffset,f):c},mask:f,toArrayBuffer:function(a){return a.length===a.buffer.byteLength?a.buffer:a.buffer.slice(a.byteOffset,a.byteOffset+a.length)},toBuffer:h,unmask:g},!process.env.WS_NO_BUFFER_UTIL)try{let a=(()=>{let a=Error("Cannot find module 'bufferutil'");throw a.code="MODULE_NOT_FOUND",a})();b.exports.mask=function(b,c,d,e,g){g<48?f(b,c,d,e,g):a.mask(b,c,d,e,g)},b.exports.unmask=function(b,c){b.length<32?g(b,c):a.unmask(b,c)}}catch(a){}},74873,(a,b,c)=>{"use strict";let d=Symbol("kDone"),e=Symbol("kRun");b.exports=class{constructor(a){this[d]=()=>{this.pending--,this[e]()},this.concurrency=a||1/0,this.jobs=[],this.pending=0}add(a){this.jobs.push(a),this[e]()}[e](){if(this.pending!==this.concurrency&&this.jobs.length){let a=this.jobs.shift();this.pending++,a(this[d])}}}},10976,(a,b,c)=>{"use strict";let d,e=a.r(6461),f=a.r(29618),g=a.r(74873),{kStatusCode:h}=a.r(17376),i=Buffer[Symbol.species],j=Buffer.from([0,0,255,255]),k=Symbol("permessage-deflate"),l=Symbol("total-length"),m=Symbol("callback"),n=Symbol("buffers"),o=Symbol("error");function p(a){this[n].push(a),this[l]+=a.length}function q(a){(this[l]+=a.length,this[k]._maxPayload<1||this[l]<=this[k]._maxPayload)?this[n].push(a):(this[o]=RangeError("Max payload size exceeded"),this[o].code="WS_ERR_UNSUPPORTED_MESSAGE_LENGTH",this[o][h]=1009,this.removeListener("data",q),this.reset())}function r(a){(this[k]._inflate=null,this[o])?this[m](this[o]):(a[h]=1007,this[m](a))}b.exports=class{constructor(a,b,c){this._maxPayload=0|c,this._options=a||{},this._threshold=void 0!==this._options.threshold?this._options.threshold:1024,this._isServer=!!b,this._deflate=null,this._inflate=null,this.params=null,d||(d=new g(void 0!==this._options.concurrencyLimit?this._options.concurrencyLimit:10))}static get extensionName(){return"permessage-deflate"}offer(){let a={};return this._options.serverNoContextTakeover&&(a.server_no_context_takeover=!0),this._options.clientNoContextTakeover&&(a.client_no_context_takeover=!0),this._options.serverMaxWindowBits&&(a.server_max_window_bits=this._options.serverMaxWindowBits),this._options.clientMaxWindowBits?a.client_max_window_bits=this._options.clientMaxWindowBits:null==this._options.clientMaxWindowBits&&(a.client_max_window_bits=!0),a}accept(a){return a=this.normalizeParams(a),this.params=this._isServer?this.acceptAsServer(a):this.acceptAsClient(a),this.params}cleanup(){if(this._inflate&&(this._inflate.close(),this._inflate=null),this._deflate){let a=this._deflate[m];this._deflate.close(),this._deflate=null,a&&a(Error("The deflate stream was closed while data was being processed"))}}acceptAsServer(a){let b=this._options,c=a.find(a=>(!1!==b.serverNoContextTakeover||!a.server_no_context_takeover)&&(!a.server_max_window_bits||!1!==b.serverMaxWindowBits&&("number"!=typeof b.serverMaxWindowBits||!(b.serverMaxWindowBits>a.server_max_window_bits)))&&("number"!=typeof b.clientMaxWindowBits||!!a.client_max_window_bits));if(!c)throw Error("None of the extension offers can be accepted");return b.serverNoContextTakeover&&(c.server_no_context_takeover=!0),b.clientNoContextTakeover&&(c.client_no_context_takeover=!0),"number"==typeof b.serverMaxWindowBits&&(c.server_max_window_bits=b.serverMaxWindowBits),"number"==typeof b.clientMaxWindowBits?c.client_max_window_bits=b.clientMaxWindowBits:(!0===c.client_max_window_bits||!1===b.clientMaxWindowBits)&&delete c.client_max_window_bits,c}acceptAsClient(a){let b=a[0];if(!1===this._options.clientNoContextTakeover&&b.client_no_context_takeover)throw Error('Unexpected parameter "client_no_context_takeover"');if(b.client_max_window_bits){if(!1===this._options.clientMaxWindowBits||"number"==typeof this._options.clientMaxWindowBits&&b.client_max_window_bits>this._options.clientMaxWindowBits)throw Error('Unexpected or invalid parameter "client_max_window_bits"')}else"number"==typeof this._options.clientMaxWindowBits&&(b.client_max_window_bits=this._options.clientMaxWindowBits);return b}normalizeParams(a){return a.forEach(a=>{Object.keys(a).forEach(b=>{let c=a[b];if(c.length>1)throw Error(`Parameter "${b}" must have only a single value`);if(c=c[0],"client_max_window_bits"===b){if(!0!==c){let a=+c;if(!Number.isInteger(a)||a<8||a>15)throw TypeError(`Invalid value for parameter "${b}": ${c}`);c=a}else if(!this._isServer)throw TypeError(`Invalid value for parameter "${b}": ${c}`)}else if("server_max_window_bits"===b){let a=+c;if(!Number.isInteger(a)||a<8||a>15)throw TypeError(`Invalid value for parameter "${b}": ${c}`);c=a}else if("client_no_context_takeover"===b||"server_no_context_takeover"===b){if(!0!==c)throw TypeError(`Invalid value for parameter "${b}": ${c}`)}else throw Error(`Unknown parameter "${b}"`);a[b]=c})}),a}decompress(a,b,c){d.add(d=>{this._decompress(a,b,(a,b)=>{d(),c(a,b)})})}compress(a,b,c){d.add(d=>{this._compress(a,b,(a,b)=>{d(),c(a,b)})})}_decompress(a,b,c){let d=this._isServer?"client":"server";if(!this._inflate){let a=`${d}_max_window_bits`,b="number"!=typeof this.params[a]?e.Z_DEFAULT_WINDOWBITS:this.params[a];this._inflate=e.createInflateRaw({...this._options.zlibInflateOptions,windowBits:b}),this._inflate[k]=this,this._inflate[l]=0,this._inflate[n]=[],this._inflate.on("error",r),this._inflate.on("data",q)}this._inflate[m]=c,this._inflate.write(a),b&&this._inflate.write(j),this._inflate.flush(()=>{let a=this._inflate[o];if(a){this._inflate.close(),this._inflate=null,c(a);return}let e=f.concat(this._inflate[n],this._inflate[l]);this._inflate._readableState.endEmitted?(this._inflate.close(),this._inflate=null):(this._inflate[l]=0,this._inflate[n]=[],b&&this.params[`${d}_no_context_takeover`]&&this._inflate.reset()),c(null,e)})}_compress(a,b,c){let d=this._isServer?"server":"client";if(!this._deflate){let a=`${d}_max_window_bits`,b="number"!=typeof this.params[a]?e.Z_DEFAULT_WINDOWBITS:this.params[a];this._deflate=e.createDeflateRaw({...this._options.zlibDeflateOptions,windowBits:b}),this._deflate[l]=0,this._deflate[n]=[],this._deflate.on("data",p)}this._deflate[m]=c,this._deflate.write(a),this._deflate.flush(e.Z_SYNC_FLUSH,()=>{if(!this._deflate)return;let a=f.concat(this._deflate[n],this._deflate[l]);b&&(a=new i(a.buffer,a.byteOffset,a.length-4)),this._deflate[m]=null,this._deflate[l]=0,this._deflate[n]=[],b&&this.params[`${d}_no_context_takeover`]&&this._deflate.reset(),c(null,a)})}}},874,(a,b,c)=>{b.exports=a.x("buffer",()=>require("buffer"))},88686,(a,b,c)=>{"use strict";let{isUtf8:d}=a.r(874),{hasBlob:e}=a.r(17376);function f(a){let b=a.length,c=0;for(;c<b;)if((128&a[c])==0)c++;else if((224&a[c])==192){if(c+1===b||(192&a[c+1])!=128||(254&a[c])==192)return!1;c+=2}else if((240&a[c])==224){if(c+2>=b||(192&a[c+1])!=128||(192&a[c+2])!=128||224===a[c]&&(224&a[c+1])==128||237===a[c]&&(224&a[c+1])==160)return!1;c+=3}else{if((248&a[c])!=240||c+3>=b||(192&a[c+1])!=128||(192&a[c+2])!=128||(192&a[c+3])!=128||240===a[c]&&(240&a[c+1])==128||244===a[c]&&a[c+1]>143||a[c]>244)return!1;c+=4}return!0}if(b.exports={isBlob:function(a){return e&&"object"==typeof a&&"function"==typeof a.arrayBuffer&&"string"==typeof a.type&&"function"==typeof a.stream&&("Blob"===a[Symbol.toStringTag]||"File"===a[Symbol.toStringTag])},isValidStatusCode:function(a){return a>=1e3&&a<=1014&&1004!==a&&1005!==a&&1006!==a||a>=3e3&&a<=4999},isValidUTF8:f,tokenChars:[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,1,1,1,1,1,0,0,1,1,0,1,1,0,1,1,1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,0,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,1,0,1,0]},d)b.exports.isValidUTF8=function(a){return a.length<24?f(a):d(a)};else if(!process.env.WS_NO_UTF_8_VALIDATE)try{let a=(()=>{let a=Error("Cannot find module 'utf-8-validate'");throw a.code="MODULE_NOT_FOUND",a})();b.exports.isValidUTF8=function(b){return b.length<32?f(b):a(b)}}catch(a){}},64386,(a,b,c)=>{"use strict";let{Writable:d}=a.r(88947),e=a.r(10976),{BINARY_TYPES:f,EMPTY_BUFFER:g,kStatusCode:h,kWebSocket:i}=a.r(17376),{concat:j,toArrayBuffer:k,unmask:l}=a.r(29618),{isValidStatusCode:m,isValidUTF8:n}=a.r(88686),o=Buffer[Symbol.species];b.exports=class extends d{constructor(a={}){super(),this._allowSynchronousEvents=void 0===a.allowSynchronousEvents||a.allowSynchronousEvents,this._binaryType=a.binaryType||f[0],this._extensions=a.extensions||{},this._isServer=!!a.isServer,this._maxPayload=0|a.maxPayload,this._skipUTF8Validation=!!a.skipUTF8Validation,this[i]=void 0,this._bufferedBytes=0,this._buffers=[],this._compressed=!1,this._payloadLength=0,this._mask=void 0,this._fragmented=0,this._masked=!1,this._fin=!1,this._opcode=0,this._totalPayloadLength=0,this._messageLength=0,this._fragments=[],this._errored=!1,this._loop=!1,this._state=0}_write(a,b,c){if(8===this._opcode&&0==this._state)return c();this._bufferedBytes+=a.length,this._buffers.push(a),this.startLoop(c)}consume(a){if(this._bufferedBytes-=a,a===this._buffers[0].length)return this._buffers.shift();if(a<this._buffers[0].length){let b=this._buffers[0];return this._buffers[0]=new o(b.buffer,b.byteOffset+a,b.length-a),new o(b.buffer,b.byteOffset,a)}let b=Buffer.allocUnsafe(a);do{let c=this._buffers[0],d=b.length-a;a>=c.length?b.set(this._buffers.shift(),d):(b.set(new Uint8Array(c.buffer,c.byteOffset,a),d),this._buffers[0]=new o(c.buffer,c.byteOffset+a,c.length-a)),a-=c.length}while(a>0)return b}startLoop(a){this._loop=!0;do switch(this._state){case 0:this.getInfo(a);break;case 1:this.getPayloadLength16(a);break;case 2:this.getPayloadLength64(a);break;case 3:this.getMask();break;case 4:this.getData(a);break;case 5:case 6:this._loop=!1;return}while(this._loop)this._errored||a()}getInfo(a){if(this._bufferedBytes<2){this._loop=!1;return}let b=this.consume(2);if((48&b[0])!=0)return void a(this.createError(RangeError,"RSV2 and RSV3 must be clear",!0,1002,"WS_ERR_UNEXPECTED_RSV_2_3"));let c=(64&b[0])==64;if(c&&!this._extensions[e.extensionName])return void a(this.createError(RangeError,"RSV1 must be clear",!0,1002,"WS_ERR_UNEXPECTED_RSV_1"));if(this._fin=(128&b[0])==128,this._opcode=15&b[0],this._payloadLength=127&b[1],0===this._opcode){if(c)return void a(this.createError(RangeError,"RSV1 must be clear",!0,1002,"WS_ERR_UNEXPECTED_RSV_1"));if(!this._fragmented)return void a(this.createError(RangeError,"invalid opcode 0",!0,1002,"WS_ERR_INVALID_OPCODE"));this._opcode=this._fragmented}else if(1===this._opcode||2===this._opcode){if(this._fragmented)return void a(this.createError(RangeError,`invalid opcode ${this._opcode}`,!0,1002,"WS_ERR_INVALID_OPCODE"));this._compressed=c}else{if(!(this._opcode>7)||!(this._opcode<11))return void a(this.createError(RangeError,`invalid opcode ${this._opcode}`,!0,1002,"WS_ERR_INVALID_OPCODE"));if(!this._fin)return void a(this.createError(RangeError,"FIN must be set",!0,1002,"WS_ERR_EXPECTED_FIN"));if(c)return void a(this.createError(RangeError,"RSV1 must be clear",!0,1002,"WS_ERR_UNEXPECTED_RSV_1"));if(this._payloadLength>125||8===this._opcode&&1===this._payloadLength)return void a(this.createError(RangeError,`invalid payload length ${this._payloadLength}`,!0,1002,"WS_ERR_INVALID_CONTROL_PAYLOAD_LENGTH"))}if(this._fin||this._fragmented||(this._fragmented=this._opcode),this._masked=(128&b[1])==128,this._isServer){if(!this._masked)return void a(this.createError(RangeError,"MASK must be set",!0,1002,"WS_ERR_EXPECTED_MASK"))}else if(this._masked)return void a(this.createError(RangeError,"MASK must be clear",!0,1002,"WS_ERR_UNEXPECTED_MASK"));126===this._payloadLength?this._state=1:127===this._payloadLength?this._state=2:this.haveLength(a)}getPayloadLength16(a){if(this._bufferedBytes<2){this._loop=!1;return}this._payloadLength=this.consume(2).readUInt16BE(0),this.haveLength(a)}getPayloadLength64(a){if(this._bufferedBytes<8){this._loop=!1;return}let b=this.consume(8),c=b.readUInt32BE(0);c>2097151?a(this.createError(RangeError,"Unsupported WebSocket frame: payload length > 2^53 - 1",!1,1009,"WS_ERR_UNSUPPORTED_DATA_PAYLOAD_LENGTH")):(this._payloadLength=0x100000000*c+b.readUInt32BE(4),this.haveLength(a))}haveLength(a){this._payloadLength&&this._opcode<8&&(this._totalPayloadLength+=this._payloadLength,this._totalPayloadLength>this._maxPayload&&this._maxPayload>0)?a(this.createError(RangeError,"Max payload size exceeded",!1,1009,"WS_ERR_UNSUPPORTED_MESSAGE_LENGTH")):this._masked?this._state=3:this._state=4}getMask(){if(this._bufferedBytes<4){this._loop=!1;return}this._mask=this.consume(4),this._state=4}getData(a){let b=g;if(this._payloadLength){if(this._bufferedBytes<this._payloadLength){this._loop=!1;return}b=this.consume(this._payloadLength),this._masked&&(this._mask[0]|this._mask[1]|this._mask[2]|this._mask[3])!=0&&l(b,this._mask)}if(this._opcode>7)return void this.controlMessage(b,a);if(this._compressed){this._state=5,this.decompress(b,a);return}b.length&&(this._messageLength=this._totalPayloadLength,this._fragments.push(b)),this.dataMessage(a)}decompress(a,b){this._extensions[e.extensionName].decompress(a,this._fin,(a,c)=>{if(a)return b(a);if(c.length){if(this._messageLength+=c.length,this._messageLength>this._maxPayload&&this._maxPayload>0)return void b(this.createError(RangeError,"Max payload size exceeded",!1,1009,"WS_ERR_UNSUPPORTED_MESSAGE_LENGTH"));this._fragments.push(c)}this.dataMessage(b),0===this._state&&this.startLoop(b)})}dataMessage(a){if(!this._fin){this._state=0;return}let b=this._messageLength,c=this._fragments;if(this._totalPayloadLength=0,this._messageLength=0,this._fragmented=0,this._fragments=[],2===this._opcode){let d;d="nodebuffer"===this._binaryType?j(c,b):"arraybuffer"===this._binaryType?k(j(c,b)):"blob"===this._binaryType?new Blob(c):c,this._allowSynchronousEvents?(this.emit("message",d,!0),this._state=0):(this._state=6,setImmediate(()=>{this.emit("message",d,!0),this._state=0,this.startLoop(a)}))}else{let d=j(c,b);if(!this._skipUTF8Validation&&!n(d))return void a(this.createError(Error,"invalid UTF-8 sequence",!0,1007,"WS_ERR_INVALID_UTF8"));5===this._state||this._allowSynchronousEvents?(this.emit("message",d,!1),this._state=0):(this._state=6,setImmediate(()=>{this.emit("message",d,!1),this._state=0,this.startLoop(a)}))}}controlMessage(a,b){if(8===this._opcode){if(0===a.length)this._loop=!1,this.emit("conclude",1005,g),this.end();else{let c=a.readUInt16BE(0);if(!m(c))return void b(this.createError(RangeError,`invalid status code ${c}`,!0,1002,"WS_ERR_INVALID_CLOSE_CODE"));let d=new o(a.buffer,a.byteOffset+2,a.length-2);if(!this._skipUTF8Validation&&!n(d))return void b(this.createError(Error,"invalid UTF-8 sequence",!0,1007,"WS_ERR_INVALID_UTF8"));this._loop=!1,this.emit("conclude",c,d),this.end()}this._state=0;return}this._allowSynchronousEvents?(this.emit(9===this._opcode?"ping":"pong",a),this._state=0):(this._state=6,setImmediate(()=>{this.emit(9===this._opcode?"ping":"pong",a),this._state=0,this.startLoop(b)}))}createError(a,b,c,d,e){this._loop=!1,this._errored=!0;let f=new a(c?`Invalid WebSocket frame: ${b}`:b);return Error.captureStackTrace(f,this.createError),f.code=e,f[h]=d,f}}},71387,(a,b,c)=>{"use strict";let d,{Duplex:e}=a.r(88947),{randomFillSync:f}=a.r(54799),g=a.r(10976),{EMPTY_BUFFER:h,kWebSocket:i,NOOP:j}=a.r(17376),{isBlob:k,isValidStatusCode:l}=a.r(88686),{mask:m,toBuffer:n}=a.r(29618),o=Symbol("kByteLength"),p=Buffer.alloc(4),q=8192;class r{constructor(a,b,c){this._extensions=b||{},c&&(this._generateMask=c,this._maskBuffer=Buffer.alloc(4)),this._socket=a,this._firstFragment=!0,this._compress=!1,this._bufferedBytes=0,this._queue=[],this._state=0,this.onerror=j,this[i]=void 0}static frame(a,b){let c,e,g=!1,h=2,i=!1;b.mask&&(c=b.maskBuffer||p,b.generateMask?b.generateMask(c):(8192===q&&(void 0===d&&(d=Buffer.alloc(8192)),f(d,0,8192),q=0),c[0]=d[q++],c[1]=d[q++],c[2]=d[q++],c[3]=d[q++]),i=(c[0]|c[1]|c[2]|c[3])==0,h=6),"string"==typeof a?e=(!b.mask||i)&&void 0!==b[o]?b[o]:(a=Buffer.from(a)).length:(e=a.length,g=b.mask&&b.readOnly&&!i);let j=e;e>=65536?(h+=8,j=127):e>125&&(h+=2,j=126);let k=Buffer.allocUnsafe(g?e+h:h);return(k[0]=b.fin?128|b.opcode:b.opcode,b.rsv1&&(k[0]|=64),k[1]=j,126===j?k.writeUInt16BE(e,2):127===j&&(k[2]=k[3]=0,k.writeUIntBE(e,4,6)),b.mask)?(k[1]|=128,k[h-4]=c[0],k[h-3]=c[1],k[h-2]=c[2],k[h-1]=c[3],i)?[k,a]:g?(m(a,c,k,h,e),[k]):(m(a,c,a,0,e),[k,a]):[k,a]}close(a,b,c,d){let e;if(void 0===a)e=h;else if("number"==typeof a&&l(a))if(void 0!==b&&b.length){let c=Buffer.byteLength(b);if(c>123)throw RangeError("The message must not be greater than 123 bytes");(e=Buffer.allocUnsafe(2+c)).writeUInt16BE(a,0),"string"==typeof b?e.write(b,2):e.set(b,2)}else(e=Buffer.allocUnsafe(2)).writeUInt16BE(a,0);else throw TypeError("First argument must be a valid error code number");let f={[o]:e.length,fin:!0,generateMask:this._generateMask,mask:c,maskBuffer:this._maskBuffer,opcode:8,readOnly:!1,rsv1:!1};0!==this._state?this.enqueue([this.dispatch,e,!1,f,d]):this.sendFrame(r.frame(e,f),d)}ping(a,b,c){let d,e;if("string"==typeof a?(d=Buffer.byteLength(a),e=!1):k(a)?(d=a.size,e=!1):(d=(a=n(a)).length,e=n.readOnly),d>125)throw RangeError("The data size must not be greater than 125 bytes");let f={[o]:d,fin:!0,generateMask:this._generateMask,mask:b,maskBuffer:this._maskBuffer,opcode:9,readOnly:e,rsv1:!1};k(a)?0!==this._state?this.enqueue([this.getBlobData,a,!1,f,c]):this.getBlobData(a,!1,f,c):0!==this._state?this.enqueue([this.dispatch,a,!1,f,c]):this.sendFrame(r.frame(a,f),c)}pong(a,b,c){let d,e;if("string"==typeof a?(d=Buffer.byteLength(a),e=!1):k(a)?(d=a.size,e=!1):(d=(a=n(a)).length,e=n.readOnly),d>125)throw RangeError("The data size must not be greater than 125 bytes");let f={[o]:d,fin:!0,generateMask:this._generateMask,mask:b,maskBuffer:this._maskBuffer,opcode:10,readOnly:e,rsv1:!1};k(a)?0!==this._state?this.enqueue([this.getBlobData,a,!1,f,c]):this.getBlobData(a,!1,f,c):0!==this._state?this.enqueue([this.dispatch,a,!1,f,c]):this.sendFrame(r.frame(a,f),c)}send(a,b,c){let d,e,f=this._extensions[g.extensionName],h=b.binary?2:1,i=b.compress;"string"==typeof a?(d=Buffer.byteLength(a),e=!1):k(a)?(d=a.size,e=!1):(d=(a=n(a)).length,e=n.readOnly),this._firstFragment?(this._firstFragment=!1,i&&f&&f.params[f._isServer?"server_no_context_takeover":"client_no_context_takeover"]&&(i=d>=f._threshold),this._compress=i):(i=!1,h=0),b.fin&&(this._firstFragment=!0);let j={[o]:d,fin:b.fin,generateMask:this._generateMask,mask:b.mask,maskBuffer:this._maskBuffer,opcode:h,readOnly:e,rsv1:i};k(a)?0!==this._state?this.enqueue([this.getBlobData,a,this._compress,j,c]):this.getBlobData(a,this._compress,j,c):0!==this._state?this.enqueue([this.dispatch,a,this._compress,j,c]):this.dispatch(a,this._compress,j,c)}getBlobData(a,b,c,d){this._bufferedBytes+=c[o],this._state=2,a.arrayBuffer().then(a=>{if(this._socket.destroyed){let a=Error("The socket was closed while the blob was being read");process.nextTick(s,this,a,d);return}this._bufferedBytes-=c[o];let e=n(a);b?this.dispatch(e,b,c,d):(this._state=0,this.sendFrame(r.frame(e,c),d),this.dequeue())}).catch(a=>{process.nextTick(u,this,a,d)})}dispatch(a,b,c,d){if(!b)return void this.sendFrame(r.frame(a,c),d);let e=this._extensions[g.extensionName];this._bufferedBytes+=c[o],this._state=1,e.compress(a,c.fin,(a,b)=>{this._socket.destroyed?s(this,Error("The socket was closed while data was being compressed"),d):(this._bufferedBytes-=c[o],this._state=0,c.readOnly=!1,this.sendFrame(r.frame(b,c),d),this.dequeue())})}dequeue(){for(;0===this._state&&this._queue.length;){let a=this._queue.shift();this._bufferedBytes-=a[3][o],Reflect.apply(a[0],this,a.slice(1))}}enqueue(a){this._bufferedBytes+=a[3][o],this._queue.push(a)}sendFrame(a,b){2===a.length?(this._socket.cork(),this._socket.write(a[0]),this._socket.write(a[1],b),this._socket.uncork()):this._socket.write(a[0],b)}}function s(a,b,c){"function"==typeof c&&c(b);for(let c=0;c<a._queue.length;c++){let d=a._queue[c],e=d[d.length-1];"function"==typeof e&&e(b)}}function u(a,b,c){s(a,b,c),a.onerror(b)}b.exports=r},25936,(a,b,c)=>{"use strict";let{kForOnEventAttribute:d,kListener:e}=a.r(17376),f=Symbol("kCode"),g=Symbol("kData"),h=Symbol("kError"),i=Symbol("kMessage"),j=Symbol("kReason"),k=Symbol("kTarget"),l=Symbol("kType"),m=Symbol("kWasClean");class n{constructor(a){this[k]=null,this[l]=a}get target(){return this[k]}get type(){return this[l]}}Object.defineProperty(n.prototype,"target",{enumerable:!0}),Object.defineProperty(n.prototype,"type",{enumerable:!0});class o extends n{constructor(a,b={}){super(a),this[f]=void 0===b.code?0:b.code,this[j]=void 0===b.reason?"":b.reason,this[m]=void 0!==b.wasClean&&b.wasClean}get code(){return this[f]}get reason(){return this[j]}get wasClean(){return this[m]}}Object.defineProperty(o.prototype,"code",{enumerable:!0}),Object.defineProperty(o.prototype,"reason",{enumerable:!0}),Object.defineProperty(o.prototype,"wasClean",{enumerable:!0});class p extends n{constructor(a,b={}){super(a),this[h]=void 0===b.error?null:b.error,this[i]=void 0===b.message?"":b.message}get error(){return this[h]}get message(){return this[i]}}Object.defineProperty(p.prototype,"error",{enumerable:!0}),Object.defineProperty(p.prototype,"message",{enumerable:!0});class q extends n{constructor(a,b={}){super(a),this[g]=void 0===b.data?null:b.data}get data(){return this[g]}}function r(a,b,c){"object"==typeof a&&a.handleEvent?a.handleEvent.call(a,c):a.call(b,c)}Object.defineProperty(q.prototype,"data",{enumerable:!0}),b.exports={CloseEvent:o,ErrorEvent:p,Event:n,EventTarget:{addEventListener(a,b,c={}){let f;for(let f of this.listeners(a))if(!c[d]&&f[e]===b&&!f[d])return;if("message"===a)f=function(a,c){let d=new q("message",{data:c?a:a.toString()});d[k]=this,r(b,this,d)};else if("close"===a)f=function(a,c){let d=new o("close",{code:a,reason:c.toString(),wasClean:this._closeFrameReceived&&this._closeFrameSent});d[k]=this,r(b,this,d)};else if("error"===a)f=function(a){let c=new p("error",{error:a,message:a.message});c[k]=this,r(b,this,c)};else{if("open"!==a)return;f=function(){let a=new n("open");a[k]=this,r(b,this,a)}}f[d]=!!c[d],f[e]=b,c.once?this.once(a,f):this.on(a,f)},removeEventListener(a,b){for(let c of this.listeners(a))if(c[e]===b&&!c[d]){this.removeListener(a,c);break}}},MessageEvent:q}},16193,(a,b,c)=>{"use strict";let{tokenChars:d}=a.r(88686);function e(a,b,c){void 0===a[b]?a[b]=[c]:a[b].push(c)}b.exports={format:function(a){return Object.keys(a).map(b=>{let c=a[b];return Array.isArray(c)||(c=[c]),c.map(a=>[b].concat(Object.keys(a).map(b=>{let c=a[b];return Array.isArray(c)||(c=[c]),c.map(a=>!0===a?b:`${b}=${a}`).join("; ")})).join("; ")).join(", ")}).join(", ")},parse:function(a){let b,c,f=Object.create(null),g=Object.create(null),h=!1,i=!1,j=!1,k=-1,l=-1,m=-1,n=0;for(;n<a.length;n++)if(l=a.charCodeAt(n),void 0===b)if(-1===m&&1===d[l])-1===k&&(k=n);else if(0!==n&&(32===l||9===l))-1===m&&-1!==k&&(m=n);else if(59===l||44===l){if(-1===k)throw SyntaxError(`Unexpected character at index ${n}`);-1===m&&(m=n);let c=a.slice(k,m);44===l?(e(f,c,g),g=Object.create(null)):b=c,k=m=-1}else throw SyntaxError(`Unexpected character at index ${n}`);else if(void 0===c)if(-1===m&&1===d[l])-1===k&&(k=n);else if(32===l||9===l)-1===m&&-1!==k&&(m=n);else if(59===l||44===l){if(-1===k)throw SyntaxError(`Unexpected character at index ${n}`);-1===m&&(m=n),e(g,a.slice(k,m),!0),44===l&&(e(f,b,g),g=Object.create(null),b=void 0),k=m=-1}else if(61===l&&-1!==k&&-1===m)c=a.slice(k,n),k=m=-1;else throw SyntaxError(`Unexpected character at index ${n}`);else if(i){if(1!==d[l])throw SyntaxError(`Unexpected character at index ${n}`);-1===k?k=n:h||(h=!0),i=!1}else if(j)if(1===d[l])-1===k&&(k=n);else if(34===l&&-1!==k)j=!1,m=n;else if(92===l)i=!0;else throw SyntaxError(`Unexpected character at index ${n}`);else if(34===l&&61===a.charCodeAt(n-1))j=!0;else if(-1===m&&1===d[l])-1===k&&(k=n);else if(-1!==k&&(32===l||9===l))-1===m&&(m=n);else if(59===l||44===l){if(-1===k)throw SyntaxError(`Unexpected character at index ${n}`);-1===m&&(m=n);let d=a.slice(k,m);h&&(d=d.replace(/\\/g,""),h=!1),e(g,c,d),44===l&&(e(f,b,g),g=Object.create(null),b=void 0),c=void 0,k=m=-1}else throw SyntaxError(`Unexpected character at index ${n}`);if(-1===k||j||32===l||9===l)throw SyntaxError("Unexpected end of input");-1===m&&(m=n);let o=a.slice(k,m);return void 0===b?e(f,o,g):(void 0===c?e(g,o,!0):h?e(g,c,o.replace(/\\/g,"")):e(g,c,o),e(f,b,g)),f}}},36705,(a,b,c)=>{"use strict";let d=a.r(27699),e=a.r(24836),f=a.r(21517),g=a.r(4446),h=a.r(55004),{randomBytes:i,createHash:j}=a.r(54799),{Duplex:k,Readable:l}=a.r(88947),{URL:m}=a.r(92509),n=a.r(10976),o=a.r(64386),p=a.r(71387),{isBlob:q}=a.r(88686),{BINARY_TYPES:r,EMPTY_BUFFER:s,GUID:u,kForOnEventAttribute:v,kListener:w,kStatusCode:x,kWebSocket:y,NOOP:z}=a.r(17376),{EventTarget:{addEventListener:A,removeEventListener:B}}=a.r(25936),{format:C,parse:D}=a.r(16193),{toBuffer:E}=a.r(29618),F=Symbol("kAborted"),G=[8,13],H=["CONNECTING","OPEN","CLOSING","CLOSED"],I=/^[!#$%&'*+\-.0-9A-Z^_`|a-z~]+$/;class J extends d{constructor(a,b,c){super(),this._binaryType=r[0],this._closeCode=1006,this._closeFrameReceived=!1,this._closeFrameSent=!1,this._closeMessage=s,this._closeTimer=null,this._errorEmitted=!1,this._extensions={},this._paused=!1,this._protocol="",this._readyState=J.CONNECTING,this._receiver=null,this._sender=null,this._socket=null,null!==a?(this._bufferedAmount=0,this._isServer=!1,this._redirects=0,void 0===b?b=[]:Array.isArray(b)||("object"==typeof b&&null!==b?(c=b,b=[]):b=[b]),function a(b,c,d,g){let h,k,l,o,p={allowSynchronousEvents:!0,autoPong:!0,protocolVersion:G[1],maxPayload:0x6400000,skipUTF8Validation:!1,perMessageDeflate:!0,followRedirects:!1,maxRedirects:10,...g,socketPath:void 0,hostname:void 0,protocol:void 0,timeout:void 0,method:"GET",host:void 0,path:void 0,port:void 0};if(b._autoPong=p.autoPong,!G.includes(p.protocolVersion))throw RangeError(`Unsupported protocol version: ${p.protocolVersion} (supported versions: ${G.join(", ")})`);if(c instanceof m)h=c;else try{h=new m(c)}catch(a){throw SyntaxError(`Invalid URL: ${c}`)}"http:"===h.protocol?h.protocol="ws:":"https:"===h.protocol&&(h.protocol="wss:"),b._url=h.href;let q="wss:"===h.protocol,r="ws+unix:"===h.protocol;if("ws:"===h.protocol||q||r?r&&!h.pathname?k="The URL's pathname is empty":h.hash&&(k="The URL contains a fragment identifier"):k='The URL\'s protocol must be one of "ws:", "wss:", "http:", "https:", or "ws+unix:"',k){let a=SyntaxError(k);if(0!==b._redirects)return void K(b,a);throw a}let s=q?443:80,v=i(16).toString("base64"),w=q?e.request:f.request,x=new Set;if(p.createConnection=p.createConnection||(q?M:L),p.defaultPort=p.defaultPort||s,p.port=h.port||s,p.host=h.hostname.startsWith("[")?h.hostname.slice(1,-1):h.hostname,p.headers={...p.headers,"Sec-WebSocket-Version":p.protocolVersion,"Sec-WebSocket-Key":v,Connection:"Upgrade",Upgrade:"websocket"},p.path=h.pathname+h.search,p.timeout=p.handshakeTimeout,p.perMessageDeflate&&(l=new n(!0!==p.perMessageDeflate?p.perMessageDeflate:{},!1,p.maxPayload),p.headers["Sec-WebSocket-Extensions"]=C({[n.extensionName]:l.offer()})),d.length){for(let a of d){if("string"!=typeof a||!I.test(a)||x.has(a))throw SyntaxError("An invalid or duplicated subprotocol was specified");x.add(a)}p.headers["Sec-WebSocket-Protocol"]=d.join(",")}if(p.origin&&(p.protocolVersion<13?p.headers["Sec-WebSocket-Origin"]=p.origin:p.headers.Origin=p.origin),(h.username||h.password)&&(p.auth=`${h.username}:${h.password}`),r){let a=p.path.split(":");p.socketPath=a[0],p.path=a[1]}if(p.followRedirects){if(0===b._redirects){b._originalIpc=r,b._originalSecure=q,b._originalHostOrSocketPath=r?p.socketPath:h.host;let a=g&&g.headers;if(g={...g,headers:{}},a)for(let[b,c]of Object.entries(a))g.headers[b.toLowerCase()]=c}else if(0===b.listenerCount("redirect")){let a=r?!!b._originalIpc&&p.socketPath===b._originalHostOrSocketPath:!b._originalIpc&&h.host===b._originalHostOrSocketPath;a&&(!b._originalSecure||q)||(delete p.headers.authorization,delete p.headers.cookie,a||delete p.headers.host,p.auth=void 0)}p.auth&&!g.headers.authorization&&(g.headers.authorization="Basic "+Buffer.from(p.auth).toString("base64")),o=b._req=w(p),b._redirects&&b.emit("redirect",b.url,o)}else o=b._req=w(p);p.timeout&&o.on("timeout",()=>{N(b,o,"Opening handshake has timed out")}),o.on("error",a=>{null===o||o[F]||(o=b._req=null,K(b,a))}),o.on("response",e=>{let f=e.headers.location,h=e.statusCode;if(f&&p.followRedirects&&h>=300&&h<400){let e;if(++b._redirects>p.maxRedirects)return void N(b,o,"Maximum redirects exceeded");o.abort();try{e=new m(f,c)}catch(a){K(b,SyntaxError(`Invalid URL: ${f}`));return}a(b,e,d,g)}else b.emit("unexpected-response",o,e)||N(b,o,`Unexpected server response: ${e.statusCode}`)}),o.on("upgrade",(a,c,d)=>{let e;if(b.emit("upgrade",a),b.readyState!==J.CONNECTING)return;o=b._req=null;let f=a.headers.upgrade;if(void 0===f||"websocket"!==f.toLowerCase())return void N(b,c,"Invalid Upgrade header");let g=j("sha1").update(v+u).digest("base64");if(a.headers["sec-websocket-accept"]!==g)return void N(b,c,"Invalid Sec-WebSocket-Accept header");let h=a.headers["sec-websocket-protocol"];if(void 0!==h?x.size?x.has(h)||(e="Server sent an invalid subprotocol"):e="Server sent a subprotocol but none was requested":x.size&&(e="Server sent no subprotocol"),e)return void N(b,c,e);h&&(b._protocol=h);let i=a.headers["sec-websocket-extensions"];if(void 0!==i){let a;if(!l)return void N(b,c,"Server sent a Sec-WebSocket-Extensions header but no extension was requested");try{a=D(i)}catch(a){N(b,c,"Invalid Sec-WebSocket-Extensions header");return}let d=Object.keys(a);if(1!==d.length||d[0]!==n.extensionName)return void N(b,c,"Server indicated an extension that was not requested");try{l.accept(a[n.extensionName])}catch(a){N(b,c,"Invalid Sec-WebSocket-Extensions header");return}b._extensions[n.extensionName]=l}b.setSocket(c,d,{allowSynchronousEvents:p.allowSynchronousEvents,generateMask:p.generateMask,maxPayload:p.maxPayload,skipUTF8Validation:p.skipUTF8Validation})}),p.finishRequest?p.finishRequest(o,b):o.end()}(this,a,b,c)):(this._autoPong=c.autoPong,this._isServer=!0)}get binaryType(){return this._binaryType}set binaryType(a){r.includes(a)&&(this._binaryType=a,this._receiver&&(this._receiver._binaryType=a))}get bufferedAmount(){return this._socket?this._socket._writableState.length+this._sender._bufferedBytes:this._bufferedAmount}get extensions(){return Object.keys(this._extensions).join()}get isPaused(){return this._paused}get onclose(){return null}get onerror(){return null}get onopen(){return null}get onmessage(){return null}get protocol(){return this._protocol}get readyState(){return this._readyState}get url(){return this._url}setSocket(a,b,c){let d=new o({allowSynchronousEvents:c.allowSynchronousEvents,binaryType:this.binaryType,extensions:this._extensions,isServer:this._isServer,maxPayload:c.maxPayload,skipUTF8Validation:c.skipUTF8Validation}),e=new p(a,this._extensions,c.generateMask);this._receiver=d,this._sender=e,this._socket=a,d[y]=this,e[y]=this,a[y]=this,d.on("conclude",P),d.on("drain",Q),d.on("error",R),d.on("message",T),d.on("ping",U),d.on("pong",V),e.onerror=X,a.setTimeout&&a.setTimeout(0),a.setNoDelay&&a.setNoDelay(),b.length>0&&a.unshift(b),a.on("close",Z),a.on("data",$),a.on("end",_),a.on("error",aa),this._readyState=J.OPEN,this.emit("open")}emitClose(){if(!this._socket){this._readyState=J.CLOSED,this.emit("close",this._closeCode,this._closeMessage);return}this._extensions[n.extensionName]&&this._extensions[n.extensionName].cleanup(),this._receiver.removeAllListeners(),this._readyState=J.CLOSED,this.emit("close",this._closeCode,this._closeMessage)}close(a,b){if(this.readyState!==J.CLOSED){if(this.readyState===J.CONNECTING)return void N(this,this._req,"WebSocket was closed before the connection was established");if(this.readyState===J.CLOSING){this._closeFrameSent&&(this._closeFrameReceived||this._receiver._writableState.errorEmitted)&&this._socket.end();return}this._readyState=J.CLOSING,this._sender.close(a,b,!this._isServer,a=>{!a&&(this._closeFrameSent=!0,(this._closeFrameReceived||this._receiver._writableState.errorEmitted)&&this._socket.end())}),Y(this)}}pause(){this.readyState!==J.CONNECTING&&this.readyState!==J.CLOSED&&(this._paused=!0,this._socket.pause())}ping(a,b,c){if(this.readyState===J.CONNECTING)throw Error("WebSocket is not open: readyState 0 (CONNECTING)");("function"==typeof a?(c=a,a=b=void 0):"function"==typeof b&&(c=b,b=void 0),"number"==typeof a&&(a=a.toString()),this.readyState!==J.OPEN)?O(this,a,c):(void 0===b&&(b=!this._isServer),this._sender.ping(a||s,b,c))}pong(a,b,c){if(this.readyState===J.CONNECTING)throw Error("WebSocket is not open: readyState 0 (CONNECTING)");("function"==typeof a?(c=a,a=b=void 0):"function"==typeof b&&(c=b,b=void 0),"number"==typeof a&&(a=a.toString()),this.readyState!==J.OPEN)?O(this,a,c):(void 0===b&&(b=!this._isServer),this._sender.pong(a||s,b,c))}resume(){this.readyState!==J.CONNECTING&&this.readyState!==J.CLOSED&&(this._paused=!1,this._receiver._writableState.needDrain||this._socket.resume())}send(a,b,c){if(this.readyState===J.CONNECTING)throw Error("WebSocket is not open: readyState 0 (CONNECTING)");if("function"==typeof b&&(c=b,b={}),"number"==typeof a&&(a=a.toString()),this.readyState!==J.OPEN)return void O(this,a,c);let d={binary:"string"!=typeof a,mask:!this._isServer,compress:!0,fin:!0,...b};this._extensions[n.extensionName]||(d.compress=!1),this._sender.send(a||s,d,c)}terminate(){if(this.readyState!==J.CLOSED){if(this.readyState===J.CONNECTING)return void N(this,this._req,"WebSocket was closed before the connection was established");this._socket&&(this._readyState=J.CLOSING,this._socket.destroy())}}}function K(a,b){a._readyState=J.CLOSING,a._errorEmitted=!0,a.emit("error",b),a.emitClose()}function L(a){return a.path=a.socketPath,g.connect(a)}function M(a){return a.path=void 0,a.servername||""===a.servername||(a.servername=g.isIP(a.host)?"":a.host),h.connect(a)}function N(a,b,c){a._readyState=J.CLOSING;let d=Error(c);Error.captureStackTrace(d,N),b.setHeader?(b[F]=!0,b.abort(),b.socket&&!b.socket.destroyed&&b.socket.destroy(),process.nextTick(K,a,d)):(b.destroy(d),b.once("error",a.emit.bind(a,"error")),b.once("close",a.emitClose.bind(a)))}function O(a,b,c){if(b){let c=q(b)?b.size:E(b).length;a._socket?a._sender._bufferedBytes+=c:a._bufferedAmount+=c}if(c){let b=Error(`WebSocket is not open: readyState ${a.readyState} (${H[a.readyState]})`);process.nextTick(c,b)}}function P(a,b){let c=this[y];c._closeFrameReceived=!0,c._closeMessage=b,c._closeCode=a,void 0!==c._socket[y]&&(c._socket.removeListener("data",$),process.nextTick(W,c._socket),1005===a?c.close():c.close(a,b))}function Q(){let a=this[y];a.isPaused||a._socket.resume()}function R(a){let b=this[y];void 0!==b._socket[y]&&(b._socket.removeListener("data",$),process.nextTick(W,b._socket),b.close(a[x])),b._errorEmitted||(b._errorEmitted=!0,b.emit("error",a))}function S(){this[y].emitClose()}function T(a,b){this[y].emit("message",a,b)}function U(a){let b=this[y];b._autoPong&&b.pong(a,!this._isServer,z),b.emit("ping",a)}function V(a){this[y].emit("pong",a)}function W(a){a.resume()}function X(a){let b=this[y];b.readyState!==J.CLOSED&&(b.readyState===J.OPEN&&(b._readyState=J.CLOSING,Y(b)),this._socket.end(),b._errorEmitted||(b._errorEmitted=!0,b.emit("error",a)))}function Y(a){a._closeTimer=setTimeout(a._socket.destroy.bind(a._socket),3e4)}function Z(){let a,b=this[y];this.removeListener("close",Z),this.removeListener("data",$),this.removeListener("end",_),b._readyState=J.CLOSING,this._readableState.endEmitted||b._closeFrameReceived||b._receiver._writableState.errorEmitted||null===(a=b._socket.read())||b._receiver.write(a),b._receiver.end(),this[y]=void 0,clearTimeout(b._closeTimer),b._receiver._writableState.finished||b._receiver._writableState.errorEmitted?b.emitClose():(b._receiver.on("error",S),b._receiver.on("finish",S))}function $(a){this[y]._receiver.write(a)||this.pause()}function _(){let a=this[y];a._readyState=J.CLOSING,a._receiver.end(),this.end()}function aa(){let a=this[y];this.removeListener("error",aa),this.on("error",z),a&&(a._readyState=J.CLOSING,this.destroy())}Object.defineProperty(J,"CONNECTING",{enumerable:!0,value:H.indexOf("CONNECTING")}),Object.defineProperty(J.prototype,"CONNECTING",{enumerable:!0,value:H.indexOf("CONNECTING")}),Object.defineProperty(J,"OPEN",{enumerable:!0,value:H.indexOf("OPEN")}),Object.defineProperty(J.prototype,"OPEN",{enumerable:!0,value:H.indexOf("OPEN")}),Object.defineProperty(J,"CLOSING",{enumerable:!0,value:H.indexOf("CLOSING")}),Object.defineProperty(J.prototype,"CLOSING",{enumerable:!0,value:H.indexOf("CLOSING")}),Object.defineProperty(J,"CLOSED",{enumerable:!0,value:H.indexOf("CLOSED")}),Object.defineProperty(J.prototype,"CLOSED",{enumerable:!0,value:H.indexOf("CLOSED")}),["binaryType","bufferedAmount","extensions","isPaused","protocol","readyState","url"].forEach(a=>{Object.defineProperty(J.prototype,a,{enumerable:!0})}),["open","error","close","message"].forEach(a=>{Object.defineProperty(J.prototype,`on${a}`,{enumerable:!0,get(){for(let b of this.listeners(a))if(b[v])return b[w];return null},set(b){for(let b of this.listeners(a))if(b[v]){this.removeListener(a,b);break}"function"==typeof b&&this.addEventListener(a,b,{[v]:!0})}})}),J.prototype.addEventListener=A,J.prototype.removeEventListener=B,b.exports=J},57515,(a,b,c)=>{"use strict";a.r(36705);let{Duplex:d}=a.r(88947);function e(a){a.emit("close")}function f(){!this.destroyed&&this._writableState.finished&&this.destroy()}function g(a){this.removeListener("error",g),this.destroy(),0===this.listenerCount("error")&&this.emit("error",a)}b.exports=function(a,b){let c=!0,h=new d({...b,autoDestroy:!1,emitClose:!1,objectMode:!1,writableObjectMode:!1});return a.on("message",function(b,c){let d=!c&&h._readableState.objectMode?b.toString():b;h.push(d)||a.pause()}),a.once("error",function(a){h.destroyed||(c=!1,h.destroy(a))}),a.once("close",function(){h.destroyed||h.push(null)}),h._destroy=function(b,d){if(a.readyState===a.CLOSED){d(b),process.nextTick(e,h);return}let f=!1;a.once("error",function(a){f=!0,d(a)}),a.once("close",function(){f||d(b),process.nextTick(e,h)}),c&&a.terminate()},h._final=function(b){a.readyState===a.CONNECTING?a.once("open",function(){h._final(b)}):null!==a._socket&&(a._socket._writableState.finished?(b(),h._readableState.endEmitted&&h.destroy()):(a._socket.once("finish",function(){b()}),a.close()))},h._read=function(){a.isPaused&&a.resume()},h._write=function(b,c,d){a.readyState===a.CONNECTING?a.once("open",function(){h._write(b,c,d)}):a.send(b,d)},h.on("end",f),h.on("error",g),h}},62219,(a,b,c)=>{"use strict";let{tokenChars:d}=a.r(88686);b.exports={parse:function(a){let b=new Set,c=-1,e=-1,f=0;for(;f<a.length;f++){let g=a.charCodeAt(f);if(-1===e&&1===d[g])-1===c&&(c=f);else if(0!==f&&(32===g||9===g))-1===e&&-1!==c&&(e=f);else if(44===g){if(-1===c)throw SyntaxError(`Unexpected character at index ${f}`);-1===e&&(e=f);let d=a.slice(c,e);if(b.has(d))throw SyntaxError(`The "${d}" subprotocol is duplicated`);b.add(d),c=e=-1}else throw SyntaxError(`Unexpected character at index ${f}`)}if(-1===c||-1!==e)throw SyntaxError("Unexpected end of input");let g=a.slice(c,f);if(b.has(g))throw SyntaxError(`The "${g}" subprotocol is duplicated`);return b.add(g),b}}},67691,(a,b,c)=>{"use strict";let d=a.r(27699),e=a.r(21517),{Duplex:f}=a.r(88947),{createHash:g}=a.r(54799),h=a.r(16193),i=a.r(10976),j=a.r(62219),k=a.r(36705),{GUID:l,kWebSocket:m}=a.r(17376),n=/^[+/0-9A-Za-z]{22}==$/;function o(a){a._state=2,a.emit("close")}function p(){this.destroy()}function q(a,b,c,d){c=c||e.STATUS_CODES[b],d={Connection:"close","Content-Type":"text/html","Content-Length":Buffer.byteLength(c),...d},a.once("finish",a.destroy),a.end(`HTTP/1.1 ${b} ${e.STATUS_CODES[b]}\r
|
|
32
|
-
`+Object.keys(d).map(a=>`${a}: ${d[a]}`).join("\r\n")+"\r\n\r\n"+c)}function r(a,b,c,d,e,f){if(a.listenerCount("wsClientError")){let d=Error(e);Error.captureStackTrace(d,r),a.emit("wsClientError",d,c,b)}else q(c,d,e,f)}b.exports=class extends d{constructor(a,b){if(super(),null==(a={allowSynchronousEvents:!0,autoPong:!0,maxPayload:0x6400000,skipUTF8Validation:!1,perMessageDeflate:!1,handleProtocols:null,clientTracking:!0,verifyClient:null,noServer:!1,backlog:null,server:null,host:null,path:null,port:null,WebSocket:k,...a}).port&&!a.server&&!a.noServer||null!=a.port&&(a.server||a.noServer)||a.server&&a.noServer)throw TypeError('One and only one of the "port", "server", or "noServer" options must be specified');if(null!=a.port?(this._server=e.createServer((a,b)=>{let c=e.STATUS_CODES[426];b.writeHead(426,{"Content-Length":c.length,"Content-Type":"text/plain"}),b.end(c)}),this._server.listen(a.port,a.host,a.backlog,b)):a.server&&(this._server=a.server),this._server){const a=this.emit.bind(this,"connection");this._removeListeners=function(a,b){for(let c of Object.keys(b))a.on(c,b[c]);return function(){for(let c of Object.keys(b))a.removeListener(c,b[c])}}(this._server,{listening:this.emit.bind(this,"listening"),error:this.emit.bind(this,"error"),upgrade:(b,c,d)=>{this.handleUpgrade(b,c,d,a)}})}!0===a.perMessageDeflate&&(a.perMessageDeflate={}),a.clientTracking&&(this.clients=new Set,this._shouldEmitClose=!1),this.options=a,this._state=0}address(){if(this.options.noServer)throw Error('The server is operating in "noServer" mode');return this._server?this._server.address():null}close(a){if(2===this._state){a&&this.once("close",()=>{a(Error("The server is not running"))}),process.nextTick(o,this);return}if(a&&this.once("close",a),1!==this._state)if(this._state=1,this.options.noServer||this.options.server)this._server&&(this._removeListeners(),this._removeListeners=this._server=null),this.clients&&this.clients.size?this._shouldEmitClose=!0:process.nextTick(o,this);else{let a=this._server;this._removeListeners(),this._removeListeners=this._server=null,a.close(()=>{o(this)})}}shouldHandle(a){if(this.options.path){let b=a.url.indexOf("?");if((-1!==b?a.url.slice(0,b):a.url)!==this.options.path)return!1}return!0}handleUpgrade(a,b,c,d){b.on("error",p);let e=a.headers["sec-websocket-key"],f=a.headers.upgrade,g=+a.headers["sec-websocket-version"];if("GET"!==a.method)return void r(this,a,b,405,"Invalid HTTP method");if(void 0===f||"websocket"!==f.toLowerCase())return void r(this,a,b,400,"Invalid Upgrade header");if(void 0===e||!n.test(e))return void r(this,a,b,400,"Missing or invalid Sec-WebSocket-Key header");if(13!==g&&8!==g)return void r(this,a,b,400,"Missing or invalid Sec-WebSocket-Version header",{"Sec-WebSocket-Version":"13, 8"});if(!this.shouldHandle(a))return void q(b,400);let k=a.headers["sec-websocket-protocol"],l=new Set;if(void 0!==k)try{l=j.parse(k)}catch(c){r(this,a,b,400,"Invalid Sec-WebSocket-Protocol header");return}let m=a.headers["sec-websocket-extensions"],o={};if(this.options.perMessageDeflate&&void 0!==m){let c=new i(this.options.perMessageDeflate,!0,this.options.maxPayload);try{let a=h.parse(m);a[i.extensionName]&&(c.accept(a[i.extensionName]),o[i.extensionName]=c)}catch(c){r(this,a,b,400,"Invalid or unacceptable Sec-WebSocket-Extensions header");return}}if(this.options.verifyClient){let f={origin:a.headers[`${8===g?"sec-websocket-origin":"origin"}`],secure:!!(a.socket.authorized||a.socket.encrypted),req:a};if(2===this.options.verifyClient.length)return void this.options.verifyClient(f,(f,g,h,i)=>{if(!f)return q(b,g||401,h,i);this.completeUpgrade(o,e,l,a,b,c,d)});if(!this.options.verifyClient(f))return q(b,401)}this.completeUpgrade(o,e,l,a,b,c,d)}completeUpgrade(a,b,c,d,e,f,j){if(!e.readable||!e.writable)return e.destroy();if(e[m])throw Error("server.handleUpgrade() was called more than once with the same socket, possibly due to a misconfiguration");if(this._state>0)return q(e,503);let k=g("sha1").update(b+l).digest("base64"),n=["HTTP/1.1 101 Switching Protocols","Upgrade: websocket","Connection: Upgrade",`Sec-WebSocket-Accept: ${k}`],r=new this.options.WebSocket(null,void 0,this.options);if(c.size){let a=this.options.handleProtocols?this.options.handleProtocols(c,d):c.values().next().value;a&&(n.push(`Sec-WebSocket-Protocol: ${a}`),r._protocol=a)}if(a[i.extensionName]){let b=a[i.extensionName].params,c=h.format({[i.extensionName]:[b]});n.push(`Sec-WebSocket-Extensions: ${c}`),r._extensions=a}this.emit("headers",n,d),e.write(n.concat("\r\n").join("\r\n")),e.removeListener("error",p),r.setSocket(e,f,{allowSynchronousEvents:this.options.allowSynchronousEvents,maxPayload:this.options.maxPayload,skipUTF8Validation:this.options.skipUTF8Validation}),this.clients&&(this.clients.add(r),r.on("close",()=>{this.clients.delete(r),this._shouldEmitClose&&!this.clients.size&&process.nextTick(o,this)})),j(r,d)}}},83915,a=>{"use strict";let b,c,d;var e,f,g=a.i(63047);let h=Object.create(null);h.open="0",h.close="1",h.ping="2",h.pong="3",h.message="4",h.upgrade="5",h.noop="6";let i=Object.create(null);Object.keys(h).forEach(a=>{i[h[a]]=a});let j={type:"error",data:"parser error"},k=({type:a,data:b},c,d)=>d(b instanceof ArrayBuffer||ArrayBuffer.isView(b)?c?b:"b"+l(b,!0).toString("base64"):h[a]+(b||"")),l=(a,b)=>Buffer.isBuffer(a)||a instanceof Uint8Array&&!b?a:a instanceof ArrayBuffer?Buffer.from(a):Buffer.from(a.buffer,a.byteOffset,a.byteLength),m=(a,b)=>{if("string"!=typeof a)return{type:"message",data:n(a,b)};let c=a.charAt(0);return"b"===c?{type:"message",data:n(Buffer.from(a.substring(1),"base64"),b)}:i[c]?a.length>1?{type:i[c],data:a.substring(1)}:{type:i[c]}:j},n=(a,b)=>"arraybuffer"===b?a instanceof ArrayBuffer?a:Buffer.isBuffer(a)?a.buffer.slice(a.byteOffset,a.byteOffset+a.byteLength):a.buffer:Buffer.isBuffer(a)?a:Buffer.from(a);function o(a){return a.reduce((a,b)=>a+b.length,0)}function p(a,b){if(a[0].length===b)return a.shift();let c=new Uint8Array(b),d=0;for(let e=0;e<b;e++)c[e]=a[0][d++],d===a[0].length&&(a.shift(),d=0);return a.length&&d<a[0].length&&(a[0]=a[0].slice(d)),c}function q(a){if(a){var b=a;for(var c in q.prototype)b[c]=q.prototype[c];return b}}q.prototype.on=q.prototype.addEventListener=function(a,b){return this._callbacks=this._callbacks||{},(this._callbacks["$"+a]=this._callbacks["$"+a]||[]).push(b),this},q.prototype.once=function(a,b){function c(){this.off(a,c),b.apply(this,arguments)}return c.fn=b,this.on(a,c),this},q.prototype.off=q.prototype.removeListener=q.prototype.removeAllListeners=q.prototype.removeEventListener=function(a,b){if(this._callbacks=this._callbacks||{},0==arguments.length)return this._callbacks={},this;var c,d=this._callbacks["$"+a];if(!d)return this;if(1==arguments.length)return delete this._callbacks["$"+a],this;for(var e=0;e<d.length;e++)if((c=d[e])===b||c.fn===b){d.splice(e,1);break}return 0===d.length&&delete this._callbacks["$"+a],this},q.prototype.emit=function(a){this._callbacks=this._callbacks||{};for(var b=Array(arguments.length-1),c=this._callbacks["$"+a],d=1;d<arguments.length;d++)b[d-1]=arguments[d];if(c){c=c.slice(0);for(var d=0,e=c.length;d<e;++d)c[d].apply(this,b)}return this},q.prototype.emitReserved=q.prototype.emit,q.prototype.listeners=function(a){return this._callbacks=this._callbacks||{},this._callbacks["$"+a]||[]},q.prototype.hasListeners=function(a){return!!this.listeners(a).length};let r=process.nextTick,s=a.g;class u{constructor(){this._cookies=new Map}parseCookies(a){a&&a.forEach(a=>{let b=function(a){let b=a.split("; "),c=b[0].indexOf("=");if(-1===c)return;let d=b[0].substring(0,c).trim();if(!d.length)return;let e=b[0].substring(c+1).trim();34===e.charCodeAt(0)&&(e=e.slice(1,-1));let f={name:d,value:e};for(let a=1;a<b.length;a++){let c=b[a].split("=");if(2!==c.length)continue;let d=c[0].trim(),e=c[1].trim();switch(d){case"Expires":f.expires=new Date(e);break;case"Max-Age":let g=new Date;g.setUTCSeconds(g.getUTCSeconds()+parseInt(e,10)),f.expires=g}}return f}(a);b&&this._cookies.set(b.name,b)})}get cookies(){let a=Date.now();return this._cookies.forEach((b,c)=>{var d;(null==(d=b.expires)?void 0:d.getTime())<a&&this._cookies.delete(c)}),this._cookies.entries()}addCookies(a){let b=[];for(let[a,c]of this.cookies)b.push(`${a}=${c.value}`);b.length&&(a.setDisableHeaderCheck(!0),a.setRequestHeader("cookie",b.join("; ")))}appendCookies(a){for(let[b,c]of this.cookies)a.append("cookie",`${b}=${c.value}`)}}function v(a,...b){return b.reduce((b,c)=>(a.hasOwnProperty(c)&&(b[c]=a[c]),b),{})}let w=s.setTimeout,x=s.clearTimeout;function y(a,b){b.useNativeTimers?(a.setTimeoutFn=w.bind(s),a.clearTimeoutFn=x.bind(s)):(a.setTimeoutFn=s.setTimeout.bind(s),a.clearTimeoutFn=s.clearTimeout.bind(s))}function z(){return Date.now().toString(36).substring(3)+Math.random().toString(36).substring(2,5)}var A=a.i(35290);let B=(0,A.default)("engine.io-client:transport");class C extends Error{constructor(a,b,c){super(a),this.description=b,this.context=c,this.type="TransportError"}}class D extends q{constructor(a){super(),this.writable=!1,y(this,a),this.opts=a,this.query=a.query,this.socket=a.socket,this.supportsBinary=!a.forceBase64}onError(a,b,c){return super.emitReserved("error",new C(a,b,c)),this}open(){return this.readyState="opening",this.doOpen(),this}close(){return("opening"===this.readyState||"open"===this.readyState)&&(this.doClose(),this.onClose()),this}send(a){"open"===this.readyState?this.write(a):B("transport is not open, discarding packets")}onOpen(){this.readyState="open",this.writable=!0,super.emitReserved("open")}onData(a){let b=m(a,this.socket.binaryType);this.onPacket(b)}onPacket(a){super.emitReserved("packet",a)}onClose(a){this.readyState="closed",super.emitReserved("close",a)}pause(a){}createUri(a,b={}){return a+"://"+this._hostname()+this._port()+this.opts.path+this._query(b)}_hostname(){let a=this.opts.hostname;return -1===a.indexOf(":")?a:"["+a+"]"}_port(){return this.opts.port&&(this.opts.secure&&443!==Number(this.opts.port)||!this.opts.secure&&80!==Number(this.opts.port))?":"+this.opts.port:""}_query(a){let b=function(a){let b="";for(let c in a)a.hasOwnProperty(c)&&(b.length&&(b+="&"),b+=encodeURIComponent(c)+"="+encodeURIComponent(a[c]));return b}(a);return b.length?"?"+b:""}}let E=(0,A.default)("engine.io-client:polling");class F extends D{constructor(){super(...arguments),this._polling=!1}get name(){return"polling"}doOpen(){this._poll()}pause(a){this.readyState="pausing";let b=()=>{E("paused"),this.readyState="paused",a()};if(this._polling||!this.writable){let a=0;this._polling&&(E("we are currently polling - waiting to pause"),a++,this.once("pollComplete",function(){E("pre-pause polling complete"),--a||b()})),this.writable||(E("we are currently writing - waiting to pause"),a++,this.once("drain",function(){E("pre-pause writing complete"),--a||b()}))}else b()}_poll(){E("polling"),this._polling=!0,this.doPoll(),this.emitReserved("poll")}onData(a){E("polling got data %s",a);let b=a=>{if("opening"===this.readyState&&"open"===a.type&&this.onOpen(),"close"===a.type)return this.onClose({description:"transport closed by the server"}),!1;this.onPacket(a)};((a,b)=>{let c=a.split("\x1e"),d=[];for(let a=0;a<c.length;a++){let e=m(c[a],b);if(d.push(e),"error"===e.type)break}return d})(a,this.socket.binaryType).forEach(b),"closed"!==this.readyState&&(this._polling=!1,this.emitReserved("pollComplete"),"open"===this.readyState?this._poll():E('ignoring poll - transport state "%s"',this.readyState))}doClose(){let a=()=>{E("writing close packet"),this.write([{type:"close"}])};"open"===this.readyState?(E("transport open - closing"),a()):(E("transport not open - deferring close"),this.once("open",a))}write(a){var b;let c,d,e;this.writable=!1,b=a=>{this.doWrite(a,()=>{this.writable=!0,this.emitReserved("drain")})},d=Array(c=a.length),e=0,a.forEach((a,f)=>{k(a,!1,a=>{d[f]=a,++e===c&&b(d.join("\x1e"))})})}uri(){let a=this.opts.secure?"https":"http",b=this.query||{};return!1!==this.opts.timestampRequests&&(b[this.opts.timestampParam]=z()),this.supportsBinary||b.sid||(b.b64=1),this.createUri(a,b)}}let G=!1;try{G="u">typeof XMLHttpRequest&&"withCredentials"in new XMLHttpRequest}catch(a){}let H=G,I=(0,A.default)("engine.io-client:polling");function J(){}class K extends F{constructor(a){if(super(a),"u">typeof location){const b="https:"===location.protocol;let c=location.port;c||(c=b?"443":"80"),this.xd="u">typeof location&&a.hostname!==location.hostname||c!==a.port}}doWrite(a,b){let c=this.request({method:"POST",data:a});c.on("success",b),c.on("error",(a,b)=>{this.onError("xhr post error",a,b)})}doPoll(){I("xhr poll");let a=this.request();a.on("data",this.onData.bind(this)),a.on("error",(a,b)=>{this.onError("xhr poll error",a,b)}),this.pollXhr=a}}class L extends q{constructor(a,b,c){super(),this.createRequest=a,y(this,c),this._opts=c,this._method=c.method||"GET",this._uri=b,this._data=void 0!==c.data?c.data:null,this._create()}_create(){var a;let b=v(this._opts,"agent","pfx","key","passphrase","cert","ca","ciphers","rejectUnauthorized","autoUnref");b.xdomain=!!this._opts.xd;let c=this._xhr=this.createRequest(b);try{I("xhr open %s: %s",this._method,this._uri),c.open(this._method,this._uri,!0);try{if(this._opts.extraHeaders)for(let a in c.setDisableHeaderCheck&&c.setDisableHeaderCheck(!0),this._opts.extraHeaders)this._opts.extraHeaders.hasOwnProperty(a)&&c.setRequestHeader(a,this._opts.extraHeaders[a])}catch(a){}if("POST"===this._method)try{c.setRequestHeader("Content-type","text/plain;charset=UTF-8")}catch(a){}try{c.setRequestHeader("Accept","*/*")}catch(a){}null==(a=this._opts.cookieJar)||a.addCookies(c),"withCredentials"in c&&(c.withCredentials=this._opts.withCredentials),this._opts.requestTimeout&&(c.timeout=this._opts.requestTimeout),c.onreadystatechange=()=>{var a;3===c.readyState&&(null==(a=this._opts.cookieJar)||a.parseCookies(c.getResponseHeader("set-cookie"))),4===c.readyState&&(200===c.status||1223===c.status?this._onLoad():this.setTimeoutFn(()=>{this._onError("number"==typeof c.status?c.status:0)},0))},I("xhr data %s",this._data),c.send(this._data)}catch(a){this.setTimeoutFn(()=>{this._onError(a)},0);return}"u">typeof document&&(this._index=L.requestsCount++,L.requests[this._index]=this)}_onError(a){this.emitReserved("error",a,this._xhr),this._cleanup(!0)}_cleanup(a){if(void 0!==this._xhr&&null!==this._xhr){if(this._xhr.onreadystatechange=J,a)try{this._xhr.abort()}catch(a){}"u">typeof document&&delete L.requests[this._index],this._xhr=null}}_onLoad(){let a=this._xhr.responseText;null!==a&&(this.emitReserved("data",a),this.emitReserved("success"),this._cleanup())}abort(){this._cleanup()}}function M(){for(let a in L.requests)L.requests.hasOwnProperty(a)&&L.requests[a].abort()}L.requestsCount=0,L.requests={},"u">typeof document&&("function"==typeof attachEvent?attachEvent("onunload",M):"function"==typeof addEventListener&&addEventListener("onpagehide"in s?"pagehide":"unload",M,!1)),(d=function(a){let b=a.xdomain;try{if("u">typeof XMLHttpRequest&&(!b||H))return new XMLHttpRequest}catch(a){}if(!b)try{return new s[["Active"].concat("Object").join("X")]("Microsoft.XMLHTTP")}catch(a){}}({xdomain:!1}))&&d.responseType;let N=g.default||g;a.i(57515),a.i(64386),a.i(71387);var O=a.i(36705);a.i(67691),O.default;let P=(0,A.default)("engine.io-client:websocket"),Q="u">typeof navigator&&"string"==typeof navigator.product&&"reactnative"===navigator.product.toLowerCase();class R extends D{get name(){return"websocket"}doOpen(){let a=this.uri(),b=this.opts.protocols,c=Q?{}:v(this.opts,"agent","perMessageDeflate","pfx","key","passphrase","cert","ca","ciphers","rejectUnauthorized","localAddress","protocolVersion","origin","maxPayload","family","checkServerIdentity");this.opts.extraHeaders&&(c.headers=this.opts.extraHeaders);try{this.ws=this.createSocket(a,b,c)}catch(a){return this.emitReserved("error",a)}this.ws.binaryType=this.socket.binaryType,this.addEventListeners()}addEventListeners(){this.ws.onopen=()=>{this.opts.autoUnref&&this.ws._socket.unref(),this.onOpen()},this.ws.onclose=a=>this.onClose({description:"websocket connection closed",context:a}),this.ws.onmessage=a=>this.onData(a.data),this.ws.onerror=a=>this.onError("websocket error",a)}write(a){this.writable=!1;for(let b=0;b<a.length;b++){let c=a[b],d=b===a.length-1;k(c,this.supportsBinary,a=>{try{this.doWrite(c,a)}catch(a){P("websocket closed before onclose event")}d&&r(()=>{this.writable=!0,this.emitReserved("drain")},this.setTimeoutFn)})}}doClose(){void 0!==this.ws&&(this.ws.onerror=()=>{},this.ws.close(),this.ws=null)}uri(){let a=this.opts.secure?"wss":"ws",b=this.query||{};return this.opts.timestampRequests&&(b[this.opts.timestampParam]=z()),this.supportsBinary||(b.b64=1),this.createUri(a,b)}}s.WebSocket||s.MozWebSocket;let S=(0,A.default)("engine.io-client:webtransport"),T={websocket:class extends R{createSocket(a,b,c){var d;if(null==(d=this.socket)?void 0:d._cookieJar)for(let[a,b]of(c.headers=c.headers||{},c.headers.cookie="string"==typeof c.headers.cookie?[c.headers.cookie]:c.headers.cookie||[],this.socket._cookieJar.cookies))c.headers.cookie.push(`${a}=${b.value}`);return new O.default(a,b,c)}doWrite(a,b){let c={};a.options&&(c.compress=a.options.compress),this.opts.perMessageDeflate&&("string"==typeof b?Buffer.byteLength(b):b.length)<this.opts.perMessageDeflate.threshold&&(c.compress=!1),this.ws.send(b,c)}},webtransport:class extends D{get name(){return"webtransport"}doOpen(){try{this._transport=new WebTransport(this.createUri("https"),this.opts.transportOptions[this.name])}catch(a){return this.emitReserved("error",a)}this._transport.closed.then(()=>{S("transport closed gracefully"),this.onClose()}).catch(a=>{S("transport closed due to %s",a),this.onError("webtransport error",a)}),this._transport.ready.then(()=>{this._transport.createBidirectionalStream().then(a=>{var d,e;let f,g,h,i,n=(d=Number.MAX_SAFE_INTEGER,e=this.socket.binaryType,c||(c=new TextDecoder),f=[],g=0,h=-1,i=!1,new TransformStream({transform(a,b){for(f.push(a);;){if(0===g){if(1>o(f))break;let a=p(f,1);i=(128&a[0])==128,g=(h=127&a[0])<126?3:126===h?1:2}else if(1===g){if(2>o(f))break;let a=p(f,2);h=new DataView(a.buffer,a.byteOffset,a.length).getUint16(0),g=3}else if(2===g){if(8>o(f))break;let a=p(f,8),c=new DataView(a.buffer,a.byteOffset,a.length),d=c.getUint32(0);if(d>2097151){b.enqueue(j);break}h=0x100000000*d+c.getUint32(4),g=3}else{if(o(f)<h)break;let a=p(f,h);b.enqueue(m(i?a:c.decode(a),e)),g=0}if(0===h||h>d){b.enqueue(j);break}}}})),q=a.readable.pipeThrough(n).getReader(),r=new TransformStream({transform(a,c){!function(a,c){if(a.data instanceof ArrayBuffer||ArrayBuffer.isView(a.data))return c(l(a.data,!1));k(a,!0,a=>{b||(b=new TextEncoder),c(b.encode(a))})}(a,b=>{let d,e=b.length;if(e<126)new DataView((d=new Uint8Array(1)).buffer).setUint8(0,e);else if(e<65536){let a=new DataView((d=new Uint8Array(3)).buffer);a.setUint8(0,126),a.setUint16(1,e)}else{let a=new DataView((d=new Uint8Array(9)).buffer);a.setUint8(0,127),a.setBigUint64(1,BigInt(e))}a.data&&"string"!=typeof a.data&&(d[0]|=128),c.enqueue(d),c.enqueue(b)})}});r.readable.pipeTo(a.writable),this._writer=r.writable.getWriter();let s=()=>{q.read().then(({done:a,value:b})=>{a?S("session is closed"):(S("received chunk: %o",b),this.onPacket(b),s())}).catch(a=>{S("an error occurred while reading: %s",a)})};s();let u={type:"open"};this.query.sid&&(u.data=`{"sid":"${this.query.sid}"}`),this._writer.write(u).then(()=>this.onOpen())})})}write(a){this.writable=!1;for(let b=0;b<a.length;b++){let c=a[b],d=b===a.length-1;this._writer.write(c).then(()=>{d&&r(()=>{this.writable=!0,this.emitReserved("drain")},this.setTimeoutFn)})}}doClose(){var a;null==(a=this._transport)||a.close()}},polling:class extends K{request(a={}){var b;return Object.assign(a,{xd:this.xd,cookieJar:null==(b=this.socket)?void 0:b._cookieJar},this.opts),new L(a=>new N(a),this.uri(),a)}}},U=/^(?:(?![^:@\/?#]+:[^:@\/]*@)(http|https|ws|wss):\/\/)?((?:(([^:@\/?#]*)(?::([^:@\/?#]*))?)?@)?((?:[a-f0-9]{0,4}:){2,7}[a-f0-9]{0,4}|[^:\/?#]*)(?::(\d*))?)(((\/(?:[^?#](?![^?#\/]*\.[^?#\/.]+(?:[?#]|$)))*\/?)?([^?#\/]*))(?:\?([^#]*))?(?:#(.*))?)/,V=["source","protocol","authority","userInfo","user","password","host","port","relative","path","directory","file","query","anchor"];function W(a){var b,c;let d,e;if(a.length>8e3)throw"URI too long";let f=a,g=a.indexOf("["),h=a.indexOf("]");-1!=g&&-1!=h&&(a=a.substring(0,g)+a.substring(g,h).replace(/:/g,";")+a.substring(h,a.length));let i=U.exec(a||""),j={},k=14;for(;k--;)j[V[k]]=i[k]||"";return -1!=g&&-1!=h&&(j.source=f,j.host=j.host.substring(1,j.host.length-1).replace(/;/g,":"),j.authority=j.authority.replace("[","").replace("]","").replace(/;/g,":"),j.ipv6uri=!0),d=(b=j.path).replace(/\/{2,9}/g,"/").split("/"),("/"==b.slice(0,1)||0===b.length)&&d.splice(0,1),"/"==b.slice(-1)&&d.splice(d.length-1,1),j.pathNames=d,c=j.query,e={},c.replace(/(?:^|&)([^&=]*)=?([^&]*)/g,function(a,b,c){b&&(e[b]=c)}),j.queryKey=e,j}let X=(0,A.default)("engine.io-client:socket"),Y="function"==typeof addEventListener&&"function"==typeof removeEventListener,Z=[];Y&&addEventListener("offline",()=>{X("closing %d connection(s) because the network was lost",Z.length),Z.forEach(a=>a())},!1);class $ extends q{constructor(a,b){if(super(),this.binaryType="nodebuffer",this.writeBuffer=[],this._prevBufferLen=0,this._pingInterval=-1,this._pingTimeout=-1,this._maxPayload=-1,this._pingTimeoutTime=1/0,a&&"object"==typeof a&&(b=a,a=null),a){const c=W(a);b.hostname=c.host,b.secure="https"===c.protocol||"wss"===c.protocol,b.port=c.port,c.query&&(b.query=c.query)}else b.host&&(b.hostname=W(b.host).host);y(this,b),this.secure=null!=b.secure?b.secure:"u">typeof location&&"https:"===location.protocol,b.hostname&&!b.port&&(b.port=this.secure?"443":"80"),this.hostname=b.hostname||("u">typeof location?location.hostname:"localhost"),this.port=b.port||("u">typeof location&&location.port?location.port:this.secure?"443":"80"),this.transports=[],this._transportsByName={},b.transports.forEach(a=>{let b=a.prototype.name;this.transports.push(b),this._transportsByName[b]=a}),this.opts=Object.assign({path:"/engine.io",agent:!1,withCredentials:!1,upgrade:!0,timestampParam:"t",rememberUpgrade:!1,addTrailingSlash:!0,rejectUnauthorized:!0,perMessageDeflate:{threshold:1024},transportOptions:{},closeOnBeforeunload:!1},b),this.opts.path=this.opts.path.replace(/\/$/,"")+(this.opts.addTrailingSlash?"/":""),"string"==typeof this.opts.query&&(this.opts.query=function(a){let b={},c=a.split("&");for(let a=0,d=c.length;a<d;a++){let d=c[a].split("=");b[decodeURIComponent(d[0])]=decodeURIComponent(d[1])}return b}(this.opts.query)),Y&&(this.opts.closeOnBeforeunload&&(this._beforeunloadEventListener=()=>{this.transport&&(this.transport.removeAllListeners(),this.transport.close())},addEventListener("beforeunload",this._beforeunloadEventListener,!1)),"localhost"!==this.hostname&&(X("adding listener for the 'offline' event"),this._offlineEventListener=()=>{this._onClose("transport close",{description:"network connection lost"})},Z.push(this._offlineEventListener))),this.opts.withCredentials&&(this._cookieJar=new u),this._open()}createTransport(a){X('creating transport "%s"',a);let b=Object.assign({},this.opts.query);b.EIO=4,b.transport=a,this.id&&(b.sid=this.id);let c=Object.assign({},this.opts,{query:b,socket:this,hostname:this.hostname,secure:this.secure,port:this.port},this.opts.transportOptions[a]);return X("options: %j",c),new this._transportsByName[a](c)}_open(){if(0===this.transports.length)return void this.setTimeoutFn(()=>{this.emitReserved("error","No transports available")},0);let a=this.opts.rememberUpgrade&&$.priorWebsocketSuccess&&-1!==this.transports.indexOf("websocket")?"websocket":this.transports[0];this.readyState="opening";let b=this.createTransport(a);b.open(),this.setTransport(b)}setTransport(a){X("setting transport %s",a.name),this.transport&&(X("clearing existing transport %s",this.transport.name),this.transport.removeAllListeners()),this.transport=a,a.on("drain",this._onDrain.bind(this)).on("packet",this._onPacket.bind(this)).on("error",this._onError.bind(this)).on("close",a=>this._onClose("transport close",a))}onOpen(){X("socket open"),this.readyState="open",$.priorWebsocketSuccess="websocket"===this.transport.name,this.emitReserved("open"),this.flush()}_onPacket(a){if("opening"===this.readyState||"open"===this.readyState||"closing"===this.readyState)switch(X('socket receive: type "%s", data "%s"',a.type,a.data),this.emitReserved("packet",a),this.emitReserved("heartbeat"),a.type){case"open":this.onHandshake(JSON.parse(a.data));break;case"ping":this._sendPacket("pong"),this.emitReserved("ping"),this.emitReserved("pong"),this._resetPingTimeout();break;case"error":let b=Error("server error");b.code=a.data,this._onError(b);break;case"message":this.emitReserved("data",a.data),this.emitReserved("message",a.data)}else X('packet received with socket readyState "%s"',this.readyState)}onHandshake(a){this.emitReserved("handshake",a),this.id=a.sid,this.transport.query.sid=a.sid,this._pingInterval=a.pingInterval,this._pingTimeout=a.pingTimeout,this._maxPayload=a.maxPayload,this.onOpen(),"closed"!==this.readyState&&this._resetPingTimeout()}_resetPingTimeout(){this.clearTimeoutFn(this._pingTimeoutTimer);let a=this._pingInterval+this._pingTimeout;this._pingTimeoutTime=Date.now()+a,this._pingTimeoutTimer=this.setTimeoutFn(()=>{this._onClose("ping timeout")},a),this.opts.autoUnref&&this._pingTimeoutTimer.unref()}_onDrain(){this.writeBuffer.splice(0,this._prevBufferLen),this._prevBufferLen=0,0===this.writeBuffer.length?this.emitReserved("drain"):this.flush()}flush(){if("closed"!==this.readyState&&this.transport.writable&&!this.upgrading&&this.writeBuffer.length){let a=this._getWritablePackets();X("flushing %d packets in socket",a.length),this.transport.send(a),this._prevBufferLen=a.length,this.emitReserved("flush")}}_getWritablePackets(){if(!(this._maxPayload&&"polling"===this.transport.name&&this.writeBuffer.length>1))return this.writeBuffer;let a=1;for(let b=0;b<this.writeBuffer.length;b++){let c=this.writeBuffer[b].data;if(c&&(a+="string"==typeof c?function(a){let b=0,c=0;for(let d=0,e=a.length;d<e;d++)(b=a.charCodeAt(d))<128?c+=1:b<2048?c+=2:b<55296||b>=57344?c+=3:(d++,c+=4);return c}(c):Math.ceil(1.33*(c.byteLength||c.size))),b>0&&a>this._maxPayload)return X("only send %d out of %d packets",b,this.writeBuffer.length),this.writeBuffer.slice(0,b);a+=2}return X("payload size is %d (max: %d)",a,this._maxPayload),this.writeBuffer}_hasPingExpired(){if(!this._pingTimeoutTime)return!0;let a=Date.now()>this._pingTimeoutTime;return a&&(X("throttled timer detected, scheduling connection close"),this._pingTimeoutTime=0,r(()=>{this._onClose("ping timeout")},this.setTimeoutFn)),a}write(a,b,c){return this._sendPacket("message",a,b,c),this}send(a,b,c){return this._sendPacket("message",a,b,c),this}_sendPacket(a,b,c,d){if("function"==typeof b&&(d=b,b=void 0),"function"==typeof c&&(d=c,c=null),"closing"===this.readyState||"closed"===this.readyState)return;(c=c||{}).compress=!1!==c.compress;let e={type:a,data:b,options:c};this.emitReserved("packetCreate",e),this.writeBuffer.push(e),d&&this.once("flush",d),this.flush()}close(){let a=()=>{this._onClose("forced close"),X("socket closing - telling transport to close"),this.transport.close()},b=()=>{this.off("upgrade",b),this.off("upgradeError",b),a()},c=()=>{this.once("upgrade",b),this.once("upgradeError",b)};return("opening"===this.readyState||"open"===this.readyState)&&(this.readyState="closing",this.writeBuffer.length?this.once("drain",()=>{this.upgrading?c():a()}):this.upgrading?c():a()),this}_onError(a){if(X("socket error %j",a),$.priorWebsocketSuccess=!1,this.opts.tryAllTransports&&this.transports.length>1&&"opening"===this.readyState)return X("trying next transport"),this.transports.shift(),this._open();this.emitReserved("error",a),this._onClose("transport error",a)}_onClose(a,b){if("opening"===this.readyState||"open"===this.readyState||"closing"===this.readyState){if(X('socket close with reason: "%s"',a),this.clearTimeoutFn(this._pingTimeoutTimer),this.transport.removeAllListeners("close"),this.transport.close(),this.transport.removeAllListeners(),Y&&(this._beforeunloadEventListener&&removeEventListener("beforeunload",this._beforeunloadEventListener,!1),this._offlineEventListener)){let a=Z.indexOf(this._offlineEventListener);-1!==a&&(X("removing listener for the 'offline' event"),Z.splice(a,1))}this.readyState="closed",this.id=null,this.emitReserved("close",a,b),this.writeBuffer=[],this._prevBufferLen=0}}}$.protocol=4;class _ extends ${constructor(){super(...arguments),this._upgrades=[]}onOpen(){if(super.onOpen(),"open"===this.readyState&&this.opts.upgrade){X("starting upgrade probes");for(let a=0;a<this._upgrades.length;a++)this._probe(this._upgrades[a])}}_probe(a){X('probing transport "%s"',a);let b=this.createTransport(a),c=!1;$.priorWebsocketSuccess=!1;let d=()=>{c||(X('probe transport "%s" opened',a),b.send([{type:"ping",data:"probe"}]),b.once("packet",d=>{if(!c)if("pong"===d.type&&"probe"===d.data){if(X('probe transport "%s" pong',a),this.upgrading=!0,this.emitReserved("upgrading",b),!b)return;$.priorWebsocketSuccess="websocket"===b.name,X('pausing current transport "%s"',this.transport.name),this.transport.pause(()=>{c||"closed"!==this.readyState&&(X("changing transport and sending upgrade packet"),j(),this.setTransport(b),b.send([{type:"upgrade"}]),this.emitReserved("upgrade",b),b=null,this.upgrading=!1,this.flush())})}else{X('probe transport "%s" failed',a);let c=Error("probe error");c.transport=b.name,this.emitReserved("upgradeError",c)}}))};function e(){c||(c=!0,j(),b.close(),b=null)}let f=c=>{let d=Error("probe error: "+c);d.transport=b.name,e(),X('probe transport "%s" failed because of error: %s',a,c),this.emitReserved("upgradeError",d)};function g(){f("transport closed")}function h(){f("socket closed")}function i(a){b&&a.name!==b.name&&(X('"%s" works - aborting "%s"',a.name,b.name),e())}let j=()=>{b.removeListener("open",d),b.removeListener("error",f),b.removeListener("close",g),this.off("close",h),this.off("upgrading",i)};b.once("open",d),b.once("error",f),b.once("close",g),this.once("close",h),this.once("upgrading",i),-1!==this._upgrades.indexOf("webtransport")&&"webtransport"!==a?this.setTimeoutFn(()=>{c||b.open()},200):b.open()}onHandshake(a){this._upgrades=this._filterUpgrades(a.upgrades),super.onHandshake(a)}_filterUpgrades(a){let b=[];for(let c=0;c<a.length;c++)~this.transports.indexOf(a[c])&&b.push(a[c]);return b}}class aa extends _{constructor(a,b={}){const c="object"==typeof a?a:b;(!c.transports||c.transports&&"string"==typeof c.transports[0])&&(c.transports=(c.transports||["polling","websocket","webtransport"]).map(a=>T[a]).filter(a=>!!a)),super(a,c)}}aa.protocol;let ab=(0,A.default)("socket.io-client:url"),ac="function"==typeof ArrayBuffer,ad=Object.prototype.toString,ae="function"==typeof Blob||"u">typeof Blob&&"[object BlobConstructor]"===ad.call(Blob),af="function"==typeof File||"u">typeof File&&"[object FileConstructor]"===ad.call(File);function ag(a){return ac&&(a instanceof ArrayBuffer||("function"==typeof ArrayBuffer.isView?ArrayBuffer.isView(a):a.buffer instanceof ArrayBuffer))||ae&&a instanceof Blob||af&&a instanceof File}let ah=(0,A.default)("socket.io-parser"),ai=["connect","connect_error","disconnect","disconnecting","newListener","removeListener"];(e=f||(f={}))[e.CONNECT=0]="CONNECT",e[e.DISCONNECT=1]="DISCONNECT",e[e.EVENT=2]="EVENT",e[e.ACK=3]="ACK",e[e.CONNECT_ERROR=4]="CONNECT_ERROR",e[e.BINARY_EVENT=5]="BINARY_EVENT",e[e.BINARY_ACK=6]="BINARY_ACK";class aj extends q{constructor(a){super(),this.opts=Object.assign({reviver:void 0,maxAttachments:10},"function"==typeof a?{reviver:a}:a)}add(a){let b;if("string"==typeof a){if(this.reconstructor)throw Error("got plaintext data when reconstructing a packet");let c=(b=this.decodeString(a)).type===f.BINARY_EVENT;c||b.type===f.BINARY_ACK?(b.type=c?f.EVENT:f.ACK,this.reconstructor=new ak(b),0===b.attachments&&super.emitReserved("decoded",b)):super.emitReserved("decoded",b)}else if(ag(a)||a.base64)if(this.reconstructor)(b=this.reconstructor.takeBinaryData(a))&&(this.reconstructor=null,super.emitReserved("decoded",b));else throw Error("got binary data when not reconstructing a packet");else throw Error("Unknown type: "+a)}decodeString(a){let b=0,c={type:Number(a.charAt(0))};if(void 0===f[c.type])throw Error("unknown packet type "+c.type);if(c.type===f.BINARY_EVENT||c.type===f.BINARY_ACK){let d=b+1;for(;"-"!==a.charAt(++b)&&b!=a.length;);let e=a.substring(d,b);if(e!=Number(e)||"-"!==a.charAt(b))throw Error("Illegal attachments");let f=Number(e);if(!al(f)||f<0)throw Error("Illegal attachments");if(f>this.opts.maxAttachments)throw Error("too many attachments");c.attachments=f}if("/"===a.charAt(b+1)){let d=b+1;for(;++b&&","!==a.charAt(b)&&b!==a.length;);c.nsp=a.substring(d,b)}else c.nsp="/";let d=a.charAt(b+1);if(""!==d&&Number(d)==d){let d=b+1;for(;++b;){let c=a.charAt(b);if(null==c||Number(c)!=c){--b;break}if(b===a.length)break}c.id=Number(a.substring(d,b+1))}if(a.charAt(++b)){let d=this.tryParse(a.substr(b));if(aj.isPayloadValid(c.type,d))c.data=d;else throw Error("invalid payload")}return ah("decoded %s as %j",a,c),c}tryParse(a){try{return JSON.parse(a,this.opts.reviver)}catch(a){return!1}}static isPayloadValid(a,b){switch(a){case f.CONNECT:return am(b);case f.DISCONNECT:return void 0===b;case f.CONNECT_ERROR:return"string"==typeof b||am(b);case f.EVENT:case f.BINARY_EVENT:return Array.isArray(b)&&("number"==typeof b[0]||"string"==typeof b[0]&&-1===ai.indexOf(b[0]));case f.ACK:case f.BINARY_ACK:return Array.isArray(b)}}destroy(){this.reconstructor&&(this.reconstructor.finishedReconstruction(),this.reconstructor=null)}}class ak{constructor(a){this.packet=a,this.buffers=[],this.reconPack=a}takeBinaryData(a){if(this.buffers.push(a),this.buffers.length===this.reconPack.attachments){var b,c;let a=(b=this.reconPack,c=this.buffers,b.data=function a(b,c){if(!b)return b;if(b&&!0===b._placeholder){if("number"==typeof b.num&&b.num>=0&&b.num<c.length)return c[b.num];throw Error("illegal attachments")}if(Array.isArray(b))for(let d=0;d<b.length;d++)b[d]=a(b[d],c);else if("object"==typeof b)for(let d in b)Object.prototype.hasOwnProperty.call(b,d)&&(b[d]=a(b[d],c));return b}(b.data,c),delete b.attachments,b);return this.finishedReconstruction(),a}return null}finishedReconstruction(){this.reconPack=null,this.buffers=[]}}let al=Number.isInteger||function(a){return"number"==typeof a&&isFinite(a)&&Math.floor(a)===a};function am(a){return"[object Object]"===Object.prototype.toString.call(a)}function an(a,b,c){return a.on(b,c),function(){a.off(b,c)}}a.s(["Decoder",0,aj,"Encoder",0,class{constructor(a){this.replacer=a}encode(a){return(ah("encoding packet %j",a),(a.type===f.EVENT||a.type===f.ACK)&&function a(b,c){if(!b||"object"!=typeof b)return!1;if(Array.isArray(b)){for(let c=0,d=b.length;c<d;c++)if(a(b[c]))return!0;return!1}if(ag(b))return!0;if(b.toJSON&&"function"==typeof b.toJSON&&1==arguments.length)return a(b.toJSON(),!0);for(let c in b)if(Object.prototype.hasOwnProperty.call(b,c)&&a(b[c]))return!0;return!1}(a))?this.encodeAsBinary({type:a.type===f.EVENT?f.BINARY_EVENT:f.BINARY_ACK,nsp:a.nsp,data:a.data,id:a.id}):[this.encodeAsString(a)]}encodeAsString(a){let b=""+a.type;return(a.type===f.BINARY_EVENT||a.type===f.BINARY_ACK)&&(b+=a.attachments+"-"),a.nsp&&"/"!==a.nsp&&(b+=a.nsp+","),null!=a.id&&(b+=a.id),null!=a.data&&(b+=JSON.stringify(a.data,this.replacer)),ah("encoded %j as %s",a,b),b}encodeAsBinary(a){let b,c,d=(b=[],c=a.data,a.data=function a(b,c){if(!b)return b;if(ag(b)){let a={_placeholder:!0,num:c.length};return c.push(b),a}if(Array.isArray(b)){let d=Array(b.length);for(let e=0;e<b.length;e++)d[e]=a(b[e],c);return d}if("object"==typeof b&&!(b instanceof Date)){let d={};for(let e in b)Object.prototype.hasOwnProperty.call(b,e)&&(d[e]=a(b[e],c));return d}return b}(c,b),a.attachments=b.length,{packet:a,buffers:b}),e=this.encodeAsString(d.packet),f=d.buffers;return f.unshift(e),f}},"PacketType",0,f,"isPacketValid",0,function(a){var b;return"string"==typeof a.nsp&&(void 0===(b=a.id)||al(b))&&function(a,b){switch(a){case f.CONNECT:return void 0===b||am(b);case f.DISCONNECT:return void 0===b;case f.EVENT:return Array.isArray(b)&&("number"==typeof b[0]||"string"==typeof b[0]&&-1===ai.indexOf(b[0]));case f.ACK:return Array.isArray(b);case f.CONNECT_ERROR:return"string"==typeof b||am(b);default:return!1}}(a.type,a.data)},"protocol",0,5],32882);let ao=(0,A.default)("socket.io-client:socket"),ap=Object.freeze({connect:1,connect_error:1,disconnect:1,disconnecting:1,newListener:1,removeListener:1});class aq extends q{constructor(a,b,c){super(),this.connected=!1,this.recovered=!1,this.receiveBuffer=[],this.sendBuffer=[],this._queue=[],this._queueSeq=0,this.ids=0,this.acks={},this.flags={},this.io=a,this.nsp=b,c&&c.auth&&(this.auth=c.auth),this._opts=Object.assign({},c),this.io._autoConnect&&this.open()}get disconnected(){return!this.connected}subEvents(){if(this.subs)return;let a=this.io;this.subs=[an(a,"open",this.onopen.bind(this)),an(a,"packet",this.onpacket.bind(this)),an(a,"error",this.onerror.bind(this)),an(a,"close",this.onclose.bind(this))]}get active(){return!!this.subs}connect(){return this.connected||(this.subEvents(),this.io._reconnecting||this.io.open(),"open"===this.io._readyState&&this.onopen()),this}open(){return this.connect()}send(...a){return a.unshift("message"),this.emit.apply(this,a),this}emit(a,...b){var c,d,e;if(ap.hasOwnProperty(a))throw Error('"'+a.toString()+'" is a reserved event name');if(b.unshift(a),this._opts.retries&&!this.flags.fromQueue&&!this.flags.volatile)return this._addToQueue(b),this;let g={type:f.EVENT,data:b};if(g.options={},g.options.compress=!1!==this.flags.compress,"function"==typeof b[b.length-1]){let a=this.ids++;ao("emitting packet with ack id %d",a);let c=b.pop();this._registerAckCallback(a,c),g.id=a}let h=null==(d=null==(c=this.io.engine)?void 0:c.transport)?void 0:d.writable,i=this.connected&&!(null==(e=this.io.engine)?void 0:e._hasPingExpired());return this.flags.volatile&&!h?ao("discard packet as the transport is not currently writable"):i?(this.notifyOutgoingListeners(g),this.packet(g)):this.sendBuffer.push(g),this.flags={},this}_registerAckCallback(a,b){var c;let d=null!=(c=this.flags.timeout)?c:this._opts.ackTimeout;if(void 0===d){this.acks[a]=b;return}let e=this.io.setTimeoutFn(()=>{delete this.acks[a];for(let b=0;b<this.sendBuffer.length;b++)this.sendBuffer[b].id===a&&(ao("removing packet with ack id %d from the buffer",a),this.sendBuffer.splice(b,1));ao("event with ack id %d has timed out after %d ms",a,d),b.call(this,Error("operation has timed out"))},d),f=(...a)=>{this.io.clearTimeoutFn(e),b.apply(this,a)};f.withError=!0,this.acks[a]=f}emitWithAck(a,...b){return new Promise((c,d)=>{let e=(a,b)=>a?d(a):c(b);e.withError=!0,b.push(e),this.emit(a,...b)})}_addToQueue(a){let b;"function"==typeof a[a.length-1]&&(b=a.pop());let c={id:this._queueSeq++,tryCount:0,pending:!1,args:a,flags:Object.assign({fromQueue:!0},this.flags)};a.push((a,...d)=>c!==this._queue[0]?ao("packet [%d] already acknowledged",c.id):(null!==a?c.tryCount>this._opts.retries&&(ao("packet [%d] is discarded after %d tries",c.id,c.tryCount),this._queue.shift(),b&&b(a)):(ao("packet [%d] was successfully sent",c.id),this._queue.shift(),b&&b(null,...d)),c.pending=!1,this._drainQueue())),this._queue.push(c),this._drainQueue()}_drainQueue(a=!1){if(ao("draining queue"),!this.connected||0===this._queue.length)return;let b=this._queue[0];b.pending&&!a?ao("packet [%d] has already been sent and is waiting for an ack",b.id):(b.pending=!0,b.tryCount++,ao("sending packet [%d] (try n°%d)",b.id,b.tryCount),this.flags=b.flags,this.emit.apply(this,b.args))}packet(a){a.nsp=this.nsp,this.io._packet(a)}onopen(){ao("transport is open - connecting"),"function"==typeof this.auth?this.auth(a=>{this._sendConnectPacket(a)}):this._sendConnectPacket(this.auth)}_sendConnectPacket(a){this.packet({type:f.CONNECT,data:this._pid?Object.assign({pid:this._pid,offset:this._lastOffset},a):a})}onerror(a){this.connected||this.emitReserved("connect_error",a)}onclose(a,b){ao("close (%s)",a),this.connected=!1,delete this.id,this.emitReserved("disconnect",a,b),this._clearAcks()}_clearAcks(){Object.keys(this.acks).forEach(a=>{if(!this.sendBuffer.some(b=>String(b.id)===a)){let b=this.acks[a];delete this.acks[a],b.withError&&b.call(this,Error("socket has been disconnected"))}})}onpacket(a){if(a.nsp===this.nsp)switch(a.type){case f.CONNECT:a.data&&a.data.sid?this.onconnect(a.data.sid,a.data.pid):this.emitReserved("connect_error",Error("It seems you are trying to reach a Socket.IO server in v2.x with a v3.x client, but they are not compatible (more information here: https://socket.io/docs/v3/migrating-from-2-x-to-3-0/)"));break;case f.EVENT:case f.BINARY_EVENT:this.onevent(a);break;case f.ACK:case f.BINARY_ACK:this.onack(a);break;case f.DISCONNECT:this.ondisconnect();break;case f.CONNECT_ERROR:this.destroy();let b=Error(a.data.message);b.data=a.data.data,this.emitReserved("connect_error",b)}}onevent(a){let b=a.data||[];ao("emitting event %j",b),null!=a.id&&(ao("attaching ack callback to event"),b.push(this.ack(a.id))),this.connected?this.emitEvent(b):this.receiveBuffer.push(Object.freeze(b))}emitEvent(a){if(this._anyListeners&&this._anyListeners.length)for(let b of this._anyListeners.slice())b.apply(this,a);super.emit.apply(this,a),this._pid&&a.length&&"string"==typeof a[a.length-1]&&(this._lastOffset=a[a.length-1])}ack(a){let b=this,c=!1;return function(...d){c||(c=!0,ao("sending ack %j",d),b.packet({type:f.ACK,id:a,data:d}))}}onack(a){let b=this.acks[a.id];"function"!=typeof b?ao("bad ack %s",a.id):(delete this.acks[a.id],ao("calling ack %s with %j",a.id,a.data),b.withError&&a.data.unshift(null),b.apply(this,a.data))}onconnect(a,b){ao("socket connected with id %s",a),this.id=a,this.recovered=b&&this._pid===b,this._pid=b,this.connected=!0,this.emitBuffered(),this._drainQueue(!0),this.emitReserved("connect")}emitBuffered(){this.receiveBuffer.forEach(a=>this.emitEvent(a)),this.receiveBuffer=[],this.sendBuffer.forEach(a=>{this.notifyOutgoingListeners(a),this.packet(a)}),this.sendBuffer=[]}ondisconnect(){ao("server disconnect (%s)",this.nsp),this.destroy(),this.onclose("io server disconnect")}destroy(){this.subs&&(this.subs.forEach(a=>a()),this.subs=void 0),this.io._destroy(this)}disconnect(){return this.connected&&(ao("performing disconnect (%s)",this.nsp),this.packet({type:f.DISCONNECT})),this.destroy(),this.connected&&this.onclose("io client disconnect"),this}close(){return this.disconnect()}compress(a){return this.flags.compress=a,this}get volatile(){return this.flags.volatile=!0,this}timeout(a){return this.flags.timeout=a,this}onAny(a){return this._anyListeners=this._anyListeners||[],this._anyListeners.push(a),this}prependAny(a){return this._anyListeners=this._anyListeners||[],this._anyListeners.unshift(a),this}offAny(a){if(!this._anyListeners)return this;if(a){let b=this._anyListeners;for(let c=0;c<b.length;c++)if(a===b[c]){b.splice(c,1);break}}else this._anyListeners=[];return this}listenersAny(){return this._anyListeners||[]}onAnyOutgoing(a){return this._anyOutgoingListeners=this._anyOutgoingListeners||[],this._anyOutgoingListeners.push(a),this}prependAnyOutgoing(a){return this._anyOutgoingListeners=this._anyOutgoingListeners||[],this._anyOutgoingListeners.unshift(a),this}offAnyOutgoing(a){if(!this._anyOutgoingListeners)return this;if(a){let b=this._anyOutgoingListeners;for(let c=0;c<b.length;c++)if(a===b[c]){b.splice(c,1);break}}else this._anyOutgoingListeners=[];return this}listenersAnyOutgoing(){return this._anyOutgoingListeners||[]}notifyOutgoingListeners(a){if(this._anyOutgoingListeners&&this._anyOutgoingListeners.length)for(let b of this._anyOutgoingListeners.slice())b.apply(this,a.data)}}var ar=a.i(32882);function as(a){a=a||{},this.ms=a.min||100,this.max=a.max||1e4,this.factor=a.factor||2,this.jitter=a.jitter>0&&a.jitter<=1?a.jitter:0,this.attempts=0}as.prototype.duration=function(){var a=this.ms*Math.pow(this.factor,this.attempts++);if(this.jitter){var b=Math.random(),c=Math.floor(b*this.jitter*a);a=(1&Math.floor(10*b))==0?a-c:a+c}return 0|Math.min(a,this.max)},as.prototype.reset=function(){this.attempts=0},as.prototype.setMin=function(a){this.ms=a},as.prototype.setMax=function(a){this.max=a},as.prototype.setJitter=function(a){this.jitter=a};let at=(0,A.default)("socket.io-client:manager");class au extends q{constructor(a,b){var c;super(),this.nsps={},this.subs=[],a&&"object"==typeof a&&(b=a,a=void 0),(b=b||{}).path=b.path||"/socket.io",this.opts=b,y(this,b),this.reconnection(!1!==b.reconnection),this.reconnectionAttempts(b.reconnectionAttempts||1/0),this.reconnectionDelay(b.reconnectionDelay||1e3),this.reconnectionDelayMax(b.reconnectionDelayMax||5e3),this.randomizationFactor(null!=(c=b.randomizationFactor)?c:.5),this.backoff=new as({min:this.reconnectionDelay(),max:this.reconnectionDelayMax(),jitter:this.randomizationFactor()}),this.timeout(null==b.timeout?2e4:b.timeout),this._readyState="closed",this.uri=a;const d=b.parser||ar;this.encoder=new d.Encoder,this.decoder=new d.Decoder,this._autoConnect=!1!==b.autoConnect,this._autoConnect&&this.open()}reconnection(a){return arguments.length?(this._reconnection=!!a,a||(this.skipReconnect=!0),this):this._reconnection}reconnectionAttempts(a){return void 0===a?this._reconnectionAttempts:(this._reconnectionAttempts=a,this)}reconnectionDelay(a){var b;return void 0===a?this._reconnectionDelay:(this._reconnectionDelay=a,null==(b=this.backoff)||b.setMin(a),this)}randomizationFactor(a){var b;return void 0===a?this._randomizationFactor:(this._randomizationFactor=a,null==(b=this.backoff)||b.setJitter(a),this)}reconnectionDelayMax(a){var b;return void 0===a?this._reconnectionDelayMax:(this._reconnectionDelayMax=a,null==(b=this.backoff)||b.setMax(a),this)}timeout(a){return arguments.length?(this._timeout=a,this):this._timeout}maybeReconnectOnOpen(){!this._reconnecting&&this._reconnection&&0===this.backoff.attempts&&this.reconnect()}open(a){if(at("readyState %s",this._readyState),~this._readyState.indexOf("open"))return this;at("opening %s",this.uri),this.engine=new aa(this.uri,this.opts);let b=this.engine,c=this;this._readyState="opening",this.skipReconnect=!1;let d=an(b,"open",function(){c.onopen(),a&&a()}),e=b=>{at("error"),this.cleanup(),this._readyState="closed",this.emitReserved("error",b),a?a(b):this.maybeReconnectOnOpen()},f=an(b,"error",e);if(!1!==this._timeout){let a=this._timeout;at("connect attempt will timeout after %d",a);let c=this.setTimeoutFn(()=>{at("connect attempt timed out after %d",a),d(),e(Error("timeout")),b.close()},a);this.opts.autoUnref&&c.unref(),this.subs.push(()=>{this.clearTimeoutFn(c)})}return this.subs.push(d),this.subs.push(f),this}connect(a){return this.open(a)}onopen(){at("open"),this.cleanup(),this._readyState="open",this.emitReserved("open");let a=this.engine;this.subs.push(an(a,"ping",this.onping.bind(this)),an(a,"data",this.ondata.bind(this)),an(a,"error",this.onerror.bind(this)),an(a,"close",this.onclose.bind(this)),an(this.decoder,"decoded",this.ondecoded.bind(this)))}onping(){this.emitReserved("ping")}ondata(a){try{this.decoder.add(a)}catch(a){this.onclose("parse error",a)}}ondecoded(a){r(()=>{this.emitReserved("packet",a)},this.setTimeoutFn)}onerror(a){at("error",a),this.emitReserved("error",a)}socket(a,b){let c=this.nsps[a];return c?this._autoConnect&&!c.active&&c.connect():(c=new aq(this,a,b),this.nsps[a]=c),c}_destroy(a){for(let a of Object.keys(this.nsps))if(this.nsps[a].active)return void at("socket %s is still active, skipping close",a);this._close()}_packet(a){at("writing packet %j",a);let b=this.encoder.encode(a);for(let c=0;c<b.length;c++)this.engine.write(b[c],a.options)}cleanup(){at("cleanup"),this.subs.forEach(a=>a()),this.subs.length=0,this.decoder.destroy()}_close(){at("disconnect"),this.skipReconnect=!0,this._reconnecting=!1,this.onclose("forced close")}disconnect(){return this._close()}onclose(a,b){var c;at("closed due to %s",a),this.cleanup(),null==(c=this.engine)||c.close(),this.backoff.reset(),this._readyState="closed",this.emitReserved("close",a,b),this._reconnection&&!this.skipReconnect&&this.reconnect()}reconnect(){if(this._reconnecting||this.skipReconnect)return this;let a=this;if(this.backoff.attempts>=this._reconnectionAttempts)at("reconnect failed"),this.backoff.reset(),this.emitReserved("reconnect_failed"),this._reconnecting=!1;else{let b=this.backoff.duration();at("will wait %dms before reconnect attempt",b),this._reconnecting=!0;let c=this.setTimeoutFn(()=>{a.skipReconnect||(at("attempting reconnect"),this.emitReserved("reconnect_attempt",a.backoff.attempts),a.skipReconnect||a.open(b=>{b?(at("reconnect attempt error"),a._reconnecting=!1,a.reconnect(),this.emitReserved("reconnect_error",b)):(at("reconnect success"),a.onreconnect())}))},b);this.opts.autoUnref&&c.unref(),this.subs.push(()=>{this.clearTimeoutFn(c)})}}onreconnect(){let a=this.backoff.attempts;this._reconnecting=!1,this.backoff.reset(),this.emitReserved("reconnect",a)}}let av=(0,A.default)("socket.io-client"),aw={};function ax(a,b){let c;"object"==typeof a&&(b=a,a=void 0);let d=function(a,b="",c){let d=a;c=c||"u">typeof location&&location,null==a&&(a=c.protocol+"//"+c.host),"string"==typeof a&&("/"===a.charAt(0)&&(a="/"===a.charAt(1)?c.protocol+a:c.host+a),/^(https?|wss?):\/\//.test(a)||(ab("protocol-less url %s",a),a=void 0!==c?c.protocol+"//"+a:"https://"+a),ab("parse %s",a),d=W(a)),!d.port&&(/^(http|ws)$/.test(d.protocol)?d.port="80":/^(http|ws)s$/.test(d.protocol)&&(d.port="443")),d.path=d.path||"/";let e=-1!==d.host.indexOf(":")?"["+d.host+"]":d.host;return d.id=d.protocol+"://"+e+":"+d.port+b,d.href=d.protocol+"://"+e+(c&&c.port===d.port?"":":"+d.port),d}(a,(b=b||{}).path||"/socket.io"),e=d.source,f=d.id,g=d.path,h=aw[f]&&g in aw[f].nsps;return b.forceNew||b["force new connection"]||!1===b.multiplex||h?(av("ignoring socket cache for %s",e),c=new au(e,b)):(aw[f]||(av("new io instance for %s",e),aw[f]=new au(e,b)),c=aw[f]),d.query&&!b.query&&(b.query=d.queryKey),c.socket(d.path,b)}Object.assign(ax,{Manager:au,Socket:aq,io:ax,connect:ax}),a.s(["io",0,ax],83915)},25015,12548,a=>{"use strict";var b=a.i(60137);let c=(0,b.default)("play",[["path",{d:"M5 5a2 2 0 0 1 3.008-1.728l11.997 6.998a2 2 0 0 1 .003 3.458l-12 7A2 2 0 0 1 5 19z",key:"10ikf1"}]]);a.s(["Play",0,c],25015);let d=(0,b.default)("square-pen",[["path",{d:"M12 3H5a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h14a2 2 0 0 0 2-2v-7",key:"1m0v6g"}],["path",{d:"M18.375 2.625a1 1 0 0 1 3 3l-9.013 9.014a2 2 0 0 1-.853.505l-2.873.84a.5.5 0 0 1-.62-.62l.84-2.873a2 2 0 0 1 .506-.852z",key:"ohrbg2"}]]);a.s(["SquarePen",0,d],12548)},54124,a=>{"use strict";var b=a.i(87924),c=a.i(72131),d=a.i(10450),e=a.i(99813),f=a.i(83915),g=a.i(80087),h=a.i(96221),i=a.i(5151),j=a.i(25015),k=a.i(33441),l=a.i(12548),m=a.i(53155),n=a.i(39524),o=a.i(65025),p=a.i(91399);let q=(0,c.forwardRef)(function({tabId:a,cwd:q,env:r,worktreePath:s,command:u,className:v="",initialTodos:w,initialClaudeStatus:x,isActive:y,onTodosUpdated:z,onStatusChange:A},B){let C=(0,c.useRef)(null),D=(0,c.useRef)(null),E=(0,c.useRef)(null),F=(0,c.useRef)(null),G=(0,c.useRef)(a),[H,I]=(0,c.useState)(!1),J=(0,c.useRef)(!1),K=(0,c.useRef)(y),L=(0,c.useRef)("idle"),M=(0,c.useRef)(!1),N=(0,c.useRef)(!1),O=(0,c.useRef)(null),P=(0,c.useRef)(null),Q=(0,c.useRef)(null),R=(0,c.useRef)(0),[S,T]=(0,c.useState)("idle"),[U,V]=(0,c.useState)(x??"idle"),W=(0,c.useRef)(x??"idle"),[X,Y]=(0,c.useState)(w??[]),[Z,$]=(0,c.useState)(!1),{effectiveTheme:_}=(0,g.useTheme)(),aa=(0,c.useRef)(A);aa.current=A;let ab="dark"===_,ac=ab?{background:"#1e1e1e",foreground:"#d4d4d4",cursor:"#d4d4d4",selectionBackground:"#264f78"}:{background:"#ffffff",foreground:"#1e1e1e",cursor:"#1e1e1e",selectionBackground:"#add6ff"};async function ad(a){try{await fetch((0,p.apiUrl)(`/api/internal/tabs/${a}/interrupt`),{method:"POST"})}catch(a){console.warn("[TerminalView] Failed to notify interrupt:",a)}}function ae(){let a=F.current,b=D.current,c=G.current;a&&a.connected&&b&&c&&a.emit("resize",{sessionId:c,cols:b.cols,rows:b.rows})}function af(a){a.write("\x1b[2J\x1b[3J\x1b[H")}async function ag(b,c,d){T("connecting");try{var e,g,h,i;let j,k,l=await fetch((0,p.apiUrl)("/api/terminal/sessions"),{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({cwd:q,env:r,worktreePath:s,sessionId:b,command:u}),signal:d});if(!l.ok){let a=await l.text().catch(()=>"");throw Error(`Failed to create session: ${l.status} ${a}`)}let m=await l.json();if(d.aborted)return;G.current=m.sessionId,m.reused||af(c),e=m.sessionId,g=m.reused,h=c,i=d,O.current?.dispose(),O.current=null,F.current&&(F.current.removeAllListeners(),F.current.disconnect()),F.current=j=(0,f.io)((0,p.getServerUrl)(),{transports:["polling","websocket"]}),k=!1,j.on("connect",()=>{let a=M.current;M.current=!0,a?h.writeln("\x1b[90mReconnected.\x1b[0m"):g?(N.current=!0,af(h)):h.writeln("\x1b[90mConnected.\x1b[0m"),T("connected"),R.current=0,j.emit("join",{room:`tab:${e}`,mode:"terminal"}),a&&K.current&&h.focus()}),j.on("output",({data:a})=>{g&&!k?(k=!0,h.write(a,()=>{N.current=!1,E.current?.fit();let a=D.current;if(a){let b=64===a.cols?63:64;a.resize(b,a.rows),ae(),setTimeout(()=>{E.current?.fit(),ae()},50)}h.scrollToBottom()})):h.write(a)}),j.on("exit",({exitCode:a})=>{console.log("[TerminalView] PTY exited with code:",a),T("exited"),G.current=null,F.current=null}),j.on("error",({message:a})=>{if(console.error("[TerminalView] Socket error message:",a),a.startsWith("Session not found")&&R.current<1){R.current+=1,ah();return}T("error")}),j.on("disconnect",()=>{i.aborted||T(a=>"exited"===a||"paused"===a||"idle"===a?a:"exited")}),j.on("status-changed",({status:a})=>{V(a)}),j.on("todos-updated",({todos:b})=>{Y(b),z?.(a,b)}),j.on("editor:open",({sessionId:a,content:b})=>{window.dispatchEvent(new CustomEvent("editor-session-open-request",{detail:{sessionId:a,content:b}}))}),O.current=h.onData(a=>{"\x1b"===a&&("running"===W.current||"waiting"===W.current)&&G.current&&ad(G.current),j.connected&&G.current&&j.emit("input",{sessionId:G.current,data:a})})}catch(a){if(a instanceof Error&&"AbortError"===a.name)return;console.error("[TerminalView] connectSession error:",a instanceof Error?a.message:String(a)),T("error")}}async function ah(){let b=D.current;if(!b)return;let c=new AbortController;await ag(a,b,c.signal)}(0,c.useEffect)(()=>{aa.current?.(a,S,U)},[a,S,U]),(0,c.useLayoutEffect)(()=>{K.current=y}),(0,c.useLayoutEffect)(()=>{L.current=S}),(0,c.useLayoutEffect)(()=>{W.current=U}),(0,c.useEffect)(()=>{y&&D.current?.focus()},[y]),(0,c.useEffect)(()=>{if(H)D.current?.blur();else if(y){let a=C.current?.querySelector("textarea.xterm-helper-textarea");a?.focus()}},[H,y]),(0,c.useEffect)(()=>{"connected"===S&&E.current&&(E.current.fit(),N.current||ae())},[S]),(0,c.useEffect)(()=>{if(!C.current)return;let b=C.current,c=new d.Terminal({cursorBlink:!0,fontSize:13,fontFamily:'"Cascadia Code", "Fira Code", "Menlo", monospace',theme:ac,allowProposedApi:!0}),f=new e.FitAddon;c.loadAddon(f),c.open(C.current),f.fit(),D.current=c,E.current=f,K.current&&c.focus(),c.attachCustomKeyEventHandler(()=>!J.current),c.buffer.onBufferChange(a=>{"normal"===a.type&&c.refresh(0,c.rows-1)});let g=0,h=a=>{let b=performance.now();""===a.data&&b-g<100?a.stopImmediatePropagation():g=b};b.addEventListener("compositionend",h,!0);let i=new ResizeObserver(()=>{!J.current&&(f.fit(),N.current||ae())});i.observe(C.current);let j=new AbortController;return ag(a,c,j.signal),()=>{j.abort(),i.disconnect(),b.removeEventListener("compositionend",h,!0),O.current?.dispose(),O.current=null,c.dispose(),D.current=null,E.current=null,F.current?.removeAllListeners(),F.current?.disconnect(),F.current=null}},[]),(0,c.useEffect)(()=>{D.current&&(D.current.options.theme=ac)},[ab]),(0,c.useEffect)(()=>{function a(){J.current=!0,D.current?.blur()}function b(){if(setTimeout(()=>{let a=D.current;if(a){let b=64===a.cols?63:64;a.resize(b,a.rows),ae(),setTimeout(()=>{J.current=!1,E.current?.fit(),ae()},100)}else J.current=!1},300),!K.current)return;let a=C.current?.querySelector("textarea.xterm-helper-textarea");a?.focus()}return window.addEventListener("editor-session-open",a),window.addEventListener("editor-session-done",b),()=>{window.removeEventListener("editor-session-open",a),window.removeEventListener("editor-session-done",b)}},[]),(0,c.useEffect)(()=>{function a(a){let b=F.current;if(!b||!b.connected||P.current)return;P.current=setTimeout(()=>{P.current=null,Q.current&&(b.off("health-check-ack",Q.current),Q.current=null),b.disconnect(),b.connect(),T("connecting")},6e3);let c=()=>{P.current&&(clearTimeout(P.current),P.current=null),Q.current=null,a.refocus&&K.current&&D.current?.focus()};Q.current=c,b.once("health-check-ack",c),b.emit("health-check")}function b(){"visible"===document.visibilityState&&a({refocus:!0})}let c=setInterval(()=>{"visible"!==document.visibilityState||"connected"===L.current&&a({refocus:!1})},8e3);return document.addEventListener("visibilitychange",b),()=>{document.removeEventListener("visibilitychange",b),clearInterval(c),P.current&&(clearTimeout(P.current),P.current=null),Q.current&&(F.current?.off("health-check-ack",Q.current),Q.current=null)}},[]),(0,c.useImperativeHandle)(B,()=>({sendInput:a=>{let b=F.current,c=G.current;b?.connected&&c&&b.emit("input",{sessionId:c,data:a})},focus:()=>{D.current?.focus()}}));let ai=(0,c.useCallback)(()=>{navigator.clipboard.writeText(a).then(()=>{$(!0),setTimeout(()=>$(!1),2e3)})},[a]),aj="connecting"===S,ak="paused"===S||"exited"===S||"error"===S,al="connected"===S,am=X.filter(a=>"deleted"!==a.status),an=am.filter(a=>"completed"===a.status).length,ao=am.length,ap=a.length>8?`${a.slice(0,8)}…`:a;return(0,b.jsxs)(b.Fragment,{children:[(0,b.jsxs)("div",{className:`flex flex-col h-full min-h-0 ${v}`,children:[(0,b.jsxs)("div",{className:"flex items-center gap-2 px-2 py-1 border-b border-border flex-shrink-0 bg-card",children:[(0,b.jsx)("span",{className:"font-mono text-xs text-muted-foreground",title:a,children:ap}),(0,b.jsx)(n.Button,{variant:"ghost",size:"icon-xs",onClick:ai,className:"text-muted-foreground hover:text-foreground",title:"Copy tab ID",children:Z?(0,b.jsx)(k.Check,{className:"w-3 h-3 text-success"}):(0,b.jsx)(i.Copy,{className:"w-3 h-3"})}),(0,b.jsxs)(n.Button,{size:"xs",onClick:function(){let a=F.current,b=G.current;if(!a||!a.connected||!b)return;let c=`claude --dangerously-skip-permissions --resume ${b} 2>/dev/null || claude --dangerously-skip-permissions --session-id ${b}
|
|
33
|
-
`;a.emit("input",{sessionId:b,data:c})},disabled:!al,title:"Run Claude",children:[(0,b.jsx)(
|
|
28
|
+
`)}clearSelection(){this._model.clearSelection(),this._removeMouseDownListeners(),this.refresh(),this._onSelectionChange.fire()}refresh(a){this._refreshAnimationFrame||(this._refreshAnimationFrame=this._coreBrowserService.window.requestAnimationFrame(()=>this._refresh())),dB&&a&&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:3===this._activeSelectionMode})}_isClickInSelection(a){let b=this._getMouseBufferCoords(a),c=this._model.finalSelectionStart,d=this._model.finalSelectionEnd;return!!c&&!!d&&!!b&&this._areCoordsInSelection(b,c,d)}isCellInSelection(a,b){let c=this._model.finalSelectionStart,d=this._model.finalSelectionEnd;return!!c&&!!d&&this._areCoordsInSelection([a,b],c,d)}_areCoordsInSelection(a,b,c){return a[1]>b[1]&&a[1]<c[1]||b[1]===c[1]&&a[1]===b[1]&&a[0]>=b[0]&&a[0]<c[0]||b[1]<c[1]&&a[1]===c[1]&&a[0]<c[0]||b[1]<c[1]&&a[1]===b[1]&&a[0]>=b[0]}_selectWordAtCursor(a,b){let c=this._linkifier.currentLink?.link?.range;if(c)return this._model.selectionStart=[c.start.x-1,c.start.y-1],this._model.selectionStartLength=dQ(c,this._bufferService.cols),this._model.selectionEnd=void 0,!0;let d=this._getMouseBufferCoords(a);return!!d&&(this._selectWordAt(d,b),this._model.selectionEnd=void 0,!0)}selectAll(){this._model.isSelectAllActive=!0,this.refresh(),this._onSelectionChange.fire()}selectLines(a,b){this._model.clearSelection(),a=Math.max(a,0),b=Math.min(b,this._bufferService.buffer.lines.length-1),this._model.selectionStart=[0,a],this._model.selectionEnd=[this._bufferService.cols,b],this.refresh(),this._onSelectionChange.fire()}_handleTrim(a){this._model.handleTrim(a)&&this.refresh()}_getMouseBufferCoords(a){let b=this._mouseService.getCoords(a,this._screenElement,this._bufferService.cols,this._bufferService.rows,!0);if(b)return b[0]--,b[1]--,b[1]+=this._bufferService.buffer.ydisp,b}_getMouseEventScrollAmount(a){let b=dj(this._coreBrowserService.window,a,this._screenElement)[1],c=this._renderService.dimensions.css.canvas.height;return b>=0&&b<=c?0:(b>c&&(b-=c),(b=Math.min(Math.max(b,-50),50)/50)/Math.abs(b)+Math.round(14*b))}shouldForceSelection(a){return dx?a.altKey&&this._optionsService.rawOptions.macOptionClickForcesSelection:a.shiftKey}handleMouseDown(a){if(this._mouseDownTimeStamp=a.timeStamp,!(2===a.button&&this.hasSelection)&&0===a.button){if(!this._enabled){if(!this.shouldForceSelection(a))return;a.stopPropagation()}a.preventDefault(),this._dragScrollAmount=0,this._enabled&&a.shiftKey?this._handleIncrementalClick(a):1===a.detail?this._handleSingleClick(a):2===a.detail?this._handleDoubleClick(a):3===a.detail&&this._handleTripleClick(a),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(),50)}_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(a){this._model.selectionStart&&(this._model.selectionEnd=this._getMouseBufferCoords(a))}_handleSingleClick(a){if(this._model.selectionStartLength=0,this._model.isSelectAllActive=!1,this._activeSelectionMode=3*!!this.shouldColumnSelect(a),this._model.selectionStart=this._getMouseBufferCoords(a),!this._model.selectionStart)return;this._model.selectionEnd=void 0;let b=this._bufferService.buffer.lines.get(this._model.selectionStart[1]);b&&b.length!==this._model.selectionStart[0]&&0===b.hasWidth(this._model.selectionStart[0])&&this._model.selectionStart[0]++}_handleDoubleClick(a){this._selectWordAtCursor(a,!0)&&(this._activeSelectionMode=1)}_handleTripleClick(a){let b=this._getMouseBufferCoords(a);b&&(this._activeSelectionMode=2,this._selectLineAt(b[1]))}shouldColumnSelect(a){return a.altKey&&!(dx&&this._optionsService.rawOptions.macOptionClickForcesSelection)}_handleMouseMove(a){if(a.stopImmediatePropagation(),!this._model.selectionStart)return;let b=this._model.selectionEnd?[this._model.selectionEnd[0],this._model.selectionEnd[1]]:null;if(this._model.selectionEnd=this._getMouseBufferCoords(a),!this._model.selectionEnd)return void this.refresh(!0);2===this._activeSelectionMode?this._model.selectionEnd[1]<this._model.selectionStart[1]?this._model.selectionEnd[0]=0:this._model.selectionEnd[0]=this._bufferService.cols:1===this._activeSelectionMode&&this._selectToWordAt(this._model.selectionEnd),this._dragScrollAmount=this._getMouseEventScrollAmount(a),3!==this._activeSelectionMode&&(this._dragScrollAmount>0?this._model.selectionEnd[0]=this._bufferService.cols:this._dragScrollAmount<0&&(this._model.selectionEnd[0]=0));let c=this._bufferService.buffer;if(this._model.selectionEnd[1]<c.lines.length){let a=c.lines.get(this._model.selectionEnd[1]);a&&0===a.hasWidth(this._model.selectionEnd[0])&&this._model.selectionEnd[0]<this._bufferService.cols&&this._model.selectionEnd[0]++}b&&b[0]===this._model.selectionEnd[0]&&b[1]===this._model.selectionEnd[1]||this.refresh(!0)}_dragScroll(){if(!(!this._model.selectionEnd||!this._model.selectionStart)&&this._dragScrollAmount){this._onRequestScrollLines.fire({amount:this._dragScrollAmount,suppressScrollEvent:!1});let a=this._bufferService.buffer;this._dragScrollAmount>0?(3!==this._activeSelectionMode&&(this._model.selectionEnd[0]=this._bufferService.cols),this._model.selectionEnd[1]=Math.min(a.ydisp+this._bufferService.rows,a.lines.length-1)):(3!==this._activeSelectionMode&&(this._model.selectionEnd[0]=0),this._model.selectionEnd[1]=a.ydisp),this.refresh()}}_handleMouseUp(a){let b=a.timeStamp-this._mouseDownTimeStamp;if(this._removeMouseDownListeners(),this.selectionText.length<=1&&b<500&&a.altKey&&this._optionsService.rawOptions.altClickMovesCursor){if(this._bufferService.buffer.ybase===this._bufferService.buffer.ydisp){let b=this._mouseService.getCoords(a,this._element,this._bufferService.cols,this._bufferService.rows,!1);if(b&&void 0!==b[0]&&void 0!==b[1]){let a=function(a,b,c,d){var e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,u;let v,w=c.buffer.x,x=c.buffer.y;if(!c.buffer.hasScrollback){let u,v,y;return e=w,(0===dK(f=x,b,g=c,h=d).length?"":dO(dM(e,f,e,f-dL(f,g),!1,g).length,dN("D",h)))+dK(x,b,c,d)+(i=w,j=x,k=a,u=dK(j,l=b,m=c,n=d).length>0?l-dL(l,m):j,y=(o=i,p=j,v=dK(q=k,r=l,s=m,n).length>0?r-dL(r,s):p,o<q&&v<=r||o>=q&&v<r?"C":"D"),dO(dM(i,u,k,l,"C"===y,m).length,dN(y,n)))}if(x===b)return v=w>a?"D":"C",dO(Math.abs(w-a),dN(v,d));v=x>b?"D":"C";let y=Math.abs(x-b);return dO((u=x>b?a:w,c.cols-u+(y-1)*c.cols+1+((x>b?w:a)-1)),dN(v,d))}(b[0]-1,b[1]-1,this._bufferService,this._coreService.decPrivateModes.applicationCursorKeys);this._coreService.triggerDataEvent(a,!0)}}}else this._fireEventIfSelectionChanged()}_fireEventIfSelectionChanged(){let a=this._model.finalSelectionStart,b=this._model.finalSelectionEnd,c=!!a&&!!b&&(a[0]!==b[0]||a[1]!==b[1]);if(!c){this._oldHasSelection&&this._fireOnSelectionChange(a,b,c);return}!a||!b||this._oldSelectionStart&&this._oldSelectionEnd&&a[0]===this._oldSelectionStart[0]&&a[1]===this._oldSelectionStart[1]&&b[0]===this._oldSelectionEnd[0]&&b[1]===this._oldSelectionEnd[1]||this._fireOnSelectionChange(a,b,c)}_fireOnSelectionChange(a,b,c){this._oldSelectionStart=a,this._oldSelectionEnd=b,this._oldHasSelection=c,this._onSelectionChange.fire()}_handleBufferActivate(a){this.clearSelection(),this._trimListener.dispose(),this._trimListener=a.activeBuffer.lines.onTrim(a=>this._handleTrim(a))}_convertViewportColToCharacterIndex(a,b){let c=b;for(let d=0;b>=d;d++){let e=a.loadCell(d,this._workCell).getChars().length;0===this._workCell.getWidth()?c--:e>1&&b!==d&&(c+=e-1)}return c}setSelection(a,b,c){this._model.clearSelection(),this._removeMouseDownListeners(),this._model.selectionStart=[a,b],this._model.selectionStartLength=c,this.refresh(),this._fireEventIfSelectionChanged()}rightClickSelect(a){this._isClickInSelection(a)||(this._selectWordAtCursor(a,!1)&&this.refresh(!0),this._fireEventIfSelectionChanged())}_getWordAt(a,b,c=!0,d=!0){if(a[0]>=this._bufferService.cols)return;let e=this._bufferService.buffer,f=e.lines.get(a[1]);if(!f)return;let g=e.translateBufferLineToString(a[1],!1),h=this._convertViewportColToCharacterIndex(f,a[0]),i=h,j=a[0]-h,k=0,l=0,m=0,n=0;if(" "===g.charAt(h)){for(;h>0&&" "===g.charAt(h-1);)h--;for(;i<g.length&&" "===g.charAt(i+1);)i++}else{let b=a[0],c=a[0];0===f.getWidth(b)&&(k++,b--),2===f.getWidth(c)&&(l++,c++);let d=f.getString(c).length;for(d>1&&(n+=d-1,i+=d-1);b>0&&h>0&&!this._isCharWordSeparator(f.loadCell(b-1,this._workCell));){f.loadCell(b-1,this._workCell);let a=this._workCell.getChars().length;0===this._workCell.getWidth()?(k++,b--):a>1&&(m+=a-1,h-=a-1),h--,b--}for(;c<f.length&&i+1<g.length&&!this._isCharWordSeparator(f.loadCell(c+1,this._workCell));){f.loadCell(c+1,this._workCell);let a=this._workCell.getChars().length;2===this._workCell.getWidth()?(l++,c++):a>1&&(n+=a-1,i+=a-1),i++,c++}}i++;let o=h+j-k+m,p=Math.min(this._bufferService.cols,i-h+k+l-m-n);if(!(!b&&""===g.slice(h,i).trim())){if(c&&0===o&&32!==f.getCodePoint(0)){let b=e.lines.get(a[1]-1);if(b&&f.isWrapped&&32!==b.getCodePoint(this._bufferService.cols-1)){let b=this._getWordAt([this._bufferService.cols-1,a[1]-1],!1,!0,!1);if(b){let a=this._bufferService.cols-b.start;o-=a,p+=a}}}if(d&&o+p===this._bufferService.cols&&32!==f.getCodePoint(this._bufferService.cols-1)){let b=e.lines.get(a[1]+1);if(b?.isWrapped&&32!==b.getCodePoint(0)){let b=this._getWordAt([0,a[1]+1],!1,!1,!0);b&&(p+=b.length)}}return{start:o,length:p}}}_selectWordAt(a,b){let c=this._getWordAt(a,b);if(c){for(;c.start<0;)c.start+=this._bufferService.cols,a[1]--;this._model.selectionStart=[c.start,a[1]],this._model.selectionStartLength=c.length}}_selectToWordAt(a){let b=this._getWordAt(a,!0);if(b){let c=a[1];for(;b.start<0;)b.start+=this._bufferService.cols,c--;if(!this._model.areSelectionValuesReversed())for(;b.start+b.length>this._bufferService.cols;)b.length-=this._bufferService.cols,c++;this._model.selectionEnd=[this._model.areSelectionValuesReversed()?b.start:b.start+b.length,c]}}_isCharWordSeparator(a){return 0!==a.getWidth()&&this._optionsService.rawOptions.wordSeparator.indexOf(a.getChars())>=0}_selectLineAt(a){let b=this._bufferService.buffer.getWrappedRangeForLine(a),c={start:{x:0,y:b.first},end:{x:this._bufferService.cols-1,y:b.last}};this._model.selectionStart=[0,b.first],this._model.selectionEnd=void 0,this._model.selectionStartLength=dQ(c,this._bufferService.cols)}};dS=L([M(3,ab),M(4,ad),M(5,ao),M(6,ah),M(7,ap),M(8,an)],dS);var dT=class{constructor(){this._data={}}set(a,b,c){this._data[a]||(this._data[a]={}),this._data[a][b]=c}get(a,b){return this._data[a]?this._data[a][b]:void 0}clear(){this._data={}}},dU=class{constructor(){this._color=new dT,this._css=new dT}setCss(a,b,c){this._css.set(a,b,c)}getCss(a,b){return this._css.get(a,b)}setColor(a,b,c){this._color.set(a,b,c)}getColor(a,b){return this._color.get(a,b)}clear(){this._color.clear(),this._css.clear()}},dV=Object.freeze((()=>{let a=[et.toColor("#2e3436"),et.toColor("#cc0000"),et.toColor("#4e9a06"),et.toColor("#c4a000"),et.toColor("#3465a4"),et.toColor("#75507b"),et.toColor("#06989a"),et.toColor("#d3d7cf"),et.toColor("#555753"),et.toColor("#ef2929"),et.toColor("#8ae234"),et.toColor("#fce94f"),et.toColor("#729fcf"),et.toColor("#ad7fa8"),et.toColor("#34e2e2"),et.toColor("#eeeeec")],b=[0,95,135,175,215,255];for(let c=0;c<216;c++){let d=b[c/36%6|0],e=b[c/6%6|0],f=b[c%6];a.push({css:cK.toCss(d,e,f),rgba:cK.toRgba(d,e,f)})}for(let b=0;b<24;b++){let c=8+10*b;a.push({css:cK.toCss(c,c,c),rgba:cK.toRgba(c,c,c)})}return a})()),dW=et.toColor("#ffffff"),dX=et.toColor("#000000"),dY=et.toColor("#ffffff"),dZ={css:"rgba(255, 255, 255, 0.3)",rgba:0xffffff4d},d$=class extends aI{constructor(a){super(),this._optionsService=a,this._contrastCache=new dU,this._halfContrastCache=new dU,this._onChangeColors=this._register(new a_),this.onChangeColors=this._onChangeColors.event,this._colors={foreground:dW,background:dX,cursor:dY,cursorAccent:dX,selectionForeground:void 0,selectionBackgroundTransparent:dZ,selectionBackgroundOpaque:es.blend(dX,dZ),selectionInactiveBackgroundTransparent:dZ,selectionInactiveBackgroundOpaque:es.blend(dX,dZ),scrollbarSliderBackground:es.opacity(dW,.2),scrollbarSliderHoverBackground:es.opacity(dW,.4),scrollbarSliderActiveBackground:es.opacity(dW,.5),overviewRulerBorder:dW,ansi:dV.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(a={}){let b=this._colors;if(b.foreground=d_(a.foreground,dW),b.background=d_(a.background,dX),b.cursor=es.blend(b.background,d_(a.cursor,dY)),b.cursorAccent=es.blend(b.background,d_(a.cursorAccent,dX)),b.selectionBackgroundTransparent=d_(a.selectionBackground,dZ),b.selectionBackgroundOpaque=es.blend(b.background,b.selectionBackgroundTransparent),b.selectionInactiveBackgroundTransparent=d_(a.selectionInactiveBackground,b.selectionBackgroundTransparent),b.selectionInactiveBackgroundOpaque=es.blend(b.background,b.selectionInactiveBackgroundTransparent),b.selectionForeground=a.selectionForeground?d_(a.selectionForeground,cP):void 0,b.selectionForeground===cP&&(b.selectionForeground=void 0),es.isOpaque(b.selectionBackgroundTransparent)&&(b.selectionBackgroundTransparent=es.opacity(b.selectionBackgroundTransparent,.3)),es.isOpaque(b.selectionInactiveBackgroundTransparent)&&(b.selectionInactiveBackgroundTransparent=es.opacity(b.selectionInactiveBackgroundTransparent,.3)),b.scrollbarSliderBackground=d_(a.scrollbarSliderBackground,es.opacity(b.foreground,.2)),b.scrollbarSliderHoverBackground=d_(a.scrollbarSliderHoverBackground,es.opacity(b.foreground,.4)),b.scrollbarSliderActiveBackground=d_(a.scrollbarSliderActiveBackground,es.opacity(b.foreground,.5)),b.overviewRulerBorder=d_(a.overviewRulerBorder,dW),b.ansi=dV.slice(),b.ansi[0]=d_(a.black,dV[0]),b.ansi[1]=d_(a.red,dV[1]),b.ansi[2]=d_(a.green,dV[2]),b.ansi[3]=d_(a.yellow,dV[3]),b.ansi[4]=d_(a.blue,dV[4]),b.ansi[5]=d_(a.magenta,dV[5]),b.ansi[6]=d_(a.cyan,dV[6]),b.ansi[7]=d_(a.white,dV[7]),b.ansi[8]=d_(a.brightBlack,dV[8]),b.ansi[9]=d_(a.brightRed,dV[9]),b.ansi[10]=d_(a.brightGreen,dV[10]),b.ansi[11]=d_(a.brightYellow,dV[11]),b.ansi[12]=d_(a.brightBlue,dV[12]),b.ansi[13]=d_(a.brightMagenta,dV[13]),b.ansi[14]=d_(a.brightCyan,dV[14]),b.ansi[15]=d_(a.brightWhite,dV[15]),a.extendedAnsi){let c=Math.min(b.ansi.length-16,a.extendedAnsi.length);for(let d=0;d<c;d++)b.ansi[d+16]=d_(a.extendedAnsi[d],dV[d+16])}this._contrastCache.clear(),this._halfContrastCache.clear(),this._updateRestoreColors(),this._onChangeColors.fire(this.colors)}restoreColor(a){this._restoreColor(a),this._onChangeColors.fire(this.colors)}_restoreColor(a){if(void 0===a){for(let a=0;a<this._restoreColors.ansi.length;++a)this._colors.ansi[a]=this._restoreColors.ansi[a];return}switch(a){case 256:this._colors.foreground=this._restoreColors.foreground;break;case 257:this._colors.background=this._restoreColors.background;break;case 258:this._colors.cursor=this._restoreColors.cursor;break;default:this._colors.ansi[a]=this._restoreColors.ansi[a]}}modifyColors(a){a(this._colors),this._onChangeColors.fire(this.colors)}_updateRestoreColors(){this._restoreColors={foreground:this._colors.foreground,background:this._colors.background,cursor:this._colors.cursor,ansi:this._colors.ansi.slice()}}};function d_(a,b){if(void 0!==a)try{return et.toColor(a)}catch{}return b}d$=L([M(0,ah)],d$);var d0=class{constructor(...a){for(let[b,c]of(this._entries=new Map,a))this.set(b,c)}set(a,b){let c=this._entries.get(a);return this._entries.set(a,b),c}forEach(a){for(let[b,c]of this._entries.entries())a(b,c)}has(a){return this._entries.has(a)}get(a){return this._entries.get(a)}},d1=class{constructor(){this._services=new d0,this._services.set(af,this)}setService(a,b){this._services.set(a,b)}getService(a){return this._services.get(a)}createInstance(a,...b){let c=(a[$]||[]).sort((a,b)=>a.index-b.index),d=[];for(let b of c){let c=this._services.get(b.id);if(!c)throw Error(`[createInstance] ${a.name} depends on UNKNOWN service ${b.id._id}.`);d.push(c)}let e=c.length>0?c[0].index:b.length;if(b.length!==e)throw Error(`[createInstance] First service dependency of ${a.name} at position ${e+1} conflicts with ${b.length} static arguments`);return new a(...b,...d)}},d2={trace:0,debug:1,info:2,warn:3,error:4,off:5},d3=class extends aI{constructor(a){super(),this._optionsService=a,this._logLevel=5,this._updateLogLevel(),this._register(this._optionsService.onSpecificOptionChange("logLevel",()=>this._updateLogLevel()))}get logLevel(){return this._logLevel}_updateLogLevel(){this._logLevel=d2[this._optionsService.rawOptions.logLevel]}_evalLazyOptionalParams(a){for(let b=0;b<a.length;b++)"function"==typeof a[b]&&(a[b]=a[b]())}_log(a,b,c){this._evalLazyOptionalParams(c),a.call(console,(this._optionsService.options.logger?"":"xterm.js: ")+b,...c)}trace(a,...b){this._logLevel<=0&&this._log(this._optionsService.options.logger?.trace.bind(this._optionsService.options.logger)??console.log,a,b)}debug(a,...b){this._logLevel<=1&&this._log(this._optionsService.options.logger?.debug.bind(this._optionsService.options.logger)??console.log,a,b)}info(a,...b){this._logLevel<=2&&this._log(this._optionsService.options.logger?.info.bind(this._optionsService.options.logger)??console.info,a,b)}warn(a,...b){this._logLevel<=3&&this._log(this._optionsService.options.logger?.warn.bind(this._optionsService.options.logger)??console.warn,a,b)}error(a,...b){this._logLevel<=4&&this._log(this._optionsService.options.logger?.error.bind(this._optionsService.options.logger)??console.error,a,b)}};d3=L([M(0,ah)],d3);var d4=class extends aI{constructor(a){super(),this._maxLength=a,this.onDeleteEmitter=this._register(new a_),this.onDelete=this.onDeleteEmitter.event,this.onInsertEmitter=this._register(new a_),this.onInsert=this.onInsertEmitter.event,this.onTrimEmitter=this._register(new a_),this.onTrim=this.onTrimEmitter.event,this._array=Array(this._maxLength),this._startIndex=0,this._length=0}get maxLength(){return this._maxLength}set maxLength(a){if(this._maxLength===a)return;let b=Array(a);for(let c=0;c<Math.min(a,this.length);c++)b[c]=this._array[this._getCyclicIndex(c)];this._array=b,this._maxLength=a,this._startIndex=0}get length(){return this._length}set length(a){if(a>this._length)for(let b=this._length;b<a;b++)this._array[b]=void 0;this._length=a}get(a){return this._array[this._getCyclicIndex(a)]}set(a,b){this._array[this._getCyclicIndex(a)]=b}push(a){this._array[this._getCyclicIndex(this._length)]=a,this._length===this._maxLength?(this._startIndex=++this._startIndex%this._maxLength,this.onTrimEmitter.fire(1)):this._length++}recycle(){if(this._length!==this._maxLength)throw Error("Can only recycle when the buffer is full");return this._startIndex=++this._startIndex%this._maxLength,this.onTrimEmitter.fire(1),this._array[this._getCyclicIndex(this._length-1)]}get isFull(){return this._length===this._maxLength}pop(){return this._array[this._getCyclicIndex(this._length---1)]}splice(a,b,...c){if(b){for(let c=a;c<this._length-b;c++)this._array[this._getCyclicIndex(c)]=this._array[this._getCyclicIndex(c+b)];this._length-=b,this.onDeleteEmitter.fire({index:a,amount:b})}for(let b=this._length-1;b>=a;b--)this._array[this._getCyclicIndex(b+c.length)]=this._array[this._getCyclicIndex(b)];for(let b=0;b<c.length;b++)this._array[this._getCyclicIndex(a+b)]=c[b];if(c.length&&this.onInsertEmitter.fire({index:a,amount:c.length}),this._length+c.length>this._maxLength){let a=this._length+c.length-this._maxLength;this._startIndex+=a,this._length=this._maxLength,this.onTrimEmitter.fire(a)}else this._length+=c.length}trimStart(a){a>this._length&&(a=this._length),this._startIndex+=a,this._length-=a,this.onTrimEmitter.fire(a)}shiftElements(a,b,c){if(!(b<=0)){if(a<0||a>=this._length)throw Error("start argument out of range");if(a+c<0)throw Error("Cannot shift elements in list beyond index 0");if(c>0){for(let d=b-1;d>=0;d--)this.set(a+d+c,this.get(a+d));let d=a+b+c-this._length;if(d>0)for(this._length+=d;this._length>this._maxLength;)this._length--,this._startIndex++,this.onTrimEmitter.fire(1)}else for(let d=0;d<b;d++)this.set(a+d+c,this.get(a+d))}}_getCyclicIndex(a){return(this._startIndex+a)%this._maxLength}},d5=Object.freeze(new W),d6=0,d7=class a{constructor(a,b,c=!1){this.isWrapped=c,this._combined={},this._extendedAttrs={},this._data=new Uint32Array(3*a);let d=b||Y.fromCharData([0,"",1,0]);for(let b=0;b<a;++b)this.setCell(b,d);this.length=a}get(a){let b=this._data[3*a+0],c=2097151&b;return[this._data[3*a+1],2097152&b?this._combined[a]:c?S(c):"",b>>22,2097152&b?this._combined[a].charCodeAt(this._combined[a].length-1):c]}set(a,b){this._data[3*a+1]=b[0],b[1].length>1?(this._combined[a]=b[1],this._data[3*a+0]=2097152|a|b[2]<<22):this._data[3*a+0]=b[1].charCodeAt(0)|b[2]<<22}getWidth(a){return this._data[3*a+0]>>22}hasWidth(a){return 0xc00000&this._data[3*a+0]}getFg(a){return this._data[3*a+1]}getBg(a){return this._data[3*a+2]}hasContent(a){return 4194303&this._data[3*a+0]}getCodePoint(a){let b=this._data[3*a+0];return 2097152&b?this._combined[a].charCodeAt(this._combined[a].length-1):2097151&b}isCombined(a){return 2097152&this._data[3*a+0]}getString(a){let b=this._data[3*a+0];return 2097152&b?this._combined[a]:2097151&b?S(2097151&b):""}isProtected(a){return 0x20000000&this._data[3*a+2]}loadCell(a,b){return d6=3*a,b.content=this._data[d6+0],b.fg=this._data[d6+1],b.bg=this._data[d6+2],2097152&b.content&&(b.combinedData=this._combined[a]),0x10000000&b.bg&&(b.extended=this._extendedAttrs[a]),b}setCell(a,b){2097152&b.content&&(this._combined[a]=b.combinedData),0x10000000&b.bg&&(this._extendedAttrs[a]=b.extended),this._data[3*a+0]=b.content,this._data[3*a+1]=b.fg,this._data[3*a+2]=b.bg}setCellFromCodepoint(a,b,c,d){0x10000000&d.bg&&(this._extendedAttrs[a]=d.extended),this._data[3*a+0]=b|c<<22,this._data[3*a+1]=d.fg,this._data[3*a+2]=d.bg}addCodepointToCell(a,b,c){let d=this._data[3*a+0];2097152&d?this._combined[a]+=S(b):2097151&d?(this._combined[a]=S(2097151&d)+S(b),d&=-2097152,d|=2097152):d=4194304|b,c&&(d&=-0xc00001,d|=c<<22),this._data[3*a+0]=d}insertCells(a,b,c){if((a%=this.length)&&2===this.getWidth(a-1)&&this.setCellFromCodepoint(a-1,0,1,c),b<this.length-a){let d=new Y;for(let c=this.length-a-b-1;c>=0;--c)this.setCell(a+b+c,this.loadCell(a+c,d));for(let d=0;d<b;++d)this.setCell(a+d,c)}else for(let b=a;b<this.length;++b)this.setCell(b,c);2===this.getWidth(this.length-1)&&this.setCellFromCodepoint(this.length-1,0,1,c)}deleteCells(a,b,c){if(a%=this.length,b<this.length-a){let d=new Y;for(let c=0;c<this.length-a-b;++c)this.setCell(a+c,this.loadCell(a+b+c,d));for(let a=this.length-b;a<this.length;++a)this.setCell(a,c)}else for(let b=a;b<this.length;++b)this.setCell(b,c);a&&2===this.getWidth(a-1)&&this.setCellFromCodepoint(a-1,0,1,c),0!==this.getWidth(a)||this.hasContent(a)||this.setCellFromCodepoint(a,0,1,c)}replaceCells(a,b,c,d=!1){if(d){for(a&&2===this.getWidth(a-1)&&!this.isProtected(a-1)&&this.setCellFromCodepoint(a-1,0,1,c),b<this.length&&2===this.getWidth(b-1)&&!this.isProtected(b)&&this.setCellFromCodepoint(b,0,1,c);a<b&&a<this.length;)this.isProtected(a)||this.setCell(a,c),a++;return}for(a&&2===this.getWidth(a-1)&&this.setCellFromCodepoint(a-1,0,1,c),b<this.length&&2===this.getWidth(b-1)&&this.setCellFromCodepoint(b,0,1,c);a<b&&a<this.length;)this.setCell(a++,c)}resize(a,b){if(a===this.length)return 4*this._data.length*2<this._data.buffer.byteLength;let c=3*a;if(a>this.length){if(this._data.buffer.byteLength>=4*c)this._data=new Uint32Array(this._data.buffer,0,c);else{let a=new Uint32Array(c);a.set(this._data),this._data=a}for(let c=this.length;c<a;++c)this.setCell(c,b)}else{this._data=this._data.subarray(0,c);let b=Object.keys(this._combined);for(let c=0;c<b.length;c++){let d=parseInt(b[c],10);d>=a&&delete this._combined[d]}let d=Object.keys(this._extendedAttrs);for(let b=0;b<d.length;b++){let c=parseInt(d[b],10);c>=a&&delete this._extendedAttrs[c]}}return this.length=a,4*c*2<this._data.buffer.byteLength}cleanupMemory(){if(4*this._data.length*2<this._data.buffer.byteLength){let a=new Uint32Array(this._data.length);return a.set(this._data),this._data=a,1}return 0}fill(a,b=!1){if(b){for(let b=0;b<this.length;++b)this.isProtected(b)||this.setCell(b,a);return}this._combined={},this._extendedAttrs={};for(let b=0;b<this.length;++b)this.setCell(b,a)}copyFrom(a){for(let b in this.length!==a.length?this._data=new Uint32Array(a._data):this._data.set(a._data),this.length=a.length,this._combined={},a._combined)this._combined[b]=a._combined[b];for(let b in this._extendedAttrs={},a._extendedAttrs)this._extendedAttrs[b]=a._extendedAttrs[b];this.isWrapped=a.isWrapped}clone(){let b=new a(0);for(let a in b._data=new Uint32Array(this._data),b.length=this.length,this._combined)b._combined[a]=this._combined[a];for(let a in this._extendedAttrs)b._extendedAttrs[a]=this._extendedAttrs[a];return b.isWrapped=this.isWrapped,b}getTrimmedLength(){for(let a=this.length-1;a>=0;--a)if(4194303&this._data[3*a+0])return a+(this._data[3*a+0]>>22);return 0}getNoBgTrimmedLength(){for(let a=this.length-1;a>=0;--a)if(4194303&this._data[3*a+0]||0x3000000&this._data[3*a+2])return a+(this._data[3*a+0]>>22);return 0}copyCellsFrom(a,b,c,d,e){let f=a._data;if(e)for(let e=d-1;e>=0;e--){for(let a=0;a<3;a++)this._data[(c+e)*3+a]=f[(b+e)*3+a];0x10000000&f[(b+e)*3+2]&&(this._extendedAttrs[c+e]=a._extendedAttrs[b+e])}else for(let e=0;e<d;e++){for(let a=0;a<3;a++)this._data[(c+e)*3+a]=f[(b+e)*3+a];0x10000000&f[(b+e)*3+2]&&(this._extendedAttrs[c+e]=a._extendedAttrs[b+e])}let g=Object.keys(a._combined);for(let d=0;d<g.length;d++){let e=parseInt(g[d],10);e>=b&&(this._combined[e-b+c]=a._combined[e])}}translateToString(a,b,c,d){b=b??0,c=c??this.length,a&&(c=Math.min(c,this.getTrimmedLength())),d&&(d.length=0);let e="";for(;b<c;){let a=this._data[3*b+0],c=2097151&a,f=2097152&a?this._combined[b]:c?S(c):" ";if(e+=f,d)for(let a=0;a<f.length;++a)d.push(b);b+=a>>22||1}return d&&d.push(b),e}};function d8(a,b,c){if(b===a.length-1)return a[b].getTrimmedLength();let d=!a[b].hasContent(c-1)&&1===a[b].getWidth(c-1),e=2===a[b+1].getWidth(0);return d&&e?c-1:c}var d9=class a{constructor(b){this.line=b,this.isDisposed=!1,this._disposables=[],this._id=a._nextId++,this._onDispose=this.register(new a_),this.onDispose=this._onDispose.event}get id(){return this._id}dispose(){this.isDisposed||(this.isDisposed=!0,this.line=-1,this._onDispose.fire(),aE(this._disposables),this._disposables.length=0)}register(a){return this._disposables.push(a),a}};d9._nextId=1;var ea={},eb=ea.B;ea[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:"≥","{":"π","|":"≠","}":"£","~":"·"},ea.A={"#":"£"},ea.B=void 0,ea[4]={"#":"£","@":"¾","[":"ij","\\":"½","]":"|","{":"¨","|":"f","}":"¼","~":"´"},ea.C=ea[5]={"[":"Ä","\\":"Ö","]":"Å","^":"Ü","`":"é","{":"ä","|":"ö","}":"å","~":"ü"},ea.R={"#":"£","@":"à","[":"°","\\":"ç","]":"§","{":"é","|":"ù","}":"è","~":"¨"},ea.Q={"@":"à","[":"â","\\":"ç","]":"ê","^":"î","`":"ô","{":"é","|":"ù","}":"è","~":"û"},ea.K={"@":"§","[":"Ä","\\":"Ö","]":"Ü","{":"ä","|":"ö","}":"ü","~":"ß"},ea.Y={"#":"£","@":"§","[":"°","\\":"ç","]":"é","`":"ù","{":"à","|":"ò","}":"è","~":"ì"},ea.E=ea[6]={"@":"Ä","[":"Æ","\\":"Ø","]":"Å","^":"Ü","`":"ä","{":"æ","|":"ø","}":"å","~":"ü"},ea.Z={"#":"£","@":"§","[":"¡","\\":"Ñ","]":"¿","{":"°","|":"ñ","}":"ç"},ea.H=ea[7]={"@":"É","[":"Ä","\\":"Ö","]":"Å","^":"Ü","`":"é","{":"ä","|":"ö","}":"å","~":"ü"},ea["="]={"#":"ù","@":"à","[":"é","\\":"ç","]":"ê","^":"î",_:"è","`":"ô","{":"ä","|":"ö","}":"ü","~":"û"};var ec=class{constructor(a,b,c){this._hasScrollback=a,this._optionsService=b,this._bufferService=c,this.ydisp=0,this.ybase=0,this.y=0,this.x=0,this.tabs={},this.savedY=0,this.savedX=0,this.savedCurAttrData=d5.clone(),this.savedCharset=eb,this.markers=[],this._nullCell=Y.fromCharData([0,"",1,0]),this._whitespaceCell=Y.fromCharData([0," ",1,32]),this._isClearing=!1,this._memoryCleanupQueue=new dG,this._memoryCleanupPosition=0,this._cols=this._bufferService.cols,this._rows=this._bufferService.rows,this.lines=new d4(this._getCorrectBufferLength(this._rows)),this.scrollTop=0,this.scrollBottom=this._rows-1,this.setupTabStops()}getNullCell(a){return a?(this._nullCell.fg=a.fg,this._nullCell.bg=a.bg,this._nullCell.extended=a.extended):(this._nullCell.fg=0,this._nullCell.bg=0,this._nullCell.extended=new X),this._nullCell}getWhitespaceCell(a){return a?(this._whitespaceCell.fg=a.fg,this._whitespaceCell.bg=a.bg,this._whitespaceCell.extended=a.extended):(this._whitespaceCell.fg=0,this._whitespaceCell.bg=0,this._whitespaceCell.extended=new X),this._whitespaceCell}getBlankLine(a,b){return new d7(this._bufferService.cols,this.getNullCell(a),b)}get hasScrollback(){return this._hasScrollback&&this.lines.maxLength>this._rows}get isCursorInViewport(){let a=this.ybase+this.y-this.ydisp;return a>=0&&a<this._rows}_getCorrectBufferLength(a){if(!this._hasScrollback)return a;let b=a+this._optionsService.rawOptions.scrollback;return b>0xffffffff?0xffffffff:b}fillViewportRows(a){if(0===this.lines.length){void 0===a&&(a=d5);let b=this._rows;for(;b--;)this.lines.push(this.getBlankLine(a))}}clear(){this.ydisp=0,this.ybase=0,this.y=0,this.x=0,this.lines=new d4(this._getCorrectBufferLength(this._rows)),this.scrollTop=0,this.scrollBottom=this._rows-1,this.setupTabStops()}resize(a,b){let c=this.getNullCell(d5),d=0,e=this._getCorrectBufferLength(b);if(e>this.lines.maxLength&&(this.lines.maxLength=e),this.lines.length>0){if(this._cols<a)for(let b=0;b<this.lines.length;b++)d+=+this.lines.get(b).resize(a,c);let f=0;if(this._rows<b)for(let d=this._rows;d<b;d++)this.lines.length<b+this.ybase&&(this._optionsService.rawOptions.windowsMode||void 0!==this._optionsService.rawOptions.windowsPty.backend||void 0!==this._optionsService.rawOptions.windowsPty.buildNumber?this.lines.push(new d7(a,c)):this.ybase>0&&this.lines.length<=this.ybase+this.y+f+1?(this.ybase--,f++,this.ydisp>0&&this.ydisp--):this.lines.push(new d7(a,c)));else for(let a=this._rows;a>b;a--)this.lines.length>b+this.ybase&&(this.lines.length>this.ybase+this.y+1?this.lines.pop():(this.ybase++,this.ydisp++));if(e<this.lines.maxLength){let a=this.lines.length-e;a>0&&(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=e}this.x=Math.min(this.x,a-1),this.y=Math.min(this.y,b-1),f&&(this.y+=f),this.savedX=Math.min(this.savedX,a-1),this.scrollTop=0}if(this.scrollBottom=b-1,this._isReflowEnabled&&(this._reflow(a,b),this._cols>a))for(let b=0;b<this.lines.length;b++)d+=+this.lines.get(b).resize(a,c);this._cols=a,this._rows=b,this._memoryCleanupQueue.clear(),d>.1*this.lines.length&&(this._memoryCleanupPosition=0,this._memoryCleanupQueue.enqueue(()=>this._batchedMemoryCleanup()))}_batchedMemoryCleanup(){let a=!0;this._memoryCleanupPosition>=this.lines.length&&(this._memoryCleanupPosition=0,a=!1);let b=0;for(;this._memoryCleanupPosition<this.lines.length;)if((b+=this.lines.get(this._memoryCleanupPosition++).cleanupMemory())>100)return!0;return a}get _isReflowEnabled(){let a=this._optionsService.rawOptions.windowsPty;return a&&a.buildNumber?this._hasScrollback&&"conpty"===a.backend&&a.buildNumber>=21376:this._hasScrollback&&!this._optionsService.rawOptions.windowsMode}_reflow(a,b){this._cols!==a&&(a>this._cols?this._reflowLarger(a,b):this._reflowSmaller(a,b))}_reflowLarger(a,b){let c=this._optionsService.rawOptions.reflowCursorLine,d=function(a,b,c,d,e,f){let g=[];for(let h=0;h<a.length-1;h++){let i=h,j=a.get(++i);if(!j.isWrapped)continue;let k=[a.get(h)];for(;i<a.length&&j.isWrapped;)k.push(j),j=a.get(++i);if(!f&&d>=h&&d<i){h+=k.length-1;continue}let l=0,m=d8(k,0,b),n=1,o=0;for(;n<k.length;){let a=d8(k,n,b),d=Math.min(a-o,c-m);k[l].copyCellsFrom(k[n],o,m,d,!1),(m+=d)===c&&(l++,m=0),(o+=d)===a&&(n++,o=0),0===m&&0!==l&&2===k[l-1].getWidth(c-1)&&(k[l].copyCellsFrom(k[l-1],c-1,m++,1,!1),k[l-1].setCell(c-1,e))}k[l].replaceCells(m,c,e);let p=0;for(let a=k.length-1;a>0&&(a>l||0===k[a].getTrimmedLength());a--)p++;p>0&&(g.push(h+k.length-p),g.push(p)),h+=k.length-1}return g}(this.lines,this._cols,a,this.ybase+this.y,this.getNullCell(d5),c);if(d.length>0){let c=function(a,b){let c=[],d=0,e=b[0],f=0;for(let g=0;g<a.length;g++)if(e===g){let c=b[++d];a.onDeleteEmitter.fire({index:g-f,amount:c}),g+=c-1,f+=c,e=b[++d]}else c.push(g);return{layout:c,countRemoved:f}}(this.lines,d);(function(a,b){let c=[];for(let d=0;d<b.length;d++)c.push(a.get(b[d]));for(let b=0;b<c.length;b++)a.set(b,c[b]);a.length=b.length})(this.lines,c.layout),this._reflowLargerAdjustViewport(a,b,c.countRemoved)}}_reflowLargerAdjustViewport(a,b,c){let d=this.getNullCell(d5),e=c;for(;e-- >0;)0===this.ybase?(this.y>0&&this.y--,this.lines.length<b&&this.lines.push(new d7(a,d))):(this.ydisp===this.ybase&&this.ydisp--,this.ybase--);this.savedY=Math.max(this.savedY-c,0)}_reflowSmaller(a,b){let c=this._optionsService.rawOptions.reflowCursorLine,d=this.getNullCell(d5),e=[],f=0;for(let g=this.lines.length-1;g>=0;g--){let h=this.lines.get(g);if(!h||!h.isWrapped&&h.getTrimmedLength()<=a)continue;let i=[h];for(;h.isWrapped&&g>0;)h=this.lines.get(--g),i.unshift(h);if(!c){let a=this.ybase+this.y;if(a>=g&&a<g+i.length)continue}let j=i[i.length-1].getTrimmedLength(),k=function(a,b,c){let d=[],e=a.map((c,d)=>d8(a,d,b)).reduce((a,b)=>a+b),f=0,g=0,h=0;for(;h<e;){if(e-h<c){d.push(e-h);break}f+=c;let i=d8(a,g,b);f>i&&(f-=i,g++);let j=2===a[g].getWidth(f-1);j&&f--;let k=j?c-1:c;d.push(k),h+=k}return d}(i,this._cols,a),l=k.length-i.length,m;m=0===this.ybase&&this.y!==this.lines.length-1?Math.max(0,this.y-this.lines.maxLength+l):Math.max(0,this.lines.length-this.lines.maxLength+l);let n=[];for(let a=0;a<l;a++){let a=this.getBlankLine(d5,!0);n.push(a)}n.length>0&&(e.push({start:g+i.length+f,newLines:n}),f+=n.length),i.push(...n);let o=k.length-1,p=k[o];0===p&&(p=k[--o]);let q=i.length-l-1,r=j;for(;q>=0;){let a=Math.min(r,p);if(void 0===i[o])break;i[o].copyCellsFrom(i[q],r-a,p-a,a,!0),0==(p-=a)&&(p=k[--o]),0==(r-=a)&&(r=d8(i,Math.max(--q,0),this._cols))}for(let b=0;b<i.length;b++)k[b]<a&&i[b].setCell(k[b],d);let s=l-m;for(;s-- >0;)0===this.ybase?this.y<b-1?(this.y++,this.lines.pop()):(this.ybase++,this.ydisp++):this.ybase<Math.min(this.lines.maxLength,this.lines.length+f)-b&&(this.ybase===this.ydisp&&this.ydisp++,this.ybase++);this.savedY=Math.min(this.savedY+l,this.ybase+b-1)}if(e.length>0){let a=[],b=[];for(let a=0;a<this.lines.length;a++)b.push(this.lines.get(a));let c=this.lines.length,d=c-1,g=0,h=e[0];this.lines.length=Math.min(this.lines.maxLength,this.lines.length+f);let i=0;for(let j=Math.min(this.lines.maxLength-1,c+f-1);j>=0;j--)if(h&&h.start>d+i){for(let a=h.newLines.length-1;a>=0;a--)this.lines.set(j--,h.newLines[a]);j++,a.push({index:d+1,amount:h.newLines.length}),i+=h.newLines.length,h=e[++g]}else this.lines.set(j,b[d--]);let j=0;for(let b=a.length-1;b>=0;b--)a[b].index+=j,this.lines.onInsertEmitter.fire(a[b]),j+=a[b].amount;let k=Math.max(0,c+f-this.lines.maxLength);k>0&&this.lines.onTrimEmitter.fire(k)}}translateBufferLineToString(a,b,c=0,d){let e=this.lines.get(a);return e?e.translateToString(b,c,d):""}getWrappedRangeForLine(a){let b=a,c=a;for(;b>0&&this.lines.get(b).isWrapped;)b--;for(;c+1<this.lines.length&&this.lines.get(c+1).isWrapped;)c++;return{first:b,last:c}}setupTabStops(a){for(null!=a?this.tabs[a]||(a=this.prevStop(a)):(this.tabs={},a=0);a<this._cols;a+=this._optionsService.rawOptions.tabStopWidth)this.tabs[a]=!0}prevStop(a){for(null==a&&(a=this.x);!this.tabs[--a]&&a>0;);return a>=this._cols?this._cols-1:a<0?0:a}nextStop(a){for(null==a&&(a=this.x);!this.tabs[++a]&&a<this._cols;);return a>=this._cols?this._cols-1:a<0?0:a}clearMarkers(a){this._isClearing=!0;for(let b=0;b<this.markers.length;b++)this.markers[b].line===a&&(this.markers[b].dispose(),this.markers.splice(b--,1));this._isClearing=!1}clearAllMarkers(){this._isClearing=!0;for(let a=0;a<this.markers.length;a++)this.markers[a].dispose();this.markers.length=0,this._isClearing=!1}addMarker(a){let b=new d9(a);return this.markers.push(b),b.register(this.lines.onTrim(a=>{b.line-=a,b.line<0&&b.dispose()})),b.register(this.lines.onInsert(a=>{b.line>=a.index&&(b.line+=a.amount)})),b.register(this.lines.onDelete(a=>{b.line>=a.index&&b.line<a.index+a.amount&&b.dispose(),b.line>a.index&&(b.line-=a.amount)})),b.register(b.onDispose(()=>this._removeMarker(b))),b}_removeMarker(a){this._isClearing||this.markers.splice(this.markers.indexOf(a),1)}},ed=class extends aI{constructor(a,b){super(),this._optionsService=a,this._bufferService=b,this._onBufferActivate=this._register(new a_),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 ec(!0,this._optionsService,this._bufferService),this._normal.fillViewportRows(),this._alt=new ec(!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(a){this._activeBuffer!==this._alt&&(this._alt.fillViewportRows(a),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(a,b){this._normal.resize(a,b),this._alt.resize(a,b),this.setupTabStops(a)}setupTabStops(a){this._normal.setupTabStops(a),this._alt.setupTabStops(a)}},ee=class extends aI{constructor(a){super(),this.isUserScrolling=!1,this._onResize=this._register(new a_),this.onResize=this._onResize.event,this._onScroll=this._register(new a_),this.onScroll=this._onScroll.event,this.cols=Math.max(a.rawOptions.cols||0,2),this.rows=Math.max(a.rawOptions.rows||0,1),this.buffers=this._register(new ed(a,this)),this._register(this.buffers.onBufferActivate(a=>{this._onScroll.fire(a.activeBuffer.ydisp)}))}get buffer(){return this.buffers.active}resize(a,b){let c=this.cols!==a,d=this.rows!==b;this.cols=a,this.rows=b,this.buffers.resize(a,b),this._onResize.fire({cols:a,rows:b,colsChanged:c,rowsChanged:d})}reset(){this.buffers.reset(),this.isUserScrolling=!1}scroll(a,b=!1){let c=this.buffer,d;(d=this._cachedBlankLine)&&d.length===this.cols&&d.getFg(0)===a.fg&&d.getBg(0)===a.bg||(d=c.getBlankLine(a,b),this._cachedBlankLine=d),d.isWrapped=b;let e=c.ybase+c.scrollTop,f=c.ybase+c.scrollBottom;if(0===c.scrollTop){let a=c.lines.isFull;f===c.lines.length-1?a?c.lines.recycle().copyFrom(d):c.lines.push(d.clone()):c.lines.splice(f+1,0,d.clone()),a?this.isUserScrolling&&(c.ydisp=Math.max(c.ydisp-1,0)):(c.ybase++,this.isUserScrolling||c.ydisp++)}else{let a=f-e+1;c.lines.shiftElements(e+1,a-1,-1),c.lines.set(f,d.clone())}this.isUserScrolling||(c.ydisp=c.ybase),this._onScroll.fire(c.ydisp)}scrollLines(a,b){let c=this.buffer;if(a<0){if(0===c.ydisp)return;this.isUserScrolling=!0}else a+c.ydisp>=c.ybase&&(this.isUserScrolling=!1);let d=c.ydisp;c.ydisp=Math.max(Math.min(c.ydisp+a,c.ybase),0),d!==c.ydisp&&(b||this._onScroll.fire(c.ydisp))}};ee=L([M(0,ah)],ee);var ef={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:dx,windowOptions:{},windowsMode:!1,windowsPty:{},wordSeparator:" ()[]{}',\"`",altClickMovesCursor:!0,convertEol:!1,termName:"xterm",cancelEvents:!1,overviewRuler:{}},eg=["normal","bold","100","200","300","400","500","600","700","800","900"],eh=class extends aI{constructor(a){super(),this._onOptionChange=this._register(new a_),this.onOptionChange=this._onOptionChange.event;let b={...ef};for(let c in a)if(c in b)try{let d=a[c];b[c]=this._sanitizeAndValidateOption(c,d)}catch(a){console.error(a)}this.rawOptions=b,this.options={...b},this._setupOptions(),this._register(aF(()=>{this.rawOptions.linkHandler=null,this.rawOptions.documentOverride=null}))}onSpecificOptionChange(a,b){return this.onOptionChange(c=>{c===a&&b(this.rawOptions[a])})}onMultipleOptionChange(a,b){return this.onOptionChange(c=>{-1!==a.indexOf(c)&&b()})}_setupOptions(){let a=a=>{if(!(a in ef))throw Error(`No option with key "${a}"`);return this.rawOptions[a]},b=(a,b)=>{if(!(a in ef))throw Error(`No option with key "${a}"`);b=this._sanitizeAndValidateOption(a,b),this.rawOptions[a]!==b&&(this.rawOptions[a]=b,this._onOptionChange.fire(a))};for(let c in this.rawOptions){let d={get:a.bind(this,c),set:b.bind(this,c)};Object.defineProperty(this.options,c,d)}}_sanitizeAndValidateOption(a,b){switch(a){case"cursorStyle":var c;if(b||(b=ef[a]),"block"!==(c=b)&&"underline"!==c&&"bar"!==c)throw Error(`"${b}" is not a valid value for ${a}`);break;case"wordSeparator":b||(b=ef[a]);break;case"fontWeight":case"fontWeightBold":if("number"==typeof b&&1<=b&&b<=1e3)break;b=eg.includes(b)?b:ef[a];break;case"cursorWidth":b=Math.floor(b);case"lineHeight":case"tabStopWidth":if(b<1)throw Error(`${a} cannot be less than 1, value: ${b}`);break;case"minimumContrastRatio":b=Math.max(1,Math.min(21,Math.round(10*b)/10));break;case"scrollback":if((b=Math.min(b,0xffffffff))<0)throw Error(`${a} cannot be less than 0, value: ${b}`);break;case"fastScrollSensitivity":case"scrollSensitivity":if(b<=0)throw Error(`${a} cannot be less than or equal to 0, value: ${b}`);break;case"rows":case"cols":if(!b&&0!==b)throw Error(`${a} must be numeric, value: ${b}`);break;case"windowsPty":b=b??{}}return b}};function ei(a,b=5){if("object"!=typeof a)return a;let c=Array.isArray(a)?[]:{};for(let d in a)c[d]=b<=1?a[d]:a[d]&&ei(a[d],b-1);return c}var ej=Object.freeze({insertMode:!1}),ek=Object.freeze({applicationCursorKeys:!1,applicationKeypad:!1,bracketedPasteMode:!1,cursorBlink:void 0,cursorStyle:void 0,origin:!1,reverseWraparound:!1,sendFocus:!1,synchronizedOutput:!1,wraparound:!0}),el=class extends aI{constructor(a,b,c){super(),this._bufferService=a,this._logService=b,this._optionsService=c,this.isCursorInitialized=!1,this.isCursorHidden=!1,this._onData=this._register(new a_),this.onData=this._onData.event,this._onUserInput=this._register(new a_),this.onUserInput=this._onUserInput.event,this._onBinary=this._register(new a_),this.onBinary=this._onBinary.event,this._onRequestScrollToBottom=this._register(new a_),this.onRequestScrollToBottom=this._onRequestScrollToBottom.event,this.modes=ei(ej),this.decPrivateModes=ei(ek)}reset(){this.modes=ei(ej),this.decPrivateModes=ei(ek)}triggerDataEvent(a,b=!1){if(this._optionsService.rawOptions.disableStdin)return;let c=this._bufferService.buffer;b&&this._optionsService.rawOptions.scrollOnUserInput&&c.ybase!==c.ydisp&&this._onRequestScrollToBottom.fire(),b&&this._onUserInput.fire(),this._logService.debug(`sending data "${a}"`),this._logService.trace("sending data (codes)",()=>a.split("").map(a=>a.charCodeAt(0))),this._onData.fire(a)}triggerBinaryEvent(a){this._optionsService.rawOptions.disableStdin||(this._logService.debug(`sending binary "${a}"`),this._logService.trace("sending binary (codes)",()=>a.split("").map(a=>a.charCodeAt(0))),this._onBinary.fire(a))}};el=L([M(0,ab),M(1,ag),M(2,ah)],el);var em={NONE:{events:0,restrict:()=>!1},X10:{events:1,restrict:a=>4!==a.button&&1===a.action&&(a.ctrl=!1,a.alt=!1,a.shift=!1,!0)},VT200:{events:19,restrict:a=>32!==a.action},DRAG:{events:23,restrict:a=>32!==a.action||3!==a.button},ANY:{events:31,restrict:a=>!0}};function en(a,b){let c=16*!!a.ctrl|4*!!a.shift|8*!!a.alt;return 4===a.button?(c|=64,c|=a.action):(c|=3&a.button,4&a.button&&(c|=64),8&a.button&&(c|=128),32===a.action?c|=32:0!==a.action||b||(c|=3)),c}var eo=String.fromCharCode,ep={DEFAULT:a=>{let b=[en(a,!1)+32,a.col+32,a.row+32];return b[0]>255||b[1]>255||b[2]>255?"":`\x1b[M${eo(b[0])}${eo(b[1])}${eo(b[2])}`},SGR:a=>{let b=0===a.action&&4!==a.button?"m":"M";return`\x1b[<${en(a,!0)};${a.col};${a.row}${b}`},SGR_PIXELS:a=>{let b=0===a.action&&4!==a.button?"m":"M";return`\x1b[<${en(a,!0)};${a.x};${a.y}${b}`}},eq=class extends aI{constructor(a,b,c){for(let d of(super(),this._bufferService=a,this._coreService=b,this._optionsService=c,this._protocols={},this._encodings={},this._activeProtocol="",this._activeEncoding="",this._lastEvent=null,this._wheelPartialScroll=0,this._onProtocolChange=this._register(new a_),this.onProtocolChange=this._onProtocolChange.event,Object.keys(em)))this.addProtocol(d,em[d]);for(let a of Object.keys(ep))this.addEncoding(a,ep[a]);this.reset()}addProtocol(a,b){this._protocols[a]=b}addEncoding(a,b){this._encodings[a]=b}get activeProtocol(){return this._activeProtocol}get areMouseEventsActive(){return 0!==this._protocols[this._activeProtocol].events}set activeProtocol(a){if(!this._protocols[a])throw Error(`unknown protocol "${a}"`);this._activeProtocol=a,this._onProtocolChange.fire(this._protocols[a].events)}get activeEncoding(){return this._activeEncoding}set activeEncoding(a){if(!this._encodings[a])throw Error(`unknown encoding "${a}"`);this._activeEncoding=a}reset(){this.activeProtocol="NONE",this.activeEncoding="DEFAULT",this._lastEvent=null,this._wheelPartialScroll=0}consumeWheelEvent(a,b,c){if(0===a.deltaY||a.shiftKey||void 0===b||void 0===c)return 0;let d=this._applyScrollModifier(a.deltaY,a);return a.deltaMode===WheelEvent.DOM_DELTA_PIXEL?(d/=b/c+0,50>Math.abs(a.deltaY)&&(d*=.3),this._wheelPartialScroll+=d,d=Math.floor(Math.abs(this._wheelPartialScroll))*(this._wheelPartialScroll>0?1:-1),this._wheelPartialScroll%=1):a.deltaMode===WheelEvent.DOM_DELTA_PAGE&&(d*=this._bufferService.rows),d}_applyScrollModifier(a,b){return b.altKey||b.ctrlKey||b.shiftKey?a*this._optionsService.rawOptions.fastScrollSensitivity*this._optionsService.rawOptions.scrollSensitivity:a*this._optionsService.rawOptions.scrollSensitivity}triggerMouseEvent(a){if(a.col<0||a.col>=this._bufferService.cols||a.row<0||a.row>=this._bufferService.rows||4===a.button&&32===a.action||3===a.button&&32!==a.action||4!==a.button&&(2===a.action||3===a.action)||(a.col++,a.row++,32===a.action&&this._lastEvent&&this._equalEvents(this._lastEvent,a,"SGR_PIXELS"===this._activeEncoding))||!this._protocols[this._activeProtocol].restrict(a))return!1;let b=this._encodings[this._activeEncoding](a);return b&&("DEFAULT"===this._activeEncoding?this._coreService.triggerBinaryEvent(b):this._coreService.triggerDataEvent(b,!0)),this._lastEvent=a,!0}explainEvents(a){return{down:!!(1&a),up:!!(2&a),drag:!!(4&a),move:!!(8&a),wheel:!!(16&a)}}_equalEvents(a,b,c){if(c){if(a.x!==b.x||a.y!==b.y)return!1}else if(a.col!==b.col||a.row!==b.row)return!1;return a.button===b.button&&a.action===b.action&&a.ctrl===b.ctrl&&a.alt===b.alt&&a.shift===b.shift}};eq=L([M(0,ab),M(1,ad),M(2,ah)],eq);var er,es,et,eu,ev,ew,ex=[[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]],ey=[[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]],ez=class{constructor(){if(this.version="6",!ew){(ew=new Uint8Array(65536)).fill(1),ew[0]=0,ew.fill(0,1,32),ew.fill(0,127,160),ew.fill(2,4352,4448),ew[9001]=2,ew[9002]=2,ew.fill(2,11904,42192),ew[12351]=1,ew.fill(2,44032,55204),ew.fill(2,63744,64256),ew.fill(2,65040,65050),ew.fill(2,65072,65136),ew.fill(2,65280,65377),ew.fill(2,65504,65511);for(let a=0;a<ex.length;++a)ew.fill(0,ex[a][0],ex[a][1]+1)}}wcwidth(a){return a<32?0:a<127?1:a<65536?ew[a]:!function(a,b){let c=0,d=b.length-1,e;if(a<b[0][0]||a>b[d][1])return!1;for(;d>=c;)if(a>b[e=c+d>>1][1])c=e+1;else{if(!(a<b[e][0]))return!0;d=e-1}return!1}(a,ey)?a>=131072&&a<=196605||a>=196608&&a<=262141?2:1:0}charProperties(a,b){let c=this.wcwidth(a),d=0===c&&0!==b;if(d){let a=eA.extractWidth(b);0===a?d=!1:a>c&&(c=a)}return eA.createPropertyValue(0,c,d)}},eA=class a{constructor(){this._providers=Object.create(null),this._active="",this._onChange=new a_,this.onChange=this._onChange.event;let a=new ez;this.register(a),this._active=a.version,this._activeProvider=a}static extractShouldJoin(a){return(1&a)!=0}static extractWidth(a){return a>>1&3}static extractCharKind(a){return a>>3}static createPropertyValue(a,b,c=!1){return(0xffffff&a)<<3|(3&b)<<1|!!c}dispose(){this._onChange.dispose()}get versions(){return Object.keys(this._providers)}get activeVersion(){return this._active}set activeVersion(a){if(!this._providers[a])throw Error(`unknown Unicode version "${a}"`);this._active=a,this._activeProvider=this._providers[a],this._onChange.fire(a)}register(a){this._providers[a.version]=a}wcwidth(a){return this._activeProvider.wcwidth(a)}getStringCellWidth(b){let c=0,d=0,e=b.length;for(let f=0;f<e;++f){let g=b.charCodeAt(f);if(55296<=g&&g<=56319){if(++f>=e)return c+this.wcwidth(g);let a=b.charCodeAt(f);56320<=a&&a<=57343?g=(g-55296)*1024+a-56320+65536:c+=this.wcwidth(a)}let h=this.charProperties(g,d),i=a.extractWidth(h);a.extractShouldJoin(h)&&(i-=a.extractWidth(d)),c+=i,d=h}return c}charProperties(a,b){return this._activeProvider.charProperties(a,b)}},eB=class{constructor(){this.glevel=0,this._charsets=[]}reset(){this.charset=void 0,this._charsets=[],this.glevel=0}setgLevel(a){this.glevel=a,this.charset=this._charsets[a]}setgCharset(a,b){this._charsets[a]=b,this.glevel===a&&(this.charset=b)}};function eC(a){let b=a.buffer.lines.get(a.buffer.ybase+a.buffer.y-1)?.get(a.cols-1),c=a.buffer.lines.get(a.buffer.ybase+a.buffer.y);c&&b&&(c.isWrapped=0!==b[3]&&32!==b[3])}var eD=class a{constructor(a=32,b=32){if(this.maxLength=a,this.maxSubParamsLength=b,b>256)throw Error("maxSubParamsLength must not be greater than 256");this.params=new Int32Array(a),this.length=0,this._subParams=new Int32Array(b),this._subParamsLength=0,this._subParamsIdx=new Uint16Array(a),this._rejectDigits=!1,this._rejectSubDigits=!1,this._digitIsSub=!1}static fromArray(b){let c=new a;if(!b.length)return c;for(let a=+!!Array.isArray(b[0]);a<b.length;++a){let d=b[a];if(Array.isArray(d))for(let a=0;a<d.length;++a)c.addSubParam(d[a]);else c.addParam(d)}return c}clone(){let b=new a(this.maxLength,this.maxSubParamsLength);return b.params.set(this.params),b.length=this.length,b._subParams.set(this._subParams),b._subParamsLength=this._subParamsLength,b._subParamsIdx.set(this._subParamsIdx),b._rejectDigits=this._rejectDigits,b._rejectSubDigits=this._rejectSubDigits,b._digitIsSub=this._digitIsSub,b}toArray(){let a=[];for(let b=0;b<this.length;++b){a.push(this.params[b]);let c=this._subParamsIdx[b]>>8,d=255&this._subParamsIdx[b];d-c>0&&a.push(Array.prototype.slice.call(this._subParams,c,d))}return a}reset(){this.length=0,this._subParamsLength=0,this._rejectDigits=!1,this._rejectSubDigits=!1,this._digitIsSub=!1}addParam(a){if(this._digitIsSub=!1,this.length>=this.maxLength){this._rejectDigits=!0;return}if(a<-1)throw Error("values lesser than -1 are not allowed");this._subParamsIdx[this.length]=this._subParamsLength<<8|this._subParamsLength,this.params[this.length++]=a>0x7fffffff?0x7fffffff:a}addSubParam(a){if(this._digitIsSub=!0,this.length){if(this._rejectDigits||this._subParamsLength>=this.maxSubParamsLength){this._rejectSubDigits=!0;return}if(a<-1)throw Error("values lesser than -1 are not allowed");this._subParams[this._subParamsLength++]=a>0x7fffffff?0x7fffffff:a,this._subParamsIdx[this.length-1]++}}hasSubParams(a){return(255&this._subParamsIdx[a])-(this._subParamsIdx[a]>>8)>0}getSubParams(a){let b=this._subParamsIdx[a]>>8,c=255&this._subParamsIdx[a];return c-b>0?this._subParams.subarray(b,c):null}getSubParamsAll(){let a={};for(let b=0;b<this.length;++b){let c=this._subParamsIdx[b]>>8,d=255&this._subParamsIdx[b];d-c>0&&(a[b]=this._subParams.slice(c,d))}return a}addDigit(a){let b;if(this._rejectDigits||!(b=this._digitIsSub?this._subParamsLength:this.length)||this._digitIsSub&&this._rejectSubDigits)return;let c=this._digitIsSub?this._subParams:this.params,d=c[b-1];c[b-1]=~d?Math.min(10*d+a,0x7fffffff):a}},eE=[],eF=class{constructor(){this._state=0,this._active=eE,this._id=-1,this._handlers=Object.create(null),this._handlerFb=()=>{},this._stack={paused:!1,loopPosition:0,fallThrough:!1}}registerHandler(a,b){void 0===this._handlers[a]&&(this._handlers[a]=[]);let c=this._handlers[a];return c.push(b),{dispose:()=>{let a=c.indexOf(b);-1!==a&&c.splice(a,1)}}}clearHandler(a){this._handlers[a]&&delete this._handlers[a]}setHandlerFallback(a){this._handlerFb=a}dispose(){this._handlers=Object.create(null),this._handlerFb=()=>{},this._active=eE}reset(){if(2===this._state)for(let a=this._stack.paused?this._stack.loopPosition-1:this._active.length-1;a>=0;--a)this._active[a].end(!1);this._stack.paused=!1,this._active=eE,this._id=-1,this._state=0}_start(){if(this._active=this._handlers[this._id]||eE,this._active.length)for(let a=this._active.length-1;a>=0;a--)this._active[a].start();else this._handlerFb(this._id,"START")}_put(a,b,c){if(this._active.length)for(let d=this._active.length-1;d>=0;d--)this._active[d].put(a,b,c);else this._handlerFb(this._id,"PUT",T(a,b,c))}start(){this.reset(),this._state=1}put(a,b,c){if(3!==this._state){if(1===this._state)for(;b<c;){let c=a[b++];if(59===c){this._state=2,this._start();break}if(c<48||57<c){this._state=3;return}-1===this._id&&(this._id=0),this._id=10*this._id+c-48}2===this._state&&c-b>0&&this._put(a,b,c)}}end(a,b=!0){if(0!==this._state){if(3!==this._state)if(1===this._state&&this._start(),this._active.length){let c=!1,d=this._active.length-1,e=!1;if(this._stack.paused&&(d=this._stack.loopPosition-1,c=b,e=this._stack.fallThrough,this._stack.paused=!1),!e&&!1===c){for(;d>=0&&!0!==(c=this._active[d].end(a));d--)if(c instanceof Promise)return this._stack.paused=!0,this._stack.loopPosition=d,this._stack.fallThrough=!1,c;d--}for(;d>=0;d--)if((c=this._active[d].end(!1))instanceof Promise)return this._stack.paused=!0,this._stack.loopPosition=d,this._stack.fallThrough=!0,c}else this._handlerFb(this._id,"END",a);this._active=eE,this._id=-1,this._state=0}}},eG=class{constructor(a){this._handler=a,this._data="",this._hitLimit=!1}start(){this._data="",this._hitLimit=!1}put(a,b,c){this._hitLimit||(this._data+=T(a,b,c),this._data.length>1e7&&(this._data="",this._hitLimit=!0))}end(a){let b=!1;if(this._hitLimit)b=!1;else if(a&&(b=this._handler(this._data))instanceof Promise)return b.then(a=>(this._data="",this._hitLimit=!1,a));return this._data="",this._hitLimit=!1,b}},eH=[],eI=class{constructor(){this._handlers=Object.create(null),this._active=eH,this._ident=0,this._handlerFb=()=>{},this._stack={paused:!1,loopPosition:0,fallThrough:!1}}dispose(){this._handlers=Object.create(null),this._handlerFb=()=>{},this._active=eH}registerHandler(a,b){void 0===this._handlers[a]&&(this._handlers[a]=[]);let c=this._handlers[a];return c.push(b),{dispose:()=>{let a=c.indexOf(b);-1!==a&&c.splice(a,1)}}}clearHandler(a){this._handlers[a]&&delete this._handlers[a]}setHandlerFallback(a){this._handlerFb=a}reset(){if(this._active.length)for(let a=this._stack.paused?this._stack.loopPosition-1:this._active.length-1;a>=0;--a)this._active[a].unhook(!1);this._stack.paused=!1,this._active=eH,this._ident=0}hook(a,b){if(this.reset(),this._ident=a,this._active=this._handlers[a]||eH,this._active.length)for(let a=this._active.length-1;a>=0;a--)this._active[a].hook(b);else this._handlerFb(this._ident,"HOOK",b)}put(a,b,c){if(this._active.length)for(let d=this._active.length-1;d>=0;d--)this._active[d].put(a,b,c);else this._handlerFb(this._ident,"PUT",T(a,b,c))}unhook(a,b=!0){if(this._active.length){let c=!1,d=this._active.length-1,e=!1;if(this._stack.paused&&(d=this._stack.loopPosition-1,c=b,e=this._stack.fallThrough,this._stack.paused=!1),!e&&!1===c){for(;d>=0&&!0!==(c=this._active[d].unhook(a));d--)if(c instanceof Promise)return this._stack.paused=!0,this._stack.loopPosition=d,this._stack.fallThrough=!1,c;d--}for(;d>=0;d--)if((c=this._active[d].unhook(!1))instanceof Promise)return this._stack.paused=!0,this._stack.loopPosition=d,this._stack.fallThrough=!0,c}else this._handlerFb(this._ident,"UNHOOK",a);this._active=eH,this._ident=0}},eJ=new eD;eJ.addParam(0);var eK=class{constructor(a){this._handler=a,this._data="",this._params=eJ,this._hitLimit=!1}hook(a){this._params=a.length>1||a.params[0]?a.clone():eJ,this._data="",this._hitLimit=!1}put(a,b,c){this._hitLimit||(this._data+=T(a,b,c),this._data.length>1e7&&(this._data="",this._hitLimit=!0))}unhook(a){let b=!1;if(this._hitLimit)b=!1;else if(a&&(b=this._handler(this._data,this._params))instanceof Promise)return b.then(a=>(this._params=eJ,this._data="",this._hitLimit=!1,a));return this._params=eJ,this._data="",this._hitLimit=!1,b}},eL=class{constructor(a){this.table=new Uint8Array(a)}setDefault(a,b){this.table.fill(a<<4|b)}add(a,b,c,d){this.table[b<<8|a]=c<<4|d}addMany(a,b,c,d){for(let e=0;e<a.length;e++)this.table[b<<8|a[e]]=c<<4|d}},eM=function(){let a=new eL(4095),b=Array.apply(null,Array(256)).map((a,b)=>b),c=(a,c)=>b.slice(a,c),d=c(32,127),e=c(0,24);e.push(25),e.push.apply(e,c(28,32));let f=c(0,14),g;for(g in a.setDefault(1,0),a.addMany(d,0,2,0),f)a.addMany([24,26,153,154],g,3,0),a.addMany(c(128,144),g,3,0),a.addMany(c(144,152),g,3,0),a.add(156,g,0,0),a.add(27,g,11,1),a.add(157,g,4,8),a.addMany([152,158,159],g,0,7),a.add(155,g,11,3),a.add(144,g,11,9);return a.addMany(e,0,3,0),a.addMany(e,1,3,1),a.add(127,1,0,1),a.addMany(e,8,0,8),a.addMany(e,3,3,3),a.add(127,3,0,3),a.addMany(e,4,3,4),a.add(127,4,0,4),a.addMany(e,6,3,6),a.addMany(e,5,3,5),a.add(127,5,0,5),a.addMany(e,2,3,2),a.add(127,2,0,2),a.add(93,1,4,8),a.addMany(d,8,5,8),a.add(127,8,5,8),a.addMany([156,27,24,26,7],8,6,0),a.addMany(c(28,32),8,0,8),a.addMany([88,94,95],1,0,7),a.addMany(d,7,0,7),a.addMany(e,7,0,7),a.add(156,7,0,0),a.add(127,7,0,7),a.add(91,1,11,3),a.addMany(c(64,127),3,7,0),a.addMany(c(48,60),3,8,4),a.addMany([60,61,62,63],3,9,4),a.addMany(c(48,60),4,8,4),a.addMany(c(64,127),4,7,0),a.addMany([60,61,62,63],4,0,6),a.addMany(c(32,64),6,0,6),a.add(127,6,0,6),a.addMany(c(64,127),6,0,0),a.addMany(c(32,48),3,9,5),a.addMany(c(32,48),5,9,5),a.addMany(c(48,64),5,0,6),a.addMany(c(64,127),5,7,0),a.addMany(c(32,48),4,9,5),a.addMany(c(32,48),1,9,2),a.addMany(c(32,48),2,9,2),a.addMany(c(48,127),2,10,0),a.addMany(c(48,80),1,10,0),a.addMany(c(81,88),1,10,0),a.addMany([89,90,92],1,10,0),a.addMany(c(96,127),1,10,0),a.add(80,1,11,9),a.addMany(e,9,0,9),a.add(127,9,0,9),a.addMany(c(28,32),9,0,9),a.addMany(c(32,48),9,9,12),a.addMany(c(48,60),9,8,10),a.addMany([60,61,62,63],9,9,10),a.addMany(e,11,0,11),a.addMany(c(32,128),11,0,11),a.addMany(c(28,32),11,0,11),a.addMany(e,10,0,10),a.add(127,10,0,10),a.addMany(c(28,32),10,0,10),a.addMany(c(48,60),10,8,10),a.addMany([60,61,62,63],10,0,11),a.addMany(c(32,48),10,9,12),a.addMany(e,12,0,12),a.add(127,12,0,12),a.addMany(c(28,32),12,0,12),a.addMany(c(32,48),12,9,12),a.addMany(c(48,64),12,0,11),a.addMany(c(64,127),12,12,13),a.addMany(c(64,127),10,12,13),a.addMany(c(64,127),9,12,13),a.addMany(e,13,13,13),a.addMany(d,13,13,13),a.add(127,13,0,13),a.addMany([27,156,24,26],13,14,0),a.add(160,0,2,0),a.add(160,8,5,8),a.add(160,6,0,6),a.add(160,11,0,11),a.add(160,13,13,13),a}(),eN=class extends aI{constructor(a=eM){super(),this._transitions=a,this._parseStack={state:0,handlers:[],handlerPos:0,transition:0,chunkPos:0},this.initialState=0,this.currentState=this.initialState,this._params=new eD,this._params.addParam(0),this._collect=0,this.precedingJoinState=0,this._printHandlerFb=(a,b,c)=>{},this._executeHandlerFb=a=>{},this._csiHandlerFb=(a,b)=>{},this._escHandlerFb=a=>{},this._errorHandlerFb=a=>a,this._printHandler=this._printHandlerFb,this._executeHandlers=Object.create(null),this._csiHandlers=Object.create(null),this._escHandlers=Object.create(null),this._register(aF(()=>{this._csiHandlers=Object.create(null),this._executeHandlers=Object.create(null),this._escHandlers=Object.create(null)})),this._oscParser=this._register(new eF),this._dcsParser=this._register(new eI),this._errorHandler=this._errorHandlerFb,this.registerEscHandler({final:"\\"},()=>!0)}_identifier(a,b=[64,126]){let c=0;if(a.prefix){if(a.prefix.length>1)throw Error("only one byte as prefix supported");if((c=a.prefix.charCodeAt(0))&&60>c||c>63)throw Error("prefix must be in range 0x3c .. 0x3f")}if(a.intermediates){if(a.intermediates.length>2)throw Error("only two bytes as intermediates are supported");for(let b=0;b<a.intermediates.length;++b){let d=a.intermediates.charCodeAt(b);if(32>d||d>47)throw Error("intermediate must be in range 0x20 .. 0x2f");c<<=8,c|=d}}if(1!==a.final.length)throw Error("final must be a single byte");let d=a.final.charCodeAt(0);if(b[0]>d||d>b[1])throw Error(`final must be in range ${b[0]} .. ${b[1]}`);return c<<=8,c|=d}identToString(a){let b=[];for(;a;)b.push(String.fromCharCode(255&a)),a>>=8;return b.reverse().join("")}setPrintHandler(a){this._printHandler=a}clearPrintHandler(){this._printHandler=this._printHandlerFb}registerEscHandler(a,b){let c=this._identifier(a,[48,126]);void 0===this._escHandlers[c]&&(this._escHandlers[c]=[]);let d=this._escHandlers[c];return d.push(b),{dispose:()=>{let a=d.indexOf(b);-1!==a&&d.splice(a,1)}}}clearEscHandler(a){this._escHandlers[this._identifier(a,[48,126])]&&delete this._escHandlers[this._identifier(a,[48,126])]}setEscHandlerFallback(a){this._escHandlerFb=a}setExecuteHandler(a,b){this._executeHandlers[a.charCodeAt(0)]=b}clearExecuteHandler(a){this._executeHandlers[a.charCodeAt(0)]&&delete this._executeHandlers[a.charCodeAt(0)]}setExecuteHandlerFallback(a){this._executeHandlerFb=a}registerCsiHandler(a,b){let c=this._identifier(a);void 0===this._csiHandlers[c]&&(this._csiHandlers[c]=[]);let d=this._csiHandlers[c];return d.push(b),{dispose:()=>{let a=d.indexOf(b);-1!==a&&d.splice(a,1)}}}clearCsiHandler(a){this._csiHandlers[this._identifier(a)]&&delete this._csiHandlers[this._identifier(a)]}setCsiHandlerFallback(a){this._csiHandlerFb=a}registerDcsHandler(a,b){return this._dcsParser.registerHandler(this._identifier(a),b)}clearDcsHandler(a){this._dcsParser.clearHandler(this._identifier(a))}setDcsHandlerFallback(a){this._dcsParser.setHandlerFallback(a)}registerOscHandler(a,b){return this._oscParser.registerHandler(a,b)}clearOscHandler(a){this._oscParser.clearHandler(a)}setOscHandlerFallback(a){this._oscParser.setHandlerFallback(a)}setErrorHandler(a){this._errorHandler=a}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,0!==this._parseStack.state&&(this._parseStack.state=2,this._parseStack.handlers=[])}_preserveStack(a,b,c,d,e){this._parseStack.state=a,this._parseStack.handlers=b,this._parseStack.handlerPos=c,this._parseStack.transition=d,this._parseStack.chunkPos=e}parse(a,b,c){let d=0,e=0,f=0,g;if(this._parseStack.state)if(2===this._parseStack.state)this._parseStack.state=0,f=this._parseStack.chunkPos+1;else{if(void 0===c||1===this._parseStack.state)throw this._parseStack.state=1,Error("improper continuation due to previous async handler, giving up parsing");let b=this._parseStack.handlers,e=this._parseStack.handlerPos-1;switch(this._parseStack.state){case 3:if(!1===c&&e>-1){for(;e>=0&&!0!==(g=b[e](this._params));e--)if(g instanceof Promise)return this._parseStack.handlerPos=e,g}this._parseStack.handlers=[];break;case 4:if(!1===c&&e>-1){for(;e>=0&&!0!==(g=b[e]());e--)if(g instanceof Promise)return this._parseStack.handlerPos=e,g}this._parseStack.handlers=[];break;case 6:if(d=a[this._parseStack.chunkPos],g=this._dcsParser.unhook(24!==d&&26!==d,c))return g;27===d&&(this._parseStack.transition|=1),this._params.reset(),this._params.addParam(0),this._collect=0;break;case 5:if(d=a[this._parseStack.chunkPos],g=this._oscParser.end(24!==d&&26!==d,c))return g;27===d&&(this._parseStack.transition|=1),this._params.reset(),this._params.addParam(0),this._collect=0}this._parseStack.state=0,f=this._parseStack.chunkPos+1,this.precedingJoinState=0,this.currentState=15&this._parseStack.transition}for(let c=f;c<b;++c){switch(d=a[c],(e=this._transitions.table[this.currentState<<8|(d<160?d:160)])>>4){case 2:for(let e=c+1;;++e)if(e>=b||(d=a[e])<32||d>126&&d<160||++e>=b||(d=a[e])<32||d>126&&d<160||++e>=b||(d=a[e])<32||d>126&&d<160||++e>=b||(d=a[e])<32||d>126&&d<160){this._printHandler(a,c,e),c=e-1;break}break;case 3:this._executeHandlers[d]?this._executeHandlers[d]():this._executeHandlerFb(d),this.precedingJoinState=0;break;case 0:break;case 1:if(this._errorHandler({position:c,code:d,currentState:this.currentState,collect:this._collect,params:this._params,abort:!1}).abort)return;break;case 7:let f=this._csiHandlers[this._collect<<8|d],h=f?f.length-1:-1;for(;h>=0&&!0!==(g=f[h](this._params));h--)if(g instanceof Promise)return this._preserveStack(3,f,h,e,c),g;h<0&&this._csiHandlerFb(this._collect<<8|d,this._params),this.precedingJoinState=0;break;case 8:do switch(d){case 59:this._params.addParam(0);break;case 58:this._params.addSubParam(-1);break;default:this._params.addDigit(d-48)}while(++c<b&&(d=a[c])>47&&d<60)c--;break;case 9:this._collect<<=8,this._collect|=d;break;case 10:let i=this._escHandlers[this._collect<<8|d],j=i?i.length-1:-1;for(;j>=0&&!0!==(g=i[j]());j--)if(g instanceof Promise)return this._preserveStack(4,i,j,e,c),g;j<0&&this._escHandlerFb(this._collect<<8|d),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|d,this._params);break;case 13:for(let e=c+1;;++e)if(e>=b||24===(d=a[e])||26===d||27===d||d>127&&d<160){this._dcsParser.put(a,c,e),c=e-1;break}break;case 14:if(g=this._dcsParser.unhook(24!==d&&26!==d))return this._preserveStack(6,[],0,e,c),g;27===d&&(e|=1),this._params.reset(),this._params.addParam(0),this._collect=0,this.precedingJoinState=0;break;case 4:this._oscParser.start();break;case 5:for(let e=c+1;;e++)if(e>=b||(d=a[e])<32||d>127&&d<160){this._oscParser.put(a,c,e),c=e-1;break}break;case 6:if(g=this._oscParser.end(24!==d&&26!==d))return this._preserveStack(5,[],0,e,c),g;27===d&&(e|=1),this._params.reset(),this._params.addParam(0),this._collect=0,this.precedingJoinState=0}this.currentState=15&e}}},eO=/^([\da-f])\/([\da-f])\/([\da-f])$|^([\da-f]{2})\/([\da-f]{2})\/([\da-f]{2})$|^([\da-f]{3})\/([\da-f]{3})\/([\da-f]{3})$|^([\da-f]{4})\/([\da-f]{4})\/([\da-f]{4})$/,eP=/^[\da-f]+$/;function eQ(a){if(!a)return;let b=a.toLowerCase();if(0===b.indexOf("rgb:")){b=b.slice(4);let a=eO.exec(b);if(a){let b=a[1]?15:a[4]?255:a[7]?4095:65535;return[Math.round(parseInt(a[1]||a[4]||a[7]||a[10],16)/b*255),Math.round(parseInt(a[2]||a[5]||a[8]||a[11],16)/b*255),Math.round(parseInt(a[3]||a[6]||a[9]||a[12],16)/b*255)]}}else if(0===b.indexOf("#")&&(b=b.slice(1),eP.exec(b)&&[3,6,9,12].includes(b.length))){let a=b.length/3,c=[0,0,0];for(let d=0;d<3;++d){let e=parseInt(b.slice(a*d,a*d+a),16);c[d]=1===a?e<<4:2===a?e:3===a?e>>4:e>>8}return c}}function eR(a,b){let c=a.toString(16),d=c.length<2?"0"+c:c;switch(b){case 4:return c[0];case 8:return d;case 12:return(d+d).slice(0,3);default:return d+d}}var eS={"(":0,")":1,"*":2,"+":3,"-":1,".":2};function eT(a,b){if(a>24)return b.setWinLines||!1;switch(a){case 1:return!!b.restoreWin;case 2:return!!b.minimizeWin;case 3:return!!b.setWinPosition;case 4:return!!b.setWinSizePixels;case 5:return!!b.raiseWin;case 6:return!!b.lowerWin;case 7:return!!b.refreshWin;case 8:return!!b.setWinSizeChars;case 9:return!!b.maximizeWin;case 10:return!!b.fullscreenWin;case 11:return!!b.getWinState;case 13:return!!b.getWinPosition;case 14:return!!b.getWinSizePixels;case 15:return!!b.getScreenSizePixels;case 16:return!!b.getCellSizePixels;case 18:return!!b.getWinSizeChars;case 19:return!!b.getScreenSizeChars;case 20:return!!b.getIconTitle;case 21:return!!b.getWinTitle;case 22:return!!b.pushTitle;case 23:return!!b.popTitle;case 24:return!!b.setWinLines}return!1}var eU=0,eV=class extends aI{constructor(a,b,c,d,e,f,g,h,i=new eN){for(let j in super(),this._bufferService=a,this._charsetService=b,this._coreService=c,this._logService=d,this._optionsService=e,this._oscLinkService=f,this._coreMouseService=g,this._unicodeService=h,this._parser=i,this._parseBuffer=new Uint32Array(4096),this._stringDecoder=new U,this._utf8Decoder=new V,this._windowTitle="",this._iconName="",this._windowTitleStack=[],this._iconNameStack=[],this._curAttrData=d5.clone(),this._eraseAttrDataInternal=d5.clone(),this._onRequestBell=this._register(new a_),this.onRequestBell=this._onRequestBell.event,this._onRequestRefreshRows=this._register(new a_),this.onRequestRefreshRows=this._onRequestRefreshRows.event,this._onRequestReset=this._register(new a_),this.onRequestReset=this._onRequestReset.event,this._onRequestSendFocus=this._register(new a_),this.onRequestSendFocus=this._onRequestSendFocus.event,this._onRequestSyncScrollBar=this._register(new a_),this.onRequestSyncScrollBar=this._onRequestSyncScrollBar.event,this._onRequestWindowsOptionsReport=this._register(new a_),this.onRequestWindowsOptionsReport=this._onRequestWindowsOptionsReport.event,this._onA11yChar=this._register(new a_),this.onA11yChar=this._onA11yChar.event,this._onA11yTab=this._register(new a_),this.onA11yTab=this._onA11yTab.event,this._onCursorMove=this._register(new a_),this.onCursorMove=this._onCursorMove.event,this._onLineFeed=this._register(new a_),this.onLineFeed=this._onLineFeed.event,this._onScroll=this._register(new a_),this.onScroll=this._onScroll.event,this._onTitleChange=this._register(new a_),this.onTitleChange=this._onTitleChange.event,this._onColor=this._register(new a_),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 eW(this._bufferService),this._activeBuffer=this._bufferService.buffer,this._register(this._bufferService.buffers.onBufferActivate(a=>this._activeBuffer=a.activeBuffer)),this._parser.setCsiHandlerFallback((a,b)=>{this._logService.debug("Unknown CSI code: ",{identifier:this._parser.identToString(a),params:b.toArray()})}),this._parser.setEscHandlerFallback(a=>{this._logService.debug("Unknown ESC code: ",{identifier:this._parser.identToString(a)})}),this._parser.setExecuteHandlerFallback(a=>{this._logService.debug("Unknown EXECUTE code: ",{code:a})}),this._parser.setOscHandlerFallback((a,b,c)=>{this._logService.debug("Unknown OSC code: ",{identifier:a,action:b,data:c})}),this._parser.setDcsHandlerFallback((a,b,c)=>{"HOOK"===b&&(c=c.toArray()),this._logService.debug("Unknown DCS code: ",{identifier:this._parser.identToString(a),action:b,payload:c})}),this._parser.setPrintHandler((a,b,c)=>this.print(a,b,c)),this._parser.registerCsiHandler({final:"@"},a=>this.insertChars(a)),this._parser.registerCsiHandler({intermediates:" ",final:"@"},a=>this.scrollLeft(a)),this._parser.registerCsiHandler({final:"A"},a=>this.cursorUp(a)),this._parser.registerCsiHandler({intermediates:" ",final:"A"},a=>this.scrollRight(a)),this._parser.registerCsiHandler({final:"B"},a=>this.cursorDown(a)),this._parser.registerCsiHandler({final:"C"},a=>this.cursorForward(a)),this._parser.registerCsiHandler({final:"D"},a=>this.cursorBackward(a)),this._parser.registerCsiHandler({final:"E"},a=>this.cursorNextLine(a)),this._parser.registerCsiHandler({final:"F"},a=>this.cursorPrecedingLine(a)),this._parser.registerCsiHandler({final:"G"},a=>this.cursorCharAbsolute(a)),this._parser.registerCsiHandler({final:"H"},a=>this.cursorPosition(a)),this._parser.registerCsiHandler({final:"I"},a=>this.cursorForwardTab(a)),this._parser.registerCsiHandler({final:"J"},a=>this.eraseInDisplay(a,!1)),this._parser.registerCsiHandler({prefix:"?",final:"J"},a=>this.eraseInDisplay(a,!0)),this._parser.registerCsiHandler({final:"K"},a=>this.eraseInLine(a,!1)),this._parser.registerCsiHandler({prefix:"?",final:"K"},a=>this.eraseInLine(a,!0)),this._parser.registerCsiHandler({final:"L"},a=>this.insertLines(a)),this._parser.registerCsiHandler({final:"M"},a=>this.deleteLines(a)),this._parser.registerCsiHandler({final:"P"},a=>this.deleteChars(a)),this._parser.registerCsiHandler({final:"S"},a=>this.scrollUp(a)),this._parser.registerCsiHandler({final:"T"},a=>this.scrollDown(a)),this._parser.registerCsiHandler({final:"X"},a=>this.eraseChars(a)),this._parser.registerCsiHandler({final:"Z"},a=>this.cursorBackwardTab(a)),this._parser.registerCsiHandler({final:"`"},a=>this.charPosAbsolute(a)),this._parser.registerCsiHandler({final:"a"},a=>this.hPositionRelative(a)),this._parser.registerCsiHandler({final:"b"},a=>this.repeatPrecedingCharacter(a)),this._parser.registerCsiHandler({final:"c"},a=>this.sendDeviceAttributesPrimary(a)),this._parser.registerCsiHandler({prefix:">",final:"c"},a=>this.sendDeviceAttributesSecondary(a)),this._parser.registerCsiHandler({final:"d"},a=>this.linePosAbsolute(a)),this._parser.registerCsiHandler({final:"e"},a=>this.vPositionRelative(a)),this._parser.registerCsiHandler({final:"f"},a=>this.hVPosition(a)),this._parser.registerCsiHandler({final:"g"},a=>this.tabClear(a)),this._parser.registerCsiHandler({final:"h"},a=>this.setMode(a)),this._parser.registerCsiHandler({prefix:"?",final:"h"},a=>this.setModePrivate(a)),this._parser.registerCsiHandler({final:"l"},a=>this.resetMode(a)),this._parser.registerCsiHandler({prefix:"?",final:"l"},a=>this.resetModePrivate(a)),this._parser.registerCsiHandler({final:"m"},a=>this.charAttributes(a)),this._parser.registerCsiHandler({final:"n"},a=>this.deviceStatus(a)),this._parser.registerCsiHandler({prefix:"?",final:"n"},a=>this.deviceStatusPrivate(a)),this._parser.registerCsiHandler({intermediates:"!",final:"p"},a=>this.softReset(a)),this._parser.registerCsiHandler({intermediates:" ",final:"q"},a=>this.setCursorStyle(a)),this._parser.registerCsiHandler({final:"r"},a=>this.setScrollRegion(a)),this._parser.registerCsiHandler({final:"s"},a=>this.saveCursor(a)),this._parser.registerCsiHandler({final:"t"},a=>this.windowOptions(a)),this._parser.registerCsiHandler({final:"u"},a=>this.restoreCursor(a)),this._parser.registerCsiHandler({intermediates:"'",final:"}"},a=>this.insertColumns(a)),this._parser.registerCsiHandler({intermediates:"'",final:"~"},a=>this.deleteColumns(a)),this._parser.registerCsiHandler({intermediates:'"',final:"q"},a=>this.selectProtected(a)),this._parser.registerCsiHandler({intermediates:"$",final:"p"},a=>this.requestMode(a,!0)),this._parser.registerCsiHandler({prefix:"?",intermediates:"$",final:"p"},a=>this.requestMode(a,!1)),this._parser.setExecuteHandler(cH.BEL,()=>this.bell()),this._parser.setExecuteHandler(cH.LF,()=>this.lineFeed()),this._parser.setExecuteHandler(cH.VT,()=>this.lineFeed()),this._parser.setExecuteHandler(cH.FF,()=>this.lineFeed()),this._parser.setExecuteHandler(cH.CR,()=>this.carriageReturn()),this._parser.setExecuteHandler(cH.BS,()=>this.backspace()),this._parser.setExecuteHandler(cH.HT,()=>this.tab()),this._parser.setExecuteHandler(cH.SO,()=>this.shiftOut()),this._parser.setExecuteHandler(cH.SI,()=>this.shiftIn()),this._parser.setExecuteHandler(cI.IND,()=>this.index()),this._parser.setExecuteHandler(cI.NEL,()=>this.nextLine()),this._parser.setExecuteHandler(cI.HTS,()=>this.tabSet()),this._parser.registerOscHandler(0,new eG(a=>(this.setTitle(a),this.setIconName(a),!0))),this._parser.registerOscHandler(1,new eG(a=>this.setIconName(a))),this._parser.registerOscHandler(2,new eG(a=>this.setTitle(a))),this._parser.registerOscHandler(4,new eG(a=>this.setOrReportIndexedColor(a))),this._parser.registerOscHandler(8,new eG(a=>this.setHyperlink(a))),this._parser.registerOscHandler(10,new eG(a=>this.setOrReportFgColor(a))),this._parser.registerOscHandler(11,new eG(a=>this.setOrReportBgColor(a))),this._parser.registerOscHandler(12,new eG(a=>this.setOrReportCursorColor(a))),this._parser.registerOscHandler(104,new eG(a=>this.restoreIndexedColor(a))),this._parser.registerOscHandler(110,new eG(a=>this.restoreFgColor(a))),this._parser.registerOscHandler(111,new eG(a=>this.restoreBgColor(a))),this._parser.registerOscHandler(112,new eG(a=>this.restoreCursorColor(a))),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()),ea)this._parser.registerEscHandler({intermediates:"(",final:j},()=>this.selectCharset("("+j)),this._parser.registerEscHandler({intermediates:")",final:j},()=>this.selectCharset(")"+j)),this._parser.registerEscHandler({intermediates:"*",final:j},()=>this.selectCharset("*"+j)),this._parser.registerEscHandler({intermediates:"+",final:j},()=>this.selectCharset("+"+j)),this._parser.registerEscHandler({intermediates:"-",final:j},()=>this.selectCharset("-"+j)),this._parser.registerEscHandler({intermediates:".",final:j},()=>this.selectCharset("."+j)),this._parser.registerEscHandler({intermediates:"/",final:j},()=>this.selectCharset("/"+j));this._parser.registerEscHandler({intermediates:"#",final:"8"},()=>this.screenAlignmentPattern()),this._parser.setErrorHandler(a=>(this._logService.error("Parsing error: ",a),a)),this._parser.registerDcsHandler({intermediates:"$",final:"q"},new eK((a,b)=>this.requestStatusString(a,b)))}getAttrData(){return this._curAttrData}_preserveStack(a,b,c,d){this._parseStack.paused=!0,this._parseStack.cursorStartX=a,this._parseStack.cursorStartY=b,this._parseStack.decodedLength=c,this._parseStack.position=d}_logSlowResolvingAsync(a){this._logService.logLevel<=3&&Promise.race([a,new Promise((a,b)=>setTimeout(()=>b("#SLOW_TIMEOUT"),5e3))]).catch(a=>{if("#SLOW_TIMEOUT"!==a)throw a;console.warn("async parser handler taking longer than 5000 ms")})}_getCurrentLinkId(){return this._curAttrData.extended.urlId}parse(a,b){let c,d=this._activeBuffer.x,e=this._activeBuffer.y,f=0,g=this._parseStack.paused;if(g){if(c=this._parser.parse(this._parseBuffer,this._parseStack.decodedLength,b))return this._logSlowResolvingAsync(c),c;d=this._parseStack.cursorStartX,e=this._parseStack.cursorStartY,this._parseStack.paused=!1,a.length>131072&&(f=this._parseStack.position+131072)}if(this._logService.logLevel<=1&&this._logService.debug(`parsing data ${"string"==typeof a?` "${a}"`:` "${Array.prototype.map.call(a,a=>String.fromCharCode(a)).join("")}"`}`),0===this._logService.logLevel&&this._logService.trace("parsing data (codes)","string"==typeof a?a.split("").map(a=>a.charCodeAt(0)):a),this._parseBuffer.length<a.length&&this._parseBuffer.length<131072&&(this._parseBuffer=new Uint32Array(Math.min(a.length,131072))),g||this._dirtyRowTracker.clearRange(),a.length>131072)for(let b=f;b<a.length;b+=131072){let f=b+131072<a.length?b+131072:a.length,g="string"==typeof a?this._stringDecoder.decode(a.substring(b,f),this._parseBuffer):this._utf8Decoder.decode(a.subarray(b,f),this._parseBuffer);if(c=this._parser.parse(this._parseBuffer,g))return this._preserveStack(d,e,g,b),this._logSlowResolvingAsync(c),c}else if(!g){let b="string"==typeof a?this._stringDecoder.decode(a,this._parseBuffer):this._utf8Decoder.decode(a,this._parseBuffer);if(c=this._parser.parse(this._parseBuffer,b))return this._preserveStack(d,e,b,0),this._logSlowResolvingAsync(c),c}(this._activeBuffer.x!==d||this._activeBuffer.y!==e)&&this._onCursorMove.fire();let h=this._dirtyRowTracker.end+(this._bufferService.buffer.ybase-this._bufferService.buffer.ydisp),i=this._dirtyRowTracker.start+(this._bufferService.buffer.ybase-this._bufferService.buffer.ydisp);i<this._bufferService.rows&&this._onRequestRefreshRows.fire({start:Math.min(i,this._bufferService.rows-1),end:Math.min(h,this._bufferService.rows-1)})}print(a,b,c){let d,e,f=this._charsetService.charset,g=this._optionsService.rawOptions.screenReaderMode,h=this._bufferService.cols,i=this._coreService.decPrivateModes.wraparound,j=this._coreService.modes.insertMode,k=this._curAttrData,l=this._activeBuffer.lines.get(this._activeBuffer.ybase+this._activeBuffer.y);this._dirtyRowTracker.markDirty(this._activeBuffer.y),this._activeBuffer.x&&c-b>0&&2===l.getWidth(this._activeBuffer.x-1)&&l.setCellFromCodepoint(this._activeBuffer.x-1,0,1,k);let m=this._parser.precedingJoinState;for(let n=b;n<c;++n){if((d=a[n])<127&&f){let a=f[String.fromCharCode(d)];a&&(d=a.charCodeAt(0))}let b=this._unicodeService.charProperties(d,m);e=eA.extractWidth(b);let c=eA.extractShouldJoin(b),o=c?eA.extractWidth(m):0;if(m=b,g&&this._onA11yChar.fire(S(d)),this._getCurrentLinkId()&&this._oscLinkService.addLineToLink(this._getCurrentLinkId(),this._activeBuffer.ybase+this._activeBuffer.y),this._activeBuffer.x+e-o>h){if(i){let a=l,b=this._activeBuffer.x-o;for(this._activeBuffer.x=o,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),l=this._activeBuffer.lines.get(this._activeBuffer.ybase+this._activeBuffer.y),o>0&&l instanceof d7&&l.copyCellsFrom(a,b,0,o,!1);b<h;)a.setCellFromCodepoint(b++,0,1,k)}else if(this._activeBuffer.x=h-1,2===e)continue}if(c&&this._activeBuffer.x){let a=l.getWidth(this._activeBuffer.x-1)?1:2;l.addCodepointToCell(this._activeBuffer.x-a,d,e);for(let a=e-o;--a>=0;)l.setCellFromCodepoint(this._activeBuffer.x++,0,0,k);continue}if(j&&(l.insertCells(this._activeBuffer.x,e-o,this._activeBuffer.getNullCell(k)),2===l.getWidth(h-1)&&l.setCellFromCodepoint(h-1,0,1,k)),l.setCellFromCodepoint(this._activeBuffer.x++,d,e,k),e>0)for(;--e;)l.setCellFromCodepoint(this._activeBuffer.x++,0,0,k)}this._parser.precedingJoinState=m,this._activeBuffer.x<h&&c-b>0&&0===l.getWidth(this._activeBuffer.x)&&!l.hasContent(this._activeBuffer.x)&&l.setCellFromCodepoint(this._activeBuffer.x,0,1,k),this._dirtyRowTracker.markDirty(this._activeBuffer.y)}registerCsiHandler(a,b){return"t"!==a.final||a.prefix||a.intermediates?this._parser.registerCsiHandler(a,b):this._parser.registerCsiHandler(a,a=>!eT(a.params[0],this._optionsService.rawOptions.windowOptions)||b(a))}registerDcsHandler(a,b){return this._parser.registerDcsHandler(a,new eK(b))}registerEscHandler(a,b){return this._parser.registerEscHandler(a,b)}registerOscHandler(a,b){return this._parser.registerOscHandler(a,new eG(b))}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(){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(0===this._activeBuffer.x&&this._activeBuffer.y>this._activeBuffer.scrollTop&&this._activeBuffer.y<=this._activeBuffer.scrollBottom&&this._activeBuffer.lines.get(this._activeBuffer.ybase+this._activeBuffer.y)?.isWrapped){this._activeBuffer.lines.get(this._activeBuffer.ybase+this._activeBuffer.y).isWrapped=!1,this._activeBuffer.y--,this._activeBuffer.x=this._bufferService.cols-1;let a=this._activeBuffer.lines.get(this._activeBuffer.ybase+this._activeBuffer.y);a.hasWidth(this._activeBuffer.x)&&!a.hasContent(this._activeBuffer.x)&&this._activeBuffer.x--}return this._restrictCursor(),!0}tab(){if(this._activeBuffer.x>=this._bufferService.cols)return!0;let a=this._activeBuffer.x;return this._activeBuffer.x=this._activeBuffer.nextStop(),this._optionsService.rawOptions.screenReaderMode&&this._onA11yTab.fire(this._activeBuffer.x-a),!0}shiftOut(){return this._charsetService.setgLevel(1),!0}shiftIn(){return this._charsetService.setgLevel(0),!0}_restrictCursor(a=this._bufferService.cols-1){this._activeBuffer.x=Math.min(a,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(a,b){this._dirtyRowTracker.markDirty(this._activeBuffer.y),this._coreService.decPrivateModes.origin?(this._activeBuffer.x=a,this._activeBuffer.y=this._activeBuffer.scrollTop+b):(this._activeBuffer.x=a,this._activeBuffer.y=b),this._restrictCursor(),this._dirtyRowTracker.markDirty(this._activeBuffer.y)}_moveCursor(a,b){this._restrictCursor(),this._setCursor(this._activeBuffer.x+a,this._activeBuffer.y+b)}cursorUp(a){let b=this._activeBuffer.y-this._activeBuffer.scrollTop;return b>=0?this._moveCursor(0,-Math.min(b,a.params[0]||1)):this._moveCursor(0,-(a.params[0]||1)),!0}cursorDown(a){let b=this._activeBuffer.scrollBottom-this._activeBuffer.y;return b>=0?this._moveCursor(0,Math.min(b,a.params[0]||1)):this._moveCursor(0,a.params[0]||1),!0}cursorForward(a){return this._moveCursor(a.params[0]||1,0),!0}cursorBackward(a){return this._moveCursor(-(a.params[0]||1),0),!0}cursorNextLine(a){return this.cursorDown(a),this._activeBuffer.x=0,!0}cursorPrecedingLine(a){return this.cursorUp(a),this._activeBuffer.x=0,!0}cursorCharAbsolute(a){return this._setCursor((a.params[0]||1)-1,this._activeBuffer.y),!0}cursorPosition(a){return this._setCursor(a.length>=2?(a.params[1]||1)-1:0,(a.params[0]||1)-1),!0}charPosAbsolute(a){return this._setCursor((a.params[0]||1)-1,this._activeBuffer.y),!0}hPositionRelative(a){return this._moveCursor(a.params[0]||1,0),!0}linePosAbsolute(a){return this._setCursor(this._activeBuffer.x,(a.params[0]||1)-1),!0}vPositionRelative(a){return this._moveCursor(0,a.params[0]||1),!0}hVPosition(a){return this.cursorPosition(a),!0}tabClear(a){let b=a.params[0];return 0===b?delete this._activeBuffer.tabs[this._activeBuffer.x]:3===b&&(this._activeBuffer.tabs={}),!0}cursorForwardTab(a){if(this._activeBuffer.x>=this._bufferService.cols)return!0;let b=a.params[0]||1;for(;b--;)this._activeBuffer.x=this._activeBuffer.nextStop();return!0}cursorBackwardTab(a){if(this._activeBuffer.x>=this._bufferService.cols)return!0;let b=a.params[0]||1;for(;b--;)this._activeBuffer.x=this._activeBuffer.prevStop();return!0}selectProtected(a){let b=a.params[0];return 1===b&&(this._curAttrData.bg|=0x20000000),(2===b||0===b)&&(this._curAttrData.bg&=-0x20000001),!0}_eraseInBufferLine(a,b,c,d=!1,e=!1){let f=this._activeBuffer.lines.get(this._activeBuffer.ybase+a);f.replaceCells(b,c,this._activeBuffer.getNullCell(this._eraseAttrData()),e),d&&(f.isWrapped=!1)}_resetBufferLine(a,b=!1){let c=this._activeBuffer.lines.get(this._activeBuffer.ybase+a);c&&(c.fill(this._activeBuffer.getNullCell(this._eraseAttrData()),b),this._bufferService.buffer.clearMarkers(this._activeBuffer.ybase+a),c.isWrapped=!1)}eraseInDisplay(a,b=!1){let c;switch(this._restrictCursor(this._bufferService.cols),a.params[0]){case 0:for(c=this._activeBuffer.y,this._dirtyRowTracker.markDirty(c),this._eraseInBufferLine(c++,this._activeBuffer.x,this._bufferService.cols,0===this._activeBuffer.x,b);c<this._bufferService.rows;c++)this._resetBufferLine(c,b);this._dirtyRowTracker.markDirty(c);break;case 1:for(c=this._activeBuffer.y,this._dirtyRowTracker.markDirty(c),this._eraseInBufferLine(c,0,this._activeBuffer.x+1,!0,b),this._activeBuffer.x+1>=this._bufferService.cols&&(this._activeBuffer.lines.get(c+1).isWrapped=!1);c--;)this._resetBufferLine(c,b);this._dirtyRowTracker.markDirty(0);break;case 2:if(this._optionsService.rawOptions.scrollOnEraseInDisplay){for(c=this._bufferService.rows,this._dirtyRowTracker.markRangeDirty(0,c-1);c--&&!this._activeBuffer.lines.get(this._activeBuffer.ybase+c)?.getTrimmedLength(););for(;c>=0;c--)this._bufferService.scroll(this._eraseAttrData())}else{for(c=this._bufferService.rows,this._dirtyRowTracker.markDirty(c-1);c--;)this._resetBufferLine(c,b);this._dirtyRowTracker.markDirty(0)}break;case 3:let d=this._activeBuffer.lines.length-this._bufferService.rows;d>0&&(this._activeBuffer.lines.trimStart(d),this._activeBuffer.ybase=Math.max(this._activeBuffer.ybase-d,0),this._activeBuffer.ydisp=Math.max(this._activeBuffer.ydisp-d,0),this._onScroll.fire(0))}return!0}eraseInLine(a,b=!1){switch(this._restrictCursor(this._bufferService.cols),a.params[0]){case 0:this._eraseInBufferLine(this._activeBuffer.y,this._activeBuffer.x,this._bufferService.cols,0===this._activeBuffer.x,b);break;case 1:this._eraseInBufferLine(this._activeBuffer.y,0,this._activeBuffer.x+1,!1,b);break;case 2:this._eraseInBufferLine(this._activeBuffer.y,0,this._bufferService.cols,!0,b)}return this._dirtyRowTracker.markDirty(this._activeBuffer.y),!0}insertLines(a){this._restrictCursor();let b=a.params[0]||1;if(this._activeBuffer.y>this._activeBuffer.scrollBottom||this._activeBuffer.y<this._activeBuffer.scrollTop)return!0;let c=this._activeBuffer.ybase+this._activeBuffer.y,d=this._bufferService.rows-1-this._activeBuffer.scrollBottom,e=this._bufferService.rows-1+this._activeBuffer.ybase-d+1;for(;b--;)this._activeBuffer.lines.splice(e-1,1),this._activeBuffer.lines.splice(c,0,this._activeBuffer.getBlankLine(this._eraseAttrData()));return this._dirtyRowTracker.markRangeDirty(this._activeBuffer.y,this._activeBuffer.scrollBottom),this._activeBuffer.x=0,!0}deleteLines(a){this._restrictCursor();let b=a.params[0]||1;if(this._activeBuffer.y>this._activeBuffer.scrollBottom||this._activeBuffer.y<this._activeBuffer.scrollTop)return!0;let c=this._activeBuffer.ybase+this._activeBuffer.y,d;for(d=this._bufferService.rows-1-this._activeBuffer.scrollBottom,d=this._bufferService.rows-1+this._activeBuffer.ybase-d;b--;)this._activeBuffer.lines.splice(c,1),this._activeBuffer.lines.splice(d,0,this._activeBuffer.getBlankLine(this._eraseAttrData()));return this._dirtyRowTracker.markRangeDirty(this._activeBuffer.y,this._activeBuffer.scrollBottom),this._activeBuffer.x=0,!0}insertChars(a){this._restrictCursor();let b=this._activeBuffer.lines.get(this._activeBuffer.ybase+this._activeBuffer.y);return b&&(b.insertCells(this._activeBuffer.x,a.params[0]||1,this._activeBuffer.getNullCell(this._eraseAttrData())),this._dirtyRowTracker.markDirty(this._activeBuffer.y)),!0}deleteChars(a){this._restrictCursor();let b=this._activeBuffer.lines.get(this._activeBuffer.ybase+this._activeBuffer.y);return b&&(b.deleteCells(this._activeBuffer.x,a.params[0]||1,this._activeBuffer.getNullCell(this._eraseAttrData())),this._dirtyRowTracker.markDirty(this._activeBuffer.y)),!0}scrollUp(a){let b=a.params[0]||1;for(;b--;)this._activeBuffer.lines.splice(this._activeBuffer.ybase+this._activeBuffer.scrollTop,1),this._activeBuffer.lines.splice(this._activeBuffer.ybase+this._activeBuffer.scrollBottom,0,this._activeBuffer.getBlankLine(this._eraseAttrData()));return this._dirtyRowTracker.markRangeDirty(this._activeBuffer.scrollTop,this._activeBuffer.scrollBottom),!0}scrollDown(a){let b=a.params[0]||1;for(;b--;)this._activeBuffer.lines.splice(this._activeBuffer.ybase+this._activeBuffer.scrollBottom,1),this._activeBuffer.lines.splice(this._activeBuffer.ybase+this._activeBuffer.scrollTop,0,this._activeBuffer.getBlankLine(d5));return this._dirtyRowTracker.markRangeDirty(this._activeBuffer.scrollTop,this._activeBuffer.scrollBottom),!0}scrollLeft(a){if(this._activeBuffer.y>this._activeBuffer.scrollBottom||this._activeBuffer.y<this._activeBuffer.scrollTop)return!0;let b=a.params[0]||1;for(let a=this._activeBuffer.scrollTop;a<=this._activeBuffer.scrollBottom;++a){let c=this._activeBuffer.lines.get(this._activeBuffer.ybase+a);c.deleteCells(0,b,this._activeBuffer.getNullCell(this._eraseAttrData())),c.isWrapped=!1}return this._dirtyRowTracker.markRangeDirty(this._activeBuffer.scrollTop,this._activeBuffer.scrollBottom),!0}scrollRight(a){if(this._activeBuffer.y>this._activeBuffer.scrollBottom||this._activeBuffer.y<this._activeBuffer.scrollTop)return!0;let b=a.params[0]||1;for(let a=this._activeBuffer.scrollTop;a<=this._activeBuffer.scrollBottom;++a){let c=this._activeBuffer.lines.get(this._activeBuffer.ybase+a);c.insertCells(0,b,this._activeBuffer.getNullCell(this._eraseAttrData())),c.isWrapped=!1}return this._dirtyRowTracker.markRangeDirty(this._activeBuffer.scrollTop,this._activeBuffer.scrollBottom),!0}insertColumns(a){if(this._activeBuffer.y>this._activeBuffer.scrollBottom||this._activeBuffer.y<this._activeBuffer.scrollTop)return!0;let b=a.params[0]||1;for(let a=this._activeBuffer.scrollTop;a<=this._activeBuffer.scrollBottom;++a){let c=this._activeBuffer.lines.get(this._activeBuffer.ybase+a);c.insertCells(this._activeBuffer.x,b,this._activeBuffer.getNullCell(this._eraseAttrData())),c.isWrapped=!1}return this._dirtyRowTracker.markRangeDirty(this._activeBuffer.scrollTop,this._activeBuffer.scrollBottom),!0}deleteColumns(a){if(this._activeBuffer.y>this._activeBuffer.scrollBottom||this._activeBuffer.y<this._activeBuffer.scrollTop)return!0;let b=a.params[0]||1;for(let a=this._activeBuffer.scrollTop;a<=this._activeBuffer.scrollBottom;++a){let c=this._activeBuffer.lines.get(this._activeBuffer.ybase+a);c.deleteCells(this._activeBuffer.x,b,this._activeBuffer.getNullCell(this._eraseAttrData())),c.isWrapped=!1}return this._dirtyRowTracker.markRangeDirty(this._activeBuffer.scrollTop,this._activeBuffer.scrollBottom),!0}eraseChars(a){this._restrictCursor();let b=this._activeBuffer.lines.get(this._activeBuffer.ybase+this._activeBuffer.y);return b&&(b.replaceCells(this._activeBuffer.x,this._activeBuffer.x+(a.params[0]||1),this._activeBuffer.getNullCell(this._eraseAttrData())),this._dirtyRowTracker.markDirty(this._activeBuffer.y)),!0}repeatPrecedingCharacter(a){let b=this._parser.precedingJoinState;if(!b)return!0;let c=a.params[0]||1,d=eA.extractWidth(b),e=this._activeBuffer.x-d,f=this._activeBuffer.lines.get(this._activeBuffer.ybase+this._activeBuffer.y).getString(e),g=new Uint32Array(f.length*c),h=0;for(let a=0;a<f.length;){let b=f.codePointAt(a)||0;g[h++]=b,a+=b>65535?2:1}let i=h;for(let a=1;a<c;++a)g.copyWithin(i,0,h),i+=h;return this.print(g,0,i),!0}sendDeviceAttributesPrimary(a){return a.params[0]>0||(this._is("xterm")||this._is("rxvt-unicode")||this._is("screen")?this._coreService.triggerDataEvent(cH.ESC+"[?1;2c"):this._is("linux")&&this._coreService.triggerDataEvent(cH.ESC+"[?6c")),!0}sendDeviceAttributesSecondary(a){return a.params[0]>0||(this._is("xterm")?this._coreService.triggerDataEvent(cH.ESC+"[>0;276;0c"):this._is("rxvt-unicode")?this._coreService.triggerDataEvent(cH.ESC+"[>85;95;0c"):this._is("linux")?this._coreService.triggerDataEvent(a.params[0]+"c"):this._is("screen")&&this._coreService.triggerDataEvent(cH.ESC+"[>83;40003;0c")),!0}_is(a){return 0===(this._optionsService.rawOptions.termName+"").indexOf(a)}setMode(a){for(let b=0;b<a.length;b++)switch(a.params[b]){case 4:this._coreService.modes.insertMode=!0;break;case 20:this._optionsService.options.convertEol=!0}return!0}setModePrivate(a){for(let b=0;b<a.length;b++)switch(a.params[b]){case 1:this._coreService.decPrivateModes.applicationCursorKeys=!0;break;case 2:this._charsetService.setgCharset(0,eb),this._charsetService.setgCharset(1,eb),this._charsetService.setgCharset(2,eb),this._charsetService.setgCharset(3,eb);break;case 3:this._optionsService.rawOptions.windowOptions.setWinLines&&(this._bufferService.resize(132,this._bufferService.rows),this._onRequestReset.fire());break;case 6:this._coreService.decPrivateModes.origin=!0,this._setCursor(0,0);break;case 7:this._coreService.decPrivateModes.wraparound=!0;break;case 12:this._optionsService.options.cursorBlink=!0;break;case 45:this._coreService.decPrivateModes.reverseWraparound=!0;break;case 66:this._logService.debug("Serial port requested application keypad."),this._coreService.decPrivateModes.applicationKeypad=!0,this._onRequestSyncScrollBar.fire();break;case 9:this._coreMouseService.activeProtocol="X10";break;case 1e3:this._coreMouseService.activeProtocol="VT200";break;case 1002:this._coreMouseService.activeProtocol="DRAG";break;case 1003:this._coreMouseService.activeProtocol="ANY";break;case 1004:this._coreService.decPrivateModes.sendFocus=!0,this._onRequestSendFocus.fire();break;case 1005:this._logService.debug("DECSET 1005 not supported (see #2507)");break;case 1006:this._coreMouseService.activeEncoding="SGR";break;case 1015:this._logService.debug("DECSET 1015 not supported (see #2507)");break;case 1016:this._coreMouseService.activeEncoding="SGR_PIXELS";break;case 25:this._coreService.isCursorHidden=!1;break;case 1048:this.saveCursor();break;case 1049:this.saveCursor();case 47:case 1047:this._bufferService.buffers.activateAltBuffer(this._eraseAttrData()),this._coreService.isCursorInitialized=!0,this._onRequestRefreshRows.fire(void 0),this._onRequestSyncScrollBar.fire();break;case 2004:this._coreService.decPrivateModes.bracketedPasteMode=!0;break;case 2026:this._coreService.decPrivateModes.synchronizedOutput=!0}return!0}resetMode(a){for(let b=0;b<a.length;b++)switch(a.params[b]){case 4:this._coreService.modes.insertMode=!1;break;case 20:this._optionsService.options.convertEol=!1}return!0}resetModePrivate(a){for(let b=0;b<a.length;b++)switch(a.params[b]){case 1:this._coreService.decPrivateModes.applicationCursorKeys=!1;break;case 3:this._optionsService.rawOptions.windowOptions.setWinLines&&(this._bufferService.resize(80,this._bufferService.rows),this._onRequestReset.fire());break;case 6:this._coreService.decPrivateModes.origin=!1,this._setCursor(0,0);break;case 7:this._coreService.decPrivateModes.wraparound=!1;break;case 12:this._optionsService.options.cursorBlink=!1;break;case 45:this._coreService.decPrivateModes.reverseWraparound=!1;break;case 66:this._logService.debug("Switching back to normal keypad."),this._coreService.decPrivateModes.applicationKeypad=!1,this._onRequestSyncScrollBar.fire();break;case 9:case 1e3:case 1002:case 1003:this._coreMouseService.activeProtocol="NONE";break;case 1004:this._coreService.decPrivateModes.sendFocus=!1;break;case 1005:this._logService.debug("DECRST 1005 not supported (see #2507)");break;case 1006:case 1016:this._coreMouseService.activeEncoding="DEFAULT";break;case 1015:this._logService.debug("DECRST 1015 not supported (see #2507)");break;case 25:this._coreService.isCursorHidden=!0;break;case 1048:this.restoreCursor();break;case 1049:case 47:case 1047:this._bufferService.buffers.activateNormalBuffer(),1049===a.params[b]&&this.restoreCursor(),this._coreService.isCursorInitialized=!0,this._onRequestRefreshRows.fire(void 0),this._onRequestSyncScrollBar.fire();break;case 2004:this._coreService.decPrivateModes.bracketedPasteMode=!1;break;case 2026:this._coreService.decPrivateModes.synchronizedOutput=!1,this._onRequestRefreshRows.fire(void 0)}return!0}requestMode(a,b){let c,d,e,f;(d=c||={})[d.NOT_RECOGNIZED=0]="NOT_RECOGNIZED",d[d.SET=1]="SET",d[d.RESET=2]="RESET",d[d.PERMANENTLY_SET=3]="PERMANENTLY_SET",d[d.PERMANENTLY_RESET=4]="PERMANENTLY_RESET";let g=this._coreService.decPrivateModes,{activeProtocol:h,activeEncoding:i}=this._coreMouseService,j=this._coreService,{buffers:k,cols:l}=this._bufferService,{active:m,alt:n}=k,o=this._optionsService.rawOptions,p=a=>a?1:2,q=a.params[0];return e=q,f=b?2===q?4:4===q?p(j.modes.insertMode):12===q?3:20===q?p(o.convertEol):0:1===q?p(g.applicationCursorKeys):3===q?o.windowOptions.setWinLines?80===l?2:+(132===l):0:6===q?p(g.origin):7===q?p(g.wraparound):8===q?3:9===q?p("X10"===h):12===q?p(o.cursorBlink):25===q?p(!j.isCursorHidden):45===q?p(g.reverseWraparound):66===q?p(g.applicationKeypad):67===q?4:1e3===q?p("VT200"===h):1002===q?p("DRAG"===h):1003===q?p("ANY"===h):1004===q?p(g.sendFocus):1005===q?4:1006===q?p("SGR"===i):1015===q?4:1016===q?p("SGR_PIXELS"===i):1048===q?1:47===q||1047===q||1049===q?p(m===n):2004===q?p(g.bracketedPasteMode):2026===q?p(g.synchronizedOutput):0,j.triggerDataEvent(`${cH.ESC}[${b?"":"?"}${e};${f}$y`),!0}_updateAttrColor(a,b,c,d,e){return 2===b?(a|=0x3000000,a&=-0x1000000,a|=W.fromColorRGB([c,d,e])):5===b&&(a&=-0x3000100,a|=0x2000000|255&c),a}_extractColor(a,b,c){let d=[0,0,-1,0,0,0],e=0,f=0;do{if(d[f+e]=a.params[b+f],a.hasSubParams(b+f)){let c=a.getSubParams(b+f),g=0;do 5===d[1]&&(e=1),d[f+g+1+e]=c[g];while(++g<c.length&&g+f+1+e<d.length)break}if(5===d[1]&&f+e>=2||2===d[1]&&f+e>=5)break;d[1]&&(e=1)}while(++f+b<a.length&&f+e<d.length)for(let a=2;a<d.length;++a)-1===d[a]&&(d[a]=0);switch(d[0]){case 38:c.fg=this._updateAttrColor(c.fg,d[1],d[3],d[4],d[5]);break;case 48:c.bg=this._updateAttrColor(c.bg,d[1],d[3],d[4],d[5]);break;case 58:c.extended=c.extended.clone(),c.extended.underlineColor=this._updateAttrColor(c.extended.underlineColor,d[1],d[3],d[4],d[5])}return f}_processUnderline(a,b){b.extended=b.extended.clone(),(!~a||a>5)&&(a=1),b.extended.underlineStyle=a,b.fg|=0x10000000,0===a&&(b.fg&=-0x10000001),b.updateExtended()}_processSGR0(a){a.fg=d5.fg,a.bg=d5.bg,a.extended=a.extended.clone(),a.extended.underlineStyle=0,a.extended.underlineColor&=-0x4000000,a.updateExtended()}charAttributes(a){if(1===a.length&&0===a.params[0])return this._processSGR0(this._curAttrData),!0;let b=a.length,c,d=this._curAttrData;for(let e=0;e<b;e++)(c=a.params[e])>=30&&c<=37?(d.fg&=-0x3000100,d.fg|=0x1000000|c-30):c>=40&&c<=47?(d.bg&=-0x3000100,d.bg|=0x1000000|c-40):c>=90&&c<=97?(d.fg&=-0x3000100,d.fg|=0x1000000|c-90|8):c>=100&&c<=107?(d.bg&=-0x3000100,d.bg|=0x1000000|c-100|8):0===c?this._processSGR0(d):1===c?d.fg|=0x8000000:3===c?d.bg|=0x4000000:4===c?(d.fg|=0x10000000,this._processUnderline(a.hasSubParams(e)?a.getSubParams(e)[0]:1,d)):5===c?d.fg|=0x20000000:7===c?d.fg|=0x4000000:8===c?d.fg|=0x40000000:9===c?d.fg|=0x80000000:2===c?d.bg|=0x8000000:21===c?this._processUnderline(2,d):22===c?(d.fg&=-0x8000001,d.bg&=-0x8000001):23===c?d.bg&=-0x4000001:24===c?(d.fg&=-0x10000001,this._processUnderline(0,d)):25===c?d.fg&=-0x20000001:27===c?d.fg&=-0x4000001:28===c?d.fg&=-0x40000001:29===c?d.fg&=0x7fffffff:39===c?(d.fg&=-0x4000000,d.fg|=0xffffff&d5.fg):49===c?(d.bg&=-0x4000000,d.bg|=0xffffff&d5.bg):38===c||48===c||58===c?e+=this._extractColor(a,e,d):53===c?d.bg|=0x40000000:55===c?d.bg&=-0x40000001:59===c?(d.extended=d.extended.clone(),d.extended.underlineColor=-1,d.updateExtended()):100===c?(d.fg&=-0x4000000,d.fg|=0xffffff&d5.fg,d.bg&=-0x4000000,d.bg|=0xffffff&d5.bg):this._logService.debug("Unknown SGR attribute: %d.",c);return!0}deviceStatus(a){switch(a.params[0]){case 5:this._coreService.triggerDataEvent(`${cH.ESC}[0n`);break;case 6:let b=this._activeBuffer.y+1,c=this._activeBuffer.x+1;this._coreService.triggerDataEvent(`${cH.ESC}[${b};${c}R`)}return!0}deviceStatusPrivate(a){if(6===a.params[0]){let a=this._activeBuffer.y+1,b=this._activeBuffer.x+1;this._coreService.triggerDataEvent(`${cH.ESC}[?${a};${b}R`)}return!0}softReset(a){return this._coreService.isCursorHidden=!1,this._onRequestSyncScrollBar.fire(),this._activeBuffer.scrollTop=0,this._activeBuffer.scrollBottom=this._bufferService.rows-1,this._curAttrData=d5.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(a){let b=0===a.length?1:a.params[0];if(0===b)this._coreService.decPrivateModes.cursorStyle=void 0,this._coreService.decPrivateModes.cursorBlink=void 0;else{switch(b){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"}this._coreService.decPrivateModes.cursorBlink=b%2==1}return!0}setScrollRegion(a){let b=a.params[0]||1,c;return(a.length<2||(c=a.params[1])>this._bufferService.rows||0===c)&&(c=this._bufferService.rows),c>b&&(this._activeBuffer.scrollTop=b-1,this._activeBuffer.scrollBottom=c-1,this._setCursor(0,0)),!0}windowOptions(a){if(!eT(a.params[0],this._optionsService.rawOptions.windowOptions))return!0;let b=a.length>1?a.params[1]:0;switch(a.params[0]){case 14:2!==b&&this._onRequestWindowsOptionsReport.fire(0);break;case 16:this._onRequestWindowsOptionsReport.fire(1);break;case 18:this._bufferService&&this._coreService.triggerDataEvent(`${cH.ESC}[8;${this._bufferService.rows};${this._bufferService.cols}t`);break;case 22:(0===b||2===b)&&(this._windowTitleStack.push(this._windowTitle),this._windowTitleStack.length>10&&this._windowTitleStack.shift()),(0===b||1===b)&&(this._iconNameStack.push(this._iconName),this._iconNameStack.length>10&&this._iconNameStack.shift());break;case 23:(0===b||2===b)&&this._windowTitleStack.length&&this.setTitle(this._windowTitleStack.pop()),(0===b||1===b)&&this._iconNameStack.length&&this.setIconName(this._iconNameStack.pop())}return!0}saveCursor(a){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(a){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(a){return this._windowTitle=a,this._onTitleChange.fire(a),!0}setIconName(a){return this._iconName=a,!0}setOrReportIndexedColor(a){let b=[],c=a.split(";");for(;c.length>1;){let a=c.shift(),d=c.shift();if(/^\d+$/.exec(a)){let c=parseInt(a);if(eX(c))if("?"===d)b.push({type:0,index:c});else{let a=eQ(d);a&&b.push({type:1,index:c,color:a})}}}return b.length&&this._onColor.fire(b),!0}setHyperlink(a){let b=a.indexOf(";");if(-1===b)return!0;let c=a.slice(0,b).trim(),d=a.slice(b+1);return d?this._createHyperlink(c,d):!c.trim()&&this._finishHyperlink()}_createHyperlink(a,b){this._getCurrentLinkId()&&this._finishHyperlink();let c=a.split(":"),d,e=c.findIndex(a=>a.startsWith("id="));return -1!==e&&(d=c[e].slice(3)||void 0),this._curAttrData.extended=this._curAttrData.extended.clone(),this._curAttrData.extended.urlId=this._oscLinkService.registerLink({id:d,uri:b}),this._curAttrData.updateExtended(),!0}_finishHyperlink(){return this._curAttrData.extended=this._curAttrData.extended.clone(),this._curAttrData.extended.urlId=0,this._curAttrData.updateExtended(),!0}_setOrReportSpecialColor(a,b){let c=a.split(";");for(let a=0;a<c.length&&!(b>=this._specialColors.length);++a,++b)if("?"===c[a])this._onColor.fire([{type:0,index:this._specialColors[b]}]);else{let d=eQ(c[a]);d&&this._onColor.fire([{type:1,index:this._specialColors[b],color:d}])}return!0}setOrReportFgColor(a){return this._setOrReportSpecialColor(a,0)}setOrReportBgColor(a){return this._setOrReportSpecialColor(a,1)}setOrReportCursorColor(a){return this._setOrReportSpecialColor(a,2)}restoreIndexedColor(a){if(!a)return this._onColor.fire([{type:2}]),!0;let b=[],c=a.split(";");for(let a=0;a<c.length;++a)if(/^\d+$/.exec(c[a])){let d=parseInt(c[a]);eX(d)&&b.push({type:2,index:d})}return b.length&&this._onColor.fire(b),!0}restoreFgColor(a){return this._onColor.fire([{type:2,index:256}]),!0}restoreBgColor(a){return this._onColor.fire([{type:2,index:257}]),!0}restoreCursorColor(a){return this._onColor.fire([{type:2,index:258}]),!0}nextLine(){return this._activeBuffer.x=0,this.index(),!0}keypadApplicationMode(){return this._logService.debug("Serial port requested application keypad."),this._coreService.decPrivateModes.applicationKeypad=!0,this._onRequestSyncScrollBar.fire(),!0}keypadNumericMode(){return this._logService.debug("Switching back to normal keypad."),this._coreService.decPrivateModes.applicationKeypad=!1,this._onRequestSyncScrollBar.fire(),!0}selectDefaultCharset(){return this._charsetService.setgLevel(0),this._charsetService.setgCharset(0,eb),!0}selectCharset(a){return 2!==a.length?this.selectDefaultCharset():"/"===a[0]||this._charsetService.setgCharset(eS[a[0]],ea[a[1]]||eb),!0}index(){return this._restrictCursor(),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._restrictCursor(),!0}tabSet(){return this._activeBuffer.tabs[this._activeBuffer.x]=!0,!0}reverseIndex(){if(this._restrictCursor(),this._activeBuffer.y===this._activeBuffer.scrollTop){let a=this._activeBuffer.scrollBottom-this._activeBuffer.scrollTop;this._activeBuffer.lines.shiftElements(this._activeBuffer.ybase+this._activeBuffer.y,a,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=d5.clone(),this._eraseAttrDataInternal=d5.clone()}_eraseAttrData(){return this._eraseAttrDataInternal.bg&=-0x4000000,this._eraseAttrDataInternal.bg|=0x3ffffff&this._curAttrData.bg,this._eraseAttrDataInternal}setgLevel(a){return this._charsetService.setgLevel(a),!0}screenAlignmentPattern(){let a=new Y;a.content=4194373,a.fg=this._curAttrData.fg,a.bg=this._curAttrData.bg,this._setCursor(0,0);for(let b=0;b<this._bufferService.rows;++b){let c=this._activeBuffer.ybase+this._activeBuffer.y+b,d=this._activeBuffer.lines.get(c);d&&(d.fill(a),d.isWrapped=!1)}return this._dirtyRowTracker.markAllDirty(),this._setCursor(0,0),!0}requestStatusString(a,b){let c=a=>(this._coreService.triggerDataEvent(`${cH.ESC}${a}${cH.ESC}\\`),!0),d=this._bufferService.buffer,e=this._optionsService.rawOptions;return c('"q'===a?`P1$r${+!!this._curAttrData.isProtected()}"q`:'"p'===a?'P1$r61;1"p':"r"===a?`P1$r${d.scrollTop+1};${d.scrollBottom+1}r`:"m"===a?"P1$r0m":" q"===a?`P1$r${({block:2,underline:4,bar:6})[e.cursorStyle]-!!e.cursorBlink} q`:"P0$r")}markRangeDirty(a,b){this._dirtyRowTracker.markRangeDirty(a,b)}},eW=class{constructor(a){this._bufferService=a,this.clearRange()}clearRange(){this.start=this._bufferService.buffer.y,this.end=this._bufferService.buffer.y}markDirty(a){a<this.start?this.start=a:a>this.end&&(this.end=a)}markRangeDirty(a,b){a>b&&(eU=a,a=b,b=eU),a<this.start&&(this.start=a),b>this.end&&(this.end=b)}markAllDirty(){this.markRangeDirty(0,this._bufferService.rows-1)}};function eX(a){return 0<=a&&a<256}eW=L([M(0,ab)],eW);var eY=class extends aI{constructor(a){super(),this._action=a,this._writeBuffer=[],this._callbacks=[],this._pendingData=0,this._bufferOffset=0,this._isSyncWriting=!1,this._syncCalls=0,this._didUserInput=!1,this._onWriteParsed=this._register(new a_),this.onWriteParsed=this._onWriteParsed.event}handleUserInput(){this._didUserInput=!0}writeSync(a,b){let c;if(void 0!==b&&this._syncCalls>b){this._syncCalls=0;return}if(this._pendingData+=a.length,this._writeBuffer.push(a),this._callbacks.push(void 0),this._syncCalls++,!this._isSyncWriting){for(this._isSyncWriting=!0;c=this._writeBuffer.shift();){this._action(c);let a=this._callbacks.shift();a&&a()}this._pendingData=0,this._bufferOffset=0x7fffffff,this._isSyncWriting=!1,this._syncCalls=0}}write(a,b){if(this._pendingData>5e7)throw 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+=a.length,this._writeBuffer.push(a),this._callbacks.push(b),this._innerWrite();return}setTimeout(()=>this._innerWrite())}this._pendingData+=a.length,this._writeBuffer.push(a),this._callbacks.push(b)}_innerWrite(a=0,b=!0){let c=a||performance.now();for(;this._writeBuffer.length>this._bufferOffset;){let a=this._writeBuffer[this._bufferOffset],d=this._action(a,b);if(d){let a=a=>performance.now()-c>=12?setTimeout(()=>this._innerWrite(0,a)):this._innerWrite(c,a);d.catch(a=>(queueMicrotask(()=>{throw a}),Promise.resolve(!1))).then(a);return}let e=this._callbacks[this._bufferOffset];if(e&&e(),this._bufferOffset++,this._pendingData-=a.length,performance.now()-c>=12)break}this._writeBuffer.length>this._bufferOffset?(this._bufferOffset>50&&(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()}},eZ=class{constructor(a){this._bufferService=a,this._nextId=1,this._entriesWithId=new Map,this._dataByLinkId=new Map}registerLink(a){let b=this._bufferService.buffer;if(void 0===a.id){let c=b.addMarker(b.ybase+b.y),d={data:a,id:this._nextId++,lines:[c]};return c.onDispose(()=>this._removeMarkerFromLink(d,c)),this._dataByLinkId.set(d.id,d),d.id}let c=this._getEntryIdKey(a),d=this._entriesWithId.get(c);if(d)return this.addLineToLink(d.id,b.ybase+b.y),d.id;let e=b.addMarker(b.ybase+b.y),f={id:this._nextId++,key:this._getEntryIdKey(a),data:a,lines:[e]};return e.onDispose(()=>this._removeMarkerFromLink(f,e)),this._entriesWithId.set(f.key,f),this._dataByLinkId.set(f.id,f),f.id}addLineToLink(a,b){let c=this._dataByLinkId.get(a);if(c&&c.lines.every(a=>a.line!==b)){let a=this._bufferService.buffer.addMarker(b);c.lines.push(a),a.onDispose(()=>this._removeMarkerFromLink(c,a))}}getLinkData(a){return this._dataByLinkId.get(a)?.data}_getEntryIdKey(a){return`${a.id};;${a.uri}`}_removeMarkerFromLink(a,b){let c=a.lines.indexOf(b);-1!==c&&(a.lines.splice(c,1),0===a.lines.length&&(void 0!==a.data.id&&this._entriesWithId.delete(a.key),this._dataByLinkId.delete(a.id)))}};eZ=L([M(0,ab)],eZ);var e$=!1,e_=class extends aI{constructor(a){super(),this._windowsWrappingHeuristics=this._register(new aJ),this._onBinary=this._register(new a_),this.onBinary=this._onBinary.event,this._onData=this._register(new a_),this.onData=this._onData.event,this._onLineFeed=this._register(new a_),this.onLineFeed=this._onLineFeed.event,this._onResize=this._register(new a_),this.onResize=this._onResize.event,this._onWriteParsed=this._register(new a_),this.onWriteParsed=this._onWriteParsed.event,this._onScroll=this._register(new a_),this._instantiationService=new d1,this.optionsService=this._register(new eh(a)),this._instantiationService.setService(ah,this.optionsService),this._bufferService=this._register(this._instantiationService.createInstance(ee)),this._instantiationService.setService(ab,this._bufferService),this._logService=this._register(this._instantiationService.createInstance(d3)),this._instantiationService.setService(ag,this._logService),this.coreService=this._register(this._instantiationService.createInstance(el)),this._instantiationService.setService(ad,this.coreService),this.coreMouseService=this._register(this._instantiationService.createInstance(eq)),this._instantiationService.setService(ac,this.coreMouseService),this.unicodeService=this._register(this._instantiationService.createInstance(eA)),this._instantiationService.setService(aj,this.unicodeService),this._charsetService=this._instantiationService.createInstance(eB),this._instantiationService.setService(ae,this._charsetService),this._oscLinkService=this._instantiationService.createInstance(eZ),this._instantiationService.setService(ai,this._oscLinkService),this._inputHandler=this._register(new eV(this._bufferService,this._charsetService,this.coreService,this._logService,this.optionsService,this._oscLinkService,this.coreMouseService,this.unicodeService)),this._register(aU.forward(this._inputHandler.onLineFeed,this._onLineFeed)),this._register(this._inputHandler),this._register(aU.forward(this._bufferService.onResize,this._onResize)),this._register(aU.forward(this.coreService.onData,this._onData)),this._register(aU.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 eY((a,b)=>this._inputHandler.parse(a,b))),this._register(aU.forward(this._writeBuffer.onWriteParsed,this._onWriteParsed))}get onScroll(){return this._onScrollApi||(this._onScrollApi=this._register(new a_),this._onScroll.event(a=>{this._onScrollApi?.fire(a.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(a){for(let b in a)this.optionsService.options[b]=a[b]}write(a,b){this._writeBuffer.write(a,b)}writeSync(a,b){this._logService.logLevel<=3&&!e$&&(this._logService.warn("writeSync is unreliable and will be removed soon."),e$=!0),this._writeBuffer.writeSync(a,b)}input(a,b=!0){this.coreService.triggerDataEvent(a,b)}resize(a,b){isNaN(a)||isNaN(b)||(a=Math.max(a,2),b=Math.max(b,1),this._bufferService.resize(a,b))}scroll(a,b=!1){this._bufferService.scroll(a,b)}scrollLines(a,b){this._bufferService.scrollLines(a,b)}scrollPages(a){this.scrollLines(a*(this.rows-1))}scrollToTop(){this.scrollLines(-this._bufferService.buffer.ydisp)}scrollToBottom(a){this.scrollLines(this._bufferService.buffer.ybase-this._bufferService.buffer.ydisp)}scrollToLine(a){let b=a-this._bufferService.buffer.ydisp;0!==b&&this.scrollLines(b)}registerEscHandler(a,b){return this._inputHandler.registerEscHandler(a,b)}registerDcsHandler(a,b){return this._inputHandler.registerDcsHandler(a,b)}registerCsiHandler(a,b){return this._inputHandler.registerCsiHandler(a,b)}registerOscHandler(a,b){return this._inputHandler.registerOscHandler(a,b)}_setup(){this._handleWindowsPtyOptionChange()}reset(){this._inputHandler.reset(),this._bufferService.reset(),this._charsetService.reset(),this.coreService.reset(),this.coreMouseService.reset()}_handleWindowsPtyOptionChange(){let a=!1,b=this.optionsService.rawOptions.windowsPty;b&&void 0!==b.buildNumber&&void 0!==b.buildNumber?a="conpty"===b.backend&&b.buildNumber<21376:this.optionsService.rawOptions.windowsMode&&(a=!0),a?this._enableWindowsWrappingHeuristics():this._windowsWrappingHeuristics.clear()}_enableWindowsWrappingHeuristics(){if(!this._windowsWrappingHeuristics.value){let a=[];a.push(this.onLineFeed(eC.bind(null,this._bufferService))),a.push(this.registerCsiHandler({final:"H"},()=>(eC(this._bufferService),!1))),this._windowsWrappingHeuristics.value=aF(()=>{for(let b of a)b.dispose()})}}},e0={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:["'",'"']},e1=0,e2=class{constructor(a){this._getKey=a,this._array=[],this._insertedValues=[],this._flushInsertedTask=new dG,this._isFlushingInserted=!1,this._deletedIndices=[],this._flushDeletedTask=new dG,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(a){this._flushCleanupDeleted(),0===this._insertedValues.length&&this._flushInsertedTask.enqueue(()=>this._flushInserted()),this._insertedValues.push(a)}_flushInserted(){let a=this._insertedValues.sort((a,b)=>this._getKey(a)-this._getKey(b)),b=0,c=0,d=Array(this._array.length+this._insertedValues.length);for(let e=0;e<d.length;e++)c>=this._array.length||this._getKey(a[b])<=this._getKey(this._array[c])?(d[e]=a[b],b++):d[e]=this._array[c++];this._array=d,this._insertedValues.length=0}_flushCleanupInserted(){!this._isFlushingInserted&&this._insertedValues.length>0&&this._flushInsertedTask.flush()}delete(a){if(this._flushCleanupInserted(),0===this._array.length)return!1;let b=this._getKey(a);if(void 0===b||-1===(e1=this._search(b))||this._getKey(this._array[e1])!==b)return!1;do if(this._array[e1]===a)return 0===this._deletedIndices.length&&this._flushDeletedTask.enqueue(()=>this._flushDeleted()),this._deletedIndices.push(e1),!0;while(++e1<this._array.length&&this._getKey(this._array[e1])===b)return!1}_flushDeleted(){this._isFlushingDeleted=!0;let a=this._deletedIndices.sort((a,b)=>a-b),b=0,c=Array(this._array.length-a.length),d=0;for(let e=0;e<this._array.length;e++)a[b]===e?b++:c[d++]=this._array[e];this._array=c,this._deletedIndices.length=0,this._isFlushingDeleted=!1}_flushCleanupDeleted(){!this._isFlushingDeleted&&this._deletedIndices.length>0&&this._flushDeletedTask.flush()}*getKeyIterator(a){if(this._flushCleanupInserted(),this._flushCleanupDeleted(),0!==this._array.length&&!((e1=this._search(a))<0||e1>=this._array.length)&&this._getKey(this._array[e1])===a)do yield this._array[e1];while(++e1<this._array.length&&this._getKey(this._array[e1])===a)}forEachByKey(a,b){if(this._flushCleanupInserted(),this._flushCleanupDeleted(),0!==this._array.length&&!((e1=this._search(a))<0||e1>=this._array.length)&&this._getKey(this._array[e1])===a)do b(this._array[e1]);while(++e1<this._array.length&&this._getKey(this._array[e1])===a)}values(){return this._flushCleanupInserted(),this._flushCleanupDeleted(),[...this._array].values()}_search(a){let b=0,c=this._array.length-1;for(;c>=b;){let d=b+c>>1,e=this._getKey(this._array[d]);if(e>a)c=d-1;else if(e<a)b=d+1;else{for(;d>0&&this._getKey(this._array[d-1])===a;)d--;return d}}return b}},e3=0,e4=0,e5=class extends aI{constructor(){super(),this._decorations=new e2(a=>a?.marker.line),this._onDecorationRegistered=this._register(new a_),this.onDecorationRegistered=this._onDecorationRegistered.event,this._onDecorationRemoved=this._register(new a_),this.onDecorationRemoved=this._onDecorationRemoved.event,this._register(aF(()=>this.reset()))}get decorations(){return this._decorations.values()}registerDecoration(a){if(a.marker.isDisposed)return;let b=new e6(a);if(b){let a=b.marker.onDispose(()=>b.dispose()),c=b.onDispose(()=>{c.dispose(),b&&(this._decorations.delete(b)&&this._onDecorationRemoved.fire(b),a.dispose())});this._decorations.insert(b),this._onDecorationRegistered.fire(b)}return b}reset(){for(let a of this._decorations.values())a.dispose();this._decorations.clear()}*getDecorationsAtCell(a,b,c){let d=0,e=0;for(let f of this._decorations.getKeyIterator(b))e=(d=f.options.x??0)+(f.options.width??1),a>=d&&a<e&&(!c||(f.options.layer??"bottom")===c)&&(yield f)}forEachDecorationAtCell(a,b,c,d){this._decorations.forEachByKey(b,b=>{e4=(e3=b.options.x??0)+(b.options.width??1),a>=e3&&a<e4&&(!c||(b.options.layer??"bottom")===c)&&d(b)})}},e6=class extends aH{constructor(a){super(),this.options=a,this.onRenderEmitter=this.add(new a_),this.onRender=this.onRenderEmitter.event,this._onDispose=this.add(new a_),this.onDispose=this._onDispose.event,this._cachedBg=null,this._cachedFg=null,this.marker=a.marker,this.options.overviewRulerOptions&&!this.options.overviewRulerOptions.position&&(this.options.overviewRulerOptions.position="full")}get backgroundColorRGB(){return null===this._cachedBg&&(this.options.backgroundColor?this._cachedBg=et.toColor(this.options.backgroundColor):this._cachedBg=void 0),this._cachedBg}get foregroundColorRGB(){return null===this._cachedFg&&(this.options.foregroundColor?this._cachedFg=et.toColor(this.options.foregroundColor):this._cachedFg=void 0),this._cachedFg}dispose(){this._onDispose.fire(),super.dispose()}},e7=class{constructor(a,b=1e3){this._renderCallback=a,this._debounceThresholdMS=b,this._lastRefreshMs=0,this._additionalRefreshRequested=!1}dispose(){this._refreshTimeoutID&&clearTimeout(this._refreshTimeoutID)}refresh(a,b,c){this._rowCount=c,a=void 0!==a?a:0,b=void 0!==b?b:this._rowCount-1,this._rowStart=void 0!==this._rowStart?Math.min(this._rowStart,a):a,this._rowEnd=void 0!==this._rowEnd?Math.max(this._rowEnd,b):b;let d=performance.now();if(d-this._lastRefreshMs>=this._debounceThresholdMS)this._lastRefreshMs=d,this._innerRefresh();else if(!this._additionalRefreshRequested){let a=d-this._lastRefreshMs,b=this._debounceThresholdMS-a;this._additionalRefreshRequested=!0,this._refreshTimeoutID=window.setTimeout(()=>{this._lastRefreshMs=performance.now(),this._innerRefresh(),this._additionalRefreshRequested=!1,this._refreshTimeoutID=void 0},b)}}_innerRefresh(){if(void 0===this._rowStart||void 0===this._rowEnd||void 0===this._rowCount)return;let a=Math.max(this._rowStart,0),b=Math.min(this._rowEnd,this._rowCount-1);this._rowStart=void 0,this._rowEnd=void 0,this._renderCallback(a,b)}},e8=class extends aI{constructor(a,b,c,d){super(),this._terminal=a,this._coreBrowserService=c,this._renderService=d,this._rowColumns=new WeakMap,this._liveRegionLineCount=0,this._charsToConsume=[],this._charsToAnnounce="";let e=this._coreBrowserService.mainDocument;this._accessibilityContainer=e.createElement("div"),this._accessibilityContainer.classList.add("xterm-accessibility"),this._rowContainer=e.createElement("div"),this._rowContainer.setAttribute("role","list"),this._rowContainer.classList.add("xterm-accessibility-tree"),this._rowElements=[];for(let a=0;a<this._terminal.rows;a++)this._rowElements[a]=this._createAccessibilityTreeNode(),this._rowContainer.appendChild(this._rowElements[a]);if(this._topBoundaryFocusListener=a=>this._handleBoundaryFocus(a,0),this._bottomBoundaryFocusListener=a=>this._handleBoundaryFocus(a,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=e.createElement("div"),this._liveRegion.classList.add("live-region"),this._liveRegion.setAttribute("aria-live","assertive"),this._accessibilityContainer.appendChild(this._liveRegion),this._liveRegionDebouncer=this._register(new e7(this._renderRows.bind(this))),!this._terminal.element)throw Error("Cannot enable accessibility before Terminal.open");this._terminal.element.insertAdjacentElement("afterbegin",this._accessibilityContainer),this._register(this._terminal.onResize(a=>this._handleResize(a.rows))),this._register(this._terminal.onRender(a=>this._refreshRows(a.start,a.end))),this._register(this._terminal.onScroll(()=>this._refreshRows())),this._register(this._terminal.onA11yChar(a=>this._handleChar(a))),this._register(this._terminal.onLineFeed(()=>this._handleChar(`
|
|
29
|
+
`))),this._register(this._terminal.onA11yTab(a=>this._handleTab(a))),this._register(this._terminal.onKey(a=>this._handleKey(a.key))),this._register(this._terminal.onBlur(()=>this._clearLiveRegion())),this._register(this._renderService.onDimensionsChange(()=>this._refreshRowsDimensions())),this._register(b3(e,"selectionchange",()=>this._handleSelectionChange())),this._register(this._coreBrowserService.onDprChange(()=>this._refreshRowsDimensions())),this._refreshRowsDimensions(),this._refreshRows(),this._register(aF(()=>{this._accessibilityContainer.remove(),this._rowElements.length=0}))}_handleTab(a){for(let b=0;b<a;b++)this._handleChar(" ")}_handleChar(a){this._liveRegionLineCount<21&&(this._charsToConsume.length>0?this._charsToConsume.shift()!==a&&(this._charsToAnnounce+=a):this._charsToAnnounce+=a,a===`
|
|
30
|
+
`&&(this._liveRegionLineCount++,21===this._liveRegionLineCount&&(this._liveRegion.textContent+=O)))}_clearLiveRegion(){this._liveRegion.textContent="",this._liveRegionLineCount=0}_handleKey(a){this._clearLiveRegion(),/\p{Control}/u.test(a)||this._charsToConsume.push(a)}_refreshRows(a,b){this._liveRegionDebouncer.refresh(a,b,this._terminal.rows)}_renderRows(a,b){let c=this._terminal.buffer,d=c.lines.length.toString();for(let e=a;e<=b;e++){let a=c.lines.get(c.ydisp+e),b=[],f=a?.translateToString(!0,void 0,void 0,b)||"",g=(c.ydisp+e+1).toString(),h=this._rowElements[e];h&&(0===f.length?(h.textContent=" ",this._rowColumns.set(h,[0,1])):(h.textContent=f,this._rowColumns.set(h,b)),h.setAttribute("aria-posinset",g),h.setAttribute("aria-setsize",d),this._alignRowWidth(h))}this._announceCharacters()}_announceCharacters(){0!==this._charsToAnnounce.length&&(this._liveRegion.textContent+=this._charsToAnnounce,this._charsToAnnounce="")}_handleBoundaryFocus(a,b){let c,d,e=a.target,f=this._rowElements[0===b?1:this._rowElements.length-2];if(e.getAttribute("aria-posinset")!==(0===b?"1":`${this._terminal.buffer.lines.length}`)&&a.relatedTarget===f){if(0===b?(c=e,d=this._rowElements.pop(),this._rowContainer.removeChild(d)):(c=this._rowElements.shift(),d=e,this._rowContainer.removeChild(c)),c.removeEventListener("focus",this._topBoundaryFocusListener),d.removeEventListener("focus",this._bottomBoundaryFocusListener),0===b){let a=this._createAccessibilityTreeNode();this._rowElements.unshift(a),this._rowContainer.insertAdjacentElement("afterbegin",a)}else{let a=this._createAccessibilityTreeNode();this._rowElements.push(a),this._rowContainer.appendChild(a)}this._rowElements[0].addEventListener("focus",this._topBoundaryFocusListener),this._rowElements[this._rowElements.length-1].addEventListener("focus",this._bottomBoundaryFocusListener),this._terminal.scrollLines(0===b?-1:1),this._rowElements[0===b?1:this._rowElements.length-2].focus(),a.preventDefault(),a.stopImmediatePropagation()}}_handleSelectionChange(){if(0===this._rowElements.length)return;let a=this._coreBrowserService.mainDocument.getSelection();if(!a)return;if(a.isCollapsed){this._rowContainer.contains(a.anchorNode)&&this._terminal.clearSelection();return}if(!a.anchorNode||!a.focusNode)return void console.error("anchorNode and/or focusNode are null");let b={node:a.anchorNode,offset:a.anchorOffset},c={node:a.focusNode,offset:a.focusOffset};if((b.node.compareDocumentPosition(c.node)&Node.DOCUMENT_POSITION_PRECEDING||b.node===c.node&&b.offset>c.offset)&&([b,c]=[c,b]),b.node.compareDocumentPosition(this._rowElements[0])&(Node.DOCUMENT_POSITION_CONTAINED_BY|Node.DOCUMENT_POSITION_FOLLOWING)&&(b={node:this._rowElements[0].childNodes[0],offset:0}),!this._rowContainer.contains(b.node))return;let d=this._rowElements.slice(-1)[0];if(c.node.compareDocumentPosition(d)&(Node.DOCUMENT_POSITION_CONTAINED_BY|Node.DOCUMENT_POSITION_PRECEDING)&&(c={node:d,offset:d.textContent?.length??0}),!this._rowContainer.contains(c.node))return;let e=({node:a,offset:b})=>{let c=a instanceof Text?a.parentNode:a,d=parseInt(c?.getAttribute("aria-posinset"),10)-1;if(isNaN(d))return console.warn("row is invalid. Race condition?"),null;let e=this._rowColumns.get(c);if(!e)return console.warn("columns is null. Race condition?"),null;let f=b<e.length?e[b]:e.slice(-1)[0]+1;return f>=this._terminal.cols&&(++d,f=0),{row:d,column:f}},f=e(b),g=e(c);if(!(!f||!g)){if(f.row>g.row||f.row===g.row&&f.column>=g.column)throw Error("invalid range");this._terminal.select(f.column,f.row,(g.row-f.row)*this._terminal.cols-f.column+g.column)}}_handleResize(a){this._rowElements[this._rowElements.length-1].removeEventListener("focus",this._bottomBoundaryFocusListener);for(let a=this._rowContainer.children.length;a<this._terminal.rows;a++)this._rowElements[a]=this._createAccessibilityTreeNode(),this._rowContainer.appendChild(this._rowElements[a]);for(;this._rowElements.length>a;)this._rowContainer.removeChild(this._rowElements.pop());this._rowElements[this._rowElements.length-1].addEventListener("focus",this._bottomBoundaryFocusListener),this._refreshRowsDimensions()}_createAccessibilityTreeNode(){let a=this._coreBrowserService.mainDocument.createElement("div");return a.setAttribute("role","listitem"),a.tabIndex=-1,this._refreshRowDimensions(a),a}_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 a=0;a<this._terminal.rows;a++)this._refreshRowDimensions(this._rowElements[a]),this._alignRowWidth(this._rowElements[a])}}_refreshRowDimensions(a){a.style.height=`${this._renderService.dimensions.css.cell.height}px`}_alignRowWidth(a){a.style.transform="";let b=a.getBoundingClientRect().width,c=this._rowColumns.get(a)?.slice(-1)?.[0];if(!c)return;let d=c*this._renderService.dimensions.css.cell.width;a.style.transform=`scaleX(${d/b})`}};e8=L([M(1,af),M(2,an),M(3,ap)],e8);var e9=class extends aI{constructor(a,b,c,d,e){super(),this._element=a,this._mouseService=b,this._renderService=c,this._bufferService=d,this._linkProviderService=e,this._linkCacheDisposables=[],this._isMouseOut=!0,this._wasResized=!1,this._activeLine=-1,this._onShowLinkUnderline=this._register(new a_),this.onShowLinkUnderline=this._onShowLinkUnderline.event,this._onHideLinkUnderline=this._register(new a_),this.onHideLinkUnderline=this._onHideLinkUnderline.event,this._register(aF(()=>{aE(this._linkCacheDisposables),this._linkCacheDisposables.length=0,this._lastMouseEvent=void 0,this._activeProviderReplies?.clear()})),this._register(this._bufferService.onResize(()=>{this._clearCurrentLink(),this._wasResized=!0})),this._register(b3(this._element,"mouseleave",()=>{this._isMouseOut=!0,this._clearCurrentLink()})),this._register(b3(this._element,"mousemove",this._handleMouseMove.bind(this))),this._register(b3(this._element,"mousedown",this._handleMouseDown.bind(this))),this._register(b3(this._element,"mouseup",this._handleMouseUp.bind(this)))}get currentLink(){return this._currentLink}_handleMouseMove(a){this._lastMouseEvent=a;let b=this._positionFromMouseEvent(a,this._element,this._mouseService);if(!b)return;this._isMouseOut=!1;let c=a.composedPath();for(let a=0;a<c.length;a++){let b=c[a];if(b.classList.contains("xterm"))break;if(b.classList.contains("xterm-hover"))return}this._lastBufferCell&&b.x===this._lastBufferCell.x&&b.y===this._lastBufferCell.y||(this._handleHover(b),this._lastBufferCell=b)}_handleHover(a){if(this._activeLine!==a.y||this._wasResized){this._clearCurrentLink(),this._askForLink(a,!1),this._wasResized=!1;return}this._currentLink&&this._linkAtPosition(this._currentLink.link,a)||(this._clearCurrentLink(),this._askForLink(a,!0))}_askForLink(a,b){this._activeProviderReplies&&b||(this._activeProviderReplies?.forEach(a=>{a?.forEach(a=>{a.link.dispose&&a.link.dispose()})}),this._activeProviderReplies=new Map,this._activeLine=a.y);let c=!1;for(let[d,e]of this._linkProviderService.linkProviders.entries())b?this._activeProviderReplies?.get(d)&&(c=this._checkLinkProviderResult(d,a,c)):e.provideLinks(a.y,b=>{if(this._isMouseOut)return;let e=b?.map(a=>({link:a}));this._activeProviderReplies?.set(d,e),c=this._checkLinkProviderResult(d,a,c),this._activeProviderReplies?.size===this._linkProviderService.linkProviders.length&&this._removeIntersectingLinks(a.y,this._activeProviderReplies)})}_removeIntersectingLinks(a,b){let c=new Set;for(let d=0;d<b.size;d++){let e=b.get(d);if(e)for(let b=0;b<e.length;b++){let d=e[b],f=d.link.range.start.y<a?0:d.link.range.start.x,g=d.link.range.end.y>a?this._bufferService.cols:d.link.range.end.x;for(let a=f;a<=g;a++){if(c.has(a)){e.splice(b--,1);break}c.add(a)}}}}_checkLinkProviderResult(a,b,c){if(!this._activeProviderReplies)return c;let d=this._activeProviderReplies.get(a),e=!1;for(let b=0;b<a;b++)(!this._activeProviderReplies.has(b)||this._activeProviderReplies.get(b))&&(e=!0);if(!e&&d){let a=d.find(a=>this._linkAtPosition(a.link,b));a&&(c=!0,this._handleNewLink(a))}if(this._activeProviderReplies.size===this._linkProviderService.linkProviders.length&&!c)for(let a=0;a<this._activeProviderReplies.size;a++){let d=this._activeProviderReplies.get(a)?.find(a=>this._linkAtPosition(a.link,b));if(d){c=!0,this._handleNewLink(d);break}}return c}_handleMouseDown(){this._mouseDownLink=this._currentLink}_handleMouseUp(a){var b,c;if(!this._currentLink)return;let d=this._positionFromMouseEvent(a,this._element,this._mouseService);d&&this._mouseDownLink&&(b=this._mouseDownLink.link,c=this._currentLink.link,b.text===c.text&&b.range.start.x===c.range.start.x&&b.range.start.y===c.range.start.y&&b.range.end.x===c.range.end.x&&b.range.end.y===c.range.end.y)&&this._linkAtPosition(this._currentLink.link,d)&&this._currentLink.link.activate(a,this._currentLink.link.text)}_clearCurrentLink(a,b){this._currentLink&&this._lastMouseEvent&&(!a||!b||this._currentLink.link.range.start.y>=a&&this._currentLink.link.range.end.y<=b)&&(this._linkLeave(this._element,this._currentLink.link,this._lastMouseEvent),this._currentLink=void 0,aE(this._linkCacheDisposables),this._linkCacheDisposables.length=0)}_handleNewLink(a){if(!this._lastMouseEvent)return;let b=this._positionFromMouseEvent(this._lastMouseEvent,this._element,this._mouseService);b&&this._linkAtPosition(a.link,b)&&(this._currentLink=a,this._currentLink.state={decorations:{underline:void 0===a.link.decorations||a.link.decorations.underline,pointerCursor:void 0===a.link.decorations||a.link.decorations.pointerCursor},isHovered:!0},this._linkHover(this._element,a.link,this._lastMouseEvent),a.link.decorations={},Object.defineProperties(a.link.decorations,{pointerCursor:{get:()=>this._currentLink?.state?.decorations.pointerCursor,set:a=>{this._currentLink?.state&&this._currentLink.state.decorations.pointerCursor!==a&&(this._currentLink.state.decorations.pointerCursor=a,this._currentLink.state.isHovered&&this._element.classList.toggle("xterm-cursor-pointer",a))}},underline:{get:()=>this._currentLink?.state?.decorations.underline,set:b=>{this._currentLink?.state&&this._currentLink?.state?.decorations.underline!==b&&(this._currentLink.state.decorations.underline=b,this._currentLink.state.isHovered&&this._fireUnderlineEvent(a.link,b))}}}),this._linkCacheDisposables.push(this._renderService.onRenderedViewportChange(a=>{if(!this._currentLink)return;let b=0===a.start?0:a.start+1+this._bufferService.buffer.ydisp,c=this._bufferService.buffer.ydisp+1+a.end;if(this._currentLink.link.range.start.y>=b&&this._currentLink.link.range.end.y<=c&&(this._clearCurrentLink(b,c),this._lastMouseEvent)){let a=this._positionFromMouseEvent(this._lastMouseEvent,this._element,this._mouseService);a&&this._askForLink(a,!1)}})))}_linkHover(a,b,c){this._currentLink?.state&&(this._currentLink.state.isHovered=!0,this._currentLink.state.decorations.underline&&this._fireUnderlineEvent(b,!0),this._currentLink.state.decorations.pointerCursor&&a.classList.add("xterm-cursor-pointer")),b.hover&&b.hover(c,b.text)}_fireUnderlineEvent(a,b){let c=a.range,d=this._bufferService.buffer.ydisp,e=this._createLinkUnderlineEvent(c.start.x-1,c.start.y-d-1,c.end.x,c.end.y-d-1,void 0);(b?this._onShowLinkUnderline:this._onHideLinkUnderline).fire(e)}_linkLeave(a,b,c){this._currentLink?.state&&(this._currentLink.state.isHovered=!1,this._currentLink.state.decorations.underline&&this._fireUnderlineEvent(b,!1),this._currentLink.state.decorations.pointerCursor&&a.classList.remove("xterm-cursor-pointer")),b.leave&&b.leave(c,b.text)}_linkAtPosition(a,b){let c=a.range.start.y*this._bufferService.cols+a.range.start.x,d=a.range.end.y*this._bufferService.cols+a.range.end.x,e=b.y*this._bufferService.cols+b.x;return c<=e&&e<=d}_positionFromMouseEvent(a,b,c){let d=c.getCoords(a,b,this._bufferService.cols,this._bufferService.rows);if(d)return{x:d[0],y:d[1]+this._bufferService.buffer.ydisp}}_createLinkUnderlineEvent(a,b,c,d,e){return{x1:a,y1:b,x2:c,y2:d,cols:this._bufferService.cols,fg:e}}};e9=L([M(1,ao),M(2,ap),M(3,ab),M(4,at)],e9);var fa=class extends e_{constructor(a={}){super(a),this._linkifier=this._register(new aJ),this.browser=dm,this._keyDownHandled=!1,this._keyDownSeen=!1,this._keyPressHandled=!1,this._unprocessedDeadKey=!1,this._accessibilityManager=this._register(new aJ),this._onCursorMove=this._register(new a_),this.onCursorMove=this._onCursorMove.event,this._onKey=this._register(new a_),this.onKey=this._onKey.event,this._onRender=this._register(new a_),this.onRender=this._onRender.event,this._onSelectionChange=this._register(new a_),this.onSelectionChange=this._onSelectionChange.event,this._onTitleChange=this._register(new a_),this.onTitleChange=this._onTitleChange.event,this._onBell=this._register(new a_),this.onBell=this._onBell.event,this._onFocus=this._register(new a_),this._onBlur=this._register(new a_),this._onA11yCharEmitter=this._register(new a_),this._onA11yTabEmitter=this._register(new a_),this._onWillOpen=this._register(new a_),this._setup(),this._decorationService=this._instantiationService.createInstance(e5),this._instantiationService.setService(ak,this._decorationService),this._linkProviderService=this._instantiationService.createInstance(di),this._instantiationService.setService(at,this._linkProviderService),this._linkProviderService.registerLinkProvider(this._instantiationService.createInstance(al)),this._register(this._inputHandler.onRequestBell(()=>this._onBell.fire())),this._register(this._inputHandler.onRequestRefreshRows(a=>this.refresh(a?.start??0,a?.end??this.rows-1))),this._register(this._inputHandler.onRequestSendFocus(()=>this._reportFocus())),this._register(this._inputHandler.onRequestReset(()=>this.reset())),this._register(this._inputHandler.onRequestWindowsOptionsReport(a=>this._reportWindowsOptions(a))),this._register(this._inputHandler.onColor(a=>this._handleColorEvent(a))),this._register(aU.forward(this._inputHandler.onCursorMove,this._onCursorMove)),this._register(aU.forward(this._inputHandler.onTitleChange,this._onTitleChange)),this._register(aU.forward(this._inputHandler.onA11yChar,this._onA11yCharEmitter)),this._register(aU.forward(this._inputHandler.onA11yTab,this._onA11yTabEmitter)),this._register(this._bufferService.onResize(a=>this._afterResize(a.cols,a.rows))),this._register(aF(()=>{this._customKeyEventHandler=void 0,this.element?.parentNode?.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(a){if(this._themeService)for(let b of a){let a,c="";switch(b.index){case 256:a="foreground",c="10";break;case 257:a="background",c="11";break;case 258:a="cursor",c="12";break;default:a="ansi",c="4;"+b.index}switch(b.type){case 0:let d=es.toColorRGB("ansi"===a?this._themeService.colors.ansi[b.index]:this._themeService.colors[a]);this.coreService.triggerDataEvent(`${cH.ESC}]${c};${function(a,b=16){let[c,d,e]=a;return`rgb:${eR(c,b)}/${eR(d,b)}/${eR(e,b)}`}(d)}${cJ.ST}`);break;case 1:if("ansi"===a)this._themeService.modifyColors(a=>a.ansi[b.index]=cK.toColor(...b.color));else{let c=a;this._themeService.modifyColors(a=>a[c]=cK.toColor(...b.color))}break;case 2:this._themeService.restoreColor(b.index)}}}_setup(){super._setup(),this._customKeyEventHandler=void 0}get buffer(){return this.buffers.active}focus(){this.textarea&&this.textarea.focus({preventScroll:!0})}_handleScreenReaderModeOptionChange(a){a?!this._accessibilityManager.value&&this._renderService&&(this._accessibilityManager.value=this._instantiationService.createInstance(e8,this)):this._accessibilityManager.clear()}_handleTextAreaFocus(a){this.coreService.decPrivateModes.sendFocus&&this.coreService.triggerDataEvent(cH.ESC+"[I"),this.element.classList.add("focus"),this._showCursor(),this._onFocus.fire()}blur(){return this.textarea?.blur()}_handleTextAreaBlur(){this.textarea.value="",this.refresh(this.buffer.y,this.buffer.y),this.coreService.decPrivateModes.sendFocus&&this.coreService.triggerDataEvent(cH.ESC+"[O"),this.element.classList.remove("focus"),this._onBlur.fire()}_syncTextArea(){if(!this.textarea||!this.buffer.isCursorInViewport||this._compositionHelper.isComposing||!this._renderService)return;let a=this.buffer.ybase+this.buffer.y,b=this.buffer.lines.get(a);if(!b)return;let c=Math.min(this.buffer.x,this.cols-1),d=this._renderService.dimensions.css.cell.height,e=b.getWidth(c),f=this._renderService.dimensions.css.cell.width*e,g=this.buffer.y*this._renderService.dimensions.css.cell.height,h=c*this._renderService.dimensions.css.cell.width;this.textarea.style.left=h+"px",this.textarea.style.top=g+"px",this.textarea.style.width=f+"px",this.textarea.style.height=d+"px",this.textarea.style.lineHeight=d+"px",this.textarea.style.zIndex="-5"}_initGlobal(){this._bindKeys(),this._register(b3(this.element,"copy",a=>{var b;this.hasSelection()&&(b=this._selectionService,a.clipboardData&&a.clipboardData.setData("text/plain",b.selectionText),a.preventDefault())}));let a=a=>{var b,c,d;return b=this.textarea,c=this.coreService,d=this.optionsService,void(a.stopPropagation(),a.clipboardData&&P(a.clipboardData.getData("text/plain"),b,c,d))};this._register(b3(this.textarea,"paste",a)),this._register(b3(this.element,"paste",a)),dt?this._register(b3(this.element,"mousedown",a=>{2===a.button&&R(a,this.textarea,this.screenElement,this._selectionService,this.options.rightClickSelectsWord)})):this._register(b3(this.element,"contextmenu",a=>{R(a,this.textarea,this.screenElement,this._selectionService,this.options.rightClickSelectsWord)})),dB&&this._register(b3(this.element,"auxclick",a=>{1===a.button&&Q(a,this.textarea,this.screenElement)}))}_bindKeys(){this._register(b3(this.textarea,"keyup",a=>this._keyUp(a),!0)),this._register(b3(this.textarea,"keydown",a=>this._keyDown(a),!0)),this._register(b3(this.textarea,"keypress",a=>this._keyPress(a),!0)),this._register(b3(this.textarea,"compositionstart",()=>this._compositionHelper.compositionstart())),this._register(b3(this.textarea,"compositionupdate",a=>this._compositionHelper.compositionupdate(a))),this._register(b3(this.textarea,"compositionend",()=>this._compositionHelper.compositionend())),this._register(b3(this.textarea,"input",a=>this._inputEvent(a),!0)),this._register(this.onRender(()=>this._compositionHelper.updateCompositionElements()))}open(a){if(!a)throw Error("Terminal requires a parent element.");if(a.isConnected||this._logService.debug("Terminal.open was called on an element that was not attached to the DOM"),this.element?.ownerDocument.defaultView&&this._coreBrowserService){this.element.ownerDocument.defaultView!==this._coreBrowserService.window&&(this._coreBrowserService.window=this.element.ownerDocument.defaultView);return}this._document=a.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"),a.appendChild(this.element);let b=this._document.createDocumentFragment();this._viewportElement=this._document.createElement("div"),this._viewportElement.classList.add("xterm-viewport"),b.appendChild(this._viewportElement),this.screenElement=this._document.createElement("div"),this.screenElement.classList.add("xterm-screen"),this._register(b3(this.screenElement,"mousemove",a=>this.updateCursorStyle(a))),this._helperContainer=this._document.createElement("div"),this._helperContainer.classList.add("xterm-helpers"),this.screenElement.appendChild(this._helperContainer),b.appendChild(this.screenElement);let c=this.textarea=this._document.createElement("textarea");this.textarea.classList.add("xterm-helper-textarea"),this.textarea.setAttribute("aria-label",N),dC||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",()=>c.readOnly=this.optionsService.rawOptions.disableStdin)),this.textarea.readOnly=this.optionsService.rawOptions.disableStdin,this._coreBrowserService=this._register(this._instantiationService.createInstance(dg,this.textarea,a.ownerDocument.defaultView??window,this._document?window.document:null)),this._instantiationService.setService(an,this._coreBrowserService),this._register(b3(this.textarea,"focus",a=>this._handleTextAreaFocus(a))),this._register(b3(this.textarea,"blur",()=>this._handleTextAreaBlur())),this._helperContainer.appendChild(this.textarea),this._charSizeService=this._instantiationService.createInstance(dc,this._document,this._helperContainer),this._instantiationService.setService(am,this._charSizeService),this._themeService=this._instantiationService.createInstance(d$),this._instantiationService.setService(as,this._themeService),this._characterJoinerService=this._instantiationService.createInstance(c$),this._instantiationService.setService(ar,this._characterJoinerService),this._renderService=this._register(this._instantiationService.createInstance(dI,this.rows,this.screenElement)),this._instantiationService.setService(ap,this._renderService),this._register(this._renderService.onRenderedViewportChange(a=>this._onRender.fire(a))),this.onResize(a=>this._renderService.resize(a.cols,a.rows)),this._compositionView=this._document.createElement("div"),this._compositionView.classList.add("composition-view"),this._compositionHelper=this._instantiationService.createInstance(cB,this.textarea,this._compositionView),this._helperContainer.appendChild(this._compositionView),this._mouseService=this._instantiationService.createInstance(dk),this._instantiationService.setService(ao,this._mouseService);let d=this._linkifier.value=this._register(this._instantiationService.createInstance(e9,this.screenElement));this.element.appendChild(b);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(cu,this.element,this.screenElement)),this._register(this._viewport.onRequestScrollLines(a=>{super.scrollLines(a,!1),this.refresh(0,this.rows-1)})),this._selectionService=this._register(this._instantiationService.createInstance(dS,this.element,this.screenElement,d)),this._instantiationService.setService(aq,this._selectionService),this._register(this._selectionService.onRequestScrollLines(a=>this.scrollLines(a.amount,a.suppressScrollEvent))),this._register(this._selectionService.onSelectionChange(()=>this._onSelectionChange.fire())),this._register(this._selectionService.onRequestRedraw(a=>this._renderService.handleSelectionChanged(a.start,a.end,a.columnSelectMode))),this._register(this._selectionService.onLinuxMouseSelection(a=>{this.textarea.value=a,this.textarea.focus(),this.textarea.select()})),this._register(aU.any(this._onScroll.event,this._inputHandler.onScroll)(()=>{this._selectionService.refresh(),this._viewport?.queueSync()})),this._register(this._instantiationService.createInstance(cv,this.screenElement)),this._register(b3(this.element,"mousedown",a=>this._selectionService.handleMouseDown(a))),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(e8,this)),this._register(this.optionsService.onSpecificOptionChange("screenReaderMode",a=>this._handleScreenReaderModeOptionChange(a))),this.options.overviewRuler.width&&(this._overviewRulerRenderer=this._register(this._instantiationService.createInstance(cA,this._viewportElement,this.screenElement))),this.optionsService.onSpecificOptionChange("overviewRuler",a=>{!this._overviewRulerRenderer&&a&&this._viewportElement&&this.screenElement&&(this._overviewRulerRenderer=this._register(this._instantiationService.createInstance(cA,this._viewportElement,this.screenElement)))}),this._charSizeService.measure(),this.refresh(0,this.rows-1),this._initGlobal(),this.bindMouse()}_createRenderer(){return this._instantiationService.createInstance(db,this,this._document,this.element,this.screenElement,this._viewportElement,this._helperContainer,this.linkifier)}bindMouse(){let a=this,b=this.element;function c(b){let c,d,e=a._mouseService.getMouseReportCoords(b,a.screenElement);if(!e)return!1;switch(b.overrideType||b.type){case"mousemove":d=32,void 0===b.buttons?(c=3,void 0!==b.button&&(c=b.button<3?b.button:3)):c=1&b.buttons?0:4&b.buttons?1:2&b.buttons?2:3;break;case"mouseup":d=0,c=b.button<3?b.button:3;break;case"mousedown":d=1,c=b.button<3?b.button:3;break;case"wheel":if(a._customWheelEventHandler&&!1===a._customWheelEventHandler(b))return!1;let f=b.deltaY;if(0===f||0===a.coreMouseService.consumeWheelEvent(b,a._renderService?.dimensions?.device?.cell?.height,a._coreBrowserService?.dpr))return!1;d=f<0?0:1,c=4;break;default:return!1}return void 0!==d&&void 0!==c&&!(c>4)&&a.coreMouseService.triggerMouseEvent({col:e.col,row:e.row,x:e.x,y:e.y,button:c,action:d,ctrl:b.ctrlKey,alt:b.altKey,shift:b.shiftKey})}let d={mouseup:null,wheel:null,mousedrag:null,mousemove:null},e=a=>(c(a),a.buttons||(this._document.removeEventListener("mouseup",d.mouseup),d.mousedrag&&this._document.removeEventListener("mousemove",d.mousedrag)),this.cancel(a)),f=a=>(c(a),this.cancel(a,!0)),g=a=>{a.buttons&&c(a)},h=a=>{a.buttons||c(a)};this._register(this.coreMouseService.onProtocolChange(a=>{a?("debug"===this.optionsService.rawOptions.logLevel&&this._logService.debug("Binding to mouse events:",this.coreMouseService.explainEvents(a)),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()),8&a?d.mousemove||(b.addEventListener("mousemove",h),d.mousemove=h):(b.removeEventListener("mousemove",d.mousemove),d.mousemove=null),16&a?d.wheel||(b.addEventListener("wheel",f,{passive:!1}),d.wheel=f):(b.removeEventListener("wheel",d.wheel),d.wheel=null),2&a?d.mouseup||(d.mouseup=e):(this._document.removeEventListener("mouseup",d.mouseup),d.mouseup=null),4&a?d.mousedrag||(d.mousedrag=g):(this._document.removeEventListener("mousemove",d.mousedrag),d.mousedrag=null)})),this.coreMouseService.activeProtocol=this.coreMouseService.activeProtocol,this._register(b3(b,"mousedown",a=>{if(a.preventDefault(),this.focus(),!(!this.coreMouseService.areMouseEventsActive||this._selectionService.shouldForceSelection(a)))return c(a),d.mouseup&&this._document.addEventListener("mouseup",d.mouseup),d.mousedrag&&this._document.addEventListener("mousemove",d.mousedrag),this.cancel(a)})),this._register(b3(b,"wheel",b=>{if(!d.wheel){if(this._customWheelEventHandler&&!1===this._customWheelEventHandler(b))return!1;if(!this.buffer.hasScrollback){if(0===b.deltaY)return!1;if(0===a.coreMouseService.consumeWheelEvent(b,a._renderService?.dimensions?.device?.cell?.height,a._coreBrowserService?.dpr))return this.cancel(b,!0);let c=cH.ESC+(this.coreService.decPrivateModes.applicationCursorKeys?"O":"[")+(b.deltaY<0?"A":"B");return this.coreService.triggerDataEvent(c,!0),this.cancel(b,!0)}}},{passive:!1}))}refresh(a,b){this._renderService?.refreshRows(a,b)}updateCursorStyle(a){this._selectionService?.shouldColumnSelect(a)?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(a,b){this._viewport?this._viewport.scrollLines(a):super.scrollLines(a,b),this.refresh(0,this.rows-1)}scrollPages(a){this.scrollLines(a*(this.rows-1))}scrollToTop(){this.scrollLines(-this._bufferService.buffer.ydisp)}scrollToBottom(a){a&&this._viewport?this._viewport.scrollToLine(this.buffer.ybase,!0):this.scrollLines(this._bufferService.buffer.ybase-this._bufferService.buffer.ydisp)}scrollToLine(a){let b=a-this._bufferService.buffer.ydisp;0!==b&&this.scrollLines(b)}paste(a){P(a,this.textarea,this.coreService,this.optionsService)}attachCustomKeyEventHandler(a){this._customKeyEventHandler=a}attachCustomWheelEventHandler(a){this._customWheelEventHandler=a}registerLinkProvider(a){return this._linkProviderService.registerLinkProvider(a)}registerCharacterJoiner(a){if(!this._characterJoinerService)throw Error("Terminal must be opened first");let b=this._characterJoinerService.register(a);return this.refresh(0,this.rows-1),b}deregisterCharacterJoiner(a){if(!this._characterJoinerService)throw Error("Terminal must be opened first");this._characterJoinerService.deregister(a)&&this.refresh(0,this.rows-1)}get markers(){return this.buffer.markers}registerMarker(a){return this.buffer.addMarker(this.buffer.ybase+this.buffer.y+a)}registerDecoration(a){return this._decorationService.registerDecoration(a)}hasSelection(){return!!this._selectionService&&this._selectionService.hasSelection}select(a,b,c){this._selectionService.setSelection(a,b,c)}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(){this._selectionService?.clearSelection()}selectAll(){this._selectionService?.selectAll()}selectLines(a,b){this._selectionService?.selectLines(a,b)}_keyDown(a){if(this._keyDownHandled=!1,this._keyDownSeen=!0,this._customKeyEventHandler&&!1===this._customKeyEventHandler(a))return!1;let b=this.browser.isMac&&this.options.macOptionIsMeta&&a.altKey;if(!b&&!this._compositionHelper.keydown(a))return this.options.scrollOnUserInput&&this.buffer.ybase!==this.buffer.ydisp&&this.scrollToBottom(!0),!1;b||"Dead"!==a.key&&"AltGraph"!==a.key||(this._unprocessedDeadKey=!0);let c=function(a,b,c,d){let e={type:0,cancel:!1,key:void 0},f=!!a.shiftKey|2*!!a.altKey|4*!!a.ctrlKey|8*!!a.metaKey;switch(a.keyCode){case 0:"UIKeyInputUpArrow"===a.key?b?e.key=cH.ESC+"OA":e.key=cH.ESC+"[A":"UIKeyInputLeftArrow"===a.key?b?e.key=cH.ESC+"OD":e.key=cH.ESC+"[D":"UIKeyInputRightArrow"===a.key?b?e.key=cH.ESC+"OC":e.key=cH.ESC+"[C":"UIKeyInputDownArrow"===a.key&&(b?e.key=cH.ESC+"OB":e.key=cH.ESC+"[B");break;case 8:e.key=a.ctrlKey?"\b":cH.DEL,a.altKey&&(e.key=cH.ESC+e.key);break;case 9:if(a.shiftKey){e.key=cH.ESC+"[Z";break}e.key=cH.HT,e.cancel=!0;break;case 13:e.key=a.altKey?cH.ESC+cH.CR:cH.CR,e.cancel=!0;break;case 27:e.key=cH.ESC,a.altKey&&(e.key=cH.ESC+cH.ESC),e.cancel=!0;break;case 37:if(a.metaKey)break;f?e.key=cH.ESC+"[1;"+(f+1)+"D":b?e.key=cH.ESC+"OD":e.key=cH.ESC+"[D";break;case 39:if(a.metaKey)break;f?e.key=cH.ESC+"[1;"+(f+1)+"C":b?e.key=cH.ESC+"OC":e.key=cH.ESC+"[C";break;case 38:if(a.metaKey)break;f?e.key=cH.ESC+"[1;"+(f+1)+"A":b?e.key=cH.ESC+"OA":e.key=cH.ESC+"[A";break;case 40:if(a.metaKey)break;f?e.key=cH.ESC+"[1;"+(f+1)+"B":b?e.key=cH.ESC+"OB":e.key=cH.ESC+"[B";break;case 45:a.shiftKey||a.ctrlKey||(e.key=cH.ESC+"[2~");break;case 46:f?e.key=cH.ESC+"[3;"+(f+1)+"~":e.key=cH.ESC+"[3~";break;case 36:f?e.key=cH.ESC+"[1;"+(f+1)+"H":b?e.key=cH.ESC+"OH":e.key=cH.ESC+"[H";break;case 35:f?e.key=cH.ESC+"[1;"+(f+1)+"F":b?e.key=cH.ESC+"OF":e.key=cH.ESC+"[F";break;case 33:a.shiftKey?e.type=2:a.ctrlKey?e.key=cH.ESC+"[5;"+(f+1)+"~":e.key=cH.ESC+"[5~";break;case 34:a.shiftKey?e.type=3:a.ctrlKey?e.key=cH.ESC+"[6;"+(f+1)+"~":e.key=cH.ESC+"[6~";break;case 112:f?e.key=cH.ESC+"[1;"+(f+1)+"P":e.key=cH.ESC+"OP";break;case 113:f?e.key=cH.ESC+"[1;"+(f+1)+"Q":e.key=cH.ESC+"OQ";break;case 114:f?e.key=cH.ESC+"[1;"+(f+1)+"R":e.key=cH.ESC+"OR";break;case 115:f?e.key=cH.ESC+"[1;"+(f+1)+"S":e.key=cH.ESC+"OS";break;case 116:f?e.key=cH.ESC+"[15;"+(f+1)+"~":e.key=cH.ESC+"[15~";break;case 117:f?e.key=cH.ESC+"[17;"+(f+1)+"~":e.key=cH.ESC+"[17~";break;case 118:f?e.key=cH.ESC+"[18;"+(f+1)+"~":e.key=cH.ESC+"[18~";break;case 119:f?e.key=cH.ESC+"[19;"+(f+1)+"~":e.key=cH.ESC+"[19~";break;case 120:f?e.key=cH.ESC+"[20;"+(f+1)+"~":e.key=cH.ESC+"[20~";break;case 121:f?e.key=cH.ESC+"[21;"+(f+1)+"~":e.key=cH.ESC+"[21~";break;case 122:f?e.key=cH.ESC+"[23;"+(f+1)+"~":e.key=cH.ESC+"[23~";break;case 123:f?e.key=cH.ESC+"[24;"+(f+1)+"~":e.key=cH.ESC+"[24~";break;default:if(!a.ctrlKey||a.shiftKey||a.altKey||a.metaKey)if((!c||d)&&a.altKey&&!a.metaKey){let b=e0[a.keyCode]?.[+!!a.shiftKey];if(b)e.key=cH.ESC+b;else if(a.keyCode>=65&&a.keyCode<=90){let b=String.fromCharCode(a.ctrlKey?a.keyCode-64:a.keyCode+32);a.shiftKey&&(b=b.toUpperCase()),e.key=cH.ESC+b}else if(32===a.keyCode)e.key=cH.ESC+(a.ctrlKey?cH.NUL:" ");else if("Dead"===a.key&&a.code.startsWith("Key")){let b=a.code.slice(3,4);a.shiftKey||(b=b.toLowerCase()),e.key=cH.ESC+b,e.cancel=!0}}else!c||a.altKey||a.ctrlKey||a.shiftKey||!a.metaKey?!a.key||a.ctrlKey||a.altKey||a.metaKey||!(a.keyCode>=48)||1!==a.key.length?a.key&&a.ctrlKey&&("_"===a.key&&(e.key=cH.US),"@"===a.key&&(e.key=cH.NUL)):e.key=a.key:65===a.keyCode&&(e.type=1);else a.keyCode>=65&&a.keyCode<=90?e.key=String.fromCharCode(a.keyCode-64):32===a.keyCode?e.key=cH.NUL:a.keyCode>=51&&a.keyCode<=55?e.key=String.fromCharCode(a.keyCode-51+27):56===a.keyCode?e.key=cH.DEL:219===a.keyCode?e.key=cH.ESC:220===a.keyCode?e.key=cH.FS:221===a.keyCode&&(e.key=cH.GS)}return e}(a,this.coreService.decPrivateModes.applicationCursorKeys,this.browser.isMac,this.options.macOptionIsMeta);if(this.updateCursorStyle(a),3===c.type||2===c.type){let b=this.rows-1;return this.scrollLines(2===c.type?-b:b),this.cancel(a,!0)}return 1===c.type&&this.selectAll(),!!(this._isThirdLevelShift(this.browser,a)||(c.cancel&&this.cancel(a,!0),!c.key)||a.key&&!a.ctrlKey&&!a.altKey&&!a.metaKey&&1===a.key.length&&a.key.charCodeAt(0)>=65&&90>=a.key.charCodeAt(0))||(this._unprocessedDeadKey?(this._unprocessedDeadKey=!1,!0):((c.key===cH.ETX||c.key===cH.CR)&&(this.textarea.value=""),this._onKey.fire({key:c.key,domEvent:a}),this._showCursor(),this.coreService.triggerDataEvent(c.key,!0),!this.optionsService.rawOptions.screenReaderMode||a.altKey||a.ctrlKey)?this.cancel(a,!0):void(this._keyDownHandled=!0))}_isThirdLevelShift(a,b){let c=a.isMac&&!this.options.macOptionIsMeta&&b.altKey&&!b.ctrlKey&&!b.metaKey||a.isWindows&&b.altKey&&b.ctrlKey&&!b.metaKey||a.isWindows&&b.getModifierState("AltGraph");return"keypress"===b.type?c:c&&(!b.keyCode||b.keyCode>47)}_keyUp(a){var b;this._keyDownSeen=!1,this._customKeyEventHandler&&!1===this._customKeyEventHandler(a)||(16===(b=a).keyCode||17===b.keyCode||18===b.keyCode||this.focus(),this.updateCursorStyle(a),this._keyPressHandled=!1)}_keyPress(a){let b;if(this._keyPressHandled=!1,this._keyDownHandled||this._customKeyEventHandler&&!1===this._customKeyEventHandler(a))return!1;if(this.cancel(a),a.charCode)b=a.charCode;else if(null===a.which||void 0===a.which)b=a.keyCode;else{if(0===a.which||0===a.charCode)return!1;b=a.which}return!!b&&(!a.altKey&&!a.ctrlKey&&!a.metaKey||!!this._isThirdLevelShift(this.browser,a))&&(b=String.fromCharCode(b),this._onKey.fire({key:b,domEvent:a}),this._showCursor(),this.coreService.triggerDataEvent(b,!0),this._keyPressHandled=!0,this._unprocessedDeadKey=!1,!0)}_inputEvent(a){if(a.data&&"insertText"===a.inputType&&(!a.composed||!this._keyDownSeen)&&!this.optionsService.rawOptions.screenReaderMode){if(this._keyPressHandled)return!1;this._unprocessedDeadKey=!1;let b=a.data;return this.coreService.triggerDataEvent(b,!0),this.cancel(a),!0}return!1}resize(a,b){if(a===this.cols&&b===this.rows){this._charSizeService&&!this._charSizeService.hasValidSize&&this._charSizeService.measure();return}super.resize(a,b)}_afterResize(a,b){this._charSizeService?.measure()}clear(){if(0!==this.buffer.ybase||0!==this.buffer.y){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 a=1;a<this.rows;a++)this.buffer.lines.push(this.buffer.getBlankLine(d5));this._onScroll.fire({position:this.buffer.ydisp}),this.refresh(0,this.rows-1)}}reset(){this.options.rows=this.rows,this.options.cols=this.cols;let a=this._customKeyEventHandler;this._setup(),super.reset(),this._selectionService?.reset(),this._decorationService.reset(),this._customKeyEventHandler=a,this.refresh(0,this.rows-1)}clearTextureAtlas(){this._renderService?.clearTextureAtlas()}_reportFocus(){this.element?.classList.contains("focus")?this.coreService.triggerDataEvent(cH.ESC+"[I"):this.coreService.triggerDataEvent(cH.ESC+"[O")}_reportWindowsOptions(a){if(this._renderService)switch(a){case 0:let b=this._renderService.dimensions.css.canvas.width.toFixed(0),c=this._renderService.dimensions.css.canvas.height.toFixed(0);this.coreService.triggerDataEvent(`${cH.ESC}[4;${c};${b}t`);break;case 1:let d=this._renderService.dimensions.css.cell.width.toFixed(0),e=this._renderService.dimensions.css.cell.height.toFixed(0);this.coreService.triggerDataEvent(`${cH.ESC}[6;${e};${d}t`)}}cancel(a,b){if(!(!this.options.cancelEvents&&!b))return a.preventDefault(),a.stopPropagation(),!1}},fb=class{constructor(){this._addons=[]}dispose(){for(let a=this._addons.length-1;a>=0;a--)this._addons[a].instance.dispose()}loadAddon(a,b){let c={instance:b,dispose:b.dispose,isDisposed:!1};this._addons.push(c),b.dispose=()=>this._wrappedAddonDispose(c),b.activate(a)}_wrappedAddonDispose(a){if(a.isDisposed)return;let b=-1;for(let c=0;c<this._addons.length;c++)if(this._addons[c]===a){b=c;break}if(-1===b)throw Error("Could not dispose an addon that has not been loaded");a.isDisposed=!0,a.dispose.apply(a.instance),this._addons.splice(b,1)}},fc=class{constructor(a){this._line=a}get isWrapped(){return this._line.isWrapped}get length(){return this._line.length}getCell(a,b){if(!(a<0||a>=this._line.length))return b?(this._line.loadCell(a,b),b):this._line.loadCell(a,new Y)}translateToString(a,b,c){return this._line.translateToString(a,b,c)}},fd=class{constructor(a,b){this._buffer=a,this.type=b}init(a){return this._buffer=a,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(a){let b=this._buffer.lines.get(a);if(b)return new fc(b)}getNullCell(){return new Y}},fe=class extends aI{constructor(a){super(),this._core=a,this._onBufferChange=this._register(new a_),this.onBufferChange=this._onBufferChange.event,this._normal=new fd(this._core.buffers.normal,"normal"),this._alternate=new fd(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 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)}},ff=class{constructor(a){this._core=a}registerCsiHandler(a,b){return this._core.registerCsiHandler(a,a=>b(a.toArray()))}addCsiHandler(a,b){return this.registerCsiHandler(a,b)}registerDcsHandler(a,b){return this._core.registerDcsHandler(a,(a,c)=>b(a,c.toArray()))}addDcsHandler(a,b){return this.registerDcsHandler(a,b)}registerEscHandler(a,b){return this._core.registerEscHandler(a,b)}addEscHandler(a,b){return this.registerEscHandler(a,b)}registerOscHandler(a,b){return this._core.registerOscHandler(a,b)}addOscHandler(a,b){return this.registerOscHandler(a,b)}},fg=class{constructor(a){this._core=a}register(a){this._core.unicodeService.register(a)}get versions(){return this._core.unicodeService.versions}get activeVersion(){return this._core.unicodeService.activeVersion}set activeVersion(a){this._core.unicodeService.activeVersion=a}},fh=["cols","rows"],fi=0,fj=class extends aI{constructor(a){super(),this._core=this._register(new fa(a)),this._addonManager=this._register(new fb),this._publicOptions={...this._core.options};let b=a=>this._core.options[a],c=(a,b)=>{this._checkReadonlyOptions(a),this._core.options[a]=b};for(let a in this._core.options){let d={get:b.bind(this,a),set:c.bind(this,a)};Object.defineProperty(this._publicOptions,a,d)}}_checkReadonlyOptions(a){if(fh.includes(a))throw Error(`Option "${a}" can only be set in the constructor`)}_checkProposedApi(){if(!this._core.optionsService.rawOptions.allowProposedApi)throw 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 ff(this._core)),this._parser}get unicode(){return this._checkProposedApi(),new fg(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 fe(this._core))),this._buffer}get markers(){return this._checkProposedApi(),this._core.markers}get modes(){let a=this._core.coreService.decPrivateModes,b="none";switch(this._core.coreMouseService.activeProtocol){case"X10":b="x10";break;case"VT200":b="vt200";break;case"DRAG":b="drag";break;case"ANY":b="any"}return{applicationCursorKeysMode:a.applicationCursorKeys,applicationKeypadMode:a.applicationKeypad,bracketedPasteMode:a.bracketedPasteMode,insertMode:this._core.coreService.modes.insertMode,mouseTrackingMode:b,originMode:a.origin,reverseWraparoundMode:a.reverseWraparound,sendFocusMode:a.sendFocus,synchronizedOutputMode:a.synchronizedOutput,wraparoundMode:a.wraparound}}get options(){return this._publicOptions}set options(a){for(let b in a)this._publicOptions[b]=a[b]}blur(){this._core.blur()}focus(){this._core.focus()}input(a,b=!0){this._core.input(a,b)}resize(a,b){this._verifyIntegers(a,b),this._core.resize(a,b)}open(a){this._core.open(a)}attachCustomKeyEventHandler(a){this._core.attachCustomKeyEventHandler(a)}attachCustomWheelEventHandler(a){this._core.attachCustomWheelEventHandler(a)}registerLinkProvider(a){return this._core.registerLinkProvider(a)}registerCharacterJoiner(a){return this._checkProposedApi(),this._core.registerCharacterJoiner(a)}deregisterCharacterJoiner(a){this._checkProposedApi(),this._core.deregisterCharacterJoiner(a)}registerMarker(a=0){return this._verifyIntegers(a),this._core.registerMarker(a)}registerDecoration(a){return this._checkProposedApi(),this._verifyPositiveIntegers(a.x??0,a.width??0,a.height??0),this._core.registerDecoration(a)}hasSelection(){return this._core.hasSelection()}select(a,b,c){this._verifyIntegers(a,b,c),this._core.select(a,b,c)}getSelection(){return this._core.getSelection()}getSelectionPosition(){return this._core.getSelectionPosition()}clearSelection(){this._core.clearSelection()}selectAll(){this._core.selectAll()}selectLines(a,b){this._verifyIntegers(a,b),this._core.selectLines(a,b)}dispose(){super.dispose()}scrollLines(a){this._verifyIntegers(a),this._core.scrollLines(a)}scrollPages(a){this._verifyIntegers(a),this._core.scrollPages(a)}scrollToTop(){this._core.scrollToTop()}scrollToBottom(){this._core.scrollToBottom()}scrollToLine(a){this._verifyIntegers(a),this._core.scrollToLine(a)}clear(){this._core.clear()}write(a,b){this._core.write(a,b)}writeln(a,b){this._core.write(a),this._core.write(`\r
|
|
31
|
+
`,b)}paste(a){this._core.paste(a)}refresh(a,b){this._verifyIntegers(a,b),this._core.refresh(a,b)}reset(){this._core.reset()}clearTextureAtlas(){this._core.clearTextureAtlas()}loadAddon(a){this._addonManager.loadAddon(this,a)}static get strings(){return{get promptLabel(){return N},set promptLabel(t){N=t},get tooMuchOutput(){return O},set tooMuchOutput(t){O=t}}}_verifyIntegers(...a){for(fi of a)if(fi===1/0||isNaN(fi)||fi%1!=0)throw Error("This API only accepts integers")}_verifyPositiveIntegers(...a){for(fi of a)if(fi&&(fi===1/0||isNaN(fi)||fi%1!=0||fi<0))throw Error("This API only accepts positive integers")}};a.s(["Terminal",0,fj],10450);var fk=class{activate(a){this._terminal=a}dispose(){}fit(){let a=this.proposeDimensions();if(!a||!this._terminal||isNaN(a.cols)||isNaN(a.rows))return;let b=this._terminal._core;(this._terminal.rows!==a.rows||this._terminal.cols!==a.cols)&&(b._renderService.clear(),this._terminal.resize(a.cols,a.rows))}proposeDimensions(){if(!this._terminal||!this._terminal.element||!this._terminal.element.parentElement)return;let a=this._terminal._core._renderService.dimensions;if(0===a.css.cell.width||0===a.css.cell.height)return;let b=0===this._terminal.options.scrollback?0:this._terminal.options.overviewRuler?.width||14,c=window.getComputedStyle(this._terminal.element.parentElement),d=parseInt(c.getPropertyValue("height")),e=Math.max(0,parseInt(c.getPropertyValue("width"))),f=window.getComputedStyle(this._terminal.element),g={top:parseInt(f.getPropertyValue("padding-top")),bottom:parseInt(f.getPropertyValue("padding-bottom")),right:parseInt(f.getPropertyValue("padding-right")),left:parseInt(f.getPropertyValue("padding-left"))},h=g.top+g.bottom;return{cols:Math.max(2,Math.floor((e-(g.right+g.left)-b)/a.css.cell.width)),rows:Math.max(1,Math.floor((d-h)/a.css.cell.height))}}};a.s(["FitAddon",0,fk],99813)},22734,(a,b,c)=>{b.exports=a.x("fs",()=>require("fs"))},92509,(a,b,c)=>{b.exports=a.x("url",()=>require("url"))},33405,(a,b,c)=>{b.exports=a.x("child_process",()=>require("child_process"))},21517,(a,b,c)=>{b.exports=a.x("http",()=>require("http"))},24836,(a,b,c)=>{b.exports=a.x("https",()=>require("https"))},63047,(a,b,c)=>{var d=a.r(22734),e=a.r(92509),f=a.r(33405).spawn;function g(b){"use strict";b=b||{};var c,g,h=this,i=a.r(21517),j=a.r(24836),k={},l=!1,m={"User-Agent":"node-XMLHttpRequest",Accept:"*/*"},n=Object.assign({},m),o=["accept-charset","accept-encoding","access-control-request-headers","access-control-request-method","connection","content-length","content-transfer-encoding","cookie","cookie2","date","expect","host","keep-alive","origin","referer","te","trailer","transfer-encoding","upgrade","via"],p=["TRACE","TRACK","CONNECT"],q=!1,r=!1,s=!1,u={};this.UNSENT=0,this.OPENED=1,this.HEADERS_RECEIVED=2,this.LOADING=3,this.DONE=4,this.readyState=this.UNSENT,this.onreadystatechange=null,this.responseText="",this.responseXML="",this.response=Buffer.alloc(0),this.status=null,this.statusText=null,this.open=function(a,b,c,d,e){if(this.abort(),r=!1,s=!1,!(a&&-1===p.indexOf(a)))throw Error("SecurityError: Request method not allowed");k={method:a,url:b.toString(),async:"boolean"!=typeof c||c,user:d||null,password:e||null},v(this.OPENED)},this.setDisableHeaderCheck=function(a){l=a},this.setRequestHeader=function(a,b){if(this.readyState!=this.OPENED)throw Error("INVALID_STATE_ERR: setRequestHeader can only be called when state is OPEN");if(!l&&(!a||-1!==o.indexOf(a.toLowerCase())))return console.warn('Refused to set unsafe header "'+a+'"'),!1;if(q)throw Error("INVALID_STATE_ERR: send flag is true");return n[a]=b,!0},this.getResponseHeader=function(a){return"string"==typeof a&&this.readyState>this.OPENED&&g.headers[a.toLowerCase()]&&!r?g.headers[a.toLowerCase()]:null},this.getAllResponseHeaders=function(){if(this.readyState<this.HEADERS_RECEIVED||r)return"";var a="";for(var b in g.headers)"set-cookie"!==b&&"set-cookie2"!==b&&(a+=b+": "+g.headers[b]+"\r\n");return a.substr(0,a.length-2)},this.getRequestHeader=function(a){return"string"==typeof a&&n[a]?n[a]:""},this.send=function(a){if(this.readyState!=this.OPENED)throw Error("INVALID_STATE_ERR: connection must be opened before send() is called");if(q)throw Error("INVALID_STATE_ERR: send has already been called");var l,m=!1,o=!1,p=e.parse(k.url);switch(p.protocol){case"https:":m=!0;case"http:":l=p.hostname;break;case"file:":o=!0;break;case void 0:case"":l="localhost";break;default:throw Error("Protocol not supported.")}if(o){if("GET"!==k.method)throw Error("XMLHttpRequest: Only GET method is supported");if(k.async)d.readFile(unescape(p.pathname),function(a,b){a?h.handleError(a,a.errno||-1):(h.status=200,h.responseText=b.toString("utf8"),h.response=b,v(h.DONE))});else try{this.response=d.readFileSync(unescape(p.pathname)),this.responseText=this.response.toString("utf8"),this.status=200,v(h.DONE)}catch(a){this.handleError(a,a.errno||-1)}return}var s=p.port||(m?443:80),u=p.pathname+(p.search?p.search:"");if(n.Host=l,m&&443===s||80===s||(n.Host+=":"+p.port),k.user){void 0===k.password&&(k.password="");var w=new Buffer(k.user+":"+k.password);n.Authorization="Basic "+w.toString("base64")}"GET"===k.method||"HEAD"===k.method?a=null:a?(n["Content-Length"]=Buffer.isBuffer(a)?a.length:Buffer.byteLength(a),Object.keys(n).some(function(a){return"content-type"===a.toLowerCase()})||(n["Content-Type"]="text/plain;charset=UTF-8")):"POST"===k.method&&(n["Content-Length"]=0);var x=b.agent||!1,y={host:l,port:s,path:u,method:k.method,headers:n,agent:x};if(m&&(y.pfx=b.pfx,y.key=b.key,y.passphrase=b.passphrase,y.cert=b.cert,y.ca=b.ca,y.ciphers=b.ciphers,y.rejectUnauthorized=!1!==b.rejectUnauthorized),r=!1,k.async){var z=m?j.request:i.request;q=!0,h.dispatchEvent("readystatechange");var A=function(a){if(302===(g=a).statusCode||303===g.statusCode||307===g.statusCode){k.url=g.headers.location;var d=e.parse(k.url);l=d.hostname;var f={hostname:d.hostname,port:d.port,path:d.path,method:303===g.statusCode?"GET":k.method,headers:n};m&&(f.pfx=b.pfx,f.key=b.key,f.passphrase=b.passphrase,f.cert=b.cert,f.ca=b.ca,f.ciphers=b.ciphers,f.rejectUnauthorized=!1!==b.rejectUnauthorized),(c=z(f,A).on("error",B)).end();return}v(h.HEADERS_RECEIVED),h.status=g.statusCode,g.on("data",function(a){if(a){var b=Buffer.from(a);h.response=Buffer.concat([h.response,b])}q&&v(h.LOADING)}),g.on("end",function(){q&&(q=!1,v(h.DONE),h.responseText=h.response.toString("utf8"))}),g.on("error",function(a){h.handleError(a)})},B=function(a){if(c.reusedSocket&&"ECONNRESET"===a.code)return z(y,A).on("error",B);h.handleError(a)};c=z(y,A).on("error",B),b.autoUnref&&c.on("socket",a=>{a.unref()}),a&&c.write(a),c.end(),h.dispatchEvent("loadstart")}else{var C=".node-xmlhttprequest-content-"+process.pid,D=".node-xmlhttprequest-sync-"+process.pid;d.writeFileSync(D,"","utf8");for(var E="var http = require('http'), https = require('https'), fs = require('fs');var doRequest = http"+(m?"s":"")+".request;var options = "+JSON.stringify(y)+";var responseText = '';var responseData = Buffer.alloc(0);var req = doRequest(options, function(response) {response.on('data', function(chunk) { var data = Buffer.from(chunk); responseText += data.toString('utf8'); responseData = Buffer.concat([responseData, data]);});response.on('end', function() {fs.writeFileSync('"+C+"', JSON.stringify({err: null, data: {statusCode: response.statusCode, headers: response.headers, text: responseText, data: responseData.toString('base64')}}), 'utf8');fs.unlinkSync('"+D+"');});response.on('error', function(error) {fs.writeFileSync('"+C+"', 'NODE-XMLHTTPREQUEST-ERROR:' + JSON.stringify(error), 'utf8');fs.unlinkSync('"+D+"');});}).on('error', function(error) {fs.writeFileSync('"+C+"', 'NODE-XMLHTTPREQUEST-ERROR:' + JSON.stringify(error), 'utf8');fs.unlinkSync('"+D+"');});"+(a?"req.write('"+JSON.stringify(a).slice(1,-1).replace(/'/g,"\\'")+"');":"")+"req.end();",F=f(process.argv[0],["-e",E]);d.existsSync(D););if(h.responseText=d.readFileSync(C,"utf8"),F.stdin.end(),d.unlinkSync(C),h.responseText.match(/^NODE-XMLHTTPREQUEST-ERROR:/)){var G=JSON.parse(h.responseText.replace(/^NODE-XMLHTTPREQUEST-ERROR:/,""));h.handleError(G,503)}else{h.status=h.responseText.replace(/^NODE-XMLHTTPREQUEST-STATUS:([0-9]*),.*/,"$1");var H=JSON.parse(h.responseText.replace(/^NODE-XMLHTTPREQUEST-STATUS:[0-9]*,(.*)/,"$1"));g={statusCode:h.status,headers:H.data.headers},h.responseText=H.data.text,h.response=Buffer.from(H.data.data,"base64"),v(h.DONE,!0)}}},this.handleError=function(a,b){this.status=b||0,this.statusText=a,this.responseText=a.stack,r=!0,v(this.DONE)},this.abort=function(){c&&(c.abort(),c=null),n=Object.assign({},m),this.responseText="",this.responseXML="",this.response=Buffer.alloc(0),r=s=!0,this.readyState!==this.UNSENT&&(this.readyState!==this.OPENED||q)&&this.readyState!==this.DONE&&(q=!1,v(this.DONE)),this.readyState=this.UNSENT},this.addEventListener=function(a,b){a in u||(u[a]=[]),u[a].push(b)},this.removeEventListener=function(a,b){a in u&&(u[a]=u[a].filter(function(a){return a!==b}))},this.dispatchEvent=function(a){if("function"==typeof h["on"+a]&&(this.readyState===this.DONE&&k.async?setTimeout(function(){h["on"+a]()},0):h["on"+a]()),a in u)for(let b=0,c=u[a].length;b<c;b++)this.readyState===this.DONE?setTimeout(function(){u[a][b].call(h)},0):u[a][b].call(h)};var v=function(a){if(h.readyState!==a&&(h.readyState!==h.UNSENT||!s)&&(h.readyState=a,(k.async||h.readyState<h.OPENED||h.readyState===h.DONE)&&h.dispatchEvent("readystatechange"),h.readyState===h.DONE)){let a;a=s?"abort":r?"error":"load",h.dispatchEvent(a),h.dispatchEvent("loadend")}}}b.exports=g,g.XMLHttpRequest=g},84425,(a,b,c)=>{function d(a,b,c,d){return Math.round(a/c)+" "+d+(b>=1.5*c?"s":"")}b.exports=function(a,b){b=b||{};var c,e,f,g,h=typeof a;if("string"===h&&a.length>0){var i=a;if(!((i=String(i)).length>100)){var j=/^(-?(?:\d+)?\.?\d+) *(milliseconds?|msecs?|ms|seconds?|secs?|s|minutes?|mins?|m|hours?|hrs?|h|days?|d|weeks?|w|years?|yrs?|y)?$/i.exec(i);if(j){var k=parseFloat(j[1]);switch((j[2]||"ms").toLowerCase()){case"years":case"year":case"yrs":case"yr":case"y":return 315576e5*k;case"weeks":case"week":case"w":return 6048e5*k;case"days":case"day":case"d":return 864e5*k;case"hours":case"hour":case"hrs":case"hr":case"h":return 36e5*k;case"minutes":case"minute":case"mins":case"min":case"m":return 6e4*k;case"seconds":case"second":case"secs":case"sec":case"s":return 1e3*k;case"milliseconds":case"millisecond":case"msecs":case"msec":case"ms":return k;default:break}}}return}if("number"===h&&isFinite(a)){return b.long?(e=Math.abs(c=a))>=864e5?d(c,e,864e5,"day"):e>=36e5?d(c,e,36e5,"hour"):e>=6e4?d(c,e,6e4,"minute"):e>=1e3?d(c,e,1e3,"second"):c+" ms":(g=Math.abs(f=a))>=864e5?Math.round(f/864e5)+"d":g>=36e5?Math.round(f/36e5)+"h":g>=6e4?Math.round(f/6e4)+"m":g>=1e3?Math.round(f/1e3)+"s":f+"ms"}throw Error("val is not a non-empty string or a valid number. val="+JSON.stringify(a))}},11017,(a,b,c)=>{b.exports=function(b){function c(a){let b,e,f,g=null;function h(...a){if(!h.enabled)return;let d=Number(new Date);h.diff=d-(b||d),h.prev=b,h.curr=d,b=d,a[0]=c.coerce(a[0]),"string"!=typeof a[0]&&a.unshift("%O");let e=0;a[0]=a[0].replace(/%([a-zA-Z%])/g,(b,d)=>{if("%%"===b)return"%";e++;let f=c.formatters[d];if("function"==typeof f){let c=a[e];b=f.call(h,c),a.splice(e,1),e--}return b}),c.formatArgs.call(h,a),(h.log||c.log).apply(h,a)}return h.namespace=a,h.useColors=c.useColors(),h.color=c.selectColor(a),h.extend=d,h.destroy=c.destroy,Object.defineProperty(h,"enabled",{enumerable:!0,configurable:!1,get:()=>null!==g?g:(e!==c.namespaces&&(e=c.namespaces,f=c.enabled(a)),f),set:a=>{g=a}}),"function"==typeof c.init&&c.init(h),h}function d(a,b){let d=c(this.namespace+(void 0===b?":":b)+a);return d.log=this.log,d}function e(a,b){let c=0,d=0,e=-1,f=0;for(;c<a.length;)if(d<b.length&&(b[d]===a[c]||"*"===b[d]))"*"===b[d]?(e=d,f=c):c++,d++;else{if(-1===e)return!1;d=e+1,c=++f}for(;d<b.length&&"*"===b[d];)d++;return d===b.length}return c.debug=c,c.default=c,c.coerce=function(a){return a instanceof Error?a.stack||a.message:a},c.disable=function(){let a=[...c.names,...c.skips.map(a=>"-"+a)].join(",");return c.enable(""),a},c.enable=function(a){for(let b of(c.save(a),c.namespaces=a,c.names=[],c.skips=[],("string"==typeof a?a:"").trim().replace(/\s+/g,",").split(",").filter(Boolean)))"-"===b[0]?c.skips.push(b.slice(1)):c.names.push(b)},c.enabled=function(a){for(let b of c.skips)if(e(a,b))return!1;for(let b of c.names)if(e(a,b))return!0;return!1},c.humanize=a.r(84425),c.destroy=function(){console.warn("Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`.")},Object.keys(b).forEach(a=>{c[a]=b[a]}),c.names=[],c.skips=[],c.formatters={},c.selectColor=function(a){let b=0;for(let c=0;c<a.length;c++)b=(b<<5)-b+a.charCodeAt(c)|0;return c.colors[Math.abs(b)%c.colors.length]},c.enable(c.load()),c}},70722,(a,b,c)=>{b.exports=a.x("tty",()=>require("tty"))},55858,(a,b,c)=>{"use strict";b.exports=(a,b=process.argv)=>{let c=a.startsWith("-")?"":1===a.length?"-":"--",d=b.indexOf(c+a),e=b.indexOf("--");return -1!==d&&(-1===e||d<e)}},73083,(a,b,c)=>{"use strict";let d;a.r(46786);let e=a.r(70722),f=a.r(55858),{env:g}=process;function h(a,b={}){var c;return 0!==(c=function(a,{streamIsTTY:b,sniffFlags:c=!0}={}){let e=function(){if("FORCE_COLOR"in g)return"true"===g.FORCE_COLOR?1:"false"===g.FORCE_COLOR?0:0===g.FORCE_COLOR.length?1:Math.min(Number.parseInt(g.FORCE_COLOR,10),3)}();void 0!==e&&(d=e);let h=c?d:e;if(0===h)return 0;if(c){if(f("color=16m")||f("color=full")||f("color=truecolor"))return 3;if(f("color=256"))return 2}if(a&&!b&&void 0===h)return 0;let i=h||0;if("dumb"===g.TERM)return i;if("CI"in g)return["TRAVIS","CIRCLECI","APPVEYOR","GITLAB_CI","GITHUB_ACTIONS","BUILDKITE","DRONE"].some(a=>a in g)||"codeship"===g.CI_NAME?1:i;if("TEAMCITY_VERSION"in g)return+!!/^(9\.(0*[1-9]\d*)\.|\d{2,}\.)/.test(g.TEAMCITY_VERSION);if("truecolor"===g.COLORTERM)return 3;if("TERM_PROGRAM"in g){let a=Number.parseInt((g.TERM_PROGRAM_VERSION||"").split(".")[0],10);switch(g.TERM_PROGRAM){case"iTerm.app":return a>=3?3:2;case"Apple_Terminal":return 2}}return/-256(color)?$/i.test(g.TERM)?2:/^screen|^xterm|^vt100|^vt220|^rxvt|color|ansi|cygwin|linux/i.test(g.TERM)||"COLORTERM"in g?1:i}(a,{streamIsTTY:a&&a.isTTY,...b}))&&{level:c,hasBasic:!0,has256:c>=2,has16m:c>=3}}f("no-color")||f("no-colors")||f("color=false")||f("color=never")?d=0:(f("color")||f("colors")||f("color=true")||f("color=always"))&&(d=1),b.exports={supportsColor:h,stdout:h({isTTY:e.isatty(1)}),stderr:h({isTTY:e.isatty(2)})}},81454,(a,b,c)=>{let d=a.r(70722),e=a.r(24361);c.init=function(a){a.inspectOpts={};let b=Object.keys(c.inspectOpts);for(let d=0;d<b.length;d++)a.inspectOpts[b[d]]=c.inspectOpts[b[d]]},c.log=function(...a){return process.stderr.write(e.formatWithOptions(c.inspectOpts,...a)+"\n")},c.formatArgs=function(a){let{namespace:d,useColors:e}=this;if(e){let c=this.color,e="\x1b[3"+(c<8?c:"8;5;"+c),f=` ${e};1m${d} \u001B[0m`;a[0]=f+a[0].split("\n").join("\n"+f),a.push(e+"m+"+b.exports.humanize(this.diff)+"\x1b[0m")}else a[0]=(c.inspectOpts.hideDate?"":new Date().toISOString()+" ")+d+" "+a[0]},c.save=function(a){a?process.env.DEBUG=a:delete process.env.DEBUG},c.load=function(){return process.env.DEBUG},c.useColors=function(){return"colors"in c.inspectOpts?!!c.inspectOpts.colors:d.isatty(process.stderr.fd)},c.destroy=e.deprecate(()=>{},"Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`."),c.colors=[6,2,3,4,5,1];try{let b=a.r(73083);b&&(b.stderr||b).level>=2&&(c.colors=[20,21,26,27,32,33,38,39,40,41,42,43,44,45,56,57,62,63,68,69,74,75,76,77,78,79,80,81,92,93,98,99,112,113,128,129,134,135,148,149,160,161,162,163,164,165,166,167,168,169,170,171,172,173,178,179,184,185,196,197,198,199,200,201,202,203,204,205,206,207,208,209,214,215,220,221])}catch(a){}c.inspectOpts=Object.keys(process.env).filter(a=>/^debug_/i.test(a)).reduce((a,b)=>{let c=b.substring(6).toLowerCase().replace(/_([a-z])/g,(a,b)=>b.toUpperCase()),d=process.env[b];return d=!!/^(yes|on|true|enabled)$/i.test(d)||!/^(no|off|false|disabled)$/i.test(d)&&("null"===d?null:Number(d)),a[c]=d,a},{}),b.exports=a.r(11017)(c);let{formatters:f}=b.exports;f.o=function(a){return this.inspectOpts.colors=this.useColors,e.inspect(a,this.inspectOpts).split("\n").map(a=>a.trim()).join(" ")},f.O=function(a){return this.inspectOpts.colors=this.useColors,e.inspect(a,this.inspectOpts)}},47522,(a,b,c)=>{let d;c.formatArgs=function(a){if(a[0]=(this.useColors?"%c":"")+this.namespace+(this.useColors?" %c":" ")+a[0]+(this.useColors?"%c ":" ")+"+"+b.exports.humanize(this.diff),!this.useColors)return;let c="color: "+this.color;a.splice(1,0,c,"color: inherit");let d=0,e=0;a[0].replace(/%[a-zA-Z%]/g,a=>{"%%"!==a&&(d++,"%c"===a&&(e=d))}),a.splice(e,0,c)},c.save=function(a){try{a?c.storage.setItem("debug",a):c.storage.removeItem("debug")}catch(a){}},c.load=function(){let a;try{a=c.storage.getItem("debug")||c.storage.getItem("DEBUG")}catch(a){}return!a&&"u">typeof process&&"env"in process&&(a=process.env.DEBUG),a},c.useColors=function(){let a;return!("u">typeof navigator&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/(edge|trident)\/(\d+)/))&&("u">typeof document&&document.documentElement&&document.documentElement.style&&document.documentElement.style.WebkitAppearance||"u">typeof navigator&&navigator.userAgent&&(a=navigator.userAgent.toLowerCase().match(/firefox\/(\d+)/))&&parseInt(a[1],10)>=31||"u">typeof navigator&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/applewebkit\/(\d+)/))},c.storage=function(){try{return localStorage}catch(a){}}(),d=!1,c.destroy=()=>{d||(d=!0,console.warn("Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`."))},c.colors=["#0000CC","#0000FF","#0033CC","#0033FF","#0066CC","#0066FF","#0099CC","#0099FF","#00CC00","#00CC33","#00CC66","#00CC99","#00CCCC","#00CCFF","#3300CC","#3300FF","#3333CC","#3333FF","#3366CC","#3366FF","#3399CC","#3399FF","#33CC00","#33CC33","#33CC66","#33CC99","#33CCCC","#33CCFF","#6600CC","#6600FF","#6633CC","#6633FF","#66CC00","#66CC33","#9900CC","#9900FF","#9933CC","#9933FF","#99CC00","#99CC33","#CC0000","#CC0033","#CC0066","#CC0099","#CC00CC","#CC00FF","#CC3300","#CC3333","#CC3366","#CC3399","#CC33CC","#CC33FF","#CC6600","#CC6633","#CC9900","#CC9933","#CCCC00","#CCCC33","#FF0000","#FF0033","#FF0066","#FF0099","#FF00CC","#FF00FF","#FF3300","#FF3333","#FF3366","#FF3399","#FF33CC","#FF33FF","#FF6600","#FF6633","#FF9900","#FF9933","#FFCC00","#FFCC33"],c.log=console.debug||console.log||(()=>{}),b.exports=a.r(11017)(c);let{formatters:e}=b.exports;e.j=function(a){try{return JSON.stringify(a)}catch(a){return"[UnexpectedJSONParseError]: "+a.message}}},35290,(a,b,c)=>{"u"<typeof process||"renderer"===process.type||process.__nwjs?b.exports=a.r(47522):b.exports=a.r(81454)},27699,(a,b,c)=>{b.exports=a.x("events",()=>require("events"))},55004,(a,b,c)=>{b.exports=a.x("tls",()=>require("tls"))},88947,(a,b,c)=>{b.exports=a.x("stream",()=>require("stream"))},6461,(a,b,c)=>{b.exports=a.x("zlib",()=>require("zlib"))},17376,(a,b,c)=>{"use strict";let d=["nodebuffer","arraybuffer","fragments"],e="u">typeof Blob;e&&d.push("blob"),b.exports={BINARY_TYPES:d,EMPTY_BUFFER:Buffer.alloc(0),GUID:"258EAFA5-E914-47DA-95CA-C5AB0DC85B11",hasBlob:e,kForOnEventAttribute:Symbol("kIsForOnEventAttribute"),kListener:Symbol("kListener"),kStatusCode:Symbol("status-code"),kWebSocket:Symbol("websocket"),NOOP:()=>{}}},29618,(a,b,c)=>{"use strict";let{EMPTY_BUFFER:d}=a.r(17376),e=Buffer[Symbol.species];function f(a,b,c,d,e){for(let f=0;f<e;f++)c[d+f]=a[f]^b[3&f]}function g(a,b){for(let c=0;c<a.length;c++)a[c]^=b[3&c]}function h(a){let b;return(h.readOnly=!0,Buffer.isBuffer(a))?a:(a instanceof ArrayBuffer?b=new e(a):ArrayBuffer.isView(a)?b=new e(a.buffer,a.byteOffset,a.byteLength):(b=Buffer.from(a),h.readOnly=!1),b)}if(b.exports={concat:function(a,b){if(0===a.length)return d;if(1===a.length)return a[0];let c=Buffer.allocUnsafe(b),f=0;for(let b=0;b<a.length;b++){let d=a[b];c.set(d,f),f+=d.length}return f<b?new e(c.buffer,c.byteOffset,f):c},mask:f,toArrayBuffer:function(a){return a.length===a.buffer.byteLength?a.buffer:a.buffer.slice(a.byteOffset,a.byteOffset+a.length)},toBuffer:h,unmask:g},!process.env.WS_NO_BUFFER_UTIL)try{let a=(()=>{let a=Error("Cannot find module 'bufferutil'");throw a.code="MODULE_NOT_FOUND",a})();b.exports.mask=function(b,c,d,e,g){g<48?f(b,c,d,e,g):a.mask(b,c,d,e,g)},b.exports.unmask=function(b,c){b.length<32?g(b,c):a.unmask(b,c)}}catch(a){}},74873,(a,b,c)=>{"use strict";let d=Symbol("kDone"),e=Symbol("kRun");b.exports=class{constructor(a){this[d]=()=>{this.pending--,this[e]()},this.concurrency=a||1/0,this.jobs=[],this.pending=0}add(a){this.jobs.push(a),this[e]()}[e](){if(this.pending!==this.concurrency&&this.jobs.length){let a=this.jobs.shift();this.pending++,a(this[d])}}}},10976,(a,b,c)=>{"use strict";let d,e=a.r(6461),f=a.r(29618),g=a.r(74873),{kStatusCode:h}=a.r(17376),i=Buffer[Symbol.species],j=Buffer.from([0,0,255,255]),k=Symbol("permessage-deflate"),l=Symbol("total-length"),m=Symbol("callback"),n=Symbol("buffers"),o=Symbol("error");function p(a){this[n].push(a),this[l]+=a.length}function q(a){(this[l]+=a.length,this[k]._maxPayload<1||this[l]<=this[k]._maxPayload)?this[n].push(a):(this[o]=RangeError("Max payload size exceeded"),this[o].code="WS_ERR_UNSUPPORTED_MESSAGE_LENGTH",this[o][h]=1009,this.removeListener("data",q),this.reset())}function r(a){(this[k]._inflate=null,this[o])?this[m](this[o]):(a[h]=1007,this[m](a))}b.exports=class{constructor(a,b,c){this._maxPayload=0|c,this._options=a||{},this._threshold=void 0!==this._options.threshold?this._options.threshold:1024,this._isServer=!!b,this._deflate=null,this._inflate=null,this.params=null,d||(d=new g(void 0!==this._options.concurrencyLimit?this._options.concurrencyLimit:10))}static get extensionName(){return"permessage-deflate"}offer(){let a={};return this._options.serverNoContextTakeover&&(a.server_no_context_takeover=!0),this._options.clientNoContextTakeover&&(a.client_no_context_takeover=!0),this._options.serverMaxWindowBits&&(a.server_max_window_bits=this._options.serverMaxWindowBits),this._options.clientMaxWindowBits?a.client_max_window_bits=this._options.clientMaxWindowBits:null==this._options.clientMaxWindowBits&&(a.client_max_window_bits=!0),a}accept(a){return a=this.normalizeParams(a),this.params=this._isServer?this.acceptAsServer(a):this.acceptAsClient(a),this.params}cleanup(){if(this._inflate&&(this._inflate.close(),this._inflate=null),this._deflate){let a=this._deflate[m];this._deflate.close(),this._deflate=null,a&&a(Error("The deflate stream was closed while data was being processed"))}}acceptAsServer(a){let b=this._options,c=a.find(a=>(!1!==b.serverNoContextTakeover||!a.server_no_context_takeover)&&(!a.server_max_window_bits||!1!==b.serverMaxWindowBits&&("number"!=typeof b.serverMaxWindowBits||!(b.serverMaxWindowBits>a.server_max_window_bits)))&&("number"!=typeof b.clientMaxWindowBits||!!a.client_max_window_bits));if(!c)throw Error("None of the extension offers can be accepted");return b.serverNoContextTakeover&&(c.server_no_context_takeover=!0),b.clientNoContextTakeover&&(c.client_no_context_takeover=!0),"number"==typeof b.serverMaxWindowBits&&(c.server_max_window_bits=b.serverMaxWindowBits),"number"==typeof b.clientMaxWindowBits?c.client_max_window_bits=b.clientMaxWindowBits:(!0===c.client_max_window_bits||!1===b.clientMaxWindowBits)&&delete c.client_max_window_bits,c}acceptAsClient(a){let b=a[0];if(!1===this._options.clientNoContextTakeover&&b.client_no_context_takeover)throw Error('Unexpected parameter "client_no_context_takeover"');if(b.client_max_window_bits){if(!1===this._options.clientMaxWindowBits||"number"==typeof this._options.clientMaxWindowBits&&b.client_max_window_bits>this._options.clientMaxWindowBits)throw Error('Unexpected or invalid parameter "client_max_window_bits"')}else"number"==typeof this._options.clientMaxWindowBits&&(b.client_max_window_bits=this._options.clientMaxWindowBits);return b}normalizeParams(a){return a.forEach(a=>{Object.keys(a).forEach(b=>{let c=a[b];if(c.length>1)throw Error(`Parameter "${b}" must have only a single value`);if(c=c[0],"client_max_window_bits"===b){if(!0!==c){let a=+c;if(!Number.isInteger(a)||a<8||a>15)throw TypeError(`Invalid value for parameter "${b}": ${c}`);c=a}else if(!this._isServer)throw TypeError(`Invalid value for parameter "${b}": ${c}`)}else if("server_max_window_bits"===b){let a=+c;if(!Number.isInteger(a)||a<8||a>15)throw TypeError(`Invalid value for parameter "${b}": ${c}`);c=a}else if("client_no_context_takeover"===b||"server_no_context_takeover"===b){if(!0!==c)throw TypeError(`Invalid value for parameter "${b}": ${c}`)}else throw Error(`Unknown parameter "${b}"`);a[b]=c})}),a}decompress(a,b,c){d.add(d=>{this._decompress(a,b,(a,b)=>{d(),c(a,b)})})}compress(a,b,c){d.add(d=>{this._compress(a,b,(a,b)=>{d(),c(a,b)})})}_decompress(a,b,c){let d=this._isServer?"client":"server";if(!this._inflate){let a=`${d}_max_window_bits`,b="number"!=typeof this.params[a]?e.Z_DEFAULT_WINDOWBITS:this.params[a];this._inflate=e.createInflateRaw({...this._options.zlibInflateOptions,windowBits:b}),this._inflate[k]=this,this._inflate[l]=0,this._inflate[n]=[],this._inflate.on("error",r),this._inflate.on("data",q)}this._inflate[m]=c,this._inflate.write(a),b&&this._inflate.write(j),this._inflate.flush(()=>{let a=this._inflate[o];if(a){this._inflate.close(),this._inflate=null,c(a);return}let e=f.concat(this._inflate[n],this._inflate[l]);this._inflate._readableState.endEmitted?(this._inflate.close(),this._inflate=null):(this._inflate[l]=0,this._inflate[n]=[],b&&this.params[`${d}_no_context_takeover`]&&this._inflate.reset()),c(null,e)})}_compress(a,b,c){let d=this._isServer?"server":"client";if(!this._deflate){let a=`${d}_max_window_bits`,b="number"!=typeof this.params[a]?e.Z_DEFAULT_WINDOWBITS:this.params[a];this._deflate=e.createDeflateRaw({...this._options.zlibDeflateOptions,windowBits:b}),this._deflate[l]=0,this._deflate[n]=[],this._deflate.on("data",p)}this._deflate[m]=c,this._deflate.write(a),this._deflate.flush(e.Z_SYNC_FLUSH,()=>{if(!this._deflate)return;let a=f.concat(this._deflate[n],this._deflate[l]);b&&(a=new i(a.buffer,a.byteOffset,a.length-4)),this._deflate[m]=null,this._deflate[l]=0,this._deflate[n]=[],b&&this.params[`${d}_no_context_takeover`]&&this._deflate.reset(),c(null,a)})}}},874,(a,b,c)=>{b.exports=a.x("buffer",()=>require("buffer"))},88686,(a,b,c)=>{"use strict";let{isUtf8:d}=a.r(874),{hasBlob:e}=a.r(17376);function f(a){let b=a.length,c=0;for(;c<b;)if((128&a[c])==0)c++;else if((224&a[c])==192){if(c+1===b||(192&a[c+1])!=128||(254&a[c])==192)return!1;c+=2}else if((240&a[c])==224){if(c+2>=b||(192&a[c+1])!=128||(192&a[c+2])!=128||224===a[c]&&(224&a[c+1])==128||237===a[c]&&(224&a[c+1])==160)return!1;c+=3}else{if((248&a[c])!=240||c+3>=b||(192&a[c+1])!=128||(192&a[c+2])!=128||(192&a[c+3])!=128||240===a[c]&&(240&a[c+1])==128||244===a[c]&&a[c+1]>143||a[c]>244)return!1;c+=4}return!0}if(b.exports={isBlob:function(a){return e&&"object"==typeof a&&"function"==typeof a.arrayBuffer&&"string"==typeof a.type&&"function"==typeof a.stream&&("Blob"===a[Symbol.toStringTag]||"File"===a[Symbol.toStringTag])},isValidStatusCode:function(a){return a>=1e3&&a<=1014&&1004!==a&&1005!==a&&1006!==a||a>=3e3&&a<=4999},isValidUTF8:f,tokenChars:[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,1,1,1,1,1,0,0,1,1,0,1,1,0,1,1,1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,0,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,1,0,1,0]},d)b.exports.isValidUTF8=function(a){return a.length<24?f(a):d(a)};else if(!process.env.WS_NO_UTF_8_VALIDATE)try{let a=(()=>{let a=Error("Cannot find module 'utf-8-validate'");throw a.code="MODULE_NOT_FOUND",a})();b.exports.isValidUTF8=function(b){return b.length<32?f(b):a(b)}}catch(a){}},64386,(a,b,c)=>{"use strict";let{Writable:d}=a.r(88947),e=a.r(10976),{BINARY_TYPES:f,EMPTY_BUFFER:g,kStatusCode:h,kWebSocket:i}=a.r(17376),{concat:j,toArrayBuffer:k,unmask:l}=a.r(29618),{isValidStatusCode:m,isValidUTF8:n}=a.r(88686),o=Buffer[Symbol.species];b.exports=class extends d{constructor(a={}){super(),this._allowSynchronousEvents=void 0===a.allowSynchronousEvents||a.allowSynchronousEvents,this._binaryType=a.binaryType||f[0],this._extensions=a.extensions||{},this._isServer=!!a.isServer,this._maxPayload=0|a.maxPayload,this._skipUTF8Validation=!!a.skipUTF8Validation,this[i]=void 0,this._bufferedBytes=0,this._buffers=[],this._compressed=!1,this._payloadLength=0,this._mask=void 0,this._fragmented=0,this._masked=!1,this._fin=!1,this._opcode=0,this._totalPayloadLength=0,this._messageLength=0,this._fragments=[],this._errored=!1,this._loop=!1,this._state=0}_write(a,b,c){if(8===this._opcode&&0==this._state)return c();this._bufferedBytes+=a.length,this._buffers.push(a),this.startLoop(c)}consume(a){if(this._bufferedBytes-=a,a===this._buffers[0].length)return this._buffers.shift();if(a<this._buffers[0].length){let b=this._buffers[0];return this._buffers[0]=new o(b.buffer,b.byteOffset+a,b.length-a),new o(b.buffer,b.byteOffset,a)}let b=Buffer.allocUnsafe(a);do{let c=this._buffers[0],d=b.length-a;a>=c.length?b.set(this._buffers.shift(),d):(b.set(new Uint8Array(c.buffer,c.byteOffset,a),d),this._buffers[0]=new o(c.buffer,c.byteOffset+a,c.length-a)),a-=c.length}while(a>0)return b}startLoop(a){this._loop=!0;do switch(this._state){case 0:this.getInfo(a);break;case 1:this.getPayloadLength16(a);break;case 2:this.getPayloadLength64(a);break;case 3:this.getMask();break;case 4:this.getData(a);break;case 5:case 6:this._loop=!1;return}while(this._loop)this._errored||a()}getInfo(a){if(this._bufferedBytes<2){this._loop=!1;return}let b=this.consume(2);if((48&b[0])!=0)return void a(this.createError(RangeError,"RSV2 and RSV3 must be clear",!0,1002,"WS_ERR_UNEXPECTED_RSV_2_3"));let c=(64&b[0])==64;if(c&&!this._extensions[e.extensionName])return void a(this.createError(RangeError,"RSV1 must be clear",!0,1002,"WS_ERR_UNEXPECTED_RSV_1"));if(this._fin=(128&b[0])==128,this._opcode=15&b[0],this._payloadLength=127&b[1],0===this._opcode){if(c)return void a(this.createError(RangeError,"RSV1 must be clear",!0,1002,"WS_ERR_UNEXPECTED_RSV_1"));if(!this._fragmented)return void a(this.createError(RangeError,"invalid opcode 0",!0,1002,"WS_ERR_INVALID_OPCODE"));this._opcode=this._fragmented}else if(1===this._opcode||2===this._opcode){if(this._fragmented)return void a(this.createError(RangeError,`invalid opcode ${this._opcode}`,!0,1002,"WS_ERR_INVALID_OPCODE"));this._compressed=c}else{if(!(this._opcode>7)||!(this._opcode<11))return void a(this.createError(RangeError,`invalid opcode ${this._opcode}`,!0,1002,"WS_ERR_INVALID_OPCODE"));if(!this._fin)return void a(this.createError(RangeError,"FIN must be set",!0,1002,"WS_ERR_EXPECTED_FIN"));if(c)return void a(this.createError(RangeError,"RSV1 must be clear",!0,1002,"WS_ERR_UNEXPECTED_RSV_1"));if(this._payloadLength>125||8===this._opcode&&1===this._payloadLength)return void a(this.createError(RangeError,`invalid payload length ${this._payloadLength}`,!0,1002,"WS_ERR_INVALID_CONTROL_PAYLOAD_LENGTH"))}if(this._fin||this._fragmented||(this._fragmented=this._opcode),this._masked=(128&b[1])==128,this._isServer){if(!this._masked)return void a(this.createError(RangeError,"MASK must be set",!0,1002,"WS_ERR_EXPECTED_MASK"))}else if(this._masked)return void a(this.createError(RangeError,"MASK must be clear",!0,1002,"WS_ERR_UNEXPECTED_MASK"));126===this._payloadLength?this._state=1:127===this._payloadLength?this._state=2:this.haveLength(a)}getPayloadLength16(a){if(this._bufferedBytes<2){this._loop=!1;return}this._payloadLength=this.consume(2).readUInt16BE(0),this.haveLength(a)}getPayloadLength64(a){if(this._bufferedBytes<8){this._loop=!1;return}let b=this.consume(8),c=b.readUInt32BE(0);c>2097151?a(this.createError(RangeError,"Unsupported WebSocket frame: payload length > 2^53 - 1",!1,1009,"WS_ERR_UNSUPPORTED_DATA_PAYLOAD_LENGTH")):(this._payloadLength=0x100000000*c+b.readUInt32BE(4),this.haveLength(a))}haveLength(a){this._payloadLength&&this._opcode<8&&(this._totalPayloadLength+=this._payloadLength,this._totalPayloadLength>this._maxPayload&&this._maxPayload>0)?a(this.createError(RangeError,"Max payload size exceeded",!1,1009,"WS_ERR_UNSUPPORTED_MESSAGE_LENGTH")):this._masked?this._state=3:this._state=4}getMask(){if(this._bufferedBytes<4){this._loop=!1;return}this._mask=this.consume(4),this._state=4}getData(a){let b=g;if(this._payloadLength){if(this._bufferedBytes<this._payloadLength){this._loop=!1;return}b=this.consume(this._payloadLength),this._masked&&(this._mask[0]|this._mask[1]|this._mask[2]|this._mask[3])!=0&&l(b,this._mask)}if(this._opcode>7)return void this.controlMessage(b,a);if(this._compressed){this._state=5,this.decompress(b,a);return}b.length&&(this._messageLength=this._totalPayloadLength,this._fragments.push(b)),this.dataMessage(a)}decompress(a,b){this._extensions[e.extensionName].decompress(a,this._fin,(a,c)=>{if(a)return b(a);if(c.length){if(this._messageLength+=c.length,this._messageLength>this._maxPayload&&this._maxPayload>0)return void b(this.createError(RangeError,"Max payload size exceeded",!1,1009,"WS_ERR_UNSUPPORTED_MESSAGE_LENGTH"));this._fragments.push(c)}this.dataMessage(b),0===this._state&&this.startLoop(b)})}dataMessage(a){if(!this._fin){this._state=0;return}let b=this._messageLength,c=this._fragments;if(this._totalPayloadLength=0,this._messageLength=0,this._fragmented=0,this._fragments=[],2===this._opcode){let d;d="nodebuffer"===this._binaryType?j(c,b):"arraybuffer"===this._binaryType?k(j(c,b)):"blob"===this._binaryType?new Blob(c):c,this._allowSynchronousEvents?(this.emit("message",d,!0),this._state=0):(this._state=6,setImmediate(()=>{this.emit("message",d,!0),this._state=0,this.startLoop(a)}))}else{let d=j(c,b);if(!this._skipUTF8Validation&&!n(d))return void a(this.createError(Error,"invalid UTF-8 sequence",!0,1007,"WS_ERR_INVALID_UTF8"));5===this._state||this._allowSynchronousEvents?(this.emit("message",d,!1),this._state=0):(this._state=6,setImmediate(()=>{this.emit("message",d,!1),this._state=0,this.startLoop(a)}))}}controlMessage(a,b){if(8===this._opcode){if(0===a.length)this._loop=!1,this.emit("conclude",1005,g),this.end();else{let c=a.readUInt16BE(0);if(!m(c))return void b(this.createError(RangeError,`invalid status code ${c}`,!0,1002,"WS_ERR_INVALID_CLOSE_CODE"));let d=new o(a.buffer,a.byteOffset+2,a.length-2);if(!this._skipUTF8Validation&&!n(d))return void b(this.createError(Error,"invalid UTF-8 sequence",!0,1007,"WS_ERR_INVALID_UTF8"));this._loop=!1,this.emit("conclude",c,d),this.end()}this._state=0;return}this._allowSynchronousEvents?(this.emit(9===this._opcode?"ping":"pong",a),this._state=0):(this._state=6,setImmediate(()=>{this.emit(9===this._opcode?"ping":"pong",a),this._state=0,this.startLoop(b)}))}createError(a,b,c,d,e){this._loop=!1,this._errored=!0;let f=new a(c?`Invalid WebSocket frame: ${b}`:b);return Error.captureStackTrace(f,this.createError),f.code=e,f[h]=d,f}}},71387,(a,b,c)=>{"use strict";let d,{Duplex:e}=a.r(88947),{randomFillSync:f}=a.r(54799),g=a.r(10976),{EMPTY_BUFFER:h,kWebSocket:i,NOOP:j}=a.r(17376),{isBlob:k,isValidStatusCode:l}=a.r(88686),{mask:m,toBuffer:n}=a.r(29618),o=Symbol("kByteLength"),p=Buffer.alloc(4),q=8192;class r{constructor(a,b,c){this._extensions=b||{},c&&(this._generateMask=c,this._maskBuffer=Buffer.alloc(4)),this._socket=a,this._firstFragment=!0,this._compress=!1,this._bufferedBytes=0,this._queue=[],this._state=0,this.onerror=j,this[i]=void 0}static frame(a,b){let c,e,g=!1,h=2,i=!1;b.mask&&(c=b.maskBuffer||p,b.generateMask?b.generateMask(c):(8192===q&&(void 0===d&&(d=Buffer.alloc(8192)),f(d,0,8192),q=0),c[0]=d[q++],c[1]=d[q++],c[2]=d[q++],c[3]=d[q++]),i=(c[0]|c[1]|c[2]|c[3])==0,h=6),"string"==typeof a?e=(!b.mask||i)&&void 0!==b[o]?b[o]:(a=Buffer.from(a)).length:(e=a.length,g=b.mask&&b.readOnly&&!i);let j=e;e>=65536?(h+=8,j=127):e>125&&(h+=2,j=126);let k=Buffer.allocUnsafe(g?e+h:h);return(k[0]=b.fin?128|b.opcode:b.opcode,b.rsv1&&(k[0]|=64),k[1]=j,126===j?k.writeUInt16BE(e,2):127===j&&(k[2]=k[3]=0,k.writeUIntBE(e,4,6)),b.mask)?(k[1]|=128,k[h-4]=c[0],k[h-3]=c[1],k[h-2]=c[2],k[h-1]=c[3],i)?[k,a]:g?(m(a,c,k,h,e),[k]):(m(a,c,a,0,e),[k,a]):[k,a]}close(a,b,c,d){let e;if(void 0===a)e=h;else if("number"==typeof a&&l(a))if(void 0!==b&&b.length){let c=Buffer.byteLength(b);if(c>123)throw RangeError("The message must not be greater than 123 bytes");(e=Buffer.allocUnsafe(2+c)).writeUInt16BE(a,0),"string"==typeof b?e.write(b,2):e.set(b,2)}else(e=Buffer.allocUnsafe(2)).writeUInt16BE(a,0);else throw TypeError("First argument must be a valid error code number");let f={[o]:e.length,fin:!0,generateMask:this._generateMask,mask:c,maskBuffer:this._maskBuffer,opcode:8,readOnly:!1,rsv1:!1};0!==this._state?this.enqueue([this.dispatch,e,!1,f,d]):this.sendFrame(r.frame(e,f),d)}ping(a,b,c){let d,e;if("string"==typeof a?(d=Buffer.byteLength(a),e=!1):k(a)?(d=a.size,e=!1):(d=(a=n(a)).length,e=n.readOnly),d>125)throw RangeError("The data size must not be greater than 125 bytes");let f={[o]:d,fin:!0,generateMask:this._generateMask,mask:b,maskBuffer:this._maskBuffer,opcode:9,readOnly:e,rsv1:!1};k(a)?0!==this._state?this.enqueue([this.getBlobData,a,!1,f,c]):this.getBlobData(a,!1,f,c):0!==this._state?this.enqueue([this.dispatch,a,!1,f,c]):this.sendFrame(r.frame(a,f),c)}pong(a,b,c){let d,e;if("string"==typeof a?(d=Buffer.byteLength(a),e=!1):k(a)?(d=a.size,e=!1):(d=(a=n(a)).length,e=n.readOnly),d>125)throw RangeError("The data size must not be greater than 125 bytes");let f={[o]:d,fin:!0,generateMask:this._generateMask,mask:b,maskBuffer:this._maskBuffer,opcode:10,readOnly:e,rsv1:!1};k(a)?0!==this._state?this.enqueue([this.getBlobData,a,!1,f,c]):this.getBlobData(a,!1,f,c):0!==this._state?this.enqueue([this.dispatch,a,!1,f,c]):this.sendFrame(r.frame(a,f),c)}send(a,b,c){let d,e,f=this._extensions[g.extensionName],h=b.binary?2:1,i=b.compress;"string"==typeof a?(d=Buffer.byteLength(a),e=!1):k(a)?(d=a.size,e=!1):(d=(a=n(a)).length,e=n.readOnly),this._firstFragment?(this._firstFragment=!1,i&&f&&f.params[f._isServer?"server_no_context_takeover":"client_no_context_takeover"]&&(i=d>=f._threshold),this._compress=i):(i=!1,h=0),b.fin&&(this._firstFragment=!0);let j={[o]:d,fin:b.fin,generateMask:this._generateMask,mask:b.mask,maskBuffer:this._maskBuffer,opcode:h,readOnly:e,rsv1:i};k(a)?0!==this._state?this.enqueue([this.getBlobData,a,this._compress,j,c]):this.getBlobData(a,this._compress,j,c):0!==this._state?this.enqueue([this.dispatch,a,this._compress,j,c]):this.dispatch(a,this._compress,j,c)}getBlobData(a,b,c,d){this._bufferedBytes+=c[o],this._state=2,a.arrayBuffer().then(a=>{if(this._socket.destroyed){let a=Error("The socket was closed while the blob was being read");process.nextTick(s,this,a,d);return}this._bufferedBytes-=c[o];let e=n(a);b?this.dispatch(e,b,c,d):(this._state=0,this.sendFrame(r.frame(e,c),d),this.dequeue())}).catch(a=>{process.nextTick(u,this,a,d)})}dispatch(a,b,c,d){if(!b)return void this.sendFrame(r.frame(a,c),d);let e=this._extensions[g.extensionName];this._bufferedBytes+=c[o],this._state=1,e.compress(a,c.fin,(a,b)=>{this._socket.destroyed?s(this,Error("The socket was closed while data was being compressed"),d):(this._bufferedBytes-=c[o],this._state=0,c.readOnly=!1,this.sendFrame(r.frame(b,c),d),this.dequeue())})}dequeue(){for(;0===this._state&&this._queue.length;){let a=this._queue.shift();this._bufferedBytes-=a[3][o],Reflect.apply(a[0],this,a.slice(1))}}enqueue(a){this._bufferedBytes+=a[3][o],this._queue.push(a)}sendFrame(a,b){2===a.length?(this._socket.cork(),this._socket.write(a[0]),this._socket.write(a[1],b),this._socket.uncork()):this._socket.write(a[0],b)}}function s(a,b,c){"function"==typeof c&&c(b);for(let c=0;c<a._queue.length;c++){let d=a._queue[c],e=d[d.length-1];"function"==typeof e&&e(b)}}function u(a,b,c){s(a,b,c),a.onerror(b)}b.exports=r},25936,(a,b,c)=>{"use strict";let{kForOnEventAttribute:d,kListener:e}=a.r(17376),f=Symbol("kCode"),g=Symbol("kData"),h=Symbol("kError"),i=Symbol("kMessage"),j=Symbol("kReason"),k=Symbol("kTarget"),l=Symbol("kType"),m=Symbol("kWasClean");class n{constructor(a){this[k]=null,this[l]=a}get target(){return this[k]}get type(){return this[l]}}Object.defineProperty(n.prototype,"target",{enumerable:!0}),Object.defineProperty(n.prototype,"type",{enumerable:!0});class o extends n{constructor(a,b={}){super(a),this[f]=void 0===b.code?0:b.code,this[j]=void 0===b.reason?"":b.reason,this[m]=void 0!==b.wasClean&&b.wasClean}get code(){return this[f]}get reason(){return this[j]}get wasClean(){return this[m]}}Object.defineProperty(o.prototype,"code",{enumerable:!0}),Object.defineProperty(o.prototype,"reason",{enumerable:!0}),Object.defineProperty(o.prototype,"wasClean",{enumerable:!0});class p extends n{constructor(a,b={}){super(a),this[h]=void 0===b.error?null:b.error,this[i]=void 0===b.message?"":b.message}get error(){return this[h]}get message(){return this[i]}}Object.defineProperty(p.prototype,"error",{enumerable:!0}),Object.defineProperty(p.prototype,"message",{enumerable:!0});class q extends n{constructor(a,b={}){super(a),this[g]=void 0===b.data?null:b.data}get data(){return this[g]}}function r(a,b,c){"object"==typeof a&&a.handleEvent?a.handleEvent.call(a,c):a.call(b,c)}Object.defineProperty(q.prototype,"data",{enumerable:!0}),b.exports={CloseEvent:o,ErrorEvent:p,Event:n,EventTarget:{addEventListener(a,b,c={}){let f;for(let f of this.listeners(a))if(!c[d]&&f[e]===b&&!f[d])return;if("message"===a)f=function(a,c){let d=new q("message",{data:c?a:a.toString()});d[k]=this,r(b,this,d)};else if("close"===a)f=function(a,c){let d=new o("close",{code:a,reason:c.toString(),wasClean:this._closeFrameReceived&&this._closeFrameSent});d[k]=this,r(b,this,d)};else if("error"===a)f=function(a){let c=new p("error",{error:a,message:a.message});c[k]=this,r(b,this,c)};else{if("open"!==a)return;f=function(){let a=new n("open");a[k]=this,r(b,this,a)}}f[d]=!!c[d],f[e]=b,c.once?this.once(a,f):this.on(a,f)},removeEventListener(a,b){for(let c of this.listeners(a))if(c[e]===b&&!c[d]){this.removeListener(a,c);break}}},MessageEvent:q}},16193,(a,b,c)=>{"use strict";let{tokenChars:d}=a.r(88686);function e(a,b,c){void 0===a[b]?a[b]=[c]:a[b].push(c)}b.exports={format:function(a){return Object.keys(a).map(b=>{let c=a[b];return Array.isArray(c)||(c=[c]),c.map(a=>[b].concat(Object.keys(a).map(b=>{let c=a[b];return Array.isArray(c)||(c=[c]),c.map(a=>!0===a?b:`${b}=${a}`).join("; ")})).join("; ")).join(", ")}).join(", ")},parse:function(a){let b,c,f=Object.create(null),g=Object.create(null),h=!1,i=!1,j=!1,k=-1,l=-1,m=-1,n=0;for(;n<a.length;n++)if(l=a.charCodeAt(n),void 0===b)if(-1===m&&1===d[l])-1===k&&(k=n);else if(0!==n&&(32===l||9===l))-1===m&&-1!==k&&(m=n);else if(59===l||44===l){if(-1===k)throw SyntaxError(`Unexpected character at index ${n}`);-1===m&&(m=n);let c=a.slice(k,m);44===l?(e(f,c,g),g=Object.create(null)):b=c,k=m=-1}else throw SyntaxError(`Unexpected character at index ${n}`);else if(void 0===c)if(-1===m&&1===d[l])-1===k&&(k=n);else if(32===l||9===l)-1===m&&-1!==k&&(m=n);else if(59===l||44===l){if(-1===k)throw SyntaxError(`Unexpected character at index ${n}`);-1===m&&(m=n),e(g,a.slice(k,m),!0),44===l&&(e(f,b,g),g=Object.create(null),b=void 0),k=m=-1}else if(61===l&&-1!==k&&-1===m)c=a.slice(k,n),k=m=-1;else throw SyntaxError(`Unexpected character at index ${n}`);else if(i){if(1!==d[l])throw SyntaxError(`Unexpected character at index ${n}`);-1===k?k=n:h||(h=!0),i=!1}else if(j)if(1===d[l])-1===k&&(k=n);else if(34===l&&-1!==k)j=!1,m=n;else if(92===l)i=!0;else throw SyntaxError(`Unexpected character at index ${n}`);else if(34===l&&61===a.charCodeAt(n-1))j=!0;else if(-1===m&&1===d[l])-1===k&&(k=n);else if(-1!==k&&(32===l||9===l))-1===m&&(m=n);else if(59===l||44===l){if(-1===k)throw SyntaxError(`Unexpected character at index ${n}`);-1===m&&(m=n);let d=a.slice(k,m);h&&(d=d.replace(/\\/g,""),h=!1),e(g,c,d),44===l&&(e(f,b,g),g=Object.create(null),b=void 0),c=void 0,k=m=-1}else throw SyntaxError(`Unexpected character at index ${n}`);if(-1===k||j||32===l||9===l)throw SyntaxError("Unexpected end of input");-1===m&&(m=n);let o=a.slice(k,m);return void 0===b?e(f,o,g):(void 0===c?e(g,o,!0):h?e(g,c,o.replace(/\\/g,"")):e(g,c,o),e(f,b,g)),f}}},36705,(a,b,c)=>{"use strict";let d=a.r(27699),e=a.r(24836),f=a.r(21517),g=a.r(4446),h=a.r(55004),{randomBytes:i,createHash:j}=a.r(54799),{Duplex:k,Readable:l}=a.r(88947),{URL:m}=a.r(92509),n=a.r(10976),o=a.r(64386),p=a.r(71387),{isBlob:q}=a.r(88686),{BINARY_TYPES:r,EMPTY_BUFFER:s,GUID:u,kForOnEventAttribute:v,kListener:w,kStatusCode:x,kWebSocket:y,NOOP:z}=a.r(17376),{EventTarget:{addEventListener:A,removeEventListener:B}}=a.r(25936),{format:C,parse:D}=a.r(16193),{toBuffer:E}=a.r(29618),F=Symbol("kAborted"),G=[8,13],H=["CONNECTING","OPEN","CLOSING","CLOSED"],I=/^[!#$%&'*+\-.0-9A-Z^_`|a-z~]+$/;class J extends d{constructor(a,b,c){super(),this._binaryType=r[0],this._closeCode=1006,this._closeFrameReceived=!1,this._closeFrameSent=!1,this._closeMessage=s,this._closeTimer=null,this._errorEmitted=!1,this._extensions={},this._paused=!1,this._protocol="",this._readyState=J.CONNECTING,this._receiver=null,this._sender=null,this._socket=null,null!==a?(this._bufferedAmount=0,this._isServer=!1,this._redirects=0,void 0===b?b=[]:Array.isArray(b)||("object"==typeof b&&null!==b?(c=b,b=[]):b=[b]),function a(b,c,d,g){let h,k,l,o,p={allowSynchronousEvents:!0,autoPong:!0,protocolVersion:G[1],maxPayload:0x6400000,skipUTF8Validation:!1,perMessageDeflate:!0,followRedirects:!1,maxRedirects:10,...g,socketPath:void 0,hostname:void 0,protocol:void 0,timeout:void 0,method:"GET",host:void 0,path:void 0,port:void 0};if(b._autoPong=p.autoPong,!G.includes(p.protocolVersion))throw RangeError(`Unsupported protocol version: ${p.protocolVersion} (supported versions: ${G.join(", ")})`);if(c instanceof m)h=c;else try{h=new m(c)}catch(a){throw SyntaxError(`Invalid URL: ${c}`)}"http:"===h.protocol?h.protocol="ws:":"https:"===h.protocol&&(h.protocol="wss:"),b._url=h.href;let q="wss:"===h.protocol,r="ws+unix:"===h.protocol;if("ws:"===h.protocol||q||r?r&&!h.pathname?k="The URL's pathname is empty":h.hash&&(k="The URL contains a fragment identifier"):k='The URL\'s protocol must be one of "ws:", "wss:", "http:", "https:", or "ws+unix:"',k){let a=SyntaxError(k);if(0!==b._redirects)return void K(b,a);throw a}let s=q?443:80,v=i(16).toString("base64"),w=q?e.request:f.request,x=new Set;if(p.createConnection=p.createConnection||(q?M:L),p.defaultPort=p.defaultPort||s,p.port=h.port||s,p.host=h.hostname.startsWith("[")?h.hostname.slice(1,-1):h.hostname,p.headers={...p.headers,"Sec-WebSocket-Version":p.protocolVersion,"Sec-WebSocket-Key":v,Connection:"Upgrade",Upgrade:"websocket"},p.path=h.pathname+h.search,p.timeout=p.handshakeTimeout,p.perMessageDeflate&&(l=new n(!0!==p.perMessageDeflate?p.perMessageDeflate:{},!1,p.maxPayload),p.headers["Sec-WebSocket-Extensions"]=C({[n.extensionName]:l.offer()})),d.length){for(let a of d){if("string"!=typeof a||!I.test(a)||x.has(a))throw SyntaxError("An invalid or duplicated subprotocol was specified");x.add(a)}p.headers["Sec-WebSocket-Protocol"]=d.join(",")}if(p.origin&&(p.protocolVersion<13?p.headers["Sec-WebSocket-Origin"]=p.origin:p.headers.Origin=p.origin),(h.username||h.password)&&(p.auth=`${h.username}:${h.password}`),r){let a=p.path.split(":");p.socketPath=a[0],p.path=a[1]}if(p.followRedirects){if(0===b._redirects){b._originalIpc=r,b._originalSecure=q,b._originalHostOrSocketPath=r?p.socketPath:h.host;let a=g&&g.headers;if(g={...g,headers:{}},a)for(let[b,c]of Object.entries(a))g.headers[b.toLowerCase()]=c}else if(0===b.listenerCount("redirect")){let a=r?!!b._originalIpc&&p.socketPath===b._originalHostOrSocketPath:!b._originalIpc&&h.host===b._originalHostOrSocketPath;a&&(!b._originalSecure||q)||(delete p.headers.authorization,delete p.headers.cookie,a||delete p.headers.host,p.auth=void 0)}p.auth&&!g.headers.authorization&&(g.headers.authorization="Basic "+Buffer.from(p.auth).toString("base64")),o=b._req=w(p),b._redirects&&b.emit("redirect",b.url,o)}else o=b._req=w(p);p.timeout&&o.on("timeout",()=>{N(b,o,"Opening handshake has timed out")}),o.on("error",a=>{null===o||o[F]||(o=b._req=null,K(b,a))}),o.on("response",e=>{let f=e.headers.location,h=e.statusCode;if(f&&p.followRedirects&&h>=300&&h<400){let e;if(++b._redirects>p.maxRedirects)return void N(b,o,"Maximum redirects exceeded");o.abort();try{e=new m(f,c)}catch(a){K(b,SyntaxError(`Invalid URL: ${f}`));return}a(b,e,d,g)}else b.emit("unexpected-response",o,e)||N(b,o,`Unexpected server response: ${e.statusCode}`)}),o.on("upgrade",(a,c,d)=>{let e;if(b.emit("upgrade",a),b.readyState!==J.CONNECTING)return;o=b._req=null;let f=a.headers.upgrade;if(void 0===f||"websocket"!==f.toLowerCase())return void N(b,c,"Invalid Upgrade header");let g=j("sha1").update(v+u).digest("base64");if(a.headers["sec-websocket-accept"]!==g)return void N(b,c,"Invalid Sec-WebSocket-Accept header");let h=a.headers["sec-websocket-protocol"];if(void 0!==h?x.size?x.has(h)||(e="Server sent an invalid subprotocol"):e="Server sent a subprotocol but none was requested":x.size&&(e="Server sent no subprotocol"),e)return void N(b,c,e);h&&(b._protocol=h);let i=a.headers["sec-websocket-extensions"];if(void 0!==i){let a;if(!l)return void N(b,c,"Server sent a Sec-WebSocket-Extensions header but no extension was requested");try{a=D(i)}catch(a){N(b,c,"Invalid Sec-WebSocket-Extensions header");return}let d=Object.keys(a);if(1!==d.length||d[0]!==n.extensionName)return void N(b,c,"Server indicated an extension that was not requested");try{l.accept(a[n.extensionName])}catch(a){N(b,c,"Invalid Sec-WebSocket-Extensions header");return}b._extensions[n.extensionName]=l}b.setSocket(c,d,{allowSynchronousEvents:p.allowSynchronousEvents,generateMask:p.generateMask,maxPayload:p.maxPayload,skipUTF8Validation:p.skipUTF8Validation})}),p.finishRequest?p.finishRequest(o,b):o.end()}(this,a,b,c)):(this._autoPong=c.autoPong,this._isServer=!0)}get binaryType(){return this._binaryType}set binaryType(a){r.includes(a)&&(this._binaryType=a,this._receiver&&(this._receiver._binaryType=a))}get bufferedAmount(){return this._socket?this._socket._writableState.length+this._sender._bufferedBytes:this._bufferedAmount}get extensions(){return Object.keys(this._extensions).join()}get isPaused(){return this._paused}get onclose(){return null}get onerror(){return null}get onopen(){return null}get onmessage(){return null}get protocol(){return this._protocol}get readyState(){return this._readyState}get url(){return this._url}setSocket(a,b,c){let d=new o({allowSynchronousEvents:c.allowSynchronousEvents,binaryType:this.binaryType,extensions:this._extensions,isServer:this._isServer,maxPayload:c.maxPayload,skipUTF8Validation:c.skipUTF8Validation}),e=new p(a,this._extensions,c.generateMask);this._receiver=d,this._sender=e,this._socket=a,d[y]=this,e[y]=this,a[y]=this,d.on("conclude",P),d.on("drain",Q),d.on("error",R),d.on("message",T),d.on("ping",U),d.on("pong",V),e.onerror=X,a.setTimeout&&a.setTimeout(0),a.setNoDelay&&a.setNoDelay(),b.length>0&&a.unshift(b),a.on("close",Z),a.on("data",$),a.on("end",_),a.on("error",aa),this._readyState=J.OPEN,this.emit("open")}emitClose(){if(!this._socket){this._readyState=J.CLOSED,this.emit("close",this._closeCode,this._closeMessage);return}this._extensions[n.extensionName]&&this._extensions[n.extensionName].cleanup(),this._receiver.removeAllListeners(),this._readyState=J.CLOSED,this.emit("close",this._closeCode,this._closeMessage)}close(a,b){if(this.readyState!==J.CLOSED){if(this.readyState===J.CONNECTING)return void N(this,this._req,"WebSocket was closed before the connection was established");if(this.readyState===J.CLOSING){this._closeFrameSent&&(this._closeFrameReceived||this._receiver._writableState.errorEmitted)&&this._socket.end();return}this._readyState=J.CLOSING,this._sender.close(a,b,!this._isServer,a=>{!a&&(this._closeFrameSent=!0,(this._closeFrameReceived||this._receiver._writableState.errorEmitted)&&this._socket.end())}),Y(this)}}pause(){this.readyState!==J.CONNECTING&&this.readyState!==J.CLOSED&&(this._paused=!0,this._socket.pause())}ping(a,b,c){if(this.readyState===J.CONNECTING)throw Error("WebSocket is not open: readyState 0 (CONNECTING)");("function"==typeof a?(c=a,a=b=void 0):"function"==typeof b&&(c=b,b=void 0),"number"==typeof a&&(a=a.toString()),this.readyState!==J.OPEN)?O(this,a,c):(void 0===b&&(b=!this._isServer),this._sender.ping(a||s,b,c))}pong(a,b,c){if(this.readyState===J.CONNECTING)throw Error("WebSocket is not open: readyState 0 (CONNECTING)");("function"==typeof a?(c=a,a=b=void 0):"function"==typeof b&&(c=b,b=void 0),"number"==typeof a&&(a=a.toString()),this.readyState!==J.OPEN)?O(this,a,c):(void 0===b&&(b=!this._isServer),this._sender.pong(a||s,b,c))}resume(){this.readyState!==J.CONNECTING&&this.readyState!==J.CLOSED&&(this._paused=!1,this._receiver._writableState.needDrain||this._socket.resume())}send(a,b,c){if(this.readyState===J.CONNECTING)throw Error("WebSocket is not open: readyState 0 (CONNECTING)");if("function"==typeof b&&(c=b,b={}),"number"==typeof a&&(a=a.toString()),this.readyState!==J.OPEN)return void O(this,a,c);let d={binary:"string"!=typeof a,mask:!this._isServer,compress:!0,fin:!0,...b};this._extensions[n.extensionName]||(d.compress=!1),this._sender.send(a||s,d,c)}terminate(){if(this.readyState!==J.CLOSED){if(this.readyState===J.CONNECTING)return void N(this,this._req,"WebSocket was closed before the connection was established");this._socket&&(this._readyState=J.CLOSING,this._socket.destroy())}}}function K(a,b){a._readyState=J.CLOSING,a._errorEmitted=!0,a.emit("error",b),a.emitClose()}function L(a){return a.path=a.socketPath,g.connect(a)}function M(a){return a.path=void 0,a.servername||""===a.servername||(a.servername=g.isIP(a.host)?"":a.host),h.connect(a)}function N(a,b,c){a._readyState=J.CLOSING;let d=Error(c);Error.captureStackTrace(d,N),b.setHeader?(b[F]=!0,b.abort(),b.socket&&!b.socket.destroyed&&b.socket.destroy(),process.nextTick(K,a,d)):(b.destroy(d),b.once("error",a.emit.bind(a,"error")),b.once("close",a.emitClose.bind(a)))}function O(a,b,c){if(b){let c=q(b)?b.size:E(b).length;a._socket?a._sender._bufferedBytes+=c:a._bufferedAmount+=c}if(c){let b=Error(`WebSocket is not open: readyState ${a.readyState} (${H[a.readyState]})`);process.nextTick(c,b)}}function P(a,b){let c=this[y];c._closeFrameReceived=!0,c._closeMessage=b,c._closeCode=a,void 0!==c._socket[y]&&(c._socket.removeListener("data",$),process.nextTick(W,c._socket),1005===a?c.close():c.close(a,b))}function Q(){let a=this[y];a.isPaused||a._socket.resume()}function R(a){let b=this[y];void 0!==b._socket[y]&&(b._socket.removeListener("data",$),process.nextTick(W,b._socket),b.close(a[x])),b._errorEmitted||(b._errorEmitted=!0,b.emit("error",a))}function S(){this[y].emitClose()}function T(a,b){this[y].emit("message",a,b)}function U(a){let b=this[y];b._autoPong&&b.pong(a,!this._isServer,z),b.emit("ping",a)}function V(a){this[y].emit("pong",a)}function W(a){a.resume()}function X(a){let b=this[y];b.readyState!==J.CLOSED&&(b.readyState===J.OPEN&&(b._readyState=J.CLOSING,Y(b)),this._socket.end(),b._errorEmitted||(b._errorEmitted=!0,b.emit("error",a)))}function Y(a){a._closeTimer=setTimeout(a._socket.destroy.bind(a._socket),3e4)}function Z(){let a,b=this[y];this.removeListener("close",Z),this.removeListener("data",$),this.removeListener("end",_),b._readyState=J.CLOSING,this._readableState.endEmitted||b._closeFrameReceived||b._receiver._writableState.errorEmitted||null===(a=b._socket.read())||b._receiver.write(a),b._receiver.end(),this[y]=void 0,clearTimeout(b._closeTimer),b._receiver._writableState.finished||b._receiver._writableState.errorEmitted?b.emitClose():(b._receiver.on("error",S),b._receiver.on("finish",S))}function $(a){this[y]._receiver.write(a)||this.pause()}function _(){let a=this[y];a._readyState=J.CLOSING,a._receiver.end(),this.end()}function aa(){let a=this[y];this.removeListener("error",aa),this.on("error",z),a&&(a._readyState=J.CLOSING,this.destroy())}Object.defineProperty(J,"CONNECTING",{enumerable:!0,value:H.indexOf("CONNECTING")}),Object.defineProperty(J.prototype,"CONNECTING",{enumerable:!0,value:H.indexOf("CONNECTING")}),Object.defineProperty(J,"OPEN",{enumerable:!0,value:H.indexOf("OPEN")}),Object.defineProperty(J.prototype,"OPEN",{enumerable:!0,value:H.indexOf("OPEN")}),Object.defineProperty(J,"CLOSING",{enumerable:!0,value:H.indexOf("CLOSING")}),Object.defineProperty(J.prototype,"CLOSING",{enumerable:!0,value:H.indexOf("CLOSING")}),Object.defineProperty(J,"CLOSED",{enumerable:!0,value:H.indexOf("CLOSED")}),Object.defineProperty(J.prototype,"CLOSED",{enumerable:!0,value:H.indexOf("CLOSED")}),["binaryType","bufferedAmount","extensions","isPaused","protocol","readyState","url"].forEach(a=>{Object.defineProperty(J.prototype,a,{enumerable:!0})}),["open","error","close","message"].forEach(a=>{Object.defineProperty(J.prototype,`on${a}`,{enumerable:!0,get(){for(let b of this.listeners(a))if(b[v])return b[w];return null},set(b){for(let b of this.listeners(a))if(b[v]){this.removeListener(a,b);break}"function"==typeof b&&this.addEventListener(a,b,{[v]:!0})}})}),J.prototype.addEventListener=A,J.prototype.removeEventListener=B,b.exports=J},57515,(a,b,c)=>{"use strict";a.r(36705);let{Duplex:d}=a.r(88947);function e(a){a.emit("close")}function f(){!this.destroyed&&this._writableState.finished&&this.destroy()}function g(a){this.removeListener("error",g),this.destroy(),0===this.listenerCount("error")&&this.emit("error",a)}b.exports=function(a,b){let c=!0,h=new d({...b,autoDestroy:!1,emitClose:!1,objectMode:!1,writableObjectMode:!1});return a.on("message",function(b,c){let d=!c&&h._readableState.objectMode?b.toString():b;h.push(d)||a.pause()}),a.once("error",function(a){h.destroyed||(c=!1,h.destroy(a))}),a.once("close",function(){h.destroyed||h.push(null)}),h._destroy=function(b,d){if(a.readyState===a.CLOSED){d(b),process.nextTick(e,h);return}let f=!1;a.once("error",function(a){f=!0,d(a)}),a.once("close",function(){f||d(b),process.nextTick(e,h)}),c&&a.terminate()},h._final=function(b){a.readyState===a.CONNECTING?a.once("open",function(){h._final(b)}):null!==a._socket&&(a._socket._writableState.finished?(b(),h._readableState.endEmitted&&h.destroy()):(a._socket.once("finish",function(){b()}),a.close()))},h._read=function(){a.isPaused&&a.resume()},h._write=function(b,c,d){a.readyState===a.CONNECTING?a.once("open",function(){h._write(b,c,d)}):a.send(b,d)},h.on("end",f),h.on("error",g),h}},62219,(a,b,c)=>{"use strict";let{tokenChars:d}=a.r(88686);b.exports={parse:function(a){let b=new Set,c=-1,e=-1,f=0;for(;f<a.length;f++){let g=a.charCodeAt(f);if(-1===e&&1===d[g])-1===c&&(c=f);else if(0!==f&&(32===g||9===g))-1===e&&-1!==c&&(e=f);else if(44===g){if(-1===c)throw SyntaxError(`Unexpected character at index ${f}`);-1===e&&(e=f);let d=a.slice(c,e);if(b.has(d))throw SyntaxError(`The "${d}" subprotocol is duplicated`);b.add(d),c=e=-1}else throw SyntaxError(`Unexpected character at index ${f}`)}if(-1===c||-1!==e)throw SyntaxError("Unexpected end of input");let g=a.slice(c,f);if(b.has(g))throw SyntaxError(`The "${g}" subprotocol is duplicated`);return b.add(g),b}}},67691,(a,b,c)=>{"use strict";let d=a.r(27699),e=a.r(21517),{Duplex:f}=a.r(88947),{createHash:g}=a.r(54799),h=a.r(16193),i=a.r(10976),j=a.r(62219),k=a.r(36705),{GUID:l,kWebSocket:m}=a.r(17376),n=/^[+/0-9A-Za-z]{22}==$/;function o(a){a._state=2,a.emit("close")}function p(){this.destroy()}function q(a,b,c,d){c=c||e.STATUS_CODES[b],d={Connection:"close","Content-Type":"text/html","Content-Length":Buffer.byteLength(c),...d},a.once("finish",a.destroy),a.end(`HTTP/1.1 ${b} ${e.STATUS_CODES[b]}\r
|
|
32
|
+
`+Object.keys(d).map(a=>`${a}: ${d[a]}`).join("\r\n")+"\r\n\r\n"+c)}function r(a,b,c,d,e,f){if(a.listenerCount("wsClientError")){let d=Error(e);Error.captureStackTrace(d,r),a.emit("wsClientError",d,c,b)}else q(c,d,e,f)}b.exports=class extends d{constructor(a,b){if(super(),null==(a={allowSynchronousEvents:!0,autoPong:!0,maxPayload:0x6400000,skipUTF8Validation:!1,perMessageDeflate:!1,handleProtocols:null,clientTracking:!0,verifyClient:null,noServer:!1,backlog:null,server:null,host:null,path:null,port:null,WebSocket:k,...a}).port&&!a.server&&!a.noServer||null!=a.port&&(a.server||a.noServer)||a.server&&a.noServer)throw TypeError('One and only one of the "port", "server", or "noServer" options must be specified');if(null!=a.port?(this._server=e.createServer((a,b)=>{let c=e.STATUS_CODES[426];b.writeHead(426,{"Content-Length":c.length,"Content-Type":"text/plain"}),b.end(c)}),this._server.listen(a.port,a.host,a.backlog,b)):a.server&&(this._server=a.server),this._server){const a=this.emit.bind(this,"connection");this._removeListeners=function(a,b){for(let c of Object.keys(b))a.on(c,b[c]);return function(){for(let c of Object.keys(b))a.removeListener(c,b[c])}}(this._server,{listening:this.emit.bind(this,"listening"),error:this.emit.bind(this,"error"),upgrade:(b,c,d)=>{this.handleUpgrade(b,c,d,a)}})}!0===a.perMessageDeflate&&(a.perMessageDeflate={}),a.clientTracking&&(this.clients=new Set,this._shouldEmitClose=!1),this.options=a,this._state=0}address(){if(this.options.noServer)throw Error('The server is operating in "noServer" mode');return this._server?this._server.address():null}close(a){if(2===this._state){a&&this.once("close",()=>{a(Error("The server is not running"))}),process.nextTick(o,this);return}if(a&&this.once("close",a),1!==this._state)if(this._state=1,this.options.noServer||this.options.server)this._server&&(this._removeListeners(),this._removeListeners=this._server=null),this.clients&&this.clients.size?this._shouldEmitClose=!0:process.nextTick(o,this);else{let a=this._server;this._removeListeners(),this._removeListeners=this._server=null,a.close(()=>{o(this)})}}shouldHandle(a){if(this.options.path){let b=a.url.indexOf("?");if((-1!==b?a.url.slice(0,b):a.url)!==this.options.path)return!1}return!0}handleUpgrade(a,b,c,d){b.on("error",p);let e=a.headers["sec-websocket-key"],f=a.headers.upgrade,g=+a.headers["sec-websocket-version"];if("GET"!==a.method)return void r(this,a,b,405,"Invalid HTTP method");if(void 0===f||"websocket"!==f.toLowerCase())return void r(this,a,b,400,"Invalid Upgrade header");if(void 0===e||!n.test(e))return void r(this,a,b,400,"Missing or invalid Sec-WebSocket-Key header");if(13!==g&&8!==g)return void r(this,a,b,400,"Missing or invalid Sec-WebSocket-Version header",{"Sec-WebSocket-Version":"13, 8"});if(!this.shouldHandle(a))return void q(b,400);let k=a.headers["sec-websocket-protocol"],l=new Set;if(void 0!==k)try{l=j.parse(k)}catch(c){r(this,a,b,400,"Invalid Sec-WebSocket-Protocol header");return}let m=a.headers["sec-websocket-extensions"],o={};if(this.options.perMessageDeflate&&void 0!==m){let c=new i(this.options.perMessageDeflate,!0,this.options.maxPayload);try{let a=h.parse(m);a[i.extensionName]&&(c.accept(a[i.extensionName]),o[i.extensionName]=c)}catch(c){r(this,a,b,400,"Invalid or unacceptable Sec-WebSocket-Extensions header");return}}if(this.options.verifyClient){let f={origin:a.headers[`${8===g?"sec-websocket-origin":"origin"}`],secure:!!(a.socket.authorized||a.socket.encrypted),req:a};if(2===this.options.verifyClient.length)return void this.options.verifyClient(f,(f,g,h,i)=>{if(!f)return q(b,g||401,h,i);this.completeUpgrade(o,e,l,a,b,c,d)});if(!this.options.verifyClient(f))return q(b,401)}this.completeUpgrade(o,e,l,a,b,c,d)}completeUpgrade(a,b,c,d,e,f,j){if(!e.readable||!e.writable)return e.destroy();if(e[m])throw Error("server.handleUpgrade() was called more than once with the same socket, possibly due to a misconfiguration");if(this._state>0)return q(e,503);let k=g("sha1").update(b+l).digest("base64"),n=["HTTP/1.1 101 Switching Protocols","Upgrade: websocket","Connection: Upgrade",`Sec-WebSocket-Accept: ${k}`],r=new this.options.WebSocket(null,void 0,this.options);if(c.size){let a=this.options.handleProtocols?this.options.handleProtocols(c,d):c.values().next().value;a&&(n.push(`Sec-WebSocket-Protocol: ${a}`),r._protocol=a)}if(a[i.extensionName]){let b=a[i.extensionName].params,c=h.format({[i.extensionName]:[b]});n.push(`Sec-WebSocket-Extensions: ${c}`),r._extensions=a}this.emit("headers",n,d),e.write(n.concat("\r\n").join("\r\n")),e.removeListener("error",p),r.setSocket(e,f,{allowSynchronousEvents:this.options.allowSynchronousEvents,maxPayload:this.options.maxPayload,skipUTF8Validation:this.options.skipUTF8Validation}),this.clients&&(this.clients.add(r),r.on("close",()=>{this.clients.delete(r),this._shouldEmitClose&&!this.clients.size&&process.nextTick(o,this)})),j(r,d)}}},83915,a=>{"use strict";let b,c,d;var e,f,g=a.i(63047);let h=Object.create(null);h.open="0",h.close="1",h.ping="2",h.pong="3",h.message="4",h.upgrade="5",h.noop="6";let i=Object.create(null);Object.keys(h).forEach(a=>{i[h[a]]=a});let j={type:"error",data:"parser error"},k=({type:a,data:b},c,d)=>d(b instanceof ArrayBuffer||ArrayBuffer.isView(b)?c?b:"b"+l(b,!0).toString("base64"):h[a]+(b||"")),l=(a,b)=>Buffer.isBuffer(a)||a instanceof Uint8Array&&!b?a:a instanceof ArrayBuffer?Buffer.from(a):Buffer.from(a.buffer,a.byteOffset,a.byteLength),m=(a,b)=>{if("string"!=typeof a)return{type:"message",data:n(a,b)};let c=a.charAt(0);return"b"===c?{type:"message",data:n(Buffer.from(a.substring(1),"base64"),b)}:i[c]?a.length>1?{type:i[c],data:a.substring(1)}:{type:i[c]}:j},n=(a,b)=>"arraybuffer"===b?a instanceof ArrayBuffer?a:Buffer.isBuffer(a)?a.buffer.slice(a.byteOffset,a.byteOffset+a.byteLength):a.buffer:Buffer.isBuffer(a)?a:Buffer.from(a);function o(a){return a.reduce((a,b)=>a+b.length,0)}function p(a,b){if(a[0].length===b)return a.shift();let c=new Uint8Array(b),d=0;for(let e=0;e<b;e++)c[e]=a[0][d++],d===a[0].length&&(a.shift(),d=0);return a.length&&d<a[0].length&&(a[0]=a[0].slice(d)),c}function q(a){if(a){var b=a;for(var c in q.prototype)b[c]=q.prototype[c];return b}}q.prototype.on=q.prototype.addEventListener=function(a,b){return this._callbacks=this._callbacks||{},(this._callbacks["$"+a]=this._callbacks["$"+a]||[]).push(b),this},q.prototype.once=function(a,b){function c(){this.off(a,c),b.apply(this,arguments)}return c.fn=b,this.on(a,c),this},q.prototype.off=q.prototype.removeListener=q.prototype.removeAllListeners=q.prototype.removeEventListener=function(a,b){if(this._callbacks=this._callbacks||{},0==arguments.length)return this._callbacks={},this;var c,d=this._callbacks["$"+a];if(!d)return this;if(1==arguments.length)return delete this._callbacks["$"+a],this;for(var e=0;e<d.length;e++)if((c=d[e])===b||c.fn===b){d.splice(e,1);break}return 0===d.length&&delete this._callbacks["$"+a],this},q.prototype.emit=function(a){this._callbacks=this._callbacks||{};for(var b=Array(arguments.length-1),c=this._callbacks["$"+a],d=1;d<arguments.length;d++)b[d-1]=arguments[d];if(c){c=c.slice(0);for(var d=0,e=c.length;d<e;++d)c[d].apply(this,b)}return this},q.prototype.emitReserved=q.prototype.emit,q.prototype.listeners=function(a){return this._callbacks=this._callbacks||{},this._callbacks["$"+a]||[]},q.prototype.hasListeners=function(a){return!!this.listeners(a).length};let r=process.nextTick,s=a.g;class u{constructor(){this._cookies=new Map}parseCookies(a){a&&a.forEach(a=>{let b=function(a){let b=a.split("; "),c=b[0].indexOf("=");if(-1===c)return;let d=b[0].substring(0,c).trim();if(!d.length)return;let e=b[0].substring(c+1).trim();34===e.charCodeAt(0)&&(e=e.slice(1,-1));let f={name:d,value:e};for(let a=1;a<b.length;a++){let c=b[a].split("=");if(2!==c.length)continue;let d=c[0].trim(),e=c[1].trim();switch(d){case"Expires":f.expires=new Date(e);break;case"Max-Age":let g=new Date;g.setUTCSeconds(g.getUTCSeconds()+parseInt(e,10)),f.expires=g}}return f}(a);b&&this._cookies.set(b.name,b)})}get cookies(){let a=Date.now();return this._cookies.forEach((b,c)=>{var d;(null==(d=b.expires)?void 0:d.getTime())<a&&this._cookies.delete(c)}),this._cookies.entries()}addCookies(a){let b=[];for(let[a,c]of this.cookies)b.push(`${a}=${c.value}`);b.length&&(a.setDisableHeaderCheck(!0),a.setRequestHeader("cookie",b.join("; ")))}appendCookies(a){for(let[b,c]of this.cookies)a.append("cookie",`${b}=${c.value}`)}}function v(a,...b){return b.reduce((b,c)=>(a.hasOwnProperty(c)&&(b[c]=a[c]),b),{})}let w=s.setTimeout,x=s.clearTimeout;function y(a,b){b.useNativeTimers?(a.setTimeoutFn=w.bind(s),a.clearTimeoutFn=x.bind(s)):(a.setTimeoutFn=s.setTimeout.bind(s),a.clearTimeoutFn=s.clearTimeout.bind(s))}function z(){return Date.now().toString(36).substring(3)+Math.random().toString(36).substring(2,5)}var A=a.i(35290);let B=(0,A.default)("engine.io-client:transport");class C extends Error{constructor(a,b,c){super(a),this.description=b,this.context=c,this.type="TransportError"}}class D extends q{constructor(a){super(),this.writable=!1,y(this,a),this.opts=a,this.query=a.query,this.socket=a.socket,this.supportsBinary=!a.forceBase64}onError(a,b,c){return super.emitReserved("error",new C(a,b,c)),this}open(){return this.readyState="opening",this.doOpen(),this}close(){return("opening"===this.readyState||"open"===this.readyState)&&(this.doClose(),this.onClose()),this}send(a){"open"===this.readyState?this.write(a):B("transport is not open, discarding packets")}onOpen(){this.readyState="open",this.writable=!0,super.emitReserved("open")}onData(a){let b=m(a,this.socket.binaryType);this.onPacket(b)}onPacket(a){super.emitReserved("packet",a)}onClose(a){this.readyState="closed",super.emitReserved("close",a)}pause(a){}createUri(a,b={}){return a+"://"+this._hostname()+this._port()+this.opts.path+this._query(b)}_hostname(){let a=this.opts.hostname;return -1===a.indexOf(":")?a:"["+a+"]"}_port(){return this.opts.port&&(this.opts.secure&&443!==Number(this.opts.port)||!this.opts.secure&&80!==Number(this.opts.port))?":"+this.opts.port:""}_query(a){let b=function(a){let b="";for(let c in a)a.hasOwnProperty(c)&&(b.length&&(b+="&"),b+=encodeURIComponent(c)+"="+encodeURIComponent(a[c]));return b}(a);return b.length?"?"+b:""}}let E=(0,A.default)("engine.io-client:polling");class F extends D{constructor(){super(...arguments),this._polling=!1}get name(){return"polling"}doOpen(){this._poll()}pause(a){this.readyState="pausing";let b=()=>{E("paused"),this.readyState="paused",a()};if(this._polling||!this.writable){let a=0;this._polling&&(E("we are currently polling - waiting to pause"),a++,this.once("pollComplete",function(){E("pre-pause polling complete"),--a||b()})),this.writable||(E("we are currently writing - waiting to pause"),a++,this.once("drain",function(){E("pre-pause writing complete"),--a||b()}))}else b()}_poll(){E("polling"),this._polling=!0,this.doPoll(),this.emitReserved("poll")}onData(a){E("polling got data %s",a);let b=a=>{if("opening"===this.readyState&&"open"===a.type&&this.onOpen(),"close"===a.type)return this.onClose({description:"transport closed by the server"}),!1;this.onPacket(a)};((a,b)=>{let c=a.split("\x1e"),d=[];for(let a=0;a<c.length;a++){let e=m(c[a],b);if(d.push(e),"error"===e.type)break}return d})(a,this.socket.binaryType).forEach(b),"closed"!==this.readyState&&(this._polling=!1,this.emitReserved("pollComplete"),"open"===this.readyState?this._poll():E('ignoring poll - transport state "%s"',this.readyState))}doClose(){let a=()=>{E("writing close packet"),this.write([{type:"close"}])};"open"===this.readyState?(E("transport open - closing"),a()):(E("transport not open - deferring close"),this.once("open",a))}write(a){var b;let c,d,e;this.writable=!1,b=a=>{this.doWrite(a,()=>{this.writable=!0,this.emitReserved("drain")})},d=Array(c=a.length),e=0,a.forEach((a,f)=>{k(a,!1,a=>{d[f]=a,++e===c&&b(d.join("\x1e"))})})}uri(){let a=this.opts.secure?"https":"http",b=this.query||{};return!1!==this.opts.timestampRequests&&(b[this.opts.timestampParam]=z()),this.supportsBinary||b.sid||(b.b64=1),this.createUri(a,b)}}let G=!1;try{G="u">typeof XMLHttpRequest&&"withCredentials"in new XMLHttpRequest}catch(a){}let H=G,I=(0,A.default)("engine.io-client:polling");function J(){}class K extends F{constructor(a){if(super(a),"u">typeof location){const b="https:"===location.protocol;let c=location.port;c||(c=b?"443":"80"),this.xd="u">typeof location&&a.hostname!==location.hostname||c!==a.port}}doWrite(a,b){let c=this.request({method:"POST",data:a});c.on("success",b),c.on("error",(a,b)=>{this.onError("xhr post error",a,b)})}doPoll(){I("xhr poll");let a=this.request();a.on("data",this.onData.bind(this)),a.on("error",(a,b)=>{this.onError("xhr poll error",a,b)}),this.pollXhr=a}}class L extends q{constructor(a,b,c){super(),this.createRequest=a,y(this,c),this._opts=c,this._method=c.method||"GET",this._uri=b,this._data=void 0!==c.data?c.data:null,this._create()}_create(){var a;let b=v(this._opts,"agent","pfx","key","passphrase","cert","ca","ciphers","rejectUnauthorized","autoUnref");b.xdomain=!!this._opts.xd;let c=this._xhr=this.createRequest(b);try{I("xhr open %s: %s",this._method,this._uri),c.open(this._method,this._uri,!0);try{if(this._opts.extraHeaders)for(let a in c.setDisableHeaderCheck&&c.setDisableHeaderCheck(!0),this._opts.extraHeaders)this._opts.extraHeaders.hasOwnProperty(a)&&c.setRequestHeader(a,this._opts.extraHeaders[a])}catch(a){}if("POST"===this._method)try{c.setRequestHeader("Content-type","text/plain;charset=UTF-8")}catch(a){}try{c.setRequestHeader("Accept","*/*")}catch(a){}null==(a=this._opts.cookieJar)||a.addCookies(c),"withCredentials"in c&&(c.withCredentials=this._opts.withCredentials),this._opts.requestTimeout&&(c.timeout=this._opts.requestTimeout),c.onreadystatechange=()=>{var a;3===c.readyState&&(null==(a=this._opts.cookieJar)||a.parseCookies(c.getResponseHeader("set-cookie"))),4===c.readyState&&(200===c.status||1223===c.status?this._onLoad():this.setTimeoutFn(()=>{this._onError("number"==typeof c.status?c.status:0)},0))},I("xhr data %s",this._data),c.send(this._data)}catch(a){this.setTimeoutFn(()=>{this._onError(a)},0);return}"u">typeof document&&(this._index=L.requestsCount++,L.requests[this._index]=this)}_onError(a){this.emitReserved("error",a,this._xhr),this._cleanup(!0)}_cleanup(a){if(void 0!==this._xhr&&null!==this._xhr){if(this._xhr.onreadystatechange=J,a)try{this._xhr.abort()}catch(a){}"u">typeof document&&delete L.requests[this._index],this._xhr=null}}_onLoad(){let a=this._xhr.responseText;null!==a&&(this.emitReserved("data",a),this.emitReserved("success"),this._cleanup())}abort(){this._cleanup()}}function M(){for(let a in L.requests)L.requests.hasOwnProperty(a)&&L.requests[a].abort()}L.requestsCount=0,L.requests={},"u">typeof document&&("function"==typeof attachEvent?attachEvent("onunload",M):"function"==typeof addEventListener&&addEventListener("onpagehide"in s?"pagehide":"unload",M,!1)),(d=function(a){let b=a.xdomain;try{if("u">typeof XMLHttpRequest&&(!b||H))return new XMLHttpRequest}catch(a){}if(!b)try{return new s[["Active"].concat("Object").join("X")]("Microsoft.XMLHTTP")}catch(a){}}({xdomain:!1}))&&d.responseType;let N=g.default||g;a.i(57515),a.i(64386),a.i(71387);var O=a.i(36705);a.i(67691),O.default;let P=(0,A.default)("engine.io-client:websocket"),Q="u">typeof navigator&&"string"==typeof navigator.product&&"reactnative"===navigator.product.toLowerCase();class R extends D{get name(){return"websocket"}doOpen(){let a=this.uri(),b=this.opts.protocols,c=Q?{}:v(this.opts,"agent","perMessageDeflate","pfx","key","passphrase","cert","ca","ciphers","rejectUnauthorized","localAddress","protocolVersion","origin","maxPayload","family","checkServerIdentity");this.opts.extraHeaders&&(c.headers=this.opts.extraHeaders);try{this.ws=this.createSocket(a,b,c)}catch(a){return this.emitReserved("error",a)}this.ws.binaryType=this.socket.binaryType,this.addEventListeners()}addEventListeners(){this.ws.onopen=()=>{this.opts.autoUnref&&this.ws._socket.unref(),this.onOpen()},this.ws.onclose=a=>this.onClose({description:"websocket connection closed",context:a}),this.ws.onmessage=a=>this.onData(a.data),this.ws.onerror=a=>this.onError("websocket error",a)}write(a){this.writable=!1;for(let b=0;b<a.length;b++){let c=a[b],d=b===a.length-1;k(c,this.supportsBinary,a=>{try{this.doWrite(c,a)}catch(a){P("websocket closed before onclose event")}d&&r(()=>{this.writable=!0,this.emitReserved("drain")},this.setTimeoutFn)})}}doClose(){void 0!==this.ws&&(this.ws.onerror=()=>{},this.ws.close(),this.ws=null)}uri(){let a=this.opts.secure?"wss":"ws",b=this.query||{};return this.opts.timestampRequests&&(b[this.opts.timestampParam]=z()),this.supportsBinary||(b.b64=1),this.createUri(a,b)}}s.WebSocket||s.MozWebSocket;let S=(0,A.default)("engine.io-client:webtransport"),T={websocket:class extends R{createSocket(a,b,c){var d;if(null==(d=this.socket)?void 0:d._cookieJar)for(let[a,b]of(c.headers=c.headers||{},c.headers.cookie="string"==typeof c.headers.cookie?[c.headers.cookie]:c.headers.cookie||[],this.socket._cookieJar.cookies))c.headers.cookie.push(`${a}=${b.value}`);return new O.default(a,b,c)}doWrite(a,b){let c={};a.options&&(c.compress=a.options.compress),this.opts.perMessageDeflate&&("string"==typeof b?Buffer.byteLength(b):b.length)<this.opts.perMessageDeflate.threshold&&(c.compress=!1),this.ws.send(b,c)}},webtransport:class extends D{get name(){return"webtransport"}doOpen(){try{this._transport=new WebTransport(this.createUri("https"),this.opts.transportOptions[this.name])}catch(a){return this.emitReserved("error",a)}this._transport.closed.then(()=>{S("transport closed gracefully"),this.onClose()}).catch(a=>{S("transport closed due to %s",a),this.onError("webtransport error",a)}),this._transport.ready.then(()=>{this._transport.createBidirectionalStream().then(a=>{var d,e;let f,g,h,i,n=(d=Number.MAX_SAFE_INTEGER,e=this.socket.binaryType,c||(c=new TextDecoder),f=[],g=0,h=-1,i=!1,new TransformStream({transform(a,b){for(f.push(a);;){if(0===g){if(1>o(f))break;let a=p(f,1);i=(128&a[0])==128,g=(h=127&a[0])<126?3:126===h?1:2}else if(1===g){if(2>o(f))break;let a=p(f,2);h=new DataView(a.buffer,a.byteOffset,a.length).getUint16(0),g=3}else if(2===g){if(8>o(f))break;let a=p(f,8),c=new DataView(a.buffer,a.byteOffset,a.length),d=c.getUint32(0);if(d>2097151){b.enqueue(j);break}h=0x100000000*d+c.getUint32(4),g=3}else{if(o(f)<h)break;let a=p(f,h);b.enqueue(m(i?a:c.decode(a),e)),g=0}if(0===h||h>d){b.enqueue(j);break}}}})),q=a.readable.pipeThrough(n).getReader(),r=new TransformStream({transform(a,c){!function(a,c){if(a.data instanceof ArrayBuffer||ArrayBuffer.isView(a.data))return c(l(a.data,!1));k(a,!0,a=>{b||(b=new TextEncoder),c(b.encode(a))})}(a,b=>{let d,e=b.length;if(e<126)new DataView((d=new Uint8Array(1)).buffer).setUint8(0,e);else if(e<65536){let a=new DataView((d=new Uint8Array(3)).buffer);a.setUint8(0,126),a.setUint16(1,e)}else{let a=new DataView((d=new Uint8Array(9)).buffer);a.setUint8(0,127),a.setBigUint64(1,BigInt(e))}a.data&&"string"!=typeof a.data&&(d[0]|=128),c.enqueue(d),c.enqueue(b)})}});r.readable.pipeTo(a.writable),this._writer=r.writable.getWriter();let s=()=>{q.read().then(({done:a,value:b})=>{a?S("session is closed"):(S("received chunk: %o",b),this.onPacket(b),s())}).catch(a=>{S("an error occurred while reading: %s",a)})};s();let u={type:"open"};this.query.sid&&(u.data=`{"sid":"${this.query.sid}"}`),this._writer.write(u).then(()=>this.onOpen())})})}write(a){this.writable=!1;for(let b=0;b<a.length;b++){let c=a[b],d=b===a.length-1;this._writer.write(c).then(()=>{d&&r(()=>{this.writable=!0,this.emitReserved("drain")},this.setTimeoutFn)})}}doClose(){var a;null==(a=this._transport)||a.close()}},polling:class extends K{request(a={}){var b;return Object.assign(a,{xd:this.xd,cookieJar:null==(b=this.socket)?void 0:b._cookieJar},this.opts),new L(a=>new N(a),this.uri(),a)}}},U=/^(?:(?![^:@\/?#]+:[^:@\/]*@)(http|https|ws|wss):\/\/)?((?:(([^:@\/?#]*)(?::([^:@\/?#]*))?)?@)?((?:[a-f0-9]{0,4}:){2,7}[a-f0-9]{0,4}|[^:\/?#]*)(?::(\d*))?)(((\/(?:[^?#](?![^?#\/]*\.[^?#\/.]+(?:[?#]|$)))*\/?)?([^?#\/]*))(?:\?([^#]*))?(?:#(.*))?)/,V=["source","protocol","authority","userInfo","user","password","host","port","relative","path","directory","file","query","anchor"];function W(a){var b,c;let d,e;if(a.length>8e3)throw"URI too long";let f=a,g=a.indexOf("["),h=a.indexOf("]");-1!=g&&-1!=h&&(a=a.substring(0,g)+a.substring(g,h).replace(/:/g,";")+a.substring(h,a.length));let i=U.exec(a||""),j={},k=14;for(;k--;)j[V[k]]=i[k]||"";return -1!=g&&-1!=h&&(j.source=f,j.host=j.host.substring(1,j.host.length-1).replace(/;/g,":"),j.authority=j.authority.replace("[","").replace("]","").replace(/;/g,":"),j.ipv6uri=!0),d=(b=j.path).replace(/\/{2,9}/g,"/").split("/"),("/"==b.slice(0,1)||0===b.length)&&d.splice(0,1),"/"==b.slice(-1)&&d.splice(d.length-1,1),j.pathNames=d,c=j.query,e={},c.replace(/(?:^|&)([^&=]*)=?([^&]*)/g,function(a,b,c){b&&(e[b]=c)}),j.queryKey=e,j}let X=(0,A.default)("engine.io-client:socket"),Y="function"==typeof addEventListener&&"function"==typeof removeEventListener,Z=[];Y&&addEventListener("offline",()=>{X("closing %d connection(s) because the network was lost",Z.length),Z.forEach(a=>a())},!1);class $ extends q{constructor(a,b){if(super(),this.binaryType="nodebuffer",this.writeBuffer=[],this._prevBufferLen=0,this._pingInterval=-1,this._pingTimeout=-1,this._maxPayload=-1,this._pingTimeoutTime=1/0,a&&"object"==typeof a&&(b=a,a=null),a){const c=W(a);b.hostname=c.host,b.secure="https"===c.protocol||"wss"===c.protocol,b.port=c.port,c.query&&(b.query=c.query)}else b.host&&(b.hostname=W(b.host).host);y(this,b),this.secure=null!=b.secure?b.secure:"u">typeof location&&"https:"===location.protocol,b.hostname&&!b.port&&(b.port=this.secure?"443":"80"),this.hostname=b.hostname||("u">typeof location?location.hostname:"localhost"),this.port=b.port||("u">typeof location&&location.port?location.port:this.secure?"443":"80"),this.transports=[],this._transportsByName={},b.transports.forEach(a=>{let b=a.prototype.name;this.transports.push(b),this._transportsByName[b]=a}),this.opts=Object.assign({path:"/engine.io",agent:!1,withCredentials:!1,upgrade:!0,timestampParam:"t",rememberUpgrade:!1,addTrailingSlash:!0,rejectUnauthorized:!0,perMessageDeflate:{threshold:1024},transportOptions:{},closeOnBeforeunload:!1},b),this.opts.path=this.opts.path.replace(/\/$/,"")+(this.opts.addTrailingSlash?"/":""),"string"==typeof this.opts.query&&(this.opts.query=function(a){let b={},c=a.split("&");for(let a=0,d=c.length;a<d;a++){let d=c[a].split("=");b[decodeURIComponent(d[0])]=decodeURIComponent(d[1])}return b}(this.opts.query)),Y&&(this.opts.closeOnBeforeunload&&(this._beforeunloadEventListener=()=>{this.transport&&(this.transport.removeAllListeners(),this.transport.close())},addEventListener("beforeunload",this._beforeunloadEventListener,!1)),"localhost"!==this.hostname&&(X("adding listener for the 'offline' event"),this._offlineEventListener=()=>{this._onClose("transport close",{description:"network connection lost"})},Z.push(this._offlineEventListener))),this.opts.withCredentials&&(this._cookieJar=new u),this._open()}createTransport(a){X('creating transport "%s"',a);let b=Object.assign({},this.opts.query);b.EIO=4,b.transport=a,this.id&&(b.sid=this.id);let c=Object.assign({},this.opts,{query:b,socket:this,hostname:this.hostname,secure:this.secure,port:this.port},this.opts.transportOptions[a]);return X("options: %j",c),new this._transportsByName[a](c)}_open(){if(0===this.transports.length)return void this.setTimeoutFn(()=>{this.emitReserved("error","No transports available")},0);let a=this.opts.rememberUpgrade&&$.priorWebsocketSuccess&&-1!==this.transports.indexOf("websocket")?"websocket":this.transports[0];this.readyState="opening";let b=this.createTransport(a);b.open(),this.setTransport(b)}setTransport(a){X("setting transport %s",a.name),this.transport&&(X("clearing existing transport %s",this.transport.name),this.transport.removeAllListeners()),this.transport=a,a.on("drain",this._onDrain.bind(this)).on("packet",this._onPacket.bind(this)).on("error",this._onError.bind(this)).on("close",a=>this._onClose("transport close",a))}onOpen(){X("socket open"),this.readyState="open",$.priorWebsocketSuccess="websocket"===this.transport.name,this.emitReserved("open"),this.flush()}_onPacket(a){if("opening"===this.readyState||"open"===this.readyState||"closing"===this.readyState)switch(X('socket receive: type "%s", data "%s"',a.type,a.data),this.emitReserved("packet",a),this.emitReserved("heartbeat"),a.type){case"open":this.onHandshake(JSON.parse(a.data));break;case"ping":this._sendPacket("pong"),this.emitReserved("ping"),this.emitReserved("pong"),this._resetPingTimeout();break;case"error":let b=Error("server error");b.code=a.data,this._onError(b);break;case"message":this.emitReserved("data",a.data),this.emitReserved("message",a.data)}else X('packet received with socket readyState "%s"',this.readyState)}onHandshake(a){this.emitReserved("handshake",a),this.id=a.sid,this.transport.query.sid=a.sid,this._pingInterval=a.pingInterval,this._pingTimeout=a.pingTimeout,this._maxPayload=a.maxPayload,this.onOpen(),"closed"!==this.readyState&&this._resetPingTimeout()}_resetPingTimeout(){this.clearTimeoutFn(this._pingTimeoutTimer);let a=this._pingInterval+this._pingTimeout;this._pingTimeoutTime=Date.now()+a,this._pingTimeoutTimer=this.setTimeoutFn(()=>{this._onClose("ping timeout")},a),this.opts.autoUnref&&this._pingTimeoutTimer.unref()}_onDrain(){this.writeBuffer.splice(0,this._prevBufferLen),this._prevBufferLen=0,0===this.writeBuffer.length?this.emitReserved("drain"):this.flush()}flush(){if("closed"!==this.readyState&&this.transport.writable&&!this.upgrading&&this.writeBuffer.length){let a=this._getWritablePackets();X("flushing %d packets in socket",a.length),this.transport.send(a),this._prevBufferLen=a.length,this.emitReserved("flush")}}_getWritablePackets(){if(!(this._maxPayload&&"polling"===this.transport.name&&this.writeBuffer.length>1))return this.writeBuffer;let a=1;for(let b=0;b<this.writeBuffer.length;b++){let c=this.writeBuffer[b].data;if(c&&(a+="string"==typeof c?function(a){let b=0,c=0;for(let d=0,e=a.length;d<e;d++)(b=a.charCodeAt(d))<128?c+=1:b<2048?c+=2:b<55296||b>=57344?c+=3:(d++,c+=4);return c}(c):Math.ceil(1.33*(c.byteLength||c.size))),b>0&&a>this._maxPayload)return X("only send %d out of %d packets",b,this.writeBuffer.length),this.writeBuffer.slice(0,b);a+=2}return X("payload size is %d (max: %d)",a,this._maxPayload),this.writeBuffer}_hasPingExpired(){if(!this._pingTimeoutTime)return!0;let a=Date.now()>this._pingTimeoutTime;return a&&(X("throttled timer detected, scheduling connection close"),this._pingTimeoutTime=0,r(()=>{this._onClose("ping timeout")},this.setTimeoutFn)),a}write(a,b,c){return this._sendPacket("message",a,b,c),this}send(a,b,c){return this._sendPacket("message",a,b,c),this}_sendPacket(a,b,c,d){if("function"==typeof b&&(d=b,b=void 0),"function"==typeof c&&(d=c,c=null),"closing"===this.readyState||"closed"===this.readyState)return;(c=c||{}).compress=!1!==c.compress;let e={type:a,data:b,options:c};this.emitReserved("packetCreate",e),this.writeBuffer.push(e),d&&this.once("flush",d),this.flush()}close(){let a=()=>{this._onClose("forced close"),X("socket closing - telling transport to close"),this.transport.close()},b=()=>{this.off("upgrade",b),this.off("upgradeError",b),a()},c=()=>{this.once("upgrade",b),this.once("upgradeError",b)};return("opening"===this.readyState||"open"===this.readyState)&&(this.readyState="closing",this.writeBuffer.length?this.once("drain",()=>{this.upgrading?c():a()}):this.upgrading?c():a()),this}_onError(a){if(X("socket error %j",a),$.priorWebsocketSuccess=!1,this.opts.tryAllTransports&&this.transports.length>1&&"opening"===this.readyState)return X("trying next transport"),this.transports.shift(),this._open();this.emitReserved("error",a),this._onClose("transport error",a)}_onClose(a,b){if("opening"===this.readyState||"open"===this.readyState||"closing"===this.readyState){if(X('socket close with reason: "%s"',a),this.clearTimeoutFn(this._pingTimeoutTimer),this.transport.removeAllListeners("close"),this.transport.close(),this.transport.removeAllListeners(),Y&&(this._beforeunloadEventListener&&removeEventListener("beforeunload",this._beforeunloadEventListener,!1),this._offlineEventListener)){let a=Z.indexOf(this._offlineEventListener);-1!==a&&(X("removing listener for the 'offline' event"),Z.splice(a,1))}this.readyState="closed",this.id=null,this.emitReserved("close",a,b),this.writeBuffer=[],this._prevBufferLen=0}}}$.protocol=4;class _ extends ${constructor(){super(...arguments),this._upgrades=[]}onOpen(){if(super.onOpen(),"open"===this.readyState&&this.opts.upgrade){X("starting upgrade probes");for(let a=0;a<this._upgrades.length;a++)this._probe(this._upgrades[a])}}_probe(a){X('probing transport "%s"',a);let b=this.createTransport(a),c=!1;$.priorWebsocketSuccess=!1;let d=()=>{c||(X('probe transport "%s" opened',a),b.send([{type:"ping",data:"probe"}]),b.once("packet",d=>{if(!c)if("pong"===d.type&&"probe"===d.data){if(X('probe transport "%s" pong',a),this.upgrading=!0,this.emitReserved("upgrading",b),!b)return;$.priorWebsocketSuccess="websocket"===b.name,X('pausing current transport "%s"',this.transport.name),this.transport.pause(()=>{c||"closed"!==this.readyState&&(X("changing transport and sending upgrade packet"),j(),this.setTransport(b),b.send([{type:"upgrade"}]),this.emitReserved("upgrade",b),b=null,this.upgrading=!1,this.flush())})}else{X('probe transport "%s" failed',a);let c=Error("probe error");c.transport=b.name,this.emitReserved("upgradeError",c)}}))};function e(){c||(c=!0,j(),b.close(),b=null)}let f=c=>{let d=Error("probe error: "+c);d.transport=b.name,e(),X('probe transport "%s" failed because of error: %s',a,c),this.emitReserved("upgradeError",d)};function g(){f("transport closed")}function h(){f("socket closed")}function i(a){b&&a.name!==b.name&&(X('"%s" works - aborting "%s"',a.name,b.name),e())}let j=()=>{b.removeListener("open",d),b.removeListener("error",f),b.removeListener("close",g),this.off("close",h),this.off("upgrading",i)};b.once("open",d),b.once("error",f),b.once("close",g),this.once("close",h),this.once("upgrading",i),-1!==this._upgrades.indexOf("webtransport")&&"webtransport"!==a?this.setTimeoutFn(()=>{c||b.open()},200):b.open()}onHandshake(a){this._upgrades=this._filterUpgrades(a.upgrades),super.onHandshake(a)}_filterUpgrades(a){let b=[];for(let c=0;c<a.length;c++)~this.transports.indexOf(a[c])&&b.push(a[c]);return b}}class aa extends _{constructor(a,b={}){const c="object"==typeof a?a:b;(!c.transports||c.transports&&"string"==typeof c.transports[0])&&(c.transports=(c.transports||["polling","websocket","webtransport"]).map(a=>T[a]).filter(a=>!!a)),super(a,c)}}aa.protocol;let ab=(0,A.default)("socket.io-client:url"),ac="function"==typeof ArrayBuffer,ad=Object.prototype.toString,ae="function"==typeof Blob||"u">typeof Blob&&"[object BlobConstructor]"===ad.call(Blob),af="function"==typeof File||"u">typeof File&&"[object FileConstructor]"===ad.call(File);function ag(a){return ac&&(a instanceof ArrayBuffer||("function"==typeof ArrayBuffer.isView?ArrayBuffer.isView(a):a.buffer instanceof ArrayBuffer))||ae&&a instanceof Blob||af&&a instanceof File}let ah=(0,A.default)("socket.io-parser"),ai=["connect","connect_error","disconnect","disconnecting","newListener","removeListener"];(e=f||(f={}))[e.CONNECT=0]="CONNECT",e[e.DISCONNECT=1]="DISCONNECT",e[e.EVENT=2]="EVENT",e[e.ACK=3]="ACK",e[e.CONNECT_ERROR=4]="CONNECT_ERROR",e[e.BINARY_EVENT=5]="BINARY_EVENT",e[e.BINARY_ACK=6]="BINARY_ACK";class aj extends q{constructor(a){super(),this.opts=Object.assign({reviver:void 0,maxAttachments:10},"function"==typeof a?{reviver:a}:a)}add(a){let b;if("string"==typeof a){if(this.reconstructor)throw Error("got plaintext data when reconstructing a packet");let c=(b=this.decodeString(a)).type===f.BINARY_EVENT;c||b.type===f.BINARY_ACK?(b.type=c?f.EVENT:f.ACK,this.reconstructor=new ak(b),0===b.attachments&&super.emitReserved("decoded",b)):super.emitReserved("decoded",b)}else if(ag(a)||a.base64)if(this.reconstructor)(b=this.reconstructor.takeBinaryData(a))&&(this.reconstructor=null,super.emitReserved("decoded",b));else throw Error("got binary data when not reconstructing a packet");else throw Error("Unknown type: "+a)}decodeString(a){let b=0,c={type:Number(a.charAt(0))};if(void 0===f[c.type])throw Error("unknown packet type "+c.type);if(c.type===f.BINARY_EVENT||c.type===f.BINARY_ACK){let d=b+1;for(;"-"!==a.charAt(++b)&&b!=a.length;);let e=a.substring(d,b);if(e!=Number(e)||"-"!==a.charAt(b))throw Error("Illegal attachments");let f=Number(e);if(!al(f)||f<0)throw Error("Illegal attachments");if(f>this.opts.maxAttachments)throw Error("too many attachments");c.attachments=f}if("/"===a.charAt(b+1)){let d=b+1;for(;++b&&","!==a.charAt(b)&&b!==a.length;);c.nsp=a.substring(d,b)}else c.nsp="/";let d=a.charAt(b+1);if(""!==d&&Number(d)==d){let d=b+1;for(;++b;){let c=a.charAt(b);if(null==c||Number(c)!=c){--b;break}if(b===a.length)break}c.id=Number(a.substring(d,b+1))}if(a.charAt(++b)){let d=this.tryParse(a.substr(b));if(aj.isPayloadValid(c.type,d))c.data=d;else throw Error("invalid payload")}return ah("decoded %s as %j",a,c),c}tryParse(a){try{return JSON.parse(a,this.opts.reviver)}catch(a){return!1}}static isPayloadValid(a,b){switch(a){case f.CONNECT:return am(b);case f.DISCONNECT:return void 0===b;case f.CONNECT_ERROR:return"string"==typeof b||am(b);case f.EVENT:case f.BINARY_EVENT:return Array.isArray(b)&&("number"==typeof b[0]||"string"==typeof b[0]&&-1===ai.indexOf(b[0]));case f.ACK:case f.BINARY_ACK:return Array.isArray(b)}}destroy(){this.reconstructor&&(this.reconstructor.finishedReconstruction(),this.reconstructor=null)}}class ak{constructor(a){this.packet=a,this.buffers=[],this.reconPack=a}takeBinaryData(a){if(this.buffers.push(a),this.buffers.length===this.reconPack.attachments){var b,c;let a=(b=this.reconPack,c=this.buffers,b.data=function a(b,c){if(!b)return b;if(b&&!0===b._placeholder){if("number"==typeof b.num&&b.num>=0&&b.num<c.length)return c[b.num];throw Error("illegal attachments")}if(Array.isArray(b))for(let d=0;d<b.length;d++)b[d]=a(b[d],c);else if("object"==typeof b)for(let d in b)Object.prototype.hasOwnProperty.call(b,d)&&(b[d]=a(b[d],c));return b}(b.data,c),delete b.attachments,b);return this.finishedReconstruction(),a}return null}finishedReconstruction(){this.reconPack=null,this.buffers=[]}}let al=Number.isInteger||function(a){return"number"==typeof a&&isFinite(a)&&Math.floor(a)===a};function am(a){return"[object Object]"===Object.prototype.toString.call(a)}function an(a,b,c){return a.on(b,c),function(){a.off(b,c)}}a.s(["Decoder",0,aj,"Encoder",0,class{constructor(a){this.replacer=a}encode(a){return(ah("encoding packet %j",a),(a.type===f.EVENT||a.type===f.ACK)&&function a(b,c){if(!b||"object"!=typeof b)return!1;if(Array.isArray(b)){for(let c=0,d=b.length;c<d;c++)if(a(b[c]))return!0;return!1}if(ag(b))return!0;if(b.toJSON&&"function"==typeof b.toJSON&&1==arguments.length)return a(b.toJSON(),!0);for(let c in b)if(Object.prototype.hasOwnProperty.call(b,c)&&a(b[c]))return!0;return!1}(a))?this.encodeAsBinary({type:a.type===f.EVENT?f.BINARY_EVENT:f.BINARY_ACK,nsp:a.nsp,data:a.data,id:a.id}):[this.encodeAsString(a)]}encodeAsString(a){let b=""+a.type;return(a.type===f.BINARY_EVENT||a.type===f.BINARY_ACK)&&(b+=a.attachments+"-"),a.nsp&&"/"!==a.nsp&&(b+=a.nsp+","),null!=a.id&&(b+=a.id),null!=a.data&&(b+=JSON.stringify(a.data,this.replacer)),ah("encoded %j as %s",a,b),b}encodeAsBinary(a){let b,c,d=(b=[],c=a.data,a.data=function a(b,c){if(!b)return b;if(ag(b)){let a={_placeholder:!0,num:c.length};return c.push(b),a}if(Array.isArray(b)){let d=Array(b.length);for(let e=0;e<b.length;e++)d[e]=a(b[e],c);return d}if("object"==typeof b&&!(b instanceof Date)){let d={};for(let e in b)Object.prototype.hasOwnProperty.call(b,e)&&(d[e]=a(b[e],c));return d}return b}(c,b),a.attachments=b.length,{packet:a,buffers:b}),e=this.encodeAsString(d.packet),f=d.buffers;return f.unshift(e),f}},"PacketType",0,f,"isPacketValid",0,function(a){var b;return"string"==typeof a.nsp&&(void 0===(b=a.id)||al(b))&&function(a,b){switch(a){case f.CONNECT:return void 0===b||am(b);case f.DISCONNECT:return void 0===b;case f.EVENT:return Array.isArray(b)&&("number"==typeof b[0]||"string"==typeof b[0]&&-1===ai.indexOf(b[0]));case f.ACK:return Array.isArray(b);case f.CONNECT_ERROR:return"string"==typeof b||am(b);default:return!1}}(a.type,a.data)},"protocol",0,5],32882);let ao=(0,A.default)("socket.io-client:socket"),ap=Object.freeze({connect:1,connect_error:1,disconnect:1,disconnecting:1,newListener:1,removeListener:1});class aq extends q{constructor(a,b,c){super(),this.connected=!1,this.recovered=!1,this.receiveBuffer=[],this.sendBuffer=[],this._queue=[],this._queueSeq=0,this.ids=0,this.acks={},this.flags={},this.io=a,this.nsp=b,c&&c.auth&&(this.auth=c.auth),this._opts=Object.assign({},c),this.io._autoConnect&&this.open()}get disconnected(){return!this.connected}subEvents(){if(this.subs)return;let a=this.io;this.subs=[an(a,"open",this.onopen.bind(this)),an(a,"packet",this.onpacket.bind(this)),an(a,"error",this.onerror.bind(this)),an(a,"close",this.onclose.bind(this))]}get active(){return!!this.subs}connect(){return this.connected||(this.subEvents(),this.io._reconnecting||this.io.open(),"open"===this.io._readyState&&this.onopen()),this}open(){return this.connect()}send(...a){return a.unshift("message"),this.emit.apply(this,a),this}emit(a,...b){var c,d,e;if(ap.hasOwnProperty(a))throw Error('"'+a.toString()+'" is a reserved event name');if(b.unshift(a),this._opts.retries&&!this.flags.fromQueue&&!this.flags.volatile)return this._addToQueue(b),this;let g={type:f.EVENT,data:b};if(g.options={},g.options.compress=!1!==this.flags.compress,"function"==typeof b[b.length-1]){let a=this.ids++;ao("emitting packet with ack id %d",a);let c=b.pop();this._registerAckCallback(a,c),g.id=a}let h=null==(d=null==(c=this.io.engine)?void 0:c.transport)?void 0:d.writable,i=this.connected&&!(null==(e=this.io.engine)?void 0:e._hasPingExpired());return this.flags.volatile&&!h?ao("discard packet as the transport is not currently writable"):i?(this.notifyOutgoingListeners(g),this.packet(g)):this.sendBuffer.push(g),this.flags={},this}_registerAckCallback(a,b){var c;let d=null!=(c=this.flags.timeout)?c:this._opts.ackTimeout;if(void 0===d){this.acks[a]=b;return}let e=this.io.setTimeoutFn(()=>{delete this.acks[a];for(let b=0;b<this.sendBuffer.length;b++)this.sendBuffer[b].id===a&&(ao("removing packet with ack id %d from the buffer",a),this.sendBuffer.splice(b,1));ao("event with ack id %d has timed out after %d ms",a,d),b.call(this,Error("operation has timed out"))},d),f=(...a)=>{this.io.clearTimeoutFn(e),b.apply(this,a)};f.withError=!0,this.acks[a]=f}emitWithAck(a,...b){return new Promise((c,d)=>{let e=(a,b)=>a?d(a):c(b);e.withError=!0,b.push(e),this.emit(a,...b)})}_addToQueue(a){let b;"function"==typeof a[a.length-1]&&(b=a.pop());let c={id:this._queueSeq++,tryCount:0,pending:!1,args:a,flags:Object.assign({fromQueue:!0},this.flags)};a.push((a,...d)=>c!==this._queue[0]?ao("packet [%d] already acknowledged",c.id):(null!==a?c.tryCount>this._opts.retries&&(ao("packet [%d] is discarded after %d tries",c.id,c.tryCount),this._queue.shift(),b&&b(a)):(ao("packet [%d] was successfully sent",c.id),this._queue.shift(),b&&b(null,...d)),c.pending=!1,this._drainQueue())),this._queue.push(c),this._drainQueue()}_drainQueue(a=!1){if(ao("draining queue"),!this.connected||0===this._queue.length)return;let b=this._queue[0];b.pending&&!a?ao("packet [%d] has already been sent and is waiting for an ack",b.id):(b.pending=!0,b.tryCount++,ao("sending packet [%d] (try n°%d)",b.id,b.tryCount),this.flags=b.flags,this.emit.apply(this,b.args))}packet(a){a.nsp=this.nsp,this.io._packet(a)}onopen(){ao("transport is open - connecting"),"function"==typeof this.auth?this.auth(a=>{this._sendConnectPacket(a)}):this._sendConnectPacket(this.auth)}_sendConnectPacket(a){this.packet({type:f.CONNECT,data:this._pid?Object.assign({pid:this._pid,offset:this._lastOffset},a):a})}onerror(a){this.connected||this.emitReserved("connect_error",a)}onclose(a,b){ao("close (%s)",a),this.connected=!1,delete this.id,this.emitReserved("disconnect",a,b),this._clearAcks()}_clearAcks(){Object.keys(this.acks).forEach(a=>{if(!this.sendBuffer.some(b=>String(b.id)===a)){let b=this.acks[a];delete this.acks[a],b.withError&&b.call(this,Error("socket has been disconnected"))}})}onpacket(a){if(a.nsp===this.nsp)switch(a.type){case f.CONNECT:a.data&&a.data.sid?this.onconnect(a.data.sid,a.data.pid):this.emitReserved("connect_error",Error("It seems you are trying to reach a Socket.IO server in v2.x with a v3.x client, but they are not compatible (more information here: https://socket.io/docs/v3/migrating-from-2-x-to-3-0/)"));break;case f.EVENT:case f.BINARY_EVENT:this.onevent(a);break;case f.ACK:case f.BINARY_ACK:this.onack(a);break;case f.DISCONNECT:this.ondisconnect();break;case f.CONNECT_ERROR:this.destroy();let b=Error(a.data.message);b.data=a.data.data,this.emitReserved("connect_error",b)}}onevent(a){let b=a.data||[];ao("emitting event %j",b),null!=a.id&&(ao("attaching ack callback to event"),b.push(this.ack(a.id))),this.connected?this.emitEvent(b):this.receiveBuffer.push(Object.freeze(b))}emitEvent(a){if(this._anyListeners&&this._anyListeners.length)for(let b of this._anyListeners.slice())b.apply(this,a);super.emit.apply(this,a),this._pid&&a.length&&"string"==typeof a[a.length-1]&&(this._lastOffset=a[a.length-1])}ack(a){let b=this,c=!1;return function(...d){c||(c=!0,ao("sending ack %j",d),b.packet({type:f.ACK,id:a,data:d}))}}onack(a){let b=this.acks[a.id];"function"!=typeof b?ao("bad ack %s",a.id):(delete this.acks[a.id],ao("calling ack %s with %j",a.id,a.data),b.withError&&a.data.unshift(null),b.apply(this,a.data))}onconnect(a,b){ao("socket connected with id %s",a),this.id=a,this.recovered=b&&this._pid===b,this._pid=b,this.connected=!0,this.emitBuffered(),this._drainQueue(!0),this.emitReserved("connect")}emitBuffered(){this.receiveBuffer.forEach(a=>this.emitEvent(a)),this.receiveBuffer=[],this.sendBuffer.forEach(a=>{this.notifyOutgoingListeners(a),this.packet(a)}),this.sendBuffer=[]}ondisconnect(){ao("server disconnect (%s)",this.nsp),this.destroy(),this.onclose("io server disconnect")}destroy(){this.subs&&(this.subs.forEach(a=>a()),this.subs=void 0),this.io._destroy(this)}disconnect(){return this.connected&&(ao("performing disconnect (%s)",this.nsp),this.packet({type:f.DISCONNECT})),this.destroy(),this.connected&&this.onclose("io client disconnect"),this}close(){return this.disconnect()}compress(a){return this.flags.compress=a,this}get volatile(){return this.flags.volatile=!0,this}timeout(a){return this.flags.timeout=a,this}onAny(a){return this._anyListeners=this._anyListeners||[],this._anyListeners.push(a),this}prependAny(a){return this._anyListeners=this._anyListeners||[],this._anyListeners.unshift(a),this}offAny(a){if(!this._anyListeners)return this;if(a){let b=this._anyListeners;for(let c=0;c<b.length;c++)if(a===b[c]){b.splice(c,1);break}}else this._anyListeners=[];return this}listenersAny(){return this._anyListeners||[]}onAnyOutgoing(a){return this._anyOutgoingListeners=this._anyOutgoingListeners||[],this._anyOutgoingListeners.push(a),this}prependAnyOutgoing(a){return this._anyOutgoingListeners=this._anyOutgoingListeners||[],this._anyOutgoingListeners.unshift(a),this}offAnyOutgoing(a){if(!this._anyOutgoingListeners)return this;if(a){let b=this._anyOutgoingListeners;for(let c=0;c<b.length;c++)if(a===b[c]){b.splice(c,1);break}}else this._anyOutgoingListeners=[];return this}listenersAnyOutgoing(){return this._anyOutgoingListeners||[]}notifyOutgoingListeners(a){if(this._anyOutgoingListeners&&this._anyOutgoingListeners.length)for(let b of this._anyOutgoingListeners.slice())b.apply(this,a.data)}}var ar=a.i(32882);function as(a){a=a||{},this.ms=a.min||100,this.max=a.max||1e4,this.factor=a.factor||2,this.jitter=a.jitter>0&&a.jitter<=1?a.jitter:0,this.attempts=0}as.prototype.duration=function(){var a=this.ms*Math.pow(this.factor,this.attempts++);if(this.jitter){var b=Math.random(),c=Math.floor(b*this.jitter*a);a=(1&Math.floor(10*b))==0?a-c:a+c}return 0|Math.min(a,this.max)},as.prototype.reset=function(){this.attempts=0},as.prototype.setMin=function(a){this.ms=a},as.prototype.setMax=function(a){this.max=a},as.prototype.setJitter=function(a){this.jitter=a};let at=(0,A.default)("socket.io-client:manager");class au extends q{constructor(a,b){var c;super(),this.nsps={},this.subs=[],a&&"object"==typeof a&&(b=a,a=void 0),(b=b||{}).path=b.path||"/socket.io",this.opts=b,y(this,b),this.reconnection(!1!==b.reconnection),this.reconnectionAttempts(b.reconnectionAttempts||1/0),this.reconnectionDelay(b.reconnectionDelay||1e3),this.reconnectionDelayMax(b.reconnectionDelayMax||5e3),this.randomizationFactor(null!=(c=b.randomizationFactor)?c:.5),this.backoff=new as({min:this.reconnectionDelay(),max:this.reconnectionDelayMax(),jitter:this.randomizationFactor()}),this.timeout(null==b.timeout?2e4:b.timeout),this._readyState="closed",this.uri=a;const d=b.parser||ar;this.encoder=new d.Encoder,this.decoder=new d.Decoder,this._autoConnect=!1!==b.autoConnect,this._autoConnect&&this.open()}reconnection(a){return arguments.length?(this._reconnection=!!a,a||(this.skipReconnect=!0),this):this._reconnection}reconnectionAttempts(a){return void 0===a?this._reconnectionAttempts:(this._reconnectionAttempts=a,this)}reconnectionDelay(a){var b;return void 0===a?this._reconnectionDelay:(this._reconnectionDelay=a,null==(b=this.backoff)||b.setMin(a),this)}randomizationFactor(a){var b;return void 0===a?this._randomizationFactor:(this._randomizationFactor=a,null==(b=this.backoff)||b.setJitter(a),this)}reconnectionDelayMax(a){var b;return void 0===a?this._reconnectionDelayMax:(this._reconnectionDelayMax=a,null==(b=this.backoff)||b.setMax(a),this)}timeout(a){return arguments.length?(this._timeout=a,this):this._timeout}maybeReconnectOnOpen(){!this._reconnecting&&this._reconnection&&0===this.backoff.attempts&&this.reconnect()}open(a){if(at("readyState %s",this._readyState),~this._readyState.indexOf("open"))return this;at("opening %s",this.uri),this.engine=new aa(this.uri,this.opts);let b=this.engine,c=this;this._readyState="opening",this.skipReconnect=!1;let d=an(b,"open",function(){c.onopen(),a&&a()}),e=b=>{at("error"),this.cleanup(),this._readyState="closed",this.emitReserved("error",b),a?a(b):this.maybeReconnectOnOpen()},f=an(b,"error",e);if(!1!==this._timeout){let a=this._timeout;at("connect attempt will timeout after %d",a);let c=this.setTimeoutFn(()=>{at("connect attempt timed out after %d",a),d(),e(Error("timeout")),b.close()},a);this.opts.autoUnref&&c.unref(),this.subs.push(()=>{this.clearTimeoutFn(c)})}return this.subs.push(d),this.subs.push(f),this}connect(a){return this.open(a)}onopen(){at("open"),this.cleanup(),this._readyState="open",this.emitReserved("open");let a=this.engine;this.subs.push(an(a,"ping",this.onping.bind(this)),an(a,"data",this.ondata.bind(this)),an(a,"error",this.onerror.bind(this)),an(a,"close",this.onclose.bind(this)),an(this.decoder,"decoded",this.ondecoded.bind(this)))}onping(){this.emitReserved("ping")}ondata(a){try{this.decoder.add(a)}catch(a){this.onclose("parse error",a)}}ondecoded(a){r(()=>{this.emitReserved("packet",a)},this.setTimeoutFn)}onerror(a){at("error",a),this.emitReserved("error",a)}socket(a,b){let c=this.nsps[a];return c?this._autoConnect&&!c.active&&c.connect():(c=new aq(this,a,b),this.nsps[a]=c),c}_destroy(a){for(let a of Object.keys(this.nsps))if(this.nsps[a].active)return void at("socket %s is still active, skipping close",a);this._close()}_packet(a){at("writing packet %j",a);let b=this.encoder.encode(a);for(let c=0;c<b.length;c++)this.engine.write(b[c],a.options)}cleanup(){at("cleanup"),this.subs.forEach(a=>a()),this.subs.length=0,this.decoder.destroy()}_close(){at("disconnect"),this.skipReconnect=!0,this._reconnecting=!1,this.onclose("forced close")}disconnect(){return this._close()}onclose(a,b){var c;at("closed due to %s",a),this.cleanup(),null==(c=this.engine)||c.close(),this.backoff.reset(),this._readyState="closed",this.emitReserved("close",a,b),this._reconnection&&!this.skipReconnect&&this.reconnect()}reconnect(){if(this._reconnecting||this.skipReconnect)return this;let a=this;if(this.backoff.attempts>=this._reconnectionAttempts)at("reconnect failed"),this.backoff.reset(),this.emitReserved("reconnect_failed"),this._reconnecting=!1;else{let b=this.backoff.duration();at("will wait %dms before reconnect attempt",b),this._reconnecting=!0;let c=this.setTimeoutFn(()=>{a.skipReconnect||(at("attempting reconnect"),this.emitReserved("reconnect_attempt",a.backoff.attempts),a.skipReconnect||a.open(b=>{b?(at("reconnect attempt error"),a._reconnecting=!1,a.reconnect(),this.emitReserved("reconnect_error",b)):(at("reconnect success"),a.onreconnect())}))},b);this.opts.autoUnref&&c.unref(),this.subs.push(()=>{this.clearTimeoutFn(c)})}}onreconnect(){let a=this.backoff.attempts;this._reconnecting=!1,this.backoff.reset(),this.emitReserved("reconnect",a)}}let av=(0,A.default)("socket.io-client"),aw={};function ax(a,b){let c;"object"==typeof a&&(b=a,a=void 0);let d=function(a,b="",c){let d=a;c=c||"u">typeof location&&location,null==a&&(a=c.protocol+"//"+c.host),"string"==typeof a&&("/"===a.charAt(0)&&(a="/"===a.charAt(1)?c.protocol+a:c.host+a),/^(https?|wss?):\/\//.test(a)||(ab("protocol-less url %s",a),a=void 0!==c?c.protocol+"//"+a:"https://"+a),ab("parse %s",a),d=W(a)),!d.port&&(/^(http|ws)$/.test(d.protocol)?d.port="80":/^(http|ws)s$/.test(d.protocol)&&(d.port="443")),d.path=d.path||"/";let e=-1!==d.host.indexOf(":")?"["+d.host+"]":d.host;return d.id=d.protocol+"://"+e+":"+d.port+b,d.href=d.protocol+"://"+e+(c&&c.port===d.port?"":":"+d.port),d}(a,(b=b||{}).path||"/socket.io"),e=d.source,f=d.id,g=d.path,h=aw[f]&&g in aw[f].nsps;return b.forceNew||b["force new connection"]||!1===b.multiplex||h?(av("ignoring socket cache for %s",e),c=new au(e,b)):(aw[f]||(av("new io instance for %s",e),aw[f]=new au(e,b)),c=aw[f]),d.query&&!b.query&&(b.query=d.queryKey),c.socket(d.path,b)}Object.assign(ax,{Manager:au,Socket:aq,io:ax,connect:ax}),a.s(["io",0,ax],83915)},54124,a=>{"use strict";var b=a.i(87924),c=a.i(72131),d=a.i(10450),e=a.i(99813),f=a.i(83915),g=a.i(80087),h=a.i(96221),i=a.i(5151),j=a.i(60137);let k=(0,j.default)("play",[["path",{d:"M5 5a2 2 0 0 1 3.008-1.728l11.997 6.998a2 2 0 0 1 .003 3.458l-12 7A2 2 0 0 1 5 19z",key:"10ikf1"}]]);var l=a.i(33441);let m=(0,j.default)("square-pen",[["path",{d:"M12 3H5a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h14a2 2 0 0 0 2-2v-7",key:"1m0v6g"}],["path",{d:"M18.375 2.625a1 1 0 0 1 3 3l-9.013 9.014a2 2 0 0 1-.853.505l-2.873.84a.5.5 0 0 1-.62-.62l.84-2.873a2 2 0 0 1 .506-.852z",key:"ohrbg2"}]]);var n=a.i(53155),o=a.i(39524),p=a.i(65025),q=a.i(91399);let r=(0,c.forwardRef)(function({tabId:a,cwd:j,env:r,worktreePath:s,command:u,className:v="",initialTodos:w,initialClaudeStatus:x,isActive:y,onTodosUpdated:z,onStatusChange:A},B){let C=(0,c.useRef)(null),D=(0,c.useRef)(null),E=(0,c.useRef)(null),F=(0,c.useRef)(null),G=(0,c.useRef)(a),[H,I]=(0,c.useState)(!1),J=(0,c.useRef)(!1),K=(0,c.useRef)(y),L=(0,c.useRef)("idle"),M=(0,c.useRef)(!1),N=(0,c.useRef)(!1),O=(0,c.useRef)(null),P=(0,c.useRef)(null),Q=(0,c.useRef)(null),R=(0,c.useRef)(0),[S,T]=(0,c.useState)("idle"),[U,V]=(0,c.useState)(x??"idle"),W=(0,c.useRef)(x??"idle"),[X,Y]=(0,c.useState)(w??[]),[Z,$]=(0,c.useState)(!1),{effectiveTheme:_}=(0,g.useTheme)(),aa=(0,c.useRef)(A);aa.current=A;let ab="dark"===_,ac=ab?{background:"#1e1e1e",foreground:"#d4d4d4",cursor:"#d4d4d4",selectionBackground:"#264f78"}:{background:"#ffffff",foreground:"#1e1e1e",cursor:"#1e1e1e",selectionBackground:"#add6ff"};async function ad(a){try{await fetch((0,q.apiUrl)(`/api/internal/tabs/${a}/interrupt`),{method:"POST"})}catch(a){console.warn("[TerminalView] Failed to notify interrupt:",a)}}function ae(){let a=F.current,b=D.current,c=G.current;a&&a.connected&&b&&c&&a.emit("resize",{sessionId:c,cols:b.cols,rows:b.rows})}function af(a){a.write("\x1b[2J\x1b[3J\x1b[H")}async function ag(b,c,d){T("connecting");try{var e,g,h,i;let k,l,m=await fetch((0,q.apiUrl)("/api/terminal/sessions"),{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({cwd:j,env:r,worktreePath:s,sessionId:b,command:u}),signal:d});if(!m.ok){let a=await m.text().catch(()=>"");throw Error(`Failed to create session: ${m.status} ${a}`)}let n=await m.json();if(d.aborted)return;G.current=n.sessionId,n.reused||af(c),e=n.sessionId,g=n.reused,h=c,i=d,O.current?.dispose(),O.current=null,F.current&&(F.current.removeAllListeners(),F.current.disconnect()),F.current=k=(0,f.io)((0,q.getServerUrl)(),{transports:["polling","websocket"]}),l=!1,k.on("connect",()=>{let a=M.current;M.current=!0,a?h.writeln("\x1b[90mReconnected.\x1b[0m"):g?(N.current=!0,af(h)):h.writeln("\x1b[90mConnected.\x1b[0m"),T("connected"),R.current=0,k.emit("join",{room:`tab:${e}`,mode:"terminal"}),a&&K.current&&h.focus()}),k.on("output",({data:a})=>{g&&!l?(l=!0,h.write(a,()=>{N.current=!1,E.current?.fit();let a=D.current;if(a){let b=64===a.cols?63:64;a.resize(b,a.rows),ae(),setTimeout(()=>{E.current?.fit(),ae()},50)}h.scrollToBottom()})):h.write(a)}),k.on("exit",({exitCode:a})=>{console.log("[TerminalView] PTY exited with code:",a),T("exited"),G.current=null,F.current=null}),k.on("error",({message:a})=>{if(console.error("[TerminalView] Socket error message:",a),a.startsWith("Session not found")&&R.current<1){R.current+=1,ah();return}T("error")}),k.on("disconnect",()=>{i.aborted||T(a=>"exited"===a||"paused"===a||"idle"===a?a:"exited")}),k.on("status-changed",({status:a})=>{V(a)}),k.on("todos-updated",({todos:b})=>{Y(b),z?.(a,b)}),k.on("editor:open",({sessionId:a,content:b})=>{window.dispatchEvent(new CustomEvent("editor-session-open-request",{detail:{sessionId:a,content:b}}))}),O.current=h.onData(a=>{"\x1b"===a&&("running"===W.current||"waiting"===W.current)&&G.current&&ad(G.current),k.connected&&G.current&&k.emit("input",{sessionId:G.current,data:a})})}catch(a){if(a instanceof Error&&"AbortError"===a.name)return;console.error("[TerminalView] connectSession error:",a instanceof Error?a.message:String(a)),T("error")}}async function ah(){let b=D.current;if(!b)return;let c=new AbortController;await ag(a,b,c.signal)}(0,c.useEffect)(()=>{aa.current?.(a,S,U)},[a,S,U]),(0,c.useLayoutEffect)(()=>{K.current=y}),(0,c.useLayoutEffect)(()=>{L.current=S}),(0,c.useLayoutEffect)(()=>{W.current=U}),(0,c.useEffect)(()=>{y&&D.current?.focus()},[y]),(0,c.useEffect)(()=>{if(H)D.current?.blur();else if(y){let a=C.current?.querySelector("textarea.xterm-helper-textarea");a?.focus()}},[H,y]),(0,c.useEffect)(()=>{"connected"===S&&E.current&&(E.current.fit(),N.current||ae())},[S]),(0,c.useEffect)(()=>{if(!C.current)return;let b=C.current,c=new d.Terminal({cursorBlink:!0,fontSize:13,fontFamily:'"Cascadia Code", "Fira Code", "Menlo", monospace',theme:ac,allowProposedApi:!0}),f=new e.FitAddon;c.loadAddon(f),c.open(C.current),f.fit(),D.current=c,E.current=f,K.current&&c.focus(),c.attachCustomKeyEventHandler(()=>!J.current),c.buffer.onBufferChange(a=>{"normal"===a.type&&c.refresh(0,c.rows-1)});let g=0,h=a=>{let b=performance.now();""===a.data&&b-g<100?a.stopImmediatePropagation():g=b};b.addEventListener("compositionend",h,!0);let i=new ResizeObserver(()=>{!J.current&&(f.fit(),N.current||ae())});i.observe(C.current);let j=new AbortController;return ag(a,c,j.signal),()=>{j.abort(),i.disconnect(),b.removeEventListener("compositionend",h,!0),O.current?.dispose(),O.current=null,c.dispose(),D.current=null,E.current=null,F.current?.removeAllListeners(),F.current?.disconnect(),F.current=null}},[]),(0,c.useEffect)(()=>{D.current&&(D.current.options.theme=ac)},[ab]),(0,c.useEffect)(()=>{function a(){J.current=!0,D.current?.blur()}function b(){if(setTimeout(()=>{let a=D.current;if(a){let b=64===a.cols?63:64;a.resize(b,a.rows),ae(),setTimeout(()=>{J.current=!1,E.current?.fit(),ae()},100)}else J.current=!1},300),!K.current)return;let a=C.current?.querySelector("textarea.xterm-helper-textarea");a?.focus()}return window.addEventListener("editor-session-open",a),window.addEventListener("editor-session-done",b),()=>{window.removeEventListener("editor-session-open",a),window.removeEventListener("editor-session-done",b)}},[]),(0,c.useEffect)(()=>{function a(a){let b=F.current;if(!b||!b.connected||P.current)return;P.current=setTimeout(()=>{P.current=null,Q.current&&(b.off("health-check-ack",Q.current),Q.current=null),b.disconnect(),b.connect(),T("connecting")},6e3);let c=()=>{P.current&&(clearTimeout(P.current),P.current=null),Q.current=null,a.refocus&&K.current&&D.current?.focus()};Q.current=c,b.once("health-check-ack",c),b.emit("health-check")}function b(){"visible"===document.visibilityState&&a({refocus:!0})}let c=setInterval(()=>{"visible"!==document.visibilityState||"connected"===L.current&&a({refocus:!1})},8e3);return document.addEventListener("visibilitychange",b),()=>{document.removeEventListener("visibilitychange",b),clearInterval(c),P.current&&(clearTimeout(P.current),P.current=null),Q.current&&(F.current?.off("health-check-ack",Q.current),Q.current=null)}},[]),(0,c.useImperativeHandle)(B,()=>({sendInput:a=>{let b=F.current,c=G.current;b?.connected&&c&&b.emit("input",{sessionId:c,data:a})},focus:()=>{D.current?.focus()}}));let ai=(0,c.useCallback)(()=>{navigator.clipboard.writeText(a).then(()=>{$(!0),setTimeout(()=>$(!1),2e3)})},[a]),aj="connecting"===S,ak="paused"===S||"exited"===S||"error"===S,al="connected"===S,am=X.filter(a=>"deleted"!==a.status),an=am.filter(a=>"completed"===a.status).length,ao=am.length,ap=a.length>8?`${a.slice(0,8)}…`:a;return(0,b.jsxs)(b.Fragment,{children:[(0,b.jsxs)("div",{className:`flex flex-col h-full min-h-0 ${v}`,children:[(0,b.jsxs)("div",{className:"flex items-center gap-2 px-2 py-1 border-b border-border flex-shrink-0 bg-card",children:[(0,b.jsx)("span",{className:"font-mono text-xs text-muted-foreground",title:a,children:ap}),(0,b.jsx)(o.Button,{variant:"ghost",size:"icon-xs",onClick:ai,className:"text-muted-foreground hover:text-foreground",title:"Copy tab ID",children:Z?(0,b.jsx)(l.Check,{className:"w-3 h-3 text-success"}):(0,b.jsx)(i.Copy,{className:"w-3 h-3"})}),(0,b.jsxs)(o.Button,{size:"xs",onClick:function(){let a=F.current,b=G.current;if(!a||!a.connected||!b)return;let c=`claude --dangerously-skip-permissions --resume ${b} 2>/dev/null || claude --dangerously-skip-permissions --session-id ${b}
|
|
33
|
+
`;a.emit("input",{sessionId:b,data:c})},disabled:!al,title:"Run Claude",children:[(0,b.jsx)(k,{className:"w-3 h-3"}),"Run Claude"]}),(0,b.jsxs)(o.Button,{variant:"ghost",size:"xs",onClick:()=>I(!0),disabled:!al,className:"text-muted-foreground hover:text-foreground",title:"Open editor input",children:[(0,b.jsx)(m,{className:"w-3 h-3"}),"Open Editor"]}),ao>0&&(0,b.jsxs)("div",{className:"ml-auto flex items-center gap-1.5 shrink-0",title:X.find(a=>"in_progress"===a.status)?.content??"",children:[(0,b.jsx)(p.Progress,{value:an,max:ao,className:"w-16 gap-0 [&_[data-slot=progress-track]]:h-[3px]"}),(0,b.jsxs)("span",{className:"text-[10px] text-muted-foreground tabular-nums",children:[an,"/",ao]})]})]}),(0,b.jsxs)("div",{className:"relative flex-1 min-h-0 overflow-hidden",children:[(0,b.jsx)("div",{ref:C,className:"w-full h-full",style:{padding:"4px"}}),aj&&(0,b.jsx)("div",{className:"absolute inset-0 flex items-center justify-center bg-background",children:(0,b.jsxs)("div",{className:"flex items-center gap-2 text-muted-foreground text-xs",children:[(0,b.jsx)(h.Loader2,{className:"w-4 h-4 animate-spin"}),(0,b.jsx)("span",{children:"Connecting..."})]})}),ak&&(0,b.jsx)("div",{className:"absolute inset-0 flex items-center justify-center bg-background/90",children:(0,b.jsxs)("div",{className:"text-center space-y-2",children:["error"===S&&(0,b.jsx)("p",{className:"text-xs text-destructive",children:"Connection failed"}),"exited"===S&&(0,b.jsx)("p",{className:"text-xs text-muted-foreground",children:"Session ended"}),"paused"===S&&(0,b.jsx)("p",{className:"text-xs text-muted-foreground",children:"Paused"}),(0,b.jsx)(o.Button,{size:"xs",onClick:ah,children:"Reconnect"})]})})]})]}),(0,b.jsx)(n.MonacoEditorModal,{open:H,onOpenChange:a=>{a.open||I(!1)},onSubmit:a=>{D.current&&a&&D.current.paste(a),I(!1)},title:"Terminal Input",submitLabel:"Paste"})]})});a.s(["TerminalView",0,r],54124)},88381,a=>{"use strict";var b=a.i(72131),c=a.i(83915),d=a.i(91399);a.s(["useTaskEvents",0,function(a){let e=(0,b.useRef)(null),f=(0,b.useRef)(a);(0,b.useLayoutEffect)(()=>{f.current=a}),(0,b.useEffect)(()=>{let a=(0,c.io)((0,d.getServerUrl)(),{transports:["polling","websocket"]});return e.current=a,a.on("task:created",({task:a})=>{f.current.onTaskCreated(a)}),a.on("task:updated",({task:a})=>{f.current.onTaskUpdated(a)}),a.on("task:deleted",({taskId:a})=>{f.current.onTaskDeleted(a)}),()=>{a.disconnect(),e.current=null}},[])}])}];
|
|
34
34
|
|
|
35
|
-
//# sourceMappingURL=%5Broot-of-the-server%
|
|
35
|
+
//# sourceMappingURL=%5Broot-of-the-server%5D__07kf5h-._.js.map
|