prebid.js 7.53.0 → 8.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (706) hide show
  1. package/.github/workflows/codeql-analysis.yml +2 -2
  2. package/dist/1plusXRtdProvider.js +1 -1
  3. package/dist/33acrossBidAdapter.js +1 -1
  4. package/dist/33acrossIdSystem.js +1 -1
  5. package/dist/adWMGAnalyticsAdapter.js +1 -1
  6. package/dist/adWMGBidAdapter.js +1 -1
  7. package/dist/adagioAnalyticsAdapter.js +1 -1
  8. package/dist/adagioBidAdapter.js +1 -1
  9. package/dist/adbookpspBidAdapter.js +1 -1
  10. package/dist/adfBidAdapter.js +1 -1
  11. package/dist/adgenerationBidAdapter.js +1 -1
  12. package/dist/adhashBidAdapter.js +1 -1
  13. package/dist/adkernelAdnAnalyticsAdapter.js +1 -1
  14. package/dist/adkernelAdnBidAdapter.js +1 -1
  15. package/dist/adkernelBidAdapter.js +1 -1
  16. package/dist/adlooxAdServerVideo.js +1 -1
  17. package/dist/adlooxAnalyticsAdapter.js +1 -1
  18. package/dist/adlooxRtdProvider.js +1 -1
  19. package/dist/adomikAnalyticsAdapter.js +1 -1
  20. package/dist/adprimeBidAdapter.js +1 -1
  21. package/dist/adqueryBidAdapter.js +1 -1
  22. package/dist/adrelevantisBidAdapter.js +1 -1
  23. package/dist/adtrgtmeBidAdapter.js +1 -1
  24. package/dist/adtrueBidAdapter.js +1 -1
  25. package/dist/aduptechBidAdapter.js +1 -1
  26. package/dist/advangelistsBidAdapter.js +1 -1
  27. package/dist/adxcgAnalyticsAdapter.js +1 -1
  28. package/dist/adxcgBidAdapter.js +1 -1
  29. package/dist/adxpremiumAnalyticsAdapter.js +1 -1
  30. package/dist/adyoulikeBidAdapter.js +1 -1
  31. package/dist/afpBidAdapter.js +1 -1
  32. package/dist/aidemBidAdapter.js +1 -1
  33. package/dist/airgridRtdProvider.js +1 -1
  34. package/dist/ajaBidAdapter.js +1 -1
  35. package/dist/amxBidAdapter.js +1 -1
  36. package/dist/amxIdSystem.js +1 -1
  37. package/dist/analyticsAdapter.js +1 -1
  38. package/dist/apacdexBidAdapter.js +1 -1
  39. package/dist/appierAnalyticsAdapter.js +1 -1
  40. package/dist/appnexusBidAdapter.js +1 -1
  41. package/dist/appnexusKeywords.js +1 -0
  42. package/dist/asoBidAdapter.js +1 -1
  43. package/dist/astraoneBidAdapter.js +1 -1
  44. package/dist/atsAnalyticsAdapter.js +1 -1
  45. package/dist/audiencerunBidAdapter.js +1 -1
  46. package/dist/automatadBidAdapter.js +1 -1
  47. package/dist/axonixBidAdapter.js +1 -1
  48. package/dist/beachfrontBidAdapter.js +1 -1
  49. package/dist/beopBidAdapter.js +1 -1
  50. package/dist/betweenBidAdapter.js +1 -1
  51. package/dist/bidViewability.js +1 -1
  52. package/dist/bidglassBidAdapter.js +1 -1
  53. package/dist/bidwatchAnalyticsAdapter.js +1 -1
  54. package/dist/big-richmediaBidAdapter.js +1 -1
  55. package/dist/bizzclickBidAdapter.js +1 -1
  56. package/dist/bluebillywigBidAdapter.js +1 -1
  57. package/dist/braveBidAdapter.js +1 -1
  58. package/dist/bridgewellBidAdapter.js +1 -1
  59. package/dist/brightMountainMediaBidAdapter.js +1 -1
  60. package/dist/browsiBidAdapter.js +1 -1
  61. package/dist/byDataAnalyticsAdapter.js +1 -1
  62. package/dist/cadentApertureMXBidAdapter.js +1 -0
  63. package/dist/carodaBidAdapter.js +1 -1
  64. package/dist/categoryTranslationMapping.js +1 -0
  65. package/dist/ccxBidAdapter.js +1 -1
  66. package/dist/chtnwBidAdapter.js +1 -1
  67. package/dist/cleanmedianetBidAdapter.js +1 -1
  68. package/dist/codefuelBidAdapter.js +1 -1
  69. package/dist/colossussspBidAdapter.js +1 -1
  70. package/dist/concertAnalyticsAdapter.js +1 -1
  71. package/dist/concertBidAdapter.js +1 -1
  72. package/dist/connectIdSystem.js +1 -1
  73. package/dist/connectadBidAdapter.js +1 -1
  74. package/dist/consentManagement.js +1 -1
  75. package/dist/consentManagementGpp.js +1 -1
  76. package/dist/consentManagementUsp.js +1 -1
  77. package/dist/consumableBidAdapter.js +1 -1
  78. package/dist/conversantAnalyticsAdapter.js +1 -1
  79. package/dist/conversantBidAdapter.js +1 -1
  80. package/dist/craftBidAdapter.js +1 -1
  81. package/dist/criteoBidAdapter.js +1 -1
  82. package/dist/criteoIdSystem.js +1 -1
  83. package/dist/currency.js +1 -1
  84. package/dist/cwireBidAdapter.js +1 -1
  85. package/dist/dailyhuntBidAdapter.js +1 -1
  86. package/dist/datablocksAnalyticsAdapter.js +1 -1
  87. package/dist/datablocksBidAdapter.js +1 -1
  88. package/dist/datawrkzBidAdapter.js +1 -1
  89. package/dist/debugging-standalone.js +1 -1
  90. package/dist/debugging.js +1 -1
  91. package/dist/deltaprojectsBidAdapter.js +1 -1
  92. package/dist/dependencies.json +58 -14
  93. package/dist/dfpAdServerVideo.js +1 -1
  94. package/dist/dianomiBidAdapter.js +1 -1
  95. package/dist/displayioBidAdapter.js +1 -1
  96. package/dist/dspxBidAdapter.js +1 -1
  97. package/dist/ebdrBidAdapter.js +1 -1
  98. package/dist/eplanningAnalyticsAdapter.js +1 -1
  99. package/dist/eplanningBidAdapter.js +1 -1
  100. package/dist/etargetBidAdapter.js +1 -1
  101. package/dist/euidIdSystem.js +1 -1
  102. package/dist/feedadBidAdapter.js +1 -1
  103. package/dist/finativeBidAdapter.js +1 -1
  104. package/dist/fintezaAnalyticsAdapter.js +1 -1
  105. package/dist/fluctBidAdapter.js +1 -1
  106. package/dist/freewheel-sspBidAdapter.js +1 -1
  107. package/dist/ftrackIdSystem.js +1 -1
  108. package/dist/gamoshiBidAdapter.js +1 -1
  109. package/dist/gdprEnforcement.js +1 -1
  110. package/dist/genericAnalyticsAdapter.js +1 -1
  111. package/dist/gmosspBidAdapter.js +1 -1
  112. package/dist/gnetBidAdapter.js +1 -1
  113. package/dist/goldbachBidAdapter.js +1 -1
  114. package/dist/gothamadsBidAdapter.js +1 -1
  115. package/dist/greenbidsAnalyticsAdapter.js +1 -1
  116. package/dist/greenbidsRtdProvider.js +1 -1
  117. package/dist/gridBidAdapter.js +1 -1
  118. package/dist/growthCodeAnalyticsAdapter.js +1 -1
  119. package/dist/gumgumBidAdapter.js +1 -1
  120. package/dist/h12mediaBidAdapter.js +1 -1
  121. package/dist/hadronAnalyticsAdapter.js +1 -1
  122. package/dist/holidBidAdapter.js +1 -1
  123. package/dist/hybridBidAdapter.js +1 -1
  124. package/dist/hypelabBidAdapter.js +1 -0
  125. package/dist/id5AnalyticsAdapter.js +1 -1
  126. package/dist/id5IdSystem.js +1 -1
  127. package/dist/imdsBidAdapter.js +1 -0
  128. package/dist/impactifyBidAdapter.js +1 -1
  129. package/dist/improvedigitalBidAdapter.js +1 -1
  130. package/dist/insticatorBidAdapter.js +1 -1
  131. package/dist/interactiveOffersBidAdapter.js +1 -1
  132. package/dist/invisiblyAnalyticsAdapter.js +1 -1
  133. package/dist/ixBidAdapter.js +1 -1
  134. package/dist/justpremiumBidAdapter.js +1 -1
  135. package/dist/kargoAnalyticsAdapter.js +1 -1
  136. package/dist/kargoBidAdapter.js +1 -1
  137. package/dist/keywords.js +1 -0
  138. package/dist/kinessoIdSystem.js +1 -1
  139. package/dist/koblerBidAdapter.js +1 -1
  140. package/dist/konduitAnalyticsAdapter.js +1 -1
  141. package/dist/kueezBidAdapter.js +1 -1
  142. package/dist/kueezRtbBidAdapter.js +1 -1
  143. package/dist/kulturemediaBidAdapter.js +1 -1
  144. package/dist/lassoBidAdapter.js +1 -1
  145. package/dist/lifestreetBidAdapter.js +1 -1
  146. package/dist/limelightDigitalBidAdapter.js +1 -1
  147. package/dist/liveIntentAnalyticsAdapter.js +1 -1
  148. package/dist/liveIntentIdSystem.js +1 -1
  149. package/dist/livewrappedAnalyticsAdapter.js +1 -1
  150. package/dist/livewrappedBidAdapter.js +1 -1
  151. package/dist/logicadBidAdapter.js +1 -1
  152. package/dist/loglyliftBidAdapter.js +1 -1
  153. package/dist/lotamePanoramaIdSystem.js +1 -1
  154. package/dist/luponmediaBidAdapter.js +1 -1
  155. package/dist/magniteAnalyticsAdapter.js +1 -1
  156. package/dist/malltvAnalyticsAdapter.js +1 -1
  157. package/dist/marsmediaAnalyticsAdapter.js +1 -1
  158. package/dist/marsmediaBidAdapter.js +1 -1
  159. package/dist/mediaforceBidAdapter.js +1 -1
  160. package/dist/mediafuseBidAdapter.js +1 -1
  161. package/dist/mediakeysBidAdapter.js +1 -1
  162. package/dist/medianetAnalyticsAdapter.js +1 -1
  163. package/dist/medianetBidAdapter.js +1 -1
  164. package/dist/mediasniperBidAdapter.js +1 -1
  165. package/dist/mediasquareBidAdapter.js +1 -1
  166. package/dist/mgidBidAdapter.js +1 -1
  167. package/dist/microadBidAdapter.js +1 -1
  168. package/dist/minutemediaBidAdapter.js +1 -1
  169. package/dist/minutemediaplusBidAdapter.js +1 -1
  170. package/dist/newspassidBidAdapter.js +1 -1
  171. package/dist/nextMillenniumBidAdapter.js +1 -1
  172. package/dist/nexx360BidAdapter.js +1 -1
  173. package/dist/not-for-prod/prebid.js +293 -323
  174. package/dist/objectGuard.js +1 -1
  175. package/dist/oguryBidAdapter.js +1 -1
  176. package/dist/onetagBidAdapter.js +1 -1
  177. package/dist/ooloAnalyticsAdapter.js +1 -1
  178. package/dist/operaadsBidAdapter.js +1 -1
  179. package/dist/optidigitalBidAdapter.js +1 -1
  180. package/dist/optimonAnalyticsAdapter.js +1 -1
  181. package/dist/orbidderBidAdapter.js +1 -1
  182. package/dist/ortbConverter.js +1 -1
  183. package/dist/otmBidAdapter.js +1 -1
  184. package/dist/outbrainBidAdapter.js +1 -1
  185. package/dist/oxxionAnalyticsAdapter.js +1 -1
  186. package/dist/oxxionRtdProvider.js +1 -1
  187. package/dist/ozoneBidAdapter.js +1 -1
  188. package/dist/padsquadBidAdapter.js +1 -1
  189. package/dist/parrableIdSystem.js +1 -1
  190. package/dist/pbsExtensions.js +1 -1
  191. package/dist/pianoDmpAnalyticsAdapter.js +1 -1
  192. package/dist/pixfutureBidAdapter.js +1 -1
  193. package/dist/prebid-core.js +2 -2
  194. package/dist/prebidServerBidAdapter.js +1 -1
  195. package/dist/prebidmanagerAnalyticsAdapter.js +1 -1
  196. package/dist/priceFloors.js +1 -1
  197. package/dist/prismaBidAdapter.js +1 -1
  198. package/dist/proxistoreBidAdapter.js +1 -1
  199. package/dist/pubgeniusBidAdapter.js +1 -1
  200. package/dist/publinkIdSystem.js +1 -1
  201. package/dist/pubmaticAnalyticsAdapter.js +1 -1
  202. package/dist/pubmaticBidAdapter.js +1 -1
  203. package/dist/pubperfAnalyticsAdapter.js +1 -1
  204. package/dist/pubstackAnalyticsAdapter.js +1 -1
  205. package/dist/pubwiseAnalyticsAdapter.js +1 -1
  206. package/dist/pubwiseBidAdapter.js +1 -1
  207. package/dist/pubxaiAnalyticsAdapter.js +1 -1
  208. package/dist/pulsepointAnalyticsAdapter.js +1 -1
  209. package/dist/pxyzBidAdapter.js +1 -1
  210. package/dist/quantcastBidAdapter.js +1 -1
  211. package/dist/quantcastIdSystem.js +1 -1
  212. package/dist/rasBidAdapter.js +1 -1
  213. package/dist/readpeakBidAdapter.js +1 -1
  214. package/dist/relaidoBidAdapter.js +1 -1
  215. package/dist/relevantAnalyticsAdapter.js +1 -1
  216. package/dist/retailspotBidAdapter.js +1 -1
  217. package/dist/revcontentBidAdapter.js +1 -1
  218. package/dist/rhythmoneBidAdapter.js +1 -1
  219. package/dist/richaudienceBidAdapter.js +1 -1
  220. package/dist/riseBidAdapter.js +1 -1
  221. package/dist/rivrAnalyticsAdapter.js +1 -1
  222. package/dist/roxotAnalyticsAdapter.js +1 -1
  223. package/dist/rtbhouseBidAdapter.js +1 -1
  224. package/dist/rtdModule.js +1 -1
  225. package/dist/rubiconBidAdapter.js +1 -1
  226. package/dist/s2sTesting.js +1 -1
  227. package/dist/saambaaBidAdapter.js +1 -1
  228. package/dist/scaleableAnalyticsAdapter.js +1 -1
  229. package/dist/schain.js +1 -1
  230. package/dist/seedingAllianceBidAdapter.js +1 -1
  231. package/dist/seedtagBidAdapter.js +1 -1
  232. package/dist/sharedIdSystem.js +1 -1
  233. package/dist/sharethroughAnalyticsAdapter.js +1 -1
  234. package/dist/sharethroughBidAdapter.js +1 -1
  235. package/dist/shinezBidAdapter.js +1 -1
  236. package/dist/showheroes-bsBidAdapter.js +1 -1
  237. package/dist/sigmoidAnalyticsAdapter.js +1 -1
  238. package/dist/sizeMapping.js +1 -0
  239. package/dist/slimcutBidAdapter.js +1 -1
  240. package/dist/smaatoBidAdapter.js +1 -1
  241. package/dist/smartadserverBidAdapter.js +1 -1
  242. package/dist/smartxBidAdapter.js +1 -1
  243. package/dist/smartytechBidAdapter.js +1 -1
  244. package/dist/smilewantedBidAdapter.js +1 -1
  245. package/dist/sonobiAnalyticsAdapter.js +1 -1
  246. package/dist/sonobiBidAdapter.js +1 -1
  247. package/dist/sovrnAnalyticsAdapter.js +1 -1
  248. package/dist/sovrnBidAdapter.js +1 -1
  249. package/dist/sspBCBidAdapter.js +1 -1
  250. package/dist/staqAnalyticsAdapter.js +1 -1
  251. package/dist/stvBidAdapter.js +1 -1
  252. package/dist/sublimeBidAdapter.js +1 -1
  253. package/dist/taboolaBidAdapter.js +1 -1
  254. package/dist/tapadIdSystem.js +1 -1
  255. package/dist/tappxBidAdapter.js +1 -1
  256. package/dist/targetVideoBidAdapter.js +1 -1
  257. package/dist/teadsBidAdapter.js +1 -1
  258. package/dist/teadsIdSystem.js +1 -1
  259. package/dist/telariaBidAdapter.js +1 -1
  260. package/dist/terceptAnalyticsAdapter.js +1 -1
  261. package/dist/theAdxBidAdapter.js +1 -1
  262. package/dist/topicsFpdModule.js +1 -1
  263. package/dist/trionBidAdapter.js +1 -1
  264. package/dist/tripleliftBidAdapter.js +1 -1
  265. package/dist/ttdBidAdapter.js +1 -1
  266. package/dist/ucfunnelAnalyticsAdapter.js +1 -1
  267. package/dist/uid2IdSystem.js +1 -1
  268. package/dist/underdogmediaBidAdapter.js +1 -1
  269. package/dist/undertoneBidAdapter.js +1 -1
  270. package/dist/unicornBidAdapter.js +1 -1
  271. package/dist/unrulyBidAdapter.js +1 -1
  272. package/dist/userId.js +1 -1
  273. package/dist/utiqSystem.js +1 -0
  274. package/dist/vibrantmediaBidAdapter.js +1 -1
  275. package/dist/vidazooBidAdapter.js +1 -1
  276. package/dist/videobyteBidAdapter.js +1 -1
  277. package/dist/videojsVideoProvider.js +1 -1
  278. package/dist/videoreachBidAdapter.js +1 -1
  279. package/dist/visxBidAdapter.js +1 -1
  280. package/dist/vrtcalBidAdapter.js +1 -1
  281. package/dist/vuukleBidAdapter.js +1 -1
  282. package/dist/weboramaRtdProvider.js +1 -1
  283. package/dist/widespaceBidAdapter.js +1 -1
  284. package/dist/winrBidAdapter.js +1 -1
  285. package/dist/xeBidAdapter.js +1 -1
  286. package/dist/yahoosspBidAdapter.js +1 -1
  287. package/dist/yieldliftBidAdapter.js +1 -1
  288. package/dist/yieldmoBidAdapter.js +1 -1
  289. package/dist/yieldoneAnalyticsAdapter.js +1 -1
  290. package/dist/yieldoneBidAdapter.js +1 -1
  291. package/dist/yuktamediaAnalyticsAdapter.js +1 -1
  292. package/dist/zetaBidAdapter.js +1 -1
  293. package/dist/zeta_global_sspAnalyticsAdapter.js +1 -1
  294. package/dist/zeta_global_sspBidAdapter.js +1 -1
  295. package/libraries/analyticsAdapter/AnalyticsAdapter.js +1 -7
  296. package/libraries/appnexusKeywords/anKeywords.js +140 -0
  297. package/libraries/categoryTranslationMapping/index.js +100 -0
  298. package/libraries/keywords/keywords.js +31 -0
  299. package/libraries/objectGuard/objectGuard.js +2 -11
  300. package/libraries/ortbConverter/processors/default.js +3 -4
  301. package/modules/.submodules.json +1 -1
  302. package/modules/1plusXRtdProvider.js +4 -14
  303. package/modules/33acrossBidAdapter.js +11 -11
  304. package/modules/adWMGBidAdapter.js +2 -1
  305. package/modules/adagioBidAdapter.js +18 -30
  306. package/modules/adbookpspBidAdapter.js +1 -1
  307. package/modules/addefendBidAdapter.js +1 -0
  308. package/modules/adfBidAdapter.js +3 -3
  309. package/modules/adgenerationBidAdapter.js +1 -1
  310. package/modules/adhashBidAdapter.js +56 -34
  311. package/modules/adkernelAdnBidAdapter.js +5 -6
  312. package/modules/adkernelBidAdapter.js +5 -5
  313. package/modules/adprimeBidAdapter.js +2 -1
  314. package/modules/adqueryBidAdapter.js +1 -0
  315. package/modules/adrelevantisBidAdapter.js +3 -24
  316. package/modules/adtrueBidAdapter.js +2 -2
  317. package/modules/aduptechBidAdapter.js +2 -1
  318. package/modules/advangelistsBidAdapter.js +0 -1
  319. package/modules/adxcgBidAdapter.js +1 -1
  320. package/modules/adyoulikeBidAdapter.js +1 -1
  321. package/modules/afpBidAdapter.js +2 -2
  322. package/modules/aidemBidAdapter.js +16 -3
  323. package/modules/airgridRtdProvider.js +24 -53
  324. package/modules/ajaBidAdapter.js +1 -1
  325. package/modules/alkimiBidAdapter.js +2 -1
  326. package/modules/amxBidAdapter.js +1 -0
  327. package/modules/apacdexBidAdapter.js +3 -3
  328. package/modules/appnexusBidAdapter.js +16 -114
  329. package/modules/apstreamBidAdapter.js +1 -0
  330. package/modules/asoBidAdapter.js +1 -1
  331. package/modules/astraoneBidAdapter.js +1 -1
  332. package/modules/audiencerunBidAdapter.js +2 -1
  333. package/modules/automatadBidAdapter.js +5 -5
  334. package/modules/beachfrontBidAdapter.js +0 -1
  335. package/modules/beopBidAdapter.js +20 -17
  336. package/modules/betweenBidAdapter.js +2 -1
  337. package/modules/bizzclickBidAdapter.js +9 -6
  338. package/modules/bliinkBidAdapter.js +1 -0
  339. package/modules/bluebillywigBidAdapter.js +2 -2
  340. package/modules/braveBidAdapter.js +9 -7
  341. package/modules/browsiBidAdapter.js +3 -3
  342. package/modules/{emx_digitalBidAdapter.js → cadentApertureMXBidAdapter.js} +61 -56
  343. package/modules/{emx_digitalBidAdapter.md → cadentApertureMXBidAdapter.md} +6 -6
  344. package/modules/carodaBidAdapter.js +1 -0
  345. package/modules/ccxBidAdapter.js +1 -1
  346. package/modules/cleanmedianetBidAdapter.js +3 -3
  347. package/modules/codefuelBidAdapter.js +1 -1
  348. package/modules/colossussspBidAdapter.js +1 -1
  349. package/modules/concertBidAdapter.js +1 -1
  350. package/modules/connectadBidAdapter.js +1 -0
  351. package/modules/conversantAnalyticsAdapter.js +2 -0
  352. package/modules/conversantBidAdapter.js +22 -6
  353. package/modules/craftBidAdapter.js +6 -28
  354. package/modules/criteoBidAdapter.js +12 -9
  355. package/modules/currency.js +3 -3
  356. package/modules/dailyhuntBidAdapter.js +2 -2
  357. package/modules/datablocksBidAdapter.js +10 -8
  358. package/modules/datawrkzBidAdapter.js +0 -6
  359. package/modules/deltaprojectsBidAdapter.js +12 -3
  360. package/modules/dianomiBidAdapter.js +1 -1
  361. package/modules/discoveryBidAdapter.js +1 -0
  362. package/modules/displayioBidAdapter.js +2 -1
  363. package/modules/dspxBidAdapter.js +1 -0
  364. package/modules/ebdrBidAdapter.js +3 -2
  365. package/modules/etargetBidAdapter.js +1 -2
  366. package/modules/feedadBidAdapter.js +1 -1
  367. package/modules/finativeBidAdapter.js +8 -8
  368. package/modules/fluctBidAdapter.js +1 -2
  369. package/modules/gamoshiBidAdapter.js +3 -3
  370. package/modules/gdprEnforcement.js +0 -15
  371. package/modules/genericAnalyticsAdapter.js +0 -5
  372. package/modules/glomexBidAdapter.js +1 -0
  373. package/modules/gmosspBidAdapter.js +1 -1
  374. package/modules/gnetBidAdapter.js +1 -1
  375. package/modules/goldbachBidAdapter.js +7 -45
  376. package/modules/gothamadsBidAdapter.js +4 -3
  377. package/modules/gridBidAdapter.js +20 -421
  378. package/modules/gumgumBidAdapter.js +1 -2
  379. package/modules/h12mediaBidAdapter.js +1 -1
  380. package/modules/holidBidAdapter.js +8 -13
  381. package/modules/hybridBidAdapter.js +2 -2
  382. package/modules/hypelabBidAdapter.js +153 -0
  383. package/modules/hypelabBidAdapter.md +38 -0
  384. package/modules/{synacormediaBidAdapter.js → imdsBidAdapter.js} +11 -8
  385. package/modules/{synacormediaBidAdapter.md → imdsBidAdapter.md} +5 -5
  386. package/modules/impactifyBidAdapter.js +6 -6
  387. package/modules/improvedigitalBidAdapter.js +1 -2
  388. package/modules/innityBidAdapter.js +1 -0
  389. package/modules/insticatorBidAdapter.js +1 -1
  390. package/modules/interactiveOffersBidAdapter.js +5 -4
  391. package/modules/iqmBidAdapter.js +1 -0
  392. package/modules/ixBidAdapter.js +74 -75
  393. package/modules/jixieBidAdapter.js +1 -0
  394. package/modules/kargoBidAdapter.js +1 -1
  395. package/modules/koblerBidAdapter.js +2 -1
  396. package/modules/kueezBidAdapter.js +1 -1
  397. package/modules/kueezRtbBidAdapter.js +1 -0
  398. package/modules/kulturemediaBidAdapter.js +7 -7
  399. package/modules/lassoBidAdapter.js +2 -1
  400. package/modules/limelightDigitalBidAdapter.js +1 -1
  401. package/modules/livewrappedBidAdapter.js +2 -2
  402. package/modules/logicadBidAdapter.js +2 -1
  403. package/modules/loglyliftBidAdapter.js +2 -1
  404. package/modules/luponmediaBidAdapter.js +16 -4
  405. package/modules/magniteAnalyticsAdapter.js +61 -72
  406. package/modules/malltvBidAdapter.js +1 -0
  407. package/modules/mediaforceBidAdapter.js +2 -1
  408. package/modules/mediafuseBidAdapter.js +45 -62
  409. package/modules/mediagoBidAdapter.js +1 -0
  410. package/modules/mediakeysBidAdapter.js +3 -5
  411. package/modules/medianetBidAdapter.js +2 -1
  412. package/modules/mediasniperBidAdapter.js +1 -2
  413. package/modules/mediasquareBidAdapter.js +2 -1
  414. package/modules/microadBidAdapter.js +1 -9
  415. package/modules/minutemediaBidAdapter.js +2 -2
  416. package/modules/minutemediaplusBidAdapter.js +3 -2
  417. package/modules/newspassidBidAdapter.js +6 -4
  418. package/modules/nextMillenniumBidAdapter.js +10 -9
  419. package/modules/oguryBidAdapter.js +5 -5
  420. package/modules/onetagBidAdapter.js +2 -1
  421. package/modules/operaadsBidAdapter.js +2 -2
  422. package/modules/optidigitalBidAdapter.js +2 -2
  423. package/modules/orbidderBidAdapter.js +2 -1
  424. package/modules/otmBidAdapter.js +2 -2
  425. package/modules/outbrainBidAdapter.js +9 -11
  426. package/modules/oxxionRtdProvider.js +7 -29
  427. package/modules/ozoneBidAdapter.js +2 -1
  428. package/modules/padsquadBidAdapter.js +2 -2
  429. package/modules/pixfutureBidAdapter.js +12 -36
  430. package/modules/prebidServerBidAdapter/index.js +1 -3
  431. package/modules/prebidServerBidAdapter/ortbConverter.js +34 -5
  432. package/modules/priceFloors.js +7 -7
  433. package/modules/prismaBidAdapter.js +4 -3
  434. package/modules/proxistoreBidAdapter.js +2 -1
  435. package/modules/pubgeniusBidAdapter.js +5 -5
  436. package/modules/pubmaticAnalyticsAdapter.js +31 -12
  437. package/modules/pubmaticBidAdapter.js +6 -4
  438. package/modules/pubwiseBidAdapter.js +6 -5
  439. package/modules/pxyzBidAdapter.js +4 -4
  440. package/modules/rasBidAdapter.js +4 -2
  441. package/modules/readpeakBidAdapter.js +1 -1
  442. package/modules/relaidoBidAdapter.js +2 -1
  443. package/modules/resetdigitalBidAdapter.js +1 -0
  444. package/modules/revcontentBidAdapter.js +6 -7
  445. package/modules/rhythmoneBidAdapter.js +0 -2
  446. package/modules/richaudienceBidAdapter.js +6 -4
  447. package/modules/riseBidAdapter.js +1 -1
  448. package/modules/rtbhouseBidAdapter.js +5 -5
  449. package/modules/rtbsapeBidAdapter.js +1 -0
  450. package/modules/rubiconBidAdapter.js +8 -11
  451. package/modules/saambaaBidAdapter.js +0 -1
  452. package/modules/seedingAllianceBidAdapter.js +6 -7
  453. package/modules/seedtagBidAdapter.js +1 -1
  454. package/modules/sharethroughBidAdapter.js +1 -1
  455. package/modules/shinezBidAdapter.js +435 -435
  456. package/modules/showheroes-bsBidAdapter.js +1 -1
  457. package/{src → modules}/sizeMapping.js +46 -32
  458. package/modules/slimcutBidAdapter.js +2 -2
  459. package/modules/smaatoBidAdapter.js +16 -3
  460. package/modules/smartadserverBidAdapter.js +1 -1
  461. package/modules/smarticoBidAdapter.js +1 -0
  462. package/modules/smartytechBidAdapter.js +0 -1
  463. package/modules/smilewantedBidAdapter.js +2 -2
  464. package/modules/sonobiBidAdapter.js +2 -1
  465. package/modules/sspBCBidAdapter.js +1 -1
  466. package/modules/stroeerCoreBidAdapter.js +1 -0
  467. package/modules/sublimeBidAdapter.js +1 -0
  468. package/modules/taboolaBidAdapter.js +3 -3
  469. package/modules/talkadsBidAdapter.js +1 -0
  470. package/modules/tappxBidAdapter.js +1 -1
  471. package/modules/teadsBidAdapter.js +1 -2
  472. package/modules/telariaBidAdapter.js +1 -1
  473. package/modules/theAdxBidAdapter.js +1 -1
  474. package/modules/topicsFpdModule.js +4 -1
  475. package/modules/tpmnBidAdapter.js +1 -0
  476. package/modules/truereachBidAdapter.js +1 -0
  477. package/modules/ttdBidAdapter.js +3 -3
  478. package/modules/underdogmediaBidAdapter.js +0 -1
  479. package/modules/unicornBidAdapter.js +1 -1
  480. package/modules/unrulyBidAdapter.js +1 -1
  481. package/modules/userId/eids.js +3 -3
  482. package/modules/userId/eids.md +1 -1
  483. package/modules/userId/index.js +2 -19
  484. package/modules/userId/userId.md +12 -10
  485. package/modules/utiqSystem.js +129 -0
  486. package/modules/{trustpidSystem.md → utiqSystem.md} +7 -7
  487. package/modules/vdoaiBidAdapter.js +1 -0
  488. package/modules/vibrantmediaBidAdapter.js +1 -1
  489. package/modules/vidazooBidAdapter.js +3 -2
  490. package/modules/videobyteBidAdapter.js +0 -1
  491. package/modules/videoheroesBidAdapter.js +2 -0
  492. package/modules/videojsVideoProvider.js +2 -0
  493. package/modules/videoreachBidAdapter.js +2 -1
  494. package/modules/vlybyBidAdapter.js +1 -0
  495. package/modules/voxBidAdapter.js +2 -0
  496. package/modules/vrtcalBidAdapter.js +6 -1
  497. package/modules/winrBidAdapter.js +4 -25
  498. package/modules/xeBidAdapter.js +2 -1
  499. package/modules/yieldliftBidAdapter.js +2 -2
  500. package/modules/yieldmoBidAdapter.js +1 -0
  501. package/modules/yieldoneBidAdapter.js +1 -1
  502. package/modules/zetaBidAdapter.js +4 -9
  503. package/modules/zeta_global_sspBidAdapter.js +1 -1
  504. package/package.json +1 -1
  505. package/src/activities/activities.js +5 -0
  506. package/src/activities/redactor.js +36 -8
  507. package/src/adapterManager.js +31 -20
  508. package/src/adapters/bidderFactory.js +41 -91
  509. package/src/auction.js +5 -21
  510. package/src/constants.json +1 -2
  511. package/src/utils.js +2 -34
  512. package/test/fixtures/fixtures.js +0 -7
  513. package/test/pages/banner.html +1 -0
  514. package/test/pages/bidderSettings.html +1 -0
  515. package/test/pages/consent_mgt_gdpr.html +1 -0
  516. package/test/pages/currency.html +1 -0
  517. package/test/pages/instream.html +1 -0
  518. package/test/pages/multiple_bidders.html +1 -1
  519. package/test/pages/native.html +1 -0
  520. package/test/pages/outstream.html +4 -1
  521. package/test/spec/activities/redactor_spec.js +10 -2
  522. package/test/spec/appnexusKeywords_spec.js +70 -0
  523. package/test/spec/auctionmanager_spec.js +11 -22
  524. package/test/spec/keywords_spec.js +102 -0
  525. package/test/spec/modules/1plusXRtdProvider_spec.js +17 -18
  526. package/test/spec/modules/33acrossBidAdapter_spec.js +49 -73
  527. package/test/spec/modules/adagioBidAdapter_spec.js +15 -24
  528. package/test/spec/modules/adbookpspBidAdapter_spec.js +5 -0
  529. package/test/spec/modules/adfBidAdapter_spec.js +4 -1
  530. package/test/spec/modules/adhashBidAdapter_spec.js +18 -2
  531. package/test/spec/modules/adkernelAdnBidAdapter_spec.js +1 -3
  532. package/test/spec/modules/adrelevantisBidAdapter_spec.js +0 -9
  533. package/test/spec/modules/adriverBidAdapter_spec.js +0 -9
  534. package/test/spec/modules/adtrueBidAdapter_spec.js +11 -7
  535. package/test/spec/modules/aduptechBidAdapter_spec.js +26 -8
  536. package/test/spec/modules/advangelistsBidAdapter_spec.js +0 -1
  537. package/test/spec/modules/adxcgBidAdapter_spec.js +4 -1
  538. package/test/spec/modules/adyoulikeBidAdapter_spec.js +50 -10
  539. package/test/spec/modules/afpBidAdapter_spec.js +5 -1
  540. package/test/spec/modules/aidemBidAdapter_spec.js +10 -2
  541. package/test/spec/modules/airgridRtdProvider_spec.js +9 -59
  542. package/test/spec/modules/apacdexBidAdapter_spec.js +2 -2
  543. package/test/spec/modules/appnexusBidAdapter_spec.js +100 -27
  544. package/test/spec/modules/astraoneBidAdapter_spec.js +5 -1
  545. package/test/spec/modules/beachfrontBidAdapter_spec.js +0 -1
  546. package/test/spec/modules/big-richmediaBidAdapter_spec.js +0 -10
  547. package/test/spec/modules/bluebillywigBidAdapter_spec.js +12 -10
  548. package/test/spec/modules/browsiBidAdapter_spec.js +6 -3
  549. package/test/spec/modules/{emx_digitalBidAdapter_spec.js → cadentApertureMXBidAdapter_spec.js} +16 -16
  550. package/test/spec/modules/ccxBidAdapter_spec.js +1 -1
  551. package/test/spec/modules/cleanmedianetBidAdapter_spec.js +2 -2
  552. package/test/spec/modules/codefuelBidAdapter_spec.js +10 -1
  553. package/test/spec/modules/colossussspBidAdapter_spec.js +1 -1
  554. package/test/spec/modules/concertBidAdapter_spec.js +5 -1
  555. package/test/spec/modules/conversantBidAdapter_spec.js +7 -2
  556. package/test/spec/modules/criteoBidAdapter_spec.js +78 -8
  557. package/test/spec/modules/currency_spec.js +12 -12
  558. package/test/spec/modules/datawrkzBidAdapter_spec.js +0 -4
  559. package/test/spec/modules/dianomiBidAdapter_spec.js +1 -1
  560. package/test/spec/modules/etargetBidAdapter_spec.js +35 -8
  561. package/test/spec/modules/euidIdSystem_spec.js +0 -7
  562. package/test/spec/modules/feedadBidAdapter_spec.js +5 -1
  563. package/test/spec/modules/finativeBidAdapter_spec.js +0 -12
  564. package/test/spec/modules/fluctBidAdapter_spec.js +0 -2
  565. package/test/spec/modules/gamoshiBidAdapter_spec.js +5 -2
  566. package/test/spec/modules/gmosspBidAdapter_spec.js +5 -1
  567. package/test/spec/modules/gnetBidAdapter_spec.js +5 -1
  568. package/test/spec/modules/goldbachBidAdapter_spec.js +0 -10
  569. package/test/spec/modules/gridBidAdapter_spec.js +42 -302
  570. package/test/spec/modules/hybridBidAdapter_spec.js +5 -1
  571. package/test/spec/modules/hypelabBidAdapter_spec.js +281 -0
  572. package/test/spec/modules/{synacormediaBidAdapter_spec.js → imdsBidAdapter_spec.js} +19 -19
  573. package/test/spec/modules/improvedigitalBidAdapter_spec.js +6 -1
  574. package/test/spec/modules/insticatorBidAdapter_spec.js +6 -2
  575. package/test/spec/modules/invisiblyAnalyticsAdapter_spec.js +1 -1
  576. package/test/spec/modules/ivsBidAdapter_spec.js +0 -2
  577. package/test/spec/modules/ixBidAdapter_spec.js +8 -3
  578. package/test/spec/modules/kargoBidAdapter_spec.js +3 -3
  579. package/test/spec/modules/koblerBidAdapter_spec.js +13 -2
  580. package/test/spec/modules/kulturemediaBidAdapter_spec.js +0 -1
  581. package/test/spec/modules/limelightDigitalBidAdapter_spec.js +21 -5
  582. package/test/spec/modules/livewrappedAnalyticsAdapter_spec.js +1 -1
  583. package/test/spec/modules/livewrappedBidAdapter_spec.js +5 -6
  584. package/test/spec/modules/loglyliftBidAdapter_spec.js +10 -0
  585. package/test/spec/modules/luponmediaBidAdapter_spec.js +23 -2
  586. package/test/spec/modules/magniteAnalyticsAdapter_spec.js +93 -1
  587. package/test/spec/modules/mediaforceBidAdapter_spec.js +11 -3
  588. package/test/spec/modules/mediafuseBidAdapter_spec.js +2 -6
  589. package/test/spec/modules/mediakeysBidAdapter_spec.js +6 -2
  590. package/test/spec/modules/medianetBidAdapter_spec.js +86 -17
  591. package/test/spec/modules/mediasniperBidAdapter_spec.js +1 -1
  592. package/test/spec/modules/mediasquareBidAdapter_spec.js +5 -5
  593. package/test/spec/modules/microadBidAdapter_spec.js +7 -3
  594. package/test/spec/modules/minutemediaplusBidAdapter_spec.js +7 -3
  595. package/test/spec/modules/nextMillenniumBidAdapter_spec.js +2 -2
  596. package/test/spec/modules/nexx360BidAdapter_spec.js +0 -1
  597. package/test/spec/modules/oguryBidAdapter_spec.js +2 -1
  598. package/test/spec/modules/onetagBidAdapter_spec.js +5 -1
  599. package/test/spec/modules/openxBidAdapter_spec.js +1 -1
  600. package/test/spec/modules/operaadsBidAdapter_spec.js +5 -5
  601. package/test/spec/modules/optidigitalBidAdapter_spec.js +0 -2
  602. package/test/spec/modules/orbidderBidAdapter_spec.js +12 -4
  603. package/test/spec/modules/outbrainBidAdapter_spec.js +5 -0
  604. package/test/spec/modules/oxxionRtdProvider_spec.js +3 -2
  605. package/test/spec/modules/prebidServerBidAdapter_spec.js +114 -32
  606. package/test/spec/modules/priceFloors_spec.js +7 -25
  607. package/test/spec/modules/pubgeniusBidAdapter_spec.js +2 -1
  608. package/test/spec/modules/pubmaticAnalyticsAdapter_spec.js +7 -0
  609. package/test/spec/modules/pubmaticBidAdapter_spec.js +41 -32
  610. package/test/spec/modules/pubwiseBidAdapter_spec.js +10 -6
  611. package/test/spec/modules/relaidoBidAdapter_spec.js +6 -2
  612. package/test/spec/modules/revcontentBidAdapter_spec.js +0 -10
  613. package/test/spec/modules/richaudienceBidAdapter_spec.js +5 -1
  614. package/test/spec/modules/rubiconBidAdapter_spec.js +26 -7
  615. package/test/spec/modules/scatteredBidAdapter_spec.js +0 -2
  616. package/test/spec/modules/seedingAllianceAdapter_spec.js +0 -13
  617. package/test/spec/modules/seedtagBidAdapter_spec.js +5 -1
  618. package/test/spec/modules/sharethroughBidAdapter_spec.js +6 -2
  619. package/test/spec/modules/sizeMapping_spec.js +342 -0
  620. package/test/spec/modules/slimcutBidAdapter_spec.js +0 -1
  621. package/test/spec/modules/smaatoBidAdapter_spec.js +3 -2
  622. package/test/spec/modules/smartadserverBidAdapter_spec.js +15 -3
  623. package/test/spec/modules/smilewantedBidAdapter_spec.js +25 -6
  624. package/test/spec/modules/sspBCBidAdapter_spec.js +4 -4
  625. package/test/spec/modules/taboolaBidAdapter_spec.js +10 -12
  626. package/test/spec/modules/teadsBidAdapter_spec.js +7 -0
  627. package/test/spec/modules/terceptAnalyticsAdapter_spec.js +0 -1
  628. package/test/spec/modules/ttdBidAdapter_spec.js +13 -5
  629. package/test/spec/modules/uid2IdSystem_spec.js +0 -10
  630. package/test/spec/modules/underdogmediaBidAdapter_spec.js +0 -1
  631. package/test/spec/modules/utiqSystem_spec.js +188 -0
  632. package/test/spec/modules/vidazooBidAdapter_spec.js +6 -2
  633. package/test/spec/modules/videobyteBidAdapter_spec.js +0 -1
  634. package/test/spec/modules/vrtcalBidAdapter_spec.js +9 -2
  635. package/test/spec/modules/winrBidAdapter_spec.js +0 -9
  636. package/test/spec/modules/xeBidAdapter_spec.js +6 -2
  637. package/test/spec/unit/core/adapterManager_spec.js +69 -115
  638. package/test/spec/unit/core/bidderFactory_spec.js +80 -152
  639. package/test/spec/unit/core/targeting_spec.js +0 -6
  640. package/test/spec/utils_spec.js +21 -90
  641. package/dist/aolBidAdapter.js +0 -1
  642. package/dist/captifyRtdProvider.js +0 -1
  643. package/dist/emx_digitalBidAdapter.js +0 -1
  644. package/dist/glimpseBidAdapter.js +0 -1
  645. package/dist/googleAnalyticsAdapter.js +0 -1
  646. package/dist/inmarBidAdapter.js +0 -1
  647. package/dist/inskinBidAdapter.js +0 -1
  648. package/dist/liveyieldAnalyticsAdapter.js +0 -1
  649. package/dist/mass.js +0 -1
  650. package/dist/openxAnalyticsAdapter.js +0 -1
  651. package/dist/openxOrtbBidAdapter.js +0 -1
  652. package/dist/pubCommonId.js +0 -1
  653. package/dist/realvuAnalyticsAdapter.js +0 -1
  654. package/dist/rubiconAnalyticsAdapter.js +0 -1
  655. package/dist/synacormediaBidAdapter.js +0 -1
  656. package/dist/trustpidSystem.js +0 -1
  657. package/dist/viewability.js +0 -1
  658. package/dist/zeusPrimeRtdProvider.js +0 -21
  659. package/integrationExamples/gpt/captifyRtdProvider_example.html +0 -167
  660. package/integrationExamples/mass/index.html +0 -132
  661. package/modules/aolBidAdapter.js +0 -462
  662. package/modules/aolBidAdapter.md +0 -46
  663. package/modules/captifyRtdProvider.js +0 -146
  664. package/modules/captifyRtdProvider.md +0 -68
  665. package/modules/conversantAnalyticsAdapter.md +0 -46
  666. package/modules/conversantBidAdapter.md +0 -46
  667. package/modules/glimpseBidAdapter.js +0 -198
  668. package/modules/glimpseBidAdapter.md +0 -37
  669. package/modules/googleAnalyticsAdapter.js +0 -298
  670. package/modules/googleAnalyticsAdapter.md +0 -38
  671. package/modules/inmarBidAdapter.js +0 -132
  672. package/modules/inmarBidAdapter.md +0 -44
  673. package/modules/inskinBidAdapter.js +0 -391
  674. package/modules/inskinBidAdapter.md +0 -31
  675. package/modules/liveyieldAnalyticsAdapter.js +0 -454
  676. package/modules/liveyieldAnalyticsAdapter.md +0 -45
  677. package/modules/mass.js +0 -184
  678. package/modules/mass.md +0 -137
  679. package/modules/openxAnalyticsAdapter.js +0 -27
  680. package/modules/openxAnalyticsAdapter.md +0 -135
  681. package/modules/openxOrtbBidAdapter.js +0 -238
  682. package/modules/openxOrtbBidAdapter.md +0 -108
  683. package/modules/pubCommonId.js +0 -303
  684. package/modules/pubCommonId.md +0 -37
  685. package/modules/realvuAnalyticsAdapter.js +0 -976
  686. package/modules/realvuAnalyticsAdapter.md +0 -9
  687. package/modules/rubiconAnalyticsAdapter.js +0 -938
  688. package/modules/trustpidSystem.js +0 -143
  689. package/modules/viewability.js +0 -9
  690. package/modules/zeusPrimeRtdProvider.js +0 -37
  691. package/modules/zeusPrimeRtdProvider.md +0 -63
  692. package/test/spec/modules/aolBidAdapter_spec.js +0 -890
  693. package/test/spec/modules/captifyRtdProvider_spec.js +0 -253
  694. package/test/spec/modules/glimpseBidAdapter_spec.js +0 -422
  695. package/test/spec/modules/googleAnalyticsAdapter_spec.js +0 -27
  696. package/test/spec/modules/inmarBidAdapter_spec.js +0 -242
  697. package/test/spec/modules/inskinBidAdapter_spec.js +0 -386
  698. package/test/spec/modules/liveyieldAnalyticsAdapter_spec.js +0 -704
  699. package/test/spec/modules/mass_spec.js +0 -141
  700. package/test/spec/modules/openxAnalyticsAdapter_spec.js +0 -21
  701. package/test/spec/modules/openxOrtbBidAdapter_spec.js +0 -1615
  702. package/test/spec/modules/pubCommonId_spec.js +0 -353
  703. package/test/spec/modules/rubiconAnalyticsAdapter_spec.js +0 -2540
  704. package/test/spec/modules/rubiconAnalyticsSchema.json +0 -494
  705. package/test/spec/modules/trustpidSystem_spec.js +0 -237
  706. package/test/spec/sizeMapping_spec.js +0 -341
package/modules/mass.md DELETED
@@ -1,137 +0,0 @@
1
- ## Overview
2
-
3
- This module enables the MASS protocol for Prebid. To use it, you'll need to
4
- work with a MASS enabled provider.
5
-
6
- This module scans incoming bids for the presence of a "mass" flag being set to
7
- true in the bid meta or a publisher specified DealID pattern and uses
8
- external resources to decypher and process the MASS:// URI found within the ad markup.
9
- This modules is designed to work with MASS enabled Exchanges and DSP's.
10
-
11
- This module only loads external JavaScript resources if the publisher ad server has
12
- selected a MASS enabled bid as a winner.
13
-
14
- Find out more [here](https://massplatform.net).
15
-
16
- {: .alert.alert-warning :}
17
- ## Disclosure
18
-
19
- This module loads external JavaScript to render creatives
20
-
21
- ## Custom Mode
22
-
23
- You can specify your own `dealIdPattern` and `renderUrl` by adding one or more entries into the `custom` configuration option (see [Configuration Parameters](#configuration-parameters) below). When specifying a custom renderer, quality assurance is your responsibility.
24
-
25
- ## Integration
26
-
27
- Build the MASS module into the Prebid.js package with:
28
-
29
- ```
30
- gulp build --modules=mass,...
31
- ```
32
-
33
-
34
- ## Module Configuration
35
-
36
- ```js
37
- pbjs.que.push(function() {
38
- pbjs.setConfig({
39
- mass: {
40
- enabled: true,
41
- renderUrl: 'https://cdn.massplatform.net/bootloader.js',
42
- dealIdPattern: /^MASS/i,
43
- custom: [
44
- {
45
- dealIdPattern: /xyz/,
46
- renderUrl: 'https://my.domain.com/render.js',
47
- namespace: 'xyz'
48
- }
49
- ]
50
- }
51
- });
52
- });
53
- ```
54
-
55
- ### Configuration Parameters
56
-
57
- |Name |Type |Description |Notes |
58
- | :------------ | :------------ | :------------ |:------------ |
59
- |enabled | Boolean |Enable/disable the module |Defaults to `true` |
60
- |dealIdPattern | RegExp |The pattern used to identify MASS deal IDs |Defaults to `/^MASS/i` |
61
- |renderUrl | String |The MASS render script to load |`https://cdn.massplatform.net/bootloader.js` |
62
- |custom | Array |Add custom renderers | |
63
- |custom[].dealIdPattern | RegExp |A pattern used to identify matching deal IDs |Either this parameter or `custom[].match` must be specified |
64
- |custom[].renderUrl | String |The render script to load |Either this parameter or `custom[].render` must be specified |
65
- |custom[].namespace | String |The namespace (i.e.: object) created on `window` to pass parameters to the render script |Required with `custom[].renderUrl` |
66
- |custom[].match | Function(bid) |A custom function to identify matching bids |Either this parameter or `custom[].dealIdPattern` must be specified |
67
- |custom[].render | Function(payload) |A custom function to render the matchig/winning bid |Either this parameter or `custom[].renderUrl` must be specified. The `payload` parameter contains: `payload.bid`, `payload.bidRequest`, `payload.adm` |
68
-
69
- ### Example Configurations
70
-
71
- ### Only (official) MASS support enabled
72
-
73
- ```js
74
- pbjs.que.push(function() {
75
- pbjs.setConfig({
76
- mass: {
77
- renderUrl: 'https://cdn.massplatform.net/bootloader.js'
78
- }
79
- });
80
- });
81
- ```
82
-
83
- ### MASS support disabled, custom renderer enabled
84
-
85
- ```js
86
- pbjs.que.push(function() {
87
- pbjs.setConfig({
88
- mass: {
89
- custom: [
90
- {
91
- dealIdPattern: /xyz/,
92
- renderUrl: 'https://my.domain.com/render.js',
93
- namespace: 'xyz'
94
- }
95
- ]
96
- }
97
- });
98
- });
99
- ```
100
-
101
- ### Custom `match` and `render`
102
-
103
- ```js
104
- pbjs.que.push(function() {
105
- pbjs.setConfig({
106
- mass: {
107
- custom: [
108
- {
109
- match: function(bid) {
110
- // return true/false if matching/non-matching bid
111
- },
112
-
113
- render: function(payload) {
114
- console.log(payload);
115
- }
116
- }
117
- ]
118
- }
119
- });
120
- });
121
- ```
122
-
123
- ## Integration Example
124
-
125
- To view the integration example:
126
-
127
- 1) in your cli run:
128
-
129
- ```
130
- gulp serve --modules=ixBidAdapter,mass
131
- ```
132
-
133
- 2) in your browser, navigate to:
134
-
135
- ```
136
- http://localhost:9999/integrationExamples/mass/index.html
137
- ```
@@ -1,27 +0,0 @@
1
- import {
2
- logWarn
3
- } from '../src/utils.js';
4
- import adapter from '../libraries/analyticsAdapter/AnalyticsAdapter.js';
5
- import adapterManager from '../src/adapterManager.js';
6
-
7
- let openxAdapter = Object.assign(adapter({ urlParam: '', analyticsType: 'endpoint' }));
8
-
9
- openxAdapter.originEnableAnalytics = openxAdapter.enableAnalytics;
10
-
11
- openxAdapter.enableAnalytics = function(adapterConfig = {options: {}}) {
12
- logWarn('OpenX Analytics has been deprecated, this adapter will be removed in Prebid 8');
13
-
14
- openxAdapter.track = prebidAnalyticsEventHandler;
15
-
16
- openxAdapter.originEnableAnalytics(adapterConfig);
17
- };
18
-
19
- adapterManager.registerAnalyticsAdapter({
20
- adapter: openxAdapter,
21
- code: 'openx'
22
- });
23
-
24
- export default openxAdapter;
25
-
26
- function prebidAnalyticsEventHandler({eventType, args}) {
27
- }
@@ -1,135 +0,0 @@
1
-
2
- # OpenX Analytics Adapter to Prebid.js
3
- ## Implementation Guide
4
- #### Internal use only
5
-
6
- ---
7
-
8
- # NOTE: OPENX NO LONGER OFFERS ANALYTICS
9
- # THIS ADAPTER NO LONGER FUNCTIONS AND
10
- # WILL BE REMOVED IN PREBID 8
11
-
12
- # About this Guide
13
- This implementation guide walks through the flow of onboarding an alpha Publisher to test OpenX’s new Analytics Adapter.
14
-
15
- - [Adding OpenX Analytics Adapter to Prebid.js](#adding-openx-analytics-adapter-to-prebidjs)
16
- - [Publisher Builds Prebid.js File Flow](#publisher-builds-prebidjs-file-flow)
17
- - [OpenX Builds Prebid.js File Flow](#openx-builds-prebidjs-file-flow)
18
- - [Website Configuration](#website-configuration)
19
- - [Configuration Options](#configuration-options)
20
- - [Viewing Data](#viewing-data)
21
-
22
- ---
23
-
24
- # Adding OpenX Analytics Adapter to Prebid.js
25
- A Publisher has two options to add the OpenX Analytics Adapter to Prebid.js:
26
-
27
- 1. [Publisher builds the Prebid.js file](#publisher-builds-prebid.js-file-flow): If the Publisher is familiar with building Prebid.js (through the command line and not through the download site), OpenX can provide to the Publisher only the Analytics Adapter code.
28
-
29
- 2. [OpenX builds the Prebid.js file](#openx-builds-prebid.js-file-flow): If the Publisher is unfamiliar with building Prebid.js, the Publisher should advise OpenX which modules to include by going to the [Prebid download site](http://prebid.org/download.html) and selecting all the desired items (adapters and modules) for OpenX.
30
-
31
- ---
32
-
33
- ## Publisher Builds Prebid.js File Flow
34
- Use this option if the Publisher is building the Prebid.js file.
35
-
36
- 1. OpenX sends Publisher the new Analytics Adapter code.
37
-
38
- 2. Publisher replaces the file in `<path_to_prebid.js_folder>/modules/openxAnalyticsAdapter.js` with the file provided by OpenX.
39
-
40
- 3. Publisher runs the build command in `<path_to_prebid.js_folder>` and includes `openxAnalyticsAdapter` as one of the modules to include.
41
-
42
- For example:
43
-
44
- ```shell
45
- gulp build --modules=openxBidAdapter,rubiconBidAdapter,sovrnBidAdapter,openxBidAdapter,openxAnalyticsAdapter,dfpAdServerVideo
46
- ```
47
-
48
- 4. Publisher deploys the Prebid.js file from `<path_to_prebid.js_folder>/build/dist/prebid.js` to a website.
49
-
50
- ---
51
-
52
- ## OpenX Builds Prebid.js File Flow
53
- Use this option if OpenX is building the Prebid.js file on behalf of the Publisher.
54
-
55
- 1. Publisher refers to the [Prebid download site](http://prebid.org/download.html) and sends a list of adapters and modules to OpenX.
56
-
57
- >Note: The Publisher must be aware that only Prebid 3.0+ is supported.
58
-
59
- For example (does not have to follow exact format):
60
-
61
- ```yaml
62
- Prebid Version: 3.10+
63
- Modules:
64
- Bidders
65
- OpenX
66
- Rubicon
67
- Sovrn
68
- Consent Management
69
- US Privacy
70
- User ID
71
- IdentityLink ID
72
- DFP Video
73
- Supply Chain Object
74
- Currency
75
- ```
76
-
77
- 2. OpenX uses the information to build a package to the user’s specification and includes `openxAnalyticsAdapter` as an additional module.
78
-
79
- 3. OpenX sends the built package to the Publisher.
80
-
81
- 4. Publisher deploys the modified Prebid.js to a website.
82
-
83
- ---
84
-
85
- # Website Configuration
86
- To configure your website, add the following code snippet to your website:
87
-
88
- ```javascript
89
- pbjs.que.push(function () {
90
- pbjs.enableAnalytics([{
91
- provider: "openx",
92
- options: {
93
- publisherPlatformId: "OPENX_PROVIDED_PLATFORM_ID", // eg: "a3aece0c-9e80-4316-8deb-faf804779bd1"
94
- publisherAccountId: PUBLISHER_ACCOUNT_ID, // eg: 537143056
95
- sampling: 0.05, // 5% sample rate
96
- testCode: 'test-code-1'
97
- }
98
- }]);
99
- });
100
- ```
101
-
102
- ---
103
-
104
- ## Configuration Options
105
- Configuration options are a follows:
106
-
107
- | Property | Type | Required? | Description | Example |
108
- |:---|:---|:---|:---|:---|
109
- | `orgId` | `string` | Yes | Used to determine ownership of data. | `aa1bb2cc-3dd4-4316-8deb-faf804779bd1` |
110
- | `publisherPlatformId` | `string` | No <br> **__Deprecated. Please use orgId__** | Used to determine ownership of data. | `a3aece0c-9e80-4316-8deb-faf804779bd1` |
111
- | `publisherAccountId` | `number` | No <br> **__Deprecated. Please use orgId__** | Used to determine ownership of data. | `1537143056` |
112
- | `sampling` | `number` | Yes | Sampling rate | Undefined or `1.00` - No sampling. Analytics is sent all the time.<br>0.5 - 50% of users will send analytics data. |
113
- | `testCode` | `string` | No | Used to label analytics data for the purposes of tests.<br>This label is treated as a dimension and can be compared against other labels. | `timeout_config_1`<br>`timeout_config_2`<br>`timeout_default` |
114
- | `campaign` | `Object` | No | Object with 5 parameters: <ul><li>content</li><li>medium</li><li>name</li><li>source</li><li>term</li></ul> Each parameter is a free-form string. Refer to metrics doc on when to use these fields. By setting a value to one of these properties, you override the associated url utm query parameter. | |
115
- | `payloadWaitTime` | `number` | No | Delay after all slots of an auction renders before the payload is sent. <br> Defaults to 100ms | 1000 |
116
- ---
117
-
118
- # Viewing Data
119
- The Prebid Report available in the Reporting in the Cloud tool, allows you to view your data.
120
-
121
- **To view your data:**
122
-
123
- 1. Log in to [OpenX Reporting](https://openx.sigmoid.io/app).
124
-
125
- 2. In the top right, click on the **View** list and then select **Prebidreport**.
126
-
127
- 3. On the left icon bar, click on the dimensions icon.
128
-
129
- 4. Add the dimensions that you need.
130
-
131
- 5. On the left icon bar, click on the metrics icon.
132
-
133
- 6. Add the metrics (graphs) that you need.
134
-
135
- The data appears on the Analyze screen.
@@ -1,238 +0,0 @@
1
- import {config} from '../src/config.js';
2
- import {registerBidder} from '../src/adapters/bidderFactory.js';
3
- import * as utils from '../src/utils.js';
4
- import {mergeDeep} from '../src/utils.js';
5
- import {BANNER, VIDEO} from '../src/mediaTypes.js';
6
- import {ortbConverter} from '../libraries/ortbConverter/converter.js';
7
-
8
- const bidderConfig = 'hb_pb_ortb';
9
- const bidderVersion = '1.0';
10
- export const REQUEST_URL = 'https://rtb.openx.net/openrtbb/prebidjs';
11
- export const SYNC_URL = 'https://u.openx.net/w/1.0/pd';
12
- export const DEFAULT_PH = '2d1251ae-7f3a-47cf-bd2a-2f288854a0ba';
13
- export const spec = {
14
- code: 'openx',
15
- supportedMediaTypes: [BANNER, VIDEO],
16
- isBidRequestValid,
17
- buildRequests,
18
- interpretResponse,
19
- getUserSyncs,
20
- transformBidParams
21
- };
22
-
23
- registerBidder(spec);
24
-
25
- const converter = ortbConverter({
26
- context: {
27
- netRevenue: true,
28
- ttl: 300
29
- },
30
- imp(buildImp, bidRequest, context) {
31
- const imp = buildImp(bidRequest, context);
32
- mergeDeep(imp, {
33
- tagid: bidRequest.params.unit,
34
- ext: {
35
- divid: bidRequest.adUnitCode
36
- }
37
- });
38
- if (bidRequest.params.customParams) {
39
- utils.deepSetValue(imp, 'ext.customParams', bidRequest.params.customParams);
40
- }
41
- if (bidRequest.params.customFloor && !imp.bidfloor) {
42
- imp.bidfloor = bidRequest.params.customFloor;
43
- }
44
- return imp;
45
- },
46
- request(buildRequest, imps, bidderRequest, context) {
47
- const req = buildRequest(imps, bidderRequest, context);
48
- mergeDeep(req, {
49
- at: 1,
50
- ext: {
51
- bc: `${bidderConfig}_${bidderVersion}`
52
- }
53
- })
54
- const bid = context.bidRequests[0];
55
- if (bid.params.coppa) {
56
- utils.deepSetValue(req, 'regs.coppa', 1);
57
- }
58
- if (bid.params.doNotTrack) {
59
- utils.deepSetValue(req, 'device.dnt', 1);
60
- }
61
- if (bid.params.platform) {
62
- utils.deepSetValue(req, 'ext.platform', bid.params.platform);
63
- }
64
- if (bid.params.delDomain) {
65
- utils.deepSetValue(req, 'ext.delDomain', bid.params.delDomain);
66
- }
67
- if (bid.params.response_template_name) {
68
- utils.deepSetValue(req, 'ext.response_template_name', bid.params.response_template_name);
69
- }
70
- if (bid.params.test) {
71
- req.test = 1
72
- }
73
- return req;
74
- },
75
- bidResponse(buildBidResponse, bid, context) {
76
- const bidResponse = buildBidResponse(bid, context);
77
- if (bid.ext) {
78
- bidResponse.meta.networkId = bid.ext.dsp_id;
79
- bidResponse.meta.advertiserId = bid.ext.buyer_id;
80
- bidResponse.meta.brandId = bid.ext.brand_id;
81
- }
82
- const {ortbResponse} = context;
83
- if (ortbResponse.ext && ortbResponse.ext.paf) {
84
- bidResponse.meta.paf = Object.assign({}, ortbResponse.ext.paf);
85
- bidResponse.meta.paf.content_id = utils.deepAccess(bid, 'ext.paf.content_id');
86
- }
87
- return bidResponse;
88
- },
89
- response(buildResponse, bidResponses, ortbResponse, context) {
90
- // pass these from request to the responses for use in userSync
91
- const {ortbRequest} = context;
92
- if (ortbRequest.ext) {
93
- if (ortbRequest.ext.delDomain) {
94
- utils.deepSetValue(ortbResponse, 'ext.delDomain', ortbRequest.ext.delDomain);
95
- }
96
- if (ortbRequest.ext.platform) {
97
- utils.deepSetValue(ortbResponse, 'ext.platform', ortbRequest.ext.platform);
98
- }
99
- }
100
- const response = buildResponse(bidResponses, ortbResponse, context);
101
- // TODO: we may want to standardize this and move fledge logic to ortbConverter
102
- let fledgeAuctionConfigs = utils.deepAccess(ortbResponse, 'ext.fledge_auction_configs');
103
- if (fledgeAuctionConfigs) {
104
- fledgeAuctionConfigs = Object.entries(fledgeAuctionConfigs).map(([bidId, cfg]) => {
105
- return {
106
- bidId,
107
- config: Object.assign({
108
- auctionSignals: {},
109
- }, cfg)
110
- }
111
- });
112
- return {
113
- bids: response.bids,
114
- fledgeAuctionConfigs,
115
- }
116
- } else {
117
- return response.bids
118
- }
119
- },
120
- overrides: {
121
- imp: {
122
- bidfloor(setBidFloor, imp, bidRequest, context) {
123
- // enforce floors should always be in USD
124
- // TODO: does it make sense that request.cur can be any currency, but request.imp[].bidfloorcur must be USD?
125
- const floor = {};
126
- setBidFloor(floor, bidRequest, {...context, currency: 'USD'});
127
- if (floor.bidfloorcur === 'USD') {
128
- Object.assign(imp, floor);
129
- }
130
- },
131
- video(orig, imp, bidRequest, context) {
132
- if (FEATURES.VIDEO) {
133
- // `orig` is the video imp processor, which looks at bidRequest.mediaTypes[VIDEO]
134
- // to populate imp.video
135
- // alter its input `bidRequest` to also pick up parameters from `bidRequest.params`
136
- let videoParams = bidRequest.mediaTypes[VIDEO];
137
- if (videoParams) {
138
- videoParams = Object.assign({}, videoParams, bidRequest.params.video);
139
- bidRequest = {...bidRequest, mediaTypes: {[VIDEO]: videoParams}}
140
- }
141
- orig(imp, bidRequest, context);
142
- if (imp.video && videoParams?.context === 'outstream') {
143
- imp.video.placement = imp.video.placement || 4;
144
- }
145
- }
146
- }
147
- }
148
- }
149
- });
150
-
151
- function transformBidParams(params, isOpenRtb) {
152
- return utils.convertTypes({
153
- 'unit': 'string',
154
- 'customFloor': 'number'
155
- }, params);
156
- }
157
-
158
- function isBidRequestValid(bidRequest) {
159
- const hasDelDomainOrPlatform = bidRequest.params.delDomain ||
160
- bidRequest.params.platform;
161
-
162
- if (utils.deepAccess(bidRequest, 'mediaTypes.banner') &&
163
- hasDelDomainOrPlatform) {
164
- return !!bidRequest.params.unit ||
165
- utils.deepAccess(bidRequest, 'mediaTypes.banner.sizes.length') > 0;
166
- }
167
-
168
- return !!(bidRequest.params.unit && hasDelDomainOrPlatform);
169
- }
170
-
171
- function buildRequests(bids, bidderRequest) {
172
- let videoBids = bids.filter(bid => isVideoBid(bid));
173
- let bannerBids = bids.filter(bid => isBannerBid(bid));
174
- let requests = bannerBids.length ? [createRequest(bannerBids, bidderRequest, BANNER)] : [];
175
- videoBids.forEach(bid => {
176
- requests.push(createRequest([bid], bidderRequest, VIDEO));
177
- });
178
- return requests;
179
- }
180
-
181
- function createRequest(bidRequests, bidderRequest, mediaType) {
182
- return {
183
- method: 'POST',
184
- url: config.getConfig('openxOrtbUrl') || REQUEST_URL,
185
- data: converter.toORTB({bidRequests, bidderRequest, context: {mediaType}})
186
- }
187
- }
188
-
189
- function isVideoBid(bid) {
190
- return utils.deepAccess(bid, 'mediaTypes.video');
191
- }
192
-
193
- function isBannerBid(bid) {
194
- return utils.deepAccess(bid, 'mediaTypes.banner') || !isVideoBid(bid);
195
- }
196
-
197
- function interpretResponse(resp, req) {
198
- if (!resp.body) {
199
- resp.body = {nbr: 0};
200
- }
201
- return converter.fromORTB({request: req.data, response: resp.body});
202
- }
203
-
204
- /**
205
- * @param syncOptions
206
- * @param responses
207
- * @param gdprConsent
208
- * @param uspConsent
209
- * @return {{type: (string), url: (*|string)}[]}
210
- */
211
- function getUserSyncs(syncOptions, responses, gdprConsent, uspConsent) {
212
- if (syncOptions.iframeEnabled || syncOptions.pixelEnabled) {
213
- let pixelType = syncOptions.iframeEnabled ? 'iframe' : 'image';
214
- let queryParamStrings = [];
215
- let syncUrl = SYNC_URL;
216
- if (gdprConsent) {
217
- queryParamStrings.push('gdpr=' + (gdprConsent.gdprApplies ? 1 : 0));
218
- queryParamStrings.push('gdpr_consent=' + encodeURIComponent(gdprConsent.consentString || ''));
219
- }
220
- if (uspConsent) {
221
- queryParamStrings.push('us_privacy=' + encodeURIComponent(uspConsent));
222
- }
223
- if (responses.length > 0 && responses[0].body && responses[0].body.ext) {
224
- const ext = responses[0].body.ext;
225
- if (ext.delDomain) {
226
- syncUrl = `https://${ext.delDomain}/w/1.0/pd`
227
- } else if (ext.platform) {
228
- queryParamStrings.push('ph=' + ext.platform)
229
- }
230
- } else {
231
- queryParamStrings.push('ph=' + DEFAULT_PH)
232
- }
233
- return [{
234
- type: pixelType,
235
- url: `${syncUrl}${queryParamStrings.length > 0 ? '?' + queryParamStrings.join('&') : ''}`
236
- }];
237
- }
238
- }
@@ -1,108 +0,0 @@
1
- # Overview
2
-
3
- ```
4
- Module Name: OpenX Bidder Adapter
5
- Module Type: Bidder Adapter
6
- Maintainer: team-openx@openx.com
7
- ```
8
-
9
- # Description
10
- DEPRECATED. Use openxBidAdapter.
11
-
12
- This adapter was originally an adapter used to test OpenX serving architecture changes.
13
- This adapter now mirrors openxBidAdapter and this adapter will be removed in a future release. Please use openxBidAdapter.
14
- Please note you should only include either openxBidAdapter or openxOrtbBidAdapter in your build.
15
-
16
- # Bid Parameters
17
- ## Banner
18
-
19
- | Name | Scope | Type | Description | Example
20
- | ---- | ----- | ---- | ----------- | -------
21
- | `delDomain` or `platform` | required | String | OpenX delivery domain or platform id provided by your OpenX representative. | "PUBLISHER-d.openx.net" or "555not5a-real-plat-form-id0123456789"
22
- | `unit` | required | String | OpenX ad unit ID provided by your OpenX representative. | "1611023122"
23
- | `customParams` | optional | Object | User-defined targeting key-value pairs. customParams applies to a specific unit. | `{key1: "v1", key2: ["v2","v3"]}`
24
- | `customFloor` | optional | Number | Minimum price in USD. customFloor applies to a specific unit. For example, use the following value to set a $1.50 floor: 1.50 <br/><br/> **WARNING:**<br/> Misuse of this parameter can impact revenue | 1.50
25
- | `doNotTrack` | optional | Boolean | Prevents advertiser from using data for this user. <br/><br/> **WARNING:**<br/> Request-level setting. May impact revenue. | true
26
- | `coppa` | optional | Boolean | Enables Child's Online Privacy Protection Act (COPPA) regulations. Use of `pbjs.setConfig({coppa: true});` is now preferred. | true
27
-
28
- ## Video
29
-
30
- | Name | Scope | Type | Description | Example
31
- | ---- | ----- | ---- | ----------- | -------
32
- | `unit` | required | String | OpenX ad unit ID provided by your OpenX representative. | "1611023122"
33
- | `delDomain` | required | String | OpenX delivery domain provided by your OpenX representative. | "PUBLISHER-d.openx.net"
34
- | `video` | optional | OpenRTB video subtypes | Use of adUnit.mediaTypes.video is now preferred. | `{ video: {mimes: ['video/mp4']}`
35
-
36
-
37
- # Example
38
- ```javascript
39
- var adUnits = [
40
- {
41
- code: 'test-div',
42
- sizes: [[728, 90]], // a display size
43
- mediaTypes: {'banner': {}},
44
- bids: [
45
- {
46
- bidder: 'openx',
47
- params: {
48
- unit: '539439964',
49
- delDomain: 'se-demo-d.openx.net',
50
- customParams: {
51
- key1: 'v1',
52
- key2: ['v2', 'v3']
53
- },
54
- }
55
- }, {
56
- bidder: 'openx',
57
- params: {
58
- unit: '539439964',
59
- platform: 'a3aece0c-9e80-4316-8deb-faf804779bd1',
60
- customParams: {
61
- key1: 'v1',
62
- key2: ['v2', 'v3']
63
- },
64
- }
65
- }
66
- ]
67
- },
68
- {
69
- code: 'video1',
70
- mediaTypes: {
71
- video: {
72
- playerSize: [640, 480],
73
- context: 'instream',
74
- mimes: ['video/x-ms-wmv, video/mp4']
75
- }
76
- },
77
- bids: [{
78
- bidder: 'openx',
79
- params: {
80
- unit: '1611023124',
81
- delDomain: 'PUBLISHER-d.openx.net',
82
- video: {
83
- mimes: ['video/x-ms-wmv, video/mp4'] // mediaTypes.video preferred
84
- }
85
- }
86
- }]p
87
- }
88
- ];
89
- ```
90
-
91
- # Configuration
92
- Add the following code to enable user syncing. By default, Prebid.js version 0.34.0+ turns off user syncing through iframes.
93
- OpenX strongly recommends enabling user syncing through iframes. This functionality improves DSP user match rates and increases the
94
- OpenX bid rate and bid price. Be sure to call `pbjs.setConfig()` only once.
95
-
96
- ```javascript
97
- pbjs.setConfig({
98
- userSync: {
99
- iframeEnabled: true
100
- }
101
- });
102
- ```
103
-
104
- # Additional Details
105
- [Banner Ads](https://docs.openx.com/publishers/prebid-adapter-web/)
106
-
107
- [Video Ads](https://docs.openx.com/publishers/prebid-adapter-video/)
108
-