diff --git a/dist/1cinevood/stream.js b/dist/1cinevood/stream.js index 4062b28..f76c429 100644 --- a/dist/1cinevood/stream.js +++ b/dist/1cinevood/stream.js @@ -1 +1 @@ -"use strict";var __defProp=Object.defineProperty,__getOwnPropDesc=Object.getOwnPropertyDescriptor,__getOwnPropNames=Object.getOwnPropertyNames,__hasOwnProp=Object.prototype.hasOwnProperty,__name=(target,value)=>__defProp(target,"name",{value:value,configurable:!0}),__export=(target,all)=>{for(var name in all)__defProp(target,name,{get:all[name],enumerable:!0})},__copyProps=(to,from,except,desc)=>{if(from&&"object"==typeof from||"function"==typeof from)for(let key of __getOwnPropNames(from))__hasOwnProp.call(to,key)||key===except||__defProp(to,key,{get:()=>from[key],enumerable:!(desc=__getOwnPropDesc(from,key))||desc.enumerable});return to},__toCommonJS=mod=>__copyProps(__defProp({},"__esModule",{value:!0}),mod),__async=(__this,__arguments,generator)=>new Promise((resolve,reject)=>{var fulfilled=value=>{try{step(generator.next(value))}catch(e){reject(e)}},rejected=value=>{try{step(generator.throw(value))}catch(e){reject(e)}},step=x=>x.done?resolve(x.value):Promise.resolve(x.value).then(fulfilled,rejected);step((generator=generator.apply(__this,__arguments)).next())}),stream_exports={};__export(stream_exports,{getStream:()=>getStream});var hubcloudDecode=__name(function(value){return void 0===value?"":atob(value.toString())},"hubcloudDecode");function hubcloudExtractor(link,signal,axios,cheerio,headers){return __async(this,null,function*(){var _a,_b,_c,_d,_e,_f;try{headers.Cookie="ext_name=ojplmecpdpgccookcobabopnaifgidhf; xla=s4t; cf_clearance=woQrFGXtLfmEMBEiGUsVHrUBMT8s3cmguIzmMjmvpkg-1770053679-1.2.1.1-xBrQdciOJsweUF6F2T_OtH6jmyanN_TduQ0yslc_XqjU6RcHSxI7.YOKv6ry7oYo64868HYoULnVyww536H2eVI3R2e4wKzsky6abjPdfQPxqpUaXjxfJ02o6jl3_Vkwr4uiaU7Wy596Vdst3y78HXvVmKdIohhtPvp.vZ9_L7wvWdce0GRixjh_6JiqWmWMws46hwEt3hboaS1e1e4EoWCvj5b0M_jVwvSxBOAW5emFzvT3QrnRh4nyYmKDERnY",console.log("hubcloudExtractor",link),console.log("headers",headers);const baseUrl=link.split("/").slice(0,3).join("/"),streamLinks=[],vLinkText=(yield axios(`${link}`,{headers:headers,signal:signal})).data,$vLink=cheerio.load(vLinkText),vLinkRedirect=vLinkText.match(/var\s+url\s*=\s*'([^']+)';/)||[];let vcloudLink=hubcloudDecode(null==(_b=null==(_a=vLinkRedirect[1])?void 0:_a.split("r="))?void 0:_b[1])||vLinkRedirect[1]||$vLink(".fa-file-download.fa-lg").parent().attr("href")||link;console.log("vcloudLink",vcloudLink),(null==vcloudLink?void 0:vcloudLink.startsWith("/"))&&(vcloudLink=`${baseUrl}${vcloudLink}`,console.log("New vcloudLink",vcloudLink));const vcloudRes=yield fetch(vcloudLink,{headers:headers,signal:signal,redirect:"follow"}),$=cheerio.load(yield vcloudRes.text()),linkClass=$(".btn-success.btn-lg.h6,.btn-danger,.btn-secondary");for(const element of linkClass){let link2=$(element).attr("href")||"";switch(!0){case null==link2?void 0:link2.includes("pixeld"):if(!(null==link2?void 0:link2.includes("api"))){const token=link2.split("/").pop(),baseUrl2=link2.split("/").slice(0,-2).join("/");link2=`${baseUrl2}/api/file/${token}`}streamLinks.push({server:"Pixeldrain",link:link2,type:"mkv"});break;case(null==link2?void 0:link2.includes(".dev"))&&!(null==link2?void 0:link2.includes("/?id=")):streamLinks.push({server:"Cf Worker",link:link2,type:"mkv"});break;case(null==link2?void 0:link2.includes("hubcloud"))||(null==link2?void 0:link2.includes("/?id=")):try{const newLinkRes=yield fetch(link2,{method:"HEAD",headers:headers,signal:signal,redirect:"manual"});let newLink=link2;if(newLink=newLinkRes.status>=300&&newLinkRes.status<400?newLinkRes.headers.get("location")||link2:newLinkRes.url&&newLinkRes.url!==link2?newLinkRes.url:newLinkRes.headers.get("location")||link2,newLink.includes("googleusercontent"))newLink=newLink.split("?link=")[1];else{const newLinkRes2=yield fetch(newLink,{method:"HEAD",headers:headers,signal:signal,redirect:"manual"});newLink=newLinkRes2.status>=300&&newLinkRes2.status<400?(null==(_c=newLinkRes2.headers.get("location"))?void 0:_c.split("?link=")[1])||newLink:newLinkRes2.url&&newLinkRes2.url!==newLink?newLinkRes2.url.split("?link=")[1]||newLinkRes2.url:(null==(_d=newLinkRes2.headers.get("location"))?void 0:_d.split("?link=")[1])||newLink}streamLinks.push({server:"hubcloud",link:newLink,type:"mkv"})}catch(error){console.log("hubcloudExtractor error in hubcloud link: ",error)}break;case null==link2?void 0:link2.includes("cloudflarestorage"):streamLinks.push({server:"CfStorage",link:link2,type:"mkv"});break;case(null==link2?void 0:link2.includes("fastdl"))||(null==link2?void 0:link2.includes("fsl.")):streamLinks.push({server:"FastDl",link:link2,type:"mkv"});break;case link2.includes("hubcdn")&&!link2.includes("/?id="):streamLinks.push({server:"HubCdn",link:link2,type:"mkv"});break;default:if((null==link2?void 0:link2.includes(".mkv"))||(null==link2?void 0:link2.includes("?token="))){const serverName=(null==(_f=null==(_e=link2.match(/^(?:https?:\/\/)?(?:www\.)?([^\/]+)/i))?void 0:_e[1])?void 0:_f.replace(/\./g," "))||"Unknown";streamLinks.push({server:serverName,link:link2,type:"mkv"})}}}return console.log("streamLinks",streamLinks),streamLinks}catch(error){return console.log("hubcloudExtractor error: ",(null==error?void 0:error.message)||error),[]}})}function getStream(_0){return __async(this,arguments,function*({link:link,type:type,signal:signal,providerContext:providerContext}){const{axios:axios,cheerio:cheerio,commonHeaders:commonHeaders}=providerContext;try{return yield hubcloudExtractor(link,signal,axios,cheerio,commonHeaders)}catch(error){return console.log("getStream error: ",error),error.message.includes("Aborted"),[]}})}__name(hubcloudExtractor,"hubcloudExtractor"),__name(getStream,"getStream"),exports.getStream=getStream; \ No newline at end of file +"use strict";var __defProp=Object.defineProperty,__getOwnPropDesc=Object.getOwnPropertyDescriptor,__getOwnPropNames=Object.getOwnPropertyNames,__hasOwnProp=Object.prototype.hasOwnProperty,__name=(target,value)=>__defProp(target,"name",{value:value,configurable:!0}),__export=(target,all)=>{for(var name in all)__defProp(target,name,{get:all[name],enumerable:!0})},__copyProps=(to,from,except,desc)=>{if(from&&"object"==typeof from||"function"==typeof from)for(let key of __getOwnPropNames(from))__hasOwnProp.call(to,key)||key===except||__defProp(to,key,{get:()=>from[key],enumerable:!(desc=__getOwnPropDesc(from,key))||desc.enumerable});return to},__toCommonJS=mod=>__copyProps(__defProp({},"__esModule",{value:!0}),mod),__async=(__this,__arguments,generator)=>new Promise((resolve,reject)=>{var fulfilled=value=>{try{step(generator.next(value))}catch(e){reject(e)}},rejected=value=>{try{step(generator.throw(value))}catch(e){reject(e)}},step=x=>x.done?resolve(x.value):Promise.resolve(x.value).then(fulfilled,rejected);step((generator=generator.apply(__this,__arguments)).next())}),stream_exports={};__export(stream_exports,{getStream:()=>getStream});var hubcloudDecode=__name(function(value){return void 0===value?"":atob(value.toString())},"hubcloudDecode"),getPixelDrainUrl=__name(html=>{const match=html.match(/var\s+pxl\s*=\s*['"]([^'"]+)['"];?/i);return(null==match?void 0:match[1])||""},"getPixelDrainUrl"),getRedirectedPixelDrainUrl=__name((...htmlSources)=>{for(const html of htmlSources){if(!html)continue;const redirectedUrl=getPixelDrainUrl(html);if(redirectedUrl)return redirectedUrl}return""},"getRedirectedPixelDrainUrl");function hubcloudExtractor(link,signal,axios,cheerio,headers){return __async(this,null,function*(){var _a,_b,_c,_d,_e,_f,_g;try{headers.Cookie="ext_name=ojplmecpdpgccookcobabopnaifgidhf; xla=s4t; cf_clearance=woQrFGXtLfmEMBEiGUsVHrUBMT8s3cmguIzmMjmvpkg-1770053679-1.2.1.1-xBrQdciOJsweUF6F2T_OtH6jmyanN_TduQ0yslc_XqjU6RcHSxI7.YOKv6ry7oYo64868HYoULnVyww536H2eVI3R2e4wKzsky6abjPdfQPxqpUaXjxfJ02o6jl3_Vkwr4uiaU7Wy596Vdst3y78HXvVmKdIohhtPvp.vZ9_L7wvWdce0GRixjh_6JiqWmWMws46hwEt3hboaS1e1e4EoWCvj5b0M_jVwvSxBOAW5emFzvT3QrnRh4nyYmKDERnY",console.log("hubcloudExtractor",link);const baseUrl=link.split("/").slice(0,3).join("/"),streamLinks=[],vLinkText=(yield axios(`${link}`,{headers:headers,signal:signal})).data,$vLink=cheerio.load(vLinkText),vLinkRedirect=vLinkText.match(/var\s+url\s*=\s*'([^']+)';/)||[];let vcloudLink=hubcloudDecode(null==(_b=null==(_a=vLinkRedirect[1])?void 0:_a.split("r="))?void 0:_b[1])||vLinkRedirect[1]||$vLink(".fa-file-download.fa-lg").parent().attr("href")||link;console.log("vcloudLink",vcloudLink),(null==vcloudLink?void 0:vcloudLink.startsWith("/"))&&(vcloudLink=`${baseUrl}${vcloudLink}`,console.log("New vcloudLink",vcloudLink));const vcloudRes=yield fetch(vcloudLink,{headers:headers,signal:signal,redirect:"follow"}),vcloudText=yield vcloudRes.text(),$=cheerio.load(vcloudText),linkClass=$(".btn-success.btn-lg.h6,.btn-danger,.btn-secondary");for(const element of linkClass){let link2=$(element).attr("href")||"";switch(!0){case null==link2?void 0:link2.includes("pixeld"):if(console.log("Pixeldrain link found:",link2),!(null==link2?void 0:link2.includes("api"))){const redirectedPixelDrainUrl=getRedirectedPixelDrainUrl(vLinkText,vcloudText);redirectedPixelDrainUrl&&(console.log("Special case for token negn6f",redirectedPixelDrainUrl),link2=redirectedPixelDrainUrl);const token=null==(_c=link2.split("/").pop())?void 0:_c.split("?")[0],baseUrl2=link2.split("/").slice(0,-2).join("/");link2=`${baseUrl2}/api/file/${token}`}streamLinks.push({server:"Pixeldrain",link:link2,type:"mkv"});break;case(null==link2?void 0:link2.includes(".dev"))&&!(null==link2?void 0:link2.includes("/?id=")):streamLinks.push({server:"Cf Worker",link:link2,type:"mkv"});break;case(null==link2?void 0:link2.includes("hubcloud"))||(null==link2?void 0:link2.includes("/?id=")):try{const newLinkRes=yield fetch(link2,{method:"HEAD",headers:headers,signal:signal,redirect:"manual"});let newLink=link2;if(newLink=newLinkRes.status>=300&&newLinkRes.status<400?newLinkRes.headers.get("location")||link2:newLinkRes.url&&newLinkRes.url!==link2?newLinkRes.url:newLinkRes.headers.get("location")||link2,newLink.includes("googleusercontent"))newLink=newLink.split("?link=")[1];else{const newLinkRes2=yield fetch(newLink,{method:"HEAD",headers:headers,signal:signal,redirect:"manual"});newLink=newLinkRes2.status>=300&&newLinkRes2.status<400?(null==(_d=newLinkRes2.headers.get("location"))?void 0:_d.split("?link=")[1])||newLink:newLinkRes2.url&&newLinkRes2.url!==newLink?newLinkRes2.url.split("?link=")[1]||newLinkRes2.url:(null==(_e=newLinkRes2.headers.get("location"))?void 0:_e.split("?link=")[1])||newLink}streamLinks.push({server:"hubcloud",link:newLink,type:"mkv"})}catch(error){console.log("hubcloudExtractor error in hubcloud link: ",error)}break;case null==link2?void 0:link2.includes("cloudflarestorage"):streamLinks.push({server:"CfStorage",link:link2,type:"mkv"});break;case(null==link2?void 0:link2.includes("fastdl"))||(null==link2?void 0:link2.includes("fsl.")):streamLinks.push({server:"FastDl",link:link2,type:"mkv"});break;case link2.includes("hubcdn")&&!link2.includes("/?id="):streamLinks.push({server:"HubCdn",link:link2,type:"mkv"});break;default:if((null==link2?void 0:link2.includes(".mkv"))||(null==link2?void 0:link2.includes("?token="))){const serverName=(null==(_g=null==(_f=link2.match(/^(?:https?:\/\/)?(?:www\.)?([^\/]+)/i))?void 0:_f[1])?void 0:_g.replace(/\./g," "))||"Unknown";streamLinks.push({server:serverName,link:link2,type:"mkv"})}}}return console.log("streamLinks",streamLinks),streamLinks}catch(error){return console.log("hubcloudExtractor error: ",(null==error?void 0:error.message)||error),[]}})}function getStream(_0){return __async(this,arguments,function*({link:link,type:type,signal:signal,providerContext:providerContext}){const{axios:axios,cheerio:cheerio,commonHeaders:commonHeaders}=providerContext;try{return yield hubcloudExtractor(link,signal,axios,cheerio,commonHeaders)}catch(error){return console.log("getStream error: ",error),error.message.includes("Aborted"),[]}})}__name(hubcloudExtractor,"hubcloudExtractor"),__name(getStream,"getStream"),exports.getStream=getStream; \ No newline at end of file diff --git a/dist/4khdhub/stream.js b/dist/4khdhub/stream.js index 598ec9d..12beec9 100644 --- a/dist/4khdhub/stream.js +++ b/dist/4khdhub/stream.js @@ -1 +1 @@ -"use strict";var __defProp=Object.defineProperty,__getOwnPropDesc=Object.getOwnPropertyDescriptor,__getOwnPropNames=Object.getOwnPropertyNames,__hasOwnProp=Object.prototype.hasOwnProperty,__name=(target,value)=>__defProp(target,"name",{value:value,configurable:!0}),__export=(target,all)=>{for(var name in all)__defProp(target,name,{get:all[name],enumerable:!0})},__copyProps=(to,from,except,desc)=>{if(from&&"object"==typeof from||"function"==typeof from)for(let key of __getOwnPropNames(from))__hasOwnProp.call(to,key)||key===except||__defProp(to,key,{get:()=>from[key],enumerable:!(desc=__getOwnPropDesc(from,key))||desc.enumerable});return to},__toCommonJS=mod=>__copyProps(__defProp({},"__esModule",{value:!0}),mod),__async=(__this,__arguments,generator)=>new Promise((resolve,reject)=>{var fulfilled=value=>{try{step(generator.next(value))}catch(e){reject(e)}},rejected=value=>{try{step(generator.throw(value))}catch(e){reject(e)}},step=x=>x.done?resolve(x.value):Promise.resolve(x.value).then(fulfilled,rejected);step((generator=generator.apply(__this,__arguments)).next())}),stream_exports={};__export(stream_exports,{decodeString:()=>decodeString,getRedirectLinks:()=>getRedirectLinks,getStream:()=>getStream});var hubcloudDecode=__name(function(value){return void 0===value?"":atob(value.toString())},"hubcloudDecode");function hubcloudExtractor(link,signal,axios,cheerio,headers){return __async(this,null,function*(){var _a,_b,_c,_d,_e,_f;try{headers.Cookie="ext_name=ojplmecpdpgccookcobabopnaifgidhf; xla=s4t; cf_clearance=woQrFGXtLfmEMBEiGUsVHrUBMT8s3cmguIzmMjmvpkg-1770053679-1.2.1.1-xBrQdciOJsweUF6F2T_OtH6jmyanN_TduQ0yslc_XqjU6RcHSxI7.YOKv6ry7oYo64868HYoULnVyww536H2eVI3R2e4wKzsky6abjPdfQPxqpUaXjxfJ02o6jl3_Vkwr4uiaU7Wy596Vdst3y78HXvVmKdIohhtPvp.vZ9_L7wvWdce0GRixjh_6JiqWmWMws46hwEt3hboaS1e1e4EoWCvj5b0M_jVwvSxBOAW5emFzvT3QrnRh4nyYmKDERnY",console.log("hubcloudExtractor",link),console.log("headers",headers);const baseUrl=link.split("/").slice(0,3).join("/"),streamLinks=[],vLinkText=(yield axios(`${link}`,{headers:headers,signal:signal})).data,$vLink=cheerio.load(vLinkText),vLinkRedirect=vLinkText.match(/var\s+url\s*=\s*'([^']+)';/)||[];let vcloudLink=hubcloudDecode(null==(_b=null==(_a=vLinkRedirect[1])?void 0:_a.split("r="))?void 0:_b[1])||vLinkRedirect[1]||$vLink(".fa-file-download.fa-lg").parent().attr("href")||link;console.log("vcloudLink",vcloudLink),(null==vcloudLink?void 0:vcloudLink.startsWith("/"))&&(vcloudLink=`${baseUrl}${vcloudLink}`,console.log("New vcloudLink",vcloudLink));const vcloudRes=yield fetch(vcloudLink,{headers:headers,signal:signal,redirect:"follow"}),$=cheerio.load(yield vcloudRes.text()),linkClass=$(".btn-success.btn-lg.h6,.btn-danger,.btn-secondary");for(const element of linkClass){let link2=$(element).attr("href")||"";switch(!0){case null==link2?void 0:link2.includes("pixeld"):if(!(null==link2?void 0:link2.includes("api"))){const token=link2.split("/").pop(),baseUrl2=link2.split("/").slice(0,-2).join("/");link2=`${baseUrl2}/api/file/${token}`}streamLinks.push({server:"Pixeldrain",link:link2,type:"mkv"});break;case(null==link2?void 0:link2.includes(".dev"))&&!(null==link2?void 0:link2.includes("/?id=")):streamLinks.push({server:"Cf Worker",link:link2,type:"mkv"});break;case(null==link2?void 0:link2.includes("hubcloud"))||(null==link2?void 0:link2.includes("/?id=")):try{const newLinkRes=yield fetch(link2,{method:"HEAD",headers:headers,signal:signal,redirect:"manual"});let newLink=link2;if(newLink=newLinkRes.status>=300&&newLinkRes.status<400?newLinkRes.headers.get("location")||link2:newLinkRes.url&&newLinkRes.url!==link2?newLinkRes.url:newLinkRes.headers.get("location")||link2,newLink.includes("googleusercontent"))newLink=newLink.split("?link=")[1];else{const newLinkRes2=yield fetch(newLink,{method:"HEAD",headers:headers,signal:signal,redirect:"manual"});newLink=newLinkRes2.status>=300&&newLinkRes2.status<400?(null==(_c=newLinkRes2.headers.get("location"))?void 0:_c.split("?link=")[1])||newLink:newLinkRes2.url&&newLinkRes2.url!==newLink?newLinkRes2.url.split("?link=")[1]||newLinkRes2.url:(null==(_d=newLinkRes2.headers.get("location"))?void 0:_d.split("?link=")[1])||newLink}streamLinks.push({server:"hubcloud",link:newLink,type:"mkv"})}catch(error){console.log("hubcloudExtractor error in hubcloud link: ",error)}break;case null==link2?void 0:link2.includes("cloudflarestorage"):streamLinks.push({server:"CfStorage",link:link2,type:"mkv"});break;case(null==link2?void 0:link2.includes("fastdl"))||(null==link2?void 0:link2.includes("fsl.")):streamLinks.push({server:"FastDl",link:link2,type:"mkv"});break;case link2.includes("hubcdn")&&!link2.includes("/?id="):streamLinks.push({server:"HubCdn",link:link2,type:"mkv"});break;default:if((null==link2?void 0:link2.includes(".mkv"))||(null==link2?void 0:link2.includes("?token="))){const serverName=(null==(_f=null==(_e=link2.match(/^(?:https?:\/\/)?(?:www\.)?([^\/]+)/i))?void 0:_e[1])?void 0:_f.replace(/\./g," "))||"Unknown";streamLinks.push({server:serverName,link:link2,type:"mkv"})}}}return console.log("streamLinks",streamLinks),streamLinks}catch(error){return console.log("hubcloudExtractor error: ",(null==error?void 0:error.message)||error),[]}})}function getStream(_0){return __async(this,arguments,function*({link:link,signal:signal,providerContext:providerContext}){var _a,_b,_c,_d;const{axios:axios,cheerio:cheerio,commonHeaders:headers}=providerContext;let hubdriveLink="";if(link.includes("hubdrive")){const hubdriveText=(yield axios.get(link,{headers:headers,signal:signal})).data;hubdriveLink=cheerio.load(hubdriveText)(".btn.btn-primary.btn-user.btn-success1.m-1").attr("href")||link}else{const decodedString=decodeString(null==(_c=null==(_b=null==(_a=(yield axios.get(link,{headers:headers,signal:signal})).data.split("s('o','"))?void 0:_a[1])?void 0:_b.split("',180"))?void 0:_c[0])||link;console.log("decodedString",decodedString),link=safeAtob(null==decodedString?void 0:decodedString.o)||link,console.log("Decoded link",link);const redirectLink=yield getRedirectLinks(link,signal,headers);if(console.log("redirectLink",redirectLink),redirectLink.includes("hubcloud")||redirectLink.includes("/drive/"))return yield hubcloudExtractor(redirectLink,signal,axios,cheerio,headers);const redirectLinkText=(yield axios.get(redirectLink,{headers:headers,signal:signal})).data;if(hubdriveLink=cheerio.load(redirectLinkText)('h3:contains("1080p")').find("a").attr("href")||redirectLinkText.match(/href="(https:\/\/hubcloud\.[^\/]+\/drive\/[^"]+)"/)[1],hubdriveLink.includes("hubdrive")){const hubdriveText=(yield axios.get(hubdriveLink,{headers:headers,signal:signal})).data;hubdriveLink=cheerio.load(hubdriveText)(".btn.btn-primary.btn-user.btn-success1.m-1").attr("href")||hubdriveLink}}const hubcloudLink=(null==(_d=(yield axios.get(hubdriveLink,{headers:headers,signal:signal})).data.match(//i))?void 0:_d[1])||hubdriveLink;try{return yield hubcloudExtractor(hubcloudLink,signal,axios,cheerio,headers)}catch(error){return console.log("hd hub 4 getStream error: ",error),[]}})}__name(hubcloudExtractor,"hubcloudExtractor"),__name(getStream,"getStream");var encode=__name(function(value){return btoa(value.toString())},"encode"),decode=__name(function(value){return void 0===value?"":atob(value.toString())},"decode"),pen=__name(function(value){return value.replace(/[a-zA-Z]/g,function(_0x1a470e){return String.fromCharCode((_0x1a470e<="Z"?90:122)>=(_0x1a470e=_0x1a470e.charCodeAt(0)+13)?_0x1a470e:_0x1a470e-26)})},"pen"),abortableTimeout=__name((ms,{signal:signal}={})=>new Promise((resolve,reject)=>{if(signal&&signal.aborted)return reject(new Error("Aborted"));const timer=setTimeout(resolve,ms);signal&&signal.addEventListener("abort",()=>{clearTimeout(timer),reject(new Error("Aborted"))})}),"abortableTimeout");function getRedirectLinks(link,signal,headers){return __async(this,null,function*(){try{const res=yield fetch(link,{headers:headers,signal:signal}),resText=yield res.text();for(var match,regex=/ck\('_wp_http_\d+','([^']+)'/g,combinedString="";null!==(match=regex.exec(resText));)combinedString+=match[1];const decodedString=decode(pen(decode(decode(combinedString)))),data=JSON.parse(decodedString);console.log(data);const token=encode(null==data?void 0:data.data),blogLink=(null==data?void 0:data.wp_http1)+"?re="+token;let wait=abortableTimeout(1e3*(Number(null==data?void 0:data.total_time)+3),{signal:signal});yield wait,console.log("blogLink",blogLink);let vcloudLink="Invalid Request";for(;vcloudLink.includes("Invalid Request");){const blogRes=yield fetch(blogLink,{headers:headers,signal:signal}),blogResText=yield blogRes.text();if(!blogResText.includes("Invalid Request")){vcloudLink=blogResText.match(/var reurl = "([^"]+)"/)||"";break}console.log(blogResText)}return blogLink||link}catch(err){return console.log("Error in getRedirectLinks",err),link}})}function rot13(str){return str.replace(/[a-zA-Z]/g,function(char){const charCode=char.charCodeAt(0),baseCharCode=char<="Z"?65:97;return String.fromCharCode((charCode-baseCharCode+13)%26+baseCharCode)})}__name(getRedirectLinks,"getRedirectLinks"),__name(rot13,"rot13");var safeAtob=__name(str=>{try{return atob(str)}catch(e){return null}},"safeAtob");function decodeString(encryptedString){try{let decoded=atob(encryptedString);return decoded=atob(decoded),decoded=rot13(decoded),decoded=atob(decoded),JSON.parse(decoded)}catch(error){return console.error("Error decoding string:",error),null}}__name(decodeString,"decodeString"),exports.decodeString=decodeString,exports.getRedirectLinks=getRedirectLinks,exports.getStream=getStream; \ No newline at end of file +"use strict";var __defProp=Object.defineProperty,__getOwnPropDesc=Object.getOwnPropertyDescriptor,__getOwnPropNames=Object.getOwnPropertyNames,__hasOwnProp=Object.prototype.hasOwnProperty,__name=(target,value)=>__defProp(target,"name",{value:value,configurable:!0}),__export=(target,all)=>{for(var name in all)__defProp(target,name,{get:all[name],enumerable:!0})},__copyProps=(to,from,except,desc)=>{if(from&&"object"==typeof from||"function"==typeof from)for(let key of __getOwnPropNames(from))__hasOwnProp.call(to,key)||key===except||__defProp(to,key,{get:()=>from[key],enumerable:!(desc=__getOwnPropDesc(from,key))||desc.enumerable});return to},__toCommonJS=mod=>__copyProps(__defProp({},"__esModule",{value:!0}),mod),__async=(__this,__arguments,generator)=>new Promise((resolve,reject)=>{var fulfilled=value=>{try{step(generator.next(value))}catch(e){reject(e)}},rejected=value=>{try{step(generator.throw(value))}catch(e){reject(e)}},step=x=>x.done?resolve(x.value):Promise.resolve(x.value).then(fulfilled,rejected);step((generator=generator.apply(__this,__arguments)).next())}),stream_exports={};__export(stream_exports,{decodeString:()=>decodeString,getRedirectLinks:()=>getRedirectLinks,getStream:()=>getStream});var hubcloudDecode=__name(function(value){return void 0===value?"":atob(value.toString())},"hubcloudDecode"),getPixelDrainUrl=__name(html=>{const match=html.match(/var\s+pxl\s*=\s*['"]([^'"]+)['"];?/i);return(null==match?void 0:match[1])||""},"getPixelDrainUrl"),getRedirectedPixelDrainUrl=__name((...htmlSources)=>{for(const html of htmlSources){if(!html)continue;const redirectedUrl=getPixelDrainUrl(html);if(redirectedUrl)return redirectedUrl}return""},"getRedirectedPixelDrainUrl");function hubcloudExtractor(link,signal,axios,cheerio,headers){return __async(this,null,function*(){var _a,_b,_c,_d,_e,_f,_g;try{headers.Cookie="ext_name=ojplmecpdpgccookcobabopnaifgidhf; xla=s4t; cf_clearance=woQrFGXtLfmEMBEiGUsVHrUBMT8s3cmguIzmMjmvpkg-1770053679-1.2.1.1-xBrQdciOJsweUF6F2T_OtH6jmyanN_TduQ0yslc_XqjU6RcHSxI7.YOKv6ry7oYo64868HYoULnVyww536H2eVI3R2e4wKzsky6abjPdfQPxqpUaXjxfJ02o6jl3_Vkwr4uiaU7Wy596Vdst3y78HXvVmKdIohhtPvp.vZ9_L7wvWdce0GRixjh_6JiqWmWMws46hwEt3hboaS1e1e4EoWCvj5b0M_jVwvSxBOAW5emFzvT3QrnRh4nyYmKDERnY",console.log("hubcloudExtractor",link);const baseUrl=link.split("/").slice(0,3).join("/"),streamLinks=[],vLinkText=(yield axios(`${link}`,{headers:headers,signal:signal})).data,$vLink=cheerio.load(vLinkText),vLinkRedirect=vLinkText.match(/var\s+url\s*=\s*'([^']+)';/)||[];let vcloudLink=hubcloudDecode(null==(_b=null==(_a=vLinkRedirect[1])?void 0:_a.split("r="))?void 0:_b[1])||vLinkRedirect[1]||$vLink(".fa-file-download.fa-lg").parent().attr("href")||link;console.log("vcloudLink",vcloudLink),(null==vcloudLink?void 0:vcloudLink.startsWith("/"))&&(vcloudLink=`${baseUrl}${vcloudLink}`,console.log("New vcloudLink",vcloudLink));const vcloudRes=yield fetch(vcloudLink,{headers:headers,signal:signal,redirect:"follow"}),vcloudText=yield vcloudRes.text(),$=cheerio.load(vcloudText),linkClass=$(".btn-success.btn-lg.h6,.btn-danger,.btn-secondary");for(const element of linkClass){let link2=$(element).attr("href")||"";switch(!0){case null==link2?void 0:link2.includes("pixeld"):if(console.log("Pixeldrain link found:",link2),!(null==link2?void 0:link2.includes("api"))){const redirectedPixelDrainUrl=getRedirectedPixelDrainUrl(vLinkText,vcloudText);redirectedPixelDrainUrl&&(console.log("Special case for token negn6f",redirectedPixelDrainUrl),link2=redirectedPixelDrainUrl);const token=null==(_c=link2.split("/").pop())?void 0:_c.split("?")[0],baseUrl2=link2.split("/").slice(0,-2).join("/");link2=`${baseUrl2}/api/file/${token}`}streamLinks.push({server:"Pixeldrain",link:link2,type:"mkv"});break;case(null==link2?void 0:link2.includes(".dev"))&&!(null==link2?void 0:link2.includes("/?id=")):streamLinks.push({server:"Cf Worker",link:link2,type:"mkv"});break;case(null==link2?void 0:link2.includes("hubcloud"))||(null==link2?void 0:link2.includes("/?id=")):try{const newLinkRes=yield fetch(link2,{method:"HEAD",headers:headers,signal:signal,redirect:"manual"});let newLink=link2;if(newLink=newLinkRes.status>=300&&newLinkRes.status<400?newLinkRes.headers.get("location")||link2:newLinkRes.url&&newLinkRes.url!==link2?newLinkRes.url:newLinkRes.headers.get("location")||link2,newLink.includes("googleusercontent"))newLink=newLink.split("?link=")[1];else{const newLinkRes2=yield fetch(newLink,{method:"HEAD",headers:headers,signal:signal,redirect:"manual"});newLink=newLinkRes2.status>=300&&newLinkRes2.status<400?(null==(_d=newLinkRes2.headers.get("location"))?void 0:_d.split("?link=")[1])||newLink:newLinkRes2.url&&newLinkRes2.url!==newLink?newLinkRes2.url.split("?link=")[1]||newLinkRes2.url:(null==(_e=newLinkRes2.headers.get("location"))?void 0:_e.split("?link=")[1])||newLink}streamLinks.push({server:"hubcloud",link:newLink,type:"mkv"})}catch(error){console.log("hubcloudExtractor error in hubcloud link: ",error)}break;case null==link2?void 0:link2.includes("cloudflarestorage"):streamLinks.push({server:"CfStorage",link:link2,type:"mkv"});break;case(null==link2?void 0:link2.includes("fastdl"))||(null==link2?void 0:link2.includes("fsl.")):streamLinks.push({server:"FastDl",link:link2,type:"mkv"});break;case link2.includes("hubcdn")&&!link2.includes("/?id="):streamLinks.push({server:"HubCdn",link:link2,type:"mkv"});break;default:if((null==link2?void 0:link2.includes(".mkv"))||(null==link2?void 0:link2.includes("?token="))){const serverName=(null==(_g=null==(_f=link2.match(/^(?:https?:\/\/)?(?:www\.)?([^\/]+)/i))?void 0:_f[1])?void 0:_g.replace(/\./g," "))||"Unknown";streamLinks.push({server:serverName,link:link2,type:"mkv"})}}}return console.log("streamLinks",streamLinks),streamLinks}catch(error){return console.log("hubcloudExtractor error: ",(null==error?void 0:error.message)||error),[]}})}function getStream(_0){return __async(this,arguments,function*({link:link,signal:signal,providerContext:providerContext}){var _a,_b,_c,_d;const{axios:axios,cheerio:cheerio,commonHeaders:headers}=providerContext;let hubdriveLink="";if(link.includes("hubdrive")){const hubdriveText=(yield axios.get(link,{headers:headers,signal:signal})).data;hubdriveLink=cheerio.load(hubdriveText)(".btn.btn-primary.btn-user.btn-success1.m-1").attr("href")||link}else{const decodedString=decodeString(null==(_c=null==(_b=null==(_a=(yield axios.get(link,{headers:headers,signal:signal})).data.split("s('o','"))?void 0:_a[1])?void 0:_b.split("',180"))?void 0:_c[0])||link;console.log("decodedString",decodedString),link=safeAtob(null==decodedString?void 0:decodedString.o)||link,console.log("Decoded link",link);const redirectLink=yield getRedirectLinks(link,signal,headers);if(console.log("redirectLink",redirectLink),redirectLink.includes("hubcloud")||redirectLink.includes("/drive/"))return yield hubcloudExtractor(redirectLink,signal,axios,cheerio,headers);const redirectLinkText=(yield axios.get(redirectLink,{headers:headers,signal:signal})).data;if(hubdriveLink=cheerio.load(redirectLinkText)('h3:contains("1080p")').find("a").attr("href")||redirectLinkText.match(/href="(https:\/\/hubcloud\.[^\/]+\/drive\/[^"]+)"/)[1],hubdriveLink.includes("hubdrive")){const hubdriveText=(yield axios.get(hubdriveLink,{headers:headers,signal:signal})).data;hubdriveLink=cheerio.load(hubdriveText)(".btn.btn-primary.btn-user.btn-success1.m-1").attr("href")||hubdriveLink}}const hubcloudLink=(null==(_d=(yield axios.get(hubdriveLink,{headers:headers,signal:signal})).data.match(//i))?void 0:_d[1])||hubdriveLink;try{return yield hubcloudExtractor(hubcloudLink,signal,axios,cheerio,headers)}catch(error){return console.log("hd hub 4 getStream error: ",error),[]}})}__name(hubcloudExtractor,"hubcloudExtractor"),__name(getStream,"getStream");var encode=__name(function(value){return btoa(value.toString())},"encode"),decode=__name(function(value){return void 0===value?"":atob(value.toString())},"decode"),pen=__name(function(value){return value.replace(/[a-zA-Z]/g,function(_0x1a470e){return String.fromCharCode((_0x1a470e<="Z"?90:122)>=(_0x1a470e=_0x1a470e.charCodeAt(0)+13)?_0x1a470e:_0x1a470e-26)})},"pen"),abortableTimeout=__name((ms,{signal:signal}={})=>new Promise((resolve,reject)=>{if(signal&&signal.aborted)return reject(new Error("Aborted"));const timer=setTimeout(resolve,ms);signal&&signal.addEventListener("abort",()=>{clearTimeout(timer),reject(new Error("Aborted"))})}),"abortableTimeout");function getRedirectLinks(link,signal,headers){return __async(this,null,function*(){try{const res=yield fetch(link,{headers:headers,signal:signal}),resText=yield res.text();for(var match,regex=/ck\('_wp_http_\d+','([^']+)'/g,combinedString="";null!==(match=regex.exec(resText));)combinedString+=match[1];const decodedString=decode(pen(decode(decode(combinedString)))),data=JSON.parse(decodedString);console.log(data);const token=encode(null==data?void 0:data.data),blogLink=(null==data?void 0:data.wp_http1)+"?re="+token;let wait=abortableTimeout(1e3*(Number(null==data?void 0:data.total_time)+3),{signal:signal});yield wait,console.log("blogLink",blogLink);let vcloudLink="Invalid Request";for(;vcloudLink.includes("Invalid Request");){const blogRes=yield fetch(blogLink,{headers:headers,signal:signal}),blogResText=yield blogRes.text();if(!blogResText.includes("Invalid Request")){vcloudLink=blogResText.match(/var reurl = "([^"]+)"/)||"";break}console.log(blogResText)}return blogLink||link}catch(err){return console.log("Error in getRedirectLinks",err),link}})}function rot13(str){return str.replace(/[a-zA-Z]/g,function(char){const charCode=char.charCodeAt(0),baseCharCode=char<="Z"?65:97;return String.fromCharCode((charCode-baseCharCode+13)%26+baseCharCode)})}__name(getRedirectLinks,"getRedirectLinks"),__name(rot13,"rot13");var safeAtob=__name(str=>{try{return atob(str)}catch(e){return null}},"safeAtob");function decodeString(encryptedString){try{let decoded=atob(encryptedString);return decoded=atob(decoded),decoded=rot13(decoded),decoded=atob(decoded),JSON.parse(decoded)}catch(error){return console.error("Error decoding string:",error),null}}__name(decodeString,"decodeString"),exports.decodeString=decodeString,exports.getRedirectLinks=getRedirectLinks,exports.getStream=getStream; \ No newline at end of file diff --git a/dist/Joya9tv/stream.js b/dist/Joya9tv/stream.js index 7ad7937..7d39a93 100644 --- a/dist/Joya9tv/stream.js +++ b/dist/Joya9tv/stream.js @@ -1 +1 @@ -"use strict";var __defProp=Object.defineProperty,__getOwnPropDesc=Object.getOwnPropertyDescriptor,__getOwnPropNames=Object.getOwnPropertyNames,__hasOwnProp=Object.prototype.hasOwnProperty,__name=(target,value)=>__defProp(target,"name",{value:value,configurable:!0}),__export=(target,all)=>{for(var name in all)__defProp(target,name,{get:all[name],enumerable:!0})},__copyProps=(to,from,except,desc)=>{if(from&&"object"==typeof from||"function"==typeof from)for(let key of __getOwnPropNames(from))__hasOwnProp.call(to,key)||key===except||__defProp(to,key,{get:()=>from[key],enumerable:!(desc=__getOwnPropDesc(from,key))||desc.enumerable});return to},__toCommonJS=mod=>__copyProps(__defProp({},"__esModule",{value:!0}),mod),__async=(__this,__arguments,generator)=>new Promise((resolve,reject)=>{var fulfilled=value=>{try{step(generator.next(value))}catch(e){reject(e)}},rejected=value=>{try{step(generator.throw(value))}catch(e){reject(e)}},step=x=>x.done?resolve(x.value):Promise.resolve(x.value).then(fulfilled,rejected);step((generator=generator.apply(__this,__arguments)).next())}),stream_exports={};__export(stream_exports,{getStream:()=>getStream});var hubcloudDecode=__name(function(value){return void 0===value?"":atob(value.toString())},"hubcloudDecode");function hubcloudExtractor(link,signal,axios,cheerio,headers2){return __async(this,null,function*(){var _a,_b,_c,_d,_e,_f;try{headers2.Cookie="ext_name=ojplmecpdpgccookcobabopnaifgidhf; xla=s4t; cf_clearance=woQrFGXtLfmEMBEiGUsVHrUBMT8s3cmguIzmMjmvpkg-1770053679-1.2.1.1-xBrQdciOJsweUF6F2T_OtH6jmyanN_TduQ0yslc_XqjU6RcHSxI7.YOKv6ry7oYo64868HYoULnVyww536H2eVI3R2e4wKzsky6abjPdfQPxqpUaXjxfJ02o6jl3_Vkwr4uiaU7Wy596Vdst3y78HXvVmKdIohhtPvp.vZ9_L7wvWdce0GRixjh_6JiqWmWMws46hwEt3hboaS1e1e4EoWCvj5b0M_jVwvSxBOAW5emFzvT3QrnRh4nyYmKDERnY",console.log("hubcloudExtractor",link),console.log("headers",headers2);const baseUrl=link.split("/").slice(0,3).join("/"),streamLinks=[],vLinkText=(yield axios(`${link}`,{headers:headers2,signal:signal})).data,$vLink=cheerio.load(vLinkText),vLinkRedirect=vLinkText.match(/var\s+url\s*=\s*'([^']+)';/)||[];let vcloudLink=hubcloudDecode(null==(_b=null==(_a=vLinkRedirect[1])?void 0:_a.split("r="))?void 0:_b[1])||vLinkRedirect[1]||$vLink(".fa-file-download.fa-lg").parent().attr("href")||link;console.log("vcloudLink",vcloudLink),(null==vcloudLink?void 0:vcloudLink.startsWith("/"))&&(vcloudLink=`${baseUrl}${vcloudLink}`,console.log("New vcloudLink",vcloudLink));const vcloudRes=yield fetch(vcloudLink,{headers:headers2,signal:signal,redirect:"follow"}),$=cheerio.load(yield vcloudRes.text()),linkClass=$(".btn-success.btn-lg.h6,.btn-danger,.btn-secondary");for(const element of linkClass){let link2=$(element).attr("href")||"";switch(!0){case null==link2?void 0:link2.includes("pixeld"):if(!(null==link2?void 0:link2.includes("api"))){const token=link2.split("/").pop(),baseUrl2=link2.split("/").slice(0,-2).join("/");link2=`${baseUrl2}/api/file/${token}`}streamLinks.push({server:"Pixeldrain",link:link2,type:"mkv"});break;case(null==link2?void 0:link2.includes(".dev"))&&!(null==link2?void 0:link2.includes("/?id=")):streamLinks.push({server:"Cf Worker",link:link2,type:"mkv"});break;case(null==link2?void 0:link2.includes("hubcloud"))||(null==link2?void 0:link2.includes("/?id=")):try{const newLinkRes=yield fetch(link2,{method:"HEAD",headers:headers2,signal:signal,redirect:"manual"});let newLink=link2;if(newLink=newLinkRes.status>=300&&newLinkRes.status<400?newLinkRes.headers.get("location")||link2:newLinkRes.url&&newLinkRes.url!==link2?newLinkRes.url:newLinkRes.headers.get("location")||link2,newLink.includes("googleusercontent"))newLink=newLink.split("?link=")[1];else{const newLinkRes2=yield fetch(newLink,{method:"HEAD",headers:headers2,signal:signal,redirect:"manual"});newLink=newLinkRes2.status>=300&&newLinkRes2.status<400?(null==(_c=newLinkRes2.headers.get("location"))?void 0:_c.split("?link=")[1])||newLink:newLinkRes2.url&&newLinkRes2.url!==newLink?newLinkRes2.url.split("?link=")[1]||newLinkRes2.url:(null==(_d=newLinkRes2.headers.get("location"))?void 0:_d.split("?link=")[1])||newLink}streamLinks.push({server:"hubcloud",link:newLink,type:"mkv"})}catch(error){console.log("hubcloudExtractor error in hubcloud link: ",error)}break;case null==link2?void 0:link2.includes("cloudflarestorage"):streamLinks.push({server:"CfStorage",link:link2,type:"mkv"});break;case(null==link2?void 0:link2.includes("fastdl"))||(null==link2?void 0:link2.includes("fsl.")):streamLinks.push({server:"FastDl",link:link2,type:"mkv"});break;case link2.includes("hubcdn")&&!link2.includes("/?id="):streamLinks.push({server:"HubCdn",link:link2,type:"mkv"});break;default:if((null==link2?void 0:link2.includes(".mkv"))||(null==link2?void 0:link2.includes("?token="))){const serverName=(null==(_f=null==(_e=link2.match(/^(?:https?:\/\/)?(?:www\.)?([^\/]+)/i))?void 0:_e[1])?void 0:_f.replace(/\./g," "))||"Unknown";streamLinks.push({server:serverName,link:link2,type:"mkv"})}}}return console.log("streamLinks",streamLinks),streamLinks}catch(error){return console.log("hubcloudExtractor error: ",(null==error?void 0:error.message)||error),[]}})}__name(hubcloudExtractor,"hubcloudExtractor");var headers={accept:"text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7","accept-language":"en-US,en;q=0.9,en-IN;q=0.8","cache-control":"no-cache",pragma:"no-cache",priority:"u=0, i","sec-ch-ua":'"Chromium";v="140", "Not=A?Brand";v="24", "Microsoft Edge";v="140"',"sec-ch-ua-mobile":"?0","sec-ch-ua-platform":'"Windows"',"sec-fetch-dest":"document","sec-fetch-mode":"navigate","sec-fetch-site":"none","sec-fetch-user":"?1","upgrade-insecure-requests":"1"};function getStream(_0){return __async(this,arguments,function*({link:link,type:type,signal:signal,providerContext:providerContext}){var _a,_b,_c,_d;const{axios:axios,cheerio:cheerio,commonHeaders:commonHeaders}=providerContext;try{const streamLinks=[];if(console.log("dotlink",link),"movie"===type){const dotlinkRes=yield fetch(`${link}`,{headers:headers}),dotlinkText=yield dotlinkRes.text();link=(dotlinkText.match(/__defProp(target,"name",{value:value,configurable:!0}),__export=(target,all)=>{for(var name in all)__defProp(target,name,{get:all[name],enumerable:!0})},__copyProps=(to,from,except,desc)=>{if(from&&"object"==typeof from||"function"==typeof from)for(let key of __getOwnPropNames(from))__hasOwnProp.call(to,key)||key===except||__defProp(to,key,{get:()=>from[key],enumerable:!(desc=__getOwnPropDesc(from,key))||desc.enumerable});return to},__toCommonJS=mod=>__copyProps(__defProp({},"__esModule",{value:!0}),mod),__async=(__this,__arguments,generator)=>new Promise((resolve,reject)=>{var fulfilled=value=>{try{step(generator.next(value))}catch(e){reject(e)}},rejected=value=>{try{step(generator.throw(value))}catch(e){reject(e)}},step=x=>x.done?resolve(x.value):Promise.resolve(x.value).then(fulfilled,rejected);step((generator=generator.apply(__this,__arguments)).next())}),stream_exports={};__export(stream_exports,{getStream:()=>getStream});var hubcloudDecode=__name(function(value){return void 0===value?"":atob(value.toString())},"hubcloudDecode"),getPixelDrainUrl=__name(html=>{const match=html.match(/var\s+pxl\s*=\s*['"]([^'"]+)['"];?/i);return(null==match?void 0:match[1])||""},"getPixelDrainUrl"),getRedirectedPixelDrainUrl=__name((...htmlSources)=>{for(const html of htmlSources){if(!html)continue;const redirectedUrl=getPixelDrainUrl(html);if(redirectedUrl)return redirectedUrl}return""},"getRedirectedPixelDrainUrl");function hubcloudExtractor(link,signal,axios,cheerio,headers2){return __async(this,null,function*(){var _a,_b,_c,_d,_e,_f,_g;try{headers2.Cookie="ext_name=ojplmecpdpgccookcobabopnaifgidhf; xla=s4t; cf_clearance=woQrFGXtLfmEMBEiGUsVHrUBMT8s3cmguIzmMjmvpkg-1770053679-1.2.1.1-xBrQdciOJsweUF6F2T_OtH6jmyanN_TduQ0yslc_XqjU6RcHSxI7.YOKv6ry7oYo64868HYoULnVyww536H2eVI3R2e4wKzsky6abjPdfQPxqpUaXjxfJ02o6jl3_Vkwr4uiaU7Wy596Vdst3y78HXvVmKdIohhtPvp.vZ9_L7wvWdce0GRixjh_6JiqWmWMws46hwEt3hboaS1e1e4EoWCvj5b0M_jVwvSxBOAW5emFzvT3QrnRh4nyYmKDERnY",console.log("hubcloudExtractor",link);const baseUrl=link.split("/").slice(0,3).join("/"),streamLinks=[],vLinkText=(yield axios(`${link}`,{headers:headers2,signal:signal})).data,$vLink=cheerio.load(vLinkText),vLinkRedirect=vLinkText.match(/var\s+url\s*=\s*'([^']+)';/)||[];let vcloudLink=hubcloudDecode(null==(_b=null==(_a=vLinkRedirect[1])?void 0:_a.split("r="))?void 0:_b[1])||vLinkRedirect[1]||$vLink(".fa-file-download.fa-lg").parent().attr("href")||link;console.log("vcloudLink",vcloudLink),(null==vcloudLink?void 0:vcloudLink.startsWith("/"))&&(vcloudLink=`${baseUrl}${vcloudLink}`,console.log("New vcloudLink",vcloudLink));const vcloudRes=yield fetch(vcloudLink,{headers:headers2,signal:signal,redirect:"follow"}),vcloudText=yield vcloudRes.text(),$=cheerio.load(vcloudText),linkClass=$(".btn-success.btn-lg.h6,.btn-danger,.btn-secondary");for(const element of linkClass){let link2=$(element).attr("href")||"";switch(!0){case null==link2?void 0:link2.includes("pixeld"):if(console.log("Pixeldrain link found:",link2),!(null==link2?void 0:link2.includes("api"))){const redirectedPixelDrainUrl=getRedirectedPixelDrainUrl(vLinkText,vcloudText);redirectedPixelDrainUrl&&(console.log("Special case for token negn6f",redirectedPixelDrainUrl),link2=redirectedPixelDrainUrl);const token=null==(_c=link2.split("/").pop())?void 0:_c.split("?")[0],baseUrl2=link2.split("/").slice(0,-2).join("/");link2=`${baseUrl2}/api/file/${token}`}streamLinks.push({server:"Pixeldrain",link:link2,type:"mkv"});break;case(null==link2?void 0:link2.includes(".dev"))&&!(null==link2?void 0:link2.includes("/?id=")):streamLinks.push({server:"Cf Worker",link:link2,type:"mkv"});break;case(null==link2?void 0:link2.includes("hubcloud"))||(null==link2?void 0:link2.includes("/?id=")):try{const newLinkRes=yield fetch(link2,{method:"HEAD",headers:headers2,signal:signal,redirect:"manual"});let newLink=link2;if(newLink=newLinkRes.status>=300&&newLinkRes.status<400?newLinkRes.headers.get("location")||link2:newLinkRes.url&&newLinkRes.url!==link2?newLinkRes.url:newLinkRes.headers.get("location")||link2,newLink.includes("googleusercontent"))newLink=newLink.split("?link=")[1];else{const newLinkRes2=yield fetch(newLink,{method:"HEAD",headers:headers2,signal:signal,redirect:"manual"});newLink=newLinkRes2.status>=300&&newLinkRes2.status<400?(null==(_d=newLinkRes2.headers.get("location"))?void 0:_d.split("?link=")[1])||newLink:newLinkRes2.url&&newLinkRes2.url!==newLink?newLinkRes2.url.split("?link=")[1]||newLinkRes2.url:(null==(_e=newLinkRes2.headers.get("location"))?void 0:_e.split("?link=")[1])||newLink}streamLinks.push({server:"hubcloud",link:newLink,type:"mkv"})}catch(error){console.log("hubcloudExtractor error in hubcloud link: ",error)}break;case null==link2?void 0:link2.includes("cloudflarestorage"):streamLinks.push({server:"CfStorage",link:link2,type:"mkv"});break;case(null==link2?void 0:link2.includes("fastdl"))||(null==link2?void 0:link2.includes("fsl.")):streamLinks.push({server:"FastDl",link:link2,type:"mkv"});break;case link2.includes("hubcdn")&&!link2.includes("/?id="):streamLinks.push({server:"HubCdn",link:link2,type:"mkv"});break;default:if((null==link2?void 0:link2.includes(".mkv"))||(null==link2?void 0:link2.includes("?token="))){const serverName=(null==(_g=null==(_f=link2.match(/^(?:https?:\/\/)?(?:www\.)?([^\/]+)/i))?void 0:_f[1])?void 0:_g.replace(/\./g," "))||"Unknown";streamLinks.push({server:serverName,link:link2,type:"mkv"})}}}return console.log("streamLinks",streamLinks),streamLinks}catch(error){return console.log("hubcloudExtractor error: ",(null==error?void 0:error.message)||error),[]}})}__name(hubcloudExtractor,"hubcloudExtractor");var headers={accept:"text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7","accept-language":"en-US,en;q=0.9,en-IN;q=0.8","cache-control":"no-cache",pragma:"no-cache",priority:"u=0, i","sec-ch-ua":'"Chromium";v="140", "Not=A?Brand";v="24", "Microsoft Edge";v="140"',"sec-ch-ua-mobile":"?0","sec-ch-ua-platform":'"Windows"',"sec-fetch-dest":"document","sec-fetch-mode":"navigate","sec-fetch-site":"none","sec-fetch-user":"?1","upgrade-insecure-requests":"1"};function getStream(_0){return __async(this,arguments,function*({link:link,type:type,signal:signal,providerContext:providerContext}){var _a,_b,_c,_d;const{axios:axios,cheerio:cheerio,commonHeaders:commonHeaders}=providerContext;try{const streamLinks=[];if(console.log("dotlink",link),"movie"===type){const dotlinkRes=yield fetch(`${link}`,{headers:headers}),dotlinkText=yield dotlinkRes.text();link=(dotlinkText.match(/__defProp(target,"name",{value:value,configurable:!0}),__export=(target,all)=>{for(var name in all)__defProp(target,name,{get:all[name],enumerable:!0})},__copyProps=(to,from,except,desc)=>{if(from&&"object"==typeof from||"function"==typeof from)for(let key of __getOwnPropNames(from))__hasOwnProp.call(to,key)||key===except||__defProp(to,key,{get:()=>from[key],enumerable:!(desc=__getOwnPropDesc(from,key))||desc.enumerable});return to},__toCommonJS=mod=>__copyProps(__defProp({},"__esModule",{value:!0}),mod),__async=(__this,__arguments,generator)=>new Promise((resolve,reject)=>{var fulfilled=value=>{try{step(generator.next(value))}catch(e){reject(e)}},rejected=value=>{try{step(generator.throw(value))}catch(e){reject(e)}},step=x=>x.done?resolve(x.value):Promise.resolve(x.value).then(fulfilled,rejected);step((generator=generator.apply(__this,__arguments)).next())}),stream_exports={};__export(stream_exports,{getStream:()=>getStream});var hubcloudDecode=__name(function(value){return void 0===value?"":atob(value.toString())},"hubcloudDecode");function hubcloudExtractor(link,signal,axios,cheerio,headers){return __async(this,null,function*(){var _a,_b,_c,_d,_e,_f;try{headers.Cookie="ext_name=ojplmecpdpgccookcobabopnaifgidhf; xla=s4t; cf_clearance=woQrFGXtLfmEMBEiGUsVHrUBMT8s3cmguIzmMjmvpkg-1770053679-1.2.1.1-xBrQdciOJsweUF6F2T_OtH6jmyanN_TduQ0yslc_XqjU6RcHSxI7.YOKv6ry7oYo64868HYoULnVyww536H2eVI3R2e4wKzsky6abjPdfQPxqpUaXjxfJ02o6jl3_Vkwr4uiaU7Wy596Vdst3y78HXvVmKdIohhtPvp.vZ9_L7wvWdce0GRixjh_6JiqWmWMws46hwEt3hboaS1e1e4EoWCvj5b0M_jVwvSxBOAW5emFzvT3QrnRh4nyYmKDERnY",console.log("hubcloudExtractor",link),console.log("headers",headers);const baseUrl=link.split("/").slice(0,3).join("/"),streamLinks=[],vLinkText=(yield axios(`${link}`,{headers:headers,signal:signal})).data,$vLink=cheerio.load(vLinkText),vLinkRedirect=vLinkText.match(/var\s+url\s*=\s*'([^']+)';/)||[];let vcloudLink=hubcloudDecode(null==(_b=null==(_a=vLinkRedirect[1])?void 0:_a.split("r="))?void 0:_b[1])||vLinkRedirect[1]||$vLink(".fa-file-download.fa-lg").parent().attr("href")||link;console.log("vcloudLink",vcloudLink),(null==vcloudLink?void 0:vcloudLink.startsWith("/"))&&(vcloudLink=`${baseUrl}${vcloudLink}`,console.log("New vcloudLink",vcloudLink));const vcloudRes=yield fetch(vcloudLink,{headers:headers,signal:signal,redirect:"follow"}),$=cheerio.load(yield vcloudRes.text()),linkClass=$(".btn-success.btn-lg.h6,.btn-danger,.btn-secondary");for(const element of linkClass){let link2=$(element).attr("href")||"";switch(!0){case null==link2?void 0:link2.includes("pixeld"):if(!(null==link2?void 0:link2.includes("api"))){const token=link2.split("/").pop(),baseUrl2=link2.split("/").slice(0,-2).join("/");link2=`${baseUrl2}/api/file/${token}`}streamLinks.push({server:"Pixeldrain",link:link2,type:"mkv"});break;case(null==link2?void 0:link2.includes(".dev"))&&!(null==link2?void 0:link2.includes("/?id=")):streamLinks.push({server:"Cf Worker",link:link2,type:"mkv"});break;case(null==link2?void 0:link2.includes("hubcloud"))||(null==link2?void 0:link2.includes("/?id=")):try{const newLinkRes=yield fetch(link2,{method:"HEAD",headers:headers,signal:signal,redirect:"manual"});let newLink=link2;if(newLink=newLinkRes.status>=300&&newLinkRes.status<400?newLinkRes.headers.get("location")||link2:newLinkRes.url&&newLinkRes.url!==link2?newLinkRes.url:newLinkRes.headers.get("location")||link2,newLink.includes("googleusercontent"))newLink=newLink.split("?link=")[1];else{const newLinkRes2=yield fetch(newLink,{method:"HEAD",headers:headers,signal:signal,redirect:"manual"});newLink=newLinkRes2.status>=300&&newLinkRes2.status<400?(null==(_c=newLinkRes2.headers.get("location"))?void 0:_c.split("?link=")[1])||newLink:newLinkRes2.url&&newLinkRes2.url!==newLink?newLinkRes2.url.split("?link=")[1]||newLinkRes2.url:(null==(_d=newLinkRes2.headers.get("location"))?void 0:_d.split("?link=")[1])||newLink}streamLinks.push({server:"hubcloud",link:newLink,type:"mkv"})}catch(error){console.log("hubcloudExtractor error in hubcloud link: ",error)}break;case null==link2?void 0:link2.includes("cloudflarestorage"):streamLinks.push({server:"CfStorage",link:link2,type:"mkv"});break;case(null==link2?void 0:link2.includes("fastdl"))||(null==link2?void 0:link2.includes("fsl.")):streamLinks.push({server:"FastDl",link:link2,type:"mkv"});break;case link2.includes("hubcdn")&&!link2.includes("/?id="):streamLinks.push({server:"HubCdn",link:link2,type:"mkv"});break;default:if((null==link2?void 0:link2.includes(".mkv"))||(null==link2?void 0:link2.includes("?token="))){const serverName=(null==(_f=null==(_e=link2.match(/^(?:https?:\/\/)?(?:www\.)?([^\/]+)/i))?void 0:_e[1])?void 0:_f.replace(/\./g," "))||"Unknown";streamLinks.push({server:serverName,link:link2,type:"mkv"})}}}return console.log("streamLinks",streamLinks),streamLinks}catch(error){return console.log("hubcloudExtractor error: ",(null==error?void 0:error.message)||error),[]}})}function gdflixExtractor(link,signal,axios,cheerio,headers){return __async(this,null,function*(){var _a,_b,_c,_d,_e,_f,_g,_h;try{const streamLinks=[],res=yield axios(`${link}`,{headers:headers,signal:signal});console.log("gdflixExtractor",link);const data=res.data;let $drive=cheerio.load(data);if(null==(_a=$drive("body").attr("onload"))?void 0:_a.includes("location.replace")){const newLink=null==(_d=null==(_c=null==(_b=$drive("body").attr("onload"))?void 0:_b.split("location.replace('"))?void 0:_c[1].split("'"))?void 0:_d[0];if(console.log("newLink",newLink),newLink){const newRes=yield axios.get(newLink,{headers:headers,signal:signal});$drive=cheerio.load(newRes.data)}}try{const baseUrl=link.split("/").slice(0,3).join("/"),resumeDrive=$drive(".btn-secondary").attr("href")||"";if(console.log("resumeDrive",resumeDrive),resumeDrive.includes("indexbot")){const resumeBotRes=yield axios.get(resumeDrive,{headers:headers}),resumeBotToken=resumeBotRes.data.match(/formData\.append\('token', '([a-f0-9]+)'\)/)[1],resumeBotBody=new FormData;resumeBotBody.append("token",resumeBotToken);const resumeBotPath=resumeBotRes.data.match(/fetch\('\/download\?id=([a-zA-Z0-9\/+]+)'/)[1],resumeBotBaseUrl=resumeDrive.split("/download")[0],resumeBotDownload=yield fetch(resumeBotBaseUrl+"/download?id="+resumeBotPath,{method:"POST",body:resumeBotBody,headers:{Referer:resumeDrive,Cookie:"PHPSESSID=7e9658ce7c805dab5bbcea9046f7f308"}}),resumeBotDownloadData=yield resumeBotDownload.json();console.log("resumeBotDownloadData",resumeBotDownloadData.url),streamLinks.push({server:"ResumeBot",link:resumeBotDownloadData.url,type:"mkv"})}else{const url=baseUrl+resumeDrive,resumeDriveHtml=(yield axios.get(url,{headers:headers})).data,resumeLink=cheerio.load(resumeDriveHtml)(".btn-success").attr("href");resumeLink&&streamLinks.push({server:"ResumeCloud",link:resumeLink,type:"mkv"})}}catch(err){console.log("Resume link not found")}try{const seed=$drive(".btn-danger").attr("href")||"";if(console.log("seed",seed),seed.includes("?url=")){const instantToken=seed.split("=")[1],InstantFromData=new FormData;InstantFromData.append("keys",instantToken);const videoSeedUrl=seed.split("/").slice(0,3).join("/")+"/api",instantLinkRes=yield fetch(videoSeedUrl,{method:"POST",body:InstantFromData,headers:{"x-token":videoSeedUrl}}),instantLinkData=yield instantLinkRes.json();if(!1===instantLinkData.error){const instantLink=instantLinkData.url;streamLinks.push({server:"Gdrive-Instant",link:instantLink,type:"mkv"})}else console.log("Instant link not found",instantLinkData)}else{const newLinkRes=yield axios.head(seed,{headers:headers,signal:signal});console.log("newLinkRes",null==(_e=newLinkRes.request)?void 0:_e.responseURL);const newLink=(null==(_h=null==(_g=null==(_f=newLinkRes.request)?void 0:_f.responseURL)?void 0:_g.split("?url="))?void 0:_h[1])||seed;streamLinks.push({server:"G-Drive",link:newLink,type:"mkv"})}}catch(err){console.log("Instant link not found",err)}return streamLinks}catch(error){return console.log("gdflix error: ",error),[]}})}__name(hubcloudExtractor,"hubcloudExtractor"),__name(gdflixExtractor,"gdflixExtractor");var getStream=__name(_0=>__async(null,[_0],function*({link:link,signal:signal,providerContext:providerContext}){var _a;const{axios:axios,cheerio:cheerio,commonHeaders:headers}=providerContext;try{let newLink=link;if(console.log("getStream 1",link),link.includes("linkstore")){console.log("linkstore detected");const res=yield fetch(link,{signal:signal,headers:{accept:"text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7","accept-language":"en-US,en;q=0.9,en-IN;q=0.8","cache-control":"no-cache",pragma:"no-cache",priority:"u=0, i","sec-ch-ua":'"Microsoft Edge";v="137", "Chromium";v="137", "Not/A)Brand";v="24"',"sec-ch-ua-mobile":"?0","sec-ch-ua-platform":'"Windows"',"sec-fetch-dest":"document","sec-fetch-mode":"navigate","sec-fetch-site":"none","sec-fetch-user":"?1","upgrade-insecure-requests":"1",cookie:"PHPSESSID=9o57cff841dqtv8djtn1rp1712; ext_name=ojplmecpdpgccookcobabopnaifgidhf"}}),refreshMetaMatch=(yield res.text()).match(/__defProp(target,"name",{value:value,configurable:!0}),__export=(target,all)=>{for(var name in all)__defProp(target,name,{get:all[name],enumerable:!0})},__copyProps=(to,from,except,desc)=>{if(from&&"object"==typeof from||"function"==typeof from)for(let key of __getOwnPropNames(from))__hasOwnProp.call(to,key)||key===except||__defProp(to,key,{get:()=>from[key],enumerable:!(desc=__getOwnPropDesc(from,key))||desc.enumerable});return to},__toCommonJS=mod=>__copyProps(__defProp({},"__esModule",{value:!0}),mod),__async=(__this,__arguments,generator)=>new Promise((resolve,reject)=>{var fulfilled=value=>{try{step(generator.next(value))}catch(e){reject(e)}},rejected=value=>{try{step(generator.throw(value))}catch(e){reject(e)}},step=x=>x.done?resolve(x.value):Promise.resolve(x.value).then(fulfilled,rejected);step((generator=generator.apply(__this,__arguments)).next())}),stream_exports={};__export(stream_exports,{getStream:()=>getStream});var hubcloudDecode=__name(function(value){return void 0===value?"":atob(value.toString())},"hubcloudDecode"),getPixelDrainUrl=__name(html=>{const match=html.match(/var\s+pxl\s*=\s*['"]([^'"]+)['"];?/i);return(null==match?void 0:match[1])||""},"getPixelDrainUrl"),getRedirectedPixelDrainUrl=__name((...htmlSources)=>{for(const html of htmlSources){if(!html)continue;const redirectedUrl=getPixelDrainUrl(html);if(redirectedUrl)return redirectedUrl}return""},"getRedirectedPixelDrainUrl");function hubcloudExtractor(link,signal,axios,cheerio,headers){return __async(this,null,function*(){var _a,_b,_c,_d,_e,_f,_g;try{headers.Cookie="ext_name=ojplmecpdpgccookcobabopnaifgidhf; xla=s4t; cf_clearance=woQrFGXtLfmEMBEiGUsVHrUBMT8s3cmguIzmMjmvpkg-1770053679-1.2.1.1-xBrQdciOJsweUF6F2T_OtH6jmyanN_TduQ0yslc_XqjU6RcHSxI7.YOKv6ry7oYo64868HYoULnVyww536H2eVI3R2e4wKzsky6abjPdfQPxqpUaXjxfJ02o6jl3_Vkwr4uiaU7Wy596Vdst3y78HXvVmKdIohhtPvp.vZ9_L7wvWdce0GRixjh_6JiqWmWMws46hwEt3hboaS1e1e4EoWCvj5b0M_jVwvSxBOAW5emFzvT3QrnRh4nyYmKDERnY",console.log("hubcloudExtractor",link);const baseUrl=link.split("/").slice(0,3).join("/"),streamLinks=[],vLinkText=(yield axios(`${link}`,{headers:headers,signal:signal})).data,$vLink=cheerio.load(vLinkText),vLinkRedirect=vLinkText.match(/var\s+url\s*=\s*'([^']+)';/)||[];let vcloudLink=hubcloudDecode(null==(_b=null==(_a=vLinkRedirect[1])?void 0:_a.split("r="))?void 0:_b[1])||vLinkRedirect[1]||$vLink(".fa-file-download.fa-lg").parent().attr("href")||link;console.log("vcloudLink",vcloudLink),(null==vcloudLink?void 0:vcloudLink.startsWith("/"))&&(vcloudLink=`${baseUrl}${vcloudLink}`,console.log("New vcloudLink",vcloudLink));const vcloudRes=yield fetch(vcloudLink,{headers:headers,signal:signal,redirect:"follow"}),vcloudText=yield vcloudRes.text(),$=cheerio.load(vcloudText),linkClass=$(".btn-success.btn-lg.h6,.btn-danger,.btn-secondary");for(const element of linkClass){let link2=$(element).attr("href")||"";switch(!0){case null==link2?void 0:link2.includes("pixeld"):if(console.log("Pixeldrain link found:",link2),!(null==link2?void 0:link2.includes("api"))){const redirectedPixelDrainUrl=getRedirectedPixelDrainUrl(vLinkText,vcloudText);redirectedPixelDrainUrl&&(console.log("Special case for token negn6f",redirectedPixelDrainUrl),link2=redirectedPixelDrainUrl);const token=null==(_c=link2.split("/").pop())?void 0:_c.split("?")[0],baseUrl2=link2.split("/").slice(0,-2).join("/");link2=`${baseUrl2}/api/file/${token}`}streamLinks.push({server:"Pixeldrain",link:link2,type:"mkv"});break;case(null==link2?void 0:link2.includes(".dev"))&&!(null==link2?void 0:link2.includes("/?id=")):streamLinks.push({server:"Cf Worker",link:link2,type:"mkv"});break;case(null==link2?void 0:link2.includes("hubcloud"))||(null==link2?void 0:link2.includes("/?id=")):try{const newLinkRes=yield fetch(link2,{method:"HEAD",headers:headers,signal:signal,redirect:"manual"});let newLink=link2;if(newLink=newLinkRes.status>=300&&newLinkRes.status<400?newLinkRes.headers.get("location")||link2:newLinkRes.url&&newLinkRes.url!==link2?newLinkRes.url:newLinkRes.headers.get("location")||link2,newLink.includes("googleusercontent"))newLink=newLink.split("?link=")[1];else{const newLinkRes2=yield fetch(newLink,{method:"HEAD",headers:headers,signal:signal,redirect:"manual"});newLink=newLinkRes2.status>=300&&newLinkRes2.status<400?(null==(_d=newLinkRes2.headers.get("location"))?void 0:_d.split("?link=")[1])||newLink:newLinkRes2.url&&newLinkRes2.url!==newLink?newLinkRes2.url.split("?link=")[1]||newLinkRes2.url:(null==(_e=newLinkRes2.headers.get("location"))?void 0:_e.split("?link=")[1])||newLink}streamLinks.push({server:"hubcloud",link:newLink,type:"mkv"})}catch(error){console.log("hubcloudExtractor error in hubcloud link: ",error)}break;case null==link2?void 0:link2.includes("cloudflarestorage"):streamLinks.push({server:"CfStorage",link:link2,type:"mkv"});break;case(null==link2?void 0:link2.includes("fastdl"))||(null==link2?void 0:link2.includes("fsl.")):streamLinks.push({server:"FastDl",link:link2,type:"mkv"});break;case link2.includes("hubcdn")&&!link2.includes("/?id="):streamLinks.push({server:"HubCdn",link:link2,type:"mkv"});break;default:if((null==link2?void 0:link2.includes(".mkv"))||(null==link2?void 0:link2.includes("?token="))){const serverName=(null==(_g=null==(_f=link2.match(/^(?:https?:\/\/)?(?:www\.)?([^\/]+)/i))?void 0:_f[1])?void 0:_g.replace(/\./g," "))||"Unknown";streamLinks.push({server:serverName,link:link2,type:"mkv"})}}}return console.log("streamLinks",streamLinks),streamLinks}catch(error){return console.log("hubcloudExtractor error: ",(null==error?void 0:error.message)||error),[]}})}function gdflixExtractor(link,signal,axios,cheerio,headers){return __async(this,null,function*(){var _a,_b,_c,_d,_e,_f,_g,_h;try{const streamLinks=[],res=yield axios(`${link}`,{headers:headers,signal:signal});console.log("gdflixExtractor",link);const data=res.data;let $drive=cheerio.load(data);if(null==(_a=$drive("body").attr("onload"))?void 0:_a.includes("location.replace")){const newLink=null==(_d=null==(_c=null==(_b=$drive("body").attr("onload"))?void 0:_b.split("location.replace('"))?void 0:_c[1].split("'"))?void 0:_d[0];if(console.log("newLink",newLink),newLink){const newRes=yield axios.get(newLink,{headers:headers,signal:signal});$drive=cheerio.load(newRes.data)}}try{const baseUrl=link.split("/").slice(0,3).join("/"),resumeDrive=$drive(".btn-secondary").attr("href")||"";if(console.log("resumeDrive",resumeDrive),resumeDrive.includes("indexbot")){const resumeBotRes=yield axios.get(resumeDrive,{headers:headers}),resumeBotToken=resumeBotRes.data.match(/formData\.append\('token', '([a-f0-9]+)'\)/)[1],resumeBotBody=new FormData;resumeBotBody.append("token",resumeBotToken);const resumeBotPath=resumeBotRes.data.match(/fetch\('\/download\?id=([a-zA-Z0-9\/+]+)'/)[1],resumeBotBaseUrl=resumeDrive.split("/download")[0],resumeBotDownload=yield fetch(resumeBotBaseUrl+"/download?id="+resumeBotPath,{method:"POST",body:resumeBotBody,headers:{Referer:resumeDrive,Cookie:"PHPSESSID=7e9658ce7c805dab5bbcea9046f7f308"}}),resumeBotDownloadData=yield resumeBotDownload.json();console.log("resumeBotDownloadData",resumeBotDownloadData.url),streamLinks.push({server:"ResumeBot",link:resumeBotDownloadData.url,type:"mkv"})}else{const url=baseUrl+resumeDrive,resumeDriveHtml=(yield axios.get(url,{headers:headers})).data,resumeLink=cheerio.load(resumeDriveHtml)(".btn-success").attr("href");resumeLink&&streamLinks.push({server:"ResumeCloud",link:resumeLink,type:"mkv"})}}catch(err){console.log("Resume link not found")}try{const seed=$drive(".btn-danger").attr("href")||"";if(console.log("seed",seed),seed.includes("?url=")){const instantToken=seed.split("=")[1],InstantFromData=new FormData;InstantFromData.append("keys",instantToken);const videoSeedUrl=seed.split("/").slice(0,3).join("/")+"/api",instantLinkRes=yield fetch(videoSeedUrl,{method:"POST",body:InstantFromData,headers:{"x-token":videoSeedUrl}}),instantLinkData=yield instantLinkRes.json();if(!1===instantLinkData.error){const instantLink=instantLinkData.url;streamLinks.push({server:"Gdrive-Instant",link:instantLink,type:"mkv"})}else console.log("Instant link not found",instantLinkData)}else{const newLinkRes=yield axios.head(seed,{headers:headers,signal:signal});console.log("newLinkRes",null==(_e=newLinkRes.request)?void 0:_e.responseURL);const newLink=(null==(_h=null==(_g=null==(_f=newLinkRes.request)?void 0:_f.responseURL)?void 0:_g.split("?url="))?void 0:_h[1])||seed;streamLinks.push({server:"G-Drive",link:newLink,type:"mkv"})}}catch(err){console.log("Instant link not found",err)}return streamLinks}catch(error){return console.log("gdflix error: ",error),[]}})}__name(hubcloudExtractor,"hubcloudExtractor"),__name(gdflixExtractor,"gdflixExtractor");var getStream=__name(_0=>__async(null,[_0],function*({link:link,signal:signal,providerContext:providerContext}){var _a;const{axios:axios,cheerio:cheerio,commonHeaders:headers}=providerContext;try{let newLink=link;if(console.log("getStream 1",link),link.includes("linkstore")){console.log("linkstore detected");const res=yield fetch(link,{signal:signal,headers:{accept:"text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7","accept-language":"en-US,en;q=0.9,en-IN;q=0.8","cache-control":"no-cache",pragma:"no-cache",priority:"u=0, i","sec-ch-ua":'"Microsoft Edge";v="137", "Chromium";v="137", "Not/A)Brand";v="24"',"sec-ch-ua-mobile":"?0","sec-ch-ua-platform":'"Windows"',"sec-fetch-dest":"document","sec-fetch-mode":"navigate","sec-fetch-site":"none","sec-fetch-user":"?1","upgrade-insecure-requests":"1",cookie:"PHPSESSID=9o57cff841dqtv8djtn1rp1712; ext_name=ojplmecpdpgccookcobabopnaifgidhf"}}),refreshMetaMatch=(yield res.text()).match(/__defProp(target,"name",{value:value,configurable:!0}),__export=(target,all)=>{for(var name in all)__defProp(target,name,{get:all[name],enumerable:!0})},__copyProps=(to,from,except,desc)=>{if(from&&"object"==typeof from||"function"==typeof from)for(let key of __getOwnPropNames(from))__hasOwnProp.call(to,key)||key===except||__defProp(to,key,{get:()=>from[key],enumerable:!(desc=__getOwnPropDesc(from,key))||desc.enumerable});return to},__toCommonJS=mod=>__copyProps(__defProp({},"__esModule",{value:!0}),mod),__async=(__this,__arguments,generator)=>new Promise((resolve,reject)=>{var fulfilled=value=>{try{step(generator.next(value))}catch(e){reject(e)}},rejected=value=>{try{step(generator.throw(value))}catch(e){reject(e)}},step=x=>x.done?resolve(x.value):Promise.resolve(x.value).then(fulfilled,rejected);step((generator=generator.apply(__this,__arguments)).next())}),episodes_exports={};__export(episodes_exports,{getEpisodes:()=>getEpisodes});var getEpisodes=__name(function(_0){return __async(this,arguments,function*({url:url,providerContext:providerContext}){try{const{axios:axios,cheerio:cheerio}=providerContext,html=(yield axios.get(url)).data;let $=cheerio.load(html);const episodeLinks=[];if($('a:contains("HubCloud")').map((i,element)=>{const title=$(element).parent().prev().text(),link=$(element).attr("href");link&&(title.includes("Ep")||title.includes("Download"))&&episodeLinks.push({title:title.includes("Download")?"Play":title,link:link})}),0===episodeLinks.length){const streamingServices=["hubcloud","gdflix"];let currentTitle="";$('h5 span[style*="color"], h5').each((i,element)=>{const text=$(element).text().trim();if(text&&(text.match(/\d{3,4}p/)||text.includes("Ep")||text.includes("Episode"))){currentTitle=text;let nextElement=$(element).parent();for(let j=0;j<10&&(nextElement=nextElement.next(),nextElement.length);j++)nextElement.find("a[href]").each((k,linkEl)=>{const href=$(linkEl).attr("href");if(href&&streamingServices.some(service=>href.includes(service))){let serverName="Play";href.includes("hubcloud")?serverName="HubCloud":href.includes("gdflix")?serverName="GDFlix":href.includes("pixeldrain")?serverName="Pixeldrain":href.includes("fastdl")&&(serverName="FastDL");const title=currentTitle?`${currentTitle} - ${serverName}`:serverName;episodeLinks.push({title:title,link:href})}})}})}return episodeLinks.length>0?episodeLinks:[{title:"Play",link:url}]}catch(err){return console.error(err),[{title:"Server 1",link:url}]}})},"getEpisodes");exports.getEpisodes=getEpisodes; \ No newline at end of file +"use strict";var __defProp=Object.defineProperty,__getOwnPropDesc=Object.getOwnPropertyDescriptor,__getOwnPropNames=Object.getOwnPropertyNames,__hasOwnProp=Object.prototype.hasOwnProperty,__name=(target,value)=>__defProp(target,"name",{value:value,configurable:!0}),__export=(target,all)=>{for(var name in all)__defProp(target,name,{get:all[name],enumerable:!0})},__copyProps=(to,from,except,desc)=>{if(from&&"object"==typeof from||"function"==typeof from)for(let key of __getOwnPropNames(from))__hasOwnProp.call(to,key)||key===except||__defProp(to,key,{get:()=>from[key],enumerable:!(desc=__getOwnPropDesc(from,key))||desc.enumerable});return to},__toCommonJS=mod=>__copyProps(__defProp({},"__esModule",{value:!0}),mod),__async=(__this,__arguments,generator)=>new Promise((resolve,reject)=>{var fulfilled=value=>{try{step(generator.next(value))}catch(e){reject(e)}},rejected=value=>{try{step(generator.throw(value))}catch(e){reject(e)}},step=x=>x.done?resolve(x.value):Promise.resolve(x.value).then(fulfilled,rejected);step((generator=generator.apply(__this,__arguments)).next())}),episodes_exports={};__export(episodes_exports,{getEpisodes:()=>getEpisodes});var getEpisodes=__name(function(_0){return __async(this,arguments,function*({url:url,providerContext:providerContext}){var _a;try{const{axios:axios,cheerio:cheerio}=providerContext,html=(yield axios.get(url)).data;let $=cheerio.load(html);const episodeLinks=[];if($('a:contains("HubCloud")').map((i,element)=>{const title=$(element).parent().prev().text(),link=$(element).attr("href");link&&(title.includes("Ep")||title.includes("Download"))&&episodeLinks.push({title:title.includes("Download")?"Play":title,link:link})}),0===episodeLinks.length){const streamingServices=["hubcloud","gdflix"];let currentTitle="";$('h5 span[style*="color"], h5').each((i,element)=>{const text=$(element).text().trim();if(text&&(text.match(/\d{3,4}p/)||text.includes("Ep")||text.includes("Episode"))){currentTitle=text;let nextElement=$(element).parent();for(let j=0;j<10&&(nextElement=nextElement.next(),nextElement.length);j++)nextElement.find("a[href]").each((k,linkEl)=>{const href=$(linkEl).attr("href");if(href&&streamingServices.some(service=>href.includes(service))){let serverName="Play";href.includes("hubcloud")?serverName="HubCloud":href.includes("gdflix")?serverName="GDFlix":href.includes("pixeldrain")?serverName="Pixeldrain":href.includes("fastdl")&&(serverName="FastDL");const title=currentTitle?`${currentTitle} - ${serverName}`:serverName;episodeLinks.push({title:title,link:href})}})}})}if(0===episodeLinks.length){const hubcloudLink=null==(_a=html.match(/https:\/\/hubcloud\.[^\/]+\/drive\/[^"'\s]+/i))?void 0:_a[0];hubcloudLink&&episodeLinks.push({title:"Play",link:hubcloudLink})}return console.log("episodeLinks:",episodeLinks),episodeLinks.length>0?episodeLinks:[{title:"Play",link:url}]}catch(err){return console.error(err),[{title:"Server 1",link:url}]}})},"getEpisodes");exports.getEpisodes=getEpisodes; \ No newline at end of file diff --git a/dist/drive/posts.js b/dist/drive/posts.js index d42c4ad..2b6d8f2 100644 --- a/dist/drive/posts.js +++ b/dist/drive/posts.js @@ -1 +1 @@ -"use strict";var __defProp=Object.defineProperty,__getOwnPropDesc=Object.getOwnPropertyDescriptor,__getOwnPropNames=Object.getOwnPropertyNames,__hasOwnProp=Object.prototype.hasOwnProperty,__name=(target,value)=>__defProp(target,"name",{value:value,configurable:!0}),__export=(target,all)=>{for(var name in all)__defProp(target,name,{get:all[name],enumerable:!0})},__copyProps=(to,from,except,desc)=>{if(from&&"object"==typeof from||"function"==typeof from)for(let key of __getOwnPropNames(from))__hasOwnProp.call(to,key)||key===except||__defProp(to,key,{get:()=>from[key],enumerable:!(desc=__getOwnPropDesc(from,key))||desc.enumerable});return to},__toCommonJS=mod=>__copyProps(__defProp({},"__esModule",{value:!0}),mod),__async=(__this,__arguments,generator)=>new Promise((resolve,reject)=>{var fulfilled=value=>{try{step(generator.next(value))}catch(e){reject(e)}},rejected=value=>{try{step(generator.throw(value))}catch(e){reject(e)}},step=x=>x.done?resolve(x.value):Promise.resolve(x.value).then(fulfilled,rejected);step((generator=generator.apply(__this,__arguments)).next())}),posts_exports={};__export(posts_exports,{getPosts:()=>getPosts,getSearchPosts:()=>getSearchPosts});var getPosts=__name(function(_0){return __async(this,arguments,function*({filter:filter,page:page,signal:signal,providerContext:providerContext}){const{getBaseUrl:getBaseUrl}=providerContext;return posts({url:`${(yield getBaseUrl("drive"))+filter}page/${page}/`,signal:signal,providerContext:providerContext})})},"getPosts"),getSearchPosts=__name(function(_0){return __async(this,arguments,function*({searchQuery:searchQuery,page:page,signal:signal,providerContext:providerContext}){const{getBaseUrl:getBaseUrl}=providerContext;return posts({url:`${yield getBaseUrl("drive")}page/${page}/?s=${searchQuery}`,signal:signal,providerContext:providerContext})})},"getSearchPosts");function posts(_0){return __async(this,arguments,function*({url:url,signal:signal,providerContext:providerContext}){try{console.log("Fetching URL:",url);const{cheerio:cheerio}=providerContext,res=yield fetch(url,{signal:signal}),data=yield res.text(),$=cheerio.load(data),catalog=[];return $(".poster-card").map((i,element)=>{const title=$(element).find(".poster-title").text(),link=$(element).parent().attr("href"),image=$(element).find(".poster-image img").attr("src");console.log({title:title,link:link,image:image}),title&&link&&image&&catalog.push({title:title.replace("Download","").trim(),link:link,image:image})}),catalog}catch(err){return console.error("drive error ",err),[]}})}__name(posts,"posts"),exports.getPosts=getPosts,exports.getSearchPosts=getSearchPosts; \ No newline at end of file +"use strict";var __defProp=Object.defineProperty,__getOwnPropDesc=Object.getOwnPropertyDescriptor,__getOwnPropNames=Object.getOwnPropertyNames,__hasOwnProp=Object.prototype.hasOwnProperty,__name=(target,value)=>__defProp(target,"name",{value:value,configurable:!0}),__export=(target,all)=>{for(var name in all)__defProp(target,name,{get:all[name],enumerable:!0})},__copyProps=(to,from,except,desc)=>{if(from&&"object"==typeof from||"function"==typeof from)for(let key of __getOwnPropNames(from))__hasOwnProp.call(to,key)||key===except||__defProp(to,key,{get:()=>from[key],enumerable:!(desc=__getOwnPropDesc(from,key))||desc.enumerable});return to},__toCommonJS=mod=>__copyProps(__defProp({},"__esModule",{value:!0}),mod),__async=(__this,__arguments,generator)=>new Promise((resolve,reject)=>{var fulfilled=value=>{try{step(generator.next(value))}catch(e){reject(e)}},rejected=value=>{try{step(generator.throw(value))}catch(e){reject(e)}},step=x=>x.done?resolve(x.value):Promise.resolve(x.value).then(fulfilled,rejected);step((generator=generator.apply(__this,__arguments)).next())}),posts_exports={};__export(posts_exports,{getPosts:()=>getPosts,getSearchPosts:()=>getSearchPosts});var getPosts=__name(function(_0){return __async(this,arguments,function*({filter:filter,page:page,signal:signal,providerContext:providerContext}){const{getBaseUrl:getBaseUrl}=providerContext;return posts({url:`${(yield getBaseUrl("drive"))+filter}page/${page}/`,signal:signal,providerContext:providerContext})})},"getPosts"),getSearchPosts=__name(function(_0){return __async(this,arguments,function*({searchQuery:searchQuery,page:page,signal:signal,providerContext:providerContext}){const{getBaseUrl:getBaseUrl}=providerContext;return posts({url:`${yield getBaseUrl("drive")}page/${page}/?s=${searchQuery}`,signal:signal,providerContext:providerContext})})},"getSearchPosts");function posts(_0){return __async(this,arguments,function*({url:url,signal:signal,providerContext:providerContext}){try{console.log("Fetching URL:",url);const{cheerio:cheerio}=providerContext,res=yield fetch(url,{signal:signal}),data=yield res.text(),$=cheerio.load(data),catalog=[];return $(".poster-card").map((i,element)=>{const title=$(element).find(".poster-title").text(),link=$(element).parent().attr("href"),image=$(element).find(".poster-image img").attr("src");title&&link&&image&&catalog.push({title:title.replace("Download","").trim(),link:link,image:image})}),catalog}catch(err){return console.error("drive error ",err),[]}})}__name(posts,"posts"),exports.getPosts=getPosts,exports.getSearchPosts=getSearchPosts; \ No newline at end of file diff --git a/dist/drive/stream.js b/dist/drive/stream.js index 5445dc7..d6a93ce 100644 --- a/dist/drive/stream.js +++ b/dist/drive/stream.js @@ -1 +1 @@ -"use strict";var __defProp=Object.defineProperty,__getOwnPropDesc=Object.getOwnPropertyDescriptor,__getOwnPropNames=Object.getOwnPropertyNames,__hasOwnProp=Object.prototype.hasOwnProperty,__name=(target,value)=>__defProp(target,"name",{value:value,configurable:!0}),__export=(target,all)=>{for(var name in all)__defProp(target,name,{get:all[name],enumerable:!0})},__copyProps=(to,from,except,desc)=>{if(from&&"object"==typeof from||"function"==typeof from)for(let key of __getOwnPropNames(from))__hasOwnProp.call(to,key)||key===except||__defProp(to,key,{get:()=>from[key],enumerable:!(desc=__getOwnPropDesc(from,key))||desc.enumerable});return to},__toCommonJS=mod=>__copyProps(__defProp({},"__esModule",{value:!0}),mod),__async=(__this,__arguments,generator)=>new Promise((resolve,reject)=>{var fulfilled=value=>{try{step(generator.next(value))}catch(e){reject(e)}},rejected=value=>{try{step(generator.throw(value))}catch(e){reject(e)}},step=x=>x.done?resolve(x.value):Promise.resolve(x.value).then(fulfilled,rejected);step((generator=generator.apply(__this,__arguments)).next())}),stream_exports={};__export(stream_exports,{getStream:()=>getStream});var hubcloudDecode=__name(function(value){return void 0===value?"":atob(value.toString())},"hubcloudDecode");function hubcloudExtractor(link,signal,axios,cheerio,headers){return __async(this,null,function*(){var _a,_b,_c,_d,_e,_f;try{headers.Cookie="ext_name=ojplmecpdpgccookcobabopnaifgidhf; xla=s4t; cf_clearance=woQrFGXtLfmEMBEiGUsVHrUBMT8s3cmguIzmMjmvpkg-1770053679-1.2.1.1-xBrQdciOJsweUF6F2T_OtH6jmyanN_TduQ0yslc_XqjU6RcHSxI7.YOKv6ry7oYo64868HYoULnVyww536H2eVI3R2e4wKzsky6abjPdfQPxqpUaXjxfJ02o6jl3_Vkwr4uiaU7Wy596Vdst3y78HXvVmKdIohhtPvp.vZ9_L7wvWdce0GRixjh_6JiqWmWMws46hwEt3hboaS1e1e4EoWCvj5b0M_jVwvSxBOAW5emFzvT3QrnRh4nyYmKDERnY",console.log("hubcloudExtractor",link),console.log("headers",headers);const baseUrl=link.split("/").slice(0,3).join("/"),streamLinks=[],vLinkText=(yield axios(`${link}`,{headers:headers,signal:signal})).data,$vLink=cheerio.load(vLinkText),vLinkRedirect=vLinkText.match(/var\s+url\s*=\s*'([^']+)';/)||[];let vcloudLink=hubcloudDecode(null==(_b=null==(_a=vLinkRedirect[1])?void 0:_a.split("r="))?void 0:_b[1])||vLinkRedirect[1]||$vLink(".fa-file-download.fa-lg").parent().attr("href")||link;console.log("vcloudLink",vcloudLink),(null==vcloudLink?void 0:vcloudLink.startsWith("/"))&&(vcloudLink=`${baseUrl}${vcloudLink}`,console.log("New vcloudLink",vcloudLink));const vcloudRes=yield fetch(vcloudLink,{headers:headers,signal:signal,redirect:"follow"}),$=cheerio.load(yield vcloudRes.text()),linkClass=$(".btn-success.btn-lg.h6,.btn-danger,.btn-secondary");for(const element of linkClass){let link2=$(element).attr("href")||"";switch(!0){case null==link2?void 0:link2.includes("pixeld"):if(!(null==link2?void 0:link2.includes("api"))){const token=link2.split("/").pop(),baseUrl2=link2.split("/").slice(0,-2).join("/");link2=`${baseUrl2}/api/file/${token}`}streamLinks.push({server:"Pixeldrain",link:link2,type:"mkv"});break;case(null==link2?void 0:link2.includes(".dev"))&&!(null==link2?void 0:link2.includes("/?id=")):streamLinks.push({server:"Cf Worker",link:link2,type:"mkv"});break;case(null==link2?void 0:link2.includes("hubcloud"))||(null==link2?void 0:link2.includes("/?id=")):try{const newLinkRes=yield fetch(link2,{method:"HEAD",headers:headers,signal:signal,redirect:"manual"});let newLink=link2;if(newLink=newLinkRes.status>=300&&newLinkRes.status<400?newLinkRes.headers.get("location")||link2:newLinkRes.url&&newLinkRes.url!==link2?newLinkRes.url:newLinkRes.headers.get("location")||link2,newLink.includes("googleusercontent"))newLink=newLink.split("?link=")[1];else{const newLinkRes2=yield fetch(newLink,{method:"HEAD",headers:headers,signal:signal,redirect:"manual"});newLink=newLinkRes2.status>=300&&newLinkRes2.status<400?(null==(_c=newLinkRes2.headers.get("location"))?void 0:_c.split("?link=")[1])||newLink:newLinkRes2.url&&newLinkRes2.url!==newLink?newLinkRes2.url.split("?link=")[1]||newLinkRes2.url:(null==(_d=newLinkRes2.headers.get("location"))?void 0:_d.split("?link=")[1])||newLink}streamLinks.push({server:"hubcloud",link:newLink,type:"mkv"})}catch(error){console.log("hubcloudExtractor error in hubcloud link: ",error)}break;case null==link2?void 0:link2.includes("cloudflarestorage"):streamLinks.push({server:"CfStorage",link:link2,type:"mkv"});break;case(null==link2?void 0:link2.includes("fastdl"))||(null==link2?void 0:link2.includes("fsl.")):streamLinks.push({server:"FastDl",link:link2,type:"mkv"});break;case link2.includes("hubcdn")&&!link2.includes("/?id="):streamLinks.push({server:"HubCdn",link:link2,type:"mkv"});break;default:if((null==link2?void 0:link2.includes(".mkv"))||(null==link2?void 0:link2.includes("?token="))){const serverName=(null==(_f=null==(_e=link2.match(/^(?:https?:\/\/)?(?:www\.)?([^\/]+)/i))?void 0:_e[1])?void 0:_f.replace(/\./g," "))||"Unknown";streamLinks.push({server:serverName,link:link2,type:"mkv"})}}}return console.log("streamLinks",streamLinks),streamLinks}catch(error){return console.log("hubcloudExtractor error: ",(null==error?void 0:error.message)||error),[]}})}function gdflixExtractor(link,signal,axios,cheerio,headers){return __async(this,null,function*(){var _a,_b,_c,_d,_e,_f,_g,_h;try{const streamLinks=[],res=yield axios(`${link}`,{headers:headers,signal:signal});console.log("gdflixExtractor",link);const data=res.data;let $drive=cheerio.load(data);if(null==(_a=$drive("body").attr("onload"))?void 0:_a.includes("location.replace")){const newLink=null==(_d=null==(_c=null==(_b=$drive("body").attr("onload"))?void 0:_b.split("location.replace('"))?void 0:_c[1].split("'"))?void 0:_d[0];if(console.log("newLink",newLink),newLink){const newRes=yield axios.get(newLink,{headers:headers,signal:signal});$drive=cheerio.load(newRes.data)}}try{const baseUrl=link.split("/").slice(0,3).join("/"),resumeDrive=$drive(".btn-secondary").attr("href")||"";if(console.log("resumeDrive",resumeDrive),resumeDrive.includes("indexbot")){const resumeBotRes=yield axios.get(resumeDrive,{headers:headers}),resumeBotToken=resumeBotRes.data.match(/formData\.append\('token', '([a-f0-9]+)'\)/)[1],resumeBotBody=new FormData;resumeBotBody.append("token",resumeBotToken);const resumeBotPath=resumeBotRes.data.match(/fetch\('\/download\?id=([a-zA-Z0-9\/+]+)'/)[1],resumeBotBaseUrl=resumeDrive.split("/download")[0],resumeBotDownload=yield fetch(resumeBotBaseUrl+"/download?id="+resumeBotPath,{method:"POST",body:resumeBotBody,headers:{Referer:resumeDrive,Cookie:"PHPSESSID=7e9658ce7c805dab5bbcea9046f7f308"}}),resumeBotDownloadData=yield resumeBotDownload.json();console.log("resumeBotDownloadData",resumeBotDownloadData.url),streamLinks.push({server:"ResumeBot",link:resumeBotDownloadData.url,type:"mkv"})}else{const url=baseUrl+resumeDrive,resumeDriveHtml=(yield axios.get(url,{headers:headers})).data,resumeLink=cheerio.load(resumeDriveHtml)(".btn-success").attr("href");resumeLink&&streamLinks.push({server:"ResumeCloud",link:resumeLink,type:"mkv"})}}catch(err){console.log("Resume link not found")}try{const seed=$drive(".btn-danger").attr("href")||"";if(console.log("seed",seed),seed.includes("?url=")){const instantToken=seed.split("=")[1],InstantFromData=new FormData;InstantFromData.append("keys",instantToken);const videoSeedUrl=seed.split("/").slice(0,3).join("/")+"/api",instantLinkRes=yield fetch(videoSeedUrl,{method:"POST",body:InstantFromData,headers:{"x-token":videoSeedUrl}}),instantLinkData=yield instantLinkRes.json();if(!1===instantLinkData.error){const instantLink=instantLinkData.url;streamLinks.push({server:"Gdrive-Instant",link:instantLink,type:"mkv"})}else console.log("Instant link not found",instantLinkData)}else{const newLinkRes=yield axios.head(seed,{headers:headers,signal:signal});console.log("newLinkRes",null==(_e=newLinkRes.request)?void 0:_e.responseURL);const newLink=(null==(_h=null==(_g=null==(_f=newLinkRes.request)?void 0:_f.responseURL)?void 0:_g.split("?url="))?void 0:_h[1])||seed;streamLinks.push({server:"G-Drive",link:newLink,type:"mkv"})}}catch(err){console.log("Instant link not found",err)}return streamLinks}catch(error){return console.log("gdflix error: ",error),[]}})}__name(hubcloudExtractor,"hubcloudExtractor"),__name(gdflixExtractor,"gdflixExtractor");var getStream=__name(function(_0){return __async(this,arguments,function*({link:url,type:type,signal:signal,providerContext:providerContext}){var _a,_b;const{axios:axios,cheerio:cheerio,commonHeaders:headers}=providerContext;try{if("movie"===type){const html=(yield axios.get(url,{headers:headers})).data;url=cheerio.load(html)('a:contains("HubCloud")').attr("href")||url}let redirectUrl="";try{const res=yield axios.get(url,{headers:headers});redirectUrl=null==(_a=res.data.match(//i))?void 0:_a[1],url.includes("/archives/")&&(redirectUrl=null==(_b=res.data.match(/]*href="(https:\/\/hubcloud\.[^\/]+\/[^"]+)"/i))?void 0:_b[1])}catch(err){console.error("Hubcloud redirect err",(null==err?void 0:err.message)||err)}if(!redirectUrl){if(url.includes("hubcloud"))return console.log(" hubcloud link found in:",url),yield hubcloudExtractor(url,signal,axios,cheerio,headers);if(url.includes("gdflix"))return console.log("gdflix link found:",url),yield gdflixExtractor(url,signal,axios,cheerio,headers)}console.log("redirectUrl",redirectUrl);const data=(yield axios.get(redirectUrl,{headers:headers})).data,hubcloudLink=cheerio.load(data)(".fa-file-download").parent().attr("href");return yield hubcloudExtractor((null==hubcloudLink?void 0:hubcloudLink.includes("https://hubcloud"))?hubcloudLink:redirectUrl,signal,axios,cheerio,headers)}catch(err){return console.error("Movies Drive err",(null==err?void 0:err.message)||err),[]}})},"getStream");exports.getStream=getStream; \ No newline at end of file +"use strict";var __defProp=Object.defineProperty,__getOwnPropDesc=Object.getOwnPropertyDescriptor,__getOwnPropNames=Object.getOwnPropertyNames,__hasOwnProp=Object.prototype.hasOwnProperty,__name=(target,value)=>__defProp(target,"name",{value:value,configurable:!0}),__export=(target,all)=>{for(var name in all)__defProp(target,name,{get:all[name],enumerable:!0})},__copyProps=(to,from,except,desc)=>{if(from&&"object"==typeof from||"function"==typeof from)for(let key of __getOwnPropNames(from))__hasOwnProp.call(to,key)||key===except||__defProp(to,key,{get:()=>from[key],enumerable:!(desc=__getOwnPropDesc(from,key))||desc.enumerable});return to},__toCommonJS=mod=>__copyProps(__defProp({},"__esModule",{value:!0}),mod),__async=(__this,__arguments,generator)=>new Promise((resolve,reject)=>{var fulfilled=value=>{try{step(generator.next(value))}catch(e){reject(e)}},rejected=value=>{try{step(generator.throw(value))}catch(e){reject(e)}},step=x=>x.done?resolve(x.value):Promise.resolve(x.value).then(fulfilled,rejected);step((generator=generator.apply(__this,__arguments)).next())}),stream_exports={};__export(stream_exports,{getStream:()=>getStream});var hubcloudDecode=__name(function(value){return void 0===value?"":atob(value.toString())},"hubcloudDecode"),getPixelDrainUrl=__name(html=>{const match=html.match(/var\s+pxl\s*=\s*['"]([^'"]+)['"];?/i);return(null==match?void 0:match[1])||""},"getPixelDrainUrl"),getRedirectedPixelDrainUrl=__name((...htmlSources)=>{for(const html of htmlSources){if(!html)continue;const redirectedUrl=getPixelDrainUrl(html);if(redirectedUrl)return redirectedUrl}return""},"getRedirectedPixelDrainUrl");function hubcloudExtractor(link,signal,axios,cheerio,headers){return __async(this,null,function*(){var _a,_b,_c,_d,_e,_f,_g;try{headers.Cookie="ext_name=ojplmecpdpgccookcobabopnaifgidhf; xla=s4t; cf_clearance=woQrFGXtLfmEMBEiGUsVHrUBMT8s3cmguIzmMjmvpkg-1770053679-1.2.1.1-xBrQdciOJsweUF6F2T_OtH6jmyanN_TduQ0yslc_XqjU6RcHSxI7.YOKv6ry7oYo64868HYoULnVyww536H2eVI3R2e4wKzsky6abjPdfQPxqpUaXjxfJ02o6jl3_Vkwr4uiaU7Wy596Vdst3y78HXvVmKdIohhtPvp.vZ9_L7wvWdce0GRixjh_6JiqWmWMws46hwEt3hboaS1e1e4EoWCvj5b0M_jVwvSxBOAW5emFzvT3QrnRh4nyYmKDERnY",console.log("hubcloudExtractor",link);const baseUrl=link.split("/").slice(0,3).join("/"),streamLinks=[],vLinkText=(yield axios(`${link}`,{headers:headers,signal:signal})).data,$vLink=cheerio.load(vLinkText),vLinkRedirect=vLinkText.match(/var\s+url\s*=\s*'([^']+)';/)||[];let vcloudLink=hubcloudDecode(null==(_b=null==(_a=vLinkRedirect[1])?void 0:_a.split("r="))?void 0:_b[1])||vLinkRedirect[1]||$vLink(".fa-file-download.fa-lg").parent().attr("href")||link;console.log("vcloudLink",vcloudLink),(null==vcloudLink?void 0:vcloudLink.startsWith("/"))&&(vcloudLink=`${baseUrl}${vcloudLink}`,console.log("New vcloudLink",vcloudLink));const vcloudRes=yield fetch(vcloudLink,{headers:headers,signal:signal,redirect:"follow"}),vcloudText=yield vcloudRes.text(),$=cheerio.load(vcloudText),linkClass=$(".btn-success.btn-lg.h6,.btn-danger,.btn-secondary");for(const element of linkClass){let link2=$(element).attr("href")||"";switch(!0){case null==link2?void 0:link2.includes("pixeld"):if(console.log("Pixeldrain link found:",link2),!(null==link2?void 0:link2.includes("api"))){const redirectedPixelDrainUrl=getRedirectedPixelDrainUrl(vLinkText,vcloudText);redirectedPixelDrainUrl&&(console.log("Special case for token negn6f",redirectedPixelDrainUrl),link2=redirectedPixelDrainUrl);const token=null==(_c=link2.split("/").pop())?void 0:_c.split("?")[0],baseUrl2=link2.split("/").slice(0,-2).join("/");link2=`${baseUrl2}/api/file/${token}`}streamLinks.push({server:"Pixeldrain",link:link2,type:"mkv"});break;case(null==link2?void 0:link2.includes(".dev"))&&!(null==link2?void 0:link2.includes("/?id=")):streamLinks.push({server:"Cf Worker",link:link2,type:"mkv"});break;case(null==link2?void 0:link2.includes("hubcloud"))||(null==link2?void 0:link2.includes("/?id=")):try{const newLinkRes=yield fetch(link2,{method:"HEAD",headers:headers,signal:signal,redirect:"manual"});let newLink=link2;if(newLink=newLinkRes.status>=300&&newLinkRes.status<400?newLinkRes.headers.get("location")||link2:newLinkRes.url&&newLinkRes.url!==link2?newLinkRes.url:newLinkRes.headers.get("location")||link2,newLink.includes("googleusercontent"))newLink=newLink.split("?link=")[1];else{const newLinkRes2=yield fetch(newLink,{method:"HEAD",headers:headers,signal:signal,redirect:"manual"});newLink=newLinkRes2.status>=300&&newLinkRes2.status<400?(null==(_d=newLinkRes2.headers.get("location"))?void 0:_d.split("?link=")[1])||newLink:newLinkRes2.url&&newLinkRes2.url!==newLink?newLinkRes2.url.split("?link=")[1]||newLinkRes2.url:(null==(_e=newLinkRes2.headers.get("location"))?void 0:_e.split("?link=")[1])||newLink}streamLinks.push({server:"hubcloud",link:newLink,type:"mkv"})}catch(error){console.log("hubcloudExtractor error in hubcloud link: ",error)}break;case null==link2?void 0:link2.includes("cloudflarestorage"):streamLinks.push({server:"CfStorage",link:link2,type:"mkv"});break;case(null==link2?void 0:link2.includes("fastdl"))||(null==link2?void 0:link2.includes("fsl.")):streamLinks.push({server:"FastDl",link:link2,type:"mkv"});break;case link2.includes("hubcdn")&&!link2.includes("/?id="):streamLinks.push({server:"HubCdn",link:link2,type:"mkv"});break;default:if((null==link2?void 0:link2.includes(".mkv"))||(null==link2?void 0:link2.includes("?token="))){const serverName=(null==(_g=null==(_f=link2.match(/^(?:https?:\/\/)?(?:www\.)?([^\/]+)/i))?void 0:_f[1])?void 0:_g.replace(/\./g," "))||"Unknown";streamLinks.push({server:serverName,link:link2,type:"mkv"})}}}return console.log("streamLinks",streamLinks),streamLinks}catch(error){return console.log("hubcloudExtractor error: ",(null==error?void 0:error.message)||error),[]}})}function gdflixExtractor(link,signal,axios,cheerio,headers){return __async(this,null,function*(){var _a,_b,_c,_d,_e,_f,_g,_h;try{const streamLinks=[],res=yield axios(`${link}`,{headers:headers,signal:signal});console.log("gdflixExtractor",link);const data=res.data;let $drive=cheerio.load(data);if(null==(_a=$drive("body").attr("onload"))?void 0:_a.includes("location.replace")){const newLink=null==(_d=null==(_c=null==(_b=$drive("body").attr("onload"))?void 0:_b.split("location.replace('"))?void 0:_c[1].split("'"))?void 0:_d[0];if(console.log("newLink",newLink),newLink){const newRes=yield axios.get(newLink,{headers:headers,signal:signal});$drive=cheerio.load(newRes.data)}}try{const baseUrl=link.split("/").slice(0,3).join("/"),resumeDrive=$drive(".btn-secondary").attr("href")||"";if(console.log("resumeDrive",resumeDrive),resumeDrive.includes("indexbot")){const resumeBotRes=yield axios.get(resumeDrive,{headers:headers}),resumeBotToken=resumeBotRes.data.match(/formData\.append\('token', '([a-f0-9]+)'\)/)[1],resumeBotBody=new FormData;resumeBotBody.append("token",resumeBotToken);const resumeBotPath=resumeBotRes.data.match(/fetch\('\/download\?id=([a-zA-Z0-9\/+]+)'/)[1],resumeBotBaseUrl=resumeDrive.split("/download")[0],resumeBotDownload=yield fetch(resumeBotBaseUrl+"/download?id="+resumeBotPath,{method:"POST",body:resumeBotBody,headers:{Referer:resumeDrive,Cookie:"PHPSESSID=7e9658ce7c805dab5bbcea9046f7f308"}}),resumeBotDownloadData=yield resumeBotDownload.json();console.log("resumeBotDownloadData",resumeBotDownloadData.url),streamLinks.push({server:"ResumeBot",link:resumeBotDownloadData.url,type:"mkv"})}else{const url=baseUrl+resumeDrive,resumeDriveHtml=(yield axios.get(url,{headers:headers})).data,resumeLink=cheerio.load(resumeDriveHtml)(".btn-success").attr("href");resumeLink&&streamLinks.push({server:"ResumeCloud",link:resumeLink,type:"mkv"})}}catch(err){console.log("Resume link not found")}try{const seed=$drive(".btn-danger").attr("href")||"";if(console.log("seed",seed),seed.includes("?url=")){const instantToken=seed.split("=")[1],InstantFromData=new FormData;InstantFromData.append("keys",instantToken);const videoSeedUrl=seed.split("/").slice(0,3).join("/")+"/api",instantLinkRes=yield fetch(videoSeedUrl,{method:"POST",body:InstantFromData,headers:{"x-token":videoSeedUrl}}),instantLinkData=yield instantLinkRes.json();if(!1===instantLinkData.error){const instantLink=instantLinkData.url;streamLinks.push({server:"Gdrive-Instant",link:instantLink,type:"mkv"})}else console.log("Instant link not found",instantLinkData)}else{const newLinkRes=yield axios.head(seed,{headers:headers,signal:signal});console.log("newLinkRes",null==(_e=newLinkRes.request)?void 0:_e.responseURL);const newLink=(null==(_h=null==(_g=null==(_f=newLinkRes.request)?void 0:_f.responseURL)?void 0:_g.split("?url="))?void 0:_h[1])||seed;streamLinks.push({server:"G-Drive",link:newLink,type:"mkv"})}}catch(err){console.log("Instant link not found",err)}return streamLinks}catch(error){return console.log("gdflix error: ",error),[]}})}__name(hubcloudExtractor,"hubcloudExtractor"),__name(gdflixExtractor,"gdflixExtractor");var getStream=__name(function(_0){return __async(this,arguments,function*({link:url,type:type,signal:signal,providerContext:providerContext}){var _a,_b;const{axios:axios,cheerio:cheerio,commonHeaders:headers}=providerContext;try{if("movie"===type){const html=(yield axios.get(url,{headers:headers})).data;url=cheerio.load(html)('a:contains("HubCloud")').attr("href")||url}let redirectUrl="";try{const res=yield axios.get(url,{headers:headers});redirectUrl=null==(_a=res.data.match(//i))?void 0:_a[1],url.includes("/archives/")&&(redirectUrl=null==(_b=res.data.match(/]*href="(https:\/\/hubcloud\.[^\/]+\/[^"]+)"/i))?void 0:_b[1])}catch(err){console.error("Hubcloud redirect err",(null==err?void 0:err.message)||err)}if(!redirectUrl){if(url.includes("hubcloud"))return console.log(" hubcloud link found in:",url),yield hubcloudExtractor(url,signal,axios,cheerio,headers);if(url.includes("gdflix"))return console.log("gdflix link found:",url),yield gdflixExtractor(url,signal,axios,cheerio,headers)}console.log("redirectUrl",redirectUrl);const data=(yield axios.get(redirectUrl,{headers:headers})).data,hubcloudLink=cheerio.load(data)(".fa-file-download").parent().attr("href");return yield hubcloudExtractor((null==hubcloudLink?void 0:hubcloudLink.includes("https://hubcloud"))?hubcloudLink:redirectUrl,signal,axios,cheerio,headers)}catch(err){return console.error("Movies Drive err",(null==err?void 0:err.message)||err),[]}})},"getStream");exports.getStream=getStream; \ No newline at end of file diff --git a/dist/hdhub4u/stream.js b/dist/hdhub4u/stream.js index d586bef..6a220fe 100644 --- a/dist/hdhub4u/stream.js +++ b/dist/hdhub4u/stream.js @@ -1 +1 @@ -"use strict";var __defProp=Object.defineProperty,__getOwnPropDesc=Object.getOwnPropertyDescriptor,__getOwnPropNames=Object.getOwnPropertyNames,__hasOwnProp=Object.prototype.hasOwnProperty,__name=(target,value)=>__defProp(target,"name",{value:value,configurable:!0}),__export=(target,all)=>{for(var name in all)__defProp(target,name,{get:all[name],enumerable:!0})},__copyProps=(to,from,except,desc)=>{if(from&&"object"==typeof from||"function"==typeof from)for(let key of __getOwnPropNames(from))__hasOwnProp.call(to,key)||key===except||__defProp(to,key,{get:()=>from[key],enumerable:!(desc=__getOwnPropDesc(from,key))||desc.enumerable});return to},__toCommonJS=mod=>__copyProps(__defProp({},"__esModule",{value:!0}),mod),__async=(__this,__arguments,generator)=>new Promise((resolve,reject)=>{var fulfilled=value=>{try{step(generator.next(value))}catch(e){reject(e)}},rejected=value=>{try{step(generator.throw(value))}catch(e){reject(e)}},step=x=>x.done?resolve(x.value):Promise.resolve(x.value).then(fulfilled,rejected);step((generator=generator.apply(__this,__arguments)).next())}),stream_exports={};__export(stream_exports,{decodeString:()=>decodeString,getRedirectLinks:()=>getRedirectLinks,getStream:()=>getStream});var hubcloudDecode=__name(function(value){return void 0===value?"":atob(value.toString())},"hubcloudDecode");function hubcloudExtractor(link,signal,axios,cheerio,headers){return __async(this,null,function*(){var _a,_b,_c,_d,_e,_f;try{headers.Cookie="ext_name=ojplmecpdpgccookcobabopnaifgidhf; xla=s4t; cf_clearance=woQrFGXtLfmEMBEiGUsVHrUBMT8s3cmguIzmMjmvpkg-1770053679-1.2.1.1-xBrQdciOJsweUF6F2T_OtH6jmyanN_TduQ0yslc_XqjU6RcHSxI7.YOKv6ry7oYo64868HYoULnVyww536H2eVI3R2e4wKzsky6abjPdfQPxqpUaXjxfJ02o6jl3_Vkwr4uiaU7Wy596Vdst3y78HXvVmKdIohhtPvp.vZ9_L7wvWdce0GRixjh_6JiqWmWMws46hwEt3hboaS1e1e4EoWCvj5b0M_jVwvSxBOAW5emFzvT3QrnRh4nyYmKDERnY",console.log("hubcloudExtractor",link),console.log("headers",headers);const baseUrl=link.split("/").slice(0,3).join("/"),streamLinks=[],vLinkText=(yield axios(`${link}`,{headers:headers,signal:signal})).data,$vLink=cheerio.load(vLinkText),vLinkRedirect=vLinkText.match(/var\s+url\s*=\s*'([^']+)';/)||[];let vcloudLink=hubcloudDecode(null==(_b=null==(_a=vLinkRedirect[1])?void 0:_a.split("r="))?void 0:_b[1])||vLinkRedirect[1]||$vLink(".fa-file-download.fa-lg").parent().attr("href")||link;console.log("vcloudLink",vcloudLink),(null==vcloudLink?void 0:vcloudLink.startsWith("/"))&&(vcloudLink=`${baseUrl}${vcloudLink}`,console.log("New vcloudLink",vcloudLink));const vcloudRes=yield fetch(vcloudLink,{headers:headers,signal:signal,redirect:"follow"}),$=cheerio.load(yield vcloudRes.text()),linkClass=$(".btn-success.btn-lg.h6,.btn-danger,.btn-secondary");for(const element of linkClass){let link2=$(element).attr("href")||"";switch(!0){case null==link2?void 0:link2.includes("pixeld"):if(!(null==link2?void 0:link2.includes("api"))){const token=link2.split("/").pop(),baseUrl2=link2.split("/").slice(0,-2).join("/");link2=`${baseUrl2}/api/file/${token}`}streamLinks.push({server:"Pixeldrain",link:link2,type:"mkv"});break;case(null==link2?void 0:link2.includes(".dev"))&&!(null==link2?void 0:link2.includes("/?id=")):streamLinks.push({server:"Cf Worker",link:link2,type:"mkv"});break;case(null==link2?void 0:link2.includes("hubcloud"))||(null==link2?void 0:link2.includes("/?id=")):try{const newLinkRes=yield fetch(link2,{method:"HEAD",headers:headers,signal:signal,redirect:"manual"});let newLink=link2;if(newLink=newLinkRes.status>=300&&newLinkRes.status<400?newLinkRes.headers.get("location")||link2:newLinkRes.url&&newLinkRes.url!==link2?newLinkRes.url:newLinkRes.headers.get("location")||link2,newLink.includes("googleusercontent"))newLink=newLink.split("?link=")[1];else{const newLinkRes2=yield fetch(newLink,{method:"HEAD",headers:headers,signal:signal,redirect:"manual"});newLink=newLinkRes2.status>=300&&newLinkRes2.status<400?(null==(_c=newLinkRes2.headers.get("location"))?void 0:_c.split("?link=")[1])||newLink:newLinkRes2.url&&newLinkRes2.url!==newLink?newLinkRes2.url.split("?link=")[1]||newLinkRes2.url:(null==(_d=newLinkRes2.headers.get("location"))?void 0:_d.split("?link=")[1])||newLink}streamLinks.push({server:"hubcloud",link:newLink,type:"mkv"})}catch(error){console.log("hubcloudExtractor error in hubcloud link: ",error)}break;case null==link2?void 0:link2.includes("cloudflarestorage"):streamLinks.push({server:"CfStorage",link:link2,type:"mkv"});break;case(null==link2?void 0:link2.includes("fastdl"))||(null==link2?void 0:link2.includes("fsl.")):streamLinks.push({server:"FastDl",link:link2,type:"mkv"});break;case link2.includes("hubcdn")&&!link2.includes("/?id="):streamLinks.push({server:"HubCdn",link:link2,type:"mkv"});break;default:if((null==link2?void 0:link2.includes(".mkv"))||(null==link2?void 0:link2.includes("?token="))){const serverName=(null==(_f=null==(_e=link2.match(/^(?:https?:\/\/)?(?:www\.)?([^\/]+)/i))?void 0:_e[1])?void 0:_f.replace(/\./g," "))||"Unknown";streamLinks.push({server:serverName,link:link2,type:"mkv"})}}}return console.log("streamLinks",streamLinks),streamLinks}catch(error){return console.log("hubcloudExtractor error: ",(null==error?void 0:error.message)||error),[]}})}function getStream(_0){return __async(this,arguments,function*({link:link,signal:signal,providerContext:providerContext}){var _a,_b,_c,_d;const{axios:axios,cheerio:cheerio,commonHeaders:headers}=providerContext;let hubdriveLink="";if(link.includes("hubcloud")||link.includes("/drive/"))return yield hubcloudExtractor(link,signal,axios,cheerio,headers);if(link.includes("hubdrive")){const hubdriveText=(yield axios.get(link,{headers:headers,signal:signal})).data;hubdriveLink=cheerio.load(hubdriveText)(".btn.btn-primary.btn-user.btn-success1.m-1").attr("href")||link}else{const decodedString=decodeString(null==(_c=null==(_b=null==(_a=(yield axios.get(link,{headers:headers,signal:signal})).data.split("s('o','"))?void 0:_a[1])?void 0:_b.split("',180"))?void 0:_c[0])||link;link=safeAtob(null==decodedString?void 0:decodedString.o)||link;const redirectLink=yield getRedirectLinks(link,signal,headers),redirectLinkText=(yield axios.get(redirectLink,{headers:headers,signal:signal})).data;if(hubdriveLink=cheerio.load(redirectLinkText)('h3:contains("1080p")').find("a").attr("href")||redirectLinkText.match(/href="(https:\/\/hubcloud\.[^\/]+\/drive\/[^"]+)"/)[1],console.log("hubdriveLink",hubdriveLink),hubdriveLink.includes("hubdrive")){const hubdriveText=(yield axios.get(hubdriveLink,{headers:headers,signal:signal})).data;hubdriveLink=cheerio.load(hubdriveText)(".btn.btn-primary.btn-user.btn-success1").attr("href")||""}console.log("hubdriveLink2",hubdriveLink)}let hubcloudLink=hubdriveLink;console.log("hubdriveLink3",hubdriveLink);try{hubcloudLink=(null==(_d=(yield axios.get(hubdriveLink,{headers:headers,signal:signal})).data.match(//i))?void 0:_d[1])||hubdriveLink}catch(error){console.log("Error fetching hubdrive link:",null==error?void 0:error.message)}console.log("hubcloudLink",hubcloudLink);try{return yield hubcloudExtractor(hubcloudLink,signal,axios,cheerio,headers)}catch(error){return console.log("hd hub 4 getStream error: ",error),[]}})}__name(hubcloudExtractor,"hubcloudExtractor"),__name(getStream,"getStream");var encode=__name(function(value){return btoa(value.toString())},"encode"),decode=__name(function(value){return void 0===value?"":atob(value.toString())},"decode"),pen=__name(function(value){return value.replace(/[a-zA-Z]/g,function(_0x1a470e){return String.fromCharCode((_0x1a470e<="Z"?90:122)>=(_0x1a470e=_0x1a470e.charCodeAt(0)+13)?_0x1a470e:_0x1a470e-26)})},"pen"),abortableTimeout=__name((ms,{signal:signal}={})=>new Promise((resolve,reject)=>{if(signal&&signal.aborted)return reject(new Error("Aborted"));const timer=setTimeout(resolve,ms);signal&&signal.addEventListener("abort",()=>{clearTimeout(timer),reject(new Error("Aborted"))})}),"abortableTimeout");function getRedirectLinks(link,signal,headers){return __async(this,null,function*(){try{const res=yield fetch(link,{signal:signal}),resText=yield res.text();for(var match,regex=/ck\('_wp_http_\d+','([^']+)'/g,combinedString="";null!==(match=regex.exec(resText));)combinedString+=match[1];const decodedString=decode(pen(decode(decode(combinedString)))),data=JSON.parse(decodedString);console.log(data);const token=encode(null==data?void 0:data.data),blogLink=(null==data?void 0:data.wp_http1)+"?re="+token;let wait=abortableTimeout(1e3*(Number(null==data?void 0:data.total_time)+3),{signal:signal});yield wait,console.log("blogLink",blogLink);let vcloudLink="Invalid Request";for(;vcloudLink.includes("Invalid Request");){const blogRes=yield fetch(blogLink,{headers:headers,signal:signal}),blogResText=yield blogRes.text();if(!blogResText.includes("Invalid Request")){vcloudLink=blogResText.match(/var reurl = "([^"]+)"/)||"";break}console.log(blogResText)}return blogLink||link}catch(err){return console.log("Error in getRedirectLinks",err),link}})}function rot13(str){return str.replace(/[a-zA-Z]/g,function(char){const charCode=char.charCodeAt(0),baseCharCode=char<="Z"?65:97;return String.fromCharCode((charCode-baseCharCode+13)%26+baseCharCode)})}__name(getRedirectLinks,"getRedirectLinks"),__name(rot13,"rot13");var safeAtob=__name(str=>{try{return atob(str)}catch(e){return null}},"safeAtob");function decodeString(encryptedString){try{let decoded=atob(encryptedString);return decoded=atob(decoded),decoded=rot13(decoded),decoded=atob(decoded),JSON.parse(decoded)}catch(error){return console.error("Error decoding string:",error),null}}__name(decodeString,"decodeString"),exports.decodeString=decodeString,exports.getRedirectLinks=getRedirectLinks,exports.getStream=getStream; \ No newline at end of file +"use strict";var __defProp=Object.defineProperty,__getOwnPropDesc=Object.getOwnPropertyDescriptor,__getOwnPropNames=Object.getOwnPropertyNames,__hasOwnProp=Object.prototype.hasOwnProperty,__name=(target,value)=>__defProp(target,"name",{value:value,configurable:!0}),__export=(target,all)=>{for(var name in all)__defProp(target,name,{get:all[name],enumerable:!0})},__copyProps=(to,from,except,desc)=>{if(from&&"object"==typeof from||"function"==typeof from)for(let key of __getOwnPropNames(from))__hasOwnProp.call(to,key)||key===except||__defProp(to,key,{get:()=>from[key],enumerable:!(desc=__getOwnPropDesc(from,key))||desc.enumerable});return to},__toCommonJS=mod=>__copyProps(__defProp({},"__esModule",{value:!0}),mod),__async=(__this,__arguments,generator)=>new Promise((resolve,reject)=>{var fulfilled=value=>{try{step(generator.next(value))}catch(e){reject(e)}},rejected=value=>{try{step(generator.throw(value))}catch(e){reject(e)}},step=x=>x.done?resolve(x.value):Promise.resolve(x.value).then(fulfilled,rejected);step((generator=generator.apply(__this,__arguments)).next())}),stream_exports={};__export(stream_exports,{decodeString:()=>decodeString,getRedirectLinks:()=>getRedirectLinks,getStream:()=>getStream});var hubcloudDecode=__name(function(value){return void 0===value?"":atob(value.toString())},"hubcloudDecode"),getPixelDrainUrl=__name(html=>{const match=html.match(/var\s+pxl\s*=\s*['"]([^'"]+)['"];?/i);return(null==match?void 0:match[1])||""},"getPixelDrainUrl"),getRedirectedPixelDrainUrl=__name((...htmlSources)=>{for(const html of htmlSources){if(!html)continue;const redirectedUrl=getPixelDrainUrl(html);if(redirectedUrl)return redirectedUrl}return""},"getRedirectedPixelDrainUrl");function hubcloudExtractor(link,signal,axios,cheerio,headers){return __async(this,null,function*(){var _a,_b,_c,_d,_e,_f,_g;try{headers.Cookie="ext_name=ojplmecpdpgccookcobabopnaifgidhf; xla=s4t; cf_clearance=woQrFGXtLfmEMBEiGUsVHrUBMT8s3cmguIzmMjmvpkg-1770053679-1.2.1.1-xBrQdciOJsweUF6F2T_OtH6jmyanN_TduQ0yslc_XqjU6RcHSxI7.YOKv6ry7oYo64868HYoULnVyww536H2eVI3R2e4wKzsky6abjPdfQPxqpUaXjxfJ02o6jl3_Vkwr4uiaU7Wy596Vdst3y78HXvVmKdIohhtPvp.vZ9_L7wvWdce0GRixjh_6JiqWmWMws46hwEt3hboaS1e1e4EoWCvj5b0M_jVwvSxBOAW5emFzvT3QrnRh4nyYmKDERnY",console.log("hubcloudExtractor",link);const baseUrl=link.split("/").slice(0,3).join("/"),streamLinks=[],vLinkText=(yield axios(`${link}`,{headers:headers,signal:signal})).data,$vLink=cheerio.load(vLinkText),vLinkRedirect=vLinkText.match(/var\s+url\s*=\s*'([^']+)';/)||[];let vcloudLink=hubcloudDecode(null==(_b=null==(_a=vLinkRedirect[1])?void 0:_a.split("r="))?void 0:_b[1])||vLinkRedirect[1]||$vLink(".fa-file-download.fa-lg").parent().attr("href")||link;console.log("vcloudLink",vcloudLink),(null==vcloudLink?void 0:vcloudLink.startsWith("/"))&&(vcloudLink=`${baseUrl}${vcloudLink}`,console.log("New vcloudLink",vcloudLink));const vcloudRes=yield fetch(vcloudLink,{headers:headers,signal:signal,redirect:"follow"}),vcloudText=yield vcloudRes.text(),$=cheerio.load(vcloudText),linkClass=$(".btn-success.btn-lg.h6,.btn-danger,.btn-secondary");for(const element of linkClass){let link2=$(element).attr("href")||"";switch(!0){case null==link2?void 0:link2.includes("pixeld"):if(console.log("Pixeldrain link found:",link2),!(null==link2?void 0:link2.includes("api"))){const redirectedPixelDrainUrl=getRedirectedPixelDrainUrl(vLinkText,vcloudText);redirectedPixelDrainUrl&&(console.log("Special case for token negn6f",redirectedPixelDrainUrl),link2=redirectedPixelDrainUrl);const token=null==(_c=link2.split("/").pop())?void 0:_c.split("?")[0],baseUrl2=link2.split("/").slice(0,-2).join("/");link2=`${baseUrl2}/api/file/${token}`}streamLinks.push({server:"Pixeldrain",link:link2,type:"mkv"});break;case(null==link2?void 0:link2.includes(".dev"))&&!(null==link2?void 0:link2.includes("/?id=")):streamLinks.push({server:"Cf Worker",link:link2,type:"mkv"});break;case(null==link2?void 0:link2.includes("hubcloud"))||(null==link2?void 0:link2.includes("/?id=")):try{const newLinkRes=yield fetch(link2,{method:"HEAD",headers:headers,signal:signal,redirect:"manual"});let newLink=link2;if(newLink=newLinkRes.status>=300&&newLinkRes.status<400?newLinkRes.headers.get("location")||link2:newLinkRes.url&&newLinkRes.url!==link2?newLinkRes.url:newLinkRes.headers.get("location")||link2,newLink.includes("googleusercontent"))newLink=newLink.split("?link=")[1];else{const newLinkRes2=yield fetch(newLink,{method:"HEAD",headers:headers,signal:signal,redirect:"manual"});newLink=newLinkRes2.status>=300&&newLinkRes2.status<400?(null==(_d=newLinkRes2.headers.get("location"))?void 0:_d.split("?link=")[1])||newLink:newLinkRes2.url&&newLinkRes2.url!==newLink?newLinkRes2.url.split("?link=")[1]||newLinkRes2.url:(null==(_e=newLinkRes2.headers.get("location"))?void 0:_e.split("?link=")[1])||newLink}streamLinks.push({server:"hubcloud",link:newLink,type:"mkv"})}catch(error){console.log("hubcloudExtractor error in hubcloud link: ",error)}break;case null==link2?void 0:link2.includes("cloudflarestorage"):streamLinks.push({server:"CfStorage",link:link2,type:"mkv"});break;case(null==link2?void 0:link2.includes("fastdl"))||(null==link2?void 0:link2.includes("fsl.")):streamLinks.push({server:"FastDl",link:link2,type:"mkv"});break;case link2.includes("hubcdn")&&!link2.includes("/?id="):streamLinks.push({server:"HubCdn",link:link2,type:"mkv"});break;default:if((null==link2?void 0:link2.includes(".mkv"))||(null==link2?void 0:link2.includes("?token="))){const serverName=(null==(_g=null==(_f=link2.match(/^(?:https?:\/\/)?(?:www\.)?([^\/]+)/i))?void 0:_f[1])?void 0:_g.replace(/\./g," "))||"Unknown";streamLinks.push({server:serverName,link:link2,type:"mkv"})}}}return console.log("streamLinks",streamLinks),streamLinks}catch(error){return console.log("hubcloudExtractor error: ",(null==error?void 0:error.message)||error),[]}})}function getStream(_0){return __async(this,arguments,function*({link:link,signal:signal,providerContext:providerContext}){var _a,_b,_c,_d;const{axios:axios,cheerio:cheerio,commonHeaders:headers}=providerContext;let hubdriveLink="";if(link.includes("hubcloud")||link.includes("/drive/"))return yield hubcloudExtractor(link,signal,axios,cheerio,headers);if(link.includes("hubdrive")){const hubdriveText=(yield axios.get(link,{headers:headers,signal:signal})).data;hubdriveLink=cheerio.load(hubdriveText)(".btn.btn-primary.btn-user.btn-success1.m-1").attr("href")||link}else{const decodedString=decodeString(null==(_c=null==(_b=null==(_a=(yield axios.get(link,{headers:headers,signal:signal})).data.split("s('o','"))?void 0:_a[1])?void 0:_b.split("',180"))?void 0:_c[0])||link;link=safeAtob(null==decodedString?void 0:decodedString.o)||link;const redirectLink=yield getRedirectLinks(link,signal,headers),redirectLinkText=(yield axios.get(redirectLink,{headers:headers,signal:signal})).data;if(hubdriveLink=cheerio.load(redirectLinkText)('h3:contains("1080p")').find("a").attr("href")||redirectLinkText.match(/href="(https:\/\/hubcloud\.[^\/]+\/drive\/[^"]+)"/)[1],console.log("hubdriveLink",hubdriveLink),hubdriveLink.includes("hubdrive")){const hubdriveText=(yield axios.get(hubdriveLink,{headers:headers,signal:signal})).data;hubdriveLink=cheerio.load(hubdriveText)(".btn.btn-primary.btn-user.btn-success1").attr("href")||""}console.log("hubdriveLink2",hubdriveLink)}let hubcloudLink=hubdriveLink;console.log("hubdriveLink3",hubdriveLink);try{hubcloudLink=(null==(_d=(yield axios.get(hubdriveLink,{headers:headers,signal:signal})).data.match(//i))?void 0:_d[1])||hubdriveLink}catch(error){console.log("Error fetching hubdrive link:",null==error?void 0:error.message)}console.log("hubcloudLink",hubcloudLink);try{return yield hubcloudExtractor(hubcloudLink,signal,axios,cheerio,headers)}catch(error){return console.log("hd hub 4 getStream error: ",error),[]}})}__name(hubcloudExtractor,"hubcloudExtractor"),__name(getStream,"getStream");var encode=__name(function(value){return btoa(value.toString())},"encode"),decode=__name(function(value){return void 0===value?"":atob(value.toString())},"decode"),pen=__name(function(value){return value.replace(/[a-zA-Z]/g,function(_0x1a470e){return String.fromCharCode((_0x1a470e<="Z"?90:122)>=(_0x1a470e=_0x1a470e.charCodeAt(0)+13)?_0x1a470e:_0x1a470e-26)})},"pen"),abortableTimeout=__name((ms,{signal:signal}={})=>new Promise((resolve,reject)=>{if(signal&&signal.aborted)return reject(new Error("Aborted"));const timer=setTimeout(resolve,ms);signal&&signal.addEventListener("abort",()=>{clearTimeout(timer),reject(new Error("Aborted"))})}),"abortableTimeout");function getRedirectLinks(link,signal,headers){return __async(this,null,function*(){try{const res=yield fetch(link,{signal:signal}),resText=yield res.text();for(var match,regex=/ck\('_wp_http_\d+','([^']+)'/g,combinedString="";null!==(match=regex.exec(resText));)combinedString+=match[1];const decodedString=decode(pen(decode(decode(combinedString)))),data=JSON.parse(decodedString);console.log(data);const token=encode(null==data?void 0:data.data),blogLink=(null==data?void 0:data.wp_http1)+"?re="+token;let wait=abortableTimeout(1e3*(Number(null==data?void 0:data.total_time)+3),{signal:signal});yield wait,console.log("blogLink",blogLink);let vcloudLink="Invalid Request";for(;vcloudLink.includes("Invalid Request");){const blogRes=yield fetch(blogLink,{headers:headers,signal:signal}),blogResText=yield blogRes.text();if(!blogResText.includes("Invalid Request")){vcloudLink=blogResText.match(/var reurl = "([^"]+)"/)||"";break}console.log(blogResText)}return blogLink||link}catch(err){return console.log("Error in getRedirectLinks",err),link}})}function rot13(str){return str.replace(/[a-zA-Z]/g,function(char){const charCode=char.charCodeAt(0),baseCharCode=char<="Z"?65:97;return String.fromCharCode((charCode-baseCharCode+13)%26+baseCharCode)})}__name(getRedirectLinks,"getRedirectLinks"),__name(rot13,"rot13");var safeAtob=__name(str=>{try{return atob(str)}catch(e){return null}},"safeAtob");function decodeString(encryptedString){try{let decoded=atob(encryptedString);return decoded=atob(decoded),decoded=rot13(decoded),decoded=atob(decoded),JSON.parse(decoded)}catch(error){return console.error("Error decoding string:",error),null}}__name(decodeString,"decodeString"),exports.decodeString=decodeString,exports.getRedirectLinks=getRedirectLinks,exports.getStream=getStream; \ No newline at end of file diff --git a/dist/katMovieFix/stream.js b/dist/katMovieFix/stream.js index 6a60d27..c0fb657 100644 --- a/dist/katMovieFix/stream.js +++ b/dist/katMovieFix/stream.js @@ -1 +1 @@ -"use strict";var __defProp=Object.defineProperty,__getOwnPropDesc=Object.getOwnPropertyDescriptor,__getOwnPropNames=Object.getOwnPropertyNames,__hasOwnProp=Object.prototype.hasOwnProperty,__name=(target,value)=>__defProp(target,"name",{value:value,configurable:!0}),__export=(target,all)=>{for(var name in all)__defProp(target,name,{get:all[name],enumerable:!0})},__copyProps=(to,from,except,desc)=>{if(from&&"object"==typeof from||"function"==typeof from)for(let key of __getOwnPropNames(from))__hasOwnProp.call(to,key)||key===except||__defProp(to,key,{get:()=>from[key],enumerable:!(desc=__getOwnPropDesc(from,key))||desc.enumerable});return to},__toCommonJS=mod=>__copyProps(__defProp({},"__esModule",{value:!0}),mod),__async=(__this,__arguments,generator)=>new Promise((resolve,reject)=>{var fulfilled=value=>{try{step(generator.next(value))}catch(e){reject(e)}},rejected=value=>{try{step(generator.throw(value))}catch(e){reject(e)}},step=x=>x.done?resolve(x.value):Promise.resolve(x.value).then(fulfilled,rejected);step((generator=generator.apply(__this,__arguments)).next())}),stream_exports={};__export(stream_exports,{getStream:()=>getStream});var hubcloudDecode=__name(function(value){return void 0===value?"":atob(value.toString())},"hubcloudDecode");function hubcloudExtractor(link,signal,axios,cheerio,headers2){return __async(this,null,function*(){var _a,_b,_c,_d,_e,_f;try{headers2.Cookie="ext_name=ojplmecpdpgccookcobabopnaifgidhf; xla=s4t; cf_clearance=woQrFGXtLfmEMBEiGUsVHrUBMT8s3cmguIzmMjmvpkg-1770053679-1.2.1.1-xBrQdciOJsweUF6F2T_OtH6jmyanN_TduQ0yslc_XqjU6RcHSxI7.YOKv6ry7oYo64868HYoULnVyww536H2eVI3R2e4wKzsky6abjPdfQPxqpUaXjxfJ02o6jl3_Vkwr4uiaU7Wy596Vdst3y78HXvVmKdIohhtPvp.vZ9_L7wvWdce0GRixjh_6JiqWmWMws46hwEt3hboaS1e1e4EoWCvj5b0M_jVwvSxBOAW5emFzvT3QrnRh4nyYmKDERnY",console.log("hubcloudExtractor",link),console.log("headers",headers2);const baseUrl=link.split("/").slice(0,3).join("/"),streamLinks=[],vLinkText=(yield axios(`${link}`,{headers:headers2,signal:signal})).data,$vLink=cheerio.load(vLinkText),vLinkRedirect=vLinkText.match(/var\s+url\s*=\s*'([^']+)';/)||[];let vcloudLink=hubcloudDecode(null==(_b=null==(_a=vLinkRedirect[1])?void 0:_a.split("r="))?void 0:_b[1])||vLinkRedirect[1]||$vLink(".fa-file-download.fa-lg").parent().attr("href")||link;console.log("vcloudLink",vcloudLink),(null==vcloudLink?void 0:vcloudLink.startsWith("/"))&&(vcloudLink=`${baseUrl}${vcloudLink}`,console.log("New vcloudLink",vcloudLink));const vcloudRes=yield fetch(vcloudLink,{headers:headers2,signal:signal,redirect:"follow"}),$=cheerio.load(yield vcloudRes.text()),linkClass=$(".btn-success.btn-lg.h6,.btn-danger,.btn-secondary");for(const element of linkClass){let link2=$(element).attr("href")||"";switch(!0){case null==link2?void 0:link2.includes("pixeld"):if(!(null==link2?void 0:link2.includes("api"))){const token=link2.split("/").pop(),baseUrl2=link2.split("/").slice(0,-2).join("/");link2=`${baseUrl2}/api/file/${token}`}streamLinks.push({server:"Pixeldrain",link:link2,type:"mkv"});break;case(null==link2?void 0:link2.includes(".dev"))&&!(null==link2?void 0:link2.includes("/?id=")):streamLinks.push({server:"Cf Worker",link:link2,type:"mkv"});break;case(null==link2?void 0:link2.includes("hubcloud"))||(null==link2?void 0:link2.includes("/?id=")):try{const newLinkRes=yield fetch(link2,{method:"HEAD",headers:headers2,signal:signal,redirect:"manual"});let newLink=link2;if(newLink=newLinkRes.status>=300&&newLinkRes.status<400?newLinkRes.headers.get("location")||link2:newLinkRes.url&&newLinkRes.url!==link2?newLinkRes.url:newLinkRes.headers.get("location")||link2,newLink.includes("googleusercontent"))newLink=newLink.split("?link=")[1];else{const newLinkRes2=yield fetch(newLink,{method:"HEAD",headers:headers2,signal:signal,redirect:"manual"});newLink=newLinkRes2.status>=300&&newLinkRes2.status<400?(null==(_c=newLinkRes2.headers.get("location"))?void 0:_c.split("?link=")[1])||newLink:newLinkRes2.url&&newLinkRes2.url!==newLink?newLinkRes2.url.split("?link=")[1]||newLinkRes2.url:(null==(_d=newLinkRes2.headers.get("location"))?void 0:_d.split("?link=")[1])||newLink}streamLinks.push({server:"hubcloud",link:newLink,type:"mkv"})}catch(error){console.log("hubcloudExtractor error in hubcloud link: ",error)}break;case null==link2?void 0:link2.includes("cloudflarestorage"):streamLinks.push({server:"CfStorage",link:link2,type:"mkv"});break;case(null==link2?void 0:link2.includes("fastdl"))||(null==link2?void 0:link2.includes("fsl.")):streamLinks.push({server:"FastDl",link:link2,type:"mkv"});break;case link2.includes("hubcdn")&&!link2.includes("/?id="):streamLinks.push({server:"HubCdn",link:link2,type:"mkv"});break;default:if((null==link2?void 0:link2.includes(".mkv"))||(null==link2?void 0:link2.includes("?token="))){const serverName=(null==(_f=null==(_e=link2.match(/^(?:https?:\/\/)?(?:www\.)?([^\/]+)/i))?void 0:_e[1])?void 0:_f.replace(/\./g," "))||"Unknown";streamLinks.push({server:serverName,link:link2,type:"mkv"})}}}return console.log("streamLinks",streamLinks),streamLinks}catch(error){return console.log("hubcloudExtractor error: ",(null==error?void 0:error.message)||error),[]}})}__name(hubcloudExtractor,"hubcloudExtractor");var headers={Accept:"text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7","Cache-Control":"no-store","Accept-Language":"en-US,en;q=0.9",DNT:"1","User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/131.0.0.0 Safari/537.36"};function getStream(_0){return __async(this,arguments,function*({link:link,type:type,signal:signal,providerContext:providerContext}){const{axios:axios,cheerio:cheerio,commonHeaders:commonHeaders}=providerContext;try{const streamLinks=[],response=yield axios.get(link,{headers:headers}),$=cheerio.load(response.data);$("a[href*='pixeldrain.dev/api/file/']").each((_,el)=>{var _a;const href=null==(_a=$(el).attr("href"))?void 0:_a.trim();href&&streamLinks.push({server:"pixeldrain",link:href,type:"mp4"})});const hubcloudStreams=yield hubcloudExtractor(link,signal,axios,cheerio,commonHeaders);return streamLinks.push(...hubcloudStreams),streamLinks}catch(error){return console.log("getStream error: ",error),[]}})}__name(getStream,"getStream"),exports.getStream=getStream; \ No newline at end of file +"use strict";var __defProp=Object.defineProperty,__getOwnPropDesc=Object.getOwnPropertyDescriptor,__getOwnPropNames=Object.getOwnPropertyNames,__hasOwnProp=Object.prototype.hasOwnProperty,__name=(target,value)=>__defProp(target,"name",{value:value,configurable:!0}),__export=(target,all)=>{for(var name in all)__defProp(target,name,{get:all[name],enumerable:!0})},__copyProps=(to,from,except,desc)=>{if(from&&"object"==typeof from||"function"==typeof from)for(let key of __getOwnPropNames(from))__hasOwnProp.call(to,key)||key===except||__defProp(to,key,{get:()=>from[key],enumerable:!(desc=__getOwnPropDesc(from,key))||desc.enumerable});return to},__toCommonJS=mod=>__copyProps(__defProp({},"__esModule",{value:!0}),mod),__async=(__this,__arguments,generator)=>new Promise((resolve,reject)=>{var fulfilled=value=>{try{step(generator.next(value))}catch(e){reject(e)}},rejected=value=>{try{step(generator.throw(value))}catch(e){reject(e)}},step=x=>x.done?resolve(x.value):Promise.resolve(x.value).then(fulfilled,rejected);step((generator=generator.apply(__this,__arguments)).next())}),stream_exports={};__export(stream_exports,{getStream:()=>getStream});var hubcloudDecode=__name(function(value){return void 0===value?"":atob(value.toString())},"hubcloudDecode"),getPixelDrainUrl=__name(html=>{const match=html.match(/var\s+pxl\s*=\s*['"]([^'"]+)['"];?/i);return(null==match?void 0:match[1])||""},"getPixelDrainUrl"),getRedirectedPixelDrainUrl=__name((...htmlSources)=>{for(const html of htmlSources){if(!html)continue;const redirectedUrl=getPixelDrainUrl(html);if(redirectedUrl)return redirectedUrl}return""},"getRedirectedPixelDrainUrl");function hubcloudExtractor(link,signal,axios,cheerio,headers2){return __async(this,null,function*(){var _a,_b,_c,_d,_e,_f,_g;try{headers2.Cookie="ext_name=ojplmecpdpgccookcobabopnaifgidhf; xla=s4t; cf_clearance=woQrFGXtLfmEMBEiGUsVHrUBMT8s3cmguIzmMjmvpkg-1770053679-1.2.1.1-xBrQdciOJsweUF6F2T_OtH6jmyanN_TduQ0yslc_XqjU6RcHSxI7.YOKv6ry7oYo64868HYoULnVyww536H2eVI3R2e4wKzsky6abjPdfQPxqpUaXjxfJ02o6jl3_Vkwr4uiaU7Wy596Vdst3y78HXvVmKdIohhtPvp.vZ9_L7wvWdce0GRixjh_6JiqWmWMws46hwEt3hboaS1e1e4EoWCvj5b0M_jVwvSxBOAW5emFzvT3QrnRh4nyYmKDERnY",console.log("hubcloudExtractor",link);const baseUrl=link.split("/").slice(0,3).join("/"),streamLinks=[],vLinkText=(yield axios(`${link}`,{headers:headers2,signal:signal})).data,$vLink=cheerio.load(vLinkText),vLinkRedirect=vLinkText.match(/var\s+url\s*=\s*'([^']+)';/)||[];let vcloudLink=hubcloudDecode(null==(_b=null==(_a=vLinkRedirect[1])?void 0:_a.split("r="))?void 0:_b[1])||vLinkRedirect[1]||$vLink(".fa-file-download.fa-lg").parent().attr("href")||link;console.log("vcloudLink",vcloudLink),(null==vcloudLink?void 0:vcloudLink.startsWith("/"))&&(vcloudLink=`${baseUrl}${vcloudLink}`,console.log("New vcloudLink",vcloudLink));const vcloudRes=yield fetch(vcloudLink,{headers:headers2,signal:signal,redirect:"follow"}),vcloudText=yield vcloudRes.text(),$=cheerio.load(vcloudText),linkClass=$(".btn-success.btn-lg.h6,.btn-danger,.btn-secondary");for(const element of linkClass){let link2=$(element).attr("href")||"";switch(!0){case null==link2?void 0:link2.includes("pixeld"):if(console.log("Pixeldrain link found:",link2),!(null==link2?void 0:link2.includes("api"))){const redirectedPixelDrainUrl=getRedirectedPixelDrainUrl(vLinkText,vcloudText);redirectedPixelDrainUrl&&(console.log("Special case for token negn6f",redirectedPixelDrainUrl),link2=redirectedPixelDrainUrl);const token=null==(_c=link2.split("/").pop())?void 0:_c.split("?")[0],baseUrl2=link2.split("/").slice(0,-2).join("/");link2=`${baseUrl2}/api/file/${token}`}streamLinks.push({server:"Pixeldrain",link:link2,type:"mkv"});break;case(null==link2?void 0:link2.includes(".dev"))&&!(null==link2?void 0:link2.includes("/?id=")):streamLinks.push({server:"Cf Worker",link:link2,type:"mkv"});break;case(null==link2?void 0:link2.includes("hubcloud"))||(null==link2?void 0:link2.includes("/?id=")):try{const newLinkRes=yield fetch(link2,{method:"HEAD",headers:headers2,signal:signal,redirect:"manual"});let newLink=link2;if(newLink=newLinkRes.status>=300&&newLinkRes.status<400?newLinkRes.headers.get("location")||link2:newLinkRes.url&&newLinkRes.url!==link2?newLinkRes.url:newLinkRes.headers.get("location")||link2,newLink.includes("googleusercontent"))newLink=newLink.split("?link=")[1];else{const newLinkRes2=yield fetch(newLink,{method:"HEAD",headers:headers2,signal:signal,redirect:"manual"});newLink=newLinkRes2.status>=300&&newLinkRes2.status<400?(null==(_d=newLinkRes2.headers.get("location"))?void 0:_d.split("?link=")[1])||newLink:newLinkRes2.url&&newLinkRes2.url!==newLink?newLinkRes2.url.split("?link=")[1]||newLinkRes2.url:(null==(_e=newLinkRes2.headers.get("location"))?void 0:_e.split("?link=")[1])||newLink}streamLinks.push({server:"hubcloud",link:newLink,type:"mkv"})}catch(error){console.log("hubcloudExtractor error in hubcloud link: ",error)}break;case null==link2?void 0:link2.includes("cloudflarestorage"):streamLinks.push({server:"CfStorage",link:link2,type:"mkv"});break;case(null==link2?void 0:link2.includes("fastdl"))||(null==link2?void 0:link2.includes("fsl.")):streamLinks.push({server:"FastDl",link:link2,type:"mkv"});break;case link2.includes("hubcdn")&&!link2.includes("/?id="):streamLinks.push({server:"HubCdn",link:link2,type:"mkv"});break;default:if((null==link2?void 0:link2.includes(".mkv"))||(null==link2?void 0:link2.includes("?token="))){const serverName=(null==(_g=null==(_f=link2.match(/^(?:https?:\/\/)?(?:www\.)?([^\/]+)/i))?void 0:_f[1])?void 0:_g.replace(/\./g," "))||"Unknown";streamLinks.push({server:serverName,link:link2,type:"mkv"})}}}return console.log("streamLinks",streamLinks),streamLinks}catch(error){return console.log("hubcloudExtractor error: ",(null==error?void 0:error.message)||error),[]}})}__name(hubcloudExtractor,"hubcloudExtractor");var headers={Accept:"text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7","Cache-Control":"no-store","Accept-Language":"en-US,en;q=0.9",DNT:"1","User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/131.0.0.0 Safari/537.36"};function getStream(_0){return __async(this,arguments,function*({link:link,type:type,signal:signal,providerContext:providerContext}){const{axios:axios,cheerio:cheerio,commonHeaders:commonHeaders}=providerContext;try{const streamLinks=[],response=yield axios.get(link,{headers:headers}),$=cheerio.load(response.data);$("a[href*='pixeldrain.dev/api/file/']").each((_,el)=>{var _a;const href=null==(_a=$(el).attr("href"))?void 0:_a.trim();href&&streamLinks.push({server:"pixeldrain",link:href,type:"mp4"})});const hubcloudStreams=yield hubcloudExtractor(link,signal,axios,cheerio,commonHeaders);return streamLinks.push(...hubcloudStreams),streamLinks}catch(error){return console.log("getStream error: ",error),[]}})}__name(getStream,"getStream"),exports.getStream=getStream; \ No newline at end of file diff --git a/dist/katmovies/stream.js b/dist/katmovies/stream.js index 761dee4..39cf460 100644 --- a/dist/katmovies/stream.js +++ b/dist/katmovies/stream.js @@ -1 +1 @@ -"use strict";var __defProp=Object.defineProperty,__getOwnPropDesc=Object.getOwnPropertyDescriptor,__getOwnPropNames=Object.getOwnPropertyNames,__hasOwnProp=Object.prototype.hasOwnProperty,__name=(target,value)=>__defProp(target,"name",{value:value,configurable:!0}),__export=(target,all)=>{for(var name in all)__defProp(target,name,{get:all[name],enumerable:!0})},__copyProps=(to,from,except,desc)=>{if(from&&"object"==typeof from||"function"==typeof from)for(let key of __getOwnPropNames(from))__hasOwnProp.call(to,key)||key===except||__defProp(to,key,{get:()=>from[key],enumerable:!(desc=__getOwnPropDesc(from,key))||desc.enumerable});return to},__toCommonJS=mod=>__copyProps(__defProp({},"__esModule",{value:!0}),mod),__async=(__this,__arguments,generator)=>new Promise((resolve,reject)=>{var fulfilled=value=>{try{step(generator.next(value))}catch(e){reject(e)}},rejected=value=>{try{step(generator.throw(value))}catch(e){reject(e)}},step=x=>x.done?resolve(x.value):Promise.resolve(x.value).then(fulfilled,rejected);step((generator=generator.apply(__this,__arguments)).next())}),stream_exports={};__export(stream_exports,{getStream:()=>getStream});var hubcloudDecode=__name(function(value){return void 0===value?"":atob(value.toString())},"hubcloudDecode");function hubcloudExtractor(link,signal,axios,cheerio,headers){return __async(this,null,function*(){var _a,_b,_c,_d,_e,_f;try{headers.Cookie="ext_name=ojplmecpdpgccookcobabopnaifgidhf; xla=s4t; cf_clearance=woQrFGXtLfmEMBEiGUsVHrUBMT8s3cmguIzmMjmvpkg-1770053679-1.2.1.1-xBrQdciOJsweUF6F2T_OtH6jmyanN_TduQ0yslc_XqjU6RcHSxI7.YOKv6ry7oYo64868HYoULnVyww536H2eVI3R2e4wKzsky6abjPdfQPxqpUaXjxfJ02o6jl3_Vkwr4uiaU7Wy596Vdst3y78HXvVmKdIohhtPvp.vZ9_L7wvWdce0GRixjh_6JiqWmWMws46hwEt3hboaS1e1e4EoWCvj5b0M_jVwvSxBOAW5emFzvT3QrnRh4nyYmKDERnY",console.log("hubcloudExtractor",link),console.log("headers",headers);const baseUrl=link.split("/").slice(0,3).join("/"),streamLinks=[],vLinkText=(yield axios(`${link}`,{headers:headers,signal:signal})).data,$vLink=cheerio.load(vLinkText),vLinkRedirect=vLinkText.match(/var\s+url\s*=\s*'([^']+)';/)||[];let vcloudLink=hubcloudDecode(null==(_b=null==(_a=vLinkRedirect[1])?void 0:_a.split("r="))?void 0:_b[1])||vLinkRedirect[1]||$vLink(".fa-file-download.fa-lg").parent().attr("href")||link;console.log("vcloudLink",vcloudLink),(null==vcloudLink?void 0:vcloudLink.startsWith("/"))&&(vcloudLink=`${baseUrl}${vcloudLink}`,console.log("New vcloudLink",vcloudLink));const vcloudRes=yield fetch(vcloudLink,{headers:headers,signal:signal,redirect:"follow"}),$=cheerio.load(yield vcloudRes.text()),linkClass=$(".btn-success.btn-lg.h6,.btn-danger,.btn-secondary");for(const element of linkClass){let link2=$(element).attr("href")||"";switch(!0){case null==link2?void 0:link2.includes("pixeld"):if(!(null==link2?void 0:link2.includes("api"))){const token=link2.split("/").pop(),baseUrl2=link2.split("/").slice(0,-2).join("/");link2=`${baseUrl2}/api/file/${token}`}streamLinks.push({server:"Pixeldrain",link:link2,type:"mkv"});break;case(null==link2?void 0:link2.includes(".dev"))&&!(null==link2?void 0:link2.includes("/?id=")):streamLinks.push({server:"Cf Worker",link:link2,type:"mkv"});break;case(null==link2?void 0:link2.includes("hubcloud"))||(null==link2?void 0:link2.includes("/?id=")):try{const newLinkRes=yield fetch(link2,{method:"HEAD",headers:headers,signal:signal,redirect:"manual"});let newLink=link2;if(newLink=newLinkRes.status>=300&&newLinkRes.status<400?newLinkRes.headers.get("location")||link2:newLinkRes.url&&newLinkRes.url!==link2?newLinkRes.url:newLinkRes.headers.get("location")||link2,newLink.includes("googleusercontent"))newLink=newLink.split("?link=")[1];else{const newLinkRes2=yield fetch(newLink,{method:"HEAD",headers:headers,signal:signal,redirect:"manual"});newLink=newLinkRes2.status>=300&&newLinkRes2.status<400?(null==(_c=newLinkRes2.headers.get("location"))?void 0:_c.split("?link=")[1])||newLink:newLinkRes2.url&&newLinkRes2.url!==newLink?newLinkRes2.url.split("?link=")[1]||newLinkRes2.url:(null==(_d=newLinkRes2.headers.get("location"))?void 0:_d.split("?link=")[1])||newLink}streamLinks.push({server:"hubcloud",link:newLink,type:"mkv"})}catch(error){console.log("hubcloudExtractor error in hubcloud link: ",error)}break;case null==link2?void 0:link2.includes("cloudflarestorage"):streamLinks.push({server:"CfStorage",link:link2,type:"mkv"});break;case(null==link2?void 0:link2.includes("fastdl"))||(null==link2?void 0:link2.includes("fsl.")):streamLinks.push({server:"FastDl",link:link2,type:"mkv"});break;case link2.includes("hubcdn")&&!link2.includes("/?id="):streamLinks.push({server:"HubCdn",link:link2,type:"mkv"});break;default:if((null==link2?void 0:link2.includes(".mkv"))||(null==link2?void 0:link2.includes("?token="))){const serverName=(null==(_f=null==(_e=link2.match(/^(?:https?:\/\/)?(?:www\.)?([^\/]+)/i))?void 0:_e[1])?void 0:_f.replace(/\./g," "))||"Unknown";streamLinks.push({server:serverName,link:link2,type:"mkv"})}}}return console.log("streamLinks",streamLinks),streamLinks}catch(error){return console.log("hubcloudExtractor error: ",(null==error?void 0:error.message)||error),[]}})}function gdflixExtractor(link,signal,axios,cheerio,headers){return __async(this,null,function*(){var _a,_b,_c,_d,_e,_f,_g,_h;try{const streamLinks=[],res=yield axios(`${link}`,{headers:headers,signal:signal});console.log("gdflixExtractor",link);const data=res.data;let $drive=cheerio.load(data);if(null==(_a=$drive("body").attr("onload"))?void 0:_a.includes("location.replace")){const newLink=null==(_d=null==(_c=null==(_b=$drive("body").attr("onload"))?void 0:_b.split("location.replace('"))?void 0:_c[1].split("'"))?void 0:_d[0];if(console.log("newLink",newLink),newLink){const newRes=yield axios.get(newLink,{headers:headers,signal:signal});$drive=cheerio.load(newRes.data)}}try{const baseUrl=link.split("/").slice(0,3).join("/"),resumeDrive=$drive(".btn-secondary").attr("href")||"";if(console.log("resumeDrive",resumeDrive),resumeDrive.includes("indexbot")){const resumeBotRes=yield axios.get(resumeDrive,{headers:headers}),resumeBotToken=resumeBotRes.data.match(/formData\.append\('token', '([a-f0-9]+)'\)/)[1],resumeBotBody=new FormData;resumeBotBody.append("token",resumeBotToken);const resumeBotPath=resumeBotRes.data.match(/fetch\('\/download\?id=([a-zA-Z0-9\/+]+)'/)[1],resumeBotBaseUrl=resumeDrive.split("/download")[0],resumeBotDownload=yield fetch(resumeBotBaseUrl+"/download?id="+resumeBotPath,{method:"POST",body:resumeBotBody,headers:{Referer:resumeDrive,Cookie:"PHPSESSID=7e9658ce7c805dab5bbcea9046f7f308"}}),resumeBotDownloadData=yield resumeBotDownload.json();console.log("resumeBotDownloadData",resumeBotDownloadData.url),streamLinks.push({server:"ResumeBot",link:resumeBotDownloadData.url,type:"mkv"})}else{const url=baseUrl+resumeDrive,resumeDriveHtml=(yield axios.get(url,{headers:headers})).data,resumeLink=cheerio.load(resumeDriveHtml)(".btn-success").attr("href");resumeLink&&streamLinks.push({server:"ResumeCloud",link:resumeLink,type:"mkv"})}}catch(err){console.log("Resume link not found")}try{const seed=$drive(".btn-danger").attr("href")||"";if(console.log("seed",seed),seed.includes("?url=")){const instantToken=seed.split("=")[1],InstantFromData=new FormData;InstantFromData.append("keys",instantToken);const videoSeedUrl=seed.split("/").slice(0,3).join("/")+"/api",instantLinkRes=yield fetch(videoSeedUrl,{method:"POST",body:InstantFromData,headers:{"x-token":videoSeedUrl}}),instantLinkData=yield instantLinkRes.json();if(!1===instantLinkData.error){const instantLink=instantLinkData.url;streamLinks.push({server:"Gdrive-Instant",link:instantLink,type:"mkv"})}else console.log("Instant link not found",instantLinkData)}else{const newLinkRes=yield axios.head(seed,{headers:headers,signal:signal});console.log("newLinkRes",null==(_e=newLinkRes.request)?void 0:_e.responseURL);const newLink=(null==(_h=null==(_g=null==(_f=newLinkRes.request)?void 0:_f.responseURL)?void 0:_g.split("?url="))?void 0:_h[1])||seed;streamLinks.push({server:"G-Drive",link:newLink,type:"mkv"})}}catch(err){console.log("Instant link not found",err)}return streamLinks}catch(error){return console.log("gdflix error: ",error),[]}})}function extractKmhdLink(katlink,providerContext){return __async(this,null,function*(){const{axios:axios}=providerContext,data=(yield axios.get(katlink,{headers:{Cookie:"unlocked=true"}})).data,hubDriveRes=data.match(/hubdrive_res:\s*"([^"]+)"/)[1];return data.match(/hubdrive_res\s*:\s*{[^}]*?link\s*:\s*"([^"]+)"/)[1]+hubDriveRes})}__name(hubcloudExtractor,"hubcloudExtractor"),__name(gdflixExtractor,"gdflixExtractor"),__name(extractKmhdLink,"extractKmhdLink");var getStream=__name(function(_0){return __async(this,arguments,function*({link:link,signal:signal,providerContext:providerContext}){const{axios:axios,cheerio:cheerio,commonHeaders:commonHeaders}=providerContext,streamLinks=[];console.log("katGetStream",link);try{if(link.includes("gdflix"))return yield gdflixExtractor(link,signal,axios,cheerio,commonHeaders);if(link.includes("kmhd")){const hubcloudLink=yield extractKmhdLink(link,providerContext);return yield hubcloudExtractor(hubcloudLink,signal,axios,cheerio,commonHeaders)}if(link.includes("gdflix")){try{const resumeDrive=link.replace("/file","/zfile"),resumeDriveHtml=(yield axios.get(resumeDrive)).data,resumeLink=cheerio.load(resumeDriveHtml)(".btn-success").attr("href");console.log("resumeLink",resumeLink),resumeLink&&streamLinks.push({server:"ResumeCloud",link:resumeLink,type:"mkv"})}catch(err){console.log("Resume link not found")}try{const driveres=yield axios.get(link,{timeout:1e4}),seed=cheerio.load(driveres.data)(".btn-danger").attr("href")||"",instantToken=seed.split("=")[1],InstantFromData=new FormData;InstantFromData.append("keys",instantToken);const videoSeedUrl=seed.split("/").slice(0,3).join("/")+"/api",instantLinkRes=yield fetch(videoSeedUrl,{method:"POST",body:InstantFromData,headers:{"x-token":videoSeedUrl}}),instantLinkData=yield instantLinkRes.json();if(console.log("instantLinkData",instantLinkData),!1===instantLinkData.error){const instantLink=instantLinkData.url;streamLinks.push({server:"Gdrive-Instant",link:instantLink,type:"mkv"})}else console.log("Instant link not found",instantLinkData)}catch(err){console.log("Instant link not found",err)}return streamLinks}return yield hubcloudExtractor(link,signal,axios,cheerio,commonHeaders)}catch(error){return console.log("katgetStream error: ",error),[]}})},"getStream");exports.getStream=getStream; \ No newline at end of file +"use strict";var __defProp=Object.defineProperty,__getOwnPropDesc=Object.getOwnPropertyDescriptor,__getOwnPropNames=Object.getOwnPropertyNames,__hasOwnProp=Object.prototype.hasOwnProperty,__name=(target,value)=>__defProp(target,"name",{value:value,configurable:!0}),__export=(target,all)=>{for(var name in all)__defProp(target,name,{get:all[name],enumerable:!0})},__copyProps=(to,from,except,desc)=>{if(from&&"object"==typeof from||"function"==typeof from)for(let key of __getOwnPropNames(from))__hasOwnProp.call(to,key)||key===except||__defProp(to,key,{get:()=>from[key],enumerable:!(desc=__getOwnPropDesc(from,key))||desc.enumerable});return to},__toCommonJS=mod=>__copyProps(__defProp({},"__esModule",{value:!0}),mod),__async=(__this,__arguments,generator)=>new Promise((resolve,reject)=>{var fulfilled=value=>{try{step(generator.next(value))}catch(e){reject(e)}},rejected=value=>{try{step(generator.throw(value))}catch(e){reject(e)}},step=x=>x.done?resolve(x.value):Promise.resolve(x.value).then(fulfilled,rejected);step((generator=generator.apply(__this,__arguments)).next())}),stream_exports={};__export(stream_exports,{getStream:()=>getStream});var hubcloudDecode=__name(function(value){return void 0===value?"":atob(value.toString())},"hubcloudDecode"),getPixelDrainUrl=__name(html=>{const match=html.match(/var\s+pxl\s*=\s*['"]([^'"]+)['"];?/i);return(null==match?void 0:match[1])||""},"getPixelDrainUrl"),getRedirectedPixelDrainUrl=__name((...htmlSources)=>{for(const html of htmlSources){if(!html)continue;const redirectedUrl=getPixelDrainUrl(html);if(redirectedUrl)return redirectedUrl}return""},"getRedirectedPixelDrainUrl");function hubcloudExtractor(link,signal,axios,cheerio,headers){return __async(this,null,function*(){var _a,_b,_c,_d,_e,_f,_g;try{headers.Cookie="ext_name=ojplmecpdpgccookcobabopnaifgidhf; xla=s4t; cf_clearance=woQrFGXtLfmEMBEiGUsVHrUBMT8s3cmguIzmMjmvpkg-1770053679-1.2.1.1-xBrQdciOJsweUF6F2T_OtH6jmyanN_TduQ0yslc_XqjU6RcHSxI7.YOKv6ry7oYo64868HYoULnVyww536H2eVI3R2e4wKzsky6abjPdfQPxqpUaXjxfJ02o6jl3_Vkwr4uiaU7Wy596Vdst3y78HXvVmKdIohhtPvp.vZ9_L7wvWdce0GRixjh_6JiqWmWMws46hwEt3hboaS1e1e4EoWCvj5b0M_jVwvSxBOAW5emFzvT3QrnRh4nyYmKDERnY",console.log("hubcloudExtractor",link);const baseUrl=link.split("/").slice(0,3).join("/"),streamLinks=[],vLinkText=(yield axios(`${link}`,{headers:headers,signal:signal})).data,$vLink=cheerio.load(vLinkText),vLinkRedirect=vLinkText.match(/var\s+url\s*=\s*'([^']+)';/)||[];let vcloudLink=hubcloudDecode(null==(_b=null==(_a=vLinkRedirect[1])?void 0:_a.split("r="))?void 0:_b[1])||vLinkRedirect[1]||$vLink(".fa-file-download.fa-lg").parent().attr("href")||link;console.log("vcloudLink",vcloudLink),(null==vcloudLink?void 0:vcloudLink.startsWith("/"))&&(vcloudLink=`${baseUrl}${vcloudLink}`,console.log("New vcloudLink",vcloudLink));const vcloudRes=yield fetch(vcloudLink,{headers:headers,signal:signal,redirect:"follow"}),vcloudText=yield vcloudRes.text(),$=cheerio.load(vcloudText),linkClass=$(".btn-success.btn-lg.h6,.btn-danger,.btn-secondary");for(const element of linkClass){let link2=$(element).attr("href")||"";switch(!0){case null==link2?void 0:link2.includes("pixeld"):if(console.log("Pixeldrain link found:",link2),!(null==link2?void 0:link2.includes("api"))){const redirectedPixelDrainUrl=getRedirectedPixelDrainUrl(vLinkText,vcloudText);redirectedPixelDrainUrl&&(console.log("Special case for token negn6f",redirectedPixelDrainUrl),link2=redirectedPixelDrainUrl);const token=null==(_c=link2.split("/").pop())?void 0:_c.split("?")[0],baseUrl2=link2.split("/").slice(0,-2).join("/");link2=`${baseUrl2}/api/file/${token}`}streamLinks.push({server:"Pixeldrain",link:link2,type:"mkv"});break;case(null==link2?void 0:link2.includes(".dev"))&&!(null==link2?void 0:link2.includes("/?id=")):streamLinks.push({server:"Cf Worker",link:link2,type:"mkv"});break;case(null==link2?void 0:link2.includes("hubcloud"))||(null==link2?void 0:link2.includes("/?id=")):try{const newLinkRes=yield fetch(link2,{method:"HEAD",headers:headers,signal:signal,redirect:"manual"});let newLink=link2;if(newLink=newLinkRes.status>=300&&newLinkRes.status<400?newLinkRes.headers.get("location")||link2:newLinkRes.url&&newLinkRes.url!==link2?newLinkRes.url:newLinkRes.headers.get("location")||link2,newLink.includes("googleusercontent"))newLink=newLink.split("?link=")[1];else{const newLinkRes2=yield fetch(newLink,{method:"HEAD",headers:headers,signal:signal,redirect:"manual"});newLink=newLinkRes2.status>=300&&newLinkRes2.status<400?(null==(_d=newLinkRes2.headers.get("location"))?void 0:_d.split("?link=")[1])||newLink:newLinkRes2.url&&newLinkRes2.url!==newLink?newLinkRes2.url.split("?link=")[1]||newLinkRes2.url:(null==(_e=newLinkRes2.headers.get("location"))?void 0:_e.split("?link=")[1])||newLink}streamLinks.push({server:"hubcloud",link:newLink,type:"mkv"})}catch(error){console.log("hubcloudExtractor error in hubcloud link: ",error)}break;case null==link2?void 0:link2.includes("cloudflarestorage"):streamLinks.push({server:"CfStorage",link:link2,type:"mkv"});break;case(null==link2?void 0:link2.includes("fastdl"))||(null==link2?void 0:link2.includes("fsl.")):streamLinks.push({server:"FastDl",link:link2,type:"mkv"});break;case link2.includes("hubcdn")&&!link2.includes("/?id="):streamLinks.push({server:"HubCdn",link:link2,type:"mkv"});break;default:if((null==link2?void 0:link2.includes(".mkv"))||(null==link2?void 0:link2.includes("?token="))){const serverName=(null==(_g=null==(_f=link2.match(/^(?:https?:\/\/)?(?:www\.)?([^\/]+)/i))?void 0:_f[1])?void 0:_g.replace(/\./g," "))||"Unknown";streamLinks.push({server:serverName,link:link2,type:"mkv"})}}}return console.log("streamLinks",streamLinks),streamLinks}catch(error){return console.log("hubcloudExtractor error: ",(null==error?void 0:error.message)||error),[]}})}function gdflixExtractor(link,signal,axios,cheerio,headers){return __async(this,null,function*(){var _a,_b,_c,_d,_e,_f,_g,_h;try{const streamLinks=[],res=yield axios(`${link}`,{headers:headers,signal:signal});console.log("gdflixExtractor",link);const data=res.data;let $drive=cheerio.load(data);if(null==(_a=$drive("body").attr("onload"))?void 0:_a.includes("location.replace")){const newLink=null==(_d=null==(_c=null==(_b=$drive("body").attr("onload"))?void 0:_b.split("location.replace('"))?void 0:_c[1].split("'"))?void 0:_d[0];if(console.log("newLink",newLink),newLink){const newRes=yield axios.get(newLink,{headers:headers,signal:signal});$drive=cheerio.load(newRes.data)}}try{const baseUrl=link.split("/").slice(0,3).join("/"),resumeDrive=$drive(".btn-secondary").attr("href")||"";if(console.log("resumeDrive",resumeDrive),resumeDrive.includes("indexbot")){const resumeBotRes=yield axios.get(resumeDrive,{headers:headers}),resumeBotToken=resumeBotRes.data.match(/formData\.append\('token', '([a-f0-9]+)'\)/)[1],resumeBotBody=new FormData;resumeBotBody.append("token",resumeBotToken);const resumeBotPath=resumeBotRes.data.match(/fetch\('\/download\?id=([a-zA-Z0-9\/+]+)'/)[1],resumeBotBaseUrl=resumeDrive.split("/download")[0],resumeBotDownload=yield fetch(resumeBotBaseUrl+"/download?id="+resumeBotPath,{method:"POST",body:resumeBotBody,headers:{Referer:resumeDrive,Cookie:"PHPSESSID=7e9658ce7c805dab5bbcea9046f7f308"}}),resumeBotDownloadData=yield resumeBotDownload.json();console.log("resumeBotDownloadData",resumeBotDownloadData.url),streamLinks.push({server:"ResumeBot",link:resumeBotDownloadData.url,type:"mkv"})}else{const url=baseUrl+resumeDrive,resumeDriveHtml=(yield axios.get(url,{headers:headers})).data,resumeLink=cheerio.load(resumeDriveHtml)(".btn-success").attr("href");resumeLink&&streamLinks.push({server:"ResumeCloud",link:resumeLink,type:"mkv"})}}catch(err){console.log("Resume link not found")}try{const seed=$drive(".btn-danger").attr("href")||"";if(console.log("seed",seed),seed.includes("?url=")){const instantToken=seed.split("=")[1],InstantFromData=new FormData;InstantFromData.append("keys",instantToken);const videoSeedUrl=seed.split("/").slice(0,3).join("/")+"/api",instantLinkRes=yield fetch(videoSeedUrl,{method:"POST",body:InstantFromData,headers:{"x-token":videoSeedUrl}}),instantLinkData=yield instantLinkRes.json();if(!1===instantLinkData.error){const instantLink=instantLinkData.url;streamLinks.push({server:"Gdrive-Instant",link:instantLink,type:"mkv"})}else console.log("Instant link not found",instantLinkData)}else{const newLinkRes=yield axios.head(seed,{headers:headers,signal:signal});console.log("newLinkRes",null==(_e=newLinkRes.request)?void 0:_e.responseURL);const newLink=(null==(_h=null==(_g=null==(_f=newLinkRes.request)?void 0:_f.responseURL)?void 0:_g.split("?url="))?void 0:_h[1])||seed;streamLinks.push({server:"G-Drive",link:newLink,type:"mkv"})}}catch(err){console.log("Instant link not found",err)}return streamLinks}catch(error){return console.log("gdflix error: ",error),[]}})}function extractKmhdLink(katlink,providerContext){return __async(this,null,function*(){const{axios:axios}=providerContext,data=(yield axios.get(katlink,{headers:{Cookie:"unlocked=true"}})).data,hubDriveRes=data.match(/hubdrive_res:\s*"([^"]+)"/)[1];return data.match(/hubdrive_res\s*:\s*{[^}]*?link\s*:\s*"([^"]+)"/)[1]+hubDriveRes})}__name(hubcloudExtractor,"hubcloudExtractor"),__name(gdflixExtractor,"gdflixExtractor"),__name(extractKmhdLink,"extractKmhdLink");var getStream=__name(function(_0){return __async(this,arguments,function*({link:link,signal:signal,providerContext:providerContext}){const{axios:axios,cheerio:cheerio,commonHeaders:commonHeaders}=providerContext,streamLinks=[];console.log("katGetStream",link);try{if(link.includes("gdflix"))return yield gdflixExtractor(link,signal,axios,cheerio,commonHeaders);if(link.includes("kmhd")){const hubcloudLink=yield extractKmhdLink(link,providerContext);return yield hubcloudExtractor(hubcloudLink,signal,axios,cheerio,commonHeaders)}if(link.includes("gdflix")){try{const resumeDrive=link.replace("/file","/zfile"),resumeDriveHtml=(yield axios.get(resumeDrive)).data,resumeLink=cheerio.load(resumeDriveHtml)(".btn-success").attr("href");console.log("resumeLink",resumeLink),resumeLink&&streamLinks.push({server:"ResumeCloud",link:resumeLink,type:"mkv"})}catch(err){console.log("Resume link not found")}try{const driveres=yield axios.get(link,{timeout:1e4}),seed=cheerio.load(driveres.data)(".btn-danger").attr("href")||"",instantToken=seed.split("=")[1],InstantFromData=new FormData;InstantFromData.append("keys",instantToken);const videoSeedUrl=seed.split("/").slice(0,3).join("/")+"/api",instantLinkRes=yield fetch(videoSeedUrl,{method:"POST",body:InstantFromData,headers:{"x-token":videoSeedUrl}}),instantLinkData=yield instantLinkRes.json();if(console.log("instantLinkData",instantLinkData),!1===instantLinkData.error){const instantLink=instantLinkData.url;streamLinks.push({server:"Gdrive-Instant",link:instantLink,type:"mkv"})}else console.log("Instant link not found",instantLinkData)}catch(err){console.log("Instant link not found",err)}return streamLinks}return yield hubcloudExtractor(link,signal,axios,cheerio,commonHeaders)}catch(error){return console.log("katgetStream error: ",error),[]}})},"getStream");exports.getStream=getStream; \ No newline at end of file diff --git a/dist/luxMovies/stream.js b/dist/luxMovies/stream.js index 82e1fc0..c28bfab 100644 --- a/dist/luxMovies/stream.js +++ b/dist/luxMovies/stream.js @@ -1 +1 @@ -"use strict";var __defProp=Object.defineProperty,__getOwnPropDesc=Object.getOwnPropertyDescriptor,__getOwnPropNames=Object.getOwnPropertyNames,__hasOwnProp=Object.prototype.hasOwnProperty,__name=(target,value)=>__defProp(target,"name",{value:value,configurable:!0}),__export=(target,all)=>{for(var name in all)__defProp(target,name,{get:all[name],enumerable:!0})},__copyProps=(to,from,except,desc)=>{if(from&&"object"==typeof from||"function"==typeof from)for(let key of __getOwnPropNames(from))__hasOwnProp.call(to,key)||key===except||__defProp(to,key,{get:()=>from[key],enumerable:!(desc=__getOwnPropDesc(from,key))||desc.enumerable});return to},__toCommonJS=mod=>__copyProps(__defProp({},"__esModule",{value:!0}),mod),__async=(__this,__arguments,generator)=>new Promise((resolve,reject)=>{var fulfilled=value=>{try{step(generator.next(value))}catch(e){reject(e)}},rejected=value=>{try{step(generator.throw(value))}catch(e){reject(e)}},step=x=>x.done?resolve(x.value):Promise.resolve(x.value).then(fulfilled,rejected);step((generator=generator.apply(__this,__arguments)).next())}),stream_exports={};__export(stream_exports,{getStream:()=>getStream});var hubcloudDecode=__name(function(value){return void 0===value?"":atob(value.toString())},"hubcloudDecode");function hubcloudExtractor(link,signal,axios,cheerio,headers2){return __async(this,null,function*(){var _a,_b,_c,_d,_e,_f;try{headers2.Cookie="ext_name=ojplmecpdpgccookcobabopnaifgidhf; xla=s4t; cf_clearance=woQrFGXtLfmEMBEiGUsVHrUBMT8s3cmguIzmMjmvpkg-1770053679-1.2.1.1-xBrQdciOJsweUF6F2T_OtH6jmyanN_TduQ0yslc_XqjU6RcHSxI7.YOKv6ry7oYo64868HYoULnVyww536H2eVI3R2e4wKzsky6abjPdfQPxqpUaXjxfJ02o6jl3_Vkwr4uiaU7Wy596Vdst3y78HXvVmKdIohhtPvp.vZ9_L7wvWdce0GRixjh_6JiqWmWMws46hwEt3hboaS1e1e4EoWCvj5b0M_jVwvSxBOAW5emFzvT3QrnRh4nyYmKDERnY",console.log("hubcloudExtractor",link),console.log("headers",headers2);const baseUrl=link.split("/").slice(0,3).join("/"),streamLinks=[],vLinkText=(yield axios(`${link}`,{headers:headers2,signal:signal})).data,$vLink=cheerio.load(vLinkText),vLinkRedirect=vLinkText.match(/var\s+url\s*=\s*'([^']+)';/)||[];let vcloudLink=hubcloudDecode(null==(_b=null==(_a=vLinkRedirect[1])?void 0:_a.split("r="))?void 0:_b[1])||vLinkRedirect[1]||$vLink(".fa-file-download.fa-lg").parent().attr("href")||link;console.log("vcloudLink",vcloudLink),(null==vcloudLink?void 0:vcloudLink.startsWith("/"))&&(vcloudLink=`${baseUrl}${vcloudLink}`,console.log("New vcloudLink",vcloudLink));const vcloudRes=yield fetch(vcloudLink,{headers:headers2,signal:signal,redirect:"follow"}),$=cheerio.load(yield vcloudRes.text()),linkClass=$(".btn-success.btn-lg.h6,.btn-danger,.btn-secondary");for(const element of linkClass){let link2=$(element).attr("href")||"";switch(!0){case null==link2?void 0:link2.includes("pixeld"):if(!(null==link2?void 0:link2.includes("api"))){const token=link2.split("/").pop(),baseUrl2=link2.split("/").slice(0,-2).join("/");link2=`${baseUrl2}/api/file/${token}`}streamLinks.push({server:"Pixeldrain",link:link2,type:"mkv"});break;case(null==link2?void 0:link2.includes(".dev"))&&!(null==link2?void 0:link2.includes("/?id=")):streamLinks.push({server:"Cf Worker",link:link2,type:"mkv"});break;case(null==link2?void 0:link2.includes("hubcloud"))||(null==link2?void 0:link2.includes("/?id=")):try{const newLinkRes=yield fetch(link2,{method:"HEAD",headers:headers2,signal:signal,redirect:"manual"});let newLink=link2;if(newLink=newLinkRes.status>=300&&newLinkRes.status<400?newLinkRes.headers.get("location")||link2:newLinkRes.url&&newLinkRes.url!==link2?newLinkRes.url:newLinkRes.headers.get("location")||link2,newLink.includes("googleusercontent"))newLink=newLink.split("?link=")[1];else{const newLinkRes2=yield fetch(newLink,{method:"HEAD",headers:headers2,signal:signal,redirect:"manual"});newLink=newLinkRes2.status>=300&&newLinkRes2.status<400?(null==(_c=newLinkRes2.headers.get("location"))?void 0:_c.split("?link=")[1])||newLink:newLinkRes2.url&&newLinkRes2.url!==newLink?newLinkRes2.url.split("?link=")[1]||newLinkRes2.url:(null==(_d=newLinkRes2.headers.get("location"))?void 0:_d.split("?link=")[1])||newLink}streamLinks.push({server:"hubcloud",link:newLink,type:"mkv"})}catch(error){console.log("hubcloudExtractor error in hubcloud link: ",error)}break;case null==link2?void 0:link2.includes("cloudflarestorage"):streamLinks.push({server:"CfStorage",link:link2,type:"mkv"});break;case(null==link2?void 0:link2.includes("fastdl"))||(null==link2?void 0:link2.includes("fsl.")):streamLinks.push({server:"FastDl",link:link2,type:"mkv"});break;case link2.includes("hubcdn")&&!link2.includes("/?id="):streamLinks.push({server:"HubCdn",link:link2,type:"mkv"});break;default:if((null==link2?void 0:link2.includes(".mkv"))||(null==link2?void 0:link2.includes("?token="))){const serverName=(null==(_f=null==(_e=link2.match(/^(?:https?:\/\/)?(?:www\.)?([^\/]+)/i))?void 0:_e[1])?void 0:_f.replace(/\./g," "))||"Unknown";streamLinks.push({server:serverName,link:link2,type:"mkv"})}}}return console.log("streamLinks",streamLinks),streamLinks}catch(error){return console.log("hubcloudExtractor error: ",(null==error?void 0:error.message)||error),[]}})}__name(hubcloudExtractor,"hubcloudExtractor");var headers={Accept:"text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7","Cache-Control":"no-store","Accept-Language":"en-US,en;q=0.9",DNT:"1","sec-ch-ua":'"Not_A Brand";v="8", "Chromium";v="120", "Microsoft Edge";v="120"',"sec-ch-ua-mobile":"?0","sec-ch-ua-platform":'"Windows"',"Sec-Fetch-Dest":"document","Sec-Fetch-Mode":"navigate","Sec-Fetch-Site":"none","Sec-Fetch-User":"?1",Cookie:"ext_name=ojplmecpdpgccookcobabopnaifgidhf; cf_clearance=6yZYfXQxBgjaD1eacR5zZCz7njssbxjtSZZCElTOGk0-1764836255-1.2.1.1-bzHvDcDRLp6AAYo7qvGVzJ6Gk6zaqAepuGiGhAWCGYL.ZDpw5yI4TkUIXDgAnEhGCZ9J5X2_OagzgeMHZrd8rzeyAFQXj0dmYMErcfII7_Rhq5kZ4kAtS0tl9PtaNKKd2m4taIufySXCCstl3iNLMODTjbsW_KZi8U8DauOdGSAhBd1DCGxvLlAOM.snfkhb0yQiVJcLW8Bv9IeKQac0ar_TKkV6QexqNZYiyRXnE7E; xla=s4t","Upgrade-Insecure-Requests":"1","user-agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/142.0.0.0 Safari/537.36 Edg/142.0.0.0"};function getStream(_0){return __async(this,arguments,function*({link:link,type:type,signal:signal,providerContext:providerContext}){var _a,_b,_c,_d;const{axios:axios,cheerio:cheerio,commonHeaders:commonHeaders}=providerContext;try{const streamLinks=[];if(console.log("dotlink",link),"movie"===type){const dotlinkText=(yield axios(`${link}`,{headers:headers})).data;link=(dotlinkText.match(/__defProp(target,"name",{value:value,configurable:!0}),__export=(target,all)=>{for(var name in all)__defProp(target,name,{get:all[name],enumerable:!0})},__copyProps=(to,from,except,desc)=>{if(from&&"object"==typeof from||"function"==typeof from)for(let key of __getOwnPropNames(from))__hasOwnProp.call(to,key)||key===except||__defProp(to,key,{get:()=>from[key],enumerable:!(desc=__getOwnPropDesc(from,key))||desc.enumerable});return to},__toCommonJS=mod=>__copyProps(__defProp({},"__esModule",{value:!0}),mod),__async=(__this,__arguments,generator)=>new Promise((resolve,reject)=>{var fulfilled=value=>{try{step(generator.next(value))}catch(e){reject(e)}},rejected=value=>{try{step(generator.throw(value))}catch(e){reject(e)}},step=x=>x.done?resolve(x.value):Promise.resolve(x.value).then(fulfilled,rejected);step((generator=generator.apply(__this,__arguments)).next())}),stream_exports={};__export(stream_exports,{getStream:()=>getStream});var hubcloudDecode=__name(function(value){return void 0===value?"":atob(value.toString())},"hubcloudDecode"),getPixelDrainUrl=__name(html=>{const match=html.match(/var\s+pxl\s*=\s*['"]([^'"]+)['"];?/i);return(null==match?void 0:match[1])||""},"getPixelDrainUrl"),getRedirectedPixelDrainUrl=__name((...htmlSources)=>{for(const html of htmlSources){if(!html)continue;const redirectedUrl=getPixelDrainUrl(html);if(redirectedUrl)return redirectedUrl}return""},"getRedirectedPixelDrainUrl");function hubcloudExtractor(link,signal,axios,cheerio,headers2){return __async(this,null,function*(){var _a,_b,_c,_d,_e,_f,_g;try{headers2.Cookie="ext_name=ojplmecpdpgccookcobabopnaifgidhf; xla=s4t; cf_clearance=woQrFGXtLfmEMBEiGUsVHrUBMT8s3cmguIzmMjmvpkg-1770053679-1.2.1.1-xBrQdciOJsweUF6F2T_OtH6jmyanN_TduQ0yslc_XqjU6RcHSxI7.YOKv6ry7oYo64868HYoULnVyww536H2eVI3R2e4wKzsky6abjPdfQPxqpUaXjxfJ02o6jl3_Vkwr4uiaU7Wy596Vdst3y78HXvVmKdIohhtPvp.vZ9_L7wvWdce0GRixjh_6JiqWmWMws46hwEt3hboaS1e1e4EoWCvj5b0M_jVwvSxBOAW5emFzvT3QrnRh4nyYmKDERnY",console.log("hubcloudExtractor",link);const baseUrl=link.split("/").slice(0,3).join("/"),streamLinks=[],vLinkText=(yield axios(`${link}`,{headers:headers2,signal:signal})).data,$vLink=cheerio.load(vLinkText),vLinkRedirect=vLinkText.match(/var\s+url\s*=\s*'([^']+)';/)||[];let vcloudLink=hubcloudDecode(null==(_b=null==(_a=vLinkRedirect[1])?void 0:_a.split("r="))?void 0:_b[1])||vLinkRedirect[1]||$vLink(".fa-file-download.fa-lg").parent().attr("href")||link;console.log("vcloudLink",vcloudLink),(null==vcloudLink?void 0:vcloudLink.startsWith("/"))&&(vcloudLink=`${baseUrl}${vcloudLink}`,console.log("New vcloudLink",vcloudLink));const vcloudRes=yield fetch(vcloudLink,{headers:headers2,signal:signal,redirect:"follow"}),vcloudText=yield vcloudRes.text(),$=cheerio.load(vcloudText),linkClass=$(".btn-success.btn-lg.h6,.btn-danger,.btn-secondary");for(const element of linkClass){let link2=$(element).attr("href")||"";switch(!0){case null==link2?void 0:link2.includes("pixeld"):if(console.log("Pixeldrain link found:",link2),!(null==link2?void 0:link2.includes("api"))){const redirectedPixelDrainUrl=getRedirectedPixelDrainUrl(vLinkText,vcloudText);redirectedPixelDrainUrl&&(console.log("Special case for token negn6f",redirectedPixelDrainUrl),link2=redirectedPixelDrainUrl);const token=null==(_c=link2.split("/").pop())?void 0:_c.split("?")[0],baseUrl2=link2.split("/").slice(0,-2).join("/");link2=`${baseUrl2}/api/file/${token}`}streamLinks.push({server:"Pixeldrain",link:link2,type:"mkv"});break;case(null==link2?void 0:link2.includes(".dev"))&&!(null==link2?void 0:link2.includes("/?id=")):streamLinks.push({server:"Cf Worker",link:link2,type:"mkv"});break;case(null==link2?void 0:link2.includes("hubcloud"))||(null==link2?void 0:link2.includes("/?id=")):try{const newLinkRes=yield fetch(link2,{method:"HEAD",headers:headers2,signal:signal,redirect:"manual"});let newLink=link2;if(newLink=newLinkRes.status>=300&&newLinkRes.status<400?newLinkRes.headers.get("location")||link2:newLinkRes.url&&newLinkRes.url!==link2?newLinkRes.url:newLinkRes.headers.get("location")||link2,newLink.includes("googleusercontent"))newLink=newLink.split("?link=")[1];else{const newLinkRes2=yield fetch(newLink,{method:"HEAD",headers:headers2,signal:signal,redirect:"manual"});newLink=newLinkRes2.status>=300&&newLinkRes2.status<400?(null==(_d=newLinkRes2.headers.get("location"))?void 0:_d.split("?link=")[1])||newLink:newLinkRes2.url&&newLinkRes2.url!==newLink?newLinkRes2.url.split("?link=")[1]||newLinkRes2.url:(null==(_e=newLinkRes2.headers.get("location"))?void 0:_e.split("?link=")[1])||newLink}streamLinks.push({server:"hubcloud",link:newLink,type:"mkv"})}catch(error){console.log("hubcloudExtractor error in hubcloud link: ",error)}break;case null==link2?void 0:link2.includes("cloudflarestorage"):streamLinks.push({server:"CfStorage",link:link2,type:"mkv"});break;case(null==link2?void 0:link2.includes("fastdl"))||(null==link2?void 0:link2.includes("fsl.")):streamLinks.push({server:"FastDl",link:link2,type:"mkv"});break;case link2.includes("hubcdn")&&!link2.includes("/?id="):streamLinks.push({server:"HubCdn",link:link2,type:"mkv"});break;default:if((null==link2?void 0:link2.includes(".mkv"))||(null==link2?void 0:link2.includes("?token="))){const serverName=(null==(_g=null==(_f=link2.match(/^(?:https?:\/\/)?(?:www\.)?([^\/]+)/i))?void 0:_f[1])?void 0:_g.replace(/\./g," "))||"Unknown";streamLinks.push({server:serverName,link:link2,type:"mkv"})}}}return console.log("streamLinks",streamLinks),streamLinks}catch(error){return console.log("hubcloudExtractor error: ",(null==error?void 0:error.message)||error),[]}})}__name(hubcloudExtractor,"hubcloudExtractor");var headers={Accept:"text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7","Cache-Control":"no-store","Accept-Language":"en-US,en;q=0.9",DNT:"1","sec-ch-ua":'"Not_A Brand";v="8", "Chromium";v="120", "Microsoft Edge";v="120"',"sec-ch-ua-mobile":"?0","sec-ch-ua-platform":'"Windows"',"Sec-Fetch-Dest":"document","Sec-Fetch-Mode":"navigate","Sec-Fetch-Site":"none","Sec-Fetch-User":"?1",Cookie:"ext_name=ojplmecpdpgccookcobabopnaifgidhf; cf_clearance=6yZYfXQxBgjaD1eacR5zZCz7njssbxjtSZZCElTOGk0-1764836255-1.2.1.1-bzHvDcDRLp6AAYo7qvGVzJ6Gk6zaqAepuGiGhAWCGYL.ZDpw5yI4TkUIXDgAnEhGCZ9J5X2_OagzgeMHZrd8rzeyAFQXj0dmYMErcfII7_Rhq5kZ4kAtS0tl9PtaNKKd2m4taIufySXCCstl3iNLMODTjbsW_KZi8U8DauOdGSAhBd1DCGxvLlAOM.snfkhb0yQiVJcLW8Bv9IeKQac0ar_TKkV6QexqNZYiyRXnE7E; xla=s4t","Upgrade-Insecure-Requests":"1","user-agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/142.0.0.0 Safari/537.36 Edg/142.0.0.0"};function getStream(_0){return __async(this,arguments,function*({link:link,type:type,signal:signal,providerContext:providerContext}){var _a,_b,_c,_d;const{axios:axios,cheerio:cheerio,commonHeaders:commonHeaders}=providerContext;try{const streamLinks=[];if(console.log("dotlink",link),"movie"===type){const dotlinkText=(yield axios(`${link}`,{headers:headers})).data;link=(dotlinkText.match(/__defProp(target,"name",{value:value,configurable:!0}),__export=(target,all)=>{for(var name in all)__defProp(target,name,{get:all[name],enumerable:!0})},__copyProps=(to,from,except,desc)=>{if(from&&"object"==typeof from||"function"==typeof from)for(let key of __getOwnPropNames(from))__hasOwnProp.call(to,key)||key===except||__defProp(to,key,{get:()=>from[key],enumerable:!(desc=__getOwnPropDesc(from,key))||desc.enumerable});return to},__toCommonJS=mod=>__copyProps(__defProp({},"__esModule",{value:!0}),mod),__async=(__this,__arguments,generator)=>new Promise((resolve,reject)=>{var fulfilled=value=>{try{step(generator.next(value))}catch(e){reject(e)}},rejected=value=>{try{step(generator.throw(value))}catch(e){reject(e)}},step=x=>x.done?resolve(x.value):Promise.resolve(x.value).then(fulfilled,rejected);step((generator=generator.apply(__this,__arguments)).next())}),stream_exports={};__export(stream_exports,{getStream:()=>getStream});var hubcloudDecode=__name(function(value){return void 0===value?"":atob(value.toString())},"hubcloudDecode");function hubcloudExtractor(link,signal,axios,cheerio,headers2){return __async(this,null,function*(){var _a,_b,_c,_d,_e,_f;try{headers2.Cookie="ext_name=ojplmecpdpgccookcobabopnaifgidhf; xla=s4t; cf_clearance=woQrFGXtLfmEMBEiGUsVHrUBMT8s3cmguIzmMjmvpkg-1770053679-1.2.1.1-xBrQdciOJsweUF6F2T_OtH6jmyanN_TduQ0yslc_XqjU6RcHSxI7.YOKv6ry7oYo64868HYoULnVyww536H2eVI3R2e4wKzsky6abjPdfQPxqpUaXjxfJ02o6jl3_Vkwr4uiaU7Wy596Vdst3y78HXvVmKdIohhtPvp.vZ9_L7wvWdce0GRixjh_6JiqWmWMws46hwEt3hboaS1e1e4EoWCvj5b0M_jVwvSxBOAW5emFzvT3QrnRh4nyYmKDERnY",console.log("hubcloudExtractor",link),console.log("headers",headers2);const baseUrl=link.split("/").slice(0,3).join("/"),streamLinks=[],vLinkText=(yield axios(`${link}`,{headers:headers2,signal:signal})).data,$vLink=cheerio.load(vLinkText),vLinkRedirect=vLinkText.match(/var\s+url\s*=\s*'([^']+)';/)||[];let vcloudLink=hubcloudDecode(null==(_b=null==(_a=vLinkRedirect[1])?void 0:_a.split("r="))?void 0:_b[1])||vLinkRedirect[1]||$vLink(".fa-file-download.fa-lg").parent().attr("href")||link;console.log("vcloudLink",vcloudLink),(null==vcloudLink?void 0:vcloudLink.startsWith("/"))&&(vcloudLink=`${baseUrl}${vcloudLink}`,console.log("New vcloudLink",vcloudLink));const vcloudRes=yield fetch(vcloudLink,{headers:headers2,signal:signal,redirect:"follow"}),$=cheerio.load(yield vcloudRes.text()),linkClass=$(".btn-success.btn-lg.h6,.btn-danger,.btn-secondary");for(const element of linkClass){let link2=$(element).attr("href")||"";switch(!0){case null==link2?void 0:link2.includes("pixeld"):if(!(null==link2?void 0:link2.includes("api"))){const token=link2.split("/").pop(),baseUrl2=link2.split("/").slice(0,-2).join("/");link2=`${baseUrl2}/api/file/${token}`}streamLinks.push({server:"Pixeldrain",link:link2,type:"mkv"});break;case(null==link2?void 0:link2.includes(".dev"))&&!(null==link2?void 0:link2.includes("/?id=")):streamLinks.push({server:"Cf Worker",link:link2,type:"mkv"});break;case(null==link2?void 0:link2.includes("hubcloud"))||(null==link2?void 0:link2.includes("/?id=")):try{const newLinkRes=yield fetch(link2,{method:"HEAD",headers:headers2,signal:signal,redirect:"manual"});let newLink=link2;if(newLink=newLinkRes.status>=300&&newLinkRes.status<400?newLinkRes.headers.get("location")||link2:newLinkRes.url&&newLinkRes.url!==link2?newLinkRes.url:newLinkRes.headers.get("location")||link2,newLink.includes("googleusercontent"))newLink=newLink.split("?link=")[1];else{const newLinkRes2=yield fetch(newLink,{method:"HEAD",headers:headers2,signal:signal,redirect:"manual"});newLink=newLinkRes2.status>=300&&newLinkRes2.status<400?(null==(_c=newLinkRes2.headers.get("location"))?void 0:_c.split("?link=")[1])||newLink:newLinkRes2.url&&newLinkRes2.url!==newLink?newLinkRes2.url.split("?link=")[1]||newLinkRes2.url:(null==(_d=newLinkRes2.headers.get("location"))?void 0:_d.split("?link=")[1])||newLink}streamLinks.push({server:"hubcloud",link:newLink,type:"mkv"})}catch(error){console.log("hubcloudExtractor error in hubcloud link: ",error)}break;case null==link2?void 0:link2.includes("cloudflarestorage"):streamLinks.push({server:"CfStorage",link:link2,type:"mkv"});break;case(null==link2?void 0:link2.includes("fastdl"))||(null==link2?void 0:link2.includes("fsl.")):streamLinks.push({server:"FastDl",link:link2,type:"mkv"});break;case link2.includes("hubcdn")&&!link2.includes("/?id="):streamLinks.push({server:"HubCdn",link:link2,type:"mkv"});break;default:if((null==link2?void 0:link2.includes(".mkv"))||(null==link2?void 0:link2.includes("?token="))){const serverName=(null==(_f=null==(_e=link2.match(/^(?:https?:\/\/)?(?:www\.)?([^\/]+)/i))?void 0:_e[1])?void 0:_f.replace(/\./g," "))||"Unknown";streamLinks.push({server:serverName,link:link2,type:"mkv"})}}}return console.log("streamLinks",streamLinks),streamLinks}catch(error){return console.log("hubcloudExtractor error: ",(null==error?void 0:error.message)||error),[]}})}__name(hubcloudExtractor,"hubcloudExtractor");var headers={Accept:"text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7","Cache-Control":"no-store","Accept-Language":"en-US,en;q=0.9",DNT:"1","sec-ch-ua":'"Not_A Brand";v="8", "Chromium";v="120", "Microsoft Edge";v="120"',"sec-ch-ua-mobile":"?0","sec-ch-ua-platform":'"Windows"',"Sec-Fetch-Dest":"document","Sec-Fetch-Mode":"navigate","Sec-Fetch-Site":"none","Sec-Fetch-User":"?1",Cookie:"xla=s4t; _ga=GA1.1.1081149560.1756378968; _ga_BLZGKYN5PF=GS2.1.s1756378968$o1$g1$t1756378984$j44$l0$h0","Upgrade-Insecure-Requests":"1","User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/131.0.0.0 Safari/537.36 Edg/131.0.0.0"};function getStream(_0){return __async(this,arguments,function*({link:link,type:type,signal:signal,providerContext:providerContext}){var _a,_b,_c,_d;const{axios:axios,cheerio:cheerio,commonHeaders:commonHeaders}=providerContext;try{const streamLinks=[];if(console.log("dotlink",link),"movie"===type){const dotlinkText=(yield axios(`${link}`,{headers:headers})).data,vlink=dotlinkText.match(/{const href=$(el).attr("href")||"";return href.includes("hubcloud")||href.includes("gdflix")||href.includes("filebee")||href.includes("fastdl")}).first().attr("href");directLink&&(link=directLink)}if(link.includes("fastdl.zip"))try{const reurlMatch=(yield axios.get(link,{headers:headers})).data.match(/var reurl = "([^"]+)";/);if(reurlMatch&&reurlMatch[1]){const actualLink=reurlMatch[1].replace("https://fastdl.zip/dl.php?link=","");return streamLinks.push({server:"fastdl",link:actualLink,type:"mkv"}),streamLinks}}catch(error){console.log("fastdl error: ",error)}try{const filepressLink=cheerio.load(dotlinkText)('.btn.btn-sm.btn-outline[style="background:linear-gradient(135deg,rgb(252,185,0) 0%,rgb(0,0,0)); color: #fdf8f2;"]').parent().attr("href"),filepressID=null==filepressLink?void 0:filepressLink.split("/").pop(),filepressBaseUrl=null==filepressLink?void 0:filepressLink.split("/").slice(0,-2).join("/"),filepressTokenRes=yield axios.post(filepressBaseUrl+"/api/file/downlaod/",{id:filepressID,method:"indexDownlaod",captchaValue:null},{headers:{"Content-Type":"application/json",Referer:filepressBaseUrl}});if(null==(_a=filepressTokenRes.data)?void 0:_a.status){const filepressToken=null==(_b=filepressTokenRes.data)?void 0:_b.data,filepressStreamLink=yield axios.post(filepressBaseUrl+"/api/file/downlaod2/",{id:filepressToken,method:"indexDownlaod",captchaValue:null},{headers:{"Content-Type":"application/json",Referer:filepressBaseUrl}});streamLinks.push({server:"filepress",link:null==(_d=null==(_c=filepressStreamLink.data)?void 0:_c.data)?void 0:_d[0],type:"mkv"})}}catch(error){console.log("filepress error: ")}}return yield hubcloudExtractor(link,signal,axios,cheerio,commonHeaders)}catch(error){return console.log("getStream error: ",error),error.message.includes("Aborted"),[]}})}__name(getStream,"getStream"),exports.getStream=getStream; \ No newline at end of file +"use strict";var __defProp=Object.defineProperty,__getOwnPropDesc=Object.getOwnPropertyDescriptor,__getOwnPropNames=Object.getOwnPropertyNames,__hasOwnProp=Object.prototype.hasOwnProperty,__name=(target,value)=>__defProp(target,"name",{value:value,configurable:!0}),__export=(target,all)=>{for(var name in all)__defProp(target,name,{get:all[name],enumerable:!0})},__copyProps=(to,from,except,desc)=>{if(from&&"object"==typeof from||"function"==typeof from)for(let key of __getOwnPropNames(from))__hasOwnProp.call(to,key)||key===except||__defProp(to,key,{get:()=>from[key],enumerable:!(desc=__getOwnPropDesc(from,key))||desc.enumerable});return to},__toCommonJS=mod=>__copyProps(__defProp({},"__esModule",{value:!0}),mod),__async=(__this,__arguments,generator)=>new Promise((resolve,reject)=>{var fulfilled=value=>{try{step(generator.next(value))}catch(e){reject(e)}},rejected=value=>{try{step(generator.throw(value))}catch(e){reject(e)}},step=x=>x.done?resolve(x.value):Promise.resolve(x.value).then(fulfilled,rejected);step((generator=generator.apply(__this,__arguments)).next())}),stream_exports={};__export(stream_exports,{getStream:()=>getStream});var hubcloudDecode=__name(function(value){return void 0===value?"":atob(value.toString())},"hubcloudDecode"),getPixelDrainUrl=__name(html=>{const match=html.match(/var\s+pxl\s*=\s*['"]([^'"]+)['"];?/i);return(null==match?void 0:match[1])||""},"getPixelDrainUrl"),getRedirectedPixelDrainUrl=__name((...htmlSources)=>{for(const html of htmlSources){if(!html)continue;const redirectedUrl=getPixelDrainUrl(html);if(redirectedUrl)return redirectedUrl}return""},"getRedirectedPixelDrainUrl");function hubcloudExtractor(link,signal,axios,cheerio,headers2){return __async(this,null,function*(){var _a,_b,_c,_d,_e,_f,_g;try{headers2.Cookie="ext_name=ojplmecpdpgccookcobabopnaifgidhf; xla=s4t; cf_clearance=woQrFGXtLfmEMBEiGUsVHrUBMT8s3cmguIzmMjmvpkg-1770053679-1.2.1.1-xBrQdciOJsweUF6F2T_OtH6jmyanN_TduQ0yslc_XqjU6RcHSxI7.YOKv6ry7oYo64868HYoULnVyww536H2eVI3R2e4wKzsky6abjPdfQPxqpUaXjxfJ02o6jl3_Vkwr4uiaU7Wy596Vdst3y78HXvVmKdIohhtPvp.vZ9_L7wvWdce0GRixjh_6JiqWmWMws46hwEt3hboaS1e1e4EoWCvj5b0M_jVwvSxBOAW5emFzvT3QrnRh4nyYmKDERnY",console.log("hubcloudExtractor",link);const baseUrl=link.split("/").slice(0,3).join("/"),streamLinks=[],vLinkText=(yield axios(`${link}`,{headers:headers2,signal:signal})).data,$vLink=cheerio.load(vLinkText),vLinkRedirect=vLinkText.match(/var\s+url\s*=\s*'([^']+)';/)||[];let vcloudLink=hubcloudDecode(null==(_b=null==(_a=vLinkRedirect[1])?void 0:_a.split("r="))?void 0:_b[1])||vLinkRedirect[1]||$vLink(".fa-file-download.fa-lg").parent().attr("href")||link;console.log("vcloudLink",vcloudLink),(null==vcloudLink?void 0:vcloudLink.startsWith("/"))&&(vcloudLink=`${baseUrl}${vcloudLink}`,console.log("New vcloudLink",vcloudLink));const vcloudRes=yield fetch(vcloudLink,{headers:headers2,signal:signal,redirect:"follow"}),vcloudText=yield vcloudRes.text(),$=cheerio.load(vcloudText),linkClass=$(".btn-success.btn-lg.h6,.btn-danger,.btn-secondary");for(const element of linkClass){let link2=$(element).attr("href")||"";switch(!0){case null==link2?void 0:link2.includes("pixeld"):if(console.log("Pixeldrain link found:",link2),!(null==link2?void 0:link2.includes("api"))){const redirectedPixelDrainUrl=getRedirectedPixelDrainUrl(vLinkText,vcloudText);redirectedPixelDrainUrl&&(console.log("Special case for token negn6f",redirectedPixelDrainUrl),link2=redirectedPixelDrainUrl);const token=null==(_c=link2.split("/").pop())?void 0:_c.split("?")[0],baseUrl2=link2.split("/").slice(0,-2).join("/");link2=`${baseUrl2}/api/file/${token}`}streamLinks.push({server:"Pixeldrain",link:link2,type:"mkv"});break;case(null==link2?void 0:link2.includes(".dev"))&&!(null==link2?void 0:link2.includes("/?id=")):streamLinks.push({server:"Cf Worker",link:link2,type:"mkv"});break;case(null==link2?void 0:link2.includes("hubcloud"))||(null==link2?void 0:link2.includes("/?id=")):try{const newLinkRes=yield fetch(link2,{method:"HEAD",headers:headers2,signal:signal,redirect:"manual"});let newLink=link2;if(newLink=newLinkRes.status>=300&&newLinkRes.status<400?newLinkRes.headers.get("location")||link2:newLinkRes.url&&newLinkRes.url!==link2?newLinkRes.url:newLinkRes.headers.get("location")||link2,newLink.includes("googleusercontent"))newLink=newLink.split("?link=")[1];else{const newLinkRes2=yield fetch(newLink,{method:"HEAD",headers:headers2,signal:signal,redirect:"manual"});newLink=newLinkRes2.status>=300&&newLinkRes2.status<400?(null==(_d=newLinkRes2.headers.get("location"))?void 0:_d.split("?link=")[1])||newLink:newLinkRes2.url&&newLinkRes2.url!==newLink?newLinkRes2.url.split("?link=")[1]||newLinkRes2.url:(null==(_e=newLinkRes2.headers.get("location"))?void 0:_e.split("?link=")[1])||newLink}streamLinks.push({server:"hubcloud",link:newLink,type:"mkv"})}catch(error){console.log("hubcloudExtractor error in hubcloud link: ",error)}break;case null==link2?void 0:link2.includes("cloudflarestorage"):streamLinks.push({server:"CfStorage",link:link2,type:"mkv"});break;case(null==link2?void 0:link2.includes("fastdl"))||(null==link2?void 0:link2.includes("fsl.")):streamLinks.push({server:"FastDl",link:link2,type:"mkv"});break;case link2.includes("hubcdn")&&!link2.includes("/?id="):streamLinks.push({server:"HubCdn",link:link2,type:"mkv"});break;default:if((null==link2?void 0:link2.includes(".mkv"))||(null==link2?void 0:link2.includes("?token="))){const serverName=(null==(_g=null==(_f=link2.match(/^(?:https?:\/\/)?(?:www\.)?([^\/]+)/i))?void 0:_f[1])?void 0:_g.replace(/\./g," "))||"Unknown";streamLinks.push({server:serverName,link:link2,type:"mkv"})}}}return console.log("streamLinks",streamLinks),streamLinks}catch(error){return console.log("hubcloudExtractor error: ",(null==error?void 0:error.message)||error),[]}})}__name(hubcloudExtractor,"hubcloudExtractor");var headers={Accept:"text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7","Cache-Control":"no-store","Accept-Language":"en-US,en;q=0.9",DNT:"1","sec-ch-ua":'"Not_A Brand";v="8", "Chromium";v="120", "Microsoft Edge";v="120"',"sec-ch-ua-mobile":"?0","sec-ch-ua-platform":'"Windows"',"Sec-Fetch-Dest":"document","Sec-Fetch-Mode":"navigate","Sec-Fetch-Site":"none","Sec-Fetch-User":"?1",Cookie:"xla=s4t; _ga=GA1.1.1081149560.1756378968; _ga_BLZGKYN5PF=GS2.1.s1756378968$o1$g1$t1756378984$j44$l0$h0","Upgrade-Insecure-Requests":"1","User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/131.0.0.0 Safari/537.36 Edg/131.0.0.0"};function getStream(_0){return __async(this,arguments,function*({link:link,type:type,signal:signal,providerContext:providerContext}){var _a,_b,_c,_d;const{axios:axios,cheerio:cheerio,commonHeaders:commonHeaders}=providerContext;try{const streamLinks=[];if(console.log("dotlink",link),"movie"===type){const dotlinkText=(yield axios(`${link}`,{headers:headers})).data,vlink=dotlinkText.match(/{const href=$(el).attr("href")||"";return href.includes("hubcloud")||href.includes("gdflix")||href.includes("filebee")||href.includes("fastdl")}).first().attr("href");directLink&&(link=directLink)}if(link.includes("fastdl.zip"))try{const reurlMatch=(yield axios.get(link,{headers:headers})).data.match(/var reurl = "([^"]+)";/);if(reurlMatch&&reurlMatch[1]){const actualLink=reurlMatch[1].replace("https://fastdl.zip/dl.php?link=","");return streamLinks.push({server:"fastdl",link:actualLink,type:"mkv"}),streamLinks}}catch(error){console.log("fastdl error: ",error)}try{const filepressLink=cheerio.load(dotlinkText)('.btn.btn-sm.btn-outline[style="background:linear-gradient(135deg,rgb(252,185,0) 0%,rgb(0,0,0)); color: #fdf8f2;"]').parent().attr("href"),filepressID=null==filepressLink?void 0:filepressLink.split("/").pop(),filepressBaseUrl=null==filepressLink?void 0:filepressLink.split("/").slice(0,-2).join("/"),filepressTokenRes=yield axios.post(filepressBaseUrl+"/api/file/downlaod/",{id:filepressID,method:"indexDownlaod",captchaValue:null},{headers:{"Content-Type":"application/json",Referer:filepressBaseUrl}});if(null==(_a=filepressTokenRes.data)?void 0:_a.status){const filepressToken=null==(_b=filepressTokenRes.data)?void 0:_b.data,filepressStreamLink=yield axios.post(filepressBaseUrl+"/api/file/downlaod2/",{id:filepressToken,method:"indexDownlaod",captchaValue:null},{headers:{"Content-Type":"application/json",Referer:filepressBaseUrl}});streamLinks.push({server:"filepress",link:null==(_d=null==(_c=filepressStreamLink.data)?void 0:_c.data)?void 0:_d[0],type:"mkv"})}}catch(error){console.log("filepress error: ")}}return yield hubcloudExtractor(link,signal,axios,cheerio,commonHeaders)}catch(error){return console.log("getStream error: ",error),error.message.includes("Aborted"),[]}})}__name(getStream,"getStream"),exports.getStream=getStream; \ No newline at end of file diff --git a/dist/skyMovieHD/stream.js b/dist/skyMovieHD/stream.js index e536e42..8b4fac6 100644 --- a/dist/skyMovieHD/stream.js +++ b/dist/skyMovieHD/stream.js @@ -1 +1 @@ -"use strict";var __defProp=Object.defineProperty,__getOwnPropDesc=Object.getOwnPropertyDescriptor,__getOwnPropNames=Object.getOwnPropertyNames,__hasOwnProp=Object.prototype.hasOwnProperty,__name=(target,value)=>__defProp(target,"name",{value:value,configurable:!0}),__export=(target,all)=>{for(var name in all)__defProp(target,name,{get:all[name],enumerable:!0})},__copyProps=(to,from,except,desc)=>{if(from&&"object"==typeof from||"function"==typeof from)for(let key of __getOwnPropNames(from))__hasOwnProp.call(to,key)||key===except||__defProp(to,key,{get:()=>from[key],enumerable:!(desc=__getOwnPropDesc(from,key))||desc.enumerable});return to},__toCommonJS=mod=>__copyProps(__defProp({},"__esModule",{value:!0}),mod),__async=(__this,__arguments,generator)=>new Promise((resolve,reject)=>{var fulfilled=value=>{try{step(generator.next(value))}catch(e){reject(e)}},rejected=value=>{try{step(generator.throw(value))}catch(e){reject(e)}},step=x=>x.done?resolve(x.value):Promise.resolve(x.value).then(fulfilled,rejected);step((generator=generator.apply(__this,__arguments)).next())}),stream_exports={};__export(stream_exports,{getStream:()=>getStream});var hubcloudDecode=__name(function(value){return void 0===value?"":atob(value.toString())},"hubcloudDecode");function hubcloudExtractor(link,signal,axios,cheerio,headers){return __async(this,null,function*(){var _a,_b,_c,_d,_e,_f;try{headers.Cookie="ext_name=ojplmecpdpgccookcobabopnaifgidhf; xla=s4t; cf_clearance=woQrFGXtLfmEMBEiGUsVHrUBMT8s3cmguIzmMjmvpkg-1770053679-1.2.1.1-xBrQdciOJsweUF6F2T_OtH6jmyanN_TduQ0yslc_XqjU6RcHSxI7.YOKv6ry7oYo64868HYoULnVyww536H2eVI3R2e4wKzsky6abjPdfQPxqpUaXjxfJ02o6jl3_Vkwr4uiaU7Wy596Vdst3y78HXvVmKdIohhtPvp.vZ9_L7wvWdce0GRixjh_6JiqWmWMws46hwEt3hboaS1e1e4EoWCvj5b0M_jVwvSxBOAW5emFzvT3QrnRh4nyYmKDERnY",console.log("hubcloudExtractor",link),console.log("headers",headers);const baseUrl=link.split("/").slice(0,3).join("/"),streamLinks=[],vLinkText=(yield axios(`${link}`,{headers:headers,signal:signal})).data,$vLink=cheerio.load(vLinkText),vLinkRedirect=vLinkText.match(/var\s+url\s*=\s*'([^']+)';/)||[];let vcloudLink=hubcloudDecode(null==(_b=null==(_a=vLinkRedirect[1])?void 0:_a.split("r="))?void 0:_b[1])||vLinkRedirect[1]||$vLink(".fa-file-download.fa-lg").parent().attr("href")||link;console.log("vcloudLink",vcloudLink),(null==vcloudLink?void 0:vcloudLink.startsWith("/"))&&(vcloudLink=`${baseUrl}${vcloudLink}`,console.log("New vcloudLink",vcloudLink));const vcloudRes=yield fetch(vcloudLink,{headers:headers,signal:signal,redirect:"follow"}),$=cheerio.load(yield vcloudRes.text()),linkClass=$(".btn-success.btn-lg.h6,.btn-danger,.btn-secondary");for(const element of linkClass){let link2=$(element).attr("href")||"";switch(!0){case null==link2?void 0:link2.includes("pixeld"):if(!(null==link2?void 0:link2.includes("api"))){const token=link2.split("/").pop(),baseUrl2=link2.split("/").slice(0,-2).join("/");link2=`${baseUrl2}/api/file/${token}`}streamLinks.push({server:"Pixeldrain",link:link2,type:"mkv"});break;case(null==link2?void 0:link2.includes(".dev"))&&!(null==link2?void 0:link2.includes("/?id=")):streamLinks.push({server:"Cf Worker",link:link2,type:"mkv"});break;case(null==link2?void 0:link2.includes("hubcloud"))||(null==link2?void 0:link2.includes("/?id=")):try{const newLinkRes=yield fetch(link2,{method:"HEAD",headers:headers,signal:signal,redirect:"manual"});let newLink=link2;if(newLink=newLinkRes.status>=300&&newLinkRes.status<400?newLinkRes.headers.get("location")||link2:newLinkRes.url&&newLinkRes.url!==link2?newLinkRes.url:newLinkRes.headers.get("location")||link2,newLink.includes("googleusercontent"))newLink=newLink.split("?link=")[1];else{const newLinkRes2=yield fetch(newLink,{method:"HEAD",headers:headers,signal:signal,redirect:"manual"});newLink=newLinkRes2.status>=300&&newLinkRes2.status<400?(null==(_c=newLinkRes2.headers.get("location"))?void 0:_c.split("?link=")[1])||newLink:newLinkRes2.url&&newLinkRes2.url!==newLink?newLinkRes2.url.split("?link=")[1]||newLinkRes2.url:(null==(_d=newLinkRes2.headers.get("location"))?void 0:_d.split("?link=")[1])||newLink}streamLinks.push({server:"hubcloud",link:newLink,type:"mkv"})}catch(error){console.log("hubcloudExtractor error in hubcloud link: ",error)}break;case null==link2?void 0:link2.includes("cloudflarestorage"):streamLinks.push({server:"CfStorage",link:link2,type:"mkv"});break;case(null==link2?void 0:link2.includes("fastdl"))||(null==link2?void 0:link2.includes("fsl.")):streamLinks.push({server:"FastDl",link:link2,type:"mkv"});break;case link2.includes("hubcdn")&&!link2.includes("/?id="):streamLinks.push({server:"HubCdn",link:link2,type:"mkv"});break;default:if((null==link2?void 0:link2.includes(".mkv"))||(null==link2?void 0:link2.includes("?token="))){const serverName=(null==(_f=null==(_e=link2.match(/^(?:https?:\/\/)?(?:www\.)?([^\/]+)/i))?void 0:_e[1])?void 0:_f.replace(/\./g," "))||"Unknown";streamLinks.push({server:serverName,link:link2,type:"mkv"})}}}return console.log("streamLinks",streamLinks),streamLinks}catch(error){return console.log("hubcloudExtractor error: ",(null==error?void 0:error.message)||error),[]}})}function getStream(_0){return __async(this,arguments,function*({link:link,type:type,signal:signal,providerContext:providerContext}){const{axios:axios,cheerio:cheerio,commonHeaders:commonHeaders}=providerContext;try{return console.log("dotlink",link),yield hubcloudExtractor(link,signal,axios,cheerio,commonHeaders)}catch(error){return console.log("getStream error: ",error),error.message.includes("Aborted"),[]}})}__name(hubcloudExtractor,"hubcloudExtractor"),__name(getStream,"getStream"),exports.getStream=getStream; \ No newline at end of file +"use strict";var __defProp=Object.defineProperty,__getOwnPropDesc=Object.getOwnPropertyDescriptor,__getOwnPropNames=Object.getOwnPropertyNames,__hasOwnProp=Object.prototype.hasOwnProperty,__name=(target,value)=>__defProp(target,"name",{value:value,configurable:!0}),__export=(target,all)=>{for(var name in all)__defProp(target,name,{get:all[name],enumerable:!0})},__copyProps=(to,from,except,desc)=>{if(from&&"object"==typeof from||"function"==typeof from)for(let key of __getOwnPropNames(from))__hasOwnProp.call(to,key)||key===except||__defProp(to,key,{get:()=>from[key],enumerable:!(desc=__getOwnPropDesc(from,key))||desc.enumerable});return to},__toCommonJS=mod=>__copyProps(__defProp({},"__esModule",{value:!0}),mod),__async=(__this,__arguments,generator)=>new Promise((resolve,reject)=>{var fulfilled=value=>{try{step(generator.next(value))}catch(e){reject(e)}},rejected=value=>{try{step(generator.throw(value))}catch(e){reject(e)}},step=x=>x.done?resolve(x.value):Promise.resolve(x.value).then(fulfilled,rejected);step((generator=generator.apply(__this,__arguments)).next())}),stream_exports={};__export(stream_exports,{getStream:()=>getStream});var hubcloudDecode=__name(function(value){return void 0===value?"":atob(value.toString())},"hubcloudDecode"),getPixelDrainUrl=__name(html=>{const match=html.match(/var\s+pxl\s*=\s*['"]([^'"]+)['"];?/i);return(null==match?void 0:match[1])||""},"getPixelDrainUrl"),getRedirectedPixelDrainUrl=__name((...htmlSources)=>{for(const html of htmlSources){if(!html)continue;const redirectedUrl=getPixelDrainUrl(html);if(redirectedUrl)return redirectedUrl}return""},"getRedirectedPixelDrainUrl");function hubcloudExtractor(link,signal,axios,cheerio,headers){return __async(this,null,function*(){var _a,_b,_c,_d,_e,_f,_g;try{headers.Cookie="ext_name=ojplmecpdpgccookcobabopnaifgidhf; xla=s4t; cf_clearance=woQrFGXtLfmEMBEiGUsVHrUBMT8s3cmguIzmMjmvpkg-1770053679-1.2.1.1-xBrQdciOJsweUF6F2T_OtH6jmyanN_TduQ0yslc_XqjU6RcHSxI7.YOKv6ry7oYo64868HYoULnVyww536H2eVI3R2e4wKzsky6abjPdfQPxqpUaXjxfJ02o6jl3_Vkwr4uiaU7Wy596Vdst3y78HXvVmKdIohhtPvp.vZ9_L7wvWdce0GRixjh_6JiqWmWMws46hwEt3hboaS1e1e4EoWCvj5b0M_jVwvSxBOAW5emFzvT3QrnRh4nyYmKDERnY",console.log("hubcloudExtractor",link);const baseUrl=link.split("/").slice(0,3).join("/"),streamLinks=[],vLinkText=(yield axios(`${link}`,{headers:headers,signal:signal})).data,$vLink=cheerio.load(vLinkText),vLinkRedirect=vLinkText.match(/var\s+url\s*=\s*'([^']+)';/)||[];let vcloudLink=hubcloudDecode(null==(_b=null==(_a=vLinkRedirect[1])?void 0:_a.split("r="))?void 0:_b[1])||vLinkRedirect[1]||$vLink(".fa-file-download.fa-lg").parent().attr("href")||link;console.log("vcloudLink",vcloudLink),(null==vcloudLink?void 0:vcloudLink.startsWith("/"))&&(vcloudLink=`${baseUrl}${vcloudLink}`,console.log("New vcloudLink",vcloudLink));const vcloudRes=yield fetch(vcloudLink,{headers:headers,signal:signal,redirect:"follow"}),vcloudText=yield vcloudRes.text(),$=cheerio.load(vcloudText),linkClass=$(".btn-success.btn-lg.h6,.btn-danger,.btn-secondary");for(const element of linkClass){let link2=$(element).attr("href")||"";switch(!0){case null==link2?void 0:link2.includes("pixeld"):if(console.log("Pixeldrain link found:",link2),!(null==link2?void 0:link2.includes("api"))){const redirectedPixelDrainUrl=getRedirectedPixelDrainUrl(vLinkText,vcloudText);redirectedPixelDrainUrl&&(console.log("Special case for token negn6f",redirectedPixelDrainUrl),link2=redirectedPixelDrainUrl);const token=null==(_c=link2.split("/").pop())?void 0:_c.split("?")[0],baseUrl2=link2.split("/").slice(0,-2).join("/");link2=`${baseUrl2}/api/file/${token}`}streamLinks.push({server:"Pixeldrain",link:link2,type:"mkv"});break;case(null==link2?void 0:link2.includes(".dev"))&&!(null==link2?void 0:link2.includes("/?id=")):streamLinks.push({server:"Cf Worker",link:link2,type:"mkv"});break;case(null==link2?void 0:link2.includes("hubcloud"))||(null==link2?void 0:link2.includes("/?id=")):try{const newLinkRes=yield fetch(link2,{method:"HEAD",headers:headers,signal:signal,redirect:"manual"});let newLink=link2;if(newLink=newLinkRes.status>=300&&newLinkRes.status<400?newLinkRes.headers.get("location")||link2:newLinkRes.url&&newLinkRes.url!==link2?newLinkRes.url:newLinkRes.headers.get("location")||link2,newLink.includes("googleusercontent"))newLink=newLink.split("?link=")[1];else{const newLinkRes2=yield fetch(newLink,{method:"HEAD",headers:headers,signal:signal,redirect:"manual"});newLink=newLinkRes2.status>=300&&newLinkRes2.status<400?(null==(_d=newLinkRes2.headers.get("location"))?void 0:_d.split("?link=")[1])||newLink:newLinkRes2.url&&newLinkRes2.url!==newLink?newLinkRes2.url.split("?link=")[1]||newLinkRes2.url:(null==(_e=newLinkRes2.headers.get("location"))?void 0:_e.split("?link=")[1])||newLink}streamLinks.push({server:"hubcloud",link:newLink,type:"mkv"})}catch(error){console.log("hubcloudExtractor error in hubcloud link: ",error)}break;case null==link2?void 0:link2.includes("cloudflarestorage"):streamLinks.push({server:"CfStorage",link:link2,type:"mkv"});break;case(null==link2?void 0:link2.includes("fastdl"))||(null==link2?void 0:link2.includes("fsl.")):streamLinks.push({server:"FastDl",link:link2,type:"mkv"});break;case link2.includes("hubcdn")&&!link2.includes("/?id="):streamLinks.push({server:"HubCdn",link:link2,type:"mkv"});break;default:if((null==link2?void 0:link2.includes(".mkv"))||(null==link2?void 0:link2.includes("?token="))){const serverName=(null==(_g=null==(_f=link2.match(/^(?:https?:\/\/)?(?:www\.)?([^\/]+)/i))?void 0:_f[1])?void 0:_g.replace(/\./g," "))||"Unknown";streamLinks.push({server:serverName,link:link2,type:"mkv"})}}}return console.log("streamLinks",streamLinks),streamLinks}catch(error){return console.log("hubcloudExtractor error: ",(null==error?void 0:error.message)||error),[]}})}function getStream(_0){return __async(this,arguments,function*({link:link,type:type,signal:signal,providerContext:providerContext}){const{axios:axios,cheerio:cheerio,commonHeaders:commonHeaders}=providerContext;try{return console.log("dotlink",link),yield hubcloudExtractor(link,signal,axios,cheerio,commonHeaders)}catch(error){return console.log("getStream error: ",error),error.message.includes("Aborted"),[]}})}__name(hubcloudExtractor,"hubcloudExtractor"),__name(getStream,"getStream"),exports.getStream=getStream; \ No newline at end of file diff --git a/dist/topmovies/posts.js b/dist/topmovies/posts.js index 3a05b7b..88be7e9 100644 --- a/dist/topmovies/posts.js +++ b/dist/topmovies/posts.js @@ -1 +1 @@ -"use strict";var __defProp=Object.defineProperty,__getOwnPropDesc=Object.getOwnPropertyDescriptor,__getOwnPropNames=Object.getOwnPropertyNames,__hasOwnProp=Object.prototype.hasOwnProperty,__name=(target,value)=>__defProp(target,"name",{value:value,configurable:!0}),__export=(target,all)=>{for(var name in all)__defProp(target,name,{get:all[name],enumerable:!0})},__copyProps=(to,from,except,desc)=>{if(from&&"object"==typeof from||"function"==typeof from)for(let key of __getOwnPropNames(from))__hasOwnProp.call(to,key)||key===except||__defProp(to,key,{get:()=>from[key],enumerable:!(desc=__getOwnPropDesc(from,key))||desc.enumerable});return to},__toCommonJS=mod=>__copyProps(__defProp({},"__esModule",{value:!0}),mod),__async=(__this,__arguments,generator)=>new Promise((resolve,reject)=>{var fulfilled=value=>{try{step(generator.next(value))}catch(e){reject(e)}},rejected=value=>{try{step(generator.throw(value))}catch(e){reject(e)}},step=x=>x.done?resolve(x.value):Promise.resolve(x.value).then(fulfilled,rejected);step((generator=generator.apply(__this,__arguments)).next())}),posts_exports={};__export(posts_exports,{getPosts:()=>getPosts,getSearchPosts:()=>getSearchPosts});var headers={Accept:"text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7","Cache-Control":"no-store","Accept-Language":"en-US,en;q=0.9",DNT:"1","sec-ch-ua":'"Not_A Brand";v="8", "Chromium";v="120", "Microsoft Edge";v="120"',"sec-ch-ua-mobile":"?0","sec-ch-ua-platform":'"Windows"',"Sec-Fetch-Dest":"document","Sec-Fetch-Mode":"navigate",Cookie:"popads_user_id=6ba8fe60a481387a3249f05aa058822d","Sec-Fetch-Site":"none","Sec-Fetch-User":"?1","Upgrade-Insecure-Requests":"1","User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36 Edg/120.0.0.0"},getPosts=__name(function(_0){return __async(this,arguments,function*({filter:filter,page:page,signal:signal,providerContext:providerContext}){const{getBaseUrl:getBaseUrl}=providerContext;return posts(`${(yield getBaseUrl("Topmovies"))+filter}/page/${page}/`,signal,providerContext)})},"getPosts"),getSearchPosts=__name(function(_0){return __async(this,arguments,function*({searchQuery:searchQuery,page:page,signal:signal,providerContext:providerContext}){const{getBaseUrl:getBaseUrl}=providerContext;return posts(`${yield getBaseUrl("Topmovies")}/search/${searchQuery}/page/${page}/`,signal,providerContext)})},"getSearchPosts");function posts(url,signal,providerContext){return __async(this,null,function*(){try{const{axios:axios,cheerio:cheerio}=providerContext,data=(yield axios.get(url,{headers:headers,signal:signal})).data,$=cheerio.load(data),catalog=[];return $(".post-cards").find("article").map((i,element)=>{const title=$(element).find("a").attr("title"),link=$(element).find("a").attr("href"),image=$(element).find("img").attr("data-src")||$(element).find("img").attr("src")||"";title&&link&&catalog.push({title:title.replace("Download","").trim(),link:link,image:image})}),catalog}catch(err){return console.error("mod error ",err),[]}})}__name(posts,"posts"),exports.getPosts=getPosts,exports.getSearchPosts=getSearchPosts; \ No newline at end of file +"use strict";var __defProp=Object.defineProperty,__getOwnPropDesc=Object.getOwnPropertyDescriptor,__getOwnPropNames=Object.getOwnPropertyNames,__hasOwnProp=Object.prototype.hasOwnProperty,__name=(target,value)=>__defProp(target,"name",{value:value,configurable:!0}),__export=(target,all)=>{for(var name in all)__defProp(target,name,{get:all[name],enumerable:!0})},__copyProps=(to,from,except,desc)=>{if(from&&"object"==typeof from||"function"==typeof from)for(let key of __getOwnPropNames(from))__hasOwnProp.call(to,key)||key===except||__defProp(to,key,{get:()=>from[key],enumerable:!(desc=__getOwnPropDesc(from,key))||desc.enumerable});return to},__toCommonJS=mod=>__copyProps(__defProp({},"__esModule",{value:!0}),mod),__async=(__this,__arguments,generator)=>new Promise((resolve,reject)=>{var fulfilled=value=>{try{step(generator.next(value))}catch(e){reject(e)}},rejected=value=>{try{step(generator.throw(value))}catch(e){reject(e)}},step=x=>x.done?resolve(x.value):Promise.resolve(x.value).then(fulfilled,rejected);step((generator=generator.apply(__this,__arguments)).next())}),posts_exports={};__export(posts_exports,{getPosts:()=>getPosts,getSearchPosts:()=>getSearchPosts});var headers={Accept:"text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7","Cache-Control":"no-store","Accept-Language":"en-US,en;q=0.9",DNT:"1","sec-ch-ua":'"Not_A Brand";v="8", "Chromium";v="120", "Microsoft Edge";v="120"',"sec-ch-ua-mobile":"?0","sec-ch-ua-platform":'"Windows"',"Sec-Fetch-Dest":"document","Sec-Fetch-Mode":"navigate","Sec-Fetch-Site":"none","Sec-Fetch-User":"?1","Upgrade-Insecure-Requests":"1","User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/148.0.0.0 Safari/537.36 Edg/148.0.0.0"},getPosts=__name(function(_0){return __async(this,arguments,function*({filter:filter,page:page,signal:signal,providerContext:providerContext}){const{getBaseUrl:getBaseUrl}=providerContext;return posts(`${(yield getBaseUrl("Topmovies"))+filter}/page/${page}/`,signal,providerContext)})},"getPosts"),getSearchPosts=__name(function(_0){return __async(this,arguments,function*({searchQuery:searchQuery,page:page,signal:signal,providerContext:providerContext}){const{getBaseUrl:getBaseUrl}=providerContext;return posts(`${yield getBaseUrl("Topmovies")}/search/${searchQuery}/page/${page}/`,signal,providerContext)})},"getSearchPosts");function posts(url,signal,providerContext){return __async(this,null,function*(){try{const{axios:axios,cheerio:cheerio}=providerContext,data=(yield axios.get(url,{headers:headers,signal:signal})).data,$=cheerio.load(data),catalog=[];return $(".post-cards").find("article").map((i,element)=>{const title=$(element).find("a").attr("title"),link=$(element).find("a").attr("href"),image=$(element).find("img").attr("data-src")||$(element).find("img").attr("src")||"";title&&link&&catalog.push({title:title.replace("Download","").trim(),link:link,image:image})}),catalog}catch(err){return console.error("mod error ",err),[]}})}__name(posts,"posts"),exports.getPosts=getPosts,exports.getSearchPosts=getSearchPosts; \ No newline at end of file diff --git a/dist/vega/stream.js b/dist/vega/stream.js index 82e1fc0..c28bfab 100644 --- a/dist/vega/stream.js +++ b/dist/vega/stream.js @@ -1 +1 @@ -"use strict";var __defProp=Object.defineProperty,__getOwnPropDesc=Object.getOwnPropertyDescriptor,__getOwnPropNames=Object.getOwnPropertyNames,__hasOwnProp=Object.prototype.hasOwnProperty,__name=(target,value)=>__defProp(target,"name",{value:value,configurable:!0}),__export=(target,all)=>{for(var name in all)__defProp(target,name,{get:all[name],enumerable:!0})},__copyProps=(to,from,except,desc)=>{if(from&&"object"==typeof from||"function"==typeof from)for(let key of __getOwnPropNames(from))__hasOwnProp.call(to,key)||key===except||__defProp(to,key,{get:()=>from[key],enumerable:!(desc=__getOwnPropDesc(from,key))||desc.enumerable});return to},__toCommonJS=mod=>__copyProps(__defProp({},"__esModule",{value:!0}),mod),__async=(__this,__arguments,generator)=>new Promise((resolve,reject)=>{var fulfilled=value=>{try{step(generator.next(value))}catch(e){reject(e)}},rejected=value=>{try{step(generator.throw(value))}catch(e){reject(e)}},step=x=>x.done?resolve(x.value):Promise.resolve(x.value).then(fulfilled,rejected);step((generator=generator.apply(__this,__arguments)).next())}),stream_exports={};__export(stream_exports,{getStream:()=>getStream});var hubcloudDecode=__name(function(value){return void 0===value?"":atob(value.toString())},"hubcloudDecode");function hubcloudExtractor(link,signal,axios,cheerio,headers2){return __async(this,null,function*(){var _a,_b,_c,_d,_e,_f;try{headers2.Cookie="ext_name=ojplmecpdpgccookcobabopnaifgidhf; xla=s4t; cf_clearance=woQrFGXtLfmEMBEiGUsVHrUBMT8s3cmguIzmMjmvpkg-1770053679-1.2.1.1-xBrQdciOJsweUF6F2T_OtH6jmyanN_TduQ0yslc_XqjU6RcHSxI7.YOKv6ry7oYo64868HYoULnVyww536H2eVI3R2e4wKzsky6abjPdfQPxqpUaXjxfJ02o6jl3_Vkwr4uiaU7Wy596Vdst3y78HXvVmKdIohhtPvp.vZ9_L7wvWdce0GRixjh_6JiqWmWMws46hwEt3hboaS1e1e4EoWCvj5b0M_jVwvSxBOAW5emFzvT3QrnRh4nyYmKDERnY",console.log("hubcloudExtractor",link),console.log("headers",headers2);const baseUrl=link.split("/").slice(0,3).join("/"),streamLinks=[],vLinkText=(yield axios(`${link}`,{headers:headers2,signal:signal})).data,$vLink=cheerio.load(vLinkText),vLinkRedirect=vLinkText.match(/var\s+url\s*=\s*'([^']+)';/)||[];let vcloudLink=hubcloudDecode(null==(_b=null==(_a=vLinkRedirect[1])?void 0:_a.split("r="))?void 0:_b[1])||vLinkRedirect[1]||$vLink(".fa-file-download.fa-lg").parent().attr("href")||link;console.log("vcloudLink",vcloudLink),(null==vcloudLink?void 0:vcloudLink.startsWith("/"))&&(vcloudLink=`${baseUrl}${vcloudLink}`,console.log("New vcloudLink",vcloudLink));const vcloudRes=yield fetch(vcloudLink,{headers:headers2,signal:signal,redirect:"follow"}),$=cheerio.load(yield vcloudRes.text()),linkClass=$(".btn-success.btn-lg.h6,.btn-danger,.btn-secondary");for(const element of linkClass){let link2=$(element).attr("href")||"";switch(!0){case null==link2?void 0:link2.includes("pixeld"):if(!(null==link2?void 0:link2.includes("api"))){const token=link2.split("/").pop(),baseUrl2=link2.split("/").slice(0,-2).join("/");link2=`${baseUrl2}/api/file/${token}`}streamLinks.push({server:"Pixeldrain",link:link2,type:"mkv"});break;case(null==link2?void 0:link2.includes(".dev"))&&!(null==link2?void 0:link2.includes("/?id=")):streamLinks.push({server:"Cf Worker",link:link2,type:"mkv"});break;case(null==link2?void 0:link2.includes("hubcloud"))||(null==link2?void 0:link2.includes("/?id=")):try{const newLinkRes=yield fetch(link2,{method:"HEAD",headers:headers2,signal:signal,redirect:"manual"});let newLink=link2;if(newLink=newLinkRes.status>=300&&newLinkRes.status<400?newLinkRes.headers.get("location")||link2:newLinkRes.url&&newLinkRes.url!==link2?newLinkRes.url:newLinkRes.headers.get("location")||link2,newLink.includes("googleusercontent"))newLink=newLink.split("?link=")[1];else{const newLinkRes2=yield fetch(newLink,{method:"HEAD",headers:headers2,signal:signal,redirect:"manual"});newLink=newLinkRes2.status>=300&&newLinkRes2.status<400?(null==(_c=newLinkRes2.headers.get("location"))?void 0:_c.split("?link=")[1])||newLink:newLinkRes2.url&&newLinkRes2.url!==newLink?newLinkRes2.url.split("?link=")[1]||newLinkRes2.url:(null==(_d=newLinkRes2.headers.get("location"))?void 0:_d.split("?link=")[1])||newLink}streamLinks.push({server:"hubcloud",link:newLink,type:"mkv"})}catch(error){console.log("hubcloudExtractor error in hubcloud link: ",error)}break;case null==link2?void 0:link2.includes("cloudflarestorage"):streamLinks.push({server:"CfStorage",link:link2,type:"mkv"});break;case(null==link2?void 0:link2.includes("fastdl"))||(null==link2?void 0:link2.includes("fsl.")):streamLinks.push({server:"FastDl",link:link2,type:"mkv"});break;case link2.includes("hubcdn")&&!link2.includes("/?id="):streamLinks.push({server:"HubCdn",link:link2,type:"mkv"});break;default:if((null==link2?void 0:link2.includes(".mkv"))||(null==link2?void 0:link2.includes("?token="))){const serverName=(null==(_f=null==(_e=link2.match(/^(?:https?:\/\/)?(?:www\.)?([^\/]+)/i))?void 0:_e[1])?void 0:_f.replace(/\./g," "))||"Unknown";streamLinks.push({server:serverName,link:link2,type:"mkv"})}}}return console.log("streamLinks",streamLinks),streamLinks}catch(error){return console.log("hubcloudExtractor error: ",(null==error?void 0:error.message)||error),[]}})}__name(hubcloudExtractor,"hubcloudExtractor");var headers={Accept:"text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7","Cache-Control":"no-store","Accept-Language":"en-US,en;q=0.9",DNT:"1","sec-ch-ua":'"Not_A Brand";v="8", "Chromium";v="120", "Microsoft Edge";v="120"',"sec-ch-ua-mobile":"?0","sec-ch-ua-platform":'"Windows"',"Sec-Fetch-Dest":"document","Sec-Fetch-Mode":"navigate","Sec-Fetch-Site":"none","Sec-Fetch-User":"?1",Cookie:"ext_name=ojplmecpdpgccookcobabopnaifgidhf; cf_clearance=6yZYfXQxBgjaD1eacR5zZCz7njssbxjtSZZCElTOGk0-1764836255-1.2.1.1-bzHvDcDRLp6AAYo7qvGVzJ6Gk6zaqAepuGiGhAWCGYL.ZDpw5yI4TkUIXDgAnEhGCZ9J5X2_OagzgeMHZrd8rzeyAFQXj0dmYMErcfII7_Rhq5kZ4kAtS0tl9PtaNKKd2m4taIufySXCCstl3iNLMODTjbsW_KZi8U8DauOdGSAhBd1DCGxvLlAOM.snfkhb0yQiVJcLW8Bv9IeKQac0ar_TKkV6QexqNZYiyRXnE7E; xla=s4t","Upgrade-Insecure-Requests":"1","user-agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/142.0.0.0 Safari/537.36 Edg/142.0.0.0"};function getStream(_0){return __async(this,arguments,function*({link:link,type:type,signal:signal,providerContext:providerContext}){var _a,_b,_c,_d;const{axios:axios,cheerio:cheerio,commonHeaders:commonHeaders}=providerContext;try{const streamLinks=[];if(console.log("dotlink",link),"movie"===type){const dotlinkText=(yield axios(`${link}`,{headers:headers})).data;link=(dotlinkText.match(/__defProp(target,"name",{value:value,configurable:!0}),__export=(target,all)=>{for(var name in all)__defProp(target,name,{get:all[name],enumerable:!0})},__copyProps=(to,from,except,desc)=>{if(from&&"object"==typeof from||"function"==typeof from)for(let key of __getOwnPropNames(from))__hasOwnProp.call(to,key)||key===except||__defProp(to,key,{get:()=>from[key],enumerable:!(desc=__getOwnPropDesc(from,key))||desc.enumerable});return to},__toCommonJS=mod=>__copyProps(__defProp({},"__esModule",{value:!0}),mod),__async=(__this,__arguments,generator)=>new Promise((resolve,reject)=>{var fulfilled=value=>{try{step(generator.next(value))}catch(e){reject(e)}},rejected=value=>{try{step(generator.throw(value))}catch(e){reject(e)}},step=x=>x.done?resolve(x.value):Promise.resolve(x.value).then(fulfilled,rejected);step((generator=generator.apply(__this,__arguments)).next())}),stream_exports={};__export(stream_exports,{getStream:()=>getStream});var hubcloudDecode=__name(function(value){return void 0===value?"":atob(value.toString())},"hubcloudDecode"),getPixelDrainUrl=__name(html=>{const match=html.match(/var\s+pxl\s*=\s*['"]([^'"]+)['"];?/i);return(null==match?void 0:match[1])||""},"getPixelDrainUrl"),getRedirectedPixelDrainUrl=__name((...htmlSources)=>{for(const html of htmlSources){if(!html)continue;const redirectedUrl=getPixelDrainUrl(html);if(redirectedUrl)return redirectedUrl}return""},"getRedirectedPixelDrainUrl");function hubcloudExtractor(link,signal,axios,cheerio,headers2){return __async(this,null,function*(){var _a,_b,_c,_d,_e,_f,_g;try{headers2.Cookie="ext_name=ojplmecpdpgccookcobabopnaifgidhf; xla=s4t; cf_clearance=woQrFGXtLfmEMBEiGUsVHrUBMT8s3cmguIzmMjmvpkg-1770053679-1.2.1.1-xBrQdciOJsweUF6F2T_OtH6jmyanN_TduQ0yslc_XqjU6RcHSxI7.YOKv6ry7oYo64868HYoULnVyww536H2eVI3R2e4wKzsky6abjPdfQPxqpUaXjxfJ02o6jl3_Vkwr4uiaU7Wy596Vdst3y78HXvVmKdIohhtPvp.vZ9_L7wvWdce0GRixjh_6JiqWmWMws46hwEt3hboaS1e1e4EoWCvj5b0M_jVwvSxBOAW5emFzvT3QrnRh4nyYmKDERnY",console.log("hubcloudExtractor",link);const baseUrl=link.split("/").slice(0,3).join("/"),streamLinks=[],vLinkText=(yield axios(`${link}`,{headers:headers2,signal:signal})).data,$vLink=cheerio.load(vLinkText),vLinkRedirect=vLinkText.match(/var\s+url\s*=\s*'([^']+)';/)||[];let vcloudLink=hubcloudDecode(null==(_b=null==(_a=vLinkRedirect[1])?void 0:_a.split("r="))?void 0:_b[1])||vLinkRedirect[1]||$vLink(".fa-file-download.fa-lg").parent().attr("href")||link;console.log("vcloudLink",vcloudLink),(null==vcloudLink?void 0:vcloudLink.startsWith("/"))&&(vcloudLink=`${baseUrl}${vcloudLink}`,console.log("New vcloudLink",vcloudLink));const vcloudRes=yield fetch(vcloudLink,{headers:headers2,signal:signal,redirect:"follow"}),vcloudText=yield vcloudRes.text(),$=cheerio.load(vcloudText),linkClass=$(".btn-success.btn-lg.h6,.btn-danger,.btn-secondary");for(const element of linkClass){let link2=$(element).attr("href")||"";switch(!0){case null==link2?void 0:link2.includes("pixeld"):if(console.log("Pixeldrain link found:",link2),!(null==link2?void 0:link2.includes("api"))){const redirectedPixelDrainUrl=getRedirectedPixelDrainUrl(vLinkText,vcloudText);redirectedPixelDrainUrl&&(console.log("Special case for token negn6f",redirectedPixelDrainUrl),link2=redirectedPixelDrainUrl);const token=null==(_c=link2.split("/").pop())?void 0:_c.split("?")[0],baseUrl2=link2.split("/").slice(0,-2).join("/");link2=`${baseUrl2}/api/file/${token}`}streamLinks.push({server:"Pixeldrain",link:link2,type:"mkv"});break;case(null==link2?void 0:link2.includes(".dev"))&&!(null==link2?void 0:link2.includes("/?id=")):streamLinks.push({server:"Cf Worker",link:link2,type:"mkv"});break;case(null==link2?void 0:link2.includes("hubcloud"))||(null==link2?void 0:link2.includes("/?id=")):try{const newLinkRes=yield fetch(link2,{method:"HEAD",headers:headers2,signal:signal,redirect:"manual"});let newLink=link2;if(newLink=newLinkRes.status>=300&&newLinkRes.status<400?newLinkRes.headers.get("location")||link2:newLinkRes.url&&newLinkRes.url!==link2?newLinkRes.url:newLinkRes.headers.get("location")||link2,newLink.includes("googleusercontent"))newLink=newLink.split("?link=")[1];else{const newLinkRes2=yield fetch(newLink,{method:"HEAD",headers:headers2,signal:signal,redirect:"manual"});newLink=newLinkRes2.status>=300&&newLinkRes2.status<400?(null==(_d=newLinkRes2.headers.get("location"))?void 0:_d.split("?link=")[1])||newLink:newLinkRes2.url&&newLinkRes2.url!==newLink?newLinkRes2.url.split("?link=")[1]||newLinkRes2.url:(null==(_e=newLinkRes2.headers.get("location"))?void 0:_e.split("?link=")[1])||newLink}streamLinks.push({server:"hubcloud",link:newLink,type:"mkv"})}catch(error){console.log("hubcloudExtractor error in hubcloud link: ",error)}break;case null==link2?void 0:link2.includes("cloudflarestorage"):streamLinks.push({server:"CfStorage",link:link2,type:"mkv"});break;case(null==link2?void 0:link2.includes("fastdl"))||(null==link2?void 0:link2.includes("fsl.")):streamLinks.push({server:"FastDl",link:link2,type:"mkv"});break;case link2.includes("hubcdn")&&!link2.includes("/?id="):streamLinks.push({server:"HubCdn",link:link2,type:"mkv"});break;default:if((null==link2?void 0:link2.includes(".mkv"))||(null==link2?void 0:link2.includes("?token="))){const serverName=(null==(_g=null==(_f=link2.match(/^(?:https?:\/\/)?(?:www\.)?([^\/]+)/i))?void 0:_f[1])?void 0:_g.replace(/\./g," "))||"Unknown";streamLinks.push({server:serverName,link:link2,type:"mkv"})}}}return console.log("streamLinks",streamLinks),streamLinks}catch(error){return console.log("hubcloudExtractor error: ",(null==error?void 0:error.message)||error),[]}})}__name(hubcloudExtractor,"hubcloudExtractor");var headers={Accept:"text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7","Cache-Control":"no-store","Accept-Language":"en-US,en;q=0.9",DNT:"1","sec-ch-ua":'"Not_A Brand";v="8", "Chromium";v="120", "Microsoft Edge";v="120"',"sec-ch-ua-mobile":"?0","sec-ch-ua-platform":'"Windows"',"Sec-Fetch-Dest":"document","Sec-Fetch-Mode":"navigate","Sec-Fetch-Site":"none","Sec-Fetch-User":"?1",Cookie:"ext_name=ojplmecpdpgccookcobabopnaifgidhf; cf_clearance=6yZYfXQxBgjaD1eacR5zZCz7njssbxjtSZZCElTOGk0-1764836255-1.2.1.1-bzHvDcDRLp6AAYo7qvGVzJ6Gk6zaqAepuGiGhAWCGYL.ZDpw5yI4TkUIXDgAnEhGCZ9J5X2_OagzgeMHZrd8rzeyAFQXj0dmYMErcfII7_Rhq5kZ4kAtS0tl9PtaNKKd2m4taIufySXCCstl3iNLMODTjbsW_KZi8U8DauOdGSAhBd1DCGxvLlAOM.snfkhb0yQiVJcLW8Bv9IeKQac0ar_TKkV6QexqNZYiyRXnE7E; xla=s4t","Upgrade-Insecure-Requests":"1","user-agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/142.0.0.0 Safari/537.36 Edg/142.0.0.0"};function getStream(_0){return __async(this,arguments,function*({link:link,type:type,signal:signal,providerContext:providerContext}){var _a,_b,_c,_d;const{axios:axios,cheerio:cheerio,commonHeaders:commonHeaders}=providerContext;try{const streamLinks=[];if(console.log("dotlink",link),"movie"===type){const dotlinkText=(yield axios(`${link}`,{headers:headers})).data;link=(dotlinkText.match(/__defProp(target,"name",{value:value,configurable:!0}),__export=(target,all)=>{for(var name in all)__defProp(target,name,{get:all[name],enumerable:!0})},__copyProps=(to,from,except,desc)=>{if(from&&"object"==typeof from||"function"==typeof from)for(let key of __getOwnPropNames(from))__hasOwnProp.call(to,key)||key===except||__defProp(to,key,{get:()=>from[key],enumerable:!(desc=__getOwnPropDesc(from,key))||desc.enumerable});return to},__toCommonJS=mod=>__copyProps(__defProp({},"__esModule",{value:!0}),mod),__async=(__this,__arguments,generator)=>new Promise((resolve,reject)=>{var fulfilled=value=>{try{step(generator.next(value))}catch(e){reject(e)}},rejected=value=>{try{step(generator.throw(value))}catch(e){reject(e)}},step=x=>x.done?resolve(x.value):Promise.resolve(x.value).then(fulfilled,rejected);step((generator=generator.apply(__this,__arguments)).next())}),stream_exports={};__export(stream_exports,{getStream:()=>getStream});var hubcloudDecode=__name(function(value){return void 0===value?"":atob(value.toString())},"hubcloudDecode");function hubcloudExtractor(link,signal,axios,cheerio,headers2){return __async(this,null,function*(){var _a,_b,_c,_d,_e,_f;try{headers2.Cookie="ext_name=ojplmecpdpgccookcobabopnaifgidhf; xla=s4t; cf_clearance=woQrFGXtLfmEMBEiGUsVHrUBMT8s3cmguIzmMjmvpkg-1770053679-1.2.1.1-xBrQdciOJsweUF6F2T_OtH6jmyanN_TduQ0yslc_XqjU6RcHSxI7.YOKv6ry7oYo64868HYoULnVyww536H2eVI3R2e4wKzsky6abjPdfQPxqpUaXjxfJ02o6jl3_Vkwr4uiaU7Wy596Vdst3y78HXvVmKdIohhtPvp.vZ9_L7wvWdce0GRixjh_6JiqWmWMws46hwEt3hboaS1e1e4EoWCvj5b0M_jVwvSxBOAW5emFzvT3QrnRh4nyYmKDERnY",console.log("hubcloudExtractor",link),console.log("headers",headers2);const baseUrl=link.split("/").slice(0,3).join("/"),streamLinks=[],vLinkText=(yield axios(`${link}`,{headers:headers2,signal:signal})).data,$vLink=cheerio.load(vLinkText),vLinkRedirect=vLinkText.match(/var\s+url\s*=\s*'([^']+)';/)||[];let vcloudLink=hubcloudDecode(null==(_b=null==(_a=vLinkRedirect[1])?void 0:_a.split("r="))?void 0:_b[1])||vLinkRedirect[1]||$vLink(".fa-file-download.fa-lg").parent().attr("href")||link;console.log("vcloudLink",vcloudLink),(null==vcloudLink?void 0:vcloudLink.startsWith("/"))&&(vcloudLink=`${baseUrl}${vcloudLink}`,console.log("New vcloudLink",vcloudLink));const vcloudRes=yield fetch(vcloudLink,{headers:headers2,signal:signal,redirect:"follow"}),$=cheerio.load(yield vcloudRes.text()),linkClass=$(".btn-success.btn-lg.h6,.btn-danger,.btn-secondary");for(const element of linkClass){let link2=$(element).attr("href")||"";switch(!0){case null==link2?void 0:link2.includes("pixeld"):if(!(null==link2?void 0:link2.includes("api"))){const token=link2.split("/").pop(),baseUrl2=link2.split("/").slice(0,-2).join("/");link2=`${baseUrl2}/api/file/${token}`}streamLinks.push({server:"Pixeldrain",link:link2,type:"mkv"});break;case(null==link2?void 0:link2.includes(".dev"))&&!(null==link2?void 0:link2.includes("/?id=")):streamLinks.push({server:"Cf Worker",link:link2,type:"mkv"});break;case(null==link2?void 0:link2.includes("hubcloud"))||(null==link2?void 0:link2.includes("/?id=")):try{const newLinkRes=yield fetch(link2,{method:"HEAD",headers:headers2,signal:signal,redirect:"manual"});let newLink=link2;if(newLink=newLinkRes.status>=300&&newLinkRes.status<400?newLinkRes.headers.get("location")||link2:newLinkRes.url&&newLinkRes.url!==link2?newLinkRes.url:newLinkRes.headers.get("location")||link2,newLink.includes("googleusercontent"))newLink=newLink.split("?link=")[1];else{const newLinkRes2=yield fetch(newLink,{method:"HEAD",headers:headers2,signal:signal,redirect:"manual"});newLink=newLinkRes2.status>=300&&newLinkRes2.status<400?(null==(_c=newLinkRes2.headers.get("location"))?void 0:_c.split("?link=")[1])||newLink:newLinkRes2.url&&newLinkRes2.url!==newLink?newLinkRes2.url.split("?link=")[1]||newLinkRes2.url:(null==(_d=newLinkRes2.headers.get("location"))?void 0:_d.split("?link=")[1])||newLink}streamLinks.push({server:"hubcloud",link:newLink,type:"mkv"})}catch(error){console.log("hubcloudExtractor error in hubcloud link: ",error)}break;case null==link2?void 0:link2.includes("cloudflarestorage"):streamLinks.push({server:"CfStorage",link:link2,type:"mkv"});break;case(null==link2?void 0:link2.includes("fastdl"))||(null==link2?void 0:link2.includes("fsl.")):streamLinks.push({server:"FastDl",link:link2,type:"mkv"});break;case link2.includes("hubcdn")&&!link2.includes("/?id="):streamLinks.push({server:"HubCdn",link:link2,type:"mkv"});break;default:if((null==link2?void 0:link2.includes(".mkv"))||(null==link2?void 0:link2.includes("?token="))){const serverName=(null==(_f=null==(_e=link2.match(/^(?:https?:\/\/)?(?:www\.)?([^\/]+)/i))?void 0:_e[1])?void 0:_f.replace(/\./g," "))||"Unknown";streamLinks.push({server:serverName,link:link2,type:"mkv"})}}}return console.log("streamLinks",streamLinks),streamLinks}catch(error){return console.log("hubcloudExtractor error: ",(null==error?void 0:error.message)||error),[]}})}__name(hubcloudExtractor,"hubcloudExtractor");var headers={Accept:"text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7","Cache-Control":"no-store","Accept-Language":"en-US,en;q=0.9",DNT:"1","sec-ch-ua":'"Not_A Brand";v="8", "Chromium";v="120", "Microsoft Edge";v="120"',"sec-ch-ua-mobile":"?0","sec-ch-ua-platform":'"Windows"',"Sec-Fetch-Dest":"document","Sec-Fetch-Mode":"navigate","Sec-Fetch-Site":"none","Sec-Fetch-User":"?1",Cookie:"ext_name=ojplmecpdpgccookcobabopnaifgidhf; cf_clearance=nJQQ9ncb6m2Nc7HoxzuphPhnQgLzI6nBmzl2D.9oY4E-1759137994-1.2.1.1-pe7DiQHVsfZjnbHWTnaNbMiTYEuk.VvpPGaMeTtHOh7p9TKG5auBIDGDDW93devKuNcOlkhe6mk4v5OcsM0H_q3Te02eCPoTNgZsW8terjwvnQUebbbe8QKjMaVsVKgnbiAxS2ESM9aB3fbiQ9diuNT6ziY.2U4mPaJ0Y4vCu3404o5qBEw5c2psIuabKUTZviA2NJvN.lx5jAFQnB.HXeXJnUuCcbQac7G1BYBfdso","User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/131.0.0.0 Safari/537.36 Edg/131.0.0.0"};function getStream(_0){return __async(this,arguments,function*({link:link,type:type,signal:signal,providerContext:providerContext}){var _a,_b,_c,_d;const{axios:axios,cheerio:cheerio,commonHeaders:commonHeaders}=providerContext;try{const streamLinks=[];if(console.log("dotlink",link),"movie"===type){const dotlinkText=(yield axios(`${link}`,{headers:headers})).data;console.log("dotlinkText",dotlinkText);const vlink=dotlinkText.match(/__defProp(target,"name",{value:value,configurable:!0}),__export=(target,all)=>{for(var name in all)__defProp(target,name,{get:all[name],enumerable:!0})},__copyProps=(to,from,except,desc)=>{if(from&&"object"==typeof from||"function"==typeof from)for(let key of __getOwnPropNames(from))__hasOwnProp.call(to,key)||key===except||__defProp(to,key,{get:()=>from[key],enumerable:!(desc=__getOwnPropDesc(from,key))||desc.enumerable});return to},__toCommonJS=mod=>__copyProps(__defProp({},"__esModule",{value:!0}),mod),__async=(__this,__arguments,generator)=>new Promise((resolve,reject)=>{var fulfilled=value=>{try{step(generator.next(value))}catch(e){reject(e)}},rejected=value=>{try{step(generator.throw(value))}catch(e){reject(e)}},step=x=>x.done?resolve(x.value):Promise.resolve(x.value).then(fulfilled,rejected);step((generator=generator.apply(__this,__arguments)).next())}),stream_exports={};__export(stream_exports,{getStream:()=>getStream});var hubcloudDecode=__name(function(value){return void 0===value?"":atob(value.toString())},"hubcloudDecode"),getPixelDrainUrl=__name(html=>{const match=html.match(/var\s+pxl\s*=\s*['"]([^'"]+)['"];?/i);return(null==match?void 0:match[1])||""},"getPixelDrainUrl"),getRedirectedPixelDrainUrl=__name((...htmlSources)=>{for(const html of htmlSources){if(!html)continue;const redirectedUrl=getPixelDrainUrl(html);if(redirectedUrl)return redirectedUrl}return""},"getRedirectedPixelDrainUrl");function hubcloudExtractor(link,signal,axios,cheerio,headers2){return __async(this,null,function*(){var _a,_b,_c,_d,_e,_f,_g;try{headers2.Cookie="ext_name=ojplmecpdpgccookcobabopnaifgidhf; xla=s4t; cf_clearance=woQrFGXtLfmEMBEiGUsVHrUBMT8s3cmguIzmMjmvpkg-1770053679-1.2.1.1-xBrQdciOJsweUF6F2T_OtH6jmyanN_TduQ0yslc_XqjU6RcHSxI7.YOKv6ry7oYo64868HYoULnVyww536H2eVI3R2e4wKzsky6abjPdfQPxqpUaXjxfJ02o6jl3_Vkwr4uiaU7Wy596Vdst3y78HXvVmKdIohhtPvp.vZ9_L7wvWdce0GRixjh_6JiqWmWMws46hwEt3hboaS1e1e4EoWCvj5b0M_jVwvSxBOAW5emFzvT3QrnRh4nyYmKDERnY",console.log("hubcloudExtractor",link);const baseUrl=link.split("/").slice(0,3).join("/"),streamLinks=[],vLinkText=(yield axios(`${link}`,{headers:headers2,signal:signal})).data,$vLink=cheerio.load(vLinkText),vLinkRedirect=vLinkText.match(/var\s+url\s*=\s*'([^']+)';/)||[];let vcloudLink=hubcloudDecode(null==(_b=null==(_a=vLinkRedirect[1])?void 0:_a.split("r="))?void 0:_b[1])||vLinkRedirect[1]||$vLink(".fa-file-download.fa-lg").parent().attr("href")||link;console.log("vcloudLink",vcloudLink),(null==vcloudLink?void 0:vcloudLink.startsWith("/"))&&(vcloudLink=`${baseUrl}${vcloudLink}`,console.log("New vcloudLink",vcloudLink));const vcloudRes=yield fetch(vcloudLink,{headers:headers2,signal:signal,redirect:"follow"}),vcloudText=yield vcloudRes.text(),$=cheerio.load(vcloudText),linkClass=$(".btn-success.btn-lg.h6,.btn-danger,.btn-secondary");for(const element of linkClass){let link2=$(element).attr("href")||"";switch(!0){case null==link2?void 0:link2.includes("pixeld"):if(console.log("Pixeldrain link found:",link2),!(null==link2?void 0:link2.includes("api"))){const redirectedPixelDrainUrl=getRedirectedPixelDrainUrl(vLinkText,vcloudText);redirectedPixelDrainUrl&&(console.log("Special case for token negn6f",redirectedPixelDrainUrl),link2=redirectedPixelDrainUrl);const token=null==(_c=link2.split("/").pop())?void 0:_c.split("?")[0],baseUrl2=link2.split("/").slice(0,-2).join("/");link2=`${baseUrl2}/api/file/${token}`}streamLinks.push({server:"Pixeldrain",link:link2,type:"mkv"});break;case(null==link2?void 0:link2.includes(".dev"))&&!(null==link2?void 0:link2.includes("/?id=")):streamLinks.push({server:"Cf Worker",link:link2,type:"mkv"});break;case(null==link2?void 0:link2.includes("hubcloud"))||(null==link2?void 0:link2.includes("/?id=")):try{const newLinkRes=yield fetch(link2,{method:"HEAD",headers:headers2,signal:signal,redirect:"manual"});let newLink=link2;if(newLink=newLinkRes.status>=300&&newLinkRes.status<400?newLinkRes.headers.get("location")||link2:newLinkRes.url&&newLinkRes.url!==link2?newLinkRes.url:newLinkRes.headers.get("location")||link2,newLink.includes("googleusercontent"))newLink=newLink.split("?link=")[1];else{const newLinkRes2=yield fetch(newLink,{method:"HEAD",headers:headers2,signal:signal,redirect:"manual"});newLink=newLinkRes2.status>=300&&newLinkRes2.status<400?(null==(_d=newLinkRes2.headers.get("location"))?void 0:_d.split("?link=")[1])||newLink:newLinkRes2.url&&newLinkRes2.url!==newLink?newLinkRes2.url.split("?link=")[1]||newLinkRes2.url:(null==(_e=newLinkRes2.headers.get("location"))?void 0:_e.split("?link=")[1])||newLink}streamLinks.push({server:"hubcloud",link:newLink,type:"mkv"})}catch(error){console.log("hubcloudExtractor error in hubcloud link: ",error)}break;case null==link2?void 0:link2.includes("cloudflarestorage"):streamLinks.push({server:"CfStorage",link:link2,type:"mkv"});break;case(null==link2?void 0:link2.includes("fastdl"))||(null==link2?void 0:link2.includes("fsl.")):streamLinks.push({server:"FastDl",link:link2,type:"mkv"});break;case link2.includes("hubcdn")&&!link2.includes("/?id="):streamLinks.push({server:"HubCdn",link:link2,type:"mkv"});break;default:if((null==link2?void 0:link2.includes(".mkv"))||(null==link2?void 0:link2.includes("?token="))){const serverName=(null==(_g=null==(_f=link2.match(/^(?:https?:\/\/)?(?:www\.)?([^\/]+)/i))?void 0:_f[1])?void 0:_g.replace(/\./g," "))||"Unknown";streamLinks.push({server:serverName,link:link2,type:"mkv"})}}}return console.log("streamLinks",streamLinks),streamLinks}catch(error){return console.log("hubcloudExtractor error: ",(null==error?void 0:error.message)||error),[]}})}__name(hubcloudExtractor,"hubcloudExtractor");var headers={Accept:"text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7","Cache-Control":"no-store","Accept-Language":"en-US,en;q=0.9",DNT:"1","sec-ch-ua":'"Not_A Brand";v="8", "Chromium";v="120", "Microsoft Edge";v="120"',"sec-ch-ua-mobile":"?0","sec-ch-ua-platform":'"Windows"',"Sec-Fetch-Dest":"document","Sec-Fetch-Mode":"navigate","Sec-Fetch-Site":"none","Sec-Fetch-User":"?1",Cookie:"ext_name=ojplmecpdpgccookcobabopnaifgidhf; cf_clearance=nJQQ9ncb6m2Nc7HoxzuphPhnQgLzI6nBmzl2D.9oY4E-1759137994-1.2.1.1-pe7DiQHVsfZjnbHWTnaNbMiTYEuk.VvpPGaMeTtHOh7p9TKG5auBIDGDDW93devKuNcOlkhe6mk4v5OcsM0H_q3Te02eCPoTNgZsW8terjwvnQUebbbe8QKjMaVsVKgnbiAxS2ESM9aB3fbiQ9diuNT6ziY.2U4mPaJ0Y4vCu3404o5qBEw5c2psIuabKUTZviA2NJvN.lx5jAFQnB.HXeXJnUuCcbQac7G1BYBfdso","User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/131.0.0.0 Safari/537.36 Edg/131.0.0.0"};function getStream(_0){return __async(this,arguments,function*({link:link,type:type,signal:signal,providerContext:providerContext}){var _a,_b,_c,_d;const{axios:axios,cheerio:cheerio,commonHeaders:commonHeaders}=providerContext;try{const streamLinks=[];if(console.log("dotlink",link),"movie"===type){const dotlinkText=(yield axios(`${link}`,{headers:headers})).data;console.log("dotlinkText",dotlinkText);const vlink=dotlinkText.match(/ 0 ? episodeLinks : [{ title: "Play", link: url }]; diff --git a/providers/drive/posts.ts b/providers/drive/posts.ts index 5e8dfa2..1ed9abb 100644 --- a/providers/drive/posts.ts +++ b/providers/drive/posts.ts @@ -56,7 +56,6 @@ async function posts({ const title = $(element).find(".poster-title").text(); const link = $(element).parent().attr("href"); const image = $(element).find(".poster-image img").attr("src"); - console.log({ title, link, image }); if (title && link && image) { catalog.push({ title: title.replace("Download", "").trim(), diff --git a/providers/extractors/hubcloud.ts b/providers/extractors/hubcloud.ts index 1eb0984..a2ea282 100644 --- a/providers/extractors/hubcloud.ts +++ b/providers/extractors/hubcloud.ts @@ -5,6 +5,28 @@ const hubcloudDecode = function (value: string) { return atob(value.toString()); }; +const getPixelDrainUrl = (html: string) => { + const match = html.match(/var\s+pxl\s*=\s*['"]([^'"]+)['"];?/i); + return match?.[1] || ""; +}; + +const getRedirectedPixelDrainUrl = ( + ...htmlSources: Array +) => { + for (const html of htmlSources) { + if (!html) { + continue; + } + + const redirectedUrl = getPixelDrainUrl(html); + if (redirectedUrl) { + return redirectedUrl; + } + } + + return ""; +}; + export async function hubcloudExtractor( link: string, signal: AbortSignal, @@ -16,7 +38,7 @@ export async function hubcloudExtractor( headers["Cookie"] = "ext_name=ojplmecpdpgccookcobabopnaifgidhf; xla=s4t; cf_clearance=woQrFGXtLfmEMBEiGUsVHrUBMT8s3cmguIzmMjmvpkg-1770053679-1.2.1.1-xBrQdciOJsweUF6F2T_OtH6jmyanN_TduQ0yslc_XqjU6RcHSxI7.YOKv6ry7oYo64868HYoULnVyww536H2eVI3R2e4wKzsky6abjPdfQPxqpUaXjxfJ02o6jl3_Vkwr4uiaU7Wy596Vdst3y78HXvVmKdIohhtPvp.vZ9_L7wvWdce0GRixjh_6JiqWmWMws46hwEt3hboaS1e1e4EoWCvj5b0M_jVwvSxBOAW5emFzvT3QrnRh4nyYmKDERnY"; console.log("hubcloudExtractor", link); - console.log("headers", headers); + // console.log("headers", headers); const baseUrl = link.split("/").slice(0, 3).join("/"); const streamLinks: any[] = []; const vLinkRes = await axios(`${link}`, { headers, signal }); @@ -38,7 +60,8 @@ export async function hubcloudExtractor( signal, redirect: "follow", }); - const $ = cheerio.load(await vcloudRes.text()); + const vcloudText = await vcloudRes.text(); + const $ = cheerio.load(vcloudText); // console.log('vcloudRes', $.text()); const linkClass = $(".btn-success.btn-lg.h6,.btn-danger,.btn-secondary"); @@ -48,8 +71,21 @@ export async function hubcloudExtractor( switch (true) { case link?.includes("pixeld"): + console.log("Pixeldrain link found:", link); if (!link?.includes("api")) { - const token = link.split("/").pop(); + const redirectedPixelDrainUrl = getRedirectedPixelDrainUrl( + vLinkText, + vcloudText, + ); + if (redirectedPixelDrainUrl) { + console.log( + "Special case for token negn6f", + redirectedPixelDrainUrl, + ); + link = redirectedPixelDrainUrl; + } + + const token = link.split("/").pop()?.split("?")[0]; const baseUrl = link.split("/").slice(0, -2).join("/"); link = `${baseUrl}/api/file/${token}`; } diff --git a/providers/topmovies/posts.ts b/providers/topmovies/posts.ts index 670babe..a013f6b 100644 --- a/providers/topmovies/posts.ts +++ b/providers/topmovies/posts.ts @@ -12,12 +12,11 @@ const headers = { "sec-ch-ua-platform": '"Windows"', "Sec-Fetch-Dest": "document", "Sec-Fetch-Mode": "navigate", - Cookie: "popads_user_id=6ba8fe60a481387a3249f05aa058822d", "Sec-Fetch-Site": "none", "Sec-Fetch-User": "?1", "Upgrade-Insecure-Requests": "1", "User-Agent": - "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36 Edg/120.0.0.0", + "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/148.0.0.0 Safari/537.36 Edg/148.0.0.0", }; export const getPosts = async function ({ @@ -60,7 +59,7 @@ export const getSearchPosts = async function ({ async function posts( url: string, signal: AbortSignal, - providerContext: ProviderContext + providerContext: ProviderContext, ): Promise { try { const { axios, cheerio } = providerContext;