prebid.js 5.14.0 → 5.18.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/allowedModules.js +2 -1
- package/integrationExamples/gpt/afpExample.html +242 -0
- package/integrationExamples/gpt/afpGamExample.html +152 -0
- package/integrationExamples/gpt/weboramaRtdProvider_example.html +126 -0
- package/modules/.submodules.json +29 -27
- package/modules/33acrossBidAdapter.js +23 -20
- package/modules/a4gBidAdapter.js +3 -3
- package/modules/ablidaBidAdapter.js +2 -2
- package/modules/adWMGBidAdapter.js +4 -4
- package/modules/adagioAnalyticsAdapter.js +4 -4
- package/modules/adagioBidAdapter.js +85 -82
- package/modules/adbookpspBidAdapter.js +56 -54
- package/modules/adfBidAdapter.js +24 -16
- package/modules/adgenerationBidAdapter.js +42 -18
- package/modules/adhashBidAdapter.js +105 -0
- package/modules/adhashBidAdapter.md +1 -1
- package/modules/adkernelAdnAnalyticsAdapter.js +6 -6
- package/modules/adkernelAdnBidAdapter.js +23 -23
- package/modules/adkernelBidAdapter.js +49 -44
- package/modules/adlooxAdServerVideo.js +26 -26
- package/modules/adlooxAnalyticsAdapter.js +38 -35
- package/modules/adlooxRtdProvider.js +49 -46
- package/modules/admanBidAdapter.js +4 -4
- package/modules/admixerBidAdapter.js +13 -2
- package/modules/admixerIdSystem.js +4 -4
- package/modules/adnowBidAdapter.js +4 -4
- package/modules/adnuntiusBidAdapter.js +6 -5
- package/modules/adoceanBidAdapter.js +10 -10
- package/modules/adpartnerBidAdapter.js +3 -3
- package/modules/adpod.js +45 -42
- package/modules/adprimeBidAdapter.js +4 -4
- package/modules/adqueryBidAdapter.js +204 -0
- package/modules/adqueryBidAdapter.md +32 -0
- package/modules/adrelevantisBidAdapter.js +30 -27
- package/modules/adriverBidAdapter.js +13 -13
- package/modules/adtargetBidAdapter.js +24 -24
- package/modules/adtelligentBidAdapter.js +29 -29
- package/modules/adtrueBidAdapter.js +35 -35
- package/modules/aduptechBidAdapter.js +10 -10
- package/modules/advangelistsBidAdapter.js +14 -14
- package/modules/adxcgAnalyticsAdapter.js +5 -5
- package/modules/adxcgBidAdapter.js +56 -56
- package/modules/adxpremiumAnalyticsAdapter.js +17 -17
- package/modules/adyoulikeBidAdapter.js +11 -11
- package/modules/afpBidAdapter.js +166 -0
- package/modules/afpBidAdapter.md +348 -0
- package/modules/ajaBidAdapter.js +12 -12
- package/modules/akamaiDAPIdSystem.js +9 -9
- package/modules/aniviewBidAdapter.js +2 -2
- package/modules/aolBidAdapter.js +15 -14
- package/modules/apacdexBidAdapter.js +16 -16
- package/modules/appnexusBidAdapter.js +59 -59
- package/modules/apstreamBidAdapter.js +5 -5
- package/modules/asoBidAdapter.js +30 -30
- package/modules/astraoneBidAdapter.js +2 -2
- package/modules/atsAnalyticsAdapter.js +35 -30
- package/modules/audiencerunBidAdapter.js +15 -15
- package/modules/automatadBidAdapter.js +2 -2
- package/modules/axonixBidAdapter.js +7 -7
- package/modules/beachfrontBidAdapter.js +23 -23
- package/modules/beopBidAdapter.js +22 -22
- package/modules/bidViewabilityIO.js +7 -7
- package/modules/bidglassBidAdapter.js +8 -8
- package/modules/bidscubeBidAdapter.js +3 -3
- package/modules/bizzclickBidAdapter.js +10 -10
- package/modules/bliinkBidAdapter.js +58 -32
- package/modules/bliinkBidAdapter.md +29 -6
- package/modules/bluebillywigBidAdapter.js +30 -30
- package/modules/boldwinBidAdapter.js +4 -4
- package/modules/braveBidAdapter.js +5 -5
- package/modules/bridgewellBidAdapter.js +5 -5
- package/modules/brightMountainMediaBidAdapter.js +10 -10
- package/modules/brightcomBidAdapter.js +18 -18
- package/modules/britepoolIdSystem.js +7 -7
- package/modules/browsiRtdProvider.js +8 -8
- package/modules/bucksenseBidAdapter.js +9 -9
- package/modules/buzzoolaBidAdapter.js +4 -4
- package/modules/byDataAnalyticsAdapter.js +12 -12
- package/modules/ccxBidAdapter.js +38 -38
- package/modules/cleanmedianetBidAdapter.js +9 -9
- package/modules/clickforceBidAdapter.js +4 -4
- package/modules/cointrafficBidAdapter.js +4 -4
- package/modules/coinzillaBidAdapter.js +2 -2
- package/modules/colossussspBidAdapter.js +7 -3
- package/modules/concertAnalyticsAdapter.js +3 -3
- package/modules/concertBidAdapter.js +16 -17
- package/modules/connectadBidAdapter.js +13 -13
- package/modules/consentManagement.js +29 -28
- package/modules/consentManagementUsp.js +14 -14
- package/modules/consumableBidAdapter.js +3 -3
- package/modules/contentexchangeBidAdapter.js +5 -5
- package/modules/conversantBidAdapter.js +32 -31
- package/modules/cpmstarBidAdapter.js +8 -9
- package/modules/craftBidAdapter.js +10 -10
- package/modules/criteoBidAdapter.js +16 -16
- package/modules/criteoIdSystem.js +5 -5
- package/modules/currency.js +18 -18
- package/modules/cwireBidAdapter.js +272 -0
- package/modules/cwireBidAdapter.md +43 -0
- package/modules/datablocksBidAdapter.js +12 -12
- package/modules/deepintentBidAdapter.js +13 -13
- package/modules/dgkeywordRtdProvider.js +10 -11
- package/modules/districtmDMXBidAdapter.js +15 -15
- package/modules/dmdIdSystem.js +5 -5
- package/modules/docereeBidAdapter.js +9 -9
- package/modules/dspxBidAdapter.js +5 -5
- package/modules/ebdrBidAdapter.js +9 -9
- package/modules/emx_digitalBidAdapter.js +23 -23
- package/modules/enrichmentFpdModule.js +10 -9
- package/modules/eplanningAnalyticsAdapter.js +2 -2
- package/modules/eplanningBidAdapter.js +10 -10
- package/modules/etargetBidAdapter.js +4 -4
- package/modules/express.js +9 -10
- package/modules/fabrickIdSystem.js +6 -6
- package/modules/feedadBidAdapter.js +5 -5
- package/modules/fintezaAnalyticsAdapter.js +4 -4
- package/modules/flocIdSystem.js +5 -5
- package/modules/fluctBidAdapter.js +6 -5
- package/modules/freewheel-sspBidAdapter.js +6 -6
- package/modules/gamoshiBidAdapter.js +22 -22
- package/modules/gdprEnforcement.js +13 -14
- package/modules/getintentBidAdapter.js +3 -4
- package/modules/glimpseBidAdapter.js +160 -48
- package/modules/glimpseBidAdapter.md +11 -74
- package/modules/gmosspBidAdapter.js +17 -17
- package/modules/gnetBidAdapter.js +5 -5
- package/modules/googleAnalyticsAdapter.js +6 -6
- package/modules/gothamadsBidAdapter.js +9 -9
- package/modules/gptPreAuction.js +7 -7
- package/modules/gridBidAdapter.js +15 -16
- package/modules/gridNMBidAdapter.js +214 -63
- package/modules/growadvertisingBidAdapter.js +7 -8
- package/modules/gumgumBidAdapter.js +19 -13
- package/modules/h12mediaBidAdapter.js +12 -12
- package/modules/haloIdSystem.js +8 -8
- package/modules/hybridBidAdapter.js +7 -7
- package/modules/iasRtdProvider.js +79 -63
- package/modules/id5IdSystem.js +24 -24
- package/modules/idImportLibrary.js +35 -35
- package/modules/idxIdSystem.js +3 -3
- package/modules/impactifyBidAdapter.js +10 -10
- package/modules/improvedigitalBidAdapter.js +36 -36
- package/modules/imuIdSystem.js +6 -6
- package/modules/inmarBidAdapter.js +2 -2
- package/modules/innityBidAdapter.js +3 -3
- package/modules/inskinBidAdapter.js +14 -2
- package/modules/inskinBidAdapter.md +5 -4
- package/modules/instreamTracking.js +5 -5
- package/modules/integr8BidAdapter.js +4 -4
- package/modules/intentIqIdSystem.js +7 -7
- package/modules/interactiveOffersBidAdapter.js +5 -5
- package/modules/invibesBidAdapter.js +53 -19
- package/modules/invisiblyAnalyticsAdapter.js +5 -5
- package/modules/iqmBidAdapter.js +19 -19
- package/modules/iqzoneBidAdapter.js +5 -5
- package/modules/ixBidAdapter.js +73 -73
- package/modules/jixieBidAdapter.js +6 -6
- package/modules/justpremiumBidAdapter.js +5 -1
- package/modules/kargoBidAdapter.js +16 -9
- package/modules/kargoBidAdapter.md +20 -0
- package/modules/kinessoIdSystem.js +8 -8
- package/modules/koblerBidAdapter.js +12 -12
- package/modules/konduitAnalyticsAdapter.js +4 -4
- package/modules/konduitWrapper.js +14 -14
- package/modules/krushmediaBidAdapter.js +4 -4
- package/modules/kubientBidAdapter.js +5 -5
- package/modules/limelightDigitalBidAdapter.js +4 -4
- package/modules/liveIntentIdSystem.js +4 -5
- package/modules/livewrappedAnalyticsAdapter.js +27 -15
- package/modules/livewrappedBidAdapter.js +7 -7
- package/modules/liveyieldAnalyticsAdapter.js +13 -13
- package/modules/lockerdomeBidAdapter.js +2 -2
- package/modules/loganBidAdapter.js +4 -4
- package/modules/lotamePanoramaIdSystem.js +13 -13
- package/modules/lunamediahbBidAdapter.js +2 -2
- package/modules/madvertiseBidAdapter.js +3 -3
- package/modules/marsmediaBidAdapter.js +26 -26
- package/modules/mathildeadsBidAdapter.js +5 -5
- package/modules/mediaforceBidAdapter.js +11 -11
- package/modules/mediakeysBidAdapter.js +444 -53
- package/modules/mediakeysBidAdapter.md +108 -0
- package/modules/medianetAnalyticsAdapter.js +48 -125
- package/modules/medianetBidAdapter.js +38 -33
- package/modules/medianetRtdProvider.js +7 -7
- package/modules/merkleIdSystem.js +19 -19
- package/modules/mgidBidAdapter.js +50 -50
- package/modules/microadBidAdapter.js +3 -3
- package/modules/multibid/index.js +15 -13
- package/modules/mwOpenLinkIdSystem.js +7 -7
- package/modules/mytargetBidAdapter.js +112 -0
- package/modules/nativoBidAdapter.js +46 -31
- package/modules/nativoBidAdapter.md +0 -1
- package/modules/naveggIdSystem.js +3 -3
- package/modules/nextMillenniumBidAdapter.js +6 -6
- package/modules/nextrollBidAdapter.js +375 -0
- package/modules/nobidBidAdapter.js +12 -11
- package/modules/novatiqIdSystem.js +8 -8
- package/modules/oguryBidAdapter.js +22 -6
- package/modules/oneVideoBidAdapter.js +20 -20
- package/modules/onomagicBidAdapter.js +16 -16
- package/modules/ooloAnalyticsAdapter.js +13 -13
- package/modules/openwebBidAdapter.js +26 -26
- package/modules/openxAnalyticsAdapter.js +33 -33
- package/modules/openxBidAdapter.js +29 -29
- package/modules/operaadsBidAdapter.js +53 -53
- package/modules/optimeraRtdProvider.js +9 -9
- package/modules/optoutBidAdapter.js +3 -3
- package/modules/orbidderBidAdapter.js +3 -3
- package/modules/outbrainBidAdapter.js +13 -13
- package/modules/ozoneBidAdapter.js +131 -131
- package/modules/padsquadBidAdapter.js +4 -4
- package/modules/parrableIdSystem.js +17 -17
- package/modules/pixfutureBidAdapter.js +45 -25
- package/modules/pixfutureBidAdapter.md +127 -0
- package/modules/prebidServerBidAdapter/index.js +109 -105
- package/modules/prebidmanagerAnalyticsAdapter.js +7 -7
- package/modules/priceFloors.js +47 -47
- package/modules/proxistoreBidAdapter.js +6 -8
- package/modules/pubCommonId.js +11 -11
- package/modules/pubProvidedIdSystem.js +3 -3
- package/modules/publinkIdSystem.js +23 -7
- package/modules/publinkIdSystem.md +7 -2
- package/modules/pubmaticAnalyticsAdapter.js +16 -16
- package/modules/pubmaticBidAdapter.js +109 -93
- package/modules/pubmaticBidAdapter.md +1 -1
- package/modules/pubperfAnalyticsAdapter.js +3 -3
- package/modules/pubwiseAnalyticsAdapter.js +6 -6
- package/modules/pubwiseBidAdapter.js +23 -23
- package/modules/pubxBidAdapter.js +2 -2
- package/modules/pubxaiAnalyticsAdapter.js +7 -7
- package/modules/pulsepointBidAdapter.js +13 -13
- package/modules/pxyzBidAdapter.js +7 -7
- package/modules/quantcastBidAdapter.js +16 -16
- package/modules/radsBidAdapter.js +5 -5
- package/modules/realvuAnalyticsAdapter.js +5 -7
- package/modules/reconciliationRtdProvider.js +6 -6
- package/modules/relaidoBidAdapter.js +44 -38
- package/modules/resetdigitalBidAdapter.js +3 -4
- package/modules/revcontentBidAdapter.js +9 -9
- package/modules/rhythmoneBidAdapter.js +17 -16
- package/modules/richaudienceBidAdapter.js +9 -9
- package/modules/riseBidAdapter.js +26 -26
- package/modules/riseBidAdapter.md +1 -3
- package/modules/roxotAnalyticsAdapter.js +14 -14
- package/modules/rtbhouseBidAdapter.js +7 -7
- package/modules/rtbsapeBidAdapter.js +3 -4
- package/modules/rtdModule/index.js +3 -3
- package/modules/rubiconAnalyticsAdapter.js +82 -82
- package/modules/rubiconBidAdapter.js +72 -68
- package/modules/scaleableAnalyticsAdapter.js +2 -2
- package/modules/seedingAllianceBidAdapter.js +231 -0
- package/modules/seedtagBidAdapter.js +10 -10
- package/modules/sharedIdSystem.js +11 -11
- package/modules/sharethroughAnalyticsAdapter.js +8 -8
- package/modules/sharethroughBidAdapter.js +20 -27
- package/modules/showheroes-bsBidAdapter.js +23 -23
- package/modules/sigmoidAnalyticsAdapter.js +4 -5
- package/modules/sirdataRtdProvider.js +34 -34
- package/modules/sizeMappingV2.js +39 -39
- package/modules/slimcutBidAdapter.js +121 -0
- package/modules/smaatoBidAdapter.js +44 -44
- package/modules/smartadserverBidAdapter.js +7 -7
- package/modules/smartxBidAdapter.js +72 -72
- package/modules/smartyadsBidAdapter.js +2 -2
- package/modules/smilewantedBidAdapter.js +6 -6
- package/modules/sonobiAnalyticsAdapter.js +23 -23
- package/modules/sortableAnalyticsAdapter.js +5 -5
- package/modules/sortableBidAdapter.js +28 -28
- package/modules/sovrnAnalyticsAdapter.js +5 -5
- package/modules/sovrnBidAdapter.js +22 -22
- package/modules/spotxBidAdapter.js +97 -83
- package/modules/sspBCBidAdapter.js +216 -21
- package/modules/sspBCBidAdapter.md +1 -1
- package/modules/staqAnalyticsAdapter.js +9 -9
- package/modules/stroeerCoreBidAdapter.js +16 -16
- package/modules/sublimeBidAdapter.js +6 -6
- package/modules/talkadsBidAdapter.js +129 -0
- package/modules/talkadsBidAdapter.md +60 -0
- package/modules/tapadIdSystem.js +3 -3
- package/modules/tappxBidAdapter.js +63 -64
- package/modules/teadsBidAdapter.js +20 -20
- package/modules/telariaBidAdapter.js +17 -17
- package/modules/temedyaBidAdapter.js +4 -4
- package/modules/terceptAnalyticsAdapter.js +4 -4
- package/modules/theAdxBidAdapter.js +16 -16
- package/modules/timeoutRtdProvider.js +15 -15
- package/modules/tpmnBidAdapter.js +3 -3
- package/modules/trionBidAdapter.js +15 -15
- package/modules/tripleliftBidAdapter.js +27 -24
- package/modules/truereachBidAdapter.js +4 -4
- package/modules/trustxBidAdapter.js +22 -18
- package/modules/ucfunnelBidAdapter.js +3 -3
- package/modules/uid2IdSystem.js +6 -6
- package/modules/underdogmediaBidAdapter.js +4 -4
- package/modules/unicornBidAdapter.js +15 -15
- package/modules/unifiedIdSystem.js +4 -4
- package/modules/unrulyBidAdapter.js +16 -16
- package/modules/userId/eids.js +9 -9
- package/modules/userId/index.js +37 -35
- package/modules/validationFpdModule/index.js +15 -15
- package/modules/vdoaiBidAdapter.js +2 -2
- package/modules/verizonMediaIdSystem.js +5 -5
- package/modules/vidazooBidAdapter.js +5 -5
- package/modules/videobyteBidAdapter.js +24 -24
- package/modules/videoreachBidAdapter.js +7 -7
- package/modules/vidoomyBidAdapter.js +105 -22
- package/modules/viewdeosDXBidAdapter.js +17 -17
- package/modules/visxBidAdapter.js +21 -29
- package/modules/voxBidAdapter.js +7 -7
- package/modules/vuukleBidAdapter.js +2 -2
- package/modules/waardexBidAdapter.js +26 -26
- package/modules/weboramaRtdProvider.js +174 -0
- package/modules/weboramaRtdProvider.md +70 -0
- package/modules/winrBidAdapter.js +27 -27
- package/modules/wipesBidAdapter.js +2 -2
- package/modules/yahoosspBidAdapter.js +637 -0
- package/modules/yahoosspBidAdapter.md +795 -0
- package/modules/yieldlabBidAdapter.js +57 -12
- package/modules/yieldlabBidAdapter.md +16 -1
- package/modules/yieldliftBidAdapter.js +9 -9
- package/modules/yieldmoBidAdapter.js +64 -50
- package/modules/yieldoneAnalyticsAdapter.js +6 -6
- package/modules/yieldoneBidAdapter.js +11 -11
- package/modules/yuktamediaAnalyticsAdapter.js +15 -15
- package/modules/zeotapIdPlusIdSystem.js +2 -2
- package/modules/zetaBidAdapter.js +6 -6
- package/modules/zeta_global_sspBidAdapter.js +14 -14
- package/package.json +1 -1
- package/src/AnalyticsAdapter.js +6 -6
- package/src/Renderer.js +10 -8
- package/src/adapterManager.js +45 -42
- package/src/adloader.js +6 -6
- package/src/ajax.js +8 -9
- package/src/auction.js +26 -23
- package/src/bidfactory.js +2 -2
- package/src/config.js +52 -50
- package/src/cpmBucketManager.js +2 -2
- package/src/prebid.js +85 -81
- package/src/storageManager.js +5 -5
- package/src/targeting.js +25 -26
- package/src/userSync.js +35 -22
- package/src/videoCache.js +2 -2
- package/test/.eslintrc.js +2 -1
- package/test/spec/modules/adfBidAdapter_spec.js +55 -0
- package/test/spec/modules/adgenerationBidAdapter_spec.js +121 -50
- package/test/spec/modules/adhashBidAdapter_spec.js +155 -0
- package/test/spec/modules/adnuntiusBidAdapter_spec.js +68 -0
- package/test/spec/modules/adqueryBidAdapter_spec.js +185 -0
- package/test/spec/modules/afpBidAdapter_spec.js +306 -0
- package/test/spec/modules/atsAnalyticsAdapter_spec.js +37 -2
- package/test/spec/modules/bliinkBidAdapter_spec.js +87 -36
- package/test/spec/modules/colossussspBidAdapter_spec.js +14 -6
- package/test/spec/modules/cwireBidAdapter_spec.js +246 -0
- package/test/spec/modules/eplanningBidAdapter_spec.js +3 -3
- package/test/spec/modules/glimpseBidAdapter_spec.js +302 -204
- package/test/spec/modules/gridBidAdapter_spec.js +38 -2
- package/test/spec/modules/gridNMBidAdapter_spec.js +121 -47
- package/test/spec/modules/gumgumBidAdapter_spec.js +27 -6
- package/test/spec/modules/iasRtdProvider_spec.js +71 -6
- package/test/spec/modules/inskinBidAdapter_spec.js +10 -1
- package/test/spec/modules/invibesBidAdapter_spec.js +114 -2
- package/test/spec/modules/justpremiumBidAdapter_spec.js +16 -2
- package/test/spec/modules/livewrappedAnalyticsAdapter_spec.js +33 -7
- package/test/spec/modules/mediakeysBidAdapter_spec.js +406 -51
- package/test/spec/modules/medianetAnalyticsAdapter_spec.js +39 -7
- package/test/spec/modules/medianetBidAdapter_spec.js +62 -1
- package/test/spec/modules/mytargetBidAdapter_spec.js +199 -0
- package/test/spec/modules/nativoBidAdapter_spec.js +50 -3
- 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 +120 -7
- package/test/spec/modules/publinkIdSystem_spec.js +42 -12
- package/test/spec/modules/pubmaticBidAdapter_spec.js +217 -1
- package/test/spec/modules/relaidoBidAdapter_spec.js +21 -20
- package/test/spec/modules/rubiconAnalyticsAdapter_spec.js +100 -81
- package/test/spec/modules/rubiconAnalyticsSchema.json +5 -2
- package/test/spec/modules/seedingAllianceAdapter_spec.js +186 -0
- package/test/spec/modules/sharethroughBidAdapter_spec.js +156 -136
- package/test/spec/modules/slimcutBidAdapter_spec.js +200 -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/tappxBidAdapter_spec.js +39 -3
- package/test/spec/modules/tripleliftBidAdapter_spec.js +2 -0
- package/test/spec/modules/trustxBidAdapter_spec.js +35 -2
- package/test/spec/modules/unicornBidAdapter_spec.js +4 -4
- package/test/spec/modules/visxBidAdapter_spec.js +48 -4
- package/test/spec/modules/weboramaRtdProvider_spec.js +288 -0
- 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/unit/pbjs_api_spec.js +4 -0
- package/test/spec/userSync_spec.js +30 -2
- package/modules/turktelekomBidAdapter.md +0 -49
|
@@ -1,6 +1,9 @@
|
|
|
1
1
|
import { registerBidder } from '../src/adapters/bidderFactory.js';
|
|
2
2
|
import { config } from '../src/config.js';
|
|
3
|
-
import
|
|
3
|
+
import {
|
|
4
|
+
deepAccess, uniques, isArray, getWindowTop, isGptPubadsDefined, isSlotMatchingAdUnitCode, logInfo, logWarn,
|
|
5
|
+
getWindowSelf
|
|
6
|
+
} from '../src/utils.js';
|
|
4
7
|
import {BANNER, VIDEO} from '../src/mediaTypes.js';
|
|
5
8
|
|
|
6
9
|
const BIDDER_CODE = '33across';
|
|
@@ -61,7 +64,7 @@ function _validateBasic(bid) {
|
|
|
61
64
|
}
|
|
62
65
|
|
|
63
66
|
function _validateGUID(bid) {
|
|
64
|
-
const siteID =
|
|
67
|
+
const siteID = deepAccess(bid, 'params.siteId', '') || '';
|
|
65
68
|
if (siteID.trim().match(GUID_PATTERN) === null) {
|
|
66
69
|
return false;
|
|
67
70
|
}
|
|
@@ -70,7 +73,7 @@ function _validateGUID(bid) {
|
|
|
70
73
|
}
|
|
71
74
|
|
|
72
75
|
function _validateBanner(bid) {
|
|
73
|
-
const banner =
|
|
76
|
+
const banner = deepAccess(bid, 'mediaTypes.banner');
|
|
74
77
|
// If there's no banner no need to validate against banner rules
|
|
75
78
|
if (banner === undefined) {
|
|
76
79
|
return true;
|
|
@@ -84,8 +87,8 @@ function _validateBanner(bid) {
|
|
|
84
87
|
}
|
|
85
88
|
|
|
86
89
|
function _validateVideo(bid) {
|
|
87
|
-
const videoAdUnit =
|
|
88
|
-
const videoBidderParams =
|
|
90
|
+
const videoAdUnit = deepAccess(bid, 'mediaTypes.video');
|
|
91
|
+
const videoBidderParams = deepAccess(bid, 'params.video', {});
|
|
89
92
|
|
|
90
93
|
// If there's no video no need to validate against video rules
|
|
91
94
|
if (videoAdUnit === undefined) {
|
|
@@ -145,7 +148,7 @@ function buildRequests(bidRequests, bidderRequest) {
|
|
|
145
148
|
const uspConsent = bidderRequest && bidderRequest.uspConsent;
|
|
146
149
|
const pageUrl = (bidderRequest && bidderRequest.refererInfo) ? (bidderRequest.refererInfo.referer) : (undefined);
|
|
147
150
|
|
|
148
|
-
adapterState.uniqueSiteIds = bidRequests.map(req => req.params.siteId).filter(
|
|
151
|
+
adapterState.uniqueSiteIds = bidRequests.map(req => req.params.siteId).filter(uniques);
|
|
149
152
|
|
|
150
153
|
return bidRequests.map(bidRequest => _createServerRequest(
|
|
151
154
|
{
|
|
@@ -168,13 +171,13 @@ function _createServerRequest({bidRequest, gdprConsent = {}, uspConsent, pageUrl
|
|
|
168
171
|
*/
|
|
169
172
|
ttxRequest.imp = [{}];
|
|
170
173
|
|
|
171
|
-
if (
|
|
174
|
+
if (deepAccess(bidRequest, 'mediaTypes.banner')) {
|
|
172
175
|
ttxRequest.imp[0].banner = {
|
|
173
176
|
..._buildBannerORTB(bidRequest)
|
|
174
177
|
}
|
|
175
178
|
}
|
|
176
179
|
|
|
177
|
-
if (
|
|
180
|
+
if (deepAccess(bidRequest, 'mediaTypes.video')) {
|
|
178
181
|
ttxRequest.imp[0].video = _buildVideoORTB(bidRequest);
|
|
179
182
|
}
|
|
180
183
|
|
|
@@ -279,7 +282,7 @@ function setExtension(obj = {}, key, value) {
|
|
|
279
282
|
|
|
280
283
|
// BUILD REQUESTS: SIZE INFERENCE
|
|
281
284
|
function _transformSizes(sizes) {
|
|
282
|
-
if (
|
|
285
|
+
if (isArray(sizes) && sizes.length === 2 && !isArray(sizes[0])) {
|
|
283
286
|
return [ _getSize(sizes) ];
|
|
284
287
|
}
|
|
285
288
|
|
|
@@ -308,7 +311,7 @@ function _getProduct(bidRequest) {
|
|
|
308
311
|
|
|
309
312
|
// BUILD REQUESTS: BANNER
|
|
310
313
|
function _buildBannerORTB(bidRequest) {
|
|
311
|
-
const bannerAdUnit =
|
|
314
|
+
const bannerAdUnit = deepAccess(bidRequest, 'mediaTypes.banner', {});
|
|
312
315
|
const element = _getAdSlotHTMLElement(bidRequest.adUnitCode);
|
|
313
316
|
|
|
314
317
|
const sizes = _transformSizes(bannerAdUnit.sizes);
|
|
@@ -340,7 +343,7 @@ function _buildBannerORTB(bidRequest) {
|
|
|
340
343
|
const minSize = _getMinSize(sizes);
|
|
341
344
|
|
|
342
345
|
const viewabilityAmount = _isViewabilityMeasurable(element)
|
|
343
|
-
? _getViewability(element,
|
|
346
|
+
? _getViewability(element, getWindowTop(), minSize)
|
|
344
347
|
: NON_MEASURABLE;
|
|
345
348
|
|
|
346
349
|
const ext = contributeViewability(viewabilityAmount);
|
|
@@ -354,8 +357,8 @@ function _buildBannerORTB(bidRequest) {
|
|
|
354
357
|
// BUILD REQUESTS: VIDEO
|
|
355
358
|
// eslint-disable-next-line no-unused-vars
|
|
356
359
|
function _buildVideoORTB(bidRequest) {
|
|
357
|
-
const videoAdUnit =
|
|
358
|
-
const videoBidderParams =
|
|
360
|
+
const videoAdUnit = deepAccess(bidRequest, 'mediaTypes.video', {});
|
|
361
|
+
const videoBidderParams = deepAccess(bidRequest, 'params.video', {});
|
|
359
362
|
|
|
360
363
|
const videoParams = {
|
|
361
364
|
...videoAdUnit,
|
|
@@ -429,23 +432,23 @@ function _getViewability(element, topWin, { w, h } = {}) {
|
|
|
429
432
|
}
|
|
430
433
|
|
|
431
434
|
function _mapAdUnitPathToElementId(adUnitCode) {
|
|
432
|
-
if (
|
|
435
|
+
if (isGptPubadsDefined()) {
|
|
433
436
|
// eslint-disable-next-line no-undef
|
|
434
437
|
const adSlots = googletag.pubads().getSlots();
|
|
435
|
-
const isMatchingAdSlot =
|
|
438
|
+
const isMatchingAdSlot = isSlotMatchingAdUnitCode(adUnitCode);
|
|
436
439
|
|
|
437
440
|
for (let i = 0; i < adSlots.length; i++) {
|
|
438
441
|
if (isMatchingAdSlot(adSlots[i])) {
|
|
439
442
|
const id = adSlots[i].getSlotElementId();
|
|
440
443
|
|
|
441
|
-
|
|
444
|
+
logInfo(`[33Across Adapter] Map ad unit path to HTML element id: '${adUnitCode}' -> ${id}`);
|
|
442
445
|
|
|
443
446
|
return id;
|
|
444
447
|
}
|
|
445
448
|
}
|
|
446
449
|
}
|
|
447
450
|
|
|
448
|
-
|
|
451
|
+
logWarn(`[33Across Adapter] Unable to locate element for ad unit code: '${adUnitCode}'`);
|
|
449
452
|
|
|
450
453
|
return null;
|
|
451
454
|
}
|
|
@@ -546,7 +549,7 @@ function contributeViewability(viewabilityAmount) {
|
|
|
546
549
|
|
|
547
550
|
function _isIframe() {
|
|
548
551
|
try {
|
|
549
|
-
return
|
|
552
|
+
return getWindowSelf() !== getWindowTop();
|
|
550
553
|
} catch (e) {
|
|
551
554
|
return true;
|
|
552
555
|
}
|
|
@@ -579,7 +582,7 @@ function _createBidResponse(response) {
|
|
|
579
582
|
ad: response.seatbid[0].bid[0].adm,
|
|
580
583
|
ttl: response.seatbid[0].bid[0].ttl || 60,
|
|
581
584
|
creativeId: response.seatbid[0].bid[0].crid,
|
|
582
|
-
mediaType:
|
|
585
|
+
mediaType: deepAccess(response.seatbid[0].bid[0], 'ext.ttx.mediaType', BANNER),
|
|
583
586
|
currency: response.cur,
|
|
584
587
|
netRevenue: true
|
|
585
588
|
}
|
|
@@ -591,7 +594,7 @@ function _createBidResponse(response) {
|
|
|
591
594
|
}
|
|
592
595
|
|
|
593
596
|
if (bid.mediaType === VIDEO) {
|
|
594
|
-
const vastType =
|
|
597
|
+
const vastType = deepAccess(response.seatbid[0].bid[0], 'ext.ttx.vastType', 'xml');
|
|
595
598
|
|
|
596
599
|
if (vastType === 'xml') {
|
|
597
600
|
bid.vastXml = bid.ad;
|
package/modules/a4gBidAdapter.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import {registerBidder} from '../src/adapters/bidderFactory.js';
|
|
2
|
-
import
|
|
2
|
+
import { _each } from '../src/utils.js';
|
|
3
3
|
|
|
4
4
|
const A4G_BIDDER_CODE = 'a4g';
|
|
5
5
|
const A4G_CURRENCY = 'USD';
|
|
@@ -28,7 +28,7 @@ export const spec = {
|
|
|
28
28
|
const sizeParams = [];
|
|
29
29
|
const zoneIds = [];
|
|
30
30
|
|
|
31
|
-
|
|
31
|
+
_each(validBidRequests, function(bid) {
|
|
32
32
|
if (!deliveryUrl && typeof bid.params.deliveryUrl === 'string') {
|
|
33
33
|
deliveryUrl = bid.params.deliveryUrl;
|
|
34
34
|
}
|
|
@@ -66,7 +66,7 @@ export const spec = {
|
|
|
66
66
|
|
|
67
67
|
interpretResponse: function(serverResponses, request) {
|
|
68
68
|
const bidResponses = [];
|
|
69
|
-
|
|
69
|
+
_each(serverResponses.body, function(response) {
|
|
70
70
|
if (response.cpm > 0) {
|
|
71
71
|
const bidResponse = {
|
|
72
72
|
requestId: response.id,
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import
|
|
1
|
+
import { triggerPixel } from '../src/utils.js';
|
|
2
2
|
import {config} from '../src/config.js';
|
|
3
3
|
import {registerBidder} from '../src/adapters/bidderFactory.js';
|
|
4
4
|
import { BANNER, NATIVE, VIDEO } from '../src/mediaTypes.js';
|
|
@@ -79,7 +79,7 @@ export const spec = {
|
|
|
79
79
|
},
|
|
80
80
|
onBidWon: function (bid) {
|
|
81
81
|
if (!bid['nurl']) { return; }
|
|
82
|
-
|
|
82
|
+
triggerPixel(bid['nurl']);
|
|
83
83
|
}
|
|
84
84
|
};
|
|
85
85
|
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
-
import
|
|
3
|
+
import { tryAppendQueryString } from '../src/utils.js';
|
|
4
4
|
import { registerBidder } from '../src/adapters/bidderFactory.js';
|
|
5
5
|
import { config } from '../src/config.js';
|
|
6
6
|
import { BANNER } from '../src/mediaTypes.js';
|
|
@@ -128,11 +128,11 @@ export const spec = {
|
|
|
128
128
|
},
|
|
129
129
|
getUserSyncs: (syncOptions, serverResponses, gdprConsent, uspConsent) => {
|
|
130
130
|
if (gdprConsent && SYNC_ENDPOINT.indexOf('gdpr') === -1) {
|
|
131
|
-
SYNC_ENDPOINT =
|
|
131
|
+
SYNC_ENDPOINT = tryAppendQueryString(SYNC_ENDPOINT, 'gdpr', (gdprConsent.gdprApplies ? 1 : 0));
|
|
132
132
|
}
|
|
133
133
|
|
|
134
134
|
if (gdprConsent && typeof gdprConsent.consentString === 'string' && SYNC_ENDPOINT.indexOf('gdpr_consent') === -1) {
|
|
135
|
-
SYNC_ENDPOINT =
|
|
135
|
+
SYNC_ENDPOINT = tryAppendQueryString(SYNC_ENDPOINT, 'gdpr_consent', gdprConsent.consentString);
|
|
136
136
|
}
|
|
137
137
|
|
|
138
138
|
if (SYNC_ENDPOINT.slice(-1) === '&') {
|
|
@@ -140,7 +140,7 @@ export const spec = {
|
|
|
140
140
|
}
|
|
141
141
|
|
|
142
142
|
/* if (uspConsent) {
|
|
143
|
-
SYNC_ENDPOINT =
|
|
143
|
+
SYNC_ENDPOINT = tryAppendQueryString(SYNC_ENDPOINT, 'us_privacy', uspConsent);
|
|
144
144
|
} */
|
|
145
145
|
let syncs = [];
|
|
146
146
|
if (syncOptions.iframeEnabled) {
|
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
import adapter from '../src/AnalyticsAdapter.js';
|
|
6
6
|
import adapterManager from '../src/adapterManager.js';
|
|
7
7
|
import CONSTANTS from '../src/constants.json';
|
|
8
|
-
import
|
|
8
|
+
import { getWindowTop } from '../src/utils.js';
|
|
9
9
|
|
|
10
10
|
const emptyUrl = '';
|
|
11
11
|
const analyticsType = 'endpoint';
|
|
@@ -13,12 +13,12 @@ const events = Object.keys(CONSTANTS.EVENTS).map(key => CONSTANTS.EVENTS[key]);
|
|
|
13
13
|
const VERSION = '2.0.0';
|
|
14
14
|
|
|
15
15
|
const adagioEnqueue = function adagioEnqueue(action, data) {
|
|
16
|
-
|
|
16
|
+
getWindowTop().ADAGIO.queue.push({ action, data, ts: Date.now() });
|
|
17
17
|
}
|
|
18
18
|
|
|
19
19
|
function canAccessTopWindow() {
|
|
20
20
|
try {
|
|
21
|
-
if (
|
|
21
|
+
if (getWindowTop().location.href) {
|
|
22
22
|
return true;
|
|
23
23
|
}
|
|
24
24
|
} catch (error) {
|
|
@@ -41,7 +41,7 @@ adagioAdapter.enableAnalytics = config => {
|
|
|
41
41
|
return;
|
|
42
42
|
}
|
|
43
43
|
|
|
44
|
-
const w =
|
|
44
|
+
const w = getWindowTop();
|
|
45
45
|
|
|
46
46
|
w.ADAGIO = w.ADAGIO || {};
|
|
47
47
|
w.ADAGIO.queue = w.ADAGIO.queue || [];
|