From ee8f7f036c75d6f3e8e7a290cc8a3919e984e8a8 Mon Sep 17 00:00:00 2001 From: himanshu8443 Date: Wed, 30 Jul 2025 13:24:21 +0530 Subject: [PATCH] fix: update stream URLs to use m3u8 proxy for improved link handling --- dist/animetsu/stream.js | 2 +- providers/animetsu/stream.ts | 8 ++++---- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/dist/animetsu/stream.js b/dist/animetsu/stream.js index 39d0984..69aabae 100644 --- a/dist/animetsu/stream.js +++ b/dist/animetsu/stream.js @@ -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.getStream=void 0;const getStream=function(_a){return __awaiter(this,arguments,void 0,function*({link:id,providerContext:providerContext}){try{const{axios:axios}=providerContext,baseUrl="https://backend.animetsu.to",[animeId,episodeNumber]=id.split(":");if(!animeId||!episodeNumber)throw new Error("Invalid link format");const servers=["pahe","zoro"],streamLinks=[];return yield Promise.all(servers.map(server=>__awaiter(this,void 0,void 0,function*(){try{const url=`https://m3u8.8man.workers.dev?url=${baseUrl}/api/anime/tiddies?server=${server}&id=${animeId}&num=${episodeNumber}&subType=sub`,res=yield axios.get(url,{headers:{Referer:"https://animetsu.to/"}});if(res.data&&res.data.sources){const subtitles=[];res.data.sources.forEach(source=>{streamLinks.push({server:server+`: ${source.quality}`,link:source.url,type:"m3u8",quality:source.quality,headers:{referer:"https://animetsu.to/"},subtitles:subtitles.length>0?subtitles:[]})})}}catch(e){}}))),yield Promise.all(servers.map(server=>__awaiter(this,void 0,void 0,function*(){try{const url=`https://m3u8.8man.workers.dev?url=${baseUrl}/api/anime/tiddies?server=${server}&id=${animeId}&num=${episodeNumber}&subType=dub`,res=yield axios.get(url,{headers:{referer:"https://animetsu.to/"}});if(res.data&&res.data.sources){const subtitles=[];res.data.sources.forEach(source=>{streamLinks.push({server:`${server} (Dub) : ${source.quality}`,link:source.url,type:"m3u8",quality:source.quality,headers:{referer:"https://animetsu.to/"},subtitles:subtitles.length>0?subtitles:[]})})}}catch(e){}}))),streamLinks}catch(err){return[]}})};exports.getStream=getStream; \ No newline at end of file +"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.getStream=void 0;const getStream=function(_a){return __awaiter(this,arguments,void 0,function*({link:id,providerContext:providerContext}){try{const{axios:axios}=providerContext,baseUrl="https://backend.animetsu.to",[animeId,episodeNumber]=id.split(":");if(!animeId||!episodeNumber)throw new Error("Invalid link format");const servers=["pahe","zoro"],streamLinks=[];return yield Promise.all(servers.map(server=>__awaiter(this,void 0,void 0,function*(){try{const url=`${baseUrl}/api/anime/tiddies?server=${server}&id=${animeId}&num=${episodeNumber}&subType=sub`,res=yield axios.get(url,{headers:{Referer:"https://animetsu.to/"}});if(res.data&&res.data.sources){const subtitles=[];res.data.sources.forEach(source=>{streamLinks.push({server:server+`: ${source.quality}`,link:`https://m3u8.8man.workers.dev?url=${source.url}`,type:"m3u8",quality:source.quality,headers:{referer:"https://animetsu.to/"},subtitles:subtitles.length>0?subtitles:[]})})}}catch(e){}}))),yield Promise.all(servers.map(server=>__awaiter(this,void 0,void 0,function*(){try{const url=`${baseUrl}/api/anime/tiddies?server=${server}&id=${animeId}&num=${episodeNumber}&subType=dub`,res=yield axios.get(url,{headers:{referer:"https://animetsu.to/"}});if(res.data&&res.data.sources){const subtitles=[];res.data.sources.forEach(source=>{streamLinks.push({server:`${server} (Dub) : ${source.quality}`,link:`https://m3u8.8man.workers.dev?url=${source.url}`,type:"m3u8",quality:source.quality,headers:{referer:"https://animetsu.to/"},subtitles:subtitles.length>0?subtitles:[]})})}}catch(e){}}))),streamLinks}catch(err){return[]}})};exports.getStream=getStream; \ No newline at end of file diff --git a/providers/animetsu/stream.ts b/providers/animetsu/stream.ts index d693277..ac25ede 100644 --- a/providers/animetsu/stream.ts +++ b/providers/animetsu/stream.ts @@ -24,7 +24,7 @@ export const getStream = async function ({ await Promise.all( servers.map(async (server) => { try { - const url = `https://m3u8.8man.workers.dev?url=${baseUrl}/api/anime/tiddies?server=${server}&id=${animeId}&num=${episodeNumber}&subType=sub`; + const url = `${baseUrl}/api/anime/tiddies?server=${server}&id=${animeId}&num=${episodeNumber}&subType=sub`; const res = await axios.get(url, { headers: { @@ -68,7 +68,7 @@ export const getStream = async function ({ res.data.sources.forEach((source: any) => { streamLinks.push({ server: server + `: ${source.quality}`, - link: source.url, + link: `https://m3u8.8man.workers.dev?url=${source.url}`, type: "m3u8", quality: source.quality, headers: { @@ -88,7 +88,7 @@ export const getStream = async function ({ await Promise.all( servers.map(async (server) => { try { - const url = `https://m3u8.8man.workers.dev?url=${baseUrl}/api/anime/tiddies?server=${server}&id=${animeId}&num=${episodeNumber}&subType=dub`; + const url = `${baseUrl}/api/anime/tiddies?server=${server}&id=${animeId}&num=${episodeNumber}&subType=dub`; const res = await axios.get(url, { headers: { @@ -132,7 +132,7 @@ export const getStream = async function ({ res.data.sources.forEach((source: any) => { streamLinks.push({ server: `${server} (Dub) : ${source.quality}`, - link: source.url, + link: `https://m3u8.8man.workers.dev?url=${source.url}`, type: "m3u8", quality: source.quality, headers: {