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 master #16

Merged
merged 86 commits into from
Sep 19, 2023
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
86 commits
Select commit Hold shift + click to select a range
6495105
Prebid 8.11.0 release
prebidjs-release Aug 24, 2023
936a883
Increment version to 8.12.0-pre
prebidjs-release Aug 24, 2023
f49a4b6
AlkimiBidAdapter: add GVL_ID (#10389)
pro-nsk Aug 24, 2023
3c70ac7
Sharethrough Bid Adapter: add GDPR and GPP support (#10388)
jefftmahoney Aug 24, 2023
51702c8
Changing the dealId default value (#10394)
pm-priyanka-deshmane Aug 25, 2023
4576207
NoBid Analytics Adapter: initial release (#10343)
redaguermas Aug 25, 2023
cc2b495
set-static-endpoint (#10396)
ahmadlob Aug 28, 2023
1288697
Fix #10400 (#10401)
robertrmartinez Aug 28, 2023
4b00f61
kulturemedia bid adapter: rebrand to dxkulture (#10358)
dani-nova Aug 28, 2023
e78e4b8
magnite analytics adapter:support for eventDispatcher (#10399)
musikele Aug 29, 2023
ff42caf
Add floors support to eplanning bid adapter (#10395)
maximilianozurita Aug 29, 2023
0138111
gptPreAuction: fix bug where adServer object are not set in case of t…
katsuo5 Aug 29, 2023
5ef3a17
Triplelift Bid Adapter: stop override on placement (#10408)
patmmccann Aug 29, 2023
7709898
Rubicon Bid Adapter: Format rubicon EID (#10409)
robertrmartinez Aug 30, 2023
8efd7a6
Prebid 8.12.0 release
prebidjs-release Aug 30, 2023
f0f6a5f
Increment version to 8.13.0-pre
prebidjs-release Aug 30, 2023
1e86b70
Bliink Bid Adapter : enhance request data with userIds, ect, refresh …
Niass Aug 30, 2023
dbf88cb
removed unused (internal use only) parameters (#10420)
jlaso Aug 31, 2023
f6e4796
use bidderRequestId instead of auctionid (#10411)
khang-vu-ttd Aug 31, 2023
5e8c2f5
Add gvlid to smilewantedBidAdapter (#10423)
MaxSmileWanted Aug 31, 2023
397a6ad
Bugfixing ttl to receive data from response (#10430)
tiberiu-sevio Sep 5, 2023
105017b
Bump tibdex/github-app-token from 1.8.0 to 1.8.2 (#10427)
dependabot[bot] Sep 5, 2023
0d7713d
Bump actions/checkout from 3 to 4 (#10428)
dependabot[bot] Sep 5, 2023
2087aca
Pangle Bid Adapter : initial release (#10397)
bytedancer-1 Sep 5, 2023
aeaf23e
Cadent Aperture MX Bid Adapter: Include gpp consent in usersync endpo…
EMXDigital Sep 5, 2023
ceccd88
Deleted setting default value {} for config in init. Ensured that no …
AYlitepsa Sep 5, 2023
f858437
Boldwin Adapter: gpp support (#10370)
Wls-demo Sep 6, 2023
9961f1c
Clean unused WL (#10431)
GeneGenie Sep 6, 2023
3fa0dd6
Core: fill in `video.plcmt` when possible (#10438)
dgirardi Sep 6, 2023
1f839bf
Core: use `playbackmethod` instead of `playmethod` for video (#10442)
dgirardi Sep 6, 2023
8793813
Experian RTD Submodule: Initial Release (#10331)
moeroach94 Sep 6, 2023
4c5fdf4
id5 user id module: add a note on using multiple wrappers (#10444)
smenzer Sep 6, 2023
e1441a4
Update video_spec.js (#10443)
patmmccann Sep 7, 2023
41d0b94
Experian RTD provider: fix unit tests (#10449)
dgirardi Sep 7, 2023
c772b60
Prebid 8.13.0 release
prebidjs-release Sep 7, 2023
ac00929
Increment version to 8.14.0-pre
prebidjs-release Sep 7, 2023
c91f337
Core: warn about missing GVLID on custom bidder aliases (#10451)
dgirardi Sep 7, 2023
2042919
Core: introduce new `eventHistoryTTL` and `minBidCacheTTL` settings t…
dgirardi Sep 7, 2023
7210492
PBS adapter: fix bug where `source.tid` is not sent even with `enable…
dgirardi Sep 8, 2023
a40fb1f
FreepassIdSystem: get userId from cookie (#10298)
aplio Sep 8, 2023
b892374
OpenX: add missing gvlid (#10453)
mike-chowla Sep 8, 2023
85bb955
ZetaGlobalSsp AnalyticsAdapter: provide zeta params through cache (#1…
asurovenko-zeta Sep 11, 2023
5c8472c
Bump tibdex/github-app-token from 1.8.2 to 2.0.0 (#10464)
dependabot[bot] Sep 11, 2023
64349d9
Adkernel: adliveconnect alias removal (#10462)
ckbo3hrk Sep 11, 2023
36eadbd
SmartyadsBidAdapter/send_notifics_noly_on_prebid_host (#10457)
rishko00 Sep 11, 2023
5c9e0cf
update prebid adapter (#10459)
optidigital-prebid Sep 11, 2023
e626373
Flipp Bid Adapter : initial release (#10412)
mike-lei Sep 11, 2023
ff91af1
GC-100 Update the hostname of the end point (#10468)
southern-growthcode Sep 11, 2023
914cf6d
consentManagementGpp: do not require `supportedAPIs` from CMP (#10470)
dgirardi Sep 11, 2023
78269b6
Bid adapter PGAMSSP: new adapter (#10368)
PGAMSSP Sep 11, 2023
a81323f
Yieldlove Bid Adapter: Initial Release (#10175)
PascalSalesch Sep 11, 2023
f54c6e5
Ssmas Bid Adapter : use iframe for user sync (#10465)
hzchen98 Sep 12, 2023
779146a
LiveIntent UserId module: fix Ajax timeout when calling the collector…
3link Sep 12, 2023
4f8cf68
Grid Bid Adapter: parse timeout and bidfloor to integer and float val…
vraybaud Sep 12, 2023
b8a39f4
teads Bid Adapter: get OpenGraph title (#10439)
github-mickael-leclerc Sep 12, 2023
4c2902f
Adagio Analytics Adapter: new endpoint and new code to track auctions…
osazos Sep 12, 2023
550a7cb
[sspbc-adapter] add support for topicsFPD module (#10416)
wojciech-bialy-wpm Sep 13, 2023
51a2b9c
Yieldmo - Dont require params.video (#10467)
robertrmartinez Sep 13, 2023
66a8b6a
Undertone Bid Adapter: adding gpid support to bid requests (#10414)
idanbotbol Sep 13, 2023
eb683f4
Preciso Bid Adapter : modified the request parameters (#10436)
PrecisoSRL Sep 13, 2023
00b23da
OptimeraRTD - Adding apiVersion param and v1 endpoint. (#10476)
mcallari Sep 13, 2023
d4203d2
Adnuntius Bid Adaptor: Enable choosing bidType for cpm. (#10446)
antosarho Sep 13, 2023
725ed60
Sonobi Bid Adapter : send video playbackmethod and placement in the b…
JonGoSonobi Sep 13, 2023
bc2f3f6
Add rubicon size 632 and 634 (#10481)
hkimmgni Sep 13, 2023
50bcec3
AIDEM Bidder Adapter: ortbConverter (#10391)
darkstarac Sep 13, 2023
294b84e
Admixer Bid Adapter : removed ortb2 from imp array (#10450)
WinnieThePooh2004 Sep 14, 2023
6438f27
PBS adapter: log and trigger BIDDER_ERROR events on server errors (#1…
dgirardi Sep 14, 2023
61d4f5c
Adkernel: added mediatypes.* attributes support (#10472)
ckbo3hrk Sep 14, 2023
8075455
Core: improve and fix bid timeout logic (#10379)
dgirardi Sep 14, 2023
9e4ed1c
Prebid 8.14.0 release
prebidjs-release Sep 14, 2023
c3409af
Increment version to 8.15.0-pre
prebidjs-release Sep 14, 2023
5fba72d
Axis Bid Adapter : initial release (#9684)
PyjamaWarrior Sep 14, 2023
411844f
feat:pass pairid [PB-1815] (#10487)
ccorbo Sep 14, 2023
ca555d3
Cadent Aperture MX Bid Adapter: address auctionId/transactionId leak …
EMXDigital Sep 14, 2023
7764e53
fledgeForGpt: provide `bidfloor` in auction signals (#10393)
dgirardi Sep 14, 2023
425cf20
userId: group UIDs by source when possible (#10488)
dgirardi Sep 14, 2023
7810865
integration examples: add native example without adserver (#10490)
dgirardi Sep 15, 2023
5fc475e
priceFloors: fix bug where `default` does not work on adUnit-level fl…
dgirardi Sep 15, 2023
7df304f
Add A1Media Bid Adapter (#10424)
ChangsikChoi Sep 18, 2023
2588459
PubMatic Analytics Adapter : log partner latency value using timeToRe…
kapil-tuptewar Sep 18, 2023
ecc0f48
alias update (#10491)
gchicoye Sep 18, 2023
e18ab51
Jixie Bid Adapter : pass bid floor to backend and change 1st party co…
jxdeveloper1 Sep 18, 2023
0ea5caa
Core: fix bug where the PBS adapter always times out (#10501)
dgirardi Sep 18, 2023
a0b53e6
Prebid 8.15.0 release
prebidjs-release Sep 19, 2023
6d39d8b
Increment version to 8.16.0-pre
prebidjs-release Sep 19, 2023
07f8b4e
AdFusion Bid Adapter : initial release (#10455)
AdFusionPrebid Sep 19, 2023
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 .github/workflows/codeql-analysis.yml
Original file line number Diff line number Diff line change
Expand Up @@ -38,7 +38,7 @@ jobs:

steps:
- name: Checkout repository
uses: actions/checkout@v3
uses: actions/checkout@v4

# Initializes the CodeQL tools for scanning.
- name: Initialize CodeQL
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/issue_tracker.yml
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ jobs:
steps:
- name: Generate token
id: generate_token
uses: tibdex/github-app-token@b62528385c34dbc9f38e5f4225ac829252d1ea92
uses: tibdex/github-app-token@0914d50df753bbc42180d982a6550f195390069f
with:
app_id: ${{ secrets.ISSUE_APP_ID }}
private_key: ${{ secrets.ISSUE_APP_PEM }}
Expand Down
95 changes: 95 additions & 0 deletions integrationExamples/gpt/adnuntius_example.html
Original file line number Diff line number Diff line change
@@ -0,0 +1,95 @@
<html>
<head>
<script async src="https://www.googletagservices.com/tag/js/gpt.js"></script>
<script async src="../../build/dev/prebid.js"></script>
<script>
var FAILSAFE_TIMEOUT = 3000;

var adUnits = [
{
code: 'div-gpt-ad-1683695049516-0',
mediaTypes: {
banner: {
sizes: [[320, 320]]
}
},
bids: [{
bidder: 'adnuntius',
params: {
auId: "201208",
network: "adnuntius",
bidType: 'netBid'
}
}]
},
];
var googletag = googletag || {};
googletag.cmd = googletag.cmd || [];
googletag.cmd.push(function() {
googletag.pubads().disableInitialLoad();
});

var pbjs = pbjs || {};
pbjs.que = pbjs.que || [];

pbjs.que.push(function() {
pbjs.setConfig({
enableSendAllBids: true,
targetingControls: {
alwaysIncludeDeals: true
},
userSync: {
syncEnabled: false
}
});

pbjs.setBidderConfig({
bidders: ['adnuntius'],
config: {
bidType: 'netBid'
}
});

pbjs.addAdUnits(adUnits);
pbjs.requestBids({bidsBackHandler: initAdserver});
});

function initAdserver() {
if (pbjs.initAdserverSet) return;
pbjs.initAdserverSet = true;
googletag.cmd.push(function() {
pbjs.que.push(function() {
pbjs.setTargetingForGPTAsync('div-gpt-ad-1683695049516-0');
googletag.pubads().refresh();
});
});
}

// in case PBJS doesn't load
setTimeout(function() {
initAdserver();
}, FAILSAFE_TIMEOUT);

window.googletag = window.googletag || {cmd: []};
googletag.cmd.push(function() {
googletag.defineSlot('/19660636/320x320', [320, 320], 'div-gpt-ad-1683695049516-0').addService(googletag.pubads());
googletag.pubads().enableSingleRequest();
googletag.enableServices();
});
</script>
</head>
<body>
<h2>Adnuntius Prebid Adaptor Test</h2>
<h5>Ad Slot 1</h5>

<!-- /19660636/320x320 -->
<div id='div-gpt-ad-1683695049516-0' style='min-width: 320px; min-height: 320px;'>
<script>
googletag.cmd.push(function() {
googletag.display('div-gpt-ad-1683695049516-0');
});
</script>
</div>

</body>
</html>
2 changes: 1 addition & 1 deletion integrationExamples/gpt/prebidServer_native_example.html
Original file line number Diff line number Diff line change
Expand Up @@ -114,7 +114,7 @@
s2sConfig: {
accountId: '1',
enabled: true, //default value set to false
bidders: ['appnexus'],
bidders: ['appnexuspsp'],
timeout: 1000, //default value is 1000
adapter: 'prebidServer', //if we have any other s2s adapter, default value is s2s
endpoint: 'https://prebid.adnxs.com/pbs/v1/openrtb2/auction'
Expand Down
173 changes: 173 additions & 0 deletions integrationExamples/noadserver/native_noadserver.html
Original file line number Diff line number Diff line change
@@ -0,0 +1,173 @@
<html>

<head>
<script type="text/javascript" src="../../build/dev/prebid.js" async></script>

<script>
var pbjs = pbjs || {};
pbjs.que = pbjs.que || [];

pbjs.que.push(function () {
const adUnits = [{
code: 'native-div',
mediaTypes: {
native: {
adTemplate: document.getElementById('native-template').innerHTML,
title: {
required: true,
len: 800
},
image: {
required: true,
sizes: [989, 742],
},
sponsoredBy: {
required: true
}
}
},
bids: [{
bidder: 'appnexus',
params: {
placementId: 13232354,
allowSmallerSizes: true
}

}]
}];

pbjs.setConfig({
debug: true,
s2sConfig: {
accountId: '1',
enabled: true,
bidders: ['appnexuspsp'],
timeout: 1000,
adapter: 'prebidServer',
endpoint: 'https://ib.adnxs.com/openrtb2/prebid',
}
});

pbjs.requestBids({
adUnits,
bidsBackHandler: function (bidResponses) {
Object.entries(bidResponses).forEach(([slot, {bids}]) => {
bids?.length && renderNative(slot, bids[0]);
});
}
});

function renderNative(divId, bid) {
const slot = document.getElementById(divId);
const content = `
<!DOCTYPE html>
<html>
<body>
<script src="https://cdn.jsdelivr.net/npm/prebid-universal-creative@latest/dist/native-render.js"> <\/script>
<script>
window.pbNativeData = {
pubUrl: '${encodeURI(document.location)}',
adId: '${bid.adId}',
requestAllAssets: true
};
pbNativeTag.renderNativeAd(pbNativeData);
<\/script>
</body>
</html>
`;

const iframe = document.createElement('iframe');
slot.appendChild(iframe);
Object.entries({
frameBorder: 0,
marginWidth: 0,
marginHeight: 0,
srcdoc: content
}).forEach(([prop, val]) => iframe.setAttribute(prop, val));
}
});

</script>

</head>

<body>

<template id="native-template">
<style>
body {
display: inline-block;
}

.container {
display: inline-block;
font-family: "Helvetica Neue",Helvetica,Arial,sans-serif;
font-size: 14px;
line-height: 1.42857143;
color: #333;
background: #fff url(##hb_native_image##) no-repeat center;
background-size: cover;
}


.card {
border: 4px solid #ffd724;
display: inline-block;
padding: 20px;
height: 300px;
width: 320px;
}


h1 a:link, a:active, a:visited, a:hover, a:focus {
text-decoration: none;
color: #fff;
}

h1 {
line-height: 1.3;
color: #fff;
font-size: 26px;
background-color: rgba(0, 0, 0, 0.7);
display: inline;
font-family: Roboto, serif;
font-weight: 100;
}

.attribution {
color: #fff;
display: inline-block;
letter-spacing: 2px;
background-color: #ffd724;
font-size: 12px;
line-height: 1;
padding: 6px 6px 0 6px;
height: 24px;
margin: 5px 0 10px 0;
border-radius: 4px;
}
</style>
<div class="container">
<div class="card">
<div class="title">
<h1>
<a href="##hb_native_linkurl##">##hb_native_title##</a>
</h1>
</div>
<div class="attribution">
##hb_native_brand##
</div>
</div>
</div>
</template>

<h2>Prebid Native</h2>
<div id='native-div'>
</div>

<br>
<br>

</body>

</html>
31 changes: 31 additions & 0 deletions libraries/currencyUtils/currency.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,31 @@
import {getGlobal} from '../../src/prebidGlobal.js';
import {keyCompare} from '../../src/utils/reducers.js';

/**
* Attempt to convert `amount` from the currency `fromCur` to the currency `toCur`.
*
* By default, when the conversion is not possible (currency module not present or
* throwing errors), the amount is returned unchanged. This behavior can be
* toggled off with bestEffort = false.
*/
export function convertCurrency(amount, fromCur, toCur, bestEffort = true) {
if (fromCur === toCur) return amount;
let result = amount;
try {
result = getGlobal().convertCurrency(amount, fromCur, toCur);
} catch (e) {
if (!bestEffort) throw e;
}
return result;
}

export function currencyNormalizer(toCurrency = null, bestEffort = true, convert = convertCurrency) {
return function (amount, currency) {
if (toCurrency == null) toCurrency = currency;
return convert(amount, currency, toCurrency, bestEffort);
}
}

export function currencyCompare(get = (obj) => [obj.cpm, obj.currency], normalize = currencyNormalizer()) {
return keyCompare(obj => normalize.apply(null, get(obj)))
}
Loading