-
Notifications
You must be signed in to change notification settings - Fork 16
Expand file tree
/
Copy pathprocessing.ts
More file actions
36 lines (33 loc) · 866 Bytes
/
Copy pathprocessing.ts
File metadata and controls
36 lines (33 loc) · 866 Bytes
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
import type { Audit, Group } from '@code-pushup/models';
import {
expandAuditsForUrls,
expandGroupsForUrls,
shouldExpandForUrls,
} from '@code-pushup/utils';
import type { AxePreset } from './config.js';
import {
loadAxeRules,
transformRulesToAudits,
transformRulesToGroups,
} from './meta/transform.js';
export function processAuditsAndGroups(
urls: string[],
preset: AxePreset,
): {
audits: Audit[];
groups: Group[];
ruleIds: string[];
} {
const rules = loadAxeRules(preset);
const ruleIds = rules.map(({ ruleId }) => ruleId);
const audits = transformRulesToAudits(rules);
const groups = transformRulesToGroups(rules);
if (!shouldExpandForUrls(urls.length)) {
return { audits, groups, ruleIds };
}
return {
audits: expandAuditsForUrls(audits, urls),
groups: expandGroupsForUrls(groups, urls),
ruleIds,
};
}