prebid.js 5.14.0 → 5.18.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 (397) hide show
  1. package/.devcontainer/Dockerfile +11 -0
  2. package/.devcontainer/devcontainer.json +27 -0
  3. package/.devcontainer/postCreate.sh +6 -0
  4. package/allowedModules.js +2 -1
  5. package/integrationExamples/gpt/afpExample.html +242 -0
  6. package/integrationExamples/gpt/afpGamExample.html +152 -0
  7. package/integrationExamples/gpt/weboramaRtdProvider_example.html +126 -0
  8. package/modules/.submodules.json +29 -27
  9. package/modules/33acrossBidAdapter.js +23 -20
  10. package/modules/a4gBidAdapter.js +3 -3
  11. package/modules/ablidaBidAdapter.js +2 -2
  12. package/modules/adWMGBidAdapter.js +4 -4
  13. package/modules/adagioAnalyticsAdapter.js +4 -4
  14. package/modules/adagioBidAdapter.js +85 -82
  15. package/modules/adbookpspBidAdapter.js +56 -54
  16. package/modules/adfBidAdapter.js +24 -16
  17. package/modules/adgenerationBidAdapter.js +42 -18
  18. package/modules/adhashBidAdapter.js +105 -0
  19. package/modules/adhashBidAdapter.md +1 -1
  20. package/modules/adkernelAdnAnalyticsAdapter.js +6 -6
  21. package/modules/adkernelAdnBidAdapter.js +23 -23
  22. package/modules/adkernelBidAdapter.js +49 -44
  23. package/modules/adlooxAdServerVideo.js +26 -26
  24. package/modules/adlooxAnalyticsAdapter.js +38 -35
  25. package/modules/adlooxRtdProvider.js +49 -46
  26. package/modules/admanBidAdapter.js +4 -4
  27. package/modules/admixerBidAdapter.js +13 -2
  28. package/modules/admixerIdSystem.js +4 -4
  29. package/modules/adnowBidAdapter.js +4 -4
  30. package/modules/adnuntiusBidAdapter.js +6 -5
  31. package/modules/adoceanBidAdapter.js +10 -10
  32. package/modules/adpartnerBidAdapter.js +3 -3
  33. package/modules/adpod.js +45 -42
  34. package/modules/adprimeBidAdapter.js +4 -4
  35. package/modules/adqueryBidAdapter.js +204 -0
  36. package/modules/adqueryBidAdapter.md +32 -0
  37. package/modules/adrelevantisBidAdapter.js +30 -27
  38. package/modules/adriverBidAdapter.js +13 -13
  39. package/modules/adtargetBidAdapter.js +24 -24
  40. package/modules/adtelligentBidAdapter.js +29 -29
  41. package/modules/adtrueBidAdapter.js +35 -35
  42. package/modules/aduptechBidAdapter.js +10 -10
  43. package/modules/advangelistsBidAdapter.js +14 -14
  44. package/modules/adxcgAnalyticsAdapter.js +5 -5
  45. package/modules/adxcgBidAdapter.js +56 -56
  46. package/modules/adxpremiumAnalyticsAdapter.js +17 -17
  47. package/modules/adyoulikeBidAdapter.js +11 -11
  48. package/modules/afpBidAdapter.js +166 -0
  49. package/modules/afpBidAdapter.md +348 -0
  50. package/modules/ajaBidAdapter.js +12 -12
  51. package/modules/akamaiDAPIdSystem.js +9 -9
  52. package/modules/aniviewBidAdapter.js +2 -2
  53. package/modules/aolBidAdapter.js +15 -14
  54. package/modules/apacdexBidAdapter.js +16 -16
  55. package/modules/appnexusBidAdapter.js +59 -59
  56. package/modules/apstreamBidAdapter.js +5 -5
  57. package/modules/asoBidAdapter.js +30 -30
  58. package/modules/astraoneBidAdapter.js +2 -2
  59. package/modules/atsAnalyticsAdapter.js +35 -30
  60. package/modules/audiencerunBidAdapter.js +15 -15
  61. package/modules/automatadBidAdapter.js +2 -2
  62. package/modules/axonixBidAdapter.js +7 -7
  63. package/modules/beachfrontBidAdapter.js +23 -23
  64. package/modules/beopBidAdapter.js +22 -22
  65. package/modules/bidViewabilityIO.js +7 -7
  66. package/modules/bidglassBidAdapter.js +8 -8
  67. package/modules/bidscubeBidAdapter.js +3 -3
  68. package/modules/bizzclickBidAdapter.js +10 -10
  69. package/modules/bliinkBidAdapter.js +58 -32
  70. package/modules/bliinkBidAdapter.md +29 -6
  71. package/modules/bluebillywigBidAdapter.js +30 -30
  72. package/modules/boldwinBidAdapter.js +4 -4
  73. package/modules/braveBidAdapter.js +5 -5
  74. package/modules/bridgewellBidAdapter.js +5 -5
  75. package/modules/brightMountainMediaBidAdapter.js +10 -10
  76. package/modules/brightcomBidAdapter.js +18 -18
  77. package/modules/britepoolIdSystem.js +7 -7
  78. package/modules/browsiRtdProvider.js +8 -8
  79. package/modules/bucksenseBidAdapter.js +9 -9
  80. package/modules/buzzoolaBidAdapter.js +4 -4
  81. package/modules/byDataAnalyticsAdapter.js +12 -12
  82. package/modules/ccxBidAdapter.js +38 -38
  83. package/modules/cleanmedianetBidAdapter.js +9 -9
  84. package/modules/clickforceBidAdapter.js +4 -4
  85. package/modules/cointrafficBidAdapter.js +4 -4
  86. package/modules/coinzillaBidAdapter.js +2 -2
  87. package/modules/colossussspBidAdapter.js +7 -3
  88. package/modules/concertAnalyticsAdapter.js +3 -3
  89. package/modules/concertBidAdapter.js +16 -17
  90. package/modules/connectadBidAdapter.js +13 -13
  91. package/modules/consentManagement.js +29 -28
  92. package/modules/consentManagementUsp.js +14 -14
  93. package/modules/consumableBidAdapter.js +3 -3
  94. package/modules/contentexchangeBidAdapter.js +5 -5
  95. package/modules/conversantBidAdapter.js +32 -31
  96. package/modules/cpmstarBidAdapter.js +8 -9
  97. package/modules/craftBidAdapter.js +10 -10
  98. package/modules/criteoBidAdapter.js +16 -16
  99. package/modules/criteoIdSystem.js +5 -5
  100. package/modules/currency.js +18 -18
  101. package/modules/cwireBidAdapter.js +272 -0
  102. package/modules/cwireBidAdapter.md +43 -0
  103. package/modules/datablocksBidAdapter.js +12 -12
  104. package/modules/deepintentBidAdapter.js +13 -13
  105. package/modules/dgkeywordRtdProvider.js +10 -11
  106. package/modules/districtmDMXBidAdapter.js +15 -15
  107. package/modules/dmdIdSystem.js +5 -5
  108. package/modules/docereeBidAdapter.js +9 -9
  109. package/modules/dspxBidAdapter.js +5 -5
  110. package/modules/ebdrBidAdapter.js +9 -9
  111. package/modules/emx_digitalBidAdapter.js +23 -23
  112. package/modules/enrichmentFpdModule.js +10 -9
  113. package/modules/eplanningAnalyticsAdapter.js +2 -2
  114. package/modules/eplanningBidAdapter.js +10 -10
  115. package/modules/etargetBidAdapter.js +4 -4
  116. package/modules/express.js +9 -10
  117. package/modules/fabrickIdSystem.js +6 -6
  118. package/modules/feedadBidAdapter.js +5 -5
  119. package/modules/fintezaAnalyticsAdapter.js +4 -4
  120. package/modules/flocIdSystem.js +5 -5
  121. package/modules/fluctBidAdapter.js +6 -5
  122. package/modules/freewheel-sspBidAdapter.js +6 -6
  123. package/modules/gamoshiBidAdapter.js +22 -22
  124. package/modules/gdprEnforcement.js +13 -14
  125. package/modules/getintentBidAdapter.js +3 -4
  126. package/modules/glimpseBidAdapter.js +160 -48
  127. package/modules/glimpseBidAdapter.md +11 -74
  128. package/modules/gmosspBidAdapter.js +17 -17
  129. package/modules/gnetBidAdapter.js +5 -5
  130. package/modules/googleAnalyticsAdapter.js +6 -6
  131. package/modules/gothamadsBidAdapter.js +9 -9
  132. package/modules/gptPreAuction.js +7 -7
  133. package/modules/gridBidAdapter.js +15 -16
  134. package/modules/gridNMBidAdapter.js +214 -63
  135. package/modules/growadvertisingBidAdapter.js +7 -8
  136. package/modules/gumgumBidAdapter.js +19 -13
  137. package/modules/h12mediaBidAdapter.js +12 -12
  138. package/modules/haloIdSystem.js +8 -8
  139. package/modules/hybridBidAdapter.js +7 -7
  140. package/modules/iasRtdProvider.js +79 -63
  141. package/modules/id5IdSystem.js +24 -24
  142. package/modules/idImportLibrary.js +35 -35
  143. package/modules/idxIdSystem.js +3 -3
  144. package/modules/impactifyBidAdapter.js +10 -10
  145. package/modules/improvedigitalBidAdapter.js +36 -36
  146. package/modules/imuIdSystem.js +6 -6
  147. package/modules/inmarBidAdapter.js +2 -2
  148. package/modules/innityBidAdapter.js +3 -3
  149. package/modules/inskinBidAdapter.js +14 -2
  150. package/modules/inskinBidAdapter.md +5 -4
  151. package/modules/instreamTracking.js +5 -5
  152. package/modules/integr8BidAdapter.js +4 -4
  153. package/modules/intentIqIdSystem.js +7 -7
  154. package/modules/interactiveOffersBidAdapter.js +5 -5
  155. package/modules/invibesBidAdapter.js +53 -19
  156. package/modules/invisiblyAnalyticsAdapter.js +5 -5
  157. package/modules/iqmBidAdapter.js +19 -19
  158. package/modules/iqzoneBidAdapter.js +5 -5
  159. package/modules/ixBidAdapter.js +73 -73
  160. package/modules/jixieBidAdapter.js +6 -6
  161. package/modules/justpremiumBidAdapter.js +5 -1
  162. package/modules/kargoBidAdapter.js +16 -9
  163. package/modules/kargoBidAdapter.md +20 -0
  164. package/modules/kinessoIdSystem.js +8 -8
  165. package/modules/koblerBidAdapter.js +12 -12
  166. package/modules/konduitAnalyticsAdapter.js +4 -4
  167. package/modules/konduitWrapper.js +14 -14
  168. package/modules/krushmediaBidAdapter.js +4 -4
  169. package/modules/kubientBidAdapter.js +5 -5
  170. package/modules/limelightDigitalBidAdapter.js +4 -4
  171. package/modules/liveIntentIdSystem.js +4 -5
  172. package/modules/livewrappedAnalyticsAdapter.js +27 -15
  173. package/modules/livewrappedBidAdapter.js +7 -7
  174. package/modules/liveyieldAnalyticsAdapter.js +13 -13
  175. package/modules/lockerdomeBidAdapter.js +2 -2
  176. package/modules/loganBidAdapter.js +4 -4
  177. package/modules/lotamePanoramaIdSystem.js +13 -13
  178. package/modules/lunamediahbBidAdapter.js +2 -2
  179. package/modules/madvertiseBidAdapter.js +3 -3
  180. package/modules/marsmediaBidAdapter.js +26 -26
  181. package/modules/mathildeadsBidAdapter.js +5 -5
  182. package/modules/mediaforceBidAdapter.js +11 -11
  183. package/modules/mediakeysBidAdapter.js +444 -53
  184. package/modules/mediakeysBidAdapter.md +108 -0
  185. package/modules/medianetAnalyticsAdapter.js +48 -125
  186. package/modules/medianetBidAdapter.js +38 -33
  187. package/modules/medianetRtdProvider.js +7 -7
  188. package/modules/merkleIdSystem.js +19 -19
  189. package/modules/mgidBidAdapter.js +50 -50
  190. package/modules/microadBidAdapter.js +3 -3
  191. package/modules/multibid/index.js +15 -13
  192. package/modules/mwOpenLinkIdSystem.js +7 -7
  193. package/modules/mytargetBidAdapter.js +112 -0
  194. package/modules/nativoBidAdapter.js +46 -31
  195. package/modules/nativoBidAdapter.md +0 -1
  196. package/modules/naveggIdSystem.js +3 -3
  197. package/modules/nextMillenniumBidAdapter.js +6 -6
  198. package/modules/nextrollBidAdapter.js +375 -0
  199. package/modules/nobidBidAdapter.js +12 -11
  200. package/modules/novatiqIdSystem.js +8 -8
  201. package/modules/oguryBidAdapter.js +22 -6
  202. package/modules/oneVideoBidAdapter.js +20 -20
  203. package/modules/onomagicBidAdapter.js +16 -16
  204. package/modules/ooloAnalyticsAdapter.js +13 -13
  205. package/modules/openwebBidAdapter.js +26 -26
  206. package/modules/openxAnalyticsAdapter.js +33 -33
  207. package/modules/openxBidAdapter.js +29 -29
  208. package/modules/operaadsBidAdapter.js +53 -53
  209. package/modules/optimeraRtdProvider.js +9 -9
  210. package/modules/optoutBidAdapter.js +3 -3
  211. package/modules/orbidderBidAdapter.js +3 -3
  212. package/modules/outbrainBidAdapter.js +13 -13
  213. package/modules/ozoneBidAdapter.js +131 -131
  214. package/modules/padsquadBidAdapter.js +4 -4
  215. package/modules/parrableIdSystem.js +17 -17
  216. package/modules/pixfutureBidAdapter.js +45 -25
  217. package/modules/pixfutureBidAdapter.md +127 -0
  218. package/modules/prebidServerBidAdapter/index.js +109 -105
  219. package/modules/prebidmanagerAnalyticsAdapter.js +7 -7
  220. package/modules/priceFloors.js +47 -47
  221. package/modules/proxistoreBidAdapter.js +6 -8
  222. package/modules/pubCommonId.js +11 -11
  223. package/modules/pubProvidedIdSystem.js +3 -3
  224. package/modules/publinkIdSystem.js +23 -7
  225. package/modules/publinkIdSystem.md +7 -2
  226. package/modules/pubmaticAnalyticsAdapter.js +16 -16
  227. package/modules/pubmaticBidAdapter.js +109 -93
  228. package/modules/pubmaticBidAdapter.md +1 -1
  229. package/modules/pubperfAnalyticsAdapter.js +3 -3
  230. package/modules/pubwiseAnalyticsAdapter.js +6 -6
  231. package/modules/pubwiseBidAdapter.js +23 -23
  232. package/modules/pubxBidAdapter.js +2 -2
  233. package/modules/pubxaiAnalyticsAdapter.js +7 -7
  234. package/modules/pulsepointBidAdapter.js +13 -13
  235. package/modules/pxyzBidAdapter.js +7 -7
  236. package/modules/quantcastBidAdapter.js +16 -16
  237. package/modules/radsBidAdapter.js +5 -5
  238. package/modules/realvuAnalyticsAdapter.js +5 -7
  239. package/modules/reconciliationRtdProvider.js +6 -6
  240. package/modules/relaidoBidAdapter.js +44 -38
  241. package/modules/resetdigitalBidAdapter.js +3 -4
  242. package/modules/revcontentBidAdapter.js +9 -9
  243. package/modules/rhythmoneBidAdapter.js +17 -16
  244. package/modules/richaudienceBidAdapter.js +9 -9
  245. package/modules/riseBidAdapter.js +26 -26
  246. package/modules/riseBidAdapter.md +1 -3
  247. package/modules/roxotAnalyticsAdapter.js +14 -14
  248. package/modules/rtbhouseBidAdapter.js +7 -7
  249. package/modules/rtbsapeBidAdapter.js +3 -4
  250. package/modules/rtdModule/index.js +3 -3
  251. package/modules/rubiconAnalyticsAdapter.js +82 -82
  252. package/modules/rubiconBidAdapter.js +72 -68
  253. package/modules/scaleableAnalyticsAdapter.js +2 -2
  254. package/modules/seedingAllianceBidAdapter.js +231 -0
  255. package/modules/seedtagBidAdapter.js +10 -10
  256. package/modules/sharedIdSystem.js +11 -11
  257. package/modules/sharethroughAnalyticsAdapter.js +8 -8
  258. package/modules/sharethroughBidAdapter.js +20 -27
  259. package/modules/showheroes-bsBidAdapter.js +23 -23
  260. package/modules/sigmoidAnalyticsAdapter.js +4 -5
  261. package/modules/sirdataRtdProvider.js +34 -34
  262. package/modules/sizeMappingV2.js +39 -39
  263. package/modules/slimcutBidAdapter.js +121 -0
  264. package/modules/smaatoBidAdapter.js +44 -44
  265. package/modules/smartadserverBidAdapter.js +7 -7
  266. package/modules/smartxBidAdapter.js +72 -72
  267. package/modules/smartyadsBidAdapter.js +2 -2
  268. package/modules/smilewantedBidAdapter.js +6 -6
  269. package/modules/sonobiAnalyticsAdapter.js +23 -23
  270. package/modules/sortableAnalyticsAdapter.js +5 -5
  271. package/modules/sortableBidAdapter.js +28 -28
  272. package/modules/sovrnAnalyticsAdapter.js +5 -5
  273. package/modules/sovrnBidAdapter.js +22 -22
  274. package/modules/spotxBidAdapter.js +97 -83
  275. package/modules/sspBCBidAdapter.js +216 -21
  276. package/modules/sspBCBidAdapter.md +1 -1
  277. package/modules/staqAnalyticsAdapter.js +9 -9
  278. package/modules/stroeerCoreBidAdapter.js +16 -16
  279. package/modules/sublimeBidAdapter.js +6 -6
  280. package/modules/talkadsBidAdapter.js +129 -0
  281. package/modules/talkadsBidAdapter.md +60 -0
  282. package/modules/tapadIdSystem.js +3 -3
  283. package/modules/tappxBidAdapter.js +63 -64
  284. package/modules/teadsBidAdapter.js +20 -20
  285. package/modules/telariaBidAdapter.js +17 -17
  286. package/modules/temedyaBidAdapter.js +4 -4
  287. package/modules/terceptAnalyticsAdapter.js +4 -4
  288. package/modules/theAdxBidAdapter.js +16 -16
  289. package/modules/timeoutRtdProvider.js +15 -15
  290. package/modules/tpmnBidAdapter.js +3 -3
  291. package/modules/trionBidAdapter.js +15 -15
  292. package/modules/tripleliftBidAdapter.js +27 -24
  293. package/modules/truereachBidAdapter.js +4 -4
  294. package/modules/trustxBidAdapter.js +22 -18
  295. package/modules/ucfunnelBidAdapter.js +3 -3
  296. package/modules/uid2IdSystem.js +6 -6
  297. package/modules/underdogmediaBidAdapter.js +4 -4
  298. package/modules/unicornBidAdapter.js +15 -15
  299. package/modules/unifiedIdSystem.js +4 -4
  300. package/modules/unrulyBidAdapter.js +16 -16
  301. package/modules/userId/eids.js +9 -9
  302. package/modules/userId/index.js +37 -35
  303. package/modules/validationFpdModule/index.js +15 -15
  304. package/modules/vdoaiBidAdapter.js +2 -2
  305. package/modules/verizonMediaIdSystem.js +5 -5
  306. package/modules/vidazooBidAdapter.js +5 -5
  307. package/modules/videobyteBidAdapter.js +24 -24
  308. package/modules/videoreachBidAdapter.js +7 -7
  309. package/modules/vidoomyBidAdapter.js +105 -22
  310. package/modules/viewdeosDXBidAdapter.js +17 -17
  311. package/modules/visxBidAdapter.js +21 -29
  312. package/modules/voxBidAdapter.js +7 -7
  313. package/modules/vuukleBidAdapter.js +2 -2
  314. package/modules/waardexBidAdapter.js +26 -26
  315. package/modules/weboramaRtdProvider.js +174 -0
  316. package/modules/weboramaRtdProvider.md +70 -0
  317. package/modules/winrBidAdapter.js +27 -27
  318. package/modules/wipesBidAdapter.js +2 -2
  319. package/modules/yahoosspBidAdapter.js +637 -0
  320. package/modules/yahoosspBidAdapter.md +795 -0
  321. package/modules/yieldlabBidAdapter.js +57 -12
  322. package/modules/yieldlabBidAdapter.md +16 -1
  323. package/modules/yieldliftBidAdapter.js +9 -9
  324. package/modules/yieldmoBidAdapter.js +64 -50
  325. package/modules/yieldoneAnalyticsAdapter.js +6 -6
  326. package/modules/yieldoneBidAdapter.js +11 -11
  327. package/modules/yuktamediaAnalyticsAdapter.js +15 -15
  328. package/modules/zeotapIdPlusIdSystem.js +2 -2
  329. package/modules/zetaBidAdapter.js +6 -6
  330. package/modules/zeta_global_sspBidAdapter.js +14 -14
  331. package/package.json +1 -1
  332. package/src/AnalyticsAdapter.js +6 -6
  333. package/src/Renderer.js +10 -8
  334. package/src/adapterManager.js +45 -42
  335. package/src/adloader.js +6 -6
  336. package/src/ajax.js +8 -9
  337. package/src/auction.js +26 -23
  338. package/src/bidfactory.js +2 -2
  339. package/src/config.js +52 -50
  340. package/src/cpmBucketManager.js +2 -2
  341. package/src/prebid.js +85 -81
  342. package/src/storageManager.js +5 -5
  343. package/src/targeting.js +25 -26
  344. package/src/userSync.js +35 -22
  345. package/src/videoCache.js +2 -2
  346. package/test/.eslintrc.js +2 -1
  347. package/test/spec/modules/adfBidAdapter_spec.js +55 -0
  348. package/test/spec/modules/adgenerationBidAdapter_spec.js +121 -50
  349. package/test/spec/modules/adhashBidAdapter_spec.js +155 -0
  350. package/test/spec/modules/adnuntiusBidAdapter_spec.js +68 -0
  351. package/test/spec/modules/adqueryBidAdapter_spec.js +185 -0
  352. package/test/spec/modules/afpBidAdapter_spec.js +306 -0
  353. package/test/spec/modules/atsAnalyticsAdapter_spec.js +37 -2
  354. package/test/spec/modules/bliinkBidAdapter_spec.js +87 -36
  355. package/test/spec/modules/colossussspBidAdapter_spec.js +14 -6
  356. package/test/spec/modules/cwireBidAdapter_spec.js +246 -0
  357. package/test/spec/modules/eplanningBidAdapter_spec.js +3 -3
  358. package/test/spec/modules/glimpseBidAdapter_spec.js +302 -204
  359. package/test/spec/modules/gridBidAdapter_spec.js +38 -2
  360. package/test/spec/modules/gridNMBidAdapter_spec.js +121 -47
  361. package/test/spec/modules/gumgumBidAdapter_spec.js +27 -6
  362. package/test/spec/modules/iasRtdProvider_spec.js +71 -6
  363. package/test/spec/modules/inskinBidAdapter_spec.js +10 -1
  364. package/test/spec/modules/invibesBidAdapter_spec.js +114 -2
  365. package/test/spec/modules/justpremiumBidAdapter_spec.js +16 -2
  366. package/test/spec/modules/livewrappedAnalyticsAdapter_spec.js +33 -7
  367. package/test/spec/modules/mediakeysBidAdapter_spec.js +406 -51
  368. package/test/spec/modules/medianetAnalyticsAdapter_spec.js +39 -7
  369. package/test/spec/modules/medianetBidAdapter_spec.js +62 -1
  370. package/test/spec/modules/mytargetBidAdapter_spec.js +199 -0
  371. package/test/spec/modules/nativoBidAdapter_spec.js +50 -3
  372. package/test/spec/modules/nextrollBidAdapter_spec.js +290 -0
  373. package/test/spec/modules/nobidBidAdapter_spec.js +65 -1
  374. package/test/spec/modules/oguryBidAdapter_spec.js +120 -7
  375. package/test/spec/modules/publinkIdSystem_spec.js +42 -12
  376. package/test/spec/modules/pubmaticBidAdapter_spec.js +217 -1
  377. package/test/spec/modules/relaidoBidAdapter_spec.js +21 -20
  378. package/test/spec/modules/rubiconAnalyticsAdapter_spec.js +100 -81
  379. package/test/spec/modules/rubiconAnalyticsSchema.json +5 -2
  380. package/test/spec/modules/seedingAllianceAdapter_spec.js +186 -0
  381. package/test/spec/modules/sharethroughBidAdapter_spec.js +156 -136
  382. package/test/spec/modules/slimcutBidAdapter_spec.js +200 -0
  383. package/test/spec/modules/spotxBidAdapter_spec.js +36 -0
  384. package/test/spec/modules/sspBCBidAdapter_spec.js +210 -62
  385. package/test/spec/modules/talkadsBidAdapter_spec.js +231 -0
  386. package/test/spec/modules/tappxBidAdapter_spec.js +39 -3
  387. package/test/spec/modules/tripleliftBidAdapter_spec.js +2 -0
  388. package/test/spec/modules/trustxBidAdapter_spec.js +35 -2
  389. package/test/spec/modules/unicornBidAdapter_spec.js +4 -4
  390. package/test/spec/modules/visxBidAdapter_spec.js +48 -4
  391. package/test/spec/modules/weboramaRtdProvider_spec.js +288 -0
  392. package/test/spec/modules/yahoosspBidAdapter_spec.js +1332 -0
  393. package/test/spec/modules/yieldlabBidAdapter_spec.js +65 -1
  394. package/test/spec/modules/yieldmoBidAdapter_spec.js +30 -9
  395. package/test/spec/unit/pbjs_api_spec.js +4 -0
  396. package/test/spec/userSync_spec.js +30 -2
  397. package/modules/turktelekomBidAdapter.md +0 -49
@@ -1,5 +1,8 @@
1
1
  import { Renderer } from '../src/Renderer.js';
2
- import * as utils from '../src/utils.js';
2
+ import {
3
+ logError, convertTypes, convertCamelToUnderscore, isArray, deepClone, logWarn, logMessage, getBidRequest, deepAccess,
4
+ isStr, createTrackPixelHtml, isEmpty, transformBidderParamKeywords, chunk, isArrayOfNums
5
+ } from '../src/utils.js';
3
6
  import { config } from '../src/config.js';
4
7
  import { registerBidder } from '../src/adapters/bidderFactory.js';
5
8
  import { BANNER, NATIVE, VIDEO } from '../src/mediaTypes.js';
@@ -145,7 +148,7 @@ export const spec = {
145
148
  if (!serverResponse || serverResponse.error) {
146
149
  let errorMessage = `in response for ${bidderRequest.bidderCode} adapter`;
147
150
  if (serverResponse && serverResponse.error) { errorMessage += `: ${serverResponse.error}`; }
148
- utils.logError(errorMessage);
151
+ logError(errorMessage);
149
152
  return bids;
150
153
  }
151
154
 
@@ -166,9 +169,9 @@ export const spec = {
166
169
  },
167
170
 
168
171
  transformBidParams: function(params, isOpenRtb) {
169
- params = utils.convertTypes({
172
+ params = convertTypes({
170
173
  'placementId': 'number',
171
- 'keywords': utils.transformBidderParamKeywords
174
+ 'keywords': transformBidderParamKeywords
172
175
  }, params);
173
176
 
174
177
  if (isOpenRtb) {
@@ -180,7 +183,7 @@ export const spec = {
180
183
  }
181
184
 
182
185
  Object.keys(params).forEach(paramKey => {
183
- let convertedKey = utils.convertCamelToUnderscore(paramKey);
186
+ let convertedKey = convertCamelToUnderscore(paramKey);
184
187
  if (convertedKey !== paramKey) {
185
188
  params[convertedKey] = params[paramKey];
186
189
  delete params[paramKey];
@@ -193,7 +196,7 @@ export const spec = {
193
196
  }
194
197
 
195
198
  function isPopulatedArray(arr) {
196
- return !!(utils.isArray(arr) && arr.length > 0);
199
+ return !!(isArray(arr) && arr.length > 0);
197
200
  }
198
201
 
199
202
  function deleteValues(keyPairObj) {
@@ -206,9 +209,9 @@ function formatRequest(payload, bidderRequest) {
206
209
  let request = [];
207
210
 
208
211
  if (payload.tags.length > MAX_IMPS_PER_REQUEST) {
209
- const clonedPayload = utils.deepClone(payload);
212
+ const clonedPayload = deepClone(payload);
210
213
 
211
- utils.chunk(payload.tags, MAX_IMPS_PER_REQUEST).forEach(tags => {
214
+ chunk(payload.tags, MAX_IMPS_PER_REQUEST).forEach(tags => {
212
215
  clonedPayload.tags = tags;
213
216
  const payloadString = JSON.stringify(clonedPayload);
214
217
  request.push({
@@ -243,14 +246,14 @@ function newRenderer(adUnitCode, rtbBid, rendererOptions = {}) {
243
246
  try {
244
247
  renderer.setRender(outstreamRender);
245
248
  } catch (err) {
246
- utils.logWarn('Prebid Error calling setRender on renderer', err);
249
+ logWarn('Prebid Error calling setRender on renderer', err);
247
250
  }
248
251
 
249
252
  renderer.setEventHandlers({
250
- impression: () => utils.logMessage('AdRelevantis outstream video impression event'),
251
- loaded: () => utils.logMessage('AdRelevantis outstream video loaded event'),
253
+ impression: () => logMessage('AdRelevantis outstream video impression event'),
254
+ loaded: () => logMessage('AdRelevantis outstream video loaded event'),
252
255
  ended: () => {
253
- utils.logMessage('AdRelevantis outstream renderer video event');
256
+ logMessage('AdRelevantis outstream renderer video event');
254
257
  document.querySelector(`#${adUnitCode}`).style.display = 'none';
255
258
  }
256
259
  });
@@ -295,7 +298,7 @@ function handleOutstreamRendererEvents(bid, id, eventName) {
295
298
  * @return Bid
296
299
  */
297
300
  function newBid(serverBid, rtbBid, bidderRequest) {
298
- const bidRequest = utils.getBidRequest(serverBid.uuid, [bidderRequest]);
301
+ const bidRequest = getBidRequest(serverBid.uuid, [bidderRequest]);
299
302
  const bid = {
300
303
  requestId: serverBid.uuid,
301
304
  cpm: rtbBid.cpm,
@@ -324,7 +327,7 @@ function newBid(serverBid, rtbBid, bidderRequest) {
324
327
  ttl: 3600
325
328
  });
326
329
 
327
- const videoContext = utils.deepAccess(bidRequest, 'mediaTypes.video.context');
330
+ const videoContext = deepAccess(bidRequest, 'mediaTypes.video.context');
328
331
  switch (videoContext) {
329
332
  case OUTSTREAM:
330
333
  bid.adResponse = serverBid;
@@ -334,7 +337,7 @@ function newBid(serverBid, rtbBid, bidderRequest) {
334
337
 
335
338
  if (rtbBid.renderer_url) {
336
339
  const videoBid = find(bidderRequest.bids, bid => bid.bidId === serverBid.uuid);
337
- const rendererOptions = utils.deepAccess(videoBid, 'renderer.options');
340
+ const rendererOptions = deepAccess(videoBid, 'renderer.options');
338
341
  bid.renderer = newRenderer(bid.adUnitCode, rtbBid, rendererOptions);
339
342
  }
340
343
  break;
@@ -354,7 +357,7 @@ function newBid(serverBid, rtbBid, bidderRequest) {
354
357
 
355
358
  if (jsTrackers == undefined) {
356
359
  jsTrackers = jsTrackerDisarmed;
357
- } else if (utils.isStr(jsTrackers)) {
360
+ } else if (isStr(jsTrackers)) {
358
361
  jsTrackers = [jsTrackers, jsTrackerDisarmed];
359
362
  } else {
360
363
  jsTrackers.push(jsTrackerDisarmed);
@@ -402,10 +405,10 @@ function newBid(serverBid, rtbBid, bidderRequest) {
402
405
  });
403
406
  try {
404
407
  const url = rtbBid.rtb.trackers[0].impression_urls[0];
405
- const tracker = utils.createTrackPixelHtml(url);
408
+ const tracker = createTrackPixelHtml(url);
406
409
  bid.ad += tracker;
407
410
  } catch (error) {
408
- utils.logError('Error appending tracking pixel', error);
411
+ logError('Error appending tracking pixel', error);
409
412
  }
410
413
  }
411
414
 
@@ -449,8 +452,8 @@ function bidToTag(bid) {
449
452
  if (bid.params.externalImpId) {
450
453
  tag.external_imp_id = bid.params.externalImpId;
451
454
  }
452
- if (!utils.isEmpty(bid.params.keywords)) {
453
- let keywords = utils.transformBidderParamKeywords(bid.params.keywords);
455
+ if (!isEmpty(bid.params.keywords)) {
456
+ let keywords = transformBidderParamKeywords(bid.params.keywords);
454
457
 
455
458
  if (keywords.length > 0) {
456
459
  keywords.forEach(deleteValues);
@@ -461,7 +464,7 @@ function bidToTag(bid) {
461
464
  tag.category = bid.params.category;
462
465
  }
463
466
 
464
- if (bid.mediaType === NATIVE || utils.deepAccess(bid, `mediaTypes.${NATIVE}`)) {
467
+ if (bid.mediaType === NATIVE || deepAccess(bid, `mediaTypes.${NATIVE}`)) {
465
468
  tag.ad_types.push(NATIVE);
466
469
  if (tag.sizes.length === 0) {
467
470
  tag.sizes = transformSizes([1, 1]);
@@ -473,8 +476,8 @@ function bidToTag(bid) {
473
476
  }
474
477
  }
475
478
 
476
- const videoMediaType = utils.deepAccess(bid, `mediaTypes.${VIDEO}`);
477
- const context = utils.deepAccess(bid, 'mediaTypes.video.context');
479
+ const videoMediaType = deepAccess(bid, `mediaTypes.${VIDEO}`);
480
+ const context = deepAccess(bid, 'mediaTypes.video.context');
478
481
 
479
482
  tag.hb_source = 1;
480
483
  if (bid.mediaType === VIDEO || videoMediaType) {
@@ -499,7 +502,7 @@ function bidToTag(bid) {
499
502
  }
500
503
 
501
504
  if (
502
- (utils.isEmpty(bid.mediaType) && utils.isEmpty(bid.mediaTypes)) ||
505
+ (isEmpty(bid.mediaType) && isEmpty(bid.mediaTypes)) ||
503
506
  (bid.mediaType === BANNER || (bid.mediaTypes && bid.mediaTypes[BANNER]))
504
507
  ) {
505
508
  tag.ad_types.push(BANNER);
@@ -513,8 +516,8 @@ function transformSizes(requestSizes) {
513
516
  let sizes = [];
514
517
  let sizeObj = {};
515
518
 
516
- if (utils.isArray(requestSizes) && requestSizes.length === 2 &&
517
- !utils.isArray(requestSizes[0])) {
519
+ if (isArray(requestSizes) && requestSizes.length === 2 &&
520
+ !isArray(requestSizes[0])) {
518
521
  sizeObj.width = parseInt(requestSizes[0], 10);
519
522
  sizeObj.height = parseInt(requestSizes[1], 10);
520
523
  sizes.push(sizeObj);
@@ -575,7 +578,7 @@ function buildNativeRequest(params) {
575
578
  const isImageAsset = !!(requestKey === NATIVE_MAPPING.image.serverName || requestKey === NATIVE_MAPPING.icon.serverName);
576
579
  if (isImageAsset && request[requestKey].sizes) {
577
580
  let sizes = request[requestKey].sizes;
578
- if (utils.isArrayOfNums(sizes) || (utils.isArray(sizes) && sizes.length > 0 && sizes.every(sz => utils.isArrayOfNums(sz)))) {
581
+ if (isArrayOfNums(sizes) || (isArray(sizes) && sizes.length > 0 && sizes.every(sz => isArrayOfNums(sz)))) {
579
582
  request[requestKey].sizes = transformSizes(request[requestKey].sizes);
580
583
  }
581
584
  }
@@ -1,5 +1,5 @@
1
1
  // ADRIVER BID ADAPTER for Prebid 1.13
2
- import * as utils from '../src/utils.js';
2
+ import { logInfo, getWindowLocation, getBidIdParameter, _each } from '../src/utils.js';
3
3
  import {registerBidder} from '../src/adapters/bidderFactory.js';
4
4
 
5
5
  const BIDDER_CODE = 'adriver';
@@ -21,12 +21,12 @@ export const spec = {
21
21
  },
22
22
 
23
23
  buildRequests: function (validBidRequests, bidderRequest) {
24
- utils.logInfo('validBidRequests', validBidRequests);
24
+ logInfo('validBidRequests', validBidRequests);
25
25
 
26
- let win = utils.getWindowLocation();
26
+ let win = getWindowLocation();
27
27
  let customID = Math.round(Math.random() * 999999999) + '-' + Math.round(new Date() / 1000) + '-1-46-';
28
- let siteId = utils.getBidIdParameter('siteid', validBidRequests[0].params) + '';
29
- let currency = utils.getBidIdParameter('currency', validBidRequests[0].params);
28
+ let siteId = getBidIdParameter('siteid', validBidRequests[0].params) + '';
29
+ let currency = getBidIdParameter('currency', validBidRequests[0].params);
30
30
  currency = 'RUB';
31
31
 
32
32
  let timeout = null;
@@ -58,8 +58,8 @@ export const spec = {
58
58
  'imp': []
59
59
  };
60
60
 
61
- utils._each(validBidRequests, (bid) => {
62
- utils._each(bid.sizes, (sizes) => {
61
+ _each(validBidRequests, (bid) => {
62
+ _each(bid.sizes, (sizes) => {
63
63
  let width;
64
64
  let height;
65
65
  let par;
@@ -67,7 +67,7 @@ export const spec = {
67
67
  let floorAndCurrency = _getFloor(bid, currency, sizes);
68
68
 
69
69
  let bidFloor = floorAndCurrency.floor;
70
- let dealId = utils.getBidIdParameter('dealid', bid.params);
70
+ let dealId = getBidIdParameter('dealid', bid.params);
71
71
  if (typeof sizes[0] === 'number' && typeof sizes[1] === 'number') {
72
72
  width = sizes[0];
73
73
  height = sizes[1];
@@ -93,7 +93,7 @@ export const spec = {
93
93
  }]
94
94
  };
95
95
  }
96
- utils.logInfo('par', par);
96
+ logInfo('par', par);
97
97
  payload.imp.push(par);
98
98
  });
99
99
  });
@@ -108,11 +108,11 @@ export const spec = {
108
108
  },
109
109
 
110
110
  interpretResponse: function (serverResponse, bidRequest) {
111
- utils.logInfo('serverResponse.body.seatbid', serverResponse.body.seatbid);
111
+ logInfo('serverResponse.body.seatbid', serverResponse.body.seatbid);
112
112
  const bidResponses = [];
113
113
  let nurl = 0;
114
- utils._each(serverResponse.body.seatbid, (seatbid) => {
115
- utils.logInfo('_each', seatbid);
114
+ _each(serverResponse.body.seatbid, (seatbid) => {
115
+ logInfo('_each', seatbid);
116
116
  var bid = seatbid.bid[0];
117
117
  if (bid.nurl !== undefined) {
118
118
  nurl = bid.nurl.split('://');
@@ -135,7 +135,7 @@ export const spec = {
135
135
  },
136
136
  ad: '<IFRAME SRC="' + bid.nurl + '" FRAMEBORDER="0" SCROLLING="no" MARGINHEIGHT="0" MARGINWIDTH="0" TOPMARGIN="0" LEFTMARGIN="0" ALLOWTRANSPARENCY="true" STYLE ="WIDTH:' + bid.w + 'px; HEIGHT:' + bid.h + 'px"></IFRAME>'
137
137
  };
138
- utils.logInfo('bidResponse', bidResponse);
138
+ logInfo('bidResponse', bidResponse);
139
139
  bidResponses.push(bidResponse);
140
140
  }
141
141
  });
@@ -1,4 +1,4 @@
1
- import * as utils from '../src/utils.js';
1
+ import { deepAccess, isArray, chunk, _map, flatten, logError, parseSizesInput } from '../src/utils.js';
2
2
  import { registerBidder } from '../src/adapters/bidderFactory.js';
3
3
  import { BANNER, VIDEO } from '../src/mediaTypes.js';
4
4
  import { config } from '../src/config.js';
@@ -13,7 +13,7 @@ export const spec = {
13
13
  code: BIDDER_CODE,
14
14
  supportedMediaTypes: [VIDEO, BANNER],
15
15
  isBidRequestValid: function (bid) {
16
- return !!utils.deepAccess(bid, 'params.aid');
16
+ return !!deepAccess(bid, 'params.aid');
17
17
  },
18
18
  getUserSyncs: function (syncOptions, serverResponses) {
19
19
  const syncs = [];
@@ -42,9 +42,9 @@ export const spec = {
42
42
  }
43
43
 
44
44
  if (syncOptions.pixelEnabled || syncOptions.iframeEnabled) {
45
- utils.isArray(serverResponses) && serverResponses.forEach((response) => {
45
+ isArray(serverResponses) && serverResponses.forEach((response) => {
46
46
  if (response.body) {
47
- if (utils.isArray(response.body)) {
47
+ if (isArray(response.body)) {
48
48
  response.body.forEach(b => {
49
49
  addSyncs(b);
50
50
  })
@@ -59,10 +59,10 @@ export const spec = {
59
59
 
60
60
  buildRequests: function (bidRequests, adapterRequest) {
61
61
  const adapterSettings = config.getConfig(adapterRequest.bidderCode)
62
- const chunkSize = utils.deepAccess(adapterSettings, 'chunkSize', 10);
62
+ const chunkSize = deepAccess(adapterSettings, 'chunkSize', 10);
63
63
  const { tag, bids } = bidToTag(bidRequests, adapterRequest);
64
- const bidChunks = utils.chunk(bids, chunkSize);
65
- return utils._map(bidChunks, (bids) => {
64
+ const bidChunks = chunk(bids, chunkSize);
65
+ return _map(bidChunks, (bids) => {
66
66
  return {
67
67
  data: Object.assign({}, tag, { BidRequests: bids }),
68
68
  adapterRequest,
@@ -75,12 +75,12 @@ export const spec = {
75
75
  serverResponse = serverResponse.body;
76
76
  let bids = [];
77
77
 
78
- if (!utils.isArray(serverResponse)) {
78
+ if (!isArray(serverResponse)) {
79
79
  return parseResponse(serverResponse, adapterRequest);
80
80
  }
81
81
 
82
82
  serverResponse.forEach(serverBidResponse => {
83
- bids = utils.flatten(bids, parseResponse(serverBidResponse, adapterRequest));
83
+ bids = flatten(bids, parseResponse(serverBidResponse, adapterRequest));
84
84
  });
85
85
 
86
86
  return bids;
@@ -88,14 +88,14 @@ export const spec = {
88
88
  };
89
89
 
90
90
  function parseResponse(serverResponse, adapterRequest) {
91
- const isInvalidValidResp = !serverResponse || !utils.isArray(serverResponse.bids);
91
+ const isInvalidValidResp = !serverResponse || !isArray(serverResponse.bids);
92
92
  const bids = [];
93
93
 
94
94
  if (isInvalidValidResp) {
95
95
  const extMessage = serverResponse && serverResponse.ext && serverResponse.ext.message ? `: ${serverResponse.ext.message}` : '';
96
96
  const errorMessage = `in response for ${adapterRequest.bidderCode} adapter ${extMessage}`;
97
97
 
98
- utils.logError(errorMessage);
98
+ logError(errorMessage);
99
99
 
100
100
  return bids;
101
101
  }
@@ -117,23 +117,23 @@ function parseResponse(serverResponse, adapterRequest) {
117
117
 
118
118
  function bidToTag(bidRequests, adapterRequest) {
119
119
  const tag = {
120
- Domain: utils.deepAccess(adapterRequest, 'refererInfo.referer')
120
+ Domain: deepAccess(adapterRequest, 'refererInfo.referer')
121
121
  };
122
122
  if (config.getConfig('coppa') === true) {
123
123
  tag.Coppa = 1;
124
124
  }
125
- if (utils.deepAccess(adapterRequest, 'gdprConsent.gdprApplies')) {
125
+ if (deepAccess(adapterRequest, 'gdprConsent.gdprApplies')) {
126
126
  tag.GDPR = 1;
127
- tag.GDPRConsent = utils.deepAccess(adapterRequest, 'gdprConsent.consentString');
127
+ tag.GDPRConsent = deepAccess(adapterRequest, 'gdprConsent.consentString');
128
128
  }
129
- if (utils.deepAccess(adapterRequest, 'uspConsent')) {
130
- tag.USP = utils.deepAccess(adapterRequest, 'uspConsent');
129
+ if (deepAccess(adapterRequest, 'uspConsent')) {
130
+ tag.USP = deepAccess(adapterRequest, 'uspConsent');
131
131
  }
132
- if (utils.deepAccess(bidRequests[0], 'schain')) {
133
- tag.Schain = utils.deepAccess(bidRequests[0], 'schain');
132
+ if (deepAccess(bidRequests[0], 'schain')) {
133
+ tag.Schain = deepAccess(bidRequests[0], 'schain');
134
134
  }
135
- if (utils.deepAccess(bidRequests[0], 'userId')) {
136
- tag.UserIds = utils.deepAccess(bidRequests[0], 'userId');
135
+ if (deepAccess(bidRequests[0], 'userId')) {
136
+ tag.UserIds = deepAccess(bidRequests[0], 'userId');
137
137
  }
138
138
 
139
139
  const bids = []
@@ -147,19 +147,19 @@ function bidToTag(bidRequests, adapterRequest) {
147
147
  }
148
148
 
149
149
  function prepareBidRequests(bidReq) {
150
- const mediaType = utils.deepAccess(bidReq, 'mediaTypes.video') ? VIDEO : DISPLAY;
151
- const sizes = mediaType === VIDEO ? utils.deepAccess(bidReq, 'mediaTypes.video.playerSize') : utils.deepAccess(bidReq, 'mediaTypes.banner.sizes');
150
+ const mediaType = deepAccess(bidReq, 'mediaTypes.video') ? VIDEO : DISPLAY;
151
+ const sizes = mediaType === VIDEO ? deepAccess(bidReq, 'mediaTypes.video.playerSize') : deepAccess(bidReq, 'mediaTypes.banner.sizes');
152
152
  const bidReqParams = {
153
153
  'CallbackId': bidReq.bidId,
154
154
  'Aid': bidReq.params.aid,
155
155
  'AdType': mediaType,
156
- 'Sizes': utils.parseSizesInput(sizes).join(',')
156
+ 'Sizes': parseSizesInput(sizes).join(',')
157
157
  };
158
158
  return bidReqParams;
159
159
  }
160
160
 
161
161
  function getMediaType(bidderRequest) {
162
- return utils.deepAccess(bidderRequest, 'mediaTypes.video') ? VIDEO : BANNER;
162
+ return deepAccess(bidderRequest, 'mediaTypes.video') ? VIDEO : BANNER;
163
163
  }
164
164
 
165
165
  function createBid(bidResponse, bidRequest) {
@@ -1,4 +1,4 @@
1
- import * as utils from '../src/utils.js';
1
+ import { deepAccess, isArray, chunk, _map, flatten, convertTypes, parseSizesInput } from '../src/utils.js';
2
2
  import { registerBidder } from '../src/adapters/bidderFactory.js';
3
3
  import { ADPOD, BANNER, VIDEO } from '../src/mediaTypes.js';
4
4
  import { config } from '../src/config.js';
@@ -44,7 +44,7 @@ export const spec = {
44
44
  ],
45
45
  supportedMediaTypes: [VIDEO, BANNER],
46
46
  isBidRequestValid: function (bid) {
47
- return !!utils.deepAccess(bid, 'params.aid');
47
+ return !!deepAccess(bid, 'params.aid');
48
48
  },
49
49
  getUserSyncs: function (syncOptions, serverResponses) {
50
50
  const syncs = [];
@@ -73,9 +73,9 @@ export const spec = {
73
73
  }
74
74
 
75
75
  if (syncOptions.pixelEnabled || syncOptions.iframeEnabled) {
76
- utils.isArray(serverResponses) && serverResponses.forEach((response) => {
76
+ isArray(serverResponses) && serverResponses.forEach((response) => {
77
77
  if (response.body) {
78
- if (utils.isArray(response.body)) {
78
+ if (isArray(response.body)) {
79
79
  response.body.forEach(b => {
80
80
  addSyncs(b);
81
81
  })
@@ -94,10 +94,10 @@ export const spec = {
94
94
  */
95
95
  buildRequests: function (bidRequests, adapterRequest) {
96
96
  const adapterSettings = config.getConfig(adapterRequest.bidderCode)
97
- const chunkSize = utils.deepAccess(adapterSettings, 'chunkSize', 10);
97
+ const chunkSize = deepAccess(adapterSettings, 'chunkSize', 10);
98
98
  const { tag, bids } = bidToTag(bidRequests, adapterRequest);
99
- const bidChunks = utils.chunk(bids, chunkSize);
100
- return utils._map(bidChunks, (bids) => {
99
+ const bidChunks = chunk(bids, chunkSize);
100
+ return _map(bidChunks, (bids) => {
101
101
  return {
102
102
  data: Object.assign({}, tag, { BidRequests: bids }),
103
103
  adapterRequest,
@@ -117,26 +117,26 @@ export const spec = {
117
117
  serverResponse = serverResponse.body;
118
118
  let bids = [];
119
119
 
120
- if (!utils.isArray(serverResponse)) {
120
+ if (!isArray(serverResponse)) {
121
121
  return parseRTBResponse(serverResponse, adapterRequest);
122
122
  }
123
123
 
124
124
  serverResponse.forEach(serverBidResponse => {
125
- bids = utils.flatten(bids, parseRTBResponse(serverBidResponse, adapterRequest));
125
+ bids = flatten(bids, parseRTBResponse(serverBidResponse, adapterRequest));
126
126
  });
127
127
 
128
128
  return bids;
129
129
  },
130
130
 
131
131
  transformBidParams(params) {
132
- return utils.convertTypes({
132
+ return convertTypes({
133
133
  'aid': 'number',
134
134
  }, params);
135
135
  }
136
136
  };
137
137
 
138
138
  function parseRTBResponse(serverResponse, adapterRequest) {
139
- const isEmptyResponse = !serverResponse || !utils.isArray(serverResponse.bids);
139
+ const isEmptyResponse = !serverResponse || !isArray(serverResponse.bids);
140
140
  const bids = [];
141
141
 
142
142
  if (isEmptyResponse) {
@@ -161,26 +161,26 @@ function parseRTBResponse(serverResponse, adapterRequest) {
161
161
  function bidToTag(bidRequests, adapterRequest) {
162
162
  // start publisher env
163
163
  const tag = {
164
- Domain: utils.deepAccess(adapterRequest, 'refererInfo.referer')
164
+ Domain: deepAccess(adapterRequest, 'refererInfo.referer')
165
165
  };
166
166
  if (config.getConfig('coppa') === true) {
167
167
  tag.Coppa = 1;
168
168
  }
169
- if (utils.deepAccess(adapterRequest, 'gdprConsent.gdprApplies')) {
169
+ if (deepAccess(adapterRequest, 'gdprConsent.gdprApplies')) {
170
170
  tag.GDPR = 1;
171
- tag.GDPRConsent = utils.deepAccess(adapterRequest, 'gdprConsent.consentString');
171
+ tag.GDPRConsent = deepAccess(adapterRequest, 'gdprConsent.consentString');
172
172
  }
173
- if (utils.deepAccess(adapterRequest, 'uspConsent')) {
174
- tag.USP = utils.deepAccess(adapterRequest, 'uspConsent');
173
+ if (deepAccess(adapterRequest, 'uspConsent')) {
174
+ tag.USP = deepAccess(adapterRequest, 'uspConsent');
175
175
  }
176
- if (utils.deepAccess(bidRequests[0], 'schain')) {
177
- tag.Schain = utils.deepAccess(bidRequests[0], 'schain');
176
+ if (deepAccess(bidRequests[0], 'schain')) {
177
+ tag.Schain = deepAccess(bidRequests[0], 'schain');
178
178
  }
179
- if (utils.deepAccess(bidRequests[0], 'userId')) {
180
- tag.UserIds = utils.deepAccess(bidRequests[0], 'userId');
179
+ if (deepAccess(bidRequests[0], 'userId')) {
180
+ tag.UserIds = deepAccess(bidRequests[0], 'userId');
181
181
  }
182
- if (utils.deepAccess(bidRequests[0], 'userIdAsEids')) {
183
- tag.UserEids = utils.deepAccess(bidRequests[0], 'userIdAsEids');
182
+ if (deepAccess(bidRequests[0], 'userIdAsEids')) {
183
+ tag.UserEids = deepAccess(bidRequests[0], 'userIdAsEids');
184
184
  }
185
185
  if (window.adtDmp && window.adtDmp.ready) {
186
186
  tag.DMPId = window.adtDmp.getUID();
@@ -203,13 +203,13 @@ function bidToTag(bidRequests, adapterRequest) {
203
203
  * @returns {object}
204
204
  */
205
205
  function prepareBidRequests(bidReq) {
206
- const mediaType = utils.deepAccess(bidReq, 'mediaTypes.video') ? VIDEO : DISPLAY;
207
- const sizes = mediaType === VIDEO ? utils.deepAccess(bidReq, 'mediaTypes.video.playerSize') : utils.deepAccess(bidReq, 'mediaTypes.banner.sizes');
206
+ const mediaType = deepAccess(bidReq, 'mediaTypes.video') ? VIDEO : DISPLAY;
207
+ const sizes = mediaType === VIDEO ? deepAccess(bidReq, 'mediaTypes.video.playerSize') : deepAccess(bidReq, 'mediaTypes.banner.sizes');
208
208
  const bidReqParams = {
209
209
  'CallbackId': bidReq.bidId,
210
210
  'Aid': bidReq.params.aid,
211
211
  'AdType': mediaType,
212
- 'Sizes': utils.parseSizesInput(sizes).join(',')
212
+ 'Sizes': parseSizesInput(sizes).join(',')
213
213
  };
214
214
 
215
215
  bidReqParams.PlacementId = bidReq.adUnitCode;
@@ -220,9 +220,9 @@ function prepareBidRequests(bidReq) {
220
220
  bidReqParams.PlacementId = bidReq.params.vpb_placement_id;
221
221
  }
222
222
  if (mediaType === VIDEO) {
223
- const context = utils.deepAccess(bidReq, 'mediaTypes.video.context');
223
+ const context = deepAccess(bidReq, 'mediaTypes.video.context');
224
224
  if (context === ADPOD) {
225
- bidReqParams.Adpod = utils.deepAccess(bidReq, 'mediaTypes.video');
225
+ bidReqParams.Adpod = deepAccess(bidReq, 'mediaTypes.video');
226
226
  }
227
227
  }
228
228
  return bidReqParams;
@@ -234,7 +234,7 @@ function prepareBidRequests(bidReq) {
234
234
  * @returns {object}
235
235
  */
236
236
  function getMediaType(bidderRequest) {
237
- return utils.deepAccess(bidderRequest, 'mediaTypes.video') ? VIDEO : BANNER;
237
+ return deepAccess(bidderRequest, 'mediaTypes.video') ? VIDEO : BANNER;
238
238
  }
239
239
 
240
240
  /**
@@ -245,7 +245,7 @@ function getMediaType(bidderRequest) {
245
245
  */
246
246
  function createBid(bidResponse, bidRequest) {
247
247
  const mediaType = getMediaType(bidRequest)
248
- const context = utils.deepAccess(bidRequest, 'mediaTypes.video.context');
248
+ const context = deepAccess(bidRequest, 'mediaTypes.video.context');
249
249
  const bid = {
250
250
  requestId: bidResponse.requestId,
251
251
  creativeId: bidResponse.cmpId,