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,454 +0,0 @@
1
- import { logError } from '../src/utils.js';
2
- import adapter from '../libraries/analyticsAdapter/AnalyticsAdapter.js';
3
- import adapterManager from '../src/adapterManager.js';
4
- import CONSTANTS from '../src/constants.json';
5
-
6
- const {
7
- EVENTS: { BID_REQUESTED, BID_TIMEOUT, BID_RESPONSE, BID_WON }
8
- } = CONSTANTS;
9
-
10
- const prebidVersion = '$prebid.version$';
11
-
12
- const adapterConfig = {
13
- /** Name of the `rta` function, override only when instructed. */
14
- rtaFunctionName: 'rta',
15
-
16
- /** This is optional but highly recommended. The value returned by the
17
- * function will be used as ad impression ad unit attribute value.
18
- *
19
- * As such if you have placement (10293845) or ad unit codes
20
- * (div-gpt-ad-124984-0) but you want these to be translated to meaningful
21
- * values like 'SIDEBAR-AD-01-MOBILE' then this function shall express this
22
- * mapping.
23
- */
24
- getAdUnitName: function(placementOrAdUnitCode) {
25
- return placementOrAdUnitCode;
26
- },
27
-
28
- /**
29
- * Function used to extract placement/adUnitCode (depending on prebid
30
- * version).
31
- *
32
- * The extracted value will be passed to the `getAdUnitName()` for mapping into
33
- * human friendly value.
34
- */
35
- getPlacementOrAdUnitCode: function(bid, version) {
36
- return version[0] === '0' ? bid.placementCode : bid.adUnitCode;
37
- },
38
-
39
- /**
40
- * Optional reference to Google Publisher Tag (gpt)
41
- */
42
- googlePublisherTag: false,
43
-
44
- /**
45
- * Do not override unless instructed. Useful for testing. Allows to redefined
46
- * the event that triggers the ad impression event.
47
- */
48
- wireGooglePublisherTag: function(gpt, cb) {
49
- gpt.pubads().addEventListener('slotRenderEnded', function(event) {
50
- cb(event.slot);
51
- });
52
- },
53
-
54
- /**
55
- * Map which keeps BID_WON events. Keyed by adId property.
56
- */
57
- prebidWinnersCache: {},
58
-
59
- /**
60
- * Map which keeps all BID_RESPONSE events. Keyed by adId property.
61
- */
62
- prebidBidResponsesCache: {},
63
-
64
- /**
65
- * Decides if the GPT slot contains prebid ad impression or not.
66
- *
67
- * When BID_WON event is emitted adid is added to prebidWinnersCache,
68
- * then we check if prebidWinnersCache contains slot.hb_adid.
69
- *
70
- * This function is optional and used only when googlePublisherTag is provided.
71
- *
72
- * Default implementation uses slot's `hb_adid` targeting parameter.
73
- *
74
- * @param slot the gpt slot
75
- */
76
- isPrebidAdImpression: function(slot) {
77
- const hbAdIdTargeting = slot.getTargeting('hb_adid');
78
- if (hbAdIdTargeting.length > 0) {
79
- const hbAdId = hbAdIdTargeting[0];
80
- return typeof this.prebidWinnersCache[hbAdId] !== 'undefined';
81
- }
82
- return false;
83
- },
84
-
85
- /**
86
- * If isPrebidAdImpression decides that slot contain prebid ad impression,
87
- * this function should return prebids highest ad impression partner for that
88
- * slot.
89
- *
90
- * Default implementation uses slot's `hb_adid` targeting value to find
91
- * highest bid response and when present then returns `bidder`.
92
- *
93
- * @param instanceConfig merged analytics adapter instance configuration
94
- * @param slot the gpt slot for which the name of the highest bidder shall be
95
- * returned
96
- * @param version the version of the prebid.js library
97
- */
98
- getHighestPrebidAdImpressionPartner: function(instanceConfig, slot, version) {
99
- const bid = getHighestPrebidBidResponseBySlotTargeting(
100
- instanceConfig,
101
- slot,
102
- version
103
- );
104
-
105
- // this is bid response event has `bidder` while bid won has bidderCode property
106
- return bid ? bid.bidderCode || bid.bidder : null;
107
- },
108
-
109
- /**
110
- * If isPrebidAdImpression decides that slot contain prebid ad impression,
111
- * this function should return prebids highest ad impression value for that
112
- * slot.
113
- *
114
- * Default implementation uses slot's `hb_adid` targeting value to find
115
- * highest bid response and when present then returns `cpm`.
116
- *
117
- * @param instanceConfig merged analytics adapter instance configuration
118
- * @param slot the gpt slot for which the highest ad impression value shall be
119
- * returned
120
- * @param version the version of the prebid.js library
121
- */
122
- getHighestPrebidAdImpressionValue: function(instanceConfig, slot, version) {
123
- const bid = getHighestPrebidBidResponseBySlotTargeting(
124
- instanceConfig,
125
- slot,
126
- version
127
- );
128
-
129
- return bid ? bid.cpm : null;
130
- },
131
-
132
- /**
133
- * This function should return proper ad unit name for slot given as a
134
- * parameter. Unit names returned by this function should be meaningful, for
135
- * example 'FOO_728x90_TOP'. The values returned shall be inline with
136
- * `getAdUnitName`.
137
- *
138
- * Required when googlePublisherTag is defined.
139
- *
140
- * @param slot the gpt slot to translate into friendly name
141
- * @param version the version of the prebid.js library
142
- */
143
- getAdUnitNameByGooglePublisherTagSlot: (slot, version) => {
144
- throw 'Required when googlePublisherTag is defined.';
145
- },
146
-
147
- /**
148
- * Function used to prepare and return parameters provided to rta.
149
- * More information will be in docs given by LiveYield team.
150
- *
151
- * When googlePublisherTag is not provided, second parameter(slot) will always
152
- * equal null.
153
- *
154
- * @param resolution the original ad impression details
155
- * @param slot gpt slot, will be empty in pure Prebid.js-case (when
156
- * googlePublisherTag is not provided)
157
- * @param hbPartner the name of the highest bidding partner
158
- * @param hbValue the value of the highest bid
159
- * @param version version of the prebid.js library
160
- */
161
- postProcessResolution: (resolution, slot, hbPartner, hbValue, version) => {
162
- return resolution;
163
- }
164
- };
165
-
166
- const cpmToMicroUSD = v => (isNaN(v) ? 0 : Math.round(v * 1000));
167
-
168
- const getHighestPrebidBidResponseBySlotTargeting = function(
169
- instanceConfig,
170
- slot,
171
- version
172
- ) {
173
- const hbAdIdTargeting = slot.getTargeting('hb_adid');
174
- if (hbAdIdTargeting.length > 0) {
175
- const hbAdId = hbAdIdTargeting[0];
176
- return (
177
- instanceConfig.prebidWinnersCache[hbAdId] ||
178
- instanceConfig.prebidBidResponsesCache[hbAdId]
179
- );
180
- }
181
- return null;
182
- };
183
-
184
- const liveyield = Object.assign(adapter({ analyticsType: 'bundle' }), {
185
- track({ eventType, args }) {
186
- switch (eventType) {
187
- case BID_REQUESTED:
188
- args.bids.forEach(function(b) {
189
- try {
190
- window[liveyield.instanceConfig.rtaFunctionName](
191
- 'bidRequested',
192
- liveyield.instanceConfig.getAdUnitName(
193
- liveyield.instanceConfig.getPlacementOrAdUnitCode(
194
- b,
195
- prebidVersion
196
- )
197
- ),
198
- args.bidderCode
199
- );
200
- } catch (e) {
201
- logError(e);
202
- }
203
- });
204
- break;
205
- case BID_RESPONSE:
206
- liveyield.instanceConfig.prebidBidResponsesCache[args.adId] = args;
207
- var cpm = args.statusMessage === 'Bid available' ? args.cpm : null;
208
- try {
209
- window[liveyield.instanceConfig.rtaFunctionName](
210
- 'addBid',
211
- liveyield.instanceConfig.getAdUnitName(
212
- liveyield.instanceConfig.getPlacementOrAdUnitCode(
213
- args,
214
- prebidVersion
215
- )
216
- ),
217
- args.bidder || 'unknown',
218
- cpmToMicroUSD(cpm),
219
- typeof args.bidder === 'undefined',
220
- args.statusMessage !== 'Bid available'
221
- );
222
- } catch (e) {
223
- logError(e);
224
- }
225
- break;
226
- case BID_TIMEOUT:
227
- window[liveyield.instanceConfig.rtaFunctionName](
228
- 'biddersTimeout',
229
- args
230
- );
231
- break;
232
- case BID_WON:
233
- liveyield.instanceConfig.prebidWinnersCache[args.adId] = args;
234
- if (liveyield.instanceConfig.googlePublisherTag) {
235
- break;
236
- }
237
-
238
- try {
239
- const ad = liveyield.instanceConfig.getAdUnitName(
240
- liveyield.instanceConfig.getPlacementOrAdUnitCode(
241
- args,
242
- prebidVersion
243
- )
244
- );
245
- if (!ad) {
246
- logError(
247
- 'Cannot find ad by unit name: ' +
248
- liveyield.instanceConfig.getAdUnitName(
249
- liveyield.instanceConfig.getPlacementOrAdUnitCode(
250
- args,
251
- prebidVersion
252
- )
253
- )
254
- );
255
- break;
256
- }
257
- if (!args.bidderCode || !args.cpm) {
258
- logError('Bidder code or cpm is not valid');
259
- break;
260
- }
261
- const resolution = { targetings: [] };
262
- resolution.prebidWon = true;
263
- resolution.prebidPartner = args.bidderCode;
264
- resolution.prebidValue = cpmToMicroUSD(parseFloat(args.cpm));
265
- const resolutionToUse = liveyield.instanceConfig.postProcessResolution(
266
- resolution,
267
- null,
268
- resolution.prebidPartner,
269
- resolution.prebidValue,
270
- prebidVersion
271
- );
272
- window[liveyield.instanceConfig.rtaFunctionName](
273
- 'resolveSlot',
274
- liveyield.instanceConfig.getAdUnitName(
275
- liveyield.instanceConfig.getPlacementOrAdUnitCode(
276
- args,
277
- prebidVersion
278
- )
279
- ),
280
- resolutionToUse
281
- );
282
- } catch (e) {
283
- logError(e);
284
- }
285
- break;
286
- }
287
- }
288
- });
289
-
290
- liveyield.originEnableAnalytics = liveyield.enableAnalytics;
291
-
292
- /**
293
- * Minimal valid config:
294
- *
295
- * ```
296
- * {
297
- * provider: 'liveyield',
298
- * options: {
299
- * // will be provided by the LiveYield team
300
- * customerId: 'UUID',
301
- * // will be provided by the LiveYield team,
302
- * customerName: 'Customer Name',
303
- * // do NOT use window.location.host, use constant value
304
- * customerSite: 'Fixed Site Name',
305
- * // this is used to be inline with GA 'sessionizer' which closes the session on midnight (EST-time).
306
- * sessionTimezoneOffset: '-300'
307
- * }
308
- * }
309
- * ```
310
- */
311
- liveyield.enableAnalytics = function(config) {
312
- if (!config || !config.provider || config.provider !== 'liveyield') {
313
- logError('expected config.provider to equal liveyield');
314
- return;
315
- }
316
- if (!config.options) {
317
- logError('options must be defined');
318
- return;
319
- }
320
- if (!config.options.customerId) {
321
- logError('options.customerId is required');
322
- return;
323
- }
324
- if (!config.options.customerName) {
325
- logError('options.customerName is required');
326
- return;
327
- }
328
- if (!config.options.customerSite) {
329
- logError('options.customerSite is required');
330
- return;
331
- }
332
- if (!config.options.sessionTimezoneOffset) {
333
- logError('options.sessionTimezoneOffset is required');
334
- return;
335
- }
336
- liveyield.instanceConfig = Object.assign(
337
- { prebidWinnersCache: {}, prebidBidResponsesCache: {} },
338
- adapterConfig,
339
- config.options
340
- );
341
-
342
- if (typeof window[liveyield.instanceConfig.rtaFunctionName] !== 'function') {
343
- logError(
344
- `Function ${liveyield.instanceConfig.rtaFunctionName} is not defined.` +
345
- `Make sure that LiveYield snippet in included before the Prebid Analytics configuration.`
346
- );
347
- return;
348
- }
349
- if (liveyield.instanceConfig.googlePublisherTag) {
350
- liveyield.instanceConfig.wireGooglePublisherTag(
351
- liveyield.instanceConfig.googlePublisherTag,
352
- onSlotRenderEnded(liveyield.instanceConfig)
353
- );
354
- }
355
-
356
- const additionalParams = {
357
- customerTimezone: config.options.customerTimezone,
358
- contentId: config.options.contentId,
359
- contentPart: config.options.contentPart,
360
- contentAuthor: config.options.contentAuthor,
361
- contentTitle: config.options.contentTitle,
362
- contentCategory: config.options.contentCategory,
363
- contentLayout: config.options.contentLayout,
364
- contentVariants: config.options.contentVariants,
365
- contentTimezone: config.options.contentTimezone,
366
- cstringDim1: config.options.cstringDim1,
367
- cstringDim2: config.options.cstringDim2,
368
- cintDim1: config.options.cintDim1,
369
- cintDim2: config.options.cintDim2,
370
- cintArrayDim1: config.options.cintArrayDim1,
371
- cintArrayDim2: config.options.cintArrayDim2,
372
- cuniqueStringMet1: config.options.cuniqueStringMet1,
373
- cuniqueStringMet2: config.options.cuniqueStringMet2,
374
- cavgIntMet1: config.options.cavgIntMet1,
375
- cavgIntMet2: config.options.cavgIntMet2,
376
- csumIntMet1: config.options.csumIntMet1,
377
- csumIntMet2: config.options.csumIntMet2
378
- };
379
-
380
- Object.keys(additionalParams).forEach(
381
- key => additionalParams[key] == null && delete additionalParams[key]
382
- );
383
-
384
- window[liveyield.instanceConfig.rtaFunctionName](
385
- 'create',
386
- config.options.customerId,
387
- config.options.customerName,
388
- config.options.customerSite,
389
- config.options.sessionTimezoneOffset,
390
- additionalParams
391
- );
392
- liveyield.originEnableAnalytics(config);
393
- };
394
-
395
- const onSlotRenderEnded = function(instanceConfig) {
396
- const addDfpDetails = (resolution, slot) => {
397
- const responseInformation = slot.getResponseInformation();
398
- if (responseInformation) {
399
- resolution.dfpAdvertiserId = responseInformation.advertiserId;
400
- resolution.dfpLineItemId = responseInformation.sourceAgnosticLineItemId;
401
- resolution.dfpCreativeId = responseInformation.creativeId;
402
- }
403
- };
404
-
405
- const addPrebidDetails = (resolution, slot) => {
406
- if (instanceConfig.isPrebidAdImpression(slot)) {
407
- resolution.prebidWon = true;
408
- }
409
- const highestPrebidAdImpPartner = instanceConfig.getHighestPrebidAdImpressionPartner(
410
- instanceConfig,
411
- slot,
412
- prebidVersion
413
- );
414
- const highestPrebidAdImpValue = instanceConfig.getHighestPrebidAdImpressionValue(
415
- instanceConfig,
416
- slot,
417
- prebidVersion
418
- );
419
- if (highestPrebidAdImpPartner) {
420
- resolution.prebidPartner = highestPrebidAdImpPartner;
421
- }
422
- if (highestPrebidAdImpValue) {
423
- resolution.prebidValue = cpmToMicroUSD(
424
- parseFloat(highestPrebidAdImpValue)
425
- );
426
- }
427
- };
428
- return slot => {
429
- const resolution = { targetings: [] };
430
-
431
- addDfpDetails(resolution, slot);
432
- addPrebidDetails(resolution, slot);
433
-
434
- const resolutionToUse = instanceConfig.postProcessResolution(
435
- resolution,
436
- slot,
437
- resolution.highestPrebidAdImpPartner,
438
- resolution.highestPrebidAdImpValue,
439
- prebidVersion
440
- );
441
- window[instanceConfig.rtaFunctionName](
442
- 'resolveSlot',
443
- instanceConfig.getAdUnitNameByGooglePublisherTagSlot(slot, prebidVersion),
444
- resolutionToUse
445
- );
446
- };
447
- };
448
-
449
- adapterManager.registerAnalyticsAdapter({
450
- adapter: liveyield,
451
- code: 'liveyield'
452
- });
453
-
454
- export default liveyield;
@@ -1,45 +0,0 @@
1
- # Overview
2
-
3
- Module Name: LiveYield Analytics Adapter
4
-
5
- Module Type: Analytics Adapter
6
-
7
- Maintainer: liveyield@pubocean.com
8
-
9
- # Description
10
-
11
- To install the LiveYield Tracker following snippet shall be added at the top of
12
- the page.
13
-
14
- ```
15
- (function(i,s,o,g,r,a,m,z){i['RTAAnalyticsObject']=r;i[r]=i[r]||function(){
16
- z=Array.prototype.slice.call(arguments);z.unshift(+new Date());
17
- (i[r].q=i[r].q||[]).push(z)},i[r].t=1,i[r].l=1*new Date();a=s.createElement(o),
18
- m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
19
- })(window,document,'script','https://rta.pubocean.com/lib/pubocean-tracker.min.js','rta');
20
- ```
21
-
22
- # Test Parameters
23
-
24
- The LiveYield team will provide you configurations for each of your sites, it
25
- will be similar to:
26
-
27
- ```
28
- {
29
- provider: 'liveyield',
30
- options: {
31
- // will be provided by the LiveYield team
32
- customerId: 'UUID',
33
- // will be provided by the LiveYield team,
34
- customerName: 'Customer Name',
35
- // do NOT use window.location.host, use constant value
36
- customerSite: 'Fixed Site Name',
37
- // this is used to be inline with GA 'sessionizer' which closes the session on midnight (EST-time).
38
- sessionTimezoneOffset: '-300'
39
- }
40
- }
41
- ```
42
-
43
- Additional documentation and support will be provided by the LiveYield team as
44
- part of the onboarding process.
45
-
package/modules/mass.js DELETED
@@ -1,184 +0,0 @@
1
- /**
2
- * This module adds MASS support to Prebid.js.
3
- */
4
-
5
- import {config} from '../src/config.js';
6
- import {getHook} from '../src/hook.js';
7
- import {auctionManager} from '../src/auctionManager.js';
8
- import {timedBidResponseHook} from '../src/utils/perfMetrics.js';
9
-
10
- const defaultCfg = {
11
- dealIdPattern: /^MASS/i
12
- };
13
- let cfg;
14
-
15
- export let listenerAdded = false;
16
- export let isEnabled = false;
17
-
18
- const matchedBids = {};
19
- let renderers;
20
-
21
- config.getConfig('mass', config => init(config.mass));
22
-
23
- /**
24
- * Module init.
25
- */
26
- export function init(userCfg) {
27
- cfg = Object.assign({}, defaultCfg, window.massConfig && window.massConfig.mass, userCfg);
28
-
29
- if (cfg.enabled === false) {
30
- if (isEnabled) {
31
- getHook('addBidResponse').getHooks({hook: addBidResponseHook}).remove();
32
- isEnabled = false;
33
- }
34
- } else {
35
- if (!isEnabled) {
36
- getHook('addBidResponse').before(addBidResponseHook);
37
- isEnabled = true;
38
- }
39
- }
40
-
41
- if (isEnabled) {
42
- updateRenderers();
43
- }
44
- }
45
-
46
- /**
47
- * Update the list of renderers based on current config.
48
- */
49
- export function updateRenderers() {
50
- renderers = [];
51
-
52
- // official MASS renderer:
53
- if (cfg.dealIdPattern && cfg.renderUrl) {
54
- renderers.push({
55
- match: isMassBid,
56
- render: useDefaultRender(cfg.renderUrl, 'mass')
57
- });
58
- }
59
-
60
- // add any custom renderer defined in the config:
61
- (cfg.custom || []).forEach(renderer => {
62
- if (!renderer.match && renderer.dealIdPattern) {
63
- renderer.match = useDefaultMatch(renderer.dealIdPattern);
64
- }
65
-
66
- if (!renderer.render && renderer.renderUrl && renderer.namespace) {
67
- renderer.render = useDefaultRender(renderer.renderUrl, renderer.namespace);
68
- }
69
-
70
- if (renderer.match && renderer.render) {
71
- renderers.push(renderer);
72
- }
73
- });
74
-
75
- return renderers;
76
- }
77
-
78
- /**
79
- * Before hook for 'addBidResponse'.
80
- */
81
- export const addBidResponseHook = timedBidResponseHook('mass', function addBidResponseHook(next, adUnitCode, bid, reject, {index = auctionManager.index} = {}) {
82
- let renderer;
83
- for (let i = 0; i < renderers.length; i++) {
84
- if (renderers[i].match(bid)) {
85
- renderer = renderers[i];
86
- break;
87
- }
88
- }
89
-
90
- if (renderer) {
91
- const bidRequest = index.getBidRequest(bid);
92
-
93
- matchedBids[bid.requestId] = {
94
- renderer,
95
- payload: {
96
- bidRequest,
97
- bid,
98
- adm: bid.ad
99
- }
100
- };
101
-
102
- bid.ad = '<script>window.parent.postMessage({massBidId: "' + bid.requestId + '"}, "*");\x3c/script>';
103
-
104
- addListenerOnce();
105
- }
106
-
107
- next(adUnitCode, bid, reject);
108
- });
109
-
110
- /**
111
- * Add listener for the "message" event sent by the winning bid
112
- */
113
- export function addListenerOnce() {
114
- if (!listenerAdded) {
115
- window.addEventListener('message', e => {
116
- if (!e || !e.data || !e.data.massBidId) {
117
- return;
118
- }
119
-
120
- const matchedBid = matchedBids[e.data.massBidId];
121
- if (matchedBid) {
122
- const payload = {
123
- type: 'prebid',
124
- event: e,
125
- ...matchedBid.payload
126
- };
127
-
128
- delete payload.bid.ad;
129
-
130
- matchedBid.renderer.render(payload);
131
- }
132
- });
133
-
134
- listenerAdded = true;
135
- }
136
- }
137
-
138
- /**
139
- * Check if a bid is MASS.
140
- */
141
- export function isMassBid(bid) {
142
- // either bid.meta.mass is set or deal ID matches a publisher specified pattern:
143
- if (!((bid.meta && bid.meta.mass) || (cfg.dealIdPattern && cfg.dealIdPattern.test(bid.dealId)))) {
144
- return false;
145
- }
146
-
147
- // there must be a 'mass://' or 'pcreative?' in the ad markup:
148
- return /mass:\/\/|\/pcreative\?/i.test(bid.ad);
149
- }
150
-
151
- /**
152
- * Default match (factory).
153
- */
154
- export function useDefaultMatch(dealIdPattern) {
155
- return function(bid) {
156
- return dealIdPattern.test(bid.dealId);
157
- };
158
- }
159
-
160
- /**
161
- * Default render (factory).
162
- */
163
- export function useDefaultRender(renderUrl, namespace) {
164
- return function render(payload) {
165
- const ns = window[namespace] = window[namespace] || {};
166
- ns.queue = ns.queue || [];
167
-
168
- ns.queue.push(payload);
169
-
170
- if (!ns.loaded) {
171
- const s = document.createElement('script');
172
- s.type = 'text/javascript';
173
- s.async = true;
174
- s.src = renderUrl;
175
-
176
- const x = document.getElementsByTagName('script')[0];
177
- x.parentNode.insertBefore(s, x);
178
-
179
- ns.loaded = true;
180
- }
181
- };
182
- }
183
-
184
- init();