@xterm/addon-image 0.10.0-beta.152 → 0.10.0-beta.153

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.
@@ -14,5 +14,5 @@
14
14
  * Copyright (c) Microsoft Corporation. All rights reserved.
15
15
  * Licensed under the MIT License. See License.txt in the project root for license information.
16
16
  *--------------------------------------------------------------------------------------------*/
17
- var Me=Object.create;var ae=Object.defineProperty;var xe=Object.getOwnPropertyDescriptor;var Le=Object.getOwnPropertyNames;var ke=Object.getPrototypeOf,He=Object.prototype.hasOwnProperty;var x=(i,A)=>()=>(A||i((A={exports:{}}).exports,A),A.exports);var Ne=(i,A,e,t)=>{if(A&&typeof A=="object"||typeof A=="function")for(let s of Le(A))!He.call(i,s)&&s!==e&&ae(i,s,{get:()=>A[s],enumerable:!(t=xe(A,s))||t.enumerable});return i};var G=(i,A,e)=>(e=i!=null?Me(ke(i)):{},Ne(A||!i||!i.__esModule?ae(e,"default",{value:i,enumerable:!0}):e,i));var F=x(h=>{"use strict";Object.defineProperty(h,"__esModule",{value:!0});h.DEFAULT_FOREGROUND=h.DEFAULT_BACKGROUND=h.PALETTE_ANSI_256=h.PALETTE_VT340_GREY=h.PALETTE_VT340_COLOR=h.normalizeHLS=h.normalizeRGB=h.nearestColorIndex=h.fromRGBA8888=h.toRGBA8888=h.alpha=h.blue=h.green=h.red=h.BIG_ENDIAN=void 0;h.BIG_ENDIAN=new Uint8Array(new Uint32Array([4278190080]).buffer)[0]===255;h.BIG_ENDIAN&&console.warn("BE platform detected. This version of node-sixel works only on LE properly.");function ge(i){return i&255}h.red=ge;function Ie(i){return i>>>8&255}h.green=Ie;function he(i){return i>>>16&255}h.blue=he;function Re(i){return i>>>24&255}h.alpha=Re;function d(i,A,e,t=255){return((t&255)<<24|(e&255)<<16|(A&255)<<8|i&255)>>>0}h.toRGBA8888=d;function Te(i){return[i&255,i>>8&255,i>>16&255,i>>>24]}h.fromRGBA8888=Te;function ye(i,A){let e=ge(i),t=Ie(i),s=he(i),r=Number.MAX_SAFE_INTEGER,n=-1;for(let o=0;o<A.length;++o){let a=e-A[o][0],g=t-A[o][1],l=s-A[o][2],c=a*a+g*g+l*l;if(!c)return o;c<r&&(r=c,n=o)}return n}h.nearestColorIndex=ye;function X(i,A,e){return Math.max(i,Math.min(e,A))}function j(i,A,e){return e<0&&(e+=1),e>1&&(e-=1),e*6<1?A+(i-A)*6*e:e*2<1?i:e*3<2?A+(i-A)*(4-e*6):A}function ve(i,A,e){if(!e){let r=Math.round(A*255);return d(r,r,r)}let t=A<.5?A*(1+e):A+e-A*e,s=2*A-t;return d(X(0,255,Math.round(j(t,s,i+1/3)*255)),X(0,255,Math.round(j(t,s,i)*255)),X(0,255,Math.round(j(t,s,i-1/3)*255)))}function I(i,A,e){return(4278190080|Math.round(e/100*255)<<16|Math.round(A/100*255)<<8|Math.round(i/100*255))>>>0}h.normalizeRGB=I;function Ge(i,A,e){return ve((i+240%360)/360,A/100,e/100)}h.normalizeHLS=Ge;h.PALETTE_VT340_COLOR=new Uint32Array([I(0,0,0),I(20,20,80),I(80,13,13),I(20,80,20),I(80,20,80),I(20,80,80),I(80,80,20),I(53,53,53),I(26,26,26),I(33,33,60),I(60,26,26),I(33,60,33),I(60,33,60),I(33,60,60),I(60,60,33),I(80,80,80)]);h.PALETTE_VT340_GREY=new Uint32Array([I(0,0,0),I(13,13,13),I(26,26,26),I(40,40,40),I(6,6,6),I(20,20,20),I(33,33,33),I(46,46,46),I(0,0,0),I(13,13,13),I(26,26,26),I(40,40,40),I(6,6,6),I(20,20,20),I(33,33,33),I(46,46,46)]);h.PALETTE_ANSI_256=(()=>{let i=[d(0,0,0),d(205,0,0),d(0,205,0),d(205,205,0),d(0,0,238),d(205,0,205),d(0,250,205),d(229,229,229),d(127,127,127),d(255,0,0),d(0,255,0),d(255,255,0),d(92,92,255),d(255,0,255),d(0,255,255),d(255,255,255)],A=[0,95,135,175,215,255];for(let e=0;e<6;++e)for(let t=0;t<6;++t)for(let s=0;s<6;++s)i.push(d(A[e],A[t],A[s]));for(let e=8;e<=238;e+=10)i.push(d(e,e,e));return new Uint32Array(i)})();h.DEFAULT_BACKGROUND=d(0,0,0,255);h.DEFAULT_FOREGROUND=d(255,255,255,255)});var le=x(K=>{"use strict";Object.defineProperty(K,"__esModule",{value:!0});K.InWasm=void 0;function b(i){if(typeof Buffer<"u")return Buffer.from(i,"base64");let A=atob(i),e=new Uint8Array(A.length);for(let t=0;t<e.length;++t)e[t]=A.charCodeAt(t);return e}function Pe(i){if(i.d){let{t:A,s:e,d:t}=i,s,r,n=WebAssembly;return A===2?e?()=>s||(s=b(t)):()=>Promise.resolve(s||(s=b(t))):A===1?e?()=>r||(r=new n.Module(s||(s=b(t)))):()=>r?Promise.resolve(r):n.compile(s||(s=b(t))).then(o=>r=o):e?o=>new n.Instance(r||(r=new n.Module(s||(s=b(t)))),o):o=>r?n.instantiate(r,o):n.instantiate(s||(s=b(t)),o).then(a=>(r=a.module)&&a.instance)}if(typeof _wasmCtx>"u")throw new Error('must run "inwasm"');_wasmCtx.add(i)}K.InWasm=Pe});var Ce=x(te=>{"use strict";Object.defineProperty(te,"__esModule",{value:!0});var We=le(),qe=(0,We.InWasm)({s:1,t:0,d:"AGFzbQEAAAABBQFgAAF/Ag8BA2VudgZtZW1vcnkCAAEDAwIAAAcNAgNkZWMAAANlbmQAAQqxAwKuAQEFf0GIKCgCAEGgKGohAUGEKCgCACIAQYAoKAIAQQFrQXxxIgJIBEAgAkGgKGohAyAAQaAoaiEAA0AgAC0AA0ECdCgCgCAgAC0AAkECdCgCgBggAC0AAUECdCgCgBAgAC0AAEECdCgCgAhycnIiBEH///8HSwRAQQEPCyABIAQ2AgAgAUEDaiEBIABBBGoiACADSQ0ACwtBhCggAjYCAEGIKCABQaAoazYCAEEAC/4BAQZ/AkBBgCgoAgAiAUGEKCgCACIAa0EFTgRAQQEhAxAADQFBgCgoAgAhAUGEKCgCACEAC0EBIQMgASAAayIEQQJIDQAgAEGhKGotAABBAnQoAoAQIABBoChqLQAAQQJ0KAKACHIhAQJAIARBAkYEQEEBIQIMAQtBASECIAAtAKIoIgVBPUcEQEECIQIgBUECdCgCgBggAXIhAQsgBEEERw0AIAAtAKMoIgBBPUYNACACQQFqIQIgAEECdCgCgCAgAXIhAQsgAUH///8HSw0AQYgoKAIAQaAoaiABNgIAQYgoQYgoKAIAIAJqIgA2AgAgAEGQKCgCAEchAwsgAwsAdglwcm9kdWNlcnMBDHByb2Nlc3NlZC1ieQEFY2xhbmdWMTguMC4wIChodHRwczovL2dpdGh1Yi5jb20vbGx2bS9sbHZtLXByb2plY3QgZDFlNjg1ZGY0NWRjNTk0NGI0M2QyNTQ3ZDAxMzhjZDRhM2VlNGVmZSkALA90YXJnZXRfZmVhdHVyZXMCKw9tdXRhYmxlLWdsb2JhbHMrCHNpZ24tZXh0"}),D=new Uint8Array("ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".split("").map(i=>i.charCodeAt(0))),S=new Uint32Array(1024);S.fill(4278190080);for(let i=0;i<D.length;++i)S[D[i]]=i<<2;for(let i=0;i<D.length;++i)S[256+D[i]]=i>>4|(i<<4&255)<<8;for(let i=0;i<D.length;++i)S[512+D[i]]=i>>2<<8|(i<<6&255)<<16;for(let i=0;i<D.length;++i)S[768+D[i]]=i<<16;var ze=new Uint8Array(0),Ae=class{constructor(A){this.keepSize=A}get data8(){return this._inst?this._d.subarray(0,this._m32[1282]):ze}release(){this._inst&&(this._mem.buffer.byteLength>this.keepSize?this._inst=this._m32=this._d=this._mem=null:(this._m32[1280]=0,this._m32[1281]=0,this._m32[1282]=0))}init(A){let e=this._m32,t=(Math.ceil(A/3)+1288)*4;this._inst?this._mem.buffer.byteLength<t&&(this._mem.grow(Math.ceil((t-this._mem.buffer.byteLength)/65536)),e=new Uint32Array(this._mem.buffer,0),this._d=new Uint8Array(this._mem.buffer,1288*4)):(this._mem=new WebAssembly.Memory({initial:Math.ceil(t/65536)}),this._inst=qe({env:{memory:this._mem}}),e=new Uint32Array(this._mem.buffer,0),e.set(S,256),this._d=new Uint8Array(this._mem.buffer,1288*4)),e[1284]=A,e[1283]=Math.ceil(A/3)*4,e[1280]=0,e[1281]=0,e[1282]=0,this._m32=e}put(A,e,t){if(!this._inst)return 1;let s=this._m32;return t-e+s[1280]>s[1283]?1:(this._d.set(A.subarray(e,t),s[1280]),s[1280]+=t-e,s[1280]-s[1281]>=131072?this._inst.exports.dec():0)}end(){return this._inst?this._inst.exports.end():1}};te.default=Ae});var me=x(W=>{"use strict";Object.defineProperty(W,"__esModule",{value:!0});W.LIMITS=void 0;W.LIMITS={CHUNK_SIZE:16384,PALETTE_SIZE:4096,MAX_WIDTH:16384,BYTES:"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AEHAiwIgADcDAEG4iwIgADcDAEGwiwIgADcDAEGoiwIgADcDAEGgiwIgADcDAEGYiwIgADcDAEGQiwIgADcDAEGIiwIgADcDAEGAiwIgADcDAEH4igIgADcDAEHwigIgADcDAEHoigIgADcDAEHgigIgADcDAEHYigIgADcDAEHQigIgADcDAEHIigIgADcDAEHAigIgADcDAEG4igIgADcDAEGwigIgADcDAEGoigIgADcDAEGgigIgADcDAEGYigIgADcDAEGQigIgADcDAEGIigIgADcDAEGAigIgADcDAEH4iQIgADcDAEHwiQIgADcDAEHoiQIgADcDAEHgiQIgADcDAEHYiQIgADcDAEHQiQIgADcDAEHIiQIgADcDAEHAiQIgADcDAEG4iQIgADcDAEGwiQIgADcDAEGoCCgCACIEQf8AakGAAW0hCAJAIARBgQFIDQBBASEBIAhBAiAIQQJKG0EBayICQQFxIQMgBEGBAk4EQCACQX5xIQIDQCABQQl0IgdBEHJBoIkCakGwiQJBgAT8CgAAIAdBsI0CakGwiQJBgAT8CgAAIAFBAmohASACQQJrIgINAAsLIANFDQAgAUEJdEEQckGgiQJqQbCJAkGABPwKAAALAkAgBEEBSA0AIAhBASAIQQFKGyIDQQFxIQUCQCADQQFrIgdFBEBBACEBDAELIANB/v///wdxIQJBACEBA0AgAUEJdCIGQRByQbCJBmpBsIkCQYAE/AoAACAGQZAEckGwiQZqQbCJAkGABPwKAAAgAUECaiEBIAJBAmsiAg0ACwsgBQRAIAFBCXRBEHJBsIkGakGwiQJBgAT8CgAACyAEQQFIDQAgA0EBcSEFIAcEfyADQf7///8HcSECQQAhAQNAIAFBCXQiBkEQckHAiQpqQbCJAkGABPwKAAAgBkGQBHJBwIkKakGwiQJBgAT8CgAAIAFBAmohASACQQJrIgINAAsgAUEHdEEEcgVBBAshASAFBEAgAUECdEHAiQpqQbCJAkGABPwKAAALIARBAUgNACADQQFxIQUgBwR/IANB/v///wdxIQJBACEBA0AgAUEJdCIGQRByQdCJDmpBsIkCQYAE/AoAACAGQZAEckHQiQ5qQbCJAkGABPwKAAAgAUECaiEBIAJBAmsiAg0ACyABQQd0QQRyBUEECyEBIAUEQCABQQJ0QdCJ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"}});var fe=x(u=>{"use strict";Object.defineProperty(u,"__esModule",{value:!0});u.decodeAsync=u.decode=u.Decoder=u.DecoderAsync=void 0;var R=F(),E=me();function Ve(i){if(typeof Buffer<"u")return Buffer.from(i,"base64");let A=atob(i),e=new Uint8Array(A.length);for(let t=0;t<e.length;++t)e[t]=A.charCodeAt(t);return e}var ue=Ve(E.LIMITS.BYTES),T,q=new Uint32Array,ne=class{constructor(){this.bandHandler=A=>1,this.modeHandler=A=>1}handle_band(A){return this.bandHandler(A)}mode_parsed(A){return this.modeHandler(A)}},$e={memoryLimit:2048*65536,sixelColor:R.DEFAULT_FOREGROUND,fillColor:R.DEFAULT_BACKGROUND,palette:R.PALETTE_VT340_COLOR,paletteLimit:E.LIMITS.PALETTE_SIZE,truncate:!0};function pe(i){let A=new ne,e={env:{handle_band:A.handle_band.bind(A),mode_parsed:A.mode_parsed.bind(A)}};return WebAssembly.instantiate(T||ue,e).then(t=>(T=T||t.module,new y(i,t.instance||t,A)))}u.DecoderAsync=pe;var y=class{constructor(A,e,t){if(this._PIXEL_OFFSET=E.LIMITS.MAX_WIDTH+4,this._canvas=q,this._bandWidths=[],this._maxWidth=0,this._minWidth=E.LIMITS.MAX_WIDTH,this._lastOffset=0,this._currentHeight=0,this._opts=Object.assign({},$e,A),this._opts.paletteLimit>E.LIMITS.PALETTE_SIZE)throw new Error(`DecoderOptions.paletteLimit must not exceed ${E.LIMITS.PALETTE_SIZE}`);if(e)t.bandHandler=this._handle_band.bind(this),t.modeHandler=this._initCanvas.bind(this);else{let s=T||(T=new WebAssembly.Module(ue));e=new WebAssembly.Instance(s,{env:{handle_band:this._handle_band.bind(this),mode_parsed:this._initCanvas.bind(this)}})}this._instance=e,this._wasm=this._instance.exports,this._chunk=new Uint8Array(this._wasm.memory.buffer,this._wasm.get_chunk_address(),E.LIMITS.CHUNK_SIZE),this._states=new Uint32Array(this._wasm.memory.buffer,this._wasm.get_state_address(),12),this._palette=new Uint32Array(this._wasm.memory.buffer,this._wasm.get_palette_address(),E.LIMITS.PALETTE_SIZE),this._palette.set(this._opts.palette),this._pSrc=new Uint32Array(this._wasm.memory.buffer,this._wasm.get_p0_address()),this._wasm.init(R.DEFAULT_FOREGROUND,0,this._opts.paletteLimit,0)}get _fillColor(){return this._states[0]}get _truncate(){return this._states[8]}get _rasterWidth(){return this._states[6]}get _rasterHeight(){return this._states[7]}get _width(){return this._states[2]?this._states[2]-4:0}get _height(){return this._states[3]}get _level(){return this._states[9]}get _mode(){return this._states[10]}get _paletteLimit(){return this._states[11]}_initCanvas(A){if(A===2){let e=this.width*this.height;if(e>this._canvas.length){if(this._opts.memoryLimit&&e*4>this._opts.memoryLimit)throw this.release(),new Error("image exceeds memory limit");this._canvas=new Uint32Array(e)}this._maxWidth=this._width}else if(A===1)if(this._level===2){let e=Math.min(this._rasterWidth,E.LIMITS.MAX_WIDTH)*this._rasterHeight;if(e>this._canvas.length){if(this._opts.memoryLimit&&e*4>this._opts.memoryLimit)throw this.release(),new Error("image exceeds memory limit");this._canvas=new Uint32Array(e)}}else this._canvas.length<65536&&(this._canvas=new Uint32Array(65536));return 0}_realloc(A,e){let t=A+e;if(t>this._canvas.length){if(this._opts.memoryLimit&&t*4>this._opts.memoryLimit)throw this.release(),new Error("image exceeds memory limit");let s=new Uint32Array(Math.ceil(t/65536)*65536);s.set(this._canvas),this._canvas=s}}_handle_band(A){let e=this._PIXEL_OFFSET,t=this._lastOffset;if(this._mode===2){let s=this.height-this._currentHeight,r=0;for(;r<6&&s>0;)this._canvas.set(this._pSrc.subarray(e*r,e*r+A),t+A*r),r++,s--;this._lastOffset+=A*r,this._currentHeight+=r}else if(this._mode===1){this._realloc(t,A*6),this._maxWidth=Math.max(this._maxWidth,A),this._minWidth=Math.min(this._minWidth,A);for(let s=0;s<6;++s)this._canvas.set(this._pSrc.subarray(e*s,e*s+A),t+A*s);this._bandWidths.push(A),this._lastOffset+=A*6,this._currentHeight+=6}return 0}get width(){return this._mode!==1?this._width:Math.max(this._maxWidth,this._wasm.current_width())}get height(){return this._mode!==1?this._height:this._wasm.current_width()?this._bandWidths.length*6+this._wasm.current_height():this._bandWidths.length*6}get palette(){return this._palette.subarray(0,this._paletteLimit)}get memoryUsage(){return this._canvas.byteLength+this._wasm.memory.buffer.byteLength+8*this._bandWidths.length}get properties(){return{width:this.width,height:this.height,mode:this._mode,level:this._level,truncate:!!this._truncate,paletteLimit:this._paletteLimit,fillColor:this._fillColor,memUsage:this.memoryUsage,rasterAttributes:{numerator:this._states[4],denominator:this._states[5],width:this._rasterWidth,height:this._rasterHeight}}}init(A=this._opts.fillColor,e=this._opts.palette,t=this._opts.paletteLimit,s=this._opts.truncate){this._wasm.init(this._opts.sixelColor,A,t,s?1:0),e&&this._palette.set(e.subarray(0,E.LIMITS.PALETTE_SIZE)),this._bandWidths.length=0,this._maxWidth=0,this._minWidth=E.LIMITS.MAX_WIDTH,this._lastOffset=0,this._currentHeight=0}decode(A,e=0,t=A.length){let s=e;for(;s<t;){let r=Math.min(t-s,E.LIMITS.CHUNK_SIZE);this._chunk.set(A.subarray(s,s+=r)),this._wasm.decode(0,r)}}decodeString(A,e=0,t=A.length){let s=e;for(;s<t;){let r=Math.min(t-s,E.LIMITS.CHUNK_SIZE);for(let n=0,o=s;n<r;++n,++o)this._chunk[n]=A.charCodeAt(o);s+=r,this._wasm.decode(0,r)}}get data32(){if(this._mode===0||!this.width||!this.height)return q;let A=this._wasm.current_width();if(this._mode===2){let e=this.height-this._currentHeight;if(e>0){let t=this._PIXEL_OFFSET,s=this._lastOffset,r=0;for(;r<6&&e>0;)this._canvas.set(this._pSrc.subarray(t*r,t*r+A),s+A*r),r++,e--;e&&this._canvas.fill(this._fillColor,s+A*r)}return this._canvas.subarray(0,this.width*this.height)}if(this._mode===1){if(this._minWidth===this._maxWidth){let r=!1;if(A)if(A!==this._minWidth)r=!0;else{let n=this._PIXEL_OFFSET,o=this._lastOffset;this._realloc(o,A*6);for(let a=0;a<6;++a)this._canvas.set(this._pSrc.subarray(n*a,n*a+A),o+A*a)}if(!r)return this._canvas.subarray(0,this.width*this.height)}let e=new Uint32Array(this.width*this.height);e.fill(this._fillColor);let t=0,s=0;for(let r=0;r<this._bandWidths.length;++r){let n=this._bandWidths[r];for(let o=0;o<6;++o)e.set(this._canvas.subarray(s,s+=n),t),t+=this.width}if(A){let r=this._PIXEL_OFFSET,n=this._wasm.current_height();for(let o=0;o<n;++o)e.set(this._pSrc.subarray(r*o,r*o+A),t+this.width*o)}return e}return q}get data8(){return new Uint8ClampedArray(this.data32.buffer,0,this.width*this.height*4)}release(){this._canvas=q,this._bandWidths.length=0,this._maxWidth=0,this._minWidth=E.LIMITS.MAX_WIDTH,this._wasm.init(R.DEFAULT_FOREGROUND,0,this._opts.paletteLimit,0)}};u.Decoder=y;function eA(i,A){let e=new y(A);return e.init(),typeof i=="string"?e.decodeString(i):e.decode(i),{width:e.width,height:e.height,data32:e.data32,data8:e.data8}}u.decode=eA;async function AA(i,A){let e=await pe(A);return e.init(),typeof i=="string"?e.decodeString(i):e.decode(i),{width:e.width,height:e.height,data32:e.data32,data8:e.data8}}u.decodeAsync=AA});var ee=G(F());function ce(i){return{dispose:i}}var V=class{constructor(){this._disposables=new Set;this._isDisposed=!1}get isDisposed(){return this._isDisposed}add(A){return this._isDisposed?A.dispose():this._disposables.add(A),A}dispose(){if(!this._isDisposed){this._isDisposed=!0;for(let A of this._disposables)A.dispose();this._disposables.clear()}}clear(){for(let A of this._disposables)A.dispose();this._disposables.clear()}},L=class{constructor(){this._store=new V}dispose(){this._store.dispose()}_register(A){return this._store.add(A)}};L.None=Object.freeze({dispose(){}});var J=class{constructor(){this._isDisposed=!1}get value(){return this._isDisposed?void 0:this._value}set value(A){this._isDisposed||A===this._value||(this._value?.dispose(),this._value=A)}clear(){this.value=void 0}dispose(){this._isDisposed=!0,this._value?.dispose(),this._value=void 0}};var Fe=4096,$=24,m=class i extends L{constructor(e){super();this._terminal=e;this._optionsRefresh=this._register(new J);this._oldOpen=this._terminal._core.open,this._terminal._core.open=t=>{this._oldOpen?.call(this._terminal._core,t),this._open()},this._terminal._core.screenElement&&this._open(),this._optionsRefresh.value=this._terminal._core.optionsService.onOptionChange(t=>{t==="fontSize"&&(this.rescaleCanvas(),this._renderService?.refreshRows(0,this._terminal.rows))}),this._register(ce(()=>{this.removeLayerFromDom(),this._terminal._core&&this._oldOpen&&(this._terminal._core.open=this._oldOpen,this._oldOpen=void 0),this._renderService&&this._oldSetRenderer&&(this._renderService.setRenderer=this._oldSetRenderer,this._oldSetRenderer=void 0),this._renderService=void 0,this.canvas=void 0,this._ctx=void 0,this._placeholderBitmap?.close(),this._placeholderBitmap=void 0,this._placeholder=void 0}))}static createCanvas(e,t,s){let r=(e??document).createElement("canvas");return r.width=t|0,r.height=s|0,r}static createImageData(e,t,s,r){if(typeof ImageData!="function"){let n=e.createImageData(t,s);return r&&n.data.set(new Uint8ClampedArray(r,0,t*s*4)),n}return r?new ImageData(new Uint8ClampedArray(r,0,t*s*4),t,s):new ImageData(t,s)}static createImageBitmap(e){return typeof createImageBitmap!="function"?Promise.resolve(void 0):createImageBitmap(e)}showPlaceholder(e){e?!this._placeholder&&this.cellSize.height!==-1&&this._createPlaceHolder(Math.max(this.cellSize.height+1,$)):(this._placeholderBitmap?.close(),this._placeholderBitmap=void 0,this._placeholder=void 0),this._renderService?.refreshRows(0,this._terminal.rows)}get dimensions(){return this._terminal.dimensions}get cellSize(){return{width:this.dimensions?.css.cell.width||-1,height:this.dimensions?.css.cell.height||-1}}clearLines(e,t){this._ctx?.clearRect(0,e*(this.dimensions?.css.cell.height||0),this.dimensions?.css.canvas.width||0,(++t-e)*(this.dimensions?.css.cell.height||0))}clearAll(){this._ctx?.clearRect(0,0,this.canvas?.width||0,this.canvas?.height||0)}draw(e,t,s,r,n=1){if(!this._ctx)return;let{width:o,height:a}=this.cellSize;if(o===-1||a===-1)return;this._rescaleImage(e,o,a);let g=e.actual,l=Math.ceil(g.width/o),c=t%l*o,C=Math.floor(t/l)*a,Q=s*o,B=r*a,f=n*o+c>g.width?g.width-c:n*o,_=C+a>g.height?g.height-C:a;this._ctx.drawImage(g,Math.floor(c),Math.floor(C),Math.ceil(f),Math.ceil(_),Math.floor(Q),Math.floor(B),Math.ceil(f),Math.ceil(_))}extractTile(e,t){let{width:s,height:r}=this.cellSize;if(s===-1||r===-1)return;this._rescaleImage(e,s,r);let n=e.actual,o=Math.ceil(n.width/s),a=t%o*s,g=Math.floor(t/o)*r,l=s+a>n.width?n.width-a:s,c=g+r>n.height?n.height-g:r,C=i.createCanvas(this.document,l,c),Q=C.getContext("2d");if(Q)return Q.drawImage(n,Math.floor(a),Math.floor(g),Math.floor(l),Math.floor(c),0,0,Math.floor(l),Math.floor(c)),C}drawPlaceholder(e,t,s=1){if(this._ctx){let{width:r,height:n}=this.cellSize;if(r===-1||n===-1||(this._placeholder?n>=this._placeholder.height&&this._createPlaceHolder(n+1):this._createPlaceHolder(Math.max(n+1,$)),!this._placeholder))return;this._ctx.drawImage(this._placeholderBitmap??this._placeholder,e*r,t*n%2?0:1,r*s,n,e*r,t*n,r*s,n)}}rescaleCanvas(){this.canvas&&(this.canvas.width!==this.dimensions.css.canvas.width||this.canvas.height!==this.dimensions.css.canvas.height)&&(this.canvas.width=this.dimensions.css.canvas.width||0,this.canvas.height=this.dimensions.css.canvas.height||0)}_rescaleImage(e,t,s){if(t===e.actualCellSize.width&&s===e.actualCellSize.height)return;let{width:r,height:n}=e.origCellSize;if(t===r&&s===n){e.actual=e.orig,e.actualCellSize.width=r,e.actualCellSize.height=n;return}let o=i.createCanvas(this.document,Math.ceil(e.orig.width*t/r),Math.ceil(e.orig.height*s/n)),a=o.getContext("2d");a&&(a.drawImage(e.orig,0,0,o.width,o.height),e.actual=o,e.actualCellSize.width=t,e.actualCellSize.height=s)}_open(){this._renderService=this._terminal._core._renderService,this._oldSetRenderer=this._renderService.setRenderer.bind(this._renderService),this._renderService.setRenderer=e=>{this.removeLayerFromDom(),this._oldSetRenderer?.call(this._renderService,e)}}insertLayerToDom(){this.document&&this._terminal._core.screenElement?this.canvas||(this.canvas=i.createCanvas(this.document,this.dimensions?.css.canvas.width||0,this.dimensions?.css.canvas.height||0),this.canvas.classList.add("xterm-image-layer"),this._terminal._core.screenElement.appendChild(this.canvas),this._ctx=this.canvas.getContext("2d",{alpha:!0,desynchronized:!0}),this.clearAll()):console.warn("image addon: cannot insert output canvas to DOM, missing document or screenElement")}removeLayerFromDom(){this.canvas&&(this._ctx=void 0,this.canvas.remove(),this.canvas=void 0)}_createPlaceHolder(e=$){this._placeholderBitmap?.close(),this._placeholderBitmap=void 0;let t=32,s=i.createCanvas(this.document,t,e),r=s.getContext("2d",{alpha:!1});if(!r)return;let n=i.createImageData(r,t,e),o=new Uint32Array(n.data.buffer),a=(0,ee.toRGBA8888)(0,0,0),g=(0,ee.toRGBA8888)(255,255,255);o.fill(a);for(let C=0;C<e;++C){let Q=C%2,B=C*t;for(let f=0;f<t;f+=2)o[B+f+Q]=g}r.putImageData(n,0,0);let l=screen.width+t-1&~(t-1)||Fe;this._placeholder=i.createCanvas(this.document,l,e);let c=this._placeholder.getContext("2d",{alpha:!1});if(!c){this._placeholder=void 0;return}for(let C=0;C<l;C+=t)c.drawImage(s,C,0);i.createImageBitmap(this._placeholder).then(C=>this._placeholderBitmap=C)}get document(){return this._terminal._core._coreBrowserService?.window.document}};var w={width:7,height:14},H=class i{constructor(A=0,e=0,t=-1,s=-1){this.imageId=t;this.tileId=s;this._ext=0;this._urlId=0;this._ext=A,this._urlId=e}get ext(){return this._urlId?this._ext&-469762049|this.underlineStyle<<26:this._ext}set ext(A){this._ext=A}get underlineStyle(){return this._urlId?5:(this._ext&469762048)>>26}set underlineStyle(A){this._ext&=-469762049,this._ext|=A<<26&469762048}get underlineColor(){return this._ext&67108863}set underlineColor(A){this._ext&=-67108864,this._ext|=A&67108863}get underlineVariantOffset(){let A=(this._ext&3758096384)>>29;return A<0?A^4294967288:A}set underlineVariantOffset(A){this._ext&=536870911,this._ext|=A<<29&3758096384}get urlId(){return this._urlId}set urlId(A){this._urlId=A}clone(){return new i(this._ext,this._urlId,this.imageId,this.tileId)}isEmpty(){return this.underlineStyle===0&&this._urlId===0&&this.imageId===-1}},k=new H,U=class{constructor(A,e,t){this._terminal=A;this._renderer=e;this._opts=t;this._images=new Map;this._lastId=0;this._lowestId=0;this._fullyCleared=!1;this._needsFullClear=!1;this._pixelLimit=25e5;try{this.setLimit(this._opts.storageLimit)}catch(s){s instanceof Error&&console.error(s.message),console.warn(`storageLimit is set to ${this.getLimit()} MB`)}this._viewportMetrics={cols:this._terminal.cols,rows:this._terminal.rows}}dispose(){this.reset()}reset(){for(let A of this._images.values())A.marker?.dispose();this._images.clear(),this._renderer.clearAll()}getLimit(){return this._pixelLimit*4/1e6}setLimit(A){if(A<.5||A>1e3)throw RangeError("invalid storageLimit, should be at least 0.5 MB and not exceed 1G");this._pixelLimit=A/4*1e6>>>0,this._evictOldest(0)}getUsage(){return this._getStoredPixels()*4/1e6}_getStoredPixels(){let A=0;for(let e of this._images.values())e.orig&&(A+=e.orig.width*e.orig.height,e.actual&&e.actual!==e.orig&&(A+=e.actual.width*e.actual.height));return A}_delImg(A){let e=this._images.get(A);this._images.delete(A),e&&window.ImageBitmap&&e.orig instanceof ImageBitmap&&e.orig.close()}wipeAlternate(){let A=[];for(let[e,t]of this._images.entries())t.bufferType==="alternate"&&(t.marker?.dispose(),A.push(e));for(let e of A)this._delImg(e);this._needsFullClear=!0,this._fullyCleared=!1}advanceCursor(A){if(this._opts.sixelScrolling){let e=this._renderer.cellSize;(e.width===-1||e.height===-1)&&(e=w);let t=Math.ceil(A/e.height);for(let s=1;s<t;++s)this._terminal._core._inputHandler.lineFeed()}}addImage(A){this._evictOldest(A.width*A.height);let e=this._renderer.cellSize;(e.width===-1||e.height===-1)&&(e=w);let t=Math.ceil(A.width/e.width),s=Math.ceil(A.height/e.height),r=++this._lastId,n=this._terminal._core.buffer,o=this._terminal.cols,a=this._terminal.rows,g=n.x,l=n.y,c=g,C=0;this._opts.sixelScrolling||(n.x=0,n.y=0,c=0),this._terminal._core._inputHandler._dirtyRowTracker.markDirty(n.y);for(let _=0;_<s;++_){let v=n.lines.get(n.y+n.ybase);for(let M=0;M<t&&!(c+M>=o);++M)this._writeToCell(v,c+M,r,_*t+M),C++;if(this._opts.sixelScrolling)_<s-1&&this._terminal._core._inputHandler.lineFeed();else if(++n.y>=a)break;n.x=c}this._terminal._core._inputHandler._dirtyRowTracker.markDirty(n.y),this._opts.sixelScrolling?n.x=c:(n.x=g,n.y=l);let Q=[];for(let[_,v]of this._images.entries())v.tileCount<1&&(v.marker?.dispose(),Q.push(_));for(let _ of Q)this._delImg(_);let B=this._terminal.registerMarker(0);B?.onDispose(()=>{this._images.get(r)&&this._delImg(r)}),this._terminal.buffer.active.type==="alternate"&&this._evictOnAlternate();let f={orig:A,origCellSize:e,actual:A,actualCellSize:{...e},marker:B||void 0,tileCount:C,bufferType:this._terminal.buffer.active.type};this._images.set(r,f)}render(A){if(!this._renderer.canvas&&this._images.size&&(this._renderer.insertLayerToDom(),!this._renderer.canvas))return;if(this._renderer.rescaleCanvas(),!this._images.size){this._fullyCleared||(this._renderer.clearAll(),this._fullyCleared=!0,this._needsFullClear=!1),this._renderer.canvas&&this._renderer.removeLayerFromDom();return}this._needsFullClear&&(this._renderer.clearAll(),this._fullyCleared=!0,this._needsFullClear=!1);let{start:e,end:t}=A,s=this._terminal._core.buffer,r=this._terminal._core.cols;this._renderer.clearLines(e,t);for(let n=e;n<=t;++n){let o=s.lines.get(n+s.ydisp);if(!o)return;for(let a=0;a<r;++a)if(o.getBg(a)&268435456){let g=o._extendedAttrs[a]??k,l=g.imageId;if(l===void 0||l===-1)continue;let c=this._images.get(l);if(g.tileId!==-1){let C=g.tileId,Q=a,B=1;for(;++a<r&&o.getBg(a)&268435456&&(g=o._extendedAttrs[a]??k)&&g.imageId===l&&g.tileId===C+B;)B++;a--,c?c.actual&&this._renderer.draw(c,C,Q,n,B):this._opts.showPlaceholder&&this._renderer.drawPlaceholder(Q,n,B),this._fullyCleared=!1}}}}viewportResize(A){if(!this._images.size){this._viewportMetrics=A;return}if(this._viewportMetrics.cols>=A.cols){this._viewportMetrics=A;return}let e=this._terminal._core.buffer,t=e.lines.length,s=this._viewportMetrics.cols-1;for(let r=0;r<t;++r){let n=e.lines.get(r);if(n.getBg(s)&268435456){let o=n._extendedAttrs[s]??k,a=o.imageId;if(a===void 0||a===-1)continue;let g=this._images.get(a);if(!g)continue;let l=Math.ceil((g.actual?.width||0)/g.actualCellSize.width);if(o.tileId%l+1>=l)continue;let c=!1;for(let B=s+1;B>A.cols;++B)if(n._data[B*3+0]&4194303){c=!0;break}if(c)continue;let C=Math.min(A.cols,l-o.tileId%l+s),Q=o.tileId;for(let B=s+1;B<C;++B)this._writeToCell(n,B,a,++Q),g.tileCount++}}this._viewportMetrics=A}getImageAtBufferCell(A,e){let s=this._terminal._core.buffer.lines.get(e);if(s&&s.getBg(A)&268435456){let r=s._extendedAttrs[A]??k;if(r.imageId&&r.imageId!==-1){let n=this._images.get(r.imageId)?.orig;if(window.ImageBitmap&&n instanceof ImageBitmap){let o=m.createCanvas(window.document,n.width,n.height);return o.getContext("2d")?.drawImage(n,0,0,n.width,n.height),o}return n}}}extractTileAtBufferCell(A,e){let s=this._terminal._core.buffer.lines.get(e);if(s&&s.getBg(A)&268435456){let r=s._extendedAttrs[A]??k;if(r.imageId&&r.imageId!==-1&&r.tileId!==-1){let n=this._images.get(r.imageId);if(n)return this._renderer.extractTile(n,r.tileId)}}}_evictOldest(A){let e=this._getStoredPixels(),t=e;for(;this._pixelLimit<t+A&&this._images.size;){let s=this._images.get(++this._lowestId);s&&s.orig&&(t-=s.orig.width*s.orig.height,s.actual&&s.orig!==s.actual&&(t-=s.actual.width*s.actual.height),s.marker?.dispose(),this._delImg(this._lowestId))}return e-t}_writeToCell(A,e,t,s){if(A._data[e*3+2]&268435456){let r=A._extendedAttrs[e];if(r){if(r.imageId!==void 0){let n=this._images.get(r.imageId);n&&n.tileCount--,r.imageId=t,r.tileId=s;return}A._extendedAttrs[e]=new H(r.ext,r.urlId,t,s);return}}A._data[e*3+2]|=268435456,A._extendedAttrs[e]=new H(0,0,t,s)}_evictOnAlternate(){for(let t of this._images.values())t.bufferType==="alternate"&&(t.tileCount=0);let A=this._terminal._core.buffer;for(let t=0;t<this._terminal.rows;++t){let s=A.lines.get(t);if(s){for(let r=0;r<this._terminal.cols;++r)if(s._data[r*3+2]&268435456){let n=s._extendedAttrs[r]?.imageId;if(n){let o=this._images.get(n);o&&o.tileCount++}}}}let e=[];for(let[t,s]of this._images.entries())s.bufferType==="alternate"&&!s.tileCount&&(s.marker?.dispose(),e.push(t));for(let t of e)this._delImg(t)}};var _e=G(Ce());function Y(i){let A="";for(let e=0;e<i.length;++e)A+=String.fromCharCode(i[e]);return A}function ie(i){let A=0;for(let e=0;e<i.length;++e){if(i[e]<48||i[e]>57)throw new Error("illegal char");A=A*10+i[e]-48}return A}function de(i){let A=Y(i);if(!A.match(/^((auto)|(\d+?((px)|(%)){0,1}))$/))throw new Error("illegal size");return A}function Ze(i){if(typeof Buffer<"u")return Buffer.from(Y(i),"base64").toString();let A=atob(Y(i)),e=new Uint8Array(A.length);for(let t=0;t<e.length;++t)e[t]=A.charCodeAt(t);return new TextDecoder().decode(e)}var Be={inline:ie,size:ie,name:Ze,width:de,height:de,preserveAspectRatio:ie},Qe=[70,105,108,101],se=1024,O=class{constructor(){this.state=0;this._buffer=new Uint32Array(se);this._position=0;this._key="";this.fields={}}reset(){this._buffer.fill(0),this.state=0,this._position=0,this.fields={},this._key=""}parse(A,e,t){let s=this.state,r=this._position,n=this._buffer;if(s===1||s===4||s===0&&r>6)return-1;for(let o=e;o<t;++o){let a=A[o];switch(a){case 59:if(!this._storeValue(r))return this._a();s=2,r=0;break;case 61:if(s===0){for(let g=0;g<Qe.length;++g)if(n[g]!==Qe[g])return this._a();s=2,r=0}else if(s===2){if(!this._storeKey(r))return this._a();s=3,r=0}else if(s===3){if(r>=se)return this._a();n[r++]=a}break;case 58:return s===3&&!this._storeValue(r)?this._a():(this.state=4,o+1);default:if(r>=se)return this._a();n[r++]=a}}return this.state=s,this._position=r,-2}_a(){return this.state=1,-1}_storeKey(A){let e=Y(this._buffer.subarray(0,A));return e?(this._key=e,this.fields[e]=null,!0):!1}_storeValue(A){if(this._key){try{let e=this._buffer.slice(0,A);this.fields[this._key]=Be[this._key]?Be[this._key](e):e}catch{return!1}return!0}return!1}};var N={mime:"unsupported",width:0,height:0};function Ee(i){if(i.length<24)return N;let A=new Uint32Array(i.buffer,i.byteOffset,6);if(A[0]===1196314761&&A[1]===169478669&&A[3]===1380206665)return{mime:"image/png",width:i[16]<<24|i[17]<<16|i[18]<<8|i[19],height:i[20]<<24|i[21]<<16|i[22]<<8|i[23]};if(i[0]===255&&i[1]===216&&i[2]===255){let[e,t]=Xe(i);return{mime:"image/jpeg",width:e,height:t}}return A[0]===944130375&&(i[4]===55||i[4]===57)&&i[5]===97?{mime:"image/gif",width:i[7]<<8|i[6],height:i[9]<<8|i[8]}:N}function Xe(i){let A=i.length,e=4,t=i[e]<<8|i[e+1];for(;;){if(e+=t,e>=A)return[0,0];if(i[e]!==255)return[0,0];if(i[e+1]===192||i[e+1]===194)return e+8<A?[i[e+7]<<8|i[e+8],i[e+5]<<8|i[e+6]]:[0,0];e+=2,t=i[e]<<8|i[e+1]}}var je=4194304,re={name:"Unnamed file",size:0,width:"auto",height:"auto",preserveAspectRatio:1,inline:0},P=class{constructor(A,e,t,s){this._opts=A;this._renderer=e;this._storage=t;this._coreTerminal=s;this._aborted=!1;this._hp=new O;this._header=re;this._dec=new _e.default(je);this._metrics=N}reset(){}start(){this._aborted=!1,this._header=re,this._metrics=N,this._hp.reset()}put(A,e,t){if(!this._aborted)if(this._hp.state===4)this._dec.put(A,e,t)&&(this._dec.release(),this._aborted=!0);else{let s=this._hp.parse(A,e,t);if(s===-1){this._aborted=!0;return}if(s>0){if(this._header=Object.assign({},re,this._hp.fields),!this._header.inline||!this._header.size||this._header.size>this._opts.iipSizeLimit){this._aborted=!0;return}this._dec.init(this._header.size),this._dec.put(A,s,t)&&(this._dec.release(),this._aborted=!0)}}}end(A){if(this._aborted)return!0;let e=0,t=0,s=!0;if((s=A)&&(s=!this._dec.end())&&(this._metrics=Ee(this._dec.data8),(s=this._metrics.mime!=="unsupported")&&(e=this._metrics.width,t=this._metrics.height,(s=e&&t&&e*t<this._opts.pixelLimit)&&([e,t]=this._resize(e,t).map(Math.floor),s=e&&t&&e*t<this._opts.pixelLimit))),!s)return this._dec.release(),!0;let r=new Blob([this._dec.data8],{type:this._metrics.mime});if(this._dec.release(),!window.createImageBitmap){let n=URL.createObjectURL(r),o=new Image;return new Promise(a=>{o.addEventListener("load",()=>{URL.revokeObjectURL(n);let g=m.createCanvas(window.document,e,t);g.getContext("2d")?.drawImage(o,0,0,e,t),this._storage.addImage(g),a(!0)}),o.src=n,setTimeout(()=>a(!0),1e3)})}return createImageBitmap(r,{resizeWidth:e,resizeHeight:t}).then(n=>(this._storage.addImage(n),!0))}_resize(A,e){let t=this._renderer.dimensions?.css.cell.width||w.width,s=this._renderer.dimensions?.css.cell.height||w.height,r=this._renderer.dimensions?.css.canvas.width||t*this._coreTerminal.cols,n=this._renderer.dimensions?.css.canvas.height||s*this._coreTerminal.rows,o=this._dim(this._header.width,r,t),a=this._dim(this._header.height,n,s);if(!o&&!a){let g=r/A,l=(n-s)/e,c=Math.min(g,l);return c<1?[A*c,e*c]:[A,e]}return o?this._header.preserveAspectRatio||!o||!a?[o,e*o/A]:[o,a]:[A*a/e,a]}_dim(A,e,t){return A==="auto"?0:A.endsWith("%")?parseInt(A.slice(0,-1))*e/100:A.endsWith("px")?parseInt(A.slice(0,-2)):parseInt(A)*t}};var p=G(F());var De=G(fe());var tA=4194304,oe=p.PALETTE_ANSI_256;oe.set(p.PALETTE_VT340_COLOR);var Z=class{constructor(A,e,t){this._opts=A;this._storage=e;this._coreTerminal=t;this._size=0;this._aborted=!1;(0,De.DecoderAsync)({memoryLimit:this._opts.pixelLimit*4,palette:oe,paletteLimit:this._opts.sixelPaletteLimit}).then(s=>this._dec=s)}reset(){this._dec&&(this._dec.release(),this._dec._palette.fill(0),this._dec.init(0,oe,this._opts.sixelPaletteLimit))}hook(A){if(this._size=0,this._aborted=!1,this._dec){let e=A.params[1]===1?0:iA(this._coreTerminal._core._inputHandler._curAttrData,this._coreTerminal._core._themeService?.colors);this._dec.init(e,null,this._opts.sixelPaletteLimit)}}put(A,e,t){if(!(this._aborted||!this._dec)){if(this._size+=t-e,this._size>this._opts.sixelSizeLimit){console.warn("SIXEL: too much data, aborting"),this._aborted=!0,this._dec.release();return}try{this._dec.decode(A,e,t)}catch(s){console.warn(`SIXEL: error while decoding image - ${s}`),this._aborted=!0,this._dec.release()}}}unhook(A){if(this._aborted||!A||!this._dec)return!0;let e=this._dec.width,t=this._dec.height;if(!e||!t)return t&&this._storage.advanceCursor(t),!0;let s=m.createCanvas(void 0,e,t);return s.getContext("2d")?.putImageData(new ImageData(this._dec.data8,e,t),0,0),this._dec.memoryUsage>tA&&this._dec.release(),this._storage.addImage(s),!0}};function iA(i,A){let e=0;if(!A)return e;if(i.isInverse())if(i.isFgDefault())e=z(A.foreground.rgba);else if(i.isFgRGB()){let t=i.constructor.toColorRGB(i.getFgColor());e=(0,p.toRGBA8888)(...t)}else e=z(A.ansi[i.getFgColor()].rgba);else if(i.isBgDefault())e=z(A.background.rgba);else if(i.isBgRGB()){let t=i.constructor.toColorRGB(i.getBgColor());e=(0,p.toRGBA8888)(...t)}else e=z(A.ansi[i.getBgColor()].rgba);return e}function z(i){return p.BIG_ENDIAN?i:(i&255)<<24|(i>>>8&255)<<16|(i>>>16&255)<<8|i>>>24&255}var we={enableSizeReports:!0,pixelLimit:16777216,sixelSupport:!0,sixelScrolling:!0,sixelPaletteLimit:256,sixelSizeLimit:25e6,storageLimit:128,showPlaceholder:!0,iipSupport:!0,iipSizeLimit:2e7},be=4096;var Se=class{constructor(A){this._disposables=[];this._handlers=new Map;this._opts=Object.assign({},we,A),this._defaultOpts=Object.assign({},we,A)}dispose(){for(let A of this._disposables)A.dispose();this._disposables.length=0,this._handlers.clear()}_disposeLater(...A){for(let e of A)this._disposables.push(e)}activate(A){if(this._terminal=A,this._renderer=new m(A),this._storage=new U(A,this._renderer,this._opts),this._opts.enableSizeReports){let e=A.options.windowOptions??{};e.getWinSizePixels=!0,e.getCellSizePixels=!0,e.getWinSizeChars=!0,A.options.windowOptions=e}if(this._disposeLater(this._renderer,this._storage,A.parser.registerCsiHandler({prefix:"?",final:"h"},e=>this._decset(e)),A.parser.registerCsiHandler({prefix:"?",final:"l"},e=>this._decrst(e)),A.parser.registerCsiHandler({final:"c"},e=>this._da1(e)),A.parser.registerCsiHandler({prefix:"?",final:"S"},e=>this._xtermGraphicsAttributes(e)),A.onRender(e=>this._storage?.render(e)),A.parser.registerCsiHandler({intermediates:"!",final:"p"},()=>this.reset()),A.parser.registerEscHandler({final:"c"},()=>this.reset()),A._core._inputHandler.onRequestReset(()=>this.reset()),A.buffer.onBufferChange(()=>this._storage?.wipeAlternate()),A.onResize(e=>this._storage?.viewportResize(e))),this._opts.sixelSupport){let e=new Z(this._opts,this._storage,A);this._handlers.set("sixel",e),this._disposeLater(A._core._inputHandler._parser.registerDcsHandler({final:"q"},e))}if(this._opts.iipSupport){let e=new P(this._opts,this._renderer,this._storage,A);this._handlers.set("iip",e),this._disposeLater(A._core._inputHandler._parser.registerOscHandler(1337,e))}}reset(){this._opts.sixelScrolling=this._defaultOpts.sixelScrolling,this._opts.sixelPaletteLimit=this._defaultOpts.sixelPaletteLimit,this._storage?.reset();for(let A of this._handlers.values())A.reset();return!1}get storageLimit(){return this._storage?.getLimit()||-1}set storageLimit(A){this._storage?.setLimit(A),this._opts.storageLimit=A}get storageUsage(){return this._storage?this._storage.getUsage():-1}get showPlaceholder(){return this._opts.showPlaceholder}set showPlaceholder(A){this._opts.showPlaceholder=A,this._renderer?.showPlaceholder(A)}getImageAtBufferCell(A,e){return this._storage?.getImageAtBufferCell(A,e)}extractTileAtBufferCell(A,e){return this._storage?.extractTileAtBufferCell(A,e)}_report(A){this._terminal?._core.coreService.triggerDataEvent(A)}_decset(A){for(let e=0;e<A.length;++e)switch(A[e]){case 80:this._opts.sixelScrolling=!1;break}return!1}_decrst(A){for(let e=0;e<A.length;++e)switch(A[e]){case 80:this._opts.sixelScrolling=!0;break}return!1}_da1(A){return A[0]?!0:this._opts.sixelSupport?(this._report("\x1B[?62;4;9;22c"),!0):!1}_xtermGraphicsAttributes(A){if(A.length<2)return!0;if(A[0]===1)switch(A[1]){case 1:return this._report(`\x1B[?${A[0]};0;${this._opts.sixelPaletteLimit}S`),!0;case 2:this._opts.sixelPaletteLimit=this._defaultOpts.sixelPaletteLimit,this._report(`\x1B[?${A[0]};0;${this._opts.sixelPaletteLimit}S`);for(let e of this._handlers.values())e.reset();return!0;case 3:return A.length>2&&!(A[2]instanceof Array)&&A[2]<=be?(this._opts.sixelPaletteLimit=A[2],this._report(`\x1B[?${A[0]};0;${this._opts.sixelPaletteLimit}S`)):this._report(`\x1B[?${A[0]};2S`),!0;case 4:return this._report(`\x1B[?${A[0]};0;${be}S`),!0;default:return this._report(`\x1B[?${A[0]};2S`),!0}if(A[0]===2)switch(A[1]){case 1:let e=this._renderer?.dimensions?.css.canvas.width,t=this._renderer?.dimensions?.css.canvas.height;if(!e||!t){let r=w;e=(this._terminal?.cols||80)*r.width,t=(this._terminal?.rows||24)*r.height}if(e*t<this._opts.pixelLimit)this._report(`\x1B[?${A[0]};0;${e.toFixed(0)};${t.toFixed(0)}S`);else{let r=Math.floor(Math.sqrt(this._opts.pixelLimit));this._report(`\x1B[?${A[0]};0;${r};${r}S`)}return!0;case 4:let s=Math.floor(Math.sqrt(this._opts.pixelLimit));return this._report(`\x1B[?${A[0]};0;${s};${s}S`),!0;default:return this._report(`\x1B[?${A[0]};2S`),!0}return this._report(`\x1B[?${A[0]};1S`),!0}};export{Se as ImageAddon};
17
+ var Me=Object.create;var ae=Object.defineProperty;var xe=Object.getOwnPropertyDescriptor;var Le=Object.getOwnPropertyNames;var ye=Object.getPrototypeOf,ke=Object.prototype.hasOwnProperty;var x=(i,A)=>()=>(A||i((A={exports:{}}).exports,A),A.exports);var He=(i,A,e,t)=>{if(A&&typeof A=="object"||typeof A=="function")for(let s of Le(A))!ke.call(i,s)&&s!==e&&ae(i,s,{get:()=>A[s],enumerable:!(t=xe(A,s))||t.enumerable});return i};var F=(i,A,e)=>(e=i!=null?Me(ye(i)):{},He(A||!i||!i.__esModule?ae(e,"default",{value:i,enumerable:!0}):e,i));var G=x(h=>{"use strict";Object.defineProperty(h,"__esModule",{value:!0});h.DEFAULT_FOREGROUND=h.DEFAULT_BACKGROUND=h.PALETTE_ANSI_256=h.PALETTE_VT340_GREY=h.PALETTE_VT340_COLOR=h.normalizeHLS=h.normalizeRGB=h.nearestColorIndex=h.fromRGBA8888=h.toRGBA8888=h.alpha=h.blue=h.green=h.red=h.BIG_ENDIAN=void 0;h.BIG_ENDIAN=new Uint8Array(new Uint32Array([4278190080]).buffer)[0]===255;h.BIG_ENDIAN&&console.warn("BE platform detected. This version of node-sixel works only on LE properly.");function ge(i){return i&255}h.red=ge;function Ie(i){return i>>>8&255}h.green=Ie;function he(i){return i>>>16&255}h.blue=he;function Ne(i){return i>>>24&255}h.alpha=Ne;function d(i,A,e,t=255){return((t&255)<<24|(e&255)<<16|(A&255)<<8|i&255)>>>0}h.toRGBA8888=d;function Re(i){return[i&255,i>>8&255,i>>16&255,i>>>24]}h.fromRGBA8888=Re;function Te(i,A){let e=ge(i),t=Ie(i),s=he(i),r=Number.MAX_SAFE_INTEGER,n=-1;for(let o=0;o<A.length;++o){let a=e-A[o][0],g=t-A[o][1],c=s-A[o][2],l=a*a+g*g+c*c;if(!l)return o;l<r&&(r=l,n=o)}return n}h.nearestColorIndex=Te;function X(i,A,e){return Math.max(i,Math.min(e,A))}function Z(i,A,e){return e<0&&(e+=1),e>1&&(e-=1),e*6<1?A+(i-A)*6*e:e*2<1?i:e*3<2?A+(i-A)*(4-e*6):A}function ve(i,A,e){if(!e){let r=Math.round(A*255);return d(r,r,r)}let t=A<.5?A*(1+e):A+e-A*e,s=2*A-t;return d(X(0,255,Math.round(Z(t,s,i+1/3)*255)),X(0,255,Math.round(Z(t,s,i)*255)),X(0,255,Math.round(Z(t,s,i-1/3)*255)))}function I(i,A,e){return(4278190080|Math.round(e/100*255)<<16|Math.round(A/100*255)<<8|Math.round(i/100*255))>>>0}h.normalizeRGB=I;function Fe(i,A,e){return ve((i+240%360)/360,A/100,e/100)}h.normalizeHLS=Fe;h.PALETTE_VT340_COLOR=new Uint32Array([I(0,0,0),I(20,20,80),I(80,13,13),I(20,80,20),I(80,20,80),I(20,80,80),I(80,80,20),I(53,53,53),I(26,26,26),I(33,33,60),I(60,26,26),I(33,60,33),I(60,33,60),I(33,60,60),I(60,60,33),I(80,80,80)]);h.PALETTE_VT340_GREY=new Uint32Array([I(0,0,0),I(13,13,13),I(26,26,26),I(40,40,40),I(6,6,6),I(20,20,20),I(33,33,33),I(46,46,46),I(0,0,0),I(13,13,13),I(26,26,26),I(40,40,40),I(6,6,6),I(20,20,20),I(33,33,33),I(46,46,46)]);h.PALETTE_ANSI_256=(()=>{let i=[d(0,0,0),d(205,0,0),d(0,205,0),d(205,205,0),d(0,0,238),d(205,0,205),d(0,250,205),d(229,229,229),d(127,127,127),d(255,0,0),d(0,255,0),d(255,255,0),d(92,92,255),d(255,0,255),d(0,255,255),d(255,255,255)],A=[0,95,135,175,215,255];for(let e=0;e<6;++e)for(let t=0;t<6;++t)for(let s=0;s<6;++s)i.push(d(A[e],A[t],A[s]));for(let e=8;e<=238;e+=10)i.push(d(e,e,e));return new Uint32Array(i)})();h.DEFAULT_BACKGROUND=d(0,0,0,255);h.DEFAULT_FOREGROUND=d(255,255,255,255)});var ce=x(ee=>{"use strict";Object.defineProperty(ee,"__esModule",{value:!0});ee.InWasm=Pe;var b=i=>{if(Uint8Array.fromBase64)return Uint8Array.fromBase64(i);if(typeof Buffer<"u")return Buffer.from(i,"base64");let A=atob(i),e=new Uint8Array(A.length);for(let t=0;t<e.length;++t)e[t]=A.charCodeAt(t);return e};function Pe(i){if(i.d){let{t:A,s:e,d:t}=i,s,r,n=WebAssembly;return A===0?e?o=>new n.Instance(r||(r=new n.Module(s||(s=b(t)))),o):o=>r?n.instantiate(r,o):n.instantiate(s||(s=b(t)),o).then(a=>(r=a.module)&&a.instance):A===1?e?()=>r||(r=new n.Module(s||(s=b(t)))):()=>r?Promise.resolve(r):n.compile(s||(s=b(t))).then(o=>r=o):e?()=>s||(s=b(t)):()=>Promise.resolve(s||(s=b(t)))}if(typeof _wasmCtx>"u")throw new Error('must run "inwasm"');_wasmCtx.add(i)}});var Ce=x(te=>{"use strict";Object.defineProperty(te,"__esModule",{value:!0});var We=ce(),qe=(0,We.InWasm)({s:1,t:0,d:"AGFzbQEAAAABBQFgAAF/Ag8BA2VudgZtZW1vcnkCAAEDAwIAAAcNAgNkZWMAAANlbmQAAQqLBgKZBAEKf0GIKCgCAEGgKGohAUGEKCgCACIDQaAoaiEAQYAoKAIAQQFrQXxxIgRBoChqIQUgBEEQayADSgRAIARBkChqIQMDQCABIABBA2otAABBAnQoAoAgIABBAmotAABBAnQoAoAYIABBAWotAABBAnQoAoAQIAAtAABBAnQoAoAIcnJyIgY2AgAgAUEDaiAAQQdqLQAAQQJ0KAKAICAAQQZqLQAAQQJ0KAKAGCAAQQVqLQAAQQJ0KAKAECAAQQRqLQAAQQJ0KAKACHJyciIHNgIAIAFBBmogAEELai0AAEECdCgCgCAgAEEKai0AAEECdCgCgBggAEEJai0AAEECdCgCgBAgAEEIai0AAEECdCgCgAhycnIiCDYCACABQQlqIABBD2otAABBAnQoAoAgIABBDmotAABBAnQoAoAYIABBDWotAABBAnQoAoAQIABBDGotAABBAnQoAoAIcnJyIgk2AgAgAiAGciAHciAIciAJciECIAFBDGohASAAQRBqIgAgA0kNAAsLIAAgBUkEQANAIAEgAEEDai0AAEECdCgCgCAgAEECai0AAEECdCgCgBggAEEBai0AAEECdCgCgBAgAC0AAEECdCgCgAhycnIiAzYCACACIANyIQIgAUEDaiEBIABBBGoiACAFSQ0ACwtBfyEAIAJB////B00Ef0GEKCAENgIAQYgoIAFBoChrNgIAQQAFQX8LC+0BAQR/AkBBgCgoAgAiAUGEKCgCACIAa0EFTgRAQX8hAxAADQFBgCgoAgAhAUGEKCgCACEAC0F/IQMgASAAayIBQQJIDQAgAC0AoShBAnQoAoAQIAAtAKAoQQJ0KAKACHIhAgJ/IAFBBEYEQEEDQQQgAC0AoyhBPUYbIAAtAKIoQT1GayEBC0EBIAFBA0kNABogAC0AoihBAnQoAoAYIAJyIQJBAiABQQRHDQAaIAAtAKMoQQJ0KAKAICACciECQQMLIQEgAkH///8HSw0AQQAhA0GIKCgCACIAIAI2AKAoQYgoIAAgAWo2AgALIAML"}),D=new Uint8Array("ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".split("").map(i=>i.charCodeAt(0))),S=new Uint32Array(1024);S.fill(4278190080);for(let i=0;i<D.length;++i)S[D[i]]=i<<2;for(let i=0;i<D.length;++i)S[256+D[i]]=i>>4|(i<<4&255)<<8;for(let i=0;i<D.length;++i)S[512+D[i]]=i>>2<<8|(i<<6&255)<<16;for(let i=0;i<D.length;++i)S[768+D[i]]=i<<16;var ze=new Uint8Array(0),Ae=class{constructor(A,e,t){if(this._inst=null,this._ended=!0,this._bytes=0,this.keepSize=A??1048576,this.maxBytes=e??4294901760,this._bytes=t??32768,this._bytes>this.maxBytes||this.maxBytes>4294901760)throw new Error("invalid byte settings")}get data8(){return this._inst?this._d.subarray(0,this._m32[1282]):ze}release(){this._inst&&(this._bytes>this.keepSize?this._inst=this._m32=this._d=this._mem=null:(this._m32[1280]=0,this._m32[1281]=0,this._m32[1282]=0))}init(A,e){if(this.maxBytes=A??this.maxBytes,this._bytes=e??Math.min(this._bytes,this.maxBytes),this._bytes>this.maxBytes||this.maxBytes>4294901760)throw Error("invalid byte settings");let t=this._m32,s=this._bytes+5152;this._inst?this._mem.buffer.byteLength<s&&(this._mem.grow(Math.ceil((s-this._mem.buffer.byteLength)/65536)),t=new Uint32Array(this._mem.buffer,0),this._d=new Uint8Array(this._mem.buffer,5152)):(this._mem=new WebAssembly.Memory({initial:Math.ceil(s/65536)}),this._inst=qe({env:{memory:this._mem}}),t=new Uint32Array(this._mem.buffer,0),t.set(S,256),this._d=new Uint8Array(this._mem.buffer,5152)),t[1280]=0,t[1281]=0,t[1282]=0,this._m32=t,this._ended=!1}_realloc(A){let e=this._m32[1280]+A;if(this._bytes<e){if(e>this.maxBytes)return-3;let t=this._bytes;for(;(t*=2)<e;);if(t=Math.min(t,this.maxBytes),t<e)return-3;if(t+5152>this._mem.buffer.byteLength){let s=Math.ceil((t+5152-this._mem.buffer.byteLength)/65536);this._mem.grow(s),this._m32=new Uint32Array(this._mem.buffer,0),this._d=new Uint8Array(this._mem.buffer,5152)}this._bytes=t}return 0}put(A){if(!this._inst||this._ended)return-2;if(this._realloc(A.length))return-3;let e=this._m32;return this._d.set(A,e[1280]),e[1280]+=A.length,e[1280]-e[1281]>=131072?this._inst.exports.dec():0}end(){return this._ended=!0,this._inst?this._inst.exports.end():-2}get loadedBytes(){return this._inst?this._m32[1280]:0}get freeBytes(){return this._inst?this.maxBytes-this._m32[1280]:0}};te.default=Ae});var me=x(P=>{"use strict";Object.defineProperty(P,"__esModule",{value:!0});P.LIMITS=void 0;P.LIMITS={CHUNK_SIZE:16384,PALETTE_SIZE:4096,MAX_WIDTH:16384,BYTES:"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AEHAiwIgADcDAEG4iwIgADcDAEGwiwIgADcDAEGoiwIgADcDAEGgiwIgADcDAEGYiwIgADcDAEGQiwIgADcDAEGIiwIgADcDAEGAiwIgADcDAEH4igIgADcDAEHwigIgADcDAEHoigIgADcDAEHgigIgADcDAEHYigIgADcDAEHQigIgADcDAEHIigIgADcDAEHAigIgADcDAEG4igIgADcDAEGwigIgADcDAEGoigIgADcDAEGgigIgADcDAEGYigIgADcDAEGQigIgADcDAEGIigIgADcDAEGAigIgADcDAEH4iQIgADcDAEHwiQIgADcDAEHoiQIgADcDAEHgiQIgADcDAEHYiQIgADcDAEHQiQIgADcDAEHIiQIgADcDAEHAiQIgADcDAEG4iQIgADcDAEGwiQIgADcDAEGoCCgCACIEQf8AakGAAW0hCAJAIARBgQFIDQBBASEBIAhBAiAIQQJKG0EBayICQQFxIQMgBEGBAk4EQCACQX5xIQIDQCABQQl0IgdBEHJBoIkCakGwiQJBgAT8CgAAIAdBsI0CakGwiQJBgAT8CgAAIAFBAmohASACQQJrIgINAAsLIANFDQAgAUEJdEEQckGgiQJqQbCJAkGABPwKAAALAkAgBEEBSA0AIAhBASAIQQFKGyIDQQFxIQUCQCADQQFrIgdFBEBBACEBDAELIANB/v///wdxIQJBACEBA0AgAUEJdCIGQRByQbCJBmpBsIkCQYAE/AoAACAGQZAEckGwiQZqQbCJAkGABPwKAAAgAUECaiEBIAJBAmsiAg0ACwsgBQRAIAFBCXRBEHJBsIkGakGwiQJBgAT8CgAACyAEQQFIDQAgA0EBcSEFIAcEfyADQf7///8HcSECQQAhAQNAIAFBCXQiBkEQckHAiQpqQbCJAkGABPwKAAAgBkGQBHJBwIkKakGwiQJBgAT8CgAAIAFBAmohASACQQJrIgINAAsgAUEHdEEEcgVBBAshASAFBEAgAUECdEHAiQpqQbCJAkGABPwKAAALIARBAUgNACADQQFxIQUgBwR/IANB/v///wdxIQJBACEBA0AgAUEJdCIGQRByQdCJDmpBsIkCQYAE/AoAACAGQZAEckHQiQ5qQbCJAkGABPwKAAAgAUECaiEBIAJBAmsiAg0ACyABQQd0QQRyBUEECyEBIAUEQCABQQJ0QdCJ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"}});var fe=x(u=>{"use strict";Object.defineProperty(u,"__esModule",{value:!0});u.decodeAsync=u.decode=u.Decoder=u.DecoderAsync=void 0;var N=G(),E=me();function je(i){if(typeof Buffer<"u")return Buffer.from(i,"base64");let A=atob(i),e=new Uint8Array(A.length);for(let t=0;t<e.length;++t)e[t]=A.charCodeAt(t);return e}var ue=je(E.LIMITS.BYTES),R,W=new Uint32Array,ne=class{constructor(){this.bandHandler=A=>1,this.modeHandler=A=>1}handle_band(A){return this.bandHandler(A)}mode_parsed(A){return this.modeHandler(A)}},Ve={memoryLimit:2048*65536,sixelColor:N.DEFAULT_FOREGROUND,fillColor:N.DEFAULT_BACKGROUND,palette:N.PALETTE_VT340_COLOR,paletteLimit:E.LIMITS.PALETTE_SIZE,truncate:!0};function pe(i){let A=new ne,e={env:{handle_band:A.handle_band.bind(A),mode_parsed:A.mode_parsed.bind(A)}};return WebAssembly.instantiate(R||ue,e).then(t=>(R=R||t.module,new T(i,t.instance||t,A)))}u.DecoderAsync=pe;var T=class{constructor(A,e,t){if(this._PIXEL_OFFSET=E.LIMITS.MAX_WIDTH+4,this._canvas=W,this._bandWidths=[],this._maxWidth=0,this._minWidth=E.LIMITS.MAX_WIDTH,this._lastOffset=0,this._currentHeight=0,this._opts=Object.assign({},Ve,A),this._opts.paletteLimit>E.LIMITS.PALETTE_SIZE)throw new Error(`DecoderOptions.paletteLimit must not exceed ${E.LIMITS.PALETTE_SIZE}`);if(e)t.bandHandler=this._handle_band.bind(this),t.modeHandler=this._initCanvas.bind(this);else{let s=R||(R=new WebAssembly.Module(ue));e=new WebAssembly.Instance(s,{env:{handle_band:this._handle_band.bind(this),mode_parsed:this._initCanvas.bind(this)}})}this._instance=e,this._wasm=this._instance.exports,this._chunk=new Uint8Array(this._wasm.memory.buffer,this._wasm.get_chunk_address(),E.LIMITS.CHUNK_SIZE),this._states=new Uint32Array(this._wasm.memory.buffer,this._wasm.get_state_address(),12),this._palette=new Uint32Array(this._wasm.memory.buffer,this._wasm.get_palette_address(),E.LIMITS.PALETTE_SIZE),this._palette.set(this._opts.palette),this._pSrc=new Uint32Array(this._wasm.memory.buffer,this._wasm.get_p0_address()),this._wasm.init(N.DEFAULT_FOREGROUND,0,this._opts.paletteLimit,0)}get _fillColor(){return this._states[0]}get _truncate(){return this._states[8]}get _rasterWidth(){return this._states[6]}get _rasterHeight(){return this._states[7]}get _width(){return this._states[2]?this._states[2]-4:0}get _height(){return this._states[3]}get _level(){return this._states[9]}get _mode(){return this._states[10]}get _paletteLimit(){return this._states[11]}_initCanvas(A){if(A===2){let e=this.width*this.height;if(e>this._canvas.length){if(this._opts.memoryLimit&&e*4>this._opts.memoryLimit)throw this.release(),new Error("image exceeds memory limit");this._canvas=new Uint32Array(e)}this._maxWidth=this._width}else if(A===1)if(this._level===2){let e=Math.min(this._rasterWidth,E.LIMITS.MAX_WIDTH)*this._rasterHeight;if(e>this._canvas.length){if(this._opts.memoryLimit&&e*4>this._opts.memoryLimit)throw this.release(),new Error("image exceeds memory limit");this._canvas=new Uint32Array(e)}}else this._canvas.length<65536&&(this._canvas=new Uint32Array(65536));return 0}_realloc(A,e){let t=A+e;if(t>this._canvas.length){if(this._opts.memoryLimit&&t*4>this._opts.memoryLimit)throw this.release(),new Error("image exceeds memory limit");let s=new Uint32Array(Math.ceil(t/65536)*65536);s.set(this._canvas),this._canvas=s}}_handle_band(A){let e=this._PIXEL_OFFSET,t=this._lastOffset;if(this._mode===2){let s=this.height-this._currentHeight,r=0;for(;r<6&&s>0;)this._canvas.set(this._pSrc.subarray(e*r,e*r+A),t+A*r),r++,s--;this._lastOffset+=A*r,this._currentHeight+=r}else if(this._mode===1){this._realloc(t,A*6),this._maxWidth=Math.max(this._maxWidth,A),this._minWidth=Math.min(this._minWidth,A);for(let s=0;s<6;++s)this._canvas.set(this._pSrc.subarray(e*s,e*s+A),t+A*s);this._bandWidths.push(A),this._lastOffset+=A*6,this._currentHeight+=6}return 0}get width(){return this._mode!==1?this._width:Math.max(this._maxWidth,this._wasm.current_width())}get height(){return this._mode!==1?this._height:this._wasm.current_width()?this._bandWidths.length*6+this._wasm.current_height():this._bandWidths.length*6}get palette(){return this._palette.subarray(0,this._paletteLimit)}get memoryUsage(){return this._canvas.byteLength+this._wasm.memory.buffer.byteLength+8*this._bandWidths.length}get properties(){return{width:this.width,height:this.height,mode:this._mode,level:this._level,truncate:!!this._truncate,paletteLimit:this._paletteLimit,fillColor:this._fillColor,memUsage:this.memoryUsage,rasterAttributes:{numerator:this._states[4],denominator:this._states[5],width:this._rasterWidth,height:this._rasterHeight}}}init(A=this._opts.fillColor,e=this._opts.palette,t=this._opts.paletteLimit,s=this._opts.truncate){this._wasm.init(this._opts.sixelColor,A,t,s?1:0),e&&this._palette.set(e.subarray(0,E.LIMITS.PALETTE_SIZE)),this._bandWidths.length=0,this._maxWidth=0,this._minWidth=E.LIMITS.MAX_WIDTH,this._lastOffset=0,this._currentHeight=0}decode(A,e=0,t=A.length){let s=e;for(;s<t;){let r=Math.min(t-s,E.LIMITS.CHUNK_SIZE);this._chunk.set(A.subarray(s,s+=r)),this._wasm.decode(0,r)}}decodeString(A,e=0,t=A.length){let s=e;for(;s<t;){let r=Math.min(t-s,E.LIMITS.CHUNK_SIZE);for(let n=0,o=s;n<r;++n,++o)this._chunk[n]=A.charCodeAt(o);s+=r,this._wasm.decode(0,r)}}get data32(){if(this._mode===0||!this.width||!this.height)return W;let A=this._wasm.current_width();if(this._mode===2){let e=this.height-this._currentHeight;if(e>0){let t=this._PIXEL_OFFSET,s=this._lastOffset,r=0;for(;r<6&&e>0;)this._canvas.set(this._pSrc.subarray(t*r,t*r+A),s+A*r),r++,e--;e&&this._canvas.fill(this._fillColor,s+A*r)}return this._canvas.subarray(0,this.width*this.height)}if(this._mode===1){if(this._minWidth===this._maxWidth){let r=!1;if(A)if(A!==this._minWidth)r=!0;else{let n=this._PIXEL_OFFSET,o=this._lastOffset;this._realloc(o,A*6);for(let a=0;a<6;++a)this._canvas.set(this._pSrc.subarray(n*a,n*a+A),o+A*a)}if(!r)return this._canvas.subarray(0,this.width*this.height)}let e=new Uint32Array(this.width*this.height);e.fill(this._fillColor);let t=0,s=0;for(let r=0;r<this._bandWidths.length;++r){let n=this._bandWidths[r];for(let o=0;o<6;++o)e.set(this._canvas.subarray(s,s+=n),t),t+=this.width}if(A){let r=this._PIXEL_OFFSET,n=this._wasm.current_height();for(let o=0;o<n;++o)e.set(this._pSrc.subarray(r*o,r*o+A),t+this.width*o)}return e}return W}get data8(){return new Uint8ClampedArray(this.data32.buffer,0,this.width*this.height*4)}release(){this._canvas=W,this._bandWidths.length=0,this._maxWidth=0,this._minWidth=E.LIMITS.MAX_WIDTH,this._wasm.init(N.DEFAULT_FOREGROUND,0,this._opts.paletteLimit,0)}};u.Decoder=T;function $e(i,A){let e=new T(A);return e.init(),typeof i=="string"?e.decodeString(i):e.decode(i),{width:e.width,height:e.height,data32:e.data32,data8:e.data8}}u.decode=$e;async function eA(i,A){let e=await pe(A);return e.init(),typeof i=="string"?e.decodeString(i):e.decode(i),{width:e.width,height:e.height,data32:e.data32,data8:e.data8}}u.decodeAsync=eA});var $=F(G());function le(i){return{dispose:i}}var j=class{constructor(){this._disposables=new Set;this._isDisposed=!1}get isDisposed(){return this._isDisposed}add(A){return this._isDisposed?A.dispose():this._disposables.add(A),A}dispose(){if(!this._isDisposed){this._isDisposed=!0;for(let A of this._disposables)A.dispose();this._disposables.clear()}}clear(){for(let A of this._disposables)A.dispose();this._disposables.clear()}},L=class{constructor(){this._store=new j}dispose(){this._store.dispose()}_register(A){return this._store.add(A)}};L.None=Object.freeze({dispose(){}});var J=class{constructor(){this._isDisposed=!1}get value(){return this._isDisposed?void 0:this._value}set value(A){this._isDisposed||A===this._value||(this._value?.dispose(),this._value=A)}clear(){this.value=void 0}dispose(){this._isDisposed=!0,this._value?.dispose(),this._value=void 0}};var Ge=4096,V=24,m=class i extends L{constructor(e){super();this._terminal=e;this._optionsRefresh=this._register(new J);this._oldOpen=this._terminal._core.open,this._terminal._core.open=t=>{this._oldOpen?.call(this._terminal._core,t),this._open()},this._terminal._core.screenElement&&this._open(),this._optionsRefresh.value=this._terminal._core.optionsService.onOptionChange(t=>{t==="fontSize"&&(this.rescaleCanvas(),this._renderService?.refreshRows(0,this._terminal.rows))}),this._register(le(()=>{this.removeLayerFromDom(),this._terminal._core&&this._oldOpen&&(this._terminal._core.open=this._oldOpen,this._oldOpen=void 0),this._renderService&&this._oldSetRenderer&&(this._renderService.setRenderer=this._oldSetRenderer,this._oldSetRenderer=void 0),this._renderService=void 0,this.canvas=void 0,this._ctx=void 0,this._placeholderBitmap?.close(),this._placeholderBitmap=void 0,this._placeholder=void 0}))}static createCanvas(e,t,s){let r=(e??document).createElement("canvas");return r.width=t|0,r.height=s|0,r}static createImageData(e,t,s,r){if(typeof ImageData!="function"){let n=e.createImageData(t,s);return r&&n.data.set(new Uint8ClampedArray(r,0,t*s*4)),n}return r?new ImageData(new Uint8ClampedArray(r,0,t*s*4),t,s):new ImageData(t,s)}static createImageBitmap(e){return typeof createImageBitmap!="function"?Promise.resolve(void 0):createImageBitmap(e)}showPlaceholder(e){e?!this._placeholder&&this.cellSize.height!==-1&&this._createPlaceHolder(Math.max(this.cellSize.height+1,V)):(this._placeholderBitmap?.close(),this._placeholderBitmap=void 0,this._placeholder=void 0),this._renderService?.refreshRows(0,this._terminal.rows)}get dimensions(){return this._terminal.dimensions}get cellSize(){return{width:this.dimensions?.css.cell.width||-1,height:this.dimensions?.css.cell.height||-1}}clearLines(e,t){this._ctx?.clearRect(0,e*(this.dimensions?.css.cell.height||0),this.dimensions?.css.canvas.width||0,(++t-e)*(this.dimensions?.css.cell.height||0))}clearAll(){this._ctx?.clearRect(0,0,this.canvas?.width||0,this.canvas?.height||0)}draw(e,t,s,r,n=1){if(!this._ctx)return;let{width:o,height:a}=this.cellSize;if(o===-1||a===-1)return;this._rescaleImage(e,o,a);let g=e.actual,c=Math.ceil(g.width/o),l=t%c*o,C=Math.floor(t/c)*a,Q=s*o,B=r*a,f=n*o+l>g.width?g.width-l:n*o,_=C+a>g.height?g.height-C:a;this._ctx.drawImage(g,Math.floor(l),Math.floor(C),Math.ceil(f),Math.ceil(_),Math.floor(Q),Math.floor(B),Math.ceil(f),Math.ceil(_))}extractTile(e,t){let{width:s,height:r}=this.cellSize;if(s===-1||r===-1)return;this._rescaleImage(e,s,r);let n=e.actual,o=Math.ceil(n.width/s),a=t%o*s,g=Math.floor(t/o)*r,c=s+a>n.width?n.width-a:s,l=g+r>n.height?n.height-g:r,C=i.createCanvas(this.document,c,l),Q=C.getContext("2d");if(Q)return Q.drawImage(n,Math.floor(a),Math.floor(g),Math.floor(c),Math.floor(l),0,0,Math.floor(c),Math.floor(l)),C}drawPlaceholder(e,t,s=1){if(this._ctx){let{width:r,height:n}=this.cellSize;if(r===-1||n===-1||(this._placeholder?n>=this._placeholder.height&&this._createPlaceHolder(n+1):this._createPlaceHolder(Math.max(n+1,V)),!this._placeholder))return;this._ctx.drawImage(this._placeholderBitmap??this._placeholder,e*r,t*n%2?0:1,r*s,n,e*r,t*n,r*s,n)}}rescaleCanvas(){this.canvas&&(this.canvas.width!==this.dimensions.css.canvas.width||this.canvas.height!==this.dimensions.css.canvas.height)&&(this.canvas.width=this.dimensions.css.canvas.width||0,this.canvas.height=this.dimensions.css.canvas.height||0)}_rescaleImage(e,t,s){if(t===e.actualCellSize.width&&s===e.actualCellSize.height)return;let{width:r,height:n}=e.origCellSize;if(t===r&&s===n){e.actual=e.orig,e.actualCellSize.width=r,e.actualCellSize.height=n;return}let o=i.createCanvas(this.document,Math.ceil(e.orig.width*t/r),Math.ceil(e.orig.height*s/n)),a=o.getContext("2d");a&&(a.drawImage(e.orig,0,0,o.width,o.height),e.actual=o,e.actualCellSize.width=t,e.actualCellSize.height=s)}_open(){this._renderService=this._terminal._core._renderService,this._oldSetRenderer=this._renderService.setRenderer.bind(this._renderService),this._renderService.setRenderer=e=>{this.removeLayerFromDom(),this._oldSetRenderer?.call(this._renderService,e)}}insertLayerToDom(){this.document&&this._terminal._core.screenElement?this.canvas||(this.canvas=i.createCanvas(this.document,this.dimensions?.css.canvas.width||0,this.dimensions?.css.canvas.height||0),this.canvas.classList.add("xterm-image-layer"),this._terminal._core.screenElement.appendChild(this.canvas),this._ctx=this.canvas.getContext("2d",{alpha:!0,desynchronized:!0}),this.clearAll()):console.warn("image addon: cannot insert output canvas to DOM, missing document or screenElement")}removeLayerFromDom(){this.canvas&&(this._ctx=void 0,this.canvas.remove(),this.canvas=void 0)}_createPlaceHolder(e=V){this._placeholderBitmap?.close(),this._placeholderBitmap=void 0;let t=32,s=i.createCanvas(this.document,t,e),r=s.getContext("2d",{alpha:!1});if(!r)return;let n=i.createImageData(r,t,e),o=new Uint32Array(n.data.buffer),a=(0,$.toRGBA8888)(0,0,0),g=(0,$.toRGBA8888)(255,255,255);o.fill(a);for(let C=0;C<e;++C){let Q=C%2,B=C*t;for(let f=0;f<t;f+=2)o[B+f+Q]=g}r.putImageData(n,0,0);let c=screen.width+t-1&~(t-1)||Ge;this._placeholder=i.createCanvas(this.document,c,e);let l=this._placeholder.getContext("2d",{alpha:!1});if(!l){this._placeholder=void 0;return}for(let C=0;C<c;C+=t)l.drawImage(s,C,0);i.createImageBitmap(this._placeholder).then(C=>this._placeholderBitmap=C)}get document(){return this._terminal._core._coreBrowserService?.window.document}};var w={width:7,height:14},k=class i{constructor(A=0,e=0,t=-1,s=-1){this.imageId=t;this.tileId=s;this._ext=0;this._urlId=0;this._ext=A,this._urlId=e}get ext(){return this._urlId?this._ext&-469762049|this.underlineStyle<<26:this._ext}set ext(A){this._ext=A}get underlineStyle(){return this._urlId?5:(this._ext&469762048)>>26}set underlineStyle(A){this._ext&=-469762049,this._ext|=A<<26&469762048}get underlineColor(){return this._ext&67108863}set underlineColor(A){this._ext&=-67108864,this._ext|=A&67108863}get underlineVariantOffset(){let A=(this._ext&3758096384)>>29;return A<0?A^4294967288:A}set underlineVariantOffset(A){this._ext&=536870911,this._ext|=A<<29&3758096384}get urlId(){return this._urlId}set urlId(A){this._urlId=A}clone(){return new i(this._ext,this._urlId,this.imageId,this.tileId)}isEmpty(){return this.underlineStyle===0&&this._urlId===0&&this.imageId===-1}},y=new k,U=class{constructor(A,e,t){this._terminal=A;this._renderer=e;this._opts=t;this._images=new Map;this._lastId=0;this._lowestId=0;this._fullyCleared=!1;this._needsFullClear=!1;this._pixelLimit=25e5;try{this.setLimit(this._opts.storageLimit)}catch(s){s instanceof Error&&console.error(s.message),console.warn(`storageLimit is set to ${this.getLimit()} MB`)}this._viewportMetrics={cols:this._terminal.cols,rows:this._terminal.rows}}dispose(){this.reset()}reset(){for(let A of this._images.values())A.marker?.dispose();this._images.clear(),this._renderer.clearAll()}getLimit(){return this._pixelLimit*4/1e6}setLimit(A){if(A<.5||A>1e3)throw RangeError("invalid storageLimit, should be at least 0.5 MB and not exceed 1G");this._pixelLimit=A/4*1e6>>>0,this._evictOldest(0)}getUsage(){return this._getStoredPixels()*4/1e6}_getStoredPixels(){let A=0;for(let e of this._images.values())e.orig&&(A+=e.orig.width*e.orig.height,e.actual&&e.actual!==e.orig&&(A+=e.actual.width*e.actual.height));return A}_delImg(A){let e=this._images.get(A);this._images.delete(A),e&&window.ImageBitmap&&e.orig instanceof ImageBitmap&&e.orig.close()}wipeAlternate(){let A=[];for(let[e,t]of this._images.entries())t.bufferType==="alternate"&&(t.marker?.dispose(),A.push(e));for(let e of A)this._delImg(e);this._needsFullClear=!0,this._fullyCleared=!1}advanceCursor(A){if(this._opts.sixelScrolling){let e=this._renderer.cellSize;(e.width===-1||e.height===-1)&&(e=w);let t=Math.ceil(A/e.height);for(let s=1;s<t;++s)this._terminal._core._inputHandler.lineFeed()}}addImage(A){this._evictOldest(A.width*A.height);let e=this._renderer.cellSize;(e.width===-1||e.height===-1)&&(e=w);let t=Math.ceil(A.width/e.width),s=Math.ceil(A.height/e.height),r=++this._lastId,n=this._terminal._core.buffer,o=this._terminal.cols,a=this._terminal.rows,g=n.x,c=n.y,l=g,C=0;this._opts.sixelScrolling||(n.x=0,n.y=0,l=0),this._terminal._core._inputHandler._dirtyRowTracker.markDirty(n.y);for(let _=0;_<s;++_){let v=n.lines.get(n.y+n.ybase);for(let M=0;M<t&&!(l+M>=o);++M)this._writeToCell(v,l+M,r,_*t+M),C++;if(this._opts.sixelScrolling)_<s-1&&this._terminal._core._inputHandler.lineFeed();else if(++n.y>=a)break;n.x=l}this._terminal._core._inputHandler._dirtyRowTracker.markDirty(n.y),this._opts.sixelScrolling?n.x=l:(n.x=g,n.y=c);let Q=[];for(let[_,v]of this._images.entries())v.tileCount<1&&(v.marker?.dispose(),Q.push(_));for(let _ of Q)this._delImg(_);let B=this._terminal.registerMarker(0);B?.onDispose(()=>{this._images.get(r)&&this._delImg(r)}),this._terminal.buffer.active.type==="alternate"&&this._evictOnAlternate();let f={orig:A,origCellSize:e,actual:A,actualCellSize:{...e},marker:B||void 0,tileCount:C,bufferType:this._terminal.buffer.active.type};this._images.set(r,f)}render(A){if(!this._renderer.canvas&&this._images.size&&(this._renderer.insertLayerToDom(),!this._renderer.canvas))return;if(this._renderer.rescaleCanvas(),!this._images.size){this._fullyCleared||(this._renderer.clearAll(),this._fullyCleared=!0,this._needsFullClear=!1),this._renderer.canvas&&this._renderer.removeLayerFromDom();return}this._needsFullClear&&(this._renderer.clearAll(),this._fullyCleared=!0,this._needsFullClear=!1);let{start:e,end:t}=A,s=this._terminal._core.buffer,r=this._terminal._core.cols;this._renderer.clearLines(e,t);for(let n=e;n<=t;++n){let o=s.lines.get(n+s.ydisp);if(!o)return;for(let a=0;a<r;++a)if(o.getBg(a)&268435456){let g=o._extendedAttrs[a]??y,c=g.imageId;if(c===void 0||c===-1)continue;let l=this._images.get(c);if(g.tileId!==-1){let C=g.tileId,Q=a,B=1;for(;++a<r&&o.getBg(a)&268435456&&(g=o._extendedAttrs[a]??y)&&g.imageId===c&&g.tileId===C+B;)B++;a--,l?l.actual&&this._renderer.draw(l,C,Q,n,B):this._opts.showPlaceholder&&this._renderer.drawPlaceholder(Q,n,B),this._fullyCleared=!1}}}}viewportResize(A){if(!this._images.size){this._viewportMetrics=A;return}if(this._viewportMetrics.cols>=A.cols){this._viewportMetrics=A;return}let e=this._terminal._core.buffer,t=e.lines.length,s=this._viewportMetrics.cols-1;for(let r=0;r<t;++r){let n=e.lines.get(r);if(n.getBg(s)&268435456){let o=n._extendedAttrs[s]??y,a=o.imageId;if(a===void 0||a===-1)continue;let g=this._images.get(a);if(!g)continue;let c=Math.ceil((g.actual?.width||0)/g.actualCellSize.width);if(o.tileId%c+1>=c)continue;let l=!1;for(let B=s+1;B>A.cols;++B)if(n._data[B*3+0]&4194303){l=!0;break}if(l)continue;let C=Math.min(A.cols,c-o.tileId%c+s),Q=o.tileId;for(let B=s+1;B<C;++B)this._writeToCell(n,B,a,++Q),g.tileCount++}}this._viewportMetrics=A}getImageAtBufferCell(A,e){let s=this._terminal._core.buffer.lines.get(e);if(s&&s.getBg(A)&268435456){let r=s._extendedAttrs[A]??y;if(r.imageId&&r.imageId!==-1){let n=this._images.get(r.imageId)?.orig;if(window.ImageBitmap&&n instanceof ImageBitmap){let o=m.createCanvas(window.document,n.width,n.height);return o.getContext("2d")?.drawImage(n,0,0,n.width,n.height),o}return n}}}extractTileAtBufferCell(A,e){let s=this._terminal._core.buffer.lines.get(e);if(s&&s.getBg(A)&268435456){let r=s._extendedAttrs[A]??y;if(r.imageId&&r.imageId!==-1&&r.tileId!==-1){let n=this._images.get(r.imageId);if(n)return this._renderer.extractTile(n,r.tileId)}}}_evictOldest(A){let e=this._getStoredPixels(),t=e;for(;this._pixelLimit<t+A&&this._images.size;){let s=this._images.get(++this._lowestId);s&&s.orig&&(t-=s.orig.width*s.orig.height,s.actual&&s.orig!==s.actual&&(t-=s.actual.width*s.actual.height),s.marker?.dispose(),this._delImg(this._lowestId))}return e-t}_writeToCell(A,e,t,s){if(A._data[e*3+2]&268435456){let r=A._extendedAttrs[e];if(r){if(r.imageId!==void 0){let n=this._images.get(r.imageId);n&&n.tileCount--,r.imageId=t,r.tileId=s;return}A._extendedAttrs[e]=new k(r.ext,r.urlId,t,s);return}}A._data[e*3+2]|=268435456,A._extendedAttrs[e]=new k(0,0,t,s)}_evictOnAlternate(){for(let t of this._images.values())t.bufferType==="alternate"&&(t.tileCount=0);let A=this._terminal._core.buffer;for(let t=0;t<this._terminal.rows;++t){let s=A.lines.get(t);if(s){for(let r=0;r<this._terminal.cols;++r)if(s._data[r*3+2]&268435456){let n=s._extendedAttrs[r]?.imageId;if(n){let o=this._images.get(n);o&&o.tileCount++}}}}let e=[];for(let[t,s]of this._images.entries())s.bufferType==="alternate"&&!s.tileCount&&(s.marker?.dispose(),e.push(t));for(let t of e)this._delImg(t)}};var _e=F(Ce());function K(i){let A="";for(let e=0;e<i.length;++e)A+=String.fromCharCode(i[e]);return A}function ie(i){let A=0;for(let e=0;e<i.length;++e){if(i[e]<48||i[e]>57)throw new Error("illegal char");A=A*10+i[e]-48}return A}function de(i){let A=K(i);if(!A.match(/^((auto)|(\d+?((px)|(%)){0,1}))$/))throw new Error("illegal size");return A}function Xe(i){if(typeof Buffer<"u")return Buffer.from(K(i),"base64").toString();let A=atob(K(i)),e=new Uint8Array(A.length);for(let t=0;t<e.length;++t)e[t]=A.charCodeAt(t);return new TextDecoder().decode(e)}var Be={inline:ie,size:ie,name:Xe,width:de,height:de,preserveAspectRatio:ie},Qe=[70,105,108,101],se=1024,O=class{constructor(){this.state=0;this._buffer=new Uint32Array(se);this._position=0;this._key="";this.fields={}}reset(){this._buffer.fill(0),this.state=0,this._position=0,this.fields={},this._key=""}parse(A,e,t){let s=this.state,r=this._position,n=this._buffer;if(s===1||s===4||s===0&&r>6)return-1;for(let o=e;o<t;++o){let a=A[o];switch(a){case 59:if(!this._storeValue(r))return this._a();s=2,r=0;break;case 61:if(s===0){for(let g=0;g<Qe.length;++g)if(n[g]!==Qe[g])return this._a();s=2,r=0}else if(s===2){if(!this._storeKey(r))return this._a();s=3,r=0}else if(s===3){if(r>=se)return this._a();n[r++]=a}break;case 58:return s===3&&!this._storeValue(r)?this._a():(this.state=4,o+1);default:if(r>=se)return this._a();n[r++]=a}}return this.state=s,this._position=r,-2}_a(){return this.state=1,-1}_storeKey(A){let e=K(this._buffer.subarray(0,A));return e?(this._key=e,this.fields[e]=null,!0):!1}_storeValue(A){if(this._key){try{let e=this._buffer.slice(0,A);this.fields[this._key]=Be[this._key]?Be[this._key](e):e}catch{return!1}return!0}return!1}};var H={mime:"unsupported",width:0,height:0};function Ee(i){if(i.length<24)return H;let A=new Uint32Array(i.buffer,i.byteOffset,6);if(A[0]===1196314761&&A[1]===169478669&&A[3]===1380206665)return{mime:"image/png",width:i[16]<<24|i[17]<<16|i[18]<<8|i[19],height:i[20]<<24|i[21]<<16|i[22]<<8|i[23]};if(i[0]===255&&i[1]===216&&i[2]===255){let[e,t]=Ze(i);return{mime:"image/jpeg",width:e,height:t}}return A[0]===944130375&&(i[4]===55||i[4]===57)&&i[5]===97?{mime:"image/gif",width:i[7]<<8|i[6],height:i[9]<<8|i[8]}:H}function Ze(i){let A=i.length,e=4,t=i[e]<<8|i[e+1];for(;;){if(e+=t,e>=A)return[0,0];if(i[e]!==255)return[0,0];if(i[e+1]===192||i[e+1]===194)return e+8<A?[i[e+7]<<8|i[e+8],i[e+5]<<8|i[e+6]]:[0,0];e+=2,t=i[e]<<8|i[e+1]}}var re={name:"Unnamed file",size:0,width:"auto",height:"auto",preserveAspectRatio:1,inline:0},Y=class{constructor(A,e,t,s){this._opts=A;this._renderer=e;this._storage=t;this._coreTerminal=s;this._aborted=!1;this._hp=new O;this._header=re;this._metrics=H;let r=Math.ceil(this._opts.iipSizeLimit*4/3),n=Math.min(1048576,r);this._dec=new _e.default(4194304,r,n)}reset(){}start(){this._aborted=!1,this._header=re,this._metrics=H,this._hp.reset()}put(A,e,t){if(!this._aborted)if(this._hp.state===4)this._dec.put(A.subarray(e,t))!==0&&(this._dec.release(),this._aborted=!0);else{let s=this._hp.parse(A,e,t);if(s===-1){this._aborted=!0;return}if(s>0){if(this._header=Object.assign({},re,this._hp.fields),!this._header.inline||!this._header.size||this._header.size>this._opts.iipSizeLimit){this._aborted=!0;return}this._dec.init(),this._dec.put(A.subarray(s,t))!==0&&(this._dec.release(),this._aborted=!0)}}}end(A){if(this._aborted)return!0;let e=0,t=0,s=!0;if((s=A)&&(s=!this._dec.end())&&(s=this._dec.data8.length===this._header.size)&&(this._metrics=Ee(this._dec.data8),(s=this._metrics.mime!=="unsupported")&&(e=this._metrics.width,t=this._metrics.height,(s=e&&t&&e*t<this._opts.pixelLimit)&&([e,t]=this._resize(e,t).map(Math.floor),s=e&&t&&e*t<this._opts.pixelLimit))),!s)return this._dec.release(),!0;let r=new Blob([this._dec.data8],{type:this._metrics.mime});if(this._dec.release(),!window.createImageBitmap){let n=URL.createObjectURL(r),o=new Image;return new Promise(a=>{o.addEventListener("load",()=>{URL.revokeObjectURL(n);let g=m.createCanvas(window.document,e,t);g.getContext("2d")?.drawImage(o,0,0,e,t),this._storage.addImage(g),a(!0)}),o.src=n,setTimeout(()=>a(!0),1e3)})}return createImageBitmap(r,{resizeWidth:e,resizeHeight:t}).then(n=>(this._storage.addImage(n),!0))}_resize(A,e){let t=this._renderer.dimensions?.css.cell.width||w.width,s=this._renderer.dimensions?.css.cell.height||w.height,r=this._renderer.dimensions?.css.canvas.width||t*this._coreTerminal.cols,n=this._renderer.dimensions?.css.canvas.height||s*this._coreTerminal.rows,o=this._dim(this._header.width,r,t),a=this._dim(this._header.height,n,s);if(!o&&!a){let g=r/A,c=(n-s)/e,l=Math.min(g,c);return l<1?[A*l,e*l]:[A,e]}return o?this._header.preserveAspectRatio||!o||!a?[o,e*o/A]:[o,a]:[A*a/e,a]}_dim(A,e,t){return A==="auto"?0:A.endsWith("%")?parseInt(A.slice(0,-1))*e/100:A.endsWith("px")?parseInt(A.slice(0,-2)):parseInt(A)*t}};var p=F(G());var De=F(fe());var AA=4194304,oe=p.PALETTE_ANSI_256;oe.set(p.PALETTE_VT340_COLOR);var z=class{constructor(A,e,t){this._opts=A;this._storage=e;this._coreTerminal=t;this._size=0;this._aborted=!1;(0,De.DecoderAsync)({memoryLimit:this._opts.pixelLimit*4,palette:oe,paletteLimit:this._opts.sixelPaletteLimit}).then(s=>this._dec=s)}reset(){this._dec&&(this._dec.release(),this._dec._palette.fill(0),this._dec.init(0,oe,this._opts.sixelPaletteLimit))}hook(A){if(this._size=0,this._aborted=!1,this._dec){let e=A.params[1]===1?0:tA(this._coreTerminal._core._inputHandler._curAttrData,this._coreTerminal._core._themeService?.colors);this._dec.init(e,null,this._opts.sixelPaletteLimit)}}put(A,e,t){if(!(this._aborted||!this._dec)){if(this._size+=t-e,this._size>this._opts.sixelSizeLimit){console.warn("SIXEL: too much data, aborting"),this._aborted=!0,this._dec.release();return}try{this._dec.decode(A,e,t)}catch(s){console.warn(`SIXEL: error while decoding image - ${s}`),this._aborted=!0,this._dec.release()}}}unhook(A){if(this._aborted||!A||!this._dec)return!0;let e=this._dec.width,t=this._dec.height;if(!e||!t)return t&&this._storage.advanceCursor(t),!0;let s=m.createCanvas(void 0,e,t);return s.getContext("2d")?.putImageData(new ImageData(this._dec.data8,e,t),0,0),this._dec.memoryUsage>AA&&this._dec.release(),this._storage.addImage(s),!0}};function tA(i,A){let e=0;if(!A)return e;if(i.isInverse())if(i.isFgDefault())e=q(A.foreground.rgba);else if(i.isFgRGB()){let t=i.constructor.toColorRGB(i.getFgColor());e=(0,p.toRGBA8888)(...t)}else e=q(A.ansi[i.getFgColor()].rgba);else if(i.isBgDefault())e=q(A.background.rgba);else if(i.isBgRGB()){let t=i.constructor.toColorRGB(i.getBgColor());e=(0,p.toRGBA8888)(...t)}else e=q(A.ansi[i.getBgColor()].rgba);return e}function q(i){return p.BIG_ENDIAN?i:(i&255)<<24|(i>>>8&255)<<16|(i>>>16&255)<<8|i>>>24&255}var we={enableSizeReports:!0,pixelLimit:16777216,sixelSupport:!0,sixelScrolling:!0,sixelPaletteLimit:256,sixelSizeLimit:25e6,storageLimit:128,showPlaceholder:!0,iipSupport:!0,iipSizeLimit:2e7},be=4096;var Se=class{constructor(A){this._disposables=[];this._handlers=new Map;this._opts=Object.assign({},we,A),this._defaultOpts=Object.assign({},we,A)}dispose(){for(let A of this._disposables)A.dispose();this._disposables.length=0,this._handlers.clear()}_disposeLater(...A){for(let e of A)this._disposables.push(e)}activate(A){if(this._terminal=A,this._renderer=new m(A),this._storage=new U(A,this._renderer,this._opts),this._opts.enableSizeReports){let e=A.options.windowOptions??{};e.getWinSizePixels=!0,e.getCellSizePixels=!0,e.getWinSizeChars=!0,A.options.windowOptions=e}if(this._disposeLater(this._renderer,this._storage,A.parser.registerCsiHandler({prefix:"?",final:"h"},e=>this._decset(e)),A.parser.registerCsiHandler({prefix:"?",final:"l"},e=>this._decrst(e)),A.parser.registerCsiHandler({final:"c"},e=>this._da1(e)),A.parser.registerCsiHandler({prefix:"?",final:"S"},e=>this._xtermGraphicsAttributes(e)),A.onRender(e=>this._storage?.render(e)),A.parser.registerCsiHandler({intermediates:"!",final:"p"},()=>this.reset()),A.parser.registerEscHandler({final:"c"},()=>this.reset()),A._core._inputHandler.onRequestReset(()=>this.reset()),A.buffer.onBufferChange(()=>this._storage?.wipeAlternate()),A.onResize(e=>this._storage?.viewportResize(e))),this._opts.sixelSupport){let e=new z(this._opts,this._storage,A);this._handlers.set("sixel",e),this._disposeLater(A._core._inputHandler._parser.registerDcsHandler({final:"q"},e))}if(this._opts.iipSupport){let e=new Y(this._opts,this._renderer,this._storage,A);this._handlers.set("iip",e),this._disposeLater(A._core._inputHandler._parser.registerOscHandler(1337,e))}}reset(){this._opts.sixelScrolling=this._defaultOpts.sixelScrolling,this._opts.sixelPaletteLimit=this._defaultOpts.sixelPaletteLimit,this._storage?.reset();for(let A of this._handlers.values())A.reset();return!1}get storageLimit(){return this._storage?.getLimit()||-1}set storageLimit(A){this._storage?.setLimit(A),this._opts.storageLimit=A}get storageUsage(){return this._storage?this._storage.getUsage():-1}get showPlaceholder(){return this._opts.showPlaceholder}set showPlaceholder(A){this._opts.showPlaceholder=A,this._renderer?.showPlaceholder(A)}getImageAtBufferCell(A,e){return this._storage?.getImageAtBufferCell(A,e)}extractTileAtBufferCell(A,e){return this._storage?.extractTileAtBufferCell(A,e)}_report(A){this._terminal?._core.coreService.triggerDataEvent(A)}_decset(A){for(let e=0;e<A.length;++e)switch(A[e]){case 80:this._opts.sixelScrolling=!1;break}return!1}_decrst(A){for(let e=0;e<A.length;++e)switch(A[e]){case 80:this._opts.sixelScrolling=!0;break}return!1}_da1(A){return A[0]?!0:this._opts.sixelSupport?(this._report("\x1B[?62;4;9;22c"),!0):!1}_xtermGraphicsAttributes(A){if(A.length<2)return!0;if(A[0]===1)switch(A[1]){case 1:return this._report(`\x1B[?${A[0]};0;${this._opts.sixelPaletteLimit}S`),!0;case 2:this._opts.sixelPaletteLimit=this._defaultOpts.sixelPaletteLimit,this._report(`\x1B[?${A[0]};0;${this._opts.sixelPaletteLimit}S`);for(let e of this._handlers.values())e.reset();return!0;case 3:return A.length>2&&!(A[2]instanceof Array)&&A[2]<=be?(this._opts.sixelPaletteLimit=A[2],this._report(`\x1B[?${A[0]};0;${this._opts.sixelPaletteLimit}S`)):this._report(`\x1B[?${A[0]};2S`),!0;case 4:return this._report(`\x1B[?${A[0]};0;${be}S`),!0;default:return this._report(`\x1B[?${A[0]};2S`),!0}if(A[0]===2)switch(A[1]){case 1:let e=this._renderer?.dimensions?.css.canvas.width,t=this._renderer?.dimensions?.css.canvas.height;if(!e||!t){let r=w;e=(this._terminal?.cols||80)*r.width,t=(this._terminal?.rows||24)*r.height}if(e*t<this._opts.pixelLimit)this._report(`\x1B[?${A[0]};0;${e.toFixed(0)};${t.toFixed(0)}S`);else{let r=Math.floor(Math.sqrt(this._opts.pixelLimit));this._report(`\x1B[?${A[0]};0;${r};${r}S`)}return!0;case 4:let s=Math.floor(Math.sqrt(this._opts.pixelLimit));return this._report(`\x1B[?${A[0]};0;${s};${s}S`),!0;default:return this._report(`\x1B[?${A[0]};2S`),!0}return this._report(`\x1B[?${A[0]};1S`),!0}};export{Se as ImageAddon};
18
18
  //# sourceMappingURL=addon-image.mjs.map