@duckduckgo/autoconsent 16.56.0 → 16.58.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.
Files changed (82) hide show
  1. package/CHANGELOG.md +57 -0
  2. package/dist/addon-firefox/compact-rules.json +1 -1
  3. package/dist/addon-firefox/manifest.json +1 -1
  4. package/dist/addon-firefox/rule-index.json +1 -1
  5. package/dist/addon-firefox/rules.json +1 -1
  6. package/dist/addon-mv3/compact-rules.json +1 -1
  7. package/dist/addon-mv3/manifest.json +1 -1
  8. package/dist/addon-mv3/rule-index.json +1 -1
  9. package/dist/addon-mv3/rules.json +1 -1
  10. package/dist/autoconsent.standalone.js +1 -1
  11. package/package.json +1 -1
  12. package/rules/autoconsent/abebooks.json +13 -0
  13. package/rules/autoconsent/aemet.json +35 -0
  14. package/rules/autoconsent/arto.json +30 -0
  15. package/rules/autoconsent/bakeca.json +13 -0
  16. package/rules/autoconsent/bleau-cookiecontrol.json +10 -0
  17. package/rules/autoconsent/bundesarchiv-cookiebanner.json +21 -0
  18. package/rules/autoconsent/chomikuj.json +13 -0
  19. package/rules/autoconsent/cookieconsent2.json +1 -1
  20. package/rules/autoconsent/cookieyes-legacy.json +24 -0
  21. package/rules/autoconsent/costco.json +5 -2
  22. package/rules/autoconsent/daikin.json +10 -0
  23. package/rules/autoconsent/django-gdpr-cookie-consent.json +23 -0
  24. package/rules/autoconsent/educamadrid.json +37 -0
  25. package/rules/autoconsent/elektro-material-ch.json +13 -0
  26. package/rules/autoconsent/fixpart.json +30 -0
  27. package/rules/autoconsent/ford-dse.json +12 -0
  28. package/rules/autoconsent/gobiernodecanarias.json +46 -0
  29. package/rules/autoconsent/groupama.fr.json +34 -0
  30. package/rules/autoconsent/kolibri-cookie-widget.json +12 -0
  31. package/rules/autoconsent/librus.json +21 -0
  32. package/rules/autoconsent/liferay-cookies-banner.json +34 -0
  33. package/rules/autoconsent/mega-io.json +24 -0
  34. package/rules/autoconsent/profiler-dk.json +29 -0
  35. package/rules/autoconsent/pubtech.json +13 -1
  36. package/rules/autoconsent/rabobank.json +62 -0
  37. package/rules/autoconsent/rcs-cpmt.json +28 -0
  38. package/rules/autoconsent/sc-cookie-banner.json +29 -0
  39. package/rules/autoconsent/soteshop.json +29 -0
  40. package/rules/autoconsent/stellantis-psa.json +50 -0
  41. package/rules/autoconsent/tealium.json +6 -4
  42. package/rules/autoconsent/tinder.json +23 -0
  43. package/rules/autoconsent/vd-ch.json +34 -0
  44. package/rules/autoconsent/warning-cookie-notice.json +9 -0
  45. package/rules/autoconsent/yle-consent-sdk.json +30 -0
  46. package/rules/compact-rules.json +1 -1
  47. package/rules/rule-index.json +1 -1
  48. package/rules/rules.json +1 -1
  49. package/tests/abebooks.spec.ts +10 -0
  50. package/tests/aemet.spec.ts +3 -0
  51. package/tests/arto.spec.ts +3 -0
  52. package/tests/bakeca.spec.ts +3 -0
  53. package/tests/bleau-cookiecontrol.spec.ts +3 -0
  54. package/tests/bundesarchiv-cookiebanner.spec.ts +7 -0
  55. package/tests/chomikuj.spec.ts +3 -0
  56. package/tests/cookieconsent2.spec.ts +2 -2
  57. package/tests/cookieyes-legacy.spec.ts +11 -0
  58. package/tests/costco.spec.ts +1 -1
  59. package/tests/daikin.spec.ts +3 -0
  60. package/tests/django-gdpr-cookie-consent.spec.ts +14 -0
  61. package/tests/educamadrid.spec.ts +7 -0
  62. package/tests/elektro-material-ch.spec.ts +3 -0
  63. package/tests/fixpart.spec.ts +6 -0
  64. package/tests/ford-dse.spec.ts +3 -0
  65. package/tests/gobiernodecanarias.spec.ts +10 -0
  66. package/tests/groupama.fr.spec.ts +3 -0
  67. package/tests/kolibri-cookie-widget.spec.ts +3 -0
  68. package/tests/librus.spec.ts +6 -0
  69. package/tests/liferay-cookies-banner.spec.ts +9 -0
  70. package/tests/mega-io.spec.ts +3 -0
  71. package/tests/profiler-dk.spec.ts +3 -0
  72. package/tests/pubtech.spec.ts +6 -4
  73. package/tests/rabobank.spec.ts +17 -0
  74. package/tests/rcs-cpmt.spec.ts +15 -0
  75. package/tests/sc-cookie-banner.spec.ts +12 -0
  76. package/tests/soteshop.spec.ts +3 -0
  77. package/tests/stellantis-psa.spec.ts +9 -0
  78. package/tests/tealium.spec.ts +6 -0
  79. package/tests/tinder.spec.ts +3 -0
  80. package/tests/vd-ch.spec.ts +3 -0
  81. package/tests/warning-cookie-notice.spec.ts +9 -0
  82. package/tests/yle-consent-sdk.spec.ts +3 -0
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@duckduckgo/autoconsent",
3
- "version": "16.56.0",
3
+ "version": "16.58.0",
4
4
  "description": "",
5
5
  "types": "./dist/types/web.d.ts",
6
6
  "exports": {
@@ -0,0 +1,13 @@
1
+ {
2
+ "name": "abebooks",
3
+ "vendorUrl": "https://www.abebooks.com/",
4
+ "prehideSelectors": ["#abe-gdpr-banner #gdpr-banner-component"],
5
+ "detectCmp": [{ "exists": "#abe-gdpr-banner #gdpr-banner-component-decline-btn" }],
6
+ "detectPopup": [{ "visible": "#gdpr-banner-component" }],
7
+ "optIn": [{ "waitForThenClick": "#gdpr-banner-component-consent-btn" }],
8
+ "optOut": [
9
+ { "waitForThenClick": "#gdpr-banner-component-decline-btn" },
10
+ { "waitForVisible": "#gdpr-banner-component", "check": "none", "timeout": 2000, "optional": true }
11
+ ],
12
+ "test": [{ "cookieContains": "abeconsent=%221%3A1%2C2%3A0%2C3%3A0%2C4%3A0%22" }]
13
+ }
@@ -0,0 +1,35 @@
1
+ {
2
+ "name": "aemet",
3
+ "vendorUrl": "https://www.aemet.es/",
4
+ "cosmetic": true,
5
+ "runContext": {
6
+ "urlPattern": "^https?://(www\\.)?aemet\\.es/"
7
+ },
8
+ "prehideSelectors": ["#popup_cookies"],
9
+ "detectCmp": [
10
+ {
11
+ "exists": "#popup_cookies .boton_cookies"
12
+ }
13
+ ],
14
+ "detectPopup": [
15
+ {
16
+ "visible": "#popup_cookies"
17
+ }
18
+ ],
19
+ "optIn": [
20
+ {
21
+ "waitForThenClick": "#popup_cookies .boton_cookies"
22
+ }
23
+ ],
24
+ "optOut": [
25
+ {
26
+ "hide": "#popup_cookies"
27
+ }
28
+ ],
29
+ "test": [
30
+ {
31
+ "visible": "#popup_cookies",
32
+ "check": "none"
33
+ }
34
+ ]
35
+ }
@@ -0,0 +1,30 @@
1
+ {
2
+ "name": "arto",
3
+ "cosmetic": false,
4
+ "prehideSelectors": [".Dialog:has(.ConsentManager)"],
5
+ "detectCmp": [
6
+ {
7
+ "exists": ".ConsentManager[data-controller~='consent-manager']"
8
+ }
9
+ ],
10
+ "detectPopup": [
11
+ {
12
+ "visible": ".ConsentManager button[data-action*='consent-manager#denyAll']"
13
+ }
14
+ ],
15
+ "optIn": [
16
+ {
17
+ "waitForThenClick": ".ConsentManager button[data-action*='consent-manager#allowAll']"
18
+ }
19
+ ],
20
+ "optOut": [
21
+ {
22
+ "waitForThenClick": ".ConsentManager button[data-action*='consent-manager#denyAll']"
23
+ }
24
+ ],
25
+ "test": [
26
+ {
27
+ "cookieContains": "arto-consent=signature"
28
+ }
29
+ ]
30
+ }
@@ -0,0 +1,13 @@
1
+ {
2
+ "name": "bakeca",
3
+ "vendorUrl": "https://www.bakecaincontrii.com/",
4
+ "runContext": {
5
+ "urlPattern": "^https?://([\\w-]+\\.)?bakecaincontrii\\.com/"
6
+ },
7
+ "prehideSelectors": [],
8
+ "detectCmp": [{ "exists": ".ui-alert.bottom-fixed a[data-href*='cookie-policy']" }],
9
+ "detectPopup": [{ "visible": ".ui-alert.bottom-fixed" }],
10
+ "optIn": [{ "waitForThenClick": ".ui-alert.bottom-fixed .text-center button" }],
11
+ "optOut": [{ "waitForThenClick": ".ui-alert.bottom-fixed button.close" }],
12
+ "test": [{ "waitForVisible": ".ui-alert.bottom-fixed", "check": "none", "timeout": 2000 }]
13
+ }
@@ -0,0 +1,10 @@
1
+ {
2
+ "name": "bleau-cookiecontrol",
3
+ "vendorUrl": "https://bleau.dk/",
4
+ "prehideSelectors": ["#cconsent-modal"],
5
+ "detectCmp": [{ "exists": "#cconsent-modal .ccm__footer .consent-givenone" }],
6
+ "detectPopup": [{ "visible": "#cconsent-modal.ccm--visible .ccm__footer .consent-givenone" }],
7
+ "optIn": [{ "waitForThenClick": "#cconsent-modal .ccm__footer .consent-give" }],
8
+ "optOut": [{ "waitForThenClick": "#cconsent-modal .ccm__footer .consent-givenone" }],
9
+ "test": [{ "waitForVisible": "#cconsent-modal", "check": "none" }, { "cookieContains": "\"wanted\":false" }]
10
+ }
@@ -0,0 +1,21 @@
1
+ {
2
+ "name": "bundesarchiv-cookiebanner",
3
+ "prehideSelectors": [".cookiebanner--tablist", "#cookiebanner[data-cookiebanner]"],
4
+ "detectCmp": [{ "exists": ".cookiebanner [data-consent=\"acceptSelection\"]" }],
5
+ "detectPopup": [{ "visible": ".cookiebanner [data-consent=\"acceptSelection\"]" }],
6
+ "optIn": [
7
+ {
8
+ "if": { "exists": ".cookiebanner [data-consent=\"acceptAll\"]" },
9
+ "then": [{ "waitForThenClick": ".cookiebanner [data-consent=\"acceptAll\"]" }],
10
+ "else": [{ "waitForThenClick": ".cookiebanner [data-consent=\"acceptSelection\"]" }]
11
+ }
12
+ ],
13
+ "optOut": [
14
+ {
15
+ "if": { "exists": ".cookiebanner input[type=\"checkbox\"]:checked:not(:disabled)" },
16
+ "then": [{ "click": ".cookiebanner input[type=\"checkbox\"]:checked:not(:disabled) + label", "all": true }]
17
+ },
18
+ { "waitForThenClick": ".cookiebanner [data-consent=\"acceptSelection\"]" }
19
+ ],
20
+ "test": [{ "waitForVisible": ".cookiebanner [data-consent=\"acceptSelection\"]", "timeout": 2000, "check": "none" }]
21
+ }
@@ -0,0 +1,13 @@
1
+ {
2
+ "name": "chomikuj",
3
+ "vendorUrl": "https://chomikuj.pl/",
4
+ "runContext": {
5
+ "urlPattern": "^https?://(\\w+\\.)?chomikuj\\.pl/"
6
+ },
7
+ "prehideSelectors": [],
8
+ "detectCmp": [{ "exists": ".cookiesInfo .closeCookiesInfo" }],
9
+ "detectPopup": [{ "visible": ".cookiesInfo .closeCookiesInfo" }],
10
+ "optIn": [{ "waitForThenClick": ".cookiesInfo .closeCookiesInfo" }],
11
+ "optOut": [{ "waitForThenClick": ".cookiesInfo .closeCookiesInfo" }],
12
+ "test": [{ "waitForVisible": ".cookiesInfo", "check": "none", "timeout": 2000 }]
13
+ }
@@ -10,7 +10,7 @@
10
10
  ],
11
11
  "detectPopup": [
12
12
  {
13
- "exists": "html.show--consent #cm"
13
+ "exists": "html.show--consent #cm, html.show--settings #s-cnt"
14
14
  },
15
15
  {
16
16
  "exists": "#s-all-bn"
@@ -0,0 +1,24 @@
1
+ {
2
+ "name": "cookieyes-legacy",
3
+ "vendorUrl": "https://www.cookieyes.com/",
4
+ "prehideSelectors": ["#cky-consent.cky-consent-bar"],
5
+ "detectCmp": [{ "exists": "#cky-consent.cky-consent-bar" }],
6
+ "detectPopup": [{ "visible": "#cky-consent.cky-consent-bar" }],
7
+ "optIn": [{ "waitForThenClick": "#cky-consent #cky-btn-accept" }],
8
+ "optOut": [
9
+ {
10
+ "if": { "visible": "#cky-consent #cky-btn-reject" },
11
+ "then": [{ "waitForThenClick": "#cky-consent #cky-btn-reject" }],
12
+ "else": [
13
+ { "waitForThenClick": "#cky-consent #cky-btn-settings" },
14
+ { "waitForVisible": "#cky-btn-custom-accept" },
15
+ { "click": "input[id^=cky-checkbox-category]:checked:not(:disabled)", "all": true, "optional": true },
16
+ { "click": "#cky-btn-custom-accept" }
17
+ ]
18
+ }
19
+ ],
20
+ "test": [
21
+ { "cookieContains": "cky-action=yes" },
22
+ { "any": [{ "cookieContains": "cky-consent=no" }, { "cookieContains": "cookieyes-analytics=no" }] }
23
+ ]
24
+ }
@@ -2,11 +2,14 @@
2
2
  "name": "costco",
3
3
  "vendorUrl": "https://www.costco.ca/",
4
4
  "cosmetic": true,
5
- "comment": "The banner runs on Transcend airgap, whose setConsent() rejects consent changes unless the click event is trusted (isTrusted), so scripted clicks can't save an opt-out.",
5
+ "comment": "The banner runs on Transcend airgap, whose setConsent() rejects consent changes unless the click event is trusted (isTrusted), so scripted clicks can't save an opt-out. Scoped by urlPattern so it takes priority over the generic transcend rule, which matches the empty #transcend-consent-manager host airgap adds on some Costco subdomains.",
6
+ "runContext": {
7
+ "urlPattern": "^https?://([\\w-]+\\.)*costco(businesscentre|businessdelivery)?\\.(ca|com)/"
8
+ },
6
9
  "prehideSelectors": ["#costco-consent-manager [data-testid=\"Popup\"]"],
7
10
  "detectCmp": [
8
11
  {
9
- "exists": "#costco-consent-manager [data-testid=\"Popup\"]"
12
+ "exists": "#costco-consent-manager [data-testid=\"Popup\"], script[src*=\"/consent-ui/costco-consent-manager\"]"
10
13
  }
11
14
  ],
12
15
  "detectPopup": [
@@ -0,0 +1,10 @@
1
+ {
2
+ "name": "daikin",
3
+ "vendorUrl": "https://www.daikin.eu/",
4
+ "prehideSelectors": [".cookie-notice.js-cookie-modal"],
5
+ "detectCmp": [{ "exists": ".cookie-notice.js-cookie-modal .js-accept-minimal-cookies" }],
6
+ "detectPopup": [{ "visible": ".cookie-notice.js-cookie-modal" }],
7
+ "optIn": [{ "waitForThenClick": ".cookie-notice.js-cookie-modal .js-accept-all-cookies" }],
8
+ "optOut": [{ "waitForThenClick": ".cookie-notice.js-cookie-modal .js-accept-minimal-cookies" }],
9
+ "test": [{ "cookieContains": "acceptCookiePolicy-marketing=false" }]
10
+ }
@@ -0,0 +1,23 @@
1
+ {
2
+ "name": "django-gdpr-cookie-consent",
3
+ "prehideSelectors": ["#cc_modal_dialog", "#cc_modal_window"],
4
+ "detectCmp": [{ "exists": "#cc_section_quick_info #cc_accept_all_cookies" }],
5
+ "detectPopup": [{ "visible": "#cc_section_quick_info #cc_accept_all_cookies" }],
6
+ "optIn": [
7
+ { "waitForThenClick": "#cc_accept_all_cookies" },
8
+ { "waitForVisible": "#cc_section_quick_info", "check": "none", "timeout": 10000 }
9
+ ],
10
+ "optOut": [
11
+ {
12
+ "if": { "exists": "#cc_reject_all_cookies" },
13
+ "then": [{ "waitForThenClick": "#cc_reject_all_cookies" }],
14
+ "else": [
15
+ { "waitForThenClick": "#cc_manage_cookies" },
16
+ { "waitForThenClick": "#cc_reject_all" },
17
+ { "click": "#cc_save_preferences" }
18
+ ]
19
+ },
20
+ { "waitForVisible": "#cc_section_quick_info", "check": "none", "timeout": 10000 }
21
+ ],
22
+ "test": [{ "cookieContains": "cookie_consent=" }]
23
+ }
@@ -0,0 +1,37 @@
1
+ {
2
+ "name": "educamadrid",
3
+ "vendorUrl": "https://www.educa2.madrid.org/",
4
+ "prehideSelectors": ["#emCookieWrapper"],
5
+ "detectCmp": [
6
+ {
7
+ "exists": "#emCookieWrapper #emCookieBanner"
8
+ }
9
+ ],
10
+ "detectPopup": [
11
+ {
12
+ "visible": "#emCookieBanner"
13
+ }
14
+ ],
15
+ "optIn": [
16
+ {
17
+ "waitForThenClick": "#emCookieBtnAccept"
18
+ }
19
+ ],
20
+ "optOut": [
21
+ {
22
+ "waitForThenClick": "#emCookieBtnConfigure"
23
+ },
24
+ {
25
+ "waitForThenClick": "#emCookieTool #emCookieBtnRejectAll"
26
+ }
27
+ ],
28
+ "test": [
29
+ {
30
+ "waitFor": "#emCookieFrame",
31
+ "timeout": 3000
32
+ },
33
+ {
34
+ "cookieContains": "EducaMadrid_LSSI_Cookies=0"
35
+ }
36
+ ]
37
+ }
@@ -0,0 +1,13 @@
1
+ {
2
+ "name": "elektro-material-ch",
3
+ "cosmetic": true,
4
+ "vendorUrl": "https://elektro-material.ch/",
5
+ "runContext": {
6
+ "urlPattern": "^https?://(www\\.)?elektro-material\\.ch/"
7
+ },
8
+ "prehideSelectors": [".cookie-bar__wrapper:has(.cookie-bar__message--top)"],
9
+ "detectCmp": [{ "exists": ".cookie-bar__wrapper .cookie-bar__message--top" }],
10
+ "detectPopup": [{ "visible": ".cookie-bar__wrapper .cookie-bar__container" }],
11
+ "optIn": [{ "waitForThenClick": ".cookie-bar__wrapper button.cookie-bar__button" }],
12
+ "optOut": [{ "hide": ".cookie-bar__wrapper:has(.cookie-bar__message--top)" }]
13
+ }
@@ -0,0 +1,30 @@
1
+ {
2
+ "name": "fixpart",
3
+ "vendorUrl": "https://fixpart.nl/",
4
+ "prehideSelectors": [".fp-cookie-modal"],
5
+ "detectCmp": [
6
+ {
7
+ "exists": ".fp-cookie-modal .cookie-essentials"
8
+ }
9
+ ],
10
+ "detectPopup": [
11
+ {
12
+ "visible": ".fp-cookie-modal"
13
+ }
14
+ ],
15
+ "optIn": [
16
+ {
17
+ "waitForThenClick": ".fp-cookie-modal button.cookie-accept"
18
+ }
19
+ ],
20
+ "optOut": [
21
+ {
22
+ "waitForThenClick": ".fp-cookie-modal a.cookie-essentials"
23
+ }
24
+ ],
25
+ "test": [
26
+ {
27
+ "cookieContains": "cookie_consent=essentials"
28
+ }
29
+ ]
30
+ }
@@ -0,0 +1,12 @@
1
+ {
2
+ "name": "ford-dse",
3
+ "prehideSelectors": [".dse-cookie-disclaimer"],
4
+ "detectCmp": [{ "exists": ".dse-cookie-disclaimer .cta-decline-cookies" }],
5
+ "detectPopup": [{ "visible": ".dse-cookie-disclaimer.cookie-visible:not(.cookie-hidden) .cta-decline-cookies" }],
6
+ "optIn": [{ "waitForThenClick": ".dse-cookie-disclaimer .cta-accept-cookies" }, { "waitFor": ".dse-cookie-disclaimer.cookie-hidden" }],
7
+ "optOut": [
8
+ { "waitForThenClick": ".dse-cookie-disclaimer .cta-decline-cookies" },
9
+ { "waitFor": ".dse-cookie-disclaimer.cookie-hidden" }
10
+ ],
11
+ "test": [{ "cookieContains": "%22targeting%22%3Afalse" }]
12
+ }
@@ -0,0 +1,46 @@
1
+ {
2
+ "name": "gobiernodecanarias",
3
+ "runContext": {
4
+ "urlPattern": "^https?://(\\w+\\.)?(gobiernodecanarias\\.org|gobcan\\.net)/"
5
+ },
6
+ "prehideSelectors": [".cookie-consent-modal.active"],
7
+ "detectCmp": [
8
+ {
9
+ "exists": ".cookie-consent-modal #checkbox_analiticas"
10
+ }
11
+ ],
12
+ "detectPopup": [
13
+ {
14
+ "visible": ".cookie-consent-modal.active"
15
+ }
16
+ ],
17
+ "optIn": [
18
+ {
19
+ "click": ".cookie-consent-modal #checkbox_analiticas:not(:checked)",
20
+ "optional": true
21
+ },
22
+ {
23
+ "waitForThenClick": ".cookie-consent-modal .btn.accept"
24
+ }
25
+ ],
26
+ "optOut": [
27
+ {
28
+ "waitForThenClick": ".cookie-consent-modal button.config"
29
+ },
30
+ {
31
+ "waitForVisible": ".cookie-consent-modal #checkbox_analiticas"
32
+ },
33
+ {
34
+ "click": ".cookie-consent-modal #checkbox_analiticas:checked",
35
+ "optional": true
36
+ },
37
+ {
38
+ "waitForThenClick": ".cookie-consent-modal .btn.accept"
39
+ }
40
+ ],
41
+ "test": [
42
+ {
43
+ "cookieContains": "cookies_allowed=true"
44
+ }
45
+ ]
46
+ }
@@ -0,0 +1,34 @@
1
+ {
2
+ "name": "groupama.fr",
3
+ "runContext": {
4
+ "urlPattern": "^https?://(www\\.)?groupama\\.fr/"
5
+ },
6
+ "prehideSelectors": ["#perfModal"],
7
+ "detectCmp": [
8
+ {
9
+ "exists": "#perfModal #refuseCookies"
10
+ }
11
+ ],
12
+ "detectPopup": [
13
+ {
14
+ "visible": "#perfModal"
15
+ }
16
+ ],
17
+ "optIn": [
18
+ {
19
+ "waitForThenClick": "#perfModal #acceptCookies:not(.perfModal__btn__frozen)",
20
+ "timeout": 10000
21
+ }
22
+ ],
23
+ "optOut": [
24
+ {
25
+ "waitForThenClick": "#perfModal #refuseCookies:not(.perfModal__btn__frozen)",
26
+ "timeout": 10000
27
+ }
28
+ ],
29
+ "test": [
30
+ {
31
+ "cookieContains": "OptanonAlertBoxClosed="
32
+ }
33
+ ]
34
+ }
@@ -0,0 +1,12 @@
1
+ {
2
+ "name": "kolibri-cookie-widget",
3
+ "prehideSelectors": ["body.kolibri [data-testid=\"cookie-widget\"]"],
4
+ "detectCmp": [{ "exists": "body.kolibri [data-testid=\"cookie-widget\"]" }],
5
+ "detectPopup": [{ "visible": "body.kolibri [data-testid=\"cookie-widget\"]" }],
6
+ "optIn": [{ "waitForThenClick": "body.kolibri [data-testid=\"cookie-widget\"] button.k-button--primary" }],
7
+ "optOut": [
8
+ { "waitForThenClick": "body.kolibri [data-testid=\"cookie-widget\"] button.k-button--primary + button.k-button--tertiary" },
9
+ { "waitForVisible": "body.kolibri [data-testid=\"cookie-widget\"]", "check": "none", "timeout": 5000 }
10
+ ],
11
+ "test": [{ "cookieContains": "%22advertising%22%3Afalse%2C%22hasConsented%22%3Atrue" }]
12
+ }
@@ -0,0 +1,21 @@
1
+ {
2
+ "name": "librus",
3
+ "vendorUrl": "https://portal.librus.pl/",
4
+ "runContext": {
5
+ "urlPattern": "^https?://([a-z0-9-]+\\.)?librus\\.pl/"
6
+ },
7
+ "prehideSelectors": [".consent-categories-modal-wrapper"],
8
+ "detectCmp": [{ "exists": "#consent-categories-modal [data-modal-consent-open-settings]" }],
9
+ "detectPopup": [{ "visible": "#consent-categories-modal [data-modal-consent-open-settings]" }],
10
+ "optIn": [{ "waitForThenClick": "#consent-categories-description [data-modal-submit-all]" }],
11
+ "optOut": [
12
+ { "waitForThenClick": "#consent-categories-modal [data-modal-consent-open-settings]" },
13
+ { "waitFor": "#edit-consent-app input[name=consent-category][value=nc]:checked" },
14
+ {
15
+ "if": { "exists": "#edit-consent-app input[name=consent-category]:checked:not(:disabled)" },
16
+ "then": [{ "click": "#edit-consent-app input[name=consent-category]:checked:not(:disabled)", "all": true }]
17
+ },
18
+ { "waitForThenClick": "#consent-categories-settings [data-modal-submit]" }
19
+ ],
20
+ "test": [{ "waitForVisible": "#consent-categories-modal", "check": "none", "timeout": 2000 }]
21
+ }
@@ -0,0 +1,34 @@
1
+ {
2
+ "name": "liferay-cookies-banner",
3
+ "vendorUrl": "https://learn.liferay.com/w/dxp/system-administration/configuring-liferay/cookies-banner",
4
+ "prehideSelectors": ["#p_p_id_com_liferay_cookies_banner_web_portlet_CookiesBannerPortlet_"],
5
+ "detectCmp": [
6
+ {
7
+ "exists": "#p_p_id_com_liferay_cookies_banner_web_portlet_CookiesBannerPortlet_"
8
+ },
9
+ {
10
+ "exists": "script[src*=\"otSDKStub\"]",
11
+ "negated": true
12
+ }
13
+ ],
14
+ "detectPopup": [
15
+ {
16
+ "visible": "#p_p_id_com_liferay_cookies_banner_web_portlet_CookiesBannerPortlet_"
17
+ }
18
+ ],
19
+ "optIn": [
20
+ {
21
+ "waitForThenClick": "#_com_liferay_cookies_banner_web_portlet_CookiesBannerPortlet_acceptAllButton"
22
+ }
23
+ ],
24
+ "optOut": [
25
+ {
26
+ "waitForThenClick": "#_com_liferay_cookies_banner_web_portlet_CookiesBannerPortlet_declineAllButton"
27
+ }
28
+ ],
29
+ "test": [
30
+ {
31
+ "cookieContains": "CONSENT_TYPE_PERFORMANCE=false"
32
+ }
33
+ ]
34
+ }
@@ -0,0 +1,24 @@
1
+ {
2
+ "name": "mega.io",
3
+ "vendorUrl": "https://mega.io/",
4
+ "runContext": {
5
+ "urlPattern": "^https?://(\\w+\\.)?mega\\.(io|nz)/"
6
+ },
7
+ "prehideSelectors": ["dialog.cookie-banner"],
8
+ "detectCmp": [{ "exists": "dialog.cookie-banner .customise-cookie" }],
9
+ "detectPopup": [{ "visible": "dialog.cookie-banner" }],
10
+ "optIn": [{ "waitForThenClick": "dialog.cookie-banner button.accept-all" }],
11
+ "optOut": [
12
+ {
13
+ "if": { "visible": "dialog.cookie-banner button.reject" },
14
+ "then": [{ "click": "dialog.cookie-banner button.reject" }],
15
+ "else": [
16
+ { "click": "dialog.cookie-banner .customise-cookie" },
17
+ { "waitForVisible": "dialog.cookie-dialog button.save" },
18
+ { "click": "dialog.cookie-dialog .toggle-control.on:not(.disabled)", "all": true, "optional": true },
19
+ { "click": "dialog.cookie-dialog button.save" }
20
+ ]
21
+ }
22
+ ],
23
+ "test": [{ "cookieContains": "\"marketing\":false" }]
24
+ }
@@ -0,0 +1,29 @@
1
+ {
2
+ "name": "profiler-dk",
3
+ "vendorUrl": "https://profiler.dk/",
4
+ "cosmetic": true,
5
+ "runContext": {
6
+ "urlPattern": "^https?://(www\\.)?(profiler|debtor)\\.dk/"
7
+ },
8
+ "prehideSelectors": ["div.cookie:has(a.cookie-okay-button)"],
9
+ "detectCmp": [
10
+ {
11
+ "exists": "div.cookie a.cookie-okay-button"
12
+ }
13
+ ],
14
+ "detectPopup": [
15
+ {
16
+ "visible": "div.cookie:has(a.cookie-okay-button)"
17
+ }
18
+ ],
19
+ "optIn": [
20
+ {
21
+ "waitForThenClick": "div.cookie a.cookie-okay-button"
22
+ }
23
+ ],
24
+ "optOut": [
25
+ {
26
+ "hide": "div.cookie:has(a.cookie-okay-button)"
27
+ }
28
+ ]
29
+ }
@@ -30,7 +30,19 @@
30
30
  ],
31
31
  "optOut": [
32
32
  {
33
- "click": "#pubtech-cmp #pt-close"
33
+ "if": {
34
+ "exists": "#pubtech-cmp #pt-close"
35
+ },
36
+ "then": [
37
+ {
38
+ "click": "#pubtech-cmp #pt-close"
39
+ }
40
+ ],
41
+ "else": [
42
+ {
43
+ "click": "#pubtech-cmp a[href*=\"pubtech_action_reject_all\"]"
44
+ }
45
+ ]
34
46
  }
35
47
  ],
36
48
  "test": [
@@ -0,0 +1,62 @@
1
+ {
2
+ "name": "rabobank",
3
+ "vendorUrl": "https://www.rabobank.com/",
4
+ "prehideSelectors": ["feature-modular-cookiebanner-variant-one .cookiebanner-container"],
5
+ "detectCmp": [
6
+ {
7
+ "exists": "feature-modular-cookiebanner-variant-one .cookiebanner-container"
8
+ }
9
+ ],
10
+ "detectPopup": [
11
+ {
12
+ "visible": "feature-modular-cookiebanner-variant-one .cookiebanner-container"
13
+ }
14
+ ],
15
+ "optIn": [
16
+ {
17
+ "if": {
18
+ "exists": "#modular-cookiebanner-variant-one-consent-level-button-3"
19
+ },
20
+ "then": [
21
+ {
22
+ "waitForThenClick": "#modular-cookiebanner-variant-one-consent-level-button-3",
23
+ "retry": 10,
24
+ "retryInterval": 500
25
+ }
26
+ ],
27
+ "else": [
28
+ {
29
+ "waitForThenClick": "feature-modular-cookiebanner-variant-one .cookiebanner-default-consent-button",
30
+ "retry": 10,
31
+ "retryInterval": 500
32
+ }
33
+ ]
34
+ }
35
+ ],
36
+ "optOut": [
37
+ {
38
+ "if": {
39
+ "exists": "#modular-cookiebanner-variant-one-consent-level-button-1"
40
+ },
41
+ "then": [
42
+ {
43
+ "waitForThenClick": "#modular-cookiebanner-variant-one-consent-level-button-1",
44
+ "retry": 10,
45
+ "retryInterval": 500
46
+ }
47
+ ],
48
+ "else": [
49
+ {
50
+ "waitForThenClick": "feature-modular-cookiebanner-variant-one .cookiebanner-default-consent-button",
51
+ "retry": 10,
52
+ "retryInterval": 500
53
+ }
54
+ ]
55
+ }
56
+ ],
57
+ "test": [
58
+ {
59
+ "cookieContains": "RABO_PSL=1"
60
+ }
61
+ ]
62
+ }