diff --git a/src/embed-extractor/Dropload.ts b/src/embed-extractor/Dropload.ts index ca80d5c..ff90144 100644 --- a/src/embed-extractor/Dropload.ts +++ b/src/embed-extractor/Dropload.ts @@ -18,7 +18,7 @@ export class Dropload implements EmbedExtractor { readonly supports = (url: URL): boolean => null !== url.host.match(/dropload/); - readonly extract = async (ctx: Context, url: URL, language: string) => { + readonly extract = async (ctx: Context, url: URL, countryCode: string) => { const normalizedUrl = url.toString().replace('/e/', '').replace('/embed-', '/'); const html = await this.fetcher.text(ctx, new URL(normalizedUrl)); @@ -32,7 +32,7 @@ export class Dropload implements EmbedExtractor { sourceId: this.id, height: parseInt(heightMatch[1] as string) as number, bytes: bytes.parse(sizeMatch[1] as string) as number, - language, + countryCode, }; }; } diff --git a/src/embed-extractor/EmbedExtractors.ts b/src/embed-extractor/EmbedExtractors.ts index e1ee59d..e95d623 100644 --- a/src/embed-extractor/EmbedExtractors.ts +++ b/src/embed-extractor/EmbedExtractors.ts @@ -12,7 +12,7 @@ export class EmbedExtractors { this.urlResultCache = new TTLCache({ max: 1024 }); } - readonly handle = async (ctx: Context, url: URL, language: string): Promise => { + readonly handle = async (ctx: Context, url: URL, countryCode: string): Promise => { let urlResult = this.urlResultCache.get(url.href); if (urlResult) { return urlResult; @@ -23,7 +23,7 @@ export class EmbedExtractors { throw new Error(`No embed extractor found that supports url ${url}`); } - urlResult = await embedExtractor.extract(ctx, url, language); + urlResult = await embedExtractor.extract(ctx, url, countryCode); this.urlResultCache.set(url.href, urlResult, { ttl: embedExtractor.ttl }); return urlResult; diff --git a/src/embed-extractor/SuperVideo.ts b/src/embed-extractor/SuperVideo.ts index d508f2d..fdc26c3 100644 --- a/src/embed-extractor/SuperVideo.ts +++ b/src/embed-extractor/SuperVideo.ts @@ -18,7 +18,7 @@ export class SuperVideo implements EmbedExtractor { readonly supports = (url: URL): boolean => null !== url.host.match(/supervideo/); - readonly extract = async (ctx: Context, url: URL, language: string) => { + readonly extract = async (ctx: Context, url: URL, countryCode: string) => { const normalizedUrl = url.toString().replace('/e/', '/').replace('/embed-', '/'); const html = await this.fetcher.text(ctx, new URL(normalizedUrl)); @@ -30,7 +30,7 @@ export class SuperVideo implements EmbedExtractor { sourceId: this.id, height: parseInt(heightAndSizeMatch[1] as string) as number, bytes: bytes.parse(heightAndSizeMatch[2] as string) as number, - language, + countryCode, }; }; } diff --git a/src/embed-extractor/types.ts b/src/embed-extractor/types.ts index a54df07..8bf4ccc 100644 --- a/src/embed-extractor/types.ts +++ b/src/embed-extractor/types.ts @@ -9,5 +9,5 @@ export interface EmbedExtractor { readonly supports: (url: URL) => boolean; - readonly extract: (ctx: Context, url: URL, language: string) => Promise; + readonly extract: (ctx: Context, url: URL, countryCode: string) => Promise; } diff --git a/src/handler/FrenchCloud.test.ts b/src/handler/FrenchCloud.test.ts index e2fcfdd..0d9aa5e 100644 --- a/src/handler/FrenchCloud.test.ts +++ b/src/handler/FrenchCloud.test.ts @@ -32,7 +32,7 @@ describe('FrenchCloud', () => { sourceId: 'supervideo', height: 720, bytes: 966682214, - language: 'fr', + countryCode: 'fr', }); expect(streams[0]?.url.href).toMatch(/^https:\/\/.*?.m3u8/); expect(streams[1]).toStrictEqual({ @@ -41,7 +41,7 @@ describe('FrenchCloud', () => { sourceId: 'dropload', height: 720, bytes: 966682214, - language: 'fr', + countryCode: 'fr', }); expect(streams[1]?.url.href).toMatch(/^https:\/\/.*?.m3u8/); }); diff --git a/src/handler/KinoKiste.test.ts b/src/handler/KinoKiste.test.ts index d7167af..aa4ddb7 100644 --- a/src/handler/KinoKiste.test.ts +++ b/src/handler/KinoKiste.test.ts @@ -32,7 +32,7 @@ describe('KinoKiste', () => { sourceId: 'supervideo', height: 720, bytes: 733793484, - language: 'de', + countryCode: 'de', }); expect(streams[0]?.url.href).toMatch(/^https:\/\/.*?.m3u8/); expect(streams[1]).toStrictEqual({ @@ -41,7 +41,7 @@ describe('KinoKiste', () => { sourceId: 'dropload', height: 720, bytes: 733793484, - language: 'de', + countryCode: 'de', }); expect(streams[1]?.url.href).toMatch(/^https:\/\/.*?.m3u8/); }); diff --git a/src/handler/MeineCloud.test.ts b/src/handler/MeineCloud.test.ts index 7825d68..264425d 100644 --- a/src/handler/MeineCloud.test.ts +++ b/src/handler/MeineCloud.test.ts @@ -32,7 +32,7 @@ describe('MeineCloud', () => { sourceId: 'supervideo', height: 720, bytes: 1073741824, - language: 'de', + countryCode: 'de', }); expect(streams[0]?.url.href).toMatch(/^https:\/\/.*?.m3u8/); expect(streams[1]).toStrictEqual({ @@ -41,7 +41,7 @@ describe('MeineCloud', () => { sourceId: 'dropload', height: 1080, bytes: 1395864371, - language: 'de', + countryCode: 'de', }); expect(streams[1]?.url.href).toMatch(/^https:\/\/.*?.m3u8/); }); diff --git a/src/handler/MostraGuarda.test.ts b/src/handler/MostraGuarda.test.ts index c8d5493..50e5500 100644 --- a/src/handler/MostraGuarda.test.ts +++ b/src/handler/MostraGuarda.test.ts @@ -32,7 +32,7 @@ describe('MostraGuarda', () => { sourceId: 'supervideo', height: 720, bytes: 1181116006, - language: 'it', + countryCode: 'it', }); expect(streams[0]?.url.href).toMatch(/^https:\/\/.*?.m3u8/); expect(streams[1]).toStrictEqual({ @@ -41,7 +41,7 @@ describe('MostraGuarda', () => { sourceId: 'dropload', height: 720, bytes: 1181116006, - language: 'it', + countryCode: 'it', }); expect(streams[1]?.url.href).toMatch(/^https:\/\/.*?.m3u8/); }); diff --git a/src/index.ts b/src/index.ts index e7ffdca..9d3b4f4 100644 --- a/src/index.ts +++ b/src/index.ts @@ -154,8 +154,8 @@ addon.get('/:config/stream/:type/:id.json', async function (req: Request, res: R if (urlResult.bytes) { title += ` | 💾 ${bytes.format(urlResult.bytes, { unitSeparator: ' ' })}`; } - if (urlResult.language) { - title += ` | ${flag(urlResult.language)}`; + if (urlResult.countryCode) { + title += ` | ${flag(urlResult.countryCode)}`; } return { diff --git a/src/types.ts b/src/types.ts index b3247e7..3101d97 100644 --- a/src/types.ts +++ b/src/types.ts @@ -12,5 +12,5 @@ export interface UrlResult { sourceId: string; height: number | undefined; bytes: number | undefined; - language: string | undefined; + countryCode: string | undefined; }