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":"ftrackIdSystem_spec.js","names":["ftrackIdSubmodule","utils","uspDataHandler","loadExternalScriptStub","getGlobal","attachIdSystem","init","setSubmoduleRegistry","createEidsArray","config","server","configMock","name","params","url","ids","storage","type","expires","refreshInSeconds","debug","consentDataMock","gdprApplies","consentString","describe","it","expect","test","JSON","stringify","to","not","be","ok","logWarnStub","logErrorStub","beforeEach","sinon","stub","afterEach","restore","configMock1","parse","isConfigOk","args","equal","isThereConsent","gdpr","usp","getId","callback","called","deep","resetHistory","decode","extendId","cache","id","window","D9r","have","property","ftrackId","ftrackIdExp","forceCallback","localStorage","getItem","Promise","resolve","reject","testTimer","hasOwnProperty","setTimeout","MOCK_VALUE_STRINGS","HHID","DeviceID","SingleDeviceID","MOCK_VALUE_ARRAYS","MOCK_VALUE_BOTH","foo","bar","baz","ext","uid","requests","length","setConfig","userSync","auctionDelay","userIds","value","getUserIdsAsync","then","getUserIds","getUserIdsAsEids","source","uids","atype","before","lorem","ipsum"],"sourceRoot":"../../../../..","sources":["test/spec/modules/ftrackIdSystem_spec.js"],"sourcesContent":["import { ftrackIdSubmodule } from 'modules/ftrackIdSystem.js';\nimport * as utils from 'src/utils.js';\nimport { uspDataHandler } from 'src/adapterManager.js';\nimport { loadExternalScriptStub } from 'test/mocks/adloaderStub.js';\nimport { getGlobal } from 'src/prebidGlobal.js';\nimport {attachIdSystem, init, setSubmoduleRegistry} from 'modules/userId/index.js';\nimport {createEidsArray} from 'modules/userId/eids.js';\nimport {config} from 'src/config.js';\nimport {server} from 'test/mocks/xhr.js';\nimport 'src/prebid.js';\n\nconst configMock = {\n name: 'ftrack',\n params: {\n url: 'https://d9.flashtalking.com/d9core',\n ids: {\n 'device id': true,\n 'single device id': true\n }\n },\n storage: {\n name: 'ftrackId',\n type: 'html5',\n expires: 90,\n refreshInSeconds: 8 * 3600\n },\n debug: true\n};\n\nconst consentDataMock = {\n gdprApplies: 0,\n consentString: '<CONSENT_STRING>'\n};\n\ndescribe('FTRACK ID System', () => {\n describe(`Global Module Rules`, () => {\n it(`should not use the \"PREBID_GLOBAL\" variable nor otherwise obtain a pointer to the global PBJS object`, () => {\n expect((/PREBID_GLOBAL/gi).test(JSON.stringify(ftrackIdSubmodule))).to.not.be.ok;\n });\n });\n\n describe('ftrackIdSubmodule.isConfigOk():', () => {\n let logWarnStub;\n let logErrorStub;\n\n beforeEach(() => {\n logWarnStub = sinon.stub(utils, 'logWarn');\n logErrorStub = sinon.stub(utils, 'logError');\n });\n\n afterEach(() => {\n logWarnStub.restore();\n logErrorStub.restore();\n });\n\n it(`should be rejected if 'config.storage' property is missing`, () => {\n const configMock1 = JSON.parse(JSON.stringify(configMock));\n delete configMock1.storage;\n delete configMock1.params;\n\n ftrackIdSubmodule.isConfigOk(configMock1);\n expect(logErrorStub.args[0][0]).to.equal(`FTRACK - config.storage required to be set.`);\n });\n\n it(`should be rejected if 'config.storage.name' property is missing`, () => {\n const configMock1 = JSON.parse(JSON.stringify(configMock));\n delete configMock1.storage.name;\n\n ftrackIdSubmodule.isConfigOk(configMock1);\n expect(logErrorStub.args[0][0]).to.equal(`FTRACK - config.storage required to be set.`);\n });\n\n it(`should be rejected if 'config.storage.name' is not 'ftrackId'`, () => {\n const configMock1 = JSON.parse(JSON.stringify(configMock));\n configMock1.storage.name = 'not-ftrack';\n\n ftrackIdSubmodule.isConfigOk(configMock1);\n expect(logWarnStub.args[0][0]).to.equal(`FTRACK - config.storage.name recommended to be \"ftrackId\".`);\n });\n\n it(`should be rejected if 'congig.storage.type' property is missing`, () => {\n const configMock1 = JSON.parse(JSON.stringify(configMock));\n delete configMock1.storage.type;\n\n ftrackIdSubmodule.isConfigOk(configMock1);\n expect(logErrorStub.args[0][0]).to.equal(`FTRACK - config.storage required to be set.`);\n });\n\n it(`should be rejected if 'config.storage.type' is not 'html5'`, () => {\n const configMock1 = JSON.parse(JSON.stringify(configMock));\n configMock1.storage.type = 'not-html5';\n\n ftrackIdSubmodule.isConfigOk(configMock1);\n expect(logWarnStub.args[0][0]).to.equal(`FTRACK - config.storage.type recommended to be \"html5\".`);\n });\n\n it(`should be rejected if 'config.params.url' does not exist`, () => {\n const configMock1 = JSON.parse(JSON.stringify(configMock));\n delete configMock1.params.url;\n\n ftrackIdSubmodule.isConfigOk(configMock1);\n expect(logWarnStub.args[0][0]).to.equal(`FTRACK - config.params.url is required for ftrack to run.`);\n });\n });\n\n describe(`ftrackIdSubmodule.isThereConsent():`, () => {\n describe(`returns 'false' if:`, () => {\n it(`GDPR: if gdprApplies is truthy`, () => {\n expect(ftrackIdSubmodule.isThereConsent({gdpr: {gdprApplies: 1}})).to.not.be.ok;\n expect(ftrackIdSubmodule.isThereConsent({gdpr: {gdprApplies: true}})).to.not.be.ok;\n });\n\n it(`US_PRIVACY version 1: if 'Opt Out Sale' is 'Y'`, () => {\n expect(ftrackIdSubmodule.isThereConsent({usp: '1YYY'})).to.not.be.ok;\n });\n });\n\n describe(`returns 'true' if`, () => {\n it(`GDPR: if gdprApplies is undefined, false or 0`, () => {\n expect(ftrackIdSubmodule.isThereConsent({gdpr: {gdprApplies: 0}})).to.be.ok;\n expect(ftrackIdSubmodule.isThereConsent({gdpr: {gdprApplies: false}})).to.be.ok;\n expect(ftrackIdSubmodule.isThereConsent({gdpr: {gdprApplies: null}})).to.be.ok;\n expect(ftrackIdSubmodule.isThereConsent({})).to.be.ok;\n });\n\n it(`US_PRIVACY version 1: if 'Opt Out Sale' is not 'Y' ('N','-')`, () => {\n expect(ftrackIdSubmodule.isThereConsent({usp: '1NNN'})).to.be.ok;\n expect(ftrackIdSubmodule.isThereConsent({usp: '1---'})).to.be.ok;\n });\n });\n });\n\n describe('getId() method', () => {\n it(`should be using the StorageManager to set cookies or localstorage, as opposed to doing it directly`, () => {\n expect((/localStorage/gi).test(JSON.stringify(ftrackIdSubmodule))).to.not.be.ok;\n expect((/cookie/gi).test(JSON.stringify(ftrackIdSubmodule))).to.not.be.ok;\n });\n\n it(`should be the only method that gets a new ID aka hits the D9 endpoint`, () => {\n ftrackIdSubmodule.getId(configMock, null, null).callback(() => {});\n expect(loadExternalScriptStub.called).to.be.ok;\n expect(loadExternalScriptStub.args[0][0]).to.deep.equal('https://d9.flashtalking.com/d9core');\n loadExternalScriptStub.resetHistory();\n\n ftrackIdSubmodule.decode('value', configMock);\n expect(loadExternalScriptStub.called).to.not.be.ok;\n expect(loadExternalScriptStub.args).to.deep.equal([]);\n loadExternalScriptStub.resetHistory();\n\n ftrackIdSubmodule.extendId(configMock, null, {cache: {id: ''}});\n expect(loadExternalScriptStub.called).to.not.be.ok;\n expect(loadExternalScriptStub.args).to.deep.equal([]);\n\n loadExternalScriptStub.restore();\n });\n\n describe(`should use the \"ids\" setting in the config:`, () => {\n it(`should use default IDs if config.params.id is not populated`, () => {\n const configMock1 = JSON.parse(JSON.stringify(configMock));\n delete configMock1.params.ids;\n ftrackIdSubmodule.getId(configMock1, null, null).callback(() => {});\n\n expect(window.D9r).to.have.property('DeviceID', true);\n expect(window.D9r).to.have.property('SingleDeviceID', true);\n expect(window.D9r).to.not.have.property('HHID');\n });\n\n describe(`should use correct ID settings if config.params.id is populated`, () => {\n it(`- any ID set as strings should not be added to window.D9r`, () => {\n const configMock1 = JSON.parse(JSON.stringify(configMock));\n configMock1.params.ids['device id'] = 'test device ID';\n configMock1.params.ids['single device id'] = 'test single device ID';\n configMock1.params.ids['household id'] = 'test household ID';\n ftrackIdSubmodule.getId(configMock1, null, null).callback(() => {});\n\n expect(window.D9r).to.not.have.property('DeviceID');\n expect(window.D9r).to.not.have.property('SingleDeviceID');\n expect(window.D9r).to.not.have.property('HHID');\n })\n\n it(`- any ID set to false should not be added to window.D9r`, () => {\n const configMock1 = JSON.parse(JSON.stringify(configMock));\n configMock1.params.ids['device id'] = false;\n configMock1.params.ids['single device id'] = false;\n configMock1.params.ids['household id'] = false;\n ftrackIdSubmodule.getId(configMock1, null, null).callback(() => {});\n\n expect(window.D9r).to.not.have.property('DeviceID');\n expect(window.D9r).to.not.have.property('SingleDeviceID');\n expect(window.D9r).to.not.have.property('HHID');\n });\n\n it(`- only device id`, () => {\n const configMock1 = JSON.parse(JSON.stringify(configMock));\n delete configMock1.params.ids['single device id'];\n ftrackIdSubmodule.getId(configMock1, null, null).callback(() => {});\n\n expect(window.D9r).to.have.property('DeviceID', true);\n expect(window.D9r).to.not.have.property('SingleDeviceID');\n expect(window.D9r).to.not.have.property('HHID');\n });\n\n it(`- only single device id`, () => {\n const configMock1 = JSON.parse(JSON.stringify(configMock));\n delete configMock1.params.ids['device id'];\n ftrackIdSubmodule.getId(configMock1, null, null).callback(() => {});\n\n expect(window.D9r).to.not.have.property('DeviceID');\n expect(window.D9r).to.have.property('SingleDeviceID', true);\n expect(window.D9r).to.not.have.property('HHID');\n });\n\n it(`- only household ID`, () => {\n const configMock1 = JSON.parse(JSON.stringify(configMock));\n delete configMock1.params.ids['device id'];\n delete configMock1.params.ids['single device id'];\n configMock1.params.ids['household id'] = true;\n ftrackIdSubmodule.getId(configMock1, null, null).callback(() => {});\n\n expect(window.D9r).to.not.have.property('DeviceID');\n expect(window.D9r).to.not.have.property('SingleDeviceID');\n expect(window.D9r).to.have.property('HHID', true);\n });\n });\n })\n\n it(`should populate localstorage and return the IDS (end-to-end test)`, () => {\n let ftrackId;\n let ftrackIdExp;\n let forceCallback = false;\n\n // Confirm that our item is not in localStorage yet\n expect(window.localStorage.getItem('ftrack-rtd')).to.not.be.ok;\n expect(window.localStorage.getItem('ftrack-rtd_exp')).to.not.be.ok;\n\n ftrackIdSubmodule.getId(configMock, consentDataMock, null).callback(() => {});\n return new Promise(function(resolve, reject) {\n window.testTimer = function () {\n // Sinon fake server is NOT changing the readyState to 4, so instead\n // we are forcing the callback to run and just passing in the expected Object\n if (!forceCallback && window.hasOwnProperty('D9r')) {\n window.D9r.callback({ 'DeviceID': ['<DEVICE_ID>'], 'SingleDeviceID': ['<SINGLE_DEVICE_ID>'] });\n forceCallback = true;\n }\n\n ftrackId = window.localStorage.getItem('ftrackId');\n ftrackIdExp = window.localStorage.getItem('ftrackId_exp');\n\n if (!!ftrackId && !!ftrackIdExp) {\n expect(window.localStorage.getItem('ftrackId')).to.be.ok;\n expect(window.localStorage.getItem('ftrackId_exp')).to.be.ok;\n resolve();\n } else {\n window.setTimeout(window.testTimer, 25);\n }\n };\n window.testTimer();\n });\n });\n });\n\n describe(`decode() method`, () => {\n it(`should respond with an object with the key 'ftrackId'`, () => {\n const MOCK_VALUE_STRINGS = {\n HHID: 'household_test_id',\n DeviceID: 'device_test_id',\n SingleDeviceID: 'single_device_test_id'\n };\n const MOCK_VALUE_ARRAYS = {\n HHID: ['household_test_id', 'a', 'b'],\n DeviceID: ['device_test_id', 'c', 'd'],\n SingleDeviceID: ['single_device_test_id', 'e', 'f']\n };\n const MOCK_VALUE_BOTH = {\n foo: ['foo', 'a', 'b'],\n bar: 'bar',\n baz: ['baz', 'baz', 'baz']\n };\n\n // strings are just passed through\n expect(ftrackIdSubmodule.decode(MOCK_VALUE_STRINGS, configMock)).to.deep.equal({\n ftrackId: {\n ext: {\n HHID: 'household_test_id',\n DeviceID: 'device_test_id',\n SingleDeviceID: 'single_device_test_id'\n },\n uid: 'device_test_id',\n },\n });\n\n // arrays are converted to strings\n expect(ftrackIdSubmodule.decode(MOCK_VALUE_ARRAYS, configMock)).to.deep.equal({\n ftrackId: {\n ext: {\n HHID: 'household_test_id|a|b',\n DeviceID: 'device_test_id|c|d',\n SingleDeviceID: 'single_device_test_id|e|f'\n },\n uid: 'device_test_id|c|d',\n },\n });\n\n // mix of both but uid should be empty string because DeviceId is not defined\n expect(ftrackIdSubmodule.decode(MOCK_VALUE_BOTH, configMock)).to.deep.equal({\n ftrackId: {\n ext: {\n foo: 'foo|a|b',\n bar: 'bar',\n baz: 'baz|baz|baz'\n },\n uid: '',\n },\n });\n });\n\n it(`should not be making requests to retrieve a new ID, it should just be decoding a response`, () => {\n ftrackIdSubmodule.decode('value', configMock);\n\n expect(server.requests).to.have.length(0);\n })\n });\n\n describe(`extendId() method`, () => {\n it(`should not be making requests to retrieve a new ID, it should just be adding additional data to the id object`, () => {\n ftrackIdSubmodule.extendId(configMock, null, {cache: {id: ''}});\n\n expect(server.requests).to.have.length(0);\n });\n\n it(`should return cacheIdObj`, () => {\n expect(ftrackIdSubmodule.extendId(configMock, null, {cache: {id: ''}})).to.deep.equal({cache: {id: ''}});\n });\n });\n\n describe('pbjs \"get id\" methods', () => {\n beforeEach(() => {\n init(config);\n setSubmoduleRegistry([ftrackIdSubmodule]);\n });\n\n describe('pbjs.getUserIdsAsync()', () => {\n it('should return the IDs in the correct schema - flat schema', () => {\n config.setConfig({\n userSync: {\n auctionDelay: 10,\n userIds: [{\n name: 'ftrack',\n value: {\n ftrackId: {\n uid: 'device_test_id',\n ext: {\n HHID: 'household_test_id',\n DeviceID: 'device_test_id',\n SingleDeviceID: 'single_device_test_id'\n }\n }\n }\n }]\n }\n });\n\n return getGlobal().getUserIdsAsync().then(ids => {\n expect(ids.ftrackId).to.deep.equal({\n uid: 'device_test_id',\n ext: {\n HHID: 'household_test_id',\n DeviceID: 'device_test_id',\n SingleDeviceID: 'single_device_test_id'\n }\n });\n });\n });\n });\n\n describe('pbjs.getUserIds()', () => {\n it('should return the IDs in the correct schema', async () => {\n config.setConfig({\n userSync: {\n auctionDelay: 10,\n userIds: [{\n name: 'ftrack',\n value: {\n ftrackId: {\n uid: 'device_test_id',\n ext: {\n HHID: 'household_test_id',\n DeviceID: 'device_test_id',\n SingleDeviceID: 'single_device_test_id'\n }\n }\n }\n }]\n }\n });\n\n await getGlobal().getUserIdsAsync();\n\n expect(getGlobal().getUserIds()).to.deep.equal({\n ftrackId: {\n uid: 'device_test_id',\n ext: {\n HHID: 'household_test_id',\n DeviceID: 'device_test_id',\n SingleDeviceID: 'single_device_test_id'\n }\n }\n });\n });\n });\n\n describe('pbjs.getUserIdsAsEids()', () => {\n it('should return the correct EIDs schema ', async () => {\n // Pass all three IDs\n config.setConfig({\n userSync: {\n auctionDelay: 10,\n userIds: [{\n name: 'ftrack',\n value: {\n ftrackId: {\n uid: 'device_test_id',\n ext: {\n HHID: 'household_test_id',\n DeviceID: 'device_test_id',\n SingleDeviceID: 'single_device_test_id'\n }\n }\n }\n }]\n }\n });\n\n await getGlobal().getUserIdsAsync();\n\n expect(getGlobal().getUserIdsAsEids()).to.deep.equal([{\n source: 'flashtalking.com',\n uids: [{\n id: 'device_test_id',\n atype: 1,\n ext: {\n HHID: 'household_test_id',\n DeviceID: 'device_test_id',\n SingleDeviceID: 'single_device_test_id'\n }\n }]\n }]);\n });\n\n describe('by ID type:', () => {\n it('- DeviceID', async () => {\n // Pass DeviceID only\n config.setConfig({\n userSync: {\n auctionDelay: 10,\n userIds: [{\n name: 'ftrack',\n value: {\n ftrackId: {\n uid: 'device_test_id',\n ext: {\n DeviceID: 'device_test_id',\n }\n }\n }\n }]\n }\n });\n\n await getGlobal().getUserIdsAsync();\n\n expect(getGlobal().getUserIdsAsEids()).to.deep.equal([{\n source: 'flashtalking.com',\n uids: [{\n id: 'device_test_id',\n atype: 1,\n ext: {\n DeviceID: 'device_test_id'\n }\n }]\n }]);\n });\n\n it('- HHID', async () => {\n // Pass HHID only\n config.setConfig({\n userSync: {\n auctionDelay: 10,\n userIds: [{\n name: 'ftrack',\n value: {\n ftrackId: {\n uid: '',\n ext: {\n HHID: 'household_test_id'\n }\n }\n }\n }]\n }\n });\n\n await getGlobal().getUserIdsAsync();\n\n expect(getGlobal().getUserIdsAsEids()).to.deep.equal([{\n source: 'flashtalking.com',\n uids: [{\n id: '',\n atype: 1,\n ext: {\n HHID: 'household_test_id'\n }\n }]\n }]);\n });\n\n it('- SingleDeviceID', async () => {\n // Pass SingleDeviceID only\n config.setConfig({\n userSync: {\n auctionDelay: 10,\n userIds: [{\n name: 'ftrack',\n value: {\n ftrackId: {\n uid: '',\n ext: {\n SingleDeviceID: 'single_device_test_id'\n }\n }\n }\n }]\n }\n });\n\n await getGlobal().getUserIdsAsync();\n\n expect(getGlobal().getUserIdsAsEids()).to.deep.equal([{\n source: 'flashtalking.com',\n uids: [{\n id: '',\n atype: 1,\n ext: {\n SingleDeviceID: 'single_device_test_id'\n }\n }]\n }]);\n });\n });\n });\n });\n describe('eid', () => {\n before(() => {\n attachIdSystem(ftrackIdSubmodule);\n });\n it('should return the correct EID schema', () => {\n // This is the schema returned from the ftrack decode() method\n expect(createEidsArray({\n ftrackId: {\n uid: 'test-device-id',\n ext: {\n DeviceID: 'test-device-id',\n SingleDeviceID: 'test-single-device-id',\n HHID: 'test-household-id'\n }\n },\n foo: {\n bar: 'baz'\n },\n lorem: {\n ipsum: ''\n }\n })).to.deep.equal([{\n source: 'flashtalking.com',\n uids: [{\n atype: 1,\n id: 'test-device-id',\n ext: {\n DeviceID: 'test-device-id',\n SingleDeviceID: 'test-single-device-id',\n HHID: 'test-household-id'\n }\n }]\n }]);\n });\n })\n});\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"ftrackIdSystem_spec.js","names":["ftrackIdSubmodule","utils","uspDataHandler","loadExternalScriptStub","getGlobal","attachIdSystem","init","setSubmoduleRegistry","createEidsArray","config","server","configMock","name","params","url","ids","storage","type","expires","refreshInSeconds","debug","consentDataMock","gdprApplies","consentString","describe","it","expect","test","JSON","stringify","to","not","be","ok","logWarnStub","logErrorStub","beforeEach","sinon","stub","afterEach","restore","configMock1","parse","isConfigOk","args","equal","isThereConsent","gdpr","usp","getId","callback","called","deep","resetHistory","decode","extendId","cache","id","window","D9r","have","property","ftrackId","ftrackIdExp","forceCallback","localStorage","getItem","Promise","resolve","reject","testTimer","hasOwnProperty","setTimeout","MOCK_VALUE_STRINGS","HHID","DeviceID","SingleDeviceID","MOCK_VALUE_ARRAYS","MOCK_VALUE_BOTH","foo","bar","baz","ext","uid","requests","length","setConfig","userSync","auctionDelay","userIds","value","getUserIdsAsync","then","getUserIds","getUserIdsAsEids","source","uids","atype","before","lorem","ipsum"],"sourceRoot":"../../../../..","sources":["test/spec/modules/ftrackIdSystem_spec.js"],"sourcesContent":["import { ftrackIdSubmodule } from 'modules/ftrackIdSystem.js';\nimport * as utils from 'src/utils.js';\nimport { uspDataHandler } from 'src/adapterManager.js';\nimport { loadExternalScriptStub } from 'test/mocks/adloaderStub.js';\nimport { getGlobal } from 'src/prebidGlobal.js';\nimport {attachIdSystem, init, setSubmoduleRegistry} from 'modules/userId/index.js';\nimport {createEidsArray} from 'modules/userId/eids.js';\nimport {config} from 'src/config.js';\nimport {server} from 'test/mocks/xhr.js';\nimport 'src/prebid.js';\n\nconst configMock = {\n name: 'ftrack',\n params: {\n url: 'https://d9.flashtalking.com/d9core',\n ids: {\n 'device id': true,\n 'single device id': true\n }\n },\n storage: {\n name: 'ftrackId',\n type: 'html5',\n expires: 90,\n refreshInSeconds: 8 * 3600\n },\n debug: true\n};\n\nconst consentDataMock = {\n gdprApplies: 0,\n consentString: '<CONSENT_STRING>'\n};\n\ndescribe('FTRACK ID System', () => {\n describe(`Global Module Rules`, () => {\n it(`should not use the \"PREBID_GLOBAL\" variable nor otherwise obtain a pointer to the global PBJS object`, () => {\n expect((/PREBID_GLOBAL/gi).test(JSON.stringify(ftrackIdSubmodule))).to.not.be.ok;\n });\n });\n\n describe('ftrackIdSubmodule.isConfigOk():', () => {\n let logWarnStub;\n let logErrorStub;\n\n beforeEach(() => {\n logWarnStub = sinon.stub(utils, 'logWarn');\n logErrorStub = sinon.stub(utils, 'logError');\n });\n\n afterEach(() => {\n logWarnStub.restore();\n logErrorStub.restore();\n });\n\n it(`should be rejected if 'config.storage' property is missing`, () => {\n const configMock1 = JSON.parse(JSON.stringify(configMock));\n delete configMock1.storage;\n delete configMock1.params;\n\n ftrackIdSubmodule.isConfigOk(configMock1);\n expect(logErrorStub.args[0][0]).to.equal(`FTRACK - config.storage required to be set.`);\n });\n\n it(`should be rejected if 'config.storage.name' property is missing`, () => {\n const configMock1 = JSON.parse(JSON.stringify(configMock));\n delete configMock1.storage.name;\n\n ftrackIdSubmodule.isConfigOk(configMock1);\n expect(logErrorStub.args[0][0]).to.equal(`FTRACK - config.storage required to be set.`);\n });\n\n it(`should be rejected if 'config.storage.name' is not 'ftrackId'`, () => {\n const configMock1 = JSON.parse(JSON.stringify(configMock));\n configMock1.storage.name = 'not-ftrack';\n\n ftrackIdSubmodule.isConfigOk(configMock1);\n expect(logWarnStub.args[0][0]).to.equal(`FTRACK - config.storage.name recommended to be \"ftrackId\".`);\n });\n\n it(`should be rejected if 'congig.storage.type' property is missing`, () => {\n const configMock1 = JSON.parse(JSON.stringify(configMock));\n delete configMock1.storage.type;\n\n ftrackIdSubmodule.isConfigOk(configMock1);\n expect(logErrorStub.args[0][0]).to.equal(`FTRACK - config.storage required to be set.`);\n });\n\n it(`should be rejected if 'config.storage.type' is not 'html5'`, () => {\n const configMock1 = JSON.parse(JSON.stringify(configMock));\n configMock1.storage.type = 'not-html5';\n\n ftrackIdSubmodule.isConfigOk(configMock1);\n expect(logWarnStub.args[0][0]).to.equal(`FTRACK - config.storage.type recommended to be \"html5\".`);\n });\n\n it(`should be rejected if 'config.params.url' does not exist`, () => {\n const configMock1 = JSON.parse(JSON.stringify(configMock));\n delete configMock1.params.url;\n\n ftrackIdSubmodule.isConfigOk(configMock1);\n expect(logWarnStub.args[0][0]).to.equal(`FTRACK - config.params.url is required for ftrack to run.`);\n });\n });\n\n describe(`ftrackIdSubmodule.isThereConsent():`, () => {\n describe(`returns 'false' if:`, () => {\n it(`GDPR: if gdprApplies is truthy`, () => {\n expect(ftrackIdSubmodule.isThereConsent({gdpr: {gdprApplies: 1}})).to.not.be.ok;\n expect(ftrackIdSubmodule.isThereConsent({gdpr: {gdprApplies: true}})).to.not.be.ok;\n });\n\n it(`US_PRIVACY version 1: if 'Opt Out Sale' is 'Y'`, () => {\n expect(ftrackIdSubmodule.isThereConsent({usp: '1YYY'})).to.not.be.ok;\n });\n });\n\n describe(`returns 'true' if`, () => {\n it(`GDPR: if gdprApplies is undefined, false or 0`, () => {\n expect(ftrackIdSubmodule.isThereConsent({gdpr: {gdprApplies: 0}})).to.be.ok;\n expect(ftrackIdSubmodule.isThereConsent({gdpr: {gdprApplies: false}})).to.be.ok;\n expect(ftrackIdSubmodule.isThereConsent({gdpr: {gdprApplies: null}})).to.be.ok;\n expect(ftrackIdSubmodule.isThereConsent({})).to.be.ok;\n });\n\n it(`US_PRIVACY version 1: if 'Opt Out Sale' is not 'Y' ('N','-')`, () => {\n expect(ftrackIdSubmodule.isThereConsent({usp: '1NNN'})).to.be.ok;\n expect(ftrackIdSubmodule.isThereConsent({usp: '1---'})).to.be.ok;\n });\n });\n });\n\n describe('getId() method', () => {\n it(`should be using the StorageManager to set cookies or localstorage, as opposed to doing it directly`, () => {\n expect((/localStorage/gi).test(JSON.stringify(ftrackIdSubmodule))).to.not.be.ok;\n expect((/cookie/gi).test(JSON.stringify(ftrackIdSubmodule))).to.not.be.ok;\n });\n\n it(`should be the only method that gets a new ID aka hits the D9 endpoint`, () => {\n ftrackIdSubmodule.getId(configMock, null, null).callback(() => {});\n expect(loadExternalScriptStub.called).to.be.ok;\n expect(loadExternalScriptStub.args[0][0]).to.deep.equal('https://d9.flashtalking.com/d9core');\n loadExternalScriptStub.resetHistory();\n\n ftrackIdSubmodule.decode('value', configMock);\n expect(loadExternalScriptStub.called).to.not.be.ok;\n expect(loadExternalScriptStub.args).to.deep.equal([]);\n loadExternalScriptStub.resetHistory();\n\n ftrackIdSubmodule.extendId(configMock, null, {cache: {id: ''}});\n expect(loadExternalScriptStub.called).to.not.be.ok;\n expect(loadExternalScriptStub.args).to.deep.equal([]);\n\n loadExternalScriptStub.restore();\n });\n\n describe(`should use the \"ids\" setting in the config:`, () => {\n it(`should use default IDs if config.params.id is not populated`, () => {\n const configMock1 = JSON.parse(JSON.stringify(configMock));\n delete configMock1.params.ids;\n ftrackIdSubmodule.getId(configMock1, null, null).callback(() => {});\n\n expect(window.D9r).to.have.property('DeviceID', true);\n expect(window.D9r).to.have.property('SingleDeviceID', true);\n expect(window.D9r).to.not.have.property('HHID');\n });\n\n describe(`should use correct ID settings if config.params.id is populated`, () => {\n it(`- any ID set as strings should not be added to window.D9r`, () => {\n const configMock1 = JSON.parse(JSON.stringify(configMock));\n configMock1.params.ids['device id'] = 'test device ID';\n configMock1.params.ids['single device id'] = 'test single device ID';\n configMock1.params.ids['household id'] = 'test household ID';\n ftrackIdSubmodule.getId(configMock1, null, null).callback(() => {});\n\n expect(window.D9r).to.not.have.property('DeviceID');\n expect(window.D9r).to.not.have.property('SingleDeviceID');\n expect(window.D9r).to.not.have.property('HHID');\n })\n\n it(`- any ID set to false should not be added to window.D9r`, () => {\n const configMock1 = JSON.parse(JSON.stringify(configMock));\n configMock1.params.ids['device id'] = false;\n configMock1.params.ids['single device id'] = false;\n configMock1.params.ids['household id'] = false;\n ftrackIdSubmodule.getId(configMock1, null, null).callback(() => {});\n\n expect(window.D9r).to.not.have.property('DeviceID');\n expect(window.D9r).to.not.have.property('SingleDeviceID');\n expect(window.D9r).to.not.have.property('HHID');\n });\n\n it(`- only device id`, () => {\n const configMock1 = JSON.parse(JSON.stringify(configMock));\n delete configMock1.params.ids['single device id'];\n ftrackIdSubmodule.getId(configMock1, null, null).callback(() => {});\n\n expect(window.D9r).to.have.property('DeviceID', true);\n expect(window.D9r).to.not.have.property('SingleDeviceID');\n expect(window.D9r).to.not.have.property('HHID');\n });\n\n it(`- only single device id`, () => {\n const configMock1 = JSON.parse(JSON.stringify(configMock));\n delete configMock1.params.ids['device id'];\n ftrackIdSubmodule.getId(configMock1, null, null).callback(() => {});\n\n expect(window.D9r).to.not.have.property('DeviceID');\n expect(window.D9r).to.have.property('SingleDeviceID', true);\n expect(window.D9r).to.not.have.property('HHID');\n });\n\n it(`- only household ID`, () => {\n const configMock1 = JSON.parse(JSON.stringify(configMock));\n delete configMock1.params.ids['device id'];\n delete configMock1.params.ids['single device id'];\n configMock1.params.ids['household id'] = true;\n ftrackIdSubmodule.getId(configMock1, null, null).callback(() => {});\n\n expect(window.D9r).to.not.have.property('DeviceID');\n expect(window.D9r).to.not.have.property('SingleDeviceID');\n expect(window.D9r).to.have.property('HHID', true);\n });\n });\n })\n\n it(`should populate localstorage and return the IDS (end-to-end test)`, () => {\n let ftrackId;\n let ftrackIdExp;\n let forceCallback = false;\n\n // Confirm that our item is not in localStorage yet\n expect(window.localStorage.getItem('ftrack-rtd')).to.not.be.ok;\n expect(window.localStorage.getItem('ftrack-rtd_exp')).to.not.be.ok;\n\n ftrackIdSubmodule.getId(configMock, consentDataMock, null).callback(() => {});\n return new Promise(function(resolve, reject) {\n window.testTimer = function () {\n // Sinon fake server is NOT changing the readyState to 4, so instead\n // we are forcing the callback to run and just passing in the expected Object\n if (!forceCallback && window.hasOwnProperty('D9r')) {\n window.D9r.callback({ 'DeviceID': ['<DEVICE_ID>'], 'SingleDeviceID': ['<SINGLE_DEVICE_ID>'] });\n forceCallback = true;\n }\n\n ftrackId = window.localStorage.getItem('ftrackId');\n ftrackIdExp = window.localStorage.getItem('ftrackId_exp');\n\n if (!!ftrackId && !!ftrackIdExp) {\n expect(window.localStorage.getItem('ftrackId')).to.be.ok;\n expect(window.localStorage.getItem('ftrackId_exp')).to.be.ok;\n resolve();\n } else {\n window.setTimeout(window.testTimer, 25);\n }\n };\n window.testTimer();\n });\n });\n });\n\n describe(`decode() method`, () => {\n it(`should respond with an object with the key 'ftrackId'`, () => {\n const MOCK_VALUE_STRINGS = {\n HHID: 'household_test_id',\n DeviceID: 'device_test_id',\n SingleDeviceID: 'single_device_test_id'\n };\n const MOCK_VALUE_ARRAYS = {\n HHID: ['household_test_id', 'a', 'b'],\n DeviceID: ['device_test_id', 'c', 'd'],\n SingleDeviceID: ['single_device_test_id', 'e', 'f']\n };\n const MOCK_VALUE_BOTH = {\n foo: ['foo', 'a', 'b'],\n bar: 'bar',\n baz: ['baz', 'baz', 'baz']\n };\n\n // strings are just passed through\n expect(ftrackIdSubmodule.decode(MOCK_VALUE_STRINGS, configMock)).to.deep.equal({\n ftrackId: {\n ext: {\n HHID: 'household_test_id',\n DeviceID: 'device_test_id',\n SingleDeviceID: 'single_device_test_id'\n },\n uid: 'device_test_id',\n },\n });\n\n // arrays are converted to strings\n expect(ftrackIdSubmodule.decode(MOCK_VALUE_ARRAYS, configMock)).to.deep.equal({\n ftrackId: {\n ext: {\n HHID: 'household_test_id|a|b',\n DeviceID: 'device_test_id|c|d',\n SingleDeviceID: 'single_device_test_id|e|f'\n },\n uid: 'device_test_id|c|d',\n },\n });\n\n // mix of both but uid should be empty string because DeviceId is not defined\n expect(ftrackIdSubmodule.decode(MOCK_VALUE_BOTH, configMock)).to.deep.equal({\n ftrackId: {\n ext: {\n foo: 'foo|a|b',\n bar: 'bar',\n baz: 'baz|baz|baz'\n },\n uid: '',\n },\n });\n });\n\n it(`should not be making requests to retrieve a new ID, it should just be decoding a response`, () => {\n ftrackIdSubmodule.decode('value', configMock);\n\n expect(server.requests).to.have.length(0);\n })\n });\n\n describe(`extendId() method`, () => {\n it(`should not be making requests to retrieve a new ID, it should just be adding additional data to the id object`, () => {\n ftrackIdSubmodule.extendId(configMock, null, {cache: {id: ''}});\n\n expect(server.requests).to.have.length(0);\n });\n\n it(`should return cacheIdObj`, () => {\n expect(ftrackIdSubmodule.extendId(configMock, null, {cache: {id: ''}})).to.deep.equal({cache: {id: ''}});\n });\n });\n\n describe('pbjs \"get id\" methods', () => {\n beforeEach(() => {\n init(config);\n setSubmoduleRegistry([ftrackIdSubmodule]);\n });\n\n describe('pbjs.getUserIdsAsync()', () => {\n it('should return the IDs in the correct schema - flat schema', () => {\n config.setConfig({\n userSync: {\n auctionDelay: 10,\n userIds: [{\n name: 'ftrack',\n value: {\n ftrackId: {\n uid: 'device_test_id',\n ext: {\n HHID: 'household_test_id',\n DeviceID: 'device_test_id',\n SingleDeviceID: 'single_device_test_id'\n }\n }\n }\n }]\n }\n });\n\n return getGlobal().getUserIdsAsync().then(ids => {\n expect(ids.ftrackId).to.deep.equal({\n uid: 'device_test_id',\n ext: {\n HHID: 'household_test_id',\n DeviceID: 'device_test_id',\n SingleDeviceID: 'single_device_test_id'\n }\n });\n });\n });\n });\n\n describe('pbjs.getUserIds()', () => {\n it('should return the IDs in the correct schema', async () => {\n config.setConfig({\n userSync: {\n auctionDelay: 10,\n userIds: [{\n name: 'ftrack',\n value: {\n ftrackId: {\n uid: 'device_test_id',\n ext: {\n HHID: 'household_test_id',\n DeviceID: 'device_test_id',\n SingleDeviceID: 'single_device_test_id'\n }\n }\n }\n }]\n }\n });\n\n await getGlobal().getUserIdsAsync();\n\n expect(getGlobal().getUserIds()).to.deep.equal({\n ftrackId: {\n uid: 'device_test_id',\n ext: {\n HHID: 'household_test_id',\n DeviceID: 'device_test_id',\n SingleDeviceID: 'single_device_test_id'\n }\n }\n });\n });\n });\n\n describe('pbjs.getUserIdsAsEids()', () => {\n it('should return the correct EIDs schema ', async () => {\n // Pass all three IDs\n config.setConfig({\n userSync: {\n auctionDelay: 10,\n userIds: [{\n name: 'ftrack',\n value: {\n ftrackId: {\n uid: 'device_test_id',\n ext: {\n HHID: 'household_test_id',\n DeviceID: 'device_test_id',\n SingleDeviceID: 'single_device_test_id'\n }\n }\n }\n }]\n }\n });\n\n await getGlobal().getUserIdsAsync();\n\n expect(getGlobal().getUserIdsAsEids()).to.deep.equal([{\n source: 'flashtalking.com',\n uids: [{\n id: 'device_test_id',\n atype: 1,\n ext: {\n HHID: 'household_test_id',\n DeviceID: 'device_test_id',\n SingleDeviceID: 'single_device_test_id'\n }\n }]\n }]);\n });\n\n describe('by ID type:', () => {\n it('- DeviceID', async () => {\n // Pass DeviceID only\n config.setConfig({\n userSync: {\n auctionDelay: 10,\n userIds: [{\n name: 'ftrack',\n value: {\n ftrackId: {\n uid: 'device_test_id',\n ext: {\n DeviceID: 'device_test_id',\n }\n }\n }\n }]\n }\n });\n\n await getGlobal().getUserIdsAsync();\n\n expect(getGlobal().getUserIdsAsEids()).to.deep.equal([{\n source: 'flashtalking.com',\n uids: [{\n id: 'device_test_id',\n atype: 1,\n ext: {\n DeviceID: 'device_test_id'\n }\n }]\n }]);\n });\n\n it('- HHID', async () => {\n // Pass HHID only\n config.setConfig({\n userSync: {\n auctionDelay: 10,\n userIds: [{\n name: 'ftrack',\n value: {\n ftrackId: {\n uid: '',\n ext: {\n HHID: 'household_test_id'\n }\n }\n }\n }]\n }\n });\n\n await getGlobal().getUserIdsAsync();\n\n expect(getGlobal().getUserIdsAsEids()).to.deep.equal([{\n source: 'flashtalking.com',\n uids: [{\n id: '',\n atype: 1,\n ext: {\n HHID: 'household_test_id'\n }\n }]\n }]);\n });\n\n it('- SingleDeviceID', async () => {\n // Pass SingleDeviceID only\n config.setConfig({\n userSync: {\n auctionDelay: 10,\n userIds: [{\n name: 'ftrack',\n value: {\n ftrackId: {\n uid: '',\n ext: {\n SingleDeviceID: 'single_device_test_id'\n }\n }\n }\n }]\n }\n });\n\n await getGlobal().getUserIdsAsync();\n\n expect(getGlobal().getUserIdsAsEids()).to.deep.equal([{\n source: 'flashtalking.com',\n uids: [{\n id: '',\n atype: 1,\n ext: {\n SingleDeviceID: 'single_device_test_id'\n }\n }]\n }]);\n });\n });\n });\n });\n describe('eid', () => {\n before(() => {\n attachIdSystem(ftrackIdSubmodule);\n });\n it('should return the correct EID schema', () => {\n // This is the schema returned from the ftrack decode() method\n expect(createEidsArray({\n ftrackId: {\n uid: 'test-device-id',\n ext: {\n DeviceID: 'test-device-id',\n SingleDeviceID: 'test-single-device-id',\n HHID: 'test-household-id'\n }\n },\n foo: {\n bar: 'baz'\n },\n lorem: {\n ipsum: ''\n }\n })).to.deep.equal([{\n source: 'flashtalking.com',\n uids: [{\n atype: 1,\n id: 'test-device-id',\n ext: {\n DeviceID: 'test-device-id',\n SingleDeviceID: 'test-single-device-id',\n HHID: 'test-household-id'\n }\n }]\n }]);\n });\n })\n});\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fwsspBidAdapter_spec.js","names":["expect","require","spec","getSDKVersion","formatAdHTML","describe","it","bid","params","serverUrl","networkId","profile","siteSectionId","videoAssetId","isBidRequestValid","to","be","true","false","getBidRequests","bidderRequest","gdprConsent","consentString","gdprApplies","uspConsent","gppConsent","gppString","applicableSections","refererInfo","page","requests","buildRequests","an","that","is","not","empty","request","method","equal","url","actualDataString","data","include","pbjs","version","expectedEncodedSchainString","encodeURIComponent","expectedUrl","actualUrl","cleanUrl","replace","bidRequests","payload","getFloor","currency","floor","syncOptions","userSyncs","getUserSyncs","deep","type","ortb2","regs","gpp","gpp_sid","site","content","id","title","bidRequest","format","mediaTypes","video","plcmt","bidderRequest2","sdkVersion","expectedAdHtml","adUnitCode","actualAdHtml","showMuteButton","isMuted","playerParams","env","response","result","interpretResponse","meta","advertiserDomains","dealId","campaignId","bannerId","requestId","cpm","width","height","creativeId","netRevenue","ttl","length"],"sourceRoot":"../../../../..","sources":["test/spec/modules/fwsspBidAdapter_spec.js"],"sourcesContent":["const { expect } = require('chai');\nconst { spec, getSDKVersion, formatAdHTML } = require('modules/fwsspBidAdapter');\n\ndescribe('fwsspBidAdapter', () => {\n describe('isBidRequestValid', () => {\n it('should return true when all required params are present', () => {\n const bid = {\n params: {\n serverUrl: 'https://example.com/ad/g/1',\n networkId: '42015',\n profile: '42015:js_allinone_profile',\n siteSectionId: 'js_allinone_demo_site_section',\n videoAssetId: '0'\n }\n };\n expect(spec.isBidRequestValid(bid)).to.be.true;\n });\n\n it('should return false when serverUrl is missing', () => {\n const bid = {\n params: {\n networkId: '42015',\n profile: '42015:js_allinone_profile',\n siteSectionId: 'js_allinone_demo_site_section',\n videoAssetId: '0'\n }\n };\n expect(spec.isBidRequestValid(bid)).to.be.false;\n });\n\n it('should return false when networkId is missing', () => {\n const bid = {\n params: {\n serverUrl: 'https://example.com/ad/g/1',\n profile: '42015:js_allinone_profile',\n siteSectionId: 'js_allinone_demo_site_section',\n videoAssetId: '0'\n }\n };\n expect(spec.isBidRequestValid(bid)).to.be.false;\n });\n\n it('should return false when profile is missing', () => {\n const bid = {\n params: {\n serverUrl: 'https://example.com/ad/g/1',\n networkId: '42015',\n siteSectionId: 'js_allinone_demo_site_section',\n videoAssetId: '0'\n }\n };\n expect(spec.isBidRequestValid(bid)).to.be.false;\n });\n\n it('should return false when siteSectionId is missing', () => {\n const bid = {\n params: {\n serverUrl: 'https://example.com/ad/g/1',\n networkId: '42015',\n profile: '42015:js_allinone_profile',\n videoAssetId: '0'\n }\n };\n expect(spec.isBidRequestValid(bid)).to.be.false;\n });\n\n it('should return false when videoAssetId is missing', () => {\n const bid = {\n params: {\n serverUrl: 'https://example.com/ad/g/1',\n networkId: '42015',\n profile: '42015:js_allinone_profile',\n siteSectionId: 'js_allinone_demo_site_section'\n }\n };\n expect(spec.isBidRequestValid(bid)).to.be.false;\n });\n });\n\n describe('buildRequestsForBanner', () => {\n const getBidRequests = () => {\n return [{\n 'bidder': 'fwssp',\n 'adUnitCode': 'adunit-code',\n 'mediaTypes': {\n 'banner': {\n 'sizes': [\n [300, 250], [300, 600]\n ]\n }\n },\n 'sizes': [[300, 250], [300, 600]],\n 'bidId': '30b31c1838de1e',\n 'bidderRequestId': '22edbae2733bf6',\n 'auctionId': '1d1a030790a475',\n 'schain': {\n 'ver': '1.0',\n 'complete': 1,\n 'nodes': [{\n 'asi': 'example.com',\n 'sid': '0',\n 'hp': 1,\n 'rid': 'bidrequestid',\n 'domain': 'example.com'\n }]\n },\n 'params': {\n 'bidfloor': 2.00,\n 'serverUrl': 'https://example.com/ad/g/1',\n 'networkId': '42015',\n 'profile': '42015:js_allinone_profile',\n 'siteSectionId': 'js_allinone_demo_site_section',\n 'flags': '+play',\n 'videoAssetId': '0',\n 'timePosition': 120,\n 'adRequestKeyValues': {\n '_fw_player_width': '1920',\n '_fw_player_height': '1080'\n }\n }\n }]\n };\n\n const bidderRequest = {\n gdprConsent: {\n consentString: 'consentString',\n gdprApplies: true\n },\n uspConsent: 'uspConsentString',\n gppConsent: {\n gppString: 'gppString',\n applicableSections: [8]\n },\n refererInfo: {\n page: 'www.test.com'\n }\n };\n\n it('should build a valid server request', () => {\n const requests = spec.buildRequests(getBidRequests(), bidderRequest);\n expect(requests).to.be.an('array').that.is.not.empty;\n const request = requests[0];\n expect(request.method).to.equal('GET');\n expect(request.url).to.equal('https://example.com/ad/g/1');\n\n const actualDataString = request.data;\n expect(actualDataString).to.include('nw=42015');\n expect(actualDataString).to.include('resp=vast4');\n expect(actualDataString).to.include('prof=42015%3Ajs_allinone_profile');\n expect(actualDataString).to.include('csid=js_allinone_demo_site_section');\n expect(actualDataString).to.include('caid=0');\n expect(actualDataString).to.include('pvrn=');\n expect(actualDataString).to.include('vprn=');\n expect(actualDataString).to.include('flag=%2Bplay%2Bfwssp%2Bemcr%2Bnucr%2Baeti%2Brema%2Bexvt%2Bfwpbjs');\n expect(actualDataString).to.include('mode=on-demand');\n expect(actualDataString).to.include(`vclr=js-7.10.0-prebid-${pbjs.version};`);\n expect(actualDataString).to.include('_fw_player_width=1920');\n expect(actualDataString).to.include('_fw_player_height=1080');\n expect(actualDataString).to.include('_fw_gdpr_consent=consentString');\n expect(actualDataString).to.include('_fw_gdpr=true');\n expect(actualDataString).to.include('_fw_us_privacy=uspConsentString');\n expect(actualDataString).to.include('gpp=gppString');\n expect(actualDataString).to.include('gpp_sid=8');\n expect(actualDataString).to.include('tpos=0');\n expect(actualDataString).to.include('ptgt=a');\n expect(actualDataString).to.include('slid=Preroll_1');\n expect(actualDataString).to.include('slau=preroll');\n expect(actualDataString).to.not.include('mind');\n expect(actualDataString).to.not.include('maxd;');\n // schain check\n const expectedEncodedSchainString = encodeURIComponent('{\"ver\":\"1.0\",\"complete\":1,\"nodes\":[{\"asi\":\"example.com\",\"sid\":\"0\",\"hp\":1,\"rid\":\"bidrequestid\",\"domain\":\"example.com\"}]}');\n expect(actualDataString).to.include(expectedEncodedSchainString);\n });\n\n it('should construct the full adrequest URL correctly', () => {\n const requests = spec.buildRequests(getBidRequests(), bidderRequest);\n expect(requests).to.be.an('array').that.is.not.empty;\n const request = requests[0];\n const expectedUrl = `https://example.com/ad/g/1?nw=42015&resp=vast4&prof=42015%3Ajs_allinone_profile&csid=js_allinone_demo_site_section&caid=0&flag=%2Bplay%2Bfwssp%2Bemcr%2Bnucr%2Baeti%2Brema%2Bexvt%2Bfwpbjs&mode=on-demand&vclr=js-7.10.0-prebid-${pbjs.version};_fw_player_width=1920&_fw_player_height=1080&_fw_bidfloor=2&_fw_bidfloorcur=USD&_fw_gdpr_consent=consentString&_fw_gdpr=true&_fw_us_privacy=uspConsentString&gpp=gppString&gpp_sid=8&schain=%7B%22ver%22%3A%221.0%22%2C%22complete%22%3A1%2C%22nodes%22%3A%5B%7B%22asi%22%3A%22example.com%22%2C%22sid%22%3A%220%22%2C%22hp%22%3A1%2C%22rid%22%3A%22bidrequestid%22%2C%22domain%22%3A%22example.com%22%7D%5D%7D;tpos=0&ptgt=a&slid=Preroll_1&slau=preroll;`;\n const actualUrl = `${request.url}?${request.data}`;\n // Remove pvrn and vprn from both URLs before comparing\n const cleanUrl = (url) => url.replace(/&pvrn=[^&]*/g, '').replace(/&vprn=[^&]*/g, '');\n expect(cleanUrl(actualUrl)).to.equal(cleanUrl(expectedUrl));\n });\n\n it('should return the correct width and height when _fw_player_width and _fw_player_height are not present in adRequestKeyValues', () => {\n const bidRequests = [{\n 'bidder': 'fwssp',\n 'adUnitCode': 'adunit-code',\n 'mediaTypes': {\n 'banner': {\n 'sizes': [\n [300, 600]\n ]\n }\n },\n 'sizes': [[300, 250], [300, 600]],\n 'bidId': '30b31c1838de1e',\n 'bidderRequestId': '22edbae2733bf6',\n 'auctionId': '1d1a030790a475',\n 'params': {\n 'bidfloor': 2.00,\n 'serverUrl': 'https://example.com/ad/g/1',\n 'networkId': '42015',\n 'profile': '42015:js_allinone_profile',\n 'siteSectionId': 'js_allinone_demo_site_section',\n }\n }];\n const request = spec.buildRequests(bidRequests);\n const payload = request[0].data;\n expect(payload).to.include('_fw_player_width=300');\n expect(payload).to.include('_fw_player_height=600');\n });\n\n it('should get bidfloor value from params if no getFloor method', () => {\n const request = spec.buildRequests(getBidRequests());\n const payload = request[0].data;\n expect(payload).to.include('_fw_bidfloor=2');\n expect(payload).to.include('_fw_bidfloorcur=USD');\n });\n\n it('should get bidfloor value from getFloor method if available', () => {\n const bidRequests = getBidRequests();\n bidRequests[0].getFloor = () => ({ currency: 'USD', floor: 1.16 });\n const request = spec.buildRequests(bidRequests);\n const payload = request[0].data;\n expect(payload).to.include('_fw_bidfloor=1.16');\n expect(payload).to.include('_fw_bidfloorcur=USD');\n });\n\n it('should return empty bidFloorCurrency when bidfloor <= 0', () => {\n const bidRequests = getBidRequests();\n bidRequests[0].getFloor = () => ({ currency: 'USD', floor: -1 });\n const request = spec.buildRequests(bidRequests);\n const payload = request[0].data;\n expect(payload).to.include('_fw_bidfloor=0');\n expect(payload).to.include('_fw_bidfloorcur=');\n });\n\n it('should return image type userSyncs with gdprConsent', () => {\n const syncOptions = {\n 'pixelEnabled': true\n }\n const userSyncs = spec.getUserSyncs(syncOptions, null, bidderRequest.gdprConsent, null, null);\n expect(userSyncs).to.deep.equal([{\n type: 'image',\n url: 'https://ads.stickyadstv.com/auto-user-sync?gdpr=1&gdpr_consent=consentString'\n }]);\n });\n\n it('should return iframe type userSyncs with gdprConsent, uspConsent, gppConsent', () => {\n const syncOptions = {\n 'iframeEnabled': true\n }\n const userSyncs = spec.getUserSyncs(syncOptions, null, bidderRequest.gdprConsent, bidderRequest.uspConsent, bidderRequest.gppConsent);\n expect(userSyncs).to.deep.equal([{\n type: 'iframe',\n url: 'https://ads.stickyadstv.com/auto-user-sync?gdpr=1&gdpr_consent=consentString&us_privacy=uspConsentString&gpp=gppString&gpp_sid[]=8'\n }]);\n });\n });\n\n describe('buildRequestsForVideo', () => {\n const getBidRequests = () => {\n return [{\n 'bidder': 'fwssp',\n 'adUnitCode': 'adunit-code',\n 'mediaTypes': {\n 'video': {\n 'playerSize': [300, 600],\n }\n },\n 'sizes': [[300, 250], [300, 600]],\n 'bidId': '30b31c1838de1e',\n 'bidderRequestId': '22edbae2733bf6',\n 'auctionId': '1d1a030790a475',\n 'schain': {\n 'ver': '1.0',\n 'complete': 1,\n 'nodes': [{\n 'asi': 'example.com',\n 'sid': '0',\n 'hp': 1,\n 'rid': 'bidrequestid',\n 'domain': 'example.com'\n }]\n },\n 'params': {\n 'bidfloor': 2.00,\n 'serverUrl': 'https://example.com/ad/g/1',\n 'networkId': '42015',\n 'profile': '42015:js_allinone_profile',\n 'siteSectionId': 'js_allinone_demo_site_section',\n 'flags': '+play',\n 'videoAssetId': '0',\n 'mode': 'live',\n 'timePosition': 120,\n 'tpos': 300,\n 'slid': 'Midroll',\n 'slau': 'midroll',\n 'minD': 30,\n 'maxD': 60,\n 'adRequestKeyValues': {\n '_fw_player_width': '1920',\n '_fw_player_height': '1080'\n },\n 'gdpr_consented_providers': 'test_providers'\n }\n }]\n };\n\n const bidderRequest = {\n gdprConsent: {\n consentString: 'consentString',\n gdprApplies: true\n },\n uspConsent: 'uspConsentString',\n gppConsent: {\n gppString: 'gppString',\n applicableSections: [8]\n },\n ortb2: {\n regs: {\n gpp: 'test_ortb2_gpp',\n gpp_sid: 'test_ortb2_gpp_sid'\n },\n site: {\n content: {\n id: 'test_content_id',\n title: 'test_content_title'\n }\n }\n },\n refererInfo: {\n page: 'http://www.test.com'\n }\n };\n\n it('should return context and placement with default values', () => {\n const request = spec.buildRequests(getBidRequests());\n const payload = request[0].data;\n expect(payload).to.include('_fw_video_context=&'); ;\n expect(payload).to.include('_fw_placement_type=null&');\n expect(payload).to.include('_fw_plcmt_type=null;');\n });\n\n it('should assign placement and context when format is inbanner', () => {\n const bidRequest = getBidRequests()[0];\n bidRequest.params.format = 'inbanner';\n bidRequest.mediaTypes.video.plcmt = 'test-plcmt-type';\n const request = spec.buildRequests([bidRequest]);\n const payload = request[0].data;\n expect(payload).to.include('_fw_video_context=In-Banner&'); ;\n expect(payload).to.include('_fw_placement_type=2&');\n expect(payload).to.include('_fw_plcmt_type=test-plcmt-type;');\n });\n\n it('should build a valid server request', () => {\n const requests = spec.buildRequests(getBidRequests(), bidderRequest);\n expect(requests).to.be.an('array').that.is.not.empty;\n const request = requests[0];\n expect(request.method).to.equal('GET');\n expect(request.url).to.equal('https://example.com/ad/g/1');\n\n const actualDataString = request.data;\n\n expect(actualDataString).to.include('nw=42015');\n expect(actualDataString).to.include('resp=vast4');\n expect(actualDataString).to.include('prof=42015%3Ajs_allinone_profile');\n expect(actualDataString).to.include('csid=js_allinone_demo_site_section');\n expect(actualDataString).to.include('caid=0');\n expect(actualDataString).to.include('pvrn=');\n expect(actualDataString).to.include('vprn=');\n expect(actualDataString).to.include('flag=%2Bplay%2Bfwssp%2Bemcr%2Bnucr%2Baeti%2Brema%2Bexvt%2Bfwpbjs');\n expect(actualDataString).to.include('mode=live');\n expect(actualDataString).to.include(`vclr=js-7.10.0-prebid-${pbjs.version};`);\n expect(actualDataString).to.include('_fw_player_width=1920');\n expect(actualDataString).to.include('_fw_player_height=1080');\n expect(actualDataString).to.include('_fw_gdpr_consent=consentString');\n expect(actualDataString).to.include('_fw_gdpr=true');\n expect(actualDataString).to.include('_fw_us_privacy=uspConsentString');\n expect(actualDataString).to.include('gpp=gppString');\n expect(actualDataString).to.include('gpp_sid=8');\n\n expect(actualDataString).to.include('loc=http%3A%2F%2Fwww.test.com');\n expect(actualDataString).to.include('tpos=300');\n expect(actualDataString).to.include('ptgt=a');\n expect(actualDataString).to.include('slid=Midroll');\n expect(actualDataString).to.include('slau=midroll');\n expect(actualDataString).to.include('mind=30');\n expect(actualDataString).to.include('maxd=60;');\n // schain check\n const expectedEncodedSchainString = encodeURIComponent('{\"ver\":\"1.0\",\"complete\":1,\"nodes\":[{\"asi\":\"example.com\",\"sid\":\"0\",\"hp\":1,\"rid\":\"bidrequestid\",\"domain\":\"example.com\"}]}');\n expect(actualDataString).to.include(expectedEncodedSchainString);\n });\n\n it('should construct the full adrequest URL correctly', () => {\n const requests = spec.buildRequests(getBidRequests(), bidderRequest);\n expect(requests).to.be.an('array').that.is.not.empty;\n const request = requests[0];\n\n const expectedUrl = `https://example.com/ad/g/1?nw=42015&resp=vast4&prof=42015%3Ajs_allinone_profile&csid=js_allinone_demo_site_section&caid=0&flag=%2Bplay%2Bfwssp%2Bemcr%2Bnucr%2Baeti%2Brema%2Bexvt%2Bfwpbjs&mode=live&vclr=js-7.10.0-prebid-${pbjs.version};_fw_player_width=1920&_fw_player_height=1080&_fw_bidfloor=2&_fw_bidfloorcur=USD&_fw_gdpr_consent=consentString&_fw_gdpr=true&_fw_gdpr_consented_providers=test_providers&_fw_us_privacy=uspConsentString&gpp=gppString&gpp_sid=8&_fw_prebid_content=%7B%22id%22%3A%22test_content_id%22%2C%22title%22%3A%22test_content_title%22%7D&schain=%7B%22ver%22%3A%221.0%22%2C%22complete%22%3A1%2C%22nodes%22%3A%5B%7B%22asi%22%3A%22example.com%22%2C%22sid%22%3A%220%22%2C%22hp%22%3A1%2C%22rid%22%3A%22bidrequestid%22%2C%22domain%22%3A%22example.com%22%7D%5D%7D&loc=http%3A%2F%2Fwww.test.com&_fw_video_context=&_fw_placement_type=null&_fw_plcmt_type=null;tpos=300&ptgt=a&slid=Midroll&slau=midroll&mind=30&maxd=60;`;\n const actualUrl = `${request.url}?${request.data}`;\n // Remove pvrn and vprn from both URLs before comparing\n const cleanUrl = (url) => url.replace(/&pvrn=[^&]*/g, '').replace(/&vprn=[^&]*/g, '');\n expect(cleanUrl(actualUrl)).to.equal(cleanUrl(expectedUrl));\n });\n\n it('should use otrb2 gpp if gpp not in bidder request', () => {\n const bidderRequest2 = {\n ortb2: {\n regs: {\n gpp: 'test_ortb2_gpp',\n gpp_sid: 'test_ortb2_gpp_sid'\n },\n site: {\n content: {\n id: 'test_content_id',\n title: 'test_content_title'\n }\n }\n }\n };\n\n const requests = spec.buildRequests(getBidRequests(), bidderRequest2);\n expect(requests).to.be.an('array').that.is.not.empty;\n const request = requests[0];\n const expectedUrl = `https://example.com/ad/g/1?nw=42015&resp=vast4&prof=42015%3Ajs_allinone_profile&csid=js_allinone_demo_site_section&caid=0&flag=%2Bplay%2Bfwssp%2Bemcr%2Bnucr%2Baeti%2Brema%2Bexvt%2Bfwpbjs&mode=live&vclr=js-7.10.0-prebid-${pbjs.version};_fw_player_width=1920&_fw_player_height=1080&_fw_bidfloor=2&_fw_bidfloorcur=USD&_fw_gdpr_consented_providers=test_providers&gpp=test_ortb2_gpp&gpp_sid=test_ortb2_gpp_sid&_fw_prebid_content=%7B%22id%22%3A%22test_content_id%22%2C%22title%22%3A%22test_content_title%22%7D&schain=%7B%22ver%22%3A%221.0%22%2C%22complete%22%3A1%2C%22nodes%22%3A%5B%7B%22asi%22%3A%22example.com%22%2C%22sid%22%3A%220%22%2C%22hp%22%3A1%2C%22rid%22%3A%22bidrequestid%22%2C%22domain%22%3A%22example.com%22%7D%5D%7D&_fw_video_context=&_fw_placement_type=null&_fw_plcmt_type=null;tpos=300&ptgt=a&slid=Midroll&slau=midroll&mind=30&maxd=60;`;\n const actualUrl = `${request.url}?${request.data}`;\n // Remove pvrn and vprn from both URLs before comparing\n const cleanUrl = (url) => url.replace(/&pvrn=[^&]*/g, '').replace(/&vprn=[^&]*/g, '');\n expect(cleanUrl(actualUrl)).to.equal(cleanUrl(expectedUrl));\n });\n\n it('should get bidfloor value from params if no getFloor method', () => {\n const request = spec.buildRequests(getBidRequests());\n const payload = request[0].data;\n expect(payload).to.include('_fw_bidfloor=2');\n expect(payload).to.include('_fw_bidfloorcur=USD');\n });\n\n it('should return image type userSyncs with gdprConsent', () => {\n const syncOptions = {\n 'pixelEnabled': true\n }\n const userSyncs = spec.getUserSyncs(syncOptions, null, bidderRequest.gdprConsent, null, null);\n expect(userSyncs).to.deep.equal([{\n type: 'image',\n url: 'https://ads.stickyadstv.com/auto-user-sync?gdpr=1&gdpr_consent=consentString'\n }]);\n });\n\n it('should return iframe type userSyncs with gdprConsent, uspConsent, gppConsent', () => {\n const syncOptions = {\n 'iframeEnabled': true\n }\n const userSyncs = spec.getUserSyncs(syncOptions, null, bidderRequest.gdprConsent, bidderRequest.uspConsent, bidderRequest.gppConsent);\n expect(userSyncs).to.deep.equal([{\n type: 'iframe',\n url: 'https://ads.stickyadstv.com/auto-user-sync?gdpr=1&gdpr_consent=consentString&us_privacy=uspConsentString&gpp=gppString&gpp_sid[]=8'\n }]);\n });\n });\n\n describe('buildRequestsForVideoWithContextAndPlacement', () => {\n it('should return input context and placement', () => {\n const bidRequests = [{\n 'bidder': 'fwssp',\n 'adUnitCode': 'adunit-code',\n 'mediaTypes': {\n 'video': {\n 'context': 'outstream',\n 'placement': 2,\n 'plcmt': 3,\n 'playerSize': [300, 600],\n }\n },\n 'sizes': [[300, 250], [300, 600]],\n 'bidId': '30b31c1838de1e',\n 'bidderRequestId': '22edbae2733bf6',\n 'auctionId': '1d1a030790a475',\n 'params': {\n 'bidfloor': 2.00,\n 'serverUrl': 'https://example.com/ad/g/1',\n 'networkId': '42015',\n 'profile': '42015:js_allinone_profile',\n 'siteSectionId': 'js_allinone_demo_site_section',\n 'flags': '+play',\n 'videoAssetId': '0',\n 'mode': 'live',\n 'vclr': 'js-7.10.0-prebid-',\n 'timePosition': 120,\n 'minD': 30,\n 'maxD': 60,\n }\n }];\n const request = spec.buildRequests(bidRequests);\n const payload = request[0].data;\n expect(payload).to.include('_fw_video_context=outstream'); ;\n expect(payload).to.include('_fw_placement_type=2');\n expect(payload).to.include('_fw_plcmt_type=3');\n });\n });\n\n describe('getSDKVersion', () => {\n it('should return the default sdk version when sdkVersion is missing', () => {\n const bid = {\n params: {\n sdkVersion: ''\n }\n };\n expect(getSDKVersion(bid)).to.equal('7.10.0');\n });\n\n it('should return the correct sdk version when sdkVersion is higher than the default', () => {\n const bid = {\n params: {\n sdkVersion: '7.11.0'\n }\n };\n expect(getSDKVersion(bid)).to.equal('7.11.0');\n });\n\n it('should return the default sdk version when sdkVersion is lower than the default', () => {\n const bid = {\n params: {\n sdkVersion: '7.9.0'\n }\n };\n expect(getSDKVersion(bid)).to.equal('7.10.0');\n });\n\n it('should return the default sdk version when sdkVersion is an invalid string', () => {\n const bid = {\n params: {\n sdkVersion: 'abcdef'\n }\n };\n expect(getSDKVersion(bid)).to.equal('7.10.0');\n });\n\n it('should return the correct sdk version when sdkVersion starts with v', () => {\n const bid = {\n params: {\n sdkVersion: 'v7.11.0'\n }\n };\n expect(getSDKVersion(bid)).to.equal('7.11.0');\n });\n });\n\n describe('formatAdHTML', () => {\n it('should return the ad markup in formatAdHTML, with default value of false for showMuteButton and true for isMuted', () => {\n const expectedAdHtml =\n`<div id='fwssp_display_base' class='ad-container' style='width:640px;height:480px;'>\n <script type='text/javascript'>\n const script = document.createElement('script');\n script.src = 'https://mssl.fwmrm.net/libs/adm/7.10.0/AdManager-prebid.js';\n script.async = true;\n\n const topWindow = function() {\n let res = window;\n try {\n while (top !== res) {\n if (res.parent.location.href.length) {\n res = res.parent;\n }\n }\n } catch (e) {}\n return res;\n }();\n const cache = topWindow.fwssp_cache ? topWindow.fwssp_cache['test'] : null;\n const vastResponse = cache ? cache.response : null;\n const listeners = cache ? cache.listeners : null;\n\n const config = {\n displayBaseId: 'fwssp_display_base',\n vastResponse: vastResponse,\n showMuteButton: false,\n startMuted: true,\n playerParams: undefined,\n format: 'outstream',\n listeners: listeners\n };\n\n const timeoutId = setTimeout(() => {\n console.warn('MRM AdManager load timeout: 5000 ms');\n cleanup();\n }, 5000);\n\n script.onload = () => {\n clearTimeout(timeoutId);\n this.prebidPlayer = window.tv.freewheel.SDK.newPrebidPlayer(config);\n };\n\n script.onerror = (err) => {\n cleanup();\n console.warn('MRM AdManager load failed:', err.message);\n };\n\n const cleanup = () => {\n clearTimeout(timeoutId);\n script.remove();\n var displayBase = document.getElementById('fwssp_display_base');\n if (displayBase) {\n displayBase.remove();\n }\n };\n\n document.head.appendChild(script);\n </script>\n</div>`;\n\n const bidRequest = {\n params: {},\n adUnitCode: 'test'\n }\n const actualAdHtml = formatAdHTML(bidRequest, [640, 480], '<VAST></VAST>');\n expect(actualAdHtml).to.deep.equal(expectedAdHtml)\n });\n\n it('should take bid request showMuteButton, isMuted, and playerParams', () => {\n const expectedAdHtml =\n`<div id='fwssp_display_base' class='ad-container' style='width:640px;height:480px;'>\n <script type='text/javascript'>\n const script = document.createElement('script');\n script.src = 'https://mssl.fwmrm.net/libs/adm/7.10.0/AdManager-prebid.js';\n script.async = true;\n\n const topWindow = function() {\n let res = window;\n try {\n while (top !== res) {\n if (res.parent.location.href.length) {\n res = res.parent;\n }\n }\n } catch (e) {}\n return res;\n }();\n const cache = topWindow.fwssp_cache ? topWindow.fwssp_cache['test'] : null;\n const vastResponse = cache ? cache.response : null;\n const listeners = cache ? cache.listeners : null;\n\n const config = {\n displayBaseId: 'fwssp_display_base',\n vastResponse: vastResponse,\n showMuteButton: true,\n startMuted: false,\n playerParams: {\"test-param\":\"test-value\"},\n format: 'outstream',\n listeners: listeners\n };\n\n const timeoutId = setTimeout(() => {\n console.warn('MRM AdManager load timeout: 5000 ms');\n cleanup();\n }, 5000);\n\n script.onload = () => {\n clearTimeout(timeoutId);\n this.prebidPlayer = window.tv.freewheel.SDK.newPrebidPlayer(config);\n };\n\n script.onerror = (err) => {\n cleanup();\n console.warn('MRM AdManager load failed:', err.message);\n };\n\n const cleanup = () => {\n clearTimeout(timeoutId);\n script.remove();\n var displayBase = document.getElementById('fwssp_display_base');\n if (displayBase) {\n displayBase.remove();\n }\n };\n\n document.head.appendChild(script);\n </script>\n</div>`;\n\n const bidRequest = {\n params: {\n showMuteButton: true,\n isMuted: false,\n playerParams: { 'test-param': 'test-value' }\n },\n adUnitCode: 'test'\n }\n const actualAdHtml = formatAdHTML(bidRequest, [640, 480], '<VAST></VAST>');\n expect(actualAdHtml).to.deep.equal(expectedAdHtml)\n });\n\n it('should generate html with the AdManager stg url when env param has value fo stg in bid request', () => {\n const expectedAdHtml =\n`<div id='fwssp_display_base' class='ad-container' style='width:640px;height:480px;'>\n <script type='text/javascript'>\n const script = document.createElement('script');\n script.src = 'https://adm.stg.fwmrm.net/libs/adm/7.10.0/AdManager-prebid.js';\n script.async = true;\n\n const topWindow = function() {\n let res = window;\n try {\n while (top !== res) {\n if (res.parent.location.href.length) {\n res = res.parent;\n }\n }\n } catch (e) {}\n return res;\n }();\n const cache = topWindow.fwssp_cache ? topWindow.fwssp_cache['test'] : null;\n const vastResponse = cache ? cache.response : null;\n const listeners = cache ? cache.listeners : null;\n\n const config = {\n displayBaseId: 'fwssp_display_base',\n vastResponse: vastResponse,\n showMuteButton: false,\n startMuted: true,\n playerParams: undefined,\n format: 'outstream',\n listeners: listeners\n };\n\n const timeoutId = setTimeout(() => {\n console.warn('MRM AdManager load timeout: 5000 ms');\n cleanup();\n }, 5000);\n\n script.onload = () => {\n clearTimeout(timeoutId);\n this.prebidPlayer = window.tv.freewheel.SDK.newPrebidPlayer(config);\n };\n\n script.onerror = (err) => {\n cleanup();\n console.warn('MRM AdManager load failed:', err.message);\n };\n\n const cleanup = () => {\n clearTimeout(timeoutId);\n script.remove();\n var displayBase = document.getElementById('fwssp_display_base');\n if (displayBase) {\n displayBase.remove();\n }\n };\n\n document.head.appendChild(script);\n </script>\n</div>`;\n\n const bidRequest = {\n params: {\n env: 'stg'\n },\n adUnitCode: 'test'\n }\n const actualAdHtml = formatAdHTML(bidRequest, [640, 480], '<VAST></VAST>');\n expect(actualAdHtml).to.deep.equal(expectedAdHtml)\n });\n\n it('should use the correct version when sdkVersion is in bid params', () => {\n const expectedAdHtml =\n`<div id='fwssp_display_base' class='ad-container' style='width:640px;height:480px;'>\n <script type='text/javascript'>\n const script = document.createElement('script');\n script.src = 'https://adm.stg.fwmrm.net/libs/adm/7.11.0/AdManager-prebid.js';\n script.async = true;\n\n const topWindow = function() {\n let res = window;\n try {\n while (top !== res) {\n if (res.parent.location.href.length) {\n res = res.parent;\n }\n }\n } catch (e) {}\n return res;\n }();\n const cache = topWindow.fwssp_cache ? topWindow.fwssp_cache['test'] : null;\n const vastResponse = cache ? cache.response : null;\n const listeners = cache ? cache.listeners : null;\n\n const config = {\n displayBaseId: 'fwssp_display_base',\n vastResponse: vastResponse,\n showMuteButton: false,\n startMuted: true,\n playerParams: undefined,\n format: 'outstream',\n listeners: listeners\n };\n\n const timeoutId = setTimeout(() => {\n console.warn('MRM AdManager load timeout: 5000 ms');\n cleanup();\n }, 5000);\n\n script.onload = () => {\n clearTimeout(timeoutId);\n this.prebidPlayer = window.tv.freewheel.SDK.newPrebidPlayer(config);\n };\n\n script.onerror = (err) => {\n cleanup();\n console.warn('MRM AdManager load failed:', err.message);\n };\n\n const cleanup = () => {\n clearTimeout(timeoutId);\n script.remove();\n var displayBase = document.getElementById('fwssp_display_base');\n if (displayBase) {\n displayBase.remove();\n }\n };\n\n document.head.appendChild(script);\n </script>\n</div>`;\n\n const bidRequest = {\n params: {\n env: 'stg',\n sdkVersion: '7.11.0'\n },\n adUnitCode: 'test'\n }\n const actualAdHtml = formatAdHTML(bidRequest, [640, 480], '<VAST></VAST>');\n expect(actualAdHtml).to.deep.equal(expectedAdHtml)\n });\n });\n\n describe('interpretResponseForBanner', () => {\n const getBidRequests = () => {\n return [{\n 'bidder': 'fwssp',\n 'params': {\n 'serverUrl': 'https://fwmrm.com/ad/g/1',\n 'sdkVersion': ''\n },\n 'adUnitCode': 'adunit-code',\n 'mediaTypes': {\n 'banner': {\n 'sizes': [\n [300, 600]\n ]\n }\n },\n 'sizes': [[300, 250], [300, 600]],\n 'bidId': '30b31c1838de1e',\n 'bidderRequestId': '22edbae2733bf6',\n 'auctionId': '1d1a030790a475',\n }]\n };\n\n const response = '<?xml version=\\'1.0\\' encoding=\\'UTF-8\\'?><VAST version=\\'4.2\\'>' +\n '<Ad id=\\'AdswizzAd28517153\\'>' +\n ' <InLine>' +\n ' <AdSystem>Adswizz</AdSystem>' +\n ' <Impression id=\"dmp-1617899169-2513\"></Impression>' +\n ' <Impression id=\"user-sync-1617899169-1\">https://ads.stickyadstv.com/auto-user-sync?dealId=NRJ-PRO-12008</Impression>' +\n ' <Impression id=\"727435745\">' +\n ' <![CDATA[ https://ads.stickyadstv.com/www/delivery/swfIndex.php?reqType=AdsDisplayStarted&dealId=NRJ-PRO-00008&campaignId=SMF-WOW-55555&adId=12345&viewKey=1607626986121029-54&sessionId=e3230a6bef6e0d2327422ff5282435&zoneId=2003&impId=1&cb=1932360&trackingIds=19651873%2C28161297%2C28161329%2C29847601%2C29967745%2C61392385&listenerId=eddf2aebad29655bb2b6abac276c50ef& ]]>' +\n ' </Impression>' +\n ' <Creatives>' +\n ' <Creative AdID=\\'56600048\\' id=\\'28517153\\' sequence=\\'1\\'>' +\n ' <Linear>' +\n ' <Duration>00:00:09</Duration>' +\n ' <MediaFiles>' +\n ' <MediaFile delivery=\\'progressive\\' bitrate=\\'129\\' width=\\'320\\' height=\\'240\\' type=\\'video/mp4\\' scalable=\\'true\\' maintainAspectRatio=\\'true\\'><![CDATA[http://cdn.stickyadstv.com/www/images/28517153-web-MP4-59e47d565b2d9.mp4]]></MediaFile>' +\n ' </MediaFiles>' +\n ' </Linear>' +\n ' </Creative>' +\n ' </Creatives>' +\n ' <Extensions>' +\n ' <Extension type=\\'StickyPricing\\'><Price currency=\"EUR\">0.2000</Price></Extension>' +\n ' </Extensions>' +\n ' </InLine>' +\n ' </Ad>' +\n '</VAST>';\n\n it('should get correct bid response', () => {\n const request = spec.buildRequests(getBidRequests());\n const result = spec.interpretResponse(response, request[0]);\n\n expect(result[0].meta.advertiserDomains).to.deep.equal([]);\n expect(result[0].dealId).to.equal('NRJ-PRO-00008');\n expect(result[0].campaignId).to.equal('SMF-WOW-55555');\n expect(result[0].bannerId).to.equal('12345');\n expect(result[0].requestId).to.equal('30b31c1838de1e');\n expect(result[0].cpm).to.equal('0.2000');\n expect(result[0].width).to.equal(300);\n expect(result[0].height).to.equal(600);\n expect(result[0].creativeId).to.equal('[28517153]');\n expect(result[0].currency).to.equal('EUR');\n expect(result[0].netRevenue).to.equal(true);\n expect(result[0].ttl).to.equal(360);\n });\n\n it('handles nobid responses', () => {\n const request = spec.buildRequests(getBidRequests());\n const response = '<?xml version=\\'1.0\\' encoding=\\'UTF-8\\'?><VAST version=\\'4.2\\'></VAST>';\n const result = spec.interpretResponse(response, request[0]);\n expect(result.length).to.equal(0);\n });\n });\n});\n"],"mappings":"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QAAQ,CAAC;IAC/C,CAAC,CAAC;EACJ,CAAC,CAAC;EAEFlC,QAAQ,CAAC,cAAc,EAAE,MAAM;IAC7BC,EAAE,CAAC,kHAAkH,EAAE,MAAM;MAC3H,MAAMuE,cAAc,GAC1B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;MAED,MAAMP,UAAU,GAAG;QACjB9D,MAAM,EAAE,CAAC,CAAC;QACVsE,UAAU,EAAE;MACd,CAAC;MACD,MAAMC,YAAY,GAAG3E,YAAY,CAACkE,UAAU,EAAE,CAAC,GAAG,EAAE,GAAG,CAAC,EAAE,eAAe,CAAC;MAC1EtE,MAAM,CAAC+E,YAAY,CAAC,CAAChE,EAAE,CAAC6C,IAAI,CAACrB,KAAK,CAACsC,cAAc,CAAC;IACpD,CAAC,CAAC;IAEFvE,EAAE,CAAC,mEAAmE,EAAE,MAAM;MAC5E,MAAMuE,cAAc,GAC1B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;MAED,MAAMP,UAAU,GAAG;QACjB9D,MAAM,EAAE;UACNwE,cAAc,EAAE,IAAI;UACpBC,OAAO,EAAE,KAAK;UACdC,YAAY,EAAE;YAAE,YAAY,EAAE;UAAa;QAC7C,CAAC;QACDJ,UAAU,EAAE;MACd,CAAC;MACD,MAAMC,YAAY,GAAG3E,YAAY,CAACkE,UAAU,EAAE,CAAC,GAAG,EAAE,GAAG,CAAC,EAAE,eAAe,CAAC;MAC1EtE,MAAM,CAAC+E,YAAY,CAAC,CAAChE,EAAE,CAAC6C,IAAI,CAACrB,KAAK,CAACsC,cAAc,CAAC;IACpD,CAAC,CAAC;IAEFvE,EAAE,CAAC,gGAAgG,EAAE,MAAM;MACzG,MAAMuE,cAAc,GAC1B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;MAED,MAAMP,UAAU,GAAG;QACjB9D,MAAM,EAAE;UACN2E,GAAG,EAAE;QACP,CAAC;QACDL,UAAU,EAAE;MACd,CAAC;MACD,MAAMC,YAAY,GAAG3E,YAAY,CAACkE,UAAU,EAAE,CAAC,GAAG,EAAE,GAAG,CAAC,EAAE,eAAe,CAAC;MAC1EtE,MAAM,CAAC+E,YAAY,CAAC,CAAChE,EAAE,CAAC6C,IAAI,CAACrB,KAAK,CAACsC,cAAc,CAAC;IACpD,CAAC,CAAC;IAEFvE,EAAE,CAAC,iEAAiE,EAAE,MAAM;MAC1E,MAAMuE,cAAc,GAC1B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;MAED,MAAMP,UAAU,GAAG;QACjB9D,MAAM,EAAE;UACN2E,GAAG,EAAE,KAA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","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"fwsspBidAdapter_spec.js","names":["expect","require","spec","getSDKVersion","formatAdHTML","describe","it","bid","params","serverUrl","networkId","profile","siteSectionId","videoAssetId","isBidRequestValid","to","be","true","false","getBidRequests","bidderRequest","gdprConsent","consentString","gdprApplies","uspConsent","gppConsent","gppString","applicableSections","refererInfo","page","requests","buildRequests","an","that","is","not","empty","request","method","equal","url","actualDataString","data","include","pbjs","version","expectedEncodedSchainString","encodeURIComponent","expectedUrl","actualUrl","cleanUrl","replace","bidRequests","payload","getFloor","currency","floor","syncOptions","userSyncs","getUserSyncs","deep","type","ortb2","regs","gpp","gpp_sid","site","content","id","title","bidRequest","format","mediaTypes","video","plcmt","bidderRequest2","sdkVersion","expectedAdHtml","adUnitCode","actualAdHtml","showMuteButton","isMuted","playerParams","env","response","result","interpretResponse","meta","advertiserDomains","dealId","campaignId","bannerId","requestId","cpm","width","height","creativeId","netRevenue","ttl","length"],"sourceRoot":"../../../../..","sources":["test/spec/modules/fwsspBidAdapter_spec.js"],"sourcesContent":["const { expect } = require('chai');\nconst { spec, getSDKVersion, formatAdHTML } = require('modules/fwsspBidAdapter');\n\ndescribe('fwsspBidAdapter', () => {\n describe('isBidRequestValid', () => {\n it('should return true when all required params are present', () => {\n const bid = {\n params: {\n serverUrl: 'https://example.com/ad/g/1',\n networkId: '42015',\n profile: '42015:js_allinone_profile',\n siteSectionId: 'js_allinone_demo_site_section',\n videoAssetId: '0'\n }\n };\n expect(spec.isBidRequestValid(bid)).to.be.true;\n });\n\n it('should return false when serverUrl is missing', () => {\n const bid = {\n params: {\n networkId: '42015',\n profile: '42015:js_allinone_profile',\n siteSectionId: 'js_allinone_demo_site_section',\n videoAssetId: '0'\n }\n };\n expect(spec.isBidRequestValid(bid)).to.be.false;\n });\n\n it('should return false when networkId is missing', () => {\n const bid = {\n params: {\n serverUrl: 'https://example.com/ad/g/1',\n profile: '42015:js_allinone_profile',\n siteSectionId: 'js_allinone_demo_site_section',\n videoAssetId: '0'\n }\n };\n expect(spec.isBidRequestValid(bid)).to.be.false;\n });\n\n it('should return false when profile is missing', () => {\n const bid = {\n params: {\n serverUrl: 'https://example.com/ad/g/1',\n networkId: '42015',\n siteSectionId: 'js_allinone_demo_site_section',\n videoAssetId: '0'\n }\n };\n expect(spec.isBidRequestValid(bid)).to.be.false;\n });\n\n it('should return false when siteSectionId is missing', () => {\n const bid = {\n params: {\n serverUrl: 'https://example.com/ad/g/1',\n networkId: '42015',\n profile: '42015:js_allinone_profile',\n videoAssetId: '0'\n }\n };\n expect(spec.isBidRequestValid(bid)).to.be.false;\n });\n\n it('should return false when videoAssetId is missing', () => {\n const bid = {\n params: {\n serverUrl: 'https://example.com/ad/g/1',\n networkId: '42015',\n profile: '42015:js_allinone_profile',\n siteSectionId: 'js_allinone_demo_site_section'\n }\n };\n expect(spec.isBidRequestValid(bid)).to.be.false;\n });\n });\n\n describe('buildRequestsForBanner', () => {\n const getBidRequests = () => {\n return [{\n 'bidder': 'fwssp',\n 'adUnitCode': 'adunit-code',\n 'mediaTypes': {\n 'banner': {\n 'sizes': [\n [300, 250], [300, 600]\n ]\n }\n },\n 'sizes': [[300, 250], [300, 600]],\n 'bidId': '30b31c1838de1e',\n 'bidderRequestId': '22edbae2733bf6',\n 'auctionId': '1d1a030790a475',\n 'schain': {\n 'ver': '1.0',\n 'complete': 1,\n 'nodes': [{\n 'asi': 'example.com',\n 'sid': '0',\n 'hp': 1,\n 'rid': 'bidrequestid',\n 'domain': 'example.com'\n }]\n },\n 'params': {\n 'bidfloor': 2.00,\n 'serverUrl': 'https://example.com/ad/g/1',\n 'networkId': '42015',\n 'profile': '42015:js_allinone_profile',\n 'siteSectionId': 'js_allinone_demo_site_section',\n 'flags': '+play',\n 'videoAssetId': '0',\n 'timePosition': 120,\n 'adRequestKeyValues': {\n '_fw_player_width': '1920',\n '_fw_player_height': '1080'\n }\n }\n }]\n };\n\n const bidderRequest = {\n gdprConsent: {\n consentString: 'consentString',\n gdprApplies: true\n },\n uspConsent: 'uspConsentString',\n gppConsent: {\n gppString: 'gppString',\n applicableSections: [8]\n },\n refererInfo: {\n page: 'www.test.com'\n }\n };\n\n it('should build a valid server request', () => {\n const requests = spec.buildRequests(getBidRequests(), bidderRequest);\n expect(requests).to.be.an('array').that.is.not.empty;\n const request = requests[0];\n expect(request.method).to.equal('GET');\n expect(request.url).to.equal('https://example.com/ad/g/1');\n\n const actualDataString = request.data;\n expect(actualDataString).to.include('nw=42015');\n expect(actualDataString).to.include('resp=vast4');\n expect(actualDataString).to.include('prof=42015%3Ajs_allinone_profile');\n expect(actualDataString).to.include('csid=js_allinone_demo_site_section');\n expect(actualDataString).to.include('caid=0');\n expect(actualDataString).to.include('pvrn=');\n expect(actualDataString).to.include('vprn=');\n expect(actualDataString).to.include('flag=%2Bplay%2Bfwssp%2Bemcr%2Bnucr%2Baeti%2Brema%2Bexvt%2Bfwpbjs');\n expect(actualDataString).to.include('mode=on-demand');\n expect(actualDataString).to.include(`vclr=js-7.10.0-prebid-${pbjs.version};`);\n expect(actualDataString).to.include('_fw_player_width=1920');\n expect(actualDataString).to.include('_fw_player_height=1080');\n expect(actualDataString).to.include('_fw_gdpr_consent=consentString');\n expect(actualDataString).to.include('_fw_gdpr=true');\n expect(actualDataString).to.include('_fw_us_privacy=uspConsentString');\n expect(actualDataString).to.include('gpp=gppString');\n expect(actualDataString).to.include('gpp_sid=8');\n expect(actualDataString).to.include('tpos=0');\n expect(actualDataString).to.include('ptgt=a');\n expect(actualDataString).to.include('slid=Preroll_1');\n expect(actualDataString).to.include('slau=preroll');\n expect(actualDataString).to.not.include('mind');\n expect(actualDataString).to.not.include('maxd;');\n // schain check\n const expectedEncodedSchainString = encodeURIComponent('{\"ver\":\"1.0\",\"complete\":1,\"nodes\":[{\"asi\":\"example.com\",\"sid\":\"0\",\"hp\":1,\"rid\":\"bidrequestid\",\"domain\":\"example.com\"}]}');\n expect(actualDataString).to.include(expectedEncodedSchainString);\n });\n\n it('should construct the full adrequest URL correctly', () => {\n const requests = spec.buildRequests(getBidRequests(), bidderRequest);\n expect(requests).to.be.an('array').that.is.not.empty;\n const request = requests[0];\n const expectedUrl = `https://example.com/ad/g/1?nw=42015&resp=vast4&prof=42015%3Ajs_allinone_profile&csid=js_allinone_demo_site_section&caid=0&flag=%2Bplay%2Bfwssp%2Bemcr%2Bnucr%2Baeti%2Brema%2Bexvt%2Bfwpbjs&mode=on-demand&vclr=js-7.10.0-prebid-${pbjs.version};_fw_player_width=1920&_fw_player_height=1080&_fw_bidfloor=2&_fw_bidfloorcur=USD&_fw_gdpr_consent=consentString&_fw_gdpr=true&_fw_us_privacy=uspConsentString&gpp=gppString&gpp_sid=8&schain=%7B%22ver%22%3A%221.0%22%2C%22complete%22%3A1%2C%22nodes%22%3A%5B%7B%22asi%22%3A%22example.com%22%2C%22sid%22%3A%220%22%2C%22hp%22%3A1%2C%22rid%22%3A%22bidrequestid%22%2C%22domain%22%3A%22example.com%22%7D%5D%7D;tpos=0&ptgt=a&slid=Preroll_1&slau=preroll;`;\n const actualUrl = `${request.url}?${request.data}`;\n // Remove pvrn and vprn from both URLs before comparing\n const cleanUrl = (url) => url.replace(/&pvrn=[^&]*/g, '').replace(/&vprn=[^&]*/g, '');\n expect(cleanUrl(actualUrl)).to.equal(cleanUrl(expectedUrl));\n });\n\n it('should return the correct width and height when _fw_player_width and _fw_player_height are not present in adRequestKeyValues', () => {\n const bidRequests = [{\n 'bidder': 'fwssp',\n 'adUnitCode': 'adunit-code',\n 'mediaTypes': {\n 'banner': {\n 'sizes': [\n [300, 600]\n ]\n }\n },\n 'sizes': [[300, 250], [300, 600]],\n 'bidId': '30b31c1838de1e',\n 'bidderRequestId': '22edbae2733bf6',\n 'auctionId': '1d1a030790a475',\n 'params': {\n 'bidfloor': 2.00,\n 'serverUrl': 'https://example.com/ad/g/1',\n 'networkId': '42015',\n 'profile': '42015:js_allinone_profile',\n 'siteSectionId': 'js_allinone_demo_site_section',\n }\n }];\n const request = spec.buildRequests(bidRequests);\n const payload = request[0].data;\n expect(payload).to.include('_fw_player_width=300');\n expect(payload).to.include('_fw_player_height=600');\n });\n\n it('should get bidfloor value from params if no getFloor method', () => {\n const request = spec.buildRequests(getBidRequests());\n const payload = request[0].data;\n expect(payload).to.include('_fw_bidfloor=2');\n expect(payload).to.include('_fw_bidfloorcur=USD');\n });\n\n it('should get bidfloor value from getFloor method if available', () => {\n const bidRequests = getBidRequests();\n bidRequests[0].getFloor = () => ({ currency: 'USD', floor: 1.16 });\n const request = spec.buildRequests(bidRequests);\n const payload = request[0].data;\n expect(payload).to.include('_fw_bidfloor=1.16');\n expect(payload).to.include('_fw_bidfloorcur=USD');\n });\n\n it('should return empty bidFloorCurrency when bidfloor <= 0', () => {\n const bidRequests = getBidRequests();\n bidRequests[0].getFloor = () => ({ currency: 'USD', floor: -1 });\n const request = spec.buildRequests(bidRequests);\n const payload = request[0].data;\n expect(payload).to.include('_fw_bidfloor=0');\n expect(payload).to.include('_fw_bidfloorcur=');\n });\n\n it('should return image type userSyncs with gdprConsent', () => {\n const syncOptions = {\n 'pixelEnabled': true\n }\n const userSyncs = spec.getUserSyncs(syncOptions, null, bidderRequest.gdprConsent, null, null);\n expect(userSyncs).to.deep.equal([{\n type: 'image',\n url: 'https://ads.stickyadstv.com/auto-user-sync?gdpr=1&gdpr_consent=consentString'\n }]);\n });\n\n it('should return iframe type userSyncs with gdprConsent, uspConsent, gppConsent', () => {\n const syncOptions = {\n 'iframeEnabled': true\n }\n const userSyncs = spec.getUserSyncs(syncOptions, null, bidderRequest.gdprConsent, bidderRequest.uspConsent, bidderRequest.gppConsent);\n expect(userSyncs).to.deep.equal([{\n type: 'iframe',\n url: 'https://ads.stickyadstv.com/auto-user-sync?gdpr=1&gdpr_consent=consentString&us_privacy=uspConsentString&gpp=gppString&gpp_sid[]=8'\n }]);\n });\n });\n\n describe('buildRequestsForVideo', () => {\n const getBidRequests = () => {\n return [{\n 'bidder': 'fwssp',\n 'adUnitCode': 'adunit-code',\n 'mediaTypes': {\n 'video': {\n 'playerSize': [300, 600],\n }\n },\n 'sizes': [[300, 250], [300, 600]],\n 'bidId': '30b31c1838de1e',\n 'bidderRequestId': '22edbae2733bf6',\n 'auctionId': '1d1a030790a475',\n 'schain': {\n 'ver': '1.0',\n 'complete': 1,\n 'nodes': [{\n 'asi': 'example.com',\n 'sid': '0',\n 'hp': 1,\n 'rid': 'bidrequestid',\n 'domain': 'example.com'\n }]\n },\n 'params': {\n 'bidfloor': 2.00,\n 'serverUrl': 'https://example.com/ad/g/1',\n 'networkId': '42015',\n 'profile': '42015:js_allinone_profile',\n 'siteSectionId': 'js_allinone_demo_site_section',\n 'flags': '+play',\n 'videoAssetId': '0',\n 'mode': 'live',\n 'timePosition': 120,\n 'tpos': 300,\n 'slid': 'Midroll',\n 'slau': 'midroll',\n 'minD': 30,\n 'maxD': 60,\n 'adRequestKeyValues': {\n '_fw_player_width': '1920',\n '_fw_player_height': '1080'\n },\n 'gdpr_consented_providers': 'test_providers'\n }\n }]\n };\n\n const bidderRequest = {\n gdprConsent: {\n consentString: 'consentString',\n gdprApplies: true\n },\n uspConsent: 'uspConsentString',\n gppConsent: {\n gppString: 'gppString',\n applicableSections: [8]\n },\n ortb2: {\n regs: {\n gpp: 'test_ortb2_gpp',\n gpp_sid: 'test_ortb2_gpp_sid'\n },\n site: {\n content: {\n id: 'test_content_id',\n title: 'test_content_title'\n }\n }\n },\n refererInfo: {\n page: 'http://www.test.com'\n }\n };\n\n it('should return context and placement with default values', () => {\n const request = spec.buildRequests(getBidRequests());\n const payload = request[0].data;\n expect(payload).to.include('_fw_video_context=&'); ;\n expect(payload).to.include('_fw_placement_type=null&');\n expect(payload).to.include('_fw_plcmt_type=null;');\n });\n\n it('should assign placement and context when format is inbanner', () => {\n const bidRequest = getBidRequests()[0];\n bidRequest.params.format = 'inbanner';\n bidRequest.mediaTypes.video.plcmt = 'test-plcmt-type';\n const request = spec.buildRequests([bidRequest]);\n const payload = request[0].data;\n expect(payload).to.include('_fw_video_context=In-Banner&'); ;\n expect(payload).to.include('_fw_placement_type=2&');\n expect(payload).to.include('_fw_plcmt_type=test-plcmt-type;');\n });\n\n it('should build a valid server request', () => {\n const requests = spec.buildRequests(getBidRequests(), bidderRequest);\n expect(requests).to.be.an('array').that.is.not.empty;\n const request = requests[0];\n expect(request.method).to.equal('GET');\n expect(request.url).to.equal('https://example.com/ad/g/1');\n\n const actualDataString = request.data;\n\n expect(actualDataString).to.include('nw=42015');\n expect(actualDataString).to.include('resp=vast4');\n expect(actualDataString).to.include('prof=42015%3Ajs_allinone_profile');\n expect(actualDataString).to.include('csid=js_allinone_demo_site_section');\n expect(actualDataString).to.include('caid=0');\n expect(actualDataString).to.include('pvrn=');\n expect(actualDataString).to.include('vprn=');\n expect(actualDataString).to.include('flag=%2Bplay%2Bfwssp%2Bemcr%2Bnucr%2Baeti%2Brema%2Bexvt%2Bfwpbjs');\n expect(actualDataString).to.include('mode=live');\n expect(actualDataString).to.include(`vclr=js-7.10.0-prebid-${pbjs.version};`);\n expect(actualDataString).to.include('_fw_player_width=1920');\n expect(actualDataString).to.include('_fw_player_height=1080');\n expect(actualDataString).to.include('_fw_gdpr_consent=consentString');\n expect(actualDataString).to.include('_fw_gdpr=true');\n expect(actualDataString).to.include('_fw_us_privacy=uspConsentString');\n expect(actualDataString).to.include('gpp=gppString');\n expect(actualDataString).to.include('gpp_sid=8');\n\n expect(actualDataString).to.include('loc=http%3A%2F%2Fwww.test.com');\n expect(actualDataString).to.include('tpos=300');\n expect(actualDataString).to.include('ptgt=a');\n expect(actualDataString).to.include('slid=Midroll');\n expect(actualDataString).to.include('slau=midroll');\n expect(actualDataString).to.include('mind=30');\n expect(actualDataString).to.include('maxd=60;');\n // schain check\n const expectedEncodedSchainString = encodeURIComponent('{\"ver\":\"1.0\",\"complete\":1,\"nodes\":[{\"asi\":\"example.com\",\"sid\":\"0\",\"hp\":1,\"rid\":\"bidrequestid\",\"domain\":\"example.com\"}]}');\n expect(actualDataString).to.include(expectedEncodedSchainString);\n });\n\n it('should construct the full adrequest URL correctly', () => {\n const requests = spec.buildRequests(getBidRequests(), bidderRequest);\n expect(requests).to.be.an('array').that.is.not.empty;\n const request = requests[0];\n\n const expectedUrl = `https://example.com/ad/g/1?nw=42015&resp=vast4&prof=42015%3Ajs_allinone_profile&csid=js_allinone_demo_site_section&caid=0&flag=%2Bplay%2Bfwssp%2Bemcr%2Bnucr%2Baeti%2Brema%2Bexvt%2Bfwpbjs&mode=live&vclr=js-7.10.0-prebid-${pbjs.version};_fw_player_width=1920&_fw_player_height=1080&_fw_bidfloor=2&_fw_bidfloorcur=USD&_fw_gdpr_consent=consentString&_fw_gdpr=true&_fw_gdpr_consented_providers=test_providers&_fw_us_privacy=uspConsentString&gpp=gppString&gpp_sid=8&_fw_prebid_content=%7B%22id%22%3A%22test_content_id%22%2C%22title%22%3A%22test_content_title%22%7D&schain=%7B%22ver%22%3A%221.0%22%2C%22complete%22%3A1%2C%22nodes%22%3A%5B%7B%22asi%22%3A%22example.com%22%2C%22sid%22%3A%220%22%2C%22hp%22%3A1%2C%22rid%22%3A%22bidrequestid%22%2C%22domain%22%3A%22example.com%22%7D%5D%7D&loc=http%3A%2F%2Fwww.test.com&_fw_video_context=&_fw_placement_type=null&_fw_plcmt_type=null;tpos=300&ptgt=a&slid=Midroll&slau=midroll&mind=30&maxd=60;`;\n const actualUrl = `${request.url}?${request.data}`;\n // Remove pvrn and vprn from both URLs before comparing\n const cleanUrl = (url) => url.replace(/&pvrn=[^&]*/g, '').replace(/&vprn=[^&]*/g, '');\n expect(cleanUrl(actualUrl)).to.equal(cleanUrl(expectedUrl));\n });\n\n it('should use otrb2 gpp if gpp not in bidder request', () => {\n const bidderRequest2 = {\n ortb2: {\n regs: {\n gpp: 'test_ortb2_gpp',\n gpp_sid: 'test_ortb2_gpp_sid'\n },\n site: {\n content: {\n id: 'test_content_id',\n title: 'test_content_title'\n }\n }\n }\n };\n\n const requests = spec.buildRequests(getBidRequests(), bidderRequest2);\n expect(requests).to.be.an('array').that.is.not.empty;\n const request = requests[0];\n const expectedUrl = `https://example.com/ad/g/1?nw=42015&resp=vast4&prof=42015%3Ajs_allinone_profile&csid=js_allinone_demo_site_section&caid=0&flag=%2Bplay%2Bfwssp%2Bemcr%2Bnucr%2Baeti%2Brema%2Bexvt%2Bfwpbjs&mode=live&vclr=js-7.10.0-prebid-${pbjs.version};_fw_player_width=1920&_fw_player_height=1080&_fw_bidfloor=2&_fw_bidfloorcur=USD&_fw_gdpr_consented_providers=test_providers&gpp=test_ortb2_gpp&gpp_sid=test_ortb2_gpp_sid&_fw_prebid_content=%7B%22id%22%3A%22test_content_id%22%2C%22title%22%3A%22test_content_title%22%7D&schain=%7B%22ver%22%3A%221.0%22%2C%22complete%22%3A1%2C%22nodes%22%3A%5B%7B%22asi%22%3A%22example.com%22%2C%22sid%22%3A%220%22%2C%22hp%22%3A1%2C%22rid%22%3A%22bidrequestid%22%2C%22domain%22%3A%22example.com%22%7D%5D%7D&_fw_video_context=&_fw_placement_type=null&_fw_plcmt_type=null;tpos=300&ptgt=a&slid=Midroll&slau=midroll&mind=30&maxd=60;`;\n const actualUrl = `${request.url}?${request.data}`;\n // Remove pvrn and vprn from both URLs before comparing\n const cleanUrl = (url) => url.replace(/&pvrn=[^&]*/g, '').replace(/&vprn=[^&]*/g, '');\n expect(cleanUrl(actualUrl)).to.equal(cleanUrl(expectedUrl));\n });\n\n it('should get bidfloor value from params if no getFloor method', () => {\n const request = spec.buildRequests(getBidRequests());\n const payload = request[0].data;\n expect(payload).to.include('_fw_bidfloor=2');\n expect(payload).to.include('_fw_bidfloorcur=USD');\n });\n\n it('should return image type userSyncs with gdprConsent', () => {\n const syncOptions = {\n 'pixelEnabled': true\n }\n const userSyncs = spec.getUserSyncs(syncOptions, null, bidderRequest.gdprConsent, null, null);\n expect(userSyncs).to.deep.equal([{\n type: 'image',\n url: 'https://ads.stickyadstv.com/auto-user-sync?gdpr=1&gdpr_consent=consentString'\n }]);\n });\n\n it('should return iframe type userSyncs with gdprConsent, uspConsent, gppConsent', () => {\n const syncOptions = {\n 'iframeEnabled': true\n }\n const userSyncs = spec.getUserSyncs(syncOptions, null, bidderRequest.gdprConsent, bidderRequest.uspConsent, bidderRequest.gppConsent);\n expect(userSyncs).to.deep.equal([{\n type: 'iframe',\n url: 'https://ads.stickyadstv.com/auto-user-sync?gdpr=1&gdpr_consent=consentString&us_privacy=uspConsentString&gpp=gppString&gpp_sid[]=8'\n }]);\n });\n });\n\n describe('buildRequestsForVideoWithContextAndPlacement', () => {\n it('should return input context and placement', () => {\n const bidRequests = [{\n 'bidder': 'fwssp',\n 'adUnitCode': 'adunit-code',\n 'mediaTypes': {\n 'video': {\n 'context': 'outstream',\n 'placement': 2,\n 'plcmt': 3,\n 'playerSize': [300, 600],\n }\n },\n 'sizes': [[300, 250], [300, 600]],\n 'bidId': '30b31c1838de1e',\n 'bidderRequestId': '22edbae2733bf6',\n 'auctionId': '1d1a030790a475',\n 'params': {\n 'bidfloor': 2.00,\n 'serverUrl': 'https://example.com/ad/g/1',\n 'networkId': '42015',\n 'profile': '42015:js_allinone_profile',\n 'siteSectionId': 'js_allinone_demo_site_section',\n 'flags': '+play',\n 'videoAssetId': '0',\n 'mode': 'live',\n 'vclr': 'js-7.10.0-prebid-',\n 'timePosition': 120,\n 'minD': 30,\n 'maxD': 60,\n }\n }];\n const request = spec.buildRequests(bidRequests);\n const payload = request[0].data;\n expect(payload).to.include('_fw_video_context=outstream'); ;\n expect(payload).to.include('_fw_placement_type=2');\n expect(payload).to.include('_fw_plcmt_type=3');\n });\n });\n\n describe('getSDKVersion', () => {\n it('should return the default sdk version when sdkVersion is missing', () => {\n const bid = {\n params: {\n sdkVersion: ''\n }\n };\n expect(getSDKVersion(bid)).to.equal('7.10.0');\n });\n\n it('should return the correct sdk version when sdkVersion is higher than the default', () => {\n const bid = {\n params: {\n sdkVersion: '7.11.0'\n }\n };\n expect(getSDKVersion(bid)).to.equal('7.11.0');\n });\n\n it('should return the default sdk version when sdkVersion is lower than the default', () => {\n const bid = {\n params: {\n sdkVersion: '7.9.0'\n }\n };\n expect(getSDKVersion(bid)).to.equal('7.10.0');\n });\n\n it('should return the default sdk version when sdkVersion is an invalid string', () => {\n const bid = {\n params: {\n sdkVersion: 'abcdef'\n }\n };\n expect(getSDKVersion(bid)).to.equal('7.10.0');\n });\n\n it('should return the correct sdk version when sdkVersion starts with v', () => {\n const bid = {\n params: {\n sdkVersion: 'v7.11.0'\n }\n };\n expect(getSDKVersion(bid)).to.equal('7.11.0');\n });\n });\n\n describe('formatAdHTML', () => {\n it('should return the ad markup in formatAdHTML, with default value of false for showMuteButton and true for isMuted', () => {\n const expectedAdHtml =\n`<div id='fwssp_display_base' class='ad-container' style='width:640px;height:480px;'>\n <script type='text/javascript'>\n const script = document.createElement('script');\n script.src = 'https://mssl.fwmrm.net/libs/adm/7.10.0/AdManager-prebid.js';\n script.async = true;\n\n const topWindow = function() {\n let res = window;\n try {\n while (top !== res) {\n if (res.parent.location.href.length) {\n res = res.parent;\n }\n }\n } catch (e) {}\n return res;\n }();\n const cache = topWindow.fwssp_cache ? topWindow.fwssp_cache['test'] : null;\n const vastResponse = cache ? cache.response : null;\n const listeners = cache ? cache.listeners : null;\n\n const config = {\n displayBaseId: 'fwssp_display_base',\n vastResponse: vastResponse,\n showMuteButton: false,\n startMuted: true,\n playerParams: undefined,\n format: 'outstream',\n listeners: listeners\n };\n\n const timeoutId = setTimeout(() => {\n console.warn('MRM AdManager load timeout: 5000 ms');\n cleanup();\n }, 5000);\n\n script.onload = () => {\n clearTimeout(timeoutId);\n this.prebidPlayer = window.tv.freewheel.SDK.newPrebidPlayer(config);\n };\n\n script.onerror = (err) => {\n cleanup();\n console.warn('MRM AdManager load failed:', err.message);\n };\n\n const cleanup = () => {\n clearTimeout(timeoutId);\n script.remove();\n var displayBase = document.getElementById('fwssp_display_base');\n if (displayBase) {\n displayBase.remove();\n }\n };\n\n document.head.appendChild(script);\n </script>\n</div>`;\n\n const bidRequest = {\n params: {},\n adUnitCode: 'test'\n }\n const actualAdHtml = formatAdHTML(bidRequest, [640, 480], '<VAST></VAST>');\n expect(actualAdHtml).to.deep.equal(expectedAdHtml)\n });\n\n it('should take bid request showMuteButton, isMuted, and playerParams', () => {\n const expectedAdHtml =\n`<div id='fwssp_display_base' class='ad-container' style='width:640px;height:480px;'>\n <script type='text/javascript'>\n const script = document.createElement('script');\n script.src = 'https://mssl.fwmrm.net/libs/adm/7.10.0/AdManager-prebid.js';\n script.async = true;\n\n const topWindow = function() {\n let res = window;\n try {\n while (top !== res) {\n if (res.parent.location.href.length) {\n res = res.parent;\n }\n }\n } catch (e) {}\n return res;\n }();\n const cache = topWindow.fwssp_cache ? topWindow.fwssp_cache['test'] : null;\n const vastResponse = cache ? cache.response : null;\n const listeners = cache ? cache.listeners : null;\n\n const config = {\n displayBaseId: 'fwssp_display_base',\n vastResponse: vastResponse,\n showMuteButton: true,\n startMuted: false,\n playerParams: {\"test-param\":\"test-value\"},\n format: 'outstream',\n listeners: listeners\n };\n\n const timeoutId = setTimeout(() => {\n console.warn('MRM AdManager load timeout: 5000 ms');\n cleanup();\n }, 5000);\n\n script.onload = () => {\n clearTimeout(timeoutId);\n this.prebidPlayer = window.tv.freewheel.SDK.newPrebidPlayer(config);\n };\n\n script.onerror = (err) => {\n cleanup();\n console.warn('MRM AdManager load failed:', err.message);\n };\n\n const cleanup = () => {\n clearTimeout(timeoutId);\n script.remove();\n var displayBase = document.getElementById('fwssp_display_base');\n if (displayBase) {\n displayBase.remove();\n }\n };\n\n document.head.appendChild(script);\n </script>\n</div>`;\n\n const bidRequest = {\n params: {\n showMuteButton: true,\n isMuted: false,\n playerParams: { 'test-param': 'test-value' }\n },\n adUnitCode: 'test'\n }\n const actualAdHtml = formatAdHTML(bidRequest, [640, 480], '<VAST></VAST>');\n expect(actualAdHtml).to.deep.equal(expectedAdHtml)\n });\n\n it('should generate html with the AdManager stg url when env param has value fo stg in bid request', () => {\n const expectedAdHtml =\n`<div id='fwssp_display_base' class='ad-container' style='width:640px;height:480px;'>\n <script type='text/javascript'>\n const script = document.createElement('script');\n script.src = 'https://adm.stg.fwmrm.net/libs/adm/7.10.0/AdManager-prebid.js';\n script.async = true;\n\n const topWindow = function() {\n let res = window;\n try {\n while (top !== res) {\n if (res.parent.location.href.length) {\n res = res.parent;\n }\n }\n } catch (e) {}\n return res;\n }();\n const cache = topWindow.fwssp_cache ? topWindow.fwssp_cache['test'] : null;\n const vastResponse = cache ? cache.response : null;\n const listeners = cache ? cache.listeners : null;\n\n const config = {\n displayBaseId: 'fwssp_display_base',\n vastResponse: vastResponse,\n showMuteButton: false,\n startMuted: true,\n playerParams: undefined,\n format: 'outstream',\n listeners: listeners\n };\n\n const timeoutId = setTimeout(() => {\n console.warn('MRM AdManager load timeout: 5000 ms');\n cleanup();\n }, 5000);\n\n script.onload = () => {\n clearTimeout(timeoutId);\n this.prebidPlayer = window.tv.freewheel.SDK.newPrebidPlayer(config);\n };\n\n script.onerror = (err) => {\n cleanup();\n console.warn('MRM AdManager load failed:', err.message);\n };\n\n const cleanup = () => {\n clearTimeout(timeoutId);\n script.remove();\n var displayBase = document.getElementById('fwssp_display_base');\n if (displayBase) {\n displayBase.remove();\n }\n };\n\n document.head.appendChild(script);\n </script>\n</div>`;\n\n const bidRequest = {\n params: {\n env: 'stg'\n },\n adUnitCode: 'test'\n }\n const actualAdHtml = formatAdHTML(bidRequest, [640, 480], '<VAST></VAST>');\n expect(actualAdHtml).to.deep.equal(expectedAdHtml)\n });\n\n it('should use the correct version when sdkVersion is in bid params', () => {\n const expectedAdHtml =\n`<div id='fwssp_display_base' class='ad-container' style='width:640px;height:480px;'>\n <script type='text/javascript'>\n const script = document.createElement('script');\n script.src = 'https://adm.stg.fwmrm.net/libs/adm/7.11.0/AdManager-prebid.js';\n script.async = true;\n\n const topWindow = function() {\n let res = window;\n try {\n while (top !== res) {\n if (res.parent.location.href.length) {\n res = res.parent;\n }\n }\n } catch (e) {}\n return res;\n }();\n const cache = topWindow.fwssp_cache ? topWindow.fwssp_cache['test'] : null;\n const vastResponse = cache ? cache.response : null;\n const listeners = cache ? cache.listeners : null;\n\n const config = {\n displayBaseId: 'fwssp_display_base',\n vastResponse: vastResponse,\n showMuteButton: false,\n startMuted: true,\n playerParams: undefined,\n format: 'outstream',\n listeners: listeners\n };\n\n const timeoutId = setTimeout(() => {\n console.warn('MRM AdManager load timeout: 5000 ms');\n cleanup();\n }, 5000);\n\n script.onload = () => {\n clearTimeout(timeoutId);\n this.prebidPlayer = window.tv.freewheel.SDK.newPrebidPlayer(config);\n };\n\n script.onerror = (err) => {\n cleanup();\n console.warn('MRM AdManager load failed:', err.message);\n };\n\n const cleanup = () => {\n clearTimeout(timeoutId);\n script.remove();\n var displayBase = document.getElementById('fwssp_display_base');\n if (displayBase) {\n displayBase.remove();\n }\n };\n\n document.head.appendChild(script);\n </script>\n</div>`;\n\n const bidRequest = {\n params: {\n env: 'stg',\n sdkVersion: '7.11.0'\n },\n adUnitCode: 'test'\n }\n const actualAdHtml = formatAdHTML(bidRequest, [640, 480], '<VAST></VAST>');\n expect(actualAdHtml).to.deep.equal(expectedAdHtml)\n });\n });\n\n describe('interpretResponseForBanner', () => {\n const getBidRequests = () => {\n return [{\n 'bidder': 'fwssp',\n 'params': {\n 'serverUrl': 'https://fwmrm.com/ad/g/1',\n 'sdkVersion': ''\n },\n 'adUnitCode': 'adunit-code',\n 'mediaTypes': {\n 'banner': {\n 'sizes': [\n [300, 600]\n ]\n }\n },\n 'sizes': [[300, 250], [300, 600]],\n 'bidId': '30b31c1838de1e',\n 'bidderRequestId': '22edbae2733bf6',\n 'auctionId': '1d1a030790a475',\n }]\n };\n\n const response = '<?xml version=\\'1.0\\' encoding=\\'UTF-8\\'?><VAST version=\\'4.2\\'>' +\n '<Ad id=\\'AdswizzAd28517153\\'>' +\n ' <InLine>' +\n ' <AdSystem>Adswizz</AdSystem>' +\n ' <Impression id=\"dmp-1617899169-2513\"></Impression>' +\n ' <Impression id=\"user-sync-1617899169-1\">https://ads.stickyadstv.com/auto-user-sync?dealId=NRJ-PRO-12008</Impression>' +\n ' <Impression id=\"727435745\">' +\n ' <![CDATA[ https://ads.stickyadstv.com/www/delivery/swfIndex.php?reqType=AdsDisplayStarted&dealId=NRJ-PRO-00008&campaignId=SMF-WOW-55555&adId=12345&viewKey=1607626986121029-54&sessionId=e3230a6bef6e0d2327422ff5282435&zoneId=2003&impId=1&cb=1932360&trackingIds=19651873%2C28161297%2C28161329%2C29847601%2C29967745%2C61392385&listenerId=eddf2aebad29655bb2b6abac276c50ef& ]]>' +\n ' </Impression>' +\n ' <Creatives>' +\n ' <Creative AdID=\\'56600048\\' id=\\'28517153\\' sequence=\\'1\\'>' +\n ' <Linear>' +\n ' <Duration>00:00:09</Duration>' +\n ' <MediaFiles>' +\n ' <MediaFile delivery=\\'progressive\\' bitrate=\\'129\\' width=\\'320\\' height=\\'240\\' type=\\'video/mp4\\' scalable=\\'true\\' maintainAspectRatio=\\'true\\'><![CDATA[http://cdn.stickyadstv.com/www/images/28517153-web-MP4-59e47d565b2d9.mp4]]></MediaFile>' +\n ' </MediaFiles>' +\n ' </Linear>' +\n ' </Creative>' +\n ' </Creatives>' +\n ' <Extensions>' +\n ' <Extension type=\\'StickyPricing\\'><Price currency=\"EUR\">0.2000</Price></Extension>' +\n ' </Extensions>' +\n ' </InLine>' +\n ' </Ad>' +\n '</VAST>';\n\n it('should get correct bid response', () => {\n const request = spec.buildRequests(getBidRequests());\n const result = spec.interpretResponse(response, request[0]);\n\n expect(result[0].meta.advertiserDomains).to.deep.equal([]);\n expect(result[0].dealId).to.equal('NRJ-PRO-00008');\n expect(result[0].campaignId).to.equal('SMF-WOW-55555');\n expect(result[0].bannerId).to.equal('12345');\n expect(result[0].requestId).to.equal('30b31c1838de1e');\n expect(result[0].cpm).to.equal('0.2000');\n expect(result[0].width).to.equal(300);\n expect(result[0].height).to.equal(600);\n expect(result[0].creativeId).to.equal('[28517153]');\n expect(result[0].currency).to.equal('EUR');\n expect(result[0].netRevenue).to.equal(true);\n expect(result[0].ttl).to.equal(360);\n });\n\n it('handles nobid responses', () => {\n const request = spec.buildRequests(getBidRequests());\n const response = '<?xml version=\\'1.0\\' encoding=\\'UTF-8\\'?><VAST version=\\'4.2\\'></VAST>';\n const result = spec.interpretResponse(response, request[0]);\n expect(result.length).to.equal(0);\n });\n });\n});\n"],"mappings":"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QAAQ,CAAC;IAC/C,CAAC,CAAC;EACJ,CAAC,CAAC;EAEFlC,QAAQ,CAAC,cAAc,EAAE,MAAM;IAC7BC,EAAE,CAAC,kHAAkH,EAAE,MAAM;MAC3H,MAAMuE,cAAc,GAC1B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;MAED,MAAMP,UAAU,GAAG;QACjB9D,MAAM,EAAE,CAAC,CAAC;QACVsE,UAAU,EAAE;MACd,CAAC;MACD,MAAMC,YAAY,GAAG3E,YAAY,CAACkE,UAAU,EAAE,CAAC,GAAG,EAAE,GAAG,CAAC,EAAE,eAAe,CAAC;MAC1EtE,MAAM,CAAC+E,YAAY,CAAC,CAAChE,EAAE,CAAC6C,IAAI,CAACrB,KAAK,CAACsC,cAAc,CAAC;IACpD,CAAC,CAAC;IAEFvE,EAAE,CAAC,mEAAmE,EAAE,MAAM;MAC5E,MAAMuE,cAAc,GAC1B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;MAED,MAAMP,UAAU,GAAG;QACjB9D,MAAM,EAAE;UACNwE,cAAc,EAAE,IAAI;UACpBC,OAAO,EAAE,KAAK;UACdC,YAAY,EAAE;YAAE,YAAY,EAAE;UAAa;QAC7C,CAAC;QACDJ,UAAU,EAAE;MACd,CAAC;MACD,MAAMC,YAAY,GAAG3E,YAAY,CAACkE,UAAU,EAAE,CAAC,GAAG,EAAE,GAAG,CAAC,EAAE,eAAe,CAAC;MAC1EtE,MAAM,CAAC+E,YAAY,CAAC,CAAChE,EAAE,CAAC6C,IAAI,CAACrB,KAAK,CAACsC,cAAc,CAAC;IACpD,CAAC,CAAC;IAEFvE,EAAE,CAAC,gGAAgG,EAAE,MAAM;MACzG,MAAMuE,cAAc,GAC1B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;MAED,MAAMP,UAAU,GAAG;QACjB9D,MAAM,EAAE;UACN2E,GAAG,EAAE;QACP,CAAC;QACDL,UAAU,EAAE;MACd,CAAC;MACD,MAAMC,YAAY,GAAG3E,YAAY,CAACkE,UAAU,EAAE,CAAC,GAAG,EAAE,GAAG,CAAC,EAAE,eAAe,CAAC;MAC1EtE,MAAM,CAAC+E,YAAY,CAAC,CAAChE,EAAE,CAAC6C,IAAI,CAACrB,KAAK,CAACsC,cAAc,CAAC;IACpD,CAAC,CAAC;IAEFvE,EAAE,CAAC,iEAAiE,EAAE,MAAM;MAC1E,MAAMuE,cAAc,GAC1B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;MAED,MAAMP,UAAU,GAAG;QACjB9D,MAAM,EAAE;UACN2E,GAAG,EAAE,KAA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","ignoreList":[]}
|
|
@@ -58,7 +58,7 @@ describe('GmosspAdapter', function () {
|
|
|
58
58
|
const requests = spec.buildRequests(bidRequests, bidderRequest);
|
|
59
59
|
expect(requests[0].url).to.equal(ENDPOINT);
|
|
60
60
|
expect(requests[0].method).to.equal('GET');
|
|
61
|
-
expect(requests[0].data).to.equal("tid=791e9d84-af92-4903-94da-24c7426d9d0c&bid=2b84475b5b636e&ver=10.
|
|
61
|
+
expect(requests[0].data).to.equal("tid=791e9d84-af92-4903-94da-24c7426d9d0c&bid=2b84475b5b636e&ver=10.4.0&sid=123456&im_uid=h.0a4749e7ffe09fa6&shared_id=1111&idl_env=1111&url=https%3A%2F%2Fhoge.com" + '&ref=' + encodeURIComponent(document.referrer) + '&cur=JPY&dnt=0&');
|
|
62
62
|
});
|
|
63
63
|
it('should use fallback if refererInfo.referer in bid request is empty and im_uid ,shared_id, idl_env cookie is empty', function () {
|
|
64
64
|
const bidderRequest = {
|
|
@@ -70,7 +70,7 @@ describe('GmosspAdapter', function () {
|
|
|
70
70
|
bidRequests[0].userId.pubcid = '';
|
|
71
71
|
bidRequests[0].userId.idl_env = '';
|
|
72
72
|
const requests = spec.buildRequests(bidRequests, bidderRequest);
|
|
73
|
-
const result = "tid=791e9d84-af92-4903-94da-24c7426d9d0c&bid=2b84475b5b636e&ver=10.
|
|
73
|
+
const result = "tid=791e9d84-af92-4903-94da-24c7426d9d0c&bid=2b84475b5b636e&ver=10.4.0&sid=123456&ref=" + encodeURIComponent(document.referrer) + '&cur=JPY&dnt=0&';
|
|
74
74
|
expect(requests[0].data).to.equal(result);
|
|
75
75
|
});
|
|
76
76
|
});
|
|
@@ -172,7 +172,7 @@ describe('TheMediaGrid Adapter', function () {
|
|
|
172
172
|
'tid': bidderRequest.ortb2.source.tid,
|
|
173
173
|
'ext': {
|
|
174
174
|
'wrapper': 'Prebid_js',
|
|
175
|
-
'wrapper_version': "10.
|
|
175
|
+
'wrapper_version': "10.4.0"
|
|
176
176
|
}
|
|
177
177
|
},
|
|
178
178
|
'user': {
|
|
@@ -216,7 +216,7 @@ describe('TheMediaGrid Adapter', function () {
|
|
|
216
216
|
'tid': bidderRequest.auctionId,
|
|
217
217
|
'ext': {
|
|
218
218
|
'wrapper': 'Prebid_js',
|
|
219
|
-
'wrapper_version': "10.
|
|
219
|
+
'wrapper_version': "10.4.0"
|
|
220
220
|
}
|
|
221
221
|
},
|
|
222
222
|
'user': {
|
|
@@ -277,7 +277,7 @@ describe('TheMediaGrid Adapter', function () {
|
|
|
277
277
|
'tid': bidderRequest.auctionId,
|
|
278
278
|
'ext': {
|
|
279
279
|
'wrapper': 'Prebid_js',
|
|
280
|
-
'wrapper_version': "10.
|
|
280
|
+
'wrapper_version': "10.4.0"
|
|
281
281
|
}
|
|
282
282
|
},
|
|
283
283
|
'user': {
|
|
@@ -371,7 +371,7 @@ describe('TheMediaGrid Adapter', function () {
|
|
|
371
371
|
'tid': bidderRequest.auctionId,
|
|
372
372
|
'ext': {
|
|
373
373
|
'wrapper': 'Prebid_js',
|
|
374
|
-
'wrapper_version': "10.
|
|
374
|
+
'wrapper_version': "10.4.0"
|
|
375
375
|
}
|
|
376
376
|
},
|
|
377
377
|
'user': {
|
|
@@ -427,7 +427,7 @@ describe('TheMediaGrid Adapter', function () {
|
|
|
427
427
|
'tid': bidderRequest.auctionId,
|
|
428
428
|
'ext': {
|
|
429
429
|
'wrapper': 'Prebid_js',
|
|
430
|
-
'wrapper_version': "10.
|
|
430
|
+
'wrapper_version': "10.4.0"
|
|
431
431
|
}
|
|
432
432
|
},
|
|
433
433
|
'user': {
|
|
@@ -1098,7 +1098,7 @@ describe('TheMediaGrid Adapter', function () {
|
|
|
1098
1098
|
'tid': '654645',
|
|
1099
1099
|
'ext': {
|
|
1100
1100
|
'wrapper': 'Prebid_js',
|
|
1101
|
-
'wrapper_version': "10.
|
|
1101
|
+
'wrapper_version': "10.4.0"
|
|
1102
1102
|
}
|
|
1103
1103
|
},
|
|
1104
1104
|
'user': {
|