prebid.js 10.2.0 → 10.4.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 (1650) hide show
  1. package/.github/dependabot.yml +8 -0
  2. package/.github/workflows/scripts/codepath-notification +1 -0
  3. package/creative/renderers/display/renderer.js +3 -4
  4. package/dist/chunks/1plusXRtdProvider.js +1 -1
  5. package/dist/chunks/33acrossAnalyticsAdapter.js +1 -1
  6. package/dist/chunks/33acrossBidAdapter.js +1 -1
  7. package/dist/chunks/33acrossBidAdapter.metadata.js +1 -1
  8. package/dist/chunks/33acrossIdSystem.js +1 -1
  9. package/dist/chunks/33acrossIdSystem.metadata.js +1 -1
  10. package/dist/chunks/acuityadsBidAdapter.metadata.js +1 -1
  11. package/dist/chunks/adagioAnalyticsAdapter.js +1 -1
  12. package/dist/chunks/adagioBidAdapter.js +1 -1
  13. package/dist/chunks/adagioBidAdapter.metadata.js +1 -1
  14. package/dist/chunks/adagioRtdProvider.metadata.js +1 -1
  15. package/dist/chunks/adagioUtils.js +1 -1
  16. package/dist/chunks/addefendBidAdapter.js +1 -1
  17. package/dist/chunks/addefendBidAdapter.metadata.js +1 -1
  18. package/dist/chunks/adfBidAdapter.metadata.js +1 -1
  19. package/dist/chunks/adfusionBidAdapter.metadata.js +1 -1
  20. package/dist/chunks/adgenerationBidAdapter.js +1 -1
  21. package/dist/chunks/adheseBidAdapter.metadata.js +1 -1
  22. package/dist/chunks/adkernelAdnBidAdapter.metadata.js +1 -1
  23. package/dist/chunks/adkernelBidAdapter.metadata.js +1 -1
  24. package/dist/chunks/adlooxRtdProvider.js +1 -1
  25. package/dist/chunks/admaticBidAdapter.metadata.js +1 -1
  26. package/dist/chunks/admixerBidAdapter.js +1 -1
  27. package/dist/chunks/admixerBidAdapter.metadata.js +1 -1
  28. package/dist/chunks/admixerIdSystem.metadata.js +1 -1
  29. package/dist/chunks/adnowBidAdapter.metadata.js +1 -1
  30. package/dist/chunks/adnuntiusBidAdapter.metadata.js +1 -1
  31. package/dist/chunks/adnuntiusRtdProvider.metadata.js +1 -1
  32. package/dist/chunks/adotBidAdapter.metadata.js +1 -1
  33. package/dist/chunks/adponeBidAdapter.metadata.js +1 -1
  34. package/dist/chunks/adqueryBidAdapter.js +1 -1
  35. package/dist/chunks/adqueryBidAdapter.metadata.js +1 -1
  36. package/dist/chunks/adqueryIdSystem.metadata.js +1 -1
  37. package/dist/chunks/adrelevantisBidAdapter.js +1 -1
  38. package/dist/chunks/adrinoBidAdapter.metadata.js +1 -1
  39. package/dist/chunks/ads_interactiveBidAdapter.metadata.js +1 -1
  40. package/dist/chunks/adstirBidAdapter.js +1 -1
  41. package/dist/chunks/adtargetBidAdapter.metadata.js +1 -1
  42. package/dist/chunks/adtelligentBidAdapter.metadata.js +1 -1
  43. package/dist/chunks/adtelligentIdSystem.metadata.js +1 -1
  44. package/dist/chunks/adtrgtmeBidAdapter.js +1 -1
  45. package/dist/chunks/aduptechBidAdapter.metadata.js +1 -1
  46. package/dist/chunks/advertisingBidAdapter.js +1 -1
  47. package/dist/chunks/adxcgAnalyticsAdapter.js +1 -1
  48. package/dist/chunks/adxcgBidAdapter.js +1 -1
  49. package/dist/chunks/adyoulikeBidAdapter.js +1 -1
  50. package/dist/chunks/adyoulikeBidAdapter.metadata.js +1 -1
  51. package/dist/chunks/agmaAnalyticsAdapter.js +1 -1
  52. package/dist/chunks/aidemBidAdapter.metadata.js +1 -1
  53. package/dist/chunks/airgridRtdProvider.metadata.js +1 -1
  54. package/dist/chunks/ajaBidAdapter.js +1 -1
  55. package/dist/chunks/alkimiBidAdapter.metadata.js +1 -1
  56. package/dist/chunks/ampliffyBidAdapter.metadata.js +1 -1
  57. package/dist/chunks/amxBidAdapter.js +1 -1
  58. package/dist/chunks/amxBidAdapter.metadata.js +1 -1
  59. package/dist/chunks/amxIdSystem.js +1 -1
  60. package/dist/chunks/amxIdSystem.metadata.js +1 -1
  61. package/dist/chunks/aniviewBidAdapter.js +1 -1
  62. package/dist/chunks/aniviewBidAdapter.metadata.js +1 -1
  63. package/dist/chunks/anonymisedRtdProvider.metadata.js +1 -1
  64. package/dist/chunks/appierAnalyticsAdapter.js +1 -1
  65. package/dist/chunks/appierBidAdapter.metadata.js +1 -1
  66. package/dist/chunks/appnexusBidAdapter.js +1 -1
  67. package/dist/chunks/appnexusBidAdapter.metadata.js +1 -1
  68. package/dist/chunks/appnexusUtils.js +1 -1
  69. package/dist/chunks/appushBidAdapter.metadata.js +1 -1
  70. package/dist/chunks/apstreamBidAdapter.metadata.js +1 -1
  71. package/dist/chunks/asoBidAdapter.js +1 -1
  72. package/dist/chunks/audiencerunBidAdapter.metadata.js +1 -1
  73. package/dist/chunks/axisBidAdapter.metadata.js +1 -1
  74. package/dist/chunks/axonixBidAdapter.js +1 -1
  75. package/dist/chunks/azerionedgeRtdProvider.metadata.js +1 -1
  76. package/dist/chunks/beopBidAdapter.js +1 -1
  77. package/dist/chunks/beopBidAdapter.metadata.js +1 -1
  78. package/dist/chunks/betweenBidAdapter.metadata.js +1 -1
  79. package/dist/chunks/bidglassBidAdapter.js +1 -1
  80. package/dist/chunks/bidmaticBidAdapter.metadata.js +1 -1
  81. package/dist/chunks/bidtheatreBidAdapter.metadata.js +1 -1
  82. package/dist/chunks/big-richmediaBidAdapter.js +1 -1
  83. package/dist/chunks/bitmediaBidAdapter.js +1 -1
  84. package/dist/chunks/bliinkBidAdapter.metadata.js +1 -1
  85. package/dist/chunks/blockthroughBidAdapter.js +1 -1
  86. package/dist/chunks/blockthroughBidAdapter.metadata.js +1 -1
  87. package/dist/chunks/blueBidAdapter.metadata.js +1 -1
  88. package/dist/chunks/bmsBidAdapter.metadata.js +1 -1
  89. package/dist/chunks/bmtmBidAdapter.js +1 -1
  90. package/dist/chunks/boldwinBidAdapter.metadata.js +1 -1
  91. package/dist/chunks/bridBidAdapter.js +1 -1
  92. package/dist/chunks/bridBidAdapter.metadata.js +1 -1
  93. package/dist/chunks/bridgewellBidAdapter.js +1 -1
  94. package/dist/chunks/browsiBidAdapter.metadata.js +1 -1
  95. package/dist/chunks/bucksenseBidAdapter.metadata.js +1 -1
  96. package/dist/chunks/carodaBidAdapter.js +1 -1
  97. package/dist/chunks/carodaBidAdapter.metadata.js +1 -1
  98. package/dist/chunks/categoryTranslation.metadata.js +1 -1
  99. package/dist/chunks/ccxBidAdapter.metadata.js +1 -1
  100. package/dist/chunks/ceeIdSystem.metadata.js +1 -1
  101. package/dist/chunks/chromeAiRtdProvider.metadata.js +1 -1
  102. package/dist/chunks/chtnwBidAdapter.js +1 -1
  103. package/dist/chunks/chunk-core.js +1 -1
  104. package/dist/chunks/compassBidAdapter.metadata.js +1 -1
  105. package/dist/chunks/conceptxBidAdapter.metadata.js +1 -1
  106. package/dist/chunks/concertBidAdapter.js +1 -1
  107. package/dist/chunks/connatixBidAdapter.metadata.js +1 -1
  108. package/dist/chunks/connectIdSystem.metadata.js +1 -1
  109. package/dist/chunks/connectadBidAdapter.js +1 -1
  110. package/dist/chunks/connectadBidAdapter.metadata.js +1 -1
  111. package/dist/chunks/consumableBidAdapter.js +1 -1
  112. package/dist/chunks/contentexchangeBidAdapter.metadata.js +1 -1
  113. package/dist/chunks/contxtfulBidAdapter.js +1 -1
  114. package/dist/chunks/conversantBidAdapter.js +1 -1
  115. package/dist/chunks/conversantBidAdapter.metadata.js +1 -1
  116. package/dist/chunks/copper6sspBidAdapter.metadata.js +1 -1
  117. package/dist/chunks/cpmstarBidAdapter.metadata.js +1 -1
  118. package/dist/chunks/craftBidAdapter.js +1 -1
  119. package/dist/chunks/creative-renderer-display.js +1 -1
  120. package/dist/chunks/criteoBidAdapter.js +1 -1
  121. package/dist/chunks/criteoBidAdapter.metadata.js +1 -1
  122. package/dist/chunks/criteoIdSystem.metadata.js +1 -1
  123. package/dist/chunks/cryptoUtils.js +1 -0
  124. package/dist/chunks/cwireBidAdapter.js +1 -1
  125. package/dist/chunks/cwireBidAdapter.metadata.js +1 -1
  126. package/dist/chunks/czechAdIdSystem.metadata.js +1 -1
  127. package/dist/chunks/dailymotionBidAdapter.js +1 -1
  128. package/dist/chunks/dailymotionBidAdapter.metadata.js +1 -1
  129. package/dist/chunks/debugging-standalone.js +1 -1
  130. package/dist/chunks/debugging.metadata.js +1 -1
  131. package/dist/chunks/deepintentBidAdapter.metadata.js +1 -1
  132. package/dist/chunks/deltaprojectsBidAdapter.metadata.js +1 -1
  133. package/dist/chunks/dependencies.json +13 -0
  134. package/dist/chunks/dianomiBidAdapter.metadata.js +1 -1
  135. package/dist/chunks/digitalMatterBidAdapter.metadata.js +1 -1
  136. package/dist/chunks/distroscaleBidAdapter.metadata.js +1 -1
  137. package/dist/chunks/docereeAdManagerBidAdapter.metadata.js +1 -1
  138. package/dist/chunks/docereeBidAdapter.metadata.js +1 -1
  139. package/dist/chunks/dspxBidAdapter.js +1 -1
  140. package/dist/chunks/dspxBidAdapter.metadata.js +1 -1
  141. package/dist/chunks/dxkultureBidAdapter.js +1 -1
  142. package/dist/chunks/e_volutionBidAdapter.metadata.js +1 -1
  143. package/dist/chunks/edge226BidAdapter.metadata.js +1 -1
  144. package/dist/chunks/eplanningBidAdapter.js +1 -1
  145. package/dist/chunks/equativBidAdapter.js +1 -1
  146. package/dist/chunks/equativBidAdapter.metadata.js +1 -1
  147. package/dist/chunks/eskimiBidAdapter.js +1 -1
  148. package/dist/chunks/eskimiBidAdapter.metadata.js +1 -1
  149. package/dist/chunks/etargetBidAdapter.metadata.js +1 -1
  150. package/dist/chunks/euidIdSystem.js +1 -1
  151. package/dist/chunks/euidIdSystem.metadata.js +1 -1
  152. package/dist/chunks/exadsBidAdapter.js +1 -1
  153. package/dist/chunks/exadsBidAdapter.metadata.js +1 -1
  154. package/dist/chunks/excoBidAdapter.js +1 -1
  155. package/dist/chunks/feedadBidAdapter.js +1 -1
  156. package/dist/chunks/feedadBidAdapter.metadata.js +1 -1
  157. package/dist/chunks/finativeBidAdapter.js +1 -1
  158. package/dist/chunks/fwsspBidAdapter.metadata.js +1 -1
  159. package/dist/chunks/gamoshiBidAdapter.metadata.js +1 -1
  160. package/dist/chunks/getintentBidAdapter.js +1 -1
  161. package/dist/chunks/glomexBidAdapter.metadata.js +1 -1
  162. package/dist/chunks/gmosspBidAdapter.js +1 -1
  163. package/dist/chunks/goldbachBidAdapter.metadata.js +1 -1
  164. package/dist/chunks/greenbidsAnalyticsAdapter.js +1 -1
  165. package/dist/chunks/greenbidsBidAdapter.js +1 -1
  166. package/dist/chunks/greenbidsBidAdapter.metadata.js +1 -1
  167. package/dist/chunks/greenbidsRtdProvider.js +1 -1
  168. package/dist/chunks/gridBidAdapter.js +1 -1
  169. package/dist/chunks/gridBidAdapter.metadata.js +1 -1
  170. package/dist/chunks/gumgumBidAdapter.js +1 -1
  171. package/dist/chunks/gumgumBidAdapter.metadata.js +1 -1
  172. package/dist/chunks/h12mediaBidAdapter.js +1 -1
  173. package/dist/chunks/hadronIdSystem.metadata.js +1 -1
  174. package/dist/chunks/hadronRtdProvider.metadata.js +1 -1
  175. package/dist/chunks/holidBidAdapter.metadata.js +1 -1
  176. package/dist/chunks/hybridBidAdapter.metadata.js +1 -1
  177. package/dist/chunks/hypelabBidAdapter.js +1 -1
  178. package/dist/chunks/iasRtdProvider.js +1 -1
  179. package/dist/chunks/id5AnalyticsAdapter.js +1 -1
  180. package/dist/chunks/id5IdSystem.js +1 -1
  181. package/dist/chunks/id5IdSystem.metadata.js +1 -1
  182. package/dist/chunks/identityLinkIdSystem.metadata.js +1 -1
  183. package/dist/chunks/illuminBidAdapter.metadata.js +1 -1
  184. package/dist/chunks/impactifyBidAdapter.metadata.js +1 -1
  185. package/dist/chunks/improvedigitalBidAdapter.js +1 -1
  186. package/dist/chunks/improvedigitalBidAdapter.metadata.js +1 -1
  187. package/dist/chunks/inmobiBidAdapter.js +1 -1
  188. package/dist/chunks/inmobiBidAdapter.metadata.js +1 -1
  189. package/dist/chunks/innityBidAdapter.metadata.js +1 -1
  190. package/dist/chunks/insticatorBidAdapter.js +1 -1
  191. package/dist/chunks/insticatorBidAdapter.metadata.js +1 -1
  192. package/dist/chunks/intentIqAnalyticsAdapter.js +1 -1
  193. package/dist/chunks/intentIqIdSystem.metadata.js +1 -1
  194. package/dist/chunks/invibesBidAdapter.metadata.js +1 -1
  195. package/dist/chunks/ipromBidAdapter.metadata.js +1 -1
  196. package/dist/chunks/ixBidAdapter.js +1 -1
  197. package/dist/chunks/ixBidAdapter.metadata.js +1 -1
  198. package/dist/chunks/jixieBidAdapter.js +1 -1
  199. package/dist/chunks/justIdSystem.metadata.js +1 -1
  200. package/dist/chunks/justpremiumBidAdapter.js +1 -1
  201. package/dist/chunks/justpremiumBidAdapter.metadata.js +1 -1
  202. package/dist/chunks/jwplayerBidAdapter.metadata.js +1 -1
  203. package/dist/chunks/jwplayerRtdProvider.js +1 -1
  204. package/dist/chunks/jwplayerVideoProvider.js +1 -1
  205. package/dist/chunks/kargoBidAdapter.js +1 -1
  206. package/dist/chunks/kargoBidAdapter.metadata.js +1 -1
  207. package/dist/chunks/kimberliteBidAdapter.js +1 -1
  208. package/dist/chunks/kubientBidAdapter.js +1 -1
  209. package/dist/chunks/kubientBidAdapter.metadata.js +1 -1
  210. package/dist/chunks/kueezRtbBidAdapter.metadata.js +1 -1
  211. package/dist/chunks/lassoBidAdapter.js +1 -1
  212. package/dist/chunks/lifestreetBidAdapter.js +1 -1
  213. package/dist/chunks/limelightDigitalBidAdapter.metadata.js +1 -1
  214. package/dist/chunks/liveIntentId.js +1 -1
  215. package/dist/chunks/liveIntentIdSystem.metadata.js +1 -1
  216. package/dist/chunks/liveIntentRtdProvider.metadata.js +1 -1
  217. package/dist/chunks/livewrappedBidAdapter.metadata.js +1 -1
  218. package/dist/chunks/logicadBidAdapter.js +1 -1
  219. package/dist/chunks/loopmeBidAdapter.metadata.js +1 -1
  220. package/dist/chunks/lotamePanoramaIdSystem.metadata.js +1 -1
  221. package/dist/chunks/luceadBidAdapter.js +1 -1
  222. package/dist/chunks/luceadBidAdapter.metadata.js +1 -1
  223. package/dist/chunks/luponmediaBidAdapter.metadata.js +1 -1
  224. package/dist/chunks/mabidderBidAdapter.js +1 -1
  225. package/dist/chunks/madsenseBidAdapter.js +1 -1
  226. package/dist/chunks/madvertiseBidAdapter.metadata.js +1 -1
  227. package/dist/chunks/magniteAnalyticsAdapter.js +1 -1
  228. package/dist/chunks/malltvAnalyticsAdapter.js +1 -1
  229. package/dist/chunks/marsmediaBidAdapter.js +1 -1
  230. package/dist/chunks/marsmediaBidAdapter.metadata.js +1 -1
  231. package/dist/chunks/mediaConsortiumBidAdapter.metadata.js +1 -1
  232. package/dist/chunks/mediaforceBidAdapter.metadata.js +1 -1
  233. package/dist/chunks/mediafuseBidAdapter.js +1 -1
  234. package/dist/chunks/mediafuseBidAdapter.metadata.js +1 -1
  235. package/dist/chunks/mediagoBidAdapter.metadata.js +1 -1
  236. package/dist/chunks/mediakeysBidAdapter.metadata.js +1 -1
  237. package/dist/chunks/medianetBidAdapter.js +1 -1
  238. package/dist/chunks/medianetBidAdapter.metadata.js +1 -1
  239. package/dist/chunks/medianetUtils.js +1 -1
  240. package/dist/chunks/mediasquareBidAdapter.js +1 -1
  241. package/dist/chunks/mediasquareBidAdapter.metadata.js +1 -1
  242. package/dist/chunks/mgidBidAdapter.js +1 -1
  243. package/dist/chunks/mgidBidAdapter.metadata.js +1 -1
  244. package/dist/chunks/mgidRtdProvider.metadata.js +1 -1
  245. package/dist/chunks/mgidXBidAdapter.metadata.js +1 -1
  246. package/dist/chunks/minutemediaBidAdapter.metadata.js +1 -1
  247. package/dist/chunks/missenaBidAdapter.js +1 -1
  248. package/dist/chunks/missenaBidAdapter.metadata.js +1 -1
  249. package/dist/chunks/mobianRtdProvider.metadata.js +1 -1
  250. package/dist/chunks/mobilefuseBidAdapter.js +1 -1
  251. package/dist/chunks/mobilefuseBidAdapter.metadata.js +1 -1
  252. package/dist/chunks/mobkoiBidAdapter.metadata.js +1 -1
  253. package/dist/chunks/mobkoiIdSystem.metadata.js +1 -1
  254. package/dist/chunks/nativeryBidAdapter.metadata.js +1 -1
  255. package/dist/chunks/nativoBidAdapter.metadata.js +1 -1
  256. package/dist/chunks/newspassidBidAdapter.metadata.js +1 -1
  257. package/dist/chunks/nextMillenniumBidAdapter.js +1 -1
  258. package/dist/chunks/nextMillenniumBidAdapter.metadata.js +1 -1
  259. package/dist/chunks/nextrollBidAdapter.metadata.js +1 -1
  260. package/dist/chunks/nexx360BidAdapter.metadata.js +1 -1
  261. package/dist/chunks/nexx360Utils.js +1 -1
  262. package/dist/chunks/nobidAnalyticsAdapter.js +1 -1
  263. package/dist/chunks/nobidBidAdapter.js +1 -1
  264. package/dist/chunks/nobidBidAdapter.metadata.js +1 -1
  265. package/dist/chunks/nodalsAiRtdProvider.js +1 -1
  266. package/dist/chunks/nodalsAiRtdProvider.metadata.js +1 -1
  267. package/dist/chunks/novatiqIdSystem.metadata.js +1 -1
  268. package/dist/chunks/oguryBidAdapter.js +1 -1
  269. package/dist/chunks/oguryBidAdapter.metadata.js +1 -1
  270. package/dist/chunks/omsBidAdapter.metadata.js +1 -1
  271. package/dist/chunks/onetagBidAdapter.js +1 -1
  272. package/dist/chunks/onetagBidAdapter.metadata.js +1 -1
  273. package/dist/chunks/ooloAnalyticsAdapter.js +1 -1
  274. package/dist/chunks/openwebBidAdapter.metadata.js +1 -1
  275. package/dist/chunks/openxBidAdapter.js +1 -1
  276. package/dist/chunks/openxBidAdapter.metadata.js +1 -1
  277. package/dist/chunks/operaadsBidAdapter.metadata.js +1 -1
  278. package/dist/chunks/optidigitalBidAdapter.js +1 -1
  279. package/dist/chunks/optidigitalBidAdapter.metadata.js +1 -1
  280. package/dist/chunks/optoutBidAdapter.metadata.js +1 -1
  281. package/dist/chunks/orbidderBidAdapter.js +1 -1
  282. package/dist/chunks/orbidderBidAdapter.metadata.js +1 -1
  283. package/dist/chunks/outbrainBidAdapter.js +1 -1
  284. package/dist/chunks/outbrainBidAdapter.metadata.js +1 -1
  285. package/dist/chunks/ozoneBidAdapter.metadata.js +1 -1
  286. package/dist/chunks/pairIdSystem.metadata.js +1 -1
  287. package/dist/chunks/performaxBidAdapter.metadata.js +1 -1
  288. package/dist/chunks/pgamsspBidAdapter.metadata.js +1 -1
  289. package/dist/chunks/pixfutureBidAdapter.js +1 -1
  290. package/dist/chunks/pixfutureBidAdapter.metadata.js +1 -1
  291. package/dist/chunks/playdigoBidAdapter.metadata.js +1 -1
  292. package/dist/chunks/prebid-core.metadata.js +1 -1
  293. package/dist/chunks/precisoBidAdapter.metadata.js +1 -1
  294. package/dist/chunks/prismaBidAdapter.metadata.js +1 -1
  295. package/dist/chunks/programmaticXBidAdapter.metadata.js +1 -1
  296. package/dist/chunks/proxistoreBidAdapter.metadata.js +1 -1
  297. package/dist/chunks/publinkIdSystem.js +1 -1
  298. package/dist/chunks/publinkIdSystem.metadata.js +1 -1
  299. package/dist/chunks/pubmaticAnalyticsAdapter.js +1 -1
  300. package/dist/chunks/pubmaticBidAdapter.js +1 -1
  301. package/dist/chunks/pubmaticBidAdapter.metadata.js +1 -1
  302. package/dist/chunks/pubmaticIdSystem.metadata.js +1 -1
  303. package/dist/chunks/pubwiseAnalyticsAdapter.js +1 -1
  304. package/dist/chunks/pubxaiAnalyticsAdapter.js +1 -1
  305. package/dist/chunks/pulsepointBidAdapter.js +1 -1
  306. package/dist/chunks/pulsepointBidAdapter.metadata.js +1 -1
  307. package/dist/chunks/pwbidBidAdapter.metadata.js +1 -1
  308. package/dist/chunks/pxyzBidAdapter.js +1 -1
  309. package/dist/chunks/qtBidAdapter.metadata.js +1 -1
  310. package/dist/chunks/quantcastBidAdapter.js +1 -1
  311. package/dist/chunks/quantcastBidAdapter.metadata.js +1 -1
  312. package/dist/chunks/quantcastIdSystem.metadata.js +1 -1
  313. package/dist/chunks/r2b2BidAdapter.metadata.js +1 -1
  314. package/dist/chunks/raynRtdProvider.metadata.js +1 -1
  315. package/dist/chunks/readpeakBidAdapter.js +1 -1
  316. package/dist/chunks/readpeakBidAdapter.metadata.js +1 -1
  317. package/dist/chunks/relaidoBidAdapter.js +1 -1
  318. package/dist/chunks/relayBidAdapter.metadata.js +1 -1
  319. package/dist/chunks/relevantdigitalBidAdapter.metadata.js +1 -1
  320. package/dist/chunks/resetdigitalBidAdapter.metadata.js +1 -1
  321. package/dist/chunks/responsiveAdsBidAdapter.metadata.js +1 -1
  322. package/dist/chunks/retailspotBidAdapter.js +1 -1
  323. package/dist/chunks/retailspotBidAdapter.metadata.js +1 -1
  324. package/dist/chunks/revcontentBidAdapter.metadata.js +1 -1
  325. package/dist/chunks/rhythmoneBidAdapter.js +1 -1
  326. package/dist/chunks/rhythmoneBidAdapter.metadata.js +1 -1
  327. package/dist/chunks/richaudienceBidAdapter.metadata.js +1 -1
  328. package/dist/chunks/riseBidAdapter.metadata.js +1 -1
  329. package/dist/chunks/riseUtils.js +1 -1
  330. package/dist/chunks/rixengineBidAdapter.metadata.js +1 -1
  331. package/dist/chunks/rtbhouseBidAdapter.metadata.js +1 -1
  332. package/dist/chunks/rubiconBidAdapter.js +1 -1
  333. package/dist/chunks/rubiconBidAdapter.metadata.js +1 -1
  334. package/dist/chunks/rumbleBidAdapter.js +1 -0
  335. package/dist/chunks/rumbleBidAdapter.metadata.js +1 -0
  336. package/dist/chunks/scatteredBidAdapter.metadata.js +1 -1
  337. package/dist/chunks/seedingAllianceBidAdapter.js +1 -1
  338. package/dist/chunks/seedingAllianceBidAdapter.metadata.js +1 -1
  339. package/dist/chunks/seedtagBidAdapter.js +1 -1
  340. package/dist/chunks/seedtagBidAdapter.metadata.js +1 -1
  341. package/dist/chunks/semantiqRtdProvider.metadata.js +1 -1
  342. package/dist/chunks/setupadBidAdapter.metadata.js +1 -1
  343. package/dist/chunks/sevioBidAdapter.js +1 -0
  344. package/dist/chunks/sevioBidAdapter.metadata.js +1 -0
  345. package/dist/chunks/sharedIdSystem.metadata.js +1 -1
  346. package/dist/chunks/sharethroughAnalyticsAdapter.js +1 -1
  347. package/dist/chunks/sharethroughBidAdapter.js +1 -1
  348. package/dist/chunks/sharethroughBidAdapter.metadata.js +1 -1
  349. package/dist/chunks/showheroes-bsBidAdapter.js +1 -1
  350. package/dist/chunks/showheroes-bsBidAdapter.metadata.js +1 -1
  351. package/dist/chunks/silvermobBidAdapter.metadata.js +1 -1
  352. package/dist/chunks/sirdataRtdProvider.metadata.js +1 -1
  353. package/dist/chunks/slimcutBidAdapter.metadata.js +1 -1
  354. package/dist/chunks/smaatoBidAdapter.js +1 -1
  355. package/dist/chunks/smaatoBidAdapter.metadata.js +1 -1
  356. package/dist/chunks/smartadserverBidAdapter.js +1 -1
  357. package/dist/chunks/smartadserverBidAdapter.metadata.js +1 -1
  358. package/dist/chunks/smartxBidAdapter.js +1 -1
  359. package/dist/chunks/smartxBidAdapter.metadata.js +1 -1
  360. package/dist/chunks/smartyadsBidAdapter.metadata.js +1 -1
  361. package/dist/chunks/smilewantedBidAdapter.js +1 -1
  362. package/dist/chunks/smilewantedBidAdapter.metadata.js +1 -1
  363. package/dist/chunks/snigelBidAdapter.js +1 -1
  364. package/dist/chunks/snigelBidAdapter.metadata.js +1 -1
  365. package/dist/chunks/sonaradsBidAdapter.js +1 -1
  366. package/dist/chunks/sonaradsBidAdapter.metadata.js +1 -1
  367. package/dist/chunks/sonobiBidAdapter.js +1 -1
  368. package/dist/chunks/sonobiBidAdapter.metadata.js +1 -1
  369. package/dist/chunks/sovrnBidAdapter.js +1 -1
  370. package/dist/chunks/sovrnBidAdapter.metadata.js +1 -1
  371. package/dist/chunks/sparteoBidAdapter.js +1 -1
  372. package/dist/chunks/sparteoBidAdapter.metadata.js +1 -1
  373. package/dist/chunks/ssmasBidAdapter.metadata.js +1 -1
  374. package/dist/chunks/sspBCBidAdapter.js +1 -1
  375. package/dist/chunks/sspBCBidAdapter.metadata.js +1 -1
  376. package/dist/chunks/stackadaptBidAdapter.metadata.js +1 -1
  377. package/dist/chunks/startioBidAdapter.metadata.js +1 -1
  378. package/dist/chunks/stroeerCoreBidAdapter.metadata.js +1 -1
  379. package/dist/chunks/stvBidAdapter.js +1 -1
  380. package/dist/chunks/stvBidAdapter.metadata.js +1 -1
  381. package/dist/chunks/sublimeBidAdapter.js +1 -1
  382. package/dist/chunks/sublimeBidAdapter.metadata.js +1 -1
  383. package/dist/chunks/taboolaBidAdapter.js +1 -1
  384. package/dist/chunks/taboolaBidAdapter.metadata.js +1 -1
  385. package/dist/chunks/taboolaIdSystem.metadata.js +1 -1
  386. package/dist/chunks/tappxBidAdapter.js +1 -1
  387. package/dist/chunks/tappxBidAdapter.metadata.js +1 -1
  388. package/dist/chunks/targetVideoBidAdapter.js +1 -1
  389. package/dist/chunks/targetVideoBidAdapter.metadata.js +1 -1
  390. package/dist/chunks/teadsBidAdapter.js +1 -1
  391. package/dist/chunks/teadsBidAdapter.metadata.js +1 -1
  392. package/dist/chunks/teadsIdSystem.metadata.js +1 -1
  393. package/dist/chunks/tealBidAdapter.metadata.js +1 -1
  394. package/dist/chunks/terceptAnalyticsAdapter.js +1 -1
  395. package/dist/chunks/themoneytizerBidAdapter.js +1 -1
  396. package/dist/chunks/themoneytizerBidAdapter.metadata.js +1 -1
  397. package/dist/chunks/tncIdSystem.metadata.js +1 -1
  398. package/dist/chunks/topicsFpdModule.metadata.js +1 -1
  399. package/dist/chunks/trionBidAdapter.js +1 -1
  400. package/dist/chunks/tripleliftBidAdapter.js +1 -1
  401. package/dist/chunks/tripleliftBidAdapter.metadata.js +1 -1
  402. package/dist/chunks/ttdBidAdapter.js +1 -1
  403. package/dist/chunks/ttdBidAdapter.metadata.js +1 -1
  404. package/dist/chunks/twistDigitalBidAdapter.metadata.js +1 -1
  405. package/dist/chunks/ucfunnelAnalyticsAdapter.js +1 -1
  406. package/dist/chunks/uid2IdSystem.js +1 -1
  407. package/dist/chunks/underdogmediaBidAdapter.js +1 -1
  408. package/dist/chunks/underdogmediaBidAdapter.metadata.js +1 -1
  409. package/dist/chunks/undertoneBidAdapter.js +1 -1
  410. package/dist/chunks/undertoneBidAdapter.metadata.js +1 -1
  411. package/dist/chunks/unifiedIdSystem.metadata.js +1 -1
  412. package/dist/chunks/unrulyBidAdapter.js +1 -1
  413. package/dist/chunks/unrulyBidAdapter.metadata.js +1 -1
  414. package/dist/chunks/userId.js +1 -1
  415. package/dist/chunks/userId.metadata.js +1 -1
  416. package/dist/chunks/validationFpdModule.metadata.js +1 -1
  417. package/dist/chunks/vidazooBidAdapter.metadata.js +1 -1
  418. package/dist/chunks/vidazooUtils.js +1 -1
  419. package/dist/chunks/videobyteBidAdapter.js +1 -1
  420. package/dist/chunks/vidoomyBidAdapter.metadata.js +1 -1
  421. package/dist/chunks/viewdeosDXBidAdapter.metadata.js +1 -1
  422. package/dist/chunks/viouslyBidAdapter.metadata.js +1 -1
  423. package/dist/chunks/visxBidAdapter.js +1 -1
  424. package/dist/chunks/visxBidAdapter.metadata.js +1 -1
  425. package/dist/chunks/vlybyBidAdapter.metadata.js +1 -1
  426. package/dist/chunks/voxBidAdapter.metadata.js +1 -1
  427. package/dist/chunks/vrtcalBidAdapter.metadata.js +1 -1
  428. package/dist/chunks/vuukleBidAdapter.js +1 -1
  429. package/dist/chunks/vuukleBidAdapter.metadata.js +1 -1
  430. package/dist/chunks/weboramaRtdProvider.js +1 -1
  431. package/dist/chunks/weboramaRtdProvider.metadata.js +1 -1
  432. package/dist/chunks/welectBidAdapter.metadata.js +1 -1
  433. package/dist/chunks/widespaceBidAdapter.js +1 -1
  434. package/dist/chunks/winrBidAdapter.js +1 -1
  435. package/dist/chunks/yahooAdsBidAdapter.js +1 -1
  436. package/dist/chunks/yahooAdsBidAdapter.metadata.js +1 -1
  437. package/dist/chunks/yandexBidAdapter.js +1 -1
  438. package/dist/chunks/yieldlabBidAdapter.metadata.js +1 -1
  439. package/dist/chunks/yieldliftBidAdapter.metadata.js +1 -1
  440. package/dist/chunks/yieldloveBidAdapter.metadata.js +1 -1
  441. package/dist/chunks/yieldmoBidAdapter.js +1 -1
  442. package/dist/chunks/yieldmoBidAdapter.metadata.js +1 -1
  443. package/dist/chunks/yieldoneAnalyticsAdapter.js +1 -1
  444. package/dist/chunks/zeotapIdPlusIdSystem.metadata.js +1 -1
  445. package/dist/chunks/zeta_globalBidAdapter.metadata.js +1 -1
  446. package/dist/chunks/zeta_global_sspBidAdapter.metadata.js +1 -1
  447. package/dist/not-for-prod/prebid.js +443 -438
  448. package/dist/src/creative/renderers/display/renderer.js +3 -4
  449. package/dist/src/creative/renderers/display/renderer.js.map +1 -1
  450. package/dist/src/libraries/adagioUtils/adagioUtils.js +1 -1
  451. package/dist/src/libraries/analyticsAdapter/AnalyticsAdapter.js.map +1 -1
  452. package/dist/src/libraries/appnexusUtils/anKeywords.js +15 -1
  453. package/dist/src/libraries/appnexusUtils/anKeywords.js.map +1 -1
  454. package/dist/src/libraries/consentManagement/cmUtils.js.map +1 -1
  455. package/dist/src/libraries/creative-renderer-display/renderer.d.ts +1 -1
  456. package/dist/src/libraries/creative-renderer-display/renderer.js +1 -1
  457. package/dist/src/libraries/creative-renderer-display/renderer.js.map +1 -1
  458. package/dist/src/libraries/cryptoUtils/wallets.js +14 -0
  459. package/dist/src/libraries/cryptoUtils/wallets.js.map +1 -0
  460. package/dist/src/libraries/dspxUtils/bidderUtils.js.map +1 -1
  461. package/dist/src/libraries/impUtils.js +36 -0
  462. package/dist/src/libraries/impUtils.js.map +1 -0
  463. package/dist/src/libraries/liveIntentId/externalIdSystem.js +1 -1
  464. package/dist/src/libraries/liveIntentId/idSystem.js +1 -1
  465. package/dist/src/libraries/liveIntentId/shared.js +20 -0
  466. package/dist/src/libraries/liveIntentId/shared.js.map +1 -1
  467. package/dist/src/libraries/medianetUtils/constants.js +1 -1
  468. package/dist/src/libraries/nexx360Utils/index.js +1 -1
  469. package/dist/src/libraries/nexx360Utils/index.js.map +1 -1
  470. package/dist/src/libraries/ortbConverter/converter.js.map +1 -1
  471. package/dist/src/libraries/riseUtils/index.js +1 -1
  472. package/dist/src/libraries/vidazooUtils/bidderUtils.js +1 -1
  473. package/dist/src/libraries/video/constants/events.js.map +1 -1
  474. package/dist/src/metadata/modules/33acrossBidAdapter.js +1 -1
  475. package/dist/src/metadata/modules/33acrossIdSystem.js +1 -1
  476. package/dist/src/metadata/modules/acuityadsBidAdapter.js +1 -1
  477. package/dist/src/metadata/modules/adagioBidAdapter.js +1 -1
  478. package/dist/src/metadata/modules/adagioRtdProvider.js +1 -1
  479. package/dist/src/metadata/modules/addefendBidAdapter.js +1 -1
  480. package/dist/src/metadata/modules/adfBidAdapter.js +1 -1
  481. package/dist/src/metadata/modules/adfusionBidAdapter.js +1 -1
  482. package/dist/src/metadata/modules/adheseBidAdapter.js +1 -1
  483. package/dist/src/metadata/modules/adkernelAdnBidAdapter.js +1 -1
  484. package/dist/src/metadata/modules/adkernelBidAdapter.js +1 -1
  485. package/dist/src/metadata/modules/admaticBidAdapter.js +1 -1
  486. package/dist/src/metadata/modules/admixerBidAdapter.js +1 -1
  487. package/dist/src/metadata/modules/admixerIdSystem.js +1 -1
  488. package/dist/src/metadata/modules/adnowBidAdapter.js +1 -1
  489. package/dist/src/metadata/modules/adnuntiusBidAdapter.js +1 -1
  490. package/dist/src/metadata/modules/adnuntiusRtdProvider.js +1 -1
  491. package/dist/src/metadata/modules/adotBidAdapter.js +1 -1
  492. package/dist/src/metadata/modules/adponeBidAdapter.js +1 -1
  493. package/dist/src/metadata/modules/adqueryBidAdapter.js +1 -1
  494. package/dist/src/metadata/modules/adqueryIdSystem.js +1 -1
  495. package/dist/src/metadata/modules/adrinoBidAdapter.js +1 -1
  496. package/dist/src/metadata/modules/ads_interactiveBidAdapter.js +1 -1
  497. package/dist/src/metadata/modules/adtargetBidAdapter.js +1 -1
  498. package/dist/src/metadata/modules/adtelligentBidAdapter.js +1 -1
  499. package/dist/src/metadata/modules/adtelligentIdSystem.js +1 -1
  500. package/dist/src/metadata/modules/aduptechBidAdapter.js +1 -1
  501. package/dist/src/metadata/modules/adyoulikeBidAdapter.js +1 -1
  502. package/dist/src/metadata/modules/aidemBidAdapter.js +1 -1
  503. package/dist/src/metadata/modules/airgridRtdProvider.js +1 -1
  504. package/dist/src/metadata/modules/alkimiBidAdapter.js +1 -1
  505. package/dist/src/metadata/modules/ampliffyBidAdapter.js +1 -1
  506. package/dist/src/metadata/modules/amxBidAdapter.js +1 -1
  507. package/dist/src/metadata/modules/amxIdSystem.js +1 -1
  508. package/dist/src/metadata/modules/aniviewBidAdapter.js +1 -1
  509. package/dist/src/metadata/modules/anonymisedRtdProvider.js +1 -1
  510. package/dist/src/metadata/modules/appierBidAdapter.js +1 -1
  511. package/dist/src/metadata/modules/appnexusBidAdapter.js +1 -1
  512. package/dist/src/metadata/modules/appushBidAdapter.js +1 -1
  513. package/dist/src/metadata/modules/apstreamBidAdapter.js +1 -1
  514. package/dist/src/metadata/modules/audiencerunBidAdapter.js +1 -1
  515. package/dist/src/metadata/modules/axisBidAdapter.js +1 -1
  516. package/dist/src/metadata/modules/azerionedgeRtdProvider.js +1 -1
  517. package/dist/src/metadata/modules/beopBidAdapter.js +1 -1
  518. package/dist/src/metadata/modules/betweenBidAdapter.js +1 -1
  519. package/dist/src/metadata/modules/bidmaticBidAdapter.js +1 -1
  520. package/dist/src/metadata/modules/bidtheatreBidAdapter.js +1 -1
  521. package/dist/src/metadata/modules/bliinkBidAdapter.js +1 -1
  522. package/dist/src/metadata/modules/blockthroughBidAdapter.js +1 -1
  523. package/dist/src/metadata/modules/blueBidAdapter.js +1 -1
  524. package/dist/src/metadata/modules/bmsBidAdapter.js +1 -1
  525. package/dist/src/metadata/modules/boldwinBidAdapter.js +1 -1
  526. package/dist/src/metadata/modules/bridBidAdapter.js +1 -1
  527. package/dist/src/metadata/modules/browsiBidAdapter.js +1 -1
  528. package/dist/src/metadata/modules/bucksenseBidAdapter.js +1 -1
  529. package/dist/src/metadata/modules/carodaBidAdapter.js +1 -1
  530. package/dist/src/metadata/modules/categoryTranslation.js +1 -1
  531. package/dist/src/metadata/modules/ccxBidAdapter.js +1 -1
  532. package/dist/src/metadata/modules/ceeIdSystem.js +1 -1
  533. package/dist/src/metadata/modules/chromeAiRtdProvider.js +1 -1
  534. package/dist/src/metadata/modules/compassBidAdapter.js +1 -1
  535. package/dist/src/metadata/modules/conceptxBidAdapter.js +1 -1
  536. package/dist/src/metadata/modules/connatixBidAdapter.js +1 -1
  537. package/dist/src/metadata/modules/connectIdSystem.js +1 -1
  538. package/dist/src/metadata/modules/connectadBidAdapter.js +1 -1
  539. package/dist/src/metadata/modules/contentexchangeBidAdapter.js +1 -1
  540. package/dist/src/metadata/modules/conversantBidAdapter.js +1 -1
  541. package/dist/src/metadata/modules/copper6sspBidAdapter.js +1 -1
  542. package/dist/src/metadata/modules/cpmstarBidAdapter.js +1 -1
  543. package/dist/src/metadata/modules/criteoBidAdapter.js +1 -1
  544. package/dist/src/metadata/modules/criteoIdSystem.js +1 -1
  545. package/dist/src/metadata/modules/cwireBidAdapter.js +1 -1
  546. package/dist/src/metadata/modules/czechAdIdSystem.js +1 -1
  547. package/dist/src/metadata/modules/dailymotionBidAdapter.js +1 -1
  548. package/dist/src/metadata/modules/debugging.js +1 -1
  549. package/dist/src/metadata/modules/deepintentBidAdapter.js +1 -1
  550. package/dist/src/metadata/modules/deltaprojectsBidAdapter.js +1 -1
  551. package/dist/src/metadata/modules/dianomiBidAdapter.js +1 -1
  552. package/dist/src/metadata/modules/digitalMatterBidAdapter.js +1 -1
  553. package/dist/src/metadata/modules/distroscaleBidAdapter.js +1 -1
  554. package/dist/src/metadata/modules/docereeAdManagerBidAdapter.js +1 -1
  555. package/dist/src/metadata/modules/docereeBidAdapter.js +1 -1
  556. package/dist/src/metadata/modules/dspxBidAdapter.js +1 -1
  557. package/dist/src/metadata/modules/e_volutionBidAdapter.js +1 -1
  558. package/dist/src/metadata/modules/edge226BidAdapter.js +1 -1
  559. package/dist/src/metadata/modules/equativBidAdapter.js +1 -1
  560. package/dist/src/metadata/modules/eskimiBidAdapter.js +1 -1
  561. package/dist/src/metadata/modules/etargetBidAdapter.js +1 -1
  562. package/dist/src/metadata/modules/euidIdSystem.js +1 -1
  563. package/dist/src/metadata/modules/exadsBidAdapter.js +1 -1
  564. package/dist/src/metadata/modules/feedadBidAdapter.js +1 -1
  565. package/dist/src/metadata/modules/fwsspBidAdapter.js +1 -1
  566. package/dist/src/metadata/modules/gamoshiBidAdapter.js +1 -1
  567. package/dist/src/metadata/modules/glomexBidAdapter.js +1 -1
  568. package/dist/src/metadata/modules/goldbachBidAdapter.js +1 -1
  569. package/dist/src/metadata/modules/greenbidsBidAdapter.js +1 -1
  570. package/dist/src/metadata/modules/gridBidAdapter.js +1 -1
  571. package/dist/src/metadata/modules/gumgumBidAdapter.js +1 -1
  572. package/dist/src/metadata/modules/hadronIdSystem.js +1 -1
  573. package/dist/src/metadata/modules/hadronRtdProvider.js +1 -1
  574. package/dist/src/metadata/modules/holidBidAdapter.js +1 -1
  575. package/dist/src/metadata/modules/hybridBidAdapter.js +1 -1
  576. package/dist/src/metadata/modules/id5IdSystem.js +1 -1
  577. package/dist/src/metadata/modules/identityLinkIdSystem.js +1 -1
  578. package/dist/src/metadata/modules/illuminBidAdapter.js +1 -1
  579. package/dist/src/metadata/modules/impactifyBidAdapter.js +1 -1
  580. package/dist/src/metadata/modules/improvedigitalBidAdapter.js +1 -1
  581. package/dist/src/metadata/modules/inmobiBidAdapter.js +1 -1
  582. package/dist/src/metadata/modules/innityBidAdapter.js +1 -1
  583. package/dist/src/metadata/modules/insticatorBidAdapter.js +1 -1
  584. package/dist/src/metadata/modules/intentIqIdSystem.js +1 -1
  585. package/dist/src/metadata/modules/invibesBidAdapter.js +1 -1
  586. package/dist/src/metadata/modules/ipromBidAdapter.js +1 -1
  587. package/dist/src/metadata/modules/ixBidAdapter.js +1 -1
  588. package/dist/src/metadata/modules/justIdSystem.js +1 -1
  589. package/dist/src/metadata/modules/justpremiumBidAdapter.js +1 -1
  590. package/dist/src/metadata/modules/jwplayerBidAdapter.js +1 -1
  591. package/dist/src/metadata/modules/kargoBidAdapter.js +1 -1
  592. package/dist/src/metadata/modules/kubientBidAdapter.js +1 -1
  593. package/dist/src/metadata/modules/kueezRtbBidAdapter.js +1 -1
  594. package/dist/src/metadata/modules/limelightDigitalBidAdapter.js +1 -1
  595. package/dist/src/metadata/modules/liveIntentIdSystem.js +1 -1
  596. package/dist/src/metadata/modules/liveIntentRtdProvider.js +1 -1
  597. package/dist/src/metadata/modules/livewrappedBidAdapter.js +1 -1
  598. package/dist/src/metadata/modules/loopmeBidAdapter.js +1 -1
  599. package/dist/src/metadata/modules/lotamePanoramaIdSystem.js +1 -1
  600. package/dist/src/metadata/modules/luceadBidAdapter.js +1 -1
  601. package/dist/src/metadata/modules/luponmediaBidAdapter.js +1 -1
  602. package/dist/src/metadata/modules/madvertiseBidAdapter.js +1 -1
  603. package/dist/src/metadata/modules/marsmediaBidAdapter.js +1 -1
  604. package/dist/src/metadata/modules/mediaConsortiumBidAdapter.js +1 -1
  605. package/dist/src/metadata/modules/mediaforceBidAdapter.js +1 -1
  606. package/dist/src/metadata/modules/mediafuseBidAdapter.js +1 -1
  607. package/dist/src/metadata/modules/mediagoBidAdapter.js +1 -1
  608. package/dist/src/metadata/modules/mediakeysBidAdapter.js +1 -1
  609. package/dist/src/metadata/modules/medianetBidAdapter.js +1 -1
  610. package/dist/src/metadata/modules/mediasquareBidAdapter.js +1 -1
  611. package/dist/src/metadata/modules/mgidBidAdapter.js +1 -1
  612. package/dist/src/metadata/modules/mgidRtdProvider.js +1 -1
  613. package/dist/src/metadata/modules/mgidXBidAdapter.js +1 -1
  614. package/dist/src/metadata/modules/minutemediaBidAdapter.js +1 -1
  615. package/dist/src/metadata/modules/missenaBidAdapter.js +1 -1
  616. package/dist/src/metadata/modules/mobianRtdProvider.js +1 -1
  617. package/dist/src/metadata/modules/mobilefuseBidAdapter.js +1 -1
  618. package/dist/src/metadata/modules/mobkoiBidAdapter.js +1 -1
  619. package/dist/src/metadata/modules/mobkoiIdSystem.js +1 -1
  620. package/dist/src/metadata/modules/nativeryBidAdapter.js +1 -1
  621. package/dist/src/metadata/modules/nativoBidAdapter.js +1 -1
  622. package/dist/src/metadata/modules/newspassidBidAdapter.js +1 -1
  623. package/dist/src/metadata/modules/nextMillenniumBidAdapter.js +1 -1
  624. package/dist/src/metadata/modules/nextrollBidAdapter.js +1 -1
  625. package/dist/src/metadata/modules/nexx360BidAdapter.js +1 -1
  626. package/dist/src/metadata/modules/nobidBidAdapter.js +1 -1
  627. package/dist/src/metadata/modules/nodalsAiRtdProvider.js +1 -1
  628. package/dist/src/metadata/modules/novatiqIdSystem.js +1 -1
  629. package/dist/src/metadata/modules/oguryBidAdapter.js +1 -1
  630. package/dist/src/metadata/modules/omsBidAdapter.js +1 -1
  631. package/dist/src/metadata/modules/onetagBidAdapter.js +1 -1
  632. package/dist/src/metadata/modules/openwebBidAdapter.js +1 -1
  633. package/dist/src/metadata/modules/openxBidAdapter.js +1 -1
  634. package/dist/src/metadata/modules/operaadsBidAdapter.js +1 -1
  635. package/dist/src/metadata/modules/optidigitalBidAdapter.js +1 -1
  636. package/dist/src/metadata/modules/optoutBidAdapter.js +1 -1
  637. package/dist/src/metadata/modules/orbidderBidAdapter.js +1 -1
  638. package/dist/src/metadata/modules/outbrainBidAdapter.js +1 -1
  639. package/dist/src/metadata/modules/ozoneBidAdapter.js +1 -1
  640. package/dist/src/metadata/modules/pairIdSystem.js +1 -1
  641. package/dist/src/metadata/modules/performaxBidAdapter.js +1 -1
  642. package/dist/src/metadata/modules/pgamsspBidAdapter.js +1 -1
  643. package/dist/src/metadata/modules/pixfutureBidAdapter.js +1 -1
  644. package/dist/src/metadata/modules/playdigoBidAdapter.js +1 -1
  645. package/dist/src/metadata/modules/prebid-core.js +1 -1
  646. package/dist/src/metadata/modules/precisoBidAdapter.js +1 -1
  647. package/dist/src/metadata/modules/prismaBidAdapter.js +1 -1
  648. package/dist/src/metadata/modules/programmaticXBidAdapter.js +1 -1
  649. package/dist/src/metadata/modules/proxistoreBidAdapter.js +1 -1
  650. package/dist/src/metadata/modules/publinkIdSystem.js +1 -1
  651. package/dist/src/metadata/modules/pubmaticBidAdapter.js +1 -1
  652. package/dist/src/metadata/modules/pubmaticIdSystem.js +1 -1
  653. package/dist/src/metadata/modules/pulsepointBidAdapter.js +1 -1
  654. package/dist/src/metadata/modules/pwbidBidAdapter.js +1 -1
  655. package/dist/src/metadata/modules/qtBidAdapter.js +1 -1
  656. package/dist/src/metadata/modules/quantcastBidAdapter.js +1 -1
  657. package/dist/src/metadata/modules/quantcastIdSystem.js +1 -1
  658. package/dist/src/metadata/modules/r2b2BidAdapter.js +1 -1
  659. package/dist/src/metadata/modules/raynRtdProvider.js +1 -1
  660. package/dist/src/metadata/modules/readpeakBidAdapter.js +1 -1
  661. package/dist/src/metadata/modules/relayBidAdapter.js +1 -1
  662. package/dist/src/metadata/modules/relevantdigitalBidAdapter.js +1 -1
  663. package/dist/src/metadata/modules/resetdigitalBidAdapter.js +1 -1
  664. package/dist/src/metadata/modules/responsiveAdsBidAdapter.js +1 -1
  665. package/dist/src/metadata/modules/retailspotBidAdapter.js +1 -1
  666. package/dist/src/metadata/modules/revcontentBidAdapter.js +1 -1
  667. package/dist/src/metadata/modules/rhythmoneBidAdapter.js +1 -1
  668. package/dist/src/metadata/modules/richaudienceBidAdapter.js +1 -1
  669. package/dist/src/metadata/modules/riseBidAdapter.js +1 -1
  670. package/dist/src/metadata/modules/rixengineBidAdapter.js +1 -1
  671. package/dist/src/metadata/modules/rtbhouseBidAdapter.js +1 -1
  672. package/dist/src/metadata/modules/rubiconBidAdapter.js +1 -1
  673. package/dist/src/metadata/modules/rumbleBidAdapter.js +2 -0
  674. package/dist/src/metadata/modules/scatteredBidAdapter.js +1 -1
  675. package/dist/src/metadata/modules/seedingAllianceBidAdapter.js +1 -1
  676. package/dist/src/metadata/modules/seedtagBidAdapter.js +1 -1
  677. package/dist/src/metadata/modules/semantiqRtdProvider.js +1 -1
  678. package/dist/src/metadata/modules/setupadBidAdapter.js +1 -1
  679. package/dist/src/metadata/modules/sevioBidAdapter.js +2 -0
  680. package/dist/src/metadata/modules/sharedIdSystem.js +1 -1
  681. package/dist/src/metadata/modules/sharethroughBidAdapter.js +1 -1
  682. package/dist/src/metadata/modules/showheroes-bsBidAdapter.js +1 -1
  683. package/dist/src/metadata/modules/silvermobBidAdapter.js +1 -1
  684. package/dist/src/metadata/modules/sirdataRtdProvider.js +1 -1
  685. package/dist/src/metadata/modules/slimcutBidAdapter.js +1 -1
  686. package/dist/src/metadata/modules/smaatoBidAdapter.js +1 -1
  687. package/dist/src/metadata/modules/smartadserverBidAdapter.js +1 -1
  688. package/dist/src/metadata/modules/smartxBidAdapter.js +1 -1
  689. package/dist/src/metadata/modules/smartyadsBidAdapter.js +1 -1
  690. package/dist/src/metadata/modules/smilewantedBidAdapter.js +1 -1
  691. package/dist/src/metadata/modules/snigelBidAdapter.js +1 -1
  692. package/dist/src/metadata/modules/sonaradsBidAdapter.js +1 -1
  693. package/dist/src/metadata/modules/sonobiBidAdapter.js +1 -1
  694. package/dist/src/metadata/modules/sovrnBidAdapter.js +1 -1
  695. package/dist/src/metadata/modules/sparteoBidAdapter.js +1 -1
  696. package/dist/src/metadata/modules/ssmasBidAdapter.js +1 -1
  697. package/dist/src/metadata/modules/sspBCBidAdapter.js +1 -1
  698. package/dist/src/metadata/modules/stackadaptBidAdapter.js +1 -1
  699. package/dist/src/metadata/modules/startioBidAdapter.js +1 -1
  700. package/dist/src/metadata/modules/stroeerCoreBidAdapter.js +1 -1
  701. package/dist/src/metadata/modules/stvBidAdapter.js +1 -1
  702. package/dist/src/metadata/modules/sublimeBidAdapter.js +1 -1
  703. package/dist/src/metadata/modules/taboolaBidAdapter.js +1 -1
  704. package/dist/src/metadata/modules/taboolaIdSystem.js +1 -1
  705. package/dist/src/metadata/modules/tappxBidAdapter.js +1 -1
  706. package/dist/src/metadata/modules/targetVideoBidAdapter.js +1 -1
  707. package/dist/src/metadata/modules/teadsBidAdapter.js +1 -1
  708. package/dist/src/metadata/modules/teadsIdSystem.js +1 -1
  709. package/dist/src/metadata/modules/tealBidAdapter.js +1 -1
  710. package/dist/src/metadata/modules/themoneytizerBidAdapter.js +1 -1
  711. package/dist/src/metadata/modules/tncIdSystem.js +1 -1
  712. package/dist/src/metadata/modules/topicsFpdModule.js +1 -1
  713. package/dist/src/metadata/modules/tripleliftBidAdapter.js +1 -1
  714. package/dist/src/metadata/modules/ttdBidAdapter.js +1 -1
  715. package/dist/src/metadata/modules/twistDigitalBidAdapter.js +1 -1
  716. package/dist/src/metadata/modules/underdogmediaBidAdapter.js +1 -1
  717. package/dist/src/metadata/modules/undertoneBidAdapter.js +1 -1
  718. package/dist/src/metadata/modules/unifiedIdSystem.js +1 -1
  719. package/dist/src/metadata/modules/unrulyBidAdapter.js +1 -1
  720. package/dist/src/metadata/modules/userId.js +1 -1
  721. package/dist/src/metadata/modules/validationFpdModule.js +1 -1
  722. package/dist/src/metadata/modules/vidazooBidAdapter.js +1 -1
  723. package/dist/src/metadata/modules/vidoomyBidAdapter.js +1 -1
  724. package/dist/src/metadata/modules/viewdeosDXBidAdapter.js +1 -1
  725. package/dist/src/metadata/modules/viouslyBidAdapter.js +1 -1
  726. package/dist/src/metadata/modules/visxBidAdapter.js +1 -1
  727. package/dist/src/metadata/modules/vlybyBidAdapter.js +1 -1
  728. package/dist/src/metadata/modules/voxBidAdapter.js +1 -1
  729. package/dist/src/metadata/modules/vrtcalBidAdapter.js +1 -1
  730. package/dist/src/metadata/modules/vuukleBidAdapter.js +1 -1
  731. package/dist/src/metadata/modules/weboramaRtdProvider.js +1 -1
  732. package/dist/src/metadata/modules/welectBidAdapter.js +1 -1
  733. package/dist/src/metadata/modules/yahooAdsBidAdapter.js +1 -1
  734. package/dist/src/metadata/modules/yieldlabBidAdapter.js +1 -1
  735. package/dist/src/metadata/modules/yieldliftBidAdapter.js +1 -1
  736. package/dist/src/metadata/modules/yieldloveBidAdapter.js +1 -1
  737. package/dist/src/metadata/modules/yieldmoBidAdapter.js +1 -1
  738. package/dist/src/metadata/modules/zeotapIdPlusIdSystem.js +1 -1
  739. package/dist/src/metadata/modules/zeta_globalBidAdapter.js +1 -1
  740. package/dist/src/metadata/modules/zeta_global_sspBidAdapter.js +1 -1
  741. package/dist/src/modules/1plusXRtdProvider.js +6 -2
  742. package/dist/src/modules/1plusXRtdProvider.js.map +1 -1
  743. package/dist/src/modules/33acrossAnalyticsAdapter.js +1 -1
  744. package/dist/src/modules/33acrossBidAdapter.js +1 -1
  745. package/dist/src/modules/33acrossIdSystem.js +1 -1
  746. package/dist/src/modules/adWMGBidAdapter.js.map +1 -1
  747. package/dist/src/modules/adagioAnalyticsAdapter.js +1 -1
  748. package/dist/src/modules/adagioBidAdapter.js +1 -1
  749. package/dist/src/modules/addefendBidAdapter.js +1 -1
  750. package/dist/src/modules/adgenerationBidAdapter.js +1 -1
  751. package/dist/src/modules/adlooxRtdProvider.js +1 -1
  752. package/dist/src/modules/admixerBidAdapter.js +5 -4
  753. package/dist/src/modules/admixerBidAdapter.js.map +1 -1
  754. package/dist/src/modules/adqueryBidAdapter.js +1 -1
  755. package/dist/src/modules/adrelevantisBidAdapter.js +1 -1
  756. package/dist/src/modules/adspiritBidAdapter.js.map +1 -1
  757. package/dist/src/modules/adstirBidAdapter.js +1 -1
  758. package/dist/src/modules/adtrgtmeBidAdapter.js +1 -1
  759. package/dist/src/modules/adtrgtmeBidAdapter.js.map +1 -1
  760. package/dist/src/modules/advertisingBidAdapter.js +2 -2
  761. package/dist/src/modules/adxcgAnalyticsAdapter.js +1 -1
  762. package/dist/src/modules/adxcgBidAdapter.js +4 -39
  763. package/dist/src/modules/adxcgBidAdapter.js.map +1 -1
  764. package/dist/src/modules/adyoulikeBidAdapter.js +1 -1
  765. package/dist/src/modules/agmaAnalyticsAdapter.js +1 -1
  766. package/dist/src/modules/ajaBidAdapter.js +1 -1
  767. package/dist/src/modules/amxBidAdapter.js +2 -2
  768. package/dist/src/modules/amxBidAdapter.js.map +1 -1
  769. package/dist/src/modules/amxIdSystem.js +1 -1
  770. package/dist/src/modules/aniviewBidAdapter.js +1 -1
  771. package/dist/src/modules/appierAnalyticsAdapter.js +1 -1
  772. package/dist/src/modules/appnexusBidAdapter.js +2 -2
  773. package/dist/src/modules/asoBidAdapter.js +1 -1
  774. package/dist/src/modules/axonixBidAdapter.js +1 -1
  775. package/dist/src/modules/beopBidAdapter.js +2 -2
  776. package/dist/src/modules/bidglassBidAdapter.js +1 -1
  777. package/dist/src/modules/bitmediaBidAdapter.js +1 -1
  778. package/dist/src/modules/blockthroughBidAdapter.js +1 -1
  779. package/dist/src/modules/bmtmBidAdapter.js +1 -1
  780. package/dist/src/modules/bridBidAdapter.js +1 -1
  781. package/dist/src/modules/bridgewellBidAdapter.js +1 -1
  782. package/dist/src/modules/carodaBidAdapter.js +1 -1
  783. package/dist/src/modules/chromeAiRtdProvider.js.map +1 -1
  784. package/dist/src/modules/chtnwBidAdapter.js +1 -1
  785. package/dist/src/modules/concertBidAdapter.js +1 -1
  786. package/dist/src/modules/connectadBidAdapter.js +1 -1
  787. package/dist/src/modules/consentManagementGpp.js.map +1 -1
  788. package/dist/src/modules/consentManagementTcf.js.map +1 -1
  789. package/dist/src/modules/consentManagementUsp.js.map +1 -1
  790. package/dist/src/modules/consumableBidAdapter.js +1 -1
  791. package/dist/src/modules/contxtfulBidAdapter.js +1 -1
  792. package/dist/src/modules/conversantBidAdapter.js +1 -1
  793. package/dist/src/modules/craftBidAdapter.js +1 -1
  794. package/dist/src/modules/criteoBidAdapter.js +2 -2
  795. package/dist/src/modules/currency.js.map +1 -1
  796. package/dist/src/modules/cwireBidAdapter.js +1 -1
  797. package/dist/src/modules/cwireBidAdapter.js.map +1 -1
  798. package/dist/src/modules/dailymotionBidAdapter.js +1 -1
  799. package/dist/src/modules/dailymotionBidAdapter.js.map +1 -1
  800. package/dist/src/modules/dchain.js.map +1 -1
  801. package/dist/src/modules/dspxBidAdapter.js +1 -1
  802. package/dist/src/modules/dspxBidAdapter.js.map +1 -1
  803. package/dist/src/modules/dxkultureBidAdapter.js +1 -1
  804. package/dist/src/modules/eightPodBidAdapter.js.map +1 -1
  805. package/dist/src/modules/eplanningBidAdapter.js +1 -1
  806. package/dist/src/modules/equativBidAdapter.js +1 -1
  807. package/dist/src/modules/eskimiBidAdapter.js +1 -1
  808. package/dist/src/modules/euidIdSystem.js +1 -1
  809. package/dist/src/modules/exadsBidAdapter.js +1 -1
  810. package/dist/src/modules/excoBidAdapter.js +3 -3
  811. package/dist/src/modules/feedadBidAdapter.js +2 -2
  812. package/dist/src/modules/finativeBidAdapter.js +1 -1
  813. package/dist/src/modules/genericAnalyticsAdapter.js.map +1 -1
  814. package/dist/src/modules/geolocationRtdProvider.js.map +1 -1
  815. package/dist/src/modules/getintentBidAdapter.js +4 -2
  816. package/dist/src/modules/getintentBidAdapter.js.map +1 -1
  817. package/dist/src/modules/gmosspBidAdapter.js +1 -1
  818. package/dist/src/modules/gmosspBidAdapter.js.map +1 -1
  819. package/dist/src/modules/gppControl_usstates.js.map +1 -1
  820. package/dist/src/modules/gptPreAuction.d.ts +3 -3
  821. package/dist/src/modules/gptPreAuction.js.map +1 -1
  822. package/dist/src/modules/greenbidsAnalyticsAdapter.js +1 -1
  823. package/dist/src/modules/greenbidsBidAdapter.js +1 -1
  824. package/dist/src/modules/greenbidsRtdProvider.js +1 -1
  825. package/dist/src/modules/gridBidAdapter.js +2 -2
  826. package/dist/src/modules/gumgumBidAdapter.js +2 -2
  827. package/dist/src/modules/h12mediaBidAdapter.js +1 -1
  828. package/dist/src/modules/hypelabBidAdapter.js +1 -1
  829. package/dist/src/modules/iasRtdProvider.js +110 -5
  830. package/dist/src/modules/iasRtdProvider.js.map +1 -1
  831. package/dist/src/modules/id5AnalyticsAdapter.js +1 -1
  832. package/dist/src/modules/id5IdSystem.js +1 -1
  833. package/dist/src/modules/improvedigitalBidAdapter.js +1 -1
  834. package/dist/src/modules/inmobiBidAdapter.js +1 -1
  835. package/dist/src/modules/insticatorBidAdapter.js +1 -1
  836. package/dist/src/modules/intentIqAnalyticsAdapter.js +1 -1
  837. package/dist/src/modules/intentIqAnalyticsAdapter.js.map +1 -1
  838. package/dist/src/modules/intentIqIdSystem.js.map +1 -1
  839. package/dist/src/modules/ixBidAdapter.js +1 -1
  840. package/dist/src/modules/jixieBidAdapter.js +1 -1
  841. package/dist/src/modules/justpremiumBidAdapter.js +1 -1
  842. package/dist/src/modules/jwplayerRtdProvider.js +6 -2
  843. package/dist/src/modules/jwplayerRtdProvider.js.map +1 -1
  844. package/dist/src/modules/jwplayerVideoProvider.js +12 -9
  845. package/dist/src/modules/jwplayerVideoProvider.js.map +1 -1
  846. package/dist/src/modules/kargoBidAdapter.js +1 -1
  847. package/dist/src/modules/kimberliteBidAdapter.js +1 -1
  848. package/dist/src/modules/kubientBidAdapter.js +0 -1
  849. package/dist/src/modules/kubientBidAdapter.js.map +1 -1
  850. package/dist/src/modules/lassoBidAdapter.js +1 -1
  851. package/dist/src/modules/lifestreetBidAdapter.js +1 -1
  852. package/dist/src/modules/logicadBidAdapter.js +1 -1
  853. package/dist/src/modules/luceadBidAdapter.js +1 -1
  854. package/dist/src/modules/mabidderBidAdapter.js +1 -1
  855. package/dist/src/modules/madsenseBidAdapter.js +1 -1
  856. package/dist/src/modules/magniteAnalyticsAdapter.js +1 -1
  857. package/dist/src/modules/malltvAnalyticsAdapter.js +1 -1
  858. package/dist/src/modules/marsmediaBidAdapter.js +1 -1
  859. package/dist/src/modules/mediafuseBidAdapter.js +2 -2
  860. package/dist/src/modules/medianetAnalyticsAdapter.js.map +1 -1
  861. package/dist/src/modules/medianetBidAdapter.js +6 -2
  862. package/dist/src/modules/medianetBidAdapter.js.map +1 -1
  863. package/dist/src/modules/mediasquareBidAdapter.js +2 -2
  864. package/dist/src/modules/mgidBidAdapter.js +1 -1
  865. package/dist/src/modules/michaoBidAdapter.js.map +1 -1
  866. package/dist/src/modules/missenaBidAdapter.js +1 -1
  867. package/dist/src/modules/mobilefuseBidAdapter.js +1 -1
  868. package/dist/src/modules/multibid/index.js.map +1 -1
  869. package/dist/src/modules/nextMillenniumBidAdapter.js +1 -1
  870. package/dist/src/modules/nexverseBidAdapter.js.map +1 -1
  871. package/dist/src/modules/nobidAnalyticsAdapter.js +1 -1
  872. package/dist/src/modules/nobidBidAdapter.js +1 -1
  873. package/dist/src/modules/nodalsAiRtdProvider.js +4 -2
  874. package/dist/src/modules/nodalsAiRtdProvider.js.map +1 -1
  875. package/dist/src/modules/oguryBidAdapter.js +1 -1
  876. package/dist/src/modules/onetagBidAdapter.js +1 -1
  877. package/dist/src/modules/onetagBidAdapter.js.map +1 -1
  878. package/dist/src/modules/ooloAnalyticsAdapter.js +1 -1
  879. package/dist/src/modules/openxBidAdapter.js +7 -2
  880. package/dist/src/modules/openxBidAdapter.js.map +1 -1
  881. package/dist/src/modules/optidigitalBidAdapter.js +1 -1
  882. package/dist/src/modules/orbidderBidAdapter.js +1 -1
  883. package/dist/src/modules/outbrainBidAdapter.js +1 -1
  884. package/dist/src/modules/pixfutureBidAdapter.js +2 -2
  885. package/dist/src/modules/prebidServerBidAdapter/index.js.map +1 -1
  886. package/dist/src/modules/priceFloors.d.ts +2 -2
  887. package/dist/src/modules/priceFloors.js.map +1 -1
  888. package/dist/src/modules/publinkIdSystem.js +1 -1
  889. package/dist/src/modules/pubmaticAnalyticsAdapter.js +2 -2
  890. package/dist/src/modules/pubmaticBidAdapter.js +23 -3
  891. package/dist/src/modules/pubmaticBidAdapter.js.map +1 -1
  892. package/dist/src/modules/pubmaticRtdProvider.js.map +1 -1
  893. package/dist/src/modules/pubwiseAnalyticsAdapter.js +1 -1
  894. package/dist/src/modules/pubxaiAnalyticsAdapter.js +1 -1
  895. package/dist/src/modules/pulsepointBidAdapter.js +2 -38
  896. package/dist/src/modules/pulsepointBidAdapter.js.map +1 -1
  897. package/dist/src/modules/pxyzBidAdapter.js +1 -1
  898. package/dist/src/modules/quantcastBidAdapter.js +1 -1
  899. package/dist/src/modules/readpeakBidAdapter.js +1 -1
  900. package/dist/src/modules/readpeakBidAdapter.js.map +1 -1
  901. package/dist/src/modules/relaidoBidAdapter.js +1 -1
  902. package/dist/src/modules/retailspotBidAdapter.js +1 -1
  903. package/dist/src/modules/rhythmoneBidAdapter.js +1 -1
  904. package/dist/src/modules/rtdModule/index.js.map +1 -1
  905. package/dist/src/modules/rtdModule/spec.js.map +1 -1
  906. package/dist/src/modules/rubiconBidAdapter.js +6 -2
  907. package/dist/src/modules/rubiconBidAdapter.js.map +1 -1
  908. package/dist/src/modules/rumbleBidAdapter.js +103 -0
  909. package/dist/src/modules/rumbleBidAdapter.js.map +1 -0
  910. package/dist/src/modules/schain.js.map +1 -1
  911. package/dist/src/modules/seedingAllianceBidAdapter.js +1 -1
  912. package/dist/src/modules/seedtagBidAdapter.js +1 -1
  913. package/dist/src/modules/sevioBidAdapter.js +254 -0
  914. package/dist/src/modules/sevioBidAdapter.js.map +1 -0
  915. package/dist/src/modules/sharedIdSystem.js.map +1 -1
  916. package/dist/src/modules/sharethroughAnalyticsAdapter.js +1 -1
  917. package/dist/src/modules/sharethroughBidAdapter.js +1 -1
  918. package/dist/src/modules/showheroes-bsBidAdapter.js +1 -1
  919. package/dist/src/modules/smaatoBidAdapter.js +1 -1
  920. package/dist/src/modules/smartadserverBidAdapter.js +1 -1
  921. package/dist/src/modules/smartxBidAdapter.js +1 -1
  922. package/dist/src/modules/smilewantedBidAdapter.js +1 -1
  923. package/dist/src/modules/snigelBidAdapter.js +1 -1
  924. package/dist/src/modules/sonaradsBidAdapter.js +2 -2
  925. package/dist/src/modules/sonobiBidAdapter.js +1 -1
  926. package/dist/src/modules/sovrnBidAdapter.js +1 -1
  927. package/dist/src/modules/sparteoBidAdapter.js +1 -1
  928. package/dist/src/modules/sspBCBidAdapter.js +1 -1
  929. package/dist/src/modules/storageControl.js.map +1 -1
  930. package/dist/src/modules/stvBidAdapter.js +1 -1
  931. package/dist/src/modules/sublimeBidAdapter.js +2 -2
  932. package/dist/src/modules/taboolaBidAdapter.js +1 -1
  933. package/dist/src/modules/tappxBidAdapter.js +1 -1
  934. package/dist/src/modules/targetVideoBidAdapter.js +1 -1
  935. package/dist/src/modules/tcfControl.js.map +1 -1
  936. package/dist/src/modules/teadsBidAdapter.js +1 -1
  937. package/dist/src/modules/terceptAnalyticsAdapter.js +1 -1
  938. package/dist/src/modules/themoneytizerBidAdapter.js +1 -3
  939. package/dist/src/modules/themoneytizerBidAdapter.js.map +1 -1
  940. package/dist/src/modules/trionBidAdapter.js +1 -1
  941. package/dist/src/modules/tripleliftBidAdapter.js +1 -1
  942. package/dist/src/modules/ttdBidAdapter.js +9 -2
  943. package/dist/src/modules/ttdBidAdapter.js.map +1 -1
  944. package/dist/src/modules/ucfunnelAnalyticsAdapter.js +1 -1
  945. package/dist/src/modules/uid2IdSystem.js +1 -1
  946. package/dist/src/modules/underdogmediaBidAdapter.js +1 -1
  947. package/dist/src/modules/undertoneBidAdapter.js +1 -1
  948. package/dist/src/modules/unrulyBidAdapter.js +1 -1
  949. package/dist/src/modules/userId/index.js +12 -8
  950. package/dist/src/modules/userId/index.js.map +1 -1
  951. package/dist/src/modules/userId/spec.js.map +1 -1
  952. package/dist/src/modules/validationFpdModule/index.js.map +1 -1
  953. package/dist/src/modules/videoModule/index.js.map +1 -1
  954. package/dist/src/modules/videobyteBidAdapter.js +1 -1
  955. package/dist/src/modules/visxBidAdapter.js +1 -1
  956. package/dist/src/modules/vuukleBidAdapter.js +1 -1
  957. package/dist/src/modules/weboramaRtdProvider.js +30 -11
  958. package/dist/src/modules/weboramaRtdProvider.js.map +1 -1
  959. package/dist/src/modules/welectBidAdapter.js.map +1 -1
  960. package/dist/src/modules/widespaceBidAdapter.js +1 -1
  961. package/dist/src/modules/winrBidAdapter.js +1 -1
  962. package/dist/src/modules/yahooAdsBidAdapter.js +1 -1
  963. package/dist/src/modules/yandexBidAdapter.js +47 -15
  964. package/dist/src/modules/yandexBidAdapter.js.map +1 -1
  965. package/dist/src/modules/yieldmoBidAdapter.js +2 -2
  966. package/dist/src/modules/yieldoneAnalyticsAdapter.js +1 -1
  967. package/dist/src/package.json +2 -3
  968. package/dist/src/public/rumbleBidAdapter.js +1 -0
  969. package/dist/src/public/sevioBidAdapter.js +1 -0
  970. package/dist/src/src/activities/params.d.ts +5 -0
  971. package/dist/src/src/activities/params.js +6 -0
  972. package/dist/src/src/activities/params.js.map +1 -1
  973. package/dist/src/src/activities/redactor.js.map +1 -1
  974. package/dist/src/src/adRendering.js.map +1 -1
  975. package/dist/src/src/adUnits.js.map +1 -1
  976. package/dist/src/src/adapterManager.js.map +1 -1
  977. package/dist/src/src/adapters/bidderFactory.js.map +1 -1
  978. package/dist/src/src/ajax.js.map +1 -1
  979. package/dist/src/src/auction.js.map +1 -1
  980. package/dist/src/src/banner.js.map +1 -1
  981. package/dist/src/src/bidTTL.js.map +1 -1
  982. package/dist/src/src/bidderSettings.js.map +1 -1
  983. package/dist/src/src/bidfactory.js.map +1 -1
  984. package/dist/src/src/config.js +3 -3
  985. package/dist/src/src/config.js.map +1 -1
  986. package/dist/src/src/consentHandler.js.map +1 -1
  987. package/dist/src/src/constants.js.map +1 -1
  988. package/dist/src/src/cpmBucketManager.js.map +1 -1
  989. package/dist/src/src/debugging.js +1 -1
  990. package/dist/src/src/events.js.map +1 -1
  991. package/dist/src/src/fpd/enrichment.js.map +1 -1
  992. package/dist/src/src/hook.js.map +1 -1
  993. package/dist/src/src/mediaTypes.js.map +1 -1
  994. package/dist/src/src/native.js.map +1 -1
  995. package/dist/src/src/prebid.js +2 -2
  996. package/dist/src/src/prebid.js.map +1 -1
  997. package/dist/src/src/prebidGlobal.js.map +1 -1
  998. package/dist/src/src/refererDetection.js.map +1 -1
  999. package/dist/src/src/storageManager.js +26 -25
  1000. package/dist/src/src/storageManager.js.map +1 -1
  1001. package/dist/src/src/targeting.d.ts +7 -7
  1002. package/dist/src/src/targeting.js.map +1 -1
  1003. package/dist/src/src/types/common.d.js.map +1 -1
  1004. package/dist/src/src/types/common.d.ts +29 -29
  1005. package/dist/src/src/types/local/buildOptions.d.js.map +1 -1
  1006. package/dist/src/src/types/local/shim.d.js.map +1 -1
  1007. package/dist/src/src/types/objects.d.js.map +1 -1
  1008. package/dist/src/src/types/objects.d.ts +15 -15
  1009. package/dist/src/src/types/ortb/common.d.js.map +1 -1
  1010. package/dist/src/src/types/ortb/common.d.ts +1 -1
  1011. package/dist/src/src/types/ortb/ext/dchain.d.js.map +1 -1
  1012. package/dist/src/src/types/ortb/ext/dchain.d.ts +69 -69
  1013. package/dist/src/src/types/ortb/ext/dsa.d.js.map +1 -1
  1014. package/dist/src/src/types/ortb/ext/dsa.d.ts +50 -50
  1015. package/dist/src/src/types/ortb/request.d.js.map +1 -1
  1016. package/dist/src/src/types/ortb/request.d.ts +21 -21
  1017. package/dist/src/src/types/ortb/response.d.js.map +1 -1
  1018. package/dist/src/src/types/ortb/response.d.ts +6 -6
  1019. package/dist/src/src/types/summary/core.d.ts +5 -5
  1020. package/dist/src/src/userSync.js.map +1 -1
  1021. package/dist/src/src/utils/objects.js.map +1 -1
  1022. package/dist/src/src/utils/perfMetrics.js.map +1 -1
  1023. package/dist/src/src/utils/promise.js.map +1 -1
  1024. package/dist/src/src/utils/ttlCollection.js.map +1 -1
  1025. package/dist/src/src/video.js.map +1 -1
  1026. package/dist/src/src/videoCache.js.map +1 -1
  1027. package/dist/src/test/helpers/index_adapter_utils.js +1 -1
  1028. package/dist/src/test/helpers/index_adapter_utils.js.map +1 -1
  1029. package/dist/src/test/helpers/refererDetectionHelper.js.map +1 -1
  1030. package/dist/src/test/mocks/timers.js +12 -12
  1031. package/dist/src/test/mocks/timers.js.map +1 -1
  1032. package/dist/src/test/spec/adloader_spec.js.map +1 -1
  1033. package/dist/src/test/spec/config_spec.js +9 -3
  1034. package/dist/src/test/spec/config_spec.js.map +1 -1
  1035. package/dist/src/test/spec/libraries/greedy/greedyPromise_spec.js +2 -2
  1036. package/dist/src/test/spec/libraries/greedy/greedyPromise_spec.js.map +1 -1
  1037. package/dist/src/test/spec/modules/1plusXRtdProvider_spec.js +2 -9
  1038. package/dist/src/test/spec/modules/1plusXRtdProvider_spec.js.map +1 -1
  1039. package/dist/src/test/spec/modules/33acrossAnalyticsAdapter_spec.js +2 -2
  1040. package/dist/src/test/spec/modules/33acrossBidAdapter_spec.js +1 -1
  1041. package/dist/src/test/spec/modules/33acrossIdSystem_spec.js +1 -1
  1042. package/dist/src/test/spec/modules/adagioAnalyticsAdapter_spec.js +4 -4
  1043. package/dist/src/test/spec/modules/adgridBidAdapter_spec.js.map +1 -1
  1044. package/dist/src/test/spec/modules/adkernelAdnBidAdapter_spec.js.map +1 -1
  1045. package/dist/src/test/spec/modules/adkernelBidAdapter_spec.js.map +1 -1
  1046. package/dist/src/test/spec/modules/admediaBidAdapter_spec.js.map +1 -1
  1047. package/dist/src/test/spec/modules/adnuntiusBidAdapter_spec.js.map +1 -1
  1048. package/dist/src/test/spec/modules/adqueryBidAdapter_spec.js +1 -1
  1049. package/dist/src/test/spec/modules/adrelevantisBidAdapter_spec.js +1 -1
  1050. package/dist/src/test/spec/modules/adspiritBidAdapter_spec.js.map +1 -1
  1051. package/dist/src/test/spec/modules/adtrgtmeBidAdapter_spec.js +1 -1
  1052. package/dist/src/test/spec/modules/adtrgtmeBidAdapter_spec.js.map +1 -1
  1053. package/dist/src/test/spec/modules/adtrueBidAdapter_spec.js.map +1 -1
  1054. package/dist/src/test/spec/modules/advertisingBidAdapter_spec.js +9 -9
  1055. package/dist/src/test/spec/modules/advertisingBidAdapter_spec.js.map +1 -1
  1056. package/dist/src/test/spec/modules/adyoulikeBidAdapter_spec.js +3 -3
  1057. package/dist/src/test/spec/modules/ajaBidAdapter_spec.js +2 -2
  1058. package/dist/src/test/spec/modules/amxBidAdapter_spec.js +2 -2
  1059. package/dist/src/test/spec/modules/appierAnalyticsAdapter_spec.js +1 -1
  1060. package/dist/src/test/spec/modules/appnexusBidAdapter_spec.js +2 -2
  1061. package/dist/src/test/spec/modules/asoBidAdapter_spec.js +1 -1
  1062. package/dist/src/test/spec/modules/bidmaticBidAdapter_spec.js.map +1 -1
  1063. package/dist/src/test/spec/modules/blockthroughBidAdapter_spec.js +1 -1
  1064. package/dist/src/test/spec/modules/bridBidAdapter_spec.js +1 -1
  1065. package/dist/src/test/spec/modules/criteoBidAdapter_spec.js +1 -1
  1066. package/dist/src/test/spec/modules/dailymotionBidAdapter_spec.js +4 -4
  1067. package/dist/src/test/spec/modules/datablocksBidAdapter_spec.js.map +1 -1
  1068. package/dist/src/test/spec/modules/deepintentBidAdapter_spec.js.map +1 -1
  1069. package/dist/src/test/spec/modules/dexertoBidAdapter_spec.js.map +1 -1
  1070. package/dist/src/test/spec/modules/dochaseBidAdapter_spec.js.map +1 -1
  1071. package/dist/src/test/spec/modules/dspxBidAdapter_spec.js.map +1 -1
  1072. package/dist/src/test/spec/modules/dxkultureBidAdapter_spec.js +1 -1
  1073. package/dist/src/test/spec/modules/ehealthcaresolutionsBidAdapter_spec.js.map +1 -1
  1074. package/dist/src/test/spec/modules/enrichmentLiftMeasurement_spec.js.map +1 -1
  1075. package/dist/src/test/spec/modules/eplanningBidAdapter_spec.js +1 -1
  1076. package/dist/src/test/spec/modules/equativBidAdapter_spec.js +1 -1
  1077. package/dist/src/test/spec/modules/equativBidAdapter_spec.js.map +1 -1
  1078. package/dist/src/test/spec/modules/excoBidAdapter_spec.js +1 -1
  1079. package/dist/src/test/spec/modules/feedadBidAdapter_spec.js +2 -2
  1080. package/dist/src/test/spec/modules/finativeBidAdapter_spec.js.map +1 -1
  1081. package/dist/src/test/spec/modules/ftrackIdSystem_spec.js.map +1 -1
  1082. package/dist/src/test/spec/modules/fwsspBidAdapter_spec.js.map +1 -1
  1083. package/dist/src/test/spec/modules/gmosspBidAdapter_spec.js +2 -2
  1084. package/dist/src/test/spec/modules/greenbidsAnalyticsAdapter_spec.js +1 -1
  1085. package/dist/src/test/spec/modules/gridBidAdapter_spec.js +6 -6
  1086. package/dist/src/test/spec/modules/gumgumBidAdapter_spec.js +1 -1
  1087. package/dist/src/test/spec/modules/hypelabBidAdapter_spec.js.map +1 -1
  1088. package/dist/src/test/spec/modules/iasRtdProvider_spec.js +104 -1
  1089. package/dist/src/test/spec/modules/iasRtdProvider_spec.js.map +1 -1
  1090. package/dist/src/test/spec/modules/id5IdSystem_spec.js +4 -4
  1091. package/dist/src/test/spec/modules/insticatorBidAdapter_spec.js +1 -1
  1092. package/dist/src/test/spec/modules/intentIqIdSystem_spec.js.map +1 -1
  1093. package/dist/src/test/spec/modules/invibesBidAdapter_spec.js.map +1 -1
  1094. package/dist/src/test/spec/modules/ixBidAdapter_spec.js +2 -2
  1095. package/dist/src/test/spec/modules/justpremiumBidAdapter_spec.js +1 -1
  1096. package/dist/src/test/spec/modules/kargoBidAdapter_spec.js +1 -1
  1097. package/dist/src/test/spec/modules/kargoBidAdapter_spec.js.map +1 -1
  1098. package/dist/src/test/spec/modules/lane4BidAdapter_spec.js.map +1 -1
  1099. package/dist/src/test/spec/modules/lemmaDigitalBidAdapter_spec.js.map +1 -1
  1100. package/dist/src/test/spec/modules/liveIntentExternalIdSystem_spec.js +29 -10
  1101. package/dist/src/test/spec/modules/liveIntentExternalIdSystem_spec.js.map +1 -1
  1102. package/dist/src/test/spec/modules/liveIntentIdMinimalSystem_spec.js +19 -0
  1103. package/dist/src/test/spec/modules/liveIntentIdMinimalSystem_spec.js.map +1 -1
  1104. package/dist/src/test/spec/modules/liveIntentIdSystem_spec.js +58 -1
  1105. package/dist/src/test/spec/modules/liveIntentIdSystem_spec.js.map +1 -1
  1106. package/dist/src/test/spec/modules/liveIntentRtdProvider_spec.js.map +1 -1
  1107. package/dist/src/test/spec/modules/magniteAnalyticsAdapter_spec.js +1 -1
  1108. package/dist/src/test/spec/modules/malltvAnalyticsAdapter_spec.js +1 -1
  1109. package/dist/src/test/spec/modules/mediaeyesBidAdapter_spec.js.map +1 -1
  1110. package/dist/src/test/spec/modules/mediafuseBidAdapter_spec.js +2 -2
  1111. package/dist/src/test/spec/modules/mediagoBidAdapter_spec.js.map +1 -1
  1112. package/dist/src/test/spec/modules/medianetBidAdapter_spec.js +43 -26
  1113. package/dist/src/test/spec/modules/medianetBidAdapter_spec.js.map +1 -1
  1114. package/dist/src/test/spec/modules/mediasquareBidAdapter_spec.js.map +1 -1
  1115. package/dist/src/test/spec/modules/missenaBidAdapter_spec.js +1 -1
  1116. package/dist/src/test/spec/modules/nexx360BidAdapter_spec.js.map +1 -1
  1117. package/dist/src/test/spec/modules/nobidAnalyticsAdapter_spec.js +1 -1
  1118. package/dist/src/test/spec/modules/nobidBidAdapter_spec.js +1 -1
  1119. package/dist/src/test/spec/modules/nobidBidAdapter_spec.js.map +1 -1
  1120. package/dist/src/test/spec/modules/oguryBidAdapter_spec.js +1 -1
  1121. package/dist/src/test/spec/modules/onetagBidAdapter_spec.js.map +1 -1
  1122. package/dist/src/test/spec/modules/openxBidAdapter_spec.js +113 -0
  1123. package/dist/src/test/spec/modules/openxBidAdapter_spec.js.map +1 -1
  1124. package/dist/src/test/spec/modules/optoutBidAdapter_spec.js.map +1 -1
  1125. package/dist/src/test/spec/modules/orbitsoftBidAdapter_spec.js.map +1 -1
  1126. package/dist/src/test/spec/modules/outbrainBidAdapter_spec.js +3 -3
  1127. package/dist/src/test/spec/modules/oxxionAnalyticsAdapter_spec.js.map +1 -1
  1128. package/dist/src/test/spec/modules/ozoneBidAdapter_spec.js.map +1 -1
  1129. package/dist/src/test/spec/modules/prebidServerBidAdapter_spec.js +4 -4
  1130. package/dist/src/test/spec/modules/prebidServerBidAdapter_spec.js.map +1 -1
  1131. package/dist/src/test/spec/modules/prismaBidAdapter_spec.js.map +1 -1
  1132. package/dist/src/test/spec/modules/publinkIdSystem_spec.js +5 -5
  1133. package/dist/src/test/spec/modules/pubmaticAnalyticsAdapter_spec.js +6 -6
  1134. package/dist/src/test/spec/modules/pubmaticBidAdapter_spec.js +58 -0
  1135. package/dist/src/test/spec/modules/pubmaticBidAdapter_spec.js.map +1 -1
  1136. package/dist/src/test/spec/modules/pubmaticRtdProvider_spec.js.map +1 -1
  1137. package/dist/src/test/spec/modules/pubwiseAnalyticsAdapter_spec.js +1 -1
  1138. package/dist/src/test/spec/modules/pubxaiAnalyticsAdapter_spec.js +6 -6
  1139. package/dist/src/test/spec/modules/pwbidBidAdapter_spec.js.map +1 -1
  1140. package/dist/src/test/spec/modules/quantcastBidAdapter_spec.js +6 -6
  1141. package/dist/src/test/spec/modules/readpeakBidAdapter_spec.js +4 -4
  1142. package/dist/src/test/spec/modules/relaidoBidAdapter_spec.js +1 -1
  1143. package/dist/src/test/spec/modules/relevadRtdProvider_spec.js.map +1 -1
  1144. package/dist/src/test/spec/modules/relevatehealthBidAdapter_spec.js.map +1 -1
  1145. package/dist/src/test/spec/modules/richaudienceBidAdapter_spec.js.map +1 -1
  1146. package/dist/src/test/spec/modules/rubiconBidAdapter_spec.js +2 -2
  1147. package/dist/src/test/spec/modules/rubiconBidAdapter_spec.js.map +1 -1
  1148. package/dist/src/test/spec/modules/rumbleBidAdapter_spec.js +110 -0
  1149. package/dist/src/test/spec/modules/rumbleBidAdapter_spec.js.map +1 -0
  1150. package/dist/src/test/spec/modules/sevioBidAdapter_spec.js +182 -0
  1151. package/dist/src/test/spec/modules/sevioBidAdapter_spec.js.map +1 -0
  1152. package/dist/src/test/spec/modules/smaatoBidAdapter_spec.js.map +1 -1
  1153. package/dist/src/test/spec/modules/smarticoBidAdapter_spec.js.map +1 -1
  1154. package/dist/src/test/spec/modules/smartxBidAdapter_spec.js +1 -1
  1155. package/dist/src/test/spec/modules/sonaradsBidAdapter_spec.js +5 -5
  1156. package/dist/src/test/spec/modules/sovrnBidAdapter_spec.js +1 -1
  1157. package/dist/src/test/spec/modules/sparteoBidAdapter_spec.js +3 -3
  1158. package/dist/src/test/spec/modules/sspBCBidAdapter_spec.js +1 -1
  1159. package/dist/src/test/spec/modules/stvBidAdapter_spec.js.map +1 -1
  1160. package/dist/src/test/spec/modules/taboolaBidAdapter_spec.js +1 -1
  1161. package/dist/src/test/spec/modules/tapnativeBidAdapter_spec.js.map +1 -1
  1162. package/dist/src/test/spec/modules/targetVideoBidAdapter_spec.js +2 -2
  1163. package/dist/src/test/spec/modules/themoneytizerBidAdapter_spec.js +0 -5
  1164. package/dist/src/test/spec/modules/themoneytizerBidAdapter_spec.js.map +1 -1
  1165. package/dist/src/test/spec/modules/trionBidAdapter_spec.js +1 -1
  1166. package/dist/src/test/spec/modules/ttdBidAdapter_spec.js +24 -3
  1167. package/dist/src/test/spec/modules/ttdBidAdapter_spec.js.map +1 -1
  1168. package/dist/src/test/spec/modules/ucfunnelAnalyticsAdapter_spec.js +1 -1
  1169. package/dist/src/test/spec/modules/uid2IdSystem_spec.js.map +1 -1
  1170. package/dist/src/test/spec/modules/unrulyBidAdapter_spec.js +3 -3
  1171. package/dist/src/test/spec/modules/userId_spec.js +41 -6
  1172. package/dist/src/test/spec/modules/userId_spec.js.map +1 -1
  1173. package/dist/src/test/spec/modules/videoModule/submodules/jwplayerVideoProvider_spec.js +1738 -9
  1174. package/dist/src/test/spec/modules/videoModule/submodules/jwplayerVideoProvider_spec.js.map +1 -1
  1175. package/dist/src/test/spec/modules/videobyteBidAdapter_spec.js +1 -1
  1176. package/dist/src/test/spec/modules/visxBidAdapter_spec.js +12 -12
  1177. package/dist/src/test/spec/modules/winrBidAdapter_spec.js +1 -1
  1178. package/dist/src/test/spec/modules/yahooAdsBidAdapter_spec.js +1 -1
  1179. package/dist/src/test/spec/modules/yandexBidAdapter_spec.js +107 -2
  1180. package/dist/src/test/spec/modules/yandexBidAdapter_spec.js.map +1 -1
  1181. package/dist/src/test/spec/modules/yieldoneAnalyticsAdapter_spec.js +2 -2
  1182. package/dist/src/test/spec/refererDetection_spec.js.map +1 -1
  1183. package/dist/src/test/spec/unit/core/storageManager_spec.js +18 -1
  1184. package/dist/src/test/spec/unit/core/storageManager_spec.js.map +1 -1
  1185. package/dist/src/test/spec/unit/core/targeting_spec.js.map +1 -1
  1186. package/dist/src/test/spec/utils_spec.js.map +1 -1
  1187. package/eslint.config.js +2 -6
  1188. package/gulpfile.js +0 -7
  1189. package/libraries/analyticsAdapter/AnalyticsAdapter.ts +28 -28
  1190. package/libraries/appnexusUtils/anKeywords.js +11 -0
  1191. package/libraries/consentManagement/cmUtils.ts +18 -18
  1192. package/libraries/creative-renderer-display/renderer.js +1 -1
  1193. package/libraries/cryptoUtils/wallets.js +38 -0
  1194. package/libraries/dspxUtils/bidderUtils.js +1 -1
  1195. package/libraries/impUtils.js +33 -0
  1196. package/libraries/liveIntentId/shared.js +16 -0
  1197. package/libraries/nexx360Utils/index.js +8 -8
  1198. package/libraries/ortbConverter/converter.ts +79 -79
  1199. package/libraries/video/constants/events.ts +5 -5
  1200. package/metadata/modules/33acrossBidAdapter.json +1 -1
  1201. package/metadata/modules/33acrossIdSystem.json +1 -1
  1202. package/metadata/modules/acuityadsBidAdapter.json +1 -1
  1203. package/metadata/modules/adagioBidAdapter.json +1 -1
  1204. package/metadata/modules/adagioRtdProvider.json +1 -1
  1205. package/metadata/modules/addefendBidAdapter.json +1 -1
  1206. package/metadata/modules/adfBidAdapter.json +1 -1
  1207. package/metadata/modules/adfusionBidAdapter.json +1 -1
  1208. package/metadata/modules/adheseBidAdapter.json +1 -1
  1209. package/metadata/modules/adkernelAdnBidAdapter.json +1 -1
  1210. package/metadata/modules/adkernelBidAdapter.json +4 -4
  1211. package/metadata/modules/admaticBidAdapter.json +2 -2
  1212. package/metadata/modules/admixerBidAdapter.json +8 -1
  1213. package/metadata/modules/admixerIdSystem.json +1 -1
  1214. package/metadata/modules/adnowBidAdapter.json +1 -1
  1215. package/metadata/modules/adnuntiusBidAdapter.json +1 -1
  1216. package/metadata/modules/adnuntiusRtdProvider.json +1 -1
  1217. package/metadata/modules/adotBidAdapter.json +1 -1
  1218. package/metadata/modules/adponeBidAdapter.json +1 -1
  1219. package/metadata/modules/adqueryBidAdapter.json +1 -1
  1220. package/metadata/modules/adqueryIdSystem.json +1 -1
  1221. package/metadata/modules/adrinoBidAdapter.json +1 -1
  1222. package/metadata/modules/ads_interactiveBidAdapter.json +1 -1
  1223. package/metadata/modules/adtargetBidAdapter.json +1 -1
  1224. package/metadata/modules/adtelligentBidAdapter.json +3 -3
  1225. package/metadata/modules/adtelligentIdSystem.json +1 -1
  1226. package/metadata/modules/aduptechBidAdapter.json +1 -1
  1227. package/metadata/modules/adyoulikeBidAdapter.json +1 -1
  1228. package/metadata/modules/aidemBidAdapter.json +1 -1
  1229. package/metadata/modules/airgridRtdProvider.json +1 -1
  1230. package/metadata/modules/alkimiBidAdapter.json +1 -1
  1231. package/metadata/modules/ampliffyBidAdapter.json +1 -1
  1232. package/metadata/modules/amxBidAdapter.json +1 -1
  1233. package/metadata/modules/amxIdSystem.json +1 -1
  1234. package/metadata/modules/aniviewBidAdapter.json +1 -1
  1235. package/metadata/modules/anonymisedRtdProvider.json +1 -1
  1236. package/metadata/modules/appierBidAdapter.json +15 -29
  1237. package/metadata/modules/appnexusBidAdapter.json +5 -5
  1238. package/metadata/modules/appushBidAdapter.json +1 -1
  1239. package/metadata/modules/apstreamBidAdapter.json +1 -1
  1240. package/metadata/modules/audiencerunBidAdapter.json +1 -1
  1241. package/metadata/modules/axisBidAdapter.json +1 -1
  1242. package/metadata/modules/azerionedgeRtdProvider.json +1 -1
  1243. package/metadata/modules/beopBidAdapter.json +1 -1
  1244. package/metadata/modules/betweenBidAdapter.json +1 -1
  1245. package/metadata/modules/bidmaticBidAdapter.json +1 -1
  1246. package/metadata/modules/bidtheatreBidAdapter.json +1 -1
  1247. package/metadata/modules/bliinkBidAdapter.json +1 -1
  1248. package/metadata/modules/blockthroughBidAdapter.json +1 -1
  1249. package/metadata/modules/blueBidAdapter.json +1 -1
  1250. package/metadata/modules/bmsBidAdapter.json +1 -1
  1251. package/metadata/modules/boldwinBidAdapter.json +1 -1
  1252. package/metadata/modules/bridBidAdapter.json +1 -1
  1253. package/metadata/modules/browsiBidAdapter.json +1 -1
  1254. package/metadata/modules/bucksenseBidAdapter.json +1 -1
  1255. package/metadata/modules/carodaBidAdapter.json +1 -1
  1256. package/metadata/modules/categoryTranslation.json +1 -1
  1257. package/metadata/modules/ccxBidAdapter.json +1 -1
  1258. package/metadata/modules/ceeIdSystem.json +1 -1
  1259. package/metadata/modules/chromeAiRtdProvider.json +1 -1
  1260. package/metadata/modules/compassBidAdapter.json +1 -1
  1261. package/metadata/modules/conceptxBidAdapter.json +1 -1
  1262. package/metadata/modules/connatixBidAdapter.json +1 -1
  1263. package/metadata/modules/connectIdSystem.json +1 -1
  1264. package/metadata/modules/connectadBidAdapter.json +1 -1
  1265. package/metadata/modules/contentexchangeBidAdapter.json +1 -1
  1266. package/metadata/modules/conversantBidAdapter.json +1 -1
  1267. package/metadata/modules/copper6sspBidAdapter.json +1 -1
  1268. package/metadata/modules/cpmstarBidAdapter.json +1 -1
  1269. package/metadata/modules/criteoBidAdapter.json +1 -1
  1270. package/metadata/modules/criteoIdSystem.json +1 -1
  1271. package/metadata/modules/cwireBidAdapter.json +1 -1
  1272. package/metadata/modules/czechAdIdSystem.json +1 -1
  1273. package/metadata/modules/dailymotionBidAdapter.json +1 -1
  1274. package/metadata/modules/debugging.json +1 -1
  1275. package/metadata/modules/deepintentBidAdapter.json +1 -1
  1276. package/metadata/modules/deltaprojectsBidAdapter.json +1 -1
  1277. package/metadata/modules/dianomiBidAdapter.json +1 -1
  1278. package/metadata/modules/digitalMatterBidAdapter.json +1 -1
  1279. package/metadata/modules/distroscaleBidAdapter.json +1 -1
  1280. package/metadata/modules/docereeAdManagerBidAdapter.json +3 -3
  1281. package/metadata/modules/docereeBidAdapter.json +3 -3
  1282. package/metadata/modules/dspxBidAdapter.json +1 -1
  1283. package/metadata/modules/e_volutionBidAdapter.json +1 -1
  1284. package/metadata/modules/edge226BidAdapter.json +3 -3
  1285. package/metadata/modules/equativBidAdapter.json +1 -1
  1286. package/metadata/modules/eskimiBidAdapter.json +1 -1
  1287. package/metadata/modules/etargetBidAdapter.json +1 -1
  1288. package/metadata/modules/euidIdSystem.json +1 -1
  1289. package/metadata/modules/exadsBidAdapter.json +1 -1
  1290. package/metadata/modules/feedadBidAdapter.json +1 -1
  1291. package/metadata/modules/fwsspBidAdapter.json +1 -1
  1292. package/metadata/modules/gamoshiBidAdapter.json +1 -1
  1293. package/metadata/modules/glomexBidAdapter.json +1 -1
  1294. package/metadata/modules/goldbachBidAdapter.json +1 -1
  1295. package/metadata/modules/greenbidsBidAdapter.json +1 -1
  1296. package/metadata/modules/gridBidAdapter.json +1 -1
  1297. package/metadata/modules/gumgumBidAdapter.json +1 -1
  1298. package/metadata/modules/hadronIdSystem.json +1 -1
  1299. package/metadata/modules/hadronRtdProvider.json +1 -1
  1300. package/metadata/modules/holidBidAdapter.json +1 -1
  1301. package/metadata/modules/hybridBidAdapter.json +1 -1
  1302. package/metadata/modules/id5IdSystem.json +1 -1
  1303. package/metadata/modules/identityLinkIdSystem.json +1 -1
  1304. package/metadata/modules/illuminBidAdapter.json +1 -1
  1305. package/metadata/modules/impactifyBidAdapter.json +1 -1
  1306. package/metadata/modules/improvedigitalBidAdapter.json +1 -1
  1307. package/metadata/modules/inmobiBidAdapter.json +1 -1
  1308. package/metadata/modules/innityBidAdapter.json +1 -1
  1309. package/metadata/modules/insticatorBidAdapter.json +1 -1
  1310. package/metadata/modules/intentIqIdSystem.json +1 -1
  1311. package/metadata/modules/invibesBidAdapter.json +1 -1
  1312. package/metadata/modules/ipromBidAdapter.json +1 -1
  1313. package/metadata/modules/ixBidAdapter.json +1 -1
  1314. package/metadata/modules/justIdSystem.json +1 -1
  1315. package/metadata/modules/justpremiumBidAdapter.json +1 -1
  1316. package/metadata/modules/jwplayerBidAdapter.json +1 -1
  1317. package/metadata/modules/kargoBidAdapter.json +1 -1
  1318. package/metadata/modules/kubientBidAdapter.json +3 -8
  1319. package/metadata/modules/kueezRtbBidAdapter.json +1 -1
  1320. package/metadata/modules/limelightDigitalBidAdapter.json +2 -2
  1321. package/metadata/modules/liveIntentIdSystem.json +1 -1
  1322. package/metadata/modules/liveIntentRtdProvider.json +1 -1
  1323. package/metadata/modules/livewrappedBidAdapter.json +1 -1
  1324. package/metadata/modules/loopmeBidAdapter.json +1 -1
  1325. package/metadata/modules/lotamePanoramaIdSystem.json +1 -1
  1326. package/metadata/modules/luceadBidAdapter.json +1 -1
  1327. package/metadata/modules/luponmediaBidAdapter.json +1 -1
  1328. package/metadata/modules/madvertiseBidAdapter.json +1 -1
  1329. package/metadata/modules/marsmediaBidAdapter.json +1 -1
  1330. package/metadata/modules/mediaConsortiumBidAdapter.json +1 -1
  1331. package/metadata/modules/mediaforceBidAdapter.json +1 -1
  1332. package/metadata/modules/mediafuseBidAdapter.json +1 -1
  1333. package/metadata/modules/mediagoBidAdapter.json +1 -1
  1334. package/metadata/modules/mediakeysBidAdapter.json +1 -1
  1335. package/metadata/modules/medianetBidAdapter.json +2 -2
  1336. package/metadata/modules/mediasquareBidAdapter.json +1 -1
  1337. package/metadata/modules/mgidBidAdapter.json +1 -1
  1338. package/metadata/modules/mgidRtdProvider.json +1 -1
  1339. package/metadata/modules/mgidXBidAdapter.json +1 -1
  1340. package/metadata/modules/minutemediaBidAdapter.json +1 -1
  1341. package/metadata/modules/missenaBidAdapter.json +1 -1
  1342. package/metadata/modules/mobianRtdProvider.json +1 -1
  1343. package/metadata/modules/mobilefuseBidAdapter.json +1 -1
  1344. package/metadata/modules/mobkoiBidAdapter.json +1 -1
  1345. package/metadata/modules/mobkoiIdSystem.json +1 -1
  1346. package/metadata/modules/nativeryBidAdapter.json +1 -1
  1347. package/metadata/modules/nativoBidAdapter.json +1 -1
  1348. package/metadata/modules/newspassidBidAdapter.json +1 -1
  1349. package/metadata/modules/nextMillenniumBidAdapter.json +1 -1
  1350. package/metadata/modules/nextrollBidAdapter.json +1 -1
  1351. package/metadata/modules/nexx360BidAdapter.json +8 -8
  1352. package/metadata/modules/nobidBidAdapter.json +2 -2
  1353. package/metadata/modules/nodalsAiRtdProvider.json +1 -1
  1354. package/metadata/modules/novatiqIdSystem.json +1 -1
  1355. package/metadata/modules/oguryBidAdapter.json +1 -1
  1356. package/metadata/modules/omsBidAdapter.json +1 -1
  1357. package/metadata/modules/onetagBidAdapter.json +1 -1
  1358. package/metadata/modules/openwebBidAdapter.json +1 -1
  1359. package/metadata/modules/openxBidAdapter.json +1 -1
  1360. package/metadata/modules/operaadsBidAdapter.json +1 -1
  1361. package/metadata/modules/optidigitalBidAdapter.json +1 -1
  1362. package/metadata/modules/optoutBidAdapter.json +1 -1
  1363. package/metadata/modules/orbidderBidAdapter.json +1 -1
  1364. package/metadata/modules/outbrainBidAdapter.json +1 -1
  1365. package/metadata/modules/ozoneBidAdapter.json +1 -1
  1366. package/metadata/modules/pairIdSystem.json +1 -1
  1367. package/metadata/modules/performaxBidAdapter.json +4 -5
  1368. package/metadata/modules/pgamsspBidAdapter.json +1 -1
  1369. package/metadata/modules/pixfutureBidAdapter.json +1 -1
  1370. package/metadata/modules/playdigoBidAdapter.json +1 -1
  1371. package/metadata/modules/prebid-core.json +2 -2
  1372. package/metadata/modules/precisoBidAdapter.json +1 -1
  1373. package/metadata/modules/prismaBidAdapter.json +1 -1
  1374. package/metadata/modules/programmaticXBidAdapter.json +1 -1
  1375. package/metadata/modules/proxistoreBidAdapter.json +1 -1
  1376. package/metadata/modules/publinkIdSystem.json +1 -1
  1377. package/metadata/modules/pubmaticBidAdapter.json +1 -1
  1378. package/metadata/modules/pubmaticIdSystem.json +1 -1
  1379. package/metadata/modules/pulsepointBidAdapter.json +1 -1
  1380. package/metadata/modules/pwbidBidAdapter.json +1 -1
  1381. package/metadata/modules/qtBidAdapter.json +1 -1
  1382. package/metadata/modules/quantcastBidAdapter.json +1 -1
  1383. package/metadata/modules/quantcastIdSystem.json +1 -1
  1384. package/metadata/modules/r2b2BidAdapter.json +1 -1
  1385. package/metadata/modules/raynRtdProvider.json +1 -1
  1386. package/metadata/modules/readpeakBidAdapter.json +1 -1
  1387. package/metadata/modules/relayBidAdapter.json +1 -1
  1388. package/metadata/modules/relevantdigitalBidAdapter.json +1 -1
  1389. package/metadata/modules/resetdigitalBidAdapter.json +1 -1
  1390. package/metadata/modules/responsiveAdsBidAdapter.json +1 -1
  1391. package/metadata/modules/retailspotBidAdapter.json +1 -1
  1392. package/metadata/modules/revcontentBidAdapter.json +7 -117
  1393. package/metadata/modules/rhythmoneBidAdapter.json +1 -1
  1394. package/metadata/modules/richaudienceBidAdapter.json +1 -1
  1395. package/metadata/modules/riseBidAdapter.json +2 -2
  1396. package/metadata/modules/rixengineBidAdapter.json +1 -1
  1397. package/metadata/modules/rtbhouseBidAdapter.json +1 -1
  1398. package/metadata/modules/rubiconBidAdapter.json +1 -1
  1399. package/metadata/modules/rumbleBidAdapter.json +13 -0
  1400. package/metadata/modules/scatteredBidAdapter.json +1 -1
  1401. package/metadata/modules/seedingAllianceBidAdapter.json +1 -1
  1402. package/metadata/modules/seedtagBidAdapter.json +1 -1
  1403. package/metadata/modules/semantiqRtdProvider.json +1 -1
  1404. package/metadata/modules/setupadBidAdapter.json +1 -1
  1405. package/metadata/modules/sevioBidAdapter.json +18 -0
  1406. package/metadata/modules/sharedIdSystem.json +1 -1
  1407. package/metadata/modules/sharethroughBidAdapter.json +1 -1
  1408. package/metadata/modules/showheroes-bsBidAdapter.json +1 -1
  1409. package/metadata/modules/silvermobBidAdapter.json +1 -1
  1410. package/metadata/modules/sirdataRtdProvider.json +1 -1
  1411. package/metadata/modules/slimcutBidAdapter.json +1 -1
  1412. package/metadata/modules/smaatoBidAdapter.json +1 -1
  1413. package/metadata/modules/smartadserverBidAdapter.json +1 -1
  1414. package/metadata/modules/smartxBidAdapter.json +1 -1
  1415. package/metadata/modules/smartyadsBidAdapter.json +1 -1
  1416. package/metadata/modules/smilewantedBidAdapter.json +1 -1
  1417. package/metadata/modules/snigelBidAdapter.json +1 -1
  1418. package/metadata/modules/sonaradsBidAdapter.json +1 -1
  1419. package/metadata/modules/sonobiBidAdapter.json +1 -1
  1420. package/metadata/modules/sovrnBidAdapter.json +4 -4
  1421. package/metadata/modules/sparteoBidAdapter.json +1 -1
  1422. package/metadata/modules/ssmasBidAdapter.json +1 -1
  1423. package/metadata/modules/sspBCBidAdapter.json +1 -1
  1424. package/metadata/modules/stackadaptBidAdapter.json +1 -1
  1425. package/metadata/modules/startioBidAdapter.json +1 -1
  1426. package/metadata/modules/stroeerCoreBidAdapter.json +1 -1
  1427. package/metadata/modules/stvBidAdapter.json +1 -1
  1428. package/metadata/modules/sublimeBidAdapter.json +1 -1
  1429. package/metadata/modules/taboolaBidAdapter.json +1 -1
  1430. package/metadata/modules/taboolaIdSystem.json +1 -1
  1431. package/metadata/modules/tappxBidAdapter.json +1 -1
  1432. package/metadata/modules/targetVideoBidAdapter.json +1 -1
  1433. package/metadata/modules/teadsBidAdapter.json +1 -1
  1434. package/metadata/modules/teadsIdSystem.json +1 -1
  1435. package/metadata/modules/tealBidAdapter.json +1 -1
  1436. package/metadata/modules/themoneytizerBidAdapter.json +3 -8
  1437. package/metadata/modules/tncIdSystem.json +1 -1
  1438. package/metadata/modules/topicsFpdModule.json +1 -1
  1439. package/metadata/modules/tripleliftBidAdapter.json +1 -1
  1440. package/metadata/modules/ttdBidAdapter.json +1 -1
  1441. package/metadata/modules/twistDigitalBidAdapter.json +1 -1
  1442. package/metadata/modules/underdogmediaBidAdapter.json +1 -1
  1443. package/metadata/modules/undertoneBidAdapter.json +1 -1
  1444. package/metadata/modules/unifiedIdSystem.json +1 -1
  1445. package/metadata/modules/unrulyBidAdapter.json +1 -1
  1446. package/metadata/modules/userId.json +1 -1
  1447. package/metadata/modules/validationFpdModule.json +1 -1
  1448. package/metadata/modules/vidazooBidAdapter.json +1 -1
  1449. package/metadata/modules/vidoomyBidAdapter.json +1 -1
  1450. package/metadata/modules/viewdeosDXBidAdapter.json +1 -1
  1451. package/metadata/modules/viouslyBidAdapter.json +1 -1
  1452. package/metadata/modules/visxBidAdapter.json +1 -1
  1453. package/metadata/modules/vlybyBidAdapter.json +1 -1
  1454. package/metadata/modules/voxBidAdapter.json +1 -1
  1455. package/metadata/modules/vrtcalBidAdapter.json +1 -1
  1456. package/metadata/modules/vuukleBidAdapter.json +1 -1
  1457. package/metadata/modules/weboramaRtdProvider.json +1 -1
  1458. package/metadata/modules/welectBidAdapter.json +1 -1
  1459. package/metadata/modules/yahooAdsBidAdapter.json +1 -1
  1460. package/metadata/modules/yieldlabBidAdapter.json +1 -1
  1461. package/metadata/modules/yieldliftBidAdapter.json +1 -1
  1462. package/metadata/modules/yieldloveBidAdapter.json +1 -1
  1463. package/metadata/modules/yieldmoBidAdapter.json +1 -1
  1464. package/metadata/modules/zeotapIdPlusIdSystem.json +1 -1
  1465. package/metadata/modules/zeta_globalBidAdapter.json +1 -1
  1466. package/metadata/modules/zeta_global_sspBidAdapter.json +1 -1
  1467. package/metadata/modules.json +23 -2
  1468. package/modules/1plusXRtdProvider.js +6 -2
  1469. package/modules/adWMGBidAdapter.js +8 -8
  1470. package/modules/admixerBidAdapter.js +9 -4
  1471. package/modules/adspiritBidAdapter.js +8 -8
  1472. package/modules/adtrgtmeBidAdapter.js +2 -2
  1473. package/modules/adxcgBidAdapter.js +2 -36
  1474. package/modules/amxBidAdapter.js +3 -3
  1475. package/modules/chromeAiRtdProvider.js +5 -5
  1476. package/modules/consentManagementGpp.ts +11 -11
  1477. package/modules/consentManagementTcf.ts +33 -33
  1478. package/modules/consentManagementUsp.ts +14 -14
  1479. package/modules/currency.ts +59 -59
  1480. package/modules/cwireBidAdapter.js +2 -2
  1481. package/modules/dailymotionBidAdapter.js +4 -4
  1482. package/modules/dchain.ts +4 -4
  1483. package/modules/dspxBidAdapter.js +8 -8
  1484. package/modules/eightPodBidAdapter.js +8 -8
  1485. package/modules/genericAnalyticsAdapter.ts +50 -50
  1486. package/modules/geolocationRtdProvider.ts +48 -48
  1487. package/modules/getintentBidAdapter.js +4 -2
  1488. package/modules/gmosspBidAdapter.js +1 -1
  1489. package/modules/gppControl_usstates.ts +40 -40
  1490. package/modules/gptPreAuction.ts +34 -34
  1491. package/modules/iasRtdProvider.js +87 -5
  1492. package/modules/intentIqAnalyticsAdapter.js +8 -8
  1493. package/modules/intentIqIdSystem.js +2 -2
  1494. package/modules/jwplayerRtdProvider.js +6 -2
  1495. package/modules/jwplayerVideoProvider.js +13 -9
  1496. package/modules/kubientBidAdapter.js +0 -1
  1497. package/modules/medianetAnalyticsAdapter.js +5 -5
  1498. package/modules/medianetBidAdapter.js +5 -1
  1499. package/modules/michaoBidAdapter.ts +7 -7
  1500. package/modules/multibid/index.ts +31 -31
  1501. package/modules/nexverseBidAdapter.js +1 -1
  1502. package/modules/nodalsAiRtdProvider.js +4 -2
  1503. package/modules/onetagBidAdapter.js +12 -12
  1504. package/modules/openxBidAdapter.js +6 -1
  1505. package/modules/prebidServerBidAdapter/index.ts +130 -130
  1506. package/modules/priceFloors.ts +131 -131
  1507. package/modules/pubmaticBidAdapter.js +21 -1
  1508. package/modules/pubmaticRtdProvider.js +143 -143
  1509. package/modules/pulsepointBidAdapter.js +3 -38
  1510. package/modules/readpeakBidAdapter.js +17 -17
  1511. package/modules/rtdModule/index.ts +8 -8
  1512. package/modules/rtdModule/spec.ts +30 -30
  1513. package/modules/rubiconBidAdapter.js +5 -1
  1514. package/modules/rumbleBidAdapter.js +128 -0
  1515. package/modules/rumbleBidAdapter.md +114 -0
  1516. package/modules/schain.ts +4 -4
  1517. package/modules/sevioBidAdapter.js +262 -0
  1518. package/modules/sevioBidAdapter.md +29 -0
  1519. package/modules/sharedIdSystem.ts +29 -29
  1520. package/modules/storageControl.ts +72 -72
  1521. package/modules/tcfControl.ts +60 -60
  1522. package/modules/themoneytizerBidAdapter.js +2 -4
  1523. package/modules/ttdBidAdapter.js +11 -1
  1524. package/modules/ttdBidAdapter.md +3 -1
  1525. package/modules/userId/index.ts +129 -119
  1526. package/modules/userId/spec.ts +136 -136
  1527. package/modules/validationFpdModule/index.ts +4 -4
  1528. package/modules/videoModule/index.ts +37 -37
  1529. package/modules/weboramaRtdProvider.js +30 -11
  1530. package/modules/welectBidAdapter.js +3 -3
  1531. package/modules/yandexBidAdapter.js +67 -24
  1532. package/package.json +2 -3
  1533. package/src/activities/params.js +6 -0
  1534. package/src/activities/redactor.ts +8 -8
  1535. package/src/adRendering.ts +61 -61
  1536. package/src/adUnits.ts +100 -100
  1537. package/src/adapterManager.ts +605 -605
  1538. package/src/adapters/bidderFactory.ts +99 -99
  1539. package/src/ajax.ts +39 -39
  1540. package/src/auction.ts +217 -217
  1541. package/src/banner.ts +28 -28
  1542. package/src/bidTTL.ts +16 -16
  1543. package/src/bidderSettings.ts +46 -46
  1544. package/src/bidfactory.ts +107 -107
  1545. package/src/config.ts +65 -65
  1546. package/src/consentHandler.ts +25 -25
  1547. package/src/constants.ts +14 -14
  1548. package/src/cpmBucketManager.ts +7 -7
  1549. package/src/events.ts +75 -75
  1550. package/src/fpd/enrichment.ts +8 -8
  1551. package/src/hook.ts +14 -14
  1552. package/src/mediaTypes.ts +16 -16
  1553. package/src/native.ts +62 -62
  1554. package/src/prebid.ts +362 -362
  1555. package/src/prebidGlobal.ts +18 -18
  1556. package/src/refererDetection.ts +54 -54
  1557. package/src/storageManager.ts +76 -73
  1558. package/src/targeting.ts +215 -215
  1559. package/src/types/common.d.ts +29 -29
  1560. package/src/types/local/buildOptions.d.ts +3 -3
  1561. package/src/types/local/shim.d.ts +6 -6
  1562. package/src/types/objects.d.ts +15 -15
  1563. package/src/types/ortb/common.d.ts +1 -1
  1564. package/src/types/ortb/ext/dchain.d.ts +69 -69
  1565. package/src/types/ortb/ext/dsa.d.ts +50 -50
  1566. package/src/types/ortb/request.d.ts +21 -21
  1567. package/src/types/ortb/response.d.ts +6 -6
  1568. package/src/userSync.ts +32 -32
  1569. package/src/utils/objects.ts +11 -11
  1570. package/src/utils/perfMetrics.ts +193 -193
  1571. package/src/utils/promise.ts +14 -14
  1572. package/src/utils/ttlCollection.ts +25 -25
  1573. package/src/video.ts +73 -73
  1574. package/src/videoCache.ts +60 -60
  1575. package/test/helpers/index_adapter_utils.js +1 -2
  1576. package/test/helpers/refererDetectionHelper.js +2 -2
  1577. package/test/mocks/timers.js +12 -9
  1578. package/test/spec/adloader_spec.js +13 -13
  1579. package/test/spec/config_spec.js +9 -3
  1580. package/test/spec/libraries/greedy/greedyPromise_spec.js +2 -2
  1581. package/test/spec/modules/1plusXRtdProvider_spec.js +2 -9
  1582. package/test/spec/modules/adgridBidAdapter_spec.js +6 -6
  1583. package/test/spec/modules/adkernelAdnBidAdapter_spec.js +127 -127
  1584. package/test/spec/modules/adkernelBidAdapter_spec.js +308 -308
  1585. package/test/spec/modules/admediaBidAdapter_spec.js +34 -34
  1586. package/test/spec/modules/adnuntiusBidAdapter_spec.js +7 -7
  1587. package/test/spec/modules/adspiritBidAdapter_spec.js +1 -1
  1588. package/test/spec/modules/adtrgtmeBidAdapter_spec.js +3 -3
  1589. package/test/spec/modules/adtrueBidAdapter_spec.js +19 -19
  1590. package/test/spec/modules/advertisingBidAdapter_spec.js +2 -2
  1591. package/test/spec/modules/bidmaticBidAdapter_spec.js +2 -2
  1592. package/test/spec/modules/datablocksBidAdapter_spec.js +115 -115
  1593. package/test/spec/modules/deepintentBidAdapter_spec.js +51 -51
  1594. package/test/spec/modules/dexertoBidAdapter_spec.js +16 -16
  1595. package/test/spec/modules/dochaseBidAdapter_spec.js +17 -17
  1596. package/test/spec/modules/dspxBidAdapter_spec.js +23 -23
  1597. package/test/spec/modules/ehealthcaresolutionsBidAdapter_spec.js +17 -17
  1598. package/test/spec/modules/enrichmentLiftMeasurement_spec.js +8 -8
  1599. package/test/spec/modules/equativBidAdapter_spec.js +1 -1
  1600. package/test/spec/modules/finativeBidAdapter_spec.js +11 -11
  1601. package/test/spec/modules/ftrackIdSystem_spec.js +16 -16
  1602. package/test/spec/modules/fwsspBidAdapter_spec.js +5 -5
  1603. package/test/spec/modules/hypelabBidAdapter_spec.js +9 -9
  1604. package/test/spec/modules/iasRtdProvider_spec.js +89 -8
  1605. package/test/spec/modules/intentIqIdSystem_spec.js +3 -3
  1606. package/test/spec/modules/invibesBidAdapter_spec.js +2 -2
  1607. package/test/spec/modules/kargoBidAdapter_spec.js +7 -7
  1608. package/test/spec/modules/lane4BidAdapter_spec.js +17 -17
  1609. package/test/spec/modules/lemmaDigitalBidAdapter_spec.js +37 -37
  1610. package/test/spec/modules/liveIntentExternalIdSystem_spec.js +5 -0
  1611. package/test/spec/modules/liveIntentIdMinimalSystem_spec.js +5 -0
  1612. package/test/spec/modules/liveIntentIdSystem_spec.js +38 -0
  1613. package/test/spec/modules/liveIntentRtdProvider_spec.js +2 -2
  1614. package/test/spec/modules/mediaeyesBidAdapter_spec.js +166 -166
  1615. package/test/spec/modules/mediagoBidAdapter_spec.js +1 -1
  1616. package/test/spec/modules/medianetBidAdapter_spec.js +1724 -1707
  1617. package/test/spec/modules/mediasquareBidAdapter_spec.js +7 -7
  1618. package/test/spec/modules/nexx360BidAdapter_spec.js +6 -6
  1619. package/test/spec/modules/nobidBidAdapter_spec.js +16 -16
  1620. package/test/spec/modules/onetagBidAdapter_spec.js +47 -47
  1621. package/test/spec/modules/openxBidAdapter_spec.js +129 -0
  1622. package/test/spec/modules/optoutBidAdapter_spec.js +1 -1
  1623. package/test/spec/modules/orbitsoftBidAdapter_spec.js +85 -85
  1624. package/test/spec/modules/oxxionAnalyticsAdapter_spec.js +1 -1
  1625. package/test/spec/modules/ozoneBidAdapter_spec.js +439 -439
  1626. package/test/spec/modules/prebidServerBidAdapter_spec.js +2 -2
  1627. package/test/spec/modules/prismaBidAdapter_spec.js +6 -6
  1628. package/test/spec/modules/pubmaticBidAdapter_spec.js +73 -3
  1629. package/test/spec/modules/pubmaticRtdProvider_spec.js +1389 -1389
  1630. package/test/spec/modules/pwbidBidAdapter_spec.js +25 -25
  1631. package/test/spec/modules/relevadRtdProvider_spec.js +1 -1
  1632. package/test/spec/modules/relevatehealthBidAdapter_spec.js +16 -16
  1633. package/test/spec/modules/richaudienceBidAdapter_spec.js +10 -10
  1634. package/test/spec/modules/rubiconBidAdapter_spec.js +7 -7
  1635. package/test/spec/modules/rumbleBidAdapter_spec.js +125 -0
  1636. package/test/spec/modules/sevioBidAdapter_spec.js +209 -0
  1637. package/test/spec/modules/smaatoBidAdapter_spec.js +30 -30
  1638. package/test/spec/modules/smarticoBidAdapter_spec.js +10 -10
  1639. package/test/spec/modules/stvBidAdapter_spec.js +32 -32
  1640. package/test/spec/modules/tapnativeBidAdapter_spec.js +17 -17
  1641. package/test/spec/modules/themoneytizerBidAdapter_spec.js +0 -6
  1642. package/test/spec/modules/ttdBidAdapter_spec.js +27 -2
  1643. package/test/spec/modules/uid2IdSystem_spec.js +3 -3
  1644. package/test/spec/modules/userId_spec.js +41 -7
  1645. package/test/spec/modules/videoModule/submodules/jwplayerVideoProvider_spec.js +1953 -154
  1646. package/test/spec/modules/yandexBidAdapter_spec.js +128 -0
  1647. package/test/spec/refererDetection_spec.js +11 -11
  1648. package/test/spec/unit/core/storageManager_spec.js +20 -1
  1649. package/test/spec/unit/core/targeting_spec.js +8 -8
  1650. package/test/spec/utils_spec.js +25 -25
@@ -16,7 +16,7 @@ const BIDDER_ALIASES = [{
16
16
  gvlid: GVLID
17
17
  }];
18
18
  const ADAPTER_VERSION = '1.1.0';
19
- const PREBID_VERSION = "10.2.0";
19
+ const PREBID_VERSION = "10.4.0";
20
20
  const DEFAULT_BID_TTL = 300;
21
21
  const TEST_MODE_DCN = '8a969516017a7a396ec539d97f540011';
22
22
  const TEST_MODE_PUBID_DCN = '1234567';
@@ -55,8 +55,23 @@ const DEFAULT_CURRENCY = 'EUR';
55
55
  * @type {MediaType[]}
56
56
  */
57
57
  const SUPPORTED_MEDIA_TYPES = [BANNER, NATIVE, VIDEO];
58
+ const ORTB_MTYPES = {
59
+ BANNER: 1,
60
+ VIDEO: 2,
61
+ NATIVE: 4
62
+ };
58
63
  const SSP_ID = 10500;
59
- const ADAPTER_VERSION = '2.3.0';
64
+ const ADAPTER_VERSION = '2.6.0';
65
+ const TRACKER_METHODS = {
66
+ img: 1,
67
+ js: 2
68
+ };
69
+ const TRACKER_EVENTS = {
70
+ impression: 1,
71
+ 'viewable-mrc50': 2,
72
+ 'viewable-mrc100': 3,
73
+ 'viewable-video50': 4
74
+ };
60
75
  const IMAGE_ASSET_TYPES = {
61
76
  ICON: 1,
62
77
  IMAGE: 3
@@ -164,7 +179,7 @@ export const spec = {
164
179
  native: mapNative(bidRequest),
165
180
  video: mapVideo(bidRequest),
166
181
  displaymanager: 'Prebid.js',
167
- displaymanagerver: "10.2.0"
182
+ displaymanagerver: "10.4.0"
168
183
  };
169
184
  const bidfloor = getBidfloor(bidRequest);
170
185
  if (bidfloor) {
@@ -343,10 +358,14 @@ function mapNative(bidRequest) {
343
358
  }
344
359
  });
345
360
  return {
346
- ver: 1.1,
361
+ ver: 1.2,
347
362
  request: JSON.stringify({
348
- ver: 1.1,
349
- assets
363
+ ver: 1.2,
364
+ assets,
365
+ eventtrackers: [{
366
+ event: TRACKER_EVENTS.impression,
367
+ methods: [TRACKER_METHODS.img]
368
+ }]
350
369
  })
351
370
  };
352
371
  }
@@ -429,15 +448,22 @@ function interpretResponse(serverResponse, _ref) {
429
448
  advertiserDomains: bidReceived.adomain && bidReceived.adomain.length > 0 ? bidReceived.adomain : []
430
449
  }
431
450
  };
432
- if (bidReceived.adm.indexOf('{') === 0) {
433
- prBid.mediaType = NATIVE;
434
- prBid.native = interpretNativeAd(bidReceived, price, currency);
435
- } else if (bidReceived.adm.indexOf('<VAST') > -1) {
436
- prBid.mediaType = VIDEO;
437
- prBid.vastXml = bidReceived.adm;
438
- } else {
439
- prBid.mediaType = BANNER;
440
- prBid.ad = bidReceived.adm;
451
+ if (bidReceived.lurl) {
452
+ prBid.lurl = bidReceived.lurl;
453
+ }
454
+ switch (bidReceived.mtype) {
455
+ case ORTB_MTYPES.VIDEO:
456
+ prBid.mediaType = VIDEO;
457
+ prBid.vastXml = bidReceived.adm;
458
+ break;
459
+ case ORTB_MTYPES.NATIVE:
460
+ prBid.mediaType = NATIVE;
461
+ prBid.native = interpretNativeAd(bidReceived, price, currency);
462
+ break;
463
+ case ORTB_MTYPES.BANNER:
464
+ prBid.mediaType = BANNER;
465
+ prBid.ad = bidReceived.adm;
466
+ break;
441
467
  }
442
468
  return prBid;
443
469
  });
@@ -470,7 +496,13 @@ function interpretNativeAd(bidReceived, price, currency) {
470
496
  result[assetCode] = asset.data.value;
471
497
  }
472
498
  });
473
- result.impressionTrackers = _map(native.imptrackers, tracker => replaceAuctionPrice(tracker, price, currency));
499
+ const impressionTrackers = _map(native.imptrackers || [], tracker => replaceAuctionPrice(tracker, price, currency));
500
+ _each(native.eventtrackers || [], eventtracker => {
501
+ if (eventtracker.event === TRACKER_EVENTS.impression && eventtracker.method === TRACKER_METHODS.img) {
502
+ impressionTrackers.push(replaceAuctionPrice(eventtracker.url, price, currency));
503
+ }
504
+ });
505
+ result.impressionTrackers = impressionTrackers;
474
506
  return result;
475
507
  } catch (e) {}
476
508
  }
@@ -1 +1 @@
1
- {"version":3,"file":"yandexBidAdapter.js","names":["registerModule","__r0","getCurrencyFromBidderRequest","registerBidder","BANNER","NATIVE","VIDEO","convertOrtbRequestToProprietaryNative","_each","_map","deepAccess","deepSetValue","formatQS","triggerPixel","logInfo","BIDDER_CODE","BIDDER_URL","DEFAULT_TTL","DEFAULT_CURRENCY","SUPPORTED_MEDIA_TYPES","SSP_ID","ADAPTER_VERSION","IMAGE_ASSET_TYPES","ICON","IMAGE","DATA_ASSET_TYPES","TITLE","SPONSORED","DESC","RATING","LIKES","ADDRESS","DESC2","DISPLAY_URL","CTA_TEXT","E_504","NATIVE_ASSETS","title","body","body2","sponsoredBy","icon","image","displayUrl","cta","rating","likes","NATIVE_ASSETS_IDS","asset","key","spec","code","aliases","supportedMediaTypes","isBidRequestValid","bid","params","pageId","impId","extractPlacementIds","buildRequests","validBidRequests","bidderRequest","ortb2","timeout","adServerCurrency","map","bidRequest","targetRef","withCredentials","cur","queryParams","site","domain","gdprApplies","Boolean","consentString","imp","id","banner","mapBanner","native","mapNative","video","mapVideo","displaymanager","displaymanagerver","bidfloor","getBidfloor","floor","bidfloorcur","currency","data","bidId","tmax","user","device","content","language","documentLang","eids","length","queryParamsString","request","method","url","options","interpretResponse","onBidWon","nurl","addRTT","timeToRespond","bidRequestParams","placementId","result","num","lastIndexOf","num2","slice","parseInt","floors","getFloor","forEach","type","hasOwnProperty","floorInfo","mediaType","size","sizes","push","sort","a","b","mediaTypes","format","w","h","videoParams","playerSize","firstSize","adUnitNativeAssets","assets","Object","keys","assetCode","nativeAsset","adUnitAssetParams","mapAsset","ver","JSON","stringify","nativeAssetId","nativeAssetType","required","len","img","mapImageAsset","adUnitImageAssetParams","aspect_ratios","ratio","minWidth","min_width","wmin","hmin","ratio_width","ratio_height","Array","isArray","serverResponse","_ref","response","seatbid","bidsReceived","reduce","concat","bidReceived","price","prBid","requestId","cpm","width","height","creativeId","adid","replaceAuctionPrice","netRevenue","ttl","meta","advertiserDomains","adomain","adm","indexOf","interpretNativeAd","vastXml","ad","parse","clickUrl","link","text","value","impressionTrackers","imptrackers","tracker","e","replace","rtt","urlObj","URL","Number","isInteger","searchParams","set","delete","toString"],"sourceRoot":"../../..","sources":["modules/yandexBidAdapter.js"],"sourcesContent":["import { getCurrencyFromBidderRequest } from '../libraries/ortb2Utils/currency.js';\nimport { registerBidder } from '../src/adapters/bidderFactory.js';\nimport { BANNER, NATIVE, VIDEO } from '../src/mediaTypes.js';\nimport { convertOrtbRequestToProprietaryNative } from '../src/native.js';\nimport { _each, _map, deepAccess, deepSetValue, formatQS, triggerPixel, logInfo } from '../src/utils.js';\n\n/**\n * @typedef {import('../src/adapters/bidderFactory.js').Bid} Bid\n * @typedef {import('../src/adapters/bidderFactory.js').BidRequest} BidRequest\n * @typedef {import('../src/adapters/bidderFactory.js').BidderSpec} BidderSpec\n * @typedef {import('../src/adapters/bidderFactory.js').ServerRequest} ServerRequest\n * @typedef {import('../src/adapters/bidderFactory.js').ServerResponse} ServerResponse\n * @typedef {import('../src/adapters/bidderFactory.js').SyncOptions} SyncOptions\n * @typedef {import('../src/adapters/bidderFactory.js').UserSync} UserSync\n * @typedef {import('../src/auction.js').BidderRequest} BidderRequest\n * @typedef {import('../src/mediaTypes.js').MediaType} MediaType\n * @typedef {import('../src/utils.js').MediaTypes} MediaTypes\n * @typedef {import('../modules/priceFloors.js').getFloor} GetFloor\n */\n\n/**\n * @typedef {Object} CustomServerRequestFields\n * @property {BidRequest} bidRequest\n */\n\n/**\n * @typedef {ServerRequest & CustomServerRequestFields} YandexServerRequest\n */\n\n/**\n * Yandex bidder-specific params which the publisher used in their bid request.\n *\n * @typedef {Object} YandexBidRequestParams\n * @property {string} placementId Possible formats: `R-I-123456-2`, `R-123456-1`, `123456-789`.\n * @property {number} [pageId] Deprecated. Please use `placementId` instead.\n * @property {number} [impId] Deprecated. Please use `placementId` instead.\n */\n\n/**\n * @typedef {Object} AdditionalBidRequestFields\n * @property {GetFloor} [getFloor]\n * @property {MediaTypes} [mediaTypes]\n */\n\n/**\n * @typedef {BidRequest & AdditionalBidRequestFields} ExtendedBidRequest\n */\n\nconst BIDDER_CODE = 'yandex';\nconst BIDDER_URL = 'https://yandex.ru/ads/prebid';\nconst DEFAULT_TTL = 180;\nconst DEFAULT_CURRENCY = 'EUR';\n/**\n * @type {MediaType[]}\n */\nconst SUPPORTED_MEDIA_TYPES = [BANNER, NATIVE, VIDEO];\nconst SSP_ID = 10500;\nconst ADAPTER_VERSION = '2.3.0';\n\nconst IMAGE_ASSET_TYPES = {\n ICON: 1,\n IMAGE: 3,\n};\nconst DATA_ASSET_TYPES = {\n TITLE: 0,\n SPONSORED: 1,\n DESC: 2,\n RATING: 3,\n LIKES: 4,\n ADDRESS: 9,\n DESC2: 10,\n DISPLAY_URL: 11,\n CTA_TEXT: 12,\n E_504: 504,\n};\nexport const NATIVE_ASSETS = {\n title: [1, DATA_ASSET_TYPES.TITLE],\n body: [2, DATA_ASSET_TYPES.DESC],\n body2: [3, DATA_ASSET_TYPES.DESC2],\n sponsoredBy: [4, DATA_ASSET_TYPES.SPONSORED],\n icon: [5, IMAGE_ASSET_TYPES.ICON],\n image: [6, IMAGE_ASSET_TYPES.IMAGE],\n displayUrl: [7, DATA_ASSET_TYPES.DISPLAY_URL],\n cta: [8, DATA_ASSET_TYPES.CTA_TEXT],\n rating: [9, DATA_ASSET_TYPES.RATING],\n likes: [10, DATA_ASSET_TYPES.LIKES],\n}\nconst NATIVE_ASSETS_IDS = {};\n_each(NATIVE_ASSETS, (asset, key) => { NATIVE_ASSETS_IDS[asset[0]] = key });\n\n/** @type {BidderSpec} */\nexport const spec = {\n code: BIDDER_CODE,\n aliases: ['ya'], // short code\n supportedMediaTypes: SUPPORTED_MEDIA_TYPES,\n\n /**\n * Determines whether or not the given bid request is valid.\n *\n * @param {BidRequest} bid The bid request to validate.\n * @returns {boolean} True if this is a valid bid, and false otherwise.\n */\n isBidRequestValid: function(bid) {\n const { params } = bid;\n if (!params) {\n return false;\n }\n const { pageId, impId } = extractPlacementIds(params);\n if (!(pageId && impId)) {\n return false;\n }\n return true;\n },\n\n /**\n * Make a server request from the list of BidRequests.\n *\n * @param {ExtendedBidRequest[]} validBidRequests An array of bids.\n * @param {BidderRequest} bidderRequest Bidder request object.\n * @returns {YandexServerRequest[]} Objects describing the requests to the server.\n */\n buildRequests: function(validBidRequests, bidderRequest) {\n validBidRequests = convertOrtbRequestToProprietaryNative(validBidRequests);\n\n const ortb2 = bidderRequest.ortb2;\n\n let timeout = null;\n if (bidderRequest) {\n timeout = bidderRequest.timeout;\n }\n\n const adServerCurrency = getCurrencyFromBidderRequest(bidderRequest);\n\n return validBidRequests.map((bidRequest) => {\n const { params } = bidRequest;\n const { targetRef, withCredentials = true, cur } = params;\n\n const { pageId, impId } = extractPlacementIds(params);\n\n const queryParams = {\n 'imp-id': impId,\n 'target-ref': targetRef || ortb2?.site?.domain,\n 'adapter-version': ADAPTER_VERSION,\n 'ssp-id': SSP_ID,\n };\n\n const gdprApplies = Boolean(deepAccess(bidderRequest, 'gdprConsent.gdprApplies'));\n if (gdprApplies) {\n const consentString = deepAccess(bidderRequest, 'gdprConsent.consentString');\n queryParams['gdpr'] = 1;\n queryParams['tcf-consent'] = consentString;\n }\n\n const imp = {\n id: impId,\n banner: mapBanner(bidRequest),\n native: mapNative(bidRequest),\n video: mapVideo(bidRequest),\n displaymanager: 'Prebid.js',\n displaymanagerver: '$prebid.version$',\n };\n\n const bidfloor = getBidfloor(bidRequest);\n if (bidfloor) {\n imp.bidfloor = bidfloor.floor;\n imp.bidfloorcur = bidfloor.currency;\n }\n\n const currency = cur || adServerCurrency;\n if (currency) {\n queryParams['ssp-cur'] = currency;\n }\n\n const data = {\n id: bidRequest.bidId,\n imp: [imp],\n site: ortb2?.site,\n tmax: timeout,\n user: ortb2?.user,\n device: ortb2?.device,\n };\n\n if (!data?.site?.content?.language) {\n const documentLang = deepAccess(ortb2, 'site.ext.data.documentLang');\n if (documentLang) {\n deepSetValue(data, 'site.content.language', documentLang);\n }\n }\n\n const eids = deepAccess(bidRequest, 'userIdAsEids');\n if (eids && eids.length) {\n deepSetValue(data, 'user.ext.eids', eids);\n }\n\n const queryParamsString = formatQS(queryParams);\n const request = {\n method: 'POST',\n url: BIDDER_URL + `/${pageId}?${queryParamsString}`,\n data,\n options: {\n withCredentials,\n },\n bidRequest,\n };\n\n logInfo('ServerRequest', request);\n\n return request;\n });\n },\n\n interpretResponse: interpretResponse,\n\n /**\n * Register bidder specific code, which will execute if a bid from this bidder won the auction.\n * @param {Bid} bid The bid that won the auction.\n */\n onBidWon: function(bid) {\n const nurl = addRTT(bid['nurl'], bid.timeToRespond);\n\n if (!nurl) {\n return;\n }\n\n triggerPixel(nurl);\n }\n}\n\n/**\n * @param {YandexBidRequestParams} bidRequestParams\n */\nfunction extractPlacementIds(bidRequestParams) {\n const { placementId } = bidRequestParams;\n const result = { pageId: null, impId: null };\n\n let pageId, impId;\n if (placementId) {\n /*\n * Possible formats\n * R-I-123456-2\n * R-123456-1\n * 123456-789\n */\n const num = placementId.lastIndexOf('-');\n if (num === -1) {\n return result;\n }\n const num2 = placementId.lastIndexOf('-', num - 1);\n pageId = placementId.slice(num2 + 1, num);\n impId = placementId.slice(num + 1);\n } else {\n pageId = bidRequestParams.pageId;\n impId = bidRequestParams.impId;\n }\n\n if (!parseInt(pageId, 10) || !parseInt(impId, 10)) {\n return result;\n }\n\n result.pageId = pageId;\n result.impId = impId;\n\n return result;\n}\n\n/**\n * @param {ExtendedBidRequest} bidRequest\n */\nfunction getBidfloor(bidRequest) {\n const floors = [];\n\n if (typeof bidRequest.getFloor === 'function') {\n SUPPORTED_MEDIA_TYPES.forEach(type => {\n if (bidRequest.hasOwnProperty(type)) {\n const floorInfo = bidRequest.getFloor({\n currency: DEFAULT_CURRENCY,\n mediaType: type,\n size: bidRequest.sizes || '*'\n })\n floors.push(floorInfo);\n }\n });\n }\n\n return floors.sort((a, b) => b.floor - a.floor)[0];\n}\n\n/**\n * @param {ExtendedBidRequest} bidRequest\n */\nfunction mapBanner(bidRequest) {\n if (deepAccess(bidRequest, 'mediaTypes.banner')) {\n const sizes = bidRequest.sizes || bidRequest.mediaTypes.banner.sizes;\n const format = sizes.map((size) => ({\n w: size[0],\n h: size[1],\n }));\n const { w, h } = format[0];\n\n return {\n format,\n w,\n h,\n }\n }\n}\n\n/**\n * Maps video parameters from bid request to OpenRTB video object.\n * @param {ExtendedBidRequest} bidRequest\n */\nfunction mapVideo(bidRequest) {\n const videoParams = deepAccess(bidRequest, 'mediaTypes.video');\n if (videoParams) {\n const { sizes, playerSize } = videoParams;\n\n const format = (playerSize || sizes)?.map((size) => ({ w: size[0], h: size[1] }));\n\n const [firstSize] = format || [];\n\n delete videoParams.sizes;\n\n return {\n ...videoParams,\n w: firstSize?.w,\n h: firstSize?.h,\n format,\n };\n }\n}\n\n/**\n * @param {ExtendedBidRequest} bidRequest\n */\nfunction mapNative(bidRequest) {\n const adUnitNativeAssets = deepAccess(bidRequest, 'mediaTypes.native');\n if (adUnitNativeAssets) {\n const assets = [];\n\n Object.keys(adUnitNativeAssets).forEach((assetCode) => {\n if (NATIVE_ASSETS.hasOwnProperty(assetCode)) {\n const nativeAsset = NATIVE_ASSETS[assetCode];\n const adUnitAssetParams = adUnitNativeAssets[assetCode];\n const asset = mapAsset(assetCode, adUnitAssetParams, nativeAsset);\n assets.push(asset);\n }\n });\n\n return {\n ver: 1.1,\n request: JSON.stringify({\n ver: 1.1,\n assets\n }),\n };\n }\n}\n\nfunction mapAsset(assetCode, adUnitAssetParams, nativeAsset) {\n const [nativeAssetId, nativeAssetType] = nativeAsset;\n const asset = {\n id: nativeAssetId,\n };\n\n if (adUnitAssetParams.required) {\n asset.required = 1;\n }\n\n if (assetCode === 'title') {\n asset.title = {\n len: adUnitAssetParams.len || 25,\n };\n } else if (assetCode === 'image' || assetCode === 'icon') {\n asset.img = mapImageAsset(adUnitAssetParams, nativeAssetType);\n } else {\n asset.data = {\n type: nativeAssetType,\n len: adUnitAssetParams.len,\n };\n }\n\n return asset;\n}\n\nfunction mapImageAsset(adUnitImageAssetParams, nativeAssetType) {\n const img = {\n type: nativeAssetType,\n };\n\n if (adUnitImageAssetParams.aspect_ratios) {\n const ratio = adUnitImageAssetParams.aspect_ratios[0];\n const minWidth = ratio.min_width || 100;\n\n img.wmin = minWidth;\n img.hmin = (minWidth / ratio.ratio_width * ratio.ratio_height);\n }\n\n if (adUnitImageAssetParams.sizes) {\n const size = Array.isArray(adUnitImageAssetParams.sizes[0]) ? adUnitImageAssetParams.sizes[0] : adUnitImageAssetParams.sizes;\n img.w = size[0];\n img.h = size[1];\n }\n\n return img;\n}\n\n/**\n * Unpack the response from the server into a list of bids.\n *\n * @param {ServerResponse} serverResponse A successful response from the server.\n * @param {YandexServerRequest} yandexServerRequest\n * @return {Bid[]} An array of bids which were nested inside the server.\n */\nfunction interpretResponse(serverResponse, { bidRequest }) {\n const response = serverResponse.body;\n if (!response.seatbid) {\n return [];\n }\n const { seatbid, cur } = serverResponse.body;\n const bidsReceived = seatbid\n .map(seatbid => seatbid.bid)\n .reduce((a, b) => a.concat(b), []);\n\n const currency = cur || DEFAULT_CURRENCY;\n\n return bidsReceived.map(bidReceived => {\n const price = bidReceived.price;\n /** @type {Bid} */\n const prBid = {\n requestId: bidRequest.bidId,\n cpm: price,\n currency: currency,\n width: bidReceived.w,\n height: bidReceived.h,\n creativeId: bidReceived.adid,\n nurl: replaceAuctionPrice(bidReceived.nurl, price, currency),\n\n netRevenue: true,\n ttl: DEFAULT_TTL,\n\n meta: {\n advertiserDomains: bidReceived.adomain && bidReceived.adomain.length > 0 ? bidReceived.adomain : [],\n }\n };\n\n if (bidReceived.adm.indexOf('{') === 0) {\n prBid.mediaType = NATIVE;\n prBid.native = interpretNativeAd(bidReceived, price, currency);\n } else if (bidReceived.adm.indexOf('<VAST') > -1) {\n prBid.mediaType = VIDEO;\n prBid.vastXml = bidReceived.adm;\n } else {\n prBid.mediaType = BANNER;\n prBid.ad = bidReceived.adm;\n }\n\n return prBid;\n });\n}\n\nfunction interpretNativeAd(bidReceived, price, currency) {\n try {\n const { adm } = bidReceived;\n const { native } = JSON.parse(adm);\n\n const result = {\n clickUrl: native.link.url,\n };\n\n native.assets.forEach(asset => {\n const assetCode = NATIVE_ASSETS_IDS[asset.id];\n if (!assetCode) {\n return;\n }\n if (assetCode === 'image' || assetCode === 'icon') {\n result[assetCode] = {\n url: asset.img.url,\n width: asset.img.w,\n height: asset.img.h\n };\n } else if (assetCode === 'title') {\n result[assetCode] = asset.title.text;\n } else {\n result[assetCode] = asset.data.value;\n }\n });\n\n result.impressionTrackers = _map(native.imptrackers, (tracker) =>\n replaceAuctionPrice(tracker, price, currency)\n );\n\n return result;\n } catch (e) {}\n}\n\nfunction replaceAuctionPrice(url, price, currency) {\n if (!url) return;\n\n return url\n .replace(/\\${AUCTION_PRICE}/, price)\n .replace(/\\${AUCTION_CURRENCY}/, currency);\n}\n\nfunction addRTT(url, rtt) {\n if (!url) return;\n\n if (url.indexOf(`\\${RTT}`) > -1) {\n return url.replace(/\\${RTT}/, rtt ?? -1);\n }\n\n const urlObj = new URL(url);\n\n if (Number.isInteger(rtt)) {\n urlObj.searchParams.set('rtt', rtt);\n } else {\n urlObj.searchParams.delete('rtt');\n }\n\n url = urlObj.toString();\n\n return url;\n}\n\nregisterBidder(spec);\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"yandexBidAdapter.js","names":["registerModule","__r0","getCurrencyFromBidderRequest","registerBidder","BANNER","NATIVE","VIDEO","convertOrtbRequestToProprietaryNative","_each","_map","deepAccess","deepSetValue","formatQS","triggerPixel","logInfo","BIDDER_CODE","BIDDER_URL","DEFAULT_TTL","DEFAULT_CURRENCY","SUPPORTED_MEDIA_TYPES","ORTB_MTYPES","SSP_ID","ADAPTER_VERSION","TRACKER_METHODS","img","js","TRACKER_EVENTS","impression","IMAGE_ASSET_TYPES","ICON","IMAGE","DATA_ASSET_TYPES","TITLE","SPONSORED","DESC","RATING","LIKES","ADDRESS","DESC2","DISPLAY_URL","CTA_TEXT","E_504","NATIVE_ASSETS","title","body","body2","sponsoredBy","icon","image","displayUrl","cta","rating","likes","NATIVE_ASSETS_IDS","asset","key","spec","code","aliases","supportedMediaTypes","isBidRequestValid","bid","params","pageId","impId","extractPlacementIds","buildRequests","validBidRequests","bidderRequest","ortb2","timeout","adServerCurrency","map","bidRequest","targetRef","withCredentials","cur","queryParams","site","domain","gdprApplies","Boolean","consentString","imp","id","banner","mapBanner","native","mapNative","video","mapVideo","displaymanager","displaymanagerver","bidfloor","getBidfloor","floor","bidfloorcur","currency","data","bidId","tmax","user","device","content","language","documentLang","eids","length","queryParamsString","request","method","url","options","interpretResponse","onBidWon","nurl","addRTT","timeToRespond","bidRequestParams","placementId","result","num","lastIndexOf","num2","slice","parseInt","floors","getFloor","forEach","type","hasOwnProperty","floorInfo","mediaType","size","sizes","push","sort","a","b","mediaTypes","format","w","h","videoParams","playerSize","firstSize","adUnitNativeAssets","assets","Object","keys","assetCode","nativeAsset","adUnitAssetParams","mapAsset","ver","JSON","stringify","eventtrackers","event","methods","nativeAssetId","nativeAssetType","required","len","mapImageAsset","adUnitImageAssetParams","aspect_ratios","ratio","minWidth","min_width","wmin","hmin","ratio_width","ratio_height","Array","isArray","serverResponse","_ref","response","seatbid","bidsReceived","reduce","concat","bidReceived","price","prBid","requestId","cpm","width","height","creativeId","adid","replaceAuctionPrice","netRevenue","ttl","meta","advertiserDomains","adomain","lurl","mtype","vastXml","adm","interpretNativeAd","ad","parse","clickUrl","link","text","value","impressionTrackers","imptrackers","tracker","eventtracker","e","replace","rtt","indexOf","urlObj","URL","Number","isInteger","searchParams","set","delete","toString"],"sourceRoot":"../../..","sources":["modules/yandexBidAdapter.js"],"sourcesContent":["import { getCurrencyFromBidderRequest } from '../libraries/ortb2Utils/currency.js';\nimport { registerBidder } from '../src/adapters/bidderFactory.js';\nimport { BANNER, NATIVE, VIDEO } from '../src/mediaTypes.js';\nimport { convertOrtbRequestToProprietaryNative } from '../src/native.js';\nimport { _each, _map, deepAccess, deepSetValue, formatQS, triggerPixel, logInfo } from '../src/utils.js';\n\n/**\n * @typedef {import('../src/adapters/bidderFactory.js').Bid} Bid\n * @typedef {import('../src/adapters/bidderFactory.js').BidRequest} BidRequest\n * @typedef {import('../src/adapters/bidderFactory.js').BidderSpec} BidderSpec\n * @typedef {import('../src/adapters/bidderFactory.js').ServerRequest} ServerRequest\n * @typedef {import('../src/adapters/bidderFactory.js').ServerResponse} ServerResponse\n * @typedef {import('../src/adapters/bidderFactory.js').SyncOptions} SyncOptions\n * @typedef {import('../src/adapters/bidderFactory.js').UserSync} UserSync\n * @typedef {import('../src/auction.js').BidderRequest} BidderRequest\n * @typedef {import('../src/mediaTypes.js').MediaType} MediaType\n * @typedef {import('../src/utils.js').MediaTypes} MediaTypes\n * @typedef {import('../modules/priceFloors.js').getFloor} GetFloor\n */\n\n/**\n * @typedef {Object} CustomServerRequestFields\n * @property {BidRequest} bidRequest\n */\n\n/**\n * @typedef {ServerRequest & CustomServerRequestFields} YandexServerRequest\n */\n\n/**\n * Yandex bidder-specific params which the publisher used in their bid request.\n *\n * @typedef {Object} YandexBidRequestParams\n * @property {string} placementId Possible formats: `R-I-123456-2`, `R-123456-1`, `123456-789`.\n * @property {number} [pageId] Deprecated. Please use `placementId` instead.\n * @property {number} [impId] Deprecated. Please use `placementId` instead.\n */\n\n/**\n * @typedef {Object} AdditionalBidRequestFields\n * @property {GetFloor} [getFloor]\n * @property {MediaTypes} [mediaTypes]\n */\n\n/**\n * @typedef {BidRequest & AdditionalBidRequestFields} ExtendedBidRequest\n */\n\nconst BIDDER_CODE = 'yandex';\nconst BIDDER_URL = 'https://yandex.ru/ads/prebid';\nconst DEFAULT_TTL = 180;\nconst DEFAULT_CURRENCY = 'EUR';\n/**\n * @type {MediaType[]}\n */\nconst SUPPORTED_MEDIA_TYPES = [BANNER, NATIVE, VIDEO];\n\nconst ORTB_MTYPES = {\n BANNER: 1,\n VIDEO: 2,\n NATIVE: 4\n};\n\nconst SSP_ID = 10500;\nconst ADAPTER_VERSION = '2.6.0';\n\nconst TRACKER_METHODS = {\n img: 1,\n js: 2,\n};\n\nconst TRACKER_EVENTS = {\n impression: 1,\n 'viewable-mrc50': 2,\n 'viewable-mrc100': 3,\n 'viewable-video50': 4,\n};\n\nconst IMAGE_ASSET_TYPES = {\n ICON: 1,\n IMAGE: 3,\n};\nconst DATA_ASSET_TYPES = {\n TITLE: 0,\n SPONSORED: 1,\n DESC: 2,\n RATING: 3,\n LIKES: 4,\n ADDRESS: 9,\n DESC2: 10,\n DISPLAY_URL: 11,\n CTA_TEXT: 12,\n E_504: 504,\n};\nexport const NATIVE_ASSETS = {\n title: [1, DATA_ASSET_TYPES.TITLE],\n body: [2, DATA_ASSET_TYPES.DESC],\n body2: [3, DATA_ASSET_TYPES.DESC2],\n sponsoredBy: [4, DATA_ASSET_TYPES.SPONSORED],\n icon: [5, IMAGE_ASSET_TYPES.ICON],\n image: [6, IMAGE_ASSET_TYPES.IMAGE],\n displayUrl: [7, DATA_ASSET_TYPES.DISPLAY_URL],\n cta: [8, DATA_ASSET_TYPES.CTA_TEXT],\n rating: [9, DATA_ASSET_TYPES.RATING],\n likes: [10, DATA_ASSET_TYPES.LIKES],\n}\nconst NATIVE_ASSETS_IDS = {};\n_each(NATIVE_ASSETS, (asset, key) => { NATIVE_ASSETS_IDS[asset[0]] = key });\n\n/** @type {BidderSpec} */\nexport const spec = {\n code: BIDDER_CODE,\n aliases: ['ya'], // short code\n supportedMediaTypes: SUPPORTED_MEDIA_TYPES,\n\n /**\n * Determines whether or not the given bid request is valid.\n *\n * @param {BidRequest} bid The bid request to validate.\n * @returns {boolean} True if this is a valid bid, and false otherwise.\n */\n isBidRequestValid: function(bid) {\n const { params } = bid;\n if (!params) {\n return false;\n }\n const { pageId, impId } = extractPlacementIds(params);\n if (!(pageId && impId)) {\n return false;\n }\n return true;\n },\n\n /**\n * Make a server request from the list of BidRequests.\n *\n * @param {ExtendedBidRequest[]} validBidRequests An array of bids.\n * @param {BidderRequest} bidderRequest Bidder request object.\n * @returns {YandexServerRequest[]} Objects describing the requests to the server.\n */\n buildRequests: function(validBidRequests, bidderRequest) {\n validBidRequests = convertOrtbRequestToProprietaryNative(validBidRequests);\n\n const ortb2 = bidderRequest.ortb2;\n\n let timeout = null;\n if (bidderRequest) {\n timeout = bidderRequest.timeout;\n }\n\n const adServerCurrency = getCurrencyFromBidderRequest(bidderRequest);\n\n return validBidRequests.map((bidRequest) => {\n const { params } = bidRequest;\n const { targetRef, withCredentials = true, cur } = params;\n\n const { pageId, impId } = extractPlacementIds(params);\n\n const queryParams = {\n 'imp-id': impId,\n 'target-ref': targetRef || ortb2?.site?.domain,\n 'adapter-version': ADAPTER_VERSION,\n 'ssp-id': SSP_ID,\n };\n\n const gdprApplies = Boolean(deepAccess(bidderRequest, 'gdprConsent.gdprApplies'));\n if (gdprApplies) {\n const consentString = deepAccess(bidderRequest, 'gdprConsent.consentString');\n queryParams['gdpr'] = 1;\n queryParams['tcf-consent'] = consentString;\n }\n\n const imp = {\n id: impId,\n banner: mapBanner(bidRequest),\n native: mapNative(bidRequest),\n video: mapVideo(bidRequest),\n displaymanager: 'Prebid.js',\n displaymanagerver: '$prebid.version$',\n };\n\n const bidfloor = getBidfloor(bidRequest);\n if (bidfloor) {\n imp.bidfloor = bidfloor.floor;\n imp.bidfloorcur = bidfloor.currency;\n }\n\n const currency = cur || adServerCurrency;\n if (currency) {\n queryParams['ssp-cur'] = currency;\n }\n\n const data = {\n id: bidRequest.bidId,\n imp: [imp],\n site: ortb2?.site,\n tmax: timeout,\n user: ortb2?.user,\n device: ortb2?.device,\n };\n\n if (!data?.site?.content?.language) {\n const documentLang = deepAccess(ortb2, 'site.ext.data.documentLang');\n if (documentLang) {\n deepSetValue(data, 'site.content.language', documentLang);\n }\n }\n\n const eids = deepAccess(bidRequest, 'userIdAsEids');\n if (eids && eids.length) {\n deepSetValue(data, 'user.ext.eids', eids);\n }\n\n const queryParamsString = formatQS(queryParams);\n const request = {\n method: 'POST',\n url: BIDDER_URL + `/${pageId}?${queryParamsString}`,\n data,\n options: {\n withCredentials,\n },\n bidRequest,\n };\n\n logInfo('ServerRequest', request);\n\n return request;\n });\n },\n\n interpretResponse: interpretResponse,\n\n /**\n * Register bidder specific code, which will execute if a bid from this bidder won the auction.\n * @param {Bid} bid The bid that won the auction.\n */\n onBidWon: function(bid) {\n const nurl = addRTT(bid['nurl'], bid.timeToRespond);\n\n if (!nurl) {\n return;\n }\n\n triggerPixel(nurl);\n }\n}\n\n/**\n * @param {YandexBidRequestParams} bidRequestParams\n */\nfunction extractPlacementIds(bidRequestParams) {\n const { placementId } = bidRequestParams;\n const result = { pageId: null, impId: null };\n\n let pageId, impId;\n if (placementId) {\n /*\n * Possible formats\n * R-I-123456-2\n * R-123456-1\n * 123456-789\n */\n const num = placementId.lastIndexOf('-');\n if (num === -1) {\n return result;\n }\n const num2 = placementId.lastIndexOf('-', num - 1);\n pageId = placementId.slice(num2 + 1, num);\n impId = placementId.slice(num + 1);\n } else {\n pageId = bidRequestParams.pageId;\n impId = bidRequestParams.impId;\n }\n\n if (!parseInt(pageId, 10) || !parseInt(impId, 10)) {\n return result;\n }\n\n result.pageId = pageId;\n result.impId = impId;\n\n return result;\n}\n\n/**\n * @param {ExtendedBidRequest} bidRequest\n */\nfunction getBidfloor(bidRequest) {\n const floors = [];\n\n if (typeof bidRequest.getFloor === 'function') {\n SUPPORTED_MEDIA_TYPES.forEach(type => {\n if (bidRequest.hasOwnProperty(type)) {\n const floorInfo = bidRequest.getFloor({\n currency: DEFAULT_CURRENCY,\n mediaType: type,\n size: bidRequest.sizes || '*'\n })\n floors.push(floorInfo);\n }\n });\n }\n\n return floors.sort((a, b) => b.floor - a.floor)[0];\n}\n\n/**\n * @param {ExtendedBidRequest} bidRequest\n */\nfunction mapBanner(bidRequest) {\n if (deepAccess(bidRequest, 'mediaTypes.banner')) {\n const sizes = bidRequest.sizes || bidRequest.mediaTypes.banner.sizes;\n const format = sizes.map((size) => ({\n w: size[0],\n h: size[1],\n }));\n const { w, h } = format[0];\n\n return {\n format,\n w,\n h,\n }\n }\n}\n\n/**\n * Maps video parameters from bid request to OpenRTB video object.\n * @param {ExtendedBidRequest} bidRequest\n */\nfunction mapVideo(bidRequest) {\n const videoParams = deepAccess(bidRequest, 'mediaTypes.video');\n if (videoParams) {\n const { sizes, playerSize } = videoParams;\n\n const format = (playerSize || sizes)?.map((size) => ({ w: size[0], h: size[1] }));\n\n const [firstSize] = format || [];\n\n delete videoParams.sizes;\n\n return {\n ...videoParams,\n w: firstSize?.w,\n h: firstSize?.h,\n format,\n };\n }\n}\n\n/**\n * @param {ExtendedBidRequest} bidRequest\n */\nfunction mapNative(bidRequest) {\n const adUnitNativeAssets = deepAccess(bidRequest, 'mediaTypes.native');\n if (adUnitNativeAssets) {\n const assets = [];\n\n Object.keys(adUnitNativeAssets).forEach((assetCode) => {\n if (NATIVE_ASSETS.hasOwnProperty(assetCode)) {\n const nativeAsset = NATIVE_ASSETS[assetCode];\n const adUnitAssetParams = adUnitNativeAssets[assetCode];\n const asset = mapAsset(assetCode, adUnitAssetParams, nativeAsset);\n assets.push(asset);\n }\n });\n\n return {\n ver: 1.2,\n request: JSON.stringify({\n ver: 1.2,\n assets,\n eventtrackers: [\n { event: TRACKER_EVENTS.impression, methods: [TRACKER_METHODS.img] },\n ],\n }),\n };\n }\n}\n\nfunction mapAsset(assetCode, adUnitAssetParams, nativeAsset) {\n const [nativeAssetId, nativeAssetType] = nativeAsset;\n const asset = {\n id: nativeAssetId,\n };\n\n if (adUnitAssetParams.required) {\n asset.required = 1;\n }\n\n if (assetCode === 'title') {\n asset.title = {\n len: adUnitAssetParams.len || 25,\n };\n } else if (assetCode === 'image' || assetCode === 'icon') {\n asset.img = mapImageAsset(adUnitAssetParams, nativeAssetType);\n } else {\n asset.data = {\n type: nativeAssetType,\n len: adUnitAssetParams.len,\n };\n }\n\n return asset;\n}\n\nfunction mapImageAsset(adUnitImageAssetParams, nativeAssetType) {\n const img = {\n type: nativeAssetType,\n };\n\n if (adUnitImageAssetParams.aspect_ratios) {\n const ratio = adUnitImageAssetParams.aspect_ratios[0];\n const minWidth = ratio.min_width || 100;\n\n img.wmin = minWidth;\n img.hmin = (minWidth / ratio.ratio_width * ratio.ratio_height);\n }\n\n if (adUnitImageAssetParams.sizes) {\n const size = Array.isArray(adUnitImageAssetParams.sizes[0]) ? adUnitImageAssetParams.sizes[0] : adUnitImageAssetParams.sizes;\n img.w = size[0];\n img.h = size[1];\n }\n\n return img;\n}\n\n/**\n * Unpack the response from the server into a list of bids.\n *\n * @param {ServerResponse} serverResponse A successful response from the server.\n * @param {YandexServerRequest} yandexServerRequest\n * @return {Bid[]} An array of bids which were nested inside the server.\n */\nfunction interpretResponse(serverResponse, { bidRequest }) {\n const response = serverResponse.body;\n if (!response.seatbid) {\n return [];\n }\n const { seatbid, cur } = serverResponse.body;\n const bidsReceived = seatbid\n .map(seatbid => seatbid.bid)\n .reduce((a, b) => a.concat(b), []);\n\n const currency = cur || DEFAULT_CURRENCY;\n\n return bidsReceived.map(bidReceived => {\n const price = bidReceived.price;\n /** @type {Bid} */\n const prBid = {\n requestId: bidRequest.bidId,\n cpm: price,\n currency: currency,\n width: bidReceived.w,\n height: bidReceived.h,\n creativeId: bidReceived.adid,\n nurl: replaceAuctionPrice(bidReceived.nurl, price, currency),\n\n netRevenue: true,\n ttl: DEFAULT_TTL,\n\n meta: {\n advertiserDomains: bidReceived.adomain && bidReceived.adomain.length > 0 ? bidReceived.adomain : [],\n }\n };\n\n if (bidReceived.lurl) {\n prBid.lurl = bidReceived.lurl;\n }\n\n switch (bidReceived.mtype) {\n case ORTB_MTYPES.VIDEO:\n prBid.mediaType = VIDEO;\n prBid.vastXml = bidReceived.adm;\n break;\n case ORTB_MTYPES.NATIVE:\n prBid.mediaType = NATIVE;\n prBid.native = interpretNativeAd(bidReceived, price, currency);\n break;\n case ORTB_MTYPES.BANNER:\n prBid.mediaType = BANNER;\n prBid.ad = bidReceived.adm;\n break;\n }\n\n return prBid;\n });\n}\n\nfunction interpretNativeAd(bidReceived, price, currency) {\n try {\n const { adm } = bidReceived;\n const { native } = JSON.parse(adm);\n\n const result = {\n clickUrl: native.link.url,\n };\n\n native.assets.forEach(asset => {\n const assetCode = NATIVE_ASSETS_IDS[asset.id];\n if (!assetCode) {\n return;\n }\n if (assetCode === 'image' || assetCode === 'icon') {\n result[assetCode] = {\n url: asset.img.url,\n width: asset.img.w,\n height: asset.img.h\n };\n } else if (assetCode === 'title') {\n result[assetCode] = asset.title.text;\n } else {\n result[assetCode] = asset.data.value;\n }\n });\n\n const impressionTrackers = _map(native.imptrackers || [], (tracker) =>\n replaceAuctionPrice(tracker, price, currency)\n );\n\n _each(native.eventtrackers || [], (eventtracker) => {\n if (\n eventtracker.event === TRACKER_EVENTS.impression &&\n eventtracker.method === TRACKER_METHODS.img\n ) {\n impressionTrackers.push(\n replaceAuctionPrice(eventtracker.url, price, currency)\n );\n }\n });\n\n result.impressionTrackers = impressionTrackers;\n\n return result;\n } catch (e) {}\n}\n\nfunction replaceAuctionPrice(url, price, currency) {\n if (!url) return;\n\n return url\n .replace(/\\${AUCTION_PRICE}/, price)\n .replace(/\\${AUCTION_CURRENCY}/, currency);\n}\n\nfunction addRTT(url, rtt) {\n if (!url) return;\n\n if (url.indexOf(`\\${RTT}`) > -1) {\n return url.replace(/\\${RTT}/, rtt ?? -1);\n }\n\n const urlObj = new URL(url);\n\n if (Number.isInteger(rtt)) {\n urlObj.searchParams.set('rtt', rtt);\n } else {\n urlObj.searchParams.delete('rtt');\n }\n\n url = urlObj.toString();\n\n return url;\n}\n\nregisterBidder(spec);\n"],"mappings":"AAAA,SAAQA,cAAc,IAAIC,IAAI,QAAO,wBAAwB;AAA7D,SAASC,4BAA4B,QAAQ,qCAAqC;AAClF,SAASC,cAAc,QAAQ,kCAAkC;AACjE,SAASC,MAAM,EAAEC,MAAM,EAAEC,KAAK,QAAQ,sBAAsB;AAC5D,SAASC,qCAAqC,QAAQ,kBAAkB;AACxE,SAASC,KAAK,EAAEC,IAAI,EAAEC,UAAU,EAAEC,YAAY,EAAEC,QAAQ,EAAEC,YAAY,EAAEC,OAAO,QAAQ,iBAAiB;;AAExG;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA,MAAMC,WAAW,GAAG,QAAQ;AAC5B,MAAMC,UAAU,GAAG,8BAA8B;AACjD,MAAMC,WAAW,GAAG,GAAG;AACvB,MAAMC,gBAAgB,GAAG,KAAK;AAC9B;AACA;AACA;AACA,MAAMC,qBAAqB,GAAG,CAACf,MAAM,EAAEC,MAAM,EAAEC,KAAK,CAAC;AAErD,MAAMc,WAAW,GAAG;EAClBhB,MAAM,EAAE,CAAC;EACTE,KAAK,EAAE,CAAC;EACRD,MAAM,EAAE;AACV,CAAC;AAED,MAAMgB,MAAM,GAAG,KAAK;AACpB,MAAMC,eAAe,GAAG,OAAO;AAE/B,MAAMC,eAAe,GAAG;EACtBC,GAAG,EAAE,CAAC;EACNC,EAAE,EAAE;AACN,CAAC;AAED,MAAMC,cAAc,GAAG;EACrBC,UAAU,EAAE,CAAC;EACb,gBAAgB,EAAE,CAAC;EACnB,iBAAiB,EAAE,CAAC;EACpB,kBAAkB,EAAE;AACtB,CAAC;AAED,MAAMC,iBAAiB,GAAG;EACxBC,IAAI,EAAE,CAAC;EACPC,KAAK,EAAE;AACT,CAAC;AACD,MAAMC,gBAAgB,GAAG;EACvBC,KAAK,EAAE,CAAC;EACRC,SAAS,EAAE,CAAC;EACZC,IAAI,EAAE,CAAC;EACPC,MAAM,EAAE,CAAC;EACTC,KAAK,EAAE,CAAC;EACRC,OAAO,EAAE,CAAC;EACVC,KAAK,EAAE,EAAE;EACTC,WAAW,EAAE,EAAE;EACfC,QAAQ,EAAE,EAAE;EACZC,KAAK,EAAE;AACT,CAAC;AACD,OAAO,MAAMC,aAAa,GAAG;EAC3BC,KAAK,EAAE,CAAC,CAAC,EAAEZ,gBAAgB,CAACC,KAAK,CAAC;EAClCY,IAAI,EAAE,CAAC,CAAC,EAAEb,gBAAgB,CAACG,IAAI,CAAC;EAChCW,KAAK,EAAE,CAAC,CAAC,EAAEd,gBAAgB,CAACO,KAAK,CAAC;EAClCQ,WAAW,EAAE,CAAC,CAAC,EAAEf,gBAAgB,CAACE,SAAS,CAAC;EAC5Cc,IAAI,EAAE,CAAC,CAAC,EAAEnB,iBAAiB,CAACC,IAAI,CAAC;EACjCmB,KAAK,EAAE,CAAC,CAAC,EAAEpB,iBAAiB,CAACE,KAAK,CAAC;EACnCmB,UAAU,EAAE,CAAC,CAAC,EAAElB,gBAAgB,CAACQ,WAAW,CAAC;EAC7CW,GAAG,EAAE,CAAC,CAAC,EAAEnB,gBAAgB,CAACS,QAAQ,CAAC;EACnCW,MAAM,EAAE,CAAC,CAAC,EAAEpB,gBAAgB,CAACI,MAAM,CAAC;EACpCiB,KAAK,EAAE,CAAC,EAAE,EAAErB,gBAAgB,CAACK,KAAK;AACpC,CAAC;AACD,MAAMiB,iBAAiB,GAAG,CAAC,CAAC;AAC5B7C,KAAK,CAACkC,aAAa,EAAE,CAACY,KAAK,EAAEC,GAAG,KAAK;EAAEF,iBAAiB,CAACC,KAAK,CAAC,CAAC,CAAC,CAAC,GAAGC,GAAG;AAAC,CAAC,CAAC;;AAE3E;AACA,OAAO,MAAMC,IAAI,GAAG;EAClBC,IAAI,EAAE1C,WAAW;EACjB2C,OAAO,EAAE,CAAC,IAAI,CAAC;EAAE;EACjBC,mBAAmB,EAAExC,qBAAqB;EAE1C;AACF;AACA;AACA;AACA;AACA;EACEyC,iBAAiB,EAAE,SAAAA,CAASC,GAAG,EAAE;IAC/B,MAAM;MAAEC;IAAO,CAAC,GAAGD,GAAG;IACtB,IAAI,CAACC,MAAM,EAAE;MACX,OAAO,KAAK;IACd;IACA,MAAM;MAAEC,MAAM;MAAEC;IAAM,CAAC,GAAGC,mBAAmB,CAACH,MAAM,CAAC;IACrD,IAAI,EAAEC,MAAM,IAAIC,KAAK,CAAC,EAAE;MACtB,OAAO,KAAK;IACd;IACA,OAAO,IAAI;EACb,CAAC;EAED;AACF;AACA;AACA;AACA;AACA;AACA;EACEE,aAAa,EAAE,SAAAA,CAASC,gBAAgB,EAAEC,aAAa,EAAE;IACvDD,gBAAgB,GAAG5D,qCAAqC,CAAC4D,gBAAgB,CAAC;IAE1E,MAAME,KAAK,GAAGD,aAAa,CAACC,KAAK;IAEjC,IAAIC,OAAO,GAAG,IAAI;IAClB,IAAIF,aAAa,EAAE;MACjBE,OAAO,GAAGF,aAAa,CAACE,OAAO;IACjC;IAEA,MAAMC,gBAAgB,GAAGrE,4BAA4B,CAACkE,aAAa,CAAC;IAEpE,OAAOD,gBAAgB,CAACK,GAAG,CAAEC,UAAU,IAAK;MAC1C,MAAM;QAAEX;MAAO,CAAC,GAAGW,UAAU;MAC7B,MAAM;QAAEC,SAAS;QAAEC,eAAe,GAAG,IAAI;QAAEC;MAAI,CAAC,GAAGd,MAAM;MAEzD,MAAM;QAAEC,MAAM;QAAEC;MAAM,CAAC,GAAGC,mBAAmB,CAACH,MAAM,CAAC;MAErD,MAAMe,WAAW,GAAG;QAClB,QAAQ,EAAEb,KAAK;QACf,YAAY,EAAEU,SAAS,IAAIL,KAAK,EAAES,IAAI,EAAEC,MAAM;QAC9C,iBAAiB,EAAEzD,eAAe;QAClC,QAAQ,EAAED;MACZ,CAAC;MAED,MAAM2D,WAAW,GAAGC,OAAO,CAACvE,UAAU,CAAC0D,aAAa,EAAE,yBAAyB,CAAC,CAAC;MACjF,IAAIY,WAAW,EAAE;QACf,MAAME,aAAa,GAAGxE,UAAU,CAAC0D,aAAa,EAAE,2BAA2B,CAAC;QAC5ES,WAAW,CAAC,MAAM,CAAC,GAAG,CAAC;QACvBA,WAAW,CAAC,aAAa,CAAC,GAAGK,aAAa;MAC5C;MAEA,MAAMC,GAAG,GAAG;QACVC,EAAE,EAAEpB,KAAK;QACTqB,MAAM,EAAEC,SAAS,CAACb,UAAU,CAAC;QAC7Bc,MAAM,EAAEC,SAAS,CAACf,UAAU,CAAC;QAC7BgB,KAAK,EAAEC,QAAQ,CAACjB,UAAU,CAAC;QAC3BkB,cAAc,EAAE,WAAW;QAC3BC,iBAAiB,EAAE;MACrB,CAAC;MAED,MAAMC,QAAQ,GAAGC,WAAW,CAACrB,UAAU,CAAC;MACxC,IAAIoB,QAAQ,EAAE;QACZV,GAAG,CAACU,QAAQ,GAAGA,QAAQ,CAACE,KAAK;QAC7BZ,GAAG,CAACa,WAAW,GAAGH,QAAQ,CAACI,QAAQ;MACrC;MAEA,MAAMA,QAAQ,GAAGrB,GAAG,IAAIL,gBAAgB;MACxC,IAAI0B,QAAQ,EAAE;QACZpB,WAAW,CAAC,SAAS,CAAC,GAAGoB,QAAQ;MACnC;MAEA,MAAMC,IAAI,GAAG;QACXd,EAAE,EAAEX,UAAU,CAAC0B,KAAK;QACpBhB,GAAG,EAAE,CAACA,GAAG,CAAC;QACVL,IAAI,EAAET,KAAK,EAAES,IAAI;QACjBsB,IAAI,EAAE9B,OAAO;QACb+B,IAAI,EAAEhC,KAAK,EAAEgC,IAAI;QACjBC,MAAM,EAAEjC,KAAK,EAAEiC;MACjB,CAAC;MAED,IAAI,CAACJ,IAAI,EAAEpB,IAAI,EAAEyB,OAAO,EAAEC,QAAQ,EAAE;QAClC,MAAMC,YAAY,GAAG/F,UAAU,CAAC2D,KAAK,EAAE,4BAA4B,CAAC;QACpE,IAAIoC,YAAY,EAAE;UAChB9F,YAAY,CAACuF,IAAI,EAAE,uBAAuB,EAAEO,YAAY,CAAC;QAC3D;MACF;MAEA,MAAMC,IAAI,GAAGhG,UAAU,CAAC+D,UAAU,EAAE,cAAc,CAAC;MACnD,IAAIiC,IAAI,IAAIA,IAAI,CAACC,MAAM,EAAE;QACvBhG,YAAY,CAACuF,IAAI,EAAE,eAAe,EAAEQ,IAAI,CAAC;MAC3C;MAEA,MAAME,iBAAiB,GAAGhG,QAAQ,CAACiE,WAAW,CAAC;MAC/C,MAAMgC,OAAO,GAAG;QACdC,MAAM,EAAE,MAAM;QACdC,GAAG,EAAE/F,UAAU,GAAG,IAAI+C,MAAM,IAAI6C,iBAAiB,EAAE;QACnDV,IAAI;QACJc,OAAO,EAAE;UACPrC;QACF,CAAC;QACDF;MACF,CAAC;MAED3D,OAAO,CAAC,eAAe,EAAE+F,OAAO,CAAC;MAEjC,OAAOA,OAAO;IAChB,CAAC,CAAC;EACJ,CAAC;EAEDI,iBAAiB,EAAEA,iBAAiB;EAEpC;AACF;AACA;AACA;EACEC,QAAQ,EAAE,SAAAA,CAASrD,GAAG,EAAE;IACtB,MAAMsD,IAAI,GAAGC,MAAM,CAACvD,GAAG,CAAC,MAAM,CAAC,EAAEA,GAAG,CAACwD,aAAa,CAAC;IAEnD,IAAI,CAACF,IAAI,EAAE;MACT;IACF;IAEAtG,YAAY,CAACsG,IAAI,CAAC;EACpB;AACF,CAAC;;AAED;AACA;AACA;AACA,SAASlD,mBAAmBA,CAACqD,gBAAgB,EAAE;EAC7C,MAAM;IAAEC;EAAY,CAAC,GAAGD,gBAAgB;EACxC,MAAME,MAAM,GAAG;IAAEzD,MAAM,EAAE,IAAI;IAAEC,KAAK,EAAE;EAAK,CAAC;EAE5C,IAAID,MAAM,EAAEC,KAAK;EACjB,IAAIuD,WAAW,EAAE;IACf;AACJ;AACA;AACA;AACA;AACA;IACI,MAAME,GAAG,GAAGF,WAAW,CAACG,WAAW,CAAC,GAAG,CAAC;IACxC,IAAID,GAAG,KAAK,CAAC,CAAC,EAAE;MACd,OAAOD,MAAM;IACf;IACA,MAAMG,IAAI,GAAGJ,WAAW,CAACG,WAAW,CAAC,GAAG,EAAED,GAAG,GAAG,CAAC,CAAC;IAClD1D,MAAM,GAAGwD,WAAW,CAACK,KAAK,CAACD,IAAI,GAAG,CAAC,EAAEF,GAAG,CAAC;IACzCzD,KAAK,GAAGuD,WAAW,CAACK,KAAK,CAACH,GAAG,GAAG,CAAC,CAAC;EACpC,CAAC,MAAM;IACL1D,MAAM,GAAGuD,gBAAgB,CAACvD,MAAM;IAChCC,KAAK,GAAGsD,gBAAgB,CAACtD,KAAK;EAChC;EAEA,IAAI,CAAC6D,QAAQ,CAAC9D,MAAM,EAAE,EAAE,CAAC,IAAI,CAAC8D,QAAQ,CAAC7D,KAAK,EAAE,EAAE,CAAC,EAAE;IACjD,OAAOwD,MAAM;EACf;EAEAA,MAAM,CAACzD,MAAM,GAAGA,MAAM;EACtByD,MAAM,CAACxD,KAAK,GAAGA,KAAK;EAEpB,OAAOwD,MAAM;AACf;;AAEA;AACA;AACA;AACA,SAAS1B,WAAWA,CAACrB,UAAU,EAAE;EAC/B,MAAMqD,MAAM,GAAG,EAAE;EAEjB,IAAI,OAAOrD,UAAU,CAACsD,QAAQ,KAAK,UAAU,EAAE;IAC7C5G,qBAAqB,CAAC6G,OAAO,CAACC,IAAI,IAAI;MACpC,IAAIxD,UAAU,CAACyD,cAAc,CAACD,IAAI,CAAC,EAAE;QACnC,MAAME,SAAS,GAAG1D,UAAU,CAACsD,QAAQ,CAAC;UACpC9B,QAAQ,EAAE/E,gBAAgB;UAC1BkH,SAAS,EAAEH,IAAI;UACfI,IAAI,EAAE5D,UAAU,CAAC6D,KAAK,IAAI;QAC5B,CAAC,CAAC;QACFR,MAAM,CAACS,IAAI,CAACJ,SAAS,CAAC;MACxB;IACF,CAAC,CAAC;EACJ;EAEA,OAAOL,MAAM,CAACU,IAAI,CAAC,CAACC,CAAC,EAAEC,CAAC,KAAKA,CAAC,CAAC3C,KAAK,GAAG0C,CAAC,CAAC1C,KAAK,CAAC,CAAC,CAAC,CAAC;AACpD;;AAEA;AACA;AACA;AACA,SAAST,SAASA,CAACb,UAAU,EAAE;EAC7B,IAAI/D,UAAU,CAAC+D,UAAU,EAAE,mBAAmB,CAAC,EAAE;IAC/C,MAAM6D,KAAK,GAAG7D,UAAU,CAAC6D,KAAK,IAAI7D,UAAU,CAACkE,UAAU,CAACtD,MAAM,CAACiD,KAAK;IACpE,MAAMM,MAAM,GAAGN,KAAK,CAAC9D,GAAG,CAAE6D,IAAI,KAAM;MAClCQ,CAAC,EAAER,IAAI,CAAC,CAAC,CAAC;MACVS,CAAC,EAAET,IAAI,CAAC,CAAC;IACX,CAAC,CAAC,CAAC;IACH,MAAM;MAAEQ,CAAC;MAAEC;IAAE,CAAC,GAAGF,MAAM,CAAC,CAAC,CAAC;IAE1B,OAAO;MACLA,MAAM;MACNC,CAAC;MACDC;IACF,CAAC;EACH;AACF;;AAEA;AACA;AACA;AACA;AACA,SAASpD,QAAQA,CAACjB,UAAU,EAAE;EAC5B,MAAMsE,WAAW,GAAGrI,UAAU,CAAC+D,UAAU,EAAE,kBAAkB,CAAC;EAC9D,IAAIsE,WAAW,EAAE;IACf,MAAM;MAAET,KAAK;MAAEU;IAAW,CAAC,GAAGD,WAAW;IAEzC,MAAMH,MAAM,GAAG,CAACI,UAAU,IAAIV,KAAK,GAAG9D,GAAG,CAAE6D,IAAI,KAAM;MAAEQ,CAAC,EAAER,IAAI,CAAC,CAAC,CAAC;MAAES,CAAC,EAAET,IAAI,CAAC,CAAC;IAAE,CAAC,CAAC,CAAC;IAEjF,MAAM,CAACY,SAAS,CAAC,GAAGL,MAAM,IAAI,EAAE;IAEhC,OAAOG,WAAW,CAACT,KAAK;IAExB,OAAO;MACL,GAAGS,WAAW;MACdF,CAAC,EAAEI,SAAS,EAAEJ,CAAC;MACfC,CAAC,EAAEG,SAAS,EAAEH,CAAC;MACfF;IACF,CAAC;EACH;AACF;;AAEA;AACA;AACA;AACA,SAASpD,SAASA,CAACf,UAAU,EAAE;EAC7B,MAAMyE,kBAAkB,GAAGxI,UAAU,CAAC+D,UAAU,EAAE,mBAAmB,CAAC;EACtE,IAAIyE,kBAAkB,EAAE;IACtB,MAAMC,MAAM,GAAG,EAAE;IAEjBC,MAAM,CAACC,IAAI,CAACH,kBAAkB,CAAC,CAAClB,OAAO,CAAEsB,SAAS,IAAK;MACrD,IAAI5G,aAAa,CAACwF,cAAc,CAACoB,SAAS,CAAC,EAAE;QAC3C,MAAMC,WAAW,GAAG7G,aAAa,CAAC4G,SAAS,CAAC;QAC5C,MAAME,iBAAiB,GAAGN,kBAAkB,CAACI,SAAS,CAAC;QACvD,MAAMhG,KAAK,GAAGmG,QAAQ,CAACH,SAAS,EAAEE,iBAAiB,EAAED,WAAW,CAAC;QACjEJ,MAAM,CAACZ,IAAI,CAACjF,KAAK,CAAC;MACpB;IACF,CAAC,CAAC;IAEF,OAAO;MACLoG,GAAG,EAAE,GAAG;MACR7C,OAAO,EAAE8C,IAAI,CAACC,SAAS,CAAC;QACtBF,GAAG,EAAE,GAAG;QACRP,MAAM;QACNU,aAAa,EAAE,CACb;UAAEC,KAAK,EAAEpI,cAAc,CAACC,UAAU;UAAEoI,OAAO,EAAE,CAACxI,eAAe,CAACC,GAAG;QAAE,CAAC;MAExE,CAAC;IACH,CAAC;EACH;AACF;AAEA,SAASiI,QAAQA,CAACH,SAAS,EAAEE,iBAAiB,EAAED,WAAW,EAAE;EAC3D,MAAM,CAACS,aAAa,EAAEC,eAAe,CAAC,GAAGV,WAAW;EACpD,MAAMjG,KAAK,GAAG;IACZ8B,EAAE,EAAE4E;EACN,CAAC;EAED,IAAIR,iBAAiB,CAACU,QAAQ,EAAE;IAC9B5G,KAAK,CAAC4G,QAAQ,GAAG,CAAC;EACpB;EAEA,IAAIZ,SAAS,KAAK,OAAO,EAAE;IACzBhG,KAAK,CAACX,KAAK,GAAG;MACZwH,GAAG,EAAEX,iBAAiB,CAACW,GAAG,IAAI;IAChC,CAAC;EACH,CAAC,MAAM,IAAIb,SAAS,KAAK,OAAO,IAAIA,SAAS,KAAK,MAAM,EAAE;IACxDhG,KAAK,CAAC9B,GAAG,GAAG4I,aAAa,CAACZ,iBAAiB,EAAES,eAAe,CAAC;EAC/D,CAAC,MAAM;IACL3G,KAAK,CAAC4C,IAAI,GAAG;MACX+B,IAAI,EAAEgC,eAAe;MACrBE,GAAG,EAAEX,iBAAiB,CAACW;IACzB,CAAC;EACH;EAEA,OAAO7G,KAAK;AACd;AAEA,SAAS8G,aAAaA,CAACC,sBAAsB,EAAEJ,eAAe,EAAE;EAC9D,MAAMzI,GAAG,GAAG;IACVyG,IAAI,EAAEgC;EACR,CAAC;EAED,IAAII,sBAAsB,CAACC,aAAa,EAAE;IACxC,MAAMC,KAAK,GAAGF,sBAAsB,CAACC,aAAa,CAAC,CAAC,CAAC;IACrD,MAAME,QAAQ,GAAGD,KAAK,CAACE,SAAS,IAAI,GAAG;IAEvCjJ,GAAG,CAACkJ,IAAI,GAAGF,QAAQ;IACnBhJ,GAAG,CAACmJ,IAAI,GAAIH,QAAQ,GAAGD,KAAK,CAACK,WAAW,GAAGL,KAAK,CAACM,YAAa;EAChE;EAEA,IAAIR,sBAAsB,CAAC/B,KAAK,EAAE;IAChC,MAAMD,IAAI,GAAGyC,KAAK,CAACC,OAAO,CAACV,sBAAsB,CAAC/B,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG+B,sBAAsB,CAAC/B,KAAK,CAAC,CAAC,CAAC,GAAG+B,sBAAsB,CAAC/B,KAAK;IAC5H9G,GAAG,CAACqH,CAAC,GAAGR,IAAI,CAAC,CAAC,CAAC;IACf7G,GAAG,CAACsH,CAAC,GAAGT,IAAI,CAAC,CAAC,CAAC;EACjB;EAEA,OAAO7G,GAAG;AACZ;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAASyF,iBAAiBA,CAAC+D,cAAc,EAAAC,IAAA,EAAkB;EAAA,IAAhB;IAAExG;EAAW,CAAC,GAAAwG,IAAA;EACvD,MAAMC,QAAQ,GAAGF,cAAc,CAACpI,IAAI;EACpC,IAAI,CAACsI,QAAQ,CAACC,OAAO,EAAE;IACrB,OAAO,EAAE;EACX;EACA,MAAM;IAAEA,OAAO;IAAEvG;EAAI,CAAC,GAAGoG,cAAc,CAACpI,IAAI;EAC5C,MAAMwI,YAAY,GAAGD,OAAO,CACzB3G,GAAG,CAAC2G,OAAO,IAAIA,OAAO,CAACtH,GAAG,CAAC,CAC3BwH,MAAM,CAAC,CAAC5C,CAAC,EAAEC,CAAC,KAAKD,CAAC,CAAC6C,MAAM,CAAC5C,CAAC,CAAC,EAAE,EAAE,CAAC;EAEpC,MAAMzC,QAAQ,GAAGrB,GAAG,IAAI1D,gBAAgB;EAExC,OAAOkK,YAAY,CAAC5G,GAAG,CAAC+G,WAAW,IAAI;IACrC,MAAMC,KAAK,GAAGD,WAAW,CAACC,KAAK;IAC/B;IACA,MAAMC,KAAK,GAAG;MACZC,SAAS,EAAEjH,UAAU,CAAC0B,KAAK;MAC3BwF,GAAG,EAAEH,KAAK;MACVvF,QAAQ,EAAEA,QAAQ;MAClB2F,KAAK,EAAEL,WAAW,CAAC1C,CAAC;MACpBgD,MAAM,EAAEN,WAAW,CAACzC,CAAC;MACrBgD,UAAU,EAAEP,WAAW,CAACQ,IAAI;MAC5B5E,IAAI,EAAE6E,mBAAmB,CAACT,WAAW,CAACpE,IAAI,EAAEqE,KAAK,EAAEvF,QAAQ,CAAC;MAE5DgG,UAAU,EAAE,IAAI;MAChBC,GAAG,EAAEjL,WAAW;MAEhBkL,IAAI,EAAE;QACJC,iBAAiB,EAAEb,WAAW,CAACc,OAAO,IAAId,WAAW,CAACc,OAAO,CAAC1F,MAAM,GAAG,CAAC,GAAG4E,WAAW,CAACc,OAAO,GAAG;MACnG;IACF,CAAC;IAED,IAAId,WAAW,CAACe,IAAI,EAAE;MACpBb,KAAK,CAACa,IAAI,GAAGf,WAAW,CAACe,IAAI;IAC/B;IAEA,QAAQf,WAAW,CAACgB,KAAK;MACvB,KAAKnL,WAAW,CAACd,KAAK;QACpBmL,KAAK,CAACrD,SAAS,GAAG9H,KAAK;QACvBmL,KAAK,CAACe,OAAO,GAAGjB,WAAW,CAACkB,GAAG;QAC/B;MACF,KAAKrL,WAAW,CAACf,MAAM;QACrBoL,KAAK,CAACrD,SAAS,GAAG/H,MAAM;QACxBoL,KAAK,CAAClG,MAAM,GAAGmH,iBAAiB,CAACnB,WAAW,EAAEC,KAAK,EAAEvF,QAAQ,CAAC;QAC9D;MACF,KAAK7E,WAAW,CAAChB,MAAM;QACrBqL,KAAK,CAACrD,SAAS,GAAGhI,MAAM;QACxBqL,KAAK,CAACkB,EAAE,GAAGpB,WAAW,CAACkB,GAAG;QAC1B;IACJ;IAEA,OAAOhB,KAAK;EACd,CAAC,CAAC;AACJ;AAEA,SAASiB,iBAAiBA,CAACnB,WAAW,EAAEC,KAAK,EAAEvF,QAAQ,EAAE;EACvD,IAAI;IACF,MAAM;MAAEwG;IAAI,CAAC,GAAGlB,WAAW;IAC3B,MAAM;MAAEhG;IAAO,CAAC,GAAGoE,IAAI,CAACiD,KAAK,CAACH,GAAG,CAAC;IAElC,MAAMjF,MAAM,GAAG;MACbqF,QAAQ,EAAEtH,MAAM,CAACuH,IAAI,CAAC/F;IACxB,CAAC;IAEDxB,MAAM,CAAC4D,MAAM,CAACnB,OAAO,CAAC1E,KAAK,IAAI;MAC7B,MAAMgG,SAAS,GAAGjG,iBAAiB,CAACC,KAAK,CAAC8B,EAAE,CAAC;MAC7C,IAAI,CAACkE,SAAS,EAAE;QACd;MACF;MACA,IAAIA,SAAS,KAAK,OAAO,IAAIA,SAAS,KAAK,MAAM,EAAE;QACjD9B,MAAM,CAAC8B,SAAS,CAAC,GAAG;UAClBvC,GAAG,EAAEzD,KAAK,CAAC9B,GAAG,CAACuF,GAAG;UAClB6E,KAAK,EAAEtI,KAAK,CAAC9B,GAAG,CAACqH,CAAC;UAClBgD,MAAM,EAAEvI,KAAK,CAAC9B,GAAG,CAACsH;QACpB,CAAC;MACH,CAAC,MAAM,IAAIQ,SAAS,KAAK,OAAO,EAAE;QAChC9B,MAAM,CAAC8B,SAAS,CAAC,GAAGhG,KAAK,CAACX,KAAK,CAACoK,IAAI;MACtC,CAAC,MAAM;QACLvF,MAAM,CAAC8B,SAAS,CAAC,GAAGhG,KAAK,CAAC4C,IAAI,CAAC8G,KAAK;MACtC;IACF,CAAC,CAAC;IAEF,MAAMC,kBAAkB,GAAGxM,IAAI,CAAC8E,MAAM,CAAC2H,WAAW,IAAI,EAAE,EAAGC,OAAO,IAChEnB,mBAAmB,CAACmB,OAAO,EAAE3B,KAAK,EAAEvF,QAAQ,CAC9C,CAAC;IAEDzF,KAAK,CAAC+E,MAAM,CAACsE,aAAa,IAAI,EAAE,EAAGuD,YAAY,IAAK;MAClD,IACEA,YAAY,CAACtD,KAAK,KAAKpI,cAAc,CAACC,UAAU,IAChDyL,YAAY,CAACtG,MAAM,KAAKvF,eAAe,CAACC,GAAG,EAC3C;QACAyL,kBAAkB,CAAC1E,IAAI,CACrByD,mBAAmB,CAACoB,YAAY,CAACrG,GAAG,EAAEyE,KAAK,EAAEvF,QAAQ,CACvD,CAAC;MACH;IACF,CAAC,CAAC;IAEFuB,MAAM,CAACyF,kBAAkB,GAAGA,kBAAkB;IAE9C,OAAOzF,MAAM;EACf,CAAC,CAAC,OAAO6F,CAAC,EAAE,CAAC;AACf;AAEA,SAASrB,mBAAmBA,CAACjF,GAAG,EAAEyE,KAAK,EAAEvF,QAAQ,EAAE;EACjD,IAAI,CAACc,GAAG,EAAE;EAEV,OAAOA,GAAG,CACPuG,OAAO,CAAC,mBAAmB,EAAE9B,KAAK,CAAC,CACnC8B,OAAO,CAAC,sBAAsB,EAAErH,QAAQ,CAAC;AAC9C;AAEA,SAASmB,MAAMA,CAACL,GAAG,EAAEwG,GAAG,EAAE;EACxB,IAAI,CAACxG,GAAG,EAAE;EAEV,IAAIA,GAAG,CAACyG,OAAO,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,EAAE;IAC/B,OAAOzG,GAAG,CAACuG,OAAO,CAAC,SAAS,EAAEC,GAAG,IAAI,CAAC,CAAC,CAAC;EAC1C;EAEA,MAAME,MAAM,GAAG,IAAIC,GAAG,CAAC3G,GAAG,CAAC;EAE3B,IAAI4G,MAAM,CAACC,SAAS,CAACL,GAAG,CAAC,EAAE;IACzBE,MAAM,CAACI,YAAY,CAACC,GAAG,CAAC,KAAK,EAAEP,GAAG,CAAC;EACrC,CAAC,MAAM;IACLE,MAAM,CAACI,YAAY,CAACE,MAAM,CAAC,KAAK,CAAC;EACnC;EAEAhH,GAAG,GAAG0G,MAAM,CAACO,QAAQ,CAAC,CAAC;EAEvB,OAAOjH,GAAG;AACZ;AAEA5G,cAAc,CAACqD,IAAI,CAAC;AAtjBpBvD,IAAI,CAAC,kBAAkB,CAAC","ignoreList":[]}
@@ -62,7 +62,7 @@ export const spec = {
62
62
  const cdep = getCdep(bidderRequest);
63
63
  if (bannerBidRequests.length > 0) {
64
64
  const serverRequest = {
65
- pbav: "10.2.0",
65
+ pbav: "10.4.0",
66
66
  p: [],
67
67
  // TODO: is 'page' the right value here?
68
68
  page_url: bidderRequest.refererInfo.page,
@@ -394,7 +394,7 @@ function openRtbRequest(bidRequests, bidderRequest) {
394
394
  badv: bidRequests[0].params.badv || [],
395
395
  bcat: deepAccess(bidderRequest, 'bcat') || bidRequests[0].params.bcat || [],
396
396
  ext: {
397
- prebid: "10.2.0"
397
+ prebid: "10.4.0"
398
398
  },
399
399
  ats_envelope: bidRequests[0].params.lr_env
400
400
  };
@@ -138,7 +138,7 @@ const yieldoneAnalytics = Object.assign(adapter({
138
138
  url: referrers[currentAuctionId]
139
139
  };
140
140
  yieldoneAnalytics.eventsStorage[currentAuctionId].pubId = pubId;
141
- yieldoneAnalytics.eventsStorage[currentAuctionId].wrapper_version = "10.2.0";
141
+ yieldoneAnalytics.eventsStorage[currentAuctionId].wrapper_version = "10.4.0";
142
142
  const adUnitNameMap = makeAdUnitNameMap();
143
143
  if (adUnitNameMap) {
144
144
  yieldoneAnalytics.eventsStorage[currentAuctionId].events.forEach(it => {
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "prebid.js",
3
- "version": "10.2.0",
3
+ "version": "10.4.0",
4
4
  "description": "Header Bidding Management Library",
5
5
  "main": "dist/src/prebid.public.ts",
6
6
  "exports": {
@@ -65,9 +65,8 @@
65
65
  "babel-plugin-istanbul": "^6.1.1",
66
66
  "body-parser": "^1.19.0",
67
67
  "chai": "^4.2.0",
68
- "coveralls-next": "^4.2.1",
69
68
  "deep-equal": "^2.0.3",
70
- "eslint": "^9.22.0",
69
+ "eslint": "^9.31.0",
71
70
  "eslint-plugin-import": "^2.31.0",
72
71
  "eslint-plugin-jsdoc": "^50.6.6",
73
72
  "execa": "^1.0.0",
@@ -0,0 +1 @@
1
+ import '../modules/rumbleBidAdapter.js';
@@ -0,0 +1 @@
1
+ import '../modules/sevioBidAdapter.js';
@@ -23,6 +23,11 @@ export const ACTIVITY_PARAM_STORAGE_TYPE: "storageType";
23
23
  * Relevant for: accessDevice
24
24
  */
25
25
  export const ACTIVITY_PARAM_STORAGE_KEY: "storageKey";
26
+ /**
27
+ * True if attempting to write to device storage; false otherwise (e.g. when reading from or checking availability of storage).
28
+ * Relevant for: accessDevice
29
+ */
30
+ export const ACTIVITY_PARAM_STORAGE_WRITE: "write";
26
31
  /**
27
32
  * s2sConfig[].configName, used to identify a particular s2s instance
28
33
  * relevant for: fetchBids, but only when component is 'prebid.pbsBidAdapter'
@@ -29,6 +29,12 @@ export const ACTIVITY_PARAM_STORAGE_TYPE = 'storageType';
29
29
  */
30
30
  export const ACTIVITY_PARAM_STORAGE_KEY = 'storageKey';
31
31
 
32
+ /**
33
+ * True if attempting to write to device storage; false otherwise (e.g. when reading from or checking availability of storage).
34
+ * Relevant for: accessDevice
35
+ */
36
+ export const ACTIVITY_PARAM_STORAGE_WRITE = 'write';
37
+
32
38
  /**
33
39
  * s2sConfig[].configName, used to identify a particular s2s instance
34
40
  * relevant for: fetchBids, but only when component is 'prebid.pbsBidAdapter'
@@ -1 +1 @@
1
- {"version":3,"file":"params.js","names":["MODULE_TYPE_BIDDER","hook","ACTIVITY_PARAM_COMPONENT","ACTIVITY_PARAM_COMPONENT_TYPE","ACTIVITY_PARAM_COMPONENT_NAME","ACTIVITY_PARAM_ADAPTER_CODE","ACTIVITY_PARAM_STORAGE_TYPE","ACTIVITY_PARAM_STORAGE_KEY","ACTIVITY_PARAM_S2S_NAME","ACTIVITY_PARAM_SYNC_TYPE","ACTIVITY_PARAM_SYNC_URL","ACTIVITY_PARAM_ANL_CONFIG","activityParamsBuilder","resolveAlias","activityParams","moduleType","moduleName","params","defaults","buildActivityParams","Object","assign"],"sourceRoot":"../../../..","sources":["src/activities/params.js"],"sourcesContent":["import {MODULE_TYPE_BIDDER} from './modules.js';\nimport {hook} from '../hook.js';\n\n/**\n * Component ID - who is trying to perform the activity?\n * Relevant for all activities.\n */\nexport const ACTIVITY_PARAM_COMPONENT = 'component';\nexport const ACTIVITY_PARAM_COMPONENT_TYPE = ACTIVITY_PARAM_COMPONENT + 'Type';\nexport const ACTIVITY_PARAM_COMPONENT_NAME = ACTIVITY_PARAM_COMPONENT + 'Name';\n\n/**\n * Code of the bid adapter that `componentName` is an alias of.\n * May be the same as the component name.\n *\n * relevant for all activities, but only when componentType is 'bidder'.\n */\nexport const ACTIVITY_PARAM_ADAPTER_CODE = 'adapterCode';\n\n/**\n * Storage type - either 'html5' or 'cookie'.\n * Relevant for: accessDevice\n */\nexport const ACTIVITY_PARAM_STORAGE_TYPE = 'storageType';\n\n/**\n * Storage key - cookie name or localStorage key.\n * Relevant for: accessDevice\n */\nexport const ACTIVITY_PARAM_STORAGE_KEY = 'storageKey'\n\n/**\n * s2sConfig[].configName, used to identify a particular s2s instance\n * relevant for: fetchBids, but only when component is 'prebid.pbsBidAdapter'\n */\nexport const ACTIVITY_PARAM_S2S_NAME = 'configName';\n/**\n * user sync type - 'iframe' or 'pixel'\n * relevant for: syncUser\n */\nexport const ACTIVITY_PARAM_SYNC_TYPE = 'syncType'\n/**\n * user sync URL\n * relevant for: syncUser\n */\nexport const ACTIVITY_PARAM_SYNC_URL = 'syncUrl';\n/**\n * Configuration options for analytics adapter - the argument passed to `enableAnalytics`.\n * Relevant for: reportAnalytics\n * @private\n * @constant\n * @type {string}\n */\nexport const ACTIVITY_PARAM_ANL_CONFIG = '_config';\n\nexport function activityParamsBuilder(resolveAlias) {\n return function activityParams(moduleType, moduleName, params) {\n const defaults = {\n [ACTIVITY_PARAM_COMPONENT_TYPE]: moduleType,\n [ACTIVITY_PARAM_COMPONENT_NAME]: moduleName,\n [ACTIVITY_PARAM_COMPONENT]: `${moduleType}.${moduleName}`\n };\n if (moduleType === MODULE_TYPE_BIDDER) {\n defaults[ACTIVITY_PARAM_ADAPTER_CODE] = resolveAlias(moduleName);\n }\n return buildActivityParams(Object.assign(defaults, params));\n }\n}\n\nexport const buildActivityParams = hook('sync', params => params);\n"],"mappings":"AAAA,SAAQA,kBAAkB,QAAO,cAAc;AAC/C,SAAQC,IAAI,QAAO,YAAY;;AAE/B;AACA;AACA;AACA;AACA,OAAO,MAAMC,wBAAwB,GAAG,WAAW;AACnD,OAAO,MAAMC,6BAA6B,GAAGD,wBAAwB,GAAG,MAAM;AAC9E,OAAO,MAAME,6BAA6B,GAAGF,wBAAwB,GAAG,MAAM;;AAE9E;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,MAAMG,2BAA2B,GAAG,aAAa;;AAExD;AACA;AACA;AACA;AACA,OAAO,MAAMC,2BAA2B,GAAG,aAAa;;AAExD;AACA;AACA;AACA;AACA,OAAO,MAAMC,0BAA0B,GAAG,YAAY;;AAEtD;AACA;AACA;AACA;AACA,OAAO,MAAMC,uBAAuB,GAAG,YAAY;AACnD;AACA;AACA;AACA;AACA,OAAO,MAAMC,wBAAwB,GAAG,UAAU;AAClD;AACA;AACA;AACA;AACA,OAAO,MAAMC,uBAAuB,GAAG,SAAS;AAChD;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,MAAMC,yBAAyB,GAAG,SAAS;AAElD,OAAO,SAASC,qBAAqBA,CAACC,YAAY,EAAE;EAClD,OAAO,SAASC,cAAcA,CAACC,UAAU,EAAEC,UAAU,EAAEC,MAAM,EAAE;IAC7D,MAAMC,QAAQ,GAAG;MACf,CAACf,6BAA6B,GAAGY,UAAU;MAC3C,CAACX,6BAA6B,GAAGY,UAAU;MAC3C,CAACd,wBAAwB,GAAG,GAAGa,UAAU,IAAIC,UAAU;IACzD,CAAC;IACD,IAAID,UAAU,KAAKf,kBAAkB,EAAE;MACrCkB,QAAQ,CAACb,2BAA2B,CAAC,GAAGQ,YAAY,CAACG,UAAU,CAAC;IAClE;IACA,OAAOG,mBAAmB,CAACC,MAAM,CAACC,MAAM,CAACH,QAAQ,EAAED,MAAM,CAAC,CAAC;EAC7D,CAAC;AACH;AAEA,OAAO,MAAME,mBAAmB,GAAGlB,IAAI,CAAC,MAAM,EAAEgB,MAAM,IAAIA,MAAM,CAAC","ignoreList":[]}
1
+ {"version":3,"file":"params.js","names":["MODULE_TYPE_BIDDER","hook","ACTIVITY_PARAM_COMPONENT","ACTIVITY_PARAM_COMPONENT_TYPE","ACTIVITY_PARAM_COMPONENT_NAME","ACTIVITY_PARAM_ADAPTER_CODE","ACTIVITY_PARAM_STORAGE_TYPE","ACTIVITY_PARAM_STORAGE_KEY","ACTIVITY_PARAM_STORAGE_WRITE","ACTIVITY_PARAM_S2S_NAME","ACTIVITY_PARAM_SYNC_TYPE","ACTIVITY_PARAM_SYNC_URL","ACTIVITY_PARAM_ANL_CONFIG","activityParamsBuilder","resolveAlias","activityParams","moduleType","moduleName","params","defaults","buildActivityParams","Object","assign"],"sourceRoot":"../../../..","sources":["src/activities/params.js"],"sourcesContent":["import {MODULE_TYPE_BIDDER} from './modules.js';\nimport {hook} from '../hook.js';\n\n/**\n * Component ID - who is trying to perform the activity?\n * Relevant for all activities.\n */\nexport const ACTIVITY_PARAM_COMPONENT = 'component';\nexport const ACTIVITY_PARAM_COMPONENT_TYPE = ACTIVITY_PARAM_COMPONENT + 'Type';\nexport const ACTIVITY_PARAM_COMPONENT_NAME = ACTIVITY_PARAM_COMPONENT + 'Name';\n\n/**\n * Code of the bid adapter that `componentName` is an alias of.\n * May be the same as the component name.\n *\n * relevant for all activities, but only when componentType is 'bidder'.\n */\nexport const ACTIVITY_PARAM_ADAPTER_CODE = 'adapterCode';\n\n/**\n * Storage type - either 'html5' or 'cookie'.\n * Relevant for: accessDevice\n */\nexport const ACTIVITY_PARAM_STORAGE_TYPE = 'storageType';\n\n/**\n * Storage key - cookie name or localStorage key.\n * Relevant for: accessDevice\n */\nexport const ACTIVITY_PARAM_STORAGE_KEY = 'storageKey'\n\n/**\n * True if attempting to write to device storage; false otherwise (e.g. when reading from or checking availability of storage).\n * Relevant for: accessDevice\n */\nexport const ACTIVITY_PARAM_STORAGE_WRITE = 'write';\n\n/**\n * s2sConfig[].configName, used to identify a particular s2s instance\n * relevant for: fetchBids, but only when component is 'prebid.pbsBidAdapter'\n */\nexport const ACTIVITY_PARAM_S2S_NAME = 'configName';\n/**\n * user sync type - 'iframe' or 'pixel'\n * relevant for: syncUser\n */\nexport const ACTIVITY_PARAM_SYNC_TYPE = 'syncType'\n/**\n * user sync URL\n * relevant for: syncUser\n */\nexport const ACTIVITY_PARAM_SYNC_URL = 'syncUrl';\n/**\n * Configuration options for analytics adapter - the argument passed to `enableAnalytics`.\n * Relevant for: reportAnalytics\n * @private\n * @constant\n * @type {string}\n */\nexport const ACTIVITY_PARAM_ANL_CONFIG = '_config';\n\nexport function activityParamsBuilder(resolveAlias) {\n return function activityParams(moduleType, moduleName, params) {\n const defaults = {\n [ACTIVITY_PARAM_COMPONENT_TYPE]: moduleType,\n [ACTIVITY_PARAM_COMPONENT_NAME]: moduleName,\n [ACTIVITY_PARAM_COMPONENT]: `${moduleType}.${moduleName}`\n };\n if (moduleType === MODULE_TYPE_BIDDER) {\n defaults[ACTIVITY_PARAM_ADAPTER_CODE] = resolveAlias(moduleName);\n }\n return buildActivityParams(Object.assign(defaults, params));\n }\n}\n\nexport const buildActivityParams = hook('sync', params => params);\n"],"mappings":"AAAA,SAAQA,kBAAkB,QAAO,cAAc;AAC/C,SAAQC,IAAI,QAAO,YAAY;;AAE/B;AACA;AACA;AACA;AACA,OAAO,MAAMC,wBAAwB,GAAG,WAAW;AACnD,OAAO,MAAMC,6BAA6B,GAAGD,wBAAwB,GAAG,MAAM;AAC9E,OAAO,MAAME,6BAA6B,GAAGF,wBAAwB,GAAG,MAAM;;AAE9E;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,MAAMG,2BAA2B,GAAG,aAAa;;AAExD;AACA;AACA;AACA;AACA,OAAO,MAAMC,2BAA2B,GAAG,aAAa;;AAExD;AACA;AACA;AACA;AACA,OAAO,MAAMC,0BAA0B,GAAG,YAAY;;AAEtD;AACA;AACA;AACA;AACA,OAAO,MAAMC,4BAA4B,GAAG,OAAO;;AAEnD;AACA;AACA;AACA;AACA,OAAO,MAAMC,uBAAuB,GAAG,YAAY;AACnD;AACA;AACA;AACA;AACA,OAAO,MAAMC,wBAAwB,GAAG,UAAU;AAClD;AACA;AACA;AACA;AACA,OAAO,MAAMC,uBAAuB,GAAG,SAAS;AAChD;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,MAAMC,yBAAyB,GAAG,SAAS;AAElD,OAAO,SAASC,qBAAqBA,CAACC,YAAY,EAAE;EAClD,OAAO,SAASC,cAAcA,CAACC,UAAU,EAAEC,UAAU,EAAEC,MAAM,EAAE;IAC7D,MAAMC,QAAQ,GAAG;MACf,CAAChB,6BAA6B,GAAGa,UAAU;MAC3C,CAACZ,6BAA6B,GAAGa,UAAU;MAC3C,CAACf,wBAAwB,GAAG,GAAGc,UAAU,IAAIC,UAAU;IACzD,CAAC;IACD,IAAID,UAAU,KAAKhB,kBAAkB,EAAE;MACrCmB,QAAQ,CAACd,2BAA2B,CAAC,GAAGS,YAAY,CAACG,UAAU,CAAC;IAClE;IACA,OAAOG,mBAAmB,CAACC,MAAM,CAACC,MAAM,CAACH,QAAQ,EAAED,MAAM,CAAC,CAAC;EAC7D,CAAC;AACH;AAEA,OAAO,MAAME,mBAAmB,GAAGnB,IAAI,CAAC,MAAM,EAAEiB,MAAM,IAAIA,MAAM,CAAC","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"redactor.js","names":["deepAccess","config","isActivityAllowed","registerActivityControl","ACTIVITY_TRANSMIT_EIDS","ACTIVITY_TRANSMIT_PRECISE_GEO","ACTIVITY_TRANSMIT_TID","ACTIVITY_TRANSMIT_UFPD","scrubIPv4","scrubIPv6","ORTB_UFPD_PATHS","map","f","concat","ORTB_EIDS_PATHS","ORTB_GEO_PATHS","ORTB_IPV4_PATHS","ORTB_IPV6_PATHS","redactRule","ruleDef","Object","assign","get","run","root","path","object","property","applies","val","isData","repl","undefined","objectTransformer","rules","forEach","rule","paths","parts","split","tail","pop","length","join","applyTransform","session","obj","result","_len","arguments","args","Array","_key","sessionedApplies","name","head","parent","push","bind","filter","el","_len2","_key2","hasOwnProperty","keys","appliesWhenActivityDenied","activity","isAllowed","params","bidRequestTransmitRules","ortb2TransmitRules","Math","round","Number","EPSILON","redactorFactory","redactOrtb2","redactBidRequest","redactor","ortb2","bidRequest","getConfig","allow","reason"],"sourceRoot":"../../../..","sources":["src/activities/redactor.ts"],"sourcesContent":["import {deepAccess} from '../utils.js';\nimport {config} from '../config.js';\nimport {isActivityAllowed, registerActivityControl} from './rules.js';\nimport {\n ACTIVITY_TRANSMIT_EIDS,\n ACTIVITY_TRANSMIT_PRECISE_GEO,\n ACTIVITY_TRANSMIT_TID,\n ACTIVITY_TRANSMIT_UFPD\n} from './activities.js';\nimport { scrubIPv4, scrubIPv6 } from '../utils/ipUtils.js';\n\nexport const ORTB_UFPD_PATHS = [\n 'data',\n 'ext.data',\n 'yob',\n 'gender',\n 'keywords',\n 'kwarray',\n 'id',\n 'buyeruid',\n 'customdata'\n].map(f => `user.${f}`).concat('device.ext.cdep');\nexport const ORTB_EIDS_PATHS = ['user.eids', 'user.ext.eids'];\nexport const ORTB_GEO_PATHS = ['user.geo.lat', 'user.geo.lon', 'device.geo.lat', 'device.geo.lon'];\nexport const ORTB_IPV4_PATHS = ['device.ip']\nexport const ORTB_IPV6_PATHS = ['device.ipv6']\n\n/**\n * @typedef TransformationRuleDef\n * @property {name}\n * @property {Array[string]} paths dot-separated list of paths that this rule applies to.\n * @property {function(*): boolean} applies a predicate that should return true if this rule applies\n * (and the transformation defined herein should be applied). The arguments are those passed to the transformation function.\n * @property {name} a name for the rule; used to debounce calls to `applies` (and avoid excessive logging):\n * if a rule with the same name was already found to apply (or not), this one will (or won't) as well.\n */\n\n/**\n * @typedef RedactRuleDef A rule that removes, or replaces, values from an object (modifications are done in-place).\n * @augments TransformationRuleDef\n * @property {function(*): *} get? substitution functions for values that should be redacted;\n * takes in the original (unredacted) value as an input, and returns a substitute to use in the redacted\n * version. If it returns undefined, or this option is omitted, protected paths will be removed\n * from the redacted object.\n */\n\n/**\n * @param {RedactRuleDef} ruleDef\n * @return {TransformationRule}\n */\nexport function redactRule(ruleDef) {\n return Object.assign({\n get() {},\n run(root, path, object, property, applies) {\n const val = object && object[property];\n if (isData(val) && applies()) {\n const repl = this.get(val);\n if (repl === undefined) {\n delete object[property];\n } else {\n object[property] = repl;\n }\n }\n }\n }, ruleDef)\n}\n\n/**\n * @typedef TransformationRule\n * @augments TransformationRuleDef\n * @property {function} run rule logic - see `redactRule` for an example.\n */\n\n/**\n * @typedef {Function} TransformationFunction\n * @param object object to transform\n * @param ...args arguments to pass down to rule's `apply` methods.\n */\n\n/**\n * Return a transformation function that will apply the given rules to an object.\n *\n * @param {Array[TransformationRule]} rules\n * @return {TransformationFunction}\n */\nexport function objectTransformer(rules) {\n rules.forEach(rule => {\n rule.paths = rule.paths.map((path) => {\n const parts = path.split('.');\n const tail = parts.pop();\n return [parts.length > 0 ? parts.join('.') : null, tail]\n })\n })\n return function applyTransform(session, obj, ...args) {\n const result = [];\n const applies = sessionedApplies(session, ...args);\n rules.forEach(rule => {\n if (session[rule.name] === false) return;\n for (const [head, tail] of rule.paths) {\n const parent = head == null ? obj : deepAccess(obj, head);\n result.push(rule.run(obj, head, parent, tail, applies.bind(null, rule)));\n if (session[rule.name] === false) return;\n }\n })\n return result.filter(el => el != null);\n }\n}\n\nexport function sessionedApplies(session, ...args) {\n return function applies(rule) {\n if (!session.hasOwnProperty(rule.name)) {\n session[rule.name] = !!rule.applies(...args);\n }\n return session[rule.name];\n }\n}\n\nexport function isData(val) {\n return val != null && (typeof val !== 'object' || Object.keys(val).length > 0)\n}\n\nexport function appliesWhenActivityDenied(activity, isAllowed = isActivityAllowed) {\n return function applies(params) {\n return !isAllowed(activity, params);\n };\n}\n\nfunction bidRequestTransmitRules(isAllowed = isActivityAllowed) {\n return [\n {\n name: ACTIVITY_TRANSMIT_EIDS,\n paths: ['userId', 'userIdAsEids'],\n applies: appliesWhenActivityDenied(ACTIVITY_TRANSMIT_EIDS, isAllowed),\n },\n {\n name: ACTIVITY_TRANSMIT_TID,\n paths: ['ortb2Imp.ext.tid'],\n applies: appliesWhenActivityDenied(ACTIVITY_TRANSMIT_TID, isAllowed)\n }\n ].map(redactRule)\n}\n\nexport function ortb2TransmitRules(isAllowed = isActivityAllowed) {\n return [\n {\n name: ACTIVITY_TRANSMIT_UFPD,\n paths: ORTB_UFPD_PATHS,\n applies: appliesWhenActivityDenied(ACTIVITY_TRANSMIT_UFPD, isAllowed),\n },\n {\n name: ACTIVITY_TRANSMIT_EIDS,\n paths: ORTB_EIDS_PATHS,\n applies: appliesWhenActivityDenied(ACTIVITY_TRANSMIT_EIDS, isAllowed),\n },\n {\n name: ACTIVITY_TRANSMIT_PRECISE_GEO,\n paths: ORTB_GEO_PATHS,\n applies: appliesWhenActivityDenied(ACTIVITY_TRANSMIT_PRECISE_GEO, isAllowed),\n get(val) {\n return Math.round((val + Number.EPSILON) * 100) / 100;\n }\n },\n {\n name: ACTIVITY_TRANSMIT_PRECISE_GEO,\n paths: ORTB_IPV4_PATHS,\n applies: appliesWhenActivityDenied(ACTIVITY_TRANSMIT_PRECISE_GEO, isAllowed),\n get(val) {\n return scrubIPv4(val);\n }\n },\n {\n name: ACTIVITY_TRANSMIT_PRECISE_GEO,\n paths: ORTB_IPV6_PATHS,\n applies: appliesWhenActivityDenied(ACTIVITY_TRANSMIT_PRECISE_GEO, isAllowed),\n get(val) {\n return scrubIPv6(val);\n }\n },\n {\n name: ACTIVITY_TRANSMIT_TID,\n paths: ['source.tid'],\n applies: appliesWhenActivityDenied(ACTIVITY_TRANSMIT_TID, isAllowed),\n }\n ].map(redactRule);\n}\n\nexport function redactorFactory(isAllowed = isActivityAllowed) {\n const redactOrtb2 = objectTransformer(ortb2TransmitRules(isAllowed));\n const redactBidRequest = objectTransformer(bidRequestTransmitRules(isAllowed));\n return function redactor(params) {\n const session = {};\n return {\n ortb2(obj) { redactOrtb2(session, obj, params); return obj },\n bidRequest(obj) { redactBidRequest(session, obj, params); return obj }\n }\n }\n}\n\n/**\n * Returns an object that can redact other privacy-sensitive objects according\n * to activity rules.\n *\n * @param {{}} params activity parameters to use for activity checks\n * @return {{ortb2: function({}): {}, bidRequest: function({}): {}}} methods\n * that can redact disallowed data from ORTB2 and/or bid request objects.\n */\nexport const redactor = redactorFactory();\n\ndeclare module '../config' {\n interface Config {\n /**\n * Prebid generates unique IDs for both auctions and ad units within auctions; these can be used by DSPs\n * to correlate requests from different sources, which is useful for many applications but also a potential\n * privacy concern. Since version 8 they are disabled by default, and can be re-enabled with this flag.\n */\n enableTIDs?: boolean;\n }\n}\n// by default, TIDs are off since version 8\nregisterActivityControl(ACTIVITY_TRANSMIT_TID, 'enableTIDs config', () => {\n if (!config.getConfig('enableTIDs')) {\n return {allow: false, reason: 'TIDs are disabled'}\n }\n});\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"redactor.js","names":["deepAccess","config","isActivityAllowed","registerActivityControl","ACTIVITY_TRANSMIT_EIDS","ACTIVITY_TRANSMIT_PRECISE_GEO","ACTIVITY_TRANSMIT_TID","ACTIVITY_TRANSMIT_UFPD","scrubIPv4","scrubIPv6","ORTB_UFPD_PATHS","map","f","concat","ORTB_EIDS_PATHS","ORTB_GEO_PATHS","ORTB_IPV4_PATHS","ORTB_IPV6_PATHS","redactRule","ruleDef","Object","assign","get","run","root","path","object","property","applies","val","isData","repl","undefined","objectTransformer","rules","forEach","rule","paths","parts","split","tail","pop","length","join","applyTransform","session","obj","result","_len","arguments","args","Array","_key","sessionedApplies","name","head","parent","push","bind","filter","el","_len2","_key2","hasOwnProperty","keys","appliesWhenActivityDenied","activity","isAllowed","params","bidRequestTransmitRules","ortb2TransmitRules","Math","round","Number","EPSILON","redactorFactory","redactOrtb2","redactBidRequest","redactor","ortb2","bidRequest","getConfig","allow","reason"],"sourceRoot":"../../../..","sources":["src/activities/redactor.ts"],"sourcesContent":["import {deepAccess} from '../utils.js';\nimport {config} from '../config.js';\nimport {isActivityAllowed, registerActivityControl} from './rules.js';\nimport {\n ACTIVITY_TRANSMIT_EIDS,\n ACTIVITY_TRANSMIT_PRECISE_GEO,\n ACTIVITY_TRANSMIT_TID,\n ACTIVITY_TRANSMIT_UFPD\n} from './activities.js';\nimport { scrubIPv4, scrubIPv6 } from '../utils/ipUtils.js';\n\nexport const ORTB_UFPD_PATHS = [\n 'data',\n 'ext.data',\n 'yob',\n 'gender',\n 'keywords',\n 'kwarray',\n 'id',\n 'buyeruid',\n 'customdata'\n].map(f => `user.${f}`).concat('device.ext.cdep');\nexport const ORTB_EIDS_PATHS = ['user.eids', 'user.ext.eids'];\nexport const ORTB_GEO_PATHS = ['user.geo.lat', 'user.geo.lon', 'device.geo.lat', 'device.geo.lon'];\nexport const ORTB_IPV4_PATHS = ['device.ip']\nexport const ORTB_IPV6_PATHS = ['device.ipv6']\n\n/**\n * @typedef TransformationRuleDef\n * @property {name}\n * @property {Array[string]} paths dot-separated list of paths that this rule applies to.\n * @property {function(*): boolean} applies a predicate that should return true if this rule applies\n * (and the transformation defined herein should be applied). The arguments are those passed to the transformation function.\n * @property {name} a name for the rule; used to debounce calls to `applies` (and avoid excessive logging):\n * if a rule with the same name was already found to apply (or not), this one will (or won't) as well.\n */\n\n/**\n * @typedef RedactRuleDef A rule that removes, or replaces, values from an object (modifications are done in-place).\n * @augments TransformationRuleDef\n * @property {function(*): *} get? substitution functions for values that should be redacted;\n * takes in the original (unredacted) value as an input, and returns a substitute to use in the redacted\n * version. If it returns undefined, or this option is omitted, protected paths will be removed\n * from the redacted object.\n */\n\n/**\n * @param {RedactRuleDef} ruleDef\n * @return {TransformationRule}\n */\nexport function redactRule(ruleDef) {\n return Object.assign({\n get() {},\n run(root, path, object, property, applies) {\n const val = object && object[property];\n if (isData(val) && applies()) {\n const repl = this.get(val);\n if (repl === undefined) {\n delete object[property];\n } else {\n object[property] = repl;\n }\n }\n }\n }, ruleDef)\n}\n\n/**\n * @typedef TransformationRule\n * @augments TransformationRuleDef\n * @property {function} run rule logic - see `redactRule` for an example.\n */\n\n/**\n * @typedef {Function} TransformationFunction\n * @param object object to transform\n * @param ...args arguments to pass down to rule's `apply` methods.\n */\n\n/**\n * Return a transformation function that will apply the given rules to an object.\n *\n * @param {Array[TransformationRule]} rules\n * @return {TransformationFunction}\n */\nexport function objectTransformer(rules) {\n rules.forEach(rule => {\n rule.paths = rule.paths.map((path) => {\n const parts = path.split('.');\n const tail = parts.pop();\n return [parts.length > 0 ? parts.join('.') : null, tail]\n })\n })\n return function applyTransform(session, obj, ...args) {\n const result = [];\n const applies = sessionedApplies(session, ...args);\n rules.forEach(rule => {\n if (session[rule.name] === false) return;\n for (const [head, tail] of rule.paths) {\n const parent = head == null ? obj : deepAccess(obj, head);\n result.push(rule.run(obj, head, parent, tail, applies.bind(null, rule)));\n if (session[rule.name] === false) return;\n }\n })\n return result.filter(el => el != null);\n }\n}\n\nexport function sessionedApplies(session, ...args) {\n return function applies(rule) {\n if (!session.hasOwnProperty(rule.name)) {\n session[rule.name] = !!rule.applies(...args);\n }\n return session[rule.name];\n }\n}\n\nexport function isData(val) {\n return val != null && (typeof val !== 'object' || Object.keys(val).length > 0)\n}\n\nexport function appliesWhenActivityDenied(activity, isAllowed = isActivityAllowed) {\n return function applies(params) {\n return !isAllowed(activity, params);\n };\n}\n\nfunction bidRequestTransmitRules(isAllowed = isActivityAllowed) {\n return [\n {\n name: ACTIVITY_TRANSMIT_EIDS,\n paths: ['userId', 'userIdAsEids'],\n applies: appliesWhenActivityDenied(ACTIVITY_TRANSMIT_EIDS, isAllowed),\n },\n {\n name: ACTIVITY_TRANSMIT_TID,\n paths: ['ortb2Imp.ext.tid'],\n applies: appliesWhenActivityDenied(ACTIVITY_TRANSMIT_TID, isAllowed)\n }\n ].map(redactRule)\n}\n\nexport function ortb2TransmitRules(isAllowed = isActivityAllowed) {\n return [\n {\n name: ACTIVITY_TRANSMIT_UFPD,\n paths: ORTB_UFPD_PATHS,\n applies: appliesWhenActivityDenied(ACTIVITY_TRANSMIT_UFPD, isAllowed),\n },\n {\n name: ACTIVITY_TRANSMIT_EIDS,\n paths: ORTB_EIDS_PATHS,\n applies: appliesWhenActivityDenied(ACTIVITY_TRANSMIT_EIDS, isAllowed),\n },\n {\n name: ACTIVITY_TRANSMIT_PRECISE_GEO,\n paths: ORTB_GEO_PATHS,\n applies: appliesWhenActivityDenied(ACTIVITY_TRANSMIT_PRECISE_GEO, isAllowed),\n get(val) {\n return Math.round((val + Number.EPSILON) * 100) / 100;\n }\n },\n {\n name: ACTIVITY_TRANSMIT_PRECISE_GEO,\n paths: ORTB_IPV4_PATHS,\n applies: appliesWhenActivityDenied(ACTIVITY_TRANSMIT_PRECISE_GEO, isAllowed),\n get(val) {\n return scrubIPv4(val);\n }\n },\n {\n name: ACTIVITY_TRANSMIT_PRECISE_GEO,\n paths: ORTB_IPV6_PATHS,\n applies: appliesWhenActivityDenied(ACTIVITY_TRANSMIT_PRECISE_GEO, isAllowed),\n get(val) {\n return scrubIPv6(val);\n }\n },\n {\n name: ACTIVITY_TRANSMIT_TID,\n paths: ['source.tid'],\n applies: appliesWhenActivityDenied(ACTIVITY_TRANSMIT_TID, isAllowed),\n }\n ].map(redactRule);\n}\n\nexport function redactorFactory(isAllowed = isActivityAllowed) {\n const redactOrtb2 = objectTransformer(ortb2TransmitRules(isAllowed));\n const redactBidRequest = objectTransformer(bidRequestTransmitRules(isAllowed));\n return function redactor(params) {\n const session = {};\n return {\n ortb2(obj) { redactOrtb2(session, obj, params); return obj },\n bidRequest(obj) { redactBidRequest(session, obj, params); return obj }\n }\n }\n}\n\n/**\n * Returns an object that can redact other privacy-sensitive objects according\n * to activity rules.\n *\n * @param {{}} params activity parameters to use for activity checks\n * @return {{ortb2: function({}): {}, bidRequest: function({}): {}}} methods\n * that can redact disallowed data from ORTB2 and/or bid request objects.\n */\nexport const redactor = redactorFactory();\n\ndeclare module '../config' {\n interface Config {\n /**\n * Prebid generates unique IDs for both auctions and ad units within auctions; these can be used by DSPs\n * to correlate requests from different sources, which is useful for many applications but also a potential\n * privacy concern. Since version 8 they are disabled by default, and can be re-enabled with this flag.\n */\n enableTIDs?: boolean;\n }\n}\n// by default, TIDs are off since version 8\nregisterActivityControl(ACTIVITY_TRANSMIT_TID, 'enableTIDs config', () => {\n if (!config.getConfig('enableTIDs')) {\n return {allow: false, reason: 'TIDs are disabled'}\n }\n});\n"],"mappings":"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","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"adRendering.js","names":["createIframe","createInvisibleIframe","inIframe","insertElement","logError","logWarn","replaceMacros","triggerPixel","events","AD_RENDER_FAILED_REASON","BID_STATUS","EVENTS","MESSAGES","PB_LOCATOR","config","executeRenderer","isRendererRequired","VIDEO","auctionManager","getCreativeRenderer","hook","fireNativeTrackers","PbPromise","adapterManager","useMetrics","filters","EVENT_TYPE_WIN","parseEventTrackers","TRACKER_METHOD_IMG","AD_RENDER_FAILED","AD_RENDER_SUCCEEDED","STALE_RENDER","BID_WON","EXPIRED_RENDER","EXCEPTION","getBidToRender","adId","forRender","arguments","length","undefined","override","resolve","then","bid","findBidByAdId","catch","markWinningBid","eventtrackers","forEach","url","emit","addWinningBid","emitAdRenderFail","_ref","reason","message","id","data","emitAdRenderSucceeded","_ref2","doc","callAdRenderSucceededBidder","adapterCode","bidder","handleCreativeEvent","bidResponse","event","info","handleNativeMessage","_ref3","resizeFn","fireTrackers","action","width","height","HANDLERS","EVENT","NATIVE","creativeMessageHandler","deps","type","hasOwnProperty","getRenderingData","options","ad","adUrl","cpm","originalCpm","instl","repl","AUCTION_PRICE","CLICKTHROUGH","clickUrl","doRender","_ref4","renderFn","isMainDocument","document","videoBid","mediaType","PREVENT_WRITING_ON_MAIN_DOCUMENT","Object","assign","before","next","args","renderer","bail","handleRender","_ref5","deferRendering","CANNOT_FIND_AD","status","RENDERED","getConfig","suppressStaleRender","isBidNotExpired","suppressExpiredRender","e","markBidAsRendered","metrics","checkpoint","timeBetween","DEFERRED_RENDER","WeakMap","WINNERS","WeakSet","set","renderIfDeferred","markWinner","has","add","get","delete","renderAdDirect","fail","frame","defaultView","frameElement","style","messageHandler","adData","write","close","render","sendMessage","mkFrame","stack","creativeComment","createComment","creativeId","MISSING_DOC_OR_ADID","clickThrough","insertLocatorFrame","window","frames","body","requestAnimationFrame","name","appendChild"],"sourceRoot":"../../..","sources":["src/adRendering.ts"],"sourcesContent":["import {\n createIframe,\n createInvisibleIframe,\n inIframe,\n insertElement,\n logError,\n logWarn,\n replaceMacros,\n triggerPixel\n} from './utils.js';\nimport * as events from './events.js';\nimport {AD_RENDER_FAILED_REASON, BID_STATUS, EVENTS, MESSAGES, PB_LOCATOR} from './constants.js';\nimport {config} from './config.js';\nimport {executeRenderer, isRendererRequired} from './Renderer.js';\nimport {VIDEO} from './mediaTypes.js';\nimport {auctionManager} from './auctionManager.js';\nimport {getCreativeRenderer} from './creativeRenderers.js';\nimport {hook} from './hook.js';\nimport {fireNativeTrackers} from './native.js';\nimport {PbPromise} from './utils/promise.js';\nimport adapterManager from './adapterManager.js';\nimport {useMetrics} from './utils/perfMetrics.js';\nimport {filters} from './targeting.js';\nimport {EVENT_TYPE_WIN, parseEventTrackers, TRACKER_METHOD_IMG} from './eventTrackers.js';\nimport type {Bid} from \"./bidfactory.ts\";\n\nconst { AD_RENDER_FAILED, AD_RENDER_SUCCEEDED, STALE_RENDER, BID_WON, EXPIRED_RENDER } = EVENTS;\nconst { EXCEPTION } = AD_RENDER_FAILED_REASON;\n\ndeclare module './events' {\n interface Events {\n /**\n * Fired when a bid is rendered (successfully or not).\n */\n [EVENTS.BID_WON]: [Bid];\n /**\n * Fired when a bid failed to render.\n */\n [EVENTS.AD_RENDER_FAILED]: [AdRenderFailedData];\n /**\n * Fired when a bid was rendered successfully.\n */\n [EVENTS.AD_RENDER_SUCCEEDED]: [AdRenderSucceededData];\n /**\n * Fired when a bid that was previously rendered is rendered again.\n */\n [EVENTS.STALE_RENDER]: [Bid];\n /**\n * Fired when an expired bid is rendered. A bid expires after `.ttl` seconds from\n * the time it was received.\n */\n [EVENTS.EXPIRED_RENDER]: [Bid];\n }\n}\n\nexport const getBidToRender = hook('sync', function (adId, forRender = true, override = PbPromise.resolve()) {\n return override\n .then(bid => bid ?? auctionManager.findBidByAdId(adId))\n .catch(() => {})\n})\n\nexport const markWinningBid = hook('sync', function (bid) {\n (parseEventTrackers(bid.eventtrackers)[EVENT_TYPE_WIN]?.[TRACKER_METHOD_IMG] || [])\n .forEach(url => triggerPixel(url));\n events.emit(BID_WON, bid);\n auctionManager.addWinningBid(bid);\n})\n\ntype AdRenderFailedData = {\n /**\n * Failure reason.\n */\n reason: (typeof AD_RENDER_FAILED_REASON)[keyof typeof AD_RENDER_FAILED_REASON];\n /**\n * failure description\n */\n message: string;\n /**\n * The bid that failed to render.\n */\n bid?: Bid;\n /**\n * Ad ID of the bid that failed to render.\n */\n adId?: string;\n}\n\n/**\n * Emit the AD_RENDER_FAILED event.\n */\nexport function emitAdRenderFail({ reason, message, bid, id }: Omit<AdRenderFailedData, 'adId'> & { id?: string }) {\n const data: AdRenderFailedData = { reason, message };\n if (bid) {\n data.bid = bid;\n data.adId = bid.adId;\n }\n if (id) data.adId = id;\n\n logError(`Error rendering ad (id: ${id}): ${message}`);\n events.emit(AD_RENDER_FAILED, data);\n}\n\ntype AdRenderSucceededData = {\n /**\n * document object that was used to `.write` the ad. Should be `null` if unavailable (e.g. for documents in\n * a cross-origin frame).\n */\n doc: Document | null;\n /**\n * The bid that was rendered.\n */\n bid: Bid;\n /**\n * Ad ID of the bid that was rendered.\n */\n adId: string;\n}\n/**\n * Emit the AD_RENDER_SUCCEEDED event.\n * (Note: Invocation of this function indicates that the render function did not generate an error, it does not guarantee that tracking for this event has occurred yet.)\n */\nexport function emitAdRenderSucceeded({ doc, bid, id }) {\n const data: AdRenderSucceededData = { doc, bid, adId: id};\n\n adapterManager.callAdRenderSucceededBidder(bid.adapterCode || bid.bidder, bid);\n\n events.emit(AD_RENDER_SUCCEEDED, data);\n}\n\nexport function handleCreativeEvent(data, bidResponse) {\n switch (data.event) {\n case EVENTS.AD_RENDER_FAILED:\n emitAdRenderFail({\n bid: bidResponse,\n id: bidResponse.adId,\n reason: data.info.reason,\n message: data.info.message\n });\n break;\n case EVENTS.AD_RENDER_SUCCEEDED:\n emitAdRenderSucceeded({\n doc: null,\n bid: bidResponse,\n id: bidResponse.adId\n });\n break;\n default:\n logError(`Received event request for unsupported event: '${data.event}' (adId: '${bidResponse.adId}')`);\n }\n}\n\nexport function handleNativeMessage(data, bidResponse, {resizeFn, fireTrackers = fireNativeTrackers}) {\n switch (data.action) {\n case 'resizeNativeHeight':\n resizeFn(data.width, data.height);\n break;\n default:\n fireTrackers(data, bidResponse);\n }\n}\n\nconst HANDLERS: any = {\n [MESSAGES.EVENT]: handleCreativeEvent\n}\n\nif (FEATURES.NATIVE) {\n HANDLERS[MESSAGES.NATIVE] = handleNativeMessage;\n}\n\nfunction creativeMessageHandler(deps) {\n return function (type, data, bidResponse) {\n if (HANDLERS.hasOwnProperty(type)) {\n HANDLERS[type](data, bidResponse, deps);\n }\n }\n}\n\ntype RenderOptions = {\n clickUrl?: string;\n}\n\nexport const getRenderingData = hook('sync', function (bidResponse: Bid, options?: RenderOptions): Record<string, any> {\n const {ad, adUrl, cpm, originalCpm, width, height, instl} = bidResponse\n const repl = {\n AUCTION_PRICE: originalCpm || cpm,\n CLICKTHROUGH: options?.clickUrl || ''\n }\n return {\n ad: replaceMacros(ad, repl),\n adUrl: replaceMacros(adUrl, repl),\n width,\n height,\n instl\n };\n})\n\nexport const doRender = hook('sync', function({renderFn, resizeFn, bidResponse, options, doc, isMainDocument = doc === document && !inIframe()}) {\n const videoBid = (FEATURES.VIDEO && bidResponse.mediaType === VIDEO)\n if (isMainDocument || videoBid) {\n emitAdRenderFail({\n reason: AD_RENDER_FAILED_REASON.PREVENT_WRITING_ON_MAIN_DOCUMENT,\n message: videoBid ? 'Cannot render video ad without a renderer' : `renderAd was prevented from writing to the main document.`,\n bid: bidResponse,\n id: bidResponse.adId\n });\n return;\n }\n const data = getRenderingData(bidResponse, options);\n renderFn(Object.assign({adId: bidResponse.adId}, data));\n const {width, height} = data;\n if ((width ?? height) != null) {\n resizeFn(width, height);\n }\n});\n\ndoRender.before(function (next, args) {\n // run renderers from a high priority hook to allow the video module to insert itself between this and \"normal\" rendering.\n const {bidResponse, doc} = args;\n if (isRendererRequired(bidResponse.renderer)) {\n executeRenderer(bidResponse.renderer, bidResponse, doc);\n emitAdRenderSucceeded({doc, bid: bidResponse, id: bidResponse.adId})\n next.bail();\n } else {\n next(args);\n }\n}, 100)\n\nexport function handleRender({renderFn, resizeFn, adId, options, bidResponse, doc}) {\n deferRendering(bidResponse, () => {\n if (bidResponse == null) {\n emitAdRenderFail({\n reason: AD_RENDER_FAILED_REASON.CANNOT_FIND_AD,\n message: `Cannot find ad '${adId}'`,\n id: adId\n });\n return;\n }\n if (bidResponse.status === BID_STATUS.RENDERED) {\n logWarn(`Ad id ${adId} has been rendered before`);\n events.emit(STALE_RENDER, bidResponse);\n if (config.getConfig('auctionOptions')?.suppressStaleRender) {\n return;\n }\n }\n if (!filters.isBidNotExpired(bidResponse)) {\n logWarn(`Ad id ${adId} has been expired`);\n events.emit(EXPIRED_RENDER, bidResponse);\n if (config.getConfig('auctionOptions')?.suppressExpiredRender) {\n return;\n }\n }\n\n try {\n doRender({renderFn, resizeFn, bidResponse, options, doc});\n } catch (e) {\n emitAdRenderFail({\n reason: AD_RENDER_FAILED_REASON.EXCEPTION,\n message: e.message,\n id: adId,\n bid: bidResponse\n });\n }\n })\n}\n\nexport function markBidAsRendered(bidResponse) {\n const metrics = useMetrics(bidResponse.metrics);\n metrics.checkpoint('bidRender');\n metrics.timeBetween('bidWon', 'bidRender', 'render.deferred');\n metrics.timeBetween('auctionEnd', 'bidRender', 'render.pending');\n metrics.timeBetween('requestBids', 'bidRender', 'render.e2e');\n bidResponse.status = BID_STATUS.RENDERED;\n}\n\nconst DEFERRED_RENDER = new WeakMap();\nconst WINNERS = new WeakSet();\n\nexport function deferRendering(bidResponse, renderFn) {\n if (bidResponse == null) {\n // if the bid is missing, let renderFn deal with it now\n renderFn();\n return;\n }\n DEFERRED_RENDER.set(bidResponse, renderFn);\n if (!bidResponse.deferRendering) {\n renderIfDeferred(bidResponse);\n }\n markWinner(bidResponse);\n}\n\nexport function markWinner(bidResponse) {\n if (!WINNERS.has(bidResponse)) {\n WINNERS.add(bidResponse);\n markWinningBid(bidResponse);\n }\n}\n\nexport function renderIfDeferred(bidResponse) {\n const renderFn = DEFERRED_RENDER.get(bidResponse);\n if (renderFn) {\n renderFn();\n markBidAsRendered(bidResponse);\n DEFERRED_RENDER.delete(bidResponse);\n }\n}\n\nexport function renderAdDirect(doc, adId, options) {\n let bid;\n function fail(reason, message) {\n emitAdRenderFail(Object.assign({id: adId, bid}, {reason, message}));\n }\n function resizeFn(width, height) {\n const frame = doc.defaultView?.frameElement;\n if (frame) {\n if (width) {\n frame.width = width;\n frame.style.width && (frame.style.width = `${width}px`);\n }\n if (height) {\n frame.height = height;\n frame.style.height && (frame.style.height = `${height}px`);\n }\n }\n }\n const messageHandler = creativeMessageHandler({resizeFn});\n function renderFn(adData) {\n if (adData.ad) {\n doc.write(adData.ad);\n doc.close();\n emitAdRenderSucceeded({doc, bid, id: bid.adId});\n } else {\n getCreativeRenderer(bid)\n .then(render => render(adData, {\n sendMessage: (type, data) => messageHandler(type, data, bid),\n mkFrame: createIframe,\n }, doc.defaultView))\n .then(\n () => emitAdRenderSucceeded({doc, bid, id: bid.adId}),\n (e) => {\n fail(e?.reason || AD_RENDER_FAILED_REASON.EXCEPTION, e?.message)\n e?.stack && logError(e);\n }\n );\n }\n // TODO: this is almost certainly the wrong way to do this\n const creativeComment = document.createComment(`Creative ${bid.creativeId} served by ${bid.bidder} Prebid.js Header Bidding`);\n insertElement(creativeComment, doc, 'html');\n }\n try {\n if (!adId || !doc) {\n fail(AD_RENDER_FAILED_REASON.MISSING_DOC_OR_ADID, `missing ${adId ? 'doc' : 'adId'}`);\n } else {\n getBidToRender(adId).then(bidResponse => {\n bid = bidResponse;\n handleRender({renderFn, resizeFn, adId, options: {clickUrl: options?.clickThrough}, bidResponse, doc});\n });\n }\n } catch (e) {\n fail(EXCEPTION, e.message);\n }\n}\n\n/**\n * Insert an invisible, named iframe that can be used by creatives to locate the window Prebid is running in\n * (by looking for one that has `.frames[PB_LOCATOR]` defined).\n * This is necessary because in some situations creatives may be rendered inside nested iframes - Prebid is not necessarily\n * in the immediate parent window.\n */\nexport function insertLocatorFrame() {\n if (!window.frames[PB_LOCATOR]) {\n if (!document.body) {\n window.requestAnimationFrame(insertLocatorFrame);\n } else {\n const frame = createInvisibleIframe();\n frame.name = PB_LOCATOR;\n document.body.appendChild(frame);\n }\n }\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"adRendering.js","names":["createIframe","createInvisibleIframe","inIframe","insertElement","logError","logWarn","replaceMacros","triggerPixel","events","AD_RENDER_FAILED_REASON","BID_STATUS","EVENTS","MESSAGES","PB_LOCATOR","config","executeRenderer","isRendererRequired","VIDEO","auctionManager","getCreativeRenderer","hook","fireNativeTrackers","PbPromise","adapterManager","useMetrics","filters","EVENT_TYPE_WIN","parseEventTrackers","TRACKER_METHOD_IMG","AD_RENDER_FAILED","AD_RENDER_SUCCEEDED","STALE_RENDER","BID_WON","EXPIRED_RENDER","EXCEPTION","getBidToRender","adId","forRender","arguments","length","undefined","override","resolve","then","bid","findBidByAdId","catch","markWinningBid","eventtrackers","forEach","url","emit","addWinningBid","emitAdRenderFail","_ref","reason","message","id","data","emitAdRenderSucceeded","_ref2","doc","callAdRenderSucceededBidder","adapterCode","bidder","handleCreativeEvent","bidResponse","event","info","handleNativeMessage","_ref3","resizeFn","fireTrackers","action","width","height","HANDLERS","EVENT","NATIVE","creativeMessageHandler","deps","type","hasOwnProperty","getRenderingData","options","ad","adUrl","cpm","originalCpm","instl","repl","AUCTION_PRICE","CLICKTHROUGH","clickUrl","doRender","_ref4","renderFn","isMainDocument","document","videoBid","mediaType","PREVENT_WRITING_ON_MAIN_DOCUMENT","Object","assign","before","next","args","renderer","bail","handleRender","_ref5","deferRendering","CANNOT_FIND_AD","status","RENDERED","getConfig","suppressStaleRender","isBidNotExpired","suppressExpiredRender","e","markBidAsRendered","metrics","checkpoint","timeBetween","DEFERRED_RENDER","WeakMap","WINNERS","WeakSet","set","renderIfDeferred","markWinner","has","add","get","delete","renderAdDirect","fail","frame","defaultView","frameElement","style","messageHandler","adData","write","close","render","sendMessage","mkFrame","stack","creativeComment","createComment","creativeId","MISSING_DOC_OR_ADID","clickThrough","insertLocatorFrame","window","frames","body","requestAnimationFrame","name","appendChild"],"sourceRoot":"../../..","sources":["src/adRendering.ts"],"sourcesContent":["import {\n createIframe,\n createInvisibleIframe,\n inIframe,\n insertElement,\n logError,\n logWarn,\n replaceMacros,\n triggerPixel\n} from './utils.js';\nimport * as events from './events.js';\nimport {AD_RENDER_FAILED_REASON, BID_STATUS, EVENTS, MESSAGES, PB_LOCATOR} from './constants.js';\nimport {config} from './config.js';\nimport {executeRenderer, isRendererRequired} from './Renderer.js';\nimport {VIDEO} from './mediaTypes.js';\nimport {auctionManager} from './auctionManager.js';\nimport {getCreativeRenderer} from './creativeRenderers.js';\nimport {hook} from './hook.js';\nimport {fireNativeTrackers} from './native.js';\nimport {PbPromise} from './utils/promise.js';\nimport adapterManager from './adapterManager.js';\nimport {useMetrics} from './utils/perfMetrics.js';\nimport {filters} from './targeting.js';\nimport {EVENT_TYPE_WIN, parseEventTrackers, TRACKER_METHOD_IMG} from './eventTrackers.js';\nimport type {Bid} from \"./bidfactory.ts\";\n\nconst { AD_RENDER_FAILED, AD_RENDER_SUCCEEDED, STALE_RENDER, BID_WON, EXPIRED_RENDER } = EVENTS;\nconst { EXCEPTION } = AD_RENDER_FAILED_REASON;\n\ndeclare module './events' {\n interface Events {\n /**\n * Fired when a bid is rendered (successfully or not).\n */\n [EVENTS.BID_WON]: [Bid];\n /**\n * Fired when a bid failed to render.\n */\n [EVENTS.AD_RENDER_FAILED]: [AdRenderFailedData];\n /**\n * Fired when a bid was rendered successfully.\n */\n [EVENTS.AD_RENDER_SUCCEEDED]: [AdRenderSucceededData];\n /**\n * Fired when a bid that was previously rendered is rendered again.\n */\n [EVENTS.STALE_RENDER]: [Bid];\n /**\n * Fired when an expired bid is rendered. A bid expires after `.ttl` seconds from\n * the time it was received.\n */\n [EVENTS.EXPIRED_RENDER]: [Bid];\n }\n}\n\nexport const getBidToRender = hook('sync', function (adId, forRender = true, override = PbPromise.resolve()) {\n return override\n .then(bid => bid ?? auctionManager.findBidByAdId(adId))\n .catch(() => {})\n})\n\nexport const markWinningBid = hook('sync', function (bid) {\n (parseEventTrackers(bid.eventtrackers)[EVENT_TYPE_WIN]?.[TRACKER_METHOD_IMG] || [])\n .forEach(url => triggerPixel(url));\n events.emit(BID_WON, bid);\n auctionManager.addWinningBid(bid);\n})\n\ntype AdRenderFailedData = {\n /**\n * Failure reason.\n */\n reason: (typeof AD_RENDER_FAILED_REASON)[keyof typeof AD_RENDER_FAILED_REASON];\n /**\n * failure description\n */\n message: string;\n /**\n * The bid that failed to render.\n */\n bid?: Bid;\n /**\n * Ad ID of the bid that failed to render.\n */\n adId?: string;\n}\n\n/**\n * Emit the AD_RENDER_FAILED event.\n */\nexport function emitAdRenderFail({ reason, message, bid, id }: Omit<AdRenderFailedData, 'adId'> & { id?: string }) {\n const data: AdRenderFailedData = { reason, message };\n if (bid) {\n data.bid = bid;\n data.adId = bid.adId;\n }\n if (id) data.adId = id;\n\n logError(`Error rendering ad (id: ${id}): ${message}`);\n events.emit(AD_RENDER_FAILED, data);\n}\n\ntype AdRenderSucceededData = {\n /**\n * document object that was used to `.write` the ad. Should be `null` if unavailable (e.g. for documents in\n * a cross-origin frame).\n */\n doc: Document | null;\n /**\n * The bid that was rendered.\n */\n bid: Bid;\n /**\n * Ad ID of the bid that was rendered.\n */\n adId: string;\n}\n/**\n * Emit the AD_RENDER_SUCCEEDED event.\n * (Note: Invocation of this function indicates that the render function did not generate an error, it does not guarantee that tracking for this event has occurred yet.)\n */\nexport function emitAdRenderSucceeded({ doc, bid, id }) {\n const data: AdRenderSucceededData = { doc, bid, adId: id};\n\n adapterManager.callAdRenderSucceededBidder(bid.adapterCode || bid.bidder, bid);\n\n events.emit(AD_RENDER_SUCCEEDED, data);\n}\n\nexport function handleCreativeEvent(data, bidResponse) {\n switch (data.event) {\n case EVENTS.AD_RENDER_FAILED:\n emitAdRenderFail({\n bid: bidResponse,\n id: bidResponse.adId,\n reason: data.info.reason,\n message: data.info.message\n });\n break;\n case EVENTS.AD_RENDER_SUCCEEDED:\n emitAdRenderSucceeded({\n doc: null,\n bid: bidResponse,\n id: bidResponse.adId\n });\n break;\n default:\n logError(`Received event request for unsupported event: '${data.event}' (adId: '${bidResponse.adId}')`);\n }\n}\n\nexport function handleNativeMessage(data, bidResponse, {resizeFn, fireTrackers = fireNativeTrackers}) {\n switch (data.action) {\n case 'resizeNativeHeight':\n resizeFn(data.width, data.height);\n break;\n default:\n fireTrackers(data, bidResponse);\n }\n}\n\nconst HANDLERS: any = {\n [MESSAGES.EVENT]: handleCreativeEvent\n}\n\nif (FEATURES.NATIVE) {\n HANDLERS[MESSAGES.NATIVE] = handleNativeMessage;\n}\n\nfunction creativeMessageHandler(deps) {\n return function (type, data, bidResponse) {\n if (HANDLERS.hasOwnProperty(type)) {\n HANDLERS[type](data, bidResponse, deps);\n }\n }\n}\n\ntype RenderOptions = {\n clickUrl?: string;\n}\n\nexport const getRenderingData = hook('sync', function (bidResponse: Bid, options?: RenderOptions): Record<string, any> {\n const {ad, adUrl, cpm, originalCpm, width, height, instl} = bidResponse\n const repl = {\n AUCTION_PRICE: originalCpm || cpm,\n CLICKTHROUGH: options?.clickUrl || ''\n }\n return {\n ad: replaceMacros(ad, repl),\n adUrl: replaceMacros(adUrl, repl),\n width,\n height,\n instl\n };\n})\n\nexport const doRender = hook('sync', function({renderFn, resizeFn, bidResponse, options, doc, isMainDocument = doc === document && !inIframe()}) {\n const videoBid = (FEATURES.VIDEO && bidResponse.mediaType === VIDEO)\n if (isMainDocument || videoBid) {\n emitAdRenderFail({\n reason: AD_RENDER_FAILED_REASON.PREVENT_WRITING_ON_MAIN_DOCUMENT,\n message: videoBid ? 'Cannot render video ad without a renderer' : `renderAd was prevented from writing to the main document.`,\n bid: bidResponse,\n id: bidResponse.adId\n });\n return;\n }\n const data = getRenderingData(bidResponse, options);\n renderFn(Object.assign({adId: bidResponse.adId}, data));\n const {width, height} = data;\n if ((width ?? height) != null) {\n resizeFn(width, height);\n }\n});\n\ndoRender.before(function (next, args) {\n // run renderers from a high priority hook to allow the video module to insert itself between this and \"normal\" rendering.\n const {bidResponse, doc} = args;\n if (isRendererRequired(bidResponse.renderer)) {\n executeRenderer(bidResponse.renderer, bidResponse, doc);\n emitAdRenderSucceeded({doc, bid: bidResponse, id: bidResponse.adId})\n next.bail();\n } else {\n next(args);\n }\n}, 100)\n\nexport function handleRender({renderFn, resizeFn, adId, options, bidResponse, doc}) {\n deferRendering(bidResponse, () => {\n if (bidResponse == null) {\n emitAdRenderFail({\n reason: AD_RENDER_FAILED_REASON.CANNOT_FIND_AD,\n message: `Cannot find ad '${adId}'`,\n id: adId\n });\n return;\n }\n if (bidResponse.status === BID_STATUS.RENDERED) {\n logWarn(`Ad id ${adId} has been rendered before`);\n events.emit(STALE_RENDER, bidResponse);\n if (config.getConfig('auctionOptions')?.suppressStaleRender) {\n return;\n }\n }\n if (!filters.isBidNotExpired(bidResponse)) {\n logWarn(`Ad id ${adId} has been expired`);\n events.emit(EXPIRED_RENDER, bidResponse);\n if (config.getConfig('auctionOptions')?.suppressExpiredRender) {\n return;\n }\n }\n\n try {\n doRender({renderFn, resizeFn, bidResponse, options, doc});\n } catch (e) {\n emitAdRenderFail({\n reason: AD_RENDER_FAILED_REASON.EXCEPTION,\n message: e.message,\n id: adId,\n bid: bidResponse\n });\n }\n })\n}\n\nexport function markBidAsRendered(bidResponse) {\n const metrics = useMetrics(bidResponse.metrics);\n metrics.checkpoint('bidRender');\n metrics.timeBetween('bidWon', 'bidRender', 'render.deferred');\n metrics.timeBetween('auctionEnd', 'bidRender', 'render.pending');\n metrics.timeBetween('requestBids', 'bidRender', 'render.e2e');\n bidResponse.status = BID_STATUS.RENDERED;\n}\n\nconst DEFERRED_RENDER = new WeakMap();\nconst WINNERS = new WeakSet();\n\nexport function deferRendering(bidResponse, renderFn) {\n if (bidResponse == null) {\n // if the bid is missing, let renderFn deal with it now\n renderFn();\n return;\n }\n DEFERRED_RENDER.set(bidResponse, renderFn);\n if (!bidResponse.deferRendering) {\n renderIfDeferred(bidResponse);\n }\n markWinner(bidResponse);\n}\n\nexport function markWinner(bidResponse) {\n if (!WINNERS.has(bidResponse)) {\n WINNERS.add(bidResponse);\n markWinningBid(bidResponse);\n }\n}\n\nexport function renderIfDeferred(bidResponse) {\n const renderFn = DEFERRED_RENDER.get(bidResponse);\n if (renderFn) {\n renderFn();\n markBidAsRendered(bidResponse);\n DEFERRED_RENDER.delete(bidResponse);\n }\n}\n\nexport function renderAdDirect(doc, adId, options) {\n let bid;\n function fail(reason, message) {\n emitAdRenderFail(Object.assign({id: adId, bid}, {reason, message}));\n }\n function resizeFn(width, height) {\n const frame = doc.defaultView?.frameElement;\n if (frame) {\n if (width) {\n frame.width = width;\n frame.style.width && (frame.style.width = `${width}px`);\n }\n if (height) {\n frame.height = height;\n frame.style.height && (frame.style.height = `${height}px`);\n }\n }\n }\n const messageHandler = creativeMessageHandler({resizeFn});\n function renderFn(adData) {\n if (adData.ad) {\n doc.write(adData.ad);\n doc.close();\n emitAdRenderSucceeded({doc, bid, id: bid.adId});\n } else {\n getCreativeRenderer(bid)\n .then(render => render(adData, {\n sendMessage: (type, data) => messageHandler(type, data, bid),\n mkFrame: createIframe,\n }, doc.defaultView))\n .then(\n () => emitAdRenderSucceeded({doc, bid, id: bid.adId}),\n (e) => {\n fail(e?.reason || AD_RENDER_FAILED_REASON.EXCEPTION, e?.message)\n e?.stack && logError(e);\n }\n );\n }\n // TODO: this is almost certainly the wrong way to do this\n const creativeComment = document.createComment(`Creative ${bid.creativeId} served by ${bid.bidder} Prebid.js Header Bidding`);\n insertElement(creativeComment, doc, 'html');\n }\n try {\n if (!adId || !doc) {\n fail(AD_RENDER_FAILED_REASON.MISSING_DOC_OR_ADID, `missing ${adId ? 'doc' : 'adId'}`);\n } else {\n getBidToRender(adId).then(bidResponse => {\n bid = bidResponse;\n handleRender({renderFn, resizeFn, adId, options: {clickUrl: options?.clickThrough}, bidResponse, doc});\n });\n }\n } catch (e) {\n fail(EXCEPTION, e.message);\n }\n}\n\n/**\n * Insert an invisible, named iframe that can be used by creatives to locate the window Prebid is running in\n * (by looking for one that has `.frames[PB_LOCATOR]` defined).\n * This is necessary because in some situations creatives may be rendered inside nested iframes - Prebid is not necessarily\n * in the immediate parent window.\n */\nexport function insertLocatorFrame() {\n if (!window.frames[PB_LOCATOR]) {\n if (!document.body) {\n window.requestAnimationFrame(insertLocatorFrame);\n } else {\n const frame = createInvisibleIframe();\n frame.name = PB_LOCATOR;\n document.body.appendChild(frame);\n }\n }\n}\n"],"mappings":"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","ignoreList":[]}