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

merge from prebid/prebid.js #2

Merged
merged 111 commits into from
May 26, 2021
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
111 commits
Select commit Hold shift + click to select a range
d9a7801
Spread adUnit.ortb2Imp.ext into imp object (#6494)
muuki88 Apr 29, 2021
9896409
appnexus bid adapter - ensure withCredentials is always passed (#6675)
jsnellbaker Apr 29, 2021
e206244
Axonix Bid Adapter: Fixed interpretResponse, support email (#6667)
cesarfd Apr 29, 2021
e93f455
Smartico Bid Adapter: add new bid adapter (#6486)
cs83 Apr 30, 2021
98dea2d
Interactive Offers Bid Adapter: add data to response object (#6680)
IOTiagoFaria Apr 30, 2021
51a69a2
remove space from spread operator
ChrisHuie Apr 30, 2021
43a5dc7
revert accidental commit to master
ChrisHuie Apr 30, 2021
3b9f184
Adkernel & AdkernelAdn: bidfloor module support (#6671)
ckbo3hrk Apr 30, 2021
4e5dda2
Update to change analytics flag from array to object (#6681)
mmoschovas Apr 30, 2021
22eacd9
support meta.advertiserDomains in bridgewell adpter (#6686)
rigelbibi May 3, 2021
67d8722
DMD ID System: add new User ID module (#6666)
boppudikarthikc May 3, 2021
1778504
appnexus Bid Adapter - add support for gptPreAuction (#6688)
jsnellbaker May 3, 2021
cf5b060
SharedId & PubcommonId: CCPA and COPPA support (#6632)
SKOCHERI May 3, 2021
9300d25
AppNexus bid adapter: add price floor module support (#6653)
jsnellbaker May 3, 2021
2e7209a
display bidder in utils.logs and disable bidder config on auction end…
snapwich May 3, 2021
a887289
add X-Prebid header to ajax requests fixes #6627 (#6676)
snapwich May 3, 2021
a14175a
Prebid Docs: Typo fix in README.md (#6704)
GLStephen May 5, 2021
93b3fd9
Revert "add X-Prebid header to ajax requests fixes #6627 (#6676)" (#6…
patmmccann May 5, 2021
70ce8ac
Criteo Bid Adapter: update contact email (#6701)
leonardlabat May 5, 2021
446931c
Fixing flaky adapter unit tests (#6706)
robertrmartinez May 5, 2021
7b16aac
Floc Userid System: add new ID module (#6521)
SKOCHERI May 5, 2021
017f630
Zeta Bid Adapter: update to endpoint (#6697)
mwehr-zeta May 5, 2021
62b2f76
prebid 4.38.0 release
mkendall07 May 5, 2021
b2cbab4
4.39.0-pre
mkendall07 May 5, 2021
4166329
Adkernel Bid Adapter: converge digital alias (#6714)
ckbo3hrk May 6, 2021
70ba6cb
fix linting in gulpfile (#6694)
mxdvl May 6, 2021
05abc0a
Admixer Bid Adapter: add meta key to response (#6674)
AdmixerTech May 6, 2021
87ff2b8
Grid Bid Adapter: add support for advertiserDomains (#6716)
patmmccann May 6, 2021
ed20b83
33across bid adapter: Add adomain support (#6719)
carlosfelix May 6, 2021
98695bb
Fix typo in UID 2.0 doc (#6724)
dlackty May 7, 2021
68620eb
Bump url-parse from 1.4.7 to 1.5.0 (#6718)
dependabot[bot] May 7, 2021
b44f1ca
smartx Bid Adapter: bugfix renderer url (#6725)
Skylinar May 7, 2021
7c0c72e
Bump handlebars from 4.7.6 to 4.7.7 (#6717)
dependabot[bot] May 7, 2021
6797935
Tappx Bid Adapter: add floor module support (#6626)
prebidtappx May 7, 2021
d7a7f1b
Undertone, Unruly, Concert, Adform: stub support for advertiserDomain…
patmmccann May 8, 2021
b196ea5
Bump hosted-git-info from 2.8.8 to 2.8.9 (#6728)
dependabot[bot] May 9, 2021
701959e
VIS.X: add instream video support (#6687)
mk0x9 May 10, 2021
6f732e0
move reading and writing of the consent string hash for the user id m…
smenzer May 10, 2021
e04ed88
Bright Mountain Media Bid Adapter: add video support and refactor (#6…
May 10, 2021
8fff6c1
RTB House Bid Adapter: updated supply chain support, included floor m…
rtbh-lotani May 10, 2021
ca100f4
ParrableIdSystem : Store third-party cookie support status in first-p…
icflournoy May 10, 2021
a8dbc0d
Bump lodash from 4.17.19 to 4.17.21 (#6722)
dependabot[bot] May 10, 2021
5a73bb2
ViewDeos: add gvlid (#6737)
GeneGenie May 11, 2021
5e69152
Revert "ParrableIdSystem : Store third-party cookie support status in…
ChrisHuie May 11, 2021
848c892
Eplanning Bid Adapter: add eids (#6732)
fndigrazia May 11, 2021
54f3137
Adkernel: alias for adomega network (#6739)
ckbo3hrk May 11, 2021
bcfe1fa
Update to move fpd data matching from taxonomyname to segtax values (…
mmoschovas May 12, 2021
c3813fd
Qwarry Bid Adapter: remove gdpr field from request (#6746)
pro-nsk May 12, 2021
9da0c01
Halo RTD Module: add publisher params to RTD request (#6742)
May 12, 2021
8790da9
Prebid Core: Remove size check on native icons and image assets (#6678)
guiann May 12, 2021
f9272fc
Prebid Server Bid Adapter: Bugfix for not taking defaultVendor enable…
robertrmartinez May 12, 2021
f999c0d
Prebid 4.39.0 Release
jsnellbaker May 12, 2021
5215ade
increment pre version
jsnellbaker May 12, 2021
b132a4b
Beachfront Bid Adapter: add schain support (#6751)
jsalis May 13, 2021
7369078
fix: Webpack v5 complain about named export from JSON modules (#6755)
javiermarinros May 13, 2021
752e0c2
Pbs bid adapter: constants import styling for webpack v5 upgrade (#6723)
khatibda May 13, 2021
3f02a15
First Party Data module: Add new module and two submodules to populat…
mmoschovas May 13, 2021
2b8f888
Datablocks bid adapter: update adapter to conform to new bid server's…
htang555 May 14, 2021
78a00fd
Update to videoCache to include auction Id in vasttrack payload (#6757)
mmoschovas May 14, 2021
3c5ce3e
Revert "Datablocks bid adapter: update adapter to conform to new bid …
ChrisHuie May 14, 2021
4e61f9d
clarify dependency on global rtdModule (#6759)
mxdvl May 14, 2021
e533e1b
Update to PBS bid adapter for video bids, pass along w and h respecti…
mmoschovas May 14, 2021
ea6d7d6
Sovrn and Sharethrough Bid Adapters: support for advertiserDomains (#…
patmmccann May 14, 2021
3d37668
ucfunnel Bid Adapter: add support for FLoC and Verizon Media ConnectI…
jackhsiehucf May 17, 2021
9c0a4bf
Permutive Rtd Submodule: register submodule in submodules list (#6768)
mxdvl May 17, 2021
eaad22d
Beachfront Bid Adapter: update beachfront example docs (#6774)
jsalis May 17, 2021
5931336
Eplanning Bid Adapter: Adjust endpoint parameter formatting (#6772)
fndigrazia May 17, 2021
a9232fd
Beachfront Bid Adapter: add Unified ID 2.0 support (#6770)
jsalis May 17, 2021
5aec920
appnexus bid adapter - create stub for meta.advertiserDomains (#6753)
jsnellbaker May 17, 2021
4d90d7a
Conversant adapter - picks up additional params from mediaTypes.video…
pycnvr May 17, 2021
d2195ca
Relaido Adapter : size of the banner is checked and the banner can be…
relaido May 18, 2021
6c6affe
ZetaSspBidAdapter fix typo (#6777)
asurovenko-zeta May 18, 2021
e92009d
Adagio Bid Adapter: handle meta.advertiserDomains (and more) (#6781)
osazos May 18, 2021
3b6442e
PubMatic Adapter: add support for FloCID (#6749)
pm-shashank-jain May 18, 2021
4319b59
TrustX Bid Adapter: added additional sync url (#6771)
PWyrembak May 18, 2021
c198fa7
Bucksense Bid Adapter: add adomain to adapter (#6779)
bkse-stefanodechicchis May 18, 2021
0c8a308
Update to PBS Bid Adapter and RP Bid Adapter to pass PBJS version in …
mmoschovas May 18, 2021
ff72a3d
AOL Bid Adapter: Remove client side support for already deprecated en…
patmmccann May 18, 2021
5fb4041
tappx Bid Adapter: update isBidRequestValid and fix request url (#6761)
prebidtappx May 19, 2021
a5b5083
Qwarry Bid Adapter: add sizes (#6787)
pro-nsk May 19, 2021
c346322
Medianet bid adapter: floor module support (#6713)
c3p-0 May 19, 2021
566c8ae
add adomain support (#6791)
ignat-one May 19, 2021
cb3ae12
Beachfront Bid Adapter: add floors module support (#6752)
jsalis May 19, 2021
d662340
Zeta Ssp Bid Adapter: merge fpd.device and params.device (#6786)
asurovenko-zeta May 19, 2021
03ad46d
pubGENIUS bid adapter: read more video params from mediaTypes.video (…
edmonl May 19, 2021
3f4922f
Remove camel case for adserver.adslot value in RP Analytics Adapter (…
mmoschovas May 19, 2021
f0af380
Prebid 4.40.0 Release
May 19, 2021
507c437
Increment pre version
May 19, 2021
a031f8d
CCX Bid Adapter: add support for mediatypes video parameters (#6736)
mjaworskiccx May 20, 2021
a2401ae
Index Exchange Bid Adapter: adds support for floc (#6758)
umakajan May 20, 2021
1adc2e7
InvibesBidAdapter - multiposition support & support for multiple id m…
rcheptanariu May 20, 2021
8388dd3
appnexus bid adapter: add support for flocid (#6801)
jsnellbaker May 20, 2021
2e2b425
appnexus bid adapter: add support for uid2 (#6802)
jsnellbaker May 20, 2021
889ff70
Delete xhbBidAdapter.js
patmmccann May 20, 2021
bb02ee1
Restore xhb (#6803)
patmmccann May 20, 2021
2feed68
EMX Digital Bid Adapter: floor module and advertiserDomain support (#…
EMXDigital May 21, 2021
6637abe
Index Exchange Bid Adapter: coppa support, dealid & ttl field updates…
lksharma May 21, 2021
0d845fe
Update permutiveRtdProvider.md (#6810)
sfrancolla May 21, 2021
95fd606
Conversant adapter - add support for the floor module (#6798)
pycnvr May 21, 2021
bda27a4
JW Player RTD Module - dev doc improvements (#6811)
karimMourra May 21, 2021
849359e
update OpenX adapter to support mediaTypes.video and gpid (#6813)
bwschmidt May 22, 2021
a073213
SynacorMedia Bid Adapter: Add userID support (#6790)
pratik-synacor May 24, 2021
8335d67
VIS.X: change tracking win & pending url's (#6815)
mk0x9 May 24, 2021
21c70b2
Ogury Bid Adapter: add new adapter (#6729)
jogury May 24, 2021
01dc3c6
ParrableIdSystem: Store third-party cookie support status in first-pa…
icflournoy May 24, 2021
49f5134
update ID5 docs for PD string links (#6824)
smenzer May 25, 2021
5a33702
Adagio Bid Adapter: decrease adapter weight (#6699)
osazos May 25, 2021
585c710
PubMatic Adapter : Support For Video Params from AdUnit MediaTypes (#…
pm-shashank-jain May 25, 2021
180ddaf
Fill currency parameters for Kobler adapter. (#6825)
acsbendi May 25, 2021
6580bf4
Adf Bid Adapter: banner and video media type support added (#6726)
braizhas May 25, 2021
cc68ad4
Trion bid adapter: support for meta advertiserDomains (#6829)
grohm33 May 26, 2021
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -202,7 +202,7 @@ To run the unit tests:
gulp test
```

To run the unit tests for a perticular file (example for pubmaticBidAdapter_spec.js):
To run the unit tests for a particular file (example for pubmaticBidAdapter_spec.js):
```bash
gulp test --file "test/spec/modules/pubmaticBidAdapter_spec.js"
```
Expand Down
1 change: 0 additions & 1 deletion allowedModules.js
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,6 @@ module.exports = {
'modules': [
...sharedWhiteList,
'criteo-direct-rsa-validate',
'jsencrypt',
'crypto-js',
'live-connect' // Maintained by LiveIntent : https://github.com/liveintent-berlin/live-connect/
],
Expand Down
6 changes: 3 additions & 3 deletions gulpfile.js
Original file line number Diff line number Diff line change
Expand Up @@ -170,12 +170,12 @@ function makeWebpackPkg() {
.pipe(webpackStream(cloned, webpack))
.pipe(uglify())
.pipe(replace(/('|")v\$prebid\.modulesList\$('|")/g, makeModuleList(externalModules)))
.pipe(gulpif(file => file.basename === 'prebid-core.js', header(banner, { prebid: prebid})))
.pipe(gulpif(file => file.basename === 'prebid-core.js', header(banner, { prebid: prebid })))
.pipe(gulp.dest('build/dist'));
}

function getModulesListToAddInBanner(modules){
return (modules.length > 0) ? modules.join(', ') : 'All available modules in current version.';
function getModulesListToAddInBanner(modules) {
return (modules.length > 0) ? modules.join(', ') : 'All available modules in current version.';
}

function gulpBundle(dev) {
Expand Down
8 changes: 8 additions & 0 deletions integrationExamples/gpt/userId_example.html
Original file line number Diff line number Diff line change
Expand Up @@ -241,6 +241,14 @@
{
"name": "uid2"
}
,{
name: "flocId",
params: {
// Default sharedid.org token : "A3dHTSoNUMjjERBLlrvJSelNnwWUCwVQhZ5tNQ+sll7y+LkPPVZXtB77u2y7CweRIxiYaGwGXNlW1/dFp8VMEgIAAAB+eyJvcmlnaW4iOiJodHRwczovL3NoYXJlZGlkLm9yZzo0NDMiLCJmZWF0dXJlIjoiSW50ZXJlc3RDb2hvcnRBUEkiLCJleHBpcnkiOjE2MjYyMjA3OTksImlzU3ViZG9tYWluIjp0cnVlLCJpc1RoaXJkUGFydHkiOnRydWV9"
// To get new token, register https://developer.chrome.com/origintrials/#/trials/active for Federated Learning of Cohorts
token: "A3dHTSoNUMjjERBLlrvJSelNnwWUCwVQhZ5tNQ+sll7y+LkPPVZXtB77u2y7CweRIxiYaGwGXNlW1/dFp8VMEgIAAAB+eyJvcmlnaW4iOiJodHRwczovL3NoYXJlZGlkLm9yZzo0NDMiLCJmZWF0dXJlIjoiSW50ZXJlc3RDb2hvcnRBUEkiLCJleHBpcnkiOjE2MjYyMjA3OTksImlzU3ViZG9tYWluIjp0cnVlLCJpc1RoaXJkUGFydHkiOnRydWV9"
}
}
],
"syncDelay": 5000,
"auctionDelay": 1000
Expand Down
11 changes: 9 additions & 2 deletions modules/.submodules.json
Original file line number Diff line number Diff line change
Expand Up @@ -26,18 +26,25 @@
"tapadIdSystem",
"novatiqIdSystem",
"uid2IdSystem",
"admixerIdSystem"
"admixerIdSystem",
"dmdIdSystem",
"flocIdSystem"
],
"adpod": [
"freeWheelAdserverVideo",
"dfpAdServerVideo"
],
"rtdModule": [
"browsiRtdProvider",
"geoedgeRtdProvider",
"haloRtdProvider",
"jwplayerRtdProvider",
"permutiveRtdProvider",
"reconciliationRtdProvider",
"geoedgeRtdProvider",
"sirdataRtdProvider"
],
"fpdModule": [
"enrichmentFpdModule",
"validationFpdModule"
]
}
8 changes: 8 additions & 0 deletions modules/33acrossBidAdapter.js
Original file line number Diff line number Diff line change
Expand Up @@ -568,6 +568,8 @@ function interpretResponse(serverResponse, bidRequest) {

// All this assumes that only one bid is ever returned by ttx
function _createBidResponse(response) {
const isADomainPresent =
response.seatbid[0].bid[0].adomain && response.seatbid[0].bid[0].adomain.length;
const bid = {
requestId: response.id,
bidderCode: BIDDER_CODE,
Expand All @@ -582,6 +584,12 @@ function _createBidResponse(response) {
netRevenue: true
}

if (isADomainPresent) {
bid.meta = {
advertiserDomains: response.seatbid[0].bid[0].adomain
};
}

if (bid.mediaType === VIDEO) {
const vastType = utils.deepAccess(response.seatbid[0].bid[0], 'ext.ttx.vastType', 'xml');

Expand Down
83 changes: 26 additions & 57 deletions modules/adagioBidAdapter.js
Original file line number Diff line number Diff line change
Expand Up @@ -3,33 +3,27 @@ import * as utils from '../src/utils.js';
import { config } from '../src/config.js';
import {registerBidder} from '../src/adapters/bidderFactory.js';
import { loadExternalScript } from '../src/adloader.js';
import JSEncrypt from 'jsencrypt/bin/jsencrypt.js';
import sha256 from 'crypto-js/sha256.js';
import { verify } from 'criteo-direct-rsa-validate/build/verify.js';
import { getStorageManager } from '../src/storageManager.js';
import { getRefererInfo } from '../src/refererDetection.js';
import { createEidsArray } from './userId/eids.js';
import { BANNER, NATIVE, VIDEO } from '../src/mediaTypes.js';
import { Renderer } from '../src/Renderer.js';
import { OUTSTREAM } from '../src/video.js';

export const BIDDER_CODE = 'adagio';
export const LOG_PREFIX = 'Adagio:';
export const VERSION = '2.8.0';
export const FEATURES_VERSION = '1';
const BIDDER_CODE = 'adagio';
const LOG_PREFIX = 'Adagio:';
export const VERSION = '2.11.0';
const FEATURES_VERSION = '1';
export const ENDPOINT = 'https://mp.4dex.io/prebid';
export const SUPPORTED_MEDIA_TYPES = [BANNER, NATIVE, VIDEO];
export const ADAGIO_TAG_URL = 'https://script.4dex.io/localstore.js';
export const ADAGIO_LOCALSTORAGE_KEY = 'adagioScript';
export const GVLID = 617;
const SUPPORTED_MEDIA_TYPES = [BANNER, NATIVE, VIDEO];
const ADAGIO_TAG_URL = 'https://script.4dex.io/localstore.js';
const ADAGIO_LOCALSTORAGE_KEY = 'adagioScript';
const GVLID = 617;
export const storage = getStorageManager(GVLID, 'adagio');
export const RENDERER_URL = 'https://script.4dex.io/outstream-player.js';
export const MAX_SESS_DURATION = 30 * 60 * 1000;
export const ADAGIO_PUBKEY = `-----BEGIN PUBLIC KEY-----
MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQC9el0+OEn6fvEh1RdVHQu4cnT0
jFSzIbGJJyg3cKqvtE6A0iaz9PkIdJIvSSSNrmJv+lRGKPEyRA/VnzJIieL39Ngl
t0b0lsHN+W4n9kitS/DZ/xnxWK/9vxhv0ZtL1LL/rwR5Mup7rmJbNtDoNBw4TIGj
pV6EP3MTLosuUEpLaQIDAQAB
-----END PUBLIC KEY-----`;
const MAX_SESS_DURATION = 30 * 60 * 1000;
const ADAGIO_PUBKEY = 'AL16XT44Sfp+8SHVF1UdC7hydPSMVLMhsYknKDdwqq+0ToDSJrP0+Qh0ki9JJI2uYm/6VEYo8TJED9WfMkiJ4vf02CW3RvSWwc35bif2SK1L8Nn/GfFYr/2/GG/Rm0vUsv+vBHky6nuuYls20Og0HDhMgaOlXoQ/cxMuiy5QSktp';
const ADAGIO_PUBKEY_E = 65537;

// This provide a whitelist and a basic validation
// of OpenRTB 2.5 options used by the Adagio SSP.
Expand Down Expand Up @@ -81,10 +75,7 @@ export function adagioScriptFromLocalStorageCb(ls) {
const hash = r[2];
const content = r[3];

var jsEncrypt = new JSEncrypt();
jsEncrypt.setPublicKey(ADAGIO_PUBKEY);

if (jsEncrypt.verify(content, hash, sha256)) {
if (verify(content, hash, ADAGIO_PUBKEY, ADAGIO_PUBKEY_E)) {
utils.logInfo(`${LOG_PREFIX} start script.`);
Function(ls)(); // eslint-disable-line no-new-func
} else {
Expand Down Expand Up @@ -524,19 +515,8 @@ function autoDetectAdUnitElementId(adUnitCode) {

function autoDetectEnvironment() {
const device = _features.getDevice();
let environment;
switch (device) {
case 2:
environment = 'desktop';
break;
case 4:
environment = 'mobile';
break;
case 5:
environment = 'tablet';
break;
};
return environment;
const map = { 2: 'desktop', 4: 'mobile', 5: 'tablet' };
return map[device] || 'unknown';
};

function supportIObs() {
Expand Down Expand Up @@ -653,25 +633,12 @@ function _getGdprConsent(bidderRequest) {
allowAuctionWithoutConsent
} = bidderRequest.gdprConsent;

const consent = {};

if (apiVersion !== undefined) {
consent.apiVersion = apiVersion;
}

if (consentString !== undefined) {
consent.consentString = consentString;
}

if (gdprApplies !== undefined) {
consent.consentRequired = (gdprApplies) ? 1 : 0;
}

if (allowAuctionWithoutConsent !== undefined) {
consent.allowAuctionWithoutConsent = allowAuctionWithoutConsent ? 1 : 0;
}

return consent;
return utils.cleanObj({
apiVersion,
consentString,
consentRequired: gdprApplies ? 1 : 0,
allowAuctionWithoutConsent: allowAuctionWithoutConsent ? 1 : 0
});
}

function _getCoppa() {
Expand All @@ -685,9 +652,7 @@ function _getUspConsent(bidderRequest) {
}

function _getSchain(bidRequest) {
if (utils.deepAccess(bidRequest, 'schain')) {
return bidRequest.schain;
}
return utils.deepAccess(bidRequest, 'schain');
}

function _getEids(bidRequest) {
Expand Down Expand Up @@ -1019,6 +984,10 @@ export const spec = {
const bidReq = (find(bidRequest.data.adUnits, bid => bid.bidId === bidObj.requestId));

if (bidReq) {
bidObj.meta = utils.deepAccess(bidObj, 'meta', {});
bidObj.meta.mediaType = bidObj.mediaType;
bidObj.meta.advertiserDomains = (Array.isArray(bidObj.aDomain) && bidObj.aDomain.length) ? bidObj.aDomain : [];

if (bidObj.mediaType === VIDEO) {
const mediaTypeContext = utils.deepAccess(bidReq, 'mediaTypes.video.context');
// Adagio SSP returns a `vastXml` only. No `vastUrl` nor `videoCacheKey`.
Expand Down
Loading