Surge_by_SukkaW/Dist/validate-reject-stats.cjs
SukkaW d354c5e988
Some checks are pending
Build / Build (push) Waiting to run
Build / Diff output (push) Blocked by required conditions
Build / Deploy to Cloudflare Pages (push) Blocked by required conditions
Build / Deploy to GitHub and GitLab (push) Blocked by required conditions
Chore: maintainance
2025-02-07 17:52:36 +08:00

43 lines
2.7 KiB
JavaScript

'use strict';const fetchRetry=require('./chunks/fetch-retry.D06uBUaW.cjs'),require$$0$1=require('node:path'),fetchTextByLine=require('./chunks/fetch-text-by-line.YY5b5610.cjs'),require$$0=require('tldts'),looseTldtsOpt=require('./chunks/loose-tldts-opt.DLUpGXpj.cjs');require('picocolors'),require('undici'),require('undici-cache-store-better-sqlite3'),require('node:util'),require('node:fs'),require('node:process'),require('node:readline'),require('node:stream/web'),require('foxts/guard');var validateRejectStats$1 = {};var hasRequiredValidateRejectStats;
function requireValidateRejectStats () {
if (hasRequiredValidateRejectStats) return validateRejectStats$1;
hasRequiredValidateRejectStats = 1;
Object.defineProperty(validateRejectStats$1, "__esModule", {
value: true
});
const _nodepath = /*#__PURE__*/ _interop_require_default(require$$0$1);
const _fetchtextbyline = /*@__PURE__*/ fetchTextByLine.a();
const _dir = /*@__PURE__*/ fetchRetry.a();
const _processline = /*@__PURE__*/ fetchTextByLine.r();
const _tldts = /*#__PURE__*/ _interop_require_default(require$$0);
const _loosetldtsopt = /*@__PURE__*/ looseTldtsOpt.r();
function _interop_require_default(obj) {
return obj && obj.__esModule ? obj : {
default: obj
};
}
(async ()=>{
const rejectDomainCountMap = await runAgainstDomainset(new Map(), _nodepath.default.join(_dir.OUTPUT_SURGE_DIR, 'domainset', 'reject.conf'));
const rejectExtraDomainCountMap = await runAgainstDomainset(new Map(), _nodepath.default.join(_dir.OUTPUT_SURGE_DIR, 'domainset', 'reject_extra.conf'));
const rejectDomainCountArr = Array.from(rejectDomainCountMap).sort((a, b)=>b[1] - a[1]).filter(([, count])=>count > 20);
const rejectExtraDomainCountArr = Array.from(rejectExtraDomainCountMap).sort((a, b)=>b[1] - a[1]).filter(([, count])=>count > 20);
console.table(rejectDomainCountArr);
console.table(rejectExtraDomainCountArr);
})();
async function runAgainstDomainset(rejectDomainCountMap, file) {
for await (const line of (0, _fetchtextbyline.readFileByLine)(file)){
if (!(0, _processline.processLine)(line)) {
continue;
}
const apexDomain = _tldts.default.getDomain(line, _loosetldtsopt.loosTldOptWithPrivateDomains);
if (!apexDomain) {
continue;
}
rejectDomainCountMap.set(apexDomain, rejectDomainCountMap.has(apexDomain) ? rejectDomainCountMap.get(apexDomain) + 1 : 1);
}
return rejectDomainCountMap;
}
return validateRejectStats$1;
}var validateRejectStatsExports = requireValidateRejectStats();
const validateRejectStats = /*@__PURE__*/fetchRetry.g(validateRejectStatsExports);module.exports=validateRejectStats;