From 65d78b3915c5e917d3814820963a715de01d314c Mon Sep 17 00:00:00 2001 From: SukkaW Date: Sun, 22 Sep 2024 00:59:08 +0800 Subject: [PATCH] Fix: reject whitelist --- Build/build-reject-domainset.ts | 8 ++++++++ Build/lib/rules/base.ts | 5 +++++ 2 files changed, 13 insertions(+) diff --git a/Build/build-reject-domainset.ts b/Build/build-reject-domainset.ts index 6a3e30a3..39280550 100644 --- a/Build/build-reject-domainset.ts +++ b/Build/build-reject-domainset.ts @@ -129,6 +129,14 @@ export const buildRejectDomainSet = task(require.main === module, __filename)(as } }); + // whitelist + span.traceChildSync('whitelist', () => { + for (const domain of filterRuleWhitelistDomainSets) { + rejectOutput.whitelistDomain(domain); + rejectExtraOutput.whitelistDomain(domain); + } + }); + await Promise.all([ rejectOutput.done(), rejectExtraOutput.done() diff --git a/Build/lib/rules/base.ts b/Build/lib/rules/base.ts index 867ff468..6971da49 100644 --- a/Build/lib/rules/base.ts +++ b/Build/lib/rules/base.ts @@ -38,6 +38,11 @@ export abstract class RuleOutput { static jsonToLines = (json: unknown): string[] => stringify(json).split('\n'); + whitelistDomain = (domain: string) => { + this.domainTrie.whitelist(domain); + return this; + }; + static domainWildCardToRegex = (domain: string) => { let result = '^'; for (let i = 0, len = domain.length; i < len; i++) {