@@ -5,8 +5,45 @@ import {ADPOD, BANNER, VIDEO} from '../src/mediaTypes.js';
5
5
6
6
const BIDDER_CODE = 'smaato' ;
7
7
const SMAATO_ENDPOINT = 'https://prebid.ad.smaato.net/oapi/prebid' ;
8
- const SMAATO_CLIENT = 'prebid_js_$prebid.version$_1.6'
8
+ const SMAATO_CLIENT = 'prebid_js_$prebid.version$_1.6' ;
9
9
const CURRENCY = 'USD' ;
10
+ const CLIENT = 'prebid_js_$prebid.version$_1.1' ;
11
+ const GVLID = 82 ;
12
+
13
+ /**
14
+ * Transform BidRequest to OpenRTB-formatted BidRequest Object
15
+ * @param {Array<BidRequest> } validBidRequests
16
+ * @param {any } bidderRequest
17
+ * @returns {string }
18
+ */
19
+ const buildOpenRtbBidRequestPayload = ( validBidRequests , bidderRequest ) => {
20
+ /**
21
+ * Turn incoming prebid sizes into openRtb format mapping.
22
+ * @param {* } sizes in format [[10, 10], [20, 20]]
23
+ * @returns array of openRtb format mappings [{w: 10, h: 10}, {w: 20, h: 20}]
24
+ */
25
+ const parseSizes = ( sizes ) => {
26
+ return sizes . map ( ( size ) => {
27
+ return { w : size [ 0 ] , h : size [ 1 ] } ;
28
+ } )
29
+ }
30
+
31
+ const imp = validBidRequests . map ( br => {
32
+ const bannerMediaType = utils . deepAccess ( br , 'mediaTypes.banner' ) ;
33
+ const videoMediaType = utils . deepAccess ( br , 'mediaTypes.video' ) ;
34
+ let result = {
35
+ id : br . bidId ,
36
+ tagid : utils . deepAccess ( br , 'params.adspaceId' )
37
+ }
38
+
39
+ if ( bannerMediaType ) {
40
+ const sizes = parseSizes ( utils . getAdUnitSizes ( br ) ) ;
41
+ result . banner = {
42
+ w : sizes [ 0 ] . w ,
43
+ h : sizes [ 0 ] . h ,
44
+ format : sizes
45
+ }
46
+ }
10
47
11
48
const buildOpenRtbBidRequest = ( bidRequest , bidderRequest ) => {
12
49
const requestTemplate = {
@@ -110,6 +147,7 @@ const buildServerRequest = (validBidRequest, data) => {
110
147
export const spec = {
111
148
code : BIDDER_CODE ,
112
149
supportedMediaTypes : [ BANNER , VIDEO ] ,
150
+ gvlid : GVLID ,
113
151
114
152
/**
115
153
* Determines whether or not the given bid request is valid.
0 commit comments