var VD=Object.create;var bc=Object.defineProperty;var YD=Object.getOwnPropertyDescriptor;var XD=Object.getOwnPropertyNames;var ZD=Object.getPrototypeOf,KD=Object.prototype.hasOwnProperty;var Yb=t=>{throw TypeError(t)};var QD=(t,e,r)=>e in t?bc(t,e,{enumerable:!0,configurable:!0,writable:!0,value:r}):t[e]=r;var JD=(t,e)=>()=>(t&&(e=t(t=0)),e);var I=(t,e)=>()=>(e||t((e={exports:{}}).exports,e),e.exports),eL=(t,e)=>{for(var r in e)bc(t,r,{get:e[r],enumerable:!0})},Xb=(t,e,r,n)=>{if(e&&typeof e=="object"||typeof e=="function")for(let i of XD(e))!KD.call(t,i)&&i!==r&&bc(t,i,{get:()=>e[i],enumerable:!(n=YD(e,i))||n.enumerable});return t};var Ct=(t,e,r)=>(r=t!=null?VD(ZD(t)):{},Xb(e||!t||!t.__esModule?bc(r,"default",{value:t,enumerable:!0}):r,t)),tL=t=>Xb(bc({},"__esModule",{value:!0}),t);var qe=(t,e,r)=>QD(t,typeof e!="symbol"?e+"":e,r),Fm=(t,e,r)=>e.has(t)||Yb("Cannot "+r);var $=(t,e,r)=>(Fm(t,e,"read from private field"),r?r.call(t):e.get(t)),me=(t,e,r)=>e.has(t)?Yb("Cannot add the same private member more than once"):e instanceof WeakSet?e.add(t):e.set(t,r),de=(t,e,r,n)=>(Fm(t,e,"write to private field"),n?n.call(t,r):e.set(t,r),r),wt=(t,e,r)=>(Fm(t,e,"access private method"),r);var Qb=I(Ff=>{"use strict";p();Ff.byteLength=nL;Ff.toByteArray=sL;Ff.fromByteArray=lL;var ri=[],fn=[],rL=typeof Uint8Array!="undefined"?Uint8Array:Array,Om="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";for(la=0,Zb=Om.length;la0)throw new Error("Invalid string. Length must be a multiple of 4");var r=t.indexOf("=");r===-1&&(r=e);var n=r===e?0:4-r%4;return[r,n]}function nL(t){var e=Kb(t),r=e[0],n=e[1];return(r+n)*3/4-n}function iL(t,e,r){return(e+r)*3/4-r}function sL(t){var e,r=Kb(t),n=r[0],i=r[1],s=new rL(iL(t,n,i)),a=0,o=i>0?n-4:n,l;for(l=0;l>16&255,s[a++]=e>>8&255,s[a++]=e&255;return i===2&&(e=fn[t.charCodeAt(l)]<<2|fn[t.charCodeAt(l+1)]>>4,s[a++]=e&255),i===1&&(e=fn[t.charCodeAt(l)]<<10|fn[t.charCodeAt(l+1)]<<4|fn[t.charCodeAt(l+2)]>>2,s[a++]=e>>8&255,s[a++]=e&255),s}function aL(t){return ri[t>>18&63]+ri[t>>12&63]+ri[t>>6&63]+ri[t&63]}function oL(t,e,r){for(var n,i=[],s=e;so?o:a+s));return n===1?(e=t[r-1],i.push(ri[e>>2]+ri[e<<4&63]+"==")):n===2&&(e=(t[r-2]<<8)+t[r-1],i.push(ri[e>>10]+ri[e>>4&63]+ri[e<<2&63]+"=")),i.join("")}});var Jb=I(Mm=>{p();Mm.read=function(t,e,r,n,i){var s,a,o=i*8-n-1,l=(1<>1,u=-7,f=r?i-1:0,d=r?-1:1,h=t[e+f];for(f+=d,s=h&(1<<-u)-1,h>>=-u,u+=o;u>0;s=s*256+t[e+f],f+=d,u-=8);for(a=s&(1<<-u)-1,s>>=-u,u+=n;u>0;a=a*256+t[e+f],f+=d,u-=8);if(s===0)s=1-c;else{if(s===l)return a?NaN:(h?-1:1)*(1/0);a=a+Math.pow(2,n),s=s-c}return(h?-1:1)*a*Math.pow(2,s-n)};Mm.write=function(t,e,r,n,i,s){var a,o,l,c=s*8-i-1,u=(1<>1,d=i===23?Math.pow(2,-24)-Math.pow(2,-77):0,h=n?0:s-1,m=n?1:-1,g=e<0||e===0&&1/e<0?1:0;for(e=Math.abs(e),isNaN(e)||e===1/0?(o=isNaN(e)?1:0,a=u):(a=Math.floor(Math.log(e)/Math.LN2),e*(l=Math.pow(2,-a))<1&&(a--,l*=2),a+f>=1?e+=d/l:e+=d*Math.pow(2,1-f),e*l>=2&&(a++,l/=2),a+f>=u?(o=0,a=u):a+f>=1?(o=(e*l-1)*Math.pow(2,i),a=a+f):(o=e*Math.pow(2,f-1)*Math.pow(2,i),a=0));i>=8;t[r+h]=o&255,h+=m,o/=256,i-=8);for(a=a<0;t[r+h]=a&255,h+=m,a/=256,c-=8);t[r+h-m]|=g*128}});var qm=I(Co=>{"use strict";p();var Dm=Qb(),ko=Jb(),e_=typeof Symbol=="function"&&typeof Symbol.for=="function"?Symbol.for("nodejs.util.inspect.custom"):null;Co.Buffer=F;Co.SlowBuffer=pL;Co.INSPECT_MAX_BYTES=50;var Of=2147483647;Co.kMaxLength=Of;F.TYPED_ARRAY_SUPPORT=cL();!F.TYPED_ARRAY_SUPPORT&&typeof console!="undefined"&&typeof console.error=="function"&&console.error("此浏览器缺少类型化数组 (Uint8Array)) support which is required by `buffer` v5.x. Use `buffer` v4.x if you require old browser support.");function cL(){try{let t=new Uint8Array(1),e={foo:function(){return 42}};return Object.setPrototypeOf(e,Uint8Array.prototype),Object.setPrototypeOf(t,e),t.foo()===42}catch(t){return!1}}Object.defineProperty(F.prototype,"parent",{enumerable:!0,get:function(){if(F.isBuffer(this))return this.buffer}});Object.defineProperty(F.prototype,"offset",{enumerable:!0,get:function(){if(F.isBuffer(this))return this.byteOffset}});function Bi(t){if(t>Of)throw new RangeError("The value \""+t+"\" is invalid for option \"size\"");let e=new Uint8Array(t);return Object.setPrototypeOf(e,F.prototype),e}function F(t,e,r){if(typeof t=="number"){if(typeof e=="string")throw new TypeError("The \"string\" argument must be of type string. Received type number");return Hm(t)}return i_(t,e,r)}F.poolSize=8192;function i_(t,e,r){if(typeof t=="string")return fL(t,e);if(ArrayBuffer.isView(t))return dL(t);if(t==null)throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+typeof t);if(ni(t,ArrayBuffer)||t&&ni(t.buffer,ArrayBuffer)||typeof SharedArrayBuffer!="undefined"&&(ni(t,SharedArrayBuffer)||t&&ni(t.buffer,SharedArrayBuffer)))return Nm(t,e,r);if(typeof t=="number")throw new TypeError("The \"value\" argument must not be of type number. Received type number");let n=t.valueOf&&t.valueOf();if(n!=null&&n!==t)return F.from(n,e,r);let i=hL(t);if(i)return i;if(typeof Symbol!="undefined"&&Symbol.toPrimitive!=null&&typeof t[Symbol.toPrimitive]=="function")return F.from(t[Symbol.toPrimitive]("string"),e,r);throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+typeof t)}F.from=function(t,e,r){return i_(t,e,r)};Object.setPrototypeOf(F.prototype,Uint8Array.prototype);Object.setPrototypeOf(F,Uint8Array);function s_(t){if(typeof t!="number")throw new TypeError("\"size\" argument must be of type number");if(t<0)throw new RangeError("The value \""+t+"\" is invalid for option \"size\"")}function uL(t,e,r){return s_(t),t<=0?Bi(t):e!==void 0?typeof r=="string"?Bi(t).fill(e,r):Bi(t).fill(e):Bi(t)}F.alloc=function(t,e,r){return uL(t,e,r)};function Hm(t){return s_(t),Bi(t<0?0:Um(t)|0)}F.allocUnsafe=function(t){return Hm(t)};F.allocUnsafeSlow=function(t){return Hm(t)};function fL(t,e){if((typeof e!="string"||e==="")&&(e="utf8"),!F.isEncoding(e))throw new TypeError("Unknown encoding: "+e);let r=a_(t,e)|0,n=Bi(r),i=n.write(t,e);return i!==r&&(n=n.slice(0,i)),n}function Lm(t){let e=t.length<0?0:Um(t.length)|0,r=Bi(e);for(let n=0;n=Of)throw new RangeError("Attempt to allocate Buffer larger than maximum size: 0x"+Of.toString(16)+" bytes");return t|0}function pL(t){return+t!=t&&(t=0),F.alloc(+t)}F.isBuffer=function(e){return e!=null&&e._isBuffer===!0&&e!==F.prototype};F.compare=function(e,r){if(ni(e,Uint8Array)&&(e=F.from(e,e.offset,e.byteLength)),ni(r,Uint8Array)&&(r=F.from(r,r.offset,r.byteLength)),!F.isBuffer(e)||!F.isBuffer(r))throw new TypeError("The \"buf1\", \"buf2\" arguments must be one of type Buffer or Uint8Array");if(e===r)return 0;let n=e.length,i=r.length;for(let s=0,a=Math.min(n,i);si.length?(F.isBuffer(a)||(a=F.from(a)),a.copy(i,s)):Uint8Array.prototype.set.call(i,a,s);else if(F.isBuffer(a))a.copy(i,s);else throw new TypeError("\"list\" argument must be an Array of Buffers");s+=a.length}return i};function a_(t,e){if(F.isBuffer(t))return t.length;if(ArrayBuffer.isView(t)||ni(t,ArrayBuffer))return t.byteLength;if(typeof t!="string")throw new TypeError("The \"string\" argument must be one of type string, Buffer, or ArrayBuffer. Received type "+typeof t);let r=t.length,n=arguments.length>2&&arguments[2]===!0;if(!n&&r===0)return 0;let i=!1;for(;;)switch(e){case"ascii":case"latin1":case"binary":return r;case"utf8":case"utf-8":return Bm(t).length;case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return r*2;case"hex":return r>>>1;case"base64":return m_(t).length;default:if(i)return n?-1:Bm(t).length;e=(""+e).toLowerCase(),i=!0}}F.byteLength=a_;function mL(t,e,r){let n=!1;if((e===void 0||e<0)&&(e=0),e>this.length||((r===void 0||r>this.length)&&(r=this.length),r<=0)||(r>>>=0,e>>>=0,r<=e))return"";for(t||(t="utf8");;)switch(t){case"hex":return kL(this,e,r);case"utf8":case"utf-8":return l_(this,e,r);case"ascii":return SL(this,e,r);case"latin1":case"binary":return EL(this,e,r);case"base64":return _L(this,e,r);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return AL(this,e,r);default:if(n)throw new TypeError("Unknown encoding: "+t);t=(t+"").toLowerCase(),n=!0}}F.prototype._isBuffer=!0;function ca(t,e,r){let n=t[e];t[e]=t[r],t[r]=n}F.prototype.swap16=function(){let e=this.length;if(e%2!==0)throw new RangeError("Buffer size must be a multiple of 16-bits");for(let r=0;rr&&(e+=" ... "),""};e_&&(F.prototype[e_]=F.prototype.inspect);F.prototype.compare=function(e,r,n,i,s){if(ni(e,Uint8Array)&&(e=F.from(e,e.offset,e.byteLength)),!F.isBuffer(e))throw new TypeError("The \"target\" argument must be one of type Buffer or Uint8Array. Received type "+typeof e);if(r===void 0&&(r=0),n===void 0&&(n=e?e.length:0),i===void 0&&(i=0),s===void 0&&(s=this.length),r<0||n>e.length||i<0||s>this.length)throw new RangeError("out of range index");if(i>=s&&r>=n)return 0;if(i>=s)return-1;if(r>=n)return 1;if(r>>>=0,n>>>=0,i>>>=0,s>>>=0,this===e)return 0;let a=s-i,o=n-r,l=Math.min(a,o),c=this.slice(i,s),u=e.slice(r,n);for(let f=0;f2147483647?r=2147483647:r<-2147483648&&(r=-2147483648),r=+r,jm(r)&&(r=i?0:t.length-1),r<0&&(r=t.length+r),r>=t.length){if(i)return-1;r=t.length-1}else if(r<0)if(i)r=0;else return-1;if(typeof e=="string"&&(e=F.from(e,n)),F.isBuffer(e))return e.length===0?-1:t_(t,e,r,n,i);if(typeof e=="number")return e=e&255,typeof Uint8Array.prototype.indexOf=="function"?i?Uint8Array.prototype.indexOf.call(t,e,r):Uint8Array.prototype.lastIndexOf.call(t,e,r):t_(t,[e],r,n,i);throw new TypeError("val must be string, number or Buffer")}function t_(t,e,r,n,i){let s=1,a=t.length,o=e.length;if(n!==void 0&&(n=String(n).toLowerCase(),n==="ucs2"||n==="ucs-2"||n==="utf16le"||n==="utf-16le")){if(t.length<2||e.length<2)return-1;s=2,a/=2,o/=2,r/=2}function l(u,f){return s===1?u[f]:u.readUInt16BE(f*s)}let c;if(i){let u=-1;for(c=r;ca&&(r=a-o),c=r;c>=0;c--){let u=!0;for(let f=0;fi&&(n=i)):n=i;let s=e.length;n>s/2&&(n=s/2);let a;for(a=0;a>>0,isFinite(n)?(n=n>>>0,i===void 0&&(i="utf8")):(i=n,n=void 0);else throw new Error("Buffer.write(string, encoding, offset[, length]) is no longer supported");let s=this.length-r;if((n===void 0||n>s)&&(n=s),e.length>0&&(n<0||r<0)||r>this.length)throw new RangeError("Attempt to write outside buffer bounds");i||(i="utf8");let a=!1;for(;;)switch(i){case"hex":return gL(this,e,r,n);case"utf8":case"utf-8":return vL(this,e,r,n);case"ascii":case"latin1":case"binary":return wL(this,e,r,n);case"base64":return yL(this,e,r,n);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return bL(this,e,r,n);default:if(a)throw new TypeError("Unknown encoding: "+i);i=(""+i).toLowerCase(),a=!0}};F.prototype.toJSON=function(){return{type:"Buffer",data:Array.prototype.slice.call(this._arr||this,0)}};function _L(t,e,r){return e===0&&r===t.length?Dm.fromByteArray(t):Dm.fromByteArray(t.slice(e,r))}function l_(t,e,r){r=Math.min(t.length,r);let n=[],i=e;for(;i239?4:s>223?3:s>191?2:1;if(i+o<=r){let l,c,u,f;switch(o){case 1:s<128&&(a=s);break;case 2:l=t[i+1],(l&192)===128&&(f=(s&31)<<6|l&63,f>127&&(a=f));break;case 3:l=t[i+1],c=t[i+2],(l&192)===128&&(c&192)===128&&(f=(s&15)<<12|(l&63)<<6|c&63,f>2047&&(f<55296||f>57343)&&(a=f));break;case 4:l=t[i+1],c=t[i+2],u=t[i+3],(l&192)===128&&(c&192)===128&&(u&192)===128&&(f=(s&15)<<18|(l&63)<<12|(c&63)<<6|u&63,f>65535&&f<1114112&&(a=f))}}a===null?(a=65533,o=1):a>65535&&(a-=65536,n.push(a>>>10&1023|55296),a=56320|a&1023),n.push(a),i+=o}return xL(n)}var r_=4096;function xL(t){let e=t.length;if(e<=r_)return String.fromCharCode.apply(String,t);let r="",n=0;for(;nn)&&(r=n);let i="";for(let s=e;sn&&(e=n),r<0?(r+=n,r<0&&(r=0)):r>n&&(r=n),rr)throw new RangeError("Trying to access beyond buffer length")}F.prototype.readUintLE=F.prototype.readUIntLE=function(e,r,n){e=e>>>0,r=r>>>0,n||Mt(e,r,this.length);let i=this[e],s=1,a=0;for(;++a>>0,r=r>>>0,n||Mt(e,r,this.length);let i=this[e+--r],s=1;for(;r>0&&(s*=256);)i+=this[e+--r]*s;return i};F.prototype.readUint8=F.prototype.readUInt8=function(e,r){return e=e>>>0,r||Mt(e,1,this.length),this[e]};F.prototype.readUint16LE=F.prototype.readUInt16LE=function(e,r){return e=e>>>0,r||Mt(e,2,this.length),this[e]|this[e+1]<<8};F.prototype.readUint16BE=F.prototype.readUInt16BE=function(e,r){return e=e>>>0,r||Mt(e,2,this.length),this[e]<<8|this[e+1]};F.prototype.readUint32LE=F.prototype.readUInt32LE=function(e,r){return e=e>>>0,r||Mt(e,4,this.length),(this[e]|this[e+1]<<8|this[e+2]<<16)+this[e+3]*16777216};F.prototype.readUint32BE=F.prototype.readUInt32BE=function(e,r){return e=e>>>0,r||Mt(e,4,this.length),this[e]*16777216+(this[e+1]<<16|this[e+2]<<8|this[e+3])};F.prototype.readBigUInt64LE=ys(function(e){e=e>>>0,Ao(e,"offset");let r=this[e],n=this[e+7];(r===void 0||n===void 0)&&_c(e,this.length-8);let i=r+this[++e]*2**8+this[++e]*2**16+this[++e]*2**24,s=this[++e]+this[++e]*2**8+this[++e]*2**16+n*2**24;return BigInt(i)+(BigInt(s)<>>0,Ao(e,"offset");let r=this[e],n=this[e+7];(r===void 0||n===void 0)&&_c(e,this.length-8);let i=r*2**24+this[++e]*2**16+this[++e]*2**8+this[++e],s=this[++e]*2**24+this[++e]*2**16+this[++e]*2**8+n;return(BigInt(i)<>>0,r=r>>>0,n||Mt(e,r,this.length);let i=this[e],s=1,a=0;for(;++a=s&&(i-=Math.pow(2,8*r)),i};F.prototype.readIntBE=function(e,r,n){e=e>>>0,r=r>>>0,n||Mt(e,r,this.length);let i=r,s=1,a=this[e+--i];for(;i>0&&(s*=256);)a+=this[e+--i]*s;return s*=128,a>=s&&(a-=Math.pow(2,8*r)),a};F.prototype.readInt8=function(e,r){return e=e>>>0,r||Mt(e,1,this.length),this[e]&128?(255-this[e]+1)*-1:this[e]};F.prototype.readInt16LE=function(e,r){e=e>>>0,r||Mt(e,2,this.length);let n=this[e]|this[e+1]<<8;return n&32768?n|4294901760:n};F.prototype.readInt16BE=function(e,r){e=e>>>0,r||Mt(e,2,this.length);let n=this[e+1]|this[e]<<8;return n&32768?n|4294901760:n};F.prototype.readInt32LE=function(e,r){return e=e>>>0,r||Mt(e,4,this.length),this[e]|this[e+1]<<8|this[e+2]<<16|this[e+3]<<24};F.prototype.readInt32BE=function(e,r){return e=e>>>0,r||Mt(e,4,this.length),this[e]<<24|this[e+1]<<16|this[e+2]<<8|this[e+3]};F.prototype.readBigInt64LE=ys(function(e){e=e>>>0,Ao(e,"offset");let r=this[e],n=this[e+7];(r===void 0||n===void 0)&&_c(e,this.length-8);let i=this[e+4]+this[e+5]*2**8+this[e+6]*2**16+(n<<24);return(BigInt(i)<>>0,Ao(e,"offset");let r=this[e],n=this[e+7];(r===void 0||n===void 0)&&_c(e,this.length-8);let i=(r<<24)+this[++e]*2**16+this[++e]*2**8+this[++e];return(BigInt(i)<>>0,r||Mt(e,4,this.length),ko.read(this,e,!0,23,4)};F.prototype.readFloatBE=function(e,r){return e=e>>>0,r||Mt(e,4,this.length),ko.read(this,e,!1,23,4)};F.prototype.readDoubleLE=function(e,r){return e=e>>>0,r||Mt(e,8,this.length),ko.read(this,e,!0,52,8)};F.prototype.readDoubleBE=function(e,r){return e=e>>>0,r||Mt(e,8,this.length),ko.read(this,e,!1,52,8)};function br(t,e,r,n,i,s){if(!F.isBuffer(t))throw new TypeError("\"buffer\" argument must be a Buffer instance");if(e>i||et.length)throw new RangeError("Index out of range")}F.prototype.writeUintLE=F.prototype.writeUIntLE=function(e,r,n,i){if(e=+e,r=r>>>0,n=n>>>0,!i){let o=Math.pow(2,8*n)-1;br(this,e,r,n,o,0)}let s=1,a=0;for(this[r]=e&255;++a>>0,n=n>>>0,!i){let o=Math.pow(2,8*n)-1;br(this,e,r,n,o,0)}let s=n-1,a=1;for(this[r+s]=e&255;--s>=0&&(a*=256);)this[r+s]=e/a&255;return r+n};F.prototype.writeUint8=F.prototype.writeUInt8=function(e,r,n){return e=+e,r=r>>>0,n||br(this,e,r,1,255,0),this[r]=e&255,r+1};F.prototype.writeUint16LE=F.prototype.writeUInt16LE=function(e,r,n){return e=+e,r=r>>>0,n||br(this,e,r,2,65535,0),this[r]=e&255,this[r+1]=e>>>8,r+2};F.prototype.writeUint16BE=F.prototype.writeUInt16BE=function(e,r,n){return e=+e,r=r>>>0,n||br(this,e,r,2,65535,0),this[r]=e>>>8,this[r+1]=e&255,r+2};F.prototype.writeUint32LE=F.prototype.writeUInt32LE=function(e,r,n){return e=+e,r=r>>>0,n||br(this,e,r,4,4294967295,0),this[r+3]=e>>>24,this[r+2]=e>>>16,this[r+1]=e>>>8,this[r]=e&255,r+4};F.prototype.writeUint32BE=F.prototype.writeUInt32BE=function(e,r,n){return e=+e,r=r>>>0,n||br(this,e,r,4,4294967295,0),this[r]=e>>>24,this[r+1]=e>>>16,this[r+2]=e>>>8,this[r+3]=e&255,r+4};function c_(t,e,r,n,i){p_(e,n,i,t,r,7);let s=Number(e&BigInt(4294967295));t[r++]=s,s=s>>8,t[r++]=s,s=s>>8,t[r++]=s,s=s>>8,t[r++]=s;let a=Number(e>>BigInt(32)&BigInt(4294967295));return t[r++]=a,a=a>>8,t[r++]=a,a=a>>8,t[r++]=a,a=a>>8,t[r++]=a,r}function u_(t,e,r,n,i){p_(e,n,i,t,r,7);let s=Number(e&BigInt(4294967295));t[r+7]=s,s=s>>8,t[r+6]=s,s=s>>8,t[r+5]=s,s=s>>8,t[r+4]=s;let a=Number(e>>BigInt(32)&BigInt(4294967295));return t[r+3]=a,a=a>>8,t[r+2]=a,a=a>>8,t[r+1]=a,a=a>>8,t[r]=a,r+8}F.prototype.writeBigUInt64LE=ys(function(e,r=0){return c_(this,e,r,BigInt(0),BigInt("0xffffffffffffffff"))});F.prototype.writeBigUInt64BE=ys(function(e,r=0){return u_(this,e,r,BigInt(0),BigInt("0xffffffffffffffff"))});F.prototype.writeIntLE=function(e,r,n,i){if(e=+e,r=r>>>0,!i){let l=Math.pow(2,8*n-1);br(this,e,r,n,l-1,-l)}let s=0,a=1,o=0;for(this[r]=e&255;++s>0)-o&255;return r+n};F.prototype.writeIntBE=function(e,r,n,i){if(e=+e,r=r>>>0,!i){let l=Math.pow(2,8*n-1);br(this,e,r,n,l-1,-l)}let s=n-1,a=1,o=0;for(this[r+s]=e&255;--s>=0&&(a*=256);)e<0&&o===0&&this[r+s+1]!==0&&(o=1),this[r+s]=(e/a>>0)-o&255;return r+n};F.prototype.writeInt8=function(e,r,n){return e=+e,r=r>>>0,n||br(this,e,r,1,127,-128),e<0&&(e=255+e+1),this[r]=e&255,r+1};F.prototype.writeInt16LE=function(e,r,n){return e=+e,r=r>>>0,n||br(this,e,r,2,32767,-32768),this[r]=e&255,this[r+1]=e>>>8,r+2};F.prototype.writeInt16BE=function(e,r,n){return e=+e,r=r>>>0,n||br(this,e,r,2,32767,-32768),this[r]=e>>>8,this[r+1]=e&255,r+2};F.prototype.writeInt32LE=function(e,r,n){return e=+e,r=r>>>0,n||br(this,e,r,4,2147483647,-2147483648),this[r]=e&255,this[r+1]=e>>>8,this[r+2]=e>>>16,this[r+3]=e>>>24,r+4};F.prototype.writeInt32BE=function(e,r,n){return e=+e,r=r>>>0,n||br(this,e,r,4,2147483647,-2147483648),e<0&&(e=4294967295+e+1),this[r]=e>>>24,this[r+1]=e>>>16,this[r+2]=e>>>8,this[r+3]=e&255,r+4};F.prototype.writeBigInt64LE=ys(function(e,r=0){return c_(this,e,r,-BigInt("0x8000000000000000"),BigInt("0x7fffffffffffffff"))});F.prototype.writeBigInt64BE=ys(function(e,r=0){return u_(this,e,r,-BigInt("0x8000000000000000"),BigInt("0x7fffffffffffffff"))});function f_(t,e,r,n,i,s){if(r+n>t.length)throw new RangeError("Index out of range");if(r<0)throw new RangeError("Index out of range")}function d_(t,e,r,n,i){return e=+e,r=r>>>0,i||f_(t,e,r,4,34028234663852886e22,-34028234663852886e22),ko.write(t,e,r,n,23,4),r+4}F.prototype.writeFloatLE=function(e,r,n){return d_(this,e,r,!0,n)};F.prototype.writeFloatBE=function(e,r,n){return d_(this,e,r,!1,n)};function h_(t,e,r,n,i){return e=+e,r=r>>>0,i||f_(t,e,r,8,17976931348623157e292,-17976931348623157e292),ko.write(t,e,r,n,52,8),r+8}F.prototype.writeDoubleLE=function(e,r,n){return h_(this,e,r,!0,n)};F.prototype.writeDoubleBE=function(e,r,n){return h_(this,e,r,!1,n)};F.prototype.copy=function(e,r,n,i){if(!F.isBuffer(e))throw new TypeError("argument should be a Buffer");if(n||(n=0),!i&&i!==0&&(i=this.length),r>=e.length&&(r=e.length),r||(r=0),i>0&&i=this.length)throw new RangeError("Index out of range");if(i<0)throw new RangeError("sourceEnd out of bounds");i>this.length&&(i=this.length),e.length-r>>0,n=n===void 0?this.length:n>>>0,e||(e=0);let s;if(typeof e=="number")for(s=r;s2**32?i=n_(String(r)):typeof r=="bigint"&&(i=String(r),(r>BigInt(2)**BigInt(32)||r<-(BigInt(2)**BigInt(32)))&&(i=n_(i)),i+="n"),n+=` It must be ${e}. Received ${i}`,n},RangeError);function n_(t){let e="",r=t.length,n=t[0]==="-"?1:0;for(;r>=n+4;r-=3)e=`_${t.slice(r-3,r)}${e}`;return`${t.slice(0,r)}${e}`}function CL(t,e,r){Ao(e,"offset"),(t[e]===void 0||t[e+r]===void 0)&&_c(e,t.length-(r+1))}function p_(t,e,r,n,i,s){if(t>r||t3?e===0||e===BigInt(0)?o=`>= 0${a} and < 2${a} ** ${(s+1)*8}${a}`:o=`>= -(2${a} ** ${(s+1)*8-1}${a}) and < 2 ** ${(s+1)*8-1}${a}`:o=`>= ${e}${a} and <= ${r}${a}`,new Eo.ERR_OUT_OF_RANGE("value",o,t)}CL(n,i,s)}function Ao(t,e){if(typeof t!="number")throw new Eo.ERR_INVALID_ARG_TYPE(e,"number",t)}function _c(t,e,r){throw Math.floor(t)!==t?(Ao(t,r),new Eo.ERR_OUT_OF_RANGE(r||"offset","an integer",t)):e<0?new Eo.ERR_BUFFER_OUT_OF_BOUNDS:new Eo.ERR_OUT_OF_RANGE(r||"offset",`>= ${r?1:0} and <= ${e}`,t)}var TL=/[^+/0-9A-Za-z-_]/g;function PL(t){if(t=t.split("=")[0],t=t.trim().replace(TL,""),t.length<2)return"";for(;t.length%4!==0;)t=t+"=";return t}function Bm(t,e){e=e||1/0;let r,n=t.length,i=null,s=[];for(let a=0;a55295&&r<57344){if(!i){if(r>56319){(e-=3)>-1&&s.push(239,191,189);continue}else if(a+1===n){(e-=3)>-1&&s.push(239,191,189);continue}i=r;continue}if(r<56320){(e-=3)>-1&&s.push(239,191,189),i=r;continue}r=(i-55296<<10|r-56320)+65536}else i&&(e-=3)>-1&&s.push(239,191,189);if(i=null,r<128){if((e-=1)<0)break;s.push(r)}else if(r<2048){if((e-=2)<0)break;s.push(r>>6|192,r&63|128)}else if(r<65536){if((e-=3)<0)break;s.push(r>>12|224,r>>6&63|128,r&63|128)}else if(r<1114112){if((e-=4)<0)break;s.push(r>>18|240,r>>12&63|128,r>>6&63|128,r&63|128)}else throw new Error("Invalid code point")}return s}function RL(t){let e=[];for(let r=0;r>8,i=r%256,s.push(i),s.push(n);return s}function m_(t){return Dm.toByteArray(PL(t))}function Mf(t,e,r,n){let i;for(i=0;i=e.length||i>=t.length);++i)e[i+r]=t[i];return i}function ni(t,e){return t instanceof e||t!=null&&t.constructor!=null&&t.constructor.name!=null&&t.constructor.name===e.name}function jm(t){return t!==t}var IL=function(){let t="0123456789abcdef",e=new Array(256);for(let r=0;r<16;++r){let n=r*16;for(let i=0;i<16;++i)e[n+i]=t[r]+t[i]}return e}();function ys(t){return typeof BigInt=="undefined"?FL:t}function FL(){throw new Error("BigInt not supported")}});var g_,Wm,Buffer,p=JD(()=>{g_=require("obsidian");g_.Platform.isMobileApp?Wm=qm().Buffer:Wm=global.Buffer;Buffer=Wm});var w_=I((Z7,v_)=>{"use strict";p();var Vr=function(t){if(t=t||{},this.Promise=t.Promise||Promise,this.queues=Object.create(null),this.domainReentrant=t.domainReentrant||!1,this.domainReentrant){if(typeof process=="undefined"||typeof process.domain=="undefined")throw new Error("Domain-reentrant locks require `process.domain` to exist. Please flip `opts.domainReentrant = false`, use a NodeJS version that still implements Domain, or install a browser polyfill.");this.domains=Object.create(null)}this.timeout=t.timeout||Vr.DEFAULT_TIMEOUT,this.maxOccupationTime=t.maxOccupationTime||Vr.DEFAULT_MAX_OCCUPATION_TIME,this.maxExecutionTime=t.maxExecutionTime||Vr.DEFAULT_MAX_EXECUTION_TIME,t.maxPending===1/0||Number.isInteger(t.maxPending)&&t.maxPending>=0?this.maxPending=t.maxPending:this.maxPending=Vr.DEFAULT_MAX_PENDING};Vr.DEFAULT_TIMEOUT=0;Vr.DEFAULT_MAX_OCCUPATION_TIME=0;Vr.DEFAULT_MAX_EXECUTION_TIME=0;Vr.DEFAULT_MAX_PENDING=1e3;Vr.prototype.acquire=function(t,e,r,n){if(Array.isArray(t))return this._acquireBatch(t,e,r,n);if(typeof e!="function")throw new Error("You must pass a function to execute");var i=null,s=null,a=null;typeof r!="function"&&(n=r,r=null,a=new this.Promise(function(b,k){i=b,s=k})),n=n||{};var o=!1,l=null,c=null,u=null,f=this,d=function(b,k,x){c&&(clearTimeout(c),c=null),u&&(clearTimeout(u),u=null),b&&(f.queues[t]&&f.queues[t].length===0&&delete f.queues[t],f.domainReentrant&&delete f.domains[t]),o||(a?k?s(k):i(x):typeof r=="function"&&r(k,x),o=!0),b&&f.queues[t]&&f.queues[t].length>0&&f.queues[t].shift()()},h=function(b){if(o)return d(b);l&&(clearTimeout(l),l=null),f.domainReentrant&&b&&(f.domains[t]=process.domain);var k=n.maxExecutionTime||f.maxExecutionTime;if(k&&(u=setTimeout(function(){f.queues[t]&&d(b,new Error("Maximum execution time is exceeded "+t))},k)),e.length===1){var x=!1;try{e(function(E,A){x||(x=!0,d(b,E,A))})}catch(E){x||(x=!0,d(b,E))}}else f._promiseTry(function(){return e()}).then(function(E){d(b,void 0,E)},function(E){d(b,E)})};f.domainReentrant&&process.domain&&(h=process.domain.bind(h));var m=n.maxPending||f.maxPending;if(!f.queues[t])f.queues[t]=[],h(!0);else if(f.domainReentrant&&process.domain&&process.domain===f.domains[t])h(!1);else if(f.queues[t].length>=m)d(!1,new Error("Too many pending tasks in queue "+t));else{var g=function(){h(!0)};n.skipQueue?f.queues[t].unshift(g):f.queues[t].push(g);var v=n.timeout||f.timeout;v&&(l=setTimeout(function(){l=null,d(!1,new Error("async-lock timed out in queue "+t))},v))}var w=n.maxOccupationTime||f.maxOccupationTime;if(w&&(c=setTimeout(function(){f.queues[t]&&d(!1,new Error("Maximum occupation time is exceeded in queue "+t))},w)),a)return a};Vr.prototype._acquireBatch=function(t,e,r,n){typeof r!="function"&&(n=r,r=null);var i=this,s=function(o,l){return function(c){i.acquire(o,l,c,n)}},a=t.reduceRight(function(o,l){return s(l,o)},e);if(typeof r=="function")a(r);else return new this.Promise(function(o,l){a.length===1?a(function(c,u){c?l(c):o(u)}):o(a())})};Vr.prototype.isBusy=function(t){return t?!!this.queues[t]:Object.keys(this.queues).length>0};Vr.prototype._promiseTry=function(t){try{return this.Promise.resolve(t())}catch(e){return this.Promise.reject(e)}};v_.exports=Vr});var b_=I((Q7,y_)=>{"use strict";p();y_.exports=w_()});var __=I((eY,zm)=>{p();typeof Object.create=="function"?zm.exports=function(e,r){r&&(e.super_=r,e.prototype=Object.create(r.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}))}:zm.exports=function(e,r){if(r){e.super_=r;var n=function(){};n.prototype=r.prototype,e.prototype=new n,e.prototype.constructor=e}}});var Lf=I((Vm,S_)=>{p();var Df=qm(),ii=Df.Buffer;function x_(t,e){for(var r in t)e[r]=t[r]}ii.from&&ii.alloc&&ii.allocUnsafe&&ii.allocUnsafeSlow?S_.exports=Df:(x_(Df,Vm),Vm.Buffer=ua);function ua(t,e,r){return ii(t,e,r)}ua.prototype=Object.create(ii.prototype);x_(ii,ua);ua.from=function(t,e,r){if(typeof t=="number")throw new TypeError("Argument must not be a number");return ii(t,e,r)};ua.alloc=function(t,e,r){if(typeof t!="number")throw new TypeError("Argument must be a number");var n=ii(t);return e!==void 0?typeof r=="string"?n.fill(e,r):n.fill(e):n.fill(0),n};ua.allocUnsafe=function(t){if(typeof t!="number")throw new TypeError("Argument must be a number");return ii(t)};ua.allocUnsafeSlow=function(t){if(typeof t!="number")throw new TypeError("Argument must be a number");return Df.SlowBuffer(t)}});var Nf=I((nY,E_)=>{p();var OL={}.toString;E_.exports=Array.isArray||function(t){return OL.call(t)=="[object Array]"}});var _r=I((sY,k_)=>{"use strict";p();k_.exports=TypeError});var Bf=I((oY,A_)=>{"use strict";p();A_.exports=Object});var Ym=I((cY,C_)=>{"use strict";p();C_.exports=Error});var P_=I((fY,T_)=>{"use strict";p();T_.exports=EvalError});var $_=I((hY,R_)=>{"use strict";p();R_.exports=RangeError});var F_=I((mY,I_)=>{"use strict";p();I_.exports=ReferenceError});var Hf=I((vY,O_)=>{"use strict";p();O_.exports=SyntaxError});var D_=I((yY,M_)=>{"use strict";p();M_.exports=URIError});var N_=I((_Y,L_)=>{"use strict";p();L_.exports=Math.abs});var H_=I((SY,B_)=>{"use strict";p();B_.exports=Math.floor});var G_=I((kY,U_)=>{"use strict";p();U_.exports=Math.max});var q_=I((CY,j_)=>{"use strict";p();j_.exports=Math.min});var z_=I((PY,W_)=>{"use strict";p();W_.exports=Math.pow});var Y_=I(($Y,V_)=>{"use strict";p();V_.exports=Math.round});var Z_=I((FY,X_)=>{"use strict";p();X_.exports=Number.isNaN||function(e){return e!==e}});var Q_=I((MY,K_)=>{"use strict";p();var ML=Z_();K_.exports=function(e){return ML(e)||e===0?e:e<0?-1:1}});var ex=I((LY,J_)=>{"use strict";p();J_.exports=Object.getOwnPropertyDescriptor});var bs=I((BY,tx)=>{"use strict";p();var Uf=ex();if(Uf)try{Uf([],"length")}catch(t){Uf=null}tx.exports=Uf});var xc=I((UY,rx)=>{"use strict";p();var Gf=Object.defineProperty||!1;if(Gf)try{Gf({},"a",{value:1})}catch(t){Gf=!1}rx.exports=Gf});var Sc=I((jY,nx)=>{"use strict";p();nx.exports=function(){if(typeof Symbol!="function"||typeof Object.getOwnPropertySymbols!="function")return!1;if(typeof Symbol.iterator=="symbol")return!0;var e={},r=Symbol("test"),n=Object(r);if(typeof r=="string"||Object.prototype.toString.call(r)!=="[object Symbol]"||Object.prototype.toString.call(n)!=="[object Symbol]")return!1;var i=42;e[r]=i;for(var s in e)return!1;if(typeof Object.keys=="function"&&Object.keys(e).length!==0||typeof Object.getOwnPropertyNames=="function"&&Object.getOwnPropertyNames(e).length!==0)return!1;var a=Object.getOwnPropertySymbols(e);if(a.length!==1||a[0]!==r||!Object.prototype.propertyIsEnumerable.call(e,r))return!1;if(typeof Object.getOwnPropertyDescriptor=="function"){var o=Object.getOwnPropertyDescriptor(e,r);if(o.value!==i||o.enumerable!==!0)return!1}return!0}});var jf=I((WY,sx)=>{"use strict";p();var ix=typeof Symbol!="undefined"&&Symbol,DL=Sc();sx.exports=function(){return typeof ix!="function"||typeof Symbol!="function"||typeof ix("foo")!="symbol"||typeof Symbol("bar")!="symbol"?!1:DL()}});var Xm=I((VY,ax)=>{"use strict";p();ax.exports=typeof Reflect!="undefined"&&Reflect.getPrototypeOf||null});var Zm=I((XY,ox)=>{"use strict";p();var LL=Bf();ox.exports=LL.getPrototypeOf||null});var ux=I((KY,cx)=>{"use strict";p();var NL="Function.prototype.bind called on incompatible ",BL=Object.prototype.toString,HL=Math.max,UL="[object Function]",lx=function(e,r){for(var n=[],i=0;i{"use strict";p();var qL=ux();fx.exports=Function.prototype.bind||qL});var qf=I((tX,dx)=>{"use strict";p();dx.exports=Function.prototype.call});var Wf=I((nX,hx)=>{"use strict";p();hx.exports=Function.prototype.apply});var mx=I((sX,px)=>{"use strict";p();px.exports=typeof Reflect!="undefined"&&Reflect&&Reflect.apply});var Km=I((oX,gx)=>{"use strict";p();var WL=To(),zL=Wf(),VL=qf(),YL=mx();gx.exports=YL||WL.call(VL,zL)});var zf=I((cX,vx)=>{"use strict";p();var XL=To(),ZL=_r(),KL=qf(),QL=Km();vx.exports=function(e){if(e.length<1||typeof e[0]!="function")throw new ZL("a function is required");return QL(XL,KL,e)}});var Sx=I((fX,xx)=>{"use strict";p();var JL=zf(),wx=bs(),bx;try{bx=[].__proto__===Array.prototype}catch(t){if(!t||typeof t!="object"||!("code"in t)||t.code!=="ERR_PROTO_ACCESS")throw t}var Qm=!!bx&&wx&&wx(Object.prototype,"__proto__"),_x=Object,yx=_x.getPrototypeOf;xx.exports=Qm&&typeof Qm.get=="function"?JL([Qm.get]):typeof yx=="function"?function(e){return yx(e==null?e:_x(e))}:!1});var Vf=I((hX,Cx)=>{"use strict";p();var Ex=Xm(),kx=Zm(),Ax=Sx();Cx.exports=Ex?function(e){return Ex(e)}:kx?function(e){if(!e||typeof e!="object"&&typeof e!="function")throw new TypeError("getProto: not an object");return kx(e)}:Ax?function(e){return Ax(e)}:null});var Yf=I((mX,Tx)=>{"use strict";p();var eN=Function.prototype.call,tN=Object.prototype.hasOwnProperty,rN=To();Tx.exports=rN.call(eN,tN)});var si=I((vX,Ox)=>{"use strict";p();var Ee,nN=Bf(),iN=Ym(),sN=P_(),aN=$_(),oN=F_(),Io=Hf(),$o=_r(),lN=D_(),cN=N_(),uN=H_(),fN=G_(),dN=q_(),hN=z_(),pN=Y_(),mN=Q_(),Ix=Function,Jm=function(t){try{return Ix("\"use strict\"; return ("+t+").constructor;")()}catch(e){}},Ec=bs(),gN=xc(),eg=function(){throw new $o},vN=Ec?function(){try{return arguments.callee,eg}catch(t){try{return Ec(arguments,"callee").get}catch(e){return eg}}}():eg,Po=jf()(),Dt=Vf(),wN=Zm(),yN=Xm(),Fx=Wf(),kc=qf(),Ro={},bN=typeof Uint8Array=="undefined"||!Dt?Ee:Dt(Uint8Array),fa={__proto__:null,"%AggregateError%":typeof AggregateError=="undefined"?Ee:AggregateError,"%Array%":Array,"%ArrayBuffer%":typeof ArrayBuffer=="undefined"?Ee:ArrayBuffer,"%ArrayIteratorPrototype%":Po&&Dt?Dt([][Symbol.iterator]()):Ee,"%AsyncFromSyncIteratorPrototype%":Ee,"%AsyncFunction%":Ro,"%AsyncGenerator%":Ro,"%AsyncGeneratorFunction%":Ro,"%AsyncIteratorPrototype%":Ro,"%Atomics%":typeof Atomics=="undefined"?Ee:Atomics,"%BigInt%":typeof BigInt=="undefined"?Ee:BigInt,"%BigInt64Array%":typeof BigInt64Array=="undefined"?Ee:BigInt64Array,"%BigUint64Array%":typeof BigUint64Array=="undefined"?Ee:BigUint64Array,"%Boolean%":Boolean,"%DataView%":typeof DataView=="undefined"?Ee:DataView,"%Date%":Date,"%decodeURI%":decodeURI,"%decodeURIComponent%":decodeURIComponent,"%encodeURI%":encodeURI,"%encodeURIComponent%":encodeURIComponent,"%Error%":iN,"%eval%":eval,"%EvalError%":sN,"%Float16Array%":typeof Float16Array=="undefined"?Ee:Float16Array,"%Float32Array%":typeof Float32Array=="undefined"?Ee:Float32Array,"%Float64Array%":typeof Float64Array=="undefined"?Ee:Float64Array,"%FinalizationRegistry%":typeof FinalizationRegistry=="undefined"?Ee:FinalizationRegistry,"%Function%":Ix,"%GeneratorFunction%":Ro,"%Int8Array%":typeof Int8Array=="undefined"?Ee:Int8Array,"%Int16Array%":typeof Int16Array=="undefined"?Ee:Int16Array,"%Int32Array%":typeof Int32Array=="undefined"?Ee:Int32Array,"%isFinite%":isFinite,"%isNaN%":isNaN,"%IteratorPrototype%":Po&&Dt?Dt(Dt([][Symbol.iterator]())):Ee,"%JSON%":typeof JSON=="object"?JSON:Ee,"%Map%":typeof Map=="undefined"?Ee:Map,"%MapIteratorPrototype%":typeof Map=="undefined"||!Po||!Dt?Ee:Dt(new Map()[Symbol.iterator]()),"%Math%":Math,"%Number%":Number,"%Object%":nN,"%Object.getOwnPropertyDescriptor%":Ec,"%parseFloat%":parseFloat,"%parseInt%":parseInt,"%Promise%":typeof Promise=="undefined"?Ee:Promise,"%Proxy%":typeof Proxy=="undefined"?Ee:Proxy,"%RangeError%":aN,"%ReferenceError%":oN,"%Reflect%":typeof Reflect=="undefined"?Ee:Reflect,"%RegExp%":RegExp,"%Set%":typeof Set=="undefined"?Ee:Set,"%SetIteratorPrototype%":typeof Set=="undefined"||!Po||!Dt?Ee:Dt(new Set()[Symbol.iterator]()),"%SharedArrayBuffer%":typeof SharedArrayBuffer=="undefined"?Ee:SharedArrayBuffer,"%String%":String,"%StringIteratorPrototype%":Po&&Dt?Dt(""[Symbol.iterator]()):Ee,"%Symbol%":Po?Symbol:Ee,"%SyntaxError%":Io,"%ThrowTypeError%":vN,"%TypedArray%":bN,"%TypeError%":$o,"%Uint8Array%":typeof Uint8Array=="undefined"?Ee:Uint8Array,"%Uint8ClampedArray%":typeof Uint8ClampedArray=="undefined"?Ee:Uint8ClampedArray,"%Uint16Array%":typeof Uint16Array=="undefined"?Ee:Uint16Array,"%Uint32Array%":typeof Uint32Array=="undefined"?Ee:Uint32Array,"%URIError%":lN,"%WeakMap%":typeof WeakMap=="undefined"?Ee:WeakMap,"%WeakRef%":typeof WeakRef=="undefined"?Ee:WeakRef,"%WeakSet%":typeof WeakSet=="undefined"?Ee:WeakSet,"%Function.prototype.call%":kc,"%Function.prototype.apply%":Fx,"%Object.defineProperty%":gN,"%Object.getPrototypeOf%":wN,"%Math.abs%":cN,"%Math.floor%":uN,"%Math.max%":fN,"%Math.min%":dN,"%Math.pow%":hN,"%Math.round%":pN,"%Math.sign%":mN,"%Reflect.getPrototypeOf%":yN};if(Dt)try{null.error}catch(t){Px=Dt(Dt(t)),fa["%Error.prototype%"]=Px}var Px,_N=function t(e){var r;if(e==="%AsyncFunction%")r=Jm("async function () {}");else if(e==="%GeneratorFunction%")r=Jm("function* () {}");else if(e==="%AsyncGeneratorFunction%")r=Jm("async function* () {}");else if(e==="%AsyncGenerator%"){var n=t("%AsyncGeneratorFunction%");n&&(r=n.prototype)}else if(e==="%AsyncIteratorPrototype%"){var i=t("%AsyncGenerator%");i&&Dt&&(r=Dt(i.prototype))}return fa[e]=r,r},Rx={__proto__:null,"%ArrayBufferPrototype%":["ArrayBuffer","prototype"],"%ArrayPrototype%":["Array","prototype"],"%ArrayProto_entries%":["Array","prototype","entries"],"%ArrayProto_forEach%":["Array","prototype","forEach"],"%ArrayProto_keys%":["Array","prototype","keys"],"%ArrayProto_values%":["Array","prototype","values"],"%AsyncFunctionPrototype%":["AsyncFunction","prototype"],"%AsyncGenerator%":["AsyncGeneratorFunction","prototype"],"%AsyncGeneratorPrototype%":["AsyncGeneratorFunction","prototype","prototype"],"%BooleanPrototype%":["Boolean","prototype"],"%DataViewPrototype%":["DataView","prototype"],"%DatePrototype%":["Date","prototype"],"%ErrorPrototype%":["Error","prototype"],"%EvalErrorPrototype%":["EvalError","prototype"],"%Float32ArrayPrototype%":["Float32Array","prototype"],"%Float64ArrayPrototype%":["Float64Array","prototype"],"%FunctionPrototype%":["Function","prototype"],"%Generator%":["GeneratorFunction","prototype"],"%GeneratorPrototype%":["GeneratorFunction","prototype","prototype"],"%Int8ArrayPrototype%":["Int8Array","prototype"],"%Int16ArrayPrototype%":["Int16Array","prototype"],"%Int32ArrayPrototype%":["Int32Array","prototype"],"%JSONParse%":["JSON","parse"],"%JSONStringify%":["JSON","stringify"],"%MapPrototype%":["Map","prototype"],"%NumberPrototype%":["Number","prototype"],"%ObjectPrototype%":["Object","prototype"],"%ObjProto_toString%":["Object","prototype","toString"],"%ObjProto_valueOf%":["Object","prototype","valueOf"],"%PromisePrototype%":["Promise","prototype"],"%PromiseProto_then%":["Promise","prototype","then"],"%Promise_all%":["Promise","all"],"%Promise_reject%":["Promise","reject"],"%Promise_resolve%":["Promise","resolve"],"%RangeErrorPrototype%":["RangeError","prototype"],"%ReferenceErrorPrototype%":["ReferenceError","prototype"],"%RegExpPrototype%":["RegExp","prototype"],"%SetPrototype%":["Set","prototype"],"%SharedArrayBufferPrototype%":["SharedArrayBuffer","prototype"],"%StringPrototype%":["String","prototype"],"%SymbolPrototype%":["Symbol","prototype"],"%SyntaxErrorPrototype%":["SyntaxError","prototype"],"%TypedArrayPrototype%":["TypedArray","prototype"],"%TypeErrorPrototype%":["TypeError","prototype"],"%Uint8ArrayPrototype%":["Uint8Array","prototype"],"%Uint8ClampedArrayPrototype%":["Uint8ClampedArray","prototype"],"%Uint16ArrayPrototype%":["Uint16Array","prototype"],"%Uint32ArrayPrototype%":["Uint32Array","prototype"],"%URIErrorPrototype%":["URIError","prototype"],"%WeakMapPrototype%":["WeakMap","prototype"],"%WeakSetPrototype%":["WeakSet","prototype"]},Ac=To(),Xf=Yf(),xN=Ac.call(kc,Array.prototype.concat),SN=Ac.call(Fx,Array.prototype.splice),$x=Ac.call(kc,String.prototype.replace),Zf=Ac.call(kc,String.prototype.slice),EN=Ac.call(kc,RegExp.prototype.exec),kN=/[^%.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|%$))/g,AN=/\\(\\)?/g,CN=function(e){var r=Zf(e,0,1),n=Zf(e,-1);if(r==="%"&&n!=="%")throw new Io("invalid intrinsic syntax, expected closing `%`");if(n==="%"&&r!=="%")throw new Io("invalid intrinsic syntax, expected opening `%`");var i=[];return $x(e,kN,function(s,a,o,l){i[i.length]=o?$x(l,AN,"$1"):a||s}),i},TN=function(e,r){var n=e,i;if(Xf(Rx,n)&&(i=Rx[n],n="%"+i[0]+"%"),Xf(fa,n)){var s=fa[n];if(s===Ro&&(s=_N(n)),typeof s=="undefined"&&!r)throw new $o("intrinsic "+e+" exists, but is not available. Please file an issue!");return{alias:i,name:n,value:s}}throw new Io("intrinsic "+e+" does not exist!")};Ox.exports=function(e,r){if(typeof e!="string"||e.length===0)throw new $o("intrinsic name must be a non-empty string");if(arguments.length>1&&typeof r!="boolean")throw new $o("\"allowMissing\" argument must be a boolean");if(EN(/^%?[^%]*%?$/,e)===null)throw new Io("`%` may not be present anywhere but at the beginning and end of the intrinsic name");var n=CN(e),i=n.length>0?n[0]:"",s=TN("%"+i+"%",r),a=s.name,o=s.value,l=!1,c=s.alias;c&&(i=c[0],SN(n,xN([0,1],c)));for(var u=1,f=!0;u=n.length){var g=Ec(o,d);f=!!g,f&&"get"in g&&!("originalValue"in g.get)?o=g.get:o=o[d]}else f=Xf(o,d),o=o[d];f&&!l&&(fa[a]=o)}}return o}});var Lt=I((yX,Lx)=>{"use strict";p();var Mx=si(),Dx=zf(),PN=Dx([Mx("%String.prototype.indexOf%")]);Lx.exports=function(e,r){var n=Mx(e,!!r);return typeof n=="function"&&PN(e,".prototype.")>-1?Dx([n]):n}});var Ux=I((_X,Hx)=>{"use strict";p();var Bx=Function.prototype.toString,Fo=typeof Reflect=="object"&&Reflect!==null&&Reflect.apply,rg,Kf;if(typeof Fo=="function"&&typeof Object.defineProperty=="function")try{rg=Object.defineProperty({},"length",{get:function(){throw Kf}}),Kf={},Fo(function(){throw 42},null,rg)}catch(t){t!==Kf&&(Fo=null)}else Fo=null;var RN=/^\s*class\b/,ng=function(e){try{var r=Bx.call(e);return RN.test(r)}catch(n){return!1}},tg=function(e){try{return ng(e)?!1:(Bx.call(e),!0)}catch(r){return!1}},Qf=Object.prototype.toString,$N="[object Object]",IN="[object Function]",FN="[object GeneratorFunction]",ON="[object HTMLAllCollection]",MN="[object HTML document.all class]",DN="[object HTMLCollection]",LN=typeof Symbol=="function"&&!!Symbol.toStringTag,NN=!(0 in[,]),ig=function(){return!1};typeof document=="object"&&(Nx=document.all,Qf.call(Nx)===Qf.call(document.all)&&(ig=function(e){if((NN||!e)&&(typeof e=="undefined"||typeof e=="object"))try{var r=Qf.call(e);return(r===ON||r===MN||r===DN||r===$N)&&e("")==null}catch(n){}return!1}));var Nx;Hx.exports=Fo?function(e){if(ig(e))return!0;if(!e||typeof e!="function"&&typeof e!="object")return!1;try{Fo(e,null,rg)}catch(r){if(r!==Kf)return!1}return!ng(e)&&tg(e)}:function(e){if(ig(e))return!0;if(!e||typeof e!="function"&&typeof e!="object")return!1;if(LN)return tg(e);if(ng(e))return!1;var r=Qf.call(e);return r!==IN&&r!==FN&&!/^\[object HTML/.test(r)?!1:tg(e)}});var qx=I((SX,jx)=>{"use strict";p();var BN=Ux(),HN=Object.prototype.toString,Gx=Object.prototype.hasOwnProperty,UN=function(e,r,n){for(var i=0,s=e.length;i=3&&(i=n),qN(e)?UN(e,r,i):typeof e=="string"?GN(e,r,i):jN(e,r,i)}});var zx=I((kX,Wx)=>{"use strict";p();Wx.exports=["Float16Array","Float32Array","Float64Array","Int8Array","Int16Array","Int32Array","Uint8Array","Uint8ClampedArray","Uint16Array","Uint32Array","BigInt64Array","BigUint64Array"]});var Yx=I((CX,Vx)=>{"use strict";p();var sg=zx(),WN=typeof globalThis=="undefined"?global:globalThis;Vx.exports=function(){for(var e=[],r=0;r{"use strict";p();var Xx=xc(),zN=Hf(),Oo=_r(),Zx=bs();Kx.exports=function(e,r,n){if(!e||typeof e!="object"&&typeof e!="function")throw new Oo("`obj` must be an object or a function`");if(typeof r!="string"&&typeof r!="symbol")throw new Oo("`property` must be a string or a symbol`");if(arguments.length>3&&typeof arguments[3]!="boolean"&&arguments[3]!==null)throw new Oo("`nonEnumerable`, if provided, must be a boolean or null");if(arguments.length>4&&typeof arguments[4]!="boolean"&&arguments[4]!==null)throw new Oo("`nonWritable`, if provided, must be a boolean or null");if(arguments.length>5&&typeof arguments[5]!="boolean"&&arguments[5]!==null)throw new Oo("`nonConfigurable`, if provided, must be a boolean or null");if(arguments.length>6&&typeof arguments[6]!="boolean")throw new Oo("`loose`, if provided, must be a boolean");var i=arguments.length>3?arguments[3]:null,s=arguments.length>4?arguments[4]:null,a=arguments.length>5?arguments[5]:null,o=arguments.length>6?arguments[6]:!1,l=!!Zx&&Zx(e,r);if(Xx)Xx(e,r,{configurable:a===null&&l?l.configurable:!a,enumerable:i===null&&l?l.enumerable:!i,value:n,writable:s===null&&l?l.writable:!s});else if(o||!i&&!s&&!a)e[r]=n;else throw new zN("This environment does not support defining a property as non-configurable, non-writable, or non-enumerable.")}});var td=I(($X,Jx)=>{"use strict";p();var ag=xc(),Qx=function(){return!!ag};Qx.hasArrayLengthDefineBug=function(){if(!ag)return null;try{return ag([],"length",{value:1}).length!==1}catch(e){return!0}};Jx.exports=Qx});var i1=I((FX,n1)=>{"use strict";p();var VN=si(),e1=Jf(),YN=td()(),t1=bs(),r1=_r(),XN=VN("%Math.floor%");n1.exports=function(e,r){if(typeof e!="function")throw new r1("`fn` is not a function");if(typeof r!="number"||r<0||r>4294967295||XN(r)!==r)throw new r1("`length` must be a positive 32-bit integer");var n=arguments.length>2&&!!arguments[2],i=!0,s=!0;if("length"in e&&t1){var a=t1(e,"length");a&&!a.configurable&&(i=!1),a&&!a.writable&&(s=!1)}return(i||s||!n)&&(YN?e1(e,"length",r,!0,!0):e1(e,"length",r)),e}});var a1=I((MX,s1)=>{"use strict";p();var ZN=To(),KN=Wf(),QN=Km();s1.exports=function(){return QN(ZN,KN,arguments)}});var da=I((LX,rd)=>{"use strict";p();var JN=i1(),o1=xc(),eB=zf(),l1=a1();rd.exports=function(e){var r=eB(arguments),n=e.length-(arguments.length-1);return JN(r,1+(n>0?n:0),!0)};o1?o1(rd.exports,"apply",{value:l1}):rd.exports.apply=l1});var _s=I((BX,c1)=>{"use strict";p();var tB=Sc();c1.exports=function(){return tB()&&!!Symbol.toStringTag}});var ug=I((UX,h1)=>{"use strict";p();var sd=qx(),rB=Yx(),u1=da(),lg=Lt(),id=bs(),nd=Vf(),nB=lg("Object.prototype.toString"),d1=_s()(),f1=typeof globalThis=="undefined"?global:globalThis,og=rB(),cg=lg("String.prototype.slice"),iB=lg("Array.prototype.indexOf",!0)||function(e,r){for(var n=0;n-1?r:r!=="Object"?!1:aB(e)}return id?sB(e):null}});var m1=I((jX,p1)=>{"use strict";p();var oB=ug();p1.exports=function(e){return!!oB(e)}});var v1=I((WX,g1)=>{"use strict";p();var lB=_r(),cB=Lt(),uB=cB("TypedArray.prototype.buffer",!0),fB=m1();g1.exports=uB||function(e){if(!fB(e))throw new lB("Not a Typed Array");return e.buffer}});var b1=I((VX,y1)=>{"use strict";p();var In=Lf().Buffer,dB=Nf(),hB=v1(),pB=ArrayBuffer.isView||function(e){try{return hB(e),!0}catch(r){return!1}},mB=typeof Uint8Array!="undefined",w1=typeof ArrayBuffer!="undefined"&&typeof Uint8Array!="undefined",gB=w1&&(In.prototype instanceof Uint8Array||In.TYPED_ARRAY_SUPPORT);y1.exports=function(e,r){if(In.isBuffer(e))return e.constructor&&!("isBuffer"in e)?In.from(e):e;if(typeof e=="string")return In.from(e,r);if(w1&&pB(e)){if(e.byteLength===0)return In.alloc(0);if(gB){var n=In.from(e.buffer,e.byteOffset,e.byteLength);if(n.byteLength===e.byteLength)return n}var i=e instanceof Uint8Array?e:new Uint8Array(e.buffer,e.byteOffset,e.byteLength),s=In.from(i);if(s.length===e.byteLength)return s}if(mB&&e instanceof Uint8Array)return In.from(e);var a=dB(e);if(a)for(var o=0;o255||~~l!==l)throw new RangeError("Array items must be numbers in the range 0-255.")}if(a||In.isBuffer(e)&&e.constructor&&typeof e.constructor.isBuffer=="function"&&e.constructor.isBuffer(e))return In.from(e);throw new TypeError("The \"data\" argument must be a string, an Array, a Buffer, a Uint8Array, or a DataView.")}});var x1=I((XX,_1)=>{"use strict";p();var vB=Lf().Buffer,wB=b1();function od(t,e){this._block=vB.alloc(t),this._finalSize=e,this._blockSize=t,this._len=0}od.prototype.update=function(t,e){t=wB(t,e||"utf8");for(var r=this._block,n=this._blockSize,i=t.length,s=this._len,a=0;a=this._finalSize&&(this._update(this._block),this._block.fill(0));var r=this._len*8;if(r<=4294967295)this._block.writeUInt32BE(r,this._blockSize-4);else{var n=(r&4294967295)>>>0,i=(r-n)/4294967296;this._block.writeUInt32BE(i,this._blockSize-8),this._block.writeUInt32BE(n,this._blockSize-4)}this._update(this._block);var s=this._hash();return t?s.toString(t):s};od.prototype._update=function(){throw new Error("_update must be implemented by subclass")};_1.exports=od});var k1=I((KX,E1)=>{"use strict";p();var yB=__(),S1=x1(),bB=Lf().Buffer,_B=[1518500249,1859775393,-1894007588,-899497514],xB=new Array(80);function Cc(){this.init(),this._w=xB,S1.call(this,64,56)}yB(Cc,S1);Cc.prototype.init=function(){return this._a=1732584193,this._b=4023233417,this._c=2562383102,this._d=271733878,this._e=3285377520,this};function SB(t){return t<<1|t>>>31}function EB(t){return t<<5|t>>>27}function kB(t){return t<<30|t>>>2}function AB(t,e,r,n){return t===0?e&r|~e&n:t===2?e&r|e&n|r&n:e^r^n}Cc.prototype._update=function(t){for(var e=this._w,r=this._a|0,n=this._b|0,i=this._c|0,s=this._d|0,a=this._e|0,o=0;o<16;++o)e[o]=t.readInt32BE(o*4);for(;o<80;++o)e[o]=SB(e[o-3]^e[o-8]^e[o-14]^e[o-16]);for(var l=0;l<80;++l){var c=~~(l/20),u=EB(r)+AB(c,n,i,s)+a+e[l]+_B[c]|0;a=s,s=i,i=kB(n),n=r,r=u}this._a=r+this._a|0,this._b=n+this._b|0,this._c=i+this._c|0,this._d=s+this._d|0,this._e=a+this._e|0};Cc.prototype._hash=function(){var t=bB.allocUnsafe(20);return t.writeInt32BE(this._a|0,0),t.writeInt32BE(this._b|0,4),t.writeInt32BE(this._c|0,8),t.writeInt32BE(this._d|0,12),t.writeInt32BE(this._e|0,16),t};E1.exports=Cc});var C1=I(fg=>{p();var A1;(function(t){typeof DO_NOT_EXPORT_CRC=="undefined"?typeof fg=="object"?t(fg):typeof define=="function"&&define.amd?define(function(){var e={};return t(e),e}):t(A1={}):t(A1={})})(function(t){t.version="1.2.2";function e(){for(var y=0,S=new Array(256),_=0;_!=256;++_)y=_,y=y&1?-306674912^y>>>1:y>>>1,y=y&1?-306674912^y>>>1:y>>>1,y=y&1?-306674912^y>>>1:y>>>1,y=y&1?-306674912^y>>>1:y>>>1,y=y&1?-306674912^y>>>1:y>>>1,y=y&1?-306674912^y>>>1:y>>>1,y=y&1?-306674912^y>>>1:y>>>1,y=y&1?-306674912^y>>>1:y>>>1,S[_]=y;return typeof Int32Array!="undefined"?new Int32Array(S):S}var r=e();function n(y){var S=0,_=0,C=0,P=typeof Int32Array!="undefined"?new Int32Array(4096):new Array(4096);for(C=0;C!=256;++C)P[C]=y[C];for(C=0;C!=256;++C)for(_=y[C],S=256+C;S<4096;S+=256)_=P[S]=_>>>8^y[_&255];var N=[];for(C=1;C!=16;++C)N[C-1]=typeof Int32Array!="undefined"?P.subarray(C*256,C*256+256):P.slice(C*256,C*256+256);return N}var i=n(r),s=i[0],a=i[1],o=i[2],l=i[3],c=i[4],u=i[5],f=i[6],d=i[7],h=i[8],m=i[9],g=i[10],v=i[11],w=i[12],b=i[13],k=i[14];function x(y,S){for(var _=S^-1,C=0,P=y.length;C>>8^r[(_^y.charCodeAt(C++))&255];return~_}function E(y,S){for(var _=S^-1,C=y.length-15,P=0;P>8&255]^w[y[P++]^_>>16&255]^v[y[P++]^_>>>24]^g[y[P++]]^m[y[P++]]^h[y[P++]]^d[y[P++]]^f[y[P++]]^u[y[P++]]^c[y[P++]]^l[y[P++]]^o[y[P++]]^a[y[P++]]^s[y[P++]]^r[y[P++]];for(C+=15;P>>8^r[(_^y[P++])&255];return~_}function A(y,S){for(var _=S^-1,C=0,P=y.length,N=0,B=0;C>>8^r[(_^N)&255]:N<2048?(_=_>>>8^r[(_^(192|N>>6&31))&255],_=_>>>8^r[(_^(128|N&63))&255]):N>=55296&&N<57344?(N=(N&1023)+64,B=y.charCodeAt(C++)&1023,_=_>>>8^r[(_^(240|N>>8&7))&255],_=_>>>8^r[(_^(128|N>>2&63))&255],_=_>>>8^r[(_^(128|B>>6&15|(N&3)<<4))&255],_=_>>>8^r[(_^(128|B&63))&255]):(_=_>>>8^r[(_^(224|N>>12&15))&255],_=_>>>8^r[(_^(128|N>>6&63))&255],_=_>>>8^r[(_^(128|N&63))&255]);return~_}t.table=r,t.bstr=x,t.buf=E,t.str=A})});var Hi=I(cr=>{"use strict";p();var CB=typeof Uint8Array!="undefined"&&typeof Uint16Array!="undefined"&&typeof Int32Array!="undefined";function TB(t,e){return Object.prototype.hasOwnProperty.call(t,e)}cr.assign=function(t){for(var e=Array.prototype.slice.call(arguments,1);e.length;){var r=e.shift();if(r){if(typeof r!="object")throw new TypeError(r+"must be non-object");for(var n in r)TB(r,n)&&(t[n]=r[n])}}return t};cr.shrinkBuf=function(t,e){return t.length===e?t:t.subarray?t.subarray(0,e):(t.length=e,t)};var PB={arraySet:function(t,e,r,n,i){if(e.subarray&&t.subarray){t.set(e.subarray(r,r+n),i);return}for(var s=0;s{"use strict";p();var $B=Hi(),IB=4,T1=0,P1=1,FB=2;function Do(t){for(var e=t.length;--e>=0;)t[e]=0}var OB=0,M1=1,MB=2,DB=3,LB=258,wg=29,Fc=256,Pc=Fc+1+wg,Mo=30,yg=19,D1=2*Pc+1,ha=15,dg=16,NB=7,bg=256,L1=16,N1=17,B1=18,gg=[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],ld=[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],BB=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,3,7],H1=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15],HB=512,Ui=new Array((Pc+2)*2);Do(Ui);var Tc=new Array(Mo*2);Do(Tc);var Rc=new Array(HB);Do(Rc);var $c=new Array(LB-DB+1);Do($c);var _g=new Array(wg);Do(_g);var cd=new Array(Mo);Do(cd);function hg(t,e,r,n,i){this.static_tree=t,this.extra_bits=e,this.extra_base=r,this.elems=n,this.max_length=i,this.has_stree=t&&t.length}var U1,G1,j1;function pg(t,e){this.dyn_tree=t,this.max_code=0,this.stat_desc=e}function q1(t){return t<256?Rc[t]:Rc[256+(t>>>7)]}function Ic(t,e){t.pending_buf[t.pending++]=e&255,t.pending_buf[t.pending++]=e>>>8&255}function xr(t,e,r){t.bi_valid>dg-r?(t.bi_buf|=e<>dg-t.bi_valid,t.bi_valid+=r-dg):(t.bi_buf|=e<>>=1,r<<=1;while(--e>0);return r>>>1}function UB(t){t.bi_valid===16?(Ic(t,t.bi_buf),t.bi_buf=0,t.bi_valid=0):t.bi_valid>=8&&(t.pending_buf[t.pending++]=t.bi_buf&255,t.bi_buf>>=8,t.bi_valid-=8)}function GB(t,e){var r=e.dyn_tree,n=e.max_code,i=e.stat_desc.static_tree,s=e.stat_desc.has_stree,a=e.stat_desc.extra_bits,o=e.stat_desc.extra_base,l=e.stat_desc.max_length,c,u,f,d,h,m,g=0;for(d=0;d<=ha;d++)t.bl_count[d]=0;for(r[t.heap[t.heap_max]*2+1]=0,c=t.heap_max+1;cl&&(d=l,g++),r[u*2+1]=d,!(u>n)&&(t.bl_count[d]++,h=0,u>=o&&(h=a[u-o]),m=r[u*2],t.opt_len+=m*(d+h),s&&(t.static_len+=m*(i[u*2+1]+h)));if(g!==0){do{for(d=l-1;t.bl_count[d]===0;)d--;t.bl_count[d]--,t.bl_count[d+1]+=2,t.bl_count[l]--,g-=2}while(g>0);for(d=l;d!==0;d--)for(u=t.bl_count[d];u!==0;)f=t.heap[--c],!(f>n)&&(r[f*2+1]!==d&&(t.opt_len+=(d-r[f*2+1])*r[f*2],r[f*2+1]=d),u--)}}function z1(t,e,r){var n=new Array(ha+1),i=0,s,a;for(s=1;s<=ha;s++)n[s]=i=i+r[s-1]<<1;for(a=0;a<=e;a++){var o=t[a*2+1];o!==0&&(t[a*2]=W1(n[o]++,o))}}function jB(){var t,e,r,n,i,s=new Array(ha+1);for(r=0,n=0;n>=7;n8?Ic(t,t.bi_buf):t.bi_valid>0&&(t.pending_buf[t.pending++]=t.bi_buf),t.bi_buf=0,t.bi_valid=0}function qB(t,e,r,n){Y1(t),n&&(Ic(t,r),Ic(t,~r)),$B.arraySet(t.pending_buf,t.window,e,r,t.pending),t.pending+=r}function R1(t,e,r,n){var i=e*2,s=r*2;return t[i]>1;a>=1;a--)mg(t,r,a);c=s;do a=t.heap[1],t.heap[1]=t.heap[t.heap_len--],mg(t,r,1),o=t.heap[1],t.heap[--t.heap_max]=a,t.heap[--t.heap_max]=o,r[c*2]=r[a*2]+r[o*2],t.depth[c]=(t.depth[a]>=t.depth[o]?t.depth[a]:t.depth[o])+1,r[a*2+1]=r[o*2+1]=c,t.heap[1]=c++,mg(t,r,1);while(t.heap_len>=2);t.heap[--t.heap_max]=t.heap[1],GB(t,e),z1(r,l,t.bl_count)}function I1(t,e,r){var n,i=-1,s,a=e[0*2+1],o=0,l=7,c=4;for(a===0&&(l=138,c=3),e[(r+1)*2+1]=65535,n=0;n<=r;n++)s=a,a=e[(n+1)*2+1],!(++o=3&&t.bl_tree[H1[e]*2+1]===0;e--);return t.opt_len+=3*(e+1)+5+5+4,e}function zB(t,e,r,n){var i;for(xr(t,e-257,5),xr(t,r-1,5),xr(t,n-4,4),i=0;i>>=1)if(e&1&&t.dyn_ltree[r*2]!==0)return T1;if(t.dyn_ltree[9*2]!==0||t.dyn_ltree[10*2]!==0||t.dyn_ltree[13*2]!==0)return P1;for(r=32;r0?(t.strm.data_type===FB&&(t.strm.data_type=VB(t)),vg(t,t.l_desc),vg(t,t.d_desc),a=WB(t),i=t.opt_len+3+7>>>3,s=t.static_len+3+7>>>3,s<=i&&(i=s)):i=s=r+5,r+4<=i&&e!==-1?X1(t,e,r,n):t.strategy===IB||s===i?(xr(t,(M1<<1)+(n?1:0),3),$1(t,Ui,Tc)):(xr(t,(MB<<1)+(n?1:0),3),zB(t,t.l_desc.max_code+1,t.d_desc.max_code+1,a+1),$1(t,t.dyn_ltree,t.dyn_dtree)),V1(t),n&&Y1(t)}function KB(t,e,r){return t.pending_buf[t.d_buf+t.last_lit*2]=e>>>8&255,t.pending_buf[t.d_buf+t.last_lit*2+1]=e&255,t.pending_buf[t.l_buf+t.last_lit]=r&255,t.last_lit++,e===0?t.dyn_ltree[r*2]++:(t.matches++,e--,t.dyn_ltree[($c[r]+Fc+1)*2]++,t.dyn_dtree[q1(e)*2]++),t.last_lit===t.lit_bufsize-1}Lo._tr_init=YB;Lo._tr_stored_block=X1;Lo._tr_flush_block=ZB;Lo._tr_tally=KB;Lo._tr_align=XB});var xg=I((sZ,K1)=>{"use strict";p();function QB(t,e,r,n){for(var i=t&65535|0,s=t>>>16&65535|0,a=0;r!==0;){a=r>2e3?2e3:r,r-=a;do i=i+e[n++]|0,s=s+i|0;while(--a);i%=65521,s%=65521}return i|s<<16|0}K1.exports=QB});var Sg=I((oZ,Q1)=>{"use strict";p();function JB(){for(var t,e=[],r=0;r<256;r++){t=r;for(var n=0;n<8;n++)t=t&1?3988292384^t>>>1:t>>>1;e[r]=t}return e}var eH=JB();function tH(t,e,r,n){var i=eH,s=n+r;t^=-1;for(var a=n;a>>8^i[(t^e[a])&255];return t^-1}Q1.exports=tH});var ud=I((cZ,J1)=>{"use strict";p();J1.exports={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"}});var lS=I(ci=>{"use strict";p();var ur=Hi(),dn=Z1(),nS=xg(),xs=Sg(),rH=ud(),va=0,nH=1,iH=3,Cs=4,eS=5,li=0,tS=1,hn=-2,sH=-3,Eg=-5,aH=-1,oH=1,fd=2,lH=3,cH=4,uH=0,fH=2,md=8,dH=9,hH=15,pH=8,mH=29,gH=256,Ag=gH+1+mH,vH=30,wH=19,yH=2*Ag+1,bH=15,Te=3,ks=258,Fn=ks+Te+1,_H=32,gd=42,Cg=69,dd=73,hd=91,pd=103,pa=113,Mc=666,Tt=1,Dc=2,ma=3,Ho=4,xH=3;function As(t,e){return t.msg=rH[e],e}function rS(t){return(t<<1)-(t>4?9:0)}function Es(t){for(var e=t.length;--e>=0;)t[e]=0}function Ss(t){var e=t.state,r=e.pending;r>t.avail_out&&(r=t.avail_out),r!==0&&(ur.arraySet(t.output,e.pending_buf,e.pending_out,r,t.next_out),t.next_out+=r,e.pending_out+=r,t.total_out+=r,t.avail_out-=r,e.pending-=r,e.pending===0&&(e.pending_out=0))}function Gt(t,e){dn._tr_flush_block(t,t.block_start>=0?t.block_start:-1,t.strstart-t.block_start,e),t.block_start=t.strstart,Ss(t.strm)}function Fe(t,e){t.pending_buf[t.pending++]=e}function Oc(t,e){t.pending_buf[t.pending++]=e>>>8&255,t.pending_buf[t.pending++]=e&255}function SH(t,e,r,n){var i=t.avail_in;return i>n&&(i=n),i===0?0:(t.avail_in-=i,ur.arraySet(e,t.input,t.next_in,i,r),t.state.wrap===1?t.adler=nS(t.adler,e,i,r):t.state.wrap===2&&(t.adler=xs(t.adler,e,i,r)),t.next_in+=i,t.total_in+=i,i)}function iS(t,e){var r=t.max_chain_length,n=t.strstart,i,s,a=t.prev_length,o=t.nice_match,l=t.strstart>t.w_size-Fn?t.strstart-(t.w_size-Fn):0,c=t.window,u=t.w_mask,f=t.prev,d=t.strstart+ks,h=c[n+a-1],m=c[n+a];t.prev_length>=t.good_match&&(r>>=2),o>t.lookahead&&(o=t.lookahead);do if(i=e,!(c[i+a]!==m||c[i+a-1]!==h||c[i]!==c[n]||c[++i]!==c[n+1])){n+=2,i++;do;while(c[++n]===c[++i]&&c[++n]===c[++i]&&c[++n]===c[++i]&&c[++n]===c[++i]&&c[++n]===c[++i]&&c[++n]===c[++i]&&c[++n]===c[++i]&&c[++n]===c[++i]&&na){if(t.match_start=e,a=s,s>=o)break;h=c[n+a-1],m=c[n+a]}}while((e=f[e&u])>l&&--r!==0);return a<=t.lookahead?a:t.lookahead}function ga(t){var e=t.w_size,r,n,i,s,a;do{if(s=t.window_size-t.lookahead-t.strstart,t.strstart>=e+(e-Fn)){ur.arraySet(t.window,t.window,e,e,0),t.match_start-=e,t.strstart-=e,t.block_start-=e,n=t.hash_size,r=n;do i=t.head[--r],t.head[r]=i>=e?i-e:0;while(--n);n=e,r=n;do i=t.prev[--r],t.prev[r]=i>=e?i-e:0;while(--n);s+=e}if(t.strm.avail_in===0)break;if(n=SH(t.strm,t.window,t.strstart+t.lookahead,s),t.lookahead+=n,t.lookahead+t.insert>=Te)for(a=t.strstart-t.insert,t.ins_h=t.window[a],t.ins_h=(t.ins_h<t.pending_buf_size-5&&(r=t.pending_buf_size-5);;){if(t.lookahead<=1){if(ga(t),t.lookahead===0&&e===va)return Tt;if(t.lookahead===0)break}t.strstart+=t.lookahead,t.lookahead=0;var n=t.block_start+r;if((t.strstart===0||t.strstart>=n)&&(t.lookahead=t.strstart-n,t.strstart=n,Gt(t,!1),t.strm.avail_out===0)||t.strstart-t.block_start>=t.w_size-Fn&&(Gt(t,!1),t.strm.avail_out===0))return Tt}return t.insert=0,e===Cs?(Gt(t,!0),t.strm.avail_out===0?ma:Ho):(t.strstart>t.block_start&&(Gt(t,!1),t.strm.avail_out===0),Tt)}function kg(t,e){for(var r,n;;){if(t.lookahead=Te&&(t.ins_h=(t.ins_h<=Te){if(n=dn._tr_tally(t,t.strstart-t.match_start,t.match_length-Te),t.lookahead-=t.match_length,t.match_length<=t.max_lazy_match&&t.lookahead>=Te){t.match_length--;do t.strstart++,t.ins_h=(t.ins_h<=Te&&(t.ins_h=(t.ins_h<4096)&&(t.match_length=Te-1)),t.prev_length>=Te&&t.match_length<=t.prev_length){i=t.strstart+t.lookahead-Te,n=dn._tr_tally(t,t.strstart-1-t.prev_match,t.prev_length-Te),t.lookahead-=t.prev_length-1,t.prev_length-=2;do++t.strstart<=i&&(t.ins_h=(t.ins_h<=Te&&t.strstart>0&&(i=t.strstart-1,n=a[i],n===a[++i]&&n===a[++i]&&n===a[++i])){s=t.strstart+ks;do;while(n===a[++i]&&n===a[++i]&&n===a[++i]&&n===a[++i]&&n===a[++i]&&n===a[++i]&&n===a[++i]&&n===a[++i]&&it.lookahead&&(t.match_length=t.lookahead)}if(t.match_length>=Te?(r=dn._tr_tally(t,1,t.match_length-Te),t.lookahead-=t.match_length,t.strstart+=t.match_length,t.match_length=0):(r=dn._tr_tally(t,0,t.window[t.strstart]),t.lookahead--,t.strstart++),r&&(Gt(t,!1),t.strm.avail_out===0))return Tt}return t.insert=0,e===Cs?(Gt(t,!0),t.strm.avail_out===0?ma:Ho):t.last_lit&&(Gt(t,!1),t.strm.avail_out===0)?Tt:Dc}function AH(t,e){for(var r;;){if(t.lookahead===0&&(ga(t),t.lookahead===0)){if(e===va)return Tt;break}if(t.match_length=0,r=dn._tr_tally(t,0,t.window[t.strstart]),t.lookahead--,t.strstart++,r&&(Gt(t,!1),t.strm.avail_out===0))return Tt}return t.insert=0,e===Cs?(Gt(t,!0),t.strm.avail_out===0?ma:Ho):t.last_lit&&(Gt(t,!1),t.strm.avail_out===0)?Tt:Dc}function oi(t,e,r,n,i){this.good_length=t,this.max_lazy=e,this.nice_length=r,this.max_chain=n,this.func=i}var Bo;Bo=[new oi(0,0,0,0,EH),new oi(4,4,8,4,kg),new oi(4,5,16,8,kg),new oi(4,6,32,32,kg),new oi(4,4,16,16,No),new oi(8,16,32,32,No),new oi(8,16,128,128,No),new oi(8,32,128,256,No),new oi(32,128,258,1024,No),new oi(32,258,258,4096,No)];function CH(t){t.window_size=2*t.w_size,Es(t.head),t.max_lazy_match=Bo[t.level].max_lazy,t.good_match=Bo[t.level].good_length,t.nice_match=Bo[t.level].nice_length,t.max_chain_length=Bo[t.level].max_chain,t.strstart=0,t.block_start=0,t.lookahead=0,t.insert=0,t.match_length=t.prev_length=Te-1,t.match_available=0,t.ins_h=0}function TH(){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=md,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 ur.Buf16(yH*2),this.dyn_dtree=new ur.Buf16((2*vH+1)*2),this.bl_tree=new ur.Buf16((2*wH+1)*2),Es(this.dyn_ltree),Es(this.dyn_dtree),Es(this.bl_tree),this.l_desc=null,this.d_desc=null,this.bl_desc=null,this.bl_count=new ur.Buf16(bH+1),this.heap=new ur.Buf16(2*Ag+1),Es(this.heap),this.heap_len=0,this.heap_max=0,this.depth=new ur.Buf16(2*Ag+1),Es(this.depth),this.l_buf=0,this.lit_bufsize=0,this.last_lit=0,this.d_buf=0,this.opt_len=0,this.static_len=0,this.matches=0,this.insert=0,this.bi_buf=0,this.bi_valid=0}function sS(t){var e;return!t||!t.state?As(t,hn):(t.total_in=t.total_out=0,t.data_type=fH,e=t.state,e.pending=0,e.pending_out=0,e.wrap<0&&(e.wrap=-e.wrap),e.status=e.wrap?gd:pa,t.adler=e.wrap===2?0:1,e.last_flush=va,dn._tr_init(e),li)}function aS(t){var e=sS(t);return e===li&&CH(t.state),e}function PH(t,e){return!t||!t.state||t.state.wrap!==2?hn:(t.state.gzhead=e,li)}function oS(t,e,r,n,i,s){if(!t)return hn;var a=1;if(e===aH&&(e=6),n<0?(a=0,n=-n):n>15&&(a=2,n-=16),i<1||i>dH||r!==md||n<8||n>15||e<0||e>9||s<0||s>cH)return As(t,hn);n===8&&(n=9);var o=new TH;return t.state=o,o.strm=t,o.wrap=a,o.gzhead=null,o.w_bits=n,o.w_size=1<eS||e<0)return t?As(t,hn):hn;if(n=t.state,!t.output||!t.input&&t.avail_in!==0||n.status===Mc&&e!==Cs)return As(t,t.avail_out===0?Eg:hn);if(n.strm=t,r=n.last_flush,n.last_flush=e,n.status===gd)if(n.wrap===2)t.adler=0,Fe(n,31),Fe(n,139),Fe(n,8),n.gzhead?(Fe(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)),Fe(n,n.gzhead.time&255),Fe(n,n.gzhead.time>>8&255),Fe(n,n.gzhead.time>>16&255),Fe(n,n.gzhead.time>>24&255),Fe(n,n.level===9?2:n.strategy>=fd||n.level<2?4:0),Fe(n,n.gzhead.os&255),n.gzhead.extra&&n.gzhead.extra.length&&(Fe(n,n.gzhead.extra.length&255),Fe(n,n.gzhead.extra.length>>8&255)),n.gzhead.hcrc&&(t.adler=xs(t.adler,n.pending_buf,n.pending,0)),n.gzindex=0,n.status=Cg):(Fe(n,0),Fe(n,0),Fe(n,0),Fe(n,0),Fe(n,0),Fe(n,n.level===9?2:n.strategy>=fd||n.level<2?4:0),Fe(n,xH),n.status=pa);else{var a=md+(n.w_bits-8<<4)<<8,o=-1;n.strategy>=fd||n.level<2?o=0:n.level<6?o=1:n.level===6?o=2:o=3,a|=o<<6,n.strstart!==0&&(a|=_H),a+=31-a%31,n.status=pa,Oc(n,a),n.strstart!==0&&(Oc(n,t.adler>>>16),Oc(n,t.adler&65535)),t.adler=1}if(n.status===Cg)if(n.gzhead.extra){for(i=n.pending;n.gzindex<(n.gzhead.extra.length&65535)&&!(n.pending===n.pending_buf_size&&(n.gzhead.hcrc&&n.pending>i&&(t.adler=xs(t.adler,n.pending_buf,n.pending-i,i)),Ss(t),i=n.pending,n.pending===n.pending_buf_size));)Fe(n,n.gzhead.extra[n.gzindex]&255),n.gzindex++;n.gzhead.hcrc&&n.pending>i&&(t.adler=xs(t.adler,n.pending_buf,n.pending-i,i)),n.gzindex===n.gzhead.extra.length&&(n.gzindex=0,n.status=dd)}else n.status=dd;if(n.status===dd)if(n.gzhead.name){i=n.pending;do{if(n.pending===n.pending_buf_size&&(n.gzhead.hcrc&&n.pending>i&&(t.adler=xs(t.adler,n.pending_buf,n.pending-i,i)),Ss(t),i=n.pending,n.pending===n.pending_buf_size)){s=1;break}n.gzindexi&&(t.adler=xs(t.adler,n.pending_buf,n.pending-i,i)),s===0&&(n.gzindex=0,n.status=hd)}else n.status=hd;if(n.status===hd)if(n.gzhead.comment){i=n.pending;do{if(n.pending===n.pending_buf_size&&(n.gzhead.hcrc&&n.pending>i&&(t.adler=xs(t.adler,n.pending_buf,n.pending-i,i)),Ss(t),i=n.pending,n.pending===n.pending_buf_size)){s=1;break}n.gzindexi&&(t.adler=xs(t.adler,n.pending_buf,n.pending-i,i)),s===0&&(n.status=pd)}else n.status=pd;if(n.status===pd&&(n.gzhead.hcrc?(n.pending+2>n.pending_buf_size&&Ss(t),n.pending+2<=n.pending_buf_size&&(Fe(n,t.adler&255),Fe(n,t.adler>>8&255),t.adler=0,n.status=pa)):n.status=pa),n.pending!==0){if(Ss(t),t.avail_out===0)return n.last_flush=-1,li}else if(t.avail_in===0&&rS(e)<=rS(r)&&e!==Cs)return As(t,Eg);if(n.status===Mc&&t.avail_in!==0)return As(t,Eg);if(t.avail_in!==0||n.lookahead!==0||e!==va&&n.status!==Mc){var l=n.strategy===fd?AH(n,e):n.strategy===lH?kH(n,e):Bo[n.level].func(n,e);if((l===ma||l===Ho)&&(n.status=Mc),l===Tt||l===ma)return t.avail_out===0&&(n.last_flush=-1),li;if(l===Dc&&(e===nH?dn._tr_align(n):e!==eS&&(dn._tr_stored_block(n,0,0,!1),e===iH&&(Es(n.head),n.lookahead===0&&(n.strstart=0,n.block_start=0,n.insert=0))),Ss(t),t.avail_out===0))return n.last_flush=-1,li}return e!==Cs?li:n.wrap<=0?tS:(n.wrap===2?(Fe(n,t.adler&255),Fe(n,t.adler>>8&255),Fe(n,t.adler>>16&255),Fe(n,t.adler>>24&255),Fe(n,t.total_in&255),Fe(n,t.total_in>>8&255),Fe(n,t.total_in>>16&255),Fe(n,t.total_in>>24&255)):(Oc(n,t.adler>>>16),Oc(n,t.adler&65535)),Ss(t),n.wrap>0&&(n.wrap=-n.wrap),n.pending!==0?li:tS)}function IH(t){var e;return!t||!t.state?hn:(e=t.state.status,e!==gd&&e!==Cg&&e!==dd&&e!==hd&&e!==pd&&e!==pa&&e!==Mc?As(t,hn):(t.state=null,e===pa?As(t,sH):li))}function FH(t,e){var r=e.length,n,i,s,a,o,l,c,u;if(!t||!t.state||(n=t.state,a=n.wrap,a===2||a===1&&n.status!==gd||n.lookahead))return hn;for(a===1&&(t.adler=nS(t.adler,e,r,0)),n.wrap=0,r>=n.w_size&&(a===0&&(Es(n.head),n.strstart=0,n.block_start=0,n.insert=0),u=new ur.Buf8(n.w_size),ur.arraySet(u,e,r-n.w_size,n.w_size,0),e=u,r=n.w_size),o=t.avail_in,l=t.next_in,c=t.input,t.avail_in=r,t.next_in=0,t.input=e,ga(n);n.lookahead>=Te;){i=n.strstart,s=n.lookahead-(Te-1);do n.ins_h=(n.ins_h<{"use strict";p();var vd=Hi(),cS=!0,uS=!0;try{String.fromCharCode.apply(null,[0])}catch(t){cS=!1}try{String.fromCharCode.apply(null,new Uint8Array(1))}catch(t){uS=!1}var Lc=new vd.Buf8(256);for(Gi=0;Gi<256;Gi++)Lc[Gi]=Gi>=252?6:Gi>=248?5:Gi>=240?4:Gi>=224?3:Gi>=192?2:1;var Gi;Lc[254]=Lc[254]=1;Uo.string2buf=function(t){var e,r,n,i,s,a=t.length,o=0;for(i=0;i>>6,e[s++]=128|r&63):r<65536?(e[s++]=224|r>>>12,e[s++]=128|r>>>6&63,e[s++]=128|r&63):(e[s++]=240|r>>>18,e[s++]=128|r>>>12&63,e[s++]=128|r>>>6&63,e[s++]=128|r&63);return e};function fS(t,e){if(e<65534&&(t.subarray&&uS||!t.subarray&&cS))return String.fromCharCode.apply(null,vd.shrinkBuf(t,e));for(var r="",n=0;n4){o[n++]=65533,r+=s-1;continue}for(i&=s===2?31:s===3?15:7;s>1&&r1){o[n++]=65533;continue}i<65536?o[n++]=i:(i-=65536,o[n++]=55296|i>>10&1023,o[n++]=56320|i&1023)}return fS(o,n)};Uo.utf8border=function(t,e){var r;for(e=e||t.length,e>t.length&&(e=t.length),r=e-1;r>=0&&(t[r]&192)===128;)r--;return r<0||r===0?e:r+Lc[t[r]]>e?r:e}});var Pg=I((mZ,dS)=>{"use strict";p();function OH(){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}dS.exports=OH});var gS=I(Hc=>{"use strict";p();var Nc=lS(),Bc=Hi(),$g=Tg(),Ig=ud(),MH=Pg(),mS=Object.prototype.toString,DH=0,Rg=4,Go=0,hS=1,pS=2,LH=-1,NH=0,BH=8;function wa(t){if(!(this instanceof wa))return new wa(t);this.options=Bc.assign({level:LH,method:BH,chunkSize:16384,windowBits:15,memLevel:8,strategy:NH,to:""},t||{});var e=this.options;e.raw&&e.windowBits>0?e.windowBits=-e.windowBits:e.gzip&&e.windowBits>0&&e.windowBits<16&&(e.windowBits+=16),this.err=0,this.msg="",this.ended=!1,this.chunks=[],this.strm=new MH,this.strm.avail_out=0;var r=Nc.deflateInit2(this.strm,e.level,e.method,e.windowBits,e.memLevel,e.strategy);if(r!==Go)throw new Error(Ig[r]);if(e.header&&Nc.deflateSetHeader(this.strm,e.header),e.dictionary){var n;if(typeof e.dictionary=="string"?n=$g.string2buf(e.dictionary):mS.call(e.dictionary)==="[object ArrayBuffer]"?n=new Uint8Array(e.dictionary):n=e.dictionary,r=Nc.deflateSetDictionary(this.strm,n),r!==Go)throw new Error(Ig[r]);this._dict_set=!0}}wa.prototype.push=function(t,e){var r=this.strm,n=this.options.chunkSize,i,s;if(this.ended)return!1;s=e===~~e?e:e===!0?Rg:DH,typeof t=="string"?r.input=$g.string2buf(t):mS.call(t)==="[object ArrayBuffer]"?r.input=new Uint8Array(t):r.input=t,r.next_in=0,r.avail_in=r.input.length;do{if(r.avail_out===0&&(r.output=new Bc.Buf8(n),r.next_out=0,r.avail_out=n),i=Nc.deflate(r,s),i!==hS&&i!==Go)return this.onEnd(i),this.ended=!0,!1;(r.avail_out===0||r.avail_in===0&&(s===Rg||s===pS))&&(this.options.to==="string"?this.onData($g.buf2binstring(Bc.shrinkBuf(r.output,r.next_out))):this.onData(Bc.shrinkBuf(r.output,r.next_out)))}while((r.avail_in>0||r.avail_out===0)&&i!==hS);return s===Rg?(i=Nc.deflateEnd(this.strm),this.onEnd(i),this.ended=!0,i===Go):(s===pS&&(this.onEnd(Go),r.avail_out=0),!0)};wa.prototype.onData=function(t){this.chunks.push(t)};wa.prototype.onEnd=function(t){t===Go&&(this.options.to==="string"?this.result=this.chunks.join(""):this.result=Bc.flattenChunks(this.chunks)),this.chunks=[],this.err=t,this.msg=this.strm.msg};function Fg(t,e){var r=new wa(e);if(r.push(t,!0),r.err)throw r.msg||Ig[r.err];return r.result}function HH(t,e){return e=e||{},e.raw=!0,Fg(t,e)}function UH(t,e){return e=e||{},e.gzip=!0,Fg(t,e)}Hc.Deflate=wa;Hc.deflate=Fg;Hc.deflateRaw=HH;Hc.gzip=UH});var wS=I((yZ,vS)=>{"use strict";p();var wd=30,GH=12;vS.exports=function(e,r){var n,i,s,a,o,l,c,u,f,d,h,m,g,v,w,b,k,x,E,A,y,S,_,C,P;n=e.state,i=e.next_in,C=e.input,s=i+(e.avail_in-5),a=e.next_out,P=e.output,o=a-(r-e.avail_out),l=a+(e.avail_out-257),c=n.dmax,u=n.wsize,f=n.whave,d=n.wnext,h=n.window,m=n.hold,g=n.bits,v=n.lencode,w=n.distcode,b=(1<>>24,m>>>=E,g-=E,E=x>>>16&255,E===0)P[a++]=x&65535;else if(E&16){A=x&65535,E&=15,E&&(g>>=E,g-=E),g<15&&(m+=C[i++]<>>24,m>>>=E,g-=E,E=x>>>16&255,E&16){if(y=x&65535,E&=15,gc){e.msg="invalid distance too far back",n.mode=wd;break e}if(m>>>=E,g-=E,E=a-o,y>E){if(E=y-E,E>f&&n.sane){e.msg="invalid distance too far back",n.mode=wd;break e}if(S=0,_=h,d===0){if(S+=u-E,E2;)P[a++]=_[S++],P[a++]=_[S++],P[a++]=_[S++],A-=3;A&&(P[a++]=_[S++],A>1&&(P[a++]=_[S++]))}else{S=a-y;do P[a++]=P[S++],P[a++]=P[S++],P[a++]=P[S++],A-=3;while(A>2);A&&(P[a++]=P[S++],A>1&&(P[a++]=P[S++]))}}else if(E&64){e.msg="invalid distance code",n.mode=wd;break e}else{x=w[(x&65535)+(m&(1<>3,i-=A,g-=A<<3,m&=(1<{"use strict";p();var yS=Hi(),jo=15,bS=852,_S=592,xS=0,Og=1,SS=2,jH=[3,4,5,6,7,8,9,10,11,13,15,17,19,23,27,31,35,43,51,59,67,83,99,115,131,163,195,227,258,0,0],qH=[16,16,16,16,16,16,16,16,17,17,17,17,18,18,18,18,19,19,19,19,20,20,20,20,21,21,21,21,16,72,78],WH=[1,2,3,4,5,7,9,13,17,25,33,49,65,97,129,193,257,385,513,769,1025,1537,2049,3073,4097,6145,8193,12289,16385,24577,0,0],zH=[16,16,16,16,17,17,18,18,19,19,20,20,21,21,22,22,23,23,24,24,25,25,26,26,27,27,28,28,29,29,64,64];ES.exports=function(e,r,n,i,s,a,o,l){var c=l.bits,u=0,f=0,d=0,h=0,m=0,g=0,v=0,w=0,b=0,k=0,x,E,A,y,S,_=null,C=0,P,N=new yS.Buf16(jo+1),B=new yS.Buf16(jo+1),H=null,ce=0,Pe,ve,ie;for(u=0;u<=jo;u++)N[u]=0;for(f=0;f=1&&N[h]===0;h--);if(m>h&&(m=h),h===0)return s[a++]=1<<24|64<<16|0,s[a++]=1<<24|64<<16|0,l.bits=1,0;for(d=1;d0&&(e===xS||h!==1))return-1;for(B[1]=0,u=1;ubS||e===SS&&b>_S)return 1;for(;;){Pe=u-v,o[f]P?(ve=H[ce+o[f]],ie=_[C+o[f]]):(ve=96,ie=0),x=1<>v)+E]=Pe<<24|ve<<16|ie|0;while(E!==0);for(x=1<>=1;if(x!==0?(k&=x-1,k+=x):k=0,f++,--N[u]===0){if(u===h)break;u=r[n+o[f]]}if(u>m&&(k&y)!==A){for(v===0&&(v=m),S+=d,g=u-v,w=1<bS||e===SS&&b>_S)return 1;A=k&y,s[A]=m<<24|g<<16|S-a|0}}return k!==0&&(s[S+k]=u-v<<24|64<<16|0),l.bits=m,0}});var aE=I(On=>{"use strict";p();var Yr=Hi(),Hg=xg(),ui=Sg(),VH=wS(),Uc=kS(),YH=0,KS=1,QS=2,AS=4,XH=5,yd=6,ya=0,ZH=1,KH=2,pn=-2,JS=-3,Ug=-4,QH=-5,CS=8,eE=1,TS=2,PS=3,RS=4,$S=5,IS=6,FS=7,OS=8,MS=9,DS=10,xd=11,ji=12,Mg=13,LS=14,Dg=15,NS=16,BS=17,HS=18,US=19,bd=20,_d=21,GS=22,jS=23,qS=24,WS=25,zS=26,Lg=27,VS=28,YS=29,Je=30,Gg=31,JH=32,e3=852,t3=592,r3=15,n3=r3;function XS(t){return(t>>>24&255)+(t>>>8&65280)+((t&65280)<<8)+((t&255)<<24)}function i3(){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 Yr.Buf16(320),this.work=new Yr.Buf16(288),this.lendyn=null,this.distdyn=null,this.sane=0,this.back=0,this.was=0}function tE(t){var e;return!t||!t.state?pn:(e=t.state,t.total_in=t.total_out=e.total=0,t.msg="",e.wrap&&(t.adler=e.wrap&1),e.mode=eE,e.last=0,e.havedict=0,e.dmax=32768,e.head=null,e.hold=0,e.bits=0,e.lencode=e.lendyn=new Yr.Buf32(e3),e.distcode=e.distdyn=new Yr.Buf32(t3),e.sane=1,e.back=-1,ya)}function rE(t){var e;return!t||!t.state?pn:(e=t.state,e.wsize=0,e.whave=0,e.wnext=0,tE(t))}function nE(t,e){var r,n;return!t||!t.state||(n=t.state,e<0?(r=0,e=-e):(r=(e>>4)+1,e<48&&(e&=15)),e&&(e<8||e>15))?pn:(n.window!==null&&n.wbits!==e&&(n.window=null),n.wrap=r,n.wbits=e,rE(t))}function iE(t,e){var r,n;return t?(n=new i3,t.state=n,n.window=null,r=nE(t,e),r!==ya&&(t.state=null),r):pn}function s3(t){return iE(t,n3)}var ZS=!0,Ng,Bg;function a3(t){if(ZS){var e;for(Ng=new Yr.Buf32(512),Bg=new Yr.Buf32(32),e=0;e<144;)t.lens[e++]=8;for(;e<256;)t.lens[e++]=9;for(;e<280;)t.lens[e++]=7;for(;e<288;)t.lens[e++]=8;for(Uc(KS,t.lens,0,288,Ng,0,t.work,{bits:9}),e=0;e<32;)t.lens[e++]=5;Uc(QS,t.lens,0,32,Bg,0,t.work,{bits:5}),ZS=!1}t.lencode=Ng,t.lenbits=9,t.distcode=Bg,t.distbits=5}function sE(t,e,r,n){var i,s=t.state;return s.window===null&&(s.wsize=1<=s.wsize?(Yr.arraySet(s.window,e,r-s.wsize,s.wsize,0),s.wnext=0,s.whave=s.wsize):(i=s.wsize-s.wnext,i>n&&(i=n),Yr.arraySet(s.window,e,r-n,i,s.wnext),n-=i,n?(Yr.arraySet(s.window,e,r-n,n,0),s.wnext=n,s.whave=s.wsize):(s.wnext+=i,s.wnext===s.wsize&&(s.wnext=0),s.whave>>8&255,r.check=ui(r.check,_,2,0),c=0,u=0,r.mode=TS;break}if(r.flags=0,r.head&&(r.head.done=!1),!(r.wrap&1)||(((c&255)<<8)+(c>>8))%31){t.msg="incorrect header check",r.mode=Je;break}if((c&15)!==CS){t.msg="unknown compression method",r.mode=Je;break}if(c>>>=4,u-=4,y=(c&15)+8,r.wbits===0)r.wbits=y;else if(y>r.wbits){t.msg="invalid window size",r.mode=Je;break}r.dmax=1<>8&1),r.flags&512&&(_[0]=c&255,_[1]=c>>>8&255,r.check=ui(r.check,_,2,0)),c=0,u=0,r.mode=PS;case PS:for(;u<32;){if(o===0)break e;o--,c+=n[s++]<>>8&255,_[2]=c>>>16&255,_[3]=c>>>24&255,r.check=ui(r.check,_,4,0)),c=0,u=0,r.mode=RS;case RS:for(;u<16;){if(o===0)break e;o--,c+=n[s++]<>8),r.flags&512&&(_[0]=c&255,_[1]=c>>>8&255,r.check=ui(r.check,_,2,0)),c=0,u=0,r.mode=$S;case $S:if(r.flags&1024){for(;u<16;){if(o===0)break e;o--,c+=n[s++]<>>8&255,r.check=ui(r.check,_,2,0)),c=0,u=0}else r.head&&(r.head.extra=null);r.mode=IS;case IS:if(r.flags&1024&&(h=r.length,h>o&&(h=o),h&&(r.head&&(y=r.head.extra_len-r.length,r.head.extra||(r.head.extra=new Array(r.head.extra_len)),Yr.arraySet(r.head.extra,n,s,h,y)),r.flags&512&&(r.check=ui(r.check,n,h,s)),o-=h,s+=h,r.length-=h),r.length))break e;r.length=0,r.mode=FS;case FS:if(r.flags&2048){if(o===0)break e;h=0;do y=n[s+h++],r.head&&y&&r.length<65536&&(r.head.name+=String.fromCharCode(y));while(y&&h>9&1,r.head.done=!0),t.adler=r.check=0,r.mode=ji;break;case DS:for(;u<32;){if(o===0)break e;o--,c+=n[s++]<>>=u&7,u-=u&7,r.mode=Lg;break}for(;u<3;){if(o===0)break e;o--,c+=n[s++]<>>=1,u-=1,c&3){case 0:r.mode=LS;break;case 1:if(a3(r),r.mode=bd,e===yd){c>>>=2,u-=2;break e}break;case 2:r.mode=BS;break;case 3:t.msg="invalid block type",r.mode=Je}c>>>=2,u-=2;break;case LS:for(c>>>=u&7,u-=u&7;u<32;){if(o===0)break e;o--,c+=n[s++]<>>16^65535)){t.msg="invalid stored block lengths",r.mode=Je;break}if(r.length=c&65535,c=0,u=0,r.mode=Dg,e===yd)break e;case Dg:r.mode=NS;case NS:if(h=r.length,h){if(h>o&&(h=o),h>l&&(h=l),h===0)break e;Yr.arraySet(i,n,s,h,a),o-=h,s+=h,l-=h,a+=h,r.length-=h;break}r.mode=ji;break;case BS:for(;u<14;){if(o===0)break e;o--,c+=n[s++]<>>=5,u-=5,r.ndist=(c&31)+1,c>>>=5,u-=5,r.ncode=(c&15)+4,c>>>=4,u-=4,r.nlen>286||r.ndist>30){t.msg="too many length or distance symbols",r.mode=Je;break}r.have=0,r.mode=HS;case HS:for(;r.have>>=3,u-=3}for(;r.have<19;)r.lens[N[r.have++]]=0;if(r.lencode=r.lendyn,r.lenbits=7,C={bits:r.lenbits},S=Uc(YH,r.lens,0,19,r.lencode,0,r.work,C),r.lenbits=C.bits,S){t.msg="invalid code lengths set",r.mode=Je;break}r.have=0,r.mode=US;case US:for(;r.have>>24,b=v>>>16&255,k=v&65535,!(w<=u);){if(o===0)break e;o--,c+=n[s++]<>>=w,u-=w,r.lens[r.have++]=k;else{if(k===16){for(P=w+2;u>>=w,u-=w,r.have===0){t.msg="invalid bit length repeat",r.mode=Je;break}y=r.lens[r.have-1],h=3+(c&3),c>>>=2,u-=2}else if(k===17){for(P=w+3;u>>=w,u-=w,y=0,h=3+(c&7),c>>>=3,u-=3}else{for(P=w+7;u>>=w,u-=w,y=0,h=11+(c&127),c>>>=7,u-=7}if(r.have+h>r.nlen+r.ndist){t.msg="invalid bit length repeat",r.mode=Je;break}for(;h--;)r.lens[r.have++]=y}}if(r.mode===Je)break;if(r.lens[256]===0){t.msg="invalid code -- missing end-of-block",r.mode=Je;break}if(r.lenbits=9,C={bits:r.lenbits},S=Uc(KS,r.lens,0,r.nlen,r.lencode,0,r.work,C),r.lenbits=C.bits,S){t.msg="invalid literal/lengths set",r.mode=Je;break}if(r.distbits=6,r.distcode=r.distdyn,C={bits:r.distbits},S=Uc(QS,r.lens,r.nlen,r.ndist,r.distcode,0,r.work,C),r.distbits=C.bits,S){t.msg="invalid distances set",r.mode=Je;break}if(r.mode=bd,e===yd)break e;case bd:r.mode=_d;case _d:if(o>=6&&l>=258){t.next_out=a,t.avail_out=l,t.next_in=s,t.avail_in=o,r.hold=c,r.bits=u,VH(t,d),a=t.next_out,i=t.output,l=t.avail_out,s=t.next_in,n=t.input,o=t.avail_in,c=r.hold,u=r.bits,r.mode===ji&&(r.back=-1);break}for(r.back=0;v=r.lencode[c&(1<>>24,b=v>>>16&255,k=v&65535,!(w<=u);){if(o===0)break e;o--,c+=n[s++]<>x)],w=v>>>24,b=v>>>16&255,k=v&65535,!(x+w<=u);){if(o===0)break e;o--,c+=n[s++]<>>=x,u-=x,r.back+=x}if(c>>>=w,u-=w,r.back+=w,r.length=k,b===0){r.mode=zS;break}if(b&32){r.back=-1,r.mode=ji;break}if(b&64){t.msg="invalid literal/length code",r.mode=Je;break}r.extra=b&15,r.mode=GS;case GS:if(r.extra){for(P=r.extra;u>>=r.extra,u-=r.extra,r.back+=r.extra}r.was=r.length,r.mode=jS;case jS:for(;v=r.distcode[c&(1<>>24,b=v>>>16&255,k=v&65535,!(w<=u);){if(o===0)break e;o--,c+=n[s++]<>x)],w=v>>>24,b=v>>>16&255,k=v&65535,!(x+w<=u);){if(o===0)break e;o--,c+=n[s++]<>>=x,u-=x,r.back+=x}if(c>>>=w,u-=w,r.back+=w,b&64){t.msg="invalid distance code",r.mode=Je;break}r.offset=k,r.extra=b&15,r.mode=qS;case qS:if(r.extra){for(P=r.extra;u>>=r.extra,u-=r.extra,r.back+=r.extra}if(r.offset>r.dmax){t.msg="invalid distance too far back",r.mode=Je;break}r.mode=WS;case WS:if(l===0)break e;if(h=d-l,r.offset>h){if(h=r.offset-h,h>r.whave&&r.sane){t.msg="invalid distance too far back",r.mode=Je;break}h>r.wnext?(h-=r.wnext,m=r.wsize-h):m=r.wnext-h,h>r.length&&(h=r.length),g=r.window}else g=i,m=a-r.offset,h=r.length;h>l&&(h=l),l-=h,r.length-=h;do i[a++]=g[m++];while(--h);r.length===0&&(r.mode=_d);break;case zS:if(l===0)break e;i[a++]=r.length,l--,r.mode=_d;break;case Lg:if(r.wrap){for(;u<32;){if(o===0)break e;o--,c|=n[s++]<{"use strict";p();oE.exports={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_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}});var cE=I((CZ,lE)=>{"use strict";p();function f3(){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}lE.exports=f3});var fE=I(jc=>{"use strict";p();var qo=aE(),Gc=Hi(),Sd=Tg(),dt=jg(),qg=ud(),d3=Pg(),h3=cE(),uE=Object.prototype.toString;function ba(t){if(!(this instanceof ba))return new ba(t);this.options=Gc.assign({chunkSize:16384,windowBits:0,to:""},t||{});var e=this.options;e.raw&&e.windowBits>=0&&e.windowBits<16&&(e.windowBits=-e.windowBits,e.windowBits===0&&(e.windowBits=-15)),e.windowBits>=0&&e.windowBits<16&&!(t&&t.windowBits)&&(e.windowBits+=32),e.windowBits>15&&e.windowBits<48&&(e.windowBits&15||(e.windowBits|=15)),this.err=0,this.msg="",this.ended=!1,this.chunks=[],this.strm=new d3,this.strm.avail_out=0;var r=qo.inflateInit2(this.strm,e.windowBits);if(r!==dt.Z_OK)throw new Error(qg[r]);if(this.header=new h3,qo.inflateGetHeader(this.strm,this.header),e.dictionary&&(typeof e.dictionary=="string"?e.dictionary=Sd.string2buf(e.dictionary):uE.call(e.dictionary)==="[object ArrayBuffer]"&&(e.dictionary=new Uint8Array(e.dictionary)),e.raw&&(r=qo.inflateSetDictionary(this.strm,e.dictionary),r!==dt.Z_OK)))throw new Error(qg[r])}ba.prototype.push=function(t,e){var r=this.strm,n=this.options.chunkSize,i=this.options.dictionary,s,a,o,l,c,u=!1;if(this.ended)return!1;a=e===~~e?e:e===!0?dt.Z_FINISH:dt.Z_NO_FLUSH,typeof t=="string"?r.input=Sd.binstring2buf(t):uE.call(t)==="[object ArrayBuffer]"?r.input=new Uint8Array(t):r.input=t,r.next_in=0,r.avail_in=r.input.length;do{if(r.avail_out===0&&(r.output=new Gc.Buf8(n),r.next_out=0,r.avail_out=n),s=qo.inflate(r,dt.Z_NO_FLUSH),s===dt.Z_NEED_DICT&&i&&(s=qo.inflateSetDictionary(this.strm,i)),s===dt.Z_BUF_ERROR&&u===!0&&(s=dt.Z_OK,u=!1),s!==dt.Z_STREAM_END&&s!==dt.Z_OK)return this.onEnd(s),this.ended=!0,!1;r.next_out&&(r.avail_out===0||s===dt.Z_STREAM_END||r.avail_in===0&&(a===dt.Z_FINISH||a===dt.Z_SYNC_FLUSH))&&(this.options.to==="string"?(o=Sd.utf8border(r.output,r.next_out),l=r.next_out-o,c=Sd.buf2string(r.output,o),r.next_out=l,r.avail_out=n-l,l&&Gc.arraySet(r.output,r.output,o,l,0),this.onData(c)):this.onData(Gc.shrinkBuf(r.output,r.next_out))),r.avail_in===0&&r.avail_out===0&&(u=!0)}while((r.avail_in>0||r.avail_out===0)&&s!==dt.Z_STREAM_END);return s===dt.Z_STREAM_END&&(a=dt.Z_FINISH),a===dt.Z_FINISH?(s=qo.inflateEnd(this.strm),this.onEnd(s),this.ended=!0,s===dt.Z_OK):(a===dt.Z_SYNC_FLUSH&&(this.onEnd(dt.Z_OK),r.avail_out=0),!0)};ba.prototype.onData=function(t){this.chunks.push(t)};ba.prototype.onEnd=function(t){t===dt.Z_OK&&(this.options.to==="string"?this.result=this.chunks.join(""):this.result=Gc.flattenChunks(this.chunks)),this.chunks=[],this.err=t,this.msg=this.strm.msg};function Wg(t,e){var r=new ba(e);if(r.push(t,!0),r.err)throw r.msg||qg[r.err];return r.result}function p3(t,e){return e=e||{},e.raw=!0,Wg(t,e)}jc.Inflate=ba;jc.inflate=Wg;jc.inflateRaw=p3;jc.ungzip=Wg});var pE=I(($Z,hE)=>{"use strict";p();var m3=Hi().assign,g3=gS(),v3=fE(),w3=jg(),dE={};m3(dE,g3,v3,w3);hE.exports=dE});var vE=I((FZ,gE)=>{"use strict";p();var mE=(t,e)=>function(...r){let n=e.promiseModule;return new n((i,s)=>{e.multiArgs?r.push((...a)=>{e.errorFirst?a[0]?s(a):(a.shift(),i(a)):i(a)}):e.errorFirst?r.push((a,o)=>{a?s(a):i(o)}):r.push(i),t.apply(this,r)})};gE.exports=(t,e)=>{e=Object.assign({exclude:[/.+(Sync|Stream)$/],errorFirst:!0,promiseModule:Promise},e);let r=typeof t;if(!(t!==null&&(r==="object"||r==="function")))throw new TypeError(`Expected \`input\` to be a \`Function\` or \`Object\`, got \`${t===null?"null":r}\``);let n=s=>{let a=o=>typeof o=="string"?s===o:o.test(s);return e.include?e.include.some(a):!e.exclude.some(a)},i;r==="function"?i=function(...s){return e.excludeMain?t(...s):mE(t,e).apply(this,s)}:i=Object.create(Object.getPrototypeOf(t));for(let s in t){let a=t[s];i[s]=typeof a=="function"&&n(s)?mE(a,e):a}return i}});var AE=I((MZ,kE)=>{p();function wE(t){return Array.isArray(t)?t:[t]}var Yg="",yE=" ",zg="\\",y3=/^\s+$/,b3=/(?:[^\\]|^)\\$/,_3=/^\\!/,x3=/^\\#/,S3=/\r?\n/g,E3=/^\.*\/|^\.+$/,Vg="/",xE="node-ignore";typeof Symbol!="undefined"&&(xE=Symbol.for("node-ignore"));var bE=xE,k3=(t,e,r)=>Object.defineProperty(t,e,{value:r}),A3=/([0-z])-([0-z])/g,SE=()=>!1,C3=t=>t.replace(A3,(e,r,n)=>r.charCodeAt(0)<=n.charCodeAt(0)?e:Yg),T3=t=>{let{length:e}=t;return t.slice(0,e-e%2)},P3=[[/^\uFEFF/,()=>Yg],[/((?:\\\\)*?)(\\?\s+)$/,(t,e,r)=>e+(r.indexOf("\\")===0?yE:Yg)],[/(\\+?)\s/g,(t,e)=>{let{length:r}=e;return e.slice(0,r-r%2)+yE}],[/[\\$.|*+(){^]/g,t=>`\\${t}`],[/(?!\\)\?/g,()=>"[^/]"],[/^\//,()=>"^"],[/\//g,()=>"\\/"],[/^\^*\\\*\\\*\\\//,()=>"^(?:.*\\/)?"],[/^(?=[^^])/,function(){return /\/(?!$)/.test(this)?"^":"(?:^|\\/)"}],[/\\\/\\\*\\\*(?=\\\/|$)/g,(t,e,r)=>e+6{let n=r.replace(/\\\*/g,"[^\\/]*");return e+n}],[/\\\\\\(?=[$.|*+(){^])/g,()=>zg],[/\\\\/g,()=>zg],[/(\\)?\[([^\]/]*?)(\\*)($|\])/g,(t,e,r,n,i)=>e===zg?`\\[${r}${T3(n)}${i}`:i==="]"&&n.length%2===0?`[${C3(r)}${n}]`:"[]"],[/(?:[^*])$/,t=>/\/$/.test(t)?`${t}$`:`${t}(?=$|\\/$)`],[/(\^|\\\/)?\\\*$/,(t,e)=>`${e?`${e}[^/]+`:"[^/]*"}(?=$|\\/$)`]],_E=Object.create(null),R3=(t,e)=>{let r=_E[t];return r||(r=P3.reduce((n,[i,s])=>n.replace(i,s.bind(t)),t),_E[t]=r),e?new RegExp(r,"i"):new RegExp(r)},Kg=t=>typeof t=="string",$3=t=>t&&Kg(t)&&!y3.test(t)&&!b3.test(t)&&t.indexOf("#")!==0,I3=t=>t.split(S3),Xg=class{constructor(e,r,n,i){this.origin=e,this.pattern=r,this.negative=n,this.regex=i}},F3=(t,e)=>{let r=t,n=!1;t.indexOf("!")===0&&(n=!0,t=t.substr(1)),t=t.replace(_3,"!").replace(x3,"#");let i=R3(t,e);return new Xg(r,t,n,i)},O3=(t,e)=>{throw new e(t)},qi=(t,e,r)=>Kg(t)?t?qi.isNotRelative(t)?r(`path should be a \`path.relative()\`d string, but got "${e}"`,RangeError):!0:r("path must not be empty",TypeError):r(`path must be a string, but got \`${e}\``,TypeError),EE=t=>E3.test(t);qi.isNotRelative=EE;qi.convert=t=>t;var Zg=class{constructor({ignorecase:e=!0,ignoreCase:r=e,allowRelativePaths:n=!1}={}){k3(this,bE,!0),this._rules=[],this._ignoreCase=r,this._allowRelativePaths=n,this._initCache()}_initCache(){this._ignoreCache=Object.create(null),this._testCache=Object.create(null)}_addPattern(e){if(e&&e[bE]){this._rules=this._rules.concat(e._rules),this._added=!0;return}if($3(e)){let r=F3(e,this._ignoreCase);this._added=!0,this._rules.push(r)}}add(e){return this._added=!1,wE(Kg(e)?I3(e):e).forEach(this._addPattern,this),this._added&&this._initCache(),this}addPattern(e){return this.add(e)}_testOne(e,r){let n=!1,i=!1;return this._rules.forEach(s=>{let{negative:a}=s;if(i===a&&n!==i||a&&!n&&!i&&!r)return;s.regex.test(e)&&(n=!a,i=a)}),{ignored:n,unignored:i}}_test(e,r,n,i){let s=e&&qi.convert(e);return qi(s,e,this._allowRelativePaths?SE:O3),this._t(s,r,n,i)}_t(e,r,n,i){if(e in r)return r[e];if(i||(i=e.split(Vg)),i.pop(),!i.length)return r[e]=this._testOne(e,n);let s=this._t(i.join(Vg)+Vg,r,n,i);return r[e]=s.ignored?s:this._testOne(e,n)}ignores(e){return this._test(e,this._ignoreCache,!1).ignored}createFilter(){return e=>!this.ignores(e)}filter(e){return wE(e).filter(this.createFilter())}test(e){return this._test(e,this._testCache,!0)}},Ed=t=>new Zg(t),M3=t=>qi(t&&qi.convert(t),t,SE);Ed.isPathValid=M3;Ed.default=Ed;kE.exports=Ed;if(typeof process!="undefined"&&(process.env&&process.env.IGNORE_TEST_WIN32||process.platform==="win32")){let t=r=>/^\\\\\?\\/.test(r)||/["<>|\u0000-\u001F]+/u.test(r)?r:r.replace(/\\/g,"/");qi.convert=t;let e=/^[a-z]:\//i;qi.isNotRelative=r=>e.test(r)||EE(r)}});var TE=I((LZ,CE)=>{"use strict";p();function D3(t){return t.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function fi(t,e,r){return e=e instanceof RegExp?e:new RegExp(D3(e),"g"),t.replace(e,r)}var L3={clean:function(e){if(typeof e!="string")throw new Error("Expected a string, received: "+e);return e=fi(e,"./","/"),e=fi(e,"..","."),e=fi(e," ","-"),e=fi(e,/^[~^:?*\\\-]/g,""),e=fi(e,/[~^:?*\\]/g,"-"),e=fi(e,/[~^:?*\\\-]$/g,""),e=fi(e,"@{","-"),e=fi(e,/\.$/g,""),e=fi(e,/\/$/g,""),e=fi(e,/\.lock$/g,""),e}};CE.exports=L3});var RE=I((BZ,PE)=>{p();PE.exports=function(t,e){var r=t,n=e,i=r.length,s=n.length,a=!1,o=null,l=i+1,c=[],u=[],f=[],d="",h=-1,m=0,g=1,v,w,b=function(){i>=s&&(v=r,w=i,r=n,n=v,i=s,s=w,a=!0,l=i+1)},k=function(y,S,_){return{x:y,y:S,k:_}},x=function(y,S){return{elem:y,t:S}},E=function(y,S,_){var C,P,N;for(S>_?C=c[y-1+l]:C=c[y+1+l],N=Math.max(S,_),P=N-y;P=0;--N)for(;CP-C?(a?f[f.length]=new x(n[P],h):f[f.length]=new x(n[P],g),++_,++P):y[N].y-y[N].x=y+1;--H)_[H+l]=E(H,_[H-1+l]+1,_[H+1+l]);_[y+l]=E(y,_[y-1+l]+1,_[y+1+l])}while(_[y+l]!==s);for(o=y+2*C,P=c[y+l],N=[];P!==-1;)N[N.length]=new k(u[P].x,u[P].y,null),P=u[P].k;A(N)}}}});var FE=I((UZ,IE)=>{p();var N3=RE();function B3(t,e){var r=new N3(t,e);r.compose();for(var n=r.getses(),i,s,a=t.length-1,o=e.length-1,l=n.length-1;l>=0;--l)n[l].t===r.SES_COMMON?(s?(s.chain={file1index:a,file2index:o,chain:null},s=s.chain):(i={file1index:a,file2index:o,chain:null},s=i),a--,o--):n[l].t===r.SES_DELETE?a--:n[l].t===r.SES_ADD&&o--;var c={file1index:-1,file2index:-1,chain:null};return s?(s.chain=c,i):c}function $E(t,e){for(var r=[],n=t.length,i=e.length,s=B3(t,e);s!==null;s=s.chain){var a=n-s.file1index-1,o=i-s.file2index-1;n=s.file1index,i=s.file2index,(a||o)&&r.push({file1:[n+1,a],file2:[i+1,o]})}return r.reverse(),r}function H3(t,e,r){var n,i=$E(e,t),s=$E(e,r),a=[];function o(B,H){a.push([B.file1[0],H,B.file1[1],B.file2[0],B.file2[1]])}for(n=0;nc&&(l.push([1,c,B-c]),c=B)}for(var f=0;fg)break;g=Math.max(g,w+v[2]),f++}if(u(m),d==f)h[4]>0&&l.push([h[1],h[3],h[4]]);else{var b={0:[t.length,-1,e.length,-1],2:[r.length,-1,e.length,-1]};for(n=d;n<=f;n++){h=a[n];var k=h[1],x=b[k],E=h[0],A=E+h[2],y=h[3],S=y+h[4];x[0]=Math.min(y,x[0]),x[1]=Math.max(S,x[1]),x[2]=Math.min(E,x[2]),x[3]=Math.max(A,x[3])}var _=b[0][0]+(m-b[0][2]),C=b[0][1]+(g-b[0][3]),P=b[2][0]+(m-b[2][2]),N=b[2][1]+(g-b[2][3]);l.push([-1,_,C-_,m,g-m,P,N-P])}c=g}return u(e.length),l}function U3(t,e,r){var n=[],i=[t,e,r],s=H3(t,e,r),a=[];function o(){a.length&&n.push({ok:a}),a=[]}function l(h){for(var m=0;m{"use strict";p();Object.defineProperty(Y,"__esModule",{value:!0});function Ds(t){return t&&typeof t=="object"&&"default"in t?t.default:t}var Wc=Ds(b_()),rk=Ds(k1()),G3=Ds(C1()),xv=Ds(pE()),kd=Ds(vE()),j3=Ds(AE()),zc=Ds(TE()),q3=Ds(FE()),Re=class t extends Error{constructor(e){super(e),this.caller=""}toJSON(){return{code:this.code,data:this.data,caller:this.caller,message:this.message,stack:this.stack}}fromJSON(e){let r=new t(e.message);return r.code=e.code,r.data=e.data,r.caller=e.caller,r.stack=e.stack,r}get isIsomorphicGitError(){return!0}},Vc=class t extends Re{constructor(e){super(`无法修改索引,因为您有未合并的文件: ${e.toString}。请在工作树中修复它们,然后使用 'git add/rm' 标记解决并提交.`),this.code=this.name=t.code,this.data={filepaths:e}}};Vc.code="UnmergedPathsError";var he=class t extends Re{constructor(e){super(`An internal error caused this command to fail. If you're not a developer, report the bug to the developers of the application you're using. If this is a bug in isomorphic-git then you should create a proper bug yourselves. The bug should include a minimal reproduction and details about the version and environment. Please file a bug report at https://github.com/isomorphic-git/isomorphic-git/issues with this error message: ${e}`),this.code=this.name=t.code,this.data={message:e}}};he.code="InternalError";var zo=class t extends Re{constructor(e){super(`文件路径 "${e}" 包含不安全的字符序列`),this.code=this.name=t.code,this.data={filepath:e}}};zo.code="UnsafeFilepathError";var mn=class{constructor(e){this.buffer=e,this._start=0}eof(){return this._start>=this.buffer.length}tell(){return this._start}seek(e){this._start=e}slice(e){let r=this.buffer.slice(this._start,this._start+e);return this._start+=e,r}toString(e,r){let n=this.buffer.toString(e,this._start,this._start+r);return this._start+=r,n}write(e,r,n){let i=this.buffer.write(e,this._start,r,n);return this._start+=r,i}copy(e,r,n){let i=e.copy(this.buffer,this._start,r,n);return this._start+=i,i}readUInt8(){let e=this.buffer.readUInt8(this._start);return this._start+=1,e}writeUInt8(e){let r=this.buffer.writeUInt8(e,this._start);return this._start+=1,r}readUInt16BE(){let e=this.buffer.readUInt16BE(this._start);return this._start+=2,e}writeUInt16BE(e){let r=this.buffer.writeUInt16BE(e,this._start);return this._start+=2,r}readUInt32BE(){let e=this.buffer.readUInt32BE(this._start);return this._start+=4,e}writeUInt32BE(e){let r=this.buffer.writeUInt32BE(e,this._start);return this._start+=4,r}};function Nd(t,e){return-(te)}function nk(t,e){return Nd(t.path,e.path)}function ik(t){let e=t>0?t>>12:0;e!==4&&e!==8&&e!==10&&e!==14&&(e=8);let r=t&511;return r&73?r=493:r=420,e!==8&&(r=0),(e<<12)+r}var di=2**32;function OE(t,e,r,n){if(t!==void 0&&e!==void 0)return[t,e];r===void 0&&(r=n.valueOf());let i=Math.floor(r/1e3),s=(r-i*1e3)*1e6;return[i,s]}function Vo(t){let[e,r]=OE(t.ctimeSeconds,t.ctimeNanoseconds,t.ctimeMs,t.ctime),[n,i]=OE(t.mtimeSeconds,t.mtimeNanoseconds,t.mtimeMs,t.mtime);return{ctimeSeconds:e%di,ctimeNanoseconds:r%di,mtimeSeconds:n%di,mtimeNanoseconds:i%di,dev:t.dev%di,ino:t.ino%di,mode:ik(t.mode%di),uid:t.uid%di,gid:t.gid%di,size:t.size>-1?t.size%di:0}}function W3(t){let e="";for(let r of new Uint8Array(t))r<16&&(e+="0"),e+=r.toString(16);return e}var Qg=null;async function zi(t){return Qg===null&&(Qg=await V3()),Qg?sk(t):z3(t)}function z3(t){return new rk().update(t).digest("hex")}async function sk(t){let e=await crypto.subtle.digest("SHA-1",t);return W3(e)}async function V3(){try{return(await sk(new Uint8Array([])))==="da39a3ee5e6b4b0d3255bfef95601890afd80709"}catch(t){}return!1}function Y3(t){return{assumeValid:!!(t&32768),extended:!!(t&16384),stage:(t&12288)>>12,nameLength:t&4095}}function X3(t){let e=t.flags;return e.extended=!1,e.nameLength=Math.min(Buffer.from(t.path).length,4095),(e.assumeValid?32768:0)+(e.extended?16384:0)+((e.stage&3)<<12)+(e.nameLength&4095)}var uv=class t{constructor(e,r){this._dirty=!1,this._unmergedPaths=r||new Set,this._entries=e||new Map}_addEntry(e){if(e.flags.stage===0)e.stages=[e],this._entries.set(e.path,e),this._unmergedPaths.delete(e.path);else{let r=this._entries.get(e.path);r||(this._entries.set(e.path,e),r=e),r.stages[e.flags.stage]=e,this._unmergedPaths.add(e.path)}}static async from(e){if(Buffer.isBuffer(e))return t.fromBuffer(e);if(e===null)return new t(null);throw new he("invalid type passed to GitIndex.from")}static async fromBuffer(e){if(e.length===0)throw new he("Index file is empty (.git/index)");let r=new t,n=new mn(e),i=n.toString("utf8",4);if(i!=="DIRC")throw new he(`Invalid dircache magic file number: ${i}`);let s=await zi(e.slice(0,-20)),a=e.slice(-20).toString("hex");if(a!==s)throw new he(`Invalid checksum in GitIndex buffer: expected ${a} but saw ${s}`);let o=n.readUInt32BE();if(o!==2)throw new he(`Unsupported dircache version: ${o}`);let l=n.readUInt32BE(),c=0;for(;!n.eof()&&ce.stages.length>1?e.stages.filter(r=>r):e)}*[Symbol.iterator](){for(let e of this.entries)yield e}insert({filepath:e,stats:r,oid:n,stage:i=0}){r||(r={ctimeSeconds:0,ctimeNanoseconds:0,mtimeSeconds:0,mtimeNanoseconds:0,dev:0,ino:0,mode:0,uid:0,gid:0,size:0}),r=Vo(r);let s=Buffer.from(e),a={ctimeSeconds:r.ctimeSeconds,ctimeNanoseconds:r.ctimeNanoseconds,mtimeSeconds:r.mtimeSeconds,mtimeNanoseconds:r.mtimeNanoseconds,dev:r.dev,ino:r.ino,mode:r.mode||33188,uid:r.uid,gid:r.gid,size:r.size,path:e,oid:n,flags:{assumeValid:!1,extended:!1,stage:i,nameLength:s.length<4095?s.length:4095},stages:[]};this._addEntry(a),this._dirty=!0}delete({filepath:e}){if(this._entries.has(e))this._entries.delete(e);else for(let r of this._entries.keys())r.startsWith(e+"/")&&this._entries.delete(r);this._unmergedPaths.has(e)&&this._unmergedPaths.delete(e),this._dirty=!0}clear(){this._entries.clear(),this._dirty=!0}has({filepath:e}){return this._entries.has(e)}render(){return this.entries.map(e=>`${e.mode.toString(8)} ${e.oid} ${e.path}`).join(` `)}static async _entryToBuffer(e){let r=Buffer.from(e.path),n=Math.ceil((62+r.length+1)/8)*8,i=Buffer.alloc(n),s=new mn(i),a=Vo(e);return s.writeUInt32BE(a.ctimeSeconds),s.writeUInt32BE(a.ctimeNanoseconds),s.writeUInt32BE(a.mtimeSeconds),s.writeUInt32BE(a.mtimeNanoseconds),s.writeUInt32BE(a.dev),s.writeUInt32BE(a.ino),s.writeUInt32BE(a.mode),s.writeUInt32BE(a.uid),s.writeUInt32BE(a.gid),s.writeUInt32BE(a.size),s.write(e.oid,20,"hex"),s.writeUInt16BE(X3(e)),s.write(e.path,r.length,"utf8"),i}async toObject(){let e=Buffer.alloc(12),r=new mn(e);r.write("DIRC",4,"utf8"),r.writeUInt32BE(2),r.writeUInt32BE(this.entriesFlat.length);let n=[];for(let o of this.entries)if(n.push(t._entryToBuffer(o)),o.stages.length>1)for(let l of o.stages)l&&l!==o&&n.push(t._entryToBuffer(l));n=await Promise.all(n);let i=Buffer.concat(n),s=Buffer.concat([e,i]),a=await zi(s);return Buffer.concat([s,Buffer.from(a,"hex")])}};function Td(t,e,r=!0,n=!0){let i=Vo(t),s=Vo(e);return r&&i.mode!==s.mode||i.mtimeSeconds!==s.mtimeSeconds||i.ctimeSeconds!==s.ctimeSeconds||i.uid!==s.uid||i.gid!==s.gid||n&&i.ino!==s.ino||i.size!==s.size}var Jg=null,ev=Symbol("IndexCache");function Z3(){return{map:new Map,stats:new Map}}async function K3(t,e,r){let[n,i]=await Promise.all([t.lstat(e),t.read(e)]),s=await uv.from(i);r.map.set(e,s),r.stats.set(e,n)}async function Q3(t,e,r){let n=r.stats.get(e);if(n===void 0)return!0;if(n===null)return!1;let i=await t.lstat(e);return i===null?!1:Td(n,i)}var ht=class{static async acquire({fs:e,gitdir:r,cache:n,allowUnmerged:i=!0},s){n[ev]||(n[ev]=Z3());let a=`${r}/index`;Jg===null&&(Jg=new Wc({maxPending:1/0}));let o,l=[];return await Jg.acquire(a,async()=>{let c=n[ev];(await Q3(e,a,c))&&(await K3(e,a,c));let u=c.map.get(a);if(l=u.unmergedPaths,l.length&&!i)throw new Vc(l);if(o=await s(u),u._dirty){let f=await u.toObject();await e.write(a,f),c.stats.set(a,await e.lstat(a)),u._dirty=!1}}),o}};function Pd(t){let e=Math.max(t.lastIndexOf("/"),t.lastIndexOf("\\"));return e>-1&&(t=t.slice(e+1)),t}function Sa(t){let e=Math.max(t.lastIndexOf("/"),t.lastIndexOf("\\"));return e===-1?".":e===0?"/":t.slice(0,e)}function ak(t){let e=new Map,r=function(i){if(!e.has(i)){let s={type:"tree",fullpath:i,basename:Pd(i),metadata:{},children:[]};e.set(i,s),s.parent=r(Sa(i)),s.parent&&s.parent!==s&&s.parent.children.push(s)}return e.get(i)},n=function(i,s){if(!e.has(i)){let a={type:"blob",fullpath:i,basename:Pd(i),metadata:s,parent:r(Sa(i)),children:[]};a.parent&&a.parent.children.push(a),e.set(i,a)}return e.get(i)};r(".");for(let i of t)n(i.path,i);return e}function J3(t){switch(t){case 16384:return"tree";case 33188:return"blob";case 33261:return"blob";case 40960:return"blob";case 57344:return"commit"}throw new he(`Unexpected GitTree entry mode: ${t.toString(8)}`)}var fv=class{constructor({fs:e,gitdir:r,cache:n}){this.treePromise=ht.acquire({fs:e,gitdir:r,cache:n},async function(s){return ak(s.entries)});let i=this;this.ConstructEntry=class{constructor(a){this._fullpath=a,this._type=!1,this._mode=!1,this._stat=!1,this._oid=!1}async type(){return i.type(this)}async mode(){return i.mode(this)}async stat(){return i.stat(this)}async content(){return i.content(this)}async oid(){return i.oid(this)}}}async readdir(e){let r=e._fullpath,i=(await this.treePromise).get(r);if(!i||i.type==="blob")return null;if(i.type!=="tree")throw new Error(`ENOTDIR: not a directory, scandir '${r}'`);let s=i.children.map(a=>a.fullpath);return s.sort(Nd),s}async type(e){return e._type===!1&&(await e.stat()),e._type}async mode(e){return e._mode===!1&&(await e.stat()),e._mode}async stat(e){if(e._stat===!1){let n=(await this.treePromise).get(e._fullpath);if(!n)throw new Error(`ENOENT: no such file or directory, lstat '${e._fullpath}'`);let i=n.type==="tree"?{}:Vo(n.metadata);e._type=n.type==="tree"?"tree":J3(i.mode),e._mode=i.mode,n.type==="tree"?e._stat=void 0:e._stat=i}return e._stat}async content(e){}async oid(e){if(e._oid===!1){let n=(await this.treePromise).get(e._fullpath);e._oid=n.metadata.oid}return e._oid}},Bd=Symbol("GitWalkSymbol");function Ca(){let t=Object.create(null);return Object.defineProperty(t,Bd,{value:function({fs:e,gitdir:r,cache:n}){return new fv({fs:e,gitdir:r,cache:n})}}),Object.freeze(t),t}var Be=class t extends Re{constructor(e){super(`无法找到 ${e}.`),this.code=this.name=t.code,this.data={what:e}}};Be.code="NotFoundError";var fr=class t extends Re{constructor(e,r,n,i){super(`Object ${e} ${i?`at ${i}`:""}was anticipated to be a ${n} but it is a ${r}.`),this.code=this.name=t.code,this.data={oid:e,actual:r,expected:n,filepath:i}}};fr.code="ObjectTypeError";var Rs=class t extends Re{constructor(e){super(`预期是一个 40 字符的十六进制对象 ID,但看到的是 "${e}".`),this.code=this.name=t.code,this.data={value:e}}};Rs.code="InvalidOidError";var Yc=class t extends Re{constructor(e){super(`找不到远程 "${e}" 的 fetch refspec。请确保配置文件中有如下条目: [remote "${e}"] fetch = +refs/heads/*:refs/remotes/origin/* `),this.code=this.name=t.code,this.data={remote:e}}};Yc.code="NoRefspecError";var Rd=class t{constructor(e){if(this.refs=new Map,this.parsedConfig=[],e){let r=null;this.parsedConfig=e.trim().split(` `).map(n=>{if(/^\s*#/.test(n))return{line:n,comment:!0};let i=n.indexOf(" ");if(n.startsWith("^")){let s=n.slice(1);return this.refs.set(r+"^{}",s),{line:n,ref:r,peeled:s}}else{let s=n.slice(0,i);return r=n.slice(i+1),this.refs.set(r,s),{line:n,ref:r,oid:s}}})}return this}static from(e){return new t(e)}delete(e){this.parsedConfig=this.parsedConfig.filter(r=>r.ref!==e),this.refs.delete(e)}toString(){return this.parsedConfig.map(({line:e})=>e).join(` `)+` `}},$d=class t{constructor({remotePath:e,localPath:r,force:n,matchPrefix:i}){Object.assign(this,{remotePath:e,localPath:r,force:n,matchPrefix:i})}static from(e){let[r,n,i,s,a]=e.match(/^(\+?)(.*?)(\*?):(.*?)(\*?)$/).slice(1),o=r==="+",l=i==="*";if(l!==(a==="*"))throw new he("Invalid refspec");return new t({remotePath:n,localPath:s,force:o,matchPrefix:l})}translate(e){if(this.matchPrefix){if(e.startsWith(this.remotePath))return this.localPath+e.replace(this.remotePath,"")}else if(e===this.remotePath)return this.localPath;return null}reverseTranslate(e){if(this.matchPrefix){if(e.startsWith(this.localPath))return this.remotePath+e.replace(this.localPath,"")}else if(e===this.localPath)return this.remotePath;return null}},dv=class t{constructor(e=[]){this.rules=e}static from(e){let r=[];for(let n of e)r.push($d.from(n));return new t(r)}add(e){let r=$d.from(e);this.rules.push(r)}translate(e){let r=[];for(let n of this.rules)for(let i of e){let s=n.translate(i);s&&r.push([i,s])}return r}translateOne(e){let r=null;for(let n of this.rules){let i=n.translate(e);i&&(r=i)}return r}localNamespaces(){return this.rules.filter(e=>e.matchPrefix).map(e=>e.localPath.replace(/\/$/,""))}};function e8(t,e){let r=t.replace(/\^\{\}$/,""),n=e.replace(/\^\{\}$/,""),i=-(rn);return i===0?t.endsWith("^{}")?1:-1:i}function t8(t,e){let r="",n=0,i=-1,s=0,a="\0";for(let o=0;o<=t.length;++o){if(o2){let l=r.lastIndexOf("/");l===-1?(r="",n=0):(r=r.slice(0,l),n=r.length-1-r.lastIndexOf("/")),i=o,s=0;continue}else if(r.length!==0){r="",n=0,i=o,s=0;continue}}e&&(r+=r.length>0?"/..":"..",n=2)}else r.length>0?r+="/"+t.slice(i+1,o):r=t.slice(i+1,o),n=o-i-1;i=o,s=0}else a==="."&&s!==-1?++s:s=-1}return r}function r8(t){if(!t.length)return".";let e=t[0]==="/",r=t.at(-1)==="/";return t=t8(t,!e),t.length?(r&&(t+="/"),e?`/${t}`:t):e?"/":r?"./":"."}function D(...t){if(t.length===0)return".";let e;for(let r=0;r0&&(e===void 0?e=n:e+="/"+n)}return e===void 0?".":r8(e)}var n8=t=>{if(typeof t=="number")return t;t=t.toLowerCase();let e=parseInt(t);return t.endsWith("k")&&(e*=1024),t.endsWith("m")&&(e*=1024*1024),t.endsWith("g")&&(e*=1024*1024*1024),e},qc=t=>{if(typeof t=="boolean")return t;if(t=t.trim().toLowerCase(),t==="true"||t==="yes"||t==="on")return!0;if(t==="false"||t==="no"||t==="off")return!1;throw Error(`Expected 'true', 'false', 'yes', 'no', 'on', or 'off', but got ${t}`)},ME={core:{filemode:qc,bare:qc,logallrefupdates:qc,symlinks:qc,ignorecase:qc,bigFileThreshold:n8}},i8=/^\[([A-Za-z0-9-.]+)(?: "(.*)")?\]$/,s8=/^[A-Za-z0-9-.]+$/,a8=/^([A-Za-z][A-Za-z-]*)(?: *= *(.*))?$/,o8=/^[A-Za-z][A-Za-z-]*$/,l8=/^(.*?)( *[#;].*)$/,c8=t=>{let e=i8.exec(t);if(e!=null){let[r,n]=e.slice(1);return[r,n]}return null},u8=t=>{let e=a8.exec(t);if(e!=null){let[r,n="true"]=e.slice(1),i=f8(n),s=d8(i);return[r,s]}return null},f8=t=>{let e=l8.exec(t);if(e==null)return t;let[r,n]=e.slice(1);return DE(r)&&DE(n)?`${r}${n}`:r},DE=t=>(t.match(/(?:^|[^\\])"/g)||[]).length%2!==0,d8=t=>t.split("").reduce((e,r,n,i)=>{let s=r==="\""&&i[n-1]!=="\\",a=r==="\\"&&i[n+1]==="\"";return s||a?e:e+r},""),LE=t=>t!=null?t.toLowerCase():null,hv=(t,e,r)=>[LE(t),e,LE(r)].filter(n=>n!=null).join("."),NE=t=>{let e=t.split("."),r=e.shift(),n=e.pop(),i=e.length?e.join("."):void 0;return{section:r,subsection:i,name:n,path:hv(r,i,n),sectionPath:hv(r,i,null),isSection:!!r}},h8=(t,e)=>t.reduce((r,n,i)=>e(n)?i:r,-1),pv=class t{constructor(e){let r=null,n=null;this.parsedConfig=e?e.split(` `).map(i=>{let s=null,a=null,o=i.trim(),l=c8(o),c=l!=null;if(c)[r,n]=l;else{let f=u8(o);f!=null&&([s,a]=f)}let u=hv(r,n,s);return{line:i,isSection:c,section:r,subsection:n,name:s,value:a,path:u}}):[]}static from(e){return new t(e)}async get(e,r=!1){let n=NE(e).path,i=this.parsedConfig.filter(s=>s.path===n).map(({section:s,name:a,value:o})=>{let l=ME[s]&&ME[s][a];return l?l(o):o});return r?i:i.pop()}async getall(e){return this.get(e,!0)}async getSubsections(e){return this.parsedConfig.filter(r=>r.isSection&&r.section===e).map(r=>r.subsection)}async deleteSection(e,r){this.parsedConfig=this.parsedConfig.filter(n=>!(n.section===e&&n.subsection===r))}async append(e,r){return this.set(e,r,!0)}async set(e,r,n=!1){let{section:i,subsection:s,name:a,path:o,sectionPath:l,isSection:c}=NE(e),u=h8(this.parsedConfig,f=>f.path===o);if(r==null)u!==-1&&this.parsedConfig.splice(u,1);else if(u!==-1){let f=this.parsedConfig[u],d=Object.assign({},f,{name:a,value:r,modified:!0});n?this.parsedConfig.splice(u+1,0,d):this.parsedConfig[u]=d}else{let f=this.parsedConfig.findIndex(h=>h.path===l),d={section:i,subsection:s,name:a,value:r,modified:!0,path:o};if(s8.test(i)&&o8.test(a))if(f>=0)this.parsedConfig.splice(f+1,0,d);else{let h={isSection:c,section:i,subsection:s,modified:!0,path:l};this.parsedConfig.push(h,d)}}}toString(){return this.parsedConfig.map(({line:e,section:r,subsection:n,name:i,value:s,modified:a=!1})=>a?i!=null&&s!=null?typeof s=="string"&&/[#;]/.test(s)?` ${i} = "${s}"`:` ${i} = ${s}`:n!=null?`[${r} "${n}"]`:`[${r}]`:e).join(` `)}},lt=class{static async get({fs:e,gitdir:r}){let n=await e.read(`${r}/config`,{encoding:"utf8"});return pv.from(n)}static async save({fs:e,gitdir:r,config:n}){await e.write(`${r}/config`,n.toString(),{encoding:"utf8"})}},Ad=t=>[`${t}`,`refs/${t}`,`refs/tags/${t}`,`refs/heads/${t}`,`refs/remotes/${t}`,`refs/remotes/${t}/HEAD`],p8=["config","description","index","shallow","commondir"],tv;async function Ts(t,e){return tv===void 0&&(tv=new Wc),tv.acquire(t,e)}var z=class t{static async updateRemoteRefs({fs:e,gitdir:r,remote:n,refs:i,symrefs:s,tags:a,refspecs:o=void 0,prune:l=!1,pruneTags:c=!1}){for(let v of i.values())if(!v.match(/[0-9a-f]{40}/))throw new Rs(v);let u=await lt.get({fs:e,gitdir:r});if(!o){if(o=await u.getall(`remote.${n}.fetch`),o.length===0)throw new Yc(n);o.unshift(`+HEAD:refs/remotes/${n}/HEAD`)}let f=dv.from(o),d=new Map;if(c){let v=await t.listRefs({fs:e,gitdir:r,filepath:"refs/tags"});await t.deleteRefs({fs:e,gitdir:r,refs:v.map(w=>`refs/tags/${w}`)})}if(a){for(let v of i.keys())if(v.startsWith("refs/tags")&&!v.endsWith("^{}")&&!(await t.exists({fs:e,gitdir:r,ref:v}))){let w=i.get(v);d.set(v,w)}}let h=f.translate([...i.keys()]);for(let[v,w]of h){let b=i.get(v);d.set(w,b)}let m=f.translate([...s.keys()]);for(let[v,w]of m){let b=s.get(v),k=f.translateOne(b);k&&d.set(w,`ref: ${k}`)}let g=[];if(l){for(let v of f.localNamespaces()){let w=(await t.listRefs({fs:e,gitdir:r,filepath:v})).map(b=>`${v}/${b}`);for(let b of w)d.has(b)||g.push(b)}g.length>0&&(await t.deleteRefs({fs:e,gitdir:r,refs:g}))}for(let[v,w]of d)await Ts(v,async()=>e.write(D(r,v),`${w.trim()} `,"utf8"));return{pruned:g}}static async writeRef({fs:e,gitdir:r,ref:n,value:i}){if(!i.match(/[0-9a-f]{40}/))throw new Rs(i);await Ts(n,async()=>e.write(D(r,n),`${i.trim()} `,"utf8"))}static async writeSymbolicRef({fs:e,gitdir:r,ref:n,value:i}){await Ts(n,async()=>e.write(D(r,n),`ref: ${i.trim()} `,"utf8"))}static async deleteRef({fs:e,gitdir:r,ref:n}){return t.deleteRefs({fs:e,gitdir:r,refs:[n]})}static async deleteRefs({fs:e,gitdir:r,refs:n}){await Promise.all(n.map(o=>e.rm(D(r,o))));let i=await Ts("packed-refs",async()=>e.read(`${r}/packed-refs`,{encoding:"utf8"})),s=Rd.from(i),a=s.refs.size;for(let o of n)s.refs.has(o)&&s.delete(o);s.refs.sizee.write(`${r}/packed-refs`,i,{encoding:"utf8"})))}static async resolve({fs:e,gitdir:r,ref:n,depth:i=void 0}){if(i!==void 0&&(i--,i===-1))return n;if(n.startsWith("ref: "))return n=n.slice(5),t.resolve({fs:e,gitdir:r,ref:n,depth:i});if(n.length===40&&/[0-9a-f]{40}/.test(n))return n;let s=await t.packedRefs({fs:e,gitdir:r}),a=Ad(n).filter(o=>!p8.includes(o));for(let o of a){let l=await Ts(o,async()=>(await e.read(`${r}/${o}`,{encoding:"utf8"}))||s.get(o));if(l)return t.resolve({fs:e,gitdir:r,ref:l.trim(),depth:i})}throw new Be(n)}static async exists({fs:e,gitdir:r,ref:n}){try{return await t.expand({fs:e,gitdir:r,ref:n}),!0}catch(i){return!1}}static async expand({fs:e,gitdir:r,ref:n}){if(n.length===40&&/[0-9a-f]{40}/.test(n))return n;let i=await t.packedRefs({fs:e,gitdir:r}),s=Ad(n);for(let a of s)if((await Ts(a,async()=>e.exists(`${r}/${a}`)))||i.has(a))return a;throw new Be(n)}static async expandAgainstMap({ref:e,map:r}){let n=Ad(e);for(let i of n)if(await r.has(i))return i;throw new Be(e)}static resolveAgainstMap({ref:e,fullref:r=e,depth:n=void 0,map:i}){if(n!==void 0&&(n--,n===-1))return{fullref:r,oid:e};if(e.startsWith("ref: "))return e=e.slice(5),t.resolveAgainstMap({ref:e,fullref:r,depth:n,map:i});if(e.length===40&&/[0-9a-f]{40}/.test(e))return{fullref:r,oid:e};let s=Ad(e);for(let a of s){let o=i.get(a);if(o)return t.resolveAgainstMap({ref:o.trim(),fullref:a,depth:n,map:i})}throw new Be(e)}static async packedRefs({fs:e,gitdir:r}){let n=await Ts("packed-refs",async()=>e.read(`${r}/packed-refs`,{encoding:"utf8"}));return Rd.from(n).refs}static async listRefs({fs:e,gitdir:r,filepath:n}){let i=t.packedRefs({fs:e,gitdir:r}),s=null;try{s=await e.readdirDeep(`${r}/${n}`),s=s.map(a=>a.replace(`${r}/${n}/`,""))}catch(a){s=[]}for(let a of(await i).keys())a.startsWith(n)&&(a=a.replace(n+"/",""),s.includes(a)||s.push(a));return s.sort(e8),s}static async listBranches({fs:e,gitdir:r,remote:n}){return n?t.listRefs({fs:e,gitdir:r,filepath:`refs/remotes/${n}`}):t.listRefs({fs:e,gitdir:r,filepath:"refs/heads"})}static async listTags({fs:e,gitdir:r}){return(await t.listRefs({fs:e,gitdir:r,filepath:"refs/tags"})).filter(i=>!i.endsWith("^{}"))}};function m8(t,e){return Nd(BE(t),BE(e))}function BE(t){return t.mode==="040000"?t.path+"/":t.path}function ok(t){switch(t){case"040000":return"tree";case"100644":return"blob";case"100755":return"blob";case"120000":return"blob";case"160000":return"commit"}throw new he(`Unexpected GitTree entry mode: ${t}`)}function g8(t){let e=[],r=0;for(;r`${e.mode} ${e.type} ${e.oid} ${e.path}`).join(` `)}toObject(){let e=[...this._entries];return e.sort(m8),Buffer.concat(e.map(r=>{let n=Buffer.from(r.mode.replace(/^0/,"")),i=Buffer.from(" "),s=Buffer.from(r.path,"utf8"),a=Buffer.from([0]),o=Buffer.from(r.oid,"hex");return Buffer.concat([n,i,s,a,o])}))}entries(){return this._entries}*[Symbol.iterator](){for(let e of this._entries)yield e}},$s=class{static wrap({type:e,object:r}){let n=`${e} ${r.length}\0`,i=n.length,s=i+r.length,a=new Uint8Array(s);for(let o=0;o>=1,i+=8;return n}function GE(t,e){let r=t.readUInt8(),n=128,i=15,s=112;if(r&n){let a=UE(t,r&i,4),o=UE(t,(r&s)>>4,3);return o===0&&(o=65536),e.slice(a,a+o)}else return t.slice(r)}function b8(t){let e=[t];return{next(){return Promise.resolve({done:e.length===0,value:e.pop()})},return(){return e=[],{}},[Symbol.asyncIterator](){return this}}}function ck(t){return t[Symbol.asyncIterator]?t[Symbol.asyncIterator]():t[Symbol.iterator]?t[Symbol.iterator]():t.next?t:b8(t)}var Id=class{constructor(e){if(typeof Buffer=="undefined")throw new Error("Missing Buffer dependency");this.stream=ck(e),this.buffer=null,this.cursor=0,this.undoCursor=0,this.started=!1,this._ended=!1,this._discardedBytes=0}eof(){return this._ended&&this.cursor===this.buffer.length}tell(){return this._discardedBytes+this.cursor}async byte(){if(!this.eof()&&(this.started||(await this._init()),!(this.cursor===this.buffer.length&&(await this._loadnext(),this._ended))))return this._moveCursor(1),this.buffer[this.undoCursor]}async chunk(){if(!this.eof()&&(this.started||(await this._init()),!(this.cursor===this.buffer.length&&(await this._loadnext(),this._ended))))return this._moveCursor(this.buffer.length),this.buffer.slice(this.undoCursor,this.cursor)}async read(e){if(!this.eof())return this.started||(await this._init()),this.cursor+e>this.buffer.length&&(this._trim(),await this._accumulate(e)),this._moveCursor(e),this.buffer.slice(this.undoCursor,this.cursor)}async skip(e){this.eof()||(this.started||(await this._init()),this.cursor+e>this.buffer.length&&(this._trim(),await this._accumulate(e)),this._moveCursor(e))}async undo(){this.cursor=this.undoCursor}async _next(){this.started=!0;let{done:e,value:r}=await this.stream.next();return e&&(this._ended=!0,!r)?Buffer.alloc(0):(r&&(r=Buffer.from(r)),r)}_trim(){this.buffer=this.buffer.slice(this.undoCursor),this.cursor-=this.undoCursor,this._discardedBytes+=this.undoCursor,this.undoCursor=0}_moveCursor(e){this.undoCursor=this.cursor,this.cursor+=e,this.cursor>this.buffer.length&&(this.cursor=this.buffer.length)}async _accumulate(e){if(this._ended)return;let r=[this.buffer];for(;this.cursor+e>_8(r);){let n=await this._next();if(this._ended)break;r.push(n)}this.buffer=Buffer.concat(r)}async _loadnext(){this._discardedBytes+=this.buffer.length,this.undoCursor=0,this.cursor=0,this.buffer=await this._next()}async _init(){this.buffer=await this._next()}};function _8(t){return t.reduce((e,r)=>e+r.length,0)}async function x8(t,e){let r=new Id(t),n=await r.read(4);if(n=n.toString("utf8"),n!=="PACK")throw new he(`Invalid PACK header '${n}'`);let i=await r.read(4);if(i=i.readUInt32BE(0),i!==2)throw new he(`Invalid packfile version: ${i}`);let s=await r.read(4);if(s=s.readUInt32BE(0),!(s<1))for(;!r.eof()&&s--;){let a=r.tell(),{type:o,length:l,ofs:c,reference:u}=await S8(r),f=new xv.Inflate;for(;!f.result;){let d=await r.chunk();if(!d)break;if(f.push(d,!1),f.err)throw new he(`Pako error: ${f.msg}`);if(f.result){if(f.result.length!==l)throw new he("Inflated object size is different from that stated in packfile.");await r.undo(),await r.read(d.length-f.strm.avail_in);let h=r.tell();await e({data:f.result,type:o,num:s,offset:a,end:h,reference:u,ofs:c})}}}}async function S8(t){let e=await t.byte(),r=e>>4&7,n=e&15;if(e&128){let a=4;do e=await t.byte(),n|=(e&127)<i+1<<7|s,-1)}function C8(t,e){let r=e,n=4,i=null;do i=t.readUInt8(),r|=(i&127)<2048*1024*1024)throw new he("To keep implementation simple, I haven't implemented the layer 5 feature needed to support packfiles > 2GB in size.");n.seek(n.tell()+4*255);let a=n.readUInt32BE(),o=[];for(let u=0;u{u===null&&(u=x);let E=Math.floor((u-x)*100/u);E!==f&&n&&(await n({phase:"Receiving objects",loaded:u-x,total:u})),f=E,w=i[w],["commit","tree","blob","tag"].includes(w)?s[k]={type:w,offset:k}:w==="ofs-delta"?s[k]={type:w,offset:k}:w==="ref-delta"&&(s[k]={type:w,offset:k})});let d=Object.keys(s).map(Number);for(let[v,w]of d.entries()){let b=v+1===d.length?e.byteLength-20:d[v+1],k=s[w],x=G3.buf(e.slice(w,b))>>>0;k.end=b,k.crc=x}let h=new t({pack:Promise.resolve(e),packfileSha:a,crcs:l,hashes:o,offsets:c,getExternalRefDelta:r});f=null;let m=0,g=[0,0,0,0,0,0,0,0,0,0,0,0];for(let v in s){v=Number(v);let w=Math.floor(m*100/u);w!==f&&n&&(await n({phase:"Resolving deltas",loaded:m,total:u})),m++,f=w;let b=s[v];if(!b.oid)try{h.readDepth=0,h.externalReadDepth=0;let{type:k,object:x}=await h.readSlice({start:v});g[h.readDepth]+=1;let E=await zi($s.wrap({type:k,object:x}));b.oid=E,o.push(E),c.set(E,v),l[E]=b.crc}catch(k){continue}}return o.sort(),h}async toBuffer(){let e=[],r=(c,u)=>{e.push(Buffer.from(c,u))};r("ff744f63","hex"),r("00000002","hex");let n=new mn(Buffer.alloc(256*4));for(let c=0;c<256;c++){let u=0;for(let f of this.hashes)parseInt(f.slice(0,2),16)<=c&&u++;n.writeUInt32BE(u)}e.push(n.buffer);for(let c of this.hashes)r(c,"hex");let i=new mn(Buffer.alloc(this.hashes.length*4));for(let c of this.hashes)i.writeUInt32BE(this.crcs[c]);e.push(i.buffer);let s=new mn(Buffer.alloc(this.hashes.length*4));for(let c of this.hashes)s.writeUInt32BE(this.offsets.get(c));e.push(s.buffer),r(this.packfileSha,"hex");let a=Buffer.concat(e),o=await zi(a),l=Buffer.alloc(20);return l.write(o,"hex"),Buffer.concat([a,l])}async load({pack:e}){this.pack=e}async unload(){this.pack=null}async read({oid:e}){if(!this.offsets.get(e)){if(this.getExternalRefDelta)return this.externalReadDepth++,this.getExternalRefDelta(e);throw new he(`Could not read object ${e} from packfile`)}let r=this.offsets.get(e);return this.readSlice({start:r})}async readSlice({start:e}){if(this.offsetCache[e])return Object.assign({},this.offsetCache[e]);this.readDepth++;let r={16:"commit",32:"tree",48:"blob",64:"tag",96:"ofs_delta",112:"ref_delta"};if(!this.pack)throw new he("Tried to read from a GitPackIndex with no packfile loaded into memory");let n=(await this.pack).slice(e),i=new mn(n),s=i.readUInt8(),a=s&112,o=r[a];if(o===void 0)throw new he("Unrecognized type: 0b"+a.toString(2));let l=s&15,c=l;s&128&&(c=C8(i,l));let f=null,d=null;if(o==="ofs_delta"){let m=A8(i),g=e-m;({object:f,type:o}=await this.readSlice({start:g}))}if(o==="ref_delta"){let m=i.slice(20).toString("hex");({object:f,type:o}=await this.read({oid:m}))}let h=n.slice(i.tell());if(d=Buffer.from(await uk(h)),d.byteLength!==c)throw new he(`Packfile told us object would have length ${c} but it had length ${d.byteLength}`);return f&&(d=Buffer.from(y8(d,f))),this.readDepth>3&&(this.offsetCache[e]={type:o,object:d}),{type:o,format:"content",object:d}}},Cd=Symbol("PackfileCache");async function T8({fs:t,filename:e,getExternalRefDelta:r,emitter:n,emitterPrefix:i}){let s=await t.read(e);return Xc.fromIdx({idx:s,getExternalRefDelta:r})}function Sv({fs:t,cache:e,filename:r,getExternalRefDelta:n,emitter:i,emitterPrefix:s}){e[Cd]||(e[Cd]=new Map);let a=e[Cd].get(r);return a||(a=T8({fs:t,filename:r,getExternalRefDelta:n,emitter:i,emitterPrefix:s}),e[Cd].set(r,a)),a}async function P8({fs:t,cache:e,gitdir:r,oid:n,format:i="content",getExternalRefDelta:s}){let a=await t.readdir(D(r,"objects/pack"));a=a.filter(o=>o.endsWith(".idx"));for(let o of a){let l=`${r}/objects/pack/${o}`,c=await Sv({fs:t,cache:e,filename:l,getExternalRefDelta:s});if(c.error)throw new he(c.error);if(c.offsets.has(n)){if(!c.pack){let f=l.replace(/idx$/,"pack");c.pack=t.read(f)}let u=await c.read({oid:n,getExternalRefDelta:s});return u.format="content",u.source=`objects/pack/${o.replace(/idx$/,"pack")}`,u}}return null}async function Xe({fs:t,cache:e,gitdir:r,oid:n,format:i="content"}){let s=u=>Xe({fs:t,cache:e,gitdir:r,oid:u}),a;if(n==="4b825dc642cb6eb9a060e54bf8d69288fbee4904"&&(a={format:"wrapped",object:Buffer.from("tree 0\0")}),a||(a=await lk({fs:t,gitdir:r,oid:n})),!a){if(a=await P8({fs:t,cache:e,gitdir:r,oid:n,getExternalRefDelta:s}),!a)throw new Be(n);return a}if(i==="deflated"||(a.format==="deflated"&&(a.object=Buffer.from(await uk(a.object)),a.format="wrapped"),i==="wrapped"))return a;let o=await zi(a.object);if(o!==n)throw new he(`SHA check failed! Expected ${n}, computed ${o}`);let{object:l,type:c}=$s.unwrap(a.object);if(a.type=c,a.object=l,a.format="content",i==="content")return a;throw new he(`invalid requested format "${i}"`)}var Mn=class t extends Re{constructor(e,r,n=!0){super(`Failed to create ${e} at ${r} because it already exists.${n?` (Hint: use 'force: true' parameter to overwrite existing ${e}.)`:""}`),this.code=this.name=t.code,this.data={noun:e,where:r,canForce:n}}};Mn.code="AlreadyExistsError";var Zc=class t extends Re{constructor(e,r,n){super(`Found multiple ${e} matching "${r}" (${n.join(", ")}). Use a longer abbreviation length to disambiguate them.`),this.code=this.name=t.code,this.data={nouns:e,short:r,matches:n}}};Zc.code="AmbiguousError";var Kc=class t extends Re{constructor(e){super(`以下文件的本地更改将在检出时被覆盖:${e.join(", ")}`),this.code=this.name=t.code,this.data={filepaths:e}}};Kc.code="CheckoutConflictError";var Qc=class t extends Re{constructor(e,r){super(`Failed to checkout "${e}" because commit ${r} is not available locally. Do a git fetch to make the branch available locally.`),this.code=this.name=t.code,this.data={ref:e,oid:r}}};Qc.code="CommitNotFetchedError";var Jc=class t extends Re{constructor(){super("从 git 服务器收到空响应."),this.code=this.name=t.code,this.data={}}};Jc.code="EmptyServerResponseError";var eu=class t extends Re{constructor(){super("无法进行简单的快进合并."),this.code=this.name=t.code,this.data={}}};eu.code="FastForwardError";var tu=class t extends Re{constructor(e,r){super(`一个或多个分支未更新: ${e}`),this.code=this.name=t.code,this.data={prettyDetails:e,result:r}}};tu.code="GitPushError";var Yo=class t extends Re{constructor(e,r,n){super(`HTTP Error: ${e} ${r}`),this.code=this.name=t.code,this.data={statusCode:e,statusMessage:r,response:n}}};Yo.code="HttpError";var Is=class t extends Re{constructor(e){let r="invalid filepath";e==="leading-slash"||e==="trailing-slash"?r="\"filepath\" parameter should not include leading or trailing directory separators because these can cause problems on some platforms.":e==="directory"&&(r="\"filepath\" should not be a directory."),super(r),this.code=this.name=t.code,this.data={reason:e}}};Is.code="InvalidFilepathError";var Dn=class t extends Re{constructor(e,r){super(`"${e}" would be an invalid git reference. (Hint: a valid alternative would be "${r}".)`),this.code=this.name=t.code,this.data={ref:e,suggestion:r}}};Dn.code="InvalidRefNameError";var ru=class t extends Re{constructor(e){super(`超出了最大搜索深度 ${e}.`),this.code=this.name=t.code,this.data={depth:e}}};ru.code="MaxDepthError";var Xo=class t extends Re{constructor(){super("尚不支持带有冲突的合并."),this.code=this.name=t.code,this.data={}}};Xo.code="MergeNotSupportedError";var Zo=class t extends Re{constructor(e,r,n,i){super(`自动合并失败,以下文件存在一个或多个合并冲突: ${e.toString()}。解决冲突后提交结果。`),this.code=this.name=t.code,this.data={filepaths:e,bothModified:r,deleteByUs:n,deleteByTheirs:i}}};Zo.code="MergeConflictError";var Kt=class t extends Re{constructor(e){super(`在参数或 .git/config 文件中未提供 ${e} 的名称.`),this.code=this.name=t.code,this.data={role:e}}};Kt.code="MissingNameError";var Sr=class t extends Re{constructor(e){super(`该函数需要一个 "${e}" 参数,但未提供.`),this.code=this.name=t.code,this.data={parameter:e}}};Sr.code="MissingParameterError";var nu=class t extends Re{constructor(e){super("该方法抛出了多个错误。请参阅 \"errors\" 属性查看更多"),this.code=this.name=t.code,this.data={errors:e},this.errors=e}};nu.code="MultipleGitError";var Ea=class t extends Re{constructor(e,r){super(`Expected "${e}" but received "${r}".`),this.code=this.name=t.code,this.data={expected:e,actual:r}}};Ea.code="ParseError";var Ko=class t extends Re{constructor(e){let r="";e==="not-fast-forward"?r=" because it was not a simple fast-forward":e==="tag-exists"&&(r=" because tag already exists"),super(`Push rejected${r}. Use "force: true" to override.`),this.code=this.name=t.code,this.data={reason:e}}};Ko.code="PushRejectedError";var Ps=class t extends Re{constructor(e,r){super(`Remote does not support the "${e}" so the "${r}" parameter cannot be used.`),this.code=this.name=t.code,this.data={capability:e,parameter:r}}};Ps.code="RemoteCapabilityError";var iu=class t extends Re{constructor(e,r){super(`远程未使用 "智能" HTTP 协议回复。预期收到 "001e# service=git-upload-pack",但收到: ${e}`),this.code=this.name=t.code,this.data={preview:e,response:r}}};iu.code="SmartHttpError";var su=class t extends Re{constructor(e,r,n){super(`Git remote "${e}" uses an unrecognized transport protocol: "${r}"`),this.code=this.name=t.code,this.data={url:e,transport:r,suggestion:n}}};su.code="UnknownTransportError";var au=class t extends Re{constructor(e){super(`无法解析远程 URL: "${e}"`),this.code=this.name=t.code,this.data={url:e}}};au.code="UrlParseError";var Qo=class t extends Re{constructor(){super("操作已取消."),this.code=this.name=t.code,this.data={}}};Qo.code="UserCanceledError";var ou=class t extends Re{constructor(e){super(`无法合并索引: '${e}' 的条目未更新。请重置索引条目为 HEAD,或暂存您的未暂存更改.`),this.code=this.name=t.code,this.data={filepath:e}}};ou.code="IndexResetError";var lu=class t extends Re{constructor(e){super(`"${e}" 没有指向任何提交。您可能正在一个尚未有提交的仓库中工作.`),this.code=this.name=t.code,this.data={ref:e}}};lu.code="NoCommitError";var fk=Object.freeze({__proto__:null,AlreadyExistsError:Mn,AmbiguousError:Zc,CheckoutConflictError:Kc,CommitNotFetchedError:Qc,EmptyServerResponseError:Jc,FastForwardError:eu,GitPushError:tu,HttpError:Yo,InternalError:he,InvalidFilepathError:Is,InvalidOidError:Rs,InvalidRefNameError:Dn,MaxDepthError:ru,MergeNotSupportedError:Xo,MergeConflictError:Zo,MissingNameError:Kt,MissingParameterError:Sr,MultipleGitError:nu,NoRefspecError:Yc,NotFoundError:Be,ObjectTypeError:fr,ParseError:Ea,PushRejectedError:Ko,RemoteCapabilityError:Ps,SmartHttpError:iu,UnknownTransportError:su,UnsafeFilepathError:zo,UrlParseError:au,UserCanceledError:Qo,UnmergedPathsError:Vc,IndexResetError:ou,NoCommitError:lu});function mv({name:t,email:e,timestamp:r,timezoneOffset:n}){return n=R8(n),`${t} <${e}> ${r} ${n}`}function R8(t){let e=$8(I8(t));t=Math.abs(t);let r=Math.floor(t/60);t-=r*60;let n=String(r),i=String(t);return n.length<2&&(n="0"+n),i.length<2&&(i="0"+i),(e===-1?"-":"+")+n+i}function $8(t){return Math.sign(t)||(Object.is(t,-0)?-1:1)}function I8(t){return t===0?t:-t}function Wi(t){return t=t.replace(/\r/g,""),t=t.replace(/^\n+/,""),t=t.replace(/\n+$/,"")+` `,t}function Fd(t){let[,e,r,n,i]=t.match(/^(.*) <(.*)> (.*) (.*)$/);return{name:e,email:r,timestamp:Number(n),timezoneOffset:F8(i)}}function F8(t){let[,e,r,n]=t.match(/(\+|-)(\d\d)(\d\d)/);return n=(e==="+"?1:-1)*(Number(r)*60+Number(n)),O8(n)}function O8(t){return t===0?t:-t}var Zr=class t{constructor(e){if(typeof e=="string")this._tag=e;else if(Buffer.isBuffer(e))this._tag=e.toString("utf8");else if(typeof e=="object")this._tag=t.render(e);else throw new he("invalid type passed to GitAnnotatedTag constructor")}static from(e){return new t(e)}static render(e){return`object ${e.object} type ${e.type} tag ${e.tag} tagger ${mv(e.tagger)} ${e.message} ${e.gpgsig?e.gpgsig:""}`}justHeaders(){return this._tag.slice(0,this._tag.indexOf(` `))}message(){let e=this.withoutSignature();return e.slice(e.indexOf(` `)+2)}parse(){return Object.assign(this.headers(),{message:this.message(),gpgsig:this.gpgsig()})}render(){return this._tag}headers(){let e=this.justHeaders().split(` `),r=[];for(let i of e)i[0]===" "?r[r.length-1]+=` `+i.slice(1):r.push(i);let n={};for(let i of r){let s=i.slice(0,i.indexOf(" ")),a=i.slice(i.indexOf(" ")+1);Array.isArray(n[s])?n[s].push(a):n[s]=a}return n.tagger&&(n.tagger=Fd(n.tagger)),n.committer&&(n.committer=Fd(n.committer)),n}withoutSignature(){let e=Wi(this._tag);return e.indexOf(` -----BEGIN PGP SIGNATURE-----`)===-1?e:e.slice(0,e.lastIndexOf(` -----BEGIN PGP SIGNATURE-----`))}gpgsig(){if(this._tag.indexOf(` -----BEGIN PGP SIGNATURE-----`)===-1)return;let e=this._tag.slice(this._tag.indexOf("-----BEGIN PGP SIGNATURE-----"),this._tag.indexOf("-----END PGP SIGNATURE-----")+27);return Wi(e)}payload(){return this.withoutSignature()+` `}toObject(){return Buffer.from(this._tag,"utf8")}static async sign(e,r,n){let i=e.payload(),{signature:s}=await r({payload:i,secretKey:n});s=Wi(s);let a=i+s;return t.from(a)}};function nv(t){return t.trim().split(` `).map(e=>" "+e).join(` `)+` `}function M8(t){return t.split(` `).map(e=>e.replace(/^ /,"")).join(` `)}var kr=class t{constructor(e){if(typeof e=="string")this._commit=e;else if(Buffer.isBuffer(e))this._commit=e.toString("utf8");else if(typeof e=="object")this._commit=t.render(e);else throw new he("invalid type passed to GitCommit constructor")}static fromPayloadSignature({payload:e,signature:r}){let n=t.justHeaders(e),i=t.justMessage(e),s=Wi(n+` gpgsig`+nv(r)+` `+i);return new t(s)}static from(e){return new t(e)}toObject(){return Buffer.from(this._commit,"utf8")}headers(){return this.parseHeaders()}message(){return t.justMessage(this._commit)}parse(){return Object.assign({message:this.message()},this.headers())}static justMessage(e){return Wi(e.slice(e.indexOf(` `)+2))}static justHeaders(e){return e.slice(0,e.indexOf(` `))}parseHeaders(){let e=t.justHeaders(this._commit).split(` `),r=[];for(let i of e)i[0]===" "?r[r.length-1]+=` `+i.slice(1):r.push(i);let n={parent:[]};for(let i of r){let s=i.slice(0,i.indexOf(" ")),a=i.slice(i.indexOf(" ")+1);Array.isArray(n[s])?n[s].push(a):n[s]=a}return n.author&&(n.author=Fd(n.author)),n.committer&&(n.committer=Fd(n.committer)),n}static renderHeaders(e){let r="";if(e.tree?r+=`tree ${e.tree} `:r+=`tree 4b825dc642cb6eb9a060e54bf8d69288fbee4904 `,e.parent){if(e.parent.length===void 0)throw new he("commit 'parent' property should be an array");for(let s of e.parent)r+=`parent ${s} `}let n=e.author;r+=`author ${mv(n)} `;let i=e.committer||e.author;return r+=`committer ${mv(i)} `,e.gpgsig&&(r+="gpgsig"+nv(e.gpgsig)),r}static render(e){return t.renderHeaders(e)+` `+Wi(e.message)}render(){return this._commit}withoutSignature(){let e=Wi(this._commit);if(e.indexOf(` gpgsig`)===-1)return e;let r=e.slice(0,e.indexOf(` gpgsig`)),n=e.slice(e.indexOf(`-----END PGP SIGNATURE----- `)+28);return Wi(r+` `+n)}isolateSignature(){let e=this._commit.slice(this._commit.indexOf("-----BEGIN PGP SIGNATURE-----"),this._commit.indexOf("-----END PGP SIGNATURE-----")+27);return M8(e)}static async sign(e,r,n){let i=e.withoutSignature(),s=t.justMessage(e._commit),{signature:a}=await r({payload:i,secretKey:n});a=Wi(a);let l=t.justHeaders(e._commit)+` gpgsig`+nv(a)+` `+s;return t.from(l)}};async function Jo({fs:t,cache:e,gitdir:r,oid:n}){if(n==="4b825dc642cb6eb9a060e54bf8d69288fbee4904")return{tree:Er.from([]),oid:n};let{type:i,object:s}=await Xe({fs:t,cache:e,gitdir:r,oid:n});if(i==="tag")return n=Zr.from(s).parse().object,Jo({fs:t,cache:e,gitdir:r,oid:n});if(i==="commit")return n=kr.from(s).parse().tree,Jo({fs:t,cache:e,gitdir:r,oid:n});if(i!=="tree")throw new fr(n,i,"tree");return{tree:Er.from(s),oid:n}}var gv=class{constructor({fs:e,gitdir:r,ref:n,cache:i}){this.fs=e,this.cache=i,this.gitdir=r,this.mapPromise=(async()=>{let a=new Map,o;try{o=await z.resolve({fs:e,gitdir:r,ref:n})}catch(c){c instanceof Be&&(o="4b825dc642cb6eb9a060e54bf8d69288fbee4904")}let l=await Jo({fs:e,cache:this.cache,gitdir:r,oid:o});return l.type="tree",l.mode="40000",a.set(".",l),a})();let s=this;this.ConstructEntry=class{constructor(o){this._fullpath=o,this._type=!1,this._mode=!1,this._stat=!1,this._content=!1,this._oid=!1}async type(){return s.type(this)}async mode(){return s.mode(this)}async stat(){return s.stat(this)}async content(){return s.content(this)}async oid(){return s.oid(this)}}}async readdir(e){let r=e._fullpath,{fs:n,cache:i,gitdir:s}=this,a=await this.mapPromise,o=a.get(r);if(!o)throw new Error(`No obj for ${r}`);let l=o.oid;if(!l)throw new Error(`No oid for obj ${JSON.stringify(o)}`);if(o.type!=="tree")return null;let{type:c,object:u}=await Xe({fs:n,cache:i,gitdir:s,oid:l});if(c!==o.type)throw new fr(l,c,o.type);let f=Er.from(u);for(let d of f)a.set(D(r,d.path),d);return f.entries().map(d=>D(r,d.path))}async type(e){if(e._type===!1){let r=await this.mapPromise,{type:n}=r.get(e._fullpath);e._type=n}return e._type}async mode(e){if(e._mode===!1){let r=await this.mapPromise,{mode:n}=r.get(e._fullpath);e._mode=ik(parseInt(n,8))}return e._mode}async stat(e){}async content(e){if(e._content===!1){let r=await this.mapPromise,{fs:n,cache:i,gitdir:s}=this,o=r.get(e._fullpath).oid,{type:l,object:c}=await Xe({fs:n,cache:i,gitdir:s,oid:o});l!=="blob"?e._content=void 0:e._content=new Uint8Array(c)}return e._content}async oid(e){if(e._oid===!1){let n=(await this.mapPromise).get(e._fullpath);e._oid=n.oid}return e._oid}};function Xr({ref:t="HEAD"}={}){let e=Object.create(null);return Object.defineProperty(e,Bd,{value:function({fs:r,gitdir:n,cache:i}){return new gv({fs:r,gitdir:n,ref:t,cache:i})}}),Object.freeze(e),e}var vv=class{constructor({fs:e,dir:r,gitdir:n,cache:i}){this.fs=e,this.cache=i,this.dir=r,this.gitdir=n,this.config=null;let s=this;this.ConstructEntry=class{constructor(o){this._fullpath=o,this._type=!1,this._mode=!1,this._stat=!1,this._content=!1,this._oid=!1}async type(){return s.type(this)}async mode(){return s.mode(this)}async stat(){return s.stat(this)}async content(){return s.content(this)}async oid(){return s.oid(this)}}}async readdir(e){let r=e._fullpath,{fs:n,dir:i}=this,s=await n.readdir(D(i,r));return s===null?null:s.map(a=>D(r,a))}async type(e){return e._type===!1&&(await e.stat()),e._type}async mode(e){return e._mode===!1&&(await e.stat()),e._mode}async stat(e){if(e._stat===!1){let{fs:r,dir:n}=this,i=await r.lstat(`${n}/${e._fullpath}`);if(!i)throw new Error(`ENOENT: no such file or directory, lstat '${e._fullpath}'`);let s=i.isDirectory()?"tree":"blob";s==="blob"&&!i.isFile()&&!i.isSymbolicLink()&&(s="special"),e._type=s,i=Vo(i),e._mode=i.mode,i.size===-1&&e._actualSize&&(i.size=e._actualSize),e._stat=i}return e._stat}async content(e){if(e._content===!1){let{fs:r,dir:n,gitdir:i}=this;if((await e.type())==="tree")e._content=void 0;else{let s;if((await e.mode())>>12===10)s=await r.readlink(`${n}/${e._fullpath}`);else{let o=await(await this._getGitConfig(r,i)).get("core.autocrlf");s=await r.read(`${n}/${e._fullpath}`,{autocrlf:o})}e._actualSize=s.length,e._stat&&e._stat.size===-1&&(e._stat.size=e._actualSize),e._content=new Uint8Array(s)}}return e._content}async oid(e){if(e._oid===!1){let r=this,{fs:n,gitdir:i,cache:s}=this,a;await ht.acquire({fs:n,gitdir:i,cache:s},async function(o){let l=o.entriesMap.get(e._fullpath),c=await e.stat(),f=await(await r._getGitConfig(n,i)).get("core.filemode"),d=typeof process!="undefined"?process.platform!=="win32":!0;if(!l||Td(c,l,f,d)){let h=await e.content();h===void 0?a=void 0:(a=await zi($s.wrap({type:"blob",object:h})),l&&a===l.oid&&(!f||c.mode===l.mode)&&Td(c,l,f,d)&&o.insert({filepath:e._fullpath,stats:c,oid:a}))}else a=l.oid}),e._oid=a}return e._oid}async _getGitConfig(e,r){return this.config?this.config:(this.config=await lt.get({fs:e,gitdir:r}),this.config)}};function sl(){let t=Object.create(null);return Object.defineProperty(t,Bd,{value:function({fs:e,dir:r,gitdir:n,cache:i}){return new vv({fs:e,dir:r,gitdir:n,cache:i})}}),Object.freeze(t),t}function D8(t,e){let r=e-t;return Array.from({length:r},(n,i)=>t+i)}var dk=typeof Array.prototype.flat=="undefined"?t=>t.reduce((e,r)=>e.concat(r),[]):t=>t.flat(),wv=class{constructor(){this.value=null}consider(e){e!=null&&(this.value===null?this.value=e:ec,reduce:a=async(l,c)=>{let u=dk(c);return l!==void 0&&u.unshift(l),u},iterate:o=(l,c)=>Promise.all([...c].map(l))}){let l=i.map(h=>h[Bd]({fs:t,dir:r,gitdir:n,cache:e})),c=new Array(l.length).fill("."),u=D8(0,l.length),f=async h=>{u.forEach(v=>{let w=h[v];h[v]=w&&new l[v].ConstructEntry(w)});let g=(await Promise.all(u.map(v=>{let w=h[v];return w?l[v].readdir(w):[]}))).map(v=>(v===null?[]:v)[Symbol.iterator]());return{entries:h,children:L8(g)}},d=async h=>{let{entries:m,children:g}=await f(h),v=m.find(b=>b&&b._fullpath)._fullpath,w=await s(v,m);if(w!==null){let b=await o(d,g);return b=b.filter(k=>k!==void 0),a(w,b)}};return d(c)}async function yv(t,e){let r=await t.readdir(e);r==null?await t.rm(e):r.length?await Promise.all(r.map(n=>{let i=D(e,n);return t.lstat(i).then(s=>{if(s)return s.isDirectory()?yv(t,i):t.rm(i)})})).then(()=>t.rmdir(e)):await t.rmdir(e)}function N8(t){return B8(t)&&jE(t.then)&&jE(t.catch)}function B8(t){return t&&typeof t=="object"}function jE(t){return typeof t=="function"}function qE(t){return N8((r=>{try{return r.readFile().catch(n=>n)}catch(n){return n}})(t))}var WE=["readFile","writeFile","mkdir","rmdir","unlink","stat","lstat","readdir","readlink","symlink"];function zE(t,e){if(qE(e))for(let r of WE)t[`_${r}`]=e[r].bind(e);else for(let r of WE)t[`_${r}`]=kd(e[r].bind(e));qE(e)?(e.cp&&(t._cp=e.cp.bind(e)),e.rm?t._rm=e.rm.bind(e):e.rmdir.length>1?t._rm=e.rmdir.bind(e):t._rm=yv.bind(null,t)):(e.cp&&(t._cp=kd(e.cp.bind(e))),e.rm?t._rm=kd(e.rm.bind(e)):e.rmdir.length>2?t._rm=kd(e.rmdir.bind(e)):t._rm=yv.bind(null,t))}var Q=class{constructor(e){if(typeof e._original_unwrapped_fs!="undefined")return e;let r=Object.getOwnPropertyDescriptor(e,"promises");r&&r.enumerable?zE(this,e.promises):zE(this,e),this._original_unwrapped_fs=e}async exists(e,r={}){try{return await this._stat(e),!0}catch(n){if(n.code==="ENOENT"||n.code==="ENOTDIR"||(n.code||"").includes("ENS"))return!1;throw console.log("\"FileSystem.exists()\"函数中出现未经处理的错误",n),n}}async read(e,r={}){try{let n=await this._readFile(e,r);if(r.autocrlf==="true")try{n=new TextDecoder("utf8",{fatal:!0}).decode(n),n=n.replace(/\r\n/g,` `),n=new TextEncoder().encode(n)}catch(i){}return typeof n!="string"&&(n=Buffer.from(n)),n}catch(n){return null}}async write(e,r,n={}){try{await this._writeFile(e,r,n)}catch(i){await this.mkdir(Sa(e)),await this._writeFile(e,r,n)}}async mkdir(e,r=!1){try{await this._mkdir(e)}catch(n){if(n===null||n.code==="EEXIST")return;if(r)throw n;if(n.code==="ENOENT"){let i=Sa(e);if(i==="."||i==="/"||i===e)throw n;await this.mkdir(i),await this.mkdir(e,!0)}}}async rm(e){try{await this._unlink(e)}catch(r){if(r.code!=="ENOENT")throw r}}async rmdir(e,r){try{r&&r.recursive?await this._rm(e,r):await this._rmdir(e)}catch(n){if(n.code!=="ENOENT")throw n}}async readdir(e){try{let r=await this._readdir(e);return r.sort(Nd),r}catch(r){return r.code==="ENOTDIR"?null:[]}}async readdirDeep(e){let r=await this._readdir(e);return(await Promise.all(r.map(async i=>{let s=e+"/"+i;return(await this._stat(s)).isDirectory()?this.readdirDeep(s):s}))).reduce((i,s)=>i.concat(s),[])}async lstat(e){try{return await this._lstat(e)}catch(r){if(r.code==="ENOENT"||(r.code||"").includes("ENS"))return null;throw r}}async readlink(e,r={encoding:"buffer"}){try{let n=await this._readlink(e,r);return Buffer.isBuffer(n)?n:Buffer.from(n)}catch(n){if(n.code==="ENOENT"||(n.code||"").includes("ENS"))return null;throw n}}async writelink(e,r){return this._symlink(r.toString("utf8"),e)}};function T(t,e){if(e===void 0)throw new Sr(t)}async function J({fsp:t,dotgit:e}){T("fsp",t),T("dotgit",e);let r=await t._stat(e).catch(()=>({isFile:()=>!1,isDirectory:()=>!1}));return r.isDirectory()?e:r.isFile()?t._readFile(e,"utf8").then(n=>n.trimRight().substr(8)).then(n=>D(Sa(e),n)):e}async function Od(t,e){return!t&&!e?!1:t&&!e||!t&&e?!0:!((await t.type())==="tree"&&(await e.type())==="tree"||(await t.type())===(await e.type())&&(await t.mode())===(await e.mode())&&(await t.oid())===(await e.oid()))}async function hk({fs:t,dir:e,gitdir:r=D(e,".git"),commit:n="HEAD",cache:i={}}){try{T("fs",t),T("dir",e),T("gitdir",r);let s=new Q(t),a=[Xr({ref:n}),sl(),Ca()],o=[],l=await J({fsp:s,dotgit:r});await ht.acquire({fs:s,gitdir:l,cache:i},async function(u){o=u.unmergedPaths});let c=await Fs({fs:s,cache:i,dir:e,gitdir:l,trees:a,map:async function(u,[f,d,h]){let m=!(await Od(d,h)),g=o.includes(u),v=!(await Od(h,f));if(m||g)return f?{path:u,mode:await f.mode(),oid:await f.oid(),type:await f.type(),content:await f.content()}:void 0;if(v)return!1;throw new ou(u)}});await ht.acquire({fs:s,gitdir:l,cache:i},async function(u){for(let f of c)if(f!==!1){if(!f){await s.rmdir(`${e}/${f.path}`,{recursive:!0}),u.delete({filepath:f.path});continue}if(f.type==="blob"){let d=new TextDecoder().decode(f.content);await s.write(`${e}/${f.path}`,d,{mode:f.mode}),u.insert({filepath:f.path,oid:f.oid,stage:0})}}})}catch(s){throw s.caller="git.abortMerge",s}}var Os=class{static async isIgnored({fs:e,dir:r,gitdir:n=D(r,".git"),filepath:i}){if(Pd(i)===".git")return!0;if(i===".")return!1;let s="",a=D(n,"info","exclude");(await e.exists(a))&&(s=await e.read(a,"utf8"));let o=[{gitignore:D(r,".gitignore"),filepath:i}],l=i.split("/").filter(Boolean);for(let u=1;u{let f=await(await lt.get({fs:o,gitdir:l})).get("core.autocrlf");return bv({dir:e,gitdir:l,fs:o,filepath:n,index:c,force:s,parallel:a,autocrlf:f})})}catch(o){throw o.caller="git.add",o}}async function bv({dir:t,gitdir:e,fs:r,filepath:n,index:i,force:s,parallel:a,autocrlf:o}){n=Array.isArray(n)?n:[n];let l=n.map(async d=>{if(!s&&(await Os.isIgnored({fs:r,dir:t,gitdir:e,filepath:d})))return;let h=await r.lstat(D(t,d));if(!h)throw new Be(d);if(h.isDirectory()){let m=await r.readdir(D(t,d));if(a){let g=m.map(v=>bv({dir:t,gitdir:e,fs:r,filepath:[D(d,v)],index:i,force:s,parallel:a,autocrlf:o}));await Promise.all(g)}else for(let g of m)await bv({dir:t,gitdir:e,fs:r,filepath:[D(d,g)],index:i,force:s,parallel:a,autocrlf:o})}else{let m=h.isSymbolicLink()?await r.readlink(D(t,d)).then(mk):await r.read(D(t,d),{autocrlf:o});if(m===null)throw new Be(d);let g=await Ar({fs:r,gitdir:e,type:"blob",object:m});i.insert({filepath:d,stats:h,oid:g})}}),c=await Promise.allSettled(l),u=c.filter(d=>d.status==="rejected").map(d=>d.reason);if(u.length>1)throw new nu(u);if(u.length===1)throw u[0];return c.filter(d=>d.status==="fulfilled"&&d.value).map(d=>d.value)}async function cu({fs:t,gitdir:e,path:r}){return(await lt.get({fs:t,gitdir:e})).get(r)}function vk(t,...e){for(let r of e)if(r)for(let n of Object.keys(r)){let i=r[n];i!==void 0&&(t[n]=i)}return t}async function Ms({fs:t,gitdir:e,author:r,commit:n}){let i=Math.floor(Date.now()/1e3),s={name:await cu({fs:t,gitdir:e,path:"user.name"}),email:(await cu({fs:t,gitdir:e,path:"user.email"}))||"",timestamp:i,timezoneOffset:new Date(i*1e3).getTimezoneOffset()},a=vk({},s,n?n.author:void 0,r);if(a.name!==void 0)return a}async function el({fs:t,gitdir:e,author:r,committer:n,commit:i}){let s=Math.floor(Date.now()/1e3),a={name:await cu({fs:t,gitdir:e,path:"user.name"}),email:(await cu({fs:t,gitdir:e,path:"user.email"}))||"",timestamp:s,timezoneOffset:new Date(s*1e3).getTimezoneOffset()},o=vk({},a,i?i.committer:void 0,r,n);if(o.name!==void 0)return o}async function wk({fs:t,cache:e,gitdir:r,oid:n}){let{type:i,object:s}=await Xe({fs:t,cache:e,gitdir:r,oid:n});if(i==="tag")return n=Zr.from(s).parse().object,wk({fs:t,cache:e,gitdir:r,oid:n});if(i!=="commit")throw new fr(n,i,"commit");return{commit:kr.from(s),oid:n}}async function tl({fs:t,cache:e,gitdir:r,oid:n}){let{commit:i,oid:s}=await wk({fs:t,cache:e,gitdir:r,oid:n});return{oid:s,commit:i.parse(),payload:i.withoutSignature()}}async function Hd({fs:t,cache:e,onSign:r,gitdir:n,message:i,author:s,committer:a,signingKey:o,amend:l=!1,dryRun:c=!1,noUpdateBranch:u=!1,ref:f,parent:d,tree:h}){let m=!1,g=!1;f||(g=!(await t.read(`${n}/HEAD`,{encoding:"utf8"})).startsWith("ref:"),f=await z.resolve({fs:t,gitdir:n,ref:"HEAD",depth:2}));let v,w;try{v=await z.resolve({fs:t,gitdir:n,ref:f}),w=await tl({fs:t,gitdir:n,oid:v,cache:{}})}catch(x){m=!0}if(l&&m)throw new lu(f);let b=l?await Ms({fs:t,gitdir:n,author:s,commit:w.commit}):await Ms({fs:t,gitdir:n,author:s});if(!b)throw new Kt("author");let k=l?await el({fs:t,gitdir:n,author:b,committer:a,commit:w.commit}):await el({fs:t,gitdir:n,author:b,committer:a});if(!k)throw new Kt("committer");return ht.acquire({fs:t,gitdir:n,cache:e,allowUnmerged:!1},async function(x){let A=ak(x.entries).get(".");if(h||(h=await yk({fs:t,gitdir:n,inode:A,dryRun:c})),d?d=await Promise.all(d.map(_=>z.resolve({fs:t,gitdir:n,ref:_}))):l?d=w.commit.parent:d=v?[v]:[],!i)if(l)i=w.commit.message;else throw new Sr("message");let y=kr.from({tree:h,parent:d,author:b,committer:k,message:i});o&&(y=await kr.sign(y,r,o));let S=await Ar({fs:t,gitdir:n,type:"commit",object:y.toObject(),dryRun:c});return!u&&!c&&(await z.writeRef({fs:t,gitdir:n,ref:g?"HEAD":f,value:S})),S})}async function yk({fs:t,gitdir:e,inode:r,dryRun:n}){let i=r.children;for(let l of i)l.type==="tree"&&(l.metadata.mode="040000",l.metadata.oid=await yk({fs:t,gitdir:e,inode:l,dryRun:n}));let s=i.map(l=>({mode:l.metadata.mode,path:l.basename,oid:l.metadata.oid,type:l.type})),a=Er.from(s);return await Ar({fs:t,gitdir:e,type:"tree",object:a.toObject(),dryRun:n})}async function fu({fs:t,cache:e,gitdir:r,oid:n,filepath:i}){if(i.startsWith("/"))throw new Is("leading-slash");if(i.endsWith("/"))throw new Is("trailing-slash");let s=n,a=await Jo({fs:t,cache:e,gitdir:r,oid:n}),o=a.tree;if(i==="")n=a.oid;else{let l=i.split("/");n=await bk({fs:t,cache:e,gitdir:r,tree:o,pathArray:l,oid:s,filepath:i})}return n}async function bk({fs:t,cache:e,gitdir:r,tree:n,pathArray:i,oid:s,filepath:a}){let o=i.shift();for(let l of n)if(l.path===o){if(i.length===0)return l.oid;{let{type:c,object:u}=await Xe({fs:t,cache:e,gitdir:r,oid:l.oid});if(c!=="tree")throw new fr(s,c,"tree",a);return n=Er.from(u),bk({fs:t,cache:e,gitdir:r,tree:n,pathArray:i,oid:s,filepath:a})}}throw new Be(`file or directory found at "${s}:${a}"`)}async function al({fs:t,cache:e,gitdir:r,oid:n,filepath:i=void 0}){i!==void 0&&(n=await fu({fs:t,cache:e,gitdir:r,oid:n,filepath:i}));let{tree:s,oid:a}=await Jo({fs:t,cache:e,gitdir:r,oid:n});return{oid:a,tree:s.entries()}}async function du({fs:t,gitdir:e,tree:r}){let n=Er.from(r).toObject();return await Ar({fs:t,gitdir:e,type:"tree",object:n,format:"content"})}async function j8({fs:t,cache:e,onSign:r,gitdir:n,ref:i,oid:s,note:a,force:o,author:l,committer:c,signingKey:u}){let f;try{f=await z.resolve({gitdir:n,fs:t,ref:i})}catch(w){if(!(w instanceof Be))throw w}let h=(await al({fs:t,cache:e,gitdir:n,oid:f||"4b825dc642cb6eb9a060e54bf8d69288fbee4904"})).tree;if(o)h=h.filter(w=>w.path!==s);else for(let w of h)if(w.path===s)throw new Mn("note",s);typeof a=="string"&&(a=Buffer.from(a,"utf8"));let m=await Ar({fs:t,gitdir:n,type:"blob",object:a,format:"content"});h.push({mode:"100644",path:s,oid:m,type:"blob"});let g=await du({fs:t,gitdir:n,tree:h});return await Hd({fs:t,cache:e,onSign:r,gitdir:n,ref:i,tree:g,parent:f&&[f],message:`注释由 'isomorphic-git addNote' 添加 `,author:l,committer:c,signingKey:u})}async function _k({fs:t,onSign:e,dir:r,gitdir:n=D(r,".git"),ref:i="refs/notes/commits",oid:s,note:a,force:o,author:l,committer:c,signingKey:u,cache:f={}}){try{T("fs",t),T("gitdir",n),T("oid",s),T("note",a),u&&T("onSign",e);let d=new Q(t),h=await Ms({fs:d,gitdir:n,author:l});if(!h)throw new Kt("author");let m=await el({fs:d,gitdir:n,author:h,committer:c});if(!m)throw new Kt("committer");let g=await J({fsp:d,dotgit:n});return await j8({fs:d,cache:f,onSign:e,gitdir:g,ref:i,oid:s,note:a,force:o,author:h,committer:m,signingKey:u})}catch(d){throw d.caller="git.addNote",d}}var q8=/(^|[/.])([/.]|$)|^@$|@{|[\x00-\x20\x7f~^:?*[\\]|\.lock(\/|$)/;function uu(t,e){if(typeof t!="string")throw new TypeError("Reference name must be a string");return!q8.test(t)&&(!!e||t.includes("/"))}async function xk({fs:t,gitdir:e,remote:r,url:n,force:i}){if(!uu(r,!0))throw new Dn(r,zc.clean(r));let s=await lt.get({fs:t,gitdir:e});if(!i&&(await s.getSubsections("remote")).includes(r)&&n!==(await s.get(`remote.${r}.url`)))throw new Mn("remote",r);await s.set(`remote.${r}.url`,n),await s.set(`remote.${r}.fetch`,`+refs/heads/*:refs/remotes/${r}/*`),await lt.save({fs:t,gitdir:e,config:s})}async function Sk({fs:t,dir:e,gitdir:r=D(e,".git"),remote:n,url:i,force:s=!1}){try{T("fs",t),T("gitdir",r),T("remote",n),T("url",i);let a=new Q(t),o=await J({fsp:a,dotgit:r});return await xk({fs:a,gitdir:o,remote:n,url:i,force:s})}catch(a){throw a.caller="git.addRemote",a}}async function W8({fs:t,cache:e,onSign:r,gitdir:n,ref:i,tagger:s,message:a=i,gpgsig:o,object:l,signingKey:c,force:u=!1}){if(i=i.startsWith("refs/tags/")?i:`refs/tags/${i}`,!u&&(await z.exists({fs:t,gitdir:n,ref:i})))throw new Mn("tag",i);let f=await z.resolve({fs:t,gitdir:n,ref:l||"HEAD"}),{type:d}=await Xe({fs:t,cache:e,gitdir:n,oid:f}),h=Zr.from({object:f,type:d,tag:i.replace("refs/tags/",""),tagger:s,message:a,gpgsig:o});c&&(h=await Zr.sign(h,r,c));let m=await Ar({fs:t,gitdir:n,type:"tag",object:h.toObject()});await z.writeRef({fs:t,gitdir:n,ref:i,value:m})}async function Ek({fs:t,onSign:e,dir:r,gitdir:n=D(r,".git"),ref:i,tagger:s,message:a=i,gpgsig:o,object:l,signingKey:c,force:u=!1,cache:f={}}){try{T("fs",t),T("gitdir",n),T("ref",i),c&&T("onSign",e);let d=new Q(t),h=await J({fsp:d,dotgit:n}),m=await Ms({fs:d,gitdir:h,author:s});if(!m)throw new Kt("tagger");return await W8({fs:d,cache:f,onSign:e,gitdir:h,ref:i,tagger:m,message:a,gpgsig:o,object:l,signingKey:c,force:u})}catch(d){throw d.caller="git.annotatedTag",d}}async function z8({fs:t,gitdir:e,ref:r,object:n,checkout:i=!1,force:s=!1}){if(!uu(r,!0))throw new Dn(r,zc.clean(r));let a=`refs/heads/${r}`;if(!s&&(await z.exists({fs:t,gitdir:e,ref:a})))throw new Mn("branch",r,!1);let o;try{o=await z.resolve({fs:t,gitdir:e,ref:n||"HEAD"})}catch(l){}o&&(await z.writeRef({fs:t,gitdir:e,ref:a,value:o})),i&&(await z.writeSymbolicRef({fs:t,gitdir:e,ref:"HEAD",value:a}))}async function kk({fs:t,dir:e,gitdir:r=D(e,".git"),ref:n,object:i,checkout:s=!1,force:a=!1}){try{T("fs",t),T("gitdir",r),T("ref",n);let o=new Q(t),l=await J({fsp:o,dotgit:r});return await z8({fs:o,gitdir:l,ref:n,object:i,checkout:s,force:a})}catch(o){throw o.caller="git.branch",o}}var Ak=(t,e)=>t==="."||e==null||e.length===0||e==="."?!0:e.length>=t.length?e.startsWith(t):t.startsWith(e);async function Ev({fs:t,cache:e,onProgress:r,onPostCheckout:n,dir:i,gitdir:s,remote:a,ref:o,filepaths:l,noCheckout:c,noUpdateHead:u,dryRun:f,force:d,track:h=!0,nonBlocking:m=!1,batchSize:g=100}){let v;if(n)try{v=await z.resolve({fs:t,gitdir:s,ref:"HEAD"})}catch(b){v="0000000000000000000000000000000000000000"}let w;try{w=await z.resolve({fs:t,gitdir:s,ref:o})}catch(b){if(o==="HEAD")throw b;let k=`${a}/${o}`;if(w=await z.resolve({fs:t,gitdir:s,ref:k}),h){let x=await lt.get({fs:t,gitdir:s});await x.set(`branch.${o}.remote`,a),await x.set(`branch.${o}.merge`,`refs/heads/${o}`),await lt.save({fs:t,gitdir:s,config:x})}await z.writeRef({fs:t,gitdir:s,ref:`refs/heads/${o}`,value:w})}if(!c){let b;try{b=await V8({fs:t,cache:e,onProgress:r,dir:i,gitdir:s,ref:o,force:d,filepaths:l})}catch(y){throw y instanceof Be&&y.data.what===w?new Qc(o,w):y}let k=b.filter(([y])=>y==="conflict").map(([y,S])=>S);if(k.length>0)throw new Kc(k);let x=b.filter(([y])=>y==="error").map(([y,S])=>S);if(x.length>0)throw new he(x.join(", "));if(f){n&&(await n({previousHead:v,newHead:w,type:l!=null&&l.length>0?"file":"branch"}));return}let E=0,A=b.length;if(await ht.acquire({fs:t,gitdir:s,cache:e},async function(y){await Promise.all(b.filter(([S])=>S==="delete"||S==="delete-index").map(async function([S,_]){let C=`${i}/${_}`;S==="delete"&&(await t.rm(C)),y.delete({filepath:_}),r&&(await r({phase:"Updating workdir",loaded:++E,total:A}))}))}),await ht.acquire({fs:t,gitdir:s,cache:e},async function(y){for(let[S,_]of b)if(S==="rmdir"||S==="rmdir-index"){let C=`${i}/${_}`;try{S==="rmdir"&&(await t.rmdir(C)),y.delete({filepath:_}),r&&(await r({phase:"Updating workdir",loaded:++E,total:A}))}catch(P){if(P.code==="ENOTEMPTY")console.log(`Did not delete ${_} because directory is not empty`);else throw P}}}),await Promise.all(b.filter(([y])=>y==="mkdir"||y==="mkdir-index").map(async function([y,S]){let _=`${i}/${S}`;await t.mkdir(_),r&&(await r({phase:"Updating workdir",loaded:++E,total:A}))})),m){let y=b.filter(([_])=>_==="create"||_==="create-index"||_==="update"||_==="mkdir-index"),S=await VE("Update Working Dir",y.map(([_,C,P,N,B])=>()=>X8({fs:t,cache:e,gitdir:s,dir:i},[_,C,P,N,B])),r,g);await ht.acquire({fs:t,gitdir:s,cache:e,allowUnmerged:!0},async function(_){await VE("Update Index",S.map(([C,P,N])=>()=>Y8({index:_,fullpath:C,oid:P,stats:N})),r,g)})}else await ht.acquire({fs:t,gitdir:s,cache:e,allowUnmerged:!0},async function(y){await Promise.all(b.filter(([S])=>S==="create"||S==="create-index"||S==="update"||S==="mkdir-index").map(async function([S,_,C,P,N]){let B=`${i}/${_}`;try{if(S!=="create-index"&&S!=="mkdir-index"){let{object:ce}=await Xe({fs:t,cache:e,gitdir:s,oid:C});if(N&&(await t.rm(B)),P===33188)await t.write(B,ce);else if(P===33261)await t.write(B,ce,{mode:511});else if(P===40960)await t.writelink(B,ce);else throw new he(`Invalid mode 0o${P.toString(8)} detected in blob ${C}`)}let H=await t.lstat(B);P===33261&&(H.mode=493),S==="mkdir-index"&&(H.mode=57344),y.insert({filepath:_,stats:H,oid:C}),r&&(await r({phase:"Updating workdir",loaded:++E,total:A}))}catch(H){console.log(H)}}))});n&&(await n({previousHead:v,newHead:w,type:l!=null&&l.length>0?"file":"branch"}))}if(!u){let b=await z.expand({fs:t,gitdir:s,ref:o});b.startsWith("refs/heads")?await z.writeSymbolicRef({fs:t,gitdir:s,ref:"HEAD",value:b}):await z.writeRef({fs:t,gitdir:s,ref:"HEAD",value:w})}}async function V8({fs:t,cache:e,onProgress:r,dir:n,gitdir:i,ref:s,force:a,filepaths:o}){let l=0;return Fs({fs:t,cache:e,dir:n,gitdir:i,trees:[Xr({ref:s}),sl(),Ca()],map:async function(c,[u,f,d]){if(c===".")return;if(o&&!o.some(m=>Ak(c,m)))return null;switch(r&&(await r({phase:"Analyzing workdir",loaded:++l})),[!!d,!!u,!!f].map(Number).join("")){case"000":return;case"001":return a&&o&&o.includes(c)?["delete",c]:void 0;case"010":switch(await u.type()){case"tree":return["mkdir",c];case"blob":return["create",c,await u.oid(),await u.mode()];case"commit":return["mkdir-index",c,await u.oid(),await u.mode()];default:return["error",`new entry Unhandled type ${await u.type()}`]}case"011":switch(`${await u.type()}-${await f.type()}`){case"tree-tree":return;case"tree-blob":case"blob-tree":return["conflict",c];case"blob-blob":return(await u.oid())!==(await f.oid())?a?["update",c,await u.oid(),await u.mode(),(await u.mode())!==(await f.mode())]:["conflict",c]:(await u.mode())!==(await f.mode())?a?["update",c,await u.oid(),await u.mode(),!0]:["conflict",c]:["create-index",c,await u.oid(),await u.mode()];case"commit-tree":return;case"commit-blob":return["conflict",c];default:return["error",`new entry Unhandled type ${u.type}`]}case"100":return["delete-index",c];case"101":switch(await d.type()){case"tree":return["rmdir-index",c];case"blob":return(await d.oid())!==(await f.oid())?a?["delete",c]:["conflict",c]:["delete",c];case"commit":return["rmdir-index",c];default:return["error",`delete entry Unhandled type ${await d.type()}`]}case"110":case"111":switch(`${await d.type()}-${await u.type()}`){case"tree-tree":return;case"blob-blob":{if((await d.oid())===(await u.oid())&&(await d.mode())===(await u.mode())&&!a)return;if(f){if((await f.oid())!==(await d.oid())&&(await f.oid())!==(await u.oid()))return a?["update",c,await u.oid(),await u.mode(),(await u.mode())!==(await f.mode())]:["conflict",c]}else if(a)return["update",c,await u.oid(),await u.mode(),(await u.mode())!==(await d.mode())];return(await u.mode())!==(await d.mode())?["update",c,await u.oid(),await u.mode(),!0]:(await u.oid())!==(await d.oid())?["update",c,await u.oid(),await u.mode(),!1]:void 0}case"tree-blob":return["update-dir-to-blob",c,await u.oid()];case"blob-tree":return["update-blob-to-tree",c];case"commit-commit":return["mkdir-index",c,await u.oid(),await u.mode()];default:return["error",`update entry Unhandled type ${await d.type()}-${await u.type()}`]}}},reduce:async function(c,u){return u=dk(u),c?c&&c[0]==="rmdir"?(u.push(c),u):(u.unshift(c),u):u}})}async function Y8({index:t,fullpath:e,stats:r,oid:n}){try{t.insert({filepath:e,stats:r,oid:n})}catch(i){console.warn(`Error inserting ${e} into index:`,i)}}async function X8({fs:t,cache:e,gitdir:r,dir:n},[i,s,a,o,l]){let c=`${n}/${s}`;if(i!=="create-index"&&i!=="mkdir-index"){let{object:f}=await Xe({fs:t,cache:e,gitdir:r,oid:a});if(l&&(await t.rm(c)),o===33188)await t.write(c,f);else if(o===33261)await t.write(c,f,{mode:511});else if(o===40960)await t.writelink(c,f);else throw new he(`Invalid mode 0o${o.toString(8)} detected in blob ${a}`)}let u=await t.lstat(c);return o===33261&&(u.mode=493),i==="mkdir-index"&&(u.mode=57344),[s,a,u]}async function VE(t,e,r,n){let i=[];try{for(let s=0;sl());(await Promise.allSettled(a)).forEach(l=>{l.status==="fulfilled"&&i.push(l.value)}),r&&(await r({phase:"Updating workdir",loaded:s+a.length,total:e.length}))}return i}catch(s){console.error(`Error during ${t}: ${s}`)}return i}async function kv({fs:t,onProgress:e,onPostCheckout:r,dir:n,gitdir:i=D(n,".git"),remote:s="origin",ref:a,filepaths:o,noCheckout:l=!1,noUpdateHead:c=a===void 0,dryRun:u=!1,force:f=!1,track:d=!0,cache:h={},nonBlocking:m=!1,batchSize:g=100}){try{T("fs",t),T("dir",n),T("gitdir",i);let v=a||"HEAD",w=new Q(t),b=await J({fsp:w,dotgit:i});return await Ev({fs:w,cache:h,onProgress:e,onPostCheckout:r,dir:n,gitdir:b,remote:s,ref:v,filepaths:o,noCheckout:l,noUpdateHead:c,dryRun:u,force:f,track:d,nonBlocking:m,batchSize:g})}catch(v){throw v.caller="git.checkout",v}}var Z8=/^refs\/(heads\/|tags\/|remotes\/)?(.*)/;function xa(t){let e=Z8.exec(t);return e?e[1]==="remotes/"&&t.endsWith("/HEAD")?e[2].slice(0,-5):e[2]:t}async function Ls({fs:t,gitdir:e,fullname:r=!1,test:n=!1}){let i=await z.resolve({fs:t,gitdir:e,ref:"HEAD",depth:2});if(n)try{await z.resolve({fs:t,gitdir:e,ref:i})}catch(s){return}if(i.startsWith("refs/"))return r?i:xa(i)}function K8(t){return t=t.replace(/^git@([^:]+):/,"https://$1/"),t=t.replace(/^ssh:\/\//,"https://"),t}function Ck({username:t="",password:e=""}){return`Basic ${Buffer.from(`${t}:${e}`).toString("base64")}`}async function hu(t,e){let r=ck(t);for(;;){let{value:n,done:i}=await r.next();if(n&&(await e(n)),i)break}r.return&&r.return()}async function Md(t){let e=0,r=[];await hu(t,s=>{r.push(s),e+=s.byteLength});let n=new Uint8Array(e),i=0;for(let s of r)n.set(s,i),i+=s.byteLength;return n}function YE(t){let e=t.match(/^https?:\/\/([^/]+)@/);if(e==null)return{url:t,auth:{}};e=e[1];let[r,n]=e.split(":");return t=t.replace(`${e}@`,""),{url:t,auth:{username:r,password:n}}}function _v(t,e){let r=e.toString(16);return"0".repeat(t-r.length)+r}var st=class{static flush(){return Buffer.from("0000","utf8")}static delim(){return Buffer.from("0001","utf8")}static encode(e){typeof e=="string"&&(e=Buffer.from(e));let r=e.length+4,n=_v(4,r);return Buffer.concat([Buffer.from(n,"utf8"),e])}static streamReader(e){let r=new Id(e);return async function(){try{let i=await r.read(4);if(i==null)return!0;if(i=parseInt(i.toString("utf8"),16),i===0||i===1)return null;let s=await r.read(i-4);return s==null?!0:s}catch(i){return e.error=i,!0}}}};async function XE(t){let e={},r;for(;r=await t(),r!==!0;){if(r===null)continue;r=r.toString("utf8").replace(/\n$/,"");let n=r.indexOf("=");if(n>-1){let i=r.slice(0,n),s=r.slice(n+1);e[i]=s}else e[r]=!0}return{protocolVersion:2,capabilities2:e}}async function ZE(t,{service:e}){let r=new Set,n=new Map,i=new Map,s=st.streamReader(t),a=await s();for(;a===null;)a=await s();if(a===!0)throw new Jc;if(a.includes("version 2"))return XE(s);if(a.toString("utf8").replace(/\n$/,"")!==`# service=${e}`)throw new Ea(`# service=${e}\\n`,a.toString("utf8"));let o=await s();for(;o===null;)o=await s();if(o===!0)return{capabilities:r,refs:n,symrefs:i};if(o=o.toString("utf8"),o.includes("version 2"))return XE(s);let[l,c]=sv(o,"\0","\\x00");if(c.split(" ").map(u=>r.add(u)),l!=="0000000000000000000000000000000000000000 capabilities^{}"){let[u,f]=sv(l," "," ");for(n.set(f,u);;){let d=await s();if(d===!0)break;if(d!==null){let[h,m]=sv(d.toString("utf8")," "," ");n.set(m,h)}}}for(let u of r)if(u.startsWith("symref=")){let f=u.match(/symref=([^:]+):(.*)/);f.length===3&&i.set(f[1],f[2])}return{protocolVersion:1,capabilities:r,refs:n,symrefs:i}}function sv(t,e,r){let n=t.trim().split(e);if(n.length!==2)throw new Ea(`Two strings separated by '${r}'`,t.toString("utf8"));return n}var KE=(t,e)=>t.endsWith("?")?`${t}${e}`:`${t}/${e.replace(/^https?:\/\//,"")}`,QE=(t,e)=>{(e.username||e.password)&&(t.Authorization=Ck(e)),e.headers&&Object.assign(t,e.headers)},av=async t=>{try{let e=Buffer.from(await Md(t.body)),r=e.toString("utf8");return{preview:r.length<256?r:r.slice(0,256)+"...",response:r,data:e}}catch(e){return{}}},rl=class{static async capabilities(){return["discover","connect"]}static async discover({http:e,onProgress:r,onAuth:n,onAuthSuccess:i,onAuthFailure:s,corsProxy:a,service:o,url:l,headers:c,protocolVersion:u}){let{url:f,auth:d}=YE(l),h=a?KE(a,f):f;(d.username||d.password)&&(c.Authorization=Ck(d)),u===2&&(c["Git-Protocol"]="version=2");let m,g,v=!1;do if(m=await e.request({onProgress:r,method:"GET",url:`${h}/info/refs?service=${o}`,headers:c}),g=!1,m.statusCode===401||m.statusCode===203){let w=v?s:n;if(w){if(d=await w(f,{...d,headers:{...c}}),d&&d.cancel)throw new Qo;d&&(QE(c,d),v=!0,g=!0)}}else m.statusCode===200&&v&&i&&(await i(f,d));while(g);if(m.statusCode!==200){let{response:w}=await av(m);throw new Yo(m.statusCode,m.statusMessage,w)}if(m.headers["content-type"]===`application/x-${o}-advertisement`){let w=await ZE(m.body,{service:o});return w.auth=d,w}else{let{preview:w,response:b,data:k}=await av(m);try{let x=await ZE([k],{service:o});return x.auth=d,x}catch(x){throw new iu(w,b)}}}static async connect({http:e,onProgress:r,corsProxy:n,service:i,url:s,auth:a,body:o,headers:l}){let c=YE(s);c&&(s=c.url),n&&(s=KE(n,s)),l["content-type"]=`application/x-${i}-request`,l.accept=`application/x-${i}-result`,QE(l,a);let u=await e.request({onProgress:r,method:"POST",url:`${s}/${i}`,body:o,headers:l});if(u.statusCode!==200){let{response:f}=av(u);throw new Yo(u.statusCode,u.statusMessage,f)}return u}},nl=class{static getRemoteHelperFor({url:e}){let r=new Map;r.set("http",rl),r.set("https",rl);let n=Q8({url:e});if(!n)throw new au(e);if(r.has(n.transport))return r.get(n.transport);throw new su(e,n.transport,n.transport==="ssh"?K8(e):void 0)}};function Q8({url:t}){if(t.startsWith("git@"))return{transport:"ssh",address:t};let e=t.match(/(\w+)(:\/\/|::)(.*)/);if(e!==null){if(e[2]==="://")return{transport:e[1],address:e[0]};if(e[2]==="::")return{transport:e[1],address:e[3]}}}var _a=null,ka=class{static async read({fs:e,gitdir:r}){_a===null&&(_a=new Wc);let n=D(r,"shallow"),i=new Set;return await _a.acquire(n,async function(){let s=await e.read(n,{encoding:"utf8"});if(s===null||s.trim()==="")return i;s.trim().split(` `).map(a=>i.add(a))}),i}static async write({fs:e,gitdir:r,oids:n}){_a===null&&(_a=new Wc);let i=D(r,"shallow");if(n.size>0){let s=[...n].join(` `)+` `;await _a.acquire(i,async function(){await e.write(i,s,{encoding:"utf8"})})}else await _a.acquire(i,async function(){await e.rm(i)})}};async function J8({fs:t,gitdir:e,oid:r}){let n=`objects/${r.slice(0,2)}/${r.slice(2)}`;return t.exists(`${e}/${n}`)}async function e6({fs:t,cache:e,gitdir:r,oid:n,getExternalRefDelta:i}){let s=await t.readdir(D(r,"objects/pack"));s=s.filter(a=>a.endsWith(".idx"));for(let a of s){let o=`${r}/objects/pack/${a}`,l=await Sv({fs:t,cache:e,filename:o,getExternalRefDelta:i});if(l.error)throw new he(l.error);if(l.offsets.has(n))return!0}return!1}async function JE({fs:t,cache:e,gitdir:r,oid:n,format:i="content"}){let s=o=>Xe({fs:t,cache:e,gitdir:r,oid:o}),a=await J8({fs:t,gitdir:r,oid:n});return a||(a=await e6({fs:t,cache:e,gitdir:r,oid:n,getExternalRefDelta:s})),a}function t6(t){let i="5041434b"+"00000002"+"00000000";return t.slice(0,12).toString("hex")===i}function Tk(t,e){let r=t.map(n=>n.split("=",1)[0]);return e.filter(n=>{let i=n.split("=",1)[0];return r.includes(i)})}var Ud={name:"isomorphic-git",version:"1.36.3",agent:"git/isomorphic-git@1.36.3"},Wo=class{constructor(){this._queue=[]}write(e){if(this._ended)throw Error("You cannot write to a FIFO that has already been ended!");if(this._waiting){let r=this._waiting;this._waiting=null,r({value:e})}else this._queue.push(e)}end(){if(this._ended=!0,this._waiting){let e=this._waiting;this._waiting=null,e({done:!0})}}destroy(e){this.error=e,this.end()}async next(){if(this._queue.length>0)return{value:this._queue.shift()};if(this._ended)return{done:!0};if(this._waiting)throw Error("You cannot call read until the previous call to read has returned!");return new Promise(e=>{this._waiting=e})}};function r6(t){let e=t.indexOf("\r"),r=t.indexOf(` `);return e===-1&&r===-1?-1:e===-1?r+1:r===-1?e+1:r===e+1?r+1:Math.min(e,r)+1}function Pk(t){let e=new Wo,r="";return(async()=>(await hu(t,n=>{for(n=n.toString("utf8"),r+=n;;){let i=r6(r);if(i===-1)break;e.write(r.slice(0,i)),r=r.slice(i)}}),r.length>0&&e.write(r),e.end()))(),e}var Dd=class{static demux(e){let r=st.streamReader(e),n=new Wo,i=new Wo,s=new Wo,a=async function(){let o=await r();if(o===null)return a();if(o===!0){n.end(),s.end(),e.error?i.destroy(e.error):i.end();return}switch(o[0]){case 1:{i.write(o.slice(1));break}case 2:{s.write(o.slice(1));break}case 3:{let l=o.slice(1);s.write(l),n.end(),s.end(),i.destroy(new Error(l.toString("utf8")));return}default:n.write(o)}a()};return a(),{packetlines:n,packfile:i,progress:s}}};async function n6(t){let{packetlines:e,packfile:r,progress:n}=Dd.demux(t),i=[],s=[],a=[],o=!1,l=!1;return new Promise((c,u)=>{hu(e,f=>{let d=f.toString("utf8").trim();if(d.startsWith("shallow")){let h=d.slice(-41).trim();h.length!==40&&u(new Rs(h)),i.push(h)}else if(d.startsWith("unshallow")){let h=d.slice(-41).trim();h.length!==40&&u(new Rs(h)),s.push(h)}else if(d.startsWith("ACK")){let[,h,m]=d.split(" ");a.push({oid:h,status:m}),m||(l=!0)}else d.startsWith("NAK")?(o=!0,l=!0):(l=!0,o=!0);l&&(t.error?u(t.error):c({shallows:i,unshallows:s,acks:a,nak:o,packfile:r,progress:n}))}).finally(()=>{l||(t.error?u(t.error):c({shallows:i,unshallows:s,acks:a,nak:o,packfile:r,progress:n}))})})}function i6({capabilities:t=[],wants:e=[],haves:r=[],shallows:n=[],depth:i=null,since:s=null,exclude:a=[]}){let o=[];e=[...new Set(e)];let l=` ${t.join(" ")}`;for(let c of e)o.push(st.encode(`want ${c}${l} `)),l="";for(let c of n)o.push(st.encode(`shallow ${c} `));i!==null&&o.push(st.encode(`deepen ${i} `)),s!==null&&o.push(st.encode(`deepen-since ${Math.floor(s.valueOf()/1e3)} `));for(let c of a)o.push(st.encode(`deepen-not ${c} `));o.push(st.flush());for(let c of r)o.push(st.encode(`have ${c} `));return o.push(st.encode(`done `)),o}async function Av({fs:t,cache:e,http:r,onProgress:n,onMessage:i,onAuth:s,onAuthSuccess:a,onAuthFailure:o,gitdir:l,ref:c,remoteRef:u,remote:f,url:d,corsProxy:h,depth:m=null,since:g=null,exclude:v=[],relative:w=!1,tags:b=!1,singleBranch:k=!1,headers:x={},prune:E=!1,pruneTags:A=!1}){let y=c||(await Ls({fs:t,gitdir:l,test:!0})),S=await lt.get({fs:t,gitdir:l}),_=f||y&&(await S.get(`branch.${y}.remote`))||"origin",C=d||(await S.get(`remote.${_}.url`));if(typeof C=="undefined")throw new Sr("remote OR url");let P=u||y&&(await S.get(`branch.${y}.merge`))||c||"HEAD";h===void 0&&(h=await S.get("http.corsProxy"));let N=nl.getRemoteHelperFor({url:C}),B=await N.discover({http:r,onAuth:s,onAuthSuccess:a,onAuthFailure:o,corsProxy:h,service:"git-upload-pack",url:C,headers:x,protocolVersion:1}),H=B.auth,ce=B.refs;if(ce.size===0)return{defaultBranch:null,fetchHead:null,fetchHeadDescription:null};if(m!==null&&!B.capabilities.has("shallow"))throw new Ps("shallow","depth");if(g!==null&&!B.capabilities.has("deepen-since"))throw new Ps("deepen-since","since");if(v.length>0&&!B.capabilities.has("deepen-not"))throw new Ps("deepen-not","exclude");if(w===!0&&!B.capabilities.has("deepen-relative"))throw new Ps("deepen-relative","relative");let{oid:Pe,fullref:ve}=z.resolveAgainstMap({ref:P,map:ce});for(let M of ce.keys())M===ve||M==="HEAD"||M.startsWith("refs/heads/")||b&&M.startsWith("refs/tags/")||ce.delete(M);let ie=Tk([...B.capabilities],["multi_ack_detailed","no-done","side-band-64k","ofs-delta",`agent=${Ud.agent}`]);w&&ie.push("deepen-relative");let xe=k?[Pe]:ce.values(),we=k?[y]:await z.listRefs({fs:t,gitdir:l,filepath:"refs"}),W=[];for(let M of we)try{M=await z.expand({fs:t,gitdir:l,ref:M});let O=await z.resolve({fs:t,gitdir:l,ref:M});(await JE({fs:t,cache:e,gitdir:l,oid:O}))&&W.push(O)}catch(O){}W=[...new Set(W)];let X=await ka.read({fs:t,gitdir:l}),q=B.capabilities.has("shallow")?[...X]:[],De=i6({capabilities:ie,wants:xe,haves:W,shallows:q,depth:m,since:g,exclude:v}),ar=Buffer.from(await Md(De)),Ft=await N.connect({http:r,onProgress:n,corsProxy:h,service:"git-upload-pack",url:C,auth:H,body:[ar],headers:x}),Ie=await n6(Ft.body);Ft.headers&&(Ie.headers=Ft.headers);for(let M of Ie.shallows)if(!X.has(M))try{let{object:O}=await Xe({fs:t,cache:e,gitdir:l,oid:M}),oe=new kr(O),Ce=await Promise.all(oe.headers().parent.map(wr=>JE({fs:t,cache:e,gitdir:l,oid:wr})));Ce.length===0||Ce.every(wr=>wr)||X.add(M)}catch(O){X.add(M)}for(let M of Ie.unshallows)X.delete(M);if(await ka.write({fs:t,gitdir:l,oids:X}),k){let M=new Map([[ve,Pe]]),O=new Map,oe=10,Ce=ve;for(;oe--;){let bo=B.symrefs.get(Ce);if(bo===void 0)break;O.set(Ce,bo),Ce=bo}let Ot=ce.get(Ce);Ot&&M.set(Ce,Ot);let{pruned:wr}=await z.updateRemoteRefs({fs:t,gitdir:l,remote:_,refs:M,symrefs:O,tags:b,prune:E});E&&(Ie.pruned=wr)}else{let{pruned:M}=await z.updateRemoteRefs({fs:t,gitdir:l,remote:_,refs:ce,symrefs:B.symrefs,tags:b,prune:E,pruneTags:A});E&&(Ie.pruned=M)}if(Ie.HEAD=B.symrefs.get("HEAD"),Ie.HEAD===void 0){let{oid:M}=z.resolveAgainstMap({ref:"HEAD",map:ce});for(let[O,oe]of ce.entries())if(O!=="HEAD"&&oe===M){Ie.HEAD=O;break}}let kt=ve.startsWith("refs/tags")?"tag":"branch";if(Ie.FETCH_HEAD={oid:Pe,description:`${kt} '${xa(ve)}' of ${C}`},n||i){let M=Pk(Ie.progress);hu(M,async O=>{if(i&&(await i(O)),n){let oe=O.match(/([^:]*).*\((\d+?)\/(\d+?)\)/);oe&&(await n({phase:oe[1].trim(),loaded:parseInt(oe[2],10),total:parseInt(oe[3],10)}))}})}let At=Buffer.from(await Md(Ie.packfile));if(Ft.body.error)throw Ft.body.error;let je=At.slice(-20).toString("hex"),Z={defaultBranch:Ie.HEAD,fetchHead:Ie.FETCH_HEAD.oid,fetchHeadDescription:Ie.FETCH_HEAD.description};if(Ie.headers&&(Z.headers=Ie.headers),E&&(Z.pruned=Ie.pruned),je!==""&&!t6(At)){Z.packfile=`objects/pack/pack-${je}.pack`;let M=D(l,Z.packfile);await t.write(M,At);let O=Ce=>Xe({fs:t,cache:e,gitdir:l,oid:Ce}),oe=await Xc.fromPack({pack:At,getExternalRefDelta:O,onProgress:n});await t.write(M.replace(/\.pack$/,".idx"),await oe.toBuffer())}return Z}async function Rk({fs:t,bare:e=!1,dir:r,gitdir:n=e?r:D(r,".git"),defaultBranch:i="master"}){if(await t.exists(n+"/config"))return;let s=["hooks","info","objects/info","objects/pack","refs/heads","refs/tags"];s=s.map(a=>n+"/"+a);for(let a of s)await t.mkdir(a);await t.write(n+"/config",`[core] repositoryformatversion = 0 filemode = false bare = ${e} `+(e?"":` logallrefupdates = true `)+` symlinks = false ignorecase = true `),await t.write(n+"/HEAD",`ref: refs/heads/${i} `)}async function s6({fs:t,cache:e,http:r,onProgress:n,onMessage:i,onAuth:s,onAuthSuccess:a,onAuthFailure:o,onPostCheckout:l,dir:c,gitdir:u,url:f,corsProxy:d,ref:h,remote:m,depth:g,since:v,exclude:w,relative:b,singleBranch:k,noCheckout:x,noTags:E,headers:A,nonBlocking:y,batchSize:S=100}){try{if(await Rk({fs:t,gitdir:u}),await xk({fs:t,gitdir:u,remote:m,url:f,force:!1}),d){let P=await lt.get({fs:t,gitdir:u});await P.set("http.corsProxy",d),await lt.save({fs:t,gitdir:u,config:P})}let{defaultBranch:_,fetchHead:C}=await Av({fs:t,cache:e,http:r,onProgress:n,onMessage:i,onAuth:s,onAuthSuccess:a,onAuthFailure:o,gitdir:u,ref:h,remote:m,corsProxy:d,depth:g,since:v,exclude:w,relative:b,singleBranch:k,headers:A,tags:!E});if(C===null)return;h=h||_,h=h.replace("refs/heads/",""),await Ev({fs:t,cache:e,onProgress:n,onPostCheckout:l,dir:c,gitdir:u,ref:h,remote:m,noCheckout:x,nonBlocking:y,batchSize:S})}catch(_){throw await t.rmdir(u,{recursive:!0,maxRetries:10}).catch(()=>{}),_}}async function $k({fs:t,http:e,onProgress:r,onMessage:n,onAuth:i,onAuthSuccess:s,onAuthFailure:a,onPostCheckout:o,dir:l,gitdir:c=D(l,".git"),url:u,corsProxy:f=void 0,ref:d=void 0,remote:h="origin",depth:m=void 0,since:g=void 0,exclude:v=[],relative:w=!1,singleBranch:b=!1,noCheckout:k=!1,noTags:x=!1,headers:E={},cache:A={},nonBlocking:y=!1,batchSize:S=100}){try{T("fs",t),T("http",e),T("gitdir",c),k||T("dir",l),T("url",u);let _=new Q(t),C=await J({fsp:_,dotgit:c});return await s6({fs:_,cache:A,http:e,onProgress:r,onMessage:n,onAuth:i,onAuthSuccess:s,onAuthFailure:a,onPostCheckout:o,dir:l,gitdir:C,url:u,corsProxy:f,ref:d,remote:h,depth:m,since:g,exclude:v,relative:w,singleBranch:b,noCheckout:k,noTags:x,headers:E,nonBlocking:y,batchSize:S})}catch(_){throw _.caller="git.clone",_}}async function Ik({fs:t,onSign:e,dir:r,gitdir:n=D(r,".git"),message:i,author:s,committer:a,signingKey:o,amend:l=!1,dryRun:c=!1,noUpdateBranch:u=!1,ref:f,parent:d,tree:h,cache:m={}}){try{T("fs",t),l||T("message",i),o&&T("onSign",e);let g=new Q(t),v=await J({fsp:g,dotgit:n});return await Hd({fs:g,cache:m,onSign:e,gitdir:v,message:i,author:s,committer:a,signingKey:o,amend:l,dryRun:c,noUpdateBranch:u,ref:f,parent:d,tree:h})}catch(g){throw g.caller="git.commit",g}}async function Fk({fs:t,dir:e,gitdir:r=D(e,".git"),fullname:n=!1,test:i=!1}){try{T("fs",t),T("gitdir",r);let s=new Q(t),a=await J({fsp:s,dotgit:r});return await Ls({fs:s,gitdir:a,fullname:n,test:i})}catch(s){throw s.caller="git.currentBranch",s}}async function a6({fs:t,gitdir:e,ref:r}){if(r=r.startsWith("refs/heads/")?r:`refs/heads/${r}`,!(await z.exists({fs:t,gitdir:e,ref:r})))throw new Be(r);let i=await z.expand({fs:t,gitdir:e,ref:r}),s=await Ls({fs:t,gitdir:e,fullname:!0});if(i===s){let l=await z.resolve({fs:t,gitdir:e,ref:i});await z.writeRef({fs:t,gitdir:e,ref:"HEAD",value:l})}await z.deleteRef({fs:t,gitdir:e,ref:i});let a=xa(r),o=await lt.get({fs:t,gitdir:e});await o.deleteSection("branch",a),await lt.save({fs:t,gitdir:e,config:o})}async function Ok({fs:t,dir:e,gitdir:r=D(e,".git"),ref:n}){try{T("fs",t),T("ref",n);let i=new Q(t),s=await J({fsp:i,dotgit:r});return await a6({fs:i,gitdir:s,ref:n})}catch(i){throw i.caller="git.deleteBranch",i}}async function Mk({fs:t,dir:e,gitdir:r=D(e,".git"),ref:n}){try{T("fs",t),T("ref",n);let i=new Q(t),s=await J({fsp:i,dotgit:r});await z.deleteRef({fs:i,gitdir:s,ref:n})}catch(i){throw i.caller="git.deleteRef",i}}async function o6({fs:t,gitdir:e,remote:r}){let n=await lt.get({fs:t,gitdir:e});await n.deleteSection("remote",r),await lt.save({fs:t,gitdir:e,config:n})}async function Dk({fs:t,dir:e,gitdir:r=D(e,".git"),remote:n}){try{T("fs",t),T("remote",n);let i=new Q(t),s=await J({fsp:i,dotgit:r});return await o6({fs:i,gitdir:s,remote:n})}catch(i){throw i.caller="git.deleteRemote",i}}async function l6({fs:t,gitdir:e,ref:r}){r=r.startsWith("refs/tags/")?r:`refs/tags/${r}`,await z.deleteRef({fs:t,gitdir:e,ref:r})}async function Lk({fs:t,dir:e,gitdir:r=D(e,".git"),ref:n}){try{T("fs",t),T("ref",n);let i=new Q(t),s=await J({fsp:i,dotgit:r});return await l6({fs:i,gitdir:s,ref:n})}catch(i){throw i.caller="git.deleteTag",i}}async function c6({fs:t,gitdir:e,oid:r}){let n=r.slice(0,2);return(await t.readdir(`${e}/objects/${n}`)).map(s=>`${n}${s}`).filter(s=>s.startsWith(r))}async function u6({fs:t,cache:e,gitdir:r,oid:n,getExternalRefDelta:i}){let s=[],a=await t.readdir(D(r,"objects/pack"));a=a.filter(o=>o.endsWith(".idx"));for(let o of a){let l=`${r}/objects/pack/${o}`,c=await Sv({fs:t,cache:e,filename:l,getExternalRefDelta:i});if(c.error)throw new he(c.error);for(let u of c.offsets.keys())u.startsWith(n)&&s.push(u)}return s}async function f6({fs:t,cache:e,gitdir:r,oid:n}){let i=o=>Xe({fs:t,cache:e,gitdir:r,oid:o}),s=await c6({fs:t,gitdir:r,oid:n}),a=await u6({fs:t,cache:e,gitdir:r,oid:n,getExternalRefDelta:i});for(let o of a)s.indexOf(o)===-1&&s.push(o);if(s.length===1)return s[0];throw s.length>1?new Zc("oids",n,s):new Be(`an object matching "${n}"`)}async function Nk({fs:t,dir:e,gitdir:r=D(e,".git"),oid:n,cache:i={}}){try{T("fs",t),T("gitdir",r),T("oid",n);let s=new Q(t),a=await J({fsp:s,dotgit:r});return await f6({fs:s,cache:i,gitdir:a,oid:n})}catch(s){throw s.caller="git.expandOid",s}}async function Bk({fs:t,dir:e,gitdir:r=D(e,".git"),ref:n}){try{T("fs",t),T("gitdir",r),T("ref",n);let i=new Q(t),s=await J({fsp:i,dotgit:r});return await z.expand({fs:i,gitdir:s,ref:n})}catch(i){throw i.caller="git.expandRef",i}}async function Cv({fs:t,cache:e,gitdir:r,oids:n}){let i={},s=n.length,a=n.map((o,l)=>({index:l,oid:o}));for(;a.length;){let o=new Set;for(let{oid:c,index:u}of a)i[c]||(i[c]=new Set),i[c].add(u),i[c].size===s&&o.add(c);if(o.size>0)return[...o];let l=new Map;for(let{oid:c,index:u}of a)try{let{object:f}=await Xe({fs:t,cache:e,gitdir:r,oid:c}),d=kr.from(f),{parent:h}=d.parseHeaders();for(let m of h)(!i[m]||!i[m].has(u))&&l.set(m+":"+u,{oid:m,index:u})}catch(f){}a=Array.from(l.values())}return[]}var ov=/^.*(\r?\n|$)/gm;function d6({branches:t,contents:e}){let r=t[1],n=t[2],i=e[0],s=e[1],a=e[2],o=s.match(ov),l=i.match(ov),c=a.match(ov),u=q3(o,l,c),f=7,d="",h=!0;for(let m of u)m.ok&&(d+=m.ok.join("")),m.conflict&&(h=!1,d+=`${"<".repeat(f)} ${r} `,d+=m.conflict.a.join(""),d+=`${"=".repeat(f)} `,d+=m.conflict.b.join(""),d+=`${">".repeat(f)} ${n} `);return{cleanMerge:h,mergedText:d}}async function h6({fs:t,cache:e,dir:r,gitdir:n=D(r,".git"),index:i,ourOid:s,baseOid:a,theirOid:o,ourName:l="ours",baseName:c="base",theirName:u="theirs",dryRun:f=!1,abortOnConflict:d=!0,mergeDriver:h}){let m=Xr({ref:s}),g=Xr({ref:a}),v=Xr({ref:o}),w=[],b=[],k=[],x=[],E=await Fs({fs:t,cache:e,dir:r,gitdir:n,trees:[m,g,v],map:async function(A,[y,S,_]){let C=Pd(A),P=await Od(y,S),N=await Od(_,S);switch(`${P}-${N}`){case"false-false":return{mode:await S.mode(),path:C,oid:await S.oid(),type:await S.type()};case"false-true":return!_&&(await y.type())==="tree"?{mode:await y.mode(),path:C,oid:await y.oid(),type:await y.type()}:_?{mode:await _.mode(),path:C,oid:await _.oid(),type:await _.type()}:void 0;case"true-false":return!y&&(await _.type())==="tree"?{mode:await _.mode(),path:C,oid:await _.oid(),type:await _.type()}:y?{mode:await y.mode(),path:C,oid:await y.oid(),type:await y.type()}:void 0;case"true-true":{if(y&&_&&(await y.type())==="tree"&&(await _.type())==="tree")return{mode:await y.mode(),path:C,oid:await y.oid(),type:"tree"};if(y&&_&&(await y.type())==="blob"&&(await _.type())==="blob")return p6({fs:t,gitdir:n,path:C,ours:y,base:S,theirs:_,ourName:l,baseName:c,theirName:u,mergeDriver:h}).then(async B=>{if(B.cleanMerge)d||i.insert({filepath:A,oid:B.mergeResult.oid,stage:0});else if(w.push(A),b.push(A),!d){let H="";S&&(await S.type())==="blob"&&(H=await S.oid());let ce=await y.oid(),Pe=await _.oid();i.delete({filepath:A}),H&&i.insert({filepath:A,oid:H,stage:1}),i.insert({filepath:A,oid:ce,stage:2}),i.insert({filepath:A,oid:Pe,stage:3})}return B.mergeResult});if(S&&!y&&_&&(await S.type())==="blob"&&(await _.type())==="blob"){if(w.push(A),k.push(A),!d){let B=await S.oid(),H=await _.oid();i.delete({filepath:A}),i.insert({filepath:A,oid:B,stage:1}),i.insert({filepath:A,oid:H,stage:3})}return{mode:await _.mode(),oid:await _.oid(),type:"blob",path:C}}if(S&&y&&!_&&(await S.type())==="blob"&&(await y.type())==="blob"){if(w.push(A),x.push(A),!d){let B=await S.oid(),H=await y.oid();i.delete({filepath:A}),i.insert({filepath:A,oid:B,stage:1}),i.insert({filepath:A,oid:H,stage:2})}return{mode:await y.mode(),oid:await y.oid(),type:"blob",path:C}}if(S&&!y&&!_&&((await S.type())==="blob"||(await S.type())==="tree"))return;throw new Xo}}},reduce:w.length!==0&&(!r||d)?void 0:async(A,y)=>{let S=y.filter(Boolean);if(A&&!(A&&A.type==="tree"&&S.length===0&&A.path!==".")){if(S.length>0||A.path==="."&&S.length===0){let C=new Er(S).toObject(),P=await Ar({fs:t,gitdir:n,type:"tree",object:C,dryRun:f});A.oid=P}return A}}});return w.length!==0?(r&&!d&&(await Fs({fs:t,cache:e,dir:r,gitdir:n,trees:[Xr({ref:E.oid})],map:async function(A,[y]){let S=`${r}/${A}`;if((await y.type())==="blob"){let _=await y.mode(),C=new TextDecoder().decode(await y.content());await t.write(S,C,{mode:_})}return!0}})),new Zo(w,b,k,x)):E.oid}async function p6({fs:t,gitdir:e,path:r,ours:n,base:i,theirs:s,ourName:a,theirName:o,baseName:l,dryRun:c,mergeDriver:u=d6}){let f="blob",d="100755",h="",m="";i&&(await i.type())==="blob"&&(d=await i.mode(),h=await i.oid(),m=Buffer.from(await i.content()).toString("utf8"));let g=d===(await n.mode())?await s.mode():await n.mode();if((await n.oid())===(await s.oid()))return{cleanMerge:!0,mergeResult:{mode:g,path:r,oid:await n.oid(),type:f}};if((await n.oid())===h)return{cleanMerge:!0,mergeResult:{mode:g,path:r,oid:await s.oid(),type:f}};if((await s.oid())===h)return{cleanMerge:!0,mergeResult:{mode:g,path:r,oid:await n.oid(),type:f}};let v=Buffer.from(await n.content()).toString("utf8"),w=Buffer.from(await s.content()).toString("utf8"),{mergedText:b,cleanMerge:k}=await u({branches:[l,a,o],contents:[m,v,w],path:r}),x=await Ar({fs:t,gitdir:e,type:"blob",object:Buffer.from(b,"utf8"),dryRun:c});return{cleanMerge:k,mergeResult:{mode:g,path:r,oid:x,type:f}}}async function Hk({fs:t,cache:e,dir:r,gitdir:n,ours:i,theirs:s,fastForward:a=!0,fastForwardOnly:o=!1,dryRun:l=!1,noUpdateBranch:c=!1,abortOnConflict:u=!0,message:f,author:d,committer:h,signingKey:m,onSign:g,mergeDriver:v,allowUnrelatedHistories:w=!1}){i===void 0&&(i=await Ls({fs:t,gitdir:n,fullname:!0})),i=await z.expand({fs:t,gitdir:n,ref:i}),s=await z.expand({fs:t,gitdir:n,ref:s});let b=await z.resolve({fs:t,gitdir:n,ref:i}),k=await z.resolve({fs:t,gitdir:n,ref:s}),x=await Cv({fs:t,cache:e,gitdir:n,oids:[b,k]});if(x.length!==1)if(x.length===0&&w)x.push("4b825dc642cb6eb9a060e54bf8d69288fbee4904");else throw new Xo;let E=x[0];if(E===k)return{oid:b,alreadyMerged:!0};if(a&&E===b)return!l&&!c&&(await z.writeRef({fs:t,gitdir:n,ref:i,value:k})),{oid:k,fastForward:!0};{if(o)throw new eu;let A=await ht.acquire({fs:t,gitdir:n,cache:e,allowUnmerged:!1},async S=>h6({fs:t,cache:e,dir:r,gitdir:n,index:S,ourOid:b,theirOid:k,baseOid:E,ourName:xa(i),baseName:"base",theirName:xa(s),dryRun:l,abortOnConflict:u,mergeDriver:v}));if(A instanceof Zo)throw A;return f||(f=`Merge branch '${xa(s)}' into ${xa(i)}`),{oid:await Hd({fs:t,cache:e,gitdir:n,message:f,ref:i,tree:A,parent:[b,k],author:d,committer:h,signingKey:m,onSign:g,dryRun:l,noUpdateBranch:c}),tree:A,mergeCommit:!0}}}async function Uk({fs:t,cache:e,http:r,onProgress:n,onMessage:i,onAuth:s,onAuthSuccess:a,onAuthFailure:o,dir:l,gitdir:c,ref:u,url:f,remote:d,remoteRef:h,prune:m,pruneTags:g,fastForward:v,fastForwardOnly:w,corsProxy:b,singleBranch:k,headers:x,author:E,committer:A,signingKey:y}){try{if(!u){let C=await Ls({fs:t,gitdir:c});if(!C)throw new Sr("ref");u=C}let{fetchHead:S,fetchHeadDescription:_}=await Av({fs:t,cache:e,http:r,onProgress:n,onMessage:i,onAuth:s,onAuthSuccess:a,onAuthFailure:o,gitdir:c,corsProxy:b,ref:u,url:f,remote:d,remoteRef:h,singleBranch:k,headers:x,prune:m,pruneTags:g});await Hk({fs:t,cache:e,gitdir:c,ours:u,theirs:S,fastForward:v,fastForwardOnly:w,message:`Merge ${_}`,author:E,committer:A,signingKey:y,dryRun:!1,noUpdateBranch:!1}),await Ev({fs:t,cache:e,onProgress:n,dir:l,gitdir:c,ref:u,remote:d,noCheckout:!1})}catch(S){throw S.caller="git.pull",S}}async function Gk({fs:t,http:e,onProgress:r,onMessage:n,onAuth:i,onAuthSuccess:s,onAuthFailure:a,dir:o,gitdir:l=D(o,".git"),ref:c,url:u,remote:f,remoteRef:d,corsProxy:h,singleBranch:m,headers:g={},cache:v={}}){try{T("fs",t),T("http",e),T("gitdir",l);let w={name:"",邮件:"",timestamp:Date.now(),timezoneOffset:0},b=new Q(t),k=await J({fsp:b,dotgit:l});return await Uk({fs:b,cache:v,http:e,onProgress:r,onMessage:n,onAuth:i,onAuthSuccess:s,onAuthFailure:a,dir:o,gitdir:k,ref:c,url:u,remote:f,remoteRef:d,fastForwardOnly:!0,corsProxy:h,singleBranch:m,headers:g,author:w,committer:w})}catch(w){throw w.caller="git.fastForward",w}}async function jk({fs:t,http:e,onProgress:r,onMessage:n,onAuth:i,onAuthSuccess:s,onAuthFailure:a,dir:o,gitdir:l=D(o,".git"),ref:c,remote:u,remoteRef:f,url:d,corsProxy:h,depth:m=null,since:g=null,exclude:v=[],relative:w=!1,tags:b=!1,singleBranch:k=!1,headers:x={},prune:E=!1,pruneTags:A=!1,cache:y={}}){try{T("fs",t),T("http",e),T("gitdir",l);let S=new Q(t),_=await J({fsp:S,dotgit:l});return await Av({fs:S,cache:y,http:e,onProgress:r,onMessage:n,onAuth:i,onAuthSuccess:s,onAuthFailure:a,gitdir:_,ref:c,remote:u,remoteRef:f,url:d,corsProxy:h,depth:m,since:g,exclude:v,relative:w,tags:b,singleBranch:k,headers:x,prune:E,pruneTags:A})}catch(S){throw S.caller="git.fetch",S}}async function qk({fs:t,dir:e,gitdir:r=D(e,".git"),oids:n,cache:i={}}){try{T("fs",t),T("gitdir",r),T("oids",n);let s=new Q(t),a=await J({fsp:s,dotgit:r});return await Cv({fs:s,cache:i,gitdir:a,oids:n})}catch(s){throw s.caller="git.findMergeBase",s}}async function Wk({fs:t,filepath:e}){if(await t.exists(D(e,".git")))return e;{let r=Sa(e);if(r===e)throw new Be(`git root for ${e}`);return Wk({fs:t,filepath:r})}}async function zk({fs:t,filepath:e}){try{return T("fs",t),T("filepath",e),await Wk({fs:new Q(t),filepath:e})}catch(r){throw r.caller="git.findRoot",r}}async function Vk({fs:t,dir:e,gitdir:r=D(e,".git"),path:n}){try{T("fs",t),T("gitdir",r),T("path",n);let i=new Q(t),s=await J({fsp:i,dotgit:r});return await cu({fs:i,gitdir:s,path:n})}catch(i){throw i.caller="git.getConfig",i}}async function m6({fs:t,gitdir:e,path:r}){return(await lt.get({fs:t,gitdir:e})).getall(r)}async function Yk({fs:t,dir:e,gitdir:r=D(e,".git"),path:n}){try{T("fs",t),T("gitdir",r),T("path",n);let i=new Q(t),s=await J({fsp:i,dotgit:r});return await m6({fs:i,gitdir:s,path:n})}catch(i){throw i.caller="git.getConfigAll",i}}async function Xk({http:t,onAuth:e,onAuthSuccess:r,onAuthFailure:n,corsProxy:i,url:s,headers:a={},forPush:o=!1}){try{T("http",t),T("url",s);let c=await nl.getRemoteHelperFor({url:s}).discover({http:t,onAuth:e,onAuthSuccess:r,onAuthFailure:n,corsProxy:i,service:o?"git-receive-pack":"git-upload-pack",url:s,headers:a,protocolVersion:1}),u={capabilities:[...c.capabilities]};for(let[f,d]of c.refs){let h=f.split("/"),m=h.pop(),g=u;for(let v of h)g[v]=g[v]||{},g=g[v];g[m]=d}for(let[f,d]of c.symrefs){let h=f.split("/"),m=h.pop(),g=u;for(let v of h)g[v]=g[v]||{},g=g[v];g[m]=d}return u}catch(l){throw l.caller="git.getRemoteInfo",l}}function Zk(t,e,r,n){let i=[];for(let[s,a]of t.refs){if(e&&!s.startsWith(e))continue;if(s.endsWith("^{}")){if(n){let l=s.replace("^{}",""),c=i[i.length-1],u=c.ref===l?c:i.find(f=>f.ref===l);if(u===void 0)throw new Error("I did not expect this to happen");u.peeled=a}continue}let o={ref:s,oid:a};r&&t.symrefs.has(s)&&(o.target=t.symrefs.get(s)),i.push(o)}return i}async function Kk({http:t,onAuth:e,onAuthSuccess:r,onAuthFailure:n,corsProxy:i,url:s,headers:a={},forPush:o=!1,protocolVersion:l=2}){try{T("http",t),T("url",s);let u=await nl.getRemoteHelperFor({url:s}).discover({http:t,onAuth:e,onAuthSuccess:r,onAuthFailure:n,corsProxy:i,service:o?"git-receive-pack":"git-upload-pack",url:s,headers:a,protocolVersion:l});if(u.protocolVersion===2)return{protocolVersion:u.protocolVersion,capabilities:u.capabilities2};let f={};for(let d of u.capabilities){let[h,m]=d.split("=");m?f[h]=m:f[h]=!0}return{protocolVersion:1,capabilities:f,refs:Zk(u,void 0,!0,!0)}}catch(c){throw c.caller="git.getRemoteInfo2",c}}async function g6({type:t,object:e,format:r="content",oid:n=void 0}){return r!=="deflated"&&(r!=="wrapped"&&(e=$s.wrap({type:t,object:e})),n=await zi(e)),{oid:n,object:e}}async function Qk({object:t}){try{T("object",t),typeof t=="string"?t=Buffer.from(t,"utf8"):t instanceof Uint8Array||(t=new Uint8Array(t));let e="blob",{oid:r,object:n}=await g6({type:e,format:"content",object:t});return{oid:r,type:e,object:n,format:"wrapped"}}catch(e){throw e.caller="git.hashBlob",e}}async function v6({fs:t,cache:e,onProgress:r,dir:n,gitdir:i,filepath:s}){try{s=D(n,s);let a=await t.read(s),o=c=>Xe({fs:t,cache:e,gitdir:i,oid:c}),l=await Xc.fromPack({pack:a,getExternalRefDelta:o,onProgress:r});return await t.write(s.replace(/\.pack$/,".idx"),await l.toBuffer()),{oids:[...l.hashes]}}catch(a){throw a.caller="git.indexPack",a}}async function Jk({fs:t,onProgress:e,dir:r,gitdir:n=D(r,".git"),filepath:i,cache:s={}}){try{T("fs",t),T("dir",r),T("gitdir",r),T("filepath",i);let a=new Q(t),o=await J({fsp:a,dotgit:n});return await v6({fs:a,cache:s,onProgress:e,dir:r,gitdir:o,filepath:i})}catch(a){throw a.caller="git.indexPack",a}}async function eA({fs:t,bare:e=!1,dir:r,gitdir:n=e?r:D(r,".git"),defaultBranch:i="master"}){try{T("fs",t),T("gitdir",n),e||T("dir",r);let s=new Q(t),a=await J({fsp:s,dotgit:n});return await Rk({fs:s,bare:e,dir:r,gitdir:a,defaultBranch:i})}catch(s){throw s.caller="git.init",s}}async function tA({fs:t,cache:e,gitdir:r,oid:n,ancestor:i,depth:s}){let a=await ka.read({fs:t,gitdir:r});if(!n)throw new Sr("oid");if(!i)throw new Sr("ancestor");if(n===i)return!1;let o=[n],l=new Set,c=0;for(;o.length;){if(c++===s)throw new ru(s);let u=o.shift(),{type:f,object:d}=await Xe({fs:t,cache:e,gitdir:r,oid:u});if(f!=="commit")throw new fr(u,f,"commit");let h=kr.from(d).parse();for(let m of h.parent)if(m===i)return!0;if(!a.has(u))for(let m of h.parent)l.has(m)||(o.push(m),l.add(m))}return!1}async function rA({fs:t,dir:e,gitdir:r=D(e,".git"),oid:n,ancestor:i,depth:s=-1,cache:a={}}){try{T("fs",t),T("gitdir",r),T("oid",n),T("ancestor",i);let o=new Q(t),l=await J({fsp:o,dotgit:r});return await tA({fs:o,cache:a,gitdir:l,oid:n,ancestor:i,depth:s})}catch(o){throw o.caller="git.isDescendent",o}}async function nA({fs:t,dir:e,gitdir:r=D(e,".git"),filepath:n}){try{T("fs",t),T("dir",e),T("gitdir",r),T("filepath",n);let i=new Q(t),s=await J({fsp:i,dotgit:r});return Os.isIgnored({fs:i,dir:e,gitdir:s,filepath:n})}catch(i){throw i.caller="git.isIgnored",i}}async function iA({fs:t,dir:e,gitdir:r=D(e,".git"),remote:n}){try{T("fs",t),T("gitdir",r);let i=new Q(t),s=await J({fsp:i,dotgit:r});return z.listBranches({fs:i,gitdir:s,remote:n})}catch(i){throw i.caller="git.listBranches",i}}async function w6({fs:t,gitdir:e,ref:r,cache:n}){if(r){let i=await z.resolve({gitdir:e,fs:t,ref:r}),s=[];return await sA({fs:t,cache:n,gitdir:e,oid:i,filenames:s,prefix:""}),s}else return ht.acquire({fs:t,gitdir:e,cache:n},async function(i){return i.entries.map(s=>s.path)})}async function sA({fs:t,cache:e,gitdir:r,oid:n,filenames:i,prefix:s}){let{tree:a}=await al({fs:t,cache:e,gitdir:r,oid:n});for(let o of a)o.type==="tree"?await sA({fs:t,cache:e,gitdir:r,oid:o.oid,filenames:i,prefix:D(s,o.path)}):i.push(D(s,o.path))}async function aA({fs:t,dir:e,gitdir:r=D(e,".git"),ref:n,cache:i={}}){try{T("fs",t),T("gitdir",r);let s=new Q(t),a=await J({fsp:s,dotgit:r});return await w6({fs:s,cache:i,gitdir:a,ref:n})}catch(s){throw s.caller="git.listFiles",s}}async function y6({fs:t,cache:e,gitdir:r,ref:n}){let i;try{i=await z.resolve({gitdir:r,fs:t,ref:n})}catch(o){if(o instanceof Be)return[]}return(await al({fs:t,cache:e,gitdir:r,oid:i})).tree.map(o=>({target:o.path,note:o.oid}))}async function oA({fs:t,dir:e,gitdir:r=D(e,".git"),ref:n="refs/notes/commits",cache:i={}}){try{T("fs",t),T("gitdir",r),T("ref",n);let s=new Q(t),a=await J({fsp:s,dotgit:r});return await y6({fs:s,cache:i,gitdir:a,ref:n})}catch(s){throw s.caller="git.listNotes",s}}async function lA({fs:t,dir:e,gitdir:r=D(e,".git"),filepath:n}){try{T("fs",t),T("gitdir",r);let i=new Q(t),s=await J({fsp:i,dotgit:r});return z.listRefs({fs:i,gitdir:s,filepath:n})}catch(i){throw i.caller="git.listRefs",i}}async function b6({fs:t,gitdir:e}){let r=await lt.get({fs:t,gitdir:e}),n=await r.getSubsections("remote");return Promise.all(n.map(async s=>{let a=await r.get(`remote.${s}.url`);return{remote:s,url:a}}))}async function cA({fs:t,dir:e,gitdir:r=D(e,".git")}){try{T("fs",t),T("gitdir",r);let n=new Q(t),i=await J({fsp:n,dotgit:r});return await b6({fs:n,gitdir:i})}catch(n){throw n.caller="git.listRemotes",n}}async function _6(t){let e=st.streamReader(t),r=[],n;for(;n=await e(),n!==!0;){if(n===null)continue;n=n.toString("utf8").replace(/\n$/,"");let[i,s,...a]=n.split(" "),o={ref:s,oid:i};for(let l of a){let[c,u]=l.split(":");c==="symref-target"?o.target=u:c==="peeled"&&(o.peeled=u)}r.push(o)}return r}async function x6({prefix:t,symrefs:e,peelTags:r}){let n=[];return n.push(st.encode(`command=ls-refs `)),n.push(st.encode(`agent=${Ud.agent} `)),(r||e||t)&&n.push(st.delim()),r&&n.push(st.encode("peel")),e&&n.push(st.encode("symrefs")),t&&n.push(st.encode(`ref-prefix ${t}`)),n.push(st.flush()),n}async function uA({http:t,onAuth:e,onAuthSuccess:r,onAuthFailure:n,corsProxy:i,url:s,headers:a={},forPush:o=!1,protocolVersion:l=2,prefix:c,symrefs:u,peelTags:f}){try{T("http",t),T("url",s);let d=await rl.discover({http:t,onAuth:e,onAuthSuccess:r,onAuthFailure:n,corsProxy:i,service:o?"git-receive-pack":"git-upload-pack",url:s,headers:a,protocolVersion:l});if(d.protocolVersion===1)return Zk(d,c,u,f);let h=await x6({prefix:c,symrefs:u,peelTags:f}),m=await rl.connect({http:t,auth:d.auth,headers:a,corsProxy:i,service:o?"git-receive-pack":"git-upload-pack",url:s,body:h});return _6(m.body)}catch(d){throw d.caller="git.listServerRefs",d}}async function fA({fs:t,dir:e,gitdir:r=D(e,".git")}){try{T("fs",t),T("gitdir",r);let n=new Q(t),i=await J({fsp:n,dotgit:r});return z.listTags({fs:n,gitdir:i})}catch(n){throw n.caller="git.listTags",n}}function S6(t,e){return t.committer.timestamp-e.committer.timestamp}var E6="e69de29bb2d1d6434b8b29ae775ad8c2e48c5391";async function ek({fs:t,cache:e,gitdir:r,oid:n,fileId:i}){if(i===E6)return;let s=n,a,o=await Jo({fs:t,cache:e,gitdir:r,oid:n}),l=o.tree;return i===o.oid?a=o.path:(a=await dA({fs:t,cache:e,gitdir:r,tree:l,fileId:i,oid:s}),Array.isArray(a)&&(a.length===0?a=void 0:a.length===1&&(a=a[0]))),a}async function dA({fs:t,cache:e,gitdir:r,tree:n,fileId:i,oid:s,filepaths:a=[],parentPath:o=""}){let l=n.entries().map(function(c){let u;return c.oid===i?(u=D(o,c.path),a.push(u)):c.type==="tree"&&(u=Xe({fs:t,cache:e,gitdir:r,oid:c.oid}).then(function({object:f}){return dA({fs:t,cache:e,gitdir:r,tree:Er.from(f),fileId:i,oid:s,filepaths:a,parentPath:D(o,c.path)})})),u});return await Promise.all(l),a}async function k6({fs:t,cache:e,gitdir:r,filepath:n,ref:i,depth:s,since:a,force:o,follow:l}){let c=typeof a=="undefined"?void 0:Math.floor(a.valueOf()/1e3),u=[],f=await ka.read({fs:t,gitdir:r}),d=await z.resolve({fs:t,gitdir:r,ref:i}),h=[await tl({fs:t,cache:e,gitdir:r,oid:d})],m,g,v;function w(b){v&&n&&u.push(b)}for(;h.length>0;){let b=h.pop();if(c!==void 0&&b.commit.committer.timestamp<=c)break;if(n){let k;try{k=await fu({fs:t,cache:e,gitdir:r,oid:b.commit.tree,filepath:n}),g&&m!==k&&u.push(g),m=k,g=b,v=!0}catch(x){if(x instanceof Be){let E=l&&m;if(E&&(E=await ek({fs:t,cache:e,gitdir:r,oid:b.commit.tree,fileId:m}),E))if(Array.isArray(E)){if(g){let A=await ek({fs:t,cache:e,gitdir:r,oid:g.commit.tree,fileId:m});if(Array.isArray(A))if(E=E.filter(y=>A.indexOf(y)===-1),E.length===1)E=E[0],n=E,g&&u.push(g);else{E=!1,g&&u.push(g);break}}}else n=E,g&&u.push(g);if(!E){if(v&&m&&(u.push(g),!o))break;if(!o&&!l)throw x}g=b,v=!1}else throw x}}else u.push(b);if(s!==void 0&&u.length===s){w(b);break}if(!f.has(b.oid))for(let k of b.commit.parent){let x=await tl({fs:t,cache:e,gitdir:r,oid:k});h.map(E=>E.oid).includes(x.oid)||h.push(x)}h.length===0&&w(b),h.sort((k,x)=>S6(k.commit,x.commit))}return u}async function hA({fs:t,dir:e,gitdir:r=D(e,".git"),filepath:n,ref:i="HEAD",depth:s,since:a,force:o,follow:l,cache:c={}}){try{T("fs",t),T("gitdir",r),T("ref",i);let u=new Q(t),f=await J({fsp:u,dotgit:r});return await k6({fs:u,cache:c,gitdir:f,filepath:n,ref:i,depth:s,since:a,force:o,follow:l})}catch(u){throw u.caller="git.log",u}}async function pA({fs:t,onSign:e,dir:r,gitdir:n=D(r,".git"),ours:i,theirs:s,fastForward:a=!0,fastForwardOnly:o=!1,dryRun:l=!1,noUpdateBranch:c=!1,abortOnConflict:u=!0,message:f,author:d,committer:h,signingKey:m,cache:g={},mergeDriver:v,allowUnrelatedHistories:w=!1}){try{T("fs",t),m&&T("onSign",e);let b=new Q(t),k=await J({fsp:b,dotgit:n}),x=await Ms({fs:b,gitdir:k,author:d});if(!x&&(!o||!a))throw new Kt("author");let E=await el({fs:b,gitdir:k,author:x,committer:h});if(!E&&(!o||!a))throw new Kt("committer");return await Hk({fs:b,cache:g,dir:r,gitdir:k,ours:i,theirs:s,fastForward:a,fastForwardOnly:o,dryRun:l,noUpdateBranch:c,abortOnConflict:u,message:f,author:x,committer:E,signingKey:m,onSign:e,mergeDriver:v,allowUnrelatedHistories:w})}catch(b){throw b.caller="git.merge",b}}var A6={commit:16,tree:32,blob:48,tag:64,ofs_delta:96,ref_delta:112};async function mA({fs:t,cache:e,dir:r,gitdir:n=D(r,".git"),oids:i}){let s=new rk,a=[];function o(u,f){let d=Buffer.from(u,f);a.push(d),s.update(d)}async function l({stype:u,object:f}){let d=A6[u],h=f.length,m=h>15?128:0,g=h&15;h=h>>>4;let v=(m|d|g).toString(16);for(o(v,"hex");m;)m=h>127?128:0,v=m|h&127,o(_v(2,v),"hex"),h=h>>>7;o(Buffer.from(await pk(f)))}o("PACK"),o("00000002","hex"),o(_v(8,i.length),"hex");for(let u of i){let{type:f,object:d}=await Xe({fs:t,cache:e,gitdir:n,oid:u});await l({write:o,object:d,stype:f})}let c=s.digest();return a.push(c),a}async function C6({fs:t,cache:e,gitdir:r,oids:n,write:i}){let s=await mA({fs:t,cache:e,gitdir:r,oids:n}),a=Buffer.from(await Md(s)),l=`pack-${a.slice(-20).toString("hex")}.pack`;return i?(await t.write(D(r,`objects/pack/${l}`),a),{filename:l}):{filename:l,packfile:new Uint8Array(a)}}async function gA({fs:t,dir:e,gitdir:r=D(e,".git"),oids:n,write:i=!1,cache:s={}}){try{T("fs",t),T("gitdir",r),T("oids",n);let a=new Q(t),o=await J({fsp:a,dotgit:r});return await C6({fs:a,cache:s,gitdir:o,oids:n,write:i})}catch(a){throw a.caller="git.packObjects",a}}async function vA({fs:t,http:e,onProgress:r,onMessage:n,onAuth:i,onAuthSuccess:s,onAuthFailure:a,dir:o,gitdir:l=D(o,".git"),ref:c,url:u,remote:f,remoteRef:d,prune:h=!1,pruneTags:m=!1,fastForward:g=!0,fastForwardOnly:v=!1,corsProxy:w,singleBranch:b,headers:k={},author:x,committer:E,signingKey:A,cache:y={}}){try{T("fs",t),T("gitdir",l);let S=new Q(t),_=await J({fsp:S,dotgit:l}),C=await Ms({fs:S,gitdir:_,author:x});if(!C)throw new Kt("author");let P=await el({fs:S,gitdir:_,author:C,committer:E});if(!P)throw new Kt("committer");return await Uk({fs:S,cache:y,http:e,onProgress:r,onMessage:n,onAuth:i,onAuthSuccess:s,onAuthFailure:a,dir:o,gitdir:_,ref:c,url:u,remote:f,remoteRef:d,fastForward:g,fastForwardOnly:v,corsProxy:w,singleBranch:b,headers:k,author:C,committer:P,signingKey:A,prune:h,pruneTags:m})}catch(S){throw S.caller="git.pull",S}}async function T6({fs:t,cache:e,dir:r,gitdir:n=D(r,".git"),start:i,finish:s}){let a=await ka.read({fs:t,gitdir:n}),o=new Set,l=new Set;for(let f of i)o.add(await z.resolve({fs:t,gitdir:n,ref:f}));for(let f of s)try{let d=await z.resolve({fs:t,gitdir:n,ref:f});l.add(d)}catch(d){}let c=new Set;async function u(f){c.add(f);let{type:d,object:h}=await Xe({fs:t,cache:e,gitdir:n,oid:f});if(d==="tag"){let g=Zr.from(h).headers().object;return u(g)}if(d!=="commit")throw new fr(f,d,"commit");if(!a.has(f)){let g=kr.from(h).headers().parent;for(f of g)!l.has(f)&&!c.has(f)&&(await u(f))}}for(let f of o)await u(f);return c}async function lv({fs:t,cache:e,dir:r,gitdir:n=D(r,".git"),oids:i}){let s=new Set;async function a(o){if(s.has(o))return;s.add(o);let{type:l,object:c}=await Xe({fs:t,cache:e,gitdir:n,oid:o});if(l==="tag"){let f=Zr.from(c).headers().object;await a(f)}else if(l==="commit"){let f=kr.from(c).headers().tree;await a(f)}else if(l==="tree"){let u=Er.from(c);for(let f of u)f.type==="blob"&&s.add(f.oid),f.type==="tree"&&(await a(f.oid))}}for(let o of i)await a(o);return s}async function P6(t){let e={},r="",n=st.streamReader(t),i=await n();for(;i!==!0;)i!==null&&(r+=i.toString("utf8")+` `),i=await n();let s=r.toString("utf8").split(` `);if(i=s.shift(),!i.startsWith("unpack "))throw new Ea("unpack ok\" or \"unpack [error message]",i);e.ok=i==="unpack ok",e.ok||(e.error=i.slice(7)),e.refs={};for(let a of s){if(a.trim()==="")continue;let o=a.slice(0,2),l=a.slice(3),c=l.indexOf(" ");c===-1&&(c=l.length);let u=l.slice(0,c),f=l.slice(c+1);e.refs[u]={ok:o==="ok",error:f}}return e}async function R6({capabilities:t=[],triplets:e=[]}){let r=[],n=`\0 ${t.join(" ")}`;for(let i of e)r.push(st.encode(`${i.oldoid} ${i.oid} ${i.fullRef}${n} `)),n="";return r.push(st.flush()),r}async function $6({fs:t,cache:e,http:r,onProgress:n,onMessage:i,onAuth:s,onAuthSuccess:a,onAuthFailure:o,onPrePush:l,gitdir:c,ref:u,remoteRef:f,remote:d,url:h,force:m=!1,delete:g=!1,corsProxy:v,headers:w={}}){let b=u||(await Ls({fs:t,gitdir:c}));if(typeof b=="undefined")throw new Sr("ref");let k=await lt.get({fs:t,gitdir:c});d=d||(await k.get(`branch.${b}.pushRemote`))||(await k.get("remote.pushDefault"))||(await k.get(`branch.${b}.remote`))||"origin";let x=h||(await k.get(`remote.${d}.pushurl`))||(await k.get(`remote.${d}.url`));if(typeof x=="undefined")throw new Sr("remote OR url");let E=f||(await k.get(`branch.${b}.merge`));if(typeof x=="undefined")throw new Sr("remoteRef");v===void 0&&(v=await k.get("http.corsProxy"));let A=await z.expand({fs:t,gitdir:c,ref:b}),y=g?"0000000000000000000000000000000000000000":await z.resolve({fs:t,gitdir:c,ref:A}),S=nl.getRemoteHelperFor({url:x}),_=await S.discover({http:r,onAuth:s,onAuthSuccess:a,onAuthFailure:o,corsProxy:v,service:"git-receive-pack",url:x,headers:w,protocolVersion:1}),C=_.auth,P;if(!E)P=A;else try{P=await z.expandAgainstMap({ref:E,map:_.refs})}catch(X){if(X instanceof Be)P=E.startsWith("refs/")?E:`refs/heads/${E}`;else throw X}let N=_.refs.get(P)||"0000000000000000000000000000000000000000";if(l&&!(await l({remote:d,url:x,localRef:{ref:g?"(delete)":A,oid:y},remoteRef:{ref:P,oid:N}})))throw new Qo;let B=!_.capabilities.has("no-thin"),H=new Set;if(!g){let X=[..._.refs.values()],q=new Set;if(N!=="0000000000000000000000000000000000000000"){let De=await Cv({fs:t,cache:e,gitdir:c,oids:[y,N]});for(let ar of De)X.push(ar);B&&(q=await lv({fs:t,cache:e,gitdir:c,oids:De}))}if(!X.includes(y)){let De=await T6({fs:t,cache:e,gitdir:c,start:[y],finish:X});H=await lv({fs:t,cache:e,gitdir:c,oids:De})}if(B){try{let De=await z.resolve({fs:t,gitdir:c,ref:`refs/remotes/${d}/HEAD`,depth:2}),{oid:ar}=await z.resolveAgainstMap({ref:De.replace(`refs/remotes/${d}/`,""),fullref:De,map:_.refs}),Ft=[ar];for(let Ie of await lv({fs:t,cache:e,gitdir:c,oids:Ft}))q.add(Ie)}catch(De){}for(let De of q)H.delete(De)}if(y===N&&(m=!0),!m){if(A.startsWith("refs/tags")&&N!=="0000000000000000000000000000000000000000")throw new Ko("tag-exists");if(y!=="0000000000000000000000000000000000000000"&&N!=="0000000000000000000000000000000000000000"&&!(await tA({fs:t,cache:e,gitdir:c,oid:y,ancestor:N,depth:-1})))throw new Ko("not-fast-forward")}}let ce=Tk([..._.capabilities],["report-status","side-band-64k",`agent=${Ud.agent}`]),Pe=await R6({capabilities:ce,triplets:[{oldoid:N,oid:y,fullRef:P}]}),ve=g?[]:await mA({fs:t,cache:e,gitdir:c,oids:[...H]}),ie=await S.connect({http:r,onProgress:n,corsProxy:v,service:"git-receive-pack",url:x,auth:C,headers:w,body:[...Pe,...ve]}),{packfile:xe,progress:we}=await Dd.demux(ie.body);if(i){let X=Pk(we);hu(X,async q=>{await i(q)})}let W=await P6(xe);if(ie.headers&&(W.headers=ie.headers),d&&W.ok&&W.refs[P].ok&&!A.startsWith("refs/tags")){let X=`refs/remotes/${d}/${P.replace("refs/heads","")}`;g?await z.deleteRef({fs:t,gitdir:c,ref:X}):await z.writeRef({fs:t,gitdir:c,ref:X,value:y})}if(W.ok&&Object.values(W.refs).every(X=>X.ok))return W;{let X=Object.entries(W.refs).filter(([q,De])=>!De.ok).map(([q,De])=>` - ${q}: ${De.error}`).join("");throw new tu(X,W)}}async function wA({fs:t,http:e,onProgress:r,onMessage:n,onAuth:i,onAuthSuccess:s,onAuthFailure:a,onPrePush:o,dir:l,gitdir:c=D(l,".git"),ref:u,remoteRef:f,remote:d="origin",url:h,force:m=!1,delete:g=!1,corsProxy:v,headers:w={},cache:b={}}){try{T("fs",t),T("http",e),T("gitdir",c);let k=new Q(t),x=await J({fsp:k,dotgit:c});return await $6({fs:k,cache:b,http:e,onProgress:r,onMessage:n,onAuth:i,onAuthSuccess:s,onAuthFailure:a,onPrePush:o,gitdir:x,ref:u,remoteRef:f,remote:d,url:h,force:m,delete:g,corsProxy:v,headers:w})}catch(k){throw k.caller="git.push",k}}async function yA({fs:t,cache:e,gitdir:r,oid:n}){let{type:i,object:s}=await Xe({fs:t,cache:e,gitdir:r,oid:n});if(i==="tag")return n=Zr.from(s).parse().object,yA({fs:t,cache:e,gitdir:r,oid:n});if(i!=="blob")throw new fr(n,i,"blob");return{oid:n,blob:new Uint8Array(s)}}async function bA({fs:t,cache:e,gitdir:r,oid:n,filepath:i=void 0}){return i!==void 0&&(n=await fu({fs:t,cache:e,gitdir:r,oid:n,filepath:i})),await yA({fs:t,cache:e,gitdir:r,oid:n})}async function _A({fs:t,dir:e,gitdir:r=D(e,".git"),oid:n,filepath:i,cache:s={}}){try{T("fs",t),T("gitdir",r),T("oid",n);let a=new Q(t),o=await J({fsp:a,dotgit:r});return await bA({fs:a,cache:s,gitdir:o,oid:n,filepath:i})}catch(a){throw a.caller="git.readBlob",a}}async function Tv({fs:t,dir:e,gitdir:r=D(e,".git"),oid:n,cache:i={}}){try{T("fs",t),T("gitdir",r),T("oid",n);let s=new Q(t),a=await J({fsp:s,dotgit:r});return await tl({fs:s,cache:i,gitdir:a,oid:n})}catch(s){throw s.caller="git.readCommit",s}}async function I6({fs:t,cache:e,gitdir:r,ref:n="refs/notes/commits",oid:i}){let s=await z.resolve({gitdir:r,fs:t,ref:n}),{blob:a}=await bA({fs:t,cache:e,gitdir:r,oid:s,filepath:i});return a}async function xA({fs:t,dir:e,gitdir:r=D(e,".git"),ref:n="refs/notes/commits",oid:i,cache:s={}}){try{T("fs",t),T("gitdir",r),T("ref",n),T("oid",i);let a=new Q(t),o=await J({fsp:a,dotgit:r});return await I6({fs:a,cache:s,gitdir:o,ref:n,oid:i})}catch(a){throw a.caller="git.readNote",a}}async function SA({fs:t,dir:e,gitdir:r=D(e,".git"),oid:n,format:i="parsed",filepath:s=void 0,encoding:a=void 0,cache:o={}}){try{T("fs",t),T("gitdir",r),T("oid",n);let l=new Q(t),c=await J({fsp:l,dotgit:r});s!==void 0&&(n=await fu({fs:l,cache:o,gitdir:c,oid:n,filepath:s}));let f=await Xe({fs:l,cache:o,gitdir:c,oid:n,format:i==="parsed"?"content":i});if(f.oid=n,i==="parsed")switch(f.format="parsed",f.type){case"commit":f.object=kr.from(f.object).parse();break;case"tree":f.object=Er.from(f.object).entries();break;case"blob":a?f.object=f.object.toString(a):(f.object=new Uint8Array(f.object),f.format="content");break;case"tag":f.object=Zr.from(f.object).parse();break;default:throw new fr(f.oid,f.type,"blob|commit|tag|tree")}else(f.format==="deflated"||f.format==="wrapped")&&(f.type=f.format);return f}catch(l){throw l.caller="git.readObject",l}}async function F6({fs:t,cache:e,gitdir:r,oid:n}){let{type:i,object:s}=await Xe({fs:t,cache:e,gitdir:r,oid:n,format:"content"});if(i!=="tag")throw new fr(n,i,"tag");let a=Zr.from(s);return{oid:n,tag:a.parse(),payload:a.payload()}}async function EA({fs:t,dir:e,gitdir:r=D(e,".git"),oid:n,cache:i={}}){try{T("fs",t),T("gitdir",r),T("oid",n);let s=new Q(t),a=await J({fsp:s,dotgit:r});return await F6({fs:s,cache:i,gitdir:a,oid:n})}catch(s){throw s.caller="git.readTag",s}}async function kA({fs:t,dir:e,gitdir:r=D(e,".git"),oid:n,filepath:i=void 0,cache:s={}}){try{T("fs",t),T("gitdir",r),T("oid",n);let a=new Q(t),o=await J({fsp:a,dotgit:r});return await al({fs:a,cache:s,gitdir:o,oid:n,filepath:i})}catch(a){throw a.caller="git.readTree",a}}async function AA({fs:t,dir:e,gitdir:r=D(e,".git"),filepath:n,cache:i={}}){try{T("fs",t),T("gitdir",r),T("filepath",n);let s=new Q(t),a=await J({fsp:s,dotgit:r});await ht.acquire({fs:s,gitdir:a,cache:i},async function(o){o.delete({filepath:n})})}catch(s){throw s.caller="git.remove",s}}async function O6({fs:t,cache:e,onSign:r,gitdir:n,ref:i="refs/notes/commits",oid:s,author:a,committer:o,signingKey:l}){let c;try{c=await z.resolve({gitdir:n,fs:t,ref:i})}catch(m){if(!(m instanceof Be))throw m}let f=(await al({fs:t,cache:e,gitdir:n,oid:c||"4b825dc642cb6eb9a060e54bf8d69288fbee4904"})).tree;f=f.filter(m=>m.path!==s);let d=await du({fs:t,gitdir:n,tree:f});return await Hd({fs:t,cache:e,onSign:r,gitdir:n,ref:i,tree:d,parent:c&&[c],message:`Note removed by 'isomorphic-git removeNote' `,author:a,committer:o,signingKey:l})}async function CA({fs:t,onSign:e,dir:r,gitdir:n=D(r,".git"),ref:i="refs/notes/commits",oid:s,author:a,committer:o,signingKey:l,cache:c={}}){try{T("fs",t),T("gitdir",n),T("oid",s);let u=new Q(t),f=await J({fsp:u,dotgit:n}),d=await Ms({fs:u,gitdir:f,author:a});if(!d)throw new Kt("author");let h=await el({fs:u,gitdir:f,author:d,committer:o});if(!h)throw new Kt("committer");return await O6({fs:u,cache:c,onSign:e,gitdir:f,ref:i,oid:s,author:d,committer:h,signingKey:l})}catch(u){throw u.caller="git.removeNote",u}}async function M6({fs:t,gitdir:e,oldref:r,ref:n,checkout:i=!1}){if(!uu(n,!0))throw new Dn(n,zc.clean(n));if(!uu(r,!0))throw new Dn(r,zc.clean(r));let s=`refs/heads/${r}`,a=`refs/heads/${n}`;if(await z.exists({fs:t,gitdir:e,ref:a}))throw new Mn("branch",n,!1);let l=await z.resolve({fs:t,gitdir:e,ref:s,depth:1});await z.writeRef({fs:t,gitdir:e,ref:a,value:l}),await z.deleteRef({fs:t,gitdir:e,ref:s});let u=(await Ls({fs:t,gitdir:e,fullname:!0}))===s;(i||u)&&(await z.writeSymbolicRef({fs:t,gitdir:e,ref:"HEAD",value:a}))}async function TA({fs:t,dir:e,gitdir:r=D(e,".git"),ref:n,oldref:i,checkout:s=!1}){try{T("fs",t),T("gitdir",r),T("ref",n),T("oldref",i);let a=new Q(t),o=await J({fsp:a,dotgit:r});return await M6({fs:a,gitdir:o,ref:n,oldref:i,checkout:s})}catch(a){throw a.caller="git.renameBranch",a}}async function PA({gitdir:t,type:e,object:r}){return zi($s.wrap({type:e,object:r}))}async function RA({fs:t,dir:e,gitdir:r=D(e,".git"),filepath:n,ref:i,cache:s={}}){try{T("fs",t),T("gitdir",r),T("filepath",n);let a=new Q(t),o=await J({fsp:a,dotgit:r}),l,c;try{l=await z.resolve({fs:a,gitdir:o,ref:i||"HEAD"})}catch(d){if(i)throw d}if(l)try{l=await fu({fs:a,cache:s,gitdir:o,oid:l,filepath:n})}catch(d){l=null}let u={ctime:new Date(0),mtime:new Date(0),dev:0,ino:0,mode:0,uid:0,gid:0,size:0},f=e&&(await a.read(D(e,n)));f&&(c=await PA({gitdir:o,type:"blob",object:f}),l===c&&(u=await a.lstat(D(e,n)))),await ht.acquire({fs:a,gitdir:o,cache:s},async function(d){d.delete({filepath:n}),l&&d.insert({filepath:n,stats:u,oid:l})})}catch(a){throw a.caller="git.reset",a}}async function $A({fs:t,dir:e,gitdir:r=D(e,".git"),ref:n,depth:i}){try{T("fs",t),T("gitdir",r),T("ref",n);let s=new Q(t),a=await J({fsp:s,dotgit:r});return await z.resolve({fs:s,gitdir:a,ref:n,depth:i})}catch(s){throw s.caller="git.resolveRef",s}}async function IA({fs:t,dir:e,gitdir:r=D(e,".git"),path:n,value:i,append:s=!1}){try{T("fs",t),T("gitdir",r),T("path",n);let a=new Q(t),o=await J({fsp:a,dotgit:r}),l=await lt.get({fs:a,gitdir:o});s?await l.append(n,i):await l.set(n,i),await lt.save({fs:a,gitdir:o,config:l})}catch(a){throw a.caller="git.setConfig",a}}async function FA({fs:t,gitdir:e,commit:r}){let n=kr.from(r).toObject();return await Ar({fs:t,gitdir:e,type:"commit",object:n,format:"content"})}var Ld=class t{static get timezoneOffsetForRefLogEntry(){let e=new Date().getTimezoneOffset(),r=Math.abs(Math.floor(e/60)),n=Math.abs(e%60).toString().padStart(2,"0");return`${e>0?"-":"+"}${r.toString().padStart(2,"0")}${n}`}static createStashReflogEntry(e,r,n){let i=e.name.replace(/\s/g,""),s="0000000000000000000000000000000000000000",a=Math.floor(Date.now()/1e3),o=t.timezoneOffsetForRefLogEntry;return`${s} ${r} ${i} ${e.email} ${a} ${o} ${n} `}static getStashReflogEntry(e,r=!1){return e.split(` `).filter(s=>s).reverse().map((s,a)=>r?`stash@{${a}}: ${s.split("\t")[1]}`:s)}},D6={stage:Ca,workdir:sl},cv;async function il(t,e){return cv===void 0&&(cv=new Wc),cv.acquire(t,e)}async function L6(t,e,r,n,i=null){let s=D(r,n),a=await t.lstat(s);if(!a)throw new Be(s);if(a.isDirectory())throw new he(`${s}: file expected, but found directory`);let o=i?await lk({fs:t,gitdir:e,oid:i}):void 0,l=o?i:void 0;return o||(await il({fs:t,gitdir:e,currentFilepath:s},async()=>{let c=a.isSymbolicLink()?await t.readlink(s).then(mk):await t.read(s);if(c===null)throw new Be(s);l=await Ar({fs:t,gitdir:e,type:"blob",object:c})})),l}async function N6({fs:t,dir:e,gitdir:r,entries:n}){async function i(s){if(s.type==="tree"){if(!s.oid){let a=await Promise.all(s.children.map(i));s.oid=await du({fs:t,gitdir:r,tree:a}),s.mode=16384}}else s.type==="blob"&&(s.oid=await L6(t,r,e,s.path,s.oid),s.mode=33188);return s.path=s.path.split("/").pop(),s}return Promise.all(n.map(i))}async function tk({fs:t,dir:e,gitdir:r,treePair:n}){let i=n[1]==="stage",s=n.map(h=>typeof h=="string"?D6[h]():h),a=[],u=await Fs({fs:t,cache:{},dir:e,gitdir:r,trees:s,map:async(h,[m,g])=>{if(!(h==="."||(await Os.isIgnored({fs:t,dir:e,gitdir:r,filepath:h})))&&g)return(!m||(await m.oid())!==(await g.oid())&&(await g.oid())!==void 0)&&a.push([m,g]),{mode:await g.mode(),path:h,oid:await g.oid(),type:await g.type()}},reduce:async(h,m)=>(m=m.filter(Boolean),h?(h.children=m,h):m.length>0?m:void 0),iterate:async(h,m)=>{let g=[];for(let v of m){let[w,b]=v;i?b&&((await t.exists(`${e}/${b.toString()}`))?g.push(v):a.push([null,b])):w&&(b?g.push(v):a.push([w,null]))}return g.length?Promise.all(g.map(h)):[]}});if(a.length===0||u.length===0)return null;let d=(await N6({fs:t,dir:e,gitdir:r,entries:u})).filter(Boolean).map(h=>({mode:h.mode,path:h.path,oid:h.oid,type:h.type}));return du({fs:t,gitdir:r,tree:d})}async function B6({fs:t,dir:e,gitdir:r,stashCommit:n,parentCommit:i,wasStaged:s}){let a=[],o=[],l=await Fs({fs:t,cache:{},dir:e,gitdir:r,trees:[Xr({ref:i}),Xr({ref:n})],map:async(c,[u,f])=>{if(c==="."||(await Os.isIgnored({fs:t,dir:e,gitdir:r,filepath:c})))return;let d=f?await f.type():await u.type();if(d!=="tree"&&d!=="blob")return;if(!f&&u){let m=d==="tree"?"rmdir":"rm";return d==="tree"&&a.push(c),d==="blob"&&s&&o.push({filepath:c,oid:await u.oid()}),{method:m,filepath:c}}let h=await f.oid();if(!u||(await u.oid())!==h)return d==="tree"?{method:"mkdir",filepath:c}:(s&&o.push({filepath:c,oid:h,stats:await t.lstat(D(e,c))}),{method:"write",filepath:c,oid:h})}});await il({fs:t,gitdir:r,dirRemoved:a,ops:l},async()=>{for(let c of l){let u=D(e,c.filepath);switch(c.method){case"rmdir":await t.rmdir(u);break;case"mkdir":await t.mkdir(u);break;case"rm":await t.rm(u);break;case"write":if(!a.some(f=>u.startsWith(f))){let{object:f}=await Xe({fs:t,cache:{},gitdir:r,oid:c.oid});(await t.exists(u))&&(await t.rm(u)),await t.write(u,f)}break}}}),await ht.acquire({fs:t,gitdir:r,cache:{}},async c=>{o.forEach(({filepath:u,stats:f,oid:d})=>{c.insert({filepath:u,stats:f,oid:d})})})}var Aa=class t{constructor({fs:e,dir:r,gitdir:n=D(r,".git")}){Object.assign(this,{fs:e,dir:r,gitdir:n,_author:null})}static get refStash(){return"refs/stash"}static get refLogsStash(){return"logs/refs/stash"}get refStashPath(){return D(this.gitdir,t.refStash)}get refLogsStashPath(){return D(this.gitdir,t.refLogsStash)}async getAuthor(){if(!this._author&&(this._author=await Ms({fs:this.fs,gitdir:this.gitdir,author:{}}),!this._author))throw new Kt("author");return this._author}async getStashSHA(e,r){return(await this.fs.exists(this.refStashPath))?(r||(await this.readStashReflogs({parsed:!1})))[e].split(" ")[1]:null}async writeStashCommit({message:e,tree:r,parent:n}){return FA({fs:this.fs,gitdir:this.gitdir,commit:{message:e,tree:r,parent:n,author:await this.getAuthor(),committer:await this.getAuthor()}})}async readStashCommit(e){let r=await this.readStashReflogs({parsed:!1});if(e!==0&&(e<0||e>r.length-1))throw new Dn(`stash@${e}`,"number that is in range of [0, num of stash pushed]");let n=await this.getStashSHA(e,r);return n?tl({fs:this.fs,cache:{},gitdir:this.gitdir,oid:n}):{}}async writeStashRef(e){return z.writeRef({fs:this.fs,gitdir:this.gitdir,ref:t.refStash,value:e})}async writeStashReflogEntry({stashCommit:e,message:r}){let n=await this.getAuthor(),i=Ld.createStashReflogEntry(n,e,r),s=this.refLogsStashPath;await il({filepath:s,entry:i},async()=>{let a=(await this.fs.exists(s))?await this.fs.read(s,"utf8"):"";await this.fs.write(s,a+i,"utf8")})}async readStashReflogs({parsed:e=!1}){if(!(await this.fs.exists(this.refLogsStashPath)))return[];let r=await this.fs.read(this.refLogsStashPath,"utf8");return Ld.getStashReflogEntry(r,e)}};async function OA({fs:t,dir:e,gitdir:r,message:n=""}){let i=new Aa({fs:t,dir:e,gitdir:r});await i.getAuthor();let s=await Ls({fs:t,gitdir:r,fullname:!1}),a=await z.resolve({fs:t,gitdir:r,ref:"HEAD"}),l=(await Tv({fs:t,dir:e,gitdir:r,oid:a})).commit.message,c=[a],u=null,f=Xr({ref:"HEAD"}),d=await tk({fs:t,dir:e,gitdir:r,treePair:[Xr({ref:"HEAD"}),"stage"]});if(d){let v=await i.writeStashCommit({message:`stash-Index: WIP on ${s} - ${new Date().toISOString()}`,tree:d,parent:c});c.push(v),u=d,f=Ca()}let h=await tk({fs:t,dir:e,gitdir:r,treePair:[f,"workdir"]});if(h){let v=await i.writeStashCommit({message:`stash-WorkDir: WIP on ${s} - ${new Date().toISOString()}`,tree:h,parent:[c[c.length-1]]});c.push(v),u=h}if(!u||!d&&!h)throw new Be("changes, nothing to stash");let m=(n.trim()||`WIP on ${s}`)+`: ${a.substring(0,7)} ${l}`;return{stashCommit:await i.writeStashCommit({message:m,tree:u,parent:c}),stashMsg:m,branch:s,stashMgr:i}}async function H6({fs:t,dir:e,gitdir:r,message:n=""}){let{stashCommit:i,stashMsg:s,branch:a,stashMgr:o}=await OA({fs:t,dir:e,gitdir:r,message:n});return await o.writeStashRef(i),await o.writeStashReflogEntry({stashCommit:i,message:s}),await kv({fs:t,dir:e,gitdir:r,ref:a,track:!1,force:!0}),i}async function U6({fs:t,dir:e,gitdir:r,message:n=""}){let{stashCommit:i}=await OA({fs:t,dir:e,gitdir:r,message:n});return i}async function MA({fs:t,dir:e,gitdir:r,refIdx:n=0}){let s=await new Aa({fs:t,dir:e,gitdir:r}).readStashCommit(n),{parent:a=null}=s.commit?s.commit:{};if(!(!a||!Array.isArray(a)))for(let o=0;o{(await t.exists(a))&&(await t.rm(a))});let o=await i.readStashReflogs({parsed:!1});if(!o.length)return;o.splice(n,1);let l=i.refLogsStashPath;await il({reflogEntries:o,stashReflogPath:l,stashMgr:i},async()=>{if(o.length){await t.write(l,o.reverse().join(` `)+` `,"utf8");let c=o[o.length-1].split(" ")[1];await i.writeStashRef(c)}else await t.rm(l)})}async function G6({fs:t,dir:e,gitdir:r}){return new Aa({fs:t,dir:e,gitdir:r}).readStashReflogs({parsed:!0})}async function j6({fs:t,dir:e,gitdir:r}){let n=new Aa({fs:t,dir:e,gitdir:r}),i=[n.refStashPath,n.refLogsStashPath];await il(i,async()=>{await Promise.all(i.map(async s=>{if(await t.exists(s))return t.rm(s)}))})}async function q6({fs:t,dir:e,gitdir:r,refIdx:n=0}){await MA({fs:t,dir:e,gitdir:r,refIdx:n}),await DA({fs:t,dir:e,gitdir:r,refIdx:n})}async function LA({fs:t,dir:e,gitdir:r=D(e,".git"),op:n="push",message:i="",refIdx:s=0}){T("fs",t),T("dir",e),T("gitdir",r),T("op",n);let a={push:H6,apply:MA,drop:DA,list:G6,clear:j6,pop:q6,create:U6},o=["apply","drop","pop"];try{let l=new Q(t),c=await J({fsp:l,dotgit:r});["refs","logs","logs/refs"].map(d=>D(c,d)).forEach(async d=>{(await l.exists(d))||(await l.mkdir(d))});let f=a[n];if(f){if(o.includes(n)&&s<0)throw new Dn(`stash@${s}`,"number that is in range of [0, num of stash pushed]");return await f({fs:l,dir:e,gitdir:c,message:i,refIdx:s})}throw new Error(`To be implemented: ${n}`)}catch(l){throw l.caller="git.stash",l}}async function NA({fs:t,dir:e,gitdir:r=D(e,".git"),filepath:n,cache:i={}}){try{T("fs",t),T("gitdir",r),T("filepath",n);let s=new Q(t),a=await J({fsp:s,dotgit:r});if(await Os.isIgnored({fs:s,gitdir:a,dir:e,filepath:n}))return"ignored";let l=await W6({fs:s,cache:i,gitdir:a}),c=await BA({fs:s,cache:i,gitdir:a,tree:l,path:n}),u=await ht.acquire({fs:s,gitdir:a,cache:i},async function(v){for(let w of v)if(w.path===n)return w;return null}),f=await s.lstat(D(e,n)),d=c!==null,h=u!==null,m=f!==null,g=async()=>{if(h&&!Td(u,f))return u.oid;{let v=await s.read(D(e,n)),w=await PA({gitdir:a,type:"blob",object:v});return h&&u.oid===w&&f.size!==-1&&ht.acquire({fs:s,gitdir:a,cache:i},async function(b){b.insert({filepath:n,stats:f,oid:w})}),w}};if(!d&&!m&&!h)return"absent";if(!d&&!m&&h)return"*absent";if(!d&&m&&!h)return"*added";if(!d&&m&&h)return(await g())===u.oid?"added":"*added";if(d&&!m&&!h)return"deleted";if(d&&!m&&h)return c===u.oid,"*deleted";if(d&&m&&!h)return(await g())===c?"*undeleted":"*undeletemodified";if(d&&m&&h){let v=await g();return v===c?v===u.oid?"unmodified":"*unmodified":v===u.oid?"modified":"*modified"}}catch(s){throw s.caller="git.status",s}}async function BA({fs:t,cache:e,gitdir:r,tree:n,path:i}){typeof i=="string"&&(i=i.split("/"));let s=i.shift();for(let a of n)if(a.path===s){if(i.length===0)return a.oid;let{type:o,object:l}=await Xe({fs:t,cache:e,gitdir:r,oid:a.oid});if(o==="tree"){let c=Er.from(l);return BA({fs:t,cache:e,gitdir:r,tree:c,path:i})}if(o==="blob")throw new fr(a.oid,o,"blob",i.join("/"))}return null}async function W6({fs:t,cache:e,gitdir:r}){let n;try{n=await z.resolve({fs:t,gitdir:r,ref:"HEAD"})}catch(s){if(s instanceof Be)return[]}let{tree:i}=await al({fs:t,cache:e,gitdir:r,oid:n});return i}async function HA({fs:t,dir:e,gitdir:r=D(e,".git"),ref:n="HEAD",filepaths:i=["."],filter:s,cache:a={},ignored:o=!1}){try{T("fs",t),T("gitdir",r),T("ref",n);let l=new Q(t),c=await J({fsp:l,dotgit:r});return await Fs({fs:l,cache:a,dir:e,gitdir:c,trees:[Xr({ref:n}),sl(),Ca()],map:async function(u,[f,d,h]){if(!f&&!h&&d&&!o&&(await Os.isIgnored({fs:l,dir:e,filepath:u}))||!i.some(y=>Ak(u,y)))return null;if(s&&!s(u))return;let[m,g,v]=await Promise.all([f&&f.type(),d&&d.type(),h&&h.type()]),w=[m,g,v].includes("blob");if((m==="tree"||m==="special")&&!w)return;if(m==="commit")return null;if((g==="tree"||g==="special")&&!w)return;if(v==="commit")return null;if((v==="tree"||v==="special")&&!w)return;let b=m==="blob"?await f.oid():void 0,k=v==="blob"?await h.oid():void 0,x;m!=="blob"&&g==="blob"&&v!=="blob"?x="42":g==="blob"&&(x=await d.oid());let E=[void 0,b,x,k],A=E.map(y=>E.indexOf(y));return A.shift(),[u,...A]}})}catch(l){throw l.caller="git.statusMatrix",l}}async function UA({fs:t,dir:e,gitdir:r=D(e,".git"),ref:n,object:i,force:s=!1}){try{T("fs",t),T("gitdir",r),T("ref",n);let a=new Q(t);if(n===void 0)throw new Sr("ref");n=n.startsWith("refs/tags/")?n:`refs/tags/${n}`;let o=await J({fsp:a,dotgit:r}),l=await z.resolve({fs:a,gitdir:o,ref:i||"HEAD"});if(!s&&(await z.exists({fs:a,gitdir:o,ref:n})))throw new Mn("tag",n);await z.writeRef({fs:a,gitdir:o,ref:n,value:l})}catch(a){throw a.caller="git.tag",a}}async function GA({fs:t,dir:e,gitdir:r=D(e,".git"),cache:n={},filepath:i,oid:s,mode:a,add:o,remove:l,force:c}){try{T("fs",t),T("gitdir",r),T("filepath",i);let u=new Q(t),f=await J({fsp:u,dotgit:r});if(l)return await ht.acquire({fs:u,gitdir:f,cache:n},async function(h){if(!c){let m=await u.lstat(D(e,i));if(m){if(m.isDirectory())throw new Is("directory");return}}h.has({filepath:i})&&h.delete({filepath:i})});let d;if(!s){if(d=await u.lstat(D(e,i)),!d)throw new Be(`file at "${i}" on disk and "remove" not set`);if(d.isDirectory())throw new Is("directory")}return await ht.acquire({fs:u,gitdir:f,cache:n},async function(h){if(!o&&!h.has({filepath:i}))throw new Be(`file at "${i}" in index and "add" not set`);let m;if(s)m={ctime:new Date(0),mtime:new Date(0),dev:0,ino:0,mode:a,uid:0,gid:0,size:0};else{m=d;let g=m.isSymbolicLink()?await u.readlink(D(e,i)):await u.read(D(e,i));s=await Ar({fs:u,gitdir:f,type:"blob",format:"content",object:g})}return h.insert({filepath:i,oid:s,stats:m}),s})}catch(u){throw u.caller="git.updateIndex",u}}function jA(){try{return Ud.version}catch(t){throw t.caller="git.version",t}}async function qA({fs:t,dir:e,gitdir:r=D(e,".git"),trees:n,map:i,reduce:s,iterate:a,cache:o={}}){try{T("fs",t),T("gitdir",r),T("trees",n);let l=new Q(t),c=await J({fsp:l,dotgit:r});return await Fs({fs:l,cache:o,dir:e,gitdir:c,trees:n,map:i,reduce:s,iterate:a})}catch(l){throw l.caller="git.walk",l}}async function WA({fs:t,dir:e,gitdir:r=D(e,".git"),blob:n}){try{T("fs",t),T("gitdir",r),T("blob",n);let i=new Q(t),s=await J({fsp:i,dotgit:r});return await Ar({fs:i,gitdir:s,type:"blob",object:n,format:"content"})}catch(i){throw i.caller="git.writeBlob",i}}async function zA({fs:t,dir:e,gitdir:r=D(e,".git"),commit:n}){try{T("fs",t),T("gitdir",r),T("commit",n);let i=new Q(t),s=await J({fsp:i,dotgit:r});return await FA({fs:i,gitdir:s,commit:n})}catch(i){throw i.caller="git.writeCommit",i}}async function VA({fs:t,dir:e,gitdir:r=D(e,".git"),type:n,object:i,format:s="parsed",oid:a,encoding:o=void 0}){try{let l=new Q(t),c=await J({fsp:l,dotgit:r});if(s==="parsed"){switch(n){case"commit":i=kr.from(i).toObject();break;case"tree":i=Er.from(i).toObject();break;case"blob":i=Buffer.from(i,o);break;case"tag":i=Zr.from(i).toObject();break;default:throw new fr(a||"",n,"blob|commit|tag|tree")}s="content"}return a=await Ar({fs:l,gitdir:c,type:n,object:i,oid:a,format:s}),a}catch(l){throw l.caller="git.writeObject",l}}async function YA({fs:t,dir:e,gitdir:r=D(e,".git"),ref:n,value:i,force:s=!1,symbolic:a=!1}){try{T("fs",t),T("gitdir",r),T("ref",n),T("value",i);let o=new Q(t);if(!uu(n,!0))throw new Dn(n,zc.clean(n));let l=await J({fsp:o,dotgit:r});if(!s&&(await z.exists({fs:o,gitdir:l,ref:n})))throw new Mn("ref",n);a?await z.writeSymbolicRef({fs:o,gitdir:l,ref:n,value:i}):(i=await z.resolve({fs:o,gitdir:l,ref:i}),await z.writeRef({fs:o,gitdir:l,ref:n,value:i}))}catch(o){throw o.caller="git.writeRef",o}}async function z6({fs:t,gitdir:e,tag:r}){let n=Zr.from(r).toObject();return await Ar({fs:t,gitdir:e,type:"tag",object:n,format:"content"})}async function XA({fs:t,dir:e,gitdir:r=D(e,".git"),tag:n}){try{T("fs",t),T("gitdir",r),T("tag",n);let i=new Q(t),s=await J({fsp:i,dotgit:r});return await z6({fs:i,gitdir:s,tag:n})}catch(i){throw i.caller="git.writeTag",i}}async function ZA({fs:t,dir:e,gitdir:r=D(e,".git"),tree:n}){try{T("fs",t),T("gitdir",r),T("tree",n);let i=new Q(t),s=await J({fsp:i,dotgit:r});return await du({fs:i,gitdir:s,tree:n})}catch(i){throw i.caller="git.writeTree",i}}var V6={Errors:fk,STAGE:Ca,TREE:Xr,WORKDIR:sl,add:gk,abortMerge:hk,addNote:_k,addRemote:Sk,annotatedTag:Ek,branch:kk,checkout:kv,clone:$k,commit:Ik,getConfig:Vk,getConfigAll:Yk,setConfig:IA,currentBranch:Fk,deleteBranch:Ok,deleteRef:Mk,deleteRemote:Dk,deleteTag:Lk,expandOid:Nk,expandRef:Bk,fastForward:Gk,fetch:jk,findMergeBase:qk,findRoot:zk,getRemoteInfo:Xk,getRemoteInfo2:Kk,hashBlob:Qk,indexPack:Jk,init:eA,isDescendent:rA,isIgnored:nA,listBranches:iA,listFiles:aA,listNotes:oA,listRefs:lA,listRemotes:cA,listServerRefs:uA,listTags:fA,log:hA,merge:pA,packObjects:gA,pull:vA,push:wA,readBlob:_A,readCommit:Tv,readNote:xA,readObject:SA,readTag:EA,readTree:kA,remove:AA,removeNote:CA,renameBranch:TA,resetIndex:RA,updateIndex:GA,resolveRef:$A,status:NA,statusMatrix:HA,tag:UA,version:jA,walk:qA,writeBlob:WA,writeCommit:zA,writeObject:VA,writeRef:YA,writeTag:XA,writeTree:ZA,stash:LA};Y.Errors=fk;Y.STAGE=Ca;Y.TREE=Xr;Y.WORKDIR=sl;Y.abortMerge=hk;Y.add=gk;Y.addNote=_k;Y.addRemote=Sk;Y.annotatedTag=Ek;Y.branch=kk;Y.checkout=kv;Y.clone=$k;Y.commit=Ik;Y.currentBranch=Fk;Y.default=V6;Y.deleteBranch=Ok;Y.deleteRef=Mk;Y.deleteRemote=Dk;Y.deleteTag=Lk;Y.expandOid=Nk;Y.expandRef=Bk;Y.fastForward=Gk;Y.fetch=jk;Y.findMergeBase=qk;Y.findRoot=zk;Y.getConfig=Vk;Y.getConfigAll=Yk;Y.getRemoteInfo=Xk;Y.getRemoteInfo2=Kk;Y.hashBlob=Qk;Y.indexPack=Jk;Y.init=eA;Y.isDescendent=rA;Y.isIgnored=nA;Y.listBranches=iA;Y.listFiles=aA;Y.listNotes=oA;Y.listRefs=lA;Y.listRemotes=cA;Y.listServerRefs=uA;Y.listTags=fA;Y.log=hA;Y.merge=pA;Y.packObjects=gA;Y.pull=vA;Y.push=wA;Y.readBlob=_A;Y.readCommit=Tv;Y.readNote=xA;Y.readObject=SA;Y.readTag=EA;Y.readTree=kA;Y.remove=AA;Y.removeNote=CA;Y.renameBranch=TA;Y.resetIndex=RA;Y.resolveRef=$A;Y.setConfig=IA;Y.stash=LA;Y.status=NA;Y.statusMatrix=HA;Y.tag=UA;Y.updateIndex=GA;Y.version=jA;Y.walk=qA;Y.writeBlob=WA;Y.writeCommit=zA;Y.writeObject=VA;Y.writeRef=YA;Y.writeTag=XA;Y.writeTree=ZA});var lC=I((TK,oC)=>{"use strict";p();oC.exports={aliceblue:[240,248,255],antiquewhite:[250,235,215],aqua:[0,255,255],aquamarine:[127,255,212],azure:[240,255,255],beige:[245,245,220],bisque:[255,228,196],black:[0,0,0],blanchedalmond:[255,235,205],blue:[0,0,255],blueviolet:[138,43,226],brown:[165,42,42],burlywood:[222,184,135],cadetblue:[95,158,160],chartreuse:[127,255,0],chocolate:[210,105,30],coral:[255,127,80],cornflowerblue:[100,149,237],cornsilk:[255,248,220],crimson:[220,20,60],cyan:[0,255,255],darkblue:[0,0,139],darkcyan:[0,139,139],darkgoldenrod:[184,134,11],darkgray:[169,169,169],darkgreen:[0,100,0],darkgrey:[169,169,169],darkkhaki:[189,183,107],darkmagenta:[139,0,139],darkolivegreen:[85,107,47],darkorange:[255,140,0],darkorchid:[153,50,204],darkred:[139,0,0],darksalmon:[233,150,122],darkseagreen:[143,188,143],darkslateblue:[72,61,139],darkslategray:[47,79,79],darkslategrey:[47,79,79],darkturquoise:[0,206,209],darkviolet:[148,0,211],deeppink:[255,20,147],deepskyblue:[0,191,255],dimgray:[105,105,105],dimgrey:[105,105,105],dodgerblue:[30,144,255],firebrick:[178,34,34],floralwhite:[255,250,240],forestgreen:[34,139,34],fuchsia:[255,0,255],gainsboro:[220,220,220],ghostwhite:[248,248,255],gold:[255,215,0],goldenrod:[218,165,32],gray:[128,128,128],green:[0,128,0],greenyellow:[173,255,47],grey:[128,128,128],honeydew:[240,255,240],hotpink:[255,105,180],indianred:[205,92,92],indigo:[75,0,130],ivory:[255,255,240],khaki:[240,230,140],lavender:[230,230,250],lavenderblush:[255,240,245],lawngreen:[124,252,0],lemonchiffon:[255,250,205],lightblue:[173,216,230],lightcoral:[240,128,128],lightcyan:[224,255,255],lightgoldenrodyellow:[250,250,210],lightgray:[211,211,211],lightgreen:[144,238,144],lightgrey:[211,211,211],lightpink:[255,182,193],lightsalmon:[255,160,122],lightseagreen:[32,178,170],lightskyblue:[135,206,250],lightslategray:[119,136,153],lightslategrey:[119,136,153],lightsteelblue:[176,196,222],lightyellow:[255,255,224],lime:[0,255,0],limegreen:[50,205,50],linen:[250,240,230],magenta:[255,0,255],maroon:[128,0,0],mediumaquamarine:[102,205,170],mediumblue:[0,0,205],mediumorchid:[186,85,211],mediumpurple:[147,112,219],mediumseagreen:[60,179,113],mediumslateblue:[123,104,238],mediumspringgreen:[0,250,154],mediumturquoise:[72,209,204],mediumvioletred:[199,21,133],midnightblue:[25,25,112],mintcream:[245,255,250],mistyrose:[255,228,225],moccasin:[255,228,181],navajowhite:[255,222,173],navy:[0,0,128],oldlace:[253,245,230],olive:[128,128,0],olivedrab:[107,142,35],orange:[255,165,0],orangered:[255,69,0],orchid:[218,112,214],palegoldenrod:[238,232,170],palegreen:[152,251,152],paleturquoise:[175,238,238],palevioletred:[219,112,147],papayawhip:[255,239,213],peachpuff:[255,218,185],peru:[205,133,63],pink:[255,192,203],plum:[221,160,221],powderblue:[176,224,230],purple:[128,0,128],rebeccapurple:[102,51,153],red:[255,0,0],rosybrown:[188,143,143],royalblue:[65,105,225],saddlebrown:[139,69,19],salmon:[250,128,114],sandybrown:[244,164,96],seagreen:[46,139,87],seashell:[255,245,238],sienna:[160,82,45],silver:[192,192,192],skyblue:[135,206,235],slateblue:[106,90,205],slategray:[112,128,144],slategrey:[112,128,144],snow:[255,250,250],springgreen:[0,255,127],steelblue:[70,130,180],tan:[210,180,140],teal:[0,128,128],thistle:[216,191,216],tomato:[255,99,71],turquoise:[64,224,208],violet:[238,130,238],wheat:[245,222,179],white:[255,255,255],whitesmoke:[245,245,245],yellow:[255,255,0],yellowgreen:[154,205,50]}});var uC=I((RK,cC)=>{p();var jv={px:{px:1,cm:37.79527559055118,mm:3.7795275590551185,in:96,pt:1.3333333333333333,pc:16},cm:{px:.026458333333333334,cm:1,mm:.1,in:2.54,pt:.035277777777777776,pc:.42333333333333334},mm:{px:.26458333333333334,cm:10,mm:1,in:25.4,pt:.35277777777777775,pc:4.233333333333333},in:{px:.010416666666666666,cm:.39370078740157477,mm:.03937007874015748,in:1,pt:.013888888888888888,pc:.16666666666666666},pt:{px:.75,cm:28.346456692913385,mm:2.834645669291339,in:72,pt:1,pc:12},pc:{px:.0625,cm:2.3622047244094486,mm:.2362204724409449,in:6,pt:.08333333333333333,pc:1},deg:{deg:1,grad:.9,rad:180/Math.PI,turn:360},grad:{deg:1.1111111111111112,grad:1,rad:200/Math.PI,turn:400},rad:{deg:Math.PI/180,grad:Math.PI/200,rad:1,turn:Math.PI*2},turn:{deg:.002777777777777778,grad:.0025,rad:.5/Math.PI,turn:1},s:{s:1,ms:.001},ms:{s:1e3,ms:1},Hz:{Hz:1,kHz:1e3},kHz:{Hz:.001,kHz:1},dpi:{dpi:1,dpcm:.39370078740157477,dppx:.010416666666666666},dpcm:{dpi:2.54,dpcm:1,dppx:.026458333333333334},dppx:{dpi:96,dpcm:37.79527559055118,dppx:1}};cC.exports=function(t,e,r,n){if(!jv.hasOwnProperty(r))throw new Error("Cannot convert to "+r);if(!jv[r].hasOwnProperty(e))throw new Error("Cannot convert from "+e+" to "+r);var i=jv[r][e]*t;return n!==!1?(n=Math.pow(10,parseInt(n)||5),Math.round(i*n)/n):i}});var EC=I(Yi=>{"use strict";p();Object.defineProperty(Yi,"__esModule",{value:!0});Yi.fromRgba=fl;Yi.fromRgb=qv;Yi.fromHsla=Kd;Yi.fromHsl=xC;Yi.fromString=SC;Yi.default=void 0;var fC=pC(lC()),r5=pC(uC());function pC(t){return t&&t.__esModule?t:{default:t}}function n5(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}function dC(t,e){for(var r=0;rt.length)&&(e=t.length);for(var r=0,n=new Array(e);r-1}function c5(t,e,r){var n=t/255,i=e/255,s=r/255,a=Math.max(n,i,s),o=Math.min(n,i,s),l=a-o,c=(a+o)/2;if(l===0)return[0,0,c*100];var u=l/(1-Math.abs(2*c-1)),f=function(){switch(a){case n:return(i-s)/l%6;case i:return(s-n)/l+2;default:return(n-i)/l+4}}();return[f*60,u*100,c*100]}function u5(t,e,r){var n=t/60,i=e/100,s=r/100,a=(1-Math.abs(2*s-1))*i,o=a*(1-Math.abs(n%2-1)),l=s-a/2,c=function(){return n<1?[a,o,0]:n<2?[o,a,0]:n<3?[0,a,o]:n<4?[0,o,a]:n<5?[o,0,a]:[a,0,o]}(),u=dr(c,3),f=u[0],d=u[1],h=u[2];return[(f+l)*255,(d+l)*255,(h+l)*255]}var f5=function(){function t(e){var r=dr(e,4),n=r[0],i=r[1],s=r[2],a=r[3];n5(this,t),this.values=[Math.max(Math.min(parseInt(n,10),255),0),Math.max(Math.min(parseInt(i,10),255),0),Math.max(Math.min(parseInt(s,10),255),0),a==null?1:Math.max(Math.min(parseFloat(a),255),0)]}return i5(t,[{key:"toRgbString",value:function(){var r=dr(this.values,4),n=r[0],i=r[1],s=r[2],a=r[3];return a===1?"rgb(".concat(n,", ").concat(i,", ").concat(s,")"):"rgba(".concat(n,", ").concat(i,", ").concat(s,", ").concat(a,")")}},{key:"toHslString",value:function(){var r=this.toHslaArray(),n=dr(r,4),i=n[0],s=n[1],a=n[2],o=n[3];return o===1?"hsl(".concat(i,", ").concat(s,"%, ").concat(a,"%)"):"hsla(".concat(i,", ").concat(s,"%, ").concat(a,"%, ").concat(o,")")}},{key:"toHexString",value:function(){var r=dr(this.values,4),n=r[0],i=r[1],s=r[2],a=r[3];return n=Number(n).toString(16).padStart(2,"0"),i=Number(i).toString(16).padStart(2,"0"),s=Number(s).toString(16).padStart(2,"0"),a=a<1?parseInt(a*255,10).toString(16).padStart(2,"0"):"","#".concat(n).concat(i).concat(s).concat(a)}},{key:"toRgbaArray",value:function(){return this.values}},{key:"toHslaArray",value:function(){var r=dr(this.values,4),n=r[0],i=r[1],s=r[2],a=r[3],o=c5(n,i,s),l=dr(o,3),c=l[0],u=l[1],f=l[2];return[c,u,f,a]}}]),t}();function fl(t){var e=dr(t,4),r=e[0],n=e[1],i=e[2],s=e[3];return new f5([r,n,i,s])}function qv(t){var e=dr(t,3),r=e[0],n=e[1],i=e[2];return fl([r,n,i,1])}function Kd(t){var e=dr(t,4),r=e[0],n=e[1],i=e[2],s=e[3],a=u5(r,n,i),o=dr(a,3),l=o[0],c=o[1],u=o[2];return fl([l,c,u,s])}function xC(t){var e=dr(t,3),r=e[0],n=e[1],i=e[2];return Kd([r,n,i,1])}function d5(t){var e=mC.exec(t)||gC.exec(t),r=dr(e,5),n=r[1],i=r[2],s=r[3],a=r[4];return n=parseInt(n.length<2?n.repeat(2):n,16),i=parseInt(i.length<2?i.repeat(2):i,16),s=parseInt(s.length<2?s.repeat(2):s,16),a=a&&(parseInt(a.length<2?a.repeat(2):a,16)/255).toPrecision(1)||1,fl([n,i,s,a])}function h5(t){var e=vC.exec(t)||yC.exec(t)||wC.exec(t)||bC.exec(t),r=dr(e,5),n=r[1],i=r[2],s=r[3],a=r[4];return n=gu(n,"%")?parseInt(n,10)*255/100:parseInt(n,10),i=gu(i,"%")?parseInt(i,10)*255/100:parseInt(i,10),s=gu(s,"%")>0?parseInt(s,10)*255/100:parseInt(s,10),a=a===void 0?1:parseFloat(a)/(gu(a,"%")?100:1),fl([n,i,s,a])}function p5(t){var e=_C.exec(t),r=dr(e,6),n=r[1],i=r[2],s=r[3],a=r[4],o=r[5];return i=i||"deg",n=(0,r5.default)(parseFloat(n),i,"deg"),s=parseFloat(s),a=parseFloat(a),o=o===void 0?1:parseFloat(o)/(gu(o,"%")?100:1),Kd([n,s,a,o])}function SC(t){return fC.default[t]?qv(fC.default[t]):mC.test(t)||gC.test(t)?d5(t):vC.test(t)||yC.test(t)||wC.test(t)||bC.test(t)?h5(t):_C.test(t)?p5(t):null}var m5={fromString:SC,fromRgb:qv,fromRgba:fl,fromHsl:xC,fromHsla:Kd};Yi.default=m5});var Wv=I((OK,AC)=>{"use strict";p();var kC=Object.prototype.toString;AC.exports=function(e){var r=kC.call(e),n=r==="[object Arguments]";return n||(n=r!=="[object Array]"&&e!==null&&typeof e=="object"&&typeof e.length=="number"&&e.length>=0&&kC.call(e.callee)==="[object Function]"),n}});var MC=I((DK,OC)=>{"use strict";p();var FC;Object.keys||(vu=Object.prototype.hasOwnProperty,zv=Object.prototype.toString,CC=Wv(),Vv=Object.prototype.propertyIsEnumerable,TC=!Vv.call({toString:null},"toString"),PC=Vv.call(function(){},"prototype"),wu=["toString","toLocaleString","valueOf","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","constructor"],Qd=function(t){var e=t.constructor;return e&&e.prototype===t},RC={$applicationCache:!0,$console:!0,$external:!0,$frame:!0,$frameElement:!0,$frames:!0,$innerHeight:!0,$innerWidth:!0,$onmozfullscreenchange:!0,$onmozfullscreenerror:!0,$outerHeight:!0,$outerWidth:!0,$pageXOffset:!0,$pageYOffset:!0,$parent:!0,$scrollLeft:!0,$scrollTop:!0,$scrollX:!0,$scrollY:!0,$self:!0,$webkitIndexedDB:!0,$webkitStorageInfo:!0,$window:!0},$C=function(){if(typeof window=="undefined")return!1;for(var t in window)try{if(!RC["$"+t]&&vu.call(window,t)&&window[t]!==null&&typeof window[t]=="object")try{Qd(window[t])}catch(e){return!0}}catch(e){return!0}return!1}(),IC=function(t){if(typeof window=="undefined"||!$C)return Qd(t);try{return Qd(t)}catch(e){return!1}},FC=function(e){var r=e!==null&&typeof e=="object",n=zv.call(e)==="[object Function]",i=CC(e),s=r&&zv.call(e)==="[object String]",a=[];if(!r&&!n&&!i)throw new TypeError("Object.keys called on a non-object");var o=PC&&n;if(s&&e.length>0&&!vu.call(e,0))for(var l=0;l0)for(var c=0;c{"use strict";p();var g5=Array.prototype.slice,v5=Wv(),DC=Object.keys,Jd=DC?function(e){return DC(e)}:MC(),LC=Object.keys;Jd.shim=function(){if(Object.keys){var e=function(){var r=Object.keys(arguments);return r&&r.length===arguments.length}(1,2);e||(Object.keys=function(n){return v5(n)?LC(g5.call(n)):LC(n)})}else Object.keys=Jd;return Object.keys||Jd};NC.exports=Jd});var Hs=I((HK,GC)=>{"use strict";p();var w5=eh(),y5=typeof Symbol=="function"&&typeof Symbol("foo")=="symbol",b5=Object.prototype.toString,_5=Array.prototype.concat,BC=Jf(),x5=function(t){return typeof t=="function"&&b5.call(t)==="[object Function]"},HC=td()(),S5=function(t,e,r,n){if(e in t){if(n===!0){if(t[e]===r)return}else if(!x5(n)||!n())return}HC?BC(t,e,r,!0):BC(t,e,r)},UC=function(t,e){var r=arguments.length>2?arguments[2]:{},n=w5(e);y5&&(n=_5.call(n,Object.getOwnPropertySymbols(e)));for(var i=0;i{"use strict";p();var E5=eh(),qC=Sc()(),WC=Lt(),th=Bf(),k5=WC("Array.prototype.push"),jC=WC("Object.prototype.propertyIsEnumerable"),A5=qC?th.getOwnPropertySymbols:null;zC.exports=function(e,r){if(e==null)throw new TypeError("target must be an object");var n=th(e);if(arguments.length===1)return n;for(var i=1;i{"use strict";p();var Xv=Yv(),C5=function(){if(!Object.assign)return!1;for(var t="abcdefghijklmnopqrst",e=t.split(""),r={},n=0;n{"use strict";p();var P5=Hs(),R5=Zv();YC.exports=function(){var e=R5();return P5(Object,{assign:e},{assign:function(){return Object.assign!==e}}),e}});var JC=I((YK,QC)=>{"use strict";p();var $5=Hs(),I5=da(),F5=Yv(),ZC=Zv(),O5=XC(),M5=I5.apply(ZC()),KC=function(e,r){return M5(Object,arguments)};$5(KC,{getPolyfill:ZC,implementation:F5,shim:O5});QC.exports=KC});var Kv=I((ZK,rT)=>{"use strict";p();var eT=si(),tT=da(),D5=tT(eT("String.prototype.indexOf"));rT.exports=function(e,r){var n=eT(e,!!r);return typeof n=="function"&&D5(e,".prototype.")>-1?tT(n):n}});var iT=I((QK,nT)=>{"use strict";p();var bu=function(){return typeof function(){}.name=="string"},yu=Object.getOwnPropertyDescriptor;if(yu)try{yu([],"length")}catch(t){yu=null}bu.functionsHaveConfigurableNames=function(){if(!bu()||!yu)return!1;var e=yu(function(){},"name");return!!e&&!!e.configurable};var L5=Function.prototype.bind;bu.boundFunctionsHaveNames=function(){return bu()&&typeof L5=="function"&&function(){}.bind().name!==""};nT.exports=bu});var oT=I((eQ,aT)=>{"use strict";p();var sT=Jf(),N5=td()(),B5=iT().functionsHaveConfigurableNames(),H5=_r();aT.exports=function(e,r){if(typeof e!="function")throw new H5("`fn` is not a function");var n=arguments.length>2&&!!arguments[2];return(!n||B5)&&(N5?sT(e,"name",r,!0,!0):sT(e,"name",r)),e}});var Qv=I((rQ,lT)=>{"use strict";p();var U5=oT(),G5=_r(),j5=Object;lT.exports=U5(function(){if(this==null||this!==j5(this))throw new G5("RegExp.prototype.flags getter called on non-object");var e="";return this.hasIndices&&(e+="d"),this.global&&(e+="g"),this.ignoreCase&&(e+="i"),this.multiline&&(e+="m"),this.dotAll&&(e+="s"),this.unicode&&(e+="u"),this.unicodeSets&&(e+="v"),this.sticky&&(e+="y"),e},"get flags",!0)});var Jv=I((iQ,cT)=>{"use strict";p();var q5=Qv(),W5=Hs().supportsDescriptors,z5=Object.getOwnPropertyDescriptor;cT.exports=function(){if(W5&&/a/mig.flags==="gim"){var e=z5(RegExp.prototype,"flags");if(e&&typeof e.get=="function"&&"dotAll"in RegExp.prototype&&"hasIndices"in RegExp.prototype){var r="",n={};if(Object.defineProperty(n,"hasIndices",{get:function(){r+="d"}}),Object.defineProperty(n,"sticky",{get:function(){r+="y"}}),e.get.call(n),r==="dy")return e.get}}return q5}});var dT=I((aQ,fT)=>{"use strict";p();var V5=Hs().supportsDescriptors,Y5=Jv(),X5=bs(),Z5=Object.defineProperty,K5=Ym(),uT=Vf(),Q5=/a/;fT.exports=function(){if(!V5||!uT)throw new K5("RegExp.prototype.flags requires a true ES5 environment that supports property descriptors");var e=Y5(),r=uT(Q5),n=X5(r,"flags");return(!n||n.get!==e)&&Z5(r,"flags",{configurable:!0,enumerable:!1,get:e}),e}});var gT=I((lQ,mT)=>{"use strict";p();var J5=Hs(),eU=da(),tU=Qv(),hT=Jv(),rU=dT(),pT=eU(hT());J5(pT,{getPolyfill:hT,implementation:tU,shim:rU});mT.exports=pT});var tw=I((uQ,wT)=>{"use strict";p();var nU=_s()(),iU=Lt(),ew=iU("Object.prototype.toString"),rh=function(e){return nU&&e&&typeof e=="object"&&Symbol.toStringTag in e?!1:ew(e)==="[object Arguments]"},vT=function(e){return rh(e)?!0:e!==null&&typeof e=="object"&&"length"in e&&typeof e.length=="number"&&e.length>=0&&ew(e)!=="[object Array]"&&"callee"in e&&ew(e.callee)==="[object Function]"},sU=function(){return rh(arguments)}();rh.isLegacyArguments=vT;wT.exports=sU?rh:vT});var yT=I(()=>{p()});var ku=I((mQ,BT)=>{p();var fw=typeof Map=="function"&&Map.prototype,rw=Object.getOwnPropertyDescriptor&&fw?Object.getOwnPropertyDescriptor(Map.prototype,"size"):null,ih=fw&&rw&&typeof rw.get=="function"?rw.get:null,bT=fw&&Map.prototype.forEach,dw=typeof Set=="function"&&Set.prototype,nw=Object.getOwnPropertyDescriptor&&dw?Object.getOwnPropertyDescriptor(Set.prototype,"size"):null,sh=dw&&nw&&typeof nw.get=="function"?nw.get:null,_T=dw&&Set.prototype.forEach,aU=typeof WeakMap=="function"&&WeakMap.prototype,xu=aU?WeakMap.prototype.has:null,oU=typeof WeakSet=="function"&&WeakSet.prototype,Su=oU?WeakSet.prototype.has:null,lU=typeof WeakRef=="function"&&WeakRef.prototype,xT=lU?WeakRef.prototype.deref:null,cU=Boolean.prototype.valueOf,uU=Object.prototype.toString,fU=Function.prototype.toString,dU=String.prototype.match,hw=String.prototype.slice,Us=String.prototype.replace,hU=String.prototype.toUpperCase,ST=String.prototype.toLowerCase,IT=RegExp.prototype.test,ET=Array.prototype.concat,pi=Array.prototype.join,pU=Array.prototype.slice,kT=Math.floor,aw=typeof BigInt=="function"?BigInt.prototype.valueOf:null,iw=Object.getOwnPropertySymbols,ow=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?Symbol.prototype.toString:null,dl=typeof Symbol=="function"&&typeof Symbol.iterator=="object",Eu=typeof Symbol=="function"&&Symbol.toStringTag&&(typeof Symbol.toStringTag===dl||!0)?Symbol.toStringTag:null,FT=Object.prototype.propertyIsEnumerable,AT=(typeof Reflect=="function"?Reflect.getPrototypeOf:Object.getPrototypeOf)||([].__proto__===Array.prototype?function(t){return t.__proto__}:null);function CT(t,e){if(t===1/0||t===-1/0||t!==t||t&&t>-1e3&&t<1e3||IT.call(/e/,e))return e;var r=/[0-9](?=(?:[0-9]{3})+(?![0-9]))/g;if(typeof t=="number"){var n=t<0?-kT(-t):kT(t);if(n!==t){var i=String(n),s=hw.call(e,i.length+1);return Us.call(i,r,"$&_")+"."+Us.call(Us.call(s,/([0-9]{3})/g,"$&_"),/_$/,"")}}return Us.call(e,r,"$&_")}var lw=yT(),TT=lw.custom,PT=DT(TT)?TT:null,OT={__proto__:null,double:"\"",single:"'"},mU={__proto__:null,double:/(["\\])/g,single:/(['\\])/g};BT.exports=function t(e,r,n,i){var s=r||{};if(Xi(s,"quoteStyle")&&!Xi(OT,s.quoteStyle))throw new TypeError("option \"quoteStyle\" must be \"single\" or \"double\"");if(Xi(s,"maxStringLength")&&(typeof s.maxStringLength=="number"?s.maxStringLength<0&&s.maxStringLength!==1/0:s.maxStringLength!==null))throw new TypeError("option \"maxStringLength\", if provided, must be a positive integer, Infinity, or `null`");var a=Xi(s,"customInspect")?s.customInspect:!0;if(typeof a!="boolean"&&a!=="symbol")throw new TypeError("option \"customInspect\", if provided, must be `true`, `false`, or `'symbol'`");if(Xi(s,"indent")&&s.indent!==null&&s.indent!=="\t"&&!(parseInt(s.indent,10)===s.indent&&s.indent>0))throw new TypeError("option \"indent\" must be \"\\t\", an integer > 0, or `null`");if(Xi(s,"numericSeparator")&&typeof s.numericSeparator!="boolean")throw new TypeError("option \"numericSeparator\", if provided, must be `true` or `false`");var o=s.numericSeparator;if(typeof e=="undefined")return"undefined";if(e===null)return"null";if(typeof e=="boolean")return e?"true":"false";if(typeof e=="string")return NT(e,s);if(typeof e=="number"){if(e===0)return 1/0/e>0?"0":"-0";var l=String(e);return o?CT(e,l):l}if(typeof e=="bigint"){var c=String(e)+"n";return o?CT(e,c):c}var u=typeof s.depth=="undefined"?5:s.depth;if(typeof n=="undefined"&&(n=0),n>=u&&u>0&&typeof e=="object")return cw(e)?"[Array]":"[Object]";var f=FU(s,n);if(typeof i=="undefined")i=[];else if(LT(i,e)>=0)return"[Circular]";function d(B,H,ce){if(H&&(i=pU.call(i),i.push(H)),ce){var Pe={depth:s.depth};return Xi(s,"quoteStyle")&&(Pe.quoteStyle=s.quoteStyle),t(B,Pe,n+1,i)}return t(B,s,n+1,i)}if(typeof e=="function"&&!RT(e)){var h=EU(e),m=nh(e,d);return"[Function"+(h?": "+h:" (anonymous)")+"]"+(m.length>0?" { "+pi.call(m,", ")+" }":"")}if(DT(e)){var g=dl?Us.call(String(e),/^(Symbol\(.*\))_[^)]*$/,"$1"):ow.call(e);return typeof e=="object"&&!dl?_u(g):g}if(RU(e)){for(var v="<"+ST.call(String(e.nodeName)),w=e.attributes||[],b=0;b",v}if(cw(e)){if(e.length===0)return"[]";var k=nh(e,d);return f&&!IU(k)?"["+uw(k,f)+"]":"[ "+pi.call(k,", ")+" ]"}if(wU(e)){var x=nh(e,d);return!("cause"in Error.prototype)&&"cause"in e&&!FT.call(e,"cause")?"{ ["+String(e)+"] "+pi.call(ET.call("[cause]: "+d(e.cause),x),", ")+" }":x.length===0?"["+String(e)+"]":"{ ["+String(e)+"] "+pi.call(x,", ")+" }"}if(typeof e=="object"&&a){if(PT&&typeof e[PT]=="function"&&lw)return lw(e,{depth:u-n});if(a!=="symbol"&&typeof e.inspect=="function")return e.inspect()}if(kU(e)){var E=[];return bT&&bT.call(e,function(B,H){E.push(d(H,e,!0)+" => "+d(B,e))}),$T("Map",ih.call(e),E,f)}if(TU(e)){var A=[];return _T&&_T.call(e,function(B){A.push(d(B,e))}),$T("Set",sh.call(e),A,f)}if(AU(e))return sw("WeakMap");if(PU(e))return sw("WeakSet");if(CU(e))return sw("WeakRef");if(bU(e))return _u(d(Number(e)));if(xU(e))return _u(d(aw.call(e)));if(_U(e))return _u(cU.call(e));if(yU(e))return _u(d(String(e)));if(typeof window!="undefined"&&e===window)return"{ [object Window] }";if(typeof globalThis!="undefined"&&e===globalThis||typeof global!="undefined"&&e===global)return"{ [object globalThis] }";if(!vU(e)&&!RT(e)){var y=nh(e,d),S=AT?AT(e)===Object.prototype:e instanceof Object||e.constructor===Object,_=e instanceof Object?"":"null prototype",C=!S&&Eu&&Object(e)===e&&Eu in e?hw.call(Gs(e),8,-1):_?"Object":"",P=S||typeof e.constructor!="function"?"":e.constructor.name?e.constructor.name+" ":"",N=P+(C||_?"["+pi.call(ET.call([],C||[],_||[]),": ")+"] ":"");return y.length===0?N+"{}":f?N+"{"+uw(y,f)+"}":N+"{ "+pi.call(y,", ")+" }"}return String(e)};function MT(t,e,r){var n=r.quoteStyle||e,i=OT[n];return i+t+i}function gU(t){return Us.call(String(t),/"/g,""")}function Pa(t){return!Eu||!(typeof t=="object"&&(Eu in t||typeof t[Eu]!="undefined"))}function cw(t){return Gs(t)==="[object Array]"&&Pa(t)}function vU(t){return Gs(t)==="[object Date]"&&Pa(t)}function RT(t){return Gs(t)==="[object RegExp]"&&Pa(t)}function wU(t){return Gs(t)==="[object Error]"&&Pa(t)}function yU(t){return Gs(t)==="[object String]"&&Pa(t)}function bU(t){return Gs(t)==="[object Number]"&&Pa(t)}function _U(t){return Gs(t)==="[object Boolean]"&&Pa(t)}function DT(t){if(dl)return t&&typeof t=="object"&&t instanceof Symbol;if(typeof t=="symbol")return!0;if(!t||typeof t!="object"||!ow)return!1;try{return ow.call(t),!0}catch(e){}return!1}function xU(t){if(!t||typeof t!="object"||!aw)return!1;try{return aw.call(t),!0}catch(e){}return!1}var SU=Object.prototype.hasOwnProperty||function(t){return t in this};function Xi(t,e){return SU.call(t,e)}function Gs(t){return uU.call(t)}function EU(t){if(t.name)return t.name;var e=dU.call(fU.call(t),/^function\s*([\w$]+)/);return e?e[1]:null}function LT(t,e){if(t.indexOf)return t.indexOf(e);for(var r=0,n=t.length;re.maxStringLength){var r=t.length-e.maxStringLength,n="... "+r+" more character"+(r>1?"s":"");return NT(hw.call(t,0,e.maxStringLength),e)+n}var i=mU[e.quoteStyle||"single"];i.lastIndex=0;var s=Us.call(Us.call(t,i,"\\$1"),/[\x00-\x1f]/g,$U);return MT(s,"single",e)}function $U(t){var e=t.charCodeAt(0),r={8:"b",9:"t",10:"n",12:"f",13:"r"}[e];return r?"\\"+r:"\\x"+(e<16?"0":"")+hU.call(e.toString(16))}function _u(t){return"Object("+t+")"}function sw(t){return t+" { ? }"}function $T(t,e,r,n){var i=n?uw(r,n):pi.call(r,", ");return t+" ("+e+") {"+i+"}"}function IU(t){for(var e=0;e=0)return!1;return!0}function FU(t,e){var r;if(t.indent==="\t")r="\t";else if(typeof t.indent=="number"&&t.indent>0)r=pi.call(Array(t.indent+1)," ");else return null;return{base:r,prev:pi.call(Array(e+1),r)}}function uw(t,e){if(t.length===0)return"";var r=` `+e.prev+e.base;return r+pi.call(t,","+r)+` `+e.prev}function nh(t,e){var r=cw(t),n=[];if(r){n.length=t.length;for(var i=0;i{"use strict";p();var OU=ku(),MU=_r(),ah=function(t,e,r){for(var n=t,i;(i=n.next)!=null;n=i)if(i.key===e)return n.next=i.next,r||(i.next=t.next,t.next=i),i},DU=function(t,e){if(t){var r=ah(t,e);return r&&r.value}},LU=function(t,e,r){var n=ah(t,e);n?n.value=r:t.next={key:e,next:t.next,value:r}},NU=function(t,e){return t?!!ah(t,e):!1},BU=function(t,e){if(t)return ah(t,e,!0)};HT.exports=function(){var e,r={assert:function(n){if(!r.has(n))throw new MU("Side channel does not contain "+OU(n))},delete:function(n){var i=e&&e.next,s=BU(e,n);return s&&i&&i===s&&(e=void 0),!!s},get:function(n){return DU(e,n)},has:function(n){return NU(e,n)},set:function(n,i){e||(e={next:void 0}),LU(e,n,i)}};return r}});var pw=I((yQ,jT)=>{"use strict";p();var HU=si(),Au=Lt(),UU=ku(),GU=_r(),GT=HU("%Map%",!0),jU=Au("Map.prototype.get",!0),qU=Au("Map.prototype.set",!0),WU=Au("Map.prototype.has",!0),zU=Au("Map.prototype.delete",!0),VU=Au("Map.prototype.size",!0);jT.exports=!!GT&&function(){var e,r={assert:function(n){if(!r.has(n))throw new GU("Side channel does not contain "+UU(n))},delete:function(n){if(e){var i=zU(e,n);return VU(e)===0&&(e=void 0),i}return!1},get:function(n){if(e)return jU(e,n)},has:function(n){return e?WU(e,n):!1},set:function(n,i){e||(e=new GT),qU(e,n,i)}};return r}});var WT=I((_Q,qT)=>{"use strict";p();var YU=si(),lh=Lt(),XU=ku(),oh=pw(),ZU=_r(),hl=YU("%WeakMap%",!0),KU=lh("WeakMap.prototype.get",!0),QU=lh("WeakMap.prototype.set",!0),JU=lh("WeakMap.prototype.has",!0),e4=lh("WeakMap.prototype.delete",!0);qT.exports=hl?function(){var e,r,n={assert:function(i){if(!n.has(i))throw new ZU("Side channel does not contain "+XU(i))},delete:function(i){if(hl&&i&&(typeof i=="object"||typeof i=="function")){if(e)return e4(e,i)}else if(oh&&r)return r.delete(i);return!1},get:function(i){return hl&&i&&(typeof i=="object"||typeof i=="function")&&e?KU(e,i):r&&r.get(i)},has:function(i){return hl&&i&&(typeof i=="object"||typeof i=="function")&&e?JU(e,i):!!r&&r.has(i)},set:function(i,s){hl&&i&&(typeof i=="object"||typeof i=="function")?(e||(e=new hl),QU(e,i,s)):oh&&(r||(r=oh()),r.set(i,s))}};return n}:oh});var mw=I((SQ,zT)=>{"use strict";p();var t4=_r(),r4=ku(),n4=UT(),i4=pw(),s4=WT(),a4=s4||i4||n4;zT.exports=function(){var e,r={assert:function(n){if(!r.has(n))throw new t4("Side channel does not contain "+r4(n))},delete:function(n){return!!e&&e.delete(n)},get:function(n){return e&&e.get(n)},has:function(n){return!!e&&e.has(n)},set:function(n,i){e||(e=a4()),e.set(n,i)}};return r}});var YT=I((kQ,VT)=>{"use strict";p();var o4=Yf(),Cu=mw()(),Zi=_r(),gw={assert:function(t,e){if(!t||typeof t!="object"&&typeof t!="function")throw new Zi("`O` is not an object");if(typeof e!="string")throw new Zi("`slot` must be a string");if(Cu.assert(t),!gw.has(t,e))throw new Zi("`"+e+"` is not present on `O`")},get:function(t,e){if(!t||typeof t!="object"&&typeof t!="function")throw new Zi("`O` is not an object");if(typeof e!="string")throw new Zi("`slot` must be a string");var r=Cu.get(t);return r&&r["$"+e]},has:function(t,e){if(!t||typeof t!="object"&&typeof t!="function")throw new Zi("`O` is not an object");if(typeof e!="string")throw new Zi("`slot` must be a string");var r=Cu.get(t);return!!r&&o4(r,"$"+e)},set:function(t,e,r){if(!t||typeof t!="object"&&typeof t!="function")throw new Zi("`O` is not an object");if(typeof e!="string")throw new Zi("`slot` must be a string");var n=Cu.get(t);n||(n={},Cu.set(t,n)),n["$"+e]=r}};Object.freeze&&Object.freeze(gw);VT.exports=gw});var KT=I((CQ,ZT)=>{"use strict";p();var Tu=YT(),l4=Hf(),XT=typeof StopIteration=="object"?StopIteration:null;ZT.exports=function(e){if(!XT)throw new l4("this environment lacks StopIteration");Tu.set(e,"[[Done]]",!1);var r={next:function(){var i=Tu.get(this,"[[Iterator]]"),s=!!Tu.get(i,"[[Done]]");try{return{done:s,value:s?void 0:i.next()}}catch(a){if(Tu.set(i,"[[Done]]",!0),a!==XT)throw a;return{done:!0,value:void 0}}}};return Tu.set(r,"[[Iterator]]",e),r}});var vw=I((PQ,JT)=>{"use strict";p();var QT=Lt(),c4=QT("String.prototype.valueOf"),u4=function(e){try{return c4(e),!0}catch(r){return!1}},f4=QT("Object.prototype.toString"),d4="[object String]",h4=_s()();JT.exports=function(e){return typeof e=="string"?!0:!e||typeof e!="object"?!1:h4?u4(e):f4(e)===d4}});var yw=I(($Q,r2)=>{"use strict";p();var ww=typeof Map=="function"&&Map.prototype?Map:null,p4=typeof Set=="function"&&Set.prototype?Set:null,ch;ww||(ch=function(e){return!1});var t2=ww?Map.prototype.has:null,e2=p4?Set.prototype.has:null;!ch&&!t2&&(ch=function(e){return!1});r2.exports=ch||function(e){if(!e||typeof e!="object")return!1;try{if(t2.call(e),e2)try{e2.call(e)}catch(r){return!0}return e instanceof ww}catch(r){}return!1}});var _w=I((FQ,s2)=>{"use strict";p();var m4=typeof Map=="function"&&Map.prototype?Map:null,bw=typeof Set=="function"&&Set.prototype?Set:null,uh;bw||(uh=function(e){return!1});var n2=m4?Map.prototype.has:null,i2=bw?Set.prototype.has:null;!uh&&!i2&&(uh=function(e){return!1});s2.exports=uh||function(e){if(!e||typeof e!="object")return!1;try{if(i2.call(e),n2)try{n2.call(e)}catch(r){return!0}return e instanceof bw}catch(r){}return!1}});var v2=I((MQ,hh)=>{"use strict";p();var a2=tw(),o2=KT();jf()()||Sc()()?(fh=Symbol.iterator,hh.exports=function(e){if(e!=null&&typeof e[fh]!="undefined")return e[fh]();if(a2(e))return Array.prototype[fh].call(e)}):(l2=Nf(),c2=vw(),xw=si(),u2=xw("%Map%",!0),f2=xw("%Set%",!0),vn=Kv(),Sw=vn("Array.prototype.push"),Ew=vn("String.prototype.charCodeAt"),d2=vn("String.prototype.slice"),h2=function(e,r){var n=e.length;if(r+1>=n)return r+1;var i=Ew(e,r);if(i<55296||i>56319)return r+1;var s=Ew(e,r+1);return s<56320||s>57343?r+1:r+2},dh=function(e){var r=0;return{next:function(){var i=r>=e.length,s;return i||(s=e[r],r+=1),{done:i,value:s}}}},kw=function(e,r){if(l2(e)||a2(e))return dh(e);if(c2(e)){var n=0;return{next:function(){var s=h2(e,n),a=d2(e,n,s);return n=s,{done:s>e.length,value:a}}}}if(r&&typeof e["_es6-shim iterator_"]!="undefined")return e["_es6-shim iterator_"]()},!u2&&!f2?hh.exports=function(e){if(e!=null)return kw(e,!0)}:(p2=yw(),m2=_w(),Aw=vn("Map.prototype.forEach",!0),Cw=vn("Set.prototype.forEach",!0),(typeof process=="undefined"||!process.versions||!process.versions.node)&&(Tw=vn("Map.prototype.iterator",!0),Pw=vn("Set.prototype.iterator",!0)),Rw=vn("Map.prototype.@@iterator",!0)||vn("Map.prototype._es6-shim iterator_",!0),$w=vn("Set.prototype.@@iterator",!0)||vn("Set.prototype._es6-shim iterator_",!0),g2=function(e){if(p2(e)){if(Tw)return o2(Tw(e));if(Rw)return Rw(e);if(Aw){var r=[];return Aw(e,function(i,s){Sw(r,[s,i])}),dh(r)}}if(m2(e)){if(Pw)return o2(Pw(e));if($w)return $w(e);if(Cw){var n=[];return Cw(e,function(i){Sw(n,i)}),dh(n)}}},hh.exports=function(e){return g2(e)||kw(e)}));var fh,l2,c2,xw,u2,f2,vn,Sw,Ew,d2,h2,dh,kw,p2,m2,Aw,Cw,Tw,Pw,Rw,$w,g2});var Iw=I((LQ,y2)=>{"use strict";p();var w2=function(t){return t!==t};y2.exports=function(e,r){return e===0&&r===0?1/e===1/r:!!(e===r||w2(e)&&w2(r))}});var Fw=I((BQ,b2)=>{"use strict";p();var g4=Iw();b2.exports=function(){return typeof Object.is=="function"?Object.is:g4}});var x2=I((UQ,_2)=>{"use strict";p();var v4=Fw(),w4=Hs();_2.exports=function(){var e=v4();return w4(Object,{is:e},{is:function(){return Object.is!==e}}),e}});var A2=I((jQ,k2)=>{"use strict";p();var y4=Hs(),b4=da(),_4=Iw(),S2=Fw(),x4=x2(),E2=b4(S2(),Object);y4(E2,{getPolyfill:S2,implementation:_4,shim:x4});k2.exports=E2});var Mw=I((WQ,R2)=>{"use strict";p();var S4=da(),P2=Lt(),E4=si(),Ow=E4("%ArrayBuffer%",!0),ph=P2("ArrayBuffer.prototype.byteLength",!0),k4=P2("Object.prototype.toString"),C2=!!Ow&&!ph&&new Ow(0).slice,T2=!!C2&&S4(C2);R2.exports=ph||T2?function(e){if(!e||typeof e!="object")return!1;try{return ph?ph(e):T2(e,0),!0}catch(r){return!1}}:Ow?function(e){return k4(e)==="[object ArrayBuffer]"}:function(e){return!1}});var F2=I((VQ,I2)=>{"use strict";p();var $2=Lt(),A4=$2("Date.prototype.getDay"),C4=function(e){try{return A4(e),!0}catch(r){return!1}},T4=$2("Object.prototype.toString"),P4="[object Date]",R4=_s()();I2.exports=function(e){return typeof e!="object"||e===null?!1:R4?C4(e):T4(e)===P4}});var Bw=I((XQ,N2)=>{"use strict";p();var O2=Lt(),$4=_s()(),I4=Yf(),F4=bs(),Nw;$4?(M2=O2("RegExp.prototype.exec"),Dw={},mh=function(){throw Dw},Lw={toString:mh,valueOf:mh},typeof Symbol.toPrimitive=="symbol"&&(Lw[Symbol.toPrimitive]=mh),Nw=function(e){if(!e||typeof e!="object")return!1;var r=F4(e,"lastIndex"),n=r&&I4(r,"value");if(!n)return!1;try{M2(e,Lw)}catch(i){return i===Dw}}):(D2=O2("Object.prototype.toString"),L2="[object RegExp]",Nw=function(e){return!e||typeof e!="object"&&typeof e!="function"?!1:D2(e)===L2});var M2,Dw,mh,Lw,D2,L2;N2.exports=Nw});var U2=I((KQ,H2)=>{"use strict";p();var O4=Lt(),B2=O4("SharedArrayBuffer.prototype.byteLength",!0);H2.exports=B2?function(e){if(!e||typeof e!="object")return!1;try{return B2(e),!0}catch(r){return!1}}:function(e){return!1}});var q2=I((JQ,j2)=>{"use strict";p();var G2=Lt(),M4=G2("Number.prototype.toString"),D4=function(e){try{return M4(e),!0}catch(r){return!1}},L4=G2("Object.prototype.toString"),N4="[object Number]",B4=_s()();j2.exports=function(e){return typeof e=="number"?!0:!e||typeof e!="object"?!1:B4?D4(e):L4(e)===N4}});var V2=I((tJ,z2)=>{"use strict";p();var W2=Lt(),H4=W2("Boolean.prototype.toString"),U4=W2("Object.prototype.toString"),G4=function(e){try{return H4(e),!0}catch(r){return!1}},j4="[object Boolean]",q4=_s()();z2.exports=function(e){return typeof e=="boolean"?!0:e===null||typeof e!="object"?!1:q4?G4(e):U4(e)===j4}});var X2=I((nJ,Y2)=>{"use strict";p();var W4=Lt(),z4=Bw(),V4=W4("RegExp.prototype.exec"),Y4=_r();Y2.exports=function(e){if(!z4(e))throw new Y4("`regex` must be a RegExp");return function(n){return V4(e,n)!==null}}});var eP=I((sJ,Hw)=>{"use strict";p();var J2=Lt(),X4=J2("Object.prototype.toString"),Z4=jf()(),K4=X2();Z4?(Z2=J2("Symbol.prototype.toString"),K2=K4(/^Symbol\(.*\)$/),Q2=function(e){return typeof e.valueOf()!="symbol"?!1:K2(Z2(e))},Hw.exports=function(e){if(typeof e=="symbol")return!0;if(!e||typeof e!="object"||X4(e)!=="[object Symbol]")return!1;try{return Q2(e)}catch(r){return!1}}):Hw.exports=function(e){return!1};var Z2,K2,Q2});var nP=I((oJ,rP)=>{"use strict";p();var tP=typeof BigInt!="undefined"&&BigInt;rP.exports=function(){return typeof tP=="function"&&typeof BigInt=="function"&&typeof tP(42)=="bigint"&&typeof BigInt(42)=="bigint"}});var aP=I((cJ,Uw)=>{"use strict";p();var Q4=nP()();Q4?(iP=BigInt.prototype.valueOf,sP=function(e){try{return iP.call(e),!0}catch(r){}return!1},Uw.exports=function(e){return e===null||typeof e=="undefined"||typeof e=="boolean"||typeof e=="string"||typeof e=="number"||typeof e=="symbol"||typeof e=="function"?!1:typeof e=="bigint"?!0:sP(e)}):Uw.exports=function(e){return!1};var iP,sP});var lP=I((fJ,oP)=>{"use strict";p();var J4=vw(),eG=q2(),tG=V2(),rG=eP(),nG=aP();oP.exports=function(e){if(e==null||typeof e!="object"&&typeof e!="function")return null;if(J4(e))return"String";if(eG(e))return"Number";if(tG(e))return"Boolean";if(rG(e))return"Symbol";if(nG(e))return"BigInt"}});var fP=I((hJ,uP)=>{"use strict";p();var gh=typeof WeakMap=="function"&&WeakMap.prototype?WeakMap:null,cP=typeof WeakSet=="function"&&WeakSet.prototype?WeakSet:null,vh;gh||(vh=function(e){return!1});var jw=gh?gh.prototype.has:null,Gw=cP?cP.prototype.has:null;!vh&&!jw&&(vh=function(e){return!1});uP.exports=vh||function(e){if(!e||typeof e!="object")return!1;try{if(jw.call(e,jw),Gw)try{Gw.call(e,Gw)}catch(r){return!0}return e instanceof gh}catch(r){}return!1}});var hP=I((mJ,Ww)=>{"use strict";p();var iG=si(),dP=Lt(),sG=iG("%WeakSet%",!0),qw=dP("WeakSet.prototype.has",!0);qw?(wh=dP("WeakMap.prototype.has",!0),Ww.exports=function(e){if(!e||typeof e!="object")return!1;try{if(qw(e,qw),wh)try{wh(e,wh)}catch(r){return!0}return e instanceof sG}catch(r){}return!1}):Ww.exports=function(e){return!1};var wh});var mP=I((vJ,pP)=>{"use strict";p();var aG=yw(),oG=_w(),lG=fP(),cG=hP();pP.exports=function(e){if(e&&typeof e=="object"){if(aG(e))return"Map";if(oG(e))return"Set";if(lG(e))return"WeakMap";if(cG(e))return"WeakSet"}return!1}});var wP=I((yJ,vP)=>{"use strict";p();var uG=Lt(),gP=uG("ArrayBuffer.prototype.byteLength",!0),fG=Mw();vP.exports=function(e){return fG(e)?gP?gP(e):e.byteLength:NaN}});var jP=I((_J,GP)=>{"use strict";p();var BP=JC(),mi=Kv(),yP=gT(),dG=si(),pl=v2(),hG=mw(),bP=A2(),_P=tw(),xP=Nf(),SP=Mw(),EP=F2(),kP=Bw(),AP=U2(),CP=eh(),TP=lP(),PP=mP(),RP=ug(),$P=wP(),IP=mi("SharedArrayBuffer.prototype.byteLength",!0),FP=mi("Date.prototype.getTime"),zw=Object.getPrototypeOf,OP=mi("Object.prototype.toString"),bh=dG("%Set%",!0),Vw=mi("Map.prototype.has",!0),_h=mi("Map.prototype.get",!0),MP=mi("Map.prototype.size",!0),xh=mi("Set.prototype.add",!0),HP=mi("Set.prototype.delete",!0),Sh=mi("Set.prototype.has",!0),yh=mi("Set.prototype.size",!0);function DP(t,e,r,n){for(var i=pl(t),s;(s=i.next())&&!s.done;)if(Nn(e,s.value,r,n))return HP(t,s.value),!0;return!1}function UP(t){if(typeof t=="undefined")return null;if(typeof t!="object")return typeof t=="symbol"?!1:typeof t=="string"||typeof t=="number"?+t==+t:!0}function pG(t,e,r,n,i,s){var a=UP(r);if(a!=null)return a;var o=_h(e,a),l=BP({},i,{strict:!1});return typeof o=="undefined"&&!Vw(e,a)||!Nn(n,o,l,s)?!1:!Vw(t,a)&&Nn(n,o,l,s)}function mG(t,e,r){var n=UP(r);return n!=null?n:Sh(e,n)&&!Sh(t,n)}function LP(t,e,r,n,i,s){for(var a=pl(t),o,l;(o=a.next())&&!o.done;)if(l=o.value,Nn(r,l,i,s)&&Nn(n,_h(e,l),i,s))return HP(t,l),!0;return!1}function Nn(t,e,r,n){var i=r||{};if(i.strict?bP(t,e):t===e)return!0;var s=TP(t),a=TP(e);if(s!==a)return!1;if(!t||!e||typeof t!="object"&&typeof e!="object")return i.strict?bP(t,e):t==e;var o=n.has(t),l=n.has(e),c;if(o&&l){if(n.get(t)===n.get(e))return!0}else c={};return o||n.set(t,c),l||n.set(e,c),wG(t,e,i,n)}function NP(t){return!t||typeof t!="object"||typeof t.length!="number"||typeof t.copy!="function"||typeof t.slice!="function"||t.length>0&&typeof t[0]!="number"?!1:!!(t.constructor&&t.constructor.isBuffer&&t.constructor.isBuffer(t))}function gG(t,e,r,n){if(yh(t)!==yh(e))return!1;for(var i=pl(t),s=pl(e),a,o,l;(a=i.next())&&!a.done;)if(a.value&&typeof a.value=="object")l||(l=new bh),xh(l,a.value);else if(!Sh(e,a.value)){if(r.strict||!mG(t,e,a.value))return!1;l||(l=new bh),xh(l,a.value)}if(l){for(;(o=s.next())&&!o.done;)if(o.value&&typeof o.value=="object"){if(!DP(l,o.value,r.strict,n))return!1}else if(!r.strict&&!Sh(t,o.value)&&!DP(l,o.value,r.strict,n))return!1;return yh(l)===0}return!0}function vG(t,e,r,n){if(MP(t)!==MP(e))return!1;for(var i=pl(t),s=pl(e),a,o,l,c,u,f;(a=i.next())&&!a.done;)if(c=a.value[0],u=a.value[1],c&&typeof c=="object")l||(l=new bh),xh(l,c);else if(f=_h(e,c),typeof f=="undefined"&&!Vw(e,c)||!Nn(u,f,r,n)){if(r.strict||!pG(t,e,c,u,r,n))return!1;l||(l=new bh),xh(l,c)}if(l){for(;(o=s.next())&&!o.done;)if(c=o.value[0],f=o.value[1],c&&typeof c=="object"){if(!LP(l,t,c,f,r,n))return!1}else if(!r.strict&&(!t.has(c)||!Nn(_h(t,c),f,r,n))&&!LP(l,t,c,f,BP({},r,{strict:!1}),n))return!1;return yh(l)===0}return!0}function wG(t,e,r,n){var i,s;if(typeof t!=typeof e||t==null||e==null||OP(t)!==OP(e)||_P(t)!==_P(e))return!1;var a=xP(t),o=xP(e);if(a!==o)return!1;var l=t instanceof Error,c=e instanceof Error;if(l!==c||(l||c)&&(t.name!==e.name||t.message!==e.message))return!1;var u=kP(t),f=kP(e);if(u!==f||(u||f)&&(t.source!==e.source||yP(t)!==yP(e)))return!1;var d=EP(t),h=EP(e);if(d!==h||(d||h)&&FP(t)!==FP(e)||r.strict&&zw&&zw(t)!==zw(e))return!1;var m=RP(t),g=RP(e);if(m!==g)return!1;if(m||g){if(t.length!==e.length)return!1;for(i=0;i=0;i--)if(A[i]!=y[i])return!1;for(i=A.length-1;i>=0;i--)if(s=A[i],!Nn(t[s],e[s],r,n))return!1;var S=PP(t),_=PP(e);return S!==_?!1:S==="Set"||_==="Set"?gG(t,e,r,n):S==="Map"?vG(t,e,r,n):!0}GP.exports=function(e,r,n){return Nn(e,r,n,hG())}});var nR=I((RJ,rR)=>{p();rR.exports=function(t,e){var r=t,n=e,i=r.length,s=n.length,a=!1,o=i+1,l=[],c=[],u,f,d=function(){i>=s&&(u=r,f=i,r=n,n=u,i=s,s=f,a=!0,o=i+1)},h=function(g,v,w,b,k){return{startX:g,startY:v,endX:w,endY:b,r:k}},m=function(g,v,w){var b,k,x,E,A;for(v>w?b=l[g-1+o]:b=l[g+1+o],A=x=Math.max(v,w),E=k=x-g;k=g+1;--E)w[E+o]=m(E,w[E-1+o]+1,w[E+1+o]);w[g+o]=m(g,w[g-1+o]+1,w[g+1+o])}while(w[g+o]!==s);for(ed=g+2*b,k=l[g+o],A=i,y=s,S=[];k!==-1;){let _=c[k];(i!=_.endX||s!=_.endY)&&S.push({file1:[a?_.endY:_.endX,a?y-_.endY:A-_.endX],file2:[a?_.endX:_.endY,a?A-_.endX:y-_.endY]}),A=_.startX,y=_.startY,k=c[k].r}return(A!=0||y!=0)&&S.push({file1:[0,a?y:A],file2:[0,a?A:y]}),S.reverse(),S}}}});var aR=I((IJ,sR)=>{p();var iR=nR();function bG(t,e,r){var n,i=new iR(e,t).compose(),s=new iR(e,r).compose(),a=[];function o(B,H){a.push([B.file1[0],H,B.file1[1],B.file2[0],B.file2[1]])}for(n=0;nc&&(l.push([1,c,B-c]),c=B)}for(var f=0;fg)break;g=Math.max(g,w+v[2]),f++}if(u(m),d==f)h[4]>0&&l.push([h[1],h[3],h[4]]);else{var b={0:[t.length,-1,e.length,-1],2:[r.length,-1,e.length,-1]};for(n=d;n<=f;n++){h=a[n];var k=h[1],x=b[k],E=h[0],A=E+h[2],y=h[3],S=y+h[4];x[0]=Math.min(y,x[0]),x[1]=Math.max(S,x[1]),x[2]=Math.min(E,x[2]),x[3]=Math.max(A,x[3])}var _=b[0][0]+(m-b[0][2]),C=b[0][1]+(g-b[0][3]),P=b[2][0]+(m-b[2][2]),N=b[2][1]+(g-b[2][3]);l.push([-1,_,C-_,m,g-m,P,N-P])}c=g}return u(e.length),l}function _G(t,e,r){var n=[],i=[t,e,r],s=bG(t,e,r),a=[];function o(){a.length&&n.push({ok:a}),a=[]}function l(h){for(var m=0;m{p();var yl=1e3,bl=yl*60,_l=bl*60,$a=_l*24,EG=$a*7,kG=$a*365.25;lR.exports=function(t,e){e=e||{};var r=typeof t;if(r==="string"&&t.length>0)return AG(t);if(r==="number"&&isFinite(t))return e.long?TG(t):CG(t);throw new Error("val is not a non-empty string or a valid number. val="+JSON.stringify(t))};function AG(t){if(t=String(t),!(t.length>100)){var e=/^(-?(?:\d+)?\.?\d+) *(milliseconds?|msecs?|ms|seconds?|secs?|s|minutes?|mins?|m|hours?|hrs?|h|days?|d|weeks?|w|years?|yrs?|y)?$/i.exec(t);if(e){var r=parseFloat(e[1]),n=(e[2]||"ms").toLowerCase();switch(n){case"years":case"year":case"yrs":case"yr":case"y":return r*kG;case"weeks":case"week":case"w":return r*EG;case"days":case"day":case"d":return r*$a;case"hours":case"hour":case"hrs":case"hr":case"h":return r*_l;case"minutes":case"minute":case"mins":case"min":case"m":return r*bl;case"seconds":case"second":case"secs":case"sec":case"s":return r*yl;case"milliseconds":case"millisecond":case"msecs":case"msec":case"ms":return r;default:return}}}}function CG(t){var e=Math.abs(t);return e>=$a?Math.round(t/$a)+"d":e>=_l?Math.round(t/_l)+"h":e>=bl?Math.round(t/bl)+"m":e>=yl?Math.round(t/yl)+"s":t+"ms"}function TG(t){var e=Math.abs(t);return e>=$a?Ch(t,e,$a,"day"):e>=_l?Ch(t,e,_l,"hour"):e>=bl?Ch(t,e,bl,"minute"):e>=yl?Ch(t,e,yl,"second"):t+" ms"}function Ch(t,e,r,n){var i=e>=r*1.5;return Math.round(t/r)+" "+n+(i?"s":"")}});var fR=I((qJ,uR)=>{p();function PG(t){r.debug=r,r.default=r,r.coerce=l,r.disable=a,r.enable=i,r.enabled=o,r.humanize=cR(),r.destroy=c,Object.keys(t).forEach(u=>{r[u]=t[u]}),r.names=[],r.skips=[],r.formatters={};function e(u){let f=0;for(let d=0;d{if(A==="%%")return"%";x++;let S=r.formatters[y];if(typeof S=="function"){let _=v[x];A=S.call(w,_),v.splice(x,1),x--}return A}),r.formatArgs.call(w,v),(w.log||r.log).apply(w,v)}return g.namespace=u,g.useColors=r.useColors(),g.color=r.selectColor(u),g.extend=n,g.destroy=r.destroy,Object.defineProperty(g,"enabled",{enumerable:!0,configurable:!1,get:()=>d!==null?d:(h!==r.namespaces&&(h=r.namespaces,m=r.enabled(u)),m),set:v=>{d=v}}),typeof r.init=="function"&&r.init(g),g}function n(u,f){let d=r(this.namespace+(typeof f=="undefined"?":":f)+u);return d.log=this.log,d}function i(u){r.save(u),r.namespaces=u,r.names=[],r.skips=[];let f=(typeof u=="string"?u:"").trim().replace(/\s+/g,",").split(",").filter(Boolean);for(let d of f)d[0]==="-"?r.skips.push(d.slice(1)):r.names.push(d)}function s(u,f){let d=0,h=0,m=-1,g=0;for(;d"-"+f)].join(",");return r.enable(""),u}function o(u){for(let f of r.skips)if(s(u,f))return!1;for(let f of r.names)if(s(u,f))return!0;return!1}function l(u){return u instanceof Error?u.stack||u.message:u}function c(){console.warn("Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`.")}return r.enable(r.load()),r}uR.exports=PG});var Ph=I((Cr,Th)=>{p();Cr.formatArgs=$G;Cr.save=IG;Cr.load=FG;Cr.useColors=RG;Cr.storage=OG();Cr.destroy=(()=>{let t=!1;return()=>{t||(t=!0,console.warn("Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`."))}})();Cr.colors=["#0000CC","#0000FF","#0033CC","#0033FF","#0066CC","#0066FF","#0099CC","#0099FF","#00CC00","#00CC33","#00CC66","#00CC99","#00CCCC","#00CCFF","#3300CC","#3300FF","#3333CC","#3333FF","#3366CC","#3366FF","#3399CC","#3399FF","#33CC00","#33CC33","#33CC66","#33CC99","#33CCCC","#33CCFF","#6600CC","#6600FF","#6633CC","#6633FF","#66CC00","#66CC33","#9900CC","#9900FF","#9933CC","#9933FF","#99CC00","#99CC33","#CC0000","#CC0033","#CC0066","#CC0099","#CC00CC","#CC00FF","#CC3300","#CC3333","#CC3366","#CC3399","#CC33CC","#CC33FF","#CC6600","#CC6633","#CC9900","#CC9933","#CCCC00","#CCCC33","#FF0000","#FF0033","#FF0066","#FF0099","#FF00CC","#FF00FF","#FF3300","#FF3333","#FF3366","#FF3399","#FF33CC","#FF33FF","#FF6600","#FF6633","#FF9900","#FF9933","#FFCC00","#FFCC33"];function RG(){if(typeof window!="undefined"&&window.process&&(window.process.type==="renderer"||window.process.__nwjs))return!0;if(typeof navigator!="undefined"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/(edge|trident)\/(\d+)/))return!1;let t;return typeof document!="undefined"&&document.documentElement&&document.documentElement.style&&document.documentElement.style.WebkitAppearance||typeof window!="undefined"&&window.console&&(window.console.firebug||window.console.exception&&window.console.table)||typeof navigator!="undefined"&&navigator.userAgent&&(t=navigator.userAgent.toLowerCase().match(/firefox\/(\d+)/))&&parseInt(t[1],10)>=31||typeof navigator!="undefined"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/applewebkit\/(\d+)/)}function $G(t){if(t[0]=(this.useColors?"%c":"")+this.namespace+(this.useColors?" %c":" ")+t[0]+(this.useColors?"%c ":" ")+"+"+Th.exports.humanize(this.diff),!this.useColors)return;let e="color: "+this.color;t.splice(1,0,e,"color: inherit");let r=0,n=0;t[0].replace(/%[a-zA-Z%]/g,i=>{i!=="%%"&&(r++,i==="%c"&&(n=r))}),t.splice(n,0,e)}Cr.log=console.debug||console.log||(()=>{});function IG(t){try{t?Cr.storage.setItem("debug",t):Cr.storage.removeItem("debug")}catch(e){}}function FG(){let t;try{t=Cr.storage.getItem("debug")||Cr.storage.getItem("DEBUG")}catch(e){}return!t&&typeof process!="undefined"&&"env"in process&&(t=process.env.DEBUG),t}function OG(){try{return localStorage}catch(t){}}Th.exports=fR()(Cr);var{formatters:MG}=Th.exports;MG.j=function(t){try{return JSON.stringify(t)}catch(e){return"[UnexpectedJSONParseError]: "+e.message}}});var dR=I(Kr=>{"use strict";p();var DG=Kr&&Kr.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(Kr,"__esModule",{value:!0});var LG=require("fs"),NG=DG(Ph()),xl=NG.default("@kwsites/file-exists");function BG(t,e,r){xl("checking %s",t);try{let n=LG.statSync(t);return n.isFile()&&e?(xl("[OK] path represents a file"),!0):n.isDirectory()&&r?(xl("[OK] path represents a directory"),!0):(xl("[FAIL] path represents something other than a file or directory"),!1)}catch(n){if(n.code==="ENOENT")return xl("[FAIL] path is not accessible: %o",n),!1;throw xl("[FATAL] %o",n),n}}function HG(t,e=Kr.READABLE){return BG(t,(e&Kr.FILE)>0,(e&Kr.FOLDER)>0)}Kr.exists=HG;Kr.FILE=1;Kr.FOLDER=2;Kr.READABLE=Kr.FILE+Kr.FOLDER});var hR=I(Rh=>{"use strict";p();function UG(t){for(var e in t)Rh.hasOwnProperty(e)||(Rh[e]=t[e])}Object.defineProperty(Rh,"__esModule",{value:!0});UG(dR())});var t0=I(Ia=>{"use strict";p();Object.defineProperty(Ia,"__esModule",{value:!0});Ia.createDeferred=Ia.deferred=void 0;function e0(){let t,e,r="pending";return{promise:new Promise((i,s)=>{t=i,e=s}),done(i){r==="pending"&&(r="resolved",t(i))},fail(i){r==="pending"&&(r="rejected",e(i))},get fulfilled(){return r!=="pending"},get status(){return r}}}Ia.deferred=e0;Ia.createDeferred=e0;Ia.default=e0});var V0=I((exports,module)=>{p();(function(){"use strict";var ERROR="input is invalid type",WINDOW=typeof window=="object",root=WINDOW?window:{};root.JS_SHA256_NO_WINDOW&&(WINDOW=!1);var WEB_WORKER=!WINDOW&&typeof self=="object",NODE_JS=!root.JS_SHA256_NO_NODE_JS&&typeof process=="object"&&process.versions&&process.versions.node;NODE_JS?root=global:WEB_WORKER&&(root=self);var COMMON_JS=!root.JS_SHA256_NO_COMMON_JS&&typeof module=="object"&&module.exports,AMD=typeof define=="function"&&define.amd,ARRAY_BUFFER=!root.JS_SHA256_NO_ARRAY_BUFFER&&typeof ArrayBuffer!="undefined",HEX_CHARS="0123456789abcdef".split(""),EXTRA=[-2147483648,8388608,32768,128],SHIFT=[24,16,8,0],K=[1116352408,1899447441,3049323471,3921009573,961987163,1508970993,2453635748,2870763221,3624381080,310598401,607225278,1426881987,1925078388,2162078206,2614888103,3248222580,3835390401,4022224774,264347078,604807628,770255983,1249150122,1555081692,1996064986,2554220882,2821834349,2952996808,3210313671,3336571891,3584528711,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,2177026350,2456956037,2730485921,2820302411,3259730800,3345764771,3516065817,3600352804,4094571909,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,2227730452,2361852424,2428436474,2756734187,3204031479,3329325298],OUTPUT_TYPES=["hex","array","digest","arrayBuffer"],blocks=[];(root.JS_SHA256_NO_NODE_JS||!Array.isArray)&&(Array.isArray=function(t){return Object.prototype.toString.call(t)==="[object Array]"}),ARRAY_BUFFER&&(root.JS_SHA256_NO_ARRAY_BUFFER_IS_VIEW||!ArrayBuffer.isView)&&(ArrayBuffer.isView=function(t){return typeof t=="object"&&t.buffer&&t.buffer.constructor===ArrayBuffer});var createOutputMethod=function(t,e){return function(r){return new Sha256(e,!0).update(r)[t]()}},createMethod=function(t){var e=createOutputMethod("hex",t);NODE_JS&&(e=nodeWrap(e,t)),e.create=function(){return new Sha256(t)},e.update=function(i){return e.create().update(i)};for(var r=0;r>2]|=t[i]<>2]|=n<>2]|=(192|n>>6)<>2]|=(128|n&63)<=57344?(o[s>>2]|=(224|n>>12)<>2]|=(128|n>>6&63)<>2]|=(128|n&63)<>2]|=(240|n>>18)<>2]|=(128|n>>12&63)<>2]|=(128|n>>6&63)<>2]|=(128|n&63)<=64?(this.block=o[16],this.start=s-64,this.hash(),this.hashed=!0):this.start=s}return this.bytes>4294967295&&(this.hBytes+=this.bytes/4294967296<<0,this.bytes=this.bytes%4294967296),this}},Sha256.prototype.finalize=function(){if(!this.finalized){this.finalized=!0;var t=this.blocks,e=this.lastByteIndex;t[16]=this.block,t[e>>2]|=EXTRA[e&3],this.block=t[16],e>=56&&(this.hashed||this.hash(),t[0]=this.block,t[16]=t[1]=t[2]=t[3]=t[4]=t[5]=t[6]=t[7]=t[8]=t[9]=t[10]=t[11]=t[12]=t[13]=t[14]=t[15]=0),t[14]=this.hBytes<<3|this.bytes>>>29,t[15]=this.bytes<<3,this.hash()}},Sha256.prototype.hash=function(){var t=this.h0,e=this.h1,r=this.h2,n=this.h3,i=this.h4,s=this.h5,a=this.h6,o=this.h7,l=this.blocks,c,u,f,d,h,m,g,v,w,b,k;for(c=16;c<64;++c)h=l[c-15],u=(h>>>7|h<<25)^(h>>>18|h<<14)^h>>>3,h=l[c-2],f=(h>>>17|h<<15)^(h>>>19|h<<13)^h>>>10,l[c]=l[c-16]+u+l[c-7]+f<<0;for(k=e&r,c=0;c<64;c+=4)this.first?(this.is224?(v=300032,h=l[0]-1413257819,o=h-150054599<<0,n=h+24177077<<0):(v=704751109,h=l[0]-210244248,o=h-1521486534<<0,n=h+143694565<<0),this.first=!1):(u=(t>>>2|t<<30)^(t>>>13|t<<19)^(t>>>22|t<<10),f=(i>>>6|i<<26)^(i>>>11|i<<21)^(i>>>25|i<<7),v=t&e,d=v^t&r^k,g=i&s^~i&a,h=o+f+g+K[c]+l[c],m=u+d,o=n+h<<0,n=h+m<<0),u=(n>>>2|n<<30)^(n>>>13|n<<19)^(n>>>22|n<<10),f=(o>>>6|o<<26)^(o>>>11|o<<21)^(o>>>25|o<<7),w=n&t,d=w^n&e^v,g=o&i^~o&s,h=a+f+g+K[c+1]+l[c+1],m=u+d,a=r+h<<0,r=h+m<<0,u=(r>>>2|r<<30)^(r>>>13|r<<19)^(r>>>22|r<<10),f=(a>>>6|a<<26)^(a>>>11|a<<21)^(a>>>25|a<<7),b=r&n,d=b^r&t^w,g=a&o^~a&i,h=s+f+g+K[c+2]+l[c+2],m=u+d,s=e+h<<0,e=h+m<<0,u=(e>>>2|e<<30)^(e>>>13|e<<19)^(e>>>22|e<<10),f=(s>>>6|s<<26)^(s>>>11|s<<21)^(s>>>25|s<<7),k=e&r,d=k^e&n^b,g=s&a^~s&o,h=i+f+g+K[c+3]+l[c+3],m=u+d,i=t+h<<0,t=h+m<<0;this.h0=this.h0+t<<0,this.h1=this.h1+e<<0,this.h2=this.h2+r<<0,this.h3=this.h3+n<<0,this.h4=this.h4+i<<0,this.h5=this.h5+s<<0,this.h6=this.h6+a<<0,this.h7=this.h7+o<<0},Sha256.prototype.hex=function(){this.finalize();var t=this.h0,e=this.h1,r=this.h2,n=this.h3,i=this.h4,s=this.h5,a=this.h6,o=this.h7,l=HEX_CHARS[t>>28&15]+HEX_CHARS[t>>24&15]+HEX_CHARS[t>>20&15]+HEX_CHARS[t>>16&15]+HEX_CHARS[t>>12&15]+HEX_CHARS[t>>8&15]+HEX_CHARS[t>>4&15]+HEX_CHARS[t&15]+HEX_CHARS[e>>28&15]+HEX_CHARS[e>>24&15]+HEX_CHARS[e>>20&15]+HEX_CHARS[e>>16&15]+HEX_CHARS[e>>12&15]+HEX_CHARS[e>>8&15]+HEX_CHARS[e>>4&15]+HEX_CHARS[e&15]+HEX_CHARS[r>>28&15]+HEX_CHARS[r>>24&15]+HEX_CHARS[r>>20&15]+HEX_CHARS[r>>16&15]+HEX_CHARS[r>>12&15]+HEX_CHARS[r>>8&15]+HEX_CHARS[r>>4&15]+HEX_CHARS[r&15]+HEX_CHARS[n>>28&15]+HEX_CHARS[n>>24&15]+HEX_CHARS[n>>20&15]+HEX_CHARS[n>>16&15]+HEX_CHARS[n>>12&15]+HEX_CHARS[n>>8&15]+HEX_CHARS[n>>4&15]+HEX_CHARS[n&15]+HEX_CHARS[i>>28&15]+HEX_CHARS[i>>24&15]+HEX_CHARS[i>>20&15]+HEX_CHARS[i>>16&15]+HEX_CHARS[i>>12&15]+HEX_CHARS[i>>8&15]+HEX_CHARS[i>>4&15]+HEX_CHARS[i&15]+HEX_CHARS[s>>28&15]+HEX_CHARS[s>>24&15]+HEX_CHARS[s>>20&15]+HEX_CHARS[s>>16&15]+HEX_CHARS[s>>12&15]+HEX_CHARS[s>>8&15]+HEX_CHARS[s>>4&15]+HEX_CHARS[s&15]+HEX_CHARS[a>>28&15]+HEX_CHARS[a>>24&15]+HEX_CHARS[a>>20&15]+HEX_CHARS[a>>16&15]+HEX_CHARS[a>>12&15]+HEX_CHARS[a>>8&15]+HEX_CHARS[a>>4&15]+HEX_CHARS[a&15];return this.is224||(l+=HEX_CHARS[o>>28&15]+HEX_CHARS[o>>24&15]+HEX_CHARS[o>>20&15]+HEX_CHARS[o>>16&15]+HEX_CHARS[o>>12&15]+HEX_CHARS[o>>8&15]+HEX_CHARS[o>>4&15]+HEX_CHARS[o&15]),l},Sha256.prototype.toString=Sha256.prototype.hex,Sha256.prototype.digest=function(){this.finalize();var t=this.h0,e=this.h1,r=this.h2,n=this.h3,i=this.h4,s=this.h5,a=this.h6,o=this.h7,l=[t>>24&255,t>>16&255,t>>8&255,t&255,e>>24&255,e>>16&255,e>>8&255,e&255,r>>24&255,r>>16&255,r>>8&255,r&255,n>>24&255,n>>16&255,n>>8&255,n&255,i>>24&255,i>>16&255,i>>8&255,i&255,s>>24&255,s>>16&255,s>>8&255,s&255,a>>24&255,a>>16&255,a>>8&255,a&255];return this.is224||l.push(o>>24&255,o>>16&255,o>>8&255,o&255),l},Sha256.prototype.array=Sha256.prototype.digest,Sha256.prototype.arrayBuffer=function(){this.finalize();var t=new ArrayBuffer(this.is224?28:32),e=new DataView(t);return e.setUint32(0,this.h0),e.setUint32(4,this.h1),e.setUint32(8,this.h2),e.setUint32(12,this.h3),e.setUint32(16,this.h4),e.setUint32(20,this.h5),e.setUint32(24,this.h6),this.is224||e.setUint32(28,this.h7),t};function HmacSha256(t,e,r){var n,i=typeof t;if(i==="string"){var s=[],a=t.length,o=0,l;for(n=0;n>6,s[o++]=128|l&63):l<55296||l>=57344?(s[o++]=224|l>>12,s[o++]=128|l>>6&63,s[o++]=128|l&63):(l=65536+((l&1023)<<10|t.charCodeAt(++n)&1023),s[o++]=240|l>>18,s[o++]=128|l>>12&63,s[o++]=128|l>>6&63,s[o++]=128|l&63);t=s}else if(i==="object"){if(t===null)throw new Error(ERROR);if(ARRAY_BUFFER&&t.constructor===ArrayBuffer)t=new Uint8Array(t);else if(!Array.isArray(t)&&(!ARRAY_BUFFER||!ArrayBuffer.isView(t)))throw new Error(ERROR)}else throw new Error(ERROR);t.length>64&&(t=new Sha256(e,!0).update(t).array());var c=[],u=[];for(n=0;n<64;++n){var f=t[n]||0;c[n]=92^f,u[n]=54^f}Sha256.call(this,e,r),this.update(u),this.oKeyPad=c,this.inner=!0,this.sharedMemory=r}HmacSha256.prototype=new Sha256,HmacSha256.prototype.finalize=function(){if(Sha256.prototype.finalize.call(this),this.inner){this.inner=!1;var t=this.array();Sha256.call(this,this.is224,this.sharedMemory),this.update(this.oKeyPad),this.update(t),Sha256.prototype.finalize.call(this)}};var exports=createMethod();exports.sha256=exports,exports.sha224=createMethod(!0),exports.sha256.hmac=createHmacMethod(),exports.sha224.hmac=createHmacMethod(!0),COMMON_JS?module.exports=exports:(root.sha256=exports.sha256,root.sha224=exports.sha224,AMD&&define(function(){return exports}))})()});var OO=I(Ay=>{p();(function(t){var e=/\S/,r=/\"/g,n=/\n/g,i=/\r/g,s=/\\/g,a=/\u2028/,o=/\u2029/;t.tags={"#":1,"^":2,"<":3,$:4,"/":5,"!":6,">":7,"=":8,_v:9,"{":10,"&":11,_t:12},t.scan=function(S,_){var C=S.length,P=0,N=1,B=2,H=P,ce=null,Pe=null,ve="",ie=[],xe=!1,we=0,W=0,X="{{",q="}}";function De(){ve.length>0&&(ie.push({tag:"_t",text:new String(ve)}),ve="")}function ar(){for(var kt=!0,At=W;At"&&(Z.indent=ie[je].text.toString()),ie.splice(je,1));else At||ie.push({tag:` `});xe=!1,W=ie.length}function Ie(kt,At){var je="="+q,Z=kt.indexOf(je,At),M=c(kt.substring(kt.indexOf("=",At)+1,Z)).split(" ");return X=M[0],q=M[M.length-1],Z+je.length-1}for(_&&(_=_.split(" "),X=_[0],q=_[1]),we=0;we0;){if(H=y.shift(),B&&B.tag=="<"&&!(H.tag in f))throw new Error("Illegal content in < super tag.");if(t.tags[H.tag]<=t.tags.$||h(H,C))_.push(H),H.nodes=d(y,H.tag,_,C);else if(H.tag=="/"){if(_.length===0)throw new Error("Closing tag without opener: /"+H.n);if(N=_.pop(),H.n!=N.n&&!m(H.n,N.n,C))throw new Error("Nesting error: "+N.n+" vs. "+H.n);return N.end=H.i,P}else H.tag==` `&&(H.last=y.length==0||y[0].tag==` `);P.push(H)}if(_.length>0)throw new Error("missing closing tag: "+_.pop().n);return P}function h(y,S){for(var _=0,C=S.length;_":x,"<":function(y,S){var _={partials:{},code:"",subs:{},inPartial:!0};t.walk(y.nodes,_);var C=S.partials[x(y,S)];C.subs=_.subs,C.partials=_.partials},$:function(y,S){var _={subs:{},code:"",partials:S.partials,prefix:y.n};t.walk(y.nodes,_),S.subs[y.n]=_.code,S.inPartial||(S.code+="t.sub(\""+b(y.n)+"\",c,p,i);")},"\n":function(y,S){S.code+=A("\"\\n\""+(y.last?"":" + i"))},_v:function(y,S){S.code+="t.b(t.v(t."+k(y.n)+"(\""+b(y.n)+"\",c,p,0)));"},_t:function(y,S){S.code+=A("\""+b(y.text)+"\"")},"{":E,"&":E};function E(y,S){S.code+="t.b(t.t(t."+k(y.n)+"(\""+b(y.n)+"\",c,p,0)));"}function A(y){return"t.b("+y+");"}t.walk=function(y,S){for(var _,C=0,P=y.length;C{p();var PV={};(function(t){t.Template=function(d,h,m,g){d=d||{},this.r=d.code||this.r,this.c=m,this.options=g||{},this.text=h||"",this.partials=d.partials||{},this.subs=d.subs||{},this.buf=""},t.Template.prototype={r:function(d,h,m){return""},v:u,t:c,render:function(h,m,g){return this.ri([h],m||{},g)},ri:function(d,h,m){return this.r(d,h,m)},ep:function(d,h){var m=this.partials[d],g=h[m.name];if(m.instance&&m.base==g)return m.instance;if(typeof g=="string"){if(!this.c)throw new Error("No compiler available.");g=this.c.compile(g,this.options)}if(!g)return null;if(this.partials[d].base=g,m.subs){h.stackText||(h.stackText={});for(key in m.subs)h.stackText[key]||(h.stackText[key]=this.activeSub!==void 0&&h.stackText[this.activeSub]?h.stackText[this.activeSub]:this.text);g=r(g,m.subs,m.partials,this.stackSubs,this.stackPartials,h.stackText)}return this.partials[d].instance=g,g},rp:function(d,h,m,g){var v=this.ep(d,m);return v?v.ri(h,m,g):""},rs:function(d,h,m){var g=d[d.length-1];if(!f(g)){m(d,h,this);return}for(var v=0;v=0;x--)if(w=h[x],v=e(d,w,k),v!==void 0){b=!0;break}return b?(!g&&typeof v=="function"&&(v=this.mv(v,h,m)),v):g?!1:""},ls:function(d,h,m,g,v,w){var b=this.options.delimiters;return this.options.delimiters=w,this.b(this.ct(c(d.call(h,v,m)),h,g)),this.options.delimiters=b,!1},ct:function(d,h,m){if(this.options.disableLambda)throw new Error("Lambda features disabled.");return this.c.compile(d,this.options).render(h,m)},b:function(d){this.buf+=d},fl:function(){var d=this.buf;return this.buf="",d},ms:function(d,h,m,g,v,w,b){var k,x=h[h.length-1],E=d.call(x);return typeof E=="function"?g?!0:(k=this.activeSub&&this.subsText&&this.subsText[this.activeSub]?this.subsText[this.activeSub]:this.text,this.ls(E,x,h,m,k.substring(v,w),b)):E},mv:function(d,h,m){var g=h[h.length-1],v=d.call(g);return typeof v=="function"?this.ct(c(v.call(g)),g,m):v},sub:function(d,h,m,g){var v=this.subs[d];v&&(this.activeSub=d,v(h,m,this,g),this.activeSub=!1)}};function e(d,h,m){var g;return h&&typeof h=="object"&&(h[d]!==void 0?g=h[d]:m&&h.get&&typeof h.get=="function"&&(g=h.get(d))),g}function r(d,h,m,g,v,w){function b(){}b.prototype=d;function k(){}k.prototype=d.subs;var x,E=new b;E.subs=new k,E.subsText={},E.buf="",g=g||{},E.stackSubs=g,E.subsText=w;for(x in h)g[x]||(g[x]=h[x]);for(x in g)E.subs[x]=g[x];v=v||{},E.stackPartials=v;for(x in m)v[x]||(v[x]=m[x]);for(x in v)E.partials[x]=v[x];return E}var n=/&/g,i=//g,a=/\'/g,o=/\"/g,l=/[&<>\"\']/;function c(d){return String(d==null?"":d)}function u(d){return d=c(d),l.test(d)?d.replace(n,"&").replace(i,"<").replace(s,">").replace(a,"'").replace(o,"""):d}var f=Array.isArray||function(d){return Object.prototype.toString.call(d)==="[object Array]"}})(typeof Cy!="undefined"?Cy:PV)});var Ty=I((vne,DO)=>{p();var kp=OO();kp.Template=MO().Template;kp.template=kp.Template;DO.exports=kp});var BO=I(En=>{"use strict";p();Object.defineProperty(En,"__esModule",{value:!0});En.ColorSchemeType=En.DiffStyleType=En.LineMatchingType=En.OutputFormatType=En.LineType=void 0;var LO;(function(t){t.INSERT="insert",t.DELETE="delete",t.CONTEXT="context"})(LO||(En.LineType=LO={}));En.OutputFormatType={LINE_BY_LINE:"line-by-line",SIDE_BY_SIDE:"side-by-side"};En.LineMatchingType={LINES:"lines",WORDS:"words",NONE:"none"};En.DiffStyleType={WORD:"word",CHAR:"char"};var NO;(function(t){t.AUTO="auto",t.DARK="dark",t.LIGHT="light"})(NO||(En.ColorSchemeType=NO={}))});var H7={};eL(H7,{default:()=>Pm});module.exports=tL(H7);p();var ID=Ct(Pv()),be=require("obsidian"),FD=Ct(require("path")),Rm=Ct(require("fs/promises"));p();var Ln={};p();var Gd=class{constructor(e){this.plugin=e;this.tasks=[]}addTask(e,r){this.tasks.push({task:e,onFinished:r!=null?r:()=>{}}),this.tasks.length===1&&this.handleTask()}handleTask(){if(this.tasks.length>0){let e=this.tasks[0];e.task().then(r=>{e.onFinished(r),this.tasks.shift(),this.handleTask()},r=>{this.plugin.displayError(r),e.onFinished(void 0),this.tasks.shift(),this.handleTask()})}}clear(){this.tasks=[]}};p();var U=require("obsidian");p();var KA=require("obsidian"),jd="YYYY-MM-DD",Rv=`${jd} HH:mm`,$v=`${jd} HH:mm:ss`,qd=40,ol="conflict-files-obsidian-git.md",et={commitMessage:"vault backup: {{date}}",autoCommitMessage:"vault backup: {{date}}",commitMessageScript:"",commitDateFormat:$v,autoSaveInterval:0,autoPushInterval:0,autoPullInterval:0,autoPullOnBoot:!1,autoCommitOnlyStaged:!1,disablePush:!1,pullBeforePush:!0,disablePopups:!1,showErrorNotices:!0,disablePopupsForNoChanges:!1,listChangedFilesInMessageBody:!1,showStatusBar:!0,updateSubmodules:!1,syncMethod:"merge",mergeStrategy:"none",customMessageOnAutoBackup:!1,autoBackupAfterFileChange:!1,treeStructure:!1,refreshSourceControl:KA.Platform.isDesktopApp,basePath:"",differentIntervalCommitAndPush:!1,changedFilesInStatusBar:!1,showedMobileNotice:!1,refreshSourceControlTimer:7e3,showBranchStatusBar:!0,setLastSaveToLastCommit:!1,submoduleRecurseCheckout:!1,gitDir:"",showFileMenu:!0,authorInHistoryView:"hide",dateInHistoryView:!1,diffStyle:"split",hunks:{showSigns:!1,hunkCommands:!1,statusBar:"disabled"},lineAuthor:{show:!1,followMovement:"inactive",authorDisplay:"initials",showCommitHash:!1,dateTimeFormatOptions:"date",dateTimeFormatCustomString:Rv,dateTimeTimezone:"viewer-local",coloringMaxAge:"1y",colorNew:{r:255,g:150,b:150},colorOld:{r:120,g:160,b:255},textColorCss:"var(--text-muted)",ignoreWhitespace:!1,gutterSpacingFallbackLength:5}},jt={type:"git-view",name:"源代码管理",icon:"git-pull-request"},gn={type:"git-history-view",name:"历史记录",icon:"history"},Ns={type:"split-diff-view",name:"差异视图",icon:"diff"},Bs={type:"diff-view",name:"差异视图",icon:"git-pull-request"},Wd="C:\\Program Files\\Git\\cmd\\git.exe",zd=".git_credentials_input",Ta="obsidian_askpass.sh",QA=`#!/bin/sh PROMPT="$1" TEMP_FILE="$OBSIDIAN_GIT_CREDENTIALS_INPUT" cleanup() { rm -f "$TEMP_FILE" "$TEMP_FILE.response" } trap cleanup EXIT echo "$PROMPT" > "$TEMP_FILE" while [ ! -e "$TEMP_FILE.response" ]; do if [ ! -e "$TEMP_FILE" ]; then echo "Trigger file got removed: Abort" >&2 exit 1 fi sleep 0.1 done RESPONSE=$(cat "$TEMP_FILE.response") echo "$RESPONSE" `,JA=["3dm","3ds","3g2","3gp","7z","a","aac","adp","afdesign","afphoto","afpub","ai","aif","aiff","alz","ape","apk","appimage","ar","arj","asf","au","avi","bak","baml","bh","bin","bk","bmp","btif","bz2","bzip2","cab","caf","cgm","class","cmx","cpio","cr2","cur","dat","dcm","deb","dex","djvu","dll","dmg","dng","doc","docm","docx","dot","dotm","dra","DS_Store","dsk","dts","dtshd","dvb","dwg","dxf","ecelp4800","ecelp7470","ecelp9600","egg","eol","eot","epub","exe","f4v","fbs","fh","fla","flac","flatpak","fli","flv","fpx","fst","fvt","g3","gh","gif","graffle","gz","gzip","h261","h263","h264","icns","ico","ief","img","ipa","iso","jar","jpeg","jpg","jpgv","jpm","jxr","key","ktx","lha","lib","lvp","lz","lzh","lzma","lzo","m3u","m4a","m4v","mar","mdi","mht","mid","midi","mj2","mka","mkv","mmr","mng","mobi","mov","movie","mp3","mp4","mp4a","mpeg","mpg","mpga","mxu","nef","npx","numbers","nupkg","o","odp","ods","odt","oga","ogg","ogv","otf","ott","pages","pbm","pcx","pdb","pdf","pea","pgm","pic","png","pnm","pot","potm","potx","ppa","ppam","ppm","pps","ppsm","ppsx","ppt","pptm","pptx","psd","pya","pyc","pyo","pyv","qt","rar","ras","raw","resources","rgb","rip","rlc","rmf","rmvb","rpm","rtf","rz","s3m","s7z","scpt","sgi","shar","snap","sil","sketch","slk","smv","snk","so","stl","suo","sub","swf","tar","tbz","tbz2","tga","tgz","thmx","tif","tiff","tlz","ttc","ttf","txz","udf","uvh","uvi","uvm","uvp","uvs","uvu","viv","vob","war","wav","wax","wbmp","wdp","weba","webm","webp","whl","wim","wm","wma","wmv","wmx","woff","woff2","wrm","wvx","xbm","xif","xla","xlam","xls","xlsb","xlsm","xlsx","xlt","xltm","xltx","xm","xmind","xpi","xpm","xwd","xz","z","zip","zipx"];p();p();p();var hi=class{diff(e,r,n={}){let i;typeof n=="function"?(i=n,n={}):"callback"in n&&(i=n.callback);let s=this.castInput(e,n),a=this.castInput(r,n),o=this.removeEmpty(this.tokenize(s,n)),l=this.removeEmpty(this.tokenize(a,n));return this.diffWithOptionsObj(o,l,n,i)}diffWithOptionsObj(e,r,n,i){var s;let a=b=>{if(b=this.postProcess(b,n),i){setTimeout(function(){i(b)},0);return}else return b},o=r.length,l=e.length,c=1,u=o+l;n.maxEditLength!=null&&(u=Math.min(u,n.maxEditLength));let f=(s=n.timeout)!==null&&s!==void 0?s:1/0,d=Date.now()+f,h=[{oldPos:-1,lastComponent:void 0}],m=this.extractCommon(h[0],r,e,0,n);if(h[0].oldPos+1>=l&&m+1>=o)return a(this.buildValues(h[0].lastComponent,r,e));let g=-1/0,v=1/0,w=()=>{for(let b=Math.max(g,-c);b<=Math.min(v,c);b+=2){let k,x=h[b-1],E=h[b+1];x&&(h[b-1]=void 0);let A=!1;if(E){let S=E.oldPos-b;A=E&&0<=S&&S=l&&m+1>=o)return a(this.buildValues(k.lastComponent,r,e))||!0;h[b]=k,k.oldPos+1>=l&&(v=Math.min(v,b-1)),m+1>=o&&(g=Math.max(g,b+1))}c++};if(i)(function b(){setTimeout(function(){if(c>u||Date.now()>d)return i(void 0);w()||b()},0)})();else for(;c<=u&&Date.now()<=d;){let b=w();if(b)return b}}addToPath(e,r,n,i,s){let a=e.lastComponent;return a&&!s.oneChangePerToken&&a.added===r&&a.removed===n?{oldPos:e.oldPos+i,lastComponent:{count:a.count+1,added:r,removed:n,previousComponent:a.previousComponent}}:{oldPos:e.oldPos+i,lastComponent:{count:1,added:r,removed:n,previousComponent:a}}}extractCommon(e,r,n,i,s){let a=r.length,o=n.length,l=e.oldPos,c=l-i,u=0;for(;c+1d.length?m:d}),u.value=this.join(f)}else u.value=this.join(r.slice(l,l+u.count));l+=u.count,u.added||(c+=u.count)}}return i}};p();var Iv=class extends hi{},eC=new Iv;function Fv(t,e,r){return eC.diff(t,e,r)}p();p();function Ov(t,e){let r;for(r=0;re.length&&(r=t.length-e.length);let n=e.length;t.length0&&e[a]!=e[s];)s=i[s];e[a]==e[s]&&s++}s=0;for(let a=r;a0&&t[a]!=e[s];)s=i[s];t[a]==e[s]&&s++}return s}function cl(t){let e;for(e=t.length-1;e>=0&&t[e].match(/\s/);e--);return t.substring(e+1)}function Vi(t){let e=t.match(/^\s*/);return e?e[0]:""}var Xd="a-zA-Z0-9_\\u{AD}\\u{C0}-\\u{D6}\\u{D8}-\\u{F6}\\u{F8}-\\u{2C6}\\u{2C8}-\\u{2D7}\\u{2DE}-\\u{2FF}\\u{1E00}-\\u{1EFF}",X6=new RegExp(`[${Xd}]+|\\s+|[^${Xd}]`,"ug"),Lv=class extends hi{equals(e,r,n){return n.ignoreCase&&(e=e.toLowerCase(),r=r.toLowerCase()),e.trim()===r.trim()}tokenize(e,r={}){let n;if(r.intlSegmenter){let a=r.intlSegmenter;if(a.resolvedOptions().granularity!="word")throw new Error("The segmenter passed must have a granularity of \"word\"");n=[];for(let o of Array.from(a.segment(e))){let l=o.segment;n.length&&/\s/.test(n[n.length-1])&&/\s/.test(l)?n[n.length-1]+=l:n.push(l)}}else n=e.match(X6)||[];let i=[],s=null;return n.forEach(a=>{/\s/.test(a)?s==null?i.push(a):i.push(i.pop()+a):s!=null&&/\s/.test(s)?i[i.length-1]==s?i.push(i.pop()+a):i.push(s+a):i.push(a),s=a}),i}join(e){return e.map((r,n)=>n==0?r:r.replace(/^\s+/,"")).join("")}postProcess(e,r){if(!e||r.oneChangePerToken)return e;let n=null,i=null,s=null;return e.forEach(a=>{a.added?i=a:a.removed?s=a:((i||s)&&tC(n,s,i,a),n=a,i=null,s=null)}),(i||s)&&tC(n,s,i,null),e}},Z6=new Lv;function tC(t,e,r,n){if(e&&r){let i=Vi(e.value),s=cl(e.value),a=Vi(r.value),o=cl(r.value);if(t){let l=Ov(i,a);t.value=Yd(t.value,a,l),e.value=ll(e.value,l),r.value=ll(r.value,l)}if(n){let l=Mv(s,o);n.value=Vd(n.value,o,l),e.value=pu(e.value,l),r.value=pu(r.value,l)}}else if(r){if(t){let i=Vi(r.value);r.value=r.value.substring(i.length)}if(n){let i=Vi(n.value);n.value=n.value.substring(i.length)}}else if(t&&n){let i=Vi(n.value),s=Vi(e.value),a=cl(e.value),o=Ov(i,s);e.value=ll(e.value,o);let l=Mv(ll(i,o),a);e.value=pu(e.value,l),n.value=Vd(n.value,i,l),t.value=Yd(t.value,i,i.slice(0,i.length-l.length))}else if(n){let i=Vi(n.value),s=cl(e.value),a=Dv(s,i);e.value=pu(e.value,a)}else if(t){let i=cl(t.value),s=Vi(e.value),a=Dv(i,s);e.value=ll(e.value,a)}}var Nv=class extends hi{tokenize(e){let r=new RegExp(`(\\r?\\n)|[${Xd}]+|[^\\S\\n\\r]+|[^${Xd}]`,"ug");return e.match(r)||[]}},rC=new Nv;function Bv(t,e,r){return rC.diff(t,e,r)}p();var Hv=class extends hi{constructor(){super(...arguments),this.tokenize=Q6}equals(e,r,n){return n.ignoreWhitespace?((!n.newlineIsToken||!e.includes(` `))&&(e=e.trim()),(!n.newlineIsToken||!r.includes(` `))&&(r=r.trim())):n.ignoreNewlineAtEof&&!n.newlineIsToken&&(e.endsWith(` `)&&(e=e.slice(0,-1)),r.endsWith(` `)&&(r=r.slice(0,-1))),super.equals(e,r,n)}},K6=new Hv;function Uv(t,e,r){return K6.diff(t,e,r)}function Q6(t,e){e.stripTrailingCr&&(t=t.replace(/\r\n/g,` `));let r=[],n=t.split(/(\n|\r\n)/);n[n.length-1]||n.pop();for(let i=0;i{let d=c(f);u(d)}}))}else return c(Uv(r,n,o));function c(u){if(!u)return;u.push({value:"",lines:[]});function f(b){return b.map(function(k){return" "+k})}let d=[],h=0,m=0,g=[],v=1,w=1;for(let b=0;b0?f(E.lines.slice(-l)):[],h-=g.length,m-=g.length)}for(let E of x)g.push((k.added?"+":"-")+E);k.added?w+=x.length:v+=x.length}else{if(h)if(x.length<=l*2&&b1&&!e.includeFileHeaders)throw new Error("Cannot omit file headers on a multi-file patch. (The result would be unparseable; how would a tool trying to apply the patch know which changes are to which file?)");return t.map(n=>Zd(n,e)).join(` `)}let r=[];e.includeIndex&&t.oldFileName==t.newFileName&&r.push("Index: "+t.oldFileName),e.includeUnderline&&r.push("==================================================================="),e.includeFileHeaders&&(r.push("--- "+t.oldFileName+(typeof t.oldHeader=="undefined"?"":"\t"+t.oldHeader)),r.push("+++ "+t.newFileName+(typeof t.newHeader=="undefined"?"":"\t"+t.newHeader)));for(let n=0;n{o(l?Zd(l,a.headerOptions):void 0)}}))}else{let o=Gv(t,e,r,n,i,s,a);return o?Zd(o,a==null?void 0:a.headerOptions):void 0}}function mu(t,e,r,n,i,s){return iC(t,t,e,r,n,i,s)}function J6(t){let e=t.endsWith(` `),r=t.split(` `).map(n=>n+` `);return e?r.pop():r.push(r.pop().slice(0,-1)),r}var te=Ct(Pv()),Ra=require("obsidian");p();function sC(t,e){let r=Object.assign({},t.lineAuthor,e.lineAuthor);return Object.assign({},t,e,{lineAuthor:r})}var ul=class extends Error{constructor(r){super("没有可用的网络连接");this.originalError=r}};p();var aC=require("obsidian"),t5={options:[],placeholder:"",allowEmpty:!1,onlySelection:!1,initialValue:void 0,obscure:!1},Ze=class extends aC.SuggestModal{constructor(e,r){if(super(e.app),this.config={...t5,...r},this.setPlaceholder(this.config.placeholder),this.config.obscure){this.inputEl.type="password";let n=this.containerEl.querySelector(".prompt-input-container");n.addClass("git-obscure-prompt"),n.setAttr("git-is-obscured","true");let i=n==null?void 0:n.createDiv({cls:"search-input-clear-button"});i.style.marginRight="32px",i.id="git-show-password",i.addEventListener("click",()=>{n.getAttr("git-is-obscured")==="true"?(this.inputEl.type="text",n.setAttr("git-is-obscured","false")):(this.inputEl.type="password",n.setAttr("git-is-obscured","true"))})}}openAndGetResult(){return new Promise(e=>{this.resolve=e,this.open(),this.config.initialValue!=null&&(this.inputEl.value=this.config.initialValue,this.inputEl.dispatchEvent(new Event("input")))})}onClose(){new Promise(e=>setTimeout(e,10)).then(()=>{this.resolve&&this.resolve(void 0)})}getSuggestions(e){return this.config.onlySelection?this.config.options:this.config.allowEmpty?[e.length>0?e:" ",...this.config.options]:[e.length>0?e:"...",...this.config.options]}renderSuggestion(e,r){this.config.obscure?r.hide():r.setText(e)}onChooseSuggestion(e,r){if(this.resolve){let n;this.config.allowEmpty&&e===" "?n="":e==="..."?n=void 0:n=e,this.resolve(n)}}};p();var qP=Ct(EC()),WP=require("child_process"),zP=Ct(jP()),Ki=require("obsidian");function Eh(t){throw new Error(`Unexpected object: ${t}`)}function Pu(t,e,r){return t===1?`${t} ${e}`:`${t} ${r!=null?r:e+"s"}`}var Yw=(t,e)=>t==="."||e==null||e.length===0||e==="."?!0:e.length>=t.length?e.startsWith(t):t.startsWith(e);function Bn(t,e){let r;if(e){if(e.button===0||e.button===1){let n=Ki.Keymap.isModEvent(e);r=t.workspace.getLeaf(n)}}else r=t.workspace.getLeaf(!1);return r}function gi(t,e,r,n,i){if(e.button==2){let s=t.vault.getAbstractFileByPath(r);if(s!=null){let a=new Ki.Menu;t.workspace.trigger("file-menu",a,s,i,n),a.showAtPosition({x:e.pageX,y:e.pageY})}else{let a=new Ki.Menu;t.workspace.trigger("obsidian-git:menu",a,r,i,n),a.showAtPosition({x:e.pageX,y:e.pageY})}}}function js(t){throw new Error("Impossible branch: "+t)}function Xw(t){return`rgb(${t.r},${t.g},${t.b})`}function VP(t){var s;let e=(s=qP.fromString(t))==null?void 0:s.toRgbaArray();if(e===void 0)return;let[r,n,i]=e;return{r,g:n,b:i}}function YP(t){return t.diff(Ki.moment.unix(0),"seconds")}function XP(t){if(t.length!==0)return t.slice().sort()[Math.floor(t.length/2)]}function ZP(t,e){return(0,zP.default)(t,e,{strict:!0})}function Ru(t,e){return new Proxy(t,{get(r,n){return n==="length"?Math.min(e,r.length):r[n]}})}function KP(t,e,r){return t.length<=e?new Array(e-t.length).fill(r).join("")+t:t.substring(t.length-e)}function QP(t,e){if(e<=0)return t;let r=new Array(e).fill(" ").join(""),n=t.substring(e,t.length);return r+n}function Zw(t,e,r){return t<=e&&e<=r}function Qi(t){let[e,...r]=t.split("/");return[e,r.length===0?void 0:r.join("/")]}function vi(t){return t.endsWith("/")?t:t.split("/").last().replace(/\.md$/,"")}function JP(t){return t===1?" 1 分钟":`${t} 分钟`}function yG(t){let e=t.lastIndexOf(".");return t.substring(e+1)}function ml(t){if(t.endsWith(".md"))return!1;let e=yG(t);return JA.includes(e)}function Kw(t){return(t.startsWith("https://github.com/")||t.startsWith("https://gitlab.com/"))&&(t.endsWith(".git")||(t=t+".git")),t}function gl(t,e){let r=e.vault.getAbstractFileByPath(t);if(!(r instanceof Ki.TFile))return!1;try{return!!e.viewRegistry.getTypeByExtension(r.extension)}catch(n){return!0}}function eR({isFolder:t,gitRelativePath:e}){let r="/";return r+=e,t&&(r+="/"),r.replace(/([\\!#*?[\]])/g,String.raw`\$1`).replace(/\s(?=\s*$)/g,String.raw`\ `)}function vl(t,e,r,n){let i=e.target;t.workspace.trigger("hover-link",{event:e,source:r.getViewType(),hoverParent:r,targetEl:i,linktext:n})}function $u(t,e,r={}){return new Promise((n,i)=>{let s=(0,WP.spawn)(t,e,r),a="",o="";s.stdout.on("data",l=>{a+=l.toString()}),s.stderr.on("data",l=>{o+=l.toString()}),s.on("error",l=>{n({error:new Error(l.message),stdout:a,stderr:a,code:1})}),s.on("close",l=>{n({stdout:a,stderr:o,code:l!=null?l:1,error:void 0})})})}p();var tR=require("os"),kh=require("obsidian"),wl=class{constructor(e){this.plugin=e,this.app=e.app}getRelativeVaultPath(e){return this.plugin.settings.basePath?this.plugin.settings.basePath+"/"+e:e}getRelativeRepoPath(e,r=!0){return r&&this.plugin.settings.basePath.length>0?e.substring(this.plugin.settings.basePath.length+1):e}unload(){}_getTreeStructure(e,r=0){let n=[];for(e=[...e];e.length>0;){let i=e.first(),s=i.path.substring(r);if(s.contains("/")){let a=s.substring(0,s.indexOf("/")),o=e.filter(c=>c.path.substring(r).startsWith(a+"/"));o.forEach(c=>e.remove(c));let l=i.path.substring(0,s.indexOf("/")+r);n.push({title:a,path:l,vaultPath:this.getRelativeVaultPath(l),children:this._getTreeStructure(o,(r>0?r+a.length:a.length)+1)})}else n.push({title:s,data:i,path:i.path,vaultPath:this.getRelativeVaultPath(i.path)}),e.remove(i)}return n}simplify(e){var r,n,i,s;for(let a of e){for(;;){let o=((r=a.children)==null?void 0:r.length)==1,l=((i=(n=a.children)==null?void 0:n.first())==null?void 0:i.data)==null;if(!(a.children!=null&&o&&l))break;let c=a.children.first();a.title+="/"+c.title,a.data=c.data,a.path=c.path,a.vaultPath=c.vaultPath,a.children=c.children}a.children!=null&&this.simplify(a.children),(s=a.children)==null||s.sort((o,l)=>{let c=(l.data==null?1:0)-(o.data==null?1:0);return c!=0?c:o.title.localeCompare(l.title)})}return e.sort((a,o)=>{let l=(o.data==null?1:0)-(a.data==null?1:0);return l!=0?l:a.title.localeCompare(o.title)})}getTreeStructure(e){let r=this._getTreeStructure(e);return this.simplify(r)}async formatCommitMessage(e){let r;if(e.includes("{{numFiles}}")){r=await this.status();let n=r.staged.length;e=e.replace("{{numFiles}}",String(n))}if(e.includes("{{hostname}}")){let n=this.plugin.localStorage.getHostname()||"";!n&&kh.Platform.isDesktopApp&&(n=(0,tR.hostname)()),e=e.replace("{{hostname}}",n)}if(e.includes("{{files}}")){r=r!=null?r:await this.status();let n={},i="";if(r.staged.length<100){r.staged.forEach(a=>{a.index in n?n[a.index].push(a.path):n[a.index]=[a.path]});let s=[];for(let[a,o]of Object.entries(n))s.push(a+" "+o.join(" "));i=s.join(", ")}else i="文件数量过多,无法列出";e=e.replace("{{files}}",i)}if(e=e.replace("{{date}}",(0,kh.moment)().format(this.plugin.settings.commitDateFormat)),this.plugin.settings.listChangedFilesInMessageBody){let n=r!=null?r:await this.status(),i="";n.staged.length<100?i=n.staged.map(s=>s.path).join(` `):i="文件数量过多,无法列出",e=e+` 受影响的文件: `+i}return e}};p();var qs=require("obsidian"),Ah=class{constructor(e,r){this.plugin=r;this.promises={};this.adapter=e.adapter,this.vault=e,this.lastBasePath=this.plugin.settings.basePath,this.promises.readFile=this.readFile.bind(this),this.promises.writeFile=this.writeFile.bind(this),this.promises.readdir=this.readdir.bind(this),this.promises.mkdir=this.mkdir.bind(this),this.promises.rmdir=this.rmdir.bind(this),this.promises.stat=this.stat.bind(this),this.promises.unlink=this.unlink.bind(this),this.promises.lstat=this.lstat.bind(this),this.promises.readlink=this.readlink.bind(this),this.promises.symlink=this.symlink.bind(this)}async readFile(e,r){var n;if(this.maybeLog("Read: "+e+JSON.stringify(r)),r=="utf8"||r.encoding=="utf8"){let i=this.vault.getAbstractFileByPath(e);return i instanceof qs.TFile?(this.maybeLog("Reuse"),this.vault.read(i)):this.adapter.read(e)}else{if(e.endsWith(this.gitDir+"/index"))return this.plugin.settings.basePath!=this.lastBasePath?(this.clearIndex(),this.lastBasePath=this.plugin.settings.basePath,this.adapter.readBinary(e)):(n=this.index)!=null?n:this.adapter.readBinary(e);let i=this.vault.getAbstractFileByPath(e);return i instanceof qs.TFile?(this.maybeLog("Reuse"),this.vault.readBinary(i)):this.adapter.readBinary(e)}}async writeFile(e,r){if(this.maybeLog("Write: "+e),typeof r=="string"){let n=this.vault.getAbstractFileByPath(e);return n instanceof qs.TFile?this.vault.modify(n,r):this.adapter.write(e,r)}else if(e.endsWith(this.gitDir+"/index"))this.index=r,this.indexmtime=Date.now();else{let n=this.vault.getAbstractFileByPath(e);return n instanceof qs.TFile?this.vault.modifyBinary(n,r):this.adapter.writeBinary(e,r)}}async readdir(e){e==="."&&(e="/");let r=await this.adapter.list(e),n=[...r.files,...r.folders],i;return e!=="/"?i=n.map(s=>(0,qs.normalizePath)(s.substring(e.length))):i=n,i}async mkdir(e){return this.adapter.mkdir(e)}async rmdir(e,r){var n,i;return this.adapter.rmdir(e,(i=(n=r==null?void 0:r.options)==null?void 0:n.recursive)!=null?i:!1)}async stat(e){if(e.endsWith(this.gitDir+"/index")){if(this.index!==void 0&&this.indexctime!=null&&this.indexmtime!=null)return{isFile:()=>!0,isDirectory:()=>!1,isSymbolicLink:()=>!1,size:this.index.byteLength,type:"file",ctimeMs:this.indexctime,mtimeMs:this.indexmtime};{let n=await this.adapter.stat(e);if(n==null)throw{code:"ENOENT"};return this.indexctime=n.ctime,this.indexmtime=n.mtime,{ctimeMs:n.ctime,mtimeMs:n.mtime,size:n.size,type:"file",isFile:()=>!0,isDirectory:()=>!1,isSymbolicLink:()=>!1}}}e==="."&&(e="/");let r=this.vault.getAbstractFileByPath(e);if(this.maybeLog("Stat: "+e),r instanceof qs.TFile)return this.maybeLog("Reuse stat"),{ctimeMs:r.stat.ctime,mtimeMs:r.stat.mtime,size:r.stat.size,type:"file",isFile:()=>!0,isDirectory:()=>!1,isSymbolicLink:()=>!1};{let n=await this.adapter.stat(e);if(n)return{ctimeMs:n.ctime,mtimeMs:n.mtime,size:n.size,type:n.type==="folder"?"directory":n.type,isFile:()=>n.type==="file",isDirectory:()=>n.type==="folder",isSymbolicLink:()=>!1};throw{code:"ENOENT"}}}async unlink(e){return this.adapter.remove(e)}async lstat(e){return this.stat(e)}async readlink(e){throw new Error(`readlink of (${e}) is not implemented.`)}async symlink(e){throw new Error(`symlink of (${e}) is not implemented.`)}async saveAndClear(){this.index!==void 0&&(await this.adapter.writeBinary(this.plugin.gitManager.getRelativeVaultPath(this.gitDir+"/index"),this.index,{ctime:this.indexctime,mtime:this.indexmtime})),this.clearIndex()}clearIndex(){this.index=void 0,this.indexctime=void 0,this.indexmtime=void 0}get gitDir(){return this.plugin.settings.gitDir||".git"}maybeLog(e){}};var oR=Ct(aR()),Hn=class extends wl{constructor(r){super(r);this.FILE=0;this.HEAD=1;this.WORKDIR=2;this.STAGE=3;this.status_mapping={"000":" ","003":"AD","020":"??","022":"A ","023":"AM",100:"D ",101:" D",103:"MD",110:"DA",111:" ",113:"MM",120:"DA",121:" M",122:"M ",123:"MM"};this.noticeLength=999999;this.fs=new Ah(this.app.vault,this.plugin)}getRepo(){return{fs:this.fs,dir:this.plugin.settings.basePath,gitdir:this.plugin.settings.gitDir||void 0,onAuth:()=>{var r,n;return{username:(r=this.plugin.localStorage.getUsername())!=null?r:void 0,password:(n=this.plugin.localStorage.getPassword())!=null?n:void 0}},onAuthFailure:async()=>{new Ra.Notice("验证失败。请尝试使用不同的凭据");let r=await new Ze(this.plugin,{placeholder:"指定您的用户名"}).openAndGetResult();if(r){let n=await new Ze(this.plugin,{placeholder:"指定您的密码/个人访问令牌",obscure:!0}).openAndGetResult();if(n)return this.plugin.localStorage.setUsername(r),this.plugin.localStorage.setPassword(n),{username:r,password:n}}return{cancel:!0}},http:{async request({url:r,method:n,headers:i,body:s}){let a;s&&(a=await SG(s));let o=await(0,Ra.requestUrl)({url:r,method:n,headers:i,body:a,throw:!1});return{url:r,method:n,headers:o.headers,body:xG(o.arrayBuffer),statusCode:o.status,statusMessage:o.status.toString()}}}}}async wrapFS(r){try{let n=await r;return await this.fs.saveAndClear(),n}catch(n){throw await this.fs.saveAndClear(),n}}async status(r){let n,i=window.setTimeout(()=>{n=new Ra.Notice("这需要较长的时间:获取状态",this.noticeLength)},2e4);try{this.plugin.setPluginState({gitAction:1});let s={...this.getRepo()};(r==null?void 0:r.path)!=null&&(s.filepaths=[`${r.path}/`]);let a=(await this.wrapFS(te.default.statusMatrix(s))).map(f=>this.getFileStatusResult(f)),o=[],l=[],c=[];for(let f of a)f.workingDir!==" "&&o.push(f),f.index!==" "&&f.index!=="U"&&l.push(f),(f.index!=" "||f.workingDir!=" ")&&c.push(f);let u=[];return window.clearTimeout(i),n==null||n.hide(),{all:c,changed:o,staged:l,conflicted:u}}catch(s){throw window.clearTimeout(i),n==null||n.hide(),this.plugin.displayError(s),s}}async commitAll({message:r,status:n,unstagedFiles:i}){try{return await this.checkAuthorInfo(),await this.stageAll({status:n,unstagedFiles:i}),this.commit({message:r})}catch(s){throw this.plugin.displayError(s),s}}async commit({message:r}){try{await this.checkAuthorInfo(),this.plugin.setPluginState({gitAction:4});let n=await this.formatCommitMessage(r),i=this.plugin.localStorage.getConflict(),s;if(i){let a=await this.branchInfo();s=[a.current,a.tracking]}await this.wrapFS(te.default.commit({...this.getRepo(),message:n,parent:s})),this.plugin.localStorage.setConflict(!1);return}catch(n){throw this.plugin.displayError(n),n}}async stage(r,n){let i=this.getRelativeRepoPath(r,n),s;n?s=r:s=this.getRelativeVaultPath(r);try{this.plugin.setPluginState({gitAction:3}),(await this.app.vault.adapter.exists(s))?await this.wrapFS(te.default.add({...this.getRepo(),filepath:i})):await this.wrapFS(te.default.remove({...this.getRepo(),filepath:i}))}catch(a){throw this.plugin.displayError(a),a}}async stageAll({dir:r,status:n,unstagedFiles:i}){try{if(n)await Promise.all(n.changed.map(s=>s.workingDir!=="D"?this.wrapFS(te.default.add({...this.getRepo(),filepath:s.path})):te.default.remove({...this.getRepo(),filepath:s.path})));else{let s=i!=null?i:await this.getUnstagedFiles(r!=null?r:".");await Promise.all(s.map(({path:a,type:o})=>o=="D"?te.default.remove({...this.getRepo(),filepath:a}):this.wrapFS(te.default.add({...this.getRepo(),filepath:a}))))}}catch(s){throw this.plugin.displayError(s),s}}async unstage(r,n){try{this.plugin.setPluginState({gitAction:3}),r=this.getRelativeRepoPath(r,n),await this.wrapFS(te.default.resetIndex({...this.getRepo(),filepath:r}))}catch(i){throw this.plugin.displayError(i),i}}async unstageAll({dir:r,status:n}){try{let i;n?i=n.staged.map(s=>s.path):i=(await this.getStagedFiles(r!=null?r:".")).map(({path:a})=>a),await this.wrapFS(Promise.all(i.map(s=>te.default.resetIndex({...this.getRepo(),filepath:s}))))}catch(i){throw this.plugin.displayError(i),i}}async discard(r){try{this.plugin.setPluginState({gitAction:3}),await this.wrapFS(te.default.checkout({...this.getRepo(),filepaths:[r],force:!0}))}catch(n){throw this.plugin.displayError(n),n}}async discardAll({dir:r,status:n}){let i=[];n?r!=null?i=n.changed.filter(s=>s.workingDir!="U"&&s.path.startsWith(r)).map(s=>s.path):i=n.changed.filter(s=>s.workingDir!="U").map(s=>s.path):i=(await this.getUnstagedFiles(r)).filter(s=>s.type!="A").map(({path:s})=>s);try{await this.wrapFS(te.default.checkout({...this.getRepo(),filepaths:i,force:!0}))}catch(s){throw this.plugin.displayError(s),s}}async getUntrackedPaths(r){let n=[];if(r.status)for(let i of r.status.changed)i.index=="U"&&i.workingDir==="U"&&i.path.startsWith(r.path!=null?`${r.path}/`:"")&&n.push(i.path);else{let i=await this.status({path:r==null?void 0:r.path});for(let s of i.changed)s.index==="U"&&s.workingDir==="U"&&n.push(s.path)}return n}getProgressText(r,n){let i=`${r} progress:`;return n.phase&&(i=`${i} ${n.phase}:`),n.loaded&&(i=`${i} ${n.loaded}`,n.total&&(i=`${i} of ${n.total}`)),i}resolveRef(r){return this.wrapFS(te.default.resolveRef({...this.getRepo(),ref:r}))}async pull(){let r=this.showNotice("初始化拉取");try{this.plugin.setPluginState({gitAction:2});let n=await this.resolveRef("HEAD");await this.fetch();let i=await this.branchInfo();await this.checkAuthorInfo(),(await this.wrapFS(te.default.merge({...this.getRepo(),ours:i.current,theirs:i.tracking,abortOnConflict:!1,mergeDriver:this.plugin.settings.mergeStrategy!=="none"?({contents:l})=>{var b,k,x;let c=l[0],u=l[1],f=l[2],d=/^.*(\r?\n|$)/gm,h=(b=u.match(d))!=null?b:[],m=(k=c.match(d))!=null?k:[],g=(x=f.match(d))!=null?x:[],v=(0,oR.default)(h,m,g),w="";for(let E of v)E.ok&&(w+=E.ok.join("")),E.conflict&&(w+=this.plugin.settings.mergeStrategy==="ours"?E.conflict.a.join(""):E.conflict.b.join(""));return{cleanMerge:!0,mergedText:w}}:void 0}))).alreadyMerged||(await this.wrapFS(te.default.checkout({...this.getRepo(),ref:i.current,onProgress:l=>{r!==void 0&&(r.noticeEl.innerText=this.getProgressText("Checkout",l))},remote:i.remote}))),r==null||r.hide();let a=await this.resolveRef("HEAD"),o=await this.getFileChangesCount(n,a);return this.showNotice("完成拉取",!1),o.map(l=>({path:l.path,workingDir:"P",index:"P",vaultPath:this.getRelativeVaultPath(l.path)}))}catch(n){throw r==null||r.hide(),n instanceof te.Errors.MergeConflictError&&(await this.plugin.handleConflict(n.data.filepaths.map(i=>this.getRelativeVaultPath(i)))),this.plugin.displayError(n),n}}async push(){if(!(await this.canPush()))return 0;let r=this.showNotice("初始化推送");try{this.plugin.setPluginState({gitAction:1});let n=await this.branchInfo(),i=n.tracking,s=n.current,a=(await this.getFileChangesCount(s,i)).length;this.plugin.setPluginState({gitAction:5});let o=await this.getCurrentRemote();return await this.wrapFS(te.default.push({...this.getRepo(),remote:o,onProgress:l=>{r!==void 0&&(r.noticeEl.innerText=this.getProgressText("Pushing",l))}})),r==null||r.hide(),a}catch(n){throw r==null||r.hide(),this.plugin.displayError(n),n}}async getUnpushedCommits(){let r=await this.branchInfo(),n=r.tracking,i=r.current;if(n==null||i==null)return 0;let s=await this.resolveRef(i),a=await this.resolveRef(n);return(await this.getFileChangesCount(s,a)).length}async canPush(){let r=await this.branchInfo(),n=r.tracking,i=r.current,s=await this.resolveRef(i),a=await this.resolveRef(n);return s!=a}async checkRequirements(){return(await this.plugin.app.vault.adapter.exists(`${this.getRepo().dir}/.git/HEAD`))?"valid":"missing-repo"}async branchInfo(){var r,n;try{let i=(await te.default.currentBranch(this.getRepo()))||"",s=await te.default.listBranches(this.getRepo()),a=(r=await this.getConfig(`branch.${i}.remote`))!=null?r:"origin",o=(n=await this.getConfig(`branch.${i}.merge`))==null?void 0:n.split("refs/heads")[1],l=o?a+o:void 0;return{current:i,tracking:l,branches:s,remote:a}}catch(i){throw this.plugin.displayError(i),i}}async getCurrentRemote(){var i;let r=(await te.default.currentBranch(this.getRepo()))||"";return(i=await this.getConfig(`branch.${r}.remote`))!=null?i:"origin"}async checkout(r,n){try{return this.wrapFS(te.default.checkout({...this.getRepo(),ref:r,force:!!n,remote:n}))}catch(i){throw this.plugin.displayError(i),i}}async createBranch(r){try{await this.wrapFS(te.default.branch({...this.getRepo(),ref:r,checkout:!0}))}catch(n){throw this.plugin.displayError(n),n}}async deleteBranch(r){try{await this.wrapFS(te.default.deleteBranch({...this.getRepo(),ref:r}))}catch(n){throw this.plugin.displayError(n),n}}branchIsMerged(r){return Promise.resolve(!0)}async init(){try{await this.wrapFS(te.default.init(this.getRepo()))}catch(r){throw this.plugin.displayError(r),r}}async clone(r,n,i){let s=this.showNotice("初始化克隆");try{await this.wrapFS(te.default.clone({...this.getRepo(),dir:n,url:r,depth:i,onProgress:a=>{s!==void 0&&(s.noticeEl.innerText=this.getProgressText("Cloning",a))}})),s==null||s.hide()}catch(a){throw s==null||s.hide(),this.plugin.displayError(a),a}}async setConfig(r,n){try{return this.wrapFS(te.default.setConfig({...this.getRepo(),path:r,value:n}))}catch(i){throw this.plugin.displayError(i),i}}async getConfig(r){try{return this.wrapFS(te.default.getConfig({...this.getRepo(),path:r}))}catch(n){throw this.plugin.displayError(n),n}}async fetch(r){let n=this.showNotice("初始化获取");try{let i={...this.getRepo(),onProgress:s=>{n!==void 0&&(n.noticeEl.innerText=this.getProgressText("Fetching",s))},remote:r!=null?r:await this.getCurrentRemote()};await this.wrapFS(te.default.fetch(i)),n==null||n.hide()}catch(i){throw this.plugin.displayError(i),n==null||n.hide(),i}}async setRemote(r,n){try{await this.wrapFS(te.default.addRemote({...this.getRepo(),remote:r,url:n,force:!0}))}catch(i){throw this.plugin.displayError(i),i}}async getRemoteBranches(r){let n=[];return n.push(...(await this.wrapFS(te.default.listBranches({...this.getRepo(),remote:r})))),n.remove("HEAD"),n=n.map(i=>`${r}/${i}`),n}async getRemotes(){return(await this.wrapFS(te.default.listRemotes({...this.getRepo()}))).map(r=>r.remote)}async removeRemote(r){await this.wrapFS(te.default.deleteRemote({...this.getRepo(),remote:r}))}async getRemoteUrl(r){var n;return(n=(await this.wrapFS(te.default.listRemotes({...this.getRepo()}))).filter(i=>i.remote==r)[0])==null?void 0:n.url}async log(r,n=!0,i,s){let a=await this.wrapFS(te.default.log({...this.getRepo(),depth:i,ref:s}));return Promise.all(a.map(async o=>{let l=o.commit.message.split(` `);return{message:l[0],author:{name:o.commit.author.name,email:o.commit.author.email},body:l.slice(1).join(` `),date:new Date(o.commit.committer.timestamp).toDateString(),diff:{changed:0,files:(await this.getFileChangesCount(o.commit.parent.first(),o.oid)).map(c=>({path:c.path,status:c.type,vaultPath:this.getRelativeVaultPath(c.path),hash:o.oid}))},hash:o.oid,refs:[]}}))}updateBasePath(r){return this.getRepo().dir=r,Promise.resolve()}async updateUpstreamBranch(r){let[n,i]=Qi(r),s=await this.branchInfo();await this.wrapFS(te.default.push({...this.getRepo(),remote:n,remoteRef:i})),await this.setConfig(`branch.${s.current}.merge`,`refs/heads/${i}`)}updateGitPath(r){return Promise.resolve()}async getFileChangesCount(r,n){return this.walkDifference({walkers:[te.default.TREE({ref:r}),te.default.TREE({ref:n})]})}async walkDifference({walkers:r,dir:n}){return await this.wrapFS(te.default.walk({...this.getRepo(),trees:r,map:async function(s,[a,o]){if(!Yw(s,n))return null;if((await(a==null?void 0:a.type()))==="tree"||(await(o==null?void 0:o.type()))==="tree")return;let l=await(a==null?void 0:a.oid()),c=await(o==null?void 0:o.oid()),u="equal";if(l!==c&&(u="M"),l===void 0&&(u="A"),c===void 0&&(u="D"),l===void 0&&c===void 0&&(console.log("奇怪的事情发生了:"),console.log(a),console.log(o)),u!=="equal")return{path:s,type:u}}}))}async getStagedFiles(r="."){return(await this.walkDifference({walkers:[te.default.TREE({ref:"HEAD"}),te.default.STAGE()],dir:r})).map(i=>({vaultPath:this.getRelativeVaultPath(i.path),path:i.path}))}async getUnstagedFiles(r="."){let n,i=window.setTimeout(()=>{n=new Ra.Notice("这需要较长的时间:获取状态",this.noticeLength)},2e4);try{let s=this.getRepo(),a=await this.wrapFS(te.default.walk({...s,trees:[te.default.WORKDIR(),te.default.STAGE()],map:async function(o,[l,c]){if(!c&&l&&(await te.default.isIgnored({...s,filepath:o}))||!Yw(o,r))return null;let[u,f]=await Promise.all([l&&l.type(),c&&c.type()]),d=[u,f].includes("blob");if((u==="tree"||u==="special")&&!d)return;if(f==="commit")return null;if((f==="tree"||f==="special")&&!d)return;let h=f==="blob"?await c.oid():void 0,m;return u==="blob"&&f!=="blob"?m="42":u==="blob"&&(m=await l.oid()),m?h?m!==h?{path:o,type:"M"}:null:{path:o,type:"A"}:{path:o,type:"D"}}}));return window.clearTimeout(i),n==null||n.hide(),a}catch(s){throw window.clearTimeout(i),n==null||n.hide(),this.plugin.displayError(s),s}}async getDiffString(r,n=!1,i){let s=this.getRelativeVaultPath(r),a=async(c,[u])=>{if(r==c){let f=await u.oid();return(await te.default.readBlob({...this.getRepo(),oid:f})).blob}};if(i){let c=await(0,te.readBlob)({...this.getRepo(),filepath:r,oid:i}).then(h=>new TextDecoder().decode(h.blob)).catch(h=>{if(!(h instanceof te.default.Errors.NotFoundError))throw h}),u=await te.default.readCommit({...this.getRepo(),oid:i}),f=await(0,te.readBlob)({...this.getRepo(),filepath:r,oid:u.commit.parent.first()}).then(h=>new TextDecoder().decode(h.blob)).catch(h=>{if(!(h instanceof te.default.Errors.NotFoundError))throw h});return mu(s,f!=null?f:"",c!=null?c:"")}let o=(await te.default.walk({...this.getRepo(),trees:[te.default.STAGE()],map:a})).first(),l=new TextDecoder().decode(o);if(n){let c=await this.resolveRef("HEAD").then(f=>(0,te.readBlob)({...this.getRepo(),filepath:r,oid:f})).then(f=>new TextDecoder().decode(f.blob)).catch(f=>{if(!(f instanceof te.default.Errors.NotFoundError))throw f});return mu(s,c!=null?c:"",l)}else{let c;return(await this.app.vault.adapter.exists(s))?c=await this.app.vault.adapter.read(s):c="",mu(s,l,c)}}async getLastCommitTime(){let r=this.getRepo(),n=await this.resolveRef("HEAD"),s=(await te.default.readCommit({...r,oid:n})).commit.committer.timestamp;return new Date(s*1e3)}getFileStatusResult(r){let n=this.status_mapping[`${r[this.HEAD]}${r[this.WORKDIR]}${r[this.STAGE]}`];return{index:n[0]=="?"?"U":n[0],workingDir:n[1]=="?"?"U":n[1],path:r[this.FILE],vaultPath:this.getRelativeVaultPath(r[this.FILE])}}async checkAuthorInfo(){let r=await this.getConfig("user.name"),n=await this.getConfig("user.email");if(!r||!n)throw Error("Git author name and email are not set. Please set both fields in the settings.")}showNotice(r,n=!0){if(!this.plugin.settings.disablePopups)return new Ra.Notice(r,n?this.noticeLength:void 0)}};async function*xG(t){yield new Uint8Array(t)}async function SG(t){let e=new ReadableStream({async start(n){for await(let i of t)n.enqueue(i);n.close()}});return await new Response(e).arrayBuffer()}p();var nF=Ct(Ph()),Jr=Ct(require("fs/promises")),Ji=require("obsidian"),Ue=Ct(require("path")),Uu=require("path");p();var Bh=Ct(hR(),1);p();var Jw=new WeakMap;function Sl(...t){let e=new String(t);return Jw.set(e,t),e}function wn(t){return t instanceof String&&Jw.has(t)}function El(t){var e;return(e=Jw.get(t))!=null?e:[]}var Lh=Ct(Ph(),1),j$=require("child_process");var CI=Ct(t0(),1),NI=require("node:path");p();function*pR(t,e){let r=e==="global";for(let n of t)n.isGlobal===r&&(yield n)}var GG=new Set(["--add","--edit","--remove-section","--rename-section","--replace-all","--unset","--unset-all","-e"]),jG=new Set(["--get","--get-all","--get-color","--get-colorbool","--get-regexp","--get-urlmatch","--list","-l"]),qG=new Set(["edit","remove-section","rename-section","set","unset"]),WG=new Set(["get","get-color","get-colorbool","list"]);function zG(t,e){var n;for(let{name:i}of pR(t,"task")){if(GG.has(i))return kl(!0,e);if(jG.has(i))return kl(!1,e)}let r=(n=e.at(0))==null?void 0:n.toLowerCase();return r===void 0?null:qG.has(r)?kl(!0,e.slice(1)):WG.has(r)?kl(!1,e.slice(1)):e.length===1?kl(!1,e):kl(!0,e)}function kl(t=!1,e=[]){var n;let r=(n=e.at(0))==null?void 0:n.toLowerCase();return r===void 0?null:{isWrite:t,isRead:!t,key:r,value:e.at(1)}}function VG(t,e){return e.isWrite&&e.value!==void 0?{key:e.key,value:e.value,scope:t}:{key:e.key,scope:t}}function YG(t){let e=(t==null?void 0:t.indexOf("="))||-1;return!t||e<0?null:{key:t.slice(0,e).trim().toLowerCase(),value:t.slice(e+1)}}function XG(t){for(let{name:e}of pR(t,"task"))switch(e){case"--global":return"global";case"--system":return"system";case"--worktree":return"worktree";case"--local":return"local";case"--file":case"-f":return"file"}return"local"}function ZG({name:t}){if(t==="-c"||t==="--config")return"inline";if(t==="--config-env")return"env"}function*KG(t){for(let e of t){let r=ZG(e),n=r&&YG(e.value);n&&(yield{...n,scope:r})}}function QG(t,e,r){let n={read:[],write:[...KG(e)]};return t==="config"&&JG(n,XG(e),zG(e,r)),n}function JG(t,e,r){if(r===null)return;let n=VG(e,r);r.isWrite?t.write.push(n):t.read.push(n)}var mR={short:new Map([["c",!0]])},ej={short:new Map([["C",!0],["P",!1],["h",!1],["p",!1],["v",!1],...mR.short.entries()]),long:new Set(["attr-source","config-env","exec-path","git-dir","list-cmds","namespace","super-prefix","work-tree"])},tj={clone:{short:new Map([["b",!0],["j",!0],["l",!1],["n",!1],["o",!0],["q",!1],["s",!1],["u",!0]]),long:new Set(["branch","config","jobs","origin","upload-pack","u","template"])},commit:{short:new Map([["C",!0],["F",!0],["c",!0],["m",!0],["t",!0]]),long:new Set(["file","message","reedit-message","reuse-message","template"])},config:{short:new Map([["e",!1],["f",!0],["l",!1]]),long:new Set(["blob","comment","default","file","type","value"])},fetch:{short:new Map,long:new Set(["upload-pack"])},init:{short:new Map,long:new Set(["template"])},pull:{short:new Map,long:new Set(["upload-pack"])},push:{short:new Map,long:new Set(["exec","receive-pack"])}},rj={short:new Map,long:new Set};function nj(t){var r;let e=(r=tj[t!=null?t:""])!=null?r:rj;return{short:new Map([...mR.short.entries(),...e.short.entries()]),long:e.long}}function gR(t,e=ej){if(t.startsWith("--")){let r=t.indexOf("=");if(r>2)return[{name:t.slice(0,r),value:t.slice(r+1),needsNext:!1}];let n=t.slice(2);return[{name:t,needsNext:e.long.has(n)}]}if(t.length===2){let r=t.charAt(1),n=e.short.get(r);return[{name:t,needsNext:n===!0}]}return ij(t,e.short)}function ij(t,e){let r=t.slice(1).split(""),n=[];for(let i=0;ie.has(l)))return n.push({name:`-${s}`,value:o,needsNext:!1}),n}n.push({name:`-${s}`,needsNext:a})}return n}function sj(t,e=[]){let r=0;for(;rfunction(){return t&&(e=(0,t[S0(t)[0]])(t=0)),e},yj=(t,e)=>function(){return e||(0,t[S0(t)[0]])((e={exports:{}}).exports,e),e.exports},yt=(t,e)=>{for(var r in e)x0(t,r,{get:e[r],enumerable:!0})},bj=(t,e,r,n)=>{if(e&&typeof e=="object"||typeof e=="function")for(let i of S0(e))!wj.call(t,i)&&i!==r&&x0(t,i,{get:()=>e[i],enumerable:!(n=vj(e,i))||n.enumerable});return t},pt=t=>bj(x0({},"__esModule",{value:!0}),t),Pr,zs=V({"src/lib/errors/git-error.ts"(){"use strict";Pr=class extends Error{constructor(t,e){super(e),this.task=t,Object.setPrototypeOf(this,new.target.prototype)}}}}),Du,Pl=V({"src/lib/errors/git-response-error.ts"(){"use strict";zs(),Du=class extends Pr{constructor(t,e){super(void 0,e||String(t)),this.git=t}}}}),QR,JR=V({"src/lib/errors/task-configuration-error.ts"(){"use strict";zs(),QR=class extends Pr{constructor(t){super(void 0,t)}}}});function e$(t){return typeof t!="function"?Da:t}function t$(t){return typeof t=="function"&&t!==Da}function r$(t,e){let r=t.indexOf(e);return r<=0?[t,""]:[t.substr(0,r),t.substr(r+1)]}function n$(t,e=0){return i$(t)&&t.length>e?t[e]:void 0}function Ma(t,e=0){if(i$(t)&&t.length>e)return t[t.length-1-e]}function i$(t){return jh(t)}function Lu(t="",e=!0,r=` `){return t.split(r).reduce((n,i)=>{let s=e?i.trim():i;return s&&n.push(s),n},[])}function E0(t,e){return Lu(t,!0).map(r=>e(r))}function k0(t){return(0,Bh.exists)(t,Bh.FOLDER)}function _n(t,e){return Array.isArray(t)?t.includes(e)||t.push(e):t.add(e),e}function s$(t,e){return Array.isArray(t)&&!t.includes(e)&&t.push(e),t}function Hh(t,e){if(Array.isArray(t)){let r=t.indexOf(e);r>=0&&t.splice(r,1)}else t.delete(e);return e}function wi(t){return Array.isArray(t)?t:[t]}function a$(t){return t.replace(/[\s-]+(.)/g,(e,r)=>r.toUpperCase())}function Rl(t){return wi(t).map(e=>e instanceof String?e:String(e))}function We(t,e=0){if(t==null)return e;let r=parseInt(t,10);return Number.isNaN(r)?e:r}function Ou(t,e){let r=[];for(let n=0,i=t.length;n{t[n]!==void 0&&(r[n]=t[n])}),r}function l0(t=0){return new Promise(e=>setTimeout(e,t))}function c0(t){if(t!==!1)return t}var Cl,Da,Nu,Uh=V({"src/lib/utils/util.ts"(){"use strict";A0(),Cl="\0",Da=()=>{},Nu=Object.prototype.toString.call.bind(Object.prototype.toString)}});function Qt(t,e,r){return e(t)?t:arguments.length>2?r:void 0}function u0(t,e){let r=wn(t)?"string":typeof t;return /number|string|boolean/.test(r)&&(!e||!e.includes(r))}function Gh(t){return!!t&&Nu(t)==="[object Object]"}function l$(t){return typeof t=="function"}var Bu,c$,ct,Mh,jh,A0=V({"src/lib/utils/argument-filters.ts"(){"use strict";Uh(),Bu=t=>Array.isArray(t),c$=t=>typeof t=="number",ct=t=>typeof t=="string"||wn(t),Mh=t=>ct(t)||Array.isArray(t)&&t.every(ct),jh=t=>t==null||"number|boolean|function".includes(typeof t)?!1:typeof t.length=="number"}}),f0,_j=V({"src/lib/utils/exit-codes.ts"(){"use strict";f0=(t=>(t[t.SUCCESS=0]="SUCCESS",t[t.ERROR=1]="ERROR",t[t.NOT_FOUND=-2]="NOT_FOUND",t[t.UNCLEAN=128]="UNCLEAN",t))(f0||{})}}),Dh,xj=V({"src/lib/utils/git-output-streams.ts"(){"use strict";Dh=class u${constructor(e,r){this.stdOut=e,this.stdErr=r}asStrings(){return new u$(this.stdOut.toString("utf8"),this.stdErr.toString("utf8"))}}}});function Sj(){throw new Error("LineParser:useMatches not implemented")}var pe,Ws,Ej=V({"src/lib/utils/line-parser.ts"(){"use strict";pe=class{constructor(t,e){this.matches=[],this.useMatches=Sj,this.parse=(r,n)=>(this.resetMatches(),this._regExp.every((i,s)=>this.addMatch(i,s,r(s)))?this.useMatches(n,this.prepareMatches())!==!1:!1),this._regExp=Array.isArray(t)?t:[t],e&&(this.useMatches=e)}resetMatches(){this.matches.length=0}prepareMatches(){return this.matches}addMatch(t,e,r){let n=r&&t.exec(r);return n&&this.pushMatch(e,n),!!n}pushMatch(t,e){this.matches.push(...e.slice(1))}},Ws=class extends pe{addMatch(t,e,r){return /^remote:\s/.test(String(r))&&super.addMatch(t,e,r)}pushMatch(t,e){(t>0||e.length>1)&&super.pushMatch(t,e)}}}});function f$(...t){let e=process.cwd(),r=Object.assign({baseDir:e,...d$},...t.filter(n=>typeof n=="object"&&n));return r.baseDir=r.baseDir||e,r.trimmed=r.trimmed===!0,r}var d$,kj=V({"src/lib/utils/simple-git-options.ts"(){"use strict";d$={binary:"git",maxConcurrentProcesses:5,config:[],trimmed:!1}}});function C0(t,e=[]){return Gh(t)?Object.keys(t).reduce((r,n)=>{let i=t[n];if(wn(i))r.push(i);else if(u0(i,["boolean"]))r.push(n+"="+i);else if(Array.isArray(i))for(let s of i)u0(s,["string","number"])||r.push(n+"="+s);else r.push(n);return r},e):e}function hr(t,e=0,r=!1){let n=[];for(let i=0,s=e<0?t.length:e;i{for(let s=Lu(i,n),a=0,o=s.length;a{if(!(a+c>=o))return s[a+c]};e.some(({parse:c})=>c(l,t))}}),t}var Tj=V({"src/lib/utils/task-parser.ts"(){"use strict";Uh()}}),h$={};yt(h$,{ExitCodes:()=>f0,GitOutputStreams:()=>Dh,LineParser:()=>pe,NOOP:()=>Da,NULL:()=>Cl,RemoteLineParser:()=>Ws,append:()=>_n,appendTaskOptions:()=>C0,asArray:()=>wi,asCamelCase:()=>a$,asFunction:()=>e$,asNumber:()=>We,asStringArray:()=>Rl,bufferToString:()=>Mu,callTaskParser:()=>d0,createInstanceConfig:()=>f$,delay:()=>l0,filterArray:()=>Bu,filterFunction:()=>l$,filterHasLength:()=>jh,filterNumber:()=>c$,filterPlainObject:()=>Gh,filterPrimitives:()=>u0,filterString:()=>ct,filterStringOrStringArray:()=>Mh,filterType:()=>Qt,first:()=>n$,folderExists:()=>k0,forEachLineWithContent:()=>E0,getTrailingOptions:()=>hr,including:()=>s$,isUserFunction:()=>t$,last:()=>Ma,objectToString:()=>Nu,orVoid:()=>c0,parseStringResponse:()=>Rr,pick:()=>o$,prefixedArray:()=>Ou,remove:()=>Hh,splitOn:()=>r$,toLinesWithContent:()=>Lu,trailingFunctionArgument:()=>tt,trailingOptionsArgument:()=>T0});var ue=V({"src/lib/utils/index.ts"(){"use strict";A0(),_j(),xj(),Ej(),kj(),Cj(),Tj(),Uh()}}),p$={};yt(p$,{CheckRepoActions:()=>h0,checkIsBareRepoTask:()=>g$,checkIsRepoRootTask:()=>m$,checkIsRepoTask:()=>Pj});function Pj(t){switch(t){case"bare":return g$();case"root":return m$()}return{commands:["rev-parse","--is-inside-work-tree"],format:"utf-8",onError:qh,parser:P0}}function m$(){return{commands:["rev-parse","--git-dir"],format:"utf-8",onError:qh,parser(e){return /^\.(git)?$/.test(e.trim())}}}function g$(){return{commands:["rev-parse","--is-bare-repository"],format:"utf-8",onError:qh,parser:P0}}function Rj(t){return /(Not a git repository|Kein Git-Repository)/i.test(String(t))}var h0,qh,P0,v$=V({"src/lib/tasks/check-is-repo.ts"(){"use strict";ue(),h0=(t=>(t.BARE="bare",t.IN_TREE="tree",t.IS_REPO_ROOT="root",t))(h0||{}),qh=({exitCode:t},e,r,n)=>{if(t===128&&Rj(e))return r(Buffer.from("false"));n(e)},P0=t=>t.trim()==="true"}});function $j(t,e){let r=new w$(t),n=t?b$:y$;return Lu(e).forEach(i=>{let s=i.replace(n,"");r.paths.push(s),(_$.test(s)?r.folders:r.files).push(s)}),r}var w$,y$,b$,_$,Ij=V({"src/lib/responses/CleanSummary.ts"(){"use strict";ue(),w$=class{constructor(t){this.dryRun=t,this.paths=[],this.files=[],this.folders=[]}},y$=/^[a-z]+\s*/i,b$=/^[a-z]+\s+[a-z]+\s*/i,_$=/\/$/}}),p0={};yt(p0,{EMPTY_COMMANDS:()=>Wh,adhocExecTask:()=>x$,configurationErrorTask:()=>Tr,isBufferTask:()=>E$,isEmptyTask:()=>k$,straightThroughBufferTask:()=>S$,straightThroughStringTask:()=>pr});function x$(t){return{commands:Wh,format:"empty",parser:t}}function Tr(t){return{commands:Wh,format:"empty",parser(){throw typeof t=="string"?new QR(t):t}}}function pr(t,e=!1){return{commands:t,format:"utf-8",parser(r){return e?String(r).trim():r}}}function S$(t){return{commands:t,format:"buffer",parser(e){return e}}}function E$(t){return t.format==="buffer"}function k$(t){return t.format==="empty"||!t.commands.length}var Wh,mt=V({"src/lib/tasks/task.ts"(){"use strict";JR(),Wh=[]}}),A$={};yt(A$,{CONFIG_ERROR_INTERACTIVE_MODE:()=>R0,CONFIG_ERROR_MODE_REQUIRED:()=>$0,CONFIG_ERROR_UNKNOWN_OPTION:()=>I0,CleanOptions:()=>Oa,cleanTask:()=>C$,cleanWithOptionsTask:()=>Fj,isCleanOptionsArray:()=>Oj});function Fj(t,e){let{cleanMode:r,options:n,valid:i}=Mj(t);return r?i.options?(n.push(...e),n.some(Nj)?Tr(R0):C$(r,n)):Tr(I0+JSON.stringify(t)):Tr($0)}function C$(t,e){return{commands:["clean",`-${t}`,...e],format:"utf-8",parser(n){return $j(t==="n",n)}}}function Oj(t){return Array.isArray(t)&&t.every(e=>F0.has(e))}function Mj(t){let e,r=[],n={cleanMode:!1,options:!0};return t.replace(/[^a-z]i/g,"").split("").forEach(i=>{Dj(i)?(e=i,n.cleanMode=!0):n.options=n.options&&Lj(r[r.length]=`-${i}`)}),{cleanMode:e,options:r,valid:n}}function Dj(t){return t==="f"||t==="n"}function Lj(t){return /^-[a-z]$/i.test(t)&&F0.has(t.charAt(1))}function Nj(t){return /^-[^\-]/.test(t)?t.indexOf("i")>0:t==="--interactive"}var R0,$0,I0,Oa,F0,T$=V({"src/lib/tasks/clean.ts"(){"use strict";Ij(),ue(),mt(),R0="Git clean interactive mode is not supported",$0="Git clean mode parameter (\"n\" or \"f\") is required",I0="Git clean unknown option found in: ",Oa=(t=>(t.DRY_RUN="n",t.FORCE="f",t.IGNORED_INCLUDED="x",t.IGNORED_ONLY="X",t.EXCLUDING="e",t.QUIET="q",t.RECURSIVE="d",t))(Oa||{}),F0=new Set(["i",...Rl(Object.values(Oa))])}});function Bj(t){let e=new R$;for(let r of P$(t))e.addValue(r.file,String(r.key),r.value);return e}function Hj(t,e){let r=null,n=[],i=new Map;for(let s of P$(t,e))s.key===e&&(n.push(r=s.value),i.has(s.file)||i.set(s.file,[]),i.get(s.file).push(r));return{key:e,paths:Array.from(i.keys()),scopes:i,value:r,values:n}}function Uj(t){return t.replace(/^(file):/,"")}function*P$(t,e=null){let r=t.split("\0");for(let n=0,i=r.length-1;nObject.assign(t,this.values[e]),{})),this._all}addFile(t){if(!(t in this.values)){let e=Ma(this.files);this.values[t]=e?Object.create(this.values[e]):{},this.files.push(t)}return this.values[t]}addValue(t,e,r){let n=this.addFile(t);Object.hasOwn(n,e)?Array.isArray(n[e])?n[e].push(r):n[e]=[n[e],r]:n[e]=r,this._all=void 0}}}});function r0(t,e){return typeof t=="string"&&Object.hasOwn(m0,t)?t:e}function jj(t,e,r,n){let i=["config",`--${n}`];return r&&i.push("--add"),i.push(t,e),{commands:i,format:"utf-8",parser(s){return s}}}function qj(t,e){let r=["config","--null","--show-origin","--get-all",t];return e&&r.splice(1,0,`--${e}`),{commands:r,format:"utf-8",parser(n){return Hj(n,t)}}}function Wj(t){let e=["config","--list","--show-origin","--null"];return t&&e.push(`--${t}`),{commands:e,format:"utf-8",parser(r){return Bj(r)}}}function zj(){return{addConfig(t,e,...r){return this._runTask(jj(t,e,r[0]===!0,r0(r[1],"local")),tt(arguments))},getConfig(t,e){return this._runTask(qj(t,r0(e,void 0)),tt(arguments))},listConfig(...t){return this._runTask(Wj(r0(t[0],void 0)),tt(arguments))}}}var m0,$$=V({"src/lib/tasks/config.ts"(){"use strict";Gj(),ue(),m0=(t=>(t.system="system",t.global="global",t.local="local",t.worktree="worktree",t))(m0||{})}});function Vj(t){return I$.has(t)}var n0,I$,F$=V({"src/lib/tasks/diff-name-status.ts"(){"use strict";n0=(t=>(t.ADDED="A",t.COPIED="C",t.DELETED="D",t.MODIFIED="M",t.RENAMED="R",t.CHANGED="T",t.UNMERGED="U",t.UNKNOWN="X",t.BROKEN="B",t))(n0||{}),I$=new Set(Object.values(n0))}});function Yj(...t){return new M$().param(...t)}function Xj(t){let e=new Set,r={};return E0(t,n=>{let[i,s,a]=n.split(Cl);e.add(i),(r[i]=r[i]||[]).push({line:We(s),path:i,preview:a})}),{paths:e,results:r}}function Zj(){return{grep(t){let e=tt(arguments),r=hr(arguments);for(let i of O$)if(r.includes(i))return this._runTask(Tr(`git.grep: use of "${i}" is not supported.`),e);typeof t=="string"&&(t=Yj().param(t));let n=["grep","--null","-n","--full-name",...r,...t];return this._runTask({commands:n,format:"utf-8",parser(i){return Xj(i)}},e)}}}var O$,Fu,_R,M$,D$=V({"src/lib/tasks/grep.ts"(){"use strict";ue(),mt(),O$=["-h"],Fu=Symbol("grepQuery"),M$=class{constructor(){this[_R]=[]}*[(_R=Fu,Symbol.iterator)](){for(let t of this[Fu])yield t}and(...t){return t.length&&this[Fu].push("--and","(",...Ou(t,"-e"),")"),this}param(...t){return this[Fu].push(...Ou(t,"-e")),this}}}}),L$={};yt(L$,{ResetMode:()=>Ih,getResetMode:()=>Qj,resetTask:()=>Kj});function Kj(t,e){let r=["reset"];return N$(t)&&r.push(`--${t}`),r.push(...e),pr(r)}function Qj(t){if(N$(t))return t;switch(typeof t){case"string":case"undefined":return"soft"}}function N$(t){return typeof t=="string"&&B$.includes(t)}var Ih,B$,H$=V({"src/lib/tasks/reset.ts"(){"use strict";ue(),mt(),Ih=(t=>(t.MIXED="mixed",t.SOFT="soft",t.HARD="hard",t.MERGE="merge",t.KEEP="keep",t))(Ih||{}),B$=Rl(Object.values(Ih))}});function Jj(){return(0,Lh.default)("simple-git")}function xR(t,e,r){return!e||!String(e).replace(/\s*/,"")?r?(n,...i)=>{t(n,...i),r(n,...i)}:t:(n,...i)=>{t(`%s ${n}`,e,...i),r&&r(n,...i)}}function eq(t,e,{namespace:r}){if(typeof t=="string")return t;let n=e&&e.namespace||"";return n.startsWith(r)?n.substr(r.length+1):n||r}function O0(t,e,r,n=Jj()){let i=t&&`[${t}]`||"",s=[],a=typeof e=="string"?n.extend(e):e,o=eq(Qt(e,ct),a,n);return c(r);function l(u,f){return _n(s,O0(t,o.replace(/^[^:]+/,u),f,n))}function c(u){let f=u&&`[${u}]`||"",d=a&&xR(a,f)||Da,h=xR(n,`${i} ${f}`,d);return Object.assign(a?d:h,{label:t,sibling:l,info:h,step:c})}}var U$=V({"src/lib/git-logger.ts"(){"use strict";ue(),Lh.default.formatters.L=t=>String(jh(t)?t.length:"-"),Lh.default.formatters.B=t=>Buffer.isBuffer(t)?t.toString("utf8"):Nu(t)}}),G$,tq=V({"src/lib/runners/tasks-pending-queue.ts"(){"use strict";var t;zs(),U$(),G$=(t=class{constructor(r="GitExecutor"){this.logLabel=r,this._queue=new Map}withProgress(r){return this._queue.get(r)}createProgress(r){let n=t.getName(r.commands[0]),i=O0(this.logLabel,n);return{task:r,logger:i,name:n}}push(r){let n=this.createProgress(r);return n.logger("Adding task to the queue, commands = %o",r.commands),this._queue.set(r,n),n}fatal(r){for(let[n,{logger:i}]of Array.from(this._queue.entries()))n===r.task?(i.info("失败 %o",r),i("Fatal exception, any as-yet un-started tasks run through this executor will not be attempted")):i.info("先前任务发生致命异常,队列已清空:%o",r.message),this.complete(n);if(this._queue.size!==0)throw new Error(`Queue size should be zero after fatal: ${this._queue.size}`)}complete(r){this.withProgress(r)&&this._queue.delete(r)}attempt(r){let n=this.withProgress(r);if(!n)throw new Pr(void 0,"TasksPendingQueue: attempt called for an unknown task");return n.logger("Starting task"),n}static getName(r="empty"){return`task:${r}:${++t.counter}`}},t.counter=0,t)}});function Fa(t,e){return{method:n$(t.commands)||"",commands:e}}function rq(t,e){return r=>{e("[ERROR] child process exception %o",r),t.push(Buffer.from(String(r.stack),"ascii"))}}function SR(t,e,r,n){return i=>{r("%s received %L bytes",e,i),n("%B",i),t.push(i)}}var g0,nq=V({"src/lib/runners/git-executor-chain.ts"(){"use strict";zs(),mt(),ue(),tq(),g0=class{constructor(t,e,r){this._executor=t,this._scheduler=e,this._plugins=r,this._chain=Promise.resolve(),this._queue=new G$}get cwd(){return this._cwd||this._executor.cwd}set cwd(t){this._cwd=t}get env(){return this._executor.env}get outputHandler(){return this._executor.outputHandler}chain(){return this}push(t){return this._queue.push(t),this._chain=this._chain.then(()=>this.attemptTask(t))}async attemptTask(t){let e=await this._scheduler.next(),r=()=>this._queue.complete(t);try{let{logger:n}=this._queue.attempt(t);return await(k$(t)?this.attemptEmptyTask(t,n):this.attemptRemoteTask(t,n))}catch(n){throw this.onFatalException(t,n)}finally{r(),e()}}onFatalException(t,e){let r=e instanceof Pr?Object.assign(e,{task:t}):new Pr(t,e&&String(e));return this._chain=Promise.resolve(),this._queue.fatal(r),r}async attemptRemoteTask(t,e){let r=this._plugins.exec("spawn.binary","",Fa(t,t.commands)),n=this._plugins.exec("spawn.args",[...t.commands],{...Fa(t,t.commands),env:{...this.env}}),i=await this.gitResponse(t,r,n,this.outputHandler,e.step("SPAWN")),s=await this.handleTaskData(t,n,i,e.step("HANDLE"));return e("passing response to task's parser as a %s",t.format),E$(t)?d0(t.parser,s):d0(t.parser,s.asStrings())}async attemptEmptyTask(t,e){return e("empty task bypassing child process to call to task's parser"),t.parser(this)}handleTaskData(t,e,r,n){let{exitCode:i,rejection:s,stdOut:a,stdErr:o}=r;return new Promise((l,c)=>{n("Preparing to handle process response exitCode=%d stdOut=",i);let{error:u}=this._plugins.exec("task.error",{error:s},{...Fa(t,e),...r});if(u&&t.onError)return n.info("exitCode=%s 由自定义错误处理器处理"),t.onError(r,u,f=>{n.info("自定义错误处理器将其视为成功"),n("custom error returned a %s",Nu(f)),l(new Dh(Array.isArray(f)?Buffer.concat(f):f,Buffer.concat(o)))},c);if(u)return n.info("按错误处理:exitCode=%s stdErr=%s rejection=%o",i,o.length,s),c(u);n.info("获取任务输出完成"),l(new Dh(Buffer.concat(a),Buffer.concat(o)))})}async gitResponse(t,e,r,n,i){let s=i.sibling("output"),a=this._plugins.exec("spawn.options",{cwd:this.cwd,env:this.env,windowsHide:!0},Fa(t,t.commands));return new Promise(o=>{let l=[],c=[];i.info("%s %o",e,r),i("%O",a);let u=this._beforeSpawn(t,r);if(u)return o({stdOut:l,stdErr:c,exitCode:9901,rejection:u});this._plugins.exec("spawn.before",void 0,{...Fa(t,r),kill(d){u=d||u}});let f=(0,j$.spawn)(e,r,a);f.stdout.on("data",SR(l,"stdOut",i,s.step("stdOut"))),f.stderr.on("data",SR(c,"stdErr",i,s.step("stdErr"))),f.on("error",rq(c,i)),n&&(i("Passing child process stdOut/stdErr to custom outputHandler"),n(e,f.stdout,f.stderr,[...r])),this._plugins.exec("spawn.after",void 0,{...Fa(t,r),spawned:f,close(d,h){o({stdOut:l,stdErr:c,exitCode:d,rejection:u||h})},kill(d){f.killed||(u=d,f.kill("SIGINT"))}})})}_beforeSpawn(t,e){let r;return this._plugins.exec("spawn.before",void 0,{...Fa(t,e),kill(n){r=n||r}}),r}}}}),q$={};yt(q$,{GitExecutor:()=>W$});var W$,iq=V({"src/lib/runners/git-executor.ts"(){"use strict";nq(),W$=class{constructor(t,e,r){this.cwd=t,this._scheduler=e,this._plugins=r,this._chain=new g0(this,this._scheduler,this._plugins)}chain(){return new g0(this,this._scheduler,this._plugins)}push(t){return this._chain.push(t)}}}});function sq(t,e,r=Da){let n=s=>{r(null,s)},i=s=>{(s==null?void 0:s.task)===t&&r(s instanceof Du?aq(s):s,void 0)};e.then(n,i)}function aq(t){let e=n=>{console.warn(`simple-git deprecation notice: accessing GitResponseError.${n} should be GitResponseError.git.${n}, this will no longer be available in version 3`),e=Da};return Object.create(t,Object.getOwnPropertyNames(t.git).reduce(r,{}));function r(n,i){return i in t||(n[i]={enumerable:!1,configurable:!1,get(){return e(i),t.git[i]}}),n}}var oq=V({"src/lib/task-callback.ts"(){"use strict";Pl(),ue()}});function ER(t,e){return x$(r=>{if(!k0(t))throw new Error(`Git.cwd: cannot change to non-directory "${t}"`);return(e||r).cwd=t})}var lq=V({"src/lib/tasks/change-working-directory.ts"(){"use strict";ue(),mt()}});function i0(t){let e=["checkout",...t];return e[1]==="-b"&&e.includes("-B")&&(e[1]=Hh(e,"-B")),pr(e)}function cq(){return{checkout(){return this._runTask(i0(hr(arguments,1)),tt(arguments))},checkoutBranch(t,e){return this._runTask(i0(["-b",t,e,...hr(arguments)]),tt(arguments))},checkoutLocalBranch(t){return this._runTask(i0(["-b",t,...hr(arguments)]),tt(arguments))}}}var uq=V({"src/lib/tasks/checkout.ts"(){"use strict";ue(),mt()}});function fq(){return{count:0,garbage:0,inPack:0,packs:0,prunePackable:0,size:0,sizeGarbage:0,sizePack:0}}function dq(){return{countObjects(){return this._runTask({commands:["count-objects","--verbose"],format:"utf-8",parser(t){return Rr(fq(),[z$],t)}})}}}var z$,hq=V({"src/lib/tasks/count-objects.ts"(){"use strict";ue(),z$=new pe(/([a-z-]+): (\d+)$/,(t,[e,r])=>{let n=a$(e);Object.hasOwn(t,n)&&(t[n]=We(r))})}});function pq(t){return Rr({author:null,branch:"",commit:"",root:!1,summary:{changes:0,insertions:0,deletions:0}},V$,t)}var V$,mq=V({"src/lib/parsers/parse-commit.ts"(){"use strict";ue(),V$=[new pe(/^\[([^\s]+)( \([^)]+\))? ([^\]]+)/,(t,[e,r,n])=>{t.branch=e,t.commit=n,t.root=!!r}),new pe(/\s*Author:\s(.+)/i,(t,[e])=>{let r=e.split("<"),n=r.pop();!n||!n.includes("@")||(t.author={email:n.substr(0,n.length-1),name:r.join("<").trim()})}),new pe(/(\d+)[^,]*(?:,\s*(\d+)[^,]*)(?:,\s*(\d+))/g,(t,[e,r,n])=>{t.summary.changes=parseInt(e,10)||0,t.summary.insertions=parseInt(r,10)||0,t.summary.deletions=parseInt(n,10)||0}),new pe(/^(\d+)[^,]*(?:,\s*(\d+)[^(]+\(([+-]))?/,(t,[e,r,n])=>{t.summary.changes=parseInt(e,10)||0;let i=parseInt(r,10)||0;n==="-"?t.summary.deletions=i:n==="+"&&(t.summary.insertions=i)})]}});function gq(t,e,r){return{commands:["-c","core.abbrev=40","commit",...Ou(t,"-m"),...e,...r],format:"utf-8",parser:pq}}function vq(){return{commit(e,...r){let n=tt(arguments),i=t(e)||gq(wi(e),wi(Qt(r[0],Mh,[])),[...Rl(Qt(r[1],Bu,[])),...hr(arguments,0,!0)]);return this._runTask(i,n)}};function t(e){return!Mh(e)&&Tr("git.commit: requires the commit message to be supplied as a string/string[]")}}var wq=V({"src/lib/tasks/commit.ts"(){"use strict";mq(),ue(),mt()}});function yq(){return{firstCommit(){return this._runTask(pr(["rev-list","--max-parents=0","HEAD"],!0),tt(arguments))}}}var bq=V({"src/lib/tasks/first-commit.ts"(){"use strict";ue(),mt()}});function _q(t,e){let r=["hash-object",t];return e&&r.push("-w"),pr(r,!0)}var xq=V({"src/lib/tasks/hash-object.ts"(){"use strict";mt()}});function Sq(t,e,r){let n=String(r).trim(),i;if(i=Y$.exec(n))return new Fh(t,e,!1,i[1]);if(i=X$.exec(n))return new Fh(t,e,!0,i[1]);let s="",a=n.split(" ");for(;a.length;)if(a.shift()==="in"){s=a.join(" ");break}return new Fh(t,e,/^re/i.test(n),s)}var Fh,Y$,X$,Eq=V({"src/lib/responses/InitSummary.ts"(){"use strict";Fh=class{constructor(t,e,r,n){this.bare=t,this.path=e,this.existing=r,this.gitDir=n}},Y$=/^Init.+ repository in (.+)$/,X$=/^Rein.+ in (.+)$/}});function kq(t){return t.includes(M0)}function Aq(t=!1,e,r){let n=["init",...r];return t&&!kq(n)&&n.splice(1,0,M0),{commands:n,format:"utf-8",parser(i){return Sq(n.includes("--bare"),e,i)}}}var M0,Cq=V({"src/lib/tasks/init.ts"(){"use strict";Eq(),M0="--bare"}});function D0(t){for(let e=0;eRr(new Z$,e,r,!1)}var s0,kR,AR,CR,Q$,J$=V({"src/lib/parsers/parse-diff-summary.ts"(){"use strict";Hu(),Pq(),F$(),ue(),s0=[new pe(/^(.+)\s+\|\s+(\d+)(\s+[+\-]+)?$/,(t,[e,r,n=""])=>{t.files.push({file:e.trim(),changes:We(r),insertions:n.replace(/[^+]/g,"").length,deletions:n.replace(/[^-]/g,"").length,binary:!1})}),new pe(/^(.+) \|\s+Bin ([0-9.]+) -> ([0-9.]+) ([a-z]+)/,(t,[e,r,n])=>{t.files.push({file:e.trim(),before:We(r),after:We(n),binary:!0})}),new pe(/(\d+) files? changed\s*((?:, \d+ [^,]+){0,2})/,(t,[e,r])=>{let n=/(\d+) i/.exec(r),i=/(\d+) d/.exec(r);t.changed=We(e),t.insertions=We(n==null?void 0:n[1]),t.deletions=We(i==null?void 0:i[1])})],kR=[new pe(/(\d+)\t(\d+)\t(.+)$/,(t,[e,r,n])=>{let i=We(e),s=We(r);t.changed++,t.insertions+=i,t.deletions+=s,t.files.push({file:n,changes:i+s,insertions:i,deletions:s,binary:!1})}),new pe(/-\t-\t(.+)$/,(t,[e])=>{t.changed++,t.files.push({file:e,after:0,before:0,binary:!0})})],AR=[new pe(/(.+)$/,(t,[e])=>{t.changed++,t.files.push({file:e,changes:0,insertions:0,deletions:0,binary:!1})})],CR=[new pe(/([ACDMRTUXB])([0-9]{0,3})\t(.[^\t]*)(\t(.[^\t]*))?$/,(t,[e,r,n,i,s])=>{t.changed++,t.files.push({file:s!=null?s:n,changes:0,insertions:0,deletions:0,binary:!1,status:c0(Vj(e)&&e),from:c0(!!s&&n!==s&&n),similarity:We(r)})})],Q$={"":s0,"--stat":s0,"--numstat":kR,"--name-status":CR,"--name-only":AR}}});function Rq(t,e){return e.reduce((r,n,i)=>(r[n]=t[i]||"",r),Object.create({diff:null}))}function eI(t=H0,e=tI,r=""){let n=K$(r);return function(i){let s=Lu(i.trim(),!1,N0).map(function(a){let o=a.split(B0),l=Rq(o[0].split(t),e);return o.length>1&&o[1].trim()&&(l.diff=n(o[1])),l});return{all:s,latest:s.length&&s[0]||null,total:s.length}}}var N0,B0,H0,tI,rI=V({"src/lib/parsers/parse-list-log-summary.ts"(){"use strict";ue(),J$(),Hu(),N0="òòòòòò ",B0=" òò",H0=" ò ",tI=["hash","date","message","refs","author_name","author_email"]}}),nI={};yt(nI,{diffSummaryTask:()=>$q,validateLogFormatConfig:()=>zh});function $q(t){let e=D0(t),r=["diff"];return e===""&&(e="--stat",r.push("--stat=4096")),r.push(...t),zh(r)||{commands:r,format:"utf-8",parser:K$(e)}}function zh(t){let e=t.filter(Tq);if(e.length>1)return Tr(`Summary flags are mutually exclusive - pick one of ${e.join(",")}`);if(e.length&&t.includes("-z"))return Tr(`Summary flag ${e} parsing is not compatible with null termination option '-z'`)}var U0=V({"src/lib/tasks/diff.ts"(){"use strict";Hu(),J$(),mt()}});function Iq(t,e){let r=[],n=[];return Object.keys(t).forEach(i=>{r.push(i),n.push(String(t[i]))}),[r,n.join(e)]}function Fq(t){return Object.keys(t).reduce((e,r)=>(r in v0||(e[r]=t[r]),e),{})}function iI(t={},e=[]){let r=Qt(t.splitter,ct,H0),n=Gh(t.format)?t.format:{hash:"%H",date:t.strictDate===!1?"%ai":"%aI",message:"%s",refs:"%D",body:t.multiLine?"%B":"%b",author_name:t.mailMap!==!1?"%aN":"%an",author_email:t.mailMap!==!1?"%aE":"%ae"},[i,s]=Iq(n,r),a=[],o=[`--pretty=format:${N0}${s}${B0}`,...e],l=t.n||t["max-count"]||t.maxCount;if(l&&o.push(`--max-count=${l}`),t.from||t.to){let c=t.symmetric!==!1?"...":"..";a.push(`${t.from||""}${c}${t.to||""}`)}return ct(t.file)&&o.push("--follow",Sl(t.file)),C0(Fq(t),o),{fields:i,splitter:r,commands:[...o,...a]}}function Oq(t,e,r){let n=eI(t,e,D0(r));return{commands:["log",...r],format:"utf-8",parser:n}}function Mq(){return{log(...r){let n=tt(arguments),i=iI(T0(arguments),Rl(Qt(arguments[0],Bu,[]))),s=e(...r)||zh(i.commands)||t(i);return this._runTask(s,n)}};function t(r){return Oq(r.splitter,r.fields,r.commands)}function e(r,n){return ct(r)&&ct(n)&&Tr("git.log(string, string) should be replaced with git.log({ from: string, to: string })")}}var v0,sI=V({"src/lib/tasks/log.ts"(){"use strict";Hu(),rI(),ue(),mt(),U0(),v0=(t=>(t[t["--pretty"]=0]="--pretty",t[t["max-count"]=1]="max-count",t[t.maxCount=2]="maxCount",t[t.n=3]="n",t[t.file=4]="file",t[t.format=5]="format",t[t.from=6]="from",t[t.to=7]="to",t[t.splitter=8]="splitter",t[t.symmetric=9]="symmetric",t[t.mailMap=10]="mailMap",t[t.multiLine=11]="multiLine",t[t.strictDate=12]="strictDate",t))(v0||{})}}),Oh,aI,Dq=V({"src/lib/responses/MergeSummary.ts"(){"use strict";Oh=class{constructor(t,e=null,r){this.reason=t,this.file=e,this.meta=r}toString(){return`${this.file}:${this.reason}`}},aI=class{constructor(){this.conflicts=[],this.merges=[],this.result="success"}get failed(){return this.conflicts.length>0}get reason(){return this.result}toString(){return this.conflicts.length?`CONFLICTS: ${this.conflicts.join(", ")}`:"OK"}}}}),w0,oI,Lq=V({"src/lib/responses/PullSummary.ts"(){"use strict";w0=class{constructor(){this.remoteMessages={all:[]},this.created=[],this.deleted=[],this.files=[],this.deletions={},this.insertions={},this.summary={changes:0,deletions:0,insertions:0}}},oI=class{constructor(){this.remote="",this.hash={local:"",remote:""},this.branch={local:"",remote:""},this.message=""}toString(){return this.message}}}});function a0(t){return t.objects=t.objects||{compressing:0,counting:0,enumerating:0,packReused:0,reused:{count:0,delta:0},total:{count:0,delta:0}}}function TR(t){let e=/^\s*(\d+)/.exec(t),r=/delta (\d+)/i.exec(t);return{count:We(e&&e[1]||"0"),delta:We(r&&r[1]||"0")}}var lI,Nq=V({"src/lib/parsers/parse-remote-objects.ts"(){"use strict";ue(),lI=[new Ws(/^remote:\s*(enumerating|counting|compressing) objects: (\d+),/i,(t,[e,r])=>{let n=e.toLowerCase(),i=a0(t.remoteMessages);Object.assign(i,{[n]:We(r)})}),new Ws(/^remote:\s*(enumerating|counting|compressing) objects: \d+% \(\d+\/(\d+)\),/i,(t,[e,r])=>{let n=e.toLowerCase(),i=a0(t.remoteMessages);Object.assign(i,{[n]:We(r)})}),new Ws(/total ([^,]+), reused ([^,]+), pack-reused (\d+)/i,(t,[e,r,n])=>{let i=a0(t.remoteMessages);i.total=TR(e),i.reused=TR(r),i.packReused=We(n)})]}});function cI(t,e){return Rr({remoteMessages:new fI},uI,e)}var uI,fI,dI=V({"src/lib/parsers/parse-remote-messages.ts"(){"use strict";ue(),Nq(),uI=[new Ws(/^remote:\s*(.+)$/,(t,[e])=>(t.remoteMessages.all.push(e.trim()),!1)),...lI,new Ws([/create a (?:pull|merge) request/i,/\s(https?:\/\/\S+)$/],(t,[e])=>{t.remoteMessages.pullRequestUrl=e}),new Ws([/found (\d+) vulnerabilities.+\(([^)]+)\)/i,/\s(https?:\/\/\S+)$/],(t,[e,r,n])=>{t.remoteMessages.vulnerabilities={count:We(e),summary:r,url:n}})],fI=class{constructor(){this.all=[]}}}});function Bq(t,e){let r=Rr(new oI,hI,[t,e]);return r.message&&r}var PR,RR,$R,IR,hI,FR,G0,pI=V({"src/lib/parsers/parse-pull.ts"(){"use strict";Lq(),ue(),dI(),PR=/^\s*(.+?)\s+\|\s+\d+\s*(\+*)(-*)/,RR=/(\d+)\D+((\d+)\D+\(\+\))?(\D+(\d+)\D+\(-\))?/,$R=/^(create|delete) mode \d+ (.+)/,IR=[new pe(PR,(t,[e,r,n])=>{t.files.push(e),r&&(t.insertions[e]=r.length),n&&(t.deletions[e]=n.length)}),new pe(RR,(t,[e,,r,,n])=>r!==void 0||n!==void 0?(t.summary.changes=+e||0,t.summary.insertions=+r||0,t.summary.deletions=+n||0,!0):!1),new pe($R,(t,[e,r])=>{_n(t.files,r),_n(e==="create"?t.created:t.deleted,r)})],hI=[new pe(/^from\s(.+)$/i,(t,[e])=>void(t.remote=e)),new pe(/^fatal:\s(.+)$/,(t,[e])=>void(t.message=e)),new pe(/([a-z0-9]+)\.\.([a-z0-9]+)\s+(\S+)\s+->\s+(\S+)$/,(t,[e,r,n,i])=>{t.branch.local=n,t.hash.local=e,t.branch.remote=i,t.hash.remote=r})],FR=(t,e)=>Rr(new w0,IR,[t,e]),G0=(t,e)=>Object.assign(new w0,FR(t,e),cI(t,e))}}),OR,mI,MR,Hq=V({"src/lib/parsers/parse-merge.ts"(){"use strict";Dq(),ue(),pI(),OR=[new pe(/^Auto-merging\s+(.+)$/,(t,[e])=>{t.merges.push(e)}),new pe(/^CONFLICT\s+\((.+)\): Merge conflict in (.+)$/,(t,[e,r])=>{t.conflicts.push(new Oh(e,r))}),new pe(/^CONFLICT\s+\((.+\/delete)\): (.+) deleted in (.+) and/,(t,[e,r,n])=>{t.conflicts.push(new Oh(e,r,{deleteRef:n}))}),new pe(/^CONFLICT\s+\((.+)\):/,(t,[e])=>{t.conflicts.push(new Oh(e,null))}),new pe(/^Automatic merge failed;\s+(.+)$/,(t,[e])=>{t.result=e})],mI=(t,e)=>Object.assign(MR(t,e),G0(t,e)),MR=t=>Rr(new aI,OR,t)}});function DR(t){return t.length?{commands:["merge",...t],format:"utf-8",parser(e,r){let n=mI(e,r);if(n.failed)throw new Du(n);return n}}:Tr("Git.merge requires at least one option")}var Uq=V({"src/lib/tasks/merge.ts"(){"use strict";Pl(),Hq(),mt()}});function Gq(t,e,r){let n=r.includes("deleted"),i=r.includes("tag")||/^refs\/tags/.test(t),s=!r.includes("new");return{deleted:n,tag:i,branch:!i,new:!s,alreadyUpdated:s,local:t,remote:e}}var LR,gI,NR,jq=V({"src/lib/parsers/parse-push.ts"(){"use strict";ue(),dI(),LR=[new pe(/^Pushing to (.+)$/,(t,[e])=>{t.repo=e}),new pe(/^updating local tracking ref '(.+)'/,(t,[e])=>{t.ref={...(t.ref||{}),local:e}}),new pe(/^[=*-]\s+([^:]+):(\S+)\s+\[(.+)]$/,(t,[e,r,n])=>{t.pushed.push(Gq(e,r,n))}),new pe(/^Branch '([^']+)' set up to track remote branch '([^']+)' from '([^']+)'/,(t,[e,r,n])=>{t.branch={...(t.branch||{}),local:e,remote:r,remoteName:n}}),new pe(/^([^:]+):(\S+)\s+([a-z0-9]+)\.\.([a-z0-9]+)$/,(t,[e,r,n,i])=>{t.update={head:{local:e,remote:r},hash:{from:n,to:i}}})],gI=(t,e)=>{let r=NR(t,e),n=cI(t,e);return{...r,...n}},NR=(t,e)=>Rr({pushed:[]},LR,[t,e])}}),vI={};yt(vI,{pushTagsTask:()=>qq,pushTask:()=>j0});function qq(t={},e){return _n(e,"--tags"),j0(t,e)}function j0(t={},e){let r=["push",...e];return t.branch&&r.splice(1,0,t.branch),t.remote&&r.splice(1,0,t.remote),Hh(r,"-v"),_n(r,"--verbose"),_n(r,"--porcelain"),{commands:r,format:"utf-8",parser:gI}}var wI=V({"src/lib/tasks/push.ts"(){"use strict";jq(),ue()}});function Wq(){return{showBuffer(){let t=["show",...hr(arguments,1)];return t.includes("--binary")||t.splice(1,0,"--binary"),this._runTask(S$(t),tt(arguments))},show(){let t=["show",...hr(arguments,1)];return this._runTask(pr(t),tt(arguments))}}}var zq=V({"src/lib/tasks/show.ts"(){"use strict";ue(),mt()}}),BR,yI,Vq=V({"src/lib/responses/FileStatusSummary.ts"(){"use strict";BR=/^(.+)\0(.+)$/,yI=class{constructor(t,e,r){if(this.path=t,this.index=e,this.working_dir=r,e==="R"||r==="R"){let n=BR.exec(t)||[null,t,t];this.from=n[2]||"",this.path=n[1]||""}}}}});function HR(t){let[e,r]=t.split(Cl);return{from:r||e,to:e}}function Qr(t,e,r){return[`${t}${e}`,r]}function o0(t,...e){return e.map(r=>Qr(t,r,(n,i)=>n.conflicted.push(i)))}function Yq(t,e){let r=e.trim();switch(" "){case r.charAt(2):return n(r.charAt(0),r.charAt(1),r.slice(3));case r.charAt(1):return n(" ",r.charAt(0),r.slice(2));default:return}function n(i,s,a){let o=`${i}${s}`,l=bI.get(o);l&&l(t,a),o!=="##"&&o!=="!!"&&t.files.push(new yI(a,i,s))}}var UR,bI,_I,Xq=V({"src/lib/responses/StatusSummary.ts"(){"use strict";ue(),Vq(),UR=class{constructor(){this.not_added=[],this.conflicted=[],this.created=[],this.deleted=[],this.ignored=void 0,this.modified=[],this.renamed=[],this.files=[],this.staged=[],this.ahead=0,this.behind=0,this.current=null,this.tracking=null,this.detached=!1,this.isClean=()=>!this.files.length}},bI=new Map([Qr(" ","A",(t,e)=>t.created.push(e)),Qr(" ","D",(t,e)=>t.deleted.push(e)),Qr(" ","M",(t,e)=>t.modified.push(e)),Qr("A"," ",(t,e)=>{t.created.push(e),t.staged.push(e)}),Qr("A","M",(t,e)=>{t.created.push(e),t.staged.push(e),t.modified.push(e)}),Qr("D"," ",(t,e)=>{t.deleted.push(e),t.staged.push(e)}),Qr("M"," ",(t,e)=>{t.modified.push(e),t.staged.push(e)}),Qr("M","M",(t,e)=>{t.modified.push(e),t.staged.push(e)}),Qr("R"," ",(t,e)=>{t.renamed.push(HR(e))}),Qr("R","M",(t,e)=>{let r=HR(e);t.renamed.push(r),t.modified.push(r.to)}),Qr("!","!",(t,e)=>{(t.ignored=t.ignored||[]).push(e)}),Qr("?","?",(t,e)=>t.not_added.push(e)),...o0("A","A","U"),...o0("D","D","U"),...o0("U","A","D","U"),["##",(t,e)=>{let r=/ahead (\d+)/,n=/behind (\d+)/,i=/^(.+?(?=(?:\.{3}|\s|$)))/,s=/\.{3}(\S*)/,a=/\son\s(\S+?)(?=\.{3}|$)/,o=r.exec(e);t.ahead=o&&+o[1]||0,o=n.exec(e),t.behind=o&&+o[1]||0,o=i.exec(e),t.current=Qt(o==null?void 0:o[1],ct,null),o=s.exec(e),t.tracking=Qt(o==null?void 0:o[1],ct,null),o=a.exec(e),o&&(t.current=Qt(o==null?void 0:o[1],ct,t.current)),t.detached=/\(no branch\)/.test(e)}]]),_I=function(t){let e=t.split(Cl),r=new UR;for(let n=0,i=e.length;n!xI.includes(r))],parser(r){return _I(r)}}}var xI,Kq=V({"src/lib/tasks/status.ts"(){"use strict";Xq(),xI=["--null","-z"]}});function Nh(t=0,e=0,r=0,n="",i=!0){return Object.defineProperty({major:t,minor:e,patch:r,agent:n,installed:i},"toString",{value(){return`${this.major}.${this.minor}.${this.patch}`},configurable:!1,enumerable:!1})}function Qq(){return Nh(0,0,0,"",!1)}function Jq(){return{version(){return this._runTask({commands:["--version"],format:"utf-8",parser:eW,onError(t,e,r,n){if(t.exitCode===-2)return r(Buffer.from(q0));n(e)}})}}}function eW(t){return t===q0?Qq():Rr(Nh(0,0,0,t),SI,t)}var q0,SI,tW=V({"src/lib/tasks/version.ts"(){"use strict";ue(),q0="installed=false",SI=[new pe(/version (\d+)\.(\d+)\.(\d+)(?:\s*\((.+)\))?/,(t,[e,r,n,i=""])=>{Object.assign(t,Nh(We(e),We(r),We(n),i))}),new pe(/version (\d+)\.(\d+)\.(\D+)(.+)?$/,(t,[e,r,n,i=""])=>{Object.assign(t,Nh(We(e),We(r),n,i))})]}});function GR(t,e,r,...n){return ct(r)?e(r,Qt(n[0],ct),hr(arguments)):Tr(`git.${t}() requires a string 'repoPath'`)}function rW(){return{clone(t,...e){return this._runTask(GR("clone",y0,Qt(t,ct),...e),tt(arguments))},mirror(t,...e){return this._runTask(GR("mirror",EI,Qt(t,ct),...e),tt(arguments))}}}var y0,EI,nW=V({"src/lib/tasks/clone.ts"(){"use strict";mt(),ue(),y0=(t,e,r)=>{let n=["clone",...r];return ct(t)&&n.push(Sl(t)),ct(e)&&n.push(Sl(e)),pr(n)},EI=(t,e,r)=>(_n(r,"--mirror"),y0(t,e,r))}}),kI={};yt(kI,{SimpleGitApi:()=>b0});var b0,iW=V({"src/lib/simple-git-api.ts"(){"use strict";oq(),lq(),uq(),hq(),wq(),$$(),bq(),D$(),xq(),Cq(),sI(),Uq(),wI(),zq(),Kq(),mt(),tW(),ue(),nW(),b0=class{constructor(t){this._executor=t}_runTask(t,e){let r=this._executor.chain(),n=r.push(t);return e&&sq(t,n,e),Object.create(this,{then:{value:n.then.bind(n)},catch:{value:n.catch.bind(n)},_executor:{value:r}})}add(t){return this._runTask(pr(["add",...wi(t)]),tt(arguments))}cwd(t){let e=tt(arguments);return typeof t=="string"?this._runTask(ER(t,this._executor),e):typeof(t==null?void 0:t.path)=="string"?this._runTask(ER(t.path,t.root&&this._executor||void 0),e):this._runTask(Tr("Git.cwd: workingDirectory must be supplied as a string"),e)}hashObject(t,e){return this._runTask(_q(t,e===!0),tt(arguments))}init(t){return this._runTask(Aq(t===!0,this._executor.cwd,hr(arguments)),tt(arguments))}merge(){return this._runTask(DR(hr(arguments)),tt(arguments))}mergeFromTo(t,e){return ct(t)&&ct(e)?this._runTask(DR([t,e,...hr(arguments)]),tt(arguments,!1)):this._runTask(Tr("Git.mergeFromTo requires that the 'remote' and 'branch' arguments are supplied as strings"))}outputHandler(t){return this._executor.outputHandler=t,this}push(){let t=j0({remote:Qt(arguments[0],ct),branch:Qt(arguments[1],ct)},hr(arguments));return this._runTask(t,tt(arguments))}stash(){return this._runTask(pr(["stash",...hr(arguments)]),tt(arguments))}status(){return this._runTask(Zq(hr(arguments)),tt(arguments))}},Object.assign(b0.prototype,cq(),rW(),vq(),zj(),dq(),yq(),Zj(),Mq(),Wq(),Jq())}}),AI={};yt(AI,{Scheduler:()=>TI});var jR,TI,sW=V({"src/lib/runners/scheduler.ts"(){"use strict";ue(),U$(),jR=(()=>{let t=0;return()=>{t++;let{promise:e,done:r}=(0,CI.createDeferred)();return{promise:e,done:r,id:t}}})(),TI=class{constructor(t=2){this.concurrency=t,this.logger=O0("","scheduler"),this.pending=[],this.running=[],this.logger("Constructed, concurrency=%s",t)}schedule(){if(!this.pending.length||this.running.length>=this.concurrency){this.logger("Schedule attempt ignored, pending=%s running=%s concurrency=%s",this.pending.length,this.running.length,this.concurrency);return}let t=_n(this.running,this.pending.shift());this.logger("Attempting id=%s",t.id),t.done(()=>{this.logger("Completing id=",t.id),Hh(this.running,t),this.schedule()})}next(){let{promise:t,id:e}=_n(this.pending,jR());return this.logger("Scheduling id=%s",e),this.schedule(),t}}}}),PI={};yt(PI,{applyPatchTask:()=>aW});function aW(t,e){return pr(["apply",...e,...t])}var oW=V({"src/lib/tasks/apply-patch.ts"(){"use strict";mt()}});function lW(t,e){return{branch:t,hash:e,success:!0}}function cW(t){return{branch:t,hash:null,success:!1}}var RI,uW=V({"src/lib/responses/BranchDeleteSummary.ts"(){"use strict";RI=class{constructor(){this.all=[],this.branches={},this.errors=[]}get success(){return!this.errors.length}}}});function $I(t,e){return e===1&&_0.test(t)}var qR,_0,WR,Vh,fW=V({"src/lib/parsers/parse-branch-delete.ts"(){"use strict";uW(),ue(),qR=/(\S+)\s+\(\S+\s([^)]+)\)/,_0=/^error[^']+'([^']+)'/m,WR=[new pe(qR,(t,[e,r])=>{let n=lW(e,r);t.all.push(n),t.branches[e]=n}),new pe(_0,(t,[e])=>{let r=cW(e);t.errors.push(r),t.all.push(r),t.branches[e]=r})],Vh=(t,e)=>Rr(new RI,WR,[t,e])}}),II,dW=V({"src/lib/responses/BranchSummary.ts"(){"use strict";II=class{constructor(){this.all=[],this.branches={},this.current="",this.detached=!1}push(t,e,r,n,i){t==="*"&&(this.detached=e,this.current=r),this.all.push(r),this.branches[r]={current:t==="*",linkedWorkTree:t==="+",name:r,commit:n,label:i}}}}});function zR(t){return t?t.charAt(0):""}function FI(t,e=!1){return Rr(new II,e?[MI]:OI,t)}var OI,MI,hW=V({"src/lib/parsers/parse-branch.ts"(){"use strict";dW(),ue(),OI=[new pe(/^([*+]\s)?\((?:HEAD )?detached (?:from|at) (\S+)\)\s+([a-z0-9]+)\s(.*)$/,(t,[e,r,n,i])=>{t.push(zR(e),!0,r,n,i)}),new pe(/^([*+]\s)?(\S+)\s+([a-z0-9]+)\s?(.*)$/s,(t,[e,r,n,i])=>{t.push(zR(e),!1,r,n,i)})],MI=new pe(/^(\S+)$/s,(t,[e])=>{t.push("*",!1,e,"","")})}}),DI={};yt(DI,{branchLocalTask:()=>mW,branchTask:()=>pW,containsDeleteBranchCommand:()=>LI,deleteBranchTask:()=>vW,deleteBranchesTask:()=>gW});function LI(t){let e=["-d","-D","--delete"];return t.some(r=>e.includes(r))}function pW(t){let e=LI(t),r=t.includes("--show-current"),n=["branch",...t];return n.length===1&&n.push("-a"),n.includes("-v")||n.splice(1,0,"-v"),{format:"utf-8",commands:n,parser(i,s){return e?Vh(i,s).all[0]:FI(i,r)}}}function mW(){return{format:"utf-8",commands:["branch","-v"],parser(t){return FI(t)}}}function gW(t,e=!1){return{format:"utf-8",commands:["branch","-v",e?"-D":"-d",...t],parser(r,n){return Vh(r,n)},onError({exitCode:r,stdOut:n},i,s,a){if(!$I(String(i),r))return a(i);s(n)}}}function vW(t,e=!1){let r={format:"utf-8",commands:["branch","-v",e?"-D":"-d",t],parser(n,i){return Vh(n,i).branches[t]},onError({exitCode:n,stdErr:i,stdOut:s},a,o,l){if(!$I(String(a),n))return l(a);throw new Du(r.parser(Mu(s),Mu(i)),String(a))}};return r}var wW=V({"src/lib/tasks/branch.ts"(){"use strict";Pl(),fW(),hW(),ue()}});function yW(t){let e=t.trim().replace(/^["']|["']$/g,"");return e&&(0,NI.normalize)(e)}var BI,bW=V({"src/lib/responses/CheckIgnore.ts"(){"use strict";BI=t=>t.split(/\n/g).map(yW).filter(Boolean)}}),HI={};yt(HI,{checkIgnoreTask:()=>_W});function _W(t){return{commands:["check-ignore",...t],format:"utf-8",parser:BI}}var xW=V({"src/lib/tasks/check-ignore.ts"(){"use strict";bW()}});function SW(t,e){return Rr({raw:t,remote:null,branches:[],tags:[],updated:[],deleted:[]},UI,[t,e])}var UI,EW=V({"src/lib/parsers/parse-fetch.ts"(){"use strict";ue(),UI=[new pe(/From (.+)$/,(t,[e])=>{t.remote=e}),new pe(/\* \[new branch]\s+(\S+)\s*-> (.+)$/,(t,[e,r])=>{t.branches.push({name:e,tracking:r})}),new pe(/\* \[new tag]\s+(\S+)\s*-> (.+)$/,(t,[e,r])=>{t.tags.push({name:e,tracking:r})}),new pe(/- \[deleted]\s+\S+\s*-> (.+)$/,(t,[e])=>{t.deleted.push({tracking:e})}),new pe(/\s*([^.]+)\.\.(\S+)\s+(\S+)\s*-> (.+)$/,(t,[e,r,n,i])=>{t.updated.push({name:n,tracking:i,to:r,from:e})})]}}),GI={};yt(GI,{fetchTask:()=>AW});function kW(t){return /^--upload-pack(=|$)/.test(t)}function AW(t,e,r){let n=["fetch",...r];return t&&e&&n.push(t,e),n.find(kW)?Tr("git.fetch: potential exploit argument blocked."):{commands:n,format:"utf-8",parser:SW}}var CW=V({"src/lib/tasks/fetch.ts"(){"use strict";EW(),mt()}});function TW(t){return Rr({moves:[]},jI,t)}var jI,PW=V({"src/lib/parsers/parse-move.ts"(){"use strict";ue(),jI=[new pe(/^Renaming (.+) to (.+)$/,(t,[e,r])=>{t.moves.push({from:e,to:r})})]}}),qI={};yt(qI,{moveTask:()=>RW});function RW(t,e){return{commands:["mv","-v",...wi(t),e],format:"utf-8",parser:TW}}var $W=V({"src/lib/tasks/move.ts"(){"use strict";PW(),ue()}}),WI={};yt(WI,{pullTask:()=>IW});function IW(t,e,r){let n=["pull",...r];return t&&e&&n.splice(1,0,t,e),{commands:n,format:"utf-8",parser(i,s){return G0(i,s)},onError(i,s,a,o){let l=Bq(Mu(i.stdOut),Mu(i.stdErr));if(l)return o(new Du(l));o(s)}}}var FW=V({"src/lib/tasks/pull.ts"(){"use strict";Pl(),pI(),ue()}});function OW(t){let e={};return zI(t,([r])=>e[r]={name:r}),Object.values(e)}function MW(t){let e={};return zI(t,([r,n,i])=>{Object.hasOwn(e,r)||(e[r]={name:r,refs:{fetch:"",push:""}}),i&&n&&(e[r].refs[i.replace(/[^a-z]/g,"")]=n)}),Object.values(e)}function zI(t,e){E0(t,r=>e(r.split(/\s+/)))}var DW=V({"src/lib/responses/GetRemoteSummary.ts"(){"use strict";ue()}}),VI={};yt(VI,{addRemoteTask:()=>LW,getRemotesTask:()=>NW,listRemotesTask:()=>BW,remoteTask:()=>HW,removeRemoteTask:()=>UW});function LW(t,e,r){return pr(["remote","add",...r,t,e])}function NW(t){let e=["remote"];return t&&e.push("-v"),{commands:e,format:"utf-8",parser:t?MW:OW}}function BW(t){let e=[...t];return e[0]!=="ls-remote"&&e.unshift("ls-remote"),pr(e)}function HW(t){let e=[...t];return e[0]!=="remote"&&e.unshift("remote"),pr(e)}function UW(t){return pr(["remote","remove",t])}var GW=V({"src/lib/tasks/remote.ts"(){"use strict";DW(),mt()}}),YI={};yt(YI,{stashListTask:()=>jW});function jW(t={},e){let r=iI(t),n=["stash","list",...r.commands,...e],i=eI(r.splitter,r.fields,D0(n));return zh(n)||{commands:n,format:"utf-8",parser:i}}var qW=V({"src/lib/tasks/stash-list.ts"(){"use strict";Hu(),rI(),U0(),sI()}}),XI={};yt(XI,{addSubModuleTask:()=>WW,initSubModuleTask:()=>zW,subModuleTask:()=>Yh,updateSubModuleTask:()=>VW});function WW(t,e){return Yh(["add",t,e])}function zW(t){return Yh(["init",...t])}function Yh(t){let e=[...t];return e[0]!=="submodule"&&e.unshift("submodule"),pr(e)}function VW(t){return Yh(["update",...t])}var YW=V({"src/lib/tasks/sub-module.ts"(){"use strict";mt()}});function XW(t,e){let r=Number.isNaN(t),n=Number.isNaN(e);return r!==n?r?1:-1:r?ZI(t,e):0}function ZI(t,e){return t===e?0:t>e?1:-1}function ZW(t){return t.trim()}function $h(t){return typeof t=="string"&&parseInt(t.replace(/^\D+/g,""),10)||0}var VR,KI,KW=V({"src/lib/responses/TagList.ts"(){"use strict";VR=class{constructor(t,e){this.all=t,this.latest=e}},KI=function(t,e=!1){let r=t.split(` `).map(ZW).filter(Boolean);e||r.sort(function(i,s){let a=i.split("."),o=s.split(".");if(a.length===1||o.length===1)return XW($h(a[0]),$h(o[0]));for(let l=0,c=Math.max(a.length,o.length);li.indexOf(".")>=0);return new VR(r,n)}}}),QI={};yt(QI,{addAnnotatedTagTask:()=>ez,addTagTask:()=>JW,tagListTask:()=>QW});function QW(t=[]){let e=t.some(r=>/^--sort=/.test(r));return{format:"utf-8",commands:["tag","-l",...t],parser(r){return KI(r,e)}}}function JW(t){return{format:"utf-8",commands:["tag",t],parser(){return{name:t}}}}function ez(t,e){return{format:"utf-8",commands:["tag","-a","-m",e,t],parser(){return{name:t}}}}var tz=V({"src/lib/tasks/tag.ts"(){"use strict";KW()}}),rz=yj({"src/git.js"(t,e){"use strict";var{GitExecutor:r}=(iq(),pt(q$)),{SimpleGitApi:n}=(iW(),pt(kI)),{Scheduler:i}=(sW(),pt(AI)),{adhocExecTask:s,configurationErrorTask:a}=(mt(),pt(p0)),{asArray:o,filterArray:l,filterPrimitives:c,filterString:u,filterStringOrStringArray:f,filterType:d,getTrailingOptions:h,trailingFunctionArgument:m,trailingOptionsArgument:g}=(ue(),pt(h$)),{applyPatchTask:v}=(oW(),pt(PI)),{branchTask:w,branchLocalTask:b,deleteBranchesTask:k,deleteBranchTask:x}=(wW(),pt(DI)),{checkIgnoreTask:E}=(xW(),pt(HI)),{checkIsRepoTask:A}=(v$(),pt(p$)),{cleanWithOptionsTask:y,isCleanOptionsArray:S}=(T$(),pt(A$)),{diffSummaryTask:_}=(U0(),pt(nI)),{fetchTask:C}=(CW(),pt(GI)),{moveTask:P}=($W(),pt(qI)),{pullTask:N}=(FW(),pt(WI)),{pushTagsTask:B}=(wI(),pt(vI)),{addRemoteTask:H,getRemotesTask:ce,listRemotesTask:Pe,remoteTask:ve,removeRemoteTask:ie}=(GW(),pt(VI)),{getResetMode:xe,resetTask:we}=(H$(),pt(L$)),{stashListTask:W}=(qW(),pt(YI)),{addSubModuleTask:X,initSubModuleTask:q,subModuleTask:De,updateSubModuleTask:ar}=(YW(),pt(XI)),{addAnnotatedTagTask:Ft,addTagTask:Ie,tagListTask:kt}=(tz(),pt(QI)),{straightThroughBufferTask:At,straightThroughStringTask:je}=(mt(),pt(p0));function Z(M,O){this._plugins=O,this._executor=new r(M.baseDir,new i(M.maxConcurrentProcesses),O),this._trimmed=M.trimmed}(Z.prototype=Object.create(n.prototype)).constructor=Z,Z.prototype.customBinary=function(M){return this._plugins.reconfigure("binary",M),this},Z.prototype.env=function(M,O){return arguments.length===1&&typeof M=="object"?this._executor.env=M:(this._executor.env=this._executor.env||{})[M]=O,this},Z.prototype.stashList=function(M){return this._runTask(W(g(arguments)||{},l(M)&&M||[]),m(arguments))},Z.prototype.mv=function(M,O){return this._runTask(P(M,O),m(arguments))},Z.prototype.checkoutLatestTag=function(M){var O=this;return this.pull(function(){O.tags(function(oe,Ce){O.checkout(Ce.latest,M)})})},Z.prototype.pull=function(M,O,oe,Ce){return this._runTask(N(d(M,u),d(O,u),h(arguments)),m(arguments))},Z.prototype.fetch=function(M,O){return this._runTask(C(d(M,u),d(O,u),h(arguments)),m(arguments))},Z.prototype.silent=function(M){return this._runTask(s(()=>console.warn("simple-git deprecation notice: git.silent: logging should be configured using the `debug` library / `DEBUG` environment variable, this method will be removed.")))},Z.prototype.tags=function(M,O){return this._runTask(kt(h(arguments)),m(arguments))},Z.prototype.rebase=function(){return this._runTask(je(["rebase",...h(arguments)]),m(arguments))},Z.prototype.reset=function(M){return this._runTask(we(xe(M),h(arguments)),m(arguments))},Z.prototype.revert=function(M){let O=m(arguments);return typeof M!="string"?this._runTask(a("Commit must be a string"),O):this._runTask(je(["revert",...h(arguments,0,!0),M]),O)},Z.prototype.addTag=function(M){let O=typeof M=="string"?Ie(M):a("Git.addTag requires a tag name");return this._runTask(O,m(arguments))},Z.prototype.addAnnotatedTag=function(M,O){return this._runTask(Ft(M,O),m(arguments))},Z.prototype.deleteLocalBranch=function(M,O,oe){return this._runTask(x(M,typeof O=="boolean"?O:!1),m(arguments))},Z.prototype.deleteLocalBranches=function(M,O,oe){return this._runTask(k(M,typeof O=="boolean"?O:!1),m(arguments))},Z.prototype.branch=function(M,O){return this._runTask(w(h(arguments)),m(arguments))},Z.prototype.branchLocal=function(M){return this._runTask(b(),m(arguments))},Z.prototype.raw=function(M){let O=!Array.isArray(M),oe=[].slice.call(O?arguments:M,0);for(let Ot=0;Otconsole.warn("simple-git deprecation notice: clearQueue() is deprecated and will be removed, switch to using the abortPlugin instead.")))},Z.prototype.checkIgnore=function(M,O){return this._runTask(E(o(d(M,f,[]))),m(arguments))},Z.prototype.checkIsRepo=function(M,O){return this._runTask(A(d(M,u)),m(arguments))},e.exports=Z}});zs();var nz=class extends Pr{constructor(t,e){super(void 0,e),this.config=t}};zs();zs();var Tl=class extends Pr{constructor(t,e,r){super(t,r),this.task=t,this.plugin=e,Object.setPrototypeOf(this,new.target.prototype)}};Pl();JR();v$();T$();$$();F$();D$();H$();function iz(t){return t?[{type:"spawn.before",action(n,i){t.aborted&&i.kill(new Tl(void 0,"abort","Abort already signaled"))}},{type:"spawn.after",action(n,i){function s(){i.kill(new Tl(void 0,"abort","Abort signal received"))}t.addEventListener("abort",s),i.spawned.on("close",()=>t.removeEventListener("abort",s))}}]:void 0}function sz(t={}){return{type:"spawn.args",action(e,{env:r}){for(let n of bR(e,r))if(t[n.category]!==!0)throw new Tl(void 0,"unsafe",n.message);return e}}}ue();function az(t){let e=Ou(t,"-c");return{type:"spawn.args",action(r){return[...e,...r]}}}ue();var YR=(0,Al.deferred)().promise;function oz({onClose:t=!0,onExit:e=50}={}){function r(){let i=-1,s={close:(0,Al.deferred)(),closeTimeout:(0,Al.deferred)(),exit:(0,Al.deferred)(),exitTimeout:(0,Al.deferred)()},a=Promise.race([t===!1?YR:s.closeTimeout.promise,e===!1?YR:s.exitTimeout.promise]);return n(t,s.close,s.closeTimeout),n(e,s.exit,s.exitTimeout),{close(o){i=o,s.close.done()},exit(o){i=o,s.exit.done()},get exitCode(){return i},result:a}}function n(i,s,a){i!==!1&&(i===!0?s.promise:s.promise.then(()=>l0(i))).then(a.done)}return{type:"spawn.after",async action(i,{spawned:s,close:a}){var u,f;let o=r(),l=!0,c=()=>void(l=!1);(u=s.stdout)==null||u.on("data",c),(f=s.stderr)==null||f.on("data",c),s.on("error",c),s.on("close",d=>o.close(d)),s.on("exit",d=>o.exit(d));try{await o.result,l&&(await l0(50)),a(o.exitCode)}catch(d){a(o.exitCode,d)}}}}ue();var lz="Invalid value supplied for custom binary, requires a single string or an array containing either one or two strings",XR="Invalid value supplied for custom binary, restricted characters must be removed or supply the unsafe.allowUnsafeCustomBinary option";function cz(t){return!t||!/^([a-z]:)?([a-z0-9/.\\_~-]+)$/i.test(t)}function ZR(t,e){if(t.length<1||t.length>2)throw new Tl(void 0,"binary",lz);if(t.some(cz))if(e)console.warn(XR);else throw new Tl(void 0,"binary",XR);let[n,i]=t;return{binary:n,prefix:i}}function uz(t,e=["git"],r=!1){let n=ZR(wi(e),r);t.on("binary",i=>{n=ZR(wi(i),r)}),t.append("spawn.binary",()=>n.binary),t.append("spawn.args",i=>n.prefix?[n.prefix,...i]:i)}zs();function fz(t){return!!(t.exitCode&&t.stdErr.length)}function dz(t){return Buffer.concat([...t.stdOut,...t.stdErr])}function hz(t=!1,e=fz,r=dz){return(n,i)=>!t&&n||!e(i)?n:r(i)}function KR(t){return{type:"task.error",action(e,r){let n=t(e.error,{stdErr:r.stdErr,stdOut:r.stdOut,exitCode:r.exitCode});return Buffer.isBuffer(n)?{error:new Pr(void 0,n.toString("utf-8"))}:{error:n}}}}ue();var pz=class{constructor(){this.plugins=new Set,this.events=new JI.EventEmitter}on(t,e){this.events.on(t,e)}reconfigure(t,e){this.events.emit(t,e)}append(t,e){let r=_n(this.plugins,{type:t,action:e});return()=>this.plugins.delete(r)}add(t){let e=[];return wi(t).forEach(r=>r&&this.plugins.add(_n(e,r))),()=>{e.forEach(r=>this.plugins.delete(r))}}exec(t,e,r){let n=e,i=Object.freeze(Object.create(r));for(let s of this.plugins)s.type===t&&(n=s.action(n,i));return n}};ue();function mz(t){let e="--progress",r=["checkout","clone","fetch","pull","push"];return[{type:"spawn.args",action(s,a){return r.includes(a.method)?s$(s,e):s}},{type:"spawn.after",action(s,a){var o;a.commands.includes(e)&&((o=a.spawned.stderr)==null||o.on("data",l=>{let c=/^([\s\S]+?):\s*(\d+)% \((\d+)\/(\d+)\)/.exec(l.toString("utf8"));c&&t({method:a.method,stage:gz(c[1]),progress:We(c[2]),processed:We(c[3]),total:We(c[4])})}))}}]}function gz(t){return String(t.toLowerCase().split(" ",1))||"unknown"}ue();function vz(t){let e=o$(t,["uid","gid"]);return{type:"spawn.options",action(r){return{...e,...r}}}}function wz({block:t,stdErr:e=!0,stdOut:r=!0}){if(t>0)return{type:"spawn.after",action(n,i){var c,u;let s;function a(){s&&clearTimeout(s),s=setTimeout(l,t)}function o(){var f,d;(f=i.spawned.stdout)==null||f.off("data",a),(d=i.spawned.stderr)==null||d.off("data",a),i.spawned.off("exit",o),i.spawned.off("close",o),s&&clearTimeout(s)}function l(){o(),i.kill(new Tl(void 0,"timeout","block timeout reached"))}r&&((c=i.spawned.stdout)==null||c.on("data",a)),e&&((u=i.spawned.stderr)==null||u.on("data",a)),i.spawned.on("exit",o),i.spawned.on("close",o),a()}}}function yz(){return{type:"spawn.args",action(t){let e=[],r;function n(i){(r=r||[]).push(...i)}for(let i=0;iwn(a)&&El(a)||a));break}e.push(s)}return r?[...e,"--",...r.map(String)]:e}}}ue();var bz=rz();function _z(t,e){var i;let r=new pz,n=f$(t&&(typeof t=="string"?{baseDir:t}:t)||{},e);if(!k0(n.baseDir))throw new nz(n,"Cannot use simple-git on a directory that does not exist");return Array.isArray(n.config)&&r.add(az(n.config)),r.add(sz(n.unsafe)),r.add(oz(n.completion)),n.abort&&r.add(iz(n.abort)),n.progress&&r.add(mz(n.progress)),n.timeout&&r.add(wz(n.timeout)),n.spawnOptions&&r.add(vz(n.spawnOptions)),r.add(yz()),r.add(KR(hz(!0))),n.errors&&r.add(KR(n.errors)),uz(r,n.binary,(i=n.unsafe)==null?void 0:i.allowUnsafeCustomBinary),new bz(n,r)}Pl();var eF=_z;var Se=class extends wl{constructor(r){super(r);this.useDefaultWindowsGitPath=!1}async setGitInstance(r=!1){var n;if(await this.isGitInstalled()){let i=this.app.vault.adapter,s=i.getBasePath(),a=s;this.plugin.settings.basePath&&((await i.exists((0,Ji.normalizePath)(this.plugin.settings.basePath)))?a=Ue.join(s,this.plugin.settings.basePath):r||new Ji.Notice("ObsidianGit: 基础路径不存在")),this.absoluteRepoPath=a,this.git=eF({baseDir:a,binary:this.plugin.localStorage.getGitPath()||(this.useDefaultWindowsGitPath?Wd:void 0),config:["core.quotepath=off"],unsafe:{allowUnsafeCustomBinary:!0,allowUnsafeEditor:!0,allowUnsafeAskPass:!0,allowUnsafeConfigEnvCount:!0,allowUnsafeConfigPaths:!0,allowUnsafeCredentialHelper:!0,allowUnsafeGitProxy:!0,allowUnsafeGpgProgram:!0,allowUnsafeHooksPath:!0,allowUnsafeMergeDriver:!0,allowUnsafeSshCommand:!0}});let o=this.plugin.localStorage.getPATHPaths(),l=this.plugin.localStorage.getEnvVars(),c=this.plugin.settings.gitDir,u={...process.env};if(o.length>0){let w=o.join(":")+":"+u.PATH;u.PATH=w}c&&(u.GIT_DIR=c,u.GIT_WORK_TREE=a);for(let w of l){let[b,k]=w.split("=");u[b]=k}let f="simple-git",d=",",m=((n=localStorage.debug)!=null?n:"").split(d);if(!m.includes(f)&&!m.includes(`-${f}`)&&(m.push(f),nF.default.enable(m.join(d))),await this.git.env(u).checkIsRepo()){let w=await this.git.revparse("--show-cdup"),b=(0,Uu.resolve)(a+Uu.sep+w);this.absoluteRepoPath=b,await this.git.cwd(b)}let g=Ue.join(s,this.app.vault.configDir,"plugins","obsidian-git"),v=Ue.join(g,Ta);u.SSH_ASKPASS==null&&(u.SSH_ASKPASS=v),u.SSH_ASKPASS_REQUIRE="force",u.OBSIDIAN_GIT_CREDENTIALS_INPUT=Ue.join(g,zd),u.SSH_ASKPASS==v&&this.askpass().catch(w=>this.plugin.displayError(w)),u.OBSIDIAN_GIT="1",this.git=this.git.env(u)}}getRelativeVaultPath(r){let i=this.app.vault.adapter.getBasePath(),s=Ue.join(this.absoluteRepoPath,r),a=Ue.relative(i,s);return Ji.Platform.isWin&&(a=a.replace(/\\/g,"/")),a}getRelativeRepoPath(r,n=!0){if(n){let s=this.plugin.app.vault.adapter.getBasePath(),a=this.absoluteRepoPath,o=Ue.join(s,r),l=Ue.relative(a,o);return Ji.Platform.isWin&&(l=l.replace(/\\/g,"/")),l}return r}get absPluginConfigPath(){let n=this.app.vault.adapter.getBasePath();return Ue.join(n,this.app.vault.configDir,"plugins","obsidian-git")}get relPluginConfigPath(){return Ue.join(this.app.vault.configDir,"plugins","obsidian-git")}async askpass(){let r=this.app.vault.adapter,n=this.app.vault.configDir+"/plugins/obsidian-git/";await this.addAskPassScriptToExclude(),await Jr.writeFile(Ue.join(this.absPluginConfigPath,Ta),QA),await Jr.chmod(Ue.join(this.absPluginConfigPath,Ta),493),this.watchAbortController=new AbortController;let{signal:i}=this.watchAbortController;try{let s=Jr.watch(this.absPluginConfigPath,{signal:i});for await(let a of s){if(a.filename!=zd)continue;let o=n+zd;if(await new Promise(d=>setTimeout(d,200)),!(await r.exists(o)))continue;let l=await r.read(o),c;l.length>60&&(c=new Ji.Notice(l,999999));let u=!0;l.contains("Username for")&&(u=!1);let f=await new Ze(this.plugin,{allowEmpty:!0,obscure:u,placeholder:l.length>60?"Enter a response to the message.":l}).openAndGetResult();c==null||c.hide(),(await r.exists(o))&&(await r.write(`${o}.response`,f!=null?f:""))}}catch(s){this.plugin.displayError(s),await Jr.rm(Ue.join(this.absPluginConfigPath,Ta),{force:!0}),await Jr.rm(Ue.join(this.absPluginConfigPath,`${Ta}.response`),{force:!0}),await new Promise(a=>setTimeout(a,5e3)),this.plugin.log("重试监视以请求密码"),await this.askpass()}}async addAskPassScriptToExclude(){try{if(!(await this.git.checkIsRepo()))return;let r=await this.git.revparse(["--path-format=absolute","--git-path","info/exclude"]),n=Ue.join(this.app.vault.configDir,"plugins","obsidian-git",Ta),i=this.getRelativeRepoPath(n,!0);(await Jr.readFile(r,"utf-8")).split(` `).some(l=>l.contains(i))||(await Jr.appendFile(r,i+` `))}catch(r){console.error("将 askpass 脚本添加到排除文件时出错:",r)}}unload(){var r;(r=this.watchAbortController)==null||r.abort()}async status(r){let n=r==null?void 0:r.path;this.plugin.setPluginState({gitAction:1});let i=await this.git.status(n!=null?["--",n]:[]);this.plugin.setPluginState({gitAction:0});let s=i.files.map(a=>{let o=this.formatPath(a);return{path:o.path,from:o.from,index:a.index==="?"?"U":a.index,workingDir:a.working_dir==="?"?"U":a.working_dir,vaultPath:this.getRelativeVaultPath(o.path)}});return{all:s,changed:s.filter(a=>a.workingDir!==" "),staged:s.filter(a=>a.index!==" "&&a.index!="U"),conflicted:i.conflicted.map(a=>this.formatPath({path:a}).path)}}async submoduleAwareHeadRevisonInContainingDirectory(r){let n=this.getRelativeRepoPath(r),s=["-C",Ue.dirname(n),"rev-parse","HEAD"],a=this.git.raw(s);return a.catch(o=>console.warn("obsidian-git:rev-parse 错误:",o)),(await a).trim()}async getSubmodulePaths(){return new Promise(r=>{this.git.outputHandler((n,i,s,a)=>{if(!(a.contains("submodule")&&a.contains("foreach")))return;let o="",l=this.app.vault.adapter.getBasePath()+(this.plugin.settings.basePath?"/"+this.plugin.settings.basePath:"");i.on("data",c=>{o+=c.toString("utf8")}),i.on("end",()=>{let u=o.split(` `).map(f=>{let d=f.match(/'([^']*)'/);if(d!=null)return l+"/"+d[1]+Uu.sep}).filter(f=>!!f);u.reverse(),r(u)})}),this.git.subModule(["foreach","--recursive",""]).then(()=>{this.git.outputHandler(()=>{})},n=>this.plugin.displayError(n))})}formatPath(r){function n(i){if(i!=null)return i.startsWith("\"")&&i.endsWith("\"")?i.substring(1,i.length-1):i}return r.from!=null?{from:n(r.from),path:n(r.path)}:{path:n(r.path)}}async blame(r,n,i){if(r=this.getRelativeRepoPath(r),!(await this.isTracked(r)))return"untracked";let s=await this.getSubmoduleOfFile(r),a=s?["-C",s.submodule]:[],o=s?s.relativeFilepath:r;a.push("blame","--porcelain"),i&&a.push("-w");let l=`-C${qd}`;switch(n){case"inactive":break;case"same-commit":a.push("-C",l);break;case"all-commits":a.push("-C","-C",l);break;default:js(n)}a.push("--",o);let c=await this.git.raw(a);return xz(c)}async isTracked(r){let n=await this.getSubmoduleOfFile(r),i=n?["-C",n.submodule]:[],s=n?n.relativeFilepath:r;return i.push("ls-files","--",s),this.git.raw(i).then(a=>a.trim()!=="")}async commitAll({message:r}){if(this.plugin.settings.updateSubmodules){this.plugin.setPluginState({gitAction:4});let i=await this.getSubmodulePaths();for(let s of i)await this.git.cwd({path:s,root:!1}).add("-A"),await this.git.cwd({path:s,root:!1}).commit(await this.formatCommitMessage(r))}this.plugin.setPluginState({gitAction:3}),await this.git.add("-A"),this.plugin.setPluginState({gitAction:4});let n=await this.git.commit(await this.formatCommitMessage(r));return this.app.workspace.trigger("obsidian-git:head-change"),n.summary.changes}async commit({message:r,amend:n}){this.plugin.setPluginState({gitAction:4});let i=(await this.git.commit(await this.formatCommitMessage(r),n?["--amend"]:[])).summary.changes;return this.app.workspace.trigger("obsidian-git:head-change"),this.plugin.setPluginState({gitAction:0}),i}async stage(r,n){this.plugin.setPluginState({gitAction:3}),r=this.getRelativeRepoPath(r,n),await this.git.add(["--",r]),this.plugin.setPluginState({gitAction:0})}async stageAll({dir:r}){this.plugin.setPluginState({gitAction:3}),await this.git.add(r!=null?r:"-A"),this.plugin.setPluginState({gitAction:0})}async unstageAll({dir:r}){this.plugin.setPluginState({gitAction:3}),await this.git.reset(r!=null?["--",r]:[]),this.plugin.setPluginState({gitAction:0})}async unstage(r,n){this.plugin.setPluginState({gitAction:3}),r=this.getRelativeRepoPath(r,n),await this.git.reset(["--",r]),this.plugin.setPluginState({gitAction:0})}async discard(r){this.plugin.setPluginState({gitAction:3}),(await this.isTracked(r))&&(await this.git.checkout(["--",r])),this.plugin.setPluginState({gitAction:0})}async applyPatch(r){let n=Ue.join(this.relPluginConfigPath,"patch");await this.app.vault.adapter.write(n,r),await this.git.applyPatch(n,{"--cached":null,"--unidiff-zero":null,"--whitespace":"nowarn"}),await this.app.vault.adapter.remove(n)}async getUntrackedPaths(r){let n=r==null?void 0:r.path;this.plugin.setPluginState({gitAction:1});let i=[];n!=null&&i.push("--",n);let s=await this.git.clean(Oa.RECURSIVE+Oa.DRY_RUN,i);return this.plugin.setPluginState({gitAction:0}),s.paths}async hashObject(r){r=this.getRelativeRepoPath(r);let n=await this.getSubmoduleOfFile(r),i=n?["-C",n.submodule]:[],s=n?n.relativeFilepath:r;return i.push("hash-object","--",s),this.git.raw(i)}async discardAll({dir:r}){return this.discard(r!=null?r:".")}async pull(){this.plugin.setPluginState({gitAction:2});try{this.plugin.settings.updateSubmodules&&(await this.git.subModule(["update","--remote","--merge","--recursive"]));let r=await this.branchInfo(),n=await this.git.revparse([r.current]);if(!r.tracking&&this.plugin.settings.updateSubmodules){this.plugin.log("未找到跟踪分支。将忽略主仓库的拉取,仅更新子模块。");return}await this.git.fetch();let i=await this.git.revparse([r.tracking]);if(n!==i){if(this.plugin.settings.syncMethod==="merge"||this.plugin.settings.syncMethod==="rebase")try{let o=[r.tracking];switch(this.plugin.settings.mergeStrategy!=="none"&&o.push(`--strategy-option=${this.plugin.settings.mergeStrategy}`),this.plugin.settings.syncMethod){case"merge":await this.git.merge(o);break;case"rebase":await this.git.rebase(o)}}catch(o){this.plugin.displayError(`拉取失败(${this.plugin.settings.syncMethod}): ${"message"in o?o.message:o}`);return}else if(this.plugin.settings.syncMethod==="reset")try{await this.git.raw(["update-ref",`refs/heads/${r.current}`,i]),await this.unstageAll({})}catch(o){this.plugin.displayError(`同步失败(${this.plugin.settings.syncMethod}): ${"message"in o?o.message:o}`)}this.app.workspace.trigger("obsidian-git:head-change");let s=await this.git.revparse([r.current]);return(await this.git.diff([`${n}..${s}`,"--name-only"])).split(/\r\n|\r|\n/).filter(o=>o.length>0).map(o=>({path:o,workingDir:"P",vaultPath:this.getRelativeVaultPath(o)}))}else return[]}catch(r){this.convertErrors(r)}}async push(){this.plugin.setPluginState({gitAction:5});try{if(this.plugin.settings.updateSubmodules){let a=await this.git.subModule(["foreach","--recursive",`tracking=$(git for-each-ref --format='%(upstream:short)' "$(git symbolic-ref -q HEAD)"); echo $tracking; if [ ! -z "$(git diff --shortstat $tracking)" ]; then git push; fi`]);console.log(a)}let r=await this.git.status(),n=r.tracking,i=r.current;if(!n&&this.plugin.settings.updateSubmodules){this.plugin.log("未找到跟踪分支。将忽略主仓库的推送,仅更新子模块。");return}let s=null;return n&&(s=(await this.git.diffSummary([i,n,"--"])).changed),await this.git.push(),s}catch(r){this.convertErrors(r)}}async getUnpushedCommits(){let r=await this.git.status(),n=r.tracking,i=r.current;if(n==null||i==null)return 0;let[s,a]=Qi(n);return(await this.getRemoteBranches(s)).includes(n)?(await this.git.diffSummary([i,n,"--"])).changed:(this.plugin.log(`Tracking branch ${n} does not exist on remote ${s}.`),0)}async canPush(){if(this.plugin.settings.updateSubmodules===!0)return!0;let r=await this.git.status(),n=r.tracking,i=r.current;return n?(await this.git.diffSummary([i,n,"--"])).changed!==0:!1}async checkRequirements(){return(await this.isGitInstalled())?(await this.git.checkIsRepo())?"valid":"missing-repo":"missing-git"}async branchInfo(){let r=await this.git.status(),n=await this.git.branch(["--no-color"]);return{current:r.current||void 0,tracking:r.tracking||void 0,branches:n.all}}async getRemoteUrl(r){try{return(await this.git.remote(["get-url",r]))||void 0}catch(n){if(String(n).contains(r))return;throw n}}async log(r,n=!0,i,s){let a;r&&(a=this.getRelativeRepoPath(r,n));let o={file:a,maxCount:i,"--diff-merges":"first-parent","--name-status":null};return s&&(o[s]=null),(await this.git.log(o)).all.map(c=>{var u,f,d,h;return{...c,author:{name:c.author_name,email:c.author_email},refs:c.refs.split(", ").filter(m=>m.length>0),diff:{...c.diff,files:(f=(u=c.diff)==null?void 0:u.files.map(m=>({...m,status:m.status,path:m.file,hash:c.hash,vaultPath:this.getRelativeVaultPath(m.file),fromPath:m.from,fromVaultPath:m.from!=null?this.getRelativeVaultPath(m.from):void 0,binary:m.binary})))!=null?f:[]},fileName:(h=(d=c.diff)==null?void 0:d.files.first())==null?void 0:h.file}})}async show(r,n,i=!0){let s=this.getRelativeRepoPath(n,i);return this.git.show([r+":"+s])}async getLocalBranchUpstream(r){try{let i=(await this.git.raw(["rev-parse","--abbrev-ref",`${r}@{upstream}`])).trim();return i.length>0?i:void 0}catch(n){return}}getAvailableLocalBranchName(r,n,i){let s=r;if(!i.includes(s))return s;let a=`${r}-${n}`,o=a,l=0;for(;i.includes(o);)l+=1,o=`${a}-${l}`;return o}async checkout(r,n){if(n){let i=`${n}/${r}`,s=await this.branchInfo();if(s.branches.includes(r)&&(await this.getLocalBranchUpstream(r))===i)await this.git.checkout(r);else{let l=this.getAvailableLocalBranchName(r,n,s.branches);await this.git.checkout(["-b",l,i])}}else await this.git.checkout(r);if(this.plugin.settings.submoduleRecurseCheckout){let i=await this.getSubmodulePaths();for(let s of i){let a=await this.git.cwd({path:s,root:!1}).branch();Object.keys(a.branches).includes(r)&&(await this.git.cwd({path:s,root:!1}).checkout(r))}}}async createBranch(r){await this.git.checkout(["-b",r])}async deleteBranch(r,n){await this.git.branch([n?"-D":"-d",r])}async branchIsMerged(r){return!(await this.git.branch(["--no-merged"])).all.contains(r)}async init(){await this.git.init(!1)}async clone(r,n,i){await this.git.clone(r,Ue.join(this.app.vault.adapter.getBasePath(),n),i?["--depth",`${i}`]:[]),await this.setGitInstance()}async setConfig(r,n){n==null?await this.git.raw(["config","--local","--unset",r]):await this.git.addConfig(r,n)}async getConfig(r,n="local"){var s;return(s=(await this.git.getConfig(r.toLowerCase(),n=="all"?void 0:n)).value)!=null?s:void 0}async fetch(r){await this.git.fetch(r!=null?[r]:[])}async setRemote(r,n){(await this.getRemotes()).includes(r)?await this.git.remote(["set-url",r,n]):await this.git.remote(["add",r,n])}async getRemoteBranches(r){let n=await this.git.branch(["-r","--list",`${r}*`]),i=[];for(let s in n.branches)i.push(n.branches[s].name);return i}async getRemotes(){let r=await this.git.remote([]);return r?r.trim().split(` `):[]}async removeRemote(r){await this.git.removeRemote(r)}async updateUpstreamBranch(r){try{await this.git.branch(["--set-upstream-to",r])}catch(n){try{await this.git.branch(["--set-upstream",r])}catch(i){let[s,a]=Qi(r),o=await this.branchInfo();await this.git.push(["--set-upstream",s,`${o.current}:${a}`])}}}updateGitPath(r){return this.setGitInstance()}updateBasePath(r){return this.setGitInstance(!0)}async getDiffString(r,n=!1,i){return n?await this.git.diff(["--cached","--",r]):i?await this.git.show([`${i}`,"--",r]):await this.git.diff(["--",r])}async diff(r,n,i){return await this.git.diff([`${n}..${i}`,"--",r])}async rawCommand(r){let n=r.split(" ");return await this.git.raw(n[0],...n.slice(1))}async getSubmoduleOfFile(r){if(!(await this.app.vault.adapter.exists(Ue.dirname(r))))return;let n=await this.git.raw(["-C",Ue.dirname(r),"rev-parse","--show-toplevel"],l=>l&&console.warn("get-submodule-of-file",l==null?void 0:l.message));if(n=n.trim(),(await this.git.raw(["-C",Ue.dirname(r),"rev-parse","--show-superproject-working-tree"],l=>l&&console.warn("get-submodule-of-file",l==null?void 0:l.message))).trim()==="")return;let a=this.app.vault.adapter.getFullPath(Ue.normalize(r)),o=Ue.relative(n,a);return{submodule:n,relativeFilepath:o}}async getLastCommitTime(){try{let r=await this.git.log({n:1});if(r!=null&&r.latest!=null)return new Date(r.latest.date)}catch(r){if(r instanceof Pr){if(r.message.contains("does not have any commits yet"))return}else throw r}}async isGitInstalled(){let r=this.plugin.localStorage.getGitPath(),n=await $u(r||"git",["--version"],{});if(n.error){if(Ji.Platform.isWin&&!r){this.plugin.log(`Git not found in PATH. Checking standard installation path(${Wd}) of Git for Windows.`);let i=await $u(Wd,["--version"]);if(i.error)return console.error(i.error),!1;this.useDefaultWindowsGitPath=!0}else return console.error(n.error),!1;}else this.useDefaultWindowsGitPath=!1;return!0}convertErrors(r){if(r instanceof Pr){let n=String(r.message);if(n.contains("Could not resolve host")||n.contains("Unable to resolve host")||n.contains("Unable to open connection")||n.match(/ssh: connect to host .*? port .*?: Operation timed out/)!=null||n.match(/ssh: connect to host .*? port .*?: Network is unreachable/)!=null||n.match(/ssh: connect to host .*? port .*?: Undefined error: 0/)!=null)throw new ul(n)}throw r}async isFileTrackedByLFS(r){try{return(await this.git.raw(["check-attr","filter",r])).includes("filter: lfs")}catch(n){let i=n instanceof Error?n.message:String(n);return this.plugin.displayError(`Error checking LFS status: ${i}`),!1}}},iF={hash:"000000",isZeroCommit:!0,summary:""};function xz(t){let r=t.replace(`\r `,` `).split(` `),n={commits:new Map,hashPerLine:[void 0],originalFileLineNrPerLine:[void 0],finalFileLineNrPerLine:[void 0],groupSizePerStartingLine:new Map},i=1;for(let s=0;s=4&&r.groupSizePerStartingLine.set(e,parseInt(t[3])),parseInt(t[2])!==e)throw Error(`git-blame output is out of order: ${e} vs ${t[2]}`);return n}function Ez(t,e,r){let n=t[0],i=t.slice(1).join(" "),s=e.hashPerLine[r],a=e.commits.get(s)||{hash:s,author:{},committer:{},previous:{}};switch(n){case"summary":a.summary=i;break;case"author":a.author.name=i;break;case"author-mail":a.author.email=rF(i);break;case"author-time":a.author.epochSeconds=parseInt(i);break;case"author-tz":a.author.tz=i;break;case"committer":a.committer.name=i;break;case"committer-mail":a.committer.email=rF(i);break;case"committer-time":a.committer.epochSeconds=parseInt(i);break;case"committer-tz":a.committer.tz=i;break;case"previous":a.previous.commitHash=i;break;case"filename":a.previous.filename=i;break}e.commits.set(s,a)}function kz(t){if(t.summary===void 0)throw Error(`Summary not provided for commit: ${t.hash}`);W0(t.author)&&(t.author=void 0),W0(t.committer)&&(t.committer=void 0),W0(t.previous)&&(t.previous=void 0),t.isZeroCommit=!!t.hash.match(/^0*$/)}function W0(t){return!t||Object.keys(t).length===0}function tF(t){return t.length>0&&t[0].trim()===t[0]}function rF(t){let e=t.startsWith("<")?t.substring(1):t;return e.endsWith(">")?e.substring(0,e.length-1):e}p();var PF=require("@codemirror/state");p();var z0=class{constructor(){this.eventsPerFilepath=new Map;this.startRemoveStalesSubscribersInterval()}ifFilepathDefinedTransformSubscribers(e,r){if(e)return this.ensureInitialized(e),r(this.eventsPerFilepath.get(e))}forEachSubscriber(e){this.eventsPerFilepath.forEach(r=>r.forEach(e))}ensureInitialized(e){this.eventsPerFilepath.get(e)||this.eventsPerFilepath.set(e,new Set)}startRemoveStalesSubscribersInterval(){this.removeStalesSubscribersTimer=window.setInterval(()=>this==null?void 0:this.forEachSubscriber(e=>e==null?void 0:e.removeIfStale()),6e4)}clear(){window.clearInterval(this.removeStalesSubscribersTimer),this.eventsPerFilepath.clear()}},es=new z0;p();var Zh=require("@codemirror/state"),sF=Ct(V0());function aF(t,e,r){if(!(t===void 0||e===void 0||r===void 0))return`head${t}-obj${e}-path${r}`}var oF=Zh.StateEffect.define();function lF(t,e,r){return r.update({effects:oF.of({key:t,la:e,lineOffsetsFromUnsavedChanges:new Map})})}var $l=Zh.StateField.define({create:t=>{},update:(t,e)=>{for(let r of e.effects)if(r.is(oF))return r.value;return Az(e,t)},compare:(t,e)=>(t==null?void 0:t.key)===(e==null?void 0:e.key)});function Kh(t){var s;let e=sF.sha256.create();if(!t)return e;let{la:r,key:n,lineOffsetsFromUnsavedChanges:i}=t;e.update(r==="untracked"?"t":"f"),e.update(n);for(let[a,o]of(s=i.entries())!=null?s:[])e.update([a,o]);return e}var xn={get:void 0,save:void 0};function cF(t,e){xn.get=t,xn.save=e}function Qh(t){var e,r;return(r=(e=Xh(t.coloringMaxAge))==null?void 0:e.asDays())!=null?r:Xh(et.lineAuthor.coloringMaxAge).asDays()}function Az(t,e){if(e)return t.changes.empty||t.changes.iterChanges((r,n,i,s)=>{var m;let a=t.startState.doc,{newDoc:o}=t,l=a.lineAt(r).number,c=a.lineAt(n).number,u=o.lineAt(i).number,f=o.lineAt(s).number,d=c-l+1,h=f-u+1;for(let g=u;g<=f;g++){let v=(m=e.lineOffsetsFromUnsavedChanges.get(g))!=null?m:0,w=f===g,b=h-d;w&&(v+=b),e.lineOffsetsFromUnsavedChanges.set(g,v)}}),e}p();function uF(){Il=void 0,Y0=[],Jh=0,tp.clear(),rp.clear(),Fl.clear()}var Il,ep=()=>Il;function fF(t,e){var i;let r=e.length;if(r<((i=Il==null?void 0:Il.length)!=null?i:0))return;Il={gutter:t,length:r,text:e};let n=xn.get();r!==n.gutterSpacingFallbackLength&&(n.gutterSpacingFallbackLength=r,xn.save(n))}var Y0=[],Cz=15,Jh=0;function dF(t){Y0[Jh]=t,Jh=(Jh+1)%Cz}function hF(){return XP(Y0)}var tp=new Map,rp=new Map,Fl=new Set;p();var AF=require("@codemirror/state"),CF=require("@codemirror/view");p();var Q0=require("@codemirror/view"),xF=Ct(V0()),Ol=require("obsidian");p();p();var np={x:-10,y:-10};function pF(){np.x===-10&&window.addEventListener("mousedown",t=>{np.x=t.clientX,np.y=t.clientY})}function mF(){for(let t of Fl)if(Tz(t,np))return t}function Tz(t,e){let{x:r,y:n,width:i,height:s}=t.getBoundingClientRect();return r<=e.x&&e.x<=r+i&&n<=e.y&&e.y<=n+s}var gF="data-commit";function vF(t,e,r){if(e.hasFocus())return;let n=mF();if(!n)return;let i=Rz(n);i&&(!i.isZeroCommit&&!i.isWaitingGutter&&Pz(i,t),X0("showCommitHash",t),X0("authorDisplay",t),X0("dateTimeFormatOptions",t))}function Pz(t,e){e.addItem(r=>r.setTitle("复制提交哈希").setIcon("copy").setSection("obs-git-line-author-copy").onClick(n=>navigator.clipboard.writeText(t.hash)))}function X0(t,e){var l,c;let r,n,i=Ln.plugin.settings.lineAuthor,s=i[t],a=typeof s=="boolean"?s:s!=="hide",o=et.lineAuthor[t];if(t==="showCommitHash")r="显示提交哈希",n=s;else if(t==="authorDisplay"){let u=(l=i.lastShownAuthorDisplay)!=null?l:o;r="Show author "+(a?s:u),n=a?"hide":u}else if(t==="dateTimeFormatOptions"){let u=(c=i.lastShownDateTimeFormatOptions)!=null?c:o;r="Show "+(a?s:u),r+=r.contains("date")?"":" date",n=a?"hide":u}else js(t);e.addItem(u=>u.setTitle(r).setSection("obs-git-line-author-configure").setChecked(a).onClick(f=>{var d,h;return(h=(d=Ln.plugin)==null?void 0:d.settingsTab)==null?void 0:h.lineAuthorSettingHandler(t,n)}))}function wF(t,e,r){r.setAttr(gF,JSON.stringify({hash:t.hash,isZeroCommit:t.isZeroCommit,isWaitingGutter:e}))}function Rz(t){let e=t.getAttr(gF);return e?JSON.parse(e):void 0}p();function sp(t,e){return t==="oldest"?ip(0,!1,e).color:ip(void 0,!0,e).color}function ip(t,e,r){let n=Qh(r),i=Date.now()/1e3,s=t!=null?t:0,o=(e?0:i-s)/60/60/24,l=Math.pow(Math.clamp(o/n,0,1),1/2.3),c=$z(),u=r.colorNew,f=r.colorOld,d=c?.4:1,h=Z0(u.r,f.r,l)*d,m=Z0(u.g,f.g,l)*d,g=Z0(u.b,f.b,l)*d;return{color:`rgba(${h},${m},${g},${c?.75:.25})`,daysSinceCommit:o}}function Z0(t,e,r){return t+(e-t)*r}function $z(){var t;return((t=window.app)==null?void 0:t.getTheme())==="obsidian"}function yF(t){document.body.style.setProperty("--obs-git-gutter-text",t.textColorCss)}p();function bF(t,e,r){let n;for(let i=e;i<=r;i++){let s=t.hashPerLine[i],a=t.commits.get(s);(!n||a.isZeroCommit||Iz(a,n))&&(n=a)}return n}function Iz(t,e){var i,s,a,o;let r=(s=(i=t.author)==null?void 0:i.epochSeconds)!=null?s:0,n=(o=(a=e.author)==null?void 0:a.epochSeconds)!=null?o:0;return r>n}var _F="-",Fz="+",Oz=3,Mz="*",Dz=/\S/g,Lz="%",Ml=class t extends Q0.GutterMarker{constructor(r){super();this.text=r}eq(r){return r instanceof t&&this.text===r.text}toDOM(){return document.createTextNode(this.text)}destroy(r){}},K0=class extends Q0.GutterMarker{constructor(r,n,i,s,a,o){super();this.lineAuthoring=r;this.startLine=n;this.endLine=i;this.key=s;this.settings=a;this.options=o;this.point=!1;this.elementClass="obs-git-blame-gutter"}eq(r){return this.key===(r==null?void 0:r.key)&&this.startLine===(r==null?void 0:r.startLine)&&this.endLine===(r==null?void 0:r.endLine)&&(this==null?void 0:this.options)===(r==null?void 0:r.options)}toDOM(){var r;return this.precomputedDomProvider=(r=this.precomputedDomProvider)!=null?r:this.computeDom(),this.precomputedDomProvider()}destroy(r){r&&(document.body.contains(r)||Fl.delete(r))}computeDom(){let r=bF(this.lineAuthoring,this.startLine,this.endLine),n=r.isZeroCommit?"":this.renderNonZeroCommit(r);return!r.isZeroCommit&&this.options!=="waiting-for-result"?fF(this,n):n=this.adaptTextForFakeCommit(r,n,this.options),this.createHtmlNode(r,n,this.options==="waiting-for-result")}createHtmlNode(r,n,i){var c,u,f,d,h,m;let s=window.createDiv();s.setText(n);let{color:a,daysSinceCommit:o}=ip((c=r==null?void 0:r.author)==null?void 0:c.epochSeconds,r==null?void 0:r.isZeroCommit,this.settings);s.style.backgroundColor=a,s.setAttribute("data-author",(f=(u=r==null?void 0:r.author)==null?void 0:u.name)!=null?f:""),s.setAttribute("data-author-email",(h=(d=r==null?void 0:r.author)==null?void 0:d.email)!=null?h:""),(0,Ol.setTooltip)(s,(m=r==null?void 0:r.summary)!=null?m:""),wF(r,i,s);function l(){let g=s.cloneNode(!0);return Fl.add(g),i||dF(o),g}return l}renderNonZeroCommit(r){let n=this.settings.showCommitHash?this.renderHash(r):"",i=this.settings.authorDisplay==="hide"?"":`${this.renderAuthorName(r,this.settings.authorDisplay)}`,s=this.settings.dateTimeFormatOptions==="hide"?"":`${this.renderAuthoringDate(r,this.settings.dateTimeFormatOptions,this.settings.dateTimeFormatCustomString,this.settings.dateTimeTimezone)}`;return[n,i,s].filter(o=>o.length>=1).join(" ")}renderHash(r){return r.hash.substring(0,6)}renderAuthorName(r,n){var o,l,c,u;let i=(l=(o=r==null?void 0:r.author)==null?void 0:o.name)!=null?l:"",s=i.split(" ").filter(f=>f.length>=1),a;switch(n){case"initials":a=s.map(f=>f[0].toUpperCase()).join("");break;case"first name":a=(c=s.first())!=null?c:_F;break;case"last name":a=(u=s.last())!=null?u:_F;break;case"full":a=i;break;default:return js(n)}return ZP(r==null?void 0:r.author,r==null?void 0:r.committer)||(a=a+Mz),a}renderAuthoringDate(r,n,i,s){var c;let a="?";if(((c=r==null?void 0:r.author)==null?void 0:c.epochSeconds)===void 0)return a;let o;switch(n){case"date":o=jd;break;case"datetime":o=Rv;break;case"custom":o=i;break;case"natural language":o=u=>{let f=u.diff((0,Ol.moment)());return Ol.moment.duration(f).humanize(!0)};break;default:return js(n)}let l=Ol.moment.unix(r.author.epochSeconds);switch(s){case"viewer-local":break;case"author-local":l=l.utcOffset(r.author.tz),typeof o=="string"&&(o+=" Z");break;case"utc0000":l=l.utc(),typeof o=="string"&&(o+="[Z]");break;default:return js(s)}return typeof o=="string"?l.format(o):o(l)}adaptTextForFakeCommit(r,n,i){var l,c,u,f;let s=(c=(l=ep())==null?void 0:l.text)!=null?c:n,a=i!=="waiting-for-result"&&r.isZeroCommit?Fz:Lz;n=s.replace(Dz,a);let o=(f=(u=xn.get())==null?void 0:u.gutterSpacingFallbackLength)!=null?f:n.length;if(n=KP(n,o,a),i!=="waiting-for-result"&&r.isZeroCommit){let d=Math.min(o,Oz);n=QP(n,o-d)}return n}};function La(t,e,r,n,i,s){let a=xF.sha256.create();a.update(JSON.stringify(i)),a.update(`s${e}-e${r}-k${n}-o${s}`);let o=a.hex(),l=tp.get(o);if(l)return l;let c=new K0(t,e,r,n,i,s);return tp.set(o,c),c}p();var SF=require("obsidian");function J0(){var e,r;let t=(r=(e=xn.get())==null?void 0:e.gutterSpacingFallbackLength)!=null?r:et.lineAuthor.gutterSpacingFallbackLength;return new Ml(Array(t).fill("-").join(""))}function ey(t){let{lineAuthoring:e,ageForInitialRender:r}=Nz(t);return La(e,1,1,"initialGutter"+r,t,"waiting-for-result")}function Nz(t){var s;let e=(s=hF())!=null?s:Qh(t)*.25,r=(0,SF.moment)().add(-e,"days"),n={name:"",epochSeconds:YP(r),tz:"+0000"},i={hash:"waiting-for-result",author:n,committer:n,isZeroCommit:!1};return{lineAuthoring:{hashPerLine:[void 0,"waiting-for-result"],commits:new Map([["waiting-for-result",i]])},ageForInitialRender:e}}p();function EF(t,e){return La({hashPerLine:[void 0,"000000"],commits:new Map([["000000",iF]])},1,1,t,e)}var ty=new Ml(""),TF=(0,CF.gutter)({class:"line-author-gutter-container",markers(t){let e=t.state.field($l,!1);return Bz(t,e)},lineMarkerChange(t){let e=Kh(t.state.field($l));return Kh(t.startState.field($l))!==e},renderEmptyElements:!0,initialSpacer:t=>(kF(t),J0()),updateSpacer:(t,e)=>{var r,n;return kF(e.view),(n=(r=ep())==null?void 0:r.gutter)!=null?n:J0()}});function Bz(t,e){let r=Kh(e),n=t.state.doc,i=new Map;for(let u=1;u<=n.lines;u++){let f=n.line(u).from,d=t.lineBlockAt(f).to;i.set(u,[f,d]),r.update([f,d,0])}let s=xn.get();r.update("s"+Object.values(xn).join(","));let a=r.hex(),o=rp.get(a);if(o)return o;let{result:l,allowCache:c}=Hz(n,i,s,e);return c&&rp.set(a,l),l}function Hz(t,e,r,n){let i=!0,s=t.lines,a=[];function o(f,d,h){return a.push(h.range(f,d))}let l=Uz(s,n),c=t.length===0,u=t.iterLines(s,s+1).next().value==="";for(let f=1;f<=s;f++){let[d,h]=e.get(f),m=t.lineAt(h).number;if(c){o(d,h,ty);continue}if(f===s&&u){o(d,h,ty);continue}if(n===void 0){o(d,h,ey(r)),i=!1;continue}let{key:g,la:v}=n;if(v==="untracked"){o(d,h,EF(v,r));continue}let w=v.hashPerLine.length-1,b=l[f],k=l[m];if(k&&k>w&&o(d,h,ty),b!==void 0&&Zw(1,b,w)&&k!==void 0&&Zw(1,k,w)){o(d,h,La(v,b,k,g,r));continue}if(w<1){o(d,h,ey(r)),i=!1;continue}let x=Math.clamp(b!=null?b:f,1,w),E=Math.clamp(k!=null?k:m,1,w);o(d,h,La(v,x,E,g+"computing",r,"waiting-for-result"))}return{result:AF.RangeSet.of(a,!0),allowCache:i}}function Uz(t,e){if(!(e!=null&&e.lineOffsetsFromUnsavedChanges))return Array.from(new Array(t+1),i=>i);let r=[void 0],n=0;for(let i=1;i<=t;i++){let s=e.lineOffsetsFromUnsavedChanges.get(i);n+=s!=null?s:0,r[i]=s===void 0?i-n:void 0}return r}function kF(t){t.dom.querySelectorAll(".cm-gutters").forEach(r=>{r!=null&&r.style&&(r.style.marginLeft||(r.style.marginLeft="unset"))})}var ap=class{constructor(e){this.plugin=e;this.lineAuthorings=new Map}async trackChanged(e){return this.trackChangedHelper(e).catch(r=>(console.warn("Git: Error in trackChanged."+r),Promise.reject(r)))}async trackChangedHelper(e){if(e){if(e.path===void 0){console.warn("Git: Attempted to track change of undefined filepath. Unforeseen situation.");return}return this.computeLineAuthorInfo(e.path)}}destroy(){this.lineAuthorings.clear(),uF()}async computeLineAuthorInfo(e){let r=this.plugin.editorIntegration.lineAuthoringFeature.isAvailableOnCurrentPlatform().gitManager,n=await r.submoduleAwareHeadRevisonInContainingDirectory(e),i=await r.hashObject(e),s=aF(n,i,e);if(s!==void 0){if(!this.lineAuthorings.has(s)){let a=await r.blame(e,this.plugin.settings.lineAuthor.followMovement,this.plugin.settings.lineAuthor.ignoreWhitespace);this.lineAuthorings.set(s,a)}this.notifyComputationResultToSubscribers(e,s)}}notifyComputationResultToSubscribers(e,r){es.ifFilepathDefinedTransformSubscribers(e,n=>n.forEach(i=>i.notifyLineAuthoring(r,this.lineAuthorings.get(r))))}},RF=PF.Prec.high([$l,TF]);var Gz="https://momentjs.com/docs/#/parsing/string-format/",jz="https://publish.obsidian.md/git-doc/Line+Authoring",op=class extends U.PluginSettingTab{constructor(r,n){super(r,n);this.plugin=n;this.lineAuthorColorSettings=new Map;this.icon="git-pull-request"}get settings(){return this.plugin.settings}display(){let{containerEl:r}=this,n=this.plugin,i;n.settings.differentIntervalCommitAndPush?i=" 提交 ":i=" 提交并同步 ";let s=n.gitReady;r.empty(),s||(r.createEl("p",{text:"Git尚未就绪。当所有设置都正确时,您可以配置提交同步等。"}),r.createEl("br"));let a;if(s){new U.Setting(r).setName("自动").setHeading(),new U.Setting(r).setName("用于自动提交和同步的分割计时器").setDesc("允许使用一个间隔进行提交,另一个间隔进行同步。").addToggle(f=>f.setValue(n.settings.differentIntervalCommitAndPush).onChange(async d=>{n.settings.differentIntervalCommitAndPush=d,await n.saveSettings(),n.automaticsManager.reload("commit","push"),this.refreshDisplayWithDelay()})),new U.Setting(r).setName(`自动${i}间隔(分钟)`).setDesc(`${n.settings.differentIntervalCommitAndPush?"Commit":"Commit and sync"} changes every X minutes. Set to 0 (default) to disable. (See below setting for further configuration!)`).addText(f=>{f.inputEl.type="number",this.setNonDefaultValue({text:f,settingsProperty:"autoSaveInterval"}),f.setPlaceholder(String(et.autoSaveInterval)),f.onChange(async d=>{d!==""?n.settings.autoSaveInterval=Number(d):n.settings.autoSaveInterval=et.autoSaveInterval,await n.saveSettings(),n.automaticsManager.reload("commit")})}),a=new U.Setting(r).setName(`在停止文件编辑后自动 ${i} `).setDesc(`Requires the ${i} interval not to be 0. If turned on, do auto ${i} every ${JP(n.settings.autoSaveInterval)} after stopping file edits. This also prevents auto ${i} while editing a file. If turned off, it's independent from the last file edit.`).addToggle(f=>f.setValue(n.settings.autoBackupAfterFileChange).onChange(async d=>{n.settings.autoBackupAfterFileChange=d,this.refreshDisplayWithDelay(),await n.saveSettings(),n.automaticsManager.reload("commit")})),this.mayDisableSetting(a,n.settings.setLastSaveToLastCommit),a=new U.Setting(r).setName(`在最新提交后自动 ${i} `).setDesc(`如果启用,将最后一次自动 ${i} 时间戳设置为最新的提交时间戳。这减少了在进行手动提交时自动 ${i} 的频率。`).addToggle(f=>f.setValue(n.settings.setLastSaveToLastCommit).onChange(async d=>{n.settings.setLastSaveToLastCommit=d,await n.saveSettings(),n.automaticsManager.reload("commit"),this.refreshDisplayWithDelay()})),this.mayDisableSetting(a,n.settings.autoBackupAfterFileChange),a=new U.Setting(r).setName("自动推送间隔(分钟)").setDesc("每X分钟推送提交。设置为0(默认)以禁用。").addText(f=>{f.inputEl.type="number",this.setNonDefaultValue({text:f,settingsProperty:"autoPushInterval"}),f.setPlaceholder(String(et.autoPushInterval)),f.onChange(async d=>{d!==""?n.settings.autoPushInterval=Number(d):n.settings.autoPushInterval=et.autoPushInterval,await n.saveSettings(),n.automaticsManager.reload("push")})}),this.mayDisableSetting(a,!n.settings.differentIntervalCommitAndPush),new U.Setting(r).setName("自动拉取间隔(分钟)").setDesc("每 X 分钟拉取更改。设置为 0(默认)以禁用。").addText(f=>{f.inputEl.type="number",this.setNonDefaultValue({text:f,settingsProperty:"autoPullInterval"}),f.setPlaceholder(String(et.autoPullInterval)),f.onChange(async d=>{d!==""?n.settings.autoPullInterval=Number(d):n.settings.autoPullInterval=et.autoPullInterval,await n.saveSettings(),n.automaticsManager.reload("pull")})}),new U.Setting(r).setName(`Auto ${i} only staged files`).setDesc(`If turned on, only staged files are committed on ${i}. If turned off, all changed files are committed.`).addToggle(f=>f.setValue(n.settings.autoCommitOnlyStaged).onChange(async d=>{n.settings.autoCommitOnlyStaged=d,await n.saveSettings()})),new U.Setting(r).setName(`在自动 ${i} 中指定自定义提交消息`).setDesc("您将收到一个弹出窗口以指定您的消息。").addToggle(f=>f.setValue(n.settings.customMessageOnAutoBackup).onChange(async d=>{n.settings.customMessageOnAutoBackup=d,await n.saveSettings(),this.refreshDisplayWithDelay()})),a=new U.Setting(r).setName(`自动 ${i} 的提交信息`).setDesc("可用占位符:{{date}}(见下文)、{{hostname}}(见下文)、{{numFiles}}(提交中更改的文件数量)和{{files}}(提交信息中的更改文件)。").addTextArea(f=>{f.setPlaceholder(et.autoCommitMessage).onChange(async d=>{d===""?n.settings.autoCommitMessage=et.autoCommitMessage:n.settings.autoCommitMessage=d,await n.saveSettings()}),this.setNonDefaultValue({text:f,settingsProperty:"autoCommitMessage"})}),this.mayDisableSetting(a,n.settings.customMessageOnAutoBackup),new U.Setting(r).setName("提交信息").setHeading();let c=new U.Setting(r).setName("手动提交时的提交信息").setDesc("Available placeholders: {{date}} (see below), {{hostname}} (see below), {{numFiles}} (number of changed files in the commit) and {{files}} (changed files in commit message). Leave empty to require manual input on each commit.");c.addTextArea(f=>{c.addButton(d=>{d.setIcon("reset").setTooltip(`Set to default: "${et.commitMessage}"`).onClick(()=>{f.setValue(et.commitMessage),f.onChanged()})}),f.setValue(n.settings.commitMessage),f.onChange(async d=>{n.settings.commitMessage=d,await n.saveSettings()})}),U.Platform.isDesktopApp&&new U.Setting(r).setName("提交信息脚本").setDesc("一个使用 'sh -c' 运行的脚本,用于生成提交消息。可用于借助 AI 工具生成提交消息。可用占位符:{{hostname}}、{{date}}。").addText(f=>{f.onChange(async d=>{d===""?n.settings.commitMessageScript=et.commitMessageScript:n.settings.commitMessageScript=d,await n.saveSettings()}),this.setNonDefaultValue({text:f,settingsProperty:"commitMessageScript"})});let u=new U.Setting(r).setName("{{date}} 占位符格式").addMomentFormat(f=>f.setDefaultFormat(n.settings.commitDateFormat).setValue(n.settings.commitDateFormat).onChange(async d=>{n.settings.commitDateFormat=d,await n.saveSettings()}));u.descEl.innerHTML=` Specify custom date format. E.g. "${$v}. See Moment.js for more formats.`,new U.Setting(r).setName("{{hostname}} 占位符替换").setDesc("为每台设备指定自定义主机名。在桌面端未设置时默认为操作系统主机名。").addText(f=>{var d;return f.setValue((d=n.localStorage.getHostname())!=null?d:"").onChange(h=>{n.localStorage.setHostname(h)})}),new U.Setting(r).setName("预览提交信息").addButton(f=>f.setButtonText("预览").onClick(async()=>{let d=await n.gitManager.formatCommitMessage(n.settings.commitMessage);new U.Notice(`${d}`)})),new U.Setting(r).setName("在提交内容中列出受提交影响的文件名").addToggle(f=>f.setValue(n.settings.listChangedFilesInMessageBody).onChange(async d=>{n.settings.listChangedFilesInMessageBody=d,await n.saveSettings()})),new U.Setting(r).setName("拉取").setHeading(),n.gitManager instanceof Se&&new U.Setting(r).setName("合并策略").setDesc("决定如何将远程分支中的提交集成到本地分支中。").addDropdown(f=>{let d={merge:"合并",rebase:"变基",reset:"其他同步服务 (仅更新 HEAD,不触及工作目录)"};f.addOptions(d),f.setValue(n.settings.syncMethod),f.onChange(async h=>{n.settings.syncMethod=h,await n.saveSettings()})}),new U.Setting(r).setName("冲突时的合并策略").setDesc("Decide how to solve conflicts when pulling remote changes. This can be used to favor your local changes or the remote changes automatically.").addDropdown(f=>{let d={none:"None (git default)",ours:"Our changes",theirs:"Their changes"};f.addOptions(d),f.setValue(n.settings.mergeStrategy),f.onChange(async h=>{n.settings.mergeStrategy=h,await n.saveSettings()})}),new U.Setting(r).setName("开机时拉取").setDesc("自动在 Obsidian 启动时拉取提交。").addToggle(f=>f.setValue(n.settings.autoPullOnBoot).onChange(async d=>{n.settings.autoPullOnBoot=d,await n.saveSettings()})),new U.Setting(r).setName("提交并同步").setDesc("使用默认设置的 提交和同步 意味着暂存所有内容 -> 提交 -> 拉取 -> 推送。理想情况下,这是一个你定期执行的单一操作,用于保持本地和远程仓库的同步。").setHeading(),a=new U.Setting(r).setName("提交并同步时推送到远程仓库").setDesc(`Most of the time you want to push after committing. Turning this off turns a commit-and-sync action into commit ${n.settings.pullBeforePush?"and pull ":""}only. It will still be called commit-and-sync.`).addToggle(f=>f.setValue(!n.settings.disablePush).onChange(async d=>{n.settings.disablePush=!d,this.refreshDisplayWithDelay(),await n.saveSettings()})),new U.Setting(r).setName("提交并同步时从远程仓库拉取").setDesc(`On commit-and-sync, pull commits as well. Turning this off turns a commit-and-sync action into commit ${n.settings.disablePush?"":"and push "}only.`).addToggle(f=>f.setValue(n.settings.pullBeforePush).onChange(async d=>{n.settings.pullBeforePush=d,this.refreshDisplayWithDelay(),await n.saveSettings()})),n.gitManager instanceof Se&&(new U.Setting(r).setName("Hunk management").setDesc("分块是在编辑器中显示的成组行更改区段。").setHeading(),new U.Setting(r).setName("Signs").setDesc("这允许你在编辑器中通过彩色标记查看更改,并对单个分块进行暂存/重置/预览。").addToggle(f=>f.setValue(n.settings.hunks.showSigns).onChange(async d=>{n.settings.hunks.showSigns=d,await n.saveSettings(),n.editorIntegration.refreshSignsSettings()})),new U.Setting(r).setName("差异块命令").setDesc("Adds commands to stage/reset individual Git diff hunks and navigate between them via 'Go to next/prev hunk' commands.").addToggle(f=>f.setValue(n.settings.hunks.hunkCommands).onChange(async d=>{n.settings.hunks.hunkCommands=d,await n.saveSettings(),n.editorIntegration.refreshSignsSettings()})),new U.Setting(r).setName("包含行更改摘要的状态栏").addDropdown(f=>f.addOptions({disabled:"Disabled",colored:"Colored",monochrome:"Monochrome"}).setValue(n.settings.hunks.statusBar).onChange(async d=>{n.settings.hunks.statusBar=d,await n.saveSettings(),n.editorIntegration.refreshSignsSettings()})),new U.Setting(r).setName("线路作者信息").setHeading(),this.addLineAuthorInfoSettings())}new U.Setting(r).setName("历史视图").setHeading(),new U.Setting(r).setName("显示作者").setDesc("在历史视图中显示提交的作者。").addDropdown(c=>{let u={hide:"隐藏",full:"完整",initials:"首字母"};c.addOptions(u),c.setValue(n.settings.authorInHistoryView),c.onChange(async f=>{n.settings.authorInHistoryView=f,await n.saveSettings(),await n.refresh()})}),new U.Setting(r).setName("显示日期").setDesc("在历史视图中显示提交的日期。使用 {{date}} 占位符格式来显示日期。").addToggle(c=>c.setValue(n.settings.dateInHistoryView).onChange(async u=>{n.settings.dateInHistoryView=u,await n.saveSettings(),await n.refresh()})),new U.Setting(r).setName("源代码管理视图").setHeading(),new U.Setting(r).setName("在文件更改时自动刷新源代码管理视图").setDesc("在较慢的机器上,这可能会导致延迟。如果是这样,请禁用此选项。").addToggle(c=>c.setValue(n.settings.refreshSourceControl).onChange(async u=>{n.settings.refreshSourceControl=u,await n.saveSettings()})),new U.Setting(r).setName("源代码管理视图刷新间隔").setDesc("文件更改后等待多长时间刷新刷新源代码管理视图,单位毫秒").addText(c=>{c.inputEl.type="number",this.setNonDefaultValue({text:c,settingsProperty:"refreshSourceControlTimer"}),c.setPlaceholder(String(et.refreshSourceControlTimer)),c.onChange(async f=>{f!==""&&Number.isInteger(Number(f))?n.settings.refreshSourceControlTimer=Math.max(Number(f),500):n.settings.refreshSourceControlTimer=et.refreshSourceControlTimer,await n.saveSettings(),n.setRefreshDebouncer()})}),new U.Setting(r).setName("其他").setHeading(),n.gitManager instanceof Se&&new U.Setting(r).setName("差异化视图样式").setDesc("设置差异视图的样式。请注意,Split 模式下的实际差异不是由Git生成的,而是由编辑器本身生成的,因此,它可能不同于Git生成的diff。这样做的一个优点是可以在该视图中编辑文本。").addDropdown(c=>{let u={split:"Split",git_unified:"Unified"};c.addOptions(u),c.setValue(n.settings.diffStyle),c.onChange(async f=>{n.settings.diffStyle=f,await n.saveSettings()})}),new U.Setting(r).setName("禁用信息通知").setDesc("禁用git操作的信息通知,以尽量减少分心(请参阅状态栏以获取更新)").addToggle(c=>c.setValue(n.settings.disablePopups).onChange(async u=>{n.settings.disablePopups=u,this.refreshDisplayWithDelay(),await n.saveSettings()})),new U.Setting(r).setName("警用错误通知").setDesc("禁用任何类型的错误通知以减少干扰(更新请查看状态栏)。").addToggle(c=>c.setValue(!n.settings.showErrorNotices).onChange(async u=>{n.settings.showErrorNotices=!u,await n.saveSettings()})),n.settings.disablePopups||new U.Setting(r).setName("隐藏无更改的通知").setDesc("当没有需要提交或推送的更改时,不显示通知。").addToggle(c=>c.setValue(n.settings.disablePopupsForNoChanges).onChange(async u=>{n.settings.disablePopupsForNoChanges=u,await n.saveSettings()})),new U.Setting(r).setName("显示状态栏").setDesc("Obsidian必须重启以使更改生效。").addToggle(c=>c.setValue(n.settings.showStatusBar).onChange(async u=>{n.settings.showStatusBar=u,await n.saveSettings()})),new U.Setting(r).setName("文件菜单集成").setDesc("将 暂存、取消暂存、添加到.gitignore 三个按钮添加到文件菜单中").addToggle(c=>c.setValue(n.settings.showFileMenu).onChange(async u=>{n.settings.showFileMenu=u,await n.saveSettings()})),new U.Setting(r).setName("显示分支状态栏").setDesc("Obsidian必须重启以使更改生效。").addToggle(c=>c.setValue(n.settings.showBranchStatusBar).onChange(async u=>{n.settings.showBranchStatusBar=u,await n.saveSettings()})),new U.Setting(r).setName("显示状态栏中修改文件的数量").addToggle(c=>c.setValue(n.settings.changedFilesInStatusBar).onChange(async u=>{n.settings.changedFilesInStatusBar=u,await n.saveSettings()})),n.gitManager instanceof Hn?new U.Setting(r).setName("身份验证/提交作者").setHeading():new U.Setting(r).setName("提交作者").setHeading(),n.gitManager instanceof Hn&&new U.Setting(r).setName("在你的 Git 服务器上的用户名。例如:你在 GitHub 上的用户名").addText(c=>{var u;c.setValue((u=n.localStorage.getUsername())!=null?u:""),c.onChange(f=>{n.localStorage.setUsername(f)})}),n.gitManager instanceof Hn&&new U.Setting(r).setName("密码/个人访问令牌").setDesc("输入您的密码。您将无法再次看到它。").addText(c=>{c.inputEl.autocapitalize="off",c.inputEl.autocomplete="off",c.inputEl.spellcheck=!1,c.onChange(u=>{n.localStorage.setPassword(u)})}),n.gitReady&&new U.Setting(r).setName("提交的作者名称").addText(async c=>{var u;c.setValue((u=await n.gitManager.getConfig("user.name"))!=null?u:""),c.onChange(async f=>{await n.gitManager.setConfig("user.name",f==""?void 0:f)})}),n.gitReady&&new U.Setting(r).setName("提交作者的电子邮件").addText(async c=>{var u;c.setValue((u=await n.gitManager.getConfig("user.email"))!=null?u:""),c.onChange(async f=>{await n.gitManager.setConfig("user.email",f==""?void 0:f)})}),new U.Setting(r).setName("高级").setDesc("这些设置通常不需要更改,但在特殊配置下可能需要。").setHeading(),n.gitManager instanceof Se&&(new U.Setting(r).setName("更新子模块").setDesc("\"提交和同步\"以及\"拉取\"处理子模块。缺失的功能:冲突文件、拉取/推送/提交文件的数量。每个子模块需要设置跟踪分支。").addToggle(c=>c.setValue(n.settings.updateSubmodules).onChange(async u=>{n.settings.updateSubmodules=u,await n.saveSettings()})),n.settings.updateSubmodules&&new U.Setting(r).setName("子模块递归检出/切换").setDesc("每当根仓库发生检出时,递归检出子模块(如果分支存在)。").addToggle(c=>c.setValue(n.settings.submoduleRecurseCheckout).onChange(async u=>{n.settings.submoduleRecurseCheckout=u,await n.saveSettings()}))),n.gitManager instanceof Se&&new U.Setting(r).setName("自定义 Git 路径").setDesc("指定 Git 二进制/可执行文件的路径。Git 应已在你的 PATH 中。仅在自定义 Git 安装时才需要。").addText(c=>{var u;c.setValue((u=n.localStorage.getGitPath())!=null?u:""),c.setPlaceholder("git"),c.onChange(f=>{n.localStorage.setGitPath(f),n.gitManager.updateGitPath(f||"git").catch(d=>n.displayError(d))})}),n.gitManager instanceof Se&&new U.Setting(r).setName("额外的环境变量").setDesc("使用每一行作为新环境变量,格式为 KEY=VALUE 。").addTextArea(c=>{c.setPlaceholder("GIT_DIR=/path/to/git/目录"),c.setValue(n.localStorage.getEnvVars().join(` `)),c.onChange(u=>{n.localStorage.setEnvVars(u.split(` `))})}),n.gitManager instanceof Se&&new U.Setting(r).setName("其他 PATH 环境变量路径").setDesc("每行使用一个路径").addTextArea(c=>{c.setValue(n.localStorage.getPATHPaths().join(` `)),c.onChange(u=>{n.localStorage.setPATHPaths(u.split(` `))})}),n.gitManager instanceof Se&&new U.Setting(r).setName("重新加载新的环境变量").setDesc("移除之前添加的环境变量直到 Obsidian 重启才生效。").addButton(c=>{c.setButtonText("重新加载"),c.setCta(),c.onClick(async()=>{await n.gitManager.setGitInstance()})}),new U.Setting(r).setName("自定义基础路径(Git 仓库路径)").setDesc(` 设置 Git 二进制文件应从哪个存储库执行的相对路径。主要用于设置 Git 仓库的路径,只有当 Git 仓库位于分库根目录之下时才需要。在 Windows 下使用"\\"代替"/"。 `).addText(c=>{c.setValue(n.settings.basePath),c.setPlaceholder("目录/带 Git 仓库的目录"),c.onChange(async u=>{n.settings.basePath=u,await n.saveSettings(),n.gitManager.updateBasePath(u||"").catch(f=>n.displayError(f))})}),new U.Setting(r).setName("自定义 Git 目录路径(取代 .git)").setDesc("对应 GIT_DIR 环境变量。需要重启 Obsidian 才能生效。在 Windows 上使用 \"\\\" 代替 \"/\"。").addText(c=>{c.setValue(n.settings.gitDir),c.setPlaceholder(".git"),c.onChange(async u=>{n.settings.gitDir=u,await n.saveSettings()})}),new U.Setting(r).setName("在此设备上禁用").setDesc("禁用此设备上的插件。此设置不会同步。").addToggle(c=>c.setValue(n.localStorage.getPluginDisabled()).onChange(u=>{n.localStorage.setPluginDisabled(u),u?n.unloadPlugin():n.init({fromReload:!0}).catch(f=>n.displayError(f)),new U.Notice("Obsidian 必须重新启动以使更改生效。")})),new U.Setting(r).setName("支持").setHeading(),new U.Setting(r).setName("捐赠").setDesc("如果您喜欢这个插件,请考虑捐赠以支持持续开发。").addButton(c=>{c.buttonEl.outerHTML="在 ko-fi.com 请我喝咖啡"});let o=r.createDiv();o.setAttr("align","center"),o.setAttr("style","margin: var(--size-4-2)");let l=o.createEl("button");if(l.setText("复制调试信息"),l.onclick=async()=>{await window.navigator.clipboard.writeText(JSON.stringify({settings:this.plugin.settings,pluginVersion:this.plugin.manifest.version},null,4)),new U.Notice("调试信息已复制到剪贴板。可能包含敏感信息!")},U.Platform.isDesktopApp){let c=r.createDiv();c.setAttr("align","center"),c.setText(`调试和日志记录: 使用以下命令打开控制台,即可查看本插件和其他所有插件的日志`);let u=r.createDiv();u.setAttr("align","center"),u.addClass("obsidian-git-shortcuts"),U.Platform.isMacOS===!0?u.createEl("kbd",{text:"CMD (⌘) + OPTION (⌥) + I"}):u.createEl("kbd",{text:"CTRL + SHIFT + I"})}}mayDisableSetting(r,n){n&&(r.setDisabled(n),r.setClass("obsidian-git-disabled"))}configureLineAuthorShowStatus(r){this.settings.lineAuthor.show=r,this.plugin.saveSettings(),r?this.plugin.editorIntegration.activateLineAuthoring():this.plugin.editorIntegration.deactiveLineAuthoring()}async lineAuthorSettingHandler(r,n){this.settings.lineAuthor[r]=n,await this.plugin.saveSettings(),this.plugin.editorIntegration.lineAuthoringFeature.refreshLineAuthorViews()}beforeSaveSettings(){let r=this.settings.lineAuthor;r.authorDisplay!=="hide"&&(r.lastShownAuthorDisplay=r.authorDisplay),r.dateTimeFormatOptions!=="hide"&&(r.lastShownDateTimeFormatOptions=r.dateTimeFormatOptions)}addLineAuthorInfoSettings(){let r=new U.Setting(this.containerEl).setName("显示每行旁边的提交作者信息");if(this.plugin.editorIntegration.lineAuthoringFeature.isAvailableOnCurrentPlatform()||r.setDesc("目前仅在桌面版可用。").setDisabled(!0),r.descEl.innerHTML=` Feature guide and quick examples
The commit hash, author name and authoring date can all be individually toggled.
Hide everything, to only show the age-colored sidebar.`,r.addToggle(n=>n.setValue(this.settings.lineAuthor.show).onChange(i=>{this.configureLineAuthorShowStatus(i),this.refreshDisplayWithDelay()})),this.settings.lineAuthor.show){let n=new U.Setting(this.containerEl).setName("跟踪移动并跨文件和提交进行复制").setDesc("").addDropdown(s=>{s.addOptions({inactive:"不跟踪 (默认)","same-commit":"仅在当前提交中跟踪","all-commits":"在所有提交中跟踪 (可能较慢)"}),s.setValue(this.settings.lineAuthor.followMovement),s.onChange(a=>this.lineAuthorSettingHandler("followMovement",a))});if(n.descEl.innerHTML=` By default (deactivated), each line only shows the newest commit where it was changed.
With same commit, cut-copy-paste-ing of text is followed within the same commit and the original commit of authoring will be shown.
With all commits, cut-copy-paste-ing text inbetween multiple commits will be detected.
It uses git-blame and for matches (at least ${qd} characters) within the same (or all) commit(s), the originating commit's information is shown.`,new U.Setting(this.containerEl).setName("显示提交哈希值").addToggle(s=>{s.setValue(this.settings.lineAuthor.showCommitHash),s.onChange(a=>this.lineAuthorSettingHandler("showCommitHash",a))}),new U.Setting(this.containerEl).setName("显示作者姓名").setDesc("作者的显示方式(如果有)").addDropdown(s=>{let a={hide:"隐藏",initials:"首字母 (默认)","first name":"名","last name":"姓",full:"全名"};s.addOptions(a),s.setValue(this.settings.lineAuthor.authorDisplay),s.onChange(async o=>this.lineAuthorSettingHandler("authorDisplay",o))}),new U.Setting(this.containerEl).setName("显示创建日期").setDesc("如果以及如何显示该行的创作日期和时间").addDropdown(s=>{let a={hide:"隐藏",date:"日期 (默认)",datetime:"日期和时间","natural language":"自然语言",custom:"自定义"};s.addOptions(a),s.setValue(this.settings.lineAuthor.dateTimeFormatOptions),s.onChange(async o=>{await this.lineAuthorSettingHandler("dateTimeFormatOptions",o),this.refreshDisplayWithDelay()})}),this.settings.lineAuthor.dateTimeFormatOptions==="custom"){let s=new U.Setting(this.containerEl);s.setName("自定义作者日期格式").addText(a=>{a.setValue(this.settings.lineAuthor.dateTimeFormatCustomString),a.setPlaceholder("YYYY-MM-DD HH:mm"),a.onChange(async o=>{await this.lineAuthorSettingHandler("dateTimeFormatCustomString",o),s.descEl.innerHTML=this.previewCustomDateTimeDescriptionHtml(o)})}),s.descEl.innerHTML=this.previewCustomDateTimeDescriptionHtml(this.settings.lineAuthor.dateTimeFormatCustomString)}new U.Setting(this.containerEl).setName("创建日期显示时区:").addDropdown(s=>{let a={"viewer-local":"我的本地 (默认)","author-local":"作者的本地",utc0000:"UTC+0000/Z"};s.addOptions(a),s.setValue(this.settings.lineAuthor.dateTimeTimezone),s.onChange(async o=>this.lineAuthorSettingHandler("dateTimeTimezone",o))}).descEl.innerHTML=` 显示创作日期的时区。 可以是您的本地时区(默认), 提交时作者的时区,或者 UTC\xB100:00. `;let i=new U.Setting(this.containerEl).setName("着色最旧时间");i.descEl.innerHTML=this.previewOldestAgeDescriptionHtml(this.settings.lineAuthor.coloringMaxAge)[0],i.addText(s=>{s.setPlaceholder("1y"),s.setValue(this.settings.lineAuthor.coloringMaxAge),s.onChange(async a=>{let[o,l]=this.previewOldestAgeDescriptionHtml(a);i.descEl.innerHTML=o,l&&(await this.lineAuthorSettingHandler("coloringMaxAge",a),this.refreshColorSettingsName("oldest"))})}),this.createColorSetting("newest"),this.createColorSetting("oldest"),new U.Setting(this.containerEl).setName("文本颜色").addText(s=>{s.setValue(this.settings.lineAuthor.textColorCss),s.onChange(async a=>{await this.lineAuthorSettingHandler("textColorCss",a)})}).descEl.innerHTML=` 垂直线文本的 CSS 颜色.
It is highly recommended to use CSS 变量 由主题定义 (e.g.
var(--text-muted)
var(--text-on-accent)
, 因为它们会自动适应主题变化.
参见: Obsidian 可用的 CSS 变量列表 `,new U.Setting(this.containerEl).setName("忽略更改中的空格和换行符").addToggle(s=>{s.setValue(this.settings.lineAuthor.ignoreWhitespace),s.onChange(a=>this.lineAuthorSettingHandler("ignoreWhitespace",a))}).descEl.innerHTML=` 空格和换行符默认被解释为 文档的一部分并且在更改中被识别(因此不会被忽略)。 这使得当添加新行时,最后一行仍然显示为“已更改”, 即使之前的最后一行文本相同。
如果您不关心纯空白的更改 (例如列表嵌套/引用缩进的变化), 那么启用此功能将提供更有意义的更改检测。 `}}createColorSetting(r){let n=new U.Setting(this.containerEl).setName("").addText(i=>{let s=ry(r,this.settings.lineAuthor),a=ry(r,et.lineAuthor);i.setPlaceholder(Xw(a)),i.setValue(Xw(s)),i.onChange(async o=>{let l=VP(o);if(l!==void 0){let c=r==="newest"?"colorNew":"colorOld";await this.lineAuthorSettingHandler(c,l)}this.refreshColorSettingsDesc(r,l)})});this.lineAuthorColorSettings.set(r,n),this.refreshColorSettingsName(r),this.refreshColorSettingsDesc(r,ry(r,this.settings.lineAuthor))}refreshColorSettingsName(r){let n=this.lineAuthorColorSettings.get(r);if(n){let i=r==="oldest"?`最旧 (${this.settings.lineAuthor.coloringMaxAge} 或更旧)`:"最新";n.nameEl.innerText=`${i} 提交的颜色`}}refreshColorSettingsDesc(r,n){let i=this.lineAuthorColorSettings.get(r);i&&(i.descEl.innerHTML=this.colorSettingPreviewDescHtml(r,this.settings.lineAuthor,n!==void 0))}colorSettingPreviewDescHtml(r,n,i){let s=i?sp(r,n):"rgba(127,127,127,0.3)",a=U.moment.unix(U.moment.now()/1e3).format("YYYY-MM-DD"),o=i?`abcdef Author Name ${a}`:"invalid color";return`支持 'rgb(r,g,b)', 'hsl(h,s,l)', hex (#) 和 颜色命名 (例如: 'black', 'purple'). 颜色预览: ${`
${o}
`}`}previewCustomDateTimeDescriptionHtml(r){let n=(0,U.moment)().format(r);return`
Format string to display the authoring date.
Currently: ${n}`}previewOldestAgeDescriptionHtml(r){let n=Xh(r);return[`The oldest age in the line author coloring. Everything older will have the same color.
Smallest valid age is "1d". Currently: ${n!==void 0?`${n.asDays()} days`:"invalid!"}`,n]}setNonDefaultValue({settingsProperty:r,text:n}){let i=this.plugin.settings[r];et[r]!==i&&(typeof i=="string"||typeof i=="number"||typeof i=="boolean"?n.setValue(String(i)):n.setValue(JSON.stringify(i)))}refreshDisplayWithDelay(r=80){setTimeout(()=>this.display(),r)}};function ry(t,e){return t==="oldest"?e.colorOld:e.colorNew}function Xh(t){let e=U.moment.duration("P"+t.toUpperCase());return e.isValid()&&e.asDays()&&e.asDays()>=1?e:void 0}p();var en=require("obsidian");var lp=class{constructor(e,r){this.statusBarEl=e;this.plugin=r;this.messages=[];this.base="obsidian-git-statusbar-";this.statusBarEl.setAttribute("data-tooltip-position","top"),r.registerEvent(r.app.workspace.on("obsidian-git:refreshed",()=>{this.refreshCommitTimestamp().catch(console.error)}))}displayMessage(e,r){this.messages.push({message:`Git: ${e.slice(0,100)}`,timeout:r}),this.display()}display(){this.messages.length>0&&!this.currentMessage?(this.currentMessage=this.messages.shift(),this.statusBarEl.addClass(this.base+"message"),this.statusBarEl.ariaLabel="",this.statusBarEl.setText(this.currentMessage.message),this.lastMessageTimestamp=Date.now()):this.currentMessage?Date.now()-this.lastMessageTimestamp>=this.currentMessage.timeout&&(this.currentMessage=null,this.lastMessageTimestamp=null):this.displayState()}displayState(){switch((this.statusBarEl.getText().length>3||!this.statusBarEl.hasChildNodes())&&(this.statusBarEl.empty(),this.conflictEl=this.statusBarEl.createDiv(),this.conflictEl.setAttribute("data-tooltip-position","top"),this.conflictEl.style.float="left",this.pausedEl=this.statusBarEl.createDiv(),this.pausedEl.setAttribute("data-tooltip-position","top"),this.pausedEl.style.float="left",this.iconEl=this.statusBarEl.createDiv(),this.iconEl.style.float="left",this.textEl=this.statusBarEl.createDiv(),this.textEl.style.float="right",this.textEl.style.marginLeft="5px"),this.plugin.localStorage.getConflict()?((0,en.setIcon)(this.conflictEl,"alert-circle"),this.conflictEl.ariaLabel="您有合并冲突。请解决冲突后再提交。",this.conflictEl.style.marginRight="5px",this.conflictEl.addClass(this.base+"conflict")):(this.conflictEl.empty(),this.conflictEl.style.marginRight=""),this.plugin.localStorage.getPausedAutomatics()?((0,en.setIcon)(this.pausedEl,"pause-circle"),this.pausedEl.ariaLabel="自动例程当前已暂停。",this.pausedEl.style.marginRight="5px",this.pausedEl.addClass(this.base+"paused")):(this.pausedEl.empty(),this.pausedEl.style.marginRight=""),this.plugin.state.gitAction){case 0:this.displayFromNow();break;case 1:this.statusBarEl.ariaLabel="正在检查仓库状态...",(0,en.setIcon)(this.iconEl,"refresh-cw"),this.statusBarEl.addClass(this.base+"status");break;case 3:this.statusBarEl.ariaLabel="正在添加文件...",(0,en.setIcon)(this.iconEl,"archive"),this.statusBarEl.addClass(this.base+"add");break;case 4:this.statusBarEl.ariaLabel="正在提交更改...",(0,en.setIcon)(this.iconEl,"git-commit"),this.statusBarEl.addClass(this.base+"commit");break;case 5:this.statusBarEl.ariaLabel="正在推送更改...",(0,en.setIcon)(this.iconEl,"upload"),this.statusBarEl.addClass(this.base+"push");break;case 2:this.statusBarEl.ariaLabel="正在拉取更改...",(0,en.setIcon)(this.iconEl,"download"),this.statusBarEl.addClass(this.base+"pull");break;default:this.statusBarEl.ariaLabel="初始化失败!",(0,en.setIcon)(this.iconEl,"alert-triangle"),this.statusBarEl.addClass(this.base+"failed-init");break}}displayFromNow(){var n;let e=this.lastCommitTimestamp,r=this.plugin.state.offlineMode;if(e){let i=(0,en.moment)(e).fromNow();this.statusBarEl.ariaLabel=`${r?"Offline: ":""}Last Commit: ${i}`,(n=this.unPushedCommits)!=null&&n&&(this.statusBarEl.ariaLabel+=` (${this.unPushedCommits} unpushed commits)`)}else this.statusBarEl.ariaLabel=r?"Git is offline":"Git is ready";r?(0,en.setIcon)(this.iconEl,"globe"):(0,en.setIcon)(this.iconEl,"check"),this.plugin.settings.changedFilesInStatusBar&&this.plugin.cachedStatus&&this.textEl.setText(this.plugin.cachedStatus.changed.length.toString()),this.statusBarEl.addClass(this.base+"idle")}async refreshCommitTimestamp(){this.lastCommitTimestamp=await this.plugin.gitManager.getLastCommitTime(),this.unPushedCommits=await this.plugin.gitManager.getUnpushedCommits()}remove(){this.statusBarEl.remove()}};p();var up=require("obsidian"),cp=class extends up.SuggestModal{constructor(r){super(r.app);this.plugin=r;this.resolve=null;this.setPlaceholder("输入您的消息并可选择添加日期的版本。")}openAndGetResult(){return new Promise(r=>{this.resolve=r,this.open()})}onClose(){new Promise(r=>setTimeout(r,10)).then(()=>{this.resolve&&this.resolve(void 0)})}getSuggestions(r){let n=(0,up.moment)().format(this.plugin.settings.commitDateFormat);return r==""&&(r="..."),[r,`${n}: ${r}`,`${r}: ${n}`]}renderSuggestion(r,n){n.innerText=r}onChooseSuggestion(r,n){this.resolve&&this.resolve(r)}};p();var $F=require("obsidian"),Gu=class{constructor(e){this.plugin=e}saveLastAuto(e,r){r==="backup"?this.plugin.localStorage.setLastAutoBackup(e.toString()):r==="pull"?this.plugin.localStorage.setLastAutoPull(e.toString()):r==="push"&&this.plugin.localStorage.setLastAutoPush(e.toString())}loadLastAuto(){var e,r,n;return{backup:new Date((e=this.plugin.localStorage.getLastAutoBackup())!=null?e:""),pull:new Date((r=this.plugin.localStorage.getLastAutoPull())!=null?r:""),push:new Date((n=this.plugin.localStorage.getLastAutoPush())!=null?n:"")}}async init(){await this.setUpAutoCommitAndSync();let e=this.loadLastAuto();if(this.plugin.settings.differentIntervalCommitAndPush&&this.plugin.settings.autoPushInterval>0){let r=this.diff(this.plugin.settings.autoPushInterval,e.push);this.startAutoPush(r)}if(this.plugin.settings.autoPullInterval>0){let r=this.diff(this.plugin.settings.autoPullInterval,e.pull);this.startAutoPull(r)}}unload(){this.clearAutoPull(),this.clearAutoPush(),this.clearAutoCommitAndSync()}reload(...e){this.plugin.localStorage.getPausedAutomatics()||(e.contains("commit")&&(this.clearAutoCommitAndSync(),this.plugin.settings.autoSaveInterval>0&&this.startAutoCommitAndSync(this.plugin.settings.autoSaveInterval)),e.contains("push")&&(this.clearAutoPush(),this.plugin.settings.differentIntervalCommitAndPush&&this.plugin.settings.autoPushInterval>0&&this.startAutoPush(this.plugin.settings.autoPushInterval)),e.contains("pull")&&(this.clearAutoPull(),this.plugin.settings.autoPullInterval>0&&this.startAutoPull(this.plugin.settings.autoPullInterval)))}async setUpAutoCommitAndSync(){if(this.plugin.settings.setLastSaveToLastCommit){this.clearAutoCommitAndSync();let e=await this.plugin.gitManager.getLastCommitTime();e&&this.saveLastAuto(e,"backup")}if(!this.timeoutIDCommitAndSync&&!this.plugin.autoCommitDebouncer){let e=this.loadLastAuto();if(this.plugin.settings.autoSaveInterval>0){let r=this.diff(this.plugin.settings.autoSaveInterval,e.backup);this.startAutoCommitAndSync(r)}}}startAutoCommitAndSync(e){let r=(e!=null?e:this.plugin.settings.autoSaveInterval)*6e4;this.plugin.settings.autoBackupAfterFileChange?e===0?this.doAutoCommitAndSync():this.plugin.autoCommitDebouncer=(0,$F.debounce)(()=>this.doAutoCommitAndSync(),r,!0):(r>2147483647&&(r=2147483647),this.timeoutIDCommitAndSync=window.setTimeout(()=>this.doAutoCommitAndSync(),r))}doAutoCommitAndSync(){this.plugin.promiseQueue.addTask(async()=>{if(this.plugin.settings.setLastSaveToLastCommit){let r=await this.plugin.gitManager.getLastCommitTime();if(r){this.saveLastAuto(r,"backup");let n=this.diff(this.plugin.settings.autoSaveInterval,r);if(n>0)return this.startAutoCommitAndSync(n),!1}}let e=this.plugin.settings.autoCommitOnlyStaged;return this.plugin.settings.differentIntervalCommitAndPush?await this.plugin.commit({fromAuto:!0,onlyStaged:e}):await this.plugin.commitAndSync({fromAutoBackup:!0,onlyStaged:e}),!0},e=>{e!==!1&&(this.saveLastAuto(new Date,"backup"),this.startAutoCommitAndSync())})}startAutoPull(e){let r=(e!=null?e:this.plugin.settings.autoPullInterval)*6e4;r>2147483647&&(r=2147483647),this.timeoutIDPull=window.setTimeout(()=>this.doAutoPull(),r)}doAutoPull(){this.plugin.promiseQueue.addTask(()=>this.plugin.pullChangesFromRemote(),()=>{this.saveLastAuto(new Date,"pull"),this.startAutoPull()})}startAutoPush(e){let r=(e!=null?e:this.plugin.settings.autoPushInterval)*6e4;r>2147483647&&(r=2147483647),this.timeoutIDPush=window.setTimeout(()=>this.doAutoPush(),r)}doAutoPush(){this.plugin.promiseQueue.addTask(()=>this.plugin.push(),()=>{this.saveLastAuto(new Date,"push"),this.startAutoPush()})}clearAutoCommitAndSync(){var r;let e=!1;return this.timeoutIDCommitAndSync&&(window.clearTimeout(this.timeoutIDCommitAndSync),this.timeoutIDCommitAndSync=void 0,e=!0),this.plugin.autoCommitDebouncer&&((r=this.plugin.autoCommitDebouncer)==null||r.cancel(),this.plugin.autoCommitDebouncer=void 0,e=!0),e}clearAutoPull(){return this.timeoutIDPull?(window.clearTimeout(this.timeoutIDPull),this.timeoutIDPull=void 0,!0):!1}clearAutoPush(){return this.timeoutIDPush?(window.clearTimeout(this.timeoutIDPush),this.timeoutIDPush=void 0,!0):!1}diff(e,r){let i=e-Math.round((new Date().getTime()-r.getTime())/1e3/60);return Math.max(0,i)}};p();var jn=require("obsidian");p();var ju=require("obsidian");async function IF(t,e,r){let n=await OF(e,r);if(n.result==="failure"){new ju.Notice(n.reason);return}let{isGitHub:i,branch:s,repo:a,user:o,filePath:l}=n;if(i){let c=t.getCursor("from").line+1,u=t.getCursor("to").line+1;c===u?window.open(`https://github.com/${o}/${a}/blob/${s}/${l}?plain=1#L${c}`):window.open(`https://github.com/${o}/${a}/blob/${s}/${l}?plain=1#L${c}-L${u}`)}else new ju.Notice("您似乎没有使用 GitHub")}async function FF(t,e){let r=await OF(t,e);if(r.result==="failure"){new ju.Notice(r.reason);return}let{isGitHub:n,branch:i,repo:s,user:a,filePath:o}=r;n?window.open(`https://github.com/${a}/${s}/commits/${i}/${o}`):new ju.Notice("您似乎没有使用 GitHub")}async function OF(t,e){let r=await e.branchInfo(),n=r.tracking,i=r.current,s,a=e.getRelativeRepoPath(t.path);if(e instanceof Se){let l=await e.getSubmoduleOfFile(e.getRelativeRepoPath(t.path));if(l){a=l.relativeFilepath;let c=await e.git.cwd({path:l.submodule,root:!1}).status();if(n=c.tracking||void 0,i=c.current||void 0,n){let u=n.substring(0,n.indexOf("/")),f=await e.git.cwd({path:l.submodule,root:!1}).getConfig(`remote.${u}.url`,"local");if(f.value!=null)s=f.value;else return{result:"failure",reason:"无法获取子模块的远程 URL"}}}}if(n==null)return{result:"failure",reason:"远程分支未配置"};if(i==null)return{result:"failure",reason:"无法获取当前分支名称"};if(s==null){let l=n.substring(0,n.indexOf("/"));if(s=await e.getConfig(`remote.${l}.url`),s==null)return{result:"failure",reason:"无法获取远程 URL"}}let o=s.match(/(?:^https:\/\/github\.com\/(.+)\/(.+?)(?:\.git)?$)|(?:^[a-zA-Z]+@github\.com:(.+)\/(.+?)(?:\.git)?$)/);if(o==null)return{result:"failure",reason:"无法解析远程 URL"};{let[l,c,u,f,d]=o;return{result:"success",isGitHub:!!l,repo:u||d,user:c||f,branch:i,filePath:a}}}p();var MF=require("obsidian"),fp=class extends MF.FuzzySuggestModal{constructor(e,r){super(e.app),this.plugin=e,this.changedFiles=r,this.setPlaceholder("不支持的文件将由默认应用程序打开!")}getItems(){return this.changedFiles}getItemText(e){if(e.index=="U"&&e.workingDir=="U")return`Untracked | ${e.vaultPath}`;let r="",n="";return e.workingDir!=" "&&(r=`Working Dir: ${e.workingDir} `),e.index!=" "&&(n=`Index: ${e.index}`),`${r}${n} | ${e.vaultPath}`}onChooseItem(e,r){this.plugin.app.metadataCache.getFirstLinkpathDest(e.vaultPath,"")==null?this.app.openWithDefaultApp(e.vaultPath):this.plugin.app.workspace.openLinkText(e.vaultPath,"/")}};p();var DF=require("obsidian"),dp=class extends DF.Modal{constructor(r,n){super(r);this.content=n;this.resolve=null}openAndGetReslt(){return new Promise(r=>{this.resolve=r,this.open()})}onOpen(){let{contentEl:r,titleEl:n}=this;n.setText("编辑 .gitignore");let i=r.createDiv(),s=i.createEl("textarea",{text:this.content,cls:["obsidian-git-textarea"],attr:{rows:10,cols:30,wrap:"off"}});i.createEl("button",{cls:["mod-cta","obsidian-git-center-button"],text:"保存"}).addEventListener("click",()=>{this.resolve(s.value),this.close()})}onClose(){let{contentEl:r}=this;r.empty(),this.resolve&&this.resolve(void 0)}};p();var Ju=require("@codemirror/state"),Cp=require("@codemirror/view");p();var Nl=require("@codemirror/state");p();var Nt=class t{static createHunk(e,r,n,i){return{removed:{start:e,count:r,lines:[]},added:{start:n,count:i,lines:[]},head:`@@ -${e}${r>0?`,${r}`:""} +${n}${i>0?`,${i}`:""} @@`,vend:n+Math.max(i-1,0),type:i===0?"delete":r===0?"add":"change"}}static createPartialHunk(e,r,n){let i=r,s=n-r+1,a=0;for(let o of e){let l=o.added.count-o.removed.count,c=0;if(o.added.start>=r&&o.vend<=n)c=l;else{let u=Math.max(0,n+1-(o.added.start+o.removed.count)),f=Math.max(0,r-(o.added.start+o.removed.count));o.added.start>=r&&o.added.start<=n?c=u:o.vend>=r&&o.vend<=n?(c=l-f,i=i-f):o.added.start<=r&&o.vend>=n?(c=u-f,i=i-f):a++,r>o.vend&&(i=i-l)}s=s-c}if(a!==e.length)return s===0&&(i=i-1),this.createHunk(i,s,r,n-r+1)}patchLines(e,r=!1){let n=[];for(let i of e.removed.lines)n.push("-"+i);for(let i of e.added.lines)n.push("+"+i);return r?n.map(i=>i.replace(/\r$/,"")):n}static parseDiffLine(e){let i=e.split("@@")[1].trim().split(" "),s=i[0].substring(1).split(","),a=i[1].substring(1).split(","),o=this.createHunk(parseInt(s[0]),parseInt(s[1]||"1"),parseInt(a[0]),parseInt(a[1]||"1"));return o.head=e,o}static changeEnd(e){return e.added.count===0?e.added.start:e.removed.count===0?e.added.start+e.added.count-1:e.added.start+Math.min(e.added.count,e.removed.count)-1}static calcSigns(e,r,n,i=1,s=1/0,a){if(a&&r.type!=="add")return console.error(`Invalid hunk with untracked=${a} hunk="${r.head}"`),[];i=Math.max(1,i);let{start:o,added:l,removed:c}={start:r.added.start,added:r.added.count,removed:r.removed.count},u=this.changeEnd(r),f=r.type==="delete"&&(o===0||e&&this.changeEnd(e)===o)&&(!n||n.added.start!==o+1);f&&i===1&&(i=0);let d=[];for(let h=Math.max(o,i);h<=Math.min(u,s);h++){let m=r.type==="change"&&(c>l&&h===u||e&&e.added.start===0);d.push({type:f?"topdelete":m?"changedelete":a?"untracked":r.type,count:h===o?r.type==="add"?l:c:void 0,lnum:h+(f?1:0)})}if(r.type==="change"&&l>c&&r.vend>=i&&u<=s)for(let h=Math.max(u,i);h<=Math.min(r.vend,s);h++)d.push({type:"add",count:h===r.vend?l-c:void 0,lnum:h});return d}static createPatch(e,r,n,i=!1){let s=[`diff --git a/${e} b/${e}`,`index 000000..000000 ${n}`,`--- a/${e}`,`+++ b/${e}`],a=0;r=structuredClone(r);for(let o of r){let l=o.removed.start,c=o.removed.count,u=o.added.count;o.type==="add"&&(l=l+1);let f=o.removed.lines,d=o.added.lines;i&&([c,u]=[u,c],[f,d]=[d,f]),s.push(`@@ -${l},${c} +${l+a},${u} @@`);for(let h of f)s.push("-"+h);(i?o.added:o.removed).no_nl_at_eof&&s.push("\\ No newline at end of file");for(let h of d)s.push("+"+h);(i?o.removed:o.added).no_nl_at_eof&&s.push("\\ No newline at end of file"),o.removed.start=l+a,a=a+(u-c)}return s}getSummary(e){let r={added:0,changed:0,removed:0};for(let n of e)if(n.type==="add")r.added+=n.added.count;else if(n.type==="delete")r.removed+=n.removed.count;else if(n.type==="change"){let i=n.added.count,s=n.removed.count,a=Math.min(i,s);r.changed+=a,r.added+=i-a,r.removed+=s-a}return r}static findHunk(e,r){if(!r)return[void 0,void 0];for(let n=0;n=e)return[i,n]}return[void 0,void 0]}static findNearestHunk(e,r,n,i){if(r.length!==0){if(n==="first")return 0;if(n==="last")return r.length-1;if(n==="next"){if(r[0].added.start>e)return 0;for(let s=r.length-1;s>=0;s--)if(r[s].added.start<=e){if(s+1e)return s+1;if(i)return 0}}else if(n==="prev"){if(Math.max(r[r.length-1].vend)0&&Math.max(r[s-1].vend,1)l.added.start?i++:o.added.starta.map(v=>g.replace(/&/,v))).reduce((g,v)=>g.concat(v)),m,l);else if(m&&typeof m=="object"){if(!f)throw new RangeError("The value of a property ("+h+") should be a primitive value.");s(i(h),m,u,d)}else m!=null&&u.push(h.replace(/_.*/,"").replace(/[A-Z]/g,g=>"-"+g.toLowerCase())+": "+m+";")}(u.length||d)&&l.push((n&&!f&&!c?a.map(n):a).join(", ")+" {"+u.join(" ")+"}")}for(let a in e)s(i(a),e[a],this.rules)}getRules(){return this.rules.join(` `)}static newName(){let e=NF[LF]||1;return NF[LF]=e+1,ny+e.toString(36)}static mount(e,r,n){let i=e[iy],s=n&&n.nonce;i?s&&i.setNonce(s):i=new sy(e,s),i.mount(Array.isArray(r)?r:[r],e)}},BF=new Map,sy=class{constructor(e,r){let n=e.ownerDocument||e,i=n.defaultView;if(!e.head&&e.adoptedStyleSheets&&i.CSSStyleSheet){let s=BF.get(n);if(s)return e[iy]=s;this.sheet=new i.CSSStyleSheet,BF.set(n,this)}else this.styleTag=n.createElement("style"),r&&this.styleTag.setAttribute("nonce",r);this.modules=[],e[iy]=this}mount(e,r){let n=this.sheet,i=0,s=0;for(let a=0;a-1&&(this.modules.splice(l,1),s--,l=-1),l==-1){if(this.modules.splice(s++,0,o),n)for(let c=0;cc){let f=t.slice(e,r).indexOf(n.slice(i,s));if(f>-1)return[new bt(e,e+f,i,i),new bt(e+f+c,r,s,s)]}else if(c>l){let f=n.slice(i,s).indexOf(t.slice(e,r));if(f>-1)return[new bt(e,e,i,i+f),new bt(r,r,i+f+l,s)]}if(l==1||c==1)return[new bt(e,r,i,s)];let u=sO(t,e,r,n,i,s);if(u){let[f,d,h]=u;return Ba(t,e,f,n,i,d).concat(Ba(t,f+h,r,n,d+h,s))}return Wz(t,e,r,n,i,s)}var qu=1e9,Wu=0,dy=!1;function Wz(t,e,r,n,i,s){let a=r-e,o=s-i;if(qu<1e9&&Math.min(a,o)>qu*16||Wu>0&&Date.now()>Wu)return Math.min(a,o)>qu*64?[new bt(e,r,i,s)]:HF(t,e,r,n,i,s);let l=Math.ceil((a+o)/2);ay.reset(l),oy.reset(l);let c=(h,m)=>t.charCodeAt(e+h)==n.charCodeAt(i+m),u=(h,m)=>t.charCodeAt(r-h-1)==n.charCodeAt(s-m-1),f=(a-o)%2!=0?oy:null,d=f?null:ay;for(let h=0;hqu||Wu>0&&!(h&63)&&Date.now()>Wu)return HF(t,e,r,n,i,s);let m=ay.advance(h,a,o,l,f,!1,c)||oy.advance(h,a,o,l,d,!0,u);if(m)return zz(t,e,r,e+m[0],n,i,s,i+m[1])}return[new bt(e,r,i,s)]}var wp=class{constructor(){this.vec=[]}reset(e){this.len=e<<1;for(let r=0;rr)this.end+=2;else if(f>n)this.start+=2;else if(s){let d=i+(r-n)-l;if(d>=0&&d=r-u)return[h,i+h-d]}else{let h=r-s.vec[d];if(u>=h)return[u,f]}}}return null}},ay=new wp,oy=new wp;function zz(t,e,r,n,i,s,a,o){let l=!1;return!Ll(t,n)&&++n==r&&(l=!0),!Ll(i,o)&&++o==a&&(l=!0),l?[new bt(e,r,s,a)]:Ba(t,e,n,i,s,o).concat(Ba(t,n,r,i,o,a))}function iO(t,e){let r=1,n=Math.min(t,e);for(;rr||u>s||t.slice(o,c)!=n.slice(l,u)){if(a==1)return o-e-(Ll(t,o)?0:1);a=a>>1}else{if(c==r||u==s)return c-e;o=c,l=u}}}function py(t,e,r,n,i,s){if(e==r||i==s||t.charCodeAt(r-1)!=n.charCodeAt(s-1))return 0;let a=iO(r-e,s-i);for(let o=r,l=s;;){let c=o-a,u=l-a;if(c>1}else{if(c==e||u==i)return r-c;o=c,l=u}}}function ly(t,e,r,n,i,s,a,o){let l=n.slice(i,s),c=null;for(;;){if(c||a=r)break;let d=t.slice(u,f),h=-1;for(;(h=l.indexOf(d,h+1))!=-1;){let m=hy(t,f,r,n,i+h+d.length,s),g=py(t,e,u,n,i,i+h),v=d.length+m+g;(!c||c[2]>1}}function sO(t,e,r,n,i,s){let a=r-e,o=s-i;if(ai.fromA-e&&n.toB>i.fromB-e&&(t[r-1]=new bt(n.fromA,i.toA,n.fromB,i.toB),t.splice(r--,1))}}function Vz(t,e,r){for(;;){aO(r,1);let n=!1;for(let i=0;i3||o>3){let l=i==t.length-1?e.length:t[i+1].fromA,c=s.fromA-n,u=l-s.toA,f=GF(e,s.fromA,c),d=UF(e,s.toA,u),h=s.fromA-f,m=d-s.toA;if((!a||!o)&&h&&m){let g=Math.max(a,o),[v,w,b]=a?[e,s.fromA,s.toA]:[r,s.fromB,s.toB];g>h&&e.slice(f,s.fromA)==v.slice(b-h,b)?(s=t[i]=new bt(f,f+a,s.fromB-h,s.toB-h),f=s.fromA,d=UF(e,s.toA,l-s.toA)):g>m&&e.slice(s.toA,d)==v.slice(w,w+m)&&(s=t[i]=new bt(d-a,d,s.fromB+m,s.toB+m),d=s.toA,f=GF(e,s.fromA,s.fromA-n)),h=s.fromA-f,m=d-s.toA}if(h||m)s=t[i]=new bt(s.fromA-h,s.toA+m,s.fromB-h,s.toB+m);else if(a){if(!o){let g=qF(e,s.fromA,s.toA),v,w=g<0?-1:jF(e,s.toA,s.fromA);g>-1&&(v=g-s.fromA)<=u&&e.slice(s.fromA,g)==e.slice(s.toA,s.toA+v)?s=t[i]=s.offset(v):w>-1&&(v=s.toA-w)<=c&&e.slice(s.fromA-v,s.fromA)==e.slice(w,s.toA)&&(s=t[i]=s.offset(-v))}}else{let g=qF(r,s.fromB,s.toB),v,w=g<0?-1:jF(r,s.toB,s.fromB);g>-1&&(v=g-s.fromB)<=u&&r.slice(s.fromB,g)==r.slice(s.toB,s.toB+v)?s=t[i]=s.offset(v):w>-1&&(v=s.toB-w)<=c&&r.slice(s.fromB-v,s.fromB)==r.slice(w,s.toB)&&(s=t[i]=s.offset(-v))}}n=s.toA}return aO(t,3),t}var Na;try{Na=new RegExp("[\\p{Alphabetic}\\p{Number}]","u")}catch(t){}function oO(t){return t>48&&t<58||t>64&&t<91||t>96&&t<123}function lO(t,e){if(e==t.length)return 0;let r=t.charCodeAt(e);return r<192?oO(r)?1:0:Na?!fO(r)||e==t.length-1?Na.test(String.fromCharCode(r))?1:0:Na.test(t.slice(e,e+2))?2:0:0}function cO(t,e){if(!e)return 0;let r=t.charCodeAt(e-1);return r<192?oO(r)?1:0:Na?!dO(r)||e==1?Na.test(String.fromCharCode(r))?1:0:Na.test(t.slice(e-2,e))?2:0:0}var uO=8;function UF(t,e,r){if(e==t.length||!cO(t,e))return e;for(let n=e,i=e+r,s=0;si)return n;n+=a}return e}function GF(t,e,r){if(!e||!lO(t,e))return e;for(let n=e,i=e-r,s=0;st>=55296&&t<=56319,dO=t=>t>=56320&&t<=57343;function Ll(t,e){return!e||e==t.length||!fO(t.charCodeAt(e-1))||!dO(t.charCodeAt(e))}function Xz(t,e,r){var n;let i=r==null?void 0:r.override;return i?i(t,e):(qu=((n=r==null?void 0:r.scanLimit)!==null&&n!==void 0?n:1e9)>>1,Wu=r!=null&&r.timeout?Date.now()+r.timeout:0,dy=!1,Vz(t,e,Ba(t,0,t.length,e,0,e.length)))}function hO(){return!dy}function pO(t,e,r){return Yz(Xz(t,e,r),t,e)}var Un=$e.Facet.define({combine:t=>t[0]}),cy=$e.StateEffect.define(),Zz=$e.Facet.define(),Ha=$e.StateField.define({create(t){return null},update(t,e){for(let r of e.effects)r.is(cy)&&(t=r.value);for(let r of e.state.facet(Zz))t=r(t,e);return t}});function my(t){let e=t.field(Ha,!1);if(!e)return null;let r=t.facet(Un);return{chunks:e,side:r?r.side:null}}var ts=class t{constructor(e,r,n,i,s,a=!0){this.changes=e,this.fromA=r,this.toA=n,this.fromB=i,this.toB=s,this.precise=a}offset(e,r){return e||r?new t(this.changes,this.fromA+e,this.toA+e,this.fromB+r,this.toB+r,this.precise):this}get endA(){return Math.max(this.fromA,this.toA-1)}get endB(){return Math.max(this.fromB,this.toB-1)}static build(e,r,n){let i=pO(e.toString(),r.toString(),n);return mO(i,e,r,0,0,hO())}static updateA(e,r,n,i,s){return XF(YF(e,i,!0,n.length),e,r,n,s)}static updateB(e,r,n,i,s){return XF(YF(e,i,!1,r.length),e,r,n,s)}};function WF(t,e,r,n){let i=r.lineAt(t),s=n.lineAt(e);return i.to==t&&s.to==e&&tf+1&&v>d+1)break;h.push(m.offset(-c+n,-u+i)),[f,d]=zF(m.toA+n,m.toB+i,e,r),o++}a.push(new ts(h,c,Math.max(c,f),u,Math.max(u,d),s))}return a}var pp=1e3;function VF(t,e,r,n){let i=0,s=t.length;for(;;){if(i==s){let u=0,f=0;i&&({toA:u,toB:f}=t[i-1]);let d=e-(r?u:f);return[u+d,f+d]}let a=i+s>>1,o=t[a],[l,c]=r?[o.fromA,o.toA]:[o.fromB,o.toB];if(l>e)s=a;else if(c<=e)i=a+1;else return n?[o.fromA,o.fromB]:[o.toA,o.toB]}}function YF(t,e,r,n){let i=[];return e.iterChangedRanges((s,a,o,l)=>{let c=0,u=r?e.length:n,f=0,d=r?n:e.length;s>pp&&([c,f]=VF(t,s-pp,r,!0)),a=c?i[i.length-1]={fromA:m.fromA,fromB:m.fromB,toA:u,toB:d,diffA:m.diffA+g,diffB:m.diffB+v}:i.push({fromA:c,toA:u,fromB:f,toB:d,diffA:g,diffB:v})}),i}function XF(t,e,r,n,i){if(!t.length)return e;let s=[];for(let a=0,o=0,l=0,c=0;;a++){let u=a==t.length?null:t[a],f=u?u.fromA+o:r.length,d=u?u.fromB+l:n.length;for(;cf||v.endB+l>d)break;s.push(v.offset(o,l)),c++}if(!u)break;let h=u.toA+o+u.diffA,m=u.toB+l+u.diffB,g=pO(r.sliceString(f,h),n.sliceString(d,m),i);for(let v of mO(g,r,n,f,d,hO()))s.push(v);for(o+=u.diffA,l+=u.diffB;ch&&v.fromB+l>m)break;c++}}return s}var Kz={scanLimit:500},gO=Oe.ViewPlugin.fromClass(class{constructor(t){({deco:this.deco,gutter:this.gutter}=QF(t))}update(t){(t.docChanged||t.viewportChanged||Qz(t.startState,t.state)||Jz(t.startState,t.state))&&({deco:this.deco,gutter:this.gutter}=QF(t.view))}},{decorations:t=>t.deco}),mp=$e.Prec.low((0,Oe.gutter)({class:"cm-changeGutter",markers:t=>{var e;return((e=t.plugin(gO))===null||e===void 0?void 0:e.gutter)||$e.RangeSet.empty}}));function Qz(t,e){return t.field(Ha,!1)!=e.field(Ha,!1)}function Jz(t,e){return t.facet(Un)!=e.facet(Un)}var ZF=Oe.Decoration.line({class:"cm-changedLine"}),eV=Oe.Decoration.mark({class:"cm-changedText"}),tV=Oe.Decoration.mark({tagName:"ins",class:"cm-insertedLine"}),rV=Oe.Decoration.mark({tagName:"del",class:"cm-deletedLine"}),KF=new class extends Oe.GutterMarker{constructor(){super(...arguments),this.elementClass="cm-changedLineGutter"}};function nV(t,e,r,n,i,s){let a=r?t.fromA:t.fromB,o=r?t.toA:t.toB,l=0;if(a!=o){i.add(a,a,ZF),i.add(a,o,r?rV:tV),s&&s.add(a,a,KF);for(let c=e.iterRange(a,o-1),u=a;!c.next().done;){if(c.lineBreak){u++,i.add(u,u,ZF),s&&s.add(u,u,KF);continue}let f=u+c.value.length;if(n)for(;l=u)break;(a?f.toA:f.toB)>c&&(!s||!s(t.state,f,o,l))&&nV(f,t.state.doc,a,n,o,l)}return{deco:o.finish(),gutter:l&&l.finish()}}var Dl=class extends Oe.WidgetType{constructor(e){super(),this.height=e}eq(e){return this.height==e.height}toDOM(){let e=document.createElement("div");return e.className="cm-mergeSpacer",e.style.height=this.height+"px",e}updateDOM(e){return e.style.height=this.height+"px",!0}get estimatedHeight(){return this.height}ignoreEvent(){return!1}},yp=$e.StateEffect.define({map:(t,e)=>t.map(e)}),zu=$e.StateField.define({create:()=>Oe.Decoration.none,update:(t,e)=>{for(let r of e.effects)if(r.is(yp))return r.value;return t.map(e.changes)},provide:t=>Oe.EditorView.decorations.from(t)}),gp=.01;function JF(t,e){if(t.size!=e.size)return!1;let r=t.iter(),n=e.iter();for(;r.value;){if(r.from!=n.from||Math.abs(r.value.spec.widget.height-n.value.spec.widget.height)>1)return!1;r.next(),n.next()}return!0}function iV(t,e,r){let n=new $e.RangeSetBuilder,i=new $e.RangeSetBuilder,s=t.state.field(zu).iter(),a=e.state.field(zu).iter(),o=0,l=0,c=0,u=0,f=t.viewport,d=e.viewport;for(let v=0;;v++){let w=vgp&&(u+=A,i.add(l,l,Oe.Decoration.widget({widget:new Dl(A),block:!0,side:-1})))}if(b>o+1e3&&of.from&&ld.from){let x=Math.min(f.from-o,d.from-l);o+=x,l+=x,v--}else if(w)o=w.toA,l=w.toB;else break;for(;s.value&&s.fromgp&&i.add(e.state.doc.length,e.state.doc.length,Oe.Decoration.widget({widget:new Dl(h),block:!0,side:1}));let m=n.finish(),g=i.finish();JF(m,t.state.field(zu))||t.dispatch({effects:yp.of(m)}),JF(g,e.state.field(zu))||e.dispatch({effects:yp.of(g)})}var uy=$e.StateEffect.define({map:(t,e)=>e.mapPos(t)});var fy=class extends Oe.WidgetType{constructor(e){super(),this.lines=e}eq(e){return this.lines==e.lines}toDOM(e){let r=document.createElement("div");return r.className="cm-collapsedLines",r.textContent=e.state.phrase("$ unchanged lines",this.lines),r.addEventListener("click",n=>{let i=e.posAtDOM(n.target);e.dispatch({effects:uy.of(i)});let{side:s,sibling:a}=e.state.facet(Un);a&&a().dispatch({effects:uy.of(sV(i,e.state.field(Ha),s=="a"))})}),r}ignoreEvent(e){return e instanceof MouseEvent}get estimatedHeight(){return 27}get type(){return"collapsed-unchanged-code"}};function sV(t,e,r){let n=0,i=0;for(let s=0;;s++){let a=s=t)return i+(t-n);[n,i]=r?[a.toA,a.toB]:[a.toB,a.toA]}}var aV=$e.StateField.define({create(t){return Oe.Decoration.none},update(t,e){t=t.map(e.changes);for(let r of e.effects)r.is(uy)&&(t=t.update({filter:n=>n!=r.value}));return t},provide:t=>Oe.EditorView.decorations.from(t)});function eO({margin:t=3,minSize:e=4}){return aV.init(r=>oV(r,t,e))}function oV(t,e,r){let n=new $e.RangeSetBuilder,i=t.facet(Un).side=="a",s=t.field(Ha),a=1;for(let o=0;;o++){let l=o=r&&n.add(t.doc.line(c).from,t.doc.line(u).to,Oe.Decoration.replace({widget:new fy(f),block:!0})),!l)break;a=t.doc.lineAt(Math.min(t.doc.length,i?l.toA:l.toB)).number}return n.finish()}var lV=Oe.EditorView.styleModule.of(new hp({".cm-mergeView":{overflowY:"auto"},".cm-mergeViewEditors":{display:"flex",alignItems:"stretch"},".cm-mergeViewEditor":{flexGrow:1,flexBasis:0,overflow:"hidden"},".cm-merge-revert":{width:"1.6em",flexGrow:0,flexShrink:0,position:"relative"},".cm-merge-revert button":{position:"absolute",display:"block",width:"100%",boxSizing:"border-box",textAlign:"center",background:"none",border:"none",font:"inherit",cursor:"pointer"}})),cV=Oe.EditorView.baseTheme({".cm-mergeView & .cm-scroller, .cm-mergeView &":{height:"auto !important",overflowY:"visible !important"},"&.cm-merge-a .cm-changedLine, .cm-deletedChunk":{backgroundColor:"rgba(160, 128, 100, .08)"},"&.cm-merge-b .cm-changedLine, .cm-inlineChangedLine":{backgroundColor:"rgba(100, 160, 128, .08)"},"&light.cm-merge-a .cm-changedText, &light .cm-deletedChunk .cm-deletedText":{background:"linear-gradient(#ee443366, #ee443366) bottom/100% 2px no-repeat"},"&dark.cm-merge-a .cm-changedText, &dark .cm-deletedChunk .cm-deletedText":{background:"linear-gradient(#ffaa9966, #ffaa9966) bottom/100% 2px no-repeat"},"&light.cm-merge-b .cm-changedText":{background:"linear-gradient(#22bb22aa, #22bb22aa) bottom/100% 2px no-repeat"},"&dark.cm-merge-b .cm-changedText":{background:"linear-gradient(#88ff88aa, #88ff88aa) bottom/100% 2px no-repeat"},"&.cm-merge-b .cm-deletedText":{background:"#ff000033"},".cm-insertedLine, .cm-deletedLine, .cm-deletedLine del":{textDecoration:"none"},".cm-deletedChunk":{paddingLeft:"6px","& .cm-chunkButtons":{position:"absolute",insetInlineEnd:"5px"},"& button":{border:"none",cursor:"pointer",color:"white",margin:"0 2px",borderRadius:"3px","&[name=accept]":{background:"#2a2"},"&[name=reject]":{background:"#d43"}}},".cm-collapsedLines":{padding:"5px 5px 5px 10px",cursor:"pointer","&:before":{content:"\"⦚\"",marginInlineEnd:"7px"},"&:after":{content:"\"⦚\"",marginInlineStart:"7px"}},"&light .cm-collapsedLines":{color:"#444",background:"linear-gradient(to bottom, transparent 0, #f3f3f3 30%, #f3f3f3 70%, transparent 100%)"},"&dark .cm-collapsedLines":{color:"#ddd",background:"linear-gradient(to bottom, transparent 0, #222 30%, #222 70%, transparent 100%)"},".cm-changeGutter":{width:"3px",paddingLeft:"1px"},"&light.cm-merge-a .cm-changedLineGutter, &light .cm-deletedLineGutter":{background:"#e43"},"&dark.cm-merge-a .cm-changedLineGutter, &dark .cm-deletedLineGutter":{background:"#fa9"},"&light.cm-merge-b .cm-changedLineGutter":{background:"#2b2"},"&dark.cm-merge-b .cm-changedLineGutter":{background:"#8f8"},".cm-inlineChangedLineGutter":{background:"#75d"}}),tO=new $e.Compartment,vp=new $e.Compartment,bp=class{constructor(e){this.revertDOM=null,this.revertToA=!1,this.revertToLeft=!1,this.measuring=-1,this.diffConf=e.diffConfig||Kz;let r=[$e.Prec.low(gO),cV,lV,zu,Oe.EditorView.updateListener.of(f=>{this.measuring<0&&(f.heightChanged||f.viewportChanged)&&!f.transactions.some(d=>d.effects.some(h=>h.is(yp)))&&this.measure()})],n=[Un.of({side:"a",sibling:()=>this.b,highlightChanges:e.highlightChanges!==!1,markGutter:e.gutter!==!1})];e.gutter!==!1&&n.push(mp);let i=$e.EditorState.create({doc:e.a.doc,selection:e.a.selection,extensions:[e.a.extensions||[],Oe.EditorView.editorAttributes.of({class:"cm-merge-a"}),vp.of(n),r]}),s=[Un.of({side:"b",sibling:()=>this.a,highlightChanges:e.highlightChanges!==!1,markGutter:e.gutter!==!1})];e.gutter!==!1&&s.push(mp);let a=$e.EditorState.create({doc:e.b.doc,selection:e.b.selection,extensions:[e.b.extensions||[],Oe.EditorView.editorAttributes.of({class:"cm-merge-b"}),vp.of(s),r]});this.chunks=ts.build(i.doc,a.doc,this.diffConf);let o=[Ha.init(()=>this.chunks),tO.of(e.collapseUnchanged?eO(e.collapseUnchanged):[])];i=i.update({effects:$e.StateEffect.appendConfig.of(o)}).state,a=a.update({effects:$e.StateEffect.appendConfig.of(o)}).state,this.dom=document.createElement("div"),this.dom.className="cm-mergeView",this.editorDOM=this.dom.appendChild(document.createElement("div")),this.editorDOM.className="cm-mergeViewEditors";let l=e.orientation||"a-b",c=document.createElement("div");c.className="cm-mergeViewEditor";let u=document.createElement("div");u.className="cm-mergeViewEditor",this.editorDOM.appendChild(l=="a-b"?c:u),this.editorDOM.appendChild(l=="a-b"?u:c),this.a=new Oe.EditorView({state:i,parent:c,root:e.root,dispatchTransactions:f=>this.dispatch(f,this.a)}),this.b=new Oe.EditorView({state:a,parent:u,root:e.root,dispatchTransactions:f=>this.dispatch(f,this.b)}),this.setupRevertControls(!!e.revertControls,e.revertControls=="b-to-a",e.renderRevertControl),e.parent&&e.parent.appendChild(this.dom),this.scheduleMeasure()}dispatch(e,r){if(e.some(n=>n.docChanged)){let n=e[e.length-1],i=e.reduce((a,o)=>a.compose(o.changes),$e.ChangeSet.empty(e[0].startState.doc.length));this.chunks=r==this.a?ts.updateA(this.chunks,n.newDoc,this.b.state.doc,i,this.diffConf):ts.updateB(this.chunks,this.a.state.doc,n.newDoc,i,this.diffConf),r.update([...e,n.state.update({effects:cy.of(this.chunks)})]);let s=r==this.a?this.b:this.a;s.update([s.state.update({effects:cy.of(this.chunks)})]),this.scheduleMeasure()}else r.update(e)}reconfigure(e){if("diffConfig"in e&&(this.diffConf=e.diffConfig),"orientation"in e){let s=e.orientation!="b-a";if(s!=(this.editorDOM.firstChild==this.a.dom.parentNode)){let a=this.a.dom.parentNode,o=this.b.dom.parentNode;a.remove(),o.remove(),this.editorDOM.insertBefore(s?a:o,this.editorDOM.firstChild),this.editorDOM.appendChild(s?o:a),this.revertToLeft=!this.revertToLeft,this.revertDOM&&(this.revertDOM.textContent="")}}if("revertControls"in e||"renderRevertControl"in e){let s=!!this.revertDOM,a=this.revertToA,o=this.renderRevert;"revertControls"in e&&(s=!!e.revertControls,a=e.revertControls=="b-to-a"),"renderRevertControl"in e&&(o=e.renderRevertControl),this.setupRevertControls(s,a,o)}let r="highlightChanges"in e,n="gutter"in e,i="collapseUnchanged"in e;if(r||n||i){let s=[],a=[];if(r||n){let o=this.a.state.facet(Un),l=n?e.gutter!==!1:o.markGutter,c=r?e.highlightChanges!==!1:o.highlightChanges;s.push(vp.reconfigure([Un.of({side:"a",sibling:()=>this.b,highlightChanges:c,markGutter:l}),l?mp:[]])),a.push(vp.reconfigure([Un.of({side:"b",sibling:()=>this.a,highlightChanges:c,markGutter:l}),l?mp:[]]))}if(i){let o=tO.reconfigure(e.collapseUnchanged?eO(e.collapseUnchanged):[]);s.push(o),a.push(o)}this.a.dispatch({effects:s}),this.b.dispatch({effects:a})}this.scheduleMeasure()}setupRevertControls(e,r,n){this.revertToA=r,this.revertToLeft=this.revertToA==(this.editorDOM.firstChild==this.a.dom.parentNode),this.renderRevert=n,!e&&this.revertDOM?(this.revertDOM.remove(),this.revertDOM=null):e&&!this.revertDOM?(this.revertDOM=this.editorDOM.insertBefore(document.createElement("div"),this.editorDOM.firstChild.nextSibling),this.revertDOM.addEventListener("mousedown",i=>this.revertClicked(i)),this.revertDOM.className="cm-merge-revert"):this.revertDOM&&(this.revertDOM.textContent="")}scheduleMeasure(){if(this.measuring<0){let e=this.dom.ownerDocument.defaultView||window;this.measuring=e.requestAnimationFrame(()=>{this.measuring=-1,this.measure()})}}measure(){iV(this.a,this.b,this.chunks),this.revertDOM&&this.updateRevertButtons()}updateRevertButtons(){let e=this.revertDOM,r=e.firstChild,n=this.a.viewport,i=this.b.viewport;for(let s=0;sn.to||a.fromB>i.to)break;if(a.fromA-1&&(this.dom.ownerDocument.defaultView||window).cancelAnimationFrame(this.measuring),this.dom.remove()}};function rO(t){let e=t.nextSibling;return t.remove(),e}var gy=require("@codemirror/state");function vy(t,e,r){let n=[],i=t.split(` `),s=e.split(` `);for(let a of r){let{oldStart:o,oldLines:l,newStart:c,newLines:u}=a,f=Nt.createHunk(o,l,c,u);if(a.oldLines>0){for(let d=o;di.length&&i.last()!=""&&(f.removed.no_nl_at_eof=!0)}if(a.newLines>0){for(let d=c;ds.length&&s.last()!=""&&(f.added.no_nl_at_eof=!0)}n.push(f)}return n}function wy(t,e,r){let n=e.lineAt(t.fromA).number,i=t.fromA==t.toA?0:_p(e,t.endA)-n+1,s=r.lineAt(t.fromB).number,a=t.fromB==t.toB?0:_p(r,t.endB)-s+1,o={oldStart:n,oldLines:i,newStart:s,newLines:a};return o.oldLines==0&&(o.oldStart-=1),o.newLines==0&&(o.newStart-=1),o}var vO={scanLimit:1e3,timeout:200};function uV(t,e,r,n){let i=gy.Text.of(t.split(` `)),s=gy.Text.of(e.split(` `)),a=r&&n?ts.updateB(r,i,s,n,vO):ts.build(i,s,vO),o=[];for(let l=0;lh.vend&&(f=f-(h.added.count-h.removed.count)),o>h.vend&&(d=d-(h.added.count-h.removed.count));c.added.lines=u.compareText.split(` `).slice(f-1,d),u.compareTextHead?c.removed.lines=u.compareTextHead.split(` `).slice(c.removed.start-1,c.removed.start-1+c.removed.count):c.removed.lines=[]}else c.added.lines=e.doc.toString().split(` `).slice(a-1,o),o===e.doc.lines&&!e.doc.toString().endsWith(` `)&&(c.added.no_nl_at_eof=!0),c.removed.lines=u.compareText.split(` `).slice(c.removed.start-1,c.removed.start-1+c.removed.count),c.removed.start+c.removed.count-1===u.compareText.split(` `).length&&!u.compareText.endsWith(` `)&&(c.removed.no_nl_at_eof=!0);return c}},$r=Nl.StateField.define({create:t=>{},update:(t,e)=>{let r=t?{...t}:{maxDiffTimeMs:0,hunks:[],stagedHunks:[],chunks:void 0,isDirty:!1},n=!1;for(let i of e.effects)i.is(Hl)&&(r.compareText=i.value.compareText,r.compareTextHead=i.value.compareTextHead,n=(t==null?void 0:t.compareText)!==i.value.compareText,n&&(r.chunks=void 0)),i.is(Vu)&&yO(r,i.value,e.state);if(r.compareText!==void 0){if(n||e.docChanged){r.isDirty=!0;let i=fV(e,r.compareText,r.chunks,r.maxDiffTimeMs);i&&yO(r,i,e.state)}}else r.compareText=void 0,r.compareTextHead=void 0,r.chunks=void 0,r.hunks=[],r.stagedHunks=[],r.isDirty=!1;return r}});function yO(t,e,r){var i,s;t.hunks=e.hunks,t.chunks=e.chunks,t.isDirty=!1,t.maxDiffTimeMs=Math.max(.95*t.maxDiffTimeMs,e.diffDuration);let n=r.field(Bl.editorInfoField).file;(s=(i=Ln.plugin)==null?void 0:i.editorIntegration.signsFeature.changeStatusBar)==null||s.display(t.hunks,n)}var yy=Nl.StateField.define({create:()=>({debouncer:(0,Bl.debounce)(t=>{let{state:e,compareText:r,previousChunks:n,changeDesc:i}=t,s=bO(e,r,n,i);e.field(Bl.editorEditorField).dispatch({effects:Vu.of(s)})},1e3,!0),maxDiffTimeMs:0}),update:(t,e)=>{var r;for(let n of e.effects)if(n.is(Vu))return t.changeDesc=void 0,t;return!t.changeDesc&&e.changes?t.changeDesc=e.changes:t.changeDesc=(r=t.changeDesc)==null?void 0:r.composeDesc(e.changes),t}});function bO(t,e,r,n){let i=t.doc.toString(),s=performance.now(),{hunks:a,chunks:o}=wO(e,i,r,n),l=performance.now()-s;return{hunks:a,chunks:o,diffDuration:l}}function fV(t,e,r,n){let i=t.state,s=Math.abs(t.changes.length-t.changes.newLength),a=i.field(yy);if(s>1e3||n>16)a.debouncer({state:i,compareText:e,previousChunks:r,changeDesc:a.changeDesc});else return a.changeDesc=void 0,bO(i,e,r,t.changes)}var Hl=Nl.StateEffect.define(),Vu=Nl.StateEffect.define();function _O(t,e){return e.update({effects:Hl.of(t)})}p();p();p();var rt;(function(t){t.INSERT="insert",t.DELETE="delete",t.CONTEXT="context"})(rt||(rt={}));var xO={LINE_BY_LINE:"line-by-line",SIDE_BY_SIDE:"side-by-side"},SO={LINES:"lines",WORDS:"words",NONE:"none"},EO={WORD:"word",CHAR:"char"},Ua;(function(t){t.AUTO="auto",t.DARK="dark",t.LIGHT="light"})(Ua||(Ua={}));p();var dV=["-","[","]","/","{","}","(",")","*","+","?",".","\\","^","$","|"],hV=RegExp("["+dV.join("\\")+"]","g");function kO(t){return t.replace(hV,"\\$&")}function by(t){return t&&t.replace(/\\/g,"/")}function AO(t){let e,r,n,i=0;for(e=0,n=t.length;e1?r[r.length-1]:e}function TO(t,e){return e.reduce((r,n)=>r||t.startsWith(n),!1)}var PO=["a/","b/","i/","w/","c/","o/"];function Vs(t,e,r){let n=r!==void 0?[...PO,r]:PO,i=e?new RegExp(`^${kO(e)} "?(.+?)"?$`):new RegExp("^\"?(.+?)\"?$"),[,s=""]=i.exec(t)||[],a=n.find(l=>s.indexOf(l)===0);return(a?s.slice(a.length):s).replace(/\s+\d{4}-\d{2}-\d{2} \d{2}:\d{2}:\d{2}(?:\.\d+)? [+-]\d{4}.*$/,"")}function pV(t,e){return Vs(t,"---",e)}function mV(t,e){return Vs(t,"+++",e)}function RO(t,e={}){let r=[],n=null,i=null,s=null,a=null,o=null,l=null,c=null,u="--- ",f="+++ ",d="@@",h=/^old mode (\d{6})/,m=/^new mode (\d{6})/,g=/^deleted file mode (\d{6})/,v=/^new file mode (\d{6})/,w=/^copy from "?(.+)"?/,b=/^copy to "?(.+)"?/,k=/^rename from "?(.+)"?/,x=/^rename to "?(.+)"?/,E=/^similarity index (\d+)%/,A=/^dissimilarity index (\d+)%/,y=/^index ([\da-z]+)\.\.([\da-z]+)\s*(\d{6})?/,S=/^Binary files (.*) and (.*) differ/,_=/^GIT binary patch/,C=/^index ([\da-z]+),([\da-z]+)\.\.([\da-z]+)/,P=/^mode (\d{6}),(\d{6})\.\.(\d{6})/,N=/^new file mode (\d{6})/,B=/^deleted file mode (\d{6}),(\d{6})/,H=t.replace(/\\ No newline at end of file/g,"").replace(/\r\n?/g,` `).split(` `);function ce(){i!==null&&n!==null&&(n.blocks.push(i),i=null)}function Pe(){n!==null&&(!n.oldName&&l!==null&&(n.oldName=l),!n.newName&&c!==null&&(n.newName=c),n.newName&&(r.push(n),n=null)),l=null,c=null}function ve(){ce(),Pe(),n={blocks:[],deletedLines:0,addedLines:0}}function ie(W){ce();let X;n!==null&&((X=/^@@ -(\d+)(?:,\d+)? \+(\d+)(?:,\d+)? @@.*/.exec(W))?(n.isCombined=!1,s=parseInt(X[1],10),o=parseInt(X[2],10)):(X=/^@@@ -(\d+)(?:,\d+)? -(\d+)(?:,\d+)? \+(\d+)(?:,\d+)? @@@.*/.exec(W))?(n.isCombined=!0,s=parseInt(X[1],10),a=parseInt(X[2],10),o=parseInt(X[3],10)):(W.startsWith(d)&&console.error("解析行失败,从 0 开始!"),s=0,o=0,n.isCombined=!1)),i={lines:[],oldStartLine:s,oldStartLine2:a,newStartLine:o,header:W}}function xe(W){if(n===null||i===null||s===null||o===null)return;let X={content:W},q=n.isCombined?["+ "," +","++"]:["+"],De=n.isCombined?["- "," -","--"]:["-"];TO(W,q)?(n.addedLines++,X.type=rt.INSERT,X.oldNumber=void 0,X.newNumber=o++):TO(W,De)?(n.deletedLines++,X.type=rt.DELETE,X.oldNumber=s++,X.newNumber=void 0):(X.type=rt.CONTEXT,X.oldNumber=s++,X.newNumber=o++),i.lines.push(X)}function we(W,X){let q=X;for(;q{if(!W||W.startsWith("*"))return;let q,De=H[X-1],ar=H[X+1],Ft=H[X+2];if(W.startsWith("diff --git")||W.startsWith("diff --combined")){if(ve(),(q=/^diff --git "?([a-ciow]\/.+)"? "?([a-ciow]\/.+)"?/.exec(W))&&(l=Vs(q[1],void 0,e.dstPrefix),c=Vs(q[2],void 0,e.srcPrefix)),n===null)throw new Error("Where is my file !!!");n.isGitDiff=!0;return}if(W.startsWith("Binary files")&&!(n!=null&&n.isGitDiff)){if(ve(),(q=/^Binary files "?([a-ciow]\/.+)"? and "?([a-ciow]\/.+)"? differ/.exec(W))&&(l=Vs(q[1],void 0,e.dstPrefix),c=Vs(q[2],void 0,e.srcPrefix)),n===null)throw new Error("Where is my file !!!");n.isBinary=!0;return}if((!n||!n.isGitDiff&&n&&W.startsWith(u)&&ar.startsWith(f)&&Ft.startsWith(d))&&ve(),n!=null&&n.isTooBig)return;if(n&&(typeof e.diffMaxChanges=="number"&&n.addedLines+n.deletedLines>e.diffMaxChanges||typeof e.diffMaxLineLength=="number"&&W.length>e.diffMaxLineLength)){n.isTooBig=!0,n.addedLines=0,n.deletedLines=0,n.blocks=[],i=null;let kt=typeof e.diffTooBigMessage=="function"?e.diffTooBigMessage(r.length):"Diff too big to be displayed";ie(kt);return}if(W.startsWith(u)&&ar.startsWith(f)||W.startsWith(f)&&De.startsWith(u)){if(n&&!n.oldName&&W.startsWith("--- ")&&(q=pV(W,e.srcPrefix))){n.oldName=q,n.language=CO(n.oldName,n.language);return}if(n&&!n.newName&&W.startsWith("+++ ")&&(q=mV(W,e.dstPrefix))){n.newName=q,n.language=CO(n.newName,n.language);return}}if(n&&(W.startsWith(d)||n.isGitDiff&&n.oldName&&n.newName&&!i)){ie(W);return}if(i&&(W.startsWith("+")||W.startsWith("-")||W.startsWith(" "))){xe(W);return}let Ie=!we(W,X);if(n===null)throw new Error("Where is my file !!!");(q=h.exec(W))?n.oldMode=q[1]:(q=m.exec(W))?n.newMode=q[1]:(q=g.exec(W))?(n.deletedFileMode=q[1],n.isDeleted=!0):(q=v.exec(W))?(n.newFileMode=q[1],n.isNew=!0):(q=w.exec(W))?(Ie&&(n.oldName=q[1]),n.isCopy=!0):(q=b.exec(W))?(Ie&&(n.newName=q[1]),n.isCopy=!0):(q=k.exec(W))?(Ie&&(n.oldName=q[1]),n.isRename=!0):(q=x.exec(W))?(Ie&&(n.newName=q[1]),n.isRename=!0):(q=S.exec(W))?(n.isBinary=!0,n.oldName=Vs(q[1],void 0,e.srcPrefix),n.newName=Vs(q[2],void 0,e.dstPrefix),ie("Binary file")):_.test(W)?(n.isBinary=!0,ie(W)):(q=E.exec(W))?n.unchangedPercentage=parseInt(q[1],10):(q=A.exec(W))?n.changedPercentage=parseInt(q[1],10):(q=y.exec(W))?(n.checksumBefore=q[1],n.checksumAfter=q[2],q[3]&&(n.mode=q[3])):(q=C.exec(W))?(n.checksumBefore=[q[2],q[3]],n.checksumAfter=q[1]):(q=P.exec(W))?(n.oldMode=[q[2],q[3]],n.newMode=q[1]):(q=N.exec(W))?(n.newFileMode=q[1],n.isNew=!0):(q=B.exec(W))&&(n.deletedFileMode=q[1],n.isDeleted=!0)}),ce(),Pe(),r}p();p();p();function vV(t,e){if(t.length===0)return e.length;if(e.length===0)return t.length;let r=[],n;for(n=0;n<=e.length;n++)r[n]=[n];let i;for(i=0;i<=t.length;i++)r[0][i]=i;for(n=1;n<=e.length;n++)for(i=1;i<=t.length;i++)e.charAt(n-1)===t.charAt(i-1)?r[n][i]=r[n-1][i-1]:r[n][i]=Math.min(r[n-1][i-1]+1,Math.min(r[n][i-1]+1,r[n-1][i]+1));return r[e.length][t.length]}function Ul(t){return(e,r)=>{let n=t(e).trim(),i=t(r).trim();return vV(n,i)/(n.length+i.length)}}function Gl(t){function e(n,i,s=new Map){let a=1/0,o;for(let l=0;l0||o.indexB>0)&&(k=v.concat(k)),(n.length>d||i.length>h)&&(k=k.concat(b)),k}return r}var qt={INSERTS:"d2h-ins",DELETES:"d2h-del",CONTEXT:"d2h-cntx",INFO:"d2h-info",INSERT_CHANGES:"d2h-ins d2h-change",DELETE_CHANGES:"d2h-del d2h-change"},Ga={matching:SO.NONE,matchWordsThreshold:.25,maxLineLengthHighlight:1e4,diffStyle:EO.WORD,colorScheme:Ua.LIGHT},yi="/",$O=Ul(t=>t.value),wV=Gl($O);function xy(t){return t.indexOf("dev/null")!==-1}function yV(t){return t.replace(/(]*>((.|\n)*?)<\/ins>)/g,"")}function bV(t){return t.replace(/(]*>((.|\n)*?)<\/del>)/g,"")}function jl(t){switch(t){case rt.CONTEXT:return qt.CONTEXT;case rt.INSERT:return qt.INSERTS;case rt.DELETE:return qt.DELETES}}function ql(t){switch(t){case Ua.DARK:return"d2h-dark-color-scheme";case Ua.AUTO:return"d2h-auto-color-scheme";case Ua.LIGHT:default:return"d2h-light-color-scheme"}}function _V(t){return t?2:1}function Ys(t){return t.slice(0).replace(/&/g,"&").replace(//g,">").replace(/"/g,""").replace(/'/g,"'").replace(/\//g,"/")}function Sn(t,e,r=!0){let n=_V(e);return{prefix:t.substring(0,n),content:r?Ys(t.substring(n)):t.substring(n)}}function ja(t){let e=by(t.oldName),r=by(t.newName);if(e!==r&&!xy(e)&&!xy(r)){let n=[],i=[],s=e.split(yi),a=r.split(yi),o=s.length,l=a.length,c=0,u=o-1,f=l-1;for(;cc&&f>c&&s[u]===a[f];)i.unshift(a[f]),u-=1,f-=1;let d=n.join(yi),h=i.join(yi),m=s.slice(c,u+1).join(yi),g=a.slice(c,f+1).join(yi);return d.length&&h.length?d+yi+"{"+m+" → "+g+"}"+yi+h:d.length?d+yi+"{"+m+" → "+g+"}":h.length?"{"+m+" → "+g+"}"+yi+h:e+" → "+r}else return xy(r)?e:r}function Wl(t){return`d2h-${AO(ja(t)).toString().slice(-6)}`}function zl(t){let e="file-changed";return t.isRename||t.isCopy?e="file-renamed":t.isNew?e="file-added":t.isDeleted?e="file-deleted":t.newName!==t.oldName&&(e="file-renamed"),e}function Sp(t,e,r,n={}){let{matching:i,maxLineLengthHighlight:s,matchWordsThreshold:a,diffStyle:o}=Object.assign(Object.assign({},Ga),n),l=Sn(t,r,!1),c=Sn(e,r,!1);if(l.content.length>s||c.content.length>s)return{oldLine:{prefix:l.prefix,content:Ys(l.content)},newLine:{prefix:c.prefix,content:Ys(c.content)}};let u=o==="char"?Fv(l.content,c.content):Bv(l.content,c.content),f=[];if(o==="word"&&i==="words"){let h=u.filter(v=>v.removed),m=u.filter(v=>v.added);wV(m,h).forEach(v=>{v[0].length===1&&v[1].length===1&&$O(v[0][0],v[1][0]){let g=m.added?"ins":m.removed?"del":null,v=f.indexOf(m)>-1?" class=\"d2h-change\"":"",w=Ys(m.value);return g!==null?`${h}<${g}${v}>${w}`:`${h}${w}`},"");return{oldLine:{prefix:l.prefix,content:yV(d)},newLine:{prefix:c.prefix,content:bV(d)}}}var IO="file-summary",xV="icon",SV={colorScheme:Ga.colorScheme},Ep=class{constructor(e,r={}){this.hoganUtils=e,this.config=Object.assign(Object.assign({},SV),r)}render(e){let r=e.map(n=>this.hoganUtils.render(IO,"line",{fileHtmlId:Wl(n),oldName:n.oldName,newName:n.newName,fileName:ja(n),deletedLines:"-"+n.deletedLines,addedLines:"+"+n.addedLines},{fileIcon:this.hoganUtils.template(xV,zl(n))})).join(` `);return this.hoganUtils.render(IO,"wrapper",{colorScheme:ql(this.config.colorScheme),filesNumber:e.length,files:r})}};p();var Ey=Object.assign(Object.assign({},Ga),{renderNothingWhenEmpty:!1,matchingMaxComparisons:2500,maxLineSizeInBlockForComparison:200}),Yu="generic",FO="line-by-line",EV="icon",kV="tag",Xu=class{constructor(e,r={}){this.hoganUtils=e,this.config=Object.assign(Object.assign({},Ey),r)}render(e){let r=e.map(n=>{let i;return n.blocks.length?i=this.generateFileHtml(n):i=this.generateEmptyDiff(),this.makeFileDiffHtml(n,i)}).join(` `);return this.hoganUtils.render(Yu,"wrapper",{colorScheme:ql(this.config.colorScheme),content:r})}makeFileDiffHtml(e,r){if(this.config.renderNothingWhenEmpty&&Array.isArray(e.blocks)&&e.blocks.length===0)return"";let n=this.hoganUtils.template(FO,"file-diff"),i=this.hoganUtils.template(Yu,"file-path"),s=this.hoganUtils.template(EV,"file"),a=this.hoganUtils.template(kV,zl(e));return n.render({file:e,fileHtmlId:Wl(e),diffs:r,filePath:i.render({fileDiffName:ja(e)},{fileIcon:s,fileTag:a})})}generateEmptyDiff(){return this.hoganUtils.render(Yu,"empty-diff",{contentClass:"d2h-code-line",CSSLineClass:qt})}generateFileHtml(e){let r=Gl(Ul(n=>Sn(n.content,e.isCombined).content));return e.blocks.map(n=>{let i=this.hoganUtils.render(Yu,"block-header",{CSSLineClass:qt,blockHeader:e.isTooBig?n.header:Ys(n.header),lineClass:"d2h-code-linenumber",contentClass:"d2h-code-line"});return this.applyLineGroupping(n).forEach(([s,a,o])=>{if(a.length&&o.length&&!s.length)this.applyRematchMatching(a,o,r).map(([l,c])=>{let{left:u,right:f}=this.processChangedLines(e,e.isCombined,l,c);i+=u,i+=f});else if(s.length)s.forEach(l=>{let{prefix:c,content:u}=Sn(l.content,e.isCombined);i+=this.generateSingleLineHtml(e,{type:qt.CONTEXT,prefix:c,content:u,oldNumber:l.oldNumber,newNumber:l.newNumber})});else if(a.length||o.length){let{left:l,right:c}=this.processChangedLines(e,e.isCombined,a,o);i+=l,i+=c}else console.error("处理行组时进入未知状态",s,a,o)}),i}).join(` `)}applyLineGroupping(e){let r=[],n=[],i=[];for(let s=0;s0)&&(r.push([[],n,i]),n=[],i=[]),a.type===rt.CONTEXT?r.push([[a],[],[]]):a.type===rt.INSERT&&n.length===0?r.push([[],[],[a]]):a.type===rt.INSERT&&n.length>0?i.push(a):a.type===rt.DELETE&&n.push(a)}return(n.length||i.length)&&(r.push([[],n,i]),n=[],i=[]),r}applyRematchMatching(e,r,n){let i=e.length*r.length,s=xp(e.concat(r).map(o=>o.content.length));return i{let i;return n.blocks.length?i=this.generateFileHtml(n):i=this.generateEmptyDiff(),this.makeFileDiffHtml(n,i)}).join(` `);return this.hoganUtils.render(Zu,"wrapper",{colorScheme:ql(this.config.colorScheme),content:r})}makeFileDiffHtml(e,r){if(this.config.renderNothingWhenEmpty&&Array.isArray(e.blocks)&&e.blocks.length===0)return"";let n=this.hoganUtils.template(AV,"file-diff"),i=this.hoganUtils.template(Zu,"file-path"),s=this.hoganUtils.template(CV,"file"),a=this.hoganUtils.template(TV,zl(e));return n.render({file:e,fileHtmlId:Wl(e),diffs:r,filePath:i.render({fileDiffName:ja(e)},{fileIcon:s,fileTag:a})})}generateEmptyDiff(){return{right:"",left:this.hoganUtils.render(Zu,"empty-diff",{contentClass:"d2h-code-side-line",CSSLineClass:qt})}}generateFileHtml(e){let r=Gl(Ul(n=>Sn(n.content,e.isCombined).content));return e.blocks.map(n=>{let i={left:this.makeHeaderHtml(n.header,e),right:this.makeHeaderHtml("")};return this.applyLineGroupping(n).forEach(([s,a,o])=>{if(a.length&&o.length&&!s.length)this.applyRematchMatching(a,o,r).map(([l,c])=>{let{left:u,right:f}=this.processChangedLines(e.isCombined,l,c);i.left+=u,i.right+=f});else if(s.length)s.forEach(l=>{let{prefix:c,content:u}=Sn(l.content,e.isCombined),{left:f,right:d}=this.generateLineHtml({type:qt.CONTEXT,prefix:c,content:u,number:l.oldNumber},{type:qt.CONTEXT,prefix:c,content:u,number:l.newNumber});i.left+=f,i.right+=d});else if(a.length||o.length){let{left:l,right:c}=this.processChangedLines(e.isCombined,a,o);i.left+=l,i.right+=c}else console.error("处理行组时进入未知状态",s,a,o)}),i}).reduce((n,i)=>({left:n.left+i.left,right:n.right+i.right}),{left:"",right:""})}applyLineGroupping(e){let r=[],n=[],i=[];for(let s=0;s0)&&(r.push([[],n,i]),n=[],i=[]),a.type===rt.CONTEXT?r.push([[a],[],[]]):a.type===rt.INSERT&&n.length===0?r.push([[],[],[a]]):a.type===rt.INSERT&&n.length>0?i.push(a):a.type===rt.DELETE&&n.push(a)}return(n.length||i.length)&&(r.push([[],n,i]),n=[],i=[]),r}applyRematchMatching(e,r,n){let i=e.length*r.length,s=xp(e.concat(r).map(o=>o.content.length));return i"),n.b(` `+r),n.b(" "),n.b(` `+r),n.b(n.rp(""),n.b(n.v(n.f("fileName",t,e,0))),n.b(""),n.b(` `+r),n.b(" "),n.b(` `+r),n.b(" "),n.b(n.v(n.f("addedLines",t,e,0))),n.b(""),n.b(` `+r),n.b(" "),n.b(n.v(n.f("deletedLines",t,e,0))),n.b(""),n.b(` `+r),n.b(" "),n.b(` `+r),n.b(" "),n.b(` `+r),n.b(""),n.fl()},partials:{""),n.b(` `+r),n.b("
"),n.b(` `+r),n.b(" Files changed ("),n.b(n.v(n.f("filesNumber",t,e,0))),n.b(")"),n.b(` `+r),n.b(" hide"),n.b(` `+r),n.b(" show"),n.b(` `+r),n.b("
"),n.b(` `+r),n.b("
    "),n.b(` `+r),n.b(" "),n.b(n.t(n.f("files",t,e,0))),n.b(` `+r),n.b("
"),n.b(` `+r),n.b(""),n.fl()},partials:{},subs:{}});gt["generic-block-header"]=new _t.Template({code:function(t,e,r){var n=this;return n.b(r=r||""),n.b(""),n.b(` `+r),n.b(" "),n.b(` `+r),n.b(" "),n.b(` `+r),n.b("
"),n.s(n.f("blockHeader",t,e,1),t,e,0,156,173,"{{ }}")&&(n.rs(t,e,function(i,s,a){a.b(a.t(a.f("blockHeader",i,s,0)))}),t.pop()),n.s(n.f("blockHeader",t,e,1),t,e,1,0,0,"")||n.b(" "),n.b("
"),n.b(` `+r),n.b(" "),n.b(` `+r),n.b(""),n.fl()},partials:{},subs:{}});gt["generic-empty-diff"]=new _t.Template({code:function(t,e,r){var n=this;return n.b(r=r||""),n.b(""),n.b(` `+r),n.b(" "),n.b(` `+r),n.b("
"),n.b(` `+r),n.b(" 文件没有更改"),n.b(` `+r),n.b("
"),n.b(` `+r),n.b(" "),n.b(` `+r),n.b(""),n.fl()},partials:{},subs:{}});gt["generic-file-path"]=new _t.Template({code:function(t,e,r){var n=this;return n.b(r=r||""),n.b(""),n.b(` `+r),n.b(n.rp(""),n.b(n.v(n.f("fileDiffName",t,e,0))),n.b(""),n.b(` `+r),n.b(n.rp(""),n.b(` `+r),n.b(""),n.fl()},partials:{""),n.b(` `+r),n.b(" "),n.b(` `+r),n.b(" "),n.b(n.t(n.f("lineNumber",t,e,0))),n.b(` `+r),n.b(" "),n.b(` `+r),n.b(" "),n.b(` `+r),n.b("
"),n.b(` `+r),n.s(n.f("prefix",t,e,1),t,e,0,162,238,"{{ }}")&&(n.rs(t,e,function(i,s,a){a.b(" "),a.b(a.t(a.f("prefix",i,s,0))),a.b(""),a.b(` `+r)}),t.pop()),n.s(n.f("prefix",t,e,1),t,e,1,0,0,"")||(n.b("  "),n.b(` `+r)),n.s(n.f("content",t,e,1),t,e,0,371,445,"{{ }}")&&(n.rs(t,e,function(i,s,a){a.b(" "),a.b(a.t(a.f("content",i,s,0))),a.b(""),a.b(` `+r)}),t.pop()),n.s(n.f("content",t,e,1),t,e,1,0,0,"")||(n.b("
"),n.b(` `+r)),n.b("
"),n.b(` `+r),n.b(" "),n.b(` `+r),n.b(""),n.fl()},partials:{},subs:{}});gt["generic-wrapper"]=new _t.Template({code:function(t,e,r){var n=this;return n.b(r=r||""),n.b("
"),n.b(` `+r),n.b(" "),n.b(n.t(n.f("content",t,e,0))),n.b(` `+r),n.b("
"),n.fl()},partials:{},subs:{}});gt["icon-file-added"]=new _t.Template({code:function(t,e,r){var n=this;return n.b(r=r||""),n.b(""),n.b(` `+r),n.b(" "),n.b(` `+r),n.b(""),n.fl()},partials:{},subs:{}});gt["icon-file-changed"]=new _t.Template({code:function(t,e,r){var n=this;return n.b(r=r||""),n.b(""),n.b(` `+r),n.b(" "),n.b(` `+r),n.b(""),n.fl()},partials:{},subs:{}});gt["icon-file-deleted"]=new _t.Template({code:function(t,e,r){var n=this;return n.b(r=r||""),n.b(""),n.b(` `+r),n.b(" "),n.b(` `+r),n.b(""),n.fl()},partials:{},subs:{}});gt["icon-file-renamed"]=new _t.Template({code:function(t,e,r){var n=this;return n.b(r=r||""),n.b(""),n.b(` `+r),n.b(" "),n.b(` `+r),n.b(""),n.fl()},partials:{},subs:{}});gt["icon-file"]=new _t.Template({code:function(t,e,r){var n=this;return n.b(r=r||""),n.b(""),n.b(` `+r),n.b(" "),n.b(` `+r),n.b(""),n.fl()},partials:{},subs:{}});gt["line-by-line-file-diff"]=new _t.Template({code:function(t,e,r){var n=this;return n.b(r=r||""),n.b("
"),n.b(` `+r),n.b("
"),n.b(` `+r),n.b(" "),n.b(n.t(n.f("filePath",t,e,0))),n.b(` `+r),n.b("
"),n.b(` `+r),n.b("
"),n.b(` `+r),n.b("
"),n.b(` `+r),n.b(" "),n.b(` `+r),n.b(" "),n.b(` `+r),n.b(" "),n.b(n.t(n.f("diffs",t,e,0))),n.b(` `+r),n.b(" "),n.b(` `+r),n.b("
"),n.b(` `+r),n.b("
"),n.b(` `+r),n.b("
"),n.b(` `+r),n.b("
"),n.fl()},partials:{},subs:{}});gt["line-by-line-numbers"]=new _t.Template({code:function(t,e,r){var n=this;return n.b(r=r||""),n.b("
"),n.b(n.v(n.f("oldNumber",t,e,0))),n.b("
"),n.b(` `+r),n.b("
"),n.b(n.v(n.f("newNumber",t,e,0))),n.b("
"),n.fl()},partials:{},subs:{}});gt["side-by-side-file-diff"]=new _t.Template({code:function(t,e,r){var n=this;return n.b(r=r||""),n.b("
"),n.b(` `+r),n.b("
"),n.b(` `+r),n.b(" "),n.b(n.t(n.f("filePath",t,e,0))),n.b(` `+r),n.b("
"),n.b(` `+r),n.b("
"),n.b(` `+r),n.b("
"),n.b(` `+r),n.b("
"),n.b(` `+r),n.b(" "),n.b(` `+r),n.b(" "),n.b(` `+r),n.b(" "),n.b(n.t(n.d("diffs.left",t,e,0))),n.b(` `+r),n.b(" "),n.b(` `+r),n.b("
"),n.b(` `+r),n.b("
"),n.b(` `+r),n.b("
"),n.b(` `+r),n.b("
"),n.b(` `+r),n.b("
"),n.b(` `+r),n.b(" "),n.b(` `+r),n.b(" "),n.b(` `+r),n.b(" "),n.b(n.t(n.d("diffs.right",t,e,0))),n.b(` `+r),n.b(" "),n.b(` `+r),n.b("
"),n.b(` `+r),n.b("
"),n.b(` `+r),n.b("
"),n.b(` `+r),n.b("
"),n.b(` `+r),n.b("
"),n.fl()},partials:{},subs:{}});gt["tag-file-added"]=new _t.Template({code:function(t,e,r){var n=this;return n.b(r=r||""),n.b("ADDED"),n.fl()},partials:{},subs:{}});gt["tag-file-changed"]=new _t.Template({code:function(t,e,r){var n=this;return n.b(r=r||""),n.b("CHANGED"),n.fl()},partials:{},subs:{}});gt["tag-file-deleted"]=new _t.Template({code:function(t,e,r){var n=this;return n.b(r=r||""),n.b("DELETED"),n.fl()},partials:{},subs:{}});gt["tag-file-renamed"]=new _t.Template({code:function(t,e,r){var n=this;return n.b(r=r||""),n.b("RENAMED"),n.fl()},partials:{},subs:{}});var Qu=class{constructor({compiledTemplates:e={},rawTemplates:r={}}){let n=Object.entries(r).reduce((i,[s,a])=>{let o=Py.compile(a,{asString:!1});return Object.assign(Object.assign({},i),{[s]:o})},{});this.preCompiledTemplates=Object.assign(Object.assign(Object.assign({},gt),e),n)}static compile(e){return Py.compile(e,{asString:!1})}render(e,r,n,i,s){let a=this.templateKey(e,r);try{return this.preCompiledTemplates[a].render(n,i,s)}catch(o){throw new Error(`Could not find template to render '${a}'`)}}template(e,r){return this.preCompiledTemplates[this.templateKey(e,r)]}templateKey(e,r){return`${e}-${r}`}};var RV=Object.assign(Object.assign(Object.assign({},Ey),ky),{outputFormat:xO.LINE_BY_LINE,drawFileList:!0});function Ap(t,e={}){let r=Object.assign(Object.assign({},RV),e),n=typeof t=="string"?RO(t,r):t,i=new Qu(r),{colorScheme:s}=r,a={colorScheme:s},o=r.drawFileList?new Ep(i,a).render(n):"",l=r.outputFormat==="side-by-side"?new Ku(i,r).render(n):new Xu(i,r).render(n);return o+l}var UO=Ct(BO());var qa=require("obsidian"),Ry=Ju.StateEffect.define();function Xs(t,e){let r=t.state,n=r.field(Tp),i=r.field($r),s=r.doc.lineAt(e!=null?e:r.selection.main.head).number,a=Nt.findHunk(s,i==null?void 0:i.hunks)[0];if(!a)return;let o=r.doc.line(Math.max(1,a.added.start)).from,l=n.has(o);return r.field(qa.editorEditorField).dispatch({effects:Ry.of({pos:o,add:!l})})}var Tp=Ju.StateField.define({create:()=>new Set,update(t,e){let r=new Set;for(let n of e.effects)n.is(Ry)&&(n.value.add?t.add(n.value.pos):t.delete(n.value.pos));for(let n of t)r.add(e.changes.mapPos(n));return r}}),GO=Ju.StateField.define({create:t=>HO(t),update(t,e){return e.docChanged||e.effects.some(r=>r.is(Hl)||r.is(Ry))?HO(e.state):t},provide:t=>Cp.showTooltip.computeN([t],e=>e.field(t))}),jO=Cp.EditorView.baseTheme({".cm-tooltip.git-diff-tooltip":{"z-index":"var(--layer-popover)",backgroundColor:"var(--background-primary-alt)",border:"var(--border-width) solid var(--background-primary-alt)",borderRadius:"var(--radius-s)"},".cm-tooltip.git-diff-tooltip .tooltip-toolbar":{display:"flex",padding:"var(--size-2-1)"}});function HO(t){let e=t.field($r);return e?[...t.field(Tp)].map(n=>{let i=t.doc.lineAt(n),s=Nt.findHunk(i.number,e.hunks)[0];if(s)return{pos:n,above:!1,arrow:!1,strictSide:!0,clip:!1,create:()=>$V(s,t,n)}}).filter(n=>n!==void 0):[]}function $V(t,e,r){var g,v;let n=Nt.createPatch("file",[t],"10064",!1).join(` `)+` `,i=Ap(n,{colorScheme:UO.ColorSchemeType.AUTO,diffStyle:"word",drawFileList:!1}),s=new DOMParser().parseFromString(i,"text/html").querySelector(".d2h-file-diff"),a=document.createElement("div"),o=document.createElement("div");o.addClass("tooltip-toolbar");let l=(w,b)=>{let k=document.createElement("div");return(0,qa.setIcon)(k,w),k.setAttr("aria-label",b),k.addClass("clickable-icon"),k},c=l("x","Close hunk"),u=l("plus","暂存代码块"),f=l("undo","重置代码块");o.appendChild(c),o.appendChild(u),o.appendChild(f),a.appendChild(o),a.appendChild(s),a.addClass("git-diff-tooltip","git-diff");let d=e.field(qa.editorEditorField);c.onclick=()=>{Xs(d,r)},u.onclick=()=>{let w=Ln.plugin;w&&(w.promiseQueue.addTask(()=>w.hunkActions.stageHunk(r)),Xs(d,r))},f.onclick=()=>{let w=Ln.plugin;w&&(w.hunkActions.resetHunk(r),Xs(d,r))};let h=(v=(g=Ln.plugin)==null?void 0:g.app.workspace.getActiveViewOfType(qa.MarkdownView))==null?void 0:v.scope,m=h==null?void 0:h.register(null,"Escape",(w,b)=>{Xs(d,r)});return{dom:a,destroy:()=>{m&&(h==null||h.unregister(m))},update:w=>{r=w.changes.mapPos(r)}}}function qO(t){let e=t.app;t.addCommand({id:"edit-gitignore",name:"编辑 .gitignore",callback:async()=>{let r=t.gitManager.getRelativeVaultPath(".gitignore");(await e.vault.adapter.exists(r))||(await e.vault.adapter.write(r,""));let n=await e.vault.adapter.read(r),s=await new dp(e,n).openAndGetReslt();s!==void 0&&(await e.vault.adapter.write(r,s),await t.refresh())}}),t.addCommand({id:"open-git-view",name:"打开源代码管理视图",callback:async()=>{var i;let r=e.workspace.getLeavesOfType(jt.type),n;r.length===0?(n=(i=e.workspace.getRightLeaf(!1))!=null?i:e.workspace.getLeaf(),await n.setViewState({type:jt.type})):n=r.first(),await e.workspace.revealLeaf(n),e.workspace.trigger("obsidian-git:refresh")}}),t.addCommand({id:"open-history-view",name:"打开历史记录视图",callback:async()=>{var i;let r=e.workspace.getLeavesOfType(gn.type),n;r.length===0?(n=(i=e.workspace.getRightLeaf(!1))!=null?i:e.workspace.getLeaf(),await n.setViewState({type:gn.type})):n=r.first(),await e.workspace.revealLeaf(n),e.workspace.trigger("obsidian-git:refresh")}}),t.addCommand({id:"open-diff-view",name:"打开差异视图",checkCallback:r=>{let n=e.workspace.getActiveFile();if(r)return n!==null;{let i=t.gitManager.getRelativeRepoPath(n.path,!0);t.tools.openDiff({aFile:i,aRef:""})}}}),t.addCommand({id:"view-file-on-github",name:"在 GitHub 上打开文件",editorCallback:(r,{file:n})=>{if(n)return IF(r,n,t.gitManager)}}),t.addCommand({id:"view-history-on-github",name:"在 GitHub 上查看文件历史",editorCallback:(r,{file:n})=>{if(n)return FF(n,t.gitManager)}}),t.addCommand({id:"pull",name:"拉取",callback:()=>t.promiseQueue.addTask(()=>t.pullChangesFromRemote())}),t.addCommand({id:"fetch",name:"获取",callback:()=>t.promiseQueue.addTask(()=>t.fetch())}),t.addCommand({id:"switch-to-remote-branch",name:"切换到远程分支",callback:()=>t.promiseQueue.addTask(()=>t.switchRemoteBranch())}),t.addCommand({id:"add-to-gitignore",name:"将文件添加到 .gitignore",checkCallback:r=>{let n=e.workspace.getActiveFile();if(r)return n!==null;t.addFileToGitignore(n.path,n instanceof jn.TFolder).catch(i=>t.displayError(i))}}),t.addCommand({id:"push",name:"提交并同步",callback:()=>t.promiseQueue.addTask(()=>t.commitAndSync({fromAutoBackup:!1}))}),t.addCommand({id:"backup-and-close",name:"提交并同步,然后关闭 Obsidian",callback:()=>t.promiseQueue.addTask(async()=>{await t.commitAndSync({fromAutoBackup:!1}),window.close()})}),t.addCommand({id:"commit-push-specified-message",name:"提交并同步,使用特定消息",callback:()=>t.promiseQueue.addTask(()=>t.commitAndSync({fromAutoBackup:!1,requestCustomMessage:!0}))}),t.addCommand({id:"commit",name:"提交所有更改",callback:()=>t.promiseQueue.addTask(()=>t.commit({fromAuto:!1}))}),t.addCommand({id:"commit-specified-message",name:"使用特定消息提交所有更改",callback:()=>t.promiseQueue.addTask(()=>t.commit({fromAuto:!1,requestCustomMessage:!0}))}),t.addCommand({id:"commit-smart",name:"Commit",callback:()=>t.promiseQueue.addTask(async()=>{let n=(await t.updateCachedStatus()).staged.length>0;return t.commit({fromAuto:!1,requestCustomMessage:!1,onlyStaged:n})})}),t.addCommand({id:"commit-staged",name:"提交暂存文件",checkCallback:function(r){if(r)return!1;t.promiseQueue.addTask(async()=>t.commit({fromAuto:!1,requestCustomMessage:!1}))}}),jn.Platform.isDesktopApp&&t.addCommand({id:"commit-amend-staged-specified-message",name:"修改暂存文件",callback:()=>t.promiseQueue.addTask(()=>t.commit({fromAuto:!1,requestCustomMessage:!0,onlyStaged:!0,amend:!0}))}),t.addCommand({id:"commit-smart-specified-message",name:"使用指定消息提交",callback:()=>t.promiseQueue.addTask(async()=>{let n=(await t.updateCachedStatus()).staged.length>0;return t.commit({fromAuto:!1,requestCustomMessage:!0,onlyStaged:n})})}),t.addCommand({id:"commit-staged-specified-message",name:"使用特定消息提交暂存文件",checkCallback:function(r){return r?!1:t.promiseQueue.addTask(()=>t.commit({fromAuto:!1,requestCustomMessage:!0,onlyStaged:!0}))}}),t.addCommand({id:"push2",name:"推送",callback:()=>t.promiseQueue.addTask(()=>t.push())}),t.addCommand({id:"stage-current-file",name:"暂存当前文件",checkCallback:r=>{let n=e.workspace.getActiveFile();if(r)return n!==null;t.promiseQueue.addTask(()=>t.stageFile(n))}}),t.addCommand({id:"unstage-current-file",name:"取消暂存当前文件",checkCallback:r=>{let n=e.workspace.getActiveFile();if(r)return n!==null;t.promiseQueue.addTask(()=>t.unstageFile(n))}}),t.addCommand({id:"edit-remotes",name:"编辑远程仓库",callback:()=>t.editRemotes().catch(r=>t.displayError(r))}),t.addCommand({id:"remove-remote",name:"移除远程仓库",callback:()=>t.removeRemote().catch(r=>t.displayError(r))}),t.addCommand({id:"set-upstream-branch",name:"设置上游分支",callback:()=>t.setUpstreamBranch().catch(r=>t.displayError(r))}),t.addCommand({id:"delete-repo",name:"警告:删除仓库",callback:async()=>{(await e.vault.adapter.exists(`${t.settings.basePath}/.git`))?(await new Ze(t,{options:["NO","YES"],placeholder:"您确定要删除该仓库(.git目录)吗?此插件操作无法撤销。",onlySelection:!0}).openAndGetResult())==="YES"&&(await e.vault.adapter.rmdir(`${t.settings.basePath}/.git`,!0),new jn.Notice("成功删除了仓库。正在重新加载插件..."),t.unloadPlugin(),await t.init({fromReload:!0})):new jn.Notice("未找到仓库")}}),t.addCommand({id:"init-repo",name:"初始化新仓库",callback:()=>t.createNewRepo().catch(r=>t.displayError(r))}),t.addCommand({id:"clone-repo",name:"克隆现有的远程仓库",callback:()=>t.cloneNewRepo().catch(r=>t.displayError(r))}),t.addCommand({id:"list-changed-files",name:"列出已更改的文件",callback:async()=>{if(await t.isAllInitialized())try{let r=await t.updateCachedStatus();if(r.changed.length+r.staged.length>500){t.displayError("更改过多,无法显示");return}new fp(t,r.all).open()}catch(r){t.displayError(r)}}}),t.addCommand({id:"switch-branch",name:"切换分支",callback:()=>{t.switchBranch().catch(r=>t.displayError(r))}}),t.addCommand({id:"create-branch",name:"创建新分支",callback:()=>{t.createBranch().catch(r=>t.displayError(r))}}),t.addCommand({id:"delete-branch",name:"删除分支",callback:()=>{t.deleteBranch().catch(r=>t.displayError(r))}}),t.addCommand({id:"discard-all",name:"警告:放弃所有更改",callback:async()=>{let r=await t.discardAll();switch(r){case"discard":new jn.Notice("已丢弃所有已跟踪文件中的更改。");break;case"delete":new jn.Notice("已丢弃所有文件。");break;case!1:break;default:Eh(r)}}}),t.addCommand({id:"pause-automatic-routines",name:"暂停/继续自动例程",callback:()=>{let r=!t.localStorage.getPausedAutomatics();t.localStorage.setPausedAutomatics(r),r?(t.automaticsManager.unload(),new jn.Notice("已暂停自动例程。")):(t.automaticsManager.reload("commit","push","pull"),new jn.Notice("已恢复自动例程。"))}}),t.addCommand({id:"raw-command",name:"Raw 命令",checkCallback:r=>{let n=t.gitManager;if(r)return n instanceof Se;t.tools.runRawCommand().catch(i=>t.displayError(i))}}),t.addCommand({id:"toggle-line-author-info",name:"切换行作者信息",callback:()=>{var r;return(r=t.settingsTab)==null?void 0:r.configureLineAuthorShowStatus(!t.settings.lineAuthor.show)}}),t.addCommand({id:"reset-hunk",name:"重置代码块",editorCheckCallback(r,n,i){if(r)return t.settings.hunks.hunkCommands&&t.hunkActions.editor!==void 0;t.hunkActions.resetHunk()}}),t.addCommand({id:"stage-hunk",name:"暂存代码块",editorCheckCallback:(r,n,i)=>{if(r)return t.settings.hunks.hunkCommands&&t.hunkActions.editor!==void 0;t.promiseQueue.addTask(()=>t.hunkActions.stageHunk())}}),t.addCommand({id:"preview-hunk",name:"预览代码块",editorCheckCallback:(r,n,i)=>{if(r)return t.settings.hunks.hunkCommands&&t.hunkActions.editor!==void 0;let s=t.hunkActions.editor.editor;Xs(s)}}),t.addCommand({id:"next-hunk",name:"转到下一个代码块",editorCheckCallback:(r,n,i)=>{if(r)return t.settings.hunks.hunkCommands&&t.hunkActions.editor!==void 0;t.hunkActions.goToHunk("next")}}),t.addCommand({id:"prev-hunk",name:"转到上一个代码块",editorCheckCallback:(r,n,i)=>{if(r)return t.settings.hunks.hunkCommands&&t.hunkActions.editor!==void 0;t.hunkActions.goToHunk("prev")}})}p();var Pp=class{constructor(e){this.plugin=e;this.prefix=this.plugin.manifest.id+":",this.app=e.app}migrate(){let e=["password","hostname","conflict","lastAutoPull","lastAutoBackup","lastAutoPush","gitPath","pluginDisabled"];for(let r of e){let n=localStorage.getItem(this.prefix+r);this.app.loadLocalStorage(this.prefix+r)==null&&n!=null&&n!=null&&(this.app.saveLocalStorage(this.prefix+r,n),localStorage.removeItem(this.prefix+r))}}getPassword(){return this.app.loadLocalStorage(this.prefix+"password")}setPassword(e){return this.app.saveLocalStorage(this.prefix+"password",e)}getUsername(){return this.app.loadLocalStorage(this.prefix+"username")}setUsername(e){return this.app.saveLocalStorage(this.prefix+"username",e)}getHostname(){return this.app.loadLocalStorage(this.prefix+"hostname")}setHostname(e){return this.app.saveLocalStorage(this.prefix+"hostname",e)}getConflict(){return this.app.loadLocalStorage(this.prefix+"conflict")=="true"}setConflict(e){return this.app.saveLocalStorage(this.prefix+"conflict",`${e}`)}getLastAutoPull(){return this.app.loadLocalStorage(this.prefix+"lastAutoPull")}setLastAutoPull(e){return this.app.saveLocalStorage(this.prefix+"lastAutoPull",e)}getLastAutoBackup(){return this.app.loadLocalStorage(this.prefix+"lastAutoBackup")}setLastAutoBackup(e){return this.app.saveLocalStorage(this.prefix+"lastAutoBackup",e)}getLastAutoPush(){return this.app.loadLocalStorage(this.prefix+"lastAutoPush")}setLastAutoPush(e){return this.app.saveLocalStorage(this.prefix+"lastAutoPush",e)}getGitPath(){return this.app.loadLocalStorage(this.prefix+"gitPath")}setGitPath(e){return this.app.saveLocalStorage(this.prefix+"gitPath",e)}getPATHPaths(){var e,r;return(r=(e=this.app.loadLocalStorage(this.prefix+"PATHPaths"))==null?void 0:e.split(":"))!=null?r:[]}setPATHPaths(e){return this.app.saveLocalStorage(this.prefix+"PATHPaths",e.join(":"))}getEnvVars(){var e;return JSON.parse((e=this.app.loadLocalStorage(this.prefix+"envVars"))!=null?e:"[]")}setEnvVars(e){return this.app.saveLocalStorage(this.prefix+"envVars",JSON.stringify(e))}getPluginDisabled(){return this.app.loadLocalStorage(this.prefix+"pluginDisabled")=="true"}setPluginDisabled(e){return this.app.saveLocalStorage(this.prefix+"pluginDisabled",`${e}`)}getPausedAutomatics(){return this.app.loadLocalStorage(this.prefix+"pausedAutomatics")=="true"}setPausedAutomatics(e){return this.app.saveLocalStorage(this.prefix+"pausedAutomatics",`${e}`)}};p();var Vl=require("obsidian");var ef=class{constructor(e){this.plugin=e}async hasTooBigFiles(e){let r=await this.plugin.gitManager.branchInfo(),n=r.tracking?Qi(r.tracking)[0]:null;if(!n)return!1;let i=await this.plugin.gitManager.getRemoteUrl(n);if(i!=null&&i.includes("github.com")){let s=[],a=this.plugin.gitManager;for(let o of e){let l=this.plugin.app.vault.getAbstractFileByPath(o.vaultPath),c=!1;if(l instanceof Vl.TFile)l.stat.size>=1e8&&(c=!0);else{let u=await this.plugin.app.vault.adapter.stat(o.vaultPath);u&&u.size>=1e8&&(c=!0)}if(c){let u=!1;a instanceof Se&&(u=await a.isFileTrackedByLFS(o.path)),u||s.push(o)}}if(s.length>0)return this.plugin.displayError(`Aborted commit, because the following files are too big: - ${s.map(o=>o.vaultPath).join(` - `)} Please remove them or add to .gitignore.`),!0}return!1}async writeAndOpenFile(e){e!==void 0&&(await this.plugin.app.vault.adapter.write(ol,e));let r=!1;this.plugin.app.workspace.iterateAllLeaves(n=>{n.getDisplayText()!=""&&ol.startsWith(n.getDisplayText())&&(r=!0)}),r||(await this.plugin.app.workspace.openLinkText(ol,"/",!0))}openDiff({aFile:e,bFile:r,aRef:n,bRef:i,event:s}){var l,c;let a=this.plugin.settings.diffStyle;Vl.Platform.isMobileApp&&(a="git_unified");let o={aFile:e,bFile:r!=null?r:e,aRef:n,bRef:i};a=="split"?(l=Bn(this.plugin.app,s))==null||l.setViewState({type:Ns.type,active:!0,state:o}):a=="git_unified"&&((c=Bn(this.plugin.app,s))==null||c.setViewState({type:Bs.type,active:!0,state:o}))}async runRawCommand(){let e=this.plugin.gitManager;if(!(e instanceof Se))return;let n=await new Ze(this.plugin,{placeholder:"push origin master",allowEmpty:!1}).openAndGetResult();n!==void 0&&this.plugin.promiseQueue.addTask(async()=>{let i=new Vl.Notice(`Running '${n}'...`,999999);try{let s=await e.rawCommand(n);s?(i.setMessage(s),window.setTimeout(()=>i.hide(),5e3)):i.hide()}catch(s){throw i.hide(),s}})}};p();var Rp=require("obsidian");var Wa=class extends Rp.ItemView{constructor(r,n){super(r);this.plugin=n;this.gettingDiff=!1;this.parser=new DOMParser,this.navigation=!0,this.contentEl.addClass("git-diff"),this.gitRefreshRef=this.app.workspace.on("obsidian-git:status-changed",()=>{this.refresh().catch(console.error)})}getViewType(){return Bs.type}getDisplayText(){var r;if(((r=this.state)==null?void 0:r.bFile)!=null){let n=this.state.bFile.split("/").last();return n!=null&&n.endsWith(".md")&&(n=n.slice(0,-3)),`Diff: ${n}`}return Bs.name}getIcon(){return Bs.icon}async setState(r,n){this.state=r,Rp.Platform.isMobile&&(this.leaf.view.titleEl.textContent=this.getDisplayText()),await this.refresh()}getState(){return this.state}onClose(){return this.app.workspace.offref(this.gitRefreshRef),this.app.workspace.offref(this.gitViewRefreshRef),super.onClose()}async onOpen(){return await this.refresh(),super.onOpen()}async refresh(){var r;if((r=this.state)!=null&&r.bFile&&!this.gettingDiff&&this.plugin.gitManager){this.gettingDiff=!0;try{let n=await this.plugin.gitManager.getDiffString(this.state.bFile,this.state.aRef=="HEAD",this.state.bRef);this.contentEl.empty();let i=this.plugin.gitManager.getRelativeVaultPath(this.state.bFile);if(!n){if(this.plugin.gitManager instanceof Se&&(await this.plugin.gitManager.isTracked(this.state.bFile)))n=[`--- ${this.state.aFile}`,`+++ ${this.state.bFile}`,""].join(` `);else if(await this.app.vault.adapter.exists(i)){let s=await this.app.vault.adapter.read(i);n=[...`--- /dev/null +++ ${this.state.bFile} @@ -0,0 +1,${s.split(` `).length} @@`.split(` `),...s.split(` `).map(o=>`+${o}`)].join(` `)}}if(n){let s=this.parser.parseFromString(Ap(n),"text/html").querySelector(".d2h-file-diff");this.contentEl.append(s)}else{let s=this.contentEl.createDiv({cls:"obsidian-git-center"});s.createSpan({text:"⚠️",attr:{style:"font-size: 2em"}}),s.createEl("br"),s.createSpan({text:"文件未找到:"+this.state.bFile})}}finally{this.gettingDiff=!1}}}};p();var rs=require("obsidian");var Xl=require("@codemirror/commands");var $p=require("@codemirror/search"),Yl=require("@codemirror/state"),kn=require("@codemirror/view");var za=class extends rs.ItemView{constructor(r,n){super(r);this.plugin=n;this.refreshing=!1;this.ignoreNextModification=!1;this.navigation=!0,this.registerEvent(this.app.workspace.on("obsidian-git:status-changed",()=>{this.mergeView?this.updateRefEditors().catch(console.error):this.createMergeView().catch(console.error)})),this.intervalRef=window.setInterval(()=>{this.mergeView&&this.updateRefEditors().catch(console.error)},30*1e3),this.registerEvent(this.app.vault.on("modify",i=>{this.state.bRef==null&&i.path===this.state.bFile&&(this.ignoreNextModification?this.ignoreNextModification=!1:this.updateModifiableEditor().catch(console.error))})),this.registerEvent(this.app.vault.on("delete",i=>{this.state.bRef==null&&i.path===this.state.bFile&&this.createMergeView().catch(console.error)})),this.registerEvent(this.app.vault.on("create",i=>{this.state.bRef==null&&i.path===this.state.bFile&&this.createMergeView().catch(console.error)})),this.registerEvent(this.app.vault.on("rename",(i,s)=>{this.state.bRef==null&&(i.path===this.state.bFile||s===this.state.bFile)&&this.createMergeView().catch(console.error)})),this.fileSaveDebouncer=(0,rs.debounce)(i=>{let s=this.state.bFile;s&&(this.ignoreNextModification=!0,this.plugin.app.vault.adapter.write(this.plugin.gitManager.getRelativeVaultPath(s),i).catch(a=>this.plugin.displayError(a)))},1e3,!1)}getViewType(){return Ns.type}getDisplayText(){var r;if(((r=this.state)==null?void 0:r.bFile)!=null){let n=this.state.bFile.split("/").last();n!=null&&n.endsWith(".md")&&(n=n.slice(0,-3));let i;return this.state.bRef==null?i=" (Working Tree)":this.state.bRef==""?i=" (Index)":i="("+this.state.bRef.substring(0,7)+")",`Diff: ${n} ${i}`}return Ns.name}getIcon(){return Ns.icon}async setState(r,n){this.state=r,rs.Platform.isMobile&&(this.leaf.view.titleEl.textContent=this.getDisplayText()),await super.setState(r,n),await this.createMergeView()}getState(){return this.state}onClose(){return window.clearInterval(this.intervalRef),super.onClose()}async onOpen(){return await this.createMergeView(),super.onOpen()}async gitShow(r,n){try{return await this.plugin.gitManager.show(r,n,!1)}catch(i){if(i instanceof Pr&&(i.message.includes("does not exist")||i.message.includes("unknown revision or path")||i.message.includes("exists on disk, but not in")||i.message.includes("fatal: bad object")))return i.message.includes("fatal: bad object")&&this.plugin.displayError(i.message),"";throw i}}async bShouldBeEditable(){if(this.state.bRef!=null)return!1;let r=this.plugin.gitManager.getRelativeVaultPath(this.state.bFile);return await this.app.vault.adapter.exists(r)}async updateModifiableEditor(){if(!this.mergeView||this.refreshing)return;let r=this.mergeView.b;this.refreshing=!0;let n=await this.app.vault.adapter.read(this.state.bFile);if(n!=r.state.doc.toString()){let i=r.state.update({changes:{from:0,to:r.state.doc.length,insert:n},annotations:[Yl.Transaction.remote.of(!0)]});r.dispatch(i)}this.refreshing=!1}async updateRefEditors(){if(!this.mergeView||this.refreshing)return;let r=this.mergeView.a,n=this.mergeView.b;this.refreshing=!0;let i=await this.gitShow(this.state.aRef,this.state.aFile),s;if(this.state.bRef!=null&&(s=await this.gitShow(this.state.bRef,this.state.bFile)),i!=r.state.doc.toString()){let a=r.state.update({changes:{from:0,to:r.state.doc.length,insert:i}});r.dispatch(a)}if(s!=null&&s!=n.state.doc.toString()){let a=n.state.update({changes:{from:0,to:n.state.doc.length,insert:s}});n.dispatch(a)}this.refreshing=!1}renderButtons(){let r=document.createElement("div"),n=r.createDiv();if(n.addClass("clickable-icon"),n.setAttr("aria-label",this.state.bRef==null?"Stage hunk":"Unstage hunk"),(0,rs.setIcon)(n,this.state.bRef==null?"plus":"minus"),n.onmousedown=async i=>{var h;let s=this.mergeView.b,a=this.mergeView.a,o=my(s.state),l=(h=r.parentElement)==null?void 0:h.indexOf(r),c=o.chunks[l],u=wy(c,a.state.doc,s.state.doc),f=vy(this.mergeView.a.state.doc.toString(),this.mergeView.b.state.doc.toString(),[u])[0],d=Nt.createPatch(this.state.bFile,[f],"100644",this.state.bRef!=null).join(` `)+` `;await this.plugin.gitManager.applyPatch(d),this.plugin.app.workspace.trigger("obsidian-git:refresh")},this.state.bRef==null){let i=r.createDiv();i.addClass("clickable-icon"),i.setAttr("aria-label","重置代码块"),(0,rs.setIcon)(i,"undo"),i.onmousedown=s=>{var f;let a=this.mergeView.a,o=this.mergeView.b,l=my(o.state),c=(f=r.parentElement)==null?void 0:f.indexOf(r),u=l.chunks[c];if(u){let d=u.fromA,h=u.toA,m=u.fromB,g=u.toB,v=a.state.sliceDoc(d,Math.max(d,h-1));d!=h&&g<=o.state.doc.length&&(v+=a.state.lineBreak),o.dispatch({changes:{from:m,to:Math.min(o.state.doc.length,g),insert:v},userEvent:"revert"})}}}return r.onmousedown=i=>{i.preventDefault(),i.stopPropagation()},r}async createMergeView(){var r,n,i;if((r=this.state)!=null&&r.aFile&&(n=this.state)!=null&&n.bFile&&!this.refreshing&&this.plugin.gitManager){this.refreshing=!0,(i=this.mergeView)==null||i.destroy();let s=this.containerEl.children[1];s.empty(),this.contentEl.addClass("git-split-diff-view","git-diff"),this.bIsEditable=await this.bShouldBeEditable();let a=await this.gitShow(this.state.aRef,this.state.aFile),o;if(this.state.bRef!=null)o=await this.gitShow(this.state.bRef,this.state.bFile);else{let g=this.plugin.gitManager.getRelativeVaultPath(this.state.bFile);(await this.app.vault.adapter.exists(g))?o=await this.app.vault.adapter.read(g):o=""}let l=[(0,kn.lineNumbers)(),(0,$p.highlightSelectionMatches)(),(0,kn.drawSelection)(),kn.keymap.of([...Xl.standardKeymap,Xl.indentWithTab]),(0,Xl.history)(),(0,$p.search)(),kn.EditorView.lineWrapping],c=this,u=kn.ViewPlugin.define(g=>({update(v){if(v.docChanged&&!v.transactions.some(w=>w.annotation(Yl.Transaction.remote))){let w=g.state.doc.toString();c.fileSaveDebouncer(w)}}})),f={doc:a,extensions:[...l,kn.EditorView.editable.of(!1),Yl.EditorState.readOnly.of(!0)]},d=[...l];this.bIsEditable?d.push(u):d.push(kn.EditorView.editable.of(!1),Yl.EditorState.readOnly.of(!0));let h={doc:o,extensions:d};s.addClasses(["cm-s-obsidian","mod-cm6","markdown-source-view","cm-content"]);let m=this.plugin.gitManager instanceof Se&&(this.state.bRef===void 0||this.state.bRef==="");this.mergeView=new bp({b:h,a:f,collapseUnchanged:{minSize:6,margin:4},renderRevertControl:m?()=>this.renderButtons():void 0,revertControls:m?"a-to-b":void 0,diffConfig:{scanLimit:this.bIsEditable?1e3:1e4},parent:s}),this.refreshing=!1}}};p();var _D=require("obsidian");p();p();p();var WO="5";var zO,VO,YO;typeof window!="undefined"&&((YO=(VO=(zO=window.__svelte)!=null?zO:window.__svelte={}).v)!=null?YO:VO.v=new Set).add(WO);p();p();p();var tf="[",bi="[!",Va="]",ns={};var Ke=Symbol(),An=Symbol("filename"),XO=Symbol("hmr"),ZO="http://www.w3.org/1999/xhtml";p();p();p();p();var Ip=!0;p();var L=!1;p();var is=Array.isArray,KO=Array.prototype.indexOf,qn=Array.prototype.includes,Zl=Array.from,$y=Object.keys,Jt=Object.defineProperty,Ir=Object.getOwnPropertyDescriptor,Iy=Object.getOwnPropertyDescriptors,Fy=Object.prototype,QO=Array.prototype,Kl=Object.getPrototypeOf,Oy=Object.isExtensible;function My(t){return typeof t=="function"}var Fr=()=>{};function Fp(t){for(var e=0;e{t=n,e=i});return{promise:r,resolve:t,reject:e}}p();p();var Wt=Symbol("$state"),rf=Symbol("legacy props"),JO=Symbol(""),Mp=Symbol("proxy path"),_i=new class extends Error{constructor(){super(...arguments);qe(this,"name","StaleReactionError");qe(this,"message","The reaction that called `getAbortSignal()` was re-run or destroyed")}};var Ql=3,Or=8;p();p();function Dp(t){if(L){let e=new Error(`lifecycle_outside_component \`${t}(...)\` can only be used during component initialisation https://svelte.dev/e/lifecycle_outside_component`);throw e.name="Svelte error",e}else throw new Error("https://svelte.dev/e/lifecycle_outside_component")}function eM(){if(L){let t=new Error("async_derived_orphan\nCannot create a `$derived(...)` with an `await` expression outside of an effect tree\nhttps://svelte.dev/e/async_derived_orphan");throw t.name="Svelte error",t}else throw new Error("https://svelte.dev/e/async_derived_orphan")}function Dy(){if(L){let t=new Error("bind_invalid_checkbox_value\nUsing `bind:value` together with a checkbox input is not allowed. Use `bind:checked` instead\nhttps://svelte.dev/e/bind_invalid_checkbox_value");throw t.name="Svelte error",t}else throw new Error("https://svelte.dev/e/bind_invalid_checkbox_value")}function tM(){if(L){let t=new Error(`derived_references_self A derived value cannot reference itself recursively https://svelte.dev/e/derived_references_self`);throw t.name="Svelte error",t}else throw new Error("https://svelte.dev/e/derived_references_self")}function Ly(t,e,r){if(L){let n=new Error(`each_key_duplicate ${r?`Keyed each block has duplicate key \`${r}\` at indexes ${t} and ${e}`:`Keyed each block has duplicate key at indexes ${t} and ${e}`} https://svelte.dev/e/each_key_duplicate`);throw n.name="Svelte error",n}else throw new Error("https://svelte.dev/e/each_key_duplicate")}function rM(t){if(L){let e=new Error(`effect_in_teardown \`${t}\` cannot be used inside an effect cleanup function https://svelte.dev/e/effect_in_teardown`);throw e.name="Svelte error",e}else throw new Error("https://svelte.dev/e/effect_in_teardown")}function nM(){if(L){let t=new Error("effect_in_unowned_derived\nEffect cannot be created inside a `$derived` value that was not itself created inside an effect\nhttps://svelte.dev/e/effect_in_unowned_derived");throw t.name="Svelte error",t}else throw new Error("https://svelte.dev/e/effect_in_unowned_derived")}function iM(t){if(L){let e=new Error(`effect_orphan \`${t}\` can only be used inside an effect (e.g. during component initialisation) https://svelte.dev/e/effect_orphan`);throw e.name="Svelte error",e}else throw new Error("https://svelte.dev/e/effect_orphan")}function sM(){if(L){let t=new Error(`effect_update_depth_exceeded Maximum update depth exceeded. This typically indicates that an effect reads and writes the same piece of state https://svelte.dev/e/effect_update_depth_exceeded`);throw t.name="Svelte error",t}else throw new Error("https://svelte.dev/e/effect_update_depth_exceeded")}function aM(){if(L){let t=new Error(`hydration_failed Failed to hydrate the application https://svelte.dev/e/hydration_failed`);throw t.name="Svelte error",t}else throw new Error("https://svelte.dev/e/hydration_failed")}function oM(t){if(L){let e=new Error(`props_invalid_value Cannot do \`bind:${t}={undefined}\` when \`${t}\` has a fallback value https://svelte.dev/e/props_invalid_value`);throw e.name="Svelte error",e}else throw new Error("https://svelte.dev/e/props_invalid_value")}function lM(t){if(L){let e=new Error(`rune_outside_svelte The \`${t}\` rune is only available inside \`.svelte\` and \`.svelte.js/ts\` files https://svelte.dev/e/rune_outside_svelte`);throw e.name="Svelte error",e}else throw new Error("https://svelte.dev/e/rune_outside_svelte")}function cM(){if(L){let t=new Error("state_descriptors_fixed\nProperty descriptors defined on `$state` objects must contain `value` and always be `enumerable`, `configurable` and `writable`.\nhttps://svelte.dev/e/state_descriptors_fixed");throw t.name="Svelte error",t}else throw new Error("https://svelte.dev/e/state_descriptors_fixed")}function uM(){if(L){let t=new Error("state_prototype_fixed\nCannot set prototype of `$state` object\nhttps://svelte.dev/e/state_prototype_fixed");throw t.name="Svelte error",t}else throw new Error("https://svelte.dev/e/state_prototype_fixed")}function fM(){if(L){let t=new Error("state_unsafe_mutation\nUpdating state inside `$derived(...)`, `$inspect(...)` or a template expression is forbidden. If the value should not be reactive, declare it without `$state`\nhttps://svelte.dev/e/state_unsafe_mutation");throw t.name="Svelte error",t}else throw new Error("https://svelte.dev/e/state_unsafe_mutation")}function dM(){if(L){let t=new Error("svelte_boundary_reset_onerror\nA `` `reset` function cannot be called while an error is still being handled\nhttps://svelte.dev/e/svelte_boundary_reset_onerror");throw t.name="Svelte error",t}else throw new Error("https://svelte.dev/e/svelte_boundary_reset_onerror")}p();p();p();var Zs="font-weight: bold",Ks="font-weight: normal";function hM(t,e){L?console.warn(`%c[svelte] await_waterfall %cAn async derived, \`${t}\` (${e}) was not read immediately after it resolved. This often indicates an unnecessary waterfall, which can slow down your app https://svelte.dev/e/await_waterfall`,Zs,Ks):console.warn("https://svelte.dev/e/await_waterfall")}function pM(t,e,r){L?console.warn(`%c[svelte] hydration_attribute_changed %cThe \`${t}\` attribute on \`${e}\` changed its value between server and client renders. The client value, \`${r}\`, will be ignored in favour of the server value https://svelte.dev/e/hydration_attribute_changed`,Zs,Ks):console.warn("https://svelte.dev/e/hydration_attribute_changed")}function Ya(t){L?console.warn(`%c[svelte] hydration_mismatch %c${t?`Hydration failed because the initial UI does not match what was rendered on the server. The error occurred near ${t}`:"Hydration failed because the initial UI does not match what was rendered on the server"} https://svelte.dev/e/hydration_mismatch`,Zs,Ks):console.warn("https://svelte.dev/e/hydration_mismatch")}function mM(){L?console.warn(`%c[svelte] lifecycle_double_unmount %c尝试卸载一个尚未挂载的组件 https://svelte.dev/e/lifecycle_double_unmount`,Zs,Ks):console.warn("https://svelte.dev/e/lifecycle_double_unmount")}function Lp(t){L?console.warn(`%c[svelte] state_proxy_equality_mismatch %cReactive \`$state(...)\` proxies and the values they proxy have different identities. Because of this, comparisons with \`${t}\` will produce unexpected results https://svelte.dev/e/state_proxy_equality_mismatch`,Zs,Ks):console.warn("https://svelte.dev/e/state_proxy_equality_mismatch")}function gM(){L?console.warn(`%c[svelte] state_proxy_unmount %c尝试卸载状态代理,而不是组件 https://svelte.dev/e/state_proxy_unmount`,Zs,Ks):console.warn("https://svelte.dev/e/state_proxy_unmount")}function vM(){L?console.warn("%c[svelte] svelte_boundary_reset_noop\n%c`` 的 `reset` 函数仅在首次调用时重置边界\nhttps://svelte.dev/e/svelte_boundary_reset_noop",Zs,Ks):console.warn("https://svelte.dev/e/svelte_boundary_reset_noop")}function wM(t){L?console.warn(`%c[svelte] transition_slide_display %cThe \`slide\` transition does not work correctly for elements with \`display: ${t}\` https://svelte.dev/e/transition_slide_display`,Zs,Ks):console.warn("https://svelte.dev/e/transition_slide_display")}var re=!1;function Bt(t){re=t}var ge;function Ge(t){if(t===null)throw Ya(),ns;return ge=t}function er(){return Ge(Yt(ge))}function G(t){if(re){if(Yt(ge)!==null)throw Ya(),ns;ge=t}}function Xa(t=1){if(re){for(var e=t,r=ge;e--;)r=Yt(r);ge=r}}function ss(t=!0){for(var e=0,r=ge;;){if(r.nodeType===Or){var n=r.data;if(n===Va){if(e===0)return r;e-=1}else(n===tf||n===bi)&&(e+=1)}var i=Yt(r);t&&r.remove(),r=i}}function Np(t){if(!t||t.nodeType!==Or)throw Ya(),ns;return t.data}p();p();p();p();function Bp(t){return t===this.v}function Ny(t,e){return t!=t?e==e:t!==e||t!==null&&typeof t=="object"||typeof t=="function"}function Hp(t){return!Ny(t,this.v)}p();var tr=!1,as=!1,Wn=!1;p();p();p();var nf=null;function Mr(t,e){return t.label=e,Up(t.v,e),t}function Up(t,e){var r;return(r=t==null?void 0:t[Mp])==null||r.call(t,e),t}p();function xi(t){let e=new Error,r=FV();return r.length===0?null:(r.unshift(` `),Jt(e,"stack",{value:r.join(` `)}),Jt(e,"name",{value:t}),e)}function FV(){let t=Error.stackTraceLimit;Error.stackTraceLimit=1/0;let e=new Error().stack;if(Error.stackTraceLimit=t,!e)return[];let r=e.split(` `),n=[];for(let i=0;i{e===Za&&bM()})}Za.push(t)}function _M(){for(;Za.length>0;)bM()}p();var Uy=new WeakMap;function jp(t){var e=ne;if(e===null)return le.f|=8388608,t;if(L&&t instanceof Error&&!Uy.has(t)&&Uy.set(t,OV(t,e)),e.f&32768)Ai(t,e);else{if(!(e.f&128))throw L&&!e.parent&&t instanceof Error&&xM(t),t;e.b.error(t)}}function Ai(t,e){for(;e!==null;){if(e.f&128)try{e.b.error(t);return}catch(r){t=r}e=e.parent}throw L&&t instanceof Error&&xM(t),t}function OV(t,e){var a,o,l;let r=Ir(t,"message");if(!(r&&!r.configurable)){for(var n=sf?" ":"\t",i=` ${n}in ${((a=e.fn)==null?void 0:a.name)||""}`,s=e.ctx;s!==null;)i+=` ${n}in ${(o=s.function)==null?void 0:o[An].split("/").pop()}`,s=s.p;return{message:t.message+` ${i} `,stack:(l=t.stack)==null?void 0:l.split(` `).filter(c=>!c.includes("svelte/src/internal")).join(` `)}}}function xM(t){let e=Uy.get(t);e&&(Jt(t,"message",{value:e.message}),Jt(t,"stack",{value:e.stack}))}p();p();var MV=-7169;function Le(t,e){t.f=t.f&MV|e}function tc(t){t.f&512||t.deps===null?Le(t,1024):Le(t,4096)}function SM(t){if(t!==null)for(let e of t)!(e.f&2)||!(e.f&32768)||(e.f^=32768,SM(e.deps))}function qp(t,e,r){t.f&2048?e.add(t):t.f&4096&&r.add(t),SM(t.deps),Le(t,1024)}var rc=new Set,ye=null,lf=null,Rt=null,Lr=[],zp=null,Gy=!1,Ka=!1,nc,ic,Qa,sc,cf,uf,Ja,ls,ac,Ci,jy,qy,kM,zy=class zy{constructor(){me(this,Ci);qe(this,"committed",!1);qe(this,"current",new Map);qe(this,"previous",new Map);me(this,nc,new Set);me(this,ic,new Set);me(this,Qa,0);me(this,sc,0);me(this,cf,null);me(this,uf,new Set);me(this,Ja,new Set);me(this,ls,new Map);qe(this,"is_fork",!1);me(this,ac,!1)}is_deferred(){return this.is_fork||$(this,sc)>0}skip_effect(e){$(this,ls).has(e)||$(this,ls).set(e,{d:[],m:[]})}unskip_effect(e){var r=$(this,ls).get(e);if(r){$(this,ls).delete(e);for(var n of r.d)Le(n,2048),gr(n);for(n of r.m)Le(n,4096),gr(n)}}process(e){var i;Lr=[],this.apply();var r=[],n=[];for(let s of e)wt(this,Ci,jy).call(this,s,r,n);if(this.is_deferred()){wt(this,Ci,qy).call(this,n),wt(this,Ci,qy).call(this,r);for(let[s,a]of $(this,ls))TM(s,a)}else{for(let s of $(this,nc))s();$(this,nc).clear(),$(this,Qa)===0&&wt(this,Ci,kM).call(this),lf=this,ye=null,EM(n),EM(r),lf=null,(i=$(this,cf))==null||i.resolve()}Rt=null}capture(e,r){r!==Ke&&!this.previous.has(e)&&this.previous.set(e,r),e.f&8388608||(this.current.set(e,e.v),Rt==null||Rt.set(e,e.v))}activate(){ye=this,this.apply()}deactivate(){ye===this&&(ye=null,Rt=null)}flush(){if(this.activate(),Lr.length>0){if(Wy(),ye!==null&&ye!==this)return}else $(this,Qa)===0&&this.process([]);this.deactivate()}discard(){for(let e of $(this,ic))e(this);$(this,ic).clear()}increment(e){de(this,Qa,$(this,Qa)+1),e&&de(this,sc,$(this,sc)+1)}decrement(e){de(this,Qa,$(this,Qa)-1),e&&de(this,sc,$(this,sc)-1),!$(this,ac)&&(de(this,ac,!0),vt(()=>{de(this,ac,!1),this.is_deferred()?Lr.length>0&&this.flush():this.revive()}))}revive(){for(let e of $(this,uf))$(this,Ja).delete(e),Le(e,2048),gr(e);for(let e of $(this,Ja))Le(e,4096),gr(e);this.flush()}oncommit(e){$(this,nc).add(e)}ondiscard(e){$(this,ic).add(e)}settled(){var e;return((e=$(this,cf))!=null?e:de(this,cf,Op())).promise}static ensure(){if(ye===null){let e=ye=new zy;rc.add(ye),Ka||vt(()=>{ye===e&&e.flush()})}return ye}apply(){if(!(!tr||!this.is_fork&&rc.size===1)){Rt=new Map(this.current);for(let e of rc)if(e!==this)for(let[r,n]of e.previous)Rt.has(r)||Rt.set(r,n)}}};nc=new WeakMap,ic=new WeakMap,Qa=new WeakMap,sc=new WeakMap,cf=new WeakMap,uf=new WeakMap,Ja=new WeakMap,ls=new WeakMap,ac=new WeakMap,Ci=new WeakSet,jy=function(e,r,n){var d;e.f^=1024;for(var i=e.first,s=null;i!==null;){var a=i.f,o=(a&96)!==0,l=o&&(a&1024)!==0,c=l||(a&8192)!==0||$(this,ls).has(i);if(tr&&s===null&&a&128&&(d=i.b)!=null&&d.is_pending&&(s=i),!c&&i.fn!==null){o?i.f^=1024:s!==null&&a&16777228?s.b.defer_effect(i):a&4?r.push(i):tr&&a&16777224?n.push(i):ta(i)&&(a&16&&$(this,Ja).add(i),ea(i));var u=i.first;if(u!==null){i=u;continue}}var f=i.parent;for(i=i.next;i===null&&f!==null;)f===s&&(s=null),i=f.next,f=f.parent}},qy=function(e){for(var r=0;r1){this.previous.clear();var e=Rt,r=!0;for(let s of rc){if(s===this){r=!1;continue}let a=[];for(let[l,c]of this.current){if(s.current.has(l))if(r&&c!==s.current.get(l))s.current.set(l,c);else continue;a.push(l)}if(a.length===0)continue;let o=[...s.current.keys()].filter(l=>!this.current.has(l));if(o.length>0){var n=Lr;Lr=[];let l=new Set,c=new Map;for(let u of a)AM(u,o,l,c);if(Lr.length>0){ye=s,s.apply();for(let u of Lr)wt(i=s,Ci,jy).call(i,u,[],[]);s.deactivate()}Lr=n}}ye=null,Rt=e}this.committed=!0,rc.delete(this)};var Br=zy;function eo(t){var e=Ka;Ka=!0;try{var r;for(t&&(ye!==null&&Wy(),r=t());;){if(_M(),Lr.length===0&&(ye==null||ye.flush(),Lr.length===0))return zp=null,r;Wy()}}finally{Ka=e}}function Wy(){var s;Gy=!0;var t=L?new Set:null;try{for(var e=0;Lr.length>0;){var r=Br.ensure();if(e++>1e3){if(L){var n=new Map;for(let a of r.current.keys())for(let[o,l]of(s=a.updated)!=null?s:[]){var i=n.get(o);i||(i={error:l.error,count:0},n.set(o,i)),i.count+=l.count}for(let a of n.values())a.error&&console.error(a.error)}LV()}if(r.process(Lr),Ti.clear(),L)for(let a of r.current.keys())t.add(a)}}finally{if(Lr=[],Gy=!1,zp=null,L)for(let a of t)a.updated=null}}function LV(){try{sM()}catch(t){L&&Jt(t,"stack",{value:""}),Ai(t,zp)}}var Dr=null;function EM(t){var e=t.length;if(e!==0){for(var r=0;r0)){Ti.clear();for(let i of Dr){if(i.f&24576)continue;let s=[i],a=i.parent;for(;a!==null;)Dr.has(a)&&(Dr.delete(a),s.push(a)),a=a.parent;for(let o=s.length-1;o>=0;o--){let l=s[o];l.f&24576||ea(l)}}Dr.clear()}}Dr=null}}function AM(t,e,r,n){if(!r.has(t)&&(r.add(t),t.reactions!==null))for(let i of t.reactions){let s=i.f;s&2?AM(i,e,r,n):s&4194320&&!(s&2048)&&CM(i,e,n)&&(Le(i,2048),gr(i))}}function CM(t,e,r){let n=r.get(t);if(n!==void 0)return n;if(t.deps!==null)for(let i of t.deps){if(qn.call(e,i))return!0;if(i.f&2&&CM(i,e,r))return r.set(i,!0),!0}return r.set(t,!1),!1}function gr(t){for(var e=zp=t;e.parent!==null;){e=e.parent;var r=e.f;if(Gy&&e===ne&&r&16&&!(r&262144))return;if(r&96){if(!(r&1024))return;e.f^=1024}}Lr.push(e)}function TM(t,e){if(!(t.f&32&&t.f&1024)){t.f&2048?e.d.push(t):t.f&4096&&e.m.push(t),Le(t,1024);for(var r=t.first;r!==null;)TM(r,e),r=r.next}}p();p();p();function RM(t){let e=0,r=nr(0),n;return L&&Mr(r,"createSubscriber version"),()=>{Js()&&(R(r),Xt(()=>(e===0&&(n=ze(()=>t(()=>to(r)))),e+=1,()=>{vt(()=>{e-=1,e===0&&(n==null||n(),n=void 0,to(r))})})))}}var BV=589952;function Ky(t,e,r){new Yy(t,e,r)}var tn,ff,Pi,ro,Ri,Cn,Ur,$i,cs,ra,no,us,uc,io,fc,dc,Ii,Kp,xt,$M,IM,Xy,Xp,Zp,Zy,Yy=class{constructor(e,r,n){me(this,xt);qe(this,"parent");qe(this,"is_pending",!1);me(this,tn);me(this,ff,re?ge:null);me(this,Pi);me(this,ro);me(this,Ri);me(this,Cn,null);me(this,Ur,null);me(this,$i,null);me(this,cs,null);me(this,ra,null);me(this,no,0);me(this,us,0);me(this,uc,!1);me(this,io,!1);me(this,fc,new Set);me(this,dc,new Set);me(this,Ii,null);me(this,Kp,RM(()=>(de(this,Ii,nr($(this,no))),L&&Mr($(this,Ii),"$effect.pending()"),()=>{de(this,Ii,null)})));de(this,tn,e),de(this,Pi,r),de(this,ro,n),this.parent=ne.b,this.is_pending=!!$(this,Pi).pending,de(this,Ri,rn(()=>{if(ne.b=this,re){let s=$(this,ff);er(),s.nodeType===Or&&s.data===bi?wt(this,xt,IM).call(this):(wt(this,xt,$M).call(this),$(this,us)===0&&(this.is_pending=!1))}else{var i=wt(this,xt,Xy).call(this);try{de(this,Cn,Ht(()=>n(i)))}catch(s){this.error(s)}$(this,us)>0?wt(this,xt,Zp).call(this):this.is_pending=!1}return()=>{var s;(s=$(this,ra))==null||s.remove()}},BV)),re&&de(this,tn,ge)}defer_effect(e){qp(e,$(this,fc),$(this,dc))}is_rendered(){return!this.is_pending&&(!this.parent||this.parent.is_rendered())}has_pending_snippet(){return!!$(this,Pi).pending}update_pending_count(e){wt(this,xt,Zy).call(this,e),de(this,no,$(this,no)+e),!(!$(this,Ii)||$(this,uc))&&(de(this,uc,!0),vt(()=>{de(this,uc,!1),$(this,Ii)&&Zn($(this,Ii),$(this,no))}))}get_effect_pending(){return $(this,Kp).call(this),R($(this,Ii))}error(e){var r=$(this,Pi).onerror;let n=$(this,Pi).failed;if($(this,io)||!r&&!n)throw e;$(this,Cn)&&(ut($(this,Cn)),de(this,Cn,null)),$(this,Ur)&&(ut($(this,Ur)),de(this,Ur,null)),$(this,$i)&&(ut($(this,$i)),de(this,$i,null)),re&&(Ge($(this,ff)),Xa(),Ge(ss()));var i=!1,s=!1;let a=()=>{if(i){vM();return}i=!0,s&&dM(),Br.ensure(),de(this,no,0),$(this,$i)!==null&&Fi($(this,$i),()=>{de(this,$i,null)}),this.is_pending=this.has_pending_snippet(),de(this,Cn,wt(this,xt,Xp).call(this,()=>(de(this,io,!1),Ht(()=>$(this,ro).call(this,$(this,tn)))))),$(this,us)>0?wt(this,xt,Zp).call(this):this.is_pending=!1};vt(()=>{try{s=!0,r==null||r(e,a),s=!1}catch(o){Ai(o,$(this,Ri)&&$(this,Ri).parent)}n&&de(this,$i,wt(this,xt,Xp).call(this,()=>{Br.ensure(),de(this,io,!0);try{return Ht(()=>{n($(this,tn),()=>e,()=>a)})}catch(o){return Ai(o,$(this,Ri).parent),null}finally{de(this,io,!1)}}))})}};tn=new WeakMap,ff=new WeakMap,Pi=new WeakMap,ro=new WeakMap,Ri=new WeakMap,Cn=new WeakMap,Ur=new WeakMap,$i=new WeakMap,cs=new WeakMap,ra=new WeakMap,no=new WeakMap,us=new WeakMap,uc=new WeakMap,io=new WeakMap,fc=new WeakMap,dc=new WeakMap,Ii=new WeakMap,Kp=new WeakMap,xt=new WeakSet,$M=function(){try{de(this,Cn,Ht(()=>$(this,ro).call(this,$(this,tn))))}catch(e){this.error(e)}},IM=function(){let e=$(this,Pi).pending;e&&(de(this,Ur,Ht(()=>e($(this,tn)))),vt(()=>{var r=wt(this,xt,Xy).call(this);de(this,Cn,wt(this,xt,Xp).call(this,()=>(Br.ensure(),Ht(()=>$(this,ro).call(this,r))))),$(this,us)>0?wt(this,xt,Zp).call(this):(Fi($(this,Ur),()=>{de(this,Ur,null)}),this.is_pending=!1)}))},Xy=function(){var e=$(this,tn);return this.is_pending&&(de(this,ra,It()),$(this,tn).before($(this,ra)),e=$(this,ra)),e},Xp=function(e){var r=ne,n=le,i=ke;Ut($(this,Ri)),$t($(this,Ri)),os($(this,Ri).ctx);try{return e()}catch(s){return jp(s),null}finally{Ut(r),$t(n),os(i)}},Zp=function(){let e=$(this,Pi).pending;$(this,Cn)!==null&&(de(this,cs,document.createDocumentFragment()),$(this,cs).append($(this,ra)),Qp($(this,Cn),$(this,cs))),$(this,Ur)===null&&de(this,Ur,Ht(()=>e($(this,tn))))},Zy=function(e){var r;if(!this.has_pending_snippet()){this.parent&&wt(r=this.parent,xt,Zy).call(r,e);return}if(de(this,us,$(this,us)+e),$(this,us)===0){this.is_pending=!1;for(let n of $(this,fc))Le(n,2048),gr(n);for(let n of $(this,dc))Le(n,4096),gr(n);$(this,fc).clear(),$(this,dc).clear(),$(this,Ur)&&Fi($(this,Ur),()=>{de(this,Ur,null)}),$(this,cs)&&($(this,tn).before($(this,cs)),de(this,cs,null))}};p();function Jp(t,e,r,n){let i=Ei()?so:ao;var s=t.filter(d=>!d.settled);if(r.length===0&&s.length===0){n(e.map(i));return}var a=ye,o=ne,l=FM(),c=s.length===1?s[0].promise:s.length>1?Promise.all(s.map(d=>d.promise)):null;function u(d){l();try{n(d)}catch(h){o.f&16384||Ai(h,o)}a==null||a.deactivate(),df()}if(r.length===0){c.then(()=>u(e.map(i)));return}function f(){l(),Promise.all(r.map(d=>Jy(d))).then(d=>u([...e.map(i),...d])).catch(d=>Ai(d,o))}c?c.then(f):f()}function FM(){var t=ne,e=le,r=ke,n=ye;if(L)var i=Si;return function(a=!0){Ut(t),$t(e),os(r),a&&(n==null||n.activate()),L&&(Qy(null),Jl(i))}}function df(){Ut(null),$t(null),os(null),L&&(Qy(null),Jl(null))}var hf=null;function Qy(t){hf=t}var pf=new Set;function so(t){var e=2050,r=le!==null&&le.f&2?le:null;ne!==null&&(ne.f|=524288);let n={ctx:ke,deps:null,effects:null,equals:Bp,f:e,fn:t,reactions:null,rv:0,v:Ke,wv:0,parent:r!=null?r:ne,ac:null};return L&&Wn&&(n.created=xi("created at")),n}function Jy(t,e,r){let n=ne;n===null&&eM();var i=n.b,s=void 0,a=nr(Ke);L&&(a.label=e);var o=!le,l=new Map;return OM(()=>{var h;L&&(hf=ne);var c=Op();s=c.promise;try{Promise.resolve(t()).then(c.resolve,c.reject).then(()=>{u===ye&&u.committed&&u.deactivate(),df()})}catch(m){c.reject(m),df()}L&&(hf=null);var u=ye;if(o){var f=i.is_rendered();i.update_pending_count(1),u.increment(f),(h=l.get(u))==null||h.reject(_i),l.delete(u),l.set(u,c)}let d=(m,g=void 0)=>{if(hf=null,u.activate(),g)g!==_i&&(a.f|=8388608,Zn(a,g));else{a.f&8388608&&(a.f^=8388608),Zn(a,m);for(let[v,w]of l){if(l.delete(v),v===u)break;w.reject(_i)}L&&r!==void 0&&(pf.add(a),setTimeout(()=>{pf.has(a)&&(hM(a.label,r),pf.delete(a))}))}o&&(i.update_pending_count(-1),u.decrement(f))};c.promise.then(d,m=>d(null,m||"unknown"))}),ir(()=>{for(let c of l.values())c.reject(_i)}),L&&(a.f|=4194304),new Promise(c=>{function u(f){function d(){f===s?c(a):u(s)}f.then(d,d)}u(s)})}function St(t){let e=so(t);return tr||rm(e),e}function ao(t){let e=so(t);return e.equals=Hp,e}function em(t){var e=t.effects;if(e!==null){t.effects=null;for(var r=0;r5){let l=xi("updated at");if(l!==null){let c=t.updated.get(l.stack);c||(c={error:l,count:0},t.updated.set(l.stack,c)),c.count++}}}ne!==null&&(t.set_during_effect=!0)}if(t.f&2){let o=t;t.f&2048&&mf(o),tc(o)}t.wv=cc(),DM(t,2048),Ei()&&ne!==null&&ne.f&1024&&!(ne.f&96)&&(sn===null?LM([t]):sn.push(t)),!n.is_fork&&oo.size>0&&!rb&&Yp()}return e}function Yp(){rb=!1;for(let t of oo)t.f&1024&&Le(t,4096),ta(t)&&ea(t);oo.clear()}function to(t){se(t,t.v+1)}function DM(t,e){var u;var r=t.reactions;if(r!==null)for(var n=Ei(),i=r.length,s=0;s{if(na===a)return f();var d=le,h=na;$t(null),nb(a);var m=f();return $t(d),nb(h),m};n&&(r.set("length",Me(t.length,s)),L&&(t=WV(t)));var l="";let c=!1;function u(f){if(!c){c=!0,l=f,Mr(i,`${l} version`);for(let[d,h]of r)Mr(h,co(l,d));c=!1}}return new Proxy(t,{defineProperty(f,d,h){(!("value"in h)||h.configurable===!1||h.enumerable===!1||h.writable===!1)&&cM();var m=r.get(d);return m===void 0?m=o(()=>{var g=Me(h.value,s);return r.set(d,g),L&&typeof d=="string"&&Mr(g,co(l,d)),g}):se(m,h.value,!0),!0},deleteProperty(f,d){var h=r.get(d);if(h===void 0){if(d in f){let m=o(()=>Me(Ke,s));r.set(d,m),to(i),L&&Mr(m,co(l,d))}}else se(h,Ke),to(i);return!0},get(f,d,h){var w;if(d===Wt)return t;if(L&&d===Mp)return u;var m=r.get(d),g=d in f;if(m===void 0&&(!g||(w=Ir(f,d))!=null&&w.writable)&&(m=o(()=>{var b=Ye(g?f[d]:Ke),k=Me(b,s);return L&&Mr(k,co(l,d)),k}),r.set(d,m)),m!==void 0){var v=R(m);return v===Ke?void 0:v}return Reflect.get(f,d,h)},getOwnPropertyDescriptor(f,d){var h=Reflect.getOwnPropertyDescriptor(f,d);if(h&&"value"in h){var m=r.get(d);m&&(h.value=R(m))}else if(h===void 0){var g=r.get(d),v=g==null?void 0:g.v;if(g!==void 0&&v!==Ke)return{enumerable:!0,configurable:!0,value:v,writable:!0}}return h},has(f,d){var v;if(d===Wt)return!0;var h=r.get(d),m=h!==void 0&&h.v!==Ke||Reflect.has(f,d);if(h!==void 0||ne!==null&&(!m||(v=Ir(f,d))!=null&&v.writable)){h===void 0&&(h=o(()=>{var w=m?Ye(f[d]):Ke,b=Me(w,s);return L&&Mr(b,co(l,d)),b}),r.set(d,h));var g=R(h);if(g===Ke)return!1}return m},set(f,d,h,m){var y;var g=r.get(d),v=d in f;if(n&&d==="length")for(var w=h;wMe(Ke,s)),r.set(w+"",b),L&&Mr(b,co(l,w)))}if(g===void 0)(!v||(y=Ir(f,d))!=null&&y.writable)&&(g=o(()=>Me(void 0,s)),L&&Mr(g,co(l,d)),se(g,Ye(h)),r.set(d,g));else{v=g.v!==Ke;var k=o(()=>Ye(h));se(g,k)}var x=Reflect.getOwnPropertyDescriptor(f,d);if(x!=null&&x.set&&x.set.call(m,h),!v){if(n&&typeof d=="string"){var E=r.get("length"),A=Number(d);Number.isInteger(A)&&A>=E.v&&se(E,A+1)}to(i)}return!0},ownKeys(f){R(i);var d=Reflect.ownKeys(f).filter(g=>{var v=r.get(g);return v===void 0||v.v!==Ke});for(var[h,m]of r)m.v!==Ke&&!(h in f)&&d.push(h);return d},setPrototypeOf(){uM()}})}function co(t,e){var r;return typeof e=="symbol"?`${t}[Symbol(${(r=e.description)!=null?r:""})]`:jV.test(e)?`${t}.${e}`:/^\d+$/.test(e)?`${t}[${e}]`:`${t}['${e}']`}function nm(t){try{if(t!==null&&typeof t=="object"&&Wt in t)return t[Wt]}catch(e){}return t}var qV=new Set(["copyWithin","fill","pop","push","reverse","shift","sort","splice","unshift"]);function WV(t){return new Proxy(t,{get(e,r,n){var i=Reflect.get(e,r,n);return qV.has(r)?function(...s){MM();var a=i.apply(this,s);return Yp(),a}:i}})}function NM(){let t=Array.prototype,e=Array.__svelte_cleanup;e&&e();let{indexOf:r,lastIndexOf:n,includes:i}=t;t.indexOf=function(s,a){let o=r.call(this,s,a);if(o===-1){for(let l=a!=null?a:0;l{t.indexOf=r,t.lastIndexOf=n,t.includes=i}}var ib,BM,sf,HM,UM;function im(){if(ib===void 0){ib=window,BM=document,sf=/Firefox/.test(navigator.userAgent);var t=Element.prototype,e=Node.prototype,r=Text.prototype;HM=Ir(e,"firstChild").get,UM=Ir(e,"nextSibling").get,Oy(t)&&(t.__click=void 0,t.__className=void 0,t.__attributes=null,t.__style=void 0,t.__e=void 0),Oy(r)&&(r.__t=void 0),L&&(t.__svelte_meta=null,NM())}}function It(t=""){return document.createTextNode(t)}function Zt(t){return HM.call(t)}function Yt(t){return UM.call(t)}function j(t,e){if(!re)return Zt(t);var r=Zt(ge);if(r===null)r=ge.appendChild(It());else if(e&&r.nodeType!==Ql){var n=It();return r==null||r.before(n),Ge(n),n}return e&&am(r),Ge(r),r}function qr(t,e=!1){var i,s;if(!re){var r=Zt(t);return r instanceof Comment&&r.data===""?Yt(r):r}if(e){if(((i=ge)==null?void 0:i.nodeType)!==Ql){var n=It();return(s=ge)==null||s.before(n),Ge(n),n}am(ge)}return ge}function ee(t,e=1,r=!1){let n=re?ge:t;for(var i;e--;)i=n,n=Yt(n);if(!re)return n;if(r){if((n==null?void 0:n.nodeType)!==Ql){var s=It();return n===null?i==null||i.after(s):n.before(s),Ge(s),s}am(n)}return Ge(n),n}function hc(t){t.textContent=""}function sm(){if(!tr||Dr!==null)return!1;var t=ne.f;return(t&32768)!==0}function am(t){if(t.nodeValue.length<65536)return;let e=t.nextSibling;for(;e!==null&&e.nodeType===Ql;)e.remove(),t.nodeValue+=e.nodeValue,e=t.nextSibling}p();p();function sb(t){re&&Zt(t)!==null&&hc(t)}var GM=!1;function ab(){GM||(GM=!0,document.addEventListener("reset",t=>{Promise.resolve().then(()=>{var e;if(!t.defaultPrevented)for(let r of t.target.elements)(e=r.__on_r)==null||e.call(r)})},{capture:!0}))}function Kn(t){var e=le,r=ne;$t(null),Ut(null);try{return t()}finally{$t(e),Ut(r)}}function ob(t,e,r,n=r){t.addEventListener(e,()=>Kn(r));let i=t.__on_r;i?t.__on_r=()=>{i(),n(!0)}:t.__on_r=()=>n(!0),ab()}function jM(t){ne===null&&(le===null&&iM(t),nM()),Tn&&rM(t)}function VV(t,e){var r=e.last;r===null?e.last=e.first=t:(r.next=t,t.prev=r,e.last=t)}function Oi(t,e,r){var o;var n=ne;if(L)for(;n!==null&&n.f&131072;)n=n.parent;n!==null&&n.f&8192&&(t|=8192);var i={ctx:ke,deps:null,nodes:null,f:t|2048|512,first:null,fn:e,last:null,next:null,parent:n,b:n&&n.b,prev:null,teardown:null,wv:0,ac:null};if(L&&(i.component_function=zn),r)try{ea(i),i.f|=32768}catch(l){throw ut(i),l}else e!==null&&gr(i);var s=i;if(r&&s.deps===null&&s.teardown===null&&s.nodes===null&&s.first===s.last&&!(s.f&524288)&&(s=s.first,t&16&&t&65536&&s!==null&&(s.f|=65536)),s!==null&&(s.parent=n,n!==null&&VV(s,n),le!==null&&le.f&2&&!(t&64))){var a=le;((o=a.effects)!=null?o:a.effects=[]).push(s)}return i}function Js(){return le!==null&&!jr}function ir(t){let e=Oi(8,null,!1);return Le(e,1024),e.teardown=t,e}function sr(t){var i;jM("$effect"),L&&Jt(t,"name",{value:"$effect"});var e=ne.f,r=!le&&(e&32)!==0&&(e&32768)===0;if(r){var n=ke;((i=n.e)!=null?i:n.e=[]).push(t)}else return Hy(t)}function Hy(t){return Oi(1048580,t,!1)}function cb(t){Br.ensure();let e=Oi(524352,t,!0);return()=>{ut(e)}}function qM(t){Br.ensure();let e=Oi(524352,t,!0);return(r={})=>new Promise(n=>{r.outro?Fi(e,()=>{ut(e),n(void 0)}):(ut(e),n(void 0))})}function Wr(t){return Oi(4,t,!1)}function OM(t){return Oi(4718592,t,!0)}function Xt(t,e=0){return Oi(8|e,t,!0)}function Ne(t,e=[],r=[],n=[]){Jp(n,e,r,i=>{Oi(8,()=>t(...i.map(R)),!0)})}function rn(t,e=0){var r=Oi(16|e,t,!0);return L&&(r.dev_stack=Si),r}function Ht(t){return Oi(524320,t,!0)}function ub(t){var e=t.teardown;if(e!==null){let r=Tn,n=le;lb(!0),$t(null);try{e.call(null)}finally{lb(r),$t(n)}}}function fb(t,e=!1){var r=t.first;for(t.first=t.last=null;r!==null;){let i=r.ac;i!==null&&Kn(()=>{i.abort(_i)});var n=r.next;r.f&64?r.parent=null:ut(r,e),r=n}}function WM(t){for(var e=t.first;e!==null;){var r=e.next;e.f&32||ut(e),e=r}}function ut(t,e=!0){var r=!1;(e||t.f&262144)&&t.nodes!==null&&t.nodes.end!==null&&(zM(t.nodes.start,t.nodes.end),r=!0),fb(t,e&&!r),vf(t,0),Le(t,16384);var n=t.nodes&&t.nodes.t;if(n!==null)for(let s of n)s.stop();ub(t);var i=t.parent;i!==null&&i.first!==null&&Vy(t),L&&(t.component_function=null),t.next=t.prev=t.teardown=t.ctx=t.deps=t.fn=t.nodes=t.ac=null}function zM(t,e){for(;t!==null;){var r=t===e?null:Yt(t);t.remove(),t=r}}function Vy(t){var e=t.parent,r=t.prev,n=t.next;r!==null&&(r.next=n),n!==null&&(n.prev=r),e!==null&&(e.first===t&&(e.first=n),e.last===t&&(e.last=r))}function Fi(t,e,r=!0){var n=[];VM(t,n,!0);var i=()=>{r&&ut(t),e&&e()},s=n.length;if(s>0){var a=()=>--s||i();for(var o of n)o.out(a)}else i()}function VM(t,e,r){if(!(t.f&8192)){t.f^=8192;var n=t.nodes&&t.nodes.t;if(n!==null)for(let o of n)(o.is_global||r)&&e.push(o);for(var i=t.first;i!==null;){var s=i.next,a=(i.f&65536)!==0||(i.f&32)!==0&&(t.f&16)!==0;VM(i,e,a?r:!1),i=s}}}function gf(t){YM(t,!0)}function YM(t,e){if(t.f&8192){t.f^=8192,t.f&1024||(Le(t,2048),gr(t));for(var r=t.first;r!==null;){var n=r.next,i=(r.f&65536)!==0||(r.f&32)!==0;YM(r,i?e:!1),r=n}var s=t.nodes&&t.nodes.t;if(s!==null)for(let a of s)(a.is_global||e)&&a.in()}}function Qp(t,e){if(t.nodes)for(var r=t.nodes.start,n=t.nodes.end;r!==null;){var i=r===n?null:Yt(r);e.append(r),r=i}}p();var XM=null;var om=!1,Tn=!1;function lb(t){Tn=t}var le=null,jr=!1;function $t(t){le=t}var ne=null;function Ut(t){ne=t}var nn=null;function rm(t){le!==null&&(!tr||le.f&2)&&(nn===null?nn=[t]:nn.push(t))}var zr=null,an=0,sn=null;function LM(t){sn=t}var ZM=1,uo=0,na=uo;function nb(t){na=t}function cc(){return++ZM}function ta(t){var e=t.f;if(e&2048)return!0;if(e&2&&(t.f&=-32769),e&4096){for(var r=t.deps,n=r.length,i=0;it.wv)return!0}e&512&&Rt===null&&Le(t,1024)}return!1}function KM(t,e,r=!0){var n=t.reactions;if(n!==null&&!(!tr&&nn!==null&&qn.call(nn,t)))for(var i=0;i{t.ac.abort(_i)}),t.ac=null);try{t.f|=2097152;var u=t.fn,f=u(),d=t.deps,h=(g=ye)==null?void 0:g.is_fork;if(zr!==null){var m;if(h||vf(t,an),d!==null&&an>0)for(d.length=an+zr.length,m=0;m{requestAnimationFrame(()=>t()),setTimeout(()=>t())});await Promise.resolve(),eo()}function R(t){var h,m,g;var e=t.f,r=(e&2)!==0;if((h=XM)==null||h.add(t),le!==null&&!jr){var n=ne!==null&&(ne.f&16384)!==0;if(!n&&(nn===null||!qn.call(nn,t))){var i=le.deps;if(le.f&2097152)t.rvr==null?void 0:r.call(this,s))}return t.startsWith("pointer")||t.startsWith("touch")||t==="wheel"?vt(()=>{e.addEventListener(t,i,n)}):e.addEventListener(t,i,n),i}function on(t,e,r,n,i){var s={capture:n,passive:i},a=tD(t,e,r,s);(e===document.body||e===window||e===document||e instanceof HTMLMediaElement)&&ir(()=>{e.removeEventListener(t,a,s)})}function Et(t){for(var e=0;e{throw w});throw d}}finally{t.__root=e,delete t.currentTarget,$t(u),Ut(f)}}}p();p();function um(t){var e=document.createElement("template");return e.innerHTML=t.replaceAll("",""),e.content}function Mi(t,e){var r=ne;r.nodes===null&&(r.nodes={start:t,end:e,a:null,t:null})}function fe(t,e){var r=(e&1)!==0,n=(e&2)!==0,i,s=!t.startsWith("");return()=>{if(re)return Mi(ge,null),ge;i===void 0&&(i=um(s?t:""+t),r||(i=Zt(i)));var a=n||sf?document.importNode(i,!0):i.cloneNode(!0);if(r){var o=Zt(a),l=a.lastChild;Mi(o,l)}else Mi(a,a);return a}}function ds(){if(re)return Mi(ge,null),ge;var t=document.createDocumentFragment(),e=document.createComment(""),r=It();return t.append(e,r),Mi(e,r),t}function ae(t,e){if(re){var r=ne;(!(r.f&32768)||r.nodes.end===null)&&(r.nodes.end=ge),er();return}t!==null&&t.before(e)}p();var JV=["allowfullscreen","async","autofocus","autoplay","checked","controls","default","disabled","formnovalidate","indeterminate","inert","ismap","loop","multiple","muted","nomodule","novalidate","open","playsinline","readonly","required","reversed","seamless","selected","webkitdirectory","defer","disablepictureinpicture","disableremoteplayback"];var Tce=[...JV,"formNoValidate","isMap","noModule","playsInline","readOnly","value","volume","defaultValue","defaultChecked","srcObject","noValidate","allowFullscreen","disablePictureInPicture","disableRemotePlayback"];var e9=["touchstart","touchmove"];function nD(t){return e9.includes(t)}var t9=["$state","$state.raw","$derived","$derived.by"],Pce=[...t9,"$state.eager","$state.snapshot","$props","$props.id","$bindable","$effect","$effect.pre","$effect.tracking","$effect.root","$effect.pending","$inspect","$inspect().with","$inspect.trace","$host"];var fm=!0;function He(t,e){var n;var r=e==null?"":typeof e=="object"?e+"":e;r!==((n=t.__t)!=null?n:t.__t=t.nodeValue)&&(t.__t=r,t.nodeValue=r+"")}function ia(t,e){return iD(t,e)}function mb(t,e){var a;im(),e.intro=(a=e.intro)!=null?a:!1;let r=e.target,n=re,i=ge;try{for(var s=Zt(r);s&&(s.nodeType!==Or||s.data!==tf);)s=Yt(s);if(!s)throw ns;Bt(!0),Ge(s);let o=iD(t,{...e,anchor:s});return Bt(!1),o}catch(o){if(o instanceof Error&&o.message.split(` `).some(l=>l.startsWith("https://svelte.dev/e/")))throw o;return o!==ns&&console.warn("水合失败:",o),e.recover===!1&&aM(),im(),hc(r),Bt(!1),ia(t,e)}finally{Bt(n),Ge(i)}}var mc=new Map;function iD(t,{target:e,anchor:r,props:n={},events:i,context:s,intro:a=!0}){im();var o=new Set,l=f=>{for(var d=0;d{var f=r!=null?r:e.appendChild(It());return Ky(f,{pending:()=>{}},d=>{at({});var h=ke;if(s&&(h.c=s),i&&(n.$$events=i),re&&Mi(d,null),fm=a,c=t(d,n)||{},fm=!0,re&&(ne.nodes.end=ge,ge===null||ge.nodeType!==Or||ge.data!==Va))throw Ya(),ns;ot()}),()=>{var m;for(var d of o){e.removeEventListener(d,pc);var h=mc.get(d);--h===0?(document.removeEventListener(d,pc),mc.delete(d)):mc.set(d,h)}cm.delete(l),f!==r&&((m=f.parentNode)==null||m.removeChild(f))}});return pb.set(c,u),c}var pb=new WeakMap;function hs(t,e){let r=pb.get(t);return r?(pb.delete(t),r(e)):(L&&(Wt in t?gM():mM()),Promise.resolve())}p();p();p();var Qn,Di,ln,fo,wf,yf,dm,ps=class{constructor(e,r=!0){qe(this,"anchor");me(this,Qn,new Map);me(this,Di,new Map);me(this,ln,new Map);me(this,fo,new Set);me(this,wf,!0);me(this,yf,()=>{var e=ye;if($(this,Qn).has(e)){var r=$(this,Qn).get(e),n=$(this,Di).get(r);if(n)gf(n),$(this,fo).delete(r);else{var i=$(this,ln).get(r);i&&($(this,Di).set(r,i.effect),$(this,ln).delete(r),i.fragment.lastChild.remove(),this.anchor.before(i.fragment),n=i.effect)}for(let[s,a]of $(this,Qn)){if($(this,Qn).delete(s),s===e)break;let o=$(this,ln).get(a);o&&(ut(o.effect),$(this,ln).delete(a))}for(let[s,a]of $(this,Di)){if(s===r||$(this,fo).has(s))continue;let o=()=>{if(Array.from($(this,Qn).values()).includes(s)){var c=document.createDocumentFragment();Qp(a,c),c.append(It()),$(this,ln).set(s,{effect:a,fragment:c})}else ut(a);$(this,fo).delete(s),$(this,Di).delete(s)};$(this,wf)||!n?($(this,fo).add(s),Fi(a,o,!1)):o()}}});me(this,dm,e=>{$(this,Qn).delete(e);let r=Array.from($(this,Qn).values());for(let[n,i]of $(this,ln))r.includes(n)||(ut(i.effect),$(this,ln).delete(n))});this.anchor=e,de(this,wf,r)}ensure(e,r){var n=ye,i=sm();if(r&&!$(this,Di).has(e)&&!$(this,ln).has(e))if(i){var s=document.createDocumentFragment(),a=It();s.append(a),$(this,ln).set(e,{effect:Ht(()=>r(a)),fragment:s})}else $(this,Di).set(e,Ht(()=>r(this.anchor)));if($(this,Qn).set(n,e),i){for(let[o,l]of $(this,Di))o===e?n.unskip_effect(l):n.skip_effect(l);for(let[o,l]of $(this,ln))o===e?n.unskip_effect(l.effect):n.skip_effect(l.effect);n.oncommit($(this,yf)),n.ondiscard($(this,dm))}else re&&(this.anchor=ge),$(this,yf).call(this)}};Qn=new WeakMap,Di=new WeakMap,ln=new WeakMap,fo=new WeakMap,wf=new WeakMap,yf=new WeakMap,dm=new WeakMap;if(L){let t=function(e){if(!(e in globalThis)){let r;Object.defineProperty(globalThis,e,{configurable:!0,get:()=>{if(r!==void 0)return r;lM(e)},set:n=>{r=n}})}};t("$state"),t("$effect"),t("$derived"),t("$inspect"),t("$props"),t("$bindable")}function ho(t){ke===null&&Dp("onMount"),as&&ke.l!==null?i9(ke).m.push(t):sr(()=>{let e=ze(t);if(typeof e=="function")return e})}function i9(t){var r;var e=t.l;return(r=e.u)!=null?r:e.u={a:[],b:[],m:[]}}p();p();var oD=new Map;function lD(t,e){var r=oD.get(t);r||(r=new Set,oD.set(t,r)),r.add(e)}p();p();p();p();p();p();p();p();p();function Ae(t,e,r=!1){re&&er();var n=new ps(t),i=r?65536:0;function s(a,o){if(re){let c=Np(t)===bi;if(a===c){var l=ss();Ge(l),n.anchor=l,Bt(!1),n.ensure(a,o),Bt(!0);return}}n.ensure(a,o)}rn(()=>{var a=!1;e((o,l=!0)=>{a=!0,s(l,o)}),a||s(!1,null)},i)}p();var Cde=Symbol("NaN");p();p();function cn(t,e){return e}function f9(t,e,r){var f;for(var n=[],i=e.length,s,a=e.length,o=0;o{if(s){if(s.pending.delete(d),s.done.add(d),s.pending.size===0){var h=t.outrogroups;gb(Zl(s.done)),h.delete(s),h.size===0&&(t.outrogroups=null)}}else a-=1},!1)}if(a===0){var l=n.length===0&&r!==null;if(l){var c=r,u=c.parentNode;hc(u),u.append(c),t.items.clear()}gb(e,!l)}else s={pending:new Set(e),done:new Set},((f=t.outrogroups)!=null?f:t.outrogroups=new Set).add(s)}function gb(t,e=!0){for(var r=0;r{var w=r();return is(w)?w:w==null?[]:Zl(w)}),d,h=!0;function m(){v.fallback=u,d9(v,d,a,e,n),u!==null&&(d.length===0?u.f&33554432?(u.f^=33554432,_f(u,null,a)):gf(u):Fi(u,()=>{u=null}))}var g=rn(()=>{d=R(f);var w=d.length;let b=!1;if(re){var k=Np(a)===bi;k!==(w===0)&&(a=ss(),Ge(a),Bt(!1),b=!0)}for(var x=new Set,E=ye,A=sm(),y=0;ys(a)):(u=Ht(()=>s(gc!=null?gc:gc=It())),u.f|=33554432)),w>x.size&&(L?p9(d,n):Ly("","","")),re&&w>0&&Ge(ss()),!h)if(A){for(let[P,N]of o)x.has(P)||E.skip_effect(N.e);E.oncommit(m),E.ondiscard(()=>{})}else m();b&&Bt(!0),R(f)}),v={effect:g,flags:e,items:o,outrogroups:null,fallback:u};h=!1,re&&(a=ge)}function bf(t){for(;t!==null&&!(t.f&32);)t=t.next;return t}function d9(t,e,r,n,i){var C,P,N,B,H,ce,Pe,ve,ie;var s=(n&8)!==0,a=e.length,o=t.items,l=bf(t.effect.first),c,u=null,f,d=[],h=[],m,g,v,w;if(s)for(w=0;w0){var _=n&4&&a===0?r:null;if(s){for(w=0;w{var xe,we;if(f!==void 0)for(v of f)(we=(xe=v.nodes)==null?void 0:xe.a)==null||we.apply()})}function h9(t,e,r,n,i,s,a,o){var l=a&1?a&16?nr(r):lo(r,!1,!1):null,c=a&2?nr(i):null;return L&&l&&(l.trace=()=>{var u;o()[(u=c==null?void 0:c.v)!=null?u:i]}),{v:l,i:c,e:Ht(()=>(s(e,l!=null?l:r,c!=null?c:i,o),()=>{t.delete(n)}))}}function _f(t,e,r){if(t.nodes)for(var n=t.nodes.start,i=t.nodes.end,s=e&&!(e.f&33554432)?e.nodes.start:r;n!==null;){var a=Yt(n);if(s.before(n),n===i)return;n=a}}function sa(t,e,r){e===null?t.effect.first=r:e.next=r,r===null?t.effect.last=e:r.prev=e}function p9(t,e){let r=new Map,n=t.length;for(let i=0;iperformance.now():()=>Date.now(),Jn={tick:t=>(Ip?requestAnimationFrame:Fr)(t),now:()=>m9(),tasks:new Set};function uD(){let t=Jn.now();Jn.tasks.forEach(e=>{e.c(t)||(Jn.tasks.delete(e),e.f())}),Jn.tasks.size!==0&&Jn.tick(uD)}function fD(t){let e;return Jn.tasks.size===0&&Jn.tick(uD),{promise:new Promise(r=>{Jn.tasks.add(e={c:t,f:r})}),abort(){Jn.tasks.delete(e)}}}function hm(t,e){Kn(()=>{t.dispatchEvent(new CustomEvent(e))})}function y9(t){if(t==="float")return"cssFloat";if(t==="offset")return"cssOffset";if(t.startsWith("--"))return t;let e=t.split("-");return e.length===1?e[0]:e[0]+e.slice(1).map(r=>r[0].toUpperCase()+r.slice(1)).join("")}function dD(t){let e={},r=t.split(";");for(let n of r){let[i,s]=n.split(":");if(!i||s===void 0)break;let a=y9(i.trim());e[a]=s.trim()}return e}var b9=t=>t;function ei(t,e,r,n){var k,x;var i=(t&1)!==0,s=(t&2)!==0,a=i&&s,o=(t&4)!==0,l=a?"both":i?"in":"out",c,u=e.inert,f=e.style.overflow,d,h;function m(){return Kn(()=>{var E;return c!=null?c:c=r()(e,(E=n==null?void 0:n())!=null?E:{},{direction:l})})}var g={is_global:o,in(){var E;if(e.inert=u,!i){h==null||h.abort(),(E=h==null?void 0:h.reset)==null||E.call(h);return}s||d==null||d.abort(),d=vb(e,m(),h,1,()=>{hm(e,"introend"),d==null||d.abort(),d=c=void 0,e.style.overflow=f})},out(E){if(!s){E==null||E(),c=void 0;return}e.inert=!0,h=vb(e,m(),d,0,()=>{hm(e,"outroend"),E==null||E()})},stop:()=>{d==null||d.abort(),h==null||h.abort()}},v=ne;if(((x=(k=v.nodes).t)!=null?x:k.t=[]).push(g),i&&fm){var w=o;if(!w){for(var b=v.parent;b&&b.f&65536;)for(;(b=b.parent)&&!(b.f&16););w=!b||(b.f&32768)!==0}w&&Wr(()=>{ze(()=>g.in())})}}function vb(t,e,r,n,i){var s=n===1;if(My(e)){var a,o=!1;return vt(()=>{if(!o){var v=e({direction:s?"in":"out"});a=vb(t,v,r,n,i)}}),{abort:()=>{o=!0,a==null||a.abort()},deactivate:()=>a.deactivate(),reset:()=>a.reset(),t:()=>a.t()}}if(r==null||r.deactivate(),!(e!=null&&e.duration)&&!(e!=null&&e.delay))return hm(t,s?"introstart":"outrostart"),i(),{abort:Fr,deactivate:Fr,reset:Fr,t:()=>n};let{delay:l=0,css:c,tick:u,easing:f=b9}=e;var d=[];if(s&&r===void 0&&(u&&u(0,1),c)){var h=dD(c(0,1));d.push(h,h)}var m=()=>1-n,g=t.animate(d,{duration:l,fill:"forwards"});return g.onfinish=()=>{var _;g.cancel(),hm(t,s?"introstart":"outrostart");var v=(_=r==null?void 0:r.t())!=null?_:1-n;r==null||r.abort();var w=n-v,b=e.duration*Math.abs(w),k=[];if(b>0){var x=!1;if(c)for(var E=Math.ceil(b/16.666666666666668),A=0;A<=E;A+=1){var y=v+w*f(A/E),S=dD(c(y,1-y));k.push(S),x||(x=S.overflow==="hidden")}x&&(t.style.overflow="hidden"),m=()=>{var C=g.currentTime;return v+w*f(C/b)},u&&fD(()=>{if(g.playState!=="running")return!1;var C=m();return u(C,1-C),!0})}g=t.animate(k,{duration:b,fill:"forwards"}),g.onfinish=()=>{m=()=>n,u==null||u(n,1-n),i()}},{abort:()=>{g&&(g.cancel(),g.effect=null,g.onfinish=Fr)},deactivate:()=>{i=Fr},reset:()=>{n===0&&(u==null||u(1,0))},t:()=>m()}}p();p();function ti(t,e){Wr(()=>{var i;var r=t.getRootNode(),n=r.host?r:(i=r.head)!=null?i:r.ownerDocument.head;if(!n.querySelector("#"+e.hash)){let s=document.createElement("style");s.id=e.hash,s.textContent=e.code,n.appendChild(s),L&&lD(e.hash,s)}})}p();p();p();p();p();p();var pD=[...` \r\f\xA0\v\uFEFF`];function mD(t,e,r){var n=t==null?"":""+t;if(e&&(n=n?n+" "+e:e),r){for(var i in r)if(r[i])n=n?n+" "+i:i;else if(n.length)for(var s=i.length,a=0;(a=n.indexOf(i,a))>=0;){var o=a+s;(a===0||pD.includes(n[a-1]))&&(o===n.length||pD.includes(n[o]))?n=(a===0?"":n.substring(0,a))+n.substring(o+1):a=o}}return n===""?null:n}p();function ft(t,e,r,n,i,s){var a=t.__className;if(re||a!==r||a===void 0){var o=mD(r,n,s);(!re||o!==t.getAttribute("class"))&&(o==null?t.removeAttribute("class"):e?t.className=o:t.setAttribute("class",o)),t.__className=r}else if(s&&i!==s)for(var l in s){var c=!!s[l];(i==null||c!==!!i[l])&&t.classList.toggle(l,c)}return s}p();p();var T9=Symbol("class"),P9=Symbol("style"),R9=Symbol("is custom element"),$9=Symbol("is html");function _e(t,e,r,n){var i=I9(t);if(re&&(i[e]=t.getAttribute(e),e==="src"||e==="srcset"||e==="href"&&t.nodeName==="LINK")){n||O9(t,e,r!=null?r:"");return}i[e]!==(i[e]=r)&&(e==="loading"&&(t[JO]=r),r==null?t.removeAttribute(e):typeof r!="string"&&F9(t).includes(e)?t[e]=r:t.setAttribute(e,r))}function I9(t){var e;return(e=t.__attributes)!=null?e:t.__attributes={[R9]:t.nodeName.includes("-"),[$9]:t.namespaceURI===ZO}}var gD=new Map;function F9(t){var e=t.getAttribute("is")||t.nodeName,r=gD.get(e);if(r)return r;gD.set(e,r=[]);for(var n,i=t,s=Element.prototype;s!==i;){n=Iy(i);for(var a in n)n[a].set&&r.push(a);i=Kl(i)}return r}function O9(t,e,r){var n;L&&(e==="srcset"&&M9(t,r)||wb((n=t.getAttribute(e))!=null?n:"",r)||pM(e,t.outerHTML.replace(t.innerHTML,t.innerHTML&&"..."),String(r)))}function wb(t,e){return t===e?!0:new URL(t,document.baseURI).href===new URL(e,document.baseURI).href}function vD(t){return t.split(",").map(e=>e.trim().split(" ").filter(Boolean))}function M9(t,e){var r=vD(t.srcset),n=vD(e);return n.length===r.length&&n.every(([i,s],a)=>s===r[a][1]&&(wb(r[a][0],i)||wb(i,r[a][0])))}p();p();p();function _b(t,e,r=e){var n=new WeakSet;ob(t,"input",async i=>{L&&t.type==="checkbox"&&Dy();var s=i?t.defaultValue:t.value;if(s=yb(t)?bb(s):s,r(s),ye!==null&&n.add(ye),await lm(),s!==(s=e())){var a=t.selectionStart,o=t.selectionEnd,l=t.value.length;if(t.value=s!=null?s:"",o!==null){var c=t.value.length;a===o&&o===l&&c>l?(t.selectionStart=c,t.selectionEnd=c):(t.selectionStart=a,t.selectionEnd=Math.min(o,c))}}}),(re&&t.defaultValue!==t.value||ze(e)==null&&t.value)&&(r(yb(t)?bb(t.value):t.value),ye!==null&&n.add(ye)),Xt(()=>{var a;L&&t.type==="checkbox"&&Dy();var i=e();if(t===document.activeElement){var s=(a=lf)!=null?a:ye;if(n.has(s))return}yb(t)&&i===bb(t.value)||t.type==="date"&&!i&&!t.value||i!==t.value&&(t.value=i!=null?i:"")})}function yb(t){var e=t.type;return e==="number"||e==="range"}function bb(t){return t===""?null:+t}p();p();p();p();p();function yD(t,e){return t===e||(t==null?void 0:t[Wt])===e}function it(t={},e,r,n){return Wr(()=>{var i,s;return Xt(()=>{i=s,s=(n==null?void 0:n())||[],ze(()=>{t!==r(...s)&&(e(t,...s),i&&yD(r(...i),t)&&e(null,...i))})}),()=>{vt(()=>{s&&yD(r(...s),t)&&e(null,...s)})}}),t}p();p();p();p();p();p();p();p();p();var mm=!1,Vge=Symbol();function Sb(t){var e=mm;try{return mm=!1,[t(),mm]}finally{mm=e}}function Pn(t,e,r,n){var k,x;var i=!as||(r&2)!==0,s=(r&8)!==0,a=(r&16)!==0,o=n,l=!0,c=()=>(l&&(l=!1,o=a?ze(n):n),o),u;if(s){var f=Wt in t||rf in t;u=(x=(k=Ir(t,e))==null?void 0:k.set)!=null?x:f&&e in t?E=>t[e]=E:void 0}var d,h=!1;s?[d,h]=Sb(()=>t[e]):d=t[e],d===void 0&&n!==void 0&&(d=c(),u&&(i&&oM(e),u(d)));var m;if(i?m=()=>{var E=t[e];return E===void 0?c():(l=!0,E)}:m=()=>{var E=t[e];return E!==void 0&&(o=void 0),E===void 0?o:E},i&&!(r&4))return m;if(u){var g=t.$$legacy;return function(E,A){return arguments.length>0?((!i||!A||g||h)&&u(A?m():E),E):m()}}var v=!1,w=(r&1?so:ao)(()=>(v=!1,m()));L&&(w.label=e),s&&R(w);var b=ne;return function(E,A){if(arguments.length>0){let y=A?R(w):i&&s?Ye(E):E;return se(w,y),v=!0,o!==void 0&&(o=y),E}return Tn&&v||b.f&16384?w.v:R(w)}}p();p();p();function bD(t){return new Eb(t)}var gs,Rn,Eb=class{constructor(e){me(this,gs);me(this,Rn);var s,a;var r=new Map,n=(o,l)=>{var c=lo(l,!1,!1);return r.set(o,c),c};let i=new Proxy({...(e.props||{}),$$events:{}},{get(o,l){var c;return R((c=r.get(l))!=null?c:n(l,Reflect.get(o,l)))},has(o,l){var c;return l===rf?!0:(R((c=r.get(l))!=null?c:n(l,Reflect.get(o,l))),Reflect.has(o,l))},set(o,l,c){var u;return se((u=r.get(l))!=null?u:n(l,c),c),Reflect.set(o,l,c)}});de(this,Rn,(e.hydrate?mb:ia)(e.component,{target:e.target,anchor:e.anchor,props:i,context:e.context,intro:(s=e.intro)!=null?s:!1,recover:e.recover})),!tr&&(!((a=e==null?void 0:e.props)!=null&&a.$$host)||e.sync===!1)&&eo(),de(this,gs,i.$$events);for(let o of Object.keys($(this,Rn)))o==="$set"||o==="$destroy"||o==="$on"||Jt(this,o,{get(){return $(this,Rn)[o]},set(l){$(this,Rn)[o]=l},enumerable:!0});$(this,Rn).$set=o=>{Object.assign(i,o)},$(this,Rn).$destroy=()=>{hs($(this,Rn))}}$set(e){$(this,Rn).$set(e)}$on(e,r){$(this,gs)[e]=$(this,gs)[e]||[];let n=(...i)=>r.call(this,...i);return $(this,gs)[e].push(n),()=>{$(this,gs)[e]=$(this,gs)[e].filter(i=>i!==n)}}$destroy(){$(this,Rn).$destroy()}};gs=new WeakMap,Rn=new WeakMap;var X9;typeof HTMLElement=="function"&&(X9=class extends HTMLElement{constructor(e,r,n){super();qe(this,"$$ctor");qe(this,"$$s");qe(this,"$$c");qe(this,"$$cn",!1);qe(this,"$$d",{});qe(this,"$$r",!1);qe(this,"$$p_d",{});qe(this,"$$l",{});qe(this,"$$l_u",new Map);qe(this,"$$me");qe(this,"$$shadowRoot",null);this.$$ctor=e,this.$$s=r,n&&(this.$$shadowRoot=this.attachShadow(n))}addEventListener(e,r,n){if(this.$$l[e]=this.$$l[e]||[],this.$$l[e].push(r),this.$$c){let i=this.$$c.$on(e,r);this.$$l_u.set(r,i)}super.addEventListener(e,r,n)}removeEventListener(e,r,n){if(super.removeEventListener(e,r,n),this.$$c){let i=this.$$l_u.get(r);i&&(i(),this.$$l_u.delete(r))}}async connectedCallback(){if(this.$$cn=!0,!this.$$c){let e=function(i){return s=>{let a=document.createElement("slot");i!=="default"&&(a.name=i),ae(s,a)}};if(await Promise.resolve(),!this.$$cn||this.$$c)return;let r={},n=Z9(this);for(let i of this.$$s)i in n&&(i==="default"&&!this.$$d.children?(this.$$d.children=e(i),r.default=!0):r[i]=e(i));for(let i of this.attributes){let s=this.$$g_p(i.name);s in this.$$d||(this.$$d[s]=kb(s,i.value,this.$$p_d,"toProp"))}for(let i in this.$$p_d)!(i in this.$$d)&&this[i]!==void 0&&(this.$$d[i]=this[i],delete this[i]);this.$$c=bD({component:this.$$ctor,target:this.$$shadowRoot||this,props:{...this.$$d,$$slots:r,$$host:this}}),this.$$me=cb(()=>{Xt(()=>{var i;this.$$r=!0;for(let s of $y(this.$$c)){if(!((i=this.$$p_d[s])!=null&&i.reflect))continue;this.$$d[s]=this.$$c[s];let a=kb(s,this.$$d[s],this.$$p_d,"toAttribute");a==null?this.removeAttribute(this.$$p_d[s].attribute||s):this.setAttribute(this.$$p_d[s].attribute||s,a)}this.$$r=!1})});for(let i in this.$$l)for(let s of this.$$l[i]){let a=this.$$c.$on(i,s);this.$$l_u.set(s,a)}this.$$l={}}}attributeChangedCallback(e,r,n){var i;this.$$r||(e=this.$$g_p(e),this.$$d[e]=kb(e,n,this.$$p_d,"toProp"),(i=this.$$c)==null||i.$set({[e]:this.$$d[e]}))}disconnectedCallback(){this.$$cn=!1,Promise.resolve().then(()=>{!this.$$cn&&this.$$c&&(this.$$c.$destroy(),this.$$me(),this.$$c=void 0)})}$$g_p(e){return $y(this.$$p_d).find(r=>this.$$p_d[r].attribute===e||!this.$$p_d[r].attribute&&r.toLowerCase()===e)||e}});function kb(t,e,r,n){var s;let i=(s=r[t])==null?void 0:s.type;if(e=i==="Boolean"&&typeof e!="boolean"?e!=null:e,!n||!r[t])return e;if(n==="toAttribute")switch(i){case"Object":case"Array":return e==null?null:JSON.stringify(e);case"Boolean":return e?"":null;case"Number":return e==null?null:e;default:return e}else switch(i){case"Object":case"Array":return e&&JSON.parse(e);case"Boolean":return e;case"Number":return e!=null?+e:e;default:return e}}function Z9(t){let e={};return t.childNodes.forEach(r=>{e[r.slot||"default"]=!0}),e}p();p();function po(t,e,r,n){function i(s){return s instanceof r?s:new r(function(a){a(s)})}return new(r||(r=Promise))(function(s,a){function o(u){try{c(n.next(u))}catch(f){a(f)}}function l(u){try{c(n.throw(u))}catch(f){a(f)}}function c(u){u.done?s(u.value):i(u.value).then(o,l)}c((n=n.apply(t,e||[])).next())})}var Pb=require("obsidian");p();var Cb=require("obsidian");p();function K9(t){let e=t-1;return e*e*e+1}var Ab=!1;function Ni(t,{delay:e=0,duration:r=400,easing:n=K9,axis:i="y"}={}){let s=getComputedStyle(t);L&&!Ab&&/(contents|inline|table)/.test(s.display)&&(Ab=!0,Promise.resolve().then(()=>Ab=!1),wM(s.display));let a=+s.opacity,o=i==="y"?"height":"width",l=parseFloat(s[o]),c=i==="y"?["top","bottom"]:["left","right"],u=c.map(w=>`${w[0].toUpperCase()}${w.slice(1)}`),f=parseFloat(s[`padding${u[0]}`]),d=parseFloat(s[`padding${u[1]}`]),h=parseFloat(s[`margin${u[0]}`]),m=parseFloat(s[`margin${u[1]}`]),g=parseFloat(s[`border${u[0]}Width`]),v=parseFloat(s[`border${u[1]}Width`]);return{delay:e,duration:r,easing:n,css:w=>`overflow: hidden;opacity: ${Math.min(w*20,1)*a};${o}: ${w*l}px;padding-${c[0]}: ${w*f}px;padding-${c[1]}: ${w*d}px;margin-${c[0]}: ${w*h}px;margin-${c[1]}: ${w*m}px;border-${c[0]}-width: ${w*g}px;border-${c[1]}-width: ${w*v}px;min-${o}: 0`}}p();var gm=require("obsidian");var Q9=fe("
"),J9=fe("
"),e7={hash:"svelte-1c0jiav",code:"main.svelte-1c0jiav .nav-file-title:where(.svelte-1c0jiav) {align-items:center;}"};function xf(t,e){at(e,!0),ti(t,e7);let r=Ye([]),n=St(()=>e.view.leaf.getRoot().side=="left"?"right":"left");sr(()=>{for(let w of r)w&&(0,gm.setIcon)(w,w.getAttr("data-icon"))});function i(w){w.stopPropagation(),ml(e.diff.path)?s(w):a(w)}function s(w){var b;w.stopPropagation();let k=e.view.app.vault.getAbstractFileByPath(e.diff.vaultPath);k instanceof gm.TFile&&((b=Bn(e.view.app,w))===null||b===void 0||b.openFile(k).catch(x=>e.view.plugin.displayError(x)))}function a(w){var b;e.view.plugin.tools.openDiff({event:w,aFile:(b=e.diff.fromPath)!==null&&b!==void 0?b:e.diff.path,aRef:`${e.diff.hash}^`,bFile:e.diff.path,bRef:e.diff.hash})}var o=J9();o.__click=i;var l=j(o),c=j(l),u=j(c,!0);G(c);var f=ee(c,2),d=j(f),h=j(d);{var m=w=>{var b=Q9();b.__click=s,it(b,k=>r[0]=k,()=>r==null?void 0:r[0]),on("auxclick",b,s),ae(w,b)};Ae(h,w=>{gl(e.diff.vaultPath,e.view.app)&&w(m)})}G(d);var g=ee(d,2),v=j(g,!0);G(g),G(f),G(l),G(o),Ne(w=>{_e(l,"data-path",e.diff.vaultPath),_e(l,"data-tooltip-position",R(n)),_e(l,"aria-label",e.diff.vaultPath),He(u,w),_e(g,"data-type",e.diff.status),He(v,e.diff.status)},[()=>vi(e.diff.vaultPath)]),on("auxclick",o,w=>{w.stopPropagation(),w.button==2?gi(e.view.app,w,e.diff.vaultPath,e.view.leaf,"git-history"):i(w)}),ae(t,o),ot()}Et(["click"]);p();var t7=fe("
"),r7=fe("
"),n7=fe("
"),i7=fe("
"),s7={hash:"svelte-d9h7mp",code:"main.svelte-d9h7mp .nav-folder-title-content:where(.svelte-d9h7mp) {display:flex;align-items:center;}"};function Sf(t,e){at(e,!0),ti(t,s7);let r=Pn(e,"topLevel",3,!1),n=Pn(e,"closed",15),i=St(()=>e.view.leaf.getRoot().side=="left"?"right":"left");function s(l,c){l.stopPropagation(),n(n()[c.path]=!n()[c.path],!0)}var a=i7();let o;un(a,21,()=>e.hierarchy.children,cn,(l,c)=>{var u=ds(),f=qr(u);{var d=m=>{var g=t7(),v=j(g);xf(v,{get diff(){return R(c).data},get view(){return e.view}}),G(g),ae(m,g)},h=m=>{var g=n7();let v;var w=j(g);w.__click=S=>s(S,R(c));var b=ee(j(w),2);let k;var x=ee(b,2),E=j(x,!0);G(x),G(w);var A=ee(w,2);{var y=S=>{var _=r7(),C=j(_);Sf(C,{get hierarchy(){return R(c)},get plugin(){return e.plugin},get view(){return e.view},get closed(){return n()},set closed(P){n(P)}}),G(_),ei(3,_,()=>Ni,()=>({duration:150})),ae(S,_)};Ae(A,S=>{n()[R(c).path]||S(y)})}G(g),Ne(()=>{v=ft(g,1,"tree-item nav-folder",null,v,{"is-collapsed":n()[R(c).path]}),_e(w,"data-tooltip-position",R(i)),_e(w,"aria-label",R(c).vaultPath),k=ft(b,1,"tree-item-icon nav-folder-collapse-indicator collapse-icon",null,k,{"is-collapsed":n()[R(c).path]}),He(E,R(c).title)}),ae(m,g)};Ae(f,m=>{R(c).data?m(d):m(h,!1)})}ae(l,u)}),G(a),Ne(()=>o=ft(a,1,"svelte-d9h7mp",null,o,{topLevel:r()})),ae(t,a),ot()}Et(["click"]);var a7=fe("
"),o7=fe("
"),l7=fe("
"),c7=fe("
"),u7=fe("
"),f7={hash:"svelte-1edsiy5",code:""};function Tb(t,e){at(e,!0),ti(t,f7);let r=St(()=>({title:"",path:"",vaultPath:"",children:e.plugin.gitManager.getTreeStructure(e.log.diff.files)})),n=St(()=>e.view.leaf.getRoot().side=="left"?"right":"left"),i=Me(!0),s=Me(Ye({}));function a(S){let _=S.author.name;if(e.plugin.settings.authorInHistoryView=="full")return _;if(e.plugin.settings.authorInHistoryView=="initials")return _.split(" ").filter(P=>P.length>0).map(P=>P[0].toUpperCase()).join("")}var o=u7(),l=j(o);let c;var u=j(l);u.__click=()=>se(i,!R(i));var f=j(u);let d;var h=ee(f,2),m=j(h);{var g=S=>{var _=a7(),C=j(_,!0);G(_),Ne(P=>He(C,P),[()=>e.log.refs.join(", ")]),ae(S,_)};Ae(m,S=>{e.log.refs.length>0&&S(g)})}var v=ee(m,2);{var w=S=>{var _=o7(),C=j(_,!0);G(_),Ne(P=>He(C,P),[()=>a(e.log)]),ae(S,_)};Ae(v,S=>{var _;e.plugin.settings.authorInHistoryView!="hide"&&(_=e.log.author)!=null&&_.name&&S(w)})}var b=ee(v,2);{var k=S=>{var _=l7(),C=j(_,!0);G(_),Ne(P=>He(C,P),[()=>(0,Cb.moment)(e.log.date).format(e.plugin.settings.commitDateFormat)]),ae(S,_)};Ae(b,S=>{e.plugin.settings.dateInHistoryView&&S(k)})}var x=ee(b,2),E=j(x,!0);G(x),G(h),G(u);var A=ee(u,2);{var y=S=>{var _=c7(),C=j(_);{var P=B=>{Sf(B,{get hierarchy(){return R(r)},get plugin(){return e.plugin},get view(){return e.view},topLevel:!0,get closed(){return R(s)},set closed(H){se(s,H,!0)}})},N=B=>{var H=ds(),ce=qr(H);un(ce,17,()=>e.log.diff.files,cn,(Pe,ve)=>{xf(Pe,{get view(){return e.view},get diff(){return R(ve)}})}),ae(B,H)};Ae(C,B=>{e.showTree?B(P):B(N,!1)})}G(_),ei(3,_,()=>Ni,()=>({duration:150})),ae(S,_)};Ae(A,S=>{R(i)||S(y)})}G(l),G(o),Ne(S=>{c=ft(l,1,"tree-item nav-folder",null,c,{"is-collapsed":R(i)}),_e(u,"aria-label",S),_e(u,"data-tooltip-position",R(n)),d=ft(f,1,"tree-item-icon nav-folder-collapse-indicator collapse-icon",null,d,{"is-collapsed":R(i)}),He(E,e.log.message)},[()=>{var S;return`${e.log.refs.length>0?e.log.refs.join(", ")+` `:""}${(S=e.log.author)==null?void 0:S.name} ${(0,Cb.moment)(e.log.date).format(e.plugin.settings.commitDateFormat)} ${e.log.message}`}]),ae(t,o),ot()}Et(["click"]);var d7=fe("
"),h7=fe("
"),p7={hash:"svelte-12n6twc",code:""};function Rb(t,e){at(e,!0),ti(t,p7);let r=Pn(e,"plugin",15),n=Me(!1),i=Ye([]),s=Me(void 0),a=Me(Ye(r().settings.treeStructure)),o;sr(()=>{o&&o.empty()}),ho(()=>{e.view.registerEvent(e.view.app.workspace.on("obsidian-git:head-change",()=>void c().catch(console.error)))}),sr(()=>{i.forEach(x=>(0,Pb.setIcon)(x,x.getAttr("data-icon")))}),ho(()=>{let x=new IntersectionObserver(A=>{A[0].isIntersecting&&!R(n)&&u().catch(console.error)}),E=document.querySelector("#sentinel");return E&&x.observe(E),()=>{x.disconnect()}}),c().catch(console.error);function l(){c().catch(console.error)}function c(){return po(this,void 0,void 0,function*(){var x;if(!r().gitReady){se(s,void 0);return}se(n,!0);let E=r().gitManager instanceof Se,A;((x=R(s)===null||R(s)===void 0?void 0:R(s).length)!==null&&x!==void 0?x:0)==0?A=E?50:10:A=R(s).length,se(s,yield r().gitManager.log(void 0,!1,A),!0),se(n,!1)})}function u(){return po(this,void 0,void 0,function*(){var x;if(!r().gitReady||R(s)===void 0)return;se(n,!0);let A=r().gitManager instanceof Se?50:10,y=yield r().gitManager.log(void 0,!1,A,(x=R(s).last())===null||x===void 0?void 0:x.hash);R(s).push(...y.slice(1)),se(n,!1)})}var f=h7(),d=j(f),h=j(d),m=j(h);m.__click=()=>{se(a,!R(a)),(0,Pb.setIcon)(i[0],R(a)?"list":"folder"),r(r().settings.treeStructure=R(a),!0),r().saveSettings()},it(m,x=>i[0]=x,()=>i==null?void 0:i[0]);var g=ee(m,2);let v;g.__click=l,it(g,x=>i[1]=x,()=>i==null?void 0:i[1]),G(h),G(d);var w=ee(d,2),b=j(w);{var k=x=>{var E=d7();un(E,21,()=>R(s),cn,(A,y)=>{Tb(A,{get view(){return e.view},get showTree(){return R(a)},get log(){return R(y)},get plugin(){return r()}})}),G(E),ae(x,E)};Ae(b,x=>{R(s)&&x(k)})}Xa(4),G(w),G(f),Ne(()=>{_e(m,"data-icon",R(a)?"list":"folder"),v=ft(g,1,"clickable-icon nav-action-button",null,v,{loading:R(n)})}),ae(t,f),ot()}Et(["click"]);var Ef=class extends _D.ItemView{constructor(e,r){super(e),this.plugin=r,this.hoverPopover=null}getViewType(){return gn.type}getDisplayText(){return gn.name}getIcon(){return gn.icon}onClose(){return this._view&&hs(this._view),super.onClose()}reload(){this._view&&hs(this._view),this._view=ia(Rb,{target:this.contentEl,props:{plugin:this.plugin,view:this}})}onOpen(){return this.reload(),super.onOpen()}};p();var xD=require("obsidian"),vm=class extends xD.FuzzySuggestModal{constructor(r,n){super(r.app);this.branches=n;this.setPlaceholder("选择要检出的分支")}getItems(){return this.branches}getItemText(r){return r}onChooseItem(r,n){this.resolve(r)}openAndGetReslt(){return new Promise(r=>{this.resolve=r,this.open()})}onClose(){new Promise(r=>setTimeout(r,10)).then(()=>{this.resolve&&this.resolve(void 0)})}};p();var kD=require("obsidian");p();var vo=require("obsidian");p();var kf=require("obsidian");p();var SD=require("obsidian");var vc=class extends SD.Modal{constructor({app:r,path:n,filesToDeleteCount:i,filesToDiscardCount:s}){super(r);this.resolve=null;this.path=n,this.deleteCount=i,this.discardCount=s}openAndGetResult(){return this.open(),new Promise(r=>{this.resolve=r})}onOpen(){let r=this.deleteCount+this.discardCount,{contentEl:n,titleEl:i}=this,s="";this.path!=""&&(r>1?s=`files in "${this.path}"`:s=`"${this.path}"`),i.setText(`${this.discardCount==0?"Delete":"Discard"} ${s}`),this.deleteCount>0&&n.createEl("p").setText(`Are you sure you want to DELETE the ${Pu(this.deleteCount,"untracked file")}? They are deleted according to your Obsidian trash settting.`),this.discardCount>0&&n.createEl("p").setText(`Are you sure you want to discard ALL changes in ${Pu(this.discardCount,"tracked file")}?`);let a=n.createDiv({cls:"modal-button-container"});if(this.deleteCount>0){let l=a.createEl("button",{cls:"mod-warning",text:`${this.discardCount>0?"Discard":"Delete"} all ${Pu(r,"file")}`});l.addEventListener("click",()=>{this.resolve&&this.resolve("delete"),this.close()}),l.addEventListener("keypress",()=>{this.resolve&&this.resolve("delete"),this.close()})}if(this.discardCount>0){let l=a.createEl("button",{cls:"mod-warning",text:`Discard all ${Pu(this.discardCount,"tracked file")}`});l.addEventListener("click",()=>{this.resolve&&this.resolve("discard"),this.close()}),l.addEventListener("keypress",()=>{this.resolve&&this.resolve("discard"),this.close()})}let o=a.createEl("button",{text:"取消"});o.addEventListener("click",()=>(this.resolve&&this.resolve(!1),this.close())),o.addEventListener("keypress",()=>(this.resolve&&this.resolve(!1),this.close()))}onClose(){let{contentEl:r}=this;r.empty()}};var m7=fe("
"),g7=fe("
");function Af(t,e){at(e,!0);let r=Ye([]),n=St(()=>e.view.leaf.getRoot().side=="left"?"right":"left");sr(()=>{for(let A of r)A&&(0,kf.setIcon)(A,A.getAttr("data-icon"))});function i(A){A.stopPropagation(),ml(e.change.path)?a(A):l(A)}function s(A){e.view.app.vault.getAbstractFileByPath(e.change.vaultPath)&&vl(e.view.app,A,e.view,e.change.vaultPath)}function a(A){var y;A.stopPropagation();let S=e.view.app.vault.getAbstractFileByPath(e.change.vaultPath);S instanceof kf.TFile&&((y=Bn(e.view.app,A))===null||y===void 0||y.openFile(S).catch(_=>e.view.plugin.displayError(_)))}function o(A){A.stopPropagation(),e.manager.stage(e.change.path,!1).catch(y=>e.view.plugin.displayError(y)).finally(()=>{e.view.app.workspace.trigger("obsidian-git:refresh")})}function l(A){A.stopPropagation(),e.view.plugin.tools.openDiff({aFile:e.change.path,aRef:"",event:A})}function c(A){A.stopPropagation();let y=e.change.workingDir=="U";new vc({app:e.view.app,filesToDeleteCount:y?1:0,filesToDiscardCount:y?0:1,path:e.change.vaultPath}).openAndGetResult().then(S=>po(this,void 0,void 0,function*(){if(S=="delete"){let _=e.view.app.vault.getAbstractFileByPath(e.change.vaultPath);_ instanceof kf.TFile?yield e.view.app.fileManager.trashFile(_):yield e.view.app.vault.adapter.remove(e.change.vaultPath)}else S=="discard"&&(yield e.manager.discard(e.change.path).finally(()=>{e.view.app.workspace.trigger("obsidian-git:refresh")}));e.view.app.workspace.trigger("obsidian-git:refresh")}),S=>e.view.plugin.displayError(S))}var u=g7();u.__mouseover=s,u.__click=i;var f=j(u),d=j(f),h=j(d,!0);G(d);var m=ee(d,2),g=j(m),v=j(g);{var w=A=>{var y=m7();y.__click=a,it(y,S=>r[0]=S,()=>r==null?void 0:r[0]),on("auxclick",y,a),ae(A,y)};Ae(v,A=>{gl(e.change.vaultPath,e.view.app)&&A(w)})}var b=ee(v,2);b.__click=c,it(b,A=>r[1]=A,()=>r==null?void 0:r[1]);var k=ee(b,2);k.__click=o,it(k,A=>r[2]=A,()=>r==null?void 0:r[2]),G(g);var x=ee(g,2),E=j(x,!0);G(x),G(m),G(f),G(u),Ne(A=>{_e(f,"data-path",e.change.vaultPath),_e(f,"data-tooltip-position",R(n)),_e(f,"aria-label",e.change.vaultPath),He(h,A),_e(x,"data-type",e.change.workingDir),He(E,e.change.workingDir)},[()=>vi(e.change.vaultPath)]),on("auxclick",u,A=>{A.stopPropagation(),A.button==2?gi(e.view.app,A,e.change.vaultPath,e.view.leaf,"git-source-control"):i(A)}),ae(t,u),ot()}Et(["mouseover","click"]);p();var ED=require("obsidian");var v7=fe("
");function Cf(t,e){at(e,!0);let r=St(()=>e.view.leaf.getRoot().side=="left"?"right":"left");function n(d){e.view.app.vault.getAbstractFileByPath(e.change.vaultPath)&&vl(e.view.app,d,e.view,e.change.vaultPath)}function i(d){var h;d.stopPropagation();let m=e.view.app.vault.getAbstractFileByPath(e.change.vaultPath);m instanceof ED.TFile&&((h=Bn(e.view.app,d))===null||h===void 0||h.openFile(m).catch(g=>e.view.plugin.displayError(g)))}var s=v7();s.__mouseover=n,s.__click=i;var a=j(s),o=j(a),l=j(o,!0);G(o);var c=ee(o,2),u=j(c),f=j(u,!0);G(u),G(c),G(a),G(s),Ne(d=>{_e(a,"data-path",e.change.vaultPath),_e(a,"data-tooltip-position",R(r)),_e(a,"aria-label",e.change.vaultPath),He(l,d),_e(u,"data-type",e.change.workingDir),He(f,e.change.workingDir)},[()=>vi(e.change.vaultPath)]),on("auxclick",s,d=>{d.stopPropagation(),d.button==2?gi(e.view.app,d,e.change.vaultPath,e.view.leaf,"git-source-control"):i(d)}),ae(t,s),ot()}Et(["mouseover","click"]);p();var wm=require("obsidian");var w7=fe("
"),y7=fe("
");function Tf(t,e){at(e,!0);let r=Ye([]),n=St(()=>e.view.leaf.getRoot().side=="left"?"right":"left");sr(()=>{for(let x of r)x&&(0,wm.setIcon)(x,x.getAttr("data-icon"))});function i(x){x.stopPropagation(),ml(e.change.path)?a(x):o(x)}function s(x){e.view.app.vault.getFileByPath(e.change.vaultPath)&&vl(e.view.app,x,e.view,e.change.vaultPath)}function a(x){var E;x.stopPropagation();let A=e.view.app.vault.getAbstractFileByPath(e.change.vaultPath);A instanceof wm.TFile&&((E=Bn(e.view.app,x))===null||E===void 0||E.openFile(A).catch(y=>e.view.plugin.displayError(y)))}function o(x){var E;x.stopPropagation(),e.view.plugin.tools.openDiff({aFile:(E=e.change.from)!==null&&E!==void 0?E:e.change.path,bFile:e.change.path,aRef:"HEAD",bRef:"",event:x})}function l(x){x.stopPropagation(),e.manager.unstage(e.change.path,!1).catch(E=>e.view.plugin.displayError(E)).finally(()=>{e.view.app.workspace.trigger("obsidian-git:refresh")})}var c=y7();c.__mouseover=s,c.__click=i;var u=j(c),f=j(u),d=j(f,!0);G(f);var h=ee(f,2),m=j(h),g=j(m);{var v=x=>{var E=w7();E.__click=a,it(E,A=>r[0]=A,()=>r==null?void 0:r[0]),ae(x,E)};Ae(g,x=>{gl(e.change.vaultPath,e.view.app)&&x(v)})}var w=ee(g,2);w.__click=l,it(w,x=>r[1]=x,()=>r==null?void 0:r[1]),G(m);var b=ee(m,2),k=j(b,!0);G(b),G(h),G(u),G(c),Ne(x=>{_e(u,"data-path",e.change.vaultPath),_e(u,"data-tooltip-position",R(n)),_e(u,"aria-label",e.change.vaultPath),He(d,x),_e(b,"data-type",e.change.index),He(k,e.change.index)},[()=>vi(e.change.vaultPath)]),on("auxclick",c,x=>{x.stopPropagation(),x.button==2?gi(e.view.app,x,e.change.vaultPath,e.view.leaf,"git-source-control"):i(x)}),ae(t,c),ot()}Et(["mouseover","click"]);p();p();var b7=fe("
"),_7=fe("
");function mo(t,e){at(e,!0);var r=_7(),n=j(r);{var i=s=>{var a=b7(),o=j(a),l=j(o),c=j(l,!0);G(l),G(o),G(a),Ne(()=>{_e(o,"aria-label","And "+(e.files.length-500)+" more files"),He(c,"And "+(e.files.length-500)+" more files")}),ae(s,a)};Ae(n,s=>{e.files.length>500&&s(i)})}G(r),ae(t,r),ot()}var S7=fe("
"),E7=fe("
"),k7=fe("
",1),A7=fe("
"),C7=fe("
"),T7=fe("
");function go(t,e){at(e,!0);let r=Pn(e,"topLevel",3,!1),n=Pn(e,"closed",15);ho(()=>{var h,m;for(let g of e.hierarchy.children)((m=(h=g.children)===null||h===void 0?void 0:h.length)!==null&&m!==void 0?m:0)>100&&n(n()[g.title]=!0,!0)});let i=St(()=>e.view.leaf.getRoot().side=="left"?"right":"left");function s(h,m){h.stopPropagation(),e.plugin.gitManager.stageAll({dir:m}).catch(g=>e.plugin.displayError(g)).finally(()=>{e.view.app.workspace.trigger("obsidian-git:refresh")})}function a(h,m){h.stopPropagation(),e.plugin.gitManager.unstageAll({dir:m}).catch(g=>e.plugin.displayError(g)).finally(()=>{e.view.app.workspace.trigger("obsidian-git:refresh")})}function o(h,m){h.stopPropagation(),e.plugin.discardAll(m.vaultPath)}function l(h,m){h.stopPropagation(),n(n()[m.path]=!n()[m.path],!0)}var c=T7();let u;var f=j(c);un(f,17,()=>Ru(e.hierarchy.children,500),cn,(h,m)=>{var g=ds(),v=qr(g);{var w=k=>{var x=S7(),E=j(x);{var A=S=>{Tf(S,{get change(){return R(m).data},get manager(){return e.plugin.gitManager},get view(){return e.view}})},y=S=>{var _=ds(),C=qr(_);{var P=B=>{Af(B,{get change(){return R(m).data},get manager(){return e.plugin.gitManager},get view(){return e.view}})},N=B=>{var H=ds(),ce=qr(H);{var Pe=ve=>{Cf(ve,{get change(){return R(m).data},get view(){return e.view}})};Ae(ce,ve=>{e.fileType==2&&ve(Pe)},!0)}ae(B,H)};Ae(C,B=>{e.fileType==1?B(P):B(N,!1)},!0)}ae(S,_)};Ae(E,S=>{e.fileType==0?S(A):S(y,!1)})}G(x),ae(k,x)},b=k=>{var x=C7();let E;var A=j(x);A.__click=ie=>l(ie,R(m));var y=ee(j(A),2);let S;var _=ee(y,2),C=j(_,!0);G(_);var P=ee(_,2),N=j(P),B=j(N);{var H=ie=>{var xe=E7();xe.__click=we=>a(we,R(m).path),ae(ie,xe)},ce=ie=>{var xe=k7(),we=qr(xe);we.__click=X=>o(X,R(m));var W=ee(we,2);W.__click=X=>s(X,R(m).path),ae(ie,xe)};Ae(B,ie=>{e.fileType==0?ie(H):ie(ce,!1)})}Xa(2),G(N),G(P),G(A);var Pe=ee(A,2);{var ve=ie=>{var xe=A7(),we=j(xe);go(we,{get hierarchy(){return R(m)},get plugin(){return e.plugin},get view(){return e.view},get fileType(){return e.fileType},get closed(){return n()},set closed(W){n(W)}}),G(xe),ei(3,xe,()=>Ni,()=>({duration:150})),ae(ie,xe)};Ae(Pe,ie=>{n()[R(m).path]||ie(ve)})}G(x),Ne(()=>{E=ft(x,1,"tree-item nav-folder",null,E,{"is-collapsed":n()[R(m).path]}),_e(A,"data-tooltip-position",R(i)),_e(A,"aria-label",R(m).vaultPath),S=ft(y,1,"tree-item-icon nav-folder-collapse-indicator collapse-icon",null,S,{"is-collapsed":n()[R(m).path]}),He(C,R(m).title)}),on("auxclick",x,ie=>gi(e.view.app,ie,R(m).vaultPath,e.view.leaf,"git-source-control")),ae(k,x)};Ae(v,k=>{R(m).data?k(w):k(b,!1)})}ae(h,g)});var d=ee(f,2);mo(d,{get files(){return e.hierarchy.children}}),G(c),Ne(()=>u=ft(c,1,"",null,u,{topLevel:r()})),ae(t,c),ot()}Et(["click"]);var P7=fe("
"),R7=fe(" ",1),$7=fe("
"),I7=fe(" ",1),F7=fe("
"),O7=fe(" ",1),M7=fe("
"),D7=fe("
Recently Pulled Files
"),L7=fe("
Staged Changes
Changes
"),N7=fe("
"),B7={hash:"svelte-5wq9p",code:`.commit-msg-input.svelte-5wq9p {width:100%;overflow:hidden;resize:none;padding:7px 5px;background-color:var(--background-modifier-form-field);}.git-commit-msg.svelte-5wq9p {position:relative;padding:0;width:calc(100% - var(--size-4-8));margin:4px auto;}main.svelte-5wq9p .git-tools:where(.svelte-5wq9p) .files-count:where(.svelte-5wq9p) {padding-left:var(--size-2-1);width:11px;display:flex;align-items:center;justify-content:center;}.nav-folder-title.svelte-5wq9p {align-items:center;}.git-commit-msg-clear-button.svelte-5wq9p {position:absolute;background:transparent;border-radius:50%;color:var(--search-clear-button-color);cursor:var(--cursor);top:-4px;right:2px;bottom:0px;line-height:0;height:var(--input-height);width:28px;margin:auto;padding:0 0;text-align:center;display:flex;justify-content:center;align-items:center;transition:color 0.15s ease-in-out;}.git-commit-msg-clear-button.svelte-5wq9p:after {content:"";height:var(--search-clear-button-size);width:var(--search-clear-button-size);display:block;background-color:currentColor;mask-image:url("data:image/svg+xml,");mask-repeat:no-repeat;-webkit-mask-image:url("data:image/svg+xml,");-webkit-mask-repeat:no-repeat;}`};function $b(t,e){at(e,!0),ti(t,B7);let r=Pn(e,"plugin",7),n=Pn(e,"view",7),i=Me(!1),s=Me(void 0),a=Me(Ye([])),o=St(()=>r().settings.commitMessage),l=Ye([]),c=Me(void 0),u=Me(void 0),f=Me(void 0),d=Me(!0),h=Me(!0),m=Me(!0),g=Me(0),v=Me(Ye({})),w=Me(Ye({})),b=Me(Ye({})),k=St(()=>r().settings.treeStructure);ho(()=>{n().registerEvent(n().app.workspace.on("obsidian-git:loading-status",()=>se(i,!0))),n().registerEvent(n().app.workspace.on("obsidian-git:status-changed",()=>void A().catch(console.error))),n().plugin.cachedStatus==null?n().plugin.refresh().catch(console.error):A().catch(console.error),n().scope=new vo.Scope(r().app.scope),n().scope.register(["Ctrl"],"Enter",O=>E())}),sr(()=>{l.forEach(O=>(0,vo.setIcon)(O,O.getAttr("data-icon")))}),sr(()=>{l.forEach(O=>{var oe,Ce;!O||O.id!="push"||(vo.Platform.isMobile?(O.removeClass("button-border"),R(g)>0&&O.addClass("button-border")):((oe=O.firstElementChild)===null||oe===void 0||oe.removeAttribute("color"),R(g)>0&&((Ce=O.firstElementChild)===null||Ce===void 0||Ce.setAttr("color","var(--text-accent)"))))})});function x(){if(se(i,!0),R(s)){let O=R(s).staged.length>0;r().promiseQueue.addTask(()=>r().commit({fromAuto:!1,commitMessage:R(o),onlyStaged:O}).then(()=>se(o,r().settings.commitMessage)).finally(y))}}function E(){if(se(i,!0),R(s)){let O=R(s).staged.length>0;r().promiseQueue.addTask(()=>r().commitAndSync({fromAutoBackup:!1,commitMessage:R(o),onlyStaged:O}).then(()=>{se(o,r().settings.commitMessage)}).finally(y))}}function A(){return po(this,void 0,void 0,function*(){if(!r().gitReady){se(s,void 0);return}if(se(g,yield r().gitManager.getUnpushedCommits(),!0),se(s,r().cachedStatus,!0),se(i,!1),r().lastPulledFiles&&r().lastPulledFiles!=R(a)&&(se(a,r().lastPulledFiles,!0),se(f,{title:"",path:"",vaultPath:"",children:r().gitManager.getTreeStructure(R(a))},!0)),R(s)){let O=(oe,Ce)=>oe.vaultPath.split("/").last().localeCompare(vi(Ce.vaultPath));R(s).changed.sort(O),R(s).staged.sort(O),se(c,{title:"",path:"",vaultPath:"",children:r().gitManager.getTreeStructure(R(s).changed)},!0),se(u,{title:"",path:"",vaultPath:"",children:r().gitManager.getTreeStructure(R(s).staged)},!0)}else se(c,void 0),se(u,void 0)})}function y(){n().app.workspace.trigger("obsidian-git:refresh")}function S(O){O.stopPropagation(),se(i,!0),r().promiseQueue.addTask(()=>r().gitManager.stageAll({status:R(s)}).finally(y))}function _(O){O.stopPropagation(),se(i,!0),r().promiseQueue.addTask(()=>r().gitManager.unstageAll({status:R(s)}).finally(y))}function C(){se(i,!0),r().promiseQueue.addTask(()=>r().push().finally(y))}function P(){se(i,!0),r().promiseQueue.addTask(()=>r().pullChangesFromRemote().finally(y))}function N(O){O.stopPropagation(),r().discardAll()}let B=St(()=>(R(o).match(/\n/g)||[]).length+1||1);var H=N7(),ce=j(H),Pe=j(ce),ve=j(Pe);ve.__click=E,it(ve,O=>l[0]=O,()=>l==null?void 0:l[0]);var ie=ee(ve,2);ie.__click=x,it(ie,O=>l[1]=O,()=>l==null?void 0:l[1]);var xe=ee(ie,2);xe.__click=S,it(xe,O=>l[2]=O,()=>l==null?void 0:l[2]);var we=ee(xe,2);we.__click=_,it(we,O=>l[3]=O,()=>l==null?void 0:l[3]);var W=ee(we,2);W.__click=C,it(W,O=>l[4]=O,()=>l==null?void 0:l[4]);var X=ee(W,2);X.__click=P,it(X,O=>l[5]=O,()=>l==null?void 0:l[5]);var q=ee(X,2);q.__click=()=>{se(k,!R(k)),(0,vo.setIcon)(l[6],R(k)?"list":"folder"),r().settings.treeStructure=R(k),r().saveSettings()},it(q,O=>l[6]=O,()=>l==null?void 0:l[6]);var De=ee(q,2);let ar;De.__click=y,it(De,O=>l[7]=O,()=>l==null?void 0:l[7]),G(Pe),G(ce);var Ft=ee(ce,2),Ie=j(Ft);sb(Ie);var kt=ee(Ie,2);{var At=O=>{var oe=P7();oe.__click=()=>se(o,""),_e(oe,"aria-label","Clear"),ae(O,oe)};Ae(kt,O=>{R(o)&&O(At)})}G(Ft);var je=ee(Ft,2),Z=j(je);{var M=O=>{var oe=L7(),Ce=j(oe);let Ot;var wr=j(Ce);wr.__click=()=>se(h,!R(h));var bo=j(wr);let Db;var Lb=ee(bo,4),$m=j(Lb),Nb=j($m);Nb.__click=_,it(Nb,or=>l[8]=or,()=>l==null?void 0:l[8]),G($m);var Bb=ee($m,2),OD=j(Bb,!0);G(Bb),G(Lb),G(wr);var MD=ee(wr,2);{var DD=or=>{var yr=$7(),_o=j(yr);{var vs=lr=>{go(lr,{get hierarchy(){return R(u)},get plugin(){return r()},get view(){return n()},get fileType(){return 0},topLevel:!0,get closed(){return R(v)},set closed($n){se(v,$n,!0)}})},xo=lr=>{var $n=R7(),aa=qr($n);un(aa,17,()=>Ru(R(s).staged,500),cn,(ws,yc)=>{Tf(ws,{get change(){return R(yc)},get view(){return n()},get manager(){return r().gitManager}})});var oa=ee(aa,2);mo(oa,{get files(){return R(s).staged}}),ae(lr,$n)};Ae(_o,lr=>{R(k)?lr(vs):lr(xo,!1)})}G(yr),ei(3,yr,()=>Ni,()=>({duration:150})),ae(or,yr)};Ae(MD,or=>{R(h)&&or(DD)})}G(Ce);var Rf=ee(Ce,2);let Hb;var $f=j(Rf);$f.__click=()=>se(d,!R(d));var Ub=j($f);let Gb;var jb=ee(Ub,4),Im=j(jb),qb=j(Im);qb.__click=N;var Wb=ee(qb,2);Wb.__click=S,it(Wb,or=>l[9]=or,()=>l==null?void 0:l[9]),G(Im);var zb=ee(Im,2),LD=j(zb,!0);G(zb),G(jb),G($f);var ND=ee($f,2);{var BD=or=>{var yr=F7(),_o=j(yr);{var vs=lr=>{go(lr,{get hierarchy(){return R(c)},get plugin(){return r()},get view(){return n()},get fileType(){return 1},topLevel:!0,get closed(){return R(w)},set closed($n){se(w,$n,!0)}})},xo=lr=>{var $n=I7(),aa=qr($n);un(aa,17,()=>Ru(R(s).changed,500),cn,(ws,yc)=>{Af(ws,{get change(){return R(yc)},get view(){return n()},get manager(){return r().gitManager}})});var oa=ee(aa,2);mo(oa,{get files(){return R(s).changed}}),ae(lr,$n)};Ae(_o,lr=>{R(k)?lr(vs):lr(xo,!1)})}G(yr),ei(3,yr,()=>Ni,()=>({duration:150})),ae(or,yr)};Ae(ND,or=>{R(d)&&or(BD)})}G(Rf);var HD=ee(Rf,2);{var UD=or=>{var yr=D7();let _o;var vs=j(yr);vs.__click=()=>se(m,!R(m));var xo=ee(j(vs),4),lr=j(xo,!0);G(xo),G(vs);var $n=ee(vs,2);{var aa=oa=>{var ws=M7(),yc=j(ws);{var GD=So=>{go(So,{get hierarchy(){return R(f)},get plugin(){return r()},get view(){return n()},get fileType(){return 2},topLevel:!0,get closed(){return R(b)},set closed(If){se(b,If,!0)}})},jD=So=>{var If=O7(),Vb=qr(If);un(Vb,17,()=>R(a),cn,(WD,zD)=>{Cf(WD,{get change(){return R(zD)},get view(){return n()}})});var qD=ee(Vb,2);mo(qD,{get files(){return R(a)}}),ae(So,If)};Ae(yc,So=>{R(k)?So(GD):So(jD,!1)})}G(ws),ei(3,ws,()=>Ni,()=>({duration:150})),ae(oa,ws)};Ae($n,oa=>{R(m)&&oa(aa)})}G(yr),Ne(()=>{_o=ft(yr,1,"pulled nav-folder",null,_o,{"is-collapsed":!R(m)}),He(lr,R(a).length)}),ae(or,yr)};Ae(HD,or=>{R(a).length>0&&R(f)&&or(UD)})}G(oe),Ne(()=>{Ot=ft(Ce,1,"staged tree-item nav-folder",null,Ot,{"is-collapsed":!R(h)}),Db=ft(bo,1,"tree-item-icon nav-folder-collapse-indicator collapse-icon",null,Db,{"is-collapsed":!R(h)}),He(OD,R(s).staged.length),Hb=ft(Rf,1,"changes tree-item nav-folder",null,Hb,{"is-collapsed":!R(d)}),Gb=ft(Ub,1,"tree-item-icon nav-folder-collapse-indicator collapse-icon",null,Gb,{"is-collapsed":!R(d)}),He(LD,R(s).changed.length)}),ae(O,oe)};Ae(Z,O=>{R(s)&&R(u)&&R(c)&&O(M)})}G(je),G(H),Ne(()=>{_e(H,"data-type",jt.type),_e(q,"data-icon",R(k)?"list":"folder"),ar=ft(De,1,"clickable-icon nav-action-button",null,ar,{loading:R(i)}),_e(Ie,"rows",R(B))}),_b(Ie,()=>R(o),O=>se(o,O)),ae(t,H),ot()}Et(["click"]);var Pf=class extends kD.ItemView{constructor(e,r){super(e),this.plugin=r,this.hoverPopover=null}getViewType(){return jt.type}getDisplayText(){return jt.name}getIcon(){return jt.icon}onClose(){return this._view&&hs(this._view),super.onClose()}reload(){this._view&&hs(this._view),this._view=ia($b,{target:this.contentEl,props:{plugin:this.plugin,view:this}})}onOpen(){return this.reload(),super.onOpen()}};p();var ym=class{constructor(e,r){this.statusBarEl=e;this.plugin=r;this.statusBarEl.addClass("mod-clickable"),this.statusBarEl.onClickEvent(n=>{this.plugin.switchBranch().catch(i=>r.displayError(i))})}async display(){if(this.plugin.gitReady){let e=await this.plugin.gitManager.branchInfo();e.current!=null?this.statusBarEl.setText(e.current):this.statusBarEl.empty()}else this.statusBarEl.empty()}remove(){this.statusBarEl.remove()}};p();var AD=require("obsidian");var bm=class{constructor(e){this.plugin=e}get editor(){var n;let e=(n=this.plugin.app.workspace.activeEditor)==null?void 0:n.editor,r=e==null?void 0:e.cm;if(!(!e||!Gn.hasHunksData(r.state)))return{editor:r,obEditor:e}}get gitManager(){return this.plugin.gitManager}resetHunk(e){if(!this.editor)return;let{editor:r,obEditor:n}=this.editor,i=Gn.getHunk(r.state,!1,e);if(i){let s,a;i.type==="delete"?(s=i.added.start+1,a=i.added.start+1):(s=i.added.start-0,a=i.added.start-1+i.added.count);let o=r.state.doc.line(s).from,l=i.type==="delete"?r.state.doc.line(a).from:r.state.doc.line(a).to+1,c=i.removed.lines.join(` `);i.removed.lines.length>0&&!i.removed.no_nl_at_eof&&(c+=` `),n.replaceRange(c,n.offsetToPos(o),n.offsetToPos(l)),n.setSelection(n.offsetToPos(o))}}async stageHunk(e){if(!(await this.plugin.isAllInitialized())||!this.editor)return;let{editor:r}=this.editor,n=Gn.getHunk(r.state,!1,e),i=!1;if(n||(n=Gn.getHunk(r.state,!0,e),i=!0),!n)return;let s=r.state.field(AD.editorInfoField).file.path,a=Nt.createPatch(s,[n],"100644",i).join(` `)+` `;await this.gitManager.applyPatch(a),this.plugin.app.workspace.trigger("obsidian-git:refresh")}goToHunk(e){if(!this.editor)return;let{editor:r,obEditor:n}=this.editor,i=Gn.getHunks(r.state,!1),s=n.getCursor().line+1,a=Nt.findNearestHunk(s,i,e,!0);if(a==null)return;let o=i[a];if(o){let l=o.added.start-1;n.setCursor(l,0),n.scrollIntoView({from:{line:l,ch:0},to:{line:l+1,ch:0}},!0)}}};p();p();var wo=require("obsidian");var _m=class{constructor(e){this.plg=e;this.codeMirrorExtensions=[];this.handleWorkspaceLeaf=e=>{if(!this.lineAuthorInfoProvider){console.warn("Git:未定义 lineAuthorInfoProvider。异常情况。");return}let r=e==null?void 0:e.view;!(r instanceof wo.MarkdownView)||r.file==null||(r==null?void 0:r.allowNoFile)===!0||this.lineAuthorInfoProvider.trackChanged(r.file).catch(console.error)}}onLoadPlugin(){this.plg.registerEditorExtension(this.codeMirrorExtensions),cF(()=>this.plg.settings.lineAuthor,e=>{this.plg.settings.lineAuthor=e,this.plg.saveSettings()})}conditionallyActivateBySettings(){this.plg.settings.lineAuthor.show&&this.activateFeature()}activateFeature(){try{if(!this.isAvailableOnCurrentPlatform().available)return;yF(this.plg.settings.lineAuthor),this.lineAuthorInfoProvider=new ap(this.plg),this.createEventHandlers(),this.activateCodeMirrorExtensions(),console.log(this.plg.manifest.name+": 启用行作者功能。")}catch(e){console.warn("Git:加载行作者功能时出错。",e),this.deactivateFeature()}}deactivateFeature(){var e;this.destroyEventHandlers(),this.deactivateCodeMirrorExtensions(),(e=this.lineAuthorInfoProvider)==null||e.destroy(),this.lineAuthorInfoProvider=void 0,console.log(this.plg.manifest.name+": 禁用行作者功能。")}isAvailableOnCurrentPlatform(){return{available:this.plg.useSimpleGit&&wo.Platform.isDesktopApp,gitManager:this.plg.gitManager instanceof Se?this.plg.gitManager:void 0}}refreshLineAuthorViews(){this.plg.settings.lineAuthor.show&&(this.deactivateFeature(),this.activateFeature())}activateCodeMirrorExtensions(){this.codeMirrorExtensions.push(RF),this.plg.app.workspace.updateOptions(),this.plg.app.workspace.iterateAllLeaves(this.handleWorkspaceLeaf)}deactivateCodeMirrorExtensions(){for(let e of this.codeMirrorExtensions)this.codeMirrorExtensions.remove(e);this.plg.app.workspace.updateOptions()}createEventHandlers(){this.gutterContextMenuEvent=this.createGutterContextMenuHandler(),this.fileOpenEvent=this.createFileOpenEvent(),this.workspaceLeafChangeEvent=this.createWorkspaceLeafChangeEvent(),this.fileModificationEvent=this.createVaultFileModificationHandler(),this.headChangeEvent=this.createHeadChangeEvent(),this.refreshOnCssChangeEvent=this.createCssRefreshHandler(),this.fileRenameEvent=this.createFileRenameEvent(),pF(),this.plg.registerEvent(this.gutterContextMenuEvent),this.plg.registerEvent(this.refreshOnCssChangeEvent),this.plg.registerEvent(this.fileOpenEvent),this.plg.registerEvent(this.workspaceLeafChangeEvent),this.plg.registerEvent(this.fileModificationEvent),this.plg.registerEvent(this.headChangeEvent),this.plg.registerEvent(this.fileRenameEvent)}destroyEventHandlers(){this.plg.app.workspace.offref(this.gutterContextMenuEvent),this.plg.app.workspace.offref(this.refreshOnCssChangeEvent),this.plg.app.workspace.offref(this.fileOpenEvent),this.plg.app.workspace.offref(this.workspaceLeafChangeEvent),this.plg.app.workspace.offref(this.refreshOnCssChangeEvent),this.plg.app.vault.offref(this.fileModificationEvent),this.plg.app.workspace.offref(this.headChangeEvent),this.plg.app.vault.offref(this.fileRenameEvent)}createFileOpenEvent(){return this.plg.app.workspace.on("file-open",e=>{var r;return void((r=this.lineAuthorInfoProvider)==null?void 0:r.trackChanged(e).catch(console.error))})}createWorkspaceLeafChangeEvent(){return this.plg.app.workspace.on("active-leaf-change",this.handleWorkspaceLeaf)}createFileRenameEvent(){return this.plg.app.vault.on("rename",(e,r)=>{var n;return e instanceof wo.TFile&&((n=this.lineAuthorInfoProvider)==null?void 0:n.trackChanged(e))})}createVaultFileModificationHandler(){return this.plg.app.vault.on("modify",e=>{var r;return e instanceof wo.TFile&&((r=this.lineAuthorInfoProvider)==null?void 0:r.trackChanged(e))})}createHeadChangeEvent(){return this.plg.app.workspace.on("obsidian-git:head-change",()=>{this.refreshLineAuthorViews()})}createCssRefreshHandler(){return this.plg.app.workspace.on("css-change",()=>this.refreshLineAuthorViews())}createGutterContextMenuHandler(){return this.plg.app.workspace.on("editor-menu",vF)}};p();var wc=require("obsidian");p();p();var yo=require("@codemirror/state"),Sm=require("@codemirror/view");var xm=class extends Sm.GutterMarker{constructor(r,n){super();this.type=r;this.staged=n}toDOM(r){let n=document.createElement("div");return n.className=`git-gutter-marker git-${this.type} ${this.staged?"staged":"unstaged"}`,this.type=="changedelete"&&n.setText("~"),n}},Ib=yo.StateField.define({create:()=>yo.RangeSet.empty,update:(t,e)=>{let r=e.state.field($r,!1);if(!r)return yo.RangeSet.empty;let n=e.effects.some(s=>s.is(Vu)),i=e.effects.some(s=>s.is(Hl));if(n||i||(e.docChanged||t.size==0)&&r.isDirty==!1){let s=new Set,a=CD(e,r.hunks,!1,s),o=CD(e,r.stagedHunks,!0,s);return t=yo.RangeSet.of([...a,...o],!0),t}else e.docChanged&&(t=t.map(e.changes));return t}});function CD(t,e,r,n){let i=[];for(let a=0;a0?e[a-1]:void 0,l=a{var e;return(e=t.state.field(Ib,!1))!=null?e:yo.RangeSet.empty},initialSpacer:t=>new xm("delete",!1),domEventHandlers:{click:(t,e,r)=>{var i;return((i=Gn.getHunkAtPos(t.state,e.from,!1))!=null?i:Gn.getHunkAtPos(t.state,e.from,!0))&&(Xs(t,e.from),r.preventDefault()),!1}}});var Em=class{constructor(e){this.plugin=e}async trackChanged(e){return this.trackChangedHelper(e).catch(r=>(console.warn("Git: Error in trackChanged."+r),Promise.reject(r)))}async trackChangedHelper(e){if(e){if(e.path===void 0){console.warn("Git: Attempted to track change of undefined filepath. Unforeseen situation.");return}return this.computeSigns(e.path)}}destroy(){}async computeSigns(e){let n=await this.plugin.editorIntegration.lineAuthoringFeature.isAvailableOnCurrentPlatform().gitManager.show("",e).catch(()=>{});this.notifySignComputationResultToSubscribers(e,{compareText:n,compareTextHead:void 0})}notifySignComputationResultToSubscribers(e,r){es.ifFilepathDefinedTransformSubscribers(e,n=>n.forEach(i=>i.notifyGitCompare(r)))}},PD=[GO,jO,TD,Ib,Tp],RD=[$r,yy];p();var Fb=require("obsidian"),km=class{constructor(e,r){this.statusBarEl=e;this.plugin=r;e.addClass("git-changes-status-bar"),r.settings.hunks.statusBar==="colored"&&e.addClass("git-changes-status-bar-colored"),e.setAttr("aria-label","Git diff of the current editor"),this.statusBarEl.setAttribute("data-tooltip-position","top"),r.app.workspace.on("active-leaf-change",n=>{(!n||n.getRoot()==r.app.workspace.rootSplit&&!(n.view instanceof Fb.MarkdownView))&&this.statusBarEl.empty()})}display(e,r){var o;let n=this.plugin.app.workspace.getActiveViewOfType(Fb.MarkdownView);if(!n||((o=n.file)==null?void 0:o.path)!==(r==null?void 0:r.path))return;let i=0,s=0,a=0;for(let l of e)i+=Math.max(0,l.added.count-l.removed.count),s+=Math.min(l.added.count,l.removed.count),a+=Math.max(0,l.removed.count-l.added.count);this.statusBarEl.empty(),i>0&&this.statusBarEl.createSpan({text:`+${i} `,cls:"git-add"}),s>0&&this.statusBarEl.createSpan({text:`~${s} `,cls:"git-change"}),a>0&&this.statusBarEl.createSpan({text:`-${a}`,cls:"git-delete"})}remove(){this.statusBarEl.remove()}};var Am=class{constructor(e){this.plg=e;this.codeMirrorExtensions=[];this.handleWorkspaceLeaf=e=>{if(!this.signsProvider){console.warn("Git:未定义 signsProvider。异常情况。");return}let r=e==null?void 0:e.view;!(r instanceof wc.MarkdownView)||r.file==null||(r==null?void 0:r.allowNoFile)===!0||this.signsProvider.trackChanged(r.file).catch(console.error)}}onLoadPlugin(){this.plg.registerEditorExtension(this.codeMirrorExtensions)}conditionallyActivateBySettings(){(this.plg.settings.hunks.showSigns||this.plg.settings.hunks.statusBar!="disabled"||this.plg.settings.hunks.hunkCommands)&&this.activateFeature()}activateFeature(){try{if(!this.isAvailableOnCurrentPlatform().available)return;if(this.signsProvider=new Em(this.plg),this.createEventHandlers(),this.activateCodeMirrorExtensions(),this.plg.settings.hunks.statusBar!="disabled"){let e=this.plg.addStatusBarItem();this.changeStatusBar=new km(e,this.plg)}}catch(e){console.warn("Git:加载标记功能时出错。",e),this.deactivateFeature()}}deactivateFeature(){var e,r;this.destroyEventHandlers(),this.deactivateCodeMirrorExtensions(),(e=this.signsProvider)==null||e.destroy(),this.signsProvider=void 0,(r=this.changeStatusBar)==null||r.remove(),this.changeStatusBar=void 0}isAvailableOnCurrentPlatform(){return{available:this.plg.useSimpleGit&&wc.Platform.isDesktopApp,gitManager:this.plg.gitManager instanceof Se?this.plg.gitManager:void 0}}refresh(){this.plg.settings.hunks.showSigns&&this.plg.app.workspace.iterateAllLeaves(this.handleWorkspaceLeaf)}activateCodeMirrorExtensions(){this.codeMirrorExtensions.push(RD),this.plg.settings.hunks.showSigns&&this.codeMirrorExtensions.push(...PD),this.plg.app.workspace.updateOptions(),this.plg.app.workspace.iterateAllLeaves(this.handleWorkspaceLeaf)}deactivateCodeMirrorExtensions(){for(let e of this.codeMirrorExtensions)this.codeMirrorExtensions.remove(e);this.plg.app.workspace.updateOptions()}createEventHandlers(){this.workspaceLeafChangeEvent=this.createWorkspaceLeafChangeEvent(),this.fileRenameEvent=this.createFileRenameEvent(),this.pluginRefreshedEvent=this.createPluginRefreshedEvent(),this.intervalRefreshEvent=this.createIntervalRefreshEvent(),this.plg.registerEvent(this.workspaceLeafChangeEvent),this.plg.registerEvent(this.fileRenameEvent),this.plg.registerEvent(this.pluginRefreshedEvent),this.plg.registerInterval(this.intervalRefreshEvent)}destroyEventHandlers(){this.plg.app.workspace.offref(this.workspaceLeafChangeEvent),this.plg.app.vault.offref(this.fileRenameEvent),this.plg.app.workspace.offref(this.pluginRefreshedEvent),this.plg.app.workspace.offref(this.gutterContextMenuEvent),window.clearInterval(this.intervalRefreshEvent)}createWorkspaceLeafChangeEvent(){return this.plg.app.workspace.on("active-leaf-change",this.handleWorkspaceLeaf)}createFileRenameEvent(){return this.plg.app.vault.on("rename",(e,r)=>{var n;return es.ifFilepathDefinedTransformSubscribers(r,i=>i.forEach(s=>{s.changeToNewFilepath(e.path)})),e instanceof wc.TFile&&((n=this.signsProvider)==null?void 0:n.trackChanged(e))})}createPluginRefreshedEvent(){return this.plg.app.workspace.on("obsidian-git:refresh",()=>{this.refresh()})}createIntervalRefreshEvent(){return window.setInterval(()=>{var e,r;(e=this.plg.app.workspace.activeEditor)!=null&&e.file&&((r=this.signsProvider)==null||r.trackChanged(this.plg.app.workspace.activeEditor.file).catch(console.error))},10*1e3)}};p();var $D=require("@codemirror/state"),Cm=require("obsidian");var Ob=class{constructor(e){this.state=e;this.subscribeMe()}notifyLineAuthoring(e,r){if(this.view===void 0){console.warn(`Git: View is not defined for editor cache key. Unforeseen situation. id: ${e}`);return}let n=this.view.state,i=lF(e,r,n);this.view.dispatch(i)}notifyGitCompare(e){if(this.view===void 0){console.warn("Git:编辑器缓存键的 View 未定义。意外情况。id: ");return}if(this.removeIfStale())return;let r=this.view.state,n=r.field($r);if(!n||n.compareText!=e.compareText||n.compareTextHead!=e.compareTextHead){let i=_O(e,r);this.view.dispatch(i)}}updateToNewState(e){return this.state=e,!this.lastSeenPath&&this.filepath&&this.subscribeMe(),this}removeIfStale(){var e;return((e=this.view)==null?void 0:e.state.field(Mb,!1))!=this||this.view.destroyed?(this.unsubscribeMe(this.lastSeenPath),!0):!1}changeToNewFilepath(e){this.unsubscribeMe(this.lastSeenPath),this.subscribeMe(e)}subscribeMe(e){e!=null||(e=this.filepath),e!==void 0&&(es.ifFilepathDefinedTransformSubscribers(e,r=>r.add(this)),this.lastSeenPath=e)}unsubscribeMe(e){es.ifFilepathDefinedTransformSubscribers(e,r=>r.delete(this))}get filepath(){var e,r;return(r=(e=this.state.field(Cm.editorInfoField))==null?void 0:e.file)==null?void 0:r.path}get view(){return this.state.field(Cm.editorEditorField)}},Mb=$D.StateField.define({create:t=>new Ob(t),update:(t,e)=>t.updateToNewState(e.state),compare:(t,e)=>t===e});var Tm=class{constructor(e){this.plg=e;this.lineAuthoringFeature=new _m(this.plg);this.signsFeature=new Am(this.plg)}onUnloadPlugin(){this.lineAuthoringFeature.deactivateFeature(),this.signsFeature.deactivateFeature()}onLoadPlugin(){this.plg.registerEditorExtension(Mb),this.lineAuthoringFeature.onLoadPlugin(),this.signsFeature.onLoadPlugin()}onReady(){this.lineAuthoringFeature.conditionallyActivateBySettings(),this.signsFeature.conditionallyActivateBySettings()}activateLineAuthoring(){this.lineAuthoringFeature.activateFeature()}deactiveLineAuthoring(){this.lineAuthoringFeature.deactivateFeature()}refreshSignsSettings(){let e=this.plg.settings.hunks;e.showSigns||e.statusBar!="disabled"||e.hunkCommands?(this.signsFeature.deactivateFeature(),this.signsFeature.activateFeature()):this.signsFeature.deactivateFeature()}};var Pm=class extends be.Plugin{constructor(){super(...arguments);this.automaticsManager=new Gu(this);this.tools=new ef(this);this.localStorage=new Pp(this);this.state={gitAction:0,offlineMode:!1};this.gitReady=!1;this.promiseQueue=new Gd(this);this.intervalsToClear=[];this.editorIntegration=new Tm(this);this.hunkActions=new bm(this)}setPluginState(r){var n;this.state=Object.assign(this.state,r),(n=this.statusBar)==null||n.display()}async updateCachedStatus(){var r,n;return this.app.workspace.trigger("obsidian-git:loading-status"),this.cachedStatus=await this.gitManager.status(),this.cachedStatus.conflicted.length>0?(this.localStorage.setConflict(!0),await((r=this.branchBar)==null?void 0:r.display())):(this.localStorage.setConflict(!1),await((n=this.branchBar)==null?void 0:n.display())),this.app.workspace.trigger("obsidian-git:status-changed",this.cachedStatus),this.cachedStatus}async refresh(){if(!this.gitReady)return;let r=this.app.workspace.getLeavesOfType(jt.type),n=this.app.workspace.getLeavesOfType(gn.type);(this.settings.changedFilesInStatusBar||r.some(i=>{var s;return!((s=i.isDeferred)!=null&&s)})||n.some(i=>{var s;return!((s=i.isDeferred)!=null&&s)}))&&(await this.updateCachedStatus().catch(i=>this.displayError(i))),this.app.workspace.trigger("obsidian-git:refreshed")}refreshUpdatedHead(){}async onload(){console.log("加载 "+this.manifest.name+" 插件:v"+this.manifest.version),Ln.plugin=this,this.localStorage.migrate(),await this.loadSettings(),await this.migrateSettings(),this.settingsTab=new op(this.app,this),this.addSettingTab(this.settingsTab),this.localStorage.getPluginDisabled()||(this.registerStuff(),this.app.workspace.onLayoutReady(()=>this.init({fromReload:!1}).catch(r=>this.displayError(r))))}onExternalSettingsChange(){this.reloadSettings().catch(r=>this.displayError(r))}async reloadSettings(){let r=JSON.stringify(this.settings);await this.loadSettings();let n=JSON.stringify(this.settings);r!==n&&(this.log("重新加载设置"),this.unloadPlugin(),await this.init({fromReload:!0}),this.app.workspace.getLeavesOfType(jt.type).forEach(i=>{var s;if(!((s=i.isDeferred)!=null&&s))return i.view.reload()}),this.app.workspace.getLeavesOfType(gn.type).forEach(i=>{var s;if(!((s=i.isDeferred)!=null&&s))return i.view.reload()}))}registerStuff(){this.registerEvent(this.app.workspace.on("obsidian-git:refresh",()=>{this.refresh().catch(r=>this.displayError(r))})),this.registerEvent(this.app.workspace.on("obsidian-git:head-change",()=>{this.refreshUpdatedHead()})),this.registerEvent(this.app.workspace.on("file-menu",(r,n,i)=>{this.handleFileMenu(r,n,i,"file-manu")})),this.registerEvent(this.app.workspace.on("obsidian-git:menu",(r,n,i)=>{this.handleFileMenu(r,n,i,"obsidian-git:menu")})),this.registerEvent(this.app.workspace.on("active-leaf-change",r=>{this.onActiveLeafChange(r)})),this.registerEvent(this.app.vault.on("modify",()=>{var r;this.debRefresh(),(r=this.autoCommitDebouncer)==null||r.call(this)})),this.registerEvent(this.app.vault.on("delete",()=>{var r;this.debRefresh(),(r=this.autoCommitDebouncer)==null||r.call(this)})),this.registerEvent(this.app.vault.on("create",()=>{var r;this.debRefresh(),(r=this.autoCommitDebouncer)==null||r.call(this)})),this.registerEvent(this.app.vault.on("rename",()=>{var r;this.debRefresh(),(r=this.autoCommitDebouncer)==null||r.call(this)})),this.registerView(jt.type,r=>new Pf(r,this)),this.registerView(gn.type,r=>new Ef(r,this)),this.registerView(Bs.type,r=>new Wa(r,this)),this.registerView(Ns.type,r=>new za(r,this)),this.addRibbonIcon("git-pull-request","打开Git源代码管理",async()=>{var i;let r=this.app.workspace.getLeavesOfType(jt.type),n;r.length===0?(n=(i=this.app.workspace.getRightLeaf(!1))!=null?i:this.app.workspace.getLeaf(),await n.setViewState({type:jt.type})):n=r.first(),await this.app.workspace.revealLeaf(n)}),this.registerHoverLinkSource(jt.type,{display:"Git View",defaultMod:!0}),this.editorIntegration.onLoadPlugin(),this.setRefreshDebouncer(),qO(this)}setRefreshDebouncer(){var r;(r=this.debRefresh)==null||r.cancel(),this.debRefresh=(0,be.debounce)(()=>{this.settings.refreshSourceControl&&this.refresh().catch(console.error)},this.settings.refreshSourceControlTimer,!0)}async addFileToGitignore(r,n){let i=this.gitManager.getRelativeRepoPath(r,!0),s=eR({isFolder:n,gitRelativePath:i});await this.app.vault.adapter.append(this.gitManager.getRelativeVaultPath(".gitignore"),` `+s),this.app.workspace.trigger("obsidian-git:refresh")}handleFileMenu(r,n,i,s){if(!this.gitReady||!this.settings.showFileMenu||!n)return;let a;if(typeof n=="string"?a=n:a=n.path,i=="file-explorer-context-menu"&&(r.addItem(o=>{o.setTitle("Git: 暂存").setIcon("plus-circle").setSection("action").onClick(l=>{this.promiseQueue.addTask(async()=>{n instanceof be.TFile?await this.stageFile(n):(await this.gitManager.stageAll({dir:this.gitManager.getRelativeRepoPath(a,!0)}),this.app.workspace.trigger("obsidian-git:refresh"))})})}),r.addItem(o=>{o.setTitle("Git: 撤销暂存").setIcon("minus-circle").setSection("action").onClick(l=>{this.promiseQueue.addTask(async()=>{n instanceof be.TFile?await this.unstageFile(n):(await this.gitManager.unstageAll({dir:this.gitManager.getRelativeRepoPath(a,!0)}),this.app.workspace.trigger("obsidian-git:refresh"))})})}),r.addItem(o=>{o.setTitle("Git: 添加到 .gitignore").setIcon("file-x").setSection("action").onClick(l=>{this.addFileToGitignore(a,n instanceof be.TFolder).catch(c=>this.displayError(c))})})),i=="git-source-control"){r.addItem(l=>{l.setTitle("Git: 添加到 .gitignore").setIcon("file-x").setSection("action").onClick(c=>{this.addFileToGitignore(a,n instanceof be.TFolder).catch(u=>this.displayError(u))})});let o=this.app.vault.adapter;s==="obsidian-git:menu"&&o instanceof be.FileSystemAdapter&&(r.addItem(l=>{l.setTitle("在默认应用中打开").setIcon("arrow-up-right").setSection("action").onClick(c=>{this.app.openWithDefaultApp(a)})}),r.addItem(l=>{l.setTitle("Show in system explorer").setIcon("arrow-up-right").setSection("action").onClick(c=>{window.electron.shell.showItemInFolder(FD.join(o.getBasePath(),a))})}))}}async migrateSettings(){this.settings.mergeOnPull!=null&&(this.settings.syncMethod=this.settings.mergeOnPull?"merge":"rebase",this.settings.mergeOnPull=void 0,await this.saveSettings()),this.settings.autoCommitMessage===void 0&&(this.settings.autoCommitMessage=this.settings.commitMessage,await this.saveSettings()),this.settings.gitPath!=null&&(this.localStorage.setGitPath(this.settings.gitPath),this.settings.gitPath=void 0,await this.saveSettings()),this.settings.username!=null&&(this.localStorage.setPassword(this.settings.username),this.settings.username=void 0,await this.saveSettings())}unloadPlugin(){var r,n;this.gitReady=!1,this.editorIntegration.onUnloadPlugin(),this.automaticsManager.unload(),(r=this.branchBar)==null||r.remove(),(n=this.statusBar)==null||n.remove(),this.statusBar=void 0,this.branchBar=void 0,this.gitManager.unload(),this.promiseQueue.clear();for(let i of this.intervalsToClear)window.clearInterval(i);this.intervalsToClear=[],this.debRefresh.cancel()}onunload(){this.unloadPlugin(),console.log("卸载 "+this.manifest.name+" 插件")}async loadSettings(){let r=await this.loadData();r==null&&(r={showedMobileNotice:!0}),this.settings=sC(et,r)}async saveSettings(){var r;(r=this.settingsTab)==null||r.beforeSaveSettings(),await this.saveData(this.settings)}get useSimpleGit(){return be.Platform.isDesktopApp}async init({fromReload:r=!1}){var n;if(this.settings.showStatusBar&&!this.statusBar){let i=this.addStatusBarItem();this.statusBar=new lp(i,this),this.intervalsToClear.push(window.setInterval(()=>{var s;return(s=this.statusBar)==null?void 0:s.display()},1e3))}try{this.useSimpleGit?(this.gitManager=new Se(this),await this.gitManager.setGitInstance()):this.gitManager=new Hn(this);let i=await this.gitManager.checkRequirements(),s=this.localStorage.getPausedAutomatics();switch(i){case"missing-git":this.displayError(`无法运行git命令。尝试运行: '${this.localStorage.getGitPath()||"git"}' .`);break;case"missing-repo":new be.Notice("无法找到有效的 Git 仓库。请通过给定的命令创建一个,或克隆一个现有的仓库。",1e4);break;case"valid":if(this.gitReady=!0,this.setPluginState({gitAction:0}),be.Platform.isDesktop&&this.settings.showBranchStatusBar&&!this.branchBar){let a=this.addStatusBarItem();this.branchBar=new ym(a,this),this.intervalsToClear.push(window.setInterval(()=>{var o;return void((o=this.branchBar)==null?void 0:o.display().catch(console.error))},6e4))}await((n=this.branchBar)==null?void 0:n.display()),this.editorIntegration.onReady(),this.app.workspace.trigger("obsidian-git:refresh"),this.app.workspace.trigger("obsidian-git:head-change"),!r&&this.settings.autoPullOnBoot&&!s&&this.promiseQueue.addTask(()=>this.pullChangesFromRemote()),s||(await this.automaticsManager.init()),s&&new be.Notice("自动例程当前已暂停。");break;default:this.log("发生了意料之外的错误“checkRequirements”结果是 "+i)}}catch(i){this.displayError(i),console.error(i)}}async createNewRepo(){try{await this.gitManager.init(),new be.Notice("初始化新仓库"),await this.init({fromReload:!0})}catch(r){this.displayError(r)}}async cloneNewRepo(){let n=await new Ze(this,{placeholder:"输入远程URL"}).openAndGetResult();if(n){let i="Vault Root",s=await new Ze(this,{options:this.gitManager instanceof Hn?[i]:[],placeholder:"输入克隆目录。目录必须为空或不存在。",allowEmpty:this.gitManager instanceof Hn}).openAndGetResult();if(s==null)return;if(s===i&&(s="."),s=(0,be.normalizePath)(s),s==="/"&&(s="."),s==="."){let f=await new Ze(this,{options:["NO","YES"],placeholder:`Does your remote repo contain a ${this.app.vault.configDir} directory at the root?`,onlySelection:!0}).openAndGetResult();if(f===void 0){new be.Notice("已终止克隆 clone");return}else if(f==="YES"){let d="DELETE ALL YOUR LOCAL CONFIG AND PLUGINS";if((await new Ze(this,{options:["Abort clone",d],placeholder:`To avoid conflicts, the local ${this.app.vault.configDir} directory needs to be deleted.`,onlySelection:!0}).openAndGetResult())===d)await this.app.vault.adapter.rmdir(this.app.vault.configDir,!0);else{new be.Notice("已终止克隆 clone");return}}}let a=await new Ze(this,{placeholder:"指定克隆的深度。留空则为完整克隆。",allowEmpty:!0}).openAndGetResult(),o;if(a===void 0){new be.Notice("已终止克隆 clone");return}if(a!==""&&(o=parseInt(a),isNaN(o))){new be.Notice("无效的深度。中止克隆。");return}new be.Notice(`Cloning new repo into "${s}"`);let l=this.settings.basePath,c=s&&s!==".";c&&(this.settings.basePath=s);try{await this.gitManager.clone(Kw(n),s,o),new be.Notice("克隆了新的仓库。"),new be.Notice("请重启 Obsidian"),c&&(await this.saveSettings())}catch(u){this.displayError(u),this.settings.basePath=l,await this.saveSettings()}}}async isAllInitialized(){return this.gitReady||(await this.init({fromReload:!0})),this.gitReady}async pullChangesFromRemote(){if(!(await this.isAllInitialized()))return;let r=await this.pull();if(r!==!1){if(r||this.displayMessage("Pull: Everything is up-to-date"),this.gitManager instanceof Se){let n=await this.updateCachedStatus();n.conflicted.length>0&&(this.displayError(`You have conflicts in ${n.conflicted.length} ${n.conflicted.length==1?"file":"files"}`),await this.handleConflict(n.conflicted))}this.app.workspace.trigger("obsidian-git:refresh"),this.setPluginState({gitAction:0})}}async commitAndSync({fromAutoBackup:r,requestCustomMessage:n=!1,commitMessage:i,onlyStaged:s=!1}){!(await this.isAllInitialized())||(this.settings.syncMethod=="reset"&&this.settings.pullBeforePush&&(await this.pull()),!(await this.commit({fromAuto:r,requestCustomMessage:n,commitMessage:i,onlyStaged:s})))||(this.settings.syncMethod!="reset"&&this.settings.pullBeforePush&&(await this.pull()),this.settings.disablePush||((await this.remotesAreSet())&&(await this.gitManager.canPush())?await this.push():this.displayMessage("没有提交可以推送")),this.setPluginState({gitAction:0}))}async commit({fromAuto:r,requestCustomMessage:n=!1,onlyStaged:i=!1,commitMessage:s,amend:a=!1}){if(!(await this.isAllInitialized()))return!1;try{let o=this.localStorage.getConflict(),l,c=[],u=[];if(this.gitManager instanceof Se){if(await this.mayDeleteConflictFile(),l=await this.updateCachedStatus(),l.conflicted.length==0&&(o=!1),r&&l.conflicted.length>0)return this.displayError(`Did not commit, because you have conflicts in ${l.conflicted.length} ${l.conflicted.length==1?"file":"files"}. Please resolve them and commit per command.`),await this.handleConflict(l.conflicted),!1;c=l.staged,u=l.changed}else{if(r&&o)return this.displayError("未提交,因为您有冲突。请解决冲突后通过命令提交。"),!1;{o&&(await this.mayDeleteConflictFile());let f=this.gitManager;i?c=await f.getStagedFiles():u=(await f.getUnstagedFiles()).map(({path:h,type:m})=>({vaultPath:this.gitManager.getRelativeVaultPath(h),path:h,type:m}))}}if(await this.tools.hasTooBigFiles(i?c:[...c,...u]))return this.setPluginState({gitAction:0}),!1;if(u.length+c.length!==0||o){let f=s!=null?s:s=r?this.settings.autoCommitMessage:this.settings.commitMessage;if(r&&this.settings.customMessageOnAutoBackup||n){!this.settings.disablePopups&&r&&new be.Notice("自动备份:请输入自定义提交信息。留空以中止");let m=await new cp(this).openAndGetResult();if(m!=null&&m!=""&&m!="...")f=m;else return this.setPluginState({gitAction:0}),!1}else if(this.gitManager instanceof Se&&this.settings.commitMessageScript){let m=this.settings.commitMessageScript,g=this.localStorage.getHostname()||"",v=m.replace("{{hostname}}",g);v=v.replace("{{date}}",(0,be.moment)().format(this.settings.commitDateFormat));let w="sh";if(be.Platform.isWin){w=process.env.PROGRAMFILES+"\\Git\\bin\\sh.exe";let k=!1;try{await Rm.access(w,Rm.constants.X_OK),k=!0}catch(x){k=!1}if(!k)return this.displayError(`Cannot find sh.exe at ${w}. Please make sure Git is properly installed.`),!1}let b=await $u(w,["-c",v],{cwd:this.gitManager.absoluteRepoPath});b.code!=0?this.displayError(b.stderr):b.stdout.trim().length==0?this.displayMessage("Stdout from commit message script is empty. Using default message."):f=b.stdout}if(!f||f.trim()==="")return new be.Notice("提交已中止:未提供提交说明"),this.setPluginState({gitAction:0}),!1;let d;i?d=await this.gitManager.commit({message:f,amend:a}):d=await this.gitManager.commitAll({message:f,status:l,unstagedFiles:u,amend:a}),this.gitManager instanceof Se&&(await this.updateCachedStatus());let h=!1;d===void 0&&(h=!0,d=u.length+c.length||0),this.displayMessage(`Committed${h?" approx.":""} ${d} ${d==1?"file":"files"}`)}else this.displayMessage("没有更改可以提交");return this.app.workspace.trigger("obsidian-git:refresh"),!0}catch(o){return this.displayError(o),!1}}async push(){if(!(await this.isAllInitialized())||!(await this.remotesAreSet()))return!1;let r=this.localStorage.getConflict();try{this.gitManager instanceof Se&&(await this.mayDeleteConflictFile());let n;if(this.gitManager instanceof Se&&(n=await this.updateCachedStatus()).conflicted.length>0)return this.displayError(`Cannot push. You have conflicts in ${n.conflicted.length} ${n.conflicted.length==1?"file":"files"}`),await this.handleConflict(n.conflicted),!1;if(this.gitManager instanceof Hn&&r)return this.displayError("无法推送。您有冲突"),!1;this.log("推送中....");let i=await this.gitManager.push();return i!==void 0&&(i===null?this.displayMessage("Pushed to remote"):i>0?this.displayMessage(`已推送 ${i} ${i==1?"个文件":"个文件"} 到远程`):this.displayMessage("没有提交可以推送")),this.setPluginState({offlineMode:!1}),this.app.workspace.trigger("obsidian-git:refresh"),!0}catch(n){return n instanceof ul?this.handleNoNetworkError(n):this.displayError(n),!1}}async pull(){if(!(await this.remotesAreSet()))return!1;try{this.log("拉取中....");let r=(await this.gitManager.pull())||[];return this.setPluginState({offlineMode:!1}),r.length>0&&(this.displayMessage(`Pulled ${r.length} ${r.length==1?"file":"files"} from remote`),this.lastPulledFiles=r),r.length}catch(r){return this.displayError(r),!1}}async fetch(){if(await this.remotesAreSet())try{await this.gitManager.fetch(),this.displayMessage("已从远程获取"),this.setPluginState({offlineMode:!1}),this.app.workspace.trigger("obsidian-git:refresh")}catch(r){this.displayError(r)}}async mayDeleteConflictFile(){let r=this.app.vault.getAbstractFileByPath(ol);r&&(this.app.workspace.iterateAllLeaves(n=>{var i;n.view instanceof be.MarkdownView&&((i=n.view.file)==null?void 0:i.path)==r.path&&n.detach()}),await this.app.vault.delete(r))}async stageFile(r){return(await this.isAllInitialized())?(await this.gitManager.stage(r.path,!0),this.app.workspace.trigger("obsidian-git:refresh"),this.setPluginState({gitAction:0}),!0):!1}async unstageFile(r){return(await this.isAllInitialized())?(await this.gitManager.unstage(r.path,!0),this.app.workspace.trigger("obsidian-git:refresh"),this.setPluginState({gitAction:0}),!0):!1}async switchBranch(){var i;if(!(await this.isAllInitialized()))return;let r=await this.gitManager.branchInfo(),n=await new vm(this,r.branches).openAndGetReslt();if(n!=null)return await this.gitManager.checkout(n),this.displayMessage(`已切换到 ${n}`),this.app.workspace.trigger("obsidian-git:refresh"),await((i=this.branchBar)==null?void 0:i.display()),n}async switchRemoteBranch(){var s;if(!(await this.isAllInitialized()))return;let r=(await this.selectRemoteBranch())||"",[n,i]=Qi(r);if(i!=null&&n!=null)return await this.gitManager.checkout(i,n),this.displayMessage(`已切换到 ${r}`),await((s=this.branchBar)==null?void 0:s.display()),r}async createBranch(){var n;if(!(await this.isAllInitialized()))return;let r=await new Ze(this,{placeholder:"创建新分支"}).openAndGetResult();if(r!=null)return await this.gitManager.createBranch(r),this.displayMessage(`Created new branch ${r}`),await((n=this.branchBar)==null?void 0:n.display()),r}async deleteBranch(){var i;if(!(await this.isAllInitialized()))return;let r=await this.gitManager.branchInfo();r.current&&r.branches.remove(r.current);let n=await new Ze(this,{options:r.branches,placeholder:"删除分支",onlySelection:!0}).openAndGetResult();if(n!=null){let s=!1;if(!(await this.gitManager.branchIsMerged(n))){let o=await new Ze(this,{options:["YES","NO"],placeholder:"此分支尚未合并到HEAD中。强制删除?",onlySelection:!0}).openAndGetResult();if(o!=="YES")return;s=o==="YES"}return await this.gitManager.deleteBranch(n,s),this.displayMessage(`Deleted branch ${n}`),await((i=this.branchBar)==null?void 0:i.display()),n}}async remotesAreSet(){return this.settings.updateSubmodules||this.gitManager instanceof Se&&(await this.gitManager.getConfig("push.autoSetupRemote","all"))=="true"||(await this.gitManager.branchInfo()).tracking?!0:(new be.Notice("没有设置上游分支。请选择一个。"),await this.setUpstreamBranch())}async setUpstreamBranch(){let r=await this.selectRemoteBranch();return r==null?(this.displayError("操作已中止。未设置上游分支!",1e4),this.setPluginState({gitAction:0}),!1):(await this.gitManager.updateUpstreamBranch(r),this.displayMessage(`Set upstream branch to ${r}`),this.setPluginState({gitAction:0}),!0)}async discardAll(r){if(!(await this.isAllInitialized()))return!1;let n=await this.gitManager.status({path:r}),i=0,s=0;for(let o of n.changed)o.workingDir=="U"?i++:s++;if(i+s==0)return!1;let a=await new vc({app:this.app,filesToDeleteCount:i,filesToDiscardCount:s,path:r!=null?r:""}).openAndGetResult();switch(a){case!1:return a;case"discard":await this.gitManager.discardAll({dir:r,status:this.cachedStatus});break;case"delete":{await this.gitManager.discardAll({dir:r,status:this.cachedStatus});let o=await this.gitManager.getUntrackedPaths({path:r,status:this.cachedStatus});for(let l of o){let c=this.gitManager.getRelativeVaultPath(l),u=this.app.vault.getAbstractFileByPath(c);u?await this.app.fileManager.trashFile(u):l.endsWith("/")?await this.app.vault.adapter.rmdir(c,!0):await this.app.vault.adapter.remove(c)}break}default:Eh(a)}return this.app.workspace.trigger("obsidian-git:refresh"),a}async handleConflict(r){this.localStorage.setConflict(!0);let n;r!==void 0&&(n=["# Conflicts","Please resolve them and commit them using the commands `Git: Commit all changes` followed by `Git: Push`","(This file will automatically be deleted before commit)","[[#Additional Instructions]] available below file list","",...r.map(i=>{let s=this.app.vault.getAbstractFileByPath(i);return s instanceof be.TFile?`- [[${this.app.metadataCache.fileToLinktext(s,"/")}]]`:`- Not a file: ${i}`}),` # Additional Instructions I strongly recommend to use "Source mode" for viewing the conflicted files. For simple conflicts, in each file listed above replace every occurrence of the following text blocks with the desired text. \`\`\`diff <<<<<<< HEAD File changes in local repository ======= File changes in remote repository >>>>>>> origin/main \`\`\``]),await this.tools.writeAndOpenFile(n==null?void 0:n.join(` `))}async editRemotes(){if(!(await this.isAllInitialized()))return;let r=await this.gitManager.getRemotes(),i=await new Ze(this,{options:r,placeholder:"通过输入名称并选择来选择或创建新的远程"}).openAndGetResult();if(i){let s=await this.gitManager.getRemoteUrl(i),o=await new Ze(this,{initialValue:s,placeholder:"输入远程URL"}).openAndGetResult();if(o)return await this.gitManager.setRemote(i,Kw(o)),i}}async selectRemoteBranch(){let r=await this.gitManager.getRemotes(),n;r.length===0&&(n=await this.editRemotes(),n==null&&(r=await this.gitManager.getRemotes()));let i=new Ze(this,{options:r,placeholder:"通过输入名称并选择来选择或创建新的远程"}),s=n!=null?n:await i.openAndGetResult();if(s){this.displayMessage("正在获取远程分支"),await this.gitManager.fetch(s);let a=await this.gitManager.getRemoteBranches(s),l=await new Ze(this,{options:a,placeholder:"通过输入名称并选择来选择或创建新的远程分支"}).openAndGetResult();return l==null?void 0:l.startsWith(s+"/")?l:`${s}/${l}`}}async removeRemote(){if(!(await this.isAllInitialized()))return;let r=await this.gitManager.getRemotes(),i=await new Ze(this,{options:r,placeholder:"选择一个远程"}).openAndGetResult();i&&(await this.gitManager.removeRemote(i))}onActiveLeafChange(r){var a,o;let n=r==null?void 0:r.view;if(!(n!=null&&n.getState().file)&&!(n instanceof Wa||n instanceof za))return;let i=this.app.workspace.getLeavesOfType(jt.type).first(),s=this.app.workspace.getLeavesOfType(gn.type).first();if((a=i==null?void 0:i.view.containerEl.querySelector("div.tree-item-self.is-active"))==null||a.removeClass("is-active"),(o=s==null?void 0:s.view.containerEl.querySelector("div.tree-item-self.is-active"))==null||o.removeClass("is-active"),(r==null?void 0:r.view)instanceof Wa||(r==null?void 0:r.view)instanceof za){let c=r.view.state.bFile.replace(/["\\]/g,"\\$&");this.lastDiffViewState=r.view.getState();let u;i&&r.view.state.aRef=="HEAD"?u=i.view.containerEl.querySelector(`div.staged div.tree-item-self[data-path="${c}"]`):i&&r.view.state.aRef==""?u=i.view.containerEl.querySelector(`div.changes div.tree-item-self[data-path="${c}"]`):s&&(u=s.view.containerEl.querySelector(`div.tree-item-self[data-path='${c}']`)),u==null||u.addClass("is-active")}else this.lastDiffViewState=void 0}handleNoNetworkError(r){this.state.offlineMode?this.log("遇到网络错误,但已在离线模式"):this.displayError("Git:进入离线模式。未来的网络错误将不再显示。",2e3),this.setPluginState({gitAction:0,offlineMode:!0})}displayMessage(r,n=4*1e3){var i;(i=this.statusBar)==null||i.displayMessage(r.toLowerCase(),n),this.settings.disablePopups||(!this.settings.disablePopupsForNoChanges||!r.startsWith("No changes"))&&new be.Notice(r,5*1e3),this.log(r)}displayError(r,n=10*1e3){var s;if(r instanceof ID.Errors.UserCanceledError){new be.Notice("中止");return}let i;r instanceof Error?i=r:i=new Error(String(r)),this.setPluginState({gitAction:0}),this.settings.showErrorNotices&&new be.Notice(i.message,n),console.error(`${this.manifest.id}:`,i.stack),(s=this.statusBar)==null||s.displayMessage(i.message.toLowerCase(),n)}log(...r){console.log(`${this.manifest.id}:`,...r)}};