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
|
@@ -6,13 +6,13 @@ import {getStorageManager} from '../src/storageManager.js';
|
|
|
6
6
|
import {includes} from '../src/polyfill.js';
|
|
7
7
|
import {registerBidder} from '../src/adapters/bidderFactory.js';
|
|
8
8
|
|
|
9
|
-
const BIDDER_CODE = 'gumgum'
|
|
9
|
+
const BIDDER_CODE = 'gumgum';
|
|
10
10
|
const storage = getStorageManager({bidderCode: BIDDER_CODE});
|
|
11
|
-
const ALIAS_BIDDER_CODE = ['gg']
|
|
12
|
-
const BID_ENDPOINT = `https://g2.gumgum.com/hbid/imp
|
|
11
|
+
const ALIAS_BIDDER_CODE = ['gg'];
|
|
12
|
+
const BID_ENDPOINT = `https://g2.gumgum.com/hbid/imp`;
|
|
13
13
|
const JCSI = { t: 0, rq: 8, pbv: '$prebid.version$' }
|
|
14
|
-
const SUPPORTED_MEDIA_TYPES = [BANNER, VIDEO]
|
|
15
|
-
const TIME_TO_LIVE = 60
|
|
14
|
+
const SUPPORTED_MEDIA_TYPES = [BANNER, VIDEO];
|
|
15
|
+
const TIME_TO_LIVE = 60;
|
|
16
16
|
const DELAY_REQUEST_TIME = 1800000; // setting to 30 mins
|
|
17
17
|
|
|
18
18
|
let invalidRequestIds = {};
|
|
@@ -99,17 +99,6 @@ function getWrapperCode(wrapper, data) {
|
|
|
99
99
|
return wrapper.replace('AD_JSON', window.btoa(JSON.stringify(data)))
|
|
100
100
|
}
|
|
101
101
|
|
|
102
|
-
function _getDigiTrustQueryParams(userId) {
|
|
103
|
-
let digiTrustId = userId.digitrustid && userId.digitrustid.data;
|
|
104
|
-
// Verify there is an ID and this user has not opted out
|
|
105
|
-
if (!digiTrustId || (digiTrustId.privacy && digiTrustId.privacy.optout)) {
|
|
106
|
-
return {};
|
|
107
|
-
}
|
|
108
|
-
return {
|
|
109
|
-
dt: digiTrustId.id
|
|
110
|
-
};
|
|
111
|
-
}
|
|
112
|
-
|
|
113
102
|
/**
|
|
114
103
|
* Serializes the supply chain object according to IAB standards
|
|
115
104
|
* @see https://github.com/InteractiveAdvertisingBureau/openrtb/blob/master/supplychainobject.md
|
|
@@ -295,7 +284,7 @@ function buildRequests(validBidRequests, bidderRequest) {
|
|
|
295
284
|
const gdprConsent = bidderRequest && bidderRequest.gdprConsent;
|
|
296
285
|
const uspConsent = bidderRequest && bidderRequest.uspConsent;
|
|
297
286
|
const gppConsent = bidderRequest && bidderRequest.gppConsent;
|
|
298
|
-
const timeout =
|
|
287
|
+
const timeout = bidderRequest && bidderRequest.timeout
|
|
299
288
|
const coppa = config.getConfig('coppa') === true ? 1 : 0;
|
|
300
289
|
const topWindowUrl = bidderRequest && bidderRequest.refererInfo && bidderRequest.refererInfo.page;
|
|
301
290
|
_each(validBidRequests, bidRequest => {
|
|
@@ -416,7 +405,7 @@ function buildRequests(validBidRequests, bidderRequest) {
|
|
|
416
405
|
sizes,
|
|
417
406
|
url: BID_ENDPOINT,
|
|
418
407
|
method: 'GET',
|
|
419
|
-
data: Object.assign(data, _getBrowserParams(topWindowUrl)
|
|
408
|
+
data: Object.assign(data, _getBrowserParams(topWindowUrl))
|
|
420
409
|
});
|
|
421
410
|
});
|
|
422
411
|
return bids;
|
|
@@ -596,6 +585,7 @@ function getUserSyncs(syncOptions, serverResponses) {
|
|
|
596
585
|
|
|
597
586
|
export const spec = {
|
|
598
587
|
code: BIDDER_CODE,
|
|
588
|
+
gvlid: 61,
|
|
599
589
|
aliases: ALIAS_BIDDER_CODE,
|
|
600
590
|
isBidRequestValid,
|
|
601
591
|
buildRequests,
|
|
@@ -3,8 +3,9 @@ import adapter from '../libraries/analyticsAdapter/AnalyticsAdapter.js';
|
|
|
3
3
|
import adapterManager from '../src/adapterManager.js';
|
|
4
4
|
import * as utils from '../src/utils.js';
|
|
5
5
|
import CONSTANTS from '../src/constants.json';
|
|
6
|
-
import {
|
|
6
|
+
import {getStorageManager} from '../src/storageManager.js';
|
|
7
7
|
import {getRefererInfo} from '../src/refererDetection.js';
|
|
8
|
+
import {MODULE_TYPE_ANALYTICS} from '../src/activities/modules.js';
|
|
8
9
|
|
|
9
10
|
/**
|
|
10
11
|
* hadronAnalyticsAdapter.js - Audigent Hadron Analytics Adapter
|
|
@@ -14,8 +15,9 @@ const HADRON_ANALYTICS_URL = 'https://analytics.hadron.ad.gt/api/v1/analytics';
|
|
|
14
15
|
const HADRONID_ANALYTICS_VER = 'pbadgt0';
|
|
15
16
|
const DEFAULT_PARTNER_ID = 0;
|
|
16
17
|
const AU_GVLID = 561;
|
|
18
|
+
const MODULE_CODE = 'hadronAnalytics';
|
|
17
19
|
|
|
18
|
-
export const storage = getStorageManager();
|
|
20
|
+
export const storage = getStorageManager({moduleType: MODULE_TYPE_ANALYTICS, moduleName: MODULE_CODE});
|
|
19
21
|
|
|
20
22
|
var viewId = utils.generateUUID();
|
|
21
23
|
|
|
@@ -191,7 +193,7 @@ function sendEvent(event) {
|
|
|
191
193
|
|
|
192
194
|
adapterManager.registerAnalyticsAdapter({
|
|
193
195
|
adapter: hadronAnalyticsAdapter,
|
|
194
|
-
code:
|
|
196
|
+
code: MODULE_CODE,
|
|
195
197
|
gvlid: AU_GVLID
|
|
196
198
|
});
|
|
197
199
|
|
|
@@ -9,13 +9,14 @@ import {ajax} from '../src/ajax.js';
|
|
|
9
9
|
import {getStorageManager} from '../src/storageManager.js';
|
|
10
10
|
import {submodule} from '../src/hook.js';
|
|
11
11
|
import {isFn, isStr, isPlainObject, logError, logInfo} from '../src/utils.js';
|
|
12
|
+
import {MODULE_TYPE_UID} from '../src/activities/modules.js';
|
|
12
13
|
|
|
13
14
|
const HADRONID_LOCAL_NAME = 'auHadronId';
|
|
14
15
|
const MODULE_NAME = 'hadronId';
|
|
15
16
|
const AU_GVLID = 561;
|
|
16
17
|
const DEFAULT_HADRON_URL_ENDPOINT = 'https://id.hadron.ad.gt/api/v1/pbhid';
|
|
17
18
|
|
|
18
|
-
export const storage = getStorageManager({
|
|
19
|
+
export const storage = getStorageManager({moduleType: MODULE_TYPE_UID, moduleName: 'hadron'});
|
|
19
20
|
|
|
20
21
|
/**
|
|
21
22
|
* Param or default.
|
|
@@ -48,6 +49,7 @@ export const hadronIdSubmodule = {
|
|
|
48
49
|
* @type {string}
|
|
49
50
|
*/
|
|
50
51
|
name: MODULE_NAME,
|
|
52
|
+
gvlid: AU_GVLID,
|
|
51
53
|
/**
|
|
52
54
|
* decode the stored id value for passing to bid requests
|
|
53
55
|
* @function
|
|
@@ -12,6 +12,7 @@ import {getStorageManager} from '../src/storageManager.js';
|
|
|
12
12
|
import {submodule} from '../src/hook.js';
|
|
13
13
|
import {isFn, isStr, isArray, deepEqual, isPlainObject, logError, logInfo} from '../src/utils.js';
|
|
14
14
|
import {loadExternalScript} from '../src/adloader.js';
|
|
15
|
+
import {MODULE_TYPE_RTD} from '../src/activities/modules.js';
|
|
15
16
|
|
|
16
17
|
const LOG_PREFIX = 'User ID - HadronRtdProvider submodule: ';
|
|
17
18
|
const MODULE_NAME = 'realTimeData';
|
|
@@ -21,7 +22,7 @@ const HADRON_ID_DEFAULT_URL = 'https://id.hadron.ad.gt/api/v1/hadronid?_it=prebi
|
|
|
21
22
|
const HADRON_SEGMENT_URL = 'https://id.hadron.ad.gt/api/v1/rtd';
|
|
22
23
|
export const HALOID_LOCAL_NAME = 'auHadronId';
|
|
23
24
|
export const RTD_LOCAL_NAME = 'auHadronRtd';
|
|
24
|
-
export const storage = getStorageManager({
|
|
25
|
+
export const storage = getStorageManager({moduleType: MODULE_TYPE_RTD, moduleName: SUBMODULE_NAME});
|
|
25
26
|
|
|
26
27
|
/**
|
|
27
28
|
* @param {string} url
|
|
@@ -251,7 +252,8 @@ function init(provider, userConsent) {
|
|
|
251
252
|
export const hadronSubmodule = {
|
|
252
253
|
name: SUBMODULE_NAME,
|
|
253
254
|
getBidRequestData: getRealTimeData,
|
|
254
|
-
init: init
|
|
255
|
+
init: init,
|
|
256
|
+
gvlid: AU_GVLID,
|
|
255
257
|
};
|
|
256
258
|
|
|
257
259
|
submodule(MODULE_NAME, hadronSubmodule);
|
package/modules/id5IdSystem.js
CHANGED
|
@@ -20,6 +20,7 @@ import {submodule} from '../src/hook.js';
|
|
|
20
20
|
import {getRefererInfo} from '../src/refererDetection.js';
|
|
21
21
|
import {getStorageManager} from '../src/storageManager.js';
|
|
22
22
|
import {uspDataHandler} from '../src/adapterManager.js';
|
|
23
|
+
import {MODULE_TYPE_UID} from '../src/activities/modules.js';
|
|
23
24
|
|
|
24
25
|
const MODULE_NAME = 'id5Id';
|
|
25
26
|
const GVLID = 131;
|
|
@@ -34,7 +35,7 @@ const ID5_API_CONFIG_URL = 'https://id5-sync.com/api/config/prebid';
|
|
|
34
35
|
// cookie in the array is the most preferred to use
|
|
35
36
|
const LEGACY_COOKIE_NAMES = ['pbjs-id5id', 'id5id.1st', 'id5id'];
|
|
36
37
|
|
|
37
|
-
export const storage = getStorageManager({
|
|
38
|
+
export const storage = getStorageManager({moduleType: MODULE_TYPE_UID, moduleName: MODULE_NAME});
|
|
38
39
|
|
|
39
40
|
/** @type {Submodule} */
|
|
40
41
|
export const id5IdSubmodule = {
|
|
@@ -263,7 +264,8 @@ class IdFetchFlow {
|
|
|
263
264
|
'top': referer.reachedTop ? 1 : 0,
|
|
264
265
|
'u': referer.stack[0] || window.location.href,
|
|
265
266
|
'v': '$prebid.version$',
|
|
266
|
-
'storage': this.submoduleConfig.storage
|
|
267
|
+
'storage': this.submoduleConfig.storage,
|
|
268
|
+
'localStorage': storage.localStorageIsEnabled() ? 1 : 0
|
|
267
269
|
};
|
|
268
270
|
|
|
269
271
|
// pass in optional data, but only if populated
|
|
@@ -8,11 +8,12 @@
|
|
|
8
8
|
import {getStorageManager} from '../src/storageManager.js';
|
|
9
9
|
import {submodule} from '../src/hook.js';
|
|
10
10
|
import {isPlainObject, mergeDeep, logMessage, logError} from '../src/utils.js';
|
|
11
|
+
import {MODULE_TYPE_RTD} from '../src/activities/modules.js';
|
|
11
12
|
|
|
12
13
|
const MODULE_NAME = 'realTimeData';
|
|
13
14
|
const SUBMODULE_NAME = 'idWard';
|
|
14
15
|
|
|
15
|
-
export const storage = getStorageManager({moduleName: SUBMODULE_NAME});
|
|
16
|
+
export const storage = getStorageManager({moduleType: MODULE_TYPE_RTD, moduleName: SUBMODULE_NAME});
|
|
16
17
|
/**
|
|
17
18
|
* Add real-time data & merge segments.
|
|
18
19
|
* @param ortb2 object to merge into
|
|
@@ -9,8 +9,11 @@ import * as utils from '../src/utils.js'
|
|
|
9
9
|
import { ajax } from '../src/ajax.js';
|
|
10
10
|
import { submodule } from '../src/hook.js';
|
|
11
11
|
import {getStorageManager} from '../src/storageManager.js';
|
|
12
|
+
import {MODULE_TYPE_UID} from '../src/activities/modules.js';
|
|
12
13
|
|
|
13
|
-
|
|
14
|
+
const MODULE_NAME = 'identityLink';
|
|
15
|
+
|
|
16
|
+
export const storage = getStorageManager({moduleType: MODULE_TYPE_UID, moduleName: MODULE_NAME});
|
|
14
17
|
|
|
15
18
|
/** @type {Submodule} */
|
|
16
19
|
export const identityLinkSubmodule = {
|
|
@@ -18,7 +21,7 @@ export const identityLinkSubmodule = {
|
|
|
18
21
|
* used to link submodule with config
|
|
19
22
|
* @type {string}
|
|
20
23
|
*/
|
|
21
|
-
name:
|
|
24
|
+
name: MODULE_NAME,
|
|
22
25
|
/**
|
|
23
26
|
* used to specify vendor id
|
|
24
27
|
* @type {number}
|
package/modules/idxIdSystem.js
CHANGED
|
@@ -6,11 +6,12 @@
|
|
|
6
6
|
*/
|
|
7
7
|
import { isStr, isPlainObject, logError } from '../src/utils.js';
|
|
8
8
|
import { submodule } from '../src/hook.js';
|
|
9
|
-
import {
|
|
9
|
+
import {getStorageManager} from '../src/storageManager.js';
|
|
10
|
+
import {MODULE_TYPE_UID} from '../src/activities/modules.js';
|
|
10
11
|
|
|
11
12
|
const IDX_MODULE_NAME = 'idx';
|
|
12
13
|
const IDX_COOKIE_NAME = '_idx';
|
|
13
|
-
export const storage = getStorageManager();
|
|
14
|
+
export const storage = getStorageManager({moduleType: MODULE_TYPE_UID, moduleName: IDX_MODULE_NAME});
|
|
14
15
|
|
|
15
16
|
function readIDxFromCookie() {
|
|
16
17
|
return storage.cookiesAreEnabled ? storage.getCookie(IDX_COOKIE_NAME) : null;
|
package/modules/imRtdProvider.js
CHANGED
|
@@ -18,16 +18,18 @@ import {
|
|
|
18
18
|
isFn
|
|
19
19
|
} from '../src/utils.js'
|
|
20
20
|
import {submodule} from '../src/hook.js';
|
|
21
|
+
import {MODULE_TYPE_RTD} from '../src/activities/modules.js';
|
|
21
22
|
|
|
22
23
|
export const imUidLocalName = '__im_uid';
|
|
23
24
|
export const imVidCookieName = '_im_vid';
|
|
24
25
|
export const imRtdLocalName = '__im_sids';
|
|
25
|
-
export const storage = getStorageManager();
|
|
26
26
|
const submoduleName = 'im';
|
|
27
27
|
const segmentsMaxAge = 3600000; // 1 hour (30 * 60 * 1000)
|
|
28
28
|
const uidMaxAge = 1800000; // 30 minites (30 * 60 * 1000)
|
|
29
29
|
const vidMaxAge = 97200000000; // 37 months ((365 * 3 + 30) * 24 * 60 * 60 * 1000)
|
|
30
30
|
|
|
31
|
+
export const storage = getStorageManager({moduleType: MODULE_TYPE_RTD, moduleName: submoduleName});
|
|
32
|
+
|
|
31
33
|
function setImDataInCookie(value) {
|
|
32
34
|
storage.setCookie(
|
|
33
35
|
imVidCookieName,
|
|
@@ -2,7 +2,6 @@ import { deepAccess, deepSetValue, generateUUID } from '../src/utils.js';
|
|
|
2
2
|
import { registerBidder } from '../src/adapters/bidderFactory.js';
|
|
3
3
|
import { config } from '../src/config.js';
|
|
4
4
|
import { ajax } from '../src/ajax.js';
|
|
5
|
-
import { createEidsArray } from './userId/eids.js';
|
|
6
5
|
|
|
7
6
|
const BIDDER_CODE = 'impactify';
|
|
8
7
|
const BIDDER_ALIAS = ['imp'];
|
|
@@ -63,9 +62,8 @@ const createOpenRtbRequest = (validBidRequests, bidderRequest) => {
|
|
|
63
62
|
if (schain) request.source.ext = { schain: schain };
|
|
64
63
|
|
|
65
64
|
// Set eids
|
|
66
|
-
let
|
|
67
|
-
|
|
68
|
-
if (eids.length) {
|
|
65
|
+
let eids = deepAccess(validBidRequests, '0.userIdAsEids');
|
|
66
|
+
if (eids && eids.length) {
|
|
69
67
|
deepSetValue(request, 'user.ext.eids', eids);
|
|
70
68
|
}
|
|
71
69
|
|
package/modules/imuIdSystem.js
CHANGED
|
@@ -8,9 +8,12 @@
|
|
|
8
8
|
import { timestamp, logError } from '../src/utils.js';
|
|
9
9
|
import { ajax } from '../src/ajax.js'
|
|
10
10
|
import { submodule } from '../src/hook.js';
|
|
11
|
-
import {
|
|
11
|
+
import {getStorageManager} from '../src/storageManager.js';
|
|
12
|
+
import {MODULE_TYPE_UID} from '../src/activities/modules.js';
|
|
12
13
|
|
|
13
|
-
|
|
14
|
+
const MODULE_NAME = 'imuid';
|
|
15
|
+
|
|
16
|
+
export const storage = getStorageManager({moduleType: MODULE_TYPE_UID, moduleName: MODULE_NAME});
|
|
14
17
|
|
|
15
18
|
export const storageKey = '__im_uid';
|
|
16
19
|
export const storagePpKey = '__im_ppid';
|
|
@@ -112,7 +115,7 @@ export const imuIdSubmodule = {
|
|
|
112
115
|
* used to link submodule with config
|
|
113
116
|
* @type {string}
|
|
114
117
|
*/
|
|
115
|
-
name:
|
|
118
|
+
name: MODULE_NAME,
|
|
116
119
|
/**
|
|
117
120
|
* decode the stored id value for passing to bid requests
|
|
118
121
|
* @function
|
|
@@ -12,7 +12,7 @@ const USER_ID_COOKIE_EXP = 2592000000; // 30 days
|
|
|
12
12
|
const BID_TTL = 300; // 5 minutes
|
|
13
13
|
const GVLID = 910;
|
|
14
14
|
|
|
15
|
-
export const storage = getStorageManager({
|
|
15
|
+
export const storage = getStorageManager({bidderCode: BIDDER_CODE});
|
|
16
16
|
|
|
17
17
|
config.setDefaults({
|
|
18
18
|
insticator: {
|
|
@@ -8,7 +8,8 @@
|
|
|
8
8
|
import { logError, logInfo } from '../src/utils.js';
|
|
9
9
|
import { ajax } from '../src/ajax.js';
|
|
10
10
|
import { submodule } from '../src/hook.js'
|
|
11
|
-
import {
|
|
11
|
+
import {getStorageManager} from '../src/storageManager.js';
|
|
12
|
+
import {MODULE_TYPE_UID} from '../src/activities/modules.js';
|
|
12
13
|
|
|
13
14
|
const PCID_EXPIRY = 365;
|
|
14
15
|
|
|
@@ -16,7 +17,7 @@ const MODULE_NAME = 'intentIqId';
|
|
|
16
17
|
export const FIRST_PARTY_KEY = '_iiq_fdata';
|
|
17
18
|
export var FIRST_PARTY_DATA_KEY = '_iiq_fdata';
|
|
18
19
|
|
|
19
|
-
export const storage = getStorageManager({
|
|
20
|
+
export const storage = getStorageManager({ moduleType: MODULE_TYPE_UID, moduleName: MODULE_NAME });
|
|
20
21
|
|
|
21
22
|
const INVALID_ID = 'INVALID_ID';
|
|
22
23
|
|
|
@@ -17,7 +17,7 @@ const CONSTANTS = {
|
|
|
17
17
|
DISABLE_USER_SYNC: true
|
|
18
18
|
};
|
|
19
19
|
|
|
20
|
-
const storage = getStorageManager({
|
|
20
|
+
const storage = getStorageManager({bidderCode: CONSTANTS.BIDDER_CODE});
|
|
21
21
|
|
|
22
22
|
export const spec = {
|
|
23
23
|
code: CONSTANTS.BIDDER_CODE,
|
|
@@ -154,7 +154,7 @@ export const spec = {
|
|
|
154
154
|
coppa: config.getConfig('coppa') === true ? 1 : 0,
|
|
155
155
|
ccpa: bidderRequest.uspConsent || undefined,
|
|
156
156
|
gdpr: bidderRequest.gdprConsent || undefined,
|
|
157
|
-
tmax:
|
|
157
|
+
tmax: bidderRequest.timeout
|
|
158
158
|
};
|
|
159
159
|
|
|
160
160
|
const len = validBidRequests.length;
|
|
@@ -0,0 +1,85 @@
|
|
|
1
|
+
import { ortbConverter } from '../libraries/ortbConverter/converter.js';
|
|
2
|
+
import { deepAccess, deepSetValue, getBidIdParameter, logError } from '../src/utils.js';
|
|
3
|
+
import { registerBidder } from '../src/adapters/bidderFactory.js';
|
|
4
|
+
import { VIDEO } from '../src/mediaTypes.js';
|
|
5
|
+
import { INSTREAM } from '../src/video.js';
|
|
6
|
+
|
|
7
|
+
const BIDDER_CODE = 'ivs';
|
|
8
|
+
const ENDPOINT_URL = 'https://a.ivstracker.net/prod/openrtb/2.5';
|
|
9
|
+
|
|
10
|
+
export const converter = ortbConverter({
|
|
11
|
+
context: {
|
|
12
|
+
mediaType: VIDEO,
|
|
13
|
+
ttl: 360,
|
|
14
|
+
netRevenue: true
|
|
15
|
+
}
|
|
16
|
+
});
|
|
17
|
+
|
|
18
|
+
export const spec = {
|
|
19
|
+
code: BIDDER_CODE,
|
|
20
|
+
supportedMediaTypes: [VIDEO],
|
|
21
|
+
|
|
22
|
+
/**
|
|
23
|
+
* Determines whether or not the given bid request is valid.
|
|
24
|
+
*
|
|
25
|
+
* @param {BidRequest} bid The bid params to validate.
|
|
26
|
+
* @return boolean True if this is a valid bid, and false otherwise.
|
|
27
|
+
*/
|
|
28
|
+
isBidRequestValid: function(bid) {
|
|
29
|
+
if (bid && typeof bid.params !== 'object') {
|
|
30
|
+
logError(BIDDER_CODE + ': params is not defined or is incorrect in the bidder settings.');
|
|
31
|
+
return false;
|
|
32
|
+
}
|
|
33
|
+
|
|
34
|
+
if (!deepAccess(bid, 'mediaTypes.video')) {
|
|
35
|
+
logError(BIDDER_CODE + ': mediaTypes.video is not present in the bidder settings.');
|
|
36
|
+
return false;
|
|
37
|
+
}
|
|
38
|
+
|
|
39
|
+
if (deepAccess(bid, 'mediaTypes.video.context') !== INSTREAM) {
|
|
40
|
+
logError(BIDDER_CODE + ': only instream video context is allowed.');
|
|
41
|
+
return false;
|
|
42
|
+
}
|
|
43
|
+
|
|
44
|
+
if (!getBidIdParameter('publisherId', bid.params)) {
|
|
45
|
+
logError(BIDDER_CODE + ': publisherId is not present in bidder params.');
|
|
46
|
+
return false;
|
|
47
|
+
}
|
|
48
|
+
|
|
49
|
+
return true;
|
|
50
|
+
},
|
|
51
|
+
|
|
52
|
+
/**
|
|
53
|
+
* Make a server request from the list of BidRequests.
|
|
54
|
+
*
|
|
55
|
+
* @param {validBidRequests[]} - an array of bids
|
|
56
|
+
* @param {bidderRequest} - master bidRequest object
|
|
57
|
+
* @return ServerRequest Info describing the request to the server.
|
|
58
|
+
*/
|
|
59
|
+
buildRequests: function(validBidRequests, bidderRequest) {
|
|
60
|
+
const data = converter.toORTB({ bidderRequest, validBidRequests, context: {mediaType: 'video'} });
|
|
61
|
+
deepSetValue(data.site, 'publisher.id', validBidRequests[0].params.publisherId);
|
|
62
|
+
|
|
63
|
+
return {
|
|
64
|
+
method: 'POST',
|
|
65
|
+
url: ENDPOINT_URL,
|
|
66
|
+
data: data,
|
|
67
|
+
options: {
|
|
68
|
+
contentType: 'application/json'
|
|
69
|
+
},
|
|
70
|
+
};
|
|
71
|
+
},
|
|
72
|
+
|
|
73
|
+
/**
|
|
74
|
+
* Unpack the response from the server into a list of bids.
|
|
75
|
+
*
|
|
76
|
+
* @param {ServerResponse} serverResponse A successful response from the server.
|
|
77
|
+
* @return {Bid[]} An array of bids which were nested inside the server.
|
|
78
|
+
*/
|
|
79
|
+
interpretResponse: function(serverResponse, bidRequest) {
|
|
80
|
+
if (!serverResponse.body) return;
|
|
81
|
+
return converter.fromORTB({ response: serverResponse.body, request: bidRequest.data }).bids;
|
|
82
|
+
},
|
|
83
|
+
}
|
|
84
|
+
|
|
85
|
+
registerBidder(spec);
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
# Overview
|
|
2
|
+
|
|
3
|
+
```
|
|
4
|
+
Module Name: IVS Bidder Adapter
|
|
5
|
+
Module Type: Bidder Adapter
|
|
6
|
+
Maintainer: prebid@ivs.tv
|
|
7
|
+
```
|
|
8
|
+
|
|
9
|
+
# Description
|
|
10
|
+
|
|
11
|
+
Module that connects to IVS's demand sources
|
|
12
|
+
|
|
13
|
+
# Test Parameters
|
|
14
|
+
```
|
|
15
|
+
var adUnits = [
|
|
16
|
+
{
|
|
17
|
+
code: 'test-div',
|
|
18
|
+
mediaTypes: {
|
|
19
|
+
video: {
|
|
20
|
+
playerSize: [640, 480],
|
|
21
|
+
context: 'instream'
|
|
22
|
+
}
|
|
23
|
+
},
|
|
24
|
+
bids: [
|
|
25
|
+
{
|
|
26
|
+
bidder: 'ivs',
|
|
27
|
+
params: {
|
|
28
|
+
publisherId: '3001234' // required
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
]
|
|
32
|
+
}
|
|
33
|
+
];
|
|
34
|
+
```
|