MCPcopy Create free account
hub / github.com/VPSDance/ai-proxy-rules / countRulesFromText

Function countRulesFromText

scripts/checks/guard.ts:119–153  ·  view source on GitHub ↗
(text: string)

Source from the content-addressed store, hash-verified

117}
118
119export function countRulesFromText(text: string): number {
120 const parsed = parse(text) as
121 | {
122 groups?: Array<{
123 rules?: {
124 domain?: unknown[];
125 domainSuffix?: unknown[];
126 domainKeyword?: unknown[];
127 domainRegex?: unknown[];
128 processName?: unknown[];
129 ipCidr?: unknown[];
130 ipCidr6?: unknown[];
131 asn?: unknown[];
132 };
133 }>;
134 }
135 | null
136 | undefined;
137
138 if (!parsed?.groups) {
139 return 0;
140 }
141
142 let count = 0;
143 for (const group of parsed.groups) {
144 const rules = group.rules ?? {};
145 count += rules.domain?.length ?? 0;
146 count += rules.domainSuffix?.length ?? 0;
147 count += rules.domainKeyword?.length ?? 0;
148 count += rules.domainRegex?.length ?? 0;
149 count += rules.processName?.length ?? 0;
150 count += rules.ipCidr?.length ?? 0;
151 count += rules.ipCidr6?.length ?? 0;
152 count += rules.asn?.length ?? 0;
153 }
154 return count;
155}
156

Callers 4

runFunction · 0.85
diffSummaryFunction · 0.85
evaluateGuardFunction · 0.85
checks.test.tsFile · 0.85

Calls

no outgoing calls

Tested by

no test coverage detected