@@ -15,18 +15,21 @@ import {Renderer} from '../src/Renderer.js';
1515import { find , includes } from '../src/polyfill.js' ;
1616import { parseDomain } from '../src/refererDetection.js' ;
1717
18- const BIDDER_CODE = 'emx_digital ' ;
18+ const BIDDER_CODE = 'cadent_aperture_mx ' ;
1919const ENDPOINT = 'hb.emxdgt.com' ;
2020const RENDERER_URL = 'https://js.brealtime.com/outstream/1.30.0/bundle.js' ;
2121const ADAPTER_VERSION = '1.5.1' ;
2222const DEFAULT_CUR = 'USD' ;
23+ const ALIASES = [
24+ { code : 'emx_digital' , gvlid : 183 } ,
25+ ] ;
2326
2427const EIDS_SUPPORTED = [
2528 { key : 'idl_env' , source : 'liveramp.com' , rtiPartner : 'idl' , queryParam : 'idl' } ,
2629 { key : 'uid2.id' , source : 'uidapi.com' , rtiPartner : 'UID2' , queryParam : 'uid2' }
2730] ;
2831
29- export const emxAdapter = {
32+ export const cadentAdapter = {
3033 validateSizes : ( sizes ) => {
3134 if ( ! isArray ( sizes ) || typeof sizes [ 0 ] === 'undefined' ) {
3235 logWarn ( BIDDER_CODE + ': Sizes should be an array' ) ;
@@ -40,7 +43,7 @@ export const emxAdapter = {
4043 buildBanner : ( bid ) => {
4144 let sizes = [ ] ;
4245 bid . mediaTypes && bid . mediaTypes . banner && bid . mediaTypes . banner . sizes ? sizes = bid . mediaTypes . banner . sizes : sizes = bid . sizes ;
43- if ( ! emxAdapter . validateSizes ( sizes ) ) {
46+ if ( ! cadentAdapter . validateSizes ( sizes ) ) {
4447 logWarn ( BIDDER_CODE + ': could not detect mediaType banner sizes. Assigning to bid sizes instead' ) ;
4548 sizes = bid . sizes
4649 }
@@ -55,13 +58,13 @@ export const emxAdapter = {
5558 h : sizes [ 0 ] [ 1 ]
5659 } ;
5760 } ,
58- formatVideoResponse : ( bidResponse , emxBid , bidRequest ) => {
59- bidResponse . vastXml = emxBid . adm ;
61+ formatVideoResponse : ( bidResponse , cadentBid , bidRequest ) => {
62+ bidResponse . vastXml = cadentBid . adm ;
6063 if ( bidRequest . bidderRequest && bidRequest . bidderRequest . bids && bidRequest . bidderRequest . bids . length > 0 ) {
6164 const matchingBid = find ( bidRequest . bidderRequest . bids , bid => bidResponse . requestId && bid . bidId && bidResponse . requestId === bid . bidId && bid . mediaTypes && bid . mediaTypes . video && bid . mediaTypes . video . context === 'outstream' ) ;
6265 if ( matchingBid ) {
63- bidResponse . renderer = emxAdapter . createRenderer ( bidResponse , {
64- id : emxBid . id ,
66+ bidResponse . renderer = cadentAdapter . createRenderer ( bidResponse , {
67+ id : cadentBid . id ,
6568 url : RENDERER_URL
6669 } ) ;
6770 }
@@ -81,7 +84,7 @@ export const emxAdapter = {
8184 dnt : ( navigator . doNotTrack === 'yes' || navigator . doNotTrack === '1' || navigator . msDoNotTrack === '1' ) ? 1 : 0 ,
8285 h : screen . height ,
8386 w : screen . width ,
84- devicetype : emxAdapter . isMobile ( ) ? 1 : emxAdapter . isConnectedTV ( ) ? 3 : 2 ,
87+ devicetype : cadentAdapter . isMobile ( ) ? 1 : cadentAdapter . isConnectedTV ( ) ? 3 : 2 ,
8588 language : ( navigator . language || navigator . browserLanguage || navigator . userLanguage || navigator . systemLanguage ) ,
8689 } ;
8790 } ,
@@ -114,7 +117,7 @@ export const emxAdapter = {
114117 loaded : false
115118 } ) ;
116119 try {
117- renderer . setRender ( emxAdapter . outstreamRender ) ;
120+ renderer . setRender ( cadentAdapter . outstreamRender ) ;
118121 } catch ( err ) {
119122 logWarn ( 'Prebid Error calling setRender on renderer' , err ) ;
120123 }
@@ -131,13 +134,13 @@ export const emxAdapter = {
131134 videoObj [ 'w' ] = bid . mediaTypes . video . playerSize [ 0 ] ;
132135 videoObj [ 'h' ] = bid . mediaTypes . video . playerSize [ 1 ] ;
133136 }
134- return emxAdapter . cleanProtocols ( videoObj ) ;
137+ return cadentAdapter . cleanProtocols ( videoObj ) ;
135138 } ,
136139 parseResponse : ( bidResponseAdm ) => {
137140 try {
138141 return decodeURIComponent ( bidResponseAdm . replace ( / % (? ! [ 0 - 9 ] [ 0 - 9 a - f A - F ] + ) / g, '%25' ) ) ;
139142 } catch ( err ) {
140- logError ( 'emx_digitalBidAdapter ' , 'error' , err ) ;
143+ logError ( 'cadent_aperture_mxBidAdapter ' , 'error' , err ) ;
141144 }
142145 } ,
143146 getSite : ( refInfo ) => {
@@ -148,45 +151,45 @@ export const emxAdapter = {
148151 ref : refInfo . ref || window . document . referrer
149152 }
150153 } ,
151- getGdpr : ( bidRequests , emxData ) => {
154+ getGdpr : ( bidRequests , cadentData ) => {
152155 if ( bidRequests . gdprConsent ) {
153- emxData . regs = {
156+ cadentData . regs = {
154157 ext : {
155158 gdpr : bidRequests . gdprConsent . gdprApplies === true ? 1 : 0
156159 }
157160 } ;
158161 }
159162 if ( bidRequests . gdprConsent && bidRequests . gdprConsent . gdprApplies ) {
160- emxData . user = {
163+ cadentData . user = {
161164 ext : {
162165 consent : bidRequests . gdprConsent . consentString
163166 }
164167 } ;
165168 }
166169
167- return emxData ;
170+ return cadentData ;
168171 } ,
169- getSupplyChain : ( bidderRequest , emxData ) => {
172+ getSupplyChain : ( bidderRequest , cadentData ) => {
170173 if ( bidderRequest . bids [ 0 ] && bidderRequest . bids [ 0 ] . schain ) {
171- emxData . source = {
174+ cadentData . source = {
172175 ext : {
173176 schain : bidderRequest . bids [ 0 ] . schain
174177 }
175178 } ;
176179 }
177180
178- return emxData ;
181+ return cadentData ;
179182 } ,
180183 // supporting eids
181184 getEids ( bidRequests ) {
182185 return EIDS_SUPPORTED
183- . map ( emxAdapter . getUserId ( bidRequests ) )
186+ . map ( cadentAdapter . getUserId ( bidRequests ) )
184187 . filter ( x => x ) ;
185188 } ,
186189 getUserId ( bidRequests ) {
187190 return ( { key, source, rtiPartner } ) => {
188191 let id = deepAccess ( bidRequests , `userId.${ key } ` ) ;
189- return id ? emxAdapter . formatEid ( id , source , rtiPartner ) : null ;
192+ return id ? cadentAdapter . formatEid ( id , source , rtiPartner ) : null ;
190193 } ;
191194 } ,
192195 formatEid ( id , source , rtiPartner ) {
@@ -203,6 +206,7 @@ export const emxAdapter = {
203206export const spec = {
204207 code : BIDDER_CODE ,
205208 gvlid : 183 ,
209+ alias : ALIASES ,
206210 supportedMediaTypes : [ BANNER , VIDEO ] ,
207211 isBidRequestValid : function ( bid ) {
208212 if ( ! bid || ! bid . params ) {
@@ -211,7 +215,7 @@ export const spec = {
211215 }
212216
213217 if ( bid . bidder !== BIDDER_CODE ) {
214- logWarn ( BIDDER_CODE + ': Must use "emx_digital " as bidder code.' ) ;
218+ logWarn ( BIDDER_CODE + ': Must use "cadent_aperture_mx " as bidder code.' ) ;
215219 return false ;
216220 }
217221
@@ -223,12 +227,12 @@ export const spec = {
223227 if ( bid . mediaTypes && bid . mediaTypes . banner ) {
224228 let sizes ;
225229 bid . mediaTypes . banner . sizes ? sizes = bid . mediaTypes . banner . sizes : sizes = bid . sizes ;
226- if ( ! emxAdapter . validateSizes ( sizes ) ) {
230+ if ( ! cadentAdapter . validateSizes ( sizes ) ) {
227231 logWarn ( BIDDER_CODE + ': Missing sizes in bid' ) ;
228232 return false ;
229233 }
230234 } else if ( bid . mediaTypes && bid . mediaTypes . video ) {
231- if ( ! emxAdapter . checkVideoContext ( bid ) ) {
235+ if ( ! cadentAdapter . checkVideoContext ( bid ) ) {
232236 logWarn ( BIDDER_CODE + ': Missing video context: instream or outstream' ) ;
233237 return false ;
234238 }
@@ -242,13 +246,13 @@ export const spec = {
242246 return true ;
243247 } ,
244248 buildRequests : function ( validBidRequests , bidderRequest ) {
245- const emxImps = [ ] ;
249+ const cadentImps = [ ] ;
246250 const timeout = bidderRequest . timeout || '' ;
247251 const timestamp = Date . now ( ) ;
248252 const url = 'https://' + ENDPOINT + ( '?t=' + timeout + '&ts=' + timestamp + '&src=pbjs' ) ;
249253 const secure = location . protocol . indexOf ( 'https' ) > - 1 ? 1 : 0 ;
250- const device = emxAdapter . getDevice ( ) ;
251- const site = emxAdapter . getSite ( bidderRequest . refererInfo ) ;
254+ const device = cadentAdapter . getDevice ( ) ;
255+ const site = cadentAdapter . getSite ( bidderRequest . refererInfo ) ;
252256
253257 _each ( validBidRequests , function ( bid ) {
254258 let tagid = getBidIdParameter ( 'tagid' , bid . params ) ;
@@ -269,35 +273,35 @@ export const spec = {
269273 if ( gpid ) {
270274 data . ext = { gpid : gpid . toString ( ) } ;
271275 }
272- let typeSpecifics = isVideo ? { video : emxAdapter . buildVideo ( bid ) } : { banner : emxAdapter . buildBanner ( bid ) } ;
276+ let typeSpecifics = isVideo ? { video : cadentAdapter . buildVideo ( bid ) } : { banner : cadentAdapter . buildBanner ( bid ) } ;
273277 let bidfloorObj = bidfloor > 0 ? { bidfloor, bidfloorcur : DEFAULT_CUR } : { } ;
274- let emxBid = Object . assign ( data , typeSpecifics , bidfloorObj ) ;
275- emxImps . push ( emxBid ) ;
278+ let cadentBid = Object . assign ( data , typeSpecifics , bidfloorObj ) ;
279+ cadentImps . push ( cadentBid ) ;
276280 } ) ;
277281
278- let emxData = {
282+ let cadentData = {
279283 id : bidderRequest . auctionId ,
280- imp : emxImps ,
284+ imp : cadentImps ,
281285 device,
282286 site,
283287 cur : DEFAULT_CUR ,
284288 version : ADAPTER_VERSION
285289 } ;
286290
287- emxData = emxAdapter . getGdpr ( bidderRequest , Object . assign ( { } , emxData ) ) ;
288- emxData = emxAdapter . getSupplyChain ( bidderRequest , Object . assign ( { } , emxData ) ) ;
291+ cadentData = cadentAdapter . getGdpr ( bidderRequest , Object . assign ( { } , cadentData ) ) ;
292+ cadentData = cadentAdapter . getSupplyChain ( bidderRequest , Object . assign ( { } , cadentData ) ) ;
289293 if ( bidderRequest && bidderRequest . uspConsent ) {
290- emxData . us_privacy = bidderRequest . uspConsent ;
294+ cadentData . us_privacy = bidderRequest . uspConsent ;
291295 }
292296
293297 // adding eid support
294298 if ( bidderRequest . userId ) {
295- let eids = emxAdapter . getEids ( bidderRequest ) ;
299+ let eids = cadentAdapter . getEids ( bidderRequest ) ;
296300 if ( eids . length > 0 ) {
297- if ( emxData . user && emxData . user . ext ) {
298- emxData . user . ext . eids = eids ;
301+ if ( cadentData . user && cadentData . user . ext ) {
302+ cadentData . user . ext . eids = eids ;
299303 } else {
300- emxData . user = {
304+ cadentData . user = {
301305 ext : { eids}
302306 } ;
303307 }
@@ -307,50 +311,50 @@ export const spec = {
307311 return {
308312 method : 'POST' ,
309313 url,
310- data : JSON . stringify ( emxData ) ,
314+ data : JSON . stringify ( cadentData ) ,
311315 options : {
312316 withCredentials : true
313317 } ,
314318 bidderRequest
315319 } ;
316320 } ,
317321 interpretResponse : function ( serverResponse , bidRequest ) {
318- let emxBidResponses = [ ] ;
322+ let cadentBidResponses = [ ] ;
319323 let response = serverResponse . body || { } ;
320324 if ( response . seatbid && response . seatbid . length > 0 && response . seatbid [ 0 ] . bid ) {
321- response . seatbid . forEach ( function ( emxBid ) {
322- emxBid = emxBid . bid [ 0 ] ;
325+ response . seatbid . forEach ( function ( cadentBid ) {
326+ cadentBid = cadentBid . bid [ 0 ] ;
323327 let isVideo = false ;
324- let adm = emxAdapter . parseResponse ( emxBid . adm ) || '' ;
328+ let adm = cadentAdapter . parseResponse ( cadentBid . adm ) || '' ;
325329 let bidResponse = {
326- requestId : emxBid . id ,
327- cpm : emxBid . price ,
328- width : emxBid . w ,
329- height : emxBid . h ,
330- creativeId : emxBid . crid || emxBid . id ,
331- dealId : emxBid . dealid || null ,
330+ requestId : cadentBid . id ,
331+ cpm : cadentBid . price ,
332+ width : cadentBid . w ,
333+ height : cadentBid . h ,
334+ creativeId : cadentBid . crid || cadentBid . id ,
335+ dealId : cadentBid . dealid || null ,
332336 currency : 'USD' ,
333337 netRevenue : true ,
334- ttl : emxBid . ttl ,
338+ ttl : cadentBid . ttl ,
335339 ad : adm
336340 } ;
337- if ( emxBid . adm && emxBid . adm . indexOf ( '<?xml version=' ) > - 1 ) {
341+ if ( cadentBid . adm && cadentBid . adm . indexOf ( '<?xml version=' ) > - 1 ) {
338342 isVideo = true ;
339- bidResponse = emxAdapter . formatVideoResponse ( bidResponse , Object . assign ( { } , emxBid ) , bidRequest ) ;
343+ bidResponse = cadentAdapter . formatVideoResponse ( bidResponse , Object . assign ( { } , cadentBid ) , bidRequest ) ;
340344 }
341345 bidResponse . mediaType = ( isVideo ? VIDEO : BANNER ) ;
342346
343347 // support for adomain in prebid 5.0
344- if ( emxBid . adomain && emxBid . adomain . length ) {
348+ if ( cadentBid . adomain && cadentBid . adomain . length ) {
345349 bidResponse . meta = {
346- advertiserDomains : emxBid . adomain
350+ advertiserDomains : cadentBid . adomain
347351 } ;
348352 }
349353
350- emxBidResponses . push ( bidResponse ) ;
354+ cadentBidResponses . push ( bidResponse ) ;
351355 } ) ;
352356 }
353- return emxBidResponses ;
357+ return cadentBidResponses ;
354358 } ,
355359 getUserSyncs : function ( syncOptions , responses , gdprConsent , uspConsent ) {
356360 const syncs = [ ] ;
0 commit comments