prebid.js 7.8.0 → 7.11.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 (483) hide show
  1. package/README.md +0 -2
  2. package/RELEASE_SCHEDULE.md +1 -1
  3. package/allowedModules.js +3 -0
  4. package/babelConfig.js +10 -4
  5. package/dist/33acrossBidAdapter.js +1 -1
  6. package/dist/adWMGAnalyticsAdapter.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/adgenerationBidAdapter.js +1 -1
  11. package/dist/adkernelAdnAnalyticsAdapter.js +1 -1
  12. package/dist/adkernelBidAdapter.js +1 -1
  13. package/dist/adlooxAdServerVideo.js +1 -1
  14. package/dist/adlooxAnalyticsAdapter.js +1 -1
  15. package/dist/adlooxRtdProvider.js +1 -1
  16. package/dist/adnuntiusBidAdapter.js +1 -1
  17. package/dist/adomikAnalyticsAdapter.js +1 -1
  18. package/dist/adrelevantisBidAdapter.js +1 -1
  19. package/dist/adtelligentBidAdapter.js +1 -1
  20. package/dist/adtrgtmeBidAdapter.js +1 -0
  21. package/dist/adxcgAnalyticsAdapter.js +1 -1
  22. package/dist/adxcgBidAdapter.js +1 -1
  23. package/dist/adxpremiumAnalyticsAdapter.js +1 -1
  24. package/dist/adyoulikeBidAdapter.js +1 -1
  25. package/dist/ajaBidAdapter.js +1 -1
  26. package/dist/amxBidAdapter.js +1 -1
  27. package/dist/amxIdSystem.js +1 -1
  28. package/dist/analyticsAdapter.js +1 -0
  29. package/dist/andBeyondMediaBidAdapter.js +1 -0
  30. package/dist/aniviewBidAdapter.js +1 -1
  31. package/dist/appierAnalyticsAdapter.js +1 -1
  32. package/dist/appnexusBidAdapter.js +1 -1
  33. package/dist/asoBidAdapter.js +1 -1
  34. package/dist/atsAnalyticsAdapter.js +1 -1
  35. package/dist/audiencerunBidAdapter.js +1 -1
  36. package/dist/axonixBidAdapter.js +1 -1
  37. package/dist/bidglassBidAdapter.js +1 -1
  38. package/dist/bidwatchAnalyticsAdapter.js +1 -1
  39. package/dist/big-richmediaBidAdapter.js +1 -1
  40. package/dist/bluebillywigBidAdapter.js +1 -1
  41. package/dist/boldwinBidAdapter.js +1 -1
  42. package/dist/bridgewellBidAdapter.js +1 -1
  43. package/dist/brightMountainMediaBidAdapter.js +1 -1
  44. package/dist/browsiRtdProvider.js +1 -1
  45. package/dist/byDataAnalyticsAdapter.js +1 -1
  46. package/dist/c1xBidAdapter.js +1 -0
  47. package/dist/cleanioRtdProvider.js +1 -1
  48. package/dist/concertAnalyticsAdapter.js +1 -1
  49. package/dist/concertBidAdapter.js +1 -1
  50. package/dist/connectadBidAdapter.js +1 -1
  51. package/dist/consentManagementUsp.js +1 -1
  52. package/dist/consumableBidAdapter.js +1 -1
  53. package/dist/conversantBidAdapter.js +1 -1
  54. package/dist/cpmstarBidAdapter.js +1 -1
  55. package/dist/craftBidAdapter.js +1 -1
  56. package/dist/criteoBidAdapter.js +1 -1
  57. package/dist/datablocksAnalyticsAdapter.js +1 -1
  58. package/dist/datawrkzBidAdapter.js +1 -0
  59. package/dist/debugging-standalone.js +1 -1
  60. package/dist/dependencies.json +171 -0
  61. package/dist/dspxBidAdapter.js +1 -1
  62. package/dist/eplanningAnalyticsAdapter.js +1 -1
  63. package/dist/eplanningBidAdapter.js +1 -1
  64. package/dist/finativeBidAdapter.js +1 -1
  65. package/dist/fintezaAnalyticsAdapter.js +1 -1
  66. package/dist/freewheel-sspBidAdapter.js +1 -1
  67. package/dist/getOrigin.js +1 -1
  68. package/dist/glimpseBidAdapter.js +1 -1
  69. package/dist/gmosspBidAdapter.js +1 -1
  70. package/dist/goldbachBidAdapter.js +1 -1
  71. package/dist/gridBidAdapter.js +1 -1
  72. package/dist/gridNMBidAdapter.js +1 -1
  73. package/dist/gumgumBidAdapter.js +1 -1
  74. package/dist/h12mediaBidAdapter.js +1 -1
  75. package/dist/hadronAnalyticsAdapter.js +1 -1
  76. package/dist/id5AnalyticsAdapter.js +1 -1
  77. package/dist/id5IdSystem.js +1 -1
  78. package/dist/impactifyBidAdapter.js +1 -1
  79. package/dist/improvedigitalBidAdapter.js +1 -1
  80. package/dist/imuIdSystem.js +1 -1
  81. package/dist/inmarBidAdapter.js +1 -1
  82. package/dist/insticatorBidAdapter.js +1 -1
  83. package/dist/invisiblyAnalyticsAdapter.js +1 -1
  84. package/dist/ixBidAdapter.js +1 -1
  85. package/dist/jixieBidAdapter.js +1 -1
  86. package/dist/justpremiumBidAdapter.js +1 -1
  87. package/dist/kargoAnalyticsAdapter.js +1 -1
  88. package/dist/kargoBidAdapter.js +1 -1
  89. package/dist/konduitAnalyticsAdapter.js +1 -1
  90. package/dist/kueezBidAdapter.js +1 -1
  91. package/dist/lassoBidAdapter.js +1 -1
  92. package/dist/livewrappedAnalyticsAdapter.js +1 -1
  93. package/dist/liveyieldAnalyticsAdapter.js +1 -1
  94. package/dist/logicadBidAdapter.js +1 -1
  95. package/dist/loglyliftBidAdapter.js +1 -1
  96. package/dist/malltvAnalyticsAdapter.js +1 -1
  97. package/dist/marsmediaAnalyticsAdapter.js +1 -1
  98. package/dist/marsmediaBidAdapter.js +1 -1
  99. package/dist/mediafuseBidAdapter.js +1 -1
  100. package/dist/mediakeysBidAdapter.js +1 -1
  101. package/dist/medianetAnalyticsAdapter.js +1 -1
  102. package/dist/mediasquareBidAdapter.js +1 -1
  103. package/dist/mgidBidAdapter.js +1 -1
  104. package/dist/minutemediaBidAdapter.js +1 -1
  105. package/dist/nextMillenniumBidAdapter.js +1 -1
  106. package/dist/nobidBidAdapter.js +1 -1
  107. package/dist/not-for-prod/prebid.js +182 -176
  108. package/dist/oguryBidAdapter.js +1 -1
  109. package/dist/onetagBidAdapter.js +1 -1
  110. package/dist/ooloAnalyticsAdapter.js +1 -1
  111. package/dist/openxAnalyticsAdapter.js +1 -1
  112. package/dist/openxBidAdapter.js +1 -1
  113. package/dist/openxOrtbBidAdapter.js +1 -1
  114. package/dist/optimonAnalyticsAdapter.js +1 -1
  115. package/dist/outbrainBidAdapter.js +1 -1
  116. package/dist/ozoneBidAdapter.js +1 -1
  117. package/dist/parrableIdSystem.js +1 -1
  118. package/dist/pianoDmpAnalyticsAdapter.js +1 -1
  119. package/dist/pixfutureBidAdapter.js +1 -1
  120. package/dist/prebid-core.js +1 -1
  121. package/dist/prebidmanagerAnalyticsAdapter.js +1 -1
  122. package/dist/publinkIdSystem.js +1 -1
  123. package/dist/pubmaticAnalyticsAdapter.js +1 -1
  124. package/dist/pubmaticBidAdapter.js +1 -1
  125. package/dist/pubperfAnalyticsAdapter.js +1 -1
  126. package/dist/pubstackAnalyticsAdapter.js +1 -1
  127. package/dist/pubwiseAnalyticsAdapter.js +1 -1
  128. package/dist/pubxaiAnalyticsAdapter.js +1 -1
  129. package/dist/pulsepointAnalyticsAdapter.js +1 -1
  130. package/dist/pxyzBidAdapter.js +1 -1
  131. package/dist/quantcastBidAdapter.js +1 -1
  132. package/dist/readpeakBidAdapter.js +1 -1
  133. package/dist/realvuAnalyticsAdapter.js +1 -1
  134. package/dist/relaidoBidAdapter.js +1 -1
  135. package/dist/relevantAnalyticsAdapter.js +1 -1
  136. package/dist/rhythmoneBidAdapter.js +1 -1
  137. package/dist/riseBidAdapter.js +1 -1
  138. package/dist/rivrAnalyticsAdapter.js +1 -1
  139. package/dist/roxotAnalyticsAdapter.js +1 -1
  140. package/dist/rtbhouseBidAdapter.js +1 -1
  141. package/dist/rubiconAnalyticsAdapter.js +1 -1
  142. package/dist/rubiconBidAdapter.js +1 -1
  143. package/dist/scaleableAnalyticsAdapter.js +1 -1
  144. package/dist/seedingAllianceBidAdapter.js +1 -1
  145. package/dist/seedtagBidAdapter.js +1 -1
  146. package/dist/sharethroughAnalyticsAdapter.js +1 -1
  147. package/dist/sharethroughBidAdapter.js +1 -1
  148. package/dist/shinezBidAdapter.js +1 -1
  149. package/dist/showheroes-bsBidAdapter.js +1 -1
  150. package/dist/sigmoidAnalyticsAdapter.js +1 -1
  151. package/dist/smaatoBidAdapter.js +1 -1
  152. package/dist/smartadserverBidAdapter.js +1 -1
  153. package/dist/smartxBidAdapter.js +1 -1
  154. package/dist/smilewantedBidAdapter.js +1 -1
  155. package/dist/snigelBidAdapter.js +1 -0
  156. package/dist/sonobiAnalyticsAdapter.js +1 -1
  157. package/dist/sonobiBidAdapter.js +1 -1
  158. package/dist/sovrnAnalyticsAdapter.js +1 -1
  159. package/dist/sovrnBidAdapter.js +1 -1
  160. package/dist/sspBCBidAdapter.js +1 -1
  161. package/dist/staqAnalyticsAdapter.js +1 -1
  162. package/dist/sublimeBidAdapter.js +1 -1
  163. package/dist/synacormediaBidAdapter.js +1 -1
  164. package/dist/tappxBidAdapter.js +1 -1
  165. package/dist/targetVideoBidAdapter.js +1 -1
  166. package/dist/teadsBidAdapter.js +1 -1
  167. package/dist/terceptAnalyticsAdapter.js +1 -1
  168. package/dist/trionBidAdapter.js +1 -1
  169. package/dist/tripleliftBidAdapter.js +1 -1
  170. package/dist/trustpidSystem.js +1 -1
  171. package/dist/ttdBidAdapter.js +1 -1
  172. package/dist/ucfunnelAnalyticsAdapter.js +1 -1
  173. package/dist/underdogmediaBidAdapter.js +1 -1
  174. package/dist/undertoneBidAdapter.js +1 -1
  175. package/dist/userId.js +1 -1
  176. package/dist/vidazooBidAdapter.js +1 -1
  177. package/dist/videobyteBidAdapter.js +1 -1
  178. package/dist/visxBidAdapter.js +1 -1
  179. package/dist/vuukleBidAdapter.js +1 -1
  180. package/dist/widespaceBidAdapter.js +1 -1
  181. package/dist/winrBidAdapter.js +1 -1
  182. package/dist/yahoosspBidAdapter.js +1 -1
  183. package/dist/yieldmoBidAdapter.js +1 -1
  184. package/dist/yieldoneAnalyticsAdapter.js +1 -1
  185. package/dist/yuktamediaAnalyticsAdapter.js +1 -1
  186. package/dist/zeta_global_sspAnalyticsAdapter.js +1 -1
  187. package/dist/zeta_global_sspBidAdapter.js +1 -1
  188. package/gulpHelpers.js +22 -55
  189. package/gulpfile.js +12 -5
  190. package/integrationExamples/gpt/1plusXRtdProviderExample.html +2 -4
  191. package/integrationExamples/gpt/airgridRtdProvider_example.html +1 -4
  192. package/integrationExamples/gpt/amp/remote.html +1 -1
  193. package/integrationExamples/gpt/blueconicRtdProvider_example.html +2 -4
  194. package/integrationExamples/gpt/hadronRtdProvider_example.html +1 -3
  195. package/integrationExamples/gpt/inskin_example.html +1 -3
  196. package/integrationExamples/gpt/permutiveRtdProvider_example.html +1 -1
  197. package/integrationExamples/gpt/prebidServer_example.html +1 -3
  198. package/integrationExamples/gpt/serverbidServer_example.html +1 -3
  199. package/integrationExamples/gpt/userId_example.html +1 -3
  200. package/integrationExamples/postbid/oas/postbid-config.js +5 -5
  201. package/karma.conf.maker.js +2 -13
  202. package/libraries/LIBRARIES.md +5 -0
  203. package/{src → libraries/analyticsAdapter}/AnalyticsAdapter.js +5 -6
  204. package/{src/adapters/analytics → libraries/analyticsAdapter/examples}/example.js +1 -1
  205. package/{src/adapters/analytics → libraries/analyticsAdapter/examples}/example2.js +1 -1
  206. package/modules/.submodules.json +0 -12
  207. package/modules/1plusXRtdProvider.js +1 -1
  208. package/modules/33acrossBidAdapter.js +3 -3
  209. package/modules/adWMGAnalyticsAdapter.js +1 -1
  210. package/modules/adagioAnalyticsAdapter.js +1 -1
  211. package/modules/adagioBidAdapter.js +3 -4
  212. package/modules/adgenerationBidAdapter.js +1 -1
  213. package/modules/adkernelAdnAnalyticsAdapter.js +1 -1
  214. package/modules/adkernelBidAdapter.js +2 -1
  215. package/modules/adlooxAnalyticsAdapter.js +1 -1
  216. package/modules/admixerBidAdapter.js +1 -1
  217. package/modules/adnowBidAdapter.js +1 -1
  218. package/modules/adnuntiusBidAdapter.js +3 -1
  219. package/modules/adomikAnalyticsAdapter.js +1 -1
  220. package/modules/adpod.js +1 -1
  221. package/modules/adrelevantisBidAdapter.js +2 -2
  222. package/modules/adriverBidAdapter.js +1 -1
  223. package/modules/adtargetBidAdapter.js +1 -1
  224. package/modules/adtelligentBidAdapter.js +4 -2
  225. package/modules/adtrgtmeBidAdapter.js +333 -0
  226. package/modules/adtrgtmeBidAdapter.md +69 -0
  227. package/modules/adtrueBidAdapter.js +1 -1
  228. package/modules/adxcgAnalyticsAdapter.js +1 -1
  229. package/modules/adxpremiumAnalyticsAdapter.js +2 -2
  230. package/modules/adyoulikeBidAdapter.js +12 -8
  231. package/modules/akamaiDapRtdProvider.js +2 -2
  232. package/modules/andBeyondMediaBidAdapter.js +202 -0
  233. package/modules/andBeyondMediaBidAdapter.md +79 -0
  234. package/modules/aniviewBidAdapter.js +2 -2
  235. package/modules/apacdexBidAdapter.js +3 -3
  236. package/modules/appierAnalyticsAdapter.js +1 -1
  237. package/modules/appnexusBidAdapter.js +9 -9
  238. package/modules/apstreamBidAdapter.js +2 -2
  239. package/modules/atsAnalyticsAdapter.js +1 -1
  240. package/modules/betweenBidAdapter.js +1 -1
  241. package/modules/bidwatchAnalyticsAdapter.js +71 -12
  242. package/modules/bizzclickBidAdapter.js +1 -1
  243. package/modules/bliinkBidAdapter.js +1 -1
  244. package/modules/boldwinBidAdapter.js +16 -7
  245. package/modules/boldwinBidAdapter.md +17 -0
  246. package/modules/brightMountainMediaBidAdapter.js +1 -1
  247. package/modules/browsiRtdProvider.js +26 -12
  248. package/modules/byDataAnalyticsAdapter.js +2 -2
  249. package/modules/c1xBidAdapter.js +209 -0
  250. package/modules/c1xBidAdapter.md +70 -0
  251. package/modules/cleanioRtdProvider.js +29 -0
  252. package/modules/cleanmedianetBidAdapter.js +1 -1
  253. package/modules/colossussspBidAdapter.js +2 -2
  254. package/modules/concertAnalyticsAdapter.js +1 -1
  255. package/modules/consentManagementUsp.js +2 -2
  256. package/modules/consumableBidAdapter.js +21 -3
  257. package/modules/cpmstarBidAdapter.js +23 -13
  258. package/modules/criteoBidAdapter.js +47 -5
  259. package/modules/cwireBidAdapter.js +1 -1
  260. package/modules/datablocksAnalyticsAdapter.js +1 -1
  261. package/modules/datablocksBidAdapter.js +1 -1
  262. package/modules/datawrkzBidAdapter.js +633 -0
  263. package/modules/datawrkzBidAdapter.md +160 -0
  264. package/modules/dfpAdServerVideo.js +2 -2
  265. package/modules/dgkeywordRtdProvider.js +1 -1
  266. package/modules/dspxBidAdapter.js +1 -1
  267. package/modules/e_volutionBidAdapter.js +3 -3
  268. package/modules/ebdrBidAdapter.js +1 -1
  269. package/modules/emx_digitalBidAdapter.js +1 -1
  270. package/modules/eplanningAnalyticsAdapter.js +1 -1
  271. package/modules/eplanningBidAdapter.js +3 -3
  272. package/modules/fabrickIdSystem.js +2 -2
  273. package/modules/fintezaAnalyticsAdapter.js +2 -2
  274. package/modules/freewheel-sspBidAdapter.js +1 -1
  275. package/modules/gamoshiBidAdapter.js +1 -1
  276. package/modules/getintentBidAdapter.js +1 -1
  277. package/modules/gjirafaBidAdapter.js +2 -2
  278. package/modules/goldbachBidAdapter.js +8 -8
  279. package/modules/gothamadsBidAdapter.js +2 -2
  280. package/modules/gridBidAdapter.js +1 -1
  281. package/modules/gridNMBidAdapter.js +1 -1
  282. package/modules/gumgumBidAdapter.js +3 -3
  283. package/modules/h12mediaBidAdapter.js +1 -1
  284. package/modules/hadronAnalyticsAdapter.js +3 -3
  285. package/modules/hadronRtdProvider.js +1 -1
  286. package/modules/id5AnalyticsAdapter.js +2 -2
  287. package/modules/impactifyBidAdapter.js +1 -1
  288. package/modules/improvedigitalBidAdapter.js +5 -2
  289. package/modules/imuIdSystem.js +40 -28
  290. package/modules/imuIdSystem.md +1 -0
  291. package/modules/inskinBidAdapter.js +1 -1
  292. package/modules/integr8BidAdapter.js +2 -2
  293. package/modules/intentIqIdSystem.js +2 -2
  294. package/modules/interactiveOffersBidAdapter.js +1 -1
  295. package/modules/invisiblyAnalyticsAdapter.js +1 -1
  296. package/modules/iqmBidAdapter.js +1 -1
  297. package/modules/ixBidAdapter.js +15 -15
  298. package/modules/kargoAnalyticsAdapter.js +1 -1
  299. package/modules/kargoBidAdapter.js +4 -5
  300. package/modules/konduitAnalyticsAdapter.js +1 -1
  301. package/modules/krushmediaBidAdapter.js +2 -2
  302. package/modules/kueezBidAdapter.js +2 -2
  303. package/modules/lassoBidAdapter.js +3 -3
  304. package/modules/livewrappedAnalyticsAdapter.js +4 -4
  305. package/modules/liveyieldAnalyticsAdapter.js +1 -1
  306. package/modules/lkqdBidAdapter.js +3 -3
  307. package/modules/loganBidAdapter.js +2 -2
  308. package/modules/luponmediaBidAdapter.js +3 -3
  309. package/modules/malltvAnalyticsAdapter.js +1 -1
  310. package/modules/malltvBidAdapter.js +2 -2
  311. package/modules/marsmediaAnalyticsAdapter.js +1 -1
  312. package/modules/mediafuseBidAdapter.js +8 -8
  313. package/modules/mediakeysBidAdapter.js +2 -2
  314. package/modules/medianetAnalyticsAdapter.js +1 -1
  315. package/modules/merkleIdSystem.js +2 -2
  316. package/modules/mgidBidAdapter.js +2 -2
  317. package/modules/microadBidAdapter.js +1 -1
  318. package/modules/mobfoxpbBidAdapter.js +2 -2
  319. package/modules/newspassidBidAdapter.js +1 -1
  320. package/modules/nextMillenniumBidAdapter.js +21 -2
  321. package/modules/nobidBidAdapter.js +3 -3
  322. package/modules/novatiqIdSystem.js +1 -1
  323. package/modules/oguryBidAdapter.js +1 -1
  324. package/modules/ooloAnalyticsAdapter.js +1 -1
  325. package/modules/open8BidAdapter.js +1 -1
  326. package/modules/openwebBidAdapter.js +1 -1
  327. package/modules/openxAnalyticsAdapter.js +6 -745
  328. package/modules/openxAnalyticsAdapter.md +4 -0
  329. package/modules/openxBidAdapter.js +3 -5
  330. package/modules/openxOrtbBidAdapter.js +8 -4
  331. package/modules/operaadsBidAdapter.js +1 -1
  332. package/modules/optimonAnalyticsAdapter.js +1 -1
  333. package/modules/ozoneBidAdapter.js +102 -271
  334. package/modules/ozoneBidAdapter.md +37 -0
  335. package/modules/pianoDmpAnalyticsAdapter.js +1 -1
  336. package/modules/pixfutureBidAdapter.js +1 -1
  337. package/modules/prebidServerBidAdapter/index.js +7 -7
  338. package/modules/prebidmanagerAnalyticsAdapter.js +2 -2
  339. package/modules/priceFloors.js +1 -1
  340. package/modules/pubmaticAnalyticsAdapter.js +2 -2
  341. package/modules/pubmaticBidAdapter.js +28 -8
  342. package/modules/pubperfAnalyticsAdapter.js +1 -1
  343. package/modules/pubstackAnalyticsAdapter.js +1 -1
  344. package/modules/pubwiseAnalyticsAdapter.js +2 -2
  345. package/modules/pubwiseBidAdapter.js +3 -3
  346. package/modules/pubxBidAdapter.js +1 -1
  347. package/modules/pubxaiAnalyticsAdapter.js +3 -3
  348. package/modules/pulsepointAnalyticsAdapter.js +1 -1
  349. package/modules/pulsepointBidAdapter.js +1 -1
  350. package/modules/quantcastIdSystem.js +1 -1
  351. package/modules/radsBidAdapter.js +1 -1
  352. package/modules/realvuAnalyticsAdapter.js +1 -1
  353. package/modules/relaidoBidAdapter.js +23 -18
  354. package/modules/relevantAnalyticsAdapter.js +1 -1
  355. package/modules/revcontentBidAdapter.js +1 -1
  356. package/modules/richaudienceBidAdapter.js +1 -1
  357. package/modules/riseBidAdapter.js +8 -5
  358. package/modules/riseBidAdapter.md +3 -1
  359. package/modules/rivrAnalyticsAdapter.js +1 -1
  360. package/modules/roxotAnalyticsAdapter.js +1 -1
  361. package/modules/rtbhouseBidAdapter.js +1 -1
  362. package/modules/rubiconAnalyticsAdapter.js +1 -1
  363. package/modules/rubiconBidAdapter.js +2 -2
  364. package/modules/scaleableAnalyticsAdapter.js +1 -1
  365. package/modules/schain.js +1 -1
  366. package/modules/sharethroughAnalyticsAdapter.js +1 -1
  367. package/modules/sharethroughBidAdapter.js +3 -3
  368. package/modules/shinezBidAdapter.js +2 -2
  369. package/modules/showheroes-bsBidAdapter.js +131 -49
  370. package/modules/showheroes-bsBidAdapter.md +49 -0
  371. package/modules/sigmoidAnalyticsAdapter.js +1 -1
  372. package/modules/sirdataRtdProvider.js +3 -3
  373. package/modules/sizeMappingV2.js +1 -1
  374. package/modules/smaatoBidAdapter.js +2 -2
  375. package/modules/smartxBidAdapter.js +2 -2
  376. package/modules/snigelBidAdapter.js +150 -0
  377. package/modules/snigelBidAdapter.md +46 -0
  378. package/modules/sonobiAnalyticsAdapter.js +2 -2
  379. package/modules/sonobiBidAdapter.js +3 -3
  380. package/modules/sovrnAnalyticsAdapter.js +1 -1
  381. package/modules/spotxBidAdapter.js +5 -5
  382. package/modules/sspBCBidAdapter.js +15 -18
  383. package/modules/staqAnalyticsAdapter.js +2 -2
  384. package/modules/synacormediaBidAdapter.js +1 -1
  385. package/modules/taboolaBidAdapter.js +1 -1
  386. package/modules/tappxBidAdapter.js +4 -4
  387. package/modules/targetVideoBidAdapter.js +1 -1
  388. package/modules/terceptAnalyticsAdapter.js +1 -1
  389. package/modules/theAdxBidAdapter.js +2 -2
  390. package/modules/tpmnBidAdapter.js +1 -1
  391. package/modules/trionBidAdapter.js +2 -2
  392. package/modules/tripleliftBidAdapter.js +46 -20
  393. package/modules/trustpidSystem.js +2 -2
  394. package/modules/ttdBidAdapter.js +41 -26
  395. package/modules/ttdBidAdapter.md +4 -10
  396. package/modules/ucfunnelAnalyticsAdapter.js +1 -1
  397. package/modules/underdogmediaBidAdapter.js +1 -1
  398. package/modules/userId/eids.js +5 -0
  399. package/modules/userId/index.js +11 -7
  400. package/modules/vdoaiBidAdapter.js +1 -1
  401. package/modules/vidazooBidAdapter.js +9 -5
  402. package/modules/videoheroesBidAdapter.js +1 -1
  403. package/modules/vidoomyBidAdapter.js +1 -1
  404. package/modules/visxBidAdapter.js +1 -1
  405. package/modules/vrtcalBidAdapter.js +1 -1
  406. package/modules/weboramaRtdProvider.js +3 -3
  407. package/modules/winrBidAdapter.js +1 -1
  408. package/modules/yahoosspBidAdapter.js +4 -3
  409. package/modules/yandexBidAdapter.js +1 -1
  410. package/modules/yieldmoBidAdapter.js +3 -3
  411. package/modules/yieldoneAnalyticsAdapter.js +1 -1
  412. package/modules/yieldoneBidAdapter.js +2 -2
  413. package/modules/yuktamediaAnalyticsAdapter.js +1 -1
  414. package/modules/zeta_global_sspAnalyticsAdapter.js +1 -1
  415. package/modules/zeta_global_sspBidAdapter.js +25 -22
  416. package/package.json +4 -3
  417. package/src/Renderer.js +1 -1
  418. package/src/adapterManager.js +3 -3
  419. package/src/adapters/bidderFactory.js +1 -0
  420. package/src/auction.js +2 -2
  421. package/src/bidfactory.js +1 -1
  422. package/src/config.js +7 -7
  423. package/src/native.js +53 -58
  424. package/src/sizeMapping.js +1 -1
  425. package/src/targeting.js +1 -1
  426. package/src/userSync.js +1 -1
  427. package/src/utils.js +1 -1
  428. package/test/mocks/analyticsStub.js +1 -1
  429. package/test/spec/AnalyticsAdapter_spec.js +1 -1
  430. package/test/spec/config_spec.js +4 -0
  431. package/test/spec/modules/adagioBidAdapter_spec.js +2 -0
  432. package/test/spec/modules/adnuntiusBidAdapter_spec.js +7 -3
  433. package/test/spec/modules/adtelligentBidAdapter_spec.js +1 -0
  434. package/test/spec/modules/adtrgtmeBidAdapter_spec.js +802 -0
  435. package/test/spec/modules/adyoulikeBidAdapter_spec.js +8 -3
  436. package/test/spec/modules/andBeyondMediaBidAdapter_spec.js +400 -0
  437. package/test/spec/modules/bidwatchAnalyticsAdapter_spec.js +17 -1
  438. package/test/spec/modules/boldwinBidAdapter_spec.js +2 -1
  439. package/test/spec/modules/browsiRtdProvider_spec.js +40 -1
  440. package/test/spec/modules/c1xBidAdapter_spec.js +189 -0
  441. package/test/spec/modules/cleanioRtdProvider_spec.js +23 -0
  442. package/test/spec/modules/concertAnalyticsAdapter_spec.js +2 -1
  443. package/test/spec/modules/consumableBidAdapter_spec.js +139 -0
  444. package/test/spec/modules/cpmstarBidAdapter_spec.js +1 -1
  445. package/test/spec/modules/criteoBidAdapter_spec.js +169 -38
  446. package/test/spec/modules/datawrkzBidAdapter_spec.js +656 -0
  447. package/test/spec/modules/eids_spec.js +32 -0
  448. package/test/spec/modules/eplanningAnalyticsAdapter_spec.js +2 -2
  449. package/test/spec/modules/fintezaAnalyticsAdapter_spec.js +2 -1
  450. package/test/spec/modules/improvedigitalBidAdapter_spec.js +4 -4
  451. package/test/spec/modules/imuIdSystem_spec.js +20 -4
  452. package/test/spec/modules/invisiblyAnalyticsAdapter_spec.js +8 -3
  453. package/test/spec/modules/kargoBidAdapter_spec.js +11 -2
  454. package/test/spec/modules/konduitAnalyticsAdapter_spec.js +2 -1
  455. package/test/spec/modules/nextMillenniumBidAdapter_spec.js +17 -0
  456. package/test/spec/modules/openxAnalyticsAdapter_spec.js +6 -638
  457. package/test/spec/modules/openxOrtbBidAdapter_spec.js +32 -1
  458. package/test/spec/modules/optimonAnalyticsAdapter_spec.js +2 -1
  459. package/test/spec/modules/ozoneBidAdapter_spec.js +367 -511
  460. package/test/spec/modules/pianoDmpAnalyticsAdapter_spec.js +4 -0
  461. package/test/spec/modules/prebidmanagerAnalyticsAdapter_spec.js +2 -1
  462. package/test/spec/modules/pubmaticBidAdapter_spec.js +111 -5
  463. package/test/spec/modules/pubperfAnalyticsAdapter_spec.js +2 -1
  464. package/test/spec/modules/pubstackAnalyticsAdapter_spec.js +2 -1
  465. package/test/spec/modules/pubwiseAnalyticsAdapter_spec.js +3 -3
  466. package/test/spec/modules/relaidoBidAdapter_spec.js +40 -33
  467. package/test/spec/modules/riseBidAdapter_spec.js +17 -0
  468. package/test/spec/modules/sharethroughBidAdapter_spec.js +10 -1
  469. package/test/spec/modules/showheroes-bsBidAdapter_spec.js +173 -2
  470. package/test/spec/modules/sigmoidAnalyticsAdapter_spec.js +1 -1
  471. package/test/spec/modules/snigelBidAdapter_spec.js +296 -0
  472. package/test/spec/modules/sovrnAnalyticsAdapter_spec.js +2 -1
  473. package/test/spec/modules/sspBCBidAdapter_spec.js +2 -2
  474. package/test/spec/modules/tripleliftBidAdapter_spec.js +378 -10
  475. package/test/spec/modules/ttdBidAdapter_spec.js +113 -34
  476. package/test/spec/modules/userId_spec.js +38 -2
  477. package/test/spec/modules/vidazooBidAdapter_spec.js +39 -24
  478. package/test/spec/modules/yahoosspBidAdapter_spec.js +13 -0
  479. package/test/spec/modules/yieldoneAnalyticsAdapter_spec.js +5 -1
  480. package/test/spec/modules/zeta_global_sspBidAdapter_spec.js +61 -2
  481. package/test/spec/native_spec.js +96 -0
  482. package/test/spec/unit/core/bidderFactory_spec.js +27 -2
  483. package/webpack.conf.js +47 -11
@@ -0,0 +1,333 @@
1
+ import { registerBidder } from '../src/adapters/bidderFactory.js';
2
+ import { BANNER } from '../src/mediaTypes.js';
3
+ import { deepAccess, isFn, isStr, isNumber, isArray, isEmpty, isPlainObject, generateUUID, logWarn } from '../src/utils.js';
4
+ import { config } from '../src/config.js';
5
+ import { hasPurpose1Consent } from '../src/utils/gpdr.js';
6
+
7
+ const INTEGRATION_METHOD = 'prebid.js';
8
+ const BIDDER_CODE = 'adtrgtme';
9
+ const ENDPOINT = 'https://z.cdn.adtarget.market/ssp?prebid&s=';
10
+ const ADAPTER_VERSION = '1.0.0';
11
+ const PREBID_VERSION = '$prebid.version$';
12
+ const DEFAULT_BID_TTL = 300;
13
+ const DEFAULT_CURRENCY = 'USD';
14
+
15
+ function transformSizes(sizes) {
16
+ const getSize = (size) => {
17
+ return {
18
+ w: parseInt(size[0]),
19
+ h: parseInt(size[1])
20
+ }
21
+ }
22
+ if (isArray(sizes) && sizes.length === 2 && !isArray(sizes[0])) {
23
+ return [ getSize(sizes) ];
24
+ }
25
+ return sizes.map(getSize);
26
+ }
27
+
28
+ function extractUserSyncUrls(syncOptions, pixels) {
29
+ let itemsRegExp = /(img|iframe)[\s\S]*?src\s*=\s*("|')(.*?)\2/gi;
30
+ let tagNameRegExp = /\w*(?=\s)/;
31
+ let srcRegExp = /src=("|')(.*?)\1/;
32
+ let userSyncObjects = [];
33
+
34
+ if (pixels) {
35
+ let matchedItems = pixels.match(itemsRegExp);
36
+ if (matchedItems) {
37
+ matchedItems.forEach(item => {
38
+ let tagName = item.match(tagNameRegExp)[0];
39
+ let url = item.match(srcRegExp)[2];
40
+ if (tagName && url) {
41
+ let tagType = tagName.toLowerCase() === 'img' ? 'image' : 'iframe';
42
+ if ((!syncOptions.iframeEnabled && tagType === 'iframe') ||
43
+ (!syncOptions.pixelEnabled && tagType === 'image')) {
44
+ return;
45
+ }
46
+ userSyncObjects.push({
47
+ type: tagType,
48
+ url: url
49
+ });
50
+ }
51
+ });
52
+ }
53
+ }
54
+ return userSyncObjects;
55
+ }
56
+
57
+ function isSecure(bid) {
58
+ return deepAccess(bid, 'params.bidOverride.imp.secure') || (document.location.protocol === 'https:') ? 1 : 0;
59
+ };
60
+
61
+ function getMediaType(bid) {
62
+ return deepAccess(bid, 'mediaTypes.banner') ? BANNER : false;
63
+ }
64
+
65
+ function validateAppendObject(validationFunction, allowedKeys, inputObject, appendToObject) {
66
+ const outputObject = {
67
+ ...appendToObject
68
+ };
69
+ if (allowedKeys.length > 0 && typeof validationFunction === 'function') {
70
+ for (const objectKey in inputObject) {
71
+ if (allowedKeys.indexOf(objectKey) !== -1 && validationFunction(inputObject[objectKey])) {
72
+ outputObject[objectKey] = inputObject[objectKey]
73
+ }
74
+ }
75
+ }
76
+ return outputObject;
77
+ };
78
+
79
+ function getTtl(bidderRequest) {
80
+ const ttl = config.getConfig('adtrgtme.ttl');
81
+ const validateTTL = (ttl) => {
82
+ return (isNumber(ttl) && ttl > 0 && ttl < 3600) ? ttl : DEFAULT_BID_TTL
83
+ };
84
+ return ttl ? validateTTL(ttl) : validateTTL(deepAccess(bidderRequest, 'params.ttl'));
85
+ };
86
+
87
+ function getFloorModuleData(bid) {
88
+ const getFloorRequestObject = {
89
+ currency: deepAccess(bid, 'params.bidOverride.cur') || DEFAULT_CURRENCY,
90
+ mediaType: BANNER,
91
+ size: '*'
92
+ };
93
+ return (isFn(bid.getFloor)) ? bid.getFloor(getFloorRequestObject) : false;
94
+ };
95
+
96
+ function generateOpenRtbObject(bidderRequest, bid) {
97
+ if (bidderRequest) {
98
+ let outBoundBidRequest = {
99
+ id: generateUUID(),
100
+ cur: [getFloorModuleData(bidderRequest).currency || deepAccess(bid, 'params.bidOverride.cur') || DEFAULT_CURRENCY],
101
+ imp: [],
102
+ site: {
103
+ page: deepAccess(bidderRequest, 'refererInfo.page')
104
+ },
105
+ device: {
106
+ dnt: 0,
107
+ ua: navigator.userAgent,
108
+ ip: deepAccess(bid, 'params.bidOverride.device.ip') || deepAccess(bid, 'params.ext.ip') || undefined
109
+ },
110
+ regs: {
111
+ ext: {
112
+ 'us_privacy': bidderRequest.uspConsent ? bidderRequest.uspConsent : '',
113
+ gdpr: bidderRequest.gdprConsent && bidderRequest.gdprConsent.gdprApplies ? 1 : 0
114
+ }
115
+ },
116
+ source: {
117
+ ext: {
118
+ hb: 1,
119
+ adapterver: ADAPTER_VERSION,
120
+ prebidver: PREBID_VERSION,
121
+ integration: {
122
+ name: INTEGRATION_METHOD,
123
+ ver: PREBID_VERSION
124
+ }
125
+ },
126
+ fd: 1
127
+ },
128
+ user: {
129
+ ext: {
130
+ consent: bidderRequest.gdprConsent && bidderRequest.gdprConsent.gdprApplies
131
+ ? bidderRequest.gdprConsent.consentString : ''
132
+ }
133
+ }
134
+ };
135
+
136
+ outBoundBidRequest.site.id = bid.params.sid;
137
+
138
+ if (bidderRequest.ortb2) {
139
+ outBoundBidRequest = appendFirstPartyData(outBoundBidRequest, bid);
140
+ };
141
+
142
+ if (deepAccess(bid, 'schain')) {
143
+ outBoundBidRequest.source.ext.schain = bid.schain;
144
+ outBoundBidRequest.source.ext.schain.nodes[0].rid = outBoundBidRequest.id;
145
+ };
146
+
147
+ return outBoundBidRequest;
148
+ };
149
+ };
150
+
151
+ function appendImpObject(bid, openRtbObject) {
152
+ const mediaTypeMode = getMediaType(bid);
153
+
154
+ if (openRtbObject && bid) {
155
+ const impObject = {
156
+ id: bid.bidId,
157
+ secure: isSecure(bid),
158
+ bidfloor: getFloorModuleData(bid).floor || deepAccess(bid, 'params.bidOverride.imp.bidfloor') || 0.000001
159
+ };
160
+
161
+ if (mediaTypeMode === BANNER) {
162
+ impObject.banner = {
163
+ mimes: bid.mediaTypes.banner.mimes || ['text/html', 'text/javascript', 'application/javascript', 'image/jpg'],
164
+ format: transformSizes(bid.sizes)
165
+ };
166
+ if (bid.mediaTypes.banner.pos) {
167
+ impObject.banner.pos = bid.mediaTypes.banner.pos;
168
+ };
169
+ };
170
+
171
+ impObject.ext = {
172
+ dfp_ad_unit_code: bid.adUnitCode
173
+ };
174
+
175
+ if (deepAccess(bid, 'params.zid')) {
176
+ impObject.tagid = bid.params.zid;
177
+ }
178
+
179
+ if (deepAccess(bid, 'ortb2Imp.ext.data') && isPlainObject(bid.ortb2Imp.ext.data)) {
180
+ impObject.ext.data = bid.ortb2Imp.ext.data;
181
+ };
182
+
183
+ if (deepAccess(bid, 'ortb2Imp.instl') && isNumber(bid.ortb2Imp.instl) && (bid.ortb2Imp.instl === 1)) {
184
+ impObject.instl = bid.ortb2Imp.instl;
185
+ };
186
+
187
+ openRtbObject.imp.push(impObject);
188
+ };
189
+ };
190
+
191
+ function appendFirstPartyData(outBoundBidRequest, bid) {
192
+ const ortb2Object = bid.ortb2;
193
+ const siteObject = deepAccess(ortb2Object, 'site') || undefined;
194
+ const siteContentObject = deepAccess(siteObject, 'content') || undefined;
195
+ const userObject = deepAccess(ortb2Object, 'user') || undefined;
196
+
197
+ if (siteObject && isPlainObject(siteObject)) {
198
+ const allowedSiteStringKeys = ['name', 'domain', 'page', 'ref', 'keywords'];
199
+ const allowedSiteArrayKeys = ['cat', 'sectioncat', 'pagecat'];
200
+ const allowedSiteObjectKeys = ['ext'];
201
+ outBoundBidRequest.site = validateAppendObject(isStr, allowedSiteStringKeys, siteObject, outBoundBidRequest.site);
202
+ outBoundBidRequest.site = validateAppendObject(isArray, allowedSiteArrayKeys, siteObject, outBoundBidRequest.site);
203
+ outBoundBidRequest.site = validateAppendObject(isPlainObject, allowedSiteObjectKeys, siteObject, outBoundBidRequest.site);
204
+ };
205
+
206
+ if (siteContentObject && isPlainObject(siteContentObject)) {
207
+ const allowedContentStringKeys = ['id', 'title', 'language'];
208
+ const allowedContentArrayKeys = ['cat'];
209
+ outBoundBidRequest.site.content = validateAppendObject(isStr, allowedContentStringKeys, siteContentObject, outBoundBidRequest.site.content);
210
+ outBoundBidRequest.site.content = validateAppendObject(isArray, allowedContentArrayKeys, siteContentObject, outBoundBidRequest.site.content);
211
+ };
212
+
213
+ if (userObject && isPlainObject(userObject)) {
214
+ const allowedUserStrings = ['id', 'buyeruid', 'gender', 'keywords', 'customdata'];
215
+ const allowedUserObjects = ['ext'];
216
+ outBoundBidRequest.user = validateAppendObject(isStr, allowedUserStrings, userObject, outBoundBidRequest.user);
217
+ outBoundBidRequest.user.ext = validateAppendObject(isPlainObject, allowedUserObjects, userObject, outBoundBidRequest.user.ext);
218
+ };
219
+
220
+ return outBoundBidRequest;
221
+ };
222
+
223
+ function generateServerRequest({payload, requestOptions, bidderRequest}) {
224
+ return {
225
+ url: (config.getConfig('adtrgtme.endpoint') || ENDPOINT) + (payload.site.id || ''),
226
+ method: 'POST',
227
+ data: payload,
228
+ options: requestOptions,
229
+ bidderRequest: bidderRequest
230
+ };
231
+ };
232
+
233
+ export const spec = {
234
+ code: BIDDER_CODE,
235
+ aliases: [],
236
+ supportedMediaTypes: [BANNER],
237
+
238
+ isBidRequestValid: function(bid) {
239
+ const params = bid.params;
240
+ if (isPlainObject(params) && isNumber(params.sid)) {
241
+ return true;
242
+ } else {
243
+ logWarn('Adtrgtme bidder params missing or incorrect');
244
+ return false;
245
+ }
246
+ },
247
+
248
+ buildRequests: function(validBidRequests, bidderRequest) {
249
+ if (isEmpty(validBidRequests) || isEmpty(bidderRequest)) {
250
+ logWarn('Adtrgtme Adapter: buildRequests called with empty request');
251
+ return undefined;
252
+ };
253
+
254
+ const requestOptions = {
255
+ contentType: 'application/json',
256
+ customHeaders: {
257
+ 'x-openrtb-version': '2.5'
258
+ }
259
+ };
260
+
261
+ requestOptions.withCredentials = hasPurpose1Consent(bidderRequest.gdprConsent);
262
+
263
+ if (config.getConfig('adtrgtme.singleRequestMode') === true) {
264
+ const payload = generateOpenRtbObject(bidderRequest, validBidRequests[0]);
265
+ validBidRequests.forEach(bid => {
266
+ appendImpObject(bid, payload);
267
+ });
268
+
269
+ return generateServerRequest({payload, requestOptions, bidderRequest});
270
+ }
271
+
272
+ return validBidRequests.map(bid => {
273
+ const payloadClone = generateOpenRtbObject(bidderRequest, bid);
274
+ appendImpObject(bid, payloadClone);
275
+
276
+ return generateServerRequest({payload: payloadClone, requestOptions, bidderRequest: bid});
277
+ });
278
+ },
279
+
280
+ interpretResponse: function(serverResponse, { data, bidderRequest }) {
281
+ const response = [];
282
+ if (!serverResponse.body || !Array.isArray(serverResponse.body.seatbid)) {
283
+ return response;
284
+ }
285
+
286
+ let seatbids = serverResponse.body.seatbid;
287
+ seatbids.forEach(seatbid => {
288
+ let bid;
289
+
290
+ try {
291
+ bid = seatbid.bid[0];
292
+ } catch (e) {
293
+ return response;
294
+ }
295
+
296
+ let cpm = bid.price;
297
+
298
+ let bidResponse = {
299
+ adId: deepAccess(bid, 'adId') ? bid.adId : bid.impid || bid.crid,
300
+ ad: bid.adm,
301
+ adUnitCode: bidderRequest.adUnitCode,
302
+ requestId: bid.impid,
303
+ cpm: cpm,
304
+ width: bid.w,
305
+ height: bid.h,
306
+ creativeId: bid.crid || 0,
307
+ currency: bid.cur || DEFAULT_CURRENCY,
308
+ dealId: bid.dealid ? bid.dealid : null,
309
+ netRevenue: true,
310
+ ttl: getTtl(bidderRequest),
311
+ mediaType: BANNER,
312
+ meta: {
313
+ advertiserDomains: bid.adomain,
314
+ mediaType: BANNER,
315
+ }
316
+ };
317
+
318
+ response.push(bidResponse);
319
+ });
320
+
321
+ return response;
322
+ },
323
+
324
+ getUserSyncs: function(syncOptions, serverResponses, gdprConsent = {}, uspConsent = '') {
325
+ const bidResponse = !isEmpty(serverResponses) && serverResponses[0].body;
326
+ if (bidResponse && bidResponse.ext && bidResponse.ext.pixels) {
327
+ return extractUserSyncUrls(syncOptions, bidResponse.ext.pixels);
328
+ }
329
+ return [];
330
+ }
331
+ };
332
+
333
+ registerBidder(spec);
@@ -0,0 +1,69 @@
1
+ # Overview
2
+
3
+ **Module Name**: adtrgtme Bidder Adapter
4
+ **Module Type**: Bidder Adapter
5
+ **Maintainer**: info@adtarget.me
6
+
7
+ # Description
8
+ The Adtrgtme Bid Adapter is an OpenRTB interface that support display demand from Adtarget
9
+
10
+ # Supported Features:
11
+ * Media Types: Banner
12
+ * Multi-format adUnits
13
+ * Price floors module
14
+ * Advertiser domains
15
+
16
+ # Mandatory Bidder Parameters
17
+ The minimal requirements for the 'adtrgtme' bid adapter to generate an outbound bid-request to our Adtrgtme are:
18
+ 1. At least 1 banner adUnit
19
+ 2. Your Adtrgtme site id **bidder.params**.**sid**
20
+
21
+ ## Example:
22
+ ```javascript
23
+ const adUnits = [{
24
+ code: 'your-placement',
25
+ mediaTypes: {
26
+ banner: {
27
+ sizes: [[300, 250]]
28
+ }
29
+ },
30
+ bids: [
31
+ {
32
+ bidder: 'adtrgtme',
33
+ params: {
34
+ sid: 1220291391, // Site/App ID provided from SSP
35
+ }
36
+ }
37
+ ]
38
+ }];
39
+ ```
40
+
41
+ # Optional: Price floors module & bidfloor
42
+ The adtargerme adapter supports the Prebid.org Price Floors module and will use it to define the outbound bidfloor and currency.
43
+ By default the adapter will always check the existance of Module price floor.
44
+ If a module price floor does not exist you can set a custom bid floor for your impression using "params.bidOverride.imp.bidfloor".
45
+
46
+ ```javascript
47
+ const adUnits = [{
48
+ code: 'your-placement',
49
+ mediaTypes: {
50
+ banner: {
51
+ sizes: [
52
+ [300, 250]
53
+ ]
54
+ }
55
+ },
56
+ bids: [{
57
+ bidder: 'adtrgtme',
58
+ params: {
59
+ sid: 1220291391,
60
+ bidOverride :{
61
+ imp: {
62
+ bidfloor: 5.00 // bidOverride bidfloor
63
+ }
64
+ }
65
+ }
66
+ }
67
+ }]
68
+ }];
69
+ ```
@@ -45,7 +45,7 @@ const VIDEO_CUSTOM_PARAMS = {
45
45
  'placement': DATA_TYPES.NUMBER,
46
46
  'minbitrate': DATA_TYPES.NUMBER,
47
47
  'maxbitrate': DATA_TYPES.NUMBER
48
- }
48
+ };
49
49
 
50
50
  const NATIVE_ASSETS = {
51
51
  'TITLE': {ID: 1, KEY: 'title', TYPE: 0},
@@ -1,6 +1,6 @@
1
1
  import { parseSizesInput, uniques, buildUrl, logError } from '../src/utils.js';
2
2
  import { ajax } from '../src/ajax.js';
3
- import adapter from '../src/AnalyticsAdapter.js';
3
+ import adapter from '../libraries/analyticsAdapter/AnalyticsAdapter.js';
4
4
  import adapterManager from '../src/adapterManager.js';
5
5
  import CONSTANTS from '../src/constants.json';
6
6
 
@@ -1,6 +1,6 @@
1
1
  import {deepClone, logError, logInfo} from '../src/utils.js';
2
2
  import {ajax} from '../src/ajax.js';
3
- import adapter from '../src/AnalyticsAdapter.js';
3
+ import adapter from '../libraries/analyticsAdapter/AnalyticsAdapter.js';
4
4
  import adapterManager from '../src/adapterManager.js';
5
5
  import CONSTANTS from '../src/constants.json';
6
6
  import {includes} from '../src/polyfill.js';
@@ -263,7 +263,7 @@ adxpremiumAnalyticsAdapter.enableAnalytics = function (config) {
263
263
  }
264
264
 
265
265
  adxpremiumAnalyticsAdapter.originEnableAnalytics(config); // call the base class function
266
- }
266
+ };
267
267
 
268
268
  adapterManager.registerAnalyticsAdapter({
269
269
  adapter: adxpremiumAnalyticsAdapter,
@@ -118,6 +118,10 @@ export const spec = {
118
118
  payload.uspConsent = bidderRequest.uspConsent;
119
119
  }
120
120
 
121
+ if (bidderRequest.ortb2) {
122
+ payload.ortb2 = bidderRequest.ortb2;
123
+ }
124
+
121
125
  if (deepAccess(bidderRequest, 'userId')) {
122
126
  payload.userId = createEidsArray(bidderRequest.userId);
123
127
  }
@@ -221,16 +225,21 @@ function createEndpoint(bidRequests, bidderRequest, hasVideo) {
221
225
  /* Create endpoint query string */
222
226
  function createEndpointQS(bidderRequest) {
223
227
  const qs = {};
224
-
225
228
  if (bidderRequest) {
226
229
  const ref = bidderRequest.refererInfo;
227
230
  if (ref?.location) {
228
- // TODO: is 'location' the right value here?
231
+ // RefererUrl will be removed in a future version.
229
232
  qs.RefererUrl = encodeURIComponent(ref.location);
230
233
  if (ref.numIframes > 0) {
231
234
  qs.SafeFrame = true;
232
235
  }
233
236
  }
237
+
238
+ const siteInfo = bidderRequest.ortb2?.site;
239
+ if (siteInfo) {
240
+ qs.PageUrl = encodeURIComponent(siteInfo.page);
241
+ qs.PageReferrer = encodeURIComponent(siteInfo.ref || ref?.location);
242
+ }
234
243
  }
235
244
 
236
245
  const can = bidderRequest?.refererInfo?.canonicalUrl;
@@ -238,11 +247,6 @@ function createEndpointQS(bidderRequest) {
238
247
  qs.CanonicalUrl = encodeURIComponent(can);
239
248
  }
240
249
 
241
- const domain = bidderRequest?.refererInfo?.domain;
242
- if (domain) {
243
- qs.PublisherDomain = encodeURIComponent(domain);
244
- }
245
-
246
250
  return qs;
247
251
  }
248
252
 
@@ -440,7 +444,7 @@ function getNativeAssets(response, nativeConfig) {
440
444
  /* Create bid from response */
441
445
  function createBid(response, bidRequests) {
442
446
  if (!response || (!response.Ad && !response.Native && !response.Vast)) {
443
- return
447
+ return;
444
448
  }
445
449
 
446
450
  const request = bidRequests && bidRequests[response.BidID];
@@ -202,7 +202,7 @@ export const dapUtils = {
202
202
  dapUtils.dapTokenize(configAsync, config.identity, onDone,
203
203
  function(token, status, xhr, onDone) {
204
204
  item.expires_at = now + DAP_DEFAULT_TOKEN_TTL;
205
- let exp = dapUtils.dapExtractExpiryFromToken(token)
205
+ let exp = dapUtils.dapExtractExpiryFromToken(token);
206
206
  if (typeof exp == 'number') {
207
207
  item.expires_at = exp - 10;
208
208
  }
@@ -303,7 +303,7 @@ export const dapUtils = {
303
303
  dapUtils.dapEncryptedMembership(configAsync, token, onDone,
304
304
  function(encToken, status, xhr, onDone) {
305
305
  item.expires_at = now + DAP_DEFAULT_TOKEN_TTL;
306
- let exp = dapUtils.dapExtractExpiryFromToken(encToken)
306
+ let exp = dapUtils.dapExtractExpiryFromToken(encToken);
307
307
  if (typeof exp == 'number') {
308
308
  item.expires_at = exp - 10;
309
309
  }