prebid.js 10.2.0 → 10.4.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/scripts/codepath-notification +1 -0
- package/creative/renderers/display/renderer.js +3 -4
- package/dist/chunks/1plusXRtdProvider.js +1 -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/adkernelAdnBidAdapter.metadata.js +1 -1
- package/dist/chunks/adkernelBidAdapter.metadata.js +1 -1
- package/dist/chunks/adlooxRtdProvider.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/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.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.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.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/appnexusUtils.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/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.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/carodaBidAdapter.js +1 -1
- package/dist/chunks/carodaBidAdapter.metadata.js +1 -1
- package/dist/chunks/categoryTranslation.metadata.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/compassBidAdapter.metadata.js +1 -1
- package/dist/chunks/conceptxBidAdapter.metadata.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/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/cryptoUtils.js +1 -0
- 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 +13 -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/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/getintentBidAdapter.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/iasRtdProvider.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.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/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/jwplayerRtdProvider.js +1 -1
- package/dist/chunks/jwplayerVideoProvider.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/kubientBidAdapter.js +1 -1
- package/dist/chunks/kubientBidAdapter.metadata.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/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.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/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/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/mobkoiBidAdapter.metadata.js +1 -1
- package/dist/chunks/mobkoiIdSystem.metadata.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/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/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/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.js +1 -1
- package/dist/chunks/pulsepointBidAdapter.metadata.js +1 -1
- package/dist/chunks/pwbidBidAdapter.metadata.js +1 -1
- package/dist/chunks/pxyzBidAdapter.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.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/rubiconBidAdapter.js +1 -1
- package/dist/chunks/rubiconBidAdapter.metadata.js +1 -1
- package/dist/chunks/rumbleBidAdapter.js +1 -0
- package/dist/chunks/rumbleBidAdapter.metadata.js +1 -0
- 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 -0
- package/dist/chunks/sevioBidAdapter.metadata.js +1 -0
- 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/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/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/themoneytizerBidAdapter.metadata.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/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/vidazooBidAdapter.metadata.js +1 -1
- package/dist/chunks/vidazooUtils.js +1 -1
- package/dist/chunks/videobyteBidAdapter.js +1 -1
- package/dist/chunks/vidoomyBidAdapter.metadata.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.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.metadata.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 +443 -438
- package/dist/src/creative/renderers/display/renderer.js +3 -4
- package/dist/src/creative/renderers/display/renderer.js.map +1 -1
- package/dist/src/libraries/adagioUtils/adagioUtils.js +1 -1
- package/dist/src/libraries/analyticsAdapter/AnalyticsAdapter.js.map +1 -1
- package/dist/src/libraries/appnexusUtils/anKeywords.js +15 -1
- package/dist/src/libraries/appnexusUtils/anKeywords.js.map +1 -1
- package/dist/src/libraries/consentManagement/cmUtils.js.map +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/cryptoUtils/wallets.js +14 -0
- package/dist/src/libraries/cryptoUtils/wallets.js.map +1 -0
- package/dist/src/libraries/dspxUtils/bidderUtils.js.map +1 -1
- package/dist/src/libraries/impUtils.js +36 -0
- package/dist/src/libraries/impUtils.js.map +1 -0
- 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/medianetUtils/constants.js +1 -1
- package/dist/src/libraries/nexx360Utils/index.js +1 -1
- package/dist/src/libraries/nexx360Utils/index.js.map +1 -1
- package/dist/src/libraries/ortbConverter/converter.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/libraries/video/constants/events.js.map +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/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/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/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/kubientBidAdapter.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/rumbleBidAdapter.js +2 -0
- 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 +2 -0
- 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/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/themoneytizerBidAdapter.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/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/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/1plusXRtdProvider.js +6 -2
- package/dist/src/modules/1plusXRtdProvider.js.map +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/adWMGBidAdapter.js.map +1 -1
- package/dist/src/modules/adagioAnalyticsAdapter.js +1 -1
- package/dist/src/modules/adagioBidAdapter.js +1 -1
- package/dist/src/modules/addefendBidAdapter.js +1 -1
- package/dist/src/modules/adgenerationBidAdapter.js +1 -1
- package/dist/src/modules/adlooxRtdProvider.js +1 -1
- package/dist/src/modules/admixerBidAdapter.js +5 -4
- package/dist/src/modules/admixerBidAdapter.js.map +1 -1
- package/dist/src/modules/adqueryBidAdapter.js +1 -1
- package/dist/src/modules/adrelevantisBidAdapter.js +1 -1
- package/dist/src/modules/adspiritBidAdapter.js.map +1 -1
- package/dist/src/modules/adstirBidAdapter.js +1 -1
- package/dist/src/modules/adtrgtmeBidAdapter.js +1 -1
- package/dist/src/modules/adtrgtmeBidAdapter.js.map +1 -1
- package/dist/src/modules/advertisingBidAdapter.js +2 -2
- package/dist/src/modules/adxcgAnalyticsAdapter.js +1 -1
- package/dist/src/modules/adxcgBidAdapter.js +4 -39
- package/dist/src/modules/adxcgBidAdapter.js.map +1 -1
- package/dist/src/modules/adyoulikeBidAdapter.js +1 -1
- package/dist/src/modules/agmaAnalyticsAdapter.js +1 -1
- package/dist/src/modules/ajaBidAdapter.js +1 -1
- package/dist/src/modules/amxBidAdapter.js +2 -2
- package/dist/src/modules/amxBidAdapter.js.map +1 -1
- 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 +2 -2
- package/dist/src/modules/asoBidAdapter.js +1 -1
- package/dist/src/modules/axonixBidAdapter.js +1 -1
- package/dist/src/modules/beopBidAdapter.js +2 -2
- package/dist/src/modules/bidglassBidAdapter.js +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/carodaBidAdapter.js +1 -1
- package/dist/src/modules/chromeAiRtdProvider.js.map +1 -1
- package/dist/src/modules/chtnwBidAdapter.js +1 -1
- package/dist/src/modules/concertBidAdapter.js +1 -1
- package/dist/src/modules/connectadBidAdapter.js +1 -1
- package/dist/src/modules/consentManagementGpp.js.map +1 -1
- package/dist/src/modules/consentManagementTcf.js.map +1 -1
- package/dist/src/modules/consentManagementUsp.js.map +1 -1
- package/dist/src/modules/consumableBidAdapter.js +1 -1
- package/dist/src/modules/contxtfulBidAdapter.js +1 -1
- package/dist/src/modules/conversantBidAdapter.js +1 -1
- package/dist/src/modules/craftBidAdapter.js +1 -1
- package/dist/src/modules/criteoBidAdapter.js +2 -2
- package/dist/src/modules/currency.js.map +1 -1
- package/dist/src/modules/cwireBidAdapter.js +1 -1
- package/dist/src/modules/cwireBidAdapter.js.map +1 -1
- package/dist/src/modules/dailymotionBidAdapter.js +1 -1
- package/dist/src/modules/dailymotionBidAdapter.js.map +1 -1
- package/dist/src/modules/dchain.js.map +1 -1
- package/dist/src/modules/dspxBidAdapter.js +1 -1
- package/dist/src/modules/dspxBidAdapter.js.map +1 -1
- package/dist/src/modules/dxkultureBidAdapter.js +1 -1
- package/dist/src/modules/eightPodBidAdapter.js.map +1 -1
- package/dist/src/modules/eplanningBidAdapter.js +1 -1
- package/dist/src/modules/equativBidAdapter.js +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 +2 -2
- package/dist/src/modules/finativeBidAdapter.js +1 -1
- package/dist/src/modules/genericAnalyticsAdapter.js.map +1 -1
- package/dist/src/modules/geolocationRtdProvider.js.map +1 -1
- package/dist/src/modules/getintentBidAdapter.js +4 -2
- package/dist/src/modules/getintentBidAdapter.js.map +1 -1
- package/dist/src/modules/gmosspBidAdapter.js +1 -1
- package/dist/src/modules/gmosspBidAdapter.js.map +1 -1
- package/dist/src/modules/gppControl_usstates.js.map +1 -1
- package/dist/src/modules/gptPreAuction.d.ts +3 -3
- package/dist/src/modules/gptPreAuction.js.map +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/iasRtdProvider.js +110 -5
- package/dist/src/modules/iasRtdProvider.js.map +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/insticatorBidAdapter.js +1 -1
- package/dist/src/modules/intentIqAnalyticsAdapter.js +1 -1
- package/dist/src/modules/intentIqAnalyticsAdapter.js.map +1 -1
- package/dist/src/modules/intentIqIdSystem.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 +1 -1
- package/dist/src/modules/jwplayerRtdProvider.js +6 -2
- package/dist/src/modules/jwplayerRtdProvider.js.map +1 -1
- package/dist/src/modules/jwplayerVideoProvider.js +12 -9
- package/dist/src/modules/jwplayerVideoProvider.js.map +1 -1
- package/dist/src/modules/kargoBidAdapter.js +1 -1
- package/dist/src/modules/kimberliteBidAdapter.js +1 -1
- package/dist/src/modules/kubientBidAdapter.js +0 -1
- package/dist/src/modules/kubientBidAdapter.js.map +1 -1
- package/dist/src/modules/lassoBidAdapter.js +1 -1
- package/dist/src/modules/lifestreetBidAdapter.js +1 -1
- package/dist/src/modules/logicadBidAdapter.js +1 -1
- package/dist/src/modules/luceadBidAdapter.js +1 -1
- package/dist/src/modules/mabidderBidAdapter.js +1 -1
- package/dist/src/modules/madsenseBidAdapter.js +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 +2 -2
- package/dist/src/modules/medianetAnalyticsAdapter.js.map +1 -1
- package/dist/src/modules/medianetBidAdapter.js +6 -2
- package/dist/src/modules/medianetBidAdapter.js.map +1 -1
- package/dist/src/modules/mediasquareBidAdapter.js +2 -2
- package/dist/src/modules/mgidBidAdapter.js +1 -1
- package/dist/src/modules/michaoBidAdapter.js.map +1 -1
- package/dist/src/modules/missenaBidAdapter.js +1 -1
- package/dist/src/modules/mobilefuseBidAdapter.js +1 -1
- package/dist/src/modules/multibid/index.js.map +1 -1
- package/dist/src/modules/nextMillenniumBidAdapter.js +1 -1
- package/dist/src/modules/nexverseBidAdapter.js.map +1 -1
- package/dist/src/modules/nobidAnalyticsAdapter.js +1 -1
- package/dist/src/modules/nobidBidAdapter.js +1 -1
- package/dist/src/modules/nodalsAiRtdProvider.js +4 -2
- package/dist/src/modules/nodalsAiRtdProvider.js.map +1 -1
- package/dist/src/modules/oguryBidAdapter.js +1 -1
- package/dist/src/modules/onetagBidAdapter.js +1 -1
- package/dist/src/modules/onetagBidAdapter.js.map +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/pixfutureBidAdapter.js +2 -2
- package/dist/src/modules/prebidServerBidAdapter/index.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 +2 -2
- package/dist/src/modules/pubmaticBidAdapter.js +23 -3
- package/dist/src/modules/pubmaticBidAdapter.js.map +1 -1
- package/dist/src/modules/pubmaticRtdProvider.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 +2 -38
- package/dist/src/modules/pulsepointBidAdapter.js.map +1 -1
- package/dist/src/modules/pxyzBidAdapter.js +1 -1
- package/dist/src/modules/quantcastBidAdapter.js +1 -1
- package/dist/src/modules/readpeakBidAdapter.js +1 -1
- package/dist/src/modules/readpeakBidAdapter.js.map +1 -1
- package/dist/src/modules/relaidoBidAdapter.js +1 -1
- package/dist/src/modules/retailspotBidAdapter.js +1 -1
- package/dist/src/modules/rhythmoneBidAdapter.js +1 -1
- package/dist/src/modules/rtdModule/index.js.map +1 -1
- package/dist/src/modules/rtdModule/spec.js.map +1 -1
- package/dist/src/modules/rubiconBidAdapter.js +6 -2
- package/dist/src/modules/rubiconBidAdapter.js.map +1 -1
- package/dist/src/modules/rumbleBidAdapter.js +103 -0
- package/dist/src/modules/rumbleBidAdapter.js.map +1 -0
- package/dist/src/modules/schain.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 +254 -0
- package/dist/src/modules/sevioBidAdapter.js.map +1 -0
- package/dist/src/modules/sharedIdSystem.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/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/storageControl.js.map +1 -1
- package/dist/src/modules/stvBidAdapter.js +1 -1
- package/dist/src/modules/sublimeBidAdapter.js +2 -2
- package/dist/src/modules/taboolaBidAdapter.js +1 -1
- package/dist/src/modules/tappxBidAdapter.js +1 -1
- package/dist/src/modules/targetVideoBidAdapter.js +1 -1
- package/dist/src/modules/tcfControl.js.map +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 -3
- package/dist/src/modules/themoneytizerBidAdapter.js.map +1 -1
- package/dist/src/modules/trionBidAdapter.js +1 -1
- package/dist/src/modules/tripleliftBidAdapter.js +1 -1
- package/dist/src/modules/ttdBidAdapter.js +9 -2
- package/dist/src/modules/ttdBidAdapter.js.map +1 -1
- package/dist/src/modules/ucfunnelAnalyticsAdapter.js +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/index.js +12 -8
- package/dist/src/modules/userId/index.js.map +1 -1
- package/dist/src/modules/userId/spec.js.map +1 -1
- package/dist/src/modules/validationFpdModule/index.js.map +1 -1
- package/dist/src/modules/videoModule/index.js.map +1 -1
- package/dist/src/modules/videobyteBidAdapter.js +1 -1
- package/dist/src/modules/visxBidAdapter.js +1 -1
- package/dist/src/modules/vuukleBidAdapter.js +1 -1
- package/dist/src/modules/weboramaRtdProvider.js +30 -11
- package/dist/src/modules/weboramaRtdProvider.js.map +1 -1
- package/dist/src/modules/welectBidAdapter.js.map +1 -1
- package/dist/src/modules/widespaceBidAdapter.js +1 -1
- package/dist/src/modules/winrBidAdapter.js +1 -1
- package/dist/src/modules/yahooAdsBidAdapter.js +1 -1
- package/dist/src/modules/yandexBidAdapter.js +47 -15
- package/dist/src/modules/yandexBidAdapter.js.map +1 -1
- package/dist/src/modules/yieldmoBidAdapter.js +2 -2
- package/dist/src/modules/yieldoneAnalyticsAdapter.js +1 -1
- package/dist/src/package.json +2 -3
- package/dist/src/public/rumbleBidAdapter.js +1 -0
- package/dist/src/public/sevioBidAdapter.js +1 -0
- package/dist/src/src/activities/params.d.ts +5 -0
- package/dist/src/src/activities/params.js +6 -0
- package/dist/src/src/activities/params.js.map +1 -1
- package/dist/src/src/activities/redactor.js.map +1 -1
- package/dist/src/src/adRendering.js.map +1 -1
- package/dist/src/src/adUnits.js.map +1 -1
- package/dist/src/src/adapterManager.js.map +1 -1
- package/dist/src/src/adapters/bidderFactory.js.map +1 -1
- package/dist/src/src/ajax.js.map +1 -1
- package/dist/src/src/auction.js.map +1 -1
- package/dist/src/src/banner.js.map +1 -1
- package/dist/src/src/bidTTL.js.map +1 -1
- package/dist/src/src/bidderSettings.js.map +1 -1
- package/dist/src/src/bidfactory.js.map +1 -1
- package/dist/src/src/config.js +3 -3
- package/dist/src/src/config.js.map +1 -1
- package/dist/src/src/consentHandler.js.map +1 -1
- package/dist/src/src/constants.js.map +1 -1
- package/dist/src/src/cpmBucketManager.js.map +1 -1
- package/dist/src/src/debugging.js +1 -1
- package/dist/src/src/events.js.map +1 -1
- package/dist/src/src/fpd/enrichment.js.map +1 -1
- package/dist/src/src/hook.js.map +1 -1
- package/dist/src/src/mediaTypes.js.map +1 -1
- package/dist/src/src/native.js.map +1 -1
- package/dist/src/src/prebid.js +2 -2
- package/dist/src/src/prebid.js.map +1 -1
- package/dist/src/src/prebidGlobal.js.map +1 -1
- package/dist/src/src/refererDetection.js.map +1 -1
- package/dist/src/src/storageManager.js +26 -25
- package/dist/src/src/storageManager.js.map +1 -1
- package/dist/src/src/targeting.d.ts +7 -7
- package/dist/src/src/targeting.js.map +1 -1
- package/dist/src/src/types/common.d.js.map +1 -1
- package/dist/src/src/types/common.d.ts +29 -29
- package/dist/src/src/types/local/buildOptions.d.js.map +1 -1
- package/dist/src/src/types/local/shim.d.js.map +1 -1
- package/dist/src/src/types/objects.d.js.map +1 -1
- package/dist/src/src/types/objects.d.ts +15 -15
- package/dist/src/src/types/ortb/common.d.js.map +1 -1
- package/dist/src/src/types/ortb/common.d.ts +1 -1
- package/dist/src/src/types/ortb/ext/dchain.d.js.map +1 -1
- package/dist/src/src/types/ortb/ext/dchain.d.ts +69 -69
- package/dist/src/src/types/ortb/ext/dsa.d.js.map +1 -1
- package/dist/src/src/types/ortb/ext/dsa.d.ts +50 -50
- package/dist/src/src/types/ortb/request.d.js.map +1 -1
- package/dist/src/src/types/ortb/request.d.ts +21 -21
- package/dist/src/src/types/ortb/response.d.js.map +1 -1
- package/dist/src/src/types/ortb/response.d.ts +6 -6
- package/dist/src/src/types/summary/core.d.ts +5 -5
- package/dist/src/src/userSync.js.map +1 -1
- package/dist/src/src/utils/objects.js.map +1 -1
- package/dist/src/src/utils/perfMetrics.js.map +1 -1
- package/dist/src/src/utils/promise.js.map +1 -1
- package/dist/src/src/utils/ttlCollection.js.map +1 -1
- package/dist/src/src/video.js.map +1 -1
- package/dist/src/src/videoCache.js.map +1 -1
- package/dist/src/test/helpers/index_adapter_utils.js +1 -1
- package/dist/src/test/helpers/index_adapter_utils.js.map +1 -1
- package/dist/src/test/helpers/refererDetectionHelper.js.map +1 -1
- package/dist/src/test/mocks/timers.js +12 -12
- package/dist/src/test/mocks/timers.js.map +1 -1
- package/dist/src/test/spec/adloader_spec.js.map +1 -1
- package/dist/src/test/spec/config_spec.js +9 -3
- package/dist/src/test/spec/config_spec.js.map +1 -1
- package/dist/src/test/spec/libraries/greedy/greedyPromise_spec.js +2 -2
- package/dist/src/test/spec/libraries/greedy/greedyPromise_spec.js.map +1 -1
- package/dist/src/test/spec/modules/1plusXRtdProvider_spec.js +2 -9
- package/dist/src/test/spec/modules/1plusXRtdProvider_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/adgridBidAdapter_spec.js.map +1 -1
- package/dist/src/test/spec/modules/adkernelAdnBidAdapter_spec.js.map +1 -1
- package/dist/src/test/spec/modules/adkernelBidAdapter_spec.js.map +1 -1
- package/dist/src/test/spec/modules/admediaBidAdapter_spec.js.map +1 -1
- package/dist/src/test/spec/modules/adnuntiusBidAdapter_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/adspiritBidAdapter_spec.js.map +1 -1
- package/dist/src/test/spec/modules/adtrgtmeBidAdapter_spec.js +1 -1
- package/dist/src/test/spec/modules/adtrgtmeBidAdapter_spec.js.map +1 -1
- package/dist/src/test/spec/modules/adtrueBidAdapter_spec.js.map +1 -1
- package/dist/src/test/spec/modules/advertisingBidAdapter_spec.js +9 -9
- package/dist/src/test/spec/modules/advertisingBidAdapter_spec.js.map +1 -1
- 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.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/datablocksBidAdapter_spec.js.map +1 -1
- package/dist/src/test/spec/modules/deepintentBidAdapter_spec.js.map +1 -1
- package/dist/src/test/spec/modules/dexertoBidAdapter_spec.js.map +1 -1
- package/dist/src/test/spec/modules/dochaseBidAdapter_spec.js.map +1 -1
- package/dist/src/test/spec/modules/dspxBidAdapter_spec.js.map +1 -1
- package/dist/src/test/spec/modules/dxkultureBidAdapter_spec.js +1 -1
- package/dist/src/test/spec/modules/ehealthcaresolutionsBidAdapter_spec.js.map +1 -1
- package/dist/src/test/spec/modules/enrichmentLiftMeasurement_spec.js.map +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/equativBidAdapter_spec.js.map +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/finativeBidAdapter_spec.js.map +1 -1
- package/dist/src/test/spec/modules/ftrackIdSystem_spec.js.map +1 -1
- package/dist/src/test/spec/modules/fwsspBidAdapter_spec.js.map +1 -1
- 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/hypelabBidAdapter_spec.js.map +1 -1
- package/dist/src/test/spec/modules/iasRtdProvider_spec.js +104 -1
- package/dist/src/test/spec/modules/iasRtdProvider_spec.js.map +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/intentIqIdSystem_spec.js.map +1 -1
- package/dist/src/test/spec/modules/invibesBidAdapter_spec.js.map +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/kargoBidAdapter_spec.js.map +1 -1
- package/dist/src/test/spec/modules/lane4BidAdapter_spec.js.map +1 -1
- package/dist/src/test/spec/modules/lemmaDigitalBidAdapter_spec.js.map +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/liveIntentRtdProvider_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/mediaeyesBidAdapter_spec.js.map +1 -1
- package/dist/src/test/spec/modules/mediafuseBidAdapter_spec.js +2 -2
- package/dist/src/test/spec/modules/mediagoBidAdapter_spec.js.map +1 -1
- package/dist/src/test/spec/modules/medianetBidAdapter_spec.js +43 -26
- package/dist/src/test/spec/modules/medianetBidAdapter_spec.js.map +1 -1
- package/dist/src/test/spec/modules/mediasquareBidAdapter_spec.js.map +1 -1
- package/dist/src/test/spec/modules/missenaBidAdapter_spec.js +1 -1
- package/dist/src/test/spec/modules/nexx360BidAdapter_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/nobidBidAdapter_spec.js.map +1 -1
- package/dist/src/test/spec/modules/oguryBidAdapter_spec.js +1 -1
- package/dist/src/test/spec/modules/onetagBidAdapter_spec.js.map +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/optoutBidAdapter_spec.js.map +1 -1
- package/dist/src/test/spec/modules/orbitsoftBidAdapter_spec.js.map +1 -1
- package/dist/src/test/spec/modules/outbrainBidAdapter_spec.js +3 -3
- package/dist/src/test/spec/modules/oxxionAnalyticsAdapter_spec.js.map +1 -1
- package/dist/src/test/spec/modules/ozoneBidAdapter_spec.js.map +1 -1
- package/dist/src/test/spec/modules/prebidServerBidAdapter_spec.js +4 -4
- package/dist/src/test/spec/modules/prebidServerBidAdapter_spec.js.map +1 -1
- package/dist/src/test/spec/modules/prismaBidAdapter_spec.js.map +1 -1
- 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/pubmaticRtdProvider_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/pwbidBidAdapter_spec.js.map +1 -1
- 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/relevadRtdProvider_spec.js.map +1 -1
- package/dist/src/test/spec/modules/relevatehealthBidAdapter_spec.js.map +1 -1
- package/dist/src/test/spec/modules/richaudienceBidAdapter_spec.js.map +1 -1
- package/dist/src/test/spec/modules/rubiconBidAdapter_spec.js +2 -2
- package/dist/src/test/spec/modules/rubiconBidAdapter_spec.js.map +1 -1
- package/dist/src/test/spec/modules/rumbleBidAdapter_spec.js +110 -0
- package/dist/src/test/spec/modules/rumbleBidAdapter_spec.js.map +1 -0
- package/dist/src/test/spec/modules/sevioBidAdapter_spec.js +182 -0
- package/dist/src/test/spec/modules/sevioBidAdapter_spec.js.map +1 -0
- package/dist/src/test/spec/modules/smaatoBidAdapter_spec.js.map +1 -1
- package/dist/src/test/spec/modules/smarticoBidAdapter_spec.js.map +1 -1
- 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/stvBidAdapter_spec.js.map +1 -1
- package/dist/src/test/spec/modules/taboolaBidAdapter_spec.js +1 -1
- package/dist/src/test/spec/modules/tapnativeBidAdapter_spec.js.map +1 -1
- package/dist/src/test/spec/modules/targetVideoBidAdapter_spec.js +2 -2
- package/dist/src/test/spec/modules/themoneytizerBidAdapter_spec.js +0 -5
- package/dist/src/test/spec/modules/themoneytizerBidAdapter_spec.js.map +1 -1
- package/dist/src/test/spec/modules/trionBidAdapter_spec.js +1 -1
- package/dist/src/test/spec/modules/ttdBidAdapter_spec.js +24 -3
- package/dist/src/test/spec/modules/ttdBidAdapter_spec.js.map +1 -1
- package/dist/src/test/spec/modules/ucfunnelAnalyticsAdapter_spec.js +1 -1
- package/dist/src/test/spec/modules/uid2IdSystem_spec.js.map +1 -1
- package/dist/src/test/spec/modules/unrulyBidAdapter_spec.js +3 -3
- package/dist/src/test/spec/modules/userId_spec.js +41 -6
- package/dist/src/test/spec/modules/userId_spec.js.map +1 -1
- package/dist/src/test/spec/modules/videoModule/submodules/jwplayerVideoProvider_spec.js +1738 -9
- package/dist/src/test/spec/modules/videoModule/submodules/jwplayerVideoProvider_spec.js.map +1 -1
- 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/yandexBidAdapter_spec.js +107 -2
- package/dist/src/test/spec/modules/yandexBidAdapter_spec.js.map +1 -1
- package/dist/src/test/spec/modules/yieldoneAnalyticsAdapter_spec.js +2 -2
- package/dist/src/test/spec/refererDetection_spec.js.map +1 -1
- package/dist/src/test/spec/unit/core/storageManager_spec.js +18 -1
- package/dist/src/test/spec/unit/core/storageManager_spec.js.map +1 -1
- package/dist/src/test/spec/unit/core/targeting_spec.js.map +1 -1
- package/dist/src/test/spec/utils_spec.js.map +1 -1
- package/eslint.config.js +2 -6
- package/gulpfile.js +0 -7
- package/libraries/analyticsAdapter/AnalyticsAdapter.ts +28 -28
- package/libraries/appnexusUtils/anKeywords.js +11 -0
- package/libraries/consentManagement/cmUtils.ts +18 -18
- package/libraries/creative-renderer-display/renderer.js +1 -1
- package/libraries/cryptoUtils/wallets.js +38 -0
- package/libraries/dspxUtils/bidderUtils.js +1 -1
- package/libraries/impUtils.js +33 -0
- package/libraries/liveIntentId/shared.js +16 -0
- package/libraries/nexx360Utils/index.js +8 -8
- package/libraries/ortbConverter/converter.ts +79 -79
- package/libraries/video/constants/events.ts +5 -5
- 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/adkernelAdnBidAdapter.json +1 -1
- package/metadata/modules/adkernelBidAdapter.json +4 -4
- package/metadata/modules/admaticBidAdapter.json +2 -2
- package/metadata/modules/admixerBidAdapter.json +8 -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 +1 -1
- package/metadata/modules/airgridRtdProvider.json +1 -1
- package/metadata/modules/alkimiBidAdapter.json +1 -1
- package/metadata/modules/ampliffyBidAdapter.json +1 -1
- 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 +15 -29
- 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/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/carodaBidAdapter.json +1 -1
- package/metadata/modules/categoryTranslation.json +1 -1
- package/metadata/modules/ccxBidAdapter.json +1 -1
- 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 +3 -3
- package/metadata/modules/docereeBidAdapter.json +3 -3
- package/metadata/modules/dspxBidAdapter.json +1 -1
- package/metadata/modules/e_volutionBidAdapter.json +1 -1
- package/metadata/modules/edge226BidAdapter.json +3 -3
- 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 +1 -1
- 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/kubientBidAdapter.json +3 -8
- 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 +1 -1
- 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 +1 -1
- 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 +8 -8
- 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 +4 -5
- 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 +1 -1
- package/metadata/modules/qtBidAdapter.json +1 -1
- 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 +1 -1
- 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 +1 -1
- package/metadata/modules/revcontentBidAdapter.json +7 -117
- 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/rumbleBidAdapter.json +13 -0
- package/metadata/modules/scatteredBidAdapter.json +1 -1
- 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 +18 -0
- 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 +1 -1
- 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 +4 -4
- 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/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/themoneytizerBidAdapter.json +3 -8
- 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/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/vidoomyBidAdapter.json +1 -1
- package/metadata/modules/viewdeosDXBidAdapter.json +1 -1
- 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 +1 -1
- 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 +23 -2
- package/modules/1plusXRtdProvider.js +6 -2
- package/modules/adWMGBidAdapter.js +8 -8
- package/modules/admixerBidAdapter.js +9 -4
- package/modules/adspiritBidAdapter.js +8 -8
- package/modules/adtrgtmeBidAdapter.js +2 -2
- package/modules/adxcgBidAdapter.js +2 -36
- package/modules/amxBidAdapter.js +3 -3
- package/modules/chromeAiRtdProvider.js +5 -5
- package/modules/consentManagementGpp.ts +11 -11
- package/modules/consentManagementTcf.ts +33 -33
- package/modules/consentManagementUsp.ts +14 -14
- package/modules/currency.ts +59 -59
- package/modules/cwireBidAdapter.js +2 -2
- package/modules/dailymotionBidAdapter.js +4 -4
- package/modules/dchain.ts +4 -4
- package/modules/dspxBidAdapter.js +8 -8
- package/modules/eightPodBidAdapter.js +8 -8
- package/modules/genericAnalyticsAdapter.ts +50 -50
- package/modules/geolocationRtdProvider.ts +48 -48
- package/modules/getintentBidAdapter.js +4 -2
- package/modules/gmosspBidAdapter.js +1 -1
- package/modules/gppControl_usstates.ts +40 -40
- package/modules/gptPreAuction.ts +34 -34
- package/modules/iasRtdProvider.js +87 -5
- package/modules/intentIqAnalyticsAdapter.js +8 -8
- package/modules/intentIqIdSystem.js +2 -2
- package/modules/jwplayerRtdProvider.js +6 -2
- package/modules/jwplayerVideoProvider.js +13 -9
- package/modules/kubientBidAdapter.js +0 -1
- package/modules/medianetAnalyticsAdapter.js +5 -5
- package/modules/medianetBidAdapter.js +5 -1
- package/modules/michaoBidAdapter.ts +7 -7
- package/modules/multibid/index.ts +31 -31
- package/modules/nexverseBidAdapter.js +1 -1
- package/modules/nodalsAiRtdProvider.js +4 -2
- package/modules/onetagBidAdapter.js +12 -12
- package/modules/openxBidAdapter.js +6 -1
- package/modules/prebidServerBidAdapter/index.ts +130 -130
- package/modules/priceFloors.ts +131 -131
- package/modules/pubmaticBidAdapter.js +21 -1
- package/modules/pubmaticRtdProvider.js +143 -143
- package/modules/pulsepointBidAdapter.js +3 -38
- package/modules/readpeakBidAdapter.js +17 -17
- package/modules/rtdModule/index.ts +8 -8
- package/modules/rtdModule/spec.ts +30 -30
- package/modules/rubiconBidAdapter.js +5 -1
- package/modules/rumbleBidAdapter.js +128 -0
- package/modules/rumbleBidAdapter.md +114 -0
- package/modules/schain.ts +4 -4
- package/modules/sevioBidAdapter.js +262 -0
- package/modules/sevioBidAdapter.md +29 -0
- package/modules/sharedIdSystem.ts +29 -29
- package/modules/storageControl.ts +72 -72
- package/modules/tcfControl.ts +60 -60
- package/modules/themoneytizerBidAdapter.js +2 -4
- package/modules/ttdBidAdapter.js +11 -1
- package/modules/ttdBidAdapter.md +3 -1
- package/modules/userId/index.ts +129 -119
- package/modules/userId/spec.ts +136 -136
- package/modules/validationFpdModule/index.ts +4 -4
- package/modules/videoModule/index.ts +37 -37
- package/modules/weboramaRtdProvider.js +30 -11
- package/modules/welectBidAdapter.js +3 -3
- package/modules/yandexBidAdapter.js +67 -24
- package/package.json +2 -3
- package/src/activities/params.js +6 -0
- package/src/activities/redactor.ts +8 -8
- package/src/adRendering.ts +61 -61
- package/src/adUnits.ts +100 -100
- package/src/adapterManager.ts +605 -605
- package/src/adapters/bidderFactory.ts +99 -99
- package/src/ajax.ts +39 -39
- package/src/auction.ts +217 -217
- package/src/banner.ts +28 -28
- package/src/bidTTL.ts +16 -16
- package/src/bidderSettings.ts +46 -46
- package/src/bidfactory.ts +107 -107
- package/src/config.ts +65 -65
- package/src/consentHandler.ts +25 -25
- package/src/constants.ts +14 -14
- package/src/cpmBucketManager.ts +7 -7
- package/src/events.ts +75 -75
- package/src/fpd/enrichment.ts +8 -8
- package/src/hook.ts +14 -14
- package/src/mediaTypes.ts +16 -16
- package/src/native.ts +62 -62
- package/src/prebid.ts +362 -362
- package/src/prebidGlobal.ts +18 -18
- package/src/refererDetection.ts +54 -54
- package/src/storageManager.ts +76 -73
- package/src/targeting.ts +215 -215
- package/src/types/common.d.ts +29 -29
- package/src/types/local/buildOptions.d.ts +3 -3
- package/src/types/local/shim.d.ts +6 -6
- package/src/types/objects.d.ts +15 -15
- package/src/types/ortb/common.d.ts +1 -1
- package/src/types/ortb/ext/dchain.d.ts +69 -69
- package/src/types/ortb/ext/dsa.d.ts +50 -50
- package/src/types/ortb/request.d.ts +21 -21
- package/src/types/ortb/response.d.ts +6 -6
- package/src/userSync.ts +32 -32
- package/src/utils/objects.ts +11 -11
- package/src/utils/perfMetrics.ts +193 -193
- package/src/utils/promise.ts +14 -14
- package/src/utils/ttlCollection.ts +25 -25
- package/src/video.ts +73 -73
- package/src/videoCache.ts +60 -60
- package/test/helpers/index_adapter_utils.js +1 -2
- package/test/helpers/refererDetectionHelper.js +2 -2
- package/test/mocks/timers.js +12 -9
- package/test/spec/adloader_spec.js +13 -13
- package/test/spec/config_spec.js +9 -3
- package/test/spec/libraries/greedy/greedyPromise_spec.js +2 -2
- package/test/spec/modules/1plusXRtdProvider_spec.js +2 -9
- package/test/spec/modules/adgridBidAdapter_spec.js +6 -6
- package/test/spec/modules/adkernelAdnBidAdapter_spec.js +127 -127
- package/test/spec/modules/adkernelBidAdapter_spec.js +308 -308
- package/test/spec/modules/admediaBidAdapter_spec.js +34 -34
- package/test/spec/modules/adnuntiusBidAdapter_spec.js +7 -7
- package/test/spec/modules/adspiritBidAdapter_spec.js +1 -1
- package/test/spec/modules/adtrgtmeBidAdapter_spec.js +3 -3
- package/test/spec/modules/adtrueBidAdapter_spec.js +19 -19
- package/test/spec/modules/advertisingBidAdapter_spec.js +2 -2
- package/test/spec/modules/bidmaticBidAdapter_spec.js +2 -2
- package/test/spec/modules/datablocksBidAdapter_spec.js +115 -115
- package/test/spec/modules/deepintentBidAdapter_spec.js +51 -51
- package/test/spec/modules/dexertoBidAdapter_spec.js +16 -16
- package/test/spec/modules/dochaseBidAdapter_spec.js +17 -17
- package/test/spec/modules/dspxBidAdapter_spec.js +23 -23
- package/test/spec/modules/ehealthcaresolutionsBidAdapter_spec.js +17 -17
- package/test/spec/modules/enrichmentLiftMeasurement_spec.js +8 -8
- package/test/spec/modules/equativBidAdapter_spec.js +1 -1
- package/test/spec/modules/finativeBidAdapter_spec.js +11 -11
- package/test/spec/modules/ftrackIdSystem_spec.js +16 -16
- package/test/spec/modules/fwsspBidAdapter_spec.js +5 -5
- package/test/spec/modules/hypelabBidAdapter_spec.js +9 -9
- package/test/spec/modules/iasRtdProvider_spec.js +89 -8
- package/test/spec/modules/intentIqIdSystem_spec.js +3 -3
- package/test/spec/modules/invibesBidAdapter_spec.js +2 -2
- package/test/spec/modules/kargoBidAdapter_spec.js +7 -7
- package/test/spec/modules/lane4BidAdapter_spec.js +17 -17
- package/test/spec/modules/lemmaDigitalBidAdapter_spec.js +37 -37
- 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/liveIntentRtdProvider_spec.js +2 -2
- package/test/spec/modules/mediaeyesBidAdapter_spec.js +166 -166
- package/test/spec/modules/mediagoBidAdapter_spec.js +1 -1
- package/test/spec/modules/medianetBidAdapter_spec.js +1724 -1707
- package/test/spec/modules/mediasquareBidAdapter_spec.js +7 -7
- package/test/spec/modules/nexx360BidAdapter_spec.js +6 -6
- package/test/spec/modules/nobidBidAdapter_spec.js +16 -16
- package/test/spec/modules/onetagBidAdapter_spec.js +47 -47
- package/test/spec/modules/openxBidAdapter_spec.js +129 -0
- package/test/spec/modules/optoutBidAdapter_spec.js +1 -1
- package/test/spec/modules/orbitsoftBidAdapter_spec.js +85 -85
- package/test/spec/modules/oxxionAnalyticsAdapter_spec.js +1 -1
- package/test/spec/modules/ozoneBidAdapter_spec.js +439 -439
- package/test/spec/modules/prebidServerBidAdapter_spec.js +2 -2
- package/test/spec/modules/prismaBidAdapter_spec.js +6 -6
- package/test/spec/modules/pubmaticBidAdapter_spec.js +73 -3
- package/test/spec/modules/pubmaticRtdProvider_spec.js +1389 -1389
- package/test/spec/modules/pwbidBidAdapter_spec.js +25 -25
- package/test/spec/modules/relevadRtdProvider_spec.js +1 -1
- package/test/spec/modules/relevatehealthBidAdapter_spec.js +16 -16
- package/test/spec/modules/richaudienceBidAdapter_spec.js +10 -10
- package/test/spec/modules/rubiconBidAdapter_spec.js +7 -7
- package/test/spec/modules/rumbleBidAdapter_spec.js +125 -0
- package/test/spec/modules/sevioBidAdapter_spec.js +209 -0
- package/test/spec/modules/smaatoBidAdapter_spec.js +30 -30
- package/test/spec/modules/smarticoBidAdapter_spec.js +10 -10
- package/test/spec/modules/stvBidAdapter_spec.js +32 -32
- package/test/spec/modules/tapnativeBidAdapter_spec.js +17 -17
- package/test/spec/modules/themoneytizerBidAdapter_spec.js +0 -6
- package/test/spec/modules/ttdBidAdapter_spec.js +27 -2
- package/test/spec/modules/uid2IdSystem_spec.js +3 -3
- package/test/spec/modules/userId_spec.js +41 -7
- package/test/spec/modules/videoModule/submodules/jwplayerVideoProvider_spec.js +1953 -154
- package/test/spec/modules/yandexBidAdapter_spec.js +128 -0
- package/test/spec/refererDetection_spec.js +11 -11
- package/test/spec/unit/core/storageManager_spec.js +20 -1
- package/test/spec/unit/core/targeting_spec.js +8 -8
- package/test/spec/utils_spec.js +25 -25
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"kargoBidAdapter_spec.js","names":["expect","spec","config","getStorageManager","utils","require","STORAGE","bidderCode","describe","bid","outstreamBid","testBids","sandbox","clock","frozenNow","Date","oldBidderSettings","topUrl","domain","referer","defaultBidParams","Object","freeze","bidRequestsCount","bidderRequestsCount","bidderWinsCount","getFloor","ortb2","device","w","h","dnt","language","ua","site","mobile","page","publisher","ref","source","tid","ortb2Imp","ext","data","pbadslot","gpid","userId","tdid","userIdAsEids","uids","id","atype","rtiPartner","floorData","floorMin","schain","validation","ver","complete","nodes","asi","sid","hp","minimumBidParams","params","placementId","mediaTypes","banner","sizes","validCrbIds","validCrbIdsLs","buildCrbValue","isCookie","withIds","withTdid","withLexId","withClientId","optOut","value","expireTime","now","lastSyncedAt","locationString","syncIds","tdID","lexId","clientId","b64Value","btoa","JSON","stringify","v","beforeEach","pbjs","bidderSettings","kargo","storageAllowed","bidder","adUnitCode","bidId","bidderRequestId","auctionId","video","context","playerSize","api","linearity","maxduration","mimes","minduration","placement","playbackmethod","plcmt","protocols","skip","sinon","createSandbox","useFakeTimers","getTime","afterEach","restore","it","gvlid","to","exist","and","equal","code","isBidRequestValid","other","bids","bidderRequest","undefinedCurrency","noAdServerCurrency","nonUSDAdServerCurrency","cookies","localStorageItems","session_id","before","spy","stub","callsFake","key","undefined","adServerCurrency","Error","refererInfo","canonicalUrl","isAmp","location","numIframes","reachedTop","stack","topmostLocation","start","timeout","forEach","document","cookie","localStorage","removeItem","getPayloadFromTestBids","request","buildRequests","payload","_getSessionId","imp","have","length","requestCount","callCount","setCookieValue","name","push","encodeURIComponent","setLocalStorageValue","setItem","crbValues","valid","validLs","invalidB64","invalidB64Ls","invalidJson","invalidJsonLs","setCrb","setCookie","arguments","setLocalStorage","hasOwnProperty","be","an","method","url","bidImp","deep","bidRequestCount","bidderRequestCount","fpd","pid","videoBidImp","user","crbIDs","sharedIDEids","aid","size","window","screen","width","height","pbv","a","with","ts","key2","ortb2WithEids","eids","gender","expectedClonedOrtb2","testBid","deepClone","cat","rid","cur","socialCanvas","segments","socan","inventoryCode","floor","native","bannerImp","videoImp","nativeImp","gpidGpid","bidderWinCount","i","currency","floorValue","calledWith","mediaType","true","rawCRB","rawCRBLocalStorage","kargoID","clientID","throws","usp","gdpr","gpp","uspConsent","gppConsent","consentString","applicableSections","gppString","gdprConsent","gdprApplies","consent","applies","testValue","test","test2","sua","platform","brand","version","browsers","model","objectMissing","timestamp","response","body","cpm","adm","metadata","creativeID","targetingCustom","landingPageDomain","admUrl","interpretResponse","keys","ad","creativeId","dealId","meta","netRevenue","requestId","ttl","clickUrl","advertiserDomains","vastXml","vastUrl","auctionConfig","seller","decisionLogicUrl","interestGroupBuyers","perBuyerSignals","result","property","that","is","paapi","lengthOf","expectedBidIds","include","includes","equals","crb","baseUrl","buildSyncUrls","syncs","type","getUserSyncs","iframeEnabled","returns","replace","ga","cs","as","supportedMediaTypes","fetchStub","global","resolves","onTimeout","keepalive"],"sourceRoot":"../../../../..","sources":["test/spec/modules/kargoBidAdapter_spec.js"],"sourcesContent":["import { expect } from 'chai';\nimport { spec } from 'modules/kargoBidAdapter.js';\nimport { config } from 'src/config.js';\nimport { getStorageManager } from 'src/storageManager.js';\nconst utils = require('src/utils');\nconst STORAGE = getStorageManager({bidderCode: 'kargo'});\n\ndescribe('kargo adapter tests', function() {\n let bid; let outstreamBid; let testBids; let sandbox; let clock; let frozenNow = new Date(); let oldBidderSettings;\n\n const topUrl = 'https://random.com/this/is/a/url';\n const domain = 'random.com';\n const referer = 'https://random.com/';\n\n const defaultBidParams = Object.freeze({\n bidRequestsCount: 1,\n bidderRequestsCount: 1,\n bidderWinsCount: 0,\n getFloor: () => {},\n ortb2: {\n device: {\n w: 1720,\n h: 1000,\n dnt: 0,\n language: 'en',\n ua: 'Mozilla/5.0'\n },\n site: {\n domain: domain,\n mobile: 0,\n page: topUrl,\n publisher: {\n domain: domain\n },\n ref: referer\n },\n source: {\n tid: 'random-tid'\n }\n },\n ortb2Imp: {\n ext: {\n data: {\n pbadslot: '/1234/prebid/slot/path'\n },\n gpid: '/1234/prebid/slot/path',\n }\n },\n userId: {\n tdid: 'random-tdid'\n },\n userIdAsEids: [\n {\n source: 'adquery.io',\n uids: [ {\n id: 'adquery-id',\n atype: 1\n } ]\n },\n {\n source: 'criteo.com',\n uids: [ {\n id: 'criteo-id',\n atype: 1\n } ]\n },\n {\n source: 'adserver.org',\n uids: [ {\n id: 'adserver-id',\n atype: 1,\n ext: { rtiPartner: 'TDID' }\n } ]\n },\n ],\n floorData: {\n floorMin: 1\n },\n schain: {\n validation: 'strict',\n config: {\n ver: '1.0',\n complete: 1,\n nodes: [ {\n asi: 'indirectseller.com',\n sid: '00001',\n hp: 1,\n } ]\n }\n },\n });\n\n const minimumBidParams = Object.freeze({\n params: {\n placementId: 'foobar'\n },\n mediaTypes: {\n banner: { sizes: [ [1, 1] ] }\n }\n });\n\n const validCrbIds = {\n 2: '82fa2555-5969-4614-b4ce-4dcf1080e9f9',\n 16: 'VoxIk8AoJz0AAEdCeyAAAAC2&502',\n 23: 'd2a855a5-1b1c-4300-940e-a708fa1f1bde',\n 24: 'VoxIk8AoJz0AAEdCeyAAAAC2&502',\n 25: '5ee24138-5e03-4b9d-a953-38e833f2849f',\n '2_80': 'd2a855a5-1b1c-4300-940e-a708fa1f1bde',\n '2_93': '5ee24138-5e03-4b9d-a953-38e833f2849f'\n };\n const validCrbIdsLs = {\n 2: '82fa2555-5969-4614-b4ce-4dcf1080e9f9',\n 16: 'VoxIk8AoJz0AAEdCeyAAAAC2&502',\n 23: 'd2a855a5-1b1c-4300-940e-a708fa1f1bde',\n 25: '5ee24138-5e03-4b9d-a953-38e833f2849f',\n '2_80': 'd2a855a5-1b1c-4300-940e-a708fa1f1bde',\n '2_93': '5ee24138-5e03-4b9d-a953-38e833f2849f'\n };\n function buildCrbValue(isCookie, withIds, withTdid, withLexId, withClientId, optOut) {\n const value = {\n expireTime: Date.now() + 60000,\n lastSyncedAt: Date.now() - 60000,\n optOut,\n };\n const locationString = isCookie ? 'cookie' : 'localstorage';\n\n if (withIds) {\n if (isCookie) {\n value.syncIds = validCrbIds;\n } else {\n value.syncIds = validCrbIdsLs;\n }\n }\n if (withTdid) {\n value.tdID = `test-tdid-cerberus-${locationString}`;\n }\n if (withLexId) {\n value.lexId = `test-lexid-cerberus-${locationString}`;\n }\n if (withClientId) {\n value.clientId = `test-clientid-cerberus-${locationString}`;\n }\n\n const b64Value = btoa(JSON.stringify(value));\n if (isCookie) {\n return JSON.stringify({ v: b64Value });\n }\n return b64Value;\n }\n\n beforeEach(function() {\n oldBidderSettings = $$PREBID_GLOBAL$$.bidderSettings;\n $$PREBID_GLOBAL$$.bidderSettings = {\n kargo: { storageAllowed: true }\n };\n\n bid = {\n ...defaultBidParams,\n bidder: 'kargo',\n params: {\n placementId: 'displayPlacement'\n },\n mediaTypes: {\n banner: {\n sizes: [ [970, 250], [1, 1] ]\n }\n },\n adUnitCode: 'displayAdunitCode',\n sizes: [ [300, 250], [300, 600] ],\n bidId: 'randomBidId',\n bidderRequestId: 'randomBidderRequestId',\n auctionId: 'randomAuctionId'\n };\n\n outstreamBid = {\n ...defaultBidParams,\n bidder: 'kargo',\n params: {\n placementId: 'instreamPlacement'\n },\n mediaTypes: {\n video: {\n context: 'instream',\n playerSize: [640, 480],\n api: [ 1, 2 ],\n linearity: 1,\n maxduration: 60,\n mimes: [ 'video/mp4', 'video/webm', 'application/javascript' ],\n minduration: 0,\n placement: 1,\n playbackmethod: [ 1, 2, 3 ],\n plcmt: 1,\n protocols: [ 2, 3, 5 ],\n skip: 1\n }\n },\n adUnitCode: 'instreamAdunitCode',\n sizes: [ [300, 250], [300, 600] ],\n bidId: 'randomBidId2',\n bidderRequestId: 'randomBidderRequestId2',\n auctionId: 'randomAuctionId2'\n };\n\n testBids = [{ ...minimumBidParams }];\n\n sandbox = sinon.createSandbox();\n clock = sinon.useFakeTimers(frozenNow.getTime());\n });\n\n afterEach(function() {\n sandbox.restore();\n clock.restore();\n $$PREBID_GLOBAL$$.bidderSettings = oldBidderSettings;\n });\n\n describe('gvlid', function() {\n it('exposes the gvlid (global vendor list ID) of 972', function() {\n expect(spec.gvlid).to.exist.and.equal(972);\n });\n });\n\n describe('code', function() {\n it('exposes the code kargo', function() {\n expect(spec.code).to.exist.and.equal('kargo');\n });\n });\n\n describe('isBidRequestValid', function() {\n it('fails when the bid object is undefined', function() {\n expect(spec.isBidRequestValid()).to.equal(false);\n });\n\n it('fails when the bid object has no keys at all', function() {\n expect(spec.isBidRequestValid({})).to.equal(false);\n });\n\n it('fails when the bid includes params but not a placement ID', function() {\n expect(spec.isBidRequestValid({ params: {} })).to.equal(false);\n });\n\n it('passes when the bid includes a placement ID', function () {\n expect(spec.isBidRequestValid({ params: { placementId: 'foo' } })).to.equal(true);\n });\n\n it('passes when the bid includes a placement ID and other keys', function() {\n expect(spec.isBidRequestValid({ params: { placementId: 'foo', other: 'value' } })).to.equal(true);\n });\n\n it('passes when the full bid information is provided', function() {\n expect(spec.isBidRequestValid(bid)).to.equal(true);\n expect(spec.isBidRequestValid(outstreamBid)).to.equal(true);\n });\n });\n\n describe('buildRequests', function() {\n let bids;\n let bidderRequest;\n let undefinedCurrency;\n let noAdServerCurrency;\n let nonUSDAdServerCurrency;\n let cookies = [];\n let localStorageItems = [];\n let session_id = null;\n\n before(function() {\n sinon.spy(spec, 'buildRequests');\n });\n\n beforeEach(function() {\n undefinedCurrency = false;\n noAdServerCurrency = false;\n nonUSDAdServerCurrency = false;\n sandbox.stub(config, 'getConfig').callsFake(function (key) {\n if (key === 'currency') {\n if (undefinedCurrency) return undefined;\n\n if (noAdServerCurrency) return {};\n\n if (nonUSDAdServerCurrency) return { adServerCurrency: 'EUR' };\n\n return { adServerCurrency: 'USD' };\n }\n\n if (key === 'debug') return true;\n if (key === 'deviceAccess') return true;\n throw new Error(`Config stub incomplete, missing key \"${key}\"`);\n });\n\n bids = [\n bid,\n outstreamBid\n ];\n\n bidderRequest = {\n bidderCode: 'kargo',\n auctionId: 'test-auction-id',\n bidderRequestId: 'test-request-id',\n bids,\n ortb2: defaultBidParams.ortb2,\n refererInfo: {\n canonicalUrl: topUrl,\n domain,\n isAmp: false,\n location: topUrl,\n numIframes: 0,\n page: topUrl,\n reachedTop: true,\n ref: referer,\n stack: [ topUrl ],\n topmostLocation: topUrl,\n },\n start: Date.now(),\n timeout: 2500,\n };\n });\n afterEach(function() {\n cookies.forEach(key => document.cookie = `${key}=; expires=Thu, 01 Jan 1970 00:00:01 GMT; path=/`);\n cookies = [];\n\n localStorageItems.forEach(key => localStorage.removeItem(key));\n localStorageItems = [];\n });\n\n function getPayloadFromTestBids(testBids) {\n const request = spec.buildRequests(testBids, { ...bidderRequest, bids: testBids });\n const payload = request.data;\n if (session_id === null) session_id = spec._getSessionId();\n\n expect(payload).to.exist;\n expect(payload.imp).to.have.length(testBids.length);\n expect(payload.requestCount).to.equal(spec.buildRequests.callCount - 1);\n expect(payload.sid).to.equal(session_id);\n\n return payload;\n }\n\n function setCookieValue(name, value) {\n cookies.push(name);\n document.cookie = `${encodeURIComponent(name)}=${encodeURIComponent(value)}; max-age-in-seconds=1000; path=/`;\n }\n\n function setLocalStorageValue(name, value) {\n localStorageItems.push(name);\n localStorage.setItem(name, value);\n }\n\n const crbValues = {\n valid: buildCrbValue(true, true, true, true, true, false),\n validLs: buildCrbValue(false, true, true, true, true, false),\n invalidB64: 'crbValue',\n invalidB64Ls: 'crbValueLs',\n invalidJson: 'eyJ0ZXN0OiJ2YWx1ZSJ9',\n invalidJsonLs: 'eyJ0ZXN0OiJ2YWx1ZSJ9',\n };\n function setCrb(\n setCookie = 'valid',\n setLocalStorage = 'valid'\n ) {\n if (crbValues.hasOwnProperty(setCookie)) {\n setCookieValue('krg_crb', crbValues[setCookie]);\n }\n if (crbValues.hasOwnProperty(`${setLocalStorage}Ls`)) {\n setLocalStorageValue('krg_crb', crbValues[`${setLocalStorage}Ls`]);\n }\n }\n\n it('exists and produces an object', function() {\n const request = spec.buildRequests(bids, bidderRequest);\n expect(request).to.exist.and.to.be.an('object');\n });\n\n it('produces a POST request with a payload', function() {\n const request = spec.buildRequests(bids, bidderRequest);\n expect(request.method).to.exist.and.equal('POST');\n expect(request.url).to.exist.and.equal('https://krk2.kargo.com/api/v1/prebid');\n\n const payload = request.data;\n expect(payload).to.exist;\n expect(payload.imp).to.have.length(2);\n\n // Display bid\n const bidImp = payload.imp[0];\n expect(bidImp.id).to.equal('randomBidId');\n expect(bidImp.banner).to.deep.equal({ sizes: [ [970, 250], [1, 1] ] });\n expect(bidImp.video).to.be.undefined;\n expect(bidImp.bidRequestCount).to.equal(1);\n expect(bidImp.bidderRequestCount).to.equal(1);\n expect(bidImp.code).to.equal('displayAdunitCode');\n expect(bidImp.ext.ortb2Imp).to.deep.equal(defaultBidParams.ortb2Imp);\n expect(bidImp.fpd).to.deep.equal({ gpid: '/1234/prebid/slot/path' });\n expect(bidImp.pid).to.equal('displayPlacement');\n\n // Video bid\n const videoBidImp = payload.imp[1];\n expect(videoBidImp.id).to.equal('randomBidId2');\n expect(videoBidImp.banner).to.be.undefined;\n expect(videoBidImp.video).to.deep.equal(outstreamBid.mediaTypes.video);\n expect(videoBidImp.bidRequestCount).to.equal(1);\n expect(videoBidImp.bidderRequestCount).to.equal(1);\n expect(videoBidImp.code).to.equal('instreamAdunitCode');\n expect(videoBidImp.ext.ortb2Imp).to.deep.equal(defaultBidParams.ortb2Imp);\n expect(videoBidImp.fpd).to.deep.equal({ gpid: '/1234/prebid/slot/path' });\n expect(videoBidImp.pid).to.equal('instreamPlacement');\n\n // User\n expect(payload.user).to.be.an('object');\n expect(payload.user.crbIDs).to.deep.equal({});\n expect(payload.user.data).to.deep.equal([]);\n expect(payload.user.sharedIDEids).to.deep.equal(defaultBidParams.userIdAsEids);\n\n // General keys\n expect(payload.aid).to.equal('randomAuctionId');\n expect(payload.device).to.deep.equal({ size: [ window.screen.width, window.screen.height ] });\n expect(payload.ext.ortb2).to.deep.equal(defaultBidParams.ortb2);\n expect(payload.pbv).to.equal('$prebid.version$');\n expect(payload.requestCount).to.equal(spec.buildRequests.callCount - 1);\n expect(payload.sid).to.be.a('string').with.length(36);\n expect(payload.timeout).to.equal(2500);\n expect(payload.url).to.equal(topUrl);\n expect(payload.ts).to.be.a('number');\n });\n\n it('copies the ortb2 object from the first bid request if present', function() {\n let payload;\n payload = getPayloadFromTestBids([{\n ...minimumBidParams,\n ortb2: {\n user: {\n key: 'value'\n }\n }\n }]);\n expect(payload.ext.ortb2).to.deep.equal({\n user: { key: 'value' }\n });\n\n payload = getPayloadFromTestBids(testBids);\n expect(payload.ext.ortb2).to.be.undefined;\n\n payload = getPayloadFromTestBids([{\n ...minimumBidParams,\n ortb2: {\n user: {\n key: 'value'\n }\n }\n }, {\n ...minimumBidParams,\n ortb2: {\n site: {\n key2: 'value2'\n }\n }\n }]);\n expect(payload.ext.ortb2).to.deep.equal({\n user: { key: 'value' }\n }\n );\n });\n\n it('clones ortb2 and removes user.ext.eids without mutating original input', function () {\n const ortb2WithEids = {\n user: {\n ext: {\n eids: [{ source: 'adserver.org', uids: [{ id: 'abc', atype: 1 }] }],\n other: 'data'\n },\n gender: 'M'\n },\n site: {\n domain: 'example.com',\n page: 'https://example.com/page'\n },\n source: {\n tid: 'test-tid'\n }\n };\n\n const expectedClonedOrtb2 = {\n user: {\n ext: {\n other: 'data'\n },\n gender: 'M'\n },\n site: {\n domain: 'example.com',\n page: 'https://example.com/page'\n },\n source: {\n tid: 'test-tid'\n }\n };\n\n const testBid = {\n ...minimumBidParams,\n ortb2: utils.deepClone(ortb2WithEids)\n };\n\n const payload = getPayloadFromTestBids([testBid]);\n\n // Confirm eids were removed from the payload\n expect(payload.ext.ortb2.user.ext.eids).to.be.undefined;\n\n // Confirm original object was not mutated\n expect(testBid.ortb2.user.ext.eids).to.exist.and.be.an('array');\n\n // Confirm the rest of the ortb2 object is intact\n expect(payload.ext.ortb2).to.deep.equal(expectedClonedOrtb2);\n });\n\n it('copies the refererInfo object from bidderRequest if present', function() {\n let payload;\n payload = getPayloadFromTestBids(testBids);\n expect(payload.ext.refererInfo).to.deep.equal({\n canonicalUrl: 'https://random.com/this/is/a/url',\n domain: 'random.com',\n isAmp: false,\n location: 'https://random.com/this/is/a/url',\n numIframes: 0,\n page: 'https://random.com/this/is/a/url',\n reachedTop: true,\n ref: 'https://random.com/',\n stack: [\n 'https://random.com/this/is/a/url'\n ],\n topmostLocation: 'https://random.com/this/is/a/url'\n });\n\n delete bidderRequest.refererInfo\n payload = getPayloadFromTestBids(testBids);\n expect(payload.ext).to.be.undefined;\n });\n\n it('pulls the site category from the first bids ortb2 object', function() {\n let payload;\n payload = getPayloadFromTestBids([{\n ...minimumBidParams,\n ortb2: { site: { cat: 'test-cat' } }\n }]);\n expect(payload.site).to.deep.equal({ cat: 'test-cat' });\n\n payload = getPayloadFromTestBids(testBids);\n expect(payload.site).to.be.undefined;\n\n payload = getPayloadFromTestBids([{\n ...minimumBidParams,\n ortb2: { site: { cat: 'test-cat' } }\n }, {\n ...minimumBidParams,\n ortb2: { site: { cat: 'test-cat-2' } }\n }]);\n expect(payload.site).to.deep.equal({ cat: 'test-cat' });\n });\n\n it('pulls the schain from the first bid if it is populated', function() {\n let payload;\n payload = getPayloadFromTestBids(testBids);\n expect(payload.schain).to.be.undefined;\n\n payload = getPayloadFromTestBids([{\n ...minimumBidParams,\n schain: {}\n }, {\n ...minimumBidParams,\n ortb2: {\n source: {\n ext: {\n schain: {\n complete: 1,\n nodes: [{\n asi: 'test-page.com',\n hp: 1,\n rid: '57bdd953-6e57-4d5b-9351-ed67ca238890',\n sid: '8190248274'\n }]\n }\n }\n }\n }\n }]);\n expect(payload.schain).to.be.undefined;\n\n payload = getPayloadFromTestBids([{\n ...minimumBidParams,\n ortb2: {\n source: {\n ext: {\n schain: {\n complete: 1,\n nodes: [{\n asi: 'test-page.com',\n hp: 1,\n rid: '57bdd953-6e57-4d5b-9351-ed67ca238890',\n sid: '8190248274'\n }]\n }\n }\n }\n }\n }, {\n ...minimumBidParams,\n ortb2: {\n source: {\n ext: {\n schain: {\n complete: 1,\n nodes: [{\n asi: 'test-page-2.com',\n hp: 1,\n rid: 'other-rid',\n sid: 'other-sid'\n }]\n }\n }\n }\n }\n }]);\n expect(payload.schain).to.deep.equal({\n complete: 1,\n nodes: [{\n asi: 'test-page.com',\n hp: 1,\n rid: '57bdd953-6e57-4d5b-9351-ed67ca238890',\n sid: '8190248274'\n }]\n });\n });\n\n it('does not send currency if it is not defined', function() {\n undefinedCurrency = true;\n const payload = getPayloadFromTestBids(testBids);\n expect(payload.cur).to.be.undefined;\n });\n\n it('does not send currency if it is missing', function() {\n noAdServerCurrency = true;\n const payload = getPayloadFromTestBids(testBids);\n expect(payload.cur).to.be.undefined;\n });\n\n it('does not send currency if it is USD', function() {\n const payload = getPayloadFromTestBids(testBids);\n expect(payload.cur).to.be.undefined;\n });\n\n it('provides the currency if it is not USD', function() {\n nonUSDAdServerCurrency = true;\n const payload = getPayloadFromTestBids(testBids);\n expect(payload.cur).to.equal('EUR');\n });\n\n it('provides the social canvas segments and URL if provided', function() {\n let payload;\n payload = getPayloadFromTestBids([{\n ...minimumBidParams,\n }, {\n ...minimumBidParams,\n params: {\n ...minimumBidParams.params,\n socialCanvas: {\n segments: ['segment_1', 'segment_2', 'segment_3'],\n url: 'https://socan.url'\n }\n }\n }]);\n expect(payload.socan).to.be.undefined;\n\n payload = getPayloadFromTestBids([{\n ...minimumBidParams,\n params: {\n ...minimumBidParams.params,\n socialCanvas: null\n }\n }, {\n ...minimumBidParams,\n params: {\n ...minimumBidParams.params,\n socialCanvas: {\n segments: ['segment_1', 'segment_2', 'segment_3'],\n url: 'https://socan.url'\n }\n }\n }]);\n expect(payload.socan).to.be.undefined;\n\n payload = getPayloadFromTestBids([{\n ...minimumBidParams,\n params: {\n ...minimumBidParams.params,\n socialCanvas: {\n segments: ['segment_1', 'segment_2', 'segment_3'],\n url: 'https://socan.url'\n }\n }\n }, {\n ...minimumBidParams,\n params: {\n ...minimumBidParams.params,\n socialCanvas: {\n segments: ['segment_4', 'segment_5', 'segment_6'],\n url: 'https://socan.url/new'\n }\n }\n }]);\n expect(payload.socan).to.deep.equal({\n segments: ['segment_1', 'segment_2', 'segment_3'],\n url: 'https://socan.url'\n });\n });\n\n describe('imp', function() {\n it('handles slots with different combinations of formats', function() {\n const testBids = [\n // Banner and Outstream\n {\n ...bid,\n params: {\n inventoryCode: 'banner_outstream_test',\n floor: 1.0,\n video: {\n mimes: [ 'video/mp4' ],\n maxduration: 30,\n minduration: 6,\n w: 640,\n h: 480\n }\n },\n mediaTypes: {\n video: {\n context: 'outstream',\n playerSize: [640, 380]\n },\n banner: {\n sizes: [ [970, 250], [1, 1] ]\n }\n },\n adUnitCode: 'adunit-code-banner-outstream',\n sizes: [ [300, 250], [300, 600], [1, 1, 1], ['flex'] ],\n bidId: 'banner-outstream-bid-id',\n bidderRequestId: 'kargo-request-id',\n auctionId: 'kargo-auction-id',\n },\n // Banner and Native\n {\n ...bid,\n params: {\n inventoryCode: 'banner_outstream_test',\n floor: 1.0,\n video: {\n mimes: [ 'video/mp4' ],\n maxduration: 30,\n minduration: 6,\n w: 640,\n h: 480\n }\n },\n mediaTypes: {\n banner: {\n sizes: [ [970, 250], [1, 1] ]\n },\n native: {}\n },\n adUnitCode: 'adunit-code-banner-outstream',\n sizes: [ [300, 250], [300, 600], [1, 1, 1], ['flex'] ],\n bidId: 'banner-outstream-bid-id',\n bidderRequestId: 'kargo-request-id',\n auctionId: 'kargo-auction-id',\n },\n // Native and Outstream\n {\n ...bid,\n params: {\n inventoryCode: 'banner_outstream_test',\n floor: 1.0,\n video: {\n mimes: [ 'video/mp4' ],\n maxduration: 30,\n minduration: 6,\n w: 640,\n h: 480\n }\n },\n mediaTypes: {\n video: {\n context: 'outstream',\n playerSize: [640, 380]\n },\n native: {},\n },\n adUnitCode: 'adunit-code-banner-outstream',\n sizes: [ [300, 250], [300, 600], [1, 1, 1], ['flex'] ],\n bidId: 'banner-outstream-bid-id',\n bidderRequestId: 'kargo-request-id',\n auctionId: 'kargo-auction-id',\n },\n // Banner and Native and Outstream\n {\n ...bid,\n params: {\n inventoryCode: 'banner_outstream_test',\n floor: 1.0,\n video: {\n mimes: [ 'video/mp4' ],\n maxduration: 30,\n minduration: 6,\n w: 640,\n h: 480\n }\n },\n mediaTypes: {\n video: {\n context: 'outstream',\n playerSize: [640, 380]\n },\n banner: {\n sizes: [ [970, 250], [1, 1] ]\n },\n native: {},\n },\n adUnitCode: 'adunit-code-banner-outstream',\n sizes: [ [300, 250], [300, 600], [1, 1, 1], ['flex'] ],\n bidId: 'banner-outstream-bid-id',\n bidderRequestId: 'kargo-request-id',\n auctionId: 'kargo-auction-id',\n },\n ];\n\n const payload = getPayloadFromTestBids(testBids);\n\n const bannerImp = {\n sizes: [ [970, 250], [1, 1] ]\n };\n const videoImp = {\n context: 'outstream',\n playerSize: [640, 380]\n };\n const nativeImp = {};\n\n // Banner and Outstream\n expect(payload.imp[0].banner).to.deep.equal(bannerImp);\n expect(payload.imp[0].video).to.deep.equal(videoImp);\n expect(payload.imp[0].native).to.be.undefined;\n // Banner and Native\n expect(payload.imp[1].banner).to.deep.equal(bannerImp);\n expect(payload.imp[1].video).to.be.undefined;\n expect(payload.imp[1].native).to.deep.equal(nativeImp);\n // Native and Outstream\n expect(payload.imp[2].banner).to.be.undefined;\n expect(payload.imp[2].video).to.deep.equal(videoImp);\n expect(payload.imp[2].native).to.deep.equal(nativeImp);\n // Banner and Native and Outstream\n expect(payload.imp[3].banner).to.deep.equal(bannerImp);\n expect(payload.imp[3].video).to.deep.equal(videoImp);\n expect(payload.imp[3].native).to.deep.equal(nativeImp);\n });\n\n it('pulls gpid from ortb2Imp.ext.gpid', function () {\n const gpidGpid = 'ortb2Imp.ext.gpid-gpid';\n const testBids = [\n {\n ...minimumBidParams,\n ortb2Imp: {\n ext: {\n gpid: gpidGpid,\n data: {}\n }\n }\n },\n {\n ...minimumBidParams,\n ortb2Imp: {\n ext: {\n gpid: gpidGpid,\n data: {},\n }\n }\n },\n {\n ...minimumBidParams,\n ortb2Imp: {\n ext: {\n data: {}\n }\n }\n },\n {\n ...minimumBidParams,\n ortb2Imp: {\n ext: {\n gpid: null,\n data: {\n pbadslot: null\n }\n }\n }\n },\n { ...minimumBidParams }\n ];\n\n const payload = getPayloadFromTestBids(testBids);\n\n // Both present\n expect(payload.imp[0].fpd).to.deep.equal({ gpid: gpidGpid });\n // Only ext.gpid\n expect(payload.imp[1].fpd).to.deep.equal({ gpid: gpidGpid });\n // Neither present\n expect(payload.imp[3].fpd).to.be.undefined;\n expect(payload.imp[4].fpd).to.be.undefined;\n });\n\n it('includes bidRequestCount, bidderRequestCount, and bidderWinsCount if they are greater than 0', function() {\n const testBids = [\n {\n ...minimumBidParams,\n bidRequestsCount: 1,\n bidderRequestsCount: 0,\n bidderWinsCount: 0,\n },\n {\n ...minimumBidParams,\n bidRequestsCount: 0,\n bidderRequestsCount: 2,\n bidderWinsCount: 0,\n },\n {\n ...minimumBidParams,\n bidRequestsCount: 0,\n bidderRequestsCount: 0,\n bidderWinsCount: 3,\n },\n {\n ...minimumBidParams,\n bidRequestsCount: 4,\n bidderRequestsCount: 1,\n bidderWinsCount: 3,\n },\n ];\n\n [ 0, null, false, 'foobar' ].forEach(value => testBids.push({\n ...minimumBidParams,\n bidRequestsCount: value,\n bidderRequestsCount: value,\n bidderWinsCount: value\n }));\n\n const payload = getPayloadFromTestBids(testBids);\n\n // bidRequestCount\n expect(payload.imp[0].bidRequestCount).to.equal(1);\n expect(payload.imp[0].bidderRequestCount).to.be.undefined;\n expect(payload.imp[0].bidderWinCount).to.be.undefined;\n // bidderRequestCount\n expect(payload.imp[1].bidRequestCount).to.be.undefined;\n expect(payload.imp[1].bidderRequestCount).to.equal(2);\n expect(payload.imp[1].bidderWinCount).to.be.undefined;\n // bidderWinCount\n expect(payload.imp[2].bidRequestCount).to.be.undefined;\n expect(payload.imp[2].bidderRequestCount).to.be.undefined;\n expect(payload.imp[2].bidderWinCount).to.equal(3);\n // all\n expect(payload.imp[3].bidRequestCount).to.equal(4);\n expect(payload.imp[3].bidderRequestCount).to.equal(1);\n expect(payload.imp[3].bidderWinCount).to.equal(3);\n // none\n for (let i = 4; i < payload.imp.length; i++) {\n expect(payload.imp[i].bidRequestCount).to.be.undefined;\n expect(payload.imp[i].bidderRequestCount).to.be.undefined;\n expect(payload.imp[i].bidderWinCount).to.be.undefined;\n }\n });\n\n it('queries the getFloor function to retrieve the floor and validates it', function() {\n const testBids = [];\n\n [\n { currency: 'USD', floor: 1.99 },\n { currency: 'USD', floor: '1.99' },\n { currency: 'EUR', floor: 1.99 },\n { currency: 'USD', floor: 'foo' },\n { currency: 'USD', floor: null },\n { currency: 'USD', floor: true },\n { currency: 'USD', floor: false },\n { currency: 'USD', floor: {} },\n { currency: 'USD', floor: [] },\n ].forEach(floorValue => testBids.push({\n ...minimumBidParams,\n getFloor: () => floorValue\n }));\n\n const payload = getPayloadFromTestBids(testBids);\n\n // Valid floor\n expect(payload.imp[0].floor).to.equal(1.99);\n // Valid floor but string\n expect(payload.imp[1].floor).to.equal('1.99'); // @TODO - convert this to a number?\n // Non-USD valid floor\n expect(payload.imp[2].floor).to.be.undefined;\n // Invalid floor\n for (let i = 3; i < payload.imp.length; i++) {\n expect(payload.imp[i].floor).to.be.undefined;\n }\n });\n\n it('calls getFloor with the right values', function() {\n const testBids = [\n {\n ...minimumBidParams,\n getFloor: () => ({ currency: 'USD', value: 0.5 })\n }\n ];\n sinon.spy(testBids[0], 'getFloor');\n\n getPayloadFromTestBids(testBids);\n\n expect(testBids[0].getFloor.calledWith({\n currency: 'USD',\n mediaType: '*',\n size: '*'\n })).to.be.true;\n });\n });\n\n describe('cerberus', function() {\n it('retrieves CRB from localStorage and cookies', function() {\n setCrb('valid', 'valid');\n\n const payload = getPayloadFromTestBids(testBids, bidderRequest);\n\n expect(payload.rawCRB).to.equal(crbValues.valid);\n expect(payload.rawCRBLocalStorage).to.equal(crbValues.validLs);\n expect(payload.user.crbIDs).to.deep.equal(validCrbIdsLs);\n expect(payload.user.tdID).to.equal('test-tdid-cerberus-localstorage');\n expect(payload.user.kargoID).to.equal('test-lexid-cerberus-localstorage');\n expect(payload.user.clientID).to.equal('test-clientid-cerberus-localstorage');\n expect(payload.user.optOut).to.equal(false);\n });\n\n it('retrieves CRB from localStorage if cookie is missing', function() {\n setCrb(false, 'valid');\n\n const payload = getPayloadFromTestBids(testBids, bidderRequest);\n\n expect(payload.rawCRB).to.be.undefined;\n expect(payload.rawCRBLocalStorage).to.equal(crbValues.validLs);\n expect(payload.user.crbIDs).to.deep.equal(validCrbIdsLs);\n expect(payload.user.tdID).to.equal('test-tdid-cerberus-localstorage');\n expect(payload.user.kargoID).to.equal('test-lexid-cerberus-localstorage');\n expect(payload.user.clientID).to.equal('test-clientid-cerberus-localstorage');\n expect(payload.user.optOut).to.equal(false);\n });\n\n it('retrieves CRB from cookies if localstorage is missing', function() {\n setCrb('valid', false);\n\n const payload = getPayloadFromTestBids(testBids, bidderRequest);\n\n expect(payload.rawCRB).to.equal(crbValues.valid);\n expect(payload.rawCRBLocalStorage).to.be.undefined;\n expect(payload.user.crbIDs).to.deep.equal(validCrbIds);\n expect(payload.user.tdID).to.equal('test-tdid-cerberus-cookie');\n expect(payload.user.kargoID).to.equal('test-lexid-cerberus-cookie');\n expect(payload.user.clientID).to.equal('test-clientid-cerberus-cookie');\n expect(payload.user.optOut).to.equal(false);\n });\n\n it('retrieves CRB from cookies if localstorage is not functional', function() {\n // Safari does not allow stubbing localStorage methods directly.\n // Stub the storage manager instead so all browsers behave consistently.\n sandbox.stub(STORAGE, 'getDataFromLocalStorage').throws();\n setCrb('valid', 'invalid');\n\n const payload = getPayloadFromTestBids(testBids, bidderRequest);\n\n expect(payload.rawCRB).to.equal(crbValues.valid);\n expect(payload.rawCRBLocalStorage).to.be.undefined;\n expect(payload.user.crbIDs).to.deep.equal(validCrbIds);\n expect(payload.user.tdID).to.equal('test-tdid-cerberus-cookie');\n expect(payload.user.kargoID).to.equal('test-lexid-cerberus-cookie');\n expect(payload.user.clientID).to.equal('test-clientid-cerberus-cookie');\n expect(payload.user.optOut).to.equal(false);\n });\n\n it('does not fail if CRB is missing', function() {\n const payload = getPayloadFromTestBids(testBids, bidderRequest);\n\n expect(payload.rawCRB).to.be.undefined;\n expect(payload.rawCRBLocalStorage).to.be.undefined;\n expect(payload.user.crbIDs).to.deep.equal({});\n expect(payload.user.tdID).to.be.undefined;\n expect(payload.user.kargoID).to.be.undefined;\n expect(payload.user.clientID).to.be.undefined;\n expect(payload.user.optOut).to.be.undefined;\n });\n\n it('fails gracefully if the CRB is invalid base 64 cookie', function() {\n setCrb('invalidB64', false);\n\n const payload = getPayloadFromTestBids(testBids, bidderRequest);\n\n expect(payload.rawCRB).to.equal(crbValues.invalidB64);\n expect(payload.rawCRBLocalStorage).to.be.undefined;\n expect(payload.user.crbIDs).to.deep.equal({});\n expect(payload.user.tdID).to.be.undefined;\n expect(payload.user.kargoID).to.be.undefined;\n expect(payload.user.clientID).to.be.undefined;\n expect(payload.user.optOut).to.be.undefined;\n });\n\n it('fails gracefully if the CRB is invalid base 64 localStorage', function() {\n setCrb(false, 'invalidB64');\n\n const payload = getPayloadFromTestBids(testBids, bidderRequest);\n\n expect(payload.rawCRB).to.be.undefined;\n expect(payload.rawCRBLocalStorage).to.equal(crbValues.invalidB64Ls);\n expect(payload.user.crbIDs).to.deep.equal({});\n expect(payload.user.tdID).to.be.undefined;\n expect(payload.user.kargoID).to.be.undefined;\n expect(payload.user.clientID).to.be.undefined;\n expect(payload.user.optOut).to.be.undefined;\n });\n\n [\n [ 'valid', 'invalidB64', 'cookie' ],\n [ 'valid', 'invalidJson', 'cookie' ],\n [ 'invalidB64', 'invalidJson', 'none' ],\n [ 'invalidB64', 'invalidB64', 'none' ],\n [ 'invalidB64', 'valid', 'localStorage' ],\n [ 'invalidJson', 'invalidJson', 'none' ],\n [ 'invalidJson', 'invalidB64', 'none' ],\n [ 'invalidJson', 'valid', 'localStorage' ],\n ].forEach(config => {\n it(`uses ${config[2]} if the cookie is ${config[0]} and localStorage is ${config[1]}`, function() {\n setCrb(config[0], config[1]);\n const payload = getPayloadFromTestBids(testBids, bidderRequest);\n\n expect(payload.rawCRB).to.equal(crbValues[config[0]]);\n expect(payload.rawCRBLocalStorage).to.equal(crbValues[`${config[1]}Ls`]);\n if (config[2] === 'cookie') {\n expect(payload.user.crbIDs).to.deep.equal(validCrbIds);\n expect(payload.user.tdID).to.equal('test-tdid-cerberus-cookie');\n expect(payload.user.kargoID).to.equal('test-lexid-cerberus-cookie');\n expect(payload.user.clientID).to.equal('test-clientid-cerberus-cookie');\n expect(payload.user.optOut).to.equal(false);\n } else if (config[2] === 'localStorage') {\n expect(payload.user.crbIDs).to.deep.equal(validCrbIdsLs);\n expect(payload.user.tdID).to.equal('test-tdid-cerberus-localstorage');\n expect(payload.user.kargoID).to.equal('test-lexid-cerberus-localstorage');\n expect(payload.user.clientID).to.equal('test-clientid-cerberus-localstorage');\n expect(payload.user.optOut).to.equal(false);\n } else {\n expect(payload.user.crbIDs).to.deep.equal({});\n expect(payload.user.tdID).to.be.undefined;\n expect(payload.user.kargoID).to.be.undefined;\n expect(payload.user.clientID).to.be.undefined;\n expect(payload.user.optOut).to.be.undefined;\n }\n });\n });\n\n it('uses the tdID from cerberus to populate the tdID field', function() {\n setCrb('valid', 'valid');\n const payload = getPayloadFromTestBids(testBids, bidderRequest);\n\n expect(payload.user.tdID).to.equal('test-tdid-cerberus-localstorage');\n });\n\n it('uses the lexId from cerberus to populate the kargoID field', function() {\n setCrb('valid', 'valid');\n const payload = getPayloadFromTestBids(testBids, bidderRequest);\n\n expect(payload.user.kargoID).to.equal('test-lexid-cerberus-localstorage');\n });\n\n it('uses the clientId from cerberus to populate the clientID field', function() {\n setCrb('valid', 'valid');\n const payload = getPayloadFromTestBids(testBids, bidderRequest);\n\n expect(payload.user.clientID).to.equal('test-clientid-cerberus-localstorage');\n });\n\n it('uses the optOut from cerberus to populate the clientID field', function() {\n setCrb('valid', 'valid');\n let payload;\n payload = getPayloadFromTestBids(testBids, bidderRequest);\n\n expect(payload.user.optOut).to.equal(false);\n\n setLocalStorageValue('krg_crb', buildCrbValue(false, true, true, true, true, true));\n payload = getPayloadFromTestBids(testBids, bidderRequest);\n\n expect(payload.user.optOut).to.equal(true);\n });\n });\n\n describe('user', function() {\n it('fetches the trade desk id from the adapter if present', function() {\n const payload = getPayloadFromTestBids([{\n ...minimumBidParams,\n userId: {\n tdid: 'test-tdid-module'\n }\n }]);\n\n expect(payload.user.tdID).to.equal('test-tdid-module');\n });\n\n it('fetches the trade desk id from cerberus if present', function() {\n setLocalStorageValue('krg_crb', btoa(JSON.stringify({ tdID: 'test-tdid-crb' })));\n\n const payload = getPayloadFromTestBids([{\n ...minimumBidParams,\n }]);\n\n expect(payload.user.tdID).to.equal('test-tdid-crb');\n });\n\n it('fetches the trade desk id from the adapter if adapter and cerberus are present', function() {\n setLocalStorageValue('krg_crb', buildCrbValue(false, true, true, true, true, false));\n\n const payload = getPayloadFromTestBids([{\n ...minimumBidParams,\n userId: {\n tdid: 'test-tdid-module'\n }\n }]);\n\n expect(payload.user.tdID).to.equal('test-tdid-module');\n });\n\n it('does not set kargoId if it is not present', function() {\n const payload = getPayloadFromTestBids([{ ...minimumBidParams }]);\n\n expect(payload.user.lexId).to.be.undefined;\n });\n\n it('does not populate usp, gdpr, or gpp if they are not present', function() {\n const payload = getPayloadFromTestBids([{ ...minimumBidParams }]);\n\n expect(payload.user.usp).to.be.undefined;\n expect(payload.user.gdpr).to.be.undefined;\n expect(payload.user.gpp).to.be.undefined;\n });\n\n it('fetches usp from the bidder request if present', function() {\n bidderRequest.uspConsent = '1---';\n const payload = getPayloadFromTestBids([{ ...minimumBidParams }]);\n\n expect(payload.user.usp).to.equal('1---');\n });\n\n it('fetches gpp from the bidder request if present', function() {\n bidderRequest.gppConsent = {\n consentString: 'gppString',\n applicableSections: [-1]\n };\n const payload = getPayloadFromTestBids([{ ...minimumBidParams }]);\n\n expect(payload.user.gpp).to.deep.equal({\n gppString: 'gppString',\n applicableSections: [-1]\n });\n });\n\n it('does not send empty gpp values', function() {\n bidderRequest.gppConsent = {\n consentString: '',\n applicableSections: ''\n };\n const payload = getPayloadFromTestBids([{ ...minimumBidParams }]);\n\n expect(payload.user.gpp).to.be.undefined;\n });\n\n it('fetches gdpr consent from the bidder request if present', function() {\n bidderRequest.gdprConsent = {\n consentString: 'gdpr-consent-string',\n gdprApplies: true\n };\n const payload = getPayloadFromTestBids([{ ...minimumBidParams }]);\n\n expect(payload.user.gdpr).to.deep.equal({\n consent: 'gdpr-consent-string',\n applies: true\n });\n });\n\n it('handles malformed gdpr applies from the bidder request', function() {\n [\n ['true', true],\n ['false', true],\n ['1', true],\n [1, true],\n [0, false],\n ['0', true],\n ['y', true],\n ['yes', true],\n ['n', true],\n ['no', true],\n [null, false],\n [{}, true],\n ].forEach(testValue => {\n bidderRequest.gdprConsent = { gdprApplies: testValue[0] };\n const payload = getPayloadFromTestBids([{ ...minimumBidParams }]);\n expect(payload.user.gdpr, `Value - ${JSON.stringify(testValue[0])}`).to.deep.equal({\n consent: '',\n applies: testValue[1]\n });\n });\n });\n\n it('passes the user.data from the first bid request if availabale', function() {\n let payload;\n payload = getPayloadFromTestBids([{\n ...minimumBidParams,\n }, {\n ...minimumBidParams,\n ortb2: { user: { data: { test: 'value' } } }\n }]);\n expect(payload.user.data).to.deep.equal([]);\n\n payload = getPayloadFromTestBids([{\n ...minimumBidParams,\n ortb2: { user: { data: { test: 'value' } } }\n }, {\n ...minimumBidParams,\n ortb2: { user: { data: { test2: 'value2' } } }\n }]);\n expect(payload.user.data).to.deep.equal({\n test: 'value'\n });\n });\n\n it('fails gracefully if there is no localStorage', function() {\n sandbox.stub(STORAGE, 'getDataFromLocalStorage').throws();\n localStorage.removeItem('krg_crb');\n document.cookie = 'krg_crb=; expires=Thu, 01 Jan 1970 00:00:00 GMT; path=/';\n const payload = getPayloadFromTestBids(testBids);\n expect(payload.user).to.deep.equal({\n crbIDs: {},\n data: []\n });\n });\n });\n\n describe('sua', function() {\n it('is not provided if not present in the first valid bid', function() {\n const payload = getPayloadFromTestBids([\n ...testBids,\n {\n ...minimumBidParams,\n ortb2: { device: { sua: {\n platform: {\n brand: 'macOS',\n version: ['12', '6', '0']\n },\n browsers: [\n {\n brand: 'Chromium',\n version: ['106', '0', '5249', '119']\n },\n {\n brand: 'Google Chrome',\n version: ['106', '0', '5249', '119']\n },\n {\n brand: 'Not;A=Brand',\n version: ['99', '0', '0', '0']\n }\n ],\n mobile: 1,\n model: 'model',\n source: 1,\n } } }\n }\n ]);\n expect(payload.device.sua).to.be.undefined;\n });\n\n it('is provided if present in the first valid bid', function() {\n const payload = getPayloadFromTestBids([\n {\n ...minimumBidParams,\n ortb2: { device: { sua: {\n platform: {\n brand: 'macOS',\n version: ['12', '6', '0']\n },\n browsers: [\n {\n brand: 'Chromium',\n version: ['106', '0', '5249', '119']\n },\n {\n brand: 'Google Chrome',\n version: ['106', '0', '5249', '119']\n },\n {\n brand: 'Not;A=Brand',\n version: ['99', '0', '0', '0']\n }\n ],\n mobile: 1,\n model: 'model',\n source: 1,\n } } }\n },\n {\n ...minimumBidParams,\n ortb2: { device: { sua: {\n platform: {\n brand: 'macOS2',\n version: ['122', '6', '0']\n },\n browsers: [\n {\n brand: 'Chromium2',\n version: ['1062', '0', '5249', '119']\n },\n {\n brand: 'Google Chrome2',\n version: ['102', '0', '5249', '119']\n },\n {\n brand: 'Not;A=Brand2',\n version: ['992', '0', '0', '0']\n }\n ],\n mobile: 2,\n model: 'model2',\n source: 2,\n } } }\n }\n ]);\n expect(payload.device.sua).to.deep.equal({\n platform: {\n brand: 'macOS',\n version: ['12', '6', '0']\n },\n browsers: [\n {\n brand: 'Chromium',\n version: ['106', '0', '5249', '119']\n },\n {\n brand: 'Google Chrome',\n version: ['106', '0', '5249', '119']\n },\n {\n brand: 'Not;A=Brand',\n version: ['99', '0', '0', '0']\n }\n ],\n mobile: 1,\n model: 'model',\n source: 1,\n });\n });\n\n it('does not send non-mapped attributes', function() {\n const payload = getPayloadFromTestBids([{...minimumBidParams,\n ortb2: { device: { sua: {\n other: 'value',\n objectMissing: {\n key: 'value'\n },\n platform: {\n brand: 'macOS',\n version: ['12', '6', '0']\n },\n browsers: [\n {\n brand: 'Chromium',\n version: ['106', '0', '5249', '119']\n },\n {\n brand: 'Google Chrome',\n version: ['106', '0', '5249', '119']\n },\n {\n brand: 'Not;A=Brand',\n version: ['99', '0', '0', '0']\n }\n ],\n mobile: 1,\n model: 'model',\n source: 1,\n } } }\n }]);\n expect(payload.device.sua).to.deep.equal({\n platform: {\n brand: 'macOS',\n version: ['12', '6', '0']\n },\n browsers: [\n {\n brand: 'Chromium',\n version: ['106', '0', '5249', '119']\n },\n {\n brand: 'Google Chrome',\n version: ['106', '0', '5249', '119']\n },\n {\n brand: 'Not;A=Brand',\n version: ['99', '0', '0', '0']\n }\n ],\n mobile: 1,\n model: 'model',\n source: 1,\n });\n });\n\n it('does not send non-truthy values or empty strings', function() {\n [\n false,\n 0,\n null,\n '',\n ' ',\n ' ',\n ].forEach(value => {\n const payload = getPayloadFromTestBids([{...minimumBidParams,\n ortb2: { device: { sua: {\n platform: value,\n browsers: [\n {\n brand: 'Chromium',\n version: ['106', '0', '5249', '119']\n },\n {\n brand: 'Google Chrome',\n version: ['106', '0', '5249', '119']\n },\n {\n brand: 'Not;A=Brand',\n version: ['99', '0', '0', '0']\n }\n ],\n mobile: 1,\n model: 'model',\n source: 1,\n } } }\n }]);\n expect(payload.device.sua, `Value - ${JSON.stringify(value)}`).to.deep.equal({\n browsers: [\n {\n brand: 'Chromium',\n version: ['106', '0', '5249', '119']\n },\n {\n brand: 'Google Chrome',\n version: ['106', '0', '5249', '119']\n },\n {\n brand: 'Not;A=Brand',\n version: ['99', '0', '0', '0']\n }\n ],\n mobile: 1,\n model: 'model',\n source: 1,\n });\n });\n });\n\n it('does not send 0 for mobile or source', function() {\n const payload = getPayloadFromTestBids([{\n ...minimumBidParams,\n ortb2: { device: { sua: {\n platform: {\n brand: 'macOS',\n version: ['12', '6', '0']\n },\n browsers: [\n {\n brand: 'Chromium',\n version: ['106', '0', '5249', '119']\n },\n {\n brand: 'Google Chrome',\n version: ['106', '0', '5249', '119']\n },\n {\n brand: 'Not;A=Brand',\n version: ['99', '0', '0', '0']\n }\n ],\n mobile: 0,\n model: 'model',\n source: 0,\n } } }\n }]);\n expect(payload.device.sua).to.deep.equal({\n platform: {\n brand: 'macOS',\n version: ['12', '6', '0']\n },\n browsers: [\n {\n brand: 'Chromium',\n version: ['106', '0', '5249', '119']\n },\n {\n brand: 'Google Chrome',\n version: ['106', '0', '5249', '119']\n },\n {\n brand: 'Not;A=Brand',\n version: ['99', '0', '0', '0']\n }\n ],\n model: 'model',\n });\n });\n });\n\n describe('page', function() {\n it('pulls the page ID from localStorage', function() {\n setLocalStorageValue('pageViewId', 'test-page-id');\n const payload = getPayloadFromTestBids(testBids);\n expect(payload.page).to.deep.equal({\n id: 'test-page-id'\n });\n });\n\n it('pulls the page timestamp from localStorage', function() {\n setLocalStorageValue('pageViewTimestamp', '123456789');\n const payload = getPayloadFromTestBids(testBids);\n expect(payload.page).to.deep.equal({\n timestamp: 123456789\n });\n });\n\n it('pulls the page ID from localStorage', function() {\n setLocalStorageValue('pageViewUrl', 'https://test-url.com');\n const payload = getPayloadFromTestBids(testBids);\n expect(payload.page).to.deep.equal({\n url: 'https://test-url.com'\n });\n });\n\n it('pulls all 3 together', function() {\n setLocalStorageValue('pageViewId', 'test-page-id');\n setLocalStorageValue('pageViewTimestamp', '123456789');\n setLocalStorageValue('pageViewUrl', 'https://test-url.com');\n const payload = getPayloadFromTestBids(testBids);\n expect(payload.page).to.deep.equal({\n id: 'test-page-id',\n timestamp: 123456789,\n url: 'https://test-url.com'\n });\n });\n\n it('fails gracefully without localStorage', function() {\n sandbox.stub(STORAGE, 'getDataFromLocalStorage').throws();\n localStorage.removeItem('krg_crb');\n document.cookie = 'krg_crb=; expires=Thu, 01 Jan 1970 00:00:00 GMT; path=/';\n const payload = getPayloadFromTestBids(testBids);\n expect(payload.page).to.be.undefined;\n });\n });\n });\n\n describe('interpretResponse', function() {\n const response = Object.freeze({ body: {\n 1: {\n id: 'foo',\n cpm: 3,\n adm: '<div id=\"1\"></div>',\n width: 320,\n height: 50,\n metadata: {},\n creativeID: 'bar'\n },\n 2: {\n id: 'bar',\n cpm: 2.5,\n adm: '<div id=\"2\"></div>',\n width: 300,\n height: 250,\n targetingCustom: 'dmpmptest1234',\n metadata: {\n landingPageDomain: ['https://foobar.com']\n },\n creativeID: 'foo'\n },\n 3: {\n id: 'bar',\n cpm: 2.5,\n adm: '<div id=\"2\"></div>',\n width: 300,\n height: 250,\n creativeID: 'foo'\n },\n 4: {\n id: 'bar',\n cpm: 2.5,\n adm: '<div id=\"4\"></div>',\n width: 300,\n height: 250,\n mediaType: 'banner',\n metadata: {},\n creativeID: 'foo',\n currency: 'EUR'\n },\n 5: {\n id: 'bar',\n cpm: 2.5,\n adm: '<VAST></VAST>',\n width: 300,\n height: 250,\n mediaType: 'video',\n metadata: {},\n creativeID: 'foo',\n currency: 'EUR'\n },\n 6: {\n id: 'bar',\n cpm: 2.5,\n adm: '',\n admUrl: 'https://foobar.com/vast_adm',\n width: 300,\n height: 250,\n mediaType: 'video',\n metadata: {},\n creativeID: 'foo',\n currency: 'EUR'\n }\n }});\n const bidderRequest = Object.freeze({\n currency: 'USD',\n bids: [{\n bidId: 1,\n params: {\n placementId: 'foo'\n }\n }, {\n bidId: 2,\n params: {\n placementId: 'bar'\n }\n }, {\n bidId: 3,\n params: {\n placementId: 'bar'\n }\n }, {\n bidId: 4,\n params: {\n placementId: 'bar'\n }\n }, {\n bidId: 5,\n params: {\n placementId: 'bar'\n }\n }, {\n bidId: 6,\n params: {\n placementId: 'bar'\n }\n }]\n });\n\n it('returns an empty array if the response body is empty or not an object', function() {\n [\n '',\n undefined,\n false,\n true,\n null,\n [],\n {},\n 1234,\n ].forEach(value => {\n const bids = spec.interpretResponse({ body: value }, bidderRequest);\n expect(bids, `Value - ${JSON.stringify(value)}`).to.deep.equal([]);\n });\n });\n\n it('returns bid response for various objects', function() {\n const bids = spec.interpretResponse(response, bidderRequest);\n expect(bids).to.have.length(Object.keys(response.body).length);\n expect(bids[0]).to.deep.equal({\n ad: '<div id=\"1\"></div>',\n cpm: 3,\n creativeId: 'bar',\n currency: 'USD',\n dealId: undefined,\n height: 50,\n mediaType: 'banner',\n meta: {\n mediaType: 'banner'\n },\n netRevenue: true,\n requestId: '1',\n ttl: 300,\n width: 320,\n });\n expect(bids[1]).to.deep.equal({\n requestId: '2',\n ad: '<div id=\"2\"></div>',\n cpm: 2.5,\n width: 300,\n height: 250,\n ttl: 300,\n creativeId: 'foo',\n dealId: 'dmpmptest1234',\n netRevenue: true,\n currency: 'USD',\n mediaType: 'banner',\n meta: {\n mediaType: 'banner',\n clickUrl: 'https://foobar.com',\n advertiserDomains: ['https://foobar.com']\n }\n });\n expect(bids[2]).to.deep.equal({\n requestId: '3',\n ad: '<div id=\"2\"></div>',\n cpm: 2.5,\n width: 300,\n height: 250,\n ttl: 300,\n creativeId: 'foo',\n dealId: undefined,\n netRevenue: true,\n currency: 'USD',\n mediaType: 'banner',\n meta: {\n mediaType: 'banner'\n }\n });\n expect(bids[3]).to.deep.equal({\n requestId: '4',\n ad: '<div id=\"4\"></div>',\n cpm: 2.5,\n width: 300,\n height: 250,\n ttl: 300,\n creativeId: 'foo',\n dealId: undefined,\n netRevenue: true,\n currency: 'EUR',\n mediaType: 'banner',\n meta: {\n mediaType: 'banner'\n }\n });\n expect(bids[4]).to.deep.equal({\n requestId: '5',\n cpm: 2.5,\n width: 300,\n height: 250,\n vastXml: '<VAST></VAST>',\n ttl: 300,\n creativeId: 'foo',\n dealId: undefined,\n netRevenue: true,\n currency: 'EUR',\n mediaType: 'video',\n meta: {\n mediaType: 'video'\n }\n });\n expect(bids[5]).to.deep.equal({\n requestId: '6',\n cpm: 2.5,\n width: 300,\n height: 250,\n vastUrl: 'https://foobar.com/vast_adm',\n ttl: 300,\n creativeId: 'foo',\n dealId: undefined,\n netRevenue: true,\n currency: 'EUR',\n mediaType: 'video',\n meta: {\n mediaType: 'video'\n }\n });\n });\n\n it('adds landingPageDomain data', function() {\n const response = spec.interpretResponse({ body: { 0: {\n metadata: {\n landingPageDomain: [\n 'https://foo.com',\n 'https://bar.com'\n ]\n }\n } } }, {});\n expect(response[0].meta).to.deep.equal({\n mediaType: 'banner',\n clickUrl: 'https://foo.com',\n advertiserDomains: [ 'https://foo.com', 'https://bar.com' ]\n });\n });\n\n it('should return paapi if provided in bid response', function () {\n const auctionConfig = {\n seller: 'https://kargo.com',\n decisionLogicUrl: 'https://kargo.com/decision_logic.js',\n interestGroupBuyers: ['https://some_buyer.com'],\n perBuyerSignals: {\n 'https://some_buyer.com': { a: 1 }\n }\n }\n\n const body = response.body;\n for (const key in body) {\n if (body.hasOwnProperty(key)) {\n if (key % 2 !== 0) { // Add auctionConfig to every other object\n body[key].auctionConfig = auctionConfig;\n }\n }\n }\n\n const result = spec.interpretResponse(response, bidderRequest);\n\n // Test properties of bidResponses\n result.bids.forEach(bid => {\n expect(bid).to.have.property('requestId');\n expect(bid).to.have.property('cpm');\n expect(bid).to.have.property('width');\n expect(bid).to.have.property('height');\n expect(bid).to.have.property('ttl');\n expect(bid).to.have.property('creativeId');\n expect(bid.netRevenue).to.be.true;\n expect(bid).to.have.property('meta').that.is.an('object');\n });\n\n // Test properties of paapi\n expect(result.paapi).to.have.lengthOf(3);\n\n const expectedBidIds = ['1', '3', '5']; // Expected bidIDs\n result.paapi.forEach(config => {\n expect(config).to.have.property('bidId');\n expect(expectedBidIds).to.include(config.bidId);\n\n expect(config).to.have.property('config').that.is.an('object');\n expect(config.config).to.have.property('seller', 'https://kargo.com');\n expect(config.config).to.have.property('decisionLogicUrl', 'https://kargo.com/decision_logic.js');\n expect(config.config.interestGroupBuyers).to.be.an('array').that.includes('https://some_buyer.com');\n expect(config.config.perBuyerSignals).to.have.property('https://some_buyer.com').that.deep.equals({ a: 1 });\n });\n });\n });\n\n describe('getUserSyncs', function() {\n let crb = {};\n const clientId = 'random-client-id-string';\n const baseUrl = 'https://crb.kargo.com/api/v1/initsyncrnd/random-client-id-string?seed=3205e885-8d37-4139-b47e-f82cff268000&gdpr=0&gdpr_consent=&us_privacy=&gpp=&gpp_sid=';\n\n function buildSyncUrls(baseUrl = 'https://crb.kargo.com/api/v1/initsyncrnd/random-client-id-string?seed=3205e885-8d37-4139-b47e-f82cff268000&gdpr=0&gdpr_consent=&us_privacy=&gpp=&gpp_sid=') {\n const syncs = [];\n\n syncs.push({\n type: 'iframe',\n url: baseUrl\n });\n\n return syncs;\n }\n\n function getUserSyncs(gdpr, usp, gpp) {\n return spec.getUserSyncs(\n { iframeEnabled: true },\n null,\n gdpr,\n usp,\n gpp\n );\n }\n\n beforeEach(function() {\n crb = { clientId };\n sandbox.stub(spec, '_getCrb').callsFake(function() { return crb; });\n\n // Makes the seed in the URLs predictable\n sandbox.stub(utils, 'generateUUID').returns('3205e885-8d37-4139-b47e-f82cff268000');\n });\n\n it('returns user syncs when an ID is present', function() {\n expect(getUserSyncs()).to.deep.equal(buildSyncUrls());\n });\n\n it('returns no syncs if there is no user ID', function() {\n delete crb.clientId;\n expect(getUserSyncs()).to.deep.equal([]);\n });\n\n it('returns no syncs if there is no usp consent', function() {\n expect(getUserSyncs(undefined, '1YYY')).to.deep.equal([]);\n });\n\n it('returns no syncs if iframe syncing is not allowed', function() {\n expect(spec.getUserSyncs({ iframeEnabled: false }, null, undefined, undefined, undefined))\n .to.deep.equal([]);\n expect(spec.getUserSyncs({}, null, undefined, undefined, undefined))\n .to.deep.equal([]);\n });\n\n it('includes the US privacy string in the sync URL if present', function() {\n [\n '0---',\n '1---',\n '1NNN',\n 'invalid',\n 1234,\n ].forEach(value => expect(getUserSyncs(undefined, value), `Value - ${value}`)\n .to.deep.equal(buildSyncUrls(baseUrl.replace(/us_privacy=/, `us_privacy=${value}`))));\n });\n\n it('includes gdpr information if provided', function() {\n [\n { gdprApplies: true, consentString: 'test-consent-string', ga: '1', cs: 'test-consent-string' },\n { gdprApplies: false, consentString: 'test-consent-string', ga: '0', cs: 'test-consent-string' },\n { gdprApplies: true, ga: '1', cs: '' },\n { gdprApplies: false, ga: '0', cs: '' },\n { ga: '0', cs: '' },\n ].forEach(value => expect(getUserSyncs(value), `Value - ${value}`)\n .to.deep.equal(buildSyncUrls(baseUrl\n .replace(/gdpr=\\d/, `gdpr=${value.ga}`)\n .replace(/gdpr_consent=/, `gdpr_consent=${value.cs}`))));\n });\n\n it('handles malformed gdpr information', function() {\n [\n null,\n false,\n true,\n 1,\n '1',\n 'test-applies',\n [],\n {}\n ].forEach(value => expect(getUserSyncs(value), `Value - ${JSON.stringify(value)}`)\n .to.deep.equal(buildSyncUrls(baseUrl)));\n });\n\n it('includes gpp information if provided', function() {\n [\n { applicableSections: [-1], consentString: 'test-consent-string', as: '-1', cs: 'test-consent-string' },\n { applicableSections: [1, 2, 3], consentString: 'test-consent-string', as: '1,2,3', cs: 'test-consent-string' },\n { applicableSections: [-1], as: '-1', cs: '' },\n { applicableSections: false, consentString: 'test-consent-string', as: '', cs: 'test-consent-string' },\n { applicableSections: null, consentString: 'test-consent-string', as: '', cs: 'test-consent-string' },\n { applicableSections: {}, consentString: 'test-consent-string', as: '', cs: 'test-consent-string' },\n { applicableSections: [], consentString: 'test-consent-string', as: '', cs: 'test-consent-string' },\n { as: '', cs: '' },\n ].forEach(value => expect(getUserSyncs(undefined, undefined, value), `Value - ${value}`)\n .to.deep.equal(buildSyncUrls(baseUrl\n .replace(/gpp=/, `gpp=${value.cs}`)\n .replace(/gpp_sid=/, `gpp_sid=${value.as}`))));\n });\n\n it('handles malformed gpp information', function() {\n [\n null,\n false,\n true,\n 1,\n '1',\n 'test-applies',\n [],\n {}\n ].forEach(value => expect(getUserSyncs(undefined, undefined, value), `Value - ${JSON.stringify(value)}`)\n .to.deep.equal(buildSyncUrls(baseUrl)));\n });\n\n it('includes all 3 if provided', function() {\n expect(getUserSyncs(\n { gdprApplies: true, consentString: 'test-gdpr-consent' },\n '1---',\n { applicableSections: [1, 2, 3], consentString: 'test-gpp-consent' }\n )).to.deep.equal(buildSyncUrls(baseUrl\n .replace(/gdpr=\\d/, 'gdpr=1')\n .replace(/gdpr_consent=/, 'gdpr_consent=test-gdpr-consent')\n .replace(/us_privacy=/, 'us_privacy=1---')\n .replace(/gpp=/, 'gpp=test-gpp-consent')\n .replace(/gpp_sid=/, 'gpp_sid=1,2,3')));\n });\n });\n\n describe('supportedMediaTypes', function() {\n it('exposes video and banner', function() {\n expect(spec.supportedMediaTypes).to.deep.equal([ 'banner', 'video' ]);\n });\n });\n\n describe('onTimeout', function () {\n let fetchStub;\n\n beforeEach(function () {\n fetchStub = sinon.stub(global, 'fetch').resolves(); // Stub fetch globally\n });\n\n afterEach(function () {\n fetchStub.restore(); // Restore the original fetch function\n });\n\n it('does not call fetch if timeout data is not provided', function () {\n spec.onTimeout(null);\n expect(fetchStub.callCount).to.equal(0);\n });\n\n it('calls fetch with the correct URLs if timeout data is provided', function () {\n spec.onTimeout([\n { auctionId: 'test-auction-id', timeout: 400 },\n { auctionId: 'test-auction-id-2', timeout: 100 },\n { auctionId: 'test-auction-id-3', timeout: 450 },\n { auctionId: 'test-auction-id-4', timeout: 500 },\n ]);\n\n expect(fetchStub.calledWith(\n 'https://krk2.kargo.com/api/v1/event/timeout?aid=test-auction-id&ato=400',\n { method: 'GET', keepalive: true }\n )).to.be.true;\n\n expect(fetchStub.calledWith(\n 'https://krk2.kargo.com/api/v1/event/timeout?aid=test-auction-id-2&ato=100',\n { method: 'GET', keepalive: true }\n )).to.be.true;\n\n expect(fetchStub.calledWith(\n 'https://krk2.kargo.com/api/v1/event/timeout?aid=test-auction-id-3&ato=450',\n { method: 'GET', keepalive: true }\n )).to.be.true;\n\n expect(fetchStub.calledWith(\n 'https://krk2.kargo.com/api/v1/event/timeout?aid=test-auction-id-4&ato=500',\n { method: 'GET', keepalive: true }\n )).to.be.true;\n });\n });\n});\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"kargoBidAdapter_spec.js","names":["expect","spec","config","getStorageManager","utils","require","STORAGE","bidderCode","describe","bid","outstreamBid","testBids","sandbox","clock","frozenNow","Date","oldBidderSettings","topUrl","domain","referer","defaultBidParams","Object","freeze","bidRequestsCount","bidderRequestsCount","bidderWinsCount","getFloor","ortb2","device","w","h","dnt","language","ua","site","mobile","page","publisher","ref","source","tid","ortb2Imp","ext","data","pbadslot","gpid","userId","tdid","userIdAsEids","uids","id","atype","rtiPartner","floorData","floorMin","schain","validation","ver","complete","nodes","asi","sid","hp","minimumBidParams","params","placementId","mediaTypes","banner","sizes","validCrbIds","validCrbIdsLs","buildCrbValue","isCookie","withIds","withTdid","withLexId","withClientId","optOut","value","expireTime","now","lastSyncedAt","locationString","syncIds","tdID","lexId","clientId","b64Value","btoa","JSON","stringify","v","beforeEach","pbjs","bidderSettings","kargo","storageAllowed","bidder","adUnitCode","bidId","bidderRequestId","auctionId","video","context","playerSize","api","linearity","maxduration","mimes","minduration","placement","playbackmethod","plcmt","protocols","skip","sinon","createSandbox","useFakeTimers","getTime","afterEach","restore","it","gvlid","to","exist","and","equal","code","isBidRequestValid","other","bids","bidderRequest","undefinedCurrency","noAdServerCurrency","nonUSDAdServerCurrency","cookies","localStorageItems","session_id","before","spy","stub","callsFake","key","undefined","adServerCurrency","Error","refererInfo","canonicalUrl","isAmp","location","numIframes","reachedTop","stack","topmostLocation","start","timeout","forEach","document","cookie","localStorage","removeItem","getPayloadFromTestBids","request","buildRequests","payload","_getSessionId","imp","have","length","requestCount","callCount","setCookieValue","name","push","encodeURIComponent","setLocalStorageValue","setItem","crbValues","valid","validLs","invalidB64","invalidB64Ls","invalidJson","invalidJsonLs","setCrb","setCookie","arguments","setLocalStorage","hasOwnProperty","be","an","method","url","bidImp","deep","bidRequestCount","bidderRequestCount","fpd","pid","videoBidImp","user","crbIDs","sharedIDEids","aid","size","window","screen","width","height","pbv","a","with","ts","key2","ortb2WithEids","eids","gender","expectedClonedOrtb2","testBid","deepClone","cat","rid","cur","socialCanvas","segments","socan","inventoryCode","floor","native","bannerImp","videoImp","nativeImp","gpidGpid","bidderWinCount","i","currency","floorValue","calledWith","mediaType","true","rawCRB","rawCRBLocalStorage","kargoID","clientID","throws","usp","gdpr","gpp","uspConsent","gppConsent","consentString","applicableSections","gppString","gdprConsent","gdprApplies","consent","applies","testValue","test","test2","sua","platform","brand","version","browsers","model","objectMissing","timestamp","response","body","cpm","adm","metadata","creativeID","targetingCustom","landingPageDomain","admUrl","interpretResponse","keys","ad","creativeId","dealId","meta","netRevenue","requestId","ttl","clickUrl","advertiserDomains","vastXml","vastUrl","auctionConfig","seller","decisionLogicUrl","interestGroupBuyers","perBuyerSignals","result","property","that","is","paapi","lengthOf","expectedBidIds","include","includes","equals","crb","baseUrl","buildSyncUrls","syncs","type","getUserSyncs","iframeEnabled","returns","replace","ga","cs","as","supportedMediaTypes","fetchStub","global","resolves","onTimeout","keepalive"],"sourceRoot":"../../../../..","sources":["test/spec/modules/kargoBidAdapter_spec.js"],"sourcesContent":["import { expect } from 'chai';\nimport { spec } from 'modules/kargoBidAdapter.js';\nimport { config } from 'src/config.js';\nimport { getStorageManager } from 'src/storageManager.js';\nconst utils = require('src/utils');\nconst STORAGE = getStorageManager({bidderCode: 'kargo'});\n\ndescribe('kargo adapter tests', function() {\n let bid; let outstreamBid; let testBids; let sandbox; let clock; let frozenNow = new Date(); let oldBidderSettings;\n\n const topUrl = 'https://random.com/this/is/a/url';\n const domain = 'random.com';\n const referer = 'https://random.com/';\n\n const defaultBidParams = Object.freeze({\n bidRequestsCount: 1,\n bidderRequestsCount: 1,\n bidderWinsCount: 0,\n getFloor: () => {},\n ortb2: {\n device: {\n w: 1720,\n h: 1000,\n dnt: 0,\n language: 'en',\n ua: 'Mozilla/5.0'\n },\n site: {\n domain: domain,\n mobile: 0,\n page: topUrl,\n publisher: {\n domain: domain\n },\n ref: referer\n },\n source: {\n tid: 'random-tid'\n }\n },\n ortb2Imp: {\n ext: {\n data: {\n pbadslot: '/1234/prebid/slot/path'\n },\n gpid: '/1234/prebid/slot/path',\n }\n },\n userId: {\n tdid: 'random-tdid'\n },\n userIdAsEids: [\n {\n source: 'adquery.io',\n uids: [ {\n id: 'adquery-id',\n atype: 1\n } ]\n },\n {\n source: 'criteo.com',\n uids: [ {\n id: 'criteo-id',\n atype: 1\n } ]\n },\n {\n source: 'adserver.org',\n uids: [ {\n id: 'adserver-id',\n atype: 1,\n ext: { rtiPartner: 'TDID' }\n } ]\n },\n ],\n floorData: {\n floorMin: 1\n },\n schain: {\n validation: 'strict',\n config: {\n ver: '1.0',\n complete: 1,\n nodes: [ {\n asi: 'indirectseller.com',\n sid: '00001',\n hp: 1,\n } ]\n }\n },\n });\n\n const minimumBidParams = Object.freeze({\n params: {\n placementId: 'foobar'\n },\n mediaTypes: {\n banner: { sizes: [ [1, 1] ] }\n }\n });\n\n const validCrbIds = {\n 2: '82fa2555-5969-4614-b4ce-4dcf1080e9f9',\n 16: 'VoxIk8AoJz0AAEdCeyAAAAC2&502',\n 23: 'd2a855a5-1b1c-4300-940e-a708fa1f1bde',\n 24: 'VoxIk8AoJz0AAEdCeyAAAAC2&502',\n 25: '5ee24138-5e03-4b9d-a953-38e833f2849f',\n '2_80': 'd2a855a5-1b1c-4300-940e-a708fa1f1bde',\n '2_93': '5ee24138-5e03-4b9d-a953-38e833f2849f'\n };\n const validCrbIdsLs = {\n 2: '82fa2555-5969-4614-b4ce-4dcf1080e9f9',\n 16: 'VoxIk8AoJz0AAEdCeyAAAAC2&502',\n 23: 'd2a855a5-1b1c-4300-940e-a708fa1f1bde',\n 25: '5ee24138-5e03-4b9d-a953-38e833f2849f',\n '2_80': 'd2a855a5-1b1c-4300-940e-a708fa1f1bde',\n '2_93': '5ee24138-5e03-4b9d-a953-38e833f2849f'\n };\n function buildCrbValue(isCookie, withIds, withTdid, withLexId, withClientId, optOut) {\n const value = {\n expireTime: Date.now() + 60000,\n lastSyncedAt: Date.now() - 60000,\n optOut,\n };\n const locationString = isCookie ? 'cookie' : 'localstorage';\n\n if (withIds) {\n if (isCookie) {\n value.syncIds = validCrbIds;\n } else {\n value.syncIds = validCrbIdsLs;\n }\n }\n if (withTdid) {\n value.tdID = `test-tdid-cerberus-${locationString}`;\n }\n if (withLexId) {\n value.lexId = `test-lexid-cerberus-${locationString}`;\n }\n if (withClientId) {\n value.clientId = `test-clientid-cerberus-${locationString}`;\n }\n\n const b64Value = btoa(JSON.stringify(value));\n if (isCookie) {\n return JSON.stringify({ v: b64Value });\n }\n return b64Value;\n }\n\n beforeEach(function() {\n oldBidderSettings = $$PREBID_GLOBAL$$.bidderSettings;\n $$PREBID_GLOBAL$$.bidderSettings = {\n kargo: { storageAllowed: true }\n };\n\n bid = {\n ...defaultBidParams,\n bidder: 'kargo',\n params: {\n placementId: 'displayPlacement'\n },\n mediaTypes: {\n banner: {\n sizes: [ [970, 250], [1, 1] ]\n }\n },\n adUnitCode: 'displayAdunitCode',\n sizes: [ [300, 250], [300, 600] ],\n bidId: 'randomBidId',\n bidderRequestId: 'randomBidderRequestId',\n auctionId: 'randomAuctionId'\n };\n\n outstreamBid = {\n ...defaultBidParams,\n bidder: 'kargo',\n params: {\n placementId: 'instreamPlacement'\n },\n mediaTypes: {\n video: {\n context: 'instream',\n playerSize: [640, 480],\n api: [ 1, 2 ],\n linearity: 1,\n maxduration: 60,\n mimes: [ 'video/mp4', 'video/webm', 'application/javascript' ],\n minduration: 0,\n placement: 1,\n playbackmethod: [ 1, 2, 3 ],\n plcmt: 1,\n protocols: [ 2, 3, 5 ],\n skip: 1\n }\n },\n adUnitCode: 'instreamAdunitCode',\n sizes: [ [300, 250], [300, 600] ],\n bidId: 'randomBidId2',\n bidderRequestId: 'randomBidderRequestId2',\n auctionId: 'randomAuctionId2'\n };\n\n testBids = [{ ...minimumBidParams }];\n\n sandbox = sinon.createSandbox();\n clock = sinon.useFakeTimers(frozenNow.getTime());\n });\n\n afterEach(function() {\n sandbox.restore();\n clock.restore();\n $$PREBID_GLOBAL$$.bidderSettings = oldBidderSettings;\n });\n\n describe('gvlid', function() {\n it('exposes the gvlid (global vendor list ID) of 972', function() {\n expect(spec.gvlid).to.exist.and.equal(972);\n });\n });\n\n describe('code', function() {\n it('exposes the code kargo', function() {\n expect(spec.code).to.exist.and.equal('kargo');\n });\n });\n\n describe('isBidRequestValid', function() {\n it('fails when the bid object is undefined', function() {\n expect(spec.isBidRequestValid()).to.equal(false);\n });\n\n it('fails when the bid object has no keys at all', function() {\n expect(spec.isBidRequestValid({})).to.equal(false);\n });\n\n it('fails when the bid includes params but not a placement ID', function() {\n expect(spec.isBidRequestValid({ params: {} })).to.equal(false);\n });\n\n it('passes when the bid includes a placement ID', function () {\n expect(spec.isBidRequestValid({ params: { placementId: 'foo' } })).to.equal(true);\n });\n\n it('passes when the bid includes a placement ID and other keys', function() {\n expect(spec.isBidRequestValid({ params: { placementId: 'foo', other: 'value' } })).to.equal(true);\n });\n\n it('passes when the full bid information is provided', function() {\n expect(spec.isBidRequestValid(bid)).to.equal(true);\n expect(spec.isBidRequestValid(outstreamBid)).to.equal(true);\n });\n });\n\n describe('buildRequests', function() {\n let bids;\n let bidderRequest;\n let undefinedCurrency;\n let noAdServerCurrency;\n let nonUSDAdServerCurrency;\n let cookies = [];\n let localStorageItems = [];\n let session_id = null;\n\n before(function() {\n sinon.spy(spec, 'buildRequests');\n });\n\n beforeEach(function() {\n undefinedCurrency = false;\n noAdServerCurrency = false;\n nonUSDAdServerCurrency = false;\n sandbox.stub(config, 'getConfig').callsFake(function (key) {\n if (key === 'currency') {\n if (undefinedCurrency) return undefined;\n\n if (noAdServerCurrency) return {};\n\n if (nonUSDAdServerCurrency) return { adServerCurrency: 'EUR' };\n\n return { adServerCurrency: 'USD' };\n }\n\n if (key === 'debug') return true;\n if (key === 'deviceAccess') return true;\n throw new Error(`Config stub incomplete, missing key \"${key}\"`);\n });\n\n bids = [\n bid,\n outstreamBid\n ];\n\n bidderRequest = {\n bidderCode: 'kargo',\n auctionId: 'test-auction-id',\n bidderRequestId: 'test-request-id',\n bids,\n ortb2: defaultBidParams.ortb2,\n refererInfo: {\n canonicalUrl: topUrl,\n domain,\n isAmp: false,\n location: topUrl,\n numIframes: 0,\n page: topUrl,\n reachedTop: true,\n ref: referer,\n stack: [ topUrl ],\n topmostLocation: topUrl,\n },\n start: Date.now(),\n timeout: 2500,\n };\n });\n afterEach(function() {\n cookies.forEach(key => document.cookie = `${key}=; expires=Thu, 01 Jan 1970 00:00:01 GMT; path=/`);\n cookies = [];\n\n localStorageItems.forEach(key => localStorage.removeItem(key));\n localStorageItems = [];\n });\n\n function getPayloadFromTestBids(testBids) {\n const request = spec.buildRequests(testBids, { ...bidderRequest, bids: testBids });\n const payload = request.data;\n if (session_id === null) session_id = spec._getSessionId();\n\n expect(payload).to.exist;\n expect(payload.imp).to.have.length(testBids.length);\n expect(payload.requestCount).to.equal(spec.buildRequests.callCount - 1);\n expect(payload.sid).to.equal(session_id);\n\n return payload;\n }\n\n function setCookieValue(name, value) {\n cookies.push(name);\n document.cookie = `${encodeURIComponent(name)}=${encodeURIComponent(value)}; max-age-in-seconds=1000; path=/`;\n }\n\n function setLocalStorageValue(name, value) {\n localStorageItems.push(name);\n localStorage.setItem(name, value);\n }\n\n const crbValues = {\n valid: buildCrbValue(true, true, true, true, true, false),\n validLs: buildCrbValue(false, true, true, true, true, false),\n invalidB64: 'crbValue',\n invalidB64Ls: 'crbValueLs',\n invalidJson: 'eyJ0ZXN0OiJ2YWx1ZSJ9',\n invalidJsonLs: 'eyJ0ZXN0OiJ2YWx1ZSJ9',\n };\n function setCrb(\n setCookie = 'valid',\n setLocalStorage = 'valid'\n ) {\n if (crbValues.hasOwnProperty(setCookie)) {\n setCookieValue('krg_crb', crbValues[setCookie]);\n }\n if (crbValues.hasOwnProperty(`${setLocalStorage}Ls`)) {\n setLocalStorageValue('krg_crb', crbValues[`${setLocalStorage}Ls`]);\n }\n }\n\n it('exists and produces an object', function() {\n const request = spec.buildRequests(bids, bidderRequest);\n expect(request).to.exist.and.to.be.an('object');\n });\n\n it('produces a POST request with a payload', function() {\n const request = spec.buildRequests(bids, bidderRequest);\n expect(request.method).to.exist.and.equal('POST');\n expect(request.url).to.exist.and.equal('https://krk2.kargo.com/api/v1/prebid');\n\n const payload = request.data;\n expect(payload).to.exist;\n expect(payload.imp).to.have.length(2);\n\n // Display bid\n const bidImp = payload.imp[0];\n expect(bidImp.id).to.equal('randomBidId');\n expect(bidImp.banner).to.deep.equal({ sizes: [ [970, 250], [1, 1] ] });\n expect(bidImp.video).to.be.undefined;\n expect(bidImp.bidRequestCount).to.equal(1);\n expect(bidImp.bidderRequestCount).to.equal(1);\n expect(bidImp.code).to.equal('displayAdunitCode');\n expect(bidImp.ext.ortb2Imp).to.deep.equal(defaultBidParams.ortb2Imp);\n expect(bidImp.fpd).to.deep.equal({ gpid: '/1234/prebid/slot/path' });\n expect(bidImp.pid).to.equal('displayPlacement');\n\n // Video bid\n const videoBidImp = payload.imp[1];\n expect(videoBidImp.id).to.equal('randomBidId2');\n expect(videoBidImp.banner).to.be.undefined;\n expect(videoBidImp.video).to.deep.equal(outstreamBid.mediaTypes.video);\n expect(videoBidImp.bidRequestCount).to.equal(1);\n expect(videoBidImp.bidderRequestCount).to.equal(1);\n expect(videoBidImp.code).to.equal('instreamAdunitCode');\n expect(videoBidImp.ext.ortb2Imp).to.deep.equal(defaultBidParams.ortb2Imp);\n expect(videoBidImp.fpd).to.deep.equal({ gpid: '/1234/prebid/slot/path' });\n expect(videoBidImp.pid).to.equal('instreamPlacement');\n\n // User\n expect(payload.user).to.be.an('object');\n expect(payload.user.crbIDs).to.deep.equal({});\n expect(payload.user.data).to.deep.equal([]);\n expect(payload.user.sharedIDEids).to.deep.equal(defaultBidParams.userIdAsEids);\n\n // General keys\n expect(payload.aid).to.equal('randomAuctionId');\n expect(payload.device).to.deep.equal({ size: [ window.screen.width, window.screen.height ] });\n expect(payload.ext.ortb2).to.deep.equal(defaultBidParams.ortb2);\n expect(payload.pbv).to.equal('$prebid.version$');\n expect(payload.requestCount).to.equal(spec.buildRequests.callCount - 1);\n expect(payload.sid).to.be.a('string').with.length(36);\n expect(payload.timeout).to.equal(2500);\n expect(payload.url).to.equal(topUrl);\n expect(payload.ts).to.be.a('number');\n });\n\n it('copies the ortb2 object from the first bid request if present', function() {\n let payload;\n payload = getPayloadFromTestBids([{\n ...minimumBidParams,\n ortb2: {\n user: {\n key: 'value'\n }\n }\n }]);\n expect(payload.ext.ortb2).to.deep.equal({\n user: { key: 'value' }\n });\n\n payload = getPayloadFromTestBids(testBids);\n expect(payload.ext.ortb2).to.be.undefined;\n\n payload = getPayloadFromTestBids([{\n ...minimumBidParams,\n ortb2: {\n user: {\n key: 'value'\n }\n }\n }, {\n ...minimumBidParams,\n ortb2: {\n site: {\n key2: 'value2'\n }\n }\n }]);\n expect(payload.ext.ortb2).to.deep.equal({\n user: { key: 'value' }\n }\n );\n });\n\n it('clones ortb2 and removes user.ext.eids without mutating original input', function () {\n const ortb2WithEids = {\n user: {\n ext: {\n eids: [{ source: 'adserver.org', uids: [{ id: 'abc', atype: 1 }] }],\n other: 'data'\n },\n gender: 'M'\n },\n site: {\n domain: 'example.com',\n page: 'https://example.com/page'\n },\n source: {\n tid: 'test-tid'\n }\n };\n\n const expectedClonedOrtb2 = {\n user: {\n ext: {\n other: 'data'\n },\n gender: 'M'\n },\n site: {\n domain: 'example.com',\n page: 'https://example.com/page'\n },\n source: {\n tid: 'test-tid'\n }\n };\n\n const testBid = {\n ...minimumBidParams,\n ortb2: utils.deepClone(ortb2WithEids)\n };\n\n const payload = getPayloadFromTestBids([testBid]);\n\n // Confirm eids were removed from the payload\n expect(payload.ext.ortb2.user.ext.eids).to.be.undefined;\n\n // Confirm original object was not mutated\n expect(testBid.ortb2.user.ext.eids).to.exist.and.be.an('array');\n\n // Confirm the rest of the ortb2 object is intact\n expect(payload.ext.ortb2).to.deep.equal(expectedClonedOrtb2);\n });\n\n it('copies the refererInfo object from bidderRequest if present', function() {\n let payload;\n payload = getPayloadFromTestBids(testBids);\n expect(payload.ext.refererInfo).to.deep.equal({\n canonicalUrl: 'https://random.com/this/is/a/url',\n domain: 'random.com',\n isAmp: false,\n location: 'https://random.com/this/is/a/url',\n numIframes: 0,\n page: 'https://random.com/this/is/a/url',\n reachedTop: true,\n ref: 'https://random.com/',\n stack: [\n 'https://random.com/this/is/a/url'\n ],\n topmostLocation: 'https://random.com/this/is/a/url'\n });\n\n delete bidderRequest.refererInfo\n payload = getPayloadFromTestBids(testBids);\n expect(payload.ext).to.be.undefined;\n });\n\n it('pulls the site category from the first bids ortb2 object', function() {\n let payload;\n payload = getPayloadFromTestBids([{\n ...minimumBidParams,\n ortb2: { site: { cat: 'test-cat' } }\n }]);\n expect(payload.site).to.deep.equal({ cat: 'test-cat' });\n\n payload = getPayloadFromTestBids(testBids);\n expect(payload.site).to.be.undefined;\n\n payload = getPayloadFromTestBids([{\n ...minimumBidParams,\n ortb2: { site: { cat: 'test-cat' } }\n }, {\n ...minimumBidParams,\n ortb2: { site: { cat: 'test-cat-2' } }\n }]);\n expect(payload.site).to.deep.equal({ cat: 'test-cat' });\n });\n\n it('pulls the schain from the first bid if it is populated', function() {\n let payload;\n payload = getPayloadFromTestBids(testBids);\n expect(payload.schain).to.be.undefined;\n\n payload = getPayloadFromTestBids([{\n ...minimumBidParams,\n schain: {}\n }, {\n ...minimumBidParams,\n ortb2: {\n source: {\n ext: {\n schain: {\n complete: 1,\n nodes: [{\n asi: 'test-page.com',\n hp: 1,\n rid: '57bdd953-6e57-4d5b-9351-ed67ca238890',\n sid: '8190248274'\n }]\n }\n }\n }\n }\n }]);\n expect(payload.schain).to.be.undefined;\n\n payload = getPayloadFromTestBids([{\n ...minimumBidParams,\n ortb2: {\n source: {\n ext: {\n schain: {\n complete: 1,\n nodes: [{\n asi: 'test-page.com',\n hp: 1,\n rid: '57bdd953-6e57-4d5b-9351-ed67ca238890',\n sid: '8190248274'\n }]\n }\n }\n }\n }\n }, {\n ...minimumBidParams,\n ortb2: {\n source: {\n ext: {\n schain: {\n complete: 1,\n nodes: [{\n asi: 'test-page-2.com',\n hp: 1,\n rid: 'other-rid',\n sid: 'other-sid'\n }]\n }\n }\n }\n }\n }]);\n expect(payload.schain).to.deep.equal({\n complete: 1,\n nodes: [{\n asi: 'test-page.com',\n hp: 1,\n rid: '57bdd953-6e57-4d5b-9351-ed67ca238890',\n sid: '8190248274'\n }]\n });\n });\n\n it('does not send currency if it is not defined', function() {\n undefinedCurrency = true;\n const payload = getPayloadFromTestBids(testBids);\n expect(payload.cur).to.be.undefined;\n });\n\n it('does not send currency if it is missing', function() {\n noAdServerCurrency = true;\n const payload = getPayloadFromTestBids(testBids);\n expect(payload.cur).to.be.undefined;\n });\n\n it('does not send currency if it is USD', function() {\n const payload = getPayloadFromTestBids(testBids);\n expect(payload.cur).to.be.undefined;\n });\n\n it('provides the currency if it is not USD', function() {\n nonUSDAdServerCurrency = true;\n const payload = getPayloadFromTestBids(testBids);\n expect(payload.cur).to.equal('EUR');\n });\n\n it('provides the social canvas segments and URL if provided', function() {\n let payload;\n payload = getPayloadFromTestBids([{\n ...minimumBidParams,\n }, {\n ...minimumBidParams,\n params: {\n ...minimumBidParams.params,\n socialCanvas: {\n segments: ['segment_1', 'segment_2', 'segment_3'],\n url: 'https://socan.url'\n }\n }\n }]);\n expect(payload.socan).to.be.undefined;\n\n payload = getPayloadFromTestBids([{\n ...minimumBidParams,\n params: {\n ...minimumBidParams.params,\n socialCanvas: null\n }\n }, {\n ...minimumBidParams,\n params: {\n ...minimumBidParams.params,\n socialCanvas: {\n segments: ['segment_1', 'segment_2', 'segment_3'],\n url: 'https://socan.url'\n }\n }\n }]);\n expect(payload.socan).to.be.undefined;\n\n payload = getPayloadFromTestBids([{\n ...minimumBidParams,\n params: {\n ...minimumBidParams.params,\n socialCanvas: {\n segments: ['segment_1', 'segment_2', 'segment_3'],\n url: 'https://socan.url'\n }\n }\n }, {\n ...minimumBidParams,\n params: {\n ...minimumBidParams.params,\n socialCanvas: {\n segments: ['segment_4', 'segment_5', 'segment_6'],\n url: 'https://socan.url/new'\n }\n }\n }]);\n expect(payload.socan).to.deep.equal({\n segments: ['segment_1', 'segment_2', 'segment_3'],\n url: 'https://socan.url'\n });\n });\n\n describe('imp', function() {\n it('handles slots with different combinations of formats', function() {\n const testBids = [\n // Banner and Outstream\n {\n ...bid,\n params: {\n inventoryCode: 'banner_outstream_test',\n floor: 1.0,\n video: {\n mimes: [ 'video/mp4' ],\n maxduration: 30,\n minduration: 6,\n w: 640,\n h: 480\n }\n },\n mediaTypes: {\n video: {\n context: 'outstream',\n playerSize: [640, 380]\n },\n banner: {\n sizes: [ [970, 250], [1, 1] ]\n }\n },\n adUnitCode: 'adunit-code-banner-outstream',\n sizes: [ [300, 250], [300, 600], [1, 1, 1], ['flex'] ],\n bidId: 'banner-outstream-bid-id',\n bidderRequestId: 'kargo-request-id',\n auctionId: 'kargo-auction-id',\n },\n // Banner and Native\n {\n ...bid,\n params: {\n inventoryCode: 'banner_outstream_test',\n floor: 1.0,\n video: {\n mimes: [ 'video/mp4' ],\n maxduration: 30,\n minduration: 6,\n w: 640,\n h: 480\n }\n },\n mediaTypes: {\n banner: {\n sizes: [ [970, 250], [1, 1] ]\n },\n native: {}\n },\n adUnitCode: 'adunit-code-banner-outstream',\n sizes: [ [300, 250], [300, 600], [1, 1, 1], ['flex'] ],\n bidId: 'banner-outstream-bid-id',\n bidderRequestId: 'kargo-request-id',\n auctionId: 'kargo-auction-id',\n },\n // Native and Outstream\n {\n ...bid,\n params: {\n inventoryCode: 'banner_outstream_test',\n floor: 1.0,\n video: {\n mimes: [ 'video/mp4' ],\n maxduration: 30,\n minduration: 6,\n w: 640,\n h: 480\n }\n },\n mediaTypes: {\n video: {\n context: 'outstream',\n playerSize: [640, 380]\n },\n native: {},\n },\n adUnitCode: 'adunit-code-banner-outstream',\n sizes: [ [300, 250], [300, 600], [1, 1, 1], ['flex'] ],\n bidId: 'banner-outstream-bid-id',\n bidderRequestId: 'kargo-request-id',\n auctionId: 'kargo-auction-id',\n },\n // Banner and Native and Outstream\n {\n ...bid,\n params: {\n inventoryCode: 'banner_outstream_test',\n floor: 1.0,\n video: {\n mimes: [ 'video/mp4' ],\n maxduration: 30,\n minduration: 6,\n w: 640,\n h: 480\n }\n },\n mediaTypes: {\n video: {\n context: 'outstream',\n playerSize: [640, 380]\n },\n banner: {\n sizes: [ [970, 250], [1, 1] ]\n },\n native: {},\n },\n adUnitCode: 'adunit-code-banner-outstream',\n sizes: [ [300, 250], [300, 600], [1, 1, 1], ['flex'] ],\n bidId: 'banner-outstream-bid-id',\n bidderRequestId: 'kargo-request-id',\n auctionId: 'kargo-auction-id',\n },\n ];\n\n const payload = getPayloadFromTestBids(testBids);\n\n const bannerImp = {\n sizes: [ [970, 250], [1, 1] ]\n };\n const videoImp = {\n context: 'outstream',\n playerSize: [640, 380]\n };\n const nativeImp = {};\n\n // Banner and Outstream\n expect(payload.imp[0].banner).to.deep.equal(bannerImp);\n expect(payload.imp[0].video).to.deep.equal(videoImp);\n expect(payload.imp[0].native).to.be.undefined;\n // Banner and Native\n expect(payload.imp[1].banner).to.deep.equal(bannerImp);\n expect(payload.imp[1].video).to.be.undefined;\n expect(payload.imp[1].native).to.deep.equal(nativeImp);\n // Native and Outstream\n expect(payload.imp[2].banner).to.be.undefined;\n expect(payload.imp[2].video).to.deep.equal(videoImp);\n expect(payload.imp[2].native).to.deep.equal(nativeImp);\n // Banner and Native and Outstream\n expect(payload.imp[3].banner).to.deep.equal(bannerImp);\n expect(payload.imp[3].video).to.deep.equal(videoImp);\n expect(payload.imp[3].native).to.deep.equal(nativeImp);\n });\n\n it('pulls gpid from ortb2Imp.ext.gpid', function () {\n const gpidGpid = 'ortb2Imp.ext.gpid-gpid';\n const testBids = [\n {\n ...minimumBidParams,\n ortb2Imp: {\n ext: {\n gpid: gpidGpid,\n data: {}\n }\n }\n },\n {\n ...minimumBidParams,\n ortb2Imp: {\n ext: {\n gpid: gpidGpid,\n data: {},\n }\n }\n },\n {\n ...minimumBidParams,\n ortb2Imp: {\n ext: {\n data: {}\n }\n }\n },\n {\n ...minimumBidParams,\n ortb2Imp: {\n ext: {\n gpid: null,\n data: {\n pbadslot: null\n }\n }\n }\n },\n { ...minimumBidParams }\n ];\n\n const payload = getPayloadFromTestBids(testBids);\n\n // Both present\n expect(payload.imp[0].fpd).to.deep.equal({ gpid: gpidGpid });\n // Only ext.gpid\n expect(payload.imp[1].fpd).to.deep.equal({ gpid: gpidGpid });\n // Neither present\n expect(payload.imp[3].fpd).to.be.undefined;\n expect(payload.imp[4].fpd).to.be.undefined;\n });\n\n it('includes bidRequestCount, bidderRequestCount, and bidderWinsCount if they are greater than 0', function() {\n const testBids = [\n {\n ...minimumBidParams,\n bidRequestsCount: 1,\n bidderRequestsCount: 0,\n bidderWinsCount: 0,\n },\n {\n ...minimumBidParams,\n bidRequestsCount: 0,\n bidderRequestsCount: 2,\n bidderWinsCount: 0,\n },\n {\n ...minimumBidParams,\n bidRequestsCount: 0,\n bidderRequestsCount: 0,\n bidderWinsCount: 3,\n },\n {\n ...minimumBidParams,\n bidRequestsCount: 4,\n bidderRequestsCount: 1,\n bidderWinsCount: 3,\n },\n ];\n\n [ 0, null, false, 'foobar' ].forEach(value => testBids.push({\n ...minimumBidParams,\n bidRequestsCount: value,\n bidderRequestsCount: value,\n bidderWinsCount: value\n }));\n\n const payload = getPayloadFromTestBids(testBids);\n\n // bidRequestCount\n expect(payload.imp[0].bidRequestCount).to.equal(1);\n expect(payload.imp[0].bidderRequestCount).to.be.undefined;\n expect(payload.imp[0].bidderWinCount).to.be.undefined;\n // bidderRequestCount\n expect(payload.imp[1].bidRequestCount).to.be.undefined;\n expect(payload.imp[1].bidderRequestCount).to.equal(2);\n expect(payload.imp[1].bidderWinCount).to.be.undefined;\n // bidderWinCount\n expect(payload.imp[2].bidRequestCount).to.be.undefined;\n expect(payload.imp[2].bidderRequestCount).to.be.undefined;\n expect(payload.imp[2].bidderWinCount).to.equal(3);\n // all\n expect(payload.imp[3].bidRequestCount).to.equal(4);\n expect(payload.imp[3].bidderRequestCount).to.equal(1);\n expect(payload.imp[3].bidderWinCount).to.equal(3);\n // none\n for (let i = 4; i < payload.imp.length; i++) {\n expect(payload.imp[i].bidRequestCount).to.be.undefined;\n expect(payload.imp[i].bidderRequestCount).to.be.undefined;\n expect(payload.imp[i].bidderWinCount).to.be.undefined;\n }\n });\n\n it('queries the getFloor function to retrieve the floor and validates it', function() {\n const testBids = [];\n\n [\n { currency: 'USD', floor: 1.99 },\n { currency: 'USD', floor: '1.99' },\n { currency: 'EUR', floor: 1.99 },\n { currency: 'USD', floor: 'foo' },\n { currency: 'USD', floor: null },\n { currency: 'USD', floor: true },\n { currency: 'USD', floor: false },\n { currency: 'USD', floor: {} },\n { currency: 'USD', floor: [] },\n ].forEach(floorValue => testBids.push({\n ...minimumBidParams,\n getFloor: () => floorValue\n }));\n\n const payload = getPayloadFromTestBids(testBids);\n\n // Valid floor\n expect(payload.imp[0].floor).to.equal(1.99);\n // Valid floor but string\n expect(payload.imp[1].floor).to.equal('1.99'); // @TODO - convert this to a number?\n // Non-USD valid floor\n expect(payload.imp[2].floor).to.be.undefined;\n // Invalid floor\n for (let i = 3; i < payload.imp.length; i++) {\n expect(payload.imp[i].floor).to.be.undefined;\n }\n });\n\n it('calls getFloor with the right values', function() {\n const testBids = [\n {\n ...minimumBidParams,\n getFloor: () => ({ currency: 'USD', value: 0.5 })\n }\n ];\n sinon.spy(testBids[0], 'getFloor');\n\n getPayloadFromTestBids(testBids);\n\n expect(testBids[0].getFloor.calledWith({\n currency: 'USD',\n mediaType: '*',\n size: '*'\n })).to.be.true;\n });\n });\n\n describe('cerberus', function() {\n it('retrieves CRB from localStorage and cookies', function() {\n setCrb('valid', 'valid');\n\n const payload = getPayloadFromTestBids(testBids, bidderRequest);\n\n expect(payload.rawCRB).to.equal(crbValues.valid);\n expect(payload.rawCRBLocalStorage).to.equal(crbValues.validLs);\n expect(payload.user.crbIDs).to.deep.equal(validCrbIdsLs);\n expect(payload.user.tdID).to.equal('test-tdid-cerberus-localstorage');\n expect(payload.user.kargoID).to.equal('test-lexid-cerberus-localstorage');\n expect(payload.user.clientID).to.equal('test-clientid-cerberus-localstorage');\n expect(payload.user.optOut).to.equal(false);\n });\n\n it('retrieves CRB from localStorage if cookie is missing', function() {\n setCrb(false, 'valid');\n\n const payload = getPayloadFromTestBids(testBids, bidderRequest);\n\n expect(payload.rawCRB).to.be.undefined;\n expect(payload.rawCRBLocalStorage).to.equal(crbValues.validLs);\n expect(payload.user.crbIDs).to.deep.equal(validCrbIdsLs);\n expect(payload.user.tdID).to.equal('test-tdid-cerberus-localstorage');\n expect(payload.user.kargoID).to.equal('test-lexid-cerberus-localstorage');\n expect(payload.user.clientID).to.equal('test-clientid-cerberus-localstorage');\n expect(payload.user.optOut).to.equal(false);\n });\n\n it('retrieves CRB from cookies if localstorage is missing', function() {\n setCrb('valid', false);\n\n const payload = getPayloadFromTestBids(testBids, bidderRequest);\n\n expect(payload.rawCRB).to.equal(crbValues.valid);\n expect(payload.rawCRBLocalStorage).to.be.undefined;\n expect(payload.user.crbIDs).to.deep.equal(validCrbIds);\n expect(payload.user.tdID).to.equal('test-tdid-cerberus-cookie');\n expect(payload.user.kargoID).to.equal('test-lexid-cerberus-cookie');\n expect(payload.user.clientID).to.equal('test-clientid-cerberus-cookie');\n expect(payload.user.optOut).to.equal(false);\n });\n\n it('retrieves CRB from cookies if localstorage is not functional', function() {\n // Safari does not allow stubbing localStorage methods directly.\n // Stub the storage manager instead so all browsers behave consistently.\n sandbox.stub(STORAGE, 'getDataFromLocalStorage').throws();\n setCrb('valid', 'invalid');\n\n const payload = getPayloadFromTestBids(testBids, bidderRequest);\n\n expect(payload.rawCRB).to.equal(crbValues.valid);\n expect(payload.rawCRBLocalStorage).to.be.undefined;\n expect(payload.user.crbIDs).to.deep.equal(validCrbIds);\n expect(payload.user.tdID).to.equal('test-tdid-cerberus-cookie');\n expect(payload.user.kargoID).to.equal('test-lexid-cerberus-cookie');\n expect(payload.user.clientID).to.equal('test-clientid-cerberus-cookie');\n expect(payload.user.optOut).to.equal(false);\n });\n\n it('does not fail if CRB is missing', function() {\n const payload = getPayloadFromTestBids(testBids, bidderRequest);\n\n expect(payload.rawCRB).to.be.undefined;\n expect(payload.rawCRBLocalStorage).to.be.undefined;\n expect(payload.user.crbIDs).to.deep.equal({});\n expect(payload.user.tdID).to.be.undefined;\n expect(payload.user.kargoID).to.be.undefined;\n expect(payload.user.clientID).to.be.undefined;\n expect(payload.user.optOut).to.be.undefined;\n });\n\n it('fails gracefully if the CRB is invalid base 64 cookie', function() {\n setCrb('invalidB64', false);\n\n const payload = getPayloadFromTestBids(testBids, bidderRequest);\n\n expect(payload.rawCRB).to.equal(crbValues.invalidB64);\n expect(payload.rawCRBLocalStorage).to.be.undefined;\n expect(payload.user.crbIDs).to.deep.equal({});\n expect(payload.user.tdID).to.be.undefined;\n expect(payload.user.kargoID).to.be.undefined;\n expect(payload.user.clientID).to.be.undefined;\n expect(payload.user.optOut).to.be.undefined;\n });\n\n it('fails gracefully if the CRB is invalid base 64 localStorage', function() {\n setCrb(false, 'invalidB64');\n\n const payload = getPayloadFromTestBids(testBids, bidderRequest);\n\n expect(payload.rawCRB).to.be.undefined;\n expect(payload.rawCRBLocalStorage).to.equal(crbValues.invalidB64Ls);\n expect(payload.user.crbIDs).to.deep.equal({});\n expect(payload.user.tdID).to.be.undefined;\n expect(payload.user.kargoID).to.be.undefined;\n expect(payload.user.clientID).to.be.undefined;\n expect(payload.user.optOut).to.be.undefined;\n });\n\n [\n [ 'valid', 'invalidB64', 'cookie' ],\n [ 'valid', 'invalidJson', 'cookie' ],\n [ 'invalidB64', 'invalidJson', 'none' ],\n [ 'invalidB64', 'invalidB64', 'none' ],\n [ 'invalidB64', 'valid', 'localStorage' ],\n [ 'invalidJson', 'invalidJson', 'none' ],\n [ 'invalidJson', 'invalidB64', 'none' ],\n [ 'invalidJson', 'valid', 'localStorage' ],\n ].forEach(config => {\n it(`uses ${config[2]} if the cookie is ${config[0]} and localStorage is ${config[1]}`, function() {\n setCrb(config[0], config[1]);\n const payload = getPayloadFromTestBids(testBids, bidderRequest);\n\n expect(payload.rawCRB).to.equal(crbValues[config[0]]);\n expect(payload.rawCRBLocalStorage).to.equal(crbValues[`${config[1]}Ls`]);\n if (config[2] === 'cookie') {\n expect(payload.user.crbIDs).to.deep.equal(validCrbIds);\n expect(payload.user.tdID).to.equal('test-tdid-cerberus-cookie');\n expect(payload.user.kargoID).to.equal('test-lexid-cerberus-cookie');\n expect(payload.user.clientID).to.equal('test-clientid-cerberus-cookie');\n expect(payload.user.optOut).to.equal(false);\n } else if (config[2] === 'localStorage') {\n expect(payload.user.crbIDs).to.deep.equal(validCrbIdsLs);\n expect(payload.user.tdID).to.equal('test-tdid-cerberus-localstorage');\n expect(payload.user.kargoID).to.equal('test-lexid-cerberus-localstorage');\n expect(payload.user.clientID).to.equal('test-clientid-cerberus-localstorage');\n expect(payload.user.optOut).to.equal(false);\n } else {\n expect(payload.user.crbIDs).to.deep.equal({});\n expect(payload.user.tdID).to.be.undefined;\n expect(payload.user.kargoID).to.be.undefined;\n expect(payload.user.clientID).to.be.undefined;\n expect(payload.user.optOut).to.be.undefined;\n }\n });\n });\n\n it('uses the tdID from cerberus to populate the tdID field', function() {\n setCrb('valid', 'valid');\n const payload = getPayloadFromTestBids(testBids, bidderRequest);\n\n expect(payload.user.tdID).to.equal('test-tdid-cerberus-localstorage');\n });\n\n it('uses the lexId from cerberus to populate the kargoID field', function() {\n setCrb('valid', 'valid');\n const payload = getPayloadFromTestBids(testBids, bidderRequest);\n\n expect(payload.user.kargoID).to.equal('test-lexid-cerberus-localstorage');\n });\n\n it('uses the clientId from cerberus to populate the clientID field', function() {\n setCrb('valid', 'valid');\n const payload = getPayloadFromTestBids(testBids, bidderRequest);\n\n expect(payload.user.clientID).to.equal('test-clientid-cerberus-localstorage');\n });\n\n it('uses the optOut from cerberus to populate the clientID field', function() {\n setCrb('valid', 'valid');\n let payload;\n payload = getPayloadFromTestBids(testBids, bidderRequest);\n\n expect(payload.user.optOut).to.equal(false);\n\n setLocalStorageValue('krg_crb', buildCrbValue(false, true, true, true, true, true));\n payload = getPayloadFromTestBids(testBids, bidderRequest);\n\n expect(payload.user.optOut).to.equal(true);\n });\n });\n\n describe('user', function() {\n it('fetches the trade desk id from the adapter if present', function() {\n const payload = getPayloadFromTestBids([{\n ...minimumBidParams,\n userId: {\n tdid: 'test-tdid-module'\n }\n }]);\n\n expect(payload.user.tdID).to.equal('test-tdid-module');\n });\n\n it('fetches the trade desk id from cerberus if present', function() {\n setLocalStorageValue('krg_crb', btoa(JSON.stringify({ tdID: 'test-tdid-crb' })));\n\n const payload = getPayloadFromTestBids([{\n ...minimumBidParams,\n }]);\n\n expect(payload.user.tdID).to.equal('test-tdid-crb');\n });\n\n it('fetches the trade desk id from the adapter if adapter and cerberus are present', function() {\n setLocalStorageValue('krg_crb', buildCrbValue(false, true, true, true, true, false));\n\n const payload = getPayloadFromTestBids([{\n ...minimumBidParams,\n userId: {\n tdid: 'test-tdid-module'\n }\n }]);\n\n expect(payload.user.tdID).to.equal('test-tdid-module');\n });\n\n it('does not set kargoId if it is not present', function() {\n const payload = getPayloadFromTestBids([{ ...minimumBidParams }]);\n\n expect(payload.user.lexId).to.be.undefined;\n });\n\n it('does not populate usp, gdpr, or gpp if they are not present', function() {\n const payload = getPayloadFromTestBids([{ ...minimumBidParams }]);\n\n expect(payload.user.usp).to.be.undefined;\n expect(payload.user.gdpr).to.be.undefined;\n expect(payload.user.gpp).to.be.undefined;\n });\n\n it('fetches usp from the bidder request if present', function() {\n bidderRequest.uspConsent = '1---';\n const payload = getPayloadFromTestBids([{ ...minimumBidParams }]);\n\n expect(payload.user.usp).to.equal('1---');\n });\n\n it('fetches gpp from the bidder request if present', function() {\n bidderRequest.gppConsent = {\n consentString: 'gppString',\n applicableSections: [-1]\n };\n const payload = getPayloadFromTestBids([{ ...minimumBidParams }]);\n\n expect(payload.user.gpp).to.deep.equal({\n gppString: 'gppString',\n applicableSections: [-1]\n });\n });\n\n it('does not send empty gpp values', function() {\n bidderRequest.gppConsent = {\n consentString: '',\n applicableSections: ''\n };\n const payload = getPayloadFromTestBids([{ ...minimumBidParams }]);\n\n expect(payload.user.gpp).to.be.undefined;\n });\n\n it('fetches gdpr consent from the bidder request if present', function() {\n bidderRequest.gdprConsent = {\n consentString: 'gdpr-consent-string',\n gdprApplies: true\n };\n const payload = getPayloadFromTestBids([{ ...minimumBidParams }]);\n\n expect(payload.user.gdpr).to.deep.equal({\n consent: 'gdpr-consent-string',\n applies: true\n });\n });\n\n it('handles malformed gdpr applies from the bidder request', function() {\n [\n ['true', true],\n ['false', true],\n ['1', true],\n [1, true],\n [0, false],\n ['0', true],\n ['y', true],\n ['yes', true],\n ['n', true],\n ['no', true],\n [null, false],\n [{}, true],\n ].forEach(testValue => {\n bidderRequest.gdprConsent = { gdprApplies: testValue[0] };\n const payload = getPayloadFromTestBids([{ ...minimumBidParams }]);\n expect(payload.user.gdpr, `Value - ${JSON.stringify(testValue[0])}`).to.deep.equal({\n consent: '',\n applies: testValue[1]\n });\n });\n });\n\n it('passes the user.data from the first bid request if availabale', function() {\n let payload;\n payload = getPayloadFromTestBids([{\n ...minimumBidParams,\n }, {\n ...minimumBidParams,\n ortb2: { user: { data: { test: 'value' } } }\n }]);\n expect(payload.user.data).to.deep.equal([]);\n\n payload = getPayloadFromTestBids([{\n ...minimumBidParams,\n ortb2: { user: { data: { test: 'value' } } }\n }, {\n ...minimumBidParams,\n ortb2: { user: { data: { test2: 'value2' } } }\n }]);\n expect(payload.user.data).to.deep.equal({\n test: 'value'\n });\n });\n\n it('fails gracefully if there is no localStorage', function() {\n sandbox.stub(STORAGE, 'getDataFromLocalStorage').throws();\n localStorage.removeItem('krg_crb');\n document.cookie = 'krg_crb=; expires=Thu, 01 Jan 1970 00:00:00 GMT; path=/';\n const payload = getPayloadFromTestBids(testBids);\n expect(payload.user).to.deep.equal({\n crbIDs: {},\n data: []\n });\n });\n });\n\n describe('sua', function() {\n it('is not provided if not present in the first valid bid', function() {\n const payload = getPayloadFromTestBids([\n ...testBids,\n {\n ...minimumBidParams,\n ortb2: { device: { sua: {\n platform: {\n brand: 'macOS',\n version: ['12', '6', '0']\n },\n browsers: [\n {\n brand: 'Chromium',\n version: ['106', '0', '5249', '119']\n },\n {\n brand: 'Google Chrome',\n version: ['106', '0', '5249', '119']\n },\n {\n brand: 'Not;A=Brand',\n version: ['99', '0', '0', '0']\n }\n ],\n mobile: 1,\n model: 'model',\n source: 1,\n } } }\n }\n ]);\n expect(payload.device.sua).to.be.undefined;\n });\n\n it('is provided if present in the first valid bid', function() {\n const payload = getPayloadFromTestBids([\n {\n ...minimumBidParams,\n ortb2: { device: { sua: {\n platform: {\n brand: 'macOS',\n version: ['12', '6', '0']\n },\n browsers: [\n {\n brand: 'Chromium',\n version: ['106', '0', '5249', '119']\n },\n {\n brand: 'Google Chrome',\n version: ['106', '0', '5249', '119']\n },\n {\n brand: 'Not;A=Brand',\n version: ['99', '0', '0', '0']\n }\n ],\n mobile: 1,\n model: 'model',\n source: 1,\n } } }\n },\n {\n ...minimumBidParams,\n ortb2: { device: { sua: {\n platform: {\n brand: 'macOS2',\n version: ['122', '6', '0']\n },\n browsers: [\n {\n brand: 'Chromium2',\n version: ['1062', '0', '5249', '119']\n },\n {\n brand: 'Google Chrome2',\n version: ['102', '0', '5249', '119']\n },\n {\n brand: 'Not;A=Brand2',\n version: ['992', '0', '0', '0']\n }\n ],\n mobile: 2,\n model: 'model2',\n source: 2,\n } } }\n }\n ]);\n expect(payload.device.sua).to.deep.equal({\n platform: {\n brand: 'macOS',\n version: ['12', '6', '0']\n },\n browsers: [\n {\n brand: 'Chromium',\n version: ['106', '0', '5249', '119']\n },\n {\n brand: 'Google Chrome',\n version: ['106', '0', '5249', '119']\n },\n {\n brand: 'Not;A=Brand',\n version: ['99', '0', '0', '0']\n }\n ],\n mobile: 1,\n model: 'model',\n source: 1,\n });\n });\n\n it('does not send non-mapped attributes', function() {\n const payload = getPayloadFromTestBids([{...minimumBidParams,\n ortb2: { device: { sua: {\n other: 'value',\n objectMissing: {\n key: 'value'\n },\n platform: {\n brand: 'macOS',\n version: ['12', '6', '0']\n },\n browsers: [\n {\n brand: 'Chromium',\n version: ['106', '0', '5249', '119']\n },\n {\n brand: 'Google Chrome',\n version: ['106', '0', '5249', '119']\n },\n {\n brand: 'Not;A=Brand',\n version: ['99', '0', '0', '0']\n }\n ],\n mobile: 1,\n model: 'model',\n source: 1,\n } } }\n }]);\n expect(payload.device.sua).to.deep.equal({\n platform: {\n brand: 'macOS',\n version: ['12', '6', '0']\n },\n browsers: [\n {\n brand: 'Chromium',\n version: ['106', '0', '5249', '119']\n },\n {\n brand: 'Google Chrome',\n version: ['106', '0', '5249', '119']\n },\n {\n brand: 'Not;A=Brand',\n version: ['99', '0', '0', '0']\n }\n ],\n mobile: 1,\n model: 'model',\n source: 1,\n });\n });\n\n it('does not send non-truthy values or empty strings', function() {\n [\n false,\n 0,\n null,\n '',\n ' ',\n ' ',\n ].forEach(value => {\n const payload = getPayloadFromTestBids([{...minimumBidParams,\n ortb2: { device: { sua: {\n platform: value,\n browsers: [\n {\n brand: 'Chromium',\n version: ['106', '0', '5249', '119']\n },\n {\n brand: 'Google Chrome',\n version: ['106', '0', '5249', '119']\n },\n {\n brand: 'Not;A=Brand',\n version: ['99', '0', '0', '0']\n }\n ],\n mobile: 1,\n model: 'model',\n source: 1,\n } } }\n }]);\n expect(payload.device.sua, `Value - ${JSON.stringify(value)}`).to.deep.equal({\n browsers: [\n {\n brand: 'Chromium',\n version: ['106', '0', '5249', '119']\n },\n {\n brand: 'Google Chrome',\n version: ['106', '0', '5249', '119']\n },\n {\n brand: 'Not;A=Brand',\n version: ['99', '0', '0', '0']\n }\n ],\n mobile: 1,\n model: 'model',\n source: 1,\n });\n });\n });\n\n it('does not send 0 for mobile or source', function() {\n const payload = getPayloadFromTestBids([{\n ...minimumBidParams,\n ortb2: { device: { sua: {\n platform: {\n brand: 'macOS',\n version: ['12', '6', '0']\n },\n browsers: [\n {\n brand: 'Chromium',\n version: ['106', '0', '5249', '119']\n },\n {\n brand: 'Google Chrome',\n version: ['106', '0', '5249', '119']\n },\n {\n brand: 'Not;A=Brand',\n version: ['99', '0', '0', '0']\n }\n ],\n mobile: 0,\n model: 'model',\n source: 0,\n } } }\n }]);\n expect(payload.device.sua).to.deep.equal({\n platform: {\n brand: 'macOS',\n version: ['12', '6', '0']\n },\n browsers: [\n {\n brand: 'Chromium',\n version: ['106', '0', '5249', '119']\n },\n {\n brand: 'Google Chrome',\n version: ['106', '0', '5249', '119']\n },\n {\n brand: 'Not;A=Brand',\n version: ['99', '0', '0', '0']\n }\n ],\n model: 'model',\n });\n });\n });\n\n describe('page', function() {\n it('pulls the page ID from localStorage', function() {\n setLocalStorageValue('pageViewId', 'test-page-id');\n const payload = getPayloadFromTestBids(testBids);\n expect(payload.page).to.deep.equal({\n id: 'test-page-id'\n });\n });\n\n it('pulls the page timestamp from localStorage', function() {\n setLocalStorageValue('pageViewTimestamp', '123456789');\n const payload = getPayloadFromTestBids(testBids);\n expect(payload.page).to.deep.equal({\n timestamp: 123456789\n });\n });\n\n it('pulls the page ID from localStorage', function() {\n setLocalStorageValue('pageViewUrl', 'https://test-url.com');\n const payload = getPayloadFromTestBids(testBids);\n expect(payload.page).to.deep.equal({\n url: 'https://test-url.com'\n });\n });\n\n it('pulls all 3 together', function() {\n setLocalStorageValue('pageViewId', 'test-page-id');\n setLocalStorageValue('pageViewTimestamp', '123456789');\n setLocalStorageValue('pageViewUrl', 'https://test-url.com');\n const payload = getPayloadFromTestBids(testBids);\n expect(payload.page).to.deep.equal({\n id: 'test-page-id',\n timestamp: 123456789,\n url: 'https://test-url.com'\n });\n });\n\n it('fails gracefully without localStorage', function() {\n sandbox.stub(STORAGE, 'getDataFromLocalStorage').throws();\n localStorage.removeItem('krg_crb');\n document.cookie = 'krg_crb=; expires=Thu, 01 Jan 1970 00:00:00 GMT; path=/';\n const payload = getPayloadFromTestBids(testBids);\n expect(payload.page).to.be.undefined;\n });\n });\n });\n\n describe('interpretResponse', function() {\n const response = Object.freeze({ body: {\n 1: {\n id: 'foo',\n cpm: 3,\n adm: '<div id=\"1\"></div>',\n width: 320,\n height: 50,\n metadata: {},\n creativeID: 'bar'\n },\n 2: {\n id: 'bar',\n cpm: 2.5,\n adm: '<div id=\"2\"></div>',\n width: 300,\n height: 250,\n targetingCustom: 'dmpmptest1234',\n metadata: {\n landingPageDomain: ['https://foobar.com']\n },\n creativeID: 'foo'\n },\n 3: {\n id: 'bar',\n cpm: 2.5,\n adm: '<div id=\"2\"></div>',\n width: 300,\n height: 250,\n creativeID: 'foo'\n },\n 4: {\n id: 'bar',\n cpm: 2.5,\n adm: '<div id=\"4\"></div>',\n width: 300,\n height: 250,\n mediaType: 'banner',\n metadata: {},\n creativeID: 'foo',\n currency: 'EUR'\n },\n 5: {\n id: 'bar',\n cpm: 2.5,\n adm: '<VAST></VAST>',\n width: 300,\n height: 250,\n mediaType: 'video',\n metadata: {},\n creativeID: 'foo',\n currency: 'EUR'\n },\n 6: {\n id: 'bar',\n cpm: 2.5,\n adm: '',\n admUrl: 'https://foobar.com/vast_adm',\n width: 300,\n height: 250,\n mediaType: 'video',\n metadata: {},\n creativeID: 'foo',\n currency: 'EUR'\n }\n }});\n const bidderRequest = Object.freeze({\n currency: 'USD',\n bids: [{\n bidId: 1,\n params: {\n placementId: 'foo'\n }\n }, {\n bidId: 2,\n params: {\n placementId: 'bar'\n }\n }, {\n bidId: 3,\n params: {\n placementId: 'bar'\n }\n }, {\n bidId: 4,\n params: {\n placementId: 'bar'\n }\n }, {\n bidId: 5,\n params: {\n placementId: 'bar'\n }\n }, {\n bidId: 6,\n params: {\n placementId: 'bar'\n }\n }]\n });\n\n it('returns an empty array if the response body is empty or not an object', function() {\n [\n '',\n undefined,\n false,\n true,\n null,\n [],\n {},\n 1234,\n ].forEach(value => {\n const bids = spec.interpretResponse({ body: value }, bidderRequest);\n expect(bids, `Value - ${JSON.stringify(value)}`).to.deep.equal([]);\n });\n });\n\n it('returns bid response for various objects', function() {\n const bids = spec.interpretResponse(response, bidderRequest);\n expect(bids).to.have.length(Object.keys(response.body).length);\n expect(bids[0]).to.deep.equal({\n ad: '<div id=\"1\"></div>',\n cpm: 3,\n creativeId: 'bar',\n currency: 'USD',\n dealId: undefined,\n height: 50,\n mediaType: 'banner',\n meta: {\n mediaType: 'banner'\n },\n netRevenue: true,\n requestId: '1',\n ttl: 300,\n width: 320,\n });\n expect(bids[1]).to.deep.equal({\n requestId: '2',\n ad: '<div id=\"2\"></div>',\n cpm: 2.5,\n width: 300,\n height: 250,\n ttl: 300,\n creativeId: 'foo',\n dealId: 'dmpmptest1234',\n netRevenue: true,\n currency: 'USD',\n mediaType: 'banner',\n meta: {\n mediaType: 'banner',\n clickUrl: 'https://foobar.com',\n advertiserDomains: ['https://foobar.com']\n }\n });\n expect(bids[2]).to.deep.equal({\n requestId: '3',\n ad: '<div id=\"2\"></div>',\n cpm: 2.5,\n width: 300,\n height: 250,\n ttl: 300,\n creativeId: 'foo',\n dealId: undefined,\n netRevenue: true,\n currency: 'USD',\n mediaType: 'banner',\n meta: {\n mediaType: 'banner'\n }\n });\n expect(bids[3]).to.deep.equal({\n requestId: '4',\n ad: '<div id=\"4\"></div>',\n cpm: 2.5,\n width: 300,\n height: 250,\n ttl: 300,\n creativeId: 'foo',\n dealId: undefined,\n netRevenue: true,\n currency: 'EUR',\n mediaType: 'banner',\n meta: {\n mediaType: 'banner'\n }\n });\n expect(bids[4]).to.deep.equal({\n requestId: '5',\n cpm: 2.5,\n width: 300,\n height: 250,\n vastXml: '<VAST></VAST>',\n ttl: 300,\n creativeId: 'foo',\n dealId: undefined,\n netRevenue: true,\n currency: 'EUR',\n mediaType: 'video',\n meta: {\n mediaType: 'video'\n }\n });\n expect(bids[5]).to.deep.equal({\n requestId: '6',\n cpm: 2.5,\n width: 300,\n height: 250,\n vastUrl: 'https://foobar.com/vast_adm',\n ttl: 300,\n creativeId: 'foo',\n dealId: undefined,\n netRevenue: true,\n currency: 'EUR',\n mediaType: 'video',\n meta: {\n mediaType: 'video'\n }\n });\n });\n\n it('adds landingPageDomain data', function() {\n const response = spec.interpretResponse({ body: { 0: {\n metadata: {\n landingPageDomain: [\n 'https://foo.com',\n 'https://bar.com'\n ]\n }\n } } }, {});\n expect(response[0].meta).to.deep.equal({\n mediaType: 'banner',\n clickUrl: 'https://foo.com',\n advertiserDomains: [ 'https://foo.com', 'https://bar.com' ]\n });\n });\n\n it('should return paapi if provided in bid response', function () {\n const auctionConfig = {\n seller: 'https://kargo.com',\n decisionLogicUrl: 'https://kargo.com/decision_logic.js',\n interestGroupBuyers: ['https://some_buyer.com'],\n perBuyerSignals: {\n 'https://some_buyer.com': { a: 1 }\n }\n }\n\n const body = response.body;\n for (const key in body) {\n if (body.hasOwnProperty(key)) {\n if (key % 2 !== 0) { // Add auctionConfig to every other object\n body[key].auctionConfig = auctionConfig;\n }\n }\n }\n\n const result = spec.interpretResponse(response, bidderRequest);\n\n // Test properties of bidResponses\n result.bids.forEach(bid => {\n expect(bid).to.have.property('requestId');\n expect(bid).to.have.property('cpm');\n expect(bid).to.have.property('width');\n expect(bid).to.have.property('height');\n expect(bid).to.have.property('ttl');\n expect(bid).to.have.property('creativeId');\n expect(bid.netRevenue).to.be.true;\n expect(bid).to.have.property('meta').that.is.an('object');\n });\n\n // Test properties of paapi\n expect(result.paapi).to.have.lengthOf(3);\n\n const expectedBidIds = ['1', '3', '5']; // Expected bidIDs\n result.paapi.forEach(config => {\n expect(config).to.have.property('bidId');\n expect(expectedBidIds).to.include(config.bidId);\n\n expect(config).to.have.property('config').that.is.an('object');\n expect(config.config).to.have.property('seller', 'https://kargo.com');\n expect(config.config).to.have.property('decisionLogicUrl', 'https://kargo.com/decision_logic.js');\n expect(config.config.interestGroupBuyers).to.be.an('array').that.includes('https://some_buyer.com');\n expect(config.config.perBuyerSignals).to.have.property('https://some_buyer.com').that.deep.equals({ a: 1 });\n });\n });\n });\n\n describe('getUserSyncs', function() {\n let crb = {};\n const clientId = 'random-client-id-string';\n const baseUrl = 'https://crb.kargo.com/api/v1/initsyncrnd/random-client-id-string?seed=3205e885-8d37-4139-b47e-f82cff268000&gdpr=0&gdpr_consent=&us_privacy=&gpp=&gpp_sid=';\n\n function buildSyncUrls(baseUrl = 'https://crb.kargo.com/api/v1/initsyncrnd/random-client-id-string?seed=3205e885-8d37-4139-b47e-f82cff268000&gdpr=0&gdpr_consent=&us_privacy=&gpp=&gpp_sid=') {\n const syncs = [];\n\n syncs.push({\n type: 'iframe',\n url: baseUrl\n });\n\n return syncs;\n }\n\n function getUserSyncs(gdpr, usp, gpp) {\n return spec.getUserSyncs(\n { iframeEnabled: true },\n null,\n gdpr,\n usp,\n gpp\n );\n }\n\n beforeEach(function() {\n crb = { clientId };\n sandbox.stub(spec, '_getCrb').callsFake(function() { return crb; });\n\n // Makes the seed in the URLs predictable\n sandbox.stub(utils, 'generateUUID').returns('3205e885-8d37-4139-b47e-f82cff268000');\n });\n\n it('returns user syncs when an ID is present', function() {\n expect(getUserSyncs()).to.deep.equal(buildSyncUrls());\n });\n\n it('returns no syncs if there is no user ID', function() {\n delete crb.clientId;\n expect(getUserSyncs()).to.deep.equal([]);\n });\n\n it('returns no syncs if there is no usp consent', function() {\n expect(getUserSyncs(undefined, '1YYY')).to.deep.equal([]);\n });\n\n it('returns no syncs if iframe syncing is not allowed', function() {\n expect(spec.getUserSyncs({ iframeEnabled: false }, null, undefined, undefined, undefined))\n .to.deep.equal([]);\n expect(spec.getUserSyncs({}, null, undefined, undefined, undefined))\n .to.deep.equal([]);\n });\n\n it('includes the US privacy string in the sync URL if present', function() {\n [\n '0---',\n '1---',\n '1NNN',\n 'invalid',\n 1234,\n ].forEach(value => expect(getUserSyncs(undefined, value), `Value - ${value}`)\n .to.deep.equal(buildSyncUrls(baseUrl.replace(/us_privacy=/, `us_privacy=${value}`))));\n });\n\n it('includes gdpr information if provided', function() {\n [\n { gdprApplies: true, consentString: 'test-consent-string', ga: '1', cs: 'test-consent-string' },\n { gdprApplies: false, consentString: 'test-consent-string', ga: '0', cs: 'test-consent-string' },\n { gdprApplies: true, ga: '1', cs: '' },\n { gdprApplies: false, ga: '0', cs: '' },\n { ga: '0', cs: '' },\n ].forEach(value => expect(getUserSyncs(value), `Value - ${value}`)\n .to.deep.equal(buildSyncUrls(baseUrl\n .replace(/gdpr=\\d/, `gdpr=${value.ga}`)\n .replace(/gdpr_consent=/, `gdpr_consent=${value.cs}`))));\n });\n\n it('handles malformed gdpr information', function() {\n [\n null,\n false,\n true,\n 1,\n '1',\n 'test-applies',\n [],\n {}\n ].forEach(value => expect(getUserSyncs(value), `Value - ${JSON.stringify(value)}`)\n .to.deep.equal(buildSyncUrls(baseUrl)));\n });\n\n it('includes gpp information if provided', function() {\n [\n { applicableSections: [-1], consentString: 'test-consent-string', as: '-1', cs: 'test-consent-string' },\n { applicableSections: [1, 2, 3], consentString: 'test-consent-string', as: '1,2,3', cs: 'test-consent-string' },\n { applicableSections: [-1], as: '-1', cs: '' },\n { applicableSections: false, consentString: 'test-consent-string', as: '', cs: 'test-consent-string' },\n { applicableSections: null, consentString: 'test-consent-string', as: '', cs: 'test-consent-string' },\n { applicableSections: {}, consentString: 'test-consent-string', as: '', cs: 'test-consent-string' },\n { applicableSections: [], consentString: 'test-consent-string', as: '', cs: 'test-consent-string' },\n { as: '', cs: '' },\n ].forEach(value => expect(getUserSyncs(undefined, undefined, value), `Value - ${value}`)\n .to.deep.equal(buildSyncUrls(baseUrl\n .replace(/gpp=/, `gpp=${value.cs}`)\n .replace(/gpp_sid=/, `gpp_sid=${value.as}`))));\n });\n\n it('handles malformed gpp information', function() {\n [\n null,\n false,\n true,\n 1,\n '1',\n 'test-applies',\n [],\n {}\n ].forEach(value => expect(getUserSyncs(undefined, undefined, value), `Value - ${JSON.stringify(value)}`)\n .to.deep.equal(buildSyncUrls(baseUrl)));\n });\n\n it('includes all 3 if provided', function() {\n expect(getUserSyncs(\n { gdprApplies: true, consentString: 'test-gdpr-consent' },\n '1---',\n { applicableSections: [1, 2, 3], consentString: 'test-gpp-consent' }\n )).to.deep.equal(buildSyncUrls(baseUrl\n .replace(/gdpr=\\d/, 'gdpr=1')\n .replace(/gdpr_consent=/, 'gdpr_consent=test-gdpr-consent')\n .replace(/us_privacy=/, 'us_privacy=1---')\n .replace(/gpp=/, 'gpp=test-gpp-consent')\n .replace(/gpp_sid=/, 'gpp_sid=1,2,3')));\n });\n });\n\n describe('supportedMediaTypes', function() {\n it('exposes video and banner', function() {\n expect(spec.supportedMediaTypes).to.deep.equal([ 'banner', 'video' ]);\n });\n });\n\n describe('onTimeout', function () {\n let fetchStub;\n\n beforeEach(function () {\n fetchStub = sinon.stub(global, 'fetch').resolves(); // Stub fetch globally\n });\n\n afterEach(function () {\n fetchStub.restore(); // Restore the original fetch function\n });\n\n it('does not call fetch if timeout data is not provided', function () {\n spec.onTimeout(null);\n expect(fetchStub.callCount).to.equal(0);\n });\n\n it('calls fetch with the correct URLs if timeout data is provided', function () {\n spec.onTimeout([\n { auctionId: 'test-auction-id', timeout: 400 },\n { auctionId: 'test-auction-id-2', timeout: 100 },\n { auctionId: 'test-auction-id-3', timeout: 450 },\n { auctionId: 'test-auction-id-4', timeout: 500 },\n ]);\n\n expect(fetchStub.calledWith(\n 'https://krk2.kargo.com/api/v1/event/timeout?aid=test-auction-id&ato=400',\n { method: 'GET', keepalive: true }\n )).to.be.true;\n\n expect(fetchStub.calledWith(\n 'https://krk2.kargo.com/api/v1/event/timeout?aid=test-auction-id-2&ato=100',\n { method: 'GET', keepalive: true }\n )).to.be.true;\n\n expect(fetchStub.calledWith(\n 'https://krk2.kargo.com/api/v1/event/timeout?aid=test-auction-id-3&ato=450',\n { method: 'GET', keepalive: true }\n )).to.be.true;\n\n expect(fetchStub.calledWith(\n 'https://krk2.kargo.com/api/v1/event/timeout?aid=test-auction-id-4&ato=500',\n { method: 'GET', keepalive: true }\n )).to.be.true;\n });\n });\n});\n"],"mappings":"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","ignoreList":[]}
|