@xterm/addon-image 0.10.0-beta.160 → 0.10.0-beta.162
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/README.md +3 -1
- package/lib/addon-image.js +1 -1
- package/lib/addon-image.js.map +1 -1
- package/lib/addon-image.mjs +1 -1
- package/lib/addon-image.mjs.map +4 -4
- package/package.json +3 -3
- package/src/ImageAddon.ts +17 -1
- package/src/ImageRenderer.ts +84 -43
- package/src/ImageStorage.ts +116 -43
- package/src/Types.ts +8 -2
- package/src/kitty/KittyGraphicsHandler.ts +721 -0
- package/src/kitty/KittyGraphicsTypes.ts +177 -0
- package/src/kitty/KittyImageStorage.ts +134 -0
- package/typings/addon-image.d.ts +9 -0
package/README.md
CHANGED
|
@@ -30,7 +30,9 @@ const customSettings: IImageAddonOptions = {
|
|
|
30
30
|
storageLimit: 128, // FIFO storage limit in MB
|
|
31
31
|
showPlaceholder: true, // whether to show a placeholder for evicted images
|
|
32
32
|
iipSupport: true, // enable iTerm IIP support
|
|
33
|
-
iipSizeLimit: 20000000
|
|
33
|
+
iipSizeLimit: 20000000, // size limit of a single IIP sequence
|
|
34
|
+
kittySupport: true, // enable Kitty graphics support
|
|
35
|
+
kittySizeLimit: 20000000 // size limit of a single Kitty sequence
|
|
34
36
|
}
|
|
35
37
|
|
|
36
38
|
// initialization
|
package/lib/addon-image.js
CHANGED
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
/*! For license information please see addon-image.js.LICENSE.txt */
|
|
2
|
-
!function(A,e){"object"==typeof exports&&"object"==typeof module?module.exports=e():"function"==typeof define&&define.amd?define([],e):"object"==typeof exports?exports.ImageAddon=e():A.ImageAddon=e()}(globalThis,()=>(()=>{"use strict";var A={199(A,e){Object.defineProperty(e,"__esModule",{value:!0}),e.LIMITS=void 0,e.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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"}},389(A,e){function t(A){let e="";for(let t=0;t<A.length;++t)e+=String.fromCharCode(A[t]);return e}function i(A){let e=0;for(let t=0;t<A.length;++t){if(A[t]<48||A[t]>57)throw new Error("illegal char");e=10*e+A[t]-48}return e}function s(A){const e=t(A);if(!e.match(/^((auto)|(\d+?((px)|(%)){0,1}))$/))throw new Error("illegal size");return e}Object.defineProperty(e,"__esModule",{value:!0}),e.HeaderParser=void 0;const r={inline:i,size:i,name:function(A){if("undefined"!=typeof Buffer)return Buffer.from(t(A),"base64").toString();const e=atob(t(A)),i=new Uint8Array(e.length);for(let A=0;A<i.length;++A)i[A]=e.charCodeAt(A);return(new TextDecoder).decode(i)},width:s,height:s,preserveAspectRatio:i},a=[70,105,108,101],o=1024;e.HeaderParser=class{state=0;_buffer=new Uint32Array(o);_position=0;_key="";fields={};reset(){this._buffer.fill(0),this.state=0,this._position=0,this.fields={},this._key=""}parse(A,e,t){let i=this.state,s=this._position;const r=this._buffer;if(1===i||4===i)return-1;if(0===i&&s>6)return-1;for(let g=e;g<t;++g){const e=A[g];switch(e){case 59:if(!this._storeValue(s))return this._a();i=2,s=0;break;case 61:if(0===i){for(let A=0;A<a.length;++A)if(r[A]!==a[A])return this._a();i=2,s=0}else if(2===i){if(!this._storeKey(s))return this._a();i=3,s=0}else if(3===i){if(s>=o)return this._a();r[s++]=e}break;case 58:return 3!==i||this._storeValue(s)?(this.state=4,g+1):this._a();default:if(s>=o)return this._a();r[s++]=e}}return this.state=i,this._position=s,-2}_a(){return this.state=1,-1}_storeKey(A){const e=t(this._buffer.subarray(0,A));return!!e&&(this._key=e,this.fields[e]=null,!0)}_storeValue(A){if(this._key){try{const e=this._buffer.slice(0,A);this.fields[this._key]=r[this._key]?r[this._key](e):e}catch(A){return!1}return!0}return!1}}},426(A,e){function t(A){return{dispose:A}}function i(A){if(!A)return A;if(Array.isArray(A)){for(const e of A)e.dispose();return[]}return A.dispose(),A}Object.defineProperty(e,"__esModule",{value:!0}),e.MutableDisposable=e.Disposable=e.DisposableStore=void 0,e.toDisposable=t,e.dispose=i,e.combinedDisposable=function(...A){return t(()=>i(A))};class s{_disposables=new Set;_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(const A of this._disposables)A.dispose();this._disposables.clear()}}clear(){for(const A of this._disposables)A.dispose();this._disposables.clear()}}e.DisposableStore=s;class r{static None=Object.freeze({dispose(){}});_store=new s;dispose(){this._store.dispose()}_register(A){return this._store.add(A)}}e.Disposable=r,e.MutableDisposable=class{_value;_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}}},462(A,e){Object.defineProperty(e,"__esModule",{value:!0}),e.UNSUPPORTED_TYPE=void 0,e.imageType=function(A){if(A.length<24)return e.UNSUPPORTED_TYPE;const t=new Uint32Array(A.buffer,A.byteOffset,6);if(1196314761===t[0]&&169478669===t[1]&&1380206665===t[3])return{mime:"image/png",width:A[16]<<24|A[17]<<16|A[18]<<8|A[19],height:A[20]<<24|A[21]<<16|A[22]<<8|A[23]};if(255===A[0]&&216===A[1]&&255===A[2]){const[e,t]=function(A){const e=A.length;let t=4,i=A[t]<<8|A[t+1];for(;;){if(t+=i,t>=e)return[0,0];if(255!==A[t])return[0,0];if(192===A[t+1]||194===A[t+1])return t+8<e?[A[t+7]<<8|A[t+8],A[t+5]<<8|A[t+6]]:[0,0];t+=2,i=A[t]<<8|A[t+1]}}(A);return{mime:"image/jpeg",width:e,height:t}}return 944130375!==t[0]||55!==A[4]&&57!==A[4]||97!==A[5]?e.UNSUPPORTED_TYPE:{mime:"image/gif",width:A[7]<<8|A[6],height:A[9]<<8|A[8]}},e.UNSUPPORTED_TYPE={mime:"unsupported",width:0,height:0}},463(A,e,t){Object.defineProperty(e,"__esModule",{value:!0}),e.ImageRenderer=void 0;const i=t(939),s=t(426);class r extends s.Disposable{_terminal;canvas;_ctx;_placeholder;_placeholderBitmap;_optionsRefresh=this._register(new s.MutableDisposable);_oldOpen;_renderService;_oldSetRenderer;static createCanvas(A,e,t){const i=(null!=A?A:document).createElement("canvas");return i.width=0|e,i.height=0|t,i}static createImageData(A,e,t,i){if("function"!=typeof ImageData){const s=A.createImageData(e,t);return i&&s.data.set(new Uint8ClampedArray(i,0,e*t*4)),s}return i?new ImageData(new Uint8ClampedArray(i,0,e*t*4),e,t):new ImageData(e,t)}static createImageBitmap(A){return"function"!=typeof createImageBitmap?Promise.resolve(void 0):createImageBitmap(A)}constructor(A){super(),this._terminal=A,this._oldOpen=this._terminal._core.open,this._terminal._core.open=A=>{var e;null===(e=this._oldOpen)||void 0===e||e.call(this._terminal._core,A),this._open()},this._terminal._core.screenElement&&this._open(),this._optionsRefresh.value=this._terminal._core.optionsService.onOptionChange(A=>{var e;"fontSize"===A&&(this.rescaleCanvas(),null===(e=this._renderService)||void 0===e||e.refreshRows(0,this._terminal.rows))}),this._register((0,s.toDisposable)(()=>{var A;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,null===(A=this._placeholderBitmap)||void 0===A||A.close(),this._placeholderBitmap=void 0,this._placeholder=void 0}))}showPlaceholder(A){var e,t;A?this._placeholder||-1===this.cellSize.height||this._createPlaceHolder(Math.max(this.cellSize.height+1,24)):(null===(e=this._placeholderBitmap)||void 0===e||e.close(),this._placeholderBitmap=void 0,this._placeholder=void 0),null===(t=this._renderService)||void 0===t||t.refreshRows(0,this._terminal.rows)}get dimensions(){return this._terminal.dimensions}get cellSize(){var A,e;return{width:(null===(A=this.dimensions)||void 0===A?void 0:A.css.cell.width)||-1,height:(null===(e=this.dimensions)||void 0===e?void 0:e.css.cell.height)||-1}}clearLines(A,e){var t,i,s,r;null===(t=this._ctx)||void 0===t||t.clearRect(0,A*((null===(i=this.dimensions)||void 0===i?void 0:i.css.cell.height)||0),(null===(s=this.dimensions)||void 0===s?void 0:s.css.canvas.width)||0,(++e-A)*((null===(r=this.dimensions)||void 0===r?void 0:r.css.cell.height)||0))}clearAll(){var A,e,t;null===(A=this._ctx)||void 0===A||A.clearRect(0,0,(null===(e=this.canvas)||void 0===e?void 0:e.width)||0,(null===(t=this.canvas)||void 0===t?void 0:t.height)||0)}draw(A,e,t,i,s=1){if(!this._ctx)return;const{width:r,height:a}=this.cellSize;if(-1===r||-1===a)return;this._rescaleImage(A,r,a);const o=A.actual,g=Math.ceil(o.width/r),h=e%g*r,n=Math.floor(e/g)*a,I=t*r,l=i*a,C=s*r+h>o.width?o.width-h:s*r,B=n+a>o.height?o.height-n:a;this._ctx.drawImage(o,Math.floor(h),Math.floor(n),Math.ceil(C),Math.ceil(B),Math.floor(I),Math.floor(l),Math.ceil(C),Math.ceil(B))}extractTile(A,e){const{width:t,height:i}=this.cellSize;if(-1===t||-1===i)return;this._rescaleImage(A,t,i);const s=A.actual,a=Math.ceil(s.width/t),o=e%a*t,g=Math.floor(e/a)*i,h=t+o>s.width?s.width-o:t,n=g+i>s.height?s.height-g:i,I=r.createCanvas(this.document,h,n),l=I.getContext("2d");return l?(l.drawImage(s,Math.floor(o),Math.floor(g),Math.floor(h),Math.floor(n),0,0,Math.floor(h),Math.floor(n)),I):void 0}drawPlaceholder(A,e,t=1){var i;if(this._ctx){const{width:s,height:r}=this.cellSize;if(-1===s||-1===r)return;if(this._placeholder?r>=this._placeholder.height&&this._createPlaceHolder(r+1):this._createPlaceHolder(Math.max(r+1,24)),!this._placeholder)return;this._ctx.drawImage(null!==(i=this._placeholderBitmap)&&void 0!==i?i:this._placeholder,A*s,e*r%2?0:1,s*t,r,A*s,e*r,s*t,r)}}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(A,e,t){if(e===A.actualCellSize.width&&t===A.actualCellSize.height)return;const{width:i,height:s}=A.origCellSize;if(e===i&&t===s)return A.actual=A.orig,A.actualCellSize.width=i,void(A.actualCellSize.height=s);const a=r.createCanvas(this.document,Math.ceil(A.orig.width*e/i),Math.ceil(A.orig.height*t/s)),o=a.getContext("2d");o&&(o.drawImage(A.orig,0,0,a.width,a.height),A.actual=a,A.actualCellSize.width=e,A.actualCellSize.height=t)}_open(){this._renderService=this._terminal._core._renderService,this._oldSetRenderer=this._renderService.setRenderer.bind(this._renderService),this._renderService.setRenderer=A=>{var e;this.removeLayerFromDom(),null===(e=this._oldSetRenderer)||void 0===e||e.call(this._renderService,A)}}insertLayerToDom(){var A,e;this.document&&this._terminal._core.screenElement?this.canvas||(this.canvas=r.createCanvas(this.document,(null===(A=this.dimensions)||void 0===A?void 0:A.css.canvas.width)||0,(null===(e=this.dimensions)||void 0===e?void 0:e.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(A=24){var e;null===(e=this._placeholderBitmap)||void 0===e||e.close(),this._placeholderBitmap=void 0;const t=32,s=r.createCanvas(this.document,t,A),a=s.getContext("2d",{alpha:!1});if(!a)return;const o=r.createImageData(a,t,A),g=new Uint32Array(o.data.buffer),h=(0,i.toRGBA8888)(0,0,0),n=(0,i.toRGBA8888)(255,255,255);g.fill(h);for(let e=0;e<A;++e){const A=e%2,i=e*t;for(let e=0;e<t;e+=2)g[i+e+A]=n}a.putImageData(o,0,0);const I=screen.width+t-1&-32||4096;this._placeholder=r.createCanvas(this.document,I,A);const l=this._placeholder.getContext("2d",{alpha:!1});if(l){for(let A=0;A<I;A+=t)l.drawImage(s,A,0);r.createImageBitmap(this._placeholder).then(A=>this._placeholderBitmap=A)}else this._placeholder=void 0}get document(){var A;return null===(A=this._terminal._core._coreBrowserService)||void 0===A?void 0:A.window.document}}e.ImageRenderer=r},552(A,e){Object.defineProperty(e,"__esModule",{value:!0}),e.InWasm=function(A){if(A.d){const{t:e,s:i,d:s}=A;let r,a;const o=WebAssembly;return 0===e?i?A=>new o.Instance(a||(a=new o.Module(r||(r=t(s)))),A):A=>a?o.instantiate(a,A):o.instantiate(r||(r=t(s)),A).then(A=>(a=A.module)&&A.instance):1===e?i?()=>a||(a=new o.Module(r||(r=t(s)))):()=>a?Promise.resolve(a):o.compile(r||(r=t(s))).then(A=>a=A):i?()=>r||(r=t(s)):()=>Promise.resolve(r||(r=t(s)))}if("undefined"==typeof _wasmCtx)throw new Error('must run "inwasm"');_wasmCtx.add(A)};let t=A=>{if(Uint8Array.fromBase64)return Uint8Array.fromBase64(A);if("undefined"!=typeof Buffer)return Buffer.from(A,"base64");const e=atob(A),t=new Uint8Array(e.length);for(let A=0;A<t.length;++A)t[A]=e.charCodeAt(A);return t}},566(A,e,t){Object.defineProperty(e,"__esModule",{value:!0}),e.SixelHandler=void 0;const i=t(939),s=t(463),r=t(591),a=i.PALETTE_ANSI_256;function o(A){return i.BIG_ENDIAN?A:(255&A)<<24|(A>>>8&255)<<16|(A>>>16&255)<<8|A>>>24&255}a.set(i.PALETTE_VT340_COLOR),e.SixelHandler=class{_opts;_storage;_coreTerminal;_size=0;_aborted=!1;_dec;constructor(A,e,t){this._opts=A,this._storage=e,this._coreTerminal=t,(0,r.DecoderAsync)({memoryLimit:4*this._opts.pixelLimit,palette:a,paletteLimit:this._opts.sixelPaletteLimit}).then(A=>this._dec=A)}reset(){this._dec&&(this._dec.release(),this._dec._palette.fill(0),this._dec.init(0,a,this._opts.sixelPaletteLimit))}hook(A){var e;if(this._size=0,this._aborted=!1,this._dec){const t=1===A.params[1]?0:function(A,e){let t=0;if(!e)return t;if(A.isInverse())if(A.isFgDefault())t=o(e.foreground.rgba);else if(A.isFgRGB()){const e=A.constructor.toColorRGB(A.getFgColor());t=(0,i.toRGBA8888)(...e)}else t=o(e.ansi[A.getFgColor()].rgba);else if(A.isBgDefault())t=o(e.background.rgba);else if(A.isBgRGB()){const e=A.constructor.toColorRGB(A.getBgColor());t=(0,i.toRGBA8888)(...e)}else t=o(e.ansi[A.getBgColor()].rgba);return t}(this._coreTerminal._core._inputHandler._curAttrData,null===(e=this._coreTerminal._core._themeService)||void 0===e?void 0:e.colors);this._dec.init(t,null,this._opts.sixelPaletteLimit)}}put(A,e,t){if(!this._aborted&&this._dec){if(this._size+=t-e,this._size>this._opts.sixelSizeLimit)return console.warn("SIXEL: too much data, aborting"),this._aborted=!0,void this._dec.release();try{this._dec.decode(A,e,t)}catch(A){console.warn(`SIXEL: error while decoding image - ${A}`),this._aborted=!0,this._dec.release()}}}unhook(A){var e;if(this._aborted||!A||!this._dec)return!0;const t=this._dec.width,i=this._dec.height;if(!t||!i)return i&&this._storage.advanceCursor(i),!0;const r=s.ImageRenderer.createCanvas(void 0,t,i);return null===(e=r.getContext("2d"))||void 0===e||e.putImageData(new ImageData(this._dec.data8,t,i),0,0),this._dec.memoryUsage>4194304&&this._dec.release(),this._storage.addImage(r),!0}}},591(A,e,t){Object.defineProperty(e,"__esModule",{value:!0}),e.decodeAsync=e.decode=e.Decoder=e.DecoderAsync=void 0;const i=t(939),s=t(199),r=function(A){if("undefined"!=typeof Buffer)return Buffer.from(A,"base64");const e=atob(A),t=new Uint8Array(e.length);for(let A=0;A<t.length;++A)t[A]=e.charCodeAt(A);return t}(s.LIMITS.BYTES);let a;const o=new Uint32Array;class g{constructor(){this.bandHandler=A=>1,this.modeHandler=A=>1}handle_band(A){return this.bandHandler(A)}mode_parsed(A){return this.modeHandler(A)}}const h={memoryLimit:134217728,sixelColor:i.DEFAULT_FOREGROUND,fillColor:i.DEFAULT_BACKGROUND,palette:i.PALETTE_VT340_COLOR,paletteLimit:s.LIMITS.PALETTE_SIZE,truncate:!0};function n(A){const e=new g,t={env:{handle_band:e.handle_band.bind(e),mode_parsed:e.mode_parsed.bind(e)}};return WebAssembly.instantiate(a||r,t).then(t=>(a=a||t.module,new I(A,t.instance||t,e)))}e.DecoderAsync=n;class I{constructor(A,e,t){if(this._PIXEL_OFFSET=s.LIMITS.MAX_WIDTH+4,this._canvas=o,this._bandWidths=[],this._maxWidth=0,this._minWidth=s.LIMITS.MAX_WIDTH,this._lastOffset=0,this._currentHeight=0,this._opts=Object.assign({},h,A),this._opts.paletteLimit>s.LIMITS.PALETTE_SIZE)throw new Error(`DecoderOptions.paletteLimit must not exceed ${s.LIMITS.PALETTE_SIZE}`);if(e)t.bandHandler=this._handle_band.bind(this),t.modeHandler=this._initCanvas.bind(this);else{const A=a||(a=new WebAssembly.Module(r));e=new WebAssembly.Instance(A,{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(),s.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(),s.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(i.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(2===A){const A=this.width*this.height;if(A>this._canvas.length){if(this._opts.memoryLimit&&4*A>this._opts.memoryLimit)throw this.release(),new Error("image exceeds memory limit");this._canvas=new Uint32Array(A)}this._maxWidth=this._width}else if(1===A)if(2===this._level){const A=Math.min(this._rasterWidth,s.LIMITS.MAX_WIDTH)*this._rasterHeight;if(A>this._canvas.length){if(this._opts.memoryLimit&&4*A>this._opts.memoryLimit)throw this.release(),new Error("image exceeds memory limit");this._canvas=new Uint32Array(A)}}else this._canvas.length<65536&&(this._canvas=new Uint32Array(65536));return 0}_realloc(A,e){const t=A+e;if(t>this._canvas.length){if(this._opts.memoryLimit&&4*t>this._opts.memoryLimit)throw this.release(),new Error("image exceeds memory limit");const A=new Uint32Array(65536*Math.ceil(t/65536));A.set(this._canvas),this._canvas=A}}_handle_band(A){const e=this._PIXEL_OFFSET;let t=this._lastOffset;if(2===this._mode){let i=this.height-this._currentHeight,s=0;for(;s<6&&i>0;)this._canvas.set(this._pSrc.subarray(e*s,e*s+A),t+A*s),s++,i--;this._lastOffset+=A*s,this._currentHeight+=s}else if(1===this._mode){this._realloc(t,6*A),this._maxWidth=Math.max(this._maxWidth,A),this._minWidth=Math.min(this._minWidth,A);for(let i=0;i<6;++i)this._canvas.set(this._pSrc.subarray(e*i,e*i+A),t+A*i);this._bandWidths.push(A),this._lastOffset+=6*A,this._currentHeight+=6}return 0}get width(){return 1!==this._mode?this._width:Math.max(this._maxWidth,this._wasm.current_width())}get height(){return 1!==this._mode?this._height:this._wasm.current_width()?6*this._bandWidths.length+this._wasm.current_height():6*this._bandWidths.length}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,i=this._opts.truncate){this._wasm.init(this._opts.sixelColor,A,t,i?1:0),e&&this._palette.set(e.subarray(0,s.LIMITS.PALETTE_SIZE)),this._bandWidths.length=0,this._maxWidth=0,this._minWidth=s.LIMITS.MAX_WIDTH,this._lastOffset=0,this._currentHeight=0}decode(A,e=0,t=A.length){let i=e;for(;i<t;){const e=Math.min(t-i,s.LIMITS.CHUNK_SIZE);this._chunk.set(A.subarray(i,i+=e)),this._wasm.decode(0,e)}}decodeString(A,e=0,t=A.length){let i=e;for(;i<t;){const e=Math.min(t-i,s.LIMITS.CHUNK_SIZE);for(let t=0,s=i;t<e;++t,++s)this._chunk[t]=A.charCodeAt(s);i+=e,this._wasm.decode(0,e)}}get data32(){if(0===this._mode||!this.width||!this.height)return o;const A=this._wasm.current_width();if(2===this._mode){let e=this.height-this._currentHeight;if(e>0){const t=this._PIXEL_OFFSET;let i=this._lastOffset,s=0;for(;s<6&&e>0;)this._canvas.set(this._pSrc.subarray(t*s,t*s+A),i+A*s),s++,e--;e&&this._canvas.fill(this._fillColor,i+A*s)}return this._canvas.subarray(0,this.width*this.height)}if(1===this._mode){if(this._minWidth===this._maxWidth){let e=!1;if(A)if(A!==this._minWidth)e=!0;else{const e=this._PIXEL_OFFSET;let t=this._lastOffset;this._realloc(t,6*A);for(let i=0;i<6;++i)this._canvas.set(this._pSrc.subarray(e*i,e*i+A),t+A*i)}if(!e)return this._canvas.subarray(0,this.width*this.height)}const e=new Uint32Array(this.width*this.height);e.fill(this._fillColor);let t=0,i=0;for(let A=0;A<this._bandWidths.length;++A){const s=this._bandWidths[A];for(let A=0;A<6;++A)e.set(this._canvas.subarray(i,i+=s),t),t+=this.width}if(A){const i=this._PIXEL_OFFSET,s=this._wasm.current_height();for(let r=0;r<s;++r)e.set(this._pSrc.subarray(i*r,i*r+A),t+this.width*r)}return e}return o}get data8(){return new Uint8ClampedArray(this.data32.buffer,0,this.width*this.height*4)}release(){this._canvas=o,this._bandWidths.length=0,this._maxWidth=0,this._minWidth=s.LIMITS.MAX_WIDTH,this._wasm.init(i.DEFAULT_FOREGROUND,0,this._opts.paletteLimit,0)}}e.Decoder=I,e.decode=function(A,e){const t=new I(e);return t.init(),"string"==typeof A?t.decodeString(A):t.decode(A),{width:t.width,height:t.height,data32:t.data32,data8:t.data8}},e.decodeAsync=async function(A,e){const t=await n(e);return t.init(),"string"==typeof A?t.decodeString(A):t.decode(A),{width:t.width,height:t.height,data32:t.data32,data8:t.data8}}},649(A,e){Object.defineProperty(e,"__esModule",{value:!0}),e.IIPImageStorage=void 0,e.IIPImageStorage=class{_storage;constructor(A){this._storage=A}addImage(A){this._storage.addImage(A,!0)}}},669(A,e,t){Object.defineProperty(e,"__esModule",{value:!0});const i=(0,t(552).InWasm)({s:1,t:0,d:"AGFzbQEAAAABBQFgAAF/Ag8BA2VudgZtZW1vcnkCAAEDAwIAAAcNAgNkZWMAAANlbmQAAQqLBgKZBAEKf0GIKCgCAEGgKGohAUGEKCgCACIDQaAoaiEAQYAoKAIAQQFrQXxxIgRBoChqIQUgBEEQayADSgRAIARBkChqIQMDQCABIABBA2otAABBAnQoAoAgIABBAmotAABBAnQoAoAYIABBAWotAABBAnQoAoAQIAAtAABBAnQoAoAIcnJyIgY2AgAgAUEDaiAAQQdqLQAAQQJ0KAKAICAAQQZqLQAAQQJ0KAKAGCAAQQVqLQAAQQJ0KAKAECAAQQRqLQAAQQJ0KAKACHJyciIHNgIAIAFBBmogAEELai0AAEECdCgCgCAgAEEKai0AAEECdCgCgBggAEEJai0AAEECdCgCgBAgAEEIai0AAEECdCgCgAhycnIiCDYCACABQQlqIABBD2otAABBAnQoAoAgIABBDmotAABBAnQoAoAYIABBDWotAABBAnQoAoAQIABBDGotAABBAnQoAoAIcnJyIgk2AgAgAiAGciAHciAIciAJciECIAFBDGohASAAQRBqIgAgA0kNAAsLIAAgBUkEQANAIAEgAEEDai0AAEECdCgCgCAgAEECai0AAEECdCgCgBggAEEBai0AAEECdCgCgBAgAC0AAEECdCgCgAhycnIiAzYCACACIANyIQIgAUEDaiEBIABBBGoiACAFSQ0ACwtBfyEAIAJB////B00Ef0GEKCAENgIAQYgoIAFBoChrNgIAQQAFQX8LC+0BAQR/AkBBgCgoAgAiAUGEKCgCACIAa0EFTgRAQX8hAxAADQFBgCgoAgAhAUGEKCgCACEAC0F/IQMgASAAayIBQQJIDQAgAC0AoShBAnQoAoAQIAAtAKAoQQJ0KAKACHIhAgJ/IAFBBEYEQEEDQQQgAC0AoyhBPUYbIAAtAKIoQT1GayEBC0EBIAFBA0kNABogAC0AoihBAnQoAoAYIAJyIQJBAiABQQRHDQAaIAAtAKMoQQJ0KAKAICACciECQQMLIQEgAkH///8HSw0AQQAhA0GIKCgCACIAIAI2AKAoQYgoIAAgAWo2AgALIAML"}),s=new Uint8Array("ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".split("").map(A=>A.charCodeAt(0))),r=new Uint32Array(1024);r.fill(4278190080);for(let A=0;A<s.length;++A)r[s[A]]=A<<2;for(let A=0;A<s.length;++A)r[256+s[A]]=A>>4|(A<<4&255)<<8;for(let A=0;A<s.length;++A)r[512+s[A]]=A>>2<<8|(A<<6&255)<<16;for(let A=0;A<s.length;++A)r[768+s[A]]=A<<16;const a=new Uint8Array(0);e.default=class{constructor(A,e,t){if(this._inst=null,this._ended=!0,this._bytes=0,this.keepSize=null!=A?A:1048576,this.maxBytes=null!=e?e:4294901760,this._bytes=null!=t?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]):a}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=null!=A?A:this.maxBytes,this._bytes=null!=e?e:Math.min(this._bytes,this.maxBytes),this._bytes>this.maxBytes||this.maxBytes>4294901760)throw Error("invalid byte settings");let t=this._m32;const 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=i({env:{memory:this._mem}}),t=new Uint32Array(this._mem.buffer,0),t.set(r,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){const e=this._m32[1280]+A;if(this._bytes<e){if(e>this.maxBytes)return-3;let A=this._bytes;for(;(A*=2)<e;);if(A=Math.min(A,this.maxBytes),A<e)return-3;if(A+5152>this._mem.buffer.byteLength){const e=Math.ceil((A+5152-this._mem.buffer.byteLength)/65536);this._mem.grow(e),this._m32=new Uint32Array(this._mem.buffer,0),this._d=new Uint8Array(this._mem.buffer,5152)}this._bytes=A}return 0}put(A){if(!this._inst||this._ended)return-2;if(this._realloc(A.length))return-3;const 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}}},699(A,e,t){Object.defineProperty(e,"__esModule",{value:!0}),e.ImageStorage=e.CELL_SIZE_DEFAULT=void 0;const i=t(463);e.CELL_SIZE_DEFAULT={width:7,height:14};class s{imageId;tileId;_ext=0;get ext(){return this._urlId?-469762049&this._ext|this.underlineStyle<<26:this._ext}set ext(A){this._ext=A}get underlineStyle(){return this._urlId?5:(469762048&this._ext)>>26}set underlineStyle(A){this._ext&=-469762049,this._ext|=A<<26&469762048}get underlineColor(){return 67108863&this._ext}set underlineColor(A){this._ext&=-67108864,this._ext|=67108863&A}get underlineVariantOffset(){const A=(3758096384&this._ext)>>29;return A<0?4294967288^A:A}set underlineVariantOffset(A){this._ext&=536870911,this._ext|=A<<29&3758096384}_urlId=0;get urlId(){return this._urlId}set urlId(A){this._urlId=A}constructor(A=0,e=0,t=-1,i=-1){this.imageId=t,this.tileId=i,this._ext=A,this._urlId=e}clone(){return new s(this._ext,this._urlId,this.imageId,this.tileId)}isEmpty(){return 0===this.underlineStyle&&0===this._urlId&&-1===this.imageId}}const r=new s;e.ImageStorage=class{_terminal;_renderer;_opts;_images=new Map;_lastId=0;_lowestId=0;_fullyCleared=!1;_needsFullClear=!1;_pixelLimit=25e5;_viewportMetrics;constructor(A,e,t){this._terminal=A,this._renderer=e,this._opts=t;try{this.setLimit(this._opts.storageLimit)}catch(A){A instanceof Error&&console.error(A.message),console.warn(`storageLimit is set to ${this.getLimit()} MB`)}this._viewportMetrics={cols:this._terminal.cols,rows:this._terminal.rows}}dispose(){this.reset()}reset(){var A;for(const e of this._images.values())null===(A=e.marker)||void 0===A||A.dispose();this._images.clear(),this._renderer.clearAll()}getLimit(){return 4*this._pixelLimit/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 4*this._getStoredPixels()/1e6}_getStoredPixels(){let A=0;for(const 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){const e=this._images.get(A);this._images.delete(A),e&&window.ImageBitmap&&e.orig instanceof ImageBitmap&&e.orig.close()}wipeAlternate(){var A;const e=[];for(const[t,i]of this._images.entries())"alternate"===i.bufferType&&(null===(A=i.marker)||void 0===A||A.dispose(),e.push(t));for(const A of e)this._delImg(A);this._needsFullClear=!0,this._fullyCleared=!1}addImage(A,t){var i;this._evictOldest(A.width*A.height);let s=this._renderer.cellSize;-1!==s.width&&-1!==s.height||(s=e.CELL_SIZE_DEFAULT);const r=Math.ceil(A.width/s.width),a=Math.ceil(A.height/s.height),o=++this._lastId,g=this._terminal._core.buffer,h=this._terminal.cols,n=this._terminal.rows,I=g.x,l=g.y;let C=I,B=0;t||(g.x=0,g.y=0,C=0),this._terminal._core._inputHandler._dirtyRowTracker.markDirty(g.y);for(let A=0;A<a;++A){const e=g.lines.get(g.y+g.ybase);for(let t=0;t<r&&!(C+t>=h);++t)this._writeToCell(e,C+t,o,A*r+t),B++;if(t)A<a-1&&this._terminal._core._inputHandler.lineFeed();else if(++g.y>=n)break;g.x=C}this._terminal._core._inputHandler._dirtyRowTracker.markDirty(g.y),t?g.x=C:(g.x=I,g.y=l);const Q=[];for(const[A,e]of this._images.entries())e.tileCount<1&&(null===(i=e.marker)||void 0===i||i.dispose(),Q.push(A));for(const A of Q)this._delImg(A);const d=this._terminal.registerMarker(0);null==d||d.onDispose(()=>{this._images.get(o)&&this._delImg(o)}),"alternate"===this._terminal.buffer.active.type&&this._evictOnAlternate();const c={orig:A,origCellSize:s,actual:A,actualCellSize:Object.assign({},s),marker:d||void 0,tileCount:B,bufferType:this._terminal.buffer.active.type};return this._images.set(o,c),o}render(A){var e,t;if(!this._renderer.canvas&&this._images.size&&(this._renderer.insertLayerToDom(),!this._renderer.canvas))return;if(this._renderer.rescaleCanvas(),!this._images.size)return this._fullyCleared||(this._renderer.clearAll(),this._fullyCleared=!0,this._needsFullClear=!1),void(this._renderer.canvas&&this._renderer.removeLayerFromDom());this._needsFullClear&&(this._renderer.clearAll(),this._fullyCleared=!0,this._needsFullClear=!1);const{start:i,end:s}=A,a=this._terminal._core.buffer,o=this._terminal._core.cols;this._renderer.clearLines(i,s);for(let A=i;A<=s;++A){const i=a.lines.get(A+a.ydisp);if(!i)return;for(let s=0;s<o;++s)if(268435456&i.getBg(s)){let a=null!==(e=i._extendedAttrs[s])&&void 0!==e?e:r;const g=a.imageId;if(void 0===g||-1===g)continue;const h=this._images.get(g);if(-1!==a.tileId){const e=a.tileId,n=s;let I=1;for(;++s<o&&268435456&i.getBg(s)&&(a=null!==(t=i._extendedAttrs[s])&&void 0!==t?t:r)&&a.imageId===g&&a.tileId===e+I;)I++;s--,h?h.actual&&this._renderer.draw(h,e,n,A,I):this._opts.showPlaceholder&&this._renderer.drawPlaceholder(n,A,I),this._fullyCleared=!1}}}}viewportResize(A){var e,t;if(!this._images.size)return void(this._viewportMetrics=A);if(this._viewportMetrics.cols>=A.cols)return void(this._viewportMetrics=A);const i=this._terminal._core.buffer,s=i.lines.length,a=this._viewportMetrics.cols-1;for(let o=0;o<s;++o){const s=i.lines.get(o);if(268435456&s.getBg(a)){const i=null!==(t=s._extendedAttrs[a])&&void 0!==t?t:r,o=i.imageId;if(void 0===o||-1===o)continue;const g=this._images.get(o);if(!g)continue;const h=Math.ceil(((null===(e=g.actual)||void 0===e?void 0:e.width)||0)/g.actualCellSize.width);if(i.tileId%h+1>=h)continue;let n=!1;for(let e=a+1;e>A.cols;++e)if(4194303&s._data[3*e+0]){n=!0;break}if(n)continue;const I=Math.min(A.cols,h-i.tileId%h+a);let l=i.tileId;for(let A=a+1;A<I;++A)this._writeToCell(s,A,o,++l),g.tileCount++}}this._viewportMetrics=A}getImageAtBufferCell(A,e){var t,s,a;const o=this._terminal._core.buffer.lines.get(e);if(o&&268435456&o.getBg(A)){const e=null!==(a=o._extendedAttrs[A])&&void 0!==a?a:r;if(e.imageId&&-1!==e.imageId){const A=null===(t=this._images.get(e.imageId))||void 0===t?void 0:t.orig;if(window.ImageBitmap&&A instanceof ImageBitmap){const e=i.ImageRenderer.createCanvas(window.document,A.width,A.height);return null===(s=e.getContext("2d"))||void 0===s||s.drawImage(A,0,0,A.width,A.height),e}return A}}}extractTileAtBufferCell(A,e){var t;const i=this._terminal._core.buffer.lines.get(e);if(i&&268435456&i.getBg(A)){const e=null!==(t=i._extendedAttrs[A])&&void 0!==t?t:r;if(e.imageId&&-1!==e.imageId&&-1!==e.tileId){const A=this._images.get(e.imageId);if(A)return this._renderer.extractTile(A,e.tileId)}}}_evictOldest(A){var e;const t=this._getStoredPixels();let i=t;for(;this._pixelLimit<i+A&&this._images.size;){const A=this._images.get(++this._lowestId);A&&A.orig&&(i-=A.orig.width*A.orig.height,A.actual&&A.orig!==A.actual&&(i-=A.actual.width*A.actual.height),null===(e=A.marker)||void 0===e||e.dispose(),this._delImg(this._lowestId))}return t-i}_writeToCell(A,e,t,i){if(268435456&A._data[3*e+2]){const r=A._extendedAttrs[e];if(r){if(void 0!==r.imageId){const A=this._images.get(r.imageId);return A&&A.tileCount--,r.imageId=t,void(r.tileId=i)}return void(A._extendedAttrs[e]=new s(r.ext,r.urlId,t,i))}}A._data[3*e+2]|=268435456,A._extendedAttrs[e]=new s(0,0,t,i)}_evictOnAlternate(){var A,e;for(const A of this._images.values())"alternate"===A.bufferType&&(A.tileCount=0);const t=this._terminal._core.buffer;for(let e=0;e<this._terminal.rows;++e){const i=t.lines.get(e);if(i)for(let e=0;e<this._terminal.cols;++e)if(268435456&i._data[3*e+2]){const t=null===(A=i._extendedAttrs[e])||void 0===A?void 0:A.imageId;if(t){const A=this._images.get(t);A&&A.tileCount++}}}const i=[];for(const[A,t]of this._images.entries())"alternate"!==t.bufferType||t.tileCount||(null===(e=t.marker)||void 0===e||e.dispose(),i.push(A));for(const A of i)this._delImg(A)}}},795(A,e,t){var i=this&&this.__importDefault||function(A){return A&&A.__esModule?A:{default:A}};Object.defineProperty(e,"__esModule",{value:!0}),e.IIPHandler=void 0;const s=t(463),r=t(699),a=i(t(669)),o=t(389),g=t(462),h={name:"Unnamed file",size:0,width:"auto",height:"auto",preserveAspectRatio:1,inline:0};e.IIPHandler=class{_opts;_renderer;_storage;_coreTerminal;_aborted=!1;_hp=new o.HeaderParser;_header=h;_dec;_metrics=g.UNSUPPORTED_TYPE;constructor(A,e,t,i){this._opts=A,this._renderer=e,this._storage=t,this._coreTerminal=i;const s=Math.ceil(4*this._opts.iipSizeLimit/3),r=Math.min(1048576,s);this._dec=new a.default(4194304,s,r)}reset(){}start(){this._aborted=!1,this._header=h,this._metrics=g.UNSUPPORTED_TYPE,this._hp.reset()}put(A,e,t){if(!this._aborted)if(4===this._hp.state)0!==this._dec.put(A.subarray(e,t))&&(this._dec.release(),this._aborted=!0);else{const i=this._hp.parse(A,e,t);if(-1===i)return void(this._aborted=!0);if(i>0){if(this._header=Object.assign({},h,this._hp.fields),!this._header.inline||!this._header.size||this._header.size>this._opts.iipSizeLimit)return void(this._aborted=!0);this._dec.init(),0!==this._dec.put(A.subarray(i,t))&&(this._dec.release(),this._aborted=!0)}}}end(A){if(this._aborted)return!0;let e=0,t=0,i=!0;if((i=A)&&(i=!this._dec.end())&&(i=this._dec.data8.length===this._header.size)&&(this._metrics=(0,g.imageType)(this._dec.data8),(i="unsupported"!==this._metrics.mime)&&(e=this._metrics.width,t=this._metrics.height,(i=e&&t&&e*t<this._opts.pixelLimit)&&([e,t]=this._resize(e,t).map(Math.floor),i=e&&t&&e*t<this._opts.pixelLimit))),!i)return this._dec.release(),!0;const r=new Blob([this._dec.data8],{type:this._metrics.mime});if(this._dec.release(),!window.createImageBitmap){const A=URL.createObjectURL(r),i=new Image;return new Promise(r=>{i.addEventListener("load",()=>{var a;URL.revokeObjectURL(A);const o=s.ImageRenderer.createCanvas(window.document,e,t);null===(a=o.getContext("2d"))||void 0===a||a.drawImage(i,0,0,e,t),this._storage.addImage(o),r(!0)}),i.src=A,setTimeout(()=>r(!0),1e3)})}return createImageBitmap(r,{resizeWidth:e,resizeHeight:t}).then(A=>(this._storage.addImage(A),!0))}_resize(A,e){var t,i,s,a;const o=(null===(t=this._renderer.dimensions)||void 0===t?void 0:t.css.cell.width)||r.CELL_SIZE_DEFAULT.width,g=(null===(i=this._renderer.dimensions)||void 0===i?void 0:i.css.cell.height)||r.CELL_SIZE_DEFAULT.height,h=(null===(s=this._renderer.dimensions)||void 0===s?void 0:s.css.canvas.width)||o*this._coreTerminal.cols,n=(null===(a=this._renderer.dimensions)||void 0===a?void 0:a.css.canvas.height)||g*this._coreTerminal.rows,I=this._dim(this._header.width,h,o),l=this._dim(this._header.height,n,g);if(!I&&!l){const t=h/A,i=(n-g)/e,s=Math.min(t,i);return s<1?[A*s,e*s]:[A,e]}return I?!this._header.preserveAspectRatio&&I&&l?[I,l]:[I,e*I/A]:[A*l/e,l]}_dim(A,e,t){return"auto"===A?0:A.endsWith("%")?parseInt(A.slice(0,-1))*e/100:A.endsWith("px")?parseInt(A.slice(0,-2)):parseInt(A)*t}}},939(A,e){function t(A){return 255&A}function i(A){return A>>>8&255}function s(A){return A>>>16&255}function r(A,e,t,i=255){return((255&i)<<24|(255&t)<<16|(255&e)<<8|255&A)>>>0}function a(A,e,t){return Math.max(A,Math.min(t,e))}function o(A,e,t){return t<0&&(t+=1),t>1&&(t-=1),6*t<1?e+6*(A-e)*t:2*t<1?A:3*t<2?e+(A-e)*(4-6*t):e}function g(A,e,t){return(4278190080|Math.round(t/100*255)<<16|Math.round(e/100*255)<<8|Math.round(A/100*255))>>>0}Object.defineProperty(e,"__esModule",{value:!0}),e.DEFAULT_FOREGROUND=e.DEFAULT_BACKGROUND=e.PALETTE_ANSI_256=e.PALETTE_VT340_GREY=e.PALETTE_VT340_COLOR=e.normalizeHLS=e.normalizeRGB=e.nearestColorIndex=e.fromRGBA8888=e.toRGBA8888=e.alpha=e.blue=e.green=e.red=e.BIG_ENDIAN=void 0,e.BIG_ENDIAN=255===new Uint8Array(new Uint32Array([4278190080]).buffer)[0],e.BIG_ENDIAN&&console.warn("BE platform detected. This version of node-sixel works only on LE properly."),e.red=t,e.green=i,e.blue=s,e.alpha=function(A){return A>>>24&255},e.toRGBA8888=r,e.fromRGBA8888=function(A){return[255&A,A>>8&255,A>>16&255,A>>>24]},e.nearestColorIndex=function(A,e){const r=t(A),a=i(A),o=s(A);let g=Number.MAX_SAFE_INTEGER,h=-1;for(let A=0;A<e.length;++A){const t=r-e[A][0],i=a-e[A][1],s=o-e[A][2],n=t*t+i*i+s*s;if(!n)return A;n<g&&(g=n,h=A)}return h},e.normalizeRGB=g,e.normalizeHLS=function(A,e,t){return function(A,e,t){if(!t){const A=Math.round(255*e);return r(A,A,A)}const i=e<.5?e*(1+t):e+t-e*t,s=2*e-i;return r(a(0,255,Math.round(255*o(i,s,A+1/3))),a(0,255,Math.round(255*o(i,s,A))),a(0,255,Math.round(255*o(i,s,A-1/3))))}((A+240)/360,e/100,t/100)},e.PALETTE_VT340_COLOR=new Uint32Array([g(0,0,0),g(20,20,80),g(80,13,13),g(20,80,20),g(80,20,80),g(20,80,80),g(80,80,20),g(53,53,53),g(26,26,26),g(33,33,60),g(60,26,26),g(33,60,33),g(60,33,60),g(33,60,60),g(60,60,33),g(80,80,80)]),e.PALETTE_VT340_GREY=new Uint32Array([g(0,0,0),g(13,13,13),g(26,26,26),g(40,40,40),g(6,6,6),g(20,20,20),g(33,33,33),g(46,46,46),g(0,0,0),g(13,13,13),g(26,26,26),g(40,40,40),g(6,6,6),g(20,20,20),g(33,33,33),g(46,46,46)]),e.PALETTE_ANSI_256=(()=>{const A=[r(0,0,0),r(205,0,0),r(0,205,0),r(205,205,0),r(0,0,238),r(205,0,205),r(0,250,205),r(229,229,229),r(127,127,127),r(255,0,0),r(0,255,0),r(255,255,0),r(92,92,255),r(255,0,255),r(0,255,255),r(255,255,255)],e=[0,95,135,175,215,255];for(let t=0;t<6;++t)for(let i=0;i<6;++i)for(let s=0;s<6;++s)A.push(r(e[t],e[i],e[s]));for(let e=8;e<=238;e+=10)A.push(r(e,e,e));return new Uint32Array(A)})(),e.DEFAULT_BACKGROUND=r(0,0,0,255),e.DEFAULT_FOREGROUND=r(255,255,255,255)},994(A,e,t){Object.defineProperty(e,"__esModule",{value:!0}),e.SixelImageStorage=void 0;const i=t(699);e.SixelImageStorage=class{_storage;_opts;_renderer;_terminal;constructor(A,e,t,i){this._storage=A,this._opts=e,this._renderer=t,this._terminal=i}addImage(A){this._storage.addImage(A,this._opts.sixelScrolling)}advanceCursor(A){if(this._opts.sixelScrolling){let e=this._renderer.cellSize;-1!==e.width&&-1!==e.height||(e=i.CELL_SIZE_DEFAULT);const t=Math.ceil(A/e.height);for(let A=1;A<t;++A)this._terminal._core._inputHandler.lineFeed()}}}}},e={};function t(i){var s=e[i];if(void 0!==s)return s.exports;var r=e[i]={exports:{}};return A[i].call(r.exports,r,r.exports,t),r.exports}var i={};return(()=>{var A=i;Object.defineProperty(A,"__esModule",{value:!0}),A.ImageAddon=void 0;const e=t(795),s=t(463),r=t(699),a=t(566),o=t(994),g=t(649),h={enableSizeReports:!0,pixelLimit:16777216,sixelSupport:!0,sixelScrolling:!0,sixelPaletteLimit:256,sixelSizeLimit:25e6,storageLimit:128,showPlaceholder:!0,iipSupport:!0,iipSizeLimit:2e7};A.ImageAddon=class{_opts;_defaultOpts;_storage;_renderer;_disposables=[];_terminal;_handlers=new Map;constructor(A){this._opts=Object.assign({},h,A),this._defaultOpts=Object.assign({},h,A)}dispose(){for(const A of this._disposables)A.dispose();this._disposables.length=0,this._handlers.clear()}_disposeLater(...A){for(const e of A)this._disposables.push(e)}activate(A){var t;if(this._terminal=A,this._renderer=new s.ImageRenderer(A),this._storage=new r.ImageStorage(A,this._renderer,this._opts),this._opts.enableSizeReports){const e=null!==(t=A.options.windowOptions)&&void 0!==t?t:{};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"},A=>this._decset(A)),A.parser.registerCsiHandler({prefix:"?",final:"l"},A=>this._decrst(A)),A.parser.registerCsiHandler({final:"c"},A=>this._da1(A)),A.parser.registerCsiHandler({prefix:"?",final:"S"},A=>this._xtermGraphicsAttributes(A)),A.onRender(A=>{var e;return null===(e=this._storage)||void 0===e?void 0:e.render(A)}),A.parser.registerCsiHandler({intermediates:"!",final:"p"},()=>this.reset()),A.parser.registerEscHandler({final:"c"},()=>this.reset()),A._core._inputHandler.onRequestReset(()=>this.reset()),A.buffer.onBufferChange(()=>{var A;return null===(A=this._storage)||void 0===A?void 0:A.wipeAlternate()}),A.onResize(A=>{var e;return null===(e=this._storage)||void 0===e?void 0:e.viewportResize(A)})),this._opts.sixelSupport){const e=new o.SixelImageStorage(this._storage,this._opts,this._renderer,A),t=new a.SixelHandler(this._opts,e,A);this._handlers.set("sixel",t),this._disposeLater(A._core._inputHandler._parser.registerDcsHandler({final:"q"},t))}if(this._opts.iipSupport){const t=new g.IIPImageStorage(this._storage),i=new e.IIPHandler(this._opts,this._renderer,t,A);this._handlers.set("iip",i),this._disposeLater(A._core._inputHandler._parser.registerOscHandler(1337,i))}}reset(){var A;this._opts.sixelScrolling=this._defaultOpts.sixelScrolling,this._opts.sixelPaletteLimit=this._defaultOpts.sixelPaletteLimit,null===(A=this._storage)||void 0===A||A.reset();for(const A of this._handlers.values())A.reset();return!1}get storageLimit(){var A;return(null===(A=this._storage)||void 0===A?void 0:A.getLimit())||-1}set storageLimit(A){var e;null===(e=this._storage)||void 0===e||e.setLimit(A),this._opts.storageLimit=A}get storageUsage(){return this._storage?this._storage.getUsage():-1}get showPlaceholder(){return this._opts.showPlaceholder}set showPlaceholder(A){var e;this._opts.showPlaceholder=A,null===(e=this._renderer)||void 0===e||e.showPlaceholder(A)}getImageAtBufferCell(A,e){var t;return null===(t=this._storage)||void 0===t?void 0:t.getImageAtBufferCell(A,e)}extractTileAtBufferCell(A,e){var t;return null===(t=this._storage)||void 0===t?void 0:t.extractTileAtBufferCell(A,e)}_report(A){var e;null===(e=this._terminal)||void 0===e||e._core.coreService.triggerDataEvent(A)}_decset(A){for(let e=0;e<A.length;++e)80===A[e]&&(this._opts.sixelScrolling=!1);return!1}_decrst(A){for(let e=0;e<A.length;++e)80===A[e]&&(this._opts.sixelScrolling=!0);return!1}_da1(A){return!!A[0]||!!this._opts.sixelSupport&&(this._report("[?62;4;9;22c"),!0)}_xtermGraphicsAttributes(A){var e,t,i,s,a,o;if(A.length<2)return!0;if(1===A[0])switch(A[1]){case 1:return this._report(`[?${A[0]};0;${this._opts.sixelPaletteLimit}S`),!0;case 2:this._opts.sixelPaletteLimit=this._defaultOpts.sixelPaletteLimit,this._report(`[?${A[0]};0;${this._opts.sixelPaletteLimit}S`);for(const A of this._handlers.values())A.reset();return!0;case 3:return A.length>2&&!(A[2]instanceof Array)&&A[2]<=4096?(this._opts.sixelPaletteLimit=A[2],this._report(`[?${A[0]};0;${this._opts.sixelPaletteLimit}S`)):this._report(`[?${A[0]};2S`),!0;case 4:return this._report(`[?${A[0]};0;4096S`),!0;default:return this._report(`[?${A[0]};2S`),!0}if(2===A[0])switch(A[1]){case 1:let g=null===(t=null===(e=this._renderer)||void 0===e?void 0:e.dimensions)||void 0===t?void 0:t.css.canvas.width,h=null===(s=null===(i=this._renderer)||void 0===i?void 0:i.dimensions)||void 0===s?void 0:s.css.canvas.height;if(!g||!h){const A=r.CELL_SIZE_DEFAULT;g=((null===(a=this._terminal)||void 0===a?void 0:a.cols)||80)*A.width,h=((null===(o=this._terminal)||void 0===o?void 0:o.rows)||24)*A.height}if(g*h<this._opts.pixelLimit)this._report(`[?${A[0]};0;${g.toFixed(0)};${h.toFixed(0)}S`);else{const e=Math.floor(Math.sqrt(this._opts.pixelLimit));this._report(`[?${A[0]};0;${e};${e}S`)}return!0;case 4:const n=Math.floor(Math.sqrt(this._opts.pixelLimit));return this._report(`[?${A[0]};0;${n};${n}S`),!0;default:return this._report(`[?${A[0]};2S`),!0}return this._report(`[?${A[0]};1S`),!0}}})(),i})());
|
|
2
|
+
!function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t():"function"==typeof define&&define.amd?define([],t):"object"==typeof exports?exports.ImageAddon=t():e.ImageAddon=t()}(globalThis,()=>(()=>{"use strict";var e={23(e,t,A){var i=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.KittyGraphicsHandler=void 0;const s=A(463),r=A(699),o=i(A(669)),a=A(470);t.KittyGraphicsHandler=class{_opts;_renderer;_kittyStorage;_coreTerminal;_aborted=!1;_decodeError=!1;_activeDecoder=null;_maxEncodedBytes;_initialEncodedBytes;_inControlData=!0;_controlData=new Uint32Array(512);_controlLength=0;_encodedSizeLimit=0;_totalEncodedSize=0;_parsedCommand=null;_pendingTransmissions=new Map;_lastPendingKey;constructor(e,t,A,i){this._opts=e,this._renderer=t,this._kittyStorage=A,this._coreTerminal=i,this._maxEncodedBytes=Math.ceil(4*this._opts.kittySizeLimit/3),this._initialEncodedBytes=Math.min(4194304,this._maxEncodedBytes)}reset(){this._cleanupAllPending(),this._activeDecoder&&(this._activeDecoder.release(),this._activeDecoder=null),this._kittyStorage.reset()}dispose(){this.reset()}_removePendingEntry(e){this._pendingTransmissions.delete(e),this._lastPendingKey===e&&(this._lastPendingKey=void 0)}_cleanupAllPending(){for(const e of this._pendingTransmissions.values())e.decoder.release();this._pendingTransmissions.clear(),this._lastPendingKey=void 0}start(){this._aborted=!1,this._decodeError=!1,this._inControlData=!0,this._controlLength=0,this._parsedCommand=null,this._encodedSizeLimit=this._maxEncodedBytes,this._totalEncodedSize=0,this._activeDecoder=null}put(e,t,A){var i;if(!this._aborted)if(this._inControlData){let s=A;for(let i=t;i<A;i++)if(59===e[i]){this._inControlData=!1,s=i;break}const r=s-t;if(this._controlLength+r>512)return void(this._aborted=!0);if(this._controlData.set(e.subarray(t,s),this._controlLength),this._controlLength+=r,!this._inControlData){if(this._parsedCommand=(0,a.parseKittyCommand)(this._parseControlDataString()),void 0!==this._parsedCommand.id&&void 0!==this._parsedCommand.imageNumber)return this._sendResponse(this._parsedCommand.id,"EINVAL:cannot specify both i and I keys",null!==(i=this._parsedCommand.quiet)&&void 0!==i?i:0),void(this._aborted=!0);if("d"===this._parsedCommand.action)return;const t=s+1;t<A&&this._streamPayload(e,t,A)}}else this._streamPayload(e,t,A)}_streamPayload(e,t,A){var i,s,r,a,n;if(this._aborted)return;const g=null!==(r=null!==(s=null===(i=this._parsedCommand)||void 0===i?void 0:i.id)&&void 0!==s?s:this._lastPendingKey)&&void 0!==r?r:0,h=this._pendingTransmissions.get(g),d=null!==(a=null==h?void 0:h.totalEncodedSize)&&void 0!==a?a:0;if(this._totalEncodedSize+=A-t,d+this._totalEncodedSize>this._encodedSizeLimit){const e=null!==(n=this._activeDecoder)&&void 0!==n?n:null==h?void 0:h.decoder;return e&&e.release(),this._activeDecoder=null,h&&this._removePendingEntry(g),void(this._aborted=!0)}this._decodeError||((null==h?void 0:h.decoder)&&!this._activeDecoder&&(this._activeDecoder=h.decoder),this._activeDecoder||(this._activeDecoder=new o.default(4194304,this._maxEncodedBytes,this._initialEncodedBytes),this._activeDecoder.init()),0!==this._activeDecoder.put(e.subarray(t,A))&&(this._activeDecoder.release(),this._activeDecoder=null,this._decodeError=!0,h&&this._removePendingEntry(g)))}end(e){var t,A;if(this._aborted||!e)return this._activeDecoder&&(this._activeDecoder.release(),this._activeDecoder=null),!0;if(this._inControlData)return this._handleNoPayloadCommand();const i=this._parsedCommand;if("d"===i.action)return this._handleDelete(i);const s=null!==(A=null!==(t=i.id)&&void 0!==t?t:this._lastPendingKey)&&void 0!==A?A:0,r=1===i.more,o=this._pendingTransmissions.get(s);if(r)return this._activeDecoder&&(o?(o.totalEncodedSize+=this._totalEncodedSize,o.decodeError=o.decodeError||this._decodeError):this._pendingTransmissions.set(s,{cmd:Object.assign({},i),decoder:this._activeDecoder,totalEncodedSize:this._totalEncodedSize,decodeError:this._decodeError}),this._lastPendingKey=s,this._activeDecoder=null),!0;o&&(this._lastPendingKey=void 0);let a=this._decodeError,n=i,g=this._activeDecoder;o&&(n=o.cmd,g=o.decoder,a=a||o.decodeError,this._pendingTransmissions.delete(s));let h=new Uint8Array(0);g&&(0!==g.end()&&(a=!0),h=g.data8),this._activeDecoder=null;const d=this._handleCommandWithBytesAndCmd(n,h,a);return g&&g.release(),d}_parseControlDataString(){let e="";for(let t=0;t<this._controlLength;t++)e+=String.fromCodePoint(this._controlData[t]);return e}_handleNoPayloadCommand(){var e,t,A,i,s;const r=(0,a.parseKittyCommand)(this._parseControlDataString());if(void 0!==r.id&&void 0!==r.imageNumber)return this._sendResponse(r.id,"EINVAL:cannot specify both i and I keys",null!==(e=r.quiet)&&void 0!==e?e:0),!0;switch(null!==(t=r.action)&&void 0!==t?t:"t"){case"d":return this._handleDelete(r);case"q":return this._sendResponse(null!==(A=r.id)&&void 0!==A?A:0,"OK",null!==(i=r.quiet)&&void 0!==i?i:0),!0;default:return void 0!==r.id&&this._sendResponse(r.id,"EINVAL:unsupported action",null!==(s=r.quiet)&&void 0!==s?s:0),!0}}_handleCommandWithBytesAndCmd(e,t,A){var i,s,r,o,a;switch(null!==(i=e.action)&&void 0!==i?i:"t"){case"t":{const i=this._handleTransmit(e,t,A);return"d"===(null!==(s=e.transmission)&&void 0!==s?s:"d")&&void 0!==e.id&&(A?this._sendResponse(e.id,"EINVAL:invalid base64 data",null!==(r=e.quiet)&&void 0!==r?r:0):t.length>0&&this._sendResponse(e.id,"OK",null!==(o=e.quiet)&&void 0!==o?o:0)),i}case"T":return this._handleTransmitDisplay(e,t,A);case"q":return this._handleQuery(e,t,A);default:return void 0!==e.id&&this._sendResponse(e.id,"EINVAL:unsupported action",null!==(a=e.quiet)&&void 0!==a?a:0),!0}}_handleTransmit(e,t,A){var i,s,r,o,a,n;return"d"!==(null!==(i=e.transmission)&&void 0!==i?i:"d")?(void 0!==e.id&&this._sendResponse(e.id,"EINVAL:unsupported transmission medium",null!==(s=e.quiet)&&void 0!==s?s:0),!0):(A||0===t.length||this._kittyStorage.storeImage(e.id,{data:new Blob([t]),width:null!==(r=e.width)&&void 0!==r?r:0,height:null!==(o=e.height)&&void 0!==o?o:0,format:null!==(a=e.format)&&void 0!==a?a:32,compression:null!==(n=e.compression)&&void 0!==n?n:""}),!0)}_handleTransmitDisplay(e,t,A){var i,s;if(A)return void 0!==e.id&&this._sendResponse(e.id,"EINVAL:invalid base64 data",null!==(i=e.quiet)&&void 0!==i?i:0),!0;this._handleTransmit(e,t,A);const r=null!==(s=e.id)&&void 0!==s?s:this._kittyStorage.lastImageId,o=this._kittyStorage.getImage(r);if(o){const t=this._displayImage(o,e);return void 0!==e.id?t.then(t=>{var A;return this._sendResponse(r,t?"OK":"EINVAL:image rendering failed",null!==(A=e.quiet)&&void 0!==A?A:0),!0}):t.then(()=>!0)}return!0}_handleQuery(e,t,A){var i,s,r,o,n,g;const h=null!==(i=e.id)&&void 0!==i?i:0,d=null!==(s=e.quiet)&&void 0!==s?s:0;if("d"!==(null!==(r=e.transmission)&&void 0!==r?r:"d"))return this._sendResponse(h,"EINVAL:unsupported transmission medium",d),!0;if(A)return this._sendResponse(h,"EINVAL:invalid base64 data",d),!0;if(0===t.length)return this._sendResponse(h,"OK",d),!0;const l=null!==(o=e.format)&&void 0!==o?o:32;if(100===l)this._sendResponse(h,"OK",d);else{const A=null!==(n=e.width)&&void 0!==n?n:0,i=null!==(g=e.height)&&void 0!==g?g:0;if(!A||!i)return this._sendResponse(h,"EINVAL:width and height required for raw pixel data",d),!0;const s=A*i*(32===l?a.BYTES_PER_PIXEL_RGBA:a.BYTES_PER_PIXEL_RGB);if(t.length<s)return this._sendResponse(h,"EINVAL:insufficient pixel data",d),!0;this._sendResponse(h,"OK",d)}return!0}_handleDelete(e){var t;switch(null!==(t=e.deleteSelector)&&void 0!==t?t:"a"){case"a":case"A":this._cleanupAllPending(),this._kittyStorage.deleteAll();break;case"i":case"I":if(void 0!==e.id){const t=this._pendingTransmissions.get(e.id);t&&t.decoder.release(),this._removePendingEntry(e.id),this._kittyStorage.deleteById(e.id)}}return!0}_sendResponse(e,t,A){const i="OK"===t;if(i&&1===A)return;if(!i&&2===A)return;const s=`_Gi=${e};${t}\\`;this._coreTerminal._core.coreService.triggerDataEvent(s)}_displayImage(e,t){return this._decodeAndDisplay(e,t).then(()=>!0).catch(()=>!1)}async _decodeAndDisplay(e,t){var A,i,s,o,a;const n=await this._createBitmap(e),g=(null===(A=this._renderer.dimensions)||void 0===A?void 0:A.css.cell.width)||r.CELL_SIZE_DEFAULT.width,h=(null===(i=this._renderer.dimensions)||void 0===i?void 0:i.css.cell.height)||r.CELL_SIZE_DEFAULT.height,d=null!==(s=t.columns)&&void 0!==s?s:Math.ceil(n.width/g),l=null!==(o=t.rows)&&void 0!==o?o:Math.ceil(n.height/h);let I=n.width,c=n.height;if(void 0===t.columns&&void 0===t.rows||(I=Math.round(d*g),c=Math.round(l*h)),I*c>this._opts.pixelLimit)throw new Error("image exceeds pixel limit");const _=this._coreTerminal._core.buffer,B=_.x,C=_.y,Q=_.ybase,E=void 0!==t.zIndex&&t.zIndex<0?"bottom":"top",m=null!==(a=t.zIndex)&&void 0!==a?a:0;if(I!==n.width||c!==n.height){const t=await createImageBitmap(n,{resizeWidth:I,resizeHeight:c});n.close(),this._kittyStorage.addImage(e.id,t,!0,E,m)}else this._kittyStorage.addImage(e.id,n,!0,E,m);if(1===t.cursorMovement){const e=_.ybase-Q;_.x=B,_.y=Math.max(C-e,0)}else _.x=Math.min(B+d,this._coreTerminal.cols)}async _createBitmap(e){let t=new Uint8Array(await e.data.arrayBuffer());if("z"===e.compression&&(t=await this._decompressZlib(t)),100===e.format){const e=new Blob([t],{type:"image/png"});if(!window.createImageBitmap){const t=URL.createObjectURL(e),A=new Image;return new Promise((e,i)=>{A.addEventListener("load",()=>{var r;URL.revokeObjectURL(t);const o=s.ImageRenderer.createCanvas(window.document,A.width,A.height);null===(r=o.getContext("2d"))||void 0===r||r.drawImage(A,0,0),createImageBitmap(o).then(e).catch(i)}),A.addEventListener("error",()=>{URL.revokeObjectURL(t),i(new Error("Failed to load image"))}),A.src=t})}return createImageBitmap(e)}const A=e.width,i=e.height;if(!A||!i)throw new Error("Width and height required for raw pixel data");const r=A*i*(32===e.format?a.BYTES_PER_PIXEL_RGBA:a.BYTES_PER_PIXEL_RGB);if(t.length<r)throw new Error("Insufficient pixel data");const o=A*i;if(32===e.format)return createImageBitmap(new ImageData(new Uint8ClampedArray(t.buffer,t.byteOffset,o*a.BYTES_PER_PIXEL_RGBA),A,i));const n=new Uint8ClampedArray(o*a.BYTES_PER_PIXEL_RGBA),g=new Uint32Array(t.buffer,t.byteOffset,Math.floor(t.byteLength/4)),h=new Uint32Array(n.buffer),d=-4&o;let l=0,I=0;for(let e=0;e<d;e+=4){const e=g[l++],t=g[l++],A=g[l++];h[I++]=16777215&e|4278190080,h[I++]=16777215&(e>>>24|t<<8)|4278190080,h[I++]=16777215&(t>>>16|A<<16)|4278190080,h[I++]=A>>>8|4278190080}let c=d*a.BYTES_PER_PIXEL_RGB,_=d*a.BYTES_PER_PIXEL_RGBA;for(let e=d;e<o;e++)n[_]=t[c],n[_+1]=t[c+1],n[_+2]=t[c+2],n[_+3]=a.ALPHA_OPAQUE,c+=a.BYTES_PER_PIXEL_RGB,_+=a.BYTES_PER_PIXEL_RGBA;return createImageBitmap(new ImageData(n,A,i))}async _decompressZlib(e){try{return await this._decompress(e,"deflate")}catch(t){return await this._decompress(e,"deflate-raw")}}async _decompress(e,t){const A=new DecompressionStream(t),i=A.writable.getWriter();i.write(e),i.close();const s=[],r=A.readable.getReader();for(;;){const{done:e,value:t}=await r.read();if(e)break;s.push(t)}const o=s.reduce((e,t)=>e+t.length,0),a=new Uint8Array(o);let n=0;for(const e of s)a.set(e,n),n+=e.length;return a}get images(){return this._kittyStorage.images}get _kittyIdToStorageId(){return this._kittyStorage.kittyIdToStorageId}get pendingTransmissions(){return this._pendingTransmissions}}},199(e,t){Object.defineProperty(t,"__esModule",{value:!0}),t.LIMITS=void 0,t.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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"}},235(e,t){Object.defineProperty(t,"__esModule",{value:!0}),t.KittyImageStorage=void 0;class A{_storage;static _maxStoredImages=256;_nextImageId=1;_images=new Map;_kittyIdToStorageId=new Map;_storageIdToKittyId=new Map;_previousOnImageDeleted;_wrappedOnImageDeleted;_handleStorageImageDeleted=e=>{const t=this._storageIdToKittyId.get(e);void 0!==t&&(this._kittyIdToStorageId.delete(t),this._storageIdToKittyId.delete(e),this._images.delete(t))};constructor(e){this._storage=e,this._previousOnImageDeleted=this._storage.onImageDeleted,this._wrappedOnImageDeleted=e=>{var t;null===(t=this._previousOnImageDeleted)||void 0===t||t.call(this,e),this._handleStorageImageDeleted(e)},this._storage.onImageDeleted=this._wrappedOnImageDeleted}reset(){this._nextImageId=1,this._images.clear(),this._kittyIdToStorageId.clear(),this._storageIdToKittyId.clear()}dispose(){this.reset(),this._storage.onImageDeleted===this._wrappedOnImageDeleted&&(this._storage.onImageDeleted=this._previousOnImageDeleted)}storeImage(e,t){const i=null!=e?e:this._nextImageId++,s=this._kittyIdToStorageId.get(i);return void 0!==s&&(this._storage.deleteImage(s),this._kittyIdToStorageId.delete(i),this._storageIdToKittyId.delete(s)),!this._images.has(i)&&this._images.size>=A._maxStoredImages&&this._evictUndisplayedImages(),this._images.set(i,Object.assign(Object.assign({},t),{id:i})),i}addImage(e,t,A,i,s){const r=this._storage.addImage(t,A,i,s);this._kittyIdToStorageId.set(e,r),this._storageIdToKittyId.set(r,e)}getImage(e){return this._images.get(e)}deleteById(e){this._images.delete(e);const t=this._kittyIdToStorageId.get(e);void 0!==t&&(this._storage.deleteImage(t),this._kittyIdToStorageId.delete(e),this._storageIdToKittyId.delete(t))}deleteAll(){this._images.clear();for(const e of this._kittyIdToStorageId.values())this._storage.deleteImage(e);this._kittyIdToStorageId.clear(),this._storageIdToKittyId.clear()}get images(){return this._images}get kittyIdToStorageId(){return this._kittyIdToStorageId}get lastImageId(){return this._nextImageId-1}_evictUndisplayedImages(){for(const[e]of this._images){if(this._images.size<=A._maxStoredImages/2)break;this._kittyIdToStorageId.has(e)||this._images.delete(e)}}}t.KittyImageStorage=A},389(e,t){function A(e){let t="";for(let A=0;A<e.length;++A)t+=String.fromCharCode(e[A]);return t}function i(e){let t=0;for(let A=0;A<e.length;++A){if(e[A]<48||e[A]>57)throw new Error("illegal char");t=10*t+e[A]-48}return t}function s(e){const t=A(e);if(!t.match(/^((auto)|(\d+?((px)|(%)){0,1}))$/))throw new Error("illegal size");return t}Object.defineProperty(t,"__esModule",{value:!0}),t.HeaderParser=void 0;const r={inline:i,size:i,name:function(e){if("undefined"!=typeof Buffer)return Buffer.from(A(e),"base64").toString();const t=atob(A(e)),i=new Uint8Array(t.length);for(let e=0;e<i.length;++e)i[e]=t.charCodeAt(e);return(new TextDecoder).decode(i)},width:s,height:s,preserveAspectRatio:i},o=[70,105,108,101],a=1024;t.HeaderParser=class{state=0;_buffer=new Uint32Array(a);_position=0;_key="";fields={};reset(){this._buffer.fill(0),this.state=0,this._position=0,this.fields={},this._key=""}parse(e,t,A){let i=this.state,s=this._position;const r=this._buffer;if(1===i||4===i)return-1;if(0===i&&s>6)return-1;for(let n=t;n<A;++n){const t=e[n];switch(t){case 59:if(!this._storeValue(s))return this._a();i=2,s=0;break;case 61:if(0===i){for(let e=0;e<o.length;++e)if(r[e]!==o[e])return this._a();i=2,s=0}else if(2===i){if(!this._storeKey(s))return this._a();i=3,s=0}else if(3===i){if(s>=a)return this._a();r[s++]=t}break;case 58:return 3!==i||this._storeValue(s)?(this.state=4,n+1):this._a();default:if(s>=a)return this._a();r[s++]=t}}return this.state=i,this._position=s,-2}_a(){return this.state=1,-1}_storeKey(e){const t=A(this._buffer.subarray(0,e));return!!t&&(this._key=t,this.fields[t]=null,!0)}_storeValue(e){if(this._key){try{const t=this._buffer.slice(0,e);this.fields[this._key]=r[this._key]?r[this._key](t):t}catch(e){return!1}return!0}return!1}}},426(e,t){function A(e){return{dispose:e}}function i(e){if(!e)return e;if(Array.isArray(e)){for(const t of e)t.dispose();return[]}return e.dispose(),e}Object.defineProperty(t,"__esModule",{value:!0}),t.MutableDisposable=t.Disposable=t.DisposableStore=void 0,t.toDisposable=A,t.dispose=i,t.combinedDisposable=function(...e){return A(()=>i(e))};class s{_disposables=new Set;_isDisposed=!1;get isDisposed(){return this._isDisposed}add(e){return this._isDisposed?e.dispose():this._disposables.add(e),e}dispose(){if(!this._isDisposed){this._isDisposed=!0;for(const e of this._disposables)e.dispose();this._disposables.clear()}}clear(){for(const e of this._disposables)e.dispose();this._disposables.clear()}}t.DisposableStore=s;class r{static None=Object.freeze({dispose(){}});_store=new s;dispose(){this._store.dispose()}_register(e){return this._store.add(e)}}t.Disposable=r,t.MutableDisposable=class{_value;_isDisposed=!1;get value(){return this._isDisposed?void 0:this._value}set value(e){this._isDisposed||e===this._value||(this._value?.dispose(),this._value=e)}clear(){this.value=void 0}dispose(){this._isDisposed=!0,this._value?.dispose(),this._value=void 0}}},462(e,t){Object.defineProperty(t,"__esModule",{value:!0}),t.UNSUPPORTED_TYPE=void 0,t.imageType=function(e){if(e.length<24)return t.UNSUPPORTED_TYPE;const A=new Uint32Array(e.buffer,e.byteOffset,6);if(1196314761===A[0]&&169478669===A[1]&&1380206665===A[3])return{mime:"image/png",width:e[16]<<24|e[17]<<16|e[18]<<8|e[19],height:e[20]<<24|e[21]<<16|e[22]<<8|e[23]};if(255===e[0]&&216===e[1]&&255===e[2]){const[t,A]=function(e){const t=e.length;let A=4,i=e[A]<<8|e[A+1];for(;;){if(A+=i,A>=t)return[0,0];if(255!==e[A])return[0,0];if(192===e[A+1]||194===e[A+1])return A+8<t?[e[A+7]<<8|e[A+8],e[A+5]<<8|e[A+6]]:[0,0];A+=2,i=e[A]<<8|e[A+1]}}(e);return{mime:"image/jpeg",width:t,height:A}}return 944130375!==A[0]||55!==e[4]&&57!==e[4]||97!==e[5]?t.UNSUPPORTED_TYPE:{mime:"image/gif",width:e[7]<<8|e[6],height:e[9]<<8|e[8]}},t.UNSUPPORTED_TYPE={mime:"unsupported",width:0,height:0}},463(e,t,A){Object.defineProperty(t,"__esModule",{value:!0}),t.ImageRenderer=void 0;const i=A(939),s=A(426);class r extends s.Disposable{_terminal;get canvas(){var e;return null===(e=this._layers.get("top"))||void 0===e?void 0:e.canvas}_layers=new Map;_placeholder;_placeholderBitmap;_optionsRefresh=this._register(new s.MutableDisposable);_oldOpen;_renderService;_oldSetRenderer;static createCanvas(e,t,A){const i=(null!=e?e:document).createElement("canvas");return i.width=0|t,i.height=0|A,i}static createImageData(e,t,A,i){if("function"!=typeof ImageData){const s=e.createImageData(t,A);return i&&s.data.set(new Uint8ClampedArray(i,0,t*A*4)),s}return i?new ImageData(new Uint8ClampedArray(i,0,t*A*4),t,A):new ImageData(t,A)}static createImageBitmap(e){return"function"!=typeof createImageBitmap?Promise.resolve(void 0):createImageBitmap(e)}constructor(e){super(),this._terminal=e,this._oldOpen=this._terminal._core.open,this._terminal._core.open=e=>{var t;null===(t=this._oldOpen)||void 0===t||t.call(this._terminal._core,e),this._open()},this._terminal._core.screenElement&&this._open(),this._optionsRefresh.value=this._terminal._core.optionsService.onOptionChange(e=>{var t;"fontSize"===e&&(this.rescaleCanvas(),null===(t=this._renderService)||void 0===t||t.refreshRows(0,this._terminal.rows))}),this._register((0,s.toDisposable)(()=>{var e;this.removeLayerFromDom(),this.removeLayerFromDom("bottom"),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._layers.clear(),null===(e=this._placeholderBitmap)||void 0===e||e.close(),this._placeholderBitmap=void 0,this._placeholder=void 0}))}showPlaceholder(e){var t,A;e?this._placeholder||-1===this.cellSize.height||this._createPlaceHolder(Math.max(this.cellSize.height+1,24)):(null===(t=this._placeholderBitmap)||void 0===t||t.close(),this._placeholderBitmap=void 0,this._placeholder=void 0),null===(A=this._renderService)||void 0===A||A.refreshRows(0,this._terminal.rows)}get dimensions(){return this._terminal.dimensions}get cellSize(){var e,t;return{width:(null===(e=this.dimensions)||void 0===e?void 0:e.css.cell.width)||-1,height:(null===(t=this.dimensions)||void 0===t?void 0:t.css.cell.height)||-1}}clearLines(e,t,A){var i,s,r,o,a;const n=e*((null===(i=this.dimensions)||void 0===i?void 0:i.css.cell.height)||0),g=(null===(s=this.dimensions)||void 0===s?void 0:s.css.canvas.width)||0,h=(++t-e)*((null===(r=this.dimensions)||void 0===r?void 0:r.css.cell.height)||0);A&&"top"!==A||null===(o=this._layers.get("top"))||void 0===o||o.clearRect(0,n,g,h),A&&"bottom"!==A||null===(a=this._layers.get("bottom"))||void 0===a||a.clearRect(0,n,g,h)}clearAll(e){if(!e||"top"===e){const e=this._layers.get("top");null==e||e.clearRect(0,0,e.canvas.width,e.canvas.height)}if(!e||"bottom"===e){const e=this._layers.get("bottom");null==e||e.clearRect(0,0,e.canvas.width,e.canvas.height)}}draw(e,t,A,i,s=1){const r=this._layers.get(e.layer);if(!r)return;const{width:o,height:a}=this.cellSize;if(-1===o||-1===a)return;this._rescaleImage(e,o,a);const n=e.actual,g=Math.ceil(n.width/o),h=t%g*o,d=Math.floor(t/g)*a,l=A*o,I=i*a,c=s*o+h>n.width?n.width-h:s*o,_=d+a>n.height?n.height-d:a;r.drawImage(n,Math.floor(h),Math.floor(d),Math.ceil(c),Math.ceil(_),Math.floor(l),Math.floor(I),Math.ceil(c),Math.ceil(_))}extractTile(e,t){const{width:A,height:i}=this.cellSize;if(-1===A||-1===i)return;this._rescaleImage(e,A,i);const s=e.actual,o=Math.ceil(s.width/A),a=t%o*A,n=Math.floor(t/o)*i,g=A+a>s.width?s.width-a:A,h=n+i>s.height?s.height-n:i,d=r.createCanvas(this.document,g,h),l=d.getContext("2d");return l?(l.drawImage(s,Math.floor(a),Math.floor(n),Math.floor(g),Math.floor(h),0,0,Math.floor(g),Math.floor(h)),d):void 0}drawPlaceholder(e,t,A=1){var i;const s=this._layers.get("top");if(s){const{width:r,height:o}=this.cellSize;if(-1===r||-1===o)return;if(this._placeholder?o>=this._placeholder.height&&this._createPlaceHolder(o+1):this._createPlaceHolder(Math.max(o+1,24)),!this._placeholder)return;s.drawImage(null!==(i=this._placeholderBitmap)&&void 0!==i?i:this._placeholder,e*r,t*o%2?0:1,r*A,o,e*r,t*o,r*A,o)}}rescaleCanvas(){var e,t;const A=(null===(e=this.dimensions)||void 0===e?void 0:e.css.canvas.width)||0,i=(null===(t=this.dimensions)||void 0===t?void 0:t.css.canvas.height)||0;for(const e of this._layers.values())e.canvas.width===A&&e.canvas.height===i||(e.canvas.width=A,e.canvas.height=i)}_rescaleImage(e,t,A){if(t===e.actualCellSize.width&&A===e.actualCellSize.height)return;const{width:i,height:s}=e.origCellSize;if(t===i&&A===s)return e.actual=e.orig,e.actualCellSize.width=i,void(e.actualCellSize.height=s);const o=r.createCanvas(this.document,Math.ceil(e.orig.width*t/i),Math.ceil(e.orig.height*A/s)),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=A)}_open(){this._renderService=this._terminal._core._renderService,this._oldSetRenderer=this._renderService.setRenderer.bind(this._renderService),this._renderService.setRenderer=e=>{var t;for(const e of[...this._layers.keys()])this.removeLayerFromDom(e);null===(t=this._oldSetRenderer)||void 0===t||t.call(this._renderService,e)}}insertLayerToDom(e="top"){var t,A;if(!this.document||!this._terminal._core.screenElement)return void console.warn("image addon: cannot insert output canvas to DOM, missing document or screenElement");if(this._layers.has(e))return;const i=r.createCanvas(this.document,(null===(t=this.dimensions)||void 0===t?void 0:t.css.canvas.width)||0,(null===(A=this.dimensions)||void 0===A?void 0:A.css.canvas.height)||0);i.classList.add(`xterm-image-layer-${e}`);const s=this._terminal._core.screenElement;"bottom"===e?(i.style.zIndex="-1",s.style.zIndex="0",s.insertBefore(i,s.firstChild)):(i.style.zIndex="0",s.style.zIndex="0",s.appendChild(i));const o=i.getContext("2d",{alpha:!0,desynchronized:!0});o?(this._layers.set(e,o),this.clearAll(e)):i.remove()}removeLayerFromDom(e="top"){const t=this._layers.get(e);t&&(t.canvas.remove(),this._layers.delete(e))}hasLayer(e){return this._layers.has(e)}_createPlaceHolder(e=24){var t;null===(t=this._placeholderBitmap)||void 0===t||t.close(),this._placeholderBitmap=void 0;const A=32,s=r.createCanvas(this.document,A,e),o=s.getContext("2d",{alpha:!1});if(!o)return;const a=r.createImageData(o,A,e),n=new Uint32Array(a.data.buffer),g=(0,i.toRGBA8888)(0,0,0),h=(0,i.toRGBA8888)(255,255,255);n.fill(g);for(let t=0;t<e;++t){const e=t%2,i=t*A;for(let t=0;t<A;t+=2)n[i+t+e]=h}o.putImageData(a,0,0);const d=screen.width+A-1&-32||4096;this._placeholder=r.createCanvas(this.document,d,e);const l=this._placeholder.getContext("2d",{alpha:!1});if(l){for(let e=0;e<d;e+=A)l.drawImage(s,e,0);r.createImageBitmap(this._placeholder).then(e=>this._placeholderBitmap=e)}else this._placeholder=void 0}get document(){var e;return null===(e=this._terminal._core._coreBrowserService)||void 0===e?void 0:e.window.document}}t.ImageRenderer=r},470(e,t){Object.defineProperty(t,"__esModule",{value:!0}),t.ALPHA_OPAQUE=t.BYTES_PER_PIXEL_RGBA=t.BYTES_PER_PIXEL_RGB=void 0,t.parseKittyCommand=function(e){const t={},A=e.split(",");for(const e of A){const A=e.indexOf("=");if(-1===A)continue;const i=e.substring(0,A),s=e.substring(A+1);if("a"===i){t.action=s;continue}if("o"===i){t.compression=s;continue}if("t"===i){t.transmission=s;continue}if("d"===i){t.deleteSelector=s;continue}const r=parseInt(s);switch(i){case"f":t.format=r;break;case"i":t.id=r;break;case"I":t.imageNumber=r;break;case"s":t.width=r;break;case"v":t.height=r;break;case"x":t.x=r;break;case"y":t.y=r;break;case"c":t.columns=r;break;case"r":t.rows=r;break;case"m":t.more=r;break;case"q":t.quiet=r;break;case"C":t.cursorMovement=r;break;case"z":t.zIndex=r;break;case"p":t.placementId=r}}return t},t.BYTES_PER_PIXEL_RGB=3,t.BYTES_PER_PIXEL_RGBA=4,t.ALPHA_OPAQUE=255},552(e,t){Object.defineProperty(t,"__esModule",{value:!0}),t.InWasm=function(e){if(e.d){const{t,s:i,d:s}=e;let r,o;const a=WebAssembly;return 0===t?i?e=>new a.Instance(o||(o=new a.Module(r||(r=A(s)))),e):e=>o?a.instantiate(o,e):a.instantiate(r||(r=A(s)),e).then(e=>(o=e.module)&&e.instance):1===t?i?()=>o||(o=new a.Module(r||(r=A(s)))):()=>o?Promise.resolve(o):a.compile(r||(r=A(s))).then(e=>o=e):i?()=>r||(r=A(s)):()=>Promise.resolve(r||(r=A(s)))}if("undefined"==typeof _wasmCtx)throw new Error('must run "inwasm"');_wasmCtx.add(e)};let A=e=>{if(Uint8Array.fromBase64)return Uint8Array.fromBase64(e);if("undefined"!=typeof Buffer)return Buffer.from(e,"base64");const t=atob(e),A=new Uint8Array(t.length);for(let e=0;e<A.length;++e)A[e]=t.charCodeAt(e);return A}},566(e,t,A){Object.defineProperty(t,"__esModule",{value:!0}),t.SixelHandler=void 0;const i=A(939),s=A(463),r=A(591),o=i.PALETTE_ANSI_256;function a(e){return i.BIG_ENDIAN?e:(255&e)<<24|(e>>>8&255)<<16|(e>>>16&255)<<8|e>>>24&255}o.set(i.PALETTE_VT340_COLOR),t.SixelHandler=class{_opts;_storage;_coreTerminal;_size=0;_aborted=!1;_dec;constructor(e,t,A){this._opts=e,this._storage=t,this._coreTerminal=A,(0,r.DecoderAsync)({memoryLimit:4*this._opts.pixelLimit,palette:o,paletteLimit:this._opts.sixelPaletteLimit}).then(e=>this._dec=e)}reset(){this._dec&&(this._dec.release(),this._dec._palette.fill(0),this._dec.init(0,o,this._opts.sixelPaletteLimit))}hook(e){var t;if(this._size=0,this._aborted=!1,this._dec){const A=1===e.params[1]?0:function(e,t){let A=0;if(!t)return A;if(e.isInverse())if(e.isFgDefault())A=a(t.foreground.rgba);else if(e.isFgRGB()){const t=e.constructor.toColorRGB(e.getFgColor());A=(0,i.toRGBA8888)(...t)}else A=a(t.ansi[e.getFgColor()].rgba);else if(e.isBgDefault())A=a(t.background.rgba);else if(e.isBgRGB()){const t=e.constructor.toColorRGB(e.getBgColor());A=(0,i.toRGBA8888)(...t)}else A=a(t.ansi[e.getBgColor()].rgba);return A}(this._coreTerminal._core._inputHandler._curAttrData,null===(t=this._coreTerminal._core._themeService)||void 0===t?void 0:t.colors);this._dec.init(A,null,this._opts.sixelPaletteLimit)}}put(e,t,A){if(!this._aborted&&this._dec){if(this._size+=A-t,this._size>this._opts.sixelSizeLimit)return console.warn("SIXEL: too much data, aborting"),this._aborted=!0,void this._dec.release();try{this._dec.decode(e,t,A)}catch(e){console.warn(`SIXEL: error while decoding image - ${e}`),this._aborted=!0,this._dec.release()}}}unhook(e){var t;if(this._aborted||!e||!this._dec)return!0;const A=this._dec.width,i=this._dec.height;if(!A||!i)return i&&this._storage.advanceCursor(i),!0;const r=s.ImageRenderer.createCanvas(void 0,A,i);return null===(t=r.getContext("2d"))||void 0===t||t.putImageData(new ImageData(this._dec.data8,A,i),0,0),this._dec.memoryUsage>4194304&&this._dec.release(),this._storage.addImage(r),!0}}},591(e,t,A){Object.defineProperty(t,"__esModule",{value:!0}),t.decodeAsync=t.decode=t.Decoder=t.DecoderAsync=void 0;const i=A(939),s=A(199),r=function(e){if("undefined"!=typeof Buffer)return Buffer.from(e,"base64");const t=atob(e),A=new Uint8Array(t.length);for(let e=0;e<A.length;++e)A[e]=t.charCodeAt(e);return A}(s.LIMITS.BYTES);let o;const a=new Uint32Array;class n{constructor(){this.bandHandler=e=>1,this.modeHandler=e=>1}handle_band(e){return this.bandHandler(e)}mode_parsed(e){return this.modeHandler(e)}}const g={memoryLimit:134217728,sixelColor:i.DEFAULT_FOREGROUND,fillColor:i.DEFAULT_BACKGROUND,palette:i.PALETTE_VT340_COLOR,paletteLimit:s.LIMITS.PALETTE_SIZE,truncate:!0};function h(e){const t=new n,A={env:{handle_band:t.handle_band.bind(t),mode_parsed:t.mode_parsed.bind(t)}};return WebAssembly.instantiate(o||r,A).then(A=>(o=o||A.module,new d(e,A.instance||A,t)))}t.DecoderAsync=h;class d{constructor(e,t,A){if(this._PIXEL_OFFSET=s.LIMITS.MAX_WIDTH+4,this._canvas=a,this._bandWidths=[],this._maxWidth=0,this._minWidth=s.LIMITS.MAX_WIDTH,this._lastOffset=0,this._currentHeight=0,this._opts=Object.assign({},g,e),this._opts.paletteLimit>s.LIMITS.PALETTE_SIZE)throw new Error(`DecoderOptions.paletteLimit must not exceed ${s.LIMITS.PALETTE_SIZE}`);if(t)A.bandHandler=this._handle_band.bind(this),A.modeHandler=this._initCanvas.bind(this);else{const e=o||(o=new WebAssembly.Module(r));t=new WebAssembly.Instance(e,{env:{handle_band:this._handle_band.bind(this),mode_parsed:this._initCanvas.bind(this)}})}this._instance=t,this._wasm=this._instance.exports,this._chunk=new Uint8Array(this._wasm.memory.buffer,this._wasm.get_chunk_address(),s.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(),s.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(i.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(e){if(2===e){const e=this.width*this.height;if(e>this._canvas.length){if(this._opts.memoryLimit&&4*e>this._opts.memoryLimit)throw this.release(),new Error("image exceeds memory limit");this._canvas=new Uint32Array(e)}this._maxWidth=this._width}else if(1===e)if(2===this._level){const e=Math.min(this._rasterWidth,s.LIMITS.MAX_WIDTH)*this._rasterHeight;if(e>this._canvas.length){if(this._opts.memoryLimit&&4*e>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(e,t){const A=e+t;if(A>this._canvas.length){if(this._opts.memoryLimit&&4*A>this._opts.memoryLimit)throw this.release(),new Error("image exceeds memory limit");const e=new Uint32Array(65536*Math.ceil(A/65536));e.set(this._canvas),this._canvas=e}}_handle_band(e){const t=this._PIXEL_OFFSET;let A=this._lastOffset;if(2===this._mode){let i=this.height-this._currentHeight,s=0;for(;s<6&&i>0;)this._canvas.set(this._pSrc.subarray(t*s,t*s+e),A+e*s),s++,i--;this._lastOffset+=e*s,this._currentHeight+=s}else if(1===this._mode){this._realloc(A,6*e),this._maxWidth=Math.max(this._maxWidth,e),this._minWidth=Math.min(this._minWidth,e);for(let i=0;i<6;++i)this._canvas.set(this._pSrc.subarray(t*i,t*i+e),A+e*i);this._bandWidths.push(e),this._lastOffset+=6*e,this._currentHeight+=6}return 0}get width(){return 1!==this._mode?this._width:Math.max(this._maxWidth,this._wasm.current_width())}get height(){return 1!==this._mode?this._height:this._wasm.current_width()?6*this._bandWidths.length+this._wasm.current_height():6*this._bandWidths.length}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(e=this._opts.fillColor,t=this._opts.palette,A=this._opts.paletteLimit,i=this._opts.truncate){this._wasm.init(this._opts.sixelColor,e,A,i?1:0),t&&this._palette.set(t.subarray(0,s.LIMITS.PALETTE_SIZE)),this._bandWidths.length=0,this._maxWidth=0,this._minWidth=s.LIMITS.MAX_WIDTH,this._lastOffset=0,this._currentHeight=0}decode(e,t=0,A=e.length){let i=t;for(;i<A;){const t=Math.min(A-i,s.LIMITS.CHUNK_SIZE);this._chunk.set(e.subarray(i,i+=t)),this._wasm.decode(0,t)}}decodeString(e,t=0,A=e.length){let i=t;for(;i<A;){const t=Math.min(A-i,s.LIMITS.CHUNK_SIZE);for(let A=0,s=i;A<t;++A,++s)this._chunk[A]=e.charCodeAt(s);i+=t,this._wasm.decode(0,t)}}get data32(){if(0===this._mode||!this.width||!this.height)return a;const e=this._wasm.current_width();if(2===this._mode){let t=this.height-this._currentHeight;if(t>0){const A=this._PIXEL_OFFSET;let i=this._lastOffset,s=0;for(;s<6&&t>0;)this._canvas.set(this._pSrc.subarray(A*s,A*s+e),i+e*s),s++,t--;t&&this._canvas.fill(this._fillColor,i+e*s)}return this._canvas.subarray(0,this.width*this.height)}if(1===this._mode){if(this._minWidth===this._maxWidth){let t=!1;if(e)if(e!==this._minWidth)t=!0;else{const t=this._PIXEL_OFFSET;let A=this._lastOffset;this._realloc(A,6*e);for(let i=0;i<6;++i)this._canvas.set(this._pSrc.subarray(t*i,t*i+e),A+e*i)}if(!t)return this._canvas.subarray(0,this.width*this.height)}const t=new Uint32Array(this.width*this.height);t.fill(this._fillColor);let A=0,i=0;for(let e=0;e<this._bandWidths.length;++e){const s=this._bandWidths[e];for(let e=0;e<6;++e)t.set(this._canvas.subarray(i,i+=s),A),A+=this.width}if(e){const i=this._PIXEL_OFFSET,s=this._wasm.current_height();for(let r=0;r<s;++r)t.set(this._pSrc.subarray(i*r,i*r+e),A+this.width*r)}return t}return a}get data8(){return new Uint8ClampedArray(this.data32.buffer,0,this.width*this.height*4)}release(){this._canvas=a,this._bandWidths.length=0,this._maxWidth=0,this._minWidth=s.LIMITS.MAX_WIDTH,this._wasm.init(i.DEFAULT_FOREGROUND,0,this._opts.paletteLimit,0)}}t.Decoder=d,t.decode=function(e,t){const A=new d(t);return A.init(),"string"==typeof e?A.decodeString(e):A.decode(e),{width:A.width,height:A.height,data32:A.data32,data8:A.data8}},t.decodeAsync=async function(e,t){const A=await h(t);return A.init(),"string"==typeof e?A.decodeString(e):A.decode(e),{width:A.width,height:A.height,data32:A.data32,data8:A.data8}}},649(e,t){Object.defineProperty(t,"__esModule",{value:!0}),t.IIPImageStorage=void 0,t.IIPImageStorage=class{_storage;constructor(e){this._storage=e}addImage(e){this._storage.addImage(e,!0)}}},669(e,t,A){Object.defineProperty(t,"__esModule",{value:!0});const i=(0,A(552).InWasm)({s:1,t:0,d:"AGFzbQEAAAABBQFgAAF/Ag8BA2VudgZtZW1vcnkCAAEDAwIAAAcNAgNkZWMAAANlbmQAAQqLBgKZBAEKf0GIKCgCAEGgKGohAUGEKCgCACIDQaAoaiEAQYAoKAIAQQFrQXxxIgRBoChqIQUgBEEQayADSgRAIARBkChqIQMDQCABIABBA2otAABBAnQoAoAgIABBAmotAABBAnQoAoAYIABBAWotAABBAnQoAoAQIAAtAABBAnQoAoAIcnJyIgY2AgAgAUEDaiAAQQdqLQAAQQJ0KAKAICAAQQZqLQAAQQJ0KAKAGCAAQQVqLQAAQQJ0KAKAECAAQQRqLQAAQQJ0KAKACHJyciIHNgIAIAFBBmogAEELai0AAEECdCgCgCAgAEEKai0AAEECdCgCgBggAEEJai0AAEECdCgCgBAgAEEIai0AAEECdCgCgAhycnIiCDYCACABQQlqIABBD2otAABBAnQoAoAgIABBDmotAABBAnQoAoAYIABBDWotAABBAnQoAoAQIABBDGotAABBAnQoAoAIcnJyIgk2AgAgAiAGciAHciAIciAJciECIAFBDGohASAAQRBqIgAgA0kNAAsLIAAgBUkEQANAIAEgAEEDai0AAEECdCgCgCAgAEECai0AAEECdCgCgBggAEEBai0AAEECdCgCgBAgAC0AAEECdCgCgAhycnIiAzYCACACIANyIQIgAUEDaiEBIABBBGoiACAFSQ0ACwtBfyEAIAJB////B00Ef0GEKCAENgIAQYgoIAFBoChrNgIAQQAFQX8LC+0BAQR/AkBBgCgoAgAiAUGEKCgCACIAa0EFTgRAQX8hAxAADQFBgCgoAgAhAUGEKCgCACEAC0F/IQMgASAAayIBQQJIDQAgAC0AoShBAnQoAoAQIAAtAKAoQQJ0KAKACHIhAgJ/IAFBBEYEQEEDQQQgAC0AoyhBPUYbIAAtAKIoQT1GayEBC0EBIAFBA0kNABogAC0AoihBAnQoAoAYIAJyIQJBAiABQQRHDQAaIAAtAKMoQQJ0KAKAICACciECQQMLIQEgAkH///8HSw0AQQAhA0GIKCgCACIAIAI2AKAoQYgoIAAgAWo2AgALIAML"}),s=new Uint8Array("ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".split("").map(e=>e.charCodeAt(0))),r=new Uint32Array(1024);r.fill(4278190080);for(let e=0;e<s.length;++e)r[s[e]]=e<<2;for(let e=0;e<s.length;++e)r[256+s[e]]=e>>4|(e<<4&255)<<8;for(let e=0;e<s.length;++e)r[512+s[e]]=e>>2<<8|(e<<6&255)<<16;for(let e=0;e<s.length;++e)r[768+s[e]]=e<<16;const o=new Uint8Array(0);t.default=class{constructor(e,t,A){if(this._inst=null,this._ended=!0,this._bytes=0,this.keepSize=null!=e?e:1048576,this.maxBytes=null!=t?t:4294901760,this._bytes=null!=A?A: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]):o}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(e,t){if(this.maxBytes=null!=e?e:this.maxBytes,this._bytes=null!=t?t:Math.min(this._bytes,this.maxBytes),this._bytes>this.maxBytes||this.maxBytes>4294901760)throw Error("invalid byte settings");let A=this._m32;const s=this._bytes+5152;this._inst?this._mem.buffer.byteLength<s&&(this._mem.grow(Math.ceil((s-this._mem.buffer.byteLength)/65536)),A=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=i({env:{memory:this._mem}}),A=new Uint32Array(this._mem.buffer,0),A.set(r,256),this._d=new Uint8Array(this._mem.buffer,5152)),A[1280]=0,A[1281]=0,A[1282]=0,this._m32=A,this._ended=!1}_realloc(e){const t=this._m32[1280]+e;if(this._bytes<t){if(t>this.maxBytes)return-3;let e=this._bytes;for(;(e*=2)<t;);if(e=Math.min(e,this.maxBytes),e<t)return-3;if(e+5152>this._mem.buffer.byteLength){const t=Math.ceil((e+5152-this._mem.buffer.byteLength)/65536);this._mem.grow(t),this._m32=new Uint32Array(this._mem.buffer,0),this._d=new Uint8Array(this._mem.buffer,5152)}this._bytes=e}return 0}put(e){if(!this._inst||this._ended)return-2;if(this._realloc(e.length))return-3;const t=this._m32;return this._d.set(e,t[1280]),t[1280]+=e.length,t[1280]-t[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}}},699(e,t,A){Object.defineProperty(t,"__esModule",{value:!0}),t.ImageStorage=t.CELL_SIZE_DEFAULT=void 0;const i=A(463);t.CELL_SIZE_DEFAULT={width:7,height:14};class s{imageId;tileId;_ext=0;get ext(){return this._urlId?-469762049&this._ext|this.underlineStyle<<26:this._ext}set ext(e){this._ext=e}get underlineStyle(){return this._urlId?5:(469762048&this._ext)>>26}set underlineStyle(e){this._ext&=-469762049,this._ext|=e<<26&469762048}get underlineColor(){return 67108863&this._ext}set underlineColor(e){this._ext&=-67108864,this._ext|=67108863&e}get underlineVariantOffset(){const e=(3758096384&this._ext)>>29;return e<0?4294967288^e:e}set underlineVariantOffset(e){this._ext&=536870911,this._ext|=e<<29&3758096384}_urlId=0;get urlId(){return this._urlId}set urlId(e){this._urlId=e}constructor(e=0,t=0,A=-1,i=-1){this.imageId=A,this.tileId=i,this._ext=e,this._urlId=t}clone(){return new s(this._ext,this._urlId,this.imageId,this.tileId)}isEmpty(){return 0===this.underlineStyle&&0===this._urlId&&-1===this.imageId}}const r=new s;t.ImageStorage=class{_terminal;_renderer;_opts;_images=new Map;_lastId=0;_lowestId=0;_fullyCleared=!1;_needsFullClear=!1;_pixelLimit=25e5;_viewportMetrics;onImageDeleted;constructor(e,t,A){this._terminal=e,this._renderer=t,this._opts=A;try{this.setLimit(this._opts.storageLimit)}catch(e){e instanceof Error&&console.error(e.message),console.warn(`storageLimit is set to ${this.getLimit()} MB`)}this._viewportMetrics={cols:this._terminal.cols,rows:this._terminal.rows}}dispose(){this.reset()}reset(){var e;for(const t of this._images.values())null===(e=t.marker)||void 0===e||e.dispose();this._images.clear(),this._renderer.clearAll()}getLimit(){return 4*this._pixelLimit/1e6}setLimit(e){if(e<.5||e>1e3)throw RangeError("invalid storageLimit, should be at least 0.5 MB and not exceed 1G");this._pixelLimit=e/4*1e6>>>0,this._evictOldest(0)}getUsage(){return 4*this._getStoredPixels()/1e6}_getStoredPixels(){let e=0;for(const t of this._images.values())t.orig&&(e+=t.orig.width*t.orig.height,t.actual&&t.actual!==t.orig&&(e+=t.actual.width*t.actual.height));return e}_delImg(e){var t;const A=this._images.get(e);A&&(this._images.delete(e),window.ImageBitmap&&A.orig instanceof ImageBitmap&&A.orig.close(),null===(t=this.onImageDeleted)||void 0===t||t.call(this,e))}wipeAlternate(){var e;const t=[];for(const[A,i]of this._images.entries())"alternate"===i.bufferType&&(null===(e=i.marker)||void 0===e||e.dispose(),t.push(A));for(const e of t)this._delImg(e);this._needsFullClear=!0,this._fullyCleared=!1}deleteImage(e){var t;const A=this._images.get(e);A&&(null===(t=A.marker)||void 0===t||t.dispose(),this._delImg(e))}addImage(e,A,i="top",s=0){var r;this._evictOldest(e.width*e.height);let o=this._renderer.cellSize;-1!==o.width&&-1!==o.height||(o=t.CELL_SIZE_DEFAULT);const a=Math.ceil(e.width/o.width),n=Math.ceil(e.height/o.height),g=++this._lastId,h=this._terminal._core.buffer,d=this._terminal.cols,l=this._terminal.rows,I=h.x,c=h.y;let _=I,B=0;A||(h.x=0,h.y=0,_=0),this._terminal._core._inputHandler._dirtyRowTracker.markDirty(h.y);for(let e=0;e<n;++e){const t=h.lines.get(h.y+h.ybase);for(let A=0;A<a&&!(_+A>=d);++A)this._writeToCell(t,_+A,g,e*a+A),B++;if(A)e<n-1&&this._terminal._core._inputHandler.lineFeed();else if(++h.y>=l)break;h.x=_}this._terminal._core._inputHandler._dirtyRowTracker.markDirty(h.y),A?h.x=_:(h.x=I,h.y=c);const C=[];for(const[e,t]of this._images.entries())t.tileCount<1&&(null===(r=t.marker)||void 0===r||r.dispose(),C.push(e));for(const e of C)this._delImg(e);const Q=this._terminal.registerMarker(0);null==Q||Q.onDispose(()=>{this._images.get(g)&&this._delImg(g)}),"alternate"===this._terminal.buffer.active.type&&this._evictOnAlternate();const E={orig:e,origCellSize:o,actual:e,actualCellSize:Object.assign({},o),marker:Q||void 0,tileCount:B,bufferType:this._terminal.buffer.active.type,layer:i,zIndex:s};return this._images.set(g,E),g}render(e){var t;let A=!1,i=!1;for(const e of this._images.values())if("bottom"===e.layer?i=!0:A=!0,A&&i)break;if(A&&!this._renderer.hasLayer("top")&&(this._renderer.insertLayerToDom("top"),!this._renderer.hasLayer("top")))return;if(i&&!this._renderer.hasLayer("bottom")&&this._renderer.insertLayerToDom("bottom"),this._renderer.rescaleCanvas(),!this._images.size)return this._fullyCleared||(this._renderer.clearAll(),this._fullyCleared=!0,this._needsFullClear=!1),this._renderer.hasLayer("top")&&this._renderer.removeLayerFromDom("top"),void(this._renderer.hasLayer("bottom")&&this._renderer.removeLayerFromDom("bottom"));!A&&this._renderer.hasLayer("top")&&(this._renderer.clearAll("top"),this._renderer.removeLayerFromDom("top")),!i&&this._renderer.hasLayer("bottom")&&(this._renderer.clearAll("bottom"),this._renderer.removeLayerFromDom("bottom")),this._needsFullClear&&(this._renderer.clearAll(),this._fullyCleared=!0,this._needsFullClear=!1);const{start:s,end:o}=e,a=this._terminal._core.buffer,n=this._terminal._core.cols;this._renderer.clearLines(s,o);const g=[],h=[];for(let e=s;e<=o;++e){const A=a.lines.get(e+a.ydisp);if(!A)return;for(let i=0;i<n;++i){let s;if(268435456&A.getBg(i))s=null!==(t=A._extendedAttrs[i])&&void 0!==t?t:r;else{const e=A._extendedAttrs[i];if(!e||void 0===e.imageId||-1===e.imageId)continue;s=e}const o=s.imageId;if(void 0===o||-1===o)continue;const a=this._images.get(o);if(-1!==s.tileId){const t=s.tileId,r=i;let d=1;for(;++i<n;){const e=A._extendedAttrs[i];if(!e||e.imageId!==o||e.tileId!==t+d)break;s=e,d++}i--,a?a.actual&&g.push({imgSpec:a,tileId:t,col:r,row:e,count:d}):this._opts.showPlaceholder&&h.push({col:r,row:e,count:d}),this._fullyCleared=!1}}}g.sort((e,t)=>e.imgSpec.zIndex-t.imgSpec.zIndex);for(const e of h)this._renderer.drawPlaceholder(e.col,e.row,e.count);for(const e of g)this._renderer.draw(e.imgSpec,e.tileId,e.col,e.row,e.count)}viewportResize(e){var t,A;if(!this._images.size)return void(this._viewportMetrics=e);if(this._viewportMetrics.cols>=e.cols)return void(this._viewportMetrics=e);const i=this._terminal._core.buffer,s=i.lines.length,o=this._viewportMetrics.cols-1;for(let a=0;a<s;++a){const s=i.lines.get(a);if(268435456&s.getBg(o)){const i=null!==(A=s._extendedAttrs[o])&&void 0!==A?A:r,a=i.imageId;if(void 0===a||-1===a)continue;const n=this._images.get(a);if(!n)continue;const g=Math.ceil(((null===(t=n.actual)||void 0===t?void 0:t.width)||0)/n.actualCellSize.width);if(i.tileId%g+1>=g)continue;let h=!1;for(let t=o+1;t>e.cols;++t)if(4194303&s._data[3*t+0]){h=!0;break}if(h)continue;const d=Math.min(e.cols,g-i.tileId%g+o);let l=i.tileId;for(let e=o+1;e<d;++e)this._writeToCell(s,e,a,++l),n.tileCount++}}this._viewportMetrics=e}getImageAtBufferCell(e,t){var A,s,o;const a=this._terminal._core.buffer.lines.get(t);if(a&&268435456&a.getBg(e)){const t=null!==(o=a._extendedAttrs[e])&&void 0!==o?o:r;if(t.imageId&&-1!==t.imageId){const e=null===(A=this._images.get(t.imageId))||void 0===A?void 0:A.orig;if(window.ImageBitmap&&e instanceof ImageBitmap){const t=i.ImageRenderer.createCanvas(window.document,e.width,e.height);return null===(s=t.getContext("2d"))||void 0===s||s.drawImage(e,0,0,e.width,e.height),t}return e}}}extractTileAtBufferCell(e,t){var A;const i=this._terminal._core.buffer.lines.get(t);if(i&&268435456&i.getBg(e)){const t=null!==(A=i._extendedAttrs[e])&&void 0!==A?A:r;if(t.imageId&&-1!==t.imageId&&-1!==t.tileId){const e=this._images.get(t.imageId);if(e)return this._renderer.extractTile(e,t.tileId)}}}_evictOldest(e){var t;const A=this._getStoredPixels();let i=A;for(;this._pixelLimit<i+e&&this._images.size;){const e=this._images.get(++this._lowestId);e&&e.orig&&(i-=e.orig.width*e.orig.height,e.actual&&e.orig!==e.actual&&(i-=e.actual.width*e.actual.height),null===(t=e.marker)||void 0===t||t.dispose(),this._delImg(this._lowestId))}return A-i}_writeToCell(e,t,A,i){if(268435456&e._data[3*t+2]){const r=e._extendedAttrs[t];if(r){if(void 0!==r.imageId){const e=this._images.get(r.imageId);return e&&e.tileCount--,r.imageId=A,void(r.tileId=i)}return void(e._extendedAttrs[t]=new s(r.ext,r.urlId,A,i))}}e._data[3*t+2]|=268435456,e._extendedAttrs[t]=new s(0,0,A,i)}_evictOnAlternate(){var e,t;for(const e of this._images.values())"alternate"===e.bufferType&&(e.tileCount=0);const A=this._terminal._core.buffer;for(let t=0;t<this._terminal.rows;++t){const i=A.lines.get(t);if(i)for(let t=0;t<this._terminal.cols;++t)if(268435456&i._data[3*t+2]){const A=null===(e=i._extendedAttrs[t])||void 0===e?void 0:e.imageId;if(A){const e=this._images.get(A);e&&e.tileCount++}}}const i=[];for(const[e,A]of this._images.entries())"alternate"!==A.bufferType||A.tileCount||(null===(t=A.marker)||void 0===t||t.dispose(),i.push(e));for(const e of i)this._delImg(e)}}},795(e,t,A){var i=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.IIPHandler=void 0;const s=A(463),r=A(699),o=i(A(669)),a=A(389),n=A(462),g={name:"Unnamed file",size:0,width:"auto",height:"auto",preserveAspectRatio:1,inline:0};t.IIPHandler=class{_opts;_renderer;_storage;_coreTerminal;_aborted=!1;_hp=new a.HeaderParser;_header=g;_dec;_metrics=n.UNSUPPORTED_TYPE;constructor(e,t,A,i){this._opts=e,this._renderer=t,this._storage=A,this._coreTerminal=i;const s=Math.ceil(4*this._opts.iipSizeLimit/3),r=Math.min(1048576,s);this._dec=new o.default(4194304,s,r)}reset(){}start(){this._aborted=!1,this._header=g,this._metrics=n.UNSUPPORTED_TYPE,this._hp.reset()}put(e,t,A){if(!this._aborted)if(4===this._hp.state)0!==this._dec.put(e.subarray(t,A))&&(this._dec.release(),this._aborted=!0);else{const i=this._hp.parse(e,t,A);if(-1===i)return void(this._aborted=!0);if(i>0){if(this._header=Object.assign({},g,this._hp.fields),!this._header.inline||!this._header.size||this._header.size>this._opts.iipSizeLimit)return void(this._aborted=!0);this._dec.init(),0!==this._dec.put(e.subarray(i,A))&&(this._dec.release(),this._aborted=!0)}}}end(e){if(this._aborted)return!0;let t=0,A=0,i=!0;if((i=e)&&(i=!this._dec.end())&&(i=this._dec.data8.length===this._header.size)&&(this._metrics=(0,n.imageType)(this._dec.data8),(i="unsupported"!==this._metrics.mime)&&(t=this._metrics.width,A=this._metrics.height,(i=t&&A&&t*A<this._opts.pixelLimit)&&([t,A]=this._resize(t,A).map(Math.floor),i=t&&A&&t*A<this._opts.pixelLimit))),!i)return this._dec.release(),!0;const r=new Blob([this._dec.data8],{type:this._metrics.mime});if(this._dec.release(),!window.createImageBitmap){const e=URL.createObjectURL(r),i=new Image;return new Promise(r=>{i.addEventListener("load",()=>{var o;URL.revokeObjectURL(e);const a=s.ImageRenderer.createCanvas(window.document,t,A);null===(o=a.getContext("2d"))||void 0===o||o.drawImage(i,0,0,t,A),this._storage.addImage(a),r(!0)}),i.src=e,setTimeout(()=>r(!0),1e3)})}return createImageBitmap(r,{resizeWidth:t,resizeHeight:A}).then(e=>(this._storage.addImage(e),!0))}_resize(e,t){var A,i,s,o;const a=(null===(A=this._renderer.dimensions)||void 0===A?void 0:A.css.cell.width)||r.CELL_SIZE_DEFAULT.width,n=(null===(i=this._renderer.dimensions)||void 0===i?void 0:i.css.cell.height)||r.CELL_SIZE_DEFAULT.height,g=(null===(s=this._renderer.dimensions)||void 0===s?void 0:s.css.canvas.width)||a*this._coreTerminal.cols,h=(null===(o=this._renderer.dimensions)||void 0===o?void 0:o.css.canvas.height)||n*this._coreTerminal.rows,d=this._dim(this._header.width,g,a),l=this._dim(this._header.height,h,n);if(!d&&!l){const A=g/e,i=(h-n)/t,s=Math.min(A,i);return s<1?[e*s,t*s]:[e,t]}return d?!this._header.preserveAspectRatio&&d&&l?[d,l]:[d,t*d/e]:[e*l/t,l]}_dim(e,t,A){return"auto"===e?0:e.endsWith("%")?parseInt(e.slice(0,-1))*t/100:e.endsWith("px")?parseInt(e.slice(0,-2)):parseInt(e)*A}}},939(e,t){function A(e){return 255&e}function i(e){return e>>>8&255}function s(e){return e>>>16&255}function r(e,t,A,i=255){return((255&i)<<24|(255&A)<<16|(255&t)<<8|255&e)>>>0}function o(e,t,A){return Math.max(e,Math.min(A,t))}function a(e,t,A){return A<0&&(A+=1),A>1&&(A-=1),6*A<1?t+6*(e-t)*A:2*A<1?e:3*A<2?t+(e-t)*(4-6*A):t}function n(e,t,A){return(4278190080|Math.round(A/100*255)<<16|Math.round(t/100*255)<<8|Math.round(e/100*255))>>>0}Object.defineProperty(t,"__esModule",{value:!0}),t.DEFAULT_FOREGROUND=t.DEFAULT_BACKGROUND=t.PALETTE_ANSI_256=t.PALETTE_VT340_GREY=t.PALETTE_VT340_COLOR=t.normalizeHLS=t.normalizeRGB=t.nearestColorIndex=t.fromRGBA8888=t.toRGBA8888=t.alpha=t.blue=t.green=t.red=t.BIG_ENDIAN=void 0,t.BIG_ENDIAN=255===new Uint8Array(new Uint32Array([4278190080]).buffer)[0],t.BIG_ENDIAN&&console.warn("BE platform detected. This version of node-sixel works only on LE properly."),t.red=A,t.green=i,t.blue=s,t.alpha=function(e){return e>>>24&255},t.toRGBA8888=r,t.fromRGBA8888=function(e){return[255&e,e>>8&255,e>>16&255,e>>>24]},t.nearestColorIndex=function(e,t){const r=A(e),o=i(e),a=s(e);let n=Number.MAX_SAFE_INTEGER,g=-1;for(let e=0;e<t.length;++e){const A=r-t[e][0],i=o-t[e][1],s=a-t[e][2],h=A*A+i*i+s*s;if(!h)return e;h<n&&(n=h,g=e)}return g},t.normalizeRGB=n,t.normalizeHLS=function(e,t,A){return function(e,t,A){if(!A){const e=Math.round(255*t);return r(e,e,e)}const i=t<.5?t*(1+A):t+A-t*A,s=2*t-i;return r(o(0,255,Math.round(255*a(i,s,e+1/3))),o(0,255,Math.round(255*a(i,s,e))),o(0,255,Math.round(255*a(i,s,e-1/3))))}((e+240)/360,t/100,A/100)},t.PALETTE_VT340_COLOR=new Uint32Array([n(0,0,0),n(20,20,80),n(80,13,13),n(20,80,20),n(80,20,80),n(20,80,80),n(80,80,20),n(53,53,53),n(26,26,26),n(33,33,60),n(60,26,26),n(33,60,33),n(60,33,60),n(33,60,60),n(60,60,33),n(80,80,80)]),t.PALETTE_VT340_GREY=new Uint32Array([n(0,0,0),n(13,13,13),n(26,26,26),n(40,40,40),n(6,6,6),n(20,20,20),n(33,33,33),n(46,46,46),n(0,0,0),n(13,13,13),n(26,26,26),n(40,40,40),n(6,6,6),n(20,20,20),n(33,33,33),n(46,46,46)]),t.PALETTE_ANSI_256=(()=>{const e=[r(0,0,0),r(205,0,0),r(0,205,0),r(205,205,0),r(0,0,238),r(205,0,205),r(0,250,205),r(229,229,229),r(127,127,127),r(255,0,0),r(0,255,0),r(255,255,0),r(92,92,255),r(255,0,255),r(0,255,255),r(255,255,255)],t=[0,95,135,175,215,255];for(let A=0;A<6;++A)for(let i=0;i<6;++i)for(let s=0;s<6;++s)e.push(r(t[A],t[i],t[s]));for(let t=8;t<=238;t+=10)e.push(r(t,t,t));return new Uint32Array(e)})(),t.DEFAULT_BACKGROUND=r(0,0,0,255),t.DEFAULT_FOREGROUND=r(255,255,255,255)},994(e,t,A){Object.defineProperty(t,"__esModule",{value:!0}),t.SixelImageStorage=void 0;const i=A(699);t.SixelImageStorage=class{_storage;_opts;_renderer;_terminal;constructor(e,t,A,i){this._storage=e,this._opts=t,this._renderer=A,this._terminal=i}addImage(e){this._storage.addImage(e,this._opts.sixelScrolling)}advanceCursor(e){if(this._opts.sixelScrolling){let t=this._renderer.cellSize;-1!==t.width&&-1!==t.height||(t=i.CELL_SIZE_DEFAULT);const A=Math.ceil(e/t.height);for(let e=1;e<A;++e)this._terminal._core._inputHandler.lineFeed()}}}}},t={};function A(i){var s=t[i];if(void 0!==s)return s.exports;var r=t[i]={exports:{}};return e[i].call(r.exports,r,r.exports,A),r.exports}var i={};return(()=>{var e=i;Object.defineProperty(e,"__esModule",{value:!0}),e.ImageAddon=void 0;const t=A(795),s=A(463),r=A(699),o=A(23),a=A(235),n=A(566),g=A(994),h=A(649),d={enableSizeReports:!0,pixelLimit:16777216,sixelSupport:!0,sixelScrolling:!0,sixelPaletteLimit:256,sixelSizeLimit:25e6,storageLimit:128,showPlaceholder:!0,iipSupport:!0,iipSizeLimit:2e7,kittySupport:!0,kittySizeLimit:2e7};e.ImageAddon=class{_opts;_defaultOpts;_storage;_renderer;_disposables=[];_terminal;_handlers=new Map;constructor(e){this._opts=Object.assign({},d,e),this._defaultOpts=Object.assign({},d,e)}dispose(){for(const e of this._disposables)e.dispose();this._disposables.length=0,this._handlers.clear()}_disposeLater(...e){for(const t of e)this._disposables.push(t)}activate(e){var A;if(this._terminal=e,this._renderer=new s.ImageRenderer(e),this._storage=new r.ImageStorage(e,this._renderer,this._opts),this._opts.enableSizeReports){const t=null!==(A=e.options.windowOptions)&&void 0!==A?A:{};t.getWinSizePixels=!0,t.getCellSizePixels=!0,t.getWinSizeChars=!0,e.options.windowOptions=t}if(this._disposeLater(this._renderer,this._storage,e.parser.registerCsiHandler({prefix:"?",final:"h"},e=>this._decset(e)),e.parser.registerCsiHandler({prefix:"?",final:"l"},e=>this._decrst(e)),e.parser.registerCsiHandler({final:"c"},e=>this._da1(e)),e.parser.registerCsiHandler({prefix:"?",final:"S"},e=>this._xtermGraphicsAttributes(e)),e.onRender(e=>{var t;return null===(t=this._storage)||void 0===t?void 0:t.render(e)}),e.parser.registerCsiHandler({intermediates:"!",final:"p"},()=>this.reset()),e.parser.registerEscHandler({final:"c"},()=>this.reset()),e._core._inputHandler.onRequestReset(()=>this.reset()),e.buffer.onBufferChange(()=>{var e;return null===(e=this._storage)||void 0===e?void 0:e.wipeAlternate()}),e.onResize(e=>{var t;return null===(t=this._storage)||void 0===t?void 0:t.viewportResize(e)})),this._opts.sixelSupport){const t=new g.SixelImageStorage(this._storage,this._opts,this._renderer,e),A=new n.SixelHandler(this._opts,t,e);this._handlers.set("sixel",A),this._disposeLater(e._core._inputHandler._parser.registerDcsHandler({final:"q"},A))}if(this._opts.iipSupport){const A=new h.IIPImageStorage(this._storage),i=new t.IIPHandler(this._opts,this._renderer,A,e);this._handlers.set("iip",i),this._disposeLater(e._core._inputHandler._parser.registerOscHandler(1337,i))}if(this._opts.kittySupport){const t=new a.KittyImageStorage(this._storage),A=new o.KittyGraphicsHandler(this._opts,this._renderer,t,e);this._handlers.set("kitty",A),this._disposeLater(t,A,e._core._inputHandler._parser.registerApcHandler(71,A))}}reset(){var e;this._opts.sixelScrolling=this._defaultOpts.sixelScrolling,this._opts.sixelPaletteLimit=this._defaultOpts.sixelPaletteLimit,null===(e=this._storage)||void 0===e||e.reset();for(const e of this._handlers.values())e.reset();return!1}get storageLimit(){var e;return(null===(e=this._storage)||void 0===e?void 0:e.getLimit())||-1}set storageLimit(e){var t;null===(t=this._storage)||void 0===t||t.setLimit(e),this._opts.storageLimit=e}get storageUsage(){return this._storage?this._storage.getUsage():-1}get showPlaceholder(){return this._opts.showPlaceholder}set showPlaceholder(e){var t;this._opts.showPlaceholder=e,null===(t=this._renderer)||void 0===t||t.showPlaceholder(e)}getImageAtBufferCell(e,t){var A;return null===(A=this._storage)||void 0===A?void 0:A.getImageAtBufferCell(e,t)}extractTileAtBufferCell(e,t){var A;return null===(A=this._storage)||void 0===A?void 0:A.extractTileAtBufferCell(e,t)}_report(e){var t;null===(t=this._terminal)||void 0===t||t._core.coreService.triggerDataEvent(e)}_decset(e){for(let t=0;t<e.length;++t)80===e[t]&&(this._opts.sixelScrolling=!1);return!1}_decrst(e){for(let t=0;t<e.length;++t)80===e[t]&&(this._opts.sixelScrolling=!0);return!1}_da1(e){return!!e[0]||!!this._opts.sixelSupport&&(this._report("[?62;4;9;22c"),!0)}_xtermGraphicsAttributes(e){var t,A,i,s,o,a;if(e.length<2)return!0;if(1===e[0])switch(e[1]){case 1:return this._report(`[?${e[0]};0;${this._opts.sixelPaletteLimit}S`),!0;case 2:this._opts.sixelPaletteLimit=this._defaultOpts.sixelPaletteLimit,this._report(`[?${e[0]};0;${this._opts.sixelPaletteLimit}S`);for(const e of this._handlers.values())e.reset();return!0;case 3:return e.length>2&&!(e[2]instanceof Array)&&e[2]<=4096?(this._opts.sixelPaletteLimit=e[2],this._report(`[?${e[0]};0;${this._opts.sixelPaletteLimit}S`)):this._report(`[?${e[0]};2S`),!0;case 4:return this._report(`[?${e[0]};0;4096S`),!0;default:return this._report(`[?${e[0]};2S`),!0}if(2===e[0])switch(e[1]){case 1:let n=null===(A=null===(t=this._renderer)||void 0===t?void 0:t.dimensions)||void 0===A?void 0:A.css.canvas.width,g=null===(s=null===(i=this._renderer)||void 0===i?void 0:i.dimensions)||void 0===s?void 0:s.css.canvas.height;if(!n||!g){const e=r.CELL_SIZE_DEFAULT;n=((null===(o=this._terminal)||void 0===o?void 0:o.cols)||80)*e.width,g=((null===(a=this._terminal)||void 0===a?void 0:a.rows)||24)*e.height}if(n*g<this._opts.pixelLimit)this._report(`[?${e[0]};0;${n.toFixed(0)};${g.toFixed(0)}S`);else{const t=Math.floor(Math.sqrt(this._opts.pixelLimit));this._report(`[?${e[0]};0;${t};${t}S`)}return!0;case 4:const h=Math.floor(Math.sqrt(this._opts.pixelLimit));return this._report(`[?${e[0]};0;${h};${h}S`),!0;default:return this._report(`[?${e[0]};2S`),!0}return this._report(`[?${e[0]};1S`),!0}}})(),i})());
|
|
3
3
|
//# sourceMappingURL=addon-image.js.map
|