UNPKG

rsshub

Version:
83 lines (82 loc) 2.82 kB
import { t as config } from "./config-CCmw1BNE.mjs"; import { t as ConfigNotFoundError } from "./config-not-found-fQ5mxvDU.mjs"; //#region lib/routes/domp4/utils.ts const defaultDomain = "www.xlmp4.com"; const allowedDomains = /* @__PURE__ */ new Set(["www.xlmp4.com"]); /** * trackers from https://www.domp4.cc/Style/2020/js/base.js?v=2 */ const magnetTrackers = [ "https://tracker.iriseden.fr:443/announce", "https://tr.highstar.shop:443/announce", "https://tr.fuckbitcoin.xyz:443/announce", "https://tr.doogh.club:443/announce", "https://tr.burnabyhighstar.com:443/announce", "https://t.btcland.xyz:443/announce", "http://vps02.net.orel.ru:80/announce", "https://tracker.kuroy.me:443/announce", "http://tr.cili001.com:8070/announce", "http://t.overflow.biz:6969/announce", "http://t.nyaatracker.com:80/announce", "http://open.acgnxtracker.com:80/announce", "http://nyaa.tracker.wf:7777/announce", "http://home.yxgz.vip:6969/announce", "http://buny.uk:6969/announce", "https://tracker.tamersunion.org:443/announce", "https://tracker.nanoha.org:443/announce", "https://tracker.loligirl.cn:443/announce", "udp://bubu.mapfactor.com:6969/announce", "http://share.camoe.cn:8080/announce", "udp://movies.zsw.ca:6969/announce", "udp://ipv4.tracker.harry.lu:80/announce", "udp://tracker.sylphix.com:6969/announce", "http://95.216.22.207:9001/announce" ]; /** * compose magnet url with trackers */ function composeMagnetUrl(magnet, trackers = magnetTrackers) { return `${magnet}&tr=${trackers.join("&tr=")}`; } /** * method for download url type */ function getUrlType(url) { if (url.startsWith("magnet:")) return "magnet"; if (url.startsWith("ed2k:")) return "ed2k"; return ""; } /** * method for generating magnet url * from the detail page source */ function decodeCipherText(p, a, c, k, e, d) { e = function(c) { return (c < a ? "" : e(Number.parseInt((c / a).toString()))) + ((c = c % a) > 35 ? String.fromCodePoint(c + 29) : c.toString(36)); }; if (!"".replace(/^/, () => "")) { while (c--) d[e(c.toString())] = k[c] || e(c.toString()); k = [function(e) { return d[e]; }]; e = function() { return String.raw`\w+`; }; c = 1; } while (c--) { const replacement = k[c]; if (replacement) { const token = e(c.toString()); p = p.replaceAll(new RegExp(String.raw`\b` + token + String.raw`\b`, "g"), () => replacement); } } return p; } function ensureDomain(ctx, domain = defaultDomain) { const origin = `https://${domain}`; if (!config.feature.allow_user_supply_unsafe_domain && !allowedDomains.has(new URL(origin).hostname)) throw new ConfigNotFoundError(`This RSS is disabled unless 'ALLOW_USER_SUPPLY_UNSAFE_DOMAIN' is set to 'true'.`); return origin; } //#endregion export { getUrlType as i, decodeCipherText as n, ensureDomain as r, composeMagnetUrl as t };