@sudobility/testomniac_runner_service 0.1.36 → 0.1.38
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/adapter.d.ts +14 -1
- package/dist/adapter.d.ts.map +1 -1
- package/dist/api/client.d.ts +60 -1
- package/dist/api/client.d.ts.map +1 -1
- package/dist/api/client.js +21 -2
- package/dist/api/client.js.map +1 -1
- package/dist/crawler/link-extractor.d.ts +8 -0
- package/dist/crawler/link-extractor.d.ts.map +1 -0
- package/dist/crawler/link-extractor.js +37 -0
- package/dist/crawler/link-extractor.js.map +1 -0
- package/dist/crawler/url-normalizer.d.ts +4 -0
- package/dist/crawler/url-normalizer.d.ts.map +1 -0
- package/dist/crawler/url-normalizer.js +27 -0
- package/dist/crawler/url-normalizer.js.map +1 -0
- package/dist/expertise/accessibility-expertise.d.ts +11 -0
- package/dist/expertise/accessibility-expertise.d.ts.map +1 -0
- package/dist/expertise/accessibility-expertise.js +131 -0
- package/dist/expertise/accessibility-expertise.js.map +1 -0
- package/dist/expertise/content-expertise.d.ts +10 -0
- package/dist/expertise/content-expertise.d.ts.map +1 -0
- package/dist/expertise/content-expertise.js +102 -0
- package/dist/expertise/content-expertise.js.map +1 -0
- package/dist/expertise/index.d.ts +3 -0
- package/dist/expertise/index.d.ts.map +1 -1
- package/dist/expertise/index.js +9 -4
- package/dist/expertise/index.js.map +1 -1
- package/dist/expertise/ui-expertise.d.ts +10 -0
- package/dist/expertise/ui-expertise.d.ts.map +1 -0
- package/dist/expertise/ui-expertise.js +76 -0
- package/dist/expertise/ui-expertise.js.map +1 -0
- package/dist/index.d.ts +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/orchestrator/decomposition.d.ts.map +1 -1
- package/dist/orchestrator/decomposition.js +558 -65
- package/dist/orchestrator/decomposition.js.map +1 -1
- package/dist/orchestrator/direct-navigation.d.ts +4 -0
- package/dist/orchestrator/direct-navigation.d.ts.map +1 -0
- package/dist/orchestrator/direct-navigation.js +47 -0
- package/dist/orchestrator/direct-navigation.js.map +1 -0
- package/dist/orchestrator/discovery.d.ts +10 -0
- package/dist/orchestrator/discovery.d.ts.map +1 -0
- package/dist/orchestrator/discovery.js +77 -0
- package/dist/orchestrator/discovery.js.map +1 -0
- package/dist/orchestrator/expertise.d.ts +5 -0
- package/dist/orchestrator/expertise.d.ts.map +1 -0
- package/dist/orchestrator/expertise.js +168 -0
- package/dist/orchestrator/expertise.js.map +1 -0
- package/dist/orchestrator/orchestrator.d.ts.map +1 -1
- package/dist/orchestrator/orchestrator.js +63 -37
- package/dist/orchestrator/orchestrator.js.map +1 -1
- package/dist/orchestrator/page-capture.d.ts +22 -0
- package/dist/orchestrator/page-capture.d.ts.map +1 -0
- package/dist/orchestrator/page-capture.js +112 -0
- package/dist/orchestrator/page-capture.js.map +1 -0
- package/dist/orchestrator/test-execution.d.ts.map +1 -1
- package/dist/orchestrator/test-execution.js +18 -37
- package/dist/orchestrator/test-execution.js.map +1 -1
- package/dist/orchestrator/types.d.ts +10 -0
- package/dist/orchestrator/types.d.ts.map +1 -1
- package/package.json +3 -3
package/dist/adapter.d.ts
CHANGED
|
@@ -1,6 +1,15 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Abstract browser interface that both Puppeteer (server) and Chrome APIs (extension) implement.
|
|
3
3
|
*/
|
|
4
|
+
export interface RuntimeArtifacts {
|
|
5
|
+
consoleLogs: string[];
|
|
6
|
+
networkLogs: Array<{
|
|
7
|
+
method: string;
|
|
8
|
+
url: string;
|
|
9
|
+
status: number;
|
|
10
|
+
contentType: string;
|
|
11
|
+
}>;
|
|
12
|
+
}
|
|
4
13
|
export interface BrowserAdapter {
|
|
5
14
|
/** Navigate to a URL */
|
|
6
15
|
goto(url: string, options?: {
|
|
@@ -47,12 +56,16 @@ export interface BrowserAdapter {
|
|
|
47
56
|
/** Close the page/tab */
|
|
48
57
|
close(): Promise<void>;
|
|
49
58
|
/** Subscribe to page events */
|
|
50
|
-
on(event: "console" | "response", handler: (...args: unknown[]) => void): void;
|
|
59
|
+
on(event: "console" | "response", handler: (...args: unknown[]) => void): () => void;
|
|
51
60
|
/** Get the current URL (async — needed by adapters that require async I/O for URL lookup) */
|
|
52
61
|
getUrl(): Promise<string>;
|
|
53
62
|
/** Submit a text entry by pressing Enter on the focused field */
|
|
54
63
|
submitTextEntry(selector: string): Promise<void>;
|
|
55
64
|
/** Close any tabs/windows opened during interaction, keeping only the original */
|
|
56
65
|
closeOtherTabs?(): Promise<void>;
|
|
66
|
+
/** Return buffered runtime artifacts, when supported by the adapter. */
|
|
67
|
+
getRuntimeArtifacts?(): RuntimeArtifacts;
|
|
68
|
+
/** Clear any buffered runtime artifacts, when supported by the adapter. */
|
|
69
|
+
resetRuntimeArtifacts?(): void;
|
|
57
70
|
}
|
|
58
71
|
//# sourceMappingURL=adapter.d.ts.map
|
package/dist/adapter.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"adapter.d.ts","sourceRoot":"","sources":["../src/adapter.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,WAAW,cAAc;IAC7B,wBAAwB;IACxB,IAAI,CACF,GAAG,EAAE,MAAM,EACX,OAAO,CAAC,EAAE;QAAE,SAAS,CAAC,EAAE,MAAM,CAAC;QAAC,OAAO,CAAC,EAAE,MAAM,CAAA;KAAE,GACjD,OAAO,CAAC,IAAI,CAAC,CAAC;IAEjB,uCAAuC;IACvC,KAAK,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE;QAAE,OAAO,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAEvE,4CAA4C;IAC5C,KAAK,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE;QAAE,OAAO,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAEvE,gCAAgC;IAChC,IAAI,CAAC,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAEpD,oCAAoC;IACpC,eAAe,CACb,QAAQ,EAAE,MAAM,EAChB,OAAO,CAAC,EAAE;QAAE,OAAO,CAAC,EAAE,OAAO,CAAC;QAAC,OAAO,CAAC,EAAE,MAAM,CAAA;KAAE,GAChD,OAAO,CAAC,OAAO,CAAC,CAAC;IAEpB,sCAAsC;IACtC,iBAAiB,CAAC,OAAO,CAAC,EAAE;QAC1B,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,OAAO,CAAC,EAAE,MAAM,CAAC;KAClB,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAElB,6CAA6C;IAC7C,QAAQ,CAAC,CAAC,EACR,EAAE,EAAE,MAAM,GAAG,CAAC,CAAC,GAAG,IAAI,EAAE,OAAO,EAAE,KAAK,CAAC,CAAC,EACxC,GAAG,IAAI,EAAE,OAAO,EAAE,GACjB,OAAO,CAAC,CAAC,CAAC,CAAC;IAEd,6BAA6B;IAC7B,OAAO,IAAI,OAAO,CAAC,MAAM,CAAC,CAAC;IAE3B,0BAA0B;IAC1B,GAAG,IAAI,MAAM,CAAC;IAEd,wBAAwB;IACxB,UAAU,CAAC,OAAO,CAAC,EAAE;QACnB,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,OAAO,CAAC,EAAE,MAAM,CAAC;KAClB,GAAG,OAAO,CAAC,UAAU,CAAC,CAAC;IAExB,8BAA8B;IAC9B,WAAW,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAE1D,2BAA2B;IAC3B,QAAQ,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAErC,6CAA6C;IAC7C,MAAM,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAEvD,yBAAyB;IACzB,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAEvB,+BAA+B;IAC/B,EAAE,CACA,KAAK,EAAE,SAAS,GAAG,UAAU,EAC7B,OAAO,EAAE,CAAC,GAAG,IAAI,EAAE,OAAO,EAAE,KAAK,IAAI,GACpC,IAAI,CAAC;
|
|
1
|
+
{"version":3,"file":"adapter.d.ts","sourceRoot":"","sources":["../src/adapter.ts"],"names":[],"mappings":"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"}
|
package/dist/api/client.d.ts
CHANGED
|
@@ -20,9 +20,68 @@ export declare class ApiClient {
|
|
|
20
20
|
findOrCreatePage(runnerId: number, relativePath: string): Promise<PageResponse>;
|
|
21
21
|
markRequiresLogin(pageId: number): Promise<void>;
|
|
22
22
|
getPagesByRunner(runnerId: number): Promise<PageResponse[]>;
|
|
23
|
+
createDiscoveredPages(request: {
|
|
24
|
+
testEnvironmentId: number;
|
|
25
|
+
pages: Array<{
|
|
26
|
+
relativePath: string;
|
|
27
|
+
sourcePagePath?: string;
|
|
28
|
+
sourceLabel?: string;
|
|
29
|
+
isPublic?: boolean;
|
|
30
|
+
}>;
|
|
31
|
+
}): Promise<Array<{
|
|
32
|
+
id: number;
|
|
33
|
+
testEnvironmentId: number;
|
|
34
|
+
relativePath: string;
|
|
35
|
+
sourcePagePath: string | null;
|
|
36
|
+
sourceLabel: string | null;
|
|
37
|
+
isPublic: boolean;
|
|
38
|
+
createdAt: string | null;
|
|
39
|
+
updatedAt: string | null;
|
|
40
|
+
}>>;
|
|
41
|
+
getDiscoveredPages(testEnvironmentId: number): Promise<Array<{
|
|
42
|
+
id: number;
|
|
43
|
+
testEnvironmentId: number;
|
|
44
|
+
relativePath: string;
|
|
45
|
+
sourcePagePath: string | null;
|
|
46
|
+
sourceLabel: string | null;
|
|
47
|
+
isPublic: boolean;
|
|
48
|
+
createdAt: string | null;
|
|
49
|
+
updatedAt: string | null;
|
|
50
|
+
}>>;
|
|
51
|
+
createPageVisit(request: {
|
|
52
|
+
testRunId: number;
|
|
53
|
+
testEnvironmentId: number;
|
|
54
|
+
relativePath: string;
|
|
55
|
+
status: string;
|
|
56
|
+
redirectPath?: string;
|
|
57
|
+
requiresLogin?: boolean;
|
|
58
|
+
errorMessage?: string;
|
|
59
|
+
}): Promise<{
|
|
60
|
+
id: number;
|
|
61
|
+
testRunId: number;
|
|
62
|
+
testEnvironmentId: number;
|
|
63
|
+
relativePath: string;
|
|
64
|
+
status: string;
|
|
65
|
+
redirectPath: string | null;
|
|
66
|
+
requiresLogin: boolean | null;
|
|
67
|
+
errorMessage: string | null;
|
|
68
|
+
createdAt: string | null;
|
|
69
|
+
}>;
|
|
70
|
+
getPageVisits(testRunId: number): Promise<Array<{
|
|
71
|
+
id: number;
|
|
72
|
+
testRunId: number;
|
|
73
|
+
testEnvironmentId: number;
|
|
74
|
+
relativePath: string;
|
|
75
|
+
status: string;
|
|
76
|
+
redirectPath: string | null;
|
|
77
|
+
requiresLogin: boolean | null;
|
|
78
|
+
errorMessage: string | null;
|
|
79
|
+
createdAt: string | null;
|
|
80
|
+
}>>;
|
|
23
81
|
getPageState(id: number): Promise<PageStateResponse | null>;
|
|
24
82
|
getPageStates(pageId: number): Promise<PageStateResponse[]>;
|
|
25
83
|
createPageState(params: CreatePageStateRequest): Promise<PageStateResponse>;
|
|
84
|
+
updatePageStateDecomposedHashes(pageStateId: number, decomposedHashes: DecomposedPageHashes): Promise<void>;
|
|
26
85
|
findMatchingPageState(pageId: number, hashes: PageHashes, sizeClass: string): Promise<PageStateResponse | null>;
|
|
27
86
|
insertActionableItems(htmlElementId: number, items: ActionableItem[]): Promise<ActionableItemResponse[]>;
|
|
28
87
|
getItemsByPageState(pageStateId: number): Promise<ActionableItemResponse[]>;
|
|
@@ -36,7 +95,7 @@ export declare class ApiClient {
|
|
|
36
95
|
getInputValuesByUseCase(useCaseId: number): Promise<InputValueResponse[]>;
|
|
37
96
|
insertForm(pageStateId: number, form: FormInfo, formType?: string): Promise<FormResponse>;
|
|
38
97
|
getFormsByPageState(pageStateId: number): Promise<FormResponse[]>;
|
|
39
|
-
insertTestCase(runnerId: number, testCase: TestCase | LegacyTestCase): Promise<TestCaseResponse>;
|
|
98
|
+
insertTestCase(runnerId: number, testCase: TestCase | LegacyTestCase, testSuiteId?: number): Promise<TestCaseResponse>;
|
|
40
99
|
getTestCasesByRunner(runnerId: number): Promise<TestCaseResponse[]>;
|
|
41
100
|
createDecompositionJob(testRunId: number, pageStateId: number, personaId?: number): Promise<DecompositionJobResponse>;
|
|
42
101
|
getPendingDecompositionJobs(testRunId: number): Promise<DecompositionJobResponse[]>;
|
package/dist/api/client.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../src/api/client.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAEV,yBAAyB,EACzB,sBAAsB,EACtB,cAAc,EAEd,YAAY,EACZ,sBAAsB,EACtB,iBAAiB,EAEjB,sBAAsB,EAEtB,eAAe,EAEf,eAAe,EAEf,kBAAkB,EAElB,YAAY,EACZ,gBAAgB,EAChB,oBAAoB,EACpB,eAAe,EACf,wBAAwB,EACxB,mBAAmB,EACnB,0BAA0B,EAC1B,yBAAyB,EACzB,2BAA2B,EAC3B,oBAAoB,EACpB,+BAA+B,EAC/B,iCAAiC,EACjC,0BAA0B,EAE1B,uBAAuB,EACvB,gCAAgC,EAChC,wBAAwB,EACxB,mBAAmB,EACnB,gBAAgB,EAChB,2BAA2B,EAC3B,UAAU,EACV,oBAAoB,EACpB,cAAc,EACd,QAAQ,EACR,cAAc,EACd,QAAQ,EACR,4BAA4B,EAC5B,4BAA4B,EAC5B,uBAAuB,EAEvB,wBAAwB,EACxB,SAAS,EAET,wBAAwB,EACxB,uBAAuB,EACvB,kBAAkB,EAClB,2BAA2B,EAC3B,sBAAsB,EACtB,iBAAiB,EACjB,sBAAsB,EACtB,qBAAqB,EACrB,0BAA0B,EAC1B,SAAS,EACT,iBAAiB,EAGlB,MAAM,8BAA8B,CAAC;AAEtC,KAAK,kBAAkB,GAAG,sBAAsB,CAAC;AAEjD,qBAAa,SAAS;IACpB,OAAO,CAAC,OAAO,CAAS;IACxB,OAAO,CAAC,MAAM,CAAS;gBAEX,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM;YAK7B,OAAO;IAsBrB,OAAO,CAAC,GAAG;IAIX,OAAO,CAAC,IAAI;IAIZ,OAAO,CAAC,GAAG;IAQX,iBAAiB,IAAI,OAAO,CAAC,eAAe,GAAG,IAAI,CAAC;IAIpD,UAAU,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,eAAe,GAAG,IAAI,CAAC;IAI9D,kBAAkB,CAChB,SAAS,EAAE,MAAM,EACjB,KAAK,EAAE,yBAAyB,GAC/B,OAAO,CAAC,IAAI,CAAC;IAIhB,eAAe,CACb,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE,kBAAkB,GAC1B,OAAO,CAAC,IAAI,CAAC;IAIhB,aAAa,CAAC,OAAO,EAAE,oBAAoB,GAAG,OAAO,CAAC,eAAe,CAAC;IAQtE,iBAAiB,CACf,OAAO,EAAE,wBAAwB,GAChC,OAAO,CAAC,mBAAmB,CAAC;IAI/B,mBAAmB,CACjB,aAAa,EAAE,MAAM,EACrB,OAAO,EAAE,0BAA0B,GAClC,OAAO,CAAC,IAAI,CAAC;IAQhB,SAAS,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,cAAc,GAAG,IAAI,CAAC;IAQrD,OAAO,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,GAAG,IAAI,CAAC;IAIjD,gBAAgB,CACd,QAAQ,EAAE,MAAM,EAChB,YAAY,EAAE,MAAM,GACnB,OAAO,CAAC,YAAY,CAAC;IAKxB,iBAAiB,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAIhD,gBAAgB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,EAAE,CAAC;
|
|
1
|
+
{"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../src/api/client.ts"],"names":[],"mappings":"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"}
|
package/dist/api/client.js
CHANGED
|
@@ -79,6 +79,18 @@ export class ApiClient {
|
|
|
79
79
|
getPagesByRunner(runnerId) {
|
|
80
80
|
return this.get(`/pages?runnerId=${runnerId}`);
|
|
81
81
|
}
|
|
82
|
+
createDiscoveredPages(request) {
|
|
83
|
+
return this.post("/discovered-pages", request);
|
|
84
|
+
}
|
|
85
|
+
getDiscoveredPages(testEnvironmentId) {
|
|
86
|
+
return this.get(`/discovered-pages?testEnvironmentId=${testEnvironmentId}`);
|
|
87
|
+
}
|
|
88
|
+
createPageVisit(request) {
|
|
89
|
+
return this.post("/page-visits", request);
|
|
90
|
+
}
|
|
91
|
+
getPageVisits(testRunId) {
|
|
92
|
+
return this.get(`/page-visits?testRunId=${testRunId}`);
|
|
93
|
+
}
|
|
82
94
|
// ===========================================================================
|
|
83
95
|
// Page States
|
|
84
96
|
// ===========================================================================
|
|
@@ -91,6 +103,13 @@ export class ApiClient {
|
|
|
91
103
|
createPageState(params) {
|
|
92
104
|
return this.post("/page-states", params);
|
|
93
105
|
}
|
|
106
|
+
updatePageStateDecomposedHashes(pageStateId, decomposedHashes) {
|
|
107
|
+
return this.put(`/page-states/${pageStateId}/decomposed-hashes`, {
|
|
108
|
+
fixedBodyHash: decomposedHashes.fixedBodyHash,
|
|
109
|
+
scaffoldsHash: decomposedHashes.scaffoldsHash,
|
|
110
|
+
patternsHash: decomposedHashes.patternsHash,
|
|
111
|
+
});
|
|
112
|
+
}
|
|
94
113
|
findMatchingPageState(pageId, hashes, sizeClass) {
|
|
95
114
|
const qs = new URLSearchParams({
|
|
96
115
|
pageId: String(pageId),
|
|
@@ -160,8 +179,8 @@ export class ApiClient {
|
|
|
160
179
|
// ===========================================================================
|
|
161
180
|
// Test Cases
|
|
162
181
|
// ===========================================================================
|
|
163
|
-
insertTestCase(runnerId, testCase) {
|
|
164
|
-
const body = { runnerId, testCase };
|
|
182
|
+
insertTestCase(runnerId, testCase, testSuiteId) {
|
|
183
|
+
const body = { runnerId, testSuiteId, testCase };
|
|
165
184
|
return this.post("/test-cases", body);
|
|
166
185
|
}
|
|
167
186
|
getTestCasesByRunner(runnerId) {
|
package/dist/api/client.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"client.js","sourceRoot":"","sources":["../../src/api/client.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"client.js","sourceRoot":"","sources":["../../src/api/client.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import type { BrowserAdapter } from "../adapter";
|
|
2
|
+
export interface ExtractedLink {
|
|
3
|
+
url: string;
|
|
4
|
+
relativePath: string;
|
|
5
|
+
label?: string;
|
|
6
|
+
}
|
|
7
|
+
export declare function extractSameOriginLinks(adapter: BrowserAdapter, baseUrl: string): Promise<ExtractedLink[]>;
|
|
8
|
+
//# sourceMappingURL=link-extractor.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"link-extractor.d.ts","sourceRoot":"","sources":["../../src/crawler/link-extractor.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAOjD,MAAM,WAAW,aAAa;IAC5B,GAAG,EAAE,MAAM,CAAC;IACZ,YAAY,EAAE,MAAM,CAAC;IACrB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,wBAAsB,sBAAsB,CAC1C,OAAO,EAAE,cAAc,EACvB,OAAO,EAAE,MAAM,GACd,OAAO,CAAC,aAAa,EAAE,CAAC,CAmC1B"}
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
import { isSameOrigin, normalizeNavigableUrl, toRelativePath, } from "./url-normalizer";
|
|
2
|
+
export async function extractSameOriginLinks(adapter, baseUrl) {
|
|
3
|
+
const rawLinks = await adapter.evaluate(() => {
|
|
4
|
+
return Array.from(document.querySelectorAll("a[href]"))
|
|
5
|
+
.map(anchor => {
|
|
6
|
+
const href = anchor.getAttribute("href");
|
|
7
|
+
if (!href)
|
|
8
|
+
return null;
|
|
9
|
+
const label = anchor.textContent
|
|
10
|
+
?.trim()
|
|
11
|
+
.replace(/\s+/g, " ")
|
|
12
|
+
.slice(0, 120);
|
|
13
|
+
return {
|
|
14
|
+
href,
|
|
15
|
+
label: label || undefined,
|
|
16
|
+
};
|
|
17
|
+
})
|
|
18
|
+
.filter(Boolean);
|
|
19
|
+
});
|
|
20
|
+
const deduped = new Map();
|
|
21
|
+
for (const link of rawLinks) {
|
|
22
|
+
const absoluteUrl = normalizeNavigableUrl(link.href, baseUrl);
|
|
23
|
+
if (!absoluteUrl || !isSameOrigin(absoluteUrl, baseUrl)) {
|
|
24
|
+
continue;
|
|
25
|
+
}
|
|
26
|
+
const relativePath = toRelativePath(absoluteUrl);
|
|
27
|
+
if (!deduped.has(relativePath)) {
|
|
28
|
+
deduped.set(relativePath, {
|
|
29
|
+
url: absoluteUrl,
|
|
30
|
+
relativePath,
|
|
31
|
+
label: link.label,
|
|
32
|
+
});
|
|
33
|
+
}
|
|
34
|
+
}
|
|
35
|
+
return Array.from(deduped.values());
|
|
36
|
+
}
|
|
37
|
+
//# sourceMappingURL=link-extractor.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"link-extractor.js","sourceRoot":"","sources":["../../src/crawler/link-extractor.ts"],"names":[],"mappings":"AACA,OAAO,EACL,YAAY,EACZ,qBAAqB,EACrB,cAAc,GACf,MAAM,kBAAkB,CAAC;AAQ1B,MAAM,CAAC,KAAK,UAAU,sBAAsB,CAC1C,OAAuB,EACvB,OAAe;IAEf,MAAM,QAAQ,GAAG,MAAM,OAAO,CAAC,QAAQ,CAAC,GAAG,EAAE;QAC3C,OAAO,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,gBAAgB,CAAC,SAAS,CAAC,CAAC;aACpD,GAAG,CAAC,MAAM,CAAC,EAAE;YACZ,MAAM,IAAI,GAAG,MAAM,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC;YACzC,IAAI,CAAC,IAAI;gBAAE,OAAO,IAAI,CAAC;YACvB,MAAM,KAAK,GAAG,MAAM,CAAC,WAAW;gBAC9B,EAAE,IAAI,EAAE;iBACP,OAAO,CAAC,MAAM,EAAE,GAAG,CAAC;iBACpB,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;YACjB,OAAO;gBACL,IAAI;gBACJ,KAAK,EAAE,KAAK,IAAI,SAAS;aAC1B,CAAC;QACJ,CAAC,CAAC;aACD,MAAM,CAAC,OAAO,CAA4C,CAAC;IAChE,CAAC,CAAC,CAAC;IAEH,MAAM,OAAO,GAAG,IAAI,GAAG,EAAyB,CAAC;IACjD,KAAK,MAAM,IAAI,IAAI,QAAQ,EAAE,CAAC;QAC5B,MAAM,WAAW,GAAG,qBAAqB,CAAC,IAAI,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;QAC9D,IAAI,CAAC,WAAW,IAAI,CAAC,YAAY,CAAC,WAAW,EAAE,OAAO,CAAC,EAAE,CAAC;YACxD,SAAS;QACX,CAAC;QACD,MAAM,YAAY,GAAG,cAAc,CAAC,WAAW,CAAC,CAAC;QACjD,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,YAAY,CAAC,EAAE,CAAC;YAC/B,OAAO,CAAC,GAAG,CAAC,YAAY,EAAE;gBACxB,GAAG,EAAE,WAAW;gBAChB,YAAY;gBACZ,KAAK,EAAE,IAAI,CAAC,KAAK;aAClB,CAAC,CAAC;QACL,CAAC;IACH,CAAC;IAED,OAAO,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;AACtC,CAAC"}
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
export declare function toRelativePath(url: string): string;
|
|
2
|
+
export declare function normalizeNavigableUrl(href: string, baseUrl: string): string | null;
|
|
3
|
+
export declare function isSameOrigin(url: string, baseUrl: string): boolean;
|
|
4
|
+
//# sourceMappingURL=url-normalizer.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"url-normalizer.d.ts","sourceRoot":"","sources":["../../src/crawler/url-normalizer.ts"],"names":[],"mappings":"AAAA,wBAAgB,cAAc,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAIlD;AAED,wBAAgB,qBAAqB,CACnC,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,MAAM,GACd,MAAM,GAAG,IAAI,CAWf;AAED,wBAAgB,YAAY,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAMlE"}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
export function toRelativePath(url) {
|
|
2
|
+
const parsed = new URL(url);
|
|
3
|
+
const path = parsed.pathname || "/";
|
|
4
|
+
return parsed.search ? `${path}${parsed.search}` : path;
|
|
5
|
+
}
|
|
6
|
+
export function normalizeNavigableUrl(href, baseUrl) {
|
|
7
|
+
try {
|
|
8
|
+
const absolute = new URL(href, baseUrl);
|
|
9
|
+
if (!["http:", "https:"].includes(absolute.protocol)) {
|
|
10
|
+
return null;
|
|
11
|
+
}
|
|
12
|
+
absolute.hash = "";
|
|
13
|
+
return absolute.toString();
|
|
14
|
+
}
|
|
15
|
+
catch {
|
|
16
|
+
return null;
|
|
17
|
+
}
|
|
18
|
+
}
|
|
19
|
+
export function isSameOrigin(url, baseUrl) {
|
|
20
|
+
try {
|
|
21
|
+
return new URL(url).origin === new URL(baseUrl).origin;
|
|
22
|
+
}
|
|
23
|
+
catch {
|
|
24
|
+
return false;
|
|
25
|
+
}
|
|
26
|
+
}
|
|
27
|
+
//# sourceMappingURL=url-normalizer.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"url-normalizer.js","sourceRoot":"","sources":["../../src/crawler/url-normalizer.ts"],"names":[],"mappings":"AAAA,MAAM,UAAU,cAAc,CAAC,GAAW;IACxC,MAAM,MAAM,GAAG,IAAI,GAAG,CAAC,GAAG,CAAC,CAAC;IAC5B,MAAM,IAAI,GAAG,MAAM,CAAC,QAAQ,IAAI,GAAG,CAAC;IACpC,OAAO,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,IAAI,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;AAC1D,CAAC;AAED,MAAM,UAAU,qBAAqB,CACnC,IAAY,EACZ,OAAe;IAEf,IAAI,CAAC;QACH,MAAM,QAAQ,GAAG,IAAI,GAAG,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;QACxC,IAAI,CAAC,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC;YACrD,OAAO,IAAI,CAAC;QACd,CAAC;QACD,QAAQ,CAAC,IAAI,GAAG,EAAE,CAAC;QACnB,OAAO,QAAQ,CAAC,QAAQ,EAAE,CAAC;IAC7B,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,IAAI,CAAC;IACd,CAAC;AACH,CAAC;AAED,MAAM,UAAU,YAAY,CAAC,GAAW,EAAE,OAAe;IACvD,IAAI,CAAC;QACH,OAAO,IAAI,GAAG,CAAC,GAAG,CAAC,CAAC,MAAM,KAAK,IAAI,GAAG,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC;IACzD,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,KAAK,CAAC;IACf,CAAC;AACH,CAAC"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import type { Expertise, ExpertiseContext, Outcome } from "./types";
|
|
2
|
+
export declare class AccessibilityExpertise implements Expertise {
|
|
3
|
+
name: string;
|
|
4
|
+
evaluate(context: ExpertiseContext): Outcome[];
|
|
5
|
+
private checkDocumentLanguage;
|
|
6
|
+
private checkMainLandmark;
|
|
7
|
+
private checkFormLabels;
|
|
8
|
+
private checkImageAltCoverage;
|
|
9
|
+
private checkDialogLabelling;
|
|
10
|
+
}
|
|
11
|
+
//# sourceMappingURL=accessibility-expertise.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"accessibility-expertise.d.ts","sourceRoot":"","sources":["../../src/expertise/accessibility-expertise.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,gBAAgB,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAMpE,qBAAa,sBAAuB,YAAW,SAAS;IACtD,IAAI,SAAmB;IAEvB,QAAQ,CAAC,OAAO,EAAE,gBAAgB,GAAG,OAAO,EAAE;IAY9C,OAAO,CAAC,qBAAqB;IAiB7B,OAAO,CAAC,iBAAiB;IA4BzB,OAAO,CAAC,eAAe;IAoCvB,OAAO,CAAC,qBAAqB;IAgC7B,OAAO,CAAC,oBAAoB;CA+B7B"}
|
|
@@ -0,0 +1,131 @@
|
|
|
1
|
+
function countMatches(html, regex) {
|
|
2
|
+
return html.match(regex)?.length ?? 0;
|
|
3
|
+
}
|
|
4
|
+
export class AccessibilityExpertise {
|
|
5
|
+
name = "accessibility";
|
|
6
|
+
evaluate(context) {
|
|
7
|
+
const outcomes = [];
|
|
8
|
+
outcomes.push(this.checkDocumentLanguage(context.html));
|
|
9
|
+
outcomes.push(this.checkMainLandmark(context.html));
|
|
10
|
+
outcomes.push(this.checkFormLabels(context.html));
|
|
11
|
+
outcomes.push(this.checkImageAltCoverage(context.html));
|
|
12
|
+
outcomes.push(this.checkDialogLabelling(context.html));
|
|
13
|
+
return outcomes;
|
|
14
|
+
}
|
|
15
|
+
checkDocumentLanguage(html) {
|
|
16
|
+
const hasLang = /<html\b[^>]*\blang=["'][^"']+["']/i.test(html);
|
|
17
|
+
if (!hasLang) {
|
|
18
|
+
return {
|
|
19
|
+
expected: "Document should declare a language",
|
|
20
|
+
observed: "No lang attribute detected on the <html> element",
|
|
21
|
+
result: "warning",
|
|
22
|
+
};
|
|
23
|
+
}
|
|
24
|
+
return {
|
|
25
|
+
expected: "Document should declare a language",
|
|
26
|
+
observed: "lang attribute detected on the <html> element",
|
|
27
|
+
result: "pass",
|
|
28
|
+
};
|
|
29
|
+
}
|
|
30
|
+
checkMainLandmark(html) {
|
|
31
|
+
const mainCount = countMatches(html, /<main\b/gi) +
|
|
32
|
+
countMatches(html, /\brole=["']main["']/gi);
|
|
33
|
+
if (mainCount === 0) {
|
|
34
|
+
return {
|
|
35
|
+
expected: "Page should expose a main landmark for screen readers",
|
|
36
|
+
observed: 'No <main> or role="main" landmark detected',
|
|
37
|
+
result: "warning",
|
|
38
|
+
};
|
|
39
|
+
}
|
|
40
|
+
if (mainCount > 1) {
|
|
41
|
+
return {
|
|
42
|
+
expected: "Page should expose only one main landmark",
|
|
43
|
+
observed: `Detected ${mainCount} main landmarks`,
|
|
44
|
+
result: "warning",
|
|
45
|
+
};
|
|
46
|
+
}
|
|
47
|
+
return {
|
|
48
|
+
expected: "Page should expose only one main landmark",
|
|
49
|
+
observed: "Exactly one main landmark detected",
|
|
50
|
+
result: "pass",
|
|
51
|
+
};
|
|
52
|
+
}
|
|
53
|
+
checkFormLabels(html) {
|
|
54
|
+
const inputs = html.match(/<(input|textarea|select)\b(?![^>]*type=["']hidden["'])[^>]*>/gi) ?? [];
|
|
55
|
+
if (inputs.length === 0) {
|
|
56
|
+
return {
|
|
57
|
+
expected: "Form controls should have accessible labels",
|
|
58
|
+
observed: "No form controls detected on the page",
|
|
59
|
+
result: "pass",
|
|
60
|
+
};
|
|
61
|
+
}
|
|
62
|
+
const missingLabels = inputs.filter(control => {
|
|
63
|
+
const hasAria = /\baria-label=["'][^"']+["']/i.test(control) ||
|
|
64
|
+
/\baria-labelledby=["'][^"']+["']/i.test(control);
|
|
65
|
+
const hasId = /\bid=["'][^"']+["']/i.test(control);
|
|
66
|
+
return !hasAria && !hasId;
|
|
67
|
+
});
|
|
68
|
+
if (missingLabels.length > 0) {
|
|
69
|
+
return {
|
|
70
|
+
expected: "Form controls should have accessible labels",
|
|
71
|
+
observed: `${missingLabels.length} of ${inputs.length} control(s) are missing obvious label hooks`,
|
|
72
|
+
result: "warning",
|
|
73
|
+
};
|
|
74
|
+
}
|
|
75
|
+
return {
|
|
76
|
+
expected: "Form controls should have accessible labels",
|
|
77
|
+
observed: `All ${inputs.length} control(s) have ids or ARIA labelling hooks`,
|
|
78
|
+
result: "pass",
|
|
79
|
+
};
|
|
80
|
+
}
|
|
81
|
+
checkImageAltCoverage(html) {
|
|
82
|
+
const images = html.match(/<img\b[^>]*>/gi) ?? [];
|
|
83
|
+
if (images.length === 0) {
|
|
84
|
+
return {
|
|
85
|
+
expected: "Images should have alt text or be explicitly decorative",
|
|
86
|
+
observed: "No images detected on the page",
|
|
87
|
+
result: "pass",
|
|
88
|
+
};
|
|
89
|
+
}
|
|
90
|
+
const missingAlt = images.filter(image => !/\balt\s*=\s*["'][^"']*["']/i.test(image) &&
|
|
91
|
+
!/\brole\s*=\s*["']presentation["']/i.test(image) &&
|
|
92
|
+
!/\baria-hidden\s*=\s*["']true["']/i.test(image));
|
|
93
|
+
if (missingAlt.length > 0) {
|
|
94
|
+
return {
|
|
95
|
+
expected: "Images should have alt text or be explicitly decorative",
|
|
96
|
+
observed: `${missingAlt.length} of ${images.length} image(s) lack alt text or decorative markup`,
|
|
97
|
+
result: "warning",
|
|
98
|
+
};
|
|
99
|
+
}
|
|
100
|
+
return {
|
|
101
|
+
expected: "Images should have alt text or be explicitly decorative",
|
|
102
|
+
observed: `All ${images.length} image(s) include alt text or decorative markup`,
|
|
103
|
+
result: "pass",
|
|
104
|
+
};
|
|
105
|
+
}
|
|
106
|
+
checkDialogLabelling(html) {
|
|
107
|
+
const dialogs = html.match(/<(dialog|[^>]+\brole=["']dialog["'])[\s\S]*?>/gi) ?? [];
|
|
108
|
+
if (dialogs.length === 0) {
|
|
109
|
+
return {
|
|
110
|
+
expected: "Dialogs should be labelled for assistive technologies",
|
|
111
|
+
observed: "No dialogs detected on the page",
|
|
112
|
+
result: "pass",
|
|
113
|
+
};
|
|
114
|
+
}
|
|
115
|
+
const unlabeled = dialogs.filter(dialog => !/\baria-label=["'][^"']+["']/i.test(dialog) &&
|
|
116
|
+
!/\baria-labelledby=["'][^"']+["']/i.test(dialog));
|
|
117
|
+
if (unlabeled.length > 0) {
|
|
118
|
+
return {
|
|
119
|
+
expected: "Dialogs should be labelled for assistive technologies",
|
|
120
|
+
observed: `${unlabeled.length} of ${dialogs.length} dialog(s) are missing aria-label or aria-labelledby`,
|
|
121
|
+
result: "warning",
|
|
122
|
+
};
|
|
123
|
+
}
|
|
124
|
+
return {
|
|
125
|
+
expected: "Dialogs should be labelled for assistive technologies",
|
|
126
|
+
observed: `All ${dialogs.length} dialog(s) have accessible labelling`,
|
|
127
|
+
result: "pass",
|
|
128
|
+
};
|
|
129
|
+
}
|
|
130
|
+
}
|
|
131
|
+
//# sourceMappingURL=accessibility-expertise.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"accessibility-expertise.js","sourceRoot":"","sources":["../../src/expertise/accessibility-expertise.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import type { Expertise, ExpertiseContext, Outcome } from "./types";
|
|
2
|
+
export declare class ContentExpertise implements Expertise {
|
|
3
|
+
name: string;
|
|
4
|
+
evaluate(context: ExpertiseContext): Outcome[];
|
|
5
|
+
private checkMeaningfulBodyText;
|
|
6
|
+
private checkSingleH1;
|
|
7
|
+
private checkPlaceholderContent;
|
|
8
|
+
private checkImageAltCoverage;
|
|
9
|
+
}
|
|
10
|
+
//# sourceMappingURL=content-expertise.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"content-expertise.d.ts","sourceRoot":"","sources":["../../src/expertise/content-expertise.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,gBAAgB,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAWpE,qBAAa,gBAAiB,YAAW,SAAS;IAChD,IAAI,SAAa;IAEjB,QAAQ,CAAC,OAAO,EAAE,gBAAgB,GAAG,OAAO,EAAE;IAW9C,OAAO,CAAC,uBAAuB;IAiB/B,OAAO,CAAC,aAAa;IAyBrB,OAAO,CAAC,uBAAuB;IAyB/B,OAAO,CAAC,qBAAqB;CA2B9B"}
|
|
@@ -0,0 +1,102 @@
|
|
|
1
|
+
function stripHtml(html) {
|
|
2
|
+
return html
|
|
3
|
+
.replace(/<script[\s\S]*?<\/script>/gi, " ")
|
|
4
|
+
.replace(/<style[\s\S]*?<\/style>/gi, " ")
|
|
5
|
+
.replace(/<[^>]+>/g, " ")
|
|
6
|
+
.replace(/\s+/g, " ")
|
|
7
|
+
.trim();
|
|
8
|
+
}
|
|
9
|
+
export class ContentExpertise {
|
|
10
|
+
name = "content";
|
|
11
|
+
evaluate(context) {
|
|
12
|
+
const outcomes = [];
|
|
13
|
+
outcomes.push(this.checkMeaningfulBodyText(context.html));
|
|
14
|
+
outcomes.push(this.checkSingleH1(context.html));
|
|
15
|
+
outcomes.push(this.checkPlaceholderContent(context.html));
|
|
16
|
+
outcomes.push(this.checkImageAltCoverage(context.html));
|
|
17
|
+
return outcomes;
|
|
18
|
+
}
|
|
19
|
+
checkMeaningfulBodyText(html) {
|
|
20
|
+
const text = stripHtml(html);
|
|
21
|
+
if (text.length < 120) {
|
|
22
|
+
return {
|
|
23
|
+
expected: "Page should contain meaningful body content",
|
|
24
|
+
observed: `Only ${text.length} characters of visible text were detected`,
|
|
25
|
+
result: "warning",
|
|
26
|
+
};
|
|
27
|
+
}
|
|
28
|
+
return {
|
|
29
|
+
expected: "Page should contain meaningful body content",
|
|
30
|
+
observed: `${text.length} characters of visible text detected`,
|
|
31
|
+
result: "pass",
|
|
32
|
+
};
|
|
33
|
+
}
|
|
34
|
+
checkSingleH1(html) {
|
|
35
|
+
const matches = html.match(/<h1\b[^>]*>[\s\S]*?<\/h1>/gi) ?? [];
|
|
36
|
+
if (matches.length === 1) {
|
|
37
|
+
return {
|
|
38
|
+
expected: "Page should have exactly one H1 heading",
|
|
39
|
+
observed: "Found exactly one H1 heading",
|
|
40
|
+
result: "pass",
|
|
41
|
+
};
|
|
42
|
+
}
|
|
43
|
+
if (matches.length === 0) {
|
|
44
|
+
return {
|
|
45
|
+
expected: "Page should have exactly one H1 heading",
|
|
46
|
+
observed: "No H1 heading detected",
|
|
47
|
+
result: "warning",
|
|
48
|
+
};
|
|
49
|
+
}
|
|
50
|
+
return {
|
|
51
|
+
expected: "Page should have exactly one H1 heading",
|
|
52
|
+
observed: `Found ${matches.length} H1 headings`,
|
|
53
|
+
result: "warning",
|
|
54
|
+
};
|
|
55
|
+
}
|
|
56
|
+
checkPlaceholderContent(html) {
|
|
57
|
+
const placeholderPatterns = [
|
|
58
|
+
/lorem ipsum/i,
|
|
59
|
+
/\bTODO\b/i,
|
|
60
|
+
/coming soon/i,
|
|
61
|
+
/placeholder/i,
|
|
62
|
+
/insert text here/i,
|
|
63
|
+
];
|
|
64
|
+
const matched = placeholderPatterns.find(pattern => pattern.test(html));
|
|
65
|
+
if (matched) {
|
|
66
|
+
return {
|
|
67
|
+
expected: "Page content should not contain placeholder copy",
|
|
68
|
+
observed: `Placeholder content matched pattern ${matched}`,
|
|
69
|
+
result: "warning",
|
|
70
|
+
};
|
|
71
|
+
}
|
|
72
|
+
return {
|
|
73
|
+
expected: "Page content should not contain placeholder copy",
|
|
74
|
+
observed: "No obvious placeholder copy detected",
|
|
75
|
+
result: "pass",
|
|
76
|
+
};
|
|
77
|
+
}
|
|
78
|
+
checkImageAltCoverage(html) {
|
|
79
|
+
const images = html.match(/<img\b[^>]*>/gi) ?? [];
|
|
80
|
+
if (images.length === 0) {
|
|
81
|
+
return {
|
|
82
|
+
expected: "Images should provide alt text",
|
|
83
|
+
observed: "No images detected on the page",
|
|
84
|
+
result: "pass",
|
|
85
|
+
};
|
|
86
|
+
}
|
|
87
|
+
const missingAlt = images.filter(image => !/\balt\s*=\s*["'][^"']*["']/i.test(image));
|
|
88
|
+
if (missingAlt.length > 0) {
|
|
89
|
+
return {
|
|
90
|
+
expected: "Images should provide alt text",
|
|
91
|
+
observed: `${missingAlt.length} of ${images.length} image(s) are missing alt text`,
|
|
92
|
+
result: "warning",
|
|
93
|
+
};
|
|
94
|
+
}
|
|
95
|
+
return {
|
|
96
|
+
expected: "Images should provide alt text",
|
|
97
|
+
observed: `All ${images.length} image(s) include alt text`,
|
|
98
|
+
result: "pass",
|
|
99
|
+
};
|
|
100
|
+
}
|
|
101
|
+
}
|
|
102
|
+
//# sourceMappingURL=content-expertise.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"content-expertise.js","sourceRoot":"","sources":["../../src/expertise/content-expertise.ts"],"names":[],"mappings":"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"}
|