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
|
@@ -129,7 +129,9 @@ export const spec = {
|
|
|
129
129
|
let appDeviceObj;
|
|
130
130
|
if (appDeviceObjBid && appDeviceObjBid.params && appDeviceObjBid.params.app) {
|
|
131
131
|
appDeviceObj = {};
|
|
132
|
-
Object.keys(appDeviceObjBid.params.app).filter(param => APP_DEVICE_PARAMS.includes(param)).forEach(param =>
|
|
132
|
+
Object.keys(appDeviceObjBid.params.app).filter(param => APP_DEVICE_PARAMS.includes(param)).forEach(param => {
|
|
133
|
+
appDeviceObj[param] = appDeviceObjBid.params.app[param];
|
|
134
|
+
});
|
|
133
135
|
}
|
|
134
136
|
const appIdObjBid = (bidRequests || []).find(hasAppId);
|
|
135
137
|
let appIdObj;
|
|
@@ -168,14 +170,14 @@ export const spec = {
|
|
|
168
170
|
user: userObj,
|
|
169
171
|
sdk: {
|
|
170
172
|
source: SOURCE,
|
|
171
|
-
version: "10.
|
|
173
|
+
version: "10.5.0"
|
|
172
174
|
},
|
|
173
175
|
schain: schain
|
|
174
176
|
};
|
|
175
177
|
if (omidSupport) {
|
|
176
178
|
payload['iab_support'] = {
|
|
177
179
|
omidpn: 'Mediafuse',
|
|
178
|
-
omidpv: "10.
|
|
180
|
+
omidpv: "10.5.0"
|
|
179
181
|
};
|
|
180
182
|
}
|
|
181
183
|
if (member > 0) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mediafuseBidAdapter.js","names":["registerModule","__r0","createTrackPixelHtml","deepAccess","deepClone","getBidRequest","getParameterByName","isArray","isArrayOfNums","isEmpty","isFn","isNumber","isPlainObject","isStr","logError","logInfo","logMessage","logWarn","Renderer","config","registerBidder","ADPOD","BANNER","NATIVE","VIDEO","INSTREAM","OUTSTREAM","getStorageManager","bidderSettings","hasPurpose1Consent","convertOrtbRequestToProprietaryNative","APPNEXUS_CATEGORY_MAPPING","getANKewyordParamFromMaps","getANKeywordParam","convertCamelToUnderscore","fill","chunk","BIDDER_CODE","URL","URL_SIMPLE","VIDEO_TARGETING","VIDEO_RTB_TARGETING","USER_PARAMS","APP_DEVICE_PARAMS","DEBUG_PARAMS","VIDEO_MAPPING","playback_method","context","NATIVE_MAPPING","body","body2","cta","image","serverName","requiredParams","required","icon","sponsoredBy","privacyLink","salePrice","displayUrl","SOURCE","MAX_IMPS_PER_REQUEST","SCRIPT_TAG_START","VIEWABILITY_URL_START","VIEWABILITY_FILE_NAME","GVLID","storage","bidderCode","spec","code","gvlid","supportedMediaTypes","isBidRequestValid","bid","params","placementId","member","invCode","buildRequests","bidRequests","bidderRequest","tags","map","bidToTag","userObjBid","find","hasUserInfo","userObj","getConfig","Object","keys","user","filter","param","includes","forEach","uparam","segs","val","push","appDeviceObjBid","hasAppDeviceInfo","appDeviceObj","app","appIdObjBid","hasAppId","appIdObj","id","appid","debugObj","debugObjParams","debugCookieName","debugCookie","getCookie","JSON","parse","e","debugBidRequest","hasDebug","debug","enabled","memberIdBid","hasMemberId","parseInt","schain","ortb2","source","ext","omidSupport","hasOmidSupport","payload","sdk","version","omidpn","omidpv","member_id","device","mfKeywords","keywords","brand_category_uniqueness","stringify","gdprConsent","gdpr_consent","consent_string","consentString","consent_required","gdprApplies","addtlConsent","indexOf","ac","acStr","substring","addtl_consent","split","uspConsent","us_privacy","refererInfo","refererinfo","rd_ref","encodeURIComponent","topmostLocation","rd_top","reachedTop","rd_ifs","numIframes","rd_stk","stack","url","join","referrer_detection","hasAdPodBid","hasAdPod","adPodBid","adPodTags","createAdPodRequest","nonPodTags","tag","uuid","bidId","userIdAsEids","length","eids","eid","uids","uid","tmp","rti_partner","publisher_id","request","formatRequest","interpretResponse","serverResponse","_ref","bids","error","errorMessage","serverBid","rtbBid","getRtbBid","cpmCheck","get","cpm","ad_type","newBid","mediaType","parseMediaType","debug_info","debugHeader","debugText","replace","getUserSyncs","syncOptions","responses","iframeEnabled","type","onBidWon","native","reloadViewabilityScriptWithCorrectParameters","viewJsPayload","getMediafuseViewabilityScriptFromJsTrackers","javascriptTrackers","prebidParams","adId","adUnitCode","jsTrackerSrc","getViewabilityScriptUrlFromPayload","newJsTrackerSrc","frameArray","document","getElementsByTagName","modifiedAScript","i","currentFrame","nestedDoc","contentDocument","contentWindow","scriptArray","j","currentScript","getAttribute","setAttribute","removeAttribute","exception","DOMException","name","strIsMediafuseViewabilityScript","str","regexMatchUrlStart","match","viewUrlStartInStr","regexMatchFileName","fileNameInStr","startsWith","jsTrackerArray","currentJsTracker","indexOfFirstQuote","indexOfSecondQuote","options","withCredentials","endpointUrl","toUpperCase","customHeaders","clonedPayload","payloadString","method","data","newRenderer","rendererOptions","arguments","undefined","renderer","install","renderer_id","renderer_url","loaded","setRender","outstreamRender","err","setEventHandlers","impression","ended","querySelector","style","display","bidRequest","requestId","creativeId","creative_id","dealId","deal_id","currency","netRevenue","ttl","mediafuse","buyerMemberId","buyer_member_id","dealPriority","deal_priority","dealCode","deal_code","adomain","meta","assign","advertiserDomains","advertiser_id","advertiserId","setupDChain","dchain","ver","complete","nodes","bsid","toString","brand_id","brandId","rtb","video","width","player_width","height","player_height","vastImpUrl","notify_url","videoContext","primaryCatId","brand_category_id","dealTier","durationSeconds","Math","floor","duration_ms","vastUrl","asset_url","adResponse","ad","ads","vastXml","content","videoBid","nativeAd","jsTrackerDisarmed","viewability","jsTrackers","javascript_trackers","title","desc","desc2","ctatext","rating","sponsored","privacy_link","address","downloads","likes","phone","price","saleprice","clickUrl","link","displayurl","clickTrackers","click_trackers","impressionTrackers","impression_trackers","main_img","banner","trackers","impression_urls","tracker","sizes","transformSizes","primary_size","ad_types","allow_smaller_sizes","allowSmallerSizes","use_pmt_rule","usePaymentRule","prebid","disable_psa","bidFloor","getBidFloor","reserve","position","trafficSourceCode","traffic_source_code","privateSizes","private_sizes","supplyType","supply_type","pubClick","pubclick","extInvCode","ext_inv_code","publisherId","externalImpId","external_imp_id","gpid","nativeParams","nativeRequest","buildNativeRequest","layouts","videoMediaType","hb_source","require_asset_url","frameworks","apiTmp","v","custom_renderer_present","mediaTypes","requestSizes","sizeObj","size","hasOmid","bidderParams","videoParams","durationRangeSec","requireExactDuration","numberOfPlacements","getAdPodPlacementNumber","maxDuration","max","tagToDuplicate","divider","ceil","chunked","duration","index","setVideoProperty","adPodDurationSec","minAllowedDuration","min","key","value","requestKey","isImageAsset","every","sz","privacy_supported","hidedfpContainer","elementId","el","getElementById","querySelectorAll","setProperty","hideSASIframe","nextSibling","localName","window","ANOutstreamVideo","renderAd","tagId","tag_id","getSize","targetId","handleOutstreamRendererEvents","bind","eventName","handleVideoEvent","adType","getFloor","isNaN"],"sourceRoot":"../../..","sources":["modules/mediafuseBidAdapter.js"],"sourcesContent":["import {\n createTrackPixelHtml,\n deepAccess,\n deepClone,\n getBidRequest,\n getParameterByName,\n isArray,\n isArrayOfNums,\n isEmpty,\n isFn,\n isNumber,\n isPlainObject,\n isStr,\n logError,\n logInfo,\n logMessage,\n logWarn\n} from '../src/utils.js';\nimport {Renderer} from '../src/Renderer.js';\nimport {config} from '../src/config.js';\nimport {registerBidder} from '../src/adapters/bidderFactory.js';\nimport {ADPOD, BANNER, NATIVE, VIDEO} from '../src/mediaTypes.js';\nimport {INSTREAM, OUTSTREAM} from '../src/video.js';\nimport {getStorageManager} from '../src/storageManager.js';\nimport {bidderSettings} from '../src/bidderSettings.js';\nimport {hasPurpose1Consent} from '../src/utils/gdpr.js';\nimport {convertOrtbRequestToProprietaryNative} from '../src/native.js';\nimport {APPNEXUS_CATEGORY_MAPPING} from '../libraries/categoryTranslationMapping/index.js';\nimport {\n getANKewyordParamFromMaps,\n getANKeywordParam\n} from '../libraries/appnexusUtils/anKeywords.js';\nimport {convertCamelToUnderscore, fill} from '../libraries/appnexusUtils/anUtils.js';\nimport {chunk} from '../libraries/chunk/chunk.js';\n\n/**\n * @typedef {import('../src/adapters/bidderFactory.js').BidRequest} BidRequest\n * @typedef {import('../src/adapters/bidderFactory.js').Bid} Bid\n */\n\nconst BIDDER_CODE = 'mediafuse';\nconst URL = 'https://ib.adnxs.com/ut/v3/prebid';\nconst URL_SIMPLE = 'https://ib.adnxs-simple.com/ut/v3/prebid';\nconst VIDEO_TARGETING = ['id', 'minduration', 'maxduration',\n 'skippable', 'playback_method', 'frameworks', 'context', 'skipoffset'];\nconst VIDEO_RTB_TARGETING = ['minduration', 'maxduration', 'skip', 'skipafter', 'playbackmethod', 'api'];\nconst USER_PARAMS = ['age', 'externalUid', 'segments', 'gender', 'dnt', 'language'];\nconst APP_DEVICE_PARAMS = ['device_id']; // appid is collected separately\nconst DEBUG_PARAMS = ['enabled', 'dongle', 'member_id', 'debug_timeout'];\nconst VIDEO_MAPPING = {\n playback_method: {\n 'unknown': 0,\n 'auto_play_sound_on': 1,\n 'auto_play_sound_off': 2,\n 'click_to_play': 3,\n 'mouse_over': 4,\n 'auto_play_sound_unknown': 5\n },\n context: {\n 'unknown': 0,\n 'pre_roll': 1,\n 'mid_roll': 2,\n 'post_roll': 3,\n 'outstream': 4,\n 'in-banner': 5\n }\n};\nconst NATIVE_MAPPING = {\n body: 'description',\n body2: 'desc2',\n cta: 'ctatext',\n image: {\n serverName: 'main_image',\n requiredParams: { required: true }\n },\n icon: {\n serverName: 'icon',\n requiredParams: { required: true }\n },\n sponsoredBy: 'sponsored_by',\n privacyLink: 'privacy_link',\n salePrice: 'saleprice',\n displayUrl: 'displayurl'\n};\nconst SOURCE = 'pbjs';\nconst MAX_IMPS_PER_REQUEST = 15;\nconst SCRIPT_TAG_START = '<script';\nconst VIEWABILITY_URL_START = /\\/\\/cdn\\.adnxs\\.com\\/v|\\/\\/cdn\\.adnxs\\-simple\\.com\\/v/;\nconst VIEWABILITY_FILE_NAME = 'trk.js';\nconst GVLID = 32;\nconst storage = getStorageManager({bidderCode: BIDDER_CODE});\n\nexport const spec = {\n code: BIDDER_CODE,\n gvlid: GVLID,\n supportedMediaTypes: [BANNER, VIDEO, NATIVE],\n\n /**\n * Determines whether or not the given bid request is valid.\n *\n * @param {object} bid The bid to validate.\n * @return boolean True if this is a valid bid, and false otherwise.\n */\n isBidRequestValid: function (bid) {\n return !!(bid.params.placementId || (bid.params.member && bid.params.invCode));\n },\n\n /**\n * Make a server request from the list of BidRequests.\n *\n * @param {BidRequest[]} bidRequests A non-empty list of bid requests which should be sent to the Server.\n * @return ServerRequest Info describing the request to the server.\n */\n buildRequests: function (bidRequests, bidderRequest) {\n // convert Native ORTB definition to old-style prebid native definition\n bidRequests = convertOrtbRequestToProprietaryNative(bidRequests);\n const tags = bidRequests.map(bidToTag);\n const userObjBid = ((bidRequests) || []).find(hasUserInfo);\n let userObj = {};\n if (config.getConfig('coppa') === true) {\n userObj = { 'coppa': true };\n }\n if (userObjBid) {\n Object.keys(userObjBid.params.user)\n .filter(param => USER_PARAMS.includes(param))\n .forEach((param) => {\n const uparam = convertCamelToUnderscore(param);\n if (param === 'segments' && isArray(userObjBid.params.user[param])) {\n const segs = [];\n userObjBid.params.user[param].forEach(val => {\n if (isNumber(val)) {\n segs.push({'id': val});\n } else if (isPlainObject(val)) {\n segs.push(val);\n }\n });\n userObj[uparam] = segs;\n } else if (param !== 'segments') {\n userObj[uparam] = userObjBid.params.user[param];\n }\n });\n }\n\n const appDeviceObjBid = ((bidRequests) || []).find(hasAppDeviceInfo);\n let appDeviceObj;\n if (appDeviceObjBid && appDeviceObjBid.params && appDeviceObjBid.params.app) {\n appDeviceObj = {};\n Object.keys(appDeviceObjBid.params.app)\n .filter(param => APP_DEVICE_PARAMS.includes(param))\n .forEach(param => appDeviceObj[param] = appDeviceObjBid.params.app[param]);\n }\n\n const appIdObjBid = ((bidRequests) || []).find(hasAppId);\n let appIdObj;\n if (appIdObjBid && appIdObjBid.params && appDeviceObjBid.params.app && appDeviceObjBid.params.app.id) {\n appIdObj = {\n appid: appIdObjBid.params.app.id\n };\n }\n\n let debugObj = {};\n const debugObjParams = {};\n const debugCookieName = 'apn_prebid_debug';\n const debugCookie = storage.getCookie(debugCookieName) || null;\n\n if (debugCookie) {\n try {\n debugObj = JSON.parse(debugCookie);\n } catch (e) {\n logError('MediaFuse Debug Auction Cookie Error:\\n\\n' + e);\n }\n } else {\n const debugBidRequest = ((bidRequests) || []).find(hasDebug);\n if (debugBidRequest && debugBidRequest.debug) {\n debugObj = debugBidRequest.debug;\n }\n }\n\n if (debugObj && debugObj.enabled) {\n Object.keys(debugObj)\n .filter(param => DEBUG_PARAMS.includes(param))\n .forEach(param => {\n debugObjParams[param] = debugObj[param];\n });\n }\n\n const memberIdBid = ((bidRequests) || []).find(hasMemberId);\n const member = memberIdBid ? parseInt(memberIdBid.params.member, 10) : 0;\n const schain = bidRequests[0]?.ortb2?.source?.ext?.schain;\n const omidSupport = ((bidRequests) || []).find(hasOmidSupport);\n\n const payload = {\n tags: [...tags],\n user: userObj,\n sdk: {\n source: SOURCE,\n version: '$prebid.version$'\n },\n schain: schain\n };\n\n if (omidSupport) {\n payload['iab_support'] = {\n omidpn: 'Mediafuse',\n omidpv: '$prebid.version$'\n };\n }\n\n if (member > 0) {\n payload.member_id = member;\n }\n\n if (appDeviceObjBid) {\n payload.device = appDeviceObj;\n }\n if (appIdObjBid) {\n payload.app = appIdObj;\n }\n\n const mfKeywords = config.getConfig('mediafuseAuctionKeywords');\n payload.keywords = getANKeywordParam(bidderRequest?.ortb2, mfKeywords);\n\n if (config.getConfig('adpod.brandCategoryExclusion')) {\n payload.brand_category_uniqueness = true;\n }\n\n if (debugObjParams.enabled) {\n payload.debug = debugObjParams;\n logInfo('MediaFuse Debug Auction Settings:\\n\\n' + JSON.stringify(debugObjParams, null, 4));\n }\n\n if (bidderRequest && bidderRequest.gdprConsent) {\n // note - objects for impbus use underscore instead of camelCase\n payload.gdpr_consent = {\n consent_string: bidderRequest.gdprConsent.consentString,\n consent_required: bidderRequest.gdprConsent.gdprApplies\n };\n\n if (bidderRequest.gdprConsent.addtlConsent && bidderRequest.gdprConsent.addtlConsent.indexOf('~') !== -1) {\n const ac = bidderRequest.gdprConsent.addtlConsent;\n // pull only the ids from the string (after the ~) and convert them to an array of ints\n const acStr = ac.substring(ac.indexOf('~') + 1);\n payload.gdpr_consent.addtl_consent = acStr.split('.').map(id => parseInt(id, 10));\n }\n }\n\n if (bidderRequest && bidderRequest.uspConsent) {\n payload.us_privacy = bidderRequest.uspConsent;\n }\n\n if (bidderRequest && bidderRequest.refererInfo) {\n const refererinfo = {\n // TODO: this collects everything it finds, except for canonicalUrl\n rd_ref: encodeURIComponent(bidderRequest.refererInfo.topmostLocation),\n rd_top: bidderRequest.refererInfo.reachedTop,\n rd_ifs: bidderRequest.refererInfo.numIframes,\n rd_stk: bidderRequest.refererInfo.stack.map((url) => encodeURIComponent(url)).join(',')\n };\n payload.referrer_detection = refererinfo;\n }\n\n const hasAdPodBid = ((bidRequests) || []).find(hasAdPod);\n if (hasAdPodBid) {\n bidRequests.filter(hasAdPod).forEach(adPodBid => {\n const adPodTags = createAdPodRequest(tags, adPodBid);\n // don't need the original adpod placement because it's in adPodTags\n const nonPodTags = payload.tags.filter(tag => tag.uuid !== adPodBid.bidId);\n payload.tags = [...nonPodTags, ...adPodTags];\n });\n }\n\n if (bidRequests[0].userIdAsEids?.length > 0) {\n const eids = [];\n bidRequests[0].userIdAsEids.forEach(eid => {\n if (!eid || !eid.uids || eid.uids.length < 1) { return; }\n eid.uids.forEach(uid => {\n const tmp = {'source': eid.source, 'id': uid.id};\n if (eid.source == 'adserver.org') {\n tmp.rti_partner = 'TDID';\n } else if (eid.source == 'uidapi.com') {\n tmp.rti_partner = 'UID2';\n }\n eids.push(tmp);\n });\n });\n\n if (eids.length) {\n payload.eids = eids;\n }\n }\n\n if (tags[0].publisher_id) {\n payload.publisher_id = tags[0].publisher_id;\n }\n\n const request = formatRequest(payload, bidderRequest);\n return request;\n },\n\n /**\n * Unpack the response from the server into a list of bids.\n *\n * @param {*} serverResponse A successful response from the server.\n * @return {Bid[]} An array of bids which were nested inside the server.\n */\n interpretResponse: function (serverResponse, { bidderRequest }) {\n serverResponse = serverResponse.body;\n const bids = [];\n if (!serverResponse || serverResponse.error) {\n let errorMessage = `in response for ${bidderRequest.bidderCode} adapter`;\n if (serverResponse && serverResponse.error) { errorMessage += `: ${serverResponse.error}`; }\n logError(errorMessage);\n return bids;\n }\n\n if (serverResponse.tags) {\n serverResponse.tags.forEach(serverBid => {\n const rtbBid = getRtbBid(serverBid);\n if (rtbBid) {\n const cpmCheck = (bidderSettings.get(bidderRequest.bidderCode, 'allowZeroCpmBids') === true) ? rtbBid.cpm >= 0 : rtbBid.cpm > 0;\n if (cpmCheck && this.supportedMediaTypes.includes(rtbBid.ad_type)) {\n const bid = newBid(serverBid, rtbBid, bidderRequest);\n bid.mediaType = parseMediaType(rtbBid);\n bids.push(bid);\n }\n }\n });\n }\n\n if (serverResponse.debug && serverResponse.debug.debug_info) {\n const debugHeader = 'MediaFuse Debug Auction for Prebid\\n\\n'\n let debugText = debugHeader + serverResponse.debug.debug_info\n debugText = debugText\n .replace(/(<td>|<th>)/gm, '\\t') // Tables\n .replace(/(<\\/td>|<\\/th>)/gm, '\\n') // Tables\n .replace(/^<br>/gm, '') // Remove leading <br>\n .replace(/(<br>\\n|<br>)/gm, '\\n') // <br>\n .replace(/<h1>(.*)<\\/h1>/gm, '\\n\\n===== $1 =====\\n\\n') // Header H1\n .replace(/<h[2-6]>(.*)<\\/h[2-6]>/gm, '\\n\\n*** $1 ***\\n\\n') // Headers\n .replace(/(<([^>]+)>)/igm, ''); // Remove any other tags\n // logMessage('https://console.appnexus.com/docs/understanding-the-debug-auction');\n logMessage(debugText);\n }\n\n return bids;\n },\n\n getUserSyncs: function (syncOptions, responses, gdprConsent) {\n if (syncOptions.iframeEnabled && hasPurpose1Consent({gdprConsent})) {\n return [{\n type: 'iframe',\n url: 'https://acdn.adnxs.com/dmp/async_usersync.html'\n }];\n }\n },\n\n /**\n * Add element selector to javascript tracker to improve native viewability\n * @param {Bid} bid\n */\n onBidWon: function (bid) {\n if (bid.native) {\n reloadViewabilityScriptWithCorrectParameters(bid);\n }\n }\n};\n\nfunction reloadViewabilityScriptWithCorrectParameters(bid) {\n const viewJsPayload = getMediafuseViewabilityScriptFromJsTrackers(bid.native.javascriptTrackers);\n\n if (viewJsPayload) {\n const prebidParams = 'pbjs_adid=' + bid.adId + ';pbjs_auc=' + bid.adUnitCode;\n\n const jsTrackerSrc = getViewabilityScriptUrlFromPayload(viewJsPayload);\n\n const newJsTrackerSrc = jsTrackerSrc.replace('dom_id=%native_dom_id%', prebidParams);\n\n // find iframe containing script tag\n const frameArray = document.getElementsByTagName('iframe');\n\n // boolean var to modify only one script. That way if there are muliple scripts,\n // they won't all point to the same creative.\n let modifiedAScript = false;\n\n // first, loop on all ifames\n for (let i = 0; i < frameArray.length && !modifiedAScript; i++) {\n const currentFrame = frameArray[i];\n try {\n // IE-compatible, see https://stackoverflow.com/a/3999191/2112089\n const nestedDoc = currentFrame.contentDocument || currentFrame.contentWindow.document;\n\n if (nestedDoc) {\n // if the doc is present, we look for our jstracker\n const scriptArray = nestedDoc.getElementsByTagName('script');\n for (let j = 0; j < scriptArray.length && !modifiedAScript; j++) {\n const currentScript = scriptArray[j];\n if (currentScript.getAttribute('data-src') == jsTrackerSrc) {\n currentScript.setAttribute('src', newJsTrackerSrc);\n currentScript.setAttribute('data-src', '');\n if (currentScript.removeAttribute) {\n currentScript.removeAttribute('data-src');\n }\n modifiedAScript = true;\n }\n }\n }\n } catch (exception) {\n // trying to access a cross-domain iframe raises a SecurityError\n // this is expected and ignored\n if (!(exception instanceof DOMException && exception.name === 'SecurityError')) {\n // all other cases are raised again to be treated by the calling function\n throw exception;\n }\n }\n }\n }\n}\n\nfunction strIsMediafuseViewabilityScript(str) {\n const regexMatchUrlStart = str.match(VIEWABILITY_URL_START);\n const viewUrlStartInStr = regexMatchUrlStart != null && regexMatchUrlStart.length >= 1;\n\n const regexMatchFileName = str.match(VIEWABILITY_FILE_NAME);\n const fileNameInStr = regexMatchFileName != null && regexMatchFileName.length >= 1;\n\n return str.startsWith(SCRIPT_TAG_START) && fileNameInStr && viewUrlStartInStr;\n}\n\nfunction getMediafuseViewabilityScriptFromJsTrackers(jsTrackerArray) {\n let viewJsPayload;\n if (isStr(jsTrackerArray) && strIsMediafuseViewabilityScript(jsTrackerArray)) {\n viewJsPayload = jsTrackerArray;\n } else if (isArray(jsTrackerArray)) {\n for (let i = 0; i < jsTrackerArray.length; i++) {\n const currentJsTracker = jsTrackerArray[i];\n if (strIsMediafuseViewabilityScript(currentJsTracker)) {\n viewJsPayload = currentJsTracker;\n }\n }\n }\n return viewJsPayload;\n}\n\nfunction getViewabilityScriptUrlFromPayload(viewJsPayload) {\n // extracting the content of the src attribute\n // -> substring between src=\" and \"\n const indexOfFirstQuote = viewJsPayload.indexOf('src=\"') + 5; // offset of 5: the length of 'src=' + 1\n const indexOfSecondQuote = viewJsPayload.indexOf('\"', indexOfFirstQuote);\n const jsTrackerSrc = viewJsPayload.substring(indexOfFirstQuote, indexOfSecondQuote);\n return jsTrackerSrc;\n}\n\nfunction formatRequest(payload, bidderRequest) {\n let request = [];\n const options = {\n withCredentials: true\n };\n\n let endpointUrl = URL;\n\n if (!hasPurpose1Consent(bidderRequest?.gdprConsent)) {\n endpointUrl = URL_SIMPLE;\n }\n\n if (getParameterByName('apn_test').toUpperCase() === 'TRUE' || config.getConfig('apn_test') === true) {\n options.customHeaders = {\n 'X-Is-Test': 1\n };\n }\n\n if (payload.tags.length > MAX_IMPS_PER_REQUEST) {\n const clonedPayload = deepClone(payload);\n\n chunk(payload.tags, MAX_IMPS_PER_REQUEST).forEach(tags => {\n clonedPayload.tags = tags;\n const payloadString = JSON.stringify(clonedPayload);\n request.push({\n method: 'POST',\n url: endpointUrl,\n data: payloadString,\n bidderRequest,\n options\n });\n });\n } else {\n const payloadString = JSON.stringify(payload);\n request = {\n method: 'POST',\n url: endpointUrl,\n data: payloadString,\n bidderRequest,\n options\n };\n }\n\n return request;\n}\n\nfunction newRenderer(adUnitCode, rtbBid, rendererOptions = {}) {\n const renderer = Renderer.install({\n id: rtbBid.renderer_id,\n url: rtbBid.renderer_url,\n config: rendererOptions,\n loaded: false,\n adUnitCode\n });\n\n try {\n renderer.setRender(outstreamRender);\n } catch (err) {\n logWarn('Prebid Error calling setRender on renderer', err);\n }\n\n renderer.setEventHandlers({\n impression: () => logMessage('MediaFuse outstream video impression event'),\n loaded: () => logMessage('MediaFuse outstream video loaded event'),\n ended: () => {\n logMessage('MediaFuse outstream renderer video event');\n document.querySelector(`#${adUnitCode}`).style.display = 'none';\n }\n });\n return renderer;\n}\n\n/**\n * Unpack the Server's Bid into a Prebid-compatible one.\n * @param serverBid\n * @param rtbBid\n * @param bidderRequest\n * @return Bid\n */\nfunction newBid(serverBid, rtbBid, bidderRequest) {\n const bidRequest = getBidRequest(serverBid.uuid, [bidderRequest]);\n const bid = {\n requestId: serverBid.uuid,\n cpm: rtbBid.cpm,\n creativeId: rtbBid.creative_id,\n dealId: rtbBid.deal_id,\n currency: 'USD',\n netRevenue: true,\n ttl: 300,\n adUnitCode: bidRequest.adUnitCode,\n mediafuse: {\n buyerMemberId: rtbBid.buyer_member_id,\n dealPriority: rtbBid.deal_priority,\n dealCode: rtbBid.deal_code\n }\n };\n\n // WE DON'T FULLY SUPPORT THIS ATM - future spot for adomain code; creating a stub for 5.0 compliance\n if (rtbBid.adomain) {\n bid.meta = Object.assign({}, bid.meta, { advertiserDomains: [] });\n }\n\n if (rtbBid.advertiser_id) {\n bid.meta = Object.assign({}, bid.meta, { advertiserId: rtbBid.advertiser_id });\n }\n\n // temporary function; may remove at later date if/when adserver fully supports dchain\n function setupDChain(rtbBid) {\n const dchain = {\n ver: '1.0',\n complete: 0,\n nodes: [{\n bsid: rtbBid.buyer_member_id.toString()\n }]};\n\n return dchain;\n }\n if (rtbBid.buyer_member_id) {\n bid.meta = Object.assign({}, bid.meta, {dchain: setupDChain(rtbBid)});\n }\n\n if (rtbBid.brand_id) {\n bid.meta = Object.assign({}, bid.meta, { brandId: rtbBid.brand_id });\n }\n\n if (rtbBid.rtb.video) {\n // shared video properties used for all 3 contexts\n Object.assign(bid, {\n width: rtbBid.rtb.video.player_width,\n height: rtbBid.rtb.video.player_height,\n vastImpUrl: rtbBid.notify_url,\n ttl: 3600\n });\n\n const videoContext = deepAccess(bidRequest, 'mediaTypes.video.context');\n switch (videoContext) {\n case ADPOD:\n const primaryCatId = (APPNEXUS_CATEGORY_MAPPING[rtbBid.brand_category_id]) ? APPNEXUS_CATEGORY_MAPPING[rtbBid.brand_category_id] : null;\n bid.meta = Object.assign({}, bid.meta, { primaryCatId });\n const dealTier = rtbBid.deal_priority;\n bid.video = {\n context: ADPOD,\n durationSeconds: Math.floor(rtbBid.rtb.video.duration_ms / 1000),\n dealTier\n };\n bid.vastUrl = rtbBid.rtb.video.asset_url;\n break;\n case OUTSTREAM:\n bid.adResponse = serverBid;\n bid.adResponse.ad = bid.adResponse.ads[0];\n bid.adResponse.ad.video = bid.adResponse.ad.rtb.video;\n bid.vastXml = rtbBid.rtb.video.content;\n\n if (rtbBid.renderer_url) {\n const videoBid = ((bidderRequest.bids) || []).find(bid => bid.bidId === serverBid.uuid);\n const rendererOptions = deepAccess(videoBid, 'renderer.options');\n bid.renderer = newRenderer(bid.adUnitCode, rtbBid, rendererOptions);\n }\n break;\n case INSTREAM:\n bid.vastUrl = rtbBid.notify_url + '&redir=' + encodeURIComponent(rtbBid.rtb.video.asset_url);\n break;\n }\n } else if (rtbBid.rtb[NATIVE]) {\n const nativeAd = rtbBid.rtb[NATIVE];\n\n // setting up the jsTracker:\n // we put it as a data-src attribute so that the tracker isn't called\n // until we have the adId (see onBidWon)\n const jsTrackerDisarmed = rtbBid.viewability.config.replace('src=', 'data-src=');\n\n let jsTrackers = nativeAd.javascript_trackers;\n\n if (jsTrackers == undefined) {\n jsTrackers = jsTrackerDisarmed;\n } else if (isStr(jsTrackers)) {\n jsTrackers = [jsTrackers, jsTrackerDisarmed];\n } else {\n jsTrackers.push(jsTrackerDisarmed);\n }\n\n bid[NATIVE] = {\n title: nativeAd.title,\n body: nativeAd.desc,\n body2: nativeAd.desc2,\n cta: nativeAd.ctatext,\n rating: nativeAd.rating,\n sponsoredBy: nativeAd.sponsored,\n privacyLink: nativeAd.privacy_link,\n address: nativeAd.address,\n downloads: nativeAd.downloads,\n likes: nativeAd.likes,\n phone: nativeAd.phone,\n price: nativeAd.price,\n salePrice: nativeAd.saleprice,\n clickUrl: nativeAd.link.url,\n displayUrl: nativeAd.displayurl,\n clickTrackers: nativeAd.link.click_trackers,\n impressionTrackers: nativeAd.impression_trackers,\n javascriptTrackers: jsTrackers\n };\n if (nativeAd.main_img) {\n bid['native'].image = {\n url: nativeAd.main_img.url,\n height: nativeAd.main_img.height,\n width: nativeAd.main_img.width,\n };\n }\n if (nativeAd.icon) {\n bid['native'].icon = {\n url: nativeAd.icon.url,\n height: nativeAd.icon.height,\n width: nativeAd.icon.width,\n };\n }\n } else {\n Object.assign(bid, {\n width: rtbBid.rtb.banner.width,\n height: rtbBid.rtb.banner.height,\n ad: rtbBid.rtb.banner.content\n });\n try {\n if (rtbBid.rtb.trackers) {\n for (let i = 0; i < rtbBid.rtb.trackers[0].impression_urls.length; i++) {\n const url = rtbBid.rtb.trackers[0].impression_urls[i];\n const tracker = createTrackPixelHtml(url);\n bid.ad += tracker;\n }\n }\n } catch (error) {\n logError('Error appending tracking pixel', error);\n }\n }\n\n return bid;\n}\n\nfunction bidToTag(bid) {\n const tag = {};\n tag.sizes = transformSizes(bid.sizes);\n tag.primary_size = tag.sizes[0];\n tag.ad_types = [];\n tag.uuid = bid.bidId;\n if (bid.params.placementId) {\n tag.id = parseInt(bid.params.placementId, 10);\n } else {\n tag.code = bid.params.invCode;\n }\n tag.allow_smaller_sizes = bid.params.allowSmallerSizes || false;\n tag.use_pmt_rule = bid.params.usePaymentRule || false;\n tag.prebid = true;\n tag.disable_psa = true;\n const bidFloor = getBidFloor(bid);\n if (bidFloor) {\n tag.reserve = bidFloor;\n }\n if (bid.params.position) {\n tag.position = { 'above': 1, 'below': 2 }[bid.params.position] || 0;\n }\n if (bid.params.trafficSourceCode) {\n tag.traffic_source_code = bid.params.trafficSourceCode;\n }\n if (bid.params.privateSizes) {\n tag.private_sizes = transformSizes(bid.params.privateSizes);\n }\n if (bid.params.supplyType) {\n tag.supply_type = bid.params.supplyType;\n }\n if (bid.params.pubClick) {\n tag.pubclick = bid.params.pubClick;\n }\n if (bid.params.extInvCode) {\n tag.ext_inv_code = bid.params.extInvCode;\n }\n if (bid.params.publisherId) {\n tag.publisher_id = parseInt(bid.params.publisherId, 10);\n }\n if (bid.params.externalImpId) {\n tag.external_imp_id = bid.params.externalImpId;\n }\n if (!isEmpty(bid.params.keywords)) {\n tag.keywords = getANKewyordParamFromMaps(bid.params.keywords);\n }\n const gpid = deepAccess(bid, 'ortb2Imp.ext.gpid');\n if (gpid) {\n tag.gpid = gpid;\n }\n\n if (bid.mediaType === NATIVE || deepAccess(bid, `mediaTypes.${NATIVE}`)) {\n tag.ad_types.push(NATIVE);\n if (tag.sizes.length === 0) {\n tag.sizes = transformSizes([1, 1]);\n }\n\n if (bid.nativeParams) {\n const nativeRequest = buildNativeRequest(bid.nativeParams);\n tag[NATIVE] = { layouts: [nativeRequest] };\n }\n }\n\n const videoMediaType = deepAccess(bid, `mediaTypes.${VIDEO}`);\n const context = deepAccess(bid, 'mediaTypes.video.context');\n\n if (videoMediaType && context === 'adpod') {\n tag.hb_source = 7;\n } else {\n tag.hb_source = 1;\n }\n if (bid.mediaType === VIDEO || videoMediaType) {\n tag.ad_types.push(VIDEO);\n }\n\n // instream gets vastUrl, outstream gets vastXml\n if (bid.mediaType === VIDEO || (videoMediaType && context !== 'outstream')) {\n tag.require_asset_url = true;\n }\n\n if (bid.params.video) {\n tag.video = {};\n // place any valid video params on the tag\n Object.keys(bid.params.video)\n .filter(param => VIDEO_TARGETING.includes(param))\n .forEach(param => {\n switch (param) {\n case 'context':\n case 'playback_method':\n let type = bid.params.video[param];\n type = (isArray(type)) ? type[0] : type;\n tag.video[param] = VIDEO_MAPPING[param][type];\n break;\n // Deprecating tags[].video.frameworks in favor of tags[].video_frameworks\n case 'frameworks':\n break;\n default:\n tag.video[param] = bid.params.video[param];\n }\n });\n\n if (bid.params.video.frameworks && isArray(bid.params.video.frameworks)) {\n tag['video_frameworks'] = bid.params.video.frameworks;\n }\n }\n\n // use IAB ORTB values if the corresponding values weren't already set by bid.params.video\n if (videoMediaType) {\n tag.video = tag.video || {};\n Object.keys(videoMediaType)\n .filter(param => VIDEO_RTB_TARGETING.includes(param))\n .forEach(param => {\n switch (param) {\n case 'minduration':\n case 'maxduration':\n if (typeof tag.video[param] !== 'number') tag.video[param] = videoMediaType[param];\n break;\n case 'skip':\n if (typeof tag.video['skippable'] !== 'boolean') tag.video['skippable'] = (videoMediaType[param] === 1);\n break;\n case 'skipafter':\n if (typeof tag.video['skipoffset'] !== 'number') tag.video['skippoffset'] = videoMediaType[param];\n break;\n case 'playbackmethod':\n if (typeof tag.video['playback_method'] !== 'number') {\n let type = videoMediaType[param];\n type = (isArray(type)) ? type[0] : type;\n\n // we only support iab's options 1-4 at this time.\n if (type >= 1 && type <= 4) {\n tag.video['playback_method'] = type;\n }\n }\n break;\n case 'api':\n if (!tag['video_frameworks'] && isArray(videoMediaType[param])) {\n // need to read thru array; remove 6 (we don't support it), swap 4 <> 5 if found (to match our adserver mapping for these specific values)\n const apiTmp = videoMediaType[param].map(val => {\n const v = (val === 4) ? 5 : (val === 5) ? 4 : val;\n\n if (v >= 1 && v <= 5) {\n return v;\n }\n }).filter(v => v);\n tag['video_frameworks'] = apiTmp;\n }\n break;\n }\n });\n }\n\n if (bid.renderer) {\n tag.video = Object.assign({}, tag.video, { custom_renderer_present: true });\n }\n\n if (bid.params.frameworks && isArray(bid.params.frameworks)) {\n tag['banner_frameworks'] = bid.params.frameworks;\n }\n\n if (bid.mediaTypes?.banner) {\n tag.ad_types.push(BANNER);\n }\n\n if (tag.ad_types.length === 0) {\n delete tag.ad_types;\n }\n\n return tag;\n}\n\n/* Turn bid request sizes into ut-compatible format */\nfunction transformSizes(requestSizes) {\n const sizes = [];\n let sizeObj = {};\n\n if (isArray(requestSizes) && requestSizes.length === 2 &&\n !isArray(requestSizes[0])) {\n sizeObj.width = parseInt(requestSizes[0], 10);\n sizeObj.height = parseInt(requestSizes[1], 10);\n sizes.push(sizeObj);\n } else if (typeof requestSizes === 'object') {\n for (let i = 0; i < requestSizes.length; i++) {\n const size = requestSizes[i];\n sizeObj = {};\n sizeObj.width = parseInt(size[0], 10);\n sizeObj.height = parseInt(size[1], 10);\n sizes.push(sizeObj);\n }\n }\n\n return sizes;\n}\n\nfunction hasUserInfo(bid) {\n return !!bid.params.user;\n}\n\nfunction hasMemberId(bid) {\n return !!parseInt(bid.params.member, 10);\n}\n\nfunction hasAppDeviceInfo(bid) {\n if (bid.params) {\n return !!bid.params.app\n }\n}\n\nfunction hasAppId(bid) {\n if (bid.params && bid.params.app) {\n return !!bid.params.app.id\n }\n return !!bid.params.app\n}\n\nfunction hasDebug(bid) {\n return !!bid.debug\n}\n\nfunction hasAdPod(bid) {\n return (\n bid.mediaTypes &&\n bid.mediaTypes.video &&\n bid.mediaTypes.video.context === ADPOD\n );\n}\n\nfunction hasOmidSupport(bid) {\n let hasOmid = false;\n const bidderParams = bid.params;\n const videoParams = bid.params.video;\n if (bidderParams.frameworks && isArray(bidderParams.frameworks)) {\n hasOmid = bid.params.frameworks.includes(6);\n }\n if (!hasOmid && videoParams && videoParams.frameworks && isArray(videoParams.frameworks)) {\n hasOmid = bid.params.video.frameworks.includes(6);\n }\n return hasOmid;\n}\n\n/**\n * Expand an adpod placement into a set of request objects according to the\n * total adpod duration and the range of duration seconds. Sets minduration/\n * maxduration video property according to requireExactDuration configuration\n */\nfunction createAdPodRequest(tags, adPodBid) {\n const { durationRangeSec, requireExactDuration } = adPodBid.mediaTypes.video;\n\n const numberOfPlacements = getAdPodPlacementNumber(adPodBid.mediaTypes.video);\n const maxDuration = Math.max(...durationRangeSec);\n\n const tagToDuplicate = tags.filter(tag => tag.uuid === adPodBid.bidId);\n const request = fill(...tagToDuplicate, numberOfPlacements);\n\n if (requireExactDuration) {\n const divider = Math.ceil(numberOfPlacements / durationRangeSec.length);\n const chunked = chunk(request, divider);\n\n // each configured duration is set as min/maxduration for a subset of requests\n durationRangeSec.forEach((duration, index) => {\n chunked[index].map(tag => {\n setVideoProperty(tag, 'minduration', duration);\n setVideoProperty(tag, 'maxduration', duration);\n });\n });\n } else {\n // all maxdurations should be the same\n request.map(tag => setVideoProperty(tag, 'maxduration', maxDuration));\n }\n\n return request;\n}\n\nfunction getAdPodPlacementNumber(videoParams) {\n const { adPodDurationSec, durationRangeSec, requireExactDuration } = videoParams;\n const minAllowedDuration = Math.min(...durationRangeSec);\n const numberOfPlacements = Math.floor(adPodDurationSec / minAllowedDuration);\n\n return requireExactDuration\n ? Math.max(numberOfPlacements, durationRangeSec.length)\n : numberOfPlacements;\n}\n\nfunction setVideoProperty(tag, key, value) {\n if (isEmpty(tag.video)) { tag.video = {}; }\n tag.video[key] = value;\n}\n\nfunction getRtbBid(tag) {\n return tag && tag.ads && tag.ads.length && ((tag.ads) || []).find(ad => ad.rtb);\n}\n\nfunction buildNativeRequest(params) {\n const request = {};\n\n // map standard prebid native asset identifier to /ut parameters\n // e.g., tag specifies `body` but /ut only knows `description`.\n // mapping may be in form {tag: '<server name>'} or\n // {tag: {serverName: '<server name>', requiredParams: {...}}}\n Object.keys(params).forEach(key => {\n // check if one of the <server name> forms is used, otherwise\n // a mapping wasn't specified so pass the key straight through\n const requestKey =\n (NATIVE_MAPPING[key] && NATIVE_MAPPING[key].serverName) ||\n NATIVE_MAPPING[key] ||\n key;\n\n // required params are always passed on request\n const requiredParams = NATIVE_MAPPING[key] && NATIVE_MAPPING[key].requiredParams;\n request[requestKey] = Object.assign({}, requiredParams, params[key]);\n\n // convert the sizes of image/icon assets to proper format (if needed)\n const isImageAsset = !!(requestKey === NATIVE_MAPPING.image.serverName || requestKey === NATIVE_MAPPING.icon.serverName);\n if (isImageAsset && request[requestKey].sizes) {\n const sizes = request[requestKey].sizes;\n if (isArrayOfNums(sizes) || (isArray(sizes) && sizes.length > 0 && sizes.every(sz => isArrayOfNums(sz)))) {\n request[requestKey].sizes = transformSizes(request[requestKey].sizes);\n }\n }\n\n if (requestKey === NATIVE_MAPPING.privacyLink) {\n request.privacy_supported = true;\n }\n });\n\n return request;\n}\n\n/**\n * This function hides google div container for outstream bids to remove unwanted space on page. Mediafuse renderer creates a new iframe outside of google iframe to render the outstream creative.\n * @param {string} elementId element id\n */\nfunction hidedfpContainer(elementId) {\n var el = document.getElementById(elementId).querySelectorAll(\"div[id^='google_ads']\");\n if (el[0]) {\n el[0].style.setProperty('display', 'none');\n }\n}\n\nfunction hideSASIframe(elementId) {\n try {\n // find script tag with id 'sas_script'. This ensures it only works if you're using Smart Ad Server.\n const el = document.getElementById(elementId).querySelectorAll(\"script[id^='sas_script']\");\n if (el[0].nextSibling && el[0].nextSibling.localName === 'iframe') {\n el[0].nextSibling.style.setProperty('display', 'none');\n }\n } catch (e) {\n // element not found!\n }\n}\n\nfunction outstreamRender(bid) {\n hidedfpContainer(bid.adUnitCode);\n hideSASIframe(bid.adUnitCode);\n // push to render queue because ANOutstreamVideo may not be loaded\n bid.renderer.push(() => {\n window.ANOutstreamVideo.renderAd({\n tagId: bid.adResponse.tag_id,\n sizes: [bid.getSize().split('x')],\n targetId: bid.adUnitCode, // target div id to render video\n uuid: bid.adResponse.uuid,\n adResponse: bid.adResponse,\n rendererOptions: bid.renderer.getConfig()\n }, handleOutstreamRendererEvents.bind(null, bid));\n });\n}\n\nfunction handleOutstreamRendererEvents(bid, id, eventName) {\n bid.renderer.handleVideoEvent({ id, eventName });\n}\n\nfunction parseMediaType(rtbBid) {\n const adType = rtbBid.ad_type;\n if (adType === VIDEO) {\n return VIDEO;\n } else if (adType === NATIVE) {\n return NATIVE;\n } else {\n return BANNER;\n }\n}\n\n/* function addUserId(eids, id, source, rti) {\n if (id) {\n if (rti) {\n eids.push({ source, id, rti_partner: rti });\n } else {\n eids.push({ source, id });\n }\n }\n return eids;\n} */\n\nfunction getBidFloor(bid) {\n if (!isFn(bid.getFloor)) {\n return (bid.params.reserve) ? bid.params.reserve : null;\n }\n\n const floor = bid.getFloor({\n currency: 'USD',\n mediaType: '*',\n size: '*'\n });\n if (isPlainObject(floor) && !isNaN(floor.floor) && floor.currency === 'USD') {\n return floor.floor;\n }\n return null;\n}\n\nregisterBidder(spec);\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"mediafuseBidAdapter.js","names":["registerModule","__r0","createTrackPixelHtml","deepAccess","deepClone","getBidRequest","getParameterByName","isArray","isArrayOfNums","isEmpty","isFn","isNumber","isPlainObject","isStr","logError","logInfo","logMessage","logWarn","Renderer","config","registerBidder","ADPOD","BANNER","NATIVE","VIDEO","INSTREAM","OUTSTREAM","getStorageManager","bidderSettings","hasPurpose1Consent","convertOrtbRequestToProprietaryNative","APPNEXUS_CATEGORY_MAPPING","getANKewyordParamFromMaps","getANKeywordParam","convertCamelToUnderscore","fill","chunk","BIDDER_CODE","URL","URL_SIMPLE","VIDEO_TARGETING","VIDEO_RTB_TARGETING","USER_PARAMS","APP_DEVICE_PARAMS","DEBUG_PARAMS","VIDEO_MAPPING","playback_method","context","NATIVE_MAPPING","body","body2","cta","image","serverName","requiredParams","required","icon","sponsoredBy","privacyLink","salePrice","displayUrl","SOURCE","MAX_IMPS_PER_REQUEST","SCRIPT_TAG_START","VIEWABILITY_URL_START","VIEWABILITY_FILE_NAME","GVLID","storage","bidderCode","spec","code","gvlid","supportedMediaTypes","isBidRequestValid","bid","params","placementId","member","invCode","buildRequests","bidRequests","bidderRequest","tags","map","bidToTag","userObjBid","find","hasUserInfo","userObj","getConfig","Object","keys","user","filter","param","includes","forEach","uparam","segs","val","push","appDeviceObjBid","hasAppDeviceInfo","appDeviceObj","app","appIdObjBid","hasAppId","appIdObj","id","appid","debugObj","debugObjParams","debugCookieName","debugCookie","getCookie","JSON","parse","e","debugBidRequest","hasDebug","debug","enabled","memberIdBid","hasMemberId","parseInt","schain","ortb2","source","ext","omidSupport","hasOmidSupport","payload","sdk","version","omidpn","omidpv","member_id","device","mfKeywords","keywords","brand_category_uniqueness","stringify","gdprConsent","gdpr_consent","consent_string","consentString","consent_required","gdprApplies","addtlConsent","indexOf","ac","acStr","substring","addtl_consent","split","uspConsent","us_privacy","refererInfo","refererinfo","rd_ref","encodeURIComponent","topmostLocation","rd_top","reachedTop","rd_ifs","numIframes","rd_stk","stack","url","join","referrer_detection","hasAdPodBid","hasAdPod","adPodBid","adPodTags","createAdPodRequest","nonPodTags","tag","uuid","bidId","userIdAsEids","length","eids","eid","uids","uid","tmp","rti_partner","publisher_id","request","formatRequest","interpretResponse","serverResponse","_ref","bids","error","errorMessage","serverBid","rtbBid","getRtbBid","cpmCheck","get","cpm","ad_type","newBid","mediaType","parseMediaType","debug_info","debugHeader","debugText","replace","getUserSyncs","syncOptions","responses","iframeEnabled","type","onBidWon","native","reloadViewabilityScriptWithCorrectParameters","viewJsPayload","getMediafuseViewabilityScriptFromJsTrackers","javascriptTrackers","prebidParams","adId","adUnitCode","jsTrackerSrc","getViewabilityScriptUrlFromPayload","newJsTrackerSrc","frameArray","document","getElementsByTagName","modifiedAScript","i","currentFrame","nestedDoc","contentDocument","contentWindow","scriptArray","j","currentScript","getAttribute","setAttribute","removeAttribute","exception","DOMException","name","strIsMediafuseViewabilityScript","str","regexMatchUrlStart","match","viewUrlStartInStr","regexMatchFileName","fileNameInStr","startsWith","jsTrackerArray","currentJsTracker","indexOfFirstQuote","indexOfSecondQuote","options","withCredentials","endpointUrl","toUpperCase","customHeaders","clonedPayload","payloadString","method","data","newRenderer","rendererOptions","arguments","undefined","renderer","install","renderer_id","renderer_url","loaded","setRender","outstreamRender","err","setEventHandlers","impression","ended","querySelector","style","display","bidRequest","requestId","creativeId","creative_id","dealId","deal_id","currency","netRevenue","ttl","mediafuse","buyerMemberId","buyer_member_id","dealPriority","deal_priority","dealCode","deal_code","adomain","meta","assign","advertiserDomains","advertiser_id","advertiserId","setupDChain","dchain","ver","complete","nodes","bsid","toString","brand_id","brandId","rtb","video","width","player_width","height","player_height","vastImpUrl","notify_url","videoContext","primaryCatId","brand_category_id","dealTier","durationSeconds","Math","floor","duration_ms","vastUrl","asset_url","adResponse","ad","ads","vastXml","content","videoBid","nativeAd","jsTrackerDisarmed","viewability","jsTrackers","javascript_trackers","title","desc","desc2","ctatext","rating","sponsored","privacy_link","address","downloads","likes","phone","price","saleprice","clickUrl","link","displayurl","clickTrackers","click_trackers","impressionTrackers","impression_trackers","main_img","banner","trackers","impression_urls","tracker","sizes","transformSizes","primary_size","ad_types","allow_smaller_sizes","allowSmallerSizes","use_pmt_rule","usePaymentRule","prebid","disable_psa","bidFloor","getBidFloor","reserve","position","trafficSourceCode","traffic_source_code","privateSizes","private_sizes","supplyType","supply_type","pubClick","pubclick","extInvCode","ext_inv_code","publisherId","externalImpId","external_imp_id","gpid","nativeParams","nativeRequest","buildNativeRequest","layouts","videoMediaType","hb_source","require_asset_url","frameworks","apiTmp","v","custom_renderer_present","mediaTypes","requestSizes","sizeObj","size","hasOmid","bidderParams","videoParams","durationRangeSec","requireExactDuration","numberOfPlacements","getAdPodPlacementNumber","maxDuration","max","tagToDuplicate","divider","ceil","chunked","duration","index","setVideoProperty","adPodDurationSec","minAllowedDuration","min","key","value","requestKey","isImageAsset","every","sz","privacy_supported","hidedfpContainer","elementId","el","getElementById","querySelectorAll","setProperty","hideSASIframe","nextSibling","localName","window","ANOutstreamVideo","renderAd","tagId","tag_id","getSize","targetId","handleOutstreamRendererEvents","bind","eventName","handleVideoEvent","adType","getFloor","isNaN"],"sourceRoot":"../../..","sources":["modules/mediafuseBidAdapter.js"],"sourcesContent":["import {\n createTrackPixelHtml,\n deepAccess,\n deepClone,\n getBidRequest,\n getParameterByName,\n isArray,\n isArrayOfNums,\n isEmpty,\n isFn,\n isNumber,\n isPlainObject,\n isStr,\n logError,\n logInfo,\n logMessage,\n logWarn\n} from '../src/utils.js';\nimport {Renderer} from '../src/Renderer.js';\nimport {config} from '../src/config.js';\nimport {registerBidder} from '../src/adapters/bidderFactory.js';\nimport {ADPOD, BANNER, NATIVE, VIDEO} from '../src/mediaTypes.js';\nimport {INSTREAM, OUTSTREAM} from '../src/video.js';\nimport {getStorageManager} from '../src/storageManager.js';\nimport {bidderSettings} from '../src/bidderSettings.js';\nimport {hasPurpose1Consent} from '../src/utils/gdpr.js';\nimport {convertOrtbRequestToProprietaryNative} from '../src/native.js';\nimport {APPNEXUS_CATEGORY_MAPPING} from '../libraries/categoryTranslationMapping/index.js';\nimport {\n getANKewyordParamFromMaps,\n getANKeywordParam\n} from '../libraries/appnexusUtils/anKeywords.js';\nimport {convertCamelToUnderscore, fill} from '../libraries/appnexusUtils/anUtils.js';\nimport {chunk} from '../libraries/chunk/chunk.js';\n\n/**\n * @typedef {import('../src/adapters/bidderFactory.js').BidRequest} BidRequest\n * @typedef {import('../src/adapters/bidderFactory.js').Bid} Bid\n */\n\nconst BIDDER_CODE = 'mediafuse';\nconst URL = 'https://ib.adnxs.com/ut/v3/prebid';\nconst URL_SIMPLE = 'https://ib.adnxs-simple.com/ut/v3/prebid';\nconst VIDEO_TARGETING = ['id', 'minduration', 'maxduration',\n 'skippable', 'playback_method', 'frameworks', 'context', 'skipoffset'];\nconst VIDEO_RTB_TARGETING = ['minduration', 'maxduration', 'skip', 'skipafter', 'playbackmethod', 'api'];\nconst USER_PARAMS = ['age', 'externalUid', 'segments', 'gender', 'dnt', 'language'];\nconst APP_DEVICE_PARAMS = ['device_id']; // appid is collected separately\nconst DEBUG_PARAMS = ['enabled', 'dongle', 'member_id', 'debug_timeout'];\nconst VIDEO_MAPPING = {\n playback_method: {\n 'unknown': 0,\n 'auto_play_sound_on': 1,\n 'auto_play_sound_off': 2,\n 'click_to_play': 3,\n 'mouse_over': 4,\n 'auto_play_sound_unknown': 5\n },\n context: {\n 'unknown': 0,\n 'pre_roll': 1,\n 'mid_roll': 2,\n 'post_roll': 3,\n 'outstream': 4,\n 'in-banner': 5\n }\n};\nconst NATIVE_MAPPING = {\n body: 'description',\n body2: 'desc2',\n cta: 'ctatext',\n image: {\n serverName: 'main_image',\n requiredParams: { required: true }\n },\n icon: {\n serverName: 'icon',\n requiredParams: { required: true }\n },\n sponsoredBy: 'sponsored_by',\n privacyLink: 'privacy_link',\n salePrice: 'saleprice',\n displayUrl: 'displayurl'\n};\nconst SOURCE = 'pbjs';\nconst MAX_IMPS_PER_REQUEST = 15;\nconst SCRIPT_TAG_START = '<script';\nconst VIEWABILITY_URL_START = /\\/\\/cdn\\.adnxs\\.com\\/v|\\/\\/cdn\\.adnxs\\-simple\\.com\\/v/;\nconst VIEWABILITY_FILE_NAME = 'trk.js';\nconst GVLID = 32;\nconst storage = getStorageManager({bidderCode: BIDDER_CODE});\n\nexport const spec = {\n code: BIDDER_CODE,\n gvlid: GVLID,\n supportedMediaTypes: [BANNER, VIDEO, NATIVE],\n\n /**\n * Determines whether or not the given bid request is valid.\n *\n * @param {object} bid The bid to validate.\n * @return boolean True if this is a valid bid, and false otherwise.\n */\n isBidRequestValid: function (bid) {\n return !!(bid.params.placementId || (bid.params.member && bid.params.invCode));\n },\n\n /**\n * Make a server request from the list of BidRequests.\n *\n * @param {BidRequest[]} bidRequests A non-empty list of bid requests which should be sent to the Server.\n * @return ServerRequest Info describing the request to the server.\n */\n buildRequests: function (bidRequests, bidderRequest) {\n // convert Native ORTB definition to old-style prebid native definition\n bidRequests = convertOrtbRequestToProprietaryNative(bidRequests);\n const tags = bidRequests.map(bidToTag);\n const userObjBid = ((bidRequests) || []).find(hasUserInfo);\n let userObj = {};\n if (config.getConfig('coppa') === true) {\n userObj = { 'coppa': true };\n }\n if (userObjBid) {\n Object.keys(userObjBid.params.user)\n .filter(param => USER_PARAMS.includes(param))\n .forEach((param) => {\n const uparam = convertCamelToUnderscore(param);\n if (param === 'segments' && isArray(userObjBid.params.user[param])) {\n const segs = [];\n userObjBid.params.user[param].forEach(val => {\n if (isNumber(val)) {\n segs.push({'id': val});\n } else if (isPlainObject(val)) {\n segs.push(val);\n }\n });\n userObj[uparam] = segs;\n } else if (param !== 'segments') {\n userObj[uparam] = userObjBid.params.user[param];\n }\n });\n }\n\n const appDeviceObjBid = ((bidRequests) || []).find(hasAppDeviceInfo);\n let appDeviceObj;\n if (appDeviceObjBid && appDeviceObjBid.params && appDeviceObjBid.params.app) {\n appDeviceObj = {};\n Object.keys(appDeviceObjBid.params.app)\n .filter(param => APP_DEVICE_PARAMS.includes(param))\n .forEach(param => {\n appDeviceObj[param] = appDeviceObjBid.params.app[param];\n });\n }\n\n const appIdObjBid = ((bidRequests) || []).find(hasAppId);\n let appIdObj;\n if (appIdObjBid && appIdObjBid.params && appDeviceObjBid.params.app && appDeviceObjBid.params.app.id) {\n appIdObj = {\n appid: appIdObjBid.params.app.id\n };\n }\n\n let debugObj = {};\n const debugObjParams = {};\n const debugCookieName = 'apn_prebid_debug';\n const debugCookie = storage.getCookie(debugCookieName) || null;\n\n if (debugCookie) {\n try {\n debugObj = JSON.parse(debugCookie);\n } catch (e) {\n logError('MediaFuse Debug Auction Cookie Error:\\n\\n' + e);\n }\n } else {\n const debugBidRequest = ((bidRequests) || []).find(hasDebug);\n if (debugBidRequest && debugBidRequest.debug) {\n debugObj = debugBidRequest.debug;\n }\n }\n\n if (debugObj && debugObj.enabled) {\n Object.keys(debugObj)\n .filter(param => DEBUG_PARAMS.includes(param))\n .forEach(param => {\n debugObjParams[param] = debugObj[param];\n });\n }\n\n const memberIdBid = ((bidRequests) || []).find(hasMemberId);\n const member = memberIdBid ? parseInt(memberIdBid.params.member, 10) : 0;\n const schain = bidRequests[0]?.ortb2?.source?.ext?.schain;\n const omidSupport = ((bidRequests) || []).find(hasOmidSupport);\n\n const payload = {\n tags: [...tags],\n user: userObj,\n sdk: {\n source: SOURCE,\n version: '$prebid.version$'\n },\n schain: schain\n };\n\n if (omidSupport) {\n payload['iab_support'] = {\n omidpn: 'Mediafuse',\n omidpv: '$prebid.version$'\n };\n }\n\n if (member > 0) {\n payload.member_id = member;\n }\n\n if (appDeviceObjBid) {\n payload.device = appDeviceObj;\n }\n if (appIdObjBid) {\n payload.app = appIdObj;\n }\n\n const mfKeywords = config.getConfig('mediafuseAuctionKeywords');\n payload.keywords = getANKeywordParam(bidderRequest?.ortb2, mfKeywords);\n\n if (config.getConfig('adpod.brandCategoryExclusion')) {\n payload.brand_category_uniqueness = true;\n }\n\n if (debugObjParams.enabled) {\n payload.debug = debugObjParams;\n logInfo('MediaFuse Debug Auction Settings:\\n\\n' + JSON.stringify(debugObjParams, null, 4));\n }\n\n if (bidderRequest && bidderRequest.gdprConsent) {\n // note - objects for impbus use underscore instead of camelCase\n payload.gdpr_consent = {\n consent_string: bidderRequest.gdprConsent.consentString,\n consent_required: bidderRequest.gdprConsent.gdprApplies\n };\n\n if (bidderRequest.gdprConsent.addtlConsent && bidderRequest.gdprConsent.addtlConsent.indexOf('~') !== -1) {\n const ac = bidderRequest.gdprConsent.addtlConsent;\n // pull only the ids from the string (after the ~) and convert them to an array of ints\n const acStr = ac.substring(ac.indexOf('~') + 1);\n payload.gdpr_consent.addtl_consent = acStr.split('.').map(id => parseInt(id, 10));\n }\n }\n\n if (bidderRequest && bidderRequest.uspConsent) {\n payload.us_privacy = bidderRequest.uspConsent;\n }\n\n if (bidderRequest && bidderRequest.refererInfo) {\n const refererinfo = {\n // TODO: this collects everything it finds, except for canonicalUrl\n rd_ref: encodeURIComponent(bidderRequest.refererInfo.topmostLocation),\n rd_top: bidderRequest.refererInfo.reachedTop,\n rd_ifs: bidderRequest.refererInfo.numIframes,\n rd_stk: bidderRequest.refererInfo.stack.map((url) => encodeURIComponent(url)).join(',')\n };\n payload.referrer_detection = refererinfo;\n }\n\n const hasAdPodBid = ((bidRequests) || []).find(hasAdPod);\n if (hasAdPodBid) {\n bidRequests.filter(hasAdPod).forEach(adPodBid => {\n const adPodTags = createAdPodRequest(tags, adPodBid);\n // don't need the original adpod placement because it's in adPodTags\n const nonPodTags = payload.tags.filter(tag => tag.uuid !== adPodBid.bidId);\n payload.tags = [...nonPodTags, ...adPodTags];\n });\n }\n\n if (bidRequests[0].userIdAsEids?.length > 0) {\n const eids = [];\n bidRequests[0].userIdAsEids.forEach(eid => {\n if (!eid || !eid.uids || eid.uids.length < 1) { return; }\n eid.uids.forEach(uid => {\n const tmp = {'source': eid.source, 'id': uid.id};\n if (eid.source == 'adserver.org') {\n tmp.rti_partner = 'TDID';\n } else if (eid.source == 'uidapi.com') {\n tmp.rti_partner = 'UID2';\n }\n eids.push(tmp);\n });\n });\n\n if (eids.length) {\n payload.eids = eids;\n }\n }\n\n if (tags[0].publisher_id) {\n payload.publisher_id = tags[0].publisher_id;\n }\n\n const request = formatRequest(payload, bidderRequest);\n return request;\n },\n\n /**\n * Unpack the response from the server into a list of bids.\n *\n * @param {*} serverResponse A successful response from the server.\n * @return {Bid[]} An array of bids which were nested inside the server.\n */\n interpretResponse: function (serverResponse, { bidderRequest }) {\n serverResponse = serverResponse.body;\n const bids = [];\n if (!serverResponse || serverResponse.error) {\n let errorMessage = `in response for ${bidderRequest.bidderCode} adapter`;\n if (serverResponse && serverResponse.error) { errorMessage += `: ${serverResponse.error}`; }\n logError(errorMessage);\n return bids;\n }\n\n if (serverResponse.tags) {\n serverResponse.tags.forEach(serverBid => {\n const rtbBid = getRtbBid(serverBid);\n if (rtbBid) {\n const cpmCheck = (bidderSettings.get(bidderRequest.bidderCode, 'allowZeroCpmBids') === true) ? rtbBid.cpm >= 0 : rtbBid.cpm > 0;\n if (cpmCheck && this.supportedMediaTypes.includes(rtbBid.ad_type)) {\n const bid = newBid(serverBid, rtbBid, bidderRequest);\n bid.mediaType = parseMediaType(rtbBid);\n bids.push(bid);\n }\n }\n });\n }\n\n if (serverResponse.debug && serverResponse.debug.debug_info) {\n const debugHeader = 'MediaFuse Debug Auction for Prebid\\n\\n'\n let debugText = debugHeader + serverResponse.debug.debug_info\n debugText = debugText\n .replace(/(<td>|<th>)/gm, '\\t') // Tables\n .replace(/(<\\/td>|<\\/th>)/gm, '\\n') // Tables\n .replace(/^<br>/gm, '') // Remove leading <br>\n .replace(/(<br>\\n|<br>)/gm, '\\n') // <br>\n .replace(/<h1>(.*)<\\/h1>/gm, '\\n\\n===== $1 =====\\n\\n') // Header H1\n .replace(/<h[2-6]>(.*)<\\/h[2-6]>/gm, '\\n\\n*** $1 ***\\n\\n') // Headers\n .replace(/(<([^>]+)>)/igm, ''); // Remove any other tags\n // logMessage('https://console.appnexus.com/docs/understanding-the-debug-auction');\n logMessage(debugText);\n }\n\n return bids;\n },\n\n getUserSyncs: function (syncOptions, responses, gdprConsent) {\n if (syncOptions.iframeEnabled && hasPurpose1Consent({gdprConsent})) {\n return [{\n type: 'iframe',\n url: 'https://acdn.adnxs.com/dmp/async_usersync.html'\n }];\n }\n },\n\n /**\n * Add element selector to javascript tracker to improve native viewability\n * @param {Bid} bid\n */\n onBidWon: function (bid) {\n if (bid.native) {\n reloadViewabilityScriptWithCorrectParameters(bid);\n }\n }\n};\n\nfunction reloadViewabilityScriptWithCorrectParameters(bid) {\n const viewJsPayload = getMediafuseViewabilityScriptFromJsTrackers(bid.native.javascriptTrackers);\n\n if (viewJsPayload) {\n const prebidParams = 'pbjs_adid=' + bid.adId + ';pbjs_auc=' + bid.adUnitCode;\n\n const jsTrackerSrc = getViewabilityScriptUrlFromPayload(viewJsPayload);\n\n const newJsTrackerSrc = jsTrackerSrc.replace('dom_id=%native_dom_id%', prebidParams);\n\n // find iframe containing script tag\n const frameArray = document.getElementsByTagName('iframe');\n\n // boolean var to modify only one script. That way if there are muliple scripts,\n // they won't all point to the same creative.\n let modifiedAScript = false;\n\n // first, loop on all ifames\n for (let i = 0; i < frameArray.length && !modifiedAScript; i++) {\n const currentFrame = frameArray[i];\n try {\n // IE-compatible, see https://stackoverflow.com/a/3999191/2112089\n const nestedDoc = currentFrame.contentDocument || currentFrame.contentWindow.document;\n\n if (nestedDoc) {\n // if the doc is present, we look for our jstracker\n const scriptArray = nestedDoc.getElementsByTagName('script');\n for (let j = 0; j < scriptArray.length && !modifiedAScript; j++) {\n const currentScript = scriptArray[j];\n if (currentScript.getAttribute('data-src') == jsTrackerSrc) {\n currentScript.setAttribute('src', newJsTrackerSrc);\n currentScript.setAttribute('data-src', '');\n if (currentScript.removeAttribute) {\n currentScript.removeAttribute('data-src');\n }\n modifiedAScript = true;\n }\n }\n }\n } catch (exception) {\n // trying to access a cross-domain iframe raises a SecurityError\n // this is expected and ignored\n if (!(exception instanceof DOMException && exception.name === 'SecurityError')) {\n // all other cases are raised again to be treated by the calling function\n throw exception;\n }\n }\n }\n }\n}\n\nfunction strIsMediafuseViewabilityScript(str) {\n const regexMatchUrlStart = str.match(VIEWABILITY_URL_START);\n const viewUrlStartInStr = regexMatchUrlStart != null && regexMatchUrlStart.length >= 1;\n\n const regexMatchFileName = str.match(VIEWABILITY_FILE_NAME);\n const fileNameInStr = regexMatchFileName != null && regexMatchFileName.length >= 1;\n\n return str.startsWith(SCRIPT_TAG_START) && fileNameInStr && viewUrlStartInStr;\n}\n\nfunction getMediafuseViewabilityScriptFromJsTrackers(jsTrackerArray) {\n let viewJsPayload;\n if (isStr(jsTrackerArray) && strIsMediafuseViewabilityScript(jsTrackerArray)) {\n viewJsPayload = jsTrackerArray;\n } else if (isArray(jsTrackerArray)) {\n for (let i = 0; i < jsTrackerArray.length; i++) {\n const currentJsTracker = jsTrackerArray[i];\n if (strIsMediafuseViewabilityScript(currentJsTracker)) {\n viewJsPayload = currentJsTracker;\n }\n }\n }\n return viewJsPayload;\n}\n\nfunction getViewabilityScriptUrlFromPayload(viewJsPayload) {\n // extracting the content of the src attribute\n // -> substring between src=\" and \"\n const indexOfFirstQuote = viewJsPayload.indexOf('src=\"') + 5; // offset of 5: the length of 'src=' + 1\n const indexOfSecondQuote = viewJsPayload.indexOf('\"', indexOfFirstQuote);\n const jsTrackerSrc = viewJsPayload.substring(indexOfFirstQuote, indexOfSecondQuote);\n return jsTrackerSrc;\n}\n\nfunction formatRequest(payload, bidderRequest) {\n let request = [];\n const options = {\n withCredentials: true\n };\n\n let endpointUrl = URL;\n\n if (!hasPurpose1Consent(bidderRequest?.gdprConsent)) {\n endpointUrl = URL_SIMPLE;\n }\n\n if (getParameterByName('apn_test').toUpperCase() === 'TRUE' || config.getConfig('apn_test') === true) {\n options.customHeaders = {\n 'X-Is-Test': 1\n };\n }\n\n if (payload.tags.length > MAX_IMPS_PER_REQUEST) {\n const clonedPayload = deepClone(payload);\n\n chunk(payload.tags, MAX_IMPS_PER_REQUEST).forEach(tags => {\n clonedPayload.tags = tags;\n const payloadString = JSON.stringify(clonedPayload);\n request.push({\n method: 'POST',\n url: endpointUrl,\n data: payloadString,\n bidderRequest,\n options\n });\n });\n } else {\n const payloadString = JSON.stringify(payload);\n request = {\n method: 'POST',\n url: endpointUrl,\n data: payloadString,\n bidderRequest,\n options\n };\n }\n\n return request;\n}\n\nfunction newRenderer(adUnitCode, rtbBid, rendererOptions = {}) {\n const renderer = Renderer.install({\n id: rtbBid.renderer_id,\n url: rtbBid.renderer_url,\n config: rendererOptions,\n loaded: false,\n adUnitCode\n });\n\n try {\n renderer.setRender(outstreamRender);\n } catch (err) {\n logWarn('Prebid Error calling setRender on renderer', err);\n }\n\n renderer.setEventHandlers({\n impression: () => logMessage('MediaFuse outstream video impression event'),\n loaded: () => logMessage('MediaFuse outstream video loaded event'),\n ended: () => {\n logMessage('MediaFuse outstream renderer video event');\n document.querySelector(`#${adUnitCode}`).style.display = 'none';\n }\n });\n return renderer;\n}\n\n/**\n * Unpack the Server's Bid into a Prebid-compatible one.\n * @param serverBid\n * @param rtbBid\n * @param bidderRequest\n * @return Bid\n */\nfunction newBid(serverBid, rtbBid, bidderRequest) {\n const bidRequest = getBidRequest(serverBid.uuid, [bidderRequest]);\n const bid = {\n requestId: serverBid.uuid,\n cpm: rtbBid.cpm,\n creativeId: rtbBid.creative_id,\n dealId: rtbBid.deal_id,\n currency: 'USD',\n netRevenue: true,\n ttl: 300,\n adUnitCode: bidRequest.adUnitCode,\n mediafuse: {\n buyerMemberId: rtbBid.buyer_member_id,\n dealPriority: rtbBid.deal_priority,\n dealCode: rtbBid.deal_code\n }\n };\n\n // WE DON'T FULLY SUPPORT THIS ATM - future spot for adomain code; creating a stub for 5.0 compliance\n if (rtbBid.adomain) {\n bid.meta = Object.assign({}, bid.meta, { advertiserDomains: [] });\n }\n\n if (rtbBid.advertiser_id) {\n bid.meta = Object.assign({}, bid.meta, { advertiserId: rtbBid.advertiser_id });\n }\n\n // temporary function; may remove at later date if/when adserver fully supports dchain\n function setupDChain(rtbBid) {\n const dchain = {\n ver: '1.0',\n complete: 0,\n nodes: [{\n bsid: rtbBid.buyer_member_id.toString()\n }]};\n\n return dchain;\n }\n if (rtbBid.buyer_member_id) {\n bid.meta = Object.assign({}, bid.meta, {dchain: setupDChain(rtbBid)});\n }\n\n if (rtbBid.brand_id) {\n bid.meta = Object.assign({}, bid.meta, { brandId: rtbBid.brand_id });\n }\n\n if (rtbBid.rtb.video) {\n // shared video properties used for all 3 contexts\n Object.assign(bid, {\n width: rtbBid.rtb.video.player_width,\n height: rtbBid.rtb.video.player_height,\n vastImpUrl: rtbBid.notify_url,\n ttl: 3600\n });\n\n const videoContext = deepAccess(bidRequest, 'mediaTypes.video.context');\n switch (videoContext) {\n case ADPOD:\n const primaryCatId = (APPNEXUS_CATEGORY_MAPPING[rtbBid.brand_category_id]) ? APPNEXUS_CATEGORY_MAPPING[rtbBid.brand_category_id] : null;\n bid.meta = Object.assign({}, bid.meta, { primaryCatId });\n const dealTier = rtbBid.deal_priority;\n bid.video = {\n context: ADPOD,\n durationSeconds: Math.floor(rtbBid.rtb.video.duration_ms / 1000),\n dealTier\n };\n bid.vastUrl = rtbBid.rtb.video.asset_url;\n break;\n case OUTSTREAM:\n bid.adResponse = serverBid;\n bid.adResponse.ad = bid.adResponse.ads[0];\n bid.adResponse.ad.video = bid.adResponse.ad.rtb.video;\n bid.vastXml = rtbBid.rtb.video.content;\n\n if (rtbBid.renderer_url) {\n const videoBid = ((bidderRequest.bids) || []).find(bid => bid.bidId === serverBid.uuid);\n const rendererOptions = deepAccess(videoBid, 'renderer.options');\n bid.renderer = newRenderer(bid.adUnitCode, rtbBid, rendererOptions);\n }\n break;\n case INSTREAM:\n bid.vastUrl = rtbBid.notify_url + '&redir=' + encodeURIComponent(rtbBid.rtb.video.asset_url);\n break;\n }\n } else if (rtbBid.rtb[NATIVE]) {\n const nativeAd = rtbBid.rtb[NATIVE];\n\n // setting up the jsTracker:\n // we put it as a data-src attribute so that the tracker isn't called\n // until we have the adId (see onBidWon)\n const jsTrackerDisarmed = rtbBid.viewability.config.replace('src=', 'data-src=');\n\n let jsTrackers = nativeAd.javascript_trackers;\n\n if (jsTrackers == undefined) {\n jsTrackers = jsTrackerDisarmed;\n } else if (isStr(jsTrackers)) {\n jsTrackers = [jsTrackers, jsTrackerDisarmed];\n } else {\n jsTrackers.push(jsTrackerDisarmed);\n }\n\n bid[NATIVE] = {\n title: nativeAd.title,\n body: nativeAd.desc,\n body2: nativeAd.desc2,\n cta: nativeAd.ctatext,\n rating: nativeAd.rating,\n sponsoredBy: nativeAd.sponsored,\n privacyLink: nativeAd.privacy_link,\n address: nativeAd.address,\n downloads: nativeAd.downloads,\n likes: nativeAd.likes,\n phone: nativeAd.phone,\n price: nativeAd.price,\n salePrice: nativeAd.saleprice,\n clickUrl: nativeAd.link.url,\n displayUrl: nativeAd.displayurl,\n clickTrackers: nativeAd.link.click_trackers,\n impressionTrackers: nativeAd.impression_trackers,\n javascriptTrackers: jsTrackers\n };\n if (nativeAd.main_img) {\n bid['native'].image = {\n url: nativeAd.main_img.url,\n height: nativeAd.main_img.height,\n width: nativeAd.main_img.width,\n };\n }\n if (nativeAd.icon) {\n bid['native'].icon = {\n url: nativeAd.icon.url,\n height: nativeAd.icon.height,\n width: nativeAd.icon.width,\n };\n }\n } else {\n Object.assign(bid, {\n width: rtbBid.rtb.banner.width,\n height: rtbBid.rtb.banner.height,\n ad: rtbBid.rtb.banner.content\n });\n try {\n if (rtbBid.rtb.trackers) {\n for (let i = 0; i < rtbBid.rtb.trackers[0].impression_urls.length; i++) {\n const url = rtbBid.rtb.trackers[0].impression_urls[i];\n const tracker = createTrackPixelHtml(url);\n bid.ad += tracker;\n }\n }\n } catch (error) {\n logError('Error appending tracking pixel', error);\n }\n }\n\n return bid;\n}\n\nfunction bidToTag(bid) {\n const tag = {};\n tag.sizes = transformSizes(bid.sizes);\n tag.primary_size = tag.sizes[0];\n tag.ad_types = [];\n tag.uuid = bid.bidId;\n if (bid.params.placementId) {\n tag.id = parseInt(bid.params.placementId, 10);\n } else {\n tag.code = bid.params.invCode;\n }\n tag.allow_smaller_sizes = bid.params.allowSmallerSizes || false;\n tag.use_pmt_rule = bid.params.usePaymentRule || false;\n tag.prebid = true;\n tag.disable_psa = true;\n const bidFloor = getBidFloor(bid);\n if (bidFloor) {\n tag.reserve = bidFloor;\n }\n if (bid.params.position) {\n tag.position = { 'above': 1, 'below': 2 }[bid.params.position] || 0;\n }\n if (bid.params.trafficSourceCode) {\n tag.traffic_source_code = bid.params.trafficSourceCode;\n }\n if (bid.params.privateSizes) {\n tag.private_sizes = transformSizes(bid.params.privateSizes);\n }\n if (bid.params.supplyType) {\n tag.supply_type = bid.params.supplyType;\n }\n if (bid.params.pubClick) {\n tag.pubclick = bid.params.pubClick;\n }\n if (bid.params.extInvCode) {\n tag.ext_inv_code = bid.params.extInvCode;\n }\n if (bid.params.publisherId) {\n tag.publisher_id = parseInt(bid.params.publisherId, 10);\n }\n if (bid.params.externalImpId) {\n tag.external_imp_id = bid.params.externalImpId;\n }\n if (!isEmpty(bid.params.keywords)) {\n tag.keywords = getANKewyordParamFromMaps(bid.params.keywords);\n }\n const gpid = deepAccess(bid, 'ortb2Imp.ext.gpid');\n if (gpid) {\n tag.gpid = gpid;\n }\n\n if (bid.mediaType === NATIVE || deepAccess(bid, `mediaTypes.${NATIVE}`)) {\n tag.ad_types.push(NATIVE);\n if (tag.sizes.length === 0) {\n tag.sizes = transformSizes([1, 1]);\n }\n\n if (bid.nativeParams) {\n const nativeRequest = buildNativeRequest(bid.nativeParams);\n tag[NATIVE] = { layouts: [nativeRequest] };\n }\n }\n\n const videoMediaType = deepAccess(bid, `mediaTypes.${VIDEO}`);\n const context = deepAccess(bid, 'mediaTypes.video.context');\n\n if (videoMediaType && context === 'adpod') {\n tag.hb_source = 7;\n } else {\n tag.hb_source = 1;\n }\n if (bid.mediaType === VIDEO || videoMediaType) {\n tag.ad_types.push(VIDEO);\n }\n\n // instream gets vastUrl, outstream gets vastXml\n if (bid.mediaType === VIDEO || (videoMediaType && context !== 'outstream')) {\n tag.require_asset_url = true;\n }\n\n if (bid.params.video) {\n tag.video = {};\n // place any valid video params on the tag\n Object.keys(bid.params.video)\n .filter(param => VIDEO_TARGETING.includes(param))\n .forEach(param => {\n switch (param) {\n case 'context':\n case 'playback_method':\n let type = bid.params.video[param];\n type = (isArray(type)) ? type[0] : type;\n tag.video[param] = VIDEO_MAPPING[param][type];\n break;\n // Deprecating tags[].video.frameworks in favor of tags[].video_frameworks\n case 'frameworks':\n break;\n default:\n tag.video[param] = bid.params.video[param];\n }\n });\n\n if (bid.params.video.frameworks && isArray(bid.params.video.frameworks)) {\n tag['video_frameworks'] = bid.params.video.frameworks;\n }\n }\n\n // use IAB ORTB values if the corresponding values weren't already set by bid.params.video\n if (videoMediaType) {\n tag.video = tag.video || {};\n Object.keys(videoMediaType)\n .filter(param => VIDEO_RTB_TARGETING.includes(param))\n .forEach(param => {\n switch (param) {\n case 'minduration':\n case 'maxduration':\n if (typeof tag.video[param] !== 'number') tag.video[param] = videoMediaType[param];\n break;\n case 'skip':\n if (typeof tag.video['skippable'] !== 'boolean') tag.video['skippable'] = (videoMediaType[param] === 1);\n break;\n case 'skipafter':\n if (typeof tag.video['skipoffset'] !== 'number') tag.video['skippoffset'] = videoMediaType[param];\n break;\n case 'playbackmethod':\n if (typeof tag.video['playback_method'] !== 'number') {\n let type = videoMediaType[param];\n type = (isArray(type)) ? type[0] : type;\n\n // we only support iab's options 1-4 at this time.\n if (type >= 1 && type <= 4) {\n tag.video['playback_method'] = type;\n }\n }\n break;\n case 'api':\n if (!tag['video_frameworks'] && isArray(videoMediaType[param])) {\n // need to read thru array; remove 6 (we don't support it), swap 4 <> 5 if found (to match our adserver mapping for these specific values)\n const apiTmp = videoMediaType[param].map(val => {\n const v = (val === 4) ? 5 : (val === 5) ? 4 : val;\n\n if (v >= 1 && v <= 5) {\n return v;\n }\n }).filter(v => v);\n tag['video_frameworks'] = apiTmp;\n }\n break;\n }\n });\n }\n\n if (bid.renderer) {\n tag.video = Object.assign({}, tag.video, { custom_renderer_present: true });\n }\n\n if (bid.params.frameworks && isArray(bid.params.frameworks)) {\n tag['banner_frameworks'] = bid.params.frameworks;\n }\n\n if (bid.mediaTypes?.banner) {\n tag.ad_types.push(BANNER);\n }\n\n if (tag.ad_types.length === 0) {\n delete tag.ad_types;\n }\n\n return tag;\n}\n\n/* Turn bid request sizes into ut-compatible format */\nfunction transformSizes(requestSizes) {\n const sizes = [];\n let sizeObj = {};\n\n if (isArray(requestSizes) && requestSizes.length === 2 &&\n !isArray(requestSizes[0])) {\n sizeObj.width = parseInt(requestSizes[0], 10);\n sizeObj.height = parseInt(requestSizes[1], 10);\n sizes.push(sizeObj);\n } else if (typeof requestSizes === 'object') {\n for (let i = 0; i < requestSizes.length; i++) {\n const size = requestSizes[i];\n sizeObj = {};\n sizeObj.width = parseInt(size[0], 10);\n sizeObj.height = parseInt(size[1], 10);\n sizes.push(sizeObj);\n }\n }\n\n return sizes;\n}\n\nfunction hasUserInfo(bid) {\n return !!bid.params.user;\n}\n\nfunction hasMemberId(bid) {\n return !!parseInt(bid.params.member, 10);\n}\n\nfunction hasAppDeviceInfo(bid) {\n if (bid.params) {\n return !!bid.params.app\n }\n}\n\nfunction hasAppId(bid) {\n if (bid.params && bid.params.app) {\n return !!bid.params.app.id\n }\n return !!bid.params.app\n}\n\nfunction hasDebug(bid) {\n return !!bid.debug\n}\n\nfunction hasAdPod(bid) {\n return (\n bid.mediaTypes &&\n bid.mediaTypes.video &&\n bid.mediaTypes.video.context === ADPOD\n );\n}\n\nfunction hasOmidSupport(bid) {\n let hasOmid = false;\n const bidderParams = bid.params;\n const videoParams = bid.params.video;\n if (bidderParams.frameworks && isArray(bidderParams.frameworks)) {\n hasOmid = bid.params.frameworks.includes(6);\n }\n if (!hasOmid && videoParams && videoParams.frameworks && isArray(videoParams.frameworks)) {\n hasOmid = bid.params.video.frameworks.includes(6);\n }\n return hasOmid;\n}\n\n/**\n * Expand an adpod placement into a set of request objects according to the\n * total adpod duration and the range of duration seconds. Sets minduration/\n * maxduration video property according to requireExactDuration configuration\n */\nfunction createAdPodRequest(tags, adPodBid) {\n const { durationRangeSec, requireExactDuration } = adPodBid.mediaTypes.video;\n\n const numberOfPlacements = getAdPodPlacementNumber(adPodBid.mediaTypes.video);\n const maxDuration = Math.max(...durationRangeSec);\n\n const tagToDuplicate = tags.filter(tag => tag.uuid === adPodBid.bidId);\n const request = fill(...tagToDuplicate, numberOfPlacements);\n\n if (requireExactDuration) {\n const divider = Math.ceil(numberOfPlacements / durationRangeSec.length);\n const chunked = chunk(request, divider);\n\n // each configured duration is set as min/maxduration for a subset of requests\n durationRangeSec.forEach((duration, index) => {\n chunked[index].map(tag => {\n setVideoProperty(tag, 'minduration', duration);\n setVideoProperty(tag, 'maxduration', duration);\n });\n });\n } else {\n // all maxdurations should be the same\n request.map(tag => setVideoProperty(tag, 'maxduration', maxDuration));\n }\n\n return request;\n}\n\nfunction getAdPodPlacementNumber(videoParams) {\n const { adPodDurationSec, durationRangeSec, requireExactDuration } = videoParams;\n const minAllowedDuration = Math.min(...durationRangeSec);\n const numberOfPlacements = Math.floor(adPodDurationSec / minAllowedDuration);\n\n return requireExactDuration\n ? Math.max(numberOfPlacements, durationRangeSec.length)\n : numberOfPlacements;\n}\n\nfunction setVideoProperty(tag, key, value) {\n if (isEmpty(tag.video)) { tag.video = {}; }\n tag.video[key] = value;\n}\n\nfunction getRtbBid(tag) {\n return tag && tag.ads && tag.ads.length && ((tag.ads) || []).find(ad => ad.rtb);\n}\n\nfunction buildNativeRequest(params) {\n const request = {};\n\n // map standard prebid native asset identifier to /ut parameters\n // e.g., tag specifies `body` but /ut only knows `description`.\n // mapping may be in form {tag: '<server name>'} or\n // {tag: {serverName: '<server name>', requiredParams: {...}}}\n Object.keys(params).forEach(key => {\n // check if one of the <server name> forms is used, otherwise\n // a mapping wasn't specified so pass the key straight through\n const requestKey =\n (NATIVE_MAPPING[key] && NATIVE_MAPPING[key].serverName) ||\n NATIVE_MAPPING[key] ||\n key;\n\n // required params are always passed on request\n const requiredParams = NATIVE_MAPPING[key] && NATIVE_MAPPING[key].requiredParams;\n request[requestKey] = Object.assign({}, requiredParams, params[key]);\n\n // convert the sizes of image/icon assets to proper format (if needed)\n const isImageAsset = !!(requestKey === NATIVE_MAPPING.image.serverName || requestKey === NATIVE_MAPPING.icon.serverName);\n if (isImageAsset && request[requestKey].sizes) {\n const sizes = request[requestKey].sizes;\n if (isArrayOfNums(sizes) || (isArray(sizes) && sizes.length > 0 && sizes.every(sz => isArrayOfNums(sz)))) {\n request[requestKey].sizes = transformSizes(request[requestKey].sizes);\n }\n }\n\n if (requestKey === NATIVE_MAPPING.privacyLink) {\n request.privacy_supported = true;\n }\n });\n\n return request;\n}\n\n/**\n * This function hides google div container for outstream bids to remove unwanted space on page. Mediafuse renderer creates a new iframe outside of google iframe to render the outstream creative.\n * @param {string} elementId element id\n */\nfunction hidedfpContainer(elementId) {\n var el = document.getElementById(elementId).querySelectorAll(\"div[id^='google_ads']\");\n if (el[0]) {\n el[0].style.setProperty('display', 'none');\n }\n}\n\nfunction hideSASIframe(elementId) {\n try {\n // find script tag with id 'sas_script'. This ensures it only works if you're using Smart Ad Server.\n const el = document.getElementById(elementId).querySelectorAll(\"script[id^='sas_script']\");\n if (el[0].nextSibling && el[0].nextSibling.localName === 'iframe') {\n el[0].nextSibling.style.setProperty('display', 'none');\n }\n } catch (e) {\n // element not found!\n }\n}\n\nfunction outstreamRender(bid) {\n hidedfpContainer(bid.adUnitCode);\n hideSASIframe(bid.adUnitCode);\n // push to render queue because ANOutstreamVideo may not be loaded\n bid.renderer.push(() => {\n window.ANOutstreamVideo.renderAd({\n tagId: bid.adResponse.tag_id,\n sizes: [bid.getSize().split('x')],\n targetId: bid.adUnitCode, // target div id to render video\n uuid: bid.adResponse.uuid,\n adResponse: bid.adResponse,\n rendererOptions: bid.renderer.getConfig()\n }, handleOutstreamRendererEvents.bind(null, bid));\n });\n}\n\nfunction handleOutstreamRendererEvents(bid, id, eventName) {\n bid.renderer.handleVideoEvent({ id, eventName });\n}\n\nfunction parseMediaType(rtbBid) {\n const adType = rtbBid.ad_type;\n if (adType === VIDEO) {\n return VIDEO;\n } else if (adType === NATIVE) {\n return NATIVE;\n } else {\n return BANNER;\n }\n}\n\n/* function addUserId(eids, id, source, rti) {\n if (id) {\n if (rti) {\n eids.push({ source, id, rti_partner: rti });\n } else {\n eids.push({ source, id });\n }\n }\n return eids;\n} */\n\nfunction getBidFloor(bid) {\n if (!isFn(bid.getFloor)) {\n return (bid.params.reserve) ? bid.params.reserve : null;\n }\n\n const floor = bid.getFloor({\n currency: 'USD',\n mediaType: '*',\n size: '*'\n });\n if (isPlainObject(floor) && !isNaN(floor.floor) && floor.currency === 'USD') {\n return floor.floor;\n }\n return null;\n}\n\nregisterBidder(spec);\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { registerModule as __r0 } from '../src/prebidGlobal.js';
|
|
2
2
|
import { registerBidder } from '../src/adapters/bidderFactory.js';
|
|
3
|
-
import {
|
|
3
|
+
import { createBuildRequests, interpretMIResponse, createOnBidWon, getUserSyncs, postRequest } from '../libraries/mediaImpactUtils/index.js';
|
|
4
4
|
const BIDDER_CODE = 'mediaimpact';
|
|
5
5
|
export const ENDPOINT_PROTOCOL = 'https';
|
|
6
6
|
export const ENDPOINT_DOMAIN = 'bidder.smartytouch.co';
|
|
@@ -10,30 +10,9 @@ export const spec = {
|
|
|
10
10
|
isBidRequestValid: function (bidRequest) {
|
|
11
11
|
return !!parseInt(bidRequest.params.unitId) || !!parseInt(bidRequest.params.partnerId);
|
|
12
12
|
},
|
|
13
|
-
buildRequests:
|
|
14
|
-
const referer = bidderRequest?.refererInfo?.page || window.location.href;
|
|
15
|
-
|
|
16
|
-
// Use the common function to build bidRequests and beaconParams
|
|
17
|
-
const {
|
|
18
|
-
bidRequests,
|
|
19
|
-
beaconParams
|
|
20
|
-
} = buildBidRequestsAndParams(validBidRequests, referer);
|
|
21
|
-
const adRequestUrl = buildEndpointUrl(ENDPOINT_PROTOCOL, ENDPOINT_DOMAIN, ENDPOINT_PATH, beaconParams);
|
|
22
|
-
return {
|
|
23
|
-
method: 'POST',
|
|
24
|
-
url: adRequestUrl,
|
|
25
|
-
data: JSON.stringify(bidRequests)
|
|
26
|
-
};
|
|
27
|
-
},
|
|
13
|
+
buildRequests: createBuildRequests(ENDPOINT_PROTOCOL, ENDPOINT_DOMAIN, ENDPOINT_PATH),
|
|
28
14
|
interpretResponse: function (serverResponse, bidRequest) {
|
|
29
|
-
|
|
30
|
-
if (typeof serverResponse.body === 'undefined') {
|
|
31
|
-
return [];
|
|
32
|
-
}
|
|
33
|
-
return validBids.map(bid => ({
|
|
34
|
-
bid: bid,
|
|
35
|
-
ad: serverResponse.body[bid.adUnitCode]
|
|
36
|
-
})).filter(item => item.ad).map(item => spec.adResponse(item.bid, item.ad));
|
|
15
|
+
return interpretMIResponse(serverResponse, bidRequest, spec);
|
|
37
16
|
},
|
|
38
17
|
adResponse: function (bid, ad) {
|
|
39
18
|
return {
|
|
@@ -51,70 +30,9 @@ export const spec = {
|
|
|
51
30
|
};
|
|
52
31
|
},
|
|
53
32
|
onBidWon: function (data) {
|
|
54
|
-
|
|
55
|
-
const adBidWonUrl = buildEndpointUrl(ENDPOINT_PROTOCOL, ENDPOINT_DOMAIN, unitWon.path);
|
|
56
|
-
if (unitWon.method === 'POST') {
|
|
57
|
-
postRequest(adBidWonUrl, JSON.stringify(unitWon.data));
|
|
58
|
-
}
|
|
59
|
-
});
|
|
60
|
-
return true;
|
|
33
|
+
return createOnBidWon(ENDPOINT_PROTOCOL, ENDPOINT_DOMAIN, postRequest)(data);
|
|
61
34
|
},
|
|
62
|
-
getUserSyncs:
|
|
63
|
-
const syncs = [];
|
|
64
|
-
if (!syncOptions.iframeEnabled && !syncOptions.pixelEnabled) {
|
|
65
|
-
return syncs;
|
|
66
|
-
}
|
|
67
|
-
const appendGdprParams = function (url, gdprParams) {
|
|
68
|
-
if (gdprParams === null) {
|
|
69
|
-
return url;
|
|
70
|
-
}
|
|
71
|
-
return url + (url.indexOf('?') >= 0 ? '&' : '?') + gdprParams;
|
|
72
|
-
};
|
|
73
|
-
let gdprParams = null;
|
|
74
|
-
if (gdprConsent) {
|
|
75
|
-
if (typeof gdprConsent.gdprApplies === 'boolean') {
|
|
76
|
-
gdprParams = `gdpr=${Number(gdprConsent.gdprApplies)}&gdpr_consent=${gdprConsent.consentString}`;
|
|
77
|
-
} else {
|
|
78
|
-
gdprParams = `gdpr_consent=${gdprConsent.consentString}`;
|
|
79
|
-
}
|
|
80
|
-
}
|
|
81
|
-
serverResponses.forEach(resp => {
|
|
82
|
-
if (resp.body) {
|
|
83
|
-
Object.keys(resp.body).map(function (key, index) {
|
|
84
|
-
const respObject = resp.body[key];
|
|
85
|
-
if (respObject['syncs'] !== undefined && Array.isArray(respObject.syncs) && respObject.syncs.length > 0) {
|
|
86
|
-
if (syncOptions.iframeEnabled) {
|
|
87
|
-
respObject.syncs.filter(function (syncIframeObject) {
|
|
88
|
-
if (syncIframeObject['type'] !== undefined && syncIframeObject['link'] !== undefined && syncIframeObject.type === 'iframe') {
|
|
89
|
-
return true;
|
|
90
|
-
}
|
|
91
|
-
return false;
|
|
92
|
-
}).forEach(function (syncIframeObject) {
|
|
93
|
-
syncs.push({
|
|
94
|
-
type: 'iframe',
|
|
95
|
-
url: appendGdprParams(syncIframeObject.link, gdprParams)
|
|
96
|
-
});
|
|
97
|
-
});
|
|
98
|
-
}
|
|
99
|
-
if (syncOptions.pixelEnabled) {
|
|
100
|
-
respObject.syncs.filter(function (syncImageObject) {
|
|
101
|
-
if (syncImageObject['type'] !== undefined && syncImageObject['link'] !== undefined && syncImageObject.type === 'image') {
|
|
102
|
-
return true;
|
|
103
|
-
}
|
|
104
|
-
return false;
|
|
105
|
-
}).forEach(function (syncImageObject) {
|
|
106
|
-
syncs.push({
|
|
107
|
-
type: 'image',
|
|
108
|
-
url: appendGdprParams(syncImageObject.link, gdprParams)
|
|
109
|
-
});
|
|
110
|
-
});
|
|
111
|
-
}
|
|
112
|
-
}
|
|
113
|
-
});
|
|
114
|
-
}
|
|
115
|
-
});
|
|
116
|
-
return syncs;
|
|
117
|
-
}
|
|
35
|
+
getUserSyncs: getUserSyncs
|
|
118
36
|
};
|
|
119
37
|
registerBidder(spec);
|
|
120
38
|
__r0('mediaimpactBidAdapter');
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mediaimpactBidAdapter.js","names":["registerModule","__r0","registerBidder","buildBidRequestsAndParams","postRequest","buildEndpointUrl","BIDDER_CODE","ENDPOINT_PROTOCOL","ENDPOINT_DOMAIN","ENDPOINT_PATH","spec","code","isBidRequestValid","bidRequest","parseInt","params","unitId","partnerId","buildRequests","validBidRequests","bidderRequest","referer","refererInfo","page","window","location","href","bidRequests","beaconParams","adRequestUrl","method","url","data","JSON","stringify","interpretResponse","serverResponse","validBids","parse","body","map","bid","ad","adUnitCode","filter","item","adResponse","requestId","bidId","cpm","width","height","ttl","creativeId","netRevenue","currency","winNotification","meta","onBidWon","forEach","unitWon","adBidWonUrl","path","getUserSyncs","syncOptions","serverResponses","gdprConsent","uspConsent","syncs","iframeEnabled","pixelEnabled","appendGdprParams","gdprParams","indexOf","gdprApplies","Number","consentString","resp","Object","keys","key","index","respObject","undefined","Array","isArray","length","syncIframeObject","type","push","link","syncImageObject"],"sourceRoot":"../../..","sources":["modules/mediaimpactBidAdapter.js"],"sourcesContent":["import { registerBidder } from '../src/adapters/bidderFactory.js';\nimport { buildBidRequestsAndParams, postRequest, buildEndpointUrl } from '../libraries/mediaImpactUtils/index.js';\n\nconst BIDDER_CODE = 'mediaimpact';\nexport const ENDPOINT_PROTOCOL = 'https';\nexport const ENDPOINT_DOMAIN = 'bidder.smartytouch.co';\nexport const ENDPOINT_PATH = '/hb/bid';\n\nexport const spec = {\n code: BIDDER_CODE,\n\n isBidRequestValid: function (bidRequest) {\n return !!parseInt(bidRequest.params.unitId) || !!parseInt(bidRequest.params.partnerId);\n },\n\n buildRequests: function (validBidRequests, bidderRequest) {\n const referer = bidderRequest?.refererInfo?.page || window.location.href;\n\n // Use the common function to build bidRequests and beaconParams\n const { bidRequests, beaconParams } = buildBidRequestsAndParams(validBidRequests, referer);\n\n const adRequestUrl = buildEndpointUrl(\n ENDPOINT_PROTOCOL,\n ENDPOINT_DOMAIN,\n ENDPOINT_PATH,\n beaconParams\n );\n\n return {\n method: 'POST',\n url: adRequestUrl,\n data: JSON.stringify(bidRequests),\n };\n },\n\n interpretResponse: function (serverResponse, bidRequest) {\n const validBids = JSON.parse(bidRequest.data);\n\n if (typeof serverResponse.body === 'undefined') {\n return [];\n }\n\n return validBids\n .map(bid => ({ bid: bid, ad: serverResponse.body[bid.adUnitCode] }))\n .filter(item => item.ad)\n .map(item => spec.adResponse(item.bid, item.ad));\n },\n\n adResponse: function (bid, ad) {\n return {\n requestId: bid.bidId,\n ad: ad.ad,\n cpm: ad.cpm,\n width: ad.width,\n height: ad.height,\n ttl: 60,\n creativeId: ad.creativeId,\n netRevenue: ad.netRevenue,\n currency: ad.currency,\n winNotification: ad.winNotification,\n meta: ad.meta || {},\n };\n },\n\n onBidWon: function (data) {\n data.winNotification.forEach(function (unitWon) {\n const adBidWonUrl = buildEndpointUrl(\n ENDPOINT_PROTOCOL,\n ENDPOINT_DOMAIN,\n unitWon.path\n );\n\n if (unitWon.method === 'POST') {\n postRequest(adBidWonUrl, JSON.stringify(unitWon.data));\n }\n });\n\n return true;\n },\n\n getUserSyncs: function(syncOptions, serverResponses, gdprConsent, uspConsent) {\n const syncs = [];\n\n if (!syncOptions.iframeEnabled && !syncOptions.pixelEnabled) {\n return syncs;\n }\n\n const appendGdprParams = function (url, gdprParams) {\n if (gdprParams === null) {\n return url;\n }\n\n return url + (url.indexOf('?') >= 0 ? '&' : '?') + gdprParams;\n };\n\n let gdprParams = null;\n if (gdprConsent) {\n if (typeof gdprConsent.gdprApplies === 'boolean') {\n gdprParams = `gdpr=${Number(gdprConsent.gdprApplies)}&gdpr_consent=${gdprConsent.consentString}`;\n } else {\n gdprParams = `gdpr_consent=${gdprConsent.consentString}`;\n }\n }\n\n serverResponses.forEach(resp => {\n if (resp.body) {\n Object.keys(resp.body).map(function(key, index) {\n const respObject = resp.body[key];\n if (respObject['syncs'] !== undefined &&\n Array.isArray(respObject.syncs) &&\n respObject.syncs.length > 0) {\n if (syncOptions.iframeEnabled) {\n respObject.syncs.filter(function (syncIframeObject) {\n if (syncIframeObject['type'] !== undefined &&\n syncIframeObject['link'] !== undefined &&\n syncIframeObject.type === 'iframe') { return true; }\n return false;\n }).forEach(function (syncIframeObject) {\n syncs.push({\n type: 'iframe',\n url: appendGdprParams(syncIframeObject.link, gdprParams)\n });\n });\n }\n if (syncOptions.pixelEnabled) {\n respObject.syncs.filter(function (syncImageObject) {\n if (syncImageObject['type'] !== undefined &&\n syncImageObject['link'] !== undefined &&\n syncImageObject.type === 'image') { return true; }\n return false;\n }).forEach(function (syncImageObject) {\n syncs.push({\n type: 'image',\n url: appendGdprParams(syncImageObject.link, gdprParams)\n });\n });\n }\n }\n });\n }\n });\n\n return syncs;\n },\n};\n\nregisterBidder(spec);\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"mediaimpactBidAdapter.js","names":["registerModule","__r0","registerBidder","createBuildRequests","interpretMIResponse","createOnBidWon","getUserSyncs","postRequest","BIDDER_CODE","ENDPOINT_PROTOCOL","ENDPOINT_DOMAIN","ENDPOINT_PATH","spec","code","isBidRequestValid","bidRequest","parseInt","params","unitId","partnerId","buildRequests","interpretResponse","serverResponse","adResponse","bid","ad","requestId","bidId","cpm","width","height","ttl","creativeId","netRevenue","currency","winNotification","meta","onBidWon","data"],"sourceRoot":"../../..","sources":["modules/mediaimpactBidAdapter.js"],"sourcesContent":["import { registerBidder } from '../src/adapters/bidderFactory.js';\nimport { createBuildRequests, interpretMIResponse, createOnBidWon, getUserSyncs, postRequest } from '../libraries/mediaImpactUtils/index.js';\n\nconst BIDDER_CODE = 'mediaimpact';\nexport const ENDPOINT_PROTOCOL = 'https';\nexport const ENDPOINT_DOMAIN = 'bidder.smartytouch.co';\nexport const ENDPOINT_PATH = '/hb/bid';\n\nexport const spec = {\n code: BIDDER_CODE,\n\n isBidRequestValid: function (bidRequest) {\n return !!parseInt(bidRequest.params.unitId) || !!parseInt(bidRequest.params.partnerId);\n },\n\n buildRequests: createBuildRequests(ENDPOINT_PROTOCOL, ENDPOINT_DOMAIN, ENDPOINT_PATH),\n\n interpretResponse: function (serverResponse, bidRequest) {\n return interpretMIResponse(serverResponse, bidRequest, spec);\n },\n\n adResponse: function (bid, ad) {\n return {\n requestId: bid.bidId,\n ad: ad.ad,\n cpm: ad.cpm,\n width: ad.width,\n height: ad.height,\n ttl: 60,\n creativeId: ad.creativeId,\n netRevenue: ad.netRevenue,\n currency: ad.currency,\n winNotification: ad.winNotification,\n meta: ad.meta || {},\n };\n },\n\n onBidWon: function (data) {\n return createOnBidWon(ENDPOINT_PROTOCOL, ENDPOINT_DOMAIN, postRequest)(data);\n },\n\n getUserSyncs: getUserSyncs,\n};\n\nregisterBidder(spec);\n"],"mappings":"AAAA,SAAQA,cAAc,IAAIC,IAAI,QAAO,wBAAwB;AAA7D,SAASC,cAAc,QAAQ,kCAAkC;AACjE,SAASC,mBAAmB,EAAEC,mBAAmB,EAAEC,cAAc,EAAEC,YAAY,EAAEC,WAAW,QAAQ,wCAAwC;AAE5I,MAAMC,WAAW,GAAG,aAAa;AACjC,OAAO,MAAMC,iBAAiB,GAAG,OAAO;AACxC,OAAO,MAAMC,eAAe,GAAG,uBAAuB;AACtD,OAAO,MAAMC,aAAa,GAAG,SAAS;AAEtC,OAAO,MAAMC,IAAI,GAAG;EAClBC,IAAI,EAAEL,WAAW;EAEjBM,iBAAiB,EAAE,SAAAA,CAAUC,UAAU,EAAE;IACvC,OAAO,CAAC,CAACC,QAAQ,CAACD,UAAU,CAACE,MAAM,CAACC,MAAM,CAAC,IAAI,CAAC,CAACF,QAAQ,CAACD,UAAU,CAACE,MAAM,CAACE,SAAS,CAAC;EACxF,CAAC;EAEDC,aAAa,EAAEjB,mBAAmB,CAACM,iBAAiB,EAAEC,eAAe,EAAEC,aAAa,CAAC;EAErFU,iBAAiB,EAAE,SAAAA,CAAUC,cAAc,EAAEP,UAAU,EAAE;IACvD,OAAOX,mBAAmB,CAACkB,cAAc,EAAEP,UAAU,EAAEH,IAAI,CAAC;EAC9D,CAAC;EAEDW,UAAU,EAAE,SAAAA,CAAUC,GAAG,EAAEC,EAAE,EAAE;IAC7B,OAAO;MACLC,SAAS,EAAEF,GAAG,CAACG,KAAK;MACpBF,EAAE,EAAEA,EAAE,CAACA,EAAE;MACTG,GAAG,EAAEH,EAAE,CAACG,GAAG;MACXC,KAAK,EAAEJ,EAAE,CAACI,KAAK;MACfC,MAAM,EAAEL,EAAE,CAACK,MAAM;MACjBC,GAAG,EAAE,EAAE;MACPC,UAAU,EAAEP,EAAE,CAACO,UAAU;MACzBC,UAAU,EAAER,EAAE,CAACQ,UAAU;MACzBC,QAAQ,EAAET,EAAE,CAACS,QAAQ;MACrBC,eAAe,EAAEV,EAAE,CAACU,eAAe;MACnCC,IAAI,EAAEX,EAAE,CAACW,IAAI,IAAI,CAAC;IACpB,CAAC;EACH,CAAC;EAEDC,QAAQ,EAAE,SAAAA,CAAUC,IAAI,EAAE;IACxB,OAAOjC,cAAc,CAACI,iBAAiB,EAAEC,eAAe,EAAEH,WAAW,CAAC,CAAC+B,IAAI,CAAC;EAC9E,CAAC;EAEDhC,YAAY,EAAEA;AAChB,CAAC;AAEDJ,cAAc,CAACU,IAAI,CAAC;AA5CpBX,IAAI,CAAC,uBAAuB,CAAC","ignoreList":[]}
|
|
@@ -92,7 +92,7 @@ export const spec = {
|
|
|
92
92
|
codes: codes,
|
|
93
93
|
// TODO: is 'page' the right value here?
|
|
94
94
|
referer: encodeURIComponent(bidderRequest.refererInfo.page || bidderRequest.refererInfo.topmostLocation),
|
|
95
|
-
pbjs: "10.
|
|
95
|
+
pbjs: "10.5.0"
|
|
96
96
|
};
|
|
97
97
|
if (bidderRequest) {
|
|
98
98
|
// modules informations (gdpr, ccpa, schain, userId)
|
|
@@ -214,7 +214,7 @@ export const spec = {
|
|
|
214
214
|
return;
|
|
215
215
|
}
|
|
216
216
|
const params = {
|
|
217
|
-
pbjs: "10.
|
|
217
|
+
pbjs: "10.5.0",
|
|
218
218
|
referer: encodeURIComponent(getRefererInfo().page || getRefererInfo().topmostLocation)
|
|
219
219
|
};
|
|
220
220
|
const endpoint = document.location.search.match(/msq_test=true/) ? BIDDER_URL_TEST : BIDDER_URL_PROD;
|