prebid.js 7.53.0 → 8.0.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 (706) hide show
  1. package/.github/workflows/codeql-analysis.yml +2 -2
  2. package/dist/1plusXRtdProvider.js +1 -1
  3. package/dist/33acrossBidAdapter.js +1 -1
  4. package/dist/33acrossIdSystem.js +1 -1
  5. package/dist/adWMGAnalyticsAdapter.js +1 -1
  6. package/dist/adWMGBidAdapter.js +1 -1
  7. package/dist/adagioAnalyticsAdapter.js +1 -1
  8. package/dist/adagioBidAdapter.js +1 -1
  9. package/dist/adbookpspBidAdapter.js +1 -1
  10. package/dist/adfBidAdapter.js +1 -1
  11. package/dist/adgenerationBidAdapter.js +1 -1
  12. package/dist/adhashBidAdapter.js +1 -1
  13. package/dist/adkernelAdnAnalyticsAdapter.js +1 -1
  14. package/dist/adkernelAdnBidAdapter.js +1 -1
  15. package/dist/adkernelBidAdapter.js +1 -1
  16. package/dist/adlooxAdServerVideo.js +1 -1
  17. package/dist/adlooxAnalyticsAdapter.js +1 -1
  18. package/dist/adlooxRtdProvider.js +1 -1
  19. package/dist/adomikAnalyticsAdapter.js +1 -1
  20. package/dist/adprimeBidAdapter.js +1 -1
  21. package/dist/adqueryBidAdapter.js +1 -1
  22. package/dist/adrelevantisBidAdapter.js +1 -1
  23. package/dist/adtrgtmeBidAdapter.js +1 -1
  24. package/dist/adtrueBidAdapter.js +1 -1
  25. package/dist/aduptechBidAdapter.js +1 -1
  26. package/dist/advangelistsBidAdapter.js +1 -1
  27. package/dist/adxcgAnalyticsAdapter.js +1 -1
  28. package/dist/adxcgBidAdapter.js +1 -1
  29. package/dist/adxpremiumAnalyticsAdapter.js +1 -1
  30. package/dist/adyoulikeBidAdapter.js +1 -1
  31. package/dist/afpBidAdapter.js +1 -1
  32. package/dist/aidemBidAdapter.js +1 -1
  33. package/dist/airgridRtdProvider.js +1 -1
  34. package/dist/ajaBidAdapter.js +1 -1
  35. package/dist/amxBidAdapter.js +1 -1
  36. package/dist/amxIdSystem.js +1 -1
  37. package/dist/analyticsAdapter.js +1 -1
  38. package/dist/apacdexBidAdapter.js +1 -1
  39. package/dist/appierAnalyticsAdapter.js +1 -1
  40. package/dist/appnexusBidAdapter.js +1 -1
  41. package/dist/appnexusKeywords.js +1 -0
  42. package/dist/asoBidAdapter.js +1 -1
  43. package/dist/astraoneBidAdapter.js +1 -1
  44. package/dist/atsAnalyticsAdapter.js +1 -1
  45. package/dist/audiencerunBidAdapter.js +1 -1
  46. package/dist/automatadBidAdapter.js +1 -1
  47. package/dist/axonixBidAdapter.js +1 -1
  48. package/dist/beachfrontBidAdapter.js +1 -1
  49. package/dist/beopBidAdapter.js +1 -1
  50. package/dist/betweenBidAdapter.js +1 -1
  51. package/dist/bidViewability.js +1 -1
  52. package/dist/bidglassBidAdapter.js +1 -1
  53. package/dist/bidwatchAnalyticsAdapter.js +1 -1
  54. package/dist/big-richmediaBidAdapter.js +1 -1
  55. package/dist/bizzclickBidAdapter.js +1 -1
  56. package/dist/bluebillywigBidAdapter.js +1 -1
  57. package/dist/braveBidAdapter.js +1 -1
  58. package/dist/bridgewellBidAdapter.js +1 -1
  59. package/dist/brightMountainMediaBidAdapter.js +1 -1
  60. package/dist/browsiBidAdapter.js +1 -1
  61. package/dist/byDataAnalyticsAdapter.js +1 -1
  62. package/dist/cadentApertureMXBidAdapter.js +1 -0
  63. package/dist/carodaBidAdapter.js +1 -1
  64. package/dist/categoryTranslationMapping.js +1 -0
  65. package/dist/ccxBidAdapter.js +1 -1
  66. package/dist/chtnwBidAdapter.js +1 -1
  67. package/dist/cleanmedianetBidAdapter.js +1 -1
  68. package/dist/codefuelBidAdapter.js +1 -1
  69. package/dist/colossussspBidAdapter.js +1 -1
  70. package/dist/concertAnalyticsAdapter.js +1 -1
  71. package/dist/concertBidAdapter.js +1 -1
  72. package/dist/connectIdSystem.js +1 -1
  73. package/dist/connectadBidAdapter.js +1 -1
  74. package/dist/consentManagement.js +1 -1
  75. package/dist/consentManagementGpp.js +1 -1
  76. package/dist/consentManagementUsp.js +1 -1
  77. package/dist/consumableBidAdapter.js +1 -1
  78. package/dist/conversantAnalyticsAdapter.js +1 -1
  79. package/dist/conversantBidAdapter.js +1 -1
  80. package/dist/craftBidAdapter.js +1 -1
  81. package/dist/criteoBidAdapter.js +1 -1
  82. package/dist/criteoIdSystem.js +1 -1
  83. package/dist/currency.js +1 -1
  84. package/dist/cwireBidAdapter.js +1 -1
  85. package/dist/dailyhuntBidAdapter.js +1 -1
  86. package/dist/datablocksAnalyticsAdapter.js +1 -1
  87. package/dist/datablocksBidAdapter.js +1 -1
  88. package/dist/datawrkzBidAdapter.js +1 -1
  89. package/dist/debugging-standalone.js +1 -1
  90. package/dist/debugging.js +1 -1
  91. package/dist/deltaprojectsBidAdapter.js +1 -1
  92. package/dist/dependencies.json +58 -14
  93. package/dist/dfpAdServerVideo.js +1 -1
  94. package/dist/dianomiBidAdapter.js +1 -1
  95. package/dist/displayioBidAdapter.js +1 -1
  96. package/dist/dspxBidAdapter.js +1 -1
  97. package/dist/ebdrBidAdapter.js +1 -1
  98. package/dist/eplanningAnalyticsAdapter.js +1 -1
  99. package/dist/eplanningBidAdapter.js +1 -1
  100. package/dist/etargetBidAdapter.js +1 -1
  101. package/dist/euidIdSystem.js +1 -1
  102. package/dist/feedadBidAdapter.js +1 -1
  103. package/dist/finativeBidAdapter.js +1 -1
  104. package/dist/fintezaAnalyticsAdapter.js +1 -1
  105. package/dist/fluctBidAdapter.js +1 -1
  106. package/dist/freewheel-sspBidAdapter.js +1 -1
  107. package/dist/ftrackIdSystem.js +1 -1
  108. package/dist/gamoshiBidAdapter.js +1 -1
  109. package/dist/gdprEnforcement.js +1 -1
  110. package/dist/genericAnalyticsAdapter.js +1 -1
  111. package/dist/gmosspBidAdapter.js +1 -1
  112. package/dist/gnetBidAdapter.js +1 -1
  113. package/dist/goldbachBidAdapter.js +1 -1
  114. package/dist/gothamadsBidAdapter.js +1 -1
  115. package/dist/greenbidsAnalyticsAdapter.js +1 -1
  116. package/dist/greenbidsRtdProvider.js +1 -1
  117. package/dist/gridBidAdapter.js +1 -1
  118. package/dist/growthCodeAnalyticsAdapter.js +1 -1
  119. package/dist/gumgumBidAdapter.js +1 -1
  120. package/dist/h12mediaBidAdapter.js +1 -1
  121. package/dist/hadronAnalyticsAdapter.js +1 -1
  122. package/dist/holidBidAdapter.js +1 -1
  123. package/dist/hybridBidAdapter.js +1 -1
  124. package/dist/hypelabBidAdapter.js +1 -0
  125. package/dist/id5AnalyticsAdapter.js +1 -1
  126. package/dist/id5IdSystem.js +1 -1
  127. package/dist/imdsBidAdapter.js +1 -0
  128. package/dist/impactifyBidAdapter.js +1 -1
  129. package/dist/improvedigitalBidAdapter.js +1 -1
  130. package/dist/insticatorBidAdapter.js +1 -1
  131. package/dist/interactiveOffersBidAdapter.js +1 -1
  132. package/dist/invisiblyAnalyticsAdapter.js +1 -1
  133. package/dist/ixBidAdapter.js +1 -1
  134. package/dist/justpremiumBidAdapter.js +1 -1
  135. package/dist/kargoAnalyticsAdapter.js +1 -1
  136. package/dist/kargoBidAdapter.js +1 -1
  137. package/dist/keywords.js +1 -0
  138. package/dist/kinessoIdSystem.js +1 -1
  139. package/dist/koblerBidAdapter.js +1 -1
  140. package/dist/konduitAnalyticsAdapter.js +1 -1
  141. package/dist/kueezBidAdapter.js +1 -1
  142. package/dist/kueezRtbBidAdapter.js +1 -1
  143. package/dist/kulturemediaBidAdapter.js +1 -1
  144. package/dist/lassoBidAdapter.js +1 -1
  145. package/dist/lifestreetBidAdapter.js +1 -1
  146. package/dist/limelightDigitalBidAdapter.js +1 -1
  147. package/dist/liveIntentAnalyticsAdapter.js +1 -1
  148. package/dist/liveIntentIdSystem.js +1 -1
  149. package/dist/livewrappedAnalyticsAdapter.js +1 -1
  150. package/dist/livewrappedBidAdapter.js +1 -1
  151. package/dist/logicadBidAdapter.js +1 -1
  152. package/dist/loglyliftBidAdapter.js +1 -1
  153. package/dist/lotamePanoramaIdSystem.js +1 -1
  154. package/dist/luponmediaBidAdapter.js +1 -1
  155. package/dist/magniteAnalyticsAdapter.js +1 -1
  156. package/dist/malltvAnalyticsAdapter.js +1 -1
  157. package/dist/marsmediaAnalyticsAdapter.js +1 -1
  158. package/dist/marsmediaBidAdapter.js +1 -1
  159. package/dist/mediaforceBidAdapter.js +1 -1
  160. package/dist/mediafuseBidAdapter.js +1 -1
  161. package/dist/mediakeysBidAdapter.js +1 -1
  162. package/dist/medianetAnalyticsAdapter.js +1 -1
  163. package/dist/medianetBidAdapter.js +1 -1
  164. package/dist/mediasniperBidAdapter.js +1 -1
  165. package/dist/mediasquareBidAdapter.js +1 -1
  166. package/dist/mgidBidAdapter.js +1 -1
  167. package/dist/microadBidAdapter.js +1 -1
  168. package/dist/minutemediaBidAdapter.js +1 -1
  169. package/dist/minutemediaplusBidAdapter.js +1 -1
  170. package/dist/newspassidBidAdapter.js +1 -1
  171. package/dist/nextMillenniumBidAdapter.js +1 -1
  172. package/dist/nexx360BidAdapter.js +1 -1
  173. package/dist/not-for-prod/prebid.js +293 -323
  174. package/dist/objectGuard.js +1 -1
  175. package/dist/oguryBidAdapter.js +1 -1
  176. package/dist/onetagBidAdapter.js +1 -1
  177. package/dist/ooloAnalyticsAdapter.js +1 -1
  178. package/dist/operaadsBidAdapter.js +1 -1
  179. package/dist/optidigitalBidAdapter.js +1 -1
  180. package/dist/optimonAnalyticsAdapter.js +1 -1
  181. package/dist/orbidderBidAdapter.js +1 -1
  182. package/dist/ortbConverter.js +1 -1
  183. package/dist/otmBidAdapter.js +1 -1
  184. package/dist/outbrainBidAdapter.js +1 -1
  185. package/dist/oxxionAnalyticsAdapter.js +1 -1
  186. package/dist/oxxionRtdProvider.js +1 -1
  187. package/dist/ozoneBidAdapter.js +1 -1
  188. package/dist/padsquadBidAdapter.js +1 -1
  189. package/dist/parrableIdSystem.js +1 -1
  190. package/dist/pbsExtensions.js +1 -1
  191. package/dist/pianoDmpAnalyticsAdapter.js +1 -1
  192. package/dist/pixfutureBidAdapter.js +1 -1
  193. package/dist/prebid-core.js +2 -2
  194. package/dist/prebidServerBidAdapter.js +1 -1
  195. package/dist/prebidmanagerAnalyticsAdapter.js +1 -1
  196. package/dist/priceFloors.js +1 -1
  197. package/dist/prismaBidAdapter.js +1 -1
  198. package/dist/proxistoreBidAdapter.js +1 -1
  199. package/dist/pubgeniusBidAdapter.js +1 -1
  200. package/dist/publinkIdSystem.js +1 -1
  201. package/dist/pubmaticAnalyticsAdapter.js +1 -1
  202. package/dist/pubmaticBidAdapter.js +1 -1
  203. package/dist/pubperfAnalyticsAdapter.js +1 -1
  204. package/dist/pubstackAnalyticsAdapter.js +1 -1
  205. package/dist/pubwiseAnalyticsAdapter.js +1 -1
  206. package/dist/pubwiseBidAdapter.js +1 -1
  207. package/dist/pubxaiAnalyticsAdapter.js +1 -1
  208. package/dist/pulsepointAnalyticsAdapter.js +1 -1
  209. package/dist/pxyzBidAdapter.js +1 -1
  210. package/dist/quantcastBidAdapter.js +1 -1
  211. package/dist/quantcastIdSystem.js +1 -1
  212. package/dist/rasBidAdapter.js +1 -1
  213. package/dist/readpeakBidAdapter.js +1 -1
  214. package/dist/relaidoBidAdapter.js +1 -1
  215. package/dist/relevantAnalyticsAdapter.js +1 -1
  216. package/dist/retailspotBidAdapter.js +1 -1
  217. package/dist/revcontentBidAdapter.js +1 -1
  218. package/dist/rhythmoneBidAdapter.js +1 -1
  219. package/dist/richaudienceBidAdapter.js +1 -1
  220. package/dist/riseBidAdapter.js +1 -1
  221. package/dist/rivrAnalyticsAdapter.js +1 -1
  222. package/dist/roxotAnalyticsAdapter.js +1 -1
  223. package/dist/rtbhouseBidAdapter.js +1 -1
  224. package/dist/rtdModule.js +1 -1
  225. package/dist/rubiconBidAdapter.js +1 -1
  226. package/dist/s2sTesting.js +1 -1
  227. package/dist/saambaaBidAdapter.js +1 -1
  228. package/dist/scaleableAnalyticsAdapter.js +1 -1
  229. package/dist/schain.js +1 -1
  230. package/dist/seedingAllianceBidAdapter.js +1 -1
  231. package/dist/seedtagBidAdapter.js +1 -1
  232. package/dist/sharedIdSystem.js +1 -1
  233. package/dist/sharethroughAnalyticsAdapter.js +1 -1
  234. package/dist/sharethroughBidAdapter.js +1 -1
  235. package/dist/shinezBidAdapter.js +1 -1
  236. package/dist/showheroes-bsBidAdapter.js +1 -1
  237. package/dist/sigmoidAnalyticsAdapter.js +1 -1
  238. package/dist/sizeMapping.js +1 -0
  239. package/dist/slimcutBidAdapter.js +1 -1
  240. package/dist/smaatoBidAdapter.js +1 -1
  241. package/dist/smartadserverBidAdapter.js +1 -1
  242. package/dist/smartxBidAdapter.js +1 -1
  243. package/dist/smartytechBidAdapter.js +1 -1
  244. package/dist/smilewantedBidAdapter.js +1 -1
  245. package/dist/sonobiAnalyticsAdapter.js +1 -1
  246. package/dist/sonobiBidAdapter.js +1 -1
  247. package/dist/sovrnAnalyticsAdapter.js +1 -1
  248. package/dist/sovrnBidAdapter.js +1 -1
  249. package/dist/sspBCBidAdapter.js +1 -1
  250. package/dist/staqAnalyticsAdapter.js +1 -1
  251. package/dist/stvBidAdapter.js +1 -1
  252. package/dist/sublimeBidAdapter.js +1 -1
  253. package/dist/taboolaBidAdapter.js +1 -1
  254. package/dist/tapadIdSystem.js +1 -1
  255. package/dist/tappxBidAdapter.js +1 -1
  256. package/dist/targetVideoBidAdapter.js +1 -1
  257. package/dist/teadsBidAdapter.js +1 -1
  258. package/dist/teadsIdSystem.js +1 -1
  259. package/dist/telariaBidAdapter.js +1 -1
  260. package/dist/terceptAnalyticsAdapter.js +1 -1
  261. package/dist/theAdxBidAdapter.js +1 -1
  262. package/dist/topicsFpdModule.js +1 -1
  263. package/dist/trionBidAdapter.js +1 -1
  264. package/dist/tripleliftBidAdapter.js +1 -1
  265. package/dist/ttdBidAdapter.js +1 -1
  266. package/dist/ucfunnelAnalyticsAdapter.js +1 -1
  267. package/dist/uid2IdSystem.js +1 -1
  268. package/dist/underdogmediaBidAdapter.js +1 -1
  269. package/dist/undertoneBidAdapter.js +1 -1
  270. package/dist/unicornBidAdapter.js +1 -1
  271. package/dist/unrulyBidAdapter.js +1 -1
  272. package/dist/userId.js +1 -1
  273. package/dist/utiqSystem.js +1 -0
  274. package/dist/vibrantmediaBidAdapter.js +1 -1
  275. package/dist/vidazooBidAdapter.js +1 -1
  276. package/dist/videobyteBidAdapter.js +1 -1
  277. package/dist/videojsVideoProvider.js +1 -1
  278. package/dist/videoreachBidAdapter.js +1 -1
  279. package/dist/visxBidAdapter.js +1 -1
  280. package/dist/vrtcalBidAdapter.js +1 -1
  281. package/dist/vuukleBidAdapter.js +1 -1
  282. package/dist/weboramaRtdProvider.js +1 -1
  283. package/dist/widespaceBidAdapter.js +1 -1
  284. package/dist/winrBidAdapter.js +1 -1
  285. package/dist/xeBidAdapter.js +1 -1
  286. package/dist/yahoosspBidAdapter.js +1 -1
  287. package/dist/yieldliftBidAdapter.js +1 -1
  288. package/dist/yieldmoBidAdapter.js +1 -1
  289. package/dist/yieldoneAnalyticsAdapter.js +1 -1
  290. package/dist/yieldoneBidAdapter.js +1 -1
  291. package/dist/yuktamediaAnalyticsAdapter.js +1 -1
  292. package/dist/zetaBidAdapter.js +1 -1
  293. package/dist/zeta_global_sspAnalyticsAdapter.js +1 -1
  294. package/dist/zeta_global_sspBidAdapter.js +1 -1
  295. package/libraries/analyticsAdapter/AnalyticsAdapter.js +1 -7
  296. package/libraries/appnexusKeywords/anKeywords.js +140 -0
  297. package/libraries/categoryTranslationMapping/index.js +100 -0
  298. package/libraries/keywords/keywords.js +31 -0
  299. package/libraries/objectGuard/objectGuard.js +2 -11
  300. package/libraries/ortbConverter/processors/default.js +3 -4
  301. package/modules/.submodules.json +1 -1
  302. package/modules/1plusXRtdProvider.js +4 -14
  303. package/modules/33acrossBidAdapter.js +11 -11
  304. package/modules/adWMGBidAdapter.js +2 -1
  305. package/modules/adagioBidAdapter.js +18 -30
  306. package/modules/adbookpspBidAdapter.js +1 -1
  307. package/modules/addefendBidAdapter.js +1 -0
  308. package/modules/adfBidAdapter.js +3 -3
  309. package/modules/adgenerationBidAdapter.js +1 -1
  310. package/modules/adhashBidAdapter.js +56 -34
  311. package/modules/adkernelAdnBidAdapter.js +5 -6
  312. package/modules/adkernelBidAdapter.js +5 -5
  313. package/modules/adprimeBidAdapter.js +2 -1
  314. package/modules/adqueryBidAdapter.js +1 -0
  315. package/modules/adrelevantisBidAdapter.js +3 -24
  316. package/modules/adtrueBidAdapter.js +2 -2
  317. package/modules/aduptechBidAdapter.js +2 -1
  318. package/modules/advangelistsBidAdapter.js +0 -1
  319. package/modules/adxcgBidAdapter.js +1 -1
  320. package/modules/adyoulikeBidAdapter.js +1 -1
  321. package/modules/afpBidAdapter.js +2 -2
  322. package/modules/aidemBidAdapter.js +16 -3
  323. package/modules/airgridRtdProvider.js +24 -53
  324. package/modules/ajaBidAdapter.js +1 -1
  325. package/modules/alkimiBidAdapter.js +2 -1
  326. package/modules/amxBidAdapter.js +1 -0
  327. package/modules/apacdexBidAdapter.js +3 -3
  328. package/modules/appnexusBidAdapter.js +16 -114
  329. package/modules/apstreamBidAdapter.js +1 -0
  330. package/modules/asoBidAdapter.js +1 -1
  331. package/modules/astraoneBidAdapter.js +1 -1
  332. package/modules/audiencerunBidAdapter.js +2 -1
  333. package/modules/automatadBidAdapter.js +5 -5
  334. package/modules/beachfrontBidAdapter.js +0 -1
  335. package/modules/beopBidAdapter.js +20 -17
  336. package/modules/betweenBidAdapter.js +2 -1
  337. package/modules/bizzclickBidAdapter.js +9 -6
  338. package/modules/bliinkBidAdapter.js +1 -0
  339. package/modules/bluebillywigBidAdapter.js +2 -2
  340. package/modules/braveBidAdapter.js +9 -7
  341. package/modules/browsiBidAdapter.js +3 -3
  342. package/modules/{emx_digitalBidAdapter.js → cadentApertureMXBidAdapter.js} +61 -56
  343. package/modules/{emx_digitalBidAdapter.md → cadentApertureMXBidAdapter.md} +6 -6
  344. package/modules/carodaBidAdapter.js +1 -0
  345. package/modules/ccxBidAdapter.js +1 -1
  346. package/modules/cleanmedianetBidAdapter.js +3 -3
  347. package/modules/codefuelBidAdapter.js +1 -1
  348. package/modules/colossussspBidAdapter.js +1 -1
  349. package/modules/concertBidAdapter.js +1 -1
  350. package/modules/connectadBidAdapter.js +1 -0
  351. package/modules/conversantAnalyticsAdapter.js +2 -0
  352. package/modules/conversantBidAdapter.js +22 -6
  353. package/modules/craftBidAdapter.js +6 -28
  354. package/modules/criteoBidAdapter.js +12 -9
  355. package/modules/currency.js +3 -3
  356. package/modules/dailyhuntBidAdapter.js +2 -2
  357. package/modules/datablocksBidAdapter.js +10 -8
  358. package/modules/datawrkzBidAdapter.js +0 -6
  359. package/modules/deltaprojectsBidAdapter.js +12 -3
  360. package/modules/dianomiBidAdapter.js +1 -1
  361. package/modules/discoveryBidAdapter.js +1 -0
  362. package/modules/displayioBidAdapter.js +2 -1
  363. package/modules/dspxBidAdapter.js +1 -0
  364. package/modules/ebdrBidAdapter.js +3 -2
  365. package/modules/etargetBidAdapter.js +1 -2
  366. package/modules/feedadBidAdapter.js +1 -1
  367. package/modules/finativeBidAdapter.js +8 -8
  368. package/modules/fluctBidAdapter.js +1 -2
  369. package/modules/gamoshiBidAdapter.js +3 -3
  370. package/modules/gdprEnforcement.js +0 -15
  371. package/modules/genericAnalyticsAdapter.js +0 -5
  372. package/modules/glomexBidAdapter.js +1 -0
  373. package/modules/gmosspBidAdapter.js +1 -1
  374. package/modules/gnetBidAdapter.js +1 -1
  375. package/modules/goldbachBidAdapter.js +7 -45
  376. package/modules/gothamadsBidAdapter.js +4 -3
  377. package/modules/gridBidAdapter.js +20 -421
  378. package/modules/gumgumBidAdapter.js +1 -2
  379. package/modules/h12mediaBidAdapter.js +1 -1
  380. package/modules/holidBidAdapter.js +8 -13
  381. package/modules/hybridBidAdapter.js +2 -2
  382. package/modules/hypelabBidAdapter.js +153 -0
  383. package/modules/hypelabBidAdapter.md +38 -0
  384. package/modules/{synacormediaBidAdapter.js → imdsBidAdapter.js} +11 -8
  385. package/modules/{synacormediaBidAdapter.md → imdsBidAdapter.md} +5 -5
  386. package/modules/impactifyBidAdapter.js +6 -6
  387. package/modules/improvedigitalBidAdapter.js +1 -2
  388. package/modules/innityBidAdapter.js +1 -0
  389. package/modules/insticatorBidAdapter.js +1 -1
  390. package/modules/interactiveOffersBidAdapter.js +5 -4
  391. package/modules/iqmBidAdapter.js +1 -0
  392. package/modules/ixBidAdapter.js +74 -75
  393. package/modules/jixieBidAdapter.js +1 -0
  394. package/modules/kargoBidAdapter.js +1 -1
  395. package/modules/koblerBidAdapter.js +2 -1
  396. package/modules/kueezBidAdapter.js +1 -1
  397. package/modules/kueezRtbBidAdapter.js +1 -0
  398. package/modules/kulturemediaBidAdapter.js +7 -7
  399. package/modules/lassoBidAdapter.js +2 -1
  400. package/modules/limelightDigitalBidAdapter.js +1 -1
  401. package/modules/livewrappedBidAdapter.js +2 -2
  402. package/modules/logicadBidAdapter.js +2 -1
  403. package/modules/loglyliftBidAdapter.js +2 -1
  404. package/modules/luponmediaBidAdapter.js +16 -4
  405. package/modules/magniteAnalyticsAdapter.js +61 -72
  406. package/modules/malltvBidAdapter.js +1 -0
  407. package/modules/mediaforceBidAdapter.js +2 -1
  408. package/modules/mediafuseBidAdapter.js +45 -62
  409. package/modules/mediagoBidAdapter.js +1 -0
  410. package/modules/mediakeysBidAdapter.js +3 -5
  411. package/modules/medianetBidAdapter.js +2 -1
  412. package/modules/mediasniperBidAdapter.js +1 -2
  413. package/modules/mediasquareBidAdapter.js +2 -1
  414. package/modules/microadBidAdapter.js +1 -9
  415. package/modules/minutemediaBidAdapter.js +2 -2
  416. package/modules/minutemediaplusBidAdapter.js +3 -2
  417. package/modules/newspassidBidAdapter.js +6 -4
  418. package/modules/nextMillenniumBidAdapter.js +10 -9
  419. package/modules/oguryBidAdapter.js +5 -5
  420. package/modules/onetagBidAdapter.js +2 -1
  421. package/modules/operaadsBidAdapter.js +2 -2
  422. package/modules/optidigitalBidAdapter.js +2 -2
  423. package/modules/orbidderBidAdapter.js +2 -1
  424. package/modules/otmBidAdapter.js +2 -2
  425. package/modules/outbrainBidAdapter.js +9 -11
  426. package/modules/oxxionRtdProvider.js +7 -29
  427. package/modules/ozoneBidAdapter.js +2 -1
  428. package/modules/padsquadBidAdapter.js +2 -2
  429. package/modules/pixfutureBidAdapter.js +12 -36
  430. package/modules/prebidServerBidAdapter/index.js +1 -3
  431. package/modules/prebidServerBidAdapter/ortbConverter.js +34 -5
  432. package/modules/priceFloors.js +7 -7
  433. package/modules/prismaBidAdapter.js +4 -3
  434. package/modules/proxistoreBidAdapter.js +2 -1
  435. package/modules/pubgeniusBidAdapter.js +5 -5
  436. package/modules/pubmaticAnalyticsAdapter.js +31 -12
  437. package/modules/pubmaticBidAdapter.js +6 -4
  438. package/modules/pubwiseBidAdapter.js +6 -5
  439. package/modules/pxyzBidAdapter.js +4 -4
  440. package/modules/rasBidAdapter.js +4 -2
  441. package/modules/readpeakBidAdapter.js +1 -1
  442. package/modules/relaidoBidAdapter.js +2 -1
  443. package/modules/resetdigitalBidAdapter.js +1 -0
  444. package/modules/revcontentBidAdapter.js +6 -7
  445. package/modules/rhythmoneBidAdapter.js +0 -2
  446. package/modules/richaudienceBidAdapter.js +6 -4
  447. package/modules/riseBidAdapter.js +1 -1
  448. package/modules/rtbhouseBidAdapter.js +5 -5
  449. package/modules/rtbsapeBidAdapter.js +1 -0
  450. package/modules/rubiconBidAdapter.js +8 -11
  451. package/modules/saambaaBidAdapter.js +0 -1
  452. package/modules/seedingAllianceBidAdapter.js +6 -7
  453. package/modules/seedtagBidAdapter.js +1 -1
  454. package/modules/sharethroughBidAdapter.js +1 -1
  455. package/modules/shinezBidAdapter.js +435 -435
  456. package/modules/showheroes-bsBidAdapter.js +1 -1
  457. package/{src → modules}/sizeMapping.js +46 -32
  458. package/modules/slimcutBidAdapter.js +2 -2
  459. package/modules/smaatoBidAdapter.js +16 -3
  460. package/modules/smartadserverBidAdapter.js +1 -1
  461. package/modules/smarticoBidAdapter.js +1 -0
  462. package/modules/smartytechBidAdapter.js +0 -1
  463. package/modules/smilewantedBidAdapter.js +2 -2
  464. package/modules/sonobiBidAdapter.js +2 -1
  465. package/modules/sspBCBidAdapter.js +1 -1
  466. package/modules/stroeerCoreBidAdapter.js +1 -0
  467. package/modules/sublimeBidAdapter.js +1 -0
  468. package/modules/taboolaBidAdapter.js +3 -3
  469. package/modules/talkadsBidAdapter.js +1 -0
  470. package/modules/tappxBidAdapter.js +1 -1
  471. package/modules/teadsBidAdapter.js +1 -2
  472. package/modules/telariaBidAdapter.js +1 -1
  473. package/modules/theAdxBidAdapter.js +1 -1
  474. package/modules/topicsFpdModule.js +4 -1
  475. package/modules/tpmnBidAdapter.js +1 -0
  476. package/modules/truereachBidAdapter.js +1 -0
  477. package/modules/ttdBidAdapter.js +3 -3
  478. package/modules/underdogmediaBidAdapter.js +0 -1
  479. package/modules/unicornBidAdapter.js +1 -1
  480. package/modules/unrulyBidAdapter.js +1 -1
  481. package/modules/userId/eids.js +3 -3
  482. package/modules/userId/eids.md +1 -1
  483. package/modules/userId/index.js +2 -19
  484. package/modules/userId/userId.md +12 -10
  485. package/modules/utiqSystem.js +129 -0
  486. package/modules/{trustpidSystem.md → utiqSystem.md} +7 -7
  487. package/modules/vdoaiBidAdapter.js +1 -0
  488. package/modules/vibrantmediaBidAdapter.js +1 -1
  489. package/modules/vidazooBidAdapter.js +3 -2
  490. package/modules/videobyteBidAdapter.js +0 -1
  491. package/modules/videoheroesBidAdapter.js +2 -0
  492. package/modules/videojsVideoProvider.js +2 -0
  493. package/modules/videoreachBidAdapter.js +2 -1
  494. package/modules/vlybyBidAdapter.js +1 -0
  495. package/modules/voxBidAdapter.js +2 -0
  496. package/modules/vrtcalBidAdapter.js +6 -1
  497. package/modules/winrBidAdapter.js +4 -25
  498. package/modules/xeBidAdapter.js +2 -1
  499. package/modules/yieldliftBidAdapter.js +2 -2
  500. package/modules/yieldmoBidAdapter.js +1 -0
  501. package/modules/yieldoneBidAdapter.js +1 -1
  502. package/modules/zetaBidAdapter.js +4 -9
  503. package/modules/zeta_global_sspBidAdapter.js +1 -1
  504. package/package.json +1 -1
  505. package/src/activities/activities.js +5 -0
  506. package/src/activities/redactor.js +36 -8
  507. package/src/adapterManager.js +31 -20
  508. package/src/adapters/bidderFactory.js +41 -91
  509. package/src/auction.js +5 -21
  510. package/src/constants.json +1 -2
  511. package/src/utils.js +2 -34
  512. package/test/fixtures/fixtures.js +0 -7
  513. package/test/pages/banner.html +1 -0
  514. package/test/pages/bidderSettings.html +1 -0
  515. package/test/pages/consent_mgt_gdpr.html +1 -0
  516. package/test/pages/currency.html +1 -0
  517. package/test/pages/instream.html +1 -0
  518. package/test/pages/multiple_bidders.html +1 -1
  519. package/test/pages/native.html +1 -0
  520. package/test/pages/outstream.html +4 -1
  521. package/test/spec/activities/redactor_spec.js +10 -2
  522. package/test/spec/appnexusKeywords_spec.js +70 -0
  523. package/test/spec/auctionmanager_spec.js +11 -22
  524. package/test/spec/keywords_spec.js +102 -0
  525. package/test/spec/modules/1plusXRtdProvider_spec.js +17 -18
  526. package/test/spec/modules/33acrossBidAdapter_spec.js +49 -73
  527. package/test/spec/modules/adagioBidAdapter_spec.js +15 -24
  528. package/test/spec/modules/adbookpspBidAdapter_spec.js +5 -0
  529. package/test/spec/modules/adfBidAdapter_spec.js +4 -1
  530. package/test/spec/modules/adhashBidAdapter_spec.js +18 -2
  531. package/test/spec/modules/adkernelAdnBidAdapter_spec.js +1 -3
  532. package/test/spec/modules/adrelevantisBidAdapter_spec.js +0 -9
  533. package/test/spec/modules/adriverBidAdapter_spec.js +0 -9
  534. package/test/spec/modules/adtrueBidAdapter_spec.js +11 -7
  535. package/test/spec/modules/aduptechBidAdapter_spec.js +26 -8
  536. package/test/spec/modules/advangelistsBidAdapter_spec.js +0 -1
  537. package/test/spec/modules/adxcgBidAdapter_spec.js +4 -1
  538. package/test/spec/modules/adyoulikeBidAdapter_spec.js +50 -10
  539. package/test/spec/modules/afpBidAdapter_spec.js +5 -1
  540. package/test/spec/modules/aidemBidAdapter_spec.js +10 -2
  541. package/test/spec/modules/airgridRtdProvider_spec.js +9 -59
  542. package/test/spec/modules/apacdexBidAdapter_spec.js +2 -2
  543. package/test/spec/modules/appnexusBidAdapter_spec.js +100 -27
  544. package/test/spec/modules/astraoneBidAdapter_spec.js +5 -1
  545. package/test/spec/modules/beachfrontBidAdapter_spec.js +0 -1
  546. package/test/spec/modules/big-richmediaBidAdapter_spec.js +0 -10
  547. package/test/spec/modules/bluebillywigBidAdapter_spec.js +12 -10
  548. package/test/spec/modules/browsiBidAdapter_spec.js +6 -3
  549. package/test/spec/modules/{emx_digitalBidAdapter_spec.js → cadentApertureMXBidAdapter_spec.js} +16 -16
  550. package/test/spec/modules/ccxBidAdapter_spec.js +1 -1
  551. package/test/spec/modules/cleanmedianetBidAdapter_spec.js +2 -2
  552. package/test/spec/modules/codefuelBidAdapter_spec.js +10 -1
  553. package/test/spec/modules/colossussspBidAdapter_spec.js +1 -1
  554. package/test/spec/modules/concertBidAdapter_spec.js +5 -1
  555. package/test/spec/modules/conversantBidAdapter_spec.js +7 -2
  556. package/test/spec/modules/criteoBidAdapter_spec.js +78 -8
  557. package/test/spec/modules/currency_spec.js +12 -12
  558. package/test/spec/modules/datawrkzBidAdapter_spec.js +0 -4
  559. package/test/spec/modules/dianomiBidAdapter_spec.js +1 -1
  560. package/test/spec/modules/etargetBidAdapter_spec.js +35 -8
  561. package/test/spec/modules/euidIdSystem_spec.js +0 -7
  562. package/test/spec/modules/feedadBidAdapter_spec.js +5 -1
  563. package/test/spec/modules/finativeBidAdapter_spec.js +0 -12
  564. package/test/spec/modules/fluctBidAdapter_spec.js +0 -2
  565. package/test/spec/modules/gamoshiBidAdapter_spec.js +5 -2
  566. package/test/spec/modules/gmosspBidAdapter_spec.js +5 -1
  567. package/test/spec/modules/gnetBidAdapter_spec.js +5 -1
  568. package/test/spec/modules/goldbachBidAdapter_spec.js +0 -10
  569. package/test/spec/modules/gridBidAdapter_spec.js +42 -302
  570. package/test/spec/modules/hybridBidAdapter_spec.js +5 -1
  571. package/test/spec/modules/hypelabBidAdapter_spec.js +281 -0
  572. package/test/spec/modules/{synacormediaBidAdapter_spec.js → imdsBidAdapter_spec.js} +19 -19
  573. package/test/spec/modules/improvedigitalBidAdapter_spec.js +6 -1
  574. package/test/spec/modules/insticatorBidAdapter_spec.js +6 -2
  575. package/test/spec/modules/invisiblyAnalyticsAdapter_spec.js +1 -1
  576. package/test/spec/modules/ivsBidAdapter_spec.js +0 -2
  577. package/test/spec/modules/ixBidAdapter_spec.js +8 -3
  578. package/test/spec/modules/kargoBidAdapter_spec.js +3 -3
  579. package/test/spec/modules/koblerBidAdapter_spec.js +13 -2
  580. package/test/spec/modules/kulturemediaBidAdapter_spec.js +0 -1
  581. package/test/spec/modules/limelightDigitalBidAdapter_spec.js +21 -5
  582. package/test/spec/modules/livewrappedAnalyticsAdapter_spec.js +1 -1
  583. package/test/spec/modules/livewrappedBidAdapter_spec.js +5 -6
  584. package/test/spec/modules/loglyliftBidAdapter_spec.js +10 -0
  585. package/test/spec/modules/luponmediaBidAdapter_spec.js +23 -2
  586. package/test/spec/modules/magniteAnalyticsAdapter_spec.js +93 -1
  587. package/test/spec/modules/mediaforceBidAdapter_spec.js +11 -3
  588. package/test/spec/modules/mediafuseBidAdapter_spec.js +2 -6
  589. package/test/spec/modules/mediakeysBidAdapter_spec.js +6 -2
  590. package/test/spec/modules/medianetBidAdapter_spec.js +86 -17
  591. package/test/spec/modules/mediasniperBidAdapter_spec.js +1 -1
  592. package/test/spec/modules/mediasquareBidAdapter_spec.js +5 -5
  593. package/test/spec/modules/microadBidAdapter_spec.js +7 -3
  594. package/test/spec/modules/minutemediaplusBidAdapter_spec.js +7 -3
  595. package/test/spec/modules/nextMillenniumBidAdapter_spec.js +2 -2
  596. package/test/spec/modules/nexx360BidAdapter_spec.js +0 -1
  597. package/test/spec/modules/oguryBidAdapter_spec.js +2 -1
  598. package/test/spec/modules/onetagBidAdapter_spec.js +5 -1
  599. package/test/spec/modules/openxBidAdapter_spec.js +1 -1
  600. package/test/spec/modules/operaadsBidAdapter_spec.js +5 -5
  601. package/test/spec/modules/optidigitalBidAdapter_spec.js +0 -2
  602. package/test/spec/modules/orbidderBidAdapter_spec.js +12 -4
  603. package/test/spec/modules/outbrainBidAdapter_spec.js +5 -0
  604. package/test/spec/modules/oxxionRtdProvider_spec.js +3 -2
  605. package/test/spec/modules/prebidServerBidAdapter_spec.js +114 -32
  606. package/test/spec/modules/priceFloors_spec.js +7 -25
  607. package/test/spec/modules/pubgeniusBidAdapter_spec.js +2 -1
  608. package/test/spec/modules/pubmaticAnalyticsAdapter_spec.js +7 -0
  609. package/test/spec/modules/pubmaticBidAdapter_spec.js +41 -32
  610. package/test/spec/modules/pubwiseBidAdapter_spec.js +10 -6
  611. package/test/spec/modules/relaidoBidAdapter_spec.js +6 -2
  612. package/test/spec/modules/revcontentBidAdapter_spec.js +0 -10
  613. package/test/spec/modules/richaudienceBidAdapter_spec.js +5 -1
  614. package/test/spec/modules/rubiconBidAdapter_spec.js +26 -7
  615. package/test/spec/modules/scatteredBidAdapter_spec.js +0 -2
  616. package/test/spec/modules/seedingAllianceAdapter_spec.js +0 -13
  617. package/test/spec/modules/seedtagBidAdapter_spec.js +5 -1
  618. package/test/spec/modules/sharethroughBidAdapter_spec.js +6 -2
  619. package/test/spec/modules/sizeMapping_spec.js +342 -0
  620. package/test/spec/modules/slimcutBidAdapter_spec.js +0 -1
  621. package/test/spec/modules/smaatoBidAdapter_spec.js +3 -2
  622. package/test/spec/modules/smartadserverBidAdapter_spec.js +15 -3
  623. package/test/spec/modules/smilewantedBidAdapter_spec.js +25 -6
  624. package/test/spec/modules/sspBCBidAdapter_spec.js +4 -4
  625. package/test/spec/modules/taboolaBidAdapter_spec.js +10 -12
  626. package/test/spec/modules/teadsBidAdapter_spec.js +7 -0
  627. package/test/spec/modules/terceptAnalyticsAdapter_spec.js +0 -1
  628. package/test/spec/modules/ttdBidAdapter_spec.js +13 -5
  629. package/test/spec/modules/uid2IdSystem_spec.js +0 -10
  630. package/test/spec/modules/underdogmediaBidAdapter_spec.js +0 -1
  631. package/test/spec/modules/utiqSystem_spec.js +188 -0
  632. package/test/spec/modules/vidazooBidAdapter_spec.js +6 -2
  633. package/test/spec/modules/videobyteBidAdapter_spec.js +0 -1
  634. package/test/spec/modules/vrtcalBidAdapter_spec.js +9 -2
  635. package/test/spec/modules/winrBidAdapter_spec.js +0 -9
  636. package/test/spec/modules/xeBidAdapter_spec.js +6 -2
  637. package/test/spec/unit/core/adapterManager_spec.js +69 -115
  638. package/test/spec/unit/core/bidderFactory_spec.js +80 -152
  639. package/test/spec/unit/core/targeting_spec.js +0 -6
  640. package/test/spec/utils_spec.js +21 -90
  641. package/dist/aolBidAdapter.js +0 -1
  642. package/dist/captifyRtdProvider.js +0 -1
  643. package/dist/emx_digitalBidAdapter.js +0 -1
  644. package/dist/glimpseBidAdapter.js +0 -1
  645. package/dist/googleAnalyticsAdapter.js +0 -1
  646. package/dist/inmarBidAdapter.js +0 -1
  647. package/dist/inskinBidAdapter.js +0 -1
  648. package/dist/liveyieldAnalyticsAdapter.js +0 -1
  649. package/dist/mass.js +0 -1
  650. package/dist/openxAnalyticsAdapter.js +0 -1
  651. package/dist/openxOrtbBidAdapter.js +0 -1
  652. package/dist/pubCommonId.js +0 -1
  653. package/dist/realvuAnalyticsAdapter.js +0 -1
  654. package/dist/rubiconAnalyticsAdapter.js +0 -1
  655. package/dist/synacormediaBidAdapter.js +0 -1
  656. package/dist/trustpidSystem.js +0 -1
  657. package/dist/viewability.js +0 -1
  658. package/dist/zeusPrimeRtdProvider.js +0 -21
  659. package/integrationExamples/gpt/captifyRtdProvider_example.html +0 -167
  660. package/integrationExamples/mass/index.html +0 -132
  661. package/modules/aolBidAdapter.js +0 -462
  662. package/modules/aolBidAdapter.md +0 -46
  663. package/modules/captifyRtdProvider.js +0 -146
  664. package/modules/captifyRtdProvider.md +0 -68
  665. package/modules/conversantAnalyticsAdapter.md +0 -46
  666. package/modules/conversantBidAdapter.md +0 -46
  667. package/modules/glimpseBidAdapter.js +0 -198
  668. package/modules/glimpseBidAdapter.md +0 -37
  669. package/modules/googleAnalyticsAdapter.js +0 -298
  670. package/modules/googleAnalyticsAdapter.md +0 -38
  671. package/modules/inmarBidAdapter.js +0 -132
  672. package/modules/inmarBidAdapter.md +0 -44
  673. package/modules/inskinBidAdapter.js +0 -391
  674. package/modules/inskinBidAdapter.md +0 -31
  675. package/modules/liveyieldAnalyticsAdapter.js +0 -454
  676. package/modules/liveyieldAnalyticsAdapter.md +0 -45
  677. package/modules/mass.js +0 -184
  678. package/modules/mass.md +0 -137
  679. package/modules/openxAnalyticsAdapter.js +0 -27
  680. package/modules/openxAnalyticsAdapter.md +0 -135
  681. package/modules/openxOrtbBidAdapter.js +0 -238
  682. package/modules/openxOrtbBidAdapter.md +0 -108
  683. package/modules/pubCommonId.js +0 -303
  684. package/modules/pubCommonId.md +0 -37
  685. package/modules/realvuAnalyticsAdapter.js +0 -976
  686. package/modules/realvuAnalyticsAdapter.md +0 -9
  687. package/modules/rubiconAnalyticsAdapter.js +0 -938
  688. package/modules/trustpidSystem.js +0 -143
  689. package/modules/viewability.js +0 -9
  690. package/modules/zeusPrimeRtdProvider.js +0 -37
  691. package/modules/zeusPrimeRtdProvider.md +0 -63
  692. package/test/spec/modules/aolBidAdapter_spec.js +0 -890
  693. package/test/spec/modules/captifyRtdProvider_spec.js +0 -253
  694. package/test/spec/modules/glimpseBidAdapter_spec.js +0 -422
  695. package/test/spec/modules/googleAnalyticsAdapter_spec.js +0 -27
  696. package/test/spec/modules/inmarBidAdapter_spec.js +0 -242
  697. package/test/spec/modules/inskinBidAdapter_spec.js +0 -386
  698. package/test/spec/modules/liveyieldAnalyticsAdapter_spec.js +0 -704
  699. package/test/spec/modules/mass_spec.js +0 -141
  700. package/test/spec/modules/openxAnalyticsAdapter_spec.js +0 -21
  701. package/test/spec/modules/openxOrtbBidAdapter_spec.js +0 -1615
  702. package/test/spec/modules/pubCommonId_spec.js +0 -353
  703. package/test/spec/modules/rubiconAnalyticsAdapter_spec.js +0 -2540
  704. package/test/spec/modules/rubiconAnalyticsSchema.json +0 -494
  705. package/test/spec/modules/trustpidSystem_spec.js +0 -237
  706. package/test/spec/sizeMapping_spec.js +0 -341
@@ -1,9 +1,9 @@
1
- import {registerBidder} from '../src/adapters/bidderFactory.js';
1
+ import { registerBidder } from '../src/adapters/bidderFactory.js';
2
2
  import { getStorageManager } from '../src/storageManager.js';
3
3
  import { includes } from '../src/polyfill.js';
4
4
  import { BANNER, VIDEO } from '../src/mediaTypes.js';
5
5
 
6
- const VERSION = '3.2';
6
+ const VERSION = '3.6';
7
7
  const BAD_WORD_STEP = 0.1;
8
8
  const BAD_WORD_MIN = 0.2;
9
9
  const ADHASH_BIDDER_CODE = 'adhash';
@@ -19,6 +19,8 @@ const ADHASH_BIDDER_CODE = 'adhash';
19
19
  * @returns boolean flag is the page safe
20
20
  */
21
21
  function brandSafety(badWords, maxScore) {
22
+ const delimiter = '~';
23
+
22
24
  /**
23
25
  * Performs the ROT13 encoding on the string argument and returns the resulting string.
24
26
  * The Adhash bidder uses ROT13 so that the response is not blocked by:
@@ -40,17 +42,17 @@ function brandSafety(badWords, maxScore) {
40
42
  /**
41
43
  * Calculates the scoring for each bad word with dimishing returns
42
44
  * @param {integer} points points that this word costs
43
- * @param {integer} occurances number of occurances
45
+ * @param {integer} occurrences number of occurrences
44
46
  * @returns {float} final score
45
47
  */
46
- const scoreCalculator = (points, occurances) => {
48
+ const scoreCalculator = (points, occurrences) => {
47
49
  let positive = true;
48
50
  if (points < 0) {
49
51
  points *= -1;
50
52
  positive = false;
51
53
  }
52
54
  let result = 0;
53
- for (let i = 0; i < occurances; i++) {
55
+ for (let i = 0; i < occurrences; i++) {
54
56
  result += Math.max(points - i * BAD_WORD_STEP, BAD_WORD_MIN);
55
57
  }
56
58
  return positive ? result : -result;
@@ -60,22 +62,50 @@ function brandSafety(badWords, maxScore) {
60
62
  * Checks what rule will match in the given array with words
61
63
  * @param {string} rule rule type (full, partial, starts, ends, regexp)
62
64
  * @param {string} decodedWord decoded word
63
- * @param {array} wordsToMatch array to find a match
65
+ * @param {string} wordsToMatch list of all words on the page separated by delimiters
64
66
  * @returns {object|boolean} matched rule and occurances. If nothing is matched returns false
65
67
  */
66
68
  const wordsMatchedWithRule = function (rule, decodedWord, wordsToMatch) {
67
- if (rule === 'full' && wordsToMatch && wordsToMatch.includes(decodedWord)) {
68
- return { rule, occurances: wordsToMatch.filter(element => element === decodedWord).length };
69
- } else if (rule === 'partial' && wordsToMatch && wordsToMatch.some(element => element.indexOf(decodedWord) > -1)) {
70
- return { rule, occurances: wordsToMatch.filter(element => element.indexOf(decodedWord) > -1).length };
71
- } else if (rule === 'starts' && wordsToMatch && wordsToMatch.some(word => word.startsWith(decodedWord))) {
72
- return { rule, occurances: wordsToMatch.filter(element => element.startsWith(decodedWord)).length };
73
- } else if (rule === 'ends' && wordsToMatch && wordsToMatch.some(word => word.endsWith(decodedWord))) {
74
- return { rule, occurances: wordsToMatch.filter(element => element.endsWith(decodedWord)).length };
75
- } else if (rule === 'regexp' && wordsToMatch && wordsToMatch.some(element => element.match(new RegExp(decodedWord, 'i')))) {
76
- return { rule, occurances: wordsToMatch.filter(element => element.match(new RegExp(decodedWord, 'i'))).length };
69
+ if (!wordsToMatch) {
70
+ return false;
71
+ }
72
+
73
+ let occurrences;
74
+ let adjustedWordToMatch;
75
+ decodedWord = decodedWord.split(' ').join(`${delimiter}${delimiter}`);
76
+ switch (rule) {
77
+ case 'full':
78
+ adjustedWordToMatch = `${delimiter}${decodedWord}${delimiter}`;
79
+ break;
80
+ case 'partial':
81
+ adjustedWordToMatch = decodedWord;
82
+ break;
83
+ case 'starts':
84
+ adjustedWordToMatch = `${delimiter}${decodedWord}`;
85
+ break;
86
+ case 'ends':
87
+ adjustedWordToMatch = `${decodedWord}${delimiter}`;
88
+ break;
89
+ case 'combo':
90
+ const allOccurrences = [];
91
+ const paddedWordsToMatch = `${delimiter}${wordsToMatch}${delimiter}`;
92
+ const decodedWordsSplit = decodedWord.split(`${delimiter}${delimiter}`);
93
+ for (const decodedWordPart of decodedWordsSplit) {
94
+ adjustedWordToMatch = `${delimiter}${decodedWordPart}${delimiter}`;
95
+ allOccurrences.push(paddedWordsToMatch.split(adjustedWordToMatch).length - 1);
96
+ }
97
+ occurrences = Math.min(...allOccurrences);
98
+ return occurrences > 0 ? { rule, occurrences } : false;
99
+ case 'regexp':
100
+ occurrences = [...wordsToMatch.matchAll(new RegExp(decodedWord, 'gi'))].length;
101
+ return occurrences > 0 ? { rule, occurrences } : false;
102
+ default:
103
+ return false;
77
104
  }
78
- return false;
105
+
106
+ const paddedWordsToMatch = `${delimiter}${wordsToMatch}${delimiter}`;
107
+ occurrences = paddedWordsToMatch.split(adjustedWordToMatch).length - 1;
108
+ return occurrences > 0 ? { rule, occurrences } : false;
79
109
  };
80
110
 
81
111
  // Default parameters if the bidder is unable to send some of them
@@ -91,11 +121,11 @@ function brandSafety(badWords, maxScore) {
91
121
  .toLowerCase()
92
122
  .trim();
93
123
  const content = window.top.document.body.innerText.toLowerCase();
94
- const contentWords = content.trim().split(/\s+/).length;
95
124
  // \p{L} matches a single unicode code point in the category 'letter'. Matches any kind of letter from any language.
96
125
  const regexp = new RegExp('[\\p{L}]+', 'gu');
97
- const words = content.match(regexp);
98
- const wordsInUrl = wordsAndNumbersInUrl.match(regexp);
126
+ const wordsMatched = content.match(regexp);
127
+ const words = wordsMatched.join(`${delimiter}${delimiter}`);
128
+ const wordsInUrl = wordsAndNumbersInUrl.match(regexp).join(`${delimiter}${delimiter}`);
99
129
 
100
130
  for (const [word, rule, points] of badWords) {
101
131
  const decodedWord = rot13(word.toLowerCase());
@@ -110,19 +140,11 @@ function brandSafety(badWords, maxScore) {
110
140
 
111
141
  // Check if site content's words match any of our brand safety rules
112
142
  const matchedRule = wordsMatchedWithRule(rule, decodedWord, words);
113
- if (matchedRule.rule === 'full') {
114
- score += scoreCalculator(points, matchedRule.occurances);
115
- } else if (matchedRule.rule === 'partial') {
116
- score += scoreCalculator(points, matchedRule.occurances);
117
- } else if (matchedRule.rule === 'starts') {
118
- score += scoreCalculator(points, matchedRule.occurances);
119
- } else if (matchedRule.rule === 'ends') {
120
- score += scoreCalculator(points, matchedRule.occurances);
121
- } else if (matchedRule.rule === 'regexp') {
122
- score += scoreCalculator(points, matchedRule.occurances);
143
+ if (matchedRule !== false) {
144
+ score += scoreCalculator(points, matchedRule.occurrences);
123
145
  }
124
146
  }
125
- return score < (maxScore * contentWords) / 1000;
147
+ return score < (maxScore * wordsMatched.length) / 1000;
126
148
  } catch (e) {
127
149
  return true;
128
150
  }
@@ -183,8 +205,8 @@ export const spec = {
183
205
  }
184
206
 
185
207
  // Needed for the ad density calculation
186
- var adHeight = validBidRequests[i].sizes[index][1];
187
- var adWidth = validBidRequests[i].sizes[index][0];
208
+ const adHeight = validBidRequests[i].sizes[index][1];
209
+ const adWidth = validBidRequests[i].sizes[index][0];
188
210
  if (!window.adsCount) {
189
211
  window.adsCount = 0;
190
212
  }
@@ -247,7 +269,7 @@ export const spec = {
247
269
  const bidderResponse = JSON.stringify({ responseText: JSON.stringify(responseBody) });
248
270
  const requestData = JSON.stringify(request.data);
249
271
 
250
- var response = {
272
+ let response = {
251
273
  requestId: request.bidRequest.bidId,
252
274
  cpm: responseBody.creatives[0].costEUR,
253
275
  width: request.bidRequest.sizes[0][0],
@@ -1,4 +1,4 @@
1
- import { deepAccess, parseSizesInput, isArray, deepSetValue, isStr, isNumber, logInfo } from '../src/utils.js';
1
+ import {deepAccess, deepSetValue, isArray, isNumber, isStr, logInfo, parseSizesInput} from '../src/utils.js';
2
2
  import {registerBidder} from '../src/adapters/bidderFactory.js';
3
3
  import {BANNER, VIDEO} from '../src/mediaTypes.js';
4
4
  import {config} from '../src/config.js';
@@ -58,11 +58,11 @@ function canonicalizeSizesArray(sizes) {
58
58
  }
59
59
 
60
60
  function buildRequestParams(tags, bidderRequest) {
61
- let {auctionId, gdprConsent, uspConsent, transactionId, refererInfo} = bidderRequest;
61
+ let {gdprConsent, uspConsent, refererInfo, ortb2} = bidderRequest;
62
62
  let req = {
63
- id: auctionId,
64
- // TODO: transactionId is undefined here, should this be auctionId? see #8573
65
- tid: transactionId,
63
+ id: bidderRequest.bidderRequestId,
64
+ // TODO: root-level `tid` is not ORTB; is this intentional?
65
+ tid: ortb2?.source?.tid,
66
66
  site: buildSite(refererInfo),
67
67
  imp: tags
68
68
  };
@@ -99,7 +99,6 @@ function buildSite(refInfo) {
99
99
  function buildBid(tag) {
100
100
  let bid = {
101
101
  requestId: tag.impid,
102
- bidderCode: spec.code,
103
102
  cpm: tag.bid,
104
103
  creativeId: tag.crid,
105
104
  currency: 'USD',
@@ -6,6 +6,7 @@ import {
6
6
  deepAccess,
7
7
  deepSetValue,
8
8
  getAdUnitSizes,
9
+ getDefinedParams,
9
10
  getDNT,
10
11
  isArray,
11
12
  isArrayOfNums,
@@ -14,14 +15,13 @@ import {
14
15
  isPlainObject,
15
16
  isStr,
16
17
  mergeDeep,
17
- parseGPTSingleSizeArrayToRtbSize,
18
- getDefinedParams
18
+ parseGPTSingleSizeArrayToRtbSize
19
19
  } from '../src/utils.js';
20
20
  import {BANNER, NATIVE, VIDEO} from '../src/mediaTypes.js';
21
21
  import {registerBidder} from '../src/adapters/bidderFactory.js';
22
22
  import {find} from '../src/polyfill.js';
23
23
  import {config} from '../src/config.js';
24
- import { convertOrtbRequestToProprietaryNative } from '../src/native.js';
24
+ import {convertOrtbRequestToProprietaryNative} from '../src/native.js';
25
25
 
26
26
  /*
27
27
  * In case you're AdKernel whitelable platform's client who needs branded adapter to
@@ -491,9 +491,9 @@ function makeRegulations(bidderRequest) {
491
491
  * @returns
492
492
  */
493
493
  function makeBaseRequest(bidderRequest, imps, fpd) {
494
- let {auctionId, timeout} = bidderRequest;
494
+ let {timeout} = bidderRequest;
495
495
  let request = {
496
- 'id': auctionId,
496
+ 'id': bidderRequest.bidderRequestId,
497
497
  'imp': imps,
498
498
  'at': 1,
499
499
  'tmax': parseInt(timeout)
@@ -3,6 +3,7 @@ import { BANNER, NATIVE, VIDEO } from '../src/mediaTypes.js';
3
3
  import { isFn, deepAccess, logMessage } from '../src/utils.js';
4
4
  import { config } from '../src/config.js';
5
5
  import { convertOrtbRequestToProprietaryNative } from '../src/native.js';
6
+ import {getAllOrtbKeywords} from '../libraries/keywords/keywords.js';
6
7
 
7
8
  const BIDDER_CODE = 'adprime';
8
9
  const AD_URL = 'https://delta.adprime.com/pbjs';
@@ -128,7 +129,7 @@ export const spec = {
128
129
  wPlayer: sizes ? sizes[0] : 0,
129
130
  hPlayer: sizes ? sizes[1] : 0,
130
131
  schain: bid.schain || {},
131
- keywords: bid.params.keywords || [],
132
+ keywords: getAllOrtbKeywords(bidderRequest.ortb2, bid.params.keywords),
132
133
  audiences: bid.params.audiences || [],
133
134
  identeties,
134
135
  bidFloor: getBidFloor(bid)
@@ -199,6 +199,7 @@ function buildRequest(validBidRequests, bidderRequest) {
199
199
  return {
200
200
  v: '$prebid.version$',
201
201
  placementCode: bid.params.placementId,
202
+ // TODO: fix auctionId leak: https://github.com/prebid/Prebid.js/issues/9781
202
203
  auctionId: bid.auctionId,
203
204
  type: bid.params.type,
204
205
  adUnitCode: bid.adUnitCode,
@@ -13,8 +13,7 @@ import {
13
13
  isStr,
14
14
  logError,
15
15
  logMessage,
16
- logWarn,
17
- transformBidderParamKeywords
16
+ logWarn
18
17
  } from '../src/utils.js';
19
18
  import {config} from '../src/config.js';
20
19
  import {registerBidder} from '../src/adapters/bidderFactory.js';
@@ -22,6 +21,7 @@ import {BANNER, NATIVE, VIDEO} from '../src/mediaTypes.js';
22
21
  import {find, includes} from '../src/polyfill.js';
23
22
  import {INSTREAM, OUTSTREAM} from '../src/video.js';
24
23
  import { convertOrtbRequestToProprietaryNative } from '../src/native.js';
24
+ import {getANKeywordParam, transformBidderParamKeywords} from '../libraries/appnexusKeywords/anKeywords.js';
25
25
 
26
26
  const BIDDER_CODE = 'adrelevantis';
27
27
  const URL = 'https://ssp.adrelevantis.com/prebid';
@@ -194,10 +194,6 @@ export const spec = {
194
194
  params.use_pmt_rule = (typeof params.usePaymentRule === 'boolean') ? params.usePaymentRule : false;
195
195
  if (params.usePaymentRule) { delete params.usePaymentRule; }
196
196
 
197
- if (isPopulatedArray(params.keywords)) {
198
- params.keywords.forEach(deleteValues);
199
- }
200
-
201
197
  Object.keys(params).forEach(paramKey => {
202
198
  let convertedKey = convertCamelToUnderscore(paramKey);
203
199
  if (convertedKey !== paramKey) {
@@ -211,16 +207,6 @@ export const spec = {
211
207
  }
212
208
  };
213
209
 
214
- function isPopulatedArray(arr) {
215
- return !!(isArray(arr) && arr.length > 0);
216
- }
217
-
218
- function deleteValues(keyPairObj) {
219
- if (isPopulatedArray(keyPairObj.value) && keyPairObj.value[0] === '') {
220
- delete keyPairObj.value;
221
- }
222
- }
223
-
224
210
  function formatRequest(payload, bidderRequest) {
225
211
  let request = [];
226
212
 
@@ -475,14 +461,7 @@ function bidToTag(bid) {
475
461
  if (bid.params.externalImpId) {
476
462
  tag.external_imp_id = bid.params.externalImpId;
477
463
  }
478
- if (!isEmpty(bid.params.keywords)) {
479
- let keywords = transformBidderParamKeywords(bid.params.keywords);
480
-
481
- if (keywords.length > 0) {
482
- keywords.forEach(deleteValues);
483
- }
484
- tag.keywords = keywords;
485
- }
464
+ tag.keywords = getANKeywordParam(bid.ortb2, bid.params.keywords)
486
465
  if (bid.params.category) {
487
466
  tag.category = bid.params.category;
488
467
  }
@@ -469,7 +469,7 @@ export const spec = {
469
469
  conf.zoneId = conf.zoneId || bid.params.zoneId;
470
470
  conf.pubId = conf.pubId || bid.params.publisherId;
471
471
 
472
- conf.transactionId = bid.transactionId;
472
+ conf.transactionId = bid.ortb2Imp?.ext?.tid;
473
473
  if (bidCurrency === '') {
474
474
  bidCurrency = bid.params.currency || UNDEFINED;
475
475
  } else if (bid.params.hasOwnProperty('currency') && bidCurrency !== bid.params.currency) {
@@ -492,7 +492,7 @@ export const spec = {
492
492
  payload.ext.wrapper = {};
493
493
 
494
494
  payload.ext.wrapper.transactionId = conf.transactionId;
495
- payload.ext.wrapper.wiid = conf.wiid || bidderRequest.auctionId;
495
+ payload.ext.wrapper.wiid = conf.wiid || bidderRequest.ortb2?.ext?.tid;
496
496
  payload.ext.wrapper.wp = 'pbjs';
497
497
 
498
498
  payload.user.geo = {};
@@ -255,6 +255,7 @@ export const spec = {
255
255
  url: internal.buildEndpointUrl(publisher),
256
256
  method: ENDPOINT_METHOD,
257
257
  data: {
258
+ // TODO: fix auctionId leak: https://github.com/prebid/Prebid.js/issues/9781
258
259
  auctionId: auctionId,
259
260
  pageUrl: pageUrl,
260
261
  referrer: referrer,
@@ -271,7 +272,7 @@ export const spec = {
271
272
  groupedBidRequests[publisher].forEach(bidRequest => {
272
273
  const bid = {
273
274
  bidId: bidRequest.bidId,
274
- transactionId: bidRequest.transactionId,
275
+ transactionId: bidRequest.ortb2Imp?.ext?.tid,
275
276
  adUnitCode: bidRequest.adUnitCode,
276
277
  params: internal.extractParams(bidRequest)
277
278
  };
@@ -58,7 +58,6 @@ export const spec = {
58
58
  if (isVideoBid(bidRequest)) {
59
59
  let bidResponse = {
60
60
  requestId: response.id,
61
- bidderCode: BIDDER_CODE,
62
61
  cpm: response.seatbid[0].bid[0].price,
63
62
  width: response.seatbid[0].bid[0].w,
64
63
  height: response.seatbid[0].bid[0].h,
@@ -98,7 +98,7 @@ export const spec = {
98
98
  device.dnt = getDNT() ? 1 : 0;
99
99
  device.language = (navigator && navigator.language) ? navigator.language.split('-')[0] : '';
100
100
 
101
- const tid = bidderRequest.auctionId;
101
+ const tid = bidderRequest.ortb2?.source?.tid;
102
102
  const test = setOnAny(validBidRequests, 'params.test');
103
103
  const currency = getConfig('currency.adServerCurrency');
104
104
  const cur = currency && [ currency ];
@@ -71,7 +71,7 @@ export const spec = {
71
71
  let size = getSize(sizesArray);
72
72
  accumulator[bidReq.bidId] = {};
73
73
  accumulator[bidReq.bidId].PlacementID = bidReq.params.placement;
74
- accumulator[bidReq.bidId].TransactionID = bidReq.transactionId;
74
+ accumulator[bidReq.bidId].TransactionID = bidReq.ortb2Imp?.ext?.tid;
75
75
  accumulator[bidReq.bidId].Width = size.width;
76
76
  accumulator[bidReq.bidId].Height = size.height;
77
77
  accumulator[bidReq.bidId].AvailableSizes = sizesArray.join(',');
@@ -100,13 +100,13 @@ export const spec = {
100
100
  pageUrl: IS_DEV ? TEST_PAGE_URL : refererInfo.page,
101
101
  gdprConsent: gdprConsent,
102
102
  bidRequests: validBidRequests.map(validBidRequest => {
103
- const {bidId, transactionId, sizes, params: {
103
+ const {bidId, ortb2Imp, sizes, params: {
104
104
  placeId, placeType, imageUrl, imageWidth, imageHeight
105
105
  }} = validBidRequest
106
106
  bidRequestMap[bidId] = validBidRequest
107
107
  const bidRequest = {
108
108
  bidId,
109
- transactionId,
109
+ transactionId: ortb2Imp?.ext?.tid,
110
110
  sizes,
111
111
  placeId,
112
112
  }
@@ -1,4 +1,15 @@
1
- import {_each, contains, deepAccess, deepSetValue, getDNT, isBoolean, isStr, isNumber, logError, logInfo} from '../src/utils.js';
1
+ import {
2
+ _each,
3
+ contains,
4
+ deepAccess,
5
+ deepSetValue,
6
+ getDNT,
7
+ isBoolean,
8
+ isNumber,
9
+ isStr,
10
+ logError,
11
+ logInfo
12
+ } from '../src/utils.js';
2
13
  import {config} from '../src/config.js';
3
14
  import {BANNER, VIDEO} from '../src/mediaTypes.js';
4
15
  import {registerBidder} from '../src/adapters/bidderFactory.js';
@@ -164,6 +175,7 @@ function buildWinNotice(bid) {
164
175
  impid: deepAccess(bid, 'meta.impid'),
165
176
  dsp_id: deepAccess(bid, 'meta.dsp_id'),
166
177
  adUnitCode: bid.adUnitCode,
178
+ // TODO: fix auctionId/transactionId leak: https://github.com/prebid/Prebid.js/issues/9781
167
179
  auctionId: bid.auctionId,
168
180
  transactionId: bid.transactionId,
169
181
  ttl: bid.ttl,
@@ -201,7 +213,7 @@ function getMediaType(bidRequest) {
201
213
  function getPrebidRequestFields(bidderRequest, bidRequests) {
202
214
  const payload = {};
203
215
  // Base Payload Data
204
- deepSetValue(payload, 'id', bidderRequest.auctionId);
216
+ deepSetValue(payload, 'id', bidderRequest.bidderRequestId);
205
217
  // Impressions
206
218
  setPrebidImpressionObject(bidRequests, payload);
207
219
  // Device
@@ -231,7 +243,8 @@ function setPrebidImpressionObject(bidRequests, payload) {
231
243
  // Placement or ad tag used to initiate the auction
232
244
  deepSetValue(impressionObject, 'id', bidRequest.bidId);
233
245
  // Transaction id
234
- deepSetValue(impressionObject, 'tid', deepAccess(bidRequest, 'transactionId'));
246
+ // TODO: `imp.tid` is not ORTB, is this intentional?
247
+ deepSetValue(impressionObject, 'tid', deepAccess(bidRequest, 'ortb2Imp.ext.tid'));
235
248
  // placement id
236
249
  deepSetValue(impressionObject, 'tagid', deepAccess(bidRequest, 'params.placementId', null));
237
250
  // Publisher id
@@ -5,16 +5,11 @@
5
5
  * @module modules/airgridRtdProvider
6
6
  * @requires module:modules/realTimeData
7
7
  */
8
- import { config } from '../src/config.js';
9
- import { submodule } from '../src/hook.js';
10
- import {
11
- deepSetValue,
12
- deepAccess,
13
- } from '../src/utils.js';
14
- import { getGlobal } from '../src/prebidGlobal.js';
15
- import { getStorageManager } from '../src/storageManager.js';
16
- import { loadExternalScript } from '../src/adloader.js';
17
- import { MODULE_TYPE_RTD } from '../src/activities/modules.js';
8
+ import {submodule} from '../src/hook.js';
9
+ import {deepAccess, deepSetValue, mergeDeep} from '../src/utils.js';
10
+ import {getStorageManager} from '../src/storageManager.js';
11
+ import {loadExternalScript} from '../src/adloader.js';
12
+ import {MODULE_TYPE_RTD} from '../src/activities/modules.js';
18
13
 
19
14
  const MODULE_NAME = 'realTimeData';
20
15
  const SUBMODULE_NAME = 'airgrid';
@@ -62,54 +57,35 @@ export function getMatchedAudiencesFromStorage() {
62
57
  }
63
58
  }
64
59
 
65
- /**
66
- * Mutates the adUnits object
67
- * @param {Object} adUnits
68
- * @param {Array} audiences
69
- * @return {void}
70
- */
71
- function setAudiencesToAppNexusAdUnits(adUnits, audiences) {
72
- adUnits.forEach((adUnit) => {
73
- adUnit.bids.forEach((bid) => {
74
- if (bid.bidder && bid.bidder === 'appnexus') {
75
- deepSetValue(bid, 'params.keywords.perid', audiences || []);
76
- }
77
- });
78
- });
79
- }
80
-
81
60
  /**
82
61
  * Pass audience data to configured bidders, using ORTB2
62
+ * @param {Object} bidConfig
83
63
  * @param {Object} rtdConfig
84
64
  * @param {Array} audiences
85
- * @return {{}} a map from bidder code to ORTB2 config
65
+ * @return {void}
86
66
  */
87
- export function setAudiencesAsBidderOrtb2(rtdConfig, audiences) {
67
+ export function setAudiencesAsBidderOrtb2(bidConfig, rtdConfig, audiences) {
88
68
  const bidders = deepAccess(rtdConfig, 'params.bidders');
89
69
  if (!bidders || bidders.length === 0 || !audiences || audiences.length === 0) return;
90
70
 
91
- const keywords = audiences.map(
92
- (audienceId) => `perid=${audienceId}`
93
- ).join(',');
71
+ const agOrtb2 = {};
94
72
 
95
- config.mergeBidderConfig({
96
- bidders: bidders,
97
- config: {
98
- ortb2: {
99
- site: {
100
- keywords,
101
- }
102
- }
73
+ const agUserData = [
74
+ {
75
+ id: String(AG_TCF_ID),
76
+ ext: {
77
+ segtax: 540,
78
+ },
79
+ name: 'airgrid',
80
+ segment: audiences.map((id) => ({id}))
103
81
  }
104
- })
105
- }
82
+ ]
83
+ deepSetValue(agOrtb2, 'user.data', agUserData);
106
84
 
107
- export function setAudiencesUsingAppNexusAuctionKeywords(audiences) {
108
- config.setConfig({
109
- appnexusAuctionKeywords: {
110
- perid: audiences,
111
- },
112
- });
85
+ const bidderConfig = Object.fromEntries(
86
+ bidders.map((bidder) => [bidder, agOrtb2])
87
+ )
88
+ mergeDeep(bidConfig?.ortb2Fragments?.bidder, bidderConfig)
113
89
  }
114
90
 
115
91
  /**
@@ -137,14 +113,9 @@ export function passAudiencesToBidders(
137
113
  rtdConfig,
138
114
  userConsent
139
115
  ) {
140
- const adUnits = bidConfig.adUnits || getGlobal().adUnits;
141
116
  const audiences = getMatchedAudiencesFromStorage();
142
117
  if (audiences.length > 0) {
143
- setAudiencesUsingAppNexusAuctionKeywords(audiences);
144
- setAudiencesAsBidderOrtb2(rtdConfig, audiences)
145
- if (adUnits) {
146
- setAudiencesToAppNexusAdUnits(adUnits, audiences);
147
- }
118
+ setAudiencesAsBidderOrtb2(bidConfig, rtdConfig, audiences)
148
119
  }
149
120
  onDone();
150
121
  }
@@ -55,7 +55,7 @@ export const spec = {
55
55
  const asi = getBidIdParameter('asi', bidRequest.params);
56
56
  queryString = tryAppendQueryString(queryString, 'asi', asi);
57
57
  queryString = tryAppendQueryString(queryString, 'skt', SDKType);
58
- queryString = tryAppendQueryString(queryString, 'tid', bidRequest.transactionId)
58
+ queryString = tryAppendQueryString(queryString, 'tid', bidRequest.ortb2Imp?.ext?.tid)
59
59
  queryString = tryAppendQueryString(queryString, 'prebid_id', bidRequest.bidId);
60
60
  queryString = tryAppendQueryString(queryString, 'prebid_ver', '$prebid.version$');
61
61
 
@@ -1,5 +1,5 @@
1
1
  import {registerBidder} from '../src/adapters/bidderFactory.js';
2
- import {deepClone, deepAccess} from '../src/utils.js';
2
+ import {deepAccess, deepClone} from '../src/utils.js';
3
3
  import {ajax} from '../src/ajax.js';
4
4
  import {VIDEO} from '../src/mediaTypes.js';
5
5
  import {config} from '../src/config.js';
@@ -41,6 +41,7 @@ export const spec = {
41
41
  const alkimiConfig = config.getConfig('alkimi');
42
42
 
43
43
  let payload = {
44
+ // TODO: fix auctionId leak: https://github.com/prebid/Prebid.js/issues/9781
44
45
  requestId: bidderRequest.auctionId,
45
46
  signRequest: {bids, randomUUID: alkimiConfig && alkimiConfig.randomUUID},
46
47
  bidIds,
@@ -303,6 +303,7 @@ export const spec = {
303
303
  };
304
304
 
305
305
  const payload = {
306
+ // TODO: fix auctionId leak: https://github.com/prebid/Prebid.js/issues/9781
306
307
  a: bidderRequest.auctionId,
307
308
  B: 0,
308
309
  b: loc.host,
@@ -1,4 +1,4 @@
1
- import { deepAccess, isPlainObject, isArray, replaceAuctionPrice, isFn } from '../src/utils.js';
1
+ import { deepAccess, isPlainObject, isArray, replaceAuctionPrice, isFn, logError } from '../src/utils.js';
2
2
  import { config } from '../src/config.js';
3
3
  import { registerBidder } from '../src/adapters/bidderFactory.js';
4
4
  import {hasPurpose1Consent} from '../src/utils/gpdr.js';
@@ -134,14 +134,14 @@ export const spec = {
134
134
 
135
135
  // Apply geo
136
136
  if (geo) {
137
- payload.geo = geo;
137
+ logError('apacdex adapter: Precise lat and long must be set on config; not on bidder parameters');
138
138
  }
139
139
 
140
140
  payload.bids = bids.map(function (bid) {
141
141
  return {
142
142
  params: bid.params,
143
143
  mediaTypes: bid.mediaTypes,
144
- transactionId: bid.transactionId,
144
+ transactionId: bid.ortb2Imp?.ext?.tid,
145
145
  sizes: bid.sizes,
146
146
  bidId: bid.bidId,
147
147
  adUnitCode: bid.adUnitCode,