export const formatSubtitles = (subtitles) => { if (!subtitles || subtitles.length == 0) { return new Map(); } let map = new Map(); subtitles.forEach((subtitle) => { subtitle = formatSubtitle(subtitle); map.set(subtitle.lang, subtitle); }); return map; }; export const formatSubtitle = (subtitle) => { if (!subtitle) { return undefined; } subtitle.searching = false; return subtitle; }; export const formatTorrents = (input) => { if (!input.torrents || input.torrents.length == 0) { return undefined; } let torrentMap = new Map(); input.torrents.forEach((torrent) => { if (!torrent.result || !torrent.result.source) { return; } if (!torrentMap.has(torrent.result.source)) { torrentMap.set(torrent.result.source, new Map()); } torrentMap.get(torrent.result.source).set(torrent.quality, torrent); }); return torrentMap; }; export const formatMovie = (movie) => { movie.fetchingDetails = false; movie.fetchingSubtitles = []; movie.torrents = formatTorrents(movie); movie.subtitles = formatSubtitles(movie.subtitles); return movie; };