(()=>{"use strict";const t="6.20.0_03d6d47",n="https://t.teads.tv/track",e="https://cm.teads.tv/v2/advertiser",o="https://cm.teads.tv/v3/conversion",i="tag",a="js-web",c="js-gtm";let r=!1;const d=Date.now();function s(){return window.advertiser_domain}function l(){return window.teads_buyer_pixel_id}function u(){return!0===window.teads_post_message_event_to_opener}function p(){return!0===window.teads_post_message_event_to_window}function w(t){window.teads_iab_consent_data=t}function _(){return window.teads_iab_consent_data}function v(t){window.teads_usp_consent_data=t}function f(){return window.teads_usp_consent_data}function g(){return window.teads_gdpr_advertiser}function m(){return window.teads_ccpa_advertiser}function y(){return!0===window.teads_tracking_allowed}function I(t){window.teads_auction_id=t}function h(){return window.teads_auction_id}function E(t){const n=window.teads_auction_id_forwarded_by||{};n[t]=!0,window.teads_auction_id_forwarded_by=n}function k(t){window.teads_session_id=t}function A(){return window.teads_session_id}function b(){return window.teads_viewer_id}function P(){return!0!==window.teads_disable_first_party_cookie&&window.first_party_cookie_allowed}function N(t){window.teads_tracking_events_sent||(window.teads_tracking_events_sent=[]),window.teads_tracking_events_sent.push(t)}const D=t=>{r=t};function S(){if(void 0!==window.teads&&void 0!==window.teads.advertiserId){if("number"==typeof window.teads.advertiserId)return window.teads.advertiserId}else{if(void 0===window.teads_cv||void 0===window.teads_cv.advertiserId)return window.teads_adv_id;if("number"==typeof window.teads_cv.advertiserId)return window.teads_cv.advertiserId}}function T(){return window.teads_env&&[a,c].includes(window.teads_env)?window.teads_env:a}const L="https://l.teads.tv/performance/http-source",C={INTERNAL:"internal",BAD_INTEGRATION:"bad_integration"};function R(t){return"[object Function]"===toString.call(t)}function U(t){let n="";const e=function(t){let n=t,e=!1;try{for(let t=0;n.parent.document!==n.document||t<50;t+=1){if(!n.parent.document){e=!0;break}n=n.parent}}catch(t){e=!0}return{topFrame:n,err:e}}(t),{topFrame:o}=e;if(e.err)try{n=o.top.location.href}catch(t){n=o.location.href}else n=o.location.href;return n}function O(n,e,o){try{const i={errorMessage:n,topUrl:U(window),userAgent:void 0!==window.navigator&&void 0!==window.navigator.userAgent?window.navigator.userAgent:"",exception:e||"",version:t,type:o||C.BAD_INTEGRATION};n=JSON.stringify(i)}catch(t){}document.createElement("img").src="".concat(L,"?").concat(encodeURIComponent(n))}function X(t){const n=["account","password","pass","secret","secretkey","username","user","login","ordernumber","orderid","email","mail","user.email","user.password","user.name","user.mail","user.lastname","user.firstname","user.phone","user.phonenumber","lastname","firstname","name","address","phonenumber","phone","client_secret","guid"];if(""!==t){const e=t.split("?").length>1?t.split("?")[1]:void 0;if(void 0!==e){let o="".concat(t.split("?")[0],"?");const i=e.split("&");for(let t=0;t=0?"XXXXXXXX":e[1])}t=o}}return t}function x(t){try{const n=new RegExp("(?:\\?|&|%3F|%26)auctid(?:=|%3D)([0-9a-zA-Z-_]*)").exec(t);if(n&&n.length>=2)return n[1]}catch(t){O("Error when extracting Auction ID from url",null==t?void 0:t.message,C.INTERNAL)}}function F(t,n,e,o,i,a){let c="".concat(t,"=").concat(n);i&&(c+=";path=".concat(i)),"number"==typeof o&&(c+=";max-age=".concat(o)),e&&(c+=";domain=.".concat(e)),a&&(c+=";samesite=".concat(a)),document.cookie=c}function M(t){try{const n="".concat(t,"="),e=document.cookie.split(";");for(let t=0;t{n.push("".concat(e,"=").concat(encodeURIComponent(t[e])))})),n.join("&")}(e),u=U(window),p=function(t){let n=h();if(!n){let e=t;t||(e=U(window)),n=x(e),n&&(I(n),E("url"))}return n}(u),w=function(){const t=window.teads_auction_id_forwarded_by;return t?Object.keys(t).join(","):void 0}(),v=A(),y=b(),k=_(),P=f(),N=g(),D=m(),L=X(u);let C="?action=".concat(n,"&env=").concat(encodeURIComponent(d),"&tag_version=").concat(encodeURIComponent(t),"&provider=").concat(i);return s.length>0&&(C="".concat(C,"&").concat(s)),void 0!==r?C="".concat(C,"&buyer_pixel_id=").concat(encodeURIComponent(r)):void 0!==c&&(C="".concat(C,"&advertiser_id=").concat(encodeURIComponent(c))),C="".concat(C,"&referer=").concat(encodeURIComponent(L)),void 0!==p&&(C="".concat(C,"&auctid=").concat(p)),void 0!==w&&(C="".concat(C,"&cohort_id=").concat(w)),void 0!==v&&(C="".concat(C,"&user_session_id=").concat(v)),void 0!==y&&(C="".concat(C,"&firstPartyCookieTeadsId=").concat(y)),void 0!==(null==k||null===(o=k.data)||void 0===o?void 0:o.tcString)&&(C="".concat(C,"&gdpr_consent=").concat(k.data.tcString)),null!=N&&N.apply?C="".concat(C,"&gdpr_status=12"):void 0!==(null==N?void 0:N.apply)&&(C="".concat(C,"&gdpr_status=0")),N&&(void 0!==N.apply&&(C="".concat(C,"&gdpr_apply=").concat(N.apply)),void 0!==N.teadsConsent&&(C="".concat(C,">c=").concat(N.teadsConsent)),void 0!==N.isServiceSpecific&&(C="".concat(C,"&gdpr_is_service_specific=").concat(N.isServiceSpecific)),void 0!==N.cmpId&&(C="".concat(C,"&gdpr_cmp_id=").concat(N.cmpId)),void 0!==N.apiVersion&&(C="".concat(C,"&gdpr_api_version=").concat(N.apiVersion))),void 0!==(null==P||null===(a=P.data)||void 0===a?void 0:a.usPrivacy)&&(C="".concat(C,"&ccpa_consent=").concat(P.data.usPrivacy)),D&&(void 0!==D.apply&&(C="".concat(C,"&ca=").concat(D.apply)),void 0!==D.teadsConsent&&(C="".concat(C,"&ctc=").concat(D.teadsConsent))),C}const j=t=>(document.getElementsByTagName("head")[0]||document.getElementsByTagName("body")[0]||document.getElementsByTagName("script")[0].parentNode).insertBefore(t,null),B={auctionId:{key:"tfpai",maxAge:2592e3},sessionId:{key:"tfpsi",maxAge:1800},viewerId:{key:"tfpvi",maxAge:7776e3}};function G(t){try{F(t,"",s(),0,"/","strict")}catch(n){O('Error while deleting cookie on domain with key "'.concat(t,'"'),null==n?void 0:n.message,C.INTERNAL)}}function K(t,n,e){try{F(t,n,s(),e,"/","strict")}catch(n){O('Error while setting cookie on domain with key "'.concat(t,'"'),null==n?void 0:n.message,C.INTERNAL)}}function q(){const t=h();P()&&t&&K(B.auctionId.key,t,B.auctionId.maxAge)}function z(){const t=A();P()&&t&&K(B.sessionId.key,t,B.sessionId.maxAge)}const J={PIXEL_LOADED:"TEADS_PIXEL_LOADED",PIXEL_DEBUG:"TEADS_PIXEL_DEBUG",PIXEL_EVENT:"TEADS_PIXEL_EVENT",SDK_PARAMETERS:"TEADS_SDK_PARAMETERS",ASK_PIXEL_INFO:"TEADS_ASK_PIXEL_INFO",PIXEL_INFO:"TEADS_PIXEL_INFO",CONSENT_INFO_LOADED:"TEADS_CONSENT_INFO_LOADED"};function Z(t){var n,e;let o=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return{type:t,id:null===(n=window)||void 0===n?void 0:n.name,ts:Date.now(),host:null===(e=window)||void 0===e||null===(e=e.location)||void 0===e?void 0:e.host,...o}}function H(t){let n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},e=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"*";try{var o,i;const a=(null===(o=window)||void 0===o||null===(o=o.opener)||void 0===o?void 0:o.top)||(null===(i=window)||void 0===i?void 0:i.opener);R(a.postMessage)&&a.postMessage(Z(t,n),e)}catch(t){}}function Q(t){var n;let e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},o=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"/";if(R(null===(n=window)||void 0===n?void 0:n.postMessage))try{window.postMessage(Z(t,e),o)}catch(t){}}function W(t){var n,e,o,i,a;null!==(n=window)&&void 0!==n&&n.opener&&((null==t||null===(o=t.data)||void 0===o?void 0:o.type)===J.PIXEL_DEBUG&&(window.teads_post_message_event_to_opener=true),(null==t||null===(i=t.data)||void 0===i?void 0:i.type)===J.SDK_PARAMETERS&&null!=t&&null!==(a=t.data)&&void 0!==a&&a.teadsClickId&&(I(t.data.teadsClickId),E("postMessage"),q())),(null==t||null===(e=t.data)||void 0===e?void 0:e.type)===J.ASK_PIXEL_INFO&&(Q(J.PIXEL_INFO,{buyerPixelId:l(),advertiserId:S(),trackingAllowed:y(),firstPartyCookieAllowed:P(),gdprAdvertiser:g(),ccpaAdvertiser:m(),advertiserDomain:s(),auctionId:h(),env:T(),iabData:_(),uspData:f(),referer:X(U(window)),trackingEventsSent:window.teads_tracking_events_sent||[],request:t.data}),window.teads_post_message_event_to_window=!0)}function Y(t){!function(t){const n=document.createElement("img");n.width=0,n.height=0,n.alt="",n.style.position="absolute",n.src=t,j(n)}(t),u()&&H(J.PIXEL_EVENT,{trackingUrl:t}),p()&&Q(J.PIXEL_EVENT,{trackingUrl:t})}async function $(t,n){try{await fetch(t,{browsingTopics:!0,cache:"no-cache",credentials:"include",keepalive:!0}).then((()=>{u()&&H(J.PIXEL_EVENT,{trackingUrl:t}),p()&&Q(J.PIXEL_EVENT,{trackingUrl:t})}))}catch(e){!1===n?O("Unable to fire a log using fetch API",null==e?void 0:e.message,C.BAD_INTEGRATION):Y(t)}}function tt(t,n){function e(e,o){o?!1!==e.gdprApplies&&"tcloaded"!==e.eventStatus&&"useractioncomplete"!==e.eventStatus||t(e):n("CMP unable to register callback function. Please check CMP setup.")}const o="__tcfapi",i={};function a(t){const n="".concat(o,"Return"),e="string"==typeof t.data&&"".concat(t.data).includes(n)?JSON.parse(t.data):t.data;if(e[n]&&e[n].callId){const t=e[n];void 0!==i[t.callId]&&i[t.callId](t.returnValue,t.success)}}function c(t,n,e){const c="".concat(o,"Call");window[o]=(t,e,o,a)=>{const r="".concat(Math.random()),d={[c]:{command:t,version:e,parameter:a,callId:r}};i[r]=o,n.postMessage(d,"*")},window.addEventListener("message",a,!1),window[o](t,2,e)}const{cmpFrame:r,cmpFunction:d}=function(){let t,n,e=window;for(;!t;){try{if("function"==typeof e.__tcfapi){n=e.__tcfapi,t=e;break}}catch(t){}try{if(e.frames.__tcfapiLocator){t=e;break}}catch(t){}if(e===window.top)break;e=e.parent}return{cmpFrame:t,cmpFunction:n}}();return!!r&&(new Promise(((t,n)=>{R(d)?d("ping",2,(()=>t())):c("ping",r,(()=>t())),setTimeout((()=>n()),100)})).catch((()=>n("Unable to ping the CMP"))),R(d)?d("addEventListener",2,e):c("addEventListener",r,e),!0)}function nt(t,n){const e={};function o(t){const n=t&&t.data&&t.data.__uspapiReturn;n&&n.callId&&void 0!==e[n.callId]&&(e[n.callId](n.returnValue,n.success),delete e[n.callId])}let i=!1;function a(t,n,a){i||(window.addEventListener("message",o,!1),i=!0),function(t,o,i){const a="".concat(Math.random()),c={__uspapiCall:{command:t,version:1,callId:a}};e[a]=i,n.postMessage(c,"*")}(t,0,a)}const{uspapiFrame:c,uspapiFunction:r}=function(){let t,n,e=window;for(;!t;){try{if("function"==typeof e.__uspapi){n=e.__uspapi,t=e;break}}catch(t){}try{if(e.frames.__uspapiLocator){t=e;break}}catch(t){}if(e===window.top)break;e=e.parent}return{uspapiFrame:t,uspapiFunction:n}}();if(!c)return!1;new Promise(((t,n)=>{R(r)?r("getUSPData",1,(()=>t())):a("getUSPData",c,(()=>t())),setTimeout((()=>n()),100)})).catch((()=>n("Unable to ping the USP")));const d=function(){const e={};return{consentDataCallback:(o,i)=>{i&&o.uspString&&(e.usPrivacy=o.uspString),e.usPrivacy?t(e):n("Unable to get USP consent string.")}}}();return R(r)?r("getUSPData",1,d.consentDataCallback):a("getUSPData",c,d.consentDataCallback),!0}function et(t,n){return new Promise((e=>{t((t=>{n({data:t}),e()}),(t=>{n({error:t}),e()}))||e()}))}const ot=()=>{var t,n,e;return!(null===(t=document)||void 0===t||null===(t=t.featurePolicy)||void 0===t||null===(n=t.allowedFeatures)||void 0===n||null===(n=n.call(t))||void 0===n||null===(e=n.includes)||void 0===e||!e.call(n,"attribution-reporting"))},it=()=>{"joinAdInterestGroup"in navigator&&(t=>{const n=document.createElement("iframe");n.referrerPolicy="no-referrer-when-downgrade",n.width="0",n.height="0",n.src=t,j(n)})("".concat("https://fledge.teads.tv","/v1/interest-group/tag.html"))},at=()=>{Y(o+V("timeSpent10",{}))},ct=t=>{Y(o+t)},rt={conversionType:"conversion_type",price:"aepp",currency:"aepc",name:"aepn"};async function dt(t){if(!y())return;const e=function(t,n){const e={};return Object.keys(t).forEach((n=>{const o=n,i=t[n];Object.prototype.hasOwnProperty.call(rt,o)?e[rt[o]]=i+"":O("Invalid parameter specified in event: ".concat(o))})),e}(t),o=V("conversion",e),i=n+o;Y(i),N(i),ot()&&ct(o)}const st=t=>{const{auctionId:n,gdpr:e,ccpa:o,firstPartyCookieAllowed:i,domain:a,trackingAllowed:c}=t;var r,d,s,l;r=i,window.first_party_cookie_allowed=r,d=c,window.teads_tracking_allowed=d,e&&(s=e,window.teads_gdpr_advertiser=s),o&&function(t){window.teads_ccpa_advertiser=t}(o),a&&(l=a,window.advertiser_domain=l),n&&(I(n),E("url"))},lt=t=>{if(t){const t=M(B.auctionId.key);if(t){const n=h();n&&n!==t||E("cookie"),n||I(t)}return q(),t}return G(B.auctionId.key),null},ut=(t,n,e,o)=>{if(t){const t=M(B.sessionId.key);n&&e&&n!==e?k(o):t?k(t):o&&k(o),z()}else o&&k(o),G(B.sessionId.key)},pt=(t,n)=>{if(n&&t){const t=M(B.viewerId.key);e=t||n,window.teads_viewer_id=e,function(){const t=b();P()&&t&&K(B.viewerId.key,t,B.viewerId.maxAge)}()}else G(B.viewerId.key);var e};async function wt(){try{const t=await async function(){const t=U(window),n=function(t){var n;const e=S(),o=l();let i="referer=".concat(encodeURIComponent(t));void 0!==o?i+="&buyer_pixel_id=".concat(encodeURIComponent(o)):void 0!==e&&(i+="&advertiser_id=".concat(encodeURIComponent(e)));const a=_();var c,r;a&&(void 0!==(null==a||null===(c=a.data)||void 0===c?void 0:c.gdprApplies)&&(i+="&gdpr_applies=".concat(encodeURIComponent(a.data.gdprApplies))),null!=a&&null!==(r=a.data)&&void 0!==r&&r.tcString&&(i+="&gdpr_consent=".concat(encodeURIComponent(a.data.tcString))),null!=a&&a.error&&(i+="&gdpr_error=".concat(encodeURIComponent(a.error))));const d=f();null!=d&&null!==(n=d.data)&&void 0!==n&&n.usPrivacy&&(i+="&ccpa_consent=".concat(encodeURIComponent(d.data.usPrivacy))),null!=d&&d.error&&(i+="&ccpa_error=".concat(encodeURIComponent(d.error)));const s=function(){const t=M("optout");if(t)return"1"===t}();return void 0!==s&&(i+="&web_opt_out=".concat(encodeURIComponent(s))),i}(t);try{const t=await fetch("".concat(e,"?").concat(n),{cache:"no-cache"});if(200===(null==t?void 0:t.status)){var o,i,a,c,r,d;const n=await t.json();return{trackingAllowed:!1!==(null==n?void 0:n.tracking_allowed),firstPartyCookieAllowed:!0===(null==n?void 0:n.first_party_cookie_allowed),sessionId:null==n?void 0:n.session_id,auctionId:null==n?void 0:n.auction_id,viewerId:null==n?void 0:n.user_id,domain:null==n?void 0:n.domain,ccpa:null!=n&&n.ccpa?{apply:null===(o=n.ccpa)||void 0===o?void 0:o.apply,teadsConsent:null===(i=n.ccpa)||void 0===i?void 0:i.teads_consent}:void 0,gdpr:null!=n&&n.gdpr?{apply:null===(a=n.gdpr)||void 0===a?void 0:a.apply,teadsConsent:null===(c=n.gdpr)||void 0===c?void 0:c.teads_consent,apiVersion:null===(r=n.gdpr)||void 0===r?void 0:r.api_version,cmpId:null===(d=n.gdpr)||void 0===d?void 0:d.cmp_id,isServiceSpecific:null==n?void 0:n.gdpr.is_service_specific}:void 0}}}catch(t){O("Error while trigger API to know advertiser information",null==t?void 0:t.message,C.INTERNAL)}const s=x(t);return s?{trackingAllowed:!0,firstPartyCookieAllowed:!1,auctionId:s}:{trackingAllowed:!0,firstPartyCookieAllowed:!1}}(),{sessionId:n,auctionId:o,viewerId:i}=t;st(t);const a=P(),c=lt(a);ut(a,c,o,n),pt(a,i),p()&&Q(J.CONSENT_INFO_LOADED,{trackingAllowed:y(),firstPartyCookieAllowed:P(),gdprAdvertiser:g(),ccpaAdvertiser:m(),advertiserDomain:s(),auctionId:h(),iabData:_(),uspData:f()})}catch(t){O("Error while initializing advertiser",null==t?void 0:t.message,C.INTERNAL)}}const _t=async()=>{const t=V("pageView",{}),e=n+t;Y(e),N(e),ot()&&ct(t),await $(n+V("browser-topics",{}),!1)},vt=()=>{const t=V("timeSpent",{}),e=n+t;D(!1),document.addEventListener("visibilitychange",(t=>()=>{"hidden"===document.visibilityState&&!0!==r&&(D(!0),async function(t,n){try{const n=navigator.sendBeacon&&navigator.sendBeacon.bind(navigator);if(!n||!n(t))throw new Error("Beacon not sent");u()&&H(J.PIXEL_EVENT,{trackingUrl:t}),p()&&Q(J.PIXEL_EVENT,{trackingUrl:t})}catch(n){await $(t,!0)}}(t),z(),N(t))})(e)),setTimeout(at,1e4-(Date.now()-d))},ft=()=>{const t=window.teads_e||[];window.teads_e=[],window.teads_e.push=function(){for(var t=arguments.length,n=new Array(t),e=0;e{setTimeout((()=>{Promise.all([et(tt,w),et(nt,v)]).then((()=>async function(){try{window.teads_adv_id||Object.defineProperty(window,"teads_adv_id",{set(t){this._teads_adv_id=t,gt()},get(){return this._teads_adv_id},configurable:!0}),window.teads_buyer_pixel_id||Object.defineProperty(window,"teads_buyer_pixel_id",{set(t){this._teads_buyer_pixel_id=t,gt()},get(){return this._teads_buyer_pixel_id},configurable:!0})}catch(t){O("Error while binding advertiser and pixel ids",null==t?void 0:t.message)}await gt()}())).then(t).catch(n)}),0)})))}catch(t){O("Unhandled exception",null==t?void 0:t.message,C.INTERNAL)}var n}()})();