eaa-kit 0.5.0 → 0.7.0
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/README.md +53 -5
- package/dist/astro/index.d.ts +1 -1
- package/dist/astro/index.js +1 -1
- package/dist/audit/runners/worker.js +1 -1
- package/dist/audit-Bwm1xBdJ.js +2 -0
- package/dist/{audit-B282A3EA.js → audit-DRjAY2iY.js} +243 -107
- package/dist/{baseline-CuAS2lMk.js → baseline-BpE7DbDq.js} +36 -9
- package/dist/baseline-rtnj3RHB.js +2 -0
- package/dist/cache-D4dOIuOi.js +219 -0
- package/dist/checklist-DDd9jewi.js +44 -0
- package/dist/cli/index.js +130 -17
- package/dist/{command-C3D7JWn6.js → command-3r4fht5f.js} +102 -10
- package/dist/{component-C3GL1Mnu.js → component-ChisoFyY.js} +1 -1
- package/dist/{component-DKd3EHOg.js → component-DcCn3BJS.js} +1 -1
- package/dist/{coverage-B_Y6l-Ra.js → coverage-cb5kPp48.js} +45 -290
- package/dist/coverage-n1X9CkiG.js +3 -0
- package/dist/{crawl-BUWPgaGW.js → crawl-BHkJmUkA.js} +42 -8
- package/dist/criteria-CnPJKGeb.js +286 -0
- package/dist/eleventy/index.d.ts +1 -1
- package/dist/eleventy/index.js +1 -1
- package/dist/{html-C4vktg0A.js → html-BIxxF3FC.js} +54 -30
- package/dist/{impact-DZt2oBCP.js → impact-luGCnN8F.js} +11 -1
- package/dist/index.d.ts +87 -1
- package/dist/index.js +3 -3
- package/dist/{init-CW7LfGT5.js → init-DrFfzjvm.js} +3 -3
- package/dist/jsdom-BUYuVJJm.js +3 -0
- package/dist/{jsdom-B--cEH-G.js → jsdom-CsW_xVcA.js} +11 -12
- package/dist/{json-DROX33kh.js → json-Bus6YhxB.js} +13 -17
- package/dist/{json-D_Mnnft5.js → json-CrQmoTj6.js} +1 -1
- package/dist/{load-yAR4wzez.js → load-BaWMa-G_.js} +11 -2
- package/dist/load-n62iXDq_.js +2 -0
- package/dist/nuxt/index.d.ts +1 -1
- package/dist/nuxt/index.js +1 -1
- package/dist/{playwright-BojtYVUa.js → playwright-ukCr_5o3.js} +3 -2
- package/dist/{pool-BO25OIez.js → pool-B4tEUa2S.js} +6 -2
- package/dist/{remediation-CMBIrnpN.js → remediation-C0klJblu.js} +35 -4
- package/dist/{render-DbGOVmhx.js → render-C1sUZZI_.js} +145 -6
- package/dist/{result-BWcYXeRs.js → result-B7_zVxAX.js} +24 -1
- package/dist/result-CRmjjoAA.js +2 -0
- package/dist/review-CdMK2GpQ.js +161 -0
- package/dist/review-DIbOTmOM.js +2 -0
- package/dist/{run-CtcEUhbe.d.ts → run-BK2blxMI.d.ts} +18 -0
- package/dist/{run-C2nKFcb-.js → run-DrS0Komf.js} +6 -2
- package/dist/{sarif-B-UBcVu8.js → sarif-BNCE0PNT.js} +24 -12
- package/dist/statement/templates/at.de.md +14 -0
- package/dist/statement/templates/at.en.md +14 -0
- package/dist/statement/templates/ch.de.md +14 -0
- package/dist/statement/templates/ch.en.md +14 -0
- package/dist/statement/templates/de.de.md +14 -0
- package/dist/statement/templates/de.en.md +14 -0
- package/dist/statement/templates/es.en.md +14 -0
- package/dist/statement/templates/es.es.md +15 -0
- package/dist/statement/templates/fr.en.md +14 -0
- package/dist/statement/templates/fr.fr.md +15 -0
- package/dist/statement/templates/it.en.md +14 -0
- package/dist/statement/templates/it.it.md +15 -0
- package/dist/statement/templates/nl.en.md +14 -0
- package/dist/statement/templates/nl.nl.md +15 -0
- package/dist/{text-CKKpzkYM.js → text-BF1LHMiV.js} +22 -2
- package/dist/vite/index.d.ts +1 -1
- package/dist/vite/index.js +1 -1
- package/dist/webpack/index.d.ts +1 -1
- package/dist/webpack/index.js +1 -1
- package/dist/worksheet-BIxMtbUd.js +64 -0
- package/package.json +3 -2
- package/dist/audit-DyHPmGeD.js +0 -2
- package/dist/baseline-0u4df12v.js +0 -2
- package/dist/jsdom-22Bkt65v.js +0 -3
- package/dist/load-CFq2VQtT.js +0 -2
package/README.md
CHANGED
|
@@ -9,11 +9,26 @@ in the DACH region — the BFSG in Germany, the BaFG in Austria — and the stat
|
|
|
9
9
|
the statute and supervisory body of **seven countries**: Austria, Germany, Switzerland,
|
|
10
10
|
Spain, France, Italy and the Netherlands, each in its own language as well as English.
|
|
11
11
|
|
|
12
|
+
0.7.0 makes a run cost what it should. A page that has not changed byte for byte is not
|
|
13
|
+
audited again, and a run with nothing to re-audit never loads an engine at all: twenty
|
|
14
|
+
pages go from ~2,520 ms to ~230 ms, which is about what starting the process costs. A
|
|
15
|
+
reused result is never passed off as a fresh one — every report says how much was reused
|
|
16
|
+
and from when, and `diff` will not call a page fixed that this run did not look at. The
|
|
17
|
+
statement now also says how many of WCAG's 55 criteria a person checked by hand, and
|
|
18
|
+
`pnpm bench` prints the numbers in this paragraph for your own machine.
|
|
19
|
+
|
|
20
|
+
0.6.0 added the half no engine can do. Of the 55 WCAG 2.2 A and AA success criteria, 34
|
|
21
|
+
have no automated rule at all: `checklist` writes those down as a review somebody works
|
|
22
|
+
through, `audit --review` reads the answers back beside what the run measured, and
|
|
23
|
+
`statement` refuses to publish a claim of full conformance that either one contradicts.
|
|
24
|
+
Sites behind a login or a preview protection are auditable too.
|
|
25
|
+
|
|
12
26
|
```bash
|
|
13
27
|
npx eaa-kit audit # WCAG 2.2 AA report; finds your build itself
|
|
14
28
|
npx eaa-kit diff a.json b.json # what a change made worse, and what it fixed
|
|
15
29
|
npx eaa-kit init # write an eaa.config.json
|
|
16
30
|
npx eaa-kit statement # accessibility statement, in one of seven countries
|
|
31
|
+
npx eaa-kit checklist # the manual review no engine can do for you
|
|
17
32
|
```
|
|
18
33
|
|
|
19
34
|
> **Not legal advice.** eaa-kit reports what an automated engine can and cannot determine
|
|
@@ -95,14 +110,32 @@ could invent a fix that looks right and is not.
|
|
|
95
110
|
written in src/components/Header.astro:12
|
|
96
111
|
```
|
|
97
112
|
|
|
113
|
+
**Records the part no engine can do.** 34 of the 55 criteria have no automated rule at
|
|
114
|
+
all. `eaa-kit checklist` writes them out as a worksheet and a record; `audit --review`
|
|
115
|
+
reads the record back and reports what a person checked *beside* what the run measured,
|
|
116
|
+
never folded into it. A review never overrules the engine, never counts an entry nobody
|
|
117
|
+
answered, and never counts one that has aged out.
|
|
118
|
+
|
|
119
|
+
```bash
|
|
120
|
+
eaa-kit checklist --output a11y-review.md
|
|
121
|
+
eaa-kit audit --review eaa-review.json --coverage
|
|
122
|
+
```
|
|
123
|
+
|
|
98
124
|
**Says how much of WCAG it could reach.** WCAG 2.2 has 55 success criteria at Levels A and
|
|
99
|
-
AA.
|
|
100
|
-
55 with what this run reached on each — never as a percentage,
|
|
101
|
-
be automated and a score would present that as a fact about
|
|
125
|
+
AA. This tool has rules for 21 of them, and 34 need a person. Every run says so, and
|
|
126
|
+
`--coverage` lists all 55 with what this run reached on each — never as a percentage,
|
|
127
|
+
because most of WCAG cannot be automated and a score would present that as a fact about
|
|
128
|
+
your site.
|
|
102
129
|
|
|
103
130
|
**Says what it did not measure.** A crawl that stopped at its page limit, or could not
|
|
104
131
|
fetch forty URLs, no longer produces a report that looks like a complete one.
|
|
105
132
|
|
|
133
|
+
**Audits only what changed.** A page whose markup is byte-identical to the last run's keeps
|
|
134
|
+
the result it already had, and a run with nothing to re-audit never loads an engine —
|
|
135
|
+
twenty pages in ~230 ms instead of ~2,520 ms, which is about what starting the process
|
|
136
|
+
costs. Reuse is counted apart from auditing in all four reports, and `diff` will not call a
|
|
137
|
+
page fixed that this run did not look at. `--no-cache` audits everything regardless.
|
|
138
|
+
|
|
106
139
|
**Reports in four shapes**: a console report for whoever ran it, JSON for other tools,
|
|
107
140
|
SARIF for GitHub code scanning, and a self-contained HTML page for the client whose site
|
|
108
141
|
it is.
|
|
@@ -133,6 +166,16 @@ that instead — following the site's own sitemap, wherever it keeps it.
|
|
|
133
166
|
eaa-kit audit --url http://localhost:8000 --sitemap /sitemap_index.xml
|
|
134
167
|
```
|
|
135
168
|
|
|
169
|
+
**Reaches a site behind a login.** A preview deployment or a staging CMS refuses anonymous
|
|
170
|
+
requests, which used to put both out of reach. `--basic-auth` and a repeatable `--header`
|
|
171
|
+
cover them, on the crawl and in the browser, and the credentials are never written into a
|
|
172
|
+
report, a baseline or a SARIF log — nor accepted from `eaa.config`, which is a committed
|
|
173
|
+
file.
|
|
174
|
+
|
|
175
|
+
```bash
|
|
176
|
+
eaa-kit audit --url https://preview.example.com --basic-auth user:password
|
|
177
|
+
```
|
|
178
|
+
|
|
136
179
|
## Documentation
|
|
137
180
|
|
|
138
181
|
| | |
|
|
@@ -143,6 +186,7 @@ eaa-kit audit --url http://localhost:8000 --sitemap /sitemap_index.xml
|
|
|
143
186
|
| [Baselines](docs/baseline.md) | Adopting the tool on a site that already has violations |
|
|
144
187
|
| [Comparing two runs](docs/reports.md#comparing-two-runs) | The `diff` command, and what it refuses to call fixed |
|
|
145
188
|
| [Coverage of WCAG](docs/audit.md#how-much-of-wcag-a-run-reaches) | What an automated engine can reach at all, and what it cannot |
|
|
189
|
+
| [Recording a manual review](docs/review.md) | The `checklist` command, the record, and what a review is not allowed to do |
|
|
146
190
|
| [Report formats](docs/reports.md) | The JSON contract, SARIF, and the HTML report |
|
|
147
191
|
| [Integrations](docs/integrations.md) | The build plugins, the GitHub Action, and the two builders that get a command instead |
|
|
148
192
|
|
|
@@ -169,11 +213,15 @@ you](docs/audit.md#what-the-browserless-engine-can-and-cannot-tell-you).
|
|
|
169
213
|
|
|
170
214
|
The same applies to the statement: it says what you told it. eaa-kit cannot check whether
|
|
171
215
|
those claims are true, and a statement claiming full conformance for a site that is not
|
|
172
|
-
conformant is worse than no statement at all
|
|
216
|
+
conformant is worse than no statement at all — which is why, given evidence, it now refuses
|
|
217
|
+
to write that particular one. `statement --audit` will not claim full conformance over a
|
|
218
|
+
report listing barriers, and `--review` will not claim it over criteria somebody recorded as
|
|
219
|
+
not met.
|
|
173
220
|
|
|
174
221
|
## Changelog
|
|
175
222
|
|
|
176
|
-
See [CHANGELOG.md](CHANGELOG.md).
|
|
223
|
+
See [CHANGELOG.md](CHANGELOG.md), and [ROADMAP.md](ROADMAP.md) for what 0.6.0 is meant to
|
|
224
|
+
add and what it deliberately will not.
|
|
177
225
|
|
|
178
226
|
## License
|
|
179
227
|
|
package/dist/astro/index.d.ts
CHANGED
package/dist/astro/index.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { n as auditBuild, t as BuildAuditError } from "../run-
|
|
1
|
+
import { n as auditBuild, t as BuildAuditError } from "../run-DrS0Komf.js";
|
|
2
2
|
import { fileURLToPath } from "node:url";
|
|
3
3
|
//#region src/astro/index.ts
|
|
4
4
|
var AstroAuditError = class extends Error {
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { t as auditPage } from "../../jsdom-
|
|
1
|
+
import { t as auditPage } from "../../jsdom-CsW_xVcA.js";
|
|
2
2
|
import { enableCompileCache } from "node:module";
|
|
3
3
|
import { parentPort, workerData } from "node:worker_threads";
|
|
4
4
|
//#region src/audit/runners/worker.ts
|