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
@@ -0,0 +1,129 @@
1
+ /**
2
+ * This module adds Utiq provided by Utiq SA/NV to the User ID module
3
+ * The {@link module:modules/userId} module is required
4
+ * @module modules/utiqSystem
5
+ * @requires module:modules/userId
6
+ */
7
+ import { logInfo } from '../src/utils.js';
8
+ import { submodule } from '../src/hook.js';
9
+ import { getStorageManager } from '../src/storageManager.js';
10
+ import { MODULE_TYPE_UID } from '../src/activities/modules.js';
11
+
12
+ const MODULE_NAME = 'utiq';
13
+ const LOG_PREFIX = 'Utiq module';
14
+
15
+ export const storage = getStorageManager({
16
+ moduleType: MODULE_TYPE_UID,
17
+ moduleName: MODULE_NAME,
18
+ });
19
+
20
+ /**
21
+ * Get the "atid" from html5 local storage to make it available to the UserId module.
22
+ * @param config
23
+ * @returns {{utiq: (*|string)}}
24
+ */
25
+ function getUtiqFromStorage() {
26
+ let utiqPass;
27
+ let utiqPassStorage = JSON.parse(
28
+ storage.getDataFromLocalStorage('utiqPass')
29
+ );
30
+ logInfo(
31
+ `${LOG_PREFIX}: Local storage utiqPass: ${JSON.stringify(
32
+ utiqPassStorage
33
+ )}`
34
+ );
35
+
36
+ if (
37
+ utiqPassStorage &&
38
+ utiqPassStorage.connectId &&
39
+ Array.isArray(utiqPassStorage.connectId.idGraph) &&
40
+ utiqPassStorage.connectId.idGraph.length > 0
41
+ ) {
42
+ utiqPass = utiqPassStorage.connectId.idGraph[0];
43
+ }
44
+ logInfo(
45
+ `${LOG_PREFIX}: Graph of utiqPass: ${JSON.stringify(
46
+ utiqPass
47
+ )}`
48
+ );
49
+
50
+ return {
51
+ utiq:
52
+ utiqPass && utiqPass.atid
53
+ ? utiqPass.atid
54
+ : null,
55
+ };
56
+ }
57
+
58
+ /** @type {Submodule} */
59
+ export const utiqSubmodule = {
60
+ /**
61
+ * Used to link submodule with config
62
+ * @type {string}
63
+ */
64
+ name: MODULE_NAME,
65
+ /**
66
+ * Decodes the stored id value for passing to bid requests.
67
+ * @function
68
+ * @returns {{utiq: string} | null}
69
+ */
70
+ decode(bidId) {
71
+ logInfo(`${LOG_PREFIX}: Decoded ID value ${JSON.stringify(bidId)}`);
72
+ return bidId.utiq ? bidId : null;
73
+ },
74
+ /**
75
+ * Get the id from helper function and initiate a new user sync.
76
+ * @param config
77
+ * @returns {{callback: result}|{id: {utiq: string}}}
78
+ */
79
+ getId: function (config) {
80
+ const data = getUtiqFromStorage();
81
+ if (data.utiq) {
82
+ logInfo(`${LOG_PREFIX}: Local storage ID value ${JSON.stringify(data)}`);
83
+ return { id: { utiq: data.utiq } };
84
+ } else {
85
+ if (!config) {
86
+ config = {};
87
+ }
88
+ if (!config.params) {
89
+ config.params = {};
90
+ }
91
+ if (
92
+ typeof config.params.maxDelayTime === 'undefined' ||
93
+ config.params.maxDelayTime === null
94
+ ) {
95
+ config.params.maxDelayTime = 1000;
96
+ }
97
+ // Current delay and delay step in milliseconds
98
+ let currentDelay = 0;
99
+ const delayStep = 50;
100
+ const result = (callback) => {
101
+ const data = getUtiqFromStorage();
102
+ if (!data.utiq) {
103
+ if (currentDelay > config.params.maxDelayTime) {
104
+ logInfo(
105
+ `${LOG_PREFIX}: No utiq value set after ${config.params.maxDelayTime} max allowed delay time`
106
+ );
107
+ callback(null);
108
+ } else {
109
+ currentDelay += delayStep;
110
+ setTimeout(() => {
111
+ result(callback);
112
+ }, delayStep);
113
+ }
114
+ } else {
115
+ const dataToReturn = { utiq: data.utiq };
116
+ logInfo(
117
+ `${LOG_PREFIX}: Returning ID value data of ${JSON.stringify(
118
+ dataToReturn
119
+ )}`
120
+ );
121
+ callback(dataToReturn);
122
+ }
123
+ };
124
+ return { callback: result };
125
+ }
126
+ },
127
+ };
128
+
129
+ submodule('userId', utiqSubmodule);
@@ -1,22 +1,22 @@
1
- ## trustpid User Id Submodule
1
+ ## Utiq User ID Submodule
2
2
 
3
- trustpid User Id Module.
3
+ Utiq ID Module.
4
4
 
5
- First, make sure to add the trustpid submodule to your Prebid.js package with:
5
+ First, make sure to add the utiq submodule to your Prebid.js package with:
6
6
 
7
7
  ```
8
- gulp build --modules=userId,adfBidAdapter,ixBidAdapter,prebidServerBidAdapter,trustpidSystem
8
+ gulp build --modules=userId,adfBidAdapter,ixBidAdapter,prebidServerBidAdapter,utiqSystem
9
9
  ```
10
10
 
11
11
  ## Parameter Descriptions
12
12
 
13
13
  | Params under userSync.userIds[] | Type | Description | Example |
14
14
  | ------------------------------- | ---------------- | ------------------------------------------------------------------------------------------------------------ | -------------------------------- |
15
- | name | String | The name of the module | `"trustpid"` |
16
- | params | Object | Object with configuration parameters for trustpid User Id submodule | - |
15
+ | name | String | The name of the module | `"utiq"` |
16
+ | params | Object | Object with configuration parameters for utiq User Id submodule | - |
17
17
  | params.maxDelayTime | Integer | Max amount of time (in seconds) before looking into storage for data | 2500 |
18
18
  | bidders | Array of Strings | An array of bidder codes to which this user ID may be sent. Currently required and supporting AdformOpenRTB | [`"adf"`, `"adformPBS"`, `"ix"`] |
19
19
  | storage | Object | Local storage configuration object | - |
20
20
  | storage.type | String | Type of the storage that would be used to store user ID. Must be `"html5"` to utilise HTML5 local storage. | `"html5"` |
21
- | storage.name | String | The name of the key in local storage where the user ID will be stored. | `"trustpid"` |
21
+ | storage.name | String | The name of the key in local storage where the user ID will be stored. | `"utiq"` |
22
22
  | storage.expires | Integer | How long (in days) the user ID information will be stored. For safety reasons, this information is required. | `1` |
@@ -38,6 +38,7 @@ export const spec = {
38
38
  bidId: bidRequest.bidId,
39
39
  // TODO: is 'page' the right value here?
40
40
  referer: bidderRequest.refererInfo.page,
41
+ // TODO: fix auctionId leak: https://github.com/prebid/Prebid.js/issues/9781
41
42
  id: bidRequest.auctionId,
42
43
  mediaType: bidRequest.mediaTypes.video ? 'video' : 'banner'
43
44
  };
@@ -72,7 +72,7 @@ const transformBidRequests = function(bidRequests) {
72
72
  const transformedBidRequest = {
73
73
  code: bidRequest.adUnitCode || bidRequest.code,
74
74
  id: bidRequest.placementId || params.placementId || params.invCode,
75
- requestId: bidRequest.bidId || bidRequest.transactionId,
75
+ requestId: bidRequest.bidId,
76
76
  bidder: bidRequest.bidder,
77
77
  mediaTypes: bidRequest.mediaTypes,
78
78
  bids: bidRequest.bids,
@@ -57,7 +57,7 @@ function buildRequest(bid, topWindowUrl, sizes, bidderRequest, bidderTimeout) {
57
57
  schain,
58
58
  mediaTypes,
59
59
  auctionId,
60
- transactionId,
60
+ ortb2Imp,
61
61
  bidderRequestId,
62
62
  bidRequestsCount,
63
63
  bidderRequestsCount,
@@ -114,8 +114,9 @@ function buildRequest(bid, topWindowUrl, sizes, bidderRequest, bidderTimeout) {
114
114
  gpid: gpid,
115
115
  cat: cat,
116
116
  pagecat: pagecat,
117
+ // TODO: fix auctionId leak: https://github.com/prebid/Prebid.js/issues/9781
117
118
  auctionId: auctionId,
118
- transactionId: transactionId,
119
+ transactionId: ortb2Imp?.ext?.tid,
119
120
  bidderRequestId: bidderRequestId,
120
121
  bidRequestsCount: bidRequestsCount,
121
122
  bidderRequestsCount: bidderRequestsCount,
@@ -90,7 +90,6 @@ export const spec = {
90
90
  if (bid.adm && bid.price) {
91
91
  let bidResponse = {
92
92
  requestId: response.id,
93
- bidderCode: spec.code,
94
93
  cpm: bid.price,
95
94
  width: bid.w,
96
95
  height: bid.h,
@@ -57,6 +57,8 @@ export const spec = {
57
57
  impObject.video = createVideoRequest(br);
58
58
  } else if (br.mediaTypes.native) {
59
59
  impObject.native = {
60
+ // TODO: fix transactionId leak: https://github.com/prebid/Prebid.js/issues/9781
61
+ // Also, `id` is not in the ORTB native spec
60
62
  id: br.transactionId,
61
63
  ver: '1.2',
62
64
  request: createNativeRequest(br)
@@ -628,6 +628,8 @@ export const utils = {
628
628
  return 'adserror';
629
629
  case CONTENT_LOADED:
630
630
  return 'loadstart';
631
+ case ERROR:
632
+ return ['error', 'aderror', 'contenterror'];
631
633
  case PLAY:
632
634
  return PLAY + 'ing';
633
635
  case PLAYBACK_REQUEST:
@@ -21,8 +21,9 @@ export const spec = {
21
21
  adUnitCode: getBidIdParameter('adUnitCode', bid),
22
22
  bidId: getBidIdParameter('bidId', bid),
23
23
  bidderRequestId: getBidIdParameter('bidderRequestId', bid),
24
+ // TODO: fix auctionId leak: https://github.com/prebid/Prebid.js/issues/9781
24
25
  auctionId: getBidIdParameter('auctionId', bid),
25
- transactionId: getBidIdParameter('transactionId', bid)
26
+ transactionId: bid.ortb2Imp?.ext?.tid,
26
27
  }
27
28
  })
28
29
  };
@@ -23,6 +23,7 @@ export const spec = {
23
23
  url: `${ENDPOINT}`,
24
24
  data: {
25
25
  request: {
26
+ // TODO: fix auctionId leak: https://github.com/prebid/Prebid.js/issues/9781
26
27
  auctionId: bidderRequest.auctionId
27
28
  },
28
29
  gdprConsent: {
@@ -15,6 +15,7 @@ function buildBidRequests(validBidRequests) {
15
15
  const params = validBidRequest.params;
16
16
  const bidRequest = {
17
17
  bidId: validBidRequest.bidId,
18
+ // TODO: fix transactionId leak: https://github.com/prebid/Prebid.js/issues/9781
18
19
  transactionId: validBidRequest.transactionId,
19
20
  sizes: validBidRequest.sizes,
20
21
  placement: params.placement,
@@ -80,6 +81,7 @@ function buildBid(bidData) {
80
81
  bid.vastXml = bidData.content;
81
82
  bid.mediaType = VIDEO;
82
83
 
84
+ // TODO: why does this need to iterate through every ad unit?
83
85
  let adUnit = find(auctionManager.getAdUnits(), function (unit) {
84
86
  return unit.transactionId === bidData.transactionId;
85
87
  });
@@ -8,7 +8,7 @@ export const spec = {
8
8
  code: 'vrtcal',
9
9
  supportedMediaTypes: [BANNER],
10
10
  isBidRequestValid: function (bid) {
11
- if (bid.bidId == '' || bid.auctionId == '') { return false; } else { return true; }// No extras params required
11
+ return true;
12
12
  },
13
13
  buildRequests: function (bidRequests) {
14
14
  const requests = bidRequests.map(function (bid) {
@@ -93,6 +93,11 @@ export const spec = {
93
93
  params.imp[0].banner.h = bid.sizes[0][1];
94
94
  }
95
95
 
96
+ if (bid.ortb2?.regs?.gpp) {
97
+ params.regs.ext.gpp = bid.ortb2.regs.gpp;
98
+ params.regs.ext.gpp_sid = bid.ortb2.regs.gpp_sid;
99
+ }
100
+
96
101
  return {method: 'POST', url: 'https://rtb.vrtcal.com/bidder_prebid.vap?ssp=1804', data: JSON.stringify(params), options: {withCredentials: false, crossOrigin: true}};
97
102
  });
98
103
 
@@ -5,12 +5,10 @@ import {
5
5
  getBidRequest,
6
6
  getParameterByName,
7
7
  isArray,
8
- isEmpty,
9
8
  isFn,
10
9
  isNumber,
11
10
  isPlainObject,
12
- logError,
13
- transformBidderParamKeywords
11
+ logError
14
12
  } from '../src/utils.js';
15
13
  import {config} from '../src/config.js';
16
14
  import {registerBidder} from '../src/adapters/bidderFactory.js';
@@ -18,6 +16,7 @@ import {BANNER} from '../src/mediaTypes.js';
18
16
  import {find, includes} from '../src/polyfill.js';
19
17
  import {getStorageManager} from '../src/storageManager.js';
20
18
  import {hasPurpose1Consent} from '../src/utils/gpdr.js';
19
+ import {getANKeywordParam, transformBidderParamKeywords} from '../libraries/appnexusKeywords/anKeywords.js';
21
20
 
22
21
  const BIDDER_CODE = 'winr';
23
22
  const URL = 'https://ib.adnxs.com/ut/v3/prebid';
@@ -330,10 +329,6 @@ export const spec = {
330
329
  delete params.usePaymentRule;
331
330
  }
332
331
 
333
- if (isPopulatedArray(params.keywords)) {
334
- params.keywords.forEach(deleteValues);
335
- }
336
-
337
332
  Object.keys(params).forEach((paramKey) => {
338
333
  let convertedKey = convertCamelToUnderscore(paramKey);
339
334
  if (convertedKey !== paramKey) {
@@ -347,16 +342,6 @@ export const spec = {
347
342
  },
348
343
  };
349
344
 
350
- function isPopulatedArray(arr) {
351
- return !!(isArray(arr) && arr.length > 0);
352
- }
353
-
354
- function deleteValues(keyPairObj) {
355
- if (isPopulatedArray(keyPairObj.value) && keyPairObj.value[0] === '') {
356
- delete keyPairObj.value;
357
- }
358
- }
359
-
360
345
  function formatRequest(payload, bidderRequest) {
361
346
  let request = [];
362
347
  let options = {
@@ -402,6 +387,7 @@ function newBid(serverBid, rtbBid, bidderRequest) {
402
387
  const bid = {
403
388
  adType: rtbBid.ad_type,
404
389
  requestId: serverBid.uuid,
390
+ // TODO: fix auctionId leak: https://github.com/prebid/Prebid.js/issues/9781
405
391
  auctionId: bidRequest.auctionId,
406
392
  cpm: rtbBid.cpm,
407
393
  creativeId: rtbBid.creative_id,
@@ -497,14 +483,7 @@ function bidToTag(bid) {
497
483
  if (bid.params.externalImpId) {
498
484
  tag.external_imp_id = bid.params.externalImpId;
499
485
  }
500
- if (!isEmpty(bid.params.keywords)) {
501
- let keywords = transformBidderParamKeywords(bid.params.keywords);
502
-
503
- if (keywords.length > 0) {
504
- keywords.forEach(deleteValues);
505
- }
506
- tag.keywords = keywords;
507
- }
486
+ tag.keywords = getANKeywordParam(bid.ortb2, bid.params.keywords)
508
487
 
509
488
  let gpid = deepAccess(bid, 'ortb2Imp.ext.data.pbadslot');
510
489
  if (gpid) {
@@ -44,8 +44,9 @@ function buildRequests(validBidRequests, bidderRequest) {
44
44
  const request = {};
45
45
  request.bidId = req.bidId;
46
46
  request.banner = deepAccess(req, 'mediaTypes.banner');
47
+ // TODO: fix auctionId leak: https://github.com/prebid/Prebid.js/issues/9781
47
48
  request.auctionId = req.auctionId;
48
- request.transactionId = req.transactionId;
49
+ request.transactionId = req.ortb2Imp?.ext?.tid;
49
50
  request.sizes = parseSizesInput(getAdUnitSizes(req));
50
51
  request.schain = req.schain;
51
52
  request.location = {
@@ -1,4 +1,4 @@
1
- import {deepSetValue, logInfo, deepAccess} from '../src/utils.js';
1
+ import {deepAccess, deepSetValue, logInfo} from '../src/utils.js';
2
2
  import {registerBidder} from '../src/adapters/bidderFactory.js';
3
3
  import {BANNER} from '../src/mediaTypes.js';
4
4
 
@@ -41,7 +41,7 @@ export const spec = {
41
41
  }));
42
42
 
43
43
  const openrtbRequest = {
44
- id: bidderRequest.auctionId,
44
+ id: bidderRequest.bidderRequestId,
45
45
  imp: impressions,
46
46
  site: {
47
47
  domain: bidderRequest.refererInfo?.domain,
@@ -258,6 +258,7 @@ function addPlacement(request) {
258
258
  placementInfo.tid = transactionId;
259
259
  }
260
260
  if (request.auctionId) {
261
+ // TODO: fix auctionId leak: https://github.com/prebid/Prebid.js/issues/9781
261
262
  placementInfo.auctionId = request.auctionId;
262
263
  }
263
264
  return JSON.stringify(placementInfo);
@@ -50,7 +50,7 @@ export const spec = {
50
50
  // TODO: is 'page' the right value here?
51
51
  const referrer = bidderRequest.refererInfo.page;
52
52
  const bidId = bidRequest.bidId;
53
- const transactionId = bidRequest.transactionId;
53
+ const transactionId = bidRequest.ortb2Imp?.ext?.tid;
54
54
  const unitCode = bidRequest.adUnitCode;
55
55
  const timeout = bidderRequest.timeout;
56
56
  const language = window.navigator.language;
@@ -1,6 +1,7 @@
1
- import { logWarn, deepAccess } from '../src/utils.js';
2
- import { registerBidder } from '../src/adapters/bidderFactory.js';
1
+ import {deepAccess, logWarn} from '../src/utils.js';
2
+ import {registerBidder} from '../src/adapters/bidderFactory.js';
3
3
  import {BANNER} from '../src/mediaTypes.js';
4
+
4
5
  const BIDDER_CODE = 'zeta_global';
5
6
  const PREBID_DEFINER_ID = '44253'
6
7
  const ENDPOINT_URL = 'https://prebid.rfihub.com/prebid';
@@ -40,12 +41,6 @@ export const spec = {
40
41
  return false;
41
42
  }
42
43
 
43
- if (!(bid.params.device.geo &&
44
- bid.params.device.geo.country)) {
45
- logWarn('Invalid bid request - missing required geo data');
46
- return false;
47
- }
48
-
49
44
  if (!bid.params.definerId) {
50
45
  logWarn('Invalid bid request - missing required definer data');
51
46
  return false;
@@ -71,7 +66,7 @@ export const spec = {
71
66
  banner: buildBanner(request)
72
67
  };
73
68
  let payload = {
74
- id: bidderRequest.auctionId,
69
+ id: bidderRequest.bidderRequestId,
75
70
  imp: [impData],
76
71
  site: params.site ? params.site : {},
77
72
  app: params.app ? params.app : {},
@@ -113,7 +113,7 @@ export const spec = {
113
113
  });
114
114
 
115
115
  let payload = {
116
- id: bidderRequest.auctionId,
116
+ id: bidderRequest.bidderRequestId,
117
117
  cur: [DEFAULT_CUR],
118
118
  imp: imps,
119
119
  site: params.site ? params.site : {},
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "prebid.js",
3
- "version": "7.53.0",
3
+ "version": "8.0.0",
4
4
  "description": "Header Bidding Management Library",
5
5
  "main": "src/prebid.js",
6
6
  "scripts": {
@@ -45,3 +45,8 @@ export const ACTIVITY_TRANSMIT_UFPD = 'transmitUfpd';
45
45
  * transmitPreciseGeo: some component wants access to (and send along) geolocation info
46
46
  */
47
47
  export const ACTIVITY_TRANSMIT_PRECISE_GEO = 'transmitPreciseGeo';
48
+
49
+ /**
50
+ * transmit TID: some component wants access ot (and send along) transaction IDs
51
+ */
52
+ export const ACTIVITY_TRANSMIT_TID = 'transmitTid';
@@ -1,6 +1,12 @@
1
1
  import {deepAccess} from '../utils.js';
2
- import {isActivityAllowed} from './rules.js';
3
- import {ACTIVITY_TRANSMIT_EIDS, ACTIVITY_TRANSMIT_PRECISE_GEO, ACTIVITY_TRANSMIT_UFPD} from './activities.js';
2
+ import {config} from '../config.js';
3
+ import {isActivityAllowed, registerActivityControl} from './rules.js';
4
+ import {
5
+ ACTIVITY_TRANSMIT_EIDS,
6
+ ACTIVITY_TRANSMIT_PRECISE_GEO,
7
+ ACTIVITY_TRANSMIT_TID,
8
+ ACTIVITY_TRANSMIT_UFPD
9
+ } from './activities.js';
4
10
 
5
11
  export const ORTB_UFPD_PATHS = ['user.data', 'user.ext.data'];
6
12
  export const ORTB_EIDS_PATHS = ['user.eids', 'user.ext.eids'];
@@ -74,16 +80,12 @@ export function objectTransformer(rules) {
74
80
  })
75
81
  return function applyTransform(session, obj, ...args) {
76
82
  const result = [];
83
+ const applies = sessionedApplies(session, ...args);
77
84
  rules.forEach(rule => {
78
85
  if (session[rule.name] === false) return;
79
86
  for (const [head, tail] of rule.paths) {
80
87
  const parent = head == null ? obj : deepAccess(obj, head);
81
- result.push(rule.run(obj, head, parent, tail, () => {
82
- if (!session.hasOwnProperty(rule.name)) {
83
- session[rule.name] = !!rule.applies(...args);
84
- }
85
- return session[rule.name]
86
- }))
88
+ result.push(rule.run(obj, head, parent, tail, applies.bind(null, rule)));
87
89
  if (session[rule.name] === false) return;
88
90
  }
89
91
  })
@@ -91,6 +93,15 @@ export function objectTransformer(rules) {
91
93
  }
92
94
  }
93
95
 
96
+ export function sessionedApplies(session, ...args) {
97
+ return function applies(rule) {
98
+ if (!session.hasOwnProperty(rule.name)) {
99
+ session[rule.name] = !!rule.applies(...args);
100
+ }
101
+ return session[rule.name];
102
+ }
103
+ }
104
+
94
105
  export function isData(val) {
95
106
  return val != null && (typeof val !== 'object' || Object.keys(val).length > 0)
96
107
  }
@@ -107,6 +118,11 @@ function bidRequestTransmitRules(isAllowed = isActivityAllowed) {
107
118
  name: ACTIVITY_TRANSMIT_EIDS,
108
119
  paths: ['userId', 'userIdAsEids'],
109
120
  applies: appliesWhenActivityDenied(ACTIVITY_TRANSMIT_EIDS, isAllowed),
121
+ },
122
+ {
123
+ name: ACTIVITY_TRANSMIT_TID,
124
+ paths: ['ortb2Imp.ext.tid'],
125
+ applies: appliesWhenActivityDenied(ACTIVITY_TRANSMIT_TID, isAllowed)
110
126
  }
111
127
  ].map(redactRule)
112
128
  }
@@ -130,6 +146,11 @@ export function ortb2TransmitRules(isAllowed = isActivityAllowed) {
130
146
  get(val) {
131
147
  return Math.round((val + Number.EPSILON) * 100) / 100;
132
148
  }
149
+ },
150
+ {
151
+ name: ACTIVITY_TRANSMIT_TID,
152
+ paths: ['source.tid'],
153
+ applies: appliesWhenActivityDenied(ACTIVITY_TRANSMIT_TID, isAllowed),
133
154
  }
134
155
  ].map(redactRule);
135
156
  }
@@ -155,3 +176,10 @@ export function redactorFactory(isAllowed = isActivityAllowed) {
155
176
  * that can redact disallowed data from ORTB2 and/or bid request objects.
156
177
  */
157
178
  export const redactor = redactorFactory();
179
+
180
+ // by default, TIDs are off since version 8
181
+ registerActivityControl(ACTIVITY_TRANSMIT_TID, 'enableTIDs config', () => {
182
+ if (!config.getConfig('enableTIDs')) {
183
+ return {allow: false, reason: 'TIDs are disabled'}
184
+ }
185
+ });