Reapply "feat: add extractors bundled in file refactor stream handling in multiple providers"

This reverts commit ef46918fec.
This commit is contained in:
Himanshu
2026-02-03 21:42:43 +05:30
parent ef46918fec
commit 8c91327af1
220 changed files with 1300 additions and 771 deletions

View File

@@ -1 +1 @@
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.genres=exports.catalog=void 0,exports.catalog=[{title:"Latest",filter:""},{title:"Netflix",filter:"/web-series/tv-shows-by-network/netflix"},{title:"Hotstar",filter:"/web-series/tv-shows-by-network/hotstar"},{title:"Amazon Prime",filter:"/web-series/tv-shows-by-network/amazon-prime-video"}],exports.genres=[{title:"Apple TV+",filter:"/ott/apple-tv"},{title:"Disney+",filter:"/ott/disney-plus"},{title:"Hulu",filter:"/ott/hulu"},{title:"Crunchyroll",filter:"/ott/crunchyroll"},{title:"Action",filter:"/movies-by-genre/action/"},{title:"Adventure",filter:"/movies-by-genre/adventure/"},{title:"Animation",filter:"/movies-by-genre/animated/"},{title:"Comedy",filter:"/movies-by-genre/comedy/"},{title:"Crime",filter:"/movies-by-genre/crime/"},{title:"Documentary",filter:"/movies-by-genre/documentary/"},{title:"Fantasy",filter:"/movies-by-genre/fantasy/"},{title:"Horror",filter:"/movies-by-genre/horror/"},{title:"Mystery",filter:"/movies-by-genre/mystery/"},{title:"Romance",filter:"/movies-by-genre/romance/"},{title:"Thriller",filter:"/movies-by-genre/thriller/"},{title:"Sci-Fi",filter:"/movies-by-genre/sci-fi/"}];
exports.genres=exports.catalog=void 0,exports.catalog=[{title:"Latest",filter:""},{title:"Netflix",filter:"/web-series/tv-shows-by-network/netflix"},{title:"Hotstar",filter:"/web-series/tv-shows-by-network/hotstar"},{title:"Amazon Prime",filter:"/web-series/tv-shows-by-network/amazon-prime-video"}],exports.genres=[{title:"Apple TV+",filter:"/ott/apple-tv"},{title:"Disney+",filter:"/ott/disney-plus"},{title:"Hulu",filter:"/ott/hulu"},{title:"Crunchyroll",filter:"/ott/crunchyroll"},{title:"Action",filter:"/movies-by-genre/action/"},{title:"Adventure",filter:"/movies-by-genre/adventure/"},{title:"Animation",filter:"/movies-by-genre/animated/"},{title:"Comedy",filter:"/movies-by-genre/comedy/"},{title:"Crime",filter:"/movies-by-genre/crime/"},{title:"Documentary",filter:"/movies-by-genre/documentary/"},{title:"Fantasy",filter:"/movies-by-genre/fantasy/"},{title:"Horror",filter:"/movies-by-genre/horror/"},{title:"Mystery",filter:"/movies-by-genre/mystery/"},{title:"Romance",filter:"/movies-by-genre/romance/"},{title:"Thriller",filter:"/movies-by-genre/thriller/"},{title:"Sci-Fi",filter:"/movies-by-genre/sci-fi/"}];

View File

@@ -1 +1 @@
"use strict";var __awaiter=this&&this.__awaiter||function(thisArg,_arguments,P,generator){return new(P||(P=Promise))(function(resolve,reject){function fulfilled(value){try{step(generator.next(value))}catch(e){reject(e)}}function rejected(value){try{step(generator.throw(value))}catch(e){reject(e)}}function step(result){var value;result.done?resolve(result.value):(value=result.value,value instanceof P?value:new P(function(resolve){resolve(value)})).then(fulfilled,rejected)}step((generator=generator.apply(thisArg,_arguments||[])).next())})};Object.defineProperty(exports,"__esModule",{value:!0}),exports.getEpisodes=void 0;const getEpisodes=function(_a){return __awaiter(this,arguments,void 0,function*({url:url,providerContext:providerContext}){var _b;const{axios:axios,cheerio:cheerio}=providerContext;try{url.includes("url=")&&(url=atob(url.split("url=")[1]));const html=(yield axios.get(url)).data;let $=cheerio.load(html);if(url.includes("url=")){const newUrl=null===(_b=$("meta[http-equiv='refresh']").attr("content"))||void 0===_b?void 0:_b.split("url=")[1],html2=(yield axios.get(newUrl||url)).data;$=cheerio.load(html2)}const episodeLinks=[];return $("h3,h4").map((i,element)=>{const seriesTitle=$(element).text(),episodesLink=$(element).find("a").attr("href");episodesLink&&"#"!==episodesLink&&episodeLinks.push({title:seriesTitle.trim()||"No title found",link:episodesLink||""})}),$("a.maxbutton").map((i,element)=>{const seriesTitle=$(element).children("span").text(),episodesLink=$(element).attr("href");episodesLink&&"#"!==episodesLink&&episodeLinks.push({title:seriesTitle.trim()||"No title found",link:episodesLink||""})}),episodeLinks}catch(err){return[]}})};exports.getEpisodes=getEpisodes;
var __awaiter=this&&this.__awaiter||function(thisArg,_arguments,P,generator){return new(P||(P=Promise))(function(resolve,reject){function fulfilled(value){try{step(generator.next(value))}catch(e){reject(e)}}function rejected(value){try{step(generator.throw(value))}catch(e){reject(e)}}function step(result){var value;result.done?resolve(result.value):(value=result.value,value instanceof P?value:new P(function(resolve){resolve(value)})).then(fulfilled,rejected)}step((generator=generator.apply(thisArg,_arguments||[])).next())})};exports.getEpisodes=void 0;const getEpisodes=function(_a){return __awaiter(this,arguments,void 0,function*({url:url,providerContext:providerContext}){var _b;const{axios:axios,cheerio:cheerio}=providerContext;try{url.includes("url=")&&(url=atob(url.split("url=")[1]));const html=(yield axios.get(url)).data;let $=cheerio.load(html);if(url.includes("url=")){const newUrl=null===(_b=$("meta[http-equiv='refresh']").attr("content"))||void 0===_b?void 0:_b.split("url=")[1],html2=(yield axios.get(newUrl||url)).data;$=cheerio.load(html2)}const episodeLinks=[];return $("h3,h4").map((i,element)=>{const seriesTitle=$(element).text(),episodesLink=$(element).find("a").attr("href");episodesLink&&"#"!==episodesLink&&episodeLinks.push({title:seriesTitle.trim()||"No title found",link:episodesLink||""})}),$("a.maxbutton").map((i,element)=>{const seriesTitle=$(element).children("span").text(),episodesLink=$(element).attr("href");episodesLink&&"#"!==episodesLink&&episodeLinks.push({title:seriesTitle.trim()||"No title found",link:episodesLink||""})}),episodeLinks}catch(err){return[]}})};exports.getEpisodes=getEpisodes;

View File

@@ -1 +1 @@
"use strict";var __awaiter=this&&this.__awaiter||function(thisArg,_arguments,P,generator){return new(P||(P=Promise))(function(resolve,reject){function fulfilled(value){try{step(generator.next(value))}catch(e){reject(e)}}function rejected(value){try{step(generator.throw(value))}catch(e){reject(e)}}function step(result){var value;result.done?resolve(result.value):(value=result.value,value instanceof P?value:new P(function(resolve){resolve(value)})).then(fulfilled,rejected)}step((generator=generator.apply(thisArg,_arguments||[])).next())})};Object.defineProperty(exports,"__esModule",{value:!0}),exports.getMeta=void 0;const getMeta=function(_a){return __awaiter(this,arguments,void 0,function*({link:link,providerContext:providerContext}){var _b;try{const{axios:axios,cheerio:cheerio}=providerContext,url=link,data=(yield axios.get(url)).data,$=cheerio.load(data),meta={title:$(".imdbwp__title").text(),synopsis:$(".imdbwp__teaser").text(),image:$(".imdbwp__thumb").find("img").attr("src")||"",imdbId:(null===(_b=$(".imdbwp__link").attr("href"))||void 0===_b?void 0:_b.split("/")[4])||"",type:$(".thecontent").text().toLocaleLowerCase().includes("season")?"series":"movie"},links=[];return $("h3,h4").map((i,element)=>{var _a;const seriesTitle=$(element).text(),episodesLink=$(element).next("p").find(".maxbutton-episode-links,.maxbutton-g-drive,.maxbutton-af-download").attr("href"),movieLink=$(element).next("p").find(".maxbutton-download-links").attr("href");(movieLink||episodesLink&&"javascript:void(0);"!==episodesLink)&&links.push({title:seriesTitle.replace("Download ","").trim()||"Download",episodesLink:episodesLink||"",directLinks:movieLink?[{link:movieLink,title:"Movie",type:"movie"}]:[],quality:(null===(_a=null==seriesTitle?void 0:seriesTitle.match(/\d+p\b/))||void 0===_a?void 0:_a[0])||""})}),Object.assign(Object.assign({},meta),{linkList:links})}catch(err){return{title:"",synopsis:"",image:"",imdbId:"",type:"movie",linkList:[]}}})};exports.getMeta=getMeta;
var __awaiter=this&&this.__awaiter||function(thisArg,_arguments,P,generator){return new(P||(P=Promise))(function(resolve,reject){function fulfilled(value){try{step(generator.next(value))}catch(e){reject(e)}}function rejected(value){try{step(generator.throw(value))}catch(e){reject(e)}}function step(result){var value;result.done?resolve(result.value):(value=result.value,value instanceof P?value:new P(function(resolve){resolve(value)})).then(fulfilled,rejected)}step((generator=generator.apply(thisArg,_arguments||[])).next())})};exports.getMeta=void 0;const getMeta=function(_a){return __awaiter(this,arguments,void 0,function*({link:link,providerContext:providerContext}){var _b;try{const{axios:axios,cheerio:cheerio}=providerContext,url=link,data=(yield axios.get(url)).data,$=cheerio.load(data),meta={title:$(".imdbwp__title").text(),synopsis:$(".imdbwp__teaser").text(),image:$(".imdbwp__thumb").find("img").attr("src")||"",imdbId:(null===(_b=$(".imdbwp__link").attr("href"))||void 0===_b?void 0:_b.split("/")[4])||"",type:$(".thecontent").text().toLocaleLowerCase().includes("season")?"series":"movie"},links=[];return $("h3,h4").map((i,element)=>{var _a;const seriesTitle=$(element).text(),episodesLink=$(element).next("p").find(".maxbutton-episode-links,.maxbutton-g-drive,.maxbutton-af-download").attr("href"),movieLink=$(element).next("p").find(".maxbutton-download-links").attr("href");(movieLink||episodesLink&&"javascript:void(0);"!==episodesLink)&&links.push({title:seriesTitle.replace("Download ","").trim()||"Download",episodesLink:episodesLink||"",directLinks:movieLink?[{link:movieLink,title:"Movie",type:"movie"}]:[],quality:(null===(_a=null==seriesTitle?void 0:seriesTitle.match(/\d+p\b/))||void 0===_a?void 0:_a[0])||""})}),Object.assign(Object.assign({},meta),{linkList:links})}catch(err){return{title:"",synopsis:"",image:"",imdbId:"",type:"movie",linkList:[]}}})};exports.getMeta=getMeta;

View File

@@ -1 +1 @@
"use strict";var __awaiter=this&&this.__awaiter||function(thisArg,_arguments,P,generator){return new(P||(P=Promise))(function(resolve,reject){function fulfilled(value){try{step(generator.next(value))}catch(e){reject(e)}}function rejected(value){try{step(generator.throw(value))}catch(e){reject(e)}}function step(result){var value;result.done?resolve(result.value):(value=result.value,value instanceof P?value:new P(function(resolve){resolve(value)})).then(fulfilled,rejected)}step((generator=generator.apply(thisArg,_arguments||[])).next())})};Object.defineProperty(exports,"__esModule",{value:!0}),exports.getSearchPosts=exports.getPosts=void 0;const 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=function(_a){return __awaiter(this,arguments,void 0,function*({filter:filter,page:page,signal:signal,providerContext:providerContext}){const{getBaseUrl:getBaseUrl}=providerContext;return posts(`${(yield getBaseUrl("Topmovies"))+filter}/page/${page}/`,signal,providerContext)})};exports.getPosts=getPosts;const getSearchPosts=function(_a){return __awaiter(this,arguments,void 0,function*({searchQuery:searchQuery,page:page,signal:signal,providerContext:providerContext}){const{getBaseUrl:getBaseUrl}=providerContext;return posts(`${yield getBaseUrl("Topmovies")}/search/${searchQuery}/page/${page}/`,signal,providerContext)})};function posts(url,signal,providerContext){return __awaiter(this,void 0,void 0,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[]}})}exports.getSearchPosts=getSearchPosts;
var __awaiter=this&&this.__awaiter||function(thisArg,_arguments,P,generator){return new(P||(P=Promise))(function(resolve,reject){function fulfilled(value){try{step(generator.next(value))}catch(e){reject(e)}}function rejected(value){try{step(generator.throw(value))}catch(e){reject(e)}}function step(result){var value;result.done?resolve(result.value):(value=result.value,value instanceof P?value:new P(function(resolve){resolve(value)})).then(fulfilled,rejected)}step((generator=generator.apply(thisArg,_arguments||[])).next())})};exports.getSearchPosts=exports.getPosts=void 0;const 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=function(_a){return __awaiter(this,arguments,void 0,function*({filter:filter,page:page,signal:signal,providerContext:providerContext}){const{getBaseUrl:getBaseUrl}=providerContext;return posts(`${(yield getBaseUrl("Topmovies"))+filter}/page/${page}/`,signal,providerContext)})};exports.getPosts=getPosts;const getSearchPosts=function(_a){return __awaiter(this,arguments,void 0,function*({searchQuery:searchQuery,page:page,signal:signal,providerContext:providerContext}){const{getBaseUrl:getBaseUrl}=providerContext;return posts(`${yield getBaseUrl("Topmovies")}/search/${searchQuery}/page/${page}/`,signal,providerContext)})};function posts(url,signal,providerContext){return __awaiter(this,void 0,void 0,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[]}})}exports.getSearchPosts=getSearchPosts;

File diff suppressed because one or more lines are too long