diff --git a/src/source/XDMovies.test.ts b/src/source/XDMovies.test.ts deleted file mode 100644 index 125e748..0000000 --- a/src/source/XDMovies.test.ts +++ /dev/null @@ -1,33 +0,0 @@ -import { createTestContext } from '../test'; -import { FetcherMock, TmdbId } from '../utils'; -import { XDMovies } from './XDMovies'; - -const ctx = createTestContext(); - -describe('XDMovies', () => { - let source: XDMovies; - - beforeEach(() => { - source = new XDMovies(new FetcherMock(`${__dirname}/__fixtures__/XDMovies`)); - }); - - test('handle non-existent devil\'s bath 2024 gracefully', async () => { - const streams = await source.handle(ctx, 'movie', new TmdbId(931944, undefined, undefined)); - expect(streams).toMatchSnapshot(); - }); - - test('handle rathnam 2024', async () => { - const streams = await source.handle(ctx, 'series', new TmdbId(1171532, undefined, undefined)); - expect(streams).toMatchSnapshot(); - }); - - test('handle stranger things s05e08', async () => { - const streams = await source.handle(ctx, 'series', new TmdbId(66732, 5, 8)); - expect(streams).toMatchSnapshot(); - }); - - test('handle great indian kapil show s03e01', async () => { - const streams = await source.handle(ctx, 'series', new TmdbId(247769, 3, 1)); - expect(streams).toMatchSnapshot(); - }); -}); diff --git a/src/source/XDMovies.ts b/src/source/XDMovies.ts deleted file mode 100644 index 8ed9aaf..0000000 --- a/src/source/XDMovies.ts +++ /dev/null @@ -1,124 +0,0 @@ -import bytes from 'bytes'; -import * as cheerio from 'cheerio'; -import { BasicAcceptedElems, CheerioAPI } from 'cheerio'; -import { AnyNode } from 'domhandler'; -import memoize from 'memoizee'; -import { ContentType } from 'stremio-addon-sdk'; -import { Context, CountryCode, Meta } from '../types'; -import { Fetcher, findCountryCodes, getTmdbId, getTmdbNameAndYear, Id, TmdbId } from '../utils'; -import { Source, SourceResult } from './Source'; - -interface GetTokenResponse { - token: string; -} - -interface SearchResponsePartial { - tmdb_id: number; - path: string; - audio_languages: string; -} - -interface LinkProtectorResponse { - sessionId: string; - token: string; -} - -export class XDMovies extends Source { - public readonly id = 'xdmovies'; - - public readonly label = 'XDMovies'; - - public override readonly useOnlyWithMaxUrlsFound = 1; - - public readonly contentTypes: ContentType[] = ['movie', 'series']; - - public readonly countryCodes: CountryCode[] = [CountryCode.multi, CountryCode.hi, CountryCode.ta, CountryCode.te, CountryCode.ml, CountryCode.bl, CountryCode.mr, CountryCode.kn, CountryCode.ja, CountryCode.ko, CountryCode.pa, CountryCode.gu]; - - public readonly baseUrl = 'https://new.xdmovies.wtf'; - - private readonly fetcher: Fetcher; - - public constructor(fetcher: Fetcher) { - super(); - - this.fetcher = fetcher; - - this.getToken = memoize(this.getToken, { - maxAge: 3600000, // 1 hour - normalizer: () => 'getToken', - }); - } - - public async handleInternal(ctx: Context, _type: string, id: Id): Promise { - const tmdbId = await getTmdbId(ctx, this.fetcher, id); - - const token = await this.getToken(ctx); - - const searchResponseEntry = await this.search(ctx, tmdbId, token); - if (!searchResponseEntry) { - return []; - } - - const html = await this.fetcher.text(ctx, new URL(searchResponseEntry.path, this.baseUrl)); - const $ = cheerio.load(html); - - if (tmdbId.season) { - return Promise.all( - $(`#season-episodes-${tmdbId.season} .quality-section .episode-card:nth-child(${tmdbId.episode})`) - .map(async (_i, el) => await this.extractSourceResults(ctx, $, el, searchResponseEntry)) - .toArray(), - ); - } - - return Promise.all( - $(`.download-item`) - .map(async (_i, el) => await this.extractSourceResults(ctx, $, el, searchResponseEntry)) - .toArray(), - ); - }; - - private readonly getToken = async (ctx: Context): Promise => { - const getTokenUrl = new URL('/php/get_token.php', this.baseUrl); - const getTokenResponse = (await this.fetcher.json(ctx, getTokenUrl)) as GetTokenResponse; - - return getTokenResponse.token; - }; - - private readonly search = async (ctx: Context, tmdbId: TmdbId, token: string): Promise => { - const [name] = await getTmdbNameAndYear(ctx, this.fetcher, tmdbId); - - const searchUrl = new URL(`/php/search_api.php?query=${encodeURIComponent(name)}&fuzzy=true`, this.baseUrl); - const searchResponse = (await this.fetcher.json(ctx, searchUrl, { headers: { 'X-Auth-Token': token, 'X-Requested-With': 'XMLHttpRequest' } })) as SearchResponsePartial[]; - - return searchResponse.find(searchResponseEntry => searchResponseEntry.tmdb_id === tmdbId.id); - }; - - private readonly extractSourceResults = async (ctx: Context, $: CheerioAPI, el: BasicAcceptedElems, searchResponse: SearchResponsePartial): Promise => { - const localHtml = $(el).html() as string; - - const sizeMatch = localHtml.match(/([\d.]+ ?[GM]B)/); - const heightMatch = localHtml.match(/\d{3,}p/) as string[]; - - const meta: Meta = { - countryCodes: [CountryCode.multi, ...findCountryCodes(searchResponse.audio_languages), ...findCountryCodes(localHtml)], - height: parseInt(heightMatch[0] as string), - title: $('.custom-title, .episode-title', el).text().trim(), - ...(sizeMatch && { bytes: bytes.parse(sizeMatch[1] as string) as number }), - }; - - const url = $('a', el) - .map((_i, el) => new URL($(el).attr('href') as string)) - .get(0) as URL; - - if (!url.host.startsWith('link.')) { - return { url, meta }; - } - - const linkProtectorUrl = await this.fetcher.getFinalRedirectUrl(ctx, url, undefined, 1); - const code = linkProtectorUrl.pathname.split('/').pop() as string; - - const linkProtectorResponse = JSON.parse(await this.fetcher.textPost(ctx, new URL('/api/session', linkProtectorUrl), JSON.stringify({ code }), { headers: { 'Content-Type': 'application/json' } })) as LinkProtectorResponse; - - return { url: await this.fetcher.getFinalRedirectUrl(ctx, new URL(`/go/${linkProtectorResponse.sessionId}?t=${encodeURIComponent(linkProtectorResponse.token)}`, linkProtectorUrl), undefined, 1), meta }; - }; -} diff --git a/src/source/__fixtures__/XDMovies/head-https:latestnewsonline.sbs-1ed978c16a108e1dcc29a2b8ff24b1c7 b/src/source/__fixtures__/XDMovies/head-https:latestnewsonline.sbs-1ed978c16a108e1dcc29a2b8ff24b1c7 deleted file mode 100644 index 5d7b2d7..0000000 --- a/src/source/__fixtures__/XDMovies/head-https:latestnewsonline.sbs-1ed978c16a108e1dcc29a2b8ff24b1c7 +++ /dev/null @@ -1 +0,0 @@ -{"date":"Sat, 21 Feb 2026 15:08:48 GMT","content-type":"text/html; charset=utf-8","connection":"close","access-control-allow-origin":"*","content-security-policy":"default-src 'self';script-src 'self' 'unsafe-inline' 'unsafe-eval' *;style-src 'self' 'unsafe-inline' *;font-src 'self' *;img-src 'self' data: blob: *;frame-src *;connect-src 'self' *;child-src *;worker-src 'self' blob: *;base-uri 'self';form-action 'self';frame-ancestors 'self';object-src 'none';script-src-attr 'none';upgrade-insecure-requests","cross-origin-opener-policy":"same-origin","cross-origin-resource-policy":"same-origin","location":"https://hubcloud.foo/drive/8mxktxm8ho4ib44","origin-agent-cluster":"?1","referrer-policy":"no-referrer","strict-transport-security":"max-age=15552000; includeSubDomains","vary":"Accept","x-content-type-options":"nosniff","x-dns-prefetch-control":"off","x-download-options":"noopen","x-frame-options":"SAMEORIGIN","x-permitted-cross-domain-policies":"none","x-xss-protection":"0","nel":"{\"report_to\":\"cf-nel\",\"success_fraction\":0.0,\"max_age\":604800}","cf-cache-status":"DYNAMIC","report-to":"{\"group\":\"cf-nel\",\"max_age\":604800,\"endpoints\":[{\"url\":\"https://a.nel.cloudflare.com/report/v4?s=%2F%2BaySyfZTL909VR98p7H%2Fx%2FRnjzst1hN1mI6Nws68fcimHoIKHREFiIGCW6gE4bsxbChyQq%2FYtE4alltLFU6sO7pj65QXTQ3iCC9qRuL88BtccYX\"}]}","server":"cloudflare","cf-ray":"9d1729440d0bdc8e-FRA","alt-svc":"h3=\":443\"; ma=86400"} \ No newline at end of file diff --git a/src/source/__fixtures__/XDMovies/head-https:latestnewsonline.sbs-50da78c27662217d62578b1b48bf8b7a b/src/source/__fixtures__/XDMovies/head-https:latestnewsonline.sbs-50da78c27662217d62578b1b48bf8b7a deleted file mode 100644 index 4202528..0000000 --- a/src/source/__fixtures__/XDMovies/head-https:latestnewsonline.sbs-50da78c27662217d62578b1b48bf8b7a +++ /dev/null @@ -1 +0,0 @@ -{"date":"Sat, 21 Feb 2026 15:08:48 GMT","content-type":"text/html; charset=utf-8","connection":"close","access-control-allow-origin":"*","content-security-policy":"default-src 'self';script-src 'self' 'unsafe-inline' 'unsafe-eval' *;style-src 'self' 'unsafe-inline' *;font-src 'self' *;img-src 'self' data: blob: *;frame-src *;connect-src 'self' *;child-src *;worker-src 'self' blob: *;base-uri 'self';form-action 'self';frame-ancestors 'self';object-src 'none';script-src-attr 'none';upgrade-insecure-requests","cross-origin-opener-policy":"same-origin","cross-origin-resource-policy":"same-origin","location":"https://hubcloud.foo/drive/d140ytrad4r228o","origin-agent-cluster":"?1","referrer-policy":"no-referrer","strict-transport-security":"max-age=15552000; includeSubDomains","vary":"Accept","x-content-type-options":"nosniff","x-dns-prefetch-control":"off","x-download-options":"noopen","x-frame-options":"SAMEORIGIN","x-permitted-cross-domain-policies":"none","x-xss-protection":"0","nel":"{\"report_to\":\"cf-nel\",\"success_fraction\":0.0,\"max_age\":604800}","cf-cache-status":"DYNAMIC","report-to":"{\"group\":\"cf-nel\",\"max_age\":604800,\"endpoints\":[{\"url\":\"https://a.nel.cloudflare.com/report/v4?s=8Zhyc%2Bs0DGQKKaIL6wXC6fczT4jvg8CNlU%2FTCZ2JNpytPcaSS5gNNta0m%2Fea20GODKrq915ID32W6nNtkDl1MfHE%2Fduw9Uhs8x8XdwxTEasmaA7c\"}]}","server":"cloudflare","cf-ray":"9d1729440cecdc8e-FRA","alt-svc":"h3=\":443\"; ma=86400"} \ No newline at end of file diff --git a/src/source/__fixtures__/XDMovies/head-https:latestnewsonline.sbs-6cbf46c24bab2c8b204360089656ff90 b/src/source/__fixtures__/XDMovies/head-https:latestnewsonline.sbs-6cbf46c24bab2c8b204360089656ff90 deleted file mode 100644 index 7c56d59..0000000 --- a/src/source/__fixtures__/XDMovies/head-https:latestnewsonline.sbs-6cbf46c24bab2c8b204360089656ff90 +++ /dev/null @@ -1 +0,0 @@ -{"date":"Sat, 21 Feb 2026 15:08:48 GMT","content-type":"text/html; charset=utf-8","connection":"close","access-control-allow-origin":"*","content-security-policy":"default-src 'self';script-src 'self' 'unsafe-inline' 'unsafe-eval' *;style-src 'self' 'unsafe-inline' *;font-src 'self' *;img-src 'self' data: blob: *;frame-src *;connect-src 'self' *;child-src *;worker-src 'self' blob: *;base-uri 'self';form-action 'self';frame-ancestors 'self';object-src 'none';script-src-attr 'none';upgrade-insecure-requests","cross-origin-opener-policy":"same-origin","cross-origin-resource-policy":"same-origin","location":"https://hubcloud.foo/drive/ft5h778dgcot8yd","origin-agent-cluster":"?1","referrer-policy":"no-referrer","strict-transport-security":"max-age=15552000; includeSubDomains","vary":"Accept","x-content-type-options":"nosniff","x-dns-prefetch-control":"off","x-download-options":"noopen","x-frame-options":"SAMEORIGIN","x-permitted-cross-domain-policies":"none","x-xss-protection":"0","nel":"{\"report_to\":\"cf-nel\",\"success_fraction\":0.0,\"max_age\":604800}","cf-cache-status":"DYNAMIC","report-to":"{\"group\":\"cf-nel\",\"max_age\":604800,\"endpoints\":[{\"url\":\"https://a.nel.cloudflare.com/report/v4?s=FiZw4IH3wmQEajkazIzqB8AplFbd%2BnBaQxQe7ZtIvIhct5uSbZAt1rxIAIrCxfz9KBmPPOC71ZK%2BFntMbyGsyNLiQiCYqAhw6v7MJkcoDiiVMgES\"}]}","server":"cloudflare","cf-ray":"9d172943fcd9dc8e-FRA","alt-svc":"h3=\":443\"; ma=86400"} \ No newline at end of file diff --git a/src/source/__fixtures__/XDMovies/head-https:latestnewsonline.sbs-7ab705d3c92741a3f68dc70317d1aeb6 b/src/source/__fixtures__/XDMovies/head-https:latestnewsonline.sbs-7ab705d3c92741a3f68dc70317d1aeb6 deleted file mode 100644 index a0f283b..0000000 --- a/src/source/__fixtures__/XDMovies/head-https:latestnewsonline.sbs-7ab705d3c92741a3f68dc70317d1aeb6 +++ /dev/null @@ -1 +0,0 @@ -{"date":"Sat, 21 Feb 2026 15:08:48 GMT","content-type":"text/html; charset=utf-8","connection":"close","access-control-allow-origin":"*","content-security-policy":"default-src 'self';script-src 'self' 'unsafe-inline' 'unsafe-eval' *;style-src 'self' 'unsafe-inline' *;font-src 'self' *;img-src 'self' data: blob: *;frame-src *;connect-src 'self' *;child-src *;worker-src 'self' blob: *;base-uri 'self';form-action 'self';frame-ancestors 'self';object-src 'none';script-src-attr 'none';upgrade-insecure-requests","cross-origin-opener-policy":"same-origin","cross-origin-resource-policy":"same-origin","location":"https://hubcloud.foo/drive/vfhor1uv59jkrha","origin-agent-cluster":"?1","referrer-policy":"no-referrer","strict-transport-security":"max-age=15552000; includeSubDomains","vary":"Accept","x-content-type-options":"nosniff","x-dns-prefetch-control":"off","x-download-options":"noopen","x-frame-options":"SAMEORIGIN","x-permitted-cross-domain-policies":"none","x-xss-protection":"0","nel":"{\"report_to\":\"cf-nel\",\"success_fraction\":0.0,\"max_age\":604800}","cf-cache-status":"DYNAMIC","report-to":"{\"group\":\"cf-nel\",\"max_age\":604800,\"endpoints\":[{\"url\":\"https://a.nel.cloudflare.com/report/v4?s=rkHnS3hP%2FRiBmfg%2FKJDPDh8yNqrsIC8McLatK2k1xrrqdTa5qhf4f09Zzae%2Bau0L5mnZc0fyq7i2gV7i4YIrmVsKsnMQkWG9RcEQsMKnDQPsjynW\"}]}","server":"cloudflare","cf-ray":"9d1729440cfbdc8e-FRA","alt-svc":"h3=\":443\"; ma=86400"} \ No newline at end of file diff --git a/src/source/__fixtures__/XDMovies/head-https:latestnewsonline.sbs-8e2fb3c5288d7aa38f126e211958cc04 b/src/source/__fixtures__/XDMovies/head-https:latestnewsonline.sbs-8e2fb3c5288d7aa38f126e211958cc04 deleted file mode 100644 index 0a02794..0000000 --- a/src/source/__fixtures__/XDMovies/head-https:latestnewsonline.sbs-8e2fb3c5288d7aa38f126e211958cc04 +++ /dev/null @@ -1 +0,0 @@ -{"date":"Sat, 21 Feb 2026 15:08:48 GMT","content-type":"text/html; charset=utf-8","connection":"close","access-control-allow-origin":"*","content-security-policy":"default-src 'self';script-src 'self' 'unsafe-inline' 'unsafe-eval' *;style-src 'self' 'unsafe-inline' *;font-src 'self' *;img-src 'self' data: blob: *;frame-src *;connect-src 'self' *;child-src *;worker-src 'self' blob: *;base-uri 'self';form-action 'self';frame-ancestors 'self';object-src 'none';script-src-attr 'none';upgrade-insecure-requests","cross-origin-opener-policy":"same-origin","cross-origin-resource-policy":"same-origin","location":"https://hubcloud.foo/drive/qgdndi5j1rvil2l","origin-agent-cluster":"?1","referrer-policy":"no-referrer","strict-transport-security":"max-age=15552000; includeSubDomains","vary":"Accept","x-content-type-options":"nosniff","x-dns-prefetch-control":"off","x-download-options":"noopen","x-frame-options":"SAMEORIGIN","x-permitted-cross-domain-policies":"none","x-xss-protection":"0","nel":"{\"report_to\":\"cf-nel\",\"success_fraction\":0.0,\"max_age\":604800}","cf-cache-status":"DYNAMIC","report-to":"{\"group\":\"cf-nel\",\"max_age\":604800,\"endpoints\":[{\"url\":\"https://a.nel.cloudflare.com/report/v4?s=%2BzqAOMEMSSXvLOiH3ZLMYGZPHwvGAFebol0MBXpTfaLhiTTmm3ZzQuDLbYwFFS9AdqZMfwMj%2BH%2F4CXrSSs13i3dkQ2%2F3NbklPNOpkeqEYRQ4oA4p\"}]}","server":"cloudflare","cf-ray":"9d17293fcf0ddc8e-FRA","alt-svc":"h3=\":443\"; ma=86400"} \ No newline at end of file diff --git a/src/source/__fixtures__/XDMovies/head-https:latestnewsonline.sbs-a02ba8b99a9b906c5e39fbd7a9e50753 b/src/source/__fixtures__/XDMovies/head-https:latestnewsonline.sbs-a02ba8b99a9b906c5e39fbd7a9e50753 deleted file mode 100644 index 4d82218..0000000 --- a/src/source/__fixtures__/XDMovies/head-https:latestnewsonline.sbs-a02ba8b99a9b906c5e39fbd7a9e50753 +++ /dev/null @@ -1 +0,0 @@ -{"date":"Sat, 21 Feb 2026 15:08:48 GMT","content-type":"text/html; charset=utf-8","connection":"close","access-control-allow-origin":"*","content-security-policy":"default-src 'self';script-src 'self' 'unsafe-inline' 'unsafe-eval' *;style-src 'self' 'unsafe-inline' *;font-src 'self' *;img-src 'self' data: blob: *;frame-src *;connect-src 'self' *;child-src *;worker-src 'self' blob: *;base-uri 'self';form-action 'self';frame-ancestors 'self';object-src 'none';script-src-attr 'none';upgrade-insecure-requests","cross-origin-opener-policy":"same-origin","cross-origin-resource-policy":"same-origin","location":"https://hubcloud.foo/drive/k7sgskvmmzppzap","origin-agent-cluster":"?1","referrer-policy":"no-referrer","strict-transport-security":"max-age=15552000; includeSubDomains","vary":"Accept","x-content-type-options":"nosniff","x-dns-prefetch-control":"off","x-download-options":"noopen","x-frame-options":"SAMEORIGIN","x-permitted-cross-domain-policies":"none","x-xss-protection":"0","nel":"{\"report_to\":\"cf-nel\",\"success_fraction\":0.0,\"max_age\":604800}","cf-cache-status":"DYNAMIC","report-to":"{\"group\":\"cf-nel\",\"max_age\":604800,\"endpoints\":[{\"url\":\"https://a.nel.cloudflare.com/report/v4?s=fDE3lNmDY2hy63SlcLJm5f4GQQQHGIi268MBhJ0xAh0dzIEWQRnEDbXzVbbWKuR1Aqgp63JfmAd%2BHQEpVDQPhh5ERBGTX5OygGAmYLtsYyr3opJV\"}]}","server":"cloudflare","cf-ray":"9d172943fcc4dc8e-FRA","alt-svc":"h3=\":443\"; ma=86400"} \ No newline at end of file diff --git a/src/source/__fixtures__/XDMovies/head-https:latestnewsonline.sbs-a7003c95fbfcb5c955cc0c3513c7c9fb b/src/source/__fixtures__/XDMovies/head-https:latestnewsonline.sbs-a7003c95fbfcb5c955cc0c3513c7c9fb deleted file mode 100644 index 25571a8..0000000 --- a/src/source/__fixtures__/XDMovies/head-https:latestnewsonline.sbs-a7003c95fbfcb5c955cc0c3513c7c9fb +++ /dev/null @@ -1 +0,0 @@ -{"date":"Sat, 21 Feb 2026 15:08:48 GMT","content-type":"text/html; charset=utf-8","connection":"close","access-control-allow-origin":"*","content-security-policy":"default-src 'self';script-src 'self' 'unsafe-inline' 'unsafe-eval' *;style-src 'self' 'unsafe-inline' *;font-src 'self' *;img-src 'self' data: blob: *;frame-src *;connect-src 'self' *;child-src *;worker-src 'self' blob: *;base-uri 'self';form-action 'self';frame-ancestors 'self';object-src 'none';script-src-attr 'none';upgrade-insecure-requests","cross-origin-opener-policy":"same-origin","cross-origin-resource-policy":"same-origin","location":"https://hubcloud.foo/drive/bzxqjl1vkvdxsvy","origin-agent-cluster":"?1","referrer-policy":"no-referrer","strict-transport-security":"max-age=15552000; includeSubDomains","vary":"Accept","x-content-type-options":"nosniff","x-dns-prefetch-control":"off","x-download-options":"noopen","x-frame-options":"SAMEORIGIN","x-permitted-cross-domain-policies":"none","x-xss-protection":"0","nel":"{\"report_to\":\"cf-nel\",\"success_fraction\":0.0,\"max_age\":604800}","cf-cache-status":"DYNAMIC","report-to":"{\"group\":\"cf-nel\",\"max_age\":604800,\"endpoints\":[{\"url\":\"https://a.nel.cloudflare.com/report/v4?s=k6i0vuY1kWVqKa1mhrJ5xiVwgVHUwHbPtJJo8I4MMOXkPjIsCrvM3AIA2iGd%2F9U%2F4ueAb7vaUIERsbyXibSo0duN8I561Gnr7qxkEskAuLVuW4zW\"}]}","server":"cloudflare","cf-ray":"9d172943ec87dc8e-FRA","alt-svc":"h3=\":443\"; ma=86400"} \ No newline at end of file diff --git a/src/source/__fixtures__/XDMovies/head-https:latestnewsonline.sbs-a9c730ab2ef70c6b38fd02209d654bee b/src/source/__fixtures__/XDMovies/head-https:latestnewsonline.sbs-a9c730ab2ef70c6b38fd02209d654bee deleted file mode 100644 index f9560c7..0000000 --- a/src/source/__fixtures__/XDMovies/head-https:latestnewsonline.sbs-a9c730ab2ef70c6b38fd02209d654bee +++ /dev/null @@ -1 +0,0 @@ -{"date":"Sat, 21 Feb 2026 15:08:48 GMT","content-type":"text/html; charset=utf-8","connection":"close","access-control-allow-origin":"*","content-security-policy":"default-src 'self';script-src 'self' 'unsafe-inline' 'unsafe-eval' *;style-src 'self' 'unsafe-inline' *;font-src 'self' *;img-src 'self' data: blob: *;frame-src *;connect-src 'self' *;child-src *;worker-src 'self' blob: *;base-uri 'self';form-action 'self';frame-ancestors 'self';object-src 'none';script-src-attr 'none';upgrade-insecure-requests","cross-origin-opener-policy":"same-origin","cross-origin-resource-policy":"same-origin","location":"https://hubcloud.foo/drive/iy7587kppeg6b6p","origin-agent-cluster":"?1","referrer-policy":"no-referrer","strict-transport-security":"max-age=15552000; includeSubDomains","vary":"Accept","x-content-type-options":"nosniff","x-dns-prefetch-control":"off","x-download-options":"noopen","x-frame-options":"SAMEORIGIN","x-permitted-cross-domain-policies":"none","x-xss-protection":"0","nel":"{\"report_to\":\"cf-nel\",\"success_fraction\":0.0,\"max_age\":604800}","cf-cache-status":"DYNAMIC","report-to":"{\"group\":\"cf-nel\",\"max_age\":604800,\"endpoints\":[{\"url\":\"https://a.nel.cloudflare.com/report/v4?s=Hy8rKdEjXdScLLaQ5L5djfiZ3FdNEDSxwesu8r2%2BB4qvlsgrPjGBXEvou0eoDWFG5VWxxG3kvWR8sL2DrPJR0BOHxPgPdmUCJdbPixtAgIq6ERA1\"}]}","server":"cloudflare","cf-ray":"9d17293fcefadc8e-FRA","alt-svc":"h3=\":443\"; ma=86400"} \ No newline at end of file diff --git a/src/source/__fixtures__/XDMovies/head-https:latestnewsonline.sbs-b8f54b26d380dfa5122acd2b1b9d1450 b/src/source/__fixtures__/XDMovies/head-https:latestnewsonline.sbs-b8f54b26d380dfa5122acd2b1b9d1450 deleted file mode 100644 index 705ca8d..0000000 --- a/src/source/__fixtures__/XDMovies/head-https:latestnewsonline.sbs-b8f54b26d380dfa5122acd2b1b9d1450 +++ /dev/null @@ -1 +0,0 @@ -{"date":"Sat, 21 Feb 2026 15:08:48 GMT","content-type":"text/html; charset=utf-8","connection":"close","access-control-allow-origin":"*","content-security-policy":"default-src 'self';script-src 'self' 'unsafe-inline' 'unsafe-eval' *;style-src 'self' 'unsafe-inline' *;font-src 'self' *;img-src 'self' data: blob: *;frame-src *;connect-src 'self' *;child-src *;worker-src 'self' blob: *;base-uri 'self';form-action 'self';frame-ancestors 'self';object-src 'none';script-src-attr 'none';upgrade-insecure-requests","cross-origin-opener-policy":"same-origin","cross-origin-resource-policy":"same-origin","location":"https://hubcloud.foo/drive/oae0mzzzje1xrvy","origin-agent-cluster":"?1","referrer-policy":"no-referrer","strict-transport-security":"max-age=15552000; includeSubDomains","vary":"Accept","x-content-type-options":"nosniff","x-dns-prefetch-control":"off","x-download-options":"noopen","x-frame-options":"SAMEORIGIN","x-permitted-cross-domain-policies":"none","x-xss-protection":"0","nel":"{\"report_to\":\"cf-nel\",\"success_fraction\":0.0,\"max_age\":604800}","cf-cache-status":"DYNAMIC","report-to":"{\"group\":\"cf-nel\",\"max_age\":604800,\"endpoints\":[{\"url\":\"https://a.nel.cloudflare.com/report/v4?s=NF4aFJ7QDuTx16D2KtdTOdLlUTr9E9ioqVTWWUtHwc0AWvHXWnqicAG0%2FZZ%2Bzcz6q3Sl5iN6%2F5XXSbxYxqw1rkLS%2B9RhfqeA6WN3koS9QkCzdhYf\"}]}","server":"cloudflare","cf-ray":"9d17293fdf22dc8e-FRA","alt-svc":"h3=\":443\"; ma=86400"} \ No newline at end of file diff --git a/src/source/__fixtures__/XDMovies/head-https:latestnewsonline.sbs-bb740f11cfc4f29455bc4d57806a99fb b/src/source/__fixtures__/XDMovies/head-https:latestnewsonline.sbs-bb740f11cfc4f29455bc4d57806a99fb deleted file mode 100644 index 385e440..0000000 --- a/src/source/__fixtures__/XDMovies/head-https:latestnewsonline.sbs-bb740f11cfc4f29455bc4d57806a99fb +++ /dev/null @@ -1 +0,0 @@ -{"date":"Sat, 21 Feb 2026 15:08:48 GMT","content-type":"text/html; charset=utf-8","connection":"close","access-control-allow-origin":"*","content-security-policy":"default-src 'self';script-src 'self' 'unsafe-inline' 'unsafe-eval' *;style-src 'self' 'unsafe-inline' *;font-src 'self' *;img-src 'self' data: blob: *;frame-src *;connect-src 'self' *;child-src *;worker-src 'self' blob: *;base-uri 'self';form-action 'self';frame-ancestors 'self';object-src 'none';script-src-attr 'none';upgrade-insecure-requests","cross-origin-opener-policy":"same-origin","cross-origin-resource-policy":"same-origin","location":"https://hubcloud.foo/drive/dn5g8g5drixrrl1","origin-agent-cluster":"?1","referrer-policy":"no-referrer","strict-transport-security":"max-age=15552000; includeSubDomains","vary":"Accept","x-content-type-options":"nosniff","x-dns-prefetch-control":"off","x-download-options":"noopen","x-frame-options":"SAMEORIGIN","x-permitted-cross-domain-policies":"none","x-xss-protection":"0","nel":"{\"report_to\":\"cf-nel\",\"success_fraction\":0.0,\"max_age\":604800}","cf-cache-status":"DYNAMIC","report-to":"{\"group\":\"cf-nel\",\"max_age\":604800,\"endpoints\":[{\"url\":\"https://a.nel.cloudflare.com/report/v4?s=n%2FZ6Du96AT%2FQNvc2wtKQyBV0q8uJyMUPToIIeIaTaAKuMnUGxFW39kwvXjARJ2nScPGcE01zoerPRrdWpRc%2FNjOABVuecJyUyed17fusyDkA%2BeZD\"}]}","server":"cloudflare","cf-ray":"9d17293fcf04dc8e-FRA","alt-svc":"h3=\":443\"; ma=86400"} \ No newline at end of file diff --git a/src/source/__fixtures__/XDMovies/head-https:latestnewsonline.sbs-e40e983ce166633be1cf50fa8e7c667e b/src/source/__fixtures__/XDMovies/head-https:latestnewsonline.sbs-e40e983ce166633be1cf50fa8e7c667e deleted file mode 100644 index c5eacbc..0000000 --- a/src/source/__fixtures__/XDMovies/head-https:latestnewsonline.sbs-e40e983ce166633be1cf50fa8e7c667e +++ /dev/null @@ -1 +0,0 @@ -{"date":"Sat, 21 Feb 2026 15:08:48 GMT","content-type":"text/html; charset=utf-8","connection":"close","access-control-allow-origin":"*","content-security-policy":"default-src 'self';script-src 'self' 'unsafe-inline' 'unsafe-eval' *;style-src 'self' 'unsafe-inline' *;font-src 'self' *;img-src 'self' data: blob: *;frame-src *;connect-src 'self' *;child-src *;worker-src 'self' blob: *;base-uri 'self';form-action 'self';frame-ancestors 'self';object-src 'none';script-src-attr 'none';upgrade-insecure-requests","cross-origin-opener-policy":"same-origin","cross-origin-resource-policy":"same-origin","location":"https://hubcloud.foo/drive/njntlayllkcrtb1","origin-agent-cluster":"?1","referrer-policy":"no-referrer","strict-transport-security":"max-age=15552000; includeSubDomains","vary":"Accept","x-content-type-options":"nosniff","x-dns-prefetch-control":"off","x-download-options":"noopen","x-frame-options":"SAMEORIGIN","x-permitted-cross-domain-policies":"none","x-xss-protection":"0","nel":"{\"report_to\":\"cf-nel\",\"success_fraction\":0.0,\"max_age\":604800}","cf-cache-status":"DYNAMIC","report-to":"{\"group\":\"cf-nel\",\"max_age\":604800,\"endpoints\":[{\"url\":\"https://a.nel.cloudflare.com/report/v4?s=oeW%2BJaUxMyxj0nyQ12%2FyAMyOoSZtBC%2FqkZRm8zuQ%2FDysnI%2B4ikr9W5OFMtkl2VOafJCtX%2FWhVIqIJiryZFVkZWC%2FJCZZiedN9If1wnyt1EZpR0H%2B\"}]}","server":"cloudflare","cf-ray":"9d1729441d23dc8e-FRA","alt-svc":"h3=\":443\"; ma=86400"} \ No newline at end of file diff --git a/src/source/__fixtures__/XDMovies/head-https:link.xdmovies.wtfdownload238Imokv33hC9nehrVWaxNzC7kz54SMaqKq95YTJdB4 b/src/source/__fixtures__/XDMovies/head-https:link.xdmovies.wtfdownload238Imokv33hC9nehrVWaxNzC7kz54SMaqKq95YTJdB4 deleted file mode 100644 index 82e5009..0000000 --- a/src/source/__fixtures__/XDMovies/head-https:link.xdmovies.wtfdownload238Imokv33hC9nehrVWaxNzC7kz54SMaqKq95YTJdB4 +++ /dev/null @@ -1 +0,0 @@ -{"date":"Sat, 21 Feb 2026 15:08:48 GMT","content-type":"text/html; charset=utf-8","connection":"close","access-control-allow-origin":"*","location":"https://latestnewsonline.sbs/r/BaRR5UMG","vary":"Accept","x-powered-by":"Express","nel":"{\"report_to\":\"cf-nel\",\"success_fraction\":0.0,\"max_age\":604800}","cf-cache-status":"DYNAMIC","report-to":"{\"group\":\"cf-nel\",\"max_age\":604800,\"endpoints\":[{\"url\":\"https://a.nel.cloudflare.com/report/v4?s=IhQkwr3mUh1JdZHDmIC9WgouRL7f%2BwVwCa2cN1OkxsfrOfRuO5khw6QI81Trd6%2Bi3YnWtmmb1X8Z%2FA5EhjPOilIwT%2Frqaq7XED52RkP62zDV\"}]}","server":"cloudflare","cf-ray":"9d1729418c6ddc8e-FRA","alt-svc":"h3=\":443\"; ma=86400"} \ No newline at end of file diff --git a/src/source/__fixtures__/XDMovies/head-https:link.xdmovies.wtfdownload9Ooil2yHkzXuOkmMpIxEVDg5gPrJRWd8_Jz4GDWOnBY b/src/source/__fixtures__/XDMovies/head-https:link.xdmovies.wtfdownload9Ooil2yHkzXuOkmMpIxEVDg5gPrJRWd8_Jz4GDWOnBY deleted file mode 100644 index beb291d..0000000 --- a/src/source/__fixtures__/XDMovies/head-https:link.xdmovies.wtfdownload9Ooil2yHkzXuOkmMpIxEVDg5gPrJRWd8_Jz4GDWOnBY +++ /dev/null @@ -1 +0,0 @@ -{"date":"Sat, 21 Feb 2026 15:08:48 GMT","content-type":"text/html; charset=utf-8","connection":"close","access-control-allow-origin":"*","location":"https://latestnewsonline.sbs/r/w4NVeV6B","vary":"Accept","x-powered-by":"Express","nel":"{\"report_to\":\"cf-nel\",\"success_fraction\":0.0,\"max_age\":604800}","cf-cache-status":"DYNAMIC","report-to":"{\"group\":\"cf-nel\",\"max_age\":604800,\"endpoints\":[{\"url\":\"https://a.nel.cloudflare.com/report/v4?s=fD2RsEHhRI9YP8e6EwpUqYuJlj0kyWJt1pyrRc4%2BaA8JqidFemNOMquJSdk2bbyz34cePdu6cl%2FeqibsL6%2FjdIFNFlVrktxBiWvpa2eW3lgY\"}]}","server":"cloudflare","cf-ray":"9d1729419c7fdc8e-FRA","alt-svc":"h3=\":443\"; ma=86400"} \ No newline at end of file diff --git a/src/source/__fixtures__/XDMovies/head-https:link.xdmovies.wtfdownloadN5XQL_zP50ho1lSoqBaA1HcFjvwTlc6f9pXGcLZ_UZ8 b/src/source/__fixtures__/XDMovies/head-https:link.xdmovies.wtfdownloadN5XQL_zP50ho1lSoqBaA1HcFjvwTlc6f9pXGcLZ_UZ8 deleted file mode 100644 index 158b592..0000000 --- a/src/source/__fixtures__/XDMovies/head-https:link.xdmovies.wtfdownloadN5XQL_zP50ho1lSoqBaA1HcFjvwTlc6f9pXGcLZ_UZ8 +++ /dev/null @@ -1 +0,0 @@ -{"date":"Sat, 21 Feb 2026 15:08:48 GMT","content-type":"text/html; charset=utf-8","connection":"close","access-control-allow-origin":"*","location":"https://latestnewsonline.sbs/r/g7gAx_YU","vary":"Accept","x-powered-by":"Express","nel":"{\"report_to\":\"cf-nel\",\"success_fraction\":0.0,\"max_age\":604800}","cf-cache-status":"DYNAMIC","report-to":"{\"group\":\"cf-nel\",\"max_age\":604800,\"endpoints\":[{\"url\":\"https://a.nel.cloudflare.com/report/v4?s=LstFtbK%2FVTtzB7KVOKCXP2NTd1w4jlBREu1dc0LOzaYYSTAZbHmE1Bgo6QOYzSTU2a6XZGIJbRh2nLhDl4S7l6DeV7%2F0bOK3wtQgJQKfbMRh\"}]}","server":"cloudflare","cf-ray":"9d172941acbadc8e-FRA","alt-svc":"h3=\":443\"; ma=86400"} \ No newline at end of file diff --git a/src/source/__fixtures__/XDMovies/head-https:link.xdmovies.wtfdownloadN7UeLH7ls0Eo2sRzKB6HnrDvJFkOCUfYoTOjoGSox9A b/src/source/__fixtures__/XDMovies/head-https:link.xdmovies.wtfdownloadN7UeLH7ls0Eo2sRzKB6HnrDvJFkOCUfYoTOjoGSox9A deleted file mode 100644 index 6c568ab..0000000 --- a/src/source/__fixtures__/XDMovies/head-https:link.xdmovies.wtfdownloadN7UeLH7ls0Eo2sRzKB6HnrDvJFkOCUfYoTOjoGSox9A +++ /dev/null @@ -1 +0,0 @@ -{"date":"Sat, 21 Feb 2026 15:08:48 GMT","content-type":"text/html; charset=utf-8","connection":"close","access-control-allow-origin":"*","location":"https://latestnewsonline.sbs/r/mnVT6bro","vary":"Accept","x-powered-by":"Express","nel":"{\"report_to\":\"cf-nel\",\"success_fraction\":0.0,\"max_age\":604800}","cf-cache-status":"DYNAMIC","report-to":"{\"group\":\"cf-nel\",\"max_age\":604800,\"endpoints\":[{\"url\":\"https://a.nel.cloudflare.com/report/v4?s=xLx3qARvF7TZY1Ey51KGsmyg4e9t0RjiZRFmt8kqW9qgMjk0dVqwKa4xew%2FDA%2Bjit%2BU%2B8NYON7ILpZn21cu87td%2BZwQ9ZmQf%2BQMYSR%2FLkEtJ\"}]}","server":"cloudflare","cf-ray":"9d1729419c8bdc8e-FRA","alt-svc":"h3=\":443\"; ma=86400"} \ No newline at end of file diff --git a/src/source/__fixtures__/XDMovies/head-https:link.xdmovies.wtfdownloadYHbqYlMcSKtmw8aTccl621fRFqJWXxeGHAstPRuA0E4 b/src/source/__fixtures__/XDMovies/head-https:link.xdmovies.wtfdownloadYHbqYlMcSKtmw8aTccl621fRFqJWXxeGHAstPRuA0E4 deleted file mode 100644 index e574144..0000000 --- a/src/source/__fixtures__/XDMovies/head-https:link.xdmovies.wtfdownloadYHbqYlMcSKtmw8aTccl621fRFqJWXxeGHAstPRuA0E4 +++ /dev/null @@ -1 +0,0 @@ -{"date":"Sat, 21 Feb 2026 15:08:46 GMT","content-type":"text/html; charset=utf-8","connection":"close","access-control-allow-origin":"*","location":"https://latestnewsonline.sbs/r/QnDe8y4b","vary":"Accept","x-powered-by":"Express","nel":"{\"report_to\":\"cf-nel\",\"success_fraction\":0.0,\"max_age\":604800}","cf-cache-status":"DYNAMIC","report-to":"{\"group\":\"cf-nel\",\"max_age\":604800,\"endpoints\":[{\"url\":\"https://a.nel.cloudflare.com/report/v4?s=a%2FbO%2BBV9MbdcJHnkgrMU8WIyzFrMpUPfrcWzkm6MuIIHcAOkMdZjw%2BKHZIRkZY%2FRqHg2ao8dIOe2lxI2Mk8RceqTV34WKtdZ2eIQIjBYZIOS\"}]}","server":"cloudflare","cf-ray":"9d1729321c88dc8e-FRA","alt-svc":"h3=\":443\"; ma=86400"} \ No newline at end of file diff --git a/src/source/__fixtures__/XDMovies/head-https:link.xdmovies.wtfdownloadjRGOio1u-fKY3xkz5TKZ4T0goMjdch7D_uzn7561LMo b/src/source/__fixtures__/XDMovies/head-https:link.xdmovies.wtfdownloadjRGOio1u-fKY3xkz5TKZ4T0goMjdch7D_uzn7561LMo deleted file mode 100644 index dbd8938..0000000 --- a/src/source/__fixtures__/XDMovies/head-https:link.xdmovies.wtfdownloadjRGOio1u-fKY3xkz5TKZ4T0goMjdch7D_uzn7561LMo +++ /dev/null @@ -1 +0,0 @@ -{"date":"Sat, 21 Feb 2026 15:08:48 GMT","content-type":"text/html; charset=utf-8","connection":"close","access-control-allow-origin":"*","location":"https://latestnewsonline.sbs/r/hqbV5hDx","vary":"Accept","x-powered-by":"Express","nel":"{\"report_to\":\"cf-nel\",\"success_fraction\":0.0,\"max_age\":604800}","cf-cache-status":"DYNAMIC","report-to":"{\"group\":\"cf-nel\",\"max_age\":604800,\"endpoints\":[{\"url\":\"https://a.nel.cloudflare.com/report/v4?s=xPutid00XlvvxCBj5PtYAbd7Rtbl5T%2BMvrc2I%2Fj2yaBkUkKUoEAe%2FS%2F%2FZiPPMhpil1TQKu8lMw8hm9Ubz%2Bv5R9YaBBFNNbIfuDKvX8t7yuNg\"}]}","server":"cloudflare","cf-ray":"9d1729419c99dc8e-FRA","alt-svc":"h3=\":443\"; ma=86400"} \ No newline at end of file diff --git a/src/source/__fixtures__/XDMovies/head-https:link.xdmovies.wtfdownloadp1Z-Ii4P-ohUxG4Tc93JP_3jl9-7I5ZOifOf0mDT__4 b/src/source/__fixtures__/XDMovies/head-https:link.xdmovies.wtfdownloadp1Z-Ii4P-ohUxG4Tc93JP_3jl9-7I5ZOifOf0mDT__4 deleted file mode 100644 index 2b843fc..0000000 --- a/src/source/__fixtures__/XDMovies/head-https:link.xdmovies.wtfdownloadp1Z-Ii4P-ohUxG4Tc93JP_3jl9-7I5ZOifOf0mDT__4 +++ /dev/null @@ -1 +0,0 @@ -{"date":"Sat, 21 Feb 2026 15:08:46 GMT","content-type":"text/html; charset=utf-8","connection":"close","access-control-allow-origin":"*","location":"https://latestnewsonline.sbs/r/sZ_A30Nc","vary":"Accept","x-powered-by":"Express","nel":"{\"report_to\":\"cf-nel\",\"success_fraction\":0.0,\"max_age\":604800}","cf-cache-status":"DYNAMIC","report-to":"{\"group\":\"cf-nel\",\"max_age\":604800,\"endpoints\":[{\"url\":\"https://a.nel.cloudflare.com/report/v4?s=zZGVXxxImJOtHi56nto6%2FTsT6scQzk5UTQBOX21qHm8Ii1szu7BG0ArcX8D5V%2Ff2%2BDBJaqHXvvI4rAIAhs63mJuCmCtWgR%2BUdIQ5IUyBDFbM\"}]}","server":"cloudflare","cf-ray":"9d1729321c81dc8e-FRA","alt-svc":"h3=\":443\"; ma=86400"} \ No newline at end of file diff --git a/src/source/__fixtures__/XDMovies/head-https:link.xdmovies.wtfdownloadspgEvICetLWnULbCYnmAM0gB_7pNtkDGI-chtTjOteM b/src/source/__fixtures__/XDMovies/head-https:link.xdmovies.wtfdownloadspgEvICetLWnULbCYnmAM0gB_7pNtkDGI-chtTjOteM deleted file mode 100644 index 00bdc9c..0000000 --- a/src/source/__fixtures__/XDMovies/head-https:link.xdmovies.wtfdownloadspgEvICetLWnULbCYnmAM0gB_7pNtkDGI-chtTjOteM +++ /dev/null @@ -1 +0,0 @@ -{"date":"Sat, 21 Feb 2026 15:08:46 GMT","content-type":"text/html; charset=utf-8","connection":"close","access-control-allow-origin":"*","location":"https://latestnewsonline.sbs/r/5U5qFXxQ","vary":"Accept","x-powered-by":"Express","nel":"{\"report_to\":\"cf-nel\",\"success_fraction\":0.0,\"max_age\":604800}","cf-cache-status":"DYNAMIC","report-to":"{\"group\":\"cf-nel\",\"max_age\":604800,\"endpoints\":[{\"url\":\"https://a.nel.cloudflare.com/report/v4?s=SSkmfaCeFe1KqmxswqDyjX2E3vjq5%2FXt3%2BNM72lmSIV8f%2BmlDRPaFaSmWQaVBZbSwtTs6y4JDSkdH4jkVo9QvLGeZsCh7vN6J9zCe7cC%2F%2Fc8\"}]}","server":"cloudflare","cf-ray":"9d1729321c9adc8e-FRA","alt-svc":"h3=\":443\"; ma=86400"} \ No newline at end of file diff --git a/src/source/__fixtures__/XDMovies/head-https:link.xdmovies.wtfdownloaduDqZLyd4df9KZiYQt_NQWfhE-jABCL_F8Um9H8MiGcM b/src/source/__fixtures__/XDMovies/head-https:link.xdmovies.wtfdownloaduDqZLyd4df9KZiYQt_NQWfhE-jABCL_F8Um9H8MiGcM deleted file mode 100644 index 883c533..0000000 --- a/src/source/__fixtures__/XDMovies/head-https:link.xdmovies.wtfdownloaduDqZLyd4df9KZiYQt_NQWfhE-jABCL_F8Um9H8MiGcM +++ /dev/null @@ -1 +0,0 @@ -{"date":"Sat, 21 Feb 2026 15:08:48 GMT","content-type":"text/html; charset=utf-8","connection":"close","access-control-allow-origin":"*","location":"https://latestnewsonline.sbs/r/fVTpJNEC","vary":"Accept","x-powered-by":"Express","nel":"{\"report_to\":\"cf-nel\",\"success_fraction\":0.0,\"max_age\":604800}","cf-cache-status":"DYNAMIC","report-to":"{\"group\":\"cf-nel\",\"max_age\":604800,\"endpoints\":[{\"url\":\"https://a.nel.cloudflare.com/report/v4?s=zIsmq2dJhVSMSxT%2FL1%2BWt%2FR8S7tLj%2BTXt2YI9DIfN3f%2BfvtLdHrfcqNcf%2B6VaxAM8Alz7ED8fnpN5BvdRkjMUhkChKzdCCA%2Fwn8%2B0yq1VLYd\"}]}","server":"cloudflare","cf-ray":"9d172941acabdc8e-FRA","alt-svc":"h3=\":443\"; ma=86400"} \ No newline at end of file diff --git a/src/source/__fixtures__/XDMovies/head-https:link.xdmovies.wtfdownloadwmalyd5onKbfr1gLYnnDbReIeSL2zLC2xAjjlk9Wnkw b/src/source/__fixtures__/XDMovies/head-https:link.xdmovies.wtfdownloadwmalyd5onKbfr1gLYnnDbReIeSL2zLC2xAjjlk9Wnkw deleted file mode 100644 index e567f43..0000000 --- a/src/source/__fixtures__/XDMovies/head-https:link.xdmovies.wtfdownloadwmalyd5onKbfr1gLYnnDbReIeSL2zLC2xAjjlk9Wnkw +++ /dev/null @@ -1 +0,0 @@ -{"date":"Sat, 21 Feb 2026 15:08:48 GMT","content-type":"text/html; charset=utf-8","connection":"close","access-control-allow-origin":"*","location":"https://latestnewsonline.sbs/r/f-yUfi9G","vary":"Accept","x-powered-by":"Express","nel":"{\"report_to\":\"cf-nel\",\"success_fraction\":0.0,\"max_age\":604800}","cf-cache-status":"DYNAMIC","report-to":"{\"group\":\"cf-nel\",\"max_age\":604800,\"endpoints\":[{\"url\":\"https://a.nel.cloudflare.com/report/v4?s=uJwVmVumlrag9R0oJemZhpadW7E9oKprf3ADXg%2FkswvZjgkx3SmOvSmyREsjke0WbYcQOI3hfYNSY8NaYgqA5SkzteLbuNs6nzYdTj23CjKE\"}]}","server":"cloudflare","cf-ray":"9d172941acc6dc8e-FRA","alt-svc":"h3=\":443\"; ma=86400"} \ No newline at end of file diff --git a/src/source/__fixtures__/XDMovies/head-https:link.xdmovies.wtfdownloadxUChy50yiRXZgCF-_8FbzG46XEGYm13LO2JcZMvY5HE b/src/source/__fixtures__/XDMovies/head-https:link.xdmovies.wtfdownloadxUChy50yiRXZgCF-_8FbzG46XEGYm13LO2JcZMvY5HE deleted file mode 100644 index 60b18d8..0000000 --- a/src/source/__fixtures__/XDMovies/head-https:link.xdmovies.wtfdownloadxUChy50yiRXZgCF-_8FbzG46XEGYm13LO2JcZMvY5HE +++ /dev/null @@ -1 +0,0 @@ -{"date":"Sat, 21 Feb 2026 15:08:46 GMT","content-type":"text/html; charset=utf-8","connection":"close","access-control-allow-origin":"*","location":"https://latestnewsonline.sbs/r/S3Wr3K37","vary":"Accept","x-powered-by":"Express","nel":"{\"report_to\":\"cf-nel\",\"success_fraction\":0.0,\"max_age\":604800}","cf-cache-status":"DYNAMIC","report-to":"{\"group\":\"cf-nel\",\"max_age\":604800,\"endpoints\":[{\"url\":\"https://a.nel.cloudflare.com/report/v4?s=K0o%2FbGIkZenKEYqscVutXGE%2FTcTthz2mrFoOGKaBmuPZ6XdC6kkN6OsVlgCo5S3hrIO7yI9Z3c1%2FIX%2B2u8wVWjDT3IM6GCHEgQObU2TI6HGw\"}]}","server":"cloudflare","cf-ray":"9d1729321ca7dc8e-FRA","alt-svc":"h3=\":443\"; ma=86400"} \ No newline at end of file diff --git a/src/source/__fixtures__/XDMovies/https:api.themoviedb.org3movie1171532 b/src/source/__fixtures__/XDMovies/https:api.themoviedb.org3movie1171532 deleted file mode 100644 index a42ca81..0000000 --- a/src/source/__fixtures__/XDMovies/https:api.themoviedb.org3movie1171532 +++ /dev/null @@ -1 +0,0 @@ -{"adult":false,"backdrop_path":"/u2dKiAl7UQ9sTwhqzFxVpCnjyYT.jpg","belongs_to_collection":null,"budget":0,"genres":[{"id":28,"name":"Action"},{"id":10749,"name":"Romance"}],"homepage":"","id":1171532,"imdb_id":"tt27577888","origin_country":["IN"],"original_language":"ta","original_title":"ரத்னம்","overview":"Rathnam, a henchmen working for MLA Panneer Selvam in Vellore, protects Malliga, a medical student who bears a resemblance to Rathnam's late mother, from the relentless pursuit of land grabbers Rayudu brothers and becomes her guardian angel.","popularity":0.5674,"poster_path":"/j35uUmrMgWNQHrs0Obi8ll0OVfe.jpg","production_companies":[{"id":95823,"logo_path":"/guoPHeFGMZSXvMnF8zNnOgWPuGO.png","name":"Stone Bench Creations","origin_country":"IN"},{"id":86347,"logo_path":"/ir79iQBhrXk9PJ5Pr9vlLjM4viO.png","name":"Zee Studios","origin_country":"IN"}],"production_countries":[{"iso_3166_1":"IN","name":"India"}],"release_date":"2024-04-26","revenue":0,"runtime":159,"spoken_languages":[{"english_name":"Tamil","iso_639_1":"ta","name":"தமிழ்"}],"status":"Released","tagline":"","title":"Rathnam","video":false,"vote_average":5.273,"vote_count":11} \ No newline at end of file diff --git a/src/source/__fixtures__/XDMovies/https:api.themoviedb.org3movie931944 b/src/source/__fixtures__/XDMovies/https:api.themoviedb.org3movie931944 deleted file mode 100644 index 9f8ea0f..0000000 --- a/src/source/__fixtures__/XDMovies/https:api.themoviedb.org3movie931944 +++ /dev/null @@ -1 +0,0 @@ -{"adult":false,"backdrop_path":"/9oD95lebaaSNQHnLTLjjfITaCg7.jpg","belongs_to_collection":null,"budget":0,"genres":[{"id":18,"name":"Drama"},{"id":9648,"name":"Mystery"},{"id":36,"name":"History"},{"id":27,"name":"Horror"}],"homepage":"","id":931944,"imdb_id":"tt29141112","origin_country":["AT","DE"],"original_language":"de","original_title":"Des Teufels Bad","overview":"In 1750 Austria, a deeply religious woman named Agnes has just married her beloved, but her mind and heart soon grow heavy as her life becomes a long list of chores and expectations. Day after day, she is increasingly trapped in a murky and lonely path leading to evil thoughts, until the possibility of committing a shocking act of violence seems like the only way out of her inner prison.","popularity":1.1239,"poster_path":"/txVfrmwFOKB5qczM0ENYSqKMnSv.jpg","production_companies":[{"id":25523,"logo_path":"/hVnHNJUHSxaTpQdWPzC8B5CRvns.png","name":"Ulrich Seidl Filmproduktion","origin_country":"AT"},{"id":23406,"logo_path":"/tqIQbCdoa2yfPv05wG8mT9EM0gB.png","name":"Heimatfilm","origin_country":"DE"},{"id":122,"logo_path":"/pbRxJ8oia1MypvLbukeamObtYr2.png","name":"Coop99 Filmproduktion","origin_country":"AT"}],"production_countries":[{"iso_3166_1":"AT","name":"Austria"},{"iso_3166_1":"DE","name":"Germany"}],"release_date":"2024-03-08","revenue":0,"runtime":121,"spoken_languages":[{"english_name":"German","iso_639_1":"de","name":"Deutsch"}],"status":"Released","tagline":"","title":"The Devil's Bath","video":false,"vote_average":6.583,"vote_count":156} \ No newline at end of file diff --git a/src/source/__fixtures__/XDMovies/https:api.themoviedb.org3tv247769 b/src/source/__fixtures__/XDMovies/https:api.themoviedb.org3tv247769 deleted file mode 100644 index 6644414..0000000 --- a/src/source/__fixtures__/XDMovies/https:api.themoviedb.org3tv247769 +++ /dev/null @@ -1 +0,0 @@ -{"adult":false,"backdrop_path":"/w8L2oVjsSRZdZ1Wcszot9cKZMRO.jpg","created_by":[{"id":1513214,"credit_id":"65e071bba806730161a84c3a","name":"Kapil Sharma","original_name":"Kapil Sharma","gender":2,"profile_path":"/bu0jBQkDJmXCuISoJwktwgamkRX.jpg"}],"episode_run_time":[60],"first_air_date":"2024-03-30","genres":[{"id":10767,"name":"Talk"},{"id":35,"name":"Comedy"}],"homepage":"https://www.netflix.com/title/81737430","id":247769,"in_production":true,"languages":["hi"],"last_air_date":"2026-01-31","last_episode_to_air":{"id":6947233,"name":"Jab Bhidu Went Dhak Dhak","overview":"Their 90s roots bring love and charm wherever they go. Madhuri Dixit and Jackie Shroff take a walk down memory lane with Kapil.","vote_average":0.0,"vote_count":0,"air_date":"2026-02-21","episode_number":10,"episode_type":"standard","production_code":"","runtime":65,"season_number":4,"show_id":247769,"still_path":null},"name":"The Great Indian Kapil Show","next_episode_to_air":{"id":6970721,"name":"Episode 11","overview":"","vote_average":0.0,"vote_count":0,"air_date":"2026-02-28","episode_number":11,"episode_type":"standard","production_code":"","runtime":null,"season_number":4,"show_id":247769,"still_path":null},"networks":[{"id":213,"logo_path":"/wwemzKWzjKYJFfCeiB57q3r4Bcm.png","name":"Netflix","origin_country":""}],"number_of_episodes":48,"number_of_seasons":4,"origin_country":["IN"],"original_language":"hi","original_name":"द ग्रेट इंडियन कपिल शो","overview":"Comedian Kapil Sharma hosts this laugh-out-loud variety talk show with celebrity guests, hilarious antics and his signature supporting cast.","popularity":8.8458,"poster_path":"/3KMCmGDlYLlJ8zGOhCs6f3FZcnj.jpg","production_companies":[{"id":174244,"logo_path":null,"name":"K9 Films Production","origin_country":""},{"id":227389,"logo_path":null,"name":"Beingu Studios","origin_country":""}],"production_countries":[{"iso_3166_1":"IN","name":"India"}],"seasons":[{"air_date":"2024-03-30","episode_count":13,"id":381542,"name":"Season 1","overview":"Comedian Kapil Sharma hosts this laugh-out-loud variety talk show with celebrity guests, hilarious antics and his signature supporting cast.","poster_path":"/lSR8Pn996v5Xfr3SpgO2sRhwamk.jpg","season_number":1,"vote_average":6.9},{"air_date":"2024-09-21","episode_count":13,"id":417968,"name":"Season 2","overview":"Comedian Kapil Sharma brings desi fun to an all-new season featuring celebrity guests, side-splitting gags and a dash of classic Indian charm.","poster_path":"/2yFoz0EHXMlDIqDm6wo6XHv2wiY.jpg","season_number":2,"vote_average":7.8},{"air_date":"2025-06-21","episode_count":14,"id":457951,"name":"Season 3","overview":"Season 3 of The Great Indian Kapil Show brings back India’s most loved comedy talk show with a grander scale, sharper humor, and an even wider range of celebrity guests. Hosted by Kapil Sharma, the season once again combines laugh-out-loud sketches, candid celebrity interviews, and musical performances, making it a wholesome entertainer for audiences of all ages.\n\nThis season, Kapil is joined by his trusted ensemble including Sunil Grover, Krushna Abhishek, Kiku Sharda, and Archana Puran Singh, who deliver hilarious skits rooted in relatable everyday situations. The season also experiments with business-themed specials, film promotions, and personal storytelling that offer a refreshing mix of comedy and insight.","poster_path":"/iaQFw0MVltVqnIVSTkLuArX4Kim.jpg","season_number":3,"vote_average":8.2},{"air_date":"2025-12-20","episode_count":11,"id":487908,"name":"Season 4","overview":"","poster_path":"/zDcZG6bCf6crscEnEF19MMNIi9j.jpg","season_number":4,"vote_average":6.4}],"spoken_languages":[{"english_name":"Hindi","iso_639_1":"hi","name":"हिन्दी"}],"status":"Returning Series","tagline":"","type":"Talk Show","vote_average":7.769,"vote_count":13} \ No newline at end of file diff --git a/src/source/__fixtures__/XDMovies/https:api.themoviedb.org3tv66732 b/src/source/__fixtures__/XDMovies/https:api.themoviedb.org3tv66732 deleted file mode 100644 index f9fb69e..0000000 --- a/src/source/__fixtures__/XDMovies/https:api.themoviedb.org3tv66732 +++ /dev/null @@ -1 +0,0 @@ -{"adult":false,"backdrop_path":"/8zbAoryWbtH0DKdev8abFAjdufy.jpg","created_by":[{"id":1179422,"credit_id":"57599b039251410a99001cce","name":"Ross Duffer","original_name":"Ross Duffer","gender":2,"profile_path":"/7wdhSHgMLry5jBKJT1mdLT3BYaZ.jpg"},{"id":1179419,"credit_id":"57599b0e925141378a002c87","name":"Matt Duffer","original_name":"Matt Duffer","gender":2,"profile_path":"/kXO5CnSxC0znMAICGxnPeuGP73U.jpg"}],"episode_run_time":[],"first_air_date":"2016-07-15","genres":[{"id":10765,"name":"Sci-Fi & Fantasy"},{"id":9648,"name":"Mystery"},{"id":10759,"name":"Action & Adventure"}],"homepage":"https://www.netflix.com/title/80057281","id":66732,"in_production":false,"languages":["en"],"last_air_date":"2025-12-31","last_episode_to_air":{"id":5607051,"name":"Chapter Eight: The Rightside Up","overview":"As Vecna prepares to destroy the world as we know it, the party must put everything on the line to defeat him once and for all.","vote_average":6.898,"vote_count":196,"air_date":"2025-12-31","episode_number":8,"episode_type":"finale","production_code":"","runtime":129,"season_number":5,"show_id":66732,"still_path":"/kP23RWbUWM6vGhT9PxFyP5VT3y4.jpg"},"name":"Stranger Things","next_episode_to_air":null,"networks":[{"id":213,"logo_path":"/wwemzKWzjKYJFfCeiB57q3r4Bcm.png","name":"Netflix","origin_country":""}],"number_of_episodes":42,"number_of_seasons":5,"origin_country":["US"],"original_language":"en","original_name":"Stranger Things","overview":"When a young boy vanishes, a small town uncovers a mystery involving secret experiments, terrifying supernatural forces, and one strange little girl.","popularity":210.6578,"poster_path":"/uOOtwVbSr4QDjAGIifLDwpb2Pdl.jpg","production_companies":[{"id":2575,"logo_path":"/9YJrHYlcfHtwtulkFMAies3aFEl.png","name":"21 Laps Entertainment","origin_country":"US"},{"id":170090,"logo_path":null,"name":"Monkey Massacre Productions","origin_country":"US"},{"id":184664,"logo_path":"/4qv40ryAKUzvwptbv13eXUAl1Wm.png","name":"Upside Down Pictures","origin_country":"US"}],"production_countries":[{"iso_3166_1":"US","name":"United States of America"}],"seasons":[{"air_date":"2016-07-15","episode_count":8,"id":77680,"name":"Season 1","overview":"Strange things are afoot in Hawkins, Indiana, where a young boy's sudden disappearance unearths a young girl with otherworldly powers.","poster_path":"/fOaUnQwDJV22esXEswhaDMSqn2w.jpg","season_number":1,"vote_average":8.4},{"air_date":"2017-10-27","episode_count":9,"id":83248,"name":"Stranger Things 2","overview":"It's been nearly a year since Will's strange disappearance. But life's hardly back to normal in Hawkins. Not even close.","poster_path":"/74nFJmiapxKuUBXRbSu6VqGGcuo.jpg","season_number":2,"vote_average":8.2},{"air_date":"2019-07-04","episode_count":8,"id":115216,"name":"Stranger Things 3","overview":"Budding romance. A brand-new mall. And rabid rats running toward danger. It's the summer of 1985 in Hawkins ... and one summer can change everything.","poster_path":"/x2LSRK2Cm7MZhjluni1msVJ3wDF.jpg","season_number":3,"vote_average":8.2},{"air_date":"2022-05-27","episode_count":9,"id":163313,"name":"Stranger Things 4","overview":"Darkness returns to Hawkins just in time for spring break, igniting fresh terror, disturbing memories — and an ominous new threat.","poster_path":"/zvGTZYDCoMSMIBkXExxRxLYimqN.jpg","season_number":4,"vote_average":8.5},{"air_date":"2025-11-26","episode_count":8,"id":402292,"name":"Stranger Things 5","overview":"The fall of 1987. Hawkins is scarred by rifts. Vecna has vanished and the government has placed the town under military quarantine, forcing Eleven back into hiding. To end this nightmare, they'll need everyone together, one last time.","poster_path":"/5i5Fg549J27knMvhI5NRM2FT3Gn.jpg","season_number":5,"vote_average":7.4}],"spoken_languages":[{"english_name":"English","iso_639_1":"en","name":"English"}],"status":"Ended","tagline":"It only gets stranger...","type":"Scripted","vote_average":8.579,"vote_count":20669} \ No newline at end of file diff --git a/src/source/__fixtures__/XDMovies/https:new.xdmovies.wtfmoviesrathnam-1080p-720p-hindi-download-1171532 b/src/source/__fixtures__/XDMovies/https:new.xdmovies.wtfmoviesrathnam-1080p-720p-hindi-download-1171532 deleted file mode 100644 index 4ec0aa5..0000000 --- a/src/source/__fixtures__/XDMovies/https:new.xdmovies.wtfmoviesrathnam-1080p-720p-hindi-download-1171532 +++ /dev/null @@ -1,138 +0,0 @@ - - - - - - - - Rathnam — Movie - - - - - - - - - - - - - -
- -
- -
-
-
-
-
- Rathnam -
-

Rathnam

-

Rating: 5.273 / 10 ⭐

-

Genres: Action, Romance

-

Release Date: 2024-04-26

-

Audios: Hindi

-

Sources: Amazon

-

Rathnam, a henchmen working for MLA Panneer Selvam in Vellore, protects Malliga, a medical student who bears a resemblance to Rathnam's late mother, from the relentless pursuit of land grabbers Rayudu brothers and becomes her guardian angel.

-
-

Star Cast:

-

Vishal Krishna, Priya Bhavani Shankar, Samuthirakani, Murali Sharma, Hareesh Peradi

-
-

Download Links:

Amazon Versions(4)
Rathnam.2024.720p.AMZN.WEB-DL.DDP2.0.H.265-XDMovies.mkv
1.30 GB
Rathnam.2024.720p.AMZN.WEB-DL.DDP2.0.H.264-XDMovies.mkv
4.61 GB
Rathnam.2024.1080p.AMZN.WEB-DL.DDP2.0.H.265-XDMovies.mkv
3.80 GB
Rathnam.2024.1080p.AMZN.WEB-DL.DDP2.0.H.264-XDMovies.mkv
8.48 GB
- - - - -
-
-
-
- -
-

© 2025 XDMovies

-
- - - - - diff --git a/src/source/__fixtures__/XDMovies/https:new.xdmovies.wtfphpget_token.php b/src/source/__fixtures__/XDMovies/https:new.xdmovies.wtfphpget_token.php deleted file mode 100644 index 77fa270..0000000 --- a/src/source/__fixtures__/XDMovies/https:new.xdmovies.wtfphpget_token.php +++ /dev/null @@ -1 +0,0 @@ -{"token":"7297skkihkajwnsgaklakshuwd"} \ No newline at end of file diff --git a/src/source/__fixtures__/XDMovies/https:new.xdmovies.wtfphpsearch_api.phpqueryRathnamandfuzzytrue b/src/source/__fixtures__/XDMovies/https:new.xdmovies.wtfphpsearch_api.phpqueryRathnamandfuzzytrue deleted file mode 100644 index e8084d1..0000000 --- a/src/source/__fixtures__/XDMovies/https:new.xdmovies.wtfphpsearch_api.phpqueryRathnamandfuzzytrue +++ /dev/null @@ -1 +0,0 @@ -[{"id":1565591,"tmdb_id":1171532,"title":"Rathnam","type":"movie","poster":"\/j35uUmrMgWNQHrs0Obi8ll0OVfe.jpg","release_year":"2024","path":"\/movies\/rathnam-1080p-720p-hindi-download-1171532","qualities":["1080p","720p"],"audio_languages":"Hindi"}] \ No newline at end of file diff --git a/src/source/__fixtures__/XDMovies/https:new.xdmovies.wtfphpsearch_api.phpqueryStrangerpercent20Thingsandfuzzytrue b/src/source/__fixtures__/XDMovies/https:new.xdmovies.wtfphpsearch_api.phpqueryStrangerpercent20Thingsandfuzzytrue deleted file mode 100644 index 135fc31..0000000 --- a/src/source/__fixtures__/XDMovies/https:new.xdmovies.wtfphpsearch_api.phpqueryStrangerpercent20Thingsandfuzzytrue +++ /dev/null @@ -1 +0,0 @@ -[{"id":196,"tmdb_id":66732,"title":"Stranger Things","type":"tv","poster":"\/cVxVGwHce6xnW8UaVUggaPXbmoE.jpg","release_year":"2016","path":"\/series\/stranger-things-2160p-1080p-hindi-english-download-66732","qualities":["2160p","1080p"],"audio_languages":"Hindi, English, Tamil, Telugu"},{"id":1565254,"tmdb_id":1610413,"title":"One Last Adventure: The Making of Stranger Things 5","type":"movie","exact_match":0,"poster":"\/aZhrAx5CevLfjXcGIG3wBXxDiAL.jpg","release_year":"2026","path":"\/movies\/one-last-adventure-the-making-of-stranger-things-5-1080p-720p-hindi-english-download-1610413","qualities":["1080p","720p"],"audio_languages":"Hindi, English "},{"id":1565800,"tmdb_id":1193128,"title":"I Was a Stranger","type":"movie","exact_match":0,"poster":"\/RBIrEveMOIy5Kxg2WzgMnCIhaN.jpg","release_year":"2025","path":"\/movies\/i-was-a-stranger-2160p-1080p-english-download-1193128","qualities":["2160p","1080p","720p"],"audio_languages":"English"},{"id":166,"tmdb_id":1525025,"title":"A Stranger by the Hill","type":"movie","exact_match":0,"poster":"\/1DK8gt7H99ctCPKt57lyoDG5dpe.jpg","release_year":"2024","path":"\/movies\/a-stranger-by-the-hill-1080p-720p-hindi-download-1525025","qualities":["1080p","720p"],"audio_languages":"Hindi"},{"id":2427,"tmdb_id":1389255,"title":"The Stranger in My Home","type":"movie","exact_match":0,"poster":"\/8rxFUdvtFwAxbyZfSBKPB2Vaal9.jpg","release_year":"2025","path":"\/movies\/the-stranger-in-my-home-2160p-1080p-hindi-english-download-1389255","qualities":["2160p","1080p"],"audio_languages":"Hindi, English "},{"id":1565521,"tmdb_id":48781,"title":"Never Talk to Strangers","type":"movie","exact_match":0,"poster":"\/naZWa06duMvKr4dLrPGgl9yrPZ1.jpg","release_year":"1995","path":"\/movies\/never-talk-to-strangers-1080p-english-download-48781","qualities":["1080p"],"audio_languages":"English"},{"id":2410,"tmdb_id":1010756,"title":"The Strangers: Chapter 2","type":"movie","exact_match":0,"poster":"\/aEk9jLbiKTVssdATbrF879NvyyJ.jpg","release_year":"2025","path":"\/movies\/the-strangers-chapter-2-2160p-1080p-hindi-english-download-1010756","qualities":["2160p","1080p","720p"],"audio_languages":"Hindi, English, Tamil, Telugu, Marathi"},{"id":1565325,"tmdb_id":1240592,"title":"The Wild Blade of Strangers","type":"movie","exact_match":0,"poster":"\/9DZOU5qibB8WeXtzQ00Nl6tiqfw.jpg","release_year":"2024","path":"\/movies\/the-wild-blade-of-strangers-1080p-720p-hindi-tamil-download-1240592","qualities":["1080p","720p"],"audio_languages":"Hindi, Tamil, Telugu, Chinese "},{"id":1565283,"tmdb_id":371608,"title":"The Strangers: Prey at Night","type":"movie","exact_match":0,"poster":"\/vdxLpPsZkPZdFrREp7eSeSzcimj.jpg","release_year":"2018","path":"\/movies\/the-strangers-prey-at-night-1080p-720p-hindi-english-download-371608","qualities":["1080p","720p"],"audio_languages":"Hindi, English"},{"id":152,"tmdb_id":70626,"title":"Stranger","type":"tv","exact_match":0,"poster":"\/blbbtx7DyvZ3JTGyc9MCArDL79b.jpg","release_year":"2017","path":"\/series\/stranger-1080p-hindi-korean-download-70626","qualities":["1080p"],"audio_languages":"Hindi , Korean"},{"id":980,"tmdb_id":60956,"title":"Doctor Stranger","type":"tv","exact_match":0,"poster":"\/odH9cebqUNHKh1p6BKVSs0gsD34.jpg","release_year":"2014","path":"\/series\/doctor-stranger-1080p-korean-download-60956","qualities":["1080p"],"audio_languages":"Korean "},{"id":637,"tmdb_id":89959,"title":"Strangers from Hell","type":"tv","exact_match":0,"poster":"\/o66rEzPzZZWxSrcus2f46CedHhq.jpg","release_year":"2019","path":"\/series\/strangers-from-hell-1080p-720p-english-download-89959","qualities":["1080p","720p"],"audio_languages":"English "}] \ No newline at end of file diff --git a/src/source/__fixtures__/XDMovies/https:new.xdmovies.wtfphpsearch_api.phpqueryThepercent20Devilpercent27spercent20Bathandfuzzytrue b/src/source/__fixtures__/XDMovies/https:new.xdmovies.wtfphpsearch_api.phpqueryThepercent20Devilpercent27spercent20Bathandfuzzytrue deleted file mode 100644 index 8127c97..0000000 --- a/src/source/__fixtures__/XDMovies/https:new.xdmovies.wtfphpsearch_api.phpqueryThepercent20Devilpercent27spercent20Bathandfuzzytrue +++ /dev/null @@ -1 +0,0 @@ -[{"id":1564199,"tmdb_id":1314452,"title":"Other","type":"movie","exact_match":0,"poster":"\/uRXrWxF5wh5MUPB6yGXGWd1NJy3.jpg","release_year":"2025","path":"\/movies\/other-1080p-720p-english-download-1314452","qualities":["1080p","720p"],"audio_languages":"English"},{"id":1565747,"tmdb_id":370076,"title":"Theri","type":"movie","exact_match":0,"poster":"\/f6BhexotEqO3GejXa3FopBNGL6M.jpg","release_year":"2016","path":"\/movies\/theri-1080p-720p-hindi-download-370076","qualities":["1080p","720p"],"audio_languages":"Hindi"},{"id":1565190,"tmdb_id":1531058,"title":"Others","type":"movie","exact_match":0,"poster":"\/2rdDxephzH5bpp3Z5aKf55evRbA.jpg","release_year":"2025","path":"\/movies\/others-1080p-720p-hindi-tamil-download-1531058","qualities":["1080p","720p"],"audio_languages":"Hindi, Tamil, Telugu, Marathi, Bengali"},{"id":117,"tmdb_id":1174481,"title":"The 47","type":"movie","exact_match":0,"poster":"\/gPEvUtPn4ohYMWavYRK7kAbQ8Zw.jpg","release_year":"2024","path":"\/movies\/the-47-1080p-720p-hindi-spanish-download-1174481","qualities":["1080p","720p"],"audio_languages":"Hindi, Spanish"},{"id":1565159,"tmdb_id":931940,"title":"The Fix","type":"movie","exact_match":0,"poster":"\/vY7bY2xZymoIOti4WM5K29OMzCS.jpg","release_year":"2024","path":"\/movies\/the-fix-1080p-720p-hindi-english-download-931940","qualities":["1080p","720p"],"audio_languages":"Hindi, English"},{"id":2127,"tmdb_id":1215798,"title":"The Cut","type":"movie","exact_match":0,"poster":"\/6iseyProRsPyu3rOCzsXDDnDGrl.jpg","release_year":"2025","path":"\/movies\/the-cut-2160p-1080p-english-download-1215798","qualities":["2160p","1080p","720p"],"audio_languages":"English"},{"id":1457,"tmdb_id":1503551,"title":"The 100","type":"movie","exact_match":0,"poster":"\/vY7OxwSmJdrdcNWVyimkly12ufe.jpg","release_year":"2025","path":"\/movies\/the-100-1080p-720p-malayalam-tamil-download-1503551","qualities":["1080p","720p"],"audio_languages":"Malayalam, Tamil, Telugu, Kannada"},{"id":1565331,"tmdb_id":1306368,"title":"The Rip","type":"movie","exact_match":0,"poster":"\/p4bW2sJKAwcHuLpfoZK7Zo63osA.jpg","release_year":"2026","path":"\/movies\/the-rip-1080p-720p-hindi-english-download-1306368","qualities":["1080p","720p"],"audio_languages":"Hindi, English, Tamil, Telugu"},{"id":2127,"tmdb_id":1215798,"title":"The Cut","type":"movie","exact_match":0,"poster":"\/6iseyProRsPyu3rOCzsXDDnDGrl.jpg","release_year":"2025","path":"\/movies\/the-cut-2160p-1080p-english-download-1215798","qualities":["2160p","1080p","720p"],"audio_languages":"English"},{"id":584,"tmdb_id":1461114,"title":"The Door","type":"movie","exact_match":0,"poster":"\/2fTLOS6y3v8SCbkFFRagmYXVZTm.jpg","release_year":"2025","path":"\/movies\/the-door-1080p-720p-hindi-tamil-download-1461114","qualities":["1080p","720p"],"audio_languages":"Hindi, Tamil"},{"id":2207,"tmdb_id":783598,"title":"The Goal","type":"movie","exact_match":0,"poster":"\/iRf6SAgZ5vdJltVHisVvRieKn1t.jpg","release_year":"1999","path":"\/movies\/the-goal-1080p-720p-hindi-download-783598","qualities":["1080p","720p"],"audio_languages":"Hindi"},{"id":1468,"tmdb_id":1204660,"title":"The Twin","type":"movie","exact_match":0,"poster":"\/s43zuayHz2P6VRfSskz9eWjUrM8.jpg","release_year":"2024","path":"\/movies\/the-twin-1080p-720p-english-download-1204660","qualities":["1080p","720p"],"audio_languages":"English"},{"id":2125,"tmdb_id":926606,"title":"The Home","type":"movie","exact_match":0,"poster":"\/qyGY1k5GqAORsVhfZA3gFKirZWD.jpg","release_year":"2025","path":"\/movies\/the-home-2160p-1080p-hindi-english-download-926606","qualities":["2160p","1080p","720p"],"audio_languages":"Hindi, English, Tamil"},{"id":2059,"tmdb_id":575604,"title":"The Call","type":"movie","exact_match":0,"poster":"\/oz8hvZHg7tIdGwh0ErPRhobJKPR.jpg","release_year":"2020","path":"\/movies\/the-call-1080p-720p-korean-english-download-575604","qualities":["1080p","720p"],"audio_languages":"Korean, English"},{"id":86,"tmdb_id":865910,"title":"The Plot","type":"movie","exact_match":0,"poster":"\/pBZ1N68Ral2rtNzeQAmGFhDadq0.jpg","release_year":"2024","path":"\/movies\/the-plot-1080p-hindi-korean-download-865910","qualities":["1080p"],"audio_languages":"Hindi, Korean"},{"id":1565033,"tmdb_id":1242011,"title":"Together","type":"movie","exact_match":0,"poster":"\/m52XidzKx94bKlToZfEXUnL3pdy.jpg","release_year":"2025","path":"\/movies\/together-1080p-720p-hindi-tamil-download-1242011","qualities":["1080p","720p"],"audio_languages":"Hindi, Tamil, Telugu, English"},{"id":1565369,"tmdb_id":227156,"title":"The Giver","type":"movie","exact_match":0,"poster":"\/dul62Av4pgi5x8LP7ELHzNyka9Z.jpg","release_year":"2014","path":"\/movies\/the-giver-1080p-english-download-227156","qualities":["1080p"],"audio_languages":"English"},{"id":1564238,"tmdb_id":1267905,"title":"The Roses","type":"movie","exact_match":0,"poster":"\/98n5HnCJ5LnXKIMNP9SBfVNyxCE.jpg","release_year":"2025","path":"\/movies\/the-roses-2160p-1080p-english-download-1267905","qualities":["2160p","1080p","720p"],"audio_languages":"English"},{"id":1564356,"tmdb_id":1569849,"title":"The Error","type":"movie","exact_match":0,"poster":"\/kgXYHZP7VPsoAw6GxjxX5ANyH3V.jpg","release_year":"2025","path":"\/movies\/the-error-2160p-1080p-punjabi-download-1569849","qualities":["2160p","1080p","720p"],"audio_languages":"Punjabi"},{"id":1565510,"tmdb_id":868666,"title":"The Ghost","type":"movie","exact_match":0,"poster":"\/AulIkX8l9u17lcQfEubU8n0cnwk.jpg","release_year":"2022","path":"\/movies\/the-ghost-1080p-720p-hindi-download-868666","qualities":["1080p","720p"],"audio_languages":"Hindi"}] \ No newline at end of file diff --git a/src/source/__fixtures__/XDMovies/https:new.xdmovies.wtfphpsearch_api.phpqueryThepercent20Greatpercent20Indianpercent20Kapilpercent20Showandfuzzytrue b/src/source/__fixtures__/XDMovies/https:new.xdmovies.wtfphpsearch_api.phpqueryThepercent20Greatpercent20Indianpercent20Kapilpercent20Showandfuzzytrue deleted file mode 100644 index f9e5e2a..0000000 --- a/src/source/__fixtures__/XDMovies/https:new.xdmovies.wtfphpsearch_api.phpqueryThepercent20Greatpercent20Indianpercent20Kapilpercent20Showandfuzzytrue +++ /dev/null @@ -1 +0,0 @@ -[{"id":208,"tmdb_id":247769,"title":"The Great Indian Kapil Show","type":"tv","poster":"\/6LWtSm2VHfenFBMvmjG9GYgfvSd.jpg","release_year":"2024","path":"\/series\/the-great-indian-kapil-show-1080p-720p-hindi-download-247769","qualities":["1080p","720p"],"audio_languages":"Hindi"},{"id":1422,"tmdb_id":156484,"title":"The 8 Show","type":"tv","exact_match":0,"poster":"\/umBNBnKThMmF1QQZixZ7rsYOowq.jpg","release_year":"2024","path":"\/series\/the-8-show-1080p-720p-hindi-english-download-156484","qualities":["1080p","720p"],"audio_languages":"Hindi, English, Korean, Tamil"},{"id":1564199,"tmdb_id":1314452,"title":"Other","type":"movie","exact_match":0,"poster":"\/uRXrWxF5wh5MUPB6yGXGWd1NJy3.jpg","release_year":"2025","path":"\/movies\/other-1080p-720p-english-download-1314452","qualities":["1080p","720p"],"audio_languages":"English"},{"id":1565747,"tmdb_id":370076,"title":"Theri","type":"movie","exact_match":0,"poster":"\/f6BhexotEqO3GejXa3FopBNGL6M.jpg","release_year":"2016","path":"\/movies\/theri-1080p-720p-hindi-download-370076","qualities":["1080p","720p"],"audio_languages":"Hindi"},{"id":1565190,"tmdb_id":1531058,"title":"Others","type":"movie","exact_match":0,"poster":"\/2rdDxephzH5bpp3Z5aKf55evRbA.jpg","release_year":"2025","path":"\/movies\/others-1080p-720p-hindi-tamil-download-1531058","qualities":["1080p","720p"],"audio_languages":"Hindi, Tamil, Telugu, Marathi, Bengali"},{"id":117,"tmdb_id":1174481,"title":"The 47","type":"movie","exact_match":0,"poster":"\/gPEvUtPn4ohYMWavYRK7kAbQ8Zw.jpg","release_year":"2024","path":"\/movies\/the-47-1080p-720p-hindi-spanish-download-1174481","qualities":["1080p","720p"],"audio_languages":"Hindi, Spanish"},{"id":1565331,"tmdb_id":1306368,"title":"The Rip","type":"movie","exact_match":0,"poster":"\/p4bW2sJKAwcHuLpfoZK7Zo63osA.jpg","release_year":"2026","path":"\/movies\/the-rip-1080p-720p-hindi-english-download-1306368","qualities":["1080p","720p"],"audio_languages":"Hindi, English, Tamil, Telugu"},{"id":1565159,"tmdb_id":931940,"title":"The Fix","type":"movie","exact_match":0,"poster":"\/vY7bY2xZymoIOti4WM5K29OMzCS.jpg","release_year":"2024","path":"\/movies\/the-fix-1080p-720p-hindi-english-download-931940","qualities":["1080p","720p"],"audio_languages":"Hindi, English"},{"id":2127,"tmdb_id":1215798,"title":"The Cut","type":"movie","exact_match":0,"poster":"\/6iseyProRsPyu3rOCzsXDDnDGrl.jpg","release_year":"2025","path":"\/movies\/the-cut-2160p-1080p-english-download-1215798","qualities":["2160p","1080p","720p"],"audio_languages":"English"},{"id":2127,"tmdb_id":1215798,"title":"The Cut","type":"movie","exact_match":0,"poster":"\/6iseyProRsPyu3rOCzsXDDnDGrl.jpg","release_year":"2025","path":"\/movies\/the-cut-2160p-1080p-english-download-1215798","qualities":["2160p","1080p","720p"],"audio_languages":"English"},{"id":1457,"tmdb_id":1503551,"title":"The 100","type":"movie","exact_match":0,"poster":"\/vY7OxwSmJdrdcNWVyimkly12ufe.jpg","release_year":"2025","path":"\/movies\/the-100-1080p-720p-malayalam-tamil-download-1503551","qualities":["1080p","720p"],"audio_languages":"Malayalam, Tamil, Telugu, Kannada"},{"id":2059,"tmdb_id":575604,"title":"The Call","type":"movie","exact_match":0,"poster":"\/oz8hvZHg7tIdGwh0ErPRhobJKPR.jpg","release_year":"2020","path":"\/movies\/the-call-1080p-720p-korean-english-download-575604","qualities":["1080p","720p"],"audio_languages":"Korean, English"},{"id":1468,"tmdb_id":1204660,"title":"The Twin","type":"movie","exact_match":0,"poster":"\/s43zuayHz2P6VRfSskz9eWjUrM8.jpg","release_year":"2024","path":"\/movies\/the-twin-1080p-720p-english-download-1204660","qualities":["1080p","720p"],"audio_languages":"English"},{"id":2207,"tmdb_id":783598,"title":"The Goal","type":"movie","exact_match":0,"poster":"\/iRf6SAgZ5vdJltVHisVvRieKn1t.jpg","release_year":"1999","path":"\/movies\/the-goal-1080p-720p-hindi-download-783598","qualities":["1080p","720p"],"audio_languages":"Hindi"},{"id":584,"tmdb_id":1461114,"title":"The Door","type":"movie","exact_match":0,"poster":"\/2fTLOS6y3v8SCbkFFRagmYXVZTm.jpg","release_year":"2025","path":"\/movies\/the-door-1080p-720p-hindi-tamil-download-1461114","qualities":["1080p","720p"],"audio_languages":"Hindi, Tamil"},{"id":1565033,"tmdb_id":1242011,"title":"Together","type":"movie","exact_match":0,"poster":"\/m52XidzKx94bKlToZfEXUnL3pdy.jpg","release_year":"2025","path":"\/movies\/together-1080p-720p-hindi-tamil-download-1242011","qualities":["1080p","720p"],"audio_languages":"Hindi, Tamil, Telugu, English"},{"id":86,"tmdb_id":865910,"title":"The Plot","type":"movie","exact_match":0,"poster":"\/pBZ1N68Ral2rtNzeQAmGFhDadq0.jpg","release_year":"2024","path":"\/movies\/the-plot-1080p-hindi-korean-download-865910","qualities":["1080p"],"audio_languages":"Hindi, Korean"},{"id":2125,"tmdb_id":926606,"title":"The Home","type":"movie","exact_match":0,"poster":"\/qyGY1k5GqAORsVhfZA3gFKirZWD.jpg","release_year":"2025","path":"\/movies\/the-home-2160p-1080p-hindi-english-download-926606","qualities":["2160p","1080p","720p"],"audio_languages":"Hindi, English, Tamil"},{"id":1565369,"tmdb_id":227156,"title":"The Giver","type":"movie","exact_match":0,"poster":"\/dul62Av4pgi5x8LP7ELHzNyka9Z.jpg","release_year":"2014","path":"\/movies\/the-giver-1080p-english-download-227156","qualities":["1080p"],"audio_languages":"English"},{"id":1564238,"tmdb_id":1267905,"title":"The Roses","type":"movie","exact_match":0,"poster":"\/98n5HnCJ5LnXKIMNP9SBfVNyxCE.jpg","release_year":"2025","path":"\/movies\/the-roses-2160p-1080p-english-download-1267905","qualities":["2160p","1080p","720p"],"audio_languages":"English"}] \ No newline at end of file diff --git a/src/source/__fixtures__/XDMovies/https:new.xdmovies.wtfseriesstranger-things-2160p-1080p-hindi-english-download-66732 b/src/source/__fixtures__/XDMovies/https:new.xdmovies.wtfseriesstranger-things-2160p-1080p-hindi-english-download-66732 deleted file mode 100644 index bca8e9f..0000000 --- a/src/source/__fixtures__/XDMovies/https:new.xdmovies.wtfseriesstranger-things-2160p-1080p-hindi-english-download-66732 +++ /dev/null @@ -1,165 +0,0 @@ - - - - - - - - Stranger Things — Series - - - - - - - - - - - - -
- -
- -
-
-
-
-
- Stranger Things -
-

Stranger Things

-

Rating: 8.6 / 10 ⭐

-

Genres: Sci-Fi & Fantasy, Mystery, Action & Adventure

-

First Air Date: 2016-07-15

-

Audios: Hindi, English, Tamil, Telugu

-

Sources: Netflix, BluRay

-

When a young boy vanishes, a small town uncovers a mystery involving secret experiments, terrifying supernatural forces, and one strange little girl.

-
-

Star Cast:

-

Millie Bobby Brown, Finn Wolfhard, Gaten Matarazzo, Caleb McLaughlin, Noah Schnapp

-
- - -
-
- - Note from Admins -
-
NF WEB-DL's are Multi Language.
-
- - - -
-
-
-
- -
-

© 2025 XDMovies

-
- - - - - \ No newline at end of file diff --git a/src/source/__fixtures__/XDMovies/https:new.xdmovies.wtfseriesthe-great-indian-kapil-show-1080p-720p-hindi-download-247769 b/src/source/__fixtures__/XDMovies/https:new.xdmovies.wtfseriesthe-great-indian-kapil-show-1080p-720p-hindi-download-247769 deleted file mode 100644 index e5c5c24..0000000 --- a/src/source/__fixtures__/XDMovies/https:new.xdmovies.wtfseriesthe-great-indian-kapil-show-1080p-720p-hindi-download-247769 +++ /dev/null @@ -1,158 +0,0 @@ - - - - - - - - The Great Indian Kapil Show — Series - - - - - - - - - - - - -
- -
- -
-
-
-
-
- The Great Indian Kapil Show -
-

The Great Indian Kapil Show

-

Rating: 7.2 / 10 ⭐

-

Genres: Talk, Comedy

-

First Air Date: 2024-03-30

-

Audios: Hindi

-

Sources: Netflix

-

Comedian Kapil Sharma hosts this laugh-out-loud variety talk show with celebrity guests, hilarious antics and his signature supporting cast.

-
-

Star Cast:

-

Kapil Sharma, Sunil Grover, Krishna Abhishek, Archana Puran Singh, Kiku Sharda

-
- - - - - -
-
-
-
- -
-

© 2025 XDMovies

-
- - - - - diff --git "a/src/source/__fixtures__/XDMovies/post-https:latestnewsonline.sbsapisession-\"code\":\"5U5qFXxQ\"" "b/src/source/__fixtures__/XDMovies/post-https:latestnewsonline.sbsapisession-\"code\":\"5U5qFXxQ\"" deleted file mode 100644 index 86614a1..0000000 --- "a/src/source/__fixtures__/XDMovies/post-https:latestnewsonline.sbsapisession-\"code\":\"5U5qFXxQ\"" +++ /dev/null @@ -1 +0,0 @@ -{"sessionId":"0f8c6b8a-342d-480c-af34-bf052dc5549c","token":"eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzZXNzaW9uSWQiOiIwZjhjNmI4YS0zNDJkLTQ4MGMtYWYzNC1iZjA1MmRjNTU0OWMiLCJjb2RlIjoiNVU1cUZYeFEiLCJpYXQiOjE3NzE2ODY1MjcsImV4cCI6MTc3MTY4NjgyN30.csGusNSX2gjQPrgYzH9dz2QT82ZrH7K3a-wTZGpc-1k"} \ No newline at end of file diff --git "a/src/source/__fixtures__/XDMovies/post-https:latestnewsonline.sbsapisession-\"code\":\"BaRR5UMG\"" "b/src/source/__fixtures__/XDMovies/post-https:latestnewsonline.sbsapisession-\"code\":\"BaRR5UMG\"" deleted file mode 100644 index 5ab4301..0000000 --- "a/src/source/__fixtures__/XDMovies/post-https:latestnewsonline.sbsapisession-\"code\":\"BaRR5UMG\"" +++ /dev/null @@ -1 +0,0 @@ -{"sessionId":"a9f28b1e-b3f1-4dcd-ad8c-0abfe7a757b9","token":"eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzZXNzaW9uSWQiOiJhOWYyOGIxZS1iM2YxLTRkY2QtYWQ4Yy0wYWJmZTdhNzU3YjkiLCJjb2RlIjoiQmFSUjVVTUciLCJpYXQiOjE3NzE2ODY1MjgsImV4cCI6MTc3MTY4NjgyOH0.ToRdDv0ix_5qN0OWwHbv4aF42SPXBKm6qlNcfcPvi9s"} \ No newline at end of file diff --git "a/src/source/__fixtures__/XDMovies/post-https:latestnewsonline.sbsapisession-\"code\":\"QnDe8y4b\"" "b/src/source/__fixtures__/XDMovies/post-https:latestnewsonline.sbsapisession-\"code\":\"QnDe8y4b\"" deleted file mode 100644 index fb28168..0000000 --- "a/src/source/__fixtures__/XDMovies/post-https:latestnewsonline.sbsapisession-\"code\":\"QnDe8y4b\"" +++ /dev/null @@ -1 +0,0 @@ -{"sessionId":"d5bf3e5d-8908-42fd-b206-c046a1a4f44f","token":"eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzZXNzaW9uSWQiOiJkNWJmM2U1ZC04OTA4LTQyZmQtYjIwNi1jMDQ2YTFhNGY0NGYiLCJjb2RlIjoiUW5EZTh5NGIiLCJpYXQiOjE3NzE2ODY1MjcsImV4cCI6MTc3MTY4NjgyN30.3fIw8zbbgXJ9hzAdDvnpW6ZQZrW6UaMK-oj2YupbdOc"} \ No newline at end of file diff --git "a/src/source/__fixtures__/XDMovies/post-https:latestnewsonline.sbsapisession-\"code\":\"S3Wr3K37\"" "b/src/source/__fixtures__/XDMovies/post-https:latestnewsonline.sbsapisession-\"code\":\"S3Wr3K37\"" deleted file mode 100644 index 70beab5..0000000 --- "a/src/source/__fixtures__/XDMovies/post-https:latestnewsonline.sbsapisession-\"code\":\"S3Wr3K37\"" +++ /dev/null @@ -1 +0,0 @@ -{"sessionId":"64b2046d-1a26-4fc0-93b4-69ec53c74db6","token":"eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzZXNzaW9uSWQiOiI2NGIyMDQ2ZC0xYTI2LTRmYzAtOTNiNC02OWVjNTNjNzRkYjYiLCJjb2RlIjoiUzNXcjNLMzciLCJpYXQiOjE3NzE2ODY1MjcsImV4cCI6MTc3MTY4NjgyN30.X2Up1bHRdinjgGT_YgYf9q2wBAYj3qfYgW2sRlu-vwA"} \ No newline at end of file diff --git "a/src/source/__fixtures__/XDMovies/post-https:latestnewsonline.sbsapisession-\"code\":\"f-yUfi9G\"" "b/src/source/__fixtures__/XDMovies/post-https:latestnewsonline.sbsapisession-\"code\":\"f-yUfi9G\"" deleted file mode 100644 index 9f12a5b..0000000 --- "a/src/source/__fixtures__/XDMovies/post-https:latestnewsonline.sbsapisession-\"code\":\"f-yUfi9G\"" +++ /dev/null @@ -1 +0,0 @@ -{"sessionId":"1bcf8e16-ccbb-4e5f-b093-d35d3c267c1f","token":"eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzZXNzaW9uSWQiOiIxYmNmOGUxNi1jY2JiLTRlNWYtYjA5My1kMzVkM2MyNjdjMWYiLCJjb2RlIjoiZi15VWZpOUciLCJpYXQiOjE3NzE2ODY1MjgsImV4cCI6MTc3MTY4NjgyOH0.ZZIrYDZTnyIQPfi59zcH-NOaLbqe38XKIkKN1SnaL2c"} \ No newline at end of file diff --git "a/src/source/__fixtures__/XDMovies/post-https:latestnewsonline.sbsapisession-\"code\":\"fVTpJNEC\"" "b/src/source/__fixtures__/XDMovies/post-https:latestnewsonline.sbsapisession-\"code\":\"fVTpJNEC\"" deleted file mode 100644 index 8498039..0000000 --- "a/src/source/__fixtures__/XDMovies/post-https:latestnewsonline.sbsapisession-\"code\":\"fVTpJNEC\"" +++ /dev/null @@ -1 +0,0 @@ -{"sessionId":"16a8a9dc-9fcc-45bf-b9ef-b3d67a701672","token":"eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzZXNzaW9uSWQiOiIxNmE4YTlkYy05ZmNjLTQ1YmYtYjllZi1iM2Q2N2E3MDE2NzIiLCJjb2RlIjoiZlZUcEpORUMiLCJpYXQiOjE3NzE2ODY1MjgsImV4cCI6MTc3MTY4NjgyOH0.waBkkJaSOFtIHo5begrUtT__tpB8bW_7CgWcP-ifabg"} \ No newline at end of file diff --git "a/src/source/__fixtures__/XDMovies/post-https:latestnewsonline.sbsapisession-\"code\":\"g7gAx_YU\"" "b/src/source/__fixtures__/XDMovies/post-https:latestnewsonline.sbsapisession-\"code\":\"g7gAx_YU\"" deleted file mode 100644 index b1f279e..0000000 --- "a/src/source/__fixtures__/XDMovies/post-https:latestnewsonline.sbsapisession-\"code\":\"g7gAx_YU\"" +++ /dev/null @@ -1 +0,0 @@ -{"sessionId":"0d2129ed-791f-4811-a001-cf5ea5c18daf","token":"eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzZXNzaW9uSWQiOiIwZDIxMjllZC03OTFmLTQ4MTEtYTAwMS1jZjVlYTVjMThkYWYiLCJjb2RlIjoiZzdnQXhfWVUiLCJpYXQiOjE3NzE2ODY1MjgsImV4cCI6MTc3MTY4NjgyOH0.fniwFT3wx7VI_u4fSSueM8QiaSpDSGhTk-I0NUiAq4U"} \ No newline at end of file diff --git "a/src/source/__fixtures__/XDMovies/post-https:latestnewsonline.sbsapisession-\"code\":\"hqbV5hDx\"" "b/src/source/__fixtures__/XDMovies/post-https:latestnewsonline.sbsapisession-\"code\":\"hqbV5hDx\"" deleted file mode 100644 index 48a18b9..0000000 --- "a/src/source/__fixtures__/XDMovies/post-https:latestnewsonline.sbsapisession-\"code\":\"hqbV5hDx\"" +++ /dev/null @@ -1 +0,0 @@ -{"sessionId":"bf8bad62-37c4-45d0-9e7b-2381dbe179e8","token":"eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzZXNzaW9uSWQiOiJiZjhiYWQ2Mi0zN2M0LTQ1ZDAtOWU3Yi0yMzgxZGJlMTc5ZTgiLCJjb2RlIjoiaHFiVjVoRHgiLCJpYXQiOjE3NzE2ODY1MjgsImV4cCI6MTc3MTY4NjgyOH0.6f8BB0UQ1sUSinMNyuQKlmtTBOi4725oSDHW2uXZj0c"} \ No newline at end of file diff --git "a/src/source/__fixtures__/XDMovies/post-https:latestnewsonline.sbsapisession-\"code\":\"mnVT6bro\"" "b/src/source/__fixtures__/XDMovies/post-https:latestnewsonline.sbsapisession-\"code\":\"mnVT6bro\"" deleted file mode 100644 index fedb3a2..0000000 --- "a/src/source/__fixtures__/XDMovies/post-https:latestnewsonline.sbsapisession-\"code\":\"mnVT6bro\"" +++ /dev/null @@ -1 +0,0 @@ -{"sessionId":"80c6cbdd-8632-46fb-b2df-9196f744ca25","token":"eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzZXNzaW9uSWQiOiI4MGM2Y2JkZC04NjMyLTQ2ZmItYjJkZi05MTk2Zjc0NGNhMjUiLCJjb2RlIjoibW5WVDZicm8iLCJpYXQiOjE3NzE2ODY1MjgsImV4cCI6MTc3MTY4NjgyOH0.8UGVM1CPtdZGR8_-oypPcPTglxKIlTVYmJe_4so3U2c"} \ No newline at end of file diff --git "a/src/source/__fixtures__/XDMovies/post-https:latestnewsonline.sbsapisession-\"code\":\"sZ_A30Nc\"" "b/src/source/__fixtures__/XDMovies/post-https:latestnewsonline.sbsapisession-\"code\":\"sZ_A30Nc\"" deleted file mode 100644 index c7779ac..0000000 --- "a/src/source/__fixtures__/XDMovies/post-https:latestnewsonline.sbsapisession-\"code\":\"sZ_A30Nc\"" +++ /dev/null @@ -1 +0,0 @@ -{"sessionId":"1d1afc89-e47e-46e9-a317-47aa85527663","token":"eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzZXNzaW9uSWQiOiIxZDFhZmM4OS1lNDdlLTQ2ZTktYTMxNy00N2FhODU1Mjc2NjMiLCJjb2RlIjoic1pfQTMwTmMiLCJpYXQiOjE3NzE2ODY1MjcsImV4cCI6MTc3MTY4NjgyN30.P2bLltzVq8HwCdzVOsyFboB4OfbHiDiOG-leBS-vWCs"} \ No newline at end of file diff --git "a/src/source/__fixtures__/XDMovies/post-https:latestnewsonline.sbsapisession-\"code\":\"w4NVeV6B\"" "b/src/source/__fixtures__/XDMovies/post-https:latestnewsonline.sbsapisession-\"code\":\"w4NVeV6B\"" deleted file mode 100644 index dc5ade9..0000000 --- "a/src/source/__fixtures__/XDMovies/post-https:latestnewsonline.sbsapisession-\"code\":\"w4NVeV6B\"" +++ /dev/null @@ -1 +0,0 @@ -{"sessionId":"3460b8c1-428f-4bca-8357-bb5426657d6e","token":"eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzZXNzaW9uSWQiOiIzNDYwYjhjMS00MjhmLTRiY2EtODM1Ny1iYjU0MjY2NTdkNmUiLCJjb2RlIjoidzROVmVWNkIiLCJpYXQiOjE3NzE2ODY1MjgsImV4cCI6MTc3MTY4NjgyOH0.DxO_Xp9h_ppp3wOiWuZn_zgvDF7YlEQ1NMyXAinrAbQ"} \ No newline at end of file diff --git a/src/source/__snapshots__/XDMovies.test.ts.snap b/src/source/__snapshots__/XDMovies.test.ts.snap deleted file mode 100644 index b7d72c5..0000000 --- a/src/source/__snapshots__/XDMovies.test.ts.snap +++ /dev/null @@ -1,219 +0,0 @@ -// Jest Snapshot v1, https://jestjs.io/docs/snapshot-testing - -exports[`XDMovies handle great indian kapil show s03e01 1`] = ` -[ - { - "meta": { - "bytes": 1320702443, - "countryCodes": [ - "multi", - "hi", - ], - "height": 1080, - "title": "The.Great.Indian.Kapil.Show.S03E01.1080p.NF.WEB-DL.DDP5.1.AV1-PrimeFix.mkv", - }, - "url": "https://hubcloud.one/drive/3uuwzq1q3pye9yv", - }, - { - "meta": { - "bytes": 3103113871, - "countryCodes": [ - "multi", - "hi", - ], - "height": 1080, - "title": "The.Great.Indian.Kapil.Show.S03E01.1080p.NF.WEB-DL.DDP5.1.H.264-PrimeFix.mkv", - }, - "url": "https://hubcloud.one/drive/lpuxelnsleaec6y", - }, - { - "meta": { - "bytes": 450971566, - "countryCodes": [ - "multi", - "hi", - ], - "height": 720, - "title": "The.Great.Indian.Kapil.Show.S03E01.720p.NF.WEB-DL.DDP5.1.AV1-PrimeFix.mkv", - }, - "url": "https://hubcloud.one/drive/2114yktggdye42a", - }, - { - "meta": { - "bytes": 1868310773, - "countryCodes": [ - "multi", - "hi", - ], - "height": 720, - "title": "The.Great.Indian.Kapil.Show.S03E01.720p.NF.WEB-DL.DDP5.1.H.264-PrimeFix.mkv", - }, - "url": "https://hubcloud.one/drive/cgghjzjgjbqxgmi", - }, -] -`; - -exports[`XDMovies handle non-existent devil's bath 2024 gracefully 1`] = `[]`; - -exports[`XDMovies handle rathnam 2024 1`] = ` -[ - { - "meta": { - "bytes": 1395864371, - "countryCodes": [ - "multi", - "hi", - ], - "height": 720, - "title": "Rathnam.2024.720p.AMZN.WEB-DL.DDP2.0.H.265-XDMovies.mkv", - }, - "url": "https://hubcloud.foo/drive/qgdndi5j1rvil2l", - }, - { - "meta": { - "bytes": 4949949808, - "countryCodes": [ - "multi", - "hi", - ], - "height": 720, - "title": "Rathnam.2024.720p.AMZN.WEB-DL.DDP2.0.H.264-XDMovies.mkv", - }, - "url": "https://hubcloud.foo/drive/iy7587kppeg6b6p", - }, - { - "meta": { - "bytes": 4080218931, - "countryCodes": [ - "multi", - "hi", - ], - "height": 1080, - "title": "Rathnam.2024.1080p.AMZN.WEB-DL.DDP2.0.H.265-XDMovies.mkv", - }, - "url": "https://hubcloud.foo/drive/oae0mzzzje1xrvy", - }, - { - "meta": { - "bytes": 9105330667, - "countryCodes": [ - "multi", - "hi", - ], - "height": 1080, - "title": "Rathnam.2024.1080p.AMZN.WEB-DL.DDP2.0.H.264-XDMovies.mkv", - }, - "url": "https://hubcloud.foo/drive/dn5g8g5drixrrl1", - }, -] -`; - -exports[`XDMovies handle stranger things s05e08 1`] = ` -[ - { - "meta": { - "bytes": 17544941404, - "countryCodes": [ - "multi", - "en", - "hi", - "ta", - "te", - ], - "height": 2160, - "title": "Stranger.Things.S05E08.2160p.NF.WEB-DL.DDP5.1.H.265-XDMovies.mkv", - }, - "url": "https://hubcloud.foo/drive/k7sgskvmmzppzap", - }, - { - "meta": { - "bytes": 1513975971, - "countryCodes": [ - "multi", - "en", - "hi", - "ta", - "te", - ], - "height": 1080, - "title": "Stranger.Things.S05E08.1080p.NF.WEB-DL.AAC5.1.AV1-XDMovies.mkv", - }, - "url": "https://hubcloud.foo/drive/ft5h778dgcot8yd", - }, - { - "meta": { - "bytes": 5508295557, - "countryCodes": [ - "multi", - "en", - "hi", - "ta", - "te", - ], - "height": 1080, - "title": "Stranger.Things.S05E08.1080p.NF.WEB-DL.DDP5.1.H.265-XDMovies.mkv", - }, - "url": "https://hubcloud.foo/drive/d140ytrad4r228o", - }, - { - "meta": { - "bytes": 7215545057, - "countryCodes": [ - "multi", - "en", - "hi", - "ta", - "te", - ], - "height": 1080, - "title": "Stranger.Things.S05E08.1080p.NF.WEB-DL.DDP5.1.Atmos.H.264-XDMovies.mkv", - }, - "url": "https://hubcloud.foo/drive/8mxktxm8ho4ib44", - }, - { - "meta": { - "bytes": 5991479377, - "countryCodes": [ - "multi", - "en", - "hi", - "ta", - "te", - ], - "height": 1080, - "title": "Stranger.Things.S05E08.1080p.NF.WEB-DL.DDP5.1.DV.HDR.H.265-XDMovies.mkv", - }, - "url": "https://hubcloud.foo/drive/bzxqjl1vkvdxsvy", - }, - { - "meta": { - "bytes": 1170378588, - "countryCodes": [ - "multi", - "en", - "hi", - "ta", - "te", - ], - "height": 720, - "title": "Stranger.Things.S05E08.720p.NF.WEB-DL.AAC5.1.AV1-XDMovies.mkv", - }, - "url": "https://hubcloud.foo/drive/vfhor1uv59jkrha", - }, - { - "meta": { - "bytes": 2534030704, - "countryCodes": [ - "multi", - "en", - "hi", - "ta", - "te", - ], - "height": 720, - "title": "Stranger.Things.S05E08.720p.NF.WEB-DL.AAC5.1.H.264-XDMovies.mkv", - }, - "url": "https://hubcloud.foo/drive/njntlayllkcrtb1", - }, -] -`; diff --git a/src/source/index.ts b/src/source/index.ts index 982c795..2cf1b5b 100644 --- a/src/source/index.ts +++ b/src/source/index.ts @@ -19,7 +19,6 @@ import { StreamKiste } from './StreamKiste'; import { VerHdLink } from './VerHdLink'; import { VidSrc } from './VidSrc'; import { VixSrc } from './VixSrc'; -import { XDMovies } from './XDMovies'; export * from './Source'; @@ -29,7 +28,6 @@ export const createSources = (fetcher: Fetcher): Source[] => { return [ // multi new FourKHDHub(fetcher), - new XDMovies(fetcher), new VixSrc(fetcher), new VidSrc(), new RgShows(fetcher), diff --git a/src/utils/__snapshots__/manifest.test.ts.snap b/src/utils/__snapshots__/manifest.test.ts.snap index 12faaff..0a31055 100644 --- a/src/utils/__snapshots__/manifest.test.ts.snap +++ b/src/utils/__snapshots__/manifest.test.ts.snap @@ -11,7 +11,7 @@ exports[`buildManifest default manifest 1`] = ` "config": [ { "key": "multi", - "title": "Multi 🌐 (4KHDHub, RgShows, VidSrc, VixSrc, XDMovies)", + "title": "Multi 🌐 (4KHDHub, RgShows, VidSrc, VixSrc)", "type": "checkbox", }, { @@ -19,11 +19,6 @@ exports[`buildManifest default manifest 1`] = ` "title": "Albanian 🇦🇱 (Kokoshka)", "type": "checkbox", }, - { - "key": "bl", - "title": "Bengali 🇮🇳 (XDMovies)", - "type": "checkbox", - }, { "key": "de", "title": "German 🇩🇪 (Einschalten, KinoGer, MegaKino, MeineCloud, StreamKiste)", @@ -39,14 +34,9 @@ exports[`buildManifest default manifest 1`] = ` "title": "French 🇫🇷 (Frembed, FrenchCloud, Movix)", "type": "checkbox", }, - { - "key": "gu", - "title": "Gujarati 🇮🇳 (XDMovies)", - "type": "checkbox", - }, { "key": "hi", - "title": "Hindi 🇮🇳 (4KHDHub, XDMovies)", + "title": "Hindi 🇮🇳 (4KHDHub)", "type": "checkbox", }, { @@ -54,49 +44,19 @@ exports[`buildManifest default manifest 1`] = ` "title": "Italian 🇮🇹 (Eurostreaming, MostraGuarda, VixSrc)", "type": "checkbox", }, - { - "key": "ja", - "title": "Japanese 🇯🇵 (XDMovies)", - "type": "checkbox", - }, - { - "key": "kn", - "title": "Kannada 🇮🇳 (XDMovies)", - "type": "checkbox", - }, - { - "key": "ko", - "title": "Korean 🇰🇷 (XDMovies)", - "type": "checkbox", - }, - { - "key": "ml", - "title": "Malayalam 🇮🇳 (XDMovies)", - "type": "checkbox", - }, - { - "key": "mr", - "title": "Marathi 🇮🇳 (XDMovies)", - "type": "checkbox", - }, { "key": "mx", "title": "Latin American Spanish 🇲🇽 (CineHDPlus, Cuevana, HomeCine, VerHdLink)", "type": "checkbox", }, - { - "key": "pa", - "title": "Punjabi 🇮🇳 (XDMovies)", - "type": "checkbox", - }, { "key": "ta", - "title": "Tamil 🇮🇳 (4KHDHub, XDMovies)", + "title": "Tamil 🇮🇳 (4KHDHub)", "type": "checkbox", }, { "key": "te", - "title": "Telugu 🇮🇳 (4KHDHub, XDMovies)", + "title": "Telugu 🇮🇳 (4KHDHub)", "type": "checkbox", }, { @@ -124,9 +84,9 @@ exports[`buildManifest default manifest 1`] = ` ], "description": "Provides HTTP URLs from streaming websites. Configure add-on for additional languages. Add MediaFlow proxy for more URLs. -Supported languages: Albanian, Bengali, German, Castilian Spanish, French, Gujarati, Hindi, Italian, Japanese, Kannada, Korean, Malayalam, Marathi, Latin American Spanish, Punjabi, Tamil, Telugu +Supported languages: Albanian, German, Castilian Spanish, French, Hindi, Italian, Latin American Spanish, Tamil, Telugu -Supported sources: 4KHDHub, CineHDPlus, Cuevana, Einschalten, Eurostreaming, Frembed, FrenchCloud, HomeCine, KinoGer, Kokoshka, MegaKino, MeineCloud, MostraGuarda, Movix, RgShows, StreamKiste, VerHdLink, VidSrc, VixSrc, XDMovies +Supported sources: 4KHDHub, CineHDPlus, Cuevana, Einschalten, Eurostreaming, Frembed, FrenchCloud, HomeCine, KinoGer, Kokoshka, MegaKino, MeineCloud, MostraGuarda, Movix, RgShows, StreamKiste, VerHdLink, VidSrc, VixSrc Supported extractors: ", "id": "webstreamr",