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,6 +1,5 @@
1
+ import { getBidIdParameter, isFn, isInteger } from '../src/utils.js';
1
2
  import { registerBidder } from '../src/adapters/bidderFactory.js';
2
- import { isInteger } from '../src/utils.js';
3
- import * as utils from '../src/utils.js';
4
3
 
5
4
  const BIDDER_CODE = 'getintent';
6
5
  const IS_NET_REVENUE = true;
@@ -124,7 +123,7 @@ function buildGiBidRequest(bidRequest) {
124
123
  giBidRequest.size = produceSize(bidRequest.sizes);
125
124
  }
126
125
 
127
- const currency = utils.getBidIdParameter(CURRENCY_PARAM, bidRequest.params);
126
+ const currency = getBidIdParameter(CURRENCY_PARAM, bidRequest.params);
128
127
  const floorInfo = getBidFloor(bidRequest, currency);
129
128
  if (floorInfo.floor) {
130
129
  giBidRequest[FLOOR_PARAM] = floorInfo.floor;
@@ -143,7 +142,7 @@ function buildGiBidRequest(bidRequest) {
143
142
  function getBidFloor(bidRequest, currency) {
144
143
  let floorInfo = {};
145
144
 
146
- if (utils.isFn(bidRequest.getFloor)) {
145
+ if (isFn(bidRequest.getFloor)) {
147
146
  floorInfo = bidRequest.getFloor({
148
147
  currency: currency || DEFAULT_CURRENCY,
149
148
  mediaType: bidRequest.mediaType,
@@ -1,69 +1,181 @@
1
- import { registerBidder } from '../src/adapters/bidderFactory.js';
2
- import { BANNER } from '../src/mediaTypes.js';
1
+ import { BANNER } from '../src/mediaTypes.js'
2
+ import { getStorageManager } from '../src/storageManager.js'
3
+ import { isArray } from '../src/utils.js'
4
+ import { registerBidder } from '../src/adapters/bidderFactory.js'
3
5
 
4
- const BIDDER_CODE = 'glimpse';
6
+ const storageManager = getStorageManager()
5
7
 
6
- function transformEachBidResponse(glimpseBid) {
7
- const bid = glimpseBid;
8
- bid.meta = { advertiserDomains: [] };
9
-
10
- if (glimpseBid.adomain) {
11
- bid.meta.advertiserDomains = glimpseBid.adomain;
12
- }
13
-
14
- return bid;
8
+ const BIDDER_CODE = 'glimpse'
9
+ const ENDPOINT = 'https://api.glimpsevault.io/ads/serving/public/v1/prebid'
10
+ const LOCAL_STORAGE_KEY = {
11
+ glimpse: {
12
+ jwt: 'gp_vault_jwt',
13
+ },
15
14
  }
16
15
 
17
16
  export const spec = {
18
17
  code: BIDDER_CODE,
19
- url: 'https://api.glimpseprotocol.io/cloud/v1/vault/prebid',
20
18
  supportedMediaTypes: [BANNER],
21
19
 
20
+ /**
21
+ * Determines whether or not the given bid request is valid
22
+ * @param bid {BidRequest} The bid to validate
23
+ * @return {boolean}
24
+ */
22
25
  isBidRequestValid: (bid) => {
23
- try {
24
- const { placementId } = bid.params;
25
- return typeof placementId === 'string' && placementId.length > 0;
26
- } catch (error) {
27
- return false;
28
- }
26
+ return (
27
+ hasValue(bid) &&
28
+ hasValue(bid.params) &&
29
+ hasStringValue(bid.params.placementId)
30
+ )
29
31
  },
30
32
 
33
+ /**
34
+ * Builds http request for Glimpse bids
35
+ * @param validBidRequests {BidRequest[]}
36
+ * @param bidderRequest {BidderRequest}
37
+ * @returns {ServerRequest}
38
+ */
31
39
  buildRequests: (validBidRequests, bidderRequest) => {
32
- const { url, code: bidderCode } = spec;
33
-
34
- const bids = validBidRequests.map((request) => {
35
- delete request.mediaTypes;
36
- return request;
37
- });
40
+ const networkId = window.networkId || -1
41
+ const bids = validBidRequests.map(processBidRequest)
42
+ const referer = getReferer(bidderRequest)
43
+ const gdprConsent = getGdprConsentChoice(bidderRequest)
44
+ const jwt = getVaultJwt()
38
45
 
39
- const sdk = {
40
- source: 'pbjs',
41
- version: '$prebid.version$',
42
- };
43
-
44
- const payload = {
45
- ...bidderRequest,
46
- bidderCode,
47
- bids,
48
- sdk,
49
- };
46
+ const data = {
47
+ auth: jwt,
48
+ data: {
49
+ bidderCode: spec.code,
50
+ networkId,
51
+ bids,
52
+ referer,
53
+ gdprConsent,
54
+ }
55
+ }
50
56
 
51
57
  return {
52
58
  method: 'POST',
53
- url,
54
- data: JSON.stringify(payload),
55
- };
59
+ url: ENDPOINT,
60
+ data: JSON.stringify(data),
61
+ options: {},
62
+ }
56
63
  },
57
64
 
58
- interpretResponse: (serverResponse, _) => {
59
- let bids = [];
60
- try {
61
- const { body } = serverResponse;
62
- bids = body.map(transformEachBidResponse);
63
- } catch (error) {}
65
+ /**
66
+ * Parse response from Glimpse server
67
+ * @param bidResponse {ServerResponse}
68
+ * @param bidRequest {BidRequest}
69
+ * @returns {Bid[]}
70
+ */
71
+ interpretResponse: (bidResponse, bidRequest) => {
72
+ const isValidResponse = isValidBidResponse(bidResponse)
73
+
74
+ if (isValidResponse) {
75
+ const {auth, data} = bidResponse.body
76
+ setVaultJwt(auth)
77
+ return data.bids
78
+ }
64
79
 
65
- return bids;
80
+ return []
66
81
  },
67
- };
82
+ }
83
+
84
+ function processBidRequest(bidRequest) {
85
+ const sizes = normalizeSizes(bidRequest.sizes)
86
+ const keywords = bidRequest.params.keywords || []
87
+
88
+ return {
89
+ bidId: bidRequest.bidId,
90
+ placementId: bidRequest.params.placementId,
91
+ unitCode: bidRequest.adUnitCode,
92
+ sizes,
93
+ keywords,
94
+ }
95
+ }
96
+
97
+ function normalizeSizes(sizes) {
98
+ const isSingleSize =
99
+ isArray(sizes) &&
100
+ sizes.length === 2 &&
101
+ !isArray(sizes[0]) &&
102
+ !isArray(sizes[1])
103
+
104
+ if (isSingleSize) {
105
+ return [sizes]
106
+ }
107
+
108
+ return sizes
109
+ }
110
+
111
+ function getReferer(bidderRequest) {
112
+ const hasReferer =
113
+ hasValue(bidderRequest) &&
114
+ hasValue(bidderRequest.refererInfo) &&
115
+ hasStringValue(bidderRequest.refererInfo.referer)
116
+
117
+ if (hasReferer) {
118
+ return bidderRequest.refererInfo.referer
119
+ }
120
+
121
+ return ''
122
+ }
123
+
124
+ function getGdprConsentChoice(bidderRequest) {
125
+ const hasGdprConsent =
126
+ hasValue(bidderRequest) &&
127
+ hasValue(bidderRequest.gdprConsent)
128
+
129
+ if (hasGdprConsent) {
130
+ return bidderRequest.gdprConsent
131
+ }
132
+
133
+ return {
134
+ consentString: '',
135
+ vendorData: {},
136
+ gdprApplies: false,
137
+ }
138
+ }
139
+
140
+ function setVaultJwt(auth) {
141
+ storageManager.setDataInLocalStorage(LOCAL_STORAGE_KEY.glimpse.jwt, auth)
142
+ }
143
+
144
+ function getVaultJwt() {
145
+ return storageManager.getDataFromLocalStorage(LOCAL_STORAGE_KEY.glimpse.jwt) || ''
146
+ }
147
+
148
+ function isValidBidResponse(bidResponse) {
149
+ return (
150
+ hasValue(bidResponse) &&
151
+ hasValue(bidResponse.body) &&
152
+ hasValue(bidResponse.body.data) &&
153
+ hasArrayValue(bidResponse.body.data.bids) &&
154
+ hasStringValue(bidResponse.body.auth)
155
+ )
156
+ }
157
+
158
+ function hasValue(value) {
159
+ return (
160
+ value !== undefined &&
161
+ value !== null
162
+ )
163
+ }
164
+
165
+ function hasStringValue(value) {
166
+ return (
167
+ hasValue(value) &&
168
+ typeof value === 'string' &&
169
+ value.length > 0
170
+ )
171
+ }
172
+
173
+ function hasArrayValue(value) {
174
+ return (
175
+ hasValue(value) &&
176
+ isArray(value) &&
177
+ value.length > 0
178
+ )
179
+ }
68
180
 
69
- registerBidder(spec);
181
+ registerBidder(spec)
@@ -3,7 +3,7 @@
3
3
  ```
4
4
  Module Name: Glimpse Protocol Bid Adapter
5
5
  Module Type: Bidder Adapter
6
- Maintainer: hello@glimpseprotocol.io
6
+ Maintainer: publisher@glimpseprotocol.io
7
7
  ```
8
8
 
9
9
  # Description
@@ -11,12 +11,12 @@ Maintainer: hello@glimpseprotocol.io
11
11
  This module connects publishers to Glimpse Protocol's demand sources via Prebid.js. Our innovative marketplace protects
12
12
  consumer privacy while allowing precise targeting. It is compliant with GDPR, DPA and CCPA.
13
13
 
14
- This adapter supports Banner.
14
+ The Glimpse Adapter supports banner formats.
15
15
 
16
16
  # Test Parameters
17
17
 
18
18
  ```javascript
19
- var adUnits = [
19
+ const adUnits = [
20
20
  {
21
21
  code: 'banner-div-a',
22
22
  mediaTypes: {
@@ -24,78 +24,15 @@ var adUnits = [
24
24
  sizes: [[300, 250]],
25
25
  },
26
26
  },
27
- bids: [
28
- {
29
- bidder: 'glimpse',
30
- params: {
31
- placementId: 'glimpse-demo-300x250',
27
+ bids: [{
28
+ bidder: 'glimpse',
29
+ params: {
30
+ placementId: 'e53a7f564f8f44cc913b',
31
+ keywords: {
32
+ country: 'uk',
32
33
  },
33
34
  },
34
- ],
35
+ }],
35
36
  },
36
- {
37
- code: 'banner-div-b',
38
- mediaTypes: {
39
- banner: {
40
- sizes: [[320, 50]],
41
- },
42
- },
43
- bids: [
44
- {
45
- bidder: 'glimpse',
46
- params: {
47
- placementId: 'glimpse-demo-320x50',
48
- },
49
- },
50
- ],
51
- },
52
- {
53
- code: 'banner-div-c',
54
- mediaTypes: {
55
- banner: {
56
- sizes: [[970, 250]],
57
- },
58
- },
59
- bids: [
60
- {
61
- bidder: 'glimpse',
62
- params: {
63
- placementId: 'glimpse-demo-970x250',
64
- },
65
- },
66
- ],
67
- },
68
- {
69
- code: 'banner-div-d',
70
- mediaTypes: {
71
- banner: {
72
- sizes: [[728, 90]],
73
- },
74
- },
75
- bids: [
76
- {
77
- bidder: 'glimpse',
78
- params: {
79
- placementId: 'glimpse-demo-728x90',
80
- },
81
- },
82
- ],
83
- },
84
- {
85
- code: 'banner-div-e',
86
- mediaTypes: {
87
- banner: {
88
- sizes: [[300, 600]],
89
- },
90
- },
91
- bids: [
92
- {
93
- bidder: 'glimpse',
94
- params: {
95
- placementId: 'glimpse-demo-300x600',
96
- },
97
- },
98
- ],
99
- },
100
- ];
37
+ ]
101
38
  ```
@@ -1,5 +1,5 @@
1
+ import { getDNT, getBidIdParameter, tryAppendQueryString, isEmpty, createTrackPixelHtml, logError, deepSetValue } from '../src/utils.js';
1
2
  import { registerBidder } from '../src/adapters/bidderFactory.js';
2
- import * as utils from '../src/utils.js';
3
3
  import { config } from '../src/config.js';
4
4
  import { BANNER } from '../src/mediaTypes.js';
5
5
  import { getStorageManager } from '../src/storageManager.js';
@@ -33,7 +33,7 @@ export const spec = {
33
33
 
34
34
  const urlInfo = getUrlInfo(bidderRequest.refererInfo);
35
35
  const cur = getCurrencyType();
36
- const dnt = utils.getDNT() ? '1' : '0';
36
+ const dnt = getDNT() ? '1' : '0';
37
37
  const imuid = storage.getCookie('_im_uid.1000283') || '';
38
38
 
39
39
  for (let i = 0; i < validBidRequests.length; i++) {
@@ -43,17 +43,17 @@ export const spec = {
43
43
  const tid = request.transactionId;
44
44
  const bid = request.bidId;
45
45
  const ver = '$prebid.version$';
46
- const sid = utils.getBidIdParameter('sid', request.params);
47
-
48
- queryString = utils.tryAppendQueryString(queryString, 'tid', tid);
49
- queryString = utils.tryAppendQueryString(queryString, 'bid', bid);
50
- queryString = utils.tryAppendQueryString(queryString, 'ver', ver);
51
- queryString = utils.tryAppendQueryString(queryString, 'sid', sid);
52
- queryString = utils.tryAppendQueryString(queryString, 'im_uid', imuid);
53
- queryString = utils.tryAppendQueryString(queryString, 'url', urlInfo.url);
54
- queryString = utils.tryAppendQueryString(queryString, 'ref', urlInfo.ref);
55
- queryString = utils.tryAppendQueryString(queryString, 'cur', cur);
56
- queryString = utils.tryAppendQueryString(queryString, 'dnt', dnt);
46
+ const sid = getBidIdParameter('sid', request.params);
47
+
48
+ queryString = tryAppendQueryString(queryString, 'tid', tid);
49
+ queryString = tryAppendQueryString(queryString, 'bid', bid);
50
+ queryString = tryAppendQueryString(queryString, 'ver', ver);
51
+ queryString = tryAppendQueryString(queryString, 'sid', sid);
52
+ queryString = tryAppendQueryString(queryString, 'im_uid', imuid);
53
+ queryString = tryAppendQueryString(queryString, 'url', urlInfo.url);
54
+ queryString = tryAppendQueryString(queryString, 'ref', urlInfo.ref);
55
+ queryString = tryAppendQueryString(queryString, 'cur', cur);
56
+ queryString = tryAppendQueryString(queryString, 'dnt', dnt);
57
57
 
58
58
  bidRequests.push({
59
59
  method: 'GET',
@@ -73,17 +73,17 @@ export const spec = {
73
73
  interpretResponse: function (bidderResponse, requests) {
74
74
  const res = bidderResponse.body;
75
75
 
76
- if (utils.isEmpty(res)) {
76
+ if (isEmpty(res)) {
77
77
  return [];
78
78
  }
79
79
 
80
80
  try {
81
81
  res.imps.forEach(impTracker => {
82
- const tracker = utils.createTrackPixelHtml(impTracker);
82
+ const tracker = createTrackPixelHtml(impTracker);
83
83
  res.ad += tracker;
84
84
  });
85
85
  } catch (error) {
86
- utils.logError('Error appending tracking pixel', error);
86
+ logError('Error appending tracking pixel', error);
87
87
  }
88
88
 
89
89
  const bid = {
@@ -99,7 +99,7 @@ export const spec = {
99
99
  };
100
100
 
101
101
  if (res.adomains) {
102
- utils.deepSetValue(bid, 'meta.advertiserDomains', Array.isArray(res.adomains) ? res.adomains : [res.adomains]);
102
+ deepSetValue(bid, 'meta.advertiserDomains', Array.isArray(res.adomains) ? res.adomains : [res.adomains]);
103
103
  }
104
104
 
105
105
  return [bid];
@@ -1,5 +1,5 @@
1
+ import { _each, parseSizesInput, isEmpty } from '../src/utils.js';
1
2
  import { registerBidder } from '../src/adapters/bidderFactory.js';
2
- import * as utils from '../src/utils.js';
3
3
  import { BANNER } from '../src/mediaTypes.js';
4
4
 
5
5
  const BIDDER_CODE = 'gnet';
@@ -29,7 +29,7 @@ export const spec = {
29
29
  const bidRequests = [];
30
30
  const referer = bidderRequest.refererInfo.referer;
31
31
 
32
- utils._each(validBidRequests, (request) => {
32
+ _each(validBidRequests, (request) => {
33
33
  const data = {};
34
34
 
35
35
  data.referer = referer;
@@ -37,7 +37,7 @@ export const spec = {
37
37
  data.bidId = request.bidId;
38
38
  data.transactionId = request.transactionId;
39
39
 
40
- data.sizes = utils.parseSizesInput(request.sizes);
40
+ data.sizes = parseSizesInput(request.sizes);
41
41
 
42
42
  data.params = request.params;
43
43
 
@@ -70,13 +70,13 @@ export const spec = {
70
70
 
71
71
  const res = serverResponse && serverResponse.body;
72
72
 
73
- if (utils.isEmpty(res)) {
73
+ if (isEmpty(res)) {
74
74
  return [];
75
75
  }
76
76
 
77
77
  if (res.bids) {
78
78
  const bids = [];
79
- utils._each(res.bids, (bidData) => {
79
+ _each(res.bids, (bidData) => {
80
80
  const bid = {
81
81
  requestId: bidData.bidId,
82
82
  cpm: bidData.cpm,
@@ -2,8 +2,8 @@
2
2
  * ga.js - analytics adapter for google analytics
3
3
  */
4
4
 
5
+ import { _each, logMessage } from '../src/utils.js';
5
6
  var events = require('../src/events.js');
6
- var utils = require('../src/utils.js');
7
7
  var CONSTANTS = require('../src/constants.json');
8
8
  var adapterManager = require('../src/adapterManager.js').default;
9
9
 
@@ -54,7 +54,7 @@ adapter.enableAnalytics = function ({ provider, options }) {
54
54
 
55
55
  var existingEvents = events.getEvents();
56
56
 
57
- utils._each(existingEvents, function (eventObj) {
57
+ _each(existingEvents, function (eventObj) {
58
58
  if (typeof eventObj !== 'object') {
59
59
  return;
60
60
  }
@@ -98,12 +98,12 @@ adapter.enableAnalytics = function ({ provider, options }) {
98
98
  sendBidWonToGa(bid);
99
99
  });
100
100
  } else {
101
- utils.logMessage('Prebid.js google analytics disabled by sampling');
101
+ logMessage('Prebid.js google analytics disabled by sampling');
102
102
  }
103
103
 
104
104
  // finally set this function to return log message, prevents multiple adapter listeners
105
105
  this.enableAnalytics = function _enable() {
106
- return utils.logMessage(`Analytics adapter already enabled, unnecessary call to \`enableAnalytics\`.`);
106
+ return logMessage(`Analytics adapter already enabled, unnecessary call to \`enableAnalytics\`.`);
107
107
  };
108
108
  };
109
109
 
@@ -129,7 +129,7 @@ function checkAnalytics() {
129
129
  _enableCheck = false;
130
130
  }
131
131
 
132
- utils.logMessage('event count sent to GA: ' + _eventCount);
132
+ logMessage('event count sent to GA: ' + _eventCount);
133
133
  }
134
134
 
135
135
  function convertToCents(dollars) {
@@ -242,7 +242,7 @@ function sendBidResponseToGa(bid) {
242
242
 
243
243
  function sendBidTimeouts(timedOutBidders) {
244
244
  _analyticsQueue.push(function () {
245
- utils._each(timedOutBidders, function (bidderCode) {
245
+ _each(timedOutBidders, function (bidderCode) {
246
246
  _eventCount++;
247
247
  var bidderName = bidderCode.bidder;
248
248
  window[_gaGlobal](_trackerSend, 'event', _category, 'Timeouts', bidderName, _disableInteraction);
@@ -1,6 +1,6 @@
1
+ import { logMessage, deepSetValue, deepAccess, _map, logWarn } from '../src/utils.js';
1
2
  import { registerBidder } from '../src/adapters/bidderFactory.js';
2
3
  import { BANNER, NATIVE, VIDEO } from '../src/mediaTypes.js';
3
- import * as utils from '../src/utils.js';
4
4
  import { config } from '../src/config.js';
5
5
 
6
6
  const BIDDER_CODE = 'gothamads';
@@ -79,7 +79,7 @@ export const spec = {
79
79
  winTop = window.top;
80
80
  } catch (e) {
81
81
  location = winTop.location;
82
- utils.logMessage(e);
82
+ logMessage(e);
83
83
  };
84
84
 
85
85
  let bids = [];
@@ -110,12 +110,12 @@ export const spec = {
110
110
  };
111
111
 
112
112
  if (bidRequest.gdprConsent && bidRequest.gdprConsent.gdprApplies) {
113
- utils.deepSetValue(data, 'regs.ext.gdpr', bidRequest.gdprConsent.gdprApplies ? 1 : 0);
114
- utils.deepSetValue(data, 'user.ext.consent', bidRequest.gdprConsent.consentString);
113
+ deepSetValue(data, 'regs.ext.gdpr', bidRequest.gdprConsent.gdprApplies ? 1 : 0);
114
+ deepSetValue(data, 'user.ext.consent', bidRequest.gdprConsent.consentString);
115
115
  }
116
116
 
117
117
  if (bidRequest.uspConsent !== undefined) {
118
- utils.deepSetValue(data, 'regs.ext.us_privacy', bidRequest.uspConsent);
118
+ deepSetValue(data, 'regs.ext.us_privacy', bidRequest.uspConsent);
119
119
  }
120
120
 
121
121
  bids.push(data)
@@ -186,7 +186,7 @@ export const spec = {
186
186
  * @returns {boolean}
187
187
  */
188
188
  const checkRequestType = (bidRequest, type) => {
189
- return (typeof utils.deepAccess(bidRequest, `mediaTypes.${type}`) !== 'undefined');
189
+ return (typeof deepAccess(bidRequest, `mediaTypes.${type}`) !== 'undefined');
190
190
  }
191
191
 
192
192
  const parseNative = admObject => {
@@ -246,7 +246,7 @@ const addNativeParameters = bidRequest => {
246
246
  ver: NATIVE_VERSION,
247
247
  };
248
248
 
249
- const assets = utils._map(bidRequest.mediaTypes.native, (bidParams, key) => {
249
+ const assets = _map(bidRequest.mediaTypes.native, (bidParams, key) => {
250
250
  const props = NATIVE_PARAMS[key];
251
251
  const asset = {
252
252
  required: bidParams.required & 1,
@@ -300,7 +300,7 @@ const parseSizes = (bid, mediaType) => {
300
300
  mediaTypes.video.w,
301
301
  mediaTypes.video.h
302
302
  ];
303
- } else if (Array.isArray(utils.deepAccess(bid, 'mediaTypes.video.playerSize')) && bid.mediaTypes.video.playerSize.length === 1) {
303
+ } else if (Array.isArray(deepAccess(bid, 'mediaTypes.video.playerSize')) && bid.mediaTypes.video.playerSize.length === 1) {
304
304
  size = bid.mediaTypes.video.playerSize[0];
305
305
  } else if (Array.isArray(bid.sizes) && bid.sizes.length > 0 && Array.isArray(bid.sizes[0]) && bid.sizes[0].length > 1) {
306
306
  size = bid.sizes[0];
@@ -313,7 +313,7 @@ const parseSizes = (bid, mediaType) => {
313
313
  } else if (Array.isArray(bid.sizes) && bid.sizes.length > 0) {
314
314
  sizes = bid.sizes
315
315
  } else {
316
- utils.logWarn('no sizes are setup or found');
316
+ logWarn('no sizes are setup or found');
317
317
  }
318
318
 
319
319
  return sizes
@@ -1,5 +1,5 @@
1
+ import { isGptPubadsDefined, isAdUnitCodeMatchingSlot, deepAccess, pick, logInfo } from '../src/utils.js';
1
2
  import { config } from '../src/config.js';
2
- import * as utils from '../src/utils.js';
3
3
  import { getHook } from '../src/hook.js';
4
4
  import find from 'core-js-pure/features/array/find.js';
5
5
 
@@ -10,7 +10,7 @@ let hooksAdded = false;
10
10
  export const appendGptSlots = adUnits => {
11
11
  const { customGptSlotMatching } = _currentConfig;
12
12
 
13
- if (!utils.isGptPubadsDefined()) {
13
+ if (!isGptPubadsDefined()) {
14
14
  return;
15
15
  }
16
16
 
@@ -22,7 +22,7 @@ export const appendGptSlots = adUnits => {
22
22
  window.googletag.pubads().getSlots().forEach(slot => {
23
23
  const matchingAdUnitCode = find(Object.keys(adUnitMap), customGptSlotMatching
24
24
  ? customGptSlotMatching(slot)
25
- : utils.isAdUnitCodeMatchingSlot(slot));
25
+ : isAdUnitCodeMatchingSlot(slot));
26
26
 
27
27
  if (matchingAdUnitCode) {
28
28
  const adUnit = adUnitMap[matchingAdUnitCode];
@@ -56,7 +56,7 @@ export const appendPbAdSlot = adUnit => {
56
56
  const { customPbAdSlot } = _currentConfig;
57
57
 
58
58
  if (customPbAdSlot) {
59
- context.pbadslot = customPbAdSlot(adUnit.code, utils.deepAccess(context, 'adserver.adslot'));
59
+ context.pbadslot = customPbAdSlot(adUnit.code, deepAccess(context, 'adserver.adslot'));
60
60
  return;
61
61
  }
62
62
 
@@ -73,7 +73,7 @@ export const appendPbAdSlot = adUnit => {
73
73
  }
74
74
  } catch (e) {}
75
75
  // banner adUnit, use GPT adunit if defined
76
- if (utils.deepAccess(context, 'adserver.adslot')) {
76
+ if (deepAccess(context, 'adserver.adslot')) {
77
77
  context.pbadslot = context.adserver.adslot;
78
78
  return;
79
79
  }
@@ -89,7 +89,7 @@ export const makeBidRequestsHook = (fn, adUnits, ...args) => {
89
89
  };
90
90
 
91
91
  const handleSetGptConfig = moduleConfig => {
92
- _currentConfig = utils.pick(moduleConfig, [
92
+ _currentConfig = pick(moduleConfig, [
93
93
  'enabled', enabled => enabled !== false,
94
94
  'customGptSlotMatching', customGptSlotMatching =>
95
95
  typeof customGptSlotMatching === 'function' && customGptSlotMatching,
@@ -102,7 +102,7 @@ const handleSetGptConfig = moduleConfig => {
102
102
  hooksAdded = true;
103
103
  }
104
104
  } else {
105
- utils.logInfo(`${MODULE_NAME}: Turning off module`);
105
+ logInfo(`${MODULE_NAME}: Turning off module`);
106
106
  _currentConfig = {};
107
107
  getHook('makeBidRequests').getHooks({hook: makeBidRequestsHook}).remove();
108
108
  hooksAdded = false;