@duckduckgo/autoconsent 4.0.0 → 4.1.1

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.
Files changed (92) hide show
  1. package/.github/ISSUE_TEMPLATE/broken-site-issue.md +29 -0
  2. package/CHANGELOG.md +39 -0
  3. package/Jenkinsfile +2 -2
  4. package/api.md +10 -1
  5. package/dist/addon-firefox/background.bundle.js +312 -1
  6. package/dist/addon-firefox/content.bundle.js +1912 -1
  7. package/dist/addon-firefox/manifest.json +1 -1
  8. package/dist/addon-firefox/rules.json +174 -38
  9. package/dist/addon-mv3/background.bundle.js +312 -1
  10. package/dist/addon-mv3/content.bundle.js +1912 -1
  11. package/dist/addon-mv3/devtools/background.html +10 -0
  12. package/dist/addon-mv3/devtools/bulma.min.css +1 -0
  13. package/dist/addon-mv3/devtools/loader.js +2 -0
  14. package/dist/addon-mv3/devtools/panel.html +88 -0
  15. package/dist/addon-mv3/devtools/panel.js +148 -0
  16. package/dist/addon-mv3/devtools/panel.ts +145 -0
  17. package/dist/addon-mv3/manifest.json +5 -3
  18. package/dist/addon-mv3/popup.bundle.js +173 -1
  19. package/dist/addon-mv3/popup.html +14 -0
  20. package/dist/addon-mv3/rules.json +174 -38
  21. package/dist/autoconsent.cjs.js +1 -1
  22. package/dist/autoconsent.esm.js +1 -1
  23. package/dist/autoconsent.playwright.js +1 -1
  24. package/lib/cmps/airbnb.ts +4 -0
  25. package/lib/cmps/base.ts +8 -0
  26. package/lib/cmps/consentmanager.ts +4 -0
  27. package/lib/cmps/consentomatic.ts +1 -0
  28. package/lib/cmps/conversant.ts +4 -0
  29. package/lib/cmps/cookiebot.ts +4 -0
  30. package/lib/cmps/evidon.ts +4 -0
  31. package/lib/cmps/klaro.ts +4 -0
  32. package/lib/cmps/onetrust.ts +4 -0
  33. package/lib/cmps/sourcepoint-frame.ts +4 -0
  34. package/lib/cmps/tiktok.ts +4 -0
  35. package/lib/cmps/trustarc-frame.ts +4 -0
  36. package/lib/cmps/trustarc-top.ts +4 -0
  37. package/lib/cmps/uniconsent.ts +4 -0
  38. package/lib/eval-handler.ts +2 -6
  39. package/lib/messages.ts +44 -13
  40. package/lib/random.ts +6 -0
  41. package/lib/rules.ts +2 -1
  42. package/lib/types.ts +27 -0
  43. package/lib/web.ts +127 -82
  44. package/package.json +4 -3
  45. package/playwright/runner.ts +1 -0
  46. package/rollup.config.js +18 -5
  47. package/rules/autoconsent/ausopen.json +2 -2
  48. package/rules/autoconsent/baden-wuerttemberg-de.json +1 -0
  49. package/rules/autoconsent/cc-banner.json +1 -0
  50. package/rules/autoconsent/complianz-notice.json +1 -0
  51. package/rules/autoconsent/cookie-notice.json +2 -1
  52. package/rules/autoconsent/dsgvo.json +1 -0
  53. package/rules/autoconsent/eu-cookie-compliance.json +1 -1
  54. package/rules/autoconsent/eu-cookie-law.json +1 -0
  55. package/rules/autoconsent/ezoic.json +1 -0
  56. package/rules/autoconsent/generic-cosmetic.json +9 -0
  57. package/rules/autoconsent/indeed-com.json +9 -0
  58. package/rules/autoconsent/jquery-cookiebar.json +1 -0
  59. package/rules/autoconsent/marksandspencer.json +2 -2
  60. package/rules/autoconsent/notice-cookie.json +1 -0
  61. package/rules/autoconsent/osano.json +1 -0
  62. package/rules/autoconsent/pornhub.json +12 -0
  63. package/rules/autoconsent/testcmp-cosmetic.json +18 -0
  64. package/rules/autoconsent/uk-cookie-consent.json +1 -0
  65. package/rules/autoconsent/xnxx-com.json +9 -0
  66. package/rules/rules.json +174 -38
  67. package/tests/borlabs.spec.ts +1 -1
  68. package/tests/complianz-optin.spec.ts +4 -4
  69. package/tests/cookie-notice.spec.ts +3 -1
  70. package/tests/cookiebot.spec.ts +0 -4
  71. package/tests/cookieinformation.spec.ts +0 -1
  72. package/tests/dsgvo.spec.ts +4 -1
  73. package/tests/evidon.spec.ts +2 -4
  74. package/tests/ezoic.spec.ts +0 -1
  75. package/tests/fundingchoices.spec.ts +0 -1
  76. package/tests/generic-cosmetic.spec.ts +11 -0
  77. package/tests/indeed.spec.ts +7 -0
  78. package/tests/moove.spec.ts +0 -6
  79. package/tests/pornhub.spec.ts +7 -0
  80. package/tests/pubtech.spec.ts +0 -1
  81. package/tests/reddit.spec.ts +1 -1
  82. package/tests/sibbo.spec.ts +0 -1
  83. package/tests/sirdata.spec.ts +0 -1
  84. package/tests/testcmp-banner.spec.ts +5 -0
  85. package/tests/trustarc.spec.ts +0 -2
  86. package/tests/uniconsent.spec.ts +1 -1
  87. package/tests/usercentrics-api.spec.ts +1 -0
  88. package/tests/usercentrics-button.spec.ts +0 -1
  89. package/tests/xnxx.spec.ts +8 -0
  90. package/tsconfig.json +2 -1
  91. package/rules/autoconsent/motor-talk-de.json +0 -24
  92. package/tests/motor-talk.spec.ts +0 -7
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@duckduckgo/autoconsent",
3
- "version": "4.0.0",
3
+ "version": "4.1.1",
4
4
  "description": "",
5
5
  "main": "dist/autoconsent.cjs.js",
6
6
  "module": "dist/autoconsent.esm.js",
@@ -29,14 +29,15 @@
29
29
  "license": "MPL-2.0",
30
30
  "devDependencies": {
31
31
  "@playwright/test": "^1.17.1",
32
- "@rollup/plugin-json": "^5.0.2",
32
+ "@rollup/plugin-json": "^6.0.0",
33
33
  "@rollup/plugin-typescript": "^10.0.1",
34
34
  "@types/chai": "^4.3.1",
35
- "@types/chrome": "^0.0.204",
35
+ "@types/chrome": "^0.0.206",
36
36
  "@types/mocha": "^10.0.1",
37
37
  "@typescript-eslint/eslint-plugin": "^5.42.1",
38
38
  "@typescript-eslint/parser": "^5.42.1",
39
39
  "auto": "^10.37.6",
40
+ "bulma": "^0.9.4",
40
41
  "chai": "^4.2.0",
41
42
  "eslint": "^8.27.0",
42
43
  "eslint-plugin-json": "^3.1.0",
@@ -88,6 +88,7 @@ export function generateTest(
88
88
  disabledCmps: [],
89
89
  enablePrehide: true,
90
90
  detectRetries: 20,
91
+ enableCosmeticRules: true,
91
92
  })} })`);
92
93
  break;
93
94
  }
package/rollup.config.js CHANGED
@@ -40,15 +40,17 @@ export default [{
40
40
  }],
41
41
  plugins: [
42
42
  typescript(),
43
- terser(),
44
43
  copy({
45
44
  targets: [
46
45
  {
47
- src: ['./addon/icons', './rules/rules.json'],
46
+ src: [
47
+ './addon/icons',
48
+ './rules/rules.json'
49
+ ],
48
50
  dest: ['./dist/addon-firefox/', './dist/addon-mv3/']
49
51
  },
50
52
  {
51
- src: ['./addon/popup.html'],
53
+ src: ['./addon/popup.html', './addon/devtools'],
52
54
  dest: ['./dist/addon-mv3/']
53
55
  },
54
56
  {
@@ -61,6 +63,10 @@ export default [{
61
63
  dest: './dist/addon-firefox',
62
64
  rename: 'manifest.json',
63
65
  },
66
+ {
67
+ src: './node_modules/bulma/css/bulma.min.css',
68
+ dest: './dist/addon-mv3/devtools/'
69
+ }
64
70
  ]
65
71
  })
66
72
  ]
@@ -75,7 +81,6 @@ export default [{
75
81
  }],
76
82
  plugins: [
77
83
  typescript(),
78
- terser(),
79
84
  ],
80
85
  }, {
81
86
  input: './addon/popup.ts',
@@ -85,6 +90,14 @@ export default [{
85
90
  }],
86
91
  plugins: [
87
92
  typescript(),
88
- terser(),
93
+ ],
94
+ }, {
95
+ input: './addon/devtools/panel.ts',
96
+ output: [{
97
+ file: './dist/addon-mv3/devtools/panel.js',
98
+ format: 'iife',
99
+ }],
100
+ plugins: [
101
+ typescript(),
89
102
  ],
90
103
  }];
@@ -1,8 +1,8 @@
1
1
  {
2
2
  "name": "ausopen.com",
3
- "isHidingRule": true,
3
+ "cosmetic": true,
4
4
  "detectCmp": [{ "exists": ".gdpr-popup__message" }],
5
5
  "detectPopup": [{ "visible": ".gdpr-popup__message" }],
6
6
  "optOut": [{ "hide": [".gdpr-popup__message"]}],
7
- "optIn": [{ "click": [".gdpr-popup__message button"]}]
7
+ "optIn": [{ "click": ".gdpr-popup__message button"}]
8
8
  }
@@ -1,6 +1,7 @@
1
1
  {
2
2
  "name": "baden-wuerttemberg.de",
3
3
  "prehideSelectors": [".cookie-alert.t-dark"],
4
+ "cosmetic": true,
4
5
  "detectCmp": [{ "exists": ".cookie-alert.t-dark" }],
5
6
  "detectPopup": [{ "visible": ".cookie-alert.t-dark" }],
6
7
  "optIn": [
@@ -1,5 +1,6 @@
1
1
  {
2
2
  "name": "cc_banner",
3
+ "cosmetic": true,
3
4
  "prehideSelectors": [".cc_banner-wrapper"],
4
5
  "detectCmp": [{ "exists": ".cc_banner-wrapper" }],
5
6
  "detectPopup": [{ "visible": ".cc_banner" }],
@@ -1,6 +1,7 @@
1
1
  {
2
2
  "name": "Complianz notice",
3
3
  "prehideSelectors": [".cc-type-info[aria-describedby=\"cookieconsent:desc\"]"],
4
+ "cosmetic": true,
4
5
  "detectCmp": [{ "exists": ".cc-type-info[aria-describedby=\"cookieconsent:desc\"]" }],
5
6
  "detectPopup": [{ "visible": ".cc-type-info[aria-describedby=\"cookieconsent:desc\"]" }],
6
7
  "optIn": [
@@ -1,10 +1,11 @@
1
1
  {
2
2
  "name": "cookie-notice",
3
3
  "prehideSelectors": ["#cookie-notice"],
4
+ "cosmetic": true,
4
5
  "detectCmp": [
5
6
  { "visible": "#cookie-notice .cookie-notice-container" }
6
7
  ],
7
8
  "detectPopup": [{ "visible": "#cookie-notice" }],
8
- "optIn": [{ "click": ["#cn-accept-cookie"] }],
9
+ "optIn": [{ "click": "#cn-accept-cookie" }],
9
10
  "optOut": [{ "hide": ["#cookie-notice"] }]
10
11
  }
@@ -2,6 +2,7 @@
2
2
  "name": "WP DSGVO Tools",
3
3
  "link": "https://wordpress.org/plugins/shapepress-dsgvo/",
4
4
  "prehideSelectors": [".sp-dsgvo"],
5
+ "cosmetic": true,
5
6
  "detectCmp": [{ "exists": ".sp-dsgvo.sp-dsgvo-popup-overlay" }],
6
7
  "detectPopup": [{ "visible": ".sp-dsgvo.sp-dsgvo-popup-overlay", "check": "any" }],
7
8
  "optIn": [
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "eu-cookie-compliance-banner",
3
3
  "detectCmp": [{ "exists": ".eu-cookie-compliance-banner-info" }],
4
- "detectPopup": [{ "visible": ".eu-cookie-compliance-banner-info" }],
4
+ "detectPopup": [{ "exists": ".eu-cookie-compliance-popup-open" }],
5
5
  "optIn": [{ "click": ".agree-button" }],
6
6
  "optOut": [
7
7
  { "click": ".decline-button,.eu-cookie-compliance-save-preferences-button", "optional": true },
@@ -1,6 +1,7 @@
1
1
  {
2
2
  "name": "EU Cookie Law",
3
3
  "prehideSelectors": [".pea_cook_wrapper,.pea_cook_more_info_popover"],
4
+ "cosmetic": true,
4
5
  "detectCmp": [{ "exists": ".pea_cook_wrapper" }],
5
6
  "detectPopup": [
6
7
  { "wait": 500 },
@@ -8,6 +8,7 @@
8
8
  { "eval": "ezCMP.handleAcceptAllClick()", "optional": true }
9
9
  ],
10
10
  "optOut": [
11
+ { "wait": 500 },
11
12
  { "click": "#ez-manage-settings" },
12
13
  { "waitFor": "#ez-cookie-dialog input[type=checkbox]" },
13
14
  { "click": "#ez-cookie-dialog input[type=checkbox][checked]", "all": true },
@@ -0,0 +1,9 @@
1
+ {
2
+ "name": "generic-cosmetic",
3
+ "cosmetic": true,
4
+ "prehideSelectors": ["#js-cookie-banner,.js-cookie-banner,.cookie-banner,#cookie-banner"],
5
+ "detectCmp": [{ "exists": "#js-cookie-banner,.js-cookie-banner,.cookie-banner,#cookie-banner" }],
6
+ "detectPopup": [{ "visible": "#js-cookie-banner,.js-cookie-banner,.cookie-banner,#cookie-banner" }],
7
+ "optIn": [],
8
+ "optOut": [{ "hide": ["#js-cookie-banner,.js-cookie-banner,.cookie-banner,#cookie-banner"] }]
9
+ }
@@ -0,0 +1,9 @@
1
+ {
2
+ "name": "indeed.com",
3
+ "cosmetic": true,
4
+ "prehideSelectors": ["#CookiePrivacyNotice"],
5
+ "detectCmp": [{ "exists": "#CookiePrivacyNotice" }],
6
+ "detectPopup": [{ "visible": "#CookiePrivacyNotice" }],
7
+ "optIn": [{ "click": "#CookiePrivacyNotice button[data-gnav-element-name=CookiePrivacyNoticeOk]" }],
8
+ "optOut": [{ "hide": ["#CookiePrivacyNotice"] }]
9
+ }
@@ -2,6 +2,7 @@
2
2
  "name": "jquery.cookieBar",
3
3
  "comment": "https://github.com/kovarp/jquery.cookieBar",
4
4
  "prehideSelectors": [".cookie-bar"],
5
+ "cosmetic": true,
5
6
  "detectCmp": [{ "exists": ".cookie-bar .cookie-bar__message,.cookie-bar .cookie-bar__buttons" }],
6
7
  "detectPopup": [{
7
8
  "visible": ".cookie-bar .cookie-bar__message,.cookie-bar .cookie-bar__buttons",
@@ -1,8 +1,8 @@
1
1
  {
2
2
  "name": "marksandspencer.com",
3
- "isHidingRule": true,
3
+ "cosmetic": true,
4
4
  "detectCmp": [{ "exists": ".navigation-cookiebbanner" }],
5
5
  "detectPopup": [{ "visible": ".navigation-cookiebbanner" }],
6
6
  "optOut": [{ "hide": [".navigation-cookiebbanner"]}],
7
- "optIn": [{ "click": [".navigation-cookiebbanner__submit"]}]
7
+ "optIn": [{ "click": ".navigation-cookiebbanner__submit"}]
8
8
  }
@@ -1,6 +1,7 @@
1
1
  {
2
2
  "name": "notice-cookie",
3
3
  "prehideSelectors": [".button--notice"],
4
+ "cosmetic": true,
4
5
  "detectCmp": [{ "exists": ".notice--cookie" }],
5
6
  "detectPopup": [{ "visible": ".notice--cookie" }],
6
7
  "optIn": [{ "click": ".button--notice" }],
@@ -1,6 +1,7 @@
1
1
  {
2
2
  "name": "osano",
3
3
  "prehideSelectors": [".osano-cm-window"],
4
+ "cosmetic": true,
4
5
  "detectCmp": [{ "exists": ".osano-cm-window" }],
5
6
  "detectPopup": [{ "visible": ".osano-cm-dialog" }],
6
7
  "optIn": [{
@@ -0,0 +1,12 @@
1
+ {
2
+ "name": "pornhub.com",
3
+ "runContext": {
4
+ "urlPattern": "^https://(www\\.)?pornhub\\.com/"
5
+ },
6
+ "cosmetic": true,
7
+ "prehideSelectors": [".cookiesBanner"],
8
+ "detectCmp": [{ "exists": ".cookiesBanner" }],
9
+ "detectPopup": [{ "visible": ".cookiesBanner" }],
10
+ "optIn": [{ "click": ".cookiesBanner .okButton" }],
11
+ "optOut": [{ "hide": [".cookiesBanner"] }]
12
+ }
@@ -0,0 +1,18 @@
1
+ {
2
+ "name": "Test page cosmetic CMP",
3
+ "cosmetic": true,
4
+ "prehideSelectors": ["#privacy-test-page-cmp-test-prehide"],
5
+ "detectCmp": [{ "exists": "#privacy-test-page-cmp-test-banner" }],
6
+ "detectPopup": [{ "visible": "#privacy-test-page-cmp-test-banner" }],
7
+ "optIn": [
8
+ { "waitFor": "#accept-all" },
9
+ { "click": "#accept-all" }
10
+ ],
11
+ "optOut": [
12
+ { "hide": ["#privacy-test-page-cmp-test-banner"] }
13
+ ],
14
+ "test": [
15
+ { "wait": 500 },
16
+ { "eval": "window.results.results[0] === 'banner_hidden'" }
17
+ ]
18
+ }
@@ -1,6 +1,7 @@
1
1
  {
2
2
  "name": "UK Cookie Consent",
3
3
  "prehideSelectors": ["#catapult-cookie-bar"],
4
+ "cosmetic": true,
4
5
  "detectCmp": [{ "exists": "#catapult-cookie-bar" }],
5
6
  "detectPopup": [{ "exists": ".has-cookie-bar #catapult-cookie-bar" }],
6
7
  "optIn": [
@@ -0,0 +1,9 @@
1
+ {
2
+ "name": "xnxx-com",
3
+ "cosmetic": true,
4
+ "prehideSelectors": ["#cookies-use-alert"],
5
+ "detectCmp": [{ "exists": "#cookies-use-alert" }],
6
+ "detectPopup": [{ "visible": "#cookies-use-alert" }],
7
+ "optIn": [{ "click": "#cookies-use-alert .close" }],
8
+ "optOut": [{ "hide": ["#cookies-use-alert"] }]
9
+ }
package/rules/rules.json CHANGED
@@ -169,7 +169,7 @@
169
169
  },
170
170
  {
171
171
  "name": "ausopen.com",
172
- "isHidingRule": true,
172
+ "cosmetic": true,
173
173
  "detectCmp": [
174
174
  {
175
175
  "exists": ".gdpr-popup__message"
@@ -189,9 +189,7 @@
189
189
  ],
190
190
  "optIn": [
191
191
  {
192
- "click": [
193
- ".gdpr-popup__message button"
194
- ]
192
+ "click": ".gdpr-popup__message button"
195
193
  }
196
194
  ]
197
195
  },
@@ -277,6 +275,7 @@
277
275
  "prehideSelectors": [
278
276
  ".cookie-alert.t-dark"
279
277
  ],
278
+ "cosmetic": true,
280
279
  "detectCmp": [
281
280
  {
282
281
  "exists": ".cookie-alert.t-dark"
@@ -419,6 +418,7 @@
419
418
  },
420
419
  {
421
420
  "name": "cc_banner",
421
+ "cosmetic": true,
422
422
  "prehideSelectors": [
423
423
  ".cc_banner-wrapper"
424
424
  ],
@@ -570,6 +570,7 @@
570
570
  "prehideSelectors": [
571
571
  ".cc-type-info[aria-describedby=\"cookieconsent:desc\"]"
572
572
  ],
573
+ "cosmetic": true,
573
574
  "detectCmp": [
574
575
  {
575
576
  "exists": ".cc-type-info[aria-describedby=\"cookieconsent:desc\"]"
@@ -693,6 +694,7 @@
693
694
  "prehideSelectors": [
694
695
  "#cookie-notice"
695
696
  ],
697
+ "cosmetic": true,
696
698
  "detectCmp": [
697
699
  {
698
700
  "visible": "#cookie-notice .cookie-notice-container"
@@ -705,9 +707,7 @@
705
707
  ],
706
708
  "optIn": [
707
709
  {
708
- "click": [
709
- "#cn-accept-cookie"
710
- ]
710
+ "click": "#cn-accept-cookie"
711
711
  }
712
712
  ],
713
713
  "optOut": [
@@ -957,6 +957,7 @@
957
957
  "prehideSelectors": [
958
958
  ".sp-dsgvo"
959
959
  ],
960
+ "cosmetic": true,
960
961
  "detectCmp": [
961
962
  {
962
963
  "exists": ".sp-dsgvo.sp-dsgvo-popup-overlay"
@@ -1070,7 +1071,7 @@
1070
1071
  ],
1071
1072
  "detectPopup": [
1072
1073
  {
1073
- "visible": ".eu-cookie-compliance-banner-info"
1074
+ "exists": ".eu-cookie-compliance-popup-open"
1074
1075
  }
1075
1076
  ],
1076
1077
  "optIn": [
@@ -1101,6 +1102,7 @@
1101
1102
  "prehideSelectors": [
1102
1103
  ".pea_cook_wrapper,.pea_cook_more_info_popover"
1103
1104
  ],
1105
+ "cosmetic": true,
1104
1106
  "detectCmp": [
1105
1107
  {
1106
1108
  "exists": ".pea_cook_wrapper"
@@ -1158,6 +1160,9 @@
1158
1160
  }
1159
1161
  ],
1160
1162
  "optOut": [
1163
+ {
1164
+ "wait": 500
1165
+ },
1161
1166
  {
1162
1167
  "click": "#ez-manage-settings"
1163
1168
  },
@@ -1250,6 +1255,31 @@
1250
1255
  }
1251
1256
  ]
1252
1257
  },
1258
+ {
1259
+ "name": "generic-cosmetic",
1260
+ "cosmetic": true,
1261
+ "prehideSelectors": [
1262
+ "#js-cookie-banner,.js-cookie-banner,.cookie-banner,#cookie-banner"
1263
+ ],
1264
+ "detectCmp": [
1265
+ {
1266
+ "exists": "#js-cookie-banner,.js-cookie-banner,.cookie-banner,#cookie-banner"
1267
+ }
1268
+ ],
1269
+ "detectPopup": [
1270
+ {
1271
+ "visible": "#js-cookie-banner,.js-cookie-banner,.cookie-banner,#cookie-banner"
1272
+ }
1273
+ ],
1274
+ "optIn": [],
1275
+ "optOut": [
1276
+ {
1277
+ "hide": [
1278
+ "#js-cookie-banner,.js-cookie-banner,.cookie-banner,#cookie-banner"
1279
+ ]
1280
+ }
1281
+ ]
1282
+ },
1253
1283
  {
1254
1284
  "name": "google-consent-standalone",
1255
1285
  "prehideSelectors": [],
@@ -1409,6 +1439,35 @@
1409
1439
  }
1410
1440
  ]
1411
1441
  },
1442
+ {
1443
+ "name": "indeed.com",
1444
+ "cosmetic": true,
1445
+ "prehideSelectors": [
1446
+ "#CookiePrivacyNotice"
1447
+ ],
1448
+ "detectCmp": [
1449
+ {
1450
+ "exists": "#CookiePrivacyNotice"
1451
+ }
1452
+ ],
1453
+ "detectPopup": [
1454
+ {
1455
+ "visible": "#CookiePrivacyNotice"
1456
+ }
1457
+ ],
1458
+ "optIn": [
1459
+ {
1460
+ "click": "#CookiePrivacyNotice button[data-gnav-element-name=CookiePrivacyNoticeOk]"
1461
+ }
1462
+ ],
1463
+ "optOut": [
1464
+ {
1465
+ "hide": [
1466
+ "#CookiePrivacyNotice"
1467
+ ]
1468
+ }
1469
+ ]
1470
+ },
1412
1471
  {
1413
1472
  "name": "ionos.de",
1414
1473
  "prehideSelectors": [
@@ -1519,6 +1578,7 @@
1519
1578
  "prehideSelectors": [
1520
1579
  ".cookie-bar"
1521
1580
  ],
1581
+ "cosmetic": true,
1522
1582
  "detectCmp": [
1523
1583
  {
1524
1584
  "exists": ".cookie-bar .cookie-bar__message,.cookie-bar .cookie-bar__buttons"
@@ -1598,7 +1658,7 @@
1598
1658
  },
1599
1659
  {
1600
1660
  "name": "marksandspencer.com",
1601
- "isHidingRule": true,
1661
+ "cosmetic": true,
1602
1662
  "detectCmp": [
1603
1663
  {
1604
1664
  "exists": ".navigation-cookiebbanner"
@@ -1618,9 +1678,7 @@
1618
1678
  ],
1619
1679
  "optIn": [
1620
1680
  {
1621
- "click": [
1622
- ".navigation-cookiebbanner__submit"
1623
- ]
1681
+ "click": ".navigation-cookiebbanner__submit"
1624
1682
  }
1625
1683
  ]
1626
1684
  },
@@ -1857,32 +1915,6 @@
1857
1915
  }
1858
1916
  ]
1859
1917
  },
1860
- {
1861
- "name": "motor-talk.de",
1862
- "prehideSelectors": [
1863
- ".mt-cc-bnnr__wrapper"
1864
- ],
1865
- "detectCmp": [
1866
- {
1867
- "exists": ".mt-cc-bnnr"
1868
- }
1869
- ],
1870
- "detectPopup": [
1871
- {
1872
- "visible": ".mt-cc-bnnr__wrapper"
1873
- }
1874
- ],
1875
- "optIn": [
1876
- {
1877
- "click": ".mt-cc-bnnr__button-main"
1878
- }
1879
- ],
1880
- "optOut": [
1881
- {
1882
- "click": ".mt-cc-bnnr__decline-link"
1883
- }
1884
- ]
1885
- },
1886
1918
  {
1887
1919
  "name": "national-lottery.co.uk",
1888
1920
  "detectCmp": [
@@ -1973,6 +2005,7 @@
1973
2005
  "prehideSelectors": [
1974
2006
  ".button--notice"
1975
2007
  ],
2008
+ "cosmetic": true,
1976
2009
  "detectCmp": [
1977
2010
  {
1978
2011
  "exists": ".notice--cookie"
@@ -2027,6 +2060,7 @@
2027
2060
  "prehideSelectors": [
2028
2061
  ".osano-cm-window"
2029
2062
  ],
2063
+ "cosmetic": true,
2030
2064
  "detectCmp": [
2031
2065
  {
2032
2066
  "exists": ".osano-cm-window"
@@ -2114,6 +2148,38 @@
2114
2148
  }
2115
2149
  ]
2116
2150
  },
2151
+ {
2152
+ "name": "pornhub.com",
2153
+ "runContext": {
2154
+ "urlPattern": "^https://(www\\.)?pornhub\\.com/"
2155
+ },
2156
+ "cosmetic": true,
2157
+ "prehideSelectors": [
2158
+ ".cookiesBanner"
2159
+ ],
2160
+ "detectCmp": [
2161
+ {
2162
+ "exists": ".cookiesBanner"
2163
+ }
2164
+ ],
2165
+ "detectPopup": [
2166
+ {
2167
+ "visible": ".cookiesBanner"
2168
+ }
2169
+ ],
2170
+ "optIn": [
2171
+ {
2172
+ "click": ".cookiesBanner .okButton"
2173
+ }
2174
+ ],
2175
+ "optOut": [
2176
+ {
2177
+ "hide": [
2178
+ ".cookiesBanner"
2179
+ ]
2180
+ }
2181
+ ]
2182
+ },
2117
2183
  {
2118
2184
  "name": "PrimeBox CookieBar",
2119
2185
  "prehideSelectors": [
@@ -2621,6 +2687,46 @@
2621
2687
  }
2622
2688
  ]
2623
2689
  },
2690
+ {
2691
+ "name": "Test page cosmetic CMP",
2692
+ "cosmetic": true,
2693
+ "prehideSelectors": [
2694
+ "#privacy-test-page-cmp-test-prehide"
2695
+ ],
2696
+ "detectCmp": [
2697
+ {
2698
+ "exists": "#privacy-test-page-cmp-test-banner"
2699
+ }
2700
+ ],
2701
+ "detectPopup": [
2702
+ {
2703
+ "visible": "#privacy-test-page-cmp-test-banner"
2704
+ }
2705
+ ],
2706
+ "optIn": [
2707
+ {
2708
+ "waitFor": "#accept-all"
2709
+ },
2710
+ {
2711
+ "click": "#accept-all"
2712
+ }
2713
+ ],
2714
+ "optOut": [
2715
+ {
2716
+ "hide": [
2717
+ "#privacy-test-page-cmp-test-banner"
2718
+ ]
2719
+ }
2720
+ ],
2721
+ "test": [
2722
+ {
2723
+ "wait": 500
2724
+ },
2725
+ {
2726
+ "eval": "window.results.results[0] === 'banner_hidden'"
2727
+ }
2728
+ ]
2729
+ },
2624
2730
  {
2625
2731
  "name": "Test page CMP",
2626
2732
  "prehideSelectors": [
@@ -2749,6 +2855,7 @@
2749
2855
  "prehideSelectors": [
2750
2856
  "#catapult-cookie-bar"
2751
2857
  ],
2858
+ "cosmetic": true,
2752
2859
  "detectCmp": [
2753
2860
  {
2754
2861
  "exists": "#catapult-cookie-bar"
@@ -3025,6 +3132,35 @@
3025
3132
  }
3026
3133
  ]
3027
3134
  },
3135
+ {
3136
+ "name": "xnxx-com",
3137
+ "cosmetic": true,
3138
+ "prehideSelectors": [
3139
+ "#cookies-use-alert"
3140
+ ],
3141
+ "detectCmp": [
3142
+ {
3143
+ "exists": "#cookies-use-alert"
3144
+ }
3145
+ ],
3146
+ "detectPopup": [
3147
+ {
3148
+ "visible": "#cookies-use-alert"
3149
+ }
3150
+ ],
3151
+ "optIn": [
3152
+ {
3153
+ "click": "#cookies-use-alert .close"
3154
+ }
3155
+ ],
3156
+ "optOut": [
3157
+ {
3158
+ "hide": [
3159
+ "#cookies-use-alert"
3160
+ ]
3161
+ }
3162
+ ]
3163
+ },
3028
3164
  {
3029
3165
  "name": "youtube-desktop",
3030
3166
  "prehideSelectors": [
@@ -1,7 +1,7 @@
1
1
  import generateCMPTests from "../playwright/runner";
2
2
 
3
3
  generateCMPTests('borlabs', [
4
- 'https://www.experto.de/', 'https://www.kesselheld.de/'
4
+ 'https://www.kesselheld.de/'
5
5
  ], {
6
6
  skipRegions: ["US"]
7
7
  });
@@ -1,6 +1,6 @@
1
1
  import generateCMPTests from "../playwright/runner";
2
2
 
3
- generateCMPTests('Complianz optin', [
4
- 'https://stetson.com/',
5
- ], {
6
- });
3
+ // generateCMPTests('Complianz optin', [
4
+ // 'https://stetson.com/',
5
+ // ], {
6
+ // });