prebid.js 5.16.0 → 5.20.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/.devcontainer/Dockerfile +11 -0
- package/.devcontainer/devcontainer.json +27 -0
- package/.devcontainer/postCreate.sh +6 -0
- package/browsers.json +1 -0
- package/integrationExamples/gpt/akamaidap_segments_example.html +132 -0
- package/modules/.submodules.json +1 -0
- package/modules/adfBidAdapter.js +21 -16
- package/modules/adgenerationBidAdapter.js +28 -4
- package/modules/adkernelBidAdapter.js +3 -1
- package/modules/admixerBidAdapter.js +11 -0
- package/modules/adnuntiusBidAdapter.js +1 -0
- package/modules/adtelligentBidAdapter.js +2 -1
- package/modules/airgridRtdProvider.js +1 -1
- package/modules/akamaiDapRtdProvider.js +474 -0
- package/modules/akamaiDapRtdProvider.md +47 -0
- package/modules/aolBidAdapter.js +2 -1
- package/modules/appnexusBidAdapter.js +5 -3
- package/modules/atsAnalyticsAdapter.js +89 -63
- package/modules/atsAnalyticsAdapter.md +1 -0
- package/modules/betweenBidAdapter.js +20 -3
- package/modules/bliinkBidAdapter.js +58 -32
- package/modules/bliinkBidAdapter.md +29 -6
- package/modules/browsiRtdProvider.js +106 -18
- package/modules/cleanioRtdProvider.js +192 -0
- package/modules/cleanioRtdProvider.md +59 -0
- package/modules/codefuelBidAdapter.js +183 -0
- package/modules/codefuelBidAdapter.md +111 -0
- package/modules/connectIdSystem.js +104 -0
- package/modules/connectIdSystem.md +33 -0
- package/modules/cwireBidAdapter.js +272 -0
- package/modules/cwireBidAdapter.md +43 -0
- package/modules/deepintentBidAdapter.js +106 -9
- package/modules/deepintentBidAdapter.md +36 -1
- package/modules/deltaprojectsBidAdapter.js +252 -0
- package/modules/deltaprojectsBidAdapter.md +32 -0
- package/modules/dgkeywordRtdProvider.js +0 -1
- package/modules/engageyaBidAdapter.js +157 -0
- package/modules/glimpseBidAdapter.js +160 -48
- package/modules/glimpseBidAdapter.md +11 -74
- package/modules/gridBidAdapter.js +1 -0
- package/modules/gridNMBidAdapter.js +7 -6
- package/modules/gumgumBidAdapter.js +16 -2
- package/modules/iasRtdProvider.js +83 -67
- package/modules/inskinBidAdapter.js +7 -3
- package/modules/ixBidAdapter.js +8 -1
- package/modules/jixieBidAdapter.js +8 -2
- package/modules/justpremiumBidAdapter.js +6 -1
- package/modules/kargoBidAdapter.js +14 -7
- package/modules/kargoBidAdapter.md +20 -0
- package/modules/limelightDigitalBidAdapter.js +22 -2
- package/modules/livewrappedAnalyticsAdapter.js +53 -3
- package/modules/mediakeysBidAdapter.js +405 -14
- package/modules/mediakeysBidAdapter.md +108 -0
- package/modules/multibid/index.js +3 -3
- package/modules/mytargetBidAdapter.js +112 -0
- package/modules/nativoBidAdapter.js +48 -29
- package/modules/nativoBidAdapter.md +0 -1
- package/modules/nextMillenniumBidAdapter.js +12 -3
- package/modules/nextrollBidAdapter.js +375 -0
- package/modules/nobidBidAdapter.js +2 -1
- package/modules/oguryBidAdapter.js +36 -7
- package/modules/openxBidAdapter.js +34 -22
- package/modules/operaadsBidAdapter.js +21 -1
- package/modules/otmBidAdapter.js +146 -0
- package/modules/otmBidAdapter.md +27 -26
- package/modules/outbrainBidAdapter.js +5 -0
- package/modules/pixfutureBidAdapter.js +24 -4
- package/modules/pixfutureBidAdapter.md +127 -0
- package/modules/playwireBidAdapter.md +61 -0
- package/modules/prebidServerBidAdapter/index.js +1 -1
- package/modules/proxistoreBidAdapter.js +4 -6
- package/modules/publinkIdSystem.js +17 -7
- package/modules/publinkIdSystem.md +7 -2
- package/modules/pubmaticBidAdapter.js +22 -6
- package/modules/pubmaticBidAdapter.md +1 -1
- package/modules/relaidoBidAdapter.js +8 -2
- package/modules/rtdModule/index.js +2 -2
- package/modules/sharethroughBidAdapter.js +12 -19
- package/modules/slimcutBidAdapter.js +121 -0
- package/modules/sonobiBidAdapter.js +7 -0
- package/modules/sortableBidAdapter.js +1 -0
- package/modules/spotxBidAdapter.js +15 -1
- package/modules/sspBCBidAdapter.js +207 -12
- package/modules/sspBCBidAdapter.md +1 -1
- package/modules/talkadsBidAdapter.js +129 -0
- package/modules/talkadsBidAdapter.md +60 -0
- package/modules/tappxBidAdapter.js +6 -5
- package/modules/teadsBidAdapter.js +3 -0
- package/modules/tripleliftBidAdapter.js +22 -5
- package/modules/trustxBidAdapter.js +17 -11
- package/modules/undertoneBidAdapter.js +9 -5
- package/modules/undertoneBidAdapter.md +5 -1
- package/modules/unicornBidAdapter.js +3 -3
- package/modules/userId/eids.js +18 -0
- package/modules/userId/eids.md +7 -0
- package/modules/userId/userId.md +12 -0
- package/modules/ventesBidAdapter.js +370 -0
- package/modules/ventesBidAdapter.md +94 -0
- package/modules/videobyteBidAdapter.js +13 -6
- package/modules/videobyteBidAdapter.md +49 -0
- package/modules/vidoomyBidAdapter.js +20 -12
- package/modules/visxBidAdapter.js +15 -22
- package/modules/yahoosspBidAdapter.js +637 -0
- package/modules/yahoosspBidAdapter.md +795 -0
- package/modules/yieldlabBidAdapter.js +48 -3
- package/modules/yieldlabBidAdapter.md +16 -1
- package/modules/yieldmoBidAdapter.js +20 -6
- package/modules/yieldmoSyntheticInventoryModule.js +46 -0
- package/modules/yieldmoSyntheticInventoryModule.md +68 -0
- package/package.json +1 -1
- package/src/adapterManager.js +5 -0
- package/src/adapters/bidderFactory.js +4 -3
- package/src/auction.js +11 -11
- package/src/constants.json +1 -0
- package/src/secureCreatives.js +6 -7
- package/src/targeting.js +11 -9
- package/test/.eslintrc.js +2 -1
- package/test/spec/modules/adfBidAdapter_spec.js +83 -29
- package/test/spec/modules/adgenerationBidAdapter_spec.js +121 -50
- package/test/spec/modules/adnuntiusBidAdapter_spec.js +68 -0
- package/test/spec/modules/adtelligentBidAdapter_spec.js +1 -0
- package/test/spec/modules/akamaiDapRtdProvider_spec.js +246 -0
- package/test/spec/modules/appnexusBidAdapter_spec.js +2 -1
- package/test/spec/modules/atsAnalyticsAdapter_spec.js +77 -9
- package/test/spec/modules/betweenBidAdapter_spec.js +41 -0
- package/test/spec/modules/bliinkBidAdapter_spec.js +87 -36
- package/test/spec/modules/browsiRtdProvider_spec.js +62 -7
- package/test/spec/modules/cleanioRtdProvider_spec.js +188 -0
- package/test/spec/modules/codefuelBidAdapter_spec.js +316 -0
- package/test/spec/modules/connectIdSystem_spec.js +189 -0
- package/test/spec/modules/cwireBidAdapter_spec.js +246 -0
- package/test/spec/modules/deepintentBidAdapter_spec.js +153 -3
- package/test/spec/modules/deltaprojectsBidAdapter_spec.js +399 -0
- package/test/spec/modules/engageyaBidAdapter_spec.js +286 -0
- package/test/spec/modules/glimpseBidAdapter_spec.js +302 -204
- package/test/spec/modules/gridNMBidAdapter_spec.js +40 -1
- package/test/spec/modules/gumgumBidAdapter_spec.js +23 -6
- package/test/spec/modules/iasRtdProvider_spec.js +71 -6
- package/test/spec/modules/ixBidAdapter_spec.js +13 -3
- package/test/spec/modules/jixieBidAdapter_spec.js +13 -11
- package/test/spec/modules/justpremiumBidAdapter_spec.js +9 -2
- package/test/spec/modules/limelightDigitalBidAdapter_spec.js +155 -1
- package/test/spec/modules/livewrappedAnalyticsAdapter_spec.js +67 -12
- package/test/spec/modules/mediakeysBidAdapter_spec.js +406 -51
- package/test/spec/modules/multibid_spec.js +31 -31
- package/test/spec/modules/mytargetBidAdapter_spec.js +199 -0
- package/test/spec/modules/nativoBidAdapter_spec.js +50 -3
- package/test/spec/modules/nextMillenniumBidAdapter_spec.js +13 -1
- package/test/spec/modules/nextrollBidAdapter_spec.js +290 -0
- package/test/spec/modules/nobidBidAdapter_spec.js +65 -1
- package/test/spec/modules/oguryBidAdapter_spec.js +125 -37
- package/test/spec/modules/openxBidAdapter_spec.js +85 -13
- package/test/spec/modules/operaadsBidAdapter_spec.js +38 -6
- package/test/spec/modules/otmBidAdapter_spec.js +67 -0
- package/test/spec/modules/outbrainBidAdapter_spec.js +18 -0
- package/test/spec/modules/publinkIdSystem_spec.js +34 -15
- package/test/spec/modules/pubmaticBidAdapter_spec.js +217 -1
- package/test/spec/modules/relaidoBidAdapter_spec.js +21 -20
- package/test/spec/modules/sharethroughBidAdapter_spec.js +156 -136
- package/test/spec/modules/slimcutBidAdapter_spec.js +200 -0
- package/test/spec/modules/sonobiBidAdapter_spec.js +34 -1
- package/test/spec/modules/sortableBidAdapter_spec.js +11 -0
- package/test/spec/modules/spotxBidAdapter_spec.js +36 -0
- package/test/spec/modules/sspBCBidAdapter_spec.js +210 -62
- package/test/spec/modules/talkadsBidAdapter_spec.js +231 -0
- package/test/spec/modules/teadsBidAdapter_spec.js +132 -0
- package/test/spec/modules/tripleliftBidAdapter_spec.js +128 -0
- package/test/spec/modules/trustxBidAdapter_spec.js +38 -5
- package/test/spec/modules/undertoneBidAdapter_spec.js +52 -0
- package/test/spec/modules/unicornBidAdapter_spec.js +4 -4
- package/test/spec/modules/ventesBidAdapter_spec.js +845 -0
- package/test/spec/modules/videobyteBidAdapter_spec.js +2 -2
- package/test/spec/modules/visxBidAdapter_spec.js +48 -4
- package/test/spec/modules/yahoosspBidAdapter_spec.js +1332 -0
- package/test/spec/modules/yieldlabBidAdapter_spec.js +65 -1
- package/test/spec/modules/yieldmoBidAdapter_spec.js +30 -9
- package/test/spec/modules/yieldmoSyntheticInventoryModule_spec.js +89 -0
- package/test/spec/unit/core/adapterManager_spec.js +32 -0
- package/test/spec/unit/core/bidderFactory_spec.js +61 -1
- package/test/spec/unit/pbjs_api_spec.js +37 -2
- package/test/spec/unit/secureCreatives_spec.js +54 -25
- package/modules/turktelekomBidAdapter.md +0 -49
|
@@ -2,6 +2,7 @@ import livewrappedAnalyticsAdapter, { BID_WON_TIMEOUT } from 'modules/livewrappe
|
|
|
2
2
|
import CONSTANTS from 'src/constants.json';
|
|
3
3
|
import { config } from 'src/config.js';
|
|
4
4
|
import { server } from 'test/mocks/xhr.js';
|
|
5
|
+
import { setConfig } from 'modules/currency.js';
|
|
5
6
|
|
|
6
7
|
let events = require('src/events');
|
|
7
8
|
let utils = require('src/utils');
|
|
@@ -16,7 +17,8 @@ const {
|
|
|
16
17
|
BIDDER_DONE,
|
|
17
18
|
BID_WON,
|
|
18
19
|
BID_TIMEOUT,
|
|
19
|
-
SET_TARGETING
|
|
20
|
+
SET_TARGETING,
|
|
21
|
+
AD_RENDER_FAILED
|
|
20
22
|
},
|
|
21
23
|
STATUS: {
|
|
22
24
|
GOOD
|
|
@@ -27,6 +29,9 @@ const BID1 = {
|
|
|
27
29
|
width: 980,
|
|
28
30
|
height: 240,
|
|
29
31
|
cpm: 1.1,
|
|
32
|
+
originalCpm: 12.0,
|
|
33
|
+
currency: 'USD',
|
|
34
|
+
originalCurrency: 'FOO',
|
|
30
35
|
timeToRespond: 200,
|
|
31
36
|
bidId: '2ecff0db240757',
|
|
32
37
|
requestId: '2ecff0db240757',
|
|
@@ -42,6 +47,9 @@ const BID2 = Object.assign({}, BID1, {
|
|
|
42
47
|
width: 300,
|
|
43
48
|
height: 250,
|
|
44
49
|
cpm: 2.2,
|
|
50
|
+
originalCpm: 23.0,
|
|
51
|
+
currency: 'USD',
|
|
52
|
+
originalCurrency: 'FOO',
|
|
45
53
|
timeToRespond: 300,
|
|
46
54
|
bidId: '3ecff0db240757',
|
|
47
55
|
requestId: '3ecff0db240757',
|
|
@@ -115,6 +123,14 @@ const MOCK = {
|
|
|
115
123
|
'bidId': '2ecff0db240757',
|
|
116
124
|
'auctionId': '25c6d7f5-699a-4bfc-87c9-996f915341fa'
|
|
117
125
|
}
|
|
126
|
+
],
|
|
127
|
+
AD_RENDER_FAILED: [
|
|
128
|
+
{
|
|
129
|
+
'bidId': '2ecff0db240757',
|
|
130
|
+
'reason': CONSTANTS.AD_RENDER_FAILED_REASON.CANNOT_FIND_AD,
|
|
131
|
+
'message': 'message',
|
|
132
|
+
'bid': BID1
|
|
133
|
+
}
|
|
118
134
|
]
|
|
119
135
|
};
|
|
120
136
|
|
|
@@ -169,6 +185,7 @@ const ANALYTICS_MESSAGE = {
|
|
|
169
185
|
width: 980,
|
|
170
186
|
height: 240,
|
|
171
187
|
cpm: 1.1,
|
|
188
|
+
orgCpm: 120,
|
|
172
189
|
ttr: 200,
|
|
173
190
|
IsBid: true,
|
|
174
191
|
mediaType: 1,
|
|
@@ -183,6 +200,7 @@ const ANALYTICS_MESSAGE = {
|
|
|
183
200
|
width: 300,
|
|
184
201
|
height: 250,
|
|
185
202
|
cpm: 2.2,
|
|
203
|
+
orgCpm: 230,
|
|
186
204
|
ttr: 300,
|
|
187
205
|
IsBid: true,
|
|
188
206
|
mediaType: 1,
|
|
@@ -210,6 +228,7 @@ const ANALYTICS_MESSAGE = {
|
|
|
210
228
|
width: 980,
|
|
211
229
|
height: 240,
|
|
212
230
|
cpm: 1.1,
|
|
231
|
+
orgCpm: 120,
|
|
213
232
|
mediaType: 1,
|
|
214
233
|
gdpr: 0,
|
|
215
234
|
auctionId: 0
|
|
@@ -222,10 +241,22 @@ const ANALYTICS_MESSAGE = {
|
|
|
222
241
|
width: 300,
|
|
223
242
|
height: 250,
|
|
224
243
|
cpm: 2.2,
|
|
244
|
+
orgCpm: 230,
|
|
225
245
|
mediaType: 1,
|
|
226
246
|
gdpr: 0,
|
|
227
247
|
auctionId: 0
|
|
228
248
|
}
|
|
249
|
+
],
|
|
250
|
+
rf: [
|
|
251
|
+
{
|
|
252
|
+
timeStamp: 1519149562216,
|
|
253
|
+
adUnit: 'panorama_d_1',
|
|
254
|
+
adUnitId: 'adunitid',
|
|
255
|
+
bidder: 'livewrapped',
|
|
256
|
+
auctionId: 0,
|
|
257
|
+
rsn: CONSTANTS.AD_RENDER_FAILED_REASON.CANNOT_FIND_AD,
|
|
258
|
+
msg: 'message'
|
|
259
|
+
},
|
|
229
260
|
]
|
|
230
261
|
};
|
|
231
262
|
|
|
@@ -239,6 +270,7 @@ function performStandardAuction() {
|
|
|
239
270
|
events.emit(SET_TARGETING, MOCK.SET_TARGETING);
|
|
240
271
|
events.emit(BID_WON, MOCK.BID_WON[0]);
|
|
241
272
|
events.emit(BID_WON, MOCK.BID_WON[1]);
|
|
273
|
+
events.emit(AD_RENDER_FAILED, MOCK.AD_RENDER_FAILED[0]);
|
|
242
274
|
}
|
|
243
275
|
|
|
244
276
|
describe('Livewrapped analytics adapter', function () {
|
|
@@ -258,6 +290,14 @@ describe('Livewrapped analytics adapter', function () {
|
|
|
258
290
|
sandbox.stub(document, 'getElementById').returns(element);
|
|
259
291
|
|
|
260
292
|
clock = sandbox.useFakeTimers(1519767013781);
|
|
293
|
+
setConfig({
|
|
294
|
+
adServerCurrency: 'USD',
|
|
295
|
+
rates: {
|
|
296
|
+
USD: {
|
|
297
|
+
FOO: 0.1
|
|
298
|
+
}
|
|
299
|
+
}
|
|
300
|
+
});
|
|
261
301
|
});
|
|
262
302
|
|
|
263
303
|
afterEach(function () {
|
|
@@ -300,7 +340,7 @@ describe('Livewrapped analytics adapter', function () {
|
|
|
300
340
|
expect(message).to.deep.equal(ANALYTICS_MESSAGE);
|
|
301
341
|
});
|
|
302
342
|
|
|
303
|
-
it('should send batched message without BID_WON if necessary and further BID_WON events individually', function () {
|
|
343
|
+
it('should send batched message without BID_WON AND AD_RENDER_FAILED if necessary and further BID_WON and AD_RENDER_FAILED events individually', function () {
|
|
304
344
|
events.emit(AUCTION_INIT, MOCK.AUCTION_INIT);
|
|
305
345
|
events.emit(BID_REQUESTED, MOCK.BID_REQUESTED);
|
|
306
346
|
events.emit(BID_RESPONSE, MOCK.BID_RESPONSE[0]);
|
|
@@ -313,8 +353,9 @@ describe('Livewrapped analytics adapter', function () {
|
|
|
313
353
|
clock.tick(BID_WON_TIMEOUT + 1000);
|
|
314
354
|
|
|
315
355
|
events.emit(BID_WON, MOCK.BID_WON[1]);
|
|
356
|
+
events.emit(AD_RENDER_FAILED, MOCK.AD_RENDER_FAILED[0]);
|
|
316
357
|
|
|
317
|
-
expect(server.requests.length).to.equal(
|
|
358
|
+
expect(server.requests.length).to.equal(3);
|
|
318
359
|
|
|
319
360
|
let message = JSON.parse(server.requests[0].requestBody);
|
|
320
361
|
expect(message.wins.length).to.equal(1);
|
|
@@ -324,6 +365,10 @@ describe('Livewrapped analytics adapter', function () {
|
|
|
324
365
|
message = JSON.parse(server.requests[1].requestBody);
|
|
325
366
|
expect(message.wins.length).to.equal(1);
|
|
326
367
|
expect(message.wins[0]).to.deep.equal(ANALYTICS_MESSAGE.wins[1]);
|
|
368
|
+
|
|
369
|
+
message = JSON.parse(server.requests[2].requestBody);
|
|
370
|
+
expect(message.rf.length).to.equal(1);
|
|
371
|
+
expect(message.rf[0]).to.deep.equal(ANALYTICS_MESSAGE.rf[0]);
|
|
327
372
|
});
|
|
328
373
|
|
|
329
374
|
it('should properly mark bids as timed out', function () {
|
|
@@ -416,18 +461,28 @@ describe('Livewrapped analytics adapter', function () {
|
|
|
416
461
|
{
|
|
417
462
|
'bidder': 'livewrapped',
|
|
418
463
|
'adUnitCode': 'panorama_d_1',
|
|
419
|
-
'bidId': '2ecff0db240757'
|
|
420
|
-
'floorData': {
|
|
421
|
-
'floorValue': 1.1,
|
|
422
|
-
'floorCurrency': 'SEK'
|
|
423
|
-
}
|
|
464
|
+
'bidId': '2ecff0db240757'
|
|
424
465
|
}
|
|
425
466
|
],
|
|
426
467
|
'start': 1519149562216
|
|
427
468
|
});
|
|
428
469
|
|
|
429
|
-
events.emit(BID_RESPONSE,
|
|
430
|
-
|
|
470
|
+
events.emit(BID_RESPONSE, Object.assign({},
|
|
471
|
+
MOCK.BID_RESPONSE[0],
|
|
472
|
+
{
|
|
473
|
+
'floorData': {
|
|
474
|
+
'floorValue': 1.1,
|
|
475
|
+
'floorCurrency': 'FOO'
|
|
476
|
+
}
|
|
477
|
+
}));
|
|
478
|
+
events.emit(BID_WON, Object.assign({},
|
|
479
|
+
MOCK.BID_WON[0],
|
|
480
|
+
{
|
|
481
|
+
'floorData': {
|
|
482
|
+
'floorValue': 1.1,
|
|
483
|
+
'floorCurrency': 'FOO'
|
|
484
|
+
}
|
|
485
|
+
}));
|
|
431
486
|
events.emit(AUCTION_END, MOCK.AUCTION_END);
|
|
432
487
|
|
|
433
488
|
clock.tick(BID_WON_TIMEOUT + 1000);
|
|
@@ -440,11 +495,11 @@ describe('Livewrapped analytics adapter', function () {
|
|
|
440
495
|
|
|
441
496
|
expect(message.responses.length).to.equal(1);
|
|
442
497
|
expect(message.responses[0].floor).to.equal(1.1);
|
|
443
|
-
expect(message.responses[0].floorCur).to.equal('
|
|
498
|
+
expect(message.responses[0].floorCur).to.equal('FOO');
|
|
444
499
|
|
|
445
500
|
expect(message.wins.length).to.equal(1);
|
|
446
501
|
expect(message.wins[0].floor).to.equal(1.1);
|
|
447
|
-
expect(message.wins[0].floorCur).to.equal('
|
|
502
|
+
expect(message.wins[0].floorCur).to.equal('FOO');
|
|
448
503
|
});
|
|
449
504
|
|
|
450
505
|
it('should forward Livewrapped floor data', function () {
|