prebid.js 9.53.2 → 9.53.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/33acrossAnalyticsAdapter.js +1 -1
- package/dist/33acrossBidAdapter.js +1 -1
- package/dist/33acrossIdSystem.js +1 -1
- package/dist/BTBidAdapter.js +1 -1
- package/dist/adagioAnalyticsAdapter.js +1 -1
- package/dist/adagioBidAdapter.js +1 -1
- package/dist/adagioRtdProvider.js +1 -1
- package/dist/adagioUtils.js +1 -1
- package/dist/addefendBidAdapter.js +1 -1
- package/dist/adgenerationBidAdapter.js +1 -1
- package/dist/adlooxRtdProvider.js +1 -1
- package/dist/adqueryBidAdapter.js +1 -1
- package/dist/adrelevantisBidAdapter.js +1 -1
- package/dist/adstirBidAdapter.js +1 -1
- package/dist/adtrgtmeBidAdapter.js +1 -1
- package/dist/adxcgAnalyticsAdapter.js +1 -1
- package/dist/adxcgBidAdapter.js +1 -1
- package/dist/adyoulikeBidAdapter.js +1 -1
- package/dist/agmaAnalyticsAdapter.js +1 -1
- package/dist/ajaBidAdapter.js +1 -1
- package/dist/amxBidAdapter.js +1 -1
- package/dist/amxIdSystem.js +1 -1
- package/dist/aniviewBidAdapter.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/beopBidAdapter.js +1 -1
- package/dist/bidglassBidAdapter.js +1 -1
- package/dist/big-richmediaBidAdapter.js +1 -1
- package/dist/bitmediaBidAdapter.js +1 -1
- package/dist/bridBidAdapter.js +1 -1
- package/dist/bridgeuppBidAdapter.js +1 -1
- package/dist/bridgewellBidAdapter.js +1 -1
- package/dist/brightMountainMediaBidAdapter.js +1 -1
- package/dist/carodaBidAdapter.js +1 -1
- package/dist/chtnwBidAdapter.js +1 -1
- package/dist/chunk-core.js +1 -1
- package/dist/concertBidAdapter.js +1 -1
- package/dist/connectadBidAdapter.js +1 -1
- package/dist/consumableBidAdapter.js +1 -1
- package/dist/contxtfulBidAdapter.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/cwireBidAdapter.js +1 -1
- package/dist/dailymotionBidAdapter.js +1 -1
- package/dist/debugging-standalone.js +1 -1
- package/dist/dspxBidAdapter.js +1 -1
- package/dist/dxkultureBidAdapter.js +1 -1
- package/dist/eplanningBidAdapter.js +1 -1
- package/dist/equativBidAdapter.js +1 -1
- package/dist/eskimiBidAdapter.js +1 -1
- package/dist/euidIdSystem.js +1 -1
- package/dist/exadsBidAdapter.js +1 -1
- package/dist/excoBidAdapter.js +1 -1
- package/dist/feedadBidAdapter.js +1 -1
- package/dist/finativeBidAdapter.js +1 -1
- package/dist/freewheel-sspBidAdapter.js +1 -1
- package/dist/gmosspBidAdapter.js +1 -1
- package/dist/greenbidsAnalyticsAdapter.js +1 -1
- package/dist/greenbidsBidAdapter.js +1 -1
- package/dist/greenbidsRtdProvider.js +1 -1
- package/dist/gridBidAdapter.js +1 -1
- package/dist/gumgumBidAdapter.js +1 -1
- package/dist/h12mediaBidAdapter.js +1 -1
- package/dist/hypelabBidAdapter.js +1 -1
- package/dist/id5AnalyticsAdapter.js +1 -1
- package/dist/id5IdSystem.js +1 -1
- package/dist/imdsBidAdapter.js +1 -1
- package/dist/improvedigitalBidAdapter.js +1 -1
- package/dist/inmobiBidAdapter.js +1 -1
- package/dist/insticatorBidAdapter.js +1 -1
- package/dist/intentIqAnalyticsAdapter.js +1 -1
- package/dist/ixBidAdapter.js +1 -1
- package/dist/jixieBidAdapter.js +1 -1
- package/dist/justpremiumBidAdapter.js +1 -1
- package/dist/kargoBidAdapter.js +1 -1
- package/dist/kimberliteBidAdapter.js +1 -1
- package/dist/konduitAnalyticsAdapter.js +1 -1
- package/dist/kueezBidAdapter.js +1 -1
- package/dist/lassoBidAdapter.js +1 -1
- package/dist/lifestreetBidAdapter.js +1 -1
- package/dist/liveIntentId.js +1 -1
- package/dist/logicadBidAdapter.js +1 -1
- package/dist/loglyliftBidAdapter.js +1 -1
- package/dist/luceadBidAdapter.js +1 -1
- package/dist/mabidderBidAdapter.js +1 -1
- package/dist/madsenseBidAdapter.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/medianetBidAdapter.js +1 -1
- package/dist/medianetUtils.js +1 -1
- package/dist/mediasquareBidAdapter.js +1 -1
- package/dist/mgidBidAdapter.js +1 -1
- package/dist/missenaBidAdapter.js +1 -1
- package/dist/mobilefuseBidAdapter.js +1 -1
- package/dist/nextMillenniumBidAdapter.js +1 -1
- package/dist/nexx360Utils.js +1 -1
- package/dist/nobidAnalyticsAdapter.js +1 -1
- package/dist/nobidBidAdapter.js +1 -1
- package/dist/nodalsAiRtdProvider.js +1 -1
- package/dist/not-for-prod/prebid.js +172 -172
- package/dist/objectGuard.js +1 -1
- package/dist/oguryBidAdapter.js +1 -1
- package/dist/onetagBidAdapter.js +1 -1
- package/dist/ooloAnalyticsAdapter.js +1 -1
- package/dist/openxBidAdapter.js +1 -1
- package/dist/optidigitalBidAdapter.js +1 -1
- package/dist/orbidderBidAdapter.js +1 -1
- package/dist/outbrainBidAdapter.js +1 -1
- package/dist/pixfutureBidAdapter.js +1 -1
- package/dist/publinkIdSystem.js +1 -1
- package/dist/pubmaticAnalyticsAdapter.js +1 -1
- package/dist/pubmaticBidAdapter.js +1 -1
- package/dist/pubmaticIdSystem.js +1 -1
- package/dist/pubmaticRtdProvider.js +1 -1
- package/dist/pubwiseAnalyticsAdapter.js +1 -1
- package/dist/pubxaiAnalyticsAdapter.js +1 -1
- package/dist/pxyzBidAdapter.js +1 -1
- package/dist/quantcastBidAdapter.js +1 -1
- package/dist/readpeakBidAdapter.js +1 -1
- package/dist/relaidoBidAdapter.js +1 -1
- package/dist/retailspotBidAdapter.js +1 -1
- package/dist/rhythmoneBidAdapter.js +1 -1
- package/dist/riseUtils.js +1 -1
- package/dist/rtdModule.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/showheroes-bsBidAdapter.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/snigelBidAdapter.js +1 -1
- package/dist/sonobiBidAdapter.js +1 -1
- package/dist/sovrnBidAdapter.js +1 -1
- package/dist/sparteoBidAdapter.js +1 -1
- package/dist/sspBCBidAdapter.js +1 -1
- package/dist/stvBidAdapter.js +1 -1
- package/dist/sublimeBidAdapter.js +1 -1
- package/dist/taboolaBidAdapter.js +1 -1
- package/dist/tappxBidAdapter.js +1 -1
- package/dist/targetVideoBidAdapter.js +1 -1
- package/dist/teadsBidAdapter.js +1 -1
- package/dist/terceptAnalyticsAdapter.js +1 -1
- package/dist/themoneytizerBidAdapter.js +1 -1
- package/dist/trionBidAdapter.js +1 -1
- package/dist/tripleliftBidAdapter.js +1 -1
- package/dist/ttdBidAdapter.js +1 -1
- package/dist/ucfunnelAnalyticsAdapter.js +1 -1
- package/dist/uid2IdSystem.js +1 -1
- package/dist/underdogmediaBidAdapter.js +1 -1
- package/dist/undertoneBidAdapter.js +1 -1
- package/dist/unrulyBidAdapter.js +1 -1
- package/dist/userId.js +1 -1
- package/dist/vidazooUtils.js +1 -1
- package/dist/videobyteBidAdapter.js +1 -1
- package/dist/visxBidAdapter.js +1 -1
- package/dist/vuukleBidAdapter.js +1 -1
- package/dist/widespaceBidAdapter.js +1 -1
- package/dist/winrBidAdapter.js +1 -1
- package/dist/yahooAdsBidAdapter.js +1 -1
- package/dist/yandexBidAdapter.js +1 -1
- package/dist/yieldmoBidAdapter.js +1 -1
- package/dist/yieldoneAnalyticsAdapter.js +1 -1
- package/libraries/objectGuard/objectGuard.js +149 -48
- package/libraries/objectGuard/ortbGuard.js +33 -43
- package/modules/adagioAnalyticsAdapter.js +6 -1
- package/modules/adagioBidAdapter.js +12 -5
- package/modules/adagioRtdProvider.js +41 -35
- package/modules/pubmaticAnalyticsAdapter.js +311 -587
- package/modules/pubmaticBidAdapter.js +71 -8
- package/modules/pubmaticIdSystem.js +4 -4
- package/modules/pubmaticRtdProvider.js +12 -60
- package/modules/rtdModule/index.js +1 -5
- package/modules/ttdBidAdapter.js +0 -5
- package/modules/userId/eids.js +1 -1
- package/modules/userId/index.js +32 -1
- package/package.json +1 -1
- package/src/auction.js +3 -0
- package/test/spec/activities/objectGuard_spec.js +156 -32
- package/test/spec/activities/ortbGuard_spec.js +10 -15
- package/test/spec/modules/adagioAnalyticsAdapter_spec.js +94 -24
- package/test/spec/modules/adagioRtdProvider_spec.js +17 -17
- package/test/spec/modules/pubmaticAnalyticsAdapter_spec.js +634 -916
- package/test/spec/modules/pubmaticBidAdapter_spec.js +260 -1
- package/test/spec/modules/pubmaticRtdProvider_spec.js +78 -400
- package/test/spec/modules/ttdBidAdapter_spec.js +0 -33
- package/test/spec/modules/userId_spec.js +115 -1
|
@@ -11,7 +11,7 @@ import {
|
|
|
11
11
|
requestDataDeletion,
|
|
12
12
|
setStoredValue,
|
|
13
13
|
setSubmoduleRegistry,
|
|
14
|
-
syncDelay,
|
|
14
|
+
syncDelay, adUnitEidsHook,
|
|
15
15
|
} from 'modules/userId/index.js';
|
|
16
16
|
import {UID1_EIDS} from 'libraries/uid1Eids/uid1Eids.js';
|
|
17
17
|
import {createEidsArray, EID_CONFIG} from 'modules/userId/eids.js';
|
|
@@ -419,6 +419,34 @@ describe('User ID', function () {
|
|
|
419
419
|
]);
|
|
420
420
|
});
|
|
421
421
|
|
|
422
|
+
it('should not alter values returned by adapters', () => {
|
|
423
|
+
let eid = {
|
|
424
|
+
source: 'someid.org',
|
|
425
|
+
uids: [{id: 'id-1'}]
|
|
426
|
+
};
|
|
427
|
+
const config = new Map([
|
|
428
|
+
['someId', function () {
|
|
429
|
+
return eid;
|
|
430
|
+
}]
|
|
431
|
+
]);
|
|
432
|
+
const userid = {
|
|
433
|
+
someId: 'id-1',
|
|
434
|
+
pubProvidedId: [{
|
|
435
|
+
source: 'someid.org',
|
|
436
|
+
uids: [{id: 'id-2'}]
|
|
437
|
+
}],
|
|
438
|
+
}
|
|
439
|
+
createEidsArray(userid, config);
|
|
440
|
+
const allEids = createEidsArray(userid, config);
|
|
441
|
+
expect(allEids).to.eql([
|
|
442
|
+
{
|
|
443
|
+
source: 'someid.org',
|
|
444
|
+
uids: [{id: 'id-1'}, {id: 'id-2'}]
|
|
445
|
+
}
|
|
446
|
+
])
|
|
447
|
+
expect(eid.uids).to.eql([{'id': 'id-1'}])
|
|
448
|
+
});
|
|
449
|
+
|
|
422
450
|
it('should filter out entire EID if none of the uids are strings', () => {
|
|
423
451
|
const eids = createEidsArray({
|
|
424
452
|
mockId2v3: [null],
|
|
@@ -2976,4 +3004,90 @@ describe('User ID', function () {
|
|
|
2976
3004
|
});
|
|
2977
3005
|
})
|
|
2978
3006
|
});
|
|
3007
|
+
describe('adUnitEidsHook', () => {
|
|
3008
|
+
let next, auction, adUnits, ortb2Fragments;
|
|
3009
|
+
beforeEach(() => {
|
|
3010
|
+
next = sinon.stub();
|
|
3011
|
+
adUnits = [
|
|
3012
|
+
{
|
|
3013
|
+
code: 'au1',
|
|
3014
|
+
bids: [
|
|
3015
|
+
{
|
|
3016
|
+
bidder: 'bidderA'
|
|
3017
|
+
},
|
|
3018
|
+
{
|
|
3019
|
+
bidder: 'bidderB'
|
|
3020
|
+
}
|
|
3021
|
+
]
|
|
3022
|
+
},
|
|
3023
|
+
{
|
|
3024
|
+
code: 'au2',
|
|
3025
|
+
bids: [
|
|
3026
|
+
{
|
|
3027
|
+
bidder: 'bidderC'
|
|
3028
|
+
}
|
|
3029
|
+
]
|
|
3030
|
+
}
|
|
3031
|
+
]
|
|
3032
|
+
ortb2Fragments = {}
|
|
3033
|
+
auction = {
|
|
3034
|
+
getAdUnits: () => adUnits,
|
|
3035
|
+
getFPD: () => ortb2Fragments
|
|
3036
|
+
}
|
|
3037
|
+
});
|
|
3038
|
+
it('should not set userIdAsEids when no eids are provided', () => {
|
|
3039
|
+
adUnitEidsHook(next, auction);
|
|
3040
|
+
auction.getAdUnits().flatMap(au => au.bids).forEach(bid => {
|
|
3041
|
+
expect(bid.userIdAsEids).to.not.exist;
|
|
3042
|
+
})
|
|
3043
|
+
});
|
|
3044
|
+
it('should add global eids', () => {
|
|
3045
|
+
ortb2Fragments.global = {
|
|
3046
|
+
user: {
|
|
3047
|
+
ext: {
|
|
3048
|
+
eids: ['some-eid']
|
|
3049
|
+
}
|
|
3050
|
+
}
|
|
3051
|
+
};
|
|
3052
|
+
adUnitEidsHook(next, auction);
|
|
3053
|
+
auction.getAdUnits().flatMap(au => au.bids).forEach(bid => {
|
|
3054
|
+
expect(bid.userIdAsEids).to.eql(['some-eid']);
|
|
3055
|
+
})
|
|
3056
|
+
})
|
|
3057
|
+
it('should add bidder-specific eids', () => {
|
|
3058
|
+
ortb2Fragments.global = {
|
|
3059
|
+
user: {
|
|
3060
|
+
ext: {
|
|
3061
|
+
eids: ['global']
|
|
3062
|
+
}
|
|
3063
|
+
}
|
|
3064
|
+
};
|
|
3065
|
+
ortb2Fragments.bidder = {
|
|
3066
|
+
bidderA: {
|
|
3067
|
+
user: {
|
|
3068
|
+
ext: {
|
|
3069
|
+
eids: ['bidder']
|
|
3070
|
+
}
|
|
3071
|
+
}
|
|
3072
|
+
}
|
|
3073
|
+
}
|
|
3074
|
+
adUnitEidsHook(next, auction);
|
|
3075
|
+
auction.getAdUnits().flatMap(au => au.bids).forEach(bid => {
|
|
3076
|
+
const expected = bid.bidder === 'bidderA' ? ['global', 'bidder'] : ['global'];
|
|
3077
|
+
expect(bid.userIdAsEids).to.eql(expected);
|
|
3078
|
+
})
|
|
3079
|
+
});
|
|
3080
|
+
it('should add global eids to bidderless bids', () => {
|
|
3081
|
+
ortb2Fragments.global = {
|
|
3082
|
+
user: {
|
|
3083
|
+
ext: {
|
|
3084
|
+
eids: ['global']
|
|
3085
|
+
}
|
|
3086
|
+
}
|
|
3087
|
+
}
|
|
3088
|
+
delete adUnits[0].bids[0].bidder;
|
|
3089
|
+
adUnitEidsHook(next, auction);
|
|
3090
|
+
expect(adUnits[0].bids[0].userIdAsEids).to.eql(['global']);
|
|
3091
|
+
})
|
|
3092
|
+
});
|
|
2979
3093
|
});
|