refactor: pretty much the whole backend module hierarchy

This commit is contained in:
Aleksi Lassila
2025-02-11 02:40:41 +02:00
parent 6969525464
commit fa27f19975
96 changed files with 1786 additions and 2033 deletions

View File

@@ -35,8 +35,8 @@ class TorrentProvider extends SourceProvider {
name: string = 'torrent';
settingsManager: SettingsManager = new TorrentSettingsManager();
get proxyUrl() {
return `/api/sources/${this.name}/proxy`;
getProxyUrl(sourceId: string) {
return `/api/sources/${sourceId}/proxy`;
}
getMovieStreams = async (
@@ -136,7 +136,7 @@ class TorrentProvider extends SourceProvider {
throw new Error('Torrent not found');
}
const src = `${this.proxyUrl}/magnet?link=${encodeURIComponent(torrent?.link)}&reiverr_token=${context.token}`;
const src = `${this.getProxyUrl(context.sourceId)}/magnet?link=${encodeURIComponent(torrent?.link)}&reiverr_token=${context.token}`;
const files = await getFiles(context.userId, torrent.link);
@@ -146,7 +146,7 @@ class TorrentProvider extends SourceProvider {
.filter((f) => subtitleExtensions.some((ext) => f.name.endsWith(ext)))
.map((f) => ({
kind: 'subtitles',
src: `${this.proxyUrl}/magnet?link=${encodeURIComponent(torrent.link)}&reiverr_token=${context.token}&file=${f.name}`,
src: `${this.getProxyUrl(context.sourceId)}/magnet?link=${encodeURIComponent(torrent.link)}&reiverr_token=${context.token}&file=${f.name}`,
label: f.name,
lang: 'unknown',
}));
@@ -193,7 +193,7 @@ class TorrentProvider extends SourceProvider {
throw new Error('Torrent not found');
}
const src = `${this.proxyUrl}/magnet?link=${encodeURIComponent(torrent.link)}&reiverr_token=${context.token}&season=${metadata.season}&episode=${metadata.episode}`;
const src = `${this.getProxyUrl(context.sourceId)}/magnet?link=${encodeURIComponent(torrent.link)}&reiverr_token=${context.token}&season=${metadata.season}&episode=${metadata.episode}`;
const files = await getFiles(context.userId, torrent.link);
@@ -201,7 +201,7 @@ class TorrentProvider extends SourceProvider {
.filter((f) => subtitleExtensions.some((ext) => f.name.endsWith(ext)))
.map((f) => ({
kind: 'subtitles',
src: `${this.proxyUrl}/magnet?link=${encodeURIComponent(torrent.link)}&reiverr_token=${context.token}&file=${f.name}`,
src: `${this.getProxyUrl(context.sourceId)}/magnet?link=${encodeURIComponent(torrent.link)}&reiverr_token=${context.token}&file=${f.name}`,
label: f.name,
lang: 'unknown',
}));