Skip to content

Commit d06bdad

Browse files
musikeleFilipStamenkovicMichele Nastipatmmccann
authored
Prebid Core: switch native assets to ortb2 format (#8086)
* switch native assets to ortb2 format * put rendererUrl, adTemplate back in message * rename ortb2 to ortb * typo fix * changes to support ortb for native media type * handle bid won case * mark bid as won on any post message for native * fix tests for bid_won event for native * add missing imports * native converting functions * convert new native ortb media type object to proprietary format for native bidders * fix LGTM.com issue * added comments; minor fixes * added test for convertOrtbRequestToProprietaryNative + fixes * add nativeParams to conversion * support nativeParams * check that when native.ortb is present, it's the only property * remove commented code * removed unnecessary tests * added test that checks that BID_WON is not fired more than once for the same adId * validation is now performed on ortb data only * fix for prebidServer_native_example.html * PrebidServerBidAdapter also responds in ortb format * fix aspect_ratios as an array in tests * LGTM fix - remove unused variables * Better name for native constants * use WeakSet instead of Set * when native request is openRTB, the whole native.ortb is passed over * retain some defaults dor native PBS request * fix for empty ortbRequest in nativeBidIsValid * add non-asset properties to media type object * final fixes after rebasing * handle tracking of soon-deprecated ortb imptrackers and jstracker * let native ad unit take all horizontal space * pass "mapping" from legacy native to ortb to prebid universal creative * Convert ortb assets to legacy for backward compatibility with legacy templates * add ortb conversion for more bid adapters * wrap conversion function in FEATURES.NATIVE * remove expired bids from native wrapper * instead of modifying bidresponse, use nativeReq * wrap test in FEATURES.NATIVE * fix for native mapping in prebidServerBidAdapter * use copy-on-write to convert ortb requests to legacy * fix comment on function * Update criteoBidAdapter.js Co-authored-by: Filip Stamenkovic <[email protected]> Co-authored-by: Michele Nasti <[email protected]> Co-authored-by: Patrick McCann <[email protected]>
1 parent 4bdad20 commit d06bdad

File tree

95 files changed

+1652
-396
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

95 files changed

+1652
-396
lines changed

integrationExamples/gpt/prebidServer_native_example.html

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -133,8 +133,8 @@
133133
<script>
134134
// GPT setup
135135
googletag.cmd.push(function () {
136-
// var slot1 = googletag.defineSlot('/19968336/prebid_native_example_1', [[360, 360]], 'div-1').addService(googletag.pubads());
137-
// var slot2 = googletag.defineSlot('/19968336/prebid_native_example_2', 'fluid', 'div-2').addService(googletag.pubads());
136+
googletag.defineSlot('/19968336/prebid_native_example_1', [[360, 360]], 'div-1').addService(googletag.pubads());
137+
googletag.defineSlot('/19968336/prebid_native_example_2', 'fluid', 'div-2').addService(googletag.pubads());
138138
googletag.pubads().disableInitialLoad();
139139
googletag.pubads().enableSingleRequest();
140140
googletag.enableServices();

modules/ablidaBidAdapter.js

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@ import { triggerPixel } from '../src/utils.js';
22
import {config} from '../src/config.js';
33
import {registerBidder} from '../src/adapters/bidderFactory.js';
44
import { BANNER, NATIVE, VIDEO } from '../src/mediaTypes.js';
5+
import { convertOrtbRequestToProprietaryNative } from '../src/native.js';
56

67
const BIDDER_CODE = 'ablida';
78
const ENDPOINT_URL = 'https://bidder.ablida.net/prebid';
@@ -28,6 +29,9 @@ export const spec = {
2829
* @param bidderRequest
2930
*/
3031
buildRequests: function (validBidRequests, bidderRequest) {
32+
// convert Native ORTB definition to old-style prebid native definition
33+
validBidRequests = convertOrtbRequestToProprietaryNative(validBidRequests);
34+
3135
if (validBidRequests.length === 0) {
3236
return [];
3337
}

modules/adagioBidAdapter.js

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -31,6 +31,7 @@ import {BANNER, NATIVE, VIDEO} from '../src/mediaTypes.js';
3131
import {Renderer} from '../src/Renderer.js';
3232
import {OUTSTREAM} from '../src/video.js';
3333
import { getGlobal } from '../src/prebidGlobal.js';
34+
import { convertOrtbRequestToProprietaryNative } from '../src/native.js';
3435

3536
const BIDDER_CODE = 'adagio';
3637
const LOG_PREFIX = 'Adagio:';
@@ -882,6 +883,9 @@ export const spec = {
882883
},
883884

884885
buildRequests(validBidRequests, bidderRequest) {
886+
// convert Native ORTB definition to old-style prebid native definition
887+
validBidRequests = convertOrtbRequestToProprietaryNative(validBidRequests);
888+
885889
const secure = (location.protocol === 'https:') ? 1 : 0;
886890
const device = internal.getDevice();
887891
const site = internal.getSite(bidderRequest);

modules/adbookpspBidAdapter.js

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,7 @@ import {
1919
uniques
2020
} from '../src/utils.js';
2121
import {registerBidder} from '../src/adapters/bidderFactory.js';
22+
import { convertOrtbRequestToProprietaryNative } from '../src/native.js';
2223

2324
/**
2425
* CONSTANTS
@@ -101,6 +102,9 @@ function isBidRequestValid(bidRequest) {
101102
}
102103

103104
function buildRequests(validBidRequests, bidderRequest) {
105+
// convert Native ORTB definition to old-style prebid native definition
106+
validBidRequests = convertOrtbRequestToProprietaryNative(validBidRequests);
107+
104108
const requests = [];
105109

106110
if (validBidRequests.length > 0) {

modules/adfBidAdapter.js

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,7 @@ import {BANNER, NATIVE, VIDEO} from '../src/mediaTypes.js';
66
import {_map, deepAccess, deepSetValue, mergeDeep, parseSizesInput} from '../src/utils.js';
77
import {config} from '../src/config.js';
88
import {Renderer} from '../src/Renderer.js';
9+
import { convertOrtbRequestToProprietaryNative } from '../src/native.js';
910

1011
const { getConfig } = config;
1112

@@ -60,6 +61,9 @@ export const spec = {
6061
return !!(mid || (inv && mname));
6162
},
6263
buildRequests: (validBidRequests, bidderRequest) => {
64+
// convert Native ORTB definition to old-style prebid native definition
65+
validBidRequests = convertOrtbRequestToProprietaryNative(validBidRequests);
66+
6367
let app, site;
6468

6569
const commonFpd = bidderRequest.ortb2 || {};

modules/adgenerationBidAdapter.js

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@ import {tryAppendQueryString, getBidIdParameter} from '../src/utils.js';
22
import {registerBidder} from '../src/adapters/bidderFactory.js';
33
import {BANNER, NATIVE} from '../src/mediaTypes.js';
44
import {config} from '../src/config.js';
5+
import { convertOrtbRequestToProprietaryNative } from '../src/native.js';
56

67
const ADG_BIDDER_CODE = 'adgeneration';
78

@@ -25,6 +26,8 @@ export const spec = {
2526
* @return ServerRequest Info describing the request to the server.
2627
*/
2728
buildRequests: function (validBidRequests, bidderRequest) {
29+
// convert Native ORTB definition to old-style prebid native definition
30+
validBidRequests = convertOrtbRequestToProprietaryNative(validBidRequests);
2831
const ADGENE_PREBID_VERSION = '1.4.0';
2932
let serverRequests = [];
3033
for (let i = 0, len = validBidRequests.length; i < len; i++) {

modules/adkernelBidAdapter.js

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,7 @@ import {BANNER, NATIVE, VIDEO} from '../src/mediaTypes.js';
2020
import {registerBidder} from '../src/adapters/bidderFactory.js';
2121
import {find, includes} from '../src/polyfill.js';
2222
import {config} from '../src/config.js';
23+
import { convertOrtbRequestToProprietaryNative } from '../src/native.js';
2324

2425
/*
2526
* In case you're AdKernel whitelable platform's client who needs branded adapter to
@@ -119,6 +120,9 @@ export const spec = {
119120
* @returns {ServerRequest[]}
120121
*/
121122
buildRequests: function (bidRequests, bidderRequest) {
123+
// convert Native ORTB definition to old-style prebid native definition
124+
bidRequests = convertOrtbRequestToProprietaryNative(bidRequests);
125+
122126
let impGroups = groupImpressionsByHostZone(bidRequests, bidderRequest.refererInfo);
123127
let requests = [];
124128
let schain = bidRequests[0].schain;

modules/admanBidAdapter.js

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@ import {registerBidder} from '../src/adapters/bidderFactory.js';
22
import { BANNER, NATIVE, VIDEO } from '../src/mediaTypes.js';
33
import { isFn, deepAccess, logMessage } from '../src/utils.js';
44
import {config} from '../src/config.js';
5+
import { convertOrtbRequestToProprietaryNative } from '../src/native.js';
56

67
const BIDDER_CODE = 'adman';
78
const AD_URL = 'https://pub.admanmedia.com/?c=o&m=multi';
@@ -63,6 +64,9 @@ export const spec = {
6364
},
6465

6566
buildRequests: (validBidRequests = [], bidderRequest) => {
67+
// convert Native ORTB definition to old-style prebid native definition
68+
validBidRequests = convertOrtbRequestToProprietaryNative(validBidRequests);
69+
6670
let winTop = window;
6771
let location;
6872
// TODO: this odd try-catch block was copied in several adapters; it doesn't seem to be correct for cross-origin

modules/admixerBidAdapter.js

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@ import { logError } from '../src/utils.js';
22
import {registerBidder} from '../src/adapters/bidderFactory.js';
33
import {config} from '../src/config.js';
44
import {BANNER, VIDEO, NATIVE} from '../src/mediaTypes.js';
5+
import { convertOrtbRequestToProprietaryNative } from '../src/native.js';
56

67
const BIDDER_CODE = 'admixer';
78
const ALIASES = ['go2net', 'adblender', 'adsyield', 'futureads'];
@@ -20,6 +21,9 @@ export const spec = {
2021
* Make a server request from the list of BidRequests.
2122
*/
2223
buildRequests: function (validRequest, bidderRequest) {
24+
// convert Native ORTB definition to old-style prebid native definition
25+
validRequest = convertOrtbRequestToProprietaryNative(validRequest);
26+
2327
let w;
2428
let docRef;
2529
do {

modules/adnowBidAdapter.js

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@ import {registerBidder} from '../src/adapters/bidderFactory.js';
22
import {BANNER, NATIVE} from '../src/mediaTypes.js';
33
import {deepAccess, parseQueryStringParameters, parseSizesInput} from '../src/utils.js';
44
import {includes} from '../src/polyfill.js';
5+
import { convertOrtbRequestToProprietaryNative } from '../src/native.js';
56

67
const BIDDER_CODE = 'adnow';
78
const ENDPOINT = 'https://n.ads3-adnow.com/a';
@@ -48,6 +49,9 @@ export const spec = {
4849
* @return {ServerRequest}
4950
*/
5051
buildRequests(validBidRequests, bidderRequest) {
52+
// convert Native ORTB definition to old-style prebid native definition
53+
validBidRequests = convertOrtbRequestToProprietaryNative(validBidRequests);
54+
5155
return validBidRequests.map(req => {
5256
const mediaType = this._isBannerRequest(req) ? BANNER : NATIVE;
5357
const codeId = parseInt(req.params.codeId, 10);

modules/adotBidAdapter.js

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@ import {isArray, isBoolean, isFn, isPlainObject, isStr, logError, replaceAuction
55
import {find} from '../src/polyfill.js';
66
import {config} from '../src/config.js';
77
import {OUTSTREAM} from '../src/video.js';
8+
import { convertOrtbRequestToProprietaryNative } from '../src/native.js';
89

910
const BIDDER_CODE = 'adot';
1011
const ADAPTER_VERSION = 'v2.0.0';
@@ -373,6 +374,8 @@ function splitAdUnits(validBidRequests) {
373374
* @returns {Array<AjaxRequest>}
374375
*/
375376
function buildRequests(validBidRequests, bidderRequest) {
377+
// convert Native ORTB definition to old-style prebid native definition
378+
validBidRequests = convertOrtbRequestToProprietaryNative(validBidRequests);
376379
const adUnits = splitAdUnits(validBidRequests);
377380
const publisherPathConfig = config.getConfig('adot.publisherPath');
378381
const publisherPath = publisherPathConfig === undefined ? '' : '/' + publisherPathConfig;

modules/adprimeBidAdapter.js

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@ import {registerBidder} from '../src/adapters/bidderFactory.js';
22
import { BANNER, NATIVE, VIDEO } from '../src/mediaTypes.js';
33
import { isFn, deepAccess, logMessage } from '../src/utils.js';
44
import { config } from '../src/config.js';
5+
import { convertOrtbRequestToProprietaryNative } from '../src/native.js';
56

67
const BIDDER_CODE = 'adprime';
78
const AD_URL = 'https://delta.adprime.com/pbjs';
@@ -50,6 +51,9 @@ export const spec = {
5051
},
5152

5253
buildRequests: (validBidRequests = [], bidderRequest) => {
54+
// convert Native ORTB definition to old-style prebid native definition
55+
validBidRequests = convertOrtbRequestToProprietaryNative(validBidRequests);
56+
5357
let winTop = window;
5458
let location;
5559
// TODO: this odd try-catch block was copied in several adapters; it doesn't seem to be correct for cross-origin

modules/adrelevantisBidAdapter.js

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,7 @@ import {registerBidder} from '../src/adapters/bidderFactory.js';
2121
import {BANNER, NATIVE, VIDEO} from '../src/mediaTypes.js';
2222
import {find, includes} from '../src/polyfill.js';
2323
import {INSTREAM, OUTSTREAM} from '../src/video.js';
24+
import { convertOrtbRequestToProprietaryNative } from '../src/native.js';
2425

2526
const BIDDER_CODE = 'adrelevantis';
2627
const URL = 'https://ssp.adrelevantis.com/prebid';
@@ -71,6 +72,9 @@ export const spec = {
7172
* @return ServerRequest Info describing the request to the server.
7273
*/
7374
buildRequests: function(bidRequests, bidderRequest) {
75+
// convert Native ORTB definition to old-style prebid native definition
76+
bidRequests = convertOrtbRequestToProprietaryNative(bidRequests);
77+
7478
const tags = bidRequests.map(bidToTag);
7579
const userObjBid = find(bidRequests, hasUserInfo);
7680
let userObj;

modules/adrinoBidAdapter.js

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@ import {registerBidder} from '../src/adapters/bidderFactory.js';
22
import {triggerPixel} from '../src/utils.js';
33
import {NATIVE} from '../src/mediaTypes.js';
44
import {config} from '../src/config.js';
5+
import { convertOrtbRequestToProprietaryNative } from '../src/native.js';
56

67
const BIDDER_CODE = 'adrino';
78
const REQUEST_METHOD = 'POST';
@@ -28,6 +29,8 @@ export const spec = {
2829
},
2930

3031
buildRequests: function (validBidRequests, bidderRequest) {
32+
// convert Native ORTB definition to old-style prebid native definition
33+
validBidRequests = convertOrtbRequestToProprietaryNative(validBidRequests);
3134
const bidRequests = [];
3235

3336
for (let i = 0; i < validBidRequests.length; i++) {

modules/adtrueBidAdapter.js

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@ import {registerBidder} from '../src/adapters/bidderFactory.js';
33
import {BANNER, NATIVE, VIDEO} from '../src/mediaTypes.js';
44
import {config} from '../src/config.js';
55
import {getStorageManager} from '../src/storageManager.js';
6+
import { convertOrtbRequestToProprietaryNative } from '../src/native.js';
67

78
const BIDDER_CODE = 'adtrue';
89
const storage = getStorageManager({bidderCode: BIDDER_CODE});
@@ -450,6 +451,9 @@ export const spec = {
450451
},
451452

452453
buildRequests: function (validBidRequests, bidderRequest) {
454+
// convert Native ORTB definition to old-style prebid native definition
455+
validBidRequests = convertOrtbRequestToProprietaryNative(validBidRequests);
456+
453457
let refererInfo;
454458
if (bidderRequest && bidderRequest.refererInfo) {
455459
refererInfo = bidderRequest.refererInfo;

modules/aduptechBidAdapter.js

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
import {deepAccess, getAdUnitSizes} from '../src/utils.js';
22
import {registerBidder} from '../src/adapters/bidderFactory.js';
33
import {BANNER, NATIVE} from '../src/mediaTypes.js';
4+
import { convertOrtbRequestToProprietaryNative } from '../src/native.js';
45

56
export const BIDDER_CODE = 'aduptech';
67
export const ENDPOINT_URL_PUBLISHER_PLACEHOLDER = '{PUBLISHER}';
@@ -198,6 +199,9 @@ export const spec = {
198199
* @returns {Object[]}
199200
*/
200201
buildRequests: (validBidRequests, bidderRequest) => {
202+
// convert Native ORTB definition to old-style prebid native definition
203+
validBidRequests = convertOrtbRequestToProprietaryNative(validBidRequests);
204+
201205
const requests = [];
202206

203207
// stop here on invalid or empty data

modules/adxcgBidAdapter.js

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,7 @@ import {
1717
triggerPixel
1818
} from '../src/utils.js';
1919
import {config} from '../src/config.js';
20+
import { convertOrtbRequestToProprietaryNative } from '../src/native.js';
2021

2122
const { getConfig } = config;
2223

@@ -65,6 +66,9 @@ export const spec = {
6566
return !!(adzoneid);
6667
},
6768
buildRequests: (validBidRequests, bidderRequest) => {
69+
// convert Native ORTB definition to old-style prebid native definition
70+
validBidRequests = convertOrtbRequestToProprietaryNative(validBidRequests);
71+
6872
let app, site;
6973

7074
const commonFpd = bidderRequest.ortb2 || {};

modules/adyoulikeBidAdapter.js

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@ import {registerBidder} from '../src/adapters/bidderFactory.js';
33
import {createEidsArray} from './userId/eids.js';
44
import {find} from '../src/polyfill.js';
55
import {BANNER, NATIVE, VIDEO} from '../src/mediaTypes.js';
6+
import { convertOrtbRequestToProprietaryNative } from '../src/native.js';
67

78
const VERSION = '1.0';
89
const BIDDER_CODE = 'adyoulike';
@@ -60,6 +61,8 @@ export const spec = {
6061
* @return ServerRequest Info describing the request to the server.
6162
*/
6263
buildRequests: function (bidRequests, bidderRequest) {
64+
// convert Native ORTB definition to old-style prebid native definition
65+
bidRequests = convertOrtbRequestToProprietaryNative(bidRequests);
6366
let hasVideo = false;
6467
const payload = {
6568
Version: VERSION,

modules/ajaBidAdapter.js

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@ import { getBidIdParameter, tryAppendQueryString, createTrackPixelHtml, logError
22
import { Renderer } from '../src/Renderer.js';
33
import { registerBidder } from '../src/adapters/bidderFactory.js';
44
import { VIDEO, BANNER, NATIVE } from '../src/mediaTypes.js';
5+
import { convertOrtbRequestToProprietaryNative } from '../src/native.js';
56

67
const BIDDER_CODE = 'aja';
78
const URL = 'https://ad.as.amanad.adtdp.com/v2/prebid';
@@ -35,6 +36,9 @@ export const spec = {
3536
* @returns {ServerRequest|ServerRequest[]}
3637
*/
3738
buildRequests: function(validBidRequests, bidderRequest) {
39+
// convert Native ORTB definition to old-style prebid native definition
40+
validBidRequests = convertOrtbRequestToProprietaryNative(validBidRequests);
41+
3842
const bidRequests = [];
3943
const pageUrl = bidderRequest?.refererInfo?.page || undefined;
4044

modules/appnexusBidAdapter.js

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -34,6 +34,7 @@ import {INSTREAM, OUTSTREAM} from '../src/video.js';
3434
import {getStorageManager} from '../src/storageManager.js';
3535
import {bidderSettings} from '../src/bidderSettings.js';
3636
import {hasPurpose1Consent} from '../src/utils/gpdr.js';
37+
import { convertOrtbRequestToProprietaryNative } from '../src/native.js';
3738

3839
const BIDDER_CODE = 'appnexus';
3940
const URL = 'https://ib.adnxs.com/ut/v3/prebid';
@@ -122,6 +123,9 @@ export const spec = {
122123
* @return ServerRequest Info describing the request to the server.
123124
*/
124125
buildRequests: function (bidRequests, bidderRequest) {
126+
// convert Native ORTB definition to old-style prebid native definition
127+
bidRequests = convertOrtbRequestToProprietaryNative(bidRequests);
128+
125129
const tags = bidRequests.map(bidToTag);
126130
const userObjBid = find(bidRequests, hasUserInfo);
127131
let userObj = {};

modules/apstreamBidAdapter.js

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@ import { generateUUID, deepAccess, createTrackPixelHtml, getDNT } from '../src/u
22
import { registerBidder } from '../src/adapters/bidderFactory.js';
33
import { config } from '../src/config.js';
44
import { getStorageManager } from '../src/storageManager.js';
5+
import { convertOrtbRequestToProprietaryNative } from '../src/native.js';
56

67
const CONSTANTS = {
78
DSU_KEY: 'apr_dsu',
@@ -416,6 +417,8 @@ function isBidRequestValid(bid) {
416417
}
417418

418419
function buildRequests(bidRequests, bidderRequest) {
420+
// convert Native ORTB definition to old-style prebid native definition
421+
bidRequests = convertOrtbRequestToProprietaryNative(bidRequests);
419422
const data = {
420423
med: encodeURIComponent(window.location.href),
421424
auid: bidderRequest.auctionId,

modules/bidscubeBidAdapter.js

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
import { logMessage, getWindowLocation } from '../src/utils.js';
22
import { registerBidder } from '../src/adapters/bidderFactory.js'
33
import { BANNER, NATIVE, VIDEO } from '../src/mediaTypes.js'
4+
import { convertOrtbRequestToProprietaryNative } from '../src/native.js';
45

56
const BIDDER_CODE = 'bidscube'
67
const URL = 'https://supply.bidscube.com/?c=o&m=multi'
@@ -15,6 +16,9 @@ export const spec = {
1516
},
1617

1718
buildRequests: function (validBidRequests) {
19+
// convert Native ORTB definition to old-style prebid native definition
20+
validBidRequests = convertOrtbRequestToProprietaryNative(validBidRequests);
21+
1822
validBidRequests = validBidRequests || []
1923
let winTop = window
2024
try {

0 commit comments

Comments
 (0)