prebid.js 7.43.0 → 7.45.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/acuityAdsBidAdapter.js +1 -1
- package/dist/adagioBidAdapter.js +1 -1
- package/dist/adbookpspBidAdapter.js +1 -1
- package/dist/adgenerationBidAdapter.js +1 -1
- package/dist/adkernelAdnAnalyticsAdapter.js +1 -1
- package/dist/admixerIdSystem.js +1 -1
- package/dist/adnuntiusBidAdapter.js +1 -1
- package/dist/adqueryBidAdapter.js +1 -1
- package/dist/adqueryIdSystem.js +1 -1
- package/dist/adrelevantisBidAdapter.js +1 -1
- package/dist/adrinoBidAdapter.js +1 -1
- package/dist/adriverIdSystem.js +1 -1
- package/dist/adsinteractiveBidAdapter.js +1 -0
- package/dist/adtrgtmeBidAdapter.js +1 -1
- package/dist/adxcgBidAdapter.js +1 -1
- package/dist/adyoulikeBidAdapter.js +1 -1
- package/dist/aidemBidAdapter.js +1 -1
- package/dist/airgridRtdProvider.js +1 -1
- package/dist/ajaBidAdapter.js +1 -1
- package/dist/akamaiDapRtdProvider.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/appushBidAdapter.js +1 -1
- package/dist/apstreamBidAdapter.js +1 -1
- package/dist/asoBidAdapter.js +1 -1
- package/dist/atsAnalyticsAdapter.js +1 -1
- package/dist/audiencerunBidAdapter.js +1 -1
- package/dist/axonixBidAdapter.js +1 -1
- package/dist/bedigitechBidAdapter.js +1 -0
- package/dist/beyondmediaBidAdapter.js +1 -1
- package/dist/bidglassBidAdapter.js +1 -1
- package/dist/big-richmediaBidAdapter.js +1 -1
- package/dist/bluebillywigBidAdapter.js +1 -1
- package/dist/blueconicRtdProvider.js +1 -1
- package/dist/braveBidAdapter.js +1 -1
- package/dist/bridgewellBidAdapter.js +1 -1
- package/dist/brightMountainMediaBidAdapter.js +1 -1
- package/dist/brightcomBidAdapter.js +1 -1
- package/dist/brightcomSSPBidAdapter.js +1 -1
- package/dist/browsiRtdProvider.js +1 -1
- package/dist/byDataAnalyticsAdapter.js +1 -1
- package/dist/carodaBidAdapter.js +1 -1
- package/dist/chtnwBidAdapter.js +1 -1
- package/dist/coinzillaBidAdapter.js +1 -1
- package/dist/compassBidAdapter.js +1 -1
- package/dist/concertBidAdapter.js +1 -1
- package/dist/connectIdSystem.js +1 -1
- package/dist/connectadBidAdapter.js +1 -1
- package/dist/consumableBidAdapter.js +1 -1
- package/dist/contentexchangeBidAdapter.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/czechAdIdSystem.js +1 -1
- package/dist/dacIdSystem.js +1 -1
- package/dist/deepintentDpesIdSystem.js +1 -1
- package/dist/dependencies.json +15 -0
- package/dist/discoveryBidAdapter.js +1 -1
- package/dist/domainOverrideToRootDomain.js +1 -0
- package/dist/dspxBidAdapter.js +1 -1
- package/dist/eplanningBidAdapter.js +1 -1
- package/dist/feedadBidAdapter.js +1 -1
- package/dist/finativeBidAdapter.js +1 -1
- package/dist/fintezaAnalyticsAdapter.js +1 -1
- package/dist/fledgeForGpt.js +1 -1
- package/dist/freewheel-sspBidAdapter.js +1 -1
- package/dist/ftrackIdSystem.js +1 -1
- package/dist/gdprEnforcement.js +1 -1
- package/dist/glimpseBidAdapter.js +1 -1
- package/dist/globalsunBidAdapter.js +1 -1
- package/dist/gmosspBidAdapter.js +1 -1
- package/dist/gnetBidAdapter.js +1 -1
- package/dist/goldbachBidAdapter.js +1 -1
- package/dist/gravitoIdSystem.js +1 -1
- package/dist/greenbidsAnalyticsAdapter.js +1 -0
- package/dist/gridBidAdapter.js +1 -1
- package/dist/gridNMBidAdapter.js +1 -1
- package/dist/growthCodeAnalyticsAdapter.js +1 -1
- package/dist/growthCodeIdSystem.js +1 -1
- package/dist/gumgumBidAdapter.js +1 -1
- package/dist/h12mediaBidAdapter.js +1 -1
- package/dist/hadronAnalyticsAdapter.js +1 -1
- package/dist/hadronIdSystem.js +1 -1
- package/dist/hadronRtdProvider.js +1 -1
- package/dist/id5IdSystem.js +1 -1
- package/dist/idWardRtdProvider.js +1 -1
- package/dist/identityLinkIdSystem.js +1 -1
- package/dist/idxIdSystem.js +1 -1
- package/dist/imRtdProvider.js +1 -1
- package/dist/impactifyBidAdapter.js +1 -1
- package/dist/improvedigitalBidAdapter.js +1 -1
- package/dist/imuIdSystem.js +1 -1
- package/dist/inmarBidAdapter.js +1 -1
- package/dist/insticatorBidAdapter.js +1 -1
- package/dist/intentIqIdSystem.js +1 -1
- package/dist/invibesBidAdapter.js +1 -1
- package/dist/iqzoneBidAdapter.js +1 -1
- package/dist/ivsBidAdapter.js +1 -0
- package/dist/ixBidAdapter.js +1 -1
- package/dist/jixieBidAdapter.js +1 -1
- package/dist/justpremiumBidAdapter.js +1 -1
- package/dist/jwplayerVideoProvider.js +1 -1
- package/dist/kargoBidAdapter.js +1 -1
- package/dist/koblerBidAdapter.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/liveIntentIdSystem.js +1 -1
- package/dist/liveyieldAnalyticsAdapter.js +1 -1
- package/dist/logicadBidAdapter.js +1 -1
- package/dist/loglyliftBidAdapter.js +1 -1
- package/dist/lotamePanoramaIdSystem.js +1 -1
- package/dist/luponmediaBidAdapter.js +1 -1
- package/dist/magniteAnalyticsAdapter.js +1 -1
- package/dist/malltvAnalyticsAdapter.js +1 -1
- package/dist/marsmediaBidAdapter.js +1 -1
- package/dist/mathildeadsBidAdapter.js +1 -1
- package/dist/mediafuseBidAdapter.js +1 -1
- package/dist/mediagoBidAdapter.js +1 -1
- package/dist/mediakeysBidAdapter.js +1 -1
- package/dist/medianetBidAdapter.js +1 -1
- package/dist/mediasquareBidAdapter.js +1 -1
- package/dist/merkleIdSystem.js +1 -1
- package/dist/mgidBidAdapter.js +1 -1
- package/dist/mgidRtdProvider.js +1 -1
- package/dist/minutemediaBidAdapter.js +1 -1
- package/dist/minutemediaplusBidAdapter.js +1 -1
- package/dist/mwOpenLinkIdSystem.js +1 -1
- package/dist/naveggIdSystem.js +1 -1
- package/dist/nexx360BidAdapter.js +1 -1
- package/dist/nobidBidAdapter.js +1 -1
- package/dist/not-for-prod/prebid.js +232 -227
- package/dist/novatiqIdSystem.js +1 -1
- package/dist/oguryBidAdapter.js +1 -1
- package/dist/onetagBidAdapter.js +1 -1
- package/dist/onomagicBidAdapter.js +1 -1
- package/dist/ooloAnalyticsAdapter.js +1 -1
- package/dist/openxBidAdapter.js +1 -1
- package/dist/openxOrtbBidAdapter.js +1 -1
- package/dist/operaadsBidAdapter.js +1 -1
- package/dist/optidigitalBidAdapter.js +1 -1
- package/dist/ortbConverter.js +1 -1
- package/dist/outbrainBidAdapter.js +1 -1
- package/dist/parrableIdSystem.js +1 -1
- package/dist/permutiveRtdProvider.js +1 -1
- package/dist/pixfutureBidAdapter.js +1 -1
- package/dist/prebid-core.js +1 -1
- package/dist/prebidServerBidAdapter.js +1 -1
- package/dist/prebidmanagerAnalyticsAdapter.js +1 -1
- package/dist/pubCommonId.js +1 -1
- package/dist/publinkIdSystem.js +1 -1
- package/dist/pubmaticAnalyticsAdapter.js +1 -1
- package/dist/pubmaticBidAdapter.js +1 -1
- package/dist/pubwiseAnalyticsAdapter.js +1 -1
- package/dist/pubxBidAdapter.js +1 -1
- package/dist/pxyzBidAdapter.js +1 -1
- package/dist/quantcastBidAdapter.js +1 -1
- package/dist/quantcastIdSystem.js +1 -1
- package/dist/readpeakBidAdapter.js +1 -1
- package/dist/realvuAnalyticsAdapter.js +1 -1
- package/dist/relaidoBidAdapter.js +1 -1
- package/dist/rhythmoneBidAdapter.js +1 -1
- package/dist/riseBidAdapter.js +1 -1
- package/dist/roxotAnalyticsAdapter.js +1 -1
- package/dist/rtbhouseBidAdapter.js +1 -1
- package/dist/rtdModule.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/sharedIdSystem.js +1 -1
- package/dist/sharethroughAnalyticsAdapter.js +1 -1
- package/dist/sharethroughBidAdapter.js +1 -1
- package/dist/shinezBidAdapter.js +1 -1
- package/dist/sigmoidAnalyticsAdapter.js +1 -1
- package/dist/smaatoBidAdapter.js +1 -1
- package/dist/smartadserverBidAdapter.js +1 -1
- package/dist/smarthubBidAdapter.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/staqAnalyticsAdapter.js +1 -1
- package/dist/stroeerCoreBidAdapter.js +1 -1
- package/dist/stvBidAdapter.js +1 -1
- package/dist/sublimeBidAdapter.js +1 -1
- package/dist/synacormediaBidAdapter.js +1 -1
- package/dist/taboolaBidAdapter.js +1 -1
- package/dist/targetVideoBidAdapter.js +1 -1
- package/dist/teadsBidAdapter.js +1 -1
- package/dist/teadsIdSystem.js +1 -1
- package/dist/trionBidAdapter.js +1 -1
- package/dist/tripleliftBidAdapter.js +1 -1
- package/dist/truereachBidAdapter.js +1 -1
- package/dist/trustpidSystem.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/userId.js +1 -1
- package/dist/validationFpdModule.js +1 -1
- package/dist/vidazooBidAdapter.js +1 -1
- package/dist/videobyteBidAdapter.js +1 -1
- package/dist/videoheroesBidAdapter.js +1 -1
- package/dist/vidoomyBidAdapter.js +1 -1
- package/dist/visiblemeasuresBidAdapter.js +1 -1
- package/dist/visxBidAdapter.js +1 -1
- package/dist/vrtcalBidAdapter.js +1 -1
- package/dist/vuukleBidAdapter.js +1 -1
- package/dist/weboramaRtdProvider.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/dist/yieldoneBidAdapter.js +1 -1
- package/dist/yuktamediaAnalyticsAdapter.js +1 -1
- package/dist/zeotapIdPlusIdSystem.js +1 -1
- package/dist/zeta_global_sspBidAdapter.js +1 -1
- package/libraries/domainOverrideToRootDomain/index.js +39 -0
- package/libraries/ortbConverter/converter.js +3 -2
- package/modules/33acrossIdSystem.js +5 -2
- package/modules/acuityAdsBidAdapter.js +1 -1
- package/modules/adagioBidAdapter.js +3 -4
- package/modules/adkernelAdnAnalyticsAdapter.js +4 -2
- package/modules/admixerIdSystem.js +4 -2
- package/modules/adnuntiusBidAdapter.js +1 -1
- package/modules/adqueryBidAdapter.js +1 -1
- package/modules/adqueryIdSystem.js +2 -1
- package/modules/adrinoBidAdapter.js +24 -16
- package/modules/adriverIdSystem.js +3 -2
- package/modules/adsinteractiveBidAdapter.js +144 -0
- package/modules/adsinteractiveBidAdapter.md +31 -0
- package/modules/adyoulikeBidAdapter.js +2 -3
- package/modules/aidemBidAdapter.js +5 -0
- package/modules/airgridRtdProvider.js +4 -2
- package/modules/ajaBidAdapter.js +38 -16
- package/modules/akamaiDapRtdProvider.js +2 -1
- package/modules/amxBidAdapter.js +12 -10
- package/modules/amxIdSystem.js +23 -20
- package/modules/amxIdSystem.md +7 -7
- package/modules/appnexusBidAdapter.js +8 -8
- package/modules/appushBidAdapter.js +1 -1
- package/modules/apstreamBidAdapter.js +1 -1
- package/modules/atsAnalyticsAdapter.js +4 -2
- package/modules/audiencerunBidAdapter.js +9 -10
- package/modules/bedigitechBidAdapter.js +67 -0
- package/modules/bedigitechBidAdapter.md +32 -0
- package/modules/beyondmediaBidAdapter.js +1 -1
- package/modules/bluebillywigBidAdapter.js +2 -4
- package/modules/blueconicRtdProvider.js +2 -1
- package/modules/braveBidAdapter.js +1 -1
- package/modules/brightcomBidAdapter.js +1 -2
- package/modules/brightcomSSPBidAdapter.js +1 -2
- package/modules/browsiRtdProvider.js +4 -2
- package/modules/byDataAnalyticsAdapter.js +6 -3
- package/modules/coinzillaBidAdapter.js +1 -2
- package/modules/compassBidAdapter.js +1 -1
- package/modules/concertBidAdapter.js +14 -7
- package/modules/connectIdSystem.js +96 -21
- package/modules/connectIdSystem.md +6 -5
- package/modules/connectadBidAdapter.js +2 -4
- package/modules/contentexchangeBidAdapter.js +1 -1
- package/modules/craftBidAdapter.js +29 -24
- package/modules/criteoBidAdapter.js +4 -2
- package/modules/criteoIdSystem.js +6 -2
- package/modules/czechAdIdSystem.js +3 -2
- package/modules/dacIdSystem.js +4 -3
- package/modules/deepintentDpesIdSystem.js +3 -2
- package/modules/discoveryBidAdapter.js +1 -1
- package/modules/dspxBidAdapter.js +223 -15
- package/modules/fintezaAnalyticsAdapter.js +5 -3
- package/modules/fledgeForGpt.js +54 -6
- package/modules/freewheel-sspBidAdapter.js +8 -0
- package/modules/ftrackIdSystem.js +6 -6
- package/modules/gdprEnforcement.js +56 -68
- package/modules/glimpseBidAdapter.js +2 -6
- package/modules/globalsunBidAdapter.js +1 -1
- package/modules/gnetBidAdapter.js +1 -2
- package/modules/gravitoIdSystem.js +5 -3
- package/modules/greenbidsAnalyticsAdapter.js +181 -0
- package/modules/greenbidsAnalyticsAdapter.md +23 -0
- package/modules/gridBidAdapter.js +14 -8
- package/modules/gridNMBidAdapter.js +1 -1
- package/modules/growthCodeAnalyticsAdapter.js +3 -2
- package/modules/growthCodeIdSystem.js +21 -17
- package/modules/gumgumBidAdapter.js +8 -18
- package/modules/hadronAnalyticsAdapter.js +5 -3
- package/modules/hadronIdSystem.js +3 -1
- package/modules/hadronRtdProvider.js +4 -2
- package/modules/id5IdSystem.js +4 -2
- package/modules/idWardRtdProvider.js +2 -1
- package/modules/identityLinkIdSystem.js +5 -2
- package/modules/idxIdSystem.js +3 -2
- package/modules/imRtdProvider.js +3 -1
- package/modules/impactifyBidAdapter.js +2 -4
- package/modules/imuIdSystem.js +6 -3
- package/modules/insticatorBidAdapter.js +1 -1
- package/modules/intentIqIdSystem.js +3 -2
- package/modules/invibesBidAdapter.js +1 -1
- package/modules/iqzoneBidAdapter.js +1 -1
- package/modules/ivsBidAdapter.js +85 -0
- package/modules/ivsBidAdapter.md +34 -0
- package/modules/ixBidAdapter.js +43 -106
- package/modules/jixieBidAdapter.js +3 -6
- package/modules/jwplayerVideoProvider.js +25 -32
- package/modules/kargoBidAdapter.js +1 -1
- package/modules/koblerBidAdapter.js +1 -2
- package/modules/kueezBidAdapter.js +1 -1
- package/modules/kueezRtbBidAdapter.js +1 -1
- package/modules/liveIntentIdSystem.js +11 -2
- package/modules/lotamePanoramaIdSystem.js +3 -2
- package/modules/luponmediaBidAdapter.js +1 -1
- package/modules/magniteAnalyticsAdapter.js +101 -9
- package/modules/mathildeadsBidAdapter.js +1 -1
- package/modules/mediafuseBidAdapter.js +1 -1
- package/modules/mediagoBidAdapter.js +1 -1
- package/modules/mediakeysBidAdapter.js +2 -3
- package/modules/medianetBidAdapter.js +1 -1
- package/modules/merkleIdSystem.js +2 -1
- package/modules/mgidBidAdapter.js +179 -27
- package/modules/mgidRtdProvider.js +3 -1
- package/modules/minutemediaBidAdapter.js +1 -1
- package/modules/minutemediaplusBidAdapter.js +1 -1
- package/modules/mwOpenLinkIdSystem.js +3 -2
- package/modules/naveggIdSystem.js +3 -2
- package/modules/nexx360BidAdapter.js +0 -1
- package/modules/nobidBidAdapter.js +1 -1
- package/modules/novatiqIdSystem.js +6 -3
- package/modules/oguryBidAdapter.js +3 -2
- package/modules/onetagBidAdapter.js +1 -1
- package/modules/onomagicBidAdapter.js +1 -2
- package/modules/openxBidAdapter.js +192 -563
- package/modules/openxBidAdapter.md +22 -20
- package/modules/openxOrtbBidAdapter.js +24 -10
- package/modules/openxOrtbBidAdapter.md +11 -8
- package/modules/operaadsBidAdapter.js +1 -1
- package/modules/parrableIdSystem.js +4 -2
- package/modules/permutiveRtdProvider.js +2 -1
- package/modules/prebidServerBidAdapter/index.js +9 -3
- package/modules/prebidServerBidAdapter/ortbConverter.js +12 -2
- package/modules/prebidmanagerAnalyticsAdapter.js +3 -2
- package/modules/pubCommonId.js +6 -3
- package/modules/publinkIdSystem.js +2 -1
- package/modules/pubmaticAnalyticsAdapter.js +12 -1
- package/modules/pubmaticBidAdapter.js +193 -223
- package/modules/pubwiseAnalyticsAdapter.js +5 -3
- package/modules/pubxBidAdapter.js +5 -2
- package/modules/quantcastBidAdapter.js +1 -1
- package/modules/quantcastIdSystem.js +5 -3
- package/modules/realvuAnalyticsAdapter.js +6 -3
- package/modules/riseBidAdapter.js +1 -1
- package/modules/roxotAnalyticsAdapter.js +5 -2
- package/modules/rtbhouseBidAdapter.js +5 -3
- package/modules/rtdModule/index.js +3 -0
- package/modules/rubiconAnalyticsAdapter.js +3 -2
- package/modules/rubiconBidAdapter.js +1 -0
- package/modules/sharedIdSystem.js +16 -36
- package/modules/sharethroughBidAdapter.js +2 -3
- package/modules/shinezBidAdapter.js +1 -1
- package/modules/sigmoidAnalyticsAdapter.js +4 -2
- package/modules/smartadserverBidAdapter.js +2 -3
- package/modules/smarthubBidAdapter.js +1 -1
- package/modules/sovrnBidAdapter.js +2 -3
- package/modules/staqAnalyticsAdapter.js +5 -3
- package/modules/stroeerCoreBidAdapter.js +3 -2
- package/modules/synacormediaBidAdapter.js +1 -3
- package/modules/taboolaBidAdapter.js +4 -2
- package/modules/teadsBidAdapter.js +1 -1
- package/modules/teadsIdSystem.js +2 -1
- package/modules/tripleliftBidAdapter.js +1 -1
- package/modules/truereachBidAdapter.js +1 -2
- package/modules/trustpidSystem.js +3 -2
- package/modules/ttdBidAdapter.js +11 -5
- package/modules/uid2IdSystem.js +3 -2
- package/modules/undertoneBidAdapter.js +1 -0
- package/modules/userId/eids.js +18 -0
- package/modules/userId/eids.md +16 -0
- package/modules/userId/index.js +5 -2
- package/modules/validationFpdModule/index.js +3 -2
- package/modules/vidazooBidAdapter.js +14 -5
- package/modules/videoheroesBidAdapter.js +1 -1
- package/modules/vidoomyBidAdapter.js +51 -2
- package/modules/visiblemeasuresBidAdapter.js +1 -1
- package/modules/vrtcalBidAdapter.js +1 -1
- package/modules/weboramaRtdProvider.js +3 -1
- package/modules/yieldmoBidAdapter.js +2 -3
- package/modules/yieldoneBidAdapter.js +1 -1
- package/modules/yuktamediaAnalyticsAdapter.js +4 -2
- package/modules/zeotapIdPlusIdSystem.js +3 -2
- package/modules/zeta_global_sspBidAdapter.js +3 -0
- package/package.json +1 -1
- package/plugins/eslint/validateImports.js +13 -14
- package/plugins/pbjsGlobals.js +3 -1
- package/src/Renderer.js +2 -1
- package/src/activities/modules.js +5 -0
- package/src/adapterManager.js +4 -8
- package/src/adapters/bidderFactory.js +30 -16
- package/src/consentHandler.js +42 -0
- package/src/native.js +5 -1
- package/src/refererDetection.js +39 -21
- package/src/secureCreatives.js +2 -2
- package/src/storageManager.js +33 -47
- package/src/userSync.js +7 -4
- package/test/spec/auctionmanager_spec.js +2 -2
- package/test/spec/libraries/domainOverrideToRootDomain/index_spec.js +77 -0
- package/test/spec/modules/33acrossIdSystem_spec.js +1 -1
- package/test/spec/modules/acuityAdsBidAdapter_spec.js +2 -1
- package/test/spec/modules/adagioBidAdapter_spec.js +11 -17
- package/test/spec/modules/admixerIdSystem_spec.js +0 -3
- package/test/spec/modules/adnuntiusBidAdapter_spec.js +6 -6
- package/test/spec/modules/adrinoBidAdapter_spec.js +65 -34
- package/test/spec/modules/adsinteractiveBidAdapter_spec.js +207 -0
- package/test/spec/modules/adyoulikeBidAdapter_spec.js +13 -11
- package/test/spec/modules/aidemBidAdapter_spec.js +72 -8
- package/test/spec/modules/amxBidAdapter_spec.js +4 -1
- package/test/spec/modules/amxIdSystem_spec.js +13 -26
- package/test/spec/modules/appushBidAdapter_spec.js +2 -1
- package/test/spec/modules/atsAnalyticsAdapter_spec.js +2 -2
- package/test/spec/modules/audiencerunBidAdapter_spec.js +8 -11
- package/test/spec/modules/bedigitechBidAdapter_spec.js +145 -0
- package/test/spec/modules/beyondmediaBidAdapter_spec.js +2 -1
- package/test/spec/modules/bluebillywigBidAdapter_spec.js +1 -3
- package/test/spec/modules/compassBidAdapter_spec.js +2 -1
- package/test/spec/modules/concertBidAdapter_spec.js +3 -8
- package/test/spec/modules/connectIdSystem_spec.js +420 -242
- package/test/spec/modules/connectadBidAdapter_spec.js +11 -3
- package/test/spec/modules/contentexchangeBidAdapter_spec.js +2 -1
- package/test/spec/modules/criteoBidAdapter_spec.js +29 -0
- package/test/spec/modules/criteoIdSystem_spec.js +38 -0
- package/test/spec/modules/datablocksBidAdapter_spec.js +0 -1
- package/test/spec/modules/dspxBidAdapter_spec.js +184 -13
- package/test/spec/modules/eids_spec.js +30 -0
- package/test/spec/modules/fledge_spec.js +173 -2
- package/test/spec/modules/freewheel-sspBidAdapter_spec.js +37 -0
- package/test/spec/modules/gdprEnforcement_spec.js +134 -164
- package/test/spec/modules/globalsunBidAdapter_spec.js +2 -1
- package/test/spec/modules/greenbidsAnalyticsAdapter_spec.js +418 -0
- package/test/spec/modules/gridBidAdapter_spec.js +9 -5
- package/test/spec/modules/growthCodeIdSystem_spec.js +2 -1
- package/test/spec/modules/id5IdSystem_spec.js +41 -4
- package/test/spec/modules/identityLinkIdSystem_spec.js +2 -2
- package/test/spec/modules/improvedigitalBidAdapter_spec.js +10 -3
- package/test/spec/modules/iqzoneBidAdapter_spec.js +2 -1
- package/test/spec/modules/ivsBidAdapter_spec.js +197 -0
- package/test/spec/modules/ixBidAdapter_spec.js +84 -71
- package/test/spec/modules/jixieBidAdapter_spec.js +42 -60
- package/test/spec/modules/koblerBidAdapter_spec.js +0 -20
- package/test/spec/modules/liveIntentIdSystem_spec.js +10 -0
- package/test/spec/modules/luponmediaBidAdapter_spec.js +1 -1
- package/test/spec/modules/magniteAnalyticsAdapter_spec.js +129 -1
- package/test/spec/modules/mathildeadsBidAdapter_spec.js +2 -1
- package/test/spec/modules/mediakeysBidAdapter_spec.js +12 -16
- package/test/spec/modules/mgidBidAdapter_spec.js +184 -36
- package/test/spec/modules/oguryBidAdapter_spec.js +19 -4
- package/test/spec/modules/openxBidAdapter_spec.js +1157 -1936
- package/test/spec/modules/openxOrtbBidAdapter_spec.js +108 -50
- package/test/spec/modules/prebidServerBidAdapter_spec.js +68 -2
- package/test/spec/modules/publinkIdSystem_spec.js +3 -2
- package/test/spec/modules/pubmaticBidAdapter_spec.js +67 -10
- package/test/spec/modules/pubxBidAdapter_spec.js +10 -2
- package/test/spec/modules/realTimeDataModule_spec.js +22 -0
- package/test/spec/modules/realvuAnalyticsAdapter_spec.js +0 -1
- package/test/spec/modules/relaidoBidAdapter_spec.js +5 -5
- package/test/spec/modules/rubiconBidAdapter_spec.js +2 -1
- package/test/spec/modules/sharedIdSystem_spec.js +0 -46
- package/test/spec/modules/sharethroughBidAdapter_spec.js +99 -22
- package/test/spec/modules/smartadserverBidAdapter_spec.js +74 -12
- package/test/spec/modules/smarthubBidAdapter_spec.js +2 -1
- package/test/spec/modules/sovrnBidAdapter_spec.js +25 -6
- package/test/spec/modules/stroeerCoreBidAdapter_spec.js +13 -18
- package/test/spec/modules/synacormediaBidAdapter_spec.js +0 -26
- package/test/spec/modules/taboolaBidAdapter_spec.js +101 -0
- package/test/spec/modules/ttdBidAdapter_spec.js +25 -7
- package/test/spec/modules/userId_spec.js +68 -0
- package/test/spec/modules/vidazooBidAdapter_spec.js +13 -0
- package/test/spec/modules/videoModule/submodules/jwplayerVideoProvider_spec.js +17 -4
- package/test/spec/modules/vidoomyBidAdapter_spec.js +68 -0
- package/test/spec/modules/visiblemeasuresBidAdapter_spec.js +2 -1
- package/test/spec/modules/vrtcalBidAdapter_spec.js +3 -2
- package/test/spec/modules/yieldmoBidAdapter_spec.js +18 -2
- package/test/spec/modules/zeotapIdPlusIdSystem_spec.js +3 -2
- package/test/spec/modules/zeta_global_sspBidAdapter_spec.js +8 -0
- package/test/spec/refererDetection_spec.js +56 -1
- package/test/spec/renderer_spec.js +1 -2
- package/test/spec/unit/core/adapterManager_spec.js +21 -58
- package/test/spec/unit/core/bidderFactory_spec.js +28 -10
- package/test/spec/unit/core/consentHandler_spec.js +29 -1
- package/test/spec/unit/core/storageManager_spec.js +31 -21
- package/test/spec/userSync_spec.js +2 -1
|
@@ -9,30 +9,31 @@ Maintainer: team-openx@openx.com
|
|
|
9
9
|
# Description
|
|
10
10
|
|
|
11
11
|
Module that connects to OpenX's demand sources.
|
|
12
|
-
Note
|
|
13
|
-
|
|
12
|
+
Note that this adapter mirrors openxOrtbBidAdapter and any updates must be
|
|
13
|
+
completed in both adapters.
|
|
14
|
+
openxOrtbBidAdapter will be removed in a future release and should not be used.
|
|
15
|
+
Please note you should only include either openxBidAdapter or openxOrtbBidAdapter in your build.
|
|
14
16
|
|
|
15
17
|
# Bid Parameters
|
|
16
18
|
## Banner
|
|
17
19
|
|
|
18
|
-
| Name
|
|
19
|
-
|
|
20
|
-
| `delDomain`
|
|
21
|
-
| `unit`
|
|
22
|
-
| `customParams`
|
|
23
|
-
| `customFloor`
|
|
24
|
-
| `doNotTrack`
|
|
25
|
-
| `coppa`
|
|
26
|
-
|
|
27
|
-
** platform is deprecated. Please use delDomain instead. If you have any questions please contact your representative.
|
|
20
|
+
| Name | Scope | Type | Description | Example
|
|
21
|
+
| ---- | ----- | ---- | ----------- | -------
|
|
22
|
+
| `delDomain` or `platform` | required | String | OpenX delivery domain or platform id provided by your OpenX representative. | "PUBLISHER-d.openx.net" or "555not5a-real-plat-form-id0123456789"
|
|
23
|
+
| `unit` | required | String | OpenX ad unit ID provided by your OpenX representative. | "1611023122"
|
|
24
|
+
| `customParams` | optional | Object | User-defined targeting key-value pairs. customParams applies to a specific unit. | `{key1: "v1", key2: ["v2","v3"]}`
|
|
25
|
+
| `customFloor` | optional | Number | Minimum price in USD. customFloor applies to a specific unit. For example, use the following value to set a $1.50 floor: 1.50 <br/><br/> **WARNING:**<br/> Misuse of this parameter can impact revenue | 1.50
|
|
26
|
+
| `doNotTrack` | optional | Boolean | Prevents advertiser from using data for this user. <br/><br/> **WARNING:**<br/> Request-level setting. May impact revenue. | true
|
|
27
|
+
| `coppa` | optional | Boolean | Enables Child's Online Privacy Protection Act (COPPA) regulations. Use of `pbjs.setConfig({coppa: true});` is now preferred. | true
|
|
28
28
|
|
|
29
29
|
## Video
|
|
30
30
|
|
|
31
|
-
| Name
|
|
32
|
-
|
|
33
|
-
| `unit`
|
|
34
|
-
| `delDomain` | required | String
|
|
35
|
-
| `
|
|
31
|
+
| Name | Scope | Type | Description | Example
|
|
32
|
+
| ---- | ----- | ---- | ----------- | -------
|
|
33
|
+
| `unit` | required | String | OpenX ad unit ID provided by your OpenX representative. | "1611023122"
|
|
34
|
+
| `delDomain` | required | String | OpenX delivery domain provided by your OpenX representative. | "PUBLISHER-d.openx.net"
|
|
35
|
+
| `video` | optional | OpenRTB video subtypes | Use of adUnit.mediaTypes.video is now preferred. | `{ video: {mimes: ['video/mp4']}`
|
|
36
|
+
|
|
36
37
|
|
|
37
38
|
# Example
|
|
38
39
|
```javascript
|
|
@@ -70,7 +71,8 @@ var adUnits = [
|
|
|
70
71
|
mediaTypes: {
|
|
71
72
|
video: {
|
|
72
73
|
playerSize: [640, 480],
|
|
73
|
-
context: 'instream'
|
|
74
|
+
context: 'instream',
|
|
75
|
+
mimes: ['video/x-ms-wmv, video/mp4']
|
|
74
76
|
}
|
|
75
77
|
},
|
|
76
78
|
bids: [{
|
|
@@ -79,10 +81,10 @@ var adUnits = [
|
|
|
79
81
|
unit: '1611023124',
|
|
80
82
|
delDomain: 'PUBLISHER-d.openx.net',
|
|
81
83
|
video: {
|
|
82
|
-
mimes: ['video/x-ms-wmv, video/mp4']
|
|
84
|
+
mimes: ['video/x-ms-wmv, video/mp4'] // mediaTypes.video preferred
|
|
83
85
|
}
|
|
84
86
|
}
|
|
85
|
-
}]
|
|
87
|
+
}]p
|
|
86
88
|
}
|
|
87
89
|
];
|
|
88
90
|
```
|
|
@@ -29,13 +29,6 @@ const converter = ortbConverter({
|
|
|
29
29
|
},
|
|
30
30
|
imp(buildImp, bidRequest, context) {
|
|
31
31
|
const imp = buildImp(bidRequest, context);
|
|
32
|
-
if (bidRequest.mediaTypes[VIDEO]?.context === 'outstream') {
|
|
33
|
-
imp.video.placement = imp.video.placement || 4;
|
|
34
|
-
}
|
|
35
|
-
if (imp.ext?.ae && !context.bidderRequest.fledgeEnabled) {
|
|
36
|
-
// TODO: we may want to standardize this and move fledge logic to ortbConverter
|
|
37
|
-
delete imp.ext.ae;
|
|
38
|
-
}
|
|
39
32
|
mergeDeep(imp, {
|
|
40
33
|
tagid: bidRequest.params.unit,
|
|
41
34
|
ext: {
|
|
@@ -59,6 +52,9 @@ const converter = ortbConverter({
|
|
|
59
52
|
}
|
|
60
53
|
})
|
|
61
54
|
const bid = context.bidRequests[0];
|
|
55
|
+
if (bid.params.coppa) {
|
|
56
|
+
utils.deepSetValue(req, 'regs.coppa', 1);
|
|
57
|
+
}
|
|
62
58
|
if (bid.params.doNotTrack) {
|
|
63
59
|
utils.deepSetValue(req, 'device.dnt', 1);
|
|
64
60
|
}
|
|
@@ -106,10 +102,12 @@ const converter = ortbConverter({
|
|
|
106
102
|
let fledgeAuctionConfigs = utils.deepAccess(ortbResponse, 'ext.fledge_auction_configs');
|
|
107
103
|
if (fledgeAuctionConfigs) {
|
|
108
104
|
fledgeAuctionConfigs = Object.entries(fledgeAuctionConfigs).map(([bidId, cfg]) => {
|
|
109
|
-
return
|
|
105
|
+
return {
|
|
110
106
|
bidId,
|
|
111
|
-
|
|
112
|
-
|
|
107
|
+
config: Object.assign({
|
|
108
|
+
auctionSignals: {},
|
|
109
|
+
}, cfg)
|
|
110
|
+
}
|
|
113
111
|
});
|
|
114
112
|
return {
|
|
115
113
|
bids: response.bids,
|
|
@@ -129,6 +127,22 @@ const converter = ortbConverter({
|
|
|
129
127
|
if (floor.bidfloorcur === 'USD') {
|
|
130
128
|
Object.assign(imp, floor);
|
|
131
129
|
}
|
|
130
|
+
},
|
|
131
|
+
video(orig, imp, bidRequest, context) {
|
|
132
|
+
if (FEATURES.VIDEO) {
|
|
133
|
+
// `orig` is the video imp processor, which looks at bidRequest.mediaTypes[VIDEO]
|
|
134
|
+
// to populate imp.video
|
|
135
|
+
// alter its input `bidRequest` to also pick up parameters from `bidRequest.params`
|
|
136
|
+
let videoParams = bidRequest.mediaTypes[VIDEO];
|
|
137
|
+
if (videoParams) {
|
|
138
|
+
videoParams = Object.assign({}, videoParams, bidRequest.params.video);
|
|
139
|
+
bidRequest = {...bidRequest, mediaTypes: {[VIDEO]: videoParams}}
|
|
140
|
+
}
|
|
141
|
+
orig(imp, bidRequest, context);
|
|
142
|
+
if (imp.video && videoParams?.context === 'outstream') {
|
|
143
|
+
imp.video.placement = imp.video.placement || 4;
|
|
144
|
+
}
|
|
145
|
+
}
|
|
132
146
|
}
|
|
133
147
|
}
|
|
134
148
|
}
|
|
@@ -1,15 +1,17 @@
|
|
|
1
1
|
# Overview
|
|
2
2
|
|
|
3
3
|
```
|
|
4
|
-
Module Name: OpenX
|
|
4
|
+
Module Name: OpenX Bidder Adapter
|
|
5
5
|
Module Type: Bidder Adapter
|
|
6
6
|
Maintainer: team-openx@openx.com
|
|
7
7
|
```
|
|
8
8
|
|
|
9
9
|
# Description
|
|
10
|
+
DEPRECATED. Use openxBidAdapter.
|
|
10
11
|
|
|
11
|
-
This
|
|
12
|
-
|
|
12
|
+
This adapter was originally an adapter used to test OpenX serving architecture changes.
|
|
13
|
+
This adapter now mirrors openxBidAdapter and this adapter will be removed in a future release. Please use openxBidAdapter.
|
|
14
|
+
Please note you should only include either openxBidAdapter or openxOrtbBidAdapter in your build.
|
|
13
15
|
|
|
14
16
|
# Bid Parameters
|
|
15
17
|
## Banner
|
|
@@ -21,7 +23,7 @@ Publishers are welcome to test this adapter and give feedback. Please note you s
|
|
|
21
23
|
| `customParams` | optional | Object | User-defined targeting key-value pairs. customParams applies to a specific unit. | `{key1: "v1", key2: ["v2","v3"]}`
|
|
22
24
|
| `customFloor` | optional | Number | Minimum price in USD. customFloor applies to a specific unit. For example, use the following value to set a $1.50 floor: 1.50 <br/><br/> **WARNING:**<br/> Misuse of this parameter can impact revenue | 1.50
|
|
23
25
|
| `doNotTrack` | optional | Boolean | Prevents advertiser from using data for this user. <br/><br/> **WARNING:**<br/> Request-level setting. May impact revenue. | true
|
|
24
|
-
| `coppa` | optional | Boolean | Enables Child's Online Privacy Protection Act (COPPA) regulations. | true
|
|
26
|
+
| `coppa` | optional | Boolean | Enables Child's Online Privacy Protection Act (COPPA) regulations. Use of `pbjs.setConfig({coppa: true});` is now preferred. | true
|
|
25
27
|
|
|
26
28
|
## Video
|
|
27
29
|
|
|
@@ -29,7 +31,7 @@ Publishers are welcome to test this adapter and give feedback. Please note you s
|
|
|
29
31
|
| ---- | ----- | ---- | ----------- | -------
|
|
30
32
|
| `unit` | required | String | OpenX ad unit ID provided by your OpenX representative. | "1611023122"
|
|
31
33
|
| `delDomain` | required | String | OpenX delivery domain provided by your OpenX representative. | "PUBLISHER-d.openx.net"
|
|
32
|
-
| `video` | optional | OpenRTB video subtypes |
|
|
34
|
+
| `video` | optional | OpenRTB video subtypes | Use of adUnit.mediaTypes.video is now preferred. | `{ video: {mimes: ['video/mp4']}`
|
|
33
35
|
|
|
34
36
|
|
|
35
37
|
# Example
|
|
@@ -68,7 +70,8 @@ var adUnits = [
|
|
|
68
70
|
mediaTypes: {
|
|
69
71
|
video: {
|
|
70
72
|
playerSize: [640, 480],
|
|
71
|
-
context: 'instream'
|
|
73
|
+
context: 'instream',
|
|
74
|
+
mimes: ['video/x-ms-wmv, video/mp4']
|
|
72
75
|
}
|
|
73
76
|
},
|
|
74
77
|
bids: [{
|
|
@@ -77,10 +80,10 @@ var adUnits = [
|
|
|
77
80
|
unit: '1611023124',
|
|
78
81
|
delDomain: 'PUBLISHER-d.openx.net',
|
|
79
82
|
video: {
|
|
80
|
-
mimes: ['video/x-ms-wmv, video/mp4']
|
|
83
|
+
mimes: ['video/x-ms-wmv, video/mp4'] // mediaTypes.video preferred
|
|
81
84
|
}
|
|
82
85
|
}
|
|
83
|
-
}]
|
|
86
|
+
}]p
|
|
84
87
|
}
|
|
85
88
|
];
|
|
86
89
|
```
|
|
@@ -228,7 +228,7 @@ function buildOpenRtbBidRequest(bidRequest, bidderRequest) {
|
|
|
228
228
|
// build OpenRTB request body
|
|
229
229
|
const payload = {
|
|
230
230
|
id: bidderRequest.auctionId,
|
|
231
|
-
tmax: bidderRequest.timeout
|
|
231
|
+
tmax: bidderRequest.timeout,
|
|
232
232
|
test: config.getConfig('debug') ? 1 : 0,
|
|
233
233
|
imp: createImp(bidRequest),
|
|
234
234
|
device: getDevice(),
|
|
@@ -14,6 +14,7 @@ import {submodule} from '../src/hook.js';
|
|
|
14
14
|
import {getRefererInfo} from '../src/refererDetection.js';
|
|
15
15
|
import {uspDataHandler} from '../src/adapterManager.js';
|
|
16
16
|
import {getStorageManager} from '../src/storageManager.js';
|
|
17
|
+
import {MODULE_TYPE_UID} from '../src/activities/modules.js';
|
|
17
18
|
|
|
18
19
|
const PARRABLE_URL = 'https://h.parrable.com/prebid';
|
|
19
20
|
const PARRABLE_COOKIE_NAME = '_parrable_id';
|
|
@@ -22,8 +23,9 @@ const LEGACY_ID_COOKIE_NAME = '_parrable_eid';
|
|
|
22
23
|
const LEGACY_OPTOUT_COOKIE_NAME = '_parrable_optout';
|
|
23
24
|
const ONE_YEAR_MS = 364 * 24 * 60 * 60 * 1000;
|
|
24
25
|
const EXPIRE_COOKIE_DATE = 'Thu, 01 Jan 1970 00:00:00 GMT';
|
|
26
|
+
const MODULE_NAME = 'parrableId';
|
|
25
27
|
|
|
26
|
-
const storage = getStorageManager({
|
|
28
|
+
const storage = getStorageManager({moduleType: MODULE_TYPE_UID, moduleName: MODULE_NAME});
|
|
27
29
|
|
|
28
30
|
function getExpirationDate() {
|
|
29
31
|
const oneYearFromNow = new Date(timestamp() + ONE_YEAR_MS);
|
|
@@ -336,7 +338,7 @@ export const parrableIdSubmodule = {
|
|
|
336
338
|
* used to link submodule with config
|
|
337
339
|
* @type {string}
|
|
338
340
|
*/
|
|
339
|
-
name:
|
|
341
|
+
name: MODULE_NAME,
|
|
340
342
|
/**
|
|
341
343
|
* Global Vendor List ID
|
|
342
344
|
* @type {number}
|
|
@@ -10,6 +10,7 @@ import {submodule} from '../src/hook.js';
|
|
|
10
10
|
import {getStorageManager} from '../src/storageManager.js';
|
|
11
11
|
import {deepAccess, deepSetValue, isFn, logError, mergeDeep, isPlainObject, safeJSONParse, prefixLog} from '../src/utils.js';
|
|
12
12
|
import {includes} from '../src/polyfill.js';
|
|
13
|
+
import {MODULE_TYPE_RTD} from '../src/activities/modules.js';
|
|
13
14
|
|
|
14
15
|
const MODULE_NAME = 'permutive'
|
|
15
16
|
|
|
@@ -20,7 +21,7 @@ export const PERMUTIVE_STANDARD_KEYWORD = 'p_standard'
|
|
|
20
21
|
export const PERMUTIVE_CUSTOM_COHORTS_KEYWORD = 'permutive'
|
|
21
22
|
export const PERMUTIVE_STANDARD_AUD_KEYWORD = 'p_standard_aud'
|
|
22
23
|
|
|
23
|
-
export const storage = getStorageManager({
|
|
24
|
+
export const storage = getStorageManager({moduleType: MODULE_TYPE_RTD, moduleName: MODULE_NAME})
|
|
24
25
|
|
|
25
26
|
function init(moduleConfig, userConsent) {
|
|
26
27
|
readPermutiveModuleConfigFromCache()
|
|
@@ -20,7 +20,7 @@ import {
|
|
|
20
20
|
import CONSTANTS from '../../src/constants.json';
|
|
21
21
|
import adapterManager from '../../src/adapterManager.js';
|
|
22
22
|
import {config} from '../../src/config.js';
|
|
23
|
-
import {isValid} from '../../src/adapters/bidderFactory.js';
|
|
23
|
+
import {addComponentAuction, isValid} from '../../src/adapters/bidderFactory.js';
|
|
24
24
|
import * as events from '../../src/events.js';
|
|
25
25
|
import {includes} from '../../src/polyfill.js';
|
|
26
26
|
import {S2S_VENDORS} from './config.js';
|
|
@@ -496,6 +496,9 @@ export function PrebidServer() {
|
|
|
496
496
|
addBidResponse.reject(adUnit, bid, CONSTANTS.REJECTION_REASON.INVALID);
|
|
497
497
|
}
|
|
498
498
|
}
|
|
499
|
+
},
|
|
500
|
+
onFledge: ({adUnitCode, config}) => {
|
|
501
|
+
addComponentAuction(adUnitCode, config);
|
|
499
502
|
}
|
|
500
503
|
})
|
|
501
504
|
}
|
|
@@ -521,7 +524,7 @@ export function PrebidServer() {
|
|
|
521
524
|
* @param onError {function(String, {})} invoked on HTTP failure - with status message and XHR error
|
|
522
525
|
* @param onBid {function({})} invoked once for each bid in the response - with the bid as returned by interpretResponse
|
|
523
526
|
*/
|
|
524
|
-
export const processPBSRequest = hook('sync', function (s2sBidRequest, bidRequests, ajax, {onResponse, onError, onBid}) {
|
|
527
|
+
export const processPBSRequest = hook('sync', function (s2sBidRequest, bidRequests, ajax, {onResponse, onError, onBid, onFledge}) {
|
|
525
528
|
let { gdprConsent } = getConsentData(bidRequests);
|
|
526
529
|
const adUnits = deepClone(s2sBidRequest.ad_units);
|
|
527
530
|
|
|
@@ -545,8 +548,11 @@ export const processPBSRequest = hook('sync', function (s2sBidRequest, bidReques
|
|
|
545
548
|
let result;
|
|
546
549
|
try {
|
|
547
550
|
result = JSON.parse(response);
|
|
548
|
-
const bids = s2sBidRequest.metrics.measureTime('interpretResponse', () => interpretPBSResponse(result, request)
|
|
551
|
+
const {bids, fledgeAuctionConfigs} = s2sBidRequest.metrics.measureTime('interpretResponse', () => interpretPBSResponse(result, request));
|
|
549
552
|
bids.forEach(onBid);
|
|
553
|
+
if (fledgeAuctionConfigs) {
|
|
554
|
+
fledgeAuctionConfigs.forEach(onFledge);
|
|
555
|
+
}
|
|
550
556
|
} catch (error) {
|
|
551
557
|
logError(error);
|
|
552
558
|
}
|
|
@@ -221,6 +221,13 @@ const PBS_CONVERTER = ortbConverter({
|
|
|
221
221
|
serverSideStats(orig, response, ortbResponse, context) {
|
|
222
222
|
// override to process each request
|
|
223
223
|
context.actualBidderRequests.forEach(req => orig(response, ortbResponse, {...context, bidderRequest: req, bidRequests: req.bids}));
|
|
224
|
+
},
|
|
225
|
+
fledgeAuctionConfigs(orig, response, ortbResponse, context) {
|
|
226
|
+
const configs = Object.values(context.impContext)
|
|
227
|
+
.flatMap((impCtx) => (impCtx.fledgeConfigs || []).map(cfg => ({adUnitCode: impCtx.adUnit.code, config: cfg.config})));
|
|
228
|
+
if (configs.length > 0) {
|
|
229
|
+
response.fledgeAuctionConfigs = configs;
|
|
230
|
+
}
|
|
224
231
|
}
|
|
225
232
|
}
|
|
226
233
|
},
|
|
@@ -254,11 +261,14 @@ export function buildPBSRequest(s2sBidRequest, bidderRequests, adUnits, requeste
|
|
|
254
261
|
...adUnit,
|
|
255
262
|
adUnitCode: adUnit.code,
|
|
256
263
|
...getDefinedParams(actualBidRequests.values().next().value || {}, ['userId', 'userIdAsEids', 'schain']),
|
|
257
|
-
pbsData: {impId, actualBidRequests, adUnit}
|
|
264
|
+
pbsData: {impId, actualBidRequests, adUnit},
|
|
258
265
|
});
|
|
259
266
|
});
|
|
260
267
|
|
|
261
|
-
const proxyBidderRequest =
|
|
268
|
+
const proxyBidderRequest = {
|
|
269
|
+
...Object.fromEntries(Object.entries(bidderRequests[0]).filter(([k]) => !BIDDER_SPECIFIC_REQUEST_PROPS.has(k))),
|
|
270
|
+
fledgeEnabled: bidderRequests.some(req => req.fledgeEnabled)
|
|
271
|
+
}
|
|
262
272
|
|
|
263
273
|
return PBS_CONVERTER.toORTB({
|
|
264
274
|
bidderRequest: proxyBidderRequest,
|
|
@@ -2,13 +2,14 @@ import { generateUUID, getParameterByName, logError, parseUrl, logInfo } from '.
|
|
|
2
2
|
import {ajaxBuilder} from '../src/ajax.js';
|
|
3
3
|
import adapter from '../libraries/analyticsAdapter/AnalyticsAdapter.js';
|
|
4
4
|
import adapterManager from '../src/adapterManager.js';
|
|
5
|
-
import {
|
|
5
|
+
import {getStorageManager} from '../src/storageManager.js';
|
|
6
6
|
import CONSTANTS from '../src/constants.json';
|
|
7
|
+
import {MODULE_TYPE_ANALYTICS} from '../src/activities/modules.js';
|
|
7
8
|
|
|
8
9
|
/**
|
|
9
10
|
* prebidmanagerAnalyticsAdapter.js - analytics adapter for prebidmanager
|
|
10
11
|
*/
|
|
11
|
-
export const storage = getStorageManager({
|
|
12
|
+
export const storage = getStorageManager({moduleType: MODULE_TYPE_ANALYTICS, moduleName: 'prebidmanager'});
|
|
12
13
|
const DEFAULT_EVENT_URL = 'https://endpt.prebidmanager.com/endpoint';
|
|
13
14
|
const analyticsType = 'endpoint';
|
|
14
15
|
const analyticsName = 'Prebid Manager Analytics';
|
package/modules/pubCommonId.js
CHANGED
|
@@ -7,12 +7,15 @@ import { logMessage, parseUrl, buildUrl, triggerPixel, generateUUID, isArray } f
|
|
|
7
7
|
import { config } from '../src/config.js';
|
|
8
8
|
import * as events from '../src/events.js';
|
|
9
9
|
import CONSTANTS from '../src/constants.json';
|
|
10
|
-
import {
|
|
10
|
+
import {getStorageManager} from '../src/storageManager.js';
|
|
11
11
|
import {timedAuctionHook} from '../src/utils/perfMetrics.js';
|
|
12
|
-
import {VENDORLESS_GVLID} from '../src/consentHandler.js';
|
|
12
|
+
import {GDPR_GVLIDS, VENDORLESS_GVLID} from '../src/consentHandler.js';
|
|
13
|
+
import {MODULE_TYPE_UID} from '../src/activities/modules.js';
|
|
13
14
|
import {getGlobal} from '../src/prebidGlobal.js';
|
|
14
15
|
|
|
15
|
-
const storage = getStorageManager({moduleName: 'pubCommonId'
|
|
16
|
+
const storage = getStorageManager({moduleType: MODULE_TYPE_UID, moduleName: 'pubCommonId'});
|
|
17
|
+
// register our GVL ID directly, since this is not a "real" user ID module we don't have a spec where to declare it
|
|
18
|
+
GDPR_GVLIDS.register(MODULE_TYPE_UID, 'pubCommonId', VENDORLESS_GVLID);
|
|
16
19
|
|
|
17
20
|
const ID_NAME = '_pubcid';
|
|
18
21
|
const OPTOUT_NAME = '_pubcid_optout';
|
|
@@ -10,13 +10,14 @@ import {getStorageManager} from '../src/storageManager.js';
|
|
|
10
10
|
import {ajax} from '../src/ajax.js';
|
|
11
11
|
import { parseUrl, buildUrl, logError } from '../src/utils.js';
|
|
12
12
|
import {uspDataHandler} from '../src/adapterManager.js';
|
|
13
|
+
import {MODULE_TYPE_UID} from '../src/activities/modules.js';
|
|
13
14
|
|
|
14
15
|
const MODULE_NAME = 'publinkId';
|
|
15
16
|
const GVLID = 24;
|
|
16
17
|
const PUBLINK_COOKIE = '_publink';
|
|
17
18
|
const PUBLINK_S2S_COOKIE = '_publink_srv';
|
|
18
19
|
|
|
19
|
-
export const storage = getStorageManager({
|
|
20
|
+
export const storage = getStorageManager({moduleType: MODULE_TYPE_UID, moduleName: MODULE_NAME});
|
|
20
21
|
|
|
21
22
|
function isHex(s) {
|
|
22
23
|
return /^[A-F0-9]+$/i.test(s);
|
|
@@ -291,6 +291,17 @@ function gatherPartnerBidsForAdUnitForLogger(adUnit, adUnitId, highestBid) {
|
|
|
291
291
|
}, [])
|
|
292
292
|
}
|
|
293
293
|
|
|
294
|
+
function getSizesForAdUnit(adUnit) {
|
|
295
|
+
var bid = Object.values(adUnit.bids).filter((bid) => !!bid.bidResponse && bid.bidResponse.mediaType === 'native')[0];
|
|
296
|
+
if (!!bid || (bid === undefined && adUnit.dimensions.length === 0)) {
|
|
297
|
+
return ['1x1'];
|
|
298
|
+
} else {
|
|
299
|
+
return adUnit.dimensions.map(function (e) {
|
|
300
|
+
return e[0] + 'x' + e[1];
|
|
301
|
+
})
|
|
302
|
+
}
|
|
303
|
+
}
|
|
304
|
+
|
|
294
305
|
function getAdUnitAdFormats(adUnit) {
|
|
295
306
|
var af = adUnit ? Object.keys(adUnit.mediaTypes || {}).map(format => MEDIATYPE[format.toUpperCase()]) : [];
|
|
296
307
|
return af;
|
|
@@ -346,7 +357,7 @@ function executeBidsLoggerCall(e, highestCpmBids) {
|
|
|
346
357
|
'sn': adUnitId,
|
|
347
358
|
'au': origAdUnit.adUnitId || adUnitId,
|
|
348
359
|
'mt': getAdUnitAdFormats(origAdUnit),
|
|
349
|
-
'sz': adUnit
|
|
360
|
+
'sz': getSizesForAdUnit(adUnit, adUnitId),
|
|
350
361
|
'ps': gatherPartnerBidsForAdUnitForLogger(adUnit, adUnitId, highestCpmBids.filter(bid => bid.adUnitCode === adUnitId)),
|
|
351
362
|
'fskp': floorData ? (floorData.floorRequestData ? (floorData.floorRequestData.skipped == false ? 0 : 1) : undefined) : undefined,
|
|
352
363
|
};
|