prebid.js 5.17.0 → 5.18.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (41) hide show
  1. package/modules/adgenerationBidAdapter.js +28 -4
  2. package/modules/adkernelBidAdapter.js +2 -1
  3. package/modules/admixerBidAdapter.js +11 -0
  4. package/modules/aolBidAdapter.js +2 -1
  5. package/modules/bliinkBidAdapter.js +58 -32
  6. package/modules/bliinkBidAdapter.md +29 -6
  7. package/modules/cwireBidAdapter.js +272 -0
  8. package/modules/cwireBidAdapter.md +43 -0
  9. package/modules/dgkeywordRtdProvider.js +0 -1
  10. package/modules/livewrappedAnalyticsAdapter.js +4 -2
  11. package/modules/mediakeysBidAdapter.js +2 -1
  12. package/modules/nativoBidAdapter.js +1 -1
  13. package/modules/oguryBidAdapter.js +22 -6
  14. package/modules/pixfutureBidAdapter.js +24 -4
  15. package/modules/pixfutureBidAdapter.md +127 -0
  16. package/modules/prebidServerBidAdapter/index.js +1 -1
  17. package/modules/proxistoreBidAdapter.js +4 -6
  18. package/modules/pubmaticBidAdapter.js +9 -0
  19. package/modules/pubmaticBidAdapter.md +1 -1
  20. package/modules/talkadsBidAdapter.js +129 -0
  21. package/modules/talkadsBidAdapter.md +60 -0
  22. package/modules/unicornBidAdapter.js +3 -3
  23. package/modules/visxBidAdapter.js +15 -22
  24. package/modules/yahoosspBidAdapter.js +637 -0
  25. package/modules/yahoosspBidAdapter.md +795 -0
  26. package/modules/yieldlabBidAdapter.js +48 -3
  27. package/modules/yieldlabBidAdapter.md +16 -1
  28. package/package.json +1 -1
  29. package/test/spec/modules/adgenerationBidAdapter_spec.js +121 -50
  30. package/test/spec/modules/bliinkBidAdapter_spec.js +87 -36
  31. package/test/spec/modules/cwireBidAdapter_spec.js +246 -0
  32. package/test/spec/modules/livewrappedAnalyticsAdapter_spec.js +17 -7
  33. package/test/spec/modules/oguryBidAdapter_spec.js +72 -25
  34. package/test/spec/modules/pubmaticBidAdapter_spec.js +39 -1
  35. package/test/spec/modules/talkadsBidAdapter_spec.js +231 -0
  36. package/test/spec/modules/unicornBidAdapter_spec.js +4 -4
  37. package/test/spec/modules/visxBidAdapter_spec.js +48 -4
  38. package/test/spec/modules/yahoosspBidAdapter_spec.js +1332 -0
  39. package/test/spec/modules/yieldlabBidAdapter_spec.js +65 -1
  40. package/modules/turktelekomBidAdapter.md +0 -49
  41. package/yarn.lock +0 -13122
@@ -1,3 +1,4 @@
1
+ import { config } from 'src/config.js';
1
2
  import { expect } from 'chai'
2
3
  import { spec } from 'modules/yieldlabBidAdapter.js'
3
4
  import { newBidder } from 'src/adapters/bidderFactory.js'
@@ -16,7 +17,22 @@ const REQUEST = {
16
17
  'extraParam': true,
17
18
  'foo': 'bar'
18
19
  },
19
- 'extId': 'abc'
20
+ 'extId': 'abc',
21
+ 'iabContent': {
22
+ 'id': 'foo_id',
23
+ 'episode': '99',
24
+ 'title': 'foo_title,bar_title',
25
+ 'series': 'foo_series',
26
+ 'season': 's1',
27
+ 'artist': 'foo bar',
28
+ 'genre': 'baz',
29
+ 'isrc': 'CC-XXX-YY-NNNNN',
30
+ 'url': 'http://foo_url.de',
31
+ 'cat': ['cat1', 'cat2,ppp', 'cat3|||//'],
32
+ 'context': '7',
33
+ 'keywords': ['k1,', 'k2..'],
34
+ 'live': '0'
35
+ }
20
36
  },
21
37
  'bidderRequestId': '143346cf0f1731',
22
38
  'auctionId': '2e41f65424c87c',
@@ -86,6 +102,10 @@ const REQPARAMS_GDPR = Object.assign({}, REQPARAMS, {
86
102
  consent: 'BN5lERiOMYEdiAKAWXEND1AAAAE6DABACMA'
87
103
  })
88
104
 
105
+ const REQPARAMS_IAB_CONTENT = Object.assign({}, REQPARAMS, {
106
+ iab_content: 'id%3Afoo_id%2Cepisode%3A99%2Ctitle%3Afoo_title%252Cbar_title%2Cseries%3Afoo_series%2Cseason%3As1%2Cartist%3Afoo%2520bar%2Cgenre%3Abaz%2Cisrc%3ACC-XXX-YY-NNNNN%2Curl%3Ahttp%253A%252F%252Ffoo_url.de%2Ccat%3Acat1%7Ccat2%252Cppp%7Ccat3%257C%257C%257C%252F%252F%2Ccontext%3A7%2Ckeywords%3Ak1%252C%7Ck2..%2Clive%3A0'
107
+ })
108
+
89
109
  describe('yieldlabBidAdapter', function () {
90
110
  const adapter = newBidder(spec)
91
111
 
@@ -139,6 +159,40 @@ describe('yieldlabBidAdapter', function () {
139
159
  expect(request.url).to.include('schain=1.0,1!indirectseller.com,1,1,,,,!indirectseller2.com,2,1,,indirectseller2%20name%20with%20comma%20%2C%20and%20bang%20%21,,')
140
160
  })
141
161
 
162
+ it('passes iab_content string to bid request', function () {
163
+ expect(request.url).to.include('iab_content=id%3Afoo_id%2Cepisode%3A99%2Ctitle%3Afoo_title%252Cbar_title%2Cseries%3Afoo_series%2Cseason%3As1%2Cartist%3Afoo%2520bar%2Cgenre%3Abaz%2Cisrc%3ACC-XXX-YY-NNNNN%2Curl%3Ahttp%253A%252F%252Ffoo_url.de%2Ccat%3Acat1%7Ccat2%252Cppp%7Ccat3%257C%257C%257C%252F%252F%2Ccontext%3A7%2Ckeywords%3Ak1%252C%7Ck2..%2Clive%3A0')
164
+ })
165
+
166
+ const siteConfig = {
167
+ 'ortb2': {
168
+ 'site': {
169
+ 'content': {
170
+ 'id': 'id_from_config'
171
+ }
172
+ }
173
+ }
174
+ }
175
+
176
+ it('generates iab_content string from bidder params', function () {
177
+ config.setConfig(siteConfig);
178
+ const request = spec.buildRequests([REQUEST])
179
+ expect(request.url).to.include('iab_content=id%3Afoo_id%2Cepisode%3A99%2Ctitle%3Afoo_title%252Cbar_title%2Cseries%3Afoo_series%2Cseason%3As1%2Cartist%3Afoo%2520bar%2Cgenre%3Abaz%2Cisrc%3ACC-XXX-YY-NNNNN%2Curl%3Ahttp%253A%252F%252Ffoo_url.de%2Ccat%3Acat1%7Ccat2%252Cppp%7Ccat3%257C%257C%257C%252F%252F%2Ccontext%3A7%2Ckeywords%3Ak1%252C%7Ck2..%2Clive%3A0')
180
+ config.resetConfig();
181
+ })
182
+
183
+ it('generates iab_content string from first party data if not provided in bidder params', function () {
184
+ const requestWithoutIabContent = {
185
+ 'params': {
186
+ 'adslotId': '1111',
187
+ 'supplyId': '2222'
188
+ }
189
+ }
190
+ config.setConfig(siteConfig);
191
+ const request = spec.buildRequests([requestWithoutIabContent])
192
+ expect(request.url).to.include('iab_content=id%3Aid_from_config')
193
+ config.resetConfig();
194
+ })
195
+
142
196
  const refererRequest = spec.buildRequests(bidRequests, {
143
197
  refererInfo: {
144
198
  canonicalUrl: undefined,
@@ -203,6 +257,11 @@ describe('yieldlabBidAdapter', function () {
203
257
  expect(result[0].ad).to.include('&consent=BN5lERiOMYEdiAKAWXEND1AAAAE6DABACMA')
204
258
  })
205
259
 
260
+ it('should append iab_content to adtag', function () {
261
+ const result = spec.interpretResponse({body: [RESPONSE]}, {validBidRequests: [REQUEST], queryParams: REQPARAMS_IAB_CONTENT})
262
+ expect(result[0].ad).to.include('&iab_content=id%3Afoo_id%2Cepisode%3A99%2Ctitle%3Afoo_title%252Cbar_title%2Cseries%3Afoo_series%2Cseason%3As1%2Cartist%3Afoo%2520bar%2Cgenre%3Abaz%2Cisrc%3ACC-XXX-YY-NNNNN%2Curl%3Ahttp%253A%252F%252Ffoo_url.de%2Ccat%3Acat1%7Ccat2%252Cppp%7Ccat3%257C%257C%257C%252F%252F%2Ccontext%3A7%2Ckeywords%3Ak1%252C%7Ck2..%2Clive%3A0')
263
+ })
264
+
206
265
  it('should get correct bid response when passing more than one size', function () {
207
266
  const REQUEST2 = Object.assign({}, REQUEST, {
208
267
  'sizes': [
@@ -268,5 +327,10 @@ describe('yieldlabBidAdapter', function () {
268
327
  expect(result[0].ad).to.include('&pvid=43513f11-55a0-4a83-94e5-0ebc08f54a2c')
269
328
  expect(result[0].vastUrl).to.include('&pvid=43513f11-55a0-4a83-94e5-0ebc08f54a2c')
270
329
  })
330
+
331
+ it('should append iab_content to vastUrl', function () {
332
+ const result = spec.interpretResponse({body: [VIDEO_RESPONSE]}, {validBidRequests: [VIDEO_REQUEST], queryParams: REQPARAMS_IAB_CONTENT})
333
+ expect(result[0].vastUrl).to.include('&iab_content=id%3Afoo_id%2Cepisode%3A99%2Ctitle%3Afoo_title%252Cbar_title%2Cseries%3Afoo_series%2Cseason%3As1%2Cartist%3Afoo%2520bar%2Cgenre%3Abaz%2Cisrc%3ACC-XXX-YY-NNNNN%2Curl%3Ahttp%253A%252F%252Ffoo_url.de%2Ccat%3Acat1%7Ccat2%252Cppp%7Ccat3%257C%257C%257C%252F%252F%2Ccontext%3A7%2Ckeywords%3Ak1%252C%7Ck2..%2Clive%3A0')
334
+ })
271
335
  })
272
336
  })
@@ -1,49 +0,0 @@
1
- # Overview
2
-
3
- Module Name: Türk Telekom Bidder Adapter
4
- Module Type: Bidder Adapter
5
- Maintainer: turktelssp@gmail.com
6
-
7
- # Description
8
-
9
- Module that connects to Türk Telekom demand source to fetch bids.
10
- Türk Telekom Bid Adapter supports Banner and Video (instream and outstream).
11
-
12
- # Test Parameters
13
- ```
14
- var adUnits = [
15
- {
16
- code: 'test-div',
17
- mediaTypes: {
18
- banner: {
19
- sizes: [[300, 250], [300,600]]
20
- }
21
- },
22
- bids: [
23
- {
24
- bidder: "turktelekom",
25
- params: {
26
- uid: 17,
27
- priceType: 'gross' // by default is 'net'
28
- }
29
- }
30
- ]
31
- },{
32
- code: 'test-div',
33
- mediaTypes: {
34
- video: {
35
- playerSize: [[640, 360]],
36
- context: 'instream'
37
- }
38
- },
39
- bids: [
40
- {
41
- bidder: "turktelekom",
42
- params: {
43
- uid: 19
44
- }
45
- }
46
- ]
47
- }
48
- ];
49
- ```