Files

1 line
8.2 KiB
JavaScript

"use strict";(globalThis.webpackChunkcomplianz_gdpr=globalThis.webpackChunkcomplianz_gdpr||[]).push([[135,482],{40135:(e,t,n)=>{n.r(t),n.d(t,{default:()=>u});var r=n(51609),c=n(4219),s=n(88499),l=n(86087),a=n(42838),o=n.n(a),i=n(70482),p=n(52043);const u=()=>{const{selectedSubMenuItem:e}=(0,p.default)(),t=(0,l.useRef)(null),{fields:n,updateField:a,getFieldValue:u,getField:d,setChangedField:f,changedFields:m,fetchFieldsData:y,updateFieldsData:g,fieldsLoaded:z}=(0,c.default)(),{setBannerContainerClass:_,bannerContainerClass:S,cssLoading:b,cssLoaded:v,generatePreviewCss:h,pageLinks:k,selectedBanner:w,selectedBannerId:q,tcfActiveServerside:E,fetchBannerData:L,setBannerDataLoaded:x,bannerDataLoaded:P,bannerHtml:A,manageConsentHtml:I,consentType:T}=(0,s.default)(),[O,C]=(0,l.useState)(null),[F,H]=(0,l.useState)(0),[M,D]=(0,l.useState)(!1),[B,W]=(0,l.useState)(!1),[V,j]=(0,l.useState)(!1),[R,N]=(0,l.useState)(!1);(0,l.useEffect)((()=>{if(!z||!P)return;let e="tcf"===u("uses_ad_cookies_personalized")||"yes"===u("uses_ad_cookies_personalized");"no"===u("uses_ad_cookies")&&(e=!1),W(e),j(!0)}),[z,P,u("uses_ad_cookies_personalized")]),(0,l.useEffect)((()=>{G()}),[window.location.hash,z,P]),(0,l.useEffect)((()=>{V&&G()}),[B]),(0,l.useEffect)((()=>{V&&B!==E&&G()}),[B,E,w]),(0,l.useEffect)((()=>{V&&B!==E&&G()}),[w]),(0,l.useEffect)((()=>{G()}),[u("a_b_testing_buttons")]),(0,l.useEffect)((()=>{P&&(a("consent_type",T),f("consent_type",T))}),[T]),(0,l.useEffect)((()=>{g(e)}),[u("consent_type")]),(0,l.useEffect)((()=>{""!==T&&a("consent_type",T)}),[T]),(0,l.useEffect)((()=>{K(),H(F+1)}),[m]),(0,l.useEffect)((()=>{q>0&&(J(),H(F+1))}),[q,T,P,B]),(0,l.useEffect)((()=>{J()}),[P,u("consent_type"),u("uses_ad_cookies_personalized"),u("uses_ad_cookies")]),(0,l.useEffect)((()=>{q>0&&M&&U()}),[F,q,B,M]);const G=async()=>{await L(),await y(e),a("consent_type",T),H(F+1)},J=()=>{if(!P)return;let e=Y();for(const t of e)if(w.hasOwnProperty(t.id)){let e=w[t.id];u(t.id)!==e&&a(t.id,e)}D(!0),a("manage_consent",w.revoke)},K=()=>{let e=Y();for(const t of e)w.hasOwnProperty(t.id)&&w[t.id]!==t.value&&(w[t.id]=t.value)},Q=async()=>{clearTimeout(O);let e=Y();if(R){const t=setTimeout((async()=>{await h(e)}),500);C(t)}else await h(e),N(!0)},U=async()=>{await Q(),"optin"===T&&Z()&&await Q()};(0,l.useEffect)((()=>{if(!B)return;const e=t.current;if(t.current&&"optin"===T&&e){let t=d("tcf_purposes"),n=(0,i.filterArray)(t.options,t.value);const r=(0,i.getPurposes)("marketing",!1),c=(0,i.getPurposes)("statistics",!1),s=(0,i.filterArray)(n,r),l=(0,i.filterArray)(n,c);let a=d("tcf_features"),o=(0,i.filterArray)(a.options,a.value),p=d("tcf_specialFeatures"),u=(0,i.filterArray)(p.options,p.value),f=d("tcf_specialPurposes"),m=(0,i.filterArray)(f.options,f.value);const y=e.querySelector(".cmplz-tcf .cmplz-marketing .cmplz-description"),g=e.querySelector(".cmplz-tcf .cmplz-statistics .cmplz-description"),z=e.querySelector(".cmplz-tcf .cmplz-features .cmplz-description"),_=e.querySelector(".cmplz-tcf .cmplz-specialfeatures .cmplz-title"),S=e.querySelector(".cmplz-tcf .cmplz-specialpurposes .cmplz-title");let b=e.querySelector(".cmplz-tcf .cmplz-features"),v=e.querySelector(".cmplz-tcf .cmplz-specialpurposes"),h=e.querySelector(".cmplz-tcf .cmplz-specialfeatures"),k=e.querySelector(".cmplz-tcf .cmplz-statistics");0===o.length&&b&&(b.style.display="none"),0===m.length&&v&&(v.style.display="none"),0===u.length&&h&&(h.style.display="none"),0===l.length&&k&&(k.style.display="none"),y&&(y.innerHTML=(0,i.concatenateString)(s)),g&&(g.innerHTML=(0,i.concatenateString)(l)),z&&(z.innerHTML=(0,i.concatenateString)(o)),_&&(_.innerHTML=(0,i.concatenateString)(u)),S&&(S.innerHTML=(0,i.concatenateString)(m))}}),[B,F,P,T,b,n]);const X=(e,t,n)=>{if(-1===e.indexOf(t))return e;let r=new RegExp(t,"g");return e.replace(r,n)},Y=()=>n.filter((e=>"banner"===e.data_target)),Z=()=>{if("bottom"===u("position"))return!1;if(B)return!1;if(!0===u("disable_width_correction"))return!1;if(!document.querySelector(".cmplz-categories"))return;document.querySelector(".cmplz-categories").style.display="block";let e=document.querySelector(".cmplz-categories").offsetWidth;document.querySelector(".cmplz-categories").style.display="none";let t=document.querySelector(".cmplz-message").offsetWidth,n=document.querySelector(".cmplz-cookiebanner").offsetWidth,r=1.3*n,c=0,s=0,l=!1,o=window.getComputedStyle(document.querySelector(".cmplz-cookiebanner"),null).getPropertyValue("padding-left"),i=window.getComputedStyle(document.querySelector(".cmplz-cookiebanner"),null).getPropertyValue("padding-left");if(-1!==o.indexOf("px")&&-1!==i.indexOf("px")&&(l=parseInt(o.replace("px",""))+parseInt(i.replace("px",""))),e>0&&l&&n-l>e){let t=n-42-e;c=parseInt(n)+parseInt(t)}let p=0;if(p=document.querySelectorAll(".cmplz-buttons .cmplz-btn").offsetWidth,p>t){let e=p-42-t;s=parseInt(p)+parseInt(e)}let d=0;return d=s>c?s:c,d>n&&d<r&&(d%2!=0&&d++,a("banner_width",d),!0)},$=e=>{let t={use_logo:"logo",category_all:"category_marketing",category_stats:"category_statistics",category_prefs:"category_preferences",accept_informational:"accept_optout",accept:"accept_optin",view_preferences:"manage_options",save_preferences:"save_settings"};return t.hasOwnProperty(e)?t[e]:e};let ee=1==u("hide_preview")||1==u("disable_cookiebanner");if(!P||!v||ee||!M)return(0,r.createElement)(r.Fragment,null);let te=A,ne=I,re=Y();te=X(te,"{consent_type}",T),te=X(te,"{id}",w.ID),te=X(te,"{vendor_count}","optin"===T?643:""),ne=X(ne,"{id}",w.ID);for(const e of re){if("title"===e.id)continue;let t=$(e.id);if(w.hasOwnProperty(e.id)){let n=w[e.id];te="text_checkbox"===e.type&&n&&n.hasOwnProperty("text")?X(te,"{"+t+"}",n.text):"banner_logo"===e.type?X(te,"{"+t+"}",w.logo_options[n]?w.logo_options[n]:""):X(te,"{"+t+"}",n)}"revoke"===e.id&&(ne=X(ne,"{manage_consent}",w.revoke))}return(()=>{let e=document.querySelector("#cmplz-cookiebanner-container");e&&e.querySelectorAll(".cmplz-links a:not(.cmplz-external), .cmplz-buttons a:not(.cmplz-external)").forEach((e=>{e.classList.add("cmplz-hidden");for(let n in k)k.hasOwnProperty(n)&&e.classList.contains(n)&&(e.setAttribute("href",k[n].url+e.getAttribute("data-relative_url")),"{title}"===e.innerText&&(e.innerText=(t=k[n].title,(new DOMParser).parseFromString(t,"text/html").documentElement.textContent)),e.classList.remove("cmplz-hidden"));var t})),(e=>{let t=document.querySelector(".cmplz-manage-consent"),n=document.querySelector("#cmplz-cookiebanner-container .cmplz-cookiebanner");t&&(t.style.display="none"),document.addEventListener("click",(e=>{e.target.closest(".cmplz-manage-consent")&&(n&&n.style.removeProperty("display"),t&&(t.style.display="none")),(e.target.closest(".cmplz-close")||e.target.closest(".cmplz-accept")||e.target.closest(".cmplz-deny"))&&(n&&(n.style.display="none"),t&&(t.style.display="block")),n&&e.target.closest(".cmplz-view-preferences")&&(n.classList.add("cmplz-categories-visible"),n.querySelector(".cmplz-categories").style.display="block",n.querySelector(".cmplz-categories").classList.add("cmplz-fade-in"),n.querySelector(".cmplz-view-preferences").style.display="none",n.querySelector(".cmplz-save-preferences").style.display="block"),n&&e.target.closest(".cmplz-save-preferences")&&(n.classList.remove("cmplz-categories-visible"),n.querySelector(".cmplz-categories").style.display="none",n.querySelector(".cmplz-categories").classList.remove("cmplz-fade-in"),n.querySelector(".cmplz-view-preferences").style.display="block",n.querySelector(".cmplz-save-preferences").style.display="none")}))})()})(),(0,r.createElement)(r.Fragment,null,(0,r.createElement)("div",{id:"cmplz-preview-banner-container",ref:t},(0,r.createElement)("div",{id:"cmplz-cookiebanner-container",className:S,dangerouslySetInnerHTML:{__html:o().sanitize(te)}})," ",(0,r.createElement)("div",{id:"cmplz-manage-consent","data-nosnippet":"true",dangerouslySetInnerHTML:{__html:o().sanitize(ne)}})))}},70482:(e,t,n)=>{n.r(t),n.d(t,{concatenateString:()=>s,filterArray:()=>c,getPurposes:()=>r});const r=(e,t)=>"functional"===e||"preferences"===e?[]:"marketing"===e?t?[1,2,3,4,5,6,7,8,9,10]:[1,2,3,4,5,6,10]:"statistics"===e?[1,7,8,9]:void 0,c=(e,t)=>{e||(e={}),Array.isArray(t)||(t=Object.keys(e));const n=t.map((e=>parseInt(e)));return Object.keys(e).filter((e=>n.includes(parseInt(e)))).map((t=>e[t]))},s=e=>{let t="";const n=e.length-1;for(var r in e)e.hasOwnProperty(r)&&(t+=e[r],t+=r<n?", ":".");return t}}}]);