prebid.js 10.3.0 → 10.5.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/.github/dependabot.yml +8 -0
- package/.github/workflows/run-unit-tests.yml +8 -0
- package/.github/workflows/test-chunk.yml +9 -0
- package/.github/workflows/test.yml +8 -0
- package/README.md +1 -14
- package/creative/renderers/display/renderer.js +5 -1
- package/dist/chunks/33acrossAnalyticsAdapter.js +1 -1
- package/dist/chunks/33acrossBidAdapter.js +1 -1
- package/dist/chunks/33acrossBidAdapter.metadata.js +1 -1
- package/dist/chunks/33acrossIdSystem.js +1 -1
- package/dist/chunks/33acrossIdSystem.metadata.js +1 -1
- package/dist/chunks/acuityadsBidAdapter.metadata.js +1 -1
- package/dist/chunks/adagioAnalyticsAdapter.js +1 -1
- package/dist/chunks/adagioBidAdapter.js +1 -1
- package/dist/chunks/adagioBidAdapter.metadata.js +1 -1
- package/dist/chunks/adagioRtdProvider.metadata.js +1 -1
- package/dist/chunks/adagioUtils.js +1 -1
- package/dist/chunks/addefendBidAdapter.js +1 -1
- package/dist/chunks/addefendBidAdapter.metadata.js +1 -1
- package/dist/chunks/adfBidAdapter.metadata.js +1 -1
- package/dist/chunks/adfusionBidAdapter.metadata.js +1 -1
- package/dist/chunks/adgenerationBidAdapter.js +1 -1
- package/dist/chunks/adheseBidAdapter.metadata.js +1 -1
- package/dist/chunks/adipoloBidAdapter.js +1 -1
- package/dist/chunks/adipoloBidAdapter.metadata.js +1 -1
- package/dist/chunks/adkernelAdnBidAdapter.metadata.js +1 -1
- package/dist/chunks/adkernelBidAdapter.metadata.js +1 -1
- package/dist/chunks/adlooxRtdProvider.js +1 -1
- package/dist/chunks/admaticBidAdapter.js +1 -1
- package/dist/chunks/admaticBidAdapter.metadata.js +1 -1
- package/dist/chunks/admixerBidAdapter.js +1 -1
- package/dist/chunks/admixerBidAdapter.metadata.js +1 -1
- package/dist/chunks/admixerIdSystem.metadata.js +1 -1
- package/dist/chunks/adnowBidAdapter.metadata.js +1 -1
- package/dist/chunks/adnuntiusBidAdapter.metadata.js +1 -1
- package/dist/chunks/adnuntiusRtdProvider.metadata.js +1 -1
- package/dist/chunks/adotBidAdapter.metadata.js +1 -1
- package/dist/chunks/adpartnerBidAdapter.js +1 -1
- package/dist/chunks/adplayerproVideoProvider.js +1 -1
- package/dist/chunks/adponeBidAdapter.metadata.js +1 -1
- package/dist/chunks/adqueryBidAdapter.js +1 -1
- package/dist/chunks/adqueryBidAdapter.metadata.js +1 -1
- package/dist/chunks/adqueryIdSystem.metadata.js +1 -1
- package/dist/chunks/adrelevantisBidAdapter.js +1 -1
- package/dist/chunks/adrinoBidAdapter.metadata.js +1 -1
- package/dist/chunks/ads_interactiveBidAdapter.metadata.js +1 -1
- package/dist/chunks/adstirBidAdapter.js +1 -1
- package/dist/chunks/adtargetBidAdapter.metadata.js +1 -1
- package/dist/chunks/adtelligentBidAdapter.js +1 -1
- package/dist/chunks/adtelligentBidAdapter.metadata.js +1 -1
- package/dist/chunks/adtelligentIdSystem.metadata.js +1 -1
- package/dist/chunks/adtrgtmeBidAdapter.js +1 -1
- package/dist/chunks/aduptechBidAdapter.metadata.js +1 -1
- package/dist/chunks/advertisingBidAdapter.js +1 -1
- package/dist/chunks/adxcgAnalyticsAdapter.js +1 -1
- package/dist/chunks/adxcgBidAdapter.js +1 -1
- package/dist/chunks/adyoulikeBidAdapter.js +1 -1
- package/dist/chunks/adyoulikeBidAdapter.metadata.js +1 -1
- package/dist/chunks/agmaAnalyticsAdapter.js +1 -1
- package/dist/chunks/aidemBidAdapter.js +1 -1
- package/dist/chunks/aidemBidAdapter.metadata.js +1 -1
- package/dist/chunks/airgridRtdProvider.metadata.js +1 -1
- package/dist/chunks/ajaBidAdapter.js +1 -1
- package/dist/chunks/alkimiBidAdapter.metadata.js +1 -1
- package/dist/chunks/ampliffyBidAdapter.js +1 -1
- package/dist/chunks/ampliffyBidAdapter.metadata.js +1 -1
- package/dist/chunks/amxBidAdapter.js +1 -1
- package/dist/chunks/amxBidAdapter.metadata.js +1 -1
- package/dist/chunks/amxIdSystem.js +1 -1
- package/dist/chunks/amxIdSystem.metadata.js +1 -1
- package/dist/chunks/aniviewBidAdapter.js +1 -1
- package/dist/chunks/aniviewBidAdapter.metadata.js +1 -1
- package/dist/chunks/anonymisedRtdProvider.metadata.js +1 -1
- package/dist/chunks/appierAnalyticsAdapter.js +1 -1
- package/dist/chunks/appierBidAdapter.metadata.js +1 -1
- package/dist/chunks/appnexusBidAdapter.js +1 -1
- package/dist/chunks/appnexusBidAdapter.metadata.js +1 -1
- package/dist/chunks/appushBidAdapter.metadata.js +1 -1
- package/dist/chunks/apstreamBidAdapter.metadata.js +1 -1
- package/dist/chunks/asoBidAdapter.js +1 -1
- package/dist/chunks/audiencerunBidAdapter.metadata.js +1 -1
- package/dist/chunks/axisBidAdapter.metadata.js +1 -1
- package/dist/chunks/axonixBidAdapter.js +1 -1
- package/dist/chunks/azerionedgeRtdProvider.metadata.js +1 -1
- package/dist/chunks/beachfrontBidAdapter.js +1 -1
- package/dist/chunks/beachfrontBidAdapter.metadata.js +1 -1
- package/dist/chunks/beopBidAdapter.js +1 -1
- package/dist/chunks/beopBidAdapter.metadata.js +1 -1
- package/dist/chunks/betweenBidAdapter.metadata.js +1 -1
- package/dist/chunks/bidglassBidAdapter.js +1 -1
- package/dist/chunks/bidmaticBidAdapter.js +1 -1
- package/dist/chunks/bidmaticBidAdapter.metadata.js +1 -1
- package/dist/chunks/bidtheatreBidAdapter.metadata.js +1 -1
- package/dist/chunks/big-richmediaBidAdapter.js +1 -1
- package/dist/chunks/bitmediaBidAdapter.js +1 -1
- package/dist/chunks/bliinkBidAdapter.metadata.js +1 -1
- package/dist/chunks/blockthroughBidAdapter.js +1 -1
- package/dist/chunks/blockthroughBidAdapter.metadata.js +1 -1
- package/dist/chunks/blueBidAdapter.metadata.js +1 -1
- package/dist/chunks/bmsBidAdapter.metadata.js +1 -1
- package/dist/chunks/bmtmBidAdapter.js +1 -1
- package/dist/chunks/boldwinBidAdapter.metadata.js +1 -1
- package/dist/chunks/bridBidAdapter.js +1 -1
- package/dist/chunks/bridBidAdapter.metadata.js +1 -1
- package/dist/chunks/bridgewellBidAdapter.js +1 -1
- package/dist/chunks/browsiBidAdapter.metadata.js +1 -1
- package/dist/chunks/bucksenseBidAdapter.metadata.js +1 -1
- package/dist/chunks/buzzoolaBidAdapter.js +1 -1
- package/dist/chunks/cadent_aperture_mxBidAdapter.js +1 -1
- package/dist/chunks/cadent_aperture_mxBidAdapter.metadata.js +1 -1
- package/dist/chunks/carodaBidAdapter.js +1 -1
- package/dist/chunks/carodaBidAdapter.metadata.js +1 -1
- package/dist/chunks/categoryTranslation.metadata.js +1 -1
- package/dist/chunks/ccxBidAdapter.js +1 -1
- package/dist/chunks/ccxBidAdapter.metadata.js +1 -1
- package/dist/chunks/ceeIdSystem.metadata.js +1 -1
- package/dist/chunks/chromeAiRtdProvider.metadata.js +1 -1
- package/dist/chunks/chtnwBidAdapter.js +1 -1
- package/dist/chunks/chunk-core.js +1 -1
- package/dist/chunks/codefuelBidAdapter.js +1 -1
- package/dist/chunks/compassBidAdapter.metadata.js +1 -1
- package/dist/chunks/conceptxBidAdapter.metadata.js +1 -1
- package/dist/chunks/concertAnalyticsAdapter.js +1 -1
- package/dist/chunks/concertBidAdapter.js +1 -1
- package/dist/chunks/connatixBidAdapter.metadata.js +1 -1
- package/dist/chunks/connectIdSystem.metadata.js +1 -1
- package/dist/chunks/connectadBidAdapter.js +1 -1
- package/dist/chunks/connectadBidAdapter.metadata.js +1 -1
- package/dist/chunks/consumableBidAdapter.js +1 -1
- package/dist/chunks/contentexchangeBidAdapter.metadata.js +1 -1
- package/dist/chunks/contxtfulBidAdapter.js +1 -1
- package/dist/chunks/contxtfulRtdProvider.js +1 -1
- package/dist/chunks/conversantBidAdapter.js +1 -1
- package/dist/chunks/conversantBidAdapter.metadata.js +1 -1
- package/dist/chunks/copper6sspBidAdapter.metadata.js +1 -1
- package/dist/chunks/cpmstarBidAdapter.metadata.js +1 -1
- package/dist/chunks/craftBidAdapter.js +1 -1
- package/dist/chunks/creative-renderer-display.js +1 -1
- package/dist/chunks/criteoBidAdapter.js +1 -1
- package/dist/chunks/criteoBidAdapter.metadata.js +1 -1
- package/dist/chunks/criteoIdSystem.metadata.js +1 -1
- package/dist/chunks/cwireBidAdapter.js +1 -1
- package/dist/chunks/cwireBidAdapter.metadata.js +1 -1
- package/dist/chunks/czechAdIdSystem.metadata.js +1 -1
- package/dist/chunks/dailymotionBidAdapter.js +1 -1
- package/dist/chunks/dailymotionBidAdapter.metadata.js +1 -1
- package/dist/chunks/debugging-standalone.js +1 -1
- package/dist/chunks/debugging.metadata.js +1 -1
- package/dist/chunks/deepintentBidAdapter.metadata.js +1 -1
- package/dist/chunks/deltaprojectsBidAdapter.metadata.js +1 -1
- package/dist/chunks/dependencies.json +7 -0
- package/dist/chunks/dianomiBidAdapter.metadata.js +1 -1
- package/dist/chunks/digitalMatterBidAdapter.metadata.js +1 -1
- package/dist/chunks/distroscaleBidAdapter.metadata.js +1 -1
- package/dist/chunks/docereeAdManagerBidAdapter.metadata.js +1 -1
- package/dist/chunks/docereeBidAdapter.metadata.js +1 -1
- package/dist/chunks/dspxBidAdapter.js +1 -1
- package/dist/chunks/dspxBidAdapter.metadata.js +1 -1
- package/dist/chunks/dxkultureBidAdapter.js +1 -1
- package/dist/chunks/e_volutionBidAdapter.metadata.js +1 -1
- package/dist/chunks/edge226BidAdapter.metadata.js +1 -1
- package/dist/chunks/eplanningBidAdapter.js +1 -1
- package/dist/chunks/equativBidAdapter.js +1 -1
- package/dist/chunks/equativBidAdapter.metadata.js +1 -1
- package/dist/chunks/equativUtils.js +1 -1
- package/dist/chunks/eskimiBidAdapter.js +1 -1
- package/dist/chunks/eskimiBidAdapter.metadata.js +1 -1
- package/dist/chunks/etargetBidAdapter.metadata.js +1 -1
- package/dist/chunks/euidIdSystem.js +1 -1
- package/dist/chunks/euidIdSystem.metadata.js +1 -1
- package/dist/chunks/exadsBidAdapter.js +1 -1
- package/dist/chunks/exadsBidAdapter.metadata.js +1 -1
- package/dist/chunks/excoBidAdapter.js +1 -1
- package/dist/chunks/feedadBidAdapter.js +1 -1
- package/dist/chunks/feedadBidAdapter.metadata.js +1 -1
- package/dist/chunks/finativeBidAdapter.js +1 -1
- package/dist/chunks/fwsspBidAdapter.metadata.js +1 -1
- package/dist/chunks/gamoshiBidAdapter.metadata.js +1 -1
- package/dist/chunks/glomexBidAdapter.metadata.js +1 -1
- package/dist/chunks/gmosspBidAdapter.js +1 -1
- package/dist/chunks/goldbachBidAdapter.metadata.js +1 -1
- package/dist/chunks/greenbidsAnalyticsAdapter.js +1 -1
- package/dist/chunks/greenbidsBidAdapter.js +1 -1
- package/dist/chunks/greenbidsBidAdapter.metadata.js +1 -1
- package/dist/chunks/greenbidsRtdProvider.js +1 -1
- package/dist/chunks/gridBidAdapter.js +1 -1
- package/dist/chunks/gridBidAdapter.metadata.js +1 -1
- package/dist/chunks/gumgumBidAdapter.js +1 -1
- package/dist/chunks/gumgumBidAdapter.metadata.js +1 -1
- package/dist/chunks/h12mediaBidAdapter.js +1 -1
- package/dist/chunks/hadronIdSystem.metadata.js +1 -1
- package/dist/chunks/hadronRtdProvider.metadata.js +1 -1
- package/dist/chunks/holidBidAdapter.metadata.js +1 -1
- package/dist/chunks/hybridBidAdapter.metadata.js +1 -1
- package/dist/chunks/hypelabBidAdapter.js +1 -1
- package/dist/chunks/id5AnalyticsAdapter.js +1 -1
- package/dist/chunks/id5IdSystem.js +1 -1
- package/dist/chunks/id5IdSystem.metadata.js +1 -1
- package/dist/chunks/identityLinkIdSystem.metadata.js +1 -1
- package/dist/chunks/illuminBidAdapter.metadata.js +1 -1
- package/dist/chunks/impactifyBidAdapter.metadata.js +1 -1
- package/dist/chunks/improvedigitalBidAdapter.js +1 -1
- package/dist/chunks/improvedigitalBidAdapter.metadata.js +1 -1
- package/dist/chunks/inmobiBidAdapter.js +1 -1
- package/dist/chunks/inmobiBidAdapter.metadata.js +1 -1
- package/dist/chunks/innityBidAdapter.js +1 -1
- package/dist/chunks/innityBidAdapter.metadata.js +1 -1
- package/dist/chunks/insticatorBidAdapter.js +1 -1
- package/dist/chunks/insticatorBidAdapter.metadata.js +1 -1
- package/dist/chunks/intentIqAnalyticsAdapter.js +1 -1
- package/dist/chunks/intentIqIdSystem.metadata.js +1 -1
- package/dist/chunks/intersectionRtdProvider.js +1 -1
- package/dist/chunks/invibesBidAdapter.metadata.js +1 -1
- package/dist/chunks/ipromBidAdapter.metadata.js +1 -1
- package/dist/chunks/ixBidAdapter.js +1 -1
- package/dist/chunks/ixBidAdapter.metadata.js +1 -1
- package/dist/chunks/jixieBidAdapter.js +1 -1
- package/dist/chunks/justIdSystem.metadata.js +1 -1
- package/dist/chunks/justpremiumBidAdapter.js +1 -1
- package/dist/chunks/justpremiumBidAdapter.metadata.js +1 -1
- package/dist/chunks/jwplayerBidAdapter.metadata.js +1 -1
- package/dist/chunks/kargoBidAdapter.js +1 -1
- package/dist/chunks/kargoBidAdapter.metadata.js +1 -1
- package/dist/chunks/kimberliteBidAdapter.js +1 -1
- package/dist/chunks/kueezRtbBidAdapter.metadata.js +1 -1
- package/dist/chunks/lassoBidAdapter.js +1 -1
- package/dist/chunks/lifestreetBidAdapter.js +1 -1
- package/dist/chunks/limelightDigitalBidAdapter.metadata.js +1 -1
- package/dist/chunks/liveIntentId.js +1 -1
- package/dist/chunks/liveIntentIdSystem.metadata.js +1 -1
- package/dist/chunks/liveIntentRtdProvider.metadata.js +1 -1
- package/dist/chunks/livewrappedAnalyticsAdapter.js +1 -1
- package/dist/chunks/livewrappedBidAdapter.metadata.js +1 -1
- package/dist/chunks/logicadBidAdapter.js +1 -1
- package/dist/chunks/loopmeBidAdapter.metadata.js +1 -1
- package/dist/chunks/lotamePanoramaIdSystem.metadata.js +1 -1
- package/dist/chunks/luceadBidAdapter.js +1 -1
- package/dist/chunks/luceadBidAdapter.metadata.js +1 -1
- package/dist/chunks/luponmediaBidAdapter.metadata.js +1 -1
- package/dist/chunks/mabidderBidAdapter.js +1 -1
- package/dist/chunks/madsenseBidAdapter.js +1 -1
- package/dist/chunks/madvertiseBidAdapter.js +1 -1
- package/dist/chunks/madvertiseBidAdapter.metadata.js +1 -1
- package/dist/chunks/magniteAnalyticsAdapter.js +1 -1
- package/dist/chunks/malltvAnalyticsAdapter.js +1 -1
- package/dist/chunks/marsmediaBidAdapter.js +1 -1
- package/dist/chunks/marsmediaBidAdapter.metadata.js +1 -1
- package/dist/chunks/mediaConsortiumBidAdapter.metadata.js +1 -1
- package/dist/chunks/mediaImpactUtils.js +1 -1
- package/dist/chunks/mediaforceBidAdapter.metadata.js +1 -1
- package/dist/chunks/mediafuseBidAdapter.js +1 -1
- package/dist/chunks/mediafuseBidAdapter.metadata.js +1 -1
- package/dist/chunks/mediagoBidAdapter.metadata.js +1 -1
- package/dist/chunks/mediaimpactBidAdapter.js +1 -1
- package/dist/chunks/mediakeysBidAdapter.metadata.js +1 -1
- package/dist/chunks/medianetBidAdapter.js +1 -1
- package/dist/chunks/medianetBidAdapter.metadata.js +1 -1
- package/dist/chunks/medianetUtils.js +1 -1
- package/dist/chunks/mediasquareBidAdapter.js +1 -1
- package/dist/chunks/mediasquareBidAdapter.metadata.js +1 -1
- package/dist/chunks/mgidBidAdapter.js +1 -1
- package/dist/chunks/mgidBidAdapter.metadata.js +1 -1
- package/dist/chunks/mgidRtdProvider.metadata.js +1 -1
- package/dist/chunks/mgidXBidAdapter.metadata.js +1 -1
- package/dist/chunks/minutemediaBidAdapter.metadata.js +1 -1
- package/dist/chunks/missenaBidAdapter.js +1 -1
- package/dist/chunks/missenaBidAdapter.metadata.js +1 -1
- package/dist/chunks/mobianRtdProvider.metadata.js +1 -1
- package/dist/chunks/mobilefuseBidAdapter.js +1 -1
- package/dist/chunks/mobilefuseBidAdapter.metadata.js +1 -1
- package/dist/chunks/mobkoiAnalyticsAdapter.js +1 -1
- package/dist/chunks/mobkoiBidAdapter.js +1 -1
- package/dist/chunks/mobkoiBidAdapter.metadata.js +1 -1
- package/dist/chunks/mobkoiIdSystem.js +1 -1
- package/dist/chunks/mobkoiIdSystem.metadata.js +1 -1
- package/dist/chunks/multibid.js +1 -1
- package/dist/chunks/nativeryBidAdapter.metadata.js +1 -1
- package/dist/chunks/nativoBidAdapter.metadata.js +1 -1
- package/dist/chunks/newspassidBidAdapter.metadata.js +1 -1
- package/dist/chunks/nextMillenniumBidAdapter.js +1 -1
- package/dist/chunks/nextMillenniumBidAdapter.metadata.js +1 -1
- package/dist/chunks/nextrollBidAdapter.metadata.js +1 -1
- package/dist/chunks/nexx360BidAdapter.metadata.js +1 -1
- package/dist/chunks/nexx360Utils.js +1 -1
- package/dist/chunks/nobidAnalyticsAdapter.js +1 -1
- package/dist/chunks/nobidBidAdapter.js +1 -1
- package/dist/chunks/nobidBidAdapter.metadata.js +1 -1
- package/dist/chunks/nodalsAiRtdProvider.js +1 -1
- package/dist/chunks/nodalsAiRtdProvider.metadata.js +1 -1
- package/dist/chunks/novatiqIdSystem.metadata.js +1 -1
- package/dist/chunks/oguryBidAdapter.js +1 -1
- package/dist/chunks/oguryBidAdapter.metadata.js +1 -1
- package/dist/chunks/omsBidAdapter.metadata.js +1 -1
- package/dist/chunks/onetagBidAdapter.js +1 -1
- package/dist/chunks/onetagBidAdapter.metadata.js +1 -1
- package/dist/chunks/ooloAnalyticsAdapter.js +1 -1
- package/dist/chunks/openwebBidAdapter.metadata.js +1 -1
- package/dist/chunks/openxBidAdapter.js +1 -1
- package/dist/chunks/openxBidAdapter.metadata.js +1 -1
- package/dist/chunks/operaadsBidAdapter.metadata.js +1 -1
- package/dist/chunks/optidigitalBidAdapter.js +1 -1
- package/dist/chunks/optidigitalBidAdapter.metadata.js +1 -1
- package/dist/chunks/optoutBidAdapter.metadata.js +1 -1
- package/dist/chunks/orbidderBidAdapter.js +1 -1
- package/dist/chunks/orbidderBidAdapter.metadata.js +1 -1
- package/dist/chunks/ortbConverter.js +1 -1
- package/dist/chunks/outbrainBidAdapter.js +1 -1
- package/dist/chunks/outbrainBidAdapter.metadata.js +1 -1
- package/dist/chunks/ozoneBidAdapter.metadata.js +1 -1
- package/dist/chunks/pairIdSystem.metadata.js +1 -1
- package/dist/chunks/pbsExtensions.js +1 -1
- package/dist/chunks/performaxBidAdapter.metadata.js +1 -1
- package/dist/chunks/pgamsspBidAdapter.metadata.js +1 -1
- package/dist/chunks/pixfutureBidAdapter.js +1 -1
- package/dist/chunks/pixfutureBidAdapter.metadata.js +1 -1
- package/dist/chunks/playdigoBidAdapter.metadata.js +1 -1
- package/dist/chunks/prebid-core.metadata.js +1 -1
- package/dist/chunks/prebidServerBidAdapter.js +1 -1
- package/dist/chunks/precisoBidAdapter.metadata.js +1 -1
- package/dist/chunks/prismaBidAdapter.metadata.js +1 -1
- package/dist/chunks/programmaticXBidAdapter.metadata.js +1 -1
- package/dist/chunks/proxistoreBidAdapter.metadata.js +1 -1
- package/dist/chunks/publinkIdSystem.js +1 -1
- package/dist/chunks/publinkIdSystem.metadata.js +1 -1
- package/dist/chunks/pubmaticAnalyticsAdapter.js +1 -1
- package/dist/chunks/pubmaticBidAdapter.js +1 -1
- package/dist/chunks/pubmaticBidAdapter.metadata.js +1 -1
- package/dist/chunks/pubmaticIdSystem.metadata.js +1 -1
- package/dist/chunks/pubwiseAnalyticsAdapter.js +1 -1
- package/dist/chunks/pubxaiAnalyticsAdapter.js +1 -1
- package/dist/chunks/pulsepointBidAdapter.metadata.js +1 -1
- package/dist/chunks/pwbidBidAdapter.js +1 -1
- package/dist/chunks/pwbidBidAdapter.metadata.js +1 -1
- package/dist/chunks/pxyzBidAdapter.js +1 -1
- package/dist/chunks/qtBidAdapter.js +1 -1
- package/dist/chunks/qtBidAdapter.metadata.js +1 -1
- package/dist/chunks/quantcastBidAdapter.js +1 -1
- package/dist/chunks/quantcastBidAdapter.metadata.js +1 -1
- package/dist/chunks/quantcastIdSystem.metadata.js +1 -1
- package/dist/chunks/r2b2BidAdapter.metadata.js +1 -1
- package/dist/chunks/raynRtdProvider.js +1 -1
- package/dist/chunks/raynRtdProvider.metadata.js +1 -1
- package/dist/chunks/readpeakBidAdapter.js +1 -1
- package/dist/chunks/readpeakBidAdapter.metadata.js +1 -1
- package/dist/chunks/relaidoBidAdapter.js +1 -1
- package/dist/chunks/relayBidAdapter.metadata.js +1 -1
- package/dist/chunks/relevantdigitalBidAdapter.metadata.js +1 -1
- package/dist/chunks/resetdigitalBidAdapter.metadata.js +1 -1
- package/dist/chunks/responsiveAdsBidAdapter.metadata.js +1 -1
- package/dist/chunks/retailspotBidAdapter.js +1 -1
- package/dist/chunks/retailspotBidAdapter.metadata.js +1 -1
- package/dist/chunks/revcontentBidAdapter.metadata.js +1 -1
- package/dist/chunks/rhythmoneBidAdapter.js +1 -1
- package/dist/chunks/rhythmoneBidAdapter.metadata.js +1 -1
- package/dist/chunks/richaudienceBidAdapter.metadata.js +1 -1
- package/dist/chunks/riseBidAdapter.metadata.js +1 -1
- package/dist/chunks/riseUtils.js +1 -1
- package/dist/chunks/rixengineBidAdapter.metadata.js +1 -1
- package/dist/chunks/rtbhouseBidAdapter.metadata.js +1 -1
- package/dist/chunks/rtbsapeBidAdapter.js +1 -1
- package/dist/chunks/rubiconBidAdapter.js +1 -1
- package/dist/chunks/rubiconBidAdapter.metadata.js +1 -1
- package/dist/chunks/scatteredBidAdapter.js +1 -1
- package/dist/chunks/scatteredBidAdapter.metadata.js +1 -1
- package/dist/chunks/seedingAllianceBidAdapter.js +1 -1
- package/dist/chunks/seedingAllianceBidAdapter.metadata.js +1 -1
- package/dist/chunks/seedtagBidAdapter.js +1 -1
- package/dist/chunks/seedtagBidAdapter.metadata.js +1 -1
- package/dist/chunks/semantiqRtdProvider.metadata.js +1 -1
- package/dist/chunks/setupadBidAdapter.metadata.js +1 -1
- package/dist/chunks/sevioBidAdapter.js +1 -1
- package/dist/chunks/sevioBidAdapter.metadata.js +1 -1
- package/dist/chunks/sharedIdSystem.metadata.js +1 -1
- package/dist/chunks/sharethroughAnalyticsAdapter.js +1 -1
- package/dist/chunks/sharethroughBidAdapter.js +1 -1
- package/dist/chunks/sharethroughBidAdapter.metadata.js +1 -1
- package/dist/chunks/showheroes-bsBidAdapter.js +1 -1
- package/dist/chunks/showheroes-bsBidAdapter.metadata.js +1 -1
- package/dist/chunks/silvermobBidAdapter.metadata.js +1 -1
- package/dist/chunks/sirdataRtdProvider.metadata.js +1 -1
- package/dist/chunks/sizeMapping.js +1 -1
- package/dist/chunks/slimcutBidAdapter.js +1 -1
- package/dist/chunks/slimcutBidAdapter.metadata.js +1 -1
- package/dist/chunks/smaatoBidAdapter.js +1 -1
- package/dist/chunks/smaatoBidAdapter.metadata.js +1 -1
- package/dist/chunks/smartadserverBidAdapter.js +1 -1
- package/dist/chunks/smartadserverBidAdapter.metadata.js +1 -1
- package/dist/chunks/smartxBidAdapter.js +1 -1
- package/dist/chunks/smartxBidAdapter.metadata.js +1 -1
- package/dist/chunks/smartyadsBidAdapter.metadata.js +1 -1
- package/dist/chunks/smilewantedBidAdapter.js +1 -1
- package/dist/chunks/smilewantedBidAdapter.metadata.js +1 -1
- package/dist/chunks/snigelBidAdapter.js +1 -1
- package/dist/chunks/snigelBidAdapter.metadata.js +1 -1
- package/dist/chunks/sonaradsBidAdapter.js +1 -1
- package/dist/chunks/sonaradsBidAdapter.metadata.js +1 -1
- package/dist/chunks/sonobiBidAdapter.js +1 -1
- package/dist/chunks/sonobiBidAdapter.metadata.js +1 -1
- package/dist/chunks/sovrnBidAdapter.js +1 -1
- package/dist/chunks/sovrnBidAdapter.metadata.js +1 -1
- package/dist/chunks/sparteoBidAdapter.js +1 -1
- package/dist/chunks/sparteoBidAdapter.metadata.js +1 -1
- package/dist/chunks/ssmasBidAdapter.metadata.js +1 -1
- package/dist/chunks/sspBCBidAdapter.js +1 -1
- package/dist/chunks/sspBCBidAdapter.metadata.js +1 -1
- package/dist/chunks/stackadaptBidAdapter.metadata.js +1 -1
- package/dist/chunks/startioBidAdapter.metadata.js +1 -1
- package/dist/chunks/stroeerCoreBidAdapter.metadata.js +1 -1
- package/dist/chunks/stvBidAdapter.js +1 -1
- package/dist/chunks/stvBidAdapter.metadata.js +1 -1
- package/dist/chunks/sublimeBidAdapter.js +1 -1
- package/dist/chunks/sublimeBidAdapter.metadata.js +1 -1
- package/dist/chunks/taboolaBidAdapter.js +1 -1
- package/dist/chunks/taboolaBidAdapter.metadata.js +1 -1
- package/dist/chunks/taboolaIdSystem.metadata.js +1 -1
- package/dist/chunks/tadvertisingBidAdapter.js +1 -0
- package/dist/chunks/tadvertisingBidAdapter.metadata.js +1 -0
- package/dist/chunks/talkadsBidAdapter.js +1 -1
- package/dist/chunks/talkadsBidAdapter.metadata.js +1 -1
- package/dist/chunks/tappxBidAdapter.js +1 -1
- package/dist/chunks/tappxBidAdapter.metadata.js +1 -1
- package/dist/chunks/targetVideoBidAdapter.js +1 -1
- package/dist/chunks/targetVideoBidAdapter.metadata.js +1 -1
- package/dist/chunks/teadsBidAdapter.js +1 -1
- package/dist/chunks/teadsBidAdapter.metadata.js +1 -1
- package/dist/chunks/teadsIdSystem.metadata.js +1 -1
- package/dist/chunks/tealBidAdapter.metadata.js +1 -1
- package/dist/chunks/terceptAnalyticsAdapter.js +1 -1
- package/dist/chunks/themoneytizerBidAdapter.js +1 -1
- package/dist/chunks/tncIdSystem.metadata.js +1 -1
- package/dist/chunks/topicsFpdModule.metadata.js +1 -1
- package/dist/chunks/trionBidAdapter.js +1 -1
- package/dist/chunks/tripleliftBidAdapter.js +1 -1
- package/dist/chunks/tripleliftBidAdapter.metadata.js +1 -1
- package/dist/chunks/ttdBidAdapter.js +1 -1
- package/dist/chunks/ttdBidAdapter.metadata.js +1 -1
- package/dist/chunks/twistDigitalBidAdapter.metadata.js +1 -1
- package/dist/chunks/ucfunnelAnalyticsAdapter.js +1 -1
- package/dist/chunks/ucfunnelBidAdapter.js +1 -1
- package/dist/chunks/ucfunnelBidAdapter.metadata.js +1 -1
- package/dist/chunks/uid2IdSystem.js +1 -1
- package/dist/chunks/underdogmediaBidAdapter.js +1 -1
- package/dist/chunks/underdogmediaBidAdapter.metadata.js +1 -1
- package/dist/chunks/undertoneBidAdapter.js +1 -1
- package/dist/chunks/undertoneBidAdapter.metadata.js +1 -1
- package/dist/chunks/unifiedIdSystem.metadata.js +1 -1
- package/dist/chunks/unrulyBidAdapter.js +1 -1
- package/dist/chunks/unrulyBidAdapter.metadata.js +1 -1
- package/dist/chunks/userId.js +1 -1
- package/dist/chunks/userId.metadata.js +1 -1
- package/dist/chunks/validationFpdModule.metadata.js +1 -1
- package/dist/chunks/ventesBidAdapter.js +1 -1
- package/dist/chunks/vidazooBidAdapter.metadata.js +1 -1
- package/dist/chunks/vidazooUtils.js +1 -1
- package/dist/chunks/videobyteBidAdapter.js +1 -1
- package/dist/chunks/videoreachBidAdapter.js +1 -1
- package/dist/chunks/videoreachBidAdapter.metadata.js +1 -1
- package/dist/chunks/vidoomyBidAdapter.metadata.js +1 -1
- package/dist/chunks/viewdeosDXBidAdapter.js +1 -1
- package/dist/chunks/viewdeosDXBidAdapter.metadata.js +1 -1
- package/dist/chunks/viouslyBidAdapter.metadata.js +1 -1
- package/dist/chunks/visxBidAdapter.js +1 -1
- package/dist/chunks/visxBidAdapter.metadata.js +1 -1
- package/dist/chunks/vlybyBidAdapter.metadata.js +1 -1
- package/dist/chunks/voxBidAdapter.metadata.js +1 -1
- package/dist/chunks/vrtcalBidAdapter.metadata.js +1 -1
- package/dist/chunks/vuukleBidAdapter.js +1 -1
- package/dist/chunks/vuukleBidAdapter.metadata.js +1 -1
- package/dist/chunks/weboramaRtdProvider.metadata.js +1 -1
- package/dist/chunks/welectBidAdapter.metadata.js +1 -1
- package/dist/chunks/widespaceBidAdapter.js +1 -1
- package/dist/chunks/winrBidAdapter.js +1 -1
- package/dist/chunks/yahooAdsBidAdapter.js +1 -1
- package/dist/chunks/yahooAdsBidAdapter.metadata.js +1 -1
- package/dist/chunks/yandexBidAdapter.js +1 -1
- package/dist/chunks/yieldlabBidAdapter.js +1 -1
- package/dist/chunks/yieldlabBidAdapter.metadata.js +1 -1
- package/dist/chunks/yieldliftBidAdapter.js +1 -1
- package/dist/chunks/yieldliftBidAdapter.metadata.js +1 -1
- package/dist/chunks/yieldloveBidAdapter.metadata.js +1 -1
- package/dist/chunks/yieldmoBidAdapter.js +1 -1
- package/dist/chunks/yieldmoBidAdapter.metadata.js +1 -1
- package/dist/chunks/yieldoneAnalyticsAdapter.js +1 -1
- package/dist/chunks/zeotapIdPlusIdSystem.metadata.js +1 -1
- package/dist/chunks/zeta_globalBidAdapter.metadata.js +1 -1
- package/dist/chunks/zeta_global_sspBidAdapter.metadata.js +1 -1
- package/dist/not-for-prod/prebid.js +480 -478
- package/dist/src/creative/renderers/display/renderer.js +3 -1
- package/dist/src/creative/renderers/display/renderer.js.map +1 -1
- package/dist/src/libraries/adagioUtils/adagioUtils.js +1 -1
- package/dist/src/libraries/creative-renderer-display/renderer.d.ts +1 -1
- package/dist/src/libraries/creative-renderer-display/renderer.js +1 -1
- package/dist/src/libraries/creative-renderer-display/renderer.js.map +1 -1
- package/dist/src/libraries/equativUtils/equativUtils.js +1 -1
- package/dist/src/libraries/equativUtils/equativUtils.js.map +1 -1
- package/dist/src/libraries/greedy/greedyPromise.js +15 -7
- package/dist/src/libraries/greedy/greedyPromise.js.map +1 -1
- package/dist/src/libraries/liveIntentId/externalIdSystem.js +1 -1
- package/dist/src/libraries/liveIntentId/idSystem.js +1 -1
- package/dist/src/libraries/liveIntentId/shared.js +20 -0
- package/dist/src/libraries/liveIntentId/shared.js.map +1 -1
- package/dist/src/libraries/mediaImpactUtils/index.js +93 -0
- package/dist/src/libraries/mediaImpactUtils/index.js.map +1 -1
- package/dist/src/libraries/medianetUtils/constants.js +1 -1
- package/dist/src/libraries/nexx360Utils/index.js +1 -1
- package/dist/src/libraries/ortbConverter/processors/default.js +1 -1
- package/dist/src/libraries/ortbConverter/processors/default.js.map +1 -1
- package/dist/src/libraries/pbsExtensions/processors/pbs.js +3 -1
- package/dist/src/libraries/pbsExtensions/processors/pbs.js.map +1 -1
- package/dist/src/libraries/riseUtils/index.js +1 -1
- package/dist/src/libraries/vidazooUtils/bidderUtils.js +1 -1
- package/dist/src/metadata/modules/33acrossBidAdapter.js +1 -1
- package/dist/src/metadata/modules/33acrossIdSystem.js +1 -1
- package/dist/src/metadata/modules/acuityadsBidAdapter.js +1 -1
- package/dist/src/metadata/modules/adagioBidAdapter.js +1 -1
- package/dist/src/metadata/modules/adagioRtdProvider.js +1 -1
- package/dist/src/metadata/modules/addefendBidAdapter.js +1 -1
- package/dist/src/metadata/modules/adfBidAdapter.js +1 -1
- package/dist/src/metadata/modules/adfusionBidAdapter.js +1 -1
- package/dist/src/metadata/modules/adheseBidAdapter.js +1 -1
- package/dist/src/metadata/modules/adipoloBidAdapter.js +1 -1
- package/dist/src/metadata/modules/adkernelAdnBidAdapter.js +1 -1
- package/dist/src/metadata/modules/adkernelBidAdapter.js +1 -1
- package/dist/src/metadata/modules/admaticBidAdapter.js +1 -1
- package/dist/src/metadata/modules/admixerBidAdapter.js +1 -1
- package/dist/src/metadata/modules/admixerIdSystem.js +1 -1
- package/dist/src/metadata/modules/adnowBidAdapter.js +1 -1
- package/dist/src/metadata/modules/adnuntiusBidAdapter.js +1 -1
- package/dist/src/metadata/modules/adnuntiusRtdProvider.js +1 -1
- package/dist/src/metadata/modules/adotBidAdapter.js +1 -1
- package/dist/src/metadata/modules/adponeBidAdapter.js +1 -1
- package/dist/src/metadata/modules/adqueryBidAdapter.js +1 -1
- package/dist/src/metadata/modules/adqueryIdSystem.js +1 -1
- package/dist/src/metadata/modules/adrinoBidAdapter.js +1 -1
- package/dist/src/metadata/modules/ads_interactiveBidAdapter.js +1 -1
- package/dist/src/metadata/modules/adtargetBidAdapter.js +1 -1
- package/dist/src/metadata/modules/adtelligentBidAdapter.js +1 -1
- package/dist/src/metadata/modules/adtelligentIdSystem.js +1 -1
- package/dist/src/metadata/modules/aduptechBidAdapter.js +1 -1
- package/dist/src/metadata/modules/adyoulikeBidAdapter.js +1 -1
- package/dist/src/metadata/modules/aidemBidAdapter.js +1 -1
- package/dist/src/metadata/modules/airgridRtdProvider.js +1 -1
- package/dist/src/metadata/modules/alkimiBidAdapter.js +1 -1
- package/dist/src/metadata/modules/ampliffyBidAdapter.js +1 -1
- package/dist/src/metadata/modules/amxBidAdapter.js +1 -1
- package/dist/src/metadata/modules/amxIdSystem.js +1 -1
- package/dist/src/metadata/modules/aniviewBidAdapter.js +1 -1
- package/dist/src/metadata/modules/anonymisedRtdProvider.js +1 -1
- package/dist/src/metadata/modules/appierBidAdapter.js +1 -1
- package/dist/src/metadata/modules/appnexusBidAdapter.js +1 -1
- package/dist/src/metadata/modules/appushBidAdapter.js +1 -1
- package/dist/src/metadata/modules/apstreamBidAdapter.js +1 -1
- package/dist/src/metadata/modules/audiencerunBidAdapter.js +1 -1
- package/dist/src/metadata/modules/axisBidAdapter.js +1 -1
- package/dist/src/metadata/modules/azerionedgeRtdProvider.js +1 -1
- package/dist/src/metadata/modules/beachfrontBidAdapter.js +1 -1
- package/dist/src/metadata/modules/beopBidAdapter.js +1 -1
- package/dist/src/metadata/modules/betweenBidAdapter.js +1 -1
- package/dist/src/metadata/modules/bidmaticBidAdapter.js +1 -1
- package/dist/src/metadata/modules/bidtheatreBidAdapter.js +1 -1
- package/dist/src/metadata/modules/bliinkBidAdapter.js +1 -1
- package/dist/src/metadata/modules/blockthroughBidAdapter.js +1 -1
- package/dist/src/metadata/modules/blueBidAdapter.js +1 -1
- package/dist/src/metadata/modules/bmsBidAdapter.js +1 -1
- package/dist/src/metadata/modules/boldwinBidAdapter.js +1 -1
- package/dist/src/metadata/modules/bridBidAdapter.js +1 -1
- package/dist/src/metadata/modules/browsiBidAdapter.js +1 -1
- package/dist/src/metadata/modules/bucksenseBidAdapter.js +1 -1
- package/dist/src/metadata/modules/cadent_aperture_mxBidAdapter.js +1 -1
- package/dist/src/metadata/modules/carodaBidAdapter.js +1 -1
- package/dist/src/metadata/modules/categoryTranslation.js +1 -1
- package/dist/src/metadata/modules/ccxBidAdapter.js +1 -1
- package/dist/src/metadata/modules/ceeIdSystem.js +1 -1
- package/dist/src/metadata/modules/chromeAiRtdProvider.js +1 -1
- package/dist/src/metadata/modules/compassBidAdapter.js +1 -1
- package/dist/src/metadata/modules/conceptxBidAdapter.js +1 -1
- package/dist/src/metadata/modules/connatixBidAdapter.js +1 -1
- package/dist/src/metadata/modules/connectIdSystem.js +1 -1
- package/dist/src/metadata/modules/connectadBidAdapter.js +1 -1
- package/dist/src/metadata/modules/contentexchangeBidAdapter.js +1 -1
- package/dist/src/metadata/modules/conversantBidAdapter.js +1 -1
- package/dist/src/metadata/modules/copper6sspBidAdapter.js +1 -1
- package/dist/src/metadata/modules/cpmstarBidAdapter.js +1 -1
- package/dist/src/metadata/modules/criteoBidAdapter.js +1 -1
- package/dist/src/metadata/modules/criteoIdSystem.js +1 -1
- package/dist/src/metadata/modules/cwireBidAdapter.js +1 -1
- package/dist/src/metadata/modules/czechAdIdSystem.js +1 -1
- package/dist/src/metadata/modules/dailymotionBidAdapter.js +1 -1
- package/dist/src/metadata/modules/debugging.js +1 -1
- package/dist/src/metadata/modules/deepintentBidAdapter.js +1 -1
- package/dist/src/metadata/modules/deltaprojectsBidAdapter.js +1 -1
- package/dist/src/metadata/modules/dianomiBidAdapter.js +1 -1
- package/dist/src/metadata/modules/digitalMatterBidAdapter.js +1 -1
- package/dist/src/metadata/modules/distroscaleBidAdapter.js +1 -1
- package/dist/src/metadata/modules/docereeAdManagerBidAdapter.js +1 -1
- package/dist/src/metadata/modules/docereeBidAdapter.js +1 -1
- package/dist/src/metadata/modules/dspxBidAdapter.js +1 -1
- package/dist/src/metadata/modules/e_volutionBidAdapter.js +1 -1
- package/dist/src/metadata/modules/edge226BidAdapter.js +1 -1
- package/dist/src/metadata/modules/equativBidAdapter.js +1 -1
- package/dist/src/metadata/modules/eskimiBidAdapter.js +1 -1
- package/dist/src/metadata/modules/etargetBidAdapter.js +1 -1
- package/dist/src/metadata/modules/euidIdSystem.js +1 -1
- package/dist/src/metadata/modules/exadsBidAdapter.js +1 -1
- package/dist/src/metadata/modules/feedadBidAdapter.js +1 -1
- package/dist/src/metadata/modules/fwsspBidAdapter.js +1 -1
- package/dist/src/metadata/modules/gamoshiBidAdapter.js +1 -1
- package/dist/src/metadata/modules/glomexBidAdapter.js +1 -1
- package/dist/src/metadata/modules/goldbachBidAdapter.js +1 -1
- package/dist/src/metadata/modules/greenbidsBidAdapter.js +1 -1
- package/dist/src/metadata/modules/gridBidAdapter.js +1 -1
- package/dist/src/metadata/modules/gumgumBidAdapter.js +1 -1
- package/dist/src/metadata/modules/hadronIdSystem.js +1 -1
- package/dist/src/metadata/modules/hadronRtdProvider.js +1 -1
- package/dist/src/metadata/modules/holidBidAdapter.js +1 -1
- package/dist/src/metadata/modules/hybridBidAdapter.js +1 -1
- package/dist/src/metadata/modules/id5IdSystem.js +1 -1
- package/dist/src/metadata/modules/identityLinkIdSystem.js +1 -1
- package/dist/src/metadata/modules/illuminBidAdapter.js +1 -1
- package/dist/src/metadata/modules/impactifyBidAdapter.js +1 -1
- package/dist/src/metadata/modules/improvedigitalBidAdapter.js +1 -1
- package/dist/src/metadata/modules/inmobiBidAdapter.js +1 -1
- package/dist/src/metadata/modules/innityBidAdapter.js +1 -1
- package/dist/src/metadata/modules/insticatorBidAdapter.js +1 -1
- package/dist/src/metadata/modules/intentIqIdSystem.js +1 -1
- package/dist/src/metadata/modules/invibesBidAdapter.js +1 -1
- package/dist/src/metadata/modules/ipromBidAdapter.js +1 -1
- package/dist/src/metadata/modules/ixBidAdapter.js +1 -1
- package/dist/src/metadata/modules/justIdSystem.js +1 -1
- package/dist/src/metadata/modules/justpremiumBidAdapter.js +1 -1
- package/dist/src/metadata/modules/jwplayerBidAdapter.js +1 -1
- package/dist/src/metadata/modules/kargoBidAdapter.js +1 -1
- package/dist/src/metadata/modules/kueezRtbBidAdapter.js +1 -1
- package/dist/src/metadata/modules/limelightDigitalBidAdapter.js +1 -1
- package/dist/src/metadata/modules/liveIntentIdSystem.js +1 -1
- package/dist/src/metadata/modules/liveIntentRtdProvider.js +1 -1
- package/dist/src/metadata/modules/livewrappedBidAdapter.js +1 -1
- package/dist/src/metadata/modules/loopmeBidAdapter.js +1 -1
- package/dist/src/metadata/modules/lotamePanoramaIdSystem.js +1 -1
- package/dist/src/metadata/modules/luceadBidAdapter.js +1 -1
- package/dist/src/metadata/modules/luponmediaBidAdapter.js +1 -1
- package/dist/src/metadata/modules/madvertiseBidAdapter.js +1 -1
- package/dist/src/metadata/modules/marsmediaBidAdapter.js +1 -1
- package/dist/src/metadata/modules/mediaConsortiumBidAdapter.js +1 -1
- package/dist/src/metadata/modules/mediaforceBidAdapter.js +1 -1
- package/dist/src/metadata/modules/mediafuseBidAdapter.js +1 -1
- package/dist/src/metadata/modules/mediagoBidAdapter.js +1 -1
- package/dist/src/metadata/modules/mediakeysBidAdapter.js +1 -1
- package/dist/src/metadata/modules/medianetBidAdapter.js +1 -1
- package/dist/src/metadata/modules/mediasquareBidAdapter.js +1 -1
- package/dist/src/metadata/modules/mgidBidAdapter.js +1 -1
- package/dist/src/metadata/modules/mgidRtdProvider.js +1 -1
- package/dist/src/metadata/modules/mgidXBidAdapter.js +1 -1
- package/dist/src/metadata/modules/minutemediaBidAdapter.js +1 -1
- package/dist/src/metadata/modules/missenaBidAdapter.js +1 -1
- package/dist/src/metadata/modules/mobianRtdProvider.js +1 -1
- package/dist/src/metadata/modules/mobilefuseBidAdapter.js +1 -1
- package/dist/src/metadata/modules/mobkoiBidAdapter.js +1 -1
- package/dist/src/metadata/modules/mobkoiIdSystem.js +1 -1
- package/dist/src/metadata/modules/nativeryBidAdapter.js +1 -1
- package/dist/src/metadata/modules/nativoBidAdapter.js +1 -1
- package/dist/src/metadata/modules/newspassidBidAdapter.js +1 -1
- package/dist/src/metadata/modules/nextMillenniumBidAdapter.js +1 -1
- package/dist/src/metadata/modules/nextrollBidAdapter.js +1 -1
- package/dist/src/metadata/modules/nexx360BidAdapter.js +1 -1
- package/dist/src/metadata/modules/nobidBidAdapter.js +1 -1
- package/dist/src/metadata/modules/nodalsAiRtdProvider.js +1 -1
- package/dist/src/metadata/modules/novatiqIdSystem.js +1 -1
- package/dist/src/metadata/modules/oguryBidAdapter.js +1 -1
- package/dist/src/metadata/modules/omsBidAdapter.js +1 -1
- package/dist/src/metadata/modules/onetagBidAdapter.js +1 -1
- package/dist/src/metadata/modules/openwebBidAdapter.js +1 -1
- package/dist/src/metadata/modules/openxBidAdapter.js +1 -1
- package/dist/src/metadata/modules/operaadsBidAdapter.js +1 -1
- package/dist/src/metadata/modules/optidigitalBidAdapter.js +1 -1
- package/dist/src/metadata/modules/optoutBidAdapter.js +1 -1
- package/dist/src/metadata/modules/orbidderBidAdapter.js +1 -1
- package/dist/src/metadata/modules/outbrainBidAdapter.js +1 -1
- package/dist/src/metadata/modules/ozoneBidAdapter.js +1 -1
- package/dist/src/metadata/modules/pairIdSystem.js +1 -1
- package/dist/src/metadata/modules/performaxBidAdapter.js +1 -1
- package/dist/src/metadata/modules/pgamsspBidAdapter.js +1 -1
- package/dist/src/metadata/modules/pixfutureBidAdapter.js +1 -1
- package/dist/src/metadata/modules/playdigoBidAdapter.js +1 -1
- package/dist/src/metadata/modules/prebid-core.js +1 -1
- package/dist/src/metadata/modules/precisoBidAdapter.js +1 -1
- package/dist/src/metadata/modules/prismaBidAdapter.js +1 -1
- package/dist/src/metadata/modules/programmaticXBidAdapter.js +1 -1
- package/dist/src/metadata/modules/proxistoreBidAdapter.js +1 -1
- package/dist/src/metadata/modules/publinkIdSystem.js +1 -1
- package/dist/src/metadata/modules/pubmaticBidAdapter.js +1 -1
- package/dist/src/metadata/modules/pubmaticIdSystem.js +1 -1
- package/dist/src/metadata/modules/pulsepointBidAdapter.js +1 -1
- package/dist/src/metadata/modules/pwbidBidAdapter.js +1 -1
- package/dist/src/metadata/modules/qtBidAdapter.js +1 -1
- package/dist/src/metadata/modules/quantcastBidAdapter.js +1 -1
- package/dist/src/metadata/modules/quantcastIdSystem.js +1 -1
- package/dist/src/metadata/modules/r2b2BidAdapter.js +1 -1
- package/dist/src/metadata/modules/raynRtdProvider.js +1 -1
- package/dist/src/metadata/modules/readpeakBidAdapter.js +1 -1
- package/dist/src/metadata/modules/relayBidAdapter.js +1 -1
- package/dist/src/metadata/modules/relevantdigitalBidAdapter.js +1 -1
- package/dist/src/metadata/modules/resetdigitalBidAdapter.js +1 -1
- package/dist/src/metadata/modules/responsiveAdsBidAdapter.js +1 -1
- package/dist/src/metadata/modules/retailspotBidAdapter.js +1 -1
- package/dist/src/metadata/modules/revcontentBidAdapter.js +1 -1
- package/dist/src/metadata/modules/rhythmoneBidAdapter.js +1 -1
- package/dist/src/metadata/modules/richaudienceBidAdapter.js +1 -1
- package/dist/src/metadata/modules/riseBidAdapter.js +1 -1
- package/dist/src/metadata/modules/rixengineBidAdapter.js +1 -1
- package/dist/src/metadata/modules/rtbhouseBidAdapter.js +1 -1
- package/dist/src/metadata/modules/rubiconBidAdapter.js +1 -1
- package/dist/src/metadata/modules/scatteredBidAdapter.js +1 -1
- package/dist/src/metadata/modules/seedingAllianceBidAdapter.js +1 -1
- package/dist/src/metadata/modules/seedtagBidAdapter.js +1 -1
- package/dist/src/metadata/modules/semantiqRtdProvider.js +1 -1
- package/dist/src/metadata/modules/setupadBidAdapter.js +1 -1
- package/dist/src/metadata/modules/sevioBidAdapter.js +1 -1
- package/dist/src/metadata/modules/sharedIdSystem.js +1 -1
- package/dist/src/metadata/modules/sharethroughBidAdapter.js +1 -1
- package/dist/src/metadata/modules/showheroes-bsBidAdapter.js +1 -1
- package/dist/src/metadata/modules/silvermobBidAdapter.js +1 -1
- package/dist/src/metadata/modules/sirdataRtdProvider.js +1 -1
- package/dist/src/metadata/modules/slimcutBidAdapter.js +1 -1
- package/dist/src/metadata/modules/smaatoBidAdapter.js +1 -1
- package/dist/src/metadata/modules/smartadserverBidAdapter.js +1 -1
- package/dist/src/metadata/modules/smartxBidAdapter.js +1 -1
- package/dist/src/metadata/modules/smartyadsBidAdapter.js +1 -1
- package/dist/src/metadata/modules/smilewantedBidAdapter.js +1 -1
- package/dist/src/metadata/modules/snigelBidAdapter.js +1 -1
- package/dist/src/metadata/modules/sonaradsBidAdapter.js +1 -1
- package/dist/src/metadata/modules/sonobiBidAdapter.js +1 -1
- package/dist/src/metadata/modules/sovrnBidAdapter.js +1 -1
- package/dist/src/metadata/modules/sparteoBidAdapter.js +1 -1
- package/dist/src/metadata/modules/ssmasBidAdapter.js +1 -1
- package/dist/src/metadata/modules/sspBCBidAdapter.js +1 -1
- package/dist/src/metadata/modules/stackadaptBidAdapter.js +1 -1
- package/dist/src/metadata/modules/startioBidAdapter.js +1 -1
- package/dist/src/metadata/modules/stroeerCoreBidAdapter.js +1 -1
- package/dist/src/metadata/modules/stvBidAdapter.js +1 -1
- package/dist/src/metadata/modules/sublimeBidAdapter.js +1 -1
- package/dist/src/metadata/modules/taboolaBidAdapter.js +1 -1
- package/dist/src/metadata/modules/taboolaIdSystem.js +1 -1
- package/dist/src/metadata/modules/tadvertisingBidAdapter.js +2 -0
- package/dist/src/metadata/modules/talkadsBidAdapter.js +1 -1
- package/dist/src/metadata/modules/tappxBidAdapter.js +1 -1
- package/dist/src/metadata/modules/targetVideoBidAdapter.js +1 -1
- package/dist/src/metadata/modules/teadsBidAdapter.js +1 -1
- package/dist/src/metadata/modules/teadsIdSystem.js +1 -1
- package/dist/src/metadata/modules/tealBidAdapter.js +1 -1
- package/dist/src/metadata/modules/tncIdSystem.js +1 -1
- package/dist/src/metadata/modules/topicsFpdModule.js +1 -1
- package/dist/src/metadata/modules/tripleliftBidAdapter.js +1 -1
- package/dist/src/metadata/modules/ttdBidAdapter.js +1 -1
- package/dist/src/metadata/modules/twistDigitalBidAdapter.js +1 -1
- package/dist/src/metadata/modules/ucfunnelBidAdapter.js +1 -1
- package/dist/src/metadata/modules/underdogmediaBidAdapter.js +1 -1
- package/dist/src/metadata/modules/undertoneBidAdapter.js +1 -1
- package/dist/src/metadata/modules/unifiedIdSystem.js +1 -1
- package/dist/src/metadata/modules/unrulyBidAdapter.js +1 -1
- package/dist/src/metadata/modules/userId.js +1 -1
- package/dist/src/metadata/modules/validationFpdModule.js +1 -1
- package/dist/src/metadata/modules/vidazooBidAdapter.js +1 -1
- package/dist/src/metadata/modules/videoreachBidAdapter.js +1 -1
- package/dist/src/metadata/modules/vidoomyBidAdapter.js +1 -1
- package/dist/src/metadata/modules/viewdeosDXBidAdapter.js +1 -1
- package/dist/src/metadata/modules/viouslyBidAdapter.js +1 -1
- package/dist/src/metadata/modules/visxBidAdapter.js +1 -1
- package/dist/src/metadata/modules/vlybyBidAdapter.js +1 -1
- package/dist/src/metadata/modules/voxBidAdapter.js +1 -1
- package/dist/src/metadata/modules/vrtcalBidAdapter.js +1 -1
- package/dist/src/metadata/modules/vuukleBidAdapter.js +1 -1
- package/dist/src/metadata/modules/weboramaRtdProvider.js +1 -1
- package/dist/src/metadata/modules/welectBidAdapter.js +1 -1
- package/dist/src/metadata/modules/yahooAdsBidAdapter.js +1 -1
- package/dist/src/metadata/modules/yieldlabBidAdapter.js +1 -1
- package/dist/src/metadata/modules/yieldliftBidAdapter.js +1 -1
- package/dist/src/metadata/modules/yieldloveBidAdapter.js +1 -1
- package/dist/src/metadata/modules/yieldmoBidAdapter.js +1 -1
- package/dist/src/metadata/modules/zeotapIdPlusIdSystem.js +1 -1
- package/dist/src/metadata/modules/zeta_globalBidAdapter.js +1 -1
- package/dist/src/metadata/modules/zeta_global_sspBidAdapter.js +1 -1
- package/dist/src/modules/33acrossAnalyticsAdapter.js +1 -1
- package/dist/src/modules/33acrossBidAdapter.js +1 -1
- package/dist/src/modules/33acrossIdSystem.js +1 -1
- package/dist/src/modules/adagioAnalyticsAdapter.js +1 -1
- package/dist/src/modules/adagioBidAdapter.js +5 -2
- package/dist/src/modules/adagioBidAdapter.js.map +1 -1
- package/dist/src/modules/addefendBidAdapter.js +1 -1
- package/dist/src/modules/adgenerationBidAdapter.js +1 -1
- package/dist/src/modules/adipoloBidAdapter.js +2 -0
- package/dist/src/modules/adipoloBidAdapter.js.map +1 -1
- package/dist/src/modules/adlooxRtdProvider.js +1 -1
- package/dist/src/modules/admaticBidAdapter.js +12 -8
- package/dist/src/modules/admaticBidAdapter.js.map +1 -1
- package/dist/src/modules/admixerBidAdapter.js +3 -1
- package/dist/src/modules/admixerBidAdapter.js.map +1 -1
- package/dist/src/modules/adpartnerBidAdapter.js +5 -87
- package/dist/src/modules/adpartnerBidAdapter.js.map +1 -1
- package/dist/src/modules/adplayerproVideoProvider.js +3 -1
- package/dist/src/modules/adplayerproVideoProvider.js.map +1 -1
- package/dist/src/modules/adqueryBidAdapter.js +1 -1
- package/dist/src/modules/adrelevantisBidAdapter.js +10 -4
- package/dist/src/modules/adrelevantisBidAdapter.js.map +1 -1
- package/dist/src/modules/adstirBidAdapter.js +1 -1
- package/dist/src/modules/adtelligentBidAdapter.js +4 -0
- package/dist/src/modules/adtelligentBidAdapter.js.map +1 -1
- package/dist/src/modules/adtrgtmeBidAdapter.js +1 -1
- package/dist/src/modules/advertisingBidAdapter.js +5 -3
- package/dist/src/modules/advertisingBidAdapter.js.map +1 -1
- package/dist/src/modules/adxcgAnalyticsAdapter.js +1 -1
- package/dist/src/modules/adxcgBidAdapter.js +1 -1
- package/dist/src/modules/adyoulikeBidAdapter.js +1 -1
- package/dist/src/modules/agmaAnalyticsAdapter.js +1 -1
- package/dist/src/modules/aidemBidAdapter.js +0 -2
- package/dist/src/modules/aidemBidAdapter.js.map +1 -1
- package/dist/src/modules/ajaBidAdapter.js +1 -1
- package/dist/src/modules/ampliffyBidAdapter.js +0 -2
- package/dist/src/modules/ampliffyBidAdapter.js.map +1 -1
- package/dist/src/modules/amxBidAdapter.js +2 -2
- package/dist/src/modules/amxIdSystem.js +1 -1
- package/dist/src/modules/aniviewBidAdapter.js +1 -1
- package/dist/src/modules/appierAnalyticsAdapter.js +1 -1
- package/dist/src/modules/appnexusBidAdapter.js +5 -3
- package/dist/src/modules/appnexusBidAdapter.js.map +1 -1
- package/dist/src/modules/asoBidAdapter.js +1 -1
- package/dist/src/modules/axonixBidAdapter.js +1 -1
- package/dist/src/modules/beachfrontBidAdapter.js +2 -2
- package/dist/src/modules/beachfrontBidAdapter.js.map +1 -1
- package/dist/src/modules/beopBidAdapter.js +2 -2
- package/dist/src/modules/bidViewability.js +4 -1
- package/dist/src/modules/bidViewability.js.map +1 -1
- package/dist/src/modules/bidglassBidAdapter.js +1 -1
- package/dist/src/modules/bidmaticBidAdapter.js +1 -0
- package/dist/src/modules/bidmaticBidAdapter.js.map +1 -1
- package/dist/src/modules/bitmediaBidAdapter.js +1 -1
- package/dist/src/modules/blockthroughBidAdapter.js +1 -1
- package/dist/src/modules/bmtmBidAdapter.js +1 -1
- package/dist/src/modules/bridBidAdapter.js +1 -1
- package/dist/src/modules/bridgewellBidAdapter.js +1 -1
- package/dist/src/modules/buzzoolaBidAdapter.js +3 -1
- package/dist/src/modules/buzzoolaBidAdapter.js.map +1 -1
- package/dist/src/modules/cadent_aperture_mxBidAdapter.js +5 -10
- package/dist/src/modules/cadent_aperture_mxBidAdapter.js.map +1 -1
- package/dist/src/modules/carodaBidAdapter.js +1 -1
- package/dist/src/modules/ccxBidAdapter.js +0 -2
- package/dist/src/modules/ccxBidAdapter.js.map +1 -1
- package/dist/src/modules/chtnwBidAdapter.js +1 -1
- package/dist/src/modules/codefuelBidAdapter.js +3 -1
- package/dist/src/modules/codefuelBidAdapter.js.map +1 -1
- package/dist/src/modules/concertAnalyticsAdapter.js +3 -1
- package/dist/src/modules/concertAnalyticsAdapter.js.map +1 -1
- package/dist/src/modules/concertBidAdapter.js +1 -1
- package/dist/src/modules/connectadBidAdapter.js +1 -1
- package/dist/src/modules/consumableBidAdapter.js +1 -1
- package/dist/src/modules/contxtfulBidAdapter.js +1 -1
- package/dist/src/modules/contxtfulRtdProvider.js +4 -1
- package/dist/src/modules/contxtfulRtdProvider.js.map +1 -1
- package/dist/src/modules/conversantBidAdapter.js +1 -1
- package/dist/src/modules/craftBidAdapter.js +1 -1
- package/dist/src/modules/criteoBidAdapter.js +14 -10
- package/dist/src/modules/criteoBidAdapter.js.map +1 -1
- package/dist/src/modules/cwireBidAdapter.js +1 -1
- package/dist/src/modules/dailymotionBidAdapter.js +1 -1
- package/dist/src/modules/dspxBidAdapter.js +4 -2
- package/dist/src/modules/dspxBidAdapter.js.map +1 -1
- package/dist/src/modules/dxkultureBidAdapter.js +1 -1
- package/dist/src/modules/eplanningBidAdapter.js +4 -2
- package/dist/src/modules/eplanningBidAdapter.js.map +1 -1
- package/dist/src/modules/equativBidAdapter.js +4 -2
- package/dist/src/modules/equativBidAdapter.js.map +1 -1
- package/dist/src/modules/eskimiBidAdapter.js +1 -1
- package/dist/src/modules/euidIdSystem.js +1 -1
- package/dist/src/modules/exadsBidAdapter.js +1 -1
- package/dist/src/modules/excoBidAdapter.js +3 -3
- package/dist/src/modules/feedadBidAdapter.js +7 -5
- package/dist/src/modules/feedadBidAdapter.js.map +1 -1
- package/dist/src/modules/finativeBidAdapter.js +1 -1
- package/dist/src/modules/gmosspBidAdapter.js +1 -1
- package/dist/src/modules/greenbidsAnalyticsAdapter.js +1 -1
- package/dist/src/modules/greenbidsBidAdapter.js +1 -1
- package/dist/src/modules/greenbidsRtdProvider.js +1 -1
- package/dist/src/modules/gridBidAdapter.js +2 -2
- package/dist/src/modules/gumgumBidAdapter.js +2 -2
- package/dist/src/modules/h12mediaBidAdapter.js +1 -1
- package/dist/src/modules/hypelabBidAdapter.js +1 -1
- package/dist/src/modules/id5AnalyticsAdapter.js +1 -1
- package/dist/src/modules/id5IdSystem.js +1 -1
- package/dist/src/modules/improvedigitalBidAdapter.js +1 -1
- package/dist/src/modules/inmobiBidAdapter.js +1 -1
- package/dist/src/modules/innityBidAdapter.js +0 -2
- package/dist/src/modules/innityBidAdapter.js.map +1 -1
- package/dist/src/modules/insticatorBidAdapter.js +1 -1
- package/dist/src/modules/intentIqAnalyticsAdapter.js +1 -1
- package/dist/src/modules/intersectionRtdProvider.js +3 -1
- package/dist/src/modules/intersectionRtdProvider.js.map +1 -1
- package/dist/src/modules/ixBidAdapter.js +1 -1
- package/dist/src/modules/jixieBidAdapter.js +1 -1
- package/dist/src/modules/justpremiumBidAdapter.js +3 -2
- package/dist/src/modules/justpremiumBidAdapter.js.map +1 -1
- package/dist/src/modules/kargoBidAdapter.js +3 -2
- package/dist/src/modules/kargoBidAdapter.js.map +1 -1
- package/dist/src/modules/kimberliteBidAdapter.js +1 -1
- package/dist/src/modules/lassoBidAdapter.js +1 -1
- package/dist/src/modules/lifestreetBidAdapter.js +1 -1
- package/dist/src/modules/livewrappedAnalyticsAdapter.js +10 -0
- package/dist/src/modules/livewrappedAnalyticsAdapter.js.map +1 -1
- package/dist/src/modules/logicadBidAdapter.js +1 -1
- package/dist/src/modules/luceadBidAdapter.js +1 -3
- package/dist/src/modules/luceadBidAdapter.js.map +1 -1
- package/dist/src/modules/mabidderBidAdapter.js +1 -1
- package/dist/src/modules/madsenseBidAdapter.js +1 -1
- package/dist/src/modules/madvertiseBidAdapter.js +3 -1
- package/dist/src/modules/madvertiseBidAdapter.js.map +1 -1
- package/dist/src/modules/magniteAnalyticsAdapter.js +1 -1
- package/dist/src/modules/malltvAnalyticsAdapter.js +1 -1
- package/dist/src/modules/marsmediaBidAdapter.js +1 -1
- package/dist/src/modules/mediafuseBidAdapter.js +5 -3
- package/dist/src/modules/mediafuseBidAdapter.js.map +1 -1
- package/dist/src/modules/mediaimpactBidAdapter.js +5 -87
- package/dist/src/modules/mediaimpactBidAdapter.js.map +1 -1
- package/dist/src/modules/medianetBidAdapter.js +1 -1
- package/dist/src/modules/mediasquareBidAdapter.js +2 -2
- package/dist/src/modules/mgidBidAdapter.js +1 -1
- package/dist/src/modules/missenaBidAdapter.js +1 -1
- package/dist/src/modules/mobilefuseBidAdapter.js +1 -2
- package/dist/src/modules/mobilefuseBidAdapter.js.map +1 -1
- package/dist/src/modules/mobkoiAnalyticsAdapter.js +17 -17
- package/dist/src/modules/mobkoiAnalyticsAdapter.js.map +1 -1
- package/dist/src/modules/mobkoiBidAdapter.js +19 -16
- package/dist/src/modules/mobkoiBidAdapter.js.map +1 -1
- package/dist/src/modules/mobkoiIdSystem.js +20 -11
- package/dist/src/modules/mobkoiIdSystem.js.map +1 -1
- package/dist/src/modules/multibid/index.d.ts +1 -1
- package/dist/src/modules/multibid/index.js +3 -1
- package/dist/src/modules/multibid/index.js.map +1 -1
- package/dist/src/modules/nextMillenniumBidAdapter.js +1 -1
- package/dist/src/modules/nobidAnalyticsAdapter.js +1 -1
- package/dist/src/modules/nobidBidAdapter.js +1 -1
- package/dist/src/modules/nodalsAiRtdProvider.js +1 -1
- package/dist/src/modules/oguryBidAdapter.js +1 -1
- package/dist/src/modules/onetagBidAdapter.js +1 -1
- package/dist/src/modules/ooloAnalyticsAdapter.js +1 -1
- package/dist/src/modules/openxBidAdapter.js +7 -2
- package/dist/src/modules/openxBidAdapter.js.map +1 -1
- package/dist/src/modules/optidigitalBidAdapter.js +1 -1
- package/dist/src/modules/orbidderBidAdapter.js +1 -1
- package/dist/src/modules/outbrainBidAdapter.js +1 -1
- package/dist/src/modules/permutiveRtdProvider.js +2 -1
- package/dist/src/modules/permutiveRtdProvider.js.map +1 -1
- package/dist/src/modules/pixfutureBidAdapter.js +2 -2
- package/dist/src/modules/prebidServerBidAdapter/bidderConfig.js +3 -1
- package/dist/src/modules/prebidServerBidAdapter/bidderConfig.js.map +1 -1
- package/dist/src/modules/priceFloors.d.ts +2 -2
- package/dist/src/modules/priceFloors.js.map +1 -1
- package/dist/src/modules/publinkIdSystem.js +1 -1
- package/dist/src/modules/pubmaticAnalyticsAdapter.js +5 -3
- package/dist/src/modules/pubmaticAnalyticsAdapter.js.map +1 -1
- package/dist/src/modules/pubmaticBidAdapter.js +23 -3
- package/dist/src/modules/pubmaticBidAdapter.js.map +1 -1
- package/dist/src/modules/pubwiseAnalyticsAdapter.js +1 -1
- package/dist/src/modules/pubxaiAnalyticsAdapter.js +1 -1
- package/dist/src/modules/pulsepointBidAdapter.js.map +1 -1
- package/dist/src/modules/pwbidBidAdapter.js +0 -2
- package/dist/src/modules/pwbidBidAdapter.js.map +1 -1
- package/dist/src/modules/pxyzBidAdapter.js +1 -1
- package/dist/src/modules/qtBidAdapter.js +0 -2
- package/dist/src/modules/qtBidAdapter.js.map +1 -1
- package/dist/src/modules/quantcastBidAdapter.js +1 -1
- package/dist/src/modules/raynRtdProvider.js +1 -3
- package/dist/src/modules/raynRtdProvider.js.map +1 -1
- package/dist/src/modules/readpeakBidAdapter.js +1 -1
- package/dist/src/modules/relaidoBidAdapter.js +1 -1
- package/dist/src/modules/retailspotBidAdapter.js +1 -3
- package/dist/src/modules/retailspotBidAdapter.js.map +1 -1
- package/dist/src/modules/rhythmoneBidAdapter.js +1 -1
- package/dist/src/modules/rtbsapeBidAdapter.js +3 -1
- package/dist/src/modules/rtbsapeBidAdapter.js.map +1 -1
- package/dist/src/modules/rubiconBidAdapter.js +31 -8
- package/dist/src/modules/rubiconBidAdapter.js.map +1 -1
- package/dist/src/modules/scatteredBidAdapter.js +0 -2
- package/dist/src/modules/scatteredBidAdapter.js.map +1 -1
- package/dist/src/modules/seedingAllianceBidAdapter.js +1 -1
- package/dist/src/modules/seedtagBidAdapter.js +1 -1
- package/dist/src/modules/sevioBidAdapter.js +4 -1
- package/dist/src/modules/sevioBidAdapter.js.map +1 -1
- package/dist/src/modules/sharethroughAnalyticsAdapter.js +1 -1
- package/dist/src/modules/sharethroughBidAdapter.js +1 -1
- package/dist/src/modules/showheroes-bsBidAdapter.js +1 -1
- package/dist/src/modules/sizeMapping.js +3 -1
- package/dist/src/modules/sizeMapping.js.map +1 -1
- package/dist/src/modules/slimcutBidAdapter.js +1 -3
- package/dist/src/modules/slimcutBidAdapter.js.map +1 -1
- package/dist/src/modules/smaatoBidAdapter.js +1 -1
- package/dist/src/modules/smartadserverBidAdapter.js +1 -1
- package/dist/src/modules/smartxBidAdapter.js +1 -1
- package/dist/src/modules/smilewantedBidAdapter.js +1 -1
- package/dist/src/modules/snigelBidAdapter.js +1 -1
- package/dist/src/modules/sonaradsBidAdapter.js +2 -2
- package/dist/src/modules/sonobiBidAdapter.js +1 -1
- package/dist/src/modules/sovrnBidAdapter.js +1 -1
- package/dist/src/modules/sparteoBidAdapter.js +1 -1
- package/dist/src/modules/sspBCBidAdapter.js +1 -1
- package/dist/src/modules/stvBidAdapter.js +4 -2
- package/dist/src/modules/stvBidAdapter.js.map +1 -1
- package/dist/src/modules/sublimeBidAdapter.js +2 -2
- package/dist/src/modules/taboolaBidAdapter.js +1 -1
- package/dist/src/modules/tadvertisingBidAdapter.js +252 -0
- package/dist/src/modules/tadvertisingBidAdapter.js.map +1 -0
- package/dist/src/modules/talkadsBidAdapter.js +0 -2
- package/dist/src/modules/talkadsBidAdapter.js.map +1 -1
- package/dist/src/modules/tappxBidAdapter.js +15 -2
- package/dist/src/modules/tappxBidAdapter.js.map +1 -1
- package/dist/src/modules/targetVideoBidAdapter.js +1 -1
- package/dist/src/modules/teadsBidAdapter.js +1 -1
- package/dist/src/modules/terceptAnalyticsAdapter.js +1 -1
- package/dist/src/modules/themoneytizerBidAdapter.js +1 -1
- package/dist/src/modules/trionBidAdapter.js +1 -1
- package/dist/src/modules/tripleliftBidAdapter.js +1 -1
- package/dist/src/modules/ttdBidAdapter.js +1 -1
- package/dist/src/modules/ucfunnelAnalyticsAdapter.js +1 -1
- package/dist/src/modules/ucfunnelBidAdapter.js +0 -2
- package/dist/src/modules/ucfunnelBidAdapter.js.map +1 -1
- package/dist/src/modules/uid2IdSystem.js +1 -1
- package/dist/src/modules/underdogmediaBidAdapter.js +1 -1
- package/dist/src/modules/undertoneBidAdapter.js +1 -1
- package/dist/src/modules/unrulyBidAdapter.js +1 -1
- package/dist/src/modules/userId/eids.js +8 -6
- package/dist/src/modules/userId/eids.js.map +1 -1
- package/dist/src/modules/ventesBidAdapter.js +6 -2
- package/dist/src/modules/ventesBidAdapter.js.map +1 -1
- package/dist/src/modules/videobyteBidAdapter.js +1 -1
- package/dist/src/modules/videoreachBidAdapter.js +0 -2
- package/dist/src/modules/videoreachBidAdapter.js.map +1 -1
- package/dist/src/modules/viewdeosDXBidAdapter.js +0 -1
- package/dist/src/modules/viewdeosDXBidAdapter.js.map +1 -1
- package/dist/src/modules/visxBidAdapter.js +1 -1
- package/dist/src/modules/vuukleBidAdapter.js +1 -1
- package/dist/src/modules/widespaceBidAdapter.js +1 -1
- package/dist/src/modules/winrBidAdapter.js +4 -2
- package/dist/src/modules/winrBidAdapter.js.map +1 -1
- package/dist/src/modules/yahooAdsBidAdapter.js +1 -1
- package/dist/src/modules/yandexBidAdapter.js +1 -1
- package/dist/src/modules/yieldlabBidAdapter.js +2 -1
- package/dist/src/modules/yieldlabBidAdapter.js.map +1 -1
- package/dist/src/modules/yieldliftBidAdapter.js +0 -2
- package/dist/src/modules/yieldliftBidAdapter.js.map +1 -1
- package/dist/src/modules/yieldmoBidAdapter.js +11 -5
- package/dist/src/modules/yieldmoBidAdapter.js.map +1 -1
- package/dist/src/modules/yieldoneAnalyticsAdapter.js +1 -1
- package/dist/src/package.json +2 -3
- package/dist/src/public/tadvertisingBidAdapter.js +1 -0
- package/dist/src/src/activities/rules.js +2 -1
- package/dist/src/src/activities/rules.js.map +1 -1
- package/dist/src/src/adUnits.js +2 -1
- package/dist/src/src/adUnits.js.map +1 -1
- package/dist/src/src/adapterManager.js +0 -1
- package/dist/src/src/adapterManager.js.map +1 -1
- package/dist/src/src/adapters/bidderFactory.js +1 -1
- package/dist/src/src/adapters/bidderFactory.js.map +1 -1
- package/dist/src/src/debugging.js +1 -1
- package/dist/src/src/prebid.js +2 -2
- package/dist/src/src/prebid.public.js +1 -1
- package/dist/src/src/secureCreatives.js +11 -5
- package/dist/src/src/secureCreatives.js.map +1 -1
- package/dist/src/src/targeting.d.ts +4 -4
- package/dist/src/src/targeting.js +2 -1
- package/dist/src/src/targeting.js.map +1 -1
- package/dist/src/test/build-logic/disclosure_spec.js +23 -0
- package/dist/src/test/build-logic/disclosure_spec.js.map +1 -0
- package/dist/src/test/build-logic/gvl_spec.js +31 -0
- package/dist/src/test/build-logic/gvl_spec.js.map +1 -0
- package/dist/src/test/spec/auctionmanager_spec.js +4 -4
- package/dist/src/test/spec/auctionmanager_spec.js.map +1 -1
- package/dist/src/test/spec/modules/33acrossAnalyticsAdapter_spec.js +2 -2
- package/dist/src/test/spec/modules/33acrossBidAdapter_spec.js +1 -1
- package/dist/src/test/spec/modules/33acrossIdSystem_spec.js +1 -1
- package/dist/src/test/spec/modules/adagioAnalyticsAdapter_spec.js +4 -4
- package/dist/src/test/spec/modules/adpod_spec.js +3 -3
- package/dist/src/test/spec/modules/adpod_spec.js.map +1 -1
- package/dist/src/test/spec/modules/adqueryBidAdapter_spec.js +1 -1
- package/dist/src/test/spec/modules/adrelevantisBidAdapter_spec.js +1 -1
- package/dist/src/test/spec/modules/adtelligentBidAdapter_spec.js +20 -6
- package/dist/src/test/spec/modules/adtelligentBidAdapter_spec.js.map +1 -1
- package/dist/src/test/spec/modules/adtrgtmeBidAdapter_spec.js +1 -1
- package/dist/src/test/spec/modules/advertisingBidAdapter_spec.js +9 -9
- package/dist/src/test/spec/modules/adyoulikeBidAdapter_spec.js +3 -3
- package/dist/src/test/spec/modules/ajaBidAdapter_spec.js +2 -2
- package/dist/src/test/spec/modules/amxBidAdapter_spec.js +2 -2
- package/dist/src/test/spec/modules/appierAnalyticsAdapter_spec.js +1 -1
- package/dist/src/test/spec/modules/appnexusBidAdapter_spec.js +2 -2
- package/dist/src/test/spec/modules/asoBidAdapter_spec.js +1 -1
- package/dist/src/test/spec/modules/bidmaticBidAdapter_spec.js +16 -3
- package/dist/src/test/spec/modules/bidmaticBidAdapter_spec.js.map +1 -1
- package/dist/src/test/spec/modules/blockthroughBidAdapter_spec.js +1 -1
- package/dist/src/test/spec/modules/bridBidAdapter_spec.js +1 -1
- package/dist/src/test/spec/modules/criteoBidAdapter_spec.js +1 -1
- package/dist/src/test/spec/modules/dailymotionBidAdapter_spec.js +4 -4
- package/dist/src/test/spec/modules/dxkultureBidAdapter_spec.js +1 -1
- package/dist/src/test/spec/modules/eplanningBidAdapter_spec.js +1 -1
- package/dist/src/test/spec/modules/equativBidAdapter_spec.js +1 -1
- package/dist/src/test/spec/modules/excoBidAdapter_spec.js +1 -1
- package/dist/src/test/spec/modules/feedadBidAdapter_spec.js +2 -2
- package/dist/src/test/spec/modules/gmosspBidAdapter_spec.js +2 -2
- package/dist/src/test/spec/modules/greenbidsAnalyticsAdapter_spec.js +1 -1
- package/dist/src/test/spec/modules/gridBidAdapter_spec.js +6 -6
- package/dist/src/test/spec/modules/gumgumBidAdapter_spec.js +1 -1
- package/dist/src/test/spec/modules/id5IdSystem_spec.js +4 -4
- package/dist/src/test/spec/modules/insticatorBidAdapter_spec.js +1 -1
- package/dist/src/test/spec/modules/ixBidAdapter_spec.js +2 -2
- package/dist/src/test/spec/modules/justpremiumBidAdapter_spec.js +1 -1
- package/dist/src/test/spec/modules/kargoBidAdapter_spec.js +1 -1
- package/dist/src/test/spec/modules/liveIntentExternalIdSystem_spec.js +29 -10
- package/dist/src/test/spec/modules/liveIntentExternalIdSystem_spec.js.map +1 -1
- package/dist/src/test/spec/modules/liveIntentIdMinimalSystem_spec.js +19 -0
- package/dist/src/test/spec/modules/liveIntentIdMinimalSystem_spec.js.map +1 -1
- package/dist/src/test/spec/modules/liveIntentIdSystem_spec.js +58 -1
- package/dist/src/test/spec/modules/liveIntentIdSystem_spec.js.map +1 -1
- package/dist/src/test/spec/modules/livewrappedAnalyticsAdapter_spec.js +6 -1
- package/dist/src/test/spec/modules/livewrappedAnalyticsAdapter_spec.js.map +1 -1
- package/dist/src/test/spec/modules/magniteAnalyticsAdapter_spec.js +1 -1
- package/dist/src/test/spec/modules/malltvAnalyticsAdapter_spec.js +1 -1
- package/dist/src/test/spec/modules/mediafuseBidAdapter_spec.js +2 -2
- package/dist/src/test/spec/modules/medianetAnalyticsAdapter_spec.js +1 -1
- package/dist/src/test/spec/modules/medianetAnalyticsAdapter_spec.js.map +1 -1
- package/dist/src/test/spec/modules/medianetBidAdapter_spec.js +9 -9
- package/dist/src/test/spec/modules/missenaBidAdapter_spec.js +1 -1
- package/dist/src/test/spec/modules/mobkoiAnalyticsAdapter_spec.js +11 -13
- package/dist/src/test/spec/modules/mobkoiAnalyticsAdapter_spec.js.map +1 -1
- package/dist/src/test/spec/modules/mobkoiBidAdapter_spec.js +23 -33
- package/dist/src/test/spec/modules/mobkoiBidAdapter_spec.js.map +1 -1
- package/dist/src/test/spec/modules/mobkoiIdSystem_spec.js +10 -10
- package/dist/src/test/spec/modules/mobkoiIdSystem_spec.js.map +1 -1
- package/dist/src/test/spec/modules/nobidAnalyticsAdapter_spec.js +1 -1
- package/dist/src/test/spec/modules/nobidBidAdapter_spec.js +1 -1
- package/dist/src/test/spec/modules/oguryBidAdapter_spec.js +1 -1
- package/dist/src/test/spec/modules/openxBidAdapter_spec.js +113 -0
- package/dist/src/test/spec/modules/openxBidAdapter_spec.js.map +1 -1
- package/dist/src/test/spec/modules/outbrainBidAdapter_spec.js +3 -3
- package/dist/src/test/spec/modules/prebidServerBidAdapter_spec.js +4 -4
- package/dist/src/test/spec/modules/publinkIdSystem_spec.js +5 -5
- package/dist/src/test/spec/modules/pubmaticAnalyticsAdapter_spec.js +6 -6
- package/dist/src/test/spec/modules/pubmaticBidAdapter_spec.js +58 -0
- package/dist/src/test/spec/modules/pubmaticBidAdapter_spec.js.map +1 -1
- package/dist/src/test/spec/modules/pubwiseAnalyticsAdapter_spec.js +1 -1
- package/dist/src/test/spec/modules/pubxaiAnalyticsAdapter_spec.js +6 -6
- package/dist/src/test/spec/modules/quantcastBidAdapter_spec.js +6 -6
- package/dist/src/test/spec/modules/readpeakBidAdapter_spec.js +4 -4
- package/dist/src/test/spec/modules/relaidoBidAdapter_spec.js +1 -1
- package/dist/src/test/spec/modules/rubiconBidAdapter_spec.js +2 -2
- package/dist/src/test/spec/modules/smartxBidAdapter_spec.js +1 -1
- package/dist/src/test/spec/modules/sonaradsBidAdapter_spec.js +5 -5
- package/dist/src/test/spec/modules/sovrnBidAdapter_spec.js +1 -1
- package/dist/src/test/spec/modules/sparteoBidAdapter_spec.js +3 -3
- package/dist/src/test/spec/modules/sspBCBidAdapter_spec.js +1 -1
- package/dist/src/test/spec/modules/taboolaBidAdapter_spec.js +1 -1
- package/dist/src/test/spec/modules/tadvertisingBidAdapter_spec.js +862 -0
- package/dist/src/test/spec/modules/tadvertisingBidAdapter_spec.js.map +1 -0
- package/dist/src/test/spec/modules/tappxBidAdapter_spec.js +41 -0
- package/dist/src/test/spec/modules/tappxBidAdapter_spec.js.map +1 -1
- package/dist/src/test/spec/modules/targetVideoBidAdapter_spec.js +2 -2
- package/dist/src/test/spec/modules/trionBidAdapter_spec.js +1 -1
- package/dist/src/test/spec/modules/ttdBidAdapter_spec.js +1 -1
- package/dist/src/test/spec/modules/ucfunnelAnalyticsAdapter_spec.js +1 -1
- package/dist/src/test/spec/modules/unrulyBidAdapter_spec.js +3 -3
- package/dist/src/test/spec/modules/videobyteBidAdapter_spec.js +1 -1
- package/dist/src/test/spec/modules/visxBidAdapter_spec.js +12 -12
- package/dist/src/test/spec/modules/winrBidAdapter_spec.js +1 -1
- package/dist/src/test/spec/modules/yahooAdsBidAdapter_spec.js +1 -1
- package/dist/src/test/spec/modules/yieldoneAnalyticsAdapter_spec.js +2 -2
- package/dist/src/test/spec/unit/secureCreatives_spec.js +36 -0
- package/dist/src/test/spec/unit/secureCreatives_spec.js.map +1 -1
- package/dist/src/test/spec/videoCache_spec.js +10 -10
- package/dist/src/test/spec/videoCache_spec.js.map +1 -1
- package/eslint.config.js +2 -2
- package/gulpfile.js +3 -9
- package/libraries/creative-renderer-display/renderer.js +1 -1
- package/libraries/equativUtils/equativUtils.js +3 -1
- package/libraries/greedy/greedyPromise.js +10 -2
- package/libraries/liveIntentId/shared.js +16 -0
- package/libraries/mediaImpactUtils/index.js +116 -0
- package/libraries/ortbConverter/processors/default.js +3 -1
- package/libraries/pbsExtensions/processors/pbs.js +3 -1
- package/metadata/compileMetadata.mjs +24 -0
- package/metadata/gvl.mjs +22 -0
- package/metadata/modules/33acrossBidAdapter.json +1 -1
- package/metadata/modules/33acrossIdSystem.json +1 -1
- package/metadata/modules/acuityadsBidAdapter.json +1 -1
- package/metadata/modules/adagioBidAdapter.json +1 -1
- package/metadata/modules/adagioRtdProvider.json +1 -1
- package/metadata/modules/addefendBidAdapter.json +1 -1
- package/metadata/modules/adfBidAdapter.json +1 -1
- package/metadata/modules/adfusionBidAdapter.json +1 -1
- package/metadata/modules/adheseBidAdapter.json +1 -1
- package/metadata/modules/adipoloBidAdapter.json +8 -3
- package/metadata/modules/adkernelAdnBidAdapter.json +1 -1
- package/metadata/modules/adkernelBidAdapter.json +4 -4
- package/metadata/modules/admaticBidAdapter.json +2 -2
- package/metadata/modules/admixerBidAdapter.json +1 -1
- package/metadata/modules/admixerIdSystem.json +1 -1
- package/metadata/modules/adnowBidAdapter.json +1 -1
- package/metadata/modules/adnuntiusBidAdapter.json +1 -1
- package/metadata/modules/adnuntiusRtdProvider.json +1 -1
- package/metadata/modules/adotBidAdapter.json +1 -1
- package/metadata/modules/adponeBidAdapter.json +1 -1
- package/metadata/modules/adqueryBidAdapter.json +1 -1
- package/metadata/modules/adqueryIdSystem.json +1 -1
- package/metadata/modules/adrinoBidAdapter.json +1 -1
- package/metadata/modules/ads_interactiveBidAdapter.json +1 -1
- package/metadata/modules/adtargetBidAdapter.json +1 -1
- package/metadata/modules/adtelligentBidAdapter.json +3 -3
- package/metadata/modules/adtelligentIdSystem.json +1 -1
- package/metadata/modules/aduptechBidAdapter.json +1 -1
- package/metadata/modules/adyoulikeBidAdapter.json +1 -1
- package/metadata/modules/aidemBidAdapter.json +3 -8
- package/metadata/modules/airgridRtdProvider.json +1 -1
- package/metadata/modules/alkimiBidAdapter.json +1 -1
- package/metadata/modules/ampliffyBidAdapter.json +3 -8
- package/metadata/modules/amxBidAdapter.json +1 -1
- package/metadata/modules/amxIdSystem.json +1 -1
- package/metadata/modules/aniviewBidAdapter.json +1 -1
- package/metadata/modules/anonymisedRtdProvider.json +1 -1
- package/metadata/modules/appierBidAdapter.json +1 -1
- package/metadata/modules/appnexusBidAdapter.json +5 -5
- package/metadata/modules/appushBidAdapter.json +1 -1
- package/metadata/modules/apstreamBidAdapter.json +1 -1
- package/metadata/modules/audiencerunBidAdapter.json +1 -1
- package/metadata/modules/axisBidAdapter.json +1 -1
- package/metadata/modules/azerionedgeRtdProvider.json +1 -1
- package/metadata/modules/beachfrontBidAdapter.json +8 -2
- package/metadata/modules/beopBidAdapter.json +1 -1
- package/metadata/modules/betweenBidAdapter.json +1 -1
- package/metadata/modules/bidmaticBidAdapter.json +1 -1
- package/metadata/modules/bidtheatreBidAdapter.json +1 -1
- package/metadata/modules/bliinkBidAdapter.json +1 -1
- package/metadata/modules/blockthroughBidAdapter.json +1 -1
- package/metadata/modules/blueBidAdapter.json +1 -1
- package/metadata/modules/bmsBidAdapter.json +1 -1
- package/metadata/modules/boldwinBidAdapter.json +1 -1
- package/metadata/modules/bridBidAdapter.json +1 -1
- package/metadata/modules/browsiBidAdapter.json +1 -1
- package/metadata/modules/bucksenseBidAdapter.json +1 -1
- package/metadata/modules/cadent_aperture_mxBidAdapter.json +30 -1
- package/metadata/modules/carodaBidAdapter.json +1 -1
- package/metadata/modules/categoryTranslation.json +1 -1
- package/metadata/modules/ccxBidAdapter.json +3 -8
- package/metadata/modules/ceeIdSystem.json +1 -1
- package/metadata/modules/chromeAiRtdProvider.json +1 -1
- package/metadata/modules/compassBidAdapter.json +1 -1
- package/metadata/modules/conceptxBidAdapter.json +1 -1
- package/metadata/modules/connatixBidAdapter.json +1 -1
- package/metadata/modules/connectIdSystem.json +1 -1
- package/metadata/modules/connectadBidAdapter.json +1 -1
- package/metadata/modules/contentexchangeBidAdapter.json +1 -1
- package/metadata/modules/conversantBidAdapter.json +1 -1
- package/metadata/modules/copper6sspBidAdapter.json +1 -1
- package/metadata/modules/cpmstarBidAdapter.json +1 -1
- package/metadata/modules/criteoBidAdapter.json +1 -1
- package/metadata/modules/criteoIdSystem.json +1 -1
- package/metadata/modules/cwireBidAdapter.json +1 -1
- package/metadata/modules/czechAdIdSystem.json +1 -1
- package/metadata/modules/dailymotionBidAdapter.json +1 -1
- package/metadata/modules/debugging.json +1 -1
- package/metadata/modules/deepintentBidAdapter.json +1 -1
- package/metadata/modules/deltaprojectsBidAdapter.json +1 -1
- package/metadata/modules/dianomiBidAdapter.json +1 -1
- package/metadata/modules/digitalMatterBidAdapter.json +1 -1
- package/metadata/modules/distroscaleBidAdapter.json +1 -1
- package/metadata/modules/docereeAdManagerBidAdapter.json +1 -1
- package/metadata/modules/docereeBidAdapter.json +1 -1
- package/metadata/modules/dspxBidAdapter.json +1 -1
- package/metadata/modules/e_volutionBidAdapter.json +1 -1
- package/metadata/modules/edge226BidAdapter.json +1 -1
- package/metadata/modules/equativBidAdapter.json +1 -1
- package/metadata/modules/eskimiBidAdapter.json +1 -1
- package/metadata/modules/etargetBidAdapter.json +1 -1
- package/metadata/modules/euidIdSystem.json +1 -1
- package/metadata/modules/exadsBidAdapter.json +1 -1
- package/metadata/modules/feedadBidAdapter.json +1 -1
- package/metadata/modules/fwsspBidAdapter.json +1 -1
- package/metadata/modules/gamoshiBidAdapter.json +1 -1
- package/metadata/modules/glomexBidAdapter.json +1 -1
- package/metadata/modules/goldbachBidAdapter.json +1 -1
- package/metadata/modules/greenbidsBidAdapter.json +1 -1
- package/metadata/modules/gridBidAdapter.json +1 -1
- package/metadata/modules/gumgumBidAdapter.json +1 -1
- package/metadata/modules/hadronIdSystem.json +1 -1
- package/metadata/modules/hadronRtdProvider.json +1 -1
- package/metadata/modules/holidBidAdapter.json +1 -1
- package/metadata/modules/hybridBidAdapter.json +1 -1
- package/metadata/modules/id5IdSystem.json +1 -1
- package/metadata/modules/identityLinkIdSystem.json +1 -1
- package/metadata/modules/illuminBidAdapter.json +1 -1
- package/metadata/modules/impactifyBidAdapter.json +1 -1
- package/metadata/modules/improvedigitalBidAdapter.json +1 -1
- package/metadata/modules/inmobiBidAdapter.json +1 -1
- package/metadata/modules/innityBidAdapter.json +3 -8
- package/metadata/modules/insticatorBidAdapter.json +1 -1
- package/metadata/modules/intentIqIdSystem.json +1 -1
- package/metadata/modules/invibesBidAdapter.json +1 -1
- package/metadata/modules/ipromBidAdapter.json +1 -1
- package/metadata/modules/ixBidAdapter.json +1 -1
- package/metadata/modules/justIdSystem.json +1 -1
- package/metadata/modules/justpremiumBidAdapter.json +1 -1
- package/metadata/modules/jwplayerBidAdapter.json +1 -1
- package/metadata/modules/kargoBidAdapter.json +1 -1
- package/metadata/modules/kueezRtbBidAdapter.json +1 -1
- package/metadata/modules/limelightDigitalBidAdapter.json +2 -2
- package/metadata/modules/liveIntentIdSystem.json +1 -1
- package/metadata/modules/liveIntentRtdProvider.json +1 -1
- package/metadata/modules/livewrappedBidAdapter.json +1 -1
- package/metadata/modules/loopmeBidAdapter.json +1 -1
- package/metadata/modules/lotamePanoramaIdSystem.json +1 -1
- package/metadata/modules/luceadBidAdapter.json +3 -8
- package/metadata/modules/luponmediaBidAdapter.json +1 -1
- package/metadata/modules/madvertiseBidAdapter.json +1 -1
- package/metadata/modules/marsmediaBidAdapter.json +1 -1
- package/metadata/modules/mediaConsortiumBidAdapter.json +1 -1
- package/metadata/modules/mediaforceBidAdapter.json +1 -1
- package/metadata/modules/mediafuseBidAdapter.json +1 -1
- package/metadata/modules/mediagoBidAdapter.json +1 -1
- package/metadata/modules/mediakeysBidAdapter.json +1 -1
- package/metadata/modules/medianetBidAdapter.json +2 -2
- package/metadata/modules/mediasquareBidAdapter.json +1 -1
- package/metadata/modules/mgidBidAdapter.json +1 -1
- package/metadata/modules/mgidRtdProvider.json +1 -1
- package/metadata/modules/mgidXBidAdapter.json +1 -1
- package/metadata/modules/minutemediaBidAdapter.json +1 -1
- package/metadata/modules/missenaBidAdapter.json +1 -1
- package/metadata/modules/mobianRtdProvider.json +1 -1
- package/metadata/modules/mobilefuseBidAdapter.json +3 -8
- package/metadata/modules/mobkoiBidAdapter.json +1 -1
- package/metadata/modules/mobkoiIdSystem.json +1 -1
- package/metadata/modules/nativeryBidAdapter.json +1 -1
- package/metadata/modules/nativoBidAdapter.json +1 -1
- package/metadata/modules/newspassidBidAdapter.json +1 -1
- package/metadata/modules/nextMillenniumBidAdapter.json +1 -1
- package/metadata/modules/nextrollBidAdapter.json +1 -1
- package/metadata/modules/nexx360BidAdapter.json +5 -5
- package/metadata/modules/nobidBidAdapter.json +2 -2
- package/metadata/modules/nodalsAiRtdProvider.json +1 -1
- package/metadata/modules/novatiqIdSystem.json +1 -1
- package/metadata/modules/oguryBidAdapter.json +1 -1
- package/metadata/modules/omsBidAdapter.json +1 -1
- package/metadata/modules/onetagBidAdapter.json +1 -1
- package/metadata/modules/openwebBidAdapter.json +1 -1
- package/metadata/modules/openxBidAdapter.json +1 -1
- package/metadata/modules/operaadsBidAdapter.json +1 -1
- package/metadata/modules/optidigitalBidAdapter.json +1 -1
- package/metadata/modules/optoutBidAdapter.json +1 -1
- package/metadata/modules/orbidderBidAdapter.json +1 -1
- package/metadata/modules/outbrainBidAdapter.json +1 -1
- package/metadata/modules/ozoneBidAdapter.json +1 -1
- package/metadata/modules/pairIdSystem.json +1 -1
- package/metadata/modules/performaxBidAdapter.json +1 -1
- package/metadata/modules/pgamsspBidAdapter.json +1 -1
- package/metadata/modules/pixfutureBidAdapter.json +1 -1
- package/metadata/modules/playdigoBidAdapter.json +1 -1
- package/metadata/modules/prebid-core.json +2 -2
- package/metadata/modules/precisoBidAdapter.json +1 -1
- package/metadata/modules/prismaBidAdapter.json +1 -1
- package/metadata/modules/programmaticXBidAdapter.json +1 -1
- package/metadata/modules/proxistoreBidAdapter.json +1 -1
- package/metadata/modules/publinkIdSystem.json +1 -1
- package/metadata/modules/pubmaticBidAdapter.json +1 -1
- package/metadata/modules/pubmaticIdSystem.json +1 -1
- package/metadata/modules/pulsepointBidAdapter.json +1 -1
- package/metadata/modules/pwbidBidAdapter.json +3 -8
- package/metadata/modules/qtBidAdapter.json +3 -8
- package/metadata/modules/quantcastBidAdapter.json +1 -1
- package/metadata/modules/quantcastIdSystem.json +1 -1
- package/metadata/modules/r2b2BidAdapter.json +1 -1
- package/metadata/modules/raynRtdProvider.json +3 -95
- package/metadata/modules/readpeakBidAdapter.json +1 -1
- package/metadata/modules/relayBidAdapter.json +1 -1
- package/metadata/modules/relevantdigitalBidAdapter.json +1 -1
- package/metadata/modules/resetdigitalBidAdapter.json +1 -1
- package/metadata/modules/responsiveAdsBidAdapter.json +1 -1
- package/metadata/modules/retailspotBidAdapter.json +3 -8
- package/metadata/modules/revcontentBidAdapter.json +1 -1
- package/metadata/modules/rhythmoneBidAdapter.json +1 -1
- package/metadata/modules/richaudienceBidAdapter.json +1 -1
- package/metadata/modules/riseBidAdapter.json +2 -2
- package/metadata/modules/rixengineBidAdapter.json +1 -1
- package/metadata/modules/rtbhouseBidAdapter.json +1 -1
- package/metadata/modules/rubiconBidAdapter.json +1 -1
- package/metadata/modules/scatteredBidAdapter.json +3 -8
- package/metadata/modules/seedingAllianceBidAdapter.json +1 -1
- package/metadata/modules/seedtagBidAdapter.json +1 -1
- package/metadata/modules/semantiqRtdProvider.json +1 -1
- package/metadata/modules/setupadBidAdapter.json +1 -1
- package/metadata/modules/sevioBidAdapter.json +1 -1
- package/metadata/modules/sharedIdSystem.json +1 -1
- package/metadata/modules/sharethroughBidAdapter.json +1 -1
- package/metadata/modules/showheroes-bsBidAdapter.json +1 -1
- package/metadata/modules/silvermobBidAdapter.json +1 -1
- package/metadata/modules/sirdataRtdProvider.json +1 -1
- package/metadata/modules/slimcutBidAdapter.json +5 -10
- package/metadata/modules/smaatoBidAdapter.json +1 -1
- package/metadata/modules/smartadserverBidAdapter.json +1 -1
- package/metadata/modules/smartxBidAdapter.json +1 -1
- package/metadata/modules/smartyadsBidAdapter.json +1 -1
- package/metadata/modules/smilewantedBidAdapter.json +1 -1
- package/metadata/modules/snigelBidAdapter.json +1 -1
- package/metadata/modules/sonaradsBidAdapter.json +1 -1
- package/metadata/modules/sonobiBidAdapter.json +1 -1
- package/metadata/modules/sovrnBidAdapter.json +3 -3
- package/metadata/modules/sparteoBidAdapter.json +1 -1
- package/metadata/modules/ssmasBidAdapter.json +1 -1
- package/metadata/modules/sspBCBidAdapter.json +1 -1
- package/metadata/modules/stackadaptBidAdapter.json +1 -1
- package/metadata/modules/startioBidAdapter.json +1 -1
- package/metadata/modules/stroeerCoreBidAdapter.json +1 -1
- package/metadata/modules/stvBidAdapter.json +1 -1
- package/metadata/modules/sublimeBidAdapter.json +1 -1
- package/metadata/modules/taboolaBidAdapter.json +1 -1
- package/metadata/modules/taboolaIdSystem.json +1 -1
- package/metadata/modules/tadvertisingBidAdapter.json +18 -0
- package/metadata/modules/talkadsBidAdapter.json +2 -1
- package/metadata/modules/tappxBidAdapter.json +1 -1
- package/metadata/modules/targetVideoBidAdapter.json +1 -1
- package/metadata/modules/teadsBidAdapter.json +1 -1
- package/metadata/modules/teadsIdSystem.json +1 -1
- package/metadata/modules/tealBidAdapter.json +1 -1
- package/metadata/modules/tncIdSystem.json +1 -1
- package/metadata/modules/topicsFpdModule.json +1 -1
- package/metadata/modules/tripleliftBidAdapter.json +1 -1
- package/metadata/modules/ttdBidAdapter.json +1 -1
- package/metadata/modules/twistDigitalBidAdapter.json +1 -1
- package/metadata/modules/ucfunnelBidAdapter.json +2 -1
- package/metadata/modules/underdogmediaBidAdapter.json +1 -1
- package/metadata/modules/undertoneBidAdapter.json +1 -1
- package/metadata/modules/unifiedIdSystem.json +1 -1
- package/metadata/modules/unrulyBidAdapter.json +1 -1
- package/metadata/modules/userId.json +1 -1
- package/metadata/modules/validationFpdModule.json +1 -1
- package/metadata/modules/vidazooBidAdapter.json +1 -1
- package/metadata/modules/videoreachBidAdapter.json +2 -1
- package/metadata/modules/vidoomyBidAdapter.json +1 -1
- package/metadata/modules/viewdeosDXBidAdapter.json +3 -8
- package/metadata/modules/viouslyBidAdapter.json +1 -1
- package/metadata/modules/visxBidAdapter.json +1 -1
- package/metadata/modules/vlybyBidAdapter.json +1 -1
- package/metadata/modules/voxBidAdapter.json +1 -1
- package/metadata/modules/vrtcalBidAdapter.json +1 -1
- package/metadata/modules/vuukleBidAdapter.json +1 -1
- package/metadata/modules/weboramaRtdProvider.json +1 -1
- package/metadata/modules/welectBidAdapter.json +1 -1
- package/metadata/modules/yahooAdsBidAdapter.json +1 -1
- package/metadata/modules/yieldlabBidAdapter.json +1 -1
- package/metadata/modules/yieldliftBidAdapter.json +3 -8
- package/metadata/modules/yieldloveBidAdapter.json +1 -1
- package/metadata/modules/yieldmoBidAdapter.json +1 -1
- package/metadata/modules/zeotapIdPlusIdSystem.json +1 -1
- package/metadata/modules/zeta_globalBidAdapter.json +1 -1
- package/metadata/modules/zeta_global_sspBidAdapter.json +1 -1
- package/metadata/modules.json +56 -21
- package/metadata/storageDisclosure.mjs +5 -19
- package/modules/adagioBidAdapter.js +6 -1
- package/modules/adipoloBidAdapter.js +2 -0
- package/modules/admaticBidAdapter.js +6 -2
- package/modules/admixerBidAdapter.js +3 -1
- package/modules/adpartnerBidAdapter.js +5 -107
- package/modules/adplayerproVideoProvider.js +3 -1
- package/modules/adrelevantisBidAdapter.js +9 -3
- package/modules/adtelligentBidAdapter.js +6 -0
- package/modules/advertisingBidAdapter.js +3 -1
- package/modules/aidemBidAdapter.js +0 -2
- package/modules/ampliffyBidAdapter.js +0 -2
- package/modules/appnexusBidAdapter.js +3 -1
- package/modules/asoBidAdapter.md +1 -1
- package/modules/beachfrontBidAdapter.js +2 -3
- package/modules/bidViewability.js +4 -1
- package/modules/bidmaticBidAdapter.js +1 -0
- package/modules/buzzoolaBidAdapter.js +3 -1
- package/modules/cadent_aperture_mxBidAdapter.js +5 -6
- package/modules/ccxBidAdapter.js +0 -2
- package/modules/codefuelBidAdapter.js +3 -1
- package/modules/concertAnalyticsAdapter.js +3 -1
- package/modules/contxtfulRtdProvider.js +4 -1
- package/modules/criteoBidAdapter.js +6 -2
- package/modules/dspxBidAdapter.js +3 -1
- package/modules/eplanningBidAdapter.js +3 -1
- package/modules/equativBidAdapter.js +3 -1
- package/modules/exadsBidAdapter.md +1 -1
- package/modules/feedadBidAdapter.js +5 -3
- package/modules/innityBidAdapter.js +0 -2
- package/modules/intersectionRtdProvider.js +3 -1
- package/modules/ixBidAdapter.md +1 -1
- package/modules/justpremiumBidAdapter.js +2 -1
- package/modules/kargoBidAdapter.js +2 -1
- package/modules/limelightDigitalBidAdapter.md +1 -1
- package/modules/livewrappedAnalyticsAdapter.js +13 -0
- package/modules/lkqdBidAdapter.md +1 -1
- package/modules/luceadBidAdapter.js +0 -2
- package/modules/madvertiseBidAdapter.js +3 -1
- package/modules/mediafuseBidAdapter.js +3 -1
- package/modules/mediaimpactBidAdapter.js +5 -107
- package/modules/mobilefuseBidAdapter.js +0 -1
- package/modules/mobkoiAnalyticsAdapter.js +17 -22
- package/modules/mobkoiBidAdapter.js +21 -17
- package/modules/mobkoiIdSystem.js +23 -13
- package/modules/multibid/index.ts +3 -1
- package/modules/openxBidAdapter.js +6 -1
- package/modules/operaadsBidAdapter.md +1 -1
- package/modules/permutiveRtdProvider.js +2 -1
- package/modules/prebidServerBidAdapter/bidderConfig.js +3 -1
- package/modules/priceFloors.ts +2 -2
- package/modules/pstudioBidAdapter.md +1 -1
- package/modules/pubmaticAnalyticsAdapter.js +3 -3
- package/modules/pubmaticBidAdapter.js +21 -1
- package/modules/pubmaticBidAdapter.md +1 -1
- package/modules/pulsepointBidAdapter.js +1 -0
- package/modules/pwbidBidAdapter.js +0 -2
- package/modules/qtBidAdapter.js +0 -2
- package/modules/raynRtdProvider.js +0 -2
- package/modules/retailspotBidAdapter.js +0 -2
- package/modules/rtbsapeBidAdapter.js +3 -1
- package/modules/rubiconBidAdapter.js +19 -12
- package/modules/scatteredBidAdapter.js +0 -2
- package/modules/sevioBidAdapter.js +4 -1
- package/modules/sizeMapping.js +3 -1
- package/modules/slimcutBidAdapter.js +1 -2
- package/modules/stvBidAdapter.js +3 -1
- package/modules/tadvertisingBidAdapter.js +279 -0
- package/modules/tadvertisingBidAdapter.md +74 -0
- package/modules/talkadsBidAdapter.js +0 -2
- package/modules/tappxBidAdapter.js +17 -1
- package/modules/ucfunnelBidAdapter.js +0 -2
- package/modules/userId/eids.js +3 -1
- package/modules/vdoaiBidAdapter.md +1 -1
- package/modules/ventesBidAdapter.js +6 -2
- package/modules/videoreachBidAdapter.js +0 -2
- package/modules/viewdeosDXBidAdapter.js +0 -1
- package/modules/winrBidAdapter.js +3 -1
- package/modules/yieldlabBidAdapter.js +2 -1
- package/modules/yieldliftBidAdapter.js +0 -2
- package/modules/yieldmoBidAdapter.js +9 -3
- package/package.json +2 -3
- package/plugins/pbjsGlobals.js +8 -5
- package/src/activities/rules.js +2 -1
- package/src/adUnits.ts +2 -1
- package/src/adapterManager.ts +0 -1
- package/src/adapters/bidderFactory.ts +3 -1
- package/src/secureCreatives.js +11 -5
- package/src/targeting.ts +5 -4
- package/test/build-logic/disclosure_spec.mjs +26 -0
- package/test/build-logic/gvl_spec.mjs +32 -0
- package/test/spec/auctionmanager_spec.js +4 -4
- package/test/spec/modules/adpod_spec.js +3 -3
- package/test/spec/modules/adtelligentBidAdapter_spec.js +11 -5
- package/test/spec/modules/bidmaticBidAdapter_spec.js +13 -0
- package/test/spec/modules/liveIntentExternalIdSystem_spec.js +5 -0
- package/test/spec/modules/liveIntentIdMinimalSystem_spec.js +5 -0
- package/test/spec/modules/liveIntentIdSystem_spec.js +38 -0
- package/test/spec/modules/livewrappedAnalyticsAdapter_spec.js +9 -1
- package/test/spec/modules/medianetAnalyticsAdapter_spec.js +1 -1
- package/test/spec/modules/mobkoiAnalyticsAdapter_spec.js +13 -14
- package/test/spec/modules/mobkoiBidAdapter_spec.js +25 -27
- package/test/spec/modules/mobkoiIdSystem_spec.js +10 -10
- package/test/spec/modules/openxBidAdapter_spec.js +129 -0
- package/test/spec/modules/pubmaticBidAdapter_spec.js +70 -0
- package/test/spec/modules/tadvertisingBidAdapter_spec.js +965 -0
- package/test/spec/modules/tappxBidAdapter_spec.js +46 -3
- package/test/spec/unit/secureCreatives_spec.js +40 -0
- package/test/spec/videoCache_spec.js +10 -10
- package/wdio.shared.conf.js +0 -5
- package/dist/src/test/fake-server/fixtures/longform/longform_biddersettings_1/request.json +0 -387
- package/dist/src/test/fake-server/fixtures/longform/longform_biddersettings_1/response.json +0 -114
- package/dist/src/test/fake-server/fixtures/longform/longform_biddersettings_2/request.json +0 -137
- package/dist/src/test/fake-server/fixtures/longform/longform_biddersettings_2/response.json +0 -188
- package/dist/src/test/fake-server/fixtures/longform/longform_custom_adserver_translation_1/request.json +0 -402
- package/dist/src/test/fake-server/fixtures/longform/longform_custom_adserver_translation_1/response.json +0 -294
- package/dist/src/test/fake-server/fixtures/longform/longform_custom_adserver_translation_2/request.json +0 -142
- package/dist/src/test/fake-server/fixtures/longform/longform_custom_adserver_translation_2/response.json +0 -188
- package/dist/src/test/fake-server/fixtures/longform/longform_priceGran_1/request.json +0 -387
- package/dist/src/test/fake-server/fixtures/longform/longform_priceGran_1/response.json +0 -366
- package/dist/src/test/fake-server/fixtures/longform/longform_priceGran_2/request.json +0 -137
- package/dist/src/test/fake-server/fixtures/longform/longform_priceGran_2/response.json +0 -188
- package/dist/src/test/fake-server/fixtures/longform/longform_requireExactDuration_1/request.json +0 -401
- package/dist/src/test/fake-server/fixtures/longform/longform_requireExactDuration_1/response.json +0 -330
- package/dist/src/test/fake-server/fixtures/longform/longform_requireExactDuration_2/request.json +0 -141
- package/dist/src/test/fake-server/fixtures/longform/longform_requireExactDuration_2/response.json +0 -188
- package/dist/src/test/fake-server/fixtures/longform/longform_wo_brandCategoryExclusion_1/request.json +0 -386
- package/dist/src/test/fake-server/fixtures/longform/longform_wo_brandCategoryExclusion_1/response.json +0 -654
- package/dist/src/test/fake-server/fixtures/longform/longform_wo_brandCategoryExclusion_2/request.json +0 -136
- package/dist/src/test/fake-server/fixtures/longform/longform_wo_brandCategoryExclusion_2/response.json +0 -224
- package/dist/src/test/fake-server/fixtures/longform/longform_wo_requireExactDuration_1/request.json +0 -387
- package/dist/src/test/fake-server/fixtures/longform/longform_wo_requireExactDuration_1/response.json +0 -366
- package/dist/src/test/fake-server/fixtures/longform/longform_wo_requireExactDuration_2/request.json +0 -137
- package/dist/src/test/fake-server/fixtures/longform/longform_wo_requireExactDuration_2/response.json +0 -224
- package/dist/src/test/spec/e2e/longform/basic_w_bidderSettings.spec.js +0 -56
- package/dist/src/test/spec/e2e/longform/basic_w_bidderSettings.spec.js.map +0 -1
- package/dist/src/test/spec/e2e/longform/basic_w_custom_adserver_translation.spec.js +0 -56
- package/dist/src/test/spec/e2e/longform/basic_w_custom_adserver_translation.spec.js.map +0 -1
- package/dist/src/test/spec/e2e/longform/basic_w_priceGran.spec.js +0 -56
- package/dist/src/test/spec/e2e/longform/basic_w_priceGran.spec.js.map +0 -1
- package/dist/src/test/spec/e2e/longform/basic_w_requireExactDuration.spec.js +0 -56
- package/dist/src/test/spec/e2e/longform/basic_w_requireExactDuration.spec.js.map +0 -1
- package/dist/src/test/spec/e2e/longform/basic_wo_brandCategoryExclusion.spec.js +0 -51
- package/dist/src/test/spec/e2e/longform/basic_wo_brandCategoryExclusion.spec.js.map +0 -1
- package/dist/src/test/spec/e2e/longform/basic_wo_requireExactDuration.spec.js +0 -56
- package/dist/src/test/spec/e2e/longform/basic_wo_requireExactDuration.spec.js.map +0 -1
- package/test/fake-server/fixtures/longform/longform_biddersettings_1/description.md +0 -41
- package/test/fake-server/fixtures/longform/longform_biddersettings_1/request.json +0 -387
- package/test/fake-server/fixtures/longform/longform_biddersettings_1/response.json +0 -114
- package/test/fake-server/fixtures/longform/longform_biddersettings_2/description.md +0 -28
- package/test/fake-server/fixtures/longform/longform_biddersettings_2/request.json +0 -137
- package/test/fake-server/fixtures/longform/longform_biddersettings_2/response.json +0 -188
- package/test/fake-server/fixtures/longform/longform_custom_adserver_translation_1/description.md +0 -43
- package/test/fake-server/fixtures/longform/longform_custom_adserver_translation_1/request.json +0 -402
- package/test/fake-server/fixtures/longform/longform_custom_adserver_translation_1/response.json +0 -294
- package/test/fake-server/fixtures/longform/longform_custom_adserver_translation_2/description.md +0 -43
- package/test/fake-server/fixtures/longform/longform_custom_adserver_translation_2/request.json +0 -142
- package/test/fake-server/fixtures/longform/longform_custom_adserver_translation_2/response.json +0 -188
- package/test/fake-server/fixtures/longform/longform_priceGran_1/description.md +0 -62
- package/test/fake-server/fixtures/longform/longform_priceGran_1/request.json +0 -387
- package/test/fake-server/fixtures/longform/longform_priceGran_1/response.json +0 -366
- package/test/fake-server/fixtures/longform/longform_priceGran_2/description.md +0 -62
- package/test/fake-server/fixtures/longform/longform_priceGran_2/request.json +0 -137
- package/test/fake-server/fixtures/longform/longform_priceGran_2/response.json +0 -188
- package/test/fake-server/fixtures/longform/longform_requireExactDuration_1/description.md +0 -40
- package/test/fake-server/fixtures/longform/longform_requireExactDuration_1/request.json +0 -401
- package/test/fake-server/fixtures/longform/longform_requireExactDuration_1/response.json +0 -330
- package/test/fake-server/fixtures/longform/longform_requireExactDuration_2/description.md +0 -40
- package/test/fake-server/fixtures/longform/longform_requireExactDuration_2/request.json +0 -141
- package/test/fake-server/fixtures/longform/longform_requireExactDuration_2/response.json +0 -188
- package/test/fake-server/fixtures/longform/longform_wo_brandCategoryExclusion_1/description.md +0 -40
- package/test/fake-server/fixtures/longform/longform_wo_brandCategoryExclusion_1/request.json +0 -386
- package/test/fake-server/fixtures/longform/longform_wo_brandCategoryExclusion_1/response.json +0 -654
- package/test/fake-server/fixtures/longform/longform_wo_brandCategoryExclusion_2/description.md +0 -40
- package/test/fake-server/fixtures/longform/longform_wo_brandCategoryExclusion_2/request.json +0 -136
- package/test/fake-server/fixtures/longform/longform_wo_brandCategoryExclusion_2/response.json +0 -224
- package/test/fake-server/fixtures/longform/longform_wo_requireExactDuration_1/description.md +0 -40
- package/test/fake-server/fixtures/longform/longform_wo_requireExactDuration_1/request.json +0 -387
- package/test/fake-server/fixtures/longform/longform_wo_requireExactDuration_1/response.json +0 -366
- package/test/fake-server/fixtures/longform/longform_wo_requireExactDuration_2/description.md +0 -40
- package/test/fake-server/fixtures/longform/longform_wo_requireExactDuration_2/request.json +0 -137
- package/test/fake-server/fixtures/longform/longform_wo_requireExactDuration_2/response.json +0 -224
- package/test/spec/e2e/longform/basic_w_bidderSettings.spec.js +0 -64
- package/test/spec/e2e/longform/basic_w_custom_adserver_translation.spec.js +0 -64
- package/test/spec/e2e/longform/basic_w_priceGran.spec.js +0 -64
- package/test/spec/e2e/longform/basic_w_requireExactDuration.spec.js +0 -64
- package/test/spec/e2e/longform/basic_wo_brandCategoryExclusion.spec.js +0 -59
- package/test/spec/e2e/longform/basic_wo_requireExactDuration.spec.js +0 -64
|
@@ -5,13 +5,15 @@ import { BANNER } from '../src/mediaTypes.js';
|
|
|
5
5
|
import { deepAccess, deepSetValue, logError } from '../src/utils.js';
|
|
6
6
|
const BIDDER_CODE = 'mobkoi';
|
|
7
7
|
const GVL_ID = 898;
|
|
8
|
-
|
|
8
|
+
// IntegrationType is defined in the backend
|
|
9
|
+
const INTEGRATION_TYPE_PREBID_JS = 'pbjs';
|
|
10
|
+
export const DEFAULT_PREBID_JS_INTEGRATION_ENDPOINT = 'https://pbjs.mobkoi.com';
|
|
9
11
|
const PUBLISHER_PARAMS = {
|
|
10
12
|
/**
|
|
11
13
|
* !IMPORTANT: This value must match the value in mobkoiAnalyticsAdapter.js
|
|
12
|
-
* The name of the parameter that the publisher can use to specify the
|
|
14
|
+
* The name of the parameter that the publisher can use to specify the integration endpoint.
|
|
13
15
|
*/
|
|
14
|
-
|
|
16
|
+
PARAM_NAME_PREBID_JS_INTEGRATION_ENDPOINT: 'integrationEndpoint',
|
|
15
17
|
PARAM_NAME_PLACEMENT_ID: 'placementId'
|
|
16
18
|
};
|
|
17
19
|
export const converter = ortbConverter({
|
|
@@ -23,10 +25,11 @@ export const converter = ortbConverter({
|
|
|
23
25
|
const ortbRequest = buildRequest(imps, bidderRequest, context);
|
|
24
26
|
const prebidBidRequest = context.bidRequests[0];
|
|
25
27
|
ortbRequest.id = utils.getOrtbId(prebidBidRequest);
|
|
26
|
-
deepSetValue(ortbRequest, 'site.publisher.ext.
|
|
28
|
+
deepSetValue(ortbRequest, 'site.publisher.ext.integrationBaseUrl', utils.getIntegrationEndpoint(prebidBidRequest));
|
|
27
29
|
// We only support one impression per request.
|
|
28
30
|
deepSetValue(ortbRequest, 'imp.0.tagid', utils.getPlacementId(prebidBidRequest));
|
|
29
31
|
deepSetValue(ortbRequest, 'user.eids', context.bidRequests[0].userIdAsEids || []);
|
|
32
|
+
deepSetValue(ortbRequest, 'ext.mobkoi.integration_type', INTEGRATION_TYPE_PREBID_JS);
|
|
30
33
|
return ortbRequest;
|
|
31
34
|
},
|
|
32
35
|
bidResponse(buildPrebidBidResponse, ortbBidResponse, context) {
|
|
@@ -53,10 +56,10 @@ export const spec = {
|
|
|
53
56
|
* Make a server request from the list of BidRequests.
|
|
54
57
|
*/
|
|
55
58
|
buildRequests(prebidBidRequests, prebidBidderRequest) {
|
|
56
|
-
const
|
|
59
|
+
const integrationEndpoint = utils.getIntegrationEndpoint(prebidBidderRequest) + '/bid';
|
|
57
60
|
return {
|
|
58
61
|
method: 'POST',
|
|
59
|
-
url:
|
|
62
|
+
url: integrationEndpoint,
|
|
60
63
|
options: {
|
|
61
64
|
contentType: 'application/json'
|
|
62
65
|
},
|
|
@@ -81,9 +84,9 @@ export const spec = {
|
|
|
81
84
|
});
|
|
82
85
|
return prebidBidResponse.bids;
|
|
83
86
|
},
|
|
84
|
-
getUserSyncs: function (syncOptions, serverResponses
|
|
87
|
+
getUserSyncs: function (syncOptions, serverResponses) {
|
|
85
88
|
const syncs = [];
|
|
86
|
-
if (!syncOptions.pixelEnabled
|
|
89
|
+
if (!syncOptions.pixelEnabled) {
|
|
87
90
|
return syncs;
|
|
88
91
|
}
|
|
89
92
|
serverResponses.forEach(response => {
|
|
@@ -107,24 +110,24 @@ export const spec = {
|
|
|
107
110
|
registerBidder(spec);
|
|
108
111
|
export const utils = {
|
|
109
112
|
/**
|
|
110
|
-
* !IMPORTANT: Make sure the implementation of this function matches
|
|
113
|
+
* !IMPORTANT: Make sure the implementation of this function matches getIntegrationEndpoint
|
|
111
114
|
* in both adapters.
|
|
112
|
-
* Obtain the
|
|
115
|
+
* Obtain the Integration Base URL from the given Prebid object.
|
|
113
116
|
* @param {*} bid Prebid Bidder Request Object or Prebid Bid Response/Request
|
|
114
117
|
* or ORTB Request/Response Object
|
|
115
|
-
* @returns {string} The
|
|
118
|
+
* @returns {string} The Integration Base URL
|
|
116
119
|
*/
|
|
117
|
-
|
|
120
|
+
getIntegrationEndpoint(bid) {
|
|
118
121
|
// Fields that would be automatically set if the publisher set it via pbjs.setBidderConfig.
|
|
119
|
-
const ortbPath = `site.publisher.ext.${PUBLISHER_PARAMS.
|
|
122
|
+
const ortbPath = `site.publisher.ext.${PUBLISHER_PARAMS.PARAM_NAME_PREBID_JS_INTEGRATION_ENDPOINT}`;
|
|
120
123
|
const prebidPath = `ortb2.${ortbPath}`;
|
|
121
124
|
|
|
122
125
|
// Fields that would be set by the publisher in the bid
|
|
123
126
|
// configuration object in ad unit.
|
|
124
|
-
const paramPath = `params.${PUBLISHER_PARAMS.
|
|
127
|
+
const paramPath = `params.${PUBLISHER_PARAMS.PARAM_NAME_PREBID_JS_INTEGRATION_ENDPOINT}`;
|
|
125
128
|
const bidRequestFirstBidParam = `bids.0.${paramPath}`;
|
|
126
|
-
const
|
|
127
|
-
return
|
|
129
|
+
const integrationBaseUrl = deepAccess(bid, paramPath) || deepAccess(bid, bidRequestFirstBidParam) || deepAccess(bid, prebidPath) || deepAccess(bid, ortbPath) || DEFAULT_PREBID_JS_INTEGRATION_ENDPOINT;
|
|
130
|
+
return integrationBaseUrl;
|
|
128
131
|
},
|
|
129
132
|
/**
|
|
130
133
|
* Extract the placement ID from the given object.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mobkoiBidAdapter.js","names":["registerModule","__r0","ortbConverter","registerBidder","BANNER","deepAccess","deepSetValue","logError","BIDDER_CODE","GVL_ID","DEFAULT_AD_SERVER_BASE_URL","PUBLISHER_PARAMS","PARAM_NAME_AD_SERVER_BASE_URL","PARAM_NAME_PLACEMENT_ID","converter","context","netRevenue","ttl","request","buildRequest","imps","bidderRequest","ortbRequest","prebidBidRequest","bidRequests","id","utils","getOrtbId","getAdServerEndpointBaseUrl","getPlacementId","userIdAsEids","bidResponse","buildPrebidBidResponse","ortbBidResponse","prebidBid","addCustomFieldsToPrebidBidResponse","spec","code","supportedMediaTypes","gvlid","isBidRequestValid","bid","buildRequests","prebidBidRequests","prebidBidderRequest","adServerEndpoint","method","url","options","contentType","data","toORTB","interpretResponse","serverResponse","customBidRequest","body","responseBody","seatbid","prebidBidResponse","fromORTB","response","bids","getUserSyncs","syncOptions","serverResponses","gdprConsent","syncs","pixelEnabled","gdprApplies","forEach","pixels","Array","isArray","pixel","type","push","ortbPath","prebidPath","paramPath","bidRequestFirstBidParam","adServerBaseUrl","prebidBidRequestOrOrtbBidRequest","placementId","Error","JSON","stringify","functionParam","ortbId","bidderRequestId","seatBidId","Object","hasOwn"],"sourceRoot":"../../..","sources":["modules/mobkoiBidAdapter.js"],"sourcesContent":["import { ortbConverter } from '../libraries/ortbConverter/converter.js';\nimport { registerBidder } from '../src/adapters/bidderFactory.js';\nimport { BANNER } from '../src/mediaTypes.js';\nimport { deepAccess, deepSetValue, logError } from '../src/utils.js';\n\nconst BIDDER_CODE = 'mobkoi';\nconst GVL_ID = 898;\nexport const DEFAULT_AD_SERVER_BASE_URL = 'https://adserver.maximus.mobkoi.com';\n\nconst PUBLISHER_PARAMS = {\n /**\n * !IMPORTANT: This value must match the value in mobkoiAnalyticsAdapter.js\n * The name of the parameter that the publisher can use to specify the ad server endpoint.\n */\n PARAM_NAME_AD_SERVER_BASE_URL: 'adServerBaseUrl',\n PARAM_NAME_PLACEMENT_ID: 'placementId',\n}\n\nexport const converter = ortbConverter({\n context: {\n netRevenue: true,\n ttl: 30,\n },\n request(buildRequest, imps, bidderRequest, context) {\n const ortbRequest = buildRequest(imps, bidderRequest, context);\n const prebidBidRequest = context.bidRequests[0];\n\n ortbRequest.id = utils.getOrtbId(prebidBidRequest);\n deepSetValue(ortbRequest, 'site.publisher.ext.adServerBaseUrl', utils.getAdServerEndpointBaseUrl(prebidBidRequest));\n // We only support one impression per request.\n deepSetValue(ortbRequest, 'imp.0.tagid', utils.getPlacementId(prebidBidRequest));\n deepSetValue(ortbRequest, 'user.eids', context.bidRequests[0].userIdAsEids || []);\n\n return ortbRequest;\n },\n bidResponse(buildPrebidBidResponse, ortbBidResponse, context) {\n const prebidBid = buildPrebidBidResponse(ortbBidResponse, context);\n utils.addCustomFieldsToPrebidBidResponse(prebidBid, ortbBidResponse);\n return prebidBid;\n },\n});\n\nexport const spec = {\n code: BIDDER_CODE,\n supportedMediaTypes: [BANNER],\n gvlid: GVL_ID,\n\n /**\n * Determines whether or not the given bid request is valid.\n */\n isBidRequestValid(bid) {\n if (\n !deepAccess(bid, `params.${PUBLISHER_PARAMS.PARAM_NAME_PLACEMENT_ID}`)\n ) {\n logError(`The ${PUBLISHER_PARAMS.PARAM_NAME_PLACEMENT_ID} field is required in the bid request. ` +\n 'Please follow the setup guideline to set the placement ID field.')\n return false;\n }\n\n return true;\n },\n /**\n * Make a server request from the list of BidRequests.\n */\n buildRequests(prebidBidRequests, prebidBidderRequest) {\n const adServerEndpoint = utils.getAdServerEndpointBaseUrl(prebidBidderRequest) + '/bid';\n\n return {\n method: 'POST',\n url: adServerEndpoint,\n options: {\n contentType: 'application/json',\n },\n data: converter.toORTB({\n bidRequests: prebidBidRequests,\n bidderRequest: prebidBidderRequest\n }),\n };\n },\n /**\n * Unpack the response from the server into a list of bids.\n */\n interpretResponse(serverResponse, customBidRequest) {\n if (!serverResponse.body) return [];\n\n const responseBody = {...serverResponse.body, seatbid: serverResponse.body.seatbid};\n const prebidBidResponse = converter.fromORTB({\n request: customBidRequest.data,\n response: responseBody,\n });\n return prebidBidResponse.bids;\n },\n\n getUserSyncs: function(syncOptions, serverResponses, gdprConsent) {\n const syncs = [];\n\n if (!syncOptions.pixelEnabled || !gdprConsent.gdprApplies) {\n return syncs;\n }\n\n serverResponses.forEach(response => {\n const pixels = deepAccess(response, 'body.ext.pixels');\n if (!Array.isArray(pixels)) {\n return;\n }\n\n pixels.forEach(pixel => {\n const [type, url] = pixel;\n if (type === 'image' && syncOptions.pixelEnabled) {\n syncs.push({\n type: 'image',\n url: url\n });\n }\n });\n });\n\n return syncs;\n }\n};\n\nregisterBidder(spec);\n\nexport const utils = {\n /**\n * !IMPORTANT: Make sure the implementation of this function matches getAdServerEndpointBaseUrl\n * in both adapters.\n * Obtain the Ad Server Base URL from the given Prebid object.\n * @param {*} bid Prebid Bidder Request Object or Prebid Bid Response/Request\n * or ORTB Request/Response Object\n * @returns {string} The Ad Server Base URL\n */\n getAdServerEndpointBaseUrl (bid) {\n // Fields that would be automatically set if the publisher set it via pbjs.setBidderConfig.\n const ortbPath = `site.publisher.ext.${PUBLISHER_PARAMS.PARAM_NAME_AD_SERVER_BASE_URL}`;\n const prebidPath = `ortb2.${ortbPath}`;\n\n // Fields that would be set by the publisher in the bid\n // configuration object in ad unit.\n const paramPath = `params.${PUBLISHER_PARAMS.PARAM_NAME_AD_SERVER_BASE_URL}`;\n const bidRequestFirstBidParam = `bids.0.${paramPath}`;\n\n const adServerBaseUrl =\n deepAccess(bid, paramPath) ||\n deepAccess(bid, bidRequestFirstBidParam) ||\n deepAccess(bid, prebidPath) ||\n deepAccess(bid, ortbPath) ||\n DEFAULT_AD_SERVER_BASE_URL;\n\n return adServerBaseUrl;\n },\n\n /**\n * Extract the placement ID from the given object.\n * @param {*} prebidBidRequestOrOrtbBidRequest\n * @returns string\n * @throws {Error} If the placement ID is not found in the given object.\n */\n getPlacementId: function (prebidBidRequestOrOrtbBidRequest) {\n // Fields that would be set by the publisher in the bid configuration object in ad unit.\n const paramPath = 'params.placementId';\n const bidRequestFirstBidParam = `bids.0.${paramPath}`;\n\n // ORTB path for placement ID\n const ortbPath = 'imp.0.tagid';\n\n const placementId =\n deepAccess(prebidBidRequestOrOrtbBidRequest, paramPath) ||\n deepAccess(prebidBidRequestOrOrtbBidRequest, bidRequestFirstBidParam) ||\n deepAccess(prebidBidRequestOrOrtbBidRequest, ortbPath);\n\n if (!placementId) {\n throw new Error(\n 'Failed to obtain placement ID from the given object. ' +\n `Please set it via the \"${paramPath}\" field in the bid configuration.\\n` +\n 'Given object:\\n' +\n JSON.stringify({functionParam: prebidBidRequestOrOrtbBidRequest}, null, 3)\n );\n }\n\n return placementId;\n },\n\n /**\n * !IMPORTANT: Make sure the implementation of this function matches utils.getOrtbId in\n * mobkoiAnalyticsAdapter.js.\n * We use the bidderRequestId as the ortbId. We could do so because we only\n * make one ORTB request per Prebid Bidder Request.\n * The ID field named differently when the value passed on to different contexts.\n * @param {*} bid Prebid Bidder Request Object or Prebid Bid Response/Request\n * or ORTB Request/Response Object\n * @returns {string} The ORTB ID\n * @throws {Error} If the ORTB ID cannot be found in the given object.\n */\n getOrtbId(bid) {\n const ortbId =\n // called bidderRequestId in Prebid Request\n bid.bidderRequestId ||\n // called seatBidId in Prebid Bid Response Object\n bid.seatBidId ||\n // called ortbId in Interpreted Prebid Response Object\n bid.ortbId ||\n // called id in ORTB object\n (Object.hasOwn(bid, 'imp') && bid.id);\n\n if (!ortbId) {\n throw new Error('Unable to find the ORTB ID in the bid object. Given Object:\\n' +\n JSON.stringify(bid, null, 2)\n );\n }\n\n return ortbId;\n },\n\n /**\n * Append custom fields to the prebid bid response. so that they can be accessed\n * in various event handlers.\n * @param {*} prebidBidResponse\n * @param {*} ortbBidResponse\n */\n addCustomFieldsToPrebidBidResponse(prebidBidResponse, ortbBidResponse) {\n prebidBidResponse.ortbBidResponse = ortbBidResponse;\n prebidBidResponse.ortbId = ortbBidResponse.id;\n },\n}\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"mobkoiBidAdapter.js","names":["registerModule","__r0","ortbConverter","registerBidder","BANNER","deepAccess","deepSetValue","logError","BIDDER_CODE","GVL_ID","INTEGRATION_TYPE_PREBID_JS","DEFAULT_PREBID_JS_INTEGRATION_ENDPOINT","PUBLISHER_PARAMS","PARAM_NAME_PREBID_JS_INTEGRATION_ENDPOINT","PARAM_NAME_PLACEMENT_ID","converter","context","netRevenue","ttl","request","buildRequest","imps","bidderRequest","ortbRequest","prebidBidRequest","bidRequests","id","utils","getOrtbId","getIntegrationEndpoint","getPlacementId","userIdAsEids","bidResponse","buildPrebidBidResponse","ortbBidResponse","prebidBid","addCustomFieldsToPrebidBidResponse","spec","code","supportedMediaTypes","gvlid","isBidRequestValid","bid","buildRequests","prebidBidRequests","prebidBidderRequest","integrationEndpoint","method","url","options","contentType","data","toORTB","interpretResponse","serverResponse","customBidRequest","body","responseBody","seatbid","prebidBidResponse","fromORTB","response","bids","getUserSyncs","syncOptions","serverResponses","syncs","pixelEnabled","forEach","pixels","Array","isArray","pixel","type","push","ortbPath","prebidPath","paramPath","bidRequestFirstBidParam","integrationBaseUrl","prebidBidRequestOrOrtbBidRequest","placementId","Error","JSON","stringify","functionParam","ortbId","bidderRequestId","seatBidId","Object","hasOwn"],"sourceRoot":"../../..","sources":["modules/mobkoiBidAdapter.js"],"sourcesContent":["import { ortbConverter } from '../libraries/ortbConverter/converter.js';\nimport { registerBidder } from '../src/adapters/bidderFactory.js';\nimport { BANNER } from '../src/mediaTypes.js';\nimport { deepAccess, deepSetValue, logError } from '../src/utils.js';\n\nconst BIDDER_CODE = 'mobkoi';\nconst GVL_ID = 898;\n// IntegrationType is defined in the backend\nconst INTEGRATION_TYPE_PREBID_JS = 'pbjs';\n\nexport const DEFAULT_PREBID_JS_INTEGRATION_ENDPOINT = 'https://pbjs.mobkoi.com';\n\nconst PUBLISHER_PARAMS = {\n /**\n * !IMPORTANT: This value must match the value in mobkoiAnalyticsAdapter.js\n * The name of the parameter that the publisher can use to specify the integration endpoint.\n */\n PARAM_NAME_PREBID_JS_INTEGRATION_ENDPOINT: 'integrationEndpoint',\n PARAM_NAME_PLACEMENT_ID: 'placementId',\n}\n\nexport const converter = ortbConverter({\n context: {\n netRevenue: true,\n ttl: 30,\n },\n request(buildRequest, imps, bidderRequest, context) {\n const ortbRequest = buildRequest(imps, bidderRequest, context);\n const prebidBidRequest = context.bidRequests[0];\n\n ortbRequest.id = utils.getOrtbId(prebidBidRequest);\n deepSetValue(ortbRequest, 'site.publisher.ext.integrationBaseUrl', utils.getIntegrationEndpoint(prebidBidRequest));\n // We only support one impression per request.\n deepSetValue(ortbRequest, 'imp.0.tagid', utils.getPlacementId(prebidBidRequest));\n deepSetValue(ortbRequest, 'user.eids', context.bidRequests[0].userIdAsEids || []);\n deepSetValue(ortbRequest, 'ext.mobkoi.integration_type', INTEGRATION_TYPE_PREBID_JS);\n\n return ortbRequest;\n },\n bidResponse(buildPrebidBidResponse, ortbBidResponse, context) {\n const prebidBid = buildPrebidBidResponse(ortbBidResponse, context);\n utils.addCustomFieldsToPrebidBidResponse(prebidBid, ortbBidResponse);\n return prebidBid;\n },\n});\n\nexport const spec = {\n code: BIDDER_CODE,\n supportedMediaTypes: [BANNER],\n gvlid: GVL_ID,\n\n /**\n * Determines whether or not the given bid request is valid.\n */\n isBidRequestValid(bid) {\n if (\n !deepAccess(bid, `params.${PUBLISHER_PARAMS.PARAM_NAME_PLACEMENT_ID}`)\n ) {\n logError(`The ${PUBLISHER_PARAMS.PARAM_NAME_PLACEMENT_ID} field is required in the bid request. ` +\n 'Please follow the setup guideline to set the placement ID field.')\n return false;\n }\n\n return true;\n },\n /**\n * Make a server request from the list of BidRequests.\n */\n buildRequests(prebidBidRequests, prebidBidderRequest) {\n const integrationEndpoint = utils.getIntegrationEndpoint(prebidBidderRequest) + '/bid';\n\n return {\n method: 'POST',\n url: integrationEndpoint,\n options: {\n contentType: 'application/json',\n },\n data: converter.toORTB({\n bidRequests: prebidBidRequests,\n bidderRequest: prebidBidderRequest\n }),\n };\n },\n /**\n * Unpack the response from the server into a list of bids.\n */\n interpretResponse(serverResponse, customBidRequest) {\n if (!serverResponse.body) return [];\n\n const responseBody = {...serverResponse.body, seatbid: serverResponse.body.seatbid};\n const prebidBidResponse = converter.fromORTB({\n request: customBidRequest.data,\n response: responseBody,\n });\n return prebidBidResponse.bids;\n },\n\n getUserSyncs: function(syncOptions, serverResponses) {\n const syncs = [];\n\n if (!syncOptions.pixelEnabled) {\n return syncs;\n }\n\n serverResponses.forEach(response => {\n const pixels = deepAccess(response, 'body.ext.pixels');\n if (!Array.isArray(pixels)) {\n return;\n }\n\n pixels.forEach(pixel => {\n const [type, url] = pixel;\n if (type === 'image' && syncOptions.pixelEnabled) {\n syncs.push({\n type: 'image',\n url: url\n });\n }\n });\n });\n\n return syncs;\n }\n};\n\nregisterBidder(spec);\n\nexport const utils = {\n /**\n * !IMPORTANT: Make sure the implementation of this function matches getIntegrationEndpoint\n * in both adapters.\n * Obtain the Integration Base URL from the given Prebid object.\n * @param {*} bid Prebid Bidder Request Object or Prebid Bid Response/Request\n * or ORTB Request/Response Object\n * @returns {string} The Integration Base URL\n */\n getIntegrationEndpoint (bid) {\n // Fields that would be automatically set if the publisher set it via pbjs.setBidderConfig.\n const ortbPath = `site.publisher.ext.${PUBLISHER_PARAMS.PARAM_NAME_PREBID_JS_INTEGRATION_ENDPOINT}`;\n const prebidPath = `ortb2.${ortbPath}`;\n\n // Fields that would be set by the publisher in the bid\n // configuration object in ad unit.\n const paramPath = `params.${PUBLISHER_PARAMS.PARAM_NAME_PREBID_JS_INTEGRATION_ENDPOINT}`;\n const bidRequestFirstBidParam = `bids.0.${paramPath}`;\n\n const integrationBaseUrl =\n deepAccess(bid, paramPath) ||\n deepAccess(bid, bidRequestFirstBidParam) ||\n deepAccess(bid, prebidPath) ||\n deepAccess(bid, ortbPath) ||\n DEFAULT_PREBID_JS_INTEGRATION_ENDPOINT;\n\n return integrationBaseUrl;\n },\n\n /**\n * Extract the placement ID from the given object.\n * @param {*} prebidBidRequestOrOrtbBidRequest\n * @returns string\n * @throws {Error} If the placement ID is not found in the given object.\n */\n getPlacementId: function (prebidBidRequestOrOrtbBidRequest) {\n // Fields that would be set by the publisher in the bid configuration object in ad unit.\n const paramPath = 'params.placementId';\n const bidRequestFirstBidParam = `bids.0.${paramPath}`;\n\n // ORTB path for placement ID\n const ortbPath = 'imp.0.tagid';\n\n const placementId =\n deepAccess(prebidBidRequestOrOrtbBidRequest, paramPath) ||\n deepAccess(prebidBidRequestOrOrtbBidRequest, bidRequestFirstBidParam) ||\n deepAccess(prebidBidRequestOrOrtbBidRequest, ortbPath);\n\n if (!placementId) {\n throw new Error(\n 'Failed to obtain placement ID from the given object. ' +\n `Please set it via the \"${paramPath}\" field in the bid configuration.\\n` +\n 'Given object:\\n' +\n JSON.stringify({functionParam: prebidBidRequestOrOrtbBidRequest}, null, 3)\n );\n }\n\n return placementId;\n },\n\n /**\n * !IMPORTANT: Make sure the implementation of this function matches utils.getOrtbId in\n * mobkoiAnalyticsAdapter.js.\n * We use the bidderRequestId as the ortbId. We could do so because we only\n * make one ORTB request per Prebid Bidder Request.\n * The ID field named differently when the value passed on to different contexts.\n * @param {*} bid Prebid Bidder Request Object or Prebid Bid Response/Request\n * or ORTB Request/Response Object\n * @returns {string} The ORTB ID\n * @throws {Error} If the ORTB ID cannot be found in the given object.\n */\n getOrtbId(bid) {\n const ortbId =\n // called bidderRequestId in Prebid Request\n bid.bidderRequestId ||\n // called seatBidId in Prebid Bid Response Object\n bid.seatBidId ||\n // called ortbId in Interpreted Prebid Response Object\n bid.ortbId ||\n // called id in ORTB object\n (Object.hasOwn(bid, 'imp') && bid.id);\n\n if (!ortbId) {\n throw new Error('Unable to find the ORTB ID in the bid object. Given Object:\\n' +\n JSON.stringify(bid, null, 2)\n );\n }\n\n return ortbId;\n },\n\n /**\n * Append custom fields to the prebid bid response. so that they can be accessed\n * in various event handlers.\n * @param {*} prebidBidResponse\n * @param {*} ortbBidResponse\n */\n addCustomFieldsToPrebidBidResponse(prebidBidResponse, ortbBidResponse) {\n prebidBidResponse.ortbBidResponse = ortbBidResponse;\n prebidBidResponse.ortbId = ortbBidResponse.id;\n },\n}\n"],"mappings":"AAAA,SAAQA,cAAc,IAAIC,IAAI,QAAO,wBAAwB;AAA7D,SAASC,aAAa,QAAQ,yCAAyC;AACvE,SAASC,cAAc,QAAQ,kCAAkC;AACjE,SAASC,MAAM,QAAQ,sBAAsB;AAC7C,SAASC,UAAU,EAAEC,YAAY,EAAEC,QAAQ,QAAQ,iBAAiB;AAEpE,MAAMC,WAAW,GAAG,QAAQ;AAC5B,MAAMC,MAAM,GAAG,GAAG;AAClB;AACA,MAAMC,0BAA0B,GAAG,MAAM;AAEzC,OAAO,MAAMC,sCAAsC,GAAG,yBAAyB;AAE/E,MAAMC,gBAAgB,GAAG;EACvB;AACF;AACA;AACA;EACEC,yCAAyC,EAAE,qBAAqB;EAChEC,uBAAuB,EAAE;AAC3B,CAAC;AAED,OAAO,MAAMC,SAAS,GAAGb,aAAa,CAAC;EACrCc,OAAO,EAAE;IACPC,UAAU,EAAE,IAAI;IAChBC,GAAG,EAAE;EACP,CAAC;EACDC,OAAOA,CAACC,YAAY,EAAEC,IAAI,EAAEC,aAAa,EAAEN,OAAO,EAAE;IAClD,MAAMO,WAAW,GAAGH,YAAY,CAACC,IAAI,EAAEC,aAAa,EAAEN,OAAO,CAAC;IAC9D,MAAMQ,gBAAgB,GAAGR,OAAO,CAACS,WAAW,CAAC,CAAC,CAAC;IAE/CF,WAAW,CAACG,EAAE,GAAGC,KAAK,CAACC,SAAS,CAACJ,gBAAgB,CAAC;IAClDlB,YAAY,CAACiB,WAAW,EAAE,uCAAuC,EAAEI,KAAK,CAACE,sBAAsB,CAACL,gBAAgB,CAAC,CAAC;IAClH;IACAlB,YAAY,CAACiB,WAAW,EAAE,aAAa,EAAEI,KAAK,CAACG,cAAc,CAACN,gBAAgB,CAAC,CAAC;IAChFlB,YAAY,CAACiB,WAAW,EAAE,WAAW,EAAEP,OAAO,CAACS,WAAW,CAAC,CAAC,CAAC,CAACM,YAAY,IAAI,EAAE,CAAC;IACjFzB,YAAY,CAACiB,WAAW,EAAE,6BAA6B,EAAEb,0BAA0B,CAAC;IAEpF,OAAOa,WAAW;EACpB,CAAC;EACDS,WAAWA,CAACC,sBAAsB,EAAEC,eAAe,EAAElB,OAAO,EAAE;IAC5D,MAAMmB,SAAS,GAAGF,sBAAsB,CAACC,eAAe,EAAElB,OAAO,CAAC;IAClEW,KAAK,CAACS,kCAAkC,CAACD,SAAS,EAAED,eAAe,CAAC;IACpE,OAAOC,SAAS;EAClB;AACF,CAAC,CAAC;AAEF,OAAO,MAAME,IAAI,GAAG;EAClBC,IAAI,EAAE9B,WAAW;EACjB+B,mBAAmB,EAAE,CAACnC,MAAM,CAAC;EAC7BoC,KAAK,EAAE/B,MAAM;EAEb;AACF;AACA;EACEgC,iBAAiBA,CAACC,GAAG,EAAE;IACrB,IACE,CAACrC,UAAU,CAACqC,GAAG,EAAE,UAAU9B,gBAAgB,CAACE,uBAAuB,EAAE,CAAC,EACtE;MACAP,QAAQ,CAAC,OAAOK,gBAAgB,CAACE,uBAAuB,yCAAyC,GAC/F,kEAAkE,CAAC;MACrE,OAAO,KAAK;IACd;IAEA,OAAO,IAAI;EACb,CAAC;EACD;AACF;AACA;EACE6B,aAAaA,CAACC,iBAAiB,EAAEC,mBAAmB,EAAE;IACpD,MAAMC,mBAAmB,GAAGnB,KAAK,CAACE,sBAAsB,CAACgB,mBAAmB,CAAC,GAAG,MAAM;IAEtF,OAAO;MACLE,MAAM,EAAE,MAAM;MACdC,GAAG,EAAEF,mBAAmB;MACxBG,OAAO,EAAE;QACPC,WAAW,EAAE;MACf,CAAC;MACDC,IAAI,EAAEpC,SAAS,CAACqC,MAAM,CAAC;QACrB3B,WAAW,EAAEmB,iBAAiB;QAC9BtB,aAAa,EAAEuB;MACjB,CAAC;IACH,CAAC;EACH,CAAC;EACD;AACF;AACA;EACEQ,iBAAiBA,CAACC,cAAc,EAAEC,gBAAgB,EAAE;IAClD,IAAI,CAACD,cAAc,CAACE,IAAI,EAAE,OAAO,EAAE;IAEnC,MAAMC,YAAY,GAAG;MAAC,GAAGH,cAAc,CAACE,IAAI;MAAEE,OAAO,EAAEJ,cAAc,CAACE,IAAI,CAACE;IAAO,CAAC;IACnF,MAAMC,iBAAiB,GAAG5C,SAAS,CAAC6C,QAAQ,CAAC;MAC3CzC,OAAO,EAAEoC,gBAAgB,CAACJ,IAAI;MAC9BU,QAAQ,EAAEJ;IACZ,CAAC,CAAC;IACF,OAAOE,iBAAiB,CAACG,IAAI;EAC/B,CAAC;EAEDC,YAAY,EAAE,SAAAA,CAASC,WAAW,EAAEC,eAAe,EAAE;IACnD,MAAMC,KAAK,GAAG,EAAE;IAEhB,IAAI,CAACF,WAAW,CAACG,YAAY,EAAE;MAC7B,OAAOD,KAAK;IACd;IAEAD,eAAe,CAACG,OAAO,CAACP,QAAQ,IAAI;MAClC,MAAMQ,MAAM,GAAGhE,UAAU,CAACwD,QAAQ,EAAE,iBAAiB,CAAC;MACtD,IAAI,CAACS,KAAK,CAACC,OAAO,CAACF,MAAM,CAAC,EAAE;QAC1B;MACF;MAEAA,MAAM,CAACD,OAAO,CAACI,KAAK,IAAI;QACtB,MAAM,CAACC,IAAI,EAAEzB,GAAG,CAAC,GAAGwB,KAAK;QACzB,IAAIC,IAAI,KAAK,OAAO,IAAIT,WAAW,CAACG,YAAY,EAAE;UAChDD,KAAK,CAACQ,IAAI,CAAC;YACTD,IAAI,EAAE,OAAO;YACbzB,GAAG,EAAEA;UACP,CAAC,CAAC;QACJ;MACF,CAAC,CAAC;IACJ,CAAC,CAAC;IAEF,OAAOkB,KAAK;EACd;AACF,CAAC;AAED/D,cAAc,CAACkC,IAAI,CAAC;AAEpB,OAAO,MAAMV,KAAK,GAAG;EACnB;AACF;AACA;AACA;AACA;AACA;AACA;AACA;EACEE,sBAAsBA,CAAEa,GAAG,EAAE;IAC3B;IACA,MAAMiC,QAAQ,GAAG,sBAAsB/D,gBAAgB,CAACC,yCAAyC,EAAE;IACnG,MAAM+D,UAAU,GAAG,SAASD,QAAQ,EAAE;;IAEtC;IACA;IACA,MAAME,SAAS,GAAG,UAAUjE,gBAAgB,CAACC,yCAAyC,EAAE;IACxF,MAAMiE,uBAAuB,GAAG,UAAUD,SAAS,EAAE;IAErD,MAAME,kBAAkB,GACtB1E,UAAU,CAACqC,GAAG,EAAEmC,SAAS,CAAC,IAC1BxE,UAAU,CAACqC,GAAG,EAAEoC,uBAAuB,CAAC,IACxCzE,UAAU,CAACqC,GAAG,EAAEkC,UAAU,CAAC,IAC3BvE,UAAU,CAACqC,GAAG,EAAEiC,QAAQ,CAAC,IACzBhE,sCAAsC;IAExC,OAAOoE,kBAAkB;EAC3B,CAAC;EAED;AACF;AACA;AACA;AACA;AACA;EACEjD,cAAc,EAAE,SAAAA,CAAUkD,gCAAgC,EAAE;IAC1D;IACA,MAAMH,SAAS,GAAG,oBAAoB;IACtC,MAAMC,uBAAuB,GAAG,UAAUD,SAAS,EAAE;;IAErD;IACA,MAAMF,QAAQ,GAAG,aAAa;IAE9B,MAAMM,WAAW,GACf5E,UAAU,CAAC2E,gCAAgC,EAAEH,SAAS,CAAC,IACvDxE,UAAU,CAAC2E,gCAAgC,EAAEF,uBAAuB,CAAC,IACrEzE,UAAU,CAAC2E,gCAAgC,EAAEL,QAAQ,CAAC;IAExD,IAAI,CAACM,WAAW,EAAE;MAChB,MAAM,IAAIC,KAAK,CACb,uDAAuD,GACvD,0BAA0BL,SAAS,qCAAqC,GACxE,iBAAiB,GACjBM,IAAI,CAACC,SAAS,CAAC;QAACC,aAAa,EAAEL;MAAgC,CAAC,EAAE,IAAI,EAAE,CAAC,CAC3E,CAAC;IACH;IAEA,OAAOC,WAAW;EACpB,CAAC;EAED;AACF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;EACErD,SAASA,CAACc,GAAG,EAAE;IACb,MAAM4C,MAAM;IACV;IACA5C,GAAG,CAAC6C,eAAe;IACnB;IACA7C,GAAG,CAAC8C,SAAS;IACb;IACA9C,GAAG,CAAC4C,MAAM;IACV;IACCG,MAAM,CAACC,MAAM,CAAChD,GAAG,EAAE,KAAK,CAAC,IAAIA,GAAG,CAAChB,EAAG;IAEvC,IAAI,CAAC4D,MAAM,EAAE;MACX,MAAM,IAAIJ,KAAK,CAAC,+DAA+D,GAC7EC,IAAI,CAACC,SAAS,CAAC1C,GAAG,EAAE,IAAI,EAAE,CAAC,CAC7B,CAAC;IACH;IAEA,OAAO4C,MAAM;EACf,CAAC;EAED;AACF;AACA;AACA;AACA;AACA;EACElD,kCAAkCA,CAACuB,iBAAiB,EAAEzB,eAAe,EAAE;IACrEyB,iBAAiB,CAACzB,eAAe,GAAGA,eAAe;IACnDyB,iBAAiB,CAAC2B,MAAM,GAAGpD,eAAe,CAACR,EAAE;EAC/C;AACF,CAAC;AApODzB,IAAI,CAAC,kBAAkB,CAAC","ignoreList":[]}
|
|
@@ -12,14 +12,20 @@ import { MODULE_TYPE_UID } from '../src/activities/modules.js';
|
|
|
12
12
|
import { logError, logInfo, deepAccess, insertUserSyncIframe } from '../src/utils.js';
|
|
13
13
|
const GVL_ID = 898;
|
|
14
14
|
const MODULE_NAME = 'mobkoiId';
|
|
15
|
-
export const
|
|
15
|
+
export const PROD_PREBID_JS_INTEGRATION_ENDPOINT = 'https://pbjs.mobkoi.com';
|
|
16
16
|
export const EQUATIV_BASE_URL = 'https://sync.smartadserver.com';
|
|
17
17
|
export const EQUATIV_NETWORK_ID = '5290';
|
|
18
|
+
|
|
18
19
|
/**
|
|
19
|
-
*
|
|
20
|
-
* The name of the parameter that the publisher can use to specify the ad server endpoint.
|
|
20
|
+
* The parameters that the publisher defined in the userSync.userIds[].params
|
|
21
21
|
*/
|
|
22
|
-
const
|
|
22
|
+
const USER_SYNC_PARAMS = {
|
|
23
|
+
/**
|
|
24
|
+
* !IMPORTANT: This value must match the value in mobkoiAnalyticsAdapter.js
|
|
25
|
+
* The name of the parameter that the publisher can use to specify the integration endpoint.
|
|
26
|
+
*/
|
|
27
|
+
PARAM_NAME_PREBID_JS_INTEGRATION_ENDPOINT: 'integrationEndpoint'
|
|
28
|
+
};
|
|
23
29
|
export const storage = getStorageManager({
|
|
24
30
|
moduleType: MODULE_TYPE_UID,
|
|
25
31
|
moduleName: MODULE_NAME
|
|
@@ -88,27 +94,30 @@ submodule('userId', mobkoiIdSubmodule);
|
|
|
88
94
|
export const utils = {
|
|
89
95
|
requestEquativSasId(syncUserOptions, consentObject, onCompleteCallback) {
|
|
90
96
|
logInfo('Start requesting Equativ SAS ID');
|
|
91
|
-
const
|
|
97
|
+
const integrationBaseUrl = deepAccess(syncUserOptions, `params.${USER_SYNC_PARAMS.PARAM_NAME_PREBID_JS_INTEGRATION_ENDPOINT}`) || PROD_PREBID_JS_INTEGRATION_ENDPOINT;
|
|
92
98
|
const equativPixelUrl = utils.buildEquativPixelUrl(syncUserOptions, consentObject);
|
|
93
99
|
logInfo('Equativ SAS ID request URL:', equativPixelUrl);
|
|
94
|
-
const url =
|
|
100
|
+
const url = integrationBaseUrl + '/pixeliframe?' + 'pixelUrl=' + encodeURIComponent(equativPixelUrl) + '&cookieName=sas_uid';
|
|
95
101
|
|
|
96
102
|
/**
|
|
97
|
-
* Listen for messages from the iframe
|
|
103
|
+
* Listen for messages from the iframe with automatic cleanup
|
|
98
104
|
*/
|
|
99
|
-
|
|
105
|
+
const messageHandler = function (event) {
|
|
100
106
|
switch (event.data.type) {
|
|
101
107
|
case 'MOBKOI_PIXEL_SYNC_COMPLETE':
|
|
102
108
|
const sasUid = event.data.syncData;
|
|
103
109
|
logInfo('Parent window Sync completed. SAS ID:', sasUid);
|
|
110
|
+
window.removeEventListener('message', messageHandler);
|
|
104
111
|
onCompleteCallback(sasUid);
|
|
105
112
|
break;
|
|
106
113
|
case 'MOBKOI_PIXEL_SYNC_ERROR':
|
|
107
114
|
logError('Parent window Sync failed:', event.data.error);
|
|
115
|
+
window.removeEventListener('message', messageHandler);
|
|
108
116
|
onCompleteCallback(null);
|
|
109
117
|
break;
|
|
110
118
|
}
|
|
111
|
-
}
|
|
119
|
+
};
|
|
120
|
+
window.addEventListener('message', messageHandler);
|
|
112
121
|
insertUserSyncIframe(url, () => {
|
|
113
122
|
logInfo('insertUserSyncIframe loaded');
|
|
114
123
|
});
|
|
@@ -121,9 +130,9 @@ export const utils = {
|
|
|
121
130
|
*/
|
|
122
131
|
buildEquativPixelUrl(syncUserOptions, consentObject) {
|
|
123
132
|
logInfo('Generating Equativ SAS ID request URL');
|
|
124
|
-
const
|
|
133
|
+
const integrationBaseUrl = deepAccess(syncUserOptions, `params.${USER_SYNC_PARAMS.PARAM_NAME_PREBID_JS_INTEGRATION_ENDPOINT}`) || PROD_PREBID_JS_INTEGRATION_ENDPOINT;
|
|
125
134
|
const gdprConsentString = consentObject && consentObject.gdpr && consentObject.gdpr.consentString ? consentObject.gdpr.consentString : '';
|
|
126
|
-
const smartServerUrl = EQUATIV_BASE_URL + '/getuid?' + `url=` + encodeURIComponent(`${
|
|
135
|
+
const smartServerUrl = EQUATIV_BASE_URL + '/getuid?' + `url=` + encodeURIComponent(`${integrationBaseUrl}/getPixel?value=`) + '[sas_uid]' + `&gdpr_consent=${gdprConsentString}` + `&nwid=${EQUATIV_NETWORK_ID}`;
|
|
127
136
|
return smartServerUrl;
|
|
128
137
|
}
|
|
129
138
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mobkoiIdSystem.js","names":["registerModule","__r0","submodule","getStorageManager","MODULE_TYPE_UID","logError","logInfo","deepAccess","insertUserSyncIframe","GVL_ID","MODULE_NAME","PROD_AD_SERVER_BASE_URL","EQUATIV_BASE_URL","EQUATIV_NETWORK_ID","PARAM_NAME_AD_SERVER_BASE_URL","storage","moduleType","moduleName","mobkoiIdSubmodule","name","gvlid","decode","value","undefined","getId","userSyncOptions","consentObject","cookiesAreEnabled","id","storageName","existingId","getCookie","callback","Promise","resolve","_reject","utils","requestEquativSasId","sasId","setCookie","expires","eids","source","atype","syncUserOptions","onCompleteCallback","adServerBaseUrl","equativPixelUrl","buildEquativPixelUrl","url","encodeURIComponent","window","addEventListener","event","data","type","sasUid","syncData","error","gdprConsentString","gdpr","consentString","smartServerUrl"],"sourceRoot":"../../..","sources":["modules/mobkoiIdSystem.js"],"sourcesContent":["/**\n * This module adds mobkoiId support to the User ID module\n * The {@link module:modules/userId} module is required.\n * @module modules/mobkoiIdSystem\n * @requires module:modules/userId\n */\n\nimport { submodule } from '../src/hook.js';\nimport { getStorageManager } from '../src/storageManager.js';\nimport { MODULE_TYPE_UID } from '../src/activities/modules.js';\nimport { logError, logInfo, deepAccess, insertUserSyncIframe } from '../src/utils.js';\n\nconst GVL_ID = 898;\nconst MODULE_NAME = 'mobkoiId';\nexport const PROD_AD_SERVER_BASE_URL = 'https://adserver.maximus.mobkoi.com';\nexport const EQUATIV_BASE_URL = 'https://sync.smartadserver.com';\nexport const EQUATIV_NETWORK_ID = '5290';\n/**\n * !IMPORTANT: This value must match the value in mobkoiAnalyticsAdapter.js\n * The name of the parameter that the publisher can use to specify the ad server endpoint.\n */\nconst PARAM_NAME_AD_SERVER_BASE_URL = 'adServerBaseUrl';\n\nexport const storage = getStorageManager({ moduleType: MODULE_TYPE_UID, moduleName: MODULE_NAME });\n\nexport const mobkoiIdSubmodule = {\n name: MODULE_NAME,\n gvlid: GVL_ID,\n\n decode(value) {\n return value ? { [MODULE_NAME]: value } : undefined;\n },\n\n getId(userSyncOptions, consentObject) {\n logInfo('Getting Equativ SAS ID.');\n\n if (!storage.cookiesAreEnabled()) {\n logError('Cookies are not enabled. Module will not work.');\n return {\n id: null\n };\n }\n\n const storageName = userSyncOptions && userSyncOptions.storage && userSyncOptions.storage.name;\n if (!storageName) {\n logError('Storage name is not defined. Module will not work.');\n return {\n id: null\n };\n }\n\n const existingId = storage.getCookie(storageName);\n\n if (existingId) {\n logInfo(`Found \"${storageName}\" from local cookie: \"${existingId}\"`);\n return { id: existingId };\n }\n\n logInfo(`Cannot found \"${storageName}\" in local cookie with name.`);\n return {\n callback: () => {\n return new Promise((resolve, _reject) => {\n utils.requestEquativSasId(\n userSyncOptions,\n consentObject,\n (sasId) => {\n if (!sasId) {\n logError('Equativ SAS ID is empty');\n resolve({ id: null });\n return;\n }\n\n logInfo(`Fetched Equativ SAS ID: \"${sasId}\"`);\n storage.setCookie(storageName, sasId, userSyncOptions.storage.expires);\n logInfo(`Stored Equativ SAS ID in local cookie with name: \"${storageName}\"`);\n resolve({ id: sasId });\n }\n );\n });\n }\n };\n },\n eids: {\n 'mobkoiId': {\n source: 'mobkoi.com',\n atype: 1\n },\n }\n};\n\nsubmodule('userId', mobkoiIdSubmodule);\n\nexport const utils = {\n requestEquativSasId(syncUserOptions, consentObject, onCompleteCallback) {\n logInfo('Start requesting Equativ SAS ID');\n const adServerBaseUrl = deepAccess(\n syncUserOptions,\n `params.${PARAM_NAME_AD_SERVER_BASE_URL}`) || PROD_AD_SERVER_BASE_URL;\n\n const equativPixelUrl = utils.buildEquativPixelUrl(syncUserOptions, consentObject);\n logInfo('Equativ SAS ID request URL:', equativPixelUrl);\n\n const url = adServerBaseUrl + '/pixeliframe?' +\n 'pixelUrl=' + encodeURIComponent(equativPixelUrl) +\n '&cookieName=sas_uid';\n\n /**\n * Listen for messages from the iframe\n */\n window.addEventListener('message', function(event) {\n switch (event.data.type) {\n case 'MOBKOI_PIXEL_SYNC_COMPLETE':\n const sasUid = event.data.syncData;\n logInfo('Parent window Sync completed. SAS ID:', sasUid);\n onCompleteCallback(sasUid);\n break;\n case 'MOBKOI_PIXEL_SYNC_ERROR':\n logError('Parent window Sync failed:', event.data.error);\n onCompleteCallback(null);\n break;\n }\n });\n\n insertUserSyncIframe(url, () => {\n logInfo('insertUserSyncIframe loaded');\n });\n\n // Return the URL for testing purposes\n return url;\n },\n\n /**\n * Build a pixel URL that will be placed in an iframe to fetch the Equativ SAS ID\n */\n buildEquativPixelUrl(syncUserOptions, consentObject) {\n logInfo('Generating Equativ SAS ID request URL');\n const adServerBaseUrl =\n deepAccess(\n syncUserOptions,\n `params.${PARAM_NAME_AD_SERVER_BASE_URL}`) || PROD_AD_SERVER_BASE_URL;\n\n const gdprConsentString = consentObject && consentObject.gdpr && consentObject.gdpr.consentString ? consentObject.gdpr.consentString : '';\n const smartServerUrl = EQUATIV_BASE_URL + '/getuid?' +\n `url=` + encodeURIComponent(`${adServerBaseUrl}/getPixel?value=`) + '[sas_uid]' +\n `&gdpr_consent=${gdprConsentString}` +\n `&nwid=${EQUATIV_NETWORK_ID}`;\n\n return smartServerUrl;\n }\n};\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"mobkoiIdSystem.js","names":["registerModule","__r0","submodule","getStorageManager","MODULE_TYPE_UID","logError","logInfo","deepAccess","insertUserSyncIframe","GVL_ID","MODULE_NAME","PROD_PREBID_JS_INTEGRATION_ENDPOINT","EQUATIV_BASE_URL","EQUATIV_NETWORK_ID","USER_SYNC_PARAMS","PARAM_NAME_PREBID_JS_INTEGRATION_ENDPOINT","storage","moduleType","moduleName","mobkoiIdSubmodule","name","gvlid","decode","value","undefined","getId","userSyncOptions","consentObject","cookiesAreEnabled","id","storageName","existingId","getCookie","callback","Promise","resolve","_reject","utils","requestEquativSasId","sasId","setCookie","expires","eids","source","atype","syncUserOptions","onCompleteCallback","integrationBaseUrl","equativPixelUrl","buildEquativPixelUrl","url","encodeURIComponent","messageHandler","event","data","type","sasUid","syncData","window","removeEventListener","error","addEventListener","gdprConsentString","gdpr","consentString","smartServerUrl"],"sourceRoot":"../../..","sources":["modules/mobkoiIdSystem.js"],"sourcesContent":["/**\n * This module adds mobkoiId support to the User ID module\n * The {@link module:modules/userId} module is required.\n * @module modules/mobkoiIdSystem\n * @requires module:modules/userId\n */\n\nimport { submodule } from '../src/hook.js';\nimport { getStorageManager } from '../src/storageManager.js';\nimport { MODULE_TYPE_UID } from '../src/activities/modules.js';\nimport { logError, logInfo, deepAccess, insertUserSyncIframe } from '../src/utils.js';\n\nconst GVL_ID = 898;\nconst MODULE_NAME = 'mobkoiId';\nexport const PROD_PREBID_JS_INTEGRATION_ENDPOINT = 'https://pbjs.mobkoi.com';\nexport const EQUATIV_BASE_URL = 'https://sync.smartadserver.com';\nexport const EQUATIV_NETWORK_ID = '5290';\n\n/**\n * The parameters that the publisher defined in the userSync.userIds[].params\n */\nconst USER_SYNC_PARAMS = {\n /**\n * !IMPORTANT: This value must match the value in mobkoiAnalyticsAdapter.js\n * The name of the parameter that the publisher can use to specify the integration endpoint.\n */\n PARAM_NAME_PREBID_JS_INTEGRATION_ENDPOINT: 'integrationEndpoint',\n}\n\nexport const storage = getStorageManager({ moduleType: MODULE_TYPE_UID, moduleName: MODULE_NAME });\n\nexport const mobkoiIdSubmodule = {\n name: MODULE_NAME,\n gvlid: GVL_ID,\n\n decode(value) {\n return value ? { [MODULE_NAME]: value } : undefined;\n },\n\n getId(userSyncOptions, consentObject) {\n logInfo('Getting Equativ SAS ID.');\n\n if (!storage.cookiesAreEnabled()) {\n logError('Cookies are not enabled. Module will not work.');\n return {\n id: null\n };\n }\n\n const storageName = userSyncOptions && userSyncOptions.storage && userSyncOptions.storage.name;\n if (!storageName) {\n logError('Storage name is not defined. Module will not work.');\n return {\n id: null\n };\n }\n\n const existingId = storage.getCookie(storageName);\n\n if (existingId) {\n logInfo(`Found \"${storageName}\" from local cookie: \"${existingId}\"`);\n return { id: existingId };\n }\n\n logInfo(`Cannot found \"${storageName}\" in local cookie with name.`);\n return {\n callback: () => {\n return new Promise((resolve, _reject) => {\n utils.requestEquativSasId(\n userSyncOptions,\n consentObject,\n (sasId) => {\n if (!sasId) {\n logError('Equativ SAS ID is empty');\n resolve({ id: null });\n return;\n }\n\n logInfo(`Fetched Equativ SAS ID: \"${sasId}\"`);\n storage.setCookie(storageName, sasId, userSyncOptions.storage.expires);\n logInfo(`Stored Equativ SAS ID in local cookie with name: \"${storageName}\"`);\n resolve({ id: sasId });\n }\n );\n });\n }\n };\n },\n eids: {\n 'mobkoiId': {\n source: 'mobkoi.com',\n atype: 1\n },\n }\n};\n\nsubmodule('userId', mobkoiIdSubmodule);\n\nexport const utils = {\n requestEquativSasId(syncUserOptions, consentObject, onCompleteCallback) {\n logInfo('Start requesting Equativ SAS ID');\n const integrationBaseUrl = deepAccess(\n syncUserOptions,\n `params.${USER_SYNC_PARAMS.PARAM_NAME_PREBID_JS_INTEGRATION_ENDPOINT}`) || PROD_PREBID_JS_INTEGRATION_ENDPOINT;\n\n const equativPixelUrl = utils.buildEquativPixelUrl(syncUserOptions, consentObject);\n logInfo('Equativ SAS ID request URL:', equativPixelUrl);\n\n const url = integrationBaseUrl + '/pixeliframe?' +\n 'pixelUrl=' + encodeURIComponent(equativPixelUrl) +\n '&cookieName=sas_uid';\n\n /**\n * Listen for messages from the iframe with automatic cleanup\n */\n const messageHandler = function(event) {\n switch (event.data.type) {\n case 'MOBKOI_PIXEL_SYNC_COMPLETE':\n const sasUid = event.data.syncData;\n logInfo('Parent window Sync completed. SAS ID:', sasUid);\n window.removeEventListener('message', messageHandler);\n onCompleteCallback(sasUid);\n break;\n case 'MOBKOI_PIXEL_SYNC_ERROR':\n logError('Parent window Sync failed:', event.data.error);\n window.removeEventListener('message', messageHandler);\n onCompleteCallback(null);\n break;\n }\n };\n\n window.addEventListener('message', messageHandler);\n\n insertUserSyncIframe(url, () => {\n logInfo('insertUserSyncIframe loaded');\n });\n\n // Return the URL for testing purposes\n return url;\n },\n\n /**\n * Build a pixel URL that will be placed in an iframe to fetch the Equativ SAS ID\n */\n buildEquativPixelUrl(syncUserOptions, consentObject) {\n logInfo('Generating Equativ SAS ID request URL');\n const integrationBaseUrl =\n deepAccess(\n syncUserOptions,\n `params.${USER_SYNC_PARAMS.PARAM_NAME_PREBID_JS_INTEGRATION_ENDPOINT}`) || PROD_PREBID_JS_INTEGRATION_ENDPOINT;\n\n const gdprConsentString = consentObject && consentObject.gdpr && consentObject.gdpr.consentString ? consentObject.gdpr.consentString : '';\n const smartServerUrl = EQUATIV_BASE_URL + '/getuid?' +\n `url=` + encodeURIComponent(`${integrationBaseUrl}/getPixel?value=`) + '[sas_uid]' +\n `&gdpr_consent=${gdprConsentString}` +\n `&nwid=${EQUATIV_NETWORK_ID}`;\n\n return smartServerUrl;\n }\n};\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -79,6 +79,6 @@ export declare const resetMultiConfig: () => void;
|
|
|
79
79
|
/**
|
|
80
80
|
* Resets globally stored multibid ad unit bids
|
|
81
81
|
*/
|
|
82
|
-
export declare const resetMultibidUnits: () =>
|
|
82
|
+
export declare const resetMultibidUnits: () => void;
|
|
83
83
|
export declare function setOrtbExtPrebidMultibid(ortbRequest: any): void;
|
|
84
84
|
export {};
|
|
@@ -211,7 +211,9 @@ export const resetMultiConfig = () => {
|
|
|
211
211
|
/**
|
|
212
212
|
* Resets globally stored multibid ad unit bids
|
|
213
213
|
*/
|
|
214
|
-
export const resetMultibidUnits = () =>
|
|
214
|
+
export const resetMultibidUnits = () => {
|
|
215
|
+
multibidUnits = {};
|
|
216
|
+
};
|
|
215
217
|
|
|
216
218
|
/**
|
|
217
219
|
* Set up hooks on init
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["registerModule","__r0","config","setupBeforeHookFnOnce","getHook","logWarn","deepAccess","getUniqueIdentifierStr","deepSetValue","groupBy","events","EVENTS","addBidderRequests","getHighestCpmBidsFromBidPool","sortByDealAndPriceBucketOrCpm","PBS","registerOrtbProcessor","REQUEST","timedBidResponseHook","MODULE_NAME","hasMultibid","multiConfig","multibidUnits","getConfig","conf","Array","isArray","multibid","length","validateMultibid","resetMultiConfig","forEach","entry","bidder","maxbids","maxBids","prefix","targetBiddercodePrefix","bidders","key","check","duplicate","filter","map","setConfig","adjustBidderRequestsHook","fn","bidderRequests","bidRequest","bidderCode","bidLimit","call","addBidResponseHook","adUnitCode","bid","reject","floor","multibidPrefix","originalBidder","maxReached","cpm","originalRequestId","requestId","ads","push","targetingBidder","sortByMultibid","a","b","targetBidPoolHook","bidsReceived","highestCpmCallback","adUnitBidLimit","arguments","undefined","hasModified","dealPrioritization","modifiedBids","buckets","bids","concat","Object","keys","reduce","result","slotId","bucketBids","bidsByBidderName","adjustedBids","sort","bidA","bidB","index","bidsByBidderCode","slice","resetMultibidUnits","init","on","AUCTION_INIT","before","setOrtbExtPrebidMultibid","ortbRequest","o","fromEntries","entries","_ref","k","v","toLowerCase","type","name","dialects"],"sourceRoot":"../../../..","sources":["modules/multibid/index.ts"],"sourcesContent":["/**\n * This module adds Multibid support to prebid.js\n * @module modules/multibid\n */\n\nimport {config} from '../../src/config.js';\nimport {setupBeforeHookFnOnce, getHook} from '../../src/hook.js';\nimport {\n logWarn, deepAccess, getUniqueIdentifierStr, deepSetValue, groupBy\n} from '../../src/utils.js';\nimport * as events from '../../src/events.js';\nimport { EVENTS } from '../../src/constants.js';\nimport {addBidderRequests} from '../../src/auction.js';\nimport {getHighestCpmBidsFromBidPool, sortByDealAndPriceBucketOrCpm} from '../../src/targeting.js';\nimport {PBS, registerOrtbProcessor, REQUEST} from '../../src/pbjsORTB.js';\nimport {timedBidResponseHook} from '../../src/utils/perfMetrics.js';\nimport type {BidderCode} from \"../../src/types/common.d.ts\";\n\nconst MODULE_NAME = 'multibid';\nlet hasMultibid = false;\nlet multiConfig = {};\nlet multibidUnits = {};\n\ntype MultiBidConfig = ({\n /**\n * A bidder code.\n */\n bidder: BidderCode;\n bidders?: undefined\n} | {\n /**\n * Multiple bidder codes.\n */\n bidders: BidderCode[];\n bidder?: undefined;\n}) & {\n /**\n * The number of bids the named bidder(s) can supply. Max of 9.\n */\n maxBids: number;\n /**\n * An alternate (short) bidder code to send to the ad server. A number will be appended, starting from 2, e.g. hb_pb_PREFIX2.\n * If not provided, the extra bids will not go to the ad server.\n */\n targetBiddercodePrefix?: string;\n}\n\ndeclare module '../../src/config' {\n interface Config {\n multibid?: MultiBidConfig[];\n }\n}\n\n// Storing this globally on init for easy reference to configuration\nconfig.getConfig(MODULE_NAME, conf => {\n if (!Array.isArray(conf.multibid) || !conf.multibid.length || !validateMultibid(conf.multibid)) return;\n\n resetMultiConfig();\n hasMultibid = true;\n\n conf.multibid.forEach(entry => {\n if (entry.bidder) {\n multiConfig[entry.bidder] = {\n maxbids: entry.maxBids,\n prefix: entry.targetBiddercodePrefix\n }\n } else {\n entry.bidders.forEach(key => {\n multiConfig[key] = {\n maxbids: entry.maxBids,\n prefix: entry.targetBiddercodePrefix\n }\n });\n }\n });\n});\n\n/**\n * @summary validates multibid configuration entries\n * @param {Object[]} conf - example [{bidder: 'bidderA', maxbids: 2, prefix: 'bidA'}, {bidder: 'bidderB', maxbids: 2}]\n * @return {Boolean}\n */\nexport function validateMultibid(conf) {\n let check = true;\n const duplicate = conf.filter(entry => {\n // Check if entry.bidder is not defined or typeof string, filter entry and reset configuration\n if ((!entry.bidder || typeof entry.bidder !== 'string') && (!entry.bidders || !Array.isArray(entry.bidders))) {\n logWarn('Filtering multibid entry. Missing required bidder or bidders property.');\n check = false;\n return false;\n }\n\n return true;\n }).map(entry => {\n // Check if entry.maxbids is not defined, not typeof number, or less than 1, set maxbids to 1 and reset configuration\n // Check if entry.maxbids is greater than 9, set maxbids to 9 and reset configuration\n if (typeof entry.maxBids !== 'number' || entry.maxBids < 1 || entry.maxBids > 9) {\n entry.maxBids = (typeof entry.maxBids !== 'number' || entry.maxBids < 1) ? 1 : 9;\n check = false;\n }\n\n return entry;\n });\n\n if (!check) config.setConfig({multibid: duplicate});\n\n return check;\n}\n\n/**\n * @summary addBidderRequests before hook\n * @param {Function} fn reference to original function (used by hook logic)\n * @param {Object[]} bidderRequests containing copy of each bidderRequest object\n */\nexport function adjustBidderRequestsHook(fn, bidderRequests) {\n bidderRequests.map(bidRequest => {\n // Loop through bidderRequests and check if bidderCode exists in multiconfig\n // If true, add bidderRequest.bidLimit to bidder request\n if (multiConfig[bidRequest.bidderCode]) {\n bidRequest.bidLimit = multiConfig[bidRequest.bidderCode].maxbids\n }\n return bidRequest;\n })\n\n fn.call(this, bidderRequests);\n}\n\ndeclare module '../../src/bidfactory' {\n interface BaseBid {\n // TODO multibid alters bid's `requestId` and `bidderCode`, which is not\n // necessary if the objective is to just alter targeting.\n // is it desirable for e.g. analytics to see bogus bidder codes?\n multibidPrefix?: string;\n originalBidder?: BaseBid['bidderCode'];\n originalRequestId?: BaseBid['requestId'];\n targetingBidder?: string;\n }\n}\n/**\n * @summary addBidResponse before hook\n * @param {Function} fn reference to original function (used by hook logic)\n * @param {String} ad unit code for bid\n * @param {Object} bid object\n */\nexport const addBidResponseHook = timedBidResponseHook('multibid', function addBidResponseHook(fn, adUnitCode, bid, reject) {\n const floor = deepAccess(bid, 'floorData.floorValue');\n\n if (!config.getConfig('multibid')) resetMultiConfig();\n // Checks if multiconfig exists and bid bidderCode exists within config and is an adpod bid\n // Else checks if multiconfig exists and bid bidderCode exists within config\n // Else continue with no modifications\n if (hasMultibid && multiConfig[bid.bidderCode] && deepAccess(bid, 'video.context') === 'adpod') {\n fn.call(this, adUnitCode, bid, reject);\n } else if (hasMultibid && multiConfig[bid.bidderCode]) {\n // Set property multibidPrefix on bid\n if (multiConfig[bid.bidderCode].prefix) bid.multibidPrefix = multiConfig[bid.bidderCode].prefix;\n bid.originalBidder = bid.bidderCode;\n // Check if stored bids for auction include adUnitCode.bidder and max limit not reach for ad unit\n if (deepAccess(multibidUnits, [adUnitCode, bid.bidderCode])) {\n // Store request id under new property originalRequestId, create new unique bidId,\n // and push bid into multibid stored bids for auction if max not reached and bid cpm above floor\n if (!multibidUnits[adUnitCode][bid.bidderCode].maxReached && (!floor || floor <= bid.cpm)) {\n bid.originalRequestId = bid.requestId;\n\n bid.requestId = getUniqueIdentifierStr();\n multibidUnits[adUnitCode][bid.bidderCode].ads.push(bid);\n\n const length = multibidUnits[adUnitCode][bid.bidderCode].ads.length;\n\n if (multiConfig[bid.bidderCode].prefix) bid.targetingBidder = multiConfig[bid.bidderCode].prefix + length;\n if (length === multiConfig[bid.bidderCode].maxbids) multibidUnits[adUnitCode][bid.bidderCode].maxReached = true;\n\n fn.call(this, adUnitCode, bid, reject);\n } else {\n logWarn(`Filtering multibid received from bidder ${bid.bidderCode}: ` + ((multibidUnits[adUnitCode][bid.bidderCode].maxReached) ? `Maximum bid limit reached for ad unit code ${adUnitCode}` : 'Bid cpm under floors value.'));\n }\n } else {\n if (deepAccess(bid, 'floorData.floorValue')) deepSetValue(multibidUnits, [adUnitCode, bid.bidderCode], {floor: deepAccess(bid, 'floorData.floorValue')});\n\n deepSetValue(multibidUnits, [adUnitCode, bid.bidderCode], {ads: [bid]});\n if (multibidUnits[adUnitCode][bid.bidderCode].ads.length === multiConfig[bid.bidderCode].maxbids) multibidUnits[adUnitCode][bid.bidderCode].maxReached = true;\n\n fn.call(this, adUnitCode, bid, reject);\n }\n } else {\n fn.call(this, adUnitCode, bid, reject);\n }\n});\n\n/**\n * A descending sort function that will sort the list of objects based on the following:\n * - bids without dynamic aliases are sorted before bids with dynamic aliases\n */\nexport function sortByMultibid(a, b) {\n if (a.bidder !== a.bidderCode && b.bidder === b.bidderCode) {\n return 1;\n }\n\n if (a.bidder === a.bidderCode && b.bidder !== b.bidderCode) {\n return -1;\n }\n\n return 0;\n}\n\n/**\n * @summary getHighestCpmBidsFromBidPool before hook\n * @param {Function} fn reference to original function (used by hook logic)\n * @param {Object[]} bidsReceived array of objects containing all bids from bid pool\n * @param {Function} highestCpmCallback function to reduce to only highest cpm value for each bidderCode\n * @param {Number} adUnitBidLimit bidder targeting limit, default set to 0\n * @param {Boolean} hasModified default set to false, this hook modifies targeting and sets to true\n */\nexport function targetBidPoolHook(fn, bidsReceived, highestCpmCallback, adUnitBidLimit = 0, hasModified = false) {\n if (!config.getConfig('multibid')) resetMultiConfig();\n if (hasMultibid) {\n const dealPrioritization = config.getConfig('sendBidsControl.dealPrioritization');\n const modifiedBids = [];\n const buckets = groupBy(bidsReceived, 'adUnitCode');\n const bids = [].concat(...Object.keys(buckets).reduce((result, slotId) => {\n let bucketBids = [];\n // Get bids and group by property originalBidder\n const bidsByBidderName = groupBy(buckets[slotId], 'originalBidder');\n const adjustedBids = [].concat(...Object.keys(bidsByBidderName).map(key => {\n // Reset all bidderCodes to original bidder values and sort by CPM\n return bidsByBidderName[key].sort((bidA, bidB) => {\n if (bidA.originalBidder && bidA.originalBidder !== bidA.bidderCode) bidA.bidderCode = bidA.originalBidder;\n if (bidA.originalBidder && bidB.originalBidder !== bidB.bidderCode) bidB.bidderCode = bidB.originalBidder;\n return bidA.cpm > bidB.cpm ? -1 : (bidA.cpm < bidB.cpm ? 1 : 0);\n }).map((bid, index) => {\n // For each bid (post CPM sort), set dynamic bidderCode using prefix and index if less than maxbid amount\n if (deepAccess(multiConfig, `${bid.bidderCode}.prefix`) && index !== 0 && index < multiConfig[bid.bidderCode].maxbids) {\n bid.bidderCode = multiConfig[bid.bidderCode].prefix + (index + 1);\n }\n\n return bid\n })\n }));\n // Get adjustedBids by bidderCode and reduce using highestCpmCallback\n const bidsByBidderCode = groupBy(adjustedBids, 'bidderCode');\n Object.keys(bidsByBidderCode).forEach(key => bucketBids.push(bidsByBidderCode[key].reduce(highestCpmCallback)));\n // if adUnitBidLimit is set, pass top N number bids\n if (adUnitBidLimit > 0) {\n bucketBids = dealPrioritization ? bucketBids.sort(sortByDealAndPriceBucketOrCpm(true)) : bucketBids.sort((a, b) => b.cpm - a.cpm);\n bucketBids.sort(sortByMultibid);\n modifiedBids.push(...bucketBids.slice(0, adUnitBidLimit));\n } else {\n modifiedBids.push(...bucketBids);\n }\n\n return [].concat(...modifiedBids);\n }, []));\n\n fn.call(this, bids, highestCpmCallback, adUnitBidLimit, true);\n } else {\n fn.call(this, bidsReceived, highestCpmCallback, adUnitBidLimit);\n }\n}\n\n/**\n * Resets globally stored multibid configuration\n */\nexport const resetMultiConfig = () => { hasMultibid = false; multiConfig = {}; };\n\n/**\n * Resets globally stored multibid ad unit bids\n */\nexport const resetMultibidUnits = () => multibidUnits = {};\n\n/**\n * Set up hooks on init\n */\nfunction init() {\n // TODO: does this reset logic make sense - what about simultaneous auctions?\n events.on(EVENTS.AUCTION_INIT, resetMultibidUnits);\n setupBeforeHookFnOnce(addBidderRequests, adjustBidderRequestsHook);\n getHook('addBidResponse').before(addBidResponseHook, 3);\n setupBeforeHookFnOnce(getHighestCpmBidsFromBidPool, targetBidPoolHook);\n}\n\ninit();\n\nexport function setOrtbExtPrebidMultibid(ortbRequest) {\n const multibid = config.getConfig('multibid');\n if (multibid) {\n deepSetValue(ortbRequest, 'ext.prebid.multibid', multibid.map(o =>\n Object.fromEntries(Object.entries(o).map(([k, v]) => [k.toLowerCase(), v])))\n )\n }\n}\n\nregisterOrtbProcessor({type: REQUEST, name: 'extPrebidMultibid', fn: setOrtbExtPrebidMultibid, dialects: [PBS]});\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"index.js","names":["registerModule","__r0","config","setupBeforeHookFnOnce","getHook","logWarn","deepAccess","getUniqueIdentifierStr","deepSetValue","groupBy","events","EVENTS","addBidderRequests","getHighestCpmBidsFromBidPool","sortByDealAndPriceBucketOrCpm","PBS","registerOrtbProcessor","REQUEST","timedBidResponseHook","MODULE_NAME","hasMultibid","multiConfig","multibidUnits","getConfig","conf","Array","isArray","multibid","length","validateMultibid","resetMultiConfig","forEach","entry","bidder","maxbids","maxBids","prefix","targetBiddercodePrefix","bidders","key","check","duplicate","filter","map","setConfig","adjustBidderRequestsHook","fn","bidderRequests","bidRequest","bidderCode","bidLimit","call","addBidResponseHook","adUnitCode","bid","reject","floor","multibidPrefix","originalBidder","maxReached","cpm","originalRequestId","requestId","ads","push","targetingBidder","sortByMultibid","a","b","targetBidPoolHook","bidsReceived","highestCpmCallback","adUnitBidLimit","arguments","undefined","hasModified","dealPrioritization","modifiedBids","buckets","bids","concat","Object","keys","reduce","result","slotId","bucketBids","bidsByBidderName","adjustedBids","sort","bidA","bidB","index","bidsByBidderCode","slice","resetMultibidUnits","init","on","AUCTION_INIT","before","setOrtbExtPrebidMultibid","ortbRequest","o","fromEntries","entries","_ref","k","v","toLowerCase","type","name","dialects"],"sourceRoot":"../../../..","sources":["modules/multibid/index.ts"],"sourcesContent":["/**\n * This module adds Multibid support to prebid.js\n * @module modules/multibid\n */\n\nimport {config} from '../../src/config.js';\nimport {setupBeforeHookFnOnce, getHook} from '../../src/hook.js';\nimport {\n logWarn, deepAccess, getUniqueIdentifierStr, deepSetValue, groupBy\n} from '../../src/utils.js';\nimport * as events from '../../src/events.js';\nimport { EVENTS } from '../../src/constants.js';\nimport {addBidderRequests} from '../../src/auction.js';\nimport {getHighestCpmBidsFromBidPool, sortByDealAndPriceBucketOrCpm} from '../../src/targeting.js';\nimport {PBS, registerOrtbProcessor, REQUEST} from '../../src/pbjsORTB.js';\nimport {timedBidResponseHook} from '../../src/utils/perfMetrics.js';\nimport type {BidderCode} from \"../../src/types/common.d.ts\";\n\nconst MODULE_NAME = 'multibid';\nlet hasMultibid = false;\nlet multiConfig = {};\nlet multibidUnits = {};\n\ntype MultiBidConfig = ({\n /**\n * A bidder code.\n */\n bidder: BidderCode;\n bidders?: undefined\n} | {\n /**\n * Multiple bidder codes.\n */\n bidders: BidderCode[];\n bidder?: undefined;\n}) & {\n /**\n * The number of bids the named bidder(s) can supply. Max of 9.\n */\n maxBids: number;\n /**\n * An alternate (short) bidder code to send to the ad server. A number will be appended, starting from 2, e.g. hb_pb_PREFIX2.\n * If not provided, the extra bids will not go to the ad server.\n */\n targetBiddercodePrefix?: string;\n}\n\ndeclare module '../../src/config' {\n interface Config {\n multibid?: MultiBidConfig[];\n }\n}\n\n// Storing this globally on init for easy reference to configuration\nconfig.getConfig(MODULE_NAME, conf => {\n if (!Array.isArray(conf.multibid) || !conf.multibid.length || !validateMultibid(conf.multibid)) return;\n\n resetMultiConfig();\n hasMultibid = true;\n\n conf.multibid.forEach(entry => {\n if (entry.bidder) {\n multiConfig[entry.bidder] = {\n maxbids: entry.maxBids,\n prefix: entry.targetBiddercodePrefix\n }\n } else {\n entry.bidders.forEach(key => {\n multiConfig[key] = {\n maxbids: entry.maxBids,\n prefix: entry.targetBiddercodePrefix\n }\n });\n }\n });\n});\n\n/**\n * @summary validates multibid configuration entries\n * @param {Object[]} conf - example [{bidder: 'bidderA', maxbids: 2, prefix: 'bidA'}, {bidder: 'bidderB', maxbids: 2}]\n * @return {Boolean}\n */\nexport function validateMultibid(conf) {\n let check = true;\n const duplicate = conf.filter(entry => {\n // Check if entry.bidder is not defined or typeof string, filter entry and reset configuration\n if ((!entry.bidder || typeof entry.bidder !== 'string') && (!entry.bidders || !Array.isArray(entry.bidders))) {\n logWarn('Filtering multibid entry. Missing required bidder or bidders property.');\n check = false;\n return false;\n }\n\n return true;\n }).map(entry => {\n // Check if entry.maxbids is not defined, not typeof number, or less than 1, set maxbids to 1 and reset configuration\n // Check if entry.maxbids is greater than 9, set maxbids to 9 and reset configuration\n if (typeof entry.maxBids !== 'number' || entry.maxBids < 1 || entry.maxBids > 9) {\n entry.maxBids = (typeof entry.maxBids !== 'number' || entry.maxBids < 1) ? 1 : 9;\n check = false;\n }\n\n return entry;\n });\n\n if (!check) config.setConfig({multibid: duplicate});\n\n return check;\n}\n\n/**\n * @summary addBidderRequests before hook\n * @param {Function} fn reference to original function (used by hook logic)\n * @param {Object[]} bidderRequests containing copy of each bidderRequest object\n */\nexport function adjustBidderRequestsHook(fn, bidderRequests) {\n bidderRequests.map(bidRequest => {\n // Loop through bidderRequests and check if bidderCode exists in multiconfig\n // If true, add bidderRequest.bidLimit to bidder request\n if (multiConfig[bidRequest.bidderCode]) {\n bidRequest.bidLimit = multiConfig[bidRequest.bidderCode].maxbids\n }\n return bidRequest;\n })\n\n fn.call(this, bidderRequests);\n}\n\ndeclare module '../../src/bidfactory' {\n interface BaseBid {\n // TODO multibid alters bid's `requestId` and `bidderCode`, which is not\n // necessary if the objective is to just alter targeting.\n // is it desirable for e.g. analytics to see bogus bidder codes?\n multibidPrefix?: string;\n originalBidder?: BaseBid['bidderCode'];\n originalRequestId?: BaseBid['requestId'];\n targetingBidder?: string;\n }\n}\n/**\n * @summary addBidResponse before hook\n * @param {Function} fn reference to original function (used by hook logic)\n * @param {String} ad unit code for bid\n * @param {Object} bid object\n */\nexport const addBidResponseHook = timedBidResponseHook('multibid', function addBidResponseHook(fn, adUnitCode, bid, reject) {\n const floor = deepAccess(bid, 'floorData.floorValue');\n\n if (!config.getConfig('multibid')) resetMultiConfig();\n // Checks if multiconfig exists and bid bidderCode exists within config and is an adpod bid\n // Else checks if multiconfig exists and bid bidderCode exists within config\n // Else continue with no modifications\n if (hasMultibid && multiConfig[bid.bidderCode] && deepAccess(bid, 'video.context') === 'adpod') {\n fn.call(this, adUnitCode, bid, reject);\n } else if (hasMultibid && multiConfig[bid.bidderCode]) {\n // Set property multibidPrefix on bid\n if (multiConfig[bid.bidderCode].prefix) bid.multibidPrefix = multiConfig[bid.bidderCode].prefix;\n bid.originalBidder = bid.bidderCode;\n // Check if stored bids for auction include adUnitCode.bidder and max limit not reach for ad unit\n if (deepAccess(multibidUnits, [adUnitCode, bid.bidderCode])) {\n // Store request id under new property originalRequestId, create new unique bidId,\n // and push bid into multibid stored bids for auction if max not reached and bid cpm above floor\n if (!multibidUnits[adUnitCode][bid.bidderCode].maxReached && (!floor || floor <= bid.cpm)) {\n bid.originalRequestId = bid.requestId;\n\n bid.requestId = getUniqueIdentifierStr();\n multibidUnits[adUnitCode][bid.bidderCode].ads.push(bid);\n\n const length = multibidUnits[adUnitCode][bid.bidderCode].ads.length;\n\n if (multiConfig[bid.bidderCode].prefix) bid.targetingBidder = multiConfig[bid.bidderCode].prefix + length;\n if (length === multiConfig[bid.bidderCode].maxbids) multibidUnits[adUnitCode][bid.bidderCode].maxReached = true;\n\n fn.call(this, adUnitCode, bid, reject);\n } else {\n logWarn(`Filtering multibid received from bidder ${bid.bidderCode}: ` + ((multibidUnits[adUnitCode][bid.bidderCode].maxReached) ? `Maximum bid limit reached for ad unit code ${adUnitCode}` : 'Bid cpm under floors value.'));\n }\n } else {\n if (deepAccess(bid, 'floorData.floorValue')) deepSetValue(multibidUnits, [adUnitCode, bid.bidderCode], {floor: deepAccess(bid, 'floorData.floorValue')});\n\n deepSetValue(multibidUnits, [adUnitCode, bid.bidderCode], {ads: [bid]});\n if (multibidUnits[adUnitCode][bid.bidderCode].ads.length === multiConfig[bid.bidderCode].maxbids) multibidUnits[adUnitCode][bid.bidderCode].maxReached = true;\n\n fn.call(this, adUnitCode, bid, reject);\n }\n } else {\n fn.call(this, adUnitCode, bid, reject);\n }\n});\n\n/**\n * A descending sort function that will sort the list of objects based on the following:\n * - bids without dynamic aliases are sorted before bids with dynamic aliases\n */\nexport function sortByMultibid(a, b) {\n if (a.bidder !== a.bidderCode && b.bidder === b.bidderCode) {\n return 1;\n }\n\n if (a.bidder === a.bidderCode && b.bidder !== b.bidderCode) {\n return -1;\n }\n\n return 0;\n}\n\n/**\n * @summary getHighestCpmBidsFromBidPool before hook\n * @param {Function} fn reference to original function (used by hook logic)\n * @param {Object[]} bidsReceived array of objects containing all bids from bid pool\n * @param {Function} highestCpmCallback function to reduce to only highest cpm value for each bidderCode\n * @param {Number} adUnitBidLimit bidder targeting limit, default set to 0\n * @param {Boolean} hasModified default set to false, this hook modifies targeting and sets to true\n */\nexport function targetBidPoolHook(fn, bidsReceived, highestCpmCallback, adUnitBidLimit = 0, hasModified = false) {\n if (!config.getConfig('multibid')) resetMultiConfig();\n if (hasMultibid) {\n const dealPrioritization = config.getConfig('sendBidsControl.dealPrioritization');\n const modifiedBids = [];\n const buckets = groupBy(bidsReceived, 'adUnitCode');\n const bids = [].concat(...Object.keys(buckets).reduce((result, slotId) => {\n let bucketBids = [];\n // Get bids and group by property originalBidder\n const bidsByBidderName = groupBy(buckets[slotId], 'originalBidder');\n const adjustedBids = [].concat(...Object.keys(bidsByBidderName).map(key => {\n // Reset all bidderCodes to original bidder values and sort by CPM\n return bidsByBidderName[key].sort((bidA, bidB) => {\n if (bidA.originalBidder && bidA.originalBidder !== bidA.bidderCode) bidA.bidderCode = bidA.originalBidder;\n if (bidA.originalBidder && bidB.originalBidder !== bidB.bidderCode) bidB.bidderCode = bidB.originalBidder;\n return bidA.cpm > bidB.cpm ? -1 : (bidA.cpm < bidB.cpm ? 1 : 0);\n }).map((bid, index) => {\n // For each bid (post CPM sort), set dynamic bidderCode using prefix and index if less than maxbid amount\n if (deepAccess(multiConfig, `${bid.bidderCode}.prefix`) && index !== 0 && index < multiConfig[bid.bidderCode].maxbids) {\n bid.bidderCode = multiConfig[bid.bidderCode].prefix + (index + 1);\n }\n\n return bid\n })\n }));\n // Get adjustedBids by bidderCode and reduce using highestCpmCallback\n const bidsByBidderCode = groupBy(adjustedBids, 'bidderCode');\n Object.keys(bidsByBidderCode).forEach(key => bucketBids.push(bidsByBidderCode[key].reduce(highestCpmCallback)));\n // if adUnitBidLimit is set, pass top N number bids\n if (adUnitBidLimit > 0) {\n bucketBids = dealPrioritization ? bucketBids.sort(sortByDealAndPriceBucketOrCpm(true)) : bucketBids.sort((a, b) => b.cpm - a.cpm);\n bucketBids.sort(sortByMultibid);\n modifiedBids.push(...bucketBids.slice(0, adUnitBidLimit));\n } else {\n modifiedBids.push(...bucketBids);\n }\n\n return [].concat(...modifiedBids);\n }, []));\n\n fn.call(this, bids, highestCpmCallback, adUnitBidLimit, true);\n } else {\n fn.call(this, bidsReceived, highestCpmCallback, adUnitBidLimit);\n }\n}\n\n/**\n * Resets globally stored multibid configuration\n */\nexport const resetMultiConfig = () => { hasMultibid = false; multiConfig = {}; };\n\n/**\n * Resets globally stored multibid ad unit bids\n */\nexport const resetMultibidUnits = () => {\n multibidUnits = {};\n};\n\n/**\n * Set up hooks on init\n */\nfunction init() {\n // TODO: does this reset logic make sense - what about simultaneous auctions?\n events.on(EVENTS.AUCTION_INIT, resetMultibidUnits);\n setupBeforeHookFnOnce(addBidderRequests, adjustBidderRequestsHook);\n getHook('addBidResponse').before(addBidResponseHook, 3);\n setupBeforeHookFnOnce(getHighestCpmBidsFromBidPool, targetBidPoolHook);\n}\n\ninit();\n\nexport function setOrtbExtPrebidMultibid(ortbRequest) {\n const multibid = config.getConfig('multibid');\n if (multibid) {\n deepSetValue(ortbRequest, 'ext.prebid.multibid', multibid.map(o =>\n Object.fromEntries(Object.entries(o).map(([k, v]) => [k.toLowerCase(), v])))\n )\n }\n}\n\nregisterOrtbProcessor({type: REQUEST, name: 'extPrebidMultibid', fn: setOrtbExtPrebidMultibid, dialects: [PBS]});\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -8,7 +8,7 @@ import { registerBidder } from '../src/adapters/bidderFactory.js';
|
|
|
8
8
|
import { getRefererInfo } from '../src/refererDetection.js';
|
|
9
9
|
import { getViewportSize } from '../libraries/viewport/viewport.js';
|
|
10
10
|
const NM_VERSION = '4.3.0';
|
|
11
|
-
const PBJS_VERSION = "v10.
|
|
11
|
+
const PBJS_VERSION = "v10.5.0";
|
|
12
12
|
const GVLID = 1060;
|
|
13
13
|
const BIDDER_CODE = 'nextMillennium';
|
|
14
14
|
const ENDPOINT = 'https://pbs.nextmillmedia.com/openrtb2/auction';
|
|
@@ -55,7 +55,7 @@ function sendEvent(event, eventType) {
|
|
|
55
55
|
}
|
|
56
56
|
try {
|
|
57
57
|
event.version = VERSION;
|
|
58
|
-
event.pbver = "10.
|
|
58
|
+
event.pbver = "10.5.0";
|
|
59
59
|
const endpoint = `${resolveEndpoint()}/event/${eventType}?pubid=${nobidAnalytics.initOptions.siteId}`;
|
|
60
60
|
ajax(endpoint, function (response) {
|
|
61
61
|
try {
|
|
@@ -174,7 +174,7 @@ function nobidBuildRequests(bids, bidderRequest) {
|
|
|
174
174
|
state['gdpr'] = gdprConsent(bidderRequest);
|
|
175
175
|
state['usp'] = uspConsent(bidderRequest);
|
|
176
176
|
state['pjbdr'] = bidderRequest && bidderRequest.bidderCode ? bidderRequest.bidderCode : 'nobid';
|
|
177
|
-
state['pbver'] = "10.
|
|
177
|
+
state['pbver'] = "10.5.0";
|
|
178
178
|
const sch = schain(bids);
|
|
179
179
|
if (sch) state['schain'] = sch;
|
|
180
180
|
const cop = coppa();
|
|
@@ -27,7 +27,7 @@ export const ortbConverterProps = {
|
|
|
27
27
|
deepSetValue(req, 'site.page', getWindowContext().location.href);
|
|
28
28
|
req.ext = mergeDeep({}, req.ext, {
|
|
29
29
|
adapterversion: ADAPTER_VERSION,
|
|
30
|
-
prebidversion: "10.
|
|
30
|
+
prebidversion: "10.5.0"
|
|
31
31
|
});
|
|
32
32
|
const bidWithAssetKey = bidderRequest.bids.find(bid => Boolean(deepAccess(bid, 'params.assetKey', false)));
|
|
33
33
|
if (bidWithAssetKey) deepSetValue(req, 'site.id', bidWithAssetKey.params.assetKey);
|
|
@@ -17,7 +17,7 @@ const ENDPOINTS = {
|
|
|
17
17
|
HBCONFIG: baseUrl + 'hbconfig'
|
|
18
18
|
};
|
|
19
19
|
const pbModuleVersion = '1.0.0';
|
|
20
|
-
const prebidVersion = "10.
|
|
20
|
+
const prebidVersion = "10.5.0";
|
|
21
21
|
const analyticsType = 'endpoint';
|
|
22
22
|
const ADAPTER_CODE = 'oolo';
|
|
23
23
|
const AUCTION_END_SEND_TIMEOUT = 1500;
|
|
@@ -53,7 +53,7 @@ const converter = ortbConverter({
|
|
|
53
53
|
at: 1,
|
|
54
54
|
ext: {
|
|
55
55
|
bc: `${bidderConfig}_${bidderVersion}`,
|
|
56
|
-
pv: "10.
|
|
56
|
+
pv: "10.5.0"
|
|
57
57
|
}
|
|
58
58
|
});
|
|
59
59
|
const bid = context.bidRequests[0];
|
|
@@ -221,9 +221,10 @@ function interpretResponse(resp, req) {
|
|
|
221
221
|
* @param responses
|
|
222
222
|
* @param gdprConsent
|
|
223
223
|
* @param uspConsent
|
|
224
|
+
* @param gppConsent
|
|
224
225
|
* @return {{type: (string), url: (*|string)}[]}
|
|
225
226
|
*/
|
|
226
|
-
function getUserSyncs(syncOptions, responses, gdprConsent, uspConsent) {
|
|
227
|
+
function getUserSyncs(syncOptions, responses, gdprConsent, uspConsent, gppConsent) {
|
|
227
228
|
if (syncOptions.iframeEnabled || syncOptions.pixelEnabled) {
|
|
228
229
|
const pixelType = syncOptions.iframeEnabled ? 'iframe' : 'image';
|
|
229
230
|
const queryParamStrings = [];
|
|
@@ -235,6 +236,10 @@ function getUserSyncs(syncOptions, responses, gdprConsent, uspConsent) {
|
|
|
235
236
|
if (uspConsent) {
|
|
236
237
|
queryParamStrings.push('us_privacy=' + encodeURIComponent(uspConsent));
|
|
237
238
|
}
|
|
239
|
+
if (gppConsent?.gppString && gppConsent?.applicableSections?.length) {
|
|
240
|
+
queryParamStrings.push('gpp=' + encodeURIComponent(gppConsent.gppString));
|
|
241
|
+
queryParamStrings.push('gpp_sid=' + gppConsent.applicableSections.join(','));
|
|
242
|
+
}
|
|
238
243
|
if (responses.length > 0 && responses[0].body && responses[0].body.ext) {
|
|
239
244
|
const ext = responses[0].body.ext;
|
|
240
245
|
if (ext.delDomain) {
|