prebid.js 7.43.0 → 7.45.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 (503) hide show
  1. package/dist/33acrossBidAdapter.js +1 -1
  2. package/dist/33acrossIdSystem.js +1 -1
  3. package/dist/acuityAdsBidAdapter.js +1 -1
  4. package/dist/adagioBidAdapter.js +1 -1
  5. package/dist/adbookpspBidAdapter.js +1 -1
  6. package/dist/adgenerationBidAdapter.js +1 -1
  7. package/dist/adkernelAdnAnalyticsAdapter.js +1 -1
  8. package/dist/admixerIdSystem.js +1 -1
  9. package/dist/adnuntiusBidAdapter.js +1 -1
  10. package/dist/adqueryBidAdapter.js +1 -1
  11. package/dist/adqueryIdSystem.js +1 -1
  12. package/dist/adrelevantisBidAdapter.js +1 -1
  13. package/dist/adrinoBidAdapter.js +1 -1
  14. package/dist/adriverIdSystem.js +1 -1
  15. package/dist/adsinteractiveBidAdapter.js +1 -0
  16. package/dist/adtrgtmeBidAdapter.js +1 -1
  17. package/dist/adxcgBidAdapter.js +1 -1
  18. package/dist/adyoulikeBidAdapter.js +1 -1
  19. package/dist/aidemBidAdapter.js +1 -1
  20. package/dist/airgridRtdProvider.js +1 -1
  21. package/dist/ajaBidAdapter.js +1 -1
  22. package/dist/akamaiDapRtdProvider.js +1 -1
  23. package/dist/amxBidAdapter.js +1 -1
  24. package/dist/amxIdSystem.js +1 -1
  25. package/dist/appierAnalyticsAdapter.js +1 -1
  26. package/dist/appnexusBidAdapter.js +1 -1
  27. package/dist/appushBidAdapter.js +1 -1
  28. package/dist/apstreamBidAdapter.js +1 -1
  29. package/dist/asoBidAdapter.js +1 -1
  30. package/dist/atsAnalyticsAdapter.js +1 -1
  31. package/dist/audiencerunBidAdapter.js +1 -1
  32. package/dist/axonixBidAdapter.js +1 -1
  33. package/dist/bedigitechBidAdapter.js +1 -0
  34. package/dist/beyondmediaBidAdapter.js +1 -1
  35. package/dist/bidglassBidAdapter.js +1 -1
  36. package/dist/big-richmediaBidAdapter.js +1 -1
  37. package/dist/bluebillywigBidAdapter.js +1 -1
  38. package/dist/blueconicRtdProvider.js +1 -1
  39. package/dist/braveBidAdapter.js +1 -1
  40. package/dist/bridgewellBidAdapter.js +1 -1
  41. package/dist/brightMountainMediaBidAdapter.js +1 -1
  42. package/dist/brightcomBidAdapter.js +1 -1
  43. package/dist/brightcomSSPBidAdapter.js +1 -1
  44. package/dist/browsiRtdProvider.js +1 -1
  45. package/dist/byDataAnalyticsAdapter.js +1 -1
  46. package/dist/carodaBidAdapter.js +1 -1
  47. package/dist/chtnwBidAdapter.js +1 -1
  48. package/dist/coinzillaBidAdapter.js +1 -1
  49. package/dist/compassBidAdapter.js +1 -1
  50. package/dist/concertBidAdapter.js +1 -1
  51. package/dist/connectIdSystem.js +1 -1
  52. package/dist/connectadBidAdapter.js +1 -1
  53. package/dist/consumableBidAdapter.js +1 -1
  54. package/dist/contentexchangeBidAdapter.js +1 -1
  55. package/dist/conversantAnalyticsAdapter.js +1 -1
  56. package/dist/conversantBidAdapter.js +1 -1
  57. package/dist/craftBidAdapter.js +1 -1
  58. package/dist/criteoBidAdapter.js +1 -1
  59. package/dist/criteoIdSystem.js +1 -1
  60. package/dist/cwireBidAdapter.js +1 -1
  61. package/dist/czechAdIdSystem.js +1 -1
  62. package/dist/dacIdSystem.js +1 -1
  63. package/dist/deepintentDpesIdSystem.js +1 -1
  64. package/dist/dependencies.json +15 -0
  65. package/dist/discoveryBidAdapter.js +1 -1
  66. package/dist/domainOverrideToRootDomain.js +1 -0
  67. package/dist/dspxBidAdapter.js +1 -1
  68. package/dist/eplanningBidAdapter.js +1 -1
  69. package/dist/feedadBidAdapter.js +1 -1
  70. package/dist/finativeBidAdapter.js +1 -1
  71. package/dist/fintezaAnalyticsAdapter.js +1 -1
  72. package/dist/fledgeForGpt.js +1 -1
  73. package/dist/freewheel-sspBidAdapter.js +1 -1
  74. package/dist/ftrackIdSystem.js +1 -1
  75. package/dist/gdprEnforcement.js +1 -1
  76. package/dist/glimpseBidAdapter.js +1 -1
  77. package/dist/globalsunBidAdapter.js +1 -1
  78. package/dist/gmosspBidAdapter.js +1 -1
  79. package/dist/gnetBidAdapter.js +1 -1
  80. package/dist/goldbachBidAdapter.js +1 -1
  81. package/dist/gravitoIdSystem.js +1 -1
  82. package/dist/greenbidsAnalyticsAdapter.js +1 -0
  83. package/dist/gridBidAdapter.js +1 -1
  84. package/dist/gridNMBidAdapter.js +1 -1
  85. package/dist/growthCodeAnalyticsAdapter.js +1 -1
  86. package/dist/growthCodeIdSystem.js +1 -1
  87. package/dist/gumgumBidAdapter.js +1 -1
  88. package/dist/h12mediaBidAdapter.js +1 -1
  89. package/dist/hadronAnalyticsAdapter.js +1 -1
  90. package/dist/hadronIdSystem.js +1 -1
  91. package/dist/hadronRtdProvider.js +1 -1
  92. package/dist/id5IdSystem.js +1 -1
  93. package/dist/idWardRtdProvider.js +1 -1
  94. package/dist/identityLinkIdSystem.js +1 -1
  95. package/dist/idxIdSystem.js +1 -1
  96. package/dist/imRtdProvider.js +1 -1
  97. package/dist/impactifyBidAdapter.js +1 -1
  98. package/dist/improvedigitalBidAdapter.js +1 -1
  99. package/dist/imuIdSystem.js +1 -1
  100. package/dist/inmarBidAdapter.js +1 -1
  101. package/dist/insticatorBidAdapter.js +1 -1
  102. package/dist/intentIqIdSystem.js +1 -1
  103. package/dist/invibesBidAdapter.js +1 -1
  104. package/dist/iqzoneBidAdapter.js +1 -1
  105. package/dist/ivsBidAdapter.js +1 -0
  106. package/dist/ixBidAdapter.js +1 -1
  107. package/dist/jixieBidAdapter.js +1 -1
  108. package/dist/justpremiumBidAdapter.js +1 -1
  109. package/dist/jwplayerVideoProvider.js +1 -1
  110. package/dist/kargoBidAdapter.js +1 -1
  111. package/dist/koblerBidAdapter.js +1 -1
  112. package/dist/konduitAnalyticsAdapter.js +1 -1
  113. package/dist/kueezBidAdapter.js +1 -1
  114. package/dist/kueezRtbBidAdapter.js +1 -1
  115. package/dist/kulturemediaBidAdapter.js +1 -1
  116. package/dist/lassoBidAdapter.js +1 -1
  117. package/dist/lifestreetBidAdapter.js +1 -1
  118. package/dist/liveIntentIdSystem.js +1 -1
  119. package/dist/liveyieldAnalyticsAdapter.js +1 -1
  120. package/dist/logicadBidAdapter.js +1 -1
  121. package/dist/loglyliftBidAdapter.js +1 -1
  122. package/dist/lotamePanoramaIdSystem.js +1 -1
  123. package/dist/luponmediaBidAdapter.js +1 -1
  124. package/dist/magniteAnalyticsAdapter.js +1 -1
  125. package/dist/malltvAnalyticsAdapter.js +1 -1
  126. package/dist/marsmediaBidAdapter.js +1 -1
  127. package/dist/mathildeadsBidAdapter.js +1 -1
  128. package/dist/mediafuseBidAdapter.js +1 -1
  129. package/dist/mediagoBidAdapter.js +1 -1
  130. package/dist/mediakeysBidAdapter.js +1 -1
  131. package/dist/medianetBidAdapter.js +1 -1
  132. package/dist/mediasquareBidAdapter.js +1 -1
  133. package/dist/merkleIdSystem.js +1 -1
  134. package/dist/mgidBidAdapter.js +1 -1
  135. package/dist/mgidRtdProvider.js +1 -1
  136. package/dist/minutemediaBidAdapter.js +1 -1
  137. package/dist/minutemediaplusBidAdapter.js +1 -1
  138. package/dist/mwOpenLinkIdSystem.js +1 -1
  139. package/dist/naveggIdSystem.js +1 -1
  140. package/dist/nexx360BidAdapter.js +1 -1
  141. package/dist/nobidBidAdapter.js +1 -1
  142. package/dist/not-for-prod/prebid.js +232 -227
  143. package/dist/novatiqIdSystem.js +1 -1
  144. package/dist/oguryBidAdapter.js +1 -1
  145. package/dist/onetagBidAdapter.js +1 -1
  146. package/dist/onomagicBidAdapter.js +1 -1
  147. package/dist/ooloAnalyticsAdapter.js +1 -1
  148. package/dist/openxBidAdapter.js +1 -1
  149. package/dist/openxOrtbBidAdapter.js +1 -1
  150. package/dist/operaadsBidAdapter.js +1 -1
  151. package/dist/optidigitalBidAdapter.js +1 -1
  152. package/dist/ortbConverter.js +1 -1
  153. package/dist/outbrainBidAdapter.js +1 -1
  154. package/dist/parrableIdSystem.js +1 -1
  155. package/dist/permutiveRtdProvider.js +1 -1
  156. package/dist/pixfutureBidAdapter.js +1 -1
  157. package/dist/prebid-core.js +1 -1
  158. package/dist/prebidServerBidAdapter.js +1 -1
  159. package/dist/prebidmanagerAnalyticsAdapter.js +1 -1
  160. package/dist/pubCommonId.js +1 -1
  161. package/dist/publinkIdSystem.js +1 -1
  162. package/dist/pubmaticAnalyticsAdapter.js +1 -1
  163. package/dist/pubmaticBidAdapter.js +1 -1
  164. package/dist/pubwiseAnalyticsAdapter.js +1 -1
  165. package/dist/pubxBidAdapter.js +1 -1
  166. package/dist/pxyzBidAdapter.js +1 -1
  167. package/dist/quantcastBidAdapter.js +1 -1
  168. package/dist/quantcastIdSystem.js +1 -1
  169. package/dist/readpeakBidAdapter.js +1 -1
  170. package/dist/realvuAnalyticsAdapter.js +1 -1
  171. package/dist/relaidoBidAdapter.js +1 -1
  172. package/dist/rhythmoneBidAdapter.js +1 -1
  173. package/dist/riseBidAdapter.js +1 -1
  174. package/dist/roxotAnalyticsAdapter.js +1 -1
  175. package/dist/rtbhouseBidAdapter.js +1 -1
  176. package/dist/rtdModule.js +1 -1
  177. package/dist/rubiconAnalyticsAdapter.js +1 -1
  178. package/dist/rubiconBidAdapter.js +1 -1
  179. package/dist/seedingAllianceBidAdapter.js +1 -1
  180. package/dist/seedtagBidAdapter.js +1 -1
  181. package/dist/sharedIdSystem.js +1 -1
  182. package/dist/sharethroughAnalyticsAdapter.js +1 -1
  183. package/dist/sharethroughBidAdapter.js +1 -1
  184. package/dist/shinezBidAdapter.js +1 -1
  185. package/dist/sigmoidAnalyticsAdapter.js +1 -1
  186. package/dist/smaatoBidAdapter.js +1 -1
  187. package/dist/smartadserverBidAdapter.js +1 -1
  188. package/dist/smarthubBidAdapter.js +1 -1
  189. package/dist/smartxBidAdapter.js +1 -1
  190. package/dist/smilewantedBidAdapter.js +1 -1
  191. package/dist/sonobiBidAdapter.js +1 -1
  192. package/dist/sovrnAnalyticsAdapter.js +1 -1
  193. package/dist/sovrnBidAdapter.js +1 -1
  194. package/dist/sspBCBidAdapter.js +1 -1
  195. package/dist/staqAnalyticsAdapter.js +1 -1
  196. package/dist/stroeerCoreBidAdapter.js +1 -1
  197. package/dist/stvBidAdapter.js +1 -1
  198. package/dist/sublimeBidAdapter.js +1 -1
  199. package/dist/synacormediaBidAdapter.js +1 -1
  200. package/dist/taboolaBidAdapter.js +1 -1
  201. package/dist/targetVideoBidAdapter.js +1 -1
  202. package/dist/teadsBidAdapter.js +1 -1
  203. package/dist/teadsIdSystem.js +1 -1
  204. package/dist/trionBidAdapter.js +1 -1
  205. package/dist/tripleliftBidAdapter.js +1 -1
  206. package/dist/truereachBidAdapter.js +1 -1
  207. package/dist/trustpidSystem.js +1 -1
  208. package/dist/ttdBidAdapter.js +1 -1
  209. package/dist/ucfunnelAnalyticsAdapter.js +1 -1
  210. package/dist/uid2IdSystem.js +1 -1
  211. package/dist/underdogmediaBidAdapter.js +1 -1
  212. package/dist/undertoneBidAdapter.js +1 -1
  213. package/dist/userId.js +1 -1
  214. package/dist/validationFpdModule.js +1 -1
  215. package/dist/vidazooBidAdapter.js +1 -1
  216. package/dist/videobyteBidAdapter.js +1 -1
  217. package/dist/videoheroesBidAdapter.js +1 -1
  218. package/dist/vidoomyBidAdapter.js +1 -1
  219. package/dist/visiblemeasuresBidAdapter.js +1 -1
  220. package/dist/visxBidAdapter.js +1 -1
  221. package/dist/vrtcalBidAdapter.js +1 -1
  222. package/dist/vuukleBidAdapter.js +1 -1
  223. package/dist/weboramaRtdProvider.js +1 -1
  224. package/dist/widespaceBidAdapter.js +1 -1
  225. package/dist/winrBidAdapter.js +1 -1
  226. package/dist/yahoosspBidAdapter.js +1 -1
  227. package/dist/yieldmoBidAdapter.js +1 -1
  228. package/dist/yieldoneAnalyticsAdapter.js +1 -1
  229. package/dist/yieldoneBidAdapter.js +1 -1
  230. package/dist/yuktamediaAnalyticsAdapter.js +1 -1
  231. package/dist/zeotapIdPlusIdSystem.js +1 -1
  232. package/dist/zeta_global_sspBidAdapter.js +1 -1
  233. package/libraries/domainOverrideToRootDomain/index.js +39 -0
  234. package/libraries/ortbConverter/converter.js +3 -2
  235. package/modules/33acrossIdSystem.js +5 -2
  236. package/modules/acuityAdsBidAdapter.js +1 -1
  237. package/modules/adagioBidAdapter.js +3 -4
  238. package/modules/adkernelAdnAnalyticsAdapter.js +4 -2
  239. package/modules/admixerIdSystem.js +4 -2
  240. package/modules/adnuntiusBidAdapter.js +1 -1
  241. package/modules/adqueryBidAdapter.js +1 -1
  242. package/modules/adqueryIdSystem.js +2 -1
  243. package/modules/adrinoBidAdapter.js +24 -16
  244. package/modules/adriverIdSystem.js +3 -2
  245. package/modules/adsinteractiveBidAdapter.js +144 -0
  246. package/modules/adsinteractiveBidAdapter.md +31 -0
  247. package/modules/adyoulikeBidAdapter.js +2 -3
  248. package/modules/aidemBidAdapter.js +5 -0
  249. package/modules/airgridRtdProvider.js +4 -2
  250. package/modules/ajaBidAdapter.js +38 -16
  251. package/modules/akamaiDapRtdProvider.js +2 -1
  252. package/modules/amxBidAdapter.js +12 -10
  253. package/modules/amxIdSystem.js +23 -20
  254. package/modules/amxIdSystem.md +7 -7
  255. package/modules/appnexusBidAdapter.js +8 -8
  256. package/modules/appushBidAdapter.js +1 -1
  257. package/modules/apstreamBidAdapter.js +1 -1
  258. package/modules/atsAnalyticsAdapter.js +4 -2
  259. package/modules/audiencerunBidAdapter.js +9 -10
  260. package/modules/bedigitechBidAdapter.js +67 -0
  261. package/modules/bedigitechBidAdapter.md +32 -0
  262. package/modules/beyondmediaBidAdapter.js +1 -1
  263. package/modules/bluebillywigBidAdapter.js +2 -4
  264. package/modules/blueconicRtdProvider.js +2 -1
  265. package/modules/braveBidAdapter.js +1 -1
  266. package/modules/brightcomBidAdapter.js +1 -2
  267. package/modules/brightcomSSPBidAdapter.js +1 -2
  268. package/modules/browsiRtdProvider.js +4 -2
  269. package/modules/byDataAnalyticsAdapter.js +6 -3
  270. package/modules/coinzillaBidAdapter.js +1 -2
  271. package/modules/compassBidAdapter.js +1 -1
  272. package/modules/concertBidAdapter.js +14 -7
  273. package/modules/connectIdSystem.js +96 -21
  274. package/modules/connectIdSystem.md +6 -5
  275. package/modules/connectadBidAdapter.js +2 -4
  276. package/modules/contentexchangeBidAdapter.js +1 -1
  277. package/modules/craftBidAdapter.js +29 -24
  278. package/modules/criteoBidAdapter.js +4 -2
  279. package/modules/criteoIdSystem.js +6 -2
  280. package/modules/czechAdIdSystem.js +3 -2
  281. package/modules/dacIdSystem.js +4 -3
  282. package/modules/deepintentDpesIdSystem.js +3 -2
  283. package/modules/discoveryBidAdapter.js +1 -1
  284. package/modules/dspxBidAdapter.js +223 -15
  285. package/modules/fintezaAnalyticsAdapter.js +5 -3
  286. package/modules/fledgeForGpt.js +54 -6
  287. package/modules/freewheel-sspBidAdapter.js +8 -0
  288. package/modules/ftrackIdSystem.js +6 -6
  289. package/modules/gdprEnforcement.js +56 -68
  290. package/modules/glimpseBidAdapter.js +2 -6
  291. package/modules/globalsunBidAdapter.js +1 -1
  292. package/modules/gnetBidAdapter.js +1 -2
  293. package/modules/gravitoIdSystem.js +5 -3
  294. package/modules/greenbidsAnalyticsAdapter.js +181 -0
  295. package/modules/greenbidsAnalyticsAdapter.md +23 -0
  296. package/modules/gridBidAdapter.js +14 -8
  297. package/modules/gridNMBidAdapter.js +1 -1
  298. package/modules/growthCodeAnalyticsAdapter.js +3 -2
  299. package/modules/growthCodeIdSystem.js +21 -17
  300. package/modules/gumgumBidAdapter.js +8 -18
  301. package/modules/hadronAnalyticsAdapter.js +5 -3
  302. package/modules/hadronIdSystem.js +3 -1
  303. package/modules/hadronRtdProvider.js +4 -2
  304. package/modules/id5IdSystem.js +4 -2
  305. package/modules/idWardRtdProvider.js +2 -1
  306. package/modules/identityLinkIdSystem.js +5 -2
  307. package/modules/idxIdSystem.js +3 -2
  308. package/modules/imRtdProvider.js +3 -1
  309. package/modules/impactifyBidAdapter.js +2 -4
  310. package/modules/imuIdSystem.js +6 -3
  311. package/modules/insticatorBidAdapter.js +1 -1
  312. package/modules/intentIqIdSystem.js +3 -2
  313. package/modules/invibesBidAdapter.js +1 -1
  314. package/modules/iqzoneBidAdapter.js +1 -1
  315. package/modules/ivsBidAdapter.js +85 -0
  316. package/modules/ivsBidAdapter.md +34 -0
  317. package/modules/ixBidAdapter.js +43 -106
  318. package/modules/jixieBidAdapter.js +3 -6
  319. package/modules/jwplayerVideoProvider.js +25 -32
  320. package/modules/kargoBidAdapter.js +1 -1
  321. package/modules/koblerBidAdapter.js +1 -2
  322. package/modules/kueezBidAdapter.js +1 -1
  323. package/modules/kueezRtbBidAdapter.js +1 -1
  324. package/modules/liveIntentIdSystem.js +11 -2
  325. package/modules/lotamePanoramaIdSystem.js +3 -2
  326. package/modules/luponmediaBidAdapter.js +1 -1
  327. package/modules/magniteAnalyticsAdapter.js +101 -9
  328. package/modules/mathildeadsBidAdapter.js +1 -1
  329. package/modules/mediafuseBidAdapter.js +1 -1
  330. package/modules/mediagoBidAdapter.js +1 -1
  331. package/modules/mediakeysBidAdapter.js +2 -3
  332. package/modules/medianetBidAdapter.js +1 -1
  333. package/modules/merkleIdSystem.js +2 -1
  334. package/modules/mgidBidAdapter.js +179 -27
  335. package/modules/mgidRtdProvider.js +3 -1
  336. package/modules/minutemediaBidAdapter.js +1 -1
  337. package/modules/minutemediaplusBidAdapter.js +1 -1
  338. package/modules/mwOpenLinkIdSystem.js +3 -2
  339. package/modules/naveggIdSystem.js +3 -2
  340. package/modules/nexx360BidAdapter.js +0 -1
  341. package/modules/nobidBidAdapter.js +1 -1
  342. package/modules/novatiqIdSystem.js +6 -3
  343. package/modules/oguryBidAdapter.js +3 -2
  344. package/modules/onetagBidAdapter.js +1 -1
  345. package/modules/onomagicBidAdapter.js +1 -2
  346. package/modules/openxBidAdapter.js +192 -563
  347. package/modules/openxBidAdapter.md +22 -20
  348. package/modules/openxOrtbBidAdapter.js +24 -10
  349. package/modules/openxOrtbBidAdapter.md +11 -8
  350. package/modules/operaadsBidAdapter.js +1 -1
  351. package/modules/parrableIdSystem.js +4 -2
  352. package/modules/permutiveRtdProvider.js +2 -1
  353. package/modules/prebidServerBidAdapter/index.js +9 -3
  354. package/modules/prebidServerBidAdapter/ortbConverter.js +12 -2
  355. package/modules/prebidmanagerAnalyticsAdapter.js +3 -2
  356. package/modules/pubCommonId.js +6 -3
  357. package/modules/publinkIdSystem.js +2 -1
  358. package/modules/pubmaticAnalyticsAdapter.js +12 -1
  359. package/modules/pubmaticBidAdapter.js +193 -223
  360. package/modules/pubwiseAnalyticsAdapter.js +5 -3
  361. package/modules/pubxBidAdapter.js +5 -2
  362. package/modules/quantcastBidAdapter.js +1 -1
  363. package/modules/quantcastIdSystem.js +5 -3
  364. package/modules/realvuAnalyticsAdapter.js +6 -3
  365. package/modules/riseBidAdapter.js +1 -1
  366. package/modules/roxotAnalyticsAdapter.js +5 -2
  367. package/modules/rtbhouseBidAdapter.js +5 -3
  368. package/modules/rtdModule/index.js +3 -0
  369. package/modules/rubiconAnalyticsAdapter.js +3 -2
  370. package/modules/rubiconBidAdapter.js +1 -0
  371. package/modules/sharedIdSystem.js +16 -36
  372. package/modules/sharethroughBidAdapter.js +2 -3
  373. package/modules/shinezBidAdapter.js +1 -1
  374. package/modules/sigmoidAnalyticsAdapter.js +4 -2
  375. package/modules/smartadserverBidAdapter.js +2 -3
  376. package/modules/smarthubBidAdapter.js +1 -1
  377. package/modules/sovrnBidAdapter.js +2 -3
  378. package/modules/staqAnalyticsAdapter.js +5 -3
  379. package/modules/stroeerCoreBidAdapter.js +3 -2
  380. package/modules/synacormediaBidAdapter.js +1 -3
  381. package/modules/taboolaBidAdapter.js +4 -2
  382. package/modules/teadsBidAdapter.js +1 -1
  383. package/modules/teadsIdSystem.js +2 -1
  384. package/modules/tripleliftBidAdapter.js +1 -1
  385. package/modules/truereachBidAdapter.js +1 -2
  386. package/modules/trustpidSystem.js +3 -2
  387. package/modules/ttdBidAdapter.js +11 -5
  388. package/modules/uid2IdSystem.js +3 -2
  389. package/modules/undertoneBidAdapter.js +1 -0
  390. package/modules/userId/eids.js +18 -0
  391. package/modules/userId/eids.md +16 -0
  392. package/modules/userId/index.js +5 -2
  393. package/modules/validationFpdModule/index.js +3 -2
  394. package/modules/vidazooBidAdapter.js +14 -5
  395. package/modules/videoheroesBidAdapter.js +1 -1
  396. package/modules/vidoomyBidAdapter.js +51 -2
  397. package/modules/visiblemeasuresBidAdapter.js +1 -1
  398. package/modules/vrtcalBidAdapter.js +1 -1
  399. package/modules/weboramaRtdProvider.js +3 -1
  400. package/modules/yieldmoBidAdapter.js +2 -3
  401. package/modules/yieldoneBidAdapter.js +1 -1
  402. package/modules/yuktamediaAnalyticsAdapter.js +4 -2
  403. package/modules/zeotapIdPlusIdSystem.js +3 -2
  404. package/modules/zeta_global_sspBidAdapter.js +3 -0
  405. package/package.json +1 -1
  406. package/plugins/eslint/validateImports.js +13 -14
  407. package/plugins/pbjsGlobals.js +3 -1
  408. package/src/Renderer.js +2 -1
  409. package/src/activities/modules.js +5 -0
  410. package/src/adapterManager.js +4 -8
  411. package/src/adapters/bidderFactory.js +30 -16
  412. package/src/consentHandler.js +42 -0
  413. package/src/native.js +5 -1
  414. package/src/refererDetection.js +39 -21
  415. package/src/secureCreatives.js +2 -2
  416. package/src/storageManager.js +33 -47
  417. package/src/userSync.js +7 -4
  418. package/test/spec/auctionmanager_spec.js +2 -2
  419. package/test/spec/libraries/domainOverrideToRootDomain/index_spec.js +77 -0
  420. package/test/spec/modules/33acrossIdSystem_spec.js +1 -1
  421. package/test/spec/modules/acuityAdsBidAdapter_spec.js +2 -1
  422. package/test/spec/modules/adagioBidAdapter_spec.js +11 -17
  423. package/test/spec/modules/admixerIdSystem_spec.js +0 -3
  424. package/test/spec/modules/adnuntiusBidAdapter_spec.js +6 -6
  425. package/test/spec/modules/adrinoBidAdapter_spec.js +65 -34
  426. package/test/spec/modules/adsinteractiveBidAdapter_spec.js +207 -0
  427. package/test/spec/modules/adyoulikeBidAdapter_spec.js +13 -11
  428. package/test/spec/modules/aidemBidAdapter_spec.js +72 -8
  429. package/test/spec/modules/amxBidAdapter_spec.js +4 -1
  430. package/test/spec/modules/amxIdSystem_spec.js +13 -26
  431. package/test/spec/modules/appushBidAdapter_spec.js +2 -1
  432. package/test/spec/modules/atsAnalyticsAdapter_spec.js +2 -2
  433. package/test/spec/modules/audiencerunBidAdapter_spec.js +8 -11
  434. package/test/spec/modules/bedigitechBidAdapter_spec.js +145 -0
  435. package/test/spec/modules/beyondmediaBidAdapter_spec.js +2 -1
  436. package/test/spec/modules/bluebillywigBidAdapter_spec.js +1 -3
  437. package/test/spec/modules/compassBidAdapter_spec.js +2 -1
  438. package/test/spec/modules/concertBidAdapter_spec.js +3 -8
  439. package/test/spec/modules/connectIdSystem_spec.js +420 -242
  440. package/test/spec/modules/connectadBidAdapter_spec.js +11 -3
  441. package/test/spec/modules/contentexchangeBidAdapter_spec.js +2 -1
  442. package/test/spec/modules/criteoBidAdapter_spec.js +29 -0
  443. package/test/spec/modules/criteoIdSystem_spec.js +38 -0
  444. package/test/spec/modules/datablocksBidAdapter_spec.js +0 -1
  445. package/test/spec/modules/dspxBidAdapter_spec.js +184 -13
  446. package/test/spec/modules/eids_spec.js +30 -0
  447. package/test/spec/modules/fledge_spec.js +173 -2
  448. package/test/spec/modules/freewheel-sspBidAdapter_spec.js +37 -0
  449. package/test/spec/modules/gdprEnforcement_spec.js +134 -164
  450. package/test/spec/modules/globalsunBidAdapter_spec.js +2 -1
  451. package/test/spec/modules/greenbidsAnalyticsAdapter_spec.js +418 -0
  452. package/test/spec/modules/gridBidAdapter_spec.js +9 -5
  453. package/test/spec/modules/growthCodeIdSystem_spec.js +2 -1
  454. package/test/spec/modules/id5IdSystem_spec.js +41 -4
  455. package/test/spec/modules/identityLinkIdSystem_spec.js +2 -2
  456. package/test/spec/modules/improvedigitalBidAdapter_spec.js +10 -3
  457. package/test/spec/modules/iqzoneBidAdapter_spec.js +2 -1
  458. package/test/spec/modules/ivsBidAdapter_spec.js +197 -0
  459. package/test/spec/modules/ixBidAdapter_spec.js +84 -71
  460. package/test/spec/modules/jixieBidAdapter_spec.js +42 -60
  461. package/test/spec/modules/koblerBidAdapter_spec.js +0 -20
  462. package/test/spec/modules/liveIntentIdSystem_spec.js +10 -0
  463. package/test/spec/modules/luponmediaBidAdapter_spec.js +1 -1
  464. package/test/spec/modules/magniteAnalyticsAdapter_spec.js +129 -1
  465. package/test/spec/modules/mathildeadsBidAdapter_spec.js +2 -1
  466. package/test/spec/modules/mediakeysBidAdapter_spec.js +12 -16
  467. package/test/spec/modules/mgidBidAdapter_spec.js +184 -36
  468. package/test/spec/modules/oguryBidAdapter_spec.js +19 -4
  469. package/test/spec/modules/openxBidAdapter_spec.js +1157 -1936
  470. package/test/spec/modules/openxOrtbBidAdapter_spec.js +108 -50
  471. package/test/spec/modules/prebidServerBidAdapter_spec.js +68 -2
  472. package/test/spec/modules/publinkIdSystem_spec.js +3 -2
  473. package/test/spec/modules/pubmaticBidAdapter_spec.js +67 -10
  474. package/test/spec/modules/pubxBidAdapter_spec.js +10 -2
  475. package/test/spec/modules/realTimeDataModule_spec.js +22 -0
  476. package/test/spec/modules/realvuAnalyticsAdapter_spec.js +0 -1
  477. package/test/spec/modules/relaidoBidAdapter_spec.js +5 -5
  478. package/test/spec/modules/rubiconBidAdapter_spec.js +2 -1
  479. package/test/spec/modules/sharedIdSystem_spec.js +0 -46
  480. package/test/spec/modules/sharethroughBidAdapter_spec.js +99 -22
  481. package/test/spec/modules/smartadserverBidAdapter_spec.js +74 -12
  482. package/test/spec/modules/smarthubBidAdapter_spec.js +2 -1
  483. package/test/spec/modules/sovrnBidAdapter_spec.js +25 -6
  484. package/test/spec/modules/stroeerCoreBidAdapter_spec.js +13 -18
  485. package/test/spec/modules/synacormediaBidAdapter_spec.js +0 -26
  486. package/test/spec/modules/taboolaBidAdapter_spec.js +101 -0
  487. package/test/spec/modules/ttdBidAdapter_spec.js +25 -7
  488. package/test/spec/modules/userId_spec.js +68 -0
  489. package/test/spec/modules/vidazooBidAdapter_spec.js +13 -0
  490. package/test/spec/modules/videoModule/submodules/jwplayerVideoProvider_spec.js +17 -4
  491. package/test/spec/modules/vidoomyBidAdapter_spec.js +68 -0
  492. package/test/spec/modules/visiblemeasuresBidAdapter_spec.js +2 -1
  493. package/test/spec/modules/vrtcalBidAdapter_spec.js +3 -2
  494. package/test/spec/modules/yieldmoBidAdapter_spec.js +18 -2
  495. package/test/spec/modules/zeotapIdPlusIdSystem_spec.js +3 -2
  496. package/test/spec/modules/zeta_global_sspBidAdapter_spec.js +8 -0
  497. package/test/spec/refererDetection_spec.js +56 -1
  498. package/test/spec/renderer_spec.js +1 -2
  499. package/test/spec/unit/core/adapterManager_spec.js +21 -58
  500. package/test/spec/unit/core/bidderFactory_spec.js +28 -10
  501. package/test/spec/unit/core/consentHandler_spec.js +29 -1
  502. package/test/spec/unit/core/storageManager_spec.js +31 -21
  503. package/test/spec/userSync_spec.js +2 -1
@@ -0,0 +1,418 @@
1
+ import {
2
+ greenbidsAnalyticsAdapter, parseBidderCode,
3
+ ANALYTICS_VERSION, BIDDER_STATUS
4
+ } from 'modules/greenbidsAnalyticsAdapter.js';
5
+
6
+ import {expect} from 'chai';
7
+ import sinon from 'sinon';
8
+
9
+ const events = require('src/events');
10
+ const constants = require('src/constants.json');
11
+
12
+ const pbuid = 'pbuid-AA778D8A796AEA7A0843E2BBEB677766';
13
+ const auctionId = 'b0b39610-b941-4659-a87c-de9f62d3e13e';
14
+
15
+ describe('Greenbids Prebid AnalyticsAdapter Testing', function () {
16
+ describe('event tracking and message cache manager', function () {
17
+ beforeEach(function () {
18
+ const configOptions = {
19
+ pbuid: pbuid,
20
+ sampling: 0,
21
+ };
22
+
23
+ greenbidsAnalyticsAdapter.enableAnalytics({
24
+ provider: 'greenbidsAnalytics',
25
+ options: configOptions
26
+ });
27
+ });
28
+
29
+ afterEach(function () {
30
+ greenbidsAnalyticsAdapter.disableAnalytics();
31
+ });
32
+
33
+ describe('#parseBidderCode()', function() {
34
+ it('should get lower case bidder code from bidderCode field value', function() {
35
+ const receivedBids = [
36
+ {
37
+ auctionId: auctionId,
38
+ adUnitCode: 'adunit_1',
39
+ bidder: 'greenbids',
40
+ bidderCode: 'GREENBIDS',
41
+ requestId: 'a1b2c3d4',
42
+ timeToRespond: 72,
43
+ cpm: 0.1,
44
+ currency: 'USD',
45
+ ad: '<html>fake ad1</html>'
46
+ },
47
+ ];
48
+ const result = parseBidderCode(receivedBids[0]);
49
+ expect(result).to.equal('greenbids');
50
+ });
51
+ it('should get lower case bidder code from bidder field value as bidderCode field is missing', function() {
52
+ const receivedBids = [
53
+ {
54
+ auctionId: auctionId,
55
+ adUnitCode: 'adunit_1',
56
+ bidder: 'greenbids',
57
+ bidderCode: '',
58
+ requestId: 'a1b2c3d4',
59
+ timeToRespond: 72,
60
+ cpm: 0.1,
61
+ currency: 'USD',
62
+ ad: '<html>fake ad1</html>'
63
+ },
64
+ ];
65
+ const result = parseBidderCode(receivedBids[0]);
66
+ expect(result).to.equal('greenbids');
67
+ });
68
+ });
69
+
70
+ describe('#getCachedAuction()', function() {
71
+ const existing = {timeoutBids: [{}]};
72
+ greenbidsAnalyticsAdapter.cachedAuctions['test_auction_id'] = existing;
73
+
74
+ it('should get the existing cached object if it exists', function() {
75
+ const result = greenbidsAnalyticsAdapter.getCachedAuction('test_auction_id');
76
+
77
+ expect(result).to.equal(existing);
78
+ });
79
+
80
+ it('should create a new object and store it in the cache on cache miss', function() {
81
+ const result = greenbidsAnalyticsAdapter.getCachedAuction('no_such_id');
82
+
83
+ expect(result).to.deep.include({
84
+ timeoutBids: [],
85
+ });
86
+ });
87
+ });
88
+
89
+ describe('when formatting JSON payload sent to backend', function() {
90
+ const receivedBids = [
91
+ {
92
+ auctionId: auctionId,
93
+ adUnitCode: 'adunit-1',
94
+ bidder: 'greenbids',
95
+ bidderCode: 'greenbids',
96
+ requestId: 'a1b2c3d4',
97
+ timeToRespond: 72,
98
+ cpm: 0.1,
99
+ currency: 'USD',
100
+ ad: '<html>fake ad1</html>'
101
+ },
102
+ {
103
+ auctionId: auctionId,
104
+ adUnitCode: 'adunit-1',
105
+ bidder: 'greenbidsx',
106
+ bidderCode: 'greenbidsx',
107
+ requestId: 'b2c3d4e5',
108
+ timeToRespond: 100,
109
+ cpm: 0.08,
110
+ currency: 'USD',
111
+ ad: '<html>fake ad2</html>'
112
+ },
113
+ {
114
+ auctionId: auctionId,
115
+ adUnitCode: 'adunit-2',
116
+ bidder: 'greenbids',
117
+ bidderCode: 'greenbids',
118
+ requestId: 'c3d4e5f6',
119
+ timeToRespond: 120,
120
+ cpm: 0.09,
121
+ currency: 'USD',
122
+ ad: '<html>fake ad3</html>'
123
+ },
124
+ ];
125
+ const noBids = [
126
+ {
127
+ auctionId: auctionId,
128
+ adUnitCode: 'adunit-2',
129
+ bidder: 'greenbids',
130
+ bidderCode: 'greenbids',
131
+ bidId: 'a1b2c3d4',
132
+ }
133
+ ];
134
+ const timeoutBids = [
135
+ {
136
+ auctionId: auctionId,
137
+ adUnitCode: 'adunit-2',
138
+ bidder: 'greenbids',
139
+ bidderCode: 'greenbids',
140
+ bidId: '00123d4c',
141
+ }
142
+ ];
143
+ function assertHavingRequiredMessageFields(message) {
144
+ expect(message).to.include({
145
+ version: ANALYTICS_VERSION,
146
+ auctionId: auctionId,
147
+ pbuid: pbuid,
148
+ referrer: window.location.href,
149
+ sampling: 0,
150
+ prebid: '$prebid.version$',
151
+ });
152
+ }
153
+
154
+ describe('#createCommonMessage', function() {
155
+ it('should correctly serialize some common fields', function() {
156
+ const message = greenbidsAnalyticsAdapter.createCommonMessage(auctionId);
157
+
158
+ assertHavingRequiredMessageFields(message);
159
+ });
160
+ });
161
+
162
+ describe('#serializeBidResponse', function() {
163
+ it('should handle BID properly with timeout false and hasBid true', function() {
164
+ const result = greenbidsAnalyticsAdapter.serializeBidResponse(receivedBids[0], BIDDER_STATUS.BID);
165
+
166
+ expect(result).to.include({
167
+ bidder: 'greenbids',
168
+ isTimeout: false,
169
+ hasBid: true,
170
+ });
171
+ });
172
+
173
+ it('should handle NO_BID properly and set hasBid to false', function() {
174
+ const result = greenbidsAnalyticsAdapter.serializeBidResponse(noBids[0], BIDDER_STATUS.NO_BID);
175
+
176
+ expect(result).to.include({
177
+ bidder: 'greenbids',
178
+ isTimeout: false,
179
+ hasBid: false,
180
+ });
181
+ });
182
+
183
+ it('should handle TIMEOUT properly and set isTimeout to true', function() {
184
+ const result = greenbidsAnalyticsAdapter.serializeBidResponse(noBids[0], BIDDER_STATUS.TIMEOUT);
185
+
186
+ expect(result).to.include({
187
+ bidder: 'greenbids',
188
+ isTimeout: true,
189
+ hasBid: false,
190
+ });
191
+ });
192
+ });
193
+
194
+ describe('#addBidResponseToMessage()', function() {
195
+ it('should add a bid response in the output message, grouped by adunit_id and bidder', function() {
196
+ const message = {
197
+ adUnits: [
198
+ {
199
+ code: 'adunit-2',
200
+ bidders: []
201
+ }
202
+ ]
203
+ };
204
+ greenbidsAnalyticsAdapter.addBidResponseToMessage(message, noBids[0], BIDDER_STATUS.NO_BID);
205
+
206
+ expect(message.adUnits[0]).to.deep.include({
207
+ code: 'adunit-2',
208
+ bidders: [
209
+ {
210
+ bidder: 'greenbids',
211
+ isTimeout: false,
212
+ hasBid: false,
213
+ }
214
+ ]
215
+ });
216
+ });
217
+ });
218
+
219
+ describe('#createBidMessage()', function() {
220
+ it('should format auction message sent to the backend', function() {
221
+ const args = {
222
+ auctionId: auctionId,
223
+ timestamp: 1234567890,
224
+ timeout: 3000,
225
+ auctionEnd: 1234567990,
226
+ adUnitCodes: ['adunit-1', 'adunit-2'],
227
+ adUnits: [
228
+ {
229
+ code: 'adunit-1',
230
+ mediaTypes: {
231
+ banner: {
232
+ sizes: [[300, 250], [300, 600]]
233
+ },
234
+ }
235
+ },
236
+ {
237
+ code: 'adunit-2',
238
+ mediaTypes: {
239
+ banner: {
240
+ sizes: [[300, 250], [300, 600]]
241
+ },
242
+ video: {
243
+ context: 'instream',
244
+ mimes: ['video/mp4'],
245
+ playerSize: [[640, 480]],
246
+ skip: 1,
247
+ protocols: [1, 2, 3, 4]
248
+ },
249
+ }
250
+ },
251
+ ],
252
+ bidsReceived: receivedBids,
253
+ noBids: noBids
254
+ };
255
+
256
+ const result = greenbidsAnalyticsAdapter.createBidMessage(args, timeoutBids);
257
+
258
+ assertHavingRequiredMessageFields(result);
259
+ expect(result).to.deep.include({
260
+ auctionElapsed: 100,
261
+ adUnits: [
262
+ {
263
+ code: 'adunit-1',
264
+ mediaTypes: {
265
+ banner: {
266
+ sizes: [[300, 250], [300, 600]]
267
+ }
268
+ },
269
+ bidders: [
270
+ {
271
+ bidder: 'greenbids',
272
+ isTimeout: false,
273
+ hasBid: true
274
+ },
275
+ {
276
+ bidder: 'greenbidsx',
277
+ isTimeout: false,
278
+ hasBid: true
279
+ }
280
+ ]
281
+ },
282
+ {
283
+ code: 'adunit-2',
284
+ mediaTypes: {
285
+ banner: {
286
+ sizes: [[300, 250], [300, 600]]
287
+ },
288
+ video: {
289
+ context: 'instream',
290
+ mimes: ['video/mp4'],
291
+ playerSize: [[640, 480]],
292
+ skip: 1,
293
+ protocols: [1, 2, 3, 4]
294
+ }
295
+ },
296
+ bidders: [
297
+ {
298
+ bidder: 'greenbids',
299
+ isTimeout: true,
300
+ hasBid: true
301
+ }
302
+ ]
303
+ }
304
+ ],
305
+ });
306
+ });
307
+ });
308
+
309
+ describe('#handleBidTimeout()', function() {
310
+ it('should cached the timeout bid as BID_TIMEOUT event was triggered', function() {
311
+ greenbidsAnalyticsAdapter.cachedAuctions['test_timeout_auction_id'] = { 'timeoutBids': [] };
312
+ const args = [{
313
+ auctionId: 'test_timeout_auction_id',
314
+ timestamp: 1234567890,
315
+ timeout: 3000,
316
+ auctionEnd: 1234567990,
317
+ bidsReceived: receivedBids,
318
+ noBids: noBids
319
+ }];
320
+
321
+ greenbidsAnalyticsAdapter.handleBidTimeout(args);
322
+ const result = greenbidsAnalyticsAdapter.getCachedAuction('test_timeout_auction_id');
323
+ expect(result).to.deep.include({
324
+ timeoutBids: [{
325
+ auctionId: 'test_timeout_auction_id',
326
+ timestamp: 1234567890,
327
+ timeout: 3000,
328
+ auctionEnd: 1234567990,
329
+ bidsReceived: receivedBids,
330
+ noBids: noBids
331
+ }]
332
+ });
333
+ });
334
+ });
335
+ });
336
+ });
337
+
338
+ describe('greenbids Analytics Adapter track handler ', function () {
339
+ const configOptions = {
340
+ pbuid: pbuid,
341
+ sampling: 1,
342
+ };
343
+
344
+ beforeEach(function () {
345
+ sinon.stub(events, 'getEvents').returns([]);
346
+ greenbidsAnalyticsAdapter.enableAnalytics({
347
+ provider: 'greenbidsAnalytics',
348
+ options: configOptions
349
+ });
350
+ });
351
+
352
+ afterEach(function () {
353
+ greenbidsAnalyticsAdapter.disableAnalytics();
354
+ events.getEvents.restore();
355
+ });
356
+
357
+ it('should call handleBidTimeout as BID_TIMEOUT trigger event', function() {
358
+ sinon.spy(greenbidsAnalyticsAdapter, 'handleBidTimeout');
359
+ events.emit(constants.EVENTS.BID_TIMEOUT, {});
360
+ sinon.assert.callCount(greenbidsAnalyticsAdapter.handleBidTimeout, 1);
361
+ greenbidsAnalyticsAdapter.handleBidTimeout.restore();
362
+ });
363
+
364
+ it('should call handleAuctionEnd as AUCTION_END trigger event', function() {
365
+ sinon.spy(greenbidsAnalyticsAdapter, 'handleAuctionEnd');
366
+ events.emit(constants.EVENTS.AUCTION_END, {});
367
+ sinon.assert.callCount(greenbidsAnalyticsAdapter.handleAuctionEnd, 1);
368
+ greenbidsAnalyticsAdapter.handleAuctionEnd.restore();
369
+ });
370
+ });
371
+
372
+ describe('enableAnalytics and config parser', function () {
373
+ const configOptions = {
374
+ pbuid: pbuid,
375
+ sampling: 0,
376
+ };
377
+
378
+ beforeEach(function () {
379
+ greenbidsAnalyticsAdapter.enableAnalytics({
380
+ provider: 'greenbidsAnalytics',
381
+ options: configOptions
382
+ });
383
+ });
384
+
385
+ afterEach(function () {
386
+ greenbidsAnalyticsAdapter.disableAnalytics();
387
+ });
388
+
389
+ it('should parse config correctly with optional values', function () {
390
+ expect(greenbidsAnalyticsAdapter.getAnalyticsOptions().options).to.deep.equal(configOptions);
391
+ expect(greenbidsAnalyticsAdapter.getAnalyticsOptions().pbuid).to.equal(configOptions.pbuid);
392
+ expect(greenbidsAnalyticsAdapter.getAnalyticsOptions().sampled).to.equal(false);
393
+ });
394
+
395
+ it('should not enable Analytics when pbuid is missing', function () {
396
+ const configOptions = {
397
+ options: {
398
+ }
399
+ };
400
+ const validConfig = greenbidsAnalyticsAdapter.initConfig(configOptions);
401
+ expect(validConfig).to.equal(false);
402
+ });
403
+ it('should fall back to default value when sampling factor is not number', function () {
404
+ const configOptions = {
405
+ options: {
406
+ pbuid: pbuid,
407
+ sampling: 'string',
408
+ }
409
+ };
410
+ greenbidsAnalyticsAdapter.enableAnalytics({
411
+ provider: 'greenbidsAnalytics',
412
+ options: configOptions
413
+ });
414
+
415
+ expect(greenbidsAnalyticsAdapter.getAnalyticsOptions().sampled).to.equal(false);
416
+ });
417
+ });
418
+ });
@@ -873,14 +873,17 @@ describe('TheMediaGrid Adapter', function () {
873
873
  }
874
874
  }, {
875
875
  ext: {
876
+ gpid: '/222222/slot',
876
877
  data: {
877
878
  adserver: {
878
879
  name: 'ad_server_name',
879
- adslot: '/222222/slot'
880
- },
881
- pbadslot: '/222222/slot'
880
+ }
882
881
  }
883
882
  }
883
+ }, {
884
+ ext: {
885
+ gpid: '/333333/slot'
886
+ }
884
887
  }];
885
888
  const bidRequestsWithOrtb2Imp = bidRequests.slice(0, 3).map((bid, ind) => {
886
889
  return Object.assign(ortb2Imp[ind] ? { ortb2Imp: ortb2Imp[ind] } : {}, bid);
@@ -896,10 +899,11 @@ describe('TheMediaGrid Adapter', function () {
896
899
  expect(payload.imp[1].ext).to.deep.equal({
897
900
  divid: bidRequests[1].adUnitCode,
898
901
  data: ortb2Imp[1].ext.data,
899
- gpid: ortb2Imp[1].ext.data.adserver.adslot
902
+ gpid: ortb2Imp[1].ext.gpid
900
903
  });
901
904
  expect(payload.imp[2].ext).to.deep.equal({
902
- divid: bidRequests[2].adUnitCode
905
+ divid: bidRequests[2].adUnitCode,
906
+ gpid: ortb2Imp[2].ext.gpid
903
907
  });
904
908
  });
905
909
 
@@ -4,12 +4,13 @@ import { server } from 'test/mocks/xhr.js';
4
4
  import { uspDataHandler } from 'src/adapterManager.js';
5
5
  import {expect} from 'chai';
6
6
  import {getStorageManager} from '../../../src/storageManager.js';
7
+ import {MODULE_TYPE_UID} from '../../../src/activities/modules.js';
7
8
 
8
9
  const GCID_EXPIRY = 45;
9
10
  const MODULE_NAME = 'growthCodeId';
10
11
  const SHAREDID = 'fe9c5c89-7d56-4666-976d-e07e73b3b664';
11
12
 
12
- export const storage = getStorageManager({ gvlid: undefined, moduleName: MODULE_NAME });
13
+ const storage = getStorageManager({ moduleType: MODULE_TYPE_UID, moduleName: MODULE_NAME });
13
14
 
14
15
  const getIdParams = {params: {
15
16
  pid: 'TEST01',
@@ -65,6 +65,10 @@ describe('ID5 ID System', function () {
65
65
  }
66
66
  }
67
67
 
68
+ const HEADERS_CONTENT_TYPE_JSON = {
69
+ 'Content-Type': 'application/json'
70
+ }
71
+
68
72
  function getId5FetchConfig(storageName = ID5_STORAGE_NAME, storageType = 'html5') {
69
73
  return {
70
74
  name: ID5_MODULE_NAME,
@@ -148,7 +152,7 @@ describe('ID5 ID System', function () {
148
152
  }
149
153
 
150
154
  respondWithConfigAndExpectNext(configRequest, config = ID5_API_CONFIG) {
151
- configRequest.respond(200, {'Content-Type': 'application/json'}, JSON.stringify(config));
155
+ configRequest.respond(200, HEADERS_CONTENT_TYPE_JSON, JSON.stringify(config));
152
156
  return this.expectNextRequest()
153
157
  }
154
158
 
@@ -249,7 +253,7 @@ describe('ID5 ID System', function () {
249
253
  });
250
254
 
251
255
  describe('Xhr Requests from getId()', function () {
252
- const responseHeader = {'Content-Type': 'application/json'};
256
+ const responseHeader = HEADERS_CONTENT_TYPE_JSON
253
257
 
254
258
  beforeEach(function () {
255
259
  });
@@ -719,6 +723,40 @@ describe('ID5 ID System', function () {
719
723
  })
720
724
  });
721
725
 
726
+ describe('Local storage', () => {
727
+ let sandbox;
728
+ beforeEach(() => {
729
+ sandbox = sinon.sandbox.create();
730
+ sandbox.stub(storage, 'localStorageIsEnabled');
731
+ });
732
+ afterEach(() => {
733
+ sandbox.restore();
734
+ });
735
+ [
736
+ [true, 1],
737
+ [false, 0]
738
+ ].forEach(function ([isEnabled, expectedValue]) {
739
+ it(`should check localStorage availability and log in request. Available=${isEnabled}`, () => {
740
+ let xhrServerMock = new XhrServerMock(sinon.createFakeServer())
741
+ let config = getId5FetchConfig();
742
+ let submoduleResponse = callSubmoduleGetId(config, undefined, undefined);
743
+ storage.localStorageIsEnabled.callsFake(() => isEnabled)
744
+
745
+ return xhrServerMock.expectFetchRequest()
746
+ .then(fetchRequest => {
747
+ let requestBody = JSON.parse(fetchRequest.requestBody);
748
+ expect(requestBody.localStorage).is.eq(expectedValue);
749
+
750
+ fetchRequest.respond(200, HEADERS_CONTENT_TYPE_JSON, JSON.stringify(ID5_JSON_RESPONSE));
751
+ return submoduleResponse
752
+ })
753
+ .then(submoduleResponse => {
754
+ expect(submoduleResponse).is.deep.equal(ID5_JSON_RESPONSE);
755
+ });
756
+ })
757
+ })
758
+ });
759
+
722
760
  describe('Request Bids Hook', function () {
723
761
  let adUnits;
724
762
  let sandbox;
@@ -842,8 +880,7 @@ describe('ID5 ID System', function () {
842
880
  expect(requestBody.s).is.eq(ID5_STORED_SIGNATURE);
843
881
  expect(requestBody.nbPage).is.eq(2);
844
882
  expect(getNbFromCache(ID5_TEST_PARTNER_ID)).is.eq(2);
845
- const responseHeader = {'Content-Type': 'application/json'};
846
- request.respond(200, responseHeader, JSON.stringify(ID5_JSON_RESPONSE));
883
+ request.respond(200, HEADERS_CONTENT_TYPE_JSON, JSON.stringify(ID5_JSON_RESPONSE));
847
884
 
848
885
  return new Promise(function (resolve) {
849
886
  (function waitForCondition() {
@@ -1,9 +1,9 @@
1
1
  import {identityLinkSubmodule} from 'modules/identityLinkIdSystem.js';
2
2
  import * as utils from 'src/utils.js';
3
3
  import {server} from 'test/mocks/xhr.js';
4
- import {getStorageManager} from '../../../src/storageManager.js';
4
+ import {getCoreStorageManager} from '../../../src/storageManager.js';
5
5
 
6
- export const storage = getStorageManager();
6
+ const storage = getCoreStorageManager();
7
7
 
8
8
  const pid = '14';
9
9
  let defaultConfigParams;
@@ -14,7 +14,6 @@ import 'modules/consentManagement.js';
14
14
  import 'modules/consentManagementUsp.js';
15
15
  import 'modules/schain.js';
16
16
  import {decorateAdUnitsWithNativeParams} from '../../../src/native.js';
17
- import {createEidsArray} from '../../../modules/userId/eids.js';
18
17
  import {syncAddFPDToBidderRequest} from '../../helpers/fpd.js';
19
18
  import {hook} from '../../../src/hook.js';
20
19
 
@@ -579,7 +578,15 @@ describe('Improve Digital Adapter Tests', function () {
579
578
  });
580
579
 
581
580
  it('should add eids', function () {
582
- const userId = { id5id: { uid: '1111' } };
581
+ const userIdAsEids = [
582
+ {
583
+ source: 'id5-sync.com',
584
+ uids: [{
585
+ atype: 1,
586
+ id: '1111'
587
+ }]
588
+ }
589
+ ];
583
590
  const expectedUserObject = { ext: { eids: [{
584
591
  source: 'id5-sync.com',
585
592
  uids: [{
@@ -588,7 +595,7 @@ describe('Improve Digital Adapter Tests', function () {
588
595
  }]
589
596
  }]}};
590
597
  const bidRequest = Object.assign({}, simpleBidRequest);
591
- bidRequest.userIdAsEids = createEidsArray(userId);
598
+ bidRequest.userIdAsEids = userIdAsEids;
592
599
  const request = spec.buildRequests([bidRequest], bidderRequestReferrer)[0];
593
600
  const payload = JSON.parse(request.data);
594
601
  expect(payload.user).to.deep.equal(expectedUserObject);
@@ -76,7 +76,8 @@ describe('IQZoneBidAdapter', function () {
76
76
  gdprConsent: 'COvFyGBOvFyGBAbAAAENAPCAAOAAAAAAAAAAAEEUACCKAAA.IFoEUQQgAIQwgIwQABAEAAAAOIAACAIAAAAQAIAgEAACEAAAAAgAQBAAAAAAAGBAAgAAAAAAAFAAECAAAgAAQARAEQAAAAAJAAIAAgAAAYQEAAAQmAgBC3ZAYzUw',
77
77
  refererInfo: {
78
78
  referer: 'https://test.com'
79
- }
79
+ },
80
+ timeout: 500
80
81
  };
81
82
 
82
83
  describe('isBidRequestValid', function () {