prebid.js 9.2.0 → 9.3.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/33acrossAnalyticsAdapter.js +1 -1
- package/dist/33acrossBidAdapter.js +1 -1
- package/dist/33acrossIdSystem.js +1 -1
- package/dist/BTBidAdapter.js +1 -1
- package/dist/adagioAnalyticsAdapter.js +1 -1
- package/dist/adagioBidAdapter.js +1 -1
- package/dist/adagioUtils.js +1 -1
- package/dist/addefendBidAdapter.js +1 -1
- package/dist/adgenerationBidAdapter.js +1 -1
- package/dist/adlooxRtdProvider.js +1 -1
- package/dist/adnuntiusBidAdapter.js +1 -1
- package/dist/adqueryBidAdapter.js +1 -1
- package/dist/adrelevantisBidAdapter.js +1 -1
- package/dist/adstirBidAdapter.js +1 -1
- package/dist/adtrgtmeBidAdapter.js +1 -1
- package/dist/adxcgAnalyticsAdapter.js +1 -1
- package/dist/adxcgBidAdapter.js +1 -1
- package/dist/adyoulikeBidAdapter.js +1 -1
- package/dist/agmaAnalyticsAdapter.js +1 -1
- package/dist/ajaBidAdapter.js +1 -1
- package/dist/amxBidAdapter.js +1 -1
- package/dist/amxIdSystem.js +1 -1
- package/dist/appierAnalyticsAdapter.js +1 -1
- package/dist/appnexusBidAdapter.js +1 -1
- package/dist/asoBidAdapter.js +1 -1
- package/dist/axonixBidAdapter.js +1 -1
- package/dist/bidglassBidAdapter.js +1 -1
- package/dist/big-richmediaBidAdapter.js +1 -1
- package/dist/bridBidAdapter.js +1 -1
- package/dist/bridgewellBidAdapter.js +1 -1
- package/dist/brightMountainMediaBidAdapter.js +1 -1
- package/dist/carodaBidAdapter.js +1 -1
- package/dist/chtnwBidAdapter.js +1 -1
- package/dist/chunk-core.js +1 -1
- package/dist/concertBidAdapter.js +1 -1
- package/dist/connectadBidAdapter.js +1 -1
- package/dist/consentManagement.js +1 -0
- package/dist/consentManagementGpp.js +1 -1
- package/dist/consentManagementTcf.js +1 -1
- package/dist/consumableBidAdapter.js +1 -1
- package/dist/conversantAnalyticsAdapter.js +1 -1
- package/dist/conversantBidAdapter.js +1 -1
- package/dist/copper6sspBidAdapter.js +1 -0
- package/dist/craftBidAdapter.js +1 -1
- package/dist/criteoBidAdapter.js +1 -1
- package/dist/cwireBidAdapter.js +1 -1
- package/dist/dailymotionBidAdapter.js +1 -1
- package/dist/dependencies.json +18 -4
- package/dist/dspxBidAdapter.js +1 -1
- package/dist/dxkultureBidAdapter.js +1 -1
- package/dist/eplanningBidAdapter.js +1 -1
- package/dist/euidIdSystem.js +1 -1
- package/dist/exadsBidAdapter.js +1 -1
- package/dist/feedadBidAdapter.js +1 -1
- package/dist/finativeBidAdapter.js +1 -1
- package/dist/freewheel-sspBidAdapter.js +1 -1
- package/dist/gmosspBidAdapter.js +1 -1
- package/dist/goldbachBidAdapter.js +1 -1
- package/dist/greenbidsAnalyticsAdapter.js +1 -1
- package/dist/greenbidsRtdProvider.js +1 -1
- package/dist/gridBidAdapter.js +1 -1
- package/dist/gumgumBidAdapter.js +1 -1
- package/dist/h12mediaBidAdapter.js +1 -1
- package/dist/hypelabBidAdapter.js +1 -1
- package/dist/id5AnalyticsAdapter.js +1 -1
- package/dist/id5IdSystem.js +1 -1
- package/dist/illuminBidAdapter.js +1 -1
- package/dist/imdsBidAdapter.js +1 -1
- package/dist/improvedigitalBidAdapter.js +1 -1
- package/dist/insticatorBidAdapter.js +1 -1
- package/dist/intentIqIdSystem.js +1 -1
- package/dist/ixBidAdapter.js +1 -1
- package/dist/jixieBidAdapter.js +1 -1
- package/dist/justpremiumBidAdapter.js +1 -1
- package/dist/kargoBidAdapter.js +1 -1
- package/dist/kimberliteBidAdapter.js +1 -1
- package/dist/konduitAnalyticsAdapter.js +1 -1
- package/dist/kueezBidAdapter.js +1 -1
- package/dist/kueezRtbBidAdapter.js +1 -1
- package/dist/lassoBidAdapter.js +1 -1
- package/dist/lifestreetBidAdapter.js +1 -1
- package/dist/liveIntentIdSystem.js +1 -1
- package/dist/logicadBidAdapter.js +1 -1
- package/dist/loglyliftBidAdapter.js +1 -1
- package/dist/luceadBidAdapter.js +1 -1
- package/dist/mabidderBidAdapter.js +1 -1
- package/dist/magniteAnalyticsAdapter.js +1 -1
- package/dist/malltvAnalyticsAdapter.js +1 -1
- package/dist/marsmediaBidAdapter.js +1 -1
- package/dist/mediafuseBidAdapter.js +1 -1
- package/dist/medianetAnalyticsAdapter.js +1 -1
- package/dist/medianetBidAdapter.js +1 -1
- package/dist/mediasquareBidAdapter.js +1 -1
- package/dist/mgidBidAdapter.js +1 -1
- package/dist/minutemediaBidAdapter.js +1 -1
- package/dist/missenaBidAdapter.js +1 -1
- package/dist/nexx360BidAdapter.js +1 -1
- package/dist/nobidAnalyticsAdapter.js +1 -1
- package/dist/nobidBidAdapter.js +1 -1
- package/dist/not-for-prod/prebid.js +172 -167
- package/dist/oguryBidAdapter.js +1 -1
- package/dist/onetagBidAdapter.js +1 -1
- package/dist/ooloAnalyticsAdapter.js +1 -1
- package/dist/openwebBidAdapter.js +1 -1
- package/dist/openxBidAdapter.js +1 -1
- package/dist/optidigitalBidAdapter.js +1 -1
- package/dist/orakiBidAdapter.js +1 -0
- package/dist/orbidderBidAdapter.js +1 -1
- package/dist/outbrainBidAdapter.js +1 -1
- package/dist/pairIdSystem.js +1 -1
- package/dist/pixfutureBidAdapter.js +1 -1
- package/dist/prebidServerBidAdapter.js +1 -1
- package/dist/publinkIdSystem.js +1 -1
- package/dist/publirBidAdapter.js +1 -1
- package/dist/pubmaticAnalyticsAdapter.js +1 -1
- package/dist/pubmaticBidAdapter.js +1 -1
- package/dist/pubwiseAnalyticsAdapter.js +1 -1
- package/dist/pxyzBidAdapter.js +1 -1
- package/dist/quantcastBidAdapter.js +1 -1
- package/dist/readpeakBidAdapter.js +1 -1
- package/dist/relaidoBidAdapter.js +1 -1
- package/dist/retailspotBidAdapter.js +1 -1
- package/dist/rhythmoneBidAdapter.js +1 -1
- package/dist/riseBidAdapter.js +1 -1
- package/dist/rubiconBidAdapter.js +1 -1
- package/dist/seedingAllianceBidAdapter.js +1 -1
- package/dist/seedtagBidAdapter.js +1 -1
- package/dist/sharethroughAnalyticsAdapter.js +1 -1
- package/dist/sharethroughBidAdapter.js +1 -1
- package/dist/shinezBidAdapter.js +1 -1
- package/dist/shinezRtbBidAdapter.js +1 -1
- package/dist/smaatoBidAdapter.js +1 -1
- package/dist/smartadserverBidAdapter.js +1 -1
- package/dist/smartxBidAdapter.js +1 -1
- package/dist/smartyadsBidAdapter.js +1 -1
- package/dist/smartyadsUtils.js +1 -0
- package/dist/smilewantedBidAdapter.js +1 -1
- package/dist/snigelBidAdapter.js +1 -1
- package/dist/sonobiBidAdapter.js +1 -1
- package/dist/sovrnBidAdapter.js +1 -1
- package/dist/sspBCBidAdapter.js +1 -1
- package/dist/stnBidAdapter.js +1 -1
- package/dist/stvBidAdapter.js +1 -1
- package/dist/sublimeBidAdapter.js +1 -1
- package/dist/taboolaBidAdapter.js +1 -1
- package/dist/tagorasBidAdapter.js +1 -1
- package/dist/tappxBidAdapter.js +1 -1
- package/dist/targetVideoBidAdapter.js +1 -1
- package/dist/teadsBidAdapter.js +1 -1
- package/dist/terceptAnalyticsAdapter.js +1 -1
- package/dist/themoneytizerBidAdapter.js +1 -1
- package/dist/trionBidAdapter.js +1 -1
- package/dist/tripleliftBidAdapter.js +1 -1
- package/dist/ttdBidAdapter.js +1 -1
- package/dist/twistDigitalBidAdapter.js +1 -1
- package/dist/ucfunnelAnalyticsAdapter.js +1 -1
- package/dist/uid2IdSystem.js +1 -1
- package/dist/underdogmediaBidAdapter.js +1 -1
- package/dist/undertoneBidAdapter.js +1 -1
- package/dist/unrulyBidAdapter.js +1 -1
- package/dist/userId.js +1 -1
- package/dist/vidazooBidAdapter.js +1 -1
- package/dist/vidazooUtils.js +1 -0
- package/dist/videobyteBidAdapter.js +1 -1
- package/dist/visxBidAdapter.js +1 -1
- package/dist/vuukleBidAdapter.js +1 -1
- package/dist/widespaceBidAdapter.js +1 -1
- package/dist/winrBidAdapter.js +1 -1
- package/dist/yahooAdsBidAdapter.js +1 -1
- package/dist/yieldmoBidAdapter.js +1 -1
- package/dist/yieldoneAnalyticsAdapter.js +1 -1
- package/dist/yuktamediaAnalyticsAdapter.js +1 -1
- package/libraries/consentManagement/cmUtils.js +38 -0
- package/libraries/smartyadsUtils/getAdUrlByRegion.js +32 -0
- package/libraries/vidazooUtils/bidderUtils.js +481 -0
- package/libraries/vidazooUtils/constants.js +7 -0
- package/modules/addefendBidAdapter.js +1 -2
- package/modules/adlooxRtdProvider.js +1 -1
- package/modules/adnuntiusBidAdapter.js +1 -0
- package/modules/adxcgAnalyticsAdapter.js +1 -2
- package/modules/consentManagementGpp.js +2 -38
- package/modules/consentManagementTcf.js +7 -38
- package/modules/conversantAnalyticsAdapter.js +1 -2
- package/modules/copper6sspBidAdapter.js +19 -0
- package/modules/copper6sspBidAdapter.md +79 -0
- package/modules/criteoBidAdapter.js +10 -3
- package/modules/id5AnalyticsAdapter.js +1 -2
- package/modules/intentIqIdSystem.js +408 -50
- package/modules/intentIqIdSystem.md +92 -0
- package/modules/liveIntentIdSystem.js +2 -2
- package/modules/mabidderBidAdapter.js +1 -2
- package/modules/medianetAnalyticsAdapter.js +1 -2
- package/modules/medianetBidAdapter.js +1 -1
- package/modules/orakiBidAdapter.js +19 -0
- package/modules/orakiBidAdapter.md +79 -0
- package/modules/orbidderBidAdapter.js +4 -2
- package/modules/pairIdSystem.js +27 -10
- package/modules/pixfutureBidAdapter.js +1 -2
- package/modules/prebidServerBidAdapter/index.js +1 -1
- package/modules/seedtagBidAdapter.js +4 -0
- package/modules/smartadserverBidAdapter.js +3 -0
- package/modules/smartyadsBidAdapter.js +6 -110
- package/modules/snigelBidAdapter.js +1 -2
- package/modules/tappxBidAdapter.js +1 -2
- package/modules/terceptAnalyticsAdapter.js +1 -2
- package/modules/twistDigitalBidAdapter.js +1 -12
- package/modules/userId/index.js +31 -21
- package/modules/vidazooBidAdapter.js +26 -468
- package/modules/yahooAdsBidAdapter.js +4 -1
- package/modules/yuktamediaAnalyticsAdapter.js +1 -2
- package/package.json +1 -1
- package/test/spec/fpd/gdpr_spec.js +24 -2
- package/test/spec/modules/adnuntiusBidAdapter_spec.js +6 -3
- package/test/spec/modules/conversantAnalyticsAdapter_spec.js +1 -1
- package/test/spec/modules/copper6sspBidAdapter_spec.js +514 -0
- package/test/spec/modules/intentIqIdSystem_spec.js +264 -36
- package/test/spec/modules/orakiBidAdapter_spec.js +510 -0
- package/test/spec/modules/seedtagBidAdapter_spec.js +27 -0
- package/test/spec/modules/smartadserverBidAdapter_spec.js +7 -0
- package/test/spec/modules/smartyadsBidAdapter_spec.js +6 -83
- package/test/spec/modules/twistDigitalBidAdapter_spec.js +5 -3
- package/test/spec/modules/userId_spec.js +86 -47
- package/test/spec/modules/vidazooBidAdapter_spec.js +21 -23
- package/test/spec/modules/yahooAdsBidAdapter_spec.js +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
(self.pbjsChunk=self.pbjsChunk||[]).push([[55561],{27027:(e,t,n)=>{var r=n(7873),o=n(91069),s=n(70433),a=n(57377),d=n(12938),i=n(68229);const u="concert",p={code:u,isBidRequestValid:function(e){return!!e.params.partnerId||((0,o.logWarn)("Missing partnerId bid parameter"),!1)},buildRequests:function(e,t){(0,o.logMessage)(e),(0,o.logMessage)(t);const n=[];let r={meta:{prebidVersion:"9.
|
|
1
|
+
(self.pbjsChunk=self.pbjsChunk||[]).push([[55561],{27027:(e,t,n)=>{var r=n(7873),o=n(91069),s=n(70433),a=n(57377),d=n(12938),i=n(68229);const u="concert",p={code:u,isBidRequestValid:function(e){return!!e.params.partnerId||((0,o.logWarn)("Missing partnerId bid parameter"),!1)},buildRequests:function(e,t){(0,o.logMessage)(e),(0,o.logMessage)(t);const n=[];let r={meta:{prebidVersion:"9.3.0",pageUrl:t.refererInfo.page,screen:[window.screen.width,window.screen.height].join("x"),browserLanguage:window.navigator.language,debug:(0,o.debugTurnedOn)(),uid:g(t,e),optedOut:l(),adapterVersion:"1.2.0",uspConsent:t.uspConsent,gdprConsent:t.gdprConsent,gppConsent:t.gppConsent,tdid:m(t,e)}};return!r.meta.gppConsent&&t.ortb2?.regs?.gpp&&(r.meta.gppConsent={gppString:t.ortb2.regs.gpp,applicableSections:t.ortb2.regs.gpp_sid}),r.slots=e.map((e=>{!function(e,t){if(t.userId){const n=function(e,t,n,r){if(e){const o={id:e,atype:r};return n&&(o.ext=n),{source:t,uids:[o]}}}(t.userId.uid2&&t.userId.uid2.id,"uidapi.com",void 0,3);e.push(n)}}(n,e);const r=function(e){if(e){const t=e.getBoundingClientRect();return{left:t.left+window.scrollX,top:t.top+window.scrollY}}}(document.getElementById(e.adUnitCode));return{name:e.adUnitCode,bidId:e.bidId,transactionId:e.ortb2Imp?.ext?.tid,sizes:e.params.sizes||e.sizes,partnerId:e.params.partnerId,slotType:e.params.slotType,adSlot:e.params.slot||e.adUnitCode,placementId:e.params.placementId||"",site:e.params.site||t.refererInfo.page,ref:t.refererInfo.ref,offsetCoordinates:{x:r?.left,y:r?.top}}})),r.meta.eids=n.filter(Boolean),(0,o.logMessage)(r),{method:"POST",url:"https://bids.concert.io/bids/prebid",data:JSON.stringify(r)}},interpretResponse:function(e,t){(0,o.logMessage)(e),(0,o.logMessage)(t);const n=e.body;if(!n||"object"!=typeof n)return[];let r=[];return r=n.bids.map((e=>({requestId:e.bidId,cpm:e.cpm,width:e.width,height:e.height,ad:e.ad,ttl:e.ttl,meta:{advertiserDomains:e&&e.adomain?e.adomain:[]},creativeId:e.creativeId,netRevenue:e.netRevenue,currency:e.currency,...e.dealid&&{dealId:e.dealid}}))),(0,o.debugTurnedOn)()&&n.debug&&(0,o.logMessage)("CONCERT",n.debug),(0,o.logMessage)(r),r},onTimeout:function(e){(0,o.logMessage)("concert bidder timed out"),(0,o.logMessage)(e)},onBidWon:function(e){(0,o.logMessage)("concert bidder won bid"),(0,o.logMessage)(e)}};(0,a.a$)(p);const c=(0,d.vM)({bidderCode:u});function g(e,t){if(l()||!f(e))return!1;const n=(0,s.A)(t[0],"userId.sharedid.id")||(0,s.A)(t[0],"userId.pubcid"),r=(0,s.A)(t[0],"crumbs.pubcid");if(n)return n;if(r)return r;const a="c_uid",d="vmconcert_uid",i=c.getDataFromLocalStorage(a);let u=c.getDataFromLocalStorage(d);return i&&(u=i,c.setDataInLocalStorage(d,u),c.removeDataFromLocalStorage(a)),u||(u=(0,o.generateUUID)(),c.setDataInLocalStorage(d,u)),u}function l(){return"true"===c.getDataFromLocalStorage("c_nap")}function f(e){let t=!0;"string"==typeof e?.uspConsent&&"1"===e?.uspConsent[0]&&"Y"===e?.uspConsent[2].toUpperCase()&&(t=!1);const n=(0,i.C)(e?.gdprConsent);return t&&n}function m(e,t){return l()||!f(e)?null:(0,s.A)(t[0],"userId.tdid")||null}(0,r.E)("concertBidAdapter")}},e=>{e.O(0,[60802,51085],(()=>{return t=27027,e(e.s=t);var t}));e.O()}]);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(self.pbjsChunk=self.pbjsChunk||[]).push([[37826],{91010:(e,n,t)=>{var r=t(7873),s=t(63172),i=t(91069),o=t(57377),a=t(71371),d=t(43272),c=t(76568);const p={code:"connectad",gvlid:138,aliases:["connectadrealtime"],supportedMediaTypes:[a.D4],isBidRequestValid:function(e){return!(!e.params.networkId||!e.params.siteId)},buildRequests:function(e,n){let t={method:"POST",url:"",data:"",bidRequest:[]};if(e.length<1)return t;const r=Object.assign({placements:[],time:Date.now(),user:{},url:n.refererInfo?.page||window.location.href,referrer:n.refererInfo?.ref,referrer_info:n.refererInfo?.legacy,screensize:[window.screen.width,window.screen.height].join("x"),dnt:"yes"==navigator.doNotTrack||"1"==navigator.doNotTrack||"1"==navigator.msDoNotTrack?1:0,language:navigator.language,ua:navigator.userAgent,pversion:"9.
|
|
1
|
+
(self.pbjsChunk=self.pbjsChunk||[]).push([[37826],{91010:(e,n,t)=>{var r=t(7873),s=t(63172),i=t(91069),o=t(57377),a=t(71371),d=t(43272),c=t(76568);const p={code:"connectad",gvlid:138,aliases:["connectadrealtime"],supportedMediaTypes:[a.D4],isBidRequestValid:function(e){return!(!e.params.networkId||!e.params.siteId)},buildRequests:function(e,n){let t={method:"POST",url:"",data:"",bidRequest:[]};if(e.length<1)return t;const r=Object.assign({placements:[],time:Date.now(),user:{},url:n.refererInfo?.page||window.location.href,referrer:n.refererInfo?.ref,referrer_info:n.refererInfo?.legacy,screensize:[window.screen.width,window.screen.height].join("x"),dnt:"yes"==navigator.doNotTrack||"1"==navigator.doNotTrack||"1"==navigator.msDoNotTrack?1:0,language:navigator.language,ua:navigator.userAgent,pversion:"9.3.0"});if(!0===d.$W.getConfig("coppa")&&(0,s.J)(r,"user.coppa",1),e[0].schain&&(0,s.J)(r,"source.ext.schain",e[0].schain),n.gdprConsent){let e;"boolean"==typeof n.gdprConsent.gdprApplies&&(e=n.gdprConsent.gdprApplies?1:0),(0,s.J)(r,"user.ext.gdpr",e),(0,s.J)(r,"user.ext.consent",n.gdprConsent.consentString)}return n.uspConsent&&(0,s.J)(r,"user.ext.us_privacy",n.uspConsent),e[0].userIdAsEids&&(0,s.J)(r,"user.ext.eids",e[0].userIdAsEids),e.map((e=>{const n=Object.assign({id:e.transactionId,divName:e.bidId,pisze:e.mediaTypes.banner.sizes[0]||e.sizes[0],sizes:e.mediaTypes.banner.sizes,adTypes:l(e.mediaTypes.banner.sizes||e.sizes),bidfloor:x(e),siteId:e.params.siteId,networkId:e.params.networkId});n.networkId&&n.siteId&&r.placements.push(n)})),t.data=JSON.stringify(r),t.bidRequest=e,t.url="https://i.connectad.io/api/v2",t},interpretResponse:function(e,n,t){let r,s,i,o,a=[];s=n.bidRequest,e=(e||{}).body;for(let n=0;n<s.length;n++)if(r={},o=s[n],i=o.bidId,e){const n=e.decisions&&e.decisions[i],t=n&&n.pricing&&n.pricing.clearPrice;n&&t&&(r.requestId=i,r.cpm=t,r.width=n.width,r.height=n.height,r.dealid=n.dealid||null,r.meta={advertiserDomains:n&&n.adomain?n.adomain:[]},r.ad=g(n),r.currency="USD",r.creativeId=n.adId,r.ttl=360,r.netRevenue=!0,a.push(r))}return a},getUserSyncs:function(e,n,t,r){let s="https://cdn.connectad.io/connectmyusers.php?";if(t&&(s=(0,c.v)(s,"gdpr",t.gdprApplies?1:0)),t&&"string"==typeof t.consentString&&(s=(0,c.v)(s,"gdpr_consent",t.consentString)),r&&(s=(0,c.v)(s,"us_privacy",r)),!0===d.$W.getConfig("coppa")&&(s=(0,c.v)(s,"coppa",1)),e.iframeEnabled)return[{type:"iframe",url:s}];(0,i.logWarn)("Bidder ConnectAd: Please activate iFrame Sync")}},u=[null,"120x90","200x200","468x60","728x90","300x250","160x600","120x600","300x100","180x150","336x280","240x400","234x60","88x31","120x60","120x240","125x125","220x250","250x250","250x90","0x0","200x90","300x50","320x50","320x480","185x185","620x45","300x125","800x250","980x120","980x150","320x150","300x300","200x600","320x500","320x320"];function x(e){let n={};return"function"==typeof e.getFloor&&(n=e.getFloor({currency:"USD",mediaType:"banner",size:"*"})),n.floor||e.params.bidfloor||e.params.floorprice||0}function l(e){const n=[];return e.forEach((function(e){const t=u.indexOf(e[0]+"x"+e[1]);t>=0&&n.push(t)})),n}function g(e){return e.contents&&e.contents[0]&&e.contents[0].body}u[77]="970x90",u[123]="970x250",u[43]="300x600",u[286]="970x66",u[3230]="970x280",u[429]="486x60",u[374]="700x500",u[934]="300x1050",u[1578]="320x100",u[331]="320x250",u[3301]="320x267",u[2730]="728x250",(0,o.a$)(p),(0,r.E)("connectadBidAdapter")}},e=>{e.O(0,[14577,60802,51085],(()=>{return n=91010,e(e.s=n);var n}));e.O()}]);
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
(self.pbjsChunk=self.pbjsChunk||[]).push([[90010],{63806:(n,r,o)=>{o.d(r,{R:()=>i});var a=o(16894),e=o(91069);function i(n,r,o){return(0,a.Ak)(n,(function(n,a){var i;i=function(r,o){if(o){let n=e.logWarn;r&&(n=e.logError,o=`${o} Canceling auction as per consentManagement config.`);for(var i=arguments.length,l=new Array(i>2?i-2:0),t=2;t<i;t++)l[t-2]=arguments[t];n(o,...l)}r?(n.stopTiming(),"function"==typeof a.bidsBackHandler?a.bidsBackHandler():(0,e.logError)("Error executing bidsBackHandler")):n.call(this,a)},r()?((0,e.logInfo)("User consent information already known. Pulling internally stored information..."),i(!1)):o(i)}))}}}]);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(self.pbjsChunk=self.pbjsChunk||[]).push([[38793],{96345:(n,
|
|
1
|
+
(self.pbjsChunk=self.pbjsChunk||[]).push([[38793],{96345:(e,n,t)=>{var i=t(7873),s=t(91069),o=t(63172),a=t(43272),r=t(16916),c=t(20687),p=t(20965),l=t(25555),g=t(2604),u=t(63806);let d,f,h,m,P=!1;function S(e,n){let{onSuccess:t,onError:i}=n;new l.k((n=>n(e()))).then(t,(e=>{e instanceof b?i(e.message,...e.args):i("GPP error:",e)}))}class b{constructor(e,n){this.message=e,this.args=null==n?[]:[n]}}class C{apiVersion="1.1";static INST;static get(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:p.c5;if(null==this.INST){const n=e({apiName:"__gpp",apiArgs:["command","callback","parameter"],mode:p.q4});if(null==n)throw new b("GPP CMP not found");this.INST=new this(n)}return this.INST}#e;#n;#t=[];initialized=!1;constructor(e){this.cmp=e,[this.#e,this.#n]=[0,1].map((e=>n=>{for(;this.#t.length;)this.#t.pop()[e](n)}))}init(e){const n=this.updateWhenReady(e);return this.initialized||(e.gppVersion!==this.apiVersion&&(0,s.logWarn)(`Unrecognized GPP CMP version: ${e.apiVersion}. Continuing using GPP API version ${this.apiVersion}...`),this.initialized=!0,this.cmp({command:"addEventListener",callback:(e,n)=>{null==n||n?"error"===e?.pingData?.cmpStatus?this.#n(new b('CMP status is "error"; please check CMP setup',e)):this.isCMPReady(e?.pingData||{})&&["sectionChange","signalStatus"].includes(e?.eventName)&&this.#e(this.updateConsent(e.pingData)):this.#n(new b("Received error response from CMP",e))}})),n}refresh(){return this.cmp({command:"ping"}).then(this.init.bind(this))}updateConsent(e){return new l.k((n=>{if(null==e||(0,s.isEmpty)(e))throw new b("Received empty response from CMP",e);const t=w(e);(0,s.logInfo)("Retrieved GPP consent from CMP:",t),n(t)}))}nextUpdate(){return new l.k(((e,n)=>{this.#t.push([e,n])}))}updateWhenReady(e){return this.isCMPReady(e)?this.updateConsent(e):this.nextUpdate()}isCMPReady(e){return"ready"===e.signalStatus}}const v={iab:function(e){let{onSuccess:n,onError:t}=e,i=arguments.length>1&&void 0!==arguments[1]?arguments[1]:p.c5;S((()=>C.get(i).refresh()),{onSuccess:n,onError:t})},static:function(e){return S((()=>w(h)),e)}};function y(e){let n=!1,t=null;function i(i,s,o){if(null!=t&&clearTimeout(t),n=!0,r.ad.setConsentData(i),"function"==typeof e){for(var a=arguments.length,c=new Array(a>3?a-3:0),p=3;p<a;p++)c[p-3]=arguments[p];e(s,o,...c)}}if(!v.hasOwnProperty(d))return void i(null,!1,`GPP CMP framework (${d}) is not a supported framework. Aborting consentManagement module and resuming auction.`);const s={onSuccess:e=>i(e,!1),onError:function(e){for(var n=arguments.length,t=new Array(n>1?n-1:0),s=1;s<n;s++)t[s-1]=arguments[s];i(null,!0,e,...t)}};if(v[d](s),!n){const e=()=>{const e=e=>{i(e,!1,"GPP CMP did not load, continuing auction...")};S((()=>w(m)),{onSuccess:e,onError:()=>e(k())})};0===f?e():t=setTimeout(e,f)}}const M=(0,u.R)("gpp",(()=>m),y);function w(e){if(null!=e?.applicableSections&&!Array.isArray(e.applicableSections)||null!=e?.gppString&&!(0,s.isStr)(e.gppString)||null!=e?.parsedSections&&!(0,s.isPlainObject)(e.parsedSections))throw new b("CMP returned unexpected value during lookup process.",e);return["usnatv1","uscav1"].forEach((n=>{e?.parsedSections?.[n]&&(0,s.logWarn)(`Received invalid section from cmp: '${n}'. Some functionality may not work as expected`,e)})),k(e)}function k(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return m={gppString:e?.gppString,applicableSections:e?.applicableSections||[],parsedSections:e?.parsedSections||{},gppData:e},r.ad.setConsentData(e),m}a.$W.getConfig("consentManagement",(e=>function(e){(e=e&&e.gpp)&&"object"==typeof e?((0,s.isStr)(e.cmpApi)?d=e.cmpApi:(d="iab",(0,s.logInfo)("consentManagement.gpp config did not specify cmp. Using system default setting (iab).")),(0,s.isNumber)(e.timeout)?f=e.timeout:(f=1e4,(0,s.logInfo)("consentManagement.gpp config did not specify timeout. Using system default setting (10000).")),"static"===d&&((0,s.isPlainObject)(e.consentData)?(h=e.consentData,f=0):(0,s.logError)("consentManagement.gpp config with cmpApi: 'static' did not specify consentData. No consents will be available to adapters.")),(0,s.logInfo)("consentManagement.gpp module has been activated..."),P||((0,i.m)().requestBids.before(M,50),g.U3.before(((e,n)=>e(Object.assign({gppConsent:r.ad.getConsentData()},n))))),P=!0,r.ad.enable(),y()):(0,s.logWarn)("consentManagement.gpp config not defined, exiting consent manager module")}(e.consentManagement))),c.w.before((function(e,n){return e(n.then((e=>{const n=r.ad.getConsentData();return n&&(Array.isArray(n.applicableSections)&&(0,o.J)(e,"regs.gpp_sid",n.applicableSections),(0,o.J)(e,"regs.gpp",n.gppString)),e})))})),(0,i.E)("consentManagementGpp")}},e=>{e.O(0,[57109,90010,60802,51085],(()=>{return n=96345,e(e.s=n);var n}));e.O()}]);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(self.pbjsChunk=self.pbjsChunk||[]).push([[15081],{66117:(n,e,t)=>{var o=t(7873),
|
|
1
|
+
(self.pbjsChunk=self.pbjsChunk||[]).push([[15081],{66117:(n,e,t)=>{var o=t(7873),s=t(91069),i=t(63172),r=t(43272),a=t(16916),c=t(15901),l=t(1e3),u=t(20687),d=t(20965),p=t(63806);const g=2;let f,m,b,C,v,S,M=!1,y=!1;const A={iab:function(n){let{onSuccess:e,onError:t,onEvent:o}=n;const i=(0,d.c5)({apiName:"__tcfapi",apiVersion:g,apiArgs:["command","version","callback","parameter"]});if(!i)return t("TCF2 CMP not found.");i.isDirect?(0,s.logInfo)("Detected CMP API is directly accessible, calling it now..."):(0,s.logInfo)("Detected CMP is outside the current iframe where Prebid.js is located, calling it now...");i({command:"addEventListener",callback:function(n,i){(0,s.logInfo)("Received a response from CMP",n),i?(o(n),!1!==n.gdprApplies&&"tcloaded"!==n.eventStatus&&"useractioncomplete"!==n.eventStatus||h(n,{onSuccess:e,onError:t})):t("CMP unable to register callback function. Please check CMP setup.")}})},static:function(n){let{onSuccess:e,onError:t}=n;h(C,{onSuccess:e,onError:t})}};function P(n){let e,t,o=!1,s=null,i=!1;function r(n){null!=s&&clearTimeout(s),o||null==n||(0===n?e():s=setTimeout(e,n))}function l(e,t,s){if(r(null),o=!0,a.mW.setConsentData(e),"function"==typeof n){for(var i=arguments.length,c=new Array(i>3?i-3:0),l=3;l<i;l++)c[l-3]=arguments[l];n(t,s,...c)}}if(!(0,c.mK)(Object.keys(A),f))return void l(null,!1,`CMP framework (${f}) is not a supported framework. Aborting consentManagement module and resuming auction.`);const u={onSuccess:n=>l(n,!1),onError:function(n){for(var e=arguments.length,t=new Array(e>1?e-1:0),o=1;o<e;o++)t[o-1]=arguments[o];l(null,!0,n,...t)},onEvent:function(n){t=n,i||(i=!0,null!=v&&r(v))}};e=()=>{const n=n=>{l(n,!1,(i?"Timeout waiting for user action on CMP":"CMP did not load")+", continuing auction...")};h(t,{onSuccess:n,onError:()=>n(w(void 0))})},A[f](u),null!=v&&i||r(m)}const E=(0,p.R)("gdpr",(()=>S),P);function h(n,e){let{onSuccess:t,onError:o}=e;!function(){const e=n&&"boolean"==typeof n.gdprApplies?n.gdprApplies:b,t=n&&n.tcString;return!("boolean"==typeof e&&(!0!==e||t&&(0,s.isStr)(t)))}()?t(w(n)):o("CMP returned unexpected value during lookup process.",n)}function w(n){return S={consentString:n?n.tcString:void 0,vendorData:n||void 0,gdprApplies:n&&"boolean"==typeof n.gdprApplies?n.gdprApplies:b},n&&n.addtlConsent&&(0,s.isStr)(n.addtlConsent)&&(S.addtlConsent=n.addtlConsent),S.apiVersion=g,S}r.$W.getConfig("consentManagement",(n=>function(n){(n=n&&(n.gdpr||n.usp||n.gpp?n.gdpr:n))&&"object"==typeof n?((0,s.isStr)(n.cmpApi)?f=n.cmpApi:(f="iab",(0,s.logInfo)("consentManagement config did not specify cmp. Using system default setting (iab).")),(0,s.isNumber)(n.timeout)?m=n.timeout:(m=1e4,(0,s.logInfo)("consentManagement config did not specify timeout. Using system default setting (10000).")),v=(0,s.isNumber)(n.actionTimeout)?n.actionTimeout:null,b=!0===n.defaultGdprScope,M=!!n.dsaPlatform,(0,s.logInfo)("consentManagement module has been activated..."),"static"===f&&((0,s.isPlainObject)(n.consentData)?(C=n.consentData,null!=C?.getTCData&&(C=C.getTCData),m=0):(0,s.logError)("consentManagement config with cmpApi: 'static' did not specify consentData. No consents will be available to adapters.")),y||(0,o.m)().requestBids.before(E,50),y=!0,a.mW.enable(),P()):(0,s.logWarn)("consentManagement (gdpr) config not defined, exiting consent manager")}(n.consentManagement))),u.w.before((function(n,e){return n(e.then((n=>{const e=a.mW.getConsentData();return e&&("boolean"==typeof e.gdprApplies&&(0,i.J)(n,"regs.ext.gdpr",e.gdprApplies?1:0),(0,i.J)(n,"user.ext.consent",e.consentString)),M&&(0,i.J)(n,"regs.ext.dsa.dsarequired",3),n})))})),(0,l.pS)({type:l.S3,name:"gdprAddtlConsent",fn:function(n,e){const t=e.gdprConsent?.addtlConsent;t&&"string"==typeof t&&(0,i.J)(n,"user.ext.ConsentedProvidersSettings.consented_providers",t)}}),(0,o.E)("consentManagementTcf")}},n=>{n.O(0,[60802,57109,90010,51085],(()=>{return e=66117,n(n.s=e);var e}));n.O()}]);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(self.pbjsChunk=self.pbjsChunk||[]).push([[47252],{49298:(e,n,t)=>{var s=t(7873),i=t(91069),r=t(70433),a=t(63172),o=t(43272),p=t(57377),d=t(71371);let c=0,l="consumable";const u={code:"consumable",supportedMediaTypes:[d.D4,d.G_],isBidRequestValid:function(e){return!!(e.params.networkId&&e.params.siteId&&e.params.unitId&&e.params.unitName)},buildRequests:function(e,n){let t={method:"POST",url:"",data:"",bidRequest:[]};if(e.length<1)return t;c=e[0].params.siteId,l=e[0].bidder;const s=Object.assign({placements:[],time:Date.now(),url:n.refererInfo.page,referrer:n.refererInfo.ref,source:[{name:"prebidjs",version:"9.
|
|
1
|
+
(self.pbjsChunk=self.pbjsChunk||[]).push([[47252],{49298:(e,n,t)=>{var s=t(7873),i=t(91069),r=t(70433),a=t(63172),o=t(43272),p=t(57377),d=t(71371);let c=0,l="consumable";const u={code:"consumable",supportedMediaTypes:[d.D4,d.G_],isBidRequestValid:function(e){return!!(e.params.networkId&&e.params.siteId&&e.params.unitId&&e.params.unitName)},buildRequests:function(e,n){let t={method:"POST",url:"",data:"",bidRequest:[]};if(e.length<1)return t;c=e[0].params.siteId,l=e[0].bidder;const s=Object.assign({placements:[],time:Date.now(),url:n.refererInfo.page,referrer:n.refererInfo.ref,source:[{name:"prebidjs",version:"9.3.0"}],lang:n.ortb2.device.language},e[0].params);return n&&n.gdprConsent&&(s.gdpr={consent:n.gdprConsent.consentString,applies:"boolean"!=typeof n.gdprConsent.gdprApplies||n.gdprConsent.gdprApplies}),n&&n.gppConsent&&n.gppConsent.gppString&&(s.gpp=n.gppConsent.gppString,s.gpp_sid=n.gppConsent.applicableSections),n&&n.uspConsent&&(s.ccpa=n.uspConsent),n&&n.schain&&(s.schain=n.schain),o.$W.getConfig("coppa")&&(s.coppa=!0),e.map((e=>{const n=e.mediaTypes&&e.mediaTypes.banner&&e.mediaTypes.banner.sizes||e.sizes||[],t=Object.assign({divName:e.bidId,adTypes:e.adTypes||g(n)},e.params);t.bidfloor=function(e,n){if(!(0,i.isFn)(e.getFloor))return e.params.bidFloor?e.params.bidFloor:null;let t,s=e.getFloor({currency:"USD",mediaType:e.mediaTypes.video?"video":"banner",size:1===n.length?n[0]:"*"});(0,i.isPlainObject)(s)&&"USD"===s.currency&&!isNaN(parseFloat(s.floor))&&(t=parseFloat(s.floor));return t}(e,n),e.mediaTypes.video&&e.mediaTypes.video.playerSize&&(t.video=e.mediaTypes.video),t.networkId&&t.siteId&&t.unitId&&t.unitName&&s.placements.push(t)})),function(e,n){let t=(0,r.A)(n,"0.userIdAsEids");(0,i.isArray)(t)&&t.length>0?(0,a.J)(e,"user.eids",t):(0,a.J)(e,"user.eids",void 0)}(s,e),t.data=JSON.stringify(s),t.bidRequest=e,t.bidderRequest=n,t.url="https://e.serverbid.com/api/v2",t},interpretResponse:function(e,n){let t,s,i,r,a=[];s=n.bidRequest,e=(e||{}).body;for(let o=0;o<s.length;o++)if(t={},r=s[o],i=r.bidId,e){const s=e.decisions&&e.decisions[i],o=s&&s.pricing&&s.pricing.clearPrice;s&&o&&(t.requestId=i,t.cpm=o,t.width=s.width,t.height=s.height,t.unitId=r.params.unitId,t.unitName=r.params.unitName,t.ad=x(s,t.unitId,t.unitName),t.currency="USD",t.creativeId=s.adId,t.ttl=30,t.netRevenue=!0,t.referrer=n.bidderRequest.refererInfo.page,t.meta={advertiserDomains:s.adomain||[]},s.cats&&s.cats.length>0&&(t.meta.primaryCatId=s.cats[0],s.cats.length>1&&(t.meta.secondaryCatIds=s.cats.slice(1))),s.networkId&&(t.meta.networkId=s.networkId),s.mediaType&&(t.meta.mediaType=s.mediaType,"video"===s.mediaType&&(t.mediaType="video",t.vastUrl=s.vastUrl||void 0,t.vastXml=s.vastXml||void 0,t.videoCacheKey=s.uuid||void 0)),a.push(t))}return a},getUserSyncs:function(e,n,t,s,r){let a="https://sync.serverbid.com/ss/"+c+".html";return!e.iframeEnabled||(t&&t.consentString&&(a="boolean"==typeof t.gdprApplies?b(a,`gdpr=${Number(t.gdprApplies)}&gdpr_consent=${encodeURIComponent(t.consentString)||""}`):b(a,`gdpr=0&gdpr_consent=${encodeURIComponent(t.consentString)||""}`)),r&&r.gppString&&(a=b(a,`gpp=${encodeURIComponent(r.gppString)}`),r.applicableSections&&r.applicableSections.length>0&&(a=b(a,`gpp_sid=${encodeURIComponent(r.applicableSections.join(","))}`))),s&&(a=b(a,`us_privacy=${encodeURIComponent(s)}`)),n&&0!==n.length&&n[0].body.bdr&&"cx"===n[0].body.bdr)?e.pixelEnabled&&n&&n.length>0?n[0].body.pixels:void(0,i.logWarn)(l+": Please enable iframe based user syncing."):[{type:"iframe",url:a}]}},m=[null,"120x90","120x90","468x60","728x90","300x250","160x600","120x600","300x100","180x150","336x280","240x400","234x60","88x31","120x60","120x240","125x125","220x250","250x250","250x90","0x0","200x90","300x50","320x50","320x480","185x185","620x45","300x125","800x250"];function g(e){const n=[];return e.forEach((function(e){const t=m.indexOf(e[0]+"x"+e[1]);t>=0&&n.push(t)})),n}function x(e,n,t){let s;return e.contents&&e.contents[0]&&(s=e.contents[0].body),e.vastXml&&(s=e.vastXml),s}function b(e,n){return`${e}${e.indexOf("?")>-1?"&":"?"}${n}`}m[77]="970x90",m[123]="970x250",m[43]="300x600",m[286]="970x66",m[3230]="970x280",m[429]="486x60",m[374]="700x500",m[934]="300x1050",m[1578]="320x100",m[331]="320x250",m[3301]="320x267",m[2730]="728x250",(0,p.a$)(u),(0,s.E)("consumableBidAdapter")}},e=>{e.O(0,[60802,51085],(()=>{return n=49298,e(e.s=n);var n}));e.O()}]);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(self.pbjsChunk=self.pbjsChunk||[]).push([[18063],{69799:(e,a,t)=>{var r=t(7873),i=t(68044),n=t(88910),d=t(78969),o=t(11445),s=t(91069),c=t(70433),l=t(27934);const{AUCTION_END:p,AD_RENDER_FAILED:u,BID_TIMEOUT:m,BID_WON:g,BIDDER_ERROR:b}=d.qY,y="https://web.hb.ad.cpe.dotomi.com/",h=y+"cvx/event/prebidanalytics",f=y+"cvx/event/prebidanalyticerrors",C=["conversant","epsilon","cnvr"],A="Conversant analytics adapter: ",E="Parsing method failed because of missing data: ",
|
|
1
|
+
(self.pbjsChunk=self.pbjsChunk||[]).push([[18063],{69799:(e,a,t)=>{var r=t(7873),i=t(68044),n=t(88910),d=t(78969),o=t(11445),s=t(91069),c=t(70433),l=t(27934);const{AUCTION_END:p,AD_RENDER_FAILED:u,BID_TIMEOUT:m,BID_WON:g,BIDDER_ERROR:b}=d.qY,y="https://web.hb.ad.cpe.dotomi.com/",h=y+"cvx/event/prebidanalytics",f=y+"cvx/event/prebidanalyticerrors",C=["conversant","epsilon","cnvr"],A="Conversant analytics adapter: ",E="Parsing method failed because of missing data: ",I=3e4,v=3e4,U=1,T=10,_=20,k=30,R=40,w=50,S={};let D=!1;const O={doSample:!0,doSendErrorData:!1,adIdLookup:{},timeoutCache:{},auctionIdTimestampCache:{},bidderErrorCache:{}};let N,j=Object.assign((0,n.Ay)({URL:h,ANALYTICS_TYPE:"endpoint"}),{track(e){let{eventType:a,args:t}=e;try{if(O.doSample)switch((0,s.logMessage)(A+" track(): "+a,t),a){case p:!function(e){const a=e.auctionId;if(!a)throw new Error(E+"auction id");const t=e.timestamp?e.timestamp:Date.now();O.auctionIdTimestampCache[a]={timeReceived:t};const r=O.createPayload("auction_end",a,t);if(!Array.isArray(e.adUnits))throw new Error(E+"no adUnits in event args");O.bidderErrorCache[a]&&(r.bidderErrors=O.bidderErrorCache[a].errors,delete O.bidderErrorCache[a]);e.adUnits.forEach((t=>{const i=O.createAdUnit();t.bids.forEach((r=>{i.bids[r.bidder]=[];const n=O.getLookupKey(a,t.code,r.bidder);O.timeoutCache[n]&&(i.bids[r.bidder].push(O.createBid(R,e.timeout)),delete O.timeoutCache[n])})),O.keyExistsAndIsObject(t,"mediaTypes")&&Object.entries(t.mediaTypes).forEach((e=>{let[a]=e;i.mediaTypes.push(a)})),Array.isArray(t.sizes)&&t.sizes.length>=1&&t.sizes.forEach((e=>{Array.isArray(e)&&2===e.length?i.sizes.push(O.createAdSize(e[0],e[1])):(0,s.logMessage)(A+"Unknown object while retrieving adUnit sizes.",t)})),r.adUnits[t.code]?(Array.prototype.push.apply(r.adUnits[t.code].sizes,i.sizes),Array.prototype.push.apply(r.adUnits[t.code].mediaTypes,i.mediaTypes)):r.adUnits[t.code]=i})),Array.isArray(e.noBids)?e.noBids.forEach((e=>{const a=(0,c.A)(r,"adUnits."+e.adUnitCode+".bids."+e.bidder);a?a.push(O.createBid(k,0)):(0,s.logMessage)(A+"Unable to locate bid object via adUnitCode/bidderCode in payload for noBid reply in END_AUCTION",Object.assign({},e))})):(0,s.logWarn)(A+"onAuctionEnd(): noBids not defined in arguments.");Array.isArray(e.bidsReceived)?e.bidsReceived.forEach((e=>{const a=(0,c.A)(r,"adUnits."+e.adUnitCode+".bids."+e.bidderCode);if(a){const t=O.createBid(_,e.timeToRespond);t.originalCpm=e.originalCpm,t.cpm=e.cpm,t.currency=e.currency,t.mediaType=e.mediaType,t.adSize={w:e.width,h:e.height},a.push(t)}else(0,s.logMessage)(A+"Unable to locate bid object via adUnitCode/bidderCode in payload for bid reply in END_AUCTION",Object.assign({},e))})):(0,s.logWarn)(A+"onAuctionEnd(): bidsReceived not defined in arguments.");Object.keys(r.adUnits).forEach((function(e){r.adUnits[e].sizes=O.deduplicateArray(r.adUnits[e].sizes),r.adUnits[e].mediaTypes=O.deduplicateArray(r.adUnits[e].mediaTypes)})),z(r)}(t);break;case u:!function(e){const a=e.adId;if(!a||!O.adIdLookup[a]){let e="ad id";throw a&&(e="no lookup data for ad id"),new Error(E+e)}const t=O.adIdLookup[a],r=t.adUnitCode,i=t.bidderCode,n=t.auctionId;if(delete O.adIdLookup[a],!i||!r||!n){let e="auction id";throw i?r||(e="ad unit code"):e="bidder code",new Error(E+e)}let d=Date.now();O.auctionIdTimestampCache[n]&&(d=O.auctionIdTimestampCache[n].timeReceived);const o=O.createPayload("render_failed",n,d),s=O.createAdUnit();s.bids[i]=[O.createBid(w,0)],s.bids[i][0].message="REASON: "+e.reason+". MESSAGE: "+e.message,o.adUnits[r]=s,z(o)}(t);break;case g:!function(e){const a=e.bidderCode,t=e.adUnitCode,r=e.auctionId;let i=e.requestTimestamp?e.requestTimestamp:Date.now();if(!a||!t||!r){let e="auction id";throw a?t||(e="ad unit code"):e="bidder code",new Error(E+e)}O.auctionIdTimestampCache[r]&&(i=O.auctionIdTimestampCache[r].timeReceived);const n=O.createPayload("bid_won",r,i),d=O.createAdUnit();n.adUnits[t]=d;const o=O.createBid(T,e.timeToRespond);o.adSize=O.createAdSize(e.width,e.height),o.cpm=e.cpm,o.originalCpm=e.originalCpm,o.currency=e.currency,o.mediaType=e.mediaType,d.bids[a]=[o],O.adIdLookup[e.adId]||(O.adIdLookup[e.adId]={bidderCode:a,adUnitCode:t,auctionId:r,timeReceived:Date.now()});z(n)}(t);break;case m:!function(e){e.forEach((e=>{const a=O.getLookupKey(e.auctionId,e.adUnitCode,e.bidder);O.timeoutCache[a]={timeReceived:Date.now()}}))}(t);break;case b:!function(e){if(!O.doSendErrorData)return void(0,s.logWarn)(A+"Skipping bidder error parsing due to config disabling error logging, bidder error status = "+e.error.status+", Message = "+e.error.statusText);let a=e.error,t=e.bidderRequest,r=t.auctionId,i=t.bidderCode;(0,s.logWarn)(A+"onBidderError(): error received from bidder "+i+". Status = "+a.status+", Message = "+a.statusText);let n={status:a.status,message:a.statusText,bidderCode:i,url:O.getPageUrl()};O.bidderErrorCache[r]?O.bidderErrorCache[r].errors.push(n):O.bidderErrorCache[r]={errors:[n],timeReceived:Date.now()}}(t)}else(0,s.logMessage)(A+" - "+a+": skipped due to sampling")}catch(e){(0,s.logError)(A+"Caught error in handling "+a+" event: "+e.message),O.sendErrorData(a,e)}}});function z(e){(0,i.RD)(h,(function(){}),JSON.stringify(e),{contentType:"text/plain"})}O.keyExistsAndIsObject=function(e,a){return!!e.hasOwnProperty(a)&&("object"==typeof e[a]&&!Array.isArray(e[a])&&null!==e[a])},O.deduplicateArray=function(e){if(!e||!Array.isArray(e))return e;const a=[];return e.filter((function(e){if(a.indexOf(JSON.stringify(e))<0)return a.push(JSON.stringify(e)),e}))},O.cleanCache=function(e,a){Object.keys(e).forEach((t=>{a-e[t].timeReceived>=I&&delete e[t]}))},O.getLookupKey=function(e,a,t){return e+"-"+a+"-"+t},O.createPayload=function(e,a,t){return{requestType:e,globalSampleRate:S.global_sample_rate,cnvrSampleRate:S.cnvr_sample_rate,auction:{auctionId:a,preBidVersion:"9.3.0",sid:S.site_id,auctionTimestamp:t},adUnits:{},bidderErrors:[]}},O.createAdSize=function(e,a){return(0,s.isInteger)(e)||(e=-1),(0,s.isInteger)(a)||(a=-1),{w:e,h:a}},O.createAdUnit=function(){return{sizes:[],mediaTypes:[],bids:{}}},O.createBid=function(e,a){return{eventCodes:[e],timeToRespond:a}},O.getSampleRate=function(e,a,t){let r=t;return e&&void 0!==e[a]&&(r=parseFloat(e[a]),Number.isNaN(r)||r>1?r=t:r<0&&(r=0)),r},O.getPageUrl=function(){return(0,l.EN)().page},O.sendErrorData=function(e,a){if(!O.doSendErrorData)return void(0,s.logWarn)(A+"Skipping sending error data due to config disabling error logging, error thrown = "+a);let t={event:e,siteId:S.site_id,message:a.message,stack:a.stack,prebidVersion:"prebid_prebid_9.3.0",userAgent:navigator.userAgent,url:O.getPageUrl()};(0,i.RD)(f,(function(){}),JSON.stringify(t),{contentType:"text/plain"})},j.originEnableAnalytics=j.enableAnalytics,j.originDisableAnalytics=j.disableAnalytics,j.enableAnalytics=function(e){e&&e.options&&e.options.site_id?(N=setInterval((function(){const e=Date.now();O.cleanCache(O.adIdLookup,e),O.cleanCache(O.timeoutCache,e),O.cleanCache(O.auctionIdTimestampCache,e),O.cleanCache(O.bidderErrorCache,e)}),v),Object.assign(S,e.options),S.global_sample_rate=O.getSampleRate(S,"sampling",1),S.cnvr_sample_rate=O.getSampleRate(S,"cnvr_sampling",U),(0,s.logInfo)(A+"Conversant sample rate set to "+S.cnvr_sample_rate),(0,s.logInfo)(A+"Global sample rate set to "+S.global_sample_rate),O.doSample=Math.random()<S.cnvr_sample_rate,void 0!==S.send_error_data&&null!==S.send_error_data&&(O.doSendErrorData=!!S.send_error_data),D=!0,j.originEnableAnalytics(e)):(0,s.logError)(A+"siteId is required.")},j.disableAnalytics=function(){D&&(clearInterval(N),O.timeoutCache={},O.adIdLookup={},O.auctionIdTimestampCache={},O.bidderErrorCache={},D=!1,j.originDisableAnalytics())},C.forEach((e=>{o.Ay.registerAnalyticsAdapter({adapter:j,code:e,gvlid:24})}));(0,r.E)("conversantAnalyticsAdapter")}},e=>{e.O(0,[2630,60802,51085],(()=>{return a=69799,e(e.s=a);var a}));e.O()}]);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(self.pbjsChunk=self.pbjsChunk||[]).push([[97976],{15366:(e,r,s)=>{var t=s(7873),i=s(63172),a=s(91069),n=s(70433),o=s(57377),p=s(71371),d=s(12938),u=s(89766),c=s(75561);const m="conversant",l=(0,d.vM)({gvlid:24,bidderCode:m});function b(e,r){const s=function(e){let r=null;e.userId&&e.userId.pubcid?r=e.userId.pubcid:e.crumbs&&e.crumbs.pubcid&&(r=e.crumbs.pubcid);if(!r){r=function(e){let r;try{if(r=l.getCookie(e),!r){const s=l.getDataFromLocalStorage(`${e}_exp`);(""===s||s&&new Date(s).getTime()-Date.now()>0)&&(r=l.getDataFromLocalStorage(e),r=r?decodeURIComponent(r):r)}(0,a.isStr)(r)&&"{"===r.charAt(0)&&(r=JSON.parse(r))}catch(e){(0,a.logError)(e)}return r}((0,a.getBidIdParameter)("pubcid_name",e.params)||"_pubcid")}return r}(e);s&&(0,i.J)(r,"user.ext.fpc",s)}const f=(0,u.A)({context:{netRevenue:!0,ttl:300},request:function(e,r,s,t){const i=e(r,s,t);if(i.at=1,i.cur=["USD"],t.bidRequests){const e=t.bidRequests[0];!function(e,r){e.params.site_id&&(r.site&&(r.site.id=e.params.site_id),r.app&&(r.app.id=e.params.site_id))}(e,i),b(e,i)}return i},imp(e,r,s){const t=e(r,s),i={secure:1,bidfloor:v(r)||0,displaymanager:"Prebid.js",displaymanagerver:"9.
|
|
1
|
+
(self.pbjsChunk=self.pbjsChunk||[]).push([[97976],{15366:(e,r,s)=>{var t=s(7873),i=s(63172),a=s(91069),n=s(70433),o=s(57377),p=s(71371),d=s(12938),u=s(89766),c=s(75561);const m="conversant",l=(0,d.vM)({gvlid:24,bidderCode:m});function b(e,r){const s=function(e){let r=null;e.userId&&e.userId.pubcid?r=e.userId.pubcid:e.crumbs&&e.crumbs.pubcid&&(r=e.crumbs.pubcid);if(!r){r=function(e){let r;try{if(r=l.getCookie(e),!r){const s=l.getDataFromLocalStorage(`${e}_exp`);(""===s||s&&new Date(s).getTime()-Date.now()>0)&&(r=l.getDataFromLocalStorage(e),r=r?decodeURIComponent(r):r)}(0,a.isStr)(r)&&"{"===r.charAt(0)&&(r=JSON.parse(r))}catch(e){(0,a.logError)(e)}return r}((0,a.getBidIdParameter)("pubcid_name",e.params)||"_pubcid")}return r}(e);s&&(0,i.J)(r,"user.ext.fpc",s)}const f=(0,u.A)({context:{netRevenue:!0,ttl:300},request:function(e,r,s,t){const i=e(r,s,t);if(i.at=1,i.cur=["USD"],t.bidRequests){const e=t.bidRequests[0];!function(e,r){e.params.site_id&&(r.site&&(r.site.id=e.params.site_id),r.app&&(r.app.id=e.params.site_id))}(e,i),b(e,i)}return i},imp(e,r,s){const t=e(r,s),i={secure:1,bidfloor:v(r)||0,displaymanager:"Prebid.js",displaymanagerver:"9.3.0"};return y(r.params.tag_id,i,"tagid"),(0,a.mergeDeep)(t,i,t),t},bidResponse:function(e,r,s){if(!r.price)return;if(!s.mediaType&&s.bidRequest.mediaTypes){const[e]=Object.keys(s.bidRequest.mediaTypes);Object.values(c.X).includes(e)&&(s.mediaType=e)}return e(r,s)},response:(e,r,s,t)=>e(r,s,t),overrides:{imp:{banner(e,r,s,t){s.mediaTypes&&!s.mediaTypes.banner||(s.params.position&&(0,a.mergeDeep)(s,{mediaTypes:{banner:{pos:s.params.position}}}),e(r,s,t))},video(e,r,s,t){if(s.mediaTypes&&!s.mediaTypes.video)return;const i={};y(s.params?.position,i,"pos"),y(s.params?.mimes,i,"mimes"),y(s.params?.maxduration,i,"maxduration"),y(s.params?.protocols,i,"protocols"),y(s.params?.api,i,"api"),r.video=(0,a.mergeDeep)(i,r.video),e(r,s,t)}}}}),g={code:m,gvlid:24,aliases:["cnvr","epsilon"],supportedMediaTypes:[p.D4,p.G_],isBidRequestValid:function(e){if(!e||!e.params)return(0,a.logWarn)(m+": Missing bid parameters"),!1;if(!(0,a.isStr)(e.params.site_id))return(0,a.logWarn)(m+": site_id must be specified as a string"),!1;if(function(e){return"video"===e.mediaType||!!(0,n.A)(e,"mediaTypes.video")}(e)){const r=e.params.mimes||(0,n.A)(e,"mediaTypes.video.mimes");if(r){if(!(0,a.isArray)(r)||!r.every((e=>(0,a.isStr)(e))))return(0,a.logWarn)(m+": mimes must be an array of strings"),!1}else(0,a.logWarn)(m+": mimes should be specified for videos")}return!0},buildRequests:function(e,r){const s=f.toORTB({bidderRequest:r,bidRequests:e});return{method:"POST",url:T(e[0]),data:s}},interpretResponse:function(e,r){return f.fromORTB({request:r.data,response:e.body})},getUserSyncs:function(e,r,s,t){let i={};const n=[];if(s&&(i.gdpr=s.gdprApplies?1:0,i.gdpr_consent=encodeURIComponent(s.consentString||"")),t&&(i.us_privacy=encodeURIComponent(t)),r&&r.ext){const s=[{urls:r.ext.fsyncs,type:"iframe"},{urls:r.ext.psyncs,type:"image"}].filter((r=>r.urls&&("iframe"===r.type&&e.iframeEnabled||"image"===r.type&&e.pixelEnabled))).map((e=>e.urls.map((r=>{let s=(0,a.parseUrl)(r);return(0,a.mergeDeep)(s.search,i),0===Object.keys(s.search).length&&delete s.search,{type:e.type,url:(0,a.buildUrl)(s)}})).reduce(((e,r)=>e.concat(r)),[]))).reduce(((e,r)=>e.concat(r)),[]);n.push(...s)}return n}};function y(e,r,s){e&&(r[s]=e)}function v(e){let r=(0,a.getBidIdParameter)("bidfloor",e.params);if(!r&&(0,a.isFn)(e.getFloor)){const s=e.getFloor({currency:"USD",mediaType:"*",size:"*"});(0,a.isPlainObject)(s)&&!isNaN(s.floor)&&"USD"===s.currency&&(r=s.floor)}return r}function T(e){let r="https://web.hb.ad.cpe.dotomi.com/cvx/client/hb/ortb/25";return e.params.white_label_url&&(r=e.params.white_label_url),r}(0,o.a$)(g),(0,t.E)("conversantBidAdapter")}},e=>{e.O(0,[60802,58498,51085],(()=>{return r=15366,e(e.s=r);var r}));e.O()}]);
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
(self.pbjsChunk=self.pbjsChunk||[]).push([[45290],{18616:(s,e,p)=>{var r=p(7873),t=p(57377),o=p(71371),c=p(75674);const d={code:"copper6ssp",supportedMediaTypes:[o.D4,o.G_,o.s6],isBidRequestValid:(0,c.$d)(),buildRequests:(0,c.rz)("https://endpoint.copper6.com/pbjs"),interpretResponse:c.xO,getUserSyncs:(0,c.yY)("https://сsync.copper6.com")};(0,t.a$)(d),(0,r.E)("copper6sspBidAdapter")}},s=>{s.O(0,[49136,60802,51085],(()=>{return e=18616,s(s.s=e);var e}));s.O()}]);
|
package/dist/craftBidAdapter.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
(self.pbjsChunk=self.pbjsChunk||[]).push([[31017],{70823:(e,r,t)=>{var n=t(7873),s=t(91069),a=t(57377),o=t(71371),d=t(15901),i=t(12938),p=t(68044),u=t(68229),c=t(12449),f=t(554);const l="craft",g="https://gacraft.jp/prebid-v3",h=(0,i.vM)({bidderCode:l}),_={code:l,aliases:["craft"],supportedMediaTypes:[o.D4],isBidRequestValid:function(e){return!!e.params.sitekey&&!!e.params.placementId&&!function(){try{const e=window.context||window.parent.context;return!(!e||!e.pageViewId)&&e}catch(e){return!1}}()},buildRequests:function(e,r){const t=(e=(0,c.Xj)(e))[0],n=e.map(y),s=t.schain,a={tags:[...n],ua:navigator.userAgent,sdk:{version:"9.
|
|
1
|
+
(self.pbjsChunk=self.pbjsChunk||[]).push([[31017],{70823:(e,r,t)=>{var n=t(7873),s=t(91069),a=t(57377),o=t(71371),d=t(15901),i=t(12938),p=t(68044),u=t(68229),c=t(12449),f=t(554);const l="craft",g="https://gacraft.jp/prebid-v3",h=(0,i.vM)({bidderCode:l}),_={code:l,aliases:["craft"],supportedMediaTypes:[o.D4],isBidRequestValid:function(e){return!!e.params.sitekey&&!!e.params.placementId&&!function(){try{const e=window.context||window.parent.context;return!(!e||!e.pageViewId)&&e}catch(e){return!1}}()},buildRequests:function(e,r){const t=(e=(0,c.Xj)(e))[0],n=e.map(y),s=t.schain,a={tags:[...n],ua:navigator.userAgent,sdk:{version:"9.3.0"},schain:s};if(r){if(r.gdprConsent&&(a.gdpr_consent={consent_string:r.gdprConsent.consentString,consent_required:r.gdprConsent.gdprApplies}),r.uspConsent&&(a.us_privacy=r.uspConsent),r.refererInfo){let e={rd_ref:r.refererInfo.topmostLocation,rd_top:r.refererInfo.reachedTop,rd_ifs:r.refererInfo.numIframes};r.refererInfo.stack&&(e.rd_stk=r.refererInfo.stack.join(",")),a.referrer_detection=e}t.userId&&(a.userId=t.userId)}const o=function(e,r){let t={};(0,u.C)(r?.gdprConsent)||(t={withCredentials:!1});const n=e.tags[0].url||g,s=JSON.stringify(e);return{method:"POST",url:`${n}/${e.tags[0].sitekey}`,data:s,bidderRequest:r,options:t}}(a,r);return o},interpretResponse:function(e,r){let{bidderRequest:t}=r;try{e=e.body;const r=[];if(!e)return[];if(e.error){let n=`in response for ${t.bidderCode} adapter`;return e.error&&(n+=`: ${e.error}`),(0,s.logError)(n),r}return e.tags&&e.tags.forEach((e=>{const n=(a=e)&&a.ads&&a.ads.length&&(0,d.I6)(a.ads,(e=>e.rtb));var a;if(n&&0!==n.cpm&&(0,d.mK)(this.supportedMediaTypes,n.ad_type)){const a=function(e,r,t){const n=(0,s.getBidRequest)(e.uuid,[t]),a={requestId:e.uuid,cpm:r.cpm,currency:"JPY",width:r.rtb.banner.width,height:r.rtb.banner.height,ad:r.rtb.banner.content,ttl:360,creativeId:r.creative_id,netRevenue:!1,dealId:r.deal_id,meta:null,_adUnitCode:n.adUnitCode,_bidKey:e.bid_key,_prebidWon:e.won_url};return a}(e,n,t);a.mediaType=function(e){const r=e.ad_type;return r===o.G_?o.G_:r===o.s6?o.s6:o.D4}(n),r.push(a)}})),r}catch(e){return[]}},onBidWon:function(e){(0,p.RD)(e._prebidWon,null,null,{method:"POST",contentType:"application/json"})}};function y(e){const r={};for(var t in e.params)r[t]=e.params[t];try{h.hasLocalStorage()&&(r.uid=JSON.parse(h.getDataFromLocalStorage(`${e.params.sitekey}_uid`)))}catch(e){}r.sizes=e.sizes,r.primary_size=r.sizes[0],r.ad_types=[],r.uuid=e.bidId;const n=(0,f.QF)(e.ortb2,e.params.keywords);return n.length&&(r.keywords=n),e.mediaTypes?.banner&&r.ad_types.push(o.D4),0===r.ad_types.length&&delete r.ad_types,r}(0,a.a$)(_),(0,n.E)("craftBidAdapter")}},e=>{e.O(0,[60802,97247,95444,51085],(()=>{return r=70823,e(e.s=r);var r}));e.O()}]);
|
package/dist/criteoBidAdapter.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
(self.pbjsChunk=self.pbjsChunk||[]).push([[21829],{91493:(e,t,i)=>{var a=i(7873),r=i(63172),n=i(70433),o=i(91069),s=i(57377),d=i(71371),p=i(12938),l=i(27934),c=i(68229),u=i(95789),m=i(63895),v=i(68044),g=i(89766),y=i(54406);const f="criteo",b="https://grid-bidder.criteo.com/openrtb_2_5/pbjs/auction/request",h=(0,p.vM)({bidderCode:f}),T="Criteo: ",
|
|
1
|
+
(self.pbjsChunk=self.pbjsChunk||[]).push([[21829],{91493:(e,t,i)=>{var a=i(7873),r=i(63172),n=i(70433),o=i(91069),s=i(57377),d=i(71371),p=i(12938),l=i(27934),c=i(68229),u=i(95789),m=i(63895),v=i(68044),g=i(89766),y=i(54406);const f="criteo",b="https://grid-bidder.criteo.com/openrtb_2_5/pbjs/auction/request",h=(0,p.vM)({bidderCode:f}),T="Criteo: ",A=(0,y.FE)(),I="https://static.criteo.net/js/ld/publishertag.renderer.js",k="cto_optout",x="cto_bundle",S=(0,g.A)({context:{netRevenue:!0,ttl:60},imp:function(e,t,i){let a=e(t,i);const o=t.params;a.tagid=t.adUnitCode,(0,r.J)(a,"ext",{...t.params.ext,...a.ext,rwdd:a.rwdd,floors:U(t),bidder:{publishersubid:o?.publisherSubId,zoneid:o?.zoneId,uid:o?.uid}}),delete a.rwdd,!i.fledgeEnabled&&a.ext.igs?.ae&&delete a.ext.igs.ae;if(w(t)){const e=t.params.video;void 0!==e&&(0,r.J)(a,"video",{...a.video,skip:a.video.skip||e.skip||0,placement:a.video.placement||e.placement,minduration:a.video.minduration||e.minduration,playbackmethod:a.video.playbackmethod||e.playbackmethod,startdelay:a.video.startdelay||e.startdelay||0}),(0,r.J)(a,"video.ext",{context:t.mediaTypes.video.context,playersizes:E((0,n.A)(t,"mediaTypes.video.playerSize"),R),plcmt:t.mediaTypes.video.plcmt,poddur:t.mediaTypes.video.adPodDurationSec,rqddurs:t.mediaTypes.video.durationRangeSec})}if(a.native&&void 0!==a.native.request){let e=JSON.parse(a.native.request);e.assets&&(1!==e.assets.length||Object.keys(e.assets[0]).length)||delete e.assets,(0,r.J)(a,"native.request_native",e),delete a.native.request}return a},request:function(e,t,i,a){let n=e(t,i,a);void 0!==a.publisherId&&(void 0!==n.app?(0,r.J)(n,"app.publisher.id",a.publisherId):(0,r.J)(n,"site.publisher.id",a.publisherId));i&&i.gdprConsent&&(0,r.J)(n,"regs.ext.gdprversion",i.gdprConsent.apiVersion);return n=A(n),n},bidResponse:function(e,t,i){i.mediaType=(0,n.A)(t,"ext.mediatype"),i.mediaType===d.s6&&void 0!==t.adm_native&&(t.adm=t.adm_native,delete t.adm_native);let a=e(t,i);const{bidRequest:o}=i;a.currency=(0,n.A)(t,"ext.cur"),void 0!==(0,n.A)(t,"ext.meta")&&(0,r.J)(a,"meta",{...a.meta,...t.ext.meta});void 0!==(0,n.A)(t,"ext.paf.content_id")&&(0,r.J)(a,"meta.paf.content_id",t.ext.paf.content_id);a.mediaType===d.G_&&(a.vastUrl=t.ext?.displayurl,(0,n.A)(o,"mediaTypes.video.context")===m.H6&&(a.renderer=function(e){if(void 0===e.ext?.videoPlayerConfig||void 0===e.ext?.videoPlayerType)return;const t={documentResolver:(e,t,i)=>i??t},i=(t,i)=>{let a={slotid:e.id,vastUrl:e.ext?.displayurl,vastXml:e.adm,documentContext:i},r=e.ext.videoPlayerConfig;window.CriteoOutStream[e.ext.videoPlayerType].play(a,r)},a=u.A4.install({url:I,config:t});return a.setRender(i),a}(t)));return a},response:function(e,t,i,a){let o=e(t,i,a);const s=(0,n.A)(i,"ext.paf.transmission");return o.bids.forEach((e=>{void 0!==s&&void 0!==(0,n.A)(e,"meta.paf.content_id")?(0,r.J)(e,"meta.paf.transmission",s):delete e.meta.paf})),o}});const P={code:f,gvlid:91,supportedMediaTypes:[d.D4,d.G_,d.s6],getUserSyncs:function(e,t,i,a){let r=arguments.length>4&&void 0!==arguments[4]?arguments[4]:{},{gppString:n="",applicableSections:o=[]}=r;const s=(0,l.EN)(),d="criteoPrebidAdapter";if(e.iframeEnabled&&(0,c.C)(i)){const e=[];if(e.push(`origin=${d}`),e.push(`topUrl=${s.domain}`),i&&(i.gdprApplies&&e.push("gdpr="+(1==i.gdprApplies?1:0)),i.consentString&&e.push(`gdpr_consent=${i.consentString}`)),a&&e.push(`us_privacy=${a}`),e.push(`gpp=${n}`),Array.isArray(o))for(const t of o)e.push(`gpp_sid=${t}`);const t=Math.random().toString(),r={bundle:C(x),cw:h.cookiesAreEnabled(),lsw:h.localStorageIsEnabled(),optoutCookie:C(k),origin:d,requestId:t,tld:s.domain,topUrl:s.domain,version:"9.3.0".replace(/\./g,"_")};window.addEventListener("message",(function e(i){if(!i.data||"https://gum.criteo.com"!=i.origin)return;if(i.data.requestId!==t)return;this.removeEventListener("message",e),i.stopImmediatePropagation();const a=i.data;a.optout?(_(x),q(k,!0,43200)):a.bundle&&q(x,a.bundle,9360)}),!0);const p=JSON.stringify(r).replace(/"/g,"%22");return[{type:"iframe",url:`https://gum.criteo.com/syncframe?${e.join("&")}#${p}`}]}if(e.pixelEnabled&&(0,c.C)(i)){const e=[];if(e.push("profile=207"),i&&(!0===i.gdprApplies&&e.push("gdprapplies=true"),i.consentString&&e.push(`gdpr=${i.consentString}`)),a&&e.push(`ccpa=${a}`),e.push(`gpp=${n}`),Array.isArray(o))for(const t of o)e.push(`gpp_sid=${t}`);return[{type:"image",url:`https://ssp-sync.criteo.com/user-sync/redirect?${e.join("&")}`}]}return[]},isBidRequestValid:e=>!(!e||!e.params||!e.params.zoneId&&!e.params.networkId)&&!(w(e)&&!function(e){let t=!0;return["mimes","playerSize","maxduration","protocols","api","skip","placement","playbackmethod"].forEach((function(i){"placement"===i?void 0===(0,n.A)(e,"mediaTypes.video."+i)&&void 0===(0,n.A)(e,"params.video."+i)&&void 0===(0,n.A)(e,"mediaTypes.video.plcmt")&&void 0===(0,n.A)(e,"params.video.plcmt")&&(t=!1,(0,o.logError)("Criteo Bid Adapter: mediaTypes.video."+i+" or mediaTypes.video.plcmt is required")):void 0===(0,n.A)(e,"mediaTypes.video."+i)&&void 0===(0,n.A)(e,"params.video."+i)&&(t=!1,(0,o.logError)("Criteo Bid Adapter: mediaTypes.video."+i+" is required"))})),t}(e)),buildRequests:(e,t)=>{e.forEach((e=>{(function(e){return void 0!==(0,n.A)(e,"mediaTypes.native")})(e)&&(function(e){return!(e.nativeParams&&(e.nativeParams.image&&(!0!==e.nativeParams.image.sendId||!0===e.nativeParams.image.sendTargetingKeys)||e.nativeParams.icon&&(!0!==e.nativeParams.icon.sendId||!0===e.nativeParams.icon.sendTargetingKeys)||e.nativeParams.clickUrl&&(!0!==e.nativeParams.clickUrl.sendId||!0===e.nativeParams.clickUrl.sendTargetingKeys)||e.nativeParams.displayUrl&&(!0!==e.nativeParams.displayUrl.sendId||!0===e.nativeParams.displayUrl.sendTargetingKeys)||e.nativeParams.privacyLink&&(!0!==e.nativeParams.privacyLink.sendId||!0===e.nativeParams.privacyLink.sendTargetingKeys)||e.nativeParams.privacyIcon&&(!0!==e.nativeParams.privacyIcon.sendId||!0===e.nativeParams.privacyIcon.sendTargetingKeys)))}(e)||(0,o.logWarn)(T+"all native assets containing URL should be sent as placeholders with sendId(icon, image, clickUrl, displayUrl, privacyLink, privacyIcon)"),null==(0,n.A)(e,"nativeOrtbRequest.assets")&&((0,o.logWarn)(T+"native asset requirements are missing"),(0,r.J)(e,"nativeOrtbRequest.assets",[{}])))}));const i=function(e,t){const i=(0,o.parseUrl)(t?.refererInfo?.topmostLocation).search;return{url:t?.refererInfo?.page||"",debug:"1"===i.pbt_debug,noLog:"1"===i.pbt_nolog,fledgeEnabled:t.paapi?.enabled,amp:e.some((e=>"amp"===e.params.integrationMode)),networkId:e.find((e=>e.params?.networkId))?.params.networkId,publisherId:e.find((e=>e.params?.pubid))?.params.pubid}}(e,t),a=function(e){let t=b;t+="?profileId=207",t+="&av="+String(37),t+="&wv="+encodeURIComponent("9.3.0"),t+="&cb="+String(Math.floor(99999999999*Math.random())),h.localStorageIsEnabled()?t+="&lsavail=1":t+="&lsavail=0";e.amp&&(t+="&im=1");e.debug&&(t+="&debug=1");e.noLog&&(t+="&nolog=1");const i=C(x);i&&(t+=`&bundle=${i}`);C(k)&&(t+="&optout=1");e.networkId&&(t+="&networkId="+e.networkId);return t}(i),s=S.toORTB({bidderRequest:t,bidRequests:e,context:i});if(s)return{method:"POST",url:a,data:s,bidRequests:e}},interpretResponse:(e,t)=>{if(void 0===e?.body)return[];const i=S.fromORTB({response:e.body,request:t.data}).bids||[],a=(0,n.A)(e.body,"ext.igi")?.filter((e=>(0,o.isArray)(e?.igs))).flatMap((e=>e.igs));return a?.length?{bids:i,paapi:a}:i},onDataDeletionRequest:e=>{const t=C(x);t&&(_(x),(0,v.RD)("https://privacy.criteo.com/api/privacy/datadeletionrequest",null,JSON.stringify({publisherUserId:t}),{contentType:"application/json",method:"POST"}))}};function C(e){const t=h.getCookie(e),i=h.getDataFromLocalStorage(e);return t||i||void 0}function q(e,t,i){const a=new Date;a.setTime(a.getTime()+60*i*60*1e3);const r=`expires=${a.toUTCString()}`;h.setCookie(e,t,r),h.setDataInLocalStorage(e,t)}function _(e){h.setCookie(e,"",0),h.removeDataFromLocalStorage(e)}function E(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:e=>e;return null==e?[]:Array.isArray(e[0])?e.map((e=>t(e))):[t(e)]}function R(e){return e[0]+"x"+e[1]}function w(e){return void 0!==(0,n.A)(e,"mediaTypes.video")}function U(e){try{const t={},i=function(e){if(e.getFloor)return e.getFloor;if(e.params.bidFloor&&e.params.bidFloorCur)try{const t=parseFloat(e.params.bidFloor);return()=>({currency:e.params.bidFloorCur,floor:t})}catch{}}(e);if(i){if(e.mediaTypes?.banner){t.banner={};E((0,n.A)(e,"mediaTypes.banner.sizes")).forEach((a=>t.banner[R(a).toString()]=i.call(e,{size:a,mediaType:d.D4})))}if(e.mediaTypes?.video){t.video={};E((0,n.A)(e,"mediaTypes.video.playerSize")).forEach((a=>t.video[R(a).toString()]=i.call(e,{size:a,mediaType:d.G_})))}return e.mediaTypes?.native&&(t.native={},t.native["*"]=i.call(e,{size:"*",mediaType:d.s6})),t}}catch(e){(0,o.logError)("Could not parse floors from Prebid: "+e)}}(0,s.a$)(P),(0,a.E)("criteoBidAdapter")}},e=>{e.O(0,[60802,58498,15889,51085],(()=>{return t=91493,e(e.s=t);var t}));e.O()}]);
|
package/dist/cwireBidAdapter.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
(self.pbjsChunk=self.pbjsChunk||[]).push([[91515],{15661:(e,t,n)=>{var o=n(7873),r=n(57377),a=n(12938),s=n(71371),i=n(91069),d=n(68229);const l="cwire",c="cw_cwid",g="https://prebid.cwi.re/v1/event",p=(0,i.generateUUID)(),u=(0,a.vM)({bidderCode:l});function m(){const e=u.localStorageIsEnabled()?u.getDataFromLocalStorage(c):null,t=(0,i.getParameterByName)("cwcreative"),n=function(){const e=(0,i.getParameterByName)("cwgroups");return e?e.split(","):[]}(),o=function(){let e=(0,i.getParameterByName)("cwfeatures");return e?e.split(","):[]}(),r=(0,i.getParameterByName)("cwdebug");return{...e&&{cwid:e},...n.length>0&&{refgroups:n},...o.length>0&&{featureFlags:o},...t&&{cwcreative:t},...r&&{debug:!0}}}const f={code:l,gvlid:1081,supportedMediaTypes:[s.D4],isBidRequestValid:function(e){return e.params?.placementId&&(0,i.isNumber)(e.params.placementId)?!(!e.params?.pageId||!(0,i.isNumber)(e.params.pageId))||((0,i.logError)("pageId not provided or not a number"),!1):((0,i.logError)("placementId not provided or not a number"),!1)},buildRequests:function(e,t){let n=t?.refererInfo?.page,o=e.map((e=>function(e){let t=e.adUnitCode,n=document.getElementById(t);if(n){(0,i.logInfo)(`Slot element found: ${t}`);const o=n.offsetWidth,r=n.offsetHeight,a=n.style?.maxWidth,s=n.style?.maxHeight;(0,i.logInfo)(`Slot dimensions (w/h): ${o} / ${r}`),(0,i.logInfo)(`Slot Styles (maxW/maxH): ${a} / ${s}`),e={...e,cwExt:{dimensions:{width:o,height:r},style:{...a&&{maxWidth:a},...s&&{maxHeight:s}}}}}return e}(e))).map((e=>({...e,pageId:e.params?.pageId,placementId:e.params?.placementId})));const r=m(),a={slots:o,httpRef:n,pageViewId:p,sdk:{version:"9.
|
|
1
|
+
(self.pbjsChunk=self.pbjsChunk||[]).push([[91515],{15661:(e,t,n)=>{var o=n(7873),r=n(57377),a=n(12938),s=n(71371),i=n(91069),d=n(68229);const l="cwire",c="cw_cwid",g="https://prebid.cwi.re/v1/event",p=(0,i.generateUUID)(),u=(0,a.vM)({bidderCode:l});function m(){const e=u.localStorageIsEnabled()?u.getDataFromLocalStorage(c):null,t=(0,i.getParameterByName)("cwcreative"),n=function(){const e=(0,i.getParameterByName)("cwgroups");return e?e.split(","):[]}(),o=function(){let e=(0,i.getParameterByName)("cwfeatures");return e?e.split(","):[]}(),r=(0,i.getParameterByName)("cwdebug");return{...e&&{cwid:e},...n.length>0&&{refgroups:n},...o.length>0&&{featureFlags:o},...t&&{cwcreative:t},...r&&{debug:!0}}}const f={code:l,gvlid:1081,supportedMediaTypes:[s.D4],isBidRequestValid:function(e){return e.params?.placementId&&(0,i.isNumber)(e.params.placementId)?!(!e.params?.pageId||!(0,i.isNumber)(e.params.pageId))||((0,i.logError)("pageId not provided or not a number"),!1):((0,i.logError)("placementId not provided or not a number"),!1)},buildRequests:function(e,t){let n=t?.refererInfo?.page,o=e.map((e=>function(e){let t=e.adUnitCode,n=document.getElementById(t);if(n){(0,i.logInfo)(`Slot element found: ${t}`);const o=n.offsetWidth,r=n.offsetHeight,a=n.style?.maxWidth,s=n.style?.maxHeight;(0,i.logInfo)(`Slot dimensions (w/h): ${o} / ${r}`),(0,i.logInfo)(`Slot Styles (maxW/maxH): ${a} / ${s}`),e={...e,cwExt:{dimensions:{width:o,height:r},style:{...a&&{maxWidth:a},...s&&{maxHeight:s}}}}}return e}(e))).map((e=>({...e,pageId:e.params?.pageId,placementId:e.params?.placementId})));const r=m(),a={slots:o,httpRef:n,pageViewId:p,sdk:{version:"9.3.0"},...r};return{method:"POST",url:"https://prebid.cwi.re/v1/bid",data:JSON.stringify(a)}},interpretResponse:function(e,t){if(!u.localStorageIsEnabled()||!u.getDataFromLocalStorage(c)){const t=e.body?.cwid;t&&function(e){u.localStorageIsEnabled()?u.setDataInLocalStorage(c,e):(0,i.logInfo)(`Could not set CWID ${e} in localstorage`)}(t)}const n=e.body?.bids.map((e=>{let{html:t,...n}=e;return{...n,ad:t}}));return n||[]},onBidWon:function(e){(0,i.logInfo)("Bid won.");const t={type:"BID_WON",payload:{bid:e}};navigator.sendBeacon(g,JSON.stringify(t))},onBidderError:function(e,t){(0,i.logInfo)(`Bidder error: ${e}`);const n={type:"BID_ERROR",payload:{error:e,bidderRequest:t}};navigator.sendBeacon(g,JSON.stringify(n))},getUserSyncs:function(e,t,n,o){(0,i.logInfo)("Collecting user-syncs: ",JSON.stringify({syncOptions:e,gdprConsent:n,uspConsent:o,serverResponses:t}));const r=[];if((0,d.C)(n)){(0,i.logInfo)("GDPR purpose 1 consent was given, adding user-syncs");let t=e.pixelEnabled?"image":e.iframeEnabled?"iframe":null;t&&r.push({type:t,url:"https://ib.adnxs.com/getuid?https://prebid.cwi.re/v1/cookiesync?xandrId=$UID"})}return(0,i.logInfo)("Collected user-syncs: ",JSON.stringify({syncs:r})),r}};(0,r.a$)(f),(0,o.E)("cwireBidAdapter")}},e=>{e.O(0,[60802,51085],(()=>{return t=15661,e(e.s=t);var t}));e.O()}]);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(self.pbjsChunk=self.pbjsChunk||[]).push([[61130],{13530:(e,t,a)=>{var i=a(7873),r=a(57377),s=a(71371),p=a(70433);function o(e,t){const a=(0,p.A)(e,"params.video",{}),i=(0,p.A)(t,"ortb2.site")?(0,p.A)(t,"ortb2.site.content"):(0,p.A)(t,"ortb2.app.content"),r={iabcat1:{},iabcat2:{}};(0,p.A)(i,"data",[]).forEach((e=>{[4,5,6,7].includes(e?.ext?.segtax)&&(Array.isArray(e.segment)?e.segment:[]).forEach((t=>{"string"==typeof t.id&&(4===e.ext.segtax?r.iabcat1[t.id]=1:r.iabcat2[t.id]=1)}))}));return{description:a.description||"",duration:a.duration||(0,p.A)(i,"len",0),iabcat1:Array.isArray(a.iabcat1)?a.iabcat1:Array.isArray((0,p.A)(i,"cat"))?i.cat:Object.keys(r.iabcat1),iabcat2:Array.isArray(a.iabcat2)?a.iabcat2:Object.keys(r.iabcat2),id:a.id||(0,p.A)(i,"id",""),lang:a.lang||(0,p.A)(i,"language",""),livestream:"number"==typeof a.livestream?!!a.livestream:!!(0,p.A)(i,"livestream",0),private:a.private||!1,tags:a.tags||(0,p.A)(i,"keywords",""),title:a.title||(0,p.A)(i,"title",""),url:a.url||(0,p.A)(i,"url",""),topics:a.topics||"",xid:a.xid||"",isCreatedForKids:"boolean"==typeof a.isCreatedForKids?a.isCreatedForKids:null,context:{siteOrAppCat:(0,p.A)(i,"cat",[]),videoViewsInSession:"number"==typeof a.videoViewsInSession&&a.videoViewsInSession>=0?a.videoViewsInSession:null,autoplay:"boolean"==typeof a.autoplay?a.autoplay:null,playerVolume:"number"==typeof a.playerVolume&&a.playerVolume>=0&&a.playerVolume<=10?a.playerVolume:null}}}const n={code:"dailymotion",gvlid:573,supportedMediaTypes:[s.G_],isBidRequestValid:function(e){if(e?.params){if(!e?.mediaTypes?.[s.G_])return!1;return!!("instream"===e.mediaTypes[s.G_].context||1===e.mediaTypes[s.G_].placement||1===e.mediaTypes[s.G_].plcmt)&&("string"==typeof e.params.apiKey&&e.params.apiKey.length>10)}return!1},buildRequests:function(){let e=arguments.length>1?arguments[1]:void 0;return(arguments.length>0&&void 0!==arguments[0]?arguments[0]:[]).map((t=>({method:"POST",url:"https://pb.dmxleo.com",data:{pbv:"9.
|
|
1
|
+
(self.pbjsChunk=self.pbjsChunk||[]).push([[61130],{13530:(e,t,a)=>{var i=a(7873),r=a(57377),s=a(71371),p=a(70433);function o(e,t){const a=(0,p.A)(e,"params.video",{}),i=(0,p.A)(t,"ortb2.site")?(0,p.A)(t,"ortb2.site.content"):(0,p.A)(t,"ortb2.app.content"),r={iabcat1:{},iabcat2:{}};(0,p.A)(i,"data",[]).forEach((e=>{[4,5,6,7].includes(e?.ext?.segtax)&&(Array.isArray(e.segment)?e.segment:[]).forEach((t=>{"string"==typeof t.id&&(4===e.ext.segtax?r.iabcat1[t.id]=1:r.iabcat2[t.id]=1)}))}));return{description:a.description||"",duration:a.duration||(0,p.A)(i,"len",0),iabcat1:Array.isArray(a.iabcat1)?a.iabcat1:Array.isArray((0,p.A)(i,"cat"))?i.cat:Object.keys(r.iabcat1),iabcat2:Array.isArray(a.iabcat2)?a.iabcat2:Object.keys(r.iabcat2),id:a.id||(0,p.A)(i,"id",""),lang:a.lang||(0,p.A)(i,"language",""),livestream:"number"==typeof a.livestream?!!a.livestream:!!(0,p.A)(i,"livestream",0),private:a.private||!1,tags:a.tags||(0,p.A)(i,"keywords",""),title:a.title||(0,p.A)(i,"title",""),url:a.url||(0,p.A)(i,"url",""),topics:a.topics||"",xid:a.xid||"",isCreatedForKids:"boolean"==typeof a.isCreatedForKids?a.isCreatedForKids:null,context:{siteOrAppCat:(0,p.A)(i,"cat",[]),videoViewsInSession:"number"==typeof a.videoViewsInSession&&a.videoViewsInSession>=0?a.videoViewsInSession:null,autoplay:"boolean"==typeof a.autoplay?a.autoplay:null,playerVolume:"number"==typeof a.playerVolume&&a.playerVolume>=0&&a.playerVolume<=10?a.playerVolume:null}}}const n={code:"dailymotion",gvlid:573,supportedMediaTypes:[s.G_],isBidRequestValid:function(e){if(e?.params){if(!e?.mediaTypes?.[s.G_])return!1;return!!("instream"===e.mediaTypes[s.G_].context||1===e.mediaTypes[s.G_].placement||1===e.mediaTypes[s.G_].plcmt)&&("string"==typeof e.params.apiKey&&e.params.apiKey.length>10)}return!1},buildRequests:function(){let e=arguments.length>1?arguments[1]:void 0;return(arguments.length>0&&void 0!==arguments[0]?arguments[0]:[]).map((t=>({method:"POST",url:"https://pb.dmxleo.com",data:{pbv:"9.3.0",bidder_request:{gdprConsent:{apiVersion:(0,p.A)(e,"gdprConsent.apiVersion",1),consentString:(0,p.A)(e,"gdprConsent.consentString",""),gdprApplies:!!(0,p.A)(e,"gdprConsent.gdprApplies")},refererInfo:{page:(0,p.A)(e,"refererInfo.page","")},uspConsent:(0,p.A)(e,"uspConsent",""),gppConsent:{gppString:(0,p.A)(e,"gppConsent.gppString")||(0,p.A)(e,"ortb2.regs.gpp",""),applicableSections:(0,p.A)(e,"gppConsent.applicableSections")||(0,p.A)(e,"ortb2.regs.gpp_sid",[])}},config:{api_key:t.params.apiKey},coppa:!!(0,p.A)(e,"ortb2.regs.coppa"),...!(0,p.A)(e,"ortb2.site")&&(0,p.A)(e,"ortb2.app")?{appBundle:(0,p.A)(e,"ortb2.app.bundle",""),appStoreUrl:(0,p.A)(e,"ortb2.app.storeurl","")}:{},...(0,p.A)(e,"ortb2.device")?{device:{lmt:(0,p.A)(e,"ortb2.device.lmt",null),ifa:(0,p.A)(e,"ortb2.device.ifa",""),atts:(0,p.A)(e,"ortb2.device.ext.atts",0)}}:{},request:{adUnitCode:(0,p.A)(t,"adUnitCode",""),auctionId:(0,p.A)(t,"auctionId",""),bidId:(0,p.A)(t,"bidId",""),mediaTypes:{video:{api:t.mediaTypes?.[s.G_]?.api||[],mimes:t.mediaTypes?.[s.G_]?.mimes||[],minduration:t.mediaTypes?.[s.G_]?.minduration||0,maxduration:t.mediaTypes?.[s.G_]?.maxduration||0,playbackmethod:t.mediaTypes?.[s.G_]?.playbackmethod||[],plcmt:t.mediaTypes?.[s.G_]?.plcmt||1,protocols:t.mediaTypes?.[s.G_]?.protocols||[],skip:t.mediaTypes?.[s.G_]?.skip||0,skipafter:t.mediaTypes?.[s.G_]?.skipafter||0,skipmin:t.mediaTypes?.[s.G_]?.skipmin||0,startdelay:t.mediaTypes?.[s.G_]?.startdelay||0,w:t.mediaTypes?.[s.G_]?.w||0,h:t.mediaTypes?.[s.G_]?.h||0}},sizes:t.sizes||[]},video_metadata:o(t,e)},options:{withCredentials:!0,crossOrigin:!0}})))},interpretResponse:e=>e?.body?[e.body]:[],getUserSyncs:(e,t)=>{if(t?.length&&(e.iframeEnabled||e.pixelEnabled)){const a=[],i=[];return t.forEach((e=>{(e.user_syncs||[]).forEach((e=>{"image"===e.type&&i.push({url:e.url,type:"image"}),"iframe"===e.type&&a.push({url:e.url,type:"iframe"})}))})),e.iframeEnabled?a:i}return[]}};(0,r.a$)(n),(0,i.E)("dailymotionBidAdapter")}},e=>{e.O(0,[60802,51085],(()=>{return t=13530,e(e.s=t);var t}));e.O()}]);
|
package/dist/dependencies.json
CHANGED
|
@@ -202,11 +202,13 @@
|
|
|
202
202
|
"urlUtils.js"
|
|
203
203
|
],
|
|
204
204
|
"consentManagementGpp.js": [
|
|
205
|
-
"cmp.js"
|
|
205
|
+
"cmp.js",
|
|
206
|
+
"consentManagement.js"
|
|
206
207
|
],
|
|
207
208
|
"consentManagementTcf.js": [
|
|
208
209
|
"chunk-core.js",
|
|
209
|
-
"cmp.js"
|
|
210
|
+
"cmp.js",
|
|
211
|
+
"consentManagement.js"
|
|
210
212
|
],
|
|
211
213
|
"consentManagementUsp.js": [
|
|
212
214
|
"cmp.js"
|
|
@@ -221,6 +223,9 @@
|
|
|
221
223
|
"chunk-core.js",
|
|
222
224
|
"ortbConverter.js"
|
|
223
225
|
],
|
|
226
|
+
"copper6sspBidAdapter.js": [
|
|
227
|
+
"teqblazeUtils.js"
|
|
228
|
+
],
|
|
224
229
|
"craftBidAdapter.js": [
|
|
225
230
|
"chunk-core.js",
|
|
226
231
|
"keywords.js",
|
|
@@ -495,6 +500,9 @@
|
|
|
495
500
|
"optoutBidAdapter.js": [
|
|
496
501
|
"chunk-core.js"
|
|
497
502
|
],
|
|
503
|
+
"orakiBidAdapter.js": [
|
|
504
|
+
"teqblazeUtils.js"
|
|
505
|
+
],
|
|
498
506
|
"oxxionAnalyticsAdapter.js": [
|
|
499
507
|
"analyticsAdapter.js"
|
|
500
508
|
],
|
|
@@ -671,6 +679,10 @@
|
|
|
671
679
|
"smartyadsAnalyticsAdapter.js": [
|
|
672
680
|
"analyticsAdapter.js"
|
|
673
681
|
],
|
|
682
|
+
"smartyadsBidAdapter.js": [
|
|
683
|
+
"teqblazeUtils.js",
|
|
684
|
+
"smartyadsUtils.js"
|
|
685
|
+
],
|
|
674
686
|
"snigelBidAdapter.js": [
|
|
675
687
|
"chunk-core.js"
|
|
676
688
|
],
|
|
@@ -714,7 +726,8 @@
|
|
|
714
726
|
"urlUtils.js"
|
|
715
727
|
],
|
|
716
728
|
"twistDigitalBidAdapter.js": [
|
|
717
|
-
"chunk.js"
|
|
729
|
+
"chunk.js",
|
|
730
|
+
"vidazooUtils.js"
|
|
718
731
|
],
|
|
719
732
|
"ucfunnelAnalyticsAdapter.js": [
|
|
720
733
|
"analyticsAdapter.js"
|
|
@@ -742,7 +755,8 @@
|
|
|
742
755
|
"ortbConverter.js"
|
|
743
756
|
],
|
|
744
757
|
"vidazooBidAdapter.js": [
|
|
745
|
-
"chunk.js"
|
|
758
|
+
"chunk.js",
|
|
759
|
+
"vidazooUtils.js"
|
|
746
760
|
],
|
|
747
761
|
"videoModule.js": [
|
|
748
762
|
"video.js"
|
package/dist/dspxBidAdapter.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
(self.pbjsChunk=self.pbjsChunk||[]).push([[63214],{85248:(e,r,t)=>{var n=t(7873),d=t(70433),i=t(91069),o=t(57377),a=t(71371),s=t(95789),p=t(15901);const c=["mimes","minduration","maxduration","protocols","w","h","startdelay","placement","plcmt","linearity","skip","skipmin","skipafter","sequence","battr","maxextended","minbitrate","maxbitrate","boxingallowed","playbackmethod","playbackend","delivery","pos","companionad","api","companiontype","ext"],l={code:"dspx",gvlid:602,aliases:[],supportedMediaTypes:[a.D4,a.G_],isBidRequestValid:function(e){return!!e.params.placement},buildRequests:function(e,r){let t={};return e.map((e=>{const n=e.params,o=Math.floor(99999999999*Math.random()),s=r.refererInfo.page,l=e.bidId,u=e.adUnitCode||!1,g=e.auctionId||!1,y=n.devMode||!1;let h=y?"https://dcbuyer.dspx.tv/request/":"https://buyer.dspx.tv/request/",b=n.placement;y&&n.dev&&(h=n.dev.endpoint||h,b=n.dev.placement||b,void 0!==n.dev.pfilter&&(n.pfilter=n.dev.pfilter));let x=function(e){let r={};e.mediaTypes?Object.keys(e.mediaTypes).forEach((t=>{t===a.D4&&(r[t]=f(e)),t===a.G_&&(r[t]=function(e){return v((0,d.A)(e,"mediaTypes.video.playerSize")||e.sizes)}(e))})):r[a.D4]=f(e);return r}(e);var w;let I=x["banner"===(w=e).mediaType||(0,d.A)(w,"mediaTypes.banner")||!function(e){return"video"===e.mediaType||!!(0,d.A)(e,"mediaTypes.video")}(w)?a.D4:a.G_];if(t={_f:"auto",alternative:"prebid_js",inventory_item_id:b,srw:I?I[0].width:0,srh:I?I[0].height:0,idt:100,rnd:o,ref:s,bid_id:l,pbver:"9.
|
|
1
|
+
(self.pbjsChunk=self.pbjsChunk||[]).push([[63214],{85248:(e,r,t)=>{var n=t(7873),d=t(70433),i=t(91069),o=t(57377),a=t(71371),s=t(95789),p=t(15901);const c=["mimes","minduration","maxduration","protocols","w","h","startdelay","placement","plcmt","linearity","skip","skipmin","skipafter","sequence","battr","maxextended","minbitrate","maxbitrate","boxingallowed","playbackmethod","playbackend","delivery","pos","companionad","api","companiontype","ext"],l={code:"dspx",gvlid:602,aliases:[],supportedMediaTypes:[a.D4,a.G_],isBidRequestValid:function(e){return!!e.params.placement},buildRequests:function(e,r){let t={};return e.map((e=>{const n=e.params,o=Math.floor(99999999999*Math.random()),s=r.refererInfo.page,l=e.bidId,u=e.adUnitCode||!1,g=e.auctionId||!1,y=n.devMode||!1;let h=y?"https://dcbuyer.dspx.tv/request/":"https://buyer.dspx.tv/request/",b=n.placement;y&&n.dev&&(h=n.dev.endpoint||h,b=n.dev.placement||b,void 0!==n.dev.pfilter&&(n.pfilter=n.dev.pfilter));let x=function(e){let r={};e.mediaTypes?Object.keys(e.mediaTypes).forEach((t=>{t===a.D4&&(r[t]=f(e)),t===a.G_&&(r[t]=function(e){return v((0,d.A)(e,"mediaTypes.video.playerSize")||e.sizes)}(e))})):r[a.D4]=f(e);return r}(e);var w;let I=x["banner"===(w=e).mediaType||(0,d.A)(w,"mediaTypes.banner")||!function(e){return"video"===e.mediaType||!!(0,d.A)(e,"mediaTypes.video")}(w)?a.D4:a.G_];if(t={_f:"auto",alternative:"prebid_js",inventory_item_id:b,srw:I?I[0].width:0,srh:I?I[0].height:0,idt:100,rnd:o,ref:s,bid_id:l,pbver:"9.3.0"},void 0!==n.pfilter&&(t.pfilter=n.pfilter),r&&r.gdprConsent&&(void 0!==t.pfilter?t.pfilter.gdpr_consent||(t.pfilter.gdpr_consent=r.gdprConsent.consentString,t.pfilter.gdpr=r.gdprConsent.gdprApplies):t.pfilter={gdpr_consent:r.gdprConsent.consentString,gdpr:r.gdprConsent.gdprApplies}),void 0!==n.bcat&&(t.bcat=(0,d.A)(r.ortb2Imp,"bcat")||n.bcat),void 0!==n.dvt&&(t.dvt=n.dvt),y&&(t.prebidDevMode=1),e.userId){e.userId.netId&&(t.did_netid=e.userId.netId),e.userId.id5id&&(t.did_id5=e.userId.id5id.uid||"0",void 0!==e.userId.id5id.ext.linkType&&(t.did_id5_linktype=e.userId.id5id.ext.linkType));let r=(0,d.A)(e,"userId.uid2.id");r&&(t.did_uid2=r);let n=(0,d.A)(e,"userId.sharedid.id");n&&(t.did_sharedid=n);let i=(0,d.A)(e,"userId.pubcid");i&&(t.did_pubcid=i);let o=(0,d.A)(e,"crumbs.pubcid");o&&(t.did_cpubcid=o)}if(e.schain&&(t.schain=e.schain),void 0===t.pfilter||!t.pfilter.floorprice){let r=function(e){if(!(0,i.isFn)(e.getFloor))return(0,d.A)(e,"params.bidfloor",0);try{return e.getFloor({currency:"EUR",mediaType:"*",size:"*"}).floor}catch(e){return 0}}(e);r>0&&(void 0!==t.pfilter?t.pfilter.floorprice=r:t.pfilter={floorprice:r})}if(g&&(t.auctionId=g),u&&(t.pbcode=u),t.media_types=function(e){let r={};return Object.keys(e).forEach((t=>{r[t]=e[t].map((e=>e.width+"x"+e.height)).join(",")})),r}(x),void 0!==x[a.G_]){t.vctx=function(e){return(0,d.A)(e,"mediaTypes.video.context")||"unknown"}(e),void 0!==n.vastFormat&&(t.vf=n.vastFormat),t.vpl={};let r=(0,d.A)(e,"mediaTypes.video");Object.keys(r).filter((e=>(0,p.mK)(c,e))).forEach((e=>t.vpl[e]=r[e]))}return{method:"GET",url:h,data:m(t)}}))},interpretResponse:function(e,r){(0,i.logMessage)("DSPx: serverResponse",e),(0,i.logMessage)("DSPx: bidRequest",r);const t=[],n=e.body,o=n.crid||0,a=n.cpm/1e6||0;if(0!==a&&0!==o){const e=n.dealid||"",p=n.currency||"EUR",c=void 0===n.netRevenue||n.netRevenue,l={requestId:n.bid_id,cpm:a,width:n.width,height:n.height,creativeId:o,dealId:e,currency:p,netRevenue:c,type:n.type,ttl:60,meta:{advertiserDomains:n.adomain||[]}};n.vastUrl&&(l.vastUrl=n.vastUrl,l.mediaType="video"),n.vastXml&&(l.vastXml=n.vastXml,l.mediaType="video"),n.renderer&&(l.renderer=function(e,r){(0,i.logMessage)("DSPx: newRenderer",e,r);const t=s.A4.install({id:r.renderer.id||r.bid_id,url:e.params&&e.params.rendererUrl||r.renderer.url,config:r.renderer.options||(0,d.A)(e,"renderer.options"),loaded:!1});try{t.setRender(y)}catch(e){(0,i.logWarn)("Prebid Error calling setRender on renderer",e)}return t}(r,n)),n.videoCacheKey&&(l.videoCacheKey=n.videoCacheKey),n.adTag&&(l.ad=n.adTag),n.bid_appendix&&Object.keys(n.bid_appendix).forEach((e=>{l[e]=n.bid_appendix[e]})),t.push(l)}return t},getUserSyncs:function(e,r,t,n){if(!r||0===r.length)return[];const d=[];let i="";return t&&(i="gdprApplies"in t&&"boolean"==typeof t.gdprApplies?`gdpr=${Number(t.gdprApplies)}&gdpr_consent=${t.consentString}`:`gdpr_consent=${t.consentString}`),r.length>0&&r[0].body.userSync&&(e.iframeEnabled&&r[0].body.userSync.iframeUrl.forEach((e=>d.push({type:"iframe",url:u(e,i)}))),e.pixelEnabled&&r[0].body.userSync.imageUrl.forEach((e=>d.push({type:"image",url:u(e,i)})))),d}};function u(e,r){return r?e+(-1!==e.indexOf("?")?"&":"?")+r:e}function m(e,r){let t,n=[];for(t in e)if(e.hasOwnProperty(t)){let d=r?r+"["+t+"]":t,i=e[t];n.push(null!==i&&"object"==typeof i?m(i,d):encodeURIComponent(d)+"="+encodeURIComponent(i))}return n.join("&")}function f(e){return v((0,d.A)(e,"mediaTypes.banner.sizes")||e.sizes)}function g(e){let r={};return r.width=parseInt(e[0],10),r.height=parseInt(e[1],10),r}function v(e){return Array.isArray(e[0])?e.map((e=>g(e))):[g(e)]}function y(e){(0,i.logMessage)("DSPx: outstreamRender bid:",e);const r=function(e){const r=window.document.createDocumentFragment();let t=window.document.createElement("div");t.innerHTML=(0,d.A)(e,"renderer.config.code",""),r.appendChild(t);for(var n=t.getElementsByTagName("script"),i=[],o=0;o<n.length;o++)i.push(n[o]);for(var a=0;a<i.length;a++){for(var s=i[a],p=document.createElement("script"),c=0;c<s.attributes.length;c++){var l=s.attributes[c];p.setAttribute(l.name,l.value)}p.appendChild(document.createTextNode(s.innerHTML)),s.parentNode.replaceChild(p,s)}return r}(e);try{const t=(0,i.getBidIdParameter)("iframe",e.renderer.config);if(t&&"IFRAME"===window.document.getElementById(t).nodeName){const n=window.document.getElementById(t);return(n.contentDocument||n.contentWindow&&n.contentWindow.document).body.appendChild(r),void("function"==typeof window.dspxRender?window.dspxRender(e):(0,i.logError)("[dspx][renderer] Error: dspxRender function is not found"))}const n=(0,i.getBidIdParameter)("slot",e.renderer.config)||e.adUnitCode;n&&window.document.getElementById(n)?(window.document.getElementById(n).appendChild(r),"function"==typeof window.dspxRender?window.dspxRender(e):(0,i.logError)("[dspx][renderer] Error: dspxRender function is not found")):n&&(0,i.logError)("[dspx][renderer] Error: slot not found")}catch(e){(0,i.logError)("[dspx][renderer] Error:"+e.message)}}(0,o.a$)(l),(0,n.E)("dspxBidAdapter")}},e=>{e.O(0,[60802,51085],(()=>{return r=85248,e(e.s=r);var r}));e.O()}]);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(self.pbjsChunk=self.pbjsChunk||[]).push([[42069],{30579:(e,r,t)=>{var n=t(7873),s=t(91069),i=t(63172),a=t(70433),o=t(57377),d=t(71371),l=t(95789),u=t(89766);const p="https://cdn.dxkulture.com/players/dxOutstreamPlayer.js",c=(0,u.A)({context:{netRevenue:!0,ttl:300},imp(e,r,t){const n=e(r,t);return n.bidfloor||(n.bidfloor=r.params.bidfloor||0,n.bidfloorcur=r.params.currency||"USD"),n},request(e,r,t,n){const a=e(r,t,n);return(0,s.mergeDeep)(a,{ext:{hb:1,prebidver:"9.
|
|
1
|
+
(self.pbjsChunk=self.pbjsChunk||[]).push([[42069],{30579:(e,r,t)=>{var n=t(7873),s=t(91069),i=t(63172),a=t(70433),o=t(57377),d=t(71371),l=t(95789),u=t(89766);const p="https://cdn.dxkulture.com/players/dxOutstreamPlayer.js",c=(0,u.A)({context:{netRevenue:!0,ttl:300},imp(e,r,t){const n=e(r,t);return n.bidfloor||(n.bidfloor=r.params.bidfloor||0,n.bidfloorcur=r.params.currency||"USD"),n},request(e,r,t,n){const a=e(r,t,n);return(0,s.mergeDeep)(a,{ext:{hb:1,prebidver:"9.3.0",adapterver:"1.0.0"}}),t.gdprConsent&&((0,i.J)(a,"user.ext.consent",t.gdprConsent.consentString),(0,i.J)(a,"regs.ext.gdpr",t.gdprConsent.gdprApplies?1:0)),t.uspConsent&&(0,i.J)(a,"regs.ext.us_privacy",t.uspConsent),a},bidResponse(e,r,t){let n;const{bidRequest:i}=t;n=r.adm?.trim().startsWith("<VAST")?d.G_:d.D4,t.mediaType=n,t.currency="USD",n===d.G_&&(t.vastXml=r.adm);const a=e(r,t);return n===d.G_&&"outstream"===i.mediaTypes.video.context&&(a.renderer=function(e){const r={width:e.width,height:e.height,vastTimeout:5e3,maxAllowedVastTagRedirects:3,allowVpaid:!1,autoPlay:!0,preload:!0,mute:!1},t=l.A4.install({id:e.adId,url:p,config:r,loaded:!1,targetId:e.adUnitCode,adUnitCode:e.adUnitCode});try{t.setRender((function(e){e.renderer.push((()=>{const{id:r,config:t}=e.renderer;window.dxOutstreamPlayer(e,r,t)}))}))}catch(e){(0,s.logWarn)("dxkulture: Prebid Error calling setRender on renderer",e)}return t}(a)),a}}),m={code:"dxkulture",VERSION:"1.0.0",supportedMediaTypes:[d.D4,d.G_],ENDPOINT:"https://ads.dxkulture.com/pbjs",isBidRequestValid:function(e){return function(e){if(!e.params)return!1;if(e.params.e2etest)return!0;if(!e.params.publisherId)return(0,s.logError)("dxkulture: Validation failed: publisherId not declared"),!1;if(!e.params.placementId)return(0,s.logError)("dxkulture: Validation failed: placementId not declared"),!1;if(!y(e)&&!f(e))return!1;return!0}(e)&&function(e){if(!f(e))return!0;const r=(0,a.A)(e,"mediaTypes.banner");if(!Array.isArray(r.sizes))return!1;return!0}(e)&&function(e){if(!y(e))return!0;const r=(0,a.A)(e,"mediaTypes.video",{}),t=(0,a.A)(e,"params.video",{}),n=(0,a.A)(e,"params",{});if(n&&n.e2etest)return!0;const i={...r,...t};if(!Array.isArray(i.mimes)||0===i.mimes.length)return(0,s.logError)("dxkulture: Validation failed: mimes are invalid"),!1;if(!Array.isArray(i.protocols)||0===i.protocols.length)return(0,s.logError)("dxkulture: Validation failed: protocols are invalid"),!1;if(!i.context)return(0,s.logError)("dxkulture: Validation failed: context id not declared"),!1;if("instream"!==i.context)return(0,s.logError)("dxkulture: Validation failed: only context instream is supported "),!1;if(void 0===i.playerSize||!Array.isArray(i.playerSize)||!Array.isArray(i.playerSize[0]))return(0,s.logError)("dxkulture: Validation failed: player size not declared or is not in format [[w,h]]"),!1;return!0}(e)},buildRequests:function(e,r){let t=d.D4;y(e)&&(t=d.G_);const n=c.toORTB({bidRequests:e,bidderRequest:r,context:{contextMediaType:t}});let i=e[0].params.publisherId,a=e[0].params.placementId;e[0].params.e2etest&&((0,s.logMessage)("dxkulture: E2E test mode enabled"),i="e2etest");let o=m.ENDPOINT+"?pid="+i;return a&&(o+="&placementId="+a),{method:"POST",url:o,data:n}},interpretResponse:function(e,r){return c.fromORTB({response:e.body,request:r.data}).bids},getUserSyncs:function(e,r,t,n){(0,s.logInfo)("dxkulture.getUserSyncs","syncOptions",e,"serverResponses",r);let i=[];return e.iframeEnabled||e.pixelEnabled?(r.forEach((r=>{const s=(0,a.A)(r,"body.ext.usersync");if(s){let r=[];Object.keys(s).forEach((e=>{const t=s[e];t.syncs&&t.syncs.length&&(r=r.concat(t.syncs))})),r.forEach((e=>{let r=[],s=e.url;"iframe"===e.type&&(t&&(r.push("gdpr="+(t.gdprApplies?1:0)),r.push("gdpr_consent="+encodeURIComponent(t.consentString||""))),n&&r.push("us_privacy="+encodeURIComponent(n)),s=`${e.url}${r.length>0?"?"+r.join("&"):""}`),i.push({type:"iframe"===e.type?"iframe":"image",url:s})})),e.iframeEnabled?i=i.filter((e=>"iframe"==e.type)):e.pixelEnabled&&(i=i.filter((e=>"image"==e.type)))}})),(0,s.logInfo)("dxkulture.getUserSyncs result=%o",i),i):i}};function f(e){return!!(0,a.A)(e,"mediaTypes.banner")}function y(e){return!!(0,a.A)(e,"mediaTypes.video")}(0,o.a$)(m),(0,n.E)("dxkultureBidAdapter")}},e=>{e.O(0,[60802,58498,51085],(()=>{return r=30579,e(e.s=r);var r}));e.O()}]);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(self.pbjsChunk=self.pbjsChunk||[]).push([[22969],{87371:(e,t,n)=>{var r=n(7873),i=n(91069),o=n(57377),a=n(12938),s=n(71371),d=n(51252);const c="eplanning",u=(0,a.vM)({bidderCode:c}),p=Math.random(),l="i.e-planning.net",f=["ci","sv","t","ml","sn"],m="USD",g="1x1",h="pbsr_",y="pbvi_",v=window.navigator.userAgent.match(/(mobile)|(ip(hone|ad))|(android)|(blackberry)|(nokia)|(phone)|(opera\smini)/i),b=["1x1","300x50","320x50","300x250"],I=["1x1","970x90","970x250","160x600","300x600","728x90","300x250"],x="640x480",w={code:c,supportedMediaTypes:[s.D4,s.G_],isBidRequestValid:function(e){return Boolean(e.params.ci)||Boolean(e.params.t)},buildRequests:function(e,t){let n,i;const o=function(e){if(function(e){for(let t=0;t<e.length;t++)if(e[t].params.t)return!0;return!1}(e))return function(e){let t;return e.forEach((e=>t=t||e.params.isv)),{t:!0,isv:t||l}}(e.filter((e=>e.params.t)));let t={};return e.forEach((e=>{f.forEach((n=>{e.params[n]&&!t[n]&&(t[n]=e.params[n])}))})),t}(e),a=function(){try{return window.top.document.charset||window.top.document.characterSet}catch(e){return document.charset||document.characterSet}}(),d=function(e,t){let n=e.reduce(((e,t)=>t.mediaTypes&&t.mediaTypes[s.G_]?"outstream"==t.mediaTypes[s.G_].context?2|e:1|e:e),0);n&&(e=e.filter((e=>e.mediaTypes&&e.mediaTypes[s.G_]&&(1&n?!e.mediaTypes[s.G_].context||"instream"==e.mediaTypes[s.G_].context:"outstream"==e.mediaTypes[s.G_].context))));let r=function(e){let t={};return e.forEach((e=>{let n=S(e,!0);t[n]=t[n]?t[n]:[],t[n].push(e)})),t}(e),i={str:"",vs:"",map:{},impType:n};return i.str=Object.keys(r).map((e=>r[e].map(((e,r)=>{let o;if(i.vs+=function(e){let t,n="";u.hasLocalStorage()?(t=function(e){let t=u.getDataFromLocalStorage(h+e.adUnitCode)||0,n=u.getDataFromLocalStorage(y+e.adUnitCode)||0,r=t>0?n/t:0;return{render:t,ratio:window.parseInt(10*r,10)}}(e),n+=t.render>=4?t.ratio.toString(16):"F"):n+="F";return n}(e),n){let t=function(e){if(null==e||!Array.isArray(e))return;let t=Array.isArray(e[0])?e[0]:e;return Array.isArray(t)&&2==t.length?t:void 0}(e.mediaTypes[s.G_].playerSize),n=t?t.join("x"):x;return o="video_"+n+"_"+r,i.map[o]=e.bidId,o+":"+n+";1"+_(e)}return o=t?function(e){return e.replace(/_|\.|-|\//g,"").replace(/\)\(|\(|\)|:/g,"_").replace(/^_+|_+$/g,"")}(e.adUnitCode):e.params&&e.params.sn||S(e,!0)+"_"+r,i.map[o]=e.bidId,o+":"+S(e)+_(e)})).join("+"))).join("+"),i}(e,o.ml),c=t.refererInfo.page||t.refererInfo.topmostLocation,m=t.refererInfo.domain||window.location.host;if(o.t)n="https://"+o.isv+"/layers/t_pbjs_2.json",i={};else{n="https://"+(o.sv||"pbjs.e-planning.net")+"/pbjs/1/"+o.ci+"/1/"+m+"/ROS";const s=t.refererInfo.ref||t.refererInfo.topmostLocation;if(u.hasLocalStorage()&&function(e){let t=[];e.forEach((e=>{let n=U(e.adUnitCode);n?T(n,e.adUnitCode):t.push(e.adUnitCode)})),t.length&&function(e){const t=new MutationObserver((function(t,n){let r,i;t&&Array.isArray(t)&&t.forEach((t=>{t&&t.addedNodes&&Array.isArray(t.addedNodes)&&t.addedNodes.forEach((t=>{r=e.indexOf(t.id),i=t,r<0&&e.forEach((n=>{let o=U(n);o&&o.contains(t)&&o.getBoundingClientRect().width>0&&(r=e.indexOf(o.id),i=o)})),r>=0&&(T(i,e[r]),e.splice(r,1),e.length||n.disconnect())}))}))}));document.addEventListener("DOMContentLoaded",(function(e){var n={childList:!0,subtree:!0,characterData:!0};t.observe(document.body,n)}))}(t)}(e),i={rnd:p,e:d.str,ur:A(c||"file"),pbv:"9.
|
|
1
|
+
(self.pbjsChunk=self.pbjsChunk||[]).push([[22969],{87371:(e,t,n)=>{var r=n(7873),i=n(91069),o=n(57377),a=n(12938),s=n(71371),d=n(51252);const c="eplanning",u=(0,a.vM)({bidderCode:c}),p=Math.random(),l="i.e-planning.net",f=["ci","sv","t","ml","sn"],m="USD",g="1x1",h="pbsr_",y="pbvi_",v=window.navigator.userAgent.match(/(mobile)|(ip(hone|ad))|(android)|(blackberry)|(nokia)|(phone)|(opera\smini)/i),b=["1x1","300x50","320x50","300x250"],I=["1x1","970x90","970x250","160x600","300x600","728x90","300x250"],x="640x480",w={code:c,supportedMediaTypes:[s.D4,s.G_],isBidRequestValid:function(e){return Boolean(e.params.ci)||Boolean(e.params.t)},buildRequests:function(e,t){let n,i;const o=function(e){if(function(e){for(let t=0;t<e.length;t++)if(e[t].params.t)return!0;return!1}(e))return function(e){let t;return e.forEach((e=>t=t||e.params.isv)),{t:!0,isv:t||l}}(e.filter((e=>e.params.t)));let t={};return e.forEach((e=>{f.forEach((n=>{e.params[n]&&!t[n]&&(t[n]=e.params[n])}))})),t}(e),a=function(){try{return window.top.document.charset||window.top.document.characterSet}catch(e){return document.charset||document.characterSet}}(),d=function(e,t){let n=e.reduce(((e,t)=>t.mediaTypes&&t.mediaTypes[s.G_]?"outstream"==t.mediaTypes[s.G_].context?2|e:1|e:e),0);n&&(e=e.filter((e=>e.mediaTypes&&e.mediaTypes[s.G_]&&(1&n?!e.mediaTypes[s.G_].context||"instream"==e.mediaTypes[s.G_].context:"outstream"==e.mediaTypes[s.G_].context))));let r=function(e){let t={};return e.forEach((e=>{let n=S(e,!0);t[n]=t[n]?t[n]:[],t[n].push(e)})),t}(e),i={str:"",vs:"",map:{},impType:n};return i.str=Object.keys(r).map((e=>r[e].map(((e,r)=>{let o;if(i.vs+=function(e){let t,n="";u.hasLocalStorage()?(t=function(e){let t=u.getDataFromLocalStorage(h+e.adUnitCode)||0,n=u.getDataFromLocalStorage(y+e.adUnitCode)||0,r=t>0?n/t:0;return{render:t,ratio:window.parseInt(10*r,10)}}(e),n+=t.render>=4?t.ratio.toString(16):"F"):n+="F";return n}(e),n){let t=function(e){if(null==e||!Array.isArray(e))return;let t=Array.isArray(e[0])?e[0]:e;return Array.isArray(t)&&2==t.length?t:void 0}(e.mediaTypes[s.G_].playerSize),n=t?t.join("x"):x;return o="video_"+n+"_"+r,i.map[o]=e.bidId,o+":"+n+";1"+_(e)}return o=t?function(e){return e.replace(/_|\.|-|\//g,"").replace(/\)\(|\(|\)|:/g,"_").replace(/^_+|_+$/g,"")}(e.adUnitCode):e.params&&e.params.sn||S(e,!0)+"_"+r,i.map[o]=e.bidId,o+":"+S(e)+_(e)})).join("+"))).join("+"),i}(e,o.ml),c=t.refererInfo.page||t.refererInfo.topmostLocation,m=t.refererInfo.domain||window.location.host;if(o.t)n="https://"+o.isv+"/layers/t_pbjs_2.json",i={};else{n="https://"+(o.sv||"pbjs.e-planning.net")+"/pbjs/1/"+o.ci+"/1/"+m+"/ROS";const s=t.refererInfo.ref||t.refererInfo.topmostLocation;if(u.hasLocalStorage()&&function(e){let t=[];e.forEach((e=>{let n=U(e.adUnitCode);n?T(n,e.adUnitCode):t.push(e.adUnitCode)})),t.length&&function(e){const t=new MutationObserver((function(t,n){let r,i;t&&Array.isArray(t)&&t.forEach((t=>{t&&t.addedNodes&&Array.isArray(t.addedNodes)&&t.addedNodes.forEach((t=>{r=e.indexOf(t.id),i=t,r<0&&e.forEach((n=>{let o=U(n);o&&o.contains(t)&&o.getBoundingClientRect().width>0&&(r=e.indexOf(o.id),i=o)})),r>=0&&(T(i,e[r]),e.splice(r,1),e.length||n.disconnect())}))}))}));document.addEventListener("DOMContentLoaded",(function(e){var n={childList:!0,subtree:!0,characterData:!0};t.observe(document.body,n)}))}(t)}(e),i={rnd:p,e:d.str,ur:A(c||"file"),pbv:"9.3.0",ncb:"1",vs:d.vs},a&&(i.crs=a),s&&(i.fr=A(s)),t&&t.gdprConsent&&void 0!==t.gdprConsent.gdprApplies&&(i.gdpr=t.gdprConsent.gdprApplies?"1":"0",void 0!==t.gdprConsent.consentString&&(i.gdprcs=t.gdprConsent.consentString)),t&&t.uspConsent&&(i.ccpa=t.uspConsent),(0,r.m)().getUserIds&&"function"==typeof(0,r.m)().getUserIds){const e=(0,r.m)().getUserIds();for(var g in e)i["e_"+g]="object"==typeof e[g]?encodeURIComponent(JSON.stringify(e[g])):encodeURIComponent(e[g])}d.impType&&(i.vctx=1&d.impType?1:2,i.vv=3)}return{method:"GET",url:n,data:i,adUnitToBidId:d.map}},interpretResponse:function(e,t){const n=e.body;let r=[];return n&&!(0,i.isEmpty)(n.sp)&&n.sp.forEach((e=>{(0,i.isEmpty)(e.a)||e.a.forEach((n=>{const i={requestId:t.adUnitToBidId[e.k],cpm:n.pr,width:n.w,height:n.h,ttl:120,creativeId:n.crid,netRevenue:true,currency:m};n.adom&&(i.meta={advertiserDomains:n.adom}),t&&t.data&&t.data.vv?(i.vastXml=n.adm,i.mediaType=s.G_):i.ad=n.adm,r.push(i)}))})),r},getUserSyncs:function(e,t){const n=[],r=!(0,i.isEmpty)(t)&&t[0].body;if(r&&!(0,i.isEmpty)(r.cs)){r.cs.forEach((t=>{"string"==typeof t&&e.pixelEnabled?n.push({type:"image",url:t}):"object"==typeof t&&t.ifr&&e.iframeEnabled&&n.push({type:"iframe",url:t.u})}))}return n}};function C(){return(0,i.getWindowSelf)().innerWidth<=1024||window.orientation||v}function E(e,t){var n=C()?b:I,r=n.indexOf(e),i=n.indexOf(t);return r>-1?i>-1&&r<i?1:-1:i>-1?1:0}function S(e,t){var n,r=e.sizes&&e.sizes.length?(n=e.sizes,(0,i.parseSizesInput)(n).sort(E)):[];return r.length?t?r[0]:r.join(","):g}function _(e){if("function"==typeof e.getFloor){let t=e.getFloor({currency:m,mediaType:"*",size:"*"});if(t.floor)return"|"+encodeURIComponent(t.floor)}return""}function T(e,t){var n;(n={name:t,div:e}).div&&(j(h+n.name),function(){let e,t,n=5,r=1e3,i=.5,o={};function a(e){e.forEach((function(e){var t=e.target;e.isIntersecting?e.intersectionRatio>=i&&e.boundingClientRect&&e.boundingClientRect.height>0&&e.boundingClientRect.width>0&&(o[t.id]=!0):o[t.id]=!1}))}function s(e){return o[e.id]&&document.visibilityState&&"visible"===document.visibilityState}function d(){if(!t){var e={root:null,rootMargin:"0px",threshold:[i]};t=new IntersectionObserver(a.bind(this),e)}}function c(e,t,i){let o=s(t)?e+1:0;o===n?(u(t),i()):setTimeout(c.bind(this,o,t,i),r/n)}function u(e){delete o[e.id],t.unobserve(e)}function p(e){t.observe(e)}function l(e,t){e&&(d(),p(e),c(0,e,t))}return e={onView:l.bind(this)},e}().onView(n.div,j.bind(void 0,y+n.name)))}function U(e){return document.getElementById(e)||document.getElementById(function(e){if((0,i.isGptPubadsDefined)()){const t=googletag.pubads().getSlots(),n=(0,d.mw)(e);for(let e=0;e<t.length;e++)if(n(t[e]))return t[e].getSlotElementId()}return null}(e))}function A(e){return e.length>255&&(e=e.split("?")[0]).length>255&&(e=e.slice(0,255)),e}function j(e){let t;try{t=u.getDataFromLocalStorage(e),t=t?window.parseInt(t,10)+1:1,u.setDataInLocalStorage(e,t)}catch(e){return!1}return!0}(0,o.a$)(w),(0,r.E)("eplanningBidAdapter")}},e=>{e.O(0,[33005,60802,51085],(()=>{return t=87371,e(e.s=t);var t}));e.O()}]);
|
package/dist/euidIdSystem.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
(self.pbjsChunk=self.pbjsChunk||[]).push([[65594,56293],{31536:(e,t,s)=>{var r=s(7873),i=s(91069),n=s(70433),o=s(16833),a=s(12938),l=s(45569),d=s(84259);const u="euid",c=`PrebidJS-9.2.0-EUIDModule-${d.kz}`,p="EUID: ";function h(e,t){return function(){for(var s=arguments.length,r=new Array(s),i=0;i<s;i++)r[i]=arguments[i];e(t+" ",...r)}}const g=h(i.logInfo,p),y=h(i.logWarn,p),f=(0,a.vM)({moduleType:l.fW,moduleName:u});const b={name:u,gvlid:21,decode(e){const t=function(e){if("string"==typeof e){g("Found server-only token. Refresh is unavailable for this token.");return{euid:{id:e}}}if("optout"===e.latestToken)return g("Found optout token. Refresh is unavailable for this token."),{euid:{optout:!0}};if(Date.now()<e.latestToken.identity_expires)return{euid:{id:e.latestToken.advertising_token}};return null}(e);return g("EUID decode returned",t),t},getId(e,t){if(!0!==t?.gdprApplies)return void(0,i.logWarn)("EUID is intended for use within the EU. The module will not run when GDPR does not apply.");if(!function(e){const t=!0===e?.gdprApplies,s=(0,n.A)(e,"vendorData.purpose.consents.1"),r=(0,n.A)(e,`vendorData.vendor.consents.${21..toString()}`);return!!(!t||s&&r)}(t))return void y("Unable to use EUID module due to insufficient consent. The EUID module requires storage permission.");const s={apiBaseUrl:e?.params?.euidApiBase??"https://prod.euid.eu",paramToken:e?.params?.euidToken,serverCookieName:e?.params?.euidCookie,storage:e?.params?.storage??"localStorage",clientId:c,internalStorage:"__euid_advertising_token"};s.cstg={serverPublicKey:e?.params?.serverPublicKey,subscriptionId:e?.params?.subscriptionId,...(0,d.E0)(e?.params??{})},g("EUID configuration loaded and mapped.",s);const r=(0,d.wq)(s,f,g,y);return g("EUID getId returned",r),r},eids:{euid:{source:"euid.eu",atype:3,getValue:function(e){return e.id}}}};(0,o.bz)("userId",b),(0,r.E)("euidIdSystem")},84259:(e,t,s)=>{s.d(t,{E0:()=>h,kz:()=>o,wq:()=>p});var r=s(7873),i=s(68044),n=s(91069);const o="1.1";function a(e){return!!("object"==typeof e&&null!==e&&e.advertising_token&&e.identity_expires&&e.refresh_from&&e.refresh_token&&e.refresh_expires)}class l{constructor(e,t,s,r){this._baseUrl=e.baseUrl,this._clientVersion=t,this._logInfo=s,this._logWarn=r}createArrayBuffer(e){const t=new Uint8Array(e.length);for(let s=0;s<e.length;s++)t[s]=e.charCodeAt(s);return t}hasStatusResponse(e){return"object"==typeof e&&e&&e.status}isValidRefreshResponse(e){return this.hasStatusResponse(e)&&("optout"===e.status||"expired_token"===e.status||"success"===e.status&&e.body&&a(e.body))}ResponseToRefreshResult(e){return this.isValidRefreshResponse(e)?"success"===e.status?{status:e.status,identity:e.body}:e:"Response didn't contain a valid status"}callRefreshApi(e){const t=this._baseUrl+"/v2/token/refresh";let s,r;const n=new Promise(((e,t)=>{s=e,r=t}));return this._logInfo("Sending refresh request",e),(0,i.RD)(t,{success:t=>{try{if(e.refresh_response_key){this._logInfo("Decrypting refresh API response");const i=this.createArrayBuffer(atob(t));window.crypto.subtle.importKey("raw",this.createArrayBuffer(atob(e.refresh_response_key)),{name:"AES-GCM"},!1,["decrypt"]).then((e=>{this._logInfo("Imported decryption key"),window.crypto.subtle.decrypt({name:"AES-GCM",iv:i.slice(0,12),tagLength:128},e,i.slice(12)).then((e=>{const t=String.fromCharCode(...new Uint8Array(e));this._logInfo("Decrypted to:",t);const i=JSON.parse(t),n=this.ResponseToRefreshResult(i);"string"==typeof n?r(n):s(n)}),(e=>this._logWarn("Call to UID2 API failed",e)))}),(e=>this._logWarn("Call to UID2 API failed",e)))}else{this._logInfo("No response decryption key available, assuming unencrypted JSON");const e=JSON.parse(t),i=this.ResponseToRefreshResult(e);"string"==typeof i?r(i):s(i)}}catch(e){r(t)}},error:(e,t)=>{try{this._logInfo("Error status, assuming unencrypted JSON");const e=JSON.parse(t.responseText),i=this.ResponseToRefreshResult(e);"string"==typeof i?r(i):s(i)}catch(t){r(e)}}},e.refresh_token,{method:"POST",customHeaders:{"X-UID2-Client-Version":this._clientVersion}}),n}}class d{constructor(e,t,s,r){this._storage=e,this._preferLocalStorage=t,this._storageName=s,this._logInfo=r}readCookie(e){return this._storage.cookiesAreEnabled()?this._storage.getCookie(e):null}readLocalStorage(e){return this._storage.localStorageIsEnabled()?this._storage.getDataFromLocalStorage(e):null}readModuleCookie(){return this.parseIfContainsBraces(this.readCookie(this._storageName))}writeModuleCookie(e){this._storage.setCookie(this._storageName,JSON.stringify(e),Date.now()+864e5)}readModuleStorage(){return this.parseIfContainsBraces(this.readLocalStorage(this._storageName))}writeModuleStorage(e){this._storage.setDataInLocalStorage(this._storageName,JSON.stringify(e))}readProvidedCookie(e){return JSON.parse(this.readCookie(e))}parseIfContainsBraces(e){return e?.includes("{")?JSON.parse(e):e}storeValue(e){this._preferLocalStorage?this.writeModuleStorage(e):this.writeModuleCookie(e)}getStoredValueWithFallback(){const e=this._preferLocalStorage?"local storage":"cookie",t=(this._preferLocalStorage?this.readModuleStorage:this.readModuleCookie).bind(this),s=(this._preferLocalStorage?this.writeModuleStorage:this.writeModuleCookie).bind(this),r=(this._preferLocalStorage?this.readModuleCookie:this.readModuleStorage).bind(this),i=t();if(i){if("string"==typeof i){const t=r();if(t&&"object"==typeof t)return this._logInfo(`${e} contained a basic token, but found a refreshable token fallback. Copying the fallback value to ${e}.`),s(t),t}}else{const t=r();if(t)return this._logInfo(`${e} was empty, but found a fallback value.`),"object"==typeof t&&(this._logInfo(`Copying the fallback value to ${e}.`),s(t)),t}return i}}function u(e,t,s,r,i,n){i("UID2 base url provided: ",e);return new l({baseUrl:e},s,i,n).callRefreshApi(t).then((e=>{i("Refresh endpoint responded with:",e);const s={originalToken:t,latestToken:e.identity};let n=r.getStoredValueWithFallback();return n?.originalIdentity&&(s.originalIdentity=n.originalIdentity),r.storeValue(s),s}))}let c;{const e=9;c={isCSTGOptionsValid(e,t){if("object"!=typeof e||null===e)return t('CSTG is not being used, but is included in the Prebid.js bundle. You can reduce the bundle size by passing "--disable UID2_CSTG" to the Prebid.js build.'),!1;const s=e;if(!s.serverPublicKey&&!s.subscriptionId)return t("CSTG has been enabled but its parameters have not been set."),!1;if("string"!=typeof s.serverPublicKey)return t("CSTG opts.serverPublicKey must be a string"),!1;const r=/^(UID2|EUID)-X-[A-Z]-.+/;return r.test(s.serverPublicKey)?"string"!=typeof s.subscriptionId?(t("CSTG opts.subscriptionId must be a string"),!1):0!==s.subscriptionId.length||(t("CSTG opts.subscriptionId is empty"),!1):(t(`CSTG opts.serverPublicKey must match the regular expression ${r}`),!1)},getValidIdentity(e,s){if(e.emailHash)return t.isBase64Hash(e.emailHash)?{email_hash:e.emailHash}:void s("CSTG opts.emailHash is invalid");if(e.phoneHash)return t.isBase64Hash(e.phoneHash)?{phone_hash:e.phoneHash}:void s("CSTG opts.phoneHash is invalid");if(e.email){const r=t.normalizeEmail(e.email);return void 0===r?void s("CSTG opts.email is invalid"):{email:r}}return e.phone?t.isNormalizedPhone(e.phone)?{phone:e.phone}:void s("CSTG opts.phone is invalid"):void 0},isStoredTokenInvalid(e,t,s,r){if(t){if("optout"===t.latestToken)return!0;const r=Object.values(e)[0];if(!this.isStoredTokenFromSameIdentity(t,r))return s("CSTG supplied new identity - ignoring stored value.",t.originalIdentity,e),!0}return!1},async generateTokenAndStore(e,t,r,i,n,o){n("UID2 cstg opts provided: ",JSON.stringify(t));const a=new s({baseUrl:e,cstg:t},n,o),l=await a.generateToken(r);n("CSTG endpoint responded with:",l);const d={originalIdentity:this.encodeOriginalIdentity(r),latestToken:l.identity};return i.storeValue(d),d},isStoredTokenFromSameIdentity:(e,t)=>!!e.originalIdentity&&(0,n.cyrb53Hash)(t,e.originalIdentity.salt)===e.originalIdentity.identity,encodeOriginalIdentity(e){const t=Object.values(e)[0],s=Math.floor(Math.random()*Math.pow(2,32));return{identity:(0,n.cyrb53Hash)(t,s),salt:s}}};class t{static EMAIL_EXTENSION_SYMBOL="+";static EMAIL_DOT=".";static GMAIL_DOMAIN="gmail.com";static isBase64Hash(e){if(!e||44!==e.length)return!1;try{return btoa(atob(e))===e}catch(e){return!1}}static isNormalizedPhone(e){return/^\+[0-9]{10,15}$/.test(e)}static normalizeEmail(e){if(!e||!e.length)return;const t=e.trim().toLowerCase();if(t.indexOf(" ")>0)return;const s=this.splitEmailIntoAddressAndDomain(t);if(!s)return;const{address:r,domain:i}=s,n=this.isGmail(i),o=this.normalizeAddressPart(r,n,n);return o?`${o}@${i}`:void 0}static splitEmailIntoAddressAndDomain(e){const t=e.split("@");if(2===t.length&&!t.some((e=>""===e)))return{address:t[0],domain:t[1]}}static isGmail(e){return e===this.GMAIL_DOMAIN}static dropExtension(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:this.EMAIL_EXTENSION_SYMBOL;return e.split(t)[0]}static normalizeAddressPart(e,t,s){let r=e;return t&&(r=r.replaceAll(this.EMAIL_DOT,"")),s&&(r=this.dropExtension(r)),r}}class s{constructor(e,t,s){this._baseUrl=e.baseUrl,this._serverPublicKey=e.cstg.serverPublicKey,this._subscriptionId=e.cstg.subscriptionId,this._logInfo=t,this._logWarn=s}hasStatusResponse(e){return"object"==typeof e&&e&&e.status}isCstgApiSuccessResponse(e){return this.hasStatusResponse(e)&&"success"===e.status&&a(e.body)}isCstgApiOptoutResponse(e){return this.hasStatusResponse(e)&&"optout"===e.status}isCstgApiClientErrorResponse(e){return this.hasStatusResponse(e)&&"client_error"===e.status&&"string"==typeof e.message}isCstgApiForbiddenResponse(e){return this.hasStatusResponse(e)&&"invalid_http_origin"===e.status&&"string"==typeof e.message}stripPublicKeyPrefix(t){return t.substring(e)}async generateCstgRequest(e){if("email_hash"in e||"phone_hash"in e)return e;if("email"in e){return{email_hash:await o.hash(e.email)}}if("phone"in e){return{phone_hash:await o.hash(e.phone)}}}async generateToken(e){const t=await this.generateCstgRequest(e);this._logInfo("Building CSTG request for",t);const s=await r.build(this.stripPublicKeyPrefix(this._serverPublicKey)),i=new TextEncoder,n=Date.now(),{iv:a,ciphertext:l}=await s.encrypt(i.encode(JSON.stringify(t)),i.encode(JSON.stringify([n]))),d=await o.exportPublicKey(s.clientPublicKey),u={payload:o.bytesToBase64(new Uint8Array(l)),iv:o.bytesToBase64(new Uint8Array(a)),public_key:o.bytesToBase64(new Uint8Array(d)),timestamp:n,subscription_id:this._subscriptionId};return this.callCstgApi(u,s)}async callCstgApi(e,t){const s=this._baseUrl+"/v2/token/client-generate";let r,n;const a=new Promise(((e,t)=>{r=e,n=t}));return this._logInfo("Sending CSTG request",e),(0,i.RD)(s,{success:async(e,s)=>{try{const s=o.base64ToBytes(e),i=await t.decrypt(s.slice(0,12),s.slice(12)),a=(new TextDecoder).decode(i),l=JSON.parse(a);this.isCstgApiSuccessResponse(l)?r({status:"success",identity:l.body}):this.isCstgApiOptoutResponse(l)?r({status:"optout",identity:"optout"}):n(`API error: Response body was invalid for HTTP status 200: ${a}`)}catch(e){n(e)}},error:(e,t)=>{try{if(400===t.status){const e=JSON.parse(t.responseText);this.isCstgApiClientErrorResponse(e)?n(`Client error: ${e.message}`):n(`API error: Response body was invalid for HTTP status 400: ${t.responseText}`)}else if(403===t.status){const e=JSON.parse(t.responseText);this.isCstgApiForbiddenResponse(t)?n(`Forbidden: ${e.message}`):n(`API error: Response body was invalid for HTTP status 403: ${t.responseText}`)}else n(`API error: Unexpected HTTP status ${t.status}: ${e}`)}catch(t){n(e)}}},JSON.stringify(e),{method:"POST"}),a}}class r{static _namedCurve="P-256";constructor(e,t){this._clientPublicKey=e,this._sharedKey=t}static async build(e){const t=await o.generateKeyPair(r._namedCurve),s=await o.importPublicKey(e,this._namedCurve),i=await o.deriveKey(s,t.privateKey);return new r(t.publicKey,i)}async encrypt(e,t){const s=window.crypto.getRandomValues(new Uint8Array(12));return{iv:s,ciphertext:await window.crypto.subtle.encrypt({name:"AES-GCM",iv:s,additionalData:t},this._sharedKey,e)}}async decrypt(e,t){return window.crypto.subtle.decrypt({name:"AES-GCM",iv:e},this._sharedKey,t)}get clientPublicKey(){return this._clientPublicKey}}class o{static base64ToBytes(e){const t=atob(e);return Uint8Array.from(t,(e=>e.codePointAt(0)))}static bytesToBase64(e){const t=Array.from(e,(e=>String.fromCodePoint(e))).join("");return btoa(t)}static async generateKeyPair(e){const t={name:"ECDH",namedCurve:e};return window.crypto.subtle.generateKey(t,!1,["deriveKey"])}static async importPublicKey(e,t){const s={name:"ECDH",namedCurve:t};return window.crypto.subtle.importKey("spki",this.base64ToBytes(e),s,!1,[])}static exportPublicKey(e){return window.crypto.subtle.exportKey("spki",e)}static async deriveKey(e,t){return window.crypto.subtle.deriveKey({name:"ECDH",public:e},t,{name:"AES-GCM",length:256},!1,["encrypt","decrypt"])}static async hash(e){const t=await window.crypto.subtle.digest("SHA-256",(new TextEncoder).encode(e));return this.bytesToBase64(new Uint8Array(t))}}}function p(e,t,s,r){let i=null;const n="cookie"!==e.storage,o=new d(t,n,e.internalStorage,s);s(`Module is using ${n?"local storage":"cookies"} for internal storage.`);const a=c&&c.isCSTGOptionsValid(e.cstg,r);a?(s("Module is using client-side token generation."),i=null):e.paramToken?(i=e.paramToken,s("Read token from params",i)):e.serverCookieName&&(i=o.readProvidedCookie(e.serverCookieName),s("Read token from server-supplied cookie",i));let l=o.getStoredValueWithFallback();if(s("Loaded module-stored tokens:",l),l&&"string"==typeof l){if(!i&&!a)return s("Returning legacy cookie value."),{id:l};s("Discarding superseded legacy cookie."),l=null}if(i&&l&&l.originalToken?.advertising_token!==i.advertising_token&&(s("Server supplied new token - ignoring stored value.",l.originalToken?.advertising_token,i.advertising_token),l=null),a){const t=c.getValidIdentity(e.cstg,r);if(t&&(l&&c.isStoredTokenInvalid(t,l,s,r)&&(l=null),!l||Date.now()>l.latestToken.refresh_expires)){const i=c.generateTokenAndStore(e.apiBaseUrl,e.cstg,t,o,s,r);return s("Generate token using CSTG"),{callback:e=>{i.then((t=>{s("Token generation responded, passing the new token on.",t),e(t)}))}}}}const p=!l?.latestToken||i&&i.identity_expires>l.latestToken.identity_expires,h=p?i:l.latestToken;if(s("UID2 module selected latest token",p,h),!h||Date.now()>h.refresh_expires)return s("Newest available token is expired and not refreshable."),{id:null};if(Date.now()>h.identity_expires){const t=u(e.apiBaseUrl,h,e.clientId,o,s,r);return s("Token is expired but can be refreshed, attempting refresh."),{callback:e=>{t.then((t=>{s("Refresh reponded, passing the updated token on.",t),e(t)}))}}}Date.now()>h.refresh_from&&(s("Refreshing token in background with low priority."),u(e.apiBaseUrl,h,e.clientId,o,s,r));const g={originalToken:i??l?.originalToken,latestToken:h};return a&&(g.originalIdentity=l?.originalIdentity),o.storeValue(g),{id:g}}function h(e){const t=["emailHash","phoneHash","email","phone"];for(let s of t)if(e.hasOwnProperty(s))return{[s]:e[s]};return{}}(0,r.E)("uid2IdSystem_shared")}},e=>{e.O(0,[60802,51085],(()=>{return t=31536,e(e.s=t);var t}));e.O()}]);
|
|
1
|
+
(self.pbjsChunk=self.pbjsChunk||[]).push([[65594,56293],{31536:(e,t,s)=>{var r=s(7873),i=s(91069),n=s(70433),o=s(16833),a=s(12938),l=s(45569),d=s(84259);const u="euid",c=`PrebidJS-9.3.0-EUIDModule-${d.kz}`,p="EUID: ";function h(e,t){return function(){for(var s=arguments.length,r=new Array(s),i=0;i<s;i++)r[i]=arguments[i];e(t+" ",...r)}}const g=h(i.logInfo,p),y=h(i.logWarn,p),f=(0,a.vM)({moduleType:l.fW,moduleName:u});const b={name:u,gvlid:21,decode(e){const t=function(e){if("string"==typeof e){g("Found server-only token. Refresh is unavailable for this token.");return{euid:{id:e}}}if("optout"===e.latestToken)return g("Found optout token. Refresh is unavailable for this token."),{euid:{optout:!0}};if(Date.now()<e.latestToken.identity_expires)return{euid:{id:e.latestToken.advertising_token}};return null}(e);return g("EUID decode returned",t),t},getId(e,t){if(!0!==t?.gdprApplies)return void(0,i.logWarn)("EUID is intended for use within the EU. The module will not run when GDPR does not apply.");if(!function(e){const t=!0===e?.gdprApplies,s=(0,n.A)(e,"vendorData.purpose.consents.1"),r=(0,n.A)(e,`vendorData.vendor.consents.${21..toString()}`);return!!(!t||s&&r)}(t))return void y("Unable to use EUID module due to insufficient consent. The EUID module requires storage permission.");const s={apiBaseUrl:e?.params?.euidApiBase??"https://prod.euid.eu",paramToken:e?.params?.euidToken,serverCookieName:e?.params?.euidCookie,storage:e?.params?.storage??"localStorage",clientId:c,internalStorage:"__euid_advertising_token"};s.cstg={serverPublicKey:e?.params?.serverPublicKey,subscriptionId:e?.params?.subscriptionId,...(0,d.E0)(e?.params??{})},g("EUID configuration loaded and mapped.",s);const r=(0,d.wq)(s,f,g,y);return g("EUID getId returned",r),r},eids:{euid:{source:"euid.eu",atype:3,getValue:function(e){return e.id}}}};(0,o.bz)("userId",b),(0,r.E)("euidIdSystem")},84259:(e,t,s)=>{s.d(t,{E0:()=>h,kz:()=>o,wq:()=>p});var r=s(7873),i=s(68044),n=s(91069);const o="1.1";function a(e){return!!("object"==typeof e&&null!==e&&e.advertising_token&&e.identity_expires&&e.refresh_from&&e.refresh_token&&e.refresh_expires)}class l{constructor(e,t,s,r){this._baseUrl=e.baseUrl,this._clientVersion=t,this._logInfo=s,this._logWarn=r}createArrayBuffer(e){const t=new Uint8Array(e.length);for(let s=0;s<e.length;s++)t[s]=e.charCodeAt(s);return t}hasStatusResponse(e){return"object"==typeof e&&e&&e.status}isValidRefreshResponse(e){return this.hasStatusResponse(e)&&("optout"===e.status||"expired_token"===e.status||"success"===e.status&&e.body&&a(e.body))}ResponseToRefreshResult(e){return this.isValidRefreshResponse(e)?"success"===e.status?{status:e.status,identity:e.body}:e:"Response didn't contain a valid status"}callRefreshApi(e){const t=this._baseUrl+"/v2/token/refresh";let s,r;const n=new Promise(((e,t)=>{s=e,r=t}));return this._logInfo("Sending refresh request",e),(0,i.RD)(t,{success:t=>{try{if(e.refresh_response_key){this._logInfo("Decrypting refresh API response");const i=this.createArrayBuffer(atob(t));window.crypto.subtle.importKey("raw",this.createArrayBuffer(atob(e.refresh_response_key)),{name:"AES-GCM"},!1,["decrypt"]).then((e=>{this._logInfo("Imported decryption key"),window.crypto.subtle.decrypt({name:"AES-GCM",iv:i.slice(0,12),tagLength:128},e,i.slice(12)).then((e=>{const t=String.fromCharCode(...new Uint8Array(e));this._logInfo("Decrypted to:",t);const i=JSON.parse(t),n=this.ResponseToRefreshResult(i);"string"==typeof n?r(n):s(n)}),(e=>this._logWarn("Call to UID2 API failed",e)))}),(e=>this._logWarn("Call to UID2 API failed",e)))}else{this._logInfo("No response decryption key available, assuming unencrypted JSON");const e=JSON.parse(t),i=this.ResponseToRefreshResult(e);"string"==typeof i?r(i):s(i)}}catch(e){r(t)}},error:(e,t)=>{try{this._logInfo("Error status, assuming unencrypted JSON");const e=JSON.parse(t.responseText),i=this.ResponseToRefreshResult(e);"string"==typeof i?r(i):s(i)}catch(t){r(e)}}},e.refresh_token,{method:"POST",customHeaders:{"X-UID2-Client-Version":this._clientVersion}}),n}}class d{constructor(e,t,s,r){this._storage=e,this._preferLocalStorage=t,this._storageName=s,this._logInfo=r}readCookie(e){return this._storage.cookiesAreEnabled()?this._storage.getCookie(e):null}readLocalStorage(e){return this._storage.localStorageIsEnabled()?this._storage.getDataFromLocalStorage(e):null}readModuleCookie(){return this.parseIfContainsBraces(this.readCookie(this._storageName))}writeModuleCookie(e){this._storage.setCookie(this._storageName,JSON.stringify(e),Date.now()+864e5)}readModuleStorage(){return this.parseIfContainsBraces(this.readLocalStorage(this._storageName))}writeModuleStorage(e){this._storage.setDataInLocalStorage(this._storageName,JSON.stringify(e))}readProvidedCookie(e){return JSON.parse(this.readCookie(e))}parseIfContainsBraces(e){return e?.includes("{")?JSON.parse(e):e}storeValue(e){this._preferLocalStorage?this.writeModuleStorage(e):this.writeModuleCookie(e)}getStoredValueWithFallback(){const e=this._preferLocalStorage?"local storage":"cookie",t=(this._preferLocalStorage?this.readModuleStorage:this.readModuleCookie).bind(this),s=(this._preferLocalStorage?this.writeModuleStorage:this.writeModuleCookie).bind(this),r=(this._preferLocalStorage?this.readModuleCookie:this.readModuleStorage).bind(this),i=t();if(i){if("string"==typeof i){const t=r();if(t&&"object"==typeof t)return this._logInfo(`${e} contained a basic token, but found a refreshable token fallback. Copying the fallback value to ${e}.`),s(t),t}}else{const t=r();if(t)return this._logInfo(`${e} was empty, but found a fallback value.`),"object"==typeof t&&(this._logInfo(`Copying the fallback value to ${e}.`),s(t)),t}return i}}function u(e,t,s,r,i,n){i("UID2 base url provided: ",e);return new l({baseUrl:e},s,i,n).callRefreshApi(t).then((e=>{i("Refresh endpoint responded with:",e);const s={originalToken:t,latestToken:e.identity};let n=r.getStoredValueWithFallback();return n?.originalIdentity&&(s.originalIdentity=n.originalIdentity),r.storeValue(s),s}))}let c;{const e=9;c={isCSTGOptionsValid(e,t){if("object"!=typeof e||null===e)return t('CSTG is not being used, but is included in the Prebid.js bundle. You can reduce the bundle size by passing "--disable UID2_CSTG" to the Prebid.js build.'),!1;const s=e;if(!s.serverPublicKey&&!s.subscriptionId)return t("CSTG has been enabled but its parameters have not been set."),!1;if("string"!=typeof s.serverPublicKey)return t("CSTG opts.serverPublicKey must be a string"),!1;const r=/^(UID2|EUID)-X-[A-Z]-.+/;return r.test(s.serverPublicKey)?"string"!=typeof s.subscriptionId?(t("CSTG opts.subscriptionId must be a string"),!1):0!==s.subscriptionId.length||(t("CSTG opts.subscriptionId is empty"),!1):(t(`CSTG opts.serverPublicKey must match the regular expression ${r}`),!1)},getValidIdentity(e,s){if(e.emailHash)return t.isBase64Hash(e.emailHash)?{email_hash:e.emailHash}:void s("CSTG opts.emailHash is invalid");if(e.phoneHash)return t.isBase64Hash(e.phoneHash)?{phone_hash:e.phoneHash}:void s("CSTG opts.phoneHash is invalid");if(e.email){const r=t.normalizeEmail(e.email);return void 0===r?void s("CSTG opts.email is invalid"):{email:r}}return e.phone?t.isNormalizedPhone(e.phone)?{phone:e.phone}:void s("CSTG opts.phone is invalid"):void 0},isStoredTokenInvalid(e,t,s,r){if(t){if("optout"===t.latestToken)return!0;const r=Object.values(e)[0];if(!this.isStoredTokenFromSameIdentity(t,r))return s("CSTG supplied new identity - ignoring stored value.",t.originalIdentity,e),!0}return!1},async generateTokenAndStore(e,t,r,i,n,o){n("UID2 cstg opts provided: ",JSON.stringify(t));const a=new s({baseUrl:e,cstg:t},n,o),l=await a.generateToken(r);n("CSTG endpoint responded with:",l);const d={originalIdentity:this.encodeOriginalIdentity(r),latestToken:l.identity};return i.storeValue(d),d},isStoredTokenFromSameIdentity:(e,t)=>!!e.originalIdentity&&(0,n.cyrb53Hash)(t,e.originalIdentity.salt)===e.originalIdentity.identity,encodeOriginalIdentity(e){const t=Object.values(e)[0],s=Math.floor(Math.random()*Math.pow(2,32));return{identity:(0,n.cyrb53Hash)(t,s),salt:s}}};class t{static EMAIL_EXTENSION_SYMBOL="+";static EMAIL_DOT=".";static GMAIL_DOMAIN="gmail.com";static isBase64Hash(e){if(!e||44!==e.length)return!1;try{return btoa(atob(e))===e}catch(e){return!1}}static isNormalizedPhone(e){return/^\+[0-9]{10,15}$/.test(e)}static normalizeEmail(e){if(!e||!e.length)return;const t=e.trim().toLowerCase();if(t.indexOf(" ")>0)return;const s=this.splitEmailIntoAddressAndDomain(t);if(!s)return;const{address:r,domain:i}=s,n=this.isGmail(i),o=this.normalizeAddressPart(r,n,n);return o?`${o}@${i}`:void 0}static splitEmailIntoAddressAndDomain(e){const t=e.split("@");if(2===t.length&&!t.some((e=>""===e)))return{address:t[0],domain:t[1]}}static isGmail(e){return e===this.GMAIL_DOMAIN}static dropExtension(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:this.EMAIL_EXTENSION_SYMBOL;return e.split(t)[0]}static normalizeAddressPart(e,t,s){let r=e;return t&&(r=r.replaceAll(this.EMAIL_DOT,"")),s&&(r=this.dropExtension(r)),r}}class s{constructor(e,t,s){this._baseUrl=e.baseUrl,this._serverPublicKey=e.cstg.serverPublicKey,this._subscriptionId=e.cstg.subscriptionId,this._logInfo=t,this._logWarn=s}hasStatusResponse(e){return"object"==typeof e&&e&&e.status}isCstgApiSuccessResponse(e){return this.hasStatusResponse(e)&&"success"===e.status&&a(e.body)}isCstgApiOptoutResponse(e){return this.hasStatusResponse(e)&&"optout"===e.status}isCstgApiClientErrorResponse(e){return this.hasStatusResponse(e)&&"client_error"===e.status&&"string"==typeof e.message}isCstgApiForbiddenResponse(e){return this.hasStatusResponse(e)&&"invalid_http_origin"===e.status&&"string"==typeof e.message}stripPublicKeyPrefix(t){return t.substring(e)}async generateCstgRequest(e){if("email_hash"in e||"phone_hash"in e)return e;if("email"in e){return{email_hash:await o.hash(e.email)}}if("phone"in e){return{phone_hash:await o.hash(e.phone)}}}async generateToken(e){const t=await this.generateCstgRequest(e);this._logInfo("Building CSTG request for",t);const s=await r.build(this.stripPublicKeyPrefix(this._serverPublicKey)),i=new TextEncoder,n=Date.now(),{iv:a,ciphertext:l}=await s.encrypt(i.encode(JSON.stringify(t)),i.encode(JSON.stringify([n]))),d=await o.exportPublicKey(s.clientPublicKey),u={payload:o.bytesToBase64(new Uint8Array(l)),iv:o.bytesToBase64(new Uint8Array(a)),public_key:o.bytesToBase64(new Uint8Array(d)),timestamp:n,subscription_id:this._subscriptionId};return this.callCstgApi(u,s)}async callCstgApi(e,t){const s=this._baseUrl+"/v2/token/client-generate";let r,n;const a=new Promise(((e,t)=>{r=e,n=t}));return this._logInfo("Sending CSTG request",e),(0,i.RD)(s,{success:async(e,s)=>{try{const s=o.base64ToBytes(e),i=await t.decrypt(s.slice(0,12),s.slice(12)),a=(new TextDecoder).decode(i),l=JSON.parse(a);this.isCstgApiSuccessResponse(l)?r({status:"success",identity:l.body}):this.isCstgApiOptoutResponse(l)?r({status:"optout",identity:"optout"}):n(`API error: Response body was invalid for HTTP status 200: ${a}`)}catch(e){n(e)}},error:(e,t)=>{try{if(400===t.status){const e=JSON.parse(t.responseText);this.isCstgApiClientErrorResponse(e)?n(`Client error: ${e.message}`):n(`API error: Response body was invalid for HTTP status 400: ${t.responseText}`)}else if(403===t.status){const e=JSON.parse(t.responseText);this.isCstgApiForbiddenResponse(t)?n(`Forbidden: ${e.message}`):n(`API error: Response body was invalid for HTTP status 403: ${t.responseText}`)}else n(`API error: Unexpected HTTP status ${t.status}: ${e}`)}catch(t){n(e)}}},JSON.stringify(e),{method:"POST"}),a}}class r{static _namedCurve="P-256";constructor(e,t){this._clientPublicKey=e,this._sharedKey=t}static async build(e){const t=await o.generateKeyPair(r._namedCurve),s=await o.importPublicKey(e,this._namedCurve),i=await o.deriveKey(s,t.privateKey);return new r(t.publicKey,i)}async encrypt(e,t){const s=window.crypto.getRandomValues(new Uint8Array(12));return{iv:s,ciphertext:await window.crypto.subtle.encrypt({name:"AES-GCM",iv:s,additionalData:t},this._sharedKey,e)}}async decrypt(e,t){return window.crypto.subtle.decrypt({name:"AES-GCM",iv:e},this._sharedKey,t)}get clientPublicKey(){return this._clientPublicKey}}class o{static base64ToBytes(e){const t=atob(e);return Uint8Array.from(t,(e=>e.codePointAt(0)))}static bytesToBase64(e){const t=Array.from(e,(e=>String.fromCodePoint(e))).join("");return btoa(t)}static async generateKeyPair(e){const t={name:"ECDH",namedCurve:e};return window.crypto.subtle.generateKey(t,!1,["deriveKey"])}static async importPublicKey(e,t){const s={name:"ECDH",namedCurve:t};return window.crypto.subtle.importKey("spki",this.base64ToBytes(e),s,!1,[])}static exportPublicKey(e){return window.crypto.subtle.exportKey("spki",e)}static async deriveKey(e,t){return window.crypto.subtle.deriveKey({name:"ECDH",public:e},t,{name:"AES-GCM",length:256},!1,["encrypt","decrypt"])}static async hash(e){const t=await window.crypto.subtle.digest("SHA-256",(new TextEncoder).encode(e));return this.bytesToBase64(new Uint8Array(t))}}}function p(e,t,s,r){let i=null;const n="cookie"!==e.storage,o=new d(t,n,e.internalStorage,s);s(`Module is using ${n?"local storage":"cookies"} for internal storage.`);const a=c&&c.isCSTGOptionsValid(e.cstg,r);a?(s("Module is using client-side token generation."),i=null):e.paramToken?(i=e.paramToken,s("Read token from params",i)):e.serverCookieName&&(i=o.readProvidedCookie(e.serverCookieName),s("Read token from server-supplied cookie",i));let l=o.getStoredValueWithFallback();if(s("Loaded module-stored tokens:",l),l&&"string"==typeof l){if(!i&&!a)return s("Returning legacy cookie value."),{id:l};s("Discarding superseded legacy cookie."),l=null}if(i&&l&&l.originalToken?.advertising_token!==i.advertising_token&&(s("Server supplied new token - ignoring stored value.",l.originalToken?.advertising_token,i.advertising_token),l=null),a){const t=c.getValidIdentity(e.cstg,r);if(t&&(l&&c.isStoredTokenInvalid(t,l,s,r)&&(l=null),!l||Date.now()>l.latestToken.refresh_expires)){const i=c.generateTokenAndStore(e.apiBaseUrl,e.cstg,t,o,s,r);return s("Generate token using CSTG"),{callback:e=>{i.then((t=>{s("Token generation responded, passing the new token on.",t),e(t)}))}}}}const p=!l?.latestToken||i&&i.identity_expires>l.latestToken.identity_expires,h=p?i:l.latestToken;if(s("UID2 module selected latest token",p,h),!h||Date.now()>h.refresh_expires)return s("Newest available token is expired and not refreshable."),{id:null};if(Date.now()>h.identity_expires){const t=u(e.apiBaseUrl,h,e.clientId,o,s,r);return s("Token is expired but can be refreshed, attempting refresh."),{callback:e=>{t.then((t=>{s("Refresh reponded, passing the updated token on.",t),e(t)}))}}}Date.now()>h.refresh_from&&(s("Refreshing token in background with low priority."),u(e.apiBaseUrl,h,e.clientId,o,s,r));const g={originalToken:i??l?.originalToken,latestToken:h};return a&&(g.originalIdentity=l?.originalIdentity),o.storeValue(g),{id:g}}function h(e){const t=["emailHash","phoneHash","email","phone"];for(let s of t)if(e.hasOwnProperty(s))return{[s]:e[s]};return{}}(0,r.E)("uid2IdSystem_shared")}},e=>{e.O(0,[60802,51085],(()=>{return t=31536,e(e.s=t);var t}));e.O()}]);
|