update CAT
This commit is contained in:
Vendored
+3
-3
@@ -395,10 +395,10 @@ function print() { __p += __j.call(arguments, '') }
|
||||
`,LTe=V5.encode(so),FTe=2,Dw=class{constructor(e,n){let{escapeName:r}=this.constructor,i=Z.isString(n),l=`Content-Disposition: form-data; name="${r(e)}"${!i&&n.name?`; filename="${r(n.name)}"`:""}${so}`;i?n=V5.encode(String(n).replace(/\r?\n|\r\n?/g,so)):l+=`Content-Type: ${n.type||"application/octet-stream"}${so}`,this.headers=V5.encode(l+so),this.contentLength=i?n.byteLength:n.size,this.size=this.headers.byteLength+this.contentLength+FTe,this.name=e,this.value=n}async*encode(){yield this.headers;let{value:e}=this;Z.isTypedArray(e)?yield e:yield*hf(e),yield LTe}static escapeName(e){return String(e).replace(/[\r\n"]/g,n=>({"\r":"%0D","\n":"%0A",'"':"%22"})[n])}},jTe=(t,e,n)=>{let{tag:r="form-data-boundary",size:i=25,boundary:l=r+"-"+Z.generateString(i,PTe)}=n||{};if(!Z.isFormData(t))throw TypeError("FormData instance required");if(l.length<1||l.length>70)throw Error("boundary must be 10-70 characters long");let s=V5.encode("--"+l+so),a=V5.encode("--"+l+"--"+so+so),o=a.byteLength,u=Array.from(t.entries()).map(([f,m])=>{let d=new Dw(f,m);return o+=d.size,d});o+=s.byteLength*u.length,o=Z.toFiniteNumber(o);let c={"Content-Type":`multipart/form-data; boundary=${l}`};return Number.isFinite(o)&&(c["Content-Length"]=o),e&&e(c),LJ.Readable.from(async function*(){for(let f of u)yield s,yield*f.encode();yield a}())},FJ=jTe;var jJ=Yr(require("stream"),1),Pw=class extends jJ.default.Transform{__transform(e,n,r){this.push(e),r()}_transform(e,n,r){if(e.length!==0&&(this._transform=this.__transform,e[0]!==120)){let i=Buffer.alloc(2);i[0]=120,i[1]=156,this.push(i,n)}this.__transform(e,n,r)}},UJ=Pw;var UTe=(t,e)=>Z.isAsyncFn(t)?function(...n){let r=n.pop();t.apply(this,n).then(i=>{try{e?r(null,...e(i)):r(null,i)}catch(l){r(l)}},r)}:t,MJ=UTe;var $J={flush:l2.default.constants.Z_SYNC_FLUSH,finishFlush:l2.default.constants.Z_SYNC_FLUSH},MTe={flush:l2.default.constants.BROTLI_OPERATION_FLUSH,finishFlush:l2.default.constants.BROTLI_OPERATION_FLUSH},BJ=Z.isFunction(l2.default.createBrotliDecompress),{http:$Te,https:BTe}=KJ.default,HTe=/https:?/,HJ=ii.protocols.map(t=>t+":");function VTe(t,e){t.beforeRedirects.proxy&&t.beforeRedirects.proxy(t),t.beforeRedirects.config&&t.beforeRedirects.config(t,e)}function WJ(t,e,n){let r=e;if(!r&&r!==!1){let i=(0,qJ.getProxyForUrl)(n);i&&(r=new URL(i))}if(r){if(r.username&&(r.auth=(r.username||"")+":"+(r.password||"")),r.auth){(r.auth.username||r.auth.password)&&(r.auth=(r.auth.username||"")+":"+(r.auth.password||""));let l=Buffer.from(r.auth,"utf8").toString("base64");t.headers["Proxy-Authorization"]="Basic "+l}t.headers.host=t.hostname+(t.port?":"+t.port:"");let i=r.hostname||r.host;t.hostname=i,t.host=i,t.port=r.port,t.path=n,r.protocol&&(t.protocol=r.protocol.includes(":")?r.protocol:`${r.protocol}:`)}t.beforeRedirects.proxy=function(l){WJ(l,e,l.href)}}var qTe=typeof process<"u"&&Z.kindOf(process)==="process",zTe=t=>new Promise((e,n)=>{let r,i,l=(o,u)=>{i||(i=!0,r&&r(o,u))},s=o=>{l(o),e(o)},a=o=>{l(o,!0),n(o)};t(s,a,o=>r=o).catch(a)}),GTe=({address:t,family:e})=>{if(!Z.isString(t))throw TypeError("address must be a string");return{address:t,family:e||(t.indexOf(".")<0?6:4)}},VJ=(t,e)=>GTe(Z.isObject(t)?t:{address:t,family:e}),YJ=qTe&&function(e){return zTe(async function(r,i,l){let{data:s,lookup:a,family:o}=e,{responseType:u,responseEncoding:c}=e,f=e.method.toUpperCase(),m,d=!1,y;if(a){let ee=MJ(a,me=>Z.isArray(me)?me:[me]);a=(me,P,G)=>{ee(me,P,(V,q,Zn)=>{if(V)return G(V);let Tt=Z.isArray(q)?q.map(Qe=>VJ(Qe)):[VJ(q,Zn)];P.all?G(V,Tt):G(V,Tt[0].address,Tt[0].family)})}}let _=new XJ.default,S=()=>{e.cancelToken&&e.cancelToken.unsubscribe(w),e.signal&&e.signal.removeEventListener("abort",w),_.removeAllListeners()};l((ee,me)=>{m=!0,me&&(d=!0,S())});function w(ee){_.emit("abort",!ee||ee.type?new ks(null,e,y):ee)}_.once("abort",i),(e.cancelToken||e.signal)&&(e.cancelToken&&e.cancelToken.subscribe(w),e.signal&&(e.signal.aborted?w():e.signal.addEventListener("abort",w)));let E=mu(e.baseURL,e.url),g=new URL(E,"http://localhost"),v=g.protocol||HJ[0];if(v==="data:"){let ee;if(f!=="GET")return lo(r,i,{status:405,statusText:"method not allowed",headers:{},config:e});try{ee=Rw(e.url,u==="blob",{Blob:e.env&&e.env.Blob})}catch(me){throw qe.from(me,qe.ERR_BAD_REQUEST,e)}return u==="text"?(ee=ee.toString(c),(!c||c==="utf8")&&(ee=Z.stripBOM(ee))):u==="stream"&&(ee=vu.default.Readable.from(ee)),lo(r,i,{data:ee,status:200,statusText:"OK",headers:new li,config:e})}if(HJ.indexOf(v)===-1)return i(new qe("Unsupported protocol "+v,qe.ERR_BAD_REQUEST,e));let x=li.from(e.headers).normalize();x.set("User-Agent","axios/"+gu,!1);let O=e.onDownloadProgress,N=e.onUploadProgress,R=e.maxRate,U,F;if(Z.isSpecCompliantForm(s)){let ee=x.getContentType(/boundary=([-_\w\d]{10,70})/i);s=FJ(s,me=>{x.set(me)},{tag:`axios-${gu}-boundary`,boundary:ee&&ee[1]||void 0})}else if(Z.isFormData(s)&&Z.isFunction(s.getHeaders)){if(x.set(s.getHeaders()),!x.hasContentLength())try{let ee=await JJ.default.promisify(s.getLength).call(s);Number.isFinite(ee)&&ee>=0&&x.setContentLength(ee)}catch{}}else if(Z.isBlob(s))s.size&&x.setContentType(s.type||"application/octet-stream"),x.setContentLength(s.size||0),s=vu.default.Readable.from(hf(s));else if(s&&!Z.isStream(s)){if(!Buffer.isBuffer(s))if(Z.isArrayBuffer(s))s=Buffer.from(new Uint8Array(s));else if(Z.isString(s))s=Buffer.from(s,"utf-8");else return i(new qe("Data after transformation must be a string, an ArrayBuffer, a Buffer, or a Stream",qe.ERR_BAD_REQUEST,e));if(x.setContentLength(s.length,!1),e.maxBodyLength>-1&&s.length>e.maxBodyLength)return i(new qe("Request body larger than maxBodyLength limit",qe.ERR_BAD_REQUEST,e))}let te=Z.toFiniteNumber(x.getContentLength());Z.isArray(R)?(U=R[0],F=R[1]):U=F=R,s&&(N||U)&&(Z.isStream(s)||(s=vu.default.Readable.from(s,{objectMode:!1})),s=vu.default.pipeline([s,new kw({length:te,maxRate:Z.toFiniteNumber(U)})],Z.noop),N&&s.on("progress",ee=>{N(Object.assign(ee,{upload:!0}))}));let Q;if(e.auth){let ee=e.auth.username||"",me=e.auth.password||"";Q=ee+":"+me}if(!Q&&g.username){let ee=g.username,me=g.password;Q=ee+":"+me}Q&&x.delete("authorization");let W;try{W=hu(g.pathname+g.search,e.params,e.paramsSerializer).replace(/^\?/,"")}catch(ee){let me=new Error(ee.message);return me.config=e,me.url=e.url,me.exists=!0,i(me)}x.set("Accept-Encoding","gzip, compress, deflate"+(BJ?", br":""),!1);let ce={path:W,method:f,headers:x.toJSON(),agents:{http:e.httpAgent,https:e.httpsAgent},auth:Q,protocol:v,family:o,beforeRedirect:VTe,beforeRedirects:{}};!Z.isUndefined(a)&&(ce.lookup=a),e.socketPath?ce.socketPath=e.socketPath:(ce.hostname=g.hostname,ce.port=g.port,WJ(ce,e.proxy,v+"//"+g.hostname+(g.port?":"+g.port:"")+ce.path));let we,se=HTe.test(ce.protocol);if(ce.agent=se?e.httpsAgent:e.httpAgent,e.transport?we=e.transport:e.maxRedirects===0?we=se?GJ.default:zJ.default:(e.maxRedirects&&(ce.maxRedirects=e.maxRedirects),e.beforeRedirect&&(ce.beforeRedirects.config=e.beforeRedirect),we=se?BTe:$Te),e.maxBodyLength>-1?ce.maxBodyLength=e.maxBodyLength:ce.maxBodyLength=1/0,e.insecureHTTPParser&&(ce.insecureHTTPParser=e.insecureHTTPParser),y=we.request(ce,function(me){if(y.destroyed)return;let P=[me],G=+me.headers["content-length"];if(O){let Qe=new kw({length:Z.toFiniteNumber(G),maxRate:Z.toFiniteNumber(F)});O&&Qe.on("progress",pt=>{O(Object.assign(pt,{download:!0}))}),P.push(Qe)}let V=me,q=me.req||y;if(e.decompress!==!1&&me.headers["content-encoding"])switch((f==="HEAD"||me.statusCode===204)&&delete me.headers["content-encoding"],(me.headers["content-encoding"]||"").toLowerCase()){case"gzip":case"x-gzip":case"compress":case"x-compress":P.push(l2.default.createUnzip($J)),delete me.headers["content-encoding"];break;case"deflate":P.push(new UJ),P.push(l2.default.createUnzip($J)),delete me.headers["content-encoding"];break;case"br":BJ&&(P.push(l2.default.createBrotliDecompress(MTe)),delete me.headers["content-encoding"])}V=P.length>1?vu.default.pipeline(P,Z.noop):P[0];let Zn=vu.default.finished(V,()=>{Zn(),S()}),Tt={status:me.statusCode,statusText:me.statusMessage,headers:new li(me.headers),config:e,request:q};if(u==="stream")Tt.data=V,lo(r,i,Tt);else{let Qe=[],pt=0;V.on("data",function(Ue){Qe.push(Ue),pt+=Ue.length,e.maxContentLength>-1&&pt>e.maxContentLength&&(d=!0,V.destroy(),i(new qe("maxContentLength size of "+e.maxContentLength+" exceeded",qe.ERR_BAD_RESPONSE,e,q)))}),V.on("aborted",function(){if(d)return;let Ue=new qe("maxContentLength size of "+e.maxContentLength+" exceeded",qe.ERR_BAD_RESPONSE,e,q);V.destroy(Ue),i(Ue)}),V.on("error",function(Ue){y.destroyed||i(qe.from(Ue,null,e,q))}),V.on("end",function(){try{let Ue=Qe.length===1?Qe[0]:Buffer.concat(Qe);u!=="arraybuffer"&&(Ue=Ue.toString(c),(!c||c==="utf8")&&(Ue=Z.stripBOM(Ue))),Tt.data=Ue}catch(Ue){return i(qe.from(Ue,null,e,Tt.request,Tt))}lo(r,i,Tt)})}_.once("abort",Qe=>{V.destroyed||(V.emit("error",Qe),V.destroy())})}),_.once("abort",ee=>{i(ee),y.destroy(ee)}),y.on("error",function(me){i(qe.from(me,null,e,y))}),y.on("socket",function(me){me.setKeepAlive(!0,1e3*60)}),e.timeout){let ee=parseInt(e.timeout,10);if(Number.isNaN(ee)){i(new qe("error trying to parse `config.timeout` to int",qe.ERR_BAD_OPTION_VALUE,e,y));return}y.setTimeout(ee,function(){if(m)return;let P=e.timeout?"timeout of "+e.timeout+"ms exceeded":"timeout exceeded",G=e.transitional||R0;e.timeoutErrorMessage&&(P=e.timeoutErrorMessage),i(new qe(P,G.clarifyTimeoutError?qe.ETIMEDOUT:qe.ECONNABORTED,e,y)),w()})}if(Z.isStream(s)){let ee=!1,me=!1;s.on("end",()=>{ee=!0}),s.once("error",P=>{me=!0,y.destroy(P)}),s.on("close",()=>{!ee&&!me&&w(new ks("Request stream has been aborted",e,y))}),s.pipe(y)}else y.end(s)})};var QJ=ii.hasStandardBrowserEnv?{write(t,e,n,r,i,l){let s=[t+"="+encodeURIComponent(e)];Z.isNumber(n)&&s.push("expires="+new Date(n).toGMTString()),Z.isString(r)&&s.push("path="+r),Z.isString(i)&&s.push("domain="+i),l===!0&&s.push("secure"),document.cookie=s.join("; ")},read(t){let e=document.cookie.match(new RegExp("(^|;\\s*)("+t+")=([^;]*)"));return e?decodeURIComponent(e[3]):null},remove(t){this.write(t,"",Date.now()-864e5)}}:{write(){},read(){return null},remove(){}};var ZJ=ii.hasStandardBrowserEnv?function(){let e=/(msie|trident)/i.test(navigator.userAgent),n=document.createElement("a"),r;function i(l){let s=l;return e&&(n.setAttribute("href",s),s=n.href),n.setAttribute("href",s),{href:n.href,protocol:n.protocol?n.protocol.replace(/:$/,""):"",host:n.host,search:n.search?n.search.replace(/^\?/,""):"",hash:n.hash?n.hash.replace(/^#/,""):"",hostname:n.hostname,port:n.port,pathname:n.pathname.charAt(0)==="/"?n.pathname:"/"+n.pathname}}return r=i(window.location.href),function(s){let a=Z.isString(s)?i(s):s;return a.protocol===r.protocol&&a.host===r.host}}():function(){return function(){return!0}}();function eK(t,e){let n=0,r=ff(50,250);return i=>{let l=i.loaded,s=i.lengthComputable?i.total:void 0,a=l-n,o=r(a),u=l<=s;n=l;let c={loaded:l,total:s,progress:s?l/s:void 0,bytes:a,rate:o||void 0,estimated:o&&s&&u?(s-l)/o:void 0,event:i};c[e?"download":"upload"]=!0,t(c)}}var JTe=typeof XMLHttpRequest<"u",tK=JTe&&function(t){return new Promise(function(n,r){let i=t.data,l=li.from(t.headers).normalize(),{responseType:s,withXSRFToken:a}=t,o;function u(){t.cancelToken&&t.cancelToken.unsubscribe(o),t.signal&&t.signal.removeEventListener("abort",o)}let c;if(Z.isFormData(i)){if(ii.hasStandardBrowserEnv||ii.hasStandardBrowserWebWorkerEnv)l.setContentType(!1);else if((c=l.getContentType())!==!1){let[_,...S]=c?c.split(";").map(w=>w.trim()).filter(Boolean):[];l.setContentType([_||"multipart/form-data",...S].join("; "))}}let f=new XMLHttpRequest;if(t.auth){let _=t.auth.username||"",S=t.auth.password?unescape(encodeURIComponent(t.auth.password)):"";l.set("Authorization","Basic "+btoa(_+":"+S))}let m=mu(t.baseURL,t.url);f.open(t.method.toUpperCase(),hu(m,t.params,t.paramsSerializer),!0),f.timeout=t.timeout;function d(){if(!f)return;let _=li.from("getAllResponseHeaders"in f&&f.getAllResponseHeaders()),w={data:!s||s==="text"||s==="json"?f.responseText:f.response,status:f.status,statusText:f.statusText,headers:_,config:t,request:f};lo(function(g){n(g),u()},function(g){r(g),u()},w),f=null}if("onloadend"in f?f.onloadend=d:f.onreadystatechange=function(){!f||f.readyState!==4||f.status===0&&!(f.responseURL&&f.responseURL.indexOf("file:")===0)||setTimeout(d)},f.onabort=function(){f&&(r(new qe("Request aborted",qe.ECONNABORTED,t,f)),f=null)},f.onerror=function(){r(new qe("Network Error",qe.ERR_NETWORK,t,f)),f=null},f.ontimeout=function(){let S=t.timeout?"timeout of "+t.timeout+"ms exceeded":"timeout exceeded",w=t.transitional||R0;t.timeoutErrorMessage&&(S=t.timeoutErrorMessage),r(new qe(S,w.clarifyTimeoutError?qe.ETIMEDOUT:qe.ECONNABORTED,t,f)),f=null},ii.hasStandardBrowserEnv&&(a&&Z.isFunction(a)&&(a=a(t)),a||a!==!1&&ZJ(m))){let _=t.xsrfHeaderName&&t.xsrfCookieName&&QJ.read(t.xsrfCookieName);_&&l.set(t.xsrfHeaderName,_)}i===void 0&&l.setContentType(null),"setRequestHeader"in f&&Z.forEach(l.toJSON(),function(S,w){f.setRequestHeader(w,S)}),Z.isUndefined(t.withCredentials)||(f.withCredentials=!!t.withCredentials),s&&s!=="json"&&(f.responseType=t.responseType),typeof t.onDownloadProgress=="function"&&f.addEventListener("progress",eK(t.onDownloadProgress,!0)),typeof t.onUploadProgress=="function"&&f.upload&&f.upload.addEventListener("progress",eK(t.onUploadProgress)),(t.cancelToken||t.signal)&&(o=_=>{f&&(r(!_||_.type?new ks(null,t,f):_),f.abort(),f=null)},t.cancelToken&&t.cancelToken.subscribe(o),t.signal&&(t.signal.aborted?o():t.signal.addEventListener("abort",o)));let y=H5(m);if(y&&ii.protocols.indexOf(y)===-1){r(new qe("Unsupported protocol "+y+":",qe.ERR_BAD_REQUEST,t));return}f.send(i||null)})};var Lw={http:YJ,xhr:tK};Z.forEach(Lw,(t,e)=>{if(t){try{Object.defineProperty(t,"name",{value:e})}catch{}Object.defineProperty(t,"adapterName",{value:e})}});var nK=t=>`- ${t}`,KTe=t=>Z.isFunction(t)||t===null||t===!1,mf={getAdapter:t=>{t=Z.isArray(t)?t:[t];let{length:e}=t,n,r,i={};for(let l=0;l<e;l++){n=t[l];let s;if(r=n,!KTe(n)&&(r=Lw[(s=String(n)).toLowerCase()],r===void 0))throw new qe(`Unknown adapter '${s}'`);if(r)break;i[s||"#"+l]=r}if(!r){let l=Object.entries(i).map(([a,o])=>`adapter ${a} `+(o===!1?"is not supported by the environment":"is not available in the build")),s=e?l.length>1?`since :
|
||||
`+l.map(nK).join(`
|
||||
`):" "+nK(l[0]):"as no adapter specified";throw new qe("There is no suitable adapter to dispatch the request "+s,"ERR_NOT_SUPPORT")}return r},adapters:Lw};function Fw(t){if(t.cancelToken&&t.cancelToken.throwIfRequested(),t.signal&&t.signal.aborted)throw new ks(null,t)}function yf(t){return Fw(t),t.headers=li.from(t.headers),t.data=L5.call(t,t.transformRequest),["post","put","patch"].indexOf(t.method)!==-1&&t.headers.setContentType("application/x-www-form-urlencoded",!1),mf.getAdapter(t.adapter||I0.adapter)(t).then(function(r){return Fw(t),r.data=L5.call(t,t.transformResponse,r),r.headers=li.from(r.headers),r},function(r){return F5(r)||(Fw(t),r&&r.response&&(r.response.data=L5.call(t,t.transformResponse,r.response),r.response.headers=li.from(r.response.headers))),Promise.reject(r)})}var rK=t=>t instanceof li?t.toJSON():t;function s2(t,e){e=e||{};let n={};function r(u,c,f){return Z.isPlainObject(u)&&Z.isPlainObject(c)?Z.merge.call({caseless:f},u,c):Z.isPlainObject(c)?Z.merge({},c):Z.isArray(c)?c.slice():c}function i(u,c,f){if(Z.isUndefined(c)){if(!Z.isUndefined(u))return r(void 0,u,f)}else return r(u,c,f)}function l(u,c){if(!Z.isUndefined(c))return r(void 0,c)}function s(u,c){if(Z.isUndefined(c)){if(!Z.isUndefined(u))return r(void 0,u)}else return r(void 0,c)}function a(u,c,f){if(f in e)return r(u,c);if(f in t)return r(void 0,u)}let o={url:l,method:l,data:l,baseURL:s,transformRequest:s,transformResponse:s,paramsSerializer:s,timeout:s,timeoutMessage:s,withCredentials:s,withXSRFToken:s,adapter:s,responseType:s,xsrfCookieName:s,xsrfHeaderName:s,onUploadProgress:s,onDownloadProgress:s,decompress:s,maxContentLength:s,maxBodyLength:s,beforeRedirect:s,transport:s,httpAgent:s,httpsAgent:s,cancelToken:s,socketPath:s,responseEncoding:s,validateStatus:a,headers:(u,c)=>i(rK(u),rK(c),!0)};return Z.forEach(Object.keys(Object.assign({},t,e)),function(c){let f=o[c]||i,m=f(t[c],e[c],c);Z.isUndefined(m)&&f!==a||(n[c]=m)}),n}var jw={};["object","boolean","number","function","string","symbol"].forEach((t,e)=>{jw[t]=function(r){return typeof r===t||"a"+(e<1?"n ":" ")+t}});var iK={};jw.transitional=function(e,n,r){function i(l,s){return"[Axios v"+gu+"] Transitional option '"+l+"'"+s+(r?". "+r:"")}return(l,s,a)=>{if(e===!1)throw new qe(i(s," has been removed"+(n?" in "+n:"")),qe.ERR_DEPRECATED);return n&&!iK[s]&&(iK[s]=!0,console.warn(i(s," has been deprecated since v"+n+" and will be removed in the near future"))),e?e(l,s,a):!0}};function XTe(t,e,n){if(typeof t!="object")throw new qe("options must be an object",qe.ERR_BAD_OPTION_VALUE);let r=Object.keys(t),i=r.length;for(;i-- >0;){let l=r[i],s=e[l];if(s){let a=t[l],o=a===void 0||s(a,l,t);if(o!==!0)throw new qe("option "+l+" must be "+o,qe.ERR_BAD_OPTION_VALUE);continue}if(n!==!0)throw new qe("Unknown option "+l,qe.ERR_BAD_OPTION)}}var gf={assertOptions:XTe,validators:jw};var ao=gf.validators,P0=class{constructor(e){this.defaults=e,this.interceptors={request:new pw,response:new pw}}async request(e,n){try{return await this._request(e,n)}catch(r){if(r instanceof Error){let i;Error.captureStackTrace?Error.captureStackTrace(i={}):i=new Error;let l=i.stack?i.stack.replace(/^.+\n/,""):"";r.stack?l&&!String(r.stack).endsWith(l.replace(/^.+\n.+\n/,""))&&(r.stack+=`
|
||||
`+l):r.stack=l}throw r}}_request(e,n){typeof e=="string"?(n=n||{},n.url=e):n=e||{},n=s2(this.defaults,n);let{transitional:r,paramsSerializer:i,headers:l}=n;r!==void 0&&gf.assertOptions(r,{silentJSONParsing:ao.transitional(ao.boolean),forcedJSONParsing:ao.transitional(ao.boolean),clarifyTimeoutError:ao.transitional(ao.boolean)},!1),i!=null&&(Z.isFunction(i)?n.paramsSerializer={serialize:i}:gf.assertOptions(i,{encode:ao.function,serialize:ao.function},!0)),n.method=(n.method||this.defaults.method||"get").toLowerCase();let s=l&&Z.merge(l.common,l[n.method]);l&&Z.forEach(["delete","get","head","post","put","patch","common"],y=>{delete l[y]}),n.headers=li.concat(s,l);let a=[],o=!0;this.interceptors.request.forEach(function(_){typeof _.runWhen=="function"&&_.runWhen(n)===!1||(o=o&&_.synchronous,a.unshift(_.fulfilled,_.rejected))});let u=[];this.interceptors.response.forEach(function(_){u.push(_.fulfilled,_.rejected)});let c,f=0,m;if(!o){let y=[yf.bind(this),void 0];for(y.unshift.apply(y,a),y.push.apply(y,u),m=y.length,c=Promise.resolve(n);f<m;)c=c.then(y[f++],y[f++]);return c}m=a.length;let d=n;for(f=0;f<m;){let y=a[f++],_=a[f++];try{d=y(d)}catch(S){_.call(this,S);break}}try{c=yf.call(this,d)}catch(y){return Promise.reject(y)}for(f=0,m=u.length;f<m;)c=c.then(u[f++],u[f++]);return c}getUri(e){e=s2(this.defaults,e);let n=mu(e.baseURL,e.url);return hu(n,e.params,e.paramsSerializer)}};Z.forEach(["delete","get","head","options"],function(e){P0.prototype[e]=function(n,r){return this.request(s2(r||{},{method:e,url:n,data:(r||{}).data}))}});Z.forEach(["post","put","patch"],function(e){function n(r){return function(l,s,a){return this.request(s2(a||{},{method:e,headers:r?{"Content-Type":"multipart/form-data"}:{},url:l,data:s}))}}P0.prototype[e]=n(),P0.prototype[e+"Form"]=n(!0)});var q5=P0;var Uw=class t{constructor(e){if(typeof e!="function")throw new TypeError("executor must be a function.");let n;this.promise=new Promise(function(l){n=l});let r=this;this.promise.then(i=>{if(!r._listeners)return;let l=r._listeners.length;for(;l-- >0;)r._listeners[l](i);r._listeners=null}),this.promise.then=i=>{let l,s=new Promise(a=>{r.subscribe(a),l=a}).then(i);return s.cancel=function(){r.unsubscribe(l)},s},e(function(l,s,a){r.reason||(r.reason=new ks(l,s,a),n(r.reason))})}throwIfRequested(){if(this.reason)throw this.reason}subscribe(e){if(this.reason){e(this.reason);return}this._listeners?this._listeners.push(e):this._listeners=[e]}unsubscribe(e){if(!this._listeners)return;let n=this._listeners.indexOf(e);n!==-1&&this._listeners.splice(n,1)}static source(){let e;return{token:new t(function(i){e=i}),cancel:e}}},lK=Uw;function Mw(t){return function(n){return t.apply(null,n)}}function $w(t){return Z.isObject(t)&&t.isAxiosError===!0}var Bw={Continue:100,SwitchingProtocols:101,Processing:102,EarlyHints:103,Ok:200,Created:201,Accepted:202,NonAuthoritativeInformation:203,NoContent:204,ResetContent:205,PartialContent:206,MultiStatus:207,AlreadyReported:208,ImUsed:226,MultipleChoices:300,MovedPermanently:301,Found:302,SeeOther:303,NotModified:304,UseProxy:305,Unused:306,TemporaryRedirect:307,PermanentRedirect:308,BadRequest:400,Unauthorized:401,PaymentRequired:402,Forbidden:403,NotFound:404,MethodNotAllowed:405,NotAcceptable:406,ProxyAuthenticationRequired:407,RequestTimeout:408,Conflict:409,Gone:410,LengthRequired:411,PreconditionFailed:412,PayloadTooLarge:413,UriTooLong:414,UnsupportedMediaType:415,RangeNotSatisfiable:416,ExpectationFailed:417,ImATeapot:418,MisdirectedRequest:421,UnprocessableEntity:422,Locked:423,FailedDependency:424,TooEarly:425,UpgradeRequired:426,PreconditionRequired:428,TooManyRequests:429,RequestHeaderFieldsTooLarge:431,UnavailableForLegalReasons:451,InternalServerError:500,NotImplemented:501,BadGateway:502,ServiceUnavailable:503,GatewayTimeout:504,HttpVersionNotSupported:505,VariantAlsoNegotiates:506,InsufficientStorage:507,LoopDetected:508,NotExtended:510,NetworkAuthenticationRequired:511};Object.entries(Bw).forEach(([t,e])=>{Bw[e]=t});var sK=Bw;function aK(t){let e=new q5(t),n=I5(q5.prototype.request,e);return Z.extend(n,q5.prototype,e,{allOwnKeys:!0}),Z.extend(n,e,null,{allOwnKeys:!0}),n.create=function(i){return aK(s2(t,i))},n}var Gr=aK(I0);Gr.Axios=q5;Gr.CanceledError=ks;Gr.CancelToken=lK;Gr.isCancel=F5;Gr.VERSION=gu;Gr.toFormData=io;Gr.AxiosError=qe;Gr.Cancel=Gr.CanceledError;Gr.all=function(e){return Promise.all(e)};Gr.spread=Mw;Gr.isAxiosError=$w;Gr.mergeConfig=s2;Gr.AxiosHeaders=li;Gr.formToJSON=t=>cf(Z.isHTMLForm(t)?new FormData(t):t);Gr.getAdapter=mf.getAdapter;Gr.HttpStatusCode=sK;Gr.default=Gr;var L0=Gr;var{Axios:bUe,AxiosError:wUe,CanceledError:SUe,isCancel:TUe,CancelToken:xUe,VERSION:AUe,all:OUe,Cancel:NUe,isAxiosError:CUe,spread:RUe,toFormData:oK,AxiosHeaders:IUe,HttpStatusCode:kUe,formToJSON:DUe,getAdapter:PUe,mergeConfig:LUe}=L0;var yK=Yr(require("https"),1),gK=Yr(require("crypto"),1),vK=Yr(hK(),1),qw={};globalThis.dataBase=null;globalThis.local={get:async function(t,e){return await rxe(t,e)},set:async function(t,e,n){await ixe(t,e,n)}};async function rxe(t,e){let n="/js_"+t+`/${e}/`;return await dataBase.getObjectDefault(n,{})}async function ixe(t,e,n){let r="/js_"+t;qw=await dataBase.getObjectDefault(r,{}),qw[e]=n,t==="log"&&await req("http://192.168.0.116:8099/upload",{data:{log:n+`
|
||||
`+l):r.stack=l}throw r}}_request(e,n){typeof e=="string"?(n=n||{},n.url=e):n=e||{},n=s2(this.defaults,n);let{transitional:r,paramsSerializer:i,headers:l}=n;r!==void 0&&gf.assertOptions(r,{silentJSONParsing:ao.transitional(ao.boolean),forcedJSONParsing:ao.transitional(ao.boolean),clarifyTimeoutError:ao.transitional(ao.boolean)},!1),i!=null&&(Z.isFunction(i)?n.paramsSerializer={serialize:i}:gf.assertOptions(i,{encode:ao.function,serialize:ao.function},!0)),n.method=(n.method||this.defaults.method||"get").toLowerCase();let s=l&&Z.merge(l.common,l[n.method]);l&&Z.forEach(["delete","get","head","post","put","patch","common"],y=>{delete l[y]}),n.headers=li.concat(s,l);let a=[],o=!0;this.interceptors.request.forEach(function(_){typeof _.runWhen=="function"&&_.runWhen(n)===!1||(o=o&&_.synchronous,a.unshift(_.fulfilled,_.rejected))});let u=[];this.interceptors.response.forEach(function(_){u.push(_.fulfilled,_.rejected)});let c,f=0,m;if(!o){let y=[yf.bind(this),void 0];for(y.unshift.apply(y,a),y.push.apply(y,u),m=y.length,c=Promise.resolve(n);f<m;)c=c.then(y[f++],y[f++]);return c}m=a.length;let d=n;for(f=0;f<m;){let y=a[f++],_=a[f++];try{d=y(d)}catch(S){_.call(this,S);break}}try{c=yf.call(this,d)}catch(y){return Promise.reject(y)}for(f=0,m=u.length;f<m;)c=c.then(u[f++],u[f++]);return c}getUri(e){e=s2(this.defaults,e);let n=mu(e.baseURL,e.url);return hu(n,e.params,e.paramsSerializer)}};Z.forEach(["delete","get","head","options"],function(e){P0.prototype[e]=function(n,r){return this.request(s2(r||{},{method:e,url:n,data:(r||{}).data}))}});Z.forEach(["post","put","patch"],function(e){function n(r){return function(l,s,a){return this.request(s2(a||{},{method:e,headers:r?{"Content-Type":"multipart/form-data"}:{},url:l,data:s}))}}P0.prototype[e]=n(),P0.prototype[e+"Form"]=n(!0)});var q5=P0;var Uw=class t{constructor(e){if(typeof e!="function")throw new TypeError("executor must be a function.");let n;this.promise=new Promise(function(l){n=l});let r=this;this.promise.then(i=>{if(!r._listeners)return;let l=r._listeners.length;for(;l-- >0;)r._listeners[l](i);r._listeners=null}),this.promise.then=i=>{let l,s=new Promise(a=>{r.subscribe(a),l=a}).then(i);return s.cancel=function(){r.unsubscribe(l)},s},e(function(l,s,a){r.reason||(r.reason=new ks(l,s,a),n(r.reason))})}throwIfRequested(){if(this.reason)throw this.reason}subscribe(e){if(this.reason){e(this.reason);return}this._listeners?this._listeners.push(e):this._listeners=[e]}unsubscribe(e){if(!this._listeners)return;let n=this._listeners.indexOf(e);n!==-1&&this._listeners.splice(n,1)}static source(){let e;return{token:new t(function(i){e=i}),cancel:e}}},lK=Uw;function Mw(t){return function(n){return t.apply(null,n)}}function $w(t){return Z.isObject(t)&&t.isAxiosError===!0}var Bw={Continue:100,SwitchingProtocols:101,Processing:102,EarlyHints:103,Ok:200,Created:201,Accepted:202,NonAuthoritativeInformation:203,NoContent:204,ResetContent:205,PartialContent:206,MultiStatus:207,AlreadyReported:208,ImUsed:226,MultipleChoices:300,MovedPermanently:301,Found:302,SeeOther:303,NotModified:304,UseProxy:305,Unused:306,TemporaryRedirect:307,PermanentRedirect:308,BadRequest:400,Unauthorized:401,PaymentRequired:402,Forbidden:403,NotFound:404,MethodNotAllowed:405,NotAcceptable:406,ProxyAuthenticationRequired:407,RequestTimeout:408,Conflict:409,Gone:410,LengthRequired:411,PreconditionFailed:412,PayloadTooLarge:413,UriTooLong:414,UnsupportedMediaType:415,RangeNotSatisfiable:416,ExpectationFailed:417,ImATeapot:418,MisdirectedRequest:421,UnprocessableEntity:422,Locked:423,FailedDependency:424,TooEarly:425,UpgradeRequired:426,PreconditionRequired:428,TooManyRequests:429,RequestHeaderFieldsTooLarge:431,UnavailableForLegalReasons:451,InternalServerError:500,NotImplemented:501,BadGateway:502,ServiceUnavailable:503,GatewayTimeout:504,HttpVersionNotSupported:505,VariantAlsoNegotiates:506,InsufficientStorage:507,LoopDetected:508,NotExtended:510,NetworkAuthenticationRequired:511};Object.entries(Bw).forEach(([t,e])=>{Bw[e]=t});var sK=Bw;function aK(t){let e=new q5(t),n=I5(q5.prototype.request,e);return Z.extend(n,q5.prototype,e,{allOwnKeys:!0}),Z.extend(n,e,null,{allOwnKeys:!0}),n.create=function(i){return aK(s2(t,i))},n}var Gr=aK(I0);Gr.Axios=q5;Gr.CanceledError=ks;Gr.CancelToken=lK;Gr.isCancel=F5;Gr.VERSION=gu;Gr.toFormData=io;Gr.AxiosError=qe;Gr.Cancel=Gr.CanceledError;Gr.all=function(e){return Promise.all(e)};Gr.spread=Mw;Gr.isAxiosError=$w;Gr.mergeConfig=s2;Gr.AxiosHeaders=li;Gr.formToJSON=t=>cf(Z.isHTMLForm(t)?new FormData(t):t);Gr.getAdapter=mf.getAdapter;Gr.HttpStatusCode=sK;Gr.default=Gr;var L0=Gr;var{Axios:bUe,AxiosError:wUe,CanceledError:SUe,isCancel:TUe,CancelToken:xUe,VERSION:AUe,all:OUe,Cancel:NUe,isAxiosError:CUe,spread:RUe,toFormData:oK,AxiosHeaders:IUe,HttpStatusCode:kUe,formToJSON:DUe,getAdapter:PUe,mergeConfig:LUe}=L0;var yK=Yr(require("https"),1),gK=Yr(require("crypto"),1),vK=Yr(hK(),1),qw={};globalThis.dataBase=null;globalThis.local={get:async function(t,e){return await rxe(t,e)},set:async function(t,e,n){await ixe(t,e,n)}};async function rxe(t,e){let n="/js_"+t+`/${e}/`;return await dataBase.getObjectDefault(n,{})}async function ixe(t,e,n){let r="/js_"+t;qw=await dataBase.getObjectDefault(r,{}),qw[e]=n,t==="log"&&await req("http://127.0.0.1:8099/upload",{data:{log:n+`
|
||||
`},timeout:.1}),await dataBase.push(r,qw)}globalThis.localLog={set:async function(t,e,n){sxe(t,e,n)}};function lxe(){_u.default.existsSync("log")||_u.default.mkdirSync("log");let t="log/info.log";return _u.default.existsSync(t)?_u.default.readFileSync(t).toString():(_u.default.writeFileSync(t,""),"")}function sxe(t){_u.default.writeFileSync("log/info.log",lxe()+`
|
||||
`+t)}globalThis.req=axe;async function axe(t,e){try{let n=e&&e.data||null,r=e&&e.postType||null,i=e&&e.buffer||0,l=e&&e.timeout||5e3,s=(e&&e.redirect||1)===1,a=e.proxy??!1,o=e?e.headers||{}:{};r==="form"?(o["Content-Type"]="application/x-www-form-urlencoded",n!=null&&(n=mK.default.stringify(n,{encode:!1}))):r==="form-data"&&(o["Content-Type"]="multipart/form-data",n=oK(n));let u=i===1||i===2?"arraybuffer":void 0,c;a?c=vK.default.httpsOverHttp({proxy:{host:"127.0.0.1",port:7890}}):c=yK.default.Agent({rejectUnauthorized:!1});let f=await L0(t,{responseType:u,method:e&&e.method||"get",headers:o,data:n,timeout:l,maxRedirects:s?null:0,httpsAgent:c});n=f.data;let m={};for(let d of f.headers){let y=d[1];m[d[0]]=Array.isArray(y)&&y.length===1?y[0]:y}if(!i)typeof n=="object"&&(n=JSON.stringify(n));else{if(i===1)return{code:f.status,headers:m,content:n};if(i===2)return{code:f.status,headers:m,content:n.toString("base64")};if(i===3){let d=e.stream;return d.onResp&&await d.onResp({code:f.status,headers:m}),d.onData?(n.on("data",async y=>{await d.onData(y)}),n.on("end",async()=>{d.onDone&&await d.onDone()})):d.onDone&&await d.onDone(),"stream..."}}return{code:f.status,headers:m,content:n}}catch(n){let r=n.response;try{return{code:r.status,headers:r.headers,content:JSON.stringify(r.data)}}catch{return{headers:{},content:""}}}}globalThis.md5X=oxe;function oxe(t){return gK.default.createHash("md5").update(Buffer.from(t,"utf8")).digest("hex")}globalThis.js2Proxy=function(t,e,n){let r=Object.keys(n).length===0?" ":encodeURIComponent(JSON.stringify(n));return t.server.address().dynamic+t.server.prefix+"/proxy/"+encodeURIComponent(e)+"/"+r+"/"};var uxe=["DEBUG","INFO","WARNING","ERROR"];var j0=class{constructor(e,n="DEBUG"){this.app_name=e,this.level=n,this.level_index=uxe.indexOf(n)}format(e,n){let r=80;switch(e){case"INFO":r=r+1;break;case"WARNING":r=r-2;break;default:break}return n.length<r&&((r-n.length)%2===0?n="#".repeat(Math.floor((r-n.length)/2))+n+"#".repeat(Math.floor((r-n.length)/2)):n="#".repeat(Math.floor((r-n.length)/2))+n+"#".repeat(Math.floor((r-n.length)/2)+1)),n}getTime(){let e=new Date;return e.toLocaleDateString().replace(/\//g,"-")+" "+e.toTimeString().substr(0,8)+","+e.getMilliseconds().toString()}formatMessage(e,n,r){return r&&(n=this.format(e,n)),`${this.getTime()} - ${this.app_name} - ${e}: ${n}`}async log(e){console.debug(e),await req("http://192.168.0.116:8099/upload",{data:{log:e+`
|
||||
`},timeout:.1})}async info(e,n){this.level_index<=1&&await this.log(this.formatMessage("INFO",e,n))}async warning(e,n){this.level_index<=2&&await this.log(this.formatMessage("WARNING",e,n))}async error(e,n){this.level_index<=3&&await this.log(this.formatMessage("ERROR",e,n))}async debug(e,n){this.level_index<=0&&await this.log(this.formatMessage("DEBUG",e,n))}};var Re=class extends Fe{constructor(){super(),this.jadeLog=new j0(this.getAppName(),"DEBUG")}async init(e,n){await this.jadeLog.info("\u521D\u59CB\u5316",!0);try{await await req("http://192.168.0.116:8099/clear",{timeout:.1}),this.siteKey=this.getJSName(),this.siteType=this.getType(),this.cfgObj=e.server.config[this.siteKey],this.deviceKey=e.server.prefix+"/",this.db=e.server.db,this.catOpenStatus=!0,this.danmuStaus=!1;try{await this.loadFilterAndClasses()?await this.jadeLog.debug("\u8BFB\u53D6\u7F13\u5B58\u5217\u8868\u548C\u4E8C\u7EA7\u83DC\u5355\u6210\u529F"):(await this.jadeLog.warning("\u8BFB\u53D6\u7F13\u5B58\u5217\u8868\u548C\u4E8C\u7EA7\u83DC\u5355\u5931\u8D25"),await this.writeFilterAndClasses())}catch(r){await this.db.push(this.deviceKey+"classes",{}),await this.db.push(this.deviceKey+"filterObj",{}),await this.jadeLog.error("\u8BFB\u53D6\u7F13\u5B58\u5931\u8D25,\u5931\u8D25\u539F\u56E0\u4E3A:"+r,!1)}}catch(r){await this.jadeLog.error(`\u521D\u59CB\u5316\u5931\u8D25,\u5931\u8D25\u539F\u56E0\u4E3A:${r}`)}await this.jadeLog.info("\u521D\u59CB\u5316\u5B8C\u6210",!0)}async loadFilterAndClasses(){return this.classes=await this.getClassesCache(),this.filterObj=await this.getFiletObjCache(),this.classes.length>0?!0:(await this.db.push(this.deviceKey+"classes",{}),await this.db.push(this.deviceKey+"filterObj",{}),!1)}async writeFilterAndClasses(){this.catOpenStatus&&this.classes.push({type_name:"\u6700\u8FD1\u66F4\u65B0",type_id:"\u6700\u8FD1\u66F4\u65B0"}),await this.setClasses(),await this.setFilterObj(),await this.db.push(this.deviceKey+"classes",this.classes),await this.db.push(this.deviceKey+"filterObj",this.filterObj)}async getClassesCache(){let e=await this.db.getObjectDefault(this.deviceKey+"classes",{});return B.isEmpty(e)?this.classes:e}async getFiletObjCache(){let e=await this.db.getObjectDefault(this.deviceKey+"filterObj",{});return B.isEmpty(e)?this.filterObj:e}async home(e,n){return this.vodList=[],await this.jadeLog.info("\u6B63\u5728\u89E3\u6790\u9996\u9875\u7C7B\u522B",!0),await this.setHome(),await this.jadeLog.debug(`\u9996\u9875\u7C7B\u522B\u5185\u5BB9\u4E3A:${this.result.home(this.classes,[],this.filterObj)}`),await this.jadeLog.info("\u9996\u9875\u7C7B\u522B\u89E3\u6790\u5B8C\u6210",!0),this.result.home(this.classes,[],this.filterObj)}async homeVod(){await this.jadeLog.info("\u6B63\u5728\u89E3\u6790\u9996\u9875\u5185\u5BB9",!0);try{return await this.setHomeVod(),await this.jadeLog.debug(`\u9996\u9875\u5185\u5BB9\u4E3A:${this.result.homeVod(this.homeVodList)}`),await this.jadeLog.info("\u9996\u9875\u5185\u5BB9\u89E3\u6790\u5B8C\u6210",!0),this.result.homeVod(this.homeVodList)}catch(e){await this.jadeLog.error(`\u9996\u9875\u5185\u5BB9\u89E3\u6790\u5931\u8D25,\u5931\u8D25\u539F\u56E0\u4E3A:${e}`)}}async category(e,n){let r=e.body.id,i=e.body.page,l=!0,s=e.body.filters;if(this.page=parseInt(i),await this.jadeLog.info(`\u6B63\u5728\u89E3\u6790\u5206\u7C7B\u9875\u9762,tid = ${r},pg = ${i},extend = ${JSON.stringify(s)}`),r==="\u6700\u8FD1\u66F4\u65B0")return this.page=0,await this.homeVod();try{return this.vodList=[],await this.setCategory(r,i,l,s),await this.jadeLog.debug(`\u5206\u7C7B\u9875\u9762\u5185\u5BB9\u4E3A:${this.result.category(this.vodList,this.page,this.count,this.limit,this.total)}`),await this.jadeLog.info("\u5206\u7C7B\u9875\u9762\u89E3\u6790\u5B8C\u6210",!0),this.result.category(this.vodList,this.page,this.count,this.limit,this.total)}catch(a){await this.jadeLog.error(`\u5206\u7C7B\u9875\u89E3\u6790\u5931\u8D25,\u5931\u8D25\u539F\u56E0\u4E3A:${a}`)}}async detail(e,n){await this.jadeLog.debug(`\u83B7\u53D6\u8BE6\u60C5\u9875\u9762:${JSON.stringify(e.body)}`);let i=(Array.isArray(e.body.id)?e.body.id:[e.body.id])[0];this.vodDetail=new Be,await this.jadeLog.info(`\u6B63\u5728\u83B7\u53D6\u8BE6\u60C5\u9875\u9762,id\u4E3A:${i}`);try{return await this.setDetail(i),await this.jadeLog.debug(`\u8BE6\u60C5\u9875\u9762\u5185\u5BB9\u4E3A:${this.result.detail(this.vodDetail)}`),await this.jadeLog.info("\u8BE6\u60C5\u9875\u9762\u89E3\u6790\u5B8C\u6210",!0),this.vodDetail.vod_id=i,this.result.detail(this.vodDetail)}catch(l){await this.jadeLog.error("\u8BE6\u60C5\u754C\u9762\u83B7\u53D6\u5931\u8D25,\u5931\u8D25\u539F\u56E0\u4E3A:"+l)}}async play(e,n){let r=e.body.flag,i=e.body.id,l=[];await this.jadeLog.info(`\u6B63\u5728\u89E3\u6790\u64AD\u653E\u9875\u9762,flag:${r},id:${i},flags:${l}`,!0);try{let s;if(await this.setPlay(r,i,l),this.playUrl.content!==void 0)return this.playUrl;if(await this.jadeLog.debug("\u4E0D\u9700\u8981\u52A0\u8F7D\u5F39\u5E55",!0),this.result.jx===1&&this.playUrl.indexOf(".m3u8")<0){let a=await e.server.messageToDart({action:"sniff",opt:{url:i,timeout:6e4,rule:"http((?!http).){12,}?\\.m3u8?"}});if(a&&a.url){let o={};a.headers&&(a.headers["user-agent"]&&(o["User-Agent"]=a.headers["user-agent"]),a.headers.referer&&(o.Referer=a.headers.referer)),await this.jadeLog.debug(`\u55C5\u63A2\u6210\u529F,\u64AD\u653E\u8FDE\u63A5\u4E3A:${a.url}`),s=JSON.stringify({parse:0,url:a.url,header:a.headers,jx:"0"})}else await this.jadeLog.error("\u89E3\u6790\u5931\u8D25,\u65E0\u6CD5\u55C5\u63A2\u5230\u64AD\u653E\u8FDE\u63A5"),s=JSON.stringify({parse:0,url:"",jx:"0"})}else s=this.result.play(this.playUrl);return await this.jadeLog.info("\u64AD\u653E\u9875\u9762\u89E3\u6790\u5B8C\u6210",!0),await this.jadeLog.debug(`\u64AD\u653E\u9875\u9762\u5185\u5BB9\u4E3A:${s}`),s}catch(s){await this.jadeLog.error("\u89E3\u6790\u64AD\u653E\u9875\u9762\u51FA\u9519,\u5931\u8D25\u539F\u56E0\u4E3A:"+s)}}async search(e,n){let r=e.body.page,i=e.body.wd,l=!0;return this.vodList=[],await this.jadeLog.info(`\u6B63\u5728\u89E3\u6790\u641C\u7D22\u9875\u9762,\u5173\u952E\u8BCD\u4E3A = ${i},quick = ${l},pg = ${r}`),await this.setSearch(i,l,r),this.vodList.length===0&&i.indexOf(" ")>-1&&(await this.jadeLog.debug(`\u641C\u7D22\u5173\u952E\u8BCD\u4E3A:${i},\u5176\u4E2D\u6709\u7A7A\u683C,\u53BB\u9664\u7A7A\u683C\u5728\u641C\u7D22\u4E00\u6B21`),await this.search(i.replaceAll(" ","").replaceAll("?",""),l)),await this.jadeLog.debug(`\u641C\u7D22\u9875\u9762\u5185\u5BB9\u4E3A:${this.result.search(this.vodList)}`),await this.jadeLog.info("\u641C\u7D22\u9875\u9762\u89E3\u6790\u5B8C\u6210",!0),this.result.search(this.vodList)}async proxy(e,n){try{let r=e.params.what,i={};try{i=JSON.parse(e.params.ids)}catch{}let l=decodeURIComponent(e.params.end),s=JSON.parse(await this.setProxy([r,l],i));return r==="dash"?(await this.jadeLog.debug(`dash:${JSON.stringify(s)}`),n.code(s.code).headers(s.headers),s.content):s.code===200?(n.code(s.code).headers(s.headers),Buffer.from(s.content,"base64")):(n.code(500),"")}catch(r){await this.jadeLog.error(`\u4EE3\u7406\u56DE\u8C03\u5931\u8D25,\u5931\u8D25\u539F\u56E0\u4E3A:${r}`)}}};var uo=class extends Fe{constructor(){super(),this.siteUrl="http://cj.ffzyapi.com",this.remove18=!1,this.type_id_18=34}async spiderInit(e){e!==null?this.detailProxy=await js2Proxy(e,"detail",this.getHeader()):this.detailProxy=await js2Proxy(!0,this.siteType,this.siteKey,"detail/",this.getHeader())}async init(e){await super.init(e),await this.spiderInit(null)}async parseVodShortListFromJson(e,n=!1){let r=[],i;for(let l of e.list)n?(i=new Ne,i.vod_pic=this.detailProxy+ti(l.vod_id),i.vod_id=l.vod_id,i.vod_name=l.vod_name,i.vod_remarks=l.vod_remarks):i=this.parseVodDetail(l),this.remove18&&l.type_id!==this.type_id_18&&r.push(i),!this.remove18&&l.type_id===this.type_id_18&&r.push(i);return r}parseVodDetail(e){let n=new Be;n.vod_id=e.vod_id,n.vod_name=e.vod_name,n.vod_pic=e.vod_pic,n.vod_remarks=e.vod_remarks,n.vod_area=e.vod_area,n.vod_year=e.vod_year,n.vod_actor=e.vod_actor,n.vod_director=e.vod_director;let r=$e(e.vod_content);return n.vod_content=r.text(),e.vod_down_url!==void 0&&e.vod_down_url.length>0&&(n.vod_play_from="\u76F4\u94FE\u64AD\u653E$$$",n.vod_play_url=e.vod_down_url+"$$$"),n.vod_play_from=n.vod_play_from+e.vod_play_from,n.vod_play_url=n.vod_play_url+e.vod_play_url,n.type_name=e.type_name,n}async parseVodDetailfromJson(e){let n,r=e.list;if(r.length>0){let i=r[0];n=this.parseVodDetail(i)}return n}async setClasses(){let e=await this.fetch(this.siteUrl+"/api.php/provide/vod/from",{ac:"list"},this.getHeader()),n=JSON.parse(e);for(let r of n.class)r.type_pid!==0&&this.classes.push(this.getTypeDic(r.type_name,r.type_id))}async setFilterObj(){let e=await this.fetch(this.siteUrl+"/api.php/provide/vod/from",{ac:"list"},this.getHeader()),n=JSON.parse(e);for(let r of this.classes){let i=r.type_id.toString();if(i!=="\u6700\u8FD1\u66F4\u65B0"){let l={key:"1",name:"\u5206\u7C7B",value:[{n:"\u5168\u90E8",v:i}]};for(let s of n.class){let a=s.type_name;a===this.type_name_18&&(this.type_id_18=s.type_id.toString()),this.remove18?s.type_pid===r.type_id&&a!==this.type_name_18&&l.value.push({n:a,v:s.type_id.toString()}):s.type_pid===r.type_id&&a===this.type_name_18&&l.value.push({n:a,v:s.type_id.toString()})}this.remove18?this.filterObj[i]=[l]:this.classes=[this.getTypeDic("\u6700\u8FD1\u66F4\u65B0","\u6700\u8FD1\u66F4\u65B0"),this.getTypeDic(this.type_name_18,this.type_id_18)]}}}async setHomeVod(){let e=await this.fetch(this.siteUrl+"/index.php/ajax/data",{mid:"1"},this.getHeader());this.homeVodList=await this.parseVodShortListFromJson(JSON.parse(e))}async setDetail(e){let n=await this.fetch(this.siteUrl+"/api.php/provide/vod",{ac:"detail",ids:e},this.getHeader());this.vodDetail=await this.parseVodDetailfromJson(JSON.parse(n))}async setCategory(e,n,r,i){e=i[1]??e;let l=this.siteUrl+`/index.php/ajax/data?mid=1&tid=${e}&page=${n}&limit=20`;await this.jadeLog.debug(`\u5206\u7C7BURL:${l}`);let s=await this.fetch(l,null,this.getHeader());await this.jadeLog.debug(`\u5206\u7C7B\u5185\u5BB9\u4E3A:${s}`),this.vodList=await this.parseVodShortListFromJson(JSON.parse(s))}async setSearch(e,n){let r=await this.fetch(this.siteUrl+"/api.php/provide/vod/",{wd:e},this.getHeader());this.vodList=await this.parseVodShortListFromJson(JSON.parse(r),!0)}async proxy(e,n){await this.jadeLog.debug(`\u6B63\u5728\u8BBE\u7F6E\u53CD\u5411\u4EE3\u7406 segments = ${e.join(",")},headers = ${JSON.stringify(n)}`);let r=e[0],i=vi(e[1]);if(await this.jadeLog.debug(`\u53CD\u5411\u4EE3\u7406\u53C2\u6570\u4E3A:${i}`),r==="detail"){let l=await this.fetch(this.siteUrl+"/api.php/provide/vod",{ac:"detail",ids:i},this.getHeader()),s=await this.parseVodDetailfromJson(JSON.parse(l)),a=await this.fetch(s.vod_pic,null,this.getHeader(),!1,!1,2);return B.isEmpty(a)?JSON.stringify({code:500,buffer:2,content:"",headers:{}}):JSON.stringify({code:200,buffer:2,content:a,headers:{}})}}};var zw=class extends uo{constructor(){super(),this.siteUrl="https://haiwaikan.com",this.remove18=!0,this.type_id_18=0}async spiderInit(e){await super.spiderInit(e)}async init(e){await super.init(e),await this.spiderInit(null)}getAppName(){return"\u6D77\u5916\u770B"}getName(){return"\u2615\u2503\u6D77\u5916\u770B\u2503\u2615\u5899"}getJSName(){return"haiwaikan"}getType(){return 3}async setClasses(){let e=await this.fetch(this.siteUrl+"/api.php/provide/vod/from",{ac:"list"},this.getHeader()),n=JSON.parse(e);for(let r of n.class)r.type_id<26&&this.classes.push(this.getTypeDic(r.type_name,r.type_id.toString()));this.content_json=n}async getFilter(e,n){let r=[],i={key:"1",name:"\u5168\u90E8\u7C7B\u522B",value:[{n:"\u5168\u90E8\u7C7B\u522B",v:e.toString()}]};for(let l of n.class){let s=l.type_id,a=0,o=0;e===20&&(a=50,o=27),e===21&&(a=128,o=100),e===22&&(a=143,o=134),e===23&&(a=135,o=127),s<a&&s>o&&i.value.push({n:l.type_name,v:s.toString()})}return i.value.length>1?(r.push(i),r):null}async setFilterObj(){let e=await this.fetch(this.siteUrl+"/api.php/provide/vod/from",{ac:"list"},this.getHeader()),n=JSON.parse(e);for(let r of this.classes){let i=r.type_id;if(i!=="\u6700\u8FD1\u66F4\u65B0"){let l=await this.getFilter(parseInt(i),n);l!==null&&(this.filterObj[i]=l)}}}},mn=new zw;var Gw=class extends Re{constructor(){super()}getName(){return mn.getName()}getAppName(){return mn.getAppName()}getJSName(){return mn.getJSName()}async init(e,n){dataBase=e.server.db,this.getAppName().indexOf("\u963F\u91CC")>-1||this.getAppName()==="push_agent"?await mn.initAli(e.server.config.alitoken):this.getAppName()==="\u54D4\u54E9\u54D4\u54E9"&&await mn.initCookie(e.server.config.bilicookie),await mn.spiderInit(e),mn.cfgObj.code=0,mn.catOpenStatus=!0,mn.classes.push({type_name:"\u6700\u8FD1\u66F4\u65B0",type_id:"\u6700\u8FD1\u66F4\u65B0"}),await super.init(e,n)}async setClasses(){await mn.setClasses(),this.classes=mn.classes}async setFilterObj(){await mn.setFilterObj(),this.filterObj=mn.filterObj}async setHomeVod(){await mn.setHomeVod(),this.homeVodList=mn.homeVodList}async setCategory(e,n,r,i){await mn.setCategory(e,n,r,i),this.vodList=mn.vodList}async setDetail(e){await mn.setDetail(e),this.vodDetail=mn.vodDetail}async setPlay(e,n,r){await mn.setPlay(e,n,r),this.playUrl=mn.playUrl,this.result=mn.result}async setSearch(e,n,r){await mn.setSearch(e,n,r),this.vodList=mn.vodList,this.result=mn.result}async setProxy(e,n){return await mn.proxy(e,n)}},co=new Gw;async function _K(t,e){return await co.init(t,e)}async function EK(t,e){return await co.home(t,e)}async function cxe(t,e){return await co.homeVod(t,e)}async function bK(t,e){return await co.category(t,e)}async function wK(t,e){return await co.detail(t,e)}async function SK(t,e){return await co.play(t,e)}async function TK(t,e){return await co.search(t,e)}async function pxe(t,e){return await co.proxy(t,e)}var xK={meta:{key:mn.getJSName(),name:mn.getName(),type:mn.getType()},api:async t=>{t.post("/init",_K),t.post("/home",EK),t.post("/category",bK),t.post("/detail",wK),t.post("/play",SK),t.post("/search",TK),t.get("/proxy/:what/:ids/:end",pxe)},spider:{init:_K,home:EK,homeVod:cxe,category:bK,detail:wK,play:SK,search:TK}};function vf(t,e){let n=_f();return vf=function(r,i){return r=r-424,n[r]},vf(t,e)}function _f(){let t=["1580630GngmmA","117uvwflw","join","current_id","565448Apkhig","23092JwmytW","707152yowhOv","getElementById","855936CGaczt","length","2966831GCGpvn","611266nfcTEf","value","substring"];return _f=function(){return t},_f()}(function(t,e){let n=vf,r=t();for(;;)try{if(-parseInt(n(436))/1+parseInt(n(429))/2+-parseInt(n(433))/3*(-parseInt(n(437))/4)+-parseInt(n(432))/5+parseInt(n(426))/6+parseInt(n(428))/7+parseInt(n(424))/8===e)break;r.push(r.shift())}catch{r.push(r.shift())}})(_f,304089);function fxe(t,e){let n=vf,r=t,i=e;if(!r||!i)return;let l=r.length,s=r[n(431)](l-4,l),a=[];for(let o=0;o<s[n(427)];o++){let u=parseInt(s[o]),c=u%3+1;a[o]=i[n(431)](c,c+8),i=i[n(431)](c+8,i[n(427)])}return a[n(434)]("")}var Jw=class extends Fe{constructor(){super(),this.siteUrl="https://v.ikanbot.com"}getName(){return"\u{1F916}\u2503\u7231\u770B\u673A\u5668\u4EBA\u2503\u{1F916}"}getAppName(){return"\u7231\u770B\u673A\u5668\u4EBA"}getJSName(){return"ikanbot"}getType(){return 3}async spiderInit(e=null){e!==null?this.jsBase=await js2Proxy(e,"img",this.getHeader()):this.jsBase=await js2Proxy(!0,this.siteType,this.siteKey,"img/",this.getHeader())}async init(e){await super.init(e),await this.spiderInit(null)}async parseVodShortListFromDoc(e){let n=[],r=e(e('[class="row list-wp"]')).find("a");for(let i of r){let l=new Ne,s=e(i).find("img")[0];l.vod_id=i.attribs.href,l.vod_pic=this.jsBase+ti(s.attribs["data-src"]),l.vod_name=s.attribs.alt,n.push(l)}return n}getChildren(e,n){try{return e[n].children[0].data}catch{return""}}async parseVodDetailFromDoc(e){let n=e("div.detail > .meta"),r=new Be;r.vod_pic=this.jsBase+ti(e("div.item-root > img")[0].attribs["data-src"]),r.vod_name=this.getChildren(n,0),r.vod_year=this.getChildren(n,1),r.vod_area=this.getChildren(n,3),r.vod_actor=this.getChildren(n,4);let i=Te(/<input type="hidden" id="current_id" value="(.*?)"/,e.html()),l=Te(/<input type="hidden" id="e_token" value="(.*?)"/,e.html()),s=Te(/<input type="hidden" id="mtype" value="(.*?)"/,e.html()),a={videoId:i,mtype:s,token:fxe(i,l)},o=await this.fetch(this.siteUrl+"/api/getResN",a,this.getHeader()),u=JSON.parse(o).data.list,c={},f=0,m=[];for(let d of u){let y=JSON.parse(d.resData);for(let _ of y){f=f+1;let S=_.flag,w=_.url;!S||!w||c[S]||(m.push(`\u7EBF\u8DEF${f}`),c[S]=w)}}return r.vod_play_from=m.join("$$$"),r.vod_play_url=B.values(c).join("$$$"),r}async parseVodShortListFromDocBySearch(e){let n=[],r=e("div.media > div.media-left > a");for(let i of r){let l=new Ne,s=e(i).find("img:first")[0];l.vod_id=i.attribs.href,l.vod_name=s.attribs.alt,l.vod_pic=this.jsBase+ti(s.attribs["data-src"]),n.push(l)}return n}async setClasses(){let e=await this.fetch(this.siteUrl+"/category",null,this.getHeader());if(!B.isEmpty(e)){let n=$e(e),r=n(n(n('[class="row visible-xs-block visible-sm-block"]')).find("li")).find("a");for(let i of r)this.classes.push({type_name:n(i).text(),type_id:i.attribs.href})}}async setFilterObj(){for(let e of this.classes.slice(1,9)){let n=e.type_id;if(n.indexOf("category")===-1||n.indexOf(",")>-1){let r=n.split(",").slice(-1)[0],i=await this.fetch(this.siteUrl+r,null,this.getHeader());if(!B.isEmpty(i)){let l=$e(i),s=l('[class="row visible-xs-block visible-sm-block"]'),a=s.find('[class="nav nav-pills"]').find("a"),o=[];n.indexOf(",")>-1&&o.push({n:"\u5168\u90E8",v:n.split(",")[0]});let u={key:n,name:l(s.find("h5")).text(),value:o};for(let c of a)o.push({n:l(c).text(),v:c.attribs.href});o.length>0&&(this.filterObj[n]=[u])}}}}async setHomeVod(){let e=await this.fetch(this.siteUrl,null,this.getHeader());if(!B.isEmpty(e)){let n=$e(e);this.homeVodList=await this.parseVodShortListFromDoc(n)}}async setCategory(e,n,r,i){let l=this.siteUrl+(i[e]||e.split(",")[0]),s=!1;l.indexOf("html")>-1?l=l.replace(".html",n>1?`-p-${n}.html`:".html"):(l=l+`?p=${n}`,s=!0),await this.jadeLog.debug(`\u5206\u7C7BURL:${l}`);let a=await this.fetch(l,null,this.getHeader());if(!B.isEmpty(a)){let o=$e(a);this.vodList=await this.parseVodShortListFromDoc(o);let u=o("div.page-more > a:contains(\u4E0B\u4E00\u9875)");s&&(this.page=parseInt(u[0].attribs.href.split("p=")[1]));let c=u.length>0;this.limit=24,this.count=c?parseInt(n)+1:parseInt(n),this.total=this.limit*this.count}}async setDetail(e){let n=await this.fetch(this.siteUrl+e,null,this.getHeader());if(!B.isEmpty(n)){let r=$e(n);this.vodDetail=await this.parseVodDetailFromDoc(r)}}async setSearch(e,n){let r=await this.fetch(this.siteUrl+"/search?q="+e,null,this.getHeader());if(!B.isEmpty(r)){let i=$e(r);this.vodList=await this.parseVodShortListFromDocBySearch(i)}}async setPlay(e,n,r){this.playUrl=n}},yn=new Jw;var Kw=class extends Re{constructor(){super()}getName(){return yn.getName()}getAppName(){return yn.getAppName()}getJSName(){return yn.getJSName()}async init(e,n){dataBase=e.server.db,this.getAppName().indexOf("\u963F\u91CC")>-1||this.getAppName()==="push_agent"?await yn.initAli(e.server.config.alitoken):this.getAppName()==="\u54D4\u54E9\u54D4\u54E9"&&await yn.initCookie(e.server.config.bilicookie),await yn.spiderInit(e),yn.cfgObj.code=0,yn.catOpenStatus=!0,yn.classes.push({type_name:"\u6700\u8FD1\u66F4\u65B0",type_id:"\u6700\u8FD1\u66F4\u65B0"}),await super.init(e,n)}async setClasses(){await yn.setClasses(),this.classes=yn.classes}async setFilterObj(){await yn.setFilterObj(),this.filterObj=yn.filterObj}async setHomeVod(){await yn.setHomeVod(),this.homeVodList=yn.homeVodList}async setCategory(e,n,r,i){await yn.setCategory(e,n,r,i),this.vodList=yn.vodList}async setDetail(e){await yn.setDetail(e),this.vodDetail=yn.vodDetail}async setPlay(e,n,r){await yn.setPlay(e,n,r),this.playUrl=yn.playUrl,this.result=yn.result}async setSearch(e,n,r){await yn.setSearch(e,n,r),this.vodList=yn.vodList,this.result=yn.result}async setProxy(e,n){return await yn.proxy(e,n)}},po=new Kw;async function AK(t,e){return await po.init(t,e)}async function OK(t,e){return await po.home(t,e)}async function dxe(t,e){return await po.homeVod(t,e)}async function NK(t,e){return await po.category(t,e)}async function CK(t,e){return await po.detail(t,e)}async function RK(t,e){return await po.play(t,e)}async function IK(t,e){return await po.search(t,e)}async function hxe(t,e){return await po.proxy(t,e)}var kK={meta:{key:yn.getJSName(),name:yn.getName(),type:yn.getType()},api:async t=>{t.post("/init",AK),t.post("/home",OK),t.post("/category",NK),t.post("/detail",CK),t.post("/play",RK),t.post("/search",IK),t.get("/proxy/:what/:ids/:end",hxe)},spider:{init:AK,home:OK,homeVod:dxe,category:NK,detail:CK,play:RK,search:IK}};var Xw=class extends Fe{constructor(){super(),this.siteUrl="https://ali.gitcafe.ink"}getName(){return"\u{1F98A}\u2503\u963F\u91CC\u7EB8\u6761\u2503\u{1F98A}"}getAppName(){return"\u963F\u91CC\u7EB8\u6761"}getJSName(){return"gitcafe"}getType(){return 3}async getApiUrl(){let e=await this.fetch(this.siteUrl,null,this.getHeader());if(!B.isEmpty(e)){let n=Te(/<script src='(.*?)'><\/script>/,e),r=await this.fetch(n,null,this.getHeader());return{api:"https:"+Te(/ return '(.*?)' \+ /,r)+new Date().getTime(),search_api:Te(/const SEARCH_API = '(.*?)';/,r)}}}async getContentJson(){let e=await this.getApiUrl(),n=await this.fetch(e.api,null,this.getHeader());if(this.search_api=e.search_api,!B.isEmpty(n))return JSON.parse(n)}async spiderInit(){this.content_json=await this.getContentJson(),this.token_dic=await this.load_cache()}async init(e){await this.spiderInit(),await super.init(e),await qi(this.cfgObj.token)}async parseClassFromJson(e){let n=Object.keys(e.data).slice(0,19);for(let r of n)this.classes.push({type_name:e.data[r].name,type_id:r})}async parseVodShortListFromJson(e){let n=[],r=this.getClassIdList();for(let i of e){let l=new Ne;r.includes(i.cat)&&(l.vod_id=JSON.stringify(i),l.vod_name=i.title,l.vod_remarks=i.date,n.push(l))}return n}async parseVodDetailfromJson(e){let n=this.getClassNameList(),r=this.getClassIdList(),i=new Be;i.vod_name=e.title,i.vod_remarks=e.creatime??e.date,i.type_name=n[r.indexOf(e.cat)],i.vod_content=e.des;let l="https://www.aliyundrive.com/s/"+e.alikey,s=await Tl([l]);return i.vod_play_url=s.vod_play_url,i.vod_play_from=s.vod_play_from,i}async setClasses(){await this.parseClassFromJson(this.content_json)}async setHomeVod(){this.homeVodList=await this.parseVodShortListFromJson(this.content_json.info.new)}async setDetail(e){let n=JSON.parse(e);this.vodDetail=await this.parseVodDetailfromJson(n)}async setCategory(e,n,r,i){this.vodList=await this.parseVodShortListFromJson(this.content_json.data[e].catdata)}async setSearch(e,n){await this.refreshToken();let r={action:"search",from:"web",token:this.token_dic.token,keyword:e},i=await this.post(this.search_api,r,this.getHeader());if(!B.isEmpty(i)){let l=JSON.parse(i);this.vodList=await this.parseVodShortListFromJson(l.data)}}async refreshToken(){let e=new Date().getTime();B.isEmpty(this.token_dic.token)?(await this.get_token(),await this.jadeLog.debug("Token\u4E3A\u7A7A,\u5237\u65B0Token")):e-parseInt(this.token_dic.date)>24*60*60*1e3?(await this.jadeLog.debug(`Token\u5230\u671F,\u4E0A\u6B21\u83B7\u53D6Token\u65F6\u95F4\u4E3A:${e},\u5F53\u524D\u65F6\u95F4\u4E3A:${parseInt(this.token_dic.date)},\u5237\u65B0Token`),await this.get_token()):await this.jadeLog.debug("Token\u4ECD\u7136\u6709\u6548,\u65E0\u9700\u5237\u65B0",!0)}async get_token(){try{let e={action:"get_token",from:"web"},n=await this.post(this.search_api,e,this.getHeader());if(!B.isEmpty(n)){let r=JSON.parse(n),i=new Date().getTime();this.token_dic.token=r.data,this.token_dic.date=i.toString(),await this.write_cache()}}catch(e){await this.jadeLog.error("\u83B7\u53D6Token\u5931\u8D25,\u5931\u8D25\u539F\u56E0\u4E3A:"+e)}}async write_cache(){await local.set("gitcafe_token","token",JSON.stringify(this.token_dic))}async load_cache(){try{let e=await local.get("gitcafe_token","token");return JSON.parse(e)}catch{return{token:"",date:""}}}async play(e,n,r){return await xl(e,n,r)}},gn=new Xw;var Ww=class extends Re{constructor(){super()}getName(){return gn.getName()}getAppName(){return gn.getAppName()}getJSName(){return gn.getJSName()}async init(e,n){dataBase=e.server.db,this.getAppName().indexOf("\u963F\u91CC")>-1||this.getAppName()==="push_agent"?await gn.initAli(e.server.config.alitoken):this.getAppName()==="\u54D4\u54E9\u54D4\u54E9"&&await gn.initCookie(e.server.config.bilicookie),await gn.spiderInit(e),gn.cfgObj.code=0,gn.catOpenStatus=!0,gn.classes.push({type_name:"\u6700\u8FD1\u66F4\u65B0",type_id:"\u6700\u8FD1\u66F4\u65B0"}),await super.init(e,n)}async setClasses(){await gn.setClasses(),this.classes=gn.classes}async setFilterObj(){await gn.setFilterObj(),this.filterObj=gn.filterObj}async setHomeVod(){await gn.setHomeVod(),this.homeVodList=gn.homeVodList}async setCategory(e,n,r,i){await gn.setCategory(e,n,r,i),this.vodList=gn.vodList}async setDetail(e){await gn.setDetail(e),this.vodDetail=gn.vodDetail}async setPlay(e,n,r){await gn.setPlay(e,n,r),this.playUrl=gn.playUrl,this.result=gn.result}async setSearch(e,n,r){await gn.setSearch(e,n,r),this.vodList=gn.vodList,this.result=gn.result}async setProxy(e,n){return await gn.proxy(e,n)}},fo=new Ww;async function DK(t,e){return await fo.init(t,e)}async function PK(t,e){return await fo.home(t,e)}async function mxe(t,e){return await fo.homeVod(t,e)}async function LK(t,e){return await fo.category(t,e)}async function FK(t,e){return await fo.detail(t,e)}async function jK(t,e){return await fo.play(t,e)}async function UK(t,e){return await fo.search(t,e)}async function yxe(t,e){return await fo.proxy(t,e)}var MK={meta:{key:gn.getJSName(),name:gn.getName(),type:gn.getType()},api:async t=>{t.post("/init",DK),t.post("/home",PK),t.post("/category",LK),t.post("/detail",FK),t.post("/play",jK),t.post("/search",UK),t.get("/proxy/:what/:ids/:end",yxe)},spider:{init:DK,home:PK,homeVod:mxe,category:LK,detail:FK,play:jK,search:UK}};var z5=class extends Fe{constructor(){super(),this.siteUrl="http://op.ysdqjs.cn",this.cookie="",this.extendObj={extend:"\u7C7B\u578B",area:"\u5730\u533A",lang:"\u8BED\u8A00",year:"\u5E74\u4EE3"},this.parseMap={}}async request(e,n,r){let i={"User-Agent":zr};B.isEmpty(this.cookie)||(i.Cookie=this.cookie);let l=n==="post"?"form-data":"",s=await req(e,{method:n||"get",headers:i,data:r,postType:l});if(s.code===403){let a=s.data.match(/window\.location\.href ="(.*?)"/)[1];this.cookie=B.isArray(s.headers["set-cookie"])?s.headers["set-cookie"].join(";"):s.headers["set-cookie"],i.Cookie=this.cookie,s=await req(this.siteUrl+a,{method:n||"get",headers:i,data:r,postType:l})}return s.content}async postData(e,n){let r=Math.floor(new Date().getTime()/1e3),s={sign:md5X("kj5649ertj84ks89r4jh8s45hf84hjfds04k"+r).toString(),timestamp:r},a=n?B.merge(s,n):s;return await this.request(e,"post",a)}getName(){return"\u26C4\u2503\u5929\u5929\u5F71\u89C6\u2503\u26C4"}getAppName(){return"\u5929\u5929\u5F71\u89C6"}getJSName(){return"tiantian"}getType(){return 3}async init(e){await super.init(e),this.danmuStaus=!1}generateParam(e,n,r,i){let l={type_id:e,page:n,limit:i};return r.class&&(l.class=r.class),r.area&&(l.area=r.area),r.lang&&(l.lang=r.lang),r.year&&(l.year=r.year),l}async getFilter(e){let n=[];return Object.keys(e).forEach(r=>{if(Array.isArray(e[r])){let i={key:r,name:this.extendObj[r],value:[]};for(let l of e[r])i.value.push({n:l,v:l});n.push(i)}}),n}async setClasses(){let e=JSON.parse(await this.postData(this.siteUrl+"/v2/type/top_type"));for(let n of e.data.list){let r=n.type_name,i=n.type_id.toString();this.classes.push(this.getTypeDic(r,i)),this.filterObj[i]=await this.getFilter(n)}}async parseVodShortListFromJson(e){let n=[];for(let r of e){let i=new Ne;i.load_data(r),B.isEmpty(i.vod_pic)&&r.vod_pic_thumb!==void 0&&(i.vod_pic=r.vod_pic_thumb),i.vod_name!=="\u9996\u9875\u8F6E\u64AD"&&n.push(i)}return n}async parseVodDetailfromJson(e){let n=new Be;n.load_data(e),n.vod_content=Ep(n.vod_content);let r=e.vod_play_list,i={};return B.each(r,l=>{let s=l.name,a="",o=l.urls,u=l.parse_urls;B.isEmpty(u)||(this.parseMap[s]=u);let c=B.map(o,f=>{let m=f.name,d=f.url;return m+"$"+d});B.isEmpty(c)||(a=c.join("#"),i[s]=a)}),n.vod_play_from=B.keys(i).join("$$$"),n.vod_play_url=B.values(i).join("$$$"),n}async setHomeVod(){let e=JSON.parse(await this.postData(this.siteUrl+"/v2/type/tj_vod")),n=[];for(let r of e.data.type_vod)r.type_name!=="\u5E7F\u544A"&&(n=await this.parseVodShortListFromJson(r.vod),this.homeVodList=[...this.homeVodList,...n]);n=await this.parseVodShortListFromJson(e.data.loop),this.homeVodList=[...this.homeVodList,...n],n=await this.parseVodShortListFromJson(e.data.cai),this.homeVodList=[...this.homeVodList,...n]}async setCategory(e,n,r,i){let s=this.generateParam(e,n,i,12),a=JSON.parse(await this.postData(this.siteUrl+"/v2/home/type_search",s));this.vodList=await this.parseVodShortListFromJson(a.data.list)}async setDetail(e){let n={vod_id:e},r=JSON.parse(await this.postData(this.siteUrl+"/v2/home/vod_details",n));this.vodDetail=await this.parseVodDetailfromJson(r.data)}async setPlay(e,n,r){let i=this.parseMap[e];if((e.indexOf("\u8292\u679C")>-1||e.indexOf("\u817E\u8BAF")>-1||e.indexOf("\u7231\u5947\u827A")>-1)&&(this.danmuStaus=!0,this.catOpenStatus||(this.danmuUrl=await this.danmuSpider.downloadDanmu("https://dmku.thefilehosting.com/?ac=dm&url="+n))),!B.isEmpty(i)){for(let l of i)if(!B.isEmpty(l))try{let s=await this.request(l+n),a=JSON.parse(s);if(!B.isEmpty(a.url)){this.playUrl=a.url;break}}catch{}}}async setSearch(e,n,r){let l={keyword:e,page:r,limit:12},s=JSON.parse(await this.postData(this.siteUrl+"/v2/home/search",l));this.vodList=await this.parseVodShortListFromJson(s.data.list);let a=parseInt(r),o=a;this.vodList.length===12&&(o=a+1),this.result.setPage(a,o,12,o)}},vn=new z5;var Yw=class extends Re{constructor(){super()}getName(){return vn.getName()}getAppName(){return vn.getAppName()}getJSName(){return vn.getJSName()}async init(e,n){dataBase=e.server.db,this.getAppName().indexOf("\u963F\u91CC")>-1||this.getAppName()==="push_agent"?await vn.initAli(e.server.config.alitoken):this.getAppName()==="\u54D4\u54E9\u54D4\u54E9"&&await vn.initCookie(e.server.config.bilicookie),await vn.spiderInit(e),vn.cfgObj.code=0,vn.catOpenStatus=!0,vn.classes.push({type_name:"\u6700\u8FD1\u66F4\u65B0",type_id:"\u6700\u8FD1\u66F4\u65B0"}),await super.init(e,n)}async setClasses(){await vn.setClasses(),this.classes=vn.classes}async setFilterObj(){await vn.setFilterObj(),this.filterObj=vn.filterObj}async setHomeVod(){await vn.setHomeVod(),this.homeVodList=vn.homeVodList}async setCategory(e,n,r,i){await vn.setCategory(e,n,r,i),this.vodList=vn.vodList}async setDetail(e){await vn.setDetail(e),this.vodDetail=vn.vodDetail}async setPlay(e,n,r){await vn.setPlay(e,n,r),this.playUrl=vn.playUrl,this.result=vn.result}async setSearch(e,n,r){await vn.setSearch(e,n,r),this.vodList=vn.vodList,this.result=vn.result}async setProxy(e,n){return await vn.proxy(e,n)}},ho=new Yw;async function $K(t,e){return await ho.init(t,e)}async function BK(t,e){return await ho.home(t,e)}async function gxe(t,e){return await ho.homeVod(t,e)}async function HK(t,e){return await ho.category(t,e)}async function VK(t,e){return await ho.detail(t,e)}async function qK(t,e){return await ho.play(t,e)}async function zK(t,e){return await ho.search(t,e)}async function vxe(t,e){return await ho.proxy(t,e)}var GK={meta:{key:vn.getJSName(),name:vn.getName(),type:vn.getType()},api:async t=>{t.post("/init",$K),t.post("/home",BK),t.post("/category",HK),t.post("/detail",VK),t.post("/play",qK),t.post("/search",zK),t.get("/proxy/:what/:ids/:end",vxe)},spider:{init:$K,home:BK,homeVod:gxe,category:HK,detail:VK,play:qK,search:zK}};var Qw="abacdefghjklmnopqrstuvwxyzABCDEFGHJKLMNOPQRSTUVWXYZ0123456789";function Ef(t,e){let n="",r=e===void 0?!0:e;for(let i=0;i<t;i++){let l=B.random(0,r?Qw.length-1:Qw.length-11);n+=Qw[l]}return n}function _xe(){return{brand:"Huawei",model:"HUAWEI Mate 20",release:"10",buildId:Ef(3,!1).toUpperCase()+B.random(11,99)+Ef(1,!1).toUpperCase()}}function Exe(t,e){return e.trim().replaceAll(t,"").replace(/<|>|《|》/g,"").replace(/\$|#/g," ").trim()}function JK(t,e){try{let n=e.url??"";if(n.startsWith("//")&&(n="https:"+n),!n.startsWith("http"))return{};let r=e.headers||{},i=(e["user-agent"]||"").trim();i.length>0&&(r["User-Agent"]=i);let l=(e.referer||"").trim();return l.length>0&&(r.Referer=l),B.keys(r).forEach(s=>{r[s]||delete r[s]}),{header:r,url:n}}catch{}return{}}var Zw=class extends Fe{constructor(){super(),this.siteUrl="https://api1.baibaipei.com:8899",this.device={},this.parse=[]}getName(){return"\u{1F6E5}\uFE0E\u2503\u5FEB\u770B\u89C6\u9891\u2503\u{1F6E5}\uFE0E"}getAppName(){return"\u5FEB\u770B\u89C6\u9891"}getJSName(){return"kuaikan"}getType(){return 3}async init(e){await super.init(e),this.danmuStaus=!0,await this.setDevice()}async request(e,n,r,i){let l=DV().valueOf().toString(),s=Ef(32),a=Ve.enc.Hex.stringify(Ve.MD5("H58d2%gLbeingX*%D4Y8!C!!@G_"+l+"_"+s)).toString().toLowerCase(),o={"user-agent":r||this.device.ua};e.includes("baibaipei")&&(o["device-id"]=this.device.id,o.sign=a,o.time=l,o.md5=s,o.version="2.1.5",o["system-model"]=this.device.model,o["system-brand"]=this.device.brand,o["system-version"]=this.device.release,o.host="api1.baibaipei.com:8899"),i||(o["Content-Type"]="application/x-www-form-urlencoded");let u=await req(e,{method:i?"get":"post",headers:o,data:n||{},postType:"form"});await this.jadeLog.debug(`URL:${e},headers:${JSON.stringify(o)},data:${[JSON.stringify(n)]}`);let c=u.content;try{let f=Ve.enc.Utf8.parse("IjhHsCB2B5^#%0Ag"),m=Ve.enc.Utf8.parse("y8_m.3rauW/>j,}."),d=Ve.enc.Base64.parse(c),y=Ve.AES.decrypt({ciphertext:d},f,{iv:m,padding:Ve.pad.Pkcs7});return y=Ve.enc.Utf8.stringify(y),await this.jadeLog.debug(`response:${y}`),JSON.parse(y)}catch{return JSON.parse(c)}}async setDevice(){let e="device",n=await local.get(this.siteKey,e);if(n.length>0)try{this.device=JSON.parse(n)}catch{}B.isEmpty(this.device)&&(this.device=_xe(),this.device.id=Ef(13).toLowerCase(),this.device.ua="okhttp/3.14.9",await local.set(this.siteKey,e,JSON.stringify(this.device)))}async setClasses(){await this.setDevice();let e=await this.request(this.siteUrl+"/api.php/Index/getTopVideoCategory");for(let n of e.data){let r=n.nav_name;if(r==="\u63A8\u8350")continue;let i=n.nav_type_id.toString();this.classes.push({type_id:i,type_name:r})}}async getFilter(e){await this.jadeLog.debug(JSON.stringify(e));let n=[];for(let r of Object.keys(e)){let i=e[r];r==="plot"&&(r="class");let l="";switch(r){case"class":l="\u7C7B\u578B";break;case"area":l="\u5730\u533A";break;case"lang":l="\u8BED\u8A00";break;case"year":l="\u5E74\u4EE3";break;case"sort":l="\u6392\u5E8F";break}if(l.length===0)continue;let s={key:r,name:l},a=[];for(let o=0;o<i.length;o++){let u=i[o],c=r==="sort"?o+"":u==="\u5168\u90E8"?"0":u;a.push({n:u,v:c})}s.init=r==="sort"?"1":a[0].v,s.value=a,n.push(s)}return n}async setFilterObj(){for(let e of this.classes){let n=e.type_id;if(n!=="\u6700\u8FD1\u66F4\u65B0"){let r=await this.request(this.siteUrl+"/api.php/Video/getFilterType",{type:n});this.filterObj[n]=await this.getFilter(r.data)}}}async parseVodShortListFromJSONByHome(e){let n=[];for(let r of e.video){let i=await this.parseVodShortListFromJson(r.list);n.push(...i)}return n}async parseVodShortListFromJson(e){let n=[];for(let r of e){let i=new Ne;i.vod_id=r.vod_id,i.vod_name=r.vod_name,i.vod_pic=r.vod_pic,i.vod_remarks=r.vod_remarks,n.push(i)}return n}async parseVodDetailfromJson(e){let n=new Be;n.load_dic(JSON.stringify(e)),n.vod_content=e.vod_content.trim(),n.type_name=e.vod_class;let r={};for(let s of e.vod_play){let a=s.playerForm;if(a==="jp"&&this.catOpenStatus||a==="xg"&&this.catOpenStatus)continue;let o=[];for(let u of s.url)o.push(Exe(n.vod_name,u.title)+"$"+u.play_url);!r.hasOwnProperty(a)&&o.length>0&&(r[a]=o)}this.parse=e.parse||[],n.vod_play_from=B.keys(r).join("$$$");let i=B.values(r),l=[];for(let s of i)l.push(s.join("#"));return n.vod_play_url=l.join("$$$"),n}async setHomeVod(){let e=await this.request(this.siteUrl+"/api.php/Index/getHomePage",{p:"1",type:"1"});this.homeVodList=await this.parseVodShortListFromJSONByHome(e.data)}async setCategory(e,n,r,i){n===0&&(n=1);let l=this.siteUrl+"/api.php/Video/getFilterVideoList",s=JSON.parse(iu(`{
|
||||
`+t)}globalThis.req=axe;async function axe(t,e){try{let n=e&&e.data||null,r=e&&e.postType||null,i=e&&e.buffer||0,l=e&&e.timeout||5e3,s=(e&&e.redirect||1)===1,a=e.proxy??!1,o=e?e.headers||{}:{};r==="form"?(o["Content-Type"]="application/x-www-form-urlencoded",n!=null&&(n=mK.default.stringify(n,{encode:!1}))):r==="form-data"&&(o["Content-Type"]="multipart/form-data",n=oK(n));let u=i===1||i===2?"arraybuffer":void 0,c;a?c=vK.default.httpsOverHttp({proxy:{host:"127.0.0.1",port:7890}}):c=yK.default.Agent({rejectUnauthorized:!1});let f=await L0(t,{responseType:u,method:e&&e.method||"get",headers:o,data:n,timeout:l,maxRedirects:s?null:0,httpsAgent:c});n=f.data;let m={};for(let d of f.headers){let y=d[1];m[d[0]]=Array.isArray(y)&&y.length===1?y[0]:y}if(!i)typeof n=="object"&&(n=JSON.stringify(n));else{if(i===1)return{code:f.status,headers:m,content:n};if(i===2)return{code:f.status,headers:m,content:n.toString("base64")};if(i===3){let d=e.stream;return d.onResp&&await d.onResp({code:f.status,headers:m}),d.onData?(n.on("data",async y=>{await d.onData(y)}),n.on("end",async()=>{d.onDone&&await d.onDone()})):d.onDone&&await d.onDone(),"stream..."}}return{code:f.status,headers:m,content:n}}catch(n){let r=n.response;try{return{code:r.status,headers:r.headers,content:JSON.stringify(r.data)}}catch{return{headers:{},content:""}}}}globalThis.md5X=oxe;function oxe(t){return gK.default.createHash("md5").update(Buffer.from(t,"utf8")).digest("hex")}globalThis.js2Proxy=function(t,e,n){let r=Object.keys(n).length===0?" ":encodeURIComponent(JSON.stringify(n));return t.server.address().dynamic+t.server.prefix+"/proxy/"+encodeURIComponent(e)+"/"+r+"/"};var uxe=["DEBUG","INFO","WARNING","ERROR"];var j0=class{constructor(e,n="DEBUG"){this.app_name=e,this.level=n,this.level_index=uxe.indexOf(n)}format(e,n){let r=80;switch(e){case"INFO":r=r+1;break;case"WARNING":r=r-2;break;default:break}return n.length<r&&((r-n.length)%2===0?n="#".repeat(Math.floor((r-n.length)/2))+n+"#".repeat(Math.floor((r-n.length)/2)):n="#".repeat(Math.floor((r-n.length)/2))+n+"#".repeat(Math.floor((r-n.length)/2)+1)),n}getTime(){let e=new Date;return e.toLocaleDateString().replace(/\//g,"-")+" "+e.toTimeString().substr(0,8)+","+e.getMilliseconds().toString()}formatMessage(e,n,r){return r&&(n=this.format(e,n)),`${this.getTime()} - ${this.app_name} - ${e}: ${n}`}async log(e){console.debug(e),await req("http://127.0.0.1:8099/upload",{data:{log:e+`
|
||||
`},timeout:.1})}async info(e,n){this.level_index<=1&&await this.log(this.formatMessage("INFO",e,n))}async warning(e,n){this.level_index<=2&&await this.log(this.formatMessage("WARNING",e,n))}async error(e,n){this.level_index<=3&&await this.log(this.formatMessage("ERROR",e,n))}async debug(e,n){this.level_index<=0&&await this.log(this.formatMessage("DEBUG",e,n))}};var Re=class extends Fe{constructor(){super(),this.jadeLog=new j0(this.getAppName(),"DEBUG")}async init(e,n){await this.jadeLog.info("\u521D\u59CB\u5316",!0);try{await await req("http://127.0.0.1:8099/clear",{timeout:.1}),this.siteKey=this.getJSName(),this.siteType=this.getType(),this.cfgObj=e.server.config[this.siteKey],this.deviceKey=e.server.prefix+"/",this.db=e.server.db,this.catOpenStatus=!0,this.danmuStaus=!1;try{await this.loadFilterAndClasses()?await this.jadeLog.debug("\u8BFB\u53D6\u7F13\u5B58\u5217\u8868\u548C\u4E8C\u7EA7\u83DC\u5355\u6210\u529F"):(await this.jadeLog.warning("\u8BFB\u53D6\u7F13\u5B58\u5217\u8868\u548C\u4E8C\u7EA7\u83DC\u5355\u5931\u8D25"),await this.writeFilterAndClasses())}catch(r){await this.db.push(this.deviceKey+"classes",{}),await this.db.push(this.deviceKey+"filterObj",{}),await this.jadeLog.error("\u8BFB\u53D6\u7F13\u5B58\u5931\u8D25,\u5931\u8D25\u539F\u56E0\u4E3A:"+r,!1)}}catch(r){await this.jadeLog.error(`\u521D\u59CB\u5316\u5931\u8D25,\u5931\u8D25\u539F\u56E0\u4E3A:${r}`)}await this.jadeLog.info("\u521D\u59CB\u5316\u5B8C\u6210",!0)}async loadFilterAndClasses(){return this.classes=await this.getClassesCache(),this.filterObj=await this.getFiletObjCache(),this.classes.length>0?!0:(await this.db.push(this.deviceKey+"classes",{}),await this.db.push(this.deviceKey+"filterObj",{}),!1)}async writeFilterAndClasses(){this.catOpenStatus&&this.classes.push({type_name:"\u6700\u8FD1\u66F4\u65B0",type_id:"\u6700\u8FD1\u66F4\u65B0"}),await this.setClasses(),await this.setFilterObj(),await this.db.push(this.deviceKey+"classes",this.classes),await this.db.push(this.deviceKey+"filterObj",this.filterObj)}async getClassesCache(){let e=await this.db.getObjectDefault(this.deviceKey+"classes",{});return B.isEmpty(e)?this.classes:e}async getFiletObjCache(){let e=await this.db.getObjectDefault(this.deviceKey+"filterObj",{});return B.isEmpty(e)?this.filterObj:e}async home(e,n){return this.vodList=[],await this.jadeLog.info("\u6B63\u5728\u89E3\u6790\u9996\u9875\u7C7B\u522B",!0),await this.setHome(),await this.jadeLog.debug(`\u9996\u9875\u7C7B\u522B\u5185\u5BB9\u4E3A:${this.result.home(this.classes,[],this.filterObj)}`),await this.jadeLog.info("\u9996\u9875\u7C7B\u522B\u89E3\u6790\u5B8C\u6210",!0),this.result.home(this.classes,[],this.filterObj)}async homeVod(){await this.jadeLog.info("\u6B63\u5728\u89E3\u6790\u9996\u9875\u5185\u5BB9",!0);try{return await this.setHomeVod(),await this.jadeLog.debug(`\u9996\u9875\u5185\u5BB9\u4E3A:${this.result.homeVod(this.homeVodList)}`),await this.jadeLog.info("\u9996\u9875\u5185\u5BB9\u89E3\u6790\u5B8C\u6210",!0),this.result.homeVod(this.homeVodList)}catch(e){await this.jadeLog.error(`\u9996\u9875\u5185\u5BB9\u89E3\u6790\u5931\u8D25,\u5931\u8D25\u539F\u56E0\u4E3A:${e}`)}}async category(e,n){let r=e.body.id,i=e.body.page,l=!0,s=e.body.filters;if(this.page=parseInt(i),await this.jadeLog.info(`\u6B63\u5728\u89E3\u6790\u5206\u7C7B\u9875\u9762,tid = ${r},pg = ${i},extend = ${JSON.stringify(s)}`),r==="\u6700\u8FD1\u66F4\u65B0")return this.page=0,await this.homeVod();try{return this.vodList=[],await this.setCategory(r,i,l,s),await this.jadeLog.debug(`\u5206\u7C7B\u9875\u9762\u5185\u5BB9\u4E3A:${this.result.category(this.vodList,this.page,this.count,this.limit,this.total)}`),await this.jadeLog.info("\u5206\u7C7B\u9875\u9762\u89E3\u6790\u5B8C\u6210",!0),this.result.category(this.vodList,this.page,this.count,this.limit,this.total)}catch(a){await this.jadeLog.error(`\u5206\u7C7B\u9875\u89E3\u6790\u5931\u8D25,\u5931\u8D25\u539F\u56E0\u4E3A:${a}`)}}async detail(e,n){await this.jadeLog.debug(`\u83B7\u53D6\u8BE6\u60C5\u9875\u9762:${JSON.stringify(e.body)}`);let i=(Array.isArray(e.body.id)?e.body.id:[e.body.id])[0];this.vodDetail=new Be,await this.jadeLog.info(`\u6B63\u5728\u83B7\u53D6\u8BE6\u60C5\u9875\u9762,id\u4E3A:${i}`);try{return await this.setDetail(i),await this.jadeLog.debug(`\u8BE6\u60C5\u9875\u9762\u5185\u5BB9\u4E3A:${this.result.detail(this.vodDetail)}`),await this.jadeLog.info("\u8BE6\u60C5\u9875\u9762\u89E3\u6790\u5B8C\u6210",!0),this.vodDetail.vod_id=i,this.result.detail(this.vodDetail)}catch(l){await this.jadeLog.error("\u8BE6\u60C5\u754C\u9762\u83B7\u53D6\u5931\u8D25,\u5931\u8D25\u539F\u56E0\u4E3A:"+l)}}async play(e,n){let r=e.body.flag,i=e.body.id,l=[];await this.jadeLog.info(`\u6B63\u5728\u89E3\u6790\u64AD\u653E\u9875\u9762,flag:${r},id:${i},flags:${l}`,!0);try{let s;if(await this.setPlay(r,i,l),this.playUrl.content!==void 0)return this.playUrl;if(await this.jadeLog.debug("\u4E0D\u9700\u8981\u52A0\u8F7D\u5F39\u5E55",!0),this.result.jx===1&&this.playUrl.indexOf(".m3u8")<0){let a=await e.server.messageToDart({action:"sniff",opt:{url:i,timeout:6e4,rule:"http((?!http).){12,}?\\.m3u8?"}});if(a&&a.url){let o={};a.headers&&(a.headers["user-agent"]&&(o["User-Agent"]=a.headers["user-agent"]),a.headers.referer&&(o.Referer=a.headers.referer)),await this.jadeLog.debug(`\u55C5\u63A2\u6210\u529F,\u64AD\u653E\u8FDE\u63A5\u4E3A:${a.url}`),s=JSON.stringify({parse:0,url:a.url,header:a.headers,jx:"0"})}else await this.jadeLog.error("\u89E3\u6790\u5931\u8D25,\u65E0\u6CD5\u55C5\u63A2\u5230\u64AD\u653E\u8FDE\u63A5"),s=JSON.stringify({parse:0,url:"",jx:"0"})}else s=this.result.play(this.playUrl);return await this.jadeLog.info("\u64AD\u653E\u9875\u9762\u89E3\u6790\u5B8C\u6210",!0),await this.jadeLog.debug(`\u64AD\u653E\u9875\u9762\u5185\u5BB9\u4E3A:${s}`),s}catch(s){await this.jadeLog.error("\u89E3\u6790\u64AD\u653E\u9875\u9762\u51FA\u9519,\u5931\u8D25\u539F\u56E0\u4E3A:"+s)}}async search(e,n){let r=e.body.page,i=e.body.wd,l=!0;return this.vodList=[],await this.jadeLog.info(`\u6B63\u5728\u89E3\u6790\u641C\u7D22\u9875\u9762,\u5173\u952E\u8BCD\u4E3A = ${i},quick = ${l},pg = ${r}`),await this.setSearch(i,l,r),this.vodList.length===0&&i.indexOf(" ")>-1&&(await this.jadeLog.debug(`\u641C\u7D22\u5173\u952E\u8BCD\u4E3A:${i},\u5176\u4E2D\u6709\u7A7A\u683C,\u53BB\u9664\u7A7A\u683C\u5728\u641C\u7D22\u4E00\u6B21`),await this.search(i.replaceAll(" ","").replaceAll("?",""),l)),await this.jadeLog.debug(`\u641C\u7D22\u9875\u9762\u5185\u5BB9\u4E3A:${this.result.search(this.vodList)}`),await this.jadeLog.info("\u641C\u7D22\u9875\u9762\u89E3\u6790\u5B8C\u6210",!0),this.result.search(this.vodList)}async proxy(e,n){try{let r=e.params.what,i={};try{i=JSON.parse(e.params.ids)}catch{}let l=decodeURIComponent(e.params.end),s=JSON.parse(await this.setProxy([r,l],i));return r==="dash"?(await this.jadeLog.debug(`dash:${JSON.stringify(s)}`),n.code(s.code).headers(s.headers),s.content):s.code===200?(n.code(s.code).headers(s.headers),Buffer.from(s.content,"base64")):(n.code(500),"")}catch(r){await this.jadeLog.error(`\u4EE3\u7406\u56DE\u8C03\u5931\u8D25,\u5931\u8D25\u539F\u56E0\u4E3A:${r}`)}}};var uo=class extends Fe{constructor(){super(),this.siteUrl="http://cj.ffzyapi.com",this.remove18=!1,this.type_id_18=34}async spiderInit(e){e!==null?this.detailProxy=await js2Proxy(e,"detail",this.getHeader()):this.detailProxy=await js2Proxy(!0,this.siteType,this.siteKey,"detail/",this.getHeader())}async init(e){await super.init(e),await this.spiderInit(null)}async parseVodShortListFromJson(e,n=!1){let r=[],i;for(let l of e.list)n?(i=new Ne,i.vod_pic=this.detailProxy+ti(l.vod_id),i.vod_id=l.vod_id,i.vod_name=l.vod_name,i.vod_remarks=l.vod_remarks):i=this.parseVodDetail(l),this.remove18&&l.type_id!==this.type_id_18&&r.push(i),!this.remove18&&l.type_id===this.type_id_18&&r.push(i);return r}parseVodDetail(e){let n=new Be;n.vod_id=e.vod_id,n.vod_name=e.vod_name,n.vod_pic=e.vod_pic,n.vod_remarks=e.vod_remarks,n.vod_area=e.vod_area,n.vod_year=e.vod_year,n.vod_actor=e.vod_actor,n.vod_director=e.vod_director;let r=$e(e.vod_content);return n.vod_content=r.text(),e.vod_down_url!==void 0&&e.vod_down_url.length>0&&(n.vod_play_from="\u76F4\u94FE\u64AD\u653E$$$",n.vod_play_url=e.vod_down_url+"$$$"),n.vod_play_from=n.vod_play_from+e.vod_play_from,n.vod_play_url=n.vod_play_url+e.vod_play_url,n.type_name=e.type_name,n}async parseVodDetailfromJson(e){let n,r=e.list;if(r.length>0){let i=r[0];n=this.parseVodDetail(i)}return n}async setClasses(){let e=await this.fetch(this.siteUrl+"/api.php/provide/vod/from",{ac:"list"},this.getHeader()),n=JSON.parse(e);for(let r of n.class)r.type_pid!==0&&this.classes.push(this.getTypeDic(r.type_name,r.type_id))}async setFilterObj(){let e=await this.fetch(this.siteUrl+"/api.php/provide/vod/from",{ac:"list"},this.getHeader()),n=JSON.parse(e);for(let r of this.classes){let i=r.type_id.toString();if(i!=="\u6700\u8FD1\u66F4\u65B0"){let l={key:"1",name:"\u5206\u7C7B",value:[{n:"\u5168\u90E8",v:i}]};for(let s of n.class){let a=s.type_name;a===this.type_name_18&&(this.type_id_18=s.type_id.toString()),this.remove18?s.type_pid===r.type_id&&a!==this.type_name_18&&l.value.push({n:a,v:s.type_id.toString()}):s.type_pid===r.type_id&&a===this.type_name_18&&l.value.push({n:a,v:s.type_id.toString()})}this.remove18?this.filterObj[i]=[l]:this.classes=[this.getTypeDic("\u6700\u8FD1\u66F4\u65B0","\u6700\u8FD1\u66F4\u65B0"),this.getTypeDic(this.type_name_18,this.type_id_18)]}}}async setHomeVod(){let e=await this.fetch(this.siteUrl+"/index.php/ajax/data",{mid:"1"},this.getHeader());this.homeVodList=await this.parseVodShortListFromJson(JSON.parse(e))}async setDetail(e){let n=await this.fetch(this.siteUrl+"/api.php/provide/vod",{ac:"detail",ids:e},this.getHeader());this.vodDetail=await this.parseVodDetailfromJson(JSON.parse(n))}async setCategory(e,n,r,i){e=i[1]??e;let l=this.siteUrl+`/index.php/ajax/data?mid=1&tid=${e}&page=${n}&limit=20`;await this.jadeLog.debug(`\u5206\u7C7BURL:${l}`);let s=await this.fetch(l,null,this.getHeader());await this.jadeLog.debug(`\u5206\u7C7B\u5185\u5BB9\u4E3A:${s}`),this.vodList=await this.parseVodShortListFromJson(JSON.parse(s))}async setSearch(e,n){let r=await this.fetch(this.siteUrl+"/api.php/provide/vod/",{wd:e},this.getHeader());this.vodList=await this.parseVodShortListFromJson(JSON.parse(r),!0)}async proxy(e,n){await this.jadeLog.debug(`\u6B63\u5728\u8BBE\u7F6E\u53CD\u5411\u4EE3\u7406 segments = ${e.join(",")},headers = ${JSON.stringify(n)}`);let r=e[0],i=vi(e[1]);if(await this.jadeLog.debug(`\u53CD\u5411\u4EE3\u7406\u53C2\u6570\u4E3A:${i}`),r==="detail"){let l=await this.fetch(this.siteUrl+"/api.php/provide/vod",{ac:"detail",ids:i},this.getHeader()),s=await this.parseVodDetailfromJson(JSON.parse(l)),a=await this.fetch(s.vod_pic,null,this.getHeader(),!1,!1,2);return B.isEmpty(a)?JSON.stringify({code:500,buffer:2,content:"",headers:{}}):JSON.stringify({code:200,buffer:2,content:a,headers:{}})}}};var zw=class extends uo{constructor(){super(),this.siteUrl="https://haiwaikan.com",this.remove18=!0,this.type_id_18=0}async spiderInit(e){await super.spiderInit(e)}async init(e){await super.init(e),await this.spiderInit(null)}getAppName(){return"\u6D77\u5916\u770B"}getName(){return"\u2615\u2503\u6D77\u5916\u770B\u2503\u2615\u5899"}getJSName(){return"haiwaikan"}getType(){return 3}async setClasses(){let e=await this.fetch(this.siteUrl+"/api.php/provide/vod/from",{ac:"list"},this.getHeader()),n=JSON.parse(e);for(let r of n.class)r.type_id<26&&this.classes.push(this.getTypeDic(r.type_name,r.type_id.toString()));this.content_json=n}async getFilter(e,n){let r=[],i={key:"1",name:"\u5168\u90E8\u7C7B\u522B",value:[{n:"\u5168\u90E8\u7C7B\u522B",v:e.toString()}]};for(let l of n.class){let s=l.type_id,a=0,o=0;e===20&&(a=50,o=27),e===21&&(a=128,o=100),e===22&&(a=143,o=134),e===23&&(a=135,o=127),s<a&&s>o&&i.value.push({n:l.type_name,v:s.toString()})}return i.value.length>1?(r.push(i),r):null}async setFilterObj(){let e=await this.fetch(this.siteUrl+"/api.php/provide/vod/from",{ac:"list"},this.getHeader()),n=JSON.parse(e);for(let r of this.classes){let i=r.type_id;if(i!=="\u6700\u8FD1\u66F4\u65B0"){let l=await this.getFilter(parseInt(i),n);l!==null&&(this.filterObj[i]=l)}}}},mn=new zw;var Gw=class extends Re{constructor(){super()}getName(){return mn.getName()}getAppName(){return mn.getAppName()}getJSName(){return mn.getJSName()}async init(e,n){dataBase=e.server.db,this.getAppName().indexOf("\u963F\u91CC")>-1||this.getAppName()==="push_agent"?await mn.initAli(e.server.config.alitoken):this.getAppName()==="\u54D4\u54E9\u54D4\u54E9"&&await mn.initCookie(e.server.config.bilicookie),await mn.spiderInit(e),mn.cfgObj.code=0,mn.catOpenStatus=!0,mn.classes.push({type_name:"\u6700\u8FD1\u66F4\u65B0",type_id:"\u6700\u8FD1\u66F4\u65B0"}),await super.init(e,n)}async setClasses(){await mn.setClasses(),this.classes=mn.classes}async setFilterObj(){await mn.setFilterObj(),this.filterObj=mn.filterObj}async setHomeVod(){await mn.setHomeVod(),this.homeVodList=mn.homeVodList}async setCategory(e,n,r,i){await mn.setCategory(e,n,r,i),this.vodList=mn.vodList}async setDetail(e){await mn.setDetail(e),this.vodDetail=mn.vodDetail}async setPlay(e,n,r){await mn.setPlay(e,n,r),this.playUrl=mn.playUrl,this.result=mn.result}async setSearch(e,n,r){await mn.setSearch(e,n,r),this.vodList=mn.vodList,this.result=mn.result}async setProxy(e,n){return await mn.proxy(e,n)}},co=new Gw;async function _K(t,e){return await co.init(t,e)}async function EK(t,e){return await co.home(t,e)}async function cxe(t,e){return await co.homeVod(t,e)}async function bK(t,e){return await co.category(t,e)}async function wK(t,e){return await co.detail(t,e)}async function SK(t,e){return await co.play(t,e)}async function TK(t,e){return await co.search(t,e)}async function pxe(t,e){return await co.proxy(t,e)}var xK={meta:{key:mn.getJSName(),name:mn.getName(),type:mn.getType()},api:async t=>{t.post("/init",_K),t.post("/home",EK),t.post("/category",bK),t.post("/detail",wK),t.post("/play",SK),t.post("/search",TK),t.get("/proxy/:what/:ids/:end",pxe)},spider:{init:_K,home:EK,homeVod:cxe,category:bK,detail:wK,play:SK,search:TK}};function vf(t,e){let n=_f();return vf=function(r,i){return r=r-424,n[r]},vf(t,e)}function _f(){let t=["1580630GngmmA","117uvwflw","join","current_id","565448Apkhig","23092JwmytW","707152yowhOv","getElementById","855936CGaczt","length","2966831GCGpvn","611266nfcTEf","value","substring"];return _f=function(){return t},_f()}(function(t,e){let n=vf,r=t();for(;;)try{if(-parseInt(n(436))/1+parseInt(n(429))/2+-parseInt(n(433))/3*(-parseInt(n(437))/4)+-parseInt(n(432))/5+parseInt(n(426))/6+parseInt(n(428))/7+parseInt(n(424))/8===e)break;r.push(r.shift())}catch{r.push(r.shift())}})(_f,304089);function fxe(t,e){let n=vf,r=t,i=e;if(!r||!i)return;let l=r.length,s=r[n(431)](l-4,l),a=[];for(let o=0;o<s[n(427)];o++){let u=parseInt(s[o]),c=u%3+1;a[o]=i[n(431)](c,c+8),i=i[n(431)](c+8,i[n(427)])}return a[n(434)]("")}var Jw=class extends Fe{constructor(){super(),this.siteUrl="https://v.ikanbot.com"}getName(){return"\u{1F916}\u2503\u7231\u770B\u673A\u5668\u4EBA\u2503\u{1F916}"}getAppName(){return"\u7231\u770B\u673A\u5668\u4EBA"}getJSName(){return"ikanbot"}getType(){return 3}async spiderInit(e=null){e!==null?this.jsBase=await js2Proxy(e,"img",this.getHeader()):this.jsBase=await js2Proxy(!0,this.siteType,this.siteKey,"img/",this.getHeader())}async init(e){await super.init(e),await this.spiderInit(null)}async parseVodShortListFromDoc(e){let n=[],r=e(e('[class="row list-wp"]')).find("a");for(let i of r){let l=new Ne,s=e(i).find("img")[0];l.vod_id=i.attribs.href,l.vod_pic=this.jsBase+ti(s.attribs["data-src"]),l.vod_name=s.attribs.alt,n.push(l)}return n}getChildren(e,n){try{return e[n].children[0].data}catch{return""}}async parseVodDetailFromDoc(e){let n=e("div.detail > .meta"),r=new Be;r.vod_pic=this.jsBase+ti(e("div.item-root > img")[0].attribs["data-src"]),r.vod_name=this.getChildren(n,0),r.vod_year=this.getChildren(n,1),r.vod_area=this.getChildren(n,3),r.vod_actor=this.getChildren(n,4);let i=Te(/<input type="hidden" id="current_id" value="(.*?)"/,e.html()),l=Te(/<input type="hidden" id="e_token" value="(.*?)"/,e.html()),s=Te(/<input type="hidden" id="mtype" value="(.*?)"/,e.html()),a={videoId:i,mtype:s,token:fxe(i,l)},o=await this.fetch(this.siteUrl+"/api/getResN",a,this.getHeader()),u=JSON.parse(o).data.list,c={},f=0,m=[];for(let d of u){let y=JSON.parse(d.resData);for(let _ of y){f=f+1;let S=_.flag,w=_.url;!S||!w||c[S]||(m.push(`\u7EBF\u8DEF${f}`),c[S]=w)}}return r.vod_play_from=m.join("$$$"),r.vod_play_url=B.values(c).join("$$$"),r}async parseVodShortListFromDocBySearch(e){let n=[],r=e("div.media > div.media-left > a");for(let i of r){let l=new Ne,s=e(i).find("img:first")[0];l.vod_id=i.attribs.href,l.vod_name=s.attribs.alt,l.vod_pic=this.jsBase+ti(s.attribs["data-src"]),n.push(l)}return n}async setClasses(){let e=await this.fetch(this.siteUrl+"/category",null,this.getHeader());if(!B.isEmpty(e)){let n=$e(e),r=n(n(n('[class="row visible-xs-block visible-sm-block"]')).find("li")).find("a");for(let i of r)this.classes.push({type_name:n(i).text(),type_id:i.attribs.href})}}async setFilterObj(){for(let e of this.classes.slice(1,9)){let n=e.type_id;if(n.indexOf("category")===-1||n.indexOf(",")>-1){let r=n.split(",").slice(-1)[0],i=await this.fetch(this.siteUrl+r,null,this.getHeader());if(!B.isEmpty(i)){let l=$e(i),s=l('[class="row visible-xs-block visible-sm-block"]'),a=s.find('[class="nav nav-pills"]').find("a"),o=[];n.indexOf(",")>-1&&o.push({n:"\u5168\u90E8",v:n.split(",")[0]});let u={key:n,name:l(s.find("h5")).text(),value:o};for(let c of a)o.push({n:l(c).text(),v:c.attribs.href});o.length>0&&(this.filterObj[n]=[u])}}}}async setHomeVod(){let e=await this.fetch(this.siteUrl,null,this.getHeader());if(!B.isEmpty(e)){let n=$e(e);this.homeVodList=await this.parseVodShortListFromDoc(n)}}async setCategory(e,n,r,i){let l=this.siteUrl+(i[e]||e.split(",")[0]),s=!1;l.indexOf("html")>-1?l=l.replace(".html",n>1?`-p-${n}.html`:".html"):(l=l+`?p=${n}`,s=!0),await this.jadeLog.debug(`\u5206\u7C7BURL:${l}`);let a=await this.fetch(l,null,this.getHeader());if(!B.isEmpty(a)){let o=$e(a);this.vodList=await this.parseVodShortListFromDoc(o);let u=o("div.page-more > a:contains(\u4E0B\u4E00\u9875)");s&&(this.page=parseInt(u[0].attribs.href.split("p=")[1]));let c=u.length>0;this.limit=24,this.count=c?parseInt(n)+1:parseInt(n),this.total=this.limit*this.count}}async setDetail(e){let n=await this.fetch(this.siteUrl+e,null,this.getHeader());if(!B.isEmpty(n)){let r=$e(n);this.vodDetail=await this.parseVodDetailFromDoc(r)}}async setSearch(e,n){let r=await this.fetch(this.siteUrl+"/search?q="+e,null,this.getHeader());if(!B.isEmpty(r)){let i=$e(r);this.vodList=await this.parseVodShortListFromDocBySearch(i)}}async setPlay(e,n,r){this.playUrl=n}},yn=new Jw;var Kw=class extends Re{constructor(){super()}getName(){return yn.getName()}getAppName(){return yn.getAppName()}getJSName(){return yn.getJSName()}async init(e,n){dataBase=e.server.db,this.getAppName().indexOf("\u963F\u91CC")>-1||this.getAppName()==="push_agent"?await yn.initAli(e.server.config.alitoken):this.getAppName()==="\u54D4\u54E9\u54D4\u54E9"&&await yn.initCookie(e.server.config.bilicookie),await yn.spiderInit(e),yn.cfgObj.code=0,yn.catOpenStatus=!0,yn.classes.push({type_name:"\u6700\u8FD1\u66F4\u65B0",type_id:"\u6700\u8FD1\u66F4\u65B0"}),await super.init(e,n)}async setClasses(){await yn.setClasses(),this.classes=yn.classes}async setFilterObj(){await yn.setFilterObj(),this.filterObj=yn.filterObj}async setHomeVod(){await yn.setHomeVod(),this.homeVodList=yn.homeVodList}async setCategory(e,n,r,i){await yn.setCategory(e,n,r,i),this.vodList=yn.vodList}async setDetail(e){await yn.setDetail(e),this.vodDetail=yn.vodDetail}async setPlay(e,n,r){await yn.setPlay(e,n,r),this.playUrl=yn.playUrl,this.result=yn.result}async setSearch(e,n,r){await yn.setSearch(e,n,r),this.vodList=yn.vodList,this.result=yn.result}async setProxy(e,n){return await yn.proxy(e,n)}},po=new Kw;async function AK(t,e){return await po.init(t,e)}async function OK(t,e){return await po.home(t,e)}async function dxe(t,e){return await po.homeVod(t,e)}async function NK(t,e){return await po.category(t,e)}async function CK(t,e){return await po.detail(t,e)}async function RK(t,e){return await po.play(t,e)}async function IK(t,e){return await po.search(t,e)}async function hxe(t,e){return await po.proxy(t,e)}var kK={meta:{key:yn.getJSName(),name:yn.getName(),type:yn.getType()},api:async t=>{t.post("/init",AK),t.post("/home",OK),t.post("/category",NK),t.post("/detail",CK),t.post("/play",RK),t.post("/search",IK),t.get("/proxy/:what/:ids/:end",hxe)},spider:{init:AK,home:OK,homeVod:dxe,category:NK,detail:CK,play:RK,search:IK}};var Xw=class extends Fe{constructor(){super(),this.siteUrl="https://ali.gitcafe.ink"}getName(){return"\u{1F98A}\u2503\u963F\u91CC\u7EB8\u6761\u2503\u{1F98A}"}getAppName(){return"\u963F\u91CC\u7EB8\u6761"}getJSName(){return"gitcafe"}getType(){return 3}async getApiUrl(){let e=await this.fetch(this.siteUrl,null,this.getHeader());if(!B.isEmpty(e)){let n=Te(/<script src='(.*?)'><\/script>/,e),r=await this.fetch(n,null,this.getHeader());return{api:"https:"+Te(/ return '(.*?)' \+ /,r)+new Date().getTime(),search_api:Te(/const SEARCH_API = '(.*?)';/,r)}}}async getContentJson(){let e=await this.getApiUrl(),n=await this.fetch(e.api,null,this.getHeader());if(this.search_api=e.search_api,!B.isEmpty(n))return JSON.parse(n)}async spiderInit(){this.content_json=await this.getContentJson(),this.token_dic=await this.load_cache()}async init(e){await this.spiderInit(),await super.init(e),await qi(this.cfgObj.token)}async parseClassFromJson(e){let n=Object.keys(e.data).slice(0,19);for(let r of n)this.classes.push({type_name:e.data[r].name,type_id:r})}async parseVodShortListFromJson(e){let n=[],r=this.getClassIdList();for(let i of e){let l=new Ne;r.includes(i.cat)&&(l.vod_id=JSON.stringify(i),l.vod_name=i.title,l.vod_remarks=i.date,n.push(l))}return n}async parseVodDetailfromJson(e){let n=this.getClassNameList(),r=this.getClassIdList(),i=new Be;i.vod_name=e.title,i.vod_remarks=e.creatime??e.date,i.type_name=n[r.indexOf(e.cat)],i.vod_content=e.des;let l="https://www.aliyundrive.com/s/"+e.alikey,s=await Tl([l]);return i.vod_play_url=s.vod_play_url,i.vod_play_from=s.vod_play_from,i}async setClasses(){await this.parseClassFromJson(this.content_json)}async setHomeVod(){this.homeVodList=await this.parseVodShortListFromJson(this.content_json.info.new)}async setDetail(e){let n=JSON.parse(e);this.vodDetail=await this.parseVodDetailfromJson(n)}async setCategory(e,n,r,i){this.vodList=await this.parseVodShortListFromJson(this.content_json.data[e].catdata)}async setSearch(e,n){await this.refreshToken();let r={action:"search",from:"web",token:this.token_dic.token,keyword:e},i=await this.post(this.search_api,r,this.getHeader());if(!B.isEmpty(i)){let l=JSON.parse(i);this.vodList=await this.parseVodShortListFromJson(l.data)}}async refreshToken(){let e=new Date().getTime();B.isEmpty(this.token_dic.token)?(await this.get_token(),await this.jadeLog.debug("Token\u4E3A\u7A7A,\u5237\u65B0Token")):e-parseInt(this.token_dic.date)>24*60*60*1e3?(await this.jadeLog.debug(`Token\u5230\u671F,\u4E0A\u6B21\u83B7\u53D6Token\u65F6\u95F4\u4E3A:${e},\u5F53\u524D\u65F6\u95F4\u4E3A:${parseInt(this.token_dic.date)},\u5237\u65B0Token`),await this.get_token()):await this.jadeLog.debug("Token\u4ECD\u7136\u6709\u6548,\u65E0\u9700\u5237\u65B0",!0)}async get_token(){try{let e={action:"get_token",from:"web"},n=await this.post(this.search_api,e,this.getHeader());if(!B.isEmpty(n)){let r=JSON.parse(n),i=new Date().getTime();this.token_dic.token=r.data,this.token_dic.date=i.toString(),await this.write_cache()}}catch(e){await this.jadeLog.error("\u83B7\u53D6Token\u5931\u8D25,\u5931\u8D25\u539F\u56E0\u4E3A:"+e)}}async write_cache(){await local.set("gitcafe_token","token",JSON.stringify(this.token_dic))}async load_cache(){try{let e=await local.get("gitcafe_token","token");return JSON.parse(e)}catch{return{token:"",date:""}}}async play(e,n,r){return await xl(e,n,r)}},gn=new Xw;var Ww=class extends Re{constructor(){super()}getName(){return gn.getName()}getAppName(){return gn.getAppName()}getJSName(){return gn.getJSName()}async init(e,n){dataBase=e.server.db,this.getAppName().indexOf("\u963F\u91CC")>-1||this.getAppName()==="push_agent"?await gn.initAli(e.server.config.alitoken):this.getAppName()==="\u54D4\u54E9\u54D4\u54E9"&&await gn.initCookie(e.server.config.bilicookie),await gn.spiderInit(e),gn.cfgObj.code=0,gn.catOpenStatus=!0,gn.classes.push({type_name:"\u6700\u8FD1\u66F4\u65B0",type_id:"\u6700\u8FD1\u66F4\u65B0"}),await super.init(e,n)}async setClasses(){await gn.setClasses(),this.classes=gn.classes}async setFilterObj(){await gn.setFilterObj(),this.filterObj=gn.filterObj}async setHomeVod(){await gn.setHomeVod(),this.homeVodList=gn.homeVodList}async setCategory(e,n,r,i){await gn.setCategory(e,n,r,i),this.vodList=gn.vodList}async setDetail(e){await gn.setDetail(e),this.vodDetail=gn.vodDetail}async setPlay(e,n,r){await gn.setPlay(e,n,r),this.playUrl=gn.playUrl,this.result=gn.result}async setSearch(e,n,r){await gn.setSearch(e,n,r),this.vodList=gn.vodList,this.result=gn.result}async setProxy(e,n){return await gn.proxy(e,n)}},fo=new Ww;async function DK(t,e){return await fo.init(t,e)}async function PK(t,e){return await fo.home(t,e)}async function mxe(t,e){return await fo.homeVod(t,e)}async function LK(t,e){return await fo.category(t,e)}async function FK(t,e){return await fo.detail(t,e)}async function jK(t,e){return await fo.play(t,e)}async function UK(t,e){return await fo.search(t,e)}async function yxe(t,e){return await fo.proxy(t,e)}var MK={meta:{key:gn.getJSName(),name:gn.getName(),type:gn.getType()},api:async t=>{t.post("/init",DK),t.post("/home",PK),t.post("/category",LK),t.post("/detail",FK),t.post("/play",jK),t.post("/search",UK),t.get("/proxy/:what/:ids/:end",yxe)},spider:{init:DK,home:PK,homeVod:mxe,category:LK,detail:FK,play:jK,search:UK}};var z5=class extends Fe{constructor(){super(),this.siteUrl="http://op.ysdqjs.cn",this.cookie="",this.extendObj={extend:"\u7C7B\u578B",area:"\u5730\u533A",lang:"\u8BED\u8A00",year:"\u5E74\u4EE3"},this.parseMap={}}async request(e,n,r){let i={"User-Agent":zr};B.isEmpty(this.cookie)||(i.Cookie=this.cookie);let l=n==="post"?"form-data":"",s=await req(e,{method:n||"get",headers:i,data:r,postType:l});if(s.code===403){let a=s.data.match(/window\.location\.href ="(.*?)"/)[1];this.cookie=B.isArray(s.headers["set-cookie"])?s.headers["set-cookie"].join(";"):s.headers["set-cookie"],i.Cookie=this.cookie,s=await req(this.siteUrl+a,{method:n||"get",headers:i,data:r,postType:l})}return s.content}async postData(e,n){let r=Math.floor(new Date().getTime()/1e3),s={sign:md5X("kj5649ertj84ks89r4jh8s45hf84hjfds04k"+r).toString(),timestamp:r},a=n?B.merge(s,n):s;return await this.request(e,"post",a)}getName(){return"\u26C4\u2503\u5929\u5929\u5F71\u89C6\u2503\u26C4"}getAppName(){return"\u5929\u5929\u5F71\u89C6"}getJSName(){return"tiantian"}getType(){return 3}async init(e){await super.init(e),this.danmuStaus=!1}generateParam(e,n,r,i){let l={type_id:e,page:n,limit:i};return r.extend!==void 0&&r.extend!=="\u5168\u90E8"&&(l.class=r.extend),r.area!==void 0&&r.area!=="\u5168\u90E8"&&(l.area=r.area),r.lang!==void 0&&r.lang!=="\u5168\u90E8"&&(l.lang=r.lang),r.year!==void 0&&r.year!=="\u5168\u90E8"&&(l.year=r.year),l}async getFilter(e){let n=[];return Object.keys(e).forEach(r=>{if(Array.isArray(e[r])){let i={key:r,name:this.extendObj[r],value:[]},l=!1;for(let s of e[r])r==="year"&&!e[r].includes("2024")&&s!=="\u5168\u90E8"&&!l&&(i.value.push({n:"2024",v:"2024"}),l=!0),B.isEmpty(s)||i.value.push({n:s,v:s});i.value.length>1&&n.push(i)}}),n}async setClasses(){let e=JSON.parse(await this.postData(this.siteUrl+"/v2/type/top_type"));for(let n of e.data.list){let r=n.type_name,i=n.type_id.toString();this.classes.push(this.getTypeDic(r,i)),this.filterObj[i]=await this.getFilter(n)}}async parseVodShortListFromJson(e){let n=[];for(let r of e){let i=new Ne;i.load_data(r),B.isEmpty(i.vod_pic)&&r.vod_pic_thumb!==void 0&&(i.vod_pic=r.vod_pic_thumb),i.vod_name!=="\u9996\u9875\u8F6E\u64AD"&&n.push(i)}return n}async parseVodDetailfromJson(e){let n=new Be;n.load_data(e),n.vod_content=Ep(n.vod_content);let r=e.vod_play_list,i={};return B.each(r,l=>{let s=l.name,a="",o=l.urls,u=l.parse_urls;B.isEmpty(u)||(this.parseMap[s]=u);let c=B.map(o,f=>{let m=f.name,d=f.url;return m+"$"+d});B.isEmpty(c)||(a=c.join("#"),i[s]=a)}),n.vod_play_from=B.keys(i).join("$$$"),n.vod_play_url=B.values(i).join("$$$"),n}async setHomeVod(){let e=JSON.parse(await this.postData(this.siteUrl+"/v2/type/tj_vod")),n=[];for(let r of e.data.type_vod)r.type_name!=="\u5E7F\u544A"&&(n=await this.parseVodShortListFromJson(r.vod),this.homeVodList=[...this.homeVodList,...n]);n=await this.parseVodShortListFromJson(e.data.loop),this.homeVodList=[...this.homeVodList,...n],n=await this.parseVodShortListFromJson(e.data.cai),this.homeVodList=[...this.homeVodList,...n]}async setCategory(e,n,r,i){let s=this.generateParam(e,n,i,12),a=JSON.parse(await this.postData(this.siteUrl+"/v2/home/type_search",s));this.vodList=await this.parseVodShortListFromJson(a.data.list)}async setDetail(e){let n={vod_id:e},r=JSON.parse(await this.postData(this.siteUrl+"/v2/home/vod_details",n));this.vodDetail=await this.parseVodDetailfromJson(r.data)}async setPlay(e,n,r){let i=this.parseMap[e];if((e.indexOf("\u8292\u679C")>-1||e.indexOf("\u817E\u8BAF")>-1||e.indexOf("\u7231\u5947\u827A")>-1)&&(this.danmuStaus=!0,this.catOpenStatus||(this.danmuUrl=await this.danmuSpider.downloadDanmu("https://dmku.thefilehosting.com/?ac=dm&url="+n))),!B.isEmpty(i)){for(let l of i)if(!B.isEmpty(l))try{let s=await this.request(l+n),a=JSON.parse(s);if(!B.isEmpty(a.url)){this.playUrl=a.url;break}}catch{}}}async setSearch(e,n,r){let l={keyword:e,page:r,limit:12},s=JSON.parse(await this.postData(this.siteUrl+"/v2/home/search",l));this.vodList=await this.parseVodShortListFromJson(s.data.list);let a=parseInt(r),o=a;this.vodList.length===12&&(o=a+1),this.result.setPage(a,o,12,o)}},vn=new z5;var Yw=class extends Re{constructor(){super()}getName(){return vn.getName()}getAppName(){return vn.getAppName()}getJSName(){return vn.getJSName()}async init(e,n){dataBase=e.server.db,this.getAppName().indexOf("\u963F\u91CC")>-1||this.getAppName()==="push_agent"?await vn.initAli(e.server.config.alitoken):this.getAppName()==="\u54D4\u54E9\u54D4\u54E9"&&await vn.initCookie(e.server.config.bilicookie),await vn.spiderInit(e),vn.cfgObj.code=0,vn.catOpenStatus=!0,vn.classes.push({type_name:"\u6700\u8FD1\u66F4\u65B0",type_id:"\u6700\u8FD1\u66F4\u65B0"}),await super.init(e,n)}async setClasses(){await vn.setClasses(),this.classes=vn.classes}async setFilterObj(){await vn.setFilterObj(),this.filterObj=vn.filterObj}async setHomeVod(){await vn.setHomeVod(),this.homeVodList=vn.homeVodList}async setCategory(e,n,r,i){await vn.setCategory(e,n,r,i),this.vodList=vn.vodList}async setDetail(e){await vn.setDetail(e),this.vodDetail=vn.vodDetail}async setPlay(e,n,r){await vn.setPlay(e,n,r),this.playUrl=vn.playUrl,this.result=vn.result}async setSearch(e,n,r){await vn.setSearch(e,n,r),this.vodList=vn.vodList,this.result=vn.result}async setProxy(e,n){return await vn.proxy(e,n)}},ho=new Yw;async function $K(t,e){return await ho.init(t,e)}async function BK(t,e){return await ho.home(t,e)}async function gxe(t,e){return await ho.homeVod(t,e)}async function HK(t,e){return await ho.category(t,e)}async function VK(t,e){return await ho.detail(t,e)}async function qK(t,e){return await ho.play(t,e)}async function zK(t,e){return await ho.search(t,e)}async function vxe(t,e){return await ho.proxy(t,e)}var GK={meta:{key:vn.getJSName(),name:vn.getName(),type:vn.getType()},api:async t=>{t.post("/init",$K),t.post("/home",BK),t.post("/category",HK),t.post("/detail",VK),t.post("/play",qK),t.post("/search",zK),t.get("/proxy/:what/:ids/:end",vxe)},spider:{init:$K,home:BK,homeVod:gxe,category:HK,detail:VK,play:qK,search:zK}};var Qw="abacdefghjklmnopqrstuvwxyzABCDEFGHJKLMNOPQRSTUVWXYZ0123456789";function Ef(t,e){let n="",r=e===void 0?!0:e;for(let i=0;i<t;i++){let l=B.random(0,r?Qw.length-1:Qw.length-11);n+=Qw[l]}return n}function _xe(){return{brand:"Huawei",model:"HUAWEI Mate 20",release:"10",buildId:Ef(3,!1).toUpperCase()+B.random(11,99)+Ef(1,!1).toUpperCase()}}function Exe(t,e){return e.trim().replaceAll(t,"").replace(/<|>|《|》/g,"").replace(/\$|#/g," ").trim()}function JK(t,e){try{let n=e.url??"";if(n.startsWith("//")&&(n="https:"+n),!n.startsWith("http"))return{};let r=e.headers||{},i=(e["user-agent"]||"").trim();i.length>0&&(r["User-Agent"]=i);let l=(e.referer||"").trim();return l.length>0&&(r.Referer=l),B.keys(r).forEach(s=>{r[s]||delete r[s]}),{header:r,url:n}}catch{}return{}}var Zw=class extends Fe{constructor(){super(),this.siteUrl="https://api1.baibaipei.com:8899",this.device={},this.parse=[]}getName(){return"\u{1F6E5}\uFE0E\u2503\u5FEB\u770B\u89C6\u9891\u2503\u{1F6E5}\uFE0E"}getAppName(){return"\u5FEB\u770B\u89C6\u9891"}getJSName(){return"kuaikan"}getType(){return 3}async init(e){await super.init(e),this.danmuStaus=!0,await this.setDevice()}async request(e,n,r,i){let l=DV().valueOf().toString(),s=Ef(32),a=Ve.enc.Hex.stringify(Ve.MD5("H58d2%gLbeingX*%D4Y8!C!!@G_"+l+"_"+s)).toString().toLowerCase(),o={"user-agent":r||this.device.ua};e.includes("baibaipei")&&(o["device-id"]=this.device.id,o.sign=a,o.time=l,o.md5=s,o.version="2.1.5",o["system-model"]=this.device.model,o["system-brand"]=this.device.brand,o["system-version"]=this.device.release,o.host="api1.baibaipei.com:8899"),i||(o["Content-Type"]="application/x-www-form-urlencoded");let u=await req(e,{method:i?"get":"post",headers:o,data:n||{},postType:"form"});await this.jadeLog.debug(`URL:${e},headers:${JSON.stringify(o)},data:${[JSON.stringify(n)]}`);let c=u.content;try{let f=Ve.enc.Utf8.parse("IjhHsCB2B5^#%0Ag"),m=Ve.enc.Utf8.parse("y8_m.3rauW/>j,}."),d=Ve.enc.Base64.parse(c),y=Ve.AES.decrypt({ciphertext:d},f,{iv:m,padding:Ve.pad.Pkcs7});return y=Ve.enc.Utf8.stringify(y),await this.jadeLog.debug(`response:${y}`),JSON.parse(y)}catch{return JSON.parse(c)}}async setDevice(){let e="device",n=await local.get(this.siteKey,e);if(n.length>0)try{this.device=JSON.parse(n)}catch{}B.isEmpty(this.device)&&(this.device=_xe(),this.device.id=Ef(13).toLowerCase(),this.device.ua="okhttp/3.14.9",await local.set(this.siteKey,e,JSON.stringify(this.device)))}async setClasses(){await this.setDevice();let e=await this.request(this.siteUrl+"/api.php/Index/getTopVideoCategory");for(let n of e.data){let r=n.nav_name;if(r==="\u63A8\u8350")continue;let i=n.nav_type_id.toString();this.classes.push({type_id:i,type_name:r})}}async getFilter(e){await this.jadeLog.debug(JSON.stringify(e));let n=[];for(let r of Object.keys(e)){let i=e[r];r==="plot"&&(r="class");let l="";switch(r){case"class":l="\u7C7B\u578B";break;case"area":l="\u5730\u533A";break;case"lang":l="\u8BED\u8A00";break;case"year":l="\u5E74\u4EE3";break;case"sort":l="\u6392\u5E8F";break}if(l.length===0)continue;let s={key:r,name:l},a=[];for(let o=0;o<i.length;o++){let u=i[o],c=r==="sort"?o+"":u==="\u5168\u90E8"?"0":u;a.push({n:u,v:c})}s.init=r==="sort"?"1":a[0].v,s.value=a,n.push(s)}return n}async setFilterObj(){for(let e of this.classes){let n=e.type_id;if(n!=="\u6700\u8FD1\u66F4\u65B0"){let r=await this.request(this.siteUrl+"/api.php/Video/getFilterType",{type:n});this.filterObj[n]=await this.getFilter(r.data)}}}async parseVodShortListFromJSONByHome(e){let n=[];for(let r of e.video){let i=await this.parseVodShortListFromJson(r.list);n.push(...i)}return n}async parseVodShortListFromJson(e){let n=[];for(let r of e){let i=new Ne;i.vod_id=r.vod_id,i.vod_name=r.vod_name,i.vod_pic=r.vod_pic,i.vod_remarks=r.vod_remarks,n.push(i)}return n}async parseVodDetailfromJson(e){let n=new Be;n.load_dic(JSON.stringify(e)),n.vod_content=e.vod_content.trim(),n.type_name=e.vod_class;let r={};for(let s of e.vod_play){let a=s.playerForm;if(a==="jp"&&this.catOpenStatus||a==="xg"&&this.catOpenStatus)continue;let o=[];for(let u of s.url)o.push(Exe(n.vod_name,u.title)+"$"+u.play_url);!r.hasOwnProperty(a)&&o.length>0&&(r[a]=o)}this.parse=e.parse||[],n.vod_play_from=B.keys(r).join("$$$");let i=B.values(r),l=[];for(let s of i)l.push(s.join("#"));return n.vod_play_url=l.join("$$$"),n}async setHomeVod(){let e=await this.request(this.siteUrl+"/api.php/Index/getHomePage",{p:"1",type:"1"});this.homeVodList=await this.parseVodShortListFromJSONByHome(e.data)}async setCategory(e,n,r,i){n===0&&(n=1);let l=this.siteUrl+"/api.php/Video/getFilterVideoList",s=JSON.parse(iu(`{
|
||||
"type": "{{tid}}",
|
||||
"p": "{{pg}}",
|
||||
"area": "{{ext.area|default(0)}}",
|
||||
|
||||
Vendored
+1
-1
@@ -1 +1 @@
|
||||
6d76c79173d3e4328fc87a0d9d0001d3
|
||||
3fafbf5c659be0299f3d22455362a9db
|
||||
Reference in New Issue
Block a user