prebid.js 7.46.0 → 7.47.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/33acrossBidAdapter.js +1 -1
- package/dist/33acrossIdSystem.js +1 -1
- package/dist/adagioBidAdapter.js +1 -1
- package/dist/adbookpspBidAdapter.js +1 -1
- package/dist/adgenerationBidAdapter.js +1 -1
- package/dist/adrelevantisBidAdapter.js +1 -1
- package/dist/adtrgtmeBidAdapter.js +1 -1
- package/dist/adxcgBidAdapter.js +1 -1
- package/dist/adyoulikeBidAdapter.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/bridgewellBidAdapter.js +1 -1
- package/dist/brightMountainMediaBidAdapter.js +1 -1
- package/dist/carodaBidAdapter.js +1 -1
- package/dist/chtnwBidAdapter.js +1 -1
- package/dist/concertBidAdapter.js +1 -1
- package/dist/connectadBidAdapter.js +1 -1
- package/dist/consumableBidAdapter.js +1 -1
- package/dist/conversantAnalyticsAdapter.js +1 -1
- package/dist/conversantBidAdapter.js +1 -1
- package/dist/craftBidAdapter.js +1 -1
- package/dist/criteoBidAdapter.js +1 -1
- package/dist/criteoIdSystem.js +1 -1
- package/dist/cwireBidAdapter.js +1 -1
- package/dist/dspxBidAdapter.js +1 -1
- package/dist/emtvBidAdapter.js +1 -0
- package/dist/eplanningBidAdapter.js +1 -1
- package/dist/feedadBidAdapter.js +1 -1
- package/dist/finativeBidAdapter.js +1 -1
- package/dist/freewheel-sspBidAdapter.js +1 -1
- package/dist/glimpseBidAdapter.js +1 -1
- package/dist/gmosspBidAdapter.js +1 -1
- package/dist/goldbachBidAdapter.js +1 -1
- package/dist/greenbidsAnalyticsAdapter.js +1 -1
- package/dist/gridBidAdapter.js +1 -1
- package/dist/gumgumBidAdapter.js +1 -1
- package/dist/h12mediaBidAdapter.js +1 -1
- package/dist/id5IdSystem.js +1 -1
- package/dist/improvedigitalBidAdapter.js +1 -1
- package/dist/inmarBidAdapter.js +1 -1
- package/dist/insticatorBidAdapter.js +1 -1
- package/dist/ixBidAdapter.js +1 -1
- package/dist/justpremiumBidAdapter.js +1 -1
- package/dist/kargoBidAdapter.js +1 -1
- package/dist/konduitAnalyticsAdapter.js +1 -1
- package/dist/kueezBidAdapter.js +1 -1
- package/dist/kueezRtbBidAdapter.js +1 -1
- package/dist/kulturemediaBidAdapter.js +1 -1
- package/dist/lassoBidAdapter.js +1 -1
- package/dist/lifestreetBidAdapter.js +1 -1
- package/dist/liveyieldAnalyticsAdapter.js +1 -1
- package/dist/logicadBidAdapter.js +1 -1
- package/dist/loglyliftBidAdapter.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/mediasquareBidAdapter.js +1 -1
- package/dist/mgidBidAdapter.js +1 -1
- package/dist/minutemediaBidAdapter.js +1 -1
- package/dist/minutemediaplusBidAdapter.js +1 -1
- package/dist/missenaBidAdapter.js +1 -1
- package/dist/nextMillenniumBidAdapter.js +1 -1
- package/dist/nexx360BidAdapter.js +1 -1
- package/dist/not-for-prod/prebid.js +128 -127
- package/dist/oguryBidAdapter.js +1 -1
- package/dist/onetagBidAdapter.js +1 -1
- package/dist/ooloAnalyticsAdapter.js +1 -1
- package/dist/optidigitalBidAdapter.js +1 -1
- package/dist/outbrainBidAdapter.js +1 -1
- package/dist/parrableIdSystem.js +1 -1
- package/dist/pixfutureBidAdapter.js +1 -1
- package/dist/prebid-core.js +1 -1
- package/dist/publinkIdSystem.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/rhythmoneBidAdapter.js +1 -1
- package/dist/riseBidAdapter.js +1 -1
- package/dist/rtbhouseBidAdapter.js +1 -1
- package/dist/rubiconAnalyticsAdapter.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/smaatoBidAdapter.js +1 -1
- package/dist/smartadserverBidAdapter.js +1 -1
- package/dist/smartxBidAdapter.js +1 -1
- package/dist/smilewantedBidAdapter.js +1 -1
- package/dist/sonobiBidAdapter.js +1 -1
- package/dist/sovrnAnalyticsAdapter.js +1 -1
- package/dist/sovrnBidAdapter.js +1 -1
- package/dist/sspBCBidAdapter.js +1 -1
- package/dist/stvBidAdapter.js +1 -1
- package/dist/sublimeBidAdapter.js +1 -1
- package/dist/synacormediaBidAdapter.js +1 -1
- package/dist/targetVideoBidAdapter.js +1 -1
- package/dist/teadsBidAdapter.js +1 -1
- package/dist/trionBidAdapter.js +1 -1
- package/dist/tripleliftBidAdapter.js +1 -1
- package/dist/ttdBidAdapter.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/vidazooBidAdapter.js +1 -1
- package/dist/videobyteBidAdapter.js +1 -1
- package/dist/vidoomyBidAdapter.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/yahoosspBidAdapter.js +1 -1
- package/dist/yieldmoBidAdapter.js +1 -1
- package/dist/yieldoneAnalyticsAdapter.js +1 -1
- package/modules/criteoIdSystem.js +27 -14
- package/modules/emtvBidAdapter.js +211 -0
- package/modules/emtvBidAdapter.md +79 -0
- package/modules/missenaBidAdapter.js +1 -1
- package/modules/nextMillenniumBidAdapter.js +2 -0
- package/modules/rtbhouseBidAdapter.js +3 -3
- package/modules/vidoomyBidAdapter.js +19 -6
- package/modules/vidoomyBidAdapter.md +12 -2
- package/modules/yieldmoBidAdapter.js +2 -2
- package/package.json +1 -1
- package/test/spec/modules/criteoIdSystem_spec.js +99 -9
- package/test/spec/modules/emtvBidAdapter_spec.js +400 -0
- package/test/spec/modules/rtbhouseBidAdapter_spec.js +2 -2
- package/test/spec/modules/vidoomyBidAdapter_spec.js +49 -0
- package/test/spec/modules/yieldmoBidAdapter_spec.js +2 -2
|
@@ -1 +1 @@
|
|
|
1
|
-
(self.pbjsChunk=self.pbjsChunk||[]).push([[80215],{27501:function(e,r,i){var t=i(4942),a=i(78640),n=i(14699),s=i(24679),o=i(64358),d=i(20265),p=i(3193),c=i(35706),m=i(17673);function u(e,r){var i=Object.keys(e);if(Object.getOwnPropertySymbols){var t=Object.getOwnPropertySymbols(e);r&&(t=t.filter((function(r){return Object.getOwnPropertyDescriptor(e,r).enumerable}))),i.push.apply(i,t)}return i}var v="7.46.0",l="USD",b=["admixer.net","adserver.org","adtelligent.com","akamai.com","amxdt.net","audigent.com","britepool.com","criteo.com","crwdcntrl.net","deepintent.com","epsilon.com","hcn.health","id5-sync.com","idx.lat","intentiq.com","intimatemerger.com","liveintent.com","liveramp.com","mediawallahscript.com","merkleinc.com","netid.de","neustar.biz","nextroll.com","novatiq.com","parrable.com","pubcid.org","quantcast.com","tapad.com","uidapi.com","verizonmedia.com","yahoo.com","zeotap.com"];function y(e){return{w:parseInt(e[0]),h:parseInt(e[1])}}function f(e){return(0,o.isArray)(e)&&2===e.length&&!(0,o.isArray)(e[0])?[y(e)]:e.map(y)}function g(e){return(0,o.isArray)((0,d.Z)(e,"userIdAsEids"))?e.userIdAsEids.filter((function(e){return-1!==b.indexOf(e.source)})):[]}function h(e){return(0,d.Z)(e,"params.bidOverride.imp.secure")||"https:"===document.location.protocol?1:0}function O(e){var r;return(0,d.Z)(e,"params.pubId")?r=!0:(0,d.Z)(e,"params.dcn")&&(0,d.Z)(e,"params.pos")&&(r=!1),r}function x(){var e=p.vc.getConfig("yahoossp.mode");return void 0===(e=e?e.toLowerCase():void 0)||e===s.Mk?s.Mk:e===s.pX?s.pX:"all"===e?"*":void 0}function Z(e){var r=x(),i={currency:(0,d.Z)(e,"params.bidOverride.cur")||l,mediaType:r,size:"*"};return!!(0,o.isFn)(e.getFloor)&&e.getFloor(i)}function k(e,r,i,a){var n=function(e){for(var r=1;r<arguments.length;r++){var i=null!=arguments[r]?arguments[r]:{};r%2?u(Object(i),!0).forEach((function(r){(0,t.Z)(e,r,i[r])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(i)):u(Object(i)).forEach((function(r){Object.defineProperty(e,r,Object.getOwnPropertyDescriptor(i,r))}))}return e}({},a);for(var s in i)switch(e){case"string":-1!==r.indexOf(s)&&(0,o.isStr)(i[s])&&(n[s]=i[s]);break;case"number":-1!==r.indexOf(s)&&(0,o.isNumber)(i[s])&&(n[s]=i[s]);break;case"array":-1!==r.indexOf(s)&&(0,o.isArray)(i[s])&&(n[s]=i[s]);break;case"object":-1!==r.indexOf(s)&&(0,o.isPlainObject)(i[s])&&(n[s]=i[s]);break;case"objectAllKeys":(0,o.isPlainObject)(i)&&(n[s]=i[s])}return n}function j(e){var r=p.vc.getConfig("yahoossp.ttl");return T(r||(0,d.Z)(e,"params.ttl"))}function T(e){return(0,o.isNumber)(e)&&e>0&&e<3600?e:300}function w(e){return(0,o.isStr)(e)&&e.length>0}function I(e,r){if(e){var i,t,a={id:(0,o.generateUUID)(),cur:[Z(e).currency||(0,d.Z)(r,"params.bidOverride.cur")||l],imp:[],site:{page:(0,d.Z)(e,"refererInfo.page")},device:{dnt:0,ua:navigator.userAgent,ip:(0,d.Z)(r,"params.bidOverride.device.ip")||(0,d.Z)(r,"params.ext.ip")||void 0,w:window.screen.width,h:window.screen.height},regs:{ext:{us_privacy:e.uspConsent?e.uspConsent:"",gdpr:e.gdprConsent&&e.gdprConsent.gdprApplies?1:0}},source:{ext:{hb:1,adapterver:"1.0.2",prebidver:v,integration:{name:"prebid.js",ver:v}},fd:1},user:{ext:{consent:e.gdprConsent&&e.gdprConsent.gdprApplies?e.gdprConsent.consentString:"",eids:g(r)}}};!0===O(r)?(a.site.publisher={id:r.params.pubId},((0,d.Z)(r,"params.bidOverride.site.id")||(0,d.Z)(r,"params.siteId"))&&(a.site.id=(0,d.Z)(r,"params.bidOverride.site.id")||r.params.siteId)):a.site.id=r.params.dcn,null!==(i=e.ortb2)&&void 0!==i&&null!==(t=i.regs)&&void 0!==t&&t.gpp&&(a.regs.ext.gpp=e.ortb2.regs.gpp,a.regs.ext.gpp_sid=e.ortb2.regs.gpp_sid),e.ortb2&&(a=function(e,r){var i=r.ortb2,t=(0,d.Z)(i,"site")||void 0,a=(0,d.Z)(t,"content")||void 0,n=(0,d.Z)(t,"content.data")||void 0,s=(0,d.Z)(i,"app.content")||void 0,p=(0,d.Z)(i,"app.content.data")||void 0,c=(0,d.Z)(i,"user")||void 0;if(t&&(0,o.isPlainObject)(t)){var m=["name","domain","page","ref","keywords","search"],u=["cat","sectioncat","pagecat"],v=["ext"];e.site=k("string",m,t,e.site),e.site=k("array",u,t,e.site),e.site=k("object",v,t,e.site)}if(a&&(0,o.isPlainObject)(a)){var l=["id","title","series","season","genre","contentrating","language"],b=["episode","prodq","context","livestream","len"],y=["cat"],f=["ext"];e.site.content=k("string",l,a,e.site.content),e.site.content=k("number",b,a,e.site.content),e.site.content=k("array",y,a,e.site.content),e.site.content=k("object",f,a,e.site.content),n&&(0,o.isArray)(n)&&n.every((function(r){var i={},t=["segment"],a=["ext"];i=k("string",["id","name"],r,i),i=k("array",t,r,i),i=k("object",a,r,i),e.site.content.data=[],e.site.content.data.push(i)}))}s&&(0,o.isPlainObject)(s)&&p&&(0,o.isArray)(p)&&p.every((function(r){var i={},t=["segment"],a=["ext"];i=k("string",["id","name"],r,i),i=k("array",t,r,i),i=k("object",a,r,i),e.app={content:{data:[]}},e.app.content.data.push(i)}));if(c&&(0,o.isPlainObject)(c)){var g=["id","buyeruid","gender","keywords","customdata"],h=["yob"],O=["data"],x=["ext"];e.user=k("string",g,c,e.user),e.user=k("number",h,c,e.user),e.user=k("array",O,c,e.user),e.user.ext=k("object",x,c,e.user.ext)}return e}(a,r));var n=(0,d.Z)(r,"schain.nodes");return(0,o.isArray)(n)&&n.length>0&&(a.source.ext.schain=r.schain,a.source.ext.schain.nodes[0].rid=a.id),a}}function P(e,r){var i=x();if(r&&e){var t={id:e.bidId,secure:h(e),bidfloor:Z(e).floor||(0,d.Z)(e,"params.bidOverride.imp.bidfloor")};if(!e.mediaTypes.banner||void 0!==i&&i!==s.Mk&&"*"!==i||(t.banner={mimes:e.mediaTypes.banner.mimes||["text/html","text/javascript","application/javascript","image/jpg"],format:f(e.sizes)},e.mediaTypes.banner.pos&&(t.banner.pos=e.mediaTypes.banner.pos)),e.mediaTypes.video&&(i===s.pX||"*"===i)){var a=f(e.mediaTypes.video.playerSize);t.video={mimes:(0,d.Z)(e,"params.bidOverride.imp.video.mimes")||e.mediaTypes.video.mimes||["video/mp4","application/javascript"],w:(0,d.Z)(e,"params.bidOverride.imp.video.w")||a[0].w,h:(0,d.Z)(e,"params.bidOverride.imp.video.h")||a[0].h,maxbitrate:(0,d.Z)(e,"params.bidOverride.imp.video.maxbitrate")||e.mediaTypes.video.maxbitrate||void 0,maxduration:(0,d.Z)(e,"params.bidOverride.imp.video.maxduration")||e.mediaTypes.video.maxduration||void 0,minduration:(0,d.Z)(e,"params.bidOverride.imp.video.minduration")||e.mediaTypes.video.minduration||void 0,api:(0,d.Z)(e,"params.bidOverride.imp.video.api")||e.mediaTypes.video.api||[2],delivery:(0,d.Z)(e,"params.bidOverride.imp.video.delivery")||e.mediaTypes.video.delivery||void 0,pos:(0,d.Z)(e,"params.bidOverride.imp.video.pos")||e.mediaTypes.video.pos||void 0,playbackmethod:(0,d.Z)(e,"params.bidOverride.imp.video.playbackmethod")||e.mediaTypes.video.playbackmethod||void 0,placement:(0,d.Z)(e,"params.bidOverride.imp.video.placement")||e.mediaTypes.video.placement||void 0,linearity:(0,d.Z)(e,"params.bidOverride.imp.video.linearity")||e.mediaTypes.video.linearity||1,protocols:(0,d.Z)(e,"params.bidOverride.imp.video.protocols")||e.mediaTypes.video.protocols||[2,5],startdelay:(0,d.Z)(e,"params.bidOverride.imp.video.startdelay")||e.mediaTypes.video.startdelay||0,rewarded:(0,d.Z)(e,"params.bidOverride.imp.video.rewarded")||void 0}}if(t.ext={dfp_ad_unit_code:e.adUnitCode},(0,d.Z)(e,"params.kvp")&&(0,o.isPlainObject)(e.params.kvp))for(var n in t.ext.kvs={},e.params.kvp)if((0,o.isStr)(e.params.kvp[n])||(0,o.isNumber)(e.params.kvp[n]))t.ext.kvs[n]=e.params.kvp[n];else if((0,o.isArray)(e.params.kvp[n])){var p=e.params.kvp[n];(p.every((function(e){return(0,o.isStr)(e)}))||p.every((function(e){return(0,o.isNumber)(e)})))&&(t.ext.kvs[n]=e.params.kvp[n])}(0,d.Z)(e,"ortb2Imp.ext.data")&&(0,o.isPlainObject)(e.ortb2Imp.ext.data)&&(t.ext.data=e.ortb2Imp.ext.data),(0,d.Z)(e,"ortb2Imp.instl")&&(0,o.isNumber)(e.ortb2Imp.instl)&&1===e.ortb2Imp.instl&&(t.instl=e.ortb2Imp.instl),!1===O(e)?(t.tagid=e.params.pos,t.ext.pos=e.params.pos):(0,d.Z)(e,"params.placementId")&&(t.tagid=e.params.placementId),r.imp.push(t)}}function C(e){var r=e.payload,i=e.requestOptions,t=e.bidderRequest,a=O(t),n=p.vc.getConfig("yahoossp.endpoint")||"https://c2shb.pubgw.yahoo.com/bidRequest";if(!0===a&&(n=p.vc.getConfig("yahoossp.endpoint")||"https://c2shb.pubgw.yahoo.com/admax/bid/partners/PBJS"),!0===(0,d.Z)(t,"params.testing.e2etest"))if((0,o.logInfo)("yahoossp adapter e2etest mode is active"),i.withCredentials=!1,!0===a)r.site.id="1234567";else{var c=x();r.site.id="8a969516017a7a396ec539d97f540011",r.imp.forEach((function(e){e.ext.e2eTestMode=!0,c===s.Mk?e.tagid="8a969978017a7aaabab4ab0bc01a0009":c===s.pX?e.tagid="8a96958a017a7a57ac375d50c0c700cc":((0,o.logWarn)('yahoossp adapter e2etest mode does not support yahoossp.mode="all". \n Please specify either "banner" or "video"'),(0,o.logWarn)("yahoossp adapter e2etest mode: Please make sure your adUnit matches the yahoossp.mode video or banner"))}))}return{url:n,method:"POST",data:r,options:i,bidderRequest:t}}var A={code:"yahoossp",gvlid:25,aliases:[],supportedMediaTypes:[s.Mk,s.pX],isBidRequestValid:function(e){var r=e.params;return!0===(0,d.Z)(r,"testing.e2etest")||(!(!(0,o.isPlainObject)(r)||!(w(r.pubId)||w(r.dcn)&&w(r.pos)))||((0,o.logWarn)("yahoossp bidder params missing or incorrect, please pass object with either: dcn & pos OR pubId"),!1))},buildRequests:function(e,r){if(!(0,o.isEmpty)(e)&&!(0,o.isEmpty)(r)){var i={contentType:"application/json",customHeaders:{"x-openrtb-version":"2.5"}};i.withCredentials=(0,m.h)(r.gdprConsent);var t=function(e){var r=x(),i=[];return r===s.Mk?i=e.filter((function(e){return Object.keys(e.mediaTypes).some((function(e){return e===s.Mk}))})):r===s.pX?i=e.filter((function(e){return Object.keys(e.mediaTypes).some((function(e){return e===s.pX}))})):"*"===r&&(i=e.filter((function(e){return Object.keys(e.mediaTypes).some((function(e){return e===s.Mk||e===s.pX}))}))),i}(e);if(!0===p.vc.getConfig("yahoossp.singleRequestMode")){var a=I(r,t[0]);return t.forEach((function(e){P(e,a)})),C({payload:a,requestOptions:i,bidderRequest:r})}return t.map((function(e){var t=I(r,e);return P(e,t),C({payload:t,requestOptions:i,bidderRequest:e})}))}(0,o.logWarn)('yahoossp Adapter: buildRequests called with either empty "validBidRequests" or "bidderRequest"')},interpretResponse:function(e,r){r.data;var i=r.bidderRequest,t=[];return e.body&&Array.isArray(e.body.seatbid)?(e.body.seatbid.forEach((function(e){var r;try{r=e.bid[0]}catch(e){return t}var a=r.ext&&r.ext.encp?r.ext.encp:r.price,n={adId:(0,d.Z)(r,"adId")?r.adId:r.impid||r.crid,adUnitCode:i.adUnitCode,requestId:r.impid,cpm:a,width:r.w,height:r.h,creativeId:r.crid||0,currency:r.cur||l,dealId:r.dealid?r.dealid:null,netRevenue:!0,ttl:j(i),meta:{advertiserDomains:r.adomain}},p=function(e){var r=e.adm;return-1!==r.indexOf("o2playerSettings")||-1!==r.indexOf("YAHOO.VideoPlatform.VideoPlayer")||-1!==r.indexOf("AdPlacement")?s.Mk:-1!==r.indexOf("VAST")?s.pX:void 0}(r);p===s.Mk?(n.mediaType=s.Mk,n.ad=r.adm,n.meta.mediaType=s.Mk):p===s.pX&&(n.mediaType=s.pX,n.meta.mediaType=s.pX,n.vastXml=r.adm,r.nurl&&(n.vastUrl=r.nurl)),"outstream"!==(0,d.Z)(i,"mediaTypes.video.context")||i.renderer||(n.renderer=function(e,r){var i=c.Th.install({url:"https://s.yimg.com/kp/prebid-outstream-renderer/renderer.js",loaded:!1,adUnitCode:e.adUnitCode});try{i.setRender((function(r){setTimeout((function(){o2PlayerRender(r)}),(0,d.Z)(e,"params.testing.renderer.setTimeout")||700)}))}catch(e){(0,o.logWarn)("yahoossp renderer error: setRender() failed",e)}return i}(i)||void 0),t.push(n)})),t):t},getUserSyncs:function(e,r,i,t){var a=!(0,o.isEmpty)(r)&&r[0].body;return a&&a.ext&&a.ext.pixels?function(e,r){var i=/\w*(?=\s)/,t=/src=("|')(.*?)\1/,a=[];if(r){var n=r.match(/(img|iframe)[\s\S]*?src\s*=\s*("|')(.*?)\2/gi);n&&n.forEach((function(r){var n=r.match(i)[0],s=r.match(t)[2];if(n&&s){var o="img"===n.toLowerCase()?"image":"iframe";if(!e.iframeEnabled&&"iframe"===o||!e.pixelEnabled&&"image"===o)return;a.push({type:o,url:s})}}))}return a}(e,a.ext.pixels):[]}};(0,n.dX)(A),(0,a.z)("yahoosspBidAdapter")},17673:function(e,r,i){i.d(r,{h:function(){return a}});var t=i(20265);function a(e){return null==e||!e.gdprApplies||!0===(0,t.Z)(e,"vendorData.purpose.consents.1")}}},function(e){var r;r=27501,e(e.s=r)}]);
|
|
1
|
+
(self.pbjsChunk=self.pbjsChunk||[]).push([[80215],{27501:function(e,r,i){var t=i(4942),a=i(78640),n=i(14699),s=i(24679),o=i(64358),d=i(20265),p=i(3193),c=i(35706),m=i(17673);function u(e,r){var i=Object.keys(e);if(Object.getOwnPropertySymbols){var t=Object.getOwnPropertySymbols(e);r&&(t=t.filter((function(r){return Object.getOwnPropertyDescriptor(e,r).enumerable}))),i.push.apply(i,t)}return i}var v="7.47.0",l="USD",b=["admixer.net","adserver.org","adtelligent.com","akamai.com","amxdt.net","audigent.com","britepool.com","criteo.com","crwdcntrl.net","deepintent.com","epsilon.com","hcn.health","id5-sync.com","idx.lat","intentiq.com","intimatemerger.com","liveintent.com","liveramp.com","mediawallahscript.com","merkleinc.com","netid.de","neustar.biz","nextroll.com","novatiq.com","parrable.com","pubcid.org","quantcast.com","tapad.com","uidapi.com","verizonmedia.com","yahoo.com","zeotap.com"];function y(e){return{w:parseInt(e[0]),h:parseInt(e[1])}}function f(e){return(0,o.isArray)(e)&&2===e.length&&!(0,o.isArray)(e[0])?[y(e)]:e.map(y)}function g(e){return(0,o.isArray)((0,d.Z)(e,"userIdAsEids"))?e.userIdAsEids.filter((function(e){return-1!==b.indexOf(e.source)})):[]}function h(e){return(0,d.Z)(e,"params.bidOverride.imp.secure")||"https:"===document.location.protocol?1:0}function O(e){var r;return(0,d.Z)(e,"params.pubId")?r=!0:(0,d.Z)(e,"params.dcn")&&(0,d.Z)(e,"params.pos")&&(r=!1),r}function x(){var e=p.vc.getConfig("yahoossp.mode");return void 0===(e=e?e.toLowerCase():void 0)||e===s.Mk?s.Mk:e===s.pX?s.pX:"all"===e?"*":void 0}function Z(e){var r=x(),i={currency:(0,d.Z)(e,"params.bidOverride.cur")||l,mediaType:r,size:"*"};return!!(0,o.isFn)(e.getFloor)&&e.getFloor(i)}function k(e,r,i,a){var n=function(e){for(var r=1;r<arguments.length;r++){var i=null!=arguments[r]?arguments[r]:{};r%2?u(Object(i),!0).forEach((function(r){(0,t.Z)(e,r,i[r])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(i)):u(Object(i)).forEach((function(r){Object.defineProperty(e,r,Object.getOwnPropertyDescriptor(i,r))}))}return e}({},a);for(var s in i)switch(e){case"string":-1!==r.indexOf(s)&&(0,o.isStr)(i[s])&&(n[s]=i[s]);break;case"number":-1!==r.indexOf(s)&&(0,o.isNumber)(i[s])&&(n[s]=i[s]);break;case"array":-1!==r.indexOf(s)&&(0,o.isArray)(i[s])&&(n[s]=i[s]);break;case"object":-1!==r.indexOf(s)&&(0,o.isPlainObject)(i[s])&&(n[s]=i[s]);break;case"objectAllKeys":(0,o.isPlainObject)(i)&&(n[s]=i[s])}return n}function j(e){var r=p.vc.getConfig("yahoossp.ttl");return T(r||(0,d.Z)(e,"params.ttl"))}function T(e){return(0,o.isNumber)(e)&&e>0&&e<3600?e:300}function w(e){return(0,o.isStr)(e)&&e.length>0}function I(e,r){if(e){var i,t,a={id:(0,o.generateUUID)(),cur:[Z(e).currency||(0,d.Z)(r,"params.bidOverride.cur")||l],imp:[],site:{page:(0,d.Z)(e,"refererInfo.page")},device:{dnt:0,ua:navigator.userAgent,ip:(0,d.Z)(r,"params.bidOverride.device.ip")||(0,d.Z)(r,"params.ext.ip")||void 0,w:window.screen.width,h:window.screen.height},regs:{ext:{us_privacy:e.uspConsent?e.uspConsent:"",gdpr:e.gdprConsent&&e.gdprConsent.gdprApplies?1:0}},source:{ext:{hb:1,adapterver:"1.0.2",prebidver:v,integration:{name:"prebid.js",ver:v}},fd:1},user:{ext:{consent:e.gdprConsent&&e.gdprConsent.gdprApplies?e.gdprConsent.consentString:"",eids:g(r)}}};!0===O(r)?(a.site.publisher={id:r.params.pubId},((0,d.Z)(r,"params.bidOverride.site.id")||(0,d.Z)(r,"params.siteId"))&&(a.site.id=(0,d.Z)(r,"params.bidOverride.site.id")||r.params.siteId)):a.site.id=r.params.dcn,null!==(i=e.ortb2)&&void 0!==i&&null!==(t=i.regs)&&void 0!==t&&t.gpp&&(a.regs.ext.gpp=e.ortb2.regs.gpp,a.regs.ext.gpp_sid=e.ortb2.regs.gpp_sid),e.ortb2&&(a=function(e,r){var i=r.ortb2,t=(0,d.Z)(i,"site")||void 0,a=(0,d.Z)(t,"content")||void 0,n=(0,d.Z)(t,"content.data")||void 0,s=(0,d.Z)(i,"app.content")||void 0,p=(0,d.Z)(i,"app.content.data")||void 0,c=(0,d.Z)(i,"user")||void 0;if(t&&(0,o.isPlainObject)(t)){var m=["name","domain","page","ref","keywords","search"],u=["cat","sectioncat","pagecat"],v=["ext"];e.site=k("string",m,t,e.site),e.site=k("array",u,t,e.site),e.site=k("object",v,t,e.site)}if(a&&(0,o.isPlainObject)(a)){var l=["id","title","series","season","genre","contentrating","language"],b=["episode","prodq","context","livestream","len"],y=["cat"],f=["ext"];e.site.content=k("string",l,a,e.site.content),e.site.content=k("number",b,a,e.site.content),e.site.content=k("array",y,a,e.site.content),e.site.content=k("object",f,a,e.site.content),n&&(0,o.isArray)(n)&&n.every((function(r){var i={},t=["segment"],a=["ext"];i=k("string",["id","name"],r,i),i=k("array",t,r,i),i=k("object",a,r,i),e.site.content.data=[],e.site.content.data.push(i)}))}s&&(0,o.isPlainObject)(s)&&p&&(0,o.isArray)(p)&&p.every((function(r){var i={},t=["segment"],a=["ext"];i=k("string",["id","name"],r,i),i=k("array",t,r,i),i=k("object",a,r,i),e.app={content:{data:[]}},e.app.content.data.push(i)}));if(c&&(0,o.isPlainObject)(c)){var g=["id","buyeruid","gender","keywords","customdata"],h=["yob"],O=["data"],x=["ext"];e.user=k("string",g,c,e.user),e.user=k("number",h,c,e.user),e.user=k("array",O,c,e.user),e.user.ext=k("object",x,c,e.user.ext)}return e}(a,r));var n=(0,d.Z)(r,"schain.nodes");return(0,o.isArray)(n)&&n.length>0&&(a.source.ext.schain=r.schain,a.source.ext.schain.nodes[0].rid=a.id),a}}function P(e,r){var i=x();if(r&&e){var t={id:e.bidId,secure:h(e),bidfloor:Z(e).floor||(0,d.Z)(e,"params.bidOverride.imp.bidfloor")};if(!e.mediaTypes.banner||void 0!==i&&i!==s.Mk&&"*"!==i||(t.banner={mimes:e.mediaTypes.banner.mimes||["text/html","text/javascript","application/javascript","image/jpg"],format:f(e.sizes)},e.mediaTypes.banner.pos&&(t.banner.pos=e.mediaTypes.banner.pos)),e.mediaTypes.video&&(i===s.pX||"*"===i)){var a=f(e.mediaTypes.video.playerSize);t.video={mimes:(0,d.Z)(e,"params.bidOverride.imp.video.mimes")||e.mediaTypes.video.mimes||["video/mp4","application/javascript"],w:(0,d.Z)(e,"params.bidOverride.imp.video.w")||a[0].w,h:(0,d.Z)(e,"params.bidOverride.imp.video.h")||a[0].h,maxbitrate:(0,d.Z)(e,"params.bidOverride.imp.video.maxbitrate")||e.mediaTypes.video.maxbitrate||void 0,maxduration:(0,d.Z)(e,"params.bidOverride.imp.video.maxduration")||e.mediaTypes.video.maxduration||void 0,minduration:(0,d.Z)(e,"params.bidOverride.imp.video.minduration")||e.mediaTypes.video.minduration||void 0,api:(0,d.Z)(e,"params.bidOverride.imp.video.api")||e.mediaTypes.video.api||[2],delivery:(0,d.Z)(e,"params.bidOverride.imp.video.delivery")||e.mediaTypes.video.delivery||void 0,pos:(0,d.Z)(e,"params.bidOverride.imp.video.pos")||e.mediaTypes.video.pos||void 0,playbackmethod:(0,d.Z)(e,"params.bidOverride.imp.video.playbackmethod")||e.mediaTypes.video.playbackmethod||void 0,placement:(0,d.Z)(e,"params.bidOverride.imp.video.placement")||e.mediaTypes.video.placement||void 0,linearity:(0,d.Z)(e,"params.bidOverride.imp.video.linearity")||e.mediaTypes.video.linearity||1,protocols:(0,d.Z)(e,"params.bidOverride.imp.video.protocols")||e.mediaTypes.video.protocols||[2,5],startdelay:(0,d.Z)(e,"params.bidOverride.imp.video.startdelay")||e.mediaTypes.video.startdelay||0,rewarded:(0,d.Z)(e,"params.bidOverride.imp.video.rewarded")||void 0}}if(t.ext={dfp_ad_unit_code:e.adUnitCode},(0,d.Z)(e,"params.kvp")&&(0,o.isPlainObject)(e.params.kvp))for(var n in t.ext.kvs={},e.params.kvp)if((0,o.isStr)(e.params.kvp[n])||(0,o.isNumber)(e.params.kvp[n]))t.ext.kvs[n]=e.params.kvp[n];else if((0,o.isArray)(e.params.kvp[n])){var p=e.params.kvp[n];(p.every((function(e){return(0,o.isStr)(e)}))||p.every((function(e){return(0,o.isNumber)(e)})))&&(t.ext.kvs[n]=e.params.kvp[n])}(0,d.Z)(e,"ortb2Imp.ext.data")&&(0,o.isPlainObject)(e.ortb2Imp.ext.data)&&(t.ext.data=e.ortb2Imp.ext.data),(0,d.Z)(e,"ortb2Imp.instl")&&(0,o.isNumber)(e.ortb2Imp.instl)&&1===e.ortb2Imp.instl&&(t.instl=e.ortb2Imp.instl),!1===O(e)?(t.tagid=e.params.pos,t.ext.pos=e.params.pos):(0,d.Z)(e,"params.placementId")&&(t.tagid=e.params.placementId),r.imp.push(t)}}function C(e){var r=e.payload,i=e.requestOptions,t=e.bidderRequest,a=O(t),n=p.vc.getConfig("yahoossp.endpoint")||"https://c2shb.pubgw.yahoo.com/bidRequest";if(!0===a&&(n=p.vc.getConfig("yahoossp.endpoint")||"https://c2shb.pubgw.yahoo.com/admax/bid/partners/PBJS"),!0===(0,d.Z)(t,"params.testing.e2etest"))if((0,o.logInfo)("yahoossp adapter e2etest mode is active"),i.withCredentials=!1,!0===a)r.site.id="1234567";else{var c=x();r.site.id="8a969516017a7a396ec539d97f540011",r.imp.forEach((function(e){e.ext.e2eTestMode=!0,c===s.Mk?e.tagid="8a969978017a7aaabab4ab0bc01a0009":c===s.pX?e.tagid="8a96958a017a7a57ac375d50c0c700cc":((0,o.logWarn)('yahoossp adapter e2etest mode does not support yahoossp.mode="all". \n Please specify either "banner" or "video"'),(0,o.logWarn)("yahoossp adapter e2etest mode: Please make sure your adUnit matches the yahoossp.mode video or banner"))}))}return{url:n,method:"POST",data:r,options:i,bidderRequest:t}}var A={code:"yahoossp",gvlid:25,aliases:[],supportedMediaTypes:[s.Mk,s.pX],isBidRequestValid:function(e){var r=e.params;return!0===(0,d.Z)(r,"testing.e2etest")||(!(!(0,o.isPlainObject)(r)||!(w(r.pubId)||w(r.dcn)&&w(r.pos)))||((0,o.logWarn)("yahoossp bidder params missing or incorrect, please pass object with either: dcn & pos OR pubId"),!1))},buildRequests:function(e,r){if(!(0,o.isEmpty)(e)&&!(0,o.isEmpty)(r)){var i={contentType:"application/json",customHeaders:{"x-openrtb-version":"2.5"}};i.withCredentials=(0,m.h)(r.gdprConsent);var t=function(e){var r=x(),i=[];return r===s.Mk?i=e.filter((function(e){return Object.keys(e.mediaTypes).some((function(e){return e===s.Mk}))})):r===s.pX?i=e.filter((function(e){return Object.keys(e.mediaTypes).some((function(e){return e===s.pX}))})):"*"===r&&(i=e.filter((function(e){return Object.keys(e.mediaTypes).some((function(e){return e===s.Mk||e===s.pX}))}))),i}(e);if(!0===p.vc.getConfig("yahoossp.singleRequestMode")){var a=I(r,t[0]);return t.forEach((function(e){P(e,a)})),C({payload:a,requestOptions:i,bidderRequest:r})}return t.map((function(e){var t=I(r,e);return P(e,t),C({payload:t,requestOptions:i,bidderRequest:e})}))}(0,o.logWarn)('yahoossp Adapter: buildRequests called with either empty "validBidRequests" or "bidderRequest"')},interpretResponse:function(e,r){r.data;var i=r.bidderRequest,t=[];return e.body&&Array.isArray(e.body.seatbid)?(e.body.seatbid.forEach((function(e){var r;try{r=e.bid[0]}catch(e){return t}var a=r.ext&&r.ext.encp?r.ext.encp:r.price,n={adId:(0,d.Z)(r,"adId")?r.adId:r.impid||r.crid,adUnitCode:i.adUnitCode,requestId:r.impid,cpm:a,width:r.w,height:r.h,creativeId:r.crid||0,currency:r.cur||l,dealId:r.dealid?r.dealid:null,netRevenue:!0,ttl:j(i),meta:{advertiserDomains:r.adomain}},p=function(e){var r=e.adm;return-1!==r.indexOf("o2playerSettings")||-1!==r.indexOf("YAHOO.VideoPlatform.VideoPlayer")||-1!==r.indexOf("AdPlacement")?s.Mk:-1!==r.indexOf("VAST")?s.pX:void 0}(r);p===s.Mk?(n.mediaType=s.Mk,n.ad=r.adm,n.meta.mediaType=s.Mk):p===s.pX&&(n.mediaType=s.pX,n.meta.mediaType=s.pX,n.vastXml=r.adm,r.nurl&&(n.vastUrl=r.nurl)),"outstream"!==(0,d.Z)(i,"mediaTypes.video.context")||i.renderer||(n.renderer=function(e,r){var i=c.Th.install({url:"https://s.yimg.com/kp/prebid-outstream-renderer/renderer.js",loaded:!1,adUnitCode:e.adUnitCode});try{i.setRender((function(r){setTimeout((function(){o2PlayerRender(r)}),(0,d.Z)(e,"params.testing.renderer.setTimeout")||700)}))}catch(e){(0,o.logWarn)("yahoossp renderer error: setRender() failed",e)}return i}(i)||void 0),t.push(n)})),t):t},getUserSyncs:function(e,r,i,t){var a=!(0,o.isEmpty)(r)&&r[0].body;return a&&a.ext&&a.ext.pixels?function(e,r){var i=/\w*(?=\s)/,t=/src=("|')(.*?)\1/,a=[];if(r){var n=r.match(/(img|iframe)[\s\S]*?src\s*=\s*("|')(.*?)\2/gi);n&&n.forEach((function(r){var n=r.match(i)[0],s=r.match(t)[2];if(n&&s){var o="img"===n.toLowerCase()?"image":"iframe";if(!e.iframeEnabled&&"iframe"===o||!e.pixelEnabled&&"image"===o)return;a.push({type:o,url:s})}}))}return a}(e,a.ext.pixels):[]}};(0,n.dX)(A),(0,a.z)("yahoosspBidAdapter")},17673:function(e,r,i){i.d(r,{h:function(){return a}});var t=i(20265);function a(e){return null==e||!e.gdprApplies||!0===(0,t.Z)(e,"vendorData.purpose.consents.1")}}},function(e){var r;r=27501,e(e.s=r)}]);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(self.pbjsChunk=self.pbjsChunk||[]).push([[15337],{55511:function(e,r,t){var n=t(71002),i=t(78640),a=t(64358),o=t(20265),d=t(96475),c=t(24679),u=t(14699),s=t(35706),p=t(34614),f="USD",m=300,l=!0,v="https://ads.yieldmo.com/pbcas",g="https://prebid-outstream.yieldmo.com/bundle.js",y=["mimes","startdelay","placement","startdelay","skipafter","protocols","api","playbackmethod","maxduration","minduration","pos","skip","skippable"],
|
|
1
|
+
(self.pbjsChunk=self.pbjsChunk||[]).push([[15337],{55511:function(e,r,t){var n=t(71002),i=t(78640),a=t(64358),o=t(20265),d=t(96475),c=t(24679),u=t(14699),s=t(35706),p=t(34614),f="USD",m=300,l=!0,v="https://ads.yieldmo.com/pbcas",g="https://prebid-outstream.yieldmo.com/bundle.js",y=["mimes","startdelay","placement","startdelay","skipafter","protocols","api","playbackmethod","maxduration","minduration","pos","skip","skippable"],h=["name","domain","cat","keywords"],b=(0,a.getWindowTop)(),I=["description","title","pr","page_url"],x={code:"yieldmo",supportedMediaTypes:[c.Mk,c.pX],gvlid:173,isBidRequestValid:function(e){return!!(e&&e.adUnitCode&&e.bidId&&(w(e)||Z(e))&&function(e){if(!Z(e))return!0;var r=function(e,r,t){var n='"'.concat(e,'" is required');throw t&&(n+=" when "+t),new Error(n)},t=function(e,r,t){throw t=t?", expected: "+t:"",r=JSON.stringify(r),new Error('"'.concat(e,'"=').concat(r," is invalid").concat(t))},n=function(e){return void 0!==e},i=function(r,t,n,i){if(0===r.indexOf("video")){var a="params."+r,d="mediaTypes."+r,c=(0,o.Z)(e,a),u=(0,o.Z)(e,d),s=t(c),p=t(u);return s?c:p||(s?p||n(d,u,i):n(a,c,i),c||u)}var f=(0,o.Z)(e,r);return t(f)||n(r,f,i),f};try{i("video.context",(function(e){return!(0,a.isEmpty)(e)}),r),i("params.placementId",(function(e){return!(0,a.isEmpty)(e)}),r),i("video.playerSize",(function(e){return(0,a.isArrayOfNums)(e,2)||(0,a.isArray)(e)&&e.every((function(e){return(0,a.isArrayOfNums)(e,2)}))}),t,"array of 2 integers, ex: [640,480] or [[640,480]]"),i("video.mimes",(function(e){return n(e)}),r),i("video.mimes",(function(e){return(0,a.isArray)(e)&&e.every((function(e){return(0,a.isStr)(e)}))}),t,'array of strings, ex: ["video/mp4"]');var d=i("video.placement",(function(e){return n(e)}),r);return i("video.placement",(function(e){return e>=1&&e<=5}),t),1===d&&(i("video.startdelay",(function(e){return n(e)}),(function(e,t){return r(e,t,"placement == 1")})),i("video.startdelay",(function(e){return(0,a.isNumber)(e)}),t,"number, ex: 5")),i("video.protocols",(function(e){return n(e)}),r),i("video.protocols",(function(e){return(0,a.isArrayOfNums)(e)&&e.every((function(e){return e>=1&&e<=6}))}),t,"array of numbers, ex: [2,3]"),i("video.api",(function(e){return n(e)}),r),i("video.api",(function(e){return(0,a.isArrayOfNums)(e)&&e.every((function(e){return e>=1&&e<=6}))}),t,"array of numbers, ex: [2,3]"),i("video.playbackmethod",(function(e){return!n(e)||(0,a.isArrayOfNums)(e)}),t,"array of integers, ex: [2,6]"),i("video.maxduration",(function(e){return n(e)}),r),i("video.maxduration",(function(e){return(0,a.isInteger)(e)}),t),i("video.minduration",(function(e){return!n(e)||(0,a.isNumber)(e)}),t),i("video.skippable",(function(e){return!n(e)||(0,a.isBoolean)(e)}),t),i("video.skipafter",(function(e){return!n(e)||(0,a.isNumber)(e)}),t),i("video.pos",(function(e){return!n(e)||(0,a.isNumber)(e)}),t),i("params.badv",(function(e){return!n(e)||(0,a.isArray)(e)}),t,'array of strings, ex: ["ford.com","pepsi.com"]'),i("params.bcat",(function(e){return!n(e)||(0,a.isArray)(e)}),t,'array of strings, ex: ["IAB1-5","IAB1-6"]'),!0}catch(e){return(0,a.logError)(e.message),!1}}(e))},buildRequests:function(e,r){var t=function(e){var r,t;return!(null===(r=e.refererInfo)||void 0===r||null===(t=r.referer)||void 0===t||!t.includes("pb_force_a"))}(r),n=_("/exchange/prebid",t),i=_("/exchange/prebidvideo",t),u=e.filter((function(e){return w(e)})),s=e.filter((function(e){return Z(e)})),f=[],m=function(e){if((0,o.Z)(e,"userIdAsEids"))return e.userIdAsEids||[]}(e[0])||[];if(u.length>0){var l={pbav:"7.47.0",p:[],page_url:r.refererInfo.page,bust:(new Date).getTime().toString(),dnt:"1"===window.doNotTrack||"1"===window.navigator.doNotTrack||!1,description:k(),userConsent:JSON.stringify({gdprApplies:(0,o.Z)(r,"gdprConsent.gdprApplies")||"",cmp:(0,o.Z)(r,"gdprConsent.consentString")||"",gpp:(0,o.Z)(r,"gppConsent.gppString")||"",gpp_sid:(0,o.Z)(r,"gppConsent.applicableSections")||[]}),us_privacy:(0,o.Z)(r,"uspConsent")||""};(function(){try{if((0,a.getWindowTop)().location.href)return!0}catch(e){return!1}})()&&(l.pr=b.document&&b.document.referrer||"",l.scrd=b.devicePixelRatio||0,l.title=b.document.title||"",l.w=b.innerWidth,l.h=b.innerHeight);var v=window.navigator.maxTouchPoints;v&&(l.mtp=v),u.forEach((function(e){l.p.push(function(e){var r=(0,o.Z)(e,"ortb2Imp.ext.data.pbadslot"),t={placement_id:e.adUnitCode,callback_id:e.bidId,sizes:e.mediaTypes.banner.sizes};if(e.params){e.params.placementId&&(t.ym_placement_id=e.params.placementId);var n=S(e,c.Mk);n&&(t.bidFloor=n)}r&&(t.gpid=r);var i=(0,o.Z)(e,"ortb2Imp.ext.tid");i&&(t.tid=i);e.auctionId&&(t.auctionId=e.auctionId);return JSON.stringify(t)}(e));var r=N(e,"pubcid");r?l.pubcid=r:e.crumbs&&e.crumbs.pubcid&&(l.pubcid=e.crumbs.pubcid);var t=N(e,"tdid");t&&(l.tdid=t);var n=N(e,"criteoId");n&&(l.cri_prebid=n),e.schain&&(l.schain=JSON.stringify(e.schain)),(0,o.Z)(e,"params.lr_env")&&(l.ats_envelope=e.params.lr_env)})),l.p="["+l.p.toString()+"]",m.length&&(l.eids=JSON.stringify(m));var g="".concat(n,"?").concat((0,a.parseQueryStringParameters)(l)).length-8e3;if(g>0)for(var h=0;h<I.length&&!((g=T(g,l,I[h]))<=0);h++);f.push({method:"GET",url:n,data:l})}if(s.length>0){var x=function(e,r){var t=e[0].schain,n={id:e[0].bidderRequestId,tmax:r.timeout||400,at:1,imp:e.map((function(e){return function(e){var r=(0,o.Z)(e,"ortb2Imp.ext.data.pbadslot"),t=function(e){var r=(0,o.Z)(e,"mediaTypes.video.playerSize");if((0,a.isArrayOfNums)(r,2))return r;if((0,a.isArray)(r)&&(0,a.isArrayOfNums)(r[0],2))return r[0];return null}(e),n={id:e.bidId,tagid:e.adUnitCode,bidfloor:S(e,c.pX),ext:{placement_id:e.params.placementId,tid:(0,o.Z)(e,"ortb2Imp.ext.tid")},video:{w:t[0],h:t[1],linearity:1}},i=(0,o.Z)(e,"mediaTypes.video");Object.keys(i).filter((function(e){return(0,p.q9)(y,e)})).forEach((function(e){return n.video[e]=i[e]}));var d=(0,o.Z)(e,"params.video");Object.keys(d).filter((function(e){return(0,p.q9)(y,e)})).forEach((function(e){return n.video[e]=d[e]})),n.video.skippable&&(n.video.skip=1,delete n.video.skippable);1!==n.video.placement&&(n.video.startdelay=0,n.video.playbackmethod=[2]);r&&(n.ext.gpid=r);return n}(e)})),site:A(e[0],r),device:(0,o.Z)(r,"ortb2.device"),badv:e[0].params.badv||[],bcat:(0,o.Z)(r,"bcat")||e[0].params.bcat||[],ext:{prebid:"7.47.0"},ats_envelope:e[0].params.lr_env};t&&(n.schain=t);e[0].auctionId&&(n.auctionId=e[0].auctionId);return function(e,r){var t=r.gdprConsent,n=(0,o.Z)(r,"gppConsent.gppString"),i=(0,o.Z)(r,"gppConsent.applicableSections");n?(0,d.N)(e,"regs.ext.gpp",n):((0,d.N)(e,"regs.ext.gdpr",t&&t.gdprApplies?1:0),(0,d.N)(e,"user.ext.consent",t&&t.consentString?t.consentString:""));i&&i.length>0&&(0,d.N)(e,"regs.ext.gpp_sid",i);var a=(0,o.Z)(r,"uspConsent");!n&&a&&(0,d.N)(e,"regs.ext.us_privacy",a)}(n,r),n}(s,r);m.length&&(x.user={eids:m}),f.push({method:"POST",url:i,data:x})}return f},interpretResponse:function(e,r){var t=[],n=e.body;(n.length>0&&n.forEach((function(e){e.cpm>0&&t.push(function(e){return{dealId:e.publisherDealId,requestId:e.callback_id,cpm:e.cpm,width:e.width,height:e.height,creativeId:e.creative_id,currency:f,netRevenue:l,ttl:300,ad:e.ad,meta:{advertiserDomains:e.adomain||[],mediaType:c.Mk}}}(e))})),n.seatbid)&&n.seatbid.reduce((function(e,r){return e.concat(r.bid)}),[]).forEach((function(e){return t.push(function(e,r){var t=(0,p.sE)((0,o.Z)(r,"data.imp")||[],(function(r){return r.id===e.impid})),n={dealId:e.dealid,requestId:t.id,cpm:e.price,width:t.video.w,height:t.video.h,creativeId:e.crid||e.adid,currency:f,netRevenue:l,mediaType:c.pX,ttl:m,vastXml:e.adm,meta:{advertiserDomains:e.adomain||[],mediaType:c.pX}};if(t.video.placement&&1!==t.video.placement){var i=s.Th.install({url:g,config:{width:n.width,height:n.height,vastTimeout:15e3,maxAllowedVastTagRedirects:5,allowVpaid:!0,autoPlay:!0,preload:!0,mute:!0},id:t.tagid,loaded:!1});i.setRender((function(e){e.renderer.push((function(){var r=e.renderer,t=r.id,n=r.config;window.YMoutstreamPlayer(e,t,n)}))})),n.renderer=i}return n}(e,r))}));return t},getUserSyncs:function(e,r){var t=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},n=arguments.length>3&&void 0!==arguments[3]?arguments[3]:"",i=[],a="&gdpr=".concat(t.gdprApplies?1:0),o="&gdpr_consent=".concat(encodeURIComponent(t.consentString||"")),d="us_privacy=".concat(encodeURIComponent(n)),c="".concat(v,"?").concat(d).concat(a).concat(o);return e.iframeEnabled?i.push({type:"iframe",url:c+"&type=iframe"}):e.pixelEnabled&&i.push({type:"image",url:c+"&type=image"}),i}};function w(e){return!!(0,o.Z)(e,"mediaTypes.banner")}function Z(e){return!!(0,o.Z)(e,"mediaTypes.video")}function k(){return document.querySelector('meta[name="description"]')&&document.querySelector('meta[name="description"]').getAttribute("content")||""}function N(e,r){return"object"===(0,n.Z)((0,o.Z)(e,"userId"))?e.userId[r]:void 0}function S(e,r){var t={};return"function"==typeof e.getFloor&&(t=e.getFloor({currency:f,mediaType:r,size:"*"})),t.floor||e.params.bidfloor||e.params.bidFloor||0}function A(e,r){var t,n={},i=(0,a.parseUrl)((0,o.Z)(r,"refererInfo.page"));(0,a.isEmpty)(i)||(n.page="".concat(i.protocol,"://").concat(i.hostname).concat(i.pathname)),null!==(t=r.refererInfo)&&void 0!==t&&t.ref&&(n.ref=r.refererInfo.ref);var d=document.getElementsByTagName("meta").keywords;d&&d.content&&(n.keywords=d.content);var c=(0,o.Z)(e,"params.site");return c&&Object.keys(c).filter((function(e){return(0,p.q9)(h,e)})).forEach((function(e){return n[e]=c[e]})),n}function T(e,r,t){if(r[t].length>e)return r[t]=r[t].substring(0,r[t].length-e),0;var n=e-r[t].length;return r[t]="",n}function _(e,r){return"".concat(r?"https://ads-stg.yieldmo.com":"https://ads.yieldmo.com").concat(e)}(0,u.dX)(x),(0,i.z)("yieldmoBidAdapter")}},function(e){var r;r=55511,e(e.s=r)}]);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(self.pbjsChunk=self.pbjsChunk||[]).push([[54572],{83519:function(e,t,n){var a=n(78640),i=n(64358),o=n(48928),r=n(64563),d=n(5644),s=n(51039),c=n(18621),u=n(78653),v={},g={},f={},l={};l[d.FP.BID_ADJUSTMENT]=!0,l[d.FP.BIDDER_DONE]=!0,l[d.FP.AUCTION_END]=!0;var p="",b="https://pool.tsukiji.iponweb.net/hba",I="";function S(e,t){e.adUnitCode&&t[e.adUnitCode]&&(e.adUnitName=t[e.adUnitCode]),(0,i.isArray)(e.adUnits)&&e.adUnits.forEach((function(e){e.code&&t[e.code]&&(e.name=t[e.code])})),(0,i.isArray)(e.adUnitCodes)&&(e.adUnitNames=e.adUnitCodes.map((function(e){return t[e]}))),["bids","bidderRequests","bidsReceived","noBids"].forEach((function(n){!function(e,t){(0,i.isArray)(e)&&e.forEach((function(e){S(e,t)}))}(e[n],t)}))}var h=Object.assign((0,r.ZP)({analyticsType:"endpoint"}),{getUrl:function(){return b},track:function(e){var t=e.eventType,n=e.args,a=void 0===n?{}:n;if(t===d.FP.BID_REQUESTED){var o="".concat(a.bidderCode,"_").concat(a.auctionId);v[o]=(0,i.deepClone)(a),v[o].bids=[],a.bids.forEach((function(e){g["".concat(e.bidId,"_").concat(e.auctionId)]=e}))}if(t===d.FP.BID_TIMEOUT&&(0,i.isArray)(a)){var r=h.eventsStorage,s={};a.forEach((function(e){var n="".concat(e.bidId,"_").concat(e.auctionId),a="".concat(e.bidder,"_").concat(e.auctionId);r[e.auctionId]||(r[e.auctionId]={events:[]}),(v[a]||s[e.bidder])&&g[n]&&(s[e.bidder]||(s[e.bidder]=v[a],r[e.auctionId].events.push({eventType:t,params:s[e.bidder]}),delete v[a]),s[e.bidder].bids.push(g[n]),delete g[n])}))}else if(p=a.auctionId||p){var b=h.eventsStorage;b[p]||(b[p]={events:[]});var y=a.refererInfo&&a.refererInfo.page;y&&f[p]!==y&&(f[p]=y);var E=Object.assign({},a);if(delete E.ad,E.bidsReceived&&(E.bidsReceived=E.bidsReceived.map((function(e){var t=Object.assign({},e);return delete t.ad,t}))),l[t]||b[p].events.push({eventType:t,params:E}),t===d.FP.AUCTION_END||t===d.FP.BID_WON){if(E.adServerTargeting=c.q0.getAllTargeting(u.K.getAdUnitCodes(),u.K.getBidsReceived()),h.eventsStorage[p]&&h.eventsStorage[p].events.length){h.eventsStorage[p].page={url:f[p]},h.eventsStorage[p].pubId=I,h.eventsStorage[p].wrapper_version="7.
|
|
1
|
+
(self.pbjsChunk=self.pbjsChunk||[]).push([[54572],{83519:function(e,t,n){var a=n(78640),i=n(64358),o=n(48928),r=n(64563),d=n(5644),s=n(51039),c=n(18621),u=n(78653),v={},g={},f={},l={};l[d.FP.BID_ADJUSTMENT]=!0,l[d.FP.BIDDER_DONE]=!0,l[d.FP.AUCTION_END]=!0;var p="",b="https://pool.tsukiji.iponweb.net/hba",I="";function S(e,t){e.adUnitCode&&t[e.adUnitCode]&&(e.adUnitName=t[e.adUnitCode]),(0,i.isArray)(e.adUnits)&&e.adUnits.forEach((function(e){e.code&&t[e.code]&&(e.name=t[e.code])})),(0,i.isArray)(e.adUnitCodes)&&(e.adUnitNames=e.adUnitCodes.map((function(e){return t[e]}))),["bids","bidderRequests","bidsReceived","noBids"].forEach((function(n){!function(e,t){(0,i.isArray)(e)&&e.forEach((function(e){S(e,t)}))}(e[n],t)}))}var h=Object.assign((0,r.ZP)({analyticsType:"endpoint"}),{getUrl:function(){return b},track:function(e){var t=e.eventType,n=e.args,a=void 0===n?{}:n;if(t===d.FP.BID_REQUESTED){var o="".concat(a.bidderCode,"_").concat(a.auctionId);v[o]=(0,i.deepClone)(a),v[o].bids=[],a.bids.forEach((function(e){g["".concat(e.bidId,"_").concat(e.auctionId)]=e}))}if(t===d.FP.BID_TIMEOUT&&(0,i.isArray)(a)){var r=h.eventsStorage,s={};a.forEach((function(e){var n="".concat(e.bidId,"_").concat(e.auctionId),a="".concat(e.bidder,"_").concat(e.auctionId);r[e.auctionId]||(r[e.auctionId]={events:[]}),(v[a]||s[e.bidder])&&g[n]&&(s[e.bidder]||(s[e.bidder]=v[a],r[e.auctionId].events.push({eventType:t,params:s[e.bidder]}),delete v[a]),s[e.bidder].bids.push(g[n]),delete g[n])}))}else if(p=a.auctionId||p){var b=h.eventsStorage;b[p]||(b[p]={events:[]});var y=a.refererInfo&&a.refererInfo.page;y&&f[p]!==y&&(f[p]=y);var E=Object.assign({},a);if(delete E.ad,E.bidsReceived&&(E.bidsReceived=E.bidsReceived.map((function(e){var t=Object.assign({},e);return delete t.ad,t}))),l[t]||b[p].events.push({eventType:t,params:E}),t===d.FP.AUCTION_END||t===d.FP.BID_WON){if(E.adServerTargeting=c.q0.getAllTargeting(u.K.getAdUnitCodes(),u.K.getBidsReceived()),h.eventsStorage[p]&&h.eventsStorage[p].events.length){h.eventsStorage[p].page={url:f[p]},h.eventsStorage[p].pubId=I,h.eventsStorage[p].wrapper_version="7.47.0";var A=function(){if(window.googletag&&window.googletag.pubads){var e=googletag.pubads();if(e&&e.getSlots){var t=e.getSlots();if(t&&t.length){var n={};return t.forEach((function(e){var t=e.getSlotElementId(),a=(e.getAdUnitPath()||"").split("/").pop();n[t]=a})),n}}}}();A&&h.eventsStorage[p].events.forEach((function(e){S(e.params,A)}))}h.sendStat(h.eventsStorage[p],p)}}},sendStat:function(e,t){e&&e.events&&e.events.length&&(delete h.eventsStorage[t],(0,o.h)(b,{success:function(){},error:function(){}},JSON.stringify(e),{method:"POST"}))}});h.eventsStorage={},h.originEnableAnalytics=h.enableAnalytics,h.enableAnalytics=function(e){var t=e&&e.options;t&&("string"==typeof t.url&&(b=t.url),t.pubId&&(I=t.pubId.toString())),h.originEnableAnalytics(e)},s.ZP.registerAnalyticsAdapter({adapter:h,code:"yieldone"});(0,a.z)("yieldoneAnalyticsAdapter")}},function(e){e.O(0,[14861],(function(){return t=83519,e(e.s=t);var t}));e.O()}]);
|
|
@@ -9,12 +9,13 @@ import { timestamp, parseUrl, triggerPixel, logError } from '../src/utils.js';
|
|
|
9
9
|
import { ajax } from '../src/ajax.js';
|
|
10
10
|
import { getRefererInfo } from '../src/refererDetection.js';
|
|
11
11
|
import { submodule } from '../src/hook.js';
|
|
12
|
-
import {getStorageManager} from '../src/storageManager.js';
|
|
13
|
-
import {MODULE_TYPE_UID} from '../src/activities/modules.js';
|
|
12
|
+
import { getStorageManager } from '../src/storageManager.js';
|
|
13
|
+
import { MODULE_TYPE_UID } from '../src/activities/modules.js';
|
|
14
|
+
import { gdprDataHandler, uspDataHandler, gppDataHandler } from '../src/adapterManager.js';
|
|
14
15
|
|
|
15
16
|
const gvlid = 91;
|
|
16
17
|
const bidderCode = 'criteo';
|
|
17
|
-
export const storage = getStorageManager({moduleType: MODULE_TYPE_UID, moduleName: bidderCode});
|
|
18
|
+
export const storage = getStorageManager({ moduleType: MODULE_TYPE_UID, moduleName: bidderCode });
|
|
18
19
|
|
|
19
20
|
const bididStorageKey = 'cto_bidid';
|
|
20
21
|
const bundleStorageKey = 'cto_bundle';
|
|
@@ -77,17 +78,33 @@ function getCriteoDataFromAllStorages() {
|
|
|
77
78
|
}
|
|
78
79
|
}
|
|
79
80
|
|
|
80
|
-
function buildCriteoUsersyncUrl(topUrl, domain, bundle, dnaBundle, areCookiesWriteable, isLocalStorageWritable, isPublishertagPresent
|
|
81
|
-
|
|
81
|
+
function buildCriteoUsersyncUrl(topUrl, domain, bundle, dnaBundle, areCookiesWriteable, isLocalStorageWritable, isPublishertagPresent) {
|
|
82
|
+
let url = 'https://gum.criteo.com/sid/json?origin=prebid' +
|
|
82
83
|
`${topUrl ? '&topUrl=' + encodeURIComponent(topUrl) : ''}` +
|
|
83
84
|
`${domain ? '&domain=' + encodeURIComponent(domain) : ''}` +
|
|
84
85
|
`${bundle ? '&bundle=' + encodeURIComponent(bundle) : ''}` +
|
|
85
86
|
`${dnaBundle ? '&info=' + encodeURIComponent(dnaBundle) : ''}` +
|
|
86
|
-
`${gdprString ? '&gdprString=' + encodeURIComponent(gdprString) : ''}` +
|
|
87
87
|
`${areCookiesWriteable ? '&cw=1' : ''}` +
|
|
88
88
|
`${isPublishertagPresent ? '&pbt=1' : ''}` +
|
|
89
89
|
`${isLocalStorageWritable ? '&lsw=1' : ''}`;
|
|
90
90
|
|
|
91
|
+
const usPrivacyString = uspDataHandler.getConsentData();
|
|
92
|
+
if (usPrivacyString) {
|
|
93
|
+
url = url + `&us_privacy=${encodeURIComponent(usPrivacyString)}`;
|
|
94
|
+
}
|
|
95
|
+
|
|
96
|
+
const gdprConsent = gdprDataHandler.getConsentData()
|
|
97
|
+
if (gdprConsent) {
|
|
98
|
+
url = url + `${gdprConsent.consentString ? '&gdprString=' + encodeURIComponent(gdprConsent.consentString) : ''}`;
|
|
99
|
+
url = url + `&gdpr=${gdprConsent.gdprApplies === true ? 1 : 0}`;
|
|
100
|
+
}
|
|
101
|
+
|
|
102
|
+
const gppConsent = gppDataHandler.getConsentData();
|
|
103
|
+
if (gppConsent) {
|
|
104
|
+
url = url + `${gppConsent.gppString ? '&gpp=' + encodeURIComponent(gppConsent.gppString) : ''}`;
|
|
105
|
+
url = url + `${gppConsent.applicableSections ? '&gpp_sid=' + encodeURIComponent(gppConsent.applicableSections) : ''}`;
|
|
106
|
+
}
|
|
107
|
+
|
|
91
108
|
return url;
|
|
92
109
|
}
|
|
93
110
|
|
|
@@ -116,7 +133,7 @@ function callSyncPixel(domain, pixel) {
|
|
|
116
133
|
}
|
|
117
134
|
}
|
|
118
135
|
|
|
119
|
-
function callCriteoUserSync(parsedCriteoData,
|
|
136
|
+
function callCriteoUserSync(parsedCriteoData, callback) {
|
|
120
137
|
const cw = storage.cookiesAreEnabled();
|
|
121
138
|
const lsw = storage.localStorageIsEnabled();
|
|
122
139
|
const topUrl = extractProtocolHost(getRefererInfo().page);
|
|
@@ -131,8 +148,7 @@ function callCriteoUserSync(parsedCriteoData, gdprString, callback) {
|
|
|
131
148
|
parsedCriteoData.dnaBundle,
|
|
132
149
|
cw,
|
|
133
150
|
lsw,
|
|
134
|
-
isPublishertagPresent
|
|
135
|
-
gdprString
|
|
151
|
+
isPublishertagPresent
|
|
136
152
|
);
|
|
137
153
|
|
|
138
154
|
const callbacks = {
|
|
@@ -191,13 +207,10 @@ export const criteoIdSubmodule = {
|
|
|
191
207
|
* @param {ConsentData} [consentData]
|
|
192
208
|
* @returns {{id: {criteoId: string} | undefined}}}
|
|
193
209
|
*/
|
|
194
|
-
getId(
|
|
195
|
-
const hasGdprData = consentData && typeof consentData.gdprApplies === 'boolean' && consentData.gdprApplies;
|
|
196
|
-
const gdprConsentString = hasGdprData ? consentData.consentString : undefined;
|
|
197
|
-
|
|
210
|
+
getId() {
|
|
198
211
|
let localData = getCriteoDataFromAllStorages();
|
|
199
212
|
|
|
200
|
-
const result = (callback) => callCriteoUserSync(localData,
|
|
213
|
+
const result = (callback) => callCriteoUserSync(localData, callback);
|
|
201
214
|
|
|
202
215
|
return {
|
|
203
216
|
id: localData.bidId ? { criteoId: localData.bidId } : undefined,
|
|
@@ -0,0 +1,211 @@
|
|
|
1
|
+
import { isFn, deepAccess, logMessage, logError } from '../src/utils.js';
|
|
2
|
+
import { convertOrtbRequestToProprietaryNative } from '../src/native.js';
|
|
3
|
+
|
|
4
|
+
import { registerBidder } from '../src/adapters/bidderFactory.js';
|
|
5
|
+
import { BANNER, NATIVE, VIDEO } from '../src/mediaTypes.js';
|
|
6
|
+
import { config } from '../src/config.js';
|
|
7
|
+
|
|
8
|
+
const BIDDER_CODE = 'emtv';
|
|
9
|
+
const AD_URL = 'https://us-east-ep.engagemedia.tv/pbjs';
|
|
10
|
+
const SYNC_URL = 'https://cs.engagemedia.tv';
|
|
11
|
+
|
|
12
|
+
function isBidResponseValid(bid) {
|
|
13
|
+
if (!bid.requestId || !bid.cpm || !bid.creativeId || !bid.ttl || !bid.currency) {
|
|
14
|
+
return false;
|
|
15
|
+
}
|
|
16
|
+
|
|
17
|
+
switch (bid.mediaType) {
|
|
18
|
+
case BANNER:
|
|
19
|
+
return Boolean(bid.width && bid.height && bid.ad);
|
|
20
|
+
case VIDEO:
|
|
21
|
+
return Boolean(bid.vastUrl || bid.vastXml);
|
|
22
|
+
case NATIVE:
|
|
23
|
+
return Boolean(bid.native && bid.native.impressionTrackers && bid.native.impressionTrackers.length);
|
|
24
|
+
default:
|
|
25
|
+
return false;
|
|
26
|
+
}
|
|
27
|
+
}
|
|
28
|
+
|
|
29
|
+
function getPlacementReqData(bid) {
|
|
30
|
+
const { params, bidId, mediaTypes } = bid;
|
|
31
|
+
const schain = bid.schain || {};
|
|
32
|
+
const { placementId, endpointId } = params;
|
|
33
|
+
const bidfloor = getBidFloor(bid);
|
|
34
|
+
|
|
35
|
+
const placement = {
|
|
36
|
+
bidId,
|
|
37
|
+
schain,
|
|
38
|
+
bidfloor
|
|
39
|
+
};
|
|
40
|
+
|
|
41
|
+
if (placementId) {
|
|
42
|
+
placement.placementId = placementId;
|
|
43
|
+
placement.type = 'publisher';
|
|
44
|
+
} else if (endpointId) {
|
|
45
|
+
placement.endpointId = endpointId;
|
|
46
|
+
placement.type = 'network';
|
|
47
|
+
}
|
|
48
|
+
|
|
49
|
+
if (mediaTypes && mediaTypes[BANNER]) {
|
|
50
|
+
placement.adFormat = BANNER;
|
|
51
|
+
placement.sizes = mediaTypes[BANNER].sizes;
|
|
52
|
+
} else if (mediaTypes && mediaTypes[VIDEO]) {
|
|
53
|
+
placement.adFormat = VIDEO;
|
|
54
|
+
placement.playerSize = mediaTypes[VIDEO].playerSize;
|
|
55
|
+
placement.minduration = mediaTypes[VIDEO].minduration;
|
|
56
|
+
placement.maxduration = mediaTypes[VIDEO].maxduration;
|
|
57
|
+
placement.mimes = mediaTypes[VIDEO].mimes;
|
|
58
|
+
placement.protocols = mediaTypes[VIDEO].protocols;
|
|
59
|
+
placement.startdelay = mediaTypes[VIDEO].startdelay;
|
|
60
|
+
placement.placement = mediaTypes[VIDEO].placement;
|
|
61
|
+
placement.skip = mediaTypes[VIDEO].skip;
|
|
62
|
+
placement.skipafter = mediaTypes[VIDEO].skipafter;
|
|
63
|
+
placement.minbitrate = mediaTypes[VIDEO].minbitrate;
|
|
64
|
+
placement.maxbitrate = mediaTypes[VIDEO].maxbitrate;
|
|
65
|
+
placement.delivery = mediaTypes[VIDEO].delivery;
|
|
66
|
+
placement.playbackmethod = mediaTypes[VIDEO].playbackmethod;
|
|
67
|
+
placement.api = mediaTypes[VIDEO].api;
|
|
68
|
+
placement.linearity = mediaTypes[VIDEO].linearity;
|
|
69
|
+
} else if (mediaTypes && mediaTypes[NATIVE]) {
|
|
70
|
+
placement.native = mediaTypes[NATIVE];
|
|
71
|
+
placement.adFormat = NATIVE;
|
|
72
|
+
}
|
|
73
|
+
|
|
74
|
+
return placement;
|
|
75
|
+
}
|
|
76
|
+
|
|
77
|
+
function getBidFloor(bid) {
|
|
78
|
+
if (!isFn(bid.getFloor)) {
|
|
79
|
+
return deepAccess(bid, 'params.bidfloor', 0);
|
|
80
|
+
}
|
|
81
|
+
|
|
82
|
+
try {
|
|
83
|
+
const bidFloor = bid.getFloor({
|
|
84
|
+
currency: 'USD',
|
|
85
|
+
mediaType: '*',
|
|
86
|
+
size: '*',
|
|
87
|
+
});
|
|
88
|
+
return bidFloor.floor;
|
|
89
|
+
} catch (err) {
|
|
90
|
+
logError(err);
|
|
91
|
+
return 0;
|
|
92
|
+
}
|
|
93
|
+
}
|
|
94
|
+
|
|
95
|
+
export const spec = {
|
|
96
|
+
code: BIDDER_CODE,
|
|
97
|
+
supportedMediaTypes: [BANNER, VIDEO, NATIVE],
|
|
98
|
+
|
|
99
|
+
isBidRequestValid: (bid = {}) => {
|
|
100
|
+
const { params, bidId, mediaTypes } = bid;
|
|
101
|
+
let valid = Boolean(bidId && params && (params.placementId || params.endpointId));
|
|
102
|
+
|
|
103
|
+
if (mediaTypes && mediaTypes[BANNER]) {
|
|
104
|
+
valid = valid && Boolean(mediaTypes[BANNER] && mediaTypes[BANNER].sizes);
|
|
105
|
+
} else if (mediaTypes && mediaTypes[VIDEO]) {
|
|
106
|
+
valid = valid && Boolean(mediaTypes[VIDEO] && mediaTypes[VIDEO].playerSize);
|
|
107
|
+
} else if (mediaTypes && mediaTypes[NATIVE]) {
|
|
108
|
+
valid = valid && Boolean(mediaTypes[NATIVE]);
|
|
109
|
+
} else {
|
|
110
|
+
valid = false;
|
|
111
|
+
}
|
|
112
|
+
return valid;
|
|
113
|
+
},
|
|
114
|
+
|
|
115
|
+
buildRequests: (validBidRequests = [], bidderRequest = {}) => {
|
|
116
|
+
// convert Native ORTB definition to old-style prebid native definition
|
|
117
|
+
validBidRequests = convertOrtbRequestToProprietaryNative(validBidRequests);
|
|
118
|
+
|
|
119
|
+
let deviceWidth = 0;
|
|
120
|
+
let deviceHeight = 0;
|
|
121
|
+
|
|
122
|
+
let winLocation;
|
|
123
|
+
try {
|
|
124
|
+
const winTop = window.top;
|
|
125
|
+
deviceWidth = winTop.screen.width;
|
|
126
|
+
deviceHeight = winTop.screen.height;
|
|
127
|
+
winLocation = winTop.location;
|
|
128
|
+
} catch (e) {
|
|
129
|
+
logMessage(e);
|
|
130
|
+
winLocation = window.location;
|
|
131
|
+
}
|
|
132
|
+
|
|
133
|
+
const refferUrl = bidderRequest.refererInfo && bidderRequest.refererInfo.page;
|
|
134
|
+
let refferLocation;
|
|
135
|
+
try {
|
|
136
|
+
refferLocation = refferUrl && new URL(refferUrl);
|
|
137
|
+
} catch (e) {
|
|
138
|
+
logMessage(e);
|
|
139
|
+
}
|
|
140
|
+
let location = refferLocation || winLocation;
|
|
141
|
+
const language = (navigator && navigator.language) ? navigator.language.split('-')[0] : '';
|
|
142
|
+
const host = location.host;
|
|
143
|
+
const page = location.pathname;
|
|
144
|
+
const secure = location.protocol === 'https:' ? 1 : 0;
|
|
145
|
+
const placements = [];
|
|
146
|
+
const request = {
|
|
147
|
+
deviceWidth,
|
|
148
|
+
deviceHeight,
|
|
149
|
+
language,
|
|
150
|
+
secure,
|
|
151
|
+
host,
|
|
152
|
+
page,
|
|
153
|
+
placements,
|
|
154
|
+
coppa: config.getConfig('coppa') === true ? 1 : 0,
|
|
155
|
+
ccpa: bidderRequest.uspConsent || undefined,
|
|
156
|
+
gdpr: bidderRequest.gdprConsent || undefined,
|
|
157
|
+
tmax: config.getConfig('bidderTimeout')
|
|
158
|
+
};
|
|
159
|
+
|
|
160
|
+
const len = validBidRequests.length;
|
|
161
|
+
for (let i = 0; i < len; i++) {
|
|
162
|
+
const bid = validBidRequests[i];
|
|
163
|
+
placements.push(getPlacementReqData(bid));
|
|
164
|
+
}
|
|
165
|
+
|
|
166
|
+
return {
|
|
167
|
+
method: 'POST',
|
|
168
|
+
url: AD_URL,
|
|
169
|
+
data: request
|
|
170
|
+
};
|
|
171
|
+
},
|
|
172
|
+
|
|
173
|
+
interpretResponse: (serverResponse) => {
|
|
174
|
+
let response = [];
|
|
175
|
+
for (let i = 0; i < serverResponse.body.length; i++) {
|
|
176
|
+
let resItem = serverResponse.body[i];
|
|
177
|
+
if (isBidResponseValid(resItem)) {
|
|
178
|
+
const advertiserDomains = resItem.adomain && resItem.adomain.length ? resItem.adomain : [];
|
|
179
|
+
resItem.meta = { ...resItem.meta, advertiserDomains };
|
|
180
|
+
|
|
181
|
+
response.push(resItem);
|
|
182
|
+
}
|
|
183
|
+
}
|
|
184
|
+
return response;
|
|
185
|
+
},
|
|
186
|
+
|
|
187
|
+
getUserSyncs: (syncOptions, serverResponses, gdprConsent, uspConsent) => {
|
|
188
|
+
let syncType = syncOptions.iframeEnabled ? 'iframe' : 'image';
|
|
189
|
+
let syncUrl = SYNC_URL + `/${syncType}?pbjs=1`;
|
|
190
|
+
if (gdprConsent && gdprConsent.consentString) {
|
|
191
|
+
if (typeof gdprConsent.gdprApplies === 'boolean') {
|
|
192
|
+
syncUrl += `&gdpr=${Number(gdprConsent.gdprApplies)}&gdpr_consent=${gdprConsent.consentString}`;
|
|
193
|
+
} else {
|
|
194
|
+
syncUrl += `&gdpr=0&gdpr_consent=${gdprConsent.consentString}`;
|
|
195
|
+
}
|
|
196
|
+
}
|
|
197
|
+
if (uspConsent && uspConsent.consentString) {
|
|
198
|
+
syncUrl += `&ccpa_consent=${uspConsent.consentString}`;
|
|
199
|
+
}
|
|
200
|
+
|
|
201
|
+
const coppa = config.getConfig('coppa') ? 1 : 0;
|
|
202
|
+
syncUrl += `&coppa=${coppa}`;
|
|
203
|
+
|
|
204
|
+
return [{
|
|
205
|
+
type: syncType,
|
|
206
|
+
url: syncUrl
|
|
207
|
+
}];
|
|
208
|
+
}
|
|
209
|
+
};
|
|
210
|
+
|
|
211
|
+
registerBidder(spec);
|
|
@@ -0,0 +1,79 @@
|
|
|
1
|
+
# Overview
|
|
2
|
+
|
|
3
|
+
```
|
|
4
|
+
Module Name: EMTV Bidder Adapter
|
|
5
|
+
Module Type: EMTV Bidder Adapter
|
|
6
|
+
Maintainer: support@engagemedia.tv
|
|
7
|
+
```
|
|
8
|
+
|
|
9
|
+
# Description
|
|
10
|
+
|
|
11
|
+
Connects to EMTV exchange for bids.
|
|
12
|
+
EMTV bid adapter supports Banner, Video (instream and outstream) and Native.
|
|
13
|
+
|
|
14
|
+
# Test Parameters
|
|
15
|
+
```
|
|
16
|
+
var adUnits = [
|
|
17
|
+
// Will return static test banner
|
|
18
|
+
{
|
|
19
|
+
code: 'adunit1',
|
|
20
|
+
mediaTypes: {
|
|
21
|
+
banner: {
|
|
22
|
+
sizes: [ [300, 250], [320, 50] ],
|
|
23
|
+
}
|
|
24
|
+
},
|
|
25
|
+
bids: [
|
|
26
|
+
{
|
|
27
|
+
bidder: 'emtv',
|
|
28
|
+
params: {
|
|
29
|
+
placementId: 'testBanner',
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
]
|
|
33
|
+
},
|
|
34
|
+
{
|
|
35
|
+
code: 'addunit2',
|
|
36
|
+
mediaTypes: {
|
|
37
|
+
video: {
|
|
38
|
+
playerSize: [ [640, 480] ],
|
|
39
|
+
context: 'instream',
|
|
40
|
+
minduration: 5,
|
|
41
|
+
maxduration: 60,
|
|
42
|
+
}
|
|
43
|
+
},
|
|
44
|
+
bids: [
|
|
45
|
+
{
|
|
46
|
+
bidder: 'emtv',
|
|
47
|
+
params: {
|
|
48
|
+
placementId: 'testVideo',
|
|
49
|
+
}
|
|
50
|
+
}
|
|
51
|
+
]
|
|
52
|
+
},
|
|
53
|
+
{
|
|
54
|
+
code: 'addunit3',
|
|
55
|
+
mediaTypes: {
|
|
56
|
+
native: {
|
|
57
|
+
title: {
|
|
58
|
+
required: true
|
|
59
|
+
},
|
|
60
|
+
body: {
|
|
61
|
+
required: true
|
|
62
|
+
},
|
|
63
|
+
icon: {
|
|
64
|
+
required: true,
|
|
65
|
+
size: [64, 64]
|
|
66
|
+
}
|
|
67
|
+
}
|
|
68
|
+
},
|
|
69
|
+
bids: [
|
|
70
|
+
{
|
|
71
|
+
bidder: 'emtv',
|
|
72
|
+
params: {
|
|
73
|
+
placementId: 'testNative',
|
|
74
|
+
}
|
|
75
|
+
}
|
|
76
|
+
]
|
|
77
|
+
}
|
|
78
|
+
];
|
|
79
|
+
```
|
|
@@ -31,6 +31,7 @@ const VIDEO_PARAMS = [
|
|
|
31
31
|
'api', 'linearity', 'maxduration', 'mimes', 'minduration', 'placement',
|
|
32
32
|
'playbackmethod', 'protocols', 'startdelay'
|
|
33
33
|
];
|
|
34
|
+
const GVLID = 1060;
|
|
34
35
|
|
|
35
36
|
const sendingDataStatistic = initSendingDataStatistic();
|
|
36
37
|
events.on(CONSTANTS.EVENTS.AUCTION_INIT, auctionInitHandler);
|
|
@@ -44,6 +45,7 @@ events.on(CONSTANTS.EVENTS.BID_WON, bidWonHandler);
|
|
|
44
45
|
export const spec = {
|
|
45
46
|
code: BIDDER_CODE,
|
|
46
47
|
supportedMediaTypes: [BANNER, VIDEO],
|
|
48
|
+
gvlid: GVLID,
|
|
47
49
|
|
|
48
50
|
isBidRequestValid: function(bid) {
|
|
49
51
|
return !!(
|
|
@@ -479,7 +479,7 @@ function interpretNativeBid(serverBid) {
|
|
|
479
479
|
function interpretNativeAd(adm) {
|
|
480
480
|
const native = JSON.parse(adm).native;
|
|
481
481
|
const result = {
|
|
482
|
-
clickUrl:
|
|
482
|
+
clickUrl: encodeURI(native.link.url),
|
|
483
483
|
impressionTrackers: native.imptrackers
|
|
484
484
|
};
|
|
485
485
|
native.assets.forEach(asset => {
|
|
@@ -489,14 +489,14 @@ function interpretNativeAd(adm) {
|
|
|
489
489
|
break;
|
|
490
490
|
case OPENRTB.NATIVE.ASSET_ID.IMAGE:
|
|
491
491
|
result.image = {
|
|
492
|
-
url:
|
|
492
|
+
url: encodeURI(asset.img.url),
|
|
493
493
|
width: asset.img.w,
|
|
494
494
|
height: asset.img.h
|
|
495
495
|
};
|
|
496
496
|
break;
|
|
497
497
|
case OPENRTB.NATIVE.ASSET_ID.ICON:
|
|
498
498
|
result.icon = {
|
|
499
|
-
url:
|
|
499
|
+
url: encodeURI(asset.img.url),
|
|
500
500
|
width: asset.img.w,
|
|
501
501
|
height: asset.img.h
|
|
502
502
|
};
|
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
import { logError,
|
|
1
|
+
import {deepAccess, logError, parseSizesInput} from '../src/utils.js';
|
|
2
2
|
import {registerBidder} from '../src/adapters/bidderFactory.js';
|
|
3
3
|
import {BANNER, VIDEO} from '../src/mediaTypes.js';
|
|
4
4
|
import {config} from '../src/config.js';
|
|
5
|
-
import {
|
|
6
|
-
import {
|
|
5
|
+
import {Renderer} from '../src/Renderer.js';
|
|
6
|
+
import {INSTREAM, OUTSTREAM} from '../src/video.js';
|
|
7
7
|
|
|
8
8
|
const ENDPOINT = `https://d.vidoomy.com/api/rtbserver/prebid/`;
|
|
9
9
|
const BIDDER_CODE = 'vidoomy';
|
|
@@ -129,6 +129,14 @@ const buildRequests = (validBidRequests, bidderRequest) => {
|
|
|
129
129
|
const bidfloor = deepAccess(bid, `params.bidfloor`, 0);
|
|
130
130
|
const floor = getBidFloor(bid, adType, sizes, bidfloor);
|
|
131
131
|
|
|
132
|
+
const ortb2 = bidderRequest.ortb2 || {
|
|
133
|
+
bcat: [],
|
|
134
|
+
badv: [],
|
|
135
|
+
bapp: [],
|
|
136
|
+
btype: [],
|
|
137
|
+
battr: []
|
|
138
|
+
};
|
|
139
|
+
|
|
132
140
|
let eids;
|
|
133
141
|
const userEids = deepAccess(bid, 'userIdAsEids');
|
|
134
142
|
if (Array.isArray(userEids) && userEids.length > 0) {
|
|
@@ -155,7 +163,12 @@ const buildRequests = (validBidRequests, bidderRequest) => {
|
|
|
155
163
|
sp: encodeURIComponent(bidderRequest.refererInfo.page || bidderRequest.refererInfo.topmostLocation),
|
|
156
164
|
usp: bidderRequest.uspConsent || '',
|
|
157
165
|
coppa: !!config.getConfig('coppa'),
|
|
158
|
-
videoContext: videoContext || ''
|
|
166
|
+
videoContext: videoContext || '',
|
|
167
|
+
bcat: ortb2.bcat || bid.params.bcat || [],
|
|
168
|
+
badv: ortb2.badv || bid.params.badv || [],
|
|
169
|
+
bapp: ortb2.bapp || bid.params.bapp || [],
|
|
170
|
+
btype: ortb2.btype || bid.params.btype || [],
|
|
171
|
+
battr: ortb2.battr || bid.params.battr || []
|
|
159
172
|
};
|
|
160
173
|
|
|
161
174
|
if (bidderRequest.gdprConsent) {
|
|
@@ -261,7 +274,7 @@ const interpretResponse = (serverResponse, bidRequest) => {
|
|
|
261
274
|
}
|
|
262
275
|
};
|
|
263
276
|
|
|
264
|
-
function getUserSyncs
|
|
277
|
+
function getUserSyncs(syncOptions, responses, gdprConsent, uspConsent) {
|
|
265
278
|
if (syncOptions.iframeEnabled || syncOptions.pixelEnabled) {
|
|
266
279
|
const pixelType = syncOptions.pixelEnabled ? 'image' : 'iframe';
|
|
267
280
|
const urls = deepAccess(responses, '0.body.pixels') || COOKIE_SYNC_FALLBACK_URLS;
|
|
@@ -288,7 +301,7 @@ export const spec = {
|
|
|
288
301
|
|
|
289
302
|
registerBidder(spec);
|
|
290
303
|
|
|
291
|
-
function getDomainWithoutSubdomain
|
|
304
|
+
function getDomainWithoutSubdomain(hostname) {
|
|
292
305
|
const parts = hostname.split('.');
|
|
293
306
|
const newParts = [];
|
|
294
307
|
for (let i = parts.length - 1; i >= 0; i--) {
|