Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Critical: Support Google application/webbundle responses #7870

Closed
2 tasks done
GeneGenie opened this issue Dec 17, 2021 · 16 comments
Closed
2 tasks done

Critical: Support Google application/webbundle responses #7870

GeneGenie opened this issue Dec 17, 2021 · 16 comments
Assignees
Labels

Comments

@GeneGenie
Copy link
Contributor

GeneGenie commented Dec 17, 2021

Type of issue

  • Bug
  • Feature request

Description

Prebid version: 5.20
We experience more and more webbundle content-type responses from GAM. It seems like it is served in AB test, but exact amount is not available right now.
Such scenario breaks safeframe universal creative, because origin of such iframe is 'null' and href of iframe is 'urn:uuid:{guid}'

Response preview

Screenshot 2021-12-17 at 20 16 19

Elements and console location

Screenshot 2021-12-17 at 20 13 54

Stack trace

Screenshot 2021-12-17 at 20 11 42

@ChrisHuie
Copy link
Collaborator

@GeneGenie We are trying to figure out the best way to reproduce this issue so we can look into it. Are you able to make a test page or is there a specific interaction where this behavior is triggered from A/B testing.

@ChrisHuie ChrisHuie self-assigned this Dec 20, 2021
@GeneGenie
Copy link
Contributor Author

GeneGenie commented Dec 22, 2021

@ChrisHuie , it looks like this is absolute random behaviour. I saved a har file, but har viewers are not compatible with such data (yet?). And chrome has no built in tools to watch response contents.
The basic problem (shown on screenshot) that iframe has origin eq 'null' so prebid-cure could respond with '*' eventOrigin in postMessage.

@dgirardi
Copy link
Collaborator

dgirardi commented Jan 3, 2022

@GeneGenie can you post the HAR or a test page? even if not readable or consistent, it would give me something to attempt to reproduce it.

I am wary of simply changing target origin to "*" because of the security implications.

@GeneGenie GeneGenie reopened this Jan 10, 2022
@bretg
Copy link
Collaborator

bretg commented Jan 11, 2022

@dgirardi patiently explained this to me enough that we came up with a proposal:

  1. Add a new configuration to allow publishers to downgrade security.
pbjs.setConfig({disablePostMessageSecurity: true});

The relevant routines in secureCreatives.js and native.js would be updated to read disablePostMessageSecurity. If true, they would react to a null incoming origin by responding to origin:*

We would document this new option by noting that it would reveal ad markup to any listening code, even in another tab of the browser.

1a) If Google makes webbundles common in the short term, we could consider making this option on by default.

  1. We open a separate issue for enhancing safeframe security:
  • add an option for "enhancedPostMessageSecurity"
  • add a "safeframe ID" to the message posted from the PUC to Prebid-Core
  • if a safeframeID is provided and enhancedPostMessageSecurity is true, it's a signal to Prebid-Core that the receiver will be able to handle a more secure response. If not, fall back to the original protocol.

New response protocol:

  • remove adId from Prebid-Core's PostMessage response
  • Prebid-Core adds the safeframe ID to the response message
  • Prebid-Core encrypts the PostMessage response with the adId
  • The receiver decrypts the message with the expected adId and confirms the safeframe ID is theirs
@jeffkaufman
Copy link

@bretg @dgirardi I'm one of the Google Ad Manager engineers working on WebBundles, and someone pointed me to this issue. For more context, WICG/webpackage#624 describes how we're planning to use bundles to increase security and efficiency in ad rendering. We're currently participating in Chrome's origin trial for this feature, and are validating it on a small fraction of traffic.

Instead of fetching a SafeFrame from [random].safeframe.googlesyndication.com to hold the creative, with subresource bundles we can render the creative immediately in an opaque-origin iframe, saving a round trip. Because the iframe has an opaque origin, however, the origin will be null, as you saw.

Could you say more about why Prebid checks the origin on the message? What does this protect against? Without knowing the details of what you're doing this doesn't look like it's doing much, because SafeFrames can host arbitrary content. That is, SafeFrame ensures its contents are cross-domain from the containing page but it can't "vouch" for its contents or otherwise attest that they came from a trusted source (see section 2.4 of the SafeFrame 1.1 spec).

@dgirardi
Copy link
Collaborator

dgirardi commented Jan 13, 2022

@jeffkaufman Currently Prebid interacts with safeframe in the following way:

  1. Safeframe content sends a postMessage to the parent window (Prebid) asking for the ad to render. The origin is not checked on the receiving end (but there verification of a randomly generated token that is passed from Prebid to the safeframe via GAM rendering).
  2. Prebid replies with request.source.postMessage(adInfo, request.origin). This fails if request.origin is null.

If we do not specify origin for step 2 (set it to "*"), it opens up some avenues of attack that have to do with navigating the safeframe to somewhere else in between steps 1 and 2 (more details here, section 4.2). This would expose adInfo to an attacker that would not otherwise have access to the token needed for step 1.

@jeffkaufman
Copy link

jeffkaufman commented Jan 13, 2022

@dgirardi I'm sorry, I'm still not seeing how specifying an origin in (2) protects adInfo. Are you trying to protect it from other parties operating within the JavaScript context of the publisher page? Because, if so, it seems to me that adInfo is still exposed. Something in the publisher JS context can update the name attribute on the SafeFrame with new "creative content" intended to exfiltrate adInfo, and then reload the SafeFrame.

@dgirardi
Copy link
Collaborator

@jeffkaufman I am by no means a security expert, but my understanding is that you don't always need access to the target's JS context to manipulate iframe location. The two scenarios in that paper assume the attacker does not have such access. I do not know if they still apply today or if there are other attacks of the same kind that have been discovered since.

@jeffkaufman
Copy link

@dgirardi the paper is from 2009, and it does discuss some attacks that are no longer relevant today. For example, it is no longer the case that browsers allow any frame to navigate any other frame (permissive policy), and even when it was published it wasn't possible in the most recent versions of browsers.

Would you be able to say more about your threat model? What sort of potential attacker are you attempting to hide adInfo from?

@dgirardi
Copy link
Collaborator

dgirardi commented Jan 13, 2022

In the context of this issue, we'd just like to verify that using targetOrigin: "*" does not increase attack surface compared to what we have currently. Since adInfo is available to anyone who has access to its token, which equates roughly to anyone who can run code in either the publisher or GAM creative context, the concern is just about an attacker with access to neither that can still somehow control navigation of the iframe.

Unfortunately guidance on the matter is limited to "never use *" which makes it hard to verify if that is possible in modern browsers. If the standard now is what that paper calls "descendant navigation policy" (search result are all pretty dated) it seems to me like it should - that would be the "recursive mashup attack", although I don't know how you would get a handle on a child of a cross-origin frame.

@jeffkaufman
Copy link

@dgirardi OK, sorry, you're right: there is a problem with the interaction between * and the descendant navigation policy (which is what all the browsers use now). Specifically, if an attacker iframes the publisher, then ad slots on the publisher site are also descendants of the attacker. Let me talk to people more here and get back to you.

@jeffkaufman
Copy link

@dgirardi I think you could use a MessageChannel to protect against sending adInfo to an ad iframe that has been navigated. Something like:

  1. SafeFrame content creates a MessageChannel and includes its port when sending a postMessage to Prebid to ask for the adInfo.

  2. Prebid replies with adInfo by postMessageing on the provided port.

Demo: https://www.jefftk.com/test/message-channel

If the SafeFrame is (maliciously) navigated, the MessageChannel will be lost, and the replacement will have no way to receive (intercept) the message.

What do you think?

@dgirardi
Copy link
Collaborator

@jeffkaufman that looks like a good solution - thank you! Do you have suggestions on how we could test against webbundle responses, or can we go ahead and assume that origin set to null is going to be the only visible difference?

@bretg the new proposal would be:

  1. Update Prebid to accept MessageChannel in addition to the current flow. If a "normal" (non-MessageChannel) request is received with origin set to null, log an error that suggests the publisher needs to update their creative.
  2. Update PUC and creative examples to also work with MessageChannel .
@jeffkaufman
Copy link

@dgirardi I don't have a way you can enable this behavior in GPT, but would it work to test with a data: url? The browser will also treat this as having an opaque origin, and it should behave very similarly.

Alternatively, and this may be enough hassle that it's not worth it, you could flip the chrome://flags/#enable-experimental-web-platform-features and then build your own test web bundle response? You might find https://www.jefftk.com/test/wbn-script/prototype useful as a demo.

@bretg
Copy link
Collaborator

bretg commented Jan 20, 2022

the new proposal would be

If this will work, go for it @dgirardi ! Thanks for the suggestion @jeffkaufman

dgirardi added a commit to dgirardi/Prebid.js that referenced this issue Jan 20, 2022
…eatives

Accept MessageChannel ports from cross-origin creatives to allow communication with frames behind opaque origins

Addresses prebid#7870
dgirardi added a commit to dgirardi/Prebid.js that referenced this issue Jan 20, 2022
…eatives

Accept MessageChannel ports from cross-origin creatives to allow communication with frames behind opaque origins

Addresses prebid#7870
ChrisHuie pushed a commit that referenced this issue Jan 26, 2022
…eatives (#7953)

Accept MessageChannel ports from cross-origin creatives to allow communication with frames behind opaque origins

Addresses #7870
aecook pushed a commit to freestarcapital/Prebid.js that referenced this issue Apr 18, 2022
* Colossus Bid Adapter: fix validator (#7926)

* add video&native traffic colossus ssp

* Native obj validation

* Native obj validation #2

* Added size field in requests

* fixed test

* fix merge conflicts

* move to 3.0

* move to 3.0

* fix IE11 new URL issue

* fix IE11 new URL issue

* fix IE11 new URL issue

* https for 3.0

* add https test

* add ccp and schain features

* fix test

* sync with upstream, fix conflicts

* Update colossussspBidAdapter.js

remove commented code

* Update colossussspBidAdapter.js

lint fix

* identity extensions

* identity extensions

* fix

* fix

* fix

* fix

* fix

* add tests for user ids

* fix

* fix

* fix

* fix

* fix

* fix

* fix

* add gdpr support

* add gdpr support

* id5id support

* Update colossussspBidAdapter.js

add bidfloor parameter

* Update colossussspBidAdapter.js

check bidfloor

* Update colossussspBidAdapter.js

* Update colossussspBidAdapter.js

* Update colossussspBidAdapter.js

* Update colossussspBidAdapter_spec.js

* use floor module

* Revert "use floor module"

This reverts commit f0c5c248627567e669d8eed4f2bb9a26a857e2ad.

* use floor module

* update to 5v

* fix

* add uid2 and bidFloor support

* fix

* add pbadslot support

* fix conflicts

* add onBidWon

* refactor

* add test for onBidWon()

* fix

* add group_id

* Trigger circleci

* fix

Co-authored-by: Vladislav Isaiko <vladis@smartyads.com>
Co-authored-by: Aiholkin <artem.iholkin@smartyads.com>
Co-authored-by: Mykhailo Yaremchuk <m.yaremchuk@smartyads.com>

* Integration examples: update the AMP creative (#7911)

* fixing the AMP creative

There's no way the original version of this ever worked. AMP requires calling out to Prebid Cache. The original example was calling for Prebid.js, which isn't present in an AMP environment. 

I just copied the instructions at https://docs.prebid.org/adops/setting-up-prebid-for-amp-in-dfp.html

* added quotes

* Generic viewability module: add new module (#7643)

* - custom viewability core

* - IntersectionObserver implementation

* - support different type of trackers

* - viewability tests wip

* - increase test coverage for viewability

* - move viewability module js

* - remove uneccesary changes

* - allow uncomplete observers to be registered again

* - import explicitly from utils

* - add viewability.md

* - add module name to log messages

* update for higher legibility

* change maintainer email (#7930)

* Compass Adapter: fix validator (#7931)

* add Compass Adapter

* fix

* fix

* fix

* add endpointId

* fix

* RTD module: allow submodules to setBidRequestData without `waitForIt` (#7862)

This change allows all RTD submodules at least one shot to see the `setBidRequestData` hook even if they are not flagged `waitForIt` (previously they would not be run at all in some cases).

Addresses https://github.com/prebid/Prebid.js/issues/7117

* Pilotx Bid Adapter: add new bid adapter (#7816)

* adding pilotx bid adapter and tests

* removing commented code

* appending review changes

Co-authored-by: AnthonyBoozan <tony@pilotx.tv>

* handle weird advertiserDomain scenarios (#7908)

* Gnet Bid Adapter: Change endpoint and add parameter (#7934)

* Add files via upload

* Add files via upload

* Change params on gnetBidder

* ADJ - Use parseSizesInput to get sizes
ADJ - Check serverResponse object
ADJ - Remove getUserSyncs function

* ADJ - Change prebid endpoint

* ADJ - Change endpoint on test

* GnetBidAdapter update for Prebid 5.x

* Change endpoint and add parameter

* import only used function from utils

Co-authored-by: Roberto Hsu Wu <hsuroberto@gmail.com>
Co-authored-by: Roberto Hsu <roberto.wu@grumft.com>
Co-authored-by: Denise Balesteros Silva <denise.balesteros@grumft.com>

* JwPlayer RTD module: Write to oRTB content segments (#7886)

* adds example code

* enriches the ortb2 object

* resolves build errors

* tests content id and data getters

* respects data integrity

* updates documentation

* Prebid 6.7 Release

* Increment pre version

* Prebid core & currency module: fix race condition on slow fetch of currency conversion file (#7851)

The currency module hooks into the auction's `addBidResponse` flow to modify bid responses with currency info. To do this it needs to fetch conversion rates from the network, but the auction expects `addBidResponse` to complete synchronously, and things break down if all bidder network calls complete before the currency file fetch.

This fix allows the `addBidResponse` hook to return a promise. If it does, the auction will wait for it before ending.

Addresses https://github.com/prebid/Prebid.js/issues/7765

* Brandmetrics RTD Module: add new RTD module (#7756)

* First version of brandmetrics RTD- module

* Implement brandmetricsRtdProvider

* Add gdpr and usp consent- checks

* Add user- consent related tests

* Set targeting keys in a more generic way

* Test- logic updates

* Criteo - Add schain support (#7940)

* updates for Prebid v5 (#7878)

* Adagio: remove referrer. reachedTop validation (#7939)

* Gumgum - ADTS-175 Support multiple GG params (#7932)

* Expose vendor ID for TCFv2 enforcement (#7927)

Co-authored-by: slimkrazy <sam@slimkrazy.com>

* displayio bid adapter, tests, doc (#7906)

Co-authored-by: Anna Philippova <annyphilippova@gmail.com>

* Core: fix pbjs.validateAdUnitPos() to handle 0 value (#7944)

Ortb2 spec uses the value `0` for "unknow" position.

* Sovrn Bid Adaptter: add video to Sovrn adapter (#7929)

* Add video to Sovrn adapter

* Update sovrnBidAdapter.js

* Update sovrnBidAdapter.md

* Update sovrnBidAdapter.md

Co-authored-by: Maxim Pakhomov <70204615+maximpakhomov@users.noreply.github.com>

* Undertone bid adapter: support for floors module (#7914)

* * Update undertone adapter - change parameters - placementId parameter is now optional and not mandatory - undertoneBidAdapter.js

* Updated undertone bid adapter tests accordingly - undertoneBidAdapter_spec.js

* * Update undertone adapter - change parameters - placementId parameter is now optional and not mandatory - undertoneBidAdapter.js

 * Updated undertone bid adapter tests accordingly - undertoneBidAdapter_spec.js

* fix lint issue in undertone adapter spec

* added user sync function to undertone adapter

* * Update undertone adapter - change parameters - placementId parameter is now optional and not mandatory - undertoneBidAdapter.js

* Updated undertone bid adapter tests accordingly - undertoneBidAdapter_spec.js

* added user sync function to undertone adapter

* added user sync function to undertone adapter

* revert package-lock.json

* added user sync function to undertone adapter

* Update undertoneBidAdapter.js

* Update browsers.json

* bidfloor support

* package-lock.json master

* bidfloor support

Co-authored-by: omerko <omer.koren@perion.com>
Co-authored-by: Omer Koren <omerko@users.noreply.github.com>
Co-authored-by: AnnaPerion <annat@perion.com>
Co-authored-by: Oran Hollaender <oran@perion.com>
Co-authored-by: tamirnPerion <44399211+tamirnPerion@users.noreply.github.com>

* InteractiveOffers - New fields and remap on the internal object (#7946)

* appnexus bid adapter - add support for auction level keywords (#7951)

* Prebid core: accept and propagate AD_RENDER_FAILED / AD_RENDER_SUCCEEDED events from cross-origin ads (#7917)

* Prebid core: accept and propagate AD_RENDER_FAILED / AD_RENDER_SUCCEEDED events from cross-origin ads

This adds a new type of cross-origin message ('Prebid Event') to allow PUC and other cross-origin renderings to correctly report rendering result, and generates the appropriate events.

Addresses https://github.com/prebid/Prebid.js/issues/7702

Related PUC changes: https://github.com/prebid/prebid-universal-creative/pull/152
Documentation changes TBD

* Emit AD_RENDER_FAILED on x-origin communication errors

* Do not consider bid won if x-origin render fails

* Cleanup (address https://github.com/prebid/Prebid.js/pull/7917#pullrequestreview-856914369)

* Prebid 6.8.0 Release

* Increment pre version

* LunamediaHB Bid Adapter: add user syncs (#7950)

* initial

* initial

* initial

* Update lunamediahbBidAdapter.js

Define traffic type by mediatype property

* Update lunamediahbBidAdapter.md

Remove unnecessary parameter

* Update lunamediahbBidAdapter_spec.js

Test for usage of mediatype for traffic definition

* Update lunamediahbBidAdapter.md

* Update lunamediahbBidAdapter.js

fix native parse

* Update lunamediahbBidAdapter_spec.js

* rever native changes

* remove traffic param

* remove traffic param

* remove traffic param

* add video context handling

* add video context handling

* add userSync

* fix

* fix

Co-authored-by: Aiholkin <artem.iholkin@smartyads.com>

* Improve Digital COPPA support (#7948)

Co-authored-by: Samiul Amin Shanto <93644987+samiul-shanto@users.noreply.github.com>

* pass along the order which bidders were called (#7947)

* feat: add aseal bid adapter and test (#7937)

* Richaudience Bid Adapter: uncaught error on non-gdpr locations #7955 (#7962)

Co-authored-by: sgimenez <sergi.gimenez@richaudience.com>

* 'Ogury Bid Adapter: adding location to bid timeout tracks (#7961)

* Weborama RTD submodule: add support to more bid adapters (#7912)

* update .submodules.json to include weborama rtd

update .submodules.json to include weborama rtd submodule

* add support to pubmatic

* improve test format

* improve test format ~

* add support to appnexus/xandr bidder

* fix issue when split set target in two steps: site and user centric data

* add support to rubicon old style

* fix code, update docs

* add support to global and bid ortb2

* remove unused code

* refactor code

* update bidder list

* add global level parameters

* change error to warning

* update doc

* refactor

* add field accountId

* update example

* refactor js concat string

* refactor js concat string 2

* update jsdoc

* correct jsdoc

* add support to pubmatic

* improve test format

* improve test format ~

* add support to appnexus/xandr bidder

* fix issue when split set target in two steps: site and user centric data

* add support to rubicon old style

* fix code, update docs

* add support to global and bid ortb2

* remove unused code

* refactor code

* update bidder list

* add global level parameters

* change error to warning

* update doc

* refactor

* add field accountId

* update example

* refactor js concat string

* refactor js concat string 2

* update jsdoc

* correct jsdoc

* fix log

* update example

* remove todo

* refactor duplicated code in config normalization

* fix jsdoc

* add onData callback

* add unit tests and update docs

* fix doc

* protect onData callback and refactor code

* add new fields

* fix condition

* Prebid Core: refactor bidderSettings to have only one entry point (#7712)

* Refactor bidderSettings to have only one entry point

Add thin wrapper around `$$PREBID_GLOBAL$$.bidderSettings` that reduces some duplicate logic around fallback to `bidderSettings.standard`

* Do not return direct reference to a global array

* Fix bug where result of auction.js/getPriceByGranularity would ignore per-bid granularity after the first call

* Remove redundant utils.deepMerge, move utils unit tests

* Attempt to trick codacy into being a little less helpful

* Use class syntax

* Remove caching of standard adServerTargeting

* Convert recent 'allowZeroCpmBids' to new bidderSettings api

* ogury-adapter: fix some check conditions - US/non-GDPR issue (#7967)

* Conversant adapter support for first party data through the ortb2 and ortb2Imp options (#7966)

* Prebid core: accept MessageChannel communication from cross-origin creatives (#7953)

Accept MessageChannel ports from cross-origin creatives to allow communication with frames behind opaque origins

Addresses https://github.com/prebid/Prebid.js/issues/7870

* PBjs Core - Adloader : add brandmetrics module to approved external js- loaders (#7949)

* First version of brandmetrics RTD- module

* Implement brandmetricsRtdProvider

* Add gdpr and usp consent- checks

* Add user- consent related tests

* Set targeting keys in a more generic way

* Test- logic updates

* Add brandmetrics to approved external js- loaders

* Rise Bid Adapter: support onbid won (#7958)

* add Rise adapter

* fixes

* change param isOrg to org

* Rise adapter

* change email for rise

* fix circle failed

* bump

* bump

* bump

* remove space

* Upgrade Rise adapter to 5.0

* add onBidWon event

* nurl

* add test

* eslint

* fix corcle

* fix circle

* fix

Co-authored-by: Noam Tzuberi <noam.tzuberi@ironsrc.com>
Co-authored-by: Laslo Chechur <laslo.chechur@ironsrc.com>

* Prebid 6.9.0 Release

* Increment pre version

* Hadron Id Submodule: initial release & deprecate Halo Id submodule (#7938)

* rename audigent halo to hadron

* revert package-lock changes

* re-add halo modules for continuity til Prebid 7 deprecation

* revert SSP adapter changes, add halo RTD test

* remove hadron refs from ssp tests

* add contact blurb

* pull hadron from ix bid adapter

* pull hadron from tappx test

* re-add halo id system spec

* Trustpid User ID Module: initial release (#7945)

* feature: Add trustpid user id module

* refactor: Update trustpidSystem module, comments and md file

* refactor: Update trustpidSystem file to handle domain setting regardless of message events

* refactor: Update trustpidSystem module and dependent tests and docs

* refactor: Update trustpid undefined checks and returns

* tests: Update trustpid tests

* docs: Update trustpid docs typo

* refactor: Update trustpid module with storage and logging utils. Adjust tests.

Co-authored-by: Tomasz Januszek <tomasz@teavaro.com>

* Update malltvBidAdapter.md (#7973)

Changing maintainer of bid adapter

* YieldOne Bid Adapter: add IMID support. (#7982)

* PubMatic Bid Adapter : Added support for considering video params from mediaTypes object of Bid (#7980)

* Changed net revenue to True

* Checking for video params in mediaTypes obj of bid

* Added addiotional check for mediaTypes

* Added test cases

Co-authored-by: Azhar <azhar@L1119.local>

* Multiple Adapters & Modules: replace corejs polyfills with simpler stubs (#7942)

* Replace core-js polyfills with simpler stubs

* Update allowedModules / validateImports

* Move stubs to their own package to keep npm imports working without changes

* Vibrant Media Bid Adapter: add new bid adapter (#7824)

* Fluct Bid Adapter: ie polyfill 4 url search params

* more specific import

* see if corejs is white listed

* update to pure core js

* update link

* change format

* add to whitelist

* fix path to web

* add features path

* update path

* drop web in path

* fix path

* try again

* update to root

* Preliminary draft of Vibrant Prebid Adapter

* Refactoring to conform to Prebid.js data structures; Added "bid timeout" and "bid won" handlers

* Added prebid server response parser; Improved request checks; Improved test data in readme; Added URL to data passed to the server; Added tests

* Improved handling of URL sent to the server

* Removed getUserSyncs function (not needed yet); Added support for sizes property outside mediaTypes object; Added mediaSizes property support for video mdias type; Corrected readme ad unit and request examples;

* Added support for native; Added native tests; Cleaned up TODOs and logging

* Corrected prebid service URL and default currency; Bid request transformer now more resilient to different request formats; Added native ad unit to example prebid service request in the readme; Added and improved unit tests

* Removed overly-restrictive ad unit size requirements

* Updated adapter to allow a list of bids; Coding standards improvements

* Major changes to reflect the server now returning data in largely the Prebid structure; Simplified augmenting ad bids with additional required data. (Four tests fail; video renderer still a work in progress)

* Updated render (still work in progress); Fixed failing tests

* Corrected the prebid endpoint

* Removed unnecessary custom video renderer

* Added 'test-' to start of test ad unit codes

* Tweaked example in readme

* Removed debug lines and data; Code clean-up

* Improved description and corrected contact email in readme

* Updated example ad requests in the readme

* Final version of readme example; Improved bid request transform in adapter

* Resolved issues with code style and tests; Reverted package-lock

* Fixed missing comma in allowed modules array

* Fixed failing tests

* Resolved issues with code style and tests; Reverted package-lock

* Fix: Bidder code does not match adapter name

* Added USP consent support

* Changes to clarify company name

Co-authored-by: Chris Huie <phoenixtechnerd@gmail.com>

* sspBC Bid Adapter: improvee native support , matching site/placement, & other maintenance (#7963)

* Update tests for sspBC adapter

Update tests for sspBC adapter:
- change userSync test (due to tcf param appended in v4.6)
- add tests for onBidWon and onTimeout

* [sspbc-adapter] 5.3 updates: content-type for notifications

* [sspbc-adapter] pass CTA to native bid

* [sspbc-5.3] keep pbsize for detected adunits

* [sspbc-5.3] increment adaptor ver

* [sspbc-adapter] maintenance update to sspBCBidAdapter

* remove yarn.lock

* Delete package-lock.json

* remove package-lock.jsonfrom pull request

* [sspbc-adapter] send pageViewId in request

* [sspbc-adapter] update pageViewId test

* [sspbc-adapter] add viewabiility tracker to native ads

* [sspbc-adapter] add support for bid.admNative property

* [sspbc-adapter] ensure that placement id length is always 3 (improves matching response to request)

* [sspbc-adapter] read publisher id and custom ad label, then send them to banner creative

* [sspbc-adapter] adlabel and pubid are set as empty strings, if not present in bid response

* [sspbc-adapter] jstracker data fix

* [sspbc-adapter] jstracker data fix

* [sspbc-adapter] send tagid in notifications

* [sspbc-adapter] add gvlid to spec; prepare getUserSyncs for iframe + image sync

* [sspbc-adapter] fix notification payload

* [sspbc-adapter] fix notification payload, fix tests

* [sspbc-adapter] add userIds to ortb request

* [sspbc-adapter] update to 4.1, change request to be ortb 2.6 compliant

* [sspbc-adapter] update tests

Co-authored-by: Wojciech Biały <wb@WojciechBialy.local>

* Bump log4js from 6.3.0 to 6.4.1 (#7988)

Bumps [log4js](https://github.com/log4js-node/log4js-node) from 6.3.0 to 6.4.1.
- [Release notes](https://github.com/log4js-node/log4js-node/releases)
- [Changelog](https://github.com/log4js-node/log4js-node/blob/master/CHANGELOG.md)
- [Commits](https://github.com/log4js-node/log4js-node/compare/v6.3.0...v6.4.1)

---
updated-dependencies:
- dependency-name: log4js
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Bump shelljs from 0.8.4 to 0.8.5 (#7987)

Bumps [shelljs](https://github.com/shelljs/shelljs) from 0.8.4 to 0.8.5.
- [Release notes](https://github.com/shelljs/shelljs/releases)
- [Changelog](https://github.com/shelljs/shelljs/blob/master/CHANGELOG.md)
- [Commits](https://github.com/shelljs/shelljs/compare/v0.8.4...v0.8.5)

---
updated-dependencies:
- dependency-name: shelljs
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Bump trim-off-newlines from 1.0.1 to 1.0.3 (#7986)

Bumps [trim-off-newlines](https://github.com/stevemao/trim-off-newlines) from 1.0.1 to 1.0.3.
- [Release notes](https://github.com/stevemao/trim-off-newlines/releases)
- [Commits](https://github.com/stevemao/trim-off-newlines/compare/v1.0.1...v1.0.3)

---
updated-dependencies:
- dependency-name: trim-off-newlines
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Bump cached-path-relative from 1.0.2 to 1.1.0 (#7979)

Bumps [cached-path-relative](https://github.com/ashaffer/cached-path-relative) from 1.0.2 to 1.1.0.
- [Release notes](https://github.com/ashaffer/cached-path-relative/releases)
- [Commits](https://github.com/ashaffer/cached-path-relative/commits)

---
updated-dependencies:
- dependency-name: cached-path-relative
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Update nextMillenniumBidAdapter.js (#7972)

Fixed an error that occurred if one of the intermediate objects response.body.ext.responsetimemillis is missing

* DSPx adapter: add pbver, pref, mediatypes, pcode (#7964)

Co-authored-by: Alexander <avj83@list.ru>

* add a configurable "bidCacheFilterFunction" (#7993)

* add a configurable "bidCacheFilterFunction" to determine whether to use a cached bid

* tiny != changed to !==

Co-authored-by: Eric Harper <eharper@rubiconproject.com>

* [SPY-10745] fixing value for 'at' ad request field for first price model (#7996)

* Mediasquare Adapter - add gvlid (#7970)

* PBS Adapter: allow "extra" bids that are not tied to any request (#7885)

* Explicitly import / setup PBS adapter test dependencies

* Allow "unknown" bidders inside PBS adapter

* Remove code duplication around processNativeAdUnitParams

* Add transactionId to bid response; make requestId optional

* Remove call to bidFactory#createBid from Telaria bid adapter

* Auction index

* Convert bid response validaton to use auctionIndex

* WIP: allow auction to work with optional bid requests (missing - fix pbjs_api_spec.js)

* Allow auction to work with optional requestId

* Remove getBidderRequest

* Mass adapter

* Fix priceFloors for optional requestId

* Add s2sConfig.allowUnknownBidderCodes toggle

* Fix lint

* Fix lint

* Fix use of auction.getProperties (use getAuctionStart instead)

* Fix lint

* Fix LGTM alert

* Adnuntius Bid Adapter: update on no cookies parameter (#7875)

* Added option to pass a user id through ortb2.

* RTD provider added.

* check if use cookie is present in config, and use it accordingly.

* Adding test for no cookie url addition.

* Adnuntius RTD Provider tests added

* Adnuntius RTD Module

* Removed adnuntius RTD provider from this pull request.

* Fix error

* Adnuntius rtd provider: initial release (#7902)

* Added option to pass a user id through ortb2.

* RTD provider added.

* Adnuntius RTD Provider tests added

* Adnuntius Rtd Provider

* name change for file.

* Removed test for other branch.

* Fix to TZO issue in test.

* Addressing changes from comments in pull request 7902.

* Fixed test issue.

* Fixed mergeConfig functions

* Prebid core: isolate global and bidder-specific configuration (#7991)

* Prebid core: isolate global and bidder-specific configuration

https://github.com/prebid/Prebid.js/issues/7956

* Update mergeDeep to not copy arrays by reference

* Malltv bid adapter: added gdpr applies and gdpr consent to bid request parameters (#8000)

* Update malltvBidAdapter.md

Changing maintainer of bid adapter

* Added gdprApplies and gpdrConsent to bid request parameters

Added gdprApplies and gpdrConsent to bid request parameters

* Check for gdprConsent object

* Updated gdpr

* TheMediaGrid: RTD module support with mergeDeep of user.data (#7813)

* Added TheMediaGridNM Bid Adapter

* Updated required params for TheMediaGridNM Bid Adapter

* Update TheMediGridNM Bid Adapter

* Fix tests for TheMediaGridNM Bid Adapter

* Fixes after review for TheMediaGridNM Bid Adapter

* Add support of multi-format in TheMediaGrid Bid Adapter

* Update sync url for grid and gridNM Bid Adapters

* TheMediaGrid Bid Adapter: added keywords adUnit parameter

* Update TheMediaGrid Bid Adapter to support keywords from config

* Implement new request format for TheMediaGrid Bid Adapter

* Fix jwpseg params for TheMediaGrid Bid Adapter

* Update unit tests for The Media Grid Bid Adapter

* Fix typo in TheMediaGrid Bid Adapter

* Added test for jwTargeting in TheMediaGrid Bid Adapter

* The new request format was made by default in TheMediaGrid Bid Adapter

* Update userId format in ad request for TheMediaGrid Bid Adapter

* Added bidFloor parameter for TheMediaGrid Bid Adapter

* Fix for review TheMediaGrid Bid Adapter

* Support floorModule in TheMediaGrid Bid Adapter

* Fix empty bidfloor for TheMediaGrid Bid Adapter

* Some change to restart autotests

* Fix userIds format for TheMediaGrid Bid Adapter

* Remove digitrust userId from TheMediaGrid Bid Adapter

* Protocols was added in video section in ad request for TheMediaGrid Bid Adapter

* TheMediaGrid: fix trouble with alias using

* TheMediaGridNM: fix trouble with alias

* TheMediaGrid Bid Adapter: added support of PBAdSlot module

* TheMediaGrid Bid Adapter: fix typo

* GridNM Bid Adapter: use absent in params data from mediaTypes

* GridNM Bid Adapter: fix md file + add advertiserDomains support

* TheMediaGrid and gridNM Bid Adapter: minor netRevenue fixes

* gridNM Bid Adapter updates after review

* TheMediaGrid Bid Adapter: fix keywords workflow

* fix testing and kick off lgtm again

* TheMediaGrid: added ext.bidder.grid.demandSource processing

* TheMediaGrid: added user.id from fpd cookie

* TheMediaGrid: control cookie setting via bidder config

* TheMediaGrid: use localStorage instead cookie

* TheMediaGridNM Bid Adapter: update adapter to use /hbjson endpoint

* TheMediaGridNM: fix unnecessary conditions

* TheMediaGrid: fix bug with nurl field in response

* TheMediaGrid: update test

* TheMediaGridNM: fix possible bug with nurl

* TheMediaGrid: added alias as playwire

* TheMediaGrid: added alias as adlivetech

* TheMediaGrid: added Ftrack Rtd module support

* TheMediaGrid: use mergeDeep instead concat

* TheMediaGrid: support ortb2.user.ext.device from bidderConfig as user.ext.device in bid request

Co-authored-by: Chris Huie <phoenixtechnerd@gmail.com>

* fix: Add back in correct logic for purpose 1 consent check (#8007)

* fix:Add back in correct logic for purpose 1 consent check

* Remove redundant type coercion.

Co-authored-by: slimkrazy <sam@slimkrazy.com>

* Prebid 6.10.0 Release

* Increment pre version

* Revert "Bump log4js from 6.3.0 to 6.4.1 (#7988)" (#8010)

This reverts commit ef137775a99f3ebfee9c492b9a8f2d8ba33b5f84.

* RTBHouse Bid Adapter: add global vendor list id (#8002)

* AdYouLike Bid Adapter: add gvlid (#8005)

* add required clickurl in every native adrequest

* allows the native response to be given as is to prebid if possible

* add unit tests on new Native case

* Handle meta object in bid response with default addomains array

* fix icon retrieval in Native case

* Update priorities in case of multiple mediatypes given

* improve robustness and fix associated unit test on picture urls

* add support for params.size parameter

* add unit test on new size format

* Makes sure the playerSize format is consistent

* enable Vast response on bidder adapter

* fix lint errors

* add test on Vast format case

* add userId to bidrequest

* revert package-lock.json changes

* improve multiple mediatype handling

* Expose adyoulike GVL id

* Mediasquare Bid Adapter: add floor module support (#8009)

* remove old userSyncs method

* Update mediasquareBidAdapter.js

* Update mediasquareBidAdapter.js

* Update mediasquareBidAdapter_spec.js

* Mediasquare Bid Adapter: add floor module support

* Prebid Src: pass requestObject to BEFORE_BIDDER_REQUEST event (#7989)

* pass requestObject to BEFORE_BIDDER_REQUEST event

* kick off circleci tests

Co-authored-by: Chris Huie <phoenixtechnerd@gmail.com>

* adot Bid Adapter: upgrade to v6 (#7974)

* [adot] upgrade adapter to v6

Co-authored-by: Alexandre Lorin <alexandre.lorin@adotmob.com>
Co-authored-by: Corentin Verpillat <corentin.verpillat@adotmob.com>

* fix `buildRequests` test

* delete superfluous trailing arguments

* fix navigator language

* fix coverage

* fix bidder code and undefined sizes

Co-authored-by: ramyferjaniadot <90328697+ramyferjaniadot@users.noreply.github.com>
Co-authored-by: Alexandre Lorin <alexandre.lorin@adotmob.com>

* IX Bid Adapter: added trustpid.com support and removed a few user providers (#8012)

* added trustpid.com support and removed few user providers in diagnostics

* small syntax fix

* Fixed Test after removing lotamePanoramaId in diag in IX adapter

* IQzone Bid Adapter: add new param (#8020)

* add IQZone adapter

* add endpointId param

* Kubient Bid Adapter: support coppa, update sync URL (#7855)

* add uspConsent to sunc URL

* kubient: add coppa

* added test for coppa

* fix-test

* replace kdmp.kbntx.ch by matching.kubient.net
remove iframe pixel support
rename us_privacy -> usp
rename consent_str -> consent
use URLSearchParams for GET params

* fix-test-and-code

* removed URLSearchParams

* early exit for getUserSyncs, updated test

* test-back

* test-filter-settings

* test-filter-settings

* test-filter-settings

* test-filter-settings

* fix for review

* fix for review

* fix test for ci passing

* fix 2 for ci passing

* refactored-test-for-ci

* fix-for-review

* fix

* fix

Co-authored-by: Artem Aleksashkin <artem.aleksashkin@kubient.com>
Co-authored-by: Artem Aleksashkin <artem.alexashkin@yandex.ru>

* Fix renderer in rubiconBidAdapter (#8017)

* fix(priceFloors): retrieve matching bid request (#8025)

* Price floors module: expand on bug fix with custom priceFloor schemas tests (#8027)

* fix(priceFloors): retrieve matching bid request

* Make default fieldMatchingFunctions work without request; add unit tests

* Make default fieldMatchingFunctions work without request; add unit tests

Co-authored-by: Julie <julie@hubvisor.io>

* VidoomyAdapter: add schain and bidfloor to vidoomy adapter (#7965)

* feat: add schain and bidfloor to vidoomy adapter

* doc: update vidoomy docs

* fix: add bidfloor validation

* chore: update docs and tests

* Revert "Multiple Adapters & Modules: replace corejs polyfills with simpler stubs (#7942)" (#8028)

This reverts commit e75daddef6f325df8c5bb5d585f22a3dd99432a4.

* Fix `geo` first party data (#8013)

that should not be attached
to `device` but to `user` litteral

Co-authored-by: François Maturel <francoismaturel@dijit.fr>

* add bidder fluct (#8016)

* RichaudienceBidAdapter: Change currency floor module (#8018)

* RichaudienceBidAdapter: Change currency floor module

* New Atempt

* new Atempt

* new Atempt

* remove single quotes

Co-authored-by: sgimenez <sergi.gimenez@richaudience.com>

* Adkernel Bid Adapter: add motionspots alias (#8034)

* Prebid.js 6.11.0 release

* Vidazoo bid adapter: support schain param (#8045)

* feat(module): multi size request

* fix getUserSyncs
added tests

* update(module): package-lock.json from master

* feat(module): padding 'schain' param to the server

Co-authored-by: roman <shmoop207@gmail.com>

* 6.12.0-pre

* Prebid Core: add filename to pbjsGlobals module append (#7969)

* fix: add filename to pbjsGlobals module append

* lint

* update filename

* Novatiq ID module: sharedID changes (#7994)

* Novatiq snowflake userId submodule

Novatiq snowflake userId submodule initial release

* change request updates

added novatiq info /modules/userId/userId.md
added novatiq info /modules/userId/eids.md
added novatiq eids /modules/userId/eids.js
added novatiq module in /modules/.submodules.json
removed unnecessary value from getId response

* Update novatiqIdSystem_spec.js

removed unnecessary srcid value

* Update novatiqIdSystem.md

Novatiq ID System: updated novatiq snowflake ID description

* use the sharedId if available and configured

* updated docs

* test changes

* defensive code not required

* Use the prebid storage manager instead of using native functions

* doc changes

* trailing spaces

Co-authored-by: novatiq <79258366+novatiq@users.noreply.github.com>

* Kubient Bid Adapter: update if bidfloor is zero (#8008)

* add uspConsent to sunc URL

* kubient: add coppa

* added test for coppa

* fix-test

* replace kdmp.kbntx.ch by matching.kubient.net
remove iframe pixel support
rename us_privacy -> usp
rename consent_str -> consent
use URLSearchParams for GET params

* fix-test-and-code

* removed URLSearchParams

* early exit for getUserSyncs, updated test

* test-back

* test-filter-settings

* test-filter-settings

* test-filter-settings

* test-filter-settings

* fix for review

* fix for review

* fix test for ci passing

* fix 2 for ci passing

* refactored-test-for-ci

* fix-for-review

* fix

* fix

* avoid sending zero bid floor if it is not defined

* do not send 0 bidfloor

Co-authored-by: Artem Aleksashkin <artem.aleksashkin@kubient.com>
Co-authored-by: Artem Aleksashkin <artem.alexashkin@yandex.ru>

* Automatad Bid Adapter:  register on timeout event and endpoint changes (#8030)

* added automatad bid adapter

* added automatad bid adapter readme

* added automatad bidder adapter unit test

* updated maintainer email id for automatad adapter

* refactored automatadBidAdapter js

* refactored automatadBidAdapter unit test

* refactored automatadBidAdapter unit test

* added usersync code to automatad bid adapter

* Added unit test for onBidWon in automatadBidAdapter_spec

* removed trailing spaces

* removed trailing space

* changes for getUserSync function

* lint error fixes

* updated usersync url

* additional test for onBidWon function added

* added ajax stub in test

* updated winurl params

* lint fixes

* added adunitCode in bid request

* added test for adunit code

* add placement in impression object

* added code to interpret multiple bid response in seatbid

* added bid meta with advertiserDomains

* endpoint url changes

* added format changes

* macro substitution change added

* Nexx360 Bid Adapter:  add new bid adapter (#8026)

* nexx360 added

* Update nexx360BidAdapter.js

UserEids integrated

* Update nexx360BidAdapter.js

Indent fix

* Build system: specify corejs version for babel (#8065)

* sendFloors option to include floor data in the eventCategory field and include ad unit code in eventAction field (#8055)

Co-authored-by: Rachel Joyce <rachelrj@umich.edy>

* collect user.eids (#8022)

* TheMediaGrid Bid Adapter: support for Interstitial flag (#8039)

* Added TheMediaGridNM Bid Adapter

* Updated required params for TheMediaGridNM Bid Adapter

* Update TheMediGridNM Bid Adapter

* Fix tests for TheMediaGridNM Bid Adapter

* Fixes after review for TheMediaGridNM Bid Adapter

* Add support of multi-format in TheMediaGrid Bid Adapter

* Update sync url for grid and gridNM Bid Adapters

* TheMediaGrid Bid Adapter: added keywords adUnit parameter

* Update TheMediaGrid Bid Adapter to support keywords from config

* Implement new request format for TheMediaGrid Bid Adapter

* Fix jwpseg params for TheMediaGrid Bid Adapter

* Update unit tests for The Media Grid Bid Adapter

* Fix typo in TheMediaGrid Bid Adapter

* Added test for jwTargeting in TheMediaGrid Bid Adapter

* The new request format was made by default in TheMediaGrid Bid Adapter

* Update userId format in ad request for TheMediaGrid Bid Adapter

* Added bidFloor parameter for TheMediaGrid Bid Adapter

* Fix for review TheMediaGrid Bid Adapter

* Support floorModule in TheMediaGrid Bid Adapter

* Fix empty bidfloor for TheMediaGrid Bid Adapter

* Some change to restart autotests

* Fix userIds format for TheMediaGrid Bid Adapter

* Remove digitrust userId from TheMediaGrid Bid Adapter

* Protocols was added in video section in ad request for TheMediaGrid Bid Adapter

* TheMediaGrid: fix trouble with alias using

* TheMediaGridNM: fix trouble with alias

* TheMediaGrid Bid Adapter: added support of PBAdSlot module

* TheMediaGrid Bid Adapter: fix typo

* GridNM Bid Adapter: use absent in params data from mediaTypes

* GridNM Bid Adapter: fix md file + add advertiserDomains support

* TheMediaGrid and gridNM Bid Adapter: minor netRevenue fixes

* gridNM Bid Adapter updates after review

* TheMediaGrid Bid Adapter: fix keywords workflow

* fix testing and kick off lgtm again

* TheMediaGrid: added ext.bidder.grid.demandSource processing

* TheMediaGrid: added user.id from fpd cookie

* TheMediaGrid: control cookie setting via bidder config

* TheMediaGrid: use localStorage instead cookie

* TheMediaGridNM Bid Adapter: update adapter to use /hbjson endpoint

* TheMediaGridNM: fix unnecessary conditions

* TheMediaGrid: fix bug with nurl field in response

* TheMediaGrid: update test

* TheMediaGridNM: fix possible bug with nurl

* TheMediaGrid: added alias as playwire

* TheMediaGrid: added alias as adlivetech

* TheMediaGrid: fix sync url workflow

* TrustX: fix sync url worflow + remove old syncurl

* TheMediaGrid: added instl support

* TheMediaGrid: fix test for instl

Co-authored-by: Chris Huie <phoenixtechnerd@gmail.com>

* TrustX Bid Adapter: added instl support (#8042)

* TrustX: added instl support

* TrustX: fix test

* Readme : update built files & add gulp-serve-and-test (#8070)

* Readme : update built files & add gulp-serve-and-t

Issue #8058

* fix typo

* Just Id Userid System: add new ID module (#7985)

* just id user module

* fix

* fix

* docs fix

* basic mode

* fixes

* fix

* .

* .

Co-authored-by: pchrominski <pawel.chrominski@netsprint.eu>

* CircleCI config: use "browsers" image (#8051)

Change the CircleCI image to one that has Chrome to fix failing nightly e2e tests

* Big-Richmedia Bid Adapter: initial release (#8033)

* feature: add Hubvisor richmedia adapter

* feature(hubvisor-bid-adapter): fix lint error

* feature: Replay support for Hubvisor richmedia adapter

* feature: do not need size 1800x1000 for skin

* feature: rename hbvRichmediaAdapter to bigRichmediaAdapter (#7)

* feature: add tests and documentation (#8)

* Richmedia adapter : rename files (#9)

Co-authored-by: Julie <julie@hubvisor.io>
Co-authored-by: JulieLorin <juli.lorin+github@gmail.com>

* BizzClick Bid Adapter: fix schain settings (#8075)

* fix schain settings

* update to single quotes for linting

* remove extra blank line and fix double quote

Co-authored-by: Chris Huie <phoenixtechnerd@gmail.com>

* RichaudienceBidAdapter: Add demand type Skin (#8061)

* RichaudienceBidAdapter: Add demand type Skin

* Test specs

* Test specs 2

* test spec 3

* test spec 4

* test spec 5

Co-authored-by: sgimenez <sergi.gimenez@richaudience.com>

* LKQD Adapter Restore with Adomain (#8047)

* LKQD: restore adapter, convert to oRTB, add adomain

* LKQD: update schain with tests

* LKQD: undo test setup modification

* LKQD: remove unused vars

* LKQD: only import needed from utils

* Prebid core & PBS Adapter: debugging tools to intercept bid requests and mock their response (#7801)

* Build system: improve build for development workflow

This adds a "test-only" gulp task that runs only tests (without clean/lint) and makes the single-spec test environment consistent with the whole-suite case.

* Build system: remove tests from 'serve-fast' task; add 'serve-and-test' task

* Prebid core & PBS Adapter: debugging tools to intercept bid requests and mock their response

This adds the ability to 'intercept' bid requests with a mock response. An intercepted bid does not go through the normal `buildRequests` -> network -> `interpretResponse` flow; a dummy response is instead direclty returned to the auction as if it originated from `interpretResponse`.

This is mostly transparent to other parts of the stack (validation, events, etc), with the exception of user syncs - their interface requires the bidder's HTTP response, so they won't run if all bids in the request are intercepted (and thus no network activity happens).

* Inject sessionStorage during testing - Firefox won't allow stubbing the real one

* Move most debugging logic to its own module

* Add `isDebug` flag to bid responses that have been modified by debugging code

* Remove some redundancy

* Correct merging oversight

* IX Bid Adapter: GPID, dfp_ad_unit_code, pageUrl & bid renderer updates (#8059)

* refactored GPID, dfp_ad_unit_code, pageUrl & bid renderer positions

* resolved gpid for each imp with forEach loop

* AdYouLike Bid Adapter:  fix icon url issue for Native (#8078)

* add required clickurl in every native adrequest

* allows the native response to be given as is to prebid if possible

* add unit tests on new Native case

* Handle meta object in bid response with default addomains array

* fix icon retrieval in Native case

* Update priorities in case of multiple mediatypes given

* improve robustness and fix associated unit test on picture urls

* add support for params.size parameter

* add unit test on new size format

* Makes sure the playerSize format is consistent

* enable Vast response on bidder adapter

* fix lint errors

* add test on Vast format case

* add userId to bidrequest

* revert package-lock.json changes

* improve multiple mediatype handling

* Expose adyoulike GVL id

* fix icurl issue when retreiving icon for Native mediatype

* update unit tests on icon url in native mediatype

* Prebid 6.12.0 release

* Increment version to 6.13.0-pre

* Wider image validation (#8019)

* Limelight Digital Bid Adapter: Prevent duplicate iframe and pixel syncs (#8068)

* User sync improvements

* User sync improvements

* Code review fixes

Co-authored-by: apykhteyev <alex@project-limelight.com>

* Relaido Bid Adapter: change to get the renderer URL for each response (#8085)

* add relaido adapter

* remove event listener

* fixed UserSyncs and e.data

* fix conflicts

* supports for the case where playerUrl is defined inside ads

Co-authored-by: ishigami_shingo <s.ishigami@relaido.co.jp>
Co-authored-by: cmertv-sishigami <s.ishigami@cmertv.com>
Co-authored-by: t_bun <t.bun@cmertv.com>
Co-authored-by: n.maeura <n.maeura@cmertv.com>

* Sovrn Bid Adapter: updated param checks for video adUnits (#8087)

* this will work better

* rerun CI

* zeta_global_sspBidAdapter: provide device.language (#8088)

Co-authored-by: Surovenko Alexey <surovenko.alexey@gmail.com>

* Prebid Core: Adding support for a global return of consent metadata.  (#8043)

* Adding support for a global return of consent metadata with light test coverage.

* removing duplicate test

* updates for code consistency, timestamp naming

* move tcstring check down, return a zero if not a string

* forgot util import!

* TTD Bid Adapter: initial release (#8073)

* add ttd prebid js adapter

* add first party data support
fix gpid
add multiformat ad unit support
remove unnecessary validation
remove params (secure, categories, keywords)
read bid mediatype from new bid response field

* remove minduration as required param, default to 0 if missing

* set video.protocols during initilization

* increment bidder adapter version

* Pubxai Bid Adapter: added extra field to the winning bid object. (#8095)

* Added extra field to the winning bid object.

* Lint isuues fixes

Co-authored-by: Phaneendra Hegde <phaneendra.hegde@gmail.com>

* IQZone Bidder: add user sync (#8072)

* add IQZone adapter

* add endpointId param

* add user sync

* orbidderBidAdapter: add unit test for price floor module (#8044)

* Update 33acrossBidAdapter.js

* Update smaatoBidAdapter.js

* zeta_global_sspBidAdapter: remove devicetype (#8098)

Co-authored-by: Surovenko Alexey <surovenko.alexey@gmail.com>

* Revert "Merge branch 'patmmccann-patch-1' into master" (#8103)

This reverts commit bd2e9f1cb4c9dac10bfa85f5951083b79f5e2fa9, reversing
changes made to 9c0975a937ea55e36a290092c55b7fd0d494fb95.

* 33across, Smaato, OneVideo, & Sharethrough Bid Adapters: Add GVLID (#8104)

* Update 33acrossBidAdapter.js

* Update smaatoBidAdapter.js

* Update sharethroughBidAdapter.js

* Update oneVideoBidAdapter.js

* Medianet Analytics Adapter: Multiple bidResponse with same requestId fix (#8069)

Co-authored-by: monis.q <monis.q@media.net>

* RhythmOne and Unruly Bid Adapter: add gvlid (#8109)

* Update rhythmoneBidAdapter.js

* Update unrulyBidAdapter.js

* Marsmedia adapter: Remove bidderCode from Response (#8108)

* Change publisherId to zoneId
Add gdpr
Add supply chain
Add video media type

* Remove comments

* Fix unit test coverage

* fix request id bug
add vastXml to video response

* Remove bid response default sizes

* Change endpoint url

* Add unit test for vastXml

* Change end point

* Remove trailing-space

* Add onBidWon function

* New adapter - videofy

* Marsmedia & Videofy - Add onTimeout onSetTargeting

* Create sendbeacon function

* - add viewability

* remove unnecessary utils.getWindowTop()

* Remove bidderCode from response for alias use

* Remove unuse that var

* NextRoll Bid Adapter: update privacy link and icon (#8105)

* Update privacy link and icon for NextRoll BidAdapter

* update adapter spec

* Criteo - Read mediaTypes.banner.sizes instead of bidRequest.Sizes (#8111)

* Smaato: Do not overwrite site.publisher.id (#8112)

Co-authored-by: Bernhard Pickenbrock <bernhard.pickenbrock@smaato.com>

* Prebid 6.13.0 release

* Increment version to 6.14.0-pre

* VIS.X: fix bug with onTimeout function arguments (#8110)

Co-authored-by: Vladimir Fedoseev <vladimir.fedoseev@yoc.com>

* Adriver id system (#8057)

* initial commit

* adriver id submodule add

* add id system tests, fix adriver bid adapter tests

* add new lines at the end of files

* appnexus bid adapter - add support for pubProvidedId userId (#8015)

* Prebid core: bidder-specific control over storage access via `bidderSettings.storageAllowed` (#7992)

* Prebid core: bidder-specific control over storage access via `bidderSettings.allowStorage`

https://github.com/prebid/Prebid.js/issues/7280

* Refactor signature of getStorageManager

* Refactor calls to getStorageManager from bid adapters

* Use bidderCode for StorageManager enforcement of bidderSettings.storageAllowed

* Update adriver adapter to use new getStorageManager signature

* appnexus bid adapter - convert keywords different for psp endpoint (#8115)

* Rise Bid Adapter: Added support for banner & gpid (#8083)

* add Rise adapter

* fixes

* change param isOrg to org

* Rise adapter

* change email for rise

* fix circle failed

* bump

* bump

* bump

* remove space

* Upgrade Rise adapter to 5.0

* starting to combine adUnits to a single request. Added banner media type

* improved logic

* handle multiple response bids. Updated sent params from buildRequests

* removed the old build request function

* fixed testMode logic

* setting different params by the mediaType, if they're available

* updated media format for adUnits (vastXml / html)

* updated response structure and some request params

* updated request and response structure and logic

* fixed netRevenue param

* syntax and naming fix

* adapter syntax fix and tests partial update according to adapter's new logic

* more tests updated. Small adapter tweaks

* updated tests to match new request and response structures

* fixed config on one of the tests

* improved logic

* separated query for video and banner keys

* added nurl tests

* added display tests

* updated requests structure and tests video/display together

* removed TODO

* changes bids object params to camelCase

* moved tmax to general params instead of bids. Updated params names in spec file

* sending playbackMethod as a single int

* sending playbackMethod as a single int

* support gpid

* changed the playbackMethodValue signal to let

* changed vars signal order

* moved placement_id key to bids object

* changed placementId to camelCase

* fixed issue where placementId tried to access wrong object

* fixed floorPrice bug

* moved currency and netRevenue keys to each bid object

* cr

* updated placementId value. Added condition to currency and netRevenue

* Delete package-lock.json

* added package-lock.json back

* removed line from package.json

* updated some self tests logic

* empty commit

Co-authored-by: Noam Tzuberi <noam.tzuberi@ironsrc.com>
Co-authored-by: noamtzu <noamtzu@gmail.com>
Co-authored-by: Noam Tzuberi <noamtzu@users.noreply.github.com>
Co-authored-by: Laslo Chechur <laslo.chechur@ironsrc.com>

* Colossus Bidder: update user sync (#8050)

* add video&native traffic colossus ssp

* Native obj validation

* Native obj validation #2

* Added size field in requests

* fixed test

* fix merge conflicts

* move to 3.0

* move to 3.0

* fix IE11 new URL issue

* fix IE11 new URL issue

* fix IE11 new URL issue

* https for 3.0

* add https test

* add ccp and schain features

* fix test

* sync with upstream, fix conflicts

* Update colossussspBidAdapter.js

remove commented code

* Update colossussspBidAdapter.js

lint fix

* identity extensions

* identity extensions

* fix

* fix

* fix

* fix

* fix

* add tests for user ids

* fix

* fix

* fix

* fix

* fix

* fix

* fix

* add gdpr support

* add gdpr support

* id5id support

* Update colossussspBidAdapter.js

add bidfloor parameter

* Update colossussspBidAdapter.js

check bidfloor

* Update colossussspBidAdapter.js

* Update colossussspBidAdapter.js

* Update colossussspBidAdapter.js

* Update colossussspBidAdapter_spec.js

* use floor module

* Revert "use floor module"

This reverts commit f0c5c248627567e669d8eed4f2bb9a26a857e2ad.

* use floor module

* update to 5v

* fix

* add uid2 and bidFloor support

* fix

* add pbadslot support

* fix conflicts

* add onBidWon

* refactor

* add test for onBidWon()

* fix

* add group_id

* Trigger circleci

* fix

* update user sync

Co-authored-by: Vladislav Isaiko <vladis@smartyads.com>
Co-authored-by: Aiholkin <artem.iholkin@smartyads.com>
Co-authored-by: Mykhailo Yaremchuk <m.yaremchuk@smartyads.com>

* Get floor from correct places on bid object & replace div ID with size (#8093)

Co-authored-by: Rachel Joyce <rachelrj@umich.edy>

* Improve Digital adapter: custom creative renderer (#7975)

* Feature Prebid First Party Data (#2)

* HBT-166: Added PageCategory and Genre to request object from First-Party-Data

* HBT-166: Added PageCategory and Genre to request object from First-Party-Data and Rewrite Test Cases

* Update improvedigitalBidAdapter.js

Version increased

* Improve Digital COPPA support

* Feature/razr integration (#3)

Integrated RAZR rich creative renderer

* Use renderer interface for Razr

Co-authored-by: Faisal Islam <93644923+faisalvs@users.noreply.github.com>
Co-authored-by: Samiul Amin Shanto <93644987+samiul-shanto@users.noreply.github.com>
Co-authored-by: Faisal Islam <faisal.islam@vivacomsolutions.com>

* TheMediaGrid Bid Adapter: added support genre and cat from config ortb2.site (#8041)

* TheMediaGrid: added support genre and cat from config ortb2.site

* TheMediaGrid: fix bug with possible undefined cat or pagecat

* Kargo Bid Adapter: Add currency support for bid response  (#8134)

* Kargo Bid Adapter: Use currency from Bid Response

* Kargo Bid Adapter: Fix failed test

Co-authored-by: Jeremy Sadwith <jeremy@kargo.com>

* Minutemedia Bid Adapter: add new bid adapter (#8056)

* add Rise adapter

* fixes

* change param isOrg to org

* Rise adapter

* change email for rise

* fix circle failed

* bump

* bump

* bump

* remove space

* Upgrade Rise adapter to 5.0

* minutemedia adapter

* change adresses and mails

* mm endpoints

* add gvlid

* fix

* fix tests

Co-authored-by: Noam Tzuberi <noam.tzuberi@ironsrc.com>
Co-authored-by: Laslo Chechur <laslo.chechur@ironsrc.com>

* PBS adapter: partial support of sizeMapping (and sizeMappingV2) (#8084)

* Convert sizeMappingV1 to work on adUnits (and not bid requests)

* Convert sizemappingV2 to work on adUnits (and not bidRequests)

* Warn about unsupported bidder-level sizeMapping configuration in PBS adapter

* Kargo Bid Adapter: Removing Salesforce partner support (#8140)

* Kargo Bid Adapter: Use currency from Bid Response

* Kargo Bid Adapter: Fix failed test

* Removing legacy partner code

Co-authored-by: Wei Wong <wwong@kargo.com>

* Prebid 6.14.0 release

* Increment version to 6.15.0-pre

* New alias for Aniview prebid adapter (#8125)

* Multiple adapters and modules: replace core-js polyfills with simpler stubs (#8136)

* Replace core-js polyfills with simpler stubs

* Update allowedModules / validateImports

* Move stubs to their own package to keep npm imports working without changes

* Move polyfills under src

* GMOSSP Bid Adapte:Add user module, meta_url.  (#8128)

* GMOSSP Bid Adapte:Add user module, meta_url.

* sharedid.id -> pubcid

* un use import getWindowSelf.

* test code fix.

* test code url fix.

* Update RELEASE_SCHEDULE.md (#8142)

* Yahoossp Bid Adapter: enable aliasing (#8118)

* YahooSSP bid adapter: Enable aliasing

* Update text description in test case

* Validate aliasing support by testing the bidder code propery is not being set by the bid adapter

Co-authored-by: slimkrazy <sam@slimkrazy.com>

* added GVLId to goldbachBidAdapter (#8147)

* Gnet Bid Adapter: onBidWon (#8114)

* Add files via upload

* Add files via upload

* Change params on gnetBidder

* ADJ - Use parseSizesInput to get sizes
ADJ - Check serverResponse object
ADJ - Remove getUserSyncs function

* ADJ - Change prebid endpoint

* ADJ - Change endpoint on test

* GnetBidAdapter update for Prebid 5.x

* Change endpoint and add parameter

* import only used function from utils

* NEW - onbidWon function

* FIX - buildRequests test

* FIX - buildRequests test

* FIX - buildRequests test especific ambient error

Co-authored-by: Roberto Hsu Wu <hsuroberto@gmail.com>
Co-authored-by: Roberto Hsu <roberto.wu@grumft.com>
Co-authored-by: Denise Balesteros Silva <denise.balesteros@grumft.com>

* Restructure data for global window variable. (#8152) (#8153)

* Video and banner deal id (#8135)

* Adrino Bid Adapter: add new native bid adapter (#8014)

* Adrino: new native adapter

* add simple check to onBidWon

Co-authored-by: Tomasz Mielcarz <tomasz.mielcarz@adrino.pl>

* Revert "Adrino Bid Adapter: add new native bid adapter (#8014)" (#8155)

This reverts commit 72895a3a5bd58966003bca4b98bdd166602c6c56.

* Prebid core: add support for asynchronous access to consent data (#8071)

This adds `gpdrDataHandler.promise` and `uspDataHandler.promise`, to enable access to USP/GDPR consent data from outside of an auction context (see use case: https://github.com/prebid/Prebid.js/pull/7803)

* Adrino bid adapter: do not use core-js polyfills (#8156)

* Revert "Revert "Adrino Bid Adapter: add new native bid adapter (#8014)" (#8155)"

This reverts commit 3c7b3cdab7c4e6b64bdca1d31171ff07e6895bb2.

* Update Adrino bid adapter to not use core-js polyfill

* Bump url-parse from 1.5.1 to 1.5.9 (#8131)

Bumps [url-parse](https://github.com/unshiftio/url-parse) from 1.5.1 to 1.5.9.
- [Release notes](https://github.com/unshiftio/url-parse/releases)
- [Commits](https://github.com/unshiftio/url-parse/compare/1.5.1...1.5.9)

---
updated-dependencies:
- dependency-name: url-parse
  dependency-type: direct:development
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Adloox Analytics/RTD: use refererInfo (#8092)

* SmartHub Bid Adapter: initial release (#8064)

* add SmartHub Prebid.js adapter

* fix unit tests

* fix test params

* fix

* Update smarthubBidAdapter.md

add relevant partnerName

* trigger circleci

* fix response validation

* add netRevenue validation to main condition

Co-authored-by: maksym.voloshyn <maksym.voloshyn@smartyads.com>

* Prebid Server Bid Adapter: add support for all imp parameters (#8159)

* pass imp and fix test

* fix lint

* fix to mergeDeep

* add instl test

* remove overlapping testing

* cwire Bid Adapter: Add new optional parameters (#8143)

* add new global config params

* move params from global config to bidder params

* fix lint

* fix wording, remove unused param

* Prebid 6.15.0 release

* Increment version to 6.16.0-pre

* Add issue tracking workflow (#8162)

This adds a GH action to automatically create a project item for every new issue, and update it with the issue creation date.

* Move issue_tracker.yml to the correct folder

* Novatiq ID System: allow configuration of the sync URL & allow callbacks for specific custom integrations (#8089)

* Novatiq snowflake userId submodule

Novatiq snowflake userId submodule initial release

* change request updates

added novatiq info /modules/userId/userId.md
added novatiq info /modules/userId/eids.md
added novatiq eids /modules/userId/eids.js
added novatiq module in /modules/.submodules.json
removed unnecessary value from getId response

* Update novatiqIdSystem_spec.js

removed unnecessary srcid value

* Update novatiqIdSystem.md

Novatiq ID System: updated novatiq snowflake ID description

* use the sharedId if available and configured

* updated docs

* test changes

* defensive code not required

* Use the prebid storage manager instead of using native functions

* doc changes

* trailing spaces

* Allow configuration of the sync URL and to allow callbacks for specific custom partner integrations

* update documentation

* attempt to fix firefox test timeout

Co-authored-by: novatiq <79258366+novatiq@users.noreply.github.com>

* Rubicon Bid Adapter: Pass along prebid bidId to exchange (#8169)

* rubicon pass bidId in

* remove console log

* targetVideo Bid Adapter: Add GVLID (#8170)

* TargetVideo bid adapter

* TargetVideo bid adapter

* TargetVideo bid adapter

* TargetVideo Bid Adapter update

* TargetVideo Bid Adapter implementing requested changes

* targetVideo Bid Adapter: Add GVLID

* Yahoo SSP Bid Adapter: remove unnecessary warning (#8174)

* Insticator Bid Adapter: add support schain and eids (#8123)

* InsticatorBidAdapter: add support schain and eids

* rerun circle ci build

* Revert "rerun circle ci build"

This reverts commit 936d712012790f437d4ca0c8ad2255c5cd828d78.

* Revert "Revert "rerun circle ci build""

This reverts commit f7c5a66a3276ffee7d4a1f6413a444bb4da69865.

* Livewrapped adapter: Collect meta data and deal ids (#8176)

* Collect metadata

* Collect Deal Id

* Prebid Core & Browsi RTD provider: Support Vendor Billing with Billable events (#8119)

* real time data module,
browsi sub module for real time data,
new hook bidsBackCallback,
fix for config unsubscribe

* change timeout&primary ad server only to auctionDelay
update docs

* support multiple providers

* change promise to callbacks
configure submodule on submodules.json

* bug fixes

* use Prebid ajax

* tests fix

* browsi real time data provider improvements

* real time data module,
browsi sub module for real time data,
new hook bidsBackCallback,
fix for config unsubscribe

* change timeout&primary ad server only to auctionDelay
update docs

* support multiple providers

* change promise to callbacks
configure submodule on submodules.json

* bug fixes

* use Prebid ajax

* tests fix

* browsi real time data provider improvements

* initial check in

* first stuff

* Rubicon Passes along Billing Events

* fix rubi test

* update schema

* fix rubi test

* listen to billing events

* merge browsi events

* billable events

* remove line

* camelcase

* lint fixes

* unit test

* unit test

* missing imports

Co-authored-by: robertrmartinez <rrmartinez1552@gmail.com>

* Prebid Core and Several Bid Adapters: fix win notification price bug (#8171)

* Update ttdBidAdapter.js

* Update prebid.js

* Update secureCreatives.js

* Update apacdexBidAdapter.js

* Update brightMountainMediaBidAdapter.js

* Update axonixBidAdapter.js

* Update koblerBidAdapter.js

* Update mediaforceBidAdapter.js

* Update ttdBidAdapter.js

* Update apacdexBidAdapter.js

* Update brightMountainMediaBidAdapter.js

* Update ttdBidAdapter.js

* Changed first party data (#8180)

* AdYouLike bidder adapter: update video endpoint (#8166)

* add required clickurl in every native adrequest

* allows the native response to be given as is to prebid if possible

* add unit tests on new Native case

* Handle meta object in bid response with default addomains array

* fix icon retrieval in Native case

* Update priorities in case of multiple mediatypes given

* improve robustness and fix associated unit test on picture urls

* add support for params.size parameter

* add unit test on new size format

* Makes sure the playerSize format is consistent

* enable Vast response on bidder adapter

* fix lint errors

* add test on Vast format case

* add userId to bidrequest

* revert package-lock.json changes

* improve multiple mediatype handling

* Expose adyoulike GVL id

* fix icurl issue when retreiving icon for Native mediatype

* update unit tests on icon url in native mediatype

* target video endpoint when video mediatype is present

* add unit test on video endpoint

* detect if bid request has video

* remove console log

* Adagio: getPrintNumber fix (#8184)

use `bidderRequestsCount` instead of `bidRequestsCount`

* Rubicon Analytics Adapter: pass along billing events (#8182)

* rubicon listens to billing events

* billingId is required

* remove log

* Adprime Bid Adapter: update user sync (#8158)

* initial

* fix

* remove redundant language mod, use player sizes in video traff

* test modify

* fix

* Adding Tests

* add keywords param

* log

* log

* log

* fix

* add idl

* add idl

* fix test

* lint

* lint

* fix

* lint

* lint

* lint

* lint

* add sync

* fix

* add video params, advertiserDomains and getFloor

* add audiences param

* fix test

* update user sync

Co-authored-by: Aigolkin1991 <Aigolkin1991@gmail.com>
Co-authored-by: Aiholkin <artem.iholkin@smartyads.com>

* MediaFuse bid adapter: initial release (#8113)

* created MediaFuse Prebid.js bidder adapter

I have created alias from appnexus Prebid.js adapter and created one for Mediafuse

* updated alias code

* updated spec and BidAdapter.js file

 - Removed mediafuse alias from appenxusBidAdapter.js
 - mediafuseBidAdapter_spec.js is created from appnexusBidAdpater_spec.js
 - Removed mediafuseAnalyticsAdapter.js

* update the code as per the PR comment

* formatted the comment line code

* Magnite GVLID used (#8186)

* Prebid core: fix log message when enabling a missing analytics provider (#8181)

* TheMediaGrid & TrustX bid adapters: reformat first party data (#8146)

* Added TheMediaGridNM Bid Adapter

* Updated required params for TheMediaGridNM Bid Adapter

* Update TheMediGridNM Bid Adapter

* Fix tests for TheMediaGridNM Bid Adapter

* Fixes after review for TheMediaGridNM Bid Adapter

* Add support of multi-format in TheMediaGrid Bid Adapter

* Update sync url for grid and gridNM Bid Adapters

* The…
EugeneVigonny added a commit to Insticator/Prebid.js that referenced this issue Apr 21, 2022
* LuponMedia Bid Adapter: add adapter back to prebid master (#7602)

* LuponMedia BidAdapter 5.X

* manually try to kick off circleci tests

* kick off tests

* kick off tests

* Update luponmediaBidAdapter.js

using isFn from utils

Co-authored-by: adxpremium <support@luponmedia.com>
Co-authored-by: Chris Huie <phoenixtechnerd@gmail.com>

* VIS.X Bid Adapter: check ad slot existence (#7730)

* VIS.X: add ad slot check

* VIS.X: update ad slot check helpers

Co-authored-by: Vladimir Fedoseev <vladimir.fedoseev@yoc.com>

* showheroes-bs Bid Adapter: fix for outstream render (#7604)

* add ShowHeroes Adapter

* ShowHeroes adapter - expanded outstream support

* Revert "ShowHeroes adapter - expanded outstream support"

This reverts commit bfcdb913b52012b5afbf95a84956b906518a4b51.

* ShowHeroes adapter - expanded outstream support

* ShowHeroes adapter - fixes (#4222)

* ShowHeroes adapter - banner and outstream fixes (#4222)

* ShowHeroes adapter - description and outstream changes (#4222)

* ShowHeroes adapter - increase test coverage and small fix

* ShowHeroes Adapter - naming convention issue

* Mixed AdUnits declaration support

* ITDEV-4723 PrebidJS adapter support with SupplyChain module object

* ITDEV-4723 Fix tests

* ITDEV-4723 New entry point

* showheroes-bsBidAdapter: Add support for advertiserDomains

* showheroes-bsBidAdapter: hotfix for outstream render

* showheroes-bsBidAdapter: update renderer url

Co-authored-by: veranevera <vera.yukhina@showheroes.com>
Co-authored-by: Elizaveta Voziyanova <44549195+h2p4x8@users.noreply.github.com>

* Revert "showheroes-bs Bid Adapter: fix for outstream render (#7604)" (#7734)

This reverts commit 23f4da7b503d8e87da52837d454e62c22589c2d1.

* Testing Browserlist: remove browsers for testing that are not being built as a target (#7696)

* Build: remove browsers for testing not building to

* update chrome version

* change chrome to v95

* upgrade to v93 for firefox

* try latest flag with chrome

* update to latest can-i-use for new browsers

* Revert "update to latest can-i-use for new browsers"

This reverts commit 9e07037d3461ea098ca785ebabe33c41dab7afe7.

* change to latest version and oldest chrome

* fix os for safari

* update big sur browser

* try again with mac version os

* fix typo

* fix catalina safari version

* update concurrency

* freewheel-ssp Bid Adapter: add schain in request params (#7504)

* freewheel add schain in the request

* Fix an error on test case

* Update freewheel-sspBidAdapter_spec.js

Update test case

* Update freewheel-sspBidAdapter_spec.js

fix the test

* Update freewheel-sspBidAdapter_spec.js

Fix the test error

* UserID Module: allow userid to ppid sync (#7681)

* sync PPID with googletag

* dont need to export

* add log warning if not right length

* EMX Digital Bid Adapter: add GPID support (#7720)

* adding ccpa support for emx_digital adapter

* emx_digital ccpa compliance: lint fix

* emx 3.0 compliance update

* fix outstream renderer issue, update test spec

* refactor formatVideoResponse function to use core-js/find

* Add support for schain forwarding

* Resolved issue with Schain object location

* prebid 5.0 floor module and advertiserDomain support

* liveramp idl and uid2.0 support for prebid

* gpid support

* remove utils ext

* remove empty line

* remove trailing spaces

* move gpid test module

* move gpid test module

* removing trailing spaces from unit test

* remove comments from unit test

Co-authored-by: Nick Colletti <nick.colletti@emxdigital.com>
Co-authored-by: Nick Colletti <gnomish@gmail.com>
Co-authored-by: Kiyoshi Hara <Kiyoshi.Hara@emxdigital.com>
Co-authored-by: Dan Bogdan <daniel.bogdan@emxdigital.com>
Co-authored-by: Jherez Taylor <jherez.taylor@emxdigital.com>
Co-authored-by: EMXDigital <emxdigital@emxdigital.com>
Co-authored-by: Rakesh Balakrishnan <Rakesh.Balakrishnan@emxdigital.com>
Co-authored-by: EMX Digital <43830380+EMXDigital@users.noreply.github.com>
Co-authored-by: Kevin <kevin.hagens@brealtime.com>

* Limelight Digital Bid Adapter: Add optional Publisher ID field (#7706)

* adyoulike Bid Adapter: Add userIds to bidrequest (#7660)

* add required clickurl in every native adrequest

* allows the native response to be given as is to prebid if possible

* add unit tests on new Native case

* Handle meta object in bid response with default addomains array

* fix icon retrieval in Native case

* Update priorities in case of multiple mediatypes given

* improve robustness and fix associated unit test on picture urls

* add support for params.size parameter

* add unit test on new size format

* Makes sure the playerSize format is consistent

* enable Vast response on bidder adapter

* fix lint errors

* add test on Vast format case

* add userId to bidrequest

* revert package-lock.json changes

* add first-party data support to beachfront adapter (#7733)

Co-authored-by: John Salis <john@beachfront.com>

* Prebid 6.2.0 Release

* Increment pre version

* SharedID module: update tests to assert on behavior rather than logs (#7738)

Update tests that fail spuriously: https://github.com/prebid/Prebid.js/issues/7355
I was not able to reproduce the failures, but in debugging I ruled out the possibility of module loading order and I believe the most likely culprit is other tests asynchronously calling `utils.logInfo` that sometimes happen in-between these tests' setup and assertions.

This may not be the real issue, but IMO testing log messages makes little sense anyway, so I updated them to test the actual SOT behavior.

* gumgum & adagio Bid Adapters: remove extra defensive code to solve lgtm alert (#7737)

* Update gumgumBidAdapter.js

* Update adagioBidAdapter.js

* 33acrossBidAdapter: Add Support for SRA (#7703)

* SRA support

* apply code review feedback SRA

* removed redundant config check

* Replace not-supported array flat method.

Co-authored-by: Carlos Felix <carlos.felix@33across.com>

* Remove redundant alias (#7742)

Fix an issue with the `gdprEnforcement` module. See #7741

* Lotame panorama id submodule: handle consent (#7644)

* feat: Add handling for a custom client id
feat: Send us privacy string

* test: Add test case to make sure the expiry is also not touched and update the mocked response

Co-authored-by: Mike Marcus <mike@lotame.com>

* Yahoo SSP Bid Adapter: interstitial fix  (#7746)

* ortb2Imp.instl

* ortb2Imp.instl unit-test

* numeric boolean validations

* refacotor for false 0

* tests stable

* Kinesso fixing the endpoint construction (#7743)

Co-authored-by: skocheri <skocheri@rubiconproject.com>

* VidoomyBidAdapter: fix video mediatype sizes format (#7716)

* fix: add delay between cookie sync calls

* fix(VidoomyBidAdapter): use default triggerPixel

* fix: use getUserSyncs hook to sync cookies

* fix: handle 204 no response without error log

* chore: refactor getUserSyncs

* test: update vidoomyBidAdapter tests

* fix: remove Macro

* fix: query params

* fix: gdpr consent

* fix: vidoomyBidAdapter tests

* fix: use USP_CONSENT in cookie sync urls

* fix(vidoomyBidAdapter): sizes format for video mediatype

* fix: vast xml

* fix: send gdpr as string

* chore: add adUnitCode to prebid request

* Prebid core: move generation of 'installedModules' to babel (#7739)

`pbjs.installedModules` does not work correctly when using prebid as an npm dependency (https://github.com/prebid/Prebid.js/issues/7287), because it's generated by a gulp task.

This moves generation of `installedModules` to the `pbjsGlobals` babel plugin that we ask npm consumers to use for prebid.

* Add 'targetingControls.addTargetingKeys' configuration option (#7690)

This adds 'addTargetingKeys' as a config option that means 'allow all default targeting keys, plus these'.

https://github.com/prebid/Prebid.js/issues/7249

* add alias futureads (#7753)

Co-authored-by: atkachov <atkachov@admixer.ua>

* Weborama Rtd Provider: access user profiles in local storage and add support to wam2gam and smartadserver (#7728)

* update .submodules.json to include weborama rtd

update .submodules.json to include weborama rtd submodule

* fix jsdoc

* add support to wam2gam

* fix unit test

* fix bad copy paste

* save dev

* add feature

* rename properties

* update unit tests

* fix doc

* fix doc ~

* fix doc 3

* rename bigsea contextual

* rename wam2gam

* refactor code

* rename setGAMTargeting

* improve doc, example

* update conf

* fix doc

* fix identation

* fix identation 2

* remove empty line into end

* remove empty line 2

* fix jsdoc

* add support to wam2gam

* fix unit test

* fix bad copy paste

* save dev

* add feature

* rename properties

* update unit tests

* fix doc

* fix doc ~

* fix doc 3

* rename bigsea contextual

* rename wam2gam

* refactor code

* rename setGAMTargeting

* improve doc, example

* update conf

* fix doc

* fix identation

* fix identation 2

* remove empty line into end

* remove empty line 2

* add intersection RtdProvider and spec (#7710)

Co-authored-by: atkachov <atkachov@admixer.ua>

Co-authored-by: AdmixerTech <35560933+AdmixerTech@users.noreply.github.com>
Co-authored-by: atkachov <atkachov@admixer.ua>

* Zeta Ssp Bid Adapter: vast xml for bid (#7740)

* vastXml as bid.ad

* test added

* logic with ext.bidtype

* fix tests

* fix tests(3)

* change .md for video support sample

Co-authored-by: Surovenko Alexey <surovenko.alexey@gmail.com>

* NextMillennium Bid Adapter: add getUserSyncs function (#7749)

* Add getUserSyncs function

* add unit tests

* add unit tests

Co-authored-by: mifanich <mihail.ivanchenko@nextmillennium.io>

* BeOp Bid Adapter: fix tracking params (#7759)

* [BeOp adapter] Fix tracking params

* Missing comma

* PBS Bid adapter: timeout user syncs if they never load (#7744)

* PBS Bid adapter: timeout user syncs if they never load

In some situations the browser never triggers load/error events for user syncs, so the PBS adapter remains stuck (https://github.com/prebid/Prebid.js/issues/6354). This adds a timeout for image/iframe syncs.

* Clear timeout in utils.waitForElementToLoad

* add one more get param to be forwarded (#7745)

* Update Criteo Fast Bid version (#7767)

* TargetVideo Bid Adapter: add new bid adapter (#7718)

* TargetVideo bid adapter

* TargetVideo bid adapter

* TargetVideo bid adapter

* TargetVideo Bid Adapter update

* TargetVideo Bid Adapter implementing requested changes

* Adman Bidder Adapter: add lotamePanoramaId (#7763)

* Add Adman bid adapter

* Add supportedMediaTypes property

* Update ADman Media bidder adapter

* Remove console.log

* Fix typo

* revert package-json.lock

* Delete package-lock.json

* back to original package-lock.json

* catch pbjs error

* catch pbjs error

* catch pbjs error

* log

* remove eu url

* remove eu url

* remove eu url

* remove eu url

* remove eu url

* Update admanBidAdapter.js

add consnet to sync url

* Update admanBidAdapter.js

fix import

* Update admanBidAdapter.js

lint fix

* Update admanBidAdapter.js

lint fix

* Update admanBidAdapter.js

check consent object data availability

* сompatible with prebid v5

* add Lotame Panorama ID

Co-authored-by: minoru katogi <mkatogi@gmail.com>
Co-authored-by: minoru katogi <m_katogi@hotmail.com>
Co-authored-by: ADman Media <admanmedia@users.noreply.github.com>
Co-authored-by: SmartyAdman <adman@localhost.localdomain>

* ZetaSspBidAdapter: provide media type (#7762)

* provideMediaType

* checkstyle issue

Co-authored-by: Surovenko Alexey <surovenko.alexey@gmail.com>

* Fix GDPR consent choice capture (#7779)

* Mediasquare bidder: remove old user sync method (#7780)

* remove old userSyncs method

* Update mediasquareBidAdapter.js

* Update mediasquareBidAdapter.js

* Update mediasquareBidAdapter_spec.js

* PubCommonID module: use topmost domain for cookie storage (#7773)

This reintroduces logic to have sharedIdSystem/pubCommonID use the TLD for cookie storage

* adxcgBidAdapter: updated backend protocol (#7750)

* adxcgBidAdapter: updated backend protocol

* adxcgBidAdapter: changed onBidWon from ajax() to triggerPixel()

Co-authored-by: dev adxcg.com <mark.vreg@gmail.com>

* Adnuntius Bid Adapter: no cookie feature. (#7768)

* Added option to pass a user id through ortb2.

* check if use cookie is present in config, and use it accordingly.

* Adding test for no cookie url addition.

* AdDefend Bidder: added gdprApplies to bid request parameters (#7782)

Co-authored-by: Mitschi <mitschi@addefend.com>

* fix usersync gdpr (#7785)

* Ventes Bid Adapter: fix web support and code maintenance (#7766)

* Ventes Avenues initial changes

* Ventes Avenues initial changes

* Support Web Placments

* Support Web Placements

* Support Web Placements

* Support Web Placements

* Support Web Placements

* Support Web Placements

* Support Web Placments

* Update for 'Adapters that may not handle GDPR-Applies correctly #7775' (#7788)

Co-authored-by: sgimenez <sergi.gimenez@richaudience.com>

* PBS Bid Adapter: do not pass aspectratios in ORTB2 ext data if native image definition doesn't have ratio_height/ratio_width (#7722)

* Prebid server adapter: do not pass aspectratios in ORTB2 ext data if native image definition does not have ratio_height/ratio_width

* Prebid server adapter: include all valid aspect ratios in ext.aspectratios

* NextMillennium Bid Adapter: refresh_count for adUnitCode is added (#7754)

* refresh count

* Update tests

Co-authored-by: mifanich <mihail.ivanchenko@nextmillennium.io>

* Handle consent case where GDPR doesn't apply (#7783)

* Colossus SSP Bidder Adapter: add onBidWon() (#7758)

* add video&native traffic colossus ssp

* Native obj validation

* Native obj validation #2

* Added size field in requests

* fixed test

* fix merge conflicts

* move to 3.0

* move to 3.0

* fix IE11 new URL issue

* fix IE11 new URL issue

* fix IE11 new URL issue

* https for 3.0

* add https test

* add ccp and schain features

* fix test

* sync with upstream, fix conflicts

* Update colossussspBidAdapter.js

remove commented code

* Update colossussspBidAdapter.js

lint fix

* identity extensions

* identity extensions

* fix

* fix

* fix

* fix

* fix

* add tests for user ids

* fix

* fix

* fix

* fix

* fix

* fix

* fix

* add gdpr support

* add gdpr support

* id5id support

* Update colossussspBidAdapter.js

add bidfloor parameter

* Update colossussspBidAdapter.js

check bidfloor

* Update colossussspBidAdapter.js

* Update colossussspBidAdapter.js

* Update colossussspBidAdapter.js

* Update colossussspBidAdapter_spec.js

* use floor module

* Revert "use floor module"

This reverts commit f0c5c248627567e669d8eed4f2bb9a26a857e2ad.

* use floor module

* update to 5v

* fix

* add uid2 and bidFloor support

* fix

* add pbadslot support

* fix conflicts

* add onBidWon

* refactor

* add test for onBidWon()

* fix

Co-authored-by: Vladislav Isaiko <vladis@smartyads.com>
Co-authored-by: Aiholkin <artem.iholkin@smartyads.com>
Co-authored-by: Mykhailo Yaremchuk <m.yaremchuk@smartyads.com>

* RTD Module: add 'onBidRequest' event handler for RTD submodules (#7729)

* RTD: Add 'onBidRequest' event handler for RTD submodules

https://github.com/prebid/Prebid.js/issues/7078

* RTD module: update documentation

* Prebid 6.3.0 Release (#7795)

* Increment pre version

* Improve Digital adapter: support for Google's additional consent (#7787)

* HBT-156: Added Google's additional consent (#1)

* HBT-156: Added Google's additional consent

* HBT-156: Code refactored

Co-authored-by: Faisal Islam <faisal.islam@vivacomsolutions.com>

* Update improvedigitalBidAdapter.js

Updated version

Co-authored-by: Samiul Amin Shanto <93644987+samiul-shanto@users.noreply.github.com>
Co-authored-by: Faisal Islam <faisal.islam@vivacomsolutions.com>

* CircleCi Config: change to npm ci in testing workf (#7732)

* Build system: improve build for development workflow (#7778)

* Build system: improve build for development workflow

This adds a "test-only" gulp task that runs only tests (without clean/lint) and makes the single-spec test environment consistent with the whole-suite case.

* Build system: remove tests from 'serve-fast' task; add 'serve-and-test' task

* update gpid / adslot logic (#7794)

* Pubx.ai Analytics Adapter: added additional fields to the Auction object (#7723)

* Update: Added additional fields to auction object

* Removed export from getStorage function

* Aniview Bid Adapter: add a new alias (#7807)

* Support new aniview bid adapter

* Support new aniview bid adapter

* Support new aniview bid adapter

* Support new aniview bid adapter

* Fix Consent parameters

* Update aniviewBidAdapter.js

V3 support

* Update aniviewBidAdapter.js

* Update aniviewBidAdapter.js

Update refererInfo

* Update aniviewBidAdapter.js

Fix tabs and spaces

* Update aniviewBidAdapter.js

fixes

* Update aniviewBidAdapter.js

* Update aniviewBidAdapter.js

Add ccpa support

* Update aniviewBidAdapter.js

Typo

* Update aniviewBidAdapter.js

* Update aniviewBidAdapter.js

* Fix size and sample

Fixed sizes from playerSize
Updated md sample

* Fix tabs

* Fix sizes

* Recheck

* Add tgt parameter

* Update sample

* Add support for cookie sync + tests

* Add support for cookie sync + tests

* Add support for cookie sync + tests

* Support aliases

Support aliases

* Update

Update

* Fix lint

Fix lint

* Update spec

Update spec

* Aniview Bid Adapter: Added the new alias

* Aniview Bid Adapter: Added the new configs for the renderer

* Aniview Bid Adapter: Added unit tests for the renderer

* Aniview Bid Adapter: Have added gvlid

* Aniview Bid Adapter: added meta.advertiserDomains to bidResponse and extended cookie sync logic

* Support BANNER mediaType

Support BANNER mediaType

* Aniview BANNER support

Fix spaces

* Aniview Bid Adapter: add a new alias and update the doc

* Aniview Bid Adapter: add a new alias

Co-authored-by: Itay Nave <itay@aniview.com>
Co-authored-by: Itay Nave <38345760+itaynave@users.noreply.github.com>

* TheMediaGrid, TrustX: fix sync url workflow (#7812)

* Added TheMediaGridNM Bid Adapter

* Updated required params for TheMediaGridNM Bid Adapter

* Update TheMediGridNM Bid Adapter

* Fix tests for TheMediaGridNM Bid Adapter

* Fixes after review for TheMediaGridNM Bid Adapter

* Add support of multi-format in TheMediaGrid Bid Adapter

* Update sync url for grid and gridNM Bid Adapters

* TheMediaGrid Bid Adapter: added keywords adUnit parameter

* Update TheMediaGrid Bid Adapter to support keywords from config

* Implement new request format for TheMediaGrid Bid Adapter

* Fix jwpseg params for TheMediaGrid Bid Adapter

* Update unit tests for The Media Grid Bid Adapter

* Fix typo in TheMediaGrid Bid Adapter

* Added test for jwTargeting in TheMediaGrid Bid Adapter

* The new request format was made by default in TheMediaGrid Bid Adapter

* Update userId format in ad request for TheMediaGrid Bid Adapter

* Added bidFloor parameter for TheMediaGrid Bid Adapter

* Fix for review TheMediaGrid Bid Adapter

* Support floorModule in TheMediaGrid Bid Adapter

* Fix empty bidfloor for TheMediaGrid Bid Adapter

* Some change to restart autotests

* Fix userIds format for TheMediaGrid Bid Adapter

* Remove digitrust userId from TheMediaGrid Bid Adapter

* Protocols was added in video section in ad request for TheMediaGrid Bid Adapter

* TheMediaGrid: fix trouble with alias using

* TheMediaGridNM: fix trouble with alias

* TheMediaGrid Bid Adapter: added support of PBAdSlot module

* TheMediaGrid Bid Adapter: fix typo

* GridNM Bid Adapter: use absent in params data from mediaTypes

* GridNM Bid Adapter: fix md file + add advertiserDomains support

* TheMediaGrid and gridNM Bid Adapter: minor netRevenue fixes

* gridNM Bid Adapter updates after review

* TheMediaGrid Bid Adapter: fix keywords workflow

* fix testing and kick off lgtm again

* TheMediaGrid: added ext.bidder.grid.demandSource processing

* TheMediaGrid: added user.id from fpd cookie

* TheMediaGrid: control cookie setting via bidder config

* TheMediaGrid: use localStorage instead cookie

* TheMediaGridNM Bid Adapter: update adapter to use /hbjson endpoint

* TheMediaGridNM: fix unnecessary conditions

* TheMediaGrid: fix bug with nurl field in response

* TheMediaGrid: update test

* TheMediaGridNM: fix possible bug with nurl

* TheMediaGrid: added alias as playwire

* TheMediaGrid: added alias as adlivetech

* TheMediaGrid: fix sync url workflow

* TrustX: fix sync url worflow + remove old syncurl

Co-authored-by: Chris Huie <phoenixtechnerd@gmail.com>

* Adomik Analytics Adapter: add key value pair (#7617)

* adomik/add_key_value

* adomik/add_key_value/spec

* Fix an issue when gdpr is undefined (#7817)

Co-authored-by: mifanich <mihail.ivanchenko@nextmillennium.io>

* Multiple Modules: fix constants JSON imports for webpack (#7800)

* Fix constants JSON imports

* kick off tests in circleci

* undo change

Co-authored-by: Chris Huie <phoenixtechnerd@gmail.com>

* Support for FPD (and ortb2 config) (#7802)

* Invibes Bid Adapter: support for custom domainId (#7797)

* Invibes Bid Adapter - support for custom domainId

* Invibes Bid Adapter - changes according to review

* Index Exchange adapter: Webpack v5 complain about named export from JSON modules (#7774)

* fix: Webpack v5 complain about named export from JSON modules

* Index Exchange Adapter: fix "Should not import the named export 'EVENTS'.'AUCTION_DEBUG' (imported as 'EVENTS') from default-exporting module (only default export is available soon)""

Co-authored-by: Javier Marín <contacto@ideatic.net>

* Support for new size (#7828)

* FeedAd Bid Adapter: add pass through of additional bid parameters (#7814)

* added file scaffold

* added isBidRequestValid implementation

* added local prototype of ad integration

* added implementation for placement ID validation

* fixed video context filter

* applied lint to feedad bid adapter

* added unit test for bid request validation

* added buildRequest unit test

* added unit tests for timeout and bid won callbacks

* updated bid request to FeedAd API

* added parsing of feedad api bid response

* added transmisison of tracking events to FeedAd Api

* code cleanup

* updated feedad unit tests for buildRequest method

* added unit tests for event tracking implementation

* added unit test for interpretResponse method

* added adapter documentation

* added dedicated feedad example page

* updated feedad adapter to use live system

* updated FeedAd adapter placement ID regex

* removed groups from FeedAd adapter placement ID regex

* removed dedicated feedad example page

* updated imports in FeedAd adapter file to use relative paths

* updated FeedAd adapter unit test to use sinon.useFakeXMLHttpRequest()

* added GDPR fields to the FeedAd bid request

* removed video from supported media types of the FeedAd adapter

* increased version code of FeedAd adapter to 1.0.2

* removed unnecessary check of bidder request

* fixed unit test testing for old FeedAd version

* removed video media type example from documentation file

* added gvlid to FeedAd adapter

* added decoration parameter to adapter documentation

* added pass through of additional bid parameters

* IX Bid Adapter: fix for infinite loop (#7805)

* ix infinite loop fix

* moved deviceaccess check

* changed auction debug event handler

Co-authored-by: Love Sharma <love.sharma@indexexchange.com>

* Daily Hunt Bid Adapter: update prebid compliance and add adapter back (#7755)

* version update 5.X

* test case for v5.X

* review points resolution

* dailyhunt bid adapter doc update

* indentention fixes

* re-commit for doc info

Co-authored-by: shivam.pradhan <shivam.pradhan@dailyhunt.in>

* Prebid Core: after auction is held, if more bids are matched by adUnitCode next apply filter for bidId (#7736)

* if more bids are matched, filter on bidId

* go with simpler approach

* Adkernel Bid Adapter: FPD module support (#7684)

* pubGENIUS bid adapter: update url (#7835)

* BEop Bid Adapter: fix page url in request params (#7811)

* [BEOP] Fix page url in request params

* Fix test

* Update auction.js (#7825)

* Compass Adapter: add new adapter (#7798)

* add Compass Adapter

* fix

* fix

* fix

* Prebid 6.4.0 Release (#7842)

Co-authored-by: Eric Harper <eharper@rubiconproject.com>

* Increment Pre Version (#7843)

Co-authored-by: Eric Harper <eharper@rubiconproject.com>

* GPT Pre Auction: New logic options - customPreAuction & useDefaultPreAuction (#7784)

* updated new logic

* no need to export

* missed a test update

* bidderFactory import path mistake (#7836)

An error occurs :
ERROR in ./node_modules/prebid.js/modules/bliinkBidAdapter.js 15:0-63
Module not found: Error: Can't resolve 'src/adapters/bidderFactory.js'

* check if top window can be accessed before getting data from it (#7841)

* Doceree bid adaptor: New GDPR related parameters (#7815)

* Update docereeBidAdapter.md

* Update docereeBidAdapter.js

* Update docereeBidAdapter.js

* Update docereeBidAdapter.md

* Function to check gdpr consent present

* Unit test case to check if gdpr consent present

* Update docereeBidAdapter_spec.js

* Fixed build errors

* Consent management module: allow auction to continue when CMP does not respond (#7769)

This reproduces the behavior of `allowAuctionWithoutConsent` when a TCFv2 CMP times out.
https://github.com/prebid/Prebid.js/issues/7156

* Loglylift Bid Adapter: add new bid adapter (#7761)

* make buildRequests

* remove useless code

* change ENDPOINTN_URL

* add spec test

* format code

* fix serverResponse

* add test

* add overview

* fix the bid adpter to adapt the actual response

* treat adspotId as integer

* add getUserSyncs

* add serverResponses.length > 0 on 'if' condition

* fix typo

* use test adspotId which has a test ad

* fix prebidJsVersion test

* adapt advertiserDomains

* addd GPID support (#7838)

Co-authored-by: Love Sharma <love.sharma@indexexchange.com>

* Limelight Bid Adapter: add field user id as eids to payload (#7858)

* Add userIdAsEids field

* Add tests userIdAsEids field

* kick off tests

Co-authored-by: dbelousov <dbelousov@lineate.com>
Co-authored-by: Chris Huie <phoenixtechnerd@gmail.com>

* Pass runner up bid from livewrapped wrapper (#7854)

* ZetaGlobal SSP Analytics Adapter: add new analytics adapter (#7790)

* Zeta Global SSP Analytics Adapter

* Trigger the build

* Trigger the build

* OptimeraRTD Module: Expose non-ad related data to the page. (#7849) (#7850)

* siteId to string (#7818)

Co-authored-by: Love Sharma <love.sharma@indexexchange.com>

* IX Bid Adapter: Add support for ID5, Lotame Panorama ID, Epsilon Publisher Link, Audigent Halo ID, SharedID (#7809)

* add id5, lotame panorama id, epsilon publink, audigent halo id

* add sharedId + diagnostics for pubProvidedId

Co-authored-by: Amy Yang <amy.yang@indexexchange.com>

* Prebid Core: mergeConfig and mergeBidderConfig functions (#7396)

* Finished mergeConfig and mergeBidderConfig functions with unit test coverage

* Added a unit test for array duplication edge case and modified mergeDeep

* Fixed LGTM alerts and merge conflicts

* Fixed readConfig export and package-lock

* Fixing tests

* Fixed circle ci errors

* restore package-lock file

* pull master package-lock file to untrack

* add globals for merge and mergeBidder

* renamed flag variable

Co-authored-by: Patrick Loughrey <ploughrey@rubiconproject.com>
Co-authored-by: Chris Huie <phoenixtechnerd@gmail.com>
Co-authored-by: bretg <bgorsline@gmail.com>

* Adyoulike bidder: improve robustness to multiple mediatypes (#7863)

* add required clickurl in every native adrequest

* allows the native response to be given as is to prebid if possible

* add unit tests on new Native case

* Handle meta object in bid response with default addomains array

* fix icon retrieval in Native case

* Update priorities in case of multiple mediatypes given

* improve robustness and fix associated unit test on picture urls

* add support for params.size parameter

* add unit test on new size format

* Makes sure the playerSize format is consistent

* enable Vast response on bidder adapter

* fix lint errors

* add test on Vast format case

* add userId to bidrequest

* revert package-lock.json changes

* improve multiple mediatype handling

* Ozone Bid Adapter: Support schain module (#7856)

* ozone 2.7.0 adapter updates

* ozone 2.7.0 - removed multiple-empty-lines to pass upstream circleci tests

* ozone 2.7.0 adapter bugfix - unused variable assignment

* ozone 2.7.0 - removed multiple-empty-lines to pass upstream circleci tests

* ozone 2.7.0 - typo fix

* ozone 2.7.0 - removed newline

Co-authored-by: Afsheen Bigdeli <afsheenb@namecast.net>

* Prebid 6.5.0 Release

* Increment pre version

* Logly Lift Bid Adapter_spec: Fix test (#7869)

Version changes as package.json does

* Bliink Bid Adapter: Add support gdprApplies when consent string does not exist (#7860)

* feat(adapter): Add bliink bid adapter

* feat(tests): Add tests unit file

* refactor: code optimisation and fix cookie sync

* fix(bliinkAdapter): get meta value

* update: Update documentation bliinkBidAdapter.md

* update: Fix sizes in buildBid function

* fix: step build

* Revert "fix: step build"

This reverts commit 9a746f5a175190ddd209f6f51bd71946a5575fe7.

* fix: step build

* fix: step build

* fix: step build

* fix: tests units

* fix: js doc

* fix: tests units

* fix: Fix build Circle CI

* fix: Fix build Circle CI

* fix: Fix build Circle CI

* fix: Fix build Circle CI

* fix: Fix build Circle CI

* fix: Fix build Circle CI

* fix: Fix build Circle CI

* fix: fix path when import registerBidder module

* Update bliinkBidAdapter.js

* fix: gdprApplies and consentString update

* fix: test units gdprApplies and consentString

Co-authored-by: Jonathan <jonathan@bliink.io>
Co-authored-by: samuel.kerboeuf <samuel@bliink.io>

* Fix prebid issue #7156 (#7876)

Co-authored-by: francesco <f.orazini@onetag.com>

* id Import Library: update with more params to capture email (#7772)

* Updating IdImportLibrary with more parameters to get email ids

* Updating IdImportLibrary with more parameters to get email ids

* Updating unit test for IdImportLibrary

Co-authored-by: skocheri <skocheri@rubiconproject.com>

* Adomik Analytics Adapter: update sampling (#7846)

* AdomikAnalyticsAdapter sampling

* kick off tests

Co-authored-by: Chris Huie <phoenixtechnerd@gmail.com>

* showheroes-bs Bid Adapter: refactoring + fix test (#7882)

* add ShowHeroes Adapter

* ShowHeroes adapter - expanded outstream support

* Revert "ShowHeroes adapter - expanded outstream support"

This reverts commit bfcdb913b52012b5afbf95a84956b906518a4b51.

* ShowHeroes adapter - expanded outstream support

* ShowHeroes adapter - fixes (#4222)

* ShowHeroes adapter - banner and outstream fixes (#4222)

* ShowHeroes adapter - description and outstream changes (#4222)

* ShowHeroes adapter - increase test coverage and small fix

* ShowHeroes Adapter - naming convention issue

* Mixed AdUnits declaration support

* ITDEV-4723 PrebidJS adapter support with SupplyChain module object

* ITDEV-4723 Fix tests

* ITDEV-4723 New entry point

* showheroes-bsBidAdapter: Add support for advertiserDomains

* showheroes-bsBidAdapter: hotfix for outstream render

* showheroes-bsBidAdapter: update renderer url

* showheroes-bsBidAdapter: use only the necessary fields from the gdprConsent

Co-authored-by: veranevera <vera.yukhina@showheroes.com>
Co-authored-by: Elizaveta Voziyanova <44549195+h2p4x8@users.noreply.github.com>

* Adquery ID System: add new ID module (#7852)

* added adqueryID module

* Adquery QID module - Added missing files and fixed test

Co-authored-by: m.czerwiak <marcin.czerwiak@azagroup.eu>

* OGURY ADAPTER - adding prebid.js and ogury adapter versions (#7891)

* RTBHouse Bid Adapter: add support to channel param (#7879)

* delete log (#7892)

* Richaudience Bid Adapter: add schain to endpoint payload (#7893)

Co-authored-by: sgimenez <sergi.gimenez@richaudience.com>

* PubMatic Analytics Adapter: add logging for "advertiser domain" (#7888)

* Changed net revenue to True

* Logging adomain in logger

* Handled with different variable names

* Changed string in double quotes to single quotes

Co-authored-by: Azhar <azhar@L1119.local>

* Criteo Id Module - Ensure that Criteo cookies are written only on TLD+1 domain (#7896)

* Update adkernelBidAdapter.js (#7894)

* Rise Bid Adapter: pass hp in supply schain (#7898)

* add Rise adapter

* fixes

* change param isOrg to org

* Rise adapter

* change email for rise

* fix circle failed

* bump

* bump

* bump

* remove space

* Upgrade Rise adapter to 5.0

* fixed schain hp parameter encode

* updated schain test

Co-authored-by: Noam Tzuberi <noam.tzuberi@ironsrc.com>
Co-authored-by: noamtzu <noamtzu@gmail.com>
Co-authored-by: Noam Tzuberi <noamtzu@users.noreply.github.com>
Co-authored-by: Laslo Chechur <laslo.chechur@ironsrc.com>
Co-authored-by: Inna Yaretsky <innay@ironsrc.com>

* Criteo - Bump version to 117 (#7901)

* Compass Adapter: update bid params (#7897)

* add Compass Adapter

* fix

* fix

* fix

* add endpointId

* RTD module: set targeting on onAuctionEnd event (#7877)

* Adding getAdUnitTargeting to the auctionEnd event. (#7871)

* Add test for RTD getAdUnitTargeting

Co-authored-by: mcallari <mike.callari@gmail.com>

* Improve Digital bid adapter: added support for cat and genre (#7899)

* Feature Prebid First Party Data (#2)

* HBT-166: Added PageCategory and Genre to request object from First-Party-Data

* HBT-166: Added PageCategory and Genre to request object from First-Party-Data and Rewrite Test Cases

* Update improvedigitalBidAdapter.js

Version increased

Co-authored-by: Faisal Islam <93644923+faisalvs@users.noreply.github.com>

* Welect Bid Adapter: update prebid compliance and add adapter back to master (#7776)

* readd welectBidAdapter

* readd test

* use es6 modules from utils

* Prebid Core: async submodule loading (#7861)

* async submodule loading

* add post install config

Co-authored-by: atkachov <atkachov@admixer.ua>

* Teads adapter: switch GPID logic to the new imp.ext.gpid field (#7903)

* Capture publisher-supplied first party data (#7833)

- Capture site and user level first party data
- Move bidder config params to unit-level to follow convention
- Remove account id (now captured within the placement id path)
- Remove demo flag (now enabled by setting demand source to 'demo')

Discussion that led to these changes: https://github.com/prebid/prebid.github.io/pull/3397

* creative comment injection spot reverted: (#7874)

- reverted injection point of creative comment to pre-PR 6860
- added code to reinject comment in case it was removed upon rendering

* Adman Bid Adapter: update getUserSyncs() (#7884)

* Add Adman bid adapter

* Add supportedMediaTypes property

* Update ADman Media bidder adapter

* Remove console.log

* Fix typo

* revert package-json.lock

* Delete package-lock.json

* back to original package-lock.json

* catch pbjs error

* catch pbjs error

* catch pbjs error

* log

* remove eu url

* remove eu url

* remove eu url

* remove eu url

* remove eu url

* Update admanBidAdapter.js

add consnet to sync url

* Update admanBidAdapter.js

fix import

* Update admanBidAdapter.js

lint fix

* Update admanBidAdapter.js

lint fix

* Update admanBidAdapter.js

check consent object data availability

* сompatible with prebid v5

* add Lotame Panorama ID

* update getUserSyncs

* fix

* fix tests

* remove package-lock.json

Co-authored-by: minoru katogi <mkatogi@gmail.com>
Co-authored-by: minoru katogi <m_katogi@hotmail.com>
Co-authored-by: ADman Media <admanmedia@users.noreply.github.com>
Co-authored-by: SmartyAdman <adman@localhost.localdomain>

* NextMillennium Bid Adapter: refresh_count variable moved to into ext (#7904)

* moved into ext

* added space

* updated test file with new refresh_count location

* Tappx Bid Adapter: fix adtypes bug (#7905)

* Tappx :: Adtypes bug :: solved

* Tappx ::Mimes param is not mandatory now

* Circle CI :: Aesthetic changes

* Test hotfix :: Mimes is not mandatory now

* Tappx :: Mimes is not longer mandatory

* Tappx :: Remove mimes references. Is not mandatory

Co-authored-by: Albert Grandes <agrandes@tappx.com>

* Prebid 6.6.0 Release

* increment pre version

* Kargo Bid Adapter: Fix issue with double-array for advertiserDomains (#7910)

* Fix issue with double-array for advertiserDomains

* Updated test to reflect correct advertiserDomains rray

* clickUrl to pull first advertiserDomain

* Colossus Bid Adapter: update bid params (#7907)

* add video&native traffic colossus ssp

* Native obj validation

* Native obj validation #2

* Added size field in requests

* fixed test

* fix merge conflicts

* move to 3.0

* move to 3.0

* fix IE11 new URL issue

* fix IE11 new URL issue

* fix IE11 new URL issue

* https for 3.0

* add https test

* add ccp and schain features

* fix test

* sync with upstream, fix conflicts

* Update colossussspBidAdapter.js

remove commented code

* Update colossussspBidAdapter.js

lint fix

* identity extensions

* identity extensions

* fix

* fix

* fix

* fix

* fix

* add tests for user ids

* fix

* fix

* fix

* fix

* fix

* fix

* fix

* add gdpr support

* add gdpr support

* id5id support

* Update colossussspBidAdapter.js

add bidfloor parameter

* Update colossussspBidAdapter.js

check bidfloor

* Update colossussspBidAdapter.js

* Update colossussspBidAdapter.js

* Update colossussspBidAdapter.js

* Update colossussspBidAdapter_spec.js

* use floor module

* Revert "use floor module"

This reverts commit f0c5c248627567e669d8eed4f2bb9a26a857e2ad.

* use floor module

* update to 5v

* fix

* add uid2 and bidFloor support

* fix

* add pbadslot support

* fix conflicts

* add onBidWon

* refactor

* add test for onBidWon()

* fix

* add group_id

* Trigger circleci

Co-authored-by: Vladislav Isaiko <vladis@smartyads.com>
Co-authored-by: Aiholkin <artem.iholkin@smartyads.com>
Co-authored-by: Mykhailo Yaremchuk <m.yaremchuk@smartyads.com>

* Prebid Core: fix typeerror from reading properties of undefined ('getSlotElementId') (#7890)

* fix: Webpack v5 complain about named export from JSON modules

* Index Exchange Adapter: fix "Should not import the named export 'EVENTS'.'AUCTION_DEBUG' (imported as 'EVENTS') from default-exporting module (only default export is available soon)""

* fix: Uncaught TypeError: Cannot read properties of undefined (reading 'getSlotElementId')

* fix: Uncaught TypeError: Cannot read properties of undefined (reading 'getSlotElementId')

Co-authored-by: Javier Marín <contacto@ideatic.net>

* Gumgum Bid Adapter: fix failing test (#7913)

* Gumgum - ADTS-174-Fix-failing-Prebid-JS-test

* removed extra line to fix lint issue

Co-authored-by: John Bauzon <john.bauzon@gumgum.com>

* Sharethrough Bid Adapter: Add First Party Data and Outstream Support (#7857)

* [PGE-178206477] Ingest First Party Data and send to Ad Server

* Use nullish

* [PGE-178206515] Allow outstream video

* Fix ortb2 usage in specs

* seeding Alliance Bid Adapter: no bids and netRevenue bugfix (#7919)

* add seedingAlliance Adapter

* add two native default params

* ...

* ...

* seedingAlliance Adapter: add two more default native params

* updating seedingAlliance Adapter

* seedingAlliance Adapter

* quickfix no bids + net revenue

Co-authored-by: Jonas Hilsen <hilsen@seeding-alliance.de>

* AdHash Bidder Adapter: minor changes (#7920)

We're operating on a com TLD now.
Added publisher in URL for easier routing.

* AdbookPSP adapter updated with support of multiple Private Auction GAM Orders (#7924)

Co-authored-by: Ankur <ankur.p@isocrates.com>

* Synacormedia bid adapter: add support for floors module (#7682)

* issue 6465 add support for floors module

* issue 6465 fix typo

Co-authored-by: rajkumar.natarajan <rajkumar.natarajan@synacor.com>

* RTD module: log submodules on init (#7922)

Addresses https://github.com/prebid/Prebid.js/issues/7883

* Colossus Bid Adapter: fix validator (#7926)

* add video&native traffic colossus ssp

* Native obj validation

* Native obj validation #2

* Added size field in requests

* fixed test

* fix merge conflicts

* move to 3.0

* move to 3.0

* fix IE11 new URL issue

* fix IE11 new URL issue

* fix IE11 new URL issue

* https for 3.0

* add https test

* add ccp and schain features

* fix test

* sync with upstream, fix conflicts

* Update colossussspBidAdapter.js

remove commented code

* Update colossussspBidAdapter.js

lint fix

* identity extensions

* identity extensions

* fix

* fix

* fix

* fix

* fix

* add tests for user ids

* fix

* fix

* fix

* fix

* fix

* fix

* fix

* add gdpr support

* add gdpr support

* id5id support

* Update colossussspBidAdapter.js

add bidfloor parameter

* Update colossussspBidAdapter.js

check bidfloor

* Update colossussspBidAdapter.js

* Update colossussspBidAdapter.js

* Update colossussspBidAdapter.js

* Update colossussspBidAdapter_spec.js

* use floor module

* Revert "use floor module"

This reverts commit f0c5c248627567e669d8eed4f2bb9a26a857e2ad.

* use floor module

* update to 5v

* fix

* add uid2 and bidFloor support

* fix

* add pbadslot support

* fix conflicts

* add onBidWon

* refactor

* add test for onBidWon()

* fix

* add group_id

* Trigger circleci

* fix

Co-authored-by: Vladislav Isaiko <vladis@smartyads.com>
Co-authored-by: Aiholkin <artem.iholkin@smartyads.com>
Co-authored-by: Mykhailo Yaremchuk <m.yaremchuk@smartyads.com>

* Integration examples: update the AMP creative (#7911)

* fixing the AMP creative

There's no way the original version of this ever worked. AMP requires calling out to Prebid Cache. The original example was calling for Prebid.js, which isn't present in an AMP environment. 

I just copied the instructions at https://docs.prebid.org/adops/setting-up-prebid-for-amp-in-dfp.html

* added quotes

* Generic viewability module: add new module (#7643)

* - custom viewability core

* - IntersectionObserver implementation

* - support different type of trackers

* - viewability tests wip

* - increase test coverage for viewability

* - move viewability module js

* - remove uneccesary changes

* - allow uncomplete observers to be registered again

* - import explicitly from utils

* - add viewability.md

* - add module name to log messages

* update for higher legibility

* change maintainer email (#7930)

* Compass Adapter: fix validator (#7931)

* add Compass Adapter

* fix

* fix

* fix

* add endpointId

* fix

* RTD module: allow submodules to setBidRequestData without `waitForIt` (#7862)

This change allows all RTD submodules at least one shot to see the `setBidRequestData` hook even if they are not flagged `waitForIt` (previously they would not be run at all in some cases).

Addresses https://github.com/prebid/Prebid.js/issues/7117

* Pilotx Bid Adapter: add new bid adapter (#7816)

* adding pilotx bid adapter and tests

* removing commented code

* appending review changes

Co-authored-by: AnthonyBoozan <tony@pilotx.tv>

* handle weird advertiserDomain scenarios (#7908)

* Gnet Bid Adapter: Change endpoint and add parameter (#7934)

* Add files via upload

* Add files via upload

* Change params on gnetBidder

* ADJ - Use parseSizesInput to get sizes
ADJ - Check serverResponse object
ADJ - Remove getUserSyncs function

* ADJ - Change prebid endpoint

* ADJ - Change endpoint on test

* GnetBidAdapter update for Prebid 5.x

* Change endpoint and add parameter

* import only used function from utils

Co-authored-by: Roberto Hsu Wu <hsuroberto@gmail.com>
Co-authored-by: Roberto Hsu <roberto.wu@grumft.com>
Co-authored-by: Denise Balesteros Silva <denise.balesteros@grumft.com>

* JwPlayer RTD module: Write to oRTB content segments (#7886)

* adds example code

* enriches the ortb2 object

* resolves build errors

* tests content id and data getters

* respects data integrity

* updates documentation

* Prebid 6.7 Release

* Increment pre version

* Prebid core & currency module: fix race condition on slow fetch of currency conversion file (#7851)

The currency module hooks into the auction's `addBidResponse` flow to modify bid responses with currency info. To do this it needs to fetch conversion rates from the network, but the auction expects `addBidResponse` to complete synchronously, and things break down if all bidder network calls complete before the currency file fetch.

This fix allows the `addBidResponse` hook to return a promise. If it does, the auction will wait for it before ending.

Addresses https://github.com/prebid/Prebid.js/issues/7765

* Brandmetrics RTD Module: add new RTD module (#7756)

* First version of brandmetrics RTD- module

* Implement brandmetricsRtdProvider

* Add gdpr and usp consent- checks

* Add user- consent related tests

* Set targeting keys in a more generic way

* Test- logic updates

* Criteo - Add schain support (#7940)

* updates for Prebid v5 (#7878)

* Adagio: remove referrer. reachedTop validation (#7939)

* Gumgum - ADTS-175 Support multiple GG params (#7932)

* Expose vendor ID for TCFv2 enforcement (#7927)

Co-authored-by: slimkrazy <sam@slimkrazy.com>

* displayio bid adapter, tests, doc (#7906)

Co-authored-by: Anna Philippova <annyphilippova@gmail.com>

* Core: fix pbjs.validateAdUnitPos() to handle 0 value (#7944)

Ortb2 spec uses the value `0` for "unknow" position.

* Sovrn Bid Adaptter: add video to Sovrn adapter (#7929)

* Add video to Sovrn adapter

* Update sovrnBidAdapter.js

* Update sovrnBidAdapter.md

* Update sovrnBidAdapter.md

Co-authored-by: Maxim Pakhomov <70204615+maximpakhomov@users.noreply.github.com>

* Undertone bid adapter: support for floors module (#7914)

* * Update undertone adapter - change parameters - placementId parameter is now optional and not mandatory - undertoneBidAdapter.js

* Updated undertone bid adapter tests accordingly - undertoneBidAdapter_spec.js

* * Update undertone adapter - change parameters - placementId parameter is now optional and not mandatory - undertoneBidAdapter.js

 * Updated undertone bid adapter tests accordingly - undertoneBidAdapter_spec.js

* fix lint issue in undertone adapter spec

* added user sync function to undertone adapter

* * Update undertone adapter - change parameters - placementId parameter is now optional and not mandatory - undertoneBidAdapter.js

* Updated undertone bid adapter tests accordingly - undertoneBidAdapter_spec.js

* added user sync function to undertone adapter

* added user sync function to undertone adapter

* revert package-lock.json

* added user sync function to undertone adapter

* Update undertoneBidAdapter.js

* Update browsers.json

* bidfloor support

* package-lock.json master

* bidfloor support

Co-authored-by: omerko <omer.koren@perion.com>
Co-authored-by: Omer Koren <omerko@users.noreply.github.com>
Co-authored-by: AnnaPerion <annat@perion.com>
Co-authored-by: Oran Hollaender <oran@perion.com>
Co-authored-by: tamirnPerion <44399211+tamirnPerion@users.noreply.github.com>

* InteractiveOffers - New fields and remap on the internal object (#7946)

* appnexus bid adapter - add support for auction level keywords (#7951)

* Prebid core: accept and propagate AD_RENDER_FAILED / AD_RENDER_SUCCEEDED events from cross-origin ads (#7917)

* Prebid core: accept and propagate AD_RENDER_FAILED / AD_RENDER_SUCCEEDED events from cross-origin ads

This adds a new type of cross-origin message ('Prebid Event') to allow PUC and other cross-origin renderings to correctly report rendering result, and generates the appropriate events.

Addresses https://github.com/prebid/Prebid.js/issues/7702

Related PUC changes: https://github.com/prebid/prebid-universal-creative/pull/152
Documentation changes TBD

* Emit AD_RENDER_FAILED on x-origin communication errors

* Do not consider bid won if x-origin render fails

* Cleanup (address https://github.com/prebid/Prebid.js/pull/7917#pullrequestreview-856914369)

* Prebid 6.8.0 Release

* Increment pre version

* LunamediaHB Bid Adapter: add user syncs (#7950)

* initial

* initial

* initial

* Update lunamediahbBidAdapter.js

Define traffic type by mediatype property

* Update lunamediahbBidAdapter.md

Remove unnecessary parameter

* Update lunamediahbBidAdapter_spec.js

Test for usage of mediatype for traffic definition

* Update lunamediahbBidAdapter.md

* Update lunamediahbBidAdapter.js

fix native parse

* Update lunamediahbBidAdapter_spec.js

* rever native changes

* remove traffic param

* remove traffic param

* remove traffic param

* add video context handling

* add video context handling

* add userSync

* fix

* fix

Co-authored-by: Aiholkin <artem.iholkin@smartyads.com>

* Improve Digital COPPA support (#7948)

Co-authored-by: Samiul Amin Shanto <93644987+samiul-shanto@users.noreply.github.com>

* pass along the order which bidders were called (#7947)

* feat: add aseal bid adapter and test (#7937)

* Richaudience Bid Adapter: uncaught error on non-gdpr locations #7955 (#7962)

Co-authored-by: sgimenez <sergi.gimenez@richaudience.com>

* 'Ogury Bid Adapter: adding location to bid timeout tracks (#7961)

* Weborama RTD submodule: add support to more bid adapters (#7912)

* update .submodules.json to include weborama rtd

update .submodules.json to include weborama rtd submodule

* add support to pubmatic

* improve test format

* improve test format ~

* add support to appnexus/xandr bidder

* fix issue when split set target in two steps: site and user centric data

* add support to rubicon old style

* fix code, update docs

* add support to global and bid ortb2

* remove unused code

* refactor code

* update bidder list

* add global level parameters

* change error to warning

* update doc

* refactor

* add field accountId

* update example

* refactor js concat string

* refactor js concat string 2

* update jsdoc

* correct jsdoc

* add support to pubmatic

* improve test format

* improve test format ~

* add support to appnexus/xandr bidder

* fix issue when split set target in two steps: site and user centric data

* add support to rubicon old style

* fix code, update docs

* add support to global and bid ortb2

* remove unused code

* refactor code

* update bidder list

* add global level parameters

* change error to warning

* update doc

* refactor

* add field accountId

* update example

* refactor js concat string

* refactor js concat string 2

* update jsdoc

* correct jsdoc

* fix log

* update example

* remove todo

* refactor duplicated code in config normalization

* fix jsdoc

* add onData callback

* add unit tests and update docs

* fix doc

* protect onData callback and refactor code

* add new fields

* fix condition

* Prebid Core: refactor bidderSettings to have only one entry point (#7712)

* Refactor bidderSettings to have only one entry point

Add thin wrapper around `$$PREBID_GLOBAL$$.bidderSettings` that reduces some duplicate logic around fallback to `bidderSettings.standard`

* Do not return direct reference to a global array

* Fix bug where result of auction.js/getPriceByGranularity would ignore per-bid granularity after the first call

* Remove redundant utils.deepMerge, move utils unit tests

* Attempt to trick codacy into being a little less helpful

* Use class syntax

* Remove caching of standard adServerTargeting

* Convert recent 'allowZeroCpmBids' to new bidderSettings api

* ogury-adapter: fix some check conditions - US/non-GDPR issue (#7967)

* Conversant adapter support for first party data through the ortb2 and ortb2Imp options (#7966)

* Prebid core: accept MessageChannel communication from cross-origin creatives (#7953)

Accept MessageChannel ports from cross-origin creatives to allow communication with frames behind opaque origins

Addresses https://github.com/prebid/Prebid.js/issues/7870

* PBjs Core - Adloader : add brandmetrics module to approved external js- loaders (#7949)

* First version of brandmetrics RTD- module

* Implement brandmetricsRtdProvider

* Add gdpr and usp consent- checks

* Add user- consent related tests

* Set targeting keys in a more generic way

* Test- logic updates

* Add brandmetrics to approved external js- loaders

* Rise Bid Adapter: support onbid won (#7958)

* add Rise adapter

* fixes

* change param isOrg to org

* Rise adapter

* change email for rise

* fix circle failed

* bump

* bump

* bump

* remove space

* Upgrade Rise adapter to 5.0

* add onBidWon event

* nurl

* add test

* eslint

* fix corcle

* fix circle

* fix

Co-authored-by: Noam Tzuberi <noam.tzuberi@ironsrc.com>
Co-authored-by: Laslo Chechur <laslo.chechur@ironsrc.com>

* Prebid 6.9.0 Release

* Increment pre version

* Hadron Id Submodule: initial release & deprecate Halo Id submodule (#7938)

* rename audigent halo to hadron

* revert package-lock changes

* re-add halo modules for continuity til Prebid 7 deprecation

* revert SSP adapter changes, add halo RTD test

* remove hadron refs from ssp tests

* add contact blurb

* pull hadron from ix bid adapter

* pull hadron from tappx test

* re-add halo id system spec

* Trustpid User ID Module: initial release (#7945)

* feature: Add trustpid user id module

* refactor: Update trustpidSystem module, comments and md file

* refactor: Update trustpidSystem file to handle domain setting regardless of message events

* refactor: Update trustpidSystem module and dependent tests and docs

* refactor: Update trustpid undefined checks and returns

* tests: Update trustpid tests

* docs: Update trustpid docs typo

* refactor: Update trustpid module with storage and logging utils. Adjust tests.

Co-authored-by: Tomasz Januszek <tomasz@teavaro.com>

* Update malltvBidAdapter.md (#7973)

Changing maintainer of bid adapter

* YieldOne Bid Adapter: add IMID support. (#7982)

* PubMatic Bid Adapter : Added support for considering video params from mediaTypes object of Bid (#7980)

* Changed net revenue to True

* Checking for video params in mediaTypes obj of bid

* Added addiotional check for mediaTypes

* Added test cases

Co-authored-by: Azhar <azhar@L1119.local>

* Multiple Adapters & Modules: replace corejs polyfills with simpler stubs (#7942)

* Replace core-js polyfills with simpler stubs

* Update allowedModules / validateImports

* Move stubs to their own package to keep npm imports working without changes

* Vibrant Media Bid Adapter: add new bid adapter (#7824)

* Fluct Bid Adapter: ie polyfill 4 url search params

* more specific import

* see if corejs is white listed

* update to pure core js

* update link

* change format

* add to whitelist

* fix path to web

* add features path

* update path

* drop web in path

* fix path

* try again

* update to root

* Preliminary draft of Vibrant Prebid Adapter

* Refactoring to conform to Prebid.js data structures; Added "bid timeout" and "bid won" handlers

* Added prebid server response parser; Improved request checks; Improved test data in readme; Added URL to data passed to the server; Added tests

* Improved handling of URL sent to the server

* Removed getUserSyncs function (not needed yet); Added support for sizes property outside mediaTypes object; Added mediaSizes property support for video mdias type; Corrected readme ad unit and request examples;

* Added support for native; Added native tests; Cleaned up TODOs and logging

* Corrected prebid service URL and default currency; Bid request transformer now more resilient to different request formats; Added native ad unit to example prebid service request in the readme; Added and improved unit tests

* Removed overly-restrictive ad unit size requirements

* Updated adapter to allow a list of bids; Coding standards improvements

* Major changes to reflect the server now returning data in largely the Prebid structure; Simplified augmenting ad bids with additional required data. (Four tests fail; video renderer still a work in progress)

* Updated render (still work in progress); Fixed failing tests

* Corrected the prebid endpoint

* Removed unnecessary custom video renderer

* Added 'test-' to start of test ad unit codes

* Tweaked example in readme

* Removed debug lines and data; Code clean-up

* Improved description and corrected contact email in readme

* Updated example ad requests in the readme

* Final version of readme example; Improved bid request transform in adapter

* Resolved issues with code style and tests; Reverted package-lock

* Fixed missing comma in allowed modules array

* Fixed failing tests

* Resolved issues with code style and tests; Reverted package-lock

* Fix: Bidder code does not match adapter name

* Added USP consent support

* Changes to clarify company name

Co-authored-by: Chris Huie <phoenixtechnerd@gmail.com>

* sspBC Bid Adapter: improvee native support , matching site/placement, & other maintenance (#7963)

* Update tests for sspBC adapter

Update tests for sspBC adapter:
- change userSync test (due to tcf param appended in v4.6)
- add tests for onBidWon and onTimeout

* [sspbc-adapter] 5.3 updates: content-type for notifications

* [sspbc-adapter] pass CTA to native bid

* [sspbc-5.3] keep pbsize for detected adunits

* [sspbc-5.3] increment adaptor ver

* [sspbc-adapter] maintenance update to sspBCBidAdapter

* remove yarn.lock

* Delete package-lock.json

* remove package-lock.jsonfrom pull request

* [sspbc-adapter] send pageViewId in request

* [sspbc-adapter] update pageViewId test

* [sspbc-adapter] add viewabiility tracker to native ads

* [sspbc-adapter] add support for bid.admNative property

* [sspbc-adapter] ensure that placement id length is always 3 (improves matching response to request)

* [sspbc-adapter] read publisher id and custom ad label, then send them to banner creative

* [sspbc-adapter] adlabel and pubid are set as empty strings, if not present in bid response

* [sspbc-adapter] jstracker data fix

* [sspbc-adapter] jstracker data fix

* [sspbc-adapter] send tagid in notifications

* [sspbc-adapter] add gvlid to spec; prepare getUserSyncs for iframe + image sync

* [sspbc-adapter] fix notification payload

* [sspbc-adapter] fix notification payload, fix tests

* [sspbc-adapter] add userIds to ortb request

* [sspbc-adapter] update to 4.1, change request to be ortb 2.6 compliant

* [sspbc-adapter] update tests

Co-authored-by: Wojciech Biały <wb@WojciechBialy.local>

* Bump log4js from 6.3.0 to 6.4.1 (#7988)

Bumps [log4js](https://github.com/log4js-node/log4js-node) from 6.3.0 to 6.4.1.
- [Release notes](https://github.com/log4js-node/log4js-node/releases)
- [Changelog](https://github.com/log4js-node/log4js-node/blob/master/CHANGELOG.md)
- [Commits](https://github.com/log4js-node/log4js-node/compare/v6.3.0...v6.4.1)

---
updated-dependencies:
- dependency-name: log4js
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Bump shelljs from 0.8.4 to 0.8.5 (#7987)

Bumps [shelljs](https://github.com/shelljs/shelljs) from 0.8.4 to 0.8.5.
- [Release notes](https://github.com/shelljs/shelljs/releases)
- [Changelog](https://github.com/shelljs/shelljs/blob/master/CHANGELOG.md)
- [Commits](https://github.com/shelljs/shelljs/compare/v0.8.4...v0.8.5)

---
updated-dependencies:
- dependency-name: shelljs
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Bump trim-off-newlines from 1.0.1 to 1.0.3 (#7986)

Bumps [trim-off-newlines](https://github.com/stevemao/trim-off-newlines) from 1.0.1 to 1.0.3.
- [Release notes](https://github.com/stevemao/trim-off-newlines/releases)
- [Commits](https://github.com/stevemao/trim-off-newlines/compare/v1.0.1...v1.0.3)

---
updated-dependencies:
- dependency-name: trim-off-newlines
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Bump cached-path-relative from 1.0.2 to 1.1.0 (#7979)

Bumps [cached-path-relative](https://github.com/ashaffer/cached-path-relative) from 1.0.2 to 1.1.0.
- [Release notes](https://github.com/ashaffer/cached-path-relative/releases)
- [Commits](https://github.com/ashaffer/cached-path-relative/commits)

---
updated-dependencies:
- dependency-name: cached-path-relative
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Update nextMillenniumBidAdapter.js (#7972)

Fixed an error that occurred if one of the intermediate objects response.body.ext.responsetimemillis is missing

* DSPx adapter: add pbver, pref, mediatypes, pcode (#7964)

Co-authored-by: Alexander <avj83@list.ru>

* add a configurable "bidCacheFilterFunction" (#7993)

* add a configurable "bidCacheFilterFunction" to determine whether to use a cached bid

* tiny != changed to !==

Co-authored-by: Eric Harper <eharper@rubiconproject.com>

* [SPY-10745] fixing value for 'at' ad request field for first price model (#7996)

* Mediasquare Adapter - add gvlid (#7970)

* PBS Adapter: allow "extra" bids that are not tied to any request (#7885)

* Explicitly import / setup PBS adapter test dependencies

* Allow "unknown" bidders inside PBS adapter

* Remove code duplication around processNativeAdUnitParams

* Add transactionId to bid response; make requestId optional

* Remove call to bidFactory#createBid from Telaria bid adapter

* Auction index

* Convert bid response validaton to use auctionIndex

* WIP: allow auction to work with optional bid requests (missing - fix pbjs_api_spec.js)

* Allow auction to work with optional requestId

* Remove getBidderRequest

* Mass adapter

* Fix priceFloors for optional requestId

* Add s2sConfig.allowUnknownBidderCodes toggle

* Fix lint

* Fix lint

* Fix use of auction.getProperties (use getAuctionStart instead)

* Fix lint

* Fix LGTM alert

* Adnuntius Bid Adapter: update on no cookies parameter (#7875)

* Added option to pass a user id through ortb2.

* RTD provider added.

* check if use cookie is present in config, and use it accordingly.

* Adding test for no cookie url addition.

* Adnuntius RTD Provider tests added

* Adnuntius RTD Module

* Removed adnuntius RTD provider from this pull request.

* Fix error

* Adnuntius rtd provider: initial release (#7902)

* Added option to pass a user id through ortb2.

* RTD provider a…
@patmmccann
Copy link
Collaborator

Work on this is now complete and just awaiting the next puc release

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
6 participants