"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.getStream = void 0; const types_1 = require("../types"); const getStream = async function ({ link: id, providerContext, }) { try { const { getBaseUrl } = providerContext; const episodeId = id.split("*")[0]; const mediaId = id.split("*")[1]; const baseUrl = await getBaseUrl("consumet"); const serverUrl = `${baseUrl}/movies/flixhq/servers?episodeId=${episodeId}&mediaId=${mediaId}`; const res = await fetch(serverUrl); const servers = await res.json(); const streamLinks = []; for (const server of servers) { const streamUrl = `${baseUrl}/movies/flixhq/watch?server=` + server.name + "&episodeId=" + episodeId + "&mediaId=" + mediaId; const streamRes = await fetch(streamUrl); const streamData = await streamRes.json(); const subtitles = []; if (streamData?.sources?.length > 0) { if (streamData.subtitles) { streamData.subtitles.forEach((sub) => { subtitles.push({ language: sub?.lang?.slice(0, 2), uri: sub?.url, type: types_1.TextTrackType.VTT, title: sub?.lang, }); }); } streamData.sources.forEach((source) => { streamLinks.push({ server: server?.name + "-" + source?.quality?.replace("auto", "MultiQuality"), link: source.url, type: source.isM3U8 ? "m3u8" : "mp4", subtitles: subtitles, }); }); } } return streamLinks; } catch (err) { console.error(err); return []; } }; exports.getStream = getStream;