New Domestic CDN Hosts Output Support

This commit is contained in:
SukkaW
2026-09-23 02:37:40 +08:00
parent 1baae2ff74
commit 8b5e39525b
7 changed files with 122 additions and 32 deletions

View File

@@ -8,6 +8,7 @@ import { HostnameSmolTrie } from 'hntrie/smol';
import { domainToASCII } from 'node:url';
import tldts from 'tldts-experimental';
import { DOMESTICS } from '../Source/non_ip/domestic';
import { DOMESTIC_CDN } from '../Source/non_ip/domestic_cdn';
export async function parseDomesticList() {
const allChinaDomains = new Set<string>(await parseFelixDnsmasqFromResp(await $$fetch('https://raw.githubusercontent.com/felixonmars/dnsmasq-china-list/master/accelerated-domains.china.conf')));
@@ -27,6 +28,10 @@ export async function parseDomesticList() {
const callback = (domain: string, includeAllSubdomain: boolean) => resultTrie.whitelist(includeAllSubdomain ? '.' + domain : domain);
// await Promise.all([
await runAgainstSourceFile(
path.resolve(SOURCE_DIR, 'non_ip/domestic_cdn.conf'),
callback
);
await runAgainstSourceFile(
path.resolve(SOURCE_DIR, 'non_ip/domestic.conf'),
callback
@@ -36,7 +41,7 @@ export async function parseDomesticList() {
callback
);
Object.values(DOMESTICS).forEach(domestic => {
[DOMESTICS, DOMESTIC_CDN].flatMap(item => Object.values(item)).forEach(domestic => {
domestic.domains.forEach(domain => {
switch (domain[0]) {
case '+':