From 4a5f78c917579db55b9b772c570fea13bc136821 Mon Sep 17 00:00:00 2001 From: Concedo <39025047+LostRuins@users.noreply.github.com> Date: Tue, 8 Sep 2026 17:55:38 +0800 Subject: [PATCH] update sdui --- embd_res/kcpp_sdui.embd | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/embd_res/kcpp_sdui.embd b/embd_res/kcpp_sdui.embd index a2c0f7506..4a8609d4a 100644 --- a/embd_res/kcpp_sdui.embd +++ b/embd_res/kcpp_sdui.embd @@ -520,11 +520,11 @@ gl_FragColor.rgb *= color.a; `?(s++,f[s]=0):f[s]++;f[0]>0&&(this.insertCharStyleObject(c.lineIndex,c.charIndex,f[0],h),h=h&&h.slice(f[0]+1)),s&&this.insertNewlineStyleObject(c.lineIndex,c.charIndex+f[0],s);for(var d=1;d0?this.insertCharStyleObject(c.lineIndex+d,0,f[d],h):h&&this.styles[c.lineIndex+d]&&h[0]&&(this.styles[c.lineIndex+d][0]=h[0]),h=h&&h.slice(f[d]+1);f[d]>0&&this.insertCharStyleObject(c.lineIndex+d,0,f[d],h)},setSelectionStartEndWithShift:function(a,l,h){h<=a?(l===a?this._selectionDirection="left":this._selectionDirection==="right"&&(this._selectionDirection="left",this.selectionEnd=a),this.selectionStart=h):h>a&&ha?this.selectionStart=a:this.selectionStart<0&&(this.selectionStart=0),this.selectionEnd>a?this.selectionEnd=a:this.selectionEnd<0&&(this.selectionEnd=0)}})}(),t.util.object.extend(t.IText.prototype,{initDoubleClickSimulation:function(){this.__lastClickTime=+new Date,this.__lastLastClickTime=+new Date,this.__lastPointer={},this.on("mousedown",this.onMouseDown)},onMouseDown:function(o){if(!!this.canvas){this.__newClickTime=+new Date;var a=o.pointer;this.isTripleClick(a)&&(this.fire("tripleclick",o),this._stopEvent(o.e)),this.__lastLastClickTime=this.__lastClickTime,this.__lastClickTime=this.__newClickTime,this.__lastPointer=a,this.__lastIsEditing=this.isEditing,this.__lastSelected=this.selected}},isTripleClick:function(o){return this.__newClickTime-this.__lastClickTime<500&&this.__lastClickTime-this.__lastLastClickTime<500&&this.__lastPointer.x===o.x&&this.__lastPointer.y===o.y},_stopEvent:function(o){o.preventDefault&&o.preventDefault(),o.stopPropagation&&o.stopPropagation()},initCursorSelectionHandlers:function(){this.initMousedownHandler(),this.initMouseupHandler(),this.initClicks()},doubleClickHandler:function(o){!this.isEditing||this.selectWord(this.getSelectionStartFromPointer(o.e))},tripleClickHandler:function(o){!this.isEditing||this.selectLine(this.getSelectionStartFromPointer(o.e))},initClicks:function(){this.on("mousedblclick",this.doubleClickHandler),this.on("tripleclick",this.tripleClickHandler)},_mouseDownHandler:function(o){!this.canvas||!this.editable||o.e.button&&o.e.button!==1||(this.__isMousedown=!0,this.selected&&(this.inCompositionMode=!1,this.setCursorByClick(o.e)),this.isEditing&&(this.__selectionStartOnMouseDown=this.selectionStart,this.selectionStart===this.selectionEnd&&this.abortCursorAnimation(),this.renderCursorOrSelection()))},_mouseDownHandlerBefore:function(o){!this.canvas||!this.editable||o.e.button&&o.e.button!==1||(this.selected=this===this.canvas._activeObject)},initMousedownHandler:function(){this.on("mousedown",this._mouseDownHandler),this.on("mousedown:before",this._mouseDownHandlerBefore)},initMouseupHandler:function(){this.on("mouseup",this.mouseUpHandler)},mouseUpHandler:function(o){if(this.__isMousedown=!1,!(!this.editable||this.group||o.transform&&o.transform.actionPerformed||o.e.button&&o.e.button!==1)){if(this.canvas){var a=this.canvas._activeObject;if(a&&a!==this)return}this.__lastSelected&&!this.__corner?(this.selected=!1,this.__lastSelected=!1,this.enterEditing(o.e),this.selectionStart===this.selectionEnd?this.initDelayedCursor(!0):this.renderCursorOrSelection()):this.selected=!0}},setCursorByClick:function(o){var a=this.getSelectionStartFromPointer(o),l=this.selectionStart,h=this.selectionEnd;o.shiftKey?this.setSelectionStartEndWithShift(l,h,a):(this.selectionStart=a,this.selectionEnd=a),this.isEditing&&(this._fireSelectionChanged(),this._updateTextarea())},getSelectionStartFromPointer:function(o){for(var a=this.getLocalPointer(o),l=0,h=0,c=0,f=0,s=0,d,g,m=0,v=this._textLines.length;m0&&(f+=this._textLines[m-1].length+this.missingNewlineOffset(m-1));d=this._getLineLeftOffset(s),h=d*this.scaleX,g=this._textLines[s],this.direction==="rtl"&&(a.x=this.width*this.scaleX-a.x+h);for(var y=0,b=g.length;yf||s<0?0:1,g=h+d;return this.flipX&&(g=c-g),g>this._text.length&&(g=this._text.length),g}}),t.util.object.extend(t.IText.prototype,{initHiddenTextarea:function(){this.hiddenTextarea=t.document.createElement("textarea"),this.hiddenTextarea.setAttribute("autocapitalize","off"),this.hiddenTextarea.setAttribute("autocorrect","off"),this.hiddenTextarea.setAttribute("autocomplete","off"),this.hiddenTextarea.setAttribute("spellcheck","false"),this.hiddenTextarea.setAttribute("data-fabric-hiddentextarea",""),this.hiddenTextarea.setAttribute("wrap","off");var o=this._calcTextareaPosition();this.hiddenTextarea.style.cssText="position: absolute; top: "+o.top+"; left: "+o.left+"; z-index: -999; opacity: 0; width: 1px; height: 1px; font-size: 1px; padding-top: "+o.fontSize+";",this.hiddenTextareaContainer?this.hiddenTextareaContainer.appendChild(this.hiddenTextarea):t.document.body.appendChild(this.hiddenTextarea),t.util.addListener(this.hiddenTextarea,"keydown",this.onKeyDown.bind(this)),t.util.addListener(this.hiddenTextarea,"keyup",this.onKeyUp.bind(this)),t.util.addListener(this.hiddenTextarea,"input",this.onInput.bind(this)),t.util.addListener(this.hiddenTextarea,"copy",this.copy.bind(this)),t.util.addListener(this.hiddenTextarea,"cut",this.copy.bind(this)),t.util.addListener(this.hiddenTextarea,"paste",this.paste.bind(this)),t.util.addListener(this.hiddenTextarea,"compositionstart",this.onCompositionStart.bind(this)),t.util.addListener(this.hiddenTextarea,"compositionupdate",this.onCompositionUpdate.bind(this)),t.util.addListener(this.hiddenTextarea,"compositionend",this.onCompositionEnd.bind(this)),!this._clickHandlerInitialized&&this.canvas&&(t.util.addListener(this.canvas.upperCanvasEl,"click",this.onClick.bind(this)),this._clickHandlerInitialized=!0)},keysMap:{9:"exitEditing",27:"exitEditing",33:"moveCursorUp",34:"moveCursorDown",35:"moveCursorRight",36:"moveCursorLeft",37:"moveCursorLeft",38:"moveCursorUp",39:"moveCursorRight",40:"moveCursorDown"},keysMapRtl:{9:"exitEditing",27:"exitEditing",33:"moveCursorUp",34:"moveCursorDown",35:"moveCursorLeft",36:"moveCursorRight",37:"moveCursorRight",38:"moveCursorUp",39:"moveCursorLeft",40:"moveCursorDown"},ctrlKeysMapUp:{67:"copy",88:"cut"},ctrlKeysMapDown:{65:"selectAll"},onClick:function(){this.hiddenTextarea&&this.hiddenTextarea.focus()},onKeyDown:function(o){if(!!this.isEditing){var a=this.direction==="rtl"?this.keysMapRtl:this.keysMap;if(o.keyCode in a)this[a[o.keyCode]](o);else if(o.keyCode in this.ctrlKeysMapDown&&(o.ctrlKey||o.metaKey))this[this.ctrlKeysMapDown[o.keyCode]](o);else return;o.stopImmediatePropagation(),o.preventDefault(),o.keyCode>=33&&o.keyCode<=40?(this.inCompositionMode=!1,this.clearContextTop(),this.renderCursorOrSelection()):this.canvas&&this.canvas.requestRenderAll()}},onKeyUp:function(o){if(!this.isEditing||this._copyDone||this.inCompositionMode){this._copyDone=!1;return}if(o.keyCode in this.ctrlKeysMapUp&&(o.ctrlKey||o.metaKey))this[this.ctrlKeysMapUp[o.keyCode]](o);else return;o.stopImmediatePropagation(),o.preventDefault(),this.canvas&&this.canvas.requestRenderAll()},onInput:function(o){var a=this.fromPaste;if(this.fromPaste=!1,o&&o.stopPropagation(),!!this.isEditing){var l=this._splitTextIntoLines(this.hiddenTextarea.value).graphemeText,h=this._text.length,c=l.length,f,s,d=c-h,g=this.selectionStart,m=this.selectionEnd,v=g!==m,y,b,w;if(this.hiddenTextarea.value===""){this.styles={},this.updateFromTextArea(),this.fire("changed"),this.canvas&&(this.canvas.fire("text:changed",{target:this}),this.canvas.requestRenderAll());return}var S=this.fromStringToGraphemeSelection(this.hiddenTextarea.selectionStart,this.hiddenTextarea.selectionEnd,this.hiddenTextarea.value),C=g>S.selectionStart;v?(f=this._text.slice(g,m),d+=m-g):c0&&(h=this.__charBounds[o][a-1],l+=h.left+h.width),l},getDownCursorOffset:function(o,a){var l=this._getSelectionForOffset(o,a),h=this.get2DCursorLocation(l),c=h.lineIndex;if(c===this._textLines.length-1||o.metaKey||o.keyCode===34)return this._text.length-l;var f=h.charIndex,s=this._getWidthBeforeCursor(c,f),d=this._getIndexOnLine(c+1,s),g=this._textLines[c].slice(f);return g.length+d+1+this.missingNewlineOffset(c)},_getSelectionForOffset:function(o,a){return o.shiftKey&&this.selectionStart!==this.selectionEnd&&a?this.selectionEnd:this.selectionStart},getUpCursorOffset:function(o,a){var l=this._getSelectionForOffset(o,a),h=this.get2DCursorLocation(l),c=h.lineIndex;if(c===0||o.metaKey||o.keyCode===33)return-l;var f=h.charIndex,s=this._getWidthBeforeCursor(c,f),d=this._getIndexOnLine(c-1,s),g=this._textLines[c].slice(0,f),m=this.missingNewlineOffset(c-1);return-this._textLines[c-1].length+d-g.length+(1-m)},_getIndexOnLine:function(o,a){for(var l=this._textLines[o],h=this._getLineLeftOffset(o),c=h,f=0,s,d,g=0,m=l.length;ga){d=!0;var v=c-s,y=c,b=Math.abs(v-a),w=Math.abs(y-a);f=w=this._text.length&&this.selectionEnd>=this._text.length||this._moveCursorUpOrDown("Down",o)},moveCursorUp:function(o){this.selectionStart===0&&this.selectionEnd===0||this._moveCursorUpOrDown("Up",o)},_moveCursorUpOrDown:function(o,a){var l="get"+o+"CursorOffset",h=this[l](a,this._selectionDirection==="right");a.shiftKey?this.moveCursorWithShift(h):this.moveCursorWithoutShift(h),h!==0&&(this.setSelectionInBoundaries(),this.abortCursorAnimation(),this._currentCursorOpacity=1,this.initDelayedCursor(),this._fireSelectionChanged(),this._updateTextarea())},moveCursorWithShift:function(o){var a=this._selectionDirection==="left"?this.selectionStart+o:this.selectionEnd+o;return this.setSelectionStartEndWithShift(this.selectionStart,this.selectionEnd,a),o!==0},moveCursorWithoutShift:function(o){return o<0?(this.selectionStart+=o,this.selectionEnd=this.selectionStart):(this.selectionEnd+=o,this.selectionStart=this.selectionEnd),o!==0},moveCursorLeft:function(o){this.selectionStart===0&&this.selectionEnd===0||this._moveCursorLeftOrRight("Left",o)},_move:function(o,a,l){var h;if(o.altKey)h=this["findWordBoundary"+l](this[a]);else if(o.metaKey||o.keyCode===35||o.keyCode===36)h=this["findLineBoundary"+l](this[a]);else return this[a]+=l==="Left"?-1:1,!0;if(typeof h<"u"&&this[a]!==h)return this[a]=h,!0},_moveLeft:function(o,a){return this._move(o,a,"Left")},_moveRight:function(o,a){return this._move(o,a,"Right")},moveCursorLeftWithoutShift:function(o){var a=!0;return this._selectionDirection="left",this.selectionEnd===this.selectionStart&&this.selectionStart!==0&&(a=this._moveLeft(o,"selectionStart")),this.selectionEnd=this.selectionStart,a},moveCursorLeftWithShift:function(o){if(this._selectionDirection==="right"&&this.selectionStart!==this.selectionEnd)return this._moveLeft(o,"selectionEnd");if(this.selectionStart!==0)return this._selectionDirection="left",this._moveLeft(o,"selectionStart")},moveCursorRight:function(o){this.selectionStart>=this._text.length&&this.selectionEnd>=this._text.length||this._moveCursorLeftOrRight("Right",o)},_moveCursorLeftOrRight:function(o,a){var l="moveCursor"+o+"With";this._currentCursorOpacity=1,a.shiftKey?l+="Shift":l+="outShift",this[l](a)&&(this.abortCursorAnimation(),this.initDelayedCursor(),this._fireSelectionChanged(),this._updateTextarea())},moveCursorRightWithShift:function(o){if(this._selectionDirection==="left"&&this.selectionStart!==this.selectionEnd)return this._moveRight(o,"selectionStart");if(this.selectionEnd!==this._text.length)return this._selectionDirection="right",this._moveRight(o,"selectionEnd")},moveCursorRightWithoutShift:function(o){var a=!0;return this._selectionDirection="right",this.selectionStart===this.selectionEnd?(a=this._moveRight(o,"selectionStart"),this.selectionEnd=this.selectionStart):this.selectionStart=this.selectionEnd,a},removeChars:function(o,a){typeof a>"u"&&(a=o+1),this.removeStyleFromTo(o,a),this._text.splice(o,a-o),this.text=this._text.join(""),this.set("dirty",!0),this._shouldClearDimensionCache()&&(this.initDimensions(),this.setCoords()),this._removeExtraneousStyles()},insertChars:function(o,a,l,h){typeof h>"u"&&(h=l),h>l&&this.removeStyleFromTo(l,h);var c=t.util.string.graphemeSplit(o);this.insertNewStyleBlock(c,l,a),this._text=[].concat(this._text.slice(0,l),c,this._text.slice(h)),this.text=this._text.join(""),this.set("dirty",!0),this._shouldClearDimensionCache()&&(this.initDimensions(),this.setCoords()),this._removeExtraneousStyles()}}),function(){var o=t.util.toFixed,a=t.util.radiansToDegrees,l=t.util.calcRotateMatrix,h=t.util.transformPoint,c=/ +/g;t.util.object.extend(t.Text.prototype,{_toSVG:function(){var f=this._getSVGLeftTopOffsets(),s=this._getSVGTextAndBg(f.textTop,f.textLeft);return this._wrapSVGTextAndBg(s)},toSVG:function(f){var s=this._createBaseSVGMarkup(this._toSVG(),{reviver:f,noStyle:!0,withShadow:!0}),d=this.path;return d?s+d._createBaseSVGMarkup(d._toSVG(),{reviver:f,withShadow:!0}):s},_getSVGLeftTopOffsets:function(){return{textLeft:-this.width/2,textTop:-this.height/2,lineTop:this.getHeightOfLine(0)}},_wrapSVGTextAndBg:function(f){var s=!0,d=this.getSvgTextDecoration(this);return[f.textBgRects.join(""),' ",f.textSpans.join(""),` `]},_getSVGTextAndBg:function(f,s){var d=[],g=[],m=f,v;this._setSVGBg(g);for(var y=0,b=this._textLines.length;y",t.util.string.escapeXml(f),""].join("")},_setSVGTextLineText:function(f,s,d,g){var m=this.getHeightOfLine(s),v=this.textAlign.indexOf("justify")!==-1,y,b,w="",S,C,T=0,k=this._textLines[s],A;g+=m*(1-this._fontSizeFraction)/this.lineHeight;for(var P=0,z=k.length-1;P<=z;P++)A=P===z||this.charSpacing||this.path,w+=k[P],S=this.__charBounds[s][P],T===0?(d+=S.kernedWidth-S.width,T+=S.width):T+=S.kernedWidth,v&&!A&&this._reSpaceAndTab.test(k[P])&&(A=!0),A||(y=y||this.getCompleteStyleDeclaration(s,P),b=this.getCompleteStyleDeclaration(s,P+1),A=t.util.hasStyleChanged(y,b,!0)),A&&(C=this._getStyleDeclaration(s,P)||{},f.push(this._createTextCharSpan(w,C,d,g,S)),w="",y=b,d+=T,T=0)},_pushTextBgRect:function(f,s,d,g,m,v){var y=t.Object.NUM_FRACTION_DIGITS;f.push(" `)},_setSVGTextLineBg:function(f,s,d,g){for(var m=this._textLines[s],v=this.getHeightOfLine(s)/this.lineHeight,y=0,b=0,w,S,C=this.getValueOfPropertyAt(s,0,"textBackgroundColor"),T=0,k=m.length;Tthis.width&&this._set("width",this.dynamicMinWidth),this.textAlign.indexOf("justify")!==-1&&this.enlargeSpaces(),this.height=this.calcTextHeight(),this.saveState({propertySet:"_dimensionAffectingProps"}))},_generateStyleMap:function(l){for(var h=0,c=0,f=0,s={},d=0;d0?(c=0,f++,h++):!this.splitByGrapheme&&this._reSpaceAndTab.test(l.graphemeText[f])&&d>0&&(c++,f++),s[d]={line:h,offset:c},f+=l.graphemeLines[d].length,c+=l.graphemeLines[d].length;return s},styleHas:function(l,h){if(this._styleMap&&!this.isWrapping){var c=this._styleMap[h];c&&(h=c.line)}return a.Text.prototype.styleHas.call(this,l,h)},isEmptyStyles:function(l){if(!this.styles)return!0;var h=0,c=l+1,f,s,d=!1,g=this._styleMap[l],m=this._styleMap[l+1];g&&(l=g.line,h=g.offset),m&&(c=m.line,d=c===l,f=m.offset),s=typeof l>"u"?this.styles:{line:this.styles[l]};for(var v in s)for(var y in s[v])if(y>=h&&(!d||yc&&!k?(g.push(m),m=[],s=S,k=!0):s+=A,!k&&!d&&m.push(w),m=m.concat(y),C=d?0:this._measureWord([w],h,b),b++,k=!1,S>T&&(T=S);return z&&g.push(m),T+P>this.dynamicMinWidth&&(this.dynamicMinWidth=T-A+P),g},isEndOfWrapping:function(l){return!this._styleMap[l+1]||this._styleMap[l+1].line!==this._styleMap[l].line},missingNewlineOffset:function(l,h){return this.splitByGrapheme&&!h?this.isEndOfWrapping(l)?1:0:1},_splitTextIntoLines:function(l){for(var h=a.Text.prototype._splitTextIntoLines.call(this,l),c=this._wrapText(h.lines,this.width),f=new Array(c.length),s=0;si.onload=p),n.width=i.width,n.height=i.height,r==null||r.drawImage(i,0,0),n.toDataURL(t)}async function eU(e,t){const n=e.split(";base64,"),r=t!=null?t:n[0].split(":")[1],i=window.atob(r===n[0].split(":")[1]?n[1]:(await Q7(e,r)).split(",")[1]),u=new Uint8Array(i.length);for(let p=0;p{const r=new FileReader;r.onload=()=>t(r.result),r.onerror=i=>n(i),r.readAsDataURL(e)})}"stream"in Blob.prototype||Object.defineProperty(Blob.prototype,"stream",{value(){return new Response(this).body}});var $f=e=>new DataView(new ArrayBuffer(e)),fo=e=>new Uint8Array(e.buffer||e),Ro=e=>new TextEncoder().encode(String(e));function tU(e,t,n=436){if(t===void 0||t instanceof Date||(t=new Date(t)),e instanceof File)return{t:t||new Date(e.lastModified),bytes:e.stream(),mode:n};if(e instanceof Response)return{t:t||new Date(e.headers.get("Last-Modified")||Date.now()),bytes:e.body,mode:n};if(t===void 0)t=new Date;else if(isNaN(t))throw new Error("Invalid modification date.");if(typeof e=="string")return{t,bytes:Ro(e),mode:n};if(e instanceof Blob)return{t,bytes:e.stream(),mode:n};if(e instanceof Uint8Array||e instanceof ReadableStream)return{t,bytes:e,mode:n};if(e instanceof ArrayBuffer||ArrayBuffer.isView(e))return{t,bytes:fo(e),mode:n};if(Symbol.asyncIterator in e)return{t,bytes:HS(e[Symbol.asyncIterator]()),mode:n};throw new TypeError("Unsupported input format.")}function HS(e,t=e){return new ReadableStream({async pull(n){let r=0;for(;n.desiredSize>r;){const i=await e.next();if(!i.value){n.close();break}{const u=nU(i.value);n.enqueue(u),r+=u.byteLength}}},cancel(n){var r;(r=t.throw)==null||r.call(t,n)}})}function nU(e){return typeof e=="string"?Ro(e):e instanceof Uint8Array?e:fo(e)}function WS(e,t,n){let[r,i]=function(u){return u?u instanceof Uint8Array?[u,1]:ArrayBuffer.isView(u)||u instanceof ArrayBuffer?[fo(u),1]:[Ro(u),0]:[void 0,0]}(t);if(e instanceof File)return{o:$d(r||Ro(e.name)),i:e.size,u:i};if(e instanceof Response){const u=e.headers.get("content-disposition"),p=u&&u.match(/;\s*filename\*?\s*=\s*(?:UTF-\d+''|)["']?([^;"'\r\n]*)["']?(?:;|$)/i),o=p&&p[1]||e.url&&new URL(e.url).pathname.split("/").findLast(Boolean),a=o&&decodeURIComponent(o),l=n||+e.headers.get("content-length");return{o:$d(r||Ro(a)),i:l,u:i}}return r=$d(r),typeof e=="string"?{o:r,i:Ro(e).length,u:i}:e instanceof Blob?{o:r,i:e.size,u:i}:e instanceof ArrayBuffer||ArrayBuffer.isView(e)?{o:r,i:e.byteLength,u:i}:{o:r,i:rU(e,n),u:i}}function rU(e,t){return t>-1?t:e?void 0:0}function $d(e){if(!e||e.every(t=>t===47))throw new Error("The file must have a name.");for(;e[e.length-1]===47;)e=e.subarray(0,-1);return e}var GS=new Uint32Array(256);for(let e=0;e<256;++e){let t=e;for(let n=0;n<8;++n)t=t>>>1^(1&t&&3988292384);GS[e]=t}function Yy(e,t=0){t=~t;for(var n=0,r=e.length;n>>8^GS[255&t^e[n]];return~t>>>0}function YS(e,t,n=0){const r=e.getSeconds()>>1|e.getMinutes()<<5|e.getHours()<<11,i=e.getDate()|e.getMonth()+1<<5|e.getFullYear()-1980<<9;t.setUint16(n,r,1),t.setUint16(n+2,i,1)}function iU({o:e,u:t},n){return 8*(!t||(n!=null?n:function(r){try{aU.decode(r)}catch{return 0}return 1}(e)))}var aU=new TextDecoder("utf8",{fatal:1});function oU(e,t=0){const n=$f(30);return n.setUint32(0,1347093252),n.setUint32(4,335546368|t),YS(e.t,n,10),n.setUint16(26,e.o.length,1),fo(n)}async function*sU(e){let{bytes:t}=e;if("then"in t&&(t=await t),t instanceof Uint8Array)yield t,e.l=Yy(t,0),e.i=t.length;else{e.i=0;const n=t.getReader();for(;;){const{value:r,done:i}=await n.read();if(i)break;e.l=Yy(r,e.l),e.i+=r.length,yield r}}}function lU(e){const t=$f(16);return t.setUint32(0,1347094280),t.setUint32(4,e.l,1),t.setUint32(8,e.i,1),t.setUint32(12,e.i,1),fo(t)}function uU(e,t,n=0){const r=$f(46);return r.setUint32(0,1347092738),r.setUint32(4,352523264),r.setUint16(8,2048|n),YS(e.t,r,12),r.setUint32(16,e.l,1),r.setUint32(20,e.i,1),r.setUint32(24,e.i,1),r.setUint16(28,e.o.length,1),r.setUint16(40,32768|e.mode,1),r.setUint32(42,t,1),fo(r)}function KS(e){return e instanceof File||e instanceof Response?[[e],[e]]:[[e.input,e.name,e.size],[e.input,e.lastModified,e.mode]]}var cU=e=>function(t){var n;let r=22;for(const i of t){if(!i.o)throw new Error("Every file must have a non-empty name.");if(isNaN((n=i.i)!=null?n:NaN))throw new Error(`Missing size for file "${new TextDecoder().decode(i.o)}".`);r+=2*i.o.length+i.i+92}return r}(function*(t){for(const n of t)yield WS(...KS(n)[0])}(e));function fU(e,t={}){const n={"Content-Type":"application/zip","Content-Disposition":"attachment"};Number.isInteger(t.length)&&t.length>0&&(n["Content-Length"]=t.length),t.metadata&&(n["Content-Length"]=cU(t.metadata));const r=function(i){var u;const p=i[Symbol.iterator in i?Symbol.iterator:Symbol.asyncIterator]();return{async next(){const o=await p.next();if(o.done)return o;const[a,l]=KS(o.value);return{done:0,value:Object.assign(tU(...l),WS(...a))}},throw:(u=p.throw)==null?void 0:u.bind(p),[Symbol.asyncIterator](){return this}}}(e);return new Response(HS(async function*(i,u){const p=[];let o=0,a=0;for await(const c of i){const f=iU(c,u.buffersAreUTF8);yield oU(c,f),yield new Uint8Array(c.o),yield*sU(c),yield lU(c),p.push(uU(c,o,f)),p.push(c.o),a++,o+=46+c.o.length+c.i}let l=0;for(const c of p)yield c,l+=c.length;const h=$f(22);h.setUint32(0,1347093766),h.setUint16(8,a,1),h.setUint16(10,a,1),h.setUint32(12,l,1),h.setUint32(16,o,1),yield fo(h)}(r,t),r),{headers:n})}async function XS(e,t=!0,n){const r=Ft();t&&la({message:`Downloading ${e.length} image(s)...`,type:"info"});const i=[];for(let o=0;o]/g,"").substring(0,128).trimEnd();let s=r.imageDownloadType;l.startsWith("data:image/gif")&&(s="GIF"),s==="PNG"?i.push({name:f+".png",input:await Fa(l,"image/png")}):s==="JPG"?i.push({name:f+".jpg",input:await Fa(l,"image/jpeg")}):s==="GIF"?i.push({name:f+".gif",input:await Fa(l,"image/gif")}):i.push({name:f+".webp",input:await Fa(l,"image/webp")}),i.push({name:f+".json",input:JSON.stringify(c,void 0,4)}),n&&n()}const u=await fU(i).blob(),p=document.createElement("a");p.href=URL.createObjectURL(u),p.download="sdui_images.zip",p.click()}async function ag(e,t){const n=Ft(),r=document.createElement("a");let i,u=n.imageDownloadType;e.startsWith("data:image/gif")&&(u="GIF"),u==="PNG"?(i=await Fa(e,"image/png"),r.href=URL.createObjectURL(i),r.download=t.replace(/[/\\:*?"<>]/g,"").substring(0,128).trimEnd()+".png"):u==="JPG"?(i=await Fa(e,"image/jpeg"),r.href=URL.createObjectURL(i),r.download=t.replace(/[/\\:*?"<>]/g,"").substring(0,128).trimEnd()+".jpg"):u==="GIF"?(i=await Fa(e,"image/gif"),r.href=URL.createObjectURL(i),r.download=t.replace(/[/\\:*?"<>]/g,"").substring(0,128).trimEnd()+".gif"):(r.href=e,r.download=t.replace(/[/\\:*?"<>]/g,"").substring(0,128).trimEnd()+".webp"),r.click(),i&&URL.revokeObjectURL(r.href)}function qS(e,t){const n=e;if(!n)return;const r=atob(n),i=r.length,u=new Uint8Array(i);for(let l=0;l{const e=()=>({canvas:void 0,brush:void 0,visibleImageLayer:void 0,imageLayer:void 0,visibleDrawLayer:void 0,drawLayer:void 0,cropPreviewLayer:void 0,maskPathColor:"",maskBackgroundColor:"",imageScale:1,undoHistory:[],redoHistory:[],drawing:!1}),t=ae({...e(),maskPathColor:"white",maskBackgroundColor:"black"}),n=ae({...e(),maskPathColor:"black",maskBackgroundColor:"white"}),r=ee(()=>Jt().generatorType==="Inpainting"),i=ee(()=>r.value?t.value:n.value),u=ee(()=>Jt().currentImageProps),p=ee({get:()=>i.value.drawing&&!r.value,set:G=>i.value.drawing=G}),o=ae(512),a=ae(512),l=ae(!1),h=ae(30),c=ae(!1),f=new ur.fabric.Circle({radius:h.value,left:0,originX:"center",originY:"center",angle:0,fill:"",stroke:"red",strokeWidth:3,opacity:0}),s=ae("Erase"),d=ae("rgb(0, 0, 0, 1)");function g(){!i.value.canvas||i.value.canvas.renderAll()}function m(){l.value=!l.value,s.value=l.value?"Draw":"Erase"}function v(G=null){!i.value.canvas||(i.value.brush=i.value.canvas.freeDrawingBrush,i.value.brush.color=G||i.value.brush.color,i.value.brush.width=h.value)}async function y({history:G,erase:D=!1,draw:B=!1}={}){if(!G||!i.value.drawLayer||!i.value.visibleDrawLayer||!i.value.imageLayer||!i.value.visibleImageLayer||!i.value.canvas)return;G.path.selectable=!1,G.path.opacity=1,G.drawPath=await V(G.path),G.visibleDrawPath=await V(G.path),D?(G.visibleDrawPath.globalCompositeOperation="destination-out",G.drawPath.stroke=i.value.maskBackgroundColor):(G.visibleDrawPath.globalCompositeOperation="source-over",G.drawPath.stroke=B?d.value:i.value.maskPathColor);let Z=await V(G.drawPath);Z=Z.scale(i.value.imageScale),Z.left=Z.left+G.drawPath.left*(i.value.imageScale-1),Z.top=Z.top+G.drawPath.top*(i.value.imageScale-1),B?(i.value.imageLayer.add(Z),i.value.visibleImageLayer.addWithUpdate(G.visibleDrawPath)):(i.value.drawLayer.add(Z),i.value.visibleDrawLayer.addWithUpdate(G.visibleDrawPath)),i.value.canvas.remove(G.path),g()}function b(){if(i.value.undoHistory.length===0)return;const G=i.value.undoHistory.pop();y({history:G,erase:!1,draw:p.value}),i.value.redoHistory.push(G)}function w(){if(i.value.redoHistory.length===0||!i.value.drawLayer||!i.value.visibleDrawLayer||!i.value.imageLayer||!i.value.visibleImageLayer||!i.value.canvas)return;const G=i.value.redoHistory.pop();i.value.undoHistory.push(G),p.value?(i.value.imageLayer.remove(G.drawPath),i.value.visibleImageLayer.remove(G.visibleDrawPath)):(i.value.drawLayer.remove(G.drawPath),i.value.visibleDrawLayer.remove(G.visibleDrawPath)),delete G.drawPath,delete G.visibleDrawPath,g()}function S(G){i.value.canvas=new ur.fabric.Canvas(G,{isDrawingMode:!1,width:o.value,height:a.value,backgroundColor:"white"}),i.value.canvas.selection=!1,i.value.canvas.freeDrawingCursor="crosshair",v(i.value.maskPathColor),i.value.canvas.on("mouse:move",R),i.value.canvas.on("path:created",M),g()}function C(G,D,B,Z){let H=Z,Q=Z;return D>B?(G.scaleToWidth(Z),H=Z*(a.value/o.value)):(G.scaleToHeight(Z),Q=Z*(o.value/a.value)),{newHeight:H,newWidth:Q}}function T(G){const D=Jt();if(re(),G.selectable=!1,o.value=G.width,a.value=G.height,o.value>D.maxDimensions||a.value>D.maxDimensions){const{newHeight:Q,newWidth:te}=C(G,o.value,a.value,D.maxDimensions);o.value=te,a.value=Q}if(o.value{i.value.imageLayer=$({image:Q,layerHeight:H,layerWidth:Z})}),G.cloneAsImage(Q=>{if(!i.value.canvas)return;if(o.value!==B||a.value!==B){const{newHeight:me,newWidth:_e}=C(Q,o.value,a.value,B);o.value=_e,a.value=me}i.value.canvas.setWidth(o.value),i.value.canvas.setHeight(a.value),i.value.canvas.isDrawingMode=!0,i.value.visibleDrawLayer=Y(),i.value.visibleImageLayer=Y({image:Q}),i.value.drawLayer=$({layerHeight:H,layerWidth:Z});const te=o.value*i.value.imageScale,fe=a.value*i.value.imageScale;D.params.width=te-te%64,D.params.height=fe-fe%64,i.value.visibleDrawLayer.set("opacity",.8),i.value.canvas.add(i.value.visibleImageLayer),i.value.canvas.add(i.value.visibleDrawLayer),i.value.canvas.add(f),c.value=!0,z(),A()})}function k(G,D,B,Z,H,Q){const te=Q?Q.width:G.width,fe=Q?Q.height:G.height;if(H==="Original")return G;const me=document.createElement("canvas");me.width=D,me.height=B;const _e=me.getContext("2d");_e.fillStyle=Z,_e.fillRect(0,0,me.width,me.height);let j=0,x=0,U=G.width,K=G.height,L=0,F=0,X=me.width,de=me.height;switch(H){case"Stretch":break;case"ScaleAndCrop":{const le=me.width/te,W=me.height/fe;le>W?(K=me.height/le,x=(G.height-K)/2):(U=me.width/W,j=(G.width-U)/2);break}case"ScaleAndPad":{const le=me.width/te,W=me.height/fe;leD?(U=D,j=le-D/2):(X=te,L=D/2-le),fe>B?(K=B,x=W-B/2):(de=fe,F=B/2-W);break}}return _e.drawImage(G,j,x,U,K,L,F,X,de),me}function A(){const G=Jt(),D=Ft();if(!i.value.imageLayer||!i.value.drawLayer)return;const B=G.params.width,Z=G.params.height,H=i.value.imageLayer.backgroundColor||"#FFFFFF",Q=D.imageResizeMode,te=i.value.imageLayer.toCanvasElement(),fe=k(te,B,Z,H,Q,te);if(u.value.sourceImage=fe.toDataURL("image/jpeg",1),u.value.maskImage=void 0,i.value.redoHistory.length>0&&!p.value){const _e=i.value.drawLayer.toCanvasElement(),j=k(_e,B,Z,H,Q,te);u.value.maskImage=j.toDataURL("image/jpeg",1).split(",")[1]}}let P;function z(){if(!i.value.canvas)return;const G=Jt();i.value.cropPreviewLayer&&(i.value.canvas.remove(i.value.cropPreviewLayer),i.value.cropPreviewLayer=void 0),c.value&&(i.value.cropPreviewLayer=Y({layerWidth:G.params.width/i.value.imageScale,layerHeight:G.params.height/i.value.imageScale,fill:"rgba(100, 0, 0, 0.5)"}),i.value.canvas.centerObject(i.value.cropPreviewLayer),i.value.canvas.add(i.value.cropPreviewLayer),P&&clearTimeout(P),P=setTimeout(()=>{c.value=!1,z(),P=void 0},5e3))}function I(G,D){const B="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAAAXNSR0IArs4c6QAAAA1JREFUGFdj+P///38ACfsD/QVDRcoAAAAASUVORK5CYII=";ur.fabric.Image.fromURL(B,Z=>{Z.set({height:G,width:D});const H=Z.toDataURL({format:"png"});u.value.sourceImage=H,p.value=!0,T(Z)})}function $({image:G,layerWidth:D,layerHeight:B}={}){const Z=new ur.fabric.Canvas(null);return Z.selection=!1,Z.backgroundColor=i.value.maskBackgroundColor,Z.setHeight(B||a.value),Z.setWidth(D||o.value),G&&Z.add(G),Z}function O(){return i.value.imageLayer?{layerHeight:i.value.imageLayer.getHeight(),layerWidth:i.value.imageLayer.getWidth()}:{}}function Y({image:G,layerWidth:D,layerHeight:B,fill:Z,abosolute:H}={}){const Q=G||new ur.fabric.Rect({width:D||o.value,height:B||a.value,left:0,top:0,fill:Z||"transparent",absolutePositioned:H||!0,selectable:!1});return new ur.fabric.Group([Q],{selectable:!1,absolutePositioned:H||!0})}function re(){!i.value.canvas||(i.value.visibleImageLayer&&(i.value.canvas.remove(i.value.visibleImageLayer),i.value.visibleImageLayer=void 0),i.value.visibleDrawLayer&&(i.value.canvas.remove(i.value.visibleDrawLayer),i.value.visibleDrawLayer=void 0),i.value.imageLayer=void 0,i.value.drawLayer=void 0,i.value.redoHistory=[],i.value.undoHistory=[],i.value.canvas.isDrawingMode=!1)}function q(){if(!!i.value.canvas){if(i.value.visibleDrawLayer&&(i.value.canvas.remove(i.value.visibleDrawLayer),i.value.visibleDrawLayer=void 0),p.value){const G=Jt();I(G.params.height||512,G.params.width||512)}i.value.drawLayer=void 0,i.value.redoHistory=[],i.value.undoHistory=[],i.value.visibleDrawLayer=Y(),i.value.drawLayer=$(O()),i.value.visibleDrawLayer.set("opacity",.8),i.value.canvas.add(i.value.visibleDrawLayer)}}function J(){var D;A();const G=document.createElement("a");if(p.value){G.href="data:image/png;base64,"+((D=u.value.sourceImage)==null?void 0:D.split(",")[1]),G.download="image_drawing.png",G.click();return}G.href="data:image/png;base64,"+u.value.maskImage,G.download="image_mask.png",G.click()}function E(){A();const G=Jt(),D=u.value.sourceImage;!D||ag(D,`${G.generatorType.toLowerCase()}-reference`)}async function V(G){return new Promise((D,B)=>{try{G.clone(D)}catch(Z){B(Z)}})}async function M(G){const D={path:G.path};y({history:D,erase:l.value,draw:p.value}),i.value.redoHistory.push(D)}function R(G){if(!i.value.canvas)return;const D=i.value.canvas.getPointer(G.e);f.left=D.x,f.top=D.y,f.opacity=.8,l.value?(f.set("strokeWidth",3),f.set("fill",""),v("red")):(f.set("strokeWidth",0),p.value?(f.set("fill",d.value),v(d.value)):(f.set("fill","white"),v("white"))),f.set("radius",h.value/2),g()}return{showCropPreview:c,erasing:l,switchToolText:s,brushSize:h,drawColor:d,drawing:p,imageProps:i,updateCropPreview:z,createNewCanvas:S,downloadMask:J,downloadSourceImage:E,resetCanvas:re,resetDrawing:q,flipErase:m,undoAction:w,redoAction:b,newImage:T,newBlankImage:I,setBrush:v,saveImages:A}}),dU={},hU={xmlns:"http://www.w3.org/2000/svg","xmlns:xlink":"http://www.w3.org/1999/xlink",viewBox:"0 0 20 20"};function pU(e,t){return N(),oe("svg",hU,[...t[0]||(t[0]=[ne("g",{fill:"none"},[ne("path",{d:"M11.197 2.44a1.5 1.5 0 0 1 2.121 0l4.243 4.242a1.5 1.5 0 0 1 0 2.121L9.364 17H14.5a.5.5 0 0 1 0 1H7.82a1.496 1.496 0 0 1-1.14-.437L2.437 13.32a1.5 1.5 0 0 1 0-2.121l8.76-8.76zm1.414.706a.5.5 0 0 0-.707 0L5.538 9.512l4.95 4.95l6.366-6.366a.5.5 0 0 0 0-.707L12.61 3.146zM9.781 15.17l-4.95-4.95l-1.687 1.687a.5.5 0 0 0 0 .707l4.243 4.243a.5.5 0 0 0 .707 0l1.687-1.687z",fill:"currentColor"})],-1)])])}const mU=on(dU,[["render",pU]]),gU={key:0},vU={class:"canvas-container"},yU={class:"action-buttons",style:{left:"10px",right:"unset"}},bU={class:"action-buttons"},_U=be({__name:"CustomCanvas",setup(e){const t=Jt(),n=Ht(),r=al(),i=ae();async function u(a){if(!a.raw.type.includes("image")){n.raiseError("Uploaded file needs to be a image!",!1),i.value.clearFiles();return}const l=await zl(a.raw);t.currentImageProps.sourceImage=l,r.drawing=!1,ur.fabric.Image.fromURL(l,r.newImage)}function p(){t.currentImageProps.sourceImage="",r.resetCanvas()}rt(()=>{r.createNewCanvas("canvas"),t.currentImageProps.sourceImage&&ur.fabric.Image.fromURL(t.currentImageProps.sourceImage,r.newImage),window.addEventListener("paste",o)}),tn(()=>{window.removeEventListener("paste",o)});async function o(a){var h;const l=(h=a.clipboardData)==null?void 0:h.items;if(!!l)for(let c=0;c(N(),oe($e,null,[_(t).currentImageProps.sourceImage?ge("",!0):(N(),ve(_(Dm),{key:0,drag:"",ref_key:"upload",ref:i,"auto-upload":!1,onChange:u,limit:1,multiple:""},{tip:ue(()=>[_(t).generatorType==="Img2Img"?(N(),oe("div",gU,[l[9]||(l[9]=ne("div",{class:"center-horizontal",style:{"margin-top":"5px"}},"OR",-1)),ne("div",{class:"center-both",style:{cursor:"pointer","text-decoration":"underline","font-size":"1rem"},onClick:l[0]||(l[0]=h=>_(r).newBlankImage(_(t).params.height||512,_(t).params.width||512))},[se(_(De),{size:20,style:{"margin-right":"2px"}},{default:ue(()=>[se(VS)]),_:1}),l[8]||(l[8]=ze("draw something",-1))])])):ge("",!0)]),default:ue(()=>[se(_(De),{size:100},{default:ue(()=>[se(_(Qp))]),_:1}),l[10]||(l[10]=ne("div",null,[ze("Drop file here, paste an image OR "),ne("em",null,"click to upload")],-1))]),_:1},512)),Tt(ne("div",null,[ne("div",vU,[l[11]||(l[11]=ne("canvas",{id:"canvas"},null,-1)),ne("div",yU,[se(_(Je),{onClick:l[1]||(l[1]=h=>_(r).undoAction()),icon:_(F1),plain:"",disabled:_(r).imageProps.redoHistory.length===0},null,8,["icon","disabled"]),se(_(Je),{onClick:l[2]||(l[2]=h=>_(r).redoAction()),icon:_(B1),plain:"",disabled:_(r).imageProps.undoHistory.length===0},null,8,["icon","disabled"])]),ne("div",bU,[se(_(Je),{onClick:l[3]||(l[3]=h=>_(r).resetDrawing()),icon:_(Kr),plain:""},null,8,["icon"]),se(_(Je),{onClick:p,icon:_(Ki),plain:""},null,8,["icon"]),se(_(Je),{onClick:l[4]||(l[4]=h=>_(r).downloadSourceImage()),icon:_(bl),plain:""},null,8,["icon"]),se(_(Je),{onClick:l[5]||(l[5]=h=>_(r).flipErase()),icon:_(r).erasing?_(dO):mU,plain:""},null,8,["icon"]),_(r).drawing?(N(),ve(_(FD),{key:0,modelValue:_(r).drawColor,"onUpdate:modelValue":l[6]||(l[6]=h=>_(r).drawColor=h),"show-alpha":""},null,8,["modelValue"])):ge("",!0)]),se(_(Am),{"label-width":"110px",style:{"margin-top":"10px"}},{default:ue(()=>[se(yn,{style:{"margin-bottom":"5px"},label:"Brush Size",prop:"brushSize",modelValue:_(r).brushSize,"onUpdate:modelValue":l[7]||(l[7]=h=>_(r).brushSize=h),min:10,max:100,step:10,change:_(r).setBrush},null,8,["modelValue","change"])]),_:1})])],512),[[Kt,_(t).currentImageProps.sourceImage]])],64))}}),Ky=on(_U,[["__scopeId","data-v-0cdc2bf8"]]),wU={class:"centerIcons"},SU={class:"stackedIcons"},CU=be({__name:"StackedIcon",props:{iconOne:{type:[Object,Function]},iconTwo:{type:[Object,Function]},size:{}},setup(e){rk(n=>({"2ad037ca":n.size+"px"}));const t=e;return(n,r)=>(N(),oe("div",wU,[ne("div",SU,[se(_(De),{class:"firstIcon",size:n.size},{default:ue(()=>[(N(),ve(xt(t.iconOne)))]),_:1},8,["size"]),se(_(De),{class:"secondIcon",size:n.size},{default:ue(()=>[(N(),ve(xt(t.iconTwo)))]),_:1},8,["size"])])]))}}),xU=on(CU,[["__scopeId","data-v-74586a39"]]),TU={key:1,style:{width:"40px"}},Wu=be({__name:"GeneratorMenuItem",props:{index:{},iconOne:{type:[Object,Function]},iconTwo:{type:[Object,Function]},isMobile:{type:Boolean}},setup(e){const t=e;return(n,r)=>(N(),ve(_(fn),{content:n.index,placement:n.isMobile?"bottom":"right",enterable:!1,"hide-after":100},{default:ue(()=>[se(_(Im),{index:n.index,style:{height:"60px",display:"flex","justify-content":"center"}},{default:ue(()=>[n.iconTwo?(N(),ve(xU,{key:0,iconOne:n.iconOne,iconTwo:n.iconTwo,size:40},null,8,["iconOne","iconTwo"])):(N(),oe("div",TU,[se(_(De),{style:{width:"35px"},size:40},{default:ue(()=>[(N(),ve(xt(t.iconOne)))]),_:1})]))]),_:1},8,["index"])]),_:1},8,["content","placement"]))}});/*! pako 2.1.0 https://github.com/nodeca/pako @license (MIT AND Zlib) */const kU=4,Xy=0,qy=1,EU=2;function bs(e){let t=e.length;for(;--t>=0;)e[t]=0}const OU=0,ZS=1,AU=2,PU=3,IU=258,og=29,pu=256,jl=pu+1+og,Ho=30,sg=19,JS=2*jl+1,Ba=15,Nd=16,MU=7,lg=256,QS=16,eC=17,tC=18,dp=new Uint8Array([0,0,0,0,0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,0]),wc=new Uint8Array([0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13]),LU=new Uint8Array([0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,3,7]),nC=new Uint8Array([16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15]),RU=512,di=new Array((jl+2)*2);bs(di);const ol=new Array(Ho*2);bs(ol);const Vl=new Array(RU);bs(Vl);const Ul=new Array(IU-PU+1);bs(Ul);const ug=new Array(og);bs(ug);const of=new Array(Ho);bs(of);function zd(e,t,n,r,i){this.static_tree=e,this.extra_bits=t,this.extra_base=n,this.elems=r,this.max_length=i,this.has_stree=e&&e.length}let rC,iC,aC;function jd(e,t){this.dyn_tree=e,this.max_code=0,this.stat_desc=t}const oC=e=>e<256?Vl[e]:Vl[256+(e>>>7)],Hl=(e,t)=>{e.pending_buf[e.pending++]=t&255,e.pending_buf[e.pending++]=t>>>8&255},Bn=(e,t,n)=>{e.bi_valid>Nd-n?(e.bi_buf|=t<>Nd-e.bi_valid,e.bi_valid+=n-Nd):(e.bi_buf|=t<{Bn(e,n[t*2],n[t*2+1])},sC=(e,t)=>{let n=0;do n|=e&1,e>>>=1,n<<=1;while(--t>0);return n>>>1},DU=e=>{e.bi_valid===16?(Hl(e,e.bi_buf),e.bi_buf=0,e.bi_valid=0):e.bi_valid>=8&&(e.pending_buf[e.pending++]=e.bi_buf&255,e.bi_buf>>=8,e.bi_valid-=8)},FU=(e,t)=>{const n=t.dyn_tree,r=t.max_code,i=t.stat_desc.static_tree,u=t.stat_desc.has_stree,p=t.stat_desc.extra_bits,o=t.stat_desc.extra_base,a=t.stat_desc.max_length;let l,h,c,f,s,d,g=0;for(f=0;f<=Ba;f++)e.bl_count[f]=0;for(n[e.heap[e.heap_max]*2+1]=0,l=e.heap_max+1;la&&(f=a,g++),n[h*2+1]=f,!(h>r)&&(e.bl_count[f]++,s=0,h>=o&&(s=p[h-o]),d=n[h*2],e.opt_len+=d*(f+s),u&&(e.static_len+=d*(i[h*2+1]+s)));if(g!==0){do{for(f=a-1;e.bl_count[f]===0;)f--;e.bl_count[f]--,e.bl_count[f+1]+=2,e.bl_count[a]--,g-=2}while(g>0);for(f=a;f!==0;f--)for(h=e.bl_count[f];h!==0;)c=e.heap[--l],!(c>r)&&(n[c*2+1]!==f&&(e.opt_len+=(f-n[c*2+1])*n[c*2],n[c*2+1]=f),h--)}},lC=(e,t,n)=>{const r=new Array(Ba+1);let i=0,u,p;for(u=1;u<=Ba;u++)i=i+n[u-1]<<1,r[u]=i;for(p=0;p<=t;p++){let o=e[p*2+1];o!==0&&(e[p*2]=sC(r[o]++,o))}},BU=()=>{let e,t,n,r,i;const u=new Array(Ba+1);for(n=0,r=0;r>=7;r{let t;for(t=0;t{e.bi_valid>8?Hl(e,e.bi_buf):e.bi_valid>0&&(e.pending_buf[e.pending++]=e.bi_buf),e.bi_buf=0,e.bi_valid=0},Zy=(e,t,n,r)=>{const i=t*2,u=n*2;return e[i]{const r=e.heap[n];let i=n<<1;for(;i<=e.heap_len&&(i{let r,i,u=0,p,o;if(e.sym_next!==0)do r=e.pending_buf[e.sym_buf+u++]&255,r+=(e.pending_buf[e.sym_buf+u++]&255)<<8,i=e.pending_buf[e.sym_buf+u++],r===0?Vr(e,i,t):(p=Ul[i],Vr(e,p+pu+1,t),o=dp[p],o!==0&&(i-=ug[p],Bn(e,i,o)),r--,p=oC(r),Vr(e,p,n),o=wc[p],o!==0&&(r-=of[p],Bn(e,r,o)));while(u{const n=t.dyn_tree,r=t.stat_desc.static_tree,i=t.stat_desc.has_stree,u=t.stat_desc.elems;let p,o,a=-1,l;for(e.heap_len=0,e.heap_max=JS,p=0;p>1;p>=1;p--)Vd(e,n,p);l=u;do p=e.heap[1],e.heap[1]=e.heap[e.heap_len--],Vd(e,n,1),o=e.heap[1],e.heap[--e.heap_max]=p,e.heap[--e.heap_max]=o,n[l*2]=n[p*2]+n[o*2],e.depth[l]=(e.depth[p]>=e.depth[o]?e.depth[p]:e.depth[o])+1,n[p*2+1]=n[o*2+1]=l,e.heap[1]=l++,Vd(e,n,1);while(e.heap_len>=2);e.heap[--e.heap_max]=e.heap[1],FU(e,t),lC(n,a,e.bl_count)},Qy=(e,t,n)=>{let r,i=-1,u,p=t[0*2+1],o=0,a=7,l=4;for(p===0&&(a=138,l=3),t[(n+1)*2+1]=65535,r=0;r<=n;r++)u=p,p=t[(r+1)*2+1],!(++o{let r,i=-1,u,p=t[0*2+1],o=0,a=7,l=4;for(p===0&&(a=138,l=3),r=0;r<=n;r++)if(u=p,p=t[(r+1)*2+1],!(++o{let t;for(Qy(e,e.dyn_ltree,e.l_desc.max_code),Qy(e,e.dyn_dtree,e.d_desc.max_code),hp(e,e.bl_desc),t=sg-1;t>=3&&e.bl_tree[nC[t]*2+1]===0;t--);return e.opt_len+=3*(t+1)+5+5+4,t},NU=(e,t,n,r)=>{let i;for(Bn(e,t-257,5),Bn(e,n-1,5),Bn(e,r-4,4),i=0;i{let t=4093624447,n;for(n=0;n<=31;n++,t>>>=1)if(t&1&&e.dyn_ltree[n*2]!==0)return Xy;if(e.dyn_ltree[9*2]!==0||e.dyn_ltree[10*2]!==0||e.dyn_ltree[13*2]!==0)return qy;for(n=32;n{tb||(BU(),tb=!0),e.l_desc=new jd(e.dyn_ltree,rC),e.d_desc=new jd(e.dyn_dtree,iC),e.bl_desc=new jd(e.bl_tree,aC),e.bi_buf=0,e.bi_valid=0,uC(e)},fC=(e,t,n,r)=>{Bn(e,(OU<<1)+(r?1:0),3),cC(e),Hl(e,n),Hl(e,~n),n&&e.pending_buf.set(e.window.subarray(t,t+n),e.pending),e.pending+=n},VU=e=>{Bn(e,ZS<<1,3),Vr(e,lg,di),DU(e)},UU=(e,t,n,r)=>{let i,u,p=0;e.level>0?(e.strm.data_type===EU&&(e.strm.data_type=zU(e)),hp(e,e.l_desc),hp(e,e.d_desc),p=$U(e),i=e.opt_len+3+7>>>3,u=e.static_len+3+7>>>3,u<=i&&(i=u)):i=u=n+5,n+4<=i&&t!==-1?fC(e,t,n,r):e.strategy===kU||u===i?(Bn(e,(ZS<<1)+(r?1:0),3),Jy(e,di,ol)):(Bn(e,(AU<<1)+(r?1:0),3),NU(e,e.l_desc.max_code+1,e.d_desc.max_code+1,p+1),Jy(e,e.dyn_ltree,e.dyn_dtree)),uC(e),r&&cC(e)},HU=(e,t,n)=>(e.pending_buf[e.sym_buf+e.sym_next++]=t,e.pending_buf[e.sym_buf+e.sym_next++]=t>>8,e.pending_buf[e.sym_buf+e.sym_next++]=n,t===0?e.dyn_ltree[n*2]++:(e.matches++,t--,e.dyn_ltree[(Ul[n]+pu+1)*2]++,e.dyn_dtree[oC(t)*2]++),e.sym_next===e.sym_end);var WU=jU,GU=fC,YU=UU,KU=HU,XU=VU,qU={_tr_init:WU,_tr_stored_block:GU,_tr_flush_block:YU,_tr_tally:KU,_tr_align:XU};const ZU=(e,t,n,r)=>{let i=e&65535|0,u=e>>>16&65535|0,p=0;for(;n!==0;){p=n>2e3?2e3:n,n-=p;do i=i+t[r++]|0,u=u+i|0;while(--p);i%=65521,u%=65521}return i|u<<16|0};var Wl=ZU;const JU=()=>{let e,t=[];for(var n=0;n<256;n++){e=n;for(var r=0;r<8;r++)e=e&1?3988292384^e>>>1:e>>>1;t[n]=e}return t},QU=new Uint32Array(JU()),eH=(e,t,n,r)=>{const i=QU,u=r+n;e^=-1;for(let p=r;p>>8^i[(e^t[p])&255];return e^-1};var ln=eH,eo={2:"need dictionary",1:"stream end",0:"","-1":"file error","-2":"stream error","-3":"data error","-4":"insufficient memory","-5":"buffer error","-6":"incompatible version"},_s={Z_NO_FLUSH:0,Z_PARTIAL_FLUSH:1,Z_SYNC_FLUSH:2,Z_FULL_FLUSH:3,Z_FINISH:4,Z_BLOCK:5,Z_TREES:6,Z_OK:0,Z_STREAM_END:1,Z_NEED_DICT:2,Z_ERRNO:-1,Z_STREAM_ERROR:-2,Z_DATA_ERROR:-3,Z_MEM_ERROR:-4,Z_BUF_ERROR:-5,Z_NO_COMPRESSION:0,Z_BEST_SPEED:1,Z_BEST_COMPRESSION:9,Z_DEFAULT_COMPRESSION:-1,Z_FILTERED:1,Z_HUFFMAN_ONLY:2,Z_RLE:3,Z_FIXED:4,Z_DEFAULT_STRATEGY:0,Z_BINARY:0,Z_TEXT:1,Z_UNKNOWN:2,Z_DEFLATED:8};const{_tr_init:tH,_tr_stored_block:pp,_tr_flush_block:nH,_tr_tally:ta,_tr_align:rH}=qU,{Z_NO_FLUSH:na,Z_PARTIAL_FLUSH:iH,Z_FULL_FLUSH:aH,Z_FINISH:cr,Z_BLOCK:nb,Z_OK:cn,Z_STREAM_END:rb,Z_STREAM_ERROR:Gr,Z_DATA_ERROR:oH,Z_BUF_ERROR:Ud,Z_DEFAULT_COMPRESSION:sH,Z_FILTERED:lH,Z_HUFFMAN_ONLY:Gu,Z_RLE:uH,Z_FIXED:cH,Z_DEFAULT_STRATEGY:fH,Z_UNKNOWN:dH,Z_DEFLATED:Nf}=_s,hH=9,pH=15,mH=8,gH=29,vH=256,mp=vH+1+gH,yH=30,bH=19,_H=2*mp+1,wH=15,ft=3,Zi=258,Yr=Zi+ft+1,SH=32,is=42,cg=57,gp=69,vp=73,yp=91,bp=103,$a=113,$s=666,In=1,ws=2,to=3,Ss=4,CH=3,Na=(e,t)=>(e.msg=eo[t],t),ib=e=>e*2-(e>4?9:0),Yi=e=>{let t=e.length;for(;--t>=0;)e[t]=0},xH=e=>{let t,n,r,i=e.w_size;t=e.hash_size,r=t;do n=e.head[--r],e.head[r]=n>=i?n-i:0;while(--t);t=i,r=t;do n=e.prev[--r],e.prev[r]=n>=i?n-i:0;while(--t)};let TH=(e,t,n)=>(t<{const t=e.state;let n=t.pending;n>e.avail_out&&(n=e.avail_out),n!==0&&(e.output.set(t.pending_buf.subarray(t.pending_out,t.pending_out+n),e.next_out),e.next_out+=n,t.pending_out+=n,e.total_out+=n,e.avail_out-=n,t.pending-=n,t.pending===0&&(t.pending_out=0))},qn=(e,t)=>{nH(e,e.block_start>=0?e.block_start:-1,e.strstart-e.block_start,t),e.block_start=e.strstart,Gn(e.strm)},yt=(e,t)=>{e.pending_buf[e.pending++]=t},Ms=(e,t)=>{e.pending_buf[e.pending++]=t>>>8&255,e.pending_buf[e.pending++]=t&255},_p=(e,t,n,r)=>{let i=e.avail_in;return i>r&&(i=r),i===0?0:(e.avail_in-=i,t.set(e.input.subarray(e.next_in,e.next_in+i),n),e.state.wrap===1?e.adler=Wl(e.adler,t,i,n):e.state.wrap===2&&(e.adler=ln(e.adler,t,i,n)),e.next_in+=i,e.total_in+=i,i)},dC=(e,t)=>{let n=e.max_chain_length,r=e.strstart,i,u,p=e.prev_length,o=e.nice_match;const a=e.strstart>e.w_size-Yr?e.strstart-(e.w_size-Yr):0,l=e.window,h=e.w_mask,c=e.prev,f=e.strstart+Zi;let s=l[r+p-1],d=l[r+p];e.prev_length>=e.good_match&&(n>>=2),o>e.lookahead&&(o=e.lookahead);do if(i=t,!(l[i+p]!==d||l[i+p-1]!==s||l[i]!==l[r]||l[++i]!==l[r+1])){r+=2,i++;do;while(l[++r]===l[++i]&&l[++r]===l[++i]&&l[++r]===l[++i]&&l[++r]===l[++i]&&l[++r]===l[++i]&&l[++r]===l[++i]&&l[++r]===l[++i]&&l[++r]===l[++i]&&rp){if(e.match_start=t,p=u,u>=o)break;s=l[r+p-1],d=l[r+p]}}while((t=c[t&h])>a&&--n!==0);return p<=e.lookahead?p:e.lookahead},as=e=>{const t=e.w_size;let n,r,i;do{if(r=e.window_size-e.lookahead-e.strstart,e.strstart>=t+(t-Yr)&&(e.window.set(e.window.subarray(t,t+t-r),0),e.match_start-=t,e.strstart-=t,e.block_start-=t,e.insert>e.strstart&&(e.insert=e.strstart),xH(e),r+=t),e.strm.avail_in===0)break;if(n=_p(e.strm,e.window,e.strstart+e.lookahead,r),e.lookahead+=n,e.lookahead+e.insert>=ft)for(i=e.strstart-e.insert,e.ins_h=e.window[i],e.ins_h=ra(e,e.ins_h,e.window[i+1]);e.insert&&(e.ins_h=ra(e,e.ins_h,e.window[i+ft-1]),e.prev[i&e.w_mask]=e.head[e.ins_h],e.head[e.ins_h]=i,i++,e.insert--,!(e.lookahead+e.insert{let n=e.pending_buf_size-5>e.w_size?e.w_size:e.pending_buf_size-5,r,i,u,p=0,o=e.strm.avail_in;do{if(r=65535,u=e.bi_valid+42>>3,e.strm.avail_outi+e.strm.avail_in&&(r=i+e.strm.avail_in),r>u&&(r=u),r>8,e.pending_buf[e.pending-2]=~r,e.pending_buf[e.pending-1]=~r>>8,Gn(e.strm),i&&(i>r&&(i=r),e.strm.output.set(e.window.subarray(e.block_start,e.block_start+i),e.strm.next_out),e.strm.next_out+=i,e.strm.avail_out-=i,e.strm.total_out+=i,e.block_start+=i,r-=i),r&&(_p(e.strm,e.strm.output,e.strm.next_out,r),e.strm.next_out+=r,e.strm.avail_out-=r,e.strm.total_out+=r)}while(p===0);return o-=e.strm.avail_in,o&&(o>=e.w_size?(e.matches=2,e.window.set(e.strm.input.subarray(e.strm.next_in-e.w_size,e.strm.next_in),0),e.strstart=e.w_size,e.insert=e.strstart):(e.window_size-e.strstart<=o&&(e.strstart-=e.w_size,e.window.set(e.window.subarray(e.w_size,e.w_size+e.strstart),0),e.matches<2&&e.matches++,e.insert>e.strstart&&(e.insert=e.strstart)),e.window.set(e.strm.input.subarray(e.strm.next_in-o,e.strm.next_in),e.strstart),e.strstart+=o,e.insert+=o>e.w_size-e.insert?e.w_size-e.insert:o),e.block_start=e.strstart),e.high_wateru&&e.block_start>=e.w_size&&(e.block_start-=e.w_size,e.strstart-=e.w_size,e.window.set(e.window.subarray(e.w_size,e.w_size+e.strstart),0),e.matches<2&&e.matches++,u+=e.w_size,e.insert>e.strstart&&(e.insert=e.strstart)),u>e.strm.avail_in&&(u=e.strm.avail_in),u&&(_p(e.strm,e.window,e.strstart,u),e.strstart+=u,e.insert+=u>e.w_size-e.insert?e.w_size-e.insert:u),e.high_water>3,u=e.pending_buf_size-u>65535?65535:e.pending_buf_size-u,n=u>e.w_size?e.w_size:u,i=e.strstart-e.block_start,(i>=n||(i||t===cr)&&t!==na&&e.strm.avail_in===0&&i<=u)&&(r=i>u?u:i,p=t===cr&&e.strm.avail_in===0&&r===i?1:0,pp(e,e.block_start,r,p),e.block_start+=r,Gn(e.strm)),p?to:In)},Hd=(e,t)=>{let n,r;for(;;){if(e.lookahead=ft&&(e.ins_h=ra(e,e.ins_h,e.window[e.strstart+ft-1]),n=e.prev[e.strstart&e.w_mask]=e.head[e.ins_h],e.head[e.ins_h]=e.strstart),n!==0&&e.strstart-n<=e.w_size-Yr&&(e.match_length=dC(e,n)),e.match_length>=ft)if(r=ta(e,e.strstart-e.match_start,e.match_length-ft),e.lookahead-=e.match_length,e.match_length<=e.max_lazy_match&&e.lookahead>=ft){e.match_length--;do e.strstart++,e.ins_h=ra(e,e.ins_h,e.window[e.strstart+ft-1]),n=e.prev[e.strstart&e.w_mask]=e.head[e.ins_h],e.head[e.ins_h]=e.strstart;while(--e.match_length!==0);e.strstart++}else e.strstart+=e.match_length,e.match_length=0,e.ins_h=e.window[e.strstart],e.ins_h=ra(e,e.ins_h,e.window[e.strstart+1]);else r=ta(e,0,e.window[e.strstart]),e.lookahead--,e.strstart++;if(r&&(qn(e,!1),e.strm.avail_out===0))return In}return e.insert=e.strstart{let n,r,i;for(;;){if(e.lookahead=ft&&(e.ins_h=ra(e,e.ins_h,e.window[e.strstart+ft-1]),n=e.prev[e.strstart&e.w_mask]=e.head[e.ins_h],e.head[e.ins_h]=e.strstart),e.prev_length=e.match_length,e.prev_match=e.match_start,e.match_length=ft-1,n!==0&&e.prev_length4096)&&(e.match_length=ft-1)),e.prev_length>=ft&&e.match_length<=e.prev_length){i=e.strstart+e.lookahead-ft,r=ta(e,e.strstart-1-e.prev_match,e.prev_length-ft),e.lookahead-=e.prev_length-1,e.prev_length-=2;do++e.strstart<=i&&(e.ins_h=ra(e,e.ins_h,e.window[e.strstart+ft-1]),n=e.prev[e.strstart&e.w_mask]=e.head[e.ins_h],e.head[e.ins_h]=e.strstart);while(--e.prev_length!==0);if(e.match_available=0,e.match_length=ft-1,e.strstart++,r&&(qn(e,!1),e.strm.avail_out===0))return In}else if(e.match_available){if(r=ta(e,0,e.window[e.strstart-1]),r&&qn(e,!1),e.strstart++,e.lookahead--,e.strm.avail_out===0)return In}else e.match_available=1,e.strstart++,e.lookahead--}return e.match_available&&(r=ta(e,0,e.window[e.strstart-1]),e.match_available=0),e.insert=e.strstart{let n,r,i,u;const p=e.window;for(;;){if(e.lookahead<=Zi){if(as(e),e.lookahead<=Zi&&t===na)return In;if(e.lookahead===0)break}if(e.match_length=0,e.lookahead>=ft&&e.strstart>0&&(i=e.strstart-1,r=p[i],r===p[++i]&&r===p[++i]&&r===p[++i])){u=e.strstart+Zi;do;while(r===p[++i]&&r===p[++i]&&r===p[++i]&&r===p[++i]&&r===p[++i]&&r===p[++i]&&r===p[++i]&&r===p[++i]&&ie.lookahead&&(e.match_length=e.lookahead)}if(e.match_length>=ft?(n=ta(e,1,e.match_length-ft),e.lookahead-=e.match_length,e.strstart+=e.match_length,e.match_length=0):(n=ta(e,0,e.window[e.strstart]),e.lookahead--,e.strstart++),n&&(qn(e,!1),e.strm.avail_out===0))return In}return e.insert=0,t===cr?(qn(e,!0),e.strm.avail_out===0?to:Ss):e.sym_next&&(qn(e,!1),e.strm.avail_out===0)?In:ws},EH=(e,t)=>{let n;for(;;){if(e.lookahead===0&&(as(e),e.lookahead===0)){if(t===na)return In;break}if(e.match_length=0,n=ta(e,0,e.window[e.strstart]),e.lookahead--,e.strstart++,n&&(qn(e,!1),e.strm.avail_out===0))return In}return e.insert=0,t===cr?(qn(e,!0),e.strm.avail_out===0?to:Ss):e.sym_next&&(qn(e,!1),e.strm.avail_out===0)?In:ws};function Br(e,t,n,r,i){this.good_length=e,this.max_lazy=t,this.nice_length=n,this.max_chain=r,this.func=i}const Ns=[new Br(0,0,0,0,hC),new Br(4,4,8,4,Hd),new Br(4,5,16,8,Hd),new Br(4,6,32,32,Hd),new Br(4,4,16,16,To),new Br(8,16,32,32,To),new Br(8,16,128,128,To),new Br(8,32,128,256,To),new Br(32,128,258,1024,To),new Br(32,258,258,4096,To)],OH=e=>{e.window_size=2*e.w_size,Yi(e.head),e.max_lazy_match=Ns[e.level].max_lazy,e.good_match=Ns[e.level].good_length,e.nice_match=Ns[e.level].nice_length,e.max_chain_length=Ns[e.level].max_chain,e.strstart=0,e.block_start=0,e.lookahead=0,e.insert=0,e.match_length=e.prev_length=ft-1,e.match_available=0,e.ins_h=0};function AH(){this.strm=null,this.status=0,this.pending_buf=null,this.pending_buf_size=0,this.pending_out=0,this.pending=0,this.wrap=0,this.gzhead=null,this.gzindex=0,this.method=Nf,this.last_flush=-1,this.w_size=0,this.w_bits=0,this.w_mask=0,this.window=null,this.window_size=0,this.prev=null,this.head=null,this.ins_h=0,this.hash_size=0,this.hash_bits=0,this.hash_mask=0,this.hash_shift=0,this.block_start=0,this.match_length=0,this.prev_match=0,this.match_available=0,this.strstart=0,this.match_start=0,this.lookahead=0,this.prev_length=0,this.max_chain_length=0,this.max_lazy_match=0,this.level=0,this.strategy=0,this.good_match=0,this.nice_match=0,this.dyn_ltree=new Uint16Array(_H*2),this.dyn_dtree=new Uint16Array((2*yH+1)*2),this.bl_tree=new Uint16Array((2*bH+1)*2),Yi(this.dyn_ltree),Yi(this.dyn_dtree),Yi(this.bl_tree),this.l_desc=null,this.d_desc=null,this.bl_desc=null,this.bl_count=new Uint16Array(wH+1),this.heap=new Uint16Array(2*mp+1),Yi(this.heap),this.heap_len=0,this.heap_max=0,this.depth=new Uint16Array(2*mp+1),Yi(this.depth),this.sym_buf=0,this.lit_bufsize=0,this.sym_next=0,this.sym_end=0,this.opt_len=0,this.static_len=0,this.matches=0,this.insert=0,this.bi_buf=0,this.bi_valid=0}const mu=e=>{if(!e)return 1;const t=e.state;return!t||t.strm!==e||t.status!==is&&t.status!==cg&&t.status!==gp&&t.status!==vp&&t.status!==yp&&t.status!==bp&&t.status!==$a&&t.status!==$s?1:0},pC=e=>{if(mu(e))return Na(e,Gr);e.total_in=e.total_out=0,e.data_type=dH;const t=e.state;return t.pending=0,t.pending_out=0,t.wrap<0&&(t.wrap=-t.wrap),t.status=t.wrap===2?cg:t.wrap?is:$a,e.adler=t.wrap===2?0:1,t.last_flush=-2,tH(t),cn},mC=e=>{const t=pC(e);return t===cn&&OH(e.state),t},PH=(e,t)=>mu(e)||e.state.wrap!==2?Gr:(e.state.gzhead=t,cn),gC=(e,t,n,r,i,u)=>{if(!e)return Gr;let p=1;if(t===sH&&(t=6),r<0?(p=0,r=-r):r>15&&(p=2,r-=16),i<1||i>hH||n!==Nf||r<8||r>15||t<0||t>9||u<0||u>cH||r===8&&p!==1)return Na(e,Gr);r===8&&(r=9);const o=new AH;return e.state=o,o.strm=e,o.status=is,o.wrap=p,o.gzhead=null,o.w_bits=r,o.w_size=1<gC(e,t,Nf,pH,mH,fH),MH=(e,t)=>{if(mu(e)||t>nb||t<0)return e?Na(e,Gr):Gr;const n=e.state;if(!e.output||e.avail_in!==0&&!e.input||n.status===$s&&t!==cr)return Na(e,e.avail_out===0?Ud:Gr);const r=n.last_flush;if(n.last_flush=t,n.pending!==0){if(Gn(e),e.avail_out===0)return n.last_flush=-1,cn}else if(e.avail_in===0&&ib(t)<=ib(r)&&t!==cr)return Na(e,Ud);if(n.status===$s&&e.avail_in!==0)return Na(e,Ud);if(n.status===is&&n.wrap===0&&(n.status=$a),n.status===is){let i=Nf+(n.w_bits-8<<4)<<8,u=-1;if(n.strategy>=Gu||n.level<2?u=0:n.level<6?u=1:n.level===6?u=2:u=3,i|=u<<6,n.strstart!==0&&(i|=SH),i+=31-i%31,Ms(n,i),n.strstart!==0&&(Ms(n,e.adler>>>16),Ms(n,e.adler&65535)),e.adler=1,n.status=$a,Gn(e),n.pending!==0)return n.last_flush=-1,cn}if(n.status===cg){if(e.adler=0,yt(n,31),yt(n,139),yt(n,8),n.gzhead)yt(n,(n.gzhead.text?1:0)+(n.gzhead.hcrc?2:0)+(n.gzhead.extra?4:0)+(n.gzhead.name?8:0)+(n.gzhead.comment?16:0)),yt(n,n.gzhead.time&255),yt(n,n.gzhead.time>>8&255),yt(n,n.gzhead.time>>16&255),yt(n,n.gzhead.time>>24&255),yt(n,n.level===9?2:n.strategy>=Gu||n.level<2?4:0),yt(n,n.gzhead.os&255),n.gzhead.extra&&n.gzhead.extra.length&&(yt(n,n.gzhead.extra.length&255),yt(n,n.gzhead.extra.length>>8&255)),n.gzhead.hcrc&&(e.adler=ln(e.adler,n.pending_buf,n.pending,0)),n.gzindex=0,n.status=gp;else if(yt(n,0),yt(n,0),yt(n,0),yt(n,0),yt(n,0),yt(n,n.level===9?2:n.strategy>=Gu||n.level<2?4:0),yt(n,CH),n.status=$a,Gn(e),n.pending!==0)return n.last_flush=-1,cn}if(n.status===gp){if(n.gzhead.extra){let i=n.pending,u=(n.gzhead.extra.length&65535)-n.gzindex;for(;n.pending+u>n.pending_buf_size;){let o=n.pending_buf_size-n.pending;if(n.pending_buf.set(n.gzhead.extra.subarray(n.gzindex,n.gzindex+o),n.pending),n.pending=n.pending_buf_size,n.gzhead.hcrc&&n.pending>i&&(e.adler=ln(e.adler,n.pending_buf,n.pending-i,i)),n.gzindex+=o,Gn(e),n.pending!==0)return n.last_flush=-1,cn;i=0,u-=o}let p=new Uint8Array(n.gzhead.extra);n.pending_buf.set(p.subarray(n.gzindex,n.gzindex+u),n.pending),n.pending+=u,n.gzhead.hcrc&&n.pending>i&&(e.adler=ln(e.adler,n.pending_buf,n.pending-i,i)),n.gzindex=0}n.status=vp}if(n.status===vp){if(n.gzhead.name){let i=n.pending,u;do{if(n.pending===n.pending_buf_size){if(n.gzhead.hcrc&&n.pending>i&&(e.adler=ln(e.adler,n.pending_buf,n.pending-i,i)),Gn(e),n.pending!==0)return n.last_flush=-1,cn;i=0}n.gzindexi&&(e.adler=ln(e.adler,n.pending_buf,n.pending-i,i)),n.gzindex=0}n.status=yp}if(n.status===yp){if(n.gzhead.comment){let i=n.pending,u;do{if(n.pending===n.pending_buf_size){if(n.gzhead.hcrc&&n.pending>i&&(e.adler=ln(e.adler,n.pending_buf,n.pending-i,i)),Gn(e),n.pending!==0)return n.last_flush=-1,cn;i=0}n.gzindexi&&(e.adler=ln(e.adler,n.pending_buf,n.pending-i,i))}n.status=bp}if(n.status===bp){if(n.gzhead.hcrc){if(n.pending+2>n.pending_buf_size&&(Gn(e),n.pending!==0))return n.last_flush=-1,cn;yt(n,e.adler&255),yt(n,e.adler>>8&255),e.adler=0}if(n.status=$a,Gn(e),n.pending!==0)return n.last_flush=-1,cn}if(e.avail_in!==0||n.lookahead!==0||t!==na&&n.status!==$s){let i=n.level===0?hC(n,t):n.strategy===Gu?EH(n,t):n.strategy===uH?kH(n,t):Ns[n.level].func(n,t);if((i===to||i===Ss)&&(n.status=$s),i===In||i===to)return e.avail_out===0&&(n.last_flush=-1),cn;if(i===ws&&(t===iH?rH(n):t!==nb&&(pp(n,0,0,!1),t===aH&&(Yi(n.head),n.lookahead===0&&(n.strstart=0,n.block_start=0,n.insert=0))),Gn(e),e.avail_out===0))return n.last_flush=-1,cn}return t!==cr?cn:n.wrap<=0?rb:(n.wrap===2?(yt(n,e.adler&255),yt(n,e.adler>>8&255),yt(n,e.adler>>16&255),yt(n,e.adler>>24&255),yt(n,e.total_in&255),yt(n,e.total_in>>8&255),yt(n,e.total_in>>16&255),yt(n,e.total_in>>24&255)):(Ms(n,e.adler>>>16),Ms(n,e.adler&65535)),Gn(e),n.wrap>0&&(n.wrap=-n.wrap),n.pending!==0?cn:rb)},LH=e=>{if(mu(e))return Gr;const t=e.state.status;return e.state=null,t===$a?Na(e,oH):cn},RH=(e,t)=>{let n=t.length;if(mu(e))return Gr;const r=e.state,i=r.wrap;if(i===2||i===1&&r.status!==is||r.lookahead)return Gr;if(i===1&&(e.adler=Wl(e.adler,t,n,0)),r.wrap=0,n>=r.w_size){i===0&&(Yi(r.head),r.strstart=0,r.block_start=0,r.insert=0);let a=new Uint8Array(r.w_size);a.set(t.subarray(n-r.w_size,n),0),t=a,n=r.w_size}const u=e.avail_in,p=e.next_in,o=e.input;for(e.avail_in=n,e.next_in=0,e.input=t,as(r);r.lookahead>=ft;){let a=r.strstart,l=r.lookahead-(ft-1);do r.ins_h=ra(r,r.ins_h,r.window[a+ft-1]),r.prev[a&r.w_mask]=r.head[r.ins_h],r.head[r.ins_h]=a,a++;while(--l);r.strstart=a,r.lookahead=ft-1,as(r)}return r.strstart+=r.lookahead,r.block_start=r.strstart,r.insert=r.lookahead,r.lookahead=0,r.match_length=r.prev_length=ft-1,r.match_available=0,e.next_in=p,e.input=o,e.avail_in=u,r.wrap=i,cn};var DH=IH,FH=gC,BH=mC,$H=pC,NH=PH,zH=MH,jH=LH,VH=RH,UH="pako deflate (from Nodeca project)",sl={deflateInit:DH,deflateInit2:FH,deflateReset:BH,deflateResetKeep:$H,deflateSetHeader:NH,deflate:zH,deflateEnd:jH,deflateSetDictionary:VH,deflateInfo:UH};const HH=(e,t)=>Object.prototype.hasOwnProperty.call(e,t);var WH=function(e){const t=Array.prototype.slice.call(arguments,1);for(;t.length;){const n=t.shift();if(!!n){if(typeof n!="object")throw new TypeError(n+"must be non-object");for(const r in n)HH(n,r)&&(e[r]=n[r])}}return e},GH=e=>{let t=0;for(let r=0,i=e.length;r=252?6:e>=248?5:e>=240?4:e>=224?3:e>=192?2:1;Gl[254]=Gl[254]=1;var YH=e=>{if(typeof TextEncoder=="function"&&TextEncoder.prototype.encode)return new TextEncoder().encode(e);let t,n,r,i,u,p=e.length,o=0;for(i=0;i>>6,t[u++]=128|n&63):n<65536?(t[u++]=224|n>>>12,t[u++]=128|n>>>6&63,t[u++]=128|n&63):(t[u++]=240|n>>>18,t[u++]=128|n>>>12&63,t[u++]=128|n>>>6&63,t[u++]=128|n&63);return t};const KH=(e,t)=>{if(t<65534&&e.subarray&&vC)return String.fromCharCode.apply(null,e.length===t?e:e.subarray(0,t));let n="";for(let r=0;r{const n=t||e.length;if(typeof TextDecoder=="function"&&TextDecoder.prototype.decode)return new TextDecoder().decode(e.subarray(0,t));let r,i;const u=new Array(n*2);for(i=0,r=0;r4){u[i++]=65533,r+=o-1;continue}for(p&=o===2?31:o===3?15:7;o>1&&r1){u[i++]=65533;continue}p<65536?u[i++]=p:(p-=65536,u[i++]=55296|p>>10&1023,u[i++]=56320|p&1023)}return KH(u,i)},qH=(e,t)=>{t=t||e.length,t>e.length&&(t=e.length);let n=t-1;for(;n>=0&&(e[n]&192)===128;)n--;return n<0||n===0?t:n+Gl[e[n]]>t?n:t},Yl={string2buf:YH,buf2string:XH,utf8border:qH};function ZH(){this.input=null,this.next_in=0,this.avail_in=0,this.total_in=0,this.output=null,this.next_out=0,this.avail_out=0,this.total_out=0,this.msg="",this.state=null,this.data_type=2,this.adler=0}var yC=ZH;const bC=Object.prototype.toString,{Z_NO_FLUSH:JH,Z_SYNC_FLUSH:QH,Z_FULL_FLUSH:eW,Z_FINISH:tW,Z_OK:sf,Z_STREAM_END:nW,Z_DEFAULT_COMPRESSION:rW,Z_DEFAULT_STRATEGY:iW,Z_DEFLATED:aW}=_s;function gu(e){this.options=zf.assign({level:rW,method:aW,chunkSize:16384,windowBits:15,memLevel:8,strategy:iW},e||{});let t=this.options;t.raw&&t.windowBits>0?t.windowBits=-t.windowBits:t.gzip&&t.windowBits>0&&t.windowBits<16&&(t.windowBits+=16),this.err=0,this.msg="",this.ended=!1,this.chunks=[],this.strm=new yC,this.strm.avail_out=0;let n=sl.deflateInit2(this.strm,t.level,t.method,t.windowBits,t.memLevel,t.strategy);if(n!==sf)throw new Error(eo[n]);if(t.header&&sl.deflateSetHeader(this.strm,t.header),t.dictionary){let r;if(typeof t.dictionary=="string"?r=Yl.string2buf(t.dictionary):bC.call(t.dictionary)==="[object ArrayBuffer]"?r=new Uint8Array(t.dictionary):r=t.dictionary,n=sl.deflateSetDictionary(this.strm,r),n!==sf)throw new Error(eo[n]);this._dict_set=!0}}gu.prototype.push=function(e,t){const n=this.strm,r=this.options.chunkSize;let i,u;if(this.ended)return!1;for(t===~~t?u=t:u=t===!0?tW:JH,typeof e=="string"?n.input=Yl.string2buf(e):bC.call(e)==="[object ArrayBuffer]"?n.input=new Uint8Array(e):n.input=e,n.next_in=0,n.avail_in=n.input.length;;){if(n.avail_out===0&&(n.output=new Uint8Array(r),n.next_out=0,n.avail_out=r),(u===QH||u===eW)&&n.avail_out<=6){this.onData(n.output.subarray(0,n.next_out)),n.avail_out=0;continue}if(i=sl.deflate(n,u),i===nW)return n.next_out>0&&this.onData(n.output.subarray(0,n.next_out)),i=sl.deflateEnd(this.strm),this.onEnd(i),this.ended=!0,i===sf;if(n.avail_out===0){this.onData(n.output);continue}if(u>0&&n.next_out>0){this.onData(n.output.subarray(0,n.next_out)),n.avail_out=0;continue}if(n.avail_in===0)break}return!0};gu.prototype.onData=function(e){this.chunks.push(e)};gu.prototype.onEnd=function(e){e===sf&&(this.result=zf.flattenChunks(this.chunks)),this.chunks=[],this.err=e,this.msg=this.strm.msg};function fg(e,t){const n=new gu(t);if(n.push(e,!0),n.err)throw n.msg||eo[n.err];return n.result}function oW(e,t){return t=t||{},t.raw=!0,fg(e,t)}function sW(e,t){return t=t||{},t.gzip=!0,fg(e,t)}var lW=gu,uW=fg,cW=oW,fW=sW,dW=_s,hW={Deflate:lW,deflate:uW,deflateRaw:cW,gzip:fW,constants:dW};const Yu=16209,pW=16191;var mW=function(t,n){let r,i,u,p,o,a,l,h,c,f,s,d,g,m,v,y,b,w,S,C,T,k,A,P;const z=t.state;r=t.next_in,A=t.input,i=r+(t.avail_in-5),u=t.next_out,P=t.output,p=u-(n-t.avail_out),o=u+(t.avail_out-257),a=z.dmax,l=z.wsize,h=z.whave,c=z.wnext,f=z.window,s=z.hold,d=z.bits,g=z.lencode,m=z.distcode,v=(1<>>24,s>>>=w,d-=w,w=b>>>16&255,w===0)P[u++]=b&65535;else if(w&16){S=b&65535,w&=15,w&&(d>>=w,d-=w),d<15&&(s+=A[r++]<>>24,s>>>=w,d-=w,w=b>>>16&255,w&16){if(C=b&65535,w&=15,da){t.msg="invalid distance too far back",z.mode=Yu;break e}if(s>>>=w,d-=w,w=u-p,C>w){if(w=C-w,w>h&&z.sane){t.msg="invalid distance too far back",z.mode=Yu;break e}if(T=0,k=f,c===0){if(T+=l-w,w2;)P[u++]=k[T++],P[u++]=k[T++],P[u++]=k[T++],S-=3;S&&(P[u++]=k[T++],S>1&&(P[u++]=k[T++]))}else{T=u-C;do P[u++]=P[T++],P[u++]=P[T++],P[u++]=P[T++],S-=3;while(S>2);S&&(P[u++]=P[T++],S>1&&(P[u++]=P[T++]))}}else if((w&64)===0){b=m[(b&65535)+(s&(1<>3,r-=S,d-=S<<3,s&=(1<{const a=o.bits;let l=0,h=0,c=0,f=0,s=0,d=0,g=0,m=0,v=0,y=0,b,w,S,C,T,k=null,A;const P=new Uint16Array(ko+1),z=new Uint16Array(ko+1);let I=null,$,O,Y;for(l=0;l<=ko;l++)P[l]=0;for(h=0;h=1&&P[f]===0;f--);if(s>f&&(s=f),f===0)return i[u++]=1<<24|64<<16|0,i[u++]=1<<24|64<<16|0,o.bits=1,0;for(c=1;c0&&(e===sb||f!==1))return-1;for(z[1]=0,l=1;lab||e===lb&&v>ob)return 1;for(;;){$=l-g,p[h]+1=A?(O=I[p[h]-A],Y=k[p[h]-A]):(O=32+64,Y=0),b=1<>g)+w]=$<<24|O<<16|Y|0;while(w!==0);for(b=1<>=1;if(b!==0?(y&=b-1,y+=b):y=0,h++,--P[l]===0){if(l===f)break;l=t[n+p[h]]}if(l>s&&(y&C)!==S){for(g===0&&(g=s),T+=c,d=l-g,m=1<ab||e===lb&&v>ob)return 1;S=y&C,i[S]=s<<24|d<<16|T-u|0}}return y!==0&&(i[T+y]=l-g<<24|64<<16|0),o.bits=s,0};var ll=_W;const wW=0,_C=1,wC=2,{Z_FINISH:ub,Z_BLOCK:SW,Z_TREES:Ku,Z_OK:no,Z_STREAM_END:CW,Z_NEED_DICT:xW,Z_STREAM_ERROR:gr,Z_DATA_ERROR:SC,Z_MEM_ERROR:CC,Z_BUF_ERROR:TW,Z_DEFLATED:cb}=_s,jf=16180,fb=16181,db=16182,hb=16183,pb=16184,mb=16185,gb=16186,vb=16187,yb=16188,bb=16189,lf=16190,si=16191,Gd=16192,_b=16193,Yd=16194,wb=16195,Sb=16196,Cb=16197,xb=16198,Xu=16199,qu=16200,Tb=16201,kb=16202,Eb=16203,Ob=16204,Ab=16205,Kd=16206,Pb=16207,Ib=16208,Vt=16209,xC=16210,TC=16211,kW=852,EW=592,OW=15,AW=OW,Mb=e=>(e>>>24&255)+(e>>>8&65280)+((e&65280)<<8)+((e&255)<<24);function PW(){this.strm=null,this.mode=0,this.last=!1,this.wrap=0,this.havedict=!1,this.flags=0,this.dmax=0,this.check=0,this.total=0,this.head=null,this.wbits=0,this.wsize=0,this.whave=0,this.wnext=0,this.window=null,this.hold=0,this.bits=0,this.length=0,this.offset=0,this.extra=0,this.lencode=null,this.distcode=null,this.lenbits=0,this.distbits=0,this.ncode=0,this.nlen=0,this.ndist=0,this.have=0,this.next=null,this.lens=new Uint16Array(320),this.work=new Uint16Array(288),this.lendyn=null,this.distdyn=null,this.sane=0,this.back=0,this.was=0}const ho=e=>{if(!e)return 1;const t=e.state;return!t||t.strm!==e||t.modeTC?1:0},kC=e=>{if(ho(e))return gr;const t=e.state;return e.total_in=e.total_out=t.total=0,e.msg="",t.wrap&&(e.adler=t.wrap&1),t.mode=jf,t.last=0,t.havedict=0,t.flags=-1,t.dmax=32768,t.head=null,t.hold=0,t.bits=0,t.lencode=t.lendyn=new Int32Array(kW),t.distcode=t.distdyn=new Int32Array(EW),t.sane=1,t.back=-1,no},EC=e=>{if(ho(e))return gr;const t=e.state;return t.wsize=0,t.whave=0,t.wnext=0,kC(e)},OC=(e,t)=>{let n;if(ho(e))return gr;const r=e.state;return t<0?(n=0,t=-t):(n=(t>>4)+5,t<48&&(t&=15)),t&&(t<8||t>15)?gr:(r.window!==null&&r.wbits!==t&&(r.window=null),r.wrap=n,r.wbits=t,EC(e))},AC=(e,t)=>{if(!e)return gr;const n=new PW;e.state=n,n.strm=e,n.window=null,n.mode=jf;const r=OC(e,t);return r!==no&&(e.state=null),r},IW=e=>AC(e,AW);let Lb=!0,Xd,qd;const MW=e=>{if(Lb){Xd=new Int32Array(512),qd=new Int32Array(32);let t=0;for(;t<144;)e.lens[t++]=8;for(;t<256;)e.lens[t++]=9;for(;t<280;)e.lens[t++]=7;for(;t<288;)e.lens[t++]=8;for(ll(_C,e.lens,0,288,Xd,0,e.work,{bits:9}),t=0;t<32;)e.lens[t++]=5;ll(wC,e.lens,0,32,qd,0,e.work,{bits:5}),Lb=!1}e.lencode=Xd,e.lenbits=9,e.distcode=qd,e.distbits=5},PC=(e,t,n,r)=>{let i;const u=e.state;return u.window===null&&(u.wsize=1<=u.wsize?(u.window.set(t.subarray(n-u.wsize,n),0),u.wnext=0,u.whave=u.wsize):(i=u.wsize-u.wnext,i>r&&(i=r),u.window.set(t.subarray(n-r,n-r+i),u.wnext),r-=i,r?(u.window.set(t.subarray(n-r,n),0),u.wnext=r,u.whave=u.wsize):(u.wnext+=i,u.wnext===u.wsize&&(u.wnext=0),u.whave{let n,r,i,u,p,o,a,l,h,c,f,s,d,g,m=0,v,y,b,w,S,C,T,k;const A=new Uint8Array(4);let P,z;const I=new Uint8Array([16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15]);if(ho(e)||!e.output||!e.input&&e.avail_in!==0)return gr;n=e.state,n.mode===si&&(n.mode=Gd),p=e.next_out,i=e.output,a=e.avail_out,u=e.next_in,r=e.input,o=e.avail_in,l=n.hold,h=n.bits,c=o,f=a,k=no;e:for(;;)switch(n.mode){case jf:if(n.wrap===0){n.mode=Gd;break}for(;h<16;){if(o===0)break e;o--,l+=r[u++]<>>8&255,n.check=ln(n.check,A,2,0),l=0,h=0,n.mode=fb;break}if(n.head&&(n.head.done=!1),!(n.wrap&1)||(((l&255)<<8)+(l>>8))%31){e.msg="incorrect header check",n.mode=Vt;break}if((l&15)!==cb){e.msg="unknown compression method",n.mode=Vt;break}if(l>>>=4,h-=4,T=(l&15)+8,n.wbits===0&&(n.wbits=T),T>15||T>n.wbits){e.msg="invalid window size",n.mode=Vt;break}n.dmax=1<>8&1),n.flags&512&&n.wrap&4&&(A[0]=l&255,A[1]=l>>>8&255,n.check=ln(n.check,A,2,0)),l=0,h=0,n.mode=db;case db:for(;h<32;){if(o===0)break e;o--,l+=r[u++]<>>8&255,A[2]=l>>>16&255,A[3]=l>>>24&255,n.check=ln(n.check,A,4,0)),l=0,h=0,n.mode=hb;case hb:for(;h<16;){if(o===0)break e;o--,l+=r[u++]<>8),n.flags&512&&n.wrap&4&&(A[0]=l&255,A[1]=l>>>8&255,n.check=ln(n.check,A,2,0)),l=0,h=0,n.mode=pb;case pb:if(n.flags&1024){for(;h<16;){if(o===0)break e;o--,l+=r[u++]<>>8&255,n.check=ln(n.check,A,2,0)),l=0,h=0}else n.head&&(n.head.extra=null);n.mode=mb;case mb:if(n.flags&1024&&(s=n.length,s>o&&(s=o),s&&(n.head&&(T=n.head.extra_len-n.length,n.head.extra||(n.head.extra=new Uint8Array(n.head.extra_len)),n.head.extra.set(r.subarray(u,u+s),T)),n.flags&512&&n.wrap&4&&(n.check=ln(n.check,r,s,u)),o-=s,u+=s,n.length-=s),n.length))break e;n.length=0,n.mode=gb;case gb:if(n.flags&2048){if(o===0)break e;s=0;do T=r[u+s++],n.head&&T&&n.length<65536&&(n.head.name+=String.fromCharCode(T));while(T&&s>9&1,n.head.done=!0),e.adler=n.check=0,n.mode=si;break;case bb:for(;h<32;){if(o===0)break e;o--,l+=r[u++]<>>=h&7,h-=h&7,n.mode=Kd;break}for(;h<3;){if(o===0)break e;o--,l+=r[u++]<>>=1,h-=1,l&3){case 0:n.mode=_b;break;case 1:if(MW(n),n.mode=Xu,t===Ku){l>>>=2,h-=2;break e}break;case 2:n.mode=Sb;break;case 3:e.msg="invalid block type",n.mode=Vt}l>>>=2,h-=2;break;case _b:for(l>>>=h&7,h-=h&7;h<32;){if(o===0)break e;o--,l+=r[u++]<>>16^65535)){e.msg="invalid stored block lengths",n.mode=Vt;break}if(n.length=l&65535,l=0,h=0,n.mode=Yd,t===Ku)break e;case Yd:n.mode=wb;case wb:if(s=n.length,s){if(s>o&&(s=o),s>a&&(s=a),s===0)break e;i.set(r.subarray(u,u+s),p),o-=s,u+=s,a-=s,p+=s,n.length-=s;break}n.mode=si;break;case Sb:for(;h<14;){if(o===0)break e;o--,l+=r[u++]<>>=5,h-=5,n.ndist=(l&31)+1,l>>>=5,h-=5,n.ncode=(l&15)+4,l>>>=4,h-=4,n.nlen>286||n.ndist>30){e.msg="too many length or distance symbols",n.mode=Vt;break}n.have=0,n.mode=Cb;case Cb:for(;n.have>>=3,h-=3}for(;n.have<19;)n.lens[I[n.have++]]=0;if(n.lencode=n.lendyn,n.lenbits=7,P={bits:n.lenbits},k=ll(wW,n.lens,0,19,n.lencode,0,n.work,P),n.lenbits=P.bits,k){e.msg="invalid code lengths set",n.mode=Vt;break}n.have=0,n.mode=xb;case xb:for(;n.have>>24,y=m>>>16&255,b=m&65535,!(v<=h);){if(o===0)break e;o--,l+=r[u++]<>>=v,h-=v,n.lens[n.have++]=b;else{if(b===16){for(z=v+2;h>>=v,h-=v,n.have===0){e.msg="invalid bit length repeat",n.mode=Vt;break}T=n.lens[n.have-1],s=3+(l&3),l>>>=2,h-=2}else if(b===17){for(z=v+3;h>>=v,h-=v,T=0,s=3+(l&7),l>>>=3,h-=3}else{for(z=v+7;h>>=v,h-=v,T=0,s=11+(l&127),l>>>=7,h-=7}if(n.have+s>n.nlen+n.ndist){e.msg="invalid bit length repeat",n.mode=Vt;break}for(;s--;)n.lens[n.have++]=T}}if(n.mode===Vt)break;if(n.lens[256]===0){e.msg="invalid code -- missing end-of-block",n.mode=Vt;break}if(n.lenbits=9,P={bits:n.lenbits},k=ll(_C,n.lens,0,n.nlen,n.lencode,0,n.work,P),n.lenbits=P.bits,k){e.msg="invalid literal/lengths set",n.mode=Vt;break}if(n.distbits=6,n.distcode=n.distdyn,P={bits:n.distbits},k=ll(wC,n.lens,n.nlen,n.ndist,n.distcode,0,n.work,P),n.distbits=P.bits,k){e.msg="invalid distances set",n.mode=Vt;break}if(n.mode=Xu,t===Ku)break e;case Xu:n.mode=qu;case qu:if(o>=6&&a>=258){e.next_out=p,e.avail_out=a,e.next_in=u,e.avail_in=o,n.hold=l,n.bits=h,mW(e,f),p=e.next_out,i=e.output,a=e.avail_out,u=e.next_in,r=e.input,o=e.avail_in,l=n.hold,h=n.bits,n.mode===si&&(n.back=-1);break}for(n.back=0;m=n.lencode[l&(1<>>24,y=m>>>16&255,b=m&65535,!(v<=h);){if(o===0)break e;o--,l+=r[u++]<>w)],v=m>>>24,y=m>>>16&255,b=m&65535,!(w+v<=h);){if(o===0)break e;o--,l+=r[u++]<>>=w,h-=w,n.back+=w}if(l>>>=v,h-=v,n.back+=v,n.length=b,y===0){n.mode=Ab;break}if(y&32){n.back=-1,n.mode=si;break}if(y&64){e.msg="invalid literal/length code",n.mode=Vt;break}n.extra=y&15,n.mode=Tb;case Tb:if(n.extra){for(z=n.extra;h>>=n.extra,h-=n.extra,n.back+=n.extra}n.was=n.length,n.mode=kb;case kb:for(;m=n.distcode[l&(1<>>24,y=m>>>16&255,b=m&65535,!(v<=h);){if(o===0)break e;o--,l+=r[u++]<>w)],v=m>>>24,y=m>>>16&255,b=m&65535,!(w+v<=h);){if(o===0)break e;o--,l+=r[u++]<>>=w,h-=w,n.back+=w}if(l>>>=v,h-=v,n.back+=v,y&64){e.msg="invalid distance code",n.mode=Vt;break}n.offset=b,n.extra=y&15,n.mode=Eb;case Eb:if(n.extra){for(z=n.extra;h>>=n.extra,h-=n.extra,n.back+=n.extra}if(n.offset>n.dmax){e.msg="invalid distance too far back",n.mode=Vt;break}n.mode=Ob;case Ob:if(a===0)break e;if(s=f-a,n.offset>s){if(s=n.offset-s,s>n.whave&&n.sane){e.msg="invalid distance too far back",n.mode=Vt;break}s>n.wnext?(s-=n.wnext,d=n.wsize-s):d=n.wnext-s,s>n.length&&(s=n.length),g=n.window}else g=i,d=p-n.offset,s=n.length;s>a&&(s=a),a-=s,n.length-=s;do i[p++]=g[d++];while(--s);n.length===0&&(n.mode=qu);break;case Ab:if(a===0)break e;i[p++]=n.length,a--,n.mode=qu;break;case Kd:if(n.wrap){for(;h<32;){if(o===0)break e;o--,l|=r[u++]<{if(ho(e))return gr;let t=e.state;return t.window&&(t.window=null),e.state=null,no},DW=(e,t)=>{if(ho(e))return gr;const n=e.state;return(n.wrap&2)===0?gr:(n.head=t,t.done=!1,no)},FW=(e,t)=>{const n=t.length;let r,i,u;return ho(e)||(r=e.state,r.wrap!==0&&r.mode!==lf)?gr:r.mode===lf&&(i=1,i=Wl(i,t,n,0),i!==r.check)?SC:(u=PC(e,t,n,n),u?(r.mode=xC,CC):(r.havedict=1,no))};var BW=EC,$W=OC,NW=kC,zW=IW,jW=AC,VW=LW,UW=RW,HW=DW,WW=FW,GW="pako inflate (from Nodeca project)",hi={inflateReset:BW,inflateReset2:$W,inflateResetKeep:NW,inflateInit:zW,inflateInit2:jW,inflate:VW,inflateEnd:UW,inflateGetHeader:HW,inflateSetDictionary:WW,inflateInfo:GW};function YW(){this.text=0,this.time=0,this.xflags=0,this.os=0,this.extra=null,this.extra_len=0,this.name="",this.comment="",this.hcrc=0,this.done=!1}var KW=YW;const IC=Object.prototype.toString,{Z_NO_FLUSH:XW,Z_FINISH:qW,Z_OK:Kl,Z_STREAM_END:Zd,Z_NEED_DICT:Jd,Z_STREAM_ERROR:ZW,Z_DATA_ERROR:Rb,Z_MEM_ERROR:JW}=_s;function vu(e){this.options=zf.assign({chunkSize:1024*64,windowBits:15,to:""},e||{});const t=this.options;t.raw&&t.windowBits>=0&&t.windowBits<16&&(t.windowBits=-t.windowBits,t.windowBits===0&&(t.windowBits=-15)),t.windowBits>=0&&t.windowBits<16&&!(e&&e.windowBits)&&(t.windowBits+=32),t.windowBits>15&&t.windowBits<48&&(t.windowBits&15)===0&&(t.windowBits|=15),this.err=0,this.msg="",this.ended=!1,this.chunks=[],this.strm=new yC,this.strm.avail_out=0;let n=hi.inflateInit2(this.strm,t.windowBits);if(n!==Kl)throw new Error(eo[n]);if(this.header=new KW,hi.inflateGetHeader(this.strm,this.header),t.dictionary&&(typeof t.dictionary=="string"?t.dictionary=Yl.string2buf(t.dictionary):IC.call(t.dictionary)==="[object ArrayBuffer]"&&(t.dictionary=new Uint8Array(t.dictionary)),t.raw&&(n=hi.inflateSetDictionary(this.strm,t.dictionary),n!==Kl)))throw new Error(eo[n])}vu.prototype.push=function(e,t){const n=this.strm,r=this.options.chunkSize,i=this.options.dictionary;let u,p,o;if(this.ended)return!1;for(t===~~t?p=t:p=t===!0?qW:XW,IC.call(e)==="[object ArrayBuffer]"?n.input=new Uint8Array(e):n.input=e,n.next_in=0,n.avail_in=n.input.length;;){for(n.avail_out===0&&(n.output=new Uint8Array(r),n.next_out=0,n.avail_out=r),u=hi.inflate(n,p),u===Jd&&i&&(u=hi.inflateSetDictionary(n,i),u===Kl?u=hi.inflate(n,p):u===Rb&&(u=Jd));n.avail_in>0&&u===Zd&&n.state.wrap>0&&e[n.next_in]!==0;)hi.inflateReset(n),u=hi.inflate(n,p);switch(u){case ZW:case Rb:case Jd:case JW:return this.onEnd(u),this.ended=!0,!1}if(o=n.avail_out,n.next_out&&(n.avail_out===0||u===Zd))if(this.options.to==="string"){let a=Yl.utf8border(n.output,n.next_out),l=n.next_out-a,h=Yl.buf2string(n.output,a);n.next_out=l,n.avail_out=r-l,l&&n.output.set(n.output.subarray(a,a+l),0),this.onData(h)}else this.onData(n.output.length===n.next_out?n.output:n.output.subarray(0,n.next_out));if(!(u===Kl&&o===0)){if(u===Zd)return u=hi.inflateEnd(this.strm),this.onEnd(u),this.ended=!0,!0;if(n.avail_in===0)break}}return!0};vu.prototype.onData=function(e){this.chunks.push(e)};vu.prototype.onEnd=function(e){e===Kl&&(this.options.to==="string"?this.result=this.chunks.join(""):this.result=zf.flattenChunks(this.chunks)),this.chunks=[],this.err=e,this.msg=this.strm.msg};function dg(e,t){const n=new vu(t);if(n.push(e),n.err)throw n.msg||eo[n.err];return n.result}function QW(e,t){return t=t||{},t.raw=!0,dg(e,t)}var eG=vu,tG=dg,nG=QW,rG=dg,iG=_s,aG={Inflate:eG,inflate:tG,inflateRaw:nG,ungzip:rG,constants:iG};const{Deflate:KY,deflate:XY,deflateRaw:oG,gzip:qY}=hW,{Inflate:ZY,inflate:JY,inflateRaw:sG,ungzip:QY}=aG;var lG=oG,uG=sG;function Db(e){const t=new Map;for(const n of e){const[r,i]=n.split("="),u=decodeURIComponent(i);t.set(r,u)}return t}const cG=function(){if(!window.location.search.includes("?"))return;const t=window.location.search.replace("?","").split("&");let n=Db(t);if(console.log("URL params:",n),n.get("share")){const u=uG(new Uint8Array(atob(n.get("share")).split("").map(p=>p.charCodeAt(0))),{to:"string"});if(!u){Ht().raiseError("Error when trying to decode share parameter!",!1);return}n=Db(u.split("&")),console.log("Share URL params:",n)}const r={id:-1,image:"",prompt:n.get("prompt")||"",sampler_name:n.get("sampler_name")||"k_euler",seed:Number(n.get("seed"))||-1,steps:Number(n.get("steps")||20),cfg_scale:Number(n.get("cfg_scale")||5),height:Number(n.get("height")||512),width:Number(n.get("width")||512),clip_skip:Number(n.get("clip_skip")||0),frames:Number(n.get("frames")||1),fps:Number(n.get("fps")||16),scheduler:n.get("scheduler")||"default"};Jt().generateText2Img(r,!1)},fG=10,dG=!1;function wp(e,t,n,r,i=u=>Ht().raiseError(u,!1)){if(e.status===n&&t)return!0;if(!t.message)return i(`${r}: Got response code ${e.status}`);if(!t.errors)return i(`${r}: ${t.message}`);const u=Object.entries(t.errors).map(p=>`${p[0]} - ${p[1]}`).join(" | ");return i(`${r}: ${t.message} (${u})`)}function ka(e,t){const n=e.trim().replace(/\/+$/,""),r=t.startsWith("/")?t:`/${t}`;return n.length===0?r:`${n}${r}`}const hG=us("interrogate",()=>{const e=ae({}),t=ae(!1);async function n(p){Ht().raiseError(p,!1),t.value=!1,e.value={}}async function r(){const p=Ft(),{source_image:o}=e.value;if(!o)return n("Failed to get interrogation ID: No image supplied.");t.value=!0;const a=await fetch(ka(p.baseURL,"/sdapi/v1/interrogate"),{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({image:o.split(",")[1],model:"clip"})}),l=await a.json();!wp(a,l,200,"Failed to get interrogation",n)||(e.value.id=l.id,e.value.status=l.caption)}function i(){e.value={},t.value=!1}function u(){return e.value.status||!1}return{currentInterrogation:e,interrogating:t,interrogateImage:r,getFormStatus:u,resetInterrogation:i}}),pG={key:0,style:{"margin-top":"16px"}},mG={key:1,style:{"margin-top":"16px"}},gG={key:2},vG={style:{"margin-top":"8px"}},yG={key:0},bG={key:0},_G={key:1},wG=be({__name:"InterrogationView",setup(e){const t=hG(),n=Jt(),r=Ht(),i=ae();async function u(l){if(i.value.clearFiles(),!l.raw.type.includes("image")){r.raiseError("Uploaded file needs to be a image!",!1);return}const h=await zl(l.raw);t.currentInterrogation.source_image=h,t.interrogateImage()}function p(){n.generateText2Img({prompt:o.value})}const o=ee(()=>t.getFormStatus()),{ellipsis:a}=US();return(l,h)=>_(t).currentInterrogation.source_image?_(t).currentInterrogation.status?(N(),oe("div",gG,[ne("div",vG,[se(_(Je),{icon:_(yh),onClick:_(t).resetInterrogation},{default:ue(()=>[...h[1]||(h[1]=[ze("New Interrogation",-1)])]),_:1},8,["icon","onClick"]),o.value?(N(),ve(_(Je),{key:0,icon:_(yh),onClick:p,disabled:!o.value},{default:ue(()=>[...h[2]||(h[2]=[ze("Text2Img (Caption)",-1)])]),_:1},8,["icon","disabled"])):ge("",!0)]),h[4]||(h[4]=ne("h2",{style:{margin:"16px 0 8px 0"}},"Interrogation Results",-1)),se(_(jo),{src:_(t).currentInterrogation.source_image,alt:"Uploaded Image"},null,8,["src"]),o.value?(N(),oe("div",yG,[h[3]||(h[3]=ne("h3",null,"Caption",-1)),o.value?(N(),oe("div",_G,[ne("strong",null,Ee(o.value),1)])):(N(),oe("div",bG,"Processing"+Ee(_(a)),1))])):ge("",!0)])):(N(),oe("div",mG,[ne("strong",null,"Uploading image"+Ee(_(a)),1)])):(N(),oe("div",pG,[ne("div",null,[se(_(Dm),{onChange:u,"auto-upload":!1,limit:1,class:"interrogation-upload",ref_key:"upload",ref:i,multiple:"",drag:""},{default:ue(()=>[se(_(De),{size:100},{default:ue(()=>[se(_(Qp))]),_:1}),h[0]||(h[0]=ne("div",null,[ze("Drop file here OR "),ne("em",null,"click to upload")],-1))]),_:1},512)])]))}}),SG=on(wG,[["__scopeId","data-v-db184ac6"]]);function CG(e,t,n){if(e===0)return"0"+(t?"s":"seconds");if(e==null)return"?";const r=Math.floor(e/86400),i=Math.floor(e%86400/3600),u=Math.floor(e%86400%3600/60),p=Math.floor(e%86400%3600%60),o=r>0?r+(t?"d":"days"):"",a=i>0?i+(t?"h":"hours"):"",l=u>0?u+(t?"m":"minutes"):"",h=p>0?p+(t?"s":"seconds"):"",c=[];return n!=null&&n.days&&c.push(o),n!=null&&n.hours&&c.push(a),n!=null&&n.minutes&&c.push(l),n!=null&&n.seconds&&c.push(h),c.join(" ")}function Sp(e){const t=[];let n=0;for(let r=0;rn&&t.push({type:"literal",text:e.slice(n,r),start:n,end:r});const i=e.indexOf("}",r+1);if(i===-1){t.push({type:"literal",text:e.slice(r),start:r,end:e.length}),n=e.length;break}t.push({type:"expansion",options:e.slice(r+1,i).split("|"),start:r,end:i+1}),n=i+1,r=i}return n{const r=n.type==="literal"?[n.text]:n.options;return t.flatMap(i=>r.map(u=>[...i,u]))},[[]]).map(t=>t.join(""))}function Fb(e){const t=[],n=/]+):([^>]+)>/g;return[e.replace(n,(i,u,p)=>{if(p.trim()==="")return"";const o=Number(p);if(isNaN(o))return"";let a=u,l=!1;const h="|high_noise|";return a.startsWith(h)&&(a=a.substring(h.length),l=!0),t.push({name:a,multiplier:o,...l?{is_high_noise:!0}:{}}),""}),t]}function Bb(e,t){const n=e.indexOf(" ### "),r=n===-1?e:e.slice(0,n),i=n===-1?"":e.slice(n),u=/]+):([^>]+)>/g,p="|high_noise|",o=[];for(const l of t)if(l.type==="literal"){if(l.start>=r.length)break;for(const h of l.text.matchAll(u)){const c=h.index;if(c===void 0)continue;const f=l.start+c;if(f>=r.length||h[2].trim()==="")continue;const s=Number(h[2]);if(isNaN(s))continue;const d=h[1];d.startsWith(p)||d.trim()!==""&&o.push({name:d,multiplier:s,start:f,end:Math.min(f+h[0].length,r.length)})}}if(o.length===0)return[e,[]];let a=r;for(let l=o.length-1;l>=0;l--)a=a.slice(0,o[l].start)+a.slice(o[l].end);return[a.replace(/ +/g," ").trim()+i,o.map(l=>({name:l.name,multiplier:l.multiplier}))]}function TG(e,t){const n=e.map(i=>({...i}));let r=n.length;for(;r>0&&n[r-1].lora===""&&n[r-1].multiplier===0;)r--;return t.forEach((i,u)=>{const p=r+u;p{const J=r.cacheVersion,V=(await r.getAvailableSamplers()).map(M=>M.name);return V.length===0?[]:C(V)},[]),o=h0(async()=>{const J=r.cacheVersion,V=(await r.getAvailableSchedulers()).map(M=>M.name);return V.length===0?[]:T(V)},[]),a=ae(""),l=ae([]),h=ae(!1),c=ae(!1);function f(){h.value||c.value||(c.value=!0,r.fetchLoras().then(J=>{J!==null&&(l.value=J,h.value=!0)}).finally(()=>{c.value=!1}))}function s(){l.value=[],h.value=!1}const d=ee(()=>r.loraList.filter(J=>{const E=Number(J.multiplier);return J.lora&&J.lora.trim()!==""&&!isNaN(E)&&E!==0}).length);xe(()=>a.value!==""||d.value>0,J=>{J&&f()},{immediate:!0}),xe(()=>r.cacheVersion,()=>{s(),(a.value!==""||d.value>0)&&f()});const g=ee(()=>{const J=d.value,E=l.value.length;return J===0?h.value?`${E} available`:"":h.value?`${J} enabled, ${E} available`:`${J} enabled`}),m=J=>!!J.lora&&J.lora.trim()!=="",v=ee(()=>r.loraList.filter(m).length);function y(){const J=r.loraList.filter(m);if(J.length===0)return;const E=J.map(V=>{const M=l.value.find(D=>D.path===V.lora||D.name===V.lora),R=Number(V.multiplier),G=isNaN(R)?0:Math.round(R*1e4)/1e4;return``});r.loraList=r.loraList.filter(V=>!m(V)),r.prompt=r.prompt===""?E.join(" "):`${r.prompt} ${E.join(" ")}`}const b=ee(()=>Bb(r.prompt,Sp(r.prompt))[1].length);function w(){const[J,E]=Bb(r.prompt,Sp(r.prompt));if(E.length===0)return;const V=E.map(M=>{const R=l.value.find(G=>G.path===M.name||G.name===M.name);return{lora:R?R.path:M.name,multiplier:M.multiplier}});r.loraList=TG(r.loraList,V),r.prompt=J}const S=kt({prompt:[{required:!0,message:"Please input prompt",trigger:"change"}],extraRequestFields:[{validator:(J,E,V)=>{try{MC(E),V()}catch(M){V(M instanceof Error?M:new Error(String(M)))}},trigger:"change"}]});function C(J){return!r.params||!r.params.sampler_name||J.indexOf(r.params.sampler_name)===-1&&(r.params.sampler_name=J[0]),J}function T(J){return!r.params||!r.params.scheduler||J.indexOf(r.params.scheduler)===-1&&(r.params.scheduler=J[0]),J}function k(J){return"Elapsed: "+CG(J,!0,{days:!0,hours:!0,minutes:!0,seconds:!0})}function A(){r.validGeneratorTypes.includes(r.generatorType)||(i.showGeneratorBadge=!1)}function P(J){r.generatorType=J,A(),console.log(J)}function z(){u.showCropPreview=!0,u.updateCropPreview()}function I(){var J;(J=document.getElementById("extra_image_input"))==null||J.click()}function $(){var J;(J=document.getElementById("video_start_frame_input"))==null||J.click()}function O(){var J;(J=document.getElementById("video_end_frame_input"))==null||J.click()}function Y(J){var E;return(E=J.dataUrl)==null?void 0:E.startsWith("data:image")}function re(){return r.referenceImages.filter(Y).map(J=>J.dataUrl)}function q(J){return r.referenceImages.slice(0,J).filter(Y).length}return A(),cG(),(J,E)=>(N(),oe($e,null,[se(_(F2),{"default-active":_(r).generatorType,collapse:!0,onSelect:P,mode:_(n)?"horizontal":"vertical",class:ce(_(n)?"mobile-generator-types":"generator-types"),style:je(_(n)?"overflow-x: auto":"")},{default:ue(()=>[se(Wu,{index:"Text2Img","icon-one":_(rO),"icon-two":_(ku),isMobile:_(n)},null,8,["icon-one","icon-two","isMobile"]),se(Wu,{index:"Img2Img","icon-one":_(ku),"icon-two":_(ku),isMobile:_(n)},null,8,["icon-one","icon-two","isMobile"]),se(Wu,{index:"Inpainting","icon-one":VS,"icon-two":_(ku),isMobile:_(n)},null,8,["icon-two","isMobile"]),se(Wu,{index:"Interrogation","icon-one":S7,isMobile:_(n)},null,8,["isMobile"])]),_:1},8,["default-active","mode","class","style"]),ne("div",kG,[_(r).generatorType==="Interrogation"?(N(),oe("div",EG,[E[40]||(E[40]=ne("h1",{style:{margin:"0"}},"Interrogation",-1)),E[41]||(E[41]=ne("div",null,"Interrogate images to get their predicted descriptions.",-1)),se(SG)])):(N(),ve(_(Am),{key:1,"label-position":"left","label-width":"140px",model:_(r),class:"container",rules:S,onSubmit:E[39]||(E[39]=Qe(()=>{},["prevent"]))},{default:ue(()=>{var V,M,R,G;return[ne("div",OG,[se(V7),se(_c,{label:"Negative Prompt",prop:"negativePrompt",modelValue:_(r).negativePrompt,"onUpdate:modelValue":E[0]||(E[0]=D=>_(r).negativePrompt=D),autosize:{maxRows:15},resize:"vertical",type:"textarea",placeholder:"Enter negative prompt here",info:"What to exclude from the image. Not working? Try increasing the guidance.","label-position":"top"},null,8,["modelValue"]),se(_c,{label:"Seed",prop:"seed",modelValue:_(r).params.seed,"onUpdate:modelValue":E[2]||(E[2]=D=>_(r).params.seed=D),placeholder:"Enter seed here",clearable:"","clear-icon":_(eO)},{append:ue(()=>[se(_(fn),{content:"Randomize!",placement:"top"},{default:ue(()=>[se(_(Je),{icon:_(xO),onClick:E[1]||(E[1]=()=>_(r).params.seed=_(LC)())},null,8,["icon"])]),_:1})]),_:1},8,["modelValue","clear-icon"]),(N(),ve(_(by),{key:0,gutter:10},{default:ue(()=>[_(r).multiSelect.sampler.state==="Multiple"?(N(),ve(_(wo),{key:0,span:_(n)?24:12},{default:ue(()=>[se(Lo,{label:"Sampler(s)",prop:"samplers",modelValue:_(r).multiSelect.sampler.selected,"onUpdate:modelValue":E[3]||(E[3]=D=>_(r).multiSelect.sampler.selected=D),options:_(p),info:"Multi-select enabled. Heun and DPM2 double generation time per step, but converge twice as fast.",multiple:""},null,8,["modelValue","options"])]),_:1},8,["span"])):ge("",!0),_(r).multiSelect.sampler.state==="Enabled"?(N(),ve(_(wo),{key:1,span:_(n)?24:12},{default:ue(()=>[se(Lo,{label:"Sampler",prop:"sampler",modelValue:_(r).params.sampler_name,"onUpdate:modelValue":E[4]||(E[4]=D=>_(r).params.sampler_name=D),options:_(p),info:"Heun and DPM2 double generation time per step, but converge twice as fast."},null,8,["modelValue","options"])]),_:1},8,["span"])):ge("",!0),_(r).multiSelect.scheduler.state==="Multiple"?(N(),ve(_(wo),{key:2,span:_(n)?24:12},{default:ue(()=>[se(Lo,{label:"Scheduler(s)",prop:"schedulers",modelValue:_(r).multiSelect.scheduler.selected,"onUpdate:modelValue":E[5]||(E[5]=D=>_(r).multiSelect.scheduler.selected=D),options:_(o),info:"Multi-select enabled. Experimental! KoboldCpp only, allows you to use a different scheduler. Leave as default otherwise.",multiple:""},null,8,["modelValue","options"])]),_:1},8,["span"])):ge("",!0),_(r).multiSelect.scheduler.state==="Enabled"?(N(),ve(_(wo),{key:3,span:_(n)?24:12},{default:ue(()=>[se(Lo,{label:"Scheduler",prop:"scheduler",modelValue:_(r).params.scheduler,"onUpdate:modelValue":E[6]||(E[6]=D=>_(r).params.scheduler=D),options:_(o),info:"Experimental! KoboldCpp only, allows you to use a different scheduler. Leave as default otherwise."},null,8,["modelValue","options"])]),_:1},8,["span"])):ge("",!0)]),_:1})),se(yn,{label:"Batch Size",prop:"batchSize",modelValue:_(r).params.n,"onUpdate:modelValue":E[7]||(E[7]=D=>_(r).params.n=D),min:_(r).minImages,max:_(r).maxImages},null,8,["modelValue","min","max"]),_(r).multiSelect.steps.state==="Multiple"?(N(),ve(yn,{key:1,label:"Steps(s)",prop:"multiSteps",modelValue:_(r).multiSelect.steps.selected,"onUpdate:modelValue":E[8]||(E[8]=D=>_(r).multiSelect.steps.selected=D),min:_(r).minSteps,max:_(r).maxSteps,info:"Multi-select enabled. Keep step count between 30 to 50 for optimal generation times. Coherence typically peaks between 60 and 90 steps, with a trade-off in speed.",multiple:""},null,8,["modelValue","min","max"])):_(r).multiSelect.steps.state==="Enabled"?(N(),ve(yn,{key:2,label:"Steps",prop:"steps",modelValue:_(r).params.steps,"onUpdate:modelValue":E[9]||(E[9]=D=>_(r).params.steps=D),min:_(r).minSteps,max:_(r).maxSteps,info:"Keep step count between 30 to 50 for optimal generation times. Coherence typically peaks between 60 and 90 steps, with a trade-off in speed."},null,8,["modelValue","min","max"])):ge("",!0),se(yn,{label:"Width",prop:"width",modelValue:_(r).params.width,"onUpdate:modelValue":E[10]||(E[10]=D=>_(r).params.width=D),min:_(r).minDimensions,max:_(r).maxDimensions,step:64,change:z},null,8,["modelValue","min","max"]),se(yn,{label:"Height",prop:"height",modelValue:_(r).params.height,"onUpdate:modelValue":E[11]||(E[11]=D=>_(r).params.height=D),min:_(r).minDimensions,max:_(r).maxDimensions,step:64,change:z},null,8,["modelValue","min","max"]),_(r).multiSelect.guidance.state==="Multiple"?(N(),ve(yn,{key:3,label:"Guidance(s)",prop:"cfgScales",modelValue:_(r).multiSelect.guidance.selected,"onUpdate:modelValue":E[12]||(E[12]=D=>_(r).multiSelect.guidance.selected=D),min:_(r).minCfgScale,max:_(r).maxCfgScale,info:"Multi-select enabled. Higher values will make the AI respect your prompt more. Lower values allow the AI to be more creative.",multiple:""},null,8,["modelValue","min","max"])):_(r).multiSelect.guidance.state==="Enabled"?(N(),ve(yn,{key:4,label:"Guidance (CFG)",prop:"cfgScale",modelValue:_(r).params.cfg_scale,"onUpdate:modelValue":E[13]||(E[13]=D=>_(r).params.cfg_scale=D),min:_(r).minCfgScale,max:_(r).maxCfgScale,step:.5,info:"Classifier Free Guidance (CFG Scale). Higher values will make the AI respect your prompt more. Lower values allow the AI to be more creative."},null,8,["modelValue","min","max"])):ge("",!0),_(r).multiSelect.eta.state==="Enabled"?(N(),ve(yn,{key:5,label:"Eta",prop:"eta",modelValue:_(r).params.eta,"onUpdate:modelValue":E[14]||(E[14]=D=>_(r).params.eta=D),min:_(r).minEta,max:_(r).maxEta,step:.1,info:"Noise multiplier for ancestral samplers. 0 disables noise injection."},null,8,["modelValue","min","max"])):ge("",!0),_(r).multiSelect.flowShift.state==="Enabled"?(N(),ve(yn,{key:6,label:"Flow Shift",prop:"flowShift",modelValue:_(r).params.flow_shift,"onUpdate:modelValue":E[15]||(E[15]=D=>_(r).params.flow_shift=D),min:_(r).minFlowShift,max:_(r).maxFlowShift,step:.5,info:"Override shift value for flow models."},null,8,["modelValue","min","max"])):ge("",!0),_(r).multiSelect.clipSkip.state==="Multiple"?(N(),ve(yn,{key:7,label:"CLIP Skip(s)",prop:"clipSkips",modelValue:_(r).multiSelect.clipSkip.selected,"onUpdate:modelValue":E[16]||(E[16]=D=>_(r).multiSelect.clipSkip.selected=D),min:_(r).minClipSkip,max:_(r).maxClipSkip,info:"Multi-select enabled. Last layers of CLIP to ignore. For most situations this can be left alone.",multiple:""},null,8,["modelValue","min","max"])):_(r).multiSelect.clipSkip.state==="Enabled"?(N(),ve(yn,{key:8,label:"CLIP Skip",prop:"clipSkip",modelValue:_(r).params.clip_skip,"onUpdate:modelValue":E[17]||(E[17]=D=>_(r).params.clip_skip=D),min:_(r).minClipSkip,max:_(r).maxClipSkip,info:"Last layers of CLIP to ignore. For most situations this can be left alone."},null,8,["modelValue","min","max"])):ge("",!0),_(r).sourceGeneratorTypes.includes(_(r).generatorType)?(N(),ve(yn,{key:9,label:"Init Strength",prop:"denoise",modelValue:_(r).params.denoising_strength,"onUpdate:modelValue":E[18]||(E[18]=D=>_(r).params.denoising_strength=D),min:_(r).minDenoise,max:_(r).maxDenoise,step:.01,info:"The final image will diverge from the starting image at higher values. 0=unchanged, 1=fullychanged"},null,8,["modelValue","min","max"])):ge("",!0),se(yn,{label:"Video Frames",prop:"frames",modelValue:_(r).params.frames,"onUpdate:modelValue":E[19]||(E[19]=D=>_(r).params.frames=D),min:_(r).minFrames,max:_(r).maxFrames,info:"Number of consecutive video frames to generate (Video models only). More frames increases memory usage."},null,8,["modelValue","min","max"]),_(r).params.frames>1?(N(),ve(yn,{key:10,label:"FPS",prop:"fps",modelValue:_(r).params.fps,"onUpdate:modelValue":E[20]||(E[20]=D=>_(r).params.fps=D),min:_(r).minFps,max:_(r).maxFps,disabled:_(r).params.frames<=1,info:"Frames per second for video generation."},null,8,["modelValue","min","max","disabled"])):ge("",!0),_(r).generatorType==="Text2Img"?(N(),oe("div",{key:11,class:"reference-images",onDragover:E[23]||(E[23]=Qe(()=>{},["prevent"])),onDrop:E[24]||(E[24]=Qe(D=>_(r).setExtraImage(D),["prevent"]))},[ne("div",AG,[E[44]||(E[44]=ne("span",{class:"reference-images-label"},"Reference Media",-1)),ne("div",PG,[ne("input",{class:"reference-images-input",type:"file",id:"extra_image_input",onChange:E[21]||(E[21]=D=>_(r).setExtraImage(D)),accept:"image/*,audio/*",multiple:""},null,32),se(_(Je),{onClick:I},{default:ue(()=>[...E[42]||(E[42]=[ze(" Select or Drag Files ",-1)])]),_:1}),se(_(Je),{onClick:E[22]||(E[22]=D=>_(r).clearExtraImage()),disabled:_(r).referenceImages.length===0},{default:ue(()=>[...E[43]||(E[43]=[ze(" Clear Files ",-1)])]),_:1},8,["disabled"])])]),_(r).referenceImages.length>0?(N(),oe("div",IG,[(N(!0),oe($e,null,zt(_(r).referenceImages,(D,B)=>(N(),oe("div",{class:ce(["reference-image-item",{"reference-file-item":!Y(D)}]),key:D.id},[ne("span",MG,Ee(B+1),1),Y(D)?(N(),ve(_(jo),{key:0,class:"reference-image-thumb",src:D.dataUrl,fit:"cover","preview-src-list":re(),"initial-index":q(B),"preview-teleported":""},null,8,["src","preview-src-list","initial-index"])):ge("",!0),ne("span",{class:"reference-image-name",title:D.name},Ee(D.name),9,LG),ne("div",RG,[se(_(fn),{content:"Move up",placement:"top"},{default:ue(()=>[se(_(Je),{class:"small-btn",icon:_(vh),disabled:B===0,onClick:Z=>_(r).moveExtraImage(B,-1)},null,8,["icon","disabled","onClick"])]),_:2},1024),se(_(fn),{content:"Move down",placement:"top"},{default:ue(()=>[se(_(Je),{class:"small-btn",icon:_(Ko),disabled:B===_(r).referenceImages.length-1,onClick:Z=>_(r).moveExtraImage(B,1)},null,8,["icon","disabled","onClick"])]),_:2},1024),se(_(fn),{content:"Remove",placement:"top"},{default:ue(()=>[se(_(Je),{class:"small-btn",type:"danger",icon:_(Ki),plain:"",onClick:Z=>_(r).removeExtraImage(B)},null,8,["icon","onClick"])]),_:2},1024)])],2))),128))])):(N(),oe("div",DG," No reference images selected. "))],32)):ge("",!0),_(r).generatorType==="Text2Img"&&_(r).params.frames>1?(N(),oe("div",FG,[ne("div",BG,[ne("input",{class:"reference-images-input",type:"file",id:"video_start_frame_input",onChange:E[25]||(E[25]=D=>_(r).setVideoStartFrame(D)),accept:"image/*"},null,32),E[46]||(E[46]=ne("span",{class:"video-frame-label"},"Video Start Frame",-1)),_(r).videoStartFrame?(N(),ve(_(jo),{key:0,class:"reference-image-thumb",src:_(r).videoStartFrame.dataUrl,fit:"cover","preview-teleported":""},null,8,["src"])):(N(),oe("div",$G)),ne("span",{class:"video-frame-name",title:((V=_(r).videoStartFrame)==null?void 0:V.name)||"No image selected"},Ee(((M=_(r).videoStartFrame)==null?void 0:M.name)||"No image selected"),9,NG),ne("div",zG,[se(_(Je),{onClick:$},{default:ue(()=>[...E[45]||(E[45]=[ze(" Select Image ",-1)])]),_:1}),se(_(fn),{content:"Remove",placement:"top"},{default:ue(()=>[se(_(Je),{class:"small-btn",type:"danger",icon:_(Ki),plain:"",disabled:!_(r).videoStartFrame,onClick:E[26]||(E[26]=D=>_(r).clearVideoStartFrame())},null,8,["icon","disabled"])]),_:1})])]),ne("div",jG,[ne("input",{class:"reference-images-input",type:"file",id:"video_end_frame_input",onChange:E[27]||(E[27]=D=>_(r).setVideoEndFrame(D)),accept:"image/*"},null,32),E[48]||(E[48]=ne("span",{class:"video-frame-label"},"Video End Frame",-1)),_(r).videoEndFrame?(N(),ve(_(jo),{key:0,class:"reference-image-thumb",src:_(r).videoEndFrame.dataUrl,fit:"cover","preview-teleported":""},null,8,["src"])):(N(),oe("div",VG)),ne("span",{class:"video-frame-name",title:((R=_(r).videoEndFrame)==null?void 0:R.name)||"No image selected"},Ee(((G=_(r).videoEndFrame)==null?void 0:G.name)||"No image selected"),9,UG),ne("div",HG,[se(_(Je),{onClick:O},{default:ue(()=>[...E[47]||(E[47]=[ze(" Select Image ",-1)])]),_:1}),se(_(fn),{content:"Remove",placement:"top"},{default:ue(()=>[se(_(Je),{class:"small-btn",type:"danger",icon:_(Ki),plain:"",disabled:!_(r).videoEndFrame,onClick:E[28]||(E[28]=D=>_(r).clearVideoEndFrame())},null,8,["icon","disabled"])]),_:1})])])])):ge("",!0),se(_(by),null,{default:ue(()=>[se(_(wo),{span:_(n)?24:12},{default:ue(()=>[se(Gy,{label:"ESRGAN Upscale",prop:"enable_hr",modelValue:_(r).params.enable_hr,"onUpdate:modelValue":E[29]||(E[29]=D=>_(r).params.enable_hr=D),info:"Enable upscale with ESRGAN."},null,8,["modelValue"])]),_:1},8,["span"]),se(_(wo),{span:_(n)?24:12},{default:ue(()=>[_(r).generatorType==="Img2Img"?(N(),ve(Gy,{key:0,label:"Send as RefImg",prop:"send_as_refimg",modelValue:_(r).params.send_as_refimg,"onUpdate:modelValue":E[30]||(E[30]=D=>_(r).params.send_as_refimg=D),info:"Instead of regular Img2Img, send the image as a reference image for edit models."},null,8,["modelValue"])):ge("",!0)]),_:1},8,["span"])]),_:1}),se(_c,{label:"Extra Fields",prop:"extraRequestFields",modelValue:_(r).extraRequestFields,"onUpdate:modelValue":E[31]||(E[31]=D=>_(r).extraRequestFields=D),autosize:{minRows:2,maxRows:8},resize:"vertical",type:"textarea",placeholder:'{"some_field": 1234}',info:"Optional JSON object merged into the final generation request. These values override fields configured above."},null,8,["modelValue"]),se(_(fD),{modelValue:a.value,"onUpdate:modelValue":E[33]||(E[33]=D=>a.value=D),class:"lora-list-collapse"},{default:ue(()=>[se(_(dD),{name:"lora-list"},{title:ue(()=>[E[49]||(E[49]=ne("span",{class:"lora-list-title"},"LoRAs",-1)),ne("span",WG,Ee(g.value),1)]),default:ue(()=>[h.value&&l.value.length===0?(N(),oe("div",GG," No LoRAs were returned by the server. ")):ge("",!0),(N(!0),oe($e,null,zt(_(r).loraList,(D,B)=>(N(),oe("div",{key:B,class:"lora-list-row"},[se(_(Lm),{modelValue:D.lora,"onUpdate:modelValue":Z=>D.lora=Z,class:"lora-list-select",filterable:"",placeholder:"Select a LoRA"},{default:ue(()=>[se(_(Yc),{value:""}),(N(!0),oe($e,null,zt(l.value,Z=>(N(),ve(_(Yc),{key:Z.path,label:Z.name,value:Z.path},null,8,["label","value"]))),128))]),_:1},8,["modelValue","onUpdate:modelValue"]),se(_(Gc),{modelValue:D.multiplier,"onUpdate:modelValue":Z=>D.multiplier=Z,step:.05,precision:2,"controls-position":"right"},null,8,["modelValue","onUpdate:modelValue"]),se(_(fn),{content:"Remove",placement:"top"},{default:ue(()=>[se(_(Je),{icon:_(Ki),plain:"",onClick:Z=>_(r).removeLoraRow(B)},null,8,["icon","onClick"])]),_:2},1024)]))),128)),ne("div",YG,[se(_(Je),{icon:_(Sf),onClick:E[32]||(E[32]=D=>_(r).addLoraRow()),disabled:l.value.length===0},{default:ue(()=>[...E[50]||(E[50]=[ze(" Add LoRA ",-1)])]),_:1},8,["icon","disabled"]),se(_(Je),{icon:_(vh),onClick:y,disabled:v.value===0},{default:ue(()=>[...E[51]||(E[51]=[ze(" To Prompt ",-1)])]),_:1},8,["icon","disabled"]),se(_(Je),{icon:_(Ko),onClick:w,disabled:b.value===0},{default:ue(()=>[...E[52]||(E[52]=[ze(" From Prompt ",-1)])]),_:1},8,["icon","disabled"])])]),_:1})]),_:1},8,["modelValue"])]),ne("div",KG,[se(_(Je),{onClick:E[34]||(E[34]=()=>{_(r).cancelled=!0,_(r).generating=!1,_(r).resetStore()}),class:"reset-btn"},{default:ue(()=>[...E[53]||(E[53]=[ze("Reset",-1)])]),_:1}),se(_(Je),{type:"primary",class:"generate-cancel-btn",style:je(_(r).generating?"width: 55%;":""),onClick:E[35]||(E[35]=()=>_(r).generateImage(_(r).generatorType))},{default:ue(()=>[ne("span",null," Generate "+Ee(_(r).totalImageCount)+" image"+Ee(_(r).totalImageCount===1?"":"s"),1)]),_:1},8,["style"]),_(r).generating?(N(),ve(_(Je),{key:0,type:"danger",class:"generate-cancel-btn",style:{width:"25%"},disabled:_(r).cancelled,onClick:E[36]||(E[36]=()=>{var D;(D=_(r).abortController)==null||D.abort(),_(r).cancelled=!0,_(r).generating=!1,_(r).clearQueue(),_(r).clearLastImageGenkey(),_(r).stopProgressPolling()})},{default:ue(()=>[...E[54]||(E[54]=[ze("Cancel all",-1)])]),_:1},8,["disabled"])):ge("",!0)]),ne("div",XG,[se(_(hR),{class:"center-both generated-image"},{default:ue(()=>{var D,B,Z,H,Q;return[!_(r).generating&&_(r).outputs.length==0?(N(),oe("div",qG,[/Inpainting/.test(_(r).generatorType)?(N(),ve(Ky,{key:0})):ge("",!0),/Img2Img/.test(_(r).generatorType)?(N(),ve(Ky,{key:1})):ge("",!0)])):ge("",!0),!_(i).showGeneratedImages&&_(r).generating?(N(),ve(R7,{key:1,generated:_(r).outputs.length,total:_(r).queue.length,elapsed:k(_(r).timer.seconds),"progress-percentage":(D=_(r).progressInfo)==null?void 0:D.percentage,"text-info":(B=_(r).progressInfo)==null?void 0:B.textInfo,"current-step":(Z=_(r).progressInfo)==null?void 0:Z.currentStep,"total-steps":(H=_(r).progressInfo)==null?void 0:H.totalSteps,"preview-image":(Q=_(r).progressInfo)==null?void 0:Q.previewImage,generating:_(r).generating,onShowGenerated:E[37]||(E[37]=te=>_(i).showGeneratedImages=!0)},null,8,["generated","total","elapsed","progress-percentage","text-info","current-step","total-steps","preview-image","generating"])):ge("",!0),_(i).showGeneratedImages&&_(r).outputs.length!==0?(N(),ve(q7,{key:2})):ge("",!0)]}),_:1}),_(r).lastImageRecoveryAvailable?(N(),ve(_(f$),{key:0,class:"last-image-recovery",type:"primary",onClick:E[38]||(E[38]=D=>_(r).recoverLastGeneratedImage())},{default:ue(()=>[...E[55]||(E[55]=[ze(" Recover last generated image ",-1)])]),_:1})):ge("",!0)])]}),_:1},8,["model","rules"]))])],64))}}),ul=zE({history:gE("/"),routes:[{path:"/",name:"generate",component:ZG},{path:"/images",name:"images",component:()=>Fd(()=>Promise.resolve().then(()=>MY),void 0)},{path:"/about",name:"about",component:()=>Fd(()=>Promise.resolve().then(()=>zY),void 0)},{path:"/options",name:"options",component:()=>Fd(()=>Promise.resolve().then(()=>UY),void 0)},{path:"/return",name:"return",redirect:e=>(window.location.href=window.location.pathname.endsWith("/")?"..":".","/")}]});function Zu(){return{steps:20,n:1,sampler_name:"Euler",width:512,height:512,cfg_scale:5,eta:1,flow_shift:0,clip_skip:0,seed:-1,denoising_strength:.6,frames:1,fps:16,enable_hr:!1,send_as_refimg:!0,scheduler:"default"}}function LC(){return Math.floor(Math.random()*9999999)+1}function JG(){return Math.floor(Math.random()*9e5+1e5).toString()}const Jt=us("generator",()=>{const e=["Text2Img","Img2Img","Inpainting"],t=["Img2Img","Inpainting"],n=ae("Text2Img"),r=ae(""),i=sn("promptHistory",[]),u=ae(""),p=sn("negativeLibrary",[]),o=ae(""),a=ae(Zu()),l=ae({interval:0,seconds:0}),h=ae(null),c=ae(0),f=ae({sampler:{name:"Sampler",state:"Enabled",allowedStates:["Disabled","Enabled","Multiple"],selected:[a.value.sampler_name],mapToParam:Se=>Se.sampler_name},scheduler:{name:"Scheduler",state:"Enabled",allowedStates:["Disabled","Enabled","Multiple"],selected:[a.value.scheduler],mapToParam:Se=>Se.scheduler},steps:{name:"Steps",state:"Enabled",allowedStates:["Disabled","Enabled","Multiple"],selected:[a.value.steps],mapToParam:Se=>Se.steps},guidance:{name:"CFG Scale",state:"Enabled",allowedStates:["Disabled","Enabled","Multiple"],selected:[a.value.cfg_scale],mapToParam:Se=>Se.cfg_scale},clipSkip:{name:"Clip Skip",state:"Disabled",allowedStates:["Disabled","Enabled","Multiple"],selected:[a.value.clip_skip],mapToParam:Se=>Se.clip_skip},eta:{name:"Eta",state:"Disabled",allowedStates:["Disabled","Enabled"],selected:[a.value.eta],mapToParam:Se=>Se.eta},flowShift:{name:"Flow Shift",state:"Disabled",allowedStates:["Disabled","Enabled"],selected:[a.value.flow_shift],mapToParam:Se=>Se.flow_shift}}),s=()=>({sourceProcessing:void 0,sourceImage:void 0,maskImage:void 0}),d=ae({...s(),sourceProcessing:"inpainting"}),g=ae({...s(),sourceProcessing:"img2img"}),m=Se=>Se==="Inpainting"?d.value:Se==="Img2Img"?g.value:s(),v=ee(()=>m(n.value)),y=ae(""),b=ae(!1),w=ae(!1),S=ae([]),C=ae(null),T=ae([]),k=sn("lastImageGenkey",""),A=sn("lastImageRecoveryAttemptedGenkey",""),P=ae(!1);A.value===k.value&&(k.value=""),A.value="";const z=ee(()=>k.value?ka(Ft().baseURL,`/sdapi/v1/get_last.json?genkey=${encodeURIComponent(k.value)}`):""),I=ee(()=>z.value!==""&&!b.value&&!P.value);function $(){k.value="",A.value=""}async function O(){var Se,Ne,Ue,et,nt,Ot;if(!(!z.value||P.value)){A.value=k.value,P.value=!0;try{const Ye=await fetch(z.value);if(!Ye.ok)throw new Error(`server returned ${Ye.status}`);const st=await Ye.json();if(!Array.isArray(st.images)||!st.images[0])throw new Error("server returned an invalid recovery payload");const Rn=(Ne=(Se=st.parameters)!=null?Se:st.params)!=null?Ne:{};S.value=[],Ht().showGeneratedImages=!1,await ie([{...st,prompt:(et=(Ue=st.prompt)!=null?Ue:Rn.prompt)!=null?et:"",params:Rn,models:(Ot=st.models)!=null?Ot:[(nt=st.modelName)!=null?nt:"(Unknown model)"]}],!0)}catch(Ye){const st=Ye instanceof Error?Ye.message:String(Ye);Ht().raiseError(`Failed to recover the last generated image: ${st}`,!1)}finally{P.value=!1}}}const Y=ae(64),re=ee(()=>Ft().allowLargerParams==="Enabled"?3072:1024),q=ae(1),J=ae(20),E=ae(1),V=ee(()=>Ft().allowLargerParams==="Enabled"?150:50),M=ae(1),R=ae(24),G=ae(0),D=ae(1),B=ae(0),Z=ae(20),H=ae(0),Q=ae(1),te=ae(0),fe=ae(10),me=ae(1),_e=ee(()=>Ft().allowLargerParams==="Enabled"?400:200),j=ae(16),x=ee(()=>Ft().allowLargerParams==="Enabled"?32:24),U=(Se,Ne,Ue)=>Array.from({length:(Ne-Se+1)/Ue},(et,nt)=>(nt+Se)*Ue),K=ae(U(te.value,fe.value,1)),L=ae(U(M.value,R.value,.5)),F=ee(()=>{const Se=(Rn,nn,ei=1)=>Rn*(nn.state==="Multiple"&&nn.selected.length>0?nn.selected.length:ei),Ue=a.value.n*Ce().length,et=Se(Ue,f.value.sampler),nt=Se(et,f.value.scheduler),Ot=Se(nt,f.value.steps),Ye=Se(Ot,f.value.guidance);return Se(Ye,f.value.clipSkip)});function X(){return a.value=Zu(),o.value="",d.value=s(),g.value=s(),po.value=null,mo.value=null,S.value=[],Rr.value=[],Ht().showGeneratedImages=!1,de(),$(),!0}function de(){T.value=[]}function le(){S.value=[]}async function W(){const Se=await Wt("/sdapi/v1/loras");return Array.isArray(Se)?Se:null}async function pe(Se){var _g,wg;if(!e.includes(Se))return[];if(r.value==="")return he("Failed to generate: No prompt submitted.");let Ne;try{Ne=MC(o.value)}catch(Ve){const pt=Ve instanceof Error?Ve.message:String(Ve);return he(`Failed to generate: ${pt}`)}const Ue=al(),et=Ht();Ue.saveImages();const{sourceImage:nt,maskImage:Ot,sourceProcessing:Ye}=m(Se);va(r.value);const st=[],nn=Ce().map(Ve=>{const pt=Ve.split(" ### ");return{prompt:pt[0],negative_prompt:pt[1]||""}}).map(Ve=>{const[pt,Zt]=Fb(Ve.prompt);return{...Ve,prompt:pt,extractedLoras:Zt}}),ei=nn.some(Ve=>Ve.extractedLoras.length>0)||Rr.value.some(Ve=>Ve.lora&&Ve.lora.trim()!=="")?(_g=await W())!=null?_g:[]:[],ti=Rr.value.filter(Ve=>Ve.lora&&Ve.lora.trim()!=="").flatMap(Ve=>{const pt=ei.find(Dn=>Dn.name===Ve.lora||Dn.path===Ve.lora),Zt=Number(Ve.multiplier);return[{name:pt?pt.name:Ve.lora,multiplier:isNaN(Zt)?0:Zt,allowUnresolved:!1}]}),br=Ve=>{const pt=new Map;for(const Zt of Ve){if(!Zt.name||Zt.name.trim()==="")continue;const Dn=`${Zt.name}\0${Zt.is_high_noise?1:0}`,or=pt.get(Dn);or?(or.multiplier=Math.round((or.multiplier+Zt.multiplier)*1e4)/1e4,or.allowUnresolved=or.allowUnresolved||Zt.allowUnresolved):pt.set(Dn,{...Zt})}return[...pt.values()]},yu=nn.map(({extractedLoras:Ve,...pt})=>{const Zt=br([...Ve.map(Gt=>({name:Gt.name,multiplier:Gt.multiplier,...Gt.is_high_noise?{is_high_noise:!0}:{},allowUnresolved:!0})),...ti]),Dn=Zt.flatMap(Gt=>{if(Gt.multiplier===0)return[];const _u=ei.find(Cg=>Cg.name===Gt.name||Cg.path===Gt.name),Sg=_u?_u.path:Gt.allowUnresolved?Gt.name:"";return Sg?[{path:Sg,multiplier:Gt.multiplier,...Gt.is_high_noise?{is_high_noise:!0}:{}}]:[]}),or=Zt.map(Gt=>``),ya=[or.length>0?pt.prompt.replace(/ +/g," ").trim():pt.prompt,or.join(" ")].filter(Gt=>Gt!=="").join(" "),vo=pt.negative_prompt!==""?`${ya} ### ${pt.negative_prompt}`:ya;return{...pt,full_prompt:vo,...Dn.length>0?{lora:Dn}:{}}}),{seed:bu,cfg_scale:ar,eta:mg,steps:ni,clip_skip:qC,flow_shift:gg,sampler_name:ZC,scheduler:JC,n:QC,...vg}=a.value,Wf=parseInt(bu.toString()),ex=isNaN(Wf)||Wf<0?LC():Wf,tx=Array.from({length:QC},(Ve,pt)=>ex+pt),go=(Ve,pt)=>Ve.state==="Disabled"?[]:Ve.state==="Enabled"?[pt]:Ve.state==="Multiple"&&Ve.selected.length===0?[]:Ve.selected,nx={promptVariant:yu,seed:tx,cfg_scale:go(f.value.guidance,ar),eta:go(f.value.eta,mg),steps:go(f.value.steps,ni),clip_skip:go(f.value.clipSkip,qC),sampler_name:go(f.value.sampler,ZC),scheduler:go(f.value.scheduler,JC)},rx=(Ve=>Object.entries(Ve).filter(([Zt,Dn])=>Dn.length>0).reduce((Zt,[Dn,or])=>{const $t=[];for(const ya of Zt)for(const vo of or)$t.push({...ya,[Dn]:vo});return $t},[{}]))(nx),ix=[await mt()];for(const Ve of rx){const{promptVariant:{full_prompt:pt,...Zt},...Dn}=Ve,or=Se==="Img2Img"?vg.send_as_refimg:!1,$t={prompt:pt,params:{...vg,send_as_refimg:or,...Dn,...Zt,init_images:nt?[nt.split(",")[1]]:[],mask:Ot,inpainting_mask_invert:Ot?0:null,inpainting_fill:Ot?1:null},source_image:nt==null?void 0:nt.split(",")[1],source_mask:Ot,source_processing:Ye,models:ix};$t.params.sampler_name=="default"&&delete $t.params.sampler_name,$t.params.scheduler=="default"&&delete $t.params.scheduler,!$t.params.frames||$t.params.frames<=1?(delete $t.params.frames,delete $t.params.fps):$t.params.fps=Math.min(x.value,Math.max(j.value,Math.round(Number($t.params.fps)||Zu().fps)));const ya=Se==="Text2Img",vo=ya?Dr.value.map(_u=>_u.base64):[];vo.length>0&&($t.params.extra_images=vo),ya&&$t.params.frames&&$t.params.frames>1&&(po.value&&($t.params.video_start_frame=po.value.base64),mo.value&&($t.params.video_end_frame=mo.value.base64)),Ft().alsoRequestAvi==="Enabled"&&$t.params.frames&&$t.params.frames>1&&($t.params.video_output_type=2);const Gt={};f.value.flowShift.state==="Enabled"&&gg>0&&(Gt.params={flow_shift:gg}),Ft().keepImageGenOnDisconnect==="Enabled"&&(Gt.keep_image_gen_on_disconnect=!0),Object.keys(Gt).length>0&&($t.params.kcpp_extra_args=Gt),Object.assign($t.params,Ne),st.push($t)}let yg=!1;b.value||(yg=!0,S.value=[]),b.value=!0,et.showGeneratedImages=!1;let bg=T.value.filter(Ve=>!Ve.gathered&&!Ve.failed).length;for(let Ve=0;Ve{l.value.seconds++},1e3),XC();!T.value.every(Ve=>Ve.gathered||Ve.failed)&&!w.value;){const Ve=T.value.find(pt=>!pt.gathered&&!pt.failed);if(!Ve)break;Ve.gathered=!0;try{const pt=await Ie(Ve.params,(wg=C.value)==null?void 0:wg.signal);if(!pt){Ve.failed=!0;continue}ie([{...pt,...Ve}])}catch(pt){Ve.failed=!0,console.error("Error fetching image:",pt)}}T.value.some(Ve=>Ve.failed)&&T.value.every(Ve=>Ve.gathered||Ve.failed)&&(b.value=!1,clearInterval(l.value.interval),l.value.interval=0,l.value.seconds=0,Hf(),T.value=[])}}async function ie(Se,Ne=!1){const Ue=Qa();console.log(Se);const et=await Promise.all(Se.map(async Ye=>{var yu,bu;const st=Ye.images[0],nn=!!Ye.animated?"gif":"png",ei=Ye.extra_data?`data:video/avi;base64,${Ye.extra_data}`:"",ti=Ye.final_frame?`data:image/jpeg;base64,${Ye.final_frame}`:"",br={id:-1,image:`data:image/${nn};base64,${st}`,prompt:Ye.prompt,modelName:Ye.models[0],frames:Ye.params.frames,fps:Ye.params.fps,extra_avi:ei,final_frame:ti,enable_hr:Ye.params.enable_hr,send_as_refimg:Ye.params.send_as_refimg,flow_shift:(bu=(yu=Ye.params.kcpp_extra_args)==null?void 0:yu.params)==null?void 0:bu.flow_shift,lora_meta:""};if(Ye.info&&typeof Ye.info=="string"&&Ye.info.trim()!=="")try{const ar=JSON.parse(Ye.info);["seed","steps","sampler_name","cfg_scale","eta","width","height","clip_skip","fps"].forEach(ni=>{ar[ni]!=null&&ar[ni]!=null?br[ni]=ar[ni]:Ye.params[ni]!=null&&(br[ni]=Ye.params[ni])}),ar.extra_generation_params&&ar.extra_generation_params["Schedule type"]?br.scheduler=ar.extra_generation_params["Schedule type"]:br.scheduler=Ye.params.scheduler,ar.lora_meta&&(br.lora_meta=ar.lora_meta)}catch(ar){console.warn("Failed to parse info JSON:",ar)}return br})),nt=await Ue.pushOutputs(et),Ot=0;return S.value=[...nt.map(Ye=>({type:"image",index:Ot,output:Ye})),...S.value].sort((Ye,st)=>Ye.index-st.index),(Ne||S.value.length===T.value.length)&&(T.value=[],b.value=!1,Ht().showGeneratedImages=!0,$(),clearInterval(l.value.interval),l.value.interval=0,l.value.seconds=0,Hf()),et}async function he(Se){const Ne=Ht();return Se&&Ne.raiseError(Se,!1),[]}function we(Se,Ne,Ue,et){return Ne<=Ue?Ne:(Ht().raiseWarning(`This image was generated using the 'Larger Values' option. Setting '${Se}' to its default value instead of ${Ne}.`,!0),et)}async function Te(Se,Ne=!0){var et;const Ue=Zu();if(n.value="Text2Img",f.value.guidance.state="Enabled",f.value.sampler.state="Enabled",f.value.steps.state="Enabled",f.value.clipSkip.state="Disabled",f.value.scheduler.state="Enabled",ul.push("/"),Ne&&(Se.width=Se.width||Ue.width,Se.height=Se.height||Ue.height),Se.prompt){const nt=Se.prompt.split(" ### ");r.value=nt[0],u.value=nt[1]||"";const[,Ot]=Fb(r.value);if(Ot.length>0){const Ye=(et=await W())!=null?et:[];Rr.value=Rr.value.filter(st=>!st.lora||st.lora.trim()===""?!0:!Ot.some(Rn=>Rn.name===st.lora||Ye.some(nn=>nn.name===Rn.name&&nn.path===st.lora)))}}if(Se.sampler_name){a.value.sampler_name=Se.sampler_name;const Ot=(await rr()).find(Ye=>Ye.aliases&&Ye.aliases.includes(Se.sampler_name));Ot&&(a.value.sampler_name=Ot.name)}Se.steps&&(a.value.steps=we("steps",Se.steps,V.value,Ue.steps)),Se.cfg_scale&&(a.value.cfg_scale=Se.cfg_scale),(Se.eta||Se.eta===0)&&(a.value.eta=Se.eta),(Se.flow_shift||Se.flow_shift===0)&&(a.value.flow_shift=Se.flow_shift,f.value.flowShift.state=Se.flow_shift>0?"Enabled":"Disabled"),Se.width&&(a.value.width=we("width",Se.width,re.value,Ue.width)),Se.height&&(a.value.height=we("height",Se.height,re.value,Ue.height)),Se.seed&&(a.value.seed=Se.seed),Se.clip_skip&&(a.value.clip_skip=we("clip_skip",Se.clip_skip,fe.value,Ue.clip_skip)),Se.scheduler&&(a.value.scheduler=Se.scheduler),Se.frames&&(a.value.frames=we("frames",Se.frames,_e.value,Ue.frames)),Se.fps&&(a.value.fps=Math.min(x.value,Math.max(j.value,Math.round(we("fps",Se.fps,x.value,Ue.fps)))))}function Ae(Se){const Ne=al();n.value="Img2Img",g.value.sourceImage=Se,Ne.drawing=!1,S.value=[],ul.push("/"),ur.fabric.Image.fromURL(Se,Ne.newImage)}function Le(Se){const Ne=al();S.value=[],d.value.sourceImage=Se,n.value="Inpainting",ul.push("/"),ur.fabric.Image.fromURL(Se,Ne.newImage)}function ye(){return u.value===""?r.value:`${r.value} ### ${u.value}`}function Ce(){const Se=ye();return xG(Sp(Se))}async function Ie(Se,Ne){const Ue=Ft();try{const et=JG();k.value=et,A.value="";const nt={...Se,genkey:et},Ot=await fetch(ka(Ue.baseURL,`/sdapi/v1/${Se.init_images.length>0?"img":"txt"}2img`),{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(nt),signal:Ne}),Ye=await Ot.json();return wp(Ot,Ye,200,"Failed to fetch",Me)?Ye:!1}catch{return!1}}function Me(Se){return Ht().raiseError(Se,!1),w.value=!1,S.value=[],!1}async function mt(){const Se=Ft(),Ne=await fetch(ka(Se.baseURL,"/sdapi/v1/sd-models")),Ue=await Ne.json();if(!!wp(Ne,Ue,200,"Failed to get available models"))return Ue.length===0?"(No model loaded)":Ue[0].model_name}const qt=ae(0),tt=new Map;function Lt(){tt.clear(),qt.value++}xe(()=>Ft().baseURL,()=>{Lt()});async function Wt(Se){const Ne=Ft(),Ue=ka(Ne.baseURL,Se);if(tt.has(Ue))return tt.get(Ue);const et=(async()=>{try{const nt=await fetch(Ue);if(nt.ok)return await nt.json();console.error(`API Error: ${nt.status} ${nt.statusText} at ${Ue}`)}catch(nt){console.error(`Fetch error for ${Ue}:`,nt)}return tt.delete(Ue),null})();return tt.set(Ue,et),et}async function rr(){const Se=await Wt("/sdapi/v1/samplers");return Array.isArray(Se)?Se:[]}async function Tn(){const Se=await Wt("/sdapi/v1/schedulers");return Array.isArray(Se)?Se:[]}function ir(Se){p.value.indexOf(Se)===-1&&(p.value=[...p.value,Se])}function ga(Se){p.value=p.value.filter(Ne=>Ne!=Se)}function va(Se){if(i.value.findIndex(Ne=>Ne.prompt===Se)===-1){if(i.value.length>=10+i.value.filter(Ne=>Ne.starred).length){const Ne=i.value.filter(et=>!et.starred),Ue=i.value.findIndex(et=>et===Ne[Ne.length-1]);i.value.splice(Ue,1)}i.value=[...i.value,{starred:!1,timestamp:Date.now(),prompt:Se}]}}function DC(Se){i.value=i.value.filter(Ne=>Ne.prompt!=Se&&Ne!=Se)}function FC(){return!1}const Rr=ae([]);function BC(){Rr.value=[...Rr.value,{lora:"",multiplier:0}]}function $C(Se){Rr.value=Rr.value.filter((Ne,Ue)=>Ue!==Se)}const Dr=ae([]),po=ae(null),mo=ae(null);async function pg(Se){var Ot,Ye;const Ue=(Ye=Se.target.files)!=null?Ye:(Ot=Se.dataTransfer)==null?void 0:Ot.files,et=Array.from(Ue!=null?Ue:[])[0];if(!et)return null;const nt=await zl(et);return{id:`${Date.now()}-${et.name}`,name:et.name,size:et.size,dataUrl:nt,base64:nt.includes("data:image")?nt.split(",")[1]:nt}}async function NC(Se){po.value=await pg(Se);const Ne=Se.target;Ne.value!==void 0&&(Ne.value="")}async function zC(Se){mo.value=await pg(Se);const Ne=Se.target;Ne.value!==void 0&&(Ne.value="")}function jC(){po.value=null;const Se=document.getElementById("video_start_frame_input");Se&&(Se.value="")}function VC(){mo.value=null;const Se=document.getElementById("video_end_frame_input");Se&&(Se.value="")}async function UC(Se){var Ot,Ye;const Ne=Se.target,Ue=(Ye=Ne.files)!=null?Ye:(Ot=Se.dataTransfer)==null?void 0:Ot.files,et=Array.from(Ue!=null?Ue:[]);if(et.length===0)return;const nt=await Promise.all(et.map(async(st,Rn)=>{const nn=await zl(st);return{id:`${Date.now()}-${Rn}-${st.name}`,name:st.name,size:st.size,dataUrl:nn,base64:nn.includes("data:image")?nn.split(",")[1]:nn}}));Dr.value||(Dr.value=[]);for(let st=0;st=Dr.value.length)return;const et=[...Dr.value],[nt]=et.splice(Se,1);et.splice(Ue,0,nt),Dr.value=et}function GC(){Dr.value=[];const Se=document.getElementById("extra_image_input");Se&&(Se.value="")}const Vf=ae(""),Uf=ae(-1);async function YC(){var Ne,Ue,et,nt,Ot,Ye,st,Rn,nn;const Se=Ft();try{const ei=await fetch(ka(Se.baseURL,`/sdapi/v1/progress?skip_current_image=true&genkey=${encodeURIComponent(k.value)}`));if(!ei.ok)return;const ti=await ei.json();h.value={percentage:Math.round(((Ne=ti.progress)!=null?Ne:0)*100),textInfo:ti.textinfo||null,currentStep:(et=(Ue=ti.state)==null?void 0:Ue.sampling_step)!=null?et:0,totalSteps:(Ot=(nt=ti.state)==null?void 0:nt.sampling_steps)!=null?Ot:0,previewImage:(st=(Ye=h.value)==null?void 0:Ye.previewImage)!=null?st:null},Vf.value!=k.value&&(Vf.value=k.value,Uf.value=-1);const br=(nn=(Rn=ti.state)==null?void 0:Rn.sampling_step)!=null?nn:0;Uf.value!=br&&(Uf.value=br,Se.fetchGenerationProgress==="Image"&&KC())}catch{}}async function KC(){const Se=Ft();try{const Ne=await fetch(ka(Se.baseURL,`/sdapi/v1/progress?genkey=${encodeURIComponent(k.value)}`));if(!Ne.ok)return;const Ue=await Ne.json();Ue.current_image&&h.value&&(h.value.previewImage=Ue.current_image)}catch{}}function XC(){Vf.value="",!c.value&&Ft().fetchGenerationProgress!=="Off"&&(h.value={percentage:0,textInfo:null,currentStep:0,totalSteps:0,previewImage:null},c.value=setInterval(YC,2e3))}function Hf(){c.value&&(clearInterval(c.value),c.value=0),h.value=null}return{generatorType:n,prompt:r,params:a,outputs:S,inpainting:d,img2img:g,uploadDimensions:y,cancelled:w,abortController:C,multiSelect:f,referenceImages:Dr,videoStartFrame:po,videoEndFrame:mo,loraList:Rr,addLoraRow:BC,removeLoraRow:$C,negativePrompt:u,extraRequestFields:o,generating:b,negativePromptLibrary:p,minDimensions:Y,maxDimensions:re,minImages:q,maxImages:J,minSteps:E,maxSteps:V,minCfgScale:M,maxCfgScale:R,minDenoise:H,maxDenoise:Q,minClipSkip:te,maxClipSkip:fe,minFrames:me,maxFrames:_e,minFps:j,maxFps:x,minEta:G,maxEta:D,minFlowShift:B,maxFlowShift:Z,clipSkipList:K,cfgList:L,queue:T,promptHistory:i,timer:l,progressInfo:h,progressInterval:c,lastImageGenkey:k,recoveringLastImage:P,lastImageRecoveryUrl:z,lastImageRecoveryAvailable:I,clearLastImageGenkey:$,recoverLastGeneratedImage:O,validGeneratorTypes:e,sourceGeneratorTypes:t,currentImageProps:v,totalImageCount:F,generateImage:pe,generateText2Img:Te,generateImg2Img:Ae,generateInpainting:Le,getPrompt:FC,resetStore:X,clearQueue:de,clearOutputs:le,stopProgressPolling:Hf,pushToNegativeLibrary:ir,removeFromNegativeLibrary:ga,pushToPromptHistory:va,removeFromPromptHistory:DC,setExtraImage:UC,removeExtraImage:HC,moveExtraImage:WC,clearExtraImage:GC,setVideoStartFrame:NC,setVideoEndFrame:zC,clearVideoStartFrame:jC,clearVideoEndFrame:VC,getAvailableSamplers:rr,getAvailableSchedulers:Tn,fetchLoras:W,cacheVersion:qt,invalidateApiCaches:Lt,getCachedEndpoint:Wt}}),QG=be({__name:"ImageActions",props:{imageData:{},onDelete:{type:Function},showDismiss:{type:Boolean}},setup(e){const t=Jt(),n=Qa(),r=e,i=()=>{G2.confirm("This action will permanently delete this image. Continue?","Warning",{confirmButtonText:"OK",cancelButtonText:"Cancel",type:"warning"}).then(async()=>{var a;await n.deleteOutput(r.imageData.id),(a=r.onDelete)==null||a.call(r,r.imageData.id),la({type:"success",message:"Deleted Image"})})},u=a=>{if(a.extra_avi){const l=a.extra_avi.split(",")[1];if(!l)return;const h=`${a.seed}-${a.prompt}.avi`;qS(l,h);return}else ag(a.image,`${a.seed}-${a.prompt}`)},p=()=>{Jt().clearOutputs(),Ht().showGeneratedImages=!1,Jt().clearQueue()};async function o(a){const l=window.location.origin,h={prompt:a.prompt,width:a.width?a.width:void 0,height:a.height?a.height:void 0,steps:a.steps,cfg_scale:a.cfg_scale,sampler_name:a.sampler_name,model_name:a.modelName,seed:a.seed,clip_skip:a.clip_skip,frames:a.frames,fps:a.fps,scheduler:a.scheduler,extra_avi:a.extra_avi,final_frame:a.final_frame,enable_hr:a.enable_hr,send_as_refimg:a.send_as_refimg,lora_meta:a.lora_meta},c=window.location.pathname.replace("images","");let f=`${l}${c}?share=`,s="",d="";for(const[m,v]of Object.entries(h)){if(!v)continue;let y=v;typeof v=="string"?y=encodeURIComponent(v):Array.isArray(v)&&(y=JSON.stringify(v)),s+=`${d}${m}=${y}`,d="&"}const g=btoa(String.fromCharCode.apply(null,Array.from(lG(s))));f+=g,await navigator.clipboard.writeText(f),la({type:"success",message:"Copied shareable link to clipboard"})}return(a,l)=>(N(),oe($e,null,[se(_(Je),{class:"compact-button",onClick:i,type:"danger",size:"small",icon:_(Ki),plain:""},{default:ue(()=>[...l[8]||(l[8]=[ze("Delete",-1)])]),_:1},8,["icon"]),se(_(Je),{class:"compact-button",onClick:l[0]||(l[0]=h=>u(a.imageData)),type:"success",size:"small",icon:_(bl),plain:""},{default:ue(()=>[...l[9]||(l[9]=[ze("Download",-1)])]),_:1},8,["icon"]),a.imageData.starred?ge("",!0):(N(),ve(_(Je),{key:0,class:"compact-button",onClick:l[1]||(l[1]=h=>_(n).toggleStarred(a.imageData.id)),type:"warning",size:"small",icon:_(GO),plain:""},{default:ue(()=>[...l[10]||(l[10]=[ze("Star",-1)])]),_:1},8,["icon"])),a.imageData.starred?(N(),ve(_(Je),{key:1,class:"compact-button",onClick:l[2]||(l[2]=h=>_(n).toggleStarred(a.imageData.id)),type:"warning",size:"small",icon:_($1),plain:""},{default:ue(()=>[...l[11]||(l[11]=[ze("Unstar",-1)])]),_:1},8,["icon"])):ge("",!0),se(_(Je),{class:"compact-button",onClick:l[3]||(l[3]=h=>_(t).generateText2Img(a.imageData)),type:"success",size:"small",plain:""},{default:ue(()=>[...l[12]||(l[12]=[ze("Txt2img",-1)])]),_:1}),se(_(Je),{class:"compact-button",onClick:l[4]||(l[4]=h=>_(t).generateImg2Img(a.imageData.image)),type:"success",size:"small",plain:""},{default:ue(()=>[...l[13]||(l[13]=[ze("Img2img",-1)])]),_:1}),se(_(Je),{class:"compact-button",onClick:l[5]||(l[5]=h=>_(t).generateInpainting(a.imageData.image)),type:"success",size:"small",plain:""},{default:ue(()=>[...l[14]||(l[14]=[ze("Inpaint",-1)])]),_:1}),a.showDismiss?(N(),ve(_(Je),{key:2,class:"compact-button",onClick:l[6]||(l[6]=h=>p()),type:"success",size:"small",plain:""},{default:ue(()=>[...l[15]||(l[15]=[ze("Dismiss",-1)])]),_:1})):ge("",!0),se(_(Je),{class:"compact-button",onClick:l[7]||(l[7]=h=>o(a.imageData)),type:"success",icon:_(wO),size:"small",plain:""},{default:ue(()=>[...l[16]||(l[16]=[ze("Share",-1)])]),_:1},8,["icon"])],64))}}),RC=on(QG,[["__scopeId","data-v-7a45e2c8"]]),eY={class:"main-output",style:{position:"relative",display:"flex","align-items":"center","justify-content":"center"}},tY=["src"],nY={style:{"font-size":"16px","font-weight":"500"}},rY={style:{"font-family":"'Segoe UI', Tahoma, Geneva, Verdana, sans-serif","letter-spacing":"0.025em"}},iY={key:0},aY={key:1},oY={key:0},sY={key:1},lY={key:2},uY=be({__name:"ImageDialog",setup(e){const t=Qa(),n=Ht(),r=Jt(),i=ae();u6(i,{onSwipeEnd(f,s){s==="RIGHT"&&n.openModalToLeft(),s==="LEFT"&&n.openModalToRight()}});const u=ee({get(){return n.activeModal!==-1},set(){n.activeModal=-1}}),p=ae(t.currentOutputs[0]);xe(()=>n.activeModal,async f=>{if(f===-1){p.value=void 0;return}const s=t.currentOutputs.find(g=>g.id===f);if(s)return p.value=s;p.value=void 0;const d=await Yt.outputs.get(f);if(n.activeModal===f){if(!d){p.value=void 0,n.activeModal=-1;return}p.value=d}});function o(){u.value=!1}function a(f){const s=r.outputs.findIndex(d=>d.output.id===f);s!==-1&&r.outputs.splice(s,1),o()}function l(){var d;if(!((d=p.value)!=null&&d.final_frame))return;const f=p.value.final_frame;Jt().generateImg2Img(f)}function h(){var f;!((f=p.value)!=null&&f.image)||ag(p.value.image,`${p.value.seed}-${p.value.prompt}`)}function c(){var d,g;if(!((d=p.value)!=null&&d.extra_avi))return;const f=p.value.extra_avi.split(",")[1];if(!f)return;const s=`output-${(g=p.value.id)!=null?g:"video"}.avi`;qS(f,s)}return(f,s)=>{var d;return N(),ve(_(eF),{"model-value":u.value,width:(d=p.value)==null?void 0:d.width,class:"image-viewer",onClosed:o,"align-center":""},{footer:ue(()=>[p.value?(N(),ve(RC,{key:0,"image-data":p.value,"on-delete":a},null,8,["image-data"])):ge("",!0)]),default:ue(()=>{var g,m,v,y,b,w,S,C,T,k,A,P,z,I,$,O,Y,re,q,J,E,V;return[ne("div",{class:"main-output-container",ref_key:"target",ref:i},[ne("div",eY,[(g=p.value)!=null&&g.image?(N(),oe("img",{key:0,src:(m=p.value)==null?void 0:m.image,alt:"Output image",style:{"max-width":"100%","max-height":"100%","object-fit":"contain"}},null,8,tY)):ge("",!0)])],512),ne("div",nY,Ee(((y=(v=p.value)==null?void 0:v.prompt)==null?void 0:y.split("###")[0])||"Unknown Creation"),1),ne("div",rY,[ne("div",null,"Negative Prompt: "+Ee(((w=(b=p.value)==null?void 0:b.prompt)==null?void 0:w.split("###")[1])||"None"),1),ne("span",null,"Model: "+Ee(((S=p.value)==null?void 0:S.modelName)||"Unknown")+" - ",1),ne("span",null,"Sampler: "+Ee(((C=p.value)==null?void 0:C.sampler_name)||"Unknown")+" - ",1),ne("span",null,"Scheduler: "+Ee(((T=p.value)==null?void 0:T.scheduler)||"Unknown")+" - ",1),ne("span",null,"Seed: "+Ee(((k=p.value)==null?void 0:k.seed)||"Unknown")+" - ",1),ne("span",null,"Steps: "+Ee(((A=p.value)==null?void 0:A.steps)||"Unknown")+" - ",1),ne("span",null,"CFG Scale: "+Ee(((P=p.value)==null?void 0:P.cfg_scale)||"Unknown")+" - ",1),ne("span",null,"Clip Skip: "+Ee((I=(z=p.value)==null?void 0:z.clip_skip)!=null?I:"Unknown")+" - ",1),ne("span",null,"Dimensions: "+Ee((($=p.value)==null?void 0:$.width)||"???")+"x"+Ee(((O=p.value)==null?void 0:O.height)||"???")+" - ",1),ne("span",null,"Frames: "+Ee(((Y=p.value)==null?void 0:Y.frames)||"1"),1),((re=p.value)==null?void 0:re.frames)&&p.value.frames>1?(N(),oe("span",iY," - FPS: "+Ee(p.value.fps||"Unknown"),1)):ge("",!0),(q=p.value)!=null&&q.lora_meta?(N(),oe("span",aY," - LoRA: "+Ee(p.value.lora_meta),1)):ge("",!0),s[2]||(s[2]=ne("br",null,null,-1)),ne("b",null,[((J=p.value)==null?void 0:J.frames)&&p.value.frames>1?(N(),oe("span",oY,[ne("a",{href:"#",onClick:Qe(h,["prevent"]),style:{cursor:"pointer",color:"var(--el-color-primary)"}},"[Download GIF]")])):ge("",!0),(E=p.value)!=null&&E.extra_avi?(N(),oe("span",sY,[s[0]||(s[0]=ze(" - ",-1)),ne("a",{href:"#",onClick:Qe(c,["prevent"]),style:{cursor:"pointer",color:"var(--el-color-primary)"}},"[Download AVI]")])):ge("",!0),(V=p.value)!=null&&V.final_frame?(N(),oe("span",lY,[s[1]||(s[1]=ze(" - ",-1)),ne("a",{href:"#",onClick:Qe(l,["prevent"]),style:{cursor:"pointer",color:"var(--el-color-primary)"}},"[Extend Video]")])):ge("",!0)])])]}),_:1},8,["model-value","width"])}}}),cY={class:"generator-icons"},fY=be({__name:"App",setup(e){const n=pm(hm).smallerOrEqual("md"),r=Ht();Ft();const i=VE(),u=ae();return xe(()=>i.path,p=>{u.value&&u.value.open(p)}),(p,o)=>(N(),oe($e,null,[ne("div",{class:ce({"menu-container":!_(n)})},[se(_(F2),{"default-active":_(i).path,mode:"horizontal",router:!0,ellipsis:!_(n),class:ce(_(n)?"mobile-menu":"menu"),ref_key:"menuRef",ref:u},{default:ue(()=>[_(n)?ge("",!0):(N(),ve(_(Im),{key:0,class:"remove-item-styling center-vertical"},{title:ue(()=>[...o[0]||(o[0]=[ne("div",{style:{"font-size":"20px"}},"Stable UI",-1)])]),_:1})),se(Is,{isMobile:_(n),index:"/"},{icon:ue(()=>[ne("div",cY,[se(_(De),null,{default:ue(()=>[se(_(MO))]),_:1}),_(r).showGeneratorBadge?(N(),ve(_(De),{key:0,class:"generator-badge",size:10},{default:ue(()=>[se(h7)]),_:1})):ge("",!0)])]),title:ue(()=>[...o[1]||(o[1]=[ze("Generate",-1)])]),_:1},8,["isMobile"]),se(Is,{isMobile:_(n),index:"/images"},{icon:ue(()=>[se(_(De),null,{default:ue(()=>[se(_(kO))]),_:1})]),title:ue(()=>[...o[2]||(o[2]=[ze("Images",-1)])]),_:1},8,["isMobile"]),se(Is,{isMobile:_(n),index:"/about"},{icon:ue(()=>[se(_(De),null,{default:ue(()=>[se(_(R1))]),_:1})]),title:ue(()=>[...o[3]||(o[3]=[ze("About",-1)])]),_:1},8,["isMobile"]),se(Is,{isMobile:_(n),index:"/options"},{icon:ue(()=>[se(_(De),null,{default:ue(()=>[se(_(XO))]),_:1})]),title:ue(()=>[...o[4]||(o[4]=[ze("Options",-1)])]),_:1},8,["isMobile"]),se(Is,{isMobile:_(n),index:"/return"},{icon:ue(()=>[se(_(De),null,{default:ue(()=>[se(_(P1))]),_:1})]),title:ue(()=>[...o[5]||(o[5]=[ze("Return to Lite",-1)])]),_:1},8,["isMobile"])]),_:1},8,["default-active","ellipsis","class"])],2),ne("div",{class:ce({view:!_(n)})},[se(_(A1))],2),se(uY)],64))}}),dY=on(fY,[["__scopeId","data-v-8f4d2380"]]),hg=Pk(dY);hg.use(Rk());hg.use(ul);hg.mount("#app");ul.replace("/");window.addEventListener("beforeunload",e=>{Jt().generating&&(e.preventDefault(),e.returnValue="")});const hY={key:1,class:"image-action"},pY=be({__name:"CustomImage",props:{imageData:{}},setup(e){const t=e,n=Ht(),r=ae(null);z5(r,n.toggleMultiSelect,{modifiers:{prevent:!0}});const i=ae(!1);l6(r,([{isIntersecting:p}])=>{p&&(i.value=p)},{rootMargin:"500px"});const u=ee(()=>n.selected.includes(t.imageData.id));return(p,o)=>(N(),oe("div",{class:"relative",ref_key:"containerRef",ref:r},[i.value?(N(),ve(_(jo),{key:0,class:"thumbnail",src:p.imageData.image,onClick:o[0]||(o[0]=a=>_(n).activeModal=p.imageData.id),fit:"cover",loading:"lazy",style:je(`${u.value&&"opacity: 0.5"}`)},null,8,["src","style"])):ge("",!0),i.value?(N(),oe("div",hY,[p.imageData.starred?(N(),ve(_(De),{key:0,class:"starred-icon",size:35,color:"var(--el-color-warning)"},{default:ue(()=>[se(_($1))]),_:1})):ge("",!0),_(n).multiSelect?(N(),oe("div",{key:1,class:"select-container",onClick:o[1]||(o[1]=a=>_(n).toggleSelection(p.imageData.id))},[se(_(De),{class:"select-icon",size:35,color:`rgba(255, 255, 255, ${u.value?"1":"0.5"})`},{default:ue(()=>[u.value?ge("",!0):(N(),ve(_(eu),{key:0})),u.value?(N(),ve(_(M1),{key:1})):ge("",!0)]),_:1},8,["color"])])):ge("",!0)])):ge("",!0)],512))}}),$b=on(pY,[["__scopeId","data-v-b9569bbd"]]);function mY({mobileWidth:e=768,hideAfterDistanceFromTop:t=100,hideAfterScroll:n=100}={}){const{width:r}=Cw(),i=ee(()=>r.value<=e),u=ae(!0),{y:p}=s6(window);let o=p.value,a=0;return xe(p,l=>{if(!i.value)return;const h=l-o;if(o=l,h>0&&l>t){a+=h,a>=n&&(u.value=!1,a=0);return}h<0&&(a=0,u.value=!0)}),{isVisible:u,isMobile:i}}const gY={},vY={xmlns:"http://www.w3.org/2000/svg","xmlns:xlink":"http://www.w3.org/1999/xlink",viewBox:"0 0 1024 1024"};function yY(e,t){return N(),oe("svg",vY,[...t[0]||(t[0]=[ne("path",{d:"M880 112H144c-17.7 0-32 14.3-32 32v736c0 17.7 14.3 32 32 32h736c17.7 0 32-14.3 32-32V144c0-17.7-14.3-32-32-32zm-696 72h136v656H184V184zm656 656H384V384h456v456zM384 320V184h456v136H384z",fill:"currentColor"},null,-1)])])}const bY=on(gY,[["render",yY]]),_Y={class:"options"},wY=["onClick"],SY=["onClick"],CY=["onClick"],xY={key:1,class:"center-both",style:{gap:"12px"}},TY={key:2},kY={key:0},EY={key:0,style:{display:"flex",gap:"8px"}},OY={key:1,class:"images"},AY={key:1},PY=be({__name:"ImagesView",setup(e){const{width:t}=Cw(),{isVisible:n,isMobile:r}=mY(),i=Qa(),u=Ft(),p=Ht();function o(){p.selected=p.selected.filter(d=>!i.currentOutputs.map(g=>g.id).includes(d)),p.selected=[...p.selected,...i.currentOutputs.map(d=>d.id)],p.multiSelect=!0}async function a(){const d=await Yt.outputs.toCollection().primaryKeys();p.selected=d,p.multiSelect=!0}function l(){p.selected=p.selected.filter(d=>!i.currentOutputs.map(g=>g.id).includes(d)),p.selected.length===0&&(p.multiSelect=!1)}function h(){p.selected=[],p.multiSelect=!1}const c=()=>{G2.confirm(`This action will permanently delete ${p.selected.length} images. Continue?`,"Warning",{confirmButtonText:"OK",cancelButtonText:"Cancel",type:"warning"}).then(()=>{i.deleteMultipleOutputs(p.selected)})};m0(["a","A","ArrowLeft"],p.openModalToLeft),m0(["d","D","ArrowRight"],p.openModalToRight);async function f(){XS(p.selected)}const s=ee(()=>{let d=2;t.value>1440?d=6:t.value>1280?d=5:t.value>768?d=4:t.value>480&&(d=3);const g=[];for(let m=0;m(N(),oe($e,null,[ne("div",{class:ce(["images-top-bar",{"mobile-hidden":_(r)&&!_(n)}])},[ne("div",_Y,[se(_(Du),{placement:"bottom",title:"Sort By",trigger:"click",width:200,transition:"none","hide-after":0},{reference:ue(()=>[se(_(Je),{class:"btn-select"},{default:ue(()=>[se(_(De),{size:16},{default:ue(()=>[se(_(UO))]),_:1})]),_:1})]),default:ue(()=>[(N(),oe($e,null,zt(["Newest","Oldest"],m=>ne("div",{key:m,onClick:()=>_(i).sortBy=m,class:ce(`el-select-dropdown__item ${_(i).sortBy===m?"selected":""}`)},Ee(m),11,wY)),64))]),_:1}),se(_(Du),{placement:"bottom",title:"Filter By",trigger:"click",width:240,transition:"none","hide-after":0},{reference:ue(()=>[se(_(Je),{class:"btn-select"},{default:ue(()=>[se(_(De),{size:16},{default:ue(()=>[se(_(pO))]),_:1})]),_:1})]),default:ue(()=>[(N(),oe($e,null,zt(["all","favourited","unfavourited","unrated"],m=>ne("div",{key:m,onClick:()=>_(i).filterBy=m,class:ce(`el-select-dropdown__item ${_(i).filterBy===m?"selected":""}`)},Ee(_(i).filterBy===m?"Showing":"Show")+" "+Ee(m),11,SY)),64))]),_:1}),se(_(Du),{placement:"bottom",title:"Image Layout",trigger:"click",width:240,transition:"none","hide-after":0},{reference:ue(()=>[se(_(Je),{class:"btn-select"},{default:ue(()=>[se(_(De),{size:16},{default:ue(()=>[se(bY)]),_:1})]),_:1})]),default:ue(()=>[(N(),oe($e,null,zt([{label:"Square Grid",value:"grid"},{label:"Dynamic Layout",value:"dynamic"}],m=>ne("div",{key:m.value,onClick:()=>_(i).currentLayout=m.value,class:ce(`el-select-dropdown__item ${_(i).currentLayout===m.value?"selected":""}`)},Ee(m.label),11,CY)),64))]),_:1}),se(_(Du),{placement:"bottom",title:"Selection",trigger:"click",width:240,transition:"none","hide-after":0},{reference:ue(()=>[se(_(Je),{class:"btn-select"},{default:ue(()=>[se(_(De),{size:16},{default:ue(()=>[_(p).multiSelect?(N(),ve(_(M1),{key:0})):(N(),ve(_(eu),{key:1}))]),_:1})]),_:1})]),default:ue(()=>[_(p).multiSelect?(N(),oe("div",{key:0,class:"el-select-dropdown__item selected",onClick:g[0]||(g[0]=(...m)=>_(p).toggleMultiSelect&&_(p).toggleMultiSelect(...m))},"Disable multi-select")):(N(),oe("div",{key:1,class:"el-select-dropdown__item",onClick:g[1]||(g[1]=(...m)=>_(p).toggleMultiSelect&&_(p).toggleMultiSelect(...m))},"Enable multi-select")),_(p).selected.length>0?(N(),oe("div",{key:2,class:"el-select-dropdown__item selected",onClick:h},"Deselect All")):(N(),oe("div",{key:3,class:"el-select-dropdown__item",onClick:a},"Select All")),_(p).selected.every(m=>!_(i).currentOutputs.map(v=>v.id).includes(m))?(N(),oe("div",{key:5,class:"el-select-dropdown__item",onClick:o},"Select Page")):(N(),oe("div",{key:4,class:"el-select-dropdown__item selected",onClick:l},"Deselect Page"))]),_:1})]),_(u).pageless==="Disabled"?(N(),ve(_(IN),{key:0,layout:"prev, pager, next",total:_(i).outputsLength,"page-size":_(u).pageSize,"current-page":_(i).currentPage,"onUpdate:currentPage":g[2]||(g[2]=m=>_(i).currentPage=m),"hide-on-single-page":""},null,8,["total","page-size","current-page"])):ge("",!0),_(p).multiSelect?(N(),oe("div",xY,[ne("div",null,Ee(_(p).selected.length)+" selected",1),se(_(Je),{type:"danger",onClick:c,icon:_(Ki),plain:""},{default:ue(()=>[...g[3]||(g[3]=[ze("Delete",-1)])]),_:1},8,["icon"]),se(_(Je),{type:"success",onClick:f,icon:_(bl),plain:"",style:{margin:"0"}},{default:ue(()=>[...g[4]||(g[4]=[ze("Download",-1)])]),_:1},8,["icon"])])):(N(),oe("div",TY,[...g[5]||(g[5]=[ne("em",{style:{"font-size":"14px"}},"(long press to select multiple images)",-1)])]))],2),_(i).outputsLength!=0?(N(),oe("div",kY,[_(i).currentLayout==="dynamic"?(N(),oe("div",EY,[(N(!0),oe($e,null,zt(s.value,(m,v)=>(N(),oe("div",{key:v,style:{flex:"1 1 0%"}},[(N(!0),oe($e,null,zt(m,y=>(N(),ve($b,{key:y.id,"image-data":y,style:{"margin-bottom":"8px"}},null,8,["image-data"]))),128))]))),128))])):ge("",!0),_(i).currentLayout==="grid"?(N(),oe("div",OY,[(N(!0),oe($e,null,zt(_(i).currentOutputs,m=>(N(),ve($b,{key:m.id,"image-data":m,style:{width:"200px",height:"200px"}},null,8,["image-data"]))),128))])):ge("",!0)])):ge("",!0),_(i).outputsLength==0?(N(),oe("div",AY,[se(_(YF),{description:"No Images Found"})])):ge("",!0)],64))}}),IY=on(PY,[["__scopeId","data-v-b39b47c5"]]),MY=Object.freeze(Object.defineProperty({__proto__:null,default:IY},Symbol.toStringTag,{value:"Module"})),LY=["href"],RY=be({__name:"BaseLink",props:{href:{},router:{type:Boolean}},setup(e){return(t,n)=>{const r=bt("router-link");return N(),oe($e,null,[t.router?ge("",!0):(N(),oe("a",{key:0,target:"_blank",rel:"noreferrer noopener",href:t.href},[ke(t.$slots,"default",{},void 0,!0)],8,LY)),t.router?(N(),ve(r,{key:1,to:t.href},{default:ue(()=>[ke(t.$slots,"default",{},void 0,!0)]),_:3},8,["to"])):ge("",!0)],64)}}}),DY=on(RY,[["__scopeId","data-v-17b53b7d"]]),FY={class:"about"},BY={class:"about-content"},$Y=be({__name:"AboutView",setup(e){return(t,n)=>(N(),oe("div",FY,[ne("div",BY,[n[2]||(n[2]=ne("h1",{style:{"margin-top":"0"}},"Stable UI",-1)),n[3]||(n[3]=ne("div",null,[ze("This tool was originally a front-end for the AI Horde and has since been converted for local generations with the A1111 API, such as in "),ne("a",{href:"https://github.com/LostRuins/koboldcpp"},"KoboldCpp"),ze(".")],-1)),n[4]||(n[4]=ne("br",null,null,-1)),n[5]||(n[5]=ne("div",null,"If you want to help improve this tool, you can find the currently maintained source code from this modified version on https://github.com/LostRuins/stable-ui and https://github.com/henk717/stable-ui, which is based off https://github.com/ayunami2000/stable-ui, which derives from the original AI Horde version on https://github.com/aqualxx/stable-ui (Original author aqualxx#5004). Feel free to contribute!",-1)),n[6]||(n[6]=ne("br",null,null,-1)),ne("div",null,[n[1]||(n[1]=ze("You can find the KoboldAI community and authors of this fork on the ",-1)),se(DY,{href:"https://koboldai.org/discord"},{default:ue(()=>[...n[0]||(n[0]=[ze("KoboldAI Discord",-1)])]),_:1})])])]))}}),NY=on($Y,[["__scopeId","data-v-ecc278c5"]]),zY=Object.freeze(Object.defineProperty({__proto__:null,default:NY},Symbol.toStringTag,{value:"Module"})),Fi=be({__name:"FormRadio",props:{label:{},modelValue:{},prop:{},useBoolean:{type:Boolean},options:{},disabled:{type:Boolean},info:{},labelStyle:{},change:{type:Function}},emits:["update:modelValue"],setup(e,{emit:t}){const n=e,r=t;function i(p){if(n.useBoolean&&p==="Enabled"?r("update:modelValue",!0):n.useBoolean&&p==="Disabled"?r("update:modelValue",!1):r("update:modelValue",p),!!n.change)return n.useBoolean&&p==="Enabled"?n.change(!0):n.useBoolean&&p==="Disabled"?n.change(!1):n.change(p)}const u=ee(()=>n.useBoolean?n.modelValue===!0?"Enabled":n.modelValue===!1?"Disabled":n.modelValue:n.modelValue);return(p,o)=>(N(),ve(_(ea),{prop:p.prop},{label:ue(()=>[se(hu,{info:p.info,"label-style":p.labelStyle},{default:ue(()=>[ke(p.$slots,"label",{},()=>[ze(Ee(p.label),1)])]),_:3},8,["info","label-style"])]),default:ue(()=>[se(_(jR),{disabled:p.disabled,"model-value":u.value,onChange:i},{default:ue(()=>[(N(!0),oe($e,null,zt(p.options,a=>(N(),ve(_(VR),{key:a,label:a},null,8,["label"]))),128))]),_:1},8,["disabled","model-value"]),ke(p.$slots,"inline")]),_:3},8,["prop"]))}}),jY=be({__name:"OptionsView",setup(e){const t=Ft(),n=Qa(),r=Jt(),i=[{value:"dark",label:"Dark"},{value:"light",label:"Light"},{value:"auto",label:"Auto"}],u=ae([]),p=ae(),o=ae(!1),a=ae(0);async function l(c){n.importFromZip(c),p.value.clearFiles()}async function h(){la({message:`Downloading ${n.outputsLength} image(s)... (this may take a while)`,type:"info"}),o.value=!0,a.value=0;const c=await Yt.outputs.toCollection().primaryKeys();await XS(c,!1,()=>{a.value++}),o.value=!1,a.value=0}return(c,f)=>(N(),oe($e,null,[f[19]||(f[19]=ne("h1",null,"Options",-1)),se(_(Am),{"label-position":"top",model:_(t).options,onSubmit:f[13]||(f[13]=Qe(()=>{},["prevent"]))},{default:ue(()=>[se(_(tj),{type:"border-card",style:{"min-height":"50vh"}},{default:ue(()=>[se(_(kd),{label:"\u{1F5A8}\uFE0F Generation"},{default:ue(()=>[f[14]||(f[14]=ne("h2",null,"Generation Options",-1)),se(_(ea),{label:"Base URL"},{default:ue(()=>[se(_(uo),{class:"apikey",prop:"baseURL",modelValue:_(t).baseURL,"onUpdate:modelValue":f[1]||(f[1]=s=>_(t).baseURL=s)},{append:ue(()=>[se(_(fn),{content:"Invalidate all cached information for this server (LoRAs, samplers, schedulers, ...)",placement:"top"},{default:ue(()=>[se(_(Je),{icon:_(yh),onClick:f[0]||(f[0]=s=>_(r).invalidateApiCaches())},null,8,["icon"])]),_:1})]),_:1},8,["modelValue"])]),_:1}),f[15]||(f[15]=ne("h3",null,"Parameter Controls",-1)),(N(!0),oe($e,null,zt(_(r).multiSelect,(s,d)=>{var g;return N(),oe("div",{key:d},[se(Fi,{label:s.name,prop:"pageless",modelValue:s.state,"onUpdate:modelValue":m=>s.state=m,options:(g=s.allowedStates)!=null?g:[]},null,8,["label","modelValue","onUpdate:modelValue","options"])])}),128)),se(Fi,{label:"Allow Larger Params",prop:"pageless",modelValue:_(t).allowLargerParams,"onUpdate:modelValue":f[2]||(f[2]=s=>_(t).allowLargerParams=s),options:["Enabled","Disabled"]},null,8,["modelValue"]),se(Fi,{label:"Keep generation on disconnect",prop:"keepImageGenOnDisconnect",modelValue:_(t).keepImageGenOnDisconnect,"onUpdate:modelValue":f[3]||(f[3]=s=>_(t).keepImageGenOnDisconnect=s),options:["Enabled","Disabled"],info:"By default, a client disconnect or an abort action causes the ongoing generation to be interrupted as soon as possible and discarded. Enabling this option overrides that behavior, allowing the generation to finish, and making the image available to be downloaded by the UI when ready."},null,8,["modelValue"]),se(Fi,{label:"Fetch generation progres",prop:"fetchGenerationProgress",modelValue:_(t).fetchGenerationProgress,"onUpdate:modelValue":f[4]||(f[4]=s=>_(t).fetchGenerationProgress=s),options:["Off","Text","Image"],info:"Off: no progress polling. Text: fetch textual progress info only. Image: fetch textual info and live image preview."},null,8,["modelValue"]),se(Lo,{label:"Image Resize Mode",prop:"imageResizeMode",modelValue:_(t).imageResizeMode,"onUpdate:modelValue":f[5]||(f[5]=s=>_(t).imageResizeMode=s),options:[{label:"No Scale",value:"NoScale"},{label:"Scale and Crop",value:"ScaleAndCrop"},{label:"Scale and Pad",value:"ScaleAndPad"},{label:"Stretch",value:"Stretch"},{label:"Original",value:"Original"}],info:"How to adapt input image dimensions to the requested image size. No Scale: do not scale, just crop or pad each dimension to fit (default behavior). Scale and Crop: scale to match the smaller dimension, preserving aspect ratio, then crop to fit. Scale and Pad: scale to match the larger dimension, preserving aspect ratio, then pad to fit. Stretch: stretch both dimensions to fit, possibly not preserving aspect ratio. Original: send the input image as-is to the server, with no scaling, cropping or padding."},null,8,["modelValue"]),se(Fi,{label:"Video Gen: Request AVI download",prop:"pageless",modelValue:_(t).alsoRequestAvi,"onUpdate:modelValue":f[6]||(f[6]=s=>_(t).alsoRequestAvi=s),options:["Enabled","Disabled"]},null,8,["modelValue"])]),_:1}),se(_(kd),{label:"\u{1F4F7} Images"},{default:ue(()=>[f[17]||(f[17]=ne("h2",null,"Image Options",-1)),se(yn,{label:"Images Per Page",prop:"pageSize",modelValue:_(t).pageSize,"onUpdate:modelValue":f[7]||(f[7]=s=>_(t).pageSize=s),min:10,max:50,step:5,disabled:_(t).pageless==="Enabled"},null,8,["modelValue","disabled"]),se(Fi,{label:"Pageless Format",prop:"pageless",modelValue:_(t).pageless,"onUpdate:modelValue":f[8]||(f[8]=s=>_(t).pageless=s),options:["Enabled","Disabled"]},null,8,["modelValue"]),se(Fi,{label:"Carousel Auto Cycle",prop:"autoCarousel",modelValue:_(t).autoCarousel,"onUpdate:modelValue":f[9]||(f[9]=s=>_(t).autoCarousel=s),options:["Enabled","Disabled"]},null,8,["modelValue"]),se(Fi,{label:"Image Download Format",prop:"downloadType",modelValue:_(t).imageDownloadType,"onUpdate:modelValue":f[10]||(f[10]=s=>_(t).imageDownloadType=s),options:["PNG","JPG","WEBP","GIF"]},null,8,["modelValue"]),se(_(ea),{label:"Export Images (ZIP File)"},{default:ue(()=>[o.value?(N(),ve(_(Je),{key:1,icon:_(bl),disabled:""},{default:ue(()=>[ze("Downloading... ("+Ee(a.value)+" / "+Ee(_(n).outputsLength)+" image(s))",1)]),_:1},8,["icon"])):(N(),ve(_(Je),{key:0,icon:_(bl),onClick:f[11]||(f[11]=s=>h())},{default:ue(()=>[ze("Download "+Ee(_(n).outputsLength)+" image(s)",1)]),_:1},8,["icon"]))]),_:1}),se(_(ea),{label:"Import Images (ZIP File)"},{default:ue(()=>[se(_(Dm),{drag:"",ref_key:"upload",ref:p,"auto-upload":!1,onChange:l,"file-list":u.value,limit:1,multiple:""},{default:ue(()=>[se(_(De),{size:100},{default:ue(()=>[se(_(Qp))]),_:1}),f[16]||(f[16]=ne("div",null,[ze("Drop file here OR "),ne("em",null,"click to upload")],-1))]),_:1},8,["file-list"])]),_:1})]),_:1}),se(_(kd),{label:"\u2699\uFE0F General"},{default:ue(()=>[f[18]||(f[18]=ne("h2",null,"General Options",-1)),se(Lo,{label:"Color Scheme",prop:"colorScheme",modelValue:_(t).options.colorMode,"onUpdate:modelValue":f[12]||(f[12]=s=>_(t).options.colorMode=s),options:i},null,8,["modelValue"])]),_:1})]),_:1})]),_:1},8,["model"])],64))}}),VY=on(jY,[["__scopeId","data-v-679e7af1"]]),UY=Object.freeze(Object.defineProperty({__proto__:null,default:VY},Symbol.toStringTag,{value:"Module"}))});export default HY(); +`&&d>0?(c=0,f++,h++):!this.splitByGrapheme&&this._reSpaceAndTab.test(l.graphemeText[f])&&d>0&&(c++,f++),s[d]={line:h,offset:c},f+=l.graphemeLines[d].length,c+=l.graphemeLines[d].length;return s},styleHas:function(l,h){if(this._styleMap&&!this.isWrapping){var c=this._styleMap[h];c&&(h=c.line)}return a.Text.prototype.styleHas.call(this,l,h)},isEmptyStyles:function(l){if(!this.styles)return!0;var h=0,c=l+1,f,s,d=!1,g=this._styleMap[l],m=this._styleMap[l+1];g&&(l=g.line,h=g.offset),m&&(c=m.line,d=c===l,f=m.offset),s=typeof l>"u"?this.styles:{line:this.styles[l]};for(var v in s)for(var y in s[v])if(y>=h&&(!d||yc&&!k?(g.push(m),m=[],s=S,k=!0):s+=A,!k&&!d&&m.push(w),m=m.concat(y),C=d?0:this._measureWord([w],h,b),b++,k=!1,S>T&&(T=S);return z&&g.push(m),T+P>this.dynamicMinWidth&&(this.dynamicMinWidth=T-A+P),g},isEndOfWrapping:function(l){return!this._styleMap[l+1]||this._styleMap[l+1].line!==this._styleMap[l].line},missingNewlineOffset:function(l,h){return this.splitByGrapheme&&!h?this.isEndOfWrapping(l)?1:0:1},_splitTextIntoLines:function(l){for(var h=a.Text.prototype._splitTextIntoLines.call(this,l),c=this._wrapText(h.lines,this.width),f=new Array(c.length),s=0;si.onload=p),n.width=i.width,n.height=i.height,r==null||r.drawImage(i,0,0),n.toDataURL(t)}async function eU(e,t){const n=e.split(";base64,"),r=t!=null?t:n[0].split(":")[1],i=window.atob(r===n[0].split(":")[1]?n[1]:(await Q7(e,r)).split(",")[1]),u=new Uint8Array(i.length);for(let p=0;p{const r=new FileReader;r.onload=()=>t(r.result),r.onerror=i=>n(i),r.readAsDataURL(e)})}"stream"in Blob.prototype||Object.defineProperty(Blob.prototype,"stream",{value(){return new Response(this).body}});var $f=e=>new DataView(new ArrayBuffer(e)),fo=e=>new Uint8Array(e.buffer||e),Ro=e=>new TextEncoder().encode(String(e));function tU(e,t,n=436){if(t===void 0||t instanceof Date||(t=new Date(t)),e instanceof File)return{t:t||new Date(e.lastModified),bytes:e.stream(),mode:n};if(e instanceof Response)return{t:t||new Date(e.headers.get("Last-Modified")||Date.now()),bytes:e.body,mode:n};if(t===void 0)t=new Date;else if(isNaN(t))throw new Error("Invalid modification date.");if(typeof e=="string")return{t,bytes:Ro(e),mode:n};if(e instanceof Blob)return{t,bytes:e.stream(),mode:n};if(e instanceof Uint8Array||e instanceof ReadableStream)return{t,bytes:e,mode:n};if(e instanceof ArrayBuffer||ArrayBuffer.isView(e))return{t,bytes:fo(e),mode:n};if(Symbol.asyncIterator in e)return{t,bytes:HS(e[Symbol.asyncIterator]()),mode:n};throw new TypeError("Unsupported input format.")}function HS(e,t=e){return new ReadableStream({async pull(n){let r=0;for(;n.desiredSize>r;){const i=await e.next();if(!i.value){n.close();break}{const u=nU(i.value);n.enqueue(u),r+=u.byteLength}}},cancel(n){var r;(r=t.throw)==null||r.call(t,n)}})}function nU(e){return typeof e=="string"?Ro(e):e instanceof Uint8Array?e:fo(e)}function WS(e,t,n){let[r,i]=function(u){return u?u instanceof Uint8Array?[u,1]:ArrayBuffer.isView(u)||u instanceof ArrayBuffer?[fo(u),1]:[Ro(u),0]:[void 0,0]}(t);if(e instanceof File)return{o:$d(r||Ro(e.name)),i:e.size,u:i};if(e instanceof Response){const u=e.headers.get("content-disposition"),p=u&&u.match(/;\s*filename\*?\s*=\s*(?:UTF-\d+''|)["']?([^;"'\r\n]*)["']?(?:;|$)/i),o=p&&p[1]||e.url&&new URL(e.url).pathname.split("/").findLast(Boolean),a=o&&decodeURIComponent(o),l=n||+e.headers.get("content-length");return{o:$d(r||Ro(a)),i:l,u:i}}return r=$d(r),typeof e=="string"?{o:r,i:Ro(e).length,u:i}:e instanceof Blob?{o:r,i:e.size,u:i}:e instanceof ArrayBuffer||ArrayBuffer.isView(e)?{o:r,i:e.byteLength,u:i}:{o:r,i:rU(e,n),u:i}}function rU(e,t){return t>-1?t:e?void 0:0}function $d(e){if(!e||e.every(t=>t===47))throw new Error("The file must have a name.");for(;e[e.length-1]===47;)e=e.subarray(0,-1);return e}var GS=new Uint32Array(256);for(let e=0;e<256;++e){let t=e;for(let n=0;n<8;++n)t=t>>>1^(1&t&&3988292384);GS[e]=t}function Yy(e,t=0){t=~t;for(var n=0,r=e.length;n>>8^GS[255&t^e[n]];return~t>>>0}function YS(e,t,n=0){const r=e.getSeconds()>>1|e.getMinutes()<<5|e.getHours()<<11,i=e.getDate()|e.getMonth()+1<<5|e.getFullYear()-1980<<9;t.setUint16(n,r,1),t.setUint16(n+2,i,1)}function iU({o:e,u:t},n){return 8*(!t||(n!=null?n:function(r){try{aU.decode(r)}catch{return 0}return 1}(e)))}var aU=new TextDecoder("utf8",{fatal:1});function oU(e,t=0){const n=$f(30);return n.setUint32(0,1347093252),n.setUint32(4,335546368|t),YS(e.t,n,10),n.setUint16(26,e.o.length,1),fo(n)}async function*sU(e){let{bytes:t}=e;if("then"in t&&(t=await t),t instanceof Uint8Array)yield t,e.l=Yy(t,0),e.i=t.length;else{e.i=0;const n=t.getReader();for(;;){const{value:r,done:i}=await n.read();if(i)break;e.l=Yy(r,e.l),e.i+=r.length,yield r}}}function lU(e){const t=$f(16);return t.setUint32(0,1347094280),t.setUint32(4,e.l,1),t.setUint32(8,e.i,1),t.setUint32(12,e.i,1),fo(t)}function uU(e,t,n=0){const r=$f(46);return r.setUint32(0,1347092738),r.setUint32(4,352523264),r.setUint16(8,2048|n),YS(e.t,r,12),r.setUint32(16,e.l,1),r.setUint32(20,e.i,1),r.setUint32(24,e.i,1),r.setUint16(28,e.o.length,1),r.setUint16(40,32768|e.mode,1),r.setUint32(42,t,1),fo(r)}function KS(e){return e instanceof File||e instanceof Response?[[e],[e]]:[[e.input,e.name,e.size],[e.input,e.lastModified,e.mode]]}var cU=e=>function(t){var n;let r=22;for(const i of t){if(!i.o)throw new Error("Every file must have a non-empty name.");if(isNaN((n=i.i)!=null?n:NaN))throw new Error(`Missing size for file "${new TextDecoder().decode(i.o)}".`);r+=2*i.o.length+i.i+92}return r}(function*(t){for(const n of t)yield WS(...KS(n)[0])}(e));function fU(e,t={}){const n={"Content-Type":"application/zip","Content-Disposition":"attachment"};Number.isInteger(t.length)&&t.length>0&&(n["Content-Length"]=t.length),t.metadata&&(n["Content-Length"]=cU(t.metadata));const r=function(i){var u;const p=i[Symbol.iterator in i?Symbol.iterator:Symbol.asyncIterator]();return{async next(){const o=await p.next();if(o.done)return o;const[a,l]=KS(o.value);return{done:0,value:Object.assign(tU(...l),WS(...a))}},throw:(u=p.throw)==null?void 0:u.bind(p),[Symbol.asyncIterator](){return this}}}(e);return new Response(HS(async function*(i,u){const p=[];let o=0,a=0;for await(const c of i){const f=iU(c,u.buffersAreUTF8);yield oU(c,f),yield new Uint8Array(c.o),yield*sU(c),yield lU(c),p.push(uU(c,o,f)),p.push(c.o),a++,o+=46+c.o.length+c.i}let l=0;for(const c of p)yield c,l+=c.length;const h=$f(22);h.setUint32(0,1347093766),h.setUint16(8,a,1),h.setUint16(10,a,1),h.setUint32(12,l,1),h.setUint32(16,o,1),yield fo(h)}(r,t),r),{headers:n})}async function XS(e,t=!0,n){const r=Ft();t&&la({message:`Downloading ${e.length} image(s)...`,type:"info"});const i=[];for(let o=0;o]/g,"").substring(0,128).trimEnd();let s=r.imageDownloadType;l.startsWith("data:image/gif")&&(s="GIF"),s==="PNG"?i.push({name:f+".png",input:await Fa(l,"image/png")}):s==="JPG"?i.push({name:f+".jpg",input:await Fa(l,"image/jpeg")}):s==="GIF"?i.push({name:f+".gif",input:await Fa(l,"image/gif")}):i.push({name:f+".webp",input:await Fa(l,"image/webp")}),i.push({name:f+".json",input:JSON.stringify(c,void 0,4)}),n&&n()}const u=await fU(i).blob(),p=document.createElement("a");p.href=URL.createObjectURL(u),p.download="sdui_images.zip",p.click()}async function ag(e,t){const n=Ft(),r=document.createElement("a");let i,u=n.imageDownloadType;e.startsWith("data:image/gif")&&(u="GIF"),u==="PNG"?(i=await Fa(e,"image/png"),r.href=URL.createObjectURL(i),r.download=t.replace(/[/\\:*?"<>]/g,"").substring(0,128).trimEnd()+".png"):u==="JPG"?(i=await Fa(e,"image/jpeg"),r.href=URL.createObjectURL(i),r.download=t.replace(/[/\\:*?"<>]/g,"").substring(0,128).trimEnd()+".jpg"):u==="GIF"?(i=await Fa(e,"image/gif"),r.href=URL.createObjectURL(i),r.download=t.replace(/[/\\:*?"<>]/g,"").substring(0,128).trimEnd()+".gif"):(r.href=e,r.download=t.replace(/[/\\:*?"<>]/g,"").substring(0,128).trimEnd()+".webp"),r.click(),i&&URL.revokeObjectURL(r.href)}function qS(e,t){const n=e;if(!n)return;const r=atob(n),i=r.length,u=new Uint8Array(i);for(let l=0;l{const e=()=>({canvas:void 0,brush:void 0,visibleImageLayer:void 0,imageLayer:void 0,visibleDrawLayer:void 0,drawLayer:void 0,cropPreviewLayer:void 0,maskPathColor:"",maskBackgroundColor:"",imageScale:1,undoHistory:[],redoHistory:[],drawing:!1}),t=ae({...e(),maskPathColor:"white",maskBackgroundColor:"black"}),n=ae({...e(),maskPathColor:"black",maskBackgroundColor:"white"}),r=ee(()=>Jt().generatorType==="Inpainting"),i=ee(()=>r.value?t.value:n.value),u=ee(()=>Jt().currentImageProps),p=ee({get:()=>i.value.drawing&&!r.value,set:G=>i.value.drawing=G}),o=ae(512),a=ae(512),l=ae(!1),h=ae(30),c=ae(!1),f=new ur.fabric.Circle({radius:h.value,left:0,originX:"center",originY:"center",angle:0,fill:"",stroke:"red",strokeWidth:3,opacity:0}),s=ae("Erase"),d=ae("rgb(0, 0, 0, 1)");function g(){!i.value.canvas||i.value.canvas.renderAll()}function m(){l.value=!l.value,s.value=l.value?"Draw":"Erase"}function v(G=null){!i.value.canvas||(i.value.brush=i.value.canvas.freeDrawingBrush,i.value.brush.color=G||i.value.brush.color,i.value.brush.width=h.value)}async function y({history:G,erase:D=!1,draw:B=!1}={}){if(!G||!i.value.drawLayer||!i.value.visibleDrawLayer||!i.value.imageLayer||!i.value.visibleImageLayer||!i.value.canvas)return;G.path.selectable=!1,G.path.opacity=1,G.drawPath=await V(G.path),G.visibleDrawPath=await V(G.path),D?(G.visibleDrawPath.globalCompositeOperation="destination-out",G.drawPath.stroke=i.value.maskBackgroundColor):(G.visibleDrawPath.globalCompositeOperation="source-over",G.drawPath.stroke=B?d.value:i.value.maskPathColor);let Z=await V(G.drawPath);Z=Z.scale(i.value.imageScale),Z.left=Z.left+G.drawPath.left*(i.value.imageScale-1),Z.top=Z.top+G.drawPath.top*(i.value.imageScale-1),B?(i.value.imageLayer.add(Z),i.value.visibleImageLayer.addWithUpdate(G.visibleDrawPath)):(i.value.drawLayer.add(Z),i.value.visibleDrawLayer.addWithUpdate(G.visibleDrawPath)),i.value.canvas.remove(G.path),g()}function b(){if(i.value.undoHistory.length===0)return;const G=i.value.undoHistory.pop();y({history:G,erase:!1,draw:p.value}),i.value.redoHistory.push(G)}function w(){if(i.value.redoHistory.length===0||!i.value.drawLayer||!i.value.visibleDrawLayer||!i.value.imageLayer||!i.value.visibleImageLayer||!i.value.canvas)return;const G=i.value.redoHistory.pop();i.value.undoHistory.push(G),p.value?(i.value.imageLayer.remove(G.drawPath),i.value.visibleImageLayer.remove(G.visibleDrawPath)):(i.value.drawLayer.remove(G.drawPath),i.value.visibleDrawLayer.remove(G.visibleDrawPath)),delete G.drawPath,delete G.visibleDrawPath,g()}function S(G){i.value.canvas=new ur.fabric.Canvas(G,{isDrawingMode:!1,width:o.value,height:a.value,backgroundColor:"white"}),i.value.canvas.selection=!1,i.value.canvas.freeDrawingCursor="crosshair",v(i.value.maskPathColor),i.value.canvas.on("mouse:move",R),i.value.canvas.on("path:created",M),g()}function C(G,D,B,Z){let H=Z,Q=Z;return D>B?(G.scaleToWidth(Z),H=Z*(a.value/o.value)):(G.scaleToHeight(Z),Q=Z*(o.value/a.value)),{newHeight:H,newWidth:Q}}function T(G){const D=Jt();if(re(),G.selectable=!1,o.value=G.width,a.value=G.height,o.value>D.maxDimensions||a.value>D.maxDimensions){const{newHeight:Q,newWidth:te}=C(G,o.value,a.value,D.maxDimensions);o.value=te,a.value=Q}if(o.value{i.value.imageLayer=$({image:Q,layerHeight:H,layerWidth:Z})}),G.cloneAsImage(Q=>{if(!i.value.canvas)return;if(o.value!==B||a.value!==B){const{newHeight:me,newWidth:_e}=C(Q,o.value,a.value,B);o.value=_e,a.value=me}i.value.canvas.setWidth(o.value),i.value.canvas.setHeight(a.value),i.value.canvas.isDrawingMode=!0,i.value.visibleDrawLayer=Y(),i.value.visibleImageLayer=Y({image:Q}),i.value.drawLayer=$({layerHeight:H,layerWidth:Z});const te=o.value*i.value.imageScale,fe=a.value*i.value.imageScale;D.params.width=te-te%64,D.params.height=fe-fe%64,i.value.visibleDrawLayer.set("opacity",.8),i.value.canvas.add(i.value.visibleImageLayer),i.value.canvas.add(i.value.visibleDrawLayer),i.value.canvas.add(f),c.value=!0,z(),A()})}function k(G,D,B,Z,H,Q){const te=Q?Q.width:G.width,fe=Q?Q.height:G.height;if(H==="Original")return G;const me=document.createElement("canvas");me.width=D,me.height=B;const _e=me.getContext("2d");_e.fillStyle=Z,_e.fillRect(0,0,me.width,me.height);let j=0,x=0,U=G.width,K=G.height,L=0,F=0,X=me.width,de=me.height;switch(H){case"Stretch":break;case"ScaleAndCrop":{const le=me.width/te,W=me.height/fe;le>W?(K=me.height/le,x=(G.height-K)/2):(U=me.width/W,j=(G.width-U)/2);break}case"ScaleAndPad":{const le=me.width/te,W=me.height/fe;leD?(U=D,j=le-D/2):(X=te,L=D/2-le),fe>B?(K=B,x=W-B/2):(de=fe,F=B/2-W);break}}return _e.drawImage(G,j,x,U,K,L,F,X,de),me}function A(){const G=Jt(),D=Ft();if(!i.value.imageLayer||!i.value.drawLayer)return;const B=G.params.width,Z=G.params.height,H=i.value.imageLayer.backgroundColor||"#FFFFFF",Q=D.imageResizeMode,te=i.value.imageLayer.toCanvasElement(),fe=k(te,B,Z,H,Q,te);if(u.value.sourceImage=fe.toDataURL("image/jpeg",1),u.value.maskImage=void 0,i.value.redoHistory.length>0&&!p.value){const _e=i.value.drawLayer.toCanvasElement(),j=k(_e,B,Z,H,Q,te);u.value.maskImage=j.toDataURL("image/jpeg",1).split(",")[1]}}let P;function z(){if(!i.value.canvas)return;const G=Jt();i.value.cropPreviewLayer&&(i.value.canvas.remove(i.value.cropPreviewLayer),i.value.cropPreviewLayer=void 0),c.value&&(i.value.cropPreviewLayer=Y({layerWidth:G.params.width/i.value.imageScale,layerHeight:G.params.height/i.value.imageScale,fill:"rgba(100, 0, 0, 0.5)"}),i.value.canvas.centerObject(i.value.cropPreviewLayer),i.value.canvas.add(i.value.cropPreviewLayer),P&&clearTimeout(P),P=setTimeout(()=>{c.value=!1,z(),P=void 0},5e3))}function I(G,D){const B="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAAAXNSR0IArs4c6QAAAA1JREFUGFdj+P///38ACfsD/QVDRcoAAAAASUVORK5CYII=";ur.fabric.Image.fromURL(B,Z=>{Z.set({height:G,width:D});const H=Z.toDataURL({format:"png"});u.value.sourceImage=H,p.value=!0,T(Z)})}function $({image:G,layerWidth:D,layerHeight:B}={}){const Z=new ur.fabric.Canvas(null);return Z.selection=!1,Z.backgroundColor=i.value.maskBackgroundColor,Z.setHeight(B||a.value),Z.setWidth(D||o.value),G&&Z.add(G),Z}function O(){return i.value.imageLayer?{layerHeight:i.value.imageLayer.getHeight(),layerWidth:i.value.imageLayer.getWidth()}:{}}function Y({image:G,layerWidth:D,layerHeight:B,fill:Z,abosolute:H}={}){const Q=G||new ur.fabric.Rect({width:D||o.value,height:B||a.value,left:0,top:0,fill:Z||"transparent",absolutePositioned:H||!0,selectable:!1});return new ur.fabric.Group([Q],{selectable:!1,absolutePositioned:H||!0})}function re(){!i.value.canvas||(i.value.visibleImageLayer&&(i.value.canvas.remove(i.value.visibleImageLayer),i.value.visibleImageLayer=void 0),i.value.visibleDrawLayer&&(i.value.canvas.remove(i.value.visibleDrawLayer),i.value.visibleDrawLayer=void 0),i.value.imageLayer=void 0,i.value.drawLayer=void 0,i.value.redoHistory=[],i.value.undoHistory=[],i.value.canvas.isDrawingMode=!1)}function q(){if(!!i.value.canvas){if(i.value.visibleDrawLayer&&(i.value.canvas.remove(i.value.visibleDrawLayer),i.value.visibleDrawLayer=void 0),p.value){const G=Jt();I(G.params.height||512,G.params.width||512)}i.value.drawLayer=void 0,i.value.redoHistory=[],i.value.undoHistory=[],i.value.visibleDrawLayer=Y(),i.value.drawLayer=$(O()),i.value.visibleDrawLayer.set("opacity",.8),i.value.canvas.add(i.value.visibleDrawLayer)}}function J(){var D;A();const G=document.createElement("a");if(p.value){G.href="data:image/png;base64,"+((D=u.value.sourceImage)==null?void 0:D.split(",")[1]),G.download="image_drawing.png",G.click();return}G.href="data:image/png;base64,"+u.value.maskImage,G.download="image_mask.png",G.click()}function E(){A();const G=Jt(),D=u.value.sourceImage;!D||ag(D,`${G.generatorType.toLowerCase()}-reference`)}async function V(G){return new Promise((D,B)=>{try{G.clone(D)}catch(Z){B(Z)}})}async function M(G){const D={path:G.path};y({history:D,erase:l.value,draw:p.value}),i.value.redoHistory.push(D)}function R(G){if(!i.value.canvas)return;const D=i.value.canvas.getPointer(G.e);f.left=D.x,f.top=D.y,f.opacity=.8,l.value?(f.set("strokeWidth",3),f.set("fill",""),v("red")):(f.set("strokeWidth",0),p.value?(f.set("fill",d.value),v(d.value)):(f.set("fill","white"),v("white"))),f.set("radius",h.value/2),g()}return{showCropPreview:c,erasing:l,switchToolText:s,brushSize:h,drawColor:d,drawing:p,imageProps:i,updateCropPreview:z,createNewCanvas:S,downloadMask:J,downloadSourceImage:E,resetCanvas:re,resetDrawing:q,flipErase:m,undoAction:w,redoAction:b,newImage:T,newBlankImage:I,setBrush:v,saveImages:A}}),dU={},hU={xmlns:"http://www.w3.org/2000/svg","xmlns:xlink":"http://www.w3.org/1999/xlink",viewBox:"0 0 20 20"};function pU(e,t){return N(),oe("svg",hU,[...t[0]||(t[0]=[ne("g",{fill:"none"},[ne("path",{d:"M11.197 2.44a1.5 1.5 0 0 1 2.121 0l4.243 4.242a1.5 1.5 0 0 1 0 2.121L9.364 17H14.5a.5.5 0 0 1 0 1H7.82a1.496 1.496 0 0 1-1.14-.437L2.437 13.32a1.5 1.5 0 0 1 0-2.121l8.76-8.76zm1.414.706a.5.5 0 0 0-.707 0L5.538 9.512l4.95 4.95l6.366-6.366a.5.5 0 0 0 0-.707L12.61 3.146zM9.781 15.17l-4.95-4.95l-1.687 1.687a.5.5 0 0 0 0 .707l4.243 4.243a.5.5 0 0 0 .707 0l1.687-1.687z",fill:"currentColor"})],-1)])])}const mU=on(dU,[["render",pU]]),gU={key:0},vU={class:"canvas-container"},yU={class:"action-buttons",style:{left:"10px",right:"unset"}},bU={class:"action-buttons"},_U=be({__name:"CustomCanvas",setup(e){const t=Jt(),n=Ht(),r=al(),i=ae();async function u(a){if(!a.raw.type.includes("image")){n.raiseError("Uploaded file needs to be a image!",!1),i.value.clearFiles();return}const l=await zl(a.raw);t.currentImageProps.sourceImage=l,r.drawing=!1,ur.fabric.Image.fromURL(l,r.newImage)}function p(){t.currentImageProps.sourceImage="",r.resetCanvas()}rt(()=>{r.createNewCanvas("canvas"),t.currentImageProps.sourceImage&&ur.fabric.Image.fromURL(t.currentImageProps.sourceImage,r.newImage),window.addEventListener("paste",o)}),tn(()=>{window.removeEventListener("paste",o)});async function o(a){var h;const l=(h=a.clipboardData)==null?void 0:h.items;if(!!l)for(let c=0;c(N(),oe($e,null,[_(t).currentImageProps.sourceImage?ge("",!0):(N(),ve(_(Dm),{key:0,drag:"",ref_key:"upload",ref:i,"auto-upload":!1,onChange:u,limit:1,multiple:""},{tip:ue(()=>[_(t).generatorType==="Img2Img"?(N(),oe("div",gU,[l[9]||(l[9]=ne("div",{class:"center-horizontal",style:{"margin-top":"5px"}},"OR",-1)),ne("div",{class:"center-both",style:{cursor:"pointer","text-decoration":"underline","font-size":"1rem"},onClick:l[0]||(l[0]=h=>_(r).newBlankImage(_(t).params.height||512,_(t).params.width||512))},[se(_(De),{size:20,style:{"margin-right":"2px"}},{default:ue(()=>[se(VS)]),_:1}),l[8]||(l[8]=ze("draw something",-1))])])):ge("",!0)]),default:ue(()=>[se(_(De),{size:100},{default:ue(()=>[se(_(Qp))]),_:1}),l[10]||(l[10]=ne("div",null,[ze("Drop file here, paste an image OR "),ne("em",null,"click to upload")],-1))]),_:1},512)),Tt(ne("div",null,[ne("div",vU,[l[11]||(l[11]=ne("canvas",{id:"canvas"},null,-1)),ne("div",yU,[se(_(Je),{onClick:l[1]||(l[1]=h=>_(r).undoAction()),icon:_(F1),plain:"",disabled:_(r).imageProps.redoHistory.length===0},null,8,["icon","disabled"]),se(_(Je),{onClick:l[2]||(l[2]=h=>_(r).redoAction()),icon:_(B1),plain:"",disabled:_(r).imageProps.undoHistory.length===0},null,8,["icon","disabled"])]),ne("div",bU,[se(_(Je),{onClick:l[3]||(l[3]=h=>_(r).resetDrawing()),icon:_(Kr),plain:""},null,8,["icon"]),se(_(Je),{onClick:p,icon:_(Ki),plain:""},null,8,["icon"]),se(_(Je),{onClick:l[4]||(l[4]=h=>_(r).downloadSourceImage()),icon:_(bl),plain:""},null,8,["icon"]),se(_(Je),{onClick:l[5]||(l[5]=h=>_(r).flipErase()),icon:_(r).erasing?_(dO):mU,plain:""},null,8,["icon"]),_(r).drawing?(N(),ve(_(FD),{key:0,modelValue:_(r).drawColor,"onUpdate:modelValue":l[6]||(l[6]=h=>_(r).drawColor=h),"show-alpha":""},null,8,["modelValue"])):ge("",!0)]),se(_(Am),{"label-width":"110px",style:{"margin-top":"10px"}},{default:ue(()=>[se(yn,{style:{"margin-bottom":"5px"},label:"Brush Size",prop:"brushSize",modelValue:_(r).brushSize,"onUpdate:modelValue":l[7]||(l[7]=h=>_(r).brushSize=h),min:10,max:100,step:10,change:_(r).setBrush},null,8,["modelValue","change"])]),_:1})])],512),[[Kt,_(t).currentImageProps.sourceImage]])],64))}}),Ky=on(_U,[["__scopeId","data-v-0cdc2bf8"]]),wU={class:"centerIcons"},SU={class:"stackedIcons"},CU=be({__name:"StackedIcon",props:{iconOne:{type:[Object,Function]},iconTwo:{type:[Object,Function]},size:{}},setup(e){rk(n=>({"2ad037ca":n.size+"px"}));const t=e;return(n,r)=>(N(),oe("div",wU,[ne("div",SU,[se(_(De),{class:"firstIcon",size:n.size},{default:ue(()=>[(N(),ve(xt(t.iconOne)))]),_:1},8,["size"]),se(_(De),{class:"secondIcon",size:n.size},{default:ue(()=>[(N(),ve(xt(t.iconTwo)))]),_:1},8,["size"])])]))}}),xU=on(CU,[["__scopeId","data-v-74586a39"]]),TU={key:1,style:{width:"40px"}},Wu=be({__name:"GeneratorMenuItem",props:{index:{},iconOne:{type:[Object,Function]},iconTwo:{type:[Object,Function]},isMobile:{type:Boolean}},setup(e){const t=e;return(n,r)=>(N(),ve(_(fn),{content:n.index,placement:n.isMobile?"bottom":"right",enterable:!1,"hide-after":100},{default:ue(()=>[se(_(Im),{index:n.index,style:{height:"60px",display:"flex","justify-content":"center"}},{default:ue(()=>[n.iconTwo?(N(),ve(xU,{key:0,iconOne:n.iconOne,iconTwo:n.iconTwo,size:40},null,8,["iconOne","iconTwo"])):(N(),oe("div",TU,[se(_(De),{style:{width:"35px"},size:40},{default:ue(()=>[(N(),ve(xt(t.iconOne)))]),_:1})]))]),_:1},8,["index"])]),_:1},8,["content","placement"]))}});/*! pako 2.1.0 https://github.com/nodeca/pako @license (MIT AND Zlib) */const kU=4,Xy=0,qy=1,EU=2;function bs(e){let t=e.length;for(;--t>=0;)e[t]=0}const OU=0,ZS=1,AU=2,PU=3,IU=258,og=29,pu=256,jl=pu+1+og,Ho=30,sg=19,JS=2*jl+1,Ba=15,Nd=16,MU=7,lg=256,QS=16,eC=17,tC=18,dp=new Uint8Array([0,0,0,0,0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,0]),wc=new Uint8Array([0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13]),LU=new Uint8Array([0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,3,7]),nC=new Uint8Array([16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15]),RU=512,di=new Array((jl+2)*2);bs(di);const ol=new Array(Ho*2);bs(ol);const Vl=new Array(RU);bs(Vl);const Ul=new Array(IU-PU+1);bs(Ul);const ug=new Array(og);bs(ug);const of=new Array(Ho);bs(of);function zd(e,t,n,r,i){this.static_tree=e,this.extra_bits=t,this.extra_base=n,this.elems=r,this.max_length=i,this.has_stree=e&&e.length}let rC,iC,aC;function jd(e,t){this.dyn_tree=e,this.max_code=0,this.stat_desc=t}const oC=e=>e<256?Vl[e]:Vl[256+(e>>>7)],Hl=(e,t)=>{e.pending_buf[e.pending++]=t&255,e.pending_buf[e.pending++]=t>>>8&255},Bn=(e,t,n)=>{e.bi_valid>Nd-n?(e.bi_buf|=t<>Nd-e.bi_valid,e.bi_valid+=n-Nd):(e.bi_buf|=t<{Bn(e,n[t*2],n[t*2+1])},sC=(e,t)=>{let n=0;do n|=e&1,e>>>=1,n<<=1;while(--t>0);return n>>>1},DU=e=>{e.bi_valid===16?(Hl(e,e.bi_buf),e.bi_buf=0,e.bi_valid=0):e.bi_valid>=8&&(e.pending_buf[e.pending++]=e.bi_buf&255,e.bi_buf>>=8,e.bi_valid-=8)},FU=(e,t)=>{const n=t.dyn_tree,r=t.max_code,i=t.stat_desc.static_tree,u=t.stat_desc.has_stree,p=t.stat_desc.extra_bits,o=t.stat_desc.extra_base,a=t.stat_desc.max_length;let l,h,c,f,s,d,g=0;for(f=0;f<=Ba;f++)e.bl_count[f]=0;for(n[e.heap[e.heap_max]*2+1]=0,l=e.heap_max+1;la&&(f=a,g++),n[h*2+1]=f,!(h>r)&&(e.bl_count[f]++,s=0,h>=o&&(s=p[h-o]),d=n[h*2],e.opt_len+=d*(f+s),u&&(e.static_len+=d*(i[h*2+1]+s)));if(g!==0){do{for(f=a-1;e.bl_count[f]===0;)f--;e.bl_count[f]--,e.bl_count[f+1]+=2,e.bl_count[a]--,g-=2}while(g>0);for(f=a;f!==0;f--)for(h=e.bl_count[f];h!==0;)c=e.heap[--l],!(c>r)&&(n[c*2+1]!==f&&(e.opt_len+=(f-n[c*2+1])*n[c*2],n[c*2+1]=f),h--)}},lC=(e,t,n)=>{const r=new Array(Ba+1);let i=0,u,p;for(u=1;u<=Ba;u++)i=i+n[u-1]<<1,r[u]=i;for(p=0;p<=t;p++){let o=e[p*2+1];o!==0&&(e[p*2]=sC(r[o]++,o))}},BU=()=>{let e,t,n,r,i;const u=new Array(Ba+1);for(n=0,r=0;r>=7;r{let t;for(t=0;t{e.bi_valid>8?Hl(e,e.bi_buf):e.bi_valid>0&&(e.pending_buf[e.pending++]=e.bi_buf),e.bi_buf=0,e.bi_valid=0},Zy=(e,t,n,r)=>{const i=t*2,u=n*2;return e[i]{const r=e.heap[n];let i=n<<1;for(;i<=e.heap_len&&(i{let r,i,u=0,p,o;if(e.sym_next!==0)do r=e.pending_buf[e.sym_buf+u++]&255,r+=(e.pending_buf[e.sym_buf+u++]&255)<<8,i=e.pending_buf[e.sym_buf+u++],r===0?Vr(e,i,t):(p=Ul[i],Vr(e,p+pu+1,t),o=dp[p],o!==0&&(i-=ug[p],Bn(e,i,o)),r--,p=oC(r),Vr(e,p,n),o=wc[p],o!==0&&(r-=of[p],Bn(e,r,o)));while(u{const n=t.dyn_tree,r=t.stat_desc.static_tree,i=t.stat_desc.has_stree,u=t.stat_desc.elems;let p,o,a=-1,l;for(e.heap_len=0,e.heap_max=JS,p=0;p>1;p>=1;p--)Vd(e,n,p);l=u;do p=e.heap[1],e.heap[1]=e.heap[e.heap_len--],Vd(e,n,1),o=e.heap[1],e.heap[--e.heap_max]=p,e.heap[--e.heap_max]=o,n[l*2]=n[p*2]+n[o*2],e.depth[l]=(e.depth[p]>=e.depth[o]?e.depth[p]:e.depth[o])+1,n[p*2+1]=n[o*2+1]=l,e.heap[1]=l++,Vd(e,n,1);while(e.heap_len>=2);e.heap[--e.heap_max]=e.heap[1],FU(e,t),lC(n,a,e.bl_count)},Qy=(e,t,n)=>{let r,i=-1,u,p=t[0*2+1],o=0,a=7,l=4;for(p===0&&(a=138,l=3),t[(n+1)*2+1]=65535,r=0;r<=n;r++)u=p,p=t[(r+1)*2+1],!(++o{let r,i=-1,u,p=t[0*2+1],o=0,a=7,l=4;for(p===0&&(a=138,l=3),r=0;r<=n;r++)if(u=p,p=t[(r+1)*2+1],!(++o{let t;for(Qy(e,e.dyn_ltree,e.l_desc.max_code),Qy(e,e.dyn_dtree,e.d_desc.max_code),hp(e,e.bl_desc),t=sg-1;t>=3&&e.bl_tree[nC[t]*2+1]===0;t--);return e.opt_len+=3*(t+1)+5+5+4,t},NU=(e,t,n,r)=>{let i;for(Bn(e,t-257,5),Bn(e,n-1,5),Bn(e,r-4,4),i=0;i{let t=4093624447,n;for(n=0;n<=31;n++,t>>>=1)if(t&1&&e.dyn_ltree[n*2]!==0)return Xy;if(e.dyn_ltree[9*2]!==0||e.dyn_ltree[10*2]!==0||e.dyn_ltree[13*2]!==0)return qy;for(n=32;n{tb||(BU(),tb=!0),e.l_desc=new jd(e.dyn_ltree,rC),e.d_desc=new jd(e.dyn_dtree,iC),e.bl_desc=new jd(e.bl_tree,aC),e.bi_buf=0,e.bi_valid=0,uC(e)},fC=(e,t,n,r)=>{Bn(e,(OU<<1)+(r?1:0),3),cC(e),Hl(e,n),Hl(e,~n),n&&e.pending_buf.set(e.window.subarray(t,t+n),e.pending),e.pending+=n},VU=e=>{Bn(e,ZS<<1,3),Vr(e,lg,di),DU(e)},UU=(e,t,n,r)=>{let i,u,p=0;e.level>0?(e.strm.data_type===EU&&(e.strm.data_type=zU(e)),hp(e,e.l_desc),hp(e,e.d_desc),p=$U(e),i=e.opt_len+3+7>>>3,u=e.static_len+3+7>>>3,u<=i&&(i=u)):i=u=n+5,n+4<=i&&t!==-1?fC(e,t,n,r):e.strategy===kU||u===i?(Bn(e,(ZS<<1)+(r?1:0),3),Jy(e,di,ol)):(Bn(e,(AU<<1)+(r?1:0),3),NU(e,e.l_desc.max_code+1,e.d_desc.max_code+1,p+1),Jy(e,e.dyn_ltree,e.dyn_dtree)),uC(e),r&&cC(e)},HU=(e,t,n)=>(e.pending_buf[e.sym_buf+e.sym_next++]=t,e.pending_buf[e.sym_buf+e.sym_next++]=t>>8,e.pending_buf[e.sym_buf+e.sym_next++]=n,t===0?e.dyn_ltree[n*2]++:(e.matches++,t--,e.dyn_ltree[(Ul[n]+pu+1)*2]++,e.dyn_dtree[oC(t)*2]++),e.sym_next===e.sym_end);var WU=jU,GU=fC,YU=UU,KU=HU,XU=VU,qU={_tr_init:WU,_tr_stored_block:GU,_tr_flush_block:YU,_tr_tally:KU,_tr_align:XU};const ZU=(e,t,n,r)=>{let i=e&65535|0,u=e>>>16&65535|0,p=0;for(;n!==0;){p=n>2e3?2e3:n,n-=p;do i=i+t[r++]|0,u=u+i|0;while(--p);i%=65521,u%=65521}return i|u<<16|0};var Wl=ZU;const JU=()=>{let e,t=[];for(var n=0;n<256;n++){e=n;for(var r=0;r<8;r++)e=e&1?3988292384^e>>>1:e>>>1;t[n]=e}return t},QU=new Uint32Array(JU()),eH=(e,t,n,r)=>{const i=QU,u=r+n;e^=-1;for(let p=r;p>>8^i[(e^t[p])&255];return e^-1};var ln=eH,eo={2:"need dictionary",1:"stream end",0:"","-1":"file error","-2":"stream error","-3":"data error","-4":"insufficient memory","-5":"buffer error","-6":"incompatible version"},_s={Z_NO_FLUSH:0,Z_PARTIAL_FLUSH:1,Z_SYNC_FLUSH:2,Z_FULL_FLUSH:3,Z_FINISH:4,Z_BLOCK:5,Z_TREES:6,Z_OK:0,Z_STREAM_END:1,Z_NEED_DICT:2,Z_ERRNO:-1,Z_STREAM_ERROR:-2,Z_DATA_ERROR:-3,Z_MEM_ERROR:-4,Z_BUF_ERROR:-5,Z_NO_COMPRESSION:0,Z_BEST_SPEED:1,Z_BEST_COMPRESSION:9,Z_DEFAULT_COMPRESSION:-1,Z_FILTERED:1,Z_HUFFMAN_ONLY:2,Z_RLE:3,Z_FIXED:4,Z_DEFAULT_STRATEGY:0,Z_BINARY:0,Z_TEXT:1,Z_UNKNOWN:2,Z_DEFLATED:8};const{_tr_init:tH,_tr_stored_block:pp,_tr_flush_block:nH,_tr_tally:ta,_tr_align:rH}=qU,{Z_NO_FLUSH:na,Z_PARTIAL_FLUSH:iH,Z_FULL_FLUSH:aH,Z_FINISH:cr,Z_BLOCK:nb,Z_OK:cn,Z_STREAM_END:rb,Z_STREAM_ERROR:Gr,Z_DATA_ERROR:oH,Z_BUF_ERROR:Ud,Z_DEFAULT_COMPRESSION:sH,Z_FILTERED:lH,Z_HUFFMAN_ONLY:Gu,Z_RLE:uH,Z_FIXED:cH,Z_DEFAULT_STRATEGY:fH,Z_UNKNOWN:dH,Z_DEFLATED:Nf}=_s,hH=9,pH=15,mH=8,gH=29,vH=256,mp=vH+1+gH,yH=30,bH=19,_H=2*mp+1,wH=15,ft=3,Zi=258,Yr=Zi+ft+1,SH=32,is=42,cg=57,gp=69,vp=73,yp=91,bp=103,$a=113,$s=666,In=1,ws=2,to=3,Ss=4,CH=3,Na=(e,t)=>(e.msg=eo[t],t),ib=e=>e*2-(e>4?9:0),Yi=e=>{let t=e.length;for(;--t>=0;)e[t]=0},xH=e=>{let t,n,r,i=e.w_size;t=e.hash_size,r=t;do n=e.head[--r],e.head[r]=n>=i?n-i:0;while(--t);t=i,r=t;do n=e.prev[--r],e.prev[r]=n>=i?n-i:0;while(--t)};let TH=(e,t,n)=>(t<{const t=e.state;let n=t.pending;n>e.avail_out&&(n=e.avail_out),n!==0&&(e.output.set(t.pending_buf.subarray(t.pending_out,t.pending_out+n),e.next_out),e.next_out+=n,t.pending_out+=n,e.total_out+=n,e.avail_out-=n,t.pending-=n,t.pending===0&&(t.pending_out=0))},qn=(e,t)=>{nH(e,e.block_start>=0?e.block_start:-1,e.strstart-e.block_start,t),e.block_start=e.strstart,Gn(e.strm)},yt=(e,t)=>{e.pending_buf[e.pending++]=t},Ms=(e,t)=>{e.pending_buf[e.pending++]=t>>>8&255,e.pending_buf[e.pending++]=t&255},_p=(e,t,n,r)=>{let i=e.avail_in;return i>r&&(i=r),i===0?0:(e.avail_in-=i,t.set(e.input.subarray(e.next_in,e.next_in+i),n),e.state.wrap===1?e.adler=Wl(e.adler,t,i,n):e.state.wrap===2&&(e.adler=ln(e.adler,t,i,n)),e.next_in+=i,e.total_in+=i,i)},dC=(e,t)=>{let n=e.max_chain_length,r=e.strstart,i,u,p=e.prev_length,o=e.nice_match;const a=e.strstart>e.w_size-Yr?e.strstart-(e.w_size-Yr):0,l=e.window,h=e.w_mask,c=e.prev,f=e.strstart+Zi;let s=l[r+p-1],d=l[r+p];e.prev_length>=e.good_match&&(n>>=2),o>e.lookahead&&(o=e.lookahead);do if(i=t,!(l[i+p]!==d||l[i+p-1]!==s||l[i]!==l[r]||l[++i]!==l[r+1])){r+=2,i++;do;while(l[++r]===l[++i]&&l[++r]===l[++i]&&l[++r]===l[++i]&&l[++r]===l[++i]&&l[++r]===l[++i]&&l[++r]===l[++i]&&l[++r]===l[++i]&&l[++r]===l[++i]&&rp){if(e.match_start=t,p=u,u>=o)break;s=l[r+p-1],d=l[r+p]}}while((t=c[t&h])>a&&--n!==0);return p<=e.lookahead?p:e.lookahead},as=e=>{const t=e.w_size;let n,r,i;do{if(r=e.window_size-e.lookahead-e.strstart,e.strstart>=t+(t-Yr)&&(e.window.set(e.window.subarray(t,t+t-r),0),e.match_start-=t,e.strstart-=t,e.block_start-=t,e.insert>e.strstart&&(e.insert=e.strstart),xH(e),r+=t),e.strm.avail_in===0)break;if(n=_p(e.strm,e.window,e.strstart+e.lookahead,r),e.lookahead+=n,e.lookahead+e.insert>=ft)for(i=e.strstart-e.insert,e.ins_h=e.window[i],e.ins_h=ra(e,e.ins_h,e.window[i+1]);e.insert&&(e.ins_h=ra(e,e.ins_h,e.window[i+ft-1]),e.prev[i&e.w_mask]=e.head[e.ins_h],e.head[e.ins_h]=i,i++,e.insert--,!(e.lookahead+e.insert{let n=e.pending_buf_size-5>e.w_size?e.w_size:e.pending_buf_size-5,r,i,u,p=0,o=e.strm.avail_in;do{if(r=65535,u=e.bi_valid+42>>3,e.strm.avail_outi+e.strm.avail_in&&(r=i+e.strm.avail_in),r>u&&(r=u),r>8,e.pending_buf[e.pending-2]=~r,e.pending_buf[e.pending-1]=~r>>8,Gn(e.strm),i&&(i>r&&(i=r),e.strm.output.set(e.window.subarray(e.block_start,e.block_start+i),e.strm.next_out),e.strm.next_out+=i,e.strm.avail_out-=i,e.strm.total_out+=i,e.block_start+=i,r-=i),r&&(_p(e.strm,e.strm.output,e.strm.next_out,r),e.strm.next_out+=r,e.strm.avail_out-=r,e.strm.total_out+=r)}while(p===0);return o-=e.strm.avail_in,o&&(o>=e.w_size?(e.matches=2,e.window.set(e.strm.input.subarray(e.strm.next_in-e.w_size,e.strm.next_in),0),e.strstart=e.w_size,e.insert=e.strstart):(e.window_size-e.strstart<=o&&(e.strstart-=e.w_size,e.window.set(e.window.subarray(e.w_size,e.w_size+e.strstart),0),e.matches<2&&e.matches++,e.insert>e.strstart&&(e.insert=e.strstart)),e.window.set(e.strm.input.subarray(e.strm.next_in-o,e.strm.next_in),e.strstart),e.strstart+=o,e.insert+=o>e.w_size-e.insert?e.w_size-e.insert:o),e.block_start=e.strstart),e.high_wateru&&e.block_start>=e.w_size&&(e.block_start-=e.w_size,e.strstart-=e.w_size,e.window.set(e.window.subarray(e.w_size,e.w_size+e.strstart),0),e.matches<2&&e.matches++,u+=e.w_size,e.insert>e.strstart&&(e.insert=e.strstart)),u>e.strm.avail_in&&(u=e.strm.avail_in),u&&(_p(e.strm,e.window,e.strstart,u),e.strstart+=u,e.insert+=u>e.w_size-e.insert?e.w_size-e.insert:u),e.high_water>3,u=e.pending_buf_size-u>65535?65535:e.pending_buf_size-u,n=u>e.w_size?e.w_size:u,i=e.strstart-e.block_start,(i>=n||(i||t===cr)&&t!==na&&e.strm.avail_in===0&&i<=u)&&(r=i>u?u:i,p=t===cr&&e.strm.avail_in===0&&r===i?1:0,pp(e,e.block_start,r,p),e.block_start+=r,Gn(e.strm)),p?to:In)},Hd=(e,t)=>{let n,r;for(;;){if(e.lookahead=ft&&(e.ins_h=ra(e,e.ins_h,e.window[e.strstart+ft-1]),n=e.prev[e.strstart&e.w_mask]=e.head[e.ins_h],e.head[e.ins_h]=e.strstart),n!==0&&e.strstart-n<=e.w_size-Yr&&(e.match_length=dC(e,n)),e.match_length>=ft)if(r=ta(e,e.strstart-e.match_start,e.match_length-ft),e.lookahead-=e.match_length,e.match_length<=e.max_lazy_match&&e.lookahead>=ft){e.match_length--;do e.strstart++,e.ins_h=ra(e,e.ins_h,e.window[e.strstart+ft-1]),n=e.prev[e.strstart&e.w_mask]=e.head[e.ins_h],e.head[e.ins_h]=e.strstart;while(--e.match_length!==0);e.strstart++}else e.strstart+=e.match_length,e.match_length=0,e.ins_h=e.window[e.strstart],e.ins_h=ra(e,e.ins_h,e.window[e.strstart+1]);else r=ta(e,0,e.window[e.strstart]),e.lookahead--,e.strstart++;if(r&&(qn(e,!1),e.strm.avail_out===0))return In}return e.insert=e.strstart{let n,r,i;for(;;){if(e.lookahead=ft&&(e.ins_h=ra(e,e.ins_h,e.window[e.strstart+ft-1]),n=e.prev[e.strstart&e.w_mask]=e.head[e.ins_h],e.head[e.ins_h]=e.strstart),e.prev_length=e.match_length,e.prev_match=e.match_start,e.match_length=ft-1,n!==0&&e.prev_length4096)&&(e.match_length=ft-1)),e.prev_length>=ft&&e.match_length<=e.prev_length){i=e.strstart+e.lookahead-ft,r=ta(e,e.strstart-1-e.prev_match,e.prev_length-ft),e.lookahead-=e.prev_length-1,e.prev_length-=2;do++e.strstart<=i&&(e.ins_h=ra(e,e.ins_h,e.window[e.strstart+ft-1]),n=e.prev[e.strstart&e.w_mask]=e.head[e.ins_h],e.head[e.ins_h]=e.strstart);while(--e.prev_length!==0);if(e.match_available=0,e.match_length=ft-1,e.strstart++,r&&(qn(e,!1),e.strm.avail_out===0))return In}else if(e.match_available){if(r=ta(e,0,e.window[e.strstart-1]),r&&qn(e,!1),e.strstart++,e.lookahead--,e.strm.avail_out===0)return In}else e.match_available=1,e.strstart++,e.lookahead--}return e.match_available&&(r=ta(e,0,e.window[e.strstart-1]),e.match_available=0),e.insert=e.strstart{let n,r,i,u;const p=e.window;for(;;){if(e.lookahead<=Zi){if(as(e),e.lookahead<=Zi&&t===na)return In;if(e.lookahead===0)break}if(e.match_length=0,e.lookahead>=ft&&e.strstart>0&&(i=e.strstart-1,r=p[i],r===p[++i]&&r===p[++i]&&r===p[++i])){u=e.strstart+Zi;do;while(r===p[++i]&&r===p[++i]&&r===p[++i]&&r===p[++i]&&r===p[++i]&&r===p[++i]&&r===p[++i]&&r===p[++i]&&ie.lookahead&&(e.match_length=e.lookahead)}if(e.match_length>=ft?(n=ta(e,1,e.match_length-ft),e.lookahead-=e.match_length,e.strstart+=e.match_length,e.match_length=0):(n=ta(e,0,e.window[e.strstart]),e.lookahead--,e.strstart++),n&&(qn(e,!1),e.strm.avail_out===0))return In}return e.insert=0,t===cr?(qn(e,!0),e.strm.avail_out===0?to:Ss):e.sym_next&&(qn(e,!1),e.strm.avail_out===0)?In:ws},EH=(e,t)=>{let n;for(;;){if(e.lookahead===0&&(as(e),e.lookahead===0)){if(t===na)return In;break}if(e.match_length=0,n=ta(e,0,e.window[e.strstart]),e.lookahead--,e.strstart++,n&&(qn(e,!1),e.strm.avail_out===0))return In}return e.insert=0,t===cr?(qn(e,!0),e.strm.avail_out===0?to:Ss):e.sym_next&&(qn(e,!1),e.strm.avail_out===0)?In:ws};function Br(e,t,n,r,i){this.good_length=e,this.max_lazy=t,this.nice_length=n,this.max_chain=r,this.func=i}const Ns=[new Br(0,0,0,0,hC),new Br(4,4,8,4,Hd),new Br(4,5,16,8,Hd),new Br(4,6,32,32,Hd),new Br(4,4,16,16,To),new Br(8,16,32,32,To),new Br(8,16,128,128,To),new Br(8,32,128,256,To),new Br(32,128,258,1024,To),new Br(32,258,258,4096,To)],OH=e=>{e.window_size=2*e.w_size,Yi(e.head),e.max_lazy_match=Ns[e.level].max_lazy,e.good_match=Ns[e.level].good_length,e.nice_match=Ns[e.level].nice_length,e.max_chain_length=Ns[e.level].max_chain,e.strstart=0,e.block_start=0,e.lookahead=0,e.insert=0,e.match_length=e.prev_length=ft-1,e.match_available=0,e.ins_h=0};function AH(){this.strm=null,this.status=0,this.pending_buf=null,this.pending_buf_size=0,this.pending_out=0,this.pending=0,this.wrap=0,this.gzhead=null,this.gzindex=0,this.method=Nf,this.last_flush=-1,this.w_size=0,this.w_bits=0,this.w_mask=0,this.window=null,this.window_size=0,this.prev=null,this.head=null,this.ins_h=0,this.hash_size=0,this.hash_bits=0,this.hash_mask=0,this.hash_shift=0,this.block_start=0,this.match_length=0,this.prev_match=0,this.match_available=0,this.strstart=0,this.match_start=0,this.lookahead=0,this.prev_length=0,this.max_chain_length=0,this.max_lazy_match=0,this.level=0,this.strategy=0,this.good_match=0,this.nice_match=0,this.dyn_ltree=new Uint16Array(_H*2),this.dyn_dtree=new Uint16Array((2*yH+1)*2),this.bl_tree=new Uint16Array((2*bH+1)*2),Yi(this.dyn_ltree),Yi(this.dyn_dtree),Yi(this.bl_tree),this.l_desc=null,this.d_desc=null,this.bl_desc=null,this.bl_count=new Uint16Array(wH+1),this.heap=new Uint16Array(2*mp+1),Yi(this.heap),this.heap_len=0,this.heap_max=0,this.depth=new Uint16Array(2*mp+1),Yi(this.depth),this.sym_buf=0,this.lit_bufsize=0,this.sym_next=0,this.sym_end=0,this.opt_len=0,this.static_len=0,this.matches=0,this.insert=0,this.bi_buf=0,this.bi_valid=0}const mu=e=>{if(!e)return 1;const t=e.state;return!t||t.strm!==e||t.status!==is&&t.status!==cg&&t.status!==gp&&t.status!==vp&&t.status!==yp&&t.status!==bp&&t.status!==$a&&t.status!==$s?1:0},pC=e=>{if(mu(e))return Na(e,Gr);e.total_in=e.total_out=0,e.data_type=dH;const t=e.state;return t.pending=0,t.pending_out=0,t.wrap<0&&(t.wrap=-t.wrap),t.status=t.wrap===2?cg:t.wrap?is:$a,e.adler=t.wrap===2?0:1,t.last_flush=-2,tH(t),cn},mC=e=>{const t=pC(e);return t===cn&&OH(e.state),t},PH=(e,t)=>mu(e)||e.state.wrap!==2?Gr:(e.state.gzhead=t,cn),gC=(e,t,n,r,i,u)=>{if(!e)return Gr;let p=1;if(t===sH&&(t=6),r<0?(p=0,r=-r):r>15&&(p=2,r-=16),i<1||i>hH||n!==Nf||r<8||r>15||t<0||t>9||u<0||u>cH||r===8&&p!==1)return Na(e,Gr);r===8&&(r=9);const o=new AH;return e.state=o,o.strm=e,o.status=is,o.wrap=p,o.gzhead=null,o.w_bits=r,o.w_size=1<gC(e,t,Nf,pH,mH,fH),MH=(e,t)=>{if(mu(e)||t>nb||t<0)return e?Na(e,Gr):Gr;const n=e.state;if(!e.output||e.avail_in!==0&&!e.input||n.status===$s&&t!==cr)return Na(e,e.avail_out===0?Ud:Gr);const r=n.last_flush;if(n.last_flush=t,n.pending!==0){if(Gn(e),e.avail_out===0)return n.last_flush=-1,cn}else if(e.avail_in===0&&ib(t)<=ib(r)&&t!==cr)return Na(e,Ud);if(n.status===$s&&e.avail_in!==0)return Na(e,Ud);if(n.status===is&&n.wrap===0&&(n.status=$a),n.status===is){let i=Nf+(n.w_bits-8<<4)<<8,u=-1;if(n.strategy>=Gu||n.level<2?u=0:n.level<6?u=1:n.level===6?u=2:u=3,i|=u<<6,n.strstart!==0&&(i|=SH),i+=31-i%31,Ms(n,i),n.strstart!==0&&(Ms(n,e.adler>>>16),Ms(n,e.adler&65535)),e.adler=1,n.status=$a,Gn(e),n.pending!==0)return n.last_flush=-1,cn}if(n.status===cg){if(e.adler=0,yt(n,31),yt(n,139),yt(n,8),n.gzhead)yt(n,(n.gzhead.text?1:0)+(n.gzhead.hcrc?2:0)+(n.gzhead.extra?4:0)+(n.gzhead.name?8:0)+(n.gzhead.comment?16:0)),yt(n,n.gzhead.time&255),yt(n,n.gzhead.time>>8&255),yt(n,n.gzhead.time>>16&255),yt(n,n.gzhead.time>>24&255),yt(n,n.level===9?2:n.strategy>=Gu||n.level<2?4:0),yt(n,n.gzhead.os&255),n.gzhead.extra&&n.gzhead.extra.length&&(yt(n,n.gzhead.extra.length&255),yt(n,n.gzhead.extra.length>>8&255)),n.gzhead.hcrc&&(e.adler=ln(e.adler,n.pending_buf,n.pending,0)),n.gzindex=0,n.status=gp;else if(yt(n,0),yt(n,0),yt(n,0),yt(n,0),yt(n,0),yt(n,n.level===9?2:n.strategy>=Gu||n.level<2?4:0),yt(n,CH),n.status=$a,Gn(e),n.pending!==0)return n.last_flush=-1,cn}if(n.status===gp){if(n.gzhead.extra){let i=n.pending,u=(n.gzhead.extra.length&65535)-n.gzindex;for(;n.pending+u>n.pending_buf_size;){let o=n.pending_buf_size-n.pending;if(n.pending_buf.set(n.gzhead.extra.subarray(n.gzindex,n.gzindex+o),n.pending),n.pending=n.pending_buf_size,n.gzhead.hcrc&&n.pending>i&&(e.adler=ln(e.adler,n.pending_buf,n.pending-i,i)),n.gzindex+=o,Gn(e),n.pending!==0)return n.last_flush=-1,cn;i=0,u-=o}let p=new Uint8Array(n.gzhead.extra);n.pending_buf.set(p.subarray(n.gzindex,n.gzindex+u),n.pending),n.pending+=u,n.gzhead.hcrc&&n.pending>i&&(e.adler=ln(e.adler,n.pending_buf,n.pending-i,i)),n.gzindex=0}n.status=vp}if(n.status===vp){if(n.gzhead.name){let i=n.pending,u;do{if(n.pending===n.pending_buf_size){if(n.gzhead.hcrc&&n.pending>i&&(e.adler=ln(e.adler,n.pending_buf,n.pending-i,i)),Gn(e),n.pending!==0)return n.last_flush=-1,cn;i=0}n.gzindexi&&(e.adler=ln(e.adler,n.pending_buf,n.pending-i,i)),n.gzindex=0}n.status=yp}if(n.status===yp){if(n.gzhead.comment){let i=n.pending,u;do{if(n.pending===n.pending_buf_size){if(n.gzhead.hcrc&&n.pending>i&&(e.adler=ln(e.adler,n.pending_buf,n.pending-i,i)),Gn(e),n.pending!==0)return n.last_flush=-1,cn;i=0}n.gzindexi&&(e.adler=ln(e.adler,n.pending_buf,n.pending-i,i))}n.status=bp}if(n.status===bp){if(n.gzhead.hcrc){if(n.pending+2>n.pending_buf_size&&(Gn(e),n.pending!==0))return n.last_flush=-1,cn;yt(n,e.adler&255),yt(n,e.adler>>8&255),e.adler=0}if(n.status=$a,Gn(e),n.pending!==0)return n.last_flush=-1,cn}if(e.avail_in!==0||n.lookahead!==0||t!==na&&n.status!==$s){let i=n.level===0?hC(n,t):n.strategy===Gu?EH(n,t):n.strategy===uH?kH(n,t):Ns[n.level].func(n,t);if((i===to||i===Ss)&&(n.status=$s),i===In||i===to)return e.avail_out===0&&(n.last_flush=-1),cn;if(i===ws&&(t===iH?rH(n):t!==nb&&(pp(n,0,0,!1),t===aH&&(Yi(n.head),n.lookahead===0&&(n.strstart=0,n.block_start=0,n.insert=0))),Gn(e),e.avail_out===0))return n.last_flush=-1,cn}return t!==cr?cn:n.wrap<=0?rb:(n.wrap===2?(yt(n,e.adler&255),yt(n,e.adler>>8&255),yt(n,e.adler>>16&255),yt(n,e.adler>>24&255),yt(n,e.total_in&255),yt(n,e.total_in>>8&255),yt(n,e.total_in>>16&255),yt(n,e.total_in>>24&255)):(Ms(n,e.adler>>>16),Ms(n,e.adler&65535)),Gn(e),n.wrap>0&&(n.wrap=-n.wrap),n.pending!==0?cn:rb)},LH=e=>{if(mu(e))return Gr;const t=e.state.status;return e.state=null,t===$a?Na(e,oH):cn},RH=(e,t)=>{let n=t.length;if(mu(e))return Gr;const r=e.state,i=r.wrap;if(i===2||i===1&&r.status!==is||r.lookahead)return Gr;if(i===1&&(e.adler=Wl(e.adler,t,n,0)),r.wrap=0,n>=r.w_size){i===0&&(Yi(r.head),r.strstart=0,r.block_start=0,r.insert=0);let a=new Uint8Array(r.w_size);a.set(t.subarray(n-r.w_size,n),0),t=a,n=r.w_size}const u=e.avail_in,p=e.next_in,o=e.input;for(e.avail_in=n,e.next_in=0,e.input=t,as(r);r.lookahead>=ft;){let a=r.strstart,l=r.lookahead-(ft-1);do r.ins_h=ra(r,r.ins_h,r.window[a+ft-1]),r.prev[a&r.w_mask]=r.head[r.ins_h],r.head[r.ins_h]=a,a++;while(--l);r.strstart=a,r.lookahead=ft-1,as(r)}return r.strstart+=r.lookahead,r.block_start=r.strstart,r.insert=r.lookahead,r.lookahead=0,r.match_length=r.prev_length=ft-1,r.match_available=0,e.next_in=p,e.input=o,e.avail_in=u,r.wrap=i,cn};var DH=IH,FH=gC,BH=mC,$H=pC,NH=PH,zH=MH,jH=LH,VH=RH,UH="pako deflate (from Nodeca project)",sl={deflateInit:DH,deflateInit2:FH,deflateReset:BH,deflateResetKeep:$H,deflateSetHeader:NH,deflate:zH,deflateEnd:jH,deflateSetDictionary:VH,deflateInfo:UH};const HH=(e,t)=>Object.prototype.hasOwnProperty.call(e,t);var WH=function(e){const t=Array.prototype.slice.call(arguments,1);for(;t.length;){const n=t.shift();if(!!n){if(typeof n!="object")throw new TypeError(n+"must be non-object");for(const r in n)HH(n,r)&&(e[r]=n[r])}}return e},GH=e=>{let t=0;for(let r=0,i=e.length;r=252?6:e>=248?5:e>=240?4:e>=224?3:e>=192?2:1;Gl[254]=Gl[254]=1;var YH=e=>{if(typeof TextEncoder=="function"&&TextEncoder.prototype.encode)return new TextEncoder().encode(e);let t,n,r,i,u,p=e.length,o=0;for(i=0;i>>6,t[u++]=128|n&63):n<65536?(t[u++]=224|n>>>12,t[u++]=128|n>>>6&63,t[u++]=128|n&63):(t[u++]=240|n>>>18,t[u++]=128|n>>>12&63,t[u++]=128|n>>>6&63,t[u++]=128|n&63);return t};const KH=(e,t)=>{if(t<65534&&e.subarray&&vC)return String.fromCharCode.apply(null,e.length===t?e:e.subarray(0,t));let n="";for(let r=0;r{const n=t||e.length;if(typeof TextDecoder=="function"&&TextDecoder.prototype.decode)return new TextDecoder().decode(e.subarray(0,t));let r,i;const u=new Array(n*2);for(i=0,r=0;r4){u[i++]=65533,r+=o-1;continue}for(p&=o===2?31:o===3?15:7;o>1&&r1){u[i++]=65533;continue}p<65536?u[i++]=p:(p-=65536,u[i++]=55296|p>>10&1023,u[i++]=56320|p&1023)}return KH(u,i)},qH=(e,t)=>{t=t||e.length,t>e.length&&(t=e.length);let n=t-1;for(;n>=0&&(e[n]&192)===128;)n--;return n<0||n===0?t:n+Gl[e[n]]>t?n:t},Yl={string2buf:YH,buf2string:XH,utf8border:qH};function ZH(){this.input=null,this.next_in=0,this.avail_in=0,this.total_in=0,this.output=null,this.next_out=0,this.avail_out=0,this.total_out=0,this.msg="",this.state=null,this.data_type=2,this.adler=0}var yC=ZH;const bC=Object.prototype.toString,{Z_NO_FLUSH:JH,Z_SYNC_FLUSH:QH,Z_FULL_FLUSH:eW,Z_FINISH:tW,Z_OK:sf,Z_STREAM_END:nW,Z_DEFAULT_COMPRESSION:rW,Z_DEFAULT_STRATEGY:iW,Z_DEFLATED:aW}=_s;function gu(e){this.options=zf.assign({level:rW,method:aW,chunkSize:16384,windowBits:15,memLevel:8,strategy:iW},e||{});let t=this.options;t.raw&&t.windowBits>0?t.windowBits=-t.windowBits:t.gzip&&t.windowBits>0&&t.windowBits<16&&(t.windowBits+=16),this.err=0,this.msg="",this.ended=!1,this.chunks=[],this.strm=new yC,this.strm.avail_out=0;let n=sl.deflateInit2(this.strm,t.level,t.method,t.windowBits,t.memLevel,t.strategy);if(n!==sf)throw new Error(eo[n]);if(t.header&&sl.deflateSetHeader(this.strm,t.header),t.dictionary){let r;if(typeof t.dictionary=="string"?r=Yl.string2buf(t.dictionary):bC.call(t.dictionary)==="[object ArrayBuffer]"?r=new Uint8Array(t.dictionary):r=t.dictionary,n=sl.deflateSetDictionary(this.strm,r),n!==sf)throw new Error(eo[n]);this._dict_set=!0}}gu.prototype.push=function(e,t){const n=this.strm,r=this.options.chunkSize;let i,u;if(this.ended)return!1;for(t===~~t?u=t:u=t===!0?tW:JH,typeof e=="string"?n.input=Yl.string2buf(e):bC.call(e)==="[object ArrayBuffer]"?n.input=new Uint8Array(e):n.input=e,n.next_in=0,n.avail_in=n.input.length;;){if(n.avail_out===0&&(n.output=new Uint8Array(r),n.next_out=0,n.avail_out=r),(u===QH||u===eW)&&n.avail_out<=6){this.onData(n.output.subarray(0,n.next_out)),n.avail_out=0;continue}if(i=sl.deflate(n,u),i===nW)return n.next_out>0&&this.onData(n.output.subarray(0,n.next_out)),i=sl.deflateEnd(this.strm),this.onEnd(i),this.ended=!0,i===sf;if(n.avail_out===0){this.onData(n.output);continue}if(u>0&&n.next_out>0){this.onData(n.output.subarray(0,n.next_out)),n.avail_out=0;continue}if(n.avail_in===0)break}return!0};gu.prototype.onData=function(e){this.chunks.push(e)};gu.prototype.onEnd=function(e){e===sf&&(this.result=zf.flattenChunks(this.chunks)),this.chunks=[],this.err=e,this.msg=this.strm.msg};function fg(e,t){const n=new gu(t);if(n.push(e,!0),n.err)throw n.msg||eo[n.err];return n.result}function oW(e,t){return t=t||{},t.raw=!0,fg(e,t)}function sW(e,t){return t=t||{},t.gzip=!0,fg(e,t)}var lW=gu,uW=fg,cW=oW,fW=sW,dW=_s,hW={Deflate:lW,deflate:uW,deflateRaw:cW,gzip:fW,constants:dW};const Yu=16209,pW=16191;var mW=function(t,n){let r,i,u,p,o,a,l,h,c,f,s,d,g,m,v,y,b,w,S,C,T,k,A,P;const z=t.state;r=t.next_in,A=t.input,i=r+(t.avail_in-5),u=t.next_out,P=t.output,p=u-(n-t.avail_out),o=u+(t.avail_out-257),a=z.dmax,l=z.wsize,h=z.whave,c=z.wnext,f=z.window,s=z.hold,d=z.bits,g=z.lencode,m=z.distcode,v=(1<>>24,s>>>=w,d-=w,w=b>>>16&255,w===0)P[u++]=b&65535;else if(w&16){S=b&65535,w&=15,w&&(d>>=w,d-=w),d<15&&(s+=A[r++]<>>24,s>>>=w,d-=w,w=b>>>16&255,w&16){if(C=b&65535,w&=15,da){t.msg="invalid distance too far back",z.mode=Yu;break e}if(s>>>=w,d-=w,w=u-p,C>w){if(w=C-w,w>h&&z.sane){t.msg="invalid distance too far back",z.mode=Yu;break e}if(T=0,k=f,c===0){if(T+=l-w,w2;)P[u++]=k[T++],P[u++]=k[T++],P[u++]=k[T++],S-=3;S&&(P[u++]=k[T++],S>1&&(P[u++]=k[T++]))}else{T=u-C;do P[u++]=P[T++],P[u++]=P[T++],P[u++]=P[T++],S-=3;while(S>2);S&&(P[u++]=P[T++],S>1&&(P[u++]=P[T++]))}}else if((w&64)===0){b=m[(b&65535)+(s&(1<>3,r-=S,d-=S<<3,s&=(1<{const a=o.bits;let l=0,h=0,c=0,f=0,s=0,d=0,g=0,m=0,v=0,y=0,b,w,S,C,T,k=null,A;const P=new Uint16Array(ko+1),z=new Uint16Array(ko+1);let I=null,$,O,Y;for(l=0;l<=ko;l++)P[l]=0;for(h=0;h=1&&P[f]===0;f--);if(s>f&&(s=f),f===0)return i[u++]=1<<24|64<<16|0,i[u++]=1<<24|64<<16|0,o.bits=1,0;for(c=1;c0&&(e===sb||f!==1))return-1;for(z[1]=0,l=1;lab||e===lb&&v>ob)return 1;for(;;){$=l-g,p[h]+1=A?(O=I[p[h]-A],Y=k[p[h]-A]):(O=32+64,Y=0),b=1<>g)+w]=$<<24|O<<16|Y|0;while(w!==0);for(b=1<>=1;if(b!==0?(y&=b-1,y+=b):y=0,h++,--P[l]===0){if(l===f)break;l=t[n+p[h]]}if(l>s&&(y&C)!==S){for(g===0&&(g=s),T+=c,d=l-g,m=1<ab||e===lb&&v>ob)return 1;S=y&C,i[S]=s<<24|d<<16|T-u|0}}return y!==0&&(i[T+y]=l-g<<24|64<<16|0),o.bits=s,0};var ll=_W;const wW=0,_C=1,wC=2,{Z_FINISH:ub,Z_BLOCK:SW,Z_TREES:Ku,Z_OK:no,Z_STREAM_END:CW,Z_NEED_DICT:xW,Z_STREAM_ERROR:gr,Z_DATA_ERROR:SC,Z_MEM_ERROR:CC,Z_BUF_ERROR:TW,Z_DEFLATED:cb}=_s,jf=16180,fb=16181,db=16182,hb=16183,pb=16184,mb=16185,gb=16186,vb=16187,yb=16188,bb=16189,lf=16190,si=16191,Gd=16192,_b=16193,Yd=16194,wb=16195,Sb=16196,Cb=16197,xb=16198,Xu=16199,qu=16200,Tb=16201,kb=16202,Eb=16203,Ob=16204,Ab=16205,Kd=16206,Pb=16207,Ib=16208,Vt=16209,xC=16210,TC=16211,kW=852,EW=592,OW=15,AW=OW,Mb=e=>(e>>>24&255)+(e>>>8&65280)+((e&65280)<<8)+((e&255)<<24);function PW(){this.strm=null,this.mode=0,this.last=!1,this.wrap=0,this.havedict=!1,this.flags=0,this.dmax=0,this.check=0,this.total=0,this.head=null,this.wbits=0,this.wsize=0,this.whave=0,this.wnext=0,this.window=null,this.hold=0,this.bits=0,this.length=0,this.offset=0,this.extra=0,this.lencode=null,this.distcode=null,this.lenbits=0,this.distbits=0,this.ncode=0,this.nlen=0,this.ndist=0,this.have=0,this.next=null,this.lens=new Uint16Array(320),this.work=new Uint16Array(288),this.lendyn=null,this.distdyn=null,this.sane=0,this.back=0,this.was=0}const ho=e=>{if(!e)return 1;const t=e.state;return!t||t.strm!==e||t.modeTC?1:0},kC=e=>{if(ho(e))return gr;const t=e.state;return e.total_in=e.total_out=t.total=0,e.msg="",t.wrap&&(e.adler=t.wrap&1),t.mode=jf,t.last=0,t.havedict=0,t.flags=-1,t.dmax=32768,t.head=null,t.hold=0,t.bits=0,t.lencode=t.lendyn=new Int32Array(kW),t.distcode=t.distdyn=new Int32Array(EW),t.sane=1,t.back=-1,no},EC=e=>{if(ho(e))return gr;const t=e.state;return t.wsize=0,t.whave=0,t.wnext=0,kC(e)},OC=(e,t)=>{let n;if(ho(e))return gr;const r=e.state;return t<0?(n=0,t=-t):(n=(t>>4)+5,t<48&&(t&=15)),t&&(t<8||t>15)?gr:(r.window!==null&&r.wbits!==t&&(r.window=null),r.wrap=n,r.wbits=t,EC(e))},AC=(e,t)=>{if(!e)return gr;const n=new PW;e.state=n,n.strm=e,n.window=null,n.mode=jf;const r=OC(e,t);return r!==no&&(e.state=null),r},IW=e=>AC(e,AW);let Lb=!0,Xd,qd;const MW=e=>{if(Lb){Xd=new Int32Array(512),qd=new Int32Array(32);let t=0;for(;t<144;)e.lens[t++]=8;for(;t<256;)e.lens[t++]=9;for(;t<280;)e.lens[t++]=7;for(;t<288;)e.lens[t++]=8;for(ll(_C,e.lens,0,288,Xd,0,e.work,{bits:9}),t=0;t<32;)e.lens[t++]=5;ll(wC,e.lens,0,32,qd,0,e.work,{bits:5}),Lb=!1}e.lencode=Xd,e.lenbits=9,e.distcode=qd,e.distbits=5},PC=(e,t,n,r)=>{let i;const u=e.state;return u.window===null&&(u.wsize=1<=u.wsize?(u.window.set(t.subarray(n-u.wsize,n),0),u.wnext=0,u.whave=u.wsize):(i=u.wsize-u.wnext,i>r&&(i=r),u.window.set(t.subarray(n-r,n-r+i),u.wnext),r-=i,r?(u.window.set(t.subarray(n-r,n),0),u.wnext=r,u.whave=u.wsize):(u.wnext+=i,u.wnext===u.wsize&&(u.wnext=0),u.whave{let n,r,i,u,p,o,a,l,h,c,f,s,d,g,m=0,v,y,b,w,S,C,T,k;const A=new Uint8Array(4);let P,z;const I=new Uint8Array([16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15]);if(ho(e)||!e.output||!e.input&&e.avail_in!==0)return gr;n=e.state,n.mode===si&&(n.mode=Gd),p=e.next_out,i=e.output,a=e.avail_out,u=e.next_in,r=e.input,o=e.avail_in,l=n.hold,h=n.bits,c=o,f=a,k=no;e:for(;;)switch(n.mode){case jf:if(n.wrap===0){n.mode=Gd;break}for(;h<16;){if(o===0)break e;o--,l+=r[u++]<>>8&255,n.check=ln(n.check,A,2,0),l=0,h=0,n.mode=fb;break}if(n.head&&(n.head.done=!1),!(n.wrap&1)||(((l&255)<<8)+(l>>8))%31){e.msg="incorrect header check",n.mode=Vt;break}if((l&15)!==cb){e.msg="unknown compression method",n.mode=Vt;break}if(l>>>=4,h-=4,T=(l&15)+8,n.wbits===0&&(n.wbits=T),T>15||T>n.wbits){e.msg="invalid window size",n.mode=Vt;break}n.dmax=1<>8&1),n.flags&512&&n.wrap&4&&(A[0]=l&255,A[1]=l>>>8&255,n.check=ln(n.check,A,2,0)),l=0,h=0,n.mode=db;case db:for(;h<32;){if(o===0)break e;o--,l+=r[u++]<>>8&255,A[2]=l>>>16&255,A[3]=l>>>24&255,n.check=ln(n.check,A,4,0)),l=0,h=0,n.mode=hb;case hb:for(;h<16;){if(o===0)break e;o--,l+=r[u++]<>8),n.flags&512&&n.wrap&4&&(A[0]=l&255,A[1]=l>>>8&255,n.check=ln(n.check,A,2,0)),l=0,h=0,n.mode=pb;case pb:if(n.flags&1024){for(;h<16;){if(o===0)break e;o--,l+=r[u++]<>>8&255,n.check=ln(n.check,A,2,0)),l=0,h=0}else n.head&&(n.head.extra=null);n.mode=mb;case mb:if(n.flags&1024&&(s=n.length,s>o&&(s=o),s&&(n.head&&(T=n.head.extra_len-n.length,n.head.extra||(n.head.extra=new Uint8Array(n.head.extra_len)),n.head.extra.set(r.subarray(u,u+s),T)),n.flags&512&&n.wrap&4&&(n.check=ln(n.check,r,s,u)),o-=s,u+=s,n.length-=s),n.length))break e;n.length=0,n.mode=gb;case gb:if(n.flags&2048){if(o===0)break e;s=0;do T=r[u+s++],n.head&&T&&n.length<65536&&(n.head.name+=String.fromCharCode(T));while(T&&s>9&1,n.head.done=!0),e.adler=n.check=0,n.mode=si;break;case bb:for(;h<32;){if(o===0)break e;o--,l+=r[u++]<>>=h&7,h-=h&7,n.mode=Kd;break}for(;h<3;){if(o===0)break e;o--,l+=r[u++]<>>=1,h-=1,l&3){case 0:n.mode=_b;break;case 1:if(MW(n),n.mode=Xu,t===Ku){l>>>=2,h-=2;break e}break;case 2:n.mode=Sb;break;case 3:e.msg="invalid block type",n.mode=Vt}l>>>=2,h-=2;break;case _b:for(l>>>=h&7,h-=h&7;h<32;){if(o===0)break e;o--,l+=r[u++]<>>16^65535)){e.msg="invalid stored block lengths",n.mode=Vt;break}if(n.length=l&65535,l=0,h=0,n.mode=Yd,t===Ku)break e;case Yd:n.mode=wb;case wb:if(s=n.length,s){if(s>o&&(s=o),s>a&&(s=a),s===0)break e;i.set(r.subarray(u,u+s),p),o-=s,u+=s,a-=s,p+=s,n.length-=s;break}n.mode=si;break;case Sb:for(;h<14;){if(o===0)break e;o--,l+=r[u++]<>>=5,h-=5,n.ndist=(l&31)+1,l>>>=5,h-=5,n.ncode=(l&15)+4,l>>>=4,h-=4,n.nlen>286||n.ndist>30){e.msg="too many length or distance symbols",n.mode=Vt;break}n.have=0,n.mode=Cb;case Cb:for(;n.have>>=3,h-=3}for(;n.have<19;)n.lens[I[n.have++]]=0;if(n.lencode=n.lendyn,n.lenbits=7,P={bits:n.lenbits},k=ll(wW,n.lens,0,19,n.lencode,0,n.work,P),n.lenbits=P.bits,k){e.msg="invalid code lengths set",n.mode=Vt;break}n.have=0,n.mode=xb;case xb:for(;n.have>>24,y=m>>>16&255,b=m&65535,!(v<=h);){if(o===0)break e;o--,l+=r[u++]<>>=v,h-=v,n.lens[n.have++]=b;else{if(b===16){for(z=v+2;h>>=v,h-=v,n.have===0){e.msg="invalid bit length repeat",n.mode=Vt;break}T=n.lens[n.have-1],s=3+(l&3),l>>>=2,h-=2}else if(b===17){for(z=v+3;h>>=v,h-=v,T=0,s=3+(l&7),l>>>=3,h-=3}else{for(z=v+7;h>>=v,h-=v,T=0,s=11+(l&127),l>>>=7,h-=7}if(n.have+s>n.nlen+n.ndist){e.msg="invalid bit length repeat",n.mode=Vt;break}for(;s--;)n.lens[n.have++]=T}}if(n.mode===Vt)break;if(n.lens[256]===0){e.msg="invalid code -- missing end-of-block",n.mode=Vt;break}if(n.lenbits=9,P={bits:n.lenbits},k=ll(_C,n.lens,0,n.nlen,n.lencode,0,n.work,P),n.lenbits=P.bits,k){e.msg="invalid literal/lengths set",n.mode=Vt;break}if(n.distbits=6,n.distcode=n.distdyn,P={bits:n.distbits},k=ll(wC,n.lens,n.nlen,n.ndist,n.distcode,0,n.work,P),n.distbits=P.bits,k){e.msg="invalid distances set",n.mode=Vt;break}if(n.mode=Xu,t===Ku)break e;case Xu:n.mode=qu;case qu:if(o>=6&&a>=258){e.next_out=p,e.avail_out=a,e.next_in=u,e.avail_in=o,n.hold=l,n.bits=h,mW(e,f),p=e.next_out,i=e.output,a=e.avail_out,u=e.next_in,r=e.input,o=e.avail_in,l=n.hold,h=n.bits,n.mode===si&&(n.back=-1);break}for(n.back=0;m=n.lencode[l&(1<>>24,y=m>>>16&255,b=m&65535,!(v<=h);){if(o===0)break e;o--,l+=r[u++]<>w)],v=m>>>24,y=m>>>16&255,b=m&65535,!(w+v<=h);){if(o===0)break e;o--,l+=r[u++]<>>=w,h-=w,n.back+=w}if(l>>>=v,h-=v,n.back+=v,n.length=b,y===0){n.mode=Ab;break}if(y&32){n.back=-1,n.mode=si;break}if(y&64){e.msg="invalid literal/length code",n.mode=Vt;break}n.extra=y&15,n.mode=Tb;case Tb:if(n.extra){for(z=n.extra;h>>=n.extra,h-=n.extra,n.back+=n.extra}n.was=n.length,n.mode=kb;case kb:for(;m=n.distcode[l&(1<>>24,y=m>>>16&255,b=m&65535,!(v<=h);){if(o===0)break e;o--,l+=r[u++]<>w)],v=m>>>24,y=m>>>16&255,b=m&65535,!(w+v<=h);){if(o===0)break e;o--,l+=r[u++]<>>=w,h-=w,n.back+=w}if(l>>>=v,h-=v,n.back+=v,y&64){e.msg="invalid distance code",n.mode=Vt;break}n.offset=b,n.extra=y&15,n.mode=Eb;case Eb:if(n.extra){for(z=n.extra;h>>=n.extra,h-=n.extra,n.back+=n.extra}if(n.offset>n.dmax){e.msg="invalid distance too far back",n.mode=Vt;break}n.mode=Ob;case Ob:if(a===0)break e;if(s=f-a,n.offset>s){if(s=n.offset-s,s>n.whave&&n.sane){e.msg="invalid distance too far back",n.mode=Vt;break}s>n.wnext?(s-=n.wnext,d=n.wsize-s):d=n.wnext-s,s>n.length&&(s=n.length),g=n.window}else g=i,d=p-n.offset,s=n.length;s>a&&(s=a),a-=s,n.length-=s;do i[p++]=g[d++];while(--s);n.length===0&&(n.mode=qu);break;case Ab:if(a===0)break e;i[p++]=n.length,a--,n.mode=qu;break;case Kd:if(n.wrap){for(;h<32;){if(o===0)break e;o--,l|=r[u++]<{if(ho(e))return gr;let t=e.state;return t.window&&(t.window=null),e.state=null,no},DW=(e,t)=>{if(ho(e))return gr;const n=e.state;return(n.wrap&2)===0?gr:(n.head=t,t.done=!1,no)},FW=(e,t)=>{const n=t.length;let r,i,u;return ho(e)||(r=e.state,r.wrap!==0&&r.mode!==lf)?gr:r.mode===lf&&(i=1,i=Wl(i,t,n,0),i!==r.check)?SC:(u=PC(e,t,n,n),u?(r.mode=xC,CC):(r.havedict=1,no))};var BW=EC,$W=OC,NW=kC,zW=IW,jW=AC,VW=LW,UW=RW,HW=DW,WW=FW,GW="pako inflate (from Nodeca project)",hi={inflateReset:BW,inflateReset2:$W,inflateResetKeep:NW,inflateInit:zW,inflateInit2:jW,inflate:VW,inflateEnd:UW,inflateGetHeader:HW,inflateSetDictionary:WW,inflateInfo:GW};function YW(){this.text=0,this.time=0,this.xflags=0,this.os=0,this.extra=null,this.extra_len=0,this.name="",this.comment="",this.hcrc=0,this.done=!1}var KW=YW;const IC=Object.prototype.toString,{Z_NO_FLUSH:XW,Z_FINISH:qW,Z_OK:Kl,Z_STREAM_END:Zd,Z_NEED_DICT:Jd,Z_STREAM_ERROR:ZW,Z_DATA_ERROR:Rb,Z_MEM_ERROR:JW}=_s;function vu(e){this.options=zf.assign({chunkSize:1024*64,windowBits:15,to:""},e||{});const t=this.options;t.raw&&t.windowBits>=0&&t.windowBits<16&&(t.windowBits=-t.windowBits,t.windowBits===0&&(t.windowBits=-15)),t.windowBits>=0&&t.windowBits<16&&!(e&&e.windowBits)&&(t.windowBits+=32),t.windowBits>15&&t.windowBits<48&&(t.windowBits&15)===0&&(t.windowBits|=15),this.err=0,this.msg="",this.ended=!1,this.chunks=[],this.strm=new yC,this.strm.avail_out=0;let n=hi.inflateInit2(this.strm,t.windowBits);if(n!==Kl)throw new Error(eo[n]);if(this.header=new KW,hi.inflateGetHeader(this.strm,this.header),t.dictionary&&(typeof t.dictionary=="string"?t.dictionary=Yl.string2buf(t.dictionary):IC.call(t.dictionary)==="[object ArrayBuffer]"&&(t.dictionary=new Uint8Array(t.dictionary)),t.raw&&(n=hi.inflateSetDictionary(this.strm,t.dictionary),n!==Kl)))throw new Error(eo[n])}vu.prototype.push=function(e,t){const n=this.strm,r=this.options.chunkSize,i=this.options.dictionary;let u,p,o;if(this.ended)return!1;for(t===~~t?p=t:p=t===!0?qW:XW,IC.call(e)==="[object ArrayBuffer]"?n.input=new Uint8Array(e):n.input=e,n.next_in=0,n.avail_in=n.input.length;;){for(n.avail_out===0&&(n.output=new Uint8Array(r),n.next_out=0,n.avail_out=r),u=hi.inflate(n,p),u===Jd&&i&&(u=hi.inflateSetDictionary(n,i),u===Kl?u=hi.inflate(n,p):u===Rb&&(u=Jd));n.avail_in>0&&u===Zd&&n.state.wrap>0&&e[n.next_in]!==0;)hi.inflateReset(n),u=hi.inflate(n,p);switch(u){case ZW:case Rb:case Jd:case JW:return this.onEnd(u),this.ended=!0,!1}if(o=n.avail_out,n.next_out&&(n.avail_out===0||u===Zd))if(this.options.to==="string"){let a=Yl.utf8border(n.output,n.next_out),l=n.next_out-a,h=Yl.buf2string(n.output,a);n.next_out=l,n.avail_out=r-l,l&&n.output.set(n.output.subarray(a,a+l),0),this.onData(h)}else this.onData(n.output.length===n.next_out?n.output:n.output.subarray(0,n.next_out));if(!(u===Kl&&o===0)){if(u===Zd)return u=hi.inflateEnd(this.strm),this.onEnd(u),this.ended=!0,!0;if(n.avail_in===0)break}}return!0};vu.prototype.onData=function(e){this.chunks.push(e)};vu.prototype.onEnd=function(e){e===Kl&&(this.options.to==="string"?this.result=this.chunks.join(""):this.result=zf.flattenChunks(this.chunks)),this.chunks=[],this.err=e,this.msg=this.strm.msg};function dg(e,t){const n=new vu(t);if(n.push(e),n.err)throw n.msg||eo[n.err];return n.result}function QW(e,t){return t=t||{},t.raw=!0,dg(e,t)}var eG=vu,tG=dg,nG=QW,rG=dg,iG=_s,aG={Inflate:eG,inflate:tG,inflateRaw:nG,ungzip:rG,constants:iG};const{Deflate:KY,deflate:XY,deflateRaw:oG,gzip:qY}=hW,{Inflate:ZY,inflate:JY,inflateRaw:sG,ungzip:QY}=aG;var lG=oG,uG=sG;function Db(e){const t=new Map;for(const n of e){const[r,i]=n.split("="),u=decodeURIComponent(i);t.set(r,u)}return t}const cG=function(){if(!window.location.search.includes("?"))return;const t=window.location.search.replace("?","").split("&");let n=Db(t);if(console.log("URL params:",n),n.get("share")){const u=uG(new Uint8Array(atob(n.get("share")).split("").map(p=>p.charCodeAt(0))),{to:"string"});if(!u){Ht().raiseError("Error when trying to decode share parameter!",!1);return}n=Db(u.split("&")),console.log("Share URL params:",n)}const r={id:-1,image:"",prompt:n.get("prompt")||"",sampler_name:n.get("sampler_name")||"k_euler",seed:Number(n.get("seed"))||-1,steps:Number(n.get("steps")||20),cfg_scale:Number(n.get("cfg_scale")||5),height:Number(n.get("height")||512),width:Number(n.get("width")||512),clip_skip:Number(n.get("clip_skip")||0),frames:Number(n.get("frames")||1),fps:Number(n.get("fps")||16),scheduler:n.get("scheduler")||"default"};Jt().generateText2Img(r,!1)},fG=10,dG=!1;function wp(e,t,n,r,i=u=>Ht().raiseError(u,!1)){if(e.status===n&&t)return!0;if(!t.message)return i(`${r}: Got response code ${e.status}`);if(!t.errors)return i(`${r}: ${t.message}`);const u=Object.entries(t.errors).map(p=>`${p[0]} - ${p[1]}`).join(" | ");return i(`${r}: ${t.message} (${u})`)}function ka(e,t){const n=e.trim().replace(/\/+$/,""),r=t.startsWith("/")?t:`/${t}`;return n.length===0?r:`${n}${r}`}const hG=us("interrogate",()=>{const e=ae({}),t=ae(!1);async function n(p){Ht().raiseError(p,!1),t.value=!1,e.value={}}async function r(){const p=Ft(),{source_image:o}=e.value;if(!o)return n("Failed to get interrogation ID: No image supplied.");t.value=!0;const a=await fetch(ka(p.baseURL,"/sdapi/v1/interrogate"),{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({image:o.split(",")[1],model:"clip"})}),l=await a.json();!wp(a,l,200,"Failed to get interrogation",n)||(e.value.id=l.id,e.value.status=l.caption)}function i(){e.value={},t.value=!1}function u(){return e.value.status||!1}return{currentInterrogation:e,interrogating:t,interrogateImage:r,getFormStatus:u,resetInterrogation:i}}),pG={key:0,style:{"margin-top":"16px"}},mG={key:1,style:{"margin-top":"16px"}},gG={key:2},vG={style:{"margin-top":"8px"}},yG={key:0},bG={key:0},_G={key:1},wG=be({__name:"InterrogationView",setup(e){const t=hG(),n=Jt(),r=Ht(),i=ae();async function u(l){if(i.value.clearFiles(),!l.raw.type.includes("image")){r.raiseError("Uploaded file needs to be a image!",!1);return}const h=await zl(l.raw);t.currentInterrogation.source_image=h,t.interrogateImage()}function p(){n.generateText2Img({prompt:o.value})}const o=ee(()=>t.getFormStatus()),{ellipsis:a}=US();return(l,h)=>_(t).currentInterrogation.source_image?_(t).currentInterrogation.status?(N(),oe("div",gG,[ne("div",vG,[se(_(Je),{icon:_(yh),onClick:_(t).resetInterrogation},{default:ue(()=>[...h[1]||(h[1]=[ze("New Interrogation",-1)])]),_:1},8,["icon","onClick"]),o.value?(N(),ve(_(Je),{key:0,icon:_(yh),onClick:p,disabled:!o.value},{default:ue(()=>[...h[2]||(h[2]=[ze("Text2Img (Caption)",-1)])]),_:1},8,["icon","disabled"])):ge("",!0)]),h[4]||(h[4]=ne("h2",{style:{margin:"16px 0 8px 0"}},"Interrogation Results",-1)),se(_(jo),{src:_(t).currentInterrogation.source_image,alt:"Uploaded Image"},null,8,["src"]),o.value?(N(),oe("div",yG,[h[3]||(h[3]=ne("h3",null,"Caption",-1)),o.value?(N(),oe("div",_G,[ne("strong",null,Ee(o.value),1)])):(N(),oe("div",bG,"Processing"+Ee(_(a)),1))])):ge("",!0)])):(N(),oe("div",mG,[ne("strong",null,"Uploading image"+Ee(_(a)),1)])):(N(),oe("div",pG,[ne("div",null,[se(_(Dm),{onChange:u,"auto-upload":!1,limit:1,class:"interrogation-upload",ref_key:"upload",ref:i,multiple:"",drag:""},{default:ue(()=>[se(_(De),{size:100},{default:ue(()=>[se(_(Qp))]),_:1}),h[0]||(h[0]=ne("div",null,[ze("Drop file here OR "),ne("em",null,"click to upload")],-1))]),_:1},512)])]))}}),SG=on(wG,[["__scopeId","data-v-db184ac6"]]);function CG(e,t,n){if(e===0)return"0"+(t?"s":"seconds");if(e==null)return"?";const r=Math.floor(e/86400),i=Math.floor(e%86400/3600),u=Math.floor(e%86400%3600/60),p=Math.floor(e%86400%3600%60),o=r>0?r+(t?"d":"days"):"",a=i>0?i+(t?"h":"hours"):"",l=u>0?u+(t?"m":"minutes"):"",h=p>0?p+(t?"s":"seconds"):"",c=[];return n!=null&&n.days&&c.push(o),n!=null&&n.hours&&c.push(a),n!=null&&n.minutes&&c.push(l),n!=null&&n.seconds&&c.push(h),c.join(" ")}function Sp(e){const t=[];let n=0;for(let r=0;rn&&t.push({type:"literal",text:e.slice(n,r),start:n,end:r});const i=e.indexOf("}",r+1);if(i===-1){t.push({type:"literal",text:e.slice(r),start:r,end:e.length}),n=e.length;break}t.push({type:"expansion",options:e.slice(r+1,i).split("|"),start:r,end:i+1}),n=i+1,r=i}return n{const r=n.type==="literal"?[n.text]:n.options;return t.flatMap(i=>r.map(u=>[...i,u]))},[[]]).map(t=>t.join(""))}function Fb(e){const t=[],n=/]+):([^>]+)>/g;return[e.replace(n,(i,u,p)=>{if(p.trim()==="")return"";const o=Number(p);if(isNaN(o))return"";let a=u,l=!1;const h="|high_noise|";return a.startsWith(h)&&(a=a.substring(h.length),l=!0),t.push({name:a,multiplier:o,...l?{is_high_noise:!0}:{}}),""}),t]}function Bb(e,t){const n=e.indexOf(" ### "),r=n===-1?e:e.slice(0,n),i=n===-1?"":e.slice(n),u=/]+):([^>]+)>/g,p="|high_noise|",o=[];for(const l of t)if(l.type==="literal"){if(l.start>=r.length)break;for(const h of l.text.matchAll(u)){const c=h.index;if(c===void 0)continue;const f=l.start+c;if(f>=r.length||h[2].trim()==="")continue;const s=Number(h[2]);if(isNaN(s))continue;const d=h[1];d.startsWith(p)||d.trim()!==""&&o.push({name:d,multiplier:s,start:f,end:Math.min(f+h[0].length,r.length)})}}if(o.length===0)return[e,[]];let a=r;for(let l=o.length-1;l>=0;l--)a=a.slice(0,o[l].start)+a.slice(o[l].end);return[a.replace(/ +/g," ").trim()+i,o.map(l=>({name:l.name,multiplier:l.multiplier}))]}function TG(e,t){const n=e.map(i=>({...i}));let r=n.length;for(;r>0&&n[r-1].lora===""&&n[r-1].multiplier===0;)r--;return t.forEach((i,u)=>{const p=r+u;p{const J=r.cacheVersion,V=(await r.getAvailableSamplers()).map(M=>M.name);return V.length===0?[]:C(V)},[]),o=h0(async()=>{const J=r.cacheVersion,V=(await r.getAvailableSchedulers()).map(M=>M.name);return V.length===0?[]:T(V)},[]),a=ae(""),l=ae([]),h=ae(!1),c=ae(!1);function f(){h.value||c.value||(c.value=!0,r.fetchLoras().then(J=>{J!==null&&(l.value=J,h.value=!0)}).finally(()=>{c.value=!1}))}function s(){l.value=[],h.value=!1}const d=ee(()=>r.loraList.filter(J=>{const E=Number(J.multiplier);return J.lora&&J.lora.trim()!==""&&!isNaN(E)&&E!==0}).length);xe(()=>a.value!==""||d.value>0,J=>{J&&f()},{immediate:!0}),xe(()=>r.cacheVersion,()=>{s(),(a.value!==""||d.value>0)&&f()});const g=ee(()=>{const J=d.value,E=l.value.length;return J===0?h.value?`${E} available`:"":h.value?`${J} enabled, ${E} available`:`${J} enabled`}),m=J=>!!J.lora&&J.lora.trim()!=="",v=ee(()=>r.loraList.filter(m).length);function y(){const J=r.loraList.filter(m);if(J.length===0)return;const E=J.map(V=>{const M=l.value.find(D=>D.path===V.lora||D.name===V.lora),R=Number(V.multiplier),G=isNaN(R)?0:Math.round(R*1e4)/1e4;return``});r.loraList=r.loraList.filter(V=>!m(V)),r.prompt=r.prompt===""?E.join(" "):`${r.prompt} ${E.join(" ")}`}const b=ee(()=>Bb(r.prompt,Sp(r.prompt))[1].length);function w(){const[J,E]=Bb(r.prompt,Sp(r.prompt));if(E.length===0)return;const V=E.map(M=>{const R=l.value.find(G=>G.path===M.name||G.name===M.name);return{lora:R?R.path:M.name,multiplier:M.multiplier}});r.loraList=TG(r.loraList,V),r.prompt=J}const S=kt({prompt:[{required:!0,message:"Please input prompt",trigger:"change"}],extraRequestFields:[{validator:(J,E,V)=>{try{MC(E),V()}catch(M){V(M instanceof Error?M:new Error(String(M)))}},trigger:"change"}]});function C(J){return!r.params||!r.params.sampler_name||J.indexOf(r.params.sampler_name)===-1&&(r.params.sampler_name=J[0]),J}function T(J){return!r.params||!r.params.scheduler||J.indexOf(r.params.scheduler)===-1&&(r.params.scheduler=J[0]),J}function k(J){return"Elapsed: "+CG(J,!0,{days:!0,hours:!0,minutes:!0,seconds:!0})}function A(){r.validGeneratorTypes.includes(r.generatorType)||(i.showGeneratorBadge=!1)}function P(J){r.generatorType=J,A(),console.log(J)}function z(){u.showCropPreview=!0,u.updateCropPreview()}function I(){var J;(J=document.getElementById("extra_image_input"))==null||J.click()}function $(){var J;(J=document.getElementById("video_start_frame_input"))==null||J.click()}function O(){var J;(J=document.getElementById("video_end_frame_input"))==null||J.click()}function Y(J){var E;return(E=J.dataUrl)==null?void 0:E.startsWith("data:image")}function re(){return r.referenceImages.filter(Y).map(J=>J.dataUrl)}function q(J){return r.referenceImages.slice(0,J).filter(Y).length}return A(),cG(),(J,E)=>(N(),oe($e,null,[se(_(F2),{"default-active":_(r).generatorType,collapse:!0,onSelect:P,mode:_(n)?"horizontal":"vertical",class:ce(_(n)?"mobile-generator-types":"generator-types"),style:je(_(n)?"overflow-x: auto":"")},{default:ue(()=>[se(Wu,{index:"Text2Img","icon-one":_(rO),"icon-two":_(ku),isMobile:_(n)},null,8,["icon-one","icon-two","isMobile"]),se(Wu,{index:"Img2Img","icon-one":_(ku),"icon-two":_(ku),isMobile:_(n)},null,8,["icon-one","icon-two","isMobile"]),se(Wu,{index:"Inpainting","icon-one":VS,"icon-two":_(ku),isMobile:_(n)},null,8,["icon-two","isMobile"]),se(Wu,{index:"Interrogation","icon-one":S7,isMobile:_(n)},null,8,["isMobile"])]),_:1},8,["default-active","mode","class","style"]),ne("div",kG,[_(r).generatorType==="Interrogation"?(N(),oe("div",EG,[E[40]||(E[40]=ne("h1",{style:{margin:"0"}},"Interrogation",-1)),E[41]||(E[41]=ne("div",null,"Interrogate images to get their predicted descriptions.",-1)),se(SG)])):(N(),ve(_(Am),{key:1,"label-position":"left","label-width":"140px",model:_(r),class:"container",rules:S,onSubmit:E[39]||(E[39]=Qe(()=>{},["prevent"]))},{default:ue(()=>{var V,M,R,G;return[ne("div",OG,[se(V7),se(_c,{label:"Negative Prompt",prop:"negativePrompt",modelValue:_(r).negativePrompt,"onUpdate:modelValue":E[0]||(E[0]=D=>_(r).negativePrompt=D),autosize:{maxRows:15},resize:"vertical",type:"textarea",placeholder:"Enter negative prompt here",info:"What to exclude from the image. Not working? Try increasing the guidance.","label-position":"top"},null,8,["modelValue"]),se(_c,{label:"Seed",prop:"seed",modelValue:_(r).params.seed,"onUpdate:modelValue":E[2]||(E[2]=D=>_(r).params.seed=D),placeholder:"Enter seed here",clearable:"","clear-icon":_(eO)},{append:ue(()=>[se(_(fn),{content:"Randomize!",placement:"top"},{default:ue(()=>[se(_(Je),{icon:_(xO),onClick:E[1]||(E[1]=()=>_(r).params.seed=_(LC)())},null,8,["icon"])]),_:1})]),_:1},8,["modelValue","clear-icon"]),(N(),ve(_(by),{key:0,gutter:10},{default:ue(()=>[_(r).multiSelect.sampler.state==="Multiple"?(N(),ve(_(wo),{key:0,span:_(n)?24:12},{default:ue(()=>[se(Lo,{label:"Sampler(s)",prop:"samplers",modelValue:_(r).multiSelect.sampler.selected,"onUpdate:modelValue":E[3]||(E[3]=D=>_(r).multiSelect.sampler.selected=D),options:_(p),info:"Multi-select enabled. Heun and DPM2 double generation time per step, but converge twice as fast.",multiple:""},null,8,["modelValue","options"])]),_:1},8,["span"])):ge("",!0),_(r).multiSelect.sampler.state==="Enabled"?(N(),ve(_(wo),{key:1,span:_(n)?24:12},{default:ue(()=>[se(Lo,{label:"Sampler",prop:"sampler",modelValue:_(r).params.sampler_name,"onUpdate:modelValue":E[4]||(E[4]=D=>_(r).params.sampler_name=D),options:_(p),info:"Heun and DPM2 double generation time per step, but converge twice as fast."},null,8,["modelValue","options"])]),_:1},8,["span"])):ge("",!0),_(r).multiSelect.scheduler.state==="Multiple"?(N(),ve(_(wo),{key:2,span:_(n)?24:12},{default:ue(()=>[se(Lo,{label:"Scheduler(s)",prop:"schedulers",modelValue:_(r).multiSelect.scheduler.selected,"onUpdate:modelValue":E[5]||(E[5]=D=>_(r).multiSelect.scheduler.selected=D),options:_(o),info:"Multi-select enabled. Experimental! KoboldCpp only, allows you to use a different scheduler. Leave as default otherwise.",multiple:""},null,8,["modelValue","options"])]),_:1},8,["span"])):ge("",!0),_(r).multiSelect.scheduler.state==="Enabled"?(N(),ve(_(wo),{key:3,span:_(n)?24:12},{default:ue(()=>[se(Lo,{label:"Scheduler",prop:"scheduler",modelValue:_(r).params.scheduler,"onUpdate:modelValue":E[6]||(E[6]=D=>_(r).params.scheduler=D),options:_(o),info:"Experimental! KoboldCpp only, allows you to use a different scheduler. Leave as default otherwise."},null,8,["modelValue","options"])]),_:1},8,["span"])):ge("",!0)]),_:1})),se(yn,{label:"Batch Size",prop:"batchSize",modelValue:_(r).params.n,"onUpdate:modelValue":E[7]||(E[7]=D=>_(r).params.n=D),min:_(r).minImages,max:_(r).maxImages},null,8,["modelValue","min","max"]),_(r).multiSelect.steps.state==="Multiple"?(N(),ve(yn,{key:1,label:"Steps(s)",prop:"multiSteps",modelValue:_(r).multiSelect.steps.selected,"onUpdate:modelValue":E[8]||(E[8]=D=>_(r).multiSelect.steps.selected=D),min:_(r).minSteps,max:_(r).maxSteps,info:"Multi-select enabled. Keep step count between 30 to 50 for optimal generation times. Coherence typically peaks between 60 and 90 steps, with a trade-off in speed.",multiple:""},null,8,["modelValue","min","max"])):_(r).multiSelect.steps.state==="Enabled"?(N(),ve(yn,{key:2,label:"Steps",prop:"steps",modelValue:_(r).params.steps,"onUpdate:modelValue":E[9]||(E[9]=D=>_(r).params.steps=D),min:_(r).minSteps,max:_(r).maxSteps,info:"Keep step count between 30 to 50 for optimal generation times. Coherence typically peaks between 60 and 90 steps, with a trade-off in speed."},null,8,["modelValue","min","max"])):ge("",!0),se(yn,{label:"Width",prop:"width",modelValue:_(r).params.width,"onUpdate:modelValue":E[10]||(E[10]=D=>_(r).params.width=D),min:_(r).minDimensions,max:_(r).maxDimensions,step:64,change:z},null,8,["modelValue","min","max"]),se(yn,{label:"Height",prop:"height",modelValue:_(r).params.height,"onUpdate:modelValue":E[11]||(E[11]=D=>_(r).params.height=D),min:_(r).minDimensions,max:_(r).maxDimensions,step:64,change:z},null,8,["modelValue","min","max"]),_(r).multiSelect.guidance.state==="Multiple"?(N(),ve(yn,{key:3,label:"Guidance(s)",prop:"cfgScales",modelValue:_(r).multiSelect.guidance.selected,"onUpdate:modelValue":E[12]||(E[12]=D=>_(r).multiSelect.guidance.selected=D),min:_(r).minCfgScale,max:_(r).maxCfgScale,info:"Multi-select enabled. Higher values will make the AI respect your prompt more. Lower values allow the AI to be more creative.",multiple:""},null,8,["modelValue","min","max"])):_(r).multiSelect.guidance.state==="Enabled"?(N(),ve(yn,{key:4,label:"Guidance (CFG)",prop:"cfgScale",modelValue:_(r).params.cfg_scale,"onUpdate:modelValue":E[13]||(E[13]=D=>_(r).params.cfg_scale=D),min:_(r).minCfgScale,max:_(r).maxCfgScale,step:.5,info:"Classifier Free Guidance (CFG Scale). Higher values will make the AI respect your prompt more. Lower values allow the AI to be more creative."},null,8,["modelValue","min","max"])):ge("",!0),_(r).multiSelect.eta.state==="Enabled"?(N(),ve(yn,{key:5,label:"Eta",prop:"eta",modelValue:_(r).params.eta,"onUpdate:modelValue":E[14]||(E[14]=D=>_(r).params.eta=D),min:_(r).minEta,max:_(r).maxEta,step:.1,info:"Noise multiplier for ancestral samplers. 0 disables noise injection."},null,8,["modelValue","min","max"])):ge("",!0),_(r).multiSelect.flowShift.state==="Enabled"?(N(),ve(yn,{key:6,label:"Flow Shift",prop:"flowShift",modelValue:_(r).params.flow_shift,"onUpdate:modelValue":E[15]||(E[15]=D=>_(r).params.flow_shift=D),min:_(r).minFlowShift,max:_(r).maxFlowShift,step:.5,info:"Override shift value for flow models."},null,8,["modelValue","min","max"])):ge("",!0),_(r).multiSelect.clipSkip.state==="Multiple"?(N(),ve(yn,{key:7,label:"CLIP Skip(s)",prop:"clipSkips",modelValue:_(r).multiSelect.clipSkip.selected,"onUpdate:modelValue":E[16]||(E[16]=D=>_(r).multiSelect.clipSkip.selected=D),min:_(r).minClipSkip,max:_(r).maxClipSkip,info:"Multi-select enabled. Last layers of CLIP to ignore. For most situations this can be left alone.",multiple:""},null,8,["modelValue","min","max"])):_(r).multiSelect.clipSkip.state==="Enabled"?(N(),ve(yn,{key:8,label:"CLIP Skip",prop:"clipSkip",modelValue:_(r).params.clip_skip,"onUpdate:modelValue":E[17]||(E[17]=D=>_(r).params.clip_skip=D),min:_(r).minClipSkip,max:_(r).maxClipSkip,info:"Last layers of CLIP to ignore. For most situations this can be left alone."},null,8,["modelValue","min","max"])):ge("",!0),_(r).sourceGeneratorTypes.includes(_(r).generatorType)?(N(),ve(yn,{key:9,label:"Init Strength",prop:"denoise",modelValue:_(r).params.denoising_strength,"onUpdate:modelValue":E[18]||(E[18]=D=>_(r).params.denoising_strength=D),min:_(r).minDenoise,max:_(r).maxDenoise,step:.01,info:"The final image will diverge from the starting image at higher values. 0=unchanged, 1=fullychanged"},null,8,["modelValue","min","max"])):ge("",!0),se(yn,{label:"Video Frames",prop:"frames",modelValue:_(r).params.frames,"onUpdate:modelValue":E[19]||(E[19]=D=>_(r).params.frames=D),min:_(r).minFrames,max:_(r).maxFrames,info:"Number of consecutive video frames to generate (Video models only). More frames increases memory usage."},null,8,["modelValue","min","max"]),_(r).params.frames>1?(N(),ve(yn,{key:10,label:"FPS",prop:"fps",modelValue:_(r).params.fps,"onUpdate:modelValue":E[20]||(E[20]=D=>_(r).params.fps=D),min:_(r).minFps,max:_(r).maxFps,disabled:_(r).params.frames<=1,info:"Frames per second for video generation."},null,8,["modelValue","min","max","disabled"])):ge("",!0),_(r).generatorType==="Text2Img"?(N(),oe("div",{key:11,class:"reference-images",onDragover:E[23]||(E[23]=Qe(()=>{},["prevent"])),onDrop:E[24]||(E[24]=Qe(D=>_(r).setExtraImage(D),["prevent"]))},[ne("div",AG,[E[44]||(E[44]=ne("span",{class:"reference-images-label"},"Reference Media",-1)),ne("div",PG,[ne("input",{class:"reference-images-input",type:"file",id:"extra_image_input",onChange:E[21]||(E[21]=D=>_(r).setExtraImage(D)),accept:"image/*,audio/*",multiple:""},null,32),se(_(Je),{onClick:I},{default:ue(()=>[...E[42]||(E[42]=[ze(" Select or Drag Files ",-1)])]),_:1}),se(_(Je),{onClick:E[22]||(E[22]=D=>_(r).clearExtraImage()),disabled:_(r).referenceImages.length===0},{default:ue(()=>[...E[43]||(E[43]=[ze(" Clear Files ",-1)])]),_:1},8,["disabled"])])]),_(r).referenceImages.length>0?(N(),oe("div",IG,[(N(!0),oe($e,null,zt(_(r).referenceImages,(D,B)=>(N(),oe("div",{class:ce(["reference-image-item",{"reference-file-item":!Y(D)}]),key:D.id},[ne("span",MG,Ee(B+1),1),Y(D)?(N(),ve(_(jo),{key:0,class:"reference-image-thumb",src:D.dataUrl,fit:"cover","preview-src-list":re(),"initial-index":q(B),"preview-teleported":""},null,8,["src","preview-src-list","initial-index"])):ge("",!0),ne("span",{class:"reference-image-name",title:D.name},Ee(D.name),9,LG),ne("div",RG,[se(_(fn),{content:"Move up",placement:"top"},{default:ue(()=>[se(_(Je),{class:"small-btn",icon:_(vh),disabled:B===0,onClick:Z=>_(r).moveExtraImage(B,-1)},null,8,["icon","disabled","onClick"])]),_:2},1024),se(_(fn),{content:"Move down",placement:"top"},{default:ue(()=>[se(_(Je),{class:"small-btn",icon:_(Ko),disabled:B===_(r).referenceImages.length-1,onClick:Z=>_(r).moveExtraImage(B,1)},null,8,["icon","disabled","onClick"])]),_:2},1024),se(_(fn),{content:"Remove",placement:"top"},{default:ue(()=>[se(_(Je),{class:"small-btn",type:"danger",icon:_(Ki),plain:"",onClick:Z=>_(r).removeExtraImage(B)},null,8,["icon","onClick"])]),_:2},1024)])],2))),128))])):(N(),oe("div",DG," No reference images selected. "))],32)):ge("",!0),_(r).generatorType==="Text2Img"&&_(r).params.frames>1?(N(),oe("div",FG,[ne("div",BG,[ne("input",{class:"reference-images-input",type:"file",id:"video_start_frame_input",onChange:E[25]||(E[25]=D=>_(r).setVideoStartFrame(D)),accept:"image/*"},null,32),E[46]||(E[46]=ne("span",{class:"video-frame-label"},"Video Start Frame",-1)),_(r).videoStartFrame?(N(),ve(_(jo),{key:0,class:"reference-image-thumb",src:_(r).videoStartFrame.dataUrl,fit:"cover","preview-teleported":""},null,8,["src"])):(N(),oe("div",$G)),ne("span",{class:"video-frame-name",title:((V=_(r).videoStartFrame)==null?void 0:V.name)||"No image selected"},Ee(((M=_(r).videoStartFrame)==null?void 0:M.name)||"No image selected"),9,NG),ne("div",zG,[se(_(Je),{onClick:$},{default:ue(()=>[...E[45]||(E[45]=[ze(" Select Image ",-1)])]),_:1}),se(_(fn),{content:"Remove",placement:"top"},{default:ue(()=>[se(_(Je),{class:"small-btn",type:"danger",icon:_(Ki),plain:"",disabled:!_(r).videoStartFrame,onClick:E[26]||(E[26]=D=>_(r).clearVideoStartFrame())},null,8,["icon","disabled"])]),_:1})])]),ne("div",jG,[ne("input",{class:"reference-images-input",type:"file",id:"video_end_frame_input",onChange:E[27]||(E[27]=D=>_(r).setVideoEndFrame(D)),accept:"image/*"},null,32),E[48]||(E[48]=ne("span",{class:"video-frame-label"},"Video End Frame",-1)),_(r).videoEndFrame?(N(),ve(_(jo),{key:0,class:"reference-image-thumb",src:_(r).videoEndFrame.dataUrl,fit:"cover","preview-teleported":""},null,8,["src"])):(N(),oe("div",VG)),ne("span",{class:"video-frame-name",title:((R=_(r).videoEndFrame)==null?void 0:R.name)||"No image selected"},Ee(((G=_(r).videoEndFrame)==null?void 0:G.name)||"No image selected"),9,UG),ne("div",HG,[se(_(Je),{onClick:O},{default:ue(()=>[...E[47]||(E[47]=[ze(" Select Image ",-1)])]),_:1}),se(_(fn),{content:"Remove",placement:"top"},{default:ue(()=>[se(_(Je),{class:"small-btn",type:"danger",icon:_(Ki),plain:"",disabled:!_(r).videoEndFrame,onClick:E[28]||(E[28]=D=>_(r).clearVideoEndFrame())},null,8,["icon","disabled"])]),_:1})])])])):ge("",!0),se(_(by),null,{default:ue(()=>[se(_(wo),{span:_(n)?24:12},{default:ue(()=>[se(Gy,{label:"ESRGAN Upscale",prop:"enable_hr",modelValue:_(r).params.enable_hr,"onUpdate:modelValue":E[29]||(E[29]=D=>_(r).params.enable_hr=D),info:"Enable upscale with ESRGAN."},null,8,["modelValue"])]),_:1},8,["span"]),se(_(wo),{span:_(n)?24:12},{default:ue(()=>[_(r).generatorType==="Img2Img"?(N(),ve(Gy,{key:0,label:"Send as RefImg",prop:"send_as_refimg",modelValue:_(r).params.send_as_refimg,"onUpdate:modelValue":E[30]||(E[30]=D=>_(r).params.send_as_refimg=D),info:"Instead of regular Img2Img, send the image as a reference image for edit models."},null,8,["modelValue"])):ge("",!0)]),_:1},8,["span"])]),_:1}),se(_c,{label:"Extra Fields",prop:"extraRequestFields",modelValue:_(r).extraRequestFields,"onUpdate:modelValue":E[31]||(E[31]=D=>_(r).extraRequestFields=D),autosize:{minRows:2,maxRows:8},resize:"vertical",type:"textarea",placeholder:'{"some_field": 1234}',info:"Optional JSON object merged into the final generation request. These values override fields configured above."},null,8,["modelValue"]),se(_(fD),{modelValue:a.value,"onUpdate:modelValue":E[33]||(E[33]=D=>a.value=D),class:"lora-list-collapse"},{default:ue(()=>[se(_(dD),{name:"lora-list"},{title:ue(()=>[E[49]||(E[49]=ne("span",{class:"lora-list-title"},"LoRAs",-1)),ne("span",WG,Ee(g.value),1)]),default:ue(()=>[h.value&&l.value.length===0?(N(),oe("div",GG," No LoRAs were returned by the server. ")):ge("",!0),(N(!0),oe($e,null,zt(_(r).loraList,(D,B)=>(N(),oe("div",{key:B,class:"lora-list-row"},[se(_(Lm),{modelValue:D.lora,"onUpdate:modelValue":Z=>D.lora=Z,class:"lora-list-select",filterable:"",placeholder:"Select a LoRA"},{default:ue(()=>[se(_(Yc),{value:""}),(N(!0),oe($e,null,zt(l.value,Z=>(N(),ve(_(Yc),{key:Z.path,label:Z.name,value:Z.path},null,8,["label","value"]))),128))]),_:1},8,["modelValue","onUpdate:modelValue"]),se(_(Gc),{modelValue:D.multiplier,"onUpdate:modelValue":Z=>D.multiplier=Z,step:.05,precision:2,"controls-position":"right"},null,8,["modelValue","onUpdate:modelValue"]),se(_(fn),{content:"Remove",placement:"top"},{default:ue(()=>[se(_(Je),{icon:_(Ki),plain:"",onClick:Z=>_(r).removeLoraRow(B)},null,8,["icon","onClick"])]),_:2},1024)]))),128)),ne("div",YG,[se(_(Je),{icon:_(Sf),onClick:E[32]||(E[32]=D=>_(r).addLoraRow()),disabled:l.value.length===0},{default:ue(()=>[...E[50]||(E[50]=[ze(" Add LoRA ",-1)])]),_:1},8,["icon","disabled"]),se(_(Je),{icon:_(vh),onClick:y,disabled:v.value===0},{default:ue(()=>[...E[51]||(E[51]=[ze(" To Prompt ",-1)])]),_:1},8,["icon","disabled"]),se(_(Je),{icon:_(Ko),onClick:w,disabled:b.value===0},{default:ue(()=>[...E[52]||(E[52]=[ze(" From Prompt ",-1)])]),_:1},8,["icon","disabled"])])]),_:1})]),_:1},8,["modelValue"])]),ne("div",KG,[se(_(Je),{onClick:E[34]||(E[34]=()=>{_(r).cancelled=!0,_(r).generating=!1,_(r).resetStore()}),class:"reset-btn"},{default:ue(()=>[...E[53]||(E[53]=[ze("Reset",-1)])]),_:1}),se(_(Je),{type:"primary",class:"generate-cancel-btn",style:je(_(r).generating?"width: 55%;":""),onClick:E[35]||(E[35]=()=>_(r).generateImage(_(r).generatorType))},{default:ue(()=>[ne("span",null," Generate "+Ee(_(r).totalImageCount)+" image"+Ee(_(r).totalImageCount===1?"":"s"),1)]),_:1},8,["style"]),_(r).generating?(N(),ve(_(Je),{key:0,type:"danger",class:"generate-cancel-btn",style:{width:"25%"},disabled:_(r).cancelled,onClick:E[36]||(E[36]=()=>{var D;(D=_(r).abortController)==null||D.abort(),_(r).cancelled=!0,_(r).generating=!1,_(r).clearQueue(),_(r).clearLastImageGenkey(),_(r).stopProgressPolling()})},{default:ue(()=>[...E[54]||(E[54]=[ze("Cancel all",-1)])]),_:1},8,["disabled"])):ge("",!0)]),ne("div",XG,[se(_(hR),{class:"center-both generated-image"},{default:ue(()=>{var D,B,Z,H,Q;return[!_(r).generating&&_(r).outputs.length==0?(N(),oe("div",qG,[/Inpainting/.test(_(r).generatorType)?(N(),ve(Ky,{key:0})):ge("",!0),/Img2Img/.test(_(r).generatorType)?(N(),ve(Ky,{key:1})):ge("",!0)])):ge("",!0),!_(i).showGeneratedImages&&_(r).generating?(N(),ve(R7,{key:1,generated:_(r).outputs.length,total:_(r).queue.length,elapsed:k(_(r).timer.seconds),"progress-percentage":(D=_(r).progressInfo)==null?void 0:D.percentage,"text-info":(B=_(r).progressInfo)==null?void 0:B.textInfo,"current-step":(Z=_(r).progressInfo)==null?void 0:Z.currentStep,"total-steps":(H=_(r).progressInfo)==null?void 0:H.totalSteps,"preview-image":(Q=_(r).progressInfo)==null?void 0:Q.previewImage,generating:_(r).generating,onShowGenerated:E[37]||(E[37]=te=>_(i).showGeneratedImages=!0)},null,8,["generated","total","elapsed","progress-percentage","text-info","current-step","total-steps","preview-image","generating"])):ge("",!0),_(i).showGeneratedImages&&_(r).outputs.length!==0?(N(),ve(q7,{key:2})):ge("",!0)]}),_:1}),_(r).lastImageRecoveryAvailable?(N(),ve(_(f$),{key:0,class:"last-image-recovery",type:"primary",onClick:E[38]||(E[38]=D=>_(r).recoverLastGeneratedImage())},{default:ue(()=>[...E[55]||(E[55]=[ze(" Recover last generated image ",-1)])]),_:1})):ge("",!0)])]}),_:1},8,["model","rules"]))])],64))}}),ul=zE({history:gE("/"),routes:[{path:"/",name:"generate",component:ZG},{path:"/images",name:"images",component:()=>Fd(()=>Promise.resolve().then(()=>MY),void 0)},{path:"/about",name:"about",component:()=>Fd(()=>Promise.resolve().then(()=>zY),void 0)},{path:"/options",name:"options",component:()=>Fd(()=>Promise.resolve().then(()=>UY),void 0)},{path:"/return",name:"return",redirect:e=>(window.location.href=window.location.pathname.endsWith("/")?"..":".","/")}]});function Zu(){return{steps:20,n:1,sampler_name:"Euler",width:512,height:512,cfg_scale:5,eta:1,flow_shift:0,clip_skip:0,seed:-1,denoising_strength:.6,frames:1,fps:16,enable_hr:!1,send_as_refimg:!0,scheduler:"default"}}function LC(){return Math.floor(Math.random()*9999999)+1}function JG(){return Math.floor(Math.random()*9e5+1e5).toString()}const Jt=us("generator",()=>{const e=["Text2Img","Img2Img","Inpainting"],t=["Img2Img","Inpainting"],n=ae("Text2Img"),r=ae(""),i=sn("promptHistory",[]),u=ae(""),p=sn("negativeLibrary",[]),o=ae(""),a=ae(Zu()),l=ae({interval:0,seconds:0}),h=ae(null),c=ae(0),f=ae({sampler:{name:"Sampler",state:"Enabled",allowedStates:["Disabled","Enabled","Multiple"],selected:[a.value.sampler_name],mapToParam:Se=>Se.sampler_name},scheduler:{name:"Scheduler",state:"Enabled",allowedStates:["Disabled","Enabled","Multiple"],selected:[a.value.scheduler],mapToParam:Se=>Se.scheduler},steps:{name:"Steps",state:"Enabled",allowedStates:["Disabled","Enabled","Multiple"],selected:[a.value.steps],mapToParam:Se=>Se.steps},guidance:{name:"CFG Scale",state:"Enabled",allowedStates:["Disabled","Enabled","Multiple"],selected:[a.value.cfg_scale],mapToParam:Se=>Se.cfg_scale},clipSkip:{name:"Clip Skip",state:"Disabled",allowedStates:["Disabled","Enabled","Multiple"],selected:[a.value.clip_skip],mapToParam:Se=>Se.clip_skip},eta:{name:"Eta",state:"Disabled",allowedStates:["Disabled","Enabled"],selected:[a.value.eta],mapToParam:Se=>Se.eta},flowShift:{name:"Flow Shift",state:"Disabled",allowedStates:["Disabled","Enabled"],selected:[a.value.flow_shift],mapToParam:Se=>Se.flow_shift}}),s=()=>({sourceProcessing:void 0,sourceImage:void 0,maskImage:void 0}),d=ae({...s(),sourceProcessing:"inpainting"}),g=ae({...s(),sourceProcessing:"img2img"}),m=Se=>Se==="Inpainting"?d.value:Se==="Img2Img"?g.value:s(),v=ee(()=>m(n.value)),y=ae(""),b=ae(!1),w=ae(!1),S=ae([]),C=ae(null),T=ae([]),k=sn("lastImageGenkey",""),A=sn("lastImageRecoveryAttemptedGenkey",""),P=ae(!1);A.value===k.value&&(k.value=""),A.value="";const z=ee(()=>k.value?ka(Ft().baseURL,`/sdapi/v1/get_last.json?genkey=${encodeURIComponent(k.value)}`):""),I=ee(()=>z.value!==""&&!b.value&&!P.value);function $(){k.value="",A.value=""}async function O(){var Se,Ne,Ue,et,nt,Ot;if(!(!z.value||P.value)){A.value=k.value,P.value=!0;try{const Ye=await fetch(z.value);if(!Ye.ok)throw new Error(`server returned ${Ye.status}`);const st=await Ye.json();if(!Array.isArray(st.images)||!st.images[0])throw new Error("server returned an invalid recovery payload");const Rn=(Ne=(Se=st.parameters)!=null?Se:st.params)!=null?Ne:{};S.value=[],Ht().showGeneratedImages=!1,await ie([{...st,prompt:(et=(Ue=st.prompt)!=null?Ue:Rn.prompt)!=null?et:"",params:Rn,models:(Ot=st.models)!=null?Ot:[(nt=st.modelName)!=null?nt:"(Unknown model)"]}],!0)}catch(Ye){const st=Ye instanceof Error?Ye.message:String(Ye);Ht().raiseError(`Failed to recover the last generated image: ${st}`,!1)}finally{P.value=!1}}}const Y=ae(64),re=ee(()=>Ft().allowLargerParams==="Enabled"?3072:1024),q=ae(1),J=ae(20),E=ae(1),V=ee(()=>Ft().allowLargerParams==="Enabled"?150:50),M=ae(1),R=ae(24),G=ae(0),D=ae(1),B=ae(0),Z=ae(20),H=ae(0),Q=ae(1),te=ae(0),fe=ae(10),me=ae(1),_e=ee(()=>Ft().allowLargerParams==="Enabled"?400:200),j=ae(16),x=ee(()=>Ft().allowLargerParams==="Enabled"?32:24),U=(Se,Ne,Ue)=>Array.from({length:(Ne-Se+1)/Ue},(et,nt)=>(nt+Se)*Ue),K=ae(U(te.value,fe.value,1)),L=ae(U(M.value,R.value,.5)),F=ee(()=>{const Se=(Rn,nn,ei=1)=>Rn*(nn.state==="Multiple"&&nn.selected.length>0?nn.selected.length:ei),Ue=a.value.n*Ce().length,et=Se(Ue,f.value.sampler),nt=Se(et,f.value.scheduler),Ot=Se(nt,f.value.steps),Ye=Se(Ot,f.value.guidance);return Se(Ye,f.value.clipSkip)});function X(){return a.value=Zu(),o.value="",d.value=s(),g.value=s(),po.value=null,mo.value=null,S.value=[],Rr.value=[],Ht().showGeneratedImages=!1,de(),$(),!0}function de(){T.value=[]}function le(){S.value=[]}async function W(){const Se=await Wt("/sdapi/v1/loras");return Array.isArray(Se)?Se:null}async function pe(Se){var _g,wg;if(!e.includes(Se))return[];if(r.value==="")return he("Failed to generate: No prompt submitted.");let Ne;try{Ne=MC(o.value)}catch(Ve){const pt=Ve instanceof Error?Ve.message:String(Ve);return he(`Failed to generate: ${pt}`)}const Ue=al(),et=Ht();Ue.saveImages();const{sourceImage:nt,maskImage:Ot,sourceProcessing:Ye}=m(Se);va(r.value);const st=[],nn=Ce().map(Ve=>{const pt=Ve.split(" ### ");return{prompt:pt[0],negative_prompt:pt[1]||""}}).map(Ve=>{const[pt,Zt]=Fb(Ve.prompt);return{...Ve,prompt:pt,extractedLoras:Zt}}),ei=nn.some(Ve=>Ve.extractedLoras.length>0)||Rr.value.some(Ve=>Ve.lora&&Ve.lora.trim()!=="")?(_g=await W())!=null?_g:[]:[],ti=Rr.value.filter(Ve=>Ve.lora&&Ve.lora.trim()!=="").flatMap(Ve=>{const pt=ei.find(Dn=>Dn.name===Ve.lora||Dn.path===Ve.lora),Zt=Number(Ve.multiplier);return[{name:pt?pt.name:Ve.lora,multiplier:isNaN(Zt)?0:Zt,allowUnresolved:!1}]}),br=Ve=>{const pt=new Map;for(const Zt of Ve){if(!Zt.name||Zt.name.trim()==="")continue;const Dn=`${Zt.name}\0${Zt.is_high_noise?1:0}`,or=pt.get(Dn);or?(or.multiplier=Math.round((or.multiplier+Zt.multiplier)*1e4)/1e4,or.allowUnresolved=or.allowUnresolved||Zt.allowUnresolved):pt.set(Dn,{...Zt})}return[...pt.values()]},yu=nn.map(({extractedLoras:Ve,...pt})=>{const Zt=br([...Ve.map(Gt=>({name:Gt.name,multiplier:Gt.multiplier,...Gt.is_high_noise?{is_high_noise:!0}:{},allowUnresolved:!0})),...ti]),Dn=Zt.flatMap(Gt=>{if(Gt.multiplier===0)return[];const _u=ei.find(Cg=>Cg.name===Gt.name||Cg.path===Gt.name),Sg=_u?_u.path:Gt.allowUnresolved?Gt.name:"";return Sg?[{path:Sg,multiplier:Gt.multiplier,...Gt.is_high_noise?{is_high_noise:!0}:{}}]:[]}),or=Zt.map(Gt=>``),ya=[or.length>0?pt.prompt.replace(/ +/g," ").trim():pt.prompt,or.join(" ")].filter(Gt=>Gt!=="").join(" "),vo=pt.negative_prompt!==""?`${ya} ### ${pt.negative_prompt}`:ya;return{...pt,full_prompt:vo,...Dn.length>0?{lora:Dn}:{}}}),{seed:bu,cfg_scale:ar,eta:mg,steps:ni,clip_skip:qC,flow_shift:gg,sampler_name:ZC,scheduler:JC,n:QC,...vg}=a.value,Wf=parseInt(bu.toString()),ex=isNaN(Wf)||Wf<0?LC():Wf,tx=Array.from({length:QC},(Ve,pt)=>ex+pt),go=(Ve,pt)=>Ve.state==="Disabled"?[]:Ve.state==="Enabled"?[pt]:Ve.state==="Multiple"&&Ve.selected.length===0?[]:Ve.selected,nx={promptVariant:yu,seed:tx,cfg_scale:go(f.value.guidance,ar),eta:go(f.value.eta,mg),steps:go(f.value.steps,ni),clip_skip:go(f.value.clipSkip,qC),sampler_name:go(f.value.sampler,ZC),scheduler:go(f.value.scheduler,JC)},rx=(Ve=>Object.entries(Ve).filter(([Zt,Dn])=>Dn.length>0).reduce((Zt,[Dn,or])=>{const $t=[];for(const ya of Zt)for(const vo of or)$t.push({...ya,[Dn]:vo});return $t},[{}]))(nx),ix=[await mt()];for(const Ve of rx){const{promptVariant:{full_prompt:pt,...Zt},...Dn}=Ve,or=Se==="Img2Img"?vg.send_as_refimg:!1,$t={prompt:pt,params:{...vg,send_as_refimg:or,...Dn,...Zt,init_images:nt?[nt.split(",")[1]]:[],mask:Ot,inpainting_mask_invert:Ot?0:null,inpainting_fill:Ot?1:null},source_image:nt==null?void 0:nt.split(",")[1],source_mask:Ot,source_processing:Ye,models:ix};$t.params.sampler_name=="default"&&delete $t.params.sampler_name,$t.params.scheduler=="default"&&delete $t.params.scheduler,!$t.params.frames||$t.params.frames<=1?(delete $t.params.frames,delete $t.params.fps):$t.params.fps=Math.min(x.value,Math.max(j.value,Math.round(Number($t.params.fps)||Zu().fps)));const ya=Se==="Text2Img",vo=ya?Dr.value.map(_u=>_u.base64):[];vo.length>0&&($t.params.extra_images=vo),ya&&$t.params.frames&&$t.params.frames>1&&(po.value&&($t.params.video_start_frame=po.value.base64),mo.value&&($t.params.video_end_frame=mo.value.base64)),Ft().alsoRequestAvi==="Enabled"&&$t.params.frames&&$t.params.frames>1&&($t.params.video_output_type=2);const Gt={};f.value.flowShift.state==="Enabled"&&gg>0&&(Gt.params={flow_shift:gg}),Ft().keepImageGenOnDisconnect==="Enabled"&&(Gt.keep_image_gen_on_disconnect=!0),Object.keys(Gt).length>0&&($t.params.kcpp_extra_args=Gt),Object.assign($t.params,Ne),st.push($t)}let yg=!1;b.value||(yg=!0,S.value=[]),b.value=!0,et.showGeneratedImages=!1;let bg=T.value.filter(Ve=>!Ve.gathered&&!Ve.failed).length;for(let Ve=0;Ve{l.value.seconds++},1e3),XC();!T.value.every(Ve=>Ve.gathered||Ve.failed)&&!w.value;){const Ve=T.value.find(pt=>!pt.gathered&&!pt.failed);if(!Ve)break;Ve.gathered=!0;try{const pt=await Ie(Ve.params,(wg=C.value)==null?void 0:wg.signal);if(!pt){Ve.failed=!0;continue}ie([{...pt,...Ve}])}catch(pt){Ve.failed=!0,console.error("Error fetching image:",pt)}}T.value.some(Ve=>Ve.failed)&&T.value.every(Ve=>Ve.gathered||Ve.failed)&&(b.value=!1,clearInterval(l.value.interval),l.value.interval=0,l.value.seconds=0,Hf(),T.value=[])}}async function ie(Se,Ne=!1){const Ue=Qa();console.log(Se);const et=await Promise.all(Se.map(async Ye=>{var yu,bu;const st=Ye.images[0],nn=!!Ye.animated?"gif":"png",ei=Ye.extra_data?`data:video/avi;base64,${Ye.extra_data}`:"",ti=Ye.final_frame?`data:image/jpeg;base64,${Ye.final_frame}`:"",br={id:-1,image:`data:image/${nn};base64,${st}`,prompt:Ye.prompt,modelName:Ye.models[0],frames:Ye.params.frames,fps:Ye.params.fps,extra_avi:ei,final_frame:ti,enable_hr:Ye.params.enable_hr,send_as_refimg:Ye.params.send_as_refimg,flow_shift:(bu=(yu=Ye.params.kcpp_extra_args)==null?void 0:yu.params)==null?void 0:bu.flow_shift,lora_meta:""};if(Ye.info&&typeof Ye.info=="string"&&Ye.info.trim()!=="")try{const ar=JSON.parse(Ye.info);["seed","steps","sampler_name","cfg_scale","eta","width","height","clip_skip","fps"].forEach(ni=>{ar[ni]!=null&&ar[ni]!=null?br[ni]=ar[ni]:Ye.params[ni]!=null&&(br[ni]=Ye.params[ni])}),ar.extra_generation_params&&ar.extra_generation_params["Schedule type"]?br.scheduler=ar.extra_generation_params["Schedule type"]:br.scheduler=Ye.params.scheduler,ar.lora_meta&&(br.lora_meta=ar.lora_meta)}catch(ar){console.warn("Failed to parse info JSON:",ar)}return br})),nt=await Ue.pushOutputs(et),Ot=0;return S.value=[...nt.map(Ye=>({type:"image",index:Ot,output:Ye})),...S.value].sort((Ye,st)=>Ye.index-st.index),(Ne||S.value.length===T.value.length)&&(T.value=[],b.value=!1,Ht().showGeneratedImages=!0,$(),clearInterval(l.value.interval),l.value.interval=0,l.value.seconds=0,Hf()),et}async function he(Se){const Ne=Ht();return Se&&Ne.raiseError(Se,!1),[]}function we(Se,Ne,Ue,et){return Ne<=Ue?Ne:(Ht().raiseWarning(`This image was generated using the 'Larger Values' option. Setting '${Se}' to its default value instead of ${Ne}.`,!0),et)}async function Te(Se,Ne=!0){var et;const Ue=Zu();if(n.value="Text2Img",f.value.guidance.state="Enabled",f.value.sampler.state="Enabled",f.value.steps.state="Enabled",f.value.clipSkip.state="Disabled",f.value.scheduler.state="Enabled",ul.push("/"),Ne&&(Se.width=Se.width||Ue.width,Se.height=Se.height||Ue.height),Se.prompt){const nt=Se.prompt.split(" ### ");r.value=nt[0],u.value=nt[1]||"";const[,Ot]=Fb(r.value);if(Ot.length>0){const Ye=(et=await W())!=null?et:[];Rr.value=Rr.value.filter(st=>!st.lora||st.lora.trim()===""?!0:!Ot.some(Rn=>Rn.name===st.lora||Ye.some(nn=>nn.name===Rn.name&&nn.path===st.lora)))}}if(Se.sampler_name){a.value.sampler_name=Se.sampler_name;const Ot=(await rr()).find(Ye=>Ye.aliases&&Ye.aliases.includes(Se.sampler_name));Ot&&(a.value.sampler_name=Ot.name)}Se.steps&&(a.value.steps=we("steps",Se.steps,V.value,Ue.steps)),Se.cfg_scale&&(a.value.cfg_scale=Se.cfg_scale),(Se.eta||Se.eta===0)&&(a.value.eta=Se.eta),(Se.flow_shift||Se.flow_shift===0)&&(a.value.flow_shift=Se.flow_shift,f.value.flowShift.state=Se.flow_shift>0?"Enabled":"Disabled"),Se.width&&(a.value.width=we("width",Se.width,re.value,Ue.width)),Se.height&&(a.value.height=we("height",Se.height,re.value,Ue.height)),Se.seed&&(a.value.seed=Se.seed),Se.clip_skip&&(a.value.clip_skip=we("clip_skip",Se.clip_skip,fe.value,Ue.clip_skip)),Se.scheduler&&(a.value.scheduler=Se.scheduler),Se.frames&&(a.value.frames=we("frames",Se.frames,_e.value,Ue.frames)),Se.fps&&(a.value.fps=Math.min(x.value,Math.max(j.value,Math.round(we("fps",Se.fps,x.value,Ue.fps)))))}function Ae(Se){const Ne=al();n.value="Img2Img",g.value.sourceImage=Se,Ne.drawing=!1,S.value=[],ul.push("/"),ur.fabric.Image.fromURL(Se,Ne.newImage)}function Le(Se){const Ne=al();S.value=[],d.value.sourceImage=Se,n.value="Inpainting",ul.push("/"),ur.fabric.Image.fromURL(Se,Ne.newImage)}function ye(){return u.value===""?r.value:`${r.value} ### ${u.value}`}function Ce(){const Se=ye();return xG(Sp(Se))}async function Ie(Se,Ne){const Ue=Ft();try{const et=JG();k.value=et,A.value="";const nt={...Se,genkey:et},Ot=await fetch(ka(Ue.baseURL,`/sdapi/v1/${Se.init_images.length>0?"img":"txt"}2img`),{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(nt),signal:Ne}),Ye=await Ot.json();return wp(Ot,Ye,200,"Failed to fetch",Me)?Ye:!1}catch{return!1}}function Me(Se){return Ht().raiseError(Se,!1),w.value=!1,S.value=[],!1}async function mt(){const Se=Ft(),Ne=await fetch(ka(Se.baseURL,"/sdapi/v1/sd-models")),Ue=await Ne.json();if(!!wp(Ne,Ue,200,"Failed to get available models"))return Ue.length===0?"(No model loaded)":Ue[0].model_name}const qt=ae(0),tt=new Map;function Lt(){tt.clear(),qt.value++}xe(()=>Ft().baseURL,()=>{Lt()});async function Wt(Se){const Ne=Ft(),Ue=ka(Ne.baseURL,Se);if(tt.has(Ue))return tt.get(Ue);const et=(async()=>{try{const nt=await fetch(Ue);if(nt.ok)return await nt.json();console.error(`API Error: ${nt.status} ${nt.statusText} at ${Ue}`)}catch(nt){console.error(`Fetch error for ${Ue}:`,nt)}return tt.delete(Ue),null})();return tt.set(Ue,et),et}async function rr(){const Se=await Wt("/sdapi/v1/samplers");return Array.isArray(Se)?Se:[]}async function Tn(){const Se=await Wt("/sdapi/v1/schedulers");return Array.isArray(Se)?Se:[]}function ir(Se){p.value.indexOf(Se)===-1&&(p.value=[...p.value,Se])}function ga(Se){p.value=p.value.filter(Ne=>Ne!=Se)}function va(Se){if(i.value.findIndex(Ne=>Ne.prompt===Se)===-1){if(i.value.length>=10+i.value.filter(Ne=>Ne.starred).length){const Ne=i.value.filter(et=>!et.starred),Ue=i.value.findIndex(et=>et===Ne[Ne.length-1]);i.value.splice(Ue,1)}i.value=[...i.value,{starred:!1,timestamp:Date.now(),prompt:Se}]}}function DC(Se){i.value=i.value.filter(Ne=>Ne.prompt!=Se&&Ne!=Se)}function FC(){return!1}const Rr=ae([]);function BC(){Rr.value=[...Rr.value,{lora:"",multiplier:0}]}function $C(Se){Rr.value=Rr.value.filter((Ne,Ue)=>Ue!==Se)}const Dr=ae([]),po=ae(null),mo=ae(null);async function pg(Se){var Ot,Ye;const Ue=(Ye=Se.target.files)!=null?Ye:(Ot=Se.dataTransfer)==null?void 0:Ot.files,et=Array.from(Ue!=null?Ue:[])[0];if(!et)return null;const nt=await zl(et);return{id:`${Date.now()}-${et.name}`,name:et.name,size:et.size,dataUrl:nt,base64:nt.includes("data:image")?nt.split(",")[1]:nt}}async function NC(Se){po.value=await pg(Se);const Ne=Se.target;Ne.value!==void 0&&(Ne.value="")}async function zC(Se){mo.value=await pg(Se);const Ne=Se.target;Ne.value!==void 0&&(Ne.value="")}function jC(){po.value=null;const Se=document.getElementById("video_start_frame_input");Se&&(Se.value="")}function VC(){mo.value=null;const Se=document.getElementById("video_end_frame_input");Se&&(Se.value="")}async function UC(Se){var Ot,Ye;const Ne=Se.target,Ue=(Ye=Ne.files)!=null?Ye:(Ot=Se.dataTransfer)==null?void 0:Ot.files,et=Array.from(Ue!=null?Ue:[]);if(et.length===0)return;const nt=await Promise.all(et.map(async(st,Rn)=>{const nn=await zl(st);return{id:`${Date.now()}-${Rn}-${st.name}`,name:st.name,size:st.size,dataUrl:nn,base64:nn.includes("data:image")?nn.split(",")[1]:nn}}));Dr.value||(Dr.value=[]);for(let st=0;st=Dr.value.length)return;const et=[...Dr.value],[nt]=et.splice(Se,1);et.splice(Ue,0,nt),Dr.value=et}function GC(){Dr.value=[];const Se=document.getElementById("extra_image_input");Se&&(Se.value="")}const Vf=ae(""),Uf=ae(-1);async function YC(){var Ne,Ue,et,nt,Ot,Ye,st,Rn,nn;const Se=Ft();try{const ei=await fetch(ka(Se.baseURL,`/sdapi/v1/progress?skip_current_image=true&genkey=${encodeURIComponent(k.value)}`));if(!ei.ok)return;const ti=await ei.json();h.value={percentage:Math.round(((Ne=ti.progress)!=null?Ne:0)*100),textInfo:ti.textinfo||null,currentStep:(et=(Ue=ti.state)==null?void 0:Ue.sampling_step)!=null?et:0,totalSteps:(Ot=(nt=ti.state)==null?void 0:nt.sampling_steps)!=null?Ot:0,previewImage:(st=(Ye=h.value)==null?void 0:Ye.previewImage)!=null?st:null},Vf.value!=k.value&&(Vf.value=k.value,Uf.value=-1);const br=(nn=(Rn=ti.state)==null?void 0:Rn.sampling_step)!=null?nn:0;Uf.value!=br&&(Uf.value=br,Se.fetchGenerationProgress==="Image"&&KC())}catch{}}async function KC(){const Se=Ft();try{const Ne=await fetch(ka(Se.baseURL,`/sdapi/v1/progress?genkey=${encodeURIComponent(k.value)}`));if(!Ne.ok)return;const Ue=await Ne.json();Ue.current_image&&h.value&&(h.value.previewImage=Ue.current_image)}catch{}}function XC(){Vf.value="",!c.value&&Ft().fetchGenerationProgress!=="Off"&&(h.value={percentage:0,textInfo:null,currentStep:0,totalSteps:0,previewImage:null},c.value=setInterval(YC,2e3))}function Hf(){c.value&&(clearInterval(c.value),c.value=0),h.value=null}return{generatorType:n,prompt:r,params:a,outputs:S,inpainting:d,img2img:g,uploadDimensions:y,cancelled:w,abortController:C,multiSelect:f,referenceImages:Dr,videoStartFrame:po,videoEndFrame:mo,loraList:Rr,addLoraRow:BC,removeLoraRow:$C,negativePrompt:u,extraRequestFields:o,generating:b,negativePromptLibrary:p,minDimensions:Y,maxDimensions:re,minImages:q,maxImages:J,minSteps:E,maxSteps:V,minCfgScale:M,maxCfgScale:R,minDenoise:H,maxDenoise:Q,minClipSkip:te,maxClipSkip:fe,minFrames:me,maxFrames:_e,minFps:j,maxFps:x,minEta:G,maxEta:D,minFlowShift:B,maxFlowShift:Z,clipSkipList:K,cfgList:L,queue:T,promptHistory:i,timer:l,progressInfo:h,progressInterval:c,lastImageGenkey:k,recoveringLastImage:P,lastImageRecoveryUrl:z,lastImageRecoveryAvailable:I,clearLastImageGenkey:$,recoverLastGeneratedImage:O,validGeneratorTypes:e,sourceGeneratorTypes:t,currentImageProps:v,totalImageCount:F,generateImage:pe,generateText2Img:Te,generateImg2Img:Ae,generateInpainting:Le,getPrompt:FC,resetStore:X,clearQueue:de,clearOutputs:le,stopProgressPolling:Hf,pushToNegativeLibrary:ir,removeFromNegativeLibrary:ga,pushToPromptHistory:va,removeFromPromptHistory:DC,setExtraImage:UC,removeExtraImage:HC,moveExtraImage:WC,clearExtraImage:GC,setVideoStartFrame:NC,setVideoEndFrame:zC,clearVideoStartFrame:jC,clearVideoEndFrame:VC,getAvailableSamplers:rr,getAvailableSchedulers:Tn,fetchLoras:W,cacheVersion:qt,invalidateApiCaches:Lt,getCachedEndpoint:Wt}}),QG=be({__name:"ImageActions",props:{imageData:{},onDelete:{type:Function},showDismiss:{type:Boolean}},setup(e){const t=Jt(),n=Qa(),r=e,i=()=>{G2.confirm("This action will permanently delete this image. Continue?","Warning",{confirmButtonText:"OK",cancelButtonText:"Cancel",type:"warning"}).then(async()=>{var a;await n.deleteOutput(r.imageData.id),(a=r.onDelete)==null||a.call(r,r.imageData.id),la({type:"success",message:"Deleted Image"})})},u=a=>{if(a.extra_avi){const l=a.extra_avi.split(",")[1];if(!l)return;const h=`${a.seed}-${a.prompt}.avi`;qS(l,h);return}else ag(a.image,`${a.seed}-${a.prompt}`)},p=()=>{Jt().clearOutputs(),Ht().showGeneratedImages=!1,Jt().clearQueue()};async function o(a){const l=window.location.origin,h={prompt:a.prompt,width:a.width?a.width:void 0,height:a.height?a.height:void 0,steps:a.steps,cfg_scale:a.cfg_scale,sampler_name:a.sampler_name,model_name:a.modelName,seed:a.seed,clip_skip:a.clip_skip,frames:a.frames,fps:a.fps,scheduler:a.scheduler,extra_avi:a.extra_avi,final_frame:a.final_frame,enable_hr:a.enable_hr,send_as_refimg:a.send_as_refimg,lora_meta:a.lora_meta},c=window.location.pathname.replace("images","");let f=`${l}${c}?share=`,s="",d="";for(const[m,v]of Object.entries(h)){if(!v)continue;let y=v;typeof v=="string"?y=encodeURIComponent(v):Array.isArray(v)&&(y=JSON.stringify(v)),s+=`${d}${m}=${y}`,d="&"}const g=btoa(String.fromCharCode.apply(null,Array.from(lG(s))));f+=g,await navigator.clipboard.writeText(f),la({type:"success",message:"Copied shareable link to clipboard"})}return(a,l)=>(N(),oe($e,null,[se(_(Je),{class:"compact-button",onClick:i,type:"danger",size:"small",icon:_(Ki),plain:""},{default:ue(()=>[...l[8]||(l[8]=[ze("Delete",-1)])]),_:1},8,["icon"]),se(_(Je),{class:"compact-button",onClick:l[0]||(l[0]=h=>u(a.imageData)),type:"success",size:"small",icon:_(bl),plain:""},{default:ue(()=>[...l[9]||(l[9]=[ze("Download",-1)])]),_:1},8,["icon"]),a.imageData.starred?ge("",!0):(N(),ve(_(Je),{key:0,class:"compact-button",onClick:l[1]||(l[1]=h=>_(n).toggleStarred(a.imageData.id)),type:"warning",size:"small",icon:_(GO),plain:""},{default:ue(()=>[...l[10]||(l[10]=[ze("Star",-1)])]),_:1},8,["icon"])),a.imageData.starred?(N(),ve(_(Je),{key:1,class:"compact-button",onClick:l[2]||(l[2]=h=>_(n).toggleStarred(a.imageData.id)),type:"warning",size:"small",icon:_($1),plain:""},{default:ue(()=>[...l[11]||(l[11]=[ze("Unstar",-1)])]),_:1},8,["icon"])):ge("",!0),se(_(Je),{class:"compact-button",onClick:l[3]||(l[3]=h=>_(t).generateText2Img(a.imageData)),type:"success",size:"small",plain:""},{default:ue(()=>[...l[12]||(l[12]=[ze("Txt2img",-1)])]),_:1}),se(_(Je),{class:"compact-button",onClick:l[4]||(l[4]=h=>_(t).generateImg2Img(a.imageData.image)),type:"success",size:"small",plain:""},{default:ue(()=>[...l[13]||(l[13]=[ze("Img2img",-1)])]),_:1}),se(_(Je),{class:"compact-button",onClick:l[5]||(l[5]=h=>_(t).generateInpainting(a.imageData.image)),type:"success",size:"small",plain:""},{default:ue(()=>[...l[14]||(l[14]=[ze("Inpaint",-1)])]),_:1}),a.showDismiss?(N(),ve(_(Je),{key:2,class:"compact-button",onClick:l[6]||(l[6]=h=>p()),type:"success",size:"small",plain:""},{default:ue(()=>[...l[15]||(l[15]=[ze("Dismiss",-1)])]),_:1})):ge("",!0),se(_(Je),{class:"compact-button",onClick:l[7]||(l[7]=h=>o(a.imageData)),type:"success",icon:_(wO),size:"small",plain:""},{default:ue(()=>[...l[16]||(l[16]=[ze("Share",-1)])]),_:1},8,["icon"])],64))}}),RC=on(QG,[["__scopeId","data-v-7a45e2c8"]]),eY={class:"main-output",style:{position:"relative",display:"flex","align-items":"center","justify-content":"center"}},tY=["src"],nY={style:{"font-size":"16px","font-weight":"500"}},rY={style:{"font-family":"'Segoe UI', Tahoma, Geneva, Verdana, sans-serif","letter-spacing":"0.025em"}},iY={key:0},aY={key:1},oY={key:0},sY={key:1},lY={key:2},uY=be({__name:"ImageDialog",setup(e){const t=Qa(),n=Ht(),r=Jt(),i=ae();u6(i,{onSwipeEnd(f,s){s==="RIGHT"&&n.openModalToLeft(),s==="LEFT"&&n.openModalToRight()}});const u=ee({get(){return n.activeModal!==-1},set(){n.activeModal=-1}}),p=ae(t.currentOutputs[0]);xe(()=>n.activeModal,async f=>{if(f===-1){p.value=void 0;return}const s=t.currentOutputs.find(g=>g.id===f);if(s)return p.value=s;p.value=void 0;const d=await Yt.outputs.get(f);if(n.activeModal===f){if(!d){p.value=void 0,n.activeModal=-1;return}p.value=d}});function o(){u.value=!1}function a(f){const s=r.outputs.findIndex(d=>d.output.id===f);s!==-1&&r.outputs.splice(s,1),o()}function l(){var d;if(!((d=p.value)!=null&&d.final_frame))return;const f=p.value.final_frame;Jt().generateImg2Img(f)}function h(){var f;!((f=p.value)!=null&&f.image)||ag(p.value.image,`${p.value.seed}-${p.value.prompt}`)}function c(){var d,g;if(!((d=p.value)!=null&&d.extra_avi))return;const f=p.value.extra_avi.split(",")[1];if(!f)return;const s=`output-${(g=p.value.id)!=null?g:"video"}.avi`;qS(f,s)}return(f,s)=>{var d;return N(),ve(_(eF),{"model-value":u.value,width:(d=p.value)==null?void 0:d.width,class:"image-viewer",onClosed:o,"align-center":""},{footer:ue(()=>[p.value?(N(),ve(RC,{key:0,"image-data":p.value,"on-delete":a},null,8,["image-data"])):ge("",!0)]),default:ue(()=>{var g,m,v,y,b,w,S,C,T,k,A,P,z,I,$,O,Y,re,q,J,E,V;return[ne("div",{class:"main-output-container",ref_key:"target",ref:i},[ne("div",eY,[(g=p.value)!=null&&g.image?(N(),oe("img",{key:0,src:(m=p.value)==null?void 0:m.image,alt:"Output image",style:{"max-width":"100%","max-height":"100%","object-fit":"contain"}},null,8,tY)):ge("",!0)])],512),ne("div",nY,Ee(((y=(v=p.value)==null?void 0:v.prompt)==null?void 0:y.split("###")[0])||"Unknown Creation"),1),ne("div",rY,[ne("div",null,"Negative Prompt: "+Ee(((w=(b=p.value)==null?void 0:b.prompt)==null?void 0:w.split("###")[1])||"None"),1),ne("span",null,"Model: "+Ee(((S=p.value)==null?void 0:S.modelName)||"Unknown")+" - ",1),ne("span",null,"Sampler: "+Ee(((C=p.value)==null?void 0:C.sampler_name)||"Unknown")+" - ",1),ne("span",null,"Scheduler: "+Ee(((T=p.value)==null?void 0:T.scheduler)||"Unknown")+" - ",1),ne("span",null,"Seed: "+Ee(((k=p.value)==null?void 0:k.seed)||"Unknown")+" - ",1),ne("span",null,"Steps: "+Ee(((A=p.value)==null?void 0:A.steps)||"Unknown")+" - ",1),ne("span",null,"CFG Scale: "+Ee(((P=p.value)==null?void 0:P.cfg_scale)||"Unknown")+" - ",1),ne("span",null,"Clip Skip: "+Ee((I=(z=p.value)==null?void 0:z.clip_skip)!=null?I:"Unknown")+" - ",1),ne("span",null,"Dimensions: "+Ee((($=p.value)==null?void 0:$.width)||"???")+"x"+Ee(((O=p.value)==null?void 0:O.height)||"???")+" - ",1),ne("span",null,"Frames: "+Ee(((Y=p.value)==null?void 0:Y.frames)||"1"),1),((re=p.value)==null?void 0:re.frames)&&p.value.frames>1?(N(),oe("span",iY," - FPS: "+Ee(p.value.fps||"Unknown"),1)):ge("",!0),(q=p.value)!=null&&q.lora_meta?(N(),oe("span",aY," - LoRA: "+Ee(p.value.lora_meta),1)):ge("",!0),s[2]||(s[2]=ne("br",null,null,-1)),ne("b",null,[((J=p.value)==null?void 0:J.frames)&&p.value.frames>1?(N(),oe("span",oY,[ne("a",{href:"#",onClick:Qe(h,["prevent"]),style:{cursor:"pointer",color:"var(--el-color-primary)"}},"[Download GIF]")])):ge("",!0),(E=p.value)!=null&&E.extra_avi?(N(),oe("span",sY,[s[0]||(s[0]=ze(" - ",-1)),ne("a",{href:"#",onClick:Qe(c,["prevent"]),style:{cursor:"pointer",color:"var(--el-color-primary)"}},"[Download AVI]")])):ge("",!0),(V=p.value)!=null&&V.final_frame?(N(),oe("span",lY,[s[1]||(s[1]=ze(" - ",-1)),ne("a",{href:"#",onClick:Qe(l,["prevent"]),style:{cursor:"pointer",color:"var(--el-color-primary)"}},"[Extend Video]")])):ge("",!0)])])]}),_:1},8,["model-value","width"])}}}),cY={class:"generator-icons"},fY=be({__name:"App",setup(e){const n=pm(hm).smallerOrEqual("md"),r=Ht();Ft();const i=VE(),u=ae();return xe(()=>i.path,p=>{u.value&&u.value.open(p)}),(p,o)=>(N(),oe($e,null,[ne("div",{class:ce({"menu-container":!_(n)})},[se(_(F2),{"default-active":_(i).path,mode:"horizontal",router:!0,ellipsis:!_(n),class:ce(_(n)?"mobile-menu":"menu"),ref_key:"menuRef",ref:u},{default:ue(()=>[_(n)?ge("",!0):(N(),ve(_(Im),{key:0,class:"remove-item-styling center-vertical"},{title:ue(()=>[...o[0]||(o[0]=[ne("div",{style:{"font-size":"20px"}},"Stable UI",-1)])]),_:1})),se(Is,{isMobile:_(n),index:"/"},{icon:ue(()=>[ne("div",cY,[se(_(De),null,{default:ue(()=>[se(_(MO))]),_:1}),_(r).showGeneratorBadge?(N(),ve(_(De),{key:0,class:"generator-badge",size:10},{default:ue(()=>[se(h7)]),_:1})):ge("",!0)])]),title:ue(()=>[...o[1]||(o[1]=[ze("Generate",-1)])]),_:1},8,["isMobile"]),se(Is,{isMobile:_(n),index:"/images"},{icon:ue(()=>[se(_(De),null,{default:ue(()=>[se(_(kO))]),_:1})]),title:ue(()=>[...o[2]||(o[2]=[ze("Images",-1)])]),_:1},8,["isMobile"]),se(Is,{isMobile:_(n),index:"/about"},{icon:ue(()=>[se(_(De),null,{default:ue(()=>[se(_(R1))]),_:1})]),title:ue(()=>[...o[3]||(o[3]=[ze("About",-1)])]),_:1},8,["isMobile"]),se(Is,{isMobile:_(n),index:"/options"},{icon:ue(()=>[se(_(De),null,{default:ue(()=>[se(_(XO))]),_:1})]),title:ue(()=>[...o[4]||(o[4]=[ze("Options",-1)])]),_:1},8,["isMobile"]),se(Is,{isMobile:_(n),index:"/return"},{icon:ue(()=>[se(_(De),null,{default:ue(()=>[se(_(P1))]),_:1})]),title:ue(()=>[...o[5]||(o[5]=[ze("Return to Lite",-1)])]),_:1},8,["isMobile"])]),_:1},8,["default-active","ellipsis","class"])],2),ne("div",{class:ce({view:!_(n)})},[se(_(A1))],2),se(uY)],64))}}),dY=on(fY,[["__scopeId","data-v-8f4d2380"]]),hg=Pk(dY);hg.use(Rk());hg.use(ul);hg.mount("#app");ul.replace("/");window.addEventListener("beforeunload",e=>{Jt().generating&&(e.preventDefault(),e.returnValue="")});const hY={key:1,class:"image-action"},pY=be({__name:"CustomImage",props:{imageData:{}},setup(e){const t=e,n=Ht(),r=ae(null);z5(r,n.toggleMultiSelect,{modifiers:{prevent:!0}});const i=ae(!1);l6(r,([{isIntersecting:p}])=>{p&&(i.value=p)},{rootMargin:"500px"});const u=ee(()=>n.selected.includes(t.imageData.id));return(p,o)=>(N(),oe("div",{class:"relative",ref_key:"containerRef",ref:r},[i.value?(N(),ve(_(jo),{key:0,class:"thumbnail",src:p.imageData.image,onClick:o[0]||(o[0]=a=>_(n).activeModal=p.imageData.id),fit:"cover",loading:"lazy",style:je(`${u.value&&"opacity: 0.5"}`)},null,8,["src","style"])):ge("",!0),i.value?(N(),oe("div",hY,[p.imageData.starred?(N(),ve(_(De),{key:0,class:"starred-icon",size:35,color:"var(--el-color-warning)"},{default:ue(()=>[se(_($1))]),_:1})):ge("",!0),_(n).multiSelect?(N(),oe("div",{key:1,class:"select-container",onClick:o[1]||(o[1]=a=>_(n).toggleSelection(p.imageData.id))},[se(_(De),{class:"select-icon",size:35,color:`rgba(255, 255, 255, ${u.value?"1":"0.5"})`},{default:ue(()=>[u.value?ge("",!0):(N(),ve(_(eu),{key:0})),u.value?(N(),ve(_(M1),{key:1})):ge("",!0)]),_:1},8,["color"])])):ge("",!0)])):ge("",!0)],512))}}),$b=on(pY,[["__scopeId","data-v-b9569bbd"]]);function mY({mobileWidth:e=768,hideAfterDistanceFromTop:t=100,hideAfterScroll:n=100}={}){const{width:r}=Cw(),i=ee(()=>r.value<=e),u=ae(!0),{y:p}=s6(window);let o=p.value,a=0;return xe(p,l=>{if(!i.value)return;const h=l-o;if(o=l,h>0&&l>t){a+=h,a>=n&&(u.value=!1,a=0);return}h<0&&(a=0,u.value=!0)}),{isVisible:u,isMobile:i}}const gY={},vY={xmlns:"http://www.w3.org/2000/svg","xmlns:xlink":"http://www.w3.org/1999/xlink",viewBox:"0 0 1024 1024"};function yY(e,t){return N(),oe("svg",vY,[...t[0]||(t[0]=[ne("path",{d:"M880 112H144c-17.7 0-32 14.3-32 32v736c0 17.7 14.3 32 32 32h736c17.7 0 32-14.3 32-32V144c0-17.7-14.3-32-32-32zm-696 72h136v656H184V184zm656 656H384V384h456v456zM384 320V184h456v136H384z",fill:"currentColor"},null,-1)])])}const bY=on(gY,[["render",yY]]),_Y={class:"options"},wY=["onClick"],SY=["onClick"],CY=["onClick"],xY={key:1,class:"center-both",style:{gap:"12px"}},TY={key:2},kY={key:0},EY={key:0,style:{display:"flex",gap:"8px"}},OY={key:1,class:"images"},AY={key:1},PY=be({__name:"ImagesView",setup(e){const{width:t}=Cw(),{isVisible:n,isMobile:r}=mY(),i=Qa(),u=Ft(),p=Ht();function o(){p.selected=p.selected.filter(d=>!i.currentOutputs.map(g=>g.id).includes(d)),p.selected=[...p.selected,...i.currentOutputs.map(d=>d.id)],p.multiSelect=!0}async function a(){const d=await Yt.outputs.toCollection().primaryKeys();p.selected=d,p.multiSelect=!0}function l(){p.selected=p.selected.filter(d=>!i.currentOutputs.map(g=>g.id).includes(d)),p.selected.length===0&&(p.multiSelect=!1)}function h(){p.selected=[],p.multiSelect=!1}const c=()=>{G2.confirm(`This action will permanently delete ${p.selected.length} images. Continue?`,"Warning",{confirmButtonText:"OK",cancelButtonText:"Cancel",type:"warning"}).then(()=>{i.deleteMultipleOutputs(p.selected)})};m0(["a","A","ArrowLeft"],p.openModalToLeft),m0(["d","D","ArrowRight"],p.openModalToRight);async function f(){XS(p.selected)}const s=ee(()=>{let d=2;t.value>1440?d=6:t.value>1280?d=5:t.value>768?d=4:t.value>480&&(d=3);const g=[];for(let m=0;m(N(),oe($e,null,[ne("div",{class:ce(["images-top-bar",{"mobile-hidden":_(r)&&!_(n)}])},[ne("div",_Y,[se(_(Du),{placement:"bottom",title:"Sort By",trigger:"click",width:200,transition:"none","hide-after":0},{reference:ue(()=>[se(_(Je),{class:"btn-select"},{default:ue(()=>[se(_(De),{size:16},{default:ue(()=>[se(_(UO))]),_:1})]),_:1})]),default:ue(()=>[(N(),oe($e,null,zt(["Newest","Oldest"],m=>ne("div",{key:m,onClick:()=>_(i).sortBy=m,class:ce(`el-select-dropdown__item ${_(i).sortBy===m?"selected":""}`)},Ee(m),11,wY)),64))]),_:1}),se(_(Du),{placement:"bottom",title:"Filter By",trigger:"click",width:240,transition:"none","hide-after":0},{reference:ue(()=>[se(_(Je),{class:"btn-select"},{default:ue(()=>[se(_(De),{size:16},{default:ue(()=>[se(_(pO))]),_:1})]),_:1})]),default:ue(()=>[(N(),oe($e,null,zt(["all","favourited","unfavourited","unrated"],m=>ne("div",{key:m,onClick:()=>_(i).filterBy=m,class:ce(`el-select-dropdown__item ${_(i).filterBy===m?"selected":""}`)},Ee(_(i).filterBy===m?"Showing":"Show")+" "+Ee(m),11,SY)),64))]),_:1}),se(_(Du),{placement:"bottom",title:"Image Layout",trigger:"click",width:240,transition:"none","hide-after":0},{reference:ue(()=>[se(_(Je),{class:"btn-select"},{default:ue(()=>[se(_(De),{size:16},{default:ue(()=>[se(bY)]),_:1})]),_:1})]),default:ue(()=>[(N(),oe($e,null,zt([{label:"Square Grid",value:"grid"},{label:"Dynamic Layout",value:"dynamic"}],m=>ne("div",{key:m.value,onClick:()=>_(i).currentLayout=m.value,class:ce(`el-select-dropdown__item ${_(i).currentLayout===m.value?"selected":""}`)},Ee(m.label),11,CY)),64))]),_:1}),se(_(Du),{placement:"bottom",title:"Selection",trigger:"click",width:240,transition:"none","hide-after":0},{reference:ue(()=>[se(_(Je),{class:"btn-select"},{default:ue(()=>[se(_(De),{size:16},{default:ue(()=>[_(p).multiSelect?(N(),ve(_(M1),{key:0})):(N(),ve(_(eu),{key:1}))]),_:1})]),_:1})]),default:ue(()=>[_(p).multiSelect?(N(),oe("div",{key:0,class:"el-select-dropdown__item selected",onClick:g[0]||(g[0]=(...m)=>_(p).toggleMultiSelect&&_(p).toggleMultiSelect(...m))},"Disable multi-select")):(N(),oe("div",{key:1,class:"el-select-dropdown__item",onClick:g[1]||(g[1]=(...m)=>_(p).toggleMultiSelect&&_(p).toggleMultiSelect(...m))},"Enable multi-select")),_(p).selected.length>0?(N(),oe("div",{key:2,class:"el-select-dropdown__item selected",onClick:h},"Deselect All")):(N(),oe("div",{key:3,class:"el-select-dropdown__item",onClick:a},"Select All")),_(p).selected.every(m=>!_(i).currentOutputs.map(v=>v.id).includes(m))?(N(),oe("div",{key:5,class:"el-select-dropdown__item",onClick:o},"Select Page")):(N(),oe("div",{key:4,class:"el-select-dropdown__item selected",onClick:l},"Deselect Page"))]),_:1})]),_(u).pageless==="Disabled"?(N(),ve(_(IN),{key:0,layout:"prev, pager, next",total:_(i).outputsLength,"page-size":_(u).pageSize,"current-page":_(i).currentPage,"onUpdate:currentPage":g[2]||(g[2]=m=>_(i).currentPage=m),"hide-on-single-page":""},null,8,["total","page-size","current-page"])):ge("",!0),_(p).multiSelect?(N(),oe("div",xY,[ne("div",null,Ee(_(p).selected.length)+" selected",1),se(_(Je),{type:"danger",onClick:c,icon:_(Ki),plain:""},{default:ue(()=>[...g[3]||(g[3]=[ze("Delete",-1)])]),_:1},8,["icon"]),se(_(Je),{type:"success",onClick:f,icon:_(bl),plain:"",style:{margin:"0"}},{default:ue(()=>[...g[4]||(g[4]=[ze("Download",-1)])]),_:1},8,["icon"])])):(N(),oe("div",TY,[...g[5]||(g[5]=[ne("em",{style:{"font-size":"14px"}},"(long press to select multiple images)",-1)])]))],2),_(i).outputsLength!=0?(N(),oe("div",kY,[_(i).currentLayout==="dynamic"?(N(),oe("div",EY,[(N(!0),oe($e,null,zt(s.value,(m,v)=>(N(),oe("div",{key:v,style:{flex:"1 1 0%"}},[(N(!0),oe($e,null,zt(m,y=>(N(),ve($b,{key:y.id,"image-data":y,style:{"margin-bottom":"8px"}},null,8,["image-data"]))),128))]))),128))])):ge("",!0),_(i).currentLayout==="grid"?(N(),oe("div",OY,[(N(!0),oe($e,null,zt(_(i).currentOutputs,m=>(N(),ve($b,{key:m.id,"image-data":m,style:{width:"200px",height:"200px"}},null,8,["image-data"]))),128))])):ge("",!0)])):ge("",!0),_(i).outputsLength==0?(N(),oe("div",AY,[se(_(YF),{description:"No Images Found"})])):ge("",!0)],64))}}),IY=on(PY,[["__scopeId","data-v-b39b47c5"]]),MY=Object.freeze(Object.defineProperty({__proto__:null,default:IY},Symbol.toStringTag,{value:"Module"})),LY=["href"],RY=be({__name:"BaseLink",props:{href:{},router:{type:Boolean}},setup(e){return(t,n)=>{const r=bt("router-link");return N(),oe($e,null,[t.router?ge("",!0):(N(),oe("a",{key:0,target:"_blank",rel:"noreferrer noopener",href:t.href},[ke(t.$slots,"default",{},void 0,!0)],8,LY)),t.router?(N(),ve(r,{key:1,to:t.href},{default:ue(()=>[ke(t.$slots,"default",{},void 0,!0)]),_:3},8,["to"])):ge("",!0)],64)}}}),DY=on(RY,[["__scopeId","data-v-17b53b7d"]]),FY={class:"about"},BY={class:"about-content"},$Y=be({__name:"AboutView",setup(e){return(t,n)=>(N(),oe("div",FY,[ne("div",BY,[n[2]||(n[2]=ne("h1",{style:{"margin-top":"0"}},"Stable UI",-1)),n[3]||(n[3]=ne("div",null,[ze("This tool was originally a front-end for the AI Horde and has since been converted for local generations with the A1111 API, such as in "),ne("a",{href:"https://github.com/LostRuins/koboldcpp"},"KoboldCpp"),ze(".")],-1)),n[4]||(n[4]=ne("br",null,null,-1)),n[5]||(n[5]=ne("div",null,"If you want to help improve this tool, you can find the currently maintained source code from this modified version on https://github.com/LostRuins/stable-ui and https://github.com/henk717/stable-ui, which is based off https://github.com/ayunami2000/stable-ui, which derives from the original AI Horde version on https://github.com/aqualxx/stable-ui (Original author aqualxx#5004). Feel free to contribute!",-1)),n[6]||(n[6]=ne("br",null,null,-1)),ne("div",null,[n[1]||(n[1]=ze("You can find the KoboldAI community and authors of this fork on the ",-1)),se(DY,{href:"https://koboldai.org/discord"},{default:ue(()=>[...n[0]||(n[0]=[ze("KoboldAI Discord",-1)])]),_:1})])])]))}}),NY=on($Y,[["__scopeId","data-v-ecc278c5"]]),zY=Object.freeze(Object.defineProperty({__proto__:null,default:NY},Symbol.toStringTag,{value:"Module"})),Fi=be({__name:"FormRadio",props:{label:{},modelValue:{},prop:{},useBoolean:{type:Boolean},options:{},disabled:{type:Boolean},info:{},labelStyle:{},change:{type:Function}},emits:["update:modelValue"],setup(e,{emit:t}){const n=e,r=t;function i(p){if(n.useBoolean&&p==="Enabled"?r("update:modelValue",!0):n.useBoolean&&p==="Disabled"?r("update:modelValue",!1):r("update:modelValue",p),!!n.change)return n.useBoolean&&p==="Enabled"?n.change(!0):n.useBoolean&&p==="Disabled"?n.change(!1):n.change(p)}const u=ee(()=>n.useBoolean?n.modelValue===!0?"Enabled":n.modelValue===!1?"Disabled":n.modelValue:n.modelValue);return(p,o)=>(N(),ve(_(ea),{prop:p.prop},{label:ue(()=>[se(hu,{info:p.info,"label-style":p.labelStyle},{default:ue(()=>[ke(p.$slots,"label",{},()=>[ze(Ee(p.label),1)])]),_:3},8,["info","label-style"])]),default:ue(()=>[se(_(jR),{disabled:p.disabled,"model-value":u.value,onChange:i},{default:ue(()=>[(N(!0),oe($e,null,zt(p.options,a=>(N(),ve(_(VR),{key:a,label:a},null,8,["label"]))),128))]),_:1},8,["disabled","model-value"]),ke(p.$slots,"inline")]),_:3},8,["prop"]))}}),jY=be({__name:"OptionsView",setup(e){const t=Ft(),n=Qa(),r=Jt(),i=[{value:"dark",label:"Dark"},{value:"light",label:"Light"},{value:"auto",label:"Auto"}],u=ae([]),p=ae(),o=ae(!1),a=ae(0);async function l(c){n.importFromZip(c),p.value.clearFiles()}async function h(){la({message:`Downloading ${n.outputsLength} image(s)... (this may take a while)`,type:"info"}),o.value=!0,a.value=0;const c=await Yt.outputs.toCollection().primaryKeys();await XS(c,!1,()=>{a.value++}),o.value=!1,a.value=0}return(c,f)=>(N(),oe($e,null,[f[19]||(f[19]=ne("h1",null,"Options",-1)),se(_(Am),{"label-position":"top",model:_(t).options,onSubmit:f[13]||(f[13]=Qe(()=>{},["prevent"]))},{default:ue(()=>[se(_(tj),{type:"border-card",style:{"min-height":"50vh"}},{default:ue(()=>[se(_(kd),{label:"\u{1F5A8}\uFE0F Generation"},{default:ue(()=>[f[14]||(f[14]=ne("h2",null,"Generation Options",-1)),se(_(ea),{label:"Base URL"},{default:ue(()=>[se(_(uo),{class:"apikey",prop:"baseURL",modelValue:_(t).baseURL,"onUpdate:modelValue":f[1]||(f[1]=s=>_(t).baseURL=s)},{append:ue(()=>[se(_(fn),{content:"Invalidate all cached information for this server (LoRAs, samplers, schedulers, ...)",placement:"top"},{default:ue(()=>[se(_(Je),{icon:_(yh),onClick:f[0]||(f[0]=s=>_(r).invalidateApiCaches())},null,8,["icon"])]),_:1})]),_:1},8,["modelValue"])]),_:1}),f[15]||(f[15]=ne("h3",null,"Parameter Controls",-1)),(N(!0),oe($e,null,zt(_(r).multiSelect,(s,d)=>{var g;return N(),oe("div",{key:d},[se(Fi,{label:s.name,prop:"pageless",modelValue:s.state,"onUpdate:modelValue":m=>s.state=m,options:(g=s.allowedStates)!=null?g:[]},null,8,["label","modelValue","onUpdate:modelValue","options"])])}),128)),se(Fi,{label:"Allow Larger Params",prop:"pageless",modelValue:_(t).allowLargerParams,"onUpdate:modelValue":f[2]||(f[2]=s=>_(t).allowLargerParams=s),options:["Enabled","Disabled"]},null,8,["modelValue"]),se(Fi,{label:"Poor Connection Mode",prop:"keepImageGenOnDisconnect",modelValue:_(t).keepImageGenOnDisconnect,"onUpdate:modelValue":f[3]||(f[3]=s=>_(t).keepImageGenOnDisconnect=s),options:["Enabled","Disabled"],info:"Provides compatibility for poor connections or when using unreliable tunnels. Prevents abort on disconnecting, and allows ongoing generations to carry on and be recovered later even after disconnecting."},null,8,["modelValue"]),se(Fi,{label:"Fetch generation progress",prop:"fetchGenerationProgress",modelValue:_(t).fetchGenerationProgress,"onUpdate:modelValue":f[4]||(f[4]=s=>_(t).fetchGenerationProgress=s),options:["Off","Text","Image"],info:"Off: no progress polling. Text: fetch textual progress info only. Image: fetch textual info and live image preview."},null,8,["modelValue"]),se(Lo,{label:"Image Resize Mode",prop:"imageResizeMode",modelValue:_(t).imageResizeMode,"onUpdate:modelValue":f[5]||(f[5]=s=>_(t).imageResizeMode=s),options:[{label:"No Scale",value:"NoScale"},{label:"Scale and Crop",value:"ScaleAndCrop"},{label:"Scale and Pad",value:"ScaleAndPad"},{label:"Stretch",value:"Stretch"},{label:"Original",value:"Original"}],info:"How to adapt input image dimensions to the requested image size. No Scale: do not scale, just crop or pad each dimension to fit (default behavior). Scale and Crop: scale to match the smaller dimension, preserving aspect ratio, then crop to fit. Scale and Pad: scale to match the larger dimension, preserving aspect ratio, then pad to fit. Stretch: stretch both dimensions to fit, possibly not preserving aspect ratio. Original: send the input image as-is to the server, with no scaling, cropping or padding."},null,8,["modelValue"]),se(Fi,{label:"Video Gen: Request AVI download",prop:"pageless",modelValue:_(t).alsoRequestAvi,"onUpdate:modelValue":f[6]||(f[6]=s=>_(t).alsoRequestAvi=s),options:["Enabled","Disabled"]},null,8,["modelValue"])]),_:1}),se(_(kd),{label:"\u{1F4F7} Images"},{default:ue(()=>[f[17]||(f[17]=ne("h2",null,"Image Options",-1)),se(yn,{label:"Images Per Page",prop:"pageSize",modelValue:_(t).pageSize,"onUpdate:modelValue":f[7]||(f[7]=s=>_(t).pageSize=s),min:10,max:50,step:5,disabled:_(t).pageless==="Enabled"},null,8,["modelValue","disabled"]),se(Fi,{label:"Pageless Format",prop:"pageless",modelValue:_(t).pageless,"onUpdate:modelValue":f[8]||(f[8]=s=>_(t).pageless=s),options:["Enabled","Disabled"]},null,8,["modelValue"]),se(Fi,{label:"Carousel Auto Cycle",prop:"autoCarousel",modelValue:_(t).autoCarousel,"onUpdate:modelValue":f[9]||(f[9]=s=>_(t).autoCarousel=s),options:["Enabled","Disabled"]},null,8,["modelValue"]),se(Fi,{label:"Image Download Format",prop:"downloadType",modelValue:_(t).imageDownloadType,"onUpdate:modelValue":f[10]||(f[10]=s=>_(t).imageDownloadType=s),options:["PNG","JPG","WEBP","GIF"]},null,8,["modelValue"]),se(_(ea),{label:"Export Images (ZIP File)"},{default:ue(()=>[o.value?(N(),ve(_(Je),{key:1,icon:_(bl),disabled:""},{default:ue(()=>[ze("Downloading... ("+Ee(a.value)+" / "+Ee(_(n).outputsLength)+" image(s))",1)]),_:1},8,["icon"])):(N(),ve(_(Je),{key:0,icon:_(bl),onClick:f[11]||(f[11]=s=>h())},{default:ue(()=>[ze("Download "+Ee(_(n).outputsLength)+" image(s)",1)]),_:1},8,["icon"]))]),_:1}),se(_(ea),{label:"Import Images (ZIP File)"},{default:ue(()=>[se(_(Dm),{drag:"",ref_key:"upload",ref:p,"auto-upload":!1,onChange:l,"file-list":u.value,limit:1,multiple:""},{default:ue(()=>[se(_(De),{size:100},{default:ue(()=>[se(_(Qp))]),_:1}),f[16]||(f[16]=ne("div",null,[ze("Drop file here OR "),ne("em",null,"click to upload")],-1))]),_:1},8,["file-list"])]),_:1})]),_:1}),se(_(kd),{label:"\u2699\uFE0F General"},{default:ue(()=>[f[18]||(f[18]=ne("h2",null,"General Options",-1)),se(Lo,{label:"Color Scheme",prop:"colorScheme",modelValue:_(t).options.colorMode,"onUpdate:modelValue":f[12]||(f[12]=s=>_(t).options.colorMode=s),options:i},null,8,["modelValue"])]),_:1})]),_:1})]),_:1},8,["model"])],64))}}),VY=on(jY,[["__scopeId","data-v-c2b6a067"]]),UY=Object.freeze(Object.defineProperty({__proto__:null,default:VY},Symbol.toStringTag,{value:"Module"}))});export default HY();