prebid.js 8.3.0 → 8.5.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 (354) hide show
  1. package/dist/33acrossBidAdapter.js +1 -1
  2. package/dist/33acrossIdSystem.js +1 -1
  3. package/dist/a1MediaRtdProvider.js +1 -0
  4. package/dist/adagioBidAdapter.js +1 -1
  5. package/dist/adbookpspBidAdapter.js +1 -1
  6. package/dist/adfBidAdapter.js +1 -1
  7. package/dist/adgenerationBidAdapter.js +1 -1
  8. package/dist/adkernelAdnBidAdapter.js +1 -1
  9. package/dist/adkernelBidAdapter.js +1 -1
  10. package/dist/admanBidAdapter.js +1 -1
  11. package/dist/admixerIdSystem.js +1 -1
  12. package/dist/adnuntiusBidAdapter.js +1 -1
  13. package/dist/adqueryBidAdapter.js +1 -1
  14. package/dist/adqueryIdSystem.js +1 -1
  15. package/dist/adrelevantisBidAdapter.js +1 -1
  16. package/dist/adtelligentIdSystem.js +1 -1
  17. package/dist/adtrgtmeBidAdapter.js +1 -1
  18. package/dist/adxcgBidAdapter.js +1 -1
  19. package/dist/adyoulikeBidAdapter.js +1 -1
  20. package/dist/ajaBidAdapter.js +1 -1
  21. package/dist/amxBidAdapter.js +1 -1
  22. package/dist/amxIdSystem.js +1 -1
  23. package/dist/appierAnalyticsAdapter.js +1 -1
  24. package/dist/appnexusBidAdapter.js +1 -1
  25. package/dist/asoBidAdapter.js +1 -1
  26. package/dist/axonixBidAdapter.js +1 -1
  27. package/dist/beachfrontBidAdapter.js +1 -1
  28. package/dist/bidglassBidAdapter.js +1 -1
  29. package/dist/big-richmediaBidAdapter.js +1 -1
  30. package/dist/brandmetricsRtdProvider.js +1 -1
  31. package/dist/bridBidAdapter.js +1 -1
  32. package/dist/bridgewellBidAdapter.js +1 -1
  33. package/dist/brightMountainMediaBidAdapter.js +1 -1
  34. package/dist/britepoolIdSystem.js +1 -1
  35. package/dist/carodaBidAdapter.js +1 -1
  36. package/dist/chtnwBidAdapter.js +1 -1
  37. package/dist/concertBidAdapter.js +1 -1
  38. package/dist/connectIdSystem.js +1 -1
  39. package/dist/connectadBidAdapter.js +1 -1
  40. package/dist/consentManagementGpp.js +1 -1
  41. package/dist/consumableBidAdapter.js +1 -1
  42. package/dist/conversantAnalyticsAdapter.js +1 -1
  43. package/dist/conversantBidAdapter.js +1 -1
  44. package/dist/craftBidAdapter.js +1 -1
  45. package/dist/criteoBidAdapter.js +1 -1
  46. package/dist/criteoIdSystem.js +1 -1
  47. package/dist/cwireBidAdapter.js +1 -1
  48. package/dist/czechAdIdSystem.js +1 -1
  49. package/dist/dacIdSystem.js +1 -1
  50. package/dist/deepintentDpesIdSystem.js +1 -1
  51. package/dist/dependencies.json +6 -0
  52. package/dist/dmdIdSystem.js +1 -1
  53. package/dist/dspxBidAdapter.js +1 -1
  54. package/dist/eplanningBidAdapter.js +1 -1
  55. package/dist/euidIdSystem.js +1 -1
  56. package/dist/fabrickIdSystem.js +1 -1
  57. package/dist/feedadBidAdapter.js +1 -1
  58. package/dist/finativeBidAdapter.js +1 -1
  59. package/dist/freewheel-sspBidAdapter.js +1 -1
  60. package/dist/ftrackIdSystem.js +1 -1
  61. package/dist/gdprEnforcement.js +1 -1
  62. package/dist/geolocationRtdProvider.js +1 -0
  63. package/dist/gmosspBidAdapter.js +1 -1
  64. package/dist/goldbachBidAdapter.js +1 -1
  65. package/dist/gravitoIdSystem.js +1 -1
  66. package/dist/greenbidsAnalyticsAdapter.js +1 -1
  67. package/dist/greenbidsRtdProvider.js +1 -1
  68. package/dist/gridBidAdapter.js +1 -1
  69. package/dist/growthCodeIdSystem.js +1 -1
  70. package/dist/gumgumBidAdapter.js +1 -1
  71. package/dist/h12mediaBidAdapter.js +1 -1
  72. package/dist/hadronIdSystem.js +1 -1
  73. package/dist/hypelabBidAdapter.js +1 -1
  74. package/dist/id5IdSystem.js +1 -1
  75. package/dist/identityLinkIdSystem.js +1 -1
  76. package/dist/idxIdSystem.js +1 -1
  77. package/dist/imdsBidAdapter.js +1 -1
  78. package/dist/improvedigitalBidAdapter.js +1 -1
  79. package/dist/imuIdSystem.js +1 -1
  80. package/dist/insticatorBidAdapter.js +1 -1
  81. package/dist/intentIqIdSystem.js +1 -1
  82. package/dist/invibesBidAdapter.js +1 -1
  83. package/dist/ixBidAdapter.js +1 -1
  84. package/dist/justIdSystem.js +1 -1
  85. package/dist/justpremiumBidAdapter.js +1 -1
  86. package/dist/kargoBidAdapter.js +1 -1
  87. package/dist/kinessoIdSystem.js +1 -1
  88. package/dist/konduitAnalyticsAdapter.js +1 -1
  89. package/dist/kueezBidAdapter.js +1 -1
  90. package/dist/kueezRtbBidAdapter.js +1 -1
  91. package/dist/kulturemediaBidAdapter.js +1 -1
  92. package/dist/lassoBidAdapter.js +1 -1
  93. package/dist/lifestreetBidAdapter.js +1 -1
  94. package/dist/liveIntentIdSystem.js +1 -1
  95. package/dist/logicadBidAdapter.js +1 -1
  96. package/dist/loglyliftBidAdapter.js +1 -1
  97. package/dist/lotamePanoramaIdSystem.js +1 -1
  98. package/dist/magniteAnalyticsAdapter.js +1 -1
  99. package/dist/malltvAnalyticsAdapter.js +1 -1
  100. package/dist/marsmediaBidAdapter.js +1 -1
  101. package/dist/mediafuseBidAdapter.js +1 -1
  102. package/dist/mediasquareBidAdapter.js +1 -1
  103. package/dist/merkleIdSystem.js +1 -1
  104. package/dist/mgidBidAdapter.js +1 -1
  105. package/dist/minutemediaBidAdapter.js +1 -1
  106. package/dist/minutemediaplusBidAdapter.js +1 -1
  107. package/dist/mwOpenLinkIdSystem.js +1 -1
  108. package/dist/naveggIdSystem.js +1 -1
  109. package/dist/netIdSystem.js +1 -1
  110. package/dist/nexx360BidAdapter.js +1 -1
  111. package/dist/not-for-prod/prebid.js +185 -182
  112. package/dist/novatiqIdSystem.js +1 -1
  113. package/dist/oguryBidAdapter.js +1 -1
  114. package/dist/oneKeyIdSystem.js +1 -1
  115. package/dist/onetagBidAdapter.js +1 -1
  116. package/dist/ooloAnalyticsAdapter.js +1 -1
  117. package/dist/optidigitalBidAdapter.js +1 -1
  118. package/dist/outbrainBidAdapter.js +1 -1
  119. package/dist/ozoneBidAdapter.js +1 -1
  120. package/dist/pairIdSystem.js +1 -1
  121. package/dist/parrableIdSystem.js +1 -1
  122. package/dist/pixfutureBidAdapter.js +1 -1
  123. package/dist/prebid-core.js +2 -2
  124. package/dist/publinkIdSystem.js +1 -1
  125. package/dist/pubmaticBidAdapter.js +1 -1
  126. package/dist/pubwiseAnalyticsAdapter.js +1 -1
  127. package/dist/pulsepointBidAdapter.js +1 -1
  128. package/dist/pxyzBidAdapter.js +1 -1
  129. package/dist/quantcastBidAdapter.js +1 -1
  130. package/dist/quantcastIdSystem.js +1 -1
  131. package/dist/readpeakBidAdapter.js +1 -1
  132. package/dist/relaidoBidAdapter.js +1 -1
  133. package/dist/retailspotBidAdapter.js +1 -1
  134. package/dist/rhythmoneBidAdapter.js +1 -1
  135. package/dist/riseBidAdapter.js +1 -1
  136. package/dist/rubiconBidAdapter.js +1 -1
  137. package/dist/seedingAllianceBidAdapter.js +1 -1
  138. package/dist/seedtagBidAdapter.js +1 -1
  139. package/dist/sharedIdSystem.js +1 -1
  140. package/dist/sharethroughAnalyticsAdapter.js +1 -1
  141. package/dist/sharethroughBidAdapter.js +1 -1
  142. package/dist/shinezBidAdapter.js +1 -1
  143. package/dist/silverpushBidAdapter.js +1 -1
  144. package/dist/smaatoBidAdapter.js +1 -1
  145. package/dist/smartadserverBidAdapter.js +1 -1
  146. package/dist/smartxBidAdapter.js +1 -1
  147. package/dist/smilewantedBidAdapter.js +1 -1
  148. package/dist/sonobiBidAdapter.js +1 -1
  149. package/dist/sovrnAnalyticsAdapter.js +1 -1
  150. package/dist/sovrnBidAdapter.js +1 -1
  151. package/dist/ssmasBidAdapter.js +1 -0
  152. package/dist/sspBCBidAdapter.js +1 -1
  153. package/dist/stroeerCoreBidAdapter.js +1 -1
  154. package/dist/stvBidAdapter.js +1 -1
  155. package/dist/sublimeBidAdapter.js +1 -1
  156. package/dist/tapadIdSystem.js +1 -1
  157. package/dist/targetVideoBidAdapter.js +1 -1
  158. package/dist/teadsBidAdapter.js +1 -1
  159. package/dist/tncIdSystem.js +1 -1
  160. package/dist/topicsFpdModule.js +1 -1
  161. package/dist/trionBidAdapter.js +1 -1
  162. package/dist/tripleliftBidAdapter.js +1 -1
  163. package/dist/ttdBidAdapter.js +1 -1
  164. package/dist/ucfunnelAnalyticsAdapter.js +1 -1
  165. package/dist/uid2IdSystem.js +1 -1
  166. package/dist/underdogmediaBidAdapter.js +1 -1
  167. package/dist/undertoneBidAdapter.js +1 -1
  168. package/dist/unifiedIdSystem.js +1 -1
  169. package/dist/userId.js +1 -1
  170. package/dist/utiqSystem.js +1 -1
  171. package/dist/verizonMediaIdSystem.js +1 -1
  172. package/dist/vidazooBidAdapter.js +1 -1
  173. package/dist/videobyteBidAdapter.js +1 -1
  174. package/dist/visxBidAdapter.js +1 -1
  175. package/dist/voxBidAdapter.js +1 -1
  176. package/dist/vrtcalBidAdapter.js +1 -1
  177. package/dist/vuukleBidAdapter.js +1 -1
  178. package/dist/widespaceBidAdapter.js +1 -1
  179. package/dist/winrBidAdapter.js +1 -1
  180. package/dist/yahoosspBidAdapter.js +1 -1
  181. package/dist/yandexBidAdapter.js +1 -1
  182. package/dist/yieldmoBidAdapter.js +1 -1
  183. package/dist/yieldoneAnalyticsAdapter.js +1 -1
  184. package/dist/zeotapIdPlusIdSystem.js +1 -1
  185. package/integrationExamples/gpt/adUnitFloors.html +0 -1
  186. package/integrationExamples/videoModule/jwplayer/bidMarkedAsUsed.html +1 -1
  187. package/integrationExamples/videoModule/jwplayer/eventListeners.html +2 -2
  188. package/integrationExamples/videoModule/jwplayer/eventsUI.html +1 -1
  189. package/integrationExamples/videoModule/jwplayer/gamAdServerMediation.html +1 -1
  190. package/integrationExamples/videoModule/jwplayer/mediaMetadata.html +1 -1
  191. package/integrationExamples/videoModule/jwplayer/playlist.html +1 -1
  192. package/integrationExamples/videoModule/videojs/bidMarkedAsUsed.html +1 -1
  193. package/integrationExamples/videoModule/videojs/bidRequestScheduling.html +1 -1
  194. package/integrationExamples/videoModule/videojs/eventListeners.html +1 -1
  195. package/integrationExamples/videoModule/videojs/eventsUI.html +1 -1
  196. package/integrationExamples/videoModule/videojs/gamAdServerMediation.html +1 -1
  197. package/integrationExamples/videoModule/videojs/mediaMetadata.html +1 -1
  198. package/integrationExamples/videoModule/videojs/playlist.html +1 -1
  199. package/modules/.submodules.json +1 -0
  200. package/modules/33acrossBidAdapter.js +24 -14
  201. package/modules/33acrossIdSystem.js +24 -4
  202. package/modules/a1MediaRtdProvider.js +92 -0
  203. package/modules/a1MediaRtdProvider.md +46 -0
  204. package/modules/adagioBidAdapter.js +0 -1
  205. package/modules/adfBidAdapter.js +4 -1
  206. package/modules/adkernelAdnBidAdapter.js +1 -1
  207. package/modules/adkernelBidAdapter.js +10 -3
  208. package/modules/admanBidAdapter.js +4 -0
  209. package/modules/admixerIdSystem.js +6 -0
  210. package/modules/adnuntiusBidAdapter.js +5 -13
  211. package/modules/adqueryIdSystem.js +6 -0
  212. package/modules/adtelligentIdSystem.js +6 -0
  213. package/modules/adyoulikeBidAdapter.js +6 -3
  214. package/modules/amxIdSystem.js +6 -0
  215. package/modules/beachfrontBidAdapter.js +32 -6
  216. package/modules/brandmetricsRtdProvider.js +36 -2
  217. package/modules/brandmetricsRtdProvider.md +17 -2
  218. package/modules/britepoolIdSystem.js +6 -0
  219. package/modules/connectIdSystem.js +6 -0
  220. package/modules/consentManagementGpp.js +10 -1
  221. package/modules/consumableBidAdapter.js +9 -1
  222. package/modules/criteoIdSystem.js +6 -0
  223. package/modules/czechAdIdSystem.js +6 -0
  224. package/modules/dacIdSystem.js +6 -0
  225. package/modules/deepintentDpesIdSystem.js +7 -2
  226. package/modules/dmdIdSystem.js +6 -0
  227. package/modules/euidIdSystem.js +9 -0
  228. package/modules/fabrickIdSystem.js +6 -0
  229. package/modules/ftrackIdSystem.js +16 -0
  230. package/modules/gdprEnforcement.js +27 -22
  231. package/modules/geolocationRtdProvider.js +65 -0
  232. package/modules/gravitoIdSystem.js +6 -0
  233. package/modules/greenbidsRtdProvider.js +1 -1
  234. package/modules/gridBidAdapter.js +19 -0
  235. package/modules/growthCodeIdSystem.js +20 -1
  236. package/modules/hadronIdSystem.js +6 -0
  237. package/modules/id5IdSystem.js +34 -8
  238. package/modules/identityLinkIdSystem.js +6 -0
  239. package/modules/idxIdSystem.js +6 -0
  240. package/modules/imdsBidAdapter.js +38 -14
  241. package/modules/imuIdSystem.js +10 -0
  242. package/modules/intentIqIdSystem.js +6 -0
  243. package/modules/invibesBidAdapter.js +5 -5
  244. package/modules/ixBidAdapter.js +56 -2
  245. package/modules/justIdSystem.js +6 -0
  246. package/modules/kargoBidAdapter.js +4 -0
  247. package/modules/kinessoIdSystem.js +7 -2
  248. package/modules/liveIntentIdSystem.js +53 -0
  249. package/modules/lotamePanoramaIdSystem.js +6 -0
  250. package/modules/merkleIdSystem.js +24 -0
  251. package/modules/minutemediaBidAdapter.js +17 -2
  252. package/modules/mwOpenLinkIdSystem.js +6 -0
  253. package/modules/naveggIdSystem.js +6 -0
  254. package/modules/netIdSystem.js +6 -0
  255. package/modules/novatiqIdSystem.js +12 -0
  256. package/modules/oguryBidAdapter.js +29 -16
  257. package/modules/oneKeyIdSystem.js +26 -0
  258. package/modules/ozoneBidAdapter.js +65 -18
  259. package/modules/ozoneBidAdapter.md +3 -1
  260. package/modules/pairIdSystem.js +6 -0
  261. package/modules/parrableIdSystem.js +38 -2
  262. package/modules/publinkIdSystem.js +7 -1
  263. package/modules/pubmaticBidAdapter.js +16 -1
  264. package/modules/pulsepointBidAdapter.js +63 -424
  265. package/modules/pulsepointBidAdapter.md +39 -45
  266. package/modules/quantcastIdSystem.js +6 -0
  267. package/modules/rubiconBidAdapter.js +9 -0
  268. package/modules/sharedIdSystem.js +7 -1
  269. package/modules/silverpushBidAdapter.js +2 -2
  270. package/modules/sovrnBidAdapter.js +5 -1
  271. package/modules/ssmasBidAdapter.js +126 -0
  272. package/modules/ssmasBidAdapter.md +35 -0
  273. package/modules/sspBCBidAdapter.js +36 -13
  274. package/modules/stroeerCoreBidAdapter.js +2 -3
  275. package/modules/tapadIdSystem.js +6 -0
  276. package/modules/teadsBidAdapter.js +2 -0
  277. package/modules/tncIdSystem.js +6 -0
  278. package/modules/topicsFpdModule.js +4 -1
  279. package/modules/topicsFpdModule.md +4 -0
  280. package/modules/tripleliftBidAdapter.js +5 -0
  281. package/modules/uid2IdSystem.js +14 -0
  282. package/modules/unifiedIdSystem.js +11 -0
  283. package/modules/userId/eids.js +6 -445
  284. package/modules/userId/index.js +38 -26
  285. package/modules/utiqSystem.js +9 -0
  286. package/modules/verizonMediaIdSystem.js +6 -0
  287. package/modules/vidazooBidAdapter.js +5 -7
  288. package/modules/voxBidAdapter.js +16 -5
  289. package/modules/vrtcalBidAdapter.js +10 -6
  290. package/modules/yahoosspBidAdapter.js +38 -33
  291. package/modules/yahoosspBidAdapter.md +96 -95
  292. package/modules/yandexBidAdapter.js +12 -15
  293. package/modules/zeotapIdPlusIdSystem.js +6 -0
  294. package/package.json +1 -1
  295. package/src/activities/redactor.js +1 -1
  296. package/src/adapters/bidderFactory.js +15 -6
  297. package/src/adloader.js +2 -1
  298. package/src/auction.js +24 -2
  299. package/src/constants.json +3 -1
  300. package/src/fpd/sua.js +8 -2
  301. package/test/spec/auctionmanager_spec.js +29 -1
  302. package/test/spec/fpd/enrichment_spec.js +7 -1
  303. package/test/spec/fpd/sua_spec.js +12 -0
  304. package/test/spec/modules/33acrossBidAdapter_spec.js +188 -35
  305. package/test/spec/modules/33acrossIdSystem_spec.js +122 -27
  306. package/test/spec/modules/a1MediaRtdProvider_spec.js +105 -0
  307. package/test/spec/modules/adagioBidAdapter_spec.js +0 -1
  308. package/test/spec/modules/adfBidAdapter_spec.js +47 -0
  309. package/test/spec/modules/adkernelAdnBidAdapter_spec.js +1 -2
  310. package/test/spec/modules/adkernelBidAdapter_spec.js +7 -2
  311. package/test/spec/modules/adnuntiusBidAdapter_spec.js +116 -64
  312. package/test/spec/modules/adyoulikeBidAdapter_spec.js +13 -24
  313. package/test/spec/modules/beachfrontBidAdapter_spec.js +35 -2
  314. package/test/spec/modules/brandmetricsRtdProvider_spec.js +69 -7
  315. package/test/spec/modules/consentManagementGpp_spec.js +16 -0
  316. package/test/spec/modules/consumableBidAdapter_spec.js +15 -0
  317. package/test/spec/modules/freewheel-sspBidAdapter_spec.js +5 -5
  318. package/test/spec/modules/gdprEnforcement_spec.js +43 -2
  319. package/test/spec/modules/geolocationRtdProvider_spec.js +119 -0
  320. package/test/spec/modules/greenbidsRtdProvider_spec.js +1 -1
  321. package/test/spec/modules/gridBidAdapter_spec.js +42 -0
  322. package/test/spec/modules/id5IdSystem_spec.js +18 -0
  323. package/test/spec/modules/imdsBidAdapter_spec.js +98 -17
  324. package/test/spec/modules/invibesBidAdapter_spec.js +123 -32
  325. package/test/spec/modules/ixBidAdapter_spec.js +95 -5
  326. package/test/spec/modules/kargoBidAdapter_spec.js +121 -106
  327. package/test/spec/modules/medianetBidAdapter_spec.js +117 -0
  328. package/test/spec/modules/minutemediaBidAdapter_spec.js +36 -5
  329. package/test/spec/modules/oguryBidAdapter_spec.js +208 -108
  330. package/test/spec/modules/outbrainBidAdapter_spec.js +3 -5
  331. package/test/spec/modules/ozoneBidAdapter_spec.js +27 -1
  332. package/test/spec/modules/prebidServerBidAdapter_spec.js +2 -20
  333. package/test/spec/modules/priceFloors_spec.js +14 -0
  334. package/test/spec/modules/pubmaticBidAdapter_spec.js +125 -373
  335. package/test/spec/modules/pulsepointBidAdapter_spec.js +225 -486
  336. package/test/spec/modules/rubiconBidAdapter_spec.js +220 -9
  337. package/test/spec/modules/smaatoBidAdapter_spec.js +4 -6
  338. package/test/spec/modules/sovrnBidAdapter_spec.js +24 -4
  339. package/test/spec/modules/ssmasBidAdapter_spec.js +244 -0
  340. package/test/spec/modules/sspBCBidAdapter_spec.js +18 -19
  341. package/test/spec/modules/stroeerCoreBidAdapter_spec.js +8 -5
  342. package/test/spec/modules/teadsBidAdapter_spec.js +70 -21
  343. package/test/spec/modules/topicsFpdModule_spec.js +10 -4
  344. package/test/spec/modules/tripleliftBidAdapter_spec.js +40 -0
  345. package/test/spec/modules/userId_spec.js +116 -7
  346. package/test/spec/modules/vidazooBidAdapter_spec.js +0 -5
  347. package/test/spec/modules/voxBidAdapter_spec.js +93 -0
  348. package/test/spec/modules/vrtcalBidAdapter_spec.js +12 -4
  349. package/test/spec/modules/xeBidAdapter_spec.js +366 -368
  350. package/test/spec/modules/yahoosspBidAdapter_spec.js +405 -330
  351. package/test/spec/modules/yandexBidAdapter_spec.js +21 -3
  352. package/test/spec/unit/core/bidderFactory_spec.js +61 -14
  353. package/integrationExamples/gpt/inskin_example.html +0 -100
  354. package/integrationExamples/gpt/pbjs_video_adUnit.html +0 -109
@@ -38,7 +38,7 @@ describe('SSPBC adapter', function () {
38
38
  },
39
39
  auctionId,
40
40
  bidderRequestId,
41
- bidId: auctionId + '1',
41
+ bidId: bidderRequestId + '1',
42
42
  transactionId,
43
43
  },
44
44
  {
@@ -60,7 +60,7 @@ describe('SSPBC adapter', function () {
60
60
  },
61
61
  auctionId,
62
62
  bidderRequestId,
63
- bidId: auctionId + '2',
63
+ bidId: bidderRequestId + '2',
64
64
  transactionId,
65
65
  }
66
66
  ];
@@ -83,7 +83,7 @@ describe('SSPBC adapter', function () {
83
83
  ],
84
84
  auctionId,
85
85
  bidderRequestId,
86
- bidId: auctionId + '1',
86
+ bidId: bidderRequestId + '1',
87
87
  transactionId,
88
88
  };
89
89
  const bid_native = {
@@ -122,7 +122,7 @@ describe('SSPBC adapter', function () {
122
122
  ],
123
123
  auctionId,
124
124
  bidderRequestId,
125
- bidId: auctionId + '1',
125
+ bidId: bidderRequestId + '1',
126
126
  transactionId,
127
127
  };
128
128
  const bid_video = {
@@ -144,7 +144,7 @@ describe('SSPBC adapter', function () {
144
144
  ],
145
145
  auctionId,
146
146
  bidderRequestId,
147
- bidId: auctionId + '1',
147
+ bidId: bidderRequestId + '1',
148
148
  transactionId,
149
149
  };
150
150
  const bids_timeouted = [{
@@ -155,7 +155,7 @@ describe('SSPBC adapter', function () {
155
155
  siteId: '8816',
156
156
  }],
157
157
  auctionId,
158
- bidId: auctionId + '1',
158
+ bidId: bidderRequestId + '1',
159
159
  timeout: 100,
160
160
  },
161
161
  {
@@ -166,7 +166,7 @@ describe('SSPBC adapter', function () {
166
166
  siteId: '8816',
167
167
  }],
168
168
  auctionId,
169
- bidId: auctionId + '2',
169
+ bidId: bidderRequestId + '2',
170
170
  timeout: 100,
171
171
  }
172
172
  ];
@@ -198,7 +198,7 @@ describe('SSPBC adapter', function () {
198
198
  },
199
199
  auctionId,
200
200
  bidderRequestId,
201
- bidId: auctionId + '1',
201
+ bidId: bidderRequestId + '1',
202
202
  transactionId,
203
203
  }];
204
204
  const bidRequest = {
@@ -293,7 +293,7 @@ describe('SSPBC adapter', function () {
293
293
  };
294
294
  const serverResponse = {
295
295
  'body': {
296
- 'id': auctionId,
296
+ 'id': bidderRequestId,
297
297
  'seatbid': [{
298
298
  'bid': [{
299
299
  'id': '3347324c-6889-46d2-a800-ae78a5214c06',
@@ -333,7 +333,7 @@ describe('SSPBC adapter', function () {
333
333
  };
334
334
  const serverResponseSingle = {
335
335
  'body': {
336
- 'id': auctionId,
336
+ 'id': bidderRequestId,
337
337
  'seatbid': [{
338
338
  'bid': [{
339
339
  'id': '3347324c-6889-46d2-a800-ae78a5214c06',
@@ -358,11 +358,11 @@ describe('SSPBC adapter', function () {
358
358
  };
359
359
  const serverResponseOneCode = {
360
360
  'body': {
361
- 'id': auctionId,
361
+ 'id': bidderRequestId,
362
362
  'seatbid': [{
363
363
  'bid': [{
364
364
  'id': '3347324c-6889-46d2-a800-ae78a5214c06',
365
- 'impid': 'bidid-' + auctionId + '1',
365
+ 'impid': 'bidid-' + bidderRequestId + '1',
366
366
  'price': 1,
367
367
  'adid': 'lxHWkB7OnZeso3QiN1N4',
368
368
  'nurl': '',
@@ -385,11 +385,11 @@ describe('SSPBC adapter', function () {
385
385
  };
386
386
  const serverResponseVideo = {
387
387
  'body': {
388
- 'id': auctionId,
388
+ 'id': bidderRequestId,
389
389
  'seatbid': [{
390
390
  'bid': [{
391
391
  'id': '3347324c-6889-46d2-a800-ae78a5214c06',
392
- 'impid': 'bidid-' + auctionId + '1',
392
+ 'impid': 'bidid-' + bidderRequestId + '1',
393
393
  'price': 1,
394
394
  'adid': 'lxHWkB7OnZeso3QiN1N4',
395
395
  'nurl': '',
@@ -413,11 +413,11 @@ describe('SSPBC adapter', function () {
413
413
  };
414
414
  const serverResponseNative = {
415
415
  'body': {
416
- 'id': auctionId,
416
+ 'id': bidderRequestId,
417
417
  'seatbid': [{
418
418
  'bid': [{
419
419
  'id': '3347324c-6889-46d2-a800-ae78a5214c06',
420
- 'impid': 'bidid-' + auctionId + '1',
420
+ 'impid': 'bidid-' + bidderRequestId + '1',
421
421
  'price': 1,
422
422
  'adid': 'lxHWkB7OnZeso3QiN1N4',
423
423
  'nurl': '',
@@ -438,7 +438,7 @@ describe('SSPBC adapter', function () {
438
438
  };
439
439
  const emptyResponse = {
440
440
  'body': {
441
- 'id': auctionId,
441
+ 'id': bidderRequestId,
442
442
  }
443
443
  }
444
444
  return {
@@ -696,7 +696,7 @@ describe('SSPBC adapter', function () {
696
696
 
697
697
  let notificationPayload = spec.onBidWon(bid);
698
698
  expect(notificationPayload).to.have.property('event').that.equals('bidWon');
699
- expect(notificationPayload).to.have.property('requestId').that.equals(bid.auctionId);
699
+ expect(notificationPayload).to.have.property('requestId').that.equals(bid.bidderRequestId);
700
700
  expect(notificationPayload).to.have.property('tagid').that.deep.equals([bid.adUnitCode]);
701
701
  expect(notificationPayload).to.have.property('siteId').that.is.an('array');
702
702
  expect(notificationPayload).to.have.property('slotId').that.is.an('array');
@@ -717,7 +717,6 @@ describe('SSPBC adapter', function () {
717
717
  let notificationPayload = spec.onTimeout(bids_timeouted);
718
718
 
719
719
  expect(notificationPayload).to.have.property('event').that.equals('timeout');
720
- expect(notificationPayload).to.have.property('requestId').that.equals(bids_timeouted[0].auctionId);
721
720
  expect(notificationPayload).to.have.property('tagid').that.deep.equals([bids_timeouted[0].adUnitCode, bids_timeouted[1].adUnitCode]);
722
721
  });
723
722
  });
@@ -3,6 +3,7 @@ import {spec} from 'modules/stroeerCoreBidAdapter.js';
3
3
  import * as utils from 'src/utils.js';
4
4
  import {BANNER, VIDEO} from '../../../src/mediaTypes.js';
5
5
  import {find} from 'src/polyfill.js';
6
+ import sinon from 'sinon';
6
7
 
7
8
  describe('stroeerCore bid adapter', function () {
8
9
  let sandbox;
@@ -51,8 +52,6 @@ describe('stroeerCore bid adapter', function () {
51
52
  assert.notProperty(bidObject, 'ad');
52
53
  }
53
54
 
54
- const AUCTION_ID = utils.getUniqueIdentifierStr();
55
-
56
55
  // Vendor user ids and associated data
57
56
  const userIds = Object.freeze({
58
57
  criteoId: 'criteo-user-id',
@@ -72,7 +71,6 @@ describe('stroeerCore bid adapter', function () {
72
71
  });
73
72
 
74
73
  const buildBidderRequest = () => ({
75
- auctionId: AUCTION_ID,
76
74
  bidderRequestId: 'bidder-request-id-123',
77
75
  bidderCode: 'stroeerCore',
78
76
  timeout: 5000,
@@ -394,6 +392,10 @@ describe('stroeerCore bid adapter', function () {
394
392
  clock.tick(13500);
395
393
  const bidReq = buildBidderRequest();
396
394
 
395
+ const UUID = 'fb6a39e3-083f-424c-9046-f1095e15f3d5';
396
+
397
+ const generateUUIDStub = sinon.stub(utils, 'generateUUID').returns(UUID);
398
+
397
399
  const serverRequestInfo = spec.buildRequests(bidReq.bids, bidReq);
398
400
 
399
401
  const expectedTimeout = bidderRequest.timeout - (13500 - bidderRequest.auctionStart);
@@ -401,7 +403,7 @@ describe('stroeerCore bid adapter', function () {
401
403
  assert.equal(expectedTimeout, 1500);
402
404
 
403
405
  const expectedJsonPayload = {
404
- 'id': AUCTION_ID,
406
+ 'id': UUID,
405
407
  'timeout': expectedTimeout,
406
408
  'ref': 'https://www.example.com/?search=monkey',
407
409
  'mpa': true,
@@ -429,8 +431,9 @@ describe('stroeerCore bid adapter', function () {
429
431
 
430
432
  // trim away fields with undefined
431
433
  const actualJsonPayload = JSON.parse(JSON.stringify(serverRequestInfo.data));
432
-
433
434
  assert.deepEqual(actualJsonPayload, expectedJsonPayload);
435
+
436
+ generateUUIDStub.restore();
434
437
  });
435
438
 
436
439
  describe('video bids', () => {
@@ -108,21 +108,21 @@ describe('teadsBidAdapter', () => {
108
108
  }
109
109
  ];
110
110
 
111
- let bidderResquestDefault = {
111
+ let bidderRequestDefault = {
112
112
  'auctionId': '1d1a030790a475',
113
113
  'bidderRequestId': '22edbae2733bf6',
114
114
  'timeout': 3000
115
115
  };
116
116
 
117
117
  it('should send bid request to ENDPOINT via POST', function() {
118
- const request = spec.buildRequests(bidRequests, bidderResquestDefault);
118
+ const request = spec.buildRequests(bidRequests, bidderRequestDefault);
119
119
 
120
120
  expect(request.url).to.equal(ENDPOINT);
121
121
  expect(request.method).to.equal('POST');
122
122
  });
123
123
 
124
124
  it('should not send auctionId in bid request ', function() {
125
- const request = spec.buildRequests(bidRequests, bidderResquestDefault);
125
+ const request = spec.buildRequests(bidRequests, bidderRequestDefault);
126
126
  const payload = JSON.parse(request.data);
127
127
 
128
128
  expect(payload.data[0].auctionId).to.not.exist
@@ -169,6 +169,55 @@ describe('teadsBidAdapter', () => {
169
169
  expect(payload.gdpr_iab.apiVersion).to.equal(2);
170
170
  });
171
171
 
172
+ it('should add videoPlcmt to payload', function () {
173
+ let bidRequestWithVideoPlcmt = Object.assign({}, bidRequests[0], {
174
+ mediaTypes: {
175
+ video: {
176
+ plcmt: 1
177
+ }
178
+ }
179
+ });
180
+
181
+ const request = spec.buildRequests([bidRequestWithVideoPlcmt], bidderRequestDefault);
182
+ const payload = JSON.parse(request.data);
183
+
184
+ expect(payload.data[0].videoPlcmt).to.exist;
185
+ expect(payload.data[0].videoPlcmt).to.equal(1);
186
+ });
187
+
188
+ it('should not add videoPlcmt to payload if empty', function () {
189
+ let bidRequestWithNullVideoPlcmt = Object.assign({}, bidRequests[0], {
190
+ mediaTypes: {
191
+ video: {
192
+ plcmt: null
193
+ }
194
+ }
195
+ });
196
+
197
+ let bidRequestWithEmptyVideoPlcmt = Object.assign({}, bidRequests[0], {
198
+ mediaTypes: {
199
+ video: {
200
+ plcmt: ''
201
+ }
202
+ }
203
+ });
204
+
205
+ const request1 = spec.buildRequests([bidRequestWithNullVideoPlcmt], bidderRequestDefault);
206
+ const request2 = spec.buildRequests([bidRequestWithEmptyVideoPlcmt], bidderRequestDefault);
207
+ const payload1 = JSON.parse(request1.data);
208
+ const payload2 = JSON.parse(request2.data);
209
+
210
+ expect(payload1.data[0].videoPlcmt).to.not.exist;
211
+ expect(payload2.data[0].videoPlcmt).to.not.exist;
212
+ });
213
+
214
+ it('should not add videoPlcmt to payload if it is not in bid request', function () {
215
+ const request = spec.buildRequests(bidRequests, bidderRequestDefault);
216
+ const payload = JSON.parse(request.data);
217
+
218
+ expect(payload.data[0].videoPlcmt).to.not.exist;
219
+ });
220
+
172
221
  it('should add referer info to payload', function () {
173
222
  const bidRequest = Object.assign({}, bidRequests[0])
174
223
  const bidderRequest = {
@@ -186,7 +235,7 @@ describe('teadsBidAdapter', () => {
186
235
  });
187
236
 
188
237
  it('should add networkBandwidth info to payload', function () {
189
- const request = spec.buildRequests(bidRequests, bidderResquestDefault);
238
+ const request = spec.buildRequests(bidRequests, bidderRequestDefault);
190
239
  const payload = JSON.parse(request.data);
191
240
 
192
241
  const bandwidth = window.navigator && window.navigator.connection && window.navigator.connection.downlink;
@@ -201,7 +250,7 @@ describe('teadsBidAdapter', () => {
201
250
  });
202
251
 
203
252
  it('should add pageReferrer info to payload', function () {
204
- const request = spec.buildRequests(bidRequests, bidderResquestDefault);
253
+ const request = spec.buildRequests(bidRequests, bidderRequestDefault);
205
254
  const payload = JSON.parse(request.data);
206
255
 
207
256
  expect(payload.pageReferrer).to.exist;
@@ -209,7 +258,7 @@ describe('teadsBidAdapter', () => {
209
258
  });
210
259
 
211
260
  it('should add timeToFirstByte info to payload', function () {
212
- const request = spec.buildRequests(bidRequests, bidderResquestDefault);
261
+ const request = spec.buildRequests(bidRequests, bidderRequestDefault);
213
262
  const payload = JSON.parse(request.data);
214
263
  const performance = window.performance || window.webkitPerformance || window.msPerformance || window.mozPerformance;
215
264
 
@@ -410,7 +459,7 @@ describe('teadsBidAdapter', () => {
410
459
  }
411
460
  });
412
461
 
413
- const request = spec.buildRequests([bidRequest], bidderResquestDefault);
462
+ const request = spec.buildRequests([bidRequest], bidderRequestDefault);
414
463
  const payload = JSON.parse(request.data);
415
464
 
416
465
  expect(payload.schain).to.exist;
@@ -458,7 +507,7 @@ describe('teadsBidAdapter', () => {
458
507
  }
459
508
  });
460
509
 
461
- const requestWithUserAgentClientHints = spec.buildRequests([bidRequest], bidderResquestDefault);
510
+ const requestWithUserAgentClientHints = spec.buildRequests([bidRequest], bidderRequestDefault);
462
511
  const payload = JSON.parse(requestWithUserAgentClientHints.data);
463
512
 
464
513
  expect(payload.userAgentClientHints).to.exist;
@@ -489,7 +538,7 @@ describe('teadsBidAdapter', () => {
489
538
  }
490
539
  );
491
540
 
492
- const defaultRequest = spec.buildRequests(bidRequests, bidderResquestDefault);
541
+ const defaultRequest = spec.buildRequests(bidRequests, bidderRequestDefault);
493
542
  expect(JSON.parse(defaultRequest.data).userAgentClientHints).to.not.exist;
494
543
  });
495
544
 
@@ -566,7 +615,7 @@ describe('teadsBidAdapter', () => {
566
615
  userId: {} // no property -> assumption that the system is disabled
567
616
  };
568
617
 
569
- const request = spec.buildRequests([bidRequest], bidderResquestDefault);
618
+ const request = spec.buildRequests([bidRequest], bidderRequestDefault);
570
619
  const payload = JSON.parse(request.data);
571
620
 
572
621
  for (const userId in userIdModules) {
@@ -575,7 +624,7 @@ describe('teadsBidAdapter', () => {
575
624
  });
576
625
 
577
626
  it(`should not add param to payload if user id field is absent`, function () {
578
- const request = spec.buildRequests([baseBidRequest], bidderResquestDefault);
627
+ const request = spec.buildRequests([baseBidRequest], bidderRequestDefault);
579
628
  const payload = JSON.parse(request.data);
580
629
 
581
630
  for (const userId in userIdModules) {
@@ -592,7 +641,7 @@ describe('teadsBidAdapter', () => {
592
641
  }
593
642
  };
594
643
 
595
- const request = spec.buildRequests([bidRequest], bidderResquestDefault);
644
+ const request = spec.buildRequests([bidRequest], bidderRequestDefault);
596
645
  const payload = JSON.parse(request.data);
597
646
 
598
647
  expect(payload).not.to.have.property('liveRampId');
@@ -612,7 +661,7 @@ describe('teadsBidAdapter', () => {
612
661
  userId: userIdObject
613
662
  };
614
663
 
615
- const request = spec.buildRequests([bidRequest], bidderResquestDefault);
664
+ const request = spec.buildRequests([bidRequest], bidderRequestDefault);
616
665
  const payload = JSON.parse(request.data);
617
666
 
618
667
  expect(payload['unifiedId2']).to.equal('unifiedId2-id');
@@ -641,7 +690,7 @@ describe('teadsBidAdapter', () => {
641
690
  }
642
691
  };
643
692
 
644
- const request = spec.buildRequests([bidRequest], bidderResquestDefault);
693
+ const request = spec.buildRequests([bidRequest], bidderRequestDefault);
645
694
  const payload = JSON.parse(request.data);
646
695
 
647
696
  expect(payload).not.to.have.property('firstPartyCookieTeadsId');
@@ -659,7 +708,7 @@ describe('teadsBidAdapter', () => {
659
708
  }
660
709
  };
661
710
 
662
- const request = spec.buildRequests([bidRequest], bidderResquestDefault);
711
+ const request = spec.buildRequests([bidRequest], bidderRequestDefault);
663
712
  const payload = JSON.parse(request.data);
664
713
 
665
714
  expect(payload).not.to.have.property('firstPartyCookieTeadsId');
@@ -677,7 +726,7 @@ describe('teadsBidAdapter', () => {
677
726
  }
678
727
  };
679
728
 
680
- const request = spec.buildRequests([bidRequest], bidderResquestDefault);
729
+ const request = spec.buildRequests([bidRequest], bidderRequestDefault);
681
730
 
682
731
  const payload = JSON.parse(request.data);
683
732
 
@@ -697,7 +746,7 @@ describe('teadsBidAdapter', () => {
697
746
  }
698
747
  };
699
748
 
700
- const request = spec.buildRequests([bidRequest], bidderResquestDefault);
749
+ const request = spec.buildRequests([bidRequest], bidderRequestDefault);
701
750
 
702
751
  const payload = JSON.parse(request.data);
703
752
 
@@ -750,7 +799,7 @@ describe('teadsBidAdapter', () => {
750
799
  };
751
800
  }
752
801
  );
753
- const request = spec.buildRequests(updatedBidRequests, bidderResquestDefault);
802
+ const request = spec.buildRequests(updatedBidRequests, bidderRequestDefault);
754
803
  const payload = JSON.parse(request.data);
755
804
 
756
805
  expect(payload.data[0].gpid).to.equal('1111/home-left-0');
@@ -767,7 +816,7 @@ describe('teadsBidAdapter', () => {
767
816
  }
768
817
  }));
769
818
 
770
- const request = spec.buildRequests(updatedBidRequests, bidderResquestDefault);
819
+ const request = spec.buildRequests(updatedBidRequests, bidderRequestDefault);
771
820
  const payload = JSON.parse(request.data);
772
821
 
773
822
  return payload.data.forEach(bid => {
@@ -784,7 +833,7 @@ describe('teadsBidAdapter', () => {
784
833
  }
785
834
  }));
786
835
 
787
- const request = spec.buildRequests(updatedBidRequests, bidderResquestDefault);
836
+ const request = spec.buildRequests(updatedBidRequests, bidderRequestDefault);
788
837
  const payload = JSON.parse(request.data);
789
838
 
790
839
  return payload.data.forEach(bid => {
@@ -795,7 +844,7 @@ describe('teadsBidAdapter', () => {
795
844
 
796
845
  function checkMediaTypesSizes(mediaTypes, expectedSizes) {
797
846
  const bidRequestWithBannerSizes = Object.assign(bidRequests[0], mediaTypes);
798
- const requestWithBannerSizes = spec.buildRequests([bidRequestWithBannerSizes], bidderResquestDefault);
847
+ const requestWithBannerSizes = spec.buildRequests([bidRequestWithBannerSizes], bidderRequestDefault);
799
848
  const payloadWithBannerSizes = JSON.parse(requestWithBannerSizes.data);
800
849
 
801
850
  return payloadWithBannerSizes.data.forEach(bid => {
@@ -372,11 +372,16 @@ describe('getCachedTopics()', () => {
372
372
  }
373
373
  ];
374
374
 
375
- const evt = {
375
+ const evt_pm = {
376
376
  data: '{"segment":{"domain":"ads.pubmatic.com","topics":[{"configVersion":"chrome.1","modelVersion":"2206021246","taxonomyVersion":"1","topic":165,"version":"chrome.1:1:2206021246"}],"bidder":"pubmatic"},"date":1669743901858}',
377
377
  origin: 'https://ads.pubmatic.com'
378
378
  };
379
379
 
380
+ const evt_rh = {
381
+ data: '{"segment":{"domain":"topics.authorizedvault.com","topics":[{"configVersion":"chrome.1","modelVersion":"2206021246","taxonomyVersion":"1","topic":165,"version":"chrome.1:1:2206021246"}],"bidder":"rtbhouse"},"date":1669743901858}',
382
+ origin: 'https://topics.authorizedvault.com'
383
+ };
384
+
380
385
  let gdprDataHdlrStub;
381
386
  beforeEach(() => {
382
387
  gdprDataHdlrStub = sinon.stub(gdprDataHandler, 'getConsentData');
@@ -413,9 +418,10 @@ describe('getCachedTopics()', () => {
413
418
  it('should stored segments if receiveMessage event is triggerred with segment data', () => {
414
419
  return processFpd({}, {global: {}}, {data: Promise.resolve(mockData)})
415
420
  .then(({global}) => {
416
- receiveMessage(evt);
421
+ receiveMessage(evt_pm);
422
+ receiveMessage(evt_rh);
417
423
  let segments = new Map(safeJSONParse(storage.getDataFromLocalStorage(topicStorageName)));
418
- expect(segments.has('pubmatic')).to.equal(true);
424
+ expect(segments.has('pubmatic') || segments.has('rtbhouse')).to.equal(true);
419
425
  });
420
426
  });
421
427
 
@@ -424,7 +430,7 @@ describe('getCachedTopics()', () => {
424
430
  storage.setDataInLocalStorage(topicStorageName, storedSegments);
425
431
  return processFpd({}, {global: {}}, {data: Promise.resolve(mockData)})
426
432
  .then(({global}) => {
427
- receiveMessage(evt);
433
+ receiveMessage(evt_pm);
428
434
  let segments = new Map(safeJSONParse(storage.getDataFromLocalStorage(topicStorageName)));
429
435
  expect(segments.get('pubmatic')[2206021246].segment.length).to.equal(1);
430
436
  });
@@ -1130,6 +1130,46 @@ describe('triplelift adapter', function () {
1130
1130
 
1131
1131
  expect(logErrorSpy.calledOnce).to.equal(true);
1132
1132
  });
1133
+ it('should add ortb2 ext object if global fpd is available', function() {
1134
+ const ortb2 = {
1135
+ site: {
1136
+ domain: 'page.example.com',
1137
+ cat: ['IAB2'],
1138
+ sectioncat: ['IAB2-2'],
1139
+ pagecat: ['IAB2-2'],
1140
+ page: 'https://page.example.com/here.html',
1141
+ },
1142
+ user: {
1143
+ yob: 1985,
1144
+ gender: 'm',
1145
+ keywords: 'a,b',
1146
+ data: [
1147
+ {
1148
+ name: 'dataprovider.com',
1149
+ ext: { segtax: 4 },
1150
+ segment: [{ id: '1' }]
1151
+ }
1152
+ ],
1153
+ ext: {
1154
+ data: {
1155
+ registered: true,
1156
+ interests: ['cars']
1157
+ }
1158
+ }
1159
+ }
1160
+ };
1161
+
1162
+ const request = tripleliftAdapterSpec.buildRequests(bidRequests, {...bidderRequest, ortb2});
1163
+ const { data: payload } = request;
1164
+ expect(payload.ext.ortb2).to.exist;
1165
+ expect(payload.ext.ortb2.site).to.deep.equal({
1166
+ domain: 'page.example.com',
1167
+ cat: ['IAB2'],
1168
+ sectioncat: ['IAB2-2'],
1169
+ pagecat: ['IAB2-2'],
1170
+ page: 'https://page.example.com/here.html',
1171
+ });
1172
+ });
1133
1173
  it('should send global config fpd if kvps are available', function() {
1134
1174
  const sens = null;
1135
1175
  const category = ['news', 'weather', 'hurricane'];