PageSourceSearch

https://unglab.com/scripts/synowebapi.js/synowebapi.min.js?v=1675322301

js unglab.com collected 2026-09-29 13:20:28 UTC 40,151 bytes, 1 lines download raw bytes

1var synowebapi=function(){"use strict";function t(t){return{env:t.env,hooks:t.hooks}}function e(t,e){const r=e.callback||function(){},n=e.scope;t.then((t=>{r.call(n,!0,t)}),(t=>{r.call(n,!1,t)}))}function r(r){return{...t(r),request(t){e(r.request(t),t)},auth(t,n,o){n&&(t={...t,callback:n,scope:o}),e(r.auth(t),t)},download(t){r.download(t)},encrypt(t,n,o,i){"function"==typeof n&&(i=o,o=n,n={}),e(r.encrypt(t,n),{callback:o,scope:i})}}}function n(e){const r=t(e);return["request","auth","download","encrypt","requestWebAPI"].forEach((t=>{r[t]=e[t].bind(e)})),r}class o{constructor(t){}get env(){return this.manager.env}get hooks(){return this.manager.hooks}requestWebAPI(t){return this.manager.requestWebAPI(t)}request(t){return this.manager.request(t)}auth(t){return this.manager.auth(t)}download(t){t.onError&&t.onError(new Error("unsupported"))}encrypt(t,e){return this.manager.encrypt(t,e)}create(t){return new this.constructor(t)}}class i{constructor(t){void 0===t&&(t=Object.create(null));const{baseURL:e,synotoken:r,isSecure:n,legacyMode:o=!0,useFetch:i}=t;this.baseURL=e||"",this.synoToken=r||"",this.forceSecure=n,this.legacyMode=o,this.fetchMode=!!i,this.credential=null}getBaseURL(){return this.baseURL}setBaseURL(t){this.baseURL=t}getSynoToken(){return this.synoToken}setSynoToken(t){this.synoToken=t}_isSecure(){return this.getBaseURL().startsWith("https:")}isSecure(){const t=this.forceSecure;return"boolean"==typeof t?t:this._isSecure()}setLegacyMode(t){this.legacyMode=t}isLegacyMode(){return this.legacyMode}setCredential(t){this.credential=t}getCredential(){return this.credential}getRequestHeaders(){const t={};return this.synoToken&&(t["X-SYNO-TOKEN"]=this.synoToken),this.credential&&Object.assign(t,this.credential.GetRequestHeaders()),t}useFetch(){return this.fetchMode}}class s{constructor(){this.handlers=[]}use(t){this.handlers.includes(t)||this.handlers.push(t)}eject(t){this.handlers=this.handlers.filter((e=>e!==t))}[Symbol.iterator](){return this.handlers[Symbol.iterator]()}}class a{constructor(){this.beforeRequest=new s}}function c(t){return"[object Object]"==Object.prototype.toString.call(t)}function u(t){return Array.isArray(t)}function h(t,e){return Object.prototype.hasOwnProperty.call(t,e)}function f(t){const e=[];for(const r in t)h(t,r)&&e.push(encodeURIComponent(r)+"="+encodeURIComponent(t[r]));return e.join("&")}const p=new Set(["age","authorization","content-length","content-type","etag","expires","from","host","if-modified-since","if-unmodified-since","last-modified","location","max-forwards","proxy-authorization","referer","retry-after","user-agent"]);function l(t){const e={};return t.split("\n").forEach((t=>{const r=t.indexOf(":");if(r<0)return;const n=t.substr(0,r).trim(),o=t.substr(r+1).trim();if(n)if(e[n]){if(p.has(n))return;"set-cookie"===n?e["set-cookie"].push(o):e[n]+=", "+o}else"set-cookie"===n?e["set-cookie"]=[o]:e[n]=o})),e}function d(t){return null==t}var m=function(){function t(t,e,r){d(t)||("number"==typeof t?this.fromNumber(t,e,r):d(e)&&"string"!=typeof t?this.fromString(t,256):this.fromString(t,e))}function e(){return new t(null)}function r(t,e,r,n,o,i){for(;--i>=0;){var s=e*this[t++]+r[n]+o;o=Math.floor(s/67108864),r[n++]=67108863&s}return o}function n(t,e,r,n,o,i){for(var s=32767&e,a=e>>15;--i>=0;){var c=32767&this[t],u=this[t++]>>15,h=a*c+u*s;o=((c=s*c+((32767&h)<<15)+r[n]+(1073741823&o))>>>30)+(h>>>15)+a*u+(o>>>30),r[n++]=1073741823&c}return o}function o(t,e,r,n,o,i){for(var s=16383&e,a=e>>14;--i>=0;){var c=16383&this[t],u=this[t++]>>14,h=a*c+u*s;o=((c=s*c+((16383&h)<<14)+r[n]+o)>>28)+(h>>14)+a*u,r[n++]=268435455&c}return o}var i,s=("Microsoft Internet Explorer"===(i="undefined"!=typeof navigator&&navigator.appName)?(t.prototype.am=n,s=30):"Netscape"===i?(t.prototype.am=r,s=26):(t.prototype.am=o,s=28),s);t.prototype.DB=s,t.prototype.DM=(1<<s)-1,t.prototype.DV=1<<s;t.prototype.FV=Math.pow(2,52),t.prototype.F1=52-s,t.prototype.F2=2*s-52;var a,c,u=[];for(a="0".charCodeAt(0),c=0;c<=9;++c)u[a++]=c;for(a="a".charCodeAt(0),c=10;c<36;++c)u[a++]=c;for(a="A".charCodeAt(0),c=10;c<36;++c)u[a++]=c;function h(t){return"0123456789abcdefghijklmnopqrstuvwxyz".charAt(t)}function f(t,e){var r=u[t.charCodeAt(e)];return d(r)?-1:r}function p(t){var r=e();return r.fromInt(t),r}function l(t){var e,r=1;return 0!=(e=t>>>16)&&(t=e,r+=16),0!=(e=t>>8)&&(t=e,r+=8),0!=(e=t>>4)&&(t=e,r+=4),0!=(e=t>>2)&&(t=e,r+=2),0!=(e=t>>1)&&(t=e,r+=1),r}function m(t){this.m=t}function v(t){this.m=t,this.mp=t.invDigit(),this.mpl=32767&this.mp,this.mph=this.mp>
vendor: 4,417 bytes, line 1
1>15,this.um=(1<<t.DB-15)-1,this.mt2=2*t.t}return m.prototype.convert=function(t){return t.s<0||t.compareTo(this.m)>=0?t.mod(this.m):t},m.prototype.revert=function(t){return t},m.prototype.reduce=function(t){t.divRemTo(this.m,null,t)},m.prototype.mulTo=function(t,e,r){t.multiplyTo(e,r),this.reduce(r)},m.prototype.sqrTo=function(t,e){t.squareTo(e),this.reduce(e)},v.prototype.convert=function(r){var n=e();return r.abs().dlShiftTo(this.m.t,n),n.divRemTo(this.m,null,n),r.s<0&&n.compareTo(t.ZERO)>0&&this.m.subTo(n,n),n},v.prototype.revert=function(t){var r=e();return t.copyTo(r),this.reduce(r),r},v.prototype.reduce=function(t){for(;t.t<=this.mt2;)t[t.t++]=0;for(var e=0;e<this.m.t;++e){var r=32767&t[e],n=r*this.mpl+((r*this.mph+(t[e]>>15)*this.mpl&this.um)<<15)&t.DM;for(t[r=e+this.m.t]+=this.m.am(0,n,t,e,0,this.m.t);t[r]>=t.DV;)t[r]-=t.DV,t[++r]++}t.clamp(),t.drShiftTo(this.m.t,t),t.compareTo(this.m)>=0&&t.subTo(this.m,t)},v.prototype.mulTo=function(t,e,r){t.multiplyTo(e,r),this.reduce(r)},v.prototype.sqrTo=function(t,e){t.squareTo(e),this.reduce(e)},t.prototype.copyTo=function(t){for(var e=this.t-1;e>=0;--e)t[e]=this[e];t.t=this.t,t.s=this.s},t.prototype.fromInt=function(t){this.t=1,this.s=t<0?-1:0,t>0?this[0]=t:t<-1?this[0]=t+this.DV:this.t=0},t.prototype.fromString=function(e,r){var n;if(16==r)n=4;else if(8==r)n=3;else if(256==r)n=8;else if(2==r)n=1;else if(32==r)n=5;else{if(4!=r)return void this.fromRadix(e,r);n=2}this.t=0,this.s=0;for(var o=e.length,i=!1,s=0;--o>=0;){var a=8==n?255&e[o]:f(e,o);a<0?"-"==e.charAt(o)&&(i=!0):(i=!1,0===s?this[this.t++]=a:s+n>this.DB?(this[this.t-1]|=(a&(1<<this.DB-s)-1)<<s,this[this.t++]=a>>this.DB-s):this[this.t-1]|=a<<s,(s+=n)>=this.DB&&(s-=this.DB))}8==n&&0!=(128&e[0])&&(this.s=-1,s>0&&(this[this.t-1]|=(1<<this.DB-s)-1<<s)),this.clamp(),i&&t.ZERO.subTo(this,this)},t.prototype.clamp=function(){for(var t=this.s&this.DM;this.t>0&&this[this.t-1]==t;)--this.t},t.prototype.dlShiftTo=function(t,e){var r;for(r=this.t-1;r>=0;--r)e[r+t]=this[r];for(r=t-1;r>=0;--r)e[r]=0;e.t=this.t+t,e.s=this.s},t.prototype.drShiftTo=function(t,e){for(var r=t;r<this.t;++r)e[r-t]=this[r];e.t=Math.max(this.t-t,0),e.s=this.s},t.prototype.lShiftTo=function(t,e){var r,n=t%this.DB,o=this.DB-n,i=(1<<o)-1,s=Math.floor(t/this.DB),a=this.s<<n&this.DM;for(r=this.t-1;r>=0;--r)e[r+s+1]=this[r]>>o|a,a=(this[r]&i)<<n;for(r=s-1;r>=0;--r)e[r]=0;e[s]=a,e.t=this.t+s+1,e.s=this.s,e.clamp()},t.prototype.rShiftTo=function(t,e){e.s=this.s;var r=Math.floor(t/this.DB);if(r>=this.t)e.t=0;else{var n=t%this.DB,o=this.DB-n,i=(1<<n)-1;e[0]=this[r]>>n;for(var s=r+1;s<this.t;++s)e[s-r-1]|=(this[s]&i)<<o,e[s-r]=this[s]>>n;n>0&&(e[this.t-r-1]|=(this.s&i)<<o),e.t=this.t-r,e.clamp()}},t.prototype.subTo=function(t,e){for(var r=0,n=0,o=Math.min(t.t,this.t);r<o;)n+=this[r]-t[r],e[r++]=n&this.DM,n>>=this.DB;if(t.t<this.t){for(n-=t.s;r<this.t;)n+=this[r],e[r++]=n&this.DM,n>>=this.DB;n+=this.s}else{for(n+=this.s;r<t.t;)n-=t[r],e[r++]=n&this.DM,n>>=this.DB;n-=t.s}e.s=n<0?-1:0,n<-1?e[r++]=this.DV+n:n>0&&(e[r++]=n),e.t=r,e.clamp()},t.prototype.multiplyTo=function(e,r){var n=this.abs(),o=e.abs(),i=n.t;for(r.t=i+o.t;--i>=0;)r[i]=0;for(i=0;i<o.t;++i)r[i+n.t]=n.am(0,o[i],r,i,0,n.t);r.s=0,r.clamp(),this.s!=e.s&&t.ZERO.subTo(r,r)},t.prototype.squareTo=function(t){var e,r=this.abs();for(e=t.t=2*r.t;--e>=0;)t[e]=0;for(e=0;e<r.t-1;++e){var n=r.am(e,r[e],t,2*e,0,1);(t[e+r.t]+=r.am(e+1,2*r[e],t,2*e+1,n,r.t-e-1))>=r.DV&&(t[e+r.t]-=r.DV,t[e+r.t+1]=1)}t.t>0&&(t[t.t-1]+=r.am(e,r[e],t,2*e,0,1)),t.s=0,t.clamp()},t.prototype.divRemTo=function(r,n,o){var i=r.abs();if(!(i.t<=0)){var s=this.abs();if(s.t<i.t)return d(n)||n.fromInt(0),void(d(o)||this.copyTo(o));d(o)&&(o=e());var a=e(),c=this.s,u=r.s,h=this.DB-l(i[i.t-1]);h>0?(i.lShiftTo(h,a),s.lShiftTo(h,o)):(i.copyTo(a),s.copyTo(o));var f=a.t,p=a[f-1];if(0!==p){var m=p*(1<<this.F1)+(f>1?a[f-2]>>this.F2:0),v=this.FV/m,y=(1<<this.F1)/m,g=1<<this.F2,b=o.t,w=b-f,_=d(n)?e():n;for(a.dlShiftTo(w,_),o.compareTo(_)>=0&&(o[o.t++]=1,o.subTo(_,o)),t.ONE.dlShiftTo(f,_),_.subTo(a,a);a.t<f;)a[a.t++]=0;for(;--w>=0;){var S=o[--b]==p?this.DM:Math.floor(o[b]*v+(o[b-1]+g)*y);if((o[b]+=a.am(0,S,o,w,0,f))<S)for(a.dlShiftTo(w,_),o.subTo(_,o);o[b]<--S;)o.subTo(_,o)}d(n)||(o.drShiftTo(f,n),c!=u&&t.ZERO.subTo(n,n)),o.t=f,o.clamp(),h>0&&o.rShiftTo(h,o),c<0&&t.ZERO.subTo(o,o)}}},t.prototype.invDigit=function(){if(this.t<1)return 0;var t=this[0];if(0==(1&t))return 0;var e=3&t;
1return(e=(e=(e=(e=e*(2-(15&t)*e)&15)*(2-(255&t)*e)&255)*(2-((65535&t)*e&65535))&65535)*(2-t*e%this.DV)%this.DV)>0?this.DV-e:-e},t.prototype.isEven=function(){return 0===(this.t>0?1&this[0]:this.s)},t.prototype.exp=function(r,n){if(r>4294967295||r<1)return t.ONE;var o=e(),i=e(),s=n.convert(this),a=l(r)-1;for(s.copyTo(o);--a>=0;)if(n.sqrTo(o,i),(r&1<<a)>0)n.mulTo(i,s,o);else{var c=o;o=i,i=c}return n.revert(o)},t.prototype.toString=function(t){if(this.s<0)return"-"+this.negate().toString(t);var e;if(16==t)e=4;else if(8==t)e=3;else if(2==t)e=1;else if(32==t)e=5;else{if(4!=t)return this.toRadix(t);e=2}var r,n=(1<<e)-1,o=!1,i="",s=this.t,a=this.DB-s*this.DB%e;if(s-- >0)for(a<this.DB&&(r=this[s]>>a)>0&&(o=!0,i=h(r));s>=0;)a<e?(r=(this[s]&(1<<a)-1)<<e-a,r|=this[--s]>>(a+=this.DB-e)):(r=this[s]>>(a-=e)&n,a<=0&&(a+=this.DB,--s)),r>0&&(o=!0),o&&(i+=h(r));return o?i:"0"},t.prototype.negate=function(){var r=e();return t.ZERO.subTo(this,r),r},t.prototype.abs=function(){return this.s<0?this.negate():this},t.prototype.compareTo=function(t){var e=this.s-t.s;if(0!==e)return e;var r=this.t;if(0!==(e=r-t.t))return e;for(;--r>=0;)if(0!=(e=this[r]-t[r]))return e;return 0},t.prototype.bitLength=function(){return this.t<=0?0:this.DB*(this.t-1)+l(this[this.t-1]^this.s&this.DM)},t.prototype.mod=function(r){var n=e();return this.abs().divRemTo(r,null,n),this.s<0&&n.compareTo(t.ZERO)>0&&r.subTo(n,n),n},t.prototype.modPowInt=function(t,e){var r;return r=t<256||e.isEven()?new m(e):new v(e),this.exp(t,r)},t.ZERO=p(0),t.ONE=p(1),t}(),v=function(){function t(){this.i=0,this.j=0,this.S=[]}t.prototype.init=function(t){var e,r,n;for(e=0;e<256;++e)this.S[e]=e;for(r=0,e=0;e<256;++e)r=r+this.S[e]+t[e%t.length]&255,n=this.S[e],this.S[e]=this.S[r],this.S[r]=n;this.i=0,this.j=0},t.prototype.next=function(){var t;return this.i=this.i+1&255,this.j=this.j+this.S[this.i]&255,t=this.S[this.i],this.S[this.i]=this.S[this.j],this.S[this.j]=t,this.S[t+this.S[this.i]&255]};var e,r,n;function o(){var t;t=(new Date).getTime(),r[n++]^=255&t,r[n++]^=t>>8&255,r[n++]^=t>>16&255,r[n++]^=t>>24&255,n>=256&&(n-=256)}if(!r){var i;for(r=[],n=0;n<256;)i=Math.floor(65536*Math.random()),r[n++]=i>>>8,r[n++]=255&i;n=0,o()}function s(){if(!e){for(o(),(e=new t).init(r),n=0;n<r.length;++n)r[n]=0;n=0}return e.next()}function a(){}return a.prototype.nextBytes=function(t){var e;for(e=0;e<t.length;++e)t[e]=s()},a.rng_seed_time=o,a}();function y(t){return null==t}var g,b=function(){function t(){this.n=null,this.e=0,this.d=null,this.p=null,this.q=null,this.dmp1=null,this.dmq1=null,this.coeff=null}return t.prototype.doPublic=function(t){return t.modPowInt(this.e,this.n)},t.prototype.setPublic=function(t,e){!y(t)&&!y(e)&&t.length>0&&e.length>0&&(this.n=new m(t,16),this.e=parseInt(e,16))},t.prototype.encrypt=function(t){var e=function(t,e){if(e<t.length+11)return null;for(var r=[],n=t.length-1;n>=0&&e>0;){var o=t.charCodeAt(n--);o<128?r[--e]=o:o>127&&o<2048?(r[--e]=63&o|128,r[--e]=o>>6|192):(r[--e]=63&o|128,r[--e]=o>>6&63|128,r[--e]=o>>12|224)}r[--e]=0;for(var i=new v,s=[];e>2;){for(s[0]=0;0===s[0];)i.nextBytes(s);r[--e]=s[0]}return r[--e]=2,r[--e]=0,new m(r)}(t,this.n.bitLength()+7>>3);if(y(e))return null;var r=this.doPublic(e);if(y(r))return null;var n=r.toString(16);return 0==(1&n.length)?n:"0"+n},t}(),w=("undefined"!=typeof globalThis?globalThis:"undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self&&self,{exports:{}}),_={exports:{}};_.exports=(g=g||function(t,e){var r=Object.create||function(){function t(){}return function(e){var r;return t.prototype=e,r=new t,t.prototype=null,r}}(),n={},o=n.lib={},i=o.Base={extend:function(t){var e=r(this);return t&&e.mixIn(t),e.hasOwnProperty("init")&&this.init!==e.init||(e.init=function(){e.$super.init.apply(this,arguments)}),e.init.prototype=e,e.$super=this,e},create:function(){var t=this.extend();return t.init.apply(t,arguments),t},init:function(){},mixIn:function(t){for(var e in t)t.hasOwnProperty(e)&&(this[e]=t[e]);t.hasOwnProperty("toString")&&(this.toString=t.toString)},clone:function(){return this.init.prototype.extend(this)}},s=o.WordArray=i.extend({init:function(t,r){t=this.words=t||[],this.sigBytes=r!=e?r:4*t.length}
vendor: 4,666 bytes, line 1
1,toString:function(t){return(t||c).stringify(this)},concat:function(t){var e=this.words,r=t.words,n=this.sigBytes,o=t.sigBytes;if(this.clamp(),n%4)for(var i=0;i<o;i++){var s=r[i>>>2]>>>24-i%4*8&255;e[n+i>>>2]|=s<<24-(n+i)%4*8}else for(i=0;i<o;i+=4)e[n+i>>>2]=r[i>>>2];return this.sigBytes+=o,this},clamp:function(){var e=this.words,r=this.sigBytes;e[r>>>2]&=4294967295<<32-r%4*8,e.length=t.ceil(r/4)},clone:function(){var t=i.clone.call(this);return t.words=this.words.slice(0),t},random:function(e){for(var r,n=[],o=function(e){var r=987654321,n=4294967295;return function(){var o=((r=36969*(65535&r)+(r>>16)&n)<<16)+(e=18e3*(65535&e)+(e>>16)&n)&n;return o/=4294967296,(o+=.5)*(t.random()>.5?1:-1)}},i=0;i<e;i+=4){var a=o(4294967296*(r||t.random()));r=987654071*a(),n.push(4294967296*a()|0)}return new s.init(n,e)}}),a=n.enc={},c=a.Hex={stringify:function(t){for(var e=t.words,r=t.sigBytes,n=[],o=0;o<r;o++){var i=e[o>>>2]>>>24-o%4*8&255;n.push((i>>>4).toString(16)),n.push((15&i).toString(16))}return n.join("")},parse:function(t){for(var e=t.length,r=[],n=0;n<e;n+=2)r[n>>>3]|=parseInt(t.substr(n,2),16)<<24-n%8*4;return new s.init(r,e/2)}},u=a.Latin1={stringify:function(t){for(var e=t.words,r=t.sigBytes,n=[],o=0;o<r;o++){var i=e[o>>>2]>>>24-o%4*8&255;n.push(String.fromCharCode(i))}return n.join("")},parse:function(t){for(var e=t.length,r=[],n=0;n<e;n++)r[n>>>2]|=(255&t.charCodeAt(n))<<24-n%4*8;return new s.init(r,e)}},h=a.Utf8={stringify:function(t){try{return decodeURIComponent(escape(u.stringify(t)))}catch(t){throw new Error("Malformed UTF-8 data")}},parse:function(t){return u.parse(unescape(encodeURIComponent(t)))}},f=o.BufferedBlockAlgorithm=i.extend({reset:function(){this._data=new s.init,this._nDataBytes=0},_append:function(t){"string"==typeof t&&(t=h.parse(t)),this._data.concat(t),this._nDataBytes+=t.sigBytes},_process:function(e){var r=this._data,n=r.words,o=r.sigBytes,i=this.blockSize,a=o/(4*i),c=(a=e?t.ceil(a):t.max((0|a)-this._minBufferSize,0))*i,u=t.min(4*c,o);if(c){for(var h=0;h<c;h+=i)this._doProcessBlock(n,h);var f=n.splice(0,c);r.sigBytes-=u}return new s.init(f,u)},clone:function(){var t=i.clone.call(this);return t._data=this._data.clone(),t},_minBufferSize:0});o.Hasher=f.extend({cfg:i.extend(),init:function(t){this.cfg=this.cfg.extend(t),this.reset()},reset:function(){f.reset.call(this),this._doReset()},update:function(t){return this._append(t),this._process(),this},finalize:function(t){return t&&this._append(t),this._doFinalize()},blockSize:16,_createHelper:function(t){return function(e,r){return new t.init(r).finalize(e)}},_createHmacHelper:function(t){return function(e,r){return new p.HMAC.init(t,r).finalize(e)}}});var p=n.algo={};return n}(Math),g);var S={exports:{}};!function(t,e){t.exports=function(t){return function(){var e=t,r=e.lib.WordArray;function n(t,e,n){for(var o=[],i=0,s=0;s<e;s++)if(s%4){var a=n[t.charCodeAt(s-1)]<<s%4*2,c=n[t.charCodeAt(s)]>>>6-s%4*2;o[i>>>2]|=(a|c)<<24-i%4*8,i++}return r.create(o,i)}e.enc.Base64={stringify:function(t){var e=t.words,r=t.sigBytes,n=this._map;t.clamp();for(var o=[],i=0;i<r;i+=3)for(var s=(e[i>>>2]>>>24-i%4*8&255)<<16|(e[i+1>>>2]>>>24-(i+1)%4*8&255)<<8|e[i+2>>>2]>>>24-(i+2)%4*8&255,a=0;a<4&&i+.75*a<r;a++)o.push(n.charAt(s>>>6*(3-a)&63));var c=n.charAt(64);if(c)for(;o.length%4;)o.push(c);return o.join("")},parse:function(t){var e=t.length,r=this._map,o=this._reverseMap;if(!o){o=this._reverseMap=[];for(var i=0;i<r.length;i++)o[r.charCodeAt(i)]=i}var s=r.charAt(64);if(s){var a=t.indexOf(s);-1!==a&&(e=a)}return n(t,e,o)},_map:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/="}}(),t.enc.Base64}(_.exports)}(S);var T={exports:{}};!function(t,e){t.exports=function(t){return function(e){var r=t,n=r.lib,o=n.WordArray,i=n.Hasher,s=r.algo,a=[];!function(){for(var t=0;t<64;t++)a[t]=4294967296*e.abs(e.sin(t+1))|0}();var c=s.MD5=i.extend({_doReset:function(){this._hash=new o.init([1732584193,4023233417,2562383102,271733878])},_doProcessBlock:function(t,e){for(var r=0;r<16;r++){var n=e+r,o=t[n];t[n]=16711935&(o<<8|o>>>24)|4278255360&(o<<24|o>>>8)}var i=this._hash.words,s=t[e+0],c=t[e+1],l=t[e+2],d=t[e+3],m=t[e+4],v=t[e+5],y=t[e+6],g=t[e+7],b=t[e+8],w=t[e+9],_=t[e+10],S=t[e+11],T=t[e+12],x=t[e+13],B=t[e+14],D=t[e+15],k=i[0],R=i[1],E=i[2],C=i[3];k=u(k,R,E,C,s,7,a[0]),C=u(C,k,R,E,c,12,a[1]),E=u(E,C,k,R,l,17,a[2]),R=u(R,E,C,k,d,22,a[3]),k=u(k,R,E,C,m,7,a[4]),C=u(C,k,R,E,v,12,a[5]),E=u(E,C,k,R,y,17,a[6]),R=u(R,E,C,k,g,22,a[7]),k=u(k,R,E,C,b,7,a[8]),C=u(C,k,R,E,w,12,a[9]),E=u(E,C,k,R,_,17,a[10]),R=u(R,E,C,k,S,22,a[11]),k=u(k,R,E,C,T,7,a[12]),C=u(C,k,R,E,x,12,a[13]),E=u(E,C,k,R,B,17,a[14]),k=h(k,R=u(R,E,C,k,D,22,a[15]),E,C,c,5,a[16]),
1C=h(C,k,R,E,y,9,a[17]),E=h(E,C,k,R,S,14,a[18]),R=h(R,E,C,k,s,20,a[19]),k=h(k,R,E,C,v,5,a[20]),C=h(C,k,R,E,_,9,a[21]),E=h(E,C,k,R,D,14,a[22]),R=h(R,E,C,k,m,20,a[23]),k=h(k,R,E,C,w,5,a[24]),C=h(C,k,R,E,B,9,a[25]),E=h(E,C,k,R,d,14,a[26]),R=h(R,E,C,k,b,20,a[27]),k=h(k,R,E,C,x,5,a[28]),C=h(C,k,R,E,l,9,a[29]),E=h(E,C,k,R,g,14,a[30]),k=f(k,R=h(R,E,C,k,T,20,a[31]),E,C,v,4,a[32]),C=f(C,k,R,E,b,11,a[33]),E=f(E,C,k,R,S,16,a[34]),R=f(R,E,C,k,B,23,a[35]),k=f(k,R,E,C,c,4,a[36]),C=f(C,k,R,E,m,11,a[37]),E=f(E,C,k,R,g,16,a[38]),R=f(R,E,C,k,_,23,a[39]),k=f(k,R,E,C,x,4,a[40]),C=f(C,k,R,E,s,11,a[41]),E=f(E,C,k,R,d,16,a[42]),R=f(R,E,C,k,y,23,a[43]),k=f(k,R,E,C,w,4,a[44]),C=f(C,k,R,E,T,11,a[45]),E=f(E,C,k,R,D,16,a[46]),k=p(k,R=f(R,E,C,k,l,23,a[47]),E,C,s,6,a[48]),C=p(C,k,R,E,g,10,a[49]),E=p(E,C,k,R,B,15,a[50]),R=p(R,E,C,k,v,21,a[51]),k=p(k,R,E,C,T,6,a[52]),C=p(C,k,R,E,d,10,a[53]),E=p(E,C,k,R,_,15,a[54]),R=p(R,E,C,k,c,21,a[55]),k=p(k,R,E,C,b,6,a[56]),C=p(C,k,R,E,D,10,a[57]),E=p(E,C,k,R,y,15,a[58]),R=p(R,E,C,k,x,21,a[59]),k=p(k,R,E,C,m,6,a[60]),C=p(C,k,R,E,S,10,a[61]),E=p(E,C,k,R,l,15,a[62]),R=p(R,E,C,k,w,21,a[63]),i[0]=i[0]+k|0,i[1]=i[1]+R|0,i[2]=i[2]+E|0,i[3]=i[3]+C|0},_doFinalize:function(){var t=this._data,r=t.words,n=8*this._nDataBytes,o=8*t.sigBytes;r[o>>>5]|=128<<24-o%32;var i=e.floor(n/4294967296),s=n;r[15+(o+64>>>9<<4)]=16711935&(i<<8|i>>>24)|4278255360&(i<<24|i>>>8),r[14+(o+64>>>9<<4)]=16711935&(s<<8|s>>>24)|4278255360&(s<<24|s>>>8),t.sigBytes=4*(r.length+1),this._process();for(var a=this._hash,c=a.words,u=0;u<4;u++){var h=c[u];c[u]=16711935&(h<<8|h>>>24)|4278255360&(h<<24|h>>>8)}return a},clone:function(){var t=i.clone.call(this);return t._hash=this._hash.clone(),t}});function u(t,e,r,n,o,i,s){var a=t+(e&r|~e&n)+o+s;return(a<<i|a>>>32-i)+e}function h(t,e,r,n,o,i,s){var a=t+(e&n|r&~n)+o+s;return(a<<i|a>>>32-i)+e}function f(t,e,r,n,o,i,s){var a=t+(e^r^n)+o+s;return(a<<i|a>>>32-i)+e}function p(t,e,r,n,o,i,s){var a=t+(r^(e|~n))+o+s;return(a<<i|a>>>32-i)+e}r.MD5=i._createHelper(c),r.HmacMD5=i._createHmacHelper(c)}(Math),t.MD5}(_.exports)}(T);var x={exports:{}},B={exports:{}};!function(t,e){t.exports=function(t){return r=(e=t).lib,n=r.WordArray,o=r.Hasher,i=e.algo,s=[],a=i.SHA1=o.extend({_doReset:function(){this._hash=new n.init([1732584193,4023233417,2562383102,271733878,3285377520])},_doProcessBlock:function(t,e){for(var r=this._hash.words,n=r[0],o=r[1],i=r[2],a=r[3],c=r[4],u=0;u<80;u++){if(u<16)s[u]=0|t[e+u];else{var h=s[u-3]^s[u-8]^s[u-14]^s[u-16];s[u]=h<<1|h>>>31}var f=(n<<5|n>>>27)+c+s[u];f+=u<20?1518500249+(o&i|~o&a):u<40?1859775393+(o^i^a):u<60?(o&i|o&a|i&a)-1894007588:(o^i^a)-899497514,c=a,a=i,i=o<<30|o>>>2,o=n,n=f}r[0]=r[0]+n|0,r[1]=r[1]+o|0,r[2]=r[2]+i|0,r[3]=r[3]+a|0,r[4]=r[4]+c|0},_doFinalize:function(){var t=this._data,e=t.words,r=8*this._nDataBytes,n=8*t.sigBytes;return e[n>>>5]|=128<<24-n%32,e[14+(n+64>>>9<<4)]=Math.floor(r/4294967296),e[15+(n+64>>>9<<4)]=r,t.sigBytes=4*e.length,this._process(),this._hash},clone:function(){var t=o.clone.call(this);return t._hash=this._hash.clone(),t}}),e.SHA1=o._createHelper(a),e.HmacSHA1=o._createHmacHelper(a),t.SHA1;var e,r,n,o,i,s,a}(_.exports)}(B);var D={exports:{}};!function(t,e){t.exports=function(t){var e,r,n;r=(e=t).lib.Base,n=e.enc.Utf8,e.algo.HMAC=r.extend({init:function(t,e){t=this._hasher=new t.init,"string"==typeof e&&(e=n.parse(e));var r=t.blockSize,o=4*r;e.sigBytes>o&&(e=t.finalize(e)),e.clamp();for(var i=this._oKey=e.clone(),s=this._iKey=e.clone(),a=i.words,c=s.words,u=0;u<r;u++)a[u]^=1549556828,c[u]^=909522486;i.sigBytes=s.sigBytes=o,this.reset()},reset:function(){var t=this._hasher;t.reset(),t.update(this._iKey)},update:function(t){return this._hasher.update(t),this},finalize:function(t){var e=this._hasher,r=e.finalize(t);return e.reset(),e.finalize(this._oKey.clone().concat(r))}})}(_.exports)}(D),function(t,e){t.exports=function(t){return r=(e=t).lib,n=r.Base,o=r.WordArray,i=e.algo,s=i.MD5,a=i.EvpKDF=n.extend({cfg:n.extend({keySize:4,hasher:s,iterations:1}),init:function(t){this.cfg=this.cfg.extend(t)},compute:function(t,e){for(var r=this.cfg,n=r.hasher.create(),i=o.create(),s=i.words,a=r.keySize,c=r.iterations;s.length<a;){u&&n.update(u);var u=n.update(t).finalize(e);n.reset();for(var h=1;h<c;h++)u=n.finalize(u),n.reset();i.concat(u)}return i.sigBytes=4*a,i}}),e.EvpKDF=function(t,e,r){return a.create(r).compute(t,e)},t.EvpKDF;var e,r,n,o,i,s,a}(_.exports)}(x);var k={exports:{}};!function(t,e){t.exports=function(t){t.lib.Cipher||function(e){var r=t,n=r.lib,o=n.Base,i=n.WordArray,s=n.BufferedBlockAlgorithm,a=r.enc;a.Utf8;var c=a.Base64,u=r.algo.EvpKDF,h=n.Cipher=s.extend({cfg:o.extend(),createEncryptor:function(t,e){return this.create(this._ENC_XFORM_MODE,t,e)},createDecryptor:function(t,e){return this.create(this._DEC_XFORM_MODE,t,e)},init:function(t,e,r){this.cfg=this.cfg.extend(r),this._xformMode=t,this._key=e,this.reset()},reset:function(){s.reset.call(this),this._doReset()},process:function(t){return this._append(t),this._process()},finalize:function(t){return t&&this._append(t),this._doFinalize()},keySize:4,ivSize:4,_ENC_XFORM_MODE:1,_DEC_XFORM_MODE:2,_createHelper:function(){function t(t){return"string"==typeof t?b:y}return function(e){return{encrypt:function(r,n,o){return t(n).encrypt
vendor: 4,525 bytes, line 1
1(e,r,n,o)},decrypt:function(r,n,o){return t(n).decrypt(e,r,n,o)}}}}()});n.StreamCipher=h.extend({_doFinalize:function(){return this._process(!0)},blockSize:1});var f=r.mode={},p=n.BlockCipherMode=o.extend({createEncryptor:function(t,e){return this.Encryptor.create(t,e)},createDecryptor:function(t,e){return this.Decryptor.create(t,e)},init:function(t,e){this._cipher=t,this._iv=e}}),l=f.CBC=function(){var t=p.extend();function r(t,r,n){var o=this._iv;if(o){var i=o;this._iv=e}else i=this._prevBlock;for(var s=0;s<n;s++)t[r+s]^=i[s]}return t.Encryptor=t.extend({processBlock:function(t,e){var n=this._cipher,o=n.blockSize;r.call(this,t,e,o),n.encryptBlock(t,e),this._prevBlock=t.slice(e,e+o)}}),t.Decryptor=t.extend({processBlock:function(t,e){var n=this._cipher,o=n.blockSize,i=t.slice(e,e+o);n.decryptBlock(t,e),r.call(this,t,e,o),this._prevBlock=i}}),t}(),d=(r.pad={}).Pkcs7={pad:function(t,e){for(var r=4*e,n=r-t.sigBytes%r,o=n<<24|n<<16|n<<8|n,s=[],a=0;a<n;a+=4)s.push(o);var c=i.create(s,n);t.concat(c)},unpad:function(t){var e=255&t.words[t.sigBytes-1>>>2];t.sigBytes-=e}};n.BlockCipher=h.extend({cfg:h.cfg.extend({mode:l,padding:d}),reset:function(){h.reset.call(this);var t=this.cfg,e=t.iv,r=t.mode;if(this._xformMode==this._ENC_XFORM_MODE)var n=r.createEncryptor;else n=r.createDecryptor,this._minBufferSize=1;this._mode&&this._mode.__creator==n?this._mode.init(this,e&&e.words):(this._mode=n.call(r,this,e&&e.words),this._mode.__creator=n)},_doProcessBlock:function(t,e){this._mode.processBlock(t,e)},_doFinalize:function(){var t=this.cfg.padding;if(this._xformMode==this._ENC_XFORM_MODE){t.pad(this._data,this.blockSize);var e=this._process(!0)}else e=this._process(!0),t.unpad(e);return e},blockSize:4});var m=n.CipherParams=o.extend({init:function(t){this.mixIn(t)},toString:function(t){return(t||this.formatter).stringify(this)}}),v=(r.format={}).OpenSSL={stringify:function(t){var e=t.ciphertext,r=t.salt;if(r)var n=i.create([1398893684,1701076831]).concat(r).concat(e);else n=e;return n.toString(c)},parse:function(t){var e=c.parse(t),r=e.words;if(1398893684==r[0]&&1701076831==r[1]){var n=i.create(r.slice(2,4));r.splice(0,4),e.sigBytes-=16}return m.create({ciphertext:e,salt:n})}},y=n.SerializableCipher=o.extend({cfg:o.extend({format:v}),encrypt:function(t,e,r,n){n=this.cfg.extend(n);var o=t.createEncryptor(r,n),i=o.finalize(e),s=o.cfg;return m.create({ciphertext:i,key:r,iv:s.iv,algorithm:t,mode:s.mode,padding:s.padding,blockSize:t.blockSize,formatter:n.format})},decrypt:function(t,e,r,n){return n=this.cfg.extend(n),e=this._parse(e,n.format),t.createDecryptor(r,n).finalize(e.ciphertext)},_parse:function(t,e){return"string"==typeof t?e.parse(t,this):t}}),g=(r.kdf={}).OpenSSL={execute:function(t,e,r,n){n||(n=i.random(8));var o=u.create({keySize:e+r}).compute(t,n),s=i.create(o.words.slice(e),4*r);return o.sigBytes=4*e,m.create({key:o,iv:s,salt:n})}},b=n.PasswordBasedCipher=y.extend({cfg:y.cfg.extend({kdf:g}),encrypt:function(t,e,r,n){var o=(n=this.cfg.extend(n)).kdf.execute(r,t.keySize,t.ivSize);n.iv=o.iv;var i=y.encrypt.call(this,t,e,o.key,n);return i.mixIn(o),i},decrypt:function(t,e,r,n){n=this.cfg.extend(n),e=this._parse(e,n.format);var o=n.kdf.execute(r,t.keySize,t.ivSize,e.salt);return n.iv=o.iv,y.decrypt.call(this,t,e,o.key,n)}})}()}(_.exports)}(k),function(t,e){t.exports=function(t){return function(){var e=t,r=e.lib.BlockCipher,n=e.algo,o=[],i=[],s=[],a=[],c=[],u=[],h=[],f=[],p=[],l=[];!function(){for(var t=[],e=0;e<256;e++)t[e]=e<128?e<<1:e<<1^283;var r=0,n=0;for(e=0;e<256;e++){var d=n^n<<1^n<<2^n<<3^n<<4;d=d>>>8^255&d^99,o[r]=d,i[d]=r;var m=t[r],v=t[m],y=t[v],g=257*t[d]^16843008*d;s[r]=g<<24|g>>>8,a[r]=g<<16|g>>>16,c[r]=g<<8|g>>>24,u[r]=g,g=16843009*y^65537*v^257*m^16843008*r,h[d]=g<<24|g>>>8,f[d]=g<<16|g>>>16,p[d]=g<<8|g>>>24,l[d]=g,r?(r=m^t[t[t[y^m]]],n^=t[t[n]]):r=n=1}}();var d=[0,1,2,4,8,16,32,64,128,27,54],m=n.AES=r.extend({_doReset:function(){if(!this._nRounds||this._keyPriorReset!==this._key){for(var t=this._keyPriorReset=this._key,e=t.words,r=t.sigBytes/4,n=4*((this._nRounds=r+6)+1),i=this._keySchedule=[],s=0;s<n;s++)if(s<r)i[s]=e[s];else{var a=i[s-1];s%r?r>6&&s%r==4&&(a=o[a>>>24]<<24|o[a>>>16&255]<<16|o[a>>>8&255]<<8|o[255&a]):(a=o[(a=a<<8|a>>>24)>>>24]<<24|o[a>>>16&255]<<16|o[a>>>8&255]<<8|o[255&a],a^=d[s/r|0]<<24),i[s]=i[s-r]^a}for(var c=this._invKeySchedule=[],u=0;u<n;u++)s=n-u,a=u%4?i[s]:i[s-4],c[u]=u<4||s<=4?a:h[o[a>>>24]]^f[o[a>>>16&255]]^p[o[a>>>8&255]]^l[o[255&a]]}},encryptBlock:function(t,e){this._doCryptBlock(t,e,this._keySchedule,s,a,
1c,u,o)},decryptBlock:function(t,e){var r=t[e+1];t[e+1]=t[e+3],t[e+3]=r,this._doCryptBlock(t,e,this._invKeySchedule,h,f,p,l,i),r=t[e+1],t[e+1]=t[e+3],t[e+3]=r},_doCryptBlock:function(t,e,r,n,o,i,s,a){for(var c=this._nRounds,u=t[e]^r[0],h=t[e+1]^r[1],f=t[e+2]^r[2],p=t[e+3]^r[3],l=4,d=1;d<c;d++){var m=n[u>>>24]^o[h>>>16&255]^i[f>>>8&255]^s[255&p]^r[l++],v=n[h>>>24]^o[f>>>16&255]^i[p>>>8&255]^s[255&u]^r[l++],y=n[f>>>24]^o[p>>>16&255]^i[u>>>8&255]^s[255&h]^r[l++],g=n[p>>>24]^o[u>>>16&255]^i[h>>>8&255]^s[255&f]^r[l++];u=m,h=v,f=y,p=g}m=(a[u>>>24]<<24|a[h>>>16&255]<<16|a[f>>>8&255]<<8|a[255&p])^r[l++],v=(a[h>>>24]<<24|a[f>>>16&255]<<16|a[p>>>8&255]<<8|a[255&u])^r[l++],y=(a[f>>>24]<<24|a[p>>>16&255]<<16|a[u>>>8&255]<<8|a[255&h])^r[l++],g=(a[p>>>24]<<24|a[u>>>16&255]<<16|a[h>>>8&255]<<8|a[255&f])^r[l++],t[e]=m,t[e+1]=v,t[e+2]=y,t[e+3]=g},keySize:8});e.AES=r._createHelper(m)}(),t.AES}(_.exports)}(w);var R=w.exports,E="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";function C(t){var e,r,n="";for(e=0;e+3<=t.length;e+=3)r=parseInt(t.substring(e,e+3),16),n+=E.charAt(r>>6)+E.charAt(63&r);for(e+1===t.length?(r=parseInt(t.substring(e,e+1),16),n+=E.charAt(r<<2)):e+2===t.length&&(r=parseInt(t.substring(e,e+2),16),n+=E.charAt(r>>2)+E.charAt((3&r)<<4));(3&n.length)>0;)n+="=";return n}var O,M=(O="0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ~!@#$%^&*()_+-/",function(t){for(var e=[];t>0;)e.push(O.charAt(Math.floor(Math.random()*(O.length+1)))),t--;return e.join("")});function q(t,e,r){return t.config=e,r&&(t.response=r),t}function A(t){var e;null!=(e=t.params)&&e.compound&&(t.params.compound=t.params.compound.map((t=>A(t))));const{params:r,...n}=t;return{...n,...r}}class P{constructor(t,e){this.env=t,this.hooks=e}async requestWebAPI(t){const e=this.normalizeConfig(t);for(const t of this.hooks.beforeRequest)t(e);const r=this.env.getCredential();if(r&&await r.WaitForReady(),u(t.encryption)&&!this.env.isSecure())try{await this.encryptParam
1s(e,t.encryption)}catch{}try{return await this.doRequest(e)}catch(e){return r&&function(t){if(!t)return!1;if("errorhash"===t.headers["x-request-error"])return!0;const e=t.data;return c(e)&&119===e.code&&c(e.errors)&&"session hash invalid."===e.errors.reason}(null==e?void 0:e.response)?(await r.Resume(),this.requestWebAPI(t)):Promise.reject(e)}}encrypt(t,e){void 0===e&&(e={}),t=JSON.parse(JSON.stringify(t));const r={...e,params:t};return this.encryptParams(r,Object.keys(t)).then((()=>{const t=r.params;if("raw"!==e.requestFormat)for(const e in t)h(t,e)&&(t[e]=JSON.stringify(t[e]));return t}))}createRequestConfig(t){var e;return(e="webapi"===t.requestFormat?Object.assign(F(t),z(t.params)):t.params)&&e.compound&&(e.compound=JSON.stringify(JSON.parse(e.compound).map((t=>A(t))))),{url:t.url||this.env.getBaseURL()+"webapi/entry.cgi/"+t.api,method:t.requestMethod,params:e,headers:this.getHeaders(t),responseType:L(t.responseFormat),options:t,timeout:t.timeout,signal:t.signal,formData:t.formData}}normalizeConfig(t){var e=t.compound;let r;if(e){var n=e.params||[];r={api:"SYNO.Entry.Request",method:"request",version:1,params:{stop_when_error:!0===e.stopwhenerror,mode:"parallel"===e.mode?e.mode:"sequential",compound:n.map(j)}}}else r=j(t);return{...r,headers:t.headers,url:t.url,requestFormat:t.requestFormat?t.requestFormat.toLowerCase():"webapi",requestMethod:t.requestMethod||"POST",responseFormat:t.responseFormat?t.responseFormat.toLowerCase():"webapi",timeout:t.timeout,signal:t.signal,formData:t.formData}}doRequest(t){return new Promise(((e,r)=>{this.requestAdapter(this.createRequestConfig(t),((n,o)=>
1{if(n)return r(q(n,t));const{data:i,status:s,statusText:a,headers:u}=o;let h=this.validateResponse(o),f=i;h&&"webapi"===t.responseFormat&&c(i)&&(h=i.success,f=h?i.data:i.error);const p={config:t,status:s,statusText:a,headers:u,data:f};return h?e(p):r(q(new Error("request failed"),t,p))}))}))}validateResponse(t){const{status:e,headers:r}=t;return 200===e&&"errorhash"!==r["x-request-error"]}encryptParams(t,e){if(!e||0===e.length)return Promise.resolve();let r=!1;function n(n,o,i){if(n.params){for(var s=Object.assign({},n.params),a={},p=!1,l=0;l<e.length;l++){var d=e[l];if(h(n.params,d)){var m=n.params[d];"raw"!==t.requestFormat&&(m=u(m)||c(m)||"string"==typeof m?JSON.stringify(m):m),a[d]=m,delete s[d],p=!0}}if(p){var v=function(t,e){var r=e.cipherKey,n=e.publicKey,o=e.cipherToken,i=e.timeBias;if(!r||!n||!o)return t;var s=new b;s.setPublic(n,"10001");var a=M(501),c=s.encrypt(a);if(!c)return t;var u={};u[o]=Math.floor(Date.now()/1e3)+i,Object.assign(u,t);var h=R.encrypt(f(u),a).toString();if(!h)return t;var p={};return p[r]={rsa:C(c),aes:h},p}(a,o);v[o.cipherKey]||(r=!0),"raw"===t.requestFormat&&(v=z(v)),i&&(v=z(v)),n.params=Object.assign(s,v)}}}const o={api:"SYNO.API.Encryption",method:"getinfo",version:1},i=this.env.isLegacyMode();return this.doRequest(this.normalizeConfig({...i?{url:this.env.getBaseURL()+"webapi/encryption.cgi/SYNO.API.Encryption",params:{...o,format:"module"},requestFormat:"raw"}:{...o,params:{format:"module"}},headers:t.headers})).then((e=>{let{data:r}=e;const o={cipherKey:r.cipherkey,publicKey:r.public_key,cipherToken:r.ciphertoken,timeBias:r.server_time-Math.floor(Date.now()/1e3)},i=t.params.compound;if(i)return new Promise((t=>{let e=0;!function r(){for(var s=Math.min(i.length,e+5);e<s;e++)n(i[e],o,!0);e<i.length?setTimeout(r,80):t()}()}));n(t,o,!1)})).then((()=>r?Promise.reject():Promise.resolve()))}getHeaders(t){return Object.assign(t.formData?{}:{"Content-Type":"application/x-www-form-urlencoded; charset=UTF-8"},this.env.getRequestHeaders(),t.headers)}createAuthConfig(t){const e={api:"SYNO.API.Auth",version:t.version||6,method:t.method||"login"},r=Object.keys(t).filter((t=>-1===["callback","scope"].indexOf(t))).reduce(((e,r)=>(void 0!==t[r]&&(e[r]=t[r]),e)),{});let n=this.env.getBaseURL();if(this.env.isLegacyMode()){n+="webapi/auth.cgi";const e=t.enable_syno_token;e&&(n+="?enable_syno_token="+e)}else n+="webapi/entry.cgi/"+e.api;const{encryption:o=[]}=t;return"login"===e.method&&o.push("passwd"),{url:n,params:{...r,...e},requestFormat:"raw",encryption:o}}request(t){return this.requestWebAPI(t).then((t=>t.data),(t=>Promise.reject(null!=t&&t.response?t.response.data:t)))}auth(t){return this.request(this.createAuthConfig(t))}requestAdapter(){}}function z(t){var e={};for(var r in t)h(t,r)&&(e[r]=JSON.stringify(t[r]));return e}function F(t){return{api:t.api,method:t.method,version:t.version}}function j(t){var e=F(t);return t.params&&(e.params=t.params),e}function L(t){switch(t){case"webapi":case"raw":return"json";default:return t}}function H(t,e,r){var n=e.url,o=e.method||"POST",i=f(e.params),s=!!e.formData,a="";const c=e.signal;function u(){t.abort()}function p(t,e){c&&c.removeEventListener("abort",u),r(t,e)}function d(){p(new Error("aborted"))}if(c&&c.aborted)d();else{if(i.length>0&&("GET"===o||s?n+="?"+i:a=i),s)for(var m in a=new FormData,e.formData)h(e.formData,m)&&a.append(m,e.formData[m]);for(var v in t.responseType=e.responseType,t.open(o,n,!0),"number"==typeof e.timeout&&(t.timeout=e.timeout),t.ontimeout=function(){p(new Error("timeout"))},t.onload=function(){p(null,{status:t.status,statusText:t.statusText,headers:l(t.getAllResponseHeaders()),data:t.response})},t.onerror=function(){p(new Error("network error"))},t.onabort=d,e.onDownloadProgress&&t.addEventListener("progress",e.onDownloadProgress),e.onUploadProgress&&t.upload&&t.upload.addEventListener("progress",e.onUploadProgress),c&&c.addEventListener("abort",u),e.headers)t.setRequestHeader(v,e.headers[v]);t.send(a)}}class I extends P{requestAdapter(t,e){var r,n=null;return null!=(r=this.env.getWebRTC())&&r.Enable&&(n=this.env.getWebRTC().GetDefaultChannel(!1)),n&&n.isDataChannelOpen()?function(t,e,r){H(t.newTaskRequest(),e,r)}(n,t,e):function(t,e){H(new XMLHttpRequest,t,e)}(t,e)}normalizeConfig(t){return{...super.normalizeConfig(t),onDownloadProgress:t.onDownloadProgress,onUploadProgress:t.onUploadProgress}}createRequestConfig(t){return{...super.createRequestConfig(t),onDownloadProgress:t.onDownloadProgress,onUploadProgress:t.onUploadProgress}}}function U(t){const e={};for(const[r,n]of t.entries())e[r]=n;return e}async function N(t,e){try{switch(e){case"json":return await t.json();case"arraybuffer":return await t.arrayBuffer();case"blob":return await t.blob();default:return await t.text()}}catch(t){return console.error(t),null}}class W extends P{requestAdapter(t,e){!async function(t,e){let{url:r}=t;const n=t.method||"POST",o=f(t.params),{formData:i,signal:s,timeout:a,headers:c,responseType:u}=t;let p="",l=s,d=null;if(o.length>0&&("GET"===n||i?r+="?"+o:p=o),i)if(i instanceof FormData)p=i;else{p=new FormData;for(const t in i)h(i,t)&&p.append(t,i[t])}if(a>0){const t=new AbortController;l=t.signal,s&&s.addEventListener("abort",(()=>t.abort())),d=setTimeout((()=>{t.abort(),d=null}),a)}let m,v=null;try{const t=await fetch(r,{method:n,headers:c,body:p,signal:l});m={status:t.status,statusText:t.statusText,headers:U(t.headers),data:await N(t,u)}}catch(t){v=t instanceof Error?"AbortError"===t.name?new Error(null!=s&&s.aborted?"aborted":"timeout"):t:new Error("unknown")}finally{d&&clearTimeout(d),e(v,m)}}(t,e)}}
1function K(t,e){const r=new URL(t.url,location.href),n=t.filename,o=t.method||"GET",i=t.params?{...t.params}:{};var s=null;for(let t of["api","method","version"])void 0===i[t]&&delete i[t];if(n&&(r.pathname+=r.pathname.endsWith("/")?"":"/",r.pathname+=encodeURIComponent(n)),"GET"===o)for(const[t,e]of Object.entries(i))r.searchParams.set(t,e);else if("POST"===o){const t=i.SynoToken;t&&(r.searchParams.set("SynoToken",t),delete i.SynoToken)}const a="POST"===o?"about:blank":r.href;var c,u,f,p=(c=a,u=document.createElement("iframe"),f="synowebapi-iframe-"+V++,u.setAttribute("src",c),u.setAttribute("frameBorder","0"),u.setAttribute("id",f),u.setAttribute("name",f),u.setAttribute("style","border:0px none;width:0;height:0;position:absolute;top:-100000px"),document.body.appendChild(u),u);function l(){return p.contentWindow?p.contentWindow.document||p.contentDocument:p.contentDocument||window.frames[p.id].document}"POST"===o&&(s=function(t,e){var r=document.createElement("form");for(var n in r.name="dlform",r.method="POST",r.action=t,e)if(h(e,n)){var o=document.createElement("input");o.type="hidden",o.name=n,o.value=e[n],r.appendChild(o)}return r}(r.href,i),l().body.appendChild(s));var d=null;function m(t,r){d&&(clearTimeout(d),d=null),e(t,r),setTimeout((function(){try{document.body.removeChild(p)}catch(t){}}),100)}function v(t,e){if(!t)return null;try{return"json"===e?JSON.parse(t):t}catch(t){return console.error(t),null}}t.timeout&&(d=setTimeout((function(){m(new Error("timeout"))}),t.timeout)),p.addEventListener("load",(function(){var e;m(null,{status:0,statusText:"",headers:{},data:v(null==(e=l().body.firstChild)?void 0:e.innerHTML,t.responseType)})}),{once:!0}),p.addEventListener("error",(function(){m(new Error("iframe error"))}),{once:!0}),s&&(s.submit(),s.parentNode.removeChild(s))}var V=0;class J extends P{constructor(t,e,r){super(t,e),this.xhrRelayTarget=r}request(t){super.request(t).then((e=>{var r;null==(r=t.onLoad)||r.call(t.scope,e)})).catch((e=>{var r;e instanceof Error&&"timeout"===e.message||(null==(r=t.onError)||r.call(t.scope,e))}))}requestAdapter(t,e){const r=this.env.getWebRTC();if(null==r||!r.Enable||null==r||!r.SupportDownload)return K(t,e);r.DownloadFile(t,e,(()=>{K(t,e)}))}validateResponse(){return!0}createRequestConfig(t){var e=super.createRequestConfig(t);e.header=null,e.filename=t.filename;var r=this.env.getSynoToken();return r&&(e.params=Object.assign({},e.params,{SynoToken:r})),e}normalizeConfig(t){return{...super.normalizeConfig(t),filename:t.filename,requestMethod:t.requestMethod??"GET",timeout:t.timeout??12e4}}encryptParams(t,e){return this.xhrRelayTarget?this.xhrRelayTarget.encryptParam
1s(t,e):super.encryptParams(t,e)}}class X extends i{constructor(t){void 0===t&&(t=Object.create(null)),super(t),this.webRTC=null}_isSecure(){const t=this.getBaseURL();return(/^https?:\/\//.test(t)?t:location.protocol).startsWith("https:")}setWebRTC(t){this.webRTC=t}getWebRTC(){return this.webRTC}}var Z=new class extends o{constructor(t){void 0===t&&(t=Object.create(null)),super();const e=new X(t),r=new a;this.manager=e.useFetch()?new W(e,r):new I(e,r),this.downloader=new J(e,r,this.manager)}download(t){this.downloader.request(t)}},G=function(t){return{...n(t),create:function(){return n(t.create(...arguments))}}}(Z),Y={...function(t){return{...r(t),create:function(){return r(t.create(...arguments))}}}(Z),promises:G};return Y}();

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.