@duckduckgo/autoconsent 16.6.0 → 16.8.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.
@@ -425,7 +425,6 @@ var DETECT_PATTERNS = [
425
425
  // "only necessary" is probably too broad
426
426
  /(?:by continuing.{0,100}cookie)|(?:cookie.{0,100}by continuing)/gi,
427
427
  /(?:by continuing.{0,100}privacy)|(?:privacy.{0,100}by continuing)/gi,
428
- /by clicking.{0,100}(?:accept|agree|allow)/gi,
429
428
  /we (?:use|serve)(?: optional)? cookies/gi,
430
429
  /we are using cookies/gi,
431
430
  /use of cookies/gi,
@@ -443,12 +442,8 @@ var DETECT_PATTERNS = [
443
442
  // /cookies? preferences/i,
444
443
  // FR
445
444
  /utilisons.{0,100}des.{0,100}cookies/gi,
446
- /nous.{0,100}utilisons.{0,100}des/gi,
447
445
  /des.{0,100}cookies.{0,100}pour/gi,
448
- /des.{0,100}informations.{0,100}sur/gi,
449
446
  /retirer.{0,100}votre.{0,100}consentement/gi,
450
- /accéder.{0,100}à.{0,100}des/gi,
451
- /à.{0,100}des.{0,100}informations/gi,
452
447
  /et.{0,100}nos.{0,100}partenaires/gi,
453
448
  /publicités.{0,100}et.{0,100}du.{0,100}contenu/gi,
454
449
  /utilise.{0,100}des.{0,100}cookies/gi,
@@ -506,7 +501,6 @@ var DETECT_PATTERNS = [
506
501
  /\b(hacemos|hace) uso de cookies\b/i,
507
502
  /\busa cookies de google\b/i,
508
503
  /acepta.{0,80} uso de cookies/i,
509
- /al hacer clic.{0,80}aceptar/i,
510
504
  /al utilizar nuestro sitio web.{0,80}cookie/i,
511
505
  /almacenar la información en un dispositivo y\/?o acceder a ella/i,
512
506
  /cookie.{0,30} utiliza/i,
@@ -516,7 +510,6 @@ var DETECT_PATTERNS = [
516
510
  /navegando.{0,100}cookie/i,
517
511
  /nosotros y nuestros( \d+)? (socios|proveedores).{0,180} cookies/gi,
518
512
  /recopilamos y almacenamos datos de usted y de su dispositivo/gi,
519
- /si haces? clic.{0,20}acept/i,
520
513
  /utilizamos tecnolog[ií]as como las cookies/i,
521
514
  // Polish (PL)
522
515
  // examples:
@@ -569,428 +562,94 @@ var DETECT_PATTERNS = [
569
562
  /usiamo.{0,20}cookie/gi
570
563
  ];
571
564
  var REJECT_PATTERNS_ENGLISH = [
572
- // e.g. "i reject cookies", "reject all", "reject all cookies", "reject cookies", "deny all", "deny all cookies", "refuse", "refuse all", "refuse cookies", "refuse all cookies", "deny", "reject all and close", "deny all and close", "reject non-essential cookies", "reject all non-essential cookies and continue", "reject optional cookies", "reject additional cookies", "reject targeting cookies", "reject marketing cookies", "reject analytics cookies", "reject tracking cookies", "reject advertising cookies", "reject all and close", "deny all and close", "i reject all (except strictly necessary)"
573
- // note that "reject and subscribe" and "reject and pay" are excluded
574
- /^\s*(i)?\s*(reject|deny|refuse|decline|disable)\s*(all)?\s*(non-essential|optional|additional|targeting|analytics|marketing|unrequired|non-necessary|extra|tracking|advertising)?\s*(cookies)?\s*(\(?\s*except\s+(strictly\s+)?(necessary|essential)\s*\)?)?\s*$/is,
575
- // e.g. "i do not accept", "i do not accept cookies", "do not accept", "do not accept cookies"
576
- /^\s*(i)?\s*do\s+not\s+accept\s*(cookies)?\s*$/is,
565
+ // e.g. "reject", "reject all", "reject all cookies", "deny all", "refuse cookies", "decline",
566
+ // "reject non-essential cookies", "reject unnecessary cookies", "reject all but necessary", "reject all and close"
567
+ // note that "reject and subscribe" and "reject and pay" are excluded via NEVER_MATCH_PATTERNS
568
+ /^\s*(no,?\s*)?(i\s+)?(reject|deny|refuse|decline|disable)\s*(all)?\s*(but|except)?\s*(non[- ]?essential|un(necessary|required)|optional|additional|targeting|analytics|marketing|non[- ]?necessary|extra|tracking|advertising|necessary|essential)?\s*(cookies)?\s*(and\s+close)?\s*$/is,
569
+ // e.g. "i do not accept", "do not accept cookies"
570
+ /^\s*(i\s+)?do\s+not\s+accept\s*(cookies)?\s*$/is,
577
571
  // e.g. "continue without accepting", "continue without agreeing", "continue without agreeing →"
578
572
  /^\s*(continue|proceed|continue\s+browsing)\s+without\s+(accepting|agreeing|consent|cookies|tracking)(\s*→)?\s*$/is,
579
- // e.g. "strictly necessary cookies only", "essential cookies only", "required only", "use necessary cookies only", "essentials only"
580
- // note that "only" is required
581
- /^\s*(use|accept|allow|continue\s+with)?\s*(strictly)?\s*(necessary|essentials?|required)?\s*(cookies)?\s*only\s*$/is,
582
- // e.g. "allow essential cookies", "allow necessary", "allow essentials", "allow essentials only"
583
- // note that "essential" is required
584
- /^\s*(use|accept|allow|continue\s+with)?\s*(strictly)?\s*(necessary|essentials?|required)\s*(cookies)?\s*$/is,
585
- // e.g. "accept only essential cookies", "use only necessary cookies", "allow only essential", "only essentials", "continue with only essential cookies"
586
- // note that "only" is required
587
- /^\s*(use|accept|allow|continue\s+with)?\s*only\s*(strictly)?\s*(necessary|essentials?|required)?\s*(cookies)?\s*$/is,
588
- // e.g. "do not sell or share my personal information", "do not sell my personal information"
589
- // often used in CCPA
590
- /^\s*do\s+not\s+sell(\s+or\s+share)?\s*my\s*personal\s*info(rmation)?\s*$/is,
591
- "allow selection",
592
- "disagree and close",
593
- // These are impactful, but look error-prone
594
- // // e.g. "disagree"
595
- /^(i)?\s*disagree\s*(and\s+close)?$/i,
596
- // // e.g. "i do not agree"
597
- // /^\s*(i\s+)?do\s+not\s+agree\s*$/i,
573
+ // essential/necessary/functional-only, e.g. "essential cookies only", "accept only essential cookies",
574
+ // "allow necessary cookies continue", "use essential cookies only", "functional only", "i confirm necessary"
575
+ // note that a necessary/essential/functional word is required
576
+ /^\s*(i\s+)?(want\s+to\s+)?(only\s+)?(use|accept|allow|keep|enable|choose|continue\s+with|i\s+confirm)?\s*(only\s+)?(strictly\s+)?(necessary|essential|essentials|functional|required|minimal)\s*(only\s+)?(cookies)?\s*(continue|only)?\s*$/is,
577
+ // e.g. "do not sell or share my personal information", "opt out of sale ..." (CCPA)
578
+ /do\s+not\s+sell|opt\s+out\s+of\s+sale/is,
579
+ // e.g. "opt-out of sale/share or targeted advertising", "opt-out of advertising/social media cookies"
580
+ /^opt[ -]?out of /is,
581
+ // e.g. "reject all except strictly necessary", "reject all (except necessary cookies)"
582
+ /except\s+(strictly\s+)?necessary/is,
583
+ // e.g. "disagree", "i disagree", "disagree and close"
584
+ /^(i\s+)?disagree\s*(and\s+close)?$/i,
598
585
  "no",
599
- /^no,? thanks$/is,
600
- /^opt[ -]out$/is
586
+ /^no,? thank(s| you)$/is,
587
+ /^opt[ -]out$/is,
588
+ "dont enable",
589
+ "withdraw consent",
590
+ "i do not agree"
601
591
  ];
602
592
  var REJECT_PATTERNS_DUTCH = [
603
- "weigeren",
604
- "alles afwijzen",
605
- "alleen noodzakelijke cookies",
606
- "afwijzen",
607
- "alles weigeren",
608
- "cookies weigeren",
609
- "alleen noodzakelijk",
610
- "weiger",
611
- "weiger cookies",
612
- "selectie toestaan",
613
- "doorgaan zonder te accepteren",
614
- "alleen functionele cookies",
615
- "alleen functioneel",
616
- "alleen noodzakelijke",
617
- "alleen essenti\xEBle cookies",
618
- "functioneel",
619
- "alle cookies verwerpen",
620
- "doorgaan zonder akkoord te gaan",
621
- "weiger alles",
622
- "nee, bedankt",
623
- "alle cookies weigeren",
624
- "weiger alle cookies",
625
- "alleen noodzakelijke cookies accepteren",
626
- "alleen strikt noodzakelijk",
627
- "ik weiger",
628
- "optionele cookies weigeren",
629
- "alle weigeren",
630
- "accepteer alleen noodzakelijke cookies",
631
- "alleen functionele cookies accepteren",
632
- "enkel noodzakelijke cookies",
593
+ // weigeren / afwijzen / verwerpen (reject verbs, any position)
594
+ /weiger|afwijz|verwerp/is,
595
+ // "wijs (alles/ze) af" (reject verb with split particle)
596
+ /wijs\b.*\baf\b/is,
597
+ // "alleen/enkel/uitsluitend ... (noodzakelijk|functioneel|essentieel|...)"
598
+ /(^|\s)(alleen|enkel|uitsluitend)\s+.{0,20}(noodzakelijk|functione|essenti|vereiste|verplichte|strikt|minimale|basis|basic|standaard)/is,
599
+ // essential/necessary-only nouns
600
+ /^\s*(accepteer\s+|aanvaard\s+|gebruik\s+|sta\s+|ik wil\s+)?(alleen\s+|enkel\s+|uitsluitend\s+|strikt\s+)?(de\s+)?(noodzakelijke?|functionele?|functioneel|essentiële|essentieel|vereiste|verplichte|minimale|basiscookies|basis|standaard)\s*(cookies?)?\s*(accepteren|toestaan|aanvaarden)?\s*$/is,
601
+ // continue without accepting / consent
602
+ /(doorgaan|ga door|ga verder|verder)\s+.{0,15}(zonder|aanvaard)/is,
603
+ // "nee" refusals (but not "nee, sluiten" → acknowledge)
604
+ /^nee(,?\s+(bedankt|dank je|dankje|liever niet|liever geen cookies|geen persoonlijke cookies|geen cookies.*|weigeren?))?$/is,
633
605
  "niet accepteren",
634
- "weiger niet-essenti\xEBle cookies",
635
- "weiger niet-noodzakelijke cookies",
636
- "wijs alles af",
637
- "alle cookies afwijzen",
638
- "alleen vereiste cookies",
639
- "cookies afwijzen",
640
- "doorgaan zonder accepteren",
641
- "hier weigeren",
642
- "weiger alle",
643
- "aanvaard enkel essenti\xEBle cookies",
644
- "aanvullende cookies weigeren",
645
- "accepteren weigeren",
646
- "alle afwijzen",
647
- "alle niet functionele afwijzen",
648
- "alle optionele weigeren",
649
- "alleen noodzakelijke accepteren",
650
- "alleen strikt noodzakelijke cookies",
651
- "allen afwijzen",
652
- "clear weigeren",
653
- "enkel functioneel",
654
- "enkel noodzakelijke cookies aanvaarden",
655
- "functioneel altijd actief",
656
- "nee, accepteer alleen de noodzakelijke",
657
- "nee, geen cookies a.u.b.",
658
- "nee, weiger cookies",
659
- "nee, weigeren",
660
- "niet-noodzakelijke cookies weigeren",
661
- "optioneel afwijzen",
662
- "tracking cookies weigeren",
663
- "weigeren cookies",
664
- "weigeren?",
665
- "weigeren.",
666
- "strikt noodzakelijk",
667
- "weiger optionele cookies",
668
- "noodzakelijke cookies",
669
- "essenti\xEBle cookies",
670
- "ga verder zonder aanvaarden",
671
- "doorgaan zonder cookies",
672
- "accepteer noodzakelijke cookies",
673
- "noodzakelijke",
674
- "indien je enkel technisch noodzakelijke cookies wenst te accepteren, klik dan hier",
675
- "weiger",
676
- "alleen de noodzakelijke cookies",
677
- "alleen noodzakelijk",
678
- "alleen verplichte cookies",
679
- "ik wil alleen minimale cookies",
680
- "doorgaan zonder te accepteren",
606
+ "niet akkoord",
607
+ "ik ga niet akkoord",
608
+ "liever niet",
681
609
  "geen cookies toestaan",
682
610
  "liever geen cookies",
683
- "nee, geen persoonlijke cookies",
684
- "nee, liever geen cookies",
685
- "ga door zonder te accepteren",
686
- "verder zonder accepteren",
687
- "essenti\xEBle accepteren",
688
- "functionele cookies",
689
- "strikt noodzakelijke cookies",
690
- "alleen basic cookies",
691
- "alleen basiscookies",
692
- "alleen standaard cookies",
693
- "alle cookies verwerpen",
694
- "noodzakelijk",
695
- "noodzakelijk cookies accepteren",
696
- "noodzakelijke cookies accepteren",
697
- "accepteer alleen noodzakelijk",
698
- "enkel noodzakelijke toestaan",
699
- "enkel strikt noodzakelijke cookies",
700
- "ik wijs ze liever af",
701
- "ik weiger cookies",
702
- "ik weiger optionele cookies",
703
- "weiger alle cookies",
704
- "weiger alle niet-noodzakelijke cookies",
705
- "weiger alle onnodige cookies",
706
- "weiger alle optionele",
707
- "weiger alles",
708
- "weiger targeting en third party cookies."
611
+ "functioneel altijd actief"
709
612
  ];
710
613
  var REJECT_PATTERNS_FRENCH = [
711
- "continuer sans accepter",
712
- "tout refuser",
713
- "refuser",
714
- "refuser tous les cookies",
715
- "non merci",
716
- "interdire tous les cookies",
717
- "je refuse",
718
- "refuser tout",
719
- "tout rejeter",
720
- "refuser et continuer",
721
- "rejeter",
722
- "refuser les cookies",
723
- "cookies n\xE9cessaires uniquement",
724
- "seulement n\xE9cessaires",
725
- "rejeter tout",
726
- "refuser les cookies optionnels",
727
- "je d\xE9sactive les finalit\xE9s non essentielles",
728
- "refuser les cookies non n\xE9cessaires",
729
- "rejeter tous les cookies",
730
- "cookies essentiels uniquement",
731
- "n\xE9cessaires uniquement",
732
- "refuser les cookies non essentiels",
733
- "tout refuser et fermer",
734
- "tout refuser sauf les cookies techniques",
735
- "continuer sans accepter x",
736
- "je refuse lutilisation de cookies",
737
- "non merci, seulement des cookies techniques",
738
- "non, tout refuser",
739
- "refuser tous les cookies non n\xE9cessaires",
740
- "rejeter les cookies",
741
- "uniquement les essentiels",
742
- "refuser tous",
743
- "accepter uniquement les n\xE9cessaires",
744
- "allow anonymous analytics",
745
- "autoriser les cookies essentiels uniquement",
746
- "autoriser uniquement les n\xE9cessaires",
747
- "cookies essentiels seulement",
748
- "cookies n\xE9cessaires seulement",
749
- "cookies techniques uniquement",
750
- "je pr\xE9f\xE8re les rejeter",
751
- "je refuse :(",
752
- "je refuse les cookies",
753
- "je refuse tous les cookies",
754
- "je refuse tout",
755
- "ne pas accepter",
756
- "non, accepter les n\xE9cessaires uniquement",
757
- "refuser (sauf cookies n\xE9cessaires)",
758
- "refuser ce cookie",
759
- "refuser les coockies",
760
- "refuser les cookies facultatifs",
761
- "refuser tout, sauf les cookies techniques",
762
- "refuser toutes",
763
- "refuser toutes les options",
764
- "rejeter la banni\xE8re",
765
- "rejeter les cookies non essentiels",
766
- "rejeter les cookies optionnels",
767
- "rejeter tous les non fonctionnels",
768
- "rejeter tout optionnel",
769
- "tout refuser, sauf les cookies techniques",
770
- "uniquement n\xE9cessaires",
771
- "x continuer sans accepter",
772
- "strictement n\xE9cessaires",
773
- "utiliser uniquement les cookies n\xE9cessaires",
774
- "cookies n\xE9cessaires",
775
- "accepter uniquement les cookies essentiels",
776
- "accepter les cookies n\xE9cessaires",
777
- "uniquement les cookies n\xE9cessaires",
778
- "autoriser uniquement les cookies essentiels",
779
- "autoriser uniquement les cookies n\xE9cessaires",
780
- "si vous ne souhaitez pas accepter les cookies \xE0 lexception des cookies techniquement n\xE9cessaires, veuillez cliquer ici",
781
- "cookies strictement n\xE9cessaires",
782
- "accepter les cookies strictement n\xE9cessaires",
783
- "autoriser les cookies essentiels",
784
- "non, merci, uniquement les cookies n\xE9cessaires",
785
- "indispensable uniquement",
786
- "uniquement autoriser les cookies essentiels",
787
- "utiliser que les cookies n\xE9cessaires",
788
- "uniquement les sdk n\xE9cessaires",
789
- "uniquement n\xE9cessaire",
790
- "utiliser uniquement les cookies fonctionnels",
791
- "refus",
792
- "refusez",
793
- "naccepter que les cookies indispensables",
794
- "naccepter que les cookies n\xE9cessaires",
795
- "naccepter que les cookies techniques",
796
- "n\xE9cessaires seulement",
797
- "je naccepte rien"
614
+ // refuser / rejeter / interdire / décliner (reject verbs, any position)
615
+ // "refuser et s'abonner" / "refuser et payer" are excluded via NEVER_MATCH_PATTERNS
616
+ /(^|\s)(refus|rejet|rejeter|interdire|interdis|déclin|declin)/is,
617
+ // only necessary / essential / technical / functional
618
+ /(uniquement|seulement|indispensable|strictement nécessaire|que les cookies\s+(nécessaires|techniques|essentiels|indispensables|fonctionnels))/is,
619
+ // continue/proceed without accepting; refuse everything; disable purposes
620
+ /(sans accepter|ne pas accepter|je naccepte rien|je désactive)/is,
621
+ // "non" / "non, merci"
622
+ /^non(,?\s+merci\.?)?$/is
798
623
  ];
799
624
  var REJECT_PATTERNS_GERMAN = [
800
- "ablehnen",
801
- "alle ablehnen",
802
- "nur notwendige cookies",
803
- "nur essenzielle cookies akzeptieren",
804
- "nur notwendige cookies verwenden",
805
- "nur technisch notwendige",
806
- "nur essentielle cookies akzeptieren",
807
- "alles ablehnen",
808
- "nur notwendige",
809
- "alle cookies ablehnen",
810
- "weiter ohne einwilligung",
811
- "mit diesem button wird der dialog geschlossen. seine funktionalit\xE4t ist identisch mit der des buttons nur essenzielle cookies akzeptieren.",
812
- "cookies ablehnen",
813
- "optionale cookies ablehnen",
814
- "nur erforderliche cookies",
815
- "einwilligung ablehnen",
816
- "nur erforderliche",
817
- "nur notwendige cookies zulassen",
818
- "nur funktionale cookies akzeptieren",
819
- "nur notwendige cookies akzeptieren",
820
- "nur notwendige technologien",
821
- "verweigern",
822
- "webanalyse ablehnen",
823
- "weiter ohne zustimmung",
824
- "optionale ablehnen",
825
- "nur notwendige akzeptieren",
826
- "nur funktionale cookies",
827
- "mit diesem button wird der dialog geschlossen. seine funktionalit\xE4t ist identisch mit der des buttons ablehnen.",
828
- "nur notwendige cookies erlauben",
829
- "zustimmung verweigern",
625
+ // "... ablehnen" / "ablehnen ..." (reject/decline). Exclude the settings-list phrase "einstell(ungen|en) oder ablehnen".
626
+ /^(?!einstell(ungen|en) oder ablehnen$).*ablehnen/is,
627
+ // verweigern / verweigere / verweigert (refuse)
628
+ /verweiger/is,
629
+ // essential/necessary/functional-only variants (accepting only necessary → reject)
630
+ /^\s*(nur|ausschließlich|lediglich|weiter\s+mit|mit|akzeptiere?n?|unbedingt|es\s+werden\s+nur)?\s*(technisch\s+)?(notwendige?[nrs]?|essenzielle?[nrs]?|essentielle?[nrs]?|erforderliche?[nrs]?|funktionale?[nrs]?|funktionelle?[nrs]?|wesentliche?[nrs]?)\s*(cookies?|technologien|funktionscookies|dienste)?\s*(akzeptieren|erlauben|zulassen|verwenden|annehmen|setzen|speichern|zustimmen|auswählen)?\.?\s*$/is,
631
+ // continue without consent
632
+ /(^|\s)(ohne\s+(einwilligung|zustimmung|einverständnis|annahme)|(weiter|fortfahren)\s+ohne)/is,
633
+ // negations / refusals not covered by the regexes above
830
634
  "nein, danke",
831
- "nur erforderliche cookies akzeptieren",
832
- "zus\xE4tzliche cookies ablehnen",
833
- "ablehnen und nur essenzielle cookies akzeptieren",
834
- "nicht erforderliche ablehnen",
835
- "nicht essenzielle cookies daten ablehnen",
836
- "nur technisch notwendige cookies",
837
- "nur technisch notwendige cookies akzeptieren",
838
- "ablehnen speichern",
839
- "alle funktionen ablehnen",
840
- "alle optionalen cookies ablehnen",
841
- "alles verweigern",
842
- "mit erforderlichen einstellungen fortfahren",
843
- "nicht notwendige ablehnen",
844
- "notwendige cookies akzeptieren",
845
- "nur erforderliche technologien",
846
- "nur essenzielle cookies",
847
- "nur essenzielle cookies erlauben",
848
- "technisch nicht notwendige cookies ablehnen",
849
- "tippen sie zum ablehnen bitte hier",
850
- "ablehnen deny",
851
- "fortfahren ohne zu akzeptieren",
852
- "nur erforderliche akzeptieren",
853
- "nur notwendige erlauben",
854
- "ablehnen ...nur technisch notwendige cookies verwendet werden",
855
- "ablehnen (au\xDFer notwendige cookies)",
856
- "ablehnen und fortfahren",
857
- "ablehnen und schlie\xDFen",
858
- "ablehnen: nur grundfunktionen",
859
- "akzeptieren nur notwendige cookies",
860
- "alle ablehnen (au\xDFer notwendige cookies)",
861
- "alle nicht essenziellen cookies ablehnen",
862
- "alle nicht notwendigen cookies ablehnen",
863
- "alle optionale ablehnen",
864
- "alle optionalen ablehnen",
865
- "alle verweigern",
866
- "analyse cookies ablehnen",
867
- "cookie einstellungenablehnen",
868
- "erforderliche cookies akzeptieren",
869
- "erforderliche cookies zulassen",
870
- "externe inhalte ablehnen",
871
- "mit diesem button wird der dialog geschlossen. seine funktionalit\xE4t ist identisch mit der des buttons ablehnen und nur essenzielle cookies akzeptieren.",
872
- "mit diesem button wird der dialog geschlossen. seine funktionalit\xE4t ist identisch mit der des buttons nicht-essenzielle cookies verweigern.",
873
- "mit diesem button wird der dialog geschlossen. seine funktionalit\xE4t ist identisch mit der des buttons nur essenzielle akzeptieren.",
874
- "mit erforderlichen cookies fortfahren",
875
- "mit notwendigen fortfahren",
876
635
  "nein, bitte nicht",
877
636
  "nein, ich stimme nicht zu",
878
- "nicht funktionale cookies ablehnen",
879
- "nicht notwendige cookies ablehnen",
880
- "nicht-essenzielle cookies ablehnen",
881
- "nicht-essenzielle cookies verweigern",
882
- "notwendige cookies zulassen",
883
- "nur erforderliche cookies erlauben",
884
- "nur erforderliche cookies setzen",
885
- "nur erforderliche cookies verwenden",
886
- "nur essenzielle akzeptieren",
887
- "nur notwendige cookies annehmen",
888
- "nur notwendige cookies speichern",
889
- "nur notwendige cookies verwenden.",
890
- "nur notwendige funktionscookies akzeptieren",
891
- "nur notwendigen cookies zustimmen",
892
- "nur notwendiges akzeptieren",
893
- "nur wesentliche cookies annehmen",
894
- "opt. cookies ablehnen",
895
- "optionale dienste ablehnen",
896
- "optionale tools ablehnen",
897
- "sie alle cookies ablehnen",
898
- "technisch notwendige annehmen",
899
- "nur essentielle cookies",
900
- "nur essentielle",
901
- "nur funktionale akzeptieren",
902
- "nur technisch notwendige akzeptieren",
903
- "nur technisch notwendige daten und cookies ...",
904
- "nur technisch notwendige zulassen",
905
- "nur wesentliche",
906
- "ohne einverst\xE4ndnis fortfahren",
907
- "ohne einwilligung",
908
- "ohne zustimmung fortfahren",
909
- "ohne zustimmung weiter",
910
- "weiter mit essentiellen cookies",
911
- "weiter ohne annahme",
912
- "weiter ohne statistische analyse-cookies",
913
- "weiter ohne statistische cookies",
914
- "wesentliche cookies",
915
- "fortfahren ohne zustimmung",
637
+ "nicht zustimmen",
638
+ "nicht einverstanden",
916
639
  "ich lehne ab",
917
- "nicht technische cookies ablehnen"
640
+ "widerrufen",
641
+ "mit erforderlichen einstellungen fortfahren",
642
+ "mit erforderlichen cookies fortfahren",
643
+ "mit notwendigen fortfahren"
918
644
  ];
919
645
  var REJECT_PATTERNS_ITALIAN = [
920
- "rifiuta",
921
- "rifiuta cookies",
922
- "rifiuta i cookie",
923
- "rifiuta i cookies",
924
- "rifiuta tutti i cookie",
925
- "rifiuta tutti i cookies",
926
- "rifiuta cookie non necessari",
927
- "rifiuta i cookie non tecnici",
928
- "rifiuta non necessari",
929
- "rifiuta tutto",
930
- "rifiuta tutti",
931
- "rifiuta e chiudi",
932
- "chiudi rifiuta tutti i cookie",
933
- "chiudi e rifiuta tutti i cookie",
934
- "chiudi e rifiuta tutto",
935
- "nega",
936
- "nega tutti",
937
- "negare",
938
- "non accetto",
939
- "accetta solo i necessari",
940
- "usa solo i cookie necessari",
941
- "accetta solo necessari",
942
- "solo necessari",
943
- "continua senza accettare x",
944
- "continua senza accettare",
945
- "rifiutare",
946
- "rifiutare i cookie",
947
- "rifiutare tutti i cookie",
948
- "rifiutare tutti",
949
- "rifiutare e continuare",
950
- "installa solo i cookie strettamente necessari",
951
- "solo cookies tecnici",
952
- "accetta necessari",
953
- "solo cookie tecnici",
954
- "solo cookie necessari",
955
- "strettamente necessari",
956
- "tecnici",
957
- "accetta solo cookie di navigazione",
958
- "chiudi e prosegui solo con i cookies tecnici necessari",
959
- "consenti solo i cookie tecnici",
960
- "solo cookie essenziali",
961
- "blocca i cookie non essenziali",
962
- "accetta i cookie necessari",
963
- "accetta solo cookie tecnici",
964
- "accetta solo i cookie essenziali",
965
- "accetta solo i cookie necessari",
966
- "accetta solo i necessary",
967
- "accetta i cookie essenziali",
968
- "accetta cookie tecnici",
969
- "necessari",
970
- "usa solo i cookie tecnici",
971
- "usa solo i necessari",
972
- "rifiuto",
973
- "essenziali",
974
- "accetta cookie essenziali",
975
- "accetta cookie necessari",
976
- "accetta solo cookie essenziali",
977
- "accetta solo cookie necessari",
978
- "rifiuta cookie non necessari",
979
- "rifiuta cookie non essenziali",
980
- "rifiuta i cookie non necessari",
981
- "rifiuta i cookie non essenziali",
982
- "rifiuta tutti i cookie e chiudi",
983
- "rifiuta tutto e chiudi",
984
- "rifiuta tutti i cookie chiudi",
985
- "continuare senza accettare",
986
- "rifiutare cookies",
987
- "rifiutare i cookies",
988
- "rifiutare non necessari",
989
- "rifiutare tutto",
990
- "rifiutare e chiudere",
991
- "solo essenziali",
992
- "solo tecnici",
993
- "negare tutti"
646
+ // rifiuta / rifiutare / rifiuto / nega / negare / blocca (reject verbs)
647
+ /(^|\s)(rifiut|neg(a|are|hi)|blocca i cookie)/is,
648
+ // accept/use only necessary / essential / technical
649
+ /^\s*(accetta|accettare|usa|installa|consenti|chiudi e prosegui( solo con)?)?\s*(solo|soltanto|unicamente)?\s*(i\s+|gli\s+)?(cookies?\s+)?(strettamente\s+)?(necessari|necessary|essenziali|tecnici|di navigazione)\s*(necessari|tecnici|essenziali)?\s*$/is,
650
+ // continue without accepting
651
+ /continua(re)? senza accettare/is,
652
+ "non accetto"
994
653
  ];
995
654
  var REJECT_PATTERNS_BRAZILIAN_PORTUGUESE = [
996
655
  // (deny)
@@ -1007,273 +666,52 @@ var REJECT_PATTERNS_BRAZILIAN_PORTUGUESE = [
1007
666
  /^\s*(aceitar|utilizar)?\s*(apenas|somente|só)?\s*(os)?\s*(cookies)?\s*(essenciais|funcionais|obrigatórios|necessários)\s*$/is
1008
667
  ];
1009
668
  var REJECT_PATTERNS_SPANISH = [
1010
- "rechazar",
1011
- "rechazar todo",
1012
- "rechazar todas",
1013
- "denegar",
1014
- "rechazar cookies",
1015
- "rechazarlas todas",
1016
- "no acepto",
1017
- "rechazar todas las cookies",
1018
- "rechazar y cerrar",
1019
- "denegar todas",
1020
- "solo necesarias",
1021
- "rechazar cookies opcionales",
1022
- "rechazar opcionales",
1023
- "cookies estrictamente necesarias",
1024
- "aceptar s\xF3lo necesarias",
1025
- "continuar sin aceptar",
1026
- "denegar todo",
1027
- "clear rechazar cookies",
1028
- "configurar rechazar cookies",
1029
- "denegar cookies",
1030
- "rechazar y continuar",
1031
- "rechazar las cookies",
1032
- "clear rechazar",
1033
- "denegar todas las cookies",
1034
- "rechazar cookies no esenciales",
1035
- "rechazarlas",
1036
- "no, no acepto",
1037
- "permitir s\xF3lo necesarias",
1038
- "rechazar cookies adicionales",
1039
- "rechazar cookies anal\xEDticas",
1040
- "rechazar no necesarias",
1041
- "rechazar opcional",
1042
- "rechazar todo lo opcional",
1043
- "solo cookies estrictamente necesarias",
1044
- "solo esenciales",
1045
- "x rechazar todas las cookies",
1046
- "solo usar cookies necesarias",
1047
- "solo cookies necesarias",
1048
- "declinar",
1049
- "aceptar solo las cookies esenciales",
1050
- "necesarias",
1051
- "aceptar solo lo necesario",
1052
- "solo funcionales",
1053
- "declinar y cerrar",
1054
- "d\xE9clin",
1055
- "declina",
1056
- "declinar consentimiento",
1057
- "declinar todas",
1058
- "solo las cookies necesarias",
1059
- "nom\xE9s sutilitzen cookies quan \xE9s necessari",
1060
- "no, s\xF3lo las estrictamente necesarias",
1061
- "solo las necesarias",
669
+ // rechazar / denegar / declinar / negar (reject verbs, any position)
670
+ // "rechazar y pagar" / "rechazar y suscribirse" are excluded via NEVER_MATCH_PATTERNS
671
+ /(^|\s)(rechaz|recház|deneg|negar|declin)/is,
672
+ // accept/allow/use (only) necessary / essential / technical / functional / own
673
+ /^\s*(aceptar?|acepta|permitir|permite|usar|utilizar)?\s*(solo|sólo|només|únicamente)?\s*(las?\s+|los\s+)?(cookies?\s+)?(estrictamente\s+)?(necesari\w*|esencial\w*|técnic\w*|obligatori\w*|funcional\w*|propias)\s*$/is,
674
+ // "solo/sólo/no, sólo ... necessary/essential"
675
+ /^(no,?\s+)?(solo|sólo|només)\s+(usar\s+|las?\s+|los\s+|lo\s+)?.{0,20}(necesari|esencial|estrictamente)/is,
676
+ // refusals / opt-outs
677
+ /^(no acept|no consentir|no permitir|no estoy de acuerdo|no,? gracias|sin consentimiento|revocar consentimiento|continuar sin aceptar|prefiero rechazarlas|descartar todas)/is,
1062
678
  "acceptar nom\xE9s les necess\xE0ries",
1063
- "acepta solo las necesarias",
1064
- "aceptar solo lo esencial",
1065
- "aceptar las obligatorias",
1066
- "permitir solo cookies t\xE9cnicas",
1067
- "cookies t\xE9cnicas",
1068
- "permitir solo cookies t\xE9cnicas",
1069
- "usar solo cookies t\xE9cnicas",
1070
- "aceptar solo las esenciales",
1071
- "aceptar cookies esenciales",
1072
- "aceptar esenciales",
1073
- "aceptar necesarias",
1074
- "aceptar necesario",
1075
- "aceptar solo cookies necesarias",
1076
- "aceptar solo funcionales",
1077
- "aceptar s\xF3lo las necesarias",
1078
- "descartar todas",
1079
- "negar todas",
1080
- "no aceptar",
1081
- "no consentir",
1082
- "no estoy de acuerdo",
1083
- "no gracias",
1084
- "no permitir",
1085
- "no, gracias",
1086
- "prefiero rechazarlas",
1087
- "pulsa aqu\xED para desactivar las cookies opcionales",
1088
- /^rechazar cookies \(menos las necesarias\)$/,
1089
- "rechazar innecesarias",
1090
- "rechazar la pol\xEDtica de cookies",
1091
- "rechazar todas cookies",
1092
- "rechazar todos",
1093
- "rechazarlas todas las cookies",
1094
- "rechazo las cookies",
1095
- "rechazo",
1096
- "rech\xE1zalo",
1097
- "revocar consentimiento",
1098
- "sin consentimiento",
1099
- "solo cookies esenciales",
1100
- "solo las cookies esenciales",
1101
- "solo lo esencial",
1102
- "s\xF3lo cookies propias",
1103
- "s\xF3lo funcionales",
1104
- "s\xF3lo las cookies necesarias",
1105
- "usar solo las cookies esenciales",
1106
- "usar solo las necesarias"
679
+ "nom\xE9s sutilitzen cookies quan \xE9s necessari",
680
+ "pulsa aqu\xED para desactivar las cookies opcionales"
1107
681
  ];
1108
682
  var REJECT_PATTERNS_SWEDISH = [
1109
- "avvisa",
1110
- "endast n\xF6dv\xE4ndiga",
1111
- "avvisa alla",
1112
- "endast n\xF6dv\xE4ndiga cookies",
1113
- "neka",
1114
- "neka alla",
1115
- "avvisa allt",
1116
- "avvisa alla cookies",
1117
- "till\xE5t bara n\xF6dv\xE4ndiga cookies",
1118
- "bara n\xF6dv\xE4ndiga",
1119
- "bara n\xF6dv\xE4ndiga cookies",
1120
- "till\xE5t bara n\xF6dv\xE4ndiga kakor",
1121
- "endast n\xF6dv\xE4ndiga kakor",
1122
- "till\xE5t endast n\xF6dv\xE4ndiga",
1123
- "forts\xE4tt utan att acceptera",
1124
- "godk\xE4nn endast n\xF6dv\xE4ndiga",
1125
- "acceptera endast n\xF6dv\xE4ndiga",
1126
- "avvisa cookies",
1127
- "till\xE5t endast n\xF6dv\xE4ndiga kakor",
1128
- "acceptera endast n\xF6dv\xE4ndiga cookies",
1129
- "neka kakor",
1130
- "bara n\xF6dv\xE4ndiga kakor",
1131
- "neka alla cookies",
1132
- "anv\xE4nd endast n\xF6dv\xE4ndiga",
1133
- "avvisa alla utom n\xF6dv\xE4ndiga",
1134
- "hantera eller avvisa",
1135
- "neka alla utom n\xF6dv\xE4ndiga kakor",
1136
- "neka och st\xE4ng",
1137
- "till\xE5t bara n\xF6dv\xE4ndiga tj\xE4nster",
1138
- "avvisa alla utom n\xF6dv\xE4ndiga kakor",
1139
- "avvisa alla valfria",
1140
- "godk\xE4nn bara n\xF6dv\xE4ndiga cookies",
1141
- "acceptera endast n\xF6dv\xE4ndiga kakor",
1142
- "anv\xE4nd endast n\xF6dv\xE4ndiga cookies",
1143
- "avvisa alla kakor",
1144
- "avvisa alla valm\xF6jligheter",
1145
- "avvisa ej n\xF6dv\xE4ndiga",
1146
- "avvisa icke-n\xF6dv\xE4ndiga",
1147
- "f\xF6rneka",
1148
- "godk\xE4nn bara n\xF6dv\xE4ndiga",
1149
- "godk\xE4nn bara n\xF6dv\xE4ndiga kakor",
1150
- "godk\xE4nn endast n\xF6dv\xE4ndiga cookies",
1151
- "godk\xE4nn endast n\xF6dv\xE4ndiga kakor",
1152
- "godta endast n\xF6dv\xE4ndiga",
1153
- "jag godk\xE4nner bara n\xF6dv\xE4ndiga kakor",
1154
- "nej, avvisa alla",
1155
- "nej, bara n\xF6dv\xE4ndiga",
1156
- "nej, bara n\xF6dv\xE4ndiga cookies",
1157
- "neka alla utom n\xF6dv\xE4ndiga",
1158
- "neka alla.",
1159
- "neka cookies",
1160
- "neka samtliga",
1161
- "ok, endast n\xF6dv\xE4ndiga",
1162
- "spara endast n\xF6dv\xE4ndiga",
1163
- "st\xE4ng och avvisa",
1164
- "till\xE5t bara n\xF6dv\xE4ndiga",
1165
- "godk\xE4nn n\xF6dv\xE4ndiga kakor",
1166
- "godk\xE4nn n\xF6dv\xE4ndiga",
1167
- "acceptera n\xF6dv\xE4ndiga",
1168
- "strikt n\xF6dv\xE4ndigt",
1169
- "till\xE5t n\xF6dv\xE4ndiga",
1170
- "n\xF6dv\xE4ndiga",
1171
- "enbart n\xF6dv\xE4ndiga",
1172
- "jag godk\xE4nner n\xF6dv\xE4ndiga kakor",
1173
- "acceptera n\xF6dv\xE4ndiga kakor",
1174
- "godk\xE4nn enbart n\xF6dv\xE4ndiga kakor",
1175
- "godk\xE4nn n\xF6dv\xE4ndiga cookies",
1176
- "om du inte vill acceptera andra cookies \xE4n de som \xE4r tekniskt n\xF6dv\xE4ndiga klickar du h\xE4r",
1177
- "acceptera enbart n\xF6dv\xE4ndiga",
1178
- "n\xF6dv\xE4ndiga cookies",
1179
- "jag godk\xE4nner enbart att ni anv\xE4nder n\xF6dv\xE4ndiga cookies",
1180
- "+ strikt n\xF6dv\xE4ndiga cookies",
1181
- "anv\xE4nd enbart n\xF6dv\xE4ndiga cookies",
1182
- "enbart n\xF6dv\xE4ndiga cookies",
1183
- "godk\xE4nn n\xF6dv\xE4ndiga kakor st\xE4ng",
1184
- "ok till n\xF6dv\xE4ndiga",
1185
- "strikt n\xF6dv\xE4ndiga",
1186
- "forts\xE4tt utan att godk\xE4nna",
1187
- "avb\xF6j alla cookies",
1188
- "jag accepterar endast grundl\xE4ggande kakor",
1189
- "nej, jag avb\xF6jer",
1190
- "till\xE5t inte cookies"
1191
- ];
1192
- var REJECT_PATTERNS_CATALAN = [
1193
- "denega",
1194
- "denega-les",
1195
- "no accepto",
1196
- "no, gr\xE0cies",
1197
- "rebutja-ho tot",
1198
- "rebutja-les totes",
1199
- "rebutja-les",
1200
- "rebutjar cookies",
1201
- "rebutjar tot",
1202
- "rebutjar totes",
1203
- "rebutjar",
1204
- "rebutjar-les totes",
1205
- "refusar i tancar"
1206
- ];
1207
- var REJECT_PATTERNS_GALICIAN = ["rexeitar cookies", "rexeitar opcionais", "rexeitar optativas", "rexeitar todas", "rexeitar"];
1208
- var REJECT_PATTERNS_BASQUE = [
1209
- /^(denak? baztertu|ukatu guztiak)$/,
1210
- "baztertu cookie-ak",
1211
- "guztiak ukatu",
1212
- "ukatu cookieak",
1213
- "ukatu dena",
1214
- /^ukatu guztiak \(cookie\)$/,
1215
- "ukatu"
683
+ // avvisa / avböj / neka / förneka (reject verbs)
684
+ /(^|\s)(avvisa|avböj|neka|nekar|förneka)/is,
685
+ // (allow/accept/use) only necessary cookies/kakor
686
+ /(bara|endast|enbart)\s+nödvändig/is,
687
+ // "godkänn/acceptera/använd/tillåt (bara/endast/enbart) nödvändiga (cookies/kakor)"
688
+ /^(ok,?\s+|nej,?\s+)?(jag\s+)?(godkänn\w*|godta|acceptera\w*|använd\w*|tillåt|spara)?\s*(bara|endast|enbart)?\s*(strikt\s+)?nödvändiga?t?( (cookies|kakor|tjänster))?\.?$/is,
689
+ // continue without accepting
690
+ /fortsätt utan att (acceptera|godkänna)/is,
691
+ /strikt nödvändig/is,
692
+ "till\xE5t inte cookies",
693
+ "jag accepterar endast grundl\xE4ggande kakor"
1216
694
  ];
695
+ var REJECT_PATTERNS_CATALAN = [/(^|\s)rebutj/is, "no accepto", "no, gr\xE0cies"];
696
+ var REJECT_PATTERNS_GALICIAN = [/(^|\s)rexeitar/is];
697
+ var REJECT_PATTERNS_BASQUE = [/(^|\s)(baztertu|ukatu)/is];
1217
698
  var REJECT_PATTERNS_PORTUGUESE = [/^aceitar apenas cookies essenciais\.$/];
1218
699
  var REJECT_PATTERNS_CZECH = ["povolit pouze nezbytn\xE9 cookie"];
1219
700
  var REJECT_PATTERNS_POLISH = [
1220
- // examples:
1221
- // odrzuć (Reject)
1222
- // odrzuć wszystkie (Reject all)
1223
- // odrzuć wszystkie pliki cookie (Reject all cookies)
1224
- /^(odrzuć|odrzucenie|odrzucam) ?(wszystkie|wszystko|wszystkich)?( pliki)?( cookies?)?.?$/s,
1225
- /^(zaakceptuj )?tylko niezbędne$/,
1226
- "akceptuj niezb\u0119dne",
1227
- "akceptuj tylko niezb\u0119dne pliki cookie",
1228
- "akceptuj tylko niezb\u0119dne",
1229
- "akceptuj tylko wymagane",
1230
- "akceptuj wymagane",
1231
- "akceptuj\u0119 niezb\u0119dne zgody",
1232
- "akceptuj\u0119 wymagane",
1233
- "blokuj wszystkie",
1234
- /^funkcjonalne pliki cookie \(wymagane\)$/,
1235
- "kontynuuj bez akceptacji plik\xF3w cookie",
1236
- "kontynuuj bez akceptacji",
1237
- "kontynuuj bez akceptowania opcjonalnych cookie",
1238
- "kontynuuj bez akceptowania",
1239
- "kontynuuj bez wyra\u017Cania zgody",
1240
- "korzystaj wy\u0142\u0105cznie z niezb\u0119dnych plik\xF3w cookie",
1241
- "nie akceptuj\u0119",
1242
- "nie potwierdzam",
1243
- "nie wyra\u017Caj zgody i zamknij",
1244
- "nie wyra\u017Cam zgody",
1245
- "nie zezwalaj",
1246
- "nie zgadzam si\u0119",
1247
- "nie",
1248
- "nie, dzi\u0119kuj\u0119",
1249
- "nie, nie zgadzam si\u0119 na pliki cookie",
1250
- "niezb\u0119dne pliki cookie",
701
+ // odrzuć / odrzucam / odmawiam / rezygnuję / blokuj wszystkie (reject verbs)
702
+ /odrzu(ć|cam|cenie|cać|canie|cić)|odmaw|odmowa|odmów|rezygnuj|blokuj wszystk/is,
703
+ // (accept) only necessary / required
704
+ /(^|\s)tylko\s+(bezwzględnie\s+)?(niezbędn\w*|wymagan\w*|konieczne)/is,
705
+ /(akceptuj|akceptuję|zaakceptuj|zatwierdź|potwierdzam|zezwól)\s+(tylko\s+)?(na\s+)?(niezbędn\w*|wymagan\w*|konieczne)/is,
706
+ /korzystaj wyłącznie z niezbędn/is,
707
+ // continue without accepting / consent
708
+ /kontynuuj bez (akceptacj|akceptowani|wyrażania zgody)/is,
709
+ // refusals
710
+ /nie (akceptuję|zgadzam|wyrażam zgody|wyrażaj zgody|zezwalaj|potwierdzam)/is,
711
+ /^nie(,?\s+(dziękuję|nie zgadzam.*))?$/is,
1251
712
  "niezb\u0119dne",
1252
- "odmawiam",
1253
- "odmowa",
1254
- "odm\xF3w",
1255
- "odm\xF3wi\u0107",
1256
- "odrzucam i chc\u0119 dowiedzie\u0107 si\u0119 wi\u0119cej",
1257
- /^odrzucam wszystkie \*$/,
1258
- "odrzucanie niepotrzebnych plik\xF3w cookie",
1259
- "odrzuca\u0107",
1260
- "odrzu\u0107 nieistotne",
1261
- "odrzu\u0107 niewymagane",
1262
- "odrzu\u0107 opcjonalne pliki cookie",
1263
- "odrzu\u0107 opcjonalne",
1264
- "odrzu\u0107 wszystkie zgody",
1265
- "potwierdzam wymagane",
1266
- "rezygnuj\u0119",
1267
- "tylko bezwzgl\u0119dnie konieczne",
1268
- "tylko konieczne",
1269
- "tylko niezb\u0119dne pliki cookie",
1270
- "tylko wymagane pliki cookie",
1271
- "tylko wymagane",
1272
- "zaakceptuj niezb\u0119dne",
1273
- "zaakceptuj wymagane",
1274
- "zatwierd\u017A tylko wymagane",
1275
- "zezw\xF3l na niezb\u0119dne",
1276
- "zezw\xF3l tylko na niezb\u0119dne"
713
+ "niezb\u0119dne pliki cookie",
714
+ /^funkcjonalne pliki cookie \(wymagane\)$/
1277
715
  ];
1278
716
  var REJECT_PATTERNS_RUSSIAN = ["\u043F\u0440\u0438\u043D\u0438\u043C\u0430\u0442\u044C \u0442\u043E\u043B\u044C\u043A\u043E \u043D\u0435\u043E\u0431\u0445\u043E\u0434\u0438\u043C\u044B\u0435 \u0444\u0430\u0439\u043B\u044B cookie"];
1279
717
  var REJECT_PATTERNS_TURKISH = ["reddet", "\xE7erezleri reddet"];
@@ -1319,57 +757,42 @@ var NEVER_MATCH_PATTERNS = [
1319
757
  /subskrybuj/
1320
758
  ];
1321
759
  var SETTINGS_PATTERNS = [
760
+ // Multilingual "open customization" patterns: a customization verb next to a
761
+ // cookie/preference/settings/options/details/purposes noun (both word orders).
762
+ // The negative lookahead avoids policy links and save/confirm/accept phrases (those are accept/acknowledge/other).
763
+ /^(?!.*\b(policy|policies|notice|statement|impressum|richtlinie|beleid|politique|política|polityk|speichern|guardar|opslaan|zapisz|enregistrer|sauvegarder|bevestig|bestätig|confirm|save|submit|akzeptier|accept|zaakcept)\b)(customi[sz]e|manage|adjust|configure|personali[sz]e|let me choose|edit|change|set|select|view|see|review|update|open|show|choose|anpassen|verwalten|konfigurieren|bearbeiten|öffnen|anzeigen|einblenden|festlegen|auswählen|wählen|aanpassen|beheren|instellen|wijzig\w*|personaliseren|personaliseer|kies|bekijk|toon|personnaliser|paramétrer|gérer|configurer|choisir|afficher|définir|modifier|configurar|personalizar|gestionar|administrar|ajustar|seleccionar|modificar|establecer|dostosuj|zarządzaj|personalizuj|ustaw\w*|zmień|pokaż|wybierz)\b.{0,20}(cookies?|preferences?|settings?|options?|choices?|controls?|details?|purposes?|services?|consent|einstellung\w*|optionen|präferenzen|einzelheiten|zwecke|dienste|datenschutz\w*|auswahl|voorkeur\w*|instelling\w*|opties|diensten|préférences|paramètres|réglages|choix|détails|finalités|témoins|preferencia\w*|opciones|ajustes|configuraci\w*|detalles|servicios|elección|preferencj\w*|ustawie\w*|opcje|szczegół\w*|cele|galetes)\b/is,
764
+ /^(?!.*\b(policy|policies|notice|statement|impressum|richtlinie|beleid|politique|política|polityk|speichern|guardar|opslaan|zapisz|enregistrer|sauvegarder|bevestig|bestätig|confirm|save|submit|akzeptier|accept|zaakcept)\b)(cookies?|preferences?|settings?|options?|choices?|controls?|details?|purposes?|services?|consent|einstellung\w*|optionen|präferenzen|einzelheiten|zwecke|dienste|datenschutz\w*|auswahl|voorkeur\w*|instelling\w*|opties|diensten|préférences|paramètres|réglages|choix|détails|finalités|témoins|preferencia\w*|opciones|ajustes|configuraci\w*|detalles|servicios|elección|preferencj\w*|ustawie\w*|opcje|szczegół\w*|cele|galetes)\b.{0,15}(customi[sz]e|manage|adjust|configure|personali[sz]e|let me choose|edit|change|set|select|view|see|review|update|open|show|choose|anpassen|verwalten|konfigurieren|bearbeiten|öffnen|anzeigen|einblenden|festlegen|auswählen|wählen|aanpassen|beheren|instellen|wijzig\w*|personaliseren|personaliseer|kies|bekijk|toon|personnaliser|paramétrer|gérer|configurer|choisir|afficher|définir|modifier|configurar|personalizar|gestionar|administrar|ajustar|seleccionar|modificar|establecer|dostosuj|zarządzaj|personalizuj|ustaw\w*|zmień|pokaż|wybierz)\b/is,
1322
765
  "settings",
1323
766
  "preferences",
1324
767
  /customi(s|z)e/is,
1325
- "show details",
1326
768
  "more options",
1327
769
  /(manage|configure) (my|your) (preferences|choices|cookies)/is,
1328
- "manage choices",
1329
770
  /(cookie )?preference center/is,
1330
- "change settings",
1331
771
  "configure",
1332
- "change my preferences",
1333
772
  "cookie manager",
1334
773
  "cookie preference",
1335
774
  "let me choose",
1336
775
  "cookieconsent preferences",
1337
776
  /privacy choices/is,
1338
- /(privacy|cookie|custom) settings/is,
1339
- /cookies? (settings|preferences|setting)/is,
777
+ /^(privacy|cookie|custom) settings$/is,
778
+ /^cookies? (settings|preferences|setting)$/is,
1340
779
  /(manage|customize|customise|opt-out|edit).*(cookies|preferences|settings|options)/is,
1341
780
  "cookie consent options",
1342
781
  "privacy controls",
1343
- "show purposes",
1344
782
  // German
1345
783
  "einstellungen",
1346
784
  // Spanish (ES)
1347
785
  /^(configurar|configuración|administrar)$/,
1348
786
  /^(gestionar|ver|establecer) preferencias$/,
1349
- "administrar cookies",
1350
- "administrar las cookies",
1351
- "administrar mis preferencias de cookies",
1352
- "administrar opciones",
1353
- "administrar preferencias",
1354
- "ajustar cookies",
1355
- "ajustes de cookies",
1356
787
  "ajustes",
1357
788
  "centro de preferencias",
1358
789
  "configura",
1359
790
  /^configuración( de( las)?)? cookies?( y servicios)?$/,
1360
- "configurar cookies",
1361
- "configurar las cookies",
1362
- "configurar mis preferencias",
1363
- "configurar preferencias",
1364
- "configurar tus preferencias aqu\xED",
1365
791
  /^configurar\.\.\.$/,
1366
792
  "configurarlas",
1367
793
  "detalles",
1368
- "editar la configuraci\xF3n de cookies",
1369
794
  "gestiona tus preferencias",
1370
- "gestionar configuraci\xF3n de privacidad",
1371
795
  /^gestionar ?(las?|mis)? ?(configuración|preferencias)?(( de)? cookies?)?$/,
1372
- "gestionar opciones",
1373
796
  "gesti\xF3n cookies",
1374
797
  "gesti\xF3n de cookies",
1375
798
  "mis preferencias",
@@ -1378,15 +801,10 @@ var SETTINGS_PATTERNS = [
1378
801
  "m\xE1s opciones",
1379
802
  "no, ajustar",
1380
803
  "obtener m\xE1s informaci\xF3n y configuraci\xF3n",
1381
- "opciones de cookies",
1382
804
  "opciones de gesti\xF3n",
1383
805
  "panel de configuraci\xF3n de cookies",
1384
806
  "personalice",
1385
- "personalizar cookies",
1386
- "personalizar elecci\xF3n",
1387
- "personalizar mis preferencias",
1388
807
  "personalizar",
1389
- "preferencias de cookies",
1390
808
  "preferencias de privacidad",
1391
809
  "preferencias",
1392
810
  "quiero configurarlas",
@@ -1404,18 +822,40 @@ var SETTINGS_PATTERNS = [
1404
822
  "gerenciar cookies",
1405
823
  // French (FR)
1406
824
  "param\xE9trage des cookies",
1407
- "param\xE9trer les cookies",
1408
- "param\xE9trer vos choix",
825
+ "param\xE9trer",
1409
826
  "personnaliser",
827
+ "param\xE8tres",
828
+ "pr\xE9f\xE9rences",
1410
829
  "r\xE9glages",
830
+ "d\xE9tails",
831
+ "gestion des cookies",
832
+ /^gérer (les |mes )?cookies$/,
833
+ "je choisis",
834
+ "voir les pr\xE9f\xE9rences",
1411
835
  // German (DE)
1412
- "datenschutzeinstellungen",
836
+ "abschnitt einzelheiten",
837
+ "cookie-details",
838
+ /^datenschutz-?einstellungen$/,
839
+ "cookie-einstellungen",
840
+ /^einstell(ungen|en) oder ablehnen$/,
841
+ "ausw\xE4hlen",
842
+ /^einstellungen (anpassen|ansehen|verwalten|ändern)$/,
843
+ "erweiterte einstellungen",
844
+ "individuelle datenschutz-pr\xE4ferenzen",
845
+ "individuelle datenschutzeinstellungen",
846
+ "konfigurieren",
847
+ "mehr optionen",
848
+ "pr\xE4ferenzen",
1413
849
  "individuelle einstellungen",
1414
850
  "privatsph\xE4re einstellungen",
1415
851
  // Dutch (NL)
852
+ /^(aan|an)passen$/,
853
+ /^cookie[- ]instellingen$/,
1416
854
  "cookiestatement instellingen",
855
+ /^details (tonen|weergeven)$/,
1417
856
  "instellingen",
1418
- "voorkeuren beheren",
857
+ "meer opties",
858
+ "zelf instellen",
1419
859
  // Czech (CS)
1420
860
  "podrobn\xE9 nastaven\xED",
1421
861
  // Polish (PL)
@@ -1427,7 +867,6 @@ var SETTINGS_PATTERNS = [
1427
867
  /^(ustawienia|zmień ustawienia|zmiana ustawień|zarządzaj opcjami)$/,
1428
868
  "centrum preferencji",
1429
869
  /^chcę dokonać ustawień cookies\.$/,
1430
- "dostosuj ustawienia",
1431
870
  "dostosuj wyb\xF3r",
1432
871
  "edytuj ustawienia",
1433
872
  "konfiguracja zg\xF3d",
@@ -1435,19 +874,15 @@ var SETTINGS_PATTERNS = [
1435
874
  "personalizacja",
1436
875
  "poka\u017C cele",
1437
876
  "poka\u017C szczeg\xF3\u0142y",
877
+ "szczeg\xF3\u0142y",
1438
878
  "pozw\xF3l mi wybra\u0107",
1439
- "preferencje cookies",
1440
879
  /^przejdź do ustawień plików cookies\.$/,
1441
880
  "przejd\u017A do ustawie\u0144 prywatno\u015Bci",
1442
881
  "przejd\u017A do ustawie\u0144",
1443
882
  "skonfiguruj",
1444
- "ustaw preferencje",
1445
883
  "ustaw swoje wybory",
1446
884
  "ustawienia ciasteczek",
1447
- "ustawienia dotycz\u0105ce plik\xF3w cookie i us\u0142ug",
1448
- "ustawienia preferencji",
1449
885
  "ustawienia prywatno\u015Bci",
1450
- "ustawienia szczeg\xF3\u0142owe",
1451
886
  "ustawienia zaawansowane",
1452
887
  "ustawienia zgody",
1453
888
  /^ustawienia(ch)?( plików)? cookies?$/,
@@ -1455,11 +890,8 @@ var SETTINGS_PATTERNS = [
1455
890
  "ustawie\u0144 zaawansowanych",
1456
891
  "wi\u0119cej opcji",
1457
892
  "wi\u0119cej ustawie\u0144",
1458
- "wybierz poszczeg\xF3lne cele",
1459
893
  /^wybierz, jakie pliki cookies chcesz zaakceptować\.$/,
1460
894
  "zaawansowane",
1461
- "zarz\u0105dzaj indywidualnymi preferencjami",
1462
- "zarz\u0105dzaj plikami cookie i dowiedz si\u0119 wi\u0119cej",
1463
895
  "zarz\u0105dzaj zgodami dotycz\u0105cymi plik\xF3w cookies",
1464
896
  "zarz\u0105dzaj zgodami",
1465
897
  "zarz\u0105dzania zgodami",
@@ -1476,31 +908,46 @@ var SETTINGS_PATTERNS = [
1476
908
  "\u043D\u0430\u0441\u0442\u0440\u043E\u0438\u0442\u044C \u0444\u0430\u0439\u043B\u044B cookie",
1477
909
  "\u043D\u0430\u0441\u0442\u0440\u043E\u0439\u043A\u0438",
1478
910
  // Italian (IT)
1479
- "personalizza cookie"
911
+ "personalizza cookie",
912
+ // English (EN)
913
+ "advanced settings",
914
+ "consent settings",
915
+ /^details (anzeigen|zeigen|section)$/,
916
+ "no, adjust",
917
+ "personalize",
918
+ "plus doptions",
919
+ "privacy manager"
1480
920
  ];
1481
921
  var ACCEPT_PATTERNS = [
1482
- /^(accept|allow)( all)?( cookies)?$/is,
922
+ // EN accept/agree/allow/consent/enable (+ all/cookies/selection/continue/close/proceed...).
923
+ // The negative lookahead avoids essential-only/reject wording (those are reject).
924
+ /^(?!.*\b(essential|necessary|required|functional|minimal|reject|deny|refuse|decline|only|dismiss)\b)(?!.*all cookies continue)(yes,?\s+)?(i\s+)?(accept|agree|allow|consent|enable)(\s+(to\s+)?(all( cookies)?|cookies|selection|selected( cookies)?|everything|recommended( cookies| settings)?|optional( cookies)?|additional cookies|analytics cookies))?(\s+(and\s+)?(continue|close|proceed|save))?\s*$/is,
925
+ /^continue (and accept|using cookies|with (all|recommended cookies|cookies))$/is,
926
+ // DE accept verbs
927
+ /^(alle[sn]?\s+|allem\s+|ich\s+|cookies\s+|ausgewählte\s+|webanalyse\s+)?(cookies?\s+)?(akzeptieren|annehmen|zustimmen|zulassen|erlauben|einwilligen|aktivieren|auswählen)(\s+(und\s+)?(weiter|schließen))?\s*$/is,
928
+ /^((meine\s+)?auswahl|alle)\s+(bestätigen|akzeptieren|auswählen)$/is,
929
+ /^(alle[nm]?\s+)?(zustimmen|einverstanden|einwilligung|zustimmung)$/is,
930
+ /^ich (bin einverstanden|akzeptiere( alle)?|stimme zu)$/is,
931
+ // NL accept verbs
932
+ /^(ja,?\s+)?(alle[s]?\s+|ik\s+)?(cookies?\s+)?(accepteer|accepteren|toestaan|aanvaard|aanvaarden|ga akkoord|akkoord)(\s+(en\s+(sluiten|doorgaan|verdergaan)|cookies|alle))?\s*$/is,
933
+ /^(selectie (accepteren|toestaan)|accepteer (selectie|alle)|alle (toestaan|accepteren|aanvaarden)|ja, (dat is prima|prima|alles toestaan|accepteren|ik accepteer cookies|ik ga akkoord)|is goed)$/is,
934
+ // FR accept verbs
935
+ /^(oui,?\s+)?(je\s+)?(tout\s+)?(accepter|jaccepte|autoriser)(\s+(tout|tous les (cookies|témoins)|les (cookies|témoins)|la sélection|et (continuer|fermer|poursuivre)))?\s*$/is,
936
+ /^(oui, (jaccepte|je suis daccord)|jaccepte (les cookies|lutilisation de cookies)|accepter (continuer|et poursuivre)|continuer et accepter|fermer et accepter)$/is,
937
+ // ES/CA accept verbs
938
+ /^(sí,?\s+|si,?\s+)?(aceptar|acepta|permitir|permitirlas|consentir|estoy de acuerdo|de acuerdo|estic dacord)(\s+(todo|todas( las cookies)?|cookies|la selección|selección|y (cerrar|continuar|seguir( leyendo)?|leer gratis)))?\s*$/is,
939
+ // save / submit selection / preferences (accept semantics; acknowledge catches "guardar configuración/selección" first)
940
+ /^(save|store|submit|guardar|sauvegarder|zapisz|opslaan|bewaar)\b.{0,25}(preference|setting|selection|choice|mes choix|cookie|voorkeur|keuze|ustawien|zgod)/is,
941
+ /^((meine\s+)?auswahl|einstellungen|einwilligung|voorkeuren|instellingen|selectie|keuzes)\s+(speichern|opslaan)$/is,
1483
942
  /i (accept|allow)( all)?/is,
1484
943
  "yes",
1485
- /^(i )?agree$/is,
1486
- "continue with all",
1487
- "accept and continue",
1488
944
  /accept all above/is,
1489
- /^(accept|agree) and close/is,
1490
- "accept continue",
1491
- "agree proceed",
1492
- "allow and continue",
1493
945
  "close and accept",
1494
946
  /accept all$/is,
1495
947
  "im ok with that",
1496
- "accept optional cookies",
1497
- /^alle (cookies )?akzeptieren$/is,
1498
948
  // Spanish (ES)
1499
- /^(aceptar?|permitir) tod(o|as)$/,
1500
949
  /^acept(ar|o)( cookies)?$/,
1501
950
  /^acept(o|ar) todas las cookies$/,
1502
- "acepta cookies",
1503
- "acepta",
1504
951
  "aceptar cookies opcionales",
1505
952
  "aceptar gratis",
1506
953
  "aceptar las cookies",
@@ -1509,19 +956,10 @@ var ACCEPT_PATTERNS = [
1509
956
  "aceptar todas y continuar",
1510
957
  "aceptar todo y cerrar",
1511
958
  /^aceptar y (continuar|seguir|navegar)( gratis)?$/,
1512
- "aceptar y cerrar",
1513
959
  "aceptar y seguir navegando",
1514
960
  "aceptarlas todas",
1515
- "consentir todo",
1516
- "consentir",
1517
- "de acuerdo y cerrar",
1518
- "de acuerdo",
1519
- "estoy de acuerdo",
961
+ "guardar preferencias",
1520
962
  "ok, las acepto",
1521
- "permitir cookies",
1522
- "permitir todas las cookies",
1523
- "permitir",
1524
- "permitirlas todas",
1525
963
  /^s[íi], acepto todas las cookies$/,
1526
964
  /^s[íi], acepto$/,
1527
965
  /^s[íi], estoy de acuerdo$/,
@@ -1538,6 +976,7 @@ var ACCEPT_PATTERNS = [
1538
976
  "acepta-les totes",
1539
977
  "permet-les totes",
1540
978
  "permetre totes les cookies",
979
+ "permetre la selecci\xF3",
1541
980
  // Basque (EU)
1542
981
  /^denak? onartu$/,
1543
982
  /^onartu \(cookie\)$/,
@@ -1548,18 +987,11 @@ var ACCEPT_PATTERNS = [
1548
987
  "aceitar",
1549
988
  "de acordo",
1550
989
  // French (FR)
1551
- "accepter et continuer",
1552
- "accepter",
1553
- "tout accepter",
990
+ /^accepter (tout|tous les cookies|fermer)$/,
1554
991
  // German (DE)
1555
- "akzeptieren schlie\xDFen",
1556
- "akzeptieren und weiter",
1557
- "akzeptieren weiter",
1558
- "akzeptieren",
1559
- "annehmen",
1560
- "ich stimme zu",
992
+ /^(alles akzeptieren|alle zulassen|auswahl erlauben|cookies zulassen|einverstanden|einwilligung|zustimmen|zustimmung)$/,
1561
993
  // Dutch (NL)
1562
- "accepteren",
994
+ /^(accepteer (alles|alle cookies)|alles (accepteren|toestaan)|alle cookies (accepteren|toestaan))$/,
1563
995
  // Czech (CS)
1564
996
  "souhlas\xEDm",
1565
997
  // Polish (PL)
@@ -1568,6 +1000,7 @@ var ACCEPT_PATTERNS = [
1568
1000
  // akceptuj wszystkie pliki cookie (Accept all cookies)
1569
1001
  /^(zaakceptuj|akceptuj[eę]|akceptuj) ?(wszystkie|wszystko)?( pliki)? ?(zgody|ciasteczka|cookies?)?$/,
1570
1002
  "akceptowanie plik\xF3w cookie",
1003
+ "akceptuj wybrane",
1571
1004
  "akceptuj i zamknij",
1572
1005
  "akceptuj wszystkie i przejd\u017A do serwisu",
1573
1006
  "akceptuj\u0119 i przechodz\u0119 do serwisu",
@@ -1596,11 +1029,15 @@ var ACCEPT_PATTERNS = [
1596
1029
  "zezw\xF3l na wszystkie cookies",
1597
1030
  "zezw\xF3l na wszystkie pliki cookies",
1598
1031
  "zezw\xF3l na wszystkie",
1032
+ "zezw\xF3l na wyb\xF3r",
1599
1033
  "zezw\xF3l",
1600
1034
  "zgadzam si\u0119 na wszystkie",
1601
1035
  "zgadzam si\u0119",
1602
1036
  "zgoda na wszystkie",
1603
1037
  "zgoda",
1038
+ "zaakceptuj wybrane",
1039
+ "zezw\xF3l na wybrane",
1040
+ "zgoda na wybrane",
1604
1041
  // Russian (RU)
1605
1042
  "\u043F\u0440\u0438\u043D\u044F\u0442\u044C \u0432\u0441\u0435 \u0444\u0430\u0439\u043B\u044B cookie",
1606
1043
  "\u043F\u0440\u0438\u043D\u044F\u0442\u044C",
@@ -1611,62 +1048,53 @@ var ACCEPT_PATTERNS = [
1611
1048
  "accetta tutti i cookie"
1612
1049
  ];
1613
1050
  var ACKNOWLEDGE_PATTERNS = [
1614
- "ok",
1615
- "close",
1051
+ // close / dismiss the banner/dialog/message (multilingual). The negative lookahead avoids
1052
+ // accept/save phrases (e.g. "agree and close", "akkoord en sluiten", "speichern schließen").
1053
+ /^(?!.*\b(accept\w*|accepter|accepteer|accepteren|agree|allow|akkoord|aanvaard\w*|zustimm\w*|annehm\w*|akzeptier\w*|aceptar|acepta|permit\w*|consent\w*|einverstanden|zezw\w*|zgadzam|zgoda|guardar|opslaan|enregistrer|speicher\w*|zapisz)\b)(x\s+|nee,?\s+)?(close|dismiss|schlie(ß|ss)en|sluiten|afsluiten|fermer|cerrar|tanca|beenden|masquer|zamknij)( (this|the|ce|le|el|de|des|het|la|een)?\s*(banner|bandeau|banier|bar|dialog|dialogue|window|okno|melding|message|notification|informa\w*|notificaci\w*|cookie\w*|bannière|rgpd|gdpr|hier|des cookies|de cookies|x))*\.?\s*$/is,
1054
+ // "ok" / "okay" / "oké" (optionally followed by a short acknowledgement)
1055
+ /^(ok|okay|oké|okey|k)([ .!,]*)(got it|verstanden|compris|rozumiem|thanks|gracias|ik begrijp( dat| het)?|continue to website|pour moi|fermer)?[ .!]*$/is,
1056
+ // "understood" / "got it" / "that's ok" (multilingual)
1057
+ /^(i understand|understood|got it|thats (ok|fine|okay)|alright|alles klar|in ordnung|verstanden|begrepen|jai compris|je comprends|compris|ik begrijp het|ik snap het|entendido|c(e)?st ok pour moi)[ !.,]*(merci|bedankt|dismiss this banner)?[ !.]*$/is,
1058
+ // confirm
1059
+ /^(confirm|bestätigen|bevestigen|confirmar|potwierdź)[ !.]*$/is,
1060
+ // neutral "continue" without accept/reject wording
1061
+ /^(continuer|doorgaan|ga verder)$/is,
1616
1062
  "continue",
1617
1063
  "x",
1618
1064
  /^got it!?$/,
1619
- "i understand",
1620
- "dismiss",
1621
- "okay",
1622
1065
  "acknowledge",
1623
1066
  /^close (banner|cookie notification)$/is,
1624
1067
  /understood$/is,
1625
1068
  "confirm my choices",
1069
+ // French (FR)
1070
+ "accepter fermer",
1071
+ // German (DE)
1072
+ "akzeptieren schlie\xDFen",
1073
+ "speichern schlie\xDFen",
1626
1074
  // Spanish (ES)
1627
1075
  /^.?( lo)?(entendido|entiendo).?$/s,
1628
1076
  "aceptar seleccionadas",
1629
- "aceptar selecci\xF3n",
1630
- "cerrar",
1631
- "confirmar",
1632
1077
  "continuar",
1633
1078
  "guardar configuraci\xF3n",
1634
- "guardar preferencias",
1635
1079
  "guardar selecci\xF3n",
1636
1080
  "guardar y cerrar",
1637
1081
  "ir al contenido principal",
1638
- "ok, gracias",
1639
- "permitir la selecci\xF3n",
1640
1082
  "seguir",
1641
1083
  "vale",
1642
1084
  "\xA1vamos!",
1643
1085
  // Catalan (CA)
1644
1086
  "dacord",
1645
- "permetre la selecci\xF3",
1646
1087
  // Polish (PL)
1647
- "akceptuj wybrane",
1648
1088
  "kontynuuj",
1649
1089
  "ok, zrozumia\u0142em",
1650
1090
  /^ok.? rozumiem.?$/s,
1651
- "potwierdzam wybrane",
1652
- "potwierdzam",
1653
- "potwierd\u017A",
1654
1091
  "rozumiem!",
1655
1092
  "rozumiem",
1656
1093
  "rozumiem, nie pokazuj wi\u0119cej",
1657
1094
  "w porz\u0105dku!",
1658
1095
  "w porz\u0105dku",
1659
- "zaakceptuj wybrane",
1660
1096
  /^zamknij informację o( plikach)? cookies$/,
1661
- "zamknij okno",
1662
- "zamknij x",
1663
- "zamknij",
1664
1097
  "zapisz i zamknij",
1665
- "zapisz ustawienia i zamknij",
1666
- "zapisz ustawienia",
1667
- "zezw\xF3l na wybrane",
1668
- "zezw\xF3l na wyb\xF3r",
1669
- "zgoda na wybrane",
1670
1098
  // Russian (RU)
1671
1099
  "\u043F\u043E\u043D\u044F\u0442\u043D\u043E"
1672
1100
  ];