privalint 0.4.1 → 0.5.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.de.md +4 -0
- package/README.md +10 -3
- package/dist/assessment.js +2 -0
- package/dist/assessment.js.map +1 -1
- package/dist/cli.js +8 -0
- package/dist/cli.js.map +1 -1
- package/dist/config.d.ts +1 -0
- package/dist/config.js +2 -1
- package/dist/config.js.map +1 -1
- package/dist/consent.js +65 -1
- package/dist/consent.js.map +1 -1
- package/dist/data/trackers.js +30 -0
- package/dist/data/trackers.js.map +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.js +1 -1
- package/dist/index.js.map +1 -1
- package/dist/legal.js +13 -0
- package/dist/legal.js.map +1 -1
- package/dist/rules/adobe-fonts.d.ts +2 -0
- package/dist/rules/adobe-fonts.js +71 -0
- package/dist/rules/adobe-fonts.js.map +1 -0
- package/dist/rules/consent-settings-link.d.ts +2 -0
- package/dist/rules/consent-settings-link.js +50 -0
- package/dist/rules/consent-settings-link.js.map +1 -0
- package/dist/rules/index.d.ts +3 -1
- package/dist/rules/index.js +5 -1
- package/dist/rules/index.js.map +1 -1
- package/dist/scan-options.d.ts +8 -0
- package/dist/scan-options.js +7 -1
- package/dist/scan-options.js.map +1 -1
- package/dist/scanner.js +58 -14
- package/dist/scanner.js.map +1 -1
- package/dist/types.d.ts +12 -0
- package/package.json +1 -1
- package/schemas/report-1.1.0.schema.json +21 -0
- package/schemas/sarif-properties-1.1.0.schema.json +21 -0
package/README.de.md
CHANGED
|
@@ -47,7 +47,9 @@ npx privalint https://ihre-seite.at --region at --lang de --max-pages 20
|
|
|
47
47
|
| `pre-consent-trackers` | Analyse-, Werbe- und Session-Replay-Tools, die vor der Einwilligung Anfragen senden oder Cookies setzen |
|
|
48
48
|
| `trackers-after-reject` | Tracker, die nach Klick auf „Ablehnen“ und Neuladen weiterlaufen |
|
|
49
49
|
| `reject-option` | Cookie-Banner mit „Zustimmen“, aber ohne „Ablehnen“ auf der ersten Ebene; Pur-Abo-Modelle als Hinweis |
|
|
50
|
+
| `consent-settings-link` | Kein sichtbarer Link oder Button, um die Cookie-Einstellungen nach dem Ablehnen wieder zu öffnen |
|
|
50
51
|
| `google-fonts` | Schriften von `fonts.googleapis.com` / `fonts.gstatic.com` |
|
|
52
|
+
| `adobe-fonts` | Schriften von Adobe Fonts (`use.typekit.net` / `p.typekit.net`) |
|
|
51
53
|
| `third-party-embeds` | YouTube, Vimeo, Google Maps, reCAPTCHA, Gravatar und Social-Media-Einbindungen vor der Einwilligung |
|
|
52
54
|
| `third-party-cdns` | Skripte und Styles von jsDelivr, unpkg, cdnjs und anderen öffentlichen CDNs (Hinweis) |
|
|
53
55
|
| `impressum-link` | Seiten ohne Link zum Impressum |
|
|
@@ -142,6 +144,8 @@ Adapter-Modus die Vorgabe. Es werden keine Zusagen rechtlicher Konformität gema
|
|
|
142
144
|
- Viele Consent-Tools entscheiden anhand der IP-Adresse, ob sie ein Banner zeigen. GitHub-Runner
|
|
143
145
|
haben US-Adressen und sehen deshalb unter Umständen etwas anderes als Besucher aus der EU.
|
|
144
146
|
- Serverseitiges Tracking ist im Browser nicht sichtbar.
|
|
147
|
+
- Chromium läuft standardmäßig ohne seine Sandbox, weil sie in vielen Containern nicht startet.
|
|
148
|
+
Wer fremde Seiten auf einem Rechner mit Zugangsdaten prüft, sollte `--sandbox` setzen.
|
|
145
149
|
|
|
146
150
|
## Mitmachen
|
|
147
151
|
|
package/README.md
CHANGED
|
@@ -36,7 +36,9 @@ shortened. Regenerate it with <code>npm run demo</code>.</sub>
|
|
|
36
36
|
| [`pre-consent-trackers`](docs/rules/pre-consent-trackers.md) | error | Analytics, ads and session-replay tools that send requests or set cookies before consent. A bare tag manager is a warning. |
|
|
37
37
|
| [`trackers-after-reject`](docs/rules/trackers-after-reject.md) | error | Trackers that still load after clicking "reject" on the consent banner and reloading. |
|
|
38
38
|
| [`reject-option`](docs/rules/reject-option.md) | warning | A banner with "accept" but no "reject" on its first layer. Pay-or-OK banners are noted as info. |
|
|
39
|
+
| [`consent-settings-link`](docs/rules/consent-settings-link.md) | warning | No visible link or button to reopen the cookie settings after rejecting. |
|
|
39
40
|
| [`google-fonts`](docs/rules/google-fonts.md) | error | Fonts fetched from `fonts.googleapis.com` / `fonts.gstatic.com`. Leftover preconnects are a warning. |
|
|
41
|
+
| [`adobe-fonts`](docs/rules/adobe-fonts.md) | error | Fonts fetched from Adobe Fonts (`use.typekit.net` / `p.typekit.net`). Leftover preconnects are a warning. |
|
|
40
42
|
| [`third-party-embeds`](docs/rules/third-party-embeds.md) | warning | YouTube, Vimeo, Google Maps, reCAPTCHA, Gravatar and social embeds loading before consent. |
|
|
41
43
|
| [`third-party-cdns`](docs/rules/third-party-cdns.md) | info | Scripts and styles from jsDelivr, unpkg, cdnjs and other public CDNs. |
|
|
42
44
|
| [`impressum-link`](docs/rules/impressum-link.md) | warning | Pages without a link to an Impressum. A contact link alone is noted as info. |
|
|
@@ -115,6 +117,8 @@ On self-hosted runners without it, add `actions/setup-node` before this step.
|
|
|
115
117
|
privalint <url> [options]
|
|
116
118
|
|
|
117
119
|
-p, --max-pages <n> Crawl up to n pages of the same site (default 1)
|
|
120
|
+
--concurrency <n> Load up to n pages at the same time (default 1).
|
|
121
|
+
The report is the same as with 1
|
|
118
122
|
-f, --format <format> text | json | markdown | sarif (default text)
|
|
119
123
|
-o, --output <file> Write the report to a file and print a text summary.
|
|
120
124
|
Repeatable; .sarif, .json and .md pick their format,
|
|
@@ -132,6 +136,8 @@ privalint <url> [options]
|
|
|
132
136
|
--skip-consent Don't click "reject" on the consent banner
|
|
133
137
|
--headed Open a visible browser window instead of running headless
|
|
134
138
|
--channel <name> Use an installed browser: chrome or msedge
|
|
139
|
+
--sandbox Run Chromium with its sandbox (recommended for untrusted
|
|
140
|
+
sites; may not start in containers)
|
|
135
141
|
--list-rules Print the available rules and exit
|
|
136
142
|
```
|
|
137
143
|
|
|
@@ -264,12 +270,13 @@ No report claims legal compliance.
|
|
|
264
270
|
have US addresses, so some sites load trackers there that EU visitors never get, and the
|
|
265
271
|
result differs from what an EU visitor sees. Use a runner or proxy in the EU for results you
|
|
266
272
|
want to rely on.
|
|
267
|
-
- Chromium
|
|
268
|
-
scan sites you don't trust
|
|
273
|
+
- Chromium runs without its sandbox by default, like Playwright's own default, because the
|
|
274
|
+
sandbox often can't start in containers. Pass `--sandbox` when you scan sites you don't trust
|
|
275
|
+
on a machine that holds secrets. On Ubuntu 23.10 and later it needs unprivileged user
|
|
276
|
+
namespaces, which AppArmor restricts unless Chromium is allowed to use them.
|
|
269
277
|
|
|
270
278
|
## Roadmap
|
|
271
279
|
|
|
272
|
-
- PR comments from the Action
|
|
273
280
|
- Config migration helpers and report comparison (JSON config is available now)
|
|
274
281
|
- Check the settings layer of banners and the "accept" path
|
|
275
282
|
- More trackers, embeds and consent managers (see the
|
package/dist/assessment.js
CHANGED
|
@@ -4,12 +4,14 @@ import { isFirstParty } from './url.js';
|
|
|
4
4
|
const REQUIREMENTS = {
|
|
5
5
|
'pre-consent-trackers': ['network'],
|
|
6
6
|
'google-fonts': ['network'],
|
|
7
|
+
'adobe-fonts': ['network'],
|
|
7
8
|
'third-party-embeds': ['network'],
|
|
8
9
|
'third-party-cdns': ['network'],
|
|
9
10
|
'impressum-link': ['document'],
|
|
10
11
|
'privacy-policy-link': ['document'],
|
|
11
12
|
'reject-option': ['consent'],
|
|
12
13
|
'trackers-after-reject': ['after-reject'],
|
|
14
|
+
'consent-settings-link': ['after-reject'],
|
|
13
15
|
};
|
|
14
16
|
export function assessPage(page, rules, siteUrl, lang, isStart, consentEnabled, catalog = rules) {
|
|
15
17
|
const findings = [];
|
package/dist/assessment.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"assessment.js","sourceRoot":"","sources":["../src/assessment.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"assessment.js","sourceRoot":"","sources":["../src/assessment.ts"],"names":[],"mappings":"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"}
|
package/dist/cli.js
CHANGED
|
@@ -26,6 +26,8 @@ Usage
|
|
|
26
26
|
|
|
27
27
|
Options
|
|
28
28
|
-p, --max-pages <n> Crawl up to n pages of the same site (default 1)
|
|
29
|
+
--concurrency <n> Load up to n pages at the same time (default 1).
|
|
30
|
+
The report is the same as with 1
|
|
29
31
|
-f, --format <format> ${FORMATS.join(' | ')} (default text)
|
|
30
32
|
-o, --output <file> Write the report to a file and print a text summary.
|
|
31
33
|
Repeatable; .sarif, .json and .md pick their format,
|
|
@@ -44,6 +46,8 @@ Options
|
|
|
44
46
|
--consent Enable consent checking even if the JSON config disables it
|
|
45
47
|
--headed Open a visible browser window instead of running headless
|
|
46
48
|
--channel <name> Use an installed browser: chrome or msedge
|
|
49
|
+
--sandbox Run Chromium with its sandbox (recommended for untrusted
|
|
50
|
+
sites; may not start in containers)
|
|
47
51
|
--list-rules Print the available rules and exit
|
|
48
52
|
-h, --help Show this help
|
|
49
53
|
-v, --version Show the version
|
|
@@ -65,6 +69,7 @@ async function main(argv) {
|
|
|
65
69
|
allowPositionals: true,
|
|
66
70
|
options: {
|
|
67
71
|
'max-pages': { type: 'string', short: 'p' },
|
|
72
|
+
concurrency: { type: 'string' },
|
|
68
73
|
format: { type: 'string', short: 'f', default: 'text' },
|
|
69
74
|
output: { type: 'string', short: 'o', multiple: true },
|
|
70
75
|
'fail-on': { type: 'string', default: 'error' },
|
|
@@ -81,6 +86,7 @@ async function main(argv) {
|
|
|
81
86
|
consent: { type: 'boolean' },
|
|
82
87
|
headed: { type: 'boolean' },
|
|
83
88
|
channel: { type: 'string' },
|
|
89
|
+
sandbox: { type: 'boolean' },
|
|
84
90
|
'list-rules': { type: 'boolean' },
|
|
85
91
|
help: { type: 'boolean', short: 'h' },
|
|
86
92
|
version: { type: 'boolean', short: 'v' },
|
|
@@ -118,6 +124,7 @@ async function main(argv) {
|
|
|
118
124
|
...(config.rules === undefined ? {} : { ruleSettings: config.rules }),
|
|
119
125
|
...(config.allow === undefined ? {} : { allow: config.allow }),
|
|
120
126
|
maxPages: wholeNumber(values['max-pages'], '--max-pages', 1) ?? config.maxPages,
|
|
127
|
+
concurrency: wholeNumber(values.concurrency, '--concurrency', 1) ?? config.concurrency,
|
|
121
128
|
settleMs: wholeNumber(values.settle, '--settle', 0) ?? config.settleMs,
|
|
122
129
|
timeoutMs: wholeNumber(values.timeout, '--timeout', 1) ?? config.timeoutMs,
|
|
123
130
|
locale: values.locale ?? config.locale,
|
|
@@ -130,6 +137,7 @@ async function main(argv) {
|
|
|
130
137
|
: (config.consentCheck ?? true),
|
|
131
138
|
headed: values.headed === true,
|
|
132
139
|
channel: values.channel === undefined ? undefined : oneOf(values.channel, CHANNELS, '--channel'),
|
|
140
|
+
sandbox: values.sandbox === true,
|
|
133
141
|
onPage: (page) => process.stderr.write(page.error === undefined
|
|
134
142
|
? `scanned ${diagnosticUrl(page.finalUrl)}\n`
|
|
135
143
|
: `skipped ${diagnosticUrl(page.url)}: ${page.error}\n`),
|
package/dist/cli.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":";AACA,OAAO,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAC7C,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AACtC,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAC/C,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACjD,OAAO,EAAE,KAAK,EAAE,MAAM,WAAW,CAAC;AAClC,OAAO,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AACrC,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,OAAO,EAAe,MAAM,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAChF,OAAO,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAChD,OAAO,EAAE,IAAI,EAAE,MAAM,cAAc,CAAC;AAGpC,MAAM,WAAW,GAAG,CAAC,OAAO,EAAE,SAAS,EAAE,OAAO,CAAU,CAAC;AAC3D,MAAM,QAAQ,GAAG,CAAC,QAAQ,EAAE,QAAQ,CAAU,CAAC;AAG/C,MAAM,OAAO,GAAG,CAAC,CAAC;AAClB,MAAM,aAAa,GAAG,CAAC,CAAC;AACxB,MAAM,UAAU,GAAG,CAAC,CAAC;AACrB,MAAM,eAAe,GAAG,CAAC,CAAC;AAE1B,MAAM,IAAI,GAAG,aAAa,OAAO
|
|
1
|
+
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
|
package/dist/config.d.ts
CHANGED
package/dist/config.js
CHANGED
|
@@ -7,6 +7,7 @@ import { defaultRules } from './rules/index.js';
|
|
|
7
7
|
const KEYS = [
|
|
8
8
|
'url',
|
|
9
9
|
'maxPages',
|
|
10
|
+
'concurrency',
|
|
10
11
|
'settleMs',
|
|
11
12
|
'timeoutMs',
|
|
12
13
|
'locale',
|
|
@@ -42,7 +43,7 @@ export function parseConfig(value) {
|
|
|
42
43
|
if (!['http:', 'https:'].includes(url.protocol) || url.username || url.password)
|
|
43
44
|
invalid();
|
|
44
45
|
}
|
|
45
|
-
for (const key of ['maxPages', 'settleMs', 'timeoutMs']) {
|
|
46
|
+
for (const key of ['maxPages', 'concurrency', 'settleMs', 'timeoutMs']) {
|
|
46
47
|
const number = value[key];
|
|
47
48
|
if (number !== undefined &&
|
|
48
49
|
(typeof number !== 'number' ||
|
package/dist/config.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,kBAAkB,CAAC;AACxC,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EAAE,KAAK,EAAa,MAAM,WAAW,CAAC;AAC7C,OAAO,EAAE,OAAO,EAAe,MAAM,YAAY,CAAC;AAClD,OAAO,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAC;AACnD,OAAO,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;
|
|
1
|
+
{"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,kBAAkB,CAAC;AACxC,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EAAE,KAAK,EAAa,MAAM,WAAW,CAAC;AAC7C,OAAO,EAAE,OAAO,EAAe,MAAM,YAAY,CAAC;AAClD,OAAO,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAC;AACnD,OAAO,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAkBhD,MAAM,IAAI,GAAG;IACX,KAAK;IACL,UAAU;IACV,aAAa;IACb,UAAU;IACV,WAAW;IACX,QAAQ;IACR,MAAM;IACN,QAAQ;IACR,cAAc;IACd,kBAAkB;IAClB,OAAO;IACP,OAAO;CACR,CAAC;AACF,SAAS,MAAM,CAAC,KAAc;IAC5B,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;AAC9E,CAAC;AACD,SAAS,OAAO;IACd,MAAM,IAAI,SAAS,CACjB,oFAAoF,CACrF,CAAC;AACJ,CAAC;AAED,kGAAkG;AAClG,MAAM,UAAU,WAAW,CAAC,KAAc;IACxC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;QAAE,OAAO,EAAE,CAAC;IACvF,KAAK,MAAM,GAAG,IAAI,CAAC,KAAK,EAAE,QAAQ,CAAC,EAAE,CAAC;QACpC,IAAI,KAAK,CAAC,GAAG,CAAC,KAAK,SAAS,IAAI,CAAC,OAAO,KAAK,CAAC,GAAG,CAAC,KAAK,QAAQ,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC;YACpF,OAAO,EAAE,CAAC;IACd,CAAC;IACD,IAAI,OAAO,KAAK,CAAC,GAAG,KAAK,QAAQ,EAAE,CAAC;QAClC,IAAI,GAAQ,CAAC;QACb,IAAI,CAAC;YACH,GAAG,GAAG,IAAI,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QAC3B,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,EAAE,CAAC;QACZ,CAAC;QACD,IAAI,CAAC,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,GAAG,CAAC,QAAQ,IAAI,GAAG,CAAC,QAAQ;YAAE,OAAO,EAAE,CAAC;IAC7F,CAAC;IACD,KAAK,MAAM,GAAG,IAAI,CAAC,UAAU,EAAE,aAAa,EAAE,UAAU,EAAE,WAAW,CAAC,EAAE,CAAC;QACvE,MAAM,MAAM,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC;QAC1B,IACE,MAAM,KAAK,SAAS;YACpB,CAAC,OAAO,MAAM,KAAK,QAAQ;gBACzB,CAAC,MAAM,CAAC,aAAa,CAAC,MAAM,CAAC;gBAC7B,MAAM,GAAG,CAAC,GAAG,KAAK,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YAExC,OAAO,EAAE,CAAC;IACd,CAAC;IACD,IAAI,KAAK,CAAC,IAAI,KAAK,SAAS,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAY,CAAC;QAAE,OAAO,EAAE,CAAC;IAC/E,IAAI,KAAK,CAAC,MAAM,KAAK,SAAS,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAC,MAAgB,CAAC;QAAE,OAAO,EAAE,CAAC;IACvF,IAAI,KAAK,CAAC,YAAY,KAAK,SAAS,IAAI,OAAO,KAAK,CAAC,YAAY,KAAK,SAAS;QAAE,OAAO,EAAE,CAAC;IAC3F,IAAI,KAAK,CAAC,gBAAgB,KAAK,SAAS,IAAI,OAAO,KAAK,CAAC,gBAAgB,KAAK,SAAS;QACrF,OAAO,EAAE,CAAC;IACZ,IAAI,KAAK,CAAC,KAAK,KAAK,SAAS,EAAE,CAAC;QAC9B,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC;YAAE,OAAO,EAAE,CAAC;QACpC,oBAAoB,CAAC,KAAK,CAAC,KAAqB,EAAE,YAAY,CAAC,CAAC;IAClE,CAAC;IACD,IAAI,KAAK,CAAC,KAAK,KAAK,SAAS,EAAE,CAAC;QAC9B,IACE,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC;YACpB,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,KAAK,SAAS,CAAC;YACzD,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC;YACnC,CAAC,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CACxB,CAAC,MAAM,EAAE,EAAE,CAAC,OAAO,MAAM,KAAK,QAAQ,IAAI,MAAM,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC,IAAI,MAAM,CAAC,MAAM,IAAI,GAAG,CAC3F;YAED,OAAO,EAAE,CAAC;IACd,CAAC;IACD,8FAA8F;IAC9F,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAoB,CAAC;AAC9D,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,UAAU,CAAC,IAAa,EAAE,GAAG,GAAG,OAAO,CAAC,GAAG,EAAE;IACjE,IAAI,IAAY,CAAC;IACjB,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,GAAG,EAAE,uBAAuB,CAAC,EAAE,GAAG,CAAC,CAAC;QAC3E,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,MAAM,CAAC,KAAK,CAAC,EAAE,GAAG,IAAI,GAAG,CAAC,CAAC,CAAC;YAC3C,IAAI,IAAI,GAAG,CAAC,CAAC;YACb,OAAO,IAAI,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC;gBAC5B,MAAM,EAAE,SAAS,EAAE,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,EAAE,MAAM,CAAC,MAAM,GAAG,IAAI,EAAE,IAAI,CAAC,CAAC;gBAClF,IAAI,SAAS,KAAK,CAAC;oBAAE,MAAM;gBAC3B,IAAI,IAAI,SAAS,CAAC;YACpB,CAAC;YACD,IAAI,IAAI,KAAK,MAAM,CAAC,MAAM;gBAAE,OAAO,EAAE,CAAC;YACtC,IAAI,GAAG,MAAM,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC,EAAE,IAAI,CAAC,CAAC;QAC1C,CAAC;gBAAS,CAAC;YACT,MAAM,MAAM,CAAC,KAAK,EAAE,CAAC;QACvB,CAAC;IACH,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,IAAI,KAAK,YAAY,SAAS;YAAE,MAAM,KAAK,CAAC;QAC5C,IAAI,IAAI,KAAK,SAAS,IAAI,KAAK,YAAY,KAAK,IAAI,MAAM,IAAI,KAAK,IAAI,KAAK,CAAC,IAAI,KAAK,QAAQ;YAC5F,OAAO,EAAE,CAAC;QACZ,MAAM,IAAI,KAAK,CAAC,uCAAuC,CAAC,CAAC;IAC3D,CAAC;IACD,IAAI,KAAc,CAAC;IACnB,IAAI,CAAC;QACH,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IAC3B,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,EAAE,CAAC;IACZ,CAAC;IACD,OAAO,WAAW,CAAC,KAAK,CAAC,CAAC;AAC5B,CAAC"}
|
package/dist/consent.js
CHANGED
|
@@ -52,7 +52,8 @@ const KNOWN_CMPS = [
|
|
|
52
52
|
{
|
|
53
53
|
name: 'Osano',
|
|
54
54
|
accept: '.osano-cm-accept-all',
|
|
55
|
-
|
|
55
|
+
// osano.com serves `osano-cm-denyAll`; the dashed form is kept for older loader versions.
|
|
56
|
+
reject: '.osano-cm-denyAll, .osano-cm-deny-all',
|
|
56
57
|
},
|
|
57
58
|
{
|
|
58
59
|
name: 'Termly',
|
|
@@ -74,6 +75,33 @@ const SUBSCRIBE = /abonn|\babo\b|subscri|werbefrei|ohne werbung|ad-free|without
|
|
|
74
75
|
/** A frame without any of these words is not showing a consent banner. */
|
|
75
76
|
const CONSENT_CONTEXT = /cookie|consent|einwillig|tracking|datenschutz|privacy/i;
|
|
76
77
|
const CLICKABLE = 'button, [role="button"], a, input[type="button"], input[type="submit"]';
|
|
78
|
+
/** JavaScript calls that consent managers document for reopening their settings. */
|
|
79
|
+
const REOPEN_CALLS = [
|
|
80
|
+
'Cookiebot.renew',
|
|
81
|
+
'UC_UI.showSecondLayer',
|
|
82
|
+
'Didomi.preferences.show',
|
|
83
|
+
'klaro.show',
|
|
84
|
+
'displayPreferenceModal',
|
|
85
|
+
'loadPrivacyManagerModal',
|
|
86
|
+
];
|
|
87
|
+
/**
|
|
88
|
+
* Floating buttons and footer links that reopen the settings after a choice was made. Best
|
|
89
|
+
* effort like KNOWN_CMPS; the label heuristic below catches self-built links.
|
|
90
|
+
*/
|
|
91
|
+
const REOPEN_CONTROLS = [
|
|
92
|
+
...REOPEN_CALLS.flatMap((call) => [`a[href*="${call}"]`, `[onclick*="${call}"]`]),
|
|
93
|
+
'#CookiebotWidget',
|
|
94
|
+
'.ot-sdk-show-settings, #ot-sdk-btn-floating',
|
|
95
|
+
'[data-testid="uc-privacy-button"]',
|
|
96
|
+
'.cmplz-manage-consent',
|
|
97
|
+
'.cky-btn-revisit',
|
|
98
|
+
'.iubenda-cs-preferences-link',
|
|
99
|
+
'[data-cc="show-preferencesModal"], [data-cc="c-settings"]',
|
|
100
|
+
'.osano-cm-widget',
|
|
101
|
+
'.termly-display-preferences',
|
|
102
|
+
].join(', ');
|
|
103
|
+
// Word boundaries keep nav links like "Consent management platform" from matching.
|
|
104
|
+
const SETTINGS_LABEL = /(cookie|consent|datenschutz|privatsphäre|privacy|tracking)[-\s]?(einstellungen|settings|preferences|präferenzen|optionen|options)\b|(einwilligung|zustimmung|consent)(en)?\s+(widerrufen|ändern|verwalten|anpassen|bearbeiten|withdraw|manage|change)\b|cookies?\s+(verwalten|anpassen|ändern|manage)\b|manage\s+(cookies|consent|privacy)\b|withdraw\s+(my\s+)?consent\b|paramètres des cookies|gérer (les )?cookies/i;
|
|
77
105
|
/**
|
|
78
106
|
* Looks for a consent banner, clicks its reject button if there is one,
|
|
79
107
|
* reloads the page and records what still gets loaded. The page must already
|
|
@@ -121,6 +149,7 @@ export async function observeConsent(page, context, requests, options) {
|
|
|
121
149
|
const cookies = (await context.cookies())
|
|
122
150
|
.filter((cookie) => !cookiesBefore.has(cookieKey(cookie)))
|
|
123
151
|
.map(({ name, domain, path, expires }) => ({ name, domain, path, expires }));
|
|
152
|
+
const settingsLabel = await findSettingsControl(page);
|
|
124
153
|
return {
|
|
125
154
|
...observation,
|
|
126
155
|
rejected: true,
|
|
@@ -128,6 +157,7 @@ export async function observeConsent(page, context, requests, options) {
|
|
|
128
157
|
outcome: 'reject-succeeded',
|
|
129
158
|
reason: 'reject-clicked-and-reloaded',
|
|
130
159
|
afterReject: { requests: requests.slice(firstRequest), cookies },
|
|
160
|
+
settingsControl: settingsLabel === undefined ? { found: false } : { found: true, label: settingsLabel },
|
|
131
161
|
};
|
|
132
162
|
}
|
|
133
163
|
catch (error) {
|
|
@@ -190,6 +220,40 @@ async function findBanner(page) {
|
|
|
190
220
|
}
|
|
191
221
|
return undefined;
|
|
192
222
|
}
|
|
223
|
+
/**
|
|
224
|
+
* Looks for a visible way back into the consent settings once the banner is gone. Returns the
|
|
225
|
+
* control's label, or undefined if there is none. Icon buttons count by aria-label or title.
|
|
226
|
+
*/
|
|
227
|
+
async function findSettingsControl(page) {
|
|
228
|
+
for (const frame of page.frames()) {
|
|
229
|
+
const widget = await firstVisible(frame.locator(REOPEN_CONTROLS));
|
|
230
|
+
if (widget !== undefined) {
|
|
231
|
+
return (await label(widget)) || ((await widget.getAttribute('aria-label')) ?? 'widget');
|
|
232
|
+
}
|
|
233
|
+
}
|
|
234
|
+
for (const frame of page.frames()) {
|
|
235
|
+
const match = await frame
|
|
236
|
+
.locator(CLICKABLE)
|
|
237
|
+
.evaluateAll((elements, source) => {
|
|
238
|
+
const pattern = new RegExp(source, 'i');
|
|
239
|
+
const shown = (element) => element.getClientRects().length > 0 && getComputedStyle(element).visibility !== 'hidden';
|
|
240
|
+
for (const element of elements) {
|
|
241
|
+
const name = [
|
|
242
|
+
element.innerText,
|
|
243
|
+
element.getAttribute('aria-label'),
|
|
244
|
+
element.getAttribute('title'),
|
|
245
|
+
].find((text) => text && pattern.test(text));
|
|
246
|
+
if (name && shown(element))
|
|
247
|
+
return name.replace(/\s+/g, ' ').trim().slice(0, 80);
|
|
248
|
+
}
|
|
249
|
+
return undefined;
|
|
250
|
+
}, SETTINGS_LABEL.source)
|
|
251
|
+
.catch(() => undefined);
|
|
252
|
+
if (match !== undefined)
|
|
253
|
+
return match;
|
|
254
|
+
}
|
|
255
|
+
return undefined;
|
|
256
|
+
}
|
|
193
257
|
async function describe(accept, reject, cmp) {
|
|
194
258
|
const banner = { acceptLabel: await label(accept) };
|
|
195
259
|
if (reject === undefined && (await offersSubscription(accept))) {
|
package/dist/consent.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"consent.js","sourceRoot":"","sources":["../src/consent.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"consent.js","sourceRoot":"","sources":["../src/consent.ts"],"names":[],"mappings":"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"}
|
package/dist/data/trackers.js
CHANGED
|
@@ -125,6 +125,36 @@ export const trackers = [
|
|
|
125
125
|
domains: ['matomo.cloud'],
|
|
126
126
|
cookies: ['_pk_'],
|
|
127
127
|
},
|
|
128
|
+
// Ad-tech vendors below were observed on welt.de, spiegel.de, focus.de, n-tv.de, bild.de,
|
|
129
|
+
// independent.co.uk and usatoday.com on 2026-10-27, after accepting their consent banners.
|
|
130
|
+
{
|
|
131
|
+
vendor: 'Criteo',
|
|
132
|
+
category: 'advertising',
|
|
133
|
+
domains: ['criteo.com', 'criteo.net'],
|
|
134
|
+
cookies: ['cto_'],
|
|
135
|
+
},
|
|
136
|
+
{
|
|
137
|
+
vendor: 'Taboola',
|
|
138
|
+
category: 'advertising',
|
|
139
|
+
domains: ['taboola.com'],
|
|
140
|
+
},
|
|
141
|
+
{
|
|
142
|
+
vendor: 'Outbrain',
|
|
143
|
+
category: 'advertising',
|
|
144
|
+
domains: ['outbrain.com', 'outbrainimg.com'],
|
|
145
|
+
},
|
|
146
|
+
{
|
|
147
|
+
vendor: 'Adform',
|
|
148
|
+
category: 'advertising',
|
|
149
|
+
domains: ['adform.net'],
|
|
150
|
+
},
|
|
151
|
+
{
|
|
152
|
+
// Measure and audience pixels only; cmp.quantcast.com is a consent manager, not a tracker.
|
|
153
|
+
vendor: 'Quantcast',
|
|
154
|
+
category: 'advertising',
|
|
155
|
+
domains: ['quantserve.com', 'quantcount.com'],
|
|
156
|
+
cookies: ['__qca'],
|
|
157
|
+
},
|
|
128
158
|
];
|
|
129
159
|
export function findTrackerByUrl(url) {
|
|
130
160
|
return findByUrl(trackers, url);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"trackers.js","sourceRoot":"","sources":["../../src/data/trackers.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"trackers.js","sourceRoot":"","sources":["../../src/data/trackers.ts"],"names":[],"mappings":"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"}
|
package/dist/index.d.ts
CHANGED
|
@@ -7,6 +7,6 @@ export { LANGS, type Lang, type Text } from './i18n.js';
|
|
|
7
7
|
export { legalReferences, REGIONS, type Region } from './legal.js';
|
|
8
8
|
export { type NetworkAdapter, NetworkError, type NetworkLimits, type NetworkRequest, type NetworkResponse, } from './network.js';
|
|
9
9
|
export { identifyReportSchema, REPORT_SCHEMA_VERSION, type ReportSchemaIdentity, SUPPORTED_REPORT_SCHEMAS, } from './report-contract.js';
|
|
10
|
-
export { defaultRules, googleFonts, impressumLink, preConsentTrackers, privacyPolicyLink, rejectOption, thirdPartyCdns, thirdPartyEmbeds, trackersAfterReject, } from './rules/index.js';
|
|
10
|
+
export { adobeFonts, consentSettingsLink, defaultRules, googleFonts, impressumLink, preConsentTrackers, privacyPolicyLink, rejectOption, thirdPartyCdns, thirdPartyEmbeds, trackersAfterReject, } from './rules/index.js';
|
|
11
11
|
export { type ScanOptions, scan } from './scanner.js';
|
|
12
12
|
export type * from './types.js';
|
package/dist/index.js
CHANGED
|
@@ -7,6 +7,6 @@ export { LANGS } from './i18n.js';
|
|
|
7
7
|
export { legalReferences, REGIONS } from './legal.js';
|
|
8
8
|
export { NetworkError, } from './network.js';
|
|
9
9
|
export { identifyReportSchema, REPORT_SCHEMA_VERSION, SUPPORTED_REPORT_SCHEMAS, } from './report-contract.js';
|
|
10
|
-
export { defaultRules, googleFonts, impressumLink, preConsentTrackers, privacyPolicyLink, rejectOption, thirdPartyCdns, thirdPartyEmbeds, trackersAfterReject, } from './rules/index.js';
|
|
10
|
+
export { adobeFonts, consentSettingsLink, defaultRules, googleFonts, impressumLink, preConsentTrackers, privacyPolicyLink, rejectOption, thirdPartyCdns, thirdPartyEmbeds, trackersAfterReject, } from './rules/index.js';
|
|
11
11
|
export { scan } from './scanner.js';
|
|
12
12
|
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAwB,WAAW,EAAE,MAAM,aAAa,CAAC;AAC5E,OAAO,EAA4B,cAAc,EAAE,MAAM,cAAc,CAAC;AACxE,OAAO,EAAE,cAAc,EAA+C,MAAM,eAAe,CAAC;AAC5F,OAAO,EAAsC,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAClF,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACjD,OAAO,EAAE,KAAK,EAAwB,MAAM,WAAW,CAAC;AACxD,OAAO,EAAE,eAAe,EAAE,OAAO,EAAe,MAAM,YAAY,CAAC;AACnE,OAAO,EAEL,YAAY,GAIb,MAAM,cAAc,CAAC;AACtB,OAAO,EACL,oBAAoB,EACpB,qBAAqB,EAErB,wBAAwB,GACzB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EACL,YAAY,EACZ,WAAW,EACX,aAAa,EACb,kBAAkB,EAClB,iBAAiB,EACjB,YAAY,EACZ,cAAc,EACd,gBAAgB,EAChB,mBAAmB,GACpB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAoB,IAAI,EAAE,MAAM,cAAc,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAwB,WAAW,EAAE,MAAM,aAAa,CAAC;AAC5E,OAAO,EAA4B,cAAc,EAAE,MAAM,cAAc,CAAC;AACxE,OAAO,EAAE,cAAc,EAA+C,MAAM,eAAe,CAAC;AAC5F,OAAO,EAAsC,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAClF,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACjD,OAAO,EAAE,KAAK,EAAwB,MAAM,WAAW,CAAC;AACxD,OAAO,EAAE,eAAe,EAAE,OAAO,EAAe,MAAM,YAAY,CAAC;AACnE,OAAO,EAEL,YAAY,GAIb,MAAM,cAAc,CAAC;AACtB,OAAO,EACL,oBAAoB,EACpB,qBAAqB,EAErB,wBAAwB,GACzB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EACL,UAAU,EACV,mBAAmB,EACnB,YAAY,EACZ,WAAW,EACX,aAAa,EACb,kBAAkB,EAClB,iBAAiB,EACjB,YAAY,EACZ,cAAc,EACd,gBAAgB,EAChB,mBAAmB,GACpB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAoB,IAAI,EAAE,MAAM,cAAc,CAAC"}
|
package/dist/legal.js
CHANGED
|
@@ -32,12 +32,24 @@ const LEGAL = {
|
|
|
32
32
|
ch: ['Art. 45c FMG', 'EDÖB, Leitfaden zu Cookies (2025)'],
|
|
33
33
|
eu: ['Art. 4(11) GDPR', 'Art. 7(3) GDPR', 'EDPB Cookie Banner Taskforce report, 17.01.2023'],
|
|
34
34
|
},
|
|
35
|
+
'consent-settings-link': {
|
|
36
|
+
de: ['Art. 7 Abs. 3 DSGVO', '§ 25 Abs. 1 TDDDG'],
|
|
37
|
+
at: ['Art. 7 Abs. 3 DSGVO', '§ 165 Abs. 3 TKG 2021'],
|
|
38
|
+
ch: ['Art. 45c FMG'],
|
|
39
|
+
eu: ['Art. 7(3) GDPR', 'Art. 5(3) ePrivacy Directive'],
|
|
40
|
+
},
|
|
35
41
|
'google-fonts': {
|
|
36
42
|
de: ['Art. 6 Abs. 1 DSGVO', 'LG München I, 20.01.2022, Az. 3 O 17493/20'],
|
|
37
43
|
at: ['Art. 6 Abs. 1 DSGVO'],
|
|
38
44
|
ch: ['Art. 6 DSG'],
|
|
39
45
|
eu: ['Art. 6(1) GDPR'],
|
|
40
46
|
},
|
|
47
|
+
'adobe-fonts': {
|
|
48
|
+
de: ['Art. 6 Abs. 1 DSGVO', 'LG München I, 20.01.2022, Az. 3 O 17493/20 (entsprechend)'],
|
|
49
|
+
at: ['Art. 6 Abs. 1 DSGVO'],
|
|
50
|
+
ch: ['Art. 6 DSG'],
|
|
51
|
+
eu: ['Art. 6(1) GDPR'],
|
|
52
|
+
},
|
|
41
53
|
'third-party-embeds': {
|
|
42
54
|
de: ['Art. 6 Abs. 1 DSGVO', '§ 25 Abs. 1 TDDDG'],
|
|
43
55
|
at: ['Art. 6 Abs. 1 DSGVO', '§ 165 Abs. 3 TKG 2021'],
|
|
@@ -86,6 +98,7 @@ export function applyRegion(findings, region) {
|
|
|
86
98
|
*/
|
|
87
99
|
const SOFTER_IN_SWITZERLAND = new Set([
|
|
88
100
|
'pre-consent-trackers',
|
|
101
|
+
'consent-settings-link',
|
|
89
102
|
'third-party-embeds',
|
|
90
103
|
'impressum-link',
|
|
91
104
|
]);
|
package/dist/legal.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"legal.js","sourceRoot":"","sources":["../src/legal.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"legal.js","sourceRoot":"","sources":["../src/legal.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,71 @@
|
|
|
1
|
+
import { say } from '../i18n.js';
|
|
2
|
+
import { observedRequests } from '../observations.js';
|
|
3
|
+
import { hostMatches, safeHost } from '../url.js';
|
|
4
|
+
const ID = 'adobe-fonts';
|
|
5
|
+
/** use.typekit.net serves the kit CSS and fonts, p.typekit.net counts page views for licensing. */
|
|
6
|
+
const ADOBE_FONT_HOSTS = ['use.typekit.net', 'p.typekit.net'];
|
|
7
|
+
/** dns-prefetch only resolves the name; these hints open a real connection. */
|
|
8
|
+
const CONNECTING_HINTS = new Set(['preconnect', 'preload', 'prefetch', 'stylesheet']);
|
|
9
|
+
const FIX = {
|
|
10
|
+
en: 'Adobe Fonts are licensed for web use through Adobe’s servers only, so they cannot simply be ' +
|
|
11
|
+
'self-hosted. Either license the font for self-hosting from its foundry or ask Adobe Sales ' +
|
|
12
|
+
'about local hosting, or switch to an open-licensed font (e.g. from Fontsource) and serve it ' +
|
|
13
|
+
'from your own domain. Then remove every reference to use.typekit.net and p.typekit.net.',
|
|
14
|
+
de: 'Adobe Fonts sind für das Web nur über Adobes Server lizenziert und lassen sich nicht einfach ' +
|
|
15
|
+
'selbst hosten. Entweder die Schrift beim Hersteller für Self-Hosting lizenzieren oder bei Adobe ' +
|
|
16
|
+
'nach lokalem Hosting fragen, oder auf eine Schrift mit offener Lizenz (z. B. über Fontsource) ' +
|
|
17
|
+
'wechseln und sie von der eigenen Domain ausliefern. Danach alle Verweise auf use.typekit.net ' +
|
|
18
|
+
'und p.typekit.net entfernen.',
|
|
19
|
+
};
|
|
20
|
+
const isAdobeFontUrl = (url) => {
|
|
21
|
+
const host = safeHost(url);
|
|
22
|
+
return host !== undefined && ADOBE_FONT_HOSTS.some((domain) => hostMatches(host, domain));
|
|
23
|
+
};
|
|
24
|
+
export const adobeFonts = {
|
|
25
|
+
id: ID,
|
|
26
|
+
title: 'Adobe Fonts loaded from Adobe servers',
|
|
27
|
+
description: "Adobe Fonts (Typekit) are served from Adobe's servers, which receive every visitor's IP " +
|
|
28
|
+
'address and the page’s hostname, and count page views for font licensing. The reasoning ' +
|
|
29
|
+
'that made Google Fonts a problem applies the same way.',
|
|
30
|
+
references: ['Art. 6(1) GDPR', 'LG München I, 20.01.2022, Az. 3 O 17493/20 (by analogy)'],
|
|
31
|
+
check({ page, lang }) {
|
|
32
|
+
const requests = observedRequests(page.requests).filter((request) => isAdobeFontUrl(request.url));
|
|
33
|
+
if (requests.length > 0) {
|
|
34
|
+
const count = requests.length;
|
|
35
|
+
return [
|
|
36
|
+
{
|
|
37
|
+
ruleId: ID,
|
|
38
|
+
severity: 'error',
|
|
39
|
+
message: say(lang, {
|
|
40
|
+
en: `Fonts are loaded from Adobe (${count} request${count === 1 ? '' : 's'}).`,
|
|
41
|
+
de: `Schriften werden von Adobe geladen (${count} ${count === 1 ? 'Anfrage' : 'Anfragen'}).`,
|
|
42
|
+
}),
|
|
43
|
+
pageUrl: page.finalUrl,
|
|
44
|
+
evidence: [...new Set(requests.map((request) => request.url))].slice(0, 5),
|
|
45
|
+
fix: say(lang, FIX),
|
|
46
|
+
},
|
|
47
|
+
];
|
|
48
|
+
}
|
|
49
|
+
const hints = page.resourceHints.filter((hint) => isAdobeFontUrl(hint.href) && hint.rel.split(/\s+/).some((rel) => CONNECTING_HINTS.has(rel)));
|
|
50
|
+
if (hints.length > 0) {
|
|
51
|
+
return [
|
|
52
|
+
{
|
|
53
|
+
ruleId: ID,
|
|
54
|
+
severity: 'warning',
|
|
55
|
+
message: say(lang, {
|
|
56
|
+
en: 'The page preconnects to Adobe Fonts. No font was fetched, but the browser still opens a connection and transmits the IP address.',
|
|
57
|
+
de: 'Die Seite baut vorab eine Verbindung zu Adobe Fonts auf. Es wurde keine Schrift geladen, aber der Browser öffnet trotzdem eine Verbindung und überträgt die IP-Adresse.',
|
|
58
|
+
}),
|
|
59
|
+
pageUrl: page.finalUrl,
|
|
60
|
+
evidence: hints.map((hint) => `<link rel="${hint.rel}" href="${hint.href}">`),
|
|
61
|
+
fix: say(lang, {
|
|
62
|
+
en: 'Remove the leftover <link> tags pointing to Adobe Fonts.',
|
|
63
|
+
de: 'Die übrig gebliebenen <link>-Tags zu Adobe Fonts entfernen.',
|
|
64
|
+
}),
|
|
65
|
+
},
|
|
66
|
+
];
|
|
67
|
+
}
|
|
68
|
+
return [];
|
|
69
|
+
},
|
|
70
|
+
};
|
|
71
|
+
//# sourceMappingURL=adobe-fonts.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"adobe-fonts.js","sourceRoot":"","sources":["../../src/rules/adobe-fonts.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
import { say } from '../i18n.js';
|
|
2
|
+
const ID = 'consent-settings-link';
|
|
3
|
+
export const consentSettingsLink = {
|
|
4
|
+
id: ID,
|
|
5
|
+
title: 'No way to reopen the cookie settings',
|
|
6
|
+
description: 'After the visitor rejected and the page reloaded, privalint looks for a visible link or ' +
|
|
7
|
+
'button that reopens the consent settings, such as a "Cookie-Einstellungen" footer link or ' +
|
|
8
|
+
'the floating button of the consent manager. Without one, a choice cannot be changed or ' +
|
|
9
|
+
'withdrawn as easily as it was made.',
|
|
10
|
+
references: ['Art. 7(3) GDPR'],
|
|
11
|
+
check({ page, lang }) {
|
|
12
|
+
const consent = page.consent;
|
|
13
|
+
if (consent?.rejected !== true || consent.settingsControl?.found !== false) {
|
|
14
|
+
return [];
|
|
15
|
+
}
|
|
16
|
+
const button = consent.rejectLabel ?? say(lang, { en: 'reject', de: 'Ablehnen' });
|
|
17
|
+
const evidence = [
|
|
18
|
+
say(lang, {
|
|
19
|
+
en: `Checked after clicking "${button}" and reloading`,
|
|
20
|
+
de: `Geprüft nach Klick auf „${button}“ und Neuladen`,
|
|
21
|
+
}),
|
|
22
|
+
];
|
|
23
|
+
if (consent.cmp !== undefined) {
|
|
24
|
+
evidence.push(say(lang, { en: 'Consent manager: ', de: 'Consent-Tool: ' }) + consent.cmp);
|
|
25
|
+
}
|
|
26
|
+
return [
|
|
27
|
+
{
|
|
28
|
+
ruleId: ID,
|
|
29
|
+
severity: 'warning',
|
|
30
|
+
message: say(lang, {
|
|
31
|
+
en: 'No link or button to reopen the cookie settings was found after rejecting.',
|
|
32
|
+
de: 'Nach dem Ablehnen wurde kein Link und kein Button gefunden, der die Cookie-Einstellungen wieder öffnet.',
|
|
33
|
+
}),
|
|
34
|
+
pageUrl: page.finalUrl,
|
|
35
|
+
evidence,
|
|
36
|
+
fix: say(lang, {
|
|
37
|
+
en: 'Add a "Cookie settings" link to the footer of every page, or enable the floating ' +
|
|
38
|
+
'button of your consent manager. Most offer a call for it, e.g. Cookiebot.renew(), ' +
|
|
39
|
+
'UC_UI.showSecondLayer() (Usercentrics), Didomi.preferences.show() or the ' +
|
|
40
|
+
'ot-sdk-show-settings class (OneTrust).',
|
|
41
|
+
de: 'Einen Link „Cookie-Einstellungen“ in den Footer jeder Seite setzen oder den ' +
|
|
42
|
+
'schwebenden Button des Consent-Tools aktivieren. Die meisten bieten dafür einen ' +
|
|
43
|
+
'Aufruf, z. B. Cookiebot.renew(), UC_UI.showSecondLayer() (Usercentrics), ' +
|
|
44
|
+
'Didomi.preferences.show() oder die Klasse ot-sdk-show-settings (OneTrust).',
|
|
45
|
+
}),
|
|
46
|
+
},
|
|
47
|
+
];
|
|
48
|
+
},
|
|
49
|
+
};
|
|
50
|
+
//# sourceMappingURL=consent-settings-link.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"consent-settings-link.js","sourceRoot":"","sources":["../../src/rules/consent-settings-link.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,YAAY,CAAC;AAGjC,MAAM,EAAE,GAAG,uBAAuB,CAAC;AAEnC,MAAM,CAAC,MAAM,mBAAmB,GAAS;IACvC,EAAE,EAAE,EAAE;IACN,KAAK,EAAE,sCAAsC;IAC7C,WAAW,EACT,0FAA0F;QAC1F,4FAA4F;QAC5F,yFAAyF;QACzF,qCAAqC;IACvC,UAAU,EAAE,CAAC,gBAAgB,CAAC;IAC9B,KAAK,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE;QAClB,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC;QAC7B,IAAI,OAAO,EAAE,QAAQ,KAAK,IAAI,IAAI,OAAO,CAAC,eAAe,EAAE,KAAK,KAAK,KAAK,EAAE,CAAC;YAC3E,OAAO,EAAE,CAAC;QACZ,CAAC;QACD,MAAM,MAAM,GAAG,OAAO,CAAC,WAAW,IAAI,GAAG,CAAC,IAAI,EAAE,EAAE,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE,UAAU,EAAE,CAAC,CAAC;QAClF,MAAM,QAAQ,GAAG;YACf,GAAG,CAAC,IAAI,EAAE;gBACR,EAAE,EAAE,2BAA2B,MAAM,iBAAiB;gBACtD,EAAE,EAAE,2BAA2B,MAAM,gBAAgB;aACtD,CAAC;SACH,CAAC;QACF,IAAI,OAAO,CAAC,GAAG,KAAK,SAAS,EAAE,CAAC;YAC9B,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,EAAE,EAAE,EAAE,mBAAmB,EAAE,EAAE,EAAE,gBAAgB,EAAE,CAAC,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC;QAC5F,CAAC;QACD,OAAO;YACL;gBACE,MAAM,EAAE,EAAE;gBACV,QAAQ,EAAE,SAAS;gBACnB,OAAO,EAAE,GAAG,CAAC,IAAI,EAAE;oBACjB,EAAE,EAAE,4EAA4E;oBAChF,EAAE,EAAE,yGAAyG;iBAC9G,CAAC;gBACF,OAAO,EAAE,IAAI,CAAC,QAAQ;gBACtB,QAAQ;gBACR,GAAG,EAAE,GAAG,CAAC,IAAI,EAAE;oBACb,EAAE,EACA,mFAAmF;wBACnF,oFAAoF;wBACpF,2EAA2E;wBAC3E,wCAAwC;oBAC1C,EAAE,EACA,8EAA8E;wBAC9E,kFAAkF;wBAClF,2EAA2E;wBAC3E,4EAA4E;iBAC/E,CAAC;aACH;SACF,CAAC;IACJ,CAAC;CACF,CAAC"}
|
package/dist/rules/index.d.ts
CHANGED
|
@@ -1,4 +1,6 @@
|
|
|
1
1
|
import type { Rule } from '../types.js';
|
|
2
|
+
import { adobeFonts } from './adobe-fonts.js';
|
|
3
|
+
import { consentSettingsLink } from './consent-settings-link.js';
|
|
2
4
|
import { googleFonts } from './google-fonts.js';
|
|
3
5
|
import { impressumLink } from './impressum-link.js';
|
|
4
6
|
import { preConsentTrackers } from './pre-consent-trackers.js';
|
|
@@ -8,4 +10,4 @@ import { thirdPartyCdns } from './third-party-cdns.js';
|
|
|
8
10
|
import { thirdPartyEmbeds } from './third-party-embeds.js';
|
|
9
11
|
import { trackersAfterReject } from './trackers-after-reject.js';
|
|
10
12
|
export declare const defaultRules: readonly Rule[];
|
|
11
|
-
export { googleFonts, impressumLink, preConsentTrackers, privacyPolicyLink, rejectOption, thirdPartyCdns, thirdPartyEmbeds, trackersAfterReject, };
|
|
13
|
+
export { adobeFonts, consentSettingsLink, googleFonts, impressumLink, preConsentTrackers, privacyPolicyLink, rejectOption, thirdPartyCdns, thirdPartyEmbeds, trackersAfterReject, };
|
package/dist/rules/index.js
CHANGED
|
@@ -1,3 +1,5 @@
|
|
|
1
|
+
import { adobeFonts } from './adobe-fonts.js';
|
|
2
|
+
import { consentSettingsLink } from './consent-settings-link.js';
|
|
1
3
|
import { googleFonts } from './google-fonts.js';
|
|
2
4
|
import { impressumLink } from './impressum-link.js';
|
|
3
5
|
import { preConsentTrackers } from './pre-consent-trackers.js';
|
|
@@ -10,11 +12,13 @@ export const defaultRules = [
|
|
|
10
12
|
preConsentTrackers,
|
|
11
13
|
trackersAfterReject,
|
|
12
14
|
rejectOption,
|
|
15
|
+
consentSettingsLink,
|
|
13
16
|
googleFonts,
|
|
17
|
+
adobeFonts,
|
|
14
18
|
thirdPartyEmbeds,
|
|
15
19
|
thirdPartyCdns,
|
|
16
20
|
impressumLink,
|
|
17
21
|
privacyPolicyLink,
|
|
18
22
|
];
|
|
19
|
-
export { googleFonts, impressumLink, preConsentTrackers, privacyPolicyLink, rejectOption, thirdPartyCdns, thirdPartyEmbeds, trackersAfterReject, };
|
|
23
|
+
export { adobeFonts, consentSettingsLink, googleFonts, impressumLink, preConsentTrackers, privacyPolicyLink, rejectOption, thirdPartyCdns, thirdPartyEmbeds, trackersAfterReject, };
|
|
20
24
|
//# sourceMappingURL=index.js.map
|
package/dist/rules/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/rules/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAChD,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACpD,OAAO,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AAC/D,OAAO,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAC7D,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAClD,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AACvD,OAAO,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAC3D,OAAO,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAC;AAEjE,MAAM,CAAC,MAAM,YAAY,GAAoB;IAC3C,kBAAkB;IAClB,mBAAmB;IACnB,YAAY;IACZ,WAAW;IACX,gBAAgB;IAChB,cAAc;IACd,aAAa;IACb,iBAAiB;CAClB,CAAC;AAEF,OAAO,EACL,WAAW,EACX,aAAa,EACb,kBAAkB,EAClB,iBAAiB,EACjB,YAAY,EACZ,cAAc,EACd,gBAAgB,EAChB,mBAAmB,GACpB,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/rules/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAC9C,OAAO,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAC;AACjE,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAChD,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACpD,OAAO,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AAC/D,OAAO,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAC7D,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAClD,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AACvD,OAAO,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAC3D,OAAO,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAC;AAEjE,MAAM,CAAC,MAAM,YAAY,GAAoB;IAC3C,kBAAkB;IAClB,mBAAmB;IACnB,YAAY;IACZ,mBAAmB;IACnB,WAAW;IACX,UAAU;IACV,gBAAgB;IAChB,cAAc;IACd,aAAa;IACb,iBAAiB;CAClB,CAAC;AAEF,OAAO,EACL,UAAU,EACV,mBAAmB,EACnB,WAAW,EACX,aAAa,EACb,kBAAkB,EAClB,iBAAiB,EACjB,YAAY,EACZ,cAAc,EACd,gBAAgB,EAChB,mBAAmB,GACpB,CAAC"}
|
package/dist/scan-options.d.ts
CHANGED
|
@@ -4,6 +4,8 @@ import type { NetworkAdapter, NetworkLimits } from './network.js';
|
|
|
4
4
|
import type { PageSnapshot, Rule, RuleSettings, ScanProgressEvent } from './types.js';
|
|
5
5
|
export interface ScanOptions {
|
|
6
6
|
maxPages?: number | undefined;
|
|
7
|
+
/** Pages captured at the same time. Results are identical to a sequential crawl. Default 1. */
|
|
8
|
+
concurrency?: number | undefined;
|
|
7
9
|
settleMs?: number | undefined;
|
|
8
10
|
/** Navigation/network-idle timeout, distinct from transport and capture deadlines. */
|
|
9
11
|
timeoutMs?: number | undefined;
|
|
@@ -23,6 +25,11 @@ export interface ScanOptions {
|
|
|
23
25
|
consentCheck?: boolean | undefined;
|
|
24
26
|
headed?: boolean | undefined;
|
|
25
27
|
channel?: string | undefined;
|
|
28
|
+
/**
|
|
29
|
+
* Run Chromium with its sandbox. Off by default like Playwright, because the sandbox
|
|
30
|
+
* often cannot start in containers or on hosts that restrict user namespaces.
|
|
31
|
+
*/
|
|
32
|
+
sandbox?: boolean | undefined;
|
|
26
33
|
/** Trusted hook receiving RAW observations. Do not log/expose without redaction. */
|
|
27
34
|
onPage?: (snapshot: PageSnapshot) => void;
|
|
28
35
|
/** Caller-owned transport; scan owns browser, fresh per-page contexts and request signals. */
|
|
@@ -39,6 +46,7 @@ export interface ScanOptions {
|
|
|
39
46
|
}
|
|
40
47
|
export declare const DEFAULTS: {
|
|
41
48
|
maxPages: number;
|
|
49
|
+
concurrency: number;
|
|
42
50
|
settleMs: number;
|
|
43
51
|
timeoutMs: number;
|
|
44
52
|
locale: string;
|
package/dist/scan-options.js
CHANGED
package/dist/scan-options.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"scan-options.js","sourceRoot":"","sources":["../src/scan-options.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"scan-options.js","sourceRoot":"","sources":["../src/scan-options.ts"],"names":[],"mappings":"AA6CA,MAAM,CAAC,MAAM,QAAQ,GAAG;IACtB,QAAQ,EAAE,CAAC;IACX,WAAW,EAAE,CAAC;IACd,QAAQ,EAAE,KAAK;IACf,SAAS,EAAE,MAAM;IACjB,MAAM,EAAE,OAAO;CAChB,CAAC"}
|
package/dist/scanner.js
CHANGED
|
@@ -16,6 +16,25 @@ function integer(value, name, minimum) {
|
|
|
16
16
|
throw new RangeError(`${name} must be a safe integer of at least ${minimum}`);
|
|
17
17
|
}
|
|
18
18
|
}
|
|
19
|
+
async function launchBrowser(options) {
|
|
20
|
+
const sandbox = options.sandbox === true;
|
|
21
|
+
try {
|
|
22
|
+
return await chromium.launch({
|
|
23
|
+
headless: options.headed !== true,
|
|
24
|
+
chromiumSandbox: sandbox,
|
|
25
|
+
...(options.channel === undefined ? {} : { channel: options.channel }),
|
|
26
|
+
});
|
|
27
|
+
}
|
|
28
|
+
catch (error) {
|
|
29
|
+
if (!sandbox)
|
|
30
|
+
throw error;
|
|
31
|
+
// Chromium's own message ("No usable sandbox!") does not say what to change.
|
|
32
|
+
throw new Error('Chromium could not start with its sandbox. On Linux this usually means unprivileged user ' +
|
|
33
|
+
'namespaces are restricted (Ubuntu 23.10 and later, many containers). Allow them for ' +
|
|
34
|
+
'Chromium or run without --sandbox; see ' +
|
|
35
|
+
'https://chromium.googlesource.com/chromium/src/+/main/docs/security/apparmor-userns-restrictions.md', { cause: error });
|
|
36
|
+
}
|
|
37
|
+
}
|
|
19
38
|
export function throwIfAborted(signal) {
|
|
20
39
|
if (signal?.aborted)
|
|
21
40
|
throw new DOMException('Scan aborted', 'AbortError');
|
|
@@ -36,6 +55,8 @@ export async function scan(target, options = {}) {
|
|
|
36
55
|
const rules = configuredRules.filter((rule) => ruleSetting(options.ruleSettings, rule.id) !== 'off');
|
|
37
56
|
const maxPages = options.maxPages ?? DEFAULTS.maxPages;
|
|
38
57
|
integer(maxPages, 'maxPages', 1);
|
|
58
|
+
const concurrency = options.concurrency ?? DEFAULTS.concurrency;
|
|
59
|
+
integer(concurrency, 'concurrency', 1);
|
|
39
60
|
integer(options.settleMs ?? DEFAULTS.settleMs, 'settleMs', 0);
|
|
40
61
|
integer(options.timeoutMs ?? DEFAULTS.timeoutMs, 'timeoutMs', 1);
|
|
41
62
|
integer(options.maxDiagnostics ?? 100, 'maxDiagnostics', 0);
|
|
@@ -54,21 +75,22 @@ export async function scan(target, options = {}) {
|
|
|
54
75
|
let siteUrl = new URL(target);
|
|
55
76
|
if (!/^https?:$/.test(siteUrl.protocol))
|
|
56
77
|
throw new TypeError('Expected an HTTP(S) target');
|
|
57
|
-
const browser = await
|
|
58
|
-
headless: options.headed !== true,
|
|
59
|
-
...(options.channel === undefined ? {} : { channel: options.channel }),
|
|
60
|
-
});
|
|
78
|
+
const browser = await launchBrowser(options);
|
|
61
79
|
try {
|
|
62
80
|
throwIfAborted(options.signal);
|
|
63
81
|
const snapshots = [];
|
|
64
82
|
const queue = [siteUrl.href];
|
|
65
83
|
const seen = new Set(queue);
|
|
66
84
|
const pageIds = new Map();
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
85
|
+
// Captures run ahead of the queue head, but their results are committed strictly in queue
|
|
86
|
+
// order. Pages, their order and the queue therefore match a sequential crawl exactly.
|
|
87
|
+
const pending = new Map();
|
|
88
|
+
let head = 0;
|
|
89
|
+
let launched = 0;
|
|
90
|
+
const launch = (index) => {
|
|
91
|
+
const url = queue[index];
|
|
92
|
+
const isStart = index === 0;
|
|
93
|
+
const pageIndex = snapshots.length + (index - head);
|
|
72
94
|
const captureId = randomUUID();
|
|
73
95
|
emit({
|
|
74
96
|
stage: 'loading-page',
|
|
@@ -78,7 +100,7 @@ export async function scan(target, options = {}) {
|
|
|
78
100
|
captureId,
|
|
79
101
|
});
|
|
80
102
|
let progressFailure;
|
|
81
|
-
const
|
|
103
|
+
const task = capturePage(browser, url, siteUrl, {
|
|
82
104
|
...options,
|
|
83
105
|
onProgress: (event) => {
|
|
84
106
|
try {
|
|
@@ -89,9 +111,30 @@ export async function scan(target, options = {}) {
|
|
|
89
111
|
throw error;
|
|
90
112
|
}
|
|
91
113
|
},
|
|
92
|
-
}, isStart)
|
|
93
|
-
|
|
94
|
-
|
|
114
|
+
}, isStart).then((snapshot) => {
|
|
115
|
+
if (progressFailure)
|
|
116
|
+
throw progressFailure.error;
|
|
117
|
+
return { url, snapshot, isStart, pageIndex, captureId };
|
|
118
|
+
});
|
|
119
|
+
// Awaited in queue order below; this only keeps a page that fails while an earlier one is
|
|
120
|
+
// still loading from becoming an unhandled rejection.
|
|
121
|
+
task.catch(() => undefined);
|
|
122
|
+
return task;
|
|
123
|
+
};
|
|
124
|
+
// The start page decides the site URL that later links are resolved against, so it runs alone.
|
|
125
|
+
const canLaunch = () => launched < queue.length &&
|
|
126
|
+
(launched === 0 || head > 0) &&
|
|
127
|
+
launched - head < concurrency &&
|
|
128
|
+
snapshots.length + (launched - head) < maxPages;
|
|
129
|
+
while (head < queue.length && snapshots.length < maxPages) {
|
|
130
|
+
throwIfAborted(options.signal);
|
|
131
|
+
while (canLaunch()) {
|
|
132
|
+
pending.set(launched, launch(launched));
|
|
133
|
+
launched += 1;
|
|
134
|
+
}
|
|
135
|
+
const { url, snapshot, isStart, pageIndex, captureId } = await pending.get(head);
|
|
136
|
+
pending.delete(head);
|
|
137
|
+
head += 1;
|
|
95
138
|
if (isStart) {
|
|
96
139
|
const failureMode = options.failureMode ?? (options.networkAdapter ? 'report' : 'throw');
|
|
97
140
|
if (snapshot.error !== undefined && failureMode === 'throw') {
|
|
@@ -127,7 +170,6 @@ export async function scan(target, options = {}) {
|
|
|
127
170
|
}
|
|
128
171
|
}
|
|
129
172
|
}
|
|
130
|
-
url = queue.shift();
|
|
131
173
|
}
|
|
132
174
|
throwIfAborted(options.signal);
|
|
133
175
|
const assessments = snapshots.map((page, index) => {
|
|
@@ -147,6 +189,7 @@ export async function scan(target, options = {}) {
|
|
|
147
189
|
scannerVersion: VERSION,
|
|
148
190
|
options: {
|
|
149
191
|
maxPages,
|
|
192
|
+
concurrency,
|
|
150
193
|
settleMs: options.settleMs ?? DEFAULTS.settleMs,
|
|
151
194
|
timeoutMs: options.timeoutMs ?? DEFAULTS.timeoutMs,
|
|
152
195
|
locale: options.locale ?? DEFAULTS.locale,
|
|
@@ -155,6 +198,7 @@ export async function scan(target, options = {}) {
|
|
|
155
198
|
consentCheck: options.consentCheck !== false,
|
|
156
199
|
headed: options.headed === true,
|
|
157
200
|
channel: options.channel ?? 'chromium',
|
|
201
|
+
sandbox: options.sandbox === true,
|
|
158
202
|
captureTimeoutMs: options.captureTimeoutMs ?? (options.networkAdapter ? 60_000 : null),
|
|
159
203
|
maxDiagnostics: options.maxDiagnostics ?? 100,
|
|
160
204
|
failureMode: options.failureMode ?? (options.networkAdapter ? 'report' : 'throw'),
|
package/dist/scanner.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"scanner.js","sourceRoot":"","sources":["../src/scanner.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"scanner.js","sourceRoot":"","sources":["../src/scanner.ts"],"names":[],"mappings":"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"}
|
package/dist/types.d.ts
CHANGED
|
@@ -105,6 +105,14 @@ export interface ConsentObservation {
|
|
|
105
105
|
};
|
|
106
106
|
/** True only if the reject observation window completed without load issues. */
|
|
107
107
|
afterRejectComplete?: boolean;
|
|
108
|
+
/**
|
|
109
|
+
* After rejecting and reloading: whether a link or button to reopen the consent settings was
|
|
110
|
+
* visible, and its label. Absent if the reject path was not tested, and in reports before 0.5.0.
|
|
111
|
+
*/
|
|
112
|
+
settingsControl?: {
|
|
113
|
+
found: boolean;
|
|
114
|
+
label?: string;
|
|
115
|
+
};
|
|
108
116
|
error?: string;
|
|
109
117
|
}
|
|
110
118
|
/**
|
|
@@ -207,6 +215,8 @@ export interface ScanProgressEvent {
|
|
|
207
215
|
}
|
|
208
216
|
export interface ReportOptions {
|
|
209
217
|
maxPages: number;
|
|
218
|
+
/** Absent in reports from scanners before 0.5.0. */
|
|
219
|
+
concurrency?: number;
|
|
210
220
|
settleMs: number;
|
|
211
221
|
timeoutMs: number;
|
|
212
222
|
locale: string;
|
|
@@ -215,6 +225,8 @@ export interface ReportOptions {
|
|
|
215
225
|
consentCheck: boolean;
|
|
216
226
|
headed: boolean;
|
|
217
227
|
channel: string;
|
|
228
|
+
/** Absent in reports from scanners before 0.5.0. */
|
|
229
|
+
sandbox?: boolean;
|
|
218
230
|
captureTimeoutMs: number | null;
|
|
219
231
|
maxDiagnostics: number;
|
|
220
232
|
failureMode: 'throw' | 'report';
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "privalint",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.5.0",
|
|
4
4
|
"description": "Lint your website for GDPR problems: trackers before consent and after reject, Google Fonts, embeds, missing Impressum. Real browser, CLI and GitHub Action.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"bin": {
|
|
@@ -613,6 +613,20 @@
|
|
|
613
613
|
"afterRejectComplete": {
|
|
614
614
|
"type": "boolean"
|
|
615
615
|
},
|
|
616
|
+
"settingsControl": {
|
|
617
|
+
"type": "object",
|
|
618
|
+
"properties": {
|
|
619
|
+
"found": {
|
|
620
|
+
"type": "boolean"
|
|
621
|
+
},
|
|
622
|
+
"label": {
|
|
623
|
+
"type": "string"
|
|
624
|
+
}
|
|
625
|
+
},
|
|
626
|
+
"required": [
|
|
627
|
+
"found"
|
|
628
|
+
]
|
|
629
|
+
},
|
|
616
630
|
"error": {
|
|
617
631
|
"type": "string"
|
|
618
632
|
}
|
|
@@ -807,6 +821,13 @@
|
|
|
807
821
|
"items": {
|
|
808
822
|
"type": "string"
|
|
809
823
|
}
|
|
824
|
+
},
|
|
825
|
+
"sandbox": {
|
|
826
|
+
"type": "boolean"
|
|
827
|
+
},
|
|
828
|
+
"concurrency": {
|
|
829
|
+
"type": "integer",
|
|
830
|
+
"minimum": 1
|
|
810
831
|
}
|
|
811
832
|
},
|
|
812
833
|
"required": [
|
|
@@ -590,6 +590,20 @@
|
|
|
590
590
|
"afterRejectComplete": {
|
|
591
591
|
"type": "boolean"
|
|
592
592
|
},
|
|
593
|
+
"settingsControl": {
|
|
594
|
+
"type": "object",
|
|
595
|
+
"properties": {
|
|
596
|
+
"found": {
|
|
597
|
+
"type": "boolean"
|
|
598
|
+
},
|
|
599
|
+
"label": {
|
|
600
|
+
"type": "string"
|
|
601
|
+
}
|
|
602
|
+
},
|
|
603
|
+
"required": [
|
|
604
|
+
"found"
|
|
605
|
+
]
|
|
606
|
+
},
|
|
593
607
|
"error": {
|
|
594
608
|
"type": "string"
|
|
595
609
|
}
|
|
@@ -784,6 +798,13 @@
|
|
|
784
798
|
"items": {
|
|
785
799
|
"type": "string"
|
|
786
800
|
}
|
|
801
|
+
},
|
|
802
|
+
"sandbox": {
|
|
803
|
+
"type": "boolean"
|
|
804
|
+
},
|
|
805
|
+
"concurrency": {
|
|
806
|
+
"type": "integer",
|
|
807
|
+
"minimum": 1
|
|
787
808
|
}
|
|
788
809
|
},
|
|
789
810
|
"required": [
|