From 85dfd45a9ad75920c4e58604f1186591e00259f5 Mon Sep 17 00:00:00 2001 From: Orest Bida Date: Sat, 22 Apr 2023 12:23:03 +0200 Subject: [PATCH 1/6] Tweak: disable `pointer-events` on focus span --- src/cookieconsent.css | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/cookieconsent.css b/src/cookieconsent.css index 80f40856..15d859c6 100644 --- a/src/cookieconsent.css +++ b/src/cookieconsent.css @@ -142,6 +142,10 @@ border-color: transparent; } +.cc_div .c-bn > span { + pointer-events: none +} + /* Make elements "animatable" */ .c--anim #cm, .c--anim #s-cnt, From f185b6008374f8f4e5fe6d5cec13e81578aed28d Mon Sep 17 00:00:00 2001 From: Orest Bida Date: Sun, 23 Apr 2023 00:19:04 +0200 Subject: [PATCH 2/6] Code refactoring --- dist/cookieconsent.css | 2 +- dist/cookieconsent.js | 2 +- src/cookieconsent.js | 106 +++++++++++++++++++++-------------------- 3 files changed, 56 insertions(+), 54 deletions(-) diff --git a/dist/cookieconsent.css b/dist/cookieconsent.css index 37fe5efd..ae89d242 100644 --- a/dist/cookieconsent.css +++ b/dist/cookieconsent.css @@ -1 +1 @@ -:root{--cc-font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol";--cc-font-size:16px;--cc-bg:#fff;--cc-z-index:2147483647;--cc-text:#2d4156;--cc-border-radius:.45rem;--cc-btn-primary-bg:#2d4156;--cc-btn-primary-text:var(--cc-bg);--cc-btn-primary-hover-bg:#1d2e38;--cc-btn-primary-hover-text:var(--cc-btn-primary-text);--cc-btn-secondary-bg:#eaeff2;--cc-btn-secondary-text:var(--cc-text);--cc-btn-secondary-hover-bg:#d8e0e6;--cc-btn-secondary-hover-text:var(--cc-btn-secondary-text);--cc-btn-border-radius:0.375rem;--cc-toggle-bg-off:#919ea6;--cc-toggle-bg-on:var(--cc-btn-primary-bg);--cc-toggle-bg-readonly:#d5dee2;--cc-toggle-knob-bg:#fff;--cc-toggle-knob-icon-color:#ecf2fa;--cc-block-text:var(--cc-text);--cc-cookie-category-block-bg:#f0f4f7;--cc-cookie-category-block-bg-hover:#e9eff4;--cc-section-border:#f1f3f5;--cc-cookie-table-border:#e9edf2;--cc-overlay-bg:#040608;--cc-overlay-opacity:.85;--cc-consent-modal-box-shadow:0 0.625rem 1.875rem rgba(2,2,3,.28);--cc-webkit-scrollbar-bg:#cfd5db;--cc-webkit-scrollbar-bg-hover:#9199a0}.c_darkmode{--cc-bg:#181b1d;--cc-text:#d8e5ea;--cc-btn-primary-bg:#a6c4dd;--cc-btn-primary-text:#000;--cc-btn-primary-hover-bg:#c2dff7;--cc-btn-primary-hover-text:var(--cc-btn-primary-text);--cc-btn-secondary-bg:#33383c;--cc-btn-secondary-text:var(--cc-text);--cc-btn-secondary-hover-bg:#3e454a;--cc-btn-secondary-hover-text:var(--cc-btn-secondary-text);--cc-toggle-bg-off:#667481;--cc-toggle-bg-on:var(--cc-btn-primary-bg);--cc-toggle-bg-readonly:#454c54;--cc-toggle-knob-bg:var(--cc-cookie-category-block-bg);--cc-toggle-knob-icon-color:var(--cc-bg);--cc-block-text:#b3bfc5;--cc-cookie-category-block-bg:#23272a;--cc-cookie-category-block-bg-hover:#2b3035;--cc-section-border:#292d31;--cc-cookie-table-border:#2b3035;--cc-webkit-scrollbar-bg:#667481;--cc-webkit-scrollbar-bg-hover:#9199a0}#cc--main{z-index:2147483647;z-index:var(--cc-z-index)}.cc_div *,.cc_div :after,.cc_div :before,.cc_div :hover{animation:none;background:none;border:none;border-radius:unset;box-shadow:none;-webkit-box-sizing:border-box;box-sizing:border-box;color:inherit;float:none;font-family:inherit;font-size:1em;font-style:inherit;font-variant:normal;font-weight:inherit;height:auto;letter-spacing:unset;line-height:1.2;margin:0;padding:0;text-align:left;text-decoration:none;text-transform:none;transition:none;vertical-align:baseline;visibility:unset}.cc_div{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;color:#2d4156;color:var(--cc-text);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol;font-family:var(--cc-font-family);font-size:16px;font-size:var(--cc-font-size);font-weight:400;text-rendering:optimizeLegibility}#c-ttl,#s-bl td:before,#s-ttl,.cc_div .b-tl,.cc_div .c-bn{font-weight:600}#cm,#s-bl .act .b-acc,#s-inr,.cc_div .b-tl,.cc_div .c-bl{border-radius:.45rem;border-radius:var(--cc-border-radius)}#s-bl .act .b-acc{border-top-left-radius:0;border-top-right-radius:0}.cc_div a,.cc_div button,.cc_div input{-webkit-appearance:none;-moz-appearance:none;appearance:none;overflow:hidden}.cc_div a{border-bottom:1px solid}.cc_div a:hover{border-color:transparent;text-decoration:none}#cm-ov,#cs-ov,.c--anim #cm,.c--anim #s-cnt,.c--anim #s-inr{transition:visibility .25s linear,opacity .25s ease,transform .25s ease!important}.c--anim .c-bn{transition:background-color .25s ease!important}.c--anim #cm.bar.slide,.c--anim #cm.bar.slide+#cm-ov,.c--anim .bar.slide #s-inr,.c--anim .bar.slide+#cs-ov{transition:visibility .4s ease,opacity .4s ease,transform .4s ease!important}#cm.bar.slide,.cc_div .bar.slide #s-inr{opacity:1;transform:translateX(100%)}#cm.bar.top.slide,.cc_div .bar.left.slide #s-inr{opacity:1;transform:translateX(-100%)}#cm.slide,.cc_div .slide #s-inr{transform:translateY(1.6em)}#cm.top.slide{transform:translateY(-1.6em)}#cm.bar.slide{transform:translateY(100%)}#cm.bar.top.slide{transform:translateY(-100%)}.show--consent .c--anim #cm,.show--consent .c--anim #cm.bar,.show--settings .c--anim #s-inr,.show--settings .c--anim .bar.slide #s-inr{opacity:1;transform:scale(1);visibility:visible!important}.show--consent .c--anim #cm.box.middle,.show--consent .c--anim #cm.cloud.middle{transform:scale(1) translateY(-50%)}.show--settings .c--anim #s-cnt{visibility:visible!important}.force--consent.show--consent .c--anim #cm-ov,.show--settings .c--anim #cs-ov{opacity:.85!important;opacity:var(--cc-overlay-opacity)!important;visibility:visible!important}#cm{background:#fff;background:var(--cc-bg);bottom:1.25em;box-shadow:0 .625em 1.875em #000;box-shadow:0 .625rem 1.875rem rgba(2,2,3,.28);box-shadow:var(--cc-consent-modal-box-shadow);font-family:inherit;line-height:normal;max-width:24.2em;opacity:0;padding:1em 1.4em 1.3em;position:fixed;right:1.25em;transform:scale(.95);visibility:hidden;width:100%;z-index:1}#cc_div #cm{display:block!important}#c-ttl{font-size:1.05em;margin-bottom:.7em}.cloud #c-ttl{margin-top:-.15em}#c-txt{font-size:.9em;line-height:1.5em}.cc_div #c-bns{display:flex;justify-content:space-between;margin-top:1.4em}.cc_div .c-bn{background:#eaeff2;background:var(--cc-btn-secondary-bg);border-radius:.375rem;border-radius:var(--cc-btn-border-radius);color:#2d4156;color:var(--cc-btn-secondary-text);cursor:pointer;display:inline-block;flex:1;font-size:.82em;padding:1em 1.7em;text-align:center;-moz-user-select:none;-khtml-user-select:none;-webkit-user-select:none;-o-user-select:none;user-select:none}#c-bns button+button,#s-c-bn,#s-cnt button+button{float:right;margin-left:.5rem}#s-cnt #s-rall-bn{float:none}#cm .c_link:active,#cm .c_link:hover,#s-c-bn:active,#s-c-bn:hover,#s-cnt button+button:active,#s-cnt button+button:hover{background:#d8e0e6;background:var(--cc-btn-secondary-hover-bg);color:#2d4156;color:var(--cc-btn-secondary-hover-text)}#s-cnt{display:table;height:100%;left:0;position:fixed;top:0;visibility:hidden;width:100%;z-index:101}#s-bl{outline:none;scrollbar-width:thin}#s-bl .title{margin-top:1.4em}#s-bl .b-bn,#s-bl .title:first-child{margin-top:0}#s-bl .b-acc .p{margin-top:0;padding:1em}#s-cnt .b-bn .b-tl{background:none;display:block;font-family:inherit;font-size:.95em;padding:1.3em 6.4em 1.3em 2.7em;position:relative;transition:background-color .25s ease;width:100%}#s-cnt .b-bn .b-tl.exp{cursor:pointer}#s-cnt .act .b-bn .b-tl{border-bottom-left-radius:0;border-bottom-right-radius:0}#s-cnt .b-bn .b-tl:active,#s-cnt .b-bn .b-tl:hover{background:#e9eff4;background:var(--cc-cookie-category-block-bg-hover)}#s-bl .b-bn{position:relative}#s-bl .c-bl{border:1px solid #f1f3f5;border:1px solid var(--cc-section-border);margin-bottom:.4rem;padding:1em;transition:background-color .25s ease}#s-bl .c-bl:hover{background:#f0f4f7;background:var(--cc-cookie-category-block-bg)}#s-bl .c-bl:last-child{margin-bottom:.5em}#s-bl .c-bl:first-child{border:none;margin-bottom:2em;margin-top:0;padding:0;transition:none}#s-bl .c-bl:not(.b-ex):first-child:hover{background:transparent;background:unset}#s-bl .c-bl.b-ex{background:#f0f4f7;background:var(--cc-cookie-category-block-bg);border:none;padding:0;transition:none}#s-bl .c-bl.b-ex+.c-bl{margin-top:2em}#s-bl .c-bl.b-ex+.c-bl.b-ex{margin-top:0}#s-bl .c-bl.b-ex:first-child{margin-bottom:1em;margin-bottom:.5em}#s-bl .b-acc{display:none;margin-bottom:0;max-height:0;overflow:hidden;padding-top:0}#s-bl .act .b-acc{display:block;max-height:100%;overflow:hidden}#s-cnt .p{color:#2d4156;color:var(--cc-block-text);font-size:.9em;line-height:1.5em;margin-top:.85em}.cc_div .b-tg .c-tgl:disabled{cursor:not-allowed}#c-vln{display:table-cell;position:relative;vertical-align:middle}#cs{bottom:0;left:0;padding:0 1.7em;position:fixed;right:0;top:0;width:100%}#cs,#s-inr{height:100%}#s-inr{box-shadow:0 13px 27px -5px rgba(3,6,9,.26);margin:0 auto;max-width:45em;opacity:0;overflow:hidden;padding-bottom:4.75em;padding-top:4.75em;position:relative;transform:scale(.96);visibility:hidden}#s-bns,#s-hdr,#s-inr{background:#fff;background:var(--cc-bg)}#s-bl{display:block;height:100%;overflow-x:hidden;overflow-y:auto;overflow-y:overlay;padding:1.3em 1.6em;width:100%}#s-bns{border-top:1px solid #f1f3f5;border-top:1px solid var(--cc-section-border);bottom:0;height:4.75em;left:0;padding:1em 1.8em;position:absolute;right:0}.cc_div .cc-link{border-bottom:1px solid #2d4156;border-bottom:1px solid var(--cc-btn-primary-bg);color:#2d4156;color:var(--cc-btn-primary-bg);cursor:pointer;display:inline;font-weight:600;padding-bottom:0;text-decoration:none}.cc_div .cc-link:active,.cc_div .cc-link:hover{border-color:transparent}#c-bns button:first-child,#s-bns button:first-child{background:#2d4156;background:var(--cc-btn-primary-bg);color:#fff;color:var(--cc-btn-primary-text)}#c-bns.swap button:first-child{background:#eaeff2;background:var(--cc-btn-secondary-bg);color:#2d4156;color:var(--cc-btn-secondary-text)}#c-bns.swap button:last-child{background:#2d4156;background:var(--cc-btn-primary-bg);color:#fff;color:var(--cc-btn-primary-text)}.cc_div .b-tg .c-tgl:checked~.c-tg{background:#2d4156;background:var(--cc-toggle-bg-on)}#c-bns button:first-child:active,#c-bns button:first-child:hover,#c-bns.swap button:last-child:active,#c-bns.swap button:last-child:hover,#s-bns button:first-child:active,#s-bns button:first-child:hover{background:#1d2e38;background:var(--cc-btn-primary-hover-bg);color:#fff;color:var(--cc-btn-primary-hover-text)}#c-bns.swap button:first-child:active,#c-bns.swap button:first-child:hover{background:#d8e0e6;background:var(--cc-btn-secondary-hover-bg);color:#2d4156;color:var(--cc-btn-secondary-hover-text)}#s-hdr{border-bottom:1px solid #f1f3f5;border-bottom:1px solid var(--cc-section-border);display:table;height:4.75em;padding:0 1.8em;position:absolute;top:0;width:100%;z-index:2}#s-hdr,#s-ttl{vertical-align:middle}#s-ttl{display:table-cell;font-size:1em}#s-c-bn{font-size:1.45em;font-weight:400;height:1.7em;margin:0;overflow:hidden;padding:0;position:relative;width:1.7em}#s-c-bnc{display:table-cell;vertical-align:middle}.cc_div span.t-lb{opacity:0;overflow:hidden;pointer-events:none;position:absolute;top:0;z-index:-1}#c_policy__text{height:31.25em;margin-top:1.25em;overflow-y:auto}#c-s-in{height:100%;height:calc(100% - 2.5em);max-height:37.5em;position:relative;top:50%;transform:translateY(-50%)}@media screen and (min-width:688px){#s-bl::-webkit-scrollbar{background:transparent;border-radius:0 .25em .25em 0;height:100%;width:.8em}#s-bl::-webkit-scrollbar-thumb{background:#cfd5db;background:var(--cc-webkit-scrollbar-bg);border:.25em solid #fff;border:.25em solid var(--cc-bg);border-radius:100em}#s-bl::-webkit-scrollbar-thumb:hover{background:#9199a0;background:var(--cc-webkit-scrollbar-bg-hover)}#s-bl::-webkit-scrollbar-button{height:5px;width:10px}}.cc_div .b-tg{bottom:0;display:inline-block;margin:auto;right:0;right:1.2em;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;vertical-align:middle}.cc_div .b-tg,.cc_div .b-tg .c-tgl{cursor:pointer;position:absolute;top:0}.cc_div .b-tg .c-tgl{border:0;display:block;left:0;margin:0}.cc_div .b-tg .c-tg{background:#919ea6;background:var(--cc-toggle-bg-off);pointer-events:none;position:absolute;transition:background-color .25s ease,box-shadow .25s ease}.cc_div .b-tg,.cc_div .b-tg .c-tg,.cc_div .b-tg .c-tgl,.cc_div span.t-lb{border-radius:4em;height:1.5em;width:3.4em}.cc_div .b-tg .c-tg.c-ro{cursor:not-allowed}.cc_div .b-tg .c-tgl~.c-tg.c-ro{background:#d5dee2;background:var(--cc-toggle-bg-readonly)}.cc_div .b-tg .c-tgl~.c-tg.c-ro:after{box-shadow:none}.cc_div .b-tg .c-tg:after{background:#fff;background:var(--cc-toggle-knob-bg);border:none;border-radius:100%;box-shadow:0 1px 2px rgba(24,32,35,.36);box-sizing:content-box;content:"";display:block;height:1.25em;left:.125em;position:relative;top:.125em;transition:transform .25s ease;width:1.25em}.cc_div .b-tg .c-tgl:checked~.c-tg:after{transform:translateX(1.9em)}#s-bl table,#s-bl td,#s-bl th{border:none}#s-bl tbody tr{transition:background-color .25s ease}#s-bl tbody tr:hover{background:#e9eff4;background:var(--cc-cookie-category-block-bg-hover)}#s-bl table{border-collapse:collapse;margin:0;overflow:hidden;padding:0;text-align:left;width:100%}#s-bl caption{border-bottom:1px solid #e9edf2;border-bottom:1px solid var(--cc-cookie-table-border);font-size:.9em;font-weight:600;padding:.5rem 1rem}#s-bl td,#s-bl th{font-size:.8em;padding:.8em .625em .8em 1.2em;text-align:left;vertical-align:top}#s-bl th{font-family:inherit;font-weight:600;padding:1em 1rem}#s-bl thead tr:first-child{border-bottom:1px solid #e9edf2;border-bottom:1px solid var(--cc-cookie-table-border)}.force--consent #cs,.force--consent #s-cnt{width:100vw}#cm-ov,#cs-ov{background:#070707;background:#040608;background:var(--cc-overlay-bg);bottom:0;display:none;left:0;opacity:0;position:fixed;right:0;top:0;transition:none;visibility:hidden}.c--anim #cs-ov,.force--consent .c--anim #cm-ov,.force--consent.show--consent #cm-ov,.show--settings #cs-ov{display:block}#cs-ov{z-index:2}.force--consent .cc_div{bottom:0;left:0;position:fixed;top:0;transition:visibility .25s linear;visibility:hidden;width:100%;width:100vw}.force--consent.show--consent .c--anim .cc_div,.force--consent.show--settings .c--anim .cc_div{visibility:visible}.force--consent #cm{position:absolute}.force--consent #cm.bar{max-width:100vw;width:100vw}html.force--consent.show--consent{overflow-y:hidden!important}html.force--consent.show--consent,html.force--consent.show--consent body{height:auto!important;overflow-x:hidden!important}.cc_div .act .b-bn .exp:before,.cc_div .b-bn .exp:before{border:solid #2d4156;border:solid var(--cc-btn-secondary-text);border-width:0 2px 2px 0;content:"";display:inline-block;left:1.2em;margin-right:15px;padding:.2em;position:absolute;top:50%;transform:translateY(-50%) rotate(45deg)}.cc_div .act .b-bn .b-tl:before{transform:translateY(-20%) rotate(225deg)}.cc_div .on-i:before{border:solid #ecf2fa;border:solid var(--cc-toggle-knob-icon-color);border-width:0 2px 2px 0;display:inline-block;left:.75em;padding:.1em .1em .45em;top:.37em}#s-c-bn:after,#s-c-bn:before,.cc_div .on-i:before{content:"";margin:0 auto;position:absolute;transform:rotate(45deg)}#s-c-bn:after,#s-c-bn:before{background:#2d4156;background:var(--cc-btn-secondary-text);border-radius:1em;height:.6em;left:.82em;top:.58em;width:1.5px}#s-c-bn:after{transform:rotate(-45deg)}.cc_div .off-i,.cc_div .on-i{display:block;height:100%;position:absolute;right:0;text-align:center;transition:opacity .15s ease;width:50%}.cc_div .on-i{left:0;opacity:0}.cc_div .off-i:after,.cc_div .off-i:before{background:#ecf2fa;background:var(--cc-toggle-knob-icon-color);content:" ";display:block;height:.7em;margin:0 auto;position:absolute;right:.8em;top:.42em;transform-origin:center;width:.09375em}.cc_div .off-i:before{transform:rotate(45deg)}.cc_div .off-i:after{transform:rotate(-45deg)}.cc_div .b-tg .c-tgl:checked~.c-tg .on-i{opacity:1}.cc_div .b-tg .c-tgl:checked~.c-tg .off-i{opacity:0}#cm.box.middle,#cm.cloud.middle{bottom:auto;top:50%;transform:translateY(-37%)}#cm.box.middle.zoom,#cm.cloud.middle.zoom{transform:scale(.95) translateY(-50%)}#cm.box.center,#cm.cloud{left:1em;margin:0 auto;right:1em}#cm.cloud{max-width:50em;overflow:hidden;padding:1.2em 1.7em;text-align:center;width:unset}.cc_div .cloud #c-inr{display:table;width:100%}.cc_div .cloud #c-inr-i{display:table-cell;padding-right:2.4em;vertical-align:top;width:70%}.cc_div .cloud #c-txt{font-size:.85em}.cc_div .cloud #c-bns{display:table-cell;min-width:170px;vertical-align:middle}#cm.cloud .c-bn{margin:.5rem 0 0;width:100%}#cm.cloud .c-bn:first-child{margin:0}#cm.cloud.left{margin-right:1.25em}#cm.cloud.right{margin-left:1.25em}#cm.bar{border-radius:0;bottom:0;left:0;max-width:100%;padding:2em;position:fixed;right:0;width:100%}#cm.bar #c-inr{margin:0 auto;max-width:32em}#cm.bar #c-bns{max-width:33.75em}#cm.bar #cs{padding:0}.cc_div .bar #c-s-in{height:100%;max-height:100%;top:0;transform:none}.cc_div .bar #s-bl,.cc_div .bar #s-bns,.cc_div .bar #s-hdr{padding-left:1.4em;padding-right:1.4em}.cc_div .bar #cs{padding:0}.cc_div .bar #s-inr{border-radius:0;margin:0 0 0 auto;max-width:32em}.cc_div .bar.left #s-inr{margin-left:0;margin-right:auto}.cc_div .bar #s-bl table,.cc_div .bar #s-bl tbody,.cc_div .bar #s-bl td,.cc_div .bar #s-bl th,.cc_div .bar #s-bl thead,.cc_div .bar #s-bl tr,.cc_div .bar #s-cnt{display:block}.cc_div .bar #s-bl caption{border-bottom:1px solid #e9edf2;border-bottom:1px solid var(--cc-cookie-table-border);border-top:0;display:block}.cc_div .bar #s-bl thead tr{left:-9999px;position:absolute;top:-9999px}.cc_div .bar #s-bl tr{border-top:1px solid #e9edf2;border-top:1px solid var(--cc-cookie-table-border)}.cc_div .bar #s-bl td{border:none;padding-left:35%;position:relative}.cc_div .bar #s-bl td:before{color:#2d4156;color:var(--cc-text);content:attr(data-column);left:1rem;overflow:hidden;padding-right:.625em;position:absolute;text-overflow:ellipsis;white-space:nowrap}#cm.top{bottom:auto;top:1.25em}#cm.left{left:1.25em;right:auto}#cm.right{left:auto;right:1.25em}#cm.bar.left,#cm.bar.right{left:0;right:0}#cm.bar.top{top:0}@media (prefers-reduced-motion){#cc--main #cm,#cc--main #s-cnt,#cc--main #s-inr{transition:none!important}}@media screen and (max-width:688px){#cm,#cm.cloud,#cm.left,#cm.right{bottom:1em;display:block;left:1em;margin:0;max-width:100%;padding:1.2em!important;right:1em;width:auto}.force--consent #cm,.force--consent #cm.cloud{max-width:100vw;width:auto}#cm.top{bottom:auto;top:1em}#cm.bottom{bottom:1em;top:auto}#cm.bar.bottom{bottom:0}#cm.cloud .c-bn{font-size:.85em}#s-bns,.cc_div .bar #s-bns{padding:1em 1.3em}.cc_div .bar #s-inr{max-width:100%;width:100%}.cc_div .cloud #c-inr-i{padding-right:0}#cs{border-radius:0;padding:0}#c-s-in{height:100%;max-height:100%;top:0;transform:none}.cc_div .b-tg{right:1.1em;transform:scale(1.1)}#s-inr{border-radius:0;margin:0;padding-bottom:7.9em}#s-bns{height:7.9em}#s-bl,.cc_div .bar #s-bl{padding:1.2em}#s-hdr,.cc_div .bar #s-hdr{padding:0 1.2em}#s-bl table{width:100%}#s-inr.bns-t{padding-bottom:10.5em}.bns-t #s-bns{height:10.5em}.cc_div .bns-t .c-bn{font-size:.83em;padding:.9em 1.6em}#s-cnt .b-bn .b-tl{padding-bottom:1.2em;padding-top:1.2em}#s-bl table,#s-bl tbody,#s-bl td,#s-bl th,#s-bl thead,#s-bl tr,#s-cnt{display:block}#s-bl caption{border-bottom:0;display:block}#s-bl thead tr{left:-9999px;position:absolute;top:-9999px}#s-bl tr{border-top:1px solid #e9edf2;border-top:1px solid var(--cc-cookie-table-border)}#s-bl td{border:none;padding-left:35%;position:relative}#s-bl td:before{color:#2d4156;color:var(--cc-text);content:attr(data-column);left:1rem;overflow:hidden;padding-right:.625em;position:absolute;text-overflow:ellipsis;white-space:nowrap}#cm .c-bn,.cc_div .c-bn{margin-right:0;width:100%}#s-cnt #s-rall-bn{margin-left:0}.cc_div #c-bns{flex-direction:column}#c-bns button+button,#s-cnt button+button{float:unset;margin-left:0;margin-top:.625em}#cm.box,#cm.cloud{left:1em;right:1em;width:auto}#cm.cloud.left,#cm.cloud.right{margin:0}.cc_div .cloud #c-bns,.cc_div .cloud #c-inr,.cc_div .cloud #c-inr-i{display:block;min-width:unset;width:auto}.cc_div .cloud #c-txt{font-size:.9em}.cc_div .cloud #c-bns{margin-top:1.625em}} \ No newline at end of file +:root{--cc-font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol";--cc-font-size:16px;--cc-bg:#fff;--cc-z-index:2147483647;--cc-text:#2d4156;--cc-border-radius:.45rem;--cc-btn-primary-bg:#2d4156;--cc-btn-primary-text:var(--cc-bg);--cc-btn-primary-hover-bg:#1d2e38;--cc-btn-primary-hover-text:var(--cc-btn-primary-text);--cc-btn-secondary-bg:#eaeff2;--cc-btn-secondary-text:var(--cc-text);--cc-btn-secondary-hover-bg:#d8e0e6;--cc-btn-secondary-hover-text:var(--cc-btn-secondary-text);--cc-btn-border-radius:0.375rem;--cc-toggle-bg-off:#919ea6;--cc-toggle-bg-on:var(--cc-btn-primary-bg);--cc-toggle-bg-readonly:#d5dee2;--cc-toggle-knob-bg:#fff;--cc-toggle-knob-icon-color:#ecf2fa;--cc-block-text:var(--cc-text);--cc-cookie-category-block-bg:#f0f4f7;--cc-cookie-category-block-bg-hover:#e9eff4;--cc-section-border:#f1f3f5;--cc-cookie-table-border:#e9edf2;--cc-overlay-bg:#040608;--cc-overlay-opacity:.85;--cc-consent-modal-box-shadow:0 0.625rem 1.875rem rgba(2,2,3,.28);--cc-webkit-scrollbar-bg:#cfd5db;--cc-webkit-scrollbar-bg-hover:#9199a0}.c_darkmode{--cc-bg:#181b1d;--cc-text:#d8e5ea;--cc-btn-primary-bg:#a6c4dd;--cc-btn-primary-text:#000;--cc-btn-primary-hover-bg:#c2dff7;--cc-btn-primary-hover-text:var(--cc-btn-primary-text);--cc-btn-secondary-bg:#33383c;--cc-btn-secondary-text:var(--cc-text);--cc-btn-secondary-hover-bg:#3e454a;--cc-btn-secondary-hover-text:var(--cc-btn-secondary-text);--cc-toggle-bg-off:#667481;--cc-toggle-bg-on:var(--cc-btn-primary-bg);--cc-toggle-bg-readonly:#454c54;--cc-toggle-knob-bg:var(--cc-cookie-category-block-bg);--cc-toggle-knob-icon-color:var(--cc-bg);--cc-block-text:#b3bfc5;--cc-cookie-category-block-bg:#23272a;--cc-cookie-category-block-bg-hover:#2b3035;--cc-section-border:#292d31;--cc-cookie-table-border:#2b3035;--cc-webkit-scrollbar-bg:#667481;--cc-webkit-scrollbar-bg-hover:#9199a0}#cc--main{z-index:2147483647;z-index:var(--cc-z-index)}.cc_div *,.cc_div :after,.cc_div :before,.cc_div :hover{animation:none;background:none;border:none;border-radius:unset;box-shadow:none;-webkit-box-sizing:border-box;box-sizing:border-box;color:inherit;float:none;font-family:inherit;font-size:1em;font-style:inherit;font-variant:normal;font-weight:inherit;height:auto;letter-spacing:unset;line-height:1.2;margin:0;padding:0;text-align:left;text-decoration:none;text-transform:none;transition:none;vertical-align:baseline;visibility:unset}.cc_div{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;color:#2d4156;color:var(--cc-text);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol;font-family:var(--cc-font-family);font-size:16px;font-size:var(--cc-font-size);font-weight:400;text-rendering:optimizeLegibility}#c-ttl,#s-bl td:before,#s-ttl,.cc_div .b-tl,.cc_div .c-bn{font-weight:600}#cm,#s-bl .act .b-acc,#s-inr,.cc_div .b-tl,.cc_div .c-bl{border-radius:.45rem;border-radius:var(--cc-border-radius)}#s-bl .act .b-acc{border-top-left-radius:0;border-top-right-radius:0}.cc_div a,.cc_div button,.cc_div input{-webkit-appearance:none;-moz-appearance:none;appearance:none;overflow:hidden}.cc_div a{border-bottom:1px solid}.cc_div a:hover{border-color:transparent;text-decoration:none}.cc_div .c-bn>span{pointer-events:none}#cm-ov,#cs-ov,.c--anim #cm,.c--anim #s-cnt,.c--anim #s-inr{transition:visibility .25s linear,opacity .25s ease,transform .25s ease!important}.c--anim .c-bn{transition:background-color .25s ease!important}.c--anim #cm.bar.slide,.c--anim #cm.bar.slide+#cm-ov,.c--anim .bar.slide #s-inr,.c--anim .bar.slide+#cs-ov{transition:visibility .4s ease,opacity .4s ease,transform .4s ease!important}#cm.bar.slide,.cc_div .bar.slide #s-inr{opacity:1;transform:translateX(100%)}#cm.bar.top.slide,.cc_div .bar.left.slide #s-inr{opacity:1;transform:translateX(-100%)}#cm.slide,.cc_div .slide #s-inr{transform:translateY(1.6em)}#cm.top.slide{transform:translateY(-1.6em)}#cm.bar.slide{transform:translateY(100%)}#cm.bar.top.slide{transform:translateY(-100%)}.show--consent .c--anim #cm,.show--consent .c--anim #cm.bar,.show--settings .c--anim #s-inr,.show--settings .c--anim .bar.slide #s-inr{opacity:1;transform:scale(1);visibility:visible!important}.show--consent .c--anim #cm.box.middle,.show--consent .c--anim #cm.cloud.middle{transform:scale(1) translateY(-50%)}.show--settings .c--anim #s-cnt{visibility:visible!important}.force--consent.show--consent .c--anim #cm-ov,.show--settings .c--anim #cs-ov{opacity:.85!important;opacity:var(--cc-overlay-opacity)!important;visibility:visible!important}#cm{background:#fff;background:var(--cc-bg);bottom:1.25em;box-shadow:0 .625em 1.875em #000;box-shadow:0 .625rem 1.875rem rgba(2,2,3,.28);box-shadow:var(--cc-consent-modal-box-shadow);font-family:inherit;line-height:normal;max-width:24.2em;opacity:0;padding:1em 1.4em 1.3em;position:fixed;right:1.25em;transform:scale(.95);visibility:hidden;width:100%;z-index:1}#cc_div #cm{display:block!important}#c-ttl{font-size:1.05em;margin-bottom:.7em}.cloud #c-ttl{margin-top:-.15em}#c-txt{font-size:.9em;line-height:1.5em}.cc_div #c-bns{display:flex;justify-content:space-between;margin-top:1.4em}.cc_div .c-bn{background:#eaeff2;background:var(--cc-btn-secondary-bg);border-radius:.375rem;border-radius:var(--cc-btn-border-radius);color:#2d4156;color:var(--cc-btn-secondary-text);cursor:pointer;display:inline-block;flex:1;font-size:.82em;padding:1em 1.7em;text-align:center;-moz-user-select:none;-khtml-user-select:none;-webkit-user-select:none;-o-user-select:none;user-select:none}#c-bns button+button,#s-c-bn,#s-cnt button+button{float:right;margin-left:.5rem}#s-cnt #s-rall-bn{float:none}#cm .c_link:active,#cm .c_link:hover,#s-c-bn:active,#s-c-bn:hover,#s-cnt button+button:active,#s-cnt button+button:hover{background:#d8e0e6;background:var(--cc-btn-secondary-hover-bg);color:#2d4156;color:var(--cc-btn-secondary-hover-text)}#s-cnt{display:table;height:100%;left:0;position:fixed;top:0;visibility:hidden;width:100%;z-index:101}#s-bl{outline:none;scrollbar-width:thin}#s-bl .title{margin-top:1.4em}#s-bl .b-bn,#s-bl .title:first-child{margin-top:0}#s-bl .b-acc .p{margin-top:0;padding:1em}#s-cnt .b-bn .b-tl{background:none;display:block;font-family:inherit;font-size:.95em;padding:1.3em 6.4em 1.3em 2.7em;position:relative;transition:background-color .25s ease;width:100%}#s-cnt .b-bn .b-tl.exp{cursor:pointer}#s-cnt .act .b-bn .b-tl{border-bottom-left-radius:0;border-bottom-right-radius:0}#s-cnt .b-bn .b-tl:active,#s-cnt .b-bn .b-tl:hover{background:#e9eff4;background:var(--cc-cookie-category-block-bg-hover)}#s-bl .b-bn{position:relative}#s-bl .c-bl{border:1px solid #f1f3f5;border:1px solid var(--cc-section-border);margin-bottom:.4rem;padding:1em;transition:background-color .25s ease}#s-bl .c-bl:hover{background:#f0f4f7;background:var(--cc-cookie-category-block-bg)}#s-bl .c-bl:last-child{margin-bottom:.5em}#s-bl .c-bl:first-child{border:none;margin-bottom:2em;margin-top:0;padding:0;transition:none}#s-bl .c-bl:not(.b-ex):first-child:hover{background:transparent;background:unset}#s-bl .c-bl.b-ex{background:#f0f4f7;background:var(--cc-cookie-category-block-bg);border:none;padding:0;transition:none}#s-bl .c-bl.b-ex+.c-bl{margin-top:2em}#s-bl .c-bl.b-ex+.c-bl.b-ex{margin-top:0}#s-bl .c-bl.b-ex:first-child{margin-bottom:1em;margin-bottom:.5em}#s-bl .b-acc{display:none;margin-bottom:0;max-height:0;overflow:hidden;padding-top:0}#s-bl .act .b-acc{display:block;max-height:100%;overflow:hidden}#s-cnt .p{color:#2d4156;color:var(--cc-block-text);font-size:.9em;line-height:1.5em;margin-top:.85em}.cc_div .b-tg .c-tgl:disabled{cursor:not-allowed}#c-vln{display:table-cell;position:relative;vertical-align:middle}#cs{bottom:0;left:0;padding:0 1.7em;position:fixed;right:0;top:0;width:100%}#cs,#s-inr{height:100%}#s-inr{box-shadow:0 13px 27px -5px rgba(3,6,9,.26);margin:0 auto;max-width:45em;opacity:0;overflow:hidden;padding-bottom:4.75em;padding-top:4.75em;position:relative;transform:scale(.96);visibility:hidden}#s-bns,#s-hdr,#s-inr{background:#fff;background:var(--cc-bg)}#s-bl{display:block;height:100%;overflow-x:hidden;overflow-y:auto;overflow-y:overlay;padding:1.3em 1.6em;width:100%}#s-bns{border-top:1px solid #f1f3f5;border-top:1px solid var(--cc-section-border);bottom:0;height:4.75em;left:0;padding:1em 1.8em;position:absolute;right:0}.cc_div .cc-link{border-bottom:1px solid #2d4156;border-bottom:1px solid var(--cc-btn-primary-bg);color:#2d4156;color:var(--cc-btn-primary-bg);cursor:pointer;display:inline;font-weight:600;padding-bottom:0;text-decoration:none}.cc_div .cc-link:active,.cc_div .cc-link:hover{border-color:transparent}#c-bns button:first-child,#s-bns button:first-child{background:#2d4156;background:var(--cc-btn-primary-bg);color:#fff;color:var(--cc-btn-primary-text)}#c-bns.swap button:first-child{background:#eaeff2;background:var(--cc-btn-secondary-bg);color:#2d4156;color:var(--cc-btn-secondary-text)}#c-bns.swap button:last-child{background:#2d4156;background:var(--cc-btn-primary-bg);color:#fff;color:var(--cc-btn-primary-text)}.cc_div .b-tg .c-tgl:checked~.c-tg{background:#2d4156;background:var(--cc-toggle-bg-on)}#c-bns button:first-child:active,#c-bns button:first-child:hover,#c-bns.swap button:last-child:active,#c-bns.swap button:last-child:hover,#s-bns button:first-child:active,#s-bns button:first-child:hover{background:#1d2e38;background:var(--cc-btn-primary-hover-bg);color:#fff;color:var(--cc-btn-primary-hover-text)}#c-bns.swap button:first-child:active,#c-bns.swap button:first-child:hover{background:#d8e0e6;background:var(--cc-btn-secondary-hover-bg);color:#2d4156;color:var(--cc-btn-secondary-hover-text)}#s-hdr{border-bottom:1px solid #f1f3f5;border-bottom:1px solid var(--cc-section-border);display:table;height:4.75em;padding:0 1.8em;position:absolute;top:0;width:100%;z-index:2}#s-hdr,#s-ttl{vertical-align:middle}#s-ttl{display:table-cell;font-size:1em}#s-c-bn{font-size:1.45em;font-weight:400;height:1.7em;margin:0;overflow:hidden;padding:0;position:relative;width:1.7em}#s-c-bnc{display:table-cell;vertical-align:middle}.cc_div span.t-lb{opacity:0;overflow:hidden;pointer-events:none;position:absolute;top:0;z-index:-1}#c_policy__text{height:31.25em;margin-top:1.25em;overflow-y:auto}#c-s-in{height:100%;height:calc(100% - 2.5em);max-height:37.5em;position:relative;top:50%;transform:translateY(-50%)}@media screen and (min-width:688px){#s-bl::-webkit-scrollbar{background:transparent;border-radius:0 .25em .25em 0;height:100%;width:.8em}#s-bl::-webkit-scrollbar-thumb{background:#cfd5db;background:var(--cc-webkit-scrollbar-bg);border:.25em solid #fff;border:.25em solid var(--cc-bg);border-radius:100em}#s-bl::-webkit-scrollbar-thumb:hover{background:#9199a0;background:var(--cc-webkit-scrollbar-bg-hover)}#s-bl::-webkit-scrollbar-button{height:5px;width:10px}}.cc_div .b-tg{bottom:0;display:inline-block;margin:auto;right:0;right:1.2em;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;vertical-align:middle}.cc_div .b-tg,.cc_div .b-tg .c-tgl{cursor:pointer;position:absolute;top:0}.cc_div .b-tg .c-tgl{border:0;display:block;left:0;margin:0}.cc_div .b-tg .c-tg{background:#919ea6;background:var(--cc-toggle-bg-off);pointer-events:none;position:absolute;transition:background-color .25s ease,box-shadow .25s ease}.cc_div .b-tg,.cc_div .b-tg .c-tg,.cc_div .b-tg .c-tgl,.cc_div span.t-lb{border-radius:4em;height:1.5em;width:3.4em}.cc_div .b-tg .c-tg.c-ro{cursor:not-allowed}.cc_div .b-tg .c-tgl~.c-tg.c-ro{background:#d5dee2;background:var(--cc-toggle-bg-readonly)}.cc_div .b-tg .c-tgl~.c-tg.c-ro:after{box-shadow:none}.cc_div .b-tg .c-tg:after{background:#fff;background:var(--cc-toggle-knob-bg);border:none;border-radius:100%;box-shadow:0 1px 2px rgba(24,32,35,.36);box-sizing:content-box;content:"";display:block;height:1.25em;left:.125em;position:relative;top:.125em;transition:transform .25s ease;width:1.25em}.cc_div .b-tg .c-tgl:checked~.c-tg:after{transform:translateX(1.9em)}#s-bl table,#s-bl td,#s-bl th{border:none}#s-bl tbody tr{transition:background-color .25s ease}#s-bl tbody tr:hover{background:#e9eff4;background:var(--cc-cookie-category-block-bg-hover)}#s-bl table{border-collapse:collapse;margin:0;overflow:hidden;padding:0;text-align:left;width:100%}#s-bl caption{border-bottom:1px solid #e9edf2;border-bottom:1px solid var(--cc-cookie-table-border);font-size:.9em;font-weight:600;padding:.5rem 1rem}#s-bl td,#s-bl th{font-size:.8em;padding:.8em .625em .8em 1.2em;text-align:left;vertical-align:top}#s-bl th{font-family:inherit;font-weight:600;padding:1em 1rem}#s-bl thead tr:first-child{border-bottom:1px solid #e9edf2;border-bottom:1px solid var(--cc-cookie-table-border)}.force--consent #cs,.force--consent #s-cnt{width:100vw}#cm-ov,#cs-ov{background:#070707;background:#040608;background:var(--cc-overlay-bg);bottom:0;display:none;left:0;opacity:0;position:fixed;right:0;top:0;transition:none;visibility:hidden}.c--anim #cs-ov,.force--consent .c--anim #cm-ov,.force--consent.show--consent #cm-ov,.show--settings #cs-ov{display:block}#cs-ov{z-index:2}.force--consent .cc_div{bottom:0;left:0;position:fixed;top:0;transition:visibility .25s linear;visibility:hidden;width:100%;width:100vw}.force--consent.show--consent .c--anim .cc_div,.force--consent.show--settings .c--anim .cc_div{visibility:visible}.force--consent #cm{position:absolute}.force--consent #cm.bar{max-width:100vw;width:100vw}html.force--consent.show--consent{overflow-y:hidden!important}html.force--consent.show--consent,html.force--consent.show--consent body{height:auto!important;overflow-x:hidden!important}.cc_div .act .b-bn .exp:before,.cc_div .b-bn .exp:before{border:solid #2d4156;border:solid var(--cc-btn-secondary-text);border-width:0 2px 2px 0;content:"";display:inline-block;left:1.2em;margin-right:15px;padding:.2em;position:absolute;top:50%;transform:translateY(-50%) rotate(45deg)}.cc_div .act .b-bn .b-tl:before{transform:translateY(-20%) rotate(225deg)}.cc_div .on-i:before{border:solid #ecf2fa;border:solid var(--cc-toggle-knob-icon-color);border-width:0 2px 2px 0;display:inline-block;left:.75em;padding:.1em .1em .45em;top:.37em}#s-c-bn:after,#s-c-bn:before,.cc_div .on-i:before{content:"";margin:0 auto;position:absolute;transform:rotate(45deg)}#s-c-bn:after,#s-c-bn:before{background:#2d4156;background:var(--cc-btn-secondary-text);border-radius:1em;height:.6em;left:.82em;top:.58em;width:1.5px}#s-c-bn:after{transform:rotate(-45deg)}.cc_div .off-i,.cc_div .on-i{display:block;height:100%;position:absolute;right:0;text-align:center;transition:opacity .15s ease;width:50%}.cc_div .on-i{left:0;opacity:0}.cc_div .off-i:after,.cc_div .off-i:before{background:#ecf2fa;background:var(--cc-toggle-knob-icon-color);content:" ";display:block;height:.7em;margin:0 auto;position:absolute;right:.8em;top:.42em;transform-origin:center;width:.09375em}.cc_div .off-i:before{transform:rotate(45deg)}.cc_div .off-i:after{transform:rotate(-45deg)}.cc_div .b-tg .c-tgl:checked~.c-tg .on-i{opacity:1}.cc_div .b-tg .c-tgl:checked~.c-tg .off-i{opacity:0}#cm.box.middle,#cm.cloud.middle{bottom:auto;top:50%;transform:translateY(-37%)}#cm.box.middle.zoom,#cm.cloud.middle.zoom{transform:scale(.95) translateY(-50%)}#cm.box.center,#cm.cloud{left:1em;margin:0 auto;right:1em}#cm.cloud{max-width:50em;overflow:hidden;padding:1.2em 1.7em;text-align:center;width:unset}.cc_div .cloud #c-inr{display:table;width:100%}.cc_div .cloud #c-inr-i{display:table-cell;padding-right:2.4em;vertical-align:top;width:70%}.cc_div .cloud #c-txt{font-size:.85em}.cc_div .cloud #c-bns{display:table-cell;min-width:170px;vertical-align:middle}#cm.cloud .c-bn{margin:.5rem 0 0;width:100%}#cm.cloud .c-bn:first-child{margin:0}#cm.cloud.left{margin-right:1.25em}#cm.cloud.right{margin-left:1.25em}#cm.bar{border-radius:0;bottom:0;left:0;max-width:100%;padding:2em;position:fixed;right:0;width:100%}#cm.bar #c-inr{margin:0 auto;max-width:32em}#cm.bar #c-bns{max-width:33.75em}#cm.bar #cs{padding:0}.cc_div .bar #c-s-in{height:100%;max-height:100%;top:0;transform:none}.cc_div .bar #s-bl,.cc_div .bar #s-bns,.cc_div .bar #s-hdr{padding-left:1.4em;padding-right:1.4em}.cc_div .bar #cs{padding:0}.cc_div .bar #s-inr{border-radius:0;margin:0 0 0 auto;max-width:32em}.cc_div .bar.left #s-inr{margin-left:0;margin-right:auto}.cc_div .bar #s-bl table,.cc_div .bar #s-bl tbody,.cc_div .bar #s-bl td,.cc_div .bar #s-bl th,.cc_div .bar #s-bl thead,.cc_div .bar #s-bl tr,.cc_div .bar #s-cnt{display:block}.cc_div .bar #s-bl caption{border-bottom:1px solid #e9edf2;border-bottom:1px solid var(--cc-cookie-table-border);border-top:0;display:block}.cc_div .bar #s-bl thead tr{left:-9999px;position:absolute;top:-9999px}.cc_div .bar #s-bl tr{border-top:1px solid #e9edf2;border-top:1px solid var(--cc-cookie-table-border)}.cc_div .bar #s-bl td{border:none;padding-left:35%;position:relative}.cc_div .bar #s-bl td:before{color:#2d4156;color:var(--cc-text);content:attr(data-column);left:1rem;overflow:hidden;padding-right:.625em;position:absolute;text-overflow:ellipsis;white-space:nowrap}#cm.top{bottom:auto;top:1.25em}#cm.left{left:1.25em;right:auto}#cm.right{left:auto;right:1.25em}#cm.bar.left,#cm.bar.right{left:0;right:0}#cm.bar.top{top:0}@media (prefers-reduced-motion){#cc--main #cm,#cc--main #s-cnt,#cc--main #s-inr{transition:none!important}}@media screen and (max-width:688px){#cm,#cm.cloud,#cm.left,#cm.right{bottom:1em;display:block;left:1em;margin:0;max-width:100%;padding:1.2em!important;right:1em;width:auto}.force--consent #cm,.force--consent #cm.cloud{max-width:100vw;width:auto}#cm.top{bottom:auto;top:1em}#cm.bottom{bottom:1em;top:auto}#cm.bar.bottom{bottom:0}#cm.cloud .c-bn{font-size:.85em}#s-bns,.cc_div .bar #s-bns{padding:1em 1.3em}.cc_div .bar #s-inr{max-width:100%;width:100%}.cc_div .cloud #c-inr-i{padding-right:0}#cs{border-radius:0;padding:0}#c-s-in{height:100%;max-height:100%;top:0;transform:none}.cc_div .b-tg{right:1.1em;transform:scale(1.1)}#s-inr{border-radius:0;margin:0;padding-bottom:7.9em}#s-bns{height:7.9em}#s-bl,.cc_div .bar #s-bl{padding:1.2em}#s-hdr,.cc_div .bar #s-hdr{padding:0 1.2em}#s-bl table{width:100%}#s-inr.bns-t{padding-bottom:10.5em}.bns-t #s-bns{height:10.5em}.cc_div .bns-t .c-bn{font-size:.83em;padding:.9em 1.6em}#s-cnt .b-bn .b-tl{padding-bottom:1.2em;padding-top:1.2em}#s-bl table,#s-bl tbody,#s-bl td,#s-bl th,#s-bl thead,#s-bl tr,#s-cnt{display:block}#s-bl caption{border-bottom:0;display:block}#s-bl thead tr{left:-9999px;position:absolute;top:-9999px}#s-bl tr{border-top:1px solid #e9edf2;border-top:1px solid var(--cc-cookie-table-border)}#s-bl td{border:none;padding-left:35%;position:relative}#s-bl td:before{color:#2d4156;color:var(--cc-text);content:attr(data-column);left:1rem;overflow:hidden;padding-right:.625em;position:absolute;text-overflow:ellipsis;white-space:nowrap}#cm .c-bn,.cc_div .c-bn{margin-right:0;width:100%}#s-cnt #s-rall-bn{margin-left:0}.cc_div #c-bns{flex-direction:column}#c-bns button+button,#s-cnt button+button{float:unset;margin-left:0;margin-top:.625em}#cm.box,#cm.cloud{left:1em;right:1em;width:auto}#cm.cloud.left,#cm.cloud.right{margin:0}.cc_div .cloud #c-bns,.cc_div .cloud #c-inr,.cc_div .cloud #c-inr-i{display:block;min-width:unset;width:auto}.cc_div .cloud #c-txt{font-size:.9em}.cc_div .cloud #c-bns{margin-top:1.625em}} \ No newline at end of file diff --git a/dist/cookieconsent.js b/dist/cookieconsent.js index 3b8d990f..e09fdb2e 100644 --- a/dist/cookieconsent.js +++ b/dist/cookieconsent.js @@ -4,4 +4,4 @@ * Author Orest Bida * Released under the MIT License */ -!function(){'use strict';var n='initCookieConsent';'undefined'!=typeof window&&'function'!=typeof window[n]&&(window[n]=function(n){var t,e,o,i,r,a,c,u,f,d,v,l,s,p,b,m,y,g,h,_,w,k,x,O,j,S,J,N,T,D,C,U,z,I,R,A={mode:'opt-in',current_lang:'en',auto_language:null,autorun:!0,page_scripts:!0,hide_from_bots:!0,cookie_name:'cc_cookie',cookie_expiration:182,cookie_domain:location.hostname,cookie_path:'/',cookie_same_site:'Lax',use_rfc_cookie:!1,autoclear_cookies:!0,revision:0,script_selector:'data-cookiecategory'},E={},G={},L=null,M=!0,P=!1,q=!1,B=!1,F=!1,H=!0,K=[],Q=!1,V=[],W=[],X=[],Y=!1,Z=[],$=[],nn=[],tn=[],en=[],on=document.documentElement,rn=function(n){'number'==typeof(t=n).cookie_expiration&&(A.cookie_expiration=t.cookie_expiration),'number'==typeof t.cookie_necessary_only_expiration&&(A.cookie_necessary_only_expiration=t.cookie_necessary_only_expiration),'boolean'==typeof t.autorun&&(A.autorun=t.autorun),'string'==typeof t.cookie_domain&&(A.cookie_domain=t.cookie_domain),'string'==typeof t.cookie_same_site&&(A.cookie_same_site=t.cookie_same_site),'string'==typeof t.cookie_path&&(A.cookie_path=t.cookie_path),'string'==typeof t.cookie_name&&(A.cookie_name=t.cookie_name),'function'==typeof t.onAccept&&(v=t.onAccept),'function'==typeof t.onFirstAction&&(s=t.onFirstAction),'function'==typeof t.onChange&&(l=t.onChange),'opt-out'===t.mode&&(A.mode='opt-out'),'number'==typeof t.revision&&(t.revision>-1&&(A.revision=t.revision),F=!0),'boolean'==typeof t.autoclear_cookies&&(A.autoclear_cookies=t.autoclear_cookies),!0===t.use_rfc_cookie&&(A.use_rfc_cookie=!0),'boolean'==typeof t.hide_from_bots&&(A.hide_from_bots=t.hide_from_bots),A.hide_from_bots&&(Y=navigator&&(navigator.userAgent&&/bot|crawl|spider|slurp|teoma/i.test(navigator.userAgent)||navigator.webdriver)),A.page_scripts=!0===t.page_scripts,'browser'===t.auto_language||!0===t.auto_language?A.auto_language='browser':'document'===t.auto_language&&(A.auto_language='document'),A.auto_language,A.current_lang=sn(t.languages,t.current_lang)},an=function(n){for(var t='accept-',e=c('c-settings'),o=c(t+'all'),i=c(t+'necessary'),r=c(t+'custom'),a=0;a0?Object.prototype.hasOwnProperty.call(t,A.current_lang)?A.current_lang:kn(t)[0]:void 0},un=function(n){if(!0===t.force_consent&&xn(on,'force--consent'),!h){h=ln('div');var e=ln('div'),o=ln('div');h.id='cm',e.id='c-inr-i',o.id='cm-ov',h.tabIndex=-1,h.setAttribute('role','dialog'),h.setAttribute('aria-modal','true'),h.setAttribute('aria-hidden','false'),h.setAttribute('aria-labelledby','c-ttl'),h.setAttribute('aria-describedby','c-txt'),g.appendChild(h),g.appendChild(o),h.style.visibility=o.style.visibility='hidden',o.style.opacity=0}var i=t.languages[n].consent_modal.title;i&&(_||((_=ln('div')).id='c-ttl',_.setAttribute('role','heading'),_.setAttribute('aria-level','2'),e.appendChild(_)),_.innerHTML=i);var r=t.languages[n].consent_modal.description;F&&(r=H?r.replace('{{revision_message}}',''):r.replace('{{revision_message}}',t.languages[n].consent_modal.revision_message||'')),w||((w=ln('div')).id='c-txt',e.appendChild(w)),w.innerHTML=r;var a,c=t.languages[n].consent_modal.primary_btn,u=t.languages[n].consent_modal.secondary_btn;c&&(k||((k=ln('button')).id='c-p-bn',k.className='c-bn',k.appendChild(Sn(1)),'accept_all'===c.role&&(a='all'),wn(k,'click',(function(){E.hide(),E.accept(a)}))),k.firstElementChild.innerHTML=t.languages[n].consent_modal.primary_btn.text),u&&(x||((x=ln('button')).id='c-s-bn',x.className='c-bn c_link',x.appendChild(Sn(1)),'accept_necessary'===u.role?wn(x,'click',(function(){E.hide(),E.accept([])})):wn(x,'click',(function(){E.showSettings(0)}))),x.firstElementChild.innerHTML=t.languages[n].consent_modal.secondary_btn.text);var f=t.gui_options;j||((j=ln('div')).id='c-inr',j.appendChild(e)),O||((O=ln('div')).id='c-bns',f&&f.consent_modal&&!0===f.consent_modal.swap_buttons?(u&&O.appendChild(x),c&&O.appendChild(k),O.className='swap'):(c&&O.appendChild(k),u&&O.appendChild(x)),(c||u)&&j.appendChild(O),h.appendChild(j)),P=!0,an(j)},fn=function(n){if(S)(C=ln('div')).id='s-bl';else{(S=ln('div')).tabIndex=-1;var e=ln('div'),o=ln('div'),i=ln('div');J=ln('div'),N=ln('div');var r=ln('div');(T=ln('button')).appendChild(Sn(2));var a=ln('div');D=ln('div');var c=ln('div');S.id='s-cnt',e.id='c-vln',i.id='c-s-in',o.id='cs',N.id='s-ttl',J.id='s-inr',r.id='s-hdr',D.id='s-bl',T.id='s-c-bn',c.id='cs-ov',a.id='s-c-bnc',T.className='c-bn',S.setAttribute('role','dialog'),S.setAttribute('aria-modal','true'),S.setAttribute('aria-hidden','true'),S.setAttribute('aria-labelledby','s-ttl'),N.setAttribute('role','heading'),S.style.visibility=c.style.visibility='hidden',c.style.opacity=0,a.appendChild(T),wn(document,'keydown',(function(n){27===n.keyCode&&B&&E.hideSettings()}),!0),wn(T,'click',(function(){E.hideSettings()}))}var u=t.languages[n].settings_modal;T.setAttribute('aria-label',u.close_btn_label||'Close'),d=u.blocks,f=u.cookie_table_headers;var v=u.cookie_table_caption,l=d.length;N.innerHTML=u.title;for(var s=0;s-1?(P.checked=!0,!C&&nn.push(!0)):!C&&nn.push(!1),!C&&tn.push(Q),m.readonly?(P.disabled=!0,xn(q,'c-ro'),!C&&en.push(!0)):!C&&en.push(!1),xn(k,'b-acc'),xn(O,'b-bn'),xn(w,'b-ex'),k.id=j,k.setAttribute('aria-hidden','true'),L.appendChild(P),L.appendChild(q),L.appendChild(F),O.appendChild(L),_&&function(n,t,e){wn(A,'click',(function(){jn(t,'act')?(On(t,'act'),e.setAttribute('aria-expanded','false'),n.setAttribute('aria-hidden','true')):(xn(t,'act'),e.setAttribute('aria-expanded','true'),n.setAttribute('aria-hidden','false'))}),!1)}(k,w,A)}else if(p){var V=ln('div');V.className='b-tl',V.setAttribute('role','heading'),V.setAttribute('aria-level','3'),V.insertAdjacentHTML('beforeend',p),O.appendChild(V)}if(p&&w.appendChild(O),b&&k.appendChild(x),!h&&void 0!==y){for(var W=document.createDocumentFragment(),Y=0;Y-1;if(!nn[++e]&&Object.prototype.hasOwnProperty.call(c,'cookie_table')&&(n||u)){var v=c.cookie_table,l=kn(f[0])[0],s=v.length;'on_disable'===c.toggle.reload&&u&&(Q=!0);for(var p=0;p-1&&y.push(o[x])}y.length>0&&(_n(y,w,b),'on_clear'===c.toggle.reload&&(Q=!0))}}}}},vn=function(n,t){return n.indexOf(t)},ln=function(n){var t=document.createElement(n);return'button'===n&&t.setAttribute('type',n),t},sn=function(n,t){return'browser'===A.auto_language?cn(pn(),n):'document'===A.auto_language?cn(document.documentElement.lang,n):'string'==typeof t?A.current_lang=cn(t,n):(A.current_lang,A.current_lang)},pn=function(){var n=navigator.language||navigator.browserLanguage;return n.length>2&&(n=n[0]+n[1]),n.toLowerCase()};E.allowedCategory=function(n){if(M&&'opt-in'!==A.mode)t=X;else var t=JSON.parse(hn(A.cookie_name,'one',!0)||'{}').categories||[];return vn(t,n)>-1},E.run=function(t){if(!document.getElementById('cc_div')){if(rn(t),Y)return;G=JSON.parse(hn(A.cookie_name,'one',!0)||'{}');var c=void 0!==(i=G.consent_uuid);if((e=G.consent_date)&&(e=new Date(e)),(o=G.last_consent_update)&&(o=new Date(o)),L=void 0!==G.data?G.data:null,F&&G.revision!==A.revision&&(H=!1),P=M=!(c&&H&&e&&o&&i),function(){(y=ln('div')).id='cc--main',y.style.position='fixed',y.innerHTML='
',g=y.children[0];var t=A.current_lang;P&&un(t),fn(t),(n||document.body).appendChild(y)}(),function(){var n=['[href]','button','input','details','[tabindex="0"]'];function t(t,e){var o=!1,i=!1;try{for(var r,a=t.querySelectorAll(n.join(':not([tabindex="-1"]), ')),c=a.length,u=0;u-1&&(xn(n,i),('bar'!==i||'middle'!==r[0])&&vn(e,r[0])>-1))for(var c=0;c-1&&xn(n,a)}}(t.gui_options),an(),A.autorun&&P&&E.show(t.delay||0),setTimeout((function(){xn(y,'c--anim')}),30),setTimeout((function(){wn(document,'keydown',(function(n){if('Tab'===n.key&&(q||B)&&r){var t=document.activeElement;n.shiftKey?t!==r[0]&&a.contains(t)||(n.preventDefault(),Jn(r[1])):document.activeElement!==r[1]&&a.contains(t)||(n.preventDefault(),Jn(r[0]))}})),document.contains&&wn(S,'click',(function(n){B&&(J.contains(n.target)||E.hideSettings())}),!0)}),100),M)'opt-out'===A.mode&&(A.mode,bn(X));else{var u='boolean'==typeof G.rfc_cookie;(!u||u&&G.rfc_cookie!==A.use_rfc_cookie)&&(G.rfc_cookie=A.use_rfc_cookie,gn(A.cookie_name,JSON.stringify(G))),p=yn(mn()),bn(),'function'==typeof v&&v(G)}}};var bn=function(n){if(A.page_scripts){var t=document.querySelectorAll('script['+A.script_selector+']'),e=n||G.categories||[],o=function(n,t){if(t-1){i.type=i.getAttribute('data-type')||'text/javascript',i.removeAttribute(A.script_selector);var a=i.getAttribute('data-src');a&&i.removeAttribute('data-src');var c=ln('script');if(c.textContent=i.innerHTML,function(n,t){for(var e=t.attributes,o=e.length,i=0;i0)for(var r=0;r0?n:t?30:0))},E.hide=function(){P&&(q=!1,Jn(c),h.setAttribute('aria-hidden','true'),On(on,'show--consent'),b&&(Jn(b),b=null))},E.showSettings=function(n){B=!0,S.removeAttribute('aria-hidden'),q?m=document.activeElement:b=document.activeElement,a=S,r=$,setTimeout((function(){xn(on,'show--settings')}),n>0?n:0)},E.hideSettings=function(){B=!1,Nn(),Jn(u),S.setAttribute('aria-hidden','true'),On(on,'show--settings'),q?(m&&(Jn(m),m=null),a=h,r=Z):b&&(Jn(b),b=null)},E.accept=function(n,t){var r=n||void 0,a=t||[],c=[];if(r)if('object'==typeof r&&'number'==typeof r.length)for(var u=0;u=1)for(u=0;u0)for(var r=0;r0&&dn(),e||(e=new Date),i||(i=([1e7]+-1e3+-4e3+-8e3+-1e11).replace(/[018]/g,(function(n){try{return(n^(window.crypto||window.msCrypto).getRandomValues(new Uint8Array(1))[0]&15>>n/4).toString(16)}catch(n){return''}}))),G={categories:n,level:n,revision:A.revision,data:L,rfc_cookie:A.use_rfc_cookie,consent_date:e.toISOString(),consent_uuid:i},(M||K.length>0)&&(H=!0,o=o?new Date:e,G.last_consent_update=o.toISOString(),p=yn(mn()),gn(A.cookie_name,JSON.stringify(G)),bn()),M&&(A.autoclear_cookies&&dn(!0),'function'==typeof s&&s(E.getUserPreferences(),G),'function'==typeof v&&v(G),M=!1,'opt-in'===A.mode)||('function'==typeof l&&K.length>0&&l(G,K),Q&&location.reload())}(c)},E.eraseCookies=function(n,t,e){var o=[],i=e?[e,'.'+e]:[A.cookie_domain,'.'+A.cookie_domain];if('object'==typeof n&&n.length>0)for(var r=0;r-1&&A.cookie_domain&&(i+=' Domain='+A.cookie_domain+';'),'https:'===location.protocol&&(i+=' Secure;'),document.cookie=i},hn=function(n,t,e){var o;if('one'===t){if((o=(o=document.cookie.match('(^|;)\\s*'+n+'\\s*=\\s*([^;]+)'))?e?o.pop():n:'')&&n===A.cookie_name){try{o=JSON.parse(o)}catch(n){try{o=JSON.parse(decodeURIComponent(o))}catch(n){o={}}}o=JSON.stringify(o)}}else if('all'===t){var i=document.cookie.split(/;\s*/);o=[];for(var r=0;r-1;n[t].checked=o||E.allowedCategory(e)}};return E})}(); \ No newline at end of file +!function(){'use strict';var n='initCookieConsent';'undefined'!=typeof window&&'function'!=typeof window[n]&&(window[n]=function(n){var t,e,o,i,r,a,c,f,u,d,v,l,s,p,b,m,y,g,h,_,w,k,x,S,J,O,j,N,T,D,C,U,z,E,I,L={mode:'opt-in',current_lang:'en',auto_language:null,autorun:!0,page_scripts:!0,hide_from_bots:!0,cookie_name:'cc_cookie',cookie_expiration:182,cookie_domain:location.hostname,cookie_path:'/',cookie_same_site:'Lax',use_rfc_cookie:!1,autoclear_cookies:!0,revision:0,script_selector:'data-cookiecategory'},M={},R={},A=null,G=!0,H=!1,P=!1,q=!1,B=!1,F=!0,K=[],Q=!1,V=[],W=[],X=[],Y=!1,Z=[],$=[],nn=[],tn=[],en=[],on=document.documentElement,rn=function(n){'number'==typeof(t=n).cookie_expiration&&(L.cookie_expiration=t.cookie_expiration),'number'==typeof t.cookie_necessary_only_expiration&&(L.cookie_necessary_only_expiration=t.cookie_necessary_only_expiration),'boolean'==typeof t.autorun&&(L.autorun=t.autorun),'string'==typeof t.cookie_domain&&(L.cookie_domain=t.cookie_domain),'string'==typeof t.cookie_same_site&&(L.cookie_same_site=t.cookie_same_site),'string'==typeof t.cookie_path&&(L.cookie_path=t.cookie_path),'string'==typeof t.cookie_name&&(L.cookie_name=t.cookie_name),'function'==typeof t.onAccept&&(v=t.onAccept),'function'==typeof t.onFirstAction&&(s=t.onFirstAction),'function'==typeof t.onChange&&(l=t.onChange),'opt-out'===t.mode&&(L.mode='opt-out'),'number'==typeof t.revision&&(t.revision>-1&&(L.revision=t.revision),B=!0),'boolean'==typeof t.autoclear_cookies&&(L.autoclear_cookies=t.autoclear_cookies),!0===t.use_rfc_cookie&&(L.use_rfc_cookie=!0),'boolean'==typeof t.hide_from_bots&&(L.hide_from_bots=t.hide_from_bots),L.hide_from_bots&&(Y=navigator&&(navigator.userAgent&&/bot|crawl|spider|slurp|teoma/i.test(navigator.userAgent)||navigator.webdriver)),L.page_scripts=!0===t.page_scripts,'browser'===t.auto_language||!0===t.auto_language?L.auto_language='browser':'document'===t.auto_language&&(L.auto_language='document'),L.auto_language,L.current_lang=sn(t.languages,t.current_lang)},an=function(n){for(var t='accept-',e=c('c-settings'),o=c(t+'all'),i=c(t+'necessary'),r=c(t+'custom'),a=0;a0?t.hasOwnProperty(L.current_lang)?L.current_lang:kn(t)[0]:void 0},fn=function(n){if(!0===t.force_consent&&xn(on,'force--consent'),!h){h=ln('div');var e=ln('div'),o=ln('div');h.id='cm',e.id='c-inr-i',o.id='cm-ov',h.tabIndex=-1,h.setAttribute('role','dialog'),h.setAttribute('aria-modal','true'),h.setAttribute('aria-hidden','false'),h.setAttribute('aria-labelledby','c-ttl'),h.setAttribute('aria-describedby','c-txt'),g.appendChild(h),g.appendChild(o),h.style.visibility=o.style.visibility='hidden',o.style.opacity=0}var i=t.languages[n].consent_modal.title;i&&(_||((_=ln('div')).id='c-ttl',_.setAttribute('role','heading'),_.setAttribute('aria-level','2'),e.appendChild(_)),_.innerHTML=i);var r=t.languages[n].consent_modal.description;B&&(r=F?r.replace('{{revision_message}}',''):r.replace('{{revision_message}}',t.languages[n].consent_modal.revision_message||'')),w||((w=ln('div')).id='c-txt',e.appendChild(w)),w.innerHTML=r;var a,c=t.languages[n].consent_modal.primary_btn,f=t.languages[n].consent_modal.secondary_btn;c&&(k||((k=ln('button')).id='c-p-bn',k.className='c-bn',k.appendChild(On(1)),'accept_all'===c.role&&(a='all'),wn(k,'click',(function(){M.hide(),M.accept(a)}))),k.firstElementChild.innerHTML=t.languages[n].consent_modal.primary_btn.text),f&&(x||((x=ln('button')).id='c-s-bn',x.className='c-bn c_link',x.appendChild(On(1)),'accept_necessary'===f.role?wn(x,'click',(function(){M.hide(),M.accept([])})):wn(x,'click',(function(){M.showSettings(0)}))),x.firstElementChild.innerHTML=t.languages[n].consent_modal.secondary_btn.text);var u=t.gui_options;J||((J=ln('div')).id='c-inr',J.appendChild(e)),S||((S=ln('div')).id='c-bns',u&&u.consent_modal&&!0===u.consent_modal.swap_buttons?(f&&S.appendChild(x),c&&S.appendChild(k),S.className='swap'):(c&&S.appendChild(k),f&&S.appendChild(x)),(c||f)&&J.appendChild(S),h.appendChild(J)),H=!0,an(J)},un=function(n){if(O)(C=ln('div')).id='s-bl';else{(O=ln('div')).tabIndex=-1;var e=ln('div'),o=ln('div'),i=ln('div');j=ln('div'),N=ln('div');var r=ln('div');(T=ln('button')).appendChild(On(2));var a=ln('div');D=ln('div');var c=ln('div');wn(i,'click',(function(n){q&&!j.contains(n.target)&&M.hideSettings()}),!0),O.id='s-cnt',e.id='c-vln',i.id='c-s-in',o.id='cs',N.id='s-ttl',j.id='s-inr',r.id='s-hdr',D.id='s-bl',T.id='s-c-bn',c.id='cs-ov',a.id='s-c-bnc',T.className='c-bn',O.setAttribute('role','dialog'),O.setAttribute('aria-modal','true'),O.setAttribute('aria-hidden','true'),O.setAttribute('aria-labelledby','s-ttl'),N.setAttribute('role','heading'),O.style.visibility=c.style.visibility='hidden',c.style.opacity=0,a.appendChild(T),wn(document,'keydown',(function(n){27===n.keyCode&&q&&M.hideSettings()}),!0),wn(T,'click',(function(){M.hideSettings()}))}var f=t.languages[n].settings_modal;T.setAttribute('aria-label',f.close_btn_label||'Close'),d=f.blocks,u=f.cookie_table_headers;var v=f.cookie_table_caption,l=d.length;N.innerHTML=f.title;for(var s=0;s-1?(H.checked=!0,!C&&nn.push(!0)):!C&&nn.push(!1),!C&&tn.push(Q),m.readonly?(H.disabled=!0,xn(P,'c-ro'),!C&&en.push(!0)):!C&&en.push(!1),xn(k,'b-acc'),xn(S,'b-bn'),xn(w,'b-ex'),k.id=J,k.setAttribute('aria-hidden','true'),A.appendChild(H),A.appendChild(P),A.appendChild(B),S.appendChild(A),_&&function(n,t,e){wn(L,'click',(function(){Jn(t,'act')?(Sn(t,'act'),e.setAttribute('aria-expanded','false'),n.setAttribute('aria-hidden','true')):(xn(t,'act'),e.setAttribute('aria-expanded','true'),n.setAttribute('aria-hidden','false'))}),!1)}(k,w,L)}else if(p){var V=ln('div');V.className='b-tl',V.setAttribute('role','heading'),V.setAttribute('aria-level','3'),V.insertAdjacentHTML('beforeend',p),S.appendChild(V)}if(p&&w.appendChild(S),b&&k.appendChild(x),!h&&void 0!==y){for(var W=document.createDocumentFragment(),Y=0;Y-1;if(!nn[++e]&&c.hasOwnProperty('cookie_table')&&(n||f)){var v=c.cookie_table,l=kn(u[0])[0],s=v.length;'on_disable'===c.toggle.reload&&f&&(Q=!0);for(var p=0;p-1&&y.push(o[x])}y.length>0&&(_n(y,w,b),'on_clear'===c.toggle.reload&&(Q=!0))}}}}},vn=function(n,t){return n.indexOf(t)},ln=function(n){var t=document.createElement(n);return'button'===n&&t.setAttribute('type',n),t},sn=function(n,t){return'browser'===L.auto_language?cn(pn(),n):'document'===L.auto_language?cn(document.documentElement.lang,n):'string'==typeof t?L.current_lang=cn(t,n):(L.current_lang,L.current_lang)},pn=function(){var n=navigator.language||navigator.browserLanguage;return n.length>2&&(n=n[0]+n[1]),n.toLowerCase()};M.allowedCategory=function(n){if(G&&'opt-in'!==L.mode)t=X;else var t=JSON.parse(hn(L.cookie_name,'one',!0)||'{}').categories||[];return vn(t,n)>-1},M.run=function(t){if(!document.getElementById('cc_div')){if(rn(t),Y)return;R=JSON.parse(hn(L.cookie_name,'one',!0)||'{}');var c=void 0!==(i=R.consent_uuid);if((e=R.consent_date)&&(e=new Date(e)),(o=R.last_consent_update)&&(o=new Date(o)),A=void 0!==R.data?R.data:null,B&&R.revision!==L.revision&&(F=!1),H=G=!(c&&F&&e&&o&&i),function(){(y=ln('div')).id='cc--main',y.style.position='fixed',y.innerHTML='
',g=y.children[0];var t=L.current_lang;H&&fn(t),un(t),(n||document.body).appendChild(y)}(),function(){var n=['[href]','button','input','details','[tabindex="0"]'];function t(t,e){var o=!1,i=!1;try{for(var r,a=t.querySelectorAll(n.join(':not([tabindex="-1"]), ')),c=a.length,f=0;f-1&&(xn(n,i),('bar'!==i||'middle'!==r[0])&&vn(e,r[0])>-1))for(var c=0;c-1&&xn(n,a)}}(t.gui_options),an(),L.autorun&&H&&M.show(t.delay||0),setTimeout((function(){xn(y,'c--anim')}),30),setTimeout((function(){wn(document,'keydown',(function(n){if('Tab'===n.key&&(P||q)&&r){var t=Tn();n.shiftKey?t!==r[0]&&a.contains(t)||(n.preventDefault(),jn(r[1])):t!==r[1]&&a.contains(t)||(n.preventDefault(),jn(r[0]))}}))}),100),G)'opt-out'===L.mode&&(L.mode,bn(X));else{var f='boolean'==typeof R.rfc_cookie;(!f||f&&R.rfc_cookie!==L.use_rfc_cookie)&&(R.rfc_cookie=L.use_rfc_cookie,gn(L.cookie_name,JSON.stringify(R))),p=yn(mn()),bn(),'function'==typeof v&&v(R)}}};var bn=function(n){if(L.page_scripts){var t=document.querySelectorAll('script['+L.script_selector+']'),e=n||R.categories||[],o=function(n,t){if(t-1){i.type=i.getAttribute('data-type')||'text/javascript',i.removeAttribute(L.script_selector);var a=i.getAttribute('data-src');a&&i.removeAttribute('data-src');var c=ln('script');if(c.textContent=i.innerHTML,function(n,t){for(var e=t.attributes,o=e.length,i=0;i0)for(var r=0;r0?n:t?30:0))},M.hide=function(){H&&(P=!1,jn(c),h.setAttribute('aria-hidden','true'),Sn(on,'show--consent'),jn(b),b=null)},M.showSettings=function(n){q=!0,O.removeAttribute('aria-hidden'),P?m=Tn():b=Tn(),a=O,r=$,setTimeout((function(){xn(on,'show--settings')}),n>0?n:0)},M.hideSettings=function(){q=!1,Nn(),jn(f),O.setAttribute('aria-hidden','true'),Sn(on,'show--settings'),P?(jn(m),m=null,a=h,r=Z):(jn(b),b=null)},M.accept=function(n,t){var r=n||void 0,a=t||[],c=[];if(r)if('object'==typeof r&&'number'==typeof r.length)for(var f=0;f=1)for(f=0;f0)for(var r=0;r0&&dn(),e||(e=new Date),i||(i=([1e7]+-1e3+-4e3+-8e3+-1e11).replace(/[018]/g,(function(n){try{return(n^(window.crypto||window.msCrypto).getRandomValues(new Uint8Array(1))[0]&15>>n/4).toString(16)}catch(n){return''}}))),R={categories:n,level:n,revision:L.revision,data:A,rfc_cookie:L.use_rfc_cookie,consent_date:e.toISOString(),consent_uuid:i},(G||K.length>0)&&(F=!0,o=o?new Date:e,R.last_consent_update=o.toISOString(),p=yn(mn()),gn(L.cookie_name,JSON.stringify(R)),bn()),G&&(L.autoclear_cookies&&dn(!0),'function'==typeof s&&s(M.getUserPreferences(),R),'function'==typeof v&&v(R),G=!1,'opt-in'===L.mode)||('function'==typeof l&&K.length>0&&l(R,K),Q&&location.reload())}(c)},M.eraseCookies=function(n,t,e){var o=[],i=e?[e,'.'+e]:[L.cookie_domain,'.'+L.cookie_domain];if('object'==typeof n&&n.length>0)for(var r=0;r-1&&L.cookie_domain&&(i+=' Domain='+L.cookie_domain+';'),'https:'===location.protocol&&(i+=' Secure;'),document.cookie=i},hn=function(n,t,e){var o;if('one'===t){if((o=(o=document.cookie.match('(^|;)\\s*'+n+'\\s*=\\s*([^;]+)'))?e?o.pop():n:'')&&n===L.cookie_name){try{o=JSON.parse(o)}catch(n){try{o=JSON.parse(decodeURIComponent(o))}catch(n){o={}}}o=JSON.stringify(o)}}else if('all'===t){var i=document.cookie.split(/;\s*/);o=[];for(var r=0;r-1;n[t].checked=o||M.allowedCategory(e)}},Tn=function(){return document.activeElement};return M})}(); \ No newline at end of file diff --git a/src/cookieconsent.js b/src/cookieconsent.js index fd08723f..e23548ec 100644 --- a/src/cookieconsent.js +++ b/src/cookieconsent.js @@ -80,12 +80,12 @@ /** * @type {HTMLElement[]} */ - current_modal_focusable, + focusable_edges, /** * @type {HTMLDivElement} */ - current_focused_modal, + focused_modal, /** * @type {HTMLSpanElement} @@ -98,6 +98,10 @@ smFocusSpan, all_table_headers, + + /** + * @type {{}[]} + */ all_blocks, // Helper callback functions @@ -346,14 +350,14 @@ /** * Get a valid language (at least 1 must be defined) * @param {string} lang - desired language - * @param {Object} all_languages - all defined languages + * @param {{}} all_languages - all defined languages * @returns {string} validated language */ var _getValidatedLanguage = function(lang, all_languages){ - if(Object.prototype.hasOwnProperty.call(all_languages, lang)){ + if(all_languages.hasOwnProperty(lang)){ return lang; }else if(_getKeys(all_languages).length > 0){ - if(Object.prototype.hasOwnProperty.call(all_languages, _config.current_lang)){ + if(all_languages.hasOwnProperty(_config.current_lang)){ return _config.current_lang ; }else{ return _getKeys(all_languages)[0]; @@ -598,6 +602,17 @@ settings_blocks = _createNode('div'); var overlay = _createNode('div'); + _addEvent(settings_container_inner, 'click', function(e){ + /** + * If click is on the foreground overlay (and not inside settings_modal), + * hide settings modal + */ + if(settings_modal_visible && !settings_inner.contains(e.target)){ + _cookieconsent.hideSettings(); + } + + }, true); + /** * Set ids */ @@ -661,7 +676,7 @@ toggle_data = all_blocks[i]['toggle'], cookie_table_data = all_blocks[i]['cookie_table'], remove_cookie_tables = user_config['remove_cookie_tables'] === true, - isExpandable = (description_data && 'truthy') || (!remove_cookie_tables && (cookie_table_data && 'truthy')); + isExpandable = !!description_data || (!remove_cookie_tables && !!cookie_table_data); // Create title var block_section = _createNode('div'); @@ -1076,14 +1091,14 @@ var curr_block = all_blocks[i]; // If current block has a toggle for opt in/out - if(Object.prototype.hasOwnProperty.call(curr_block, "toggle")){ + if(curr_block.hasOwnProperty('toggle')){ // if current block has a cookie table, an off toggle, // and its preferences were just changed => delete cookies var category_just_disabled = _inArray(changed_settings, curr_block['toggle']['value']) > -1; if( !toggle_states[++count] && - Object.prototype.hasOwnProperty.call(curr_block, "cookie_table") && + curr_block.hasOwnProperty('cookie_table') && (clearOnFirstAction || category_just_disabled) ){ var curr_cookie_table = curr_block['cookie_table']; @@ -1340,42 +1355,26 @@ return; // If there is any modal to focus - if(current_modal_focusable){ + if(focusable_edges){ - var activeElement = document.activeElement; + var activeElement = getActiveElement(); // If reached natural end of the tab sequence => restart // If modal is not focused => focus modal if(e.shiftKey){ - if (activeElement === current_modal_focusable[0] || !current_focused_modal.contains(activeElement)) { + if (activeElement === focusable_edges[0] || !focused_modal.contains(activeElement)) { e.preventDefault(); - setFocus(current_modal_focusable[1]) + setFocus(focusable_edges[1]) } }else{ - if (document.activeElement === current_modal_focusable[1] || !current_focused_modal.contains(activeElement)) { + if (activeElement === focusable_edges[1] || !focused_modal.contains(activeElement)) { e.preventDefault(); - setFocus(current_modal_focusable[0]); + setFocus(focusable_edges[0]); } } } }); - if(document.contains){ - _addEvent(settings_container, 'click', function(e){ - /** - * If click is on the foreground overlay (and not inside settings_modal), - * hide settings modal - * - * Notice: click on div is not supported in IE - */ - if(settings_modal_visible){ - if(!settings_inner.contains(e.target)){ - _cookieconsent.hideSettings(); - } - } - - }, true); - } } /** @@ -1856,9 +1855,9 @@ if(!consent_modal_exists) return; - last_elem_before_modal = document.activeElement; - current_modal_focusable = consent_modal_focusable; - current_focused_modal = consent_modal; + last_elem_before_modal = getActiveElement(); + focusable_edges = consent_modal_focusable; + focused_modal = consent_modal; consent_modal_visible = true; consent_modal.removeAttribute('aria-hidden'); @@ -1885,10 +1884,8 @@ consent_modal.setAttribute('aria-hidden', 'true'); _removeClass(html_dom, "show--consent"); - if(last_elem_before_modal) { - setFocus(last_elem_before_modal); - last_elem_before_modal = null; - } + setFocus(last_elem_before_modal); + last_elem_before_modal = null; _log("CookieConsent [MODAL]: hide"); } @@ -1903,13 +1900,13 @@ settings_container.removeAttribute('aria-hidden'); if(consent_modal_visible){ - last_consent_modal_btn_focus = document.activeElement; + last_consent_modal_btn_focus = getActiveElement(); }else{ - last_elem_before_modal = document.activeElement; + last_elem_before_modal = getActiveElement(); } - current_focused_modal = settings_container; - current_modal_focusable = settings_modal_focusable; + focused_modal = settings_container; + focusable_edges = settings_modal_focusable; setTimeout(function() { _addClass(html_dom, "show--settings"); @@ -1932,17 +1929,15 @@ _removeClass(html_dom, "show--settings"); if(consent_modal_visible){ - if(last_consent_modal_btn_focus) { - setFocus(last_consent_modal_btn_focus); - last_consent_modal_btn_focus = null; - } - current_focused_modal = consent_modal; - current_modal_focusable = consent_modal_focusable; + + setFocus(last_consent_modal_btn_focus); + last_consent_modal_btn_focus = null; + + focused_modal = consent_modal; + focusable_edges = consent_modal_focusable; }else{ - if(last_elem_before_modal) { - setFocus(last_elem_before_modal); - last_elem_before_modal = null; - } + setFocus(last_elem_before_modal); + last_elem_before_modal = null; } _log("CookieConsent [SETTINGS]: hide settings_modal"); @@ -2215,7 +2210,7 @@ * @param {HTMLElement} el */ var setFocus = function(el) { - el && el.focus(); + el && el instanceof HTMLElement && el.focus(); } /** @@ -2237,6 +2232,13 @@ } + /** + * @returns {Element | null} + */ + var getActiveElement = function() { + return document.activeElement; + } + return _cookieconsent; }; From e50e3f7e016e2f4fe6bdbf502556b38b705504a5 Mon Sep 17 00:00:00 2001 From: Orest Bida Date: Sat, 13 May 2023 22:16:00 +0200 Subject: [PATCH 3/6] Chore: update dev. dependencies --- package.json | 4 +-- pnpm-lock.yaml | 87 +++++++++++++++++++++++++------------------------- 2 files changed, 46 insertions(+), 45 deletions(-) diff --git a/package.json b/package.json index 73be8d5f..2db54738 100644 --- a/package.json +++ b/package.json @@ -32,10 +32,10 @@ }, "homepage": "https://github.com/orestbida/cookieconsent/tree/v2.8", "devDependencies": { - "cssnano": "^6.0.0", + "cssnano": "^6.0.1", "postcss": "^8.4.23", "postcss-cli": "^10.1.0", "postcss-custom-properties": "^13.1.5", - "terser": "^5.17.1" + "terser": "^5.17.3" } } diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 497460f1..37ead8d6 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -2,8 +2,8 @@ lockfileVersion: '6.0' devDependencies: cssnano: - specifier: ^6.0.0 - version: 6.0.0(postcss@8.4.23) + specifier: ^6.0.1 + version: 6.0.1(postcss@8.4.23) postcss: specifier: ^8.4.23 version: 8.4.23 @@ -14,8 +14,8 @@ devDependencies: specifier: ^13.1.5 version: 13.1.5(postcss@8.4.23) terser: - specifier: ^5.17.1 - version: 5.17.1 + specifier: ^5.17.3 + version: 5.17.3 packages: @@ -158,8 +158,8 @@ packages: engines: {node: ^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7} hasBin: true dependencies: - caniuse-lite: 1.0.30001480 - electron-to-chromium: 1.4.368 + caniuse-lite: 1.0.30001487 + electron-to-chromium: 1.4.394 node-releases: 2.0.10 update-browserslist-db: 1.0.11(browserslist@4.21.5) dev: true @@ -172,13 +172,13 @@ packages: resolution: {integrity: sha512-bsTwuIg/BZZK/vreVTYYbSWoe2F+71P7K5QGEX+pT250DZbfU1MQ5prOKpPR+LL6uWKK3KMwMCAS74QB3Um1uw==} dependencies: browserslist: 4.21.5 - caniuse-lite: 1.0.30001480 + caniuse-lite: 1.0.30001487 lodash.memoize: 4.1.2 lodash.uniq: 4.5.0 dev: true - /caniuse-lite@1.0.30001480: - resolution: {integrity: sha512-q7cpoPPvZYgtyC4VaBSN0Bt+PJ4c4EYRf0DrduInOz2SkFpHD5p3LnvEpqBp7UnJn+8x1Ogl1s38saUxe+ihQQ==} + /caniuse-lite@1.0.30001487: + resolution: {integrity: sha512-83564Z3yWGqXsh2vaH/mhXfEM0wX+NlBCm1jYHOb97TrTWJEmPTccZgeLTPBUUb0PNVo+oomb7wkimZBIERClA==} dev: true /chokidar@3.5.3: @@ -244,7 +244,7 @@ packages: boolbase: 1.0.0 css-what: 6.1.0 domhandler: 5.0.3 - domutils: 3.0.1 + domutils: 3.1.0 nth-check: 2.1.1 dev: true @@ -275,8 +275,8 @@ packages: hasBin: true dev: true - /cssnano-preset-default@6.0.0(postcss@8.4.23): - resolution: {integrity: sha512-BDxlaFzObRDXUiCCBQUNQcI+f1/aX2mgoNtXGjV6PG64POcHoDUoX+LgMWw+Q4609QhxwkcSnS65YFs42RA6qQ==} + /cssnano-preset-default@6.0.1(postcss@8.4.23): + resolution: {integrity: sha512-7VzyFZ5zEB1+l1nToKyrRkuaJIx0zi/1npjvZfbBwbtNTzhLtlvYraK/7/uqmX2Wb2aQtd983uuGw79jAjLSuQ==} engines: {node: ^14 || ^16 || >=18.0} peerDependencies: postcss: ^8.2.15 @@ -284,7 +284,7 @@ packages: css-declaration-sorter: 6.4.0(postcss@8.4.23) cssnano-utils: 4.0.0(postcss@8.4.23) postcss: 8.4.23 - postcss-calc: 8.2.4(postcss@8.4.23) + postcss-calc: 9.0.1(postcss@8.4.23) postcss-colormin: 6.0.0(postcss@8.4.23) postcss-convert-values: 6.0.0(postcss@8.4.23) postcss-discard-comments: 6.0.0(postcss@8.4.23) @@ -292,7 +292,7 @@ packages: postcss-discard-empty: 6.0.0(postcss@8.4.23) postcss-discard-overridden: 6.0.0(postcss@8.4.23) postcss-merge-longhand: 6.0.0(postcss@8.4.23) - postcss-merge-rules: 6.0.0(postcss@8.4.23) + postcss-merge-rules: 6.0.1(postcss@8.4.23) postcss-minify-font-values: 6.0.0(postcss@8.4.23) postcss-minify-gradients: 6.0.0(postcss@8.4.23) postcss-minify-params: 6.0.0(postcss@8.4.23) @@ -322,13 +322,13 @@ packages: postcss: 8.4.23 dev: true - /cssnano@6.0.0(postcss@8.4.23): - resolution: {integrity: sha512-RGlcbzGhzEBCHuQe3k+Udyj5M00z0pm9S+VurHXFEOXxH+y0sVrJH2sMzoyz2d8N1EScazg+DVvmgyx0lurwwA==} + /cssnano@6.0.1(postcss@8.4.23): + resolution: {integrity: sha512-fVO1JdJ0LSdIGJq68eIxOqFpIJrZqXUsBt8fkrBcztCQqAjQD51OhZp7tc0ImcbwXD4k7ny84QTV90nZhmqbkg==} engines: {node: ^14 || ^16 || >=18.0} peerDependencies: postcss: ^8.2.15 dependencies: - cssnano-preset-default: 6.0.0(postcss@8.4.23) + cssnano-preset-default: 6.0.1(postcss@8.4.23) lilconfig: 2.1.0 postcss: 8.4.23 dev: true @@ -371,16 +371,16 @@ packages: domelementtype: 2.3.0 dev: true - /domutils@3.0.1: - resolution: {integrity: sha512-z08c1l761iKhDFtfXO04C7kTdPBLi41zwOZl00WS8b5eiaebNpY00HKbztwBq+e3vyqWNwWF3mP9YLUeqIrF+Q==} + /domutils@3.1.0: + resolution: {integrity: sha512-H78uMmQtI2AhgDJjWeQmHwJJ2bLPD3GMmO7Zja/ZZh84wkm+4ut+IUnUdRa8uCGX88DiVx1j6FRe1XfxEgjEZA==} dependencies: dom-serializer: 2.0.0 domelementtype: 2.3.0 domhandler: 5.0.3 dev: true - /electron-to-chromium@1.4.368: - resolution: {integrity: sha512-e2aeCAixCj9M7nJxdB/wDjO6mbYX+lJJxSJCXDzlr5YPGYVofuJwGN9nKg2o6wWInjX6XmxRinn3AeJMK81ltw==} + /electron-to-chromium@1.4.394: + resolution: {integrity: sha512-0IbC2cfr8w5LxTz+nmn2cJTGafsK9iauV2r5A5scfzyovqLrxuLoxOHE5OBobP3oVIggJT+0JfKnw9sm87c8Hw==} dev: true /emoji-regex@8.0.0: @@ -586,13 +586,14 @@ packages: engines: {node: '>=0.10.0'} dev: true - /postcss-calc@8.2.4(postcss@8.4.23): - resolution: {integrity: sha512-SmWMSJmB8MRnnULldx0lQIyhSNvuDl9HfrZkaqqE/WHAhToYsAvDq+yAsA/kIyINDszOp3Rh0GFoNuH5Ypsm3Q==} + /postcss-calc@9.0.1(postcss@8.4.23): + resolution: {integrity: sha512-TipgjGyzP5QzEhsOZUaIkeO5mKeMFpebWzRogWG/ysonUlnHcq5aJe0jOjpfzUU8PeSaBQnrE8ehR0QA5vs8PQ==} + engines: {node: ^14 || ^16 || >=18.0} peerDependencies: postcss: ^8.2.2 dependencies: postcss: 8.4.23 - postcss-selector-parser: 6.0.11 + postcss-selector-parser: 6.0.12 postcss-value-parser: 4.2.0 dev: true @@ -614,8 +615,8 @@ packages: postcss-reporter: 7.0.5(postcss@8.4.23) pretty-hrtime: 1.0.3 read-cache: 1.0.0 - slash: 5.0.0 - yargs: 17.7.1 + slash: 5.1.0 + yargs: 17.7.2 transitivePeerDependencies: - ts-node dev: true @@ -707,7 +708,7 @@ packages: dependencies: lilconfig: 2.1.0 postcss: 8.4.23 - yaml: 2.2.1 + yaml: 2.2.2 dev: true /postcss-merge-longhand@6.0.0(postcss@8.4.23): @@ -721,8 +722,8 @@ packages: stylehacks: 6.0.0(postcss@8.4.23) dev: true - /postcss-merge-rules@6.0.0(postcss@8.4.23): - resolution: {integrity: sha512-rCXkklftzEkniyv3f4mRCQzxD6oE4Quyh61uyWTUbCJ26Pv2hoz+fivJSsSBWxDBeScR4fKCfF3HHTcD7Ybqnw==} + /postcss-merge-rules@6.0.1(postcss@8.4.23): + resolution: {integrity: sha512-a4tlmJIQo9SCjcfiCcCMg/ZCEe0XTkl/xK0XHBs955GWg9xDX3NwP9pwZ78QUOWB8/0XCjZeJn98Dae0zg6AAw==} engines: {node: ^14 || ^16 || >=18.0} peerDependencies: postcss: ^8.2.15 @@ -731,7 +732,7 @@ packages: caniuse-api: 3.0.0 cssnano-utils: 4.0.0(postcss@8.4.23) postcss: 8.4.23 - postcss-selector-parser: 6.0.11 + postcss-selector-parser: 6.0.12 dev: true /postcss-minify-font-values@6.0.0(postcss@8.4.23): @@ -775,7 +776,7 @@ packages: postcss: ^8.2.15 dependencies: postcss: 8.4.23 - postcss-selector-parser: 6.0.11 + postcss-selector-parser: 6.0.12 dev: true /postcss-normalize-charset@6.0.0(postcss@8.4.23): @@ -911,8 +912,8 @@ packages: thenby: 1.3.4 dev: true - /postcss-selector-parser@6.0.11: - resolution: {integrity: sha512-zbARubNdogI9j7WY4nQJBiNqQf3sLS3wCP4WfOidu+p28LofJqDH1tcXypGrcmMHhDk2t9wGhCsYe/+szLTy1g==} + /postcss-selector-parser@6.0.12: + resolution: {integrity: sha512-NdxGCAZdRrwVI1sy59+Wzrh+pMMHxapGnpfenDVlMEXoOcvt4pGE0JLK9YY2F5dLxcFYA/YbVQKhcGU+FtSYQg==} engines: {node: '>=4'} dependencies: cssesc: 3.0.0 @@ -937,7 +938,7 @@ packages: postcss: ^8.2.15 dependencies: postcss: 8.4.23 - postcss-selector-parser: 6.0.11 + postcss-selector-parser: 6.0.12 dev: true /postcss-value-parser@4.2.0: @@ -996,8 +997,8 @@ packages: engines: {node: '>=12'} dev: true - /slash@5.0.0: - resolution: {integrity: sha512-n6KkmvKS0623igEVj3FF0OZs1gYYJ0o0Hj939yc1fyxl2xt+xYpLnzJB6xBSqOfV9ZFLEWodBBN/heZJahuIJQ==} + /slash@5.1.0: + resolution: {integrity: sha512-ZA6oR3T/pEyuqwMgAKT0/hAv8oAXckzbkmR0UkUosQ+Mc4RxGoJkRmwHgHufaenlyAgE1Mxgpdcrf75y6XcnDg==} engines: {node: '>=14.16'} dev: true @@ -1042,7 +1043,7 @@ packages: dependencies: browserslist: 4.21.5 postcss: 8.4.23 - postcss-selector-parser: 6.0.11 + postcss-selector-parser: 6.0.12 dev: true /svgo@3.0.2: @@ -1058,8 +1059,8 @@ packages: picocolors: 1.0.0 dev: true - /terser@5.17.1: - resolution: {integrity: sha512-hVl35zClmpisy6oaoKALOpS0rDYLxRFLHhRuDlEGTKey9qHjS1w9GMORjuwIMt70Wan4lwsLYyWDVnWgF+KUEw==} + /terser@5.17.3: + resolution: {integrity: sha512-AudpAZKmZHkG9jueayypz4duuCFJMMNGRMwaPvQKWfxKedh8Z2x3OCoDqIIi1xx5+iwx1u6Au8XQcc9Lke65Yg==} engines: {node: '>=10'} hasBin: true dependencies: @@ -1114,8 +1115,8 @@ packages: engines: {node: '>=10'} dev: true - /yaml@2.2.1: - resolution: {integrity: sha512-e0WHiYql7+9wr4cWMx3TVQrNwejKaEe7/rHNmQmqRjazfOP5W8PB6Jpebb5o6fIapbz9o9+2ipcaTM2ZwDI6lw==} + /yaml@2.2.2: + resolution: {integrity: sha512-CBKFWExMn46Foo4cldiChEzn7S7SRV+wqiluAb6xmueD/fGyRHIhX8m14vVGgeFWjN540nKCNVj6P21eQjgTuA==} engines: {node: '>= 14'} dev: true @@ -1124,8 +1125,8 @@ packages: engines: {node: '>=12'} dev: true - /yargs@17.7.1: - resolution: {integrity: sha512-cwiTb08Xuv5fqF4AovYacTFNxk62th7LKJ6BL9IGUpTJrWoU7/7WdQGTP2SjKf1dUNBGzDd28p/Yfs/GI6JrLw==} + /yargs@17.7.2: + resolution: {integrity: sha512-7dSzzRQ++CKnNI/krKnYRV7JKKPUXMEh61soaHKg9mrWEhzFWhFnxPxGl+69cD1Ou63C13NUPCnmIcrvqCuM6w==} engines: {node: '>=12'} dependencies: cliui: 8.0.1 From 952b5f59e0d074974e2f3b6163662e73c6d8f224 Mon Sep 17 00:00:00 2001 From: Orest Bida Date: Sat, 13 May 2023 22:27:14 +0200 Subject: [PATCH 4/6] Fix #516: properly discard unsaved toggles when modal is closed --- src/cookieconsent.js | 14 +++++--------- 1 file changed, 5 insertions(+), 9 deletions(-) diff --git a/src/cookieconsent.js b/src/cookieconsent.js index e23548ec..fb32ff62 100644 --- a/src/cookieconsent.js +++ b/src/cookieconsent.js @@ -177,7 +177,7 @@ /** * Keep track of readonly toggles - * @type {boolean[]} + * @type {string[]} */ var readonly_categories = []; @@ -770,9 +770,7 @@ if(toggle_data['readonly']){ block_switch.disabled = true; _addClass(block_switch_span, 'c-ro'); - !new_settings_blocks && readonly_categories.push(true); - }else{ - !new_settings_blocks && readonly_categories.push(false); + !new_settings_blocks && readonly_categories.push(cookie_category); } _addClass(block_table_container, 'b-acc'); @@ -1755,9 +1753,7 @@ var type = 'custom'; // number of categories marked as necessary/readonly - var necessary_categories_length = readonly_categories.filter(function(readonly){ - return readonly === true; - }).length; + var necessary_categories_length = readonly_categories.length; // calculate accept type based on accepted/rejected categories if(currentCategoriesState.accepted.length === all_categories.length) @@ -2002,7 +1998,7 @@ // Add back all the categories set as "readonly/required" for(i=0; i -1; + var is_readonly = readonly_categories.includes(category); toggles[i].checked = is_readonly || _cookieconsent.allowedCategory(category); } From 45908ab565d828a4e9a43befd4c3ca23849b504d Mon Sep 17 00:00:00 2001 From: Orest Bida Date: Sat, 13 May 2023 22:27:41 +0200 Subject: [PATCH 5/6] Chore: rebuild dist files --- dist/cookieconsent.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/dist/cookieconsent.js b/dist/cookieconsent.js index e09fdb2e..afba500e 100644 --- a/dist/cookieconsent.js +++ b/dist/cookieconsent.js @@ -4,4 +4,4 @@ * Author Orest Bida * Released under the MIT License */ -!function(){'use strict';var n='initCookieConsent';'undefined'!=typeof window&&'function'!=typeof window[n]&&(window[n]=function(n){var t,e,o,i,r,a,c,f,u,d,v,l,s,p,b,m,y,g,h,_,w,k,x,S,J,O,j,N,T,D,C,U,z,E,I,L={mode:'opt-in',current_lang:'en',auto_language:null,autorun:!0,page_scripts:!0,hide_from_bots:!0,cookie_name:'cc_cookie',cookie_expiration:182,cookie_domain:location.hostname,cookie_path:'/',cookie_same_site:'Lax',use_rfc_cookie:!1,autoclear_cookies:!0,revision:0,script_selector:'data-cookiecategory'},M={},R={},A=null,G=!0,H=!1,P=!1,q=!1,B=!1,F=!0,K=[],Q=!1,V=[],W=[],X=[],Y=!1,Z=[],$=[],nn=[],tn=[],en=[],on=document.documentElement,rn=function(n){'number'==typeof(t=n).cookie_expiration&&(L.cookie_expiration=t.cookie_expiration),'number'==typeof t.cookie_necessary_only_expiration&&(L.cookie_necessary_only_expiration=t.cookie_necessary_only_expiration),'boolean'==typeof t.autorun&&(L.autorun=t.autorun),'string'==typeof t.cookie_domain&&(L.cookie_domain=t.cookie_domain),'string'==typeof t.cookie_same_site&&(L.cookie_same_site=t.cookie_same_site),'string'==typeof t.cookie_path&&(L.cookie_path=t.cookie_path),'string'==typeof t.cookie_name&&(L.cookie_name=t.cookie_name),'function'==typeof t.onAccept&&(v=t.onAccept),'function'==typeof t.onFirstAction&&(s=t.onFirstAction),'function'==typeof t.onChange&&(l=t.onChange),'opt-out'===t.mode&&(L.mode='opt-out'),'number'==typeof t.revision&&(t.revision>-1&&(L.revision=t.revision),B=!0),'boolean'==typeof t.autoclear_cookies&&(L.autoclear_cookies=t.autoclear_cookies),!0===t.use_rfc_cookie&&(L.use_rfc_cookie=!0),'boolean'==typeof t.hide_from_bots&&(L.hide_from_bots=t.hide_from_bots),L.hide_from_bots&&(Y=navigator&&(navigator.userAgent&&/bot|crawl|spider|slurp|teoma/i.test(navigator.userAgent)||navigator.webdriver)),L.page_scripts=!0===t.page_scripts,'browser'===t.auto_language||!0===t.auto_language?L.auto_language='browser':'document'===t.auto_language&&(L.auto_language='document'),L.auto_language,L.current_lang=sn(t.languages,t.current_lang)},an=function(n){for(var t='accept-',e=c('c-settings'),o=c(t+'all'),i=c(t+'necessary'),r=c(t+'custom'),a=0;a0?t.hasOwnProperty(L.current_lang)?L.current_lang:kn(t)[0]:void 0},fn=function(n){if(!0===t.force_consent&&xn(on,'force--consent'),!h){h=ln('div');var e=ln('div'),o=ln('div');h.id='cm',e.id='c-inr-i',o.id='cm-ov',h.tabIndex=-1,h.setAttribute('role','dialog'),h.setAttribute('aria-modal','true'),h.setAttribute('aria-hidden','false'),h.setAttribute('aria-labelledby','c-ttl'),h.setAttribute('aria-describedby','c-txt'),g.appendChild(h),g.appendChild(o),h.style.visibility=o.style.visibility='hidden',o.style.opacity=0}var i=t.languages[n].consent_modal.title;i&&(_||((_=ln('div')).id='c-ttl',_.setAttribute('role','heading'),_.setAttribute('aria-level','2'),e.appendChild(_)),_.innerHTML=i);var r=t.languages[n].consent_modal.description;B&&(r=F?r.replace('{{revision_message}}',''):r.replace('{{revision_message}}',t.languages[n].consent_modal.revision_message||'')),w||((w=ln('div')).id='c-txt',e.appendChild(w)),w.innerHTML=r;var a,c=t.languages[n].consent_modal.primary_btn,f=t.languages[n].consent_modal.secondary_btn;c&&(k||((k=ln('button')).id='c-p-bn',k.className='c-bn',k.appendChild(On(1)),'accept_all'===c.role&&(a='all'),wn(k,'click',(function(){M.hide(),M.accept(a)}))),k.firstElementChild.innerHTML=t.languages[n].consent_modal.primary_btn.text),f&&(x||((x=ln('button')).id='c-s-bn',x.className='c-bn c_link',x.appendChild(On(1)),'accept_necessary'===f.role?wn(x,'click',(function(){M.hide(),M.accept([])})):wn(x,'click',(function(){M.showSettings(0)}))),x.firstElementChild.innerHTML=t.languages[n].consent_modal.secondary_btn.text);var u=t.gui_options;J||((J=ln('div')).id='c-inr',J.appendChild(e)),S||((S=ln('div')).id='c-bns',u&&u.consent_modal&&!0===u.consent_modal.swap_buttons?(f&&S.appendChild(x),c&&S.appendChild(k),S.className='swap'):(c&&S.appendChild(k),f&&S.appendChild(x)),(c||f)&&J.appendChild(S),h.appendChild(J)),H=!0,an(J)},un=function(n){if(O)(C=ln('div')).id='s-bl';else{(O=ln('div')).tabIndex=-1;var e=ln('div'),o=ln('div'),i=ln('div');j=ln('div'),N=ln('div');var r=ln('div');(T=ln('button')).appendChild(On(2));var a=ln('div');D=ln('div');var c=ln('div');wn(i,'click',(function(n){q&&!j.contains(n.target)&&M.hideSettings()}),!0),O.id='s-cnt',e.id='c-vln',i.id='c-s-in',o.id='cs',N.id='s-ttl',j.id='s-inr',r.id='s-hdr',D.id='s-bl',T.id='s-c-bn',c.id='cs-ov',a.id='s-c-bnc',T.className='c-bn',O.setAttribute('role','dialog'),O.setAttribute('aria-modal','true'),O.setAttribute('aria-hidden','true'),O.setAttribute('aria-labelledby','s-ttl'),N.setAttribute('role','heading'),O.style.visibility=c.style.visibility='hidden',c.style.opacity=0,a.appendChild(T),wn(document,'keydown',(function(n){27===n.keyCode&&q&&M.hideSettings()}),!0),wn(T,'click',(function(){M.hideSettings()}))}var f=t.languages[n].settings_modal;T.setAttribute('aria-label',f.close_btn_label||'Close'),d=f.blocks,u=f.cookie_table_headers;var v=f.cookie_table_caption,l=d.length;N.innerHTML=f.title;for(var s=0;s-1?(H.checked=!0,!C&&nn.push(!0)):!C&&nn.push(!1),!C&&tn.push(Q),m.readonly?(H.disabled=!0,xn(P,'c-ro'),!C&&en.push(!0)):!C&&en.push(!1),xn(k,'b-acc'),xn(S,'b-bn'),xn(w,'b-ex'),k.id=J,k.setAttribute('aria-hidden','true'),A.appendChild(H),A.appendChild(P),A.appendChild(B),S.appendChild(A),_&&function(n,t,e){wn(L,'click',(function(){Jn(t,'act')?(Sn(t,'act'),e.setAttribute('aria-expanded','false'),n.setAttribute('aria-hidden','true')):(xn(t,'act'),e.setAttribute('aria-expanded','true'),n.setAttribute('aria-hidden','false'))}),!1)}(k,w,L)}else if(p){var V=ln('div');V.className='b-tl',V.setAttribute('role','heading'),V.setAttribute('aria-level','3'),V.insertAdjacentHTML('beforeend',p),S.appendChild(V)}if(p&&w.appendChild(S),b&&k.appendChild(x),!h&&void 0!==y){for(var W=document.createDocumentFragment(),Y=0;Y-1;if(!nn[++e]&&c.hasOwnProperty('cookie_table')&&(n||f)){var v=c.cookie_table,l=kn(u[0])[0],s=v.length;'on_disable'===c.toggle.reload&&f&&(Q=!0);for(var p=0;p-1&&y.push(o[x])}y.length>0&&(_n(y,w,b),'on_clear'===c.toggle.reload&&(Q=!0))}}}}},vn=function(n,t){return n.indexOf(t)},ln=function(n){var t=document.createElement(n);return'button'===n&&t.setAttribute('type',n),t},sn=function(n,t){return'browser'===L.auto_language?cn(pn(),n):'document'===L.auto_language?cn(document.documentElement.lang,n):'string'==typeof t?L.current_lang=cn(t,n):(L.current_lang,L.current_lang)},pn=function(){var n=navigator.language||navigator.browserLanguage;return n.length>2&&(n=n[0]+n[1]),n.toLowerCase()};M.allowedCategory=function(n){if(G&&'opt-in'!==L.mode)t=X;else var t=JSON.parse(hn(L.cookie_name,'one',!0)||'{}').categories||[];return vn(t,n)>-1},M.run=function(t){if(!document.getElementById('cc_div')){if(rn(t),Y)return;R=JSON.parse(hn(L.cookie_name,'one',!0)||'{}');var c=void 0!==(i=R.consent_uuid);if((e=R.consent_date)&&(e=new Date(e)),(o=R.last_consent_update)&&(o=new Date(o)),A=void 0!==R.data?R.data:null,B&&R.revision!==L.revision&&(F=!1),H=G=!(c&&F&&e&&o&&i),function(){(y=ln('div')).id='cc--main',y.style.position='fixed',y.innerHTML='
',g=y.children[0];var t=L.current_lang;H&&fn(t),un(t),(n||document.body).appendChild(y)}(),function(){var n=['[href]','button','input','details','[tabindex="0"]'];function t(t,e){var o=!1,i=!1;try{for(var r,a=t.querySelectorAll(n.join(':not([tabindex="-1"]), ')),c=a.length,f=0;f-1&&(xn(n,i),('bar'!==i||'middle'!==r[0])&&vn(e,r[0])>-1))for(var c=0;c-1&&xn(n,a)}}(t.gui_options),an(),L.autorun&&H&&M.show(t.delay||0),setTimeout((function(){xn(y,'c--anim')}),30),setTimeout((function(){wn(document,'keydown',(function(n){if('Tab'===n.key&&(P||q)&&r){var t=Tn();n.shiftKey?t!==r[0]&&a.contains(t)||(n.preventDefault(),jn(r[1])):t!==r[1]&&a.contains(t)||(n.preventDefault(),jn(r[0]))}}))}),100),G)'opt-out'===L.mode&&(L.mode,bn(X));else{var f='boolean'==typeof R.rfc_cookie;(!f||f&&R.rfc_cookie!==L.use_rfc_cookie)&&(R.rfc_cookie=L.use_rfc_cookie,gn(L.cookie_name,JSON.stringify(R))),p=yn(mn()),bn(),'function'==typeof v&&v(R)}}};var bn=function(n){if(L.page_scripts){var t=document.querySelectorAll('script['+L.script_selector+']'),e=n||R.categories||[],o=function(n,t){if(t-1){i.type=i.getAttribute('data-type')||'text/javascript',i.removeAttribute(L.script_selector);var a=i.getAttribute('data-src');a&&i.removeAttribute('data-src');var c=ln('script');if(c.textContent=i.innerHTML,function(n,t){for(var e=t.attributes,o=e.length,i=0;i0)for(var r=0;r0?n:t?30:0))},M.hide=function(){H&&(P=!1,jn(c),h.setAttribute('aria-hidden','true'),Sn(on,'show--consent'),jn(b),b=null)},M.showSettings=function(n){q=!0,O.removeAttribute('aria-hidden'),P?m=Tn():b=Tn(),a=O,r=$,setTimeout((function(){xn(on,'show--settings')}),n>0?n:0)},M.hideSettings=function(){q=!1,Nn(),jn(f),O.setAttribute('aria-hidden','true'),Sn(on,'show--settings'),P?(jn(m),m=null,a=h,r=Z):(jn(b),b=null)},M.accept=function(n,t){var r=n||void 0,a=t||[],c=[];if(r)if('object'==typeof r&&'number'==typeof r.length)for(var f=0;f=1)for(f=0;f0)for(var r=0;r0&&dn(),e||(e=new Date),i||(i=([1e7]+-1e3+-4e3+-8e3+-1e11).replace(/[018]/g,(function(n){try{return(n^(window.crypto||window.msCrypto).getRandomValues(new Uint8Array(1))[0]&15>>n/4).toString(16)}catch(n){return''}}))),R={categories:n,level:n,revision:L.revision,data:A,rfc_cookie:L.use_rfc_cookie,consent_date:e.toISOString(),consent_uuid:i},(G||K.length>0)&&(F=!0,o=o?new Date:e,R.last_consent_update=o.toISOString(),p=yn(mn()),gn(L.cookie_name,JSON.stringify(R)),bn()),G&&(L.autoclear_cookies&&dn(!0),'function'==typeof s&&s(M.getUserPreferences(),R),'function'==typeof v&&v(R),G=!1,'opt-in'===L.mode)||('function'==typeof l&&K.length>0&&l(R,K),Q&&location.reload())}(c)},M.eraseCookies=function(n,t,e){var o=[],i=e?[e,'.'+e]:[L.cookie_domain,'.'+L.cookie_domain];if('object'==typeof n&&n.length>0)for(var r=0;r-1&&L.cookie_domain&&(i+=' Domain='+L.cookie_domain+';'),'https:'===location.protocol&&(i+=' Secure;'),document.cookie=i},hn=function(n,t,e){var o;if('one'===t){if((o=(o=document.cookie.match('(^|;)\\s*'+n+'\\s*=\\s*([^;]+)'))?e?o.pop():n:'')&&n===L.cookie_name){try{o=JSON.parse(o)}catch(n){try{o=JSON.parse(decodeURIComponent(o))}catch(n){o={}}}o=JSON.stringify(o)}}else if('all'===t){var i=document.cookie.split(/;\s*/);o=[];for(var r=0;r-1;n[t].checked=o||M.allowedCategory(e)}},Tn=function(){return document.activeElement};return M})}(); \ No newline at end of file +!function(){'use strict';var n='initCookieConsent';'undefined'!=typeof window&&'function'!=typeof window[n]&&(window[n]=function(n){var t,e,o,i,r,a,c,f,u,d,v,l,s,p,b,m,y,g,h,_,w,k,x,S,J,O,j,N,T,D,C,U,z,E,I,L={mode:'opt-in',current_lang:'en',auto_language:null,autorun:!0,page_scripts:!0,hide_from_bots:!0,cookie_name:'cc_cookie',cookie_expiration:182,cookie_domain:location.hostname,cookie_path:'/',cookie_same_site:'Lax',use_rfc_cookie:!1,autoclear_cookies:!0,revision:0,script_selector:'data-cookiecategory'},M={},R={},A=null,G=!0,H=!1,P=!1,q=!1,B=!1,F=!0,K=[],Q=!1,V=[],W=[],X=[],Y=!1,Z=[],$=[],nn=[],tn=[],en=[],on=document.documentElement,rn=function(n){'number'==typeof(t=n).cookie_expiration&&(L.cookie_expiration=t.cookie_expiration),'number'==typeof t.cookie_necessary_only_expiration&&(L.cookie_necessary_only_expiration=t.cookie_necessary_only_expiration),'boolean'==typeof t.autorun&&(L.autorun=t.autorun),'string'==typeof t.cookie_domain&&(L.cookie_domain=t.cookie_domain),'string'==typeof t.cookie_same_site&&(L.cookie_same_site=t.cookie_same_site),'string'==typeof t.cookie_path&&(L.cookie_path=t.cookie_path),'string'==typeof t.cookie_name&&(L.cookie_name=t.cookie_name),'function'==typeof t.onAccept&&(v=t.onAccept),'function'==typeof t.onFirstAction&&(s=t.onFirstAction),'function'==typeof t.onChange&&(l=t.onChange),'opt-out'===t.mode&&(L.mode='opt-out'),'number'==typeof t.revision&&(t.revision>-1&&(L.revision=t.revision),B=!0),'boolean'==typeof t.autoclear_cookies&&(L.autoclear_cookies=t.autoclear_cookies),!0===t.use_rfc_cookie&&(L.use_rfc_cookie=!0),'boolean'==typeof t.hide_from_bots&&(L.hide_from_bots=t.hide_from_bots),L.hide_from_bots&&(Y=navigator&&(navigator.userAgent&&/bot|crawl|spider|slurp|teoma/i.test(navigator.userAgent)||navigator.webdriver)),L.page_scripts=!0===t.page_scripts,'browser'===t.auto_language||!0===t.auto_language?L.auto_language='browser':'document'===t.auto_language&&(L.auto_language='document'),L.auto_language,L.current_lang=sn(t.languages,t.current_lang)},an=function(n){for(var t='accept-',e=c('c-settings'),o=c(t+'all'),i=c(t+'necessary'),r=c(t+'custom'),a=0;a0?t.hasOwnProperty(L.current_lang)?L.current_lang:kn(t)[0]:void 0},fn=function(n){if(!0===t.force_consent&&xn(on,'force--consent'),!h){h=ln('div');var e=ln('div'),o=ln('div');h.id='cm',e.id='c-inr-i',o.id='cm-ov',h.tabIndex=-1,h.setAttribute('role','dialog'),h.setAttribute('aria-modal','true'),h.setAttribute('aria-hidden','false'),h.setAttribute('aria-labelledby','c-ttl'),h.setAttribute('aria-describedby','c-txt'),g.appendChild(h),g.appendChild(o),h.style.visibility=o.style.visibility='hidden',o.style.opacity=0}var i=t.languages[n].consent_modal.title;i&&(_||((_=ln('div')).id='c-ttl',_.setAttribute('role','heading'),_.setAttribute('aria-level','2'),e.appendChild(_)),_.innerHTML=i);var r=t.languages[n].consent_modal.description;B&&(r=F?r.replace('{{revision_message}}',''):r.replace('{{revision_message}}',t.languages[n].consent_modal.revision_message||'')),w||((w=ln('div')).id='c-txt',e.appendChild(w)),w.innerHTML=r;var a,c=t.languages[n].consent_modal.primary_btn,f=t.languages[n].consent_modal.secondary_btn;c&&(k||((k=ln('button')).id='c-p-bn',k.className='c-bn',k.appendChild(On(1)),'accept_all'===c.role&&(a='all'),wn(k,'click',(function(){M.hide(),M.accept(a)}))),k.firstElementChild.innerHTML=t.languages[n].consent_modal.primary_btn.text),f&&(x||((x=ln('button')).id='c-s-bn',x.className='c-bn c_link',x.appendChild(On(1)),'accept_necessary'===f.role?wn(x,'click',(function(){M.hide(),M.accept([])})):wn(x,'click',(function(){M.showSettings(0)}))),x.firstElementChild.innerHTML=t.languages[n].consent_modal.secondary_btn.text);var u=t.gui_options;J||((J=ln('div')).id='c-inr',J.appendChild(e)),S||((S=ln('div')).id='c-bns',u&&u.consent_modal&&!0===u.consent_modal.swap_buttons?(f&&S.appendChild(x),c&&S.appendChild(k),S.className='swap'):(c&&S.appendChild(k),f&&S.appendChild(x)),(c||f)&&J.appendChild(S),h.appendChild(J)),H=!0,an(J)},un=function(n){if(O)(C=ln('div')).id='s-bl';else{(O=ln('div')).tabIndex=-1;var e=ln('div'),o=ln('div'),i=ln('div');j=ln('div'),N=ln('div');var r=ln('div');(T=ln('button')).appendChild(On(2));var a=ln('div');D=ln('div');var c=ln('div');wn(i,'click',(function(n){q&&!j.contains(n.target)&&M.hideSettings()}),!0),O.id='s-cnt',e.id='c-vln',i.id='c-s-in',o.id='cs',N.id='s-ttl',j.id='s-inr',r.id='s-hdr',D.id='s-bl',T.id='s-c-bn',c.id='cs-ov',a.id='s-c-bnc',T.className='c-bn',O.setAttribute('role','dialog'),O.setAttribute('aria-modal','true'),O.setAttribute('aria-hidden','true'),O.setAttribute('aria-labelledby','s-ttl'),N.setAttribute('role','heading'),O.style.visibility=c.style.visibility='hidden',c.style.opacity=0,a.appendChild(T),wn(document,'keydown',(function(n){27===n.keyCode&&q&&M.hideSettings()}),!0),wn(T,'click',(function(){M.hideSettings()}))}var f=t.languages[n].settings_modal;T.setAttribute('aria-label',f.close_btn_label||'Close'),d=f.blocks,u=f.cookie_table_headers;var v=f.cookie_table_caption,l=d.length;N.innerHTML=f.title;for(var s=0;s-1?(H.checked=!0,!C&&nn.push(!0)):!C&&nn.push(!1),!C&&tn.push(Q),m.readonly&&(H.disabled=!0,xn(P,'c-ro'),!C&&en.push(Q)),xn(k,'b-acc'),xn(S,'b-bn'),xn(w,'b-ex'),k.id=J,k.setAttribute('aria-hidden','true'),A.appendChild(H),A.appendChild(P),A.appendChild(B),S.appendChild(A),_&&function(n,t,e){wn(L,'click',(function(){Jn(t,'act')?(Sn(t,'act'),e.setAttribute('aria-expanded','false'),n.setAttribute('aria-hidden','true')):(xn(t,'act'),e.setAttribute('aria-expanded','true'),n.setAttribute('aria-hidden','false'))}),!1)}(k,w,L)}else if(p){var V=ln('div');V.className='b-tl',V.setAttribute('role','heading'),V.setAttribute('aria-level','3'),V.insertAdjacentHTML('beforeend',p),S.appendChild(V)}if(p&&w.appendChild(S),b&&k.appendChild(x),!h&&void 0!==y){for(var W=document.createDocumentFragment(),Y=0;Y-1;if(!nn[++e]&&c.hasOwnProperty('cookie_table')&&(n||f)){var v=c.cookie_table,l=kn(u[0])[0],s=v.length;'on_disable'===c.toggle.reload&&f&&(Q=!0);for(var p=0;p-1&&y.push(o[x])}y.length>0&&(_n(y,w,b),'on_clear'===c.toggle.reload&&(Q=!0))}}}}},vn=function(n,t){return n.indexOf(t)},ln=function(n){var t=document.createElement(n);return'button'===n&&t.setAttribute('type',n),t},sn=function(n,t){return'browser'===L.auto_language?cn(pn(),n):'document'===L.auto_language?cn(document.documentElement.lang,n):'string'==typeof t?L.current_lang=cn(t,n):(L.current_lang,L.current_lang)},pn=function(){var n=navigator.language||navigator.browserLanguage;return n.length>2&&(n=n[0]+n[1]),n.toLowerCase()};M.allowedCategory=function(n){if(G&&'opt-in'!==L.mode)t=X;else var t=JSON.parse(hn(L.cookie_name,'one',!0)||'{}').categories||[];return vn(t,n)>-1},M.run=function(t){if(!document.getElementById('cc_div')){if(rn(t),Y)return;R=JSON.parse(hn(L.cookie_name,'one',!0)||'{}');var c=void 0!==(i=R.consent_uuid);if((e=R.consent_date)&&(e=new Date(e)),(o=R.last_consent_update)&&(o=new Date(o)),A=void 0!==R.data?R.data:null,B&&R.revision!==L.revision&&(F=!1),H=G=!(c&&F&&e&&o&&i),function(){(y=ln('div')).id='cc--main',y.style.position='fixed',y.innerHTML='
',g=y.children[0];var t=L.current_lang;H&&fn(t),un(t),(n||document.body).appendChild(y)}(),function(){var n=['[href]','button','input','details','[tabindex="0"]'];function t(t,e){var o=!1,i=!1;try{for(var r,a=t.querySelectorAll(n.join(':not([tabindex="-1"]), ')),c=a.length,f=0;f-1&&(xn(n,i),('bar'!==i||'middle'!==r[0])&&vn(e,r[0])>-1))for(var c=0;c-1&&xn(n,a)}}(t.gui_options),an(),L.autorun&&H&&M.show(t.delay||0),setTimeout((function(){xn(y,'c--anim')}),30),setTimeout((function(){wn(document,'keydown',(function(n){if('Tab'===n.key&&(P||q)&&r){var t=Tn();n.shiftKey?t!==r[0]&&a.contains(t)||(n.preventDefault(),jn(r[1])):t!==r[1]&&a.contains(t)||(n.preventDefault(),jn(r[0]))}}))}),100),G)'opt-out'===L.mode&&(L.mode,bn(X));else{var f='boolean'==typeof R.rfc_cookie;(!f||f&&R.rfc_cookie!==L.use_rfc_cookie)&&(R.rfc_cookie=L.use_rfc_cookie,gn(L.cookie_name,JSON.stringify(R))),p=yn(mn()),bn(),'function'==typeof v&&v(R)}}};var bn=function(n){if(L.page_scripts){var t=document.querySelectorAll('script['+L.script_selector+']'),e=n||R.categories||[],o=function(n,t){if(t-1){i.type=i.getAttribute('data-type')||'text/javascript',i.removeAttribute(L.script_selector);var a=i.getAttribute('data-src');a&&i.removeAttribute('data-src');var c=ln('script');if(c.textContent=i.innerHTML,function(n,t){for(var e=t.attributes,o=e.length,i=0;i0)for(var r=0;r0?n:t?30:0))},M.hide=function(){H&&(P=!1,jn(c),h.setAttribute('aria-hidden','true'),Sn(on,'show--consent'),jn(b),b=null)},M.showSettings=function(n){q=!0,O.removeAttribute('aria-hidden'),P?m=Tn():b=Tn(),a=O,r=$,setTimeout((function(){xn(on,'show--settings')}),n>0?n:0)},M.hideSettings=function(){q=!1,Nn(),jn(f),O.setAttribute('aria-hidden','true'),Sn(on,'show--settings'),P?(jn(m),m=null,a=h,r=Z):(jn(b),b=null)},M.accept=function(n,t){var r=n||void 0,a=t||[],c=[];if(r)if('object'==typeof r&&'number'==typeof r.length)for(var f=0;f=1)for(f=0;f0)for(var r=0;r0&&dn(),e||(e=new Date),i||(i=([1e7]+-1e3+-4e3+-8e3+-1e11).replace(/[018]/g,(function(n){try{return(n^(window.crypto||window.msCrypto).getRandomValues(new Uint8Array(1))[0]&15>>n/4).toString(16)}catch(n){return''}}))),R={categories:n,level:n,revision:L.revision,data:A,rfc_cookie:L.use_rfc_cookie,consent_date:e.toISOString(),consent_uuid:i},(G||K.length>0)&&(F=!0,o=o?new Date:e,R.last_consent_update=o.toISOString(),p=yn(mn()),gn(L.cookie_name,JSON.stringify(R)),bn()),G&&(L.autoclear_cookies&&dn(!0),'function'==typeof s&&s(M.getUserPreferences(),R),'function'==typeof v&&v(R),G=!1,'opt-in'===L.mode)||('function'==typeof l&&K.length>0&&l(R,K),Q&&location.reload())}(c)},M.eraseCookies=function(n,t,e){var o=[],i=e?[e,'.'+e]:[L.cookie_domain,'.'+L.cookie_domain];if('object'==typeof n&&n.length>0)for(var r=0;r-1&&L.cookie_domain&&(i+=' Domain='+L.cookie_domain+';'),'https:'===location.protocol&&(i+=' Secure;'),document.cookie=i},hn=function(n,t,e){var o;if('one'===t){if((o=(o=document.cookie.match('(^|;)\\s*'+n+'\\s*=\\s*([^;]+)'))?e?o.pop():n:'')&&n===L.cookie_name){try{o=JSON.parse(o)}catch(n){try{o=JSON.parse(decodeURIComponent(o))}catch(n){o={}}}o=JSON.stringify(o)}}else if('all'===t){var i=document.cookie.split(/;\s*/);o=[];for(var r=0;r Date: Sat, 13 May 2023 22:29:52 +0200 Subject: [PATCH 6/6] Release v2.9.1 --- Readme.md | 4 ++-- package.json | 2 +- src/cookieconsent.js | 2 +- 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/Readme.md b/Readme.md index da968469..cb3b1a09 100644 --- a/Readme.md +++ b/Readme.md @@ -47,8 +47,8 @@ A __lightweight__ & __gdpr compliant__ cookie consent plugin written in plain ja ```bash # CDN links - https://cdn.jsdelivr.net/gh/orestbida/cookieconsent@v2.9.0/dist/cookieconsent.js - https://cdn.jsdelivr.net/gh/orestbida/cookieconsent@v2.9.0/dist/cookieconsent.css + https://cdn.jsdelivr.net/gh/orestbida/cookieconsent@v2.9.1/dist/cookieconsent.js + https://cdn.jsdelivr.net/gh/orestbida/cookieconsent@v2.9.1/dist/cookieconsent.css ``` Thanks to [Till Sanders](https://github.com/tillsanders) for bringing the plugin on npm. diff --git a/package.json b/package.json index 2db54738..2b4f5497 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "vanilla-cookieconsent", - "version": "v2.9.0", + "version": "v2.9.1", "description": "🍪 Simple cross-browser cookie-consent plugin written in vanilla js.", "main": "dist/cookieconsent.js", "files": [ diff --git a/src/cookieconsent.js b/src/cookieconsent.js index fb32ff62..1d68c9f1 100644 --- a/src/cookieconsent.js +++ b/src/cookieconsent.js @@ -1,5 +1,5 @@ /*! - * CookieConsent v2.9.0 + * CookieConsent v2.9.1 * https://www.github.com/orestbida/cookieconsent * Author Orest Bida * Released under the MIT License