prebid.js 10.2.0 → 10.3.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 (1630) hide show
  1. package/.github/workflows/scripts/codepath-notification +1 -0
  2. package/creative/renderers/display/renderer.js +3 -4
  3. package/dist/chunks/1plusXRtdProvider.js +1 -1
  4. package/dist/chunks/33acrossAnalyticsAdapter.js +1 -1
  5. package/dist/chunks/33acrossBidAdapter.js +1 -1
  6. package/dist/chunks/33acrossBidAdapter.metadata.js +1 -1
  7. package/dist/chunks/33acrossIdSystem.js +1 -1
  8. package/dist/chunks/33acrossIdSystem.metadata.js +1 -1
  9. package/dist/chunks/acuityadsBidAdapter.metadata.js +1 -1
  10. package/dist/chunks/adagioAnalyticsAdapter.js +1 -1
  11. package/dist/chunks/adagioBidAdapter.js +1 -1
  12. package/dist/chunks/adagioBidAdapter.metadata.js +1 -1
  13. package/dist/chunks/adagioRtdProvider.metadata.js +1 -1
  14. package/dist/chunks/adagioUtils.js +1 -1
  15. package/dist/chunks/addefendBidAdapter.js +1 -1
  16. package/dist/chunks/addefendBidAdapter.metadata.js +1 -1
  17. package/dist/chunks/adfBidAdapter.metadata.js +1 -1
  18. package/dist/chunks/adfusionBidAdapter.metadata.js +1 -1
  19. package/dist/chunks/adgenerationBidAdapter.js +1 -1
  20. package/dist/chunks/adheseBidAdapter.metadata.js +1 -1
  21. package/dist/chunks/adkernelAdnBidAdapter.metadata.js +1 -1
  22. package/dist/chunks/adkernelBidAdapter.metadata.js +1 -1
  23. package/dist/chunks/adlooxRtdProvider.js +1 -1
  24. package/dist/chunks/admaticBidAdapter.metadata.js +1 -1
  25. package/dist/chunks/admixerBidAdapter.js +1 -1
  26. package/dist/chunks/admixerBidAdapter.metadata.js +1 -1
  27. package/dist/chunks/admixerIdSystem.metadata.js +1 -1
  28. package/dist/chunks/adnowBidAdapter.metadata.js +1 -1
  29. package/dist/chunks/adnuntiusBidAdapter.metadata.js +1 -1
  30. package/dist/chunks/adnuntiusRtdProvider.metadata.js +1 -1
  31. package/dist/chunks/adotBidAdapter.metadata.js +1 -1
  32. package/dist/chunks/adponeBidAdapter.metadata.js +1 -1
  33. package/dist/chunks/adqueryBidAdapter.js +1 -1
  34. package/dist/chunks/adqueryBidAdapter.metadata.js +1 -1
  35. package/dist/chunks/adqueryIdSystem.metadata.js +1 -1
  36. package/dist/chunks/adrelevantisBidAdapter.js +1 -1
  37. package/dist/chunks/adrinoBidAdapter.metadata.js +1 -1
  38. package/dist/chunks/ads_interactiveBidAdapter.metadata.js +1 -1
  39. package/dist/chunks/adstirBidAdapter.js +1 -1
  40. package/dist/chunks/adtargetBidAdapter.metadata.js +1 -1
  41. package/dist/chunks/adtelligentBidAdapter.metadata.js +1 -1
  42. package/dist/chunks/adtelligentIdSystem.metadata.js +1 -1
  43. package/dist/chunks/adtrgtmeBidAdapter.js +1 -1
  44. package/dist/chunks/aduptechBidAdapter.metadata.js +1 -1
  45. package/dist/chunks/advertisingBidAdapter.js +1 -1
  46. package/dist/chunks/adxcgAnalyticsAdapter.js +1 -1
  47. package/dist/chunks/adxcgBidAdapter.js +1 -1
  48. package/dist/chunks/adyoulikeBidAdapter.js +1 -1
  49. package/dist/chunks/adyoulikeBidAdapter.metadata.js +1 -1
  50. package/dist/chunks/agmaAnalyticsAdapter.js +1 -1
  51. package/dist/chunks/aidemBidAdapter.metadata.js +1 -1
  52. package/dist/chunks/airgridRtdProvider.metadata.js +1 -1
  53. package/dist/chunks/ajaBidAdapter.js +1 -1
  54. package/dist/chunks/alkimiBidAdapter.metadata.js +1 -1
  55. package/dist/chunks/ampliffyBidAdapter.metadata.js +1 -1
  56. package/dist/chunks/amxBidAdapter.js +1 -1
  57. package/dist/chunks/amxBidAdapter.metadata.js +1 -1
  58. package/dist/chunks/amxIdSystem.js +1 -1
  59. package/dist/chunks/amxIdSystem.metadata.js +1 -1
  60. package/dist/chunks/aniviewBidAdapter.js +1 -1
  61. package/dist/chunks/aniviewBidAdapter.metadata.js +1 -1
  62. package/dist/chunks/anonymisedRtdProvider.metadata.js +1 -1
  63. package/dist/chunks/appierAnalyticsAdapter.js +1 -1
  64. package/dist/chunks/appierBidAdapter.metadata.js +1 -1
  65. package/dist/chunks/appnexusBidAdapter.js +1 -1
  66. package/dist/chunks/appnexusBidAdapter.metadata.js +1 -1
  67. package/dist/chunks/appnexusUtils.js +1 -1
  68. package/dist/chunks/appushBidAdapter.metadata.js +1 -1
  69. package/dist/chunks/apstreamBidAdapter.metadata.js +1 -1
  70. package/dist/chunks/asoBidAdapter.js +1 -1
  71. package/dist/chunks/audiencerunBidAdapter.metadata.js +1 -1
  72. package/dist/chunks/axisBidAdapter.metadata.js +1 -1
  73. package/dist/chunks/axonixBidAdapter.js +1 -1
  74. package/dist/chunks/azerionedgeRtdProvider.metadata.js +1 -1
  75. package/dist/chunks/beopBidAdapter.js +1 -1
  76. package/dist/chunks/beopBidAdapter.metadata.js +1 -1
  77. package/dist/chunks/betweenBidAdapter.metadata.js +1 -1
  78. package/dist/chunks/bidglassBidAdapter.js +1 -1
  79. package/dist/chunks/bidmaticBidAdapter.metadata.js +1 -1
  80. package/dist/chunks/bidtheatreBidAdapter.metadata.js +1 -1
  81. package/dist/chunks/big-richmediaBidAdapter.js +1 -1
  82. package/dist/chunks/bitmediaBidAdapter.js +1 -1
  83. package/dist/chunks/bliinkBidAdapter.metadata.js +1 -1
  84. package/dist/chunks/blockthroughBidAdapter.js +1 -1
  85. package/dist/chunks/blockthroughBidAdapter.metadata.js +1 -1
  86. package/dist/chunks/blueBidAdapter.metadata.js +1 -1
  87. package/dist/chunks/bmsBidAdapter.metadata.js +1 -1
  88. package/dist/chunks/bmtmBidAdapter.js +1 -1
  89. package/dist/chunks/boldwinBidAdapter.metadata.js +1 -1
  90. package/dist/chunks/bridBidAdapter.js +1 -1
  91. package/dist/chunks/bridBidAdapter.metadata.js +1 -1
  92. package/dist/chunks/bridgewellBidAdapter.js +1 -1
  93. package/dist/chunks/browsiBidAdapter.metadata.js +1 -1
  94. package/dist/chunks/bucksenseBidAdapter.metadata.js +1 -1
  95. package/dist/chunks/carodaBidAdapter.js +1 -1
  96. package/dist/chunks/carodaBidAdapter.metadata.js +1 -1
  97. package/dist/chunks/categoryTranslation.metadata.js +1 -1
  98. package/dist/chunks/ccxBidAdapter.metadata.js +1 -1
  99. package/dist/chunks/ceeIdSystem.metadata.js +1 -1
  100. package/dist/chunks/chromeAiRtdProvider.metadata.js +1 -1
  101. package/dist/chunks/chtnwBidAdapter.js +1 -1
  102. package/dist/chunks/chunk-core.js +1 -1
  103. package/dist/chunks/compassBidAdapter.metadata.js +1 -1
  104. package/dist/chunks/conceptxBidAdapter.metadata.js +1 -1
  105. package/dist/chunks/concertBidAdapter.js +1 -1
  106. package/dist/chunks/connatixBidAdapter.metadata.js +1 -1
  107. package/dist/chunks/connectIdSystem.metadata.js +1 -1
  108. package/dist/chunks/connectadBidAdapter.js +1 -1
  109. package/dist/chunks/connectadBidAdapter.metadata.js +1 -1
  110. package/dist/chunks/consumableBidAdapter.js +1 -1
  111. package/dist/chunks/contentexchangeBidAdapter.metadata.js +1 -1
  112. package/dist/chunks/contxtfulBidAdapter.js +1 -1
  113. package/dist/chunks/conversantBidAdapter.js +1 -1
  114. package/dist/chunks/conversantBidAdapter.metadata.js +1 -1
  115. package/dist/chunks/copper6sspBidAdapter.metadata.js +1 -1
  116. package/dist/chunks/cpmstarBidAdapter.metadata.js +1 -1
  117. package/dist/chunks/craftBidAdapter.js +1 -1
  118. package/dist/chunks/creative-renderer-display.js +1 -1
  119. package/dist/chunks/criteoBidAdapter.js +1 -1
  120. package/dist/chunks/criteoBidAdapter.metadata.js +1 -1
  121. package/dist/chunks/criteoIdSystem.metadata.js +1 -1
  122. package/dist/chunks/cryptoUtils.js +1 -0
  123. package/dist/chunks/cwireBidAdapter.js +1 -1
  124. package/dist/chunks/cwireBidAdapter.metadata.js +1 -1
  125. package/dist/chunks/czechAdIdSystem.metadata.js +1 -1
  126. package/dist/chunks/dailymotionBidAdapter.js +1 -1
  127. package/dist/chunks/dailymotionBidAdapter.metadata.js +1 -1
  128. package/dist/chunks/debugging-standalone.js +1 -1
  129. package/dist/chunks/debugging.metadata.js +1 -1
  130. package/dist/chunks/deepintentBidAdapter.metadata.js +1 -1
  131. package/dist/chunks/deltaprojectsBidAdapter.metadata.js +1 -1
  132. package/dist/chunks/dependencies.json +13 -0
  133. package/dist/chunks/dianomiBidAdapter.metadata.js +1 -1
  134. package/dist/chunks/digitalMatterBidAdapter.metadata.js +1 -1
  135. package/dist/chunks/distroscaleBidAdapter.metadata.js +1 -1
  136. package/dist/chunks/docereeAdManagerBidAdapter.metadata.js +1 -1
  137. package/dist/chunks/docereeBidAdapter.metadata.js +1 -1
  138. package/dist/chunks/dspxBidAdapter.js +1 -1
  139. package/dist/chunks/dspxBidAdapter.metadata.js +1 -1
  140. package/dist/chunks/dxkultureBidAdapter.js +1 -1
  141. package/dist/chunks/e_volutionBidAdapter.metadata.js +1 -1
  142. package/dist/chunks/edge226BidAdapter.metadata.js +1 -1
  143. package/dist/chunks/eplanningBidAdapter.js +1 -1
  144. package/dist/chunks/equativBidAdapter.js +1 -1
  145. package/dist/chunks/equativBidAdapter.metadata.js +1 -1
  146. package/dist/chunks/eskimiBidAdapter.js +1 -1
  147. package/dist/chunks/eskimiBidAdapter.metadata.js +1 -1
  148. package/dist/chunks/etargetBidAdapter.metadata.js +1 -1
  149. package/dist/chunks/euidIdSystem.js +1 -1
  150. package/dist/chunks/euidIdSystem.metadata.js +1 -1
  151. package/dist/chunks/exadsBidAdapter.js +1 -1
  152. package/dist/chunks/exadsBidAdapter.metadata.js +1 -1
  153. package/dist/chunks/excoBidAdapter.js +1 -1
  154. package/dist/chunks/feedadBidAdapter.js +1 -1
  155. package/dist/chunks/feedadBidAdapter.metadata.js +1 -1
  156. package/dist/chunks/finativeBidAdapter.js +1 -1
  157. package/dist/chunks/fwsspBidAdapter.metadata.js +1 -1
  158. package/dist/chunks/gamoshiBidAdapter.metadata.js +1 -1
  159. package/dist/chunks/getintentBidAdapter.js +1 -1
  160. package/dist/chunks/glomexBidAdapter.metadata.js +1 -1
  161. package/dist/chunks/gmosspBidAdapter.js +1 -1
  162. package/dist/chunks/goldbachBidAdapter.metadata.js +1 -1
  163. package/dist/chunks/greenbidsAnalyticsAdapter.js +1 -1
  164. package/dist/chunks/greenbidsBidAdapter.js +1 -1
  165. package/dist/chunks/greenbidsBidAdapter.metadata.js +1 -1
  166. package/dist/chunks/greenbidsRtdProvider.js +1 -1
  167. package/dist/chunks/gridBidAdapter.js +1 -1
  168. package/dist/chunks/gridBidAdapter.metadata.js +1 -1
  169. package/dist/chunks/gumgumBidAdapter.js +1 -1
  170. package/dist/chunks/gumgumBidAdapter.metadata.js +1 -1
  171. package/dist/chunks/h12mediaBidAdapter.js +1 -1
  172. package/dist/chunks/hadronIdSystem.metadata.js +1 -1
  173. package/dist/chunks/hadronRtdProvider.metadata.js +1 -1
  174. package/dist/chunks/holidBidAdapter.metadata.js +1 -1
  175. package/dist/chunks/hybridBidAdapter.metadata.js +1 -1
  176. package/dist/chunks/hypelabBidAdapter.js +1 -1
  177. package/dist/chunks/iasRtdProvider.js +1 -1
  178. package/dist/chunks/id5AnalyticsAdapter.js +1 -1
  179. package/dist/chunks/id5IdSystem.js +1 -1
  180. package/dist/chunks/id5IdSystem.metadata.js +1 -1
  181. package/dist/chunks/identityLinkIdSystem.metadata.js +1 -1
  182. package/dist/chunks/illuminBidAdapter.metadata.js +1 -1
  183. package/dist/chunks/impactifyBidAdapter.metadata.js +1 -1
  184. package/dist/chunks/improvedigitalBidAdapter.js +1 -1
  185. package/dist/chunks/improvedigitalBidAdapter.metadata.js +1 -1
  186. package/dist/chunks/inmobiBidAdapter.js +1 -1
  187. package/dist/chunks/inmobiBidAdapter.metadata.js +1 -1
  188. package/dist/chunks/innityBidAdapter.metadata.js +1 -1
  189. package/dist/chunks/insticatorBidAdapter.js +1 -1
  190. package/dist/chunks/insticatorBidAdapter.metadata.js +1 -1
  191. package/dist/chunks/intentIqAnalyticsAdapter.js +1 -1
  192. package/dist/chunks/intentIqIdSystem.metadata.js +1 -1
  193. package/dist/chunks/invibesBidAdapter.metadata.js +1 -1
  194. package/dist/chunks/ipromBidAdapter.metadata.js +1 -1
  195. package/dist/chunks/ixBidAdapter.js +1 -1
  196. package/dist/chunks/ixBidAdapter.metadata.js +1 -1
  197. package/dist/chunks/jixieBidAdapter.js +1 -1
  198. package/dist/chunks/justIdSystem.metadata.js +1 -1
  199. package/dist/chunks/justpremiumBidAdapter.js +1 -1
  200. package/dist/chunks/justpremiumBidAdapter.metadata.js +1 -1
  201. package/dist/chunks/jwplayerBidAdapter.metadata.js +1 -1
  202. package/dist/chunks/jwplayerRtdProvider.js +1 -1
  203. package/dist/chunks/jwplayerVideoProvider.js +1 -1
  204. package/dist/chunks/kargoBidAdapter.js +1 -1
  205. package/dist/chunks/kargoBidAdapter.metadata.js +1 -1
  206. package/dist/chunks/kimberliteBidAdapter.js +1 -1
  207. package/dist/chunks/kubientBidAdapter.js +1 -1
  208. package/dist/chunks/kubientBidAdapter.metadata.js +1 -1
  209. package/dist/chunks/kueezRtbBidAdapter.metadata.js +1 -1
  210. package/dist/chunks/lassoBidAdapter.js +1 -1
  211. package/dist/chunks/lifestreetBidAdapter.js +1 -1
  212. package/dist/chunks/limelightDigitalBidAdapter.metadata.js +1 -1
  213. package/dist/chunks/liveIntentId.js +1 -1
  214. package/dist/chunks/liveIntentIdSystem.metadata.js +1 -1
  215. package/dist/chunks/liveIntentRtdProvider.metadata.js +1 -1
  216. package/dist/chunks/livewrappedBidAdapter.metadata.js +1 -1
  217. package/dist/chunks/logicadBidAdapter.js +1 -1
  218. package/dist/chunks/loopmeBidAdapter.metadata.js +1 -1
  219. package/dist/chunks/lotamePanoramaIdSystem.metadata.js +1 -1
  220. package/dist/chunks/luceadBidAdapter.js +1 -1
  221. package/dist/chunks/luceadBidAdapter.metadata.js +1 -1
  222. package/dist/chunks/luponmediaBidAdapter.metadata.js +1 -1
  223. package/dist/chunks/mabidderBidAdapter.js +1 -1
  224. package/dist/chunks/madsenseBidAdapter.js +1 -1
  225. package/dist/chunks/madvertiseBidAdapter.metadata.js +1 -1
  226. package/dist/chunks/magniteAnalyticsAdapter.js +1 -1
  227. package/dist/chunks/malltvAnalyticsAdapter.js +1 -1
  228. package/dist/chunks/marsmediaBidAdapter.js +1 -1
  229. package/dist/chunks/marsmediaBidAdapter.metadata.js +1 -1
  230. package/dist/chunks/mediaConsortiumBidAdapter.metadata.js +1 -1
  231. package/dist/chunks/mediaforceBidAdapter.metadata.js +1 -1
  232. package/dist/chunks/mediafuseBidAdapter.js +1 -1
  233. package/dist/chunks/mediafuseBidAdapter.metadata.js +1 -1
  234. package/dist/chunks/mediagoBidAdapter.metadata.js +1 -1
  235. package/dist/chunks/mediakeysBidAdapter.metadata.js +1 -1
  236. package/dist/chunks/medianetBidAdapter.js +1 -1
  237. package/dist/chunks/medianetBidAdapter.metadata.js +1 -1
  238. package/dist/chunks/medianetUtils.js +1 -1
  239. package/dist/chunks/mediasquareBidAdapter.js +1 -1
  240. package/dist/chunks/mediasquareBidAdapter.metadata.js +1 -1
  241. package/dist/chunks/mgidBidAdapter.js +1 -1
  242. package/dist/chunks/mgidBidAdapter.metadata.js +1 -1
  243. package/dist/chunks/mgidRtdProvider.metadata.js +1 -1
  244. package/dist/chunks/mgidXBidAdapter.metadata.js +1 -1
  245. package/dist/chunks/minutemediaBidAdapter.metadata.js +1 -1
  246. package/dist/chunks/missenaBidAdapter.js +1 -1
  247. package/dist/chunks/missenaBidAdapter.metadata.js +1 -1
  248. package/dist/chunks/mobianRtdProvider.metadata.js +1 -1
  249. package/dist/chunks/mobilefuseBidAdapter.js +1 -1
  250. package/dist/chunks/mobilefuseBidAdapter.metadata.js +1 -1
  251. package/dist/chunks/mobkoiBidAdapter.metadata.js +1 -1
  252. package/dist/chunks/mobkoiIdSystem.metadata.js +1 -1
  253. package/dist/chunks/nativeryBidAdapter.metadata.js +1 -1
  254. package/dist/chunks/nativoBidAdapter.metadata.js +1 -1
  255. package/dist/chunks/newspassidBidAdapter.metadata.js +1 -1
  256. package/dist/chunks/nextMillenniumBidAdapter.js +1 -1
  257. package/dist/chunks/nextMillenniumBidAdapter.metadata.js +1 -1
  258. package/dist/chunks/nextrollBidAdapter.metadata.js +1 -1
  259. package/dist/chunks/nexx360BidAdapter.metadata.js +1 -1
  260. package/dist/chunks/nexx360Utils.js +1 -1
  261. package/dist/chunks/nobidAnalyticsAdapter.js +1 -1
  262. package/dist/chunks/nobidBidAdapter.js +1 -1
  263. package/dist/chunks/nobidBidAdapter.metadata.js +1 -1
  264. package/dist/chunks/nodalsAiRtdProvider.js +1 -1
  265. package/dist/chunks/nodalsAiRtdProvider.metadata.js +1 -1
  266. package/dist/chunks/novatiqIdSystem.metadata.js +1 -1
  267. package/dist/chunks/oguryBidAdapter.js +1 -1
  268. package/dist/chunks/oguryBidAdapter.metadata.js +1 -1
  269. package/dist/chunks/omsBidAdapter.metadata.js +1 -1
  270. package/dist/chunks/onetagBidAdapter.js +1 -1
  271. package/dist/chunks/onetagBidAdapter.metadata.js +1 -1
  272. package/dist/chunks/ooloAnalyticsAdapter.js +1 -1
  273. package/dist/chunks/openwebBidAdapter.metadata.js +1 -1
  274. package/dist/chunks/openxBidAdapter.js +1 -1
  275. package/dist/chunks/openxBidAdapter.metadata.js +1 -1
  276. package/dist/chunks/operaadsBidAdapter.metadata.js +1 -1
  277. package/dist/chunks/optidigitalBidAdapter.js +1 -1
  278. package/dist/chunks/optidigitalBidAdapter.metadata.js +1 -1
  279. package/dist/chunks/optoutBidAdapter.metadata.js +1 -1
  280. package/dist/chunks/orbidderBidAdapter.js +1 -1
  281. package/dist/chunks/orbidderBidAdapter.metadata.js +1 -1
  282. package/dist/chunks/outbrainBidAdapter.js +1 -1
  283. package/dist/chunks/outbrainBidAdapter.metadata.js +1 -1
  284. package/dist/chunks/ozoneBidAdapter.metadata.js +1 -1
  285. package/dist/chunks/pairIdSystem.metadata.js +1 -1
  286. package/dist/chunks/performaxBidAdapter.metadata.js +1 -1
  287. package/dist/chunks/pgamsspBidAdapter.metadata.js +1 -1
  288. package/dist/chunks/pixfutureBidAdapter.js +1 -1
  289. package/dist/chunks/pixfutureBidAdapter.metadata.js +1 -1
  290. package/dist/chunks/playdigoBidAdapter.metadata.js +1 -1
  291. package/dist/chunks/prebid-core.metadata.js +1 -1
  292. package/dist/chunks/precisoBidAdapter.metadata.js +1 -1
  293. package/dist/chunks/prismaBidAdapter.metadata.js +1 -1
  294. package/dist/chunks/programmaticXBidAdapter.metadata.js +1 -1
  295. package/dist/chunks/proxistoreBidAdapter.metadata.js +1 -1
  296. package/dist/chunks/publinkIdSystem.js +1 -1
  297. package/dist/chunks/publinkIdSystem.metadata.js +1 -1
  298. package/dist/chunks/pubmaticAnalyticsAdapter.js +1 -1
  299. package/dist/chunks/pubmaticBidAdapter.js +1 -1
  300. package/dist/chunks/pubmaticBidAdapter.metadata.js +1 -1
  301. package/dist/chunks/pubmaticIdSystem.metadata.js +1 -1
  302. package/dist/chunks/pubwiseAnalyticsAdapter.js +1 -1
  303. package/dist/chunks/pubxaiAnalyticsAdapter.js +1 -1
  304. package/dist/chunks/pulsepointBidAdapter.js +1 -1
  305. package/dist/chunks/pulsepointBidAdapter.metadata.js +1 -1
  306. package/dist/chunks/pwbidBidAdapter.metadata.js +1 -1
  307. package/dist/chunks/pxyzBidAdapter.js +1 -1
  308. package/dist/chunks/qtBidAdapter.metadata.js +1 -1
  309. package/dist/chunks/quantcastBidAdapter.js +1 -1
  310. package/dist/chunks/quantcastBidAdapter.metadata.js +1 -1
  311. package/dist/chunks/quantcastIdSystem.metadata.js +1 -1
  312. package/dist/chunks/r2b2BidAdapter.metadata.js +1 -1
  313. package/dist/chunks/raynRtdProvider.metadata.js +1 -1
  314. package/dist/chunks/readpeakBidAdapter.js +1 -1
  315. package/dist/chunks/readpeakBidAdapter.metadata.js +1 -1
  316. package/dist/chunks/relaidoBidAdapter.js +1 -1
  317. package/dist/chunks/relayBidAdapter.metadata.js +1 -1
  318. package/dist/chunks/relevantdigitalBidAdapter.metadata.js +1 -1
  319. package/dist/chunks/resetdigitalBidAdapter.metadata.js +1 -1
  320. package/dist/chunks/responsiveAdsBidAdapter.metadata.js +1 -1
  321. package/dist/chunks/retailspotBidAdapter.js +1 -1
  322. package/dist/chunks/retailspotBidAdapter.metadata.js +1 -1
  323. package/dist/chunks/revcontentBidAdapter.metadata.js +1 -1
  324. package/dist/chunks/rhythmoneBidAdapter.js +1 -1
  325. package/dist/chunks/rhythmoneBidAdapter.metadata.js +1 -1
  326. package/dist/chunks/richaudienceBidAdapter.metadata.js +1 -1
  327. package/dist/chunks/riseBidAdapter.metadata.js +1 -1
  328. package/dist/chunks/riseUtils.js +1 -1
  329. package/dist/chunks/rixengineBidAdapter.metadata.js +1 -1
  330. package/dist/chunks/rtbhouseBidAdapter.metadata.js +1 -1
  331. package/dist/chunks/rubiconBidAdapter.js +1 -1
  332. package/dist/chunks/rubiconBidAdapter.metadata.js +1 -1
  333. package/dist/chunks/rumbleBidAdapter.js +1 -0
  334. package/dist/chunks/rumbleBidAdapter.metadata.js +1 -0
  335. package/dist/chunks/scatteredBidAdapter.metadata.js +1 -1
  336. package/dist/chunks/seedingAllianceBidAdapter.js +1 -1
  337. package/dist/chunks/seedingAllianceBidAdapter.metadata.js +1 -1
  338. package/dist/chunks/seedtagBidAdapter.js +1 -1
  339. package/dist/chunks/seedtagBidAdapter.metadata.js +1 -1
  340. package/dist/chunks/semantiqRtdProvider.metadata.js +1 -1
  341. package/dist/chunks/setupadBidAdapter.metadata.js +1 -1
  342. package/dist/chunks/sevioBidAdapter.js +1 -0
  343. package/dist/chunks/sevioBidAdapter.metadata.js +1 -0
  344. package/dist/chunks/sharedIdSystem.metadata.js +1 -1
  345. package/dist/chunks/sharethroughAnalyticsAdapter.js +1 -1
  346. package/dist/chunks/sharethroughBidAdapter.js +1 -1
  347. package/dist/chunks/sharethroughBidAdapter.metadata.js +1 -1
  348. package/dist/chunks/showheroes-bsBidAdapter.js +1 -1
  349. package/dist/chunks/showheroes-bsBidAdapter.metadata.js +1 -1
  350. package/dist/chunks/silvermobBidAdapter.metadata.js +1 -1
  351. package/dist/chunks/sirdataRtdProvider.metadata.js +1 -1
  352. package/dist/chunks/slimcutBidAdapter.metadata.js +1 -1
  353. package/dist/chunks/smaatoBidAdapter.js +1 -1
  354. package/dist/chunks/smaatoBidAdapter.metadata.js +1 -1
  355. package/dist/chunks/smartadserverBidAdapter.js +1 -1
  356. package/dist/chunks/smartadserverBidAdapter.metadata.js +1 -1
  357. package/dist/chunks/smartxBidAdapter.js +1 -1
  358. package/dist/chunks/smartxBidAdapter.metadata.js +1 -1
  359. package/dist/chunks/smartyadsBidAdapter.metadata.js +1 -1
  360. package/dist/chunks/smilewantedBidAdapter.js +1 -1
  361. package/dist/chunks/smilewantedBidAdapter.metadata.js +1 -1
  362. package/dist/chunks/snigelBidAdapter.js +1 -1
  363. package/dist/chunks/snigelBidAdapter.metadata.js +1 -1
  364. package/dist/chunks/sonaradsBidAdapter.js +1 -1
  365. package/dist/chunks/sonaradsBidAdapter.metadata.js +1 -1
  366. package/dist/chunks/sonobiBidAdapter.js +1 -1
  367. package/dist/chunks/sonobiBidAdapter.metadata.js +1 -1
  368. package/dist/chunks/sovrnBidAdapter.js +1 -1
  369. package/dist/chunks/sovrnBidAdapter.metadata.js +1 -1
  370. package/dist/chunks/sparteoBidAdapter.js +1 -1
  371. package/dist/chunks/sparteoBidAdapter.metadata.js +1 -1
  372. package/dist/chunks/ssmasBidAdapter.metadata.js +1 -1
  373. package/dist/chunks/sspBCBidAdapter.js +1 -1
  374. package/dist/chunks/sspBCBidAdapter.metadata.js +1 -1
  375. package/dist/chunks/stackadaptBidAdapter.metadata.js +1 -1
  376. package/dist/chunks/startioBidAdapter.metadata.js +1 -1
  377. package/dist/chunks/stroeerCoreBidAdapter.metadata.js +1 -1
  378. package/dist/chunks/stvBidAdapter.js +1 -1
  379. package/dist/chunks/stvBidAdapter.metadata.js +1 -1
  380. package/dist/chunks/sublimeBidAdapter.js +1 -1
  381. package/dist/chunks/sublimeBidAdapter.metadata.js +1 -1
  382. package/dist/chunks/taboolaBidAdapter.js +1 -1
  383. package/dist/chunks/taboolaBidAdapter.metadata.js +1 -1
  384. package/dist/chunks/taboolaIdSystem.metadata.js +1 -1
  385. package/dist/chunks/tappxBidAdapter.js +1 -1
  386. package/dist/chunks/tappxBidAdapter.metadata.js +1 -1
  387. package/dist/chunks/targetVideoBidAdapter.js +1 -1
  388. package/dist/chunks/targetVideoBidAdapter.metadata.js +1 -1
  389. package/dist/chunks/teadsBidAdapter.js +1 -1
  390. package/dist/chunks/teadsBidAdapter.metadata.js +1 -1
  391. package/dist/chunks/teadsIdSystem.metadata.js +1 -1
  392. package/dist/chunks/tealBidAdapter.metadata.js +1 -1
  393. package/dist/chunks/terceptAnalyticsAdapter.js +1 -1
  394. package/dist/chunks/themoneytizerBidAdapter.js +1 -1
  395. package/dist/chunks/themoneytizerBidAdapter.metadata.js +1 -1
  396. package/dist/chunks/tncIdSystem.metadata.js +1 -1
  397. package/dist/chunks/topicsFpdModule.metadata.js +1 -1
  398. package/dist/chunks/trionBidAdapter.js +1 -1
  399. package/dist/chunks/tripleliftBidAdapter.js +1 -1
  400. package/dist/chunks/tripleliftBidAdapter.metadata.js +1 -1
  401. package/dist/chunks/ttdBidAdapter.js +1 -1
  402. package/dist/chunks/ttdBidAdapter.metadata.js +1 -1
  403. package/dist/chunks/twistDigitalBidAdapter.metadata.js +1 -1
  404. package/dist/chunks/ucfunnelAnalyticsAdapter.js +1 -1
  405. package/dist/chunks/uid2IdSystem.js +1 -1
  406. package/dist/chunks/underdogmediaBidAdapter.js +1 -1
  407. package/dist/chunks/underdogmediaBidAdapter.metadata.js +1 -1
  408. package/dist/chunks/undertoneBidAdapter.js +1 -1
  409. package/dist/chunks/undertoneBidAdapter.metadata.js +1 -1
  410. package/dist/chunks/unifiedIdSystem.metadata.js +1 -1
  411. package/dist/chunks/unrulyBidAdapter.js +1 -1
  412. package/dist/chunks/unrulyBidAdapter.metadata.js +1 -1
  413. package/dist/chunks/userId.js +1 -1
  414. package/dist/chunks/userId.metadata.js +1 -1
  415. package/dist/chunks/validationFpdModule.metadata.js +1 -1
  416. package/dist/chunks/vidazooBidAdapter.metadata.js +1 -1
  417. package/dist/chunks/vidazooUtils.js +1 -1
  418. package/dist/chunks/videobyteBidAdapter.js +1 -1
  419. package/dist/chunks/vidoomyBidAdapter.metadata.js +1 -1
  420. package/dist/chunks/viewdeosDXBidAdapter.metadata.js +1 -1
  421. package/dist/chunks/viouslyBidAdapter.metadata.js +1 -1
  422. package/dist/chunks/visxBidAdapter.js +1 -1
  423. package/dist/chunks/visxBidAdapter.metadata.js +1 -1
  424. package/dist/chunks/vlybyBidAdapter.metadata.js +1 -1
  425. package/dist/chunks/voxBidAdapter.metadata.js +1 -1
  426. package/dist/chunks/vrtcalBidAdapter.metadata.js +1 -1
  427. package/dist/chunks/vuukleBidAdapter.js +1 -1
  428. package/dist/chunks/vuukleBidAdapter.metadata.js +1 -1
  429. package/dist/chunks/weboramaRtdProvider.js +1 -1
  430. package/dist/chunks/weboramaRtdProvider.metadata.js +1 -1
  431. package/dist/chunks/welectBidAdapter.metadata.js +1 -1
  432. package/dist/chunks/widespaceBidAdapter.js +1 -1
  433. package/dist/chunks/winrBidAdapter.js +1 -1
  434. package/dist/chunks/yahooAdsBidAdapter.js +1 -1
  435. package/dist/chunks/yahooAdsBidAdapter.metadata.js +1 -1
  436. package/dist/chunks/yandexBidAdapter.js +1 -1
  437. package/dist/chunks/yieldlabBidAdapter.metadata.js +1 -1
  438. package/dist/chunks/yieldliftBidAdapter.metadata.js +1 -1
  439. package/dist/chunks/yieldloveBidAdapter.metadata.js +1 -1
  440. package/dist/chunks/yieldmoBidAdapter.js +1 -1
  441. package/dist/chunks/yieldmoBidAdapter.metadata.js +1 -1
  442. package/dist/chunks/yieldoneAnalyticsAdapter.js +1 -1
  443. package/dist/chunks/zeotapIdPlusIdSystem.metadata.js +1 -1
  444. package/dist/chunks/zeta_globalBidAdapter.metadata.js +1 -1
  445. package/dist/chunks/zeta_global_sspBidAdapter.metadata.js +1 -1
  446. package/dist/not-for-prod/prebid.js +443 -438
  447. package/dist/src/creative/renderers/display/renderer.js +3 -4
  448. package/dist/src/creative/renderers/display/renderer.js.map +1 -1
  449. package/dist/src/libraries/adagioUtils/adagioUtils.js +1 -1
  450. package/dist/src/libraries/analyticsAdapter/AnalyticsAdapter.js.map +1 -1
  451. package/dist/src/libraries/appnexusUtils/anKeywords.js +15 -1
  452. package/dist/src/libraries/appnexusUtils/anKeywords.js.map +1 -1
  453. package/dist/src/libraries/consentManagement/cmUtils.js.map +1 -1
  454. package/dist/src/libraries/creative-renderer-display/renderer.d.ts +1 -1
  455. package/dist/src/libraries/creative-renderer-display/renderer.js +1 -1
  456. package/dist/src/libraries/creative-renderer-display/renderer.js.map +1 -1
  457. package/dist/src/libraries/cryptoUtils/wallets.js +14 -0
  458. package/dist/src/libraries/cryptoUtils/wallets.js.map +1 -0
  459. package/dist/src/libraries/dspxUtils/bidderUtils.js.map +1 -1
  460. package/dist/src/libraries/impUtils.js +36 -0
  461. package/dist/src/libraries/impUtils.js.map +1 -0
  462. package/dist/src/libraries/liveIntentId/externalIdSystem.js +1 -1
  463. package/dist/src/libraries/liveIntentId/idSystem.js +1 -1
  464. package/dist/src/libraries/medianetUtils/constants.js +1 -1
  465. package/dist/src/libraries/nexx360Utils/index.js +1 -1
  466. package/dist/src/libraries/nexx360Utils/index.js.map +1 -1
  467. package/dist/src/libraries/ortbConverter/converter.js.map +1 -1
  468. package/dist/src/libraries/riseUtils/index.js +1 -1
  469. package/dist/src/libraries/vidazooUtils/bidderUtils.js +1 -1
  470. package/dist/src/libraries/video/constants/events.js.map +1 -1
  471. package/dist/src/metadata/modules/33acrossBidAdapter.js +1 -1
  472. package/dist/src/metadata/modules/33acrossIdSystem.js +1 -1
  473. package/dist/src/metadata/modules/acuityadsBidAdapter.js +1 -1
  474. package/dist/src/metadata/modules/adagioBidAdapter.js +1 -1
  475. package/dist/src/metadata/modules/adagioRtdProvider.js +1 -1
  476. package/dist/src/metadata/modules/addefendBidAdapter.js +1 -1
  477. package/dist/src/metadata/modules/adfBidAdapter.js +1 -1
  478. package/dist/src/metadata/modules/adfusionBidAdapter.js +1 -1
  479. package/dist/src/metadata/modules/adheseBidAdapter.js +1 -1
  480. package/dist/src/metadata/modules/adkernelAdnBidAdapter.js +1 -1
  481. package/dist/src/metadata/modules/adkernelBidAdapter.js +1 -1
  482. package/dist/src/metadata/modules/admaticBidAdapter.js +1 -1
  483. package/dist/src/metadata/modules/admixerBidAdapter.js +1 -1
  484. package/dist/src/metadata/modules/admixerIdSystem.js +1 -1
  485. package/dist/src/metadata/modules/adnowBidAdapter.js +1 -1
  486. package/dist/src/metadata/modules/adnuntiusBidAdapter.js +1 -1
  487. package/dist/src/metadata/modules/adnuntiusRtdProvider.js +1 -1
  488. package/dist/src/metadata/modules/adotBidAdapter.js +1 -1
  489. package/dist/src/metadata/modules/adponeBidAdapter.js +1 -1
  490. package/dist/src/metadata/modules/adqueryBidAdapter.js +1 -1
  491. package/dist/src/metadata/modules/adqueryIdSystem.js +1 -1
  492. package/dist/src/metadata/modules/adrinoBidAdapter.js +1 -1
  493. package/dist/src/metadata/modules/ads_interactiveBidAdapter.js +1 -1
  494. package/dist/src/metadata/modules/adtargetBidAdapter.js +1 -1
  495. package/dist/src/metadata/modules/adtelligentBidAdapter.js +1 -1
  496. package/dist/src/metadata/modules/adtelligentIdSystem.js +1 -1
  497. package/dist/src/metadata/modules/aduptechBidAdapter.js +1 -1
  498. package/dist/src/metadata/modules/adyoulikeBidAdapter.js +1 -1
  499. package/dist/src/metadata/modules/aidemBidAdapter.js +1 -1
  500. package/dist/src/metadata/modules/airgridRtdProvider.js +1 -1
  501. package/dist/src/metadata/modules/alkimiBidAdapter.js +1 -1
  502. package/dist/src/metadata/modules/ampliffyBidAdapter.js +1 -1
  503. package/dist/src/metadata/modules/amxBidAdapter.js +1 -1
  504. package/dist/src/metadata/modules/amxIdSystem.js +1 -1
  505. package/dist/src/metadata/modules/aniviewBidAdapter.js +1 -1
  506. package/dist/src/metadata/modules/anonymisedRtdProvider.js +1 -1
  507. package/dist/src/metadata/modules/appierBidAdapter.js +1 -1
  508. package/dist/src/metadata/modules/appnexusBidAdapter.js +1 -1
  509. package/dist/src/metadata/modules/appushBidAdapter.js +1 -1
  510. package/dist/src/metadata/modules/apstreamBidAdapter.js +1 -1
  511. package/dist/src/metadata/modules/audiencerunBidAdapter.js +1 -1
  512. package/dist/src/metadata/modules/axisBidAdapter.js +1 -1
  513. package/dist/src/metadata/modules/azerionedgeRtdProvider.js +1 -1
  514. package/dist/src/metadata/modules/beopBidAdapter.js +1 -1
  515. package/dist/src/metadata/modules/betweenBidAdapter.js +1 -1
  516. package/dist/src/metadata/modules/bidmaticBidAdapter.js +1 -1
  517. package/dist/src/metadata/modules/bidtheatreBidAdapter.js +1 -1
  518. package/dist/src/metadata/modules/bliinkBidAdapter.js +1 -1
  519. package/dist/src/metadata/modules/blockthroughBidAdapter.js +1 -1
  520. package/dist/src/metadata/modules/blueBidAdapter.js +1 -1
  521. package/dist/src/metadata/modules/bmsBidAdapter.js +1 -1
  522. package/dist/src/metadata/modules/boldwinBidAdapter.js +1 -1
  523. package/dist/src/metadata/modules/bridBidAdapter.js +1 -1
  524. package/dist/src/metadata/modules/browsiBidAdapter.js +1 -1
  525. package/dist/src/metadata/modules/bucksenseBidAdapter.js +1 -1
  526. package/dist/src/metadata/modules/carodaBidAdapter.js +1 -1
  527. package/dist/src/metadata/modules/categoryTranslation.js +1 -1
  528. package/dist/src/metadata/modules/ccxBidAdapter.js +1 -1
  529. package/dist/src/metadata/modules/ceeIdSystem.js +1 -1
  530. package/dist/src/metadata/modules/chromeAiRtdProvider.js +1 -1
  531. package/dist/src/metadata/modules/compassBidAdapter.js +1 -1
  532. package/dist/src/metadata/modules/conceptxBidAdapter.js +1 -1
  533. package/dist/src/metadata/modules/connatixBidAdapter.js +1 -1
  534. package/dist/src/metadata/modules/connectIdSystem.js +1 -1
  535. package/dist/src/metadata/modules/connectadBidAdapter.js +1 -1
  536. package/dist/src/metadata/modules/contentexchangeBidAdapter.js +1 -1
  537. package/dist/src/metadata/modules/conversantBidAdapter.js +1 -1
  538. package/dist/src/metadata/modules/copper6sspBidAdapter.js +1 -1
  539. package/dist/src/metadata/modules/cpmstarBidAdapter.js +1 -1
  540. package/dist/src/metadata/modules/criteoBidAdapter.js +1 -1
  541. package/dist/src/metadata/modules/criteoIdSystem.js +1 -1
  542. package/dist/src/metadata/modules/cwireBidAdapter.js +1 -1
  543. package/dist/src/metadata/modules/czechAdIdSystem.js +1 -1
  544. package/dist/src/metadata/modules/dailymotionBidAdapter.js +1 -1
  545. package/dist/src/metadata/modules/debugging.js +1 -1
  546. package/dist/src/metadata/modules/deepintentBidAdapter.js +1 -1
  547. package/dist/src/metadata/modules/deltaprojectsBidAdapter.js +1 -1
  548. package/dist/src/metadata/modules/dianomiBidAdapter.js +1 -1
  549. package/dist/src/metadata/modules/digitalMatterBidAdapter.js +1 -1
  550. package/dist/src/metadata/modules/distroscaleBidAdapter.js +1 -1
  551. package/dist/src/metadata/modules/docereeAdManagerBidAdapter.js +1 -1
  552. package/dist/src/metadata/modules/docereeBidAdapter.js +1 -1
  553. package/dist/src/metadata/modules/dspxBidAdapter.js +1 -1
  554. package/dist/src/metadata/modules/e_volutionBidAdapter.js +1 -1
  555. package/dist/src/metadata/modules/edge226BidAdapter.js +1 -1
  556. package/dist/src/metadata/modules/equativBidAdapter.js +1 -1
  557. package/dist/src/metadata/modules/eskimiBidAdapter.js +1 -1
  558. package/dist/src/metadata/modules/etargetBidAdapter.js +1 -1
  559. package/dist/src/metadata/modules/euidIdSystem.js +1 -1
  560. package/dist/src/metadata/modules/exadsBidAdapter.js +1 -1
  561. package/dist/src/metadata/modules/feedadBidAdapter.js +1 -1
  562. package/dist/src/metadata/modules/fwsspBidAdapter.js +1 -1
  563. package/dist/src/metadata/modules/gamoshiBidAdapter.js +1 -1
  564. package/dist/src/metadata/modules/glomexBidAdapter.js +1 -1
  565. package/dist/src/metadata/modules/goldbachBidAdapter.js +1 -1
  566. package/dist/src/metadata/modules/greenbidsBidAdapter.js +1 -1
  567. package/dist/src/metadata/modules/gridBidAdapter.js +1 -1
  568. package/dist/src/metadata/modules/gumgumBidAdapter.js +1 -1
  569. package/dist/src/metadata/modules/hadronIdSystem.js +1 -1
  570. package/dist/src/metadata/modules/hadronRtdProvider.js +1 -1
  571. package/dist/src/metadata/modules/holidBidAdapter.js +1 -1
  572. package/dist/src/metadata/modules/hybridBidAdapter.js +1 -1
  573. package/dist/src/metadata/modules/id5IdSystem.js +1 -1
  574. package/dist/src/metadata/modules/identityLinkIdSystem.js +1 -1
  575. package/dist/src/metadata/modules/illuminBidAdapter.js +1 -1
  576. package/dist/src/metadata/modules/impactifyBidAdapter.js +1 -1
  577. package/dist/src/metadata/modules/improvedigitalBidAdapter.js +1 -1
  578. package/dist/src/metadata/modules/inmobiBidAdapter.js +1 -1
  579. package/dist/src/metadata/modules/innityBidAdapter.js +1 -1
  580. package/dist/src/metadata/modules/insticatorBidAdapter.js +1 -1
  581. package/dist/src/metadata/modules/intentIqIdSystem.js +1 -1
  582. package/dist/src/metadata/modules/invibesBidAdapter.js +1 -1
  583. package/dist/src/metadata/modules/ipromBidAdapter.js +1 -1
  584. package/dist/src/metadata/modules/ixBidAdapter.js +1 -1
  585. package/dist/src/metadata/modules/justIdSystem.js +1 -1
  586. package/dist/src/metadata/modules/justpremiumBidAdapter.js +1 -1
  587. package/dist/src/metadata/modules/jwplayerBidAdapter.js +1 -1
  588. package/dist/src/metadata/modules/kargoBidAdapter.js +1 -1
  589. package/dist/src/metadata/modules/kubientBidAdapter.js +1 -1
  590. package/dist/src/metadata/modules/kueezRtbBidAdapter.js +1 -1
  591. package/dist/src/metadata/modules/limelightDigitalBidAdapter.js +1 -1
  592. package/dist/src/metadata/modules/liveIntentIdSystem.js +1 -1
  593. package/dist/src/metadata/modules/liveIntentRtdProvider.js +1 -1
  594. package/dist/src/metadata/modules/livewrappedBidAdapter.js +1 -1
  595. package/dist/src/metadata/modules/loopmeBidAdapter.js +1 -1
  596. package/dist/src/metadata/modules/lotamePanoramaIdSystem.js +1 -1
  597. package/dist/src/metadata/modules/luceadBidAdapter.js +1 -1
  598. package/dist/src/metadata/modules/luponmediaBidAdapter.js +1 -1
  599. package/dist/src/metadata/modules/madvertiseBidAdapter.js +1 -1
  600. package/dist/src/metadata/modules/marsmediaBidAdapter.js +1 -1
  601. package/dist/src/metadata/modules/mediaConsortiumBidAdapter.js +1 -1
  602. package/dist/src/metadata/modules/mediaforceBidAdapter.js +1 -1
  603. package/dist/src/metadata/modules/mediafuseBidAdapter.js +1 -1
  604. package/dist/src/metadata/modules/mediagoBidAdapter.js +1 -1
  605. package/dist/src/metadata/modules/mediakeysBidAdapter.js +1 -1
  606. package/dist/src/metadata/modules/medianetBidAdapter.js +1 -1
  607. package/dist/src/metadata/modules/mediasquareBidAdapter.js +1 -1
  608. package/dist/src/metadata/modules/mgidBidAdapter.js +1 -1
  609. package/dist/src/metadata/modules/mgidRtdProvider.js +1 -1
  610. package/dist/src/metadata/modules/mgidXBidAdapter.js +1 -1
  611. package/dist/src/metadata/modules/minutemediaBidAdapter.js +1 -1
  612. package/dist/src/metadata/modules/missenaBidAdapter.js +1 -1
  613. package/dist/src/metadata/modules/mobianRtdProvider.js +1 -1
  614. package/dist/src/metadata/modules/mobilefuseBidAdapter.js +1 -1
  615. package/dist/src/metadata/modules/mobkoiBidAdapter.js +1 -1
  616. package/dist/src/metadata/modules/mobkoiIdSystem.js +1 -1
  617. package/dist/src/metadata/modules/nativeryBidAdapter.js +1 -1
  618. package/dist/src/metadata/modules/nativoBidAdapter.js +1 -1
  619. package/dist/src/metadata/modules/newspassidBidAdapter.js +1 -1
  620. package/dist/src/metadata/modules/nextMillenniumBidAdapter.js +1 -1
  621. package/dist/src/metadata/modules/nextrollBidAdapter.js +1 -1
  622. package/dist/src/metadata/modules/nexx360BidAdapter.js +1 -1
  623. package/dist/src/metadata/modules/nobidBidAdapter.js +1 -1
  624. package/dist/src/metadata/modules/nodalsAiRtdProvider.js +1 -1
  625. package/dist/src/metadata/modules/novatiqIdSystem.js +1 -1
  626. package/dist/src/metadata/modules/oguryBidAdapter.js +1 -1
  627. package/dist/src/metadata/modules/omsBidAdapter.js +1 -1
  628. package/dist/src/metadata/modules/onetagBidAdapter.js +1 -1
  629. package/dist/src/metadata/modules/openwebBidAdapter.js +1 -1
  630. package/dist/src/metadata/modules/openxBidAdapter.js +1 -1
  631. package/dist/src/metadata/modules/operaadsBidAdapter.js +1 -1
  632. package/dist/src/metadata/modules/optidigitalBidAdapter.js +1 -1
  633. package/dist/src/metadata/modules/optoutBidAdapter.js +1 -1
  634. package/dist/src/metadata/modules/orbidderBidAdapter.js +1 -1
  635. package/dist/src/metadata/modules/outbrainBidAdapter.js +1 -1
  636. package/dist/src/metadata/modules/ozoneBidAdapter.js +1 -1
  637. package/dist/src/metadata/modules/pairIdSystem.js +1 -1
  638. package/dist/src/metadata/modules/performaxBidAdapter.js +1 -1
  639. package/dist/src/metadata/modules/pgamsspBidAdapter.js +1 -1
  640. package/dist/src/metadata/modules/pixfutureBidAdapter.js +1 -1
  641. package/dist/src/metadata/modules/playdigoBidAdapter.js +1 -1
  642. package/dist/src/metadata/modules/prebid-core.js +1 -1
  643. package/dist/src/metadata/modules/precisoBidAdapter.js +1 -1
  644. package/dist/src/metadata/modules/prismaBidAdapter.js +1 -1
  645. package/dist/src/metadata/modules/programmaticXBidAdapter.js +1 -1
  646. package/dist/src/metadata/modules/proxistoreBidAdapter.js +1 -1
  647. package/dist/src/metadata/modules/publinkIdSystem.js +1 -1
  648. package/dist/src/metadata/modules/pubmaticBidAdapter.js +1 -1
  649. package/dist/src/metadata/modules/pubmaticIdSystem.js +1 -1
  650. package/dist/src/metadata/modules/pulsepointBidAdapter.js +1 -1
  651. package/dist/src/metadata/modules/pwbidBidAdapter.js +1 -1
  652. package/dist/src/metadata/modules/qtBidAdapter.js +1 -1
  653. package/dist/src/metadata/modules/quantcastBidAdapter.js +1 -1
  654. package/dist/src/metadata/modules/quantcastIdSystem.js +1 -1
  655. package/dist/src/metadata/modules/r2b2BidAdapter.js +1 -1
  656. package/dist/src/metadata/modules/raynRtdProvider.js +1 -1
  657. package/dist/src/metadata/modules/readpeakBidAdapter.js +1 -1
  658. package/dist/src/metadata/modules/relayBidAdapter.js +1 -1
  659. package/dist/src/metadata/modules/relevantdigitalBidAdapter.js +1 -1
  660. package/dist/src/metadata/modules/resetdigitalBidAdapter.js +1 -1
  661. package/dist/src/metadata/modules/responsiveAdsBidAdapter.js +1 -1
  662. package/dist/src/metadata/modules/retailspotBidAdapter.js +1 -1
  663. package/dist/src/metadata/modules/revcontentBidAdapter.js +1 -1
  664. package/dist/src/metadata/modules/rhythmoneBidAdapter.js +1 -1
  665. package/dist/src/metadata/modules/richaudienceBidAdapter.js +1 -1
  666. package/dist/src/metadata/modules/riseBidAdapter.js +1 -1
  667. package/dist/src/metadata/modules/rixengineBidAdapter.js +1 -1
  668. package/dist/src/metadata/modules/rtbhouseBidAdapter.js +1 -1
  669. package/dist/src/metadata/modules/rubiconBidAdapter.js +1 -1
  670. package/dist/src/metadata/modules/rumbleBidAdapter.js +2 -0
  671. package/dist/src/metadata/modules/scatteredBidAdapter.js +1 -1
  672. package/dist/src/metadata/modules/seedingAllianceBidAdapter.js +1 -1
  673. package/dist/src/metadata/modules/seedtagBidAdapter.js +1 -1
  674. package/dist/src/metadata/modules/semantiqRtdProvider.js +1 -1
  675. package/dist/src/metadata/modules/setupadBidAdapter.js +1 -1
  676. package/dist/src/metadata/modules/sevioBidAdapter.js +2 -0
  677. package/dist/src/metadata/modules/sharedIdSystem.js +1 -1
  678. package/dist/src/metadata/modules/sharethroughBidAdapter.js +1 -1
  679. package/dist/src/metadata/modules/showheroes-bsBidAdapter.js +1 -1
  680. package/dist/src/metadata/modules/silvermobBidAdapter.js +1 -1
  681. package/dist/src/metadata/modules/sirdataRtdProvider.js +1 -1
  682. package/dist/src/metadata/modules/slimcutBidAdapter.js +1 -1
  683. package/dist/src/metadata/modules/smaatoBidAdapter.js +1 -1
  684. package/dist/src/metadata/modules/smartadserverBidAdapter.js +1 -1
  685. package/dist/src/metadata/modules/smartxBidAdapter.js +1 -1
  686. package/dist/src/metadata/modules/smartyadsBidAdapter.js +1 -1
  687. package/dist/src/metadata/modules/smilewantedBidAdapter.js +1 -1
  688. package/dist/src/metadata/modules/snigelBidAdapter.js +1 -1
  689. package/dist/src/metadata/modules/sonaradsBidAdapter.js +1 -1
  690. package/dist/src/metadata/modules/sonobiBidAdapter.js +1 -1
  691. package/dist/src/metadata/modules/sovrnBidAdapter.js +1 -1
  692. package/dist/src/metadata/modules/sparteoBidAdapter.js +1 -1
  693. package/dist/src/metadata/modules/ssmasBidAdapter.js +1 -1
  694. package/dist/src/metadata/modules/sspBCBidAdapter.js +1 -1
  695. package/dist/src/metadata/modules/stackadaptBidAdapter.js +1 -1
  696. package/dist/src/metadata/modules/startioBidAdapter.js +1 -1
  697. package/dist/src/metadata/modules/stroeerCoreBidAdapter.js +1 -1
  698. package/dist/src/metadata/modules/stvBidAdapter.js +1 -1
  699. package/dist/src/metadata/modules/sublimeBidAdapter.js +1 -1
  700. package/dist/src/metadata/modules/taboolaBidAdapter.js +1 -1
  701. package/dist/src/metadata/modules/taboolaIdSystem.js +1 -1
  702. package/dist/src/metadata/modules/tappxBidAdapter.js +1 -1
  703. package/dist/src/metadata/modules/targetVideoBidAdapter.js +1 -1
  704. package/dist/src/metadata/modules/teadsBidAdapter.js +1 -1
  705. package/dist/src/metadata/modules/teadsIdSystem.js +1 -1
  706. package/dist/src/metadata/modules/tealBidAdapter.js +1 -1
  707. package/dist/src/metadata/modules/themoneytizerBidAdapter.js +1 -1
  708. package/dist/src/metadata/modules/tncIdSystem.js +1 -1
  709. package/dist/src/metadata/modules/topicsFpdModule.js +1 -1
  710. package/dist/src/metadata/modules/tripleliftBidAdapter.js +1 -1
  711. package/dist/src/metadata/modules/ttdBidAdapter.js +1 -1
  712. package/dist/src/metadata/modules/twistDigitalBidAdapter.js +1 -1
  713. package/dist/src/metadata/modules/underdogmediaBidAdapter.js +1 -1
  714. package/dist/src/metadata/modules/undertoneBidAdapter.js +1 -1
  715. package/dist/src/metadata/modules/unifiedIdSystem.js +1 -1
  716. package/dist/src/metadata/modules/unrulyBidAdapter.js +1 -1
  717. package/dist/src/metadata/modules/userId.js +1 -1
  718. package/dist/src/metadata/modules/validationFpdModule.js +1 -1
  719. package/dist/src/metadata/modules/vidazooBidAdapter.js +1 -1
  720. package/dist/src/metadata/modules/vidoomyBidAdapter.js +1 -1
  721. package/dist/src/metadata/modules/viewdeosDXBidAdapter.js +1 -1
  722. package/dist/src/metadata/modules/viouslyBidAdapter.js +1 -1
  723. package/dist/src/metadata/modules/visxBidAdapter.js +1 -1
  724. package/dist/src/metadata/modules/vlybyBidAdapter.js +1 -1
  725. package/dist/src/metadata/modules/voxBidAdapter.js +1 -1
  726. package/dist/src/metadata/modules/vrtcalBidAdapter.js +1 -1
  727. package/dist/src/metadata/modules/vuukleBidAdapter.js +1 -1
  728. package/dist/src/metadata/modules/weboramaRtdProvider.js +1 -1
  729. package/dist/src/metadata/modules/welectBidAdapter.js +1 -1
  730. package/dist/src/metadata/modules/yahooAdsBidAdapter.js +1 -1
  731. package/dist/src/metadata/modules/yieldlabBidAdapter.js +1 -1
  732. package/dist/src/metadata/modules/yieldliftBidAdapter.js +1 -1
  733. package/dist/src/metadata/modules/yieldloveBidAdapter.js +1 -1
  734. package/dist/src/metadata/modules/yieldmoBidAdapter.js +1 -1
  735. package/dist/src/metadata/modules/zeotapIdPlusIdSystem.js +1 -1
  736. package/dist/src/metadata/modules/zeta_globalBidAdapter.js +1 -1
  737. package/dist/src/metadata/modules/zeta_global_sspBidAdapter.js +1 -1
  738. package/dist/src/modules/1plusXRtdProvider.js +6 -2
  739. package/dist/src/modules/1plusXRtdProvider.js.map +1 -1
  740. package/dist/src/modules/33acrossAnalyticsAdapter.js +1 -1
  741. package/dist/src/modules/33acrossBidAdapter.js +1 -1
  742. package/dist/src/modules/33acrossIdSystem.js +1 -1
  743. package/dist/src/modules/adWMGBidAdapter.js.map +1 -1
  744. package/dist/src/modules/adagioAnalyticsAdapter.js +1 -1
  745. package/dist/src/modules/adagioBidAdapter.js +1 -1
  746. package/dist/src/modules/addefendBidAdapter.js +1 -1
  747. package/dist/src/modules/adgenerationBidAdapter.js +1 -1
  748. package/dist/src/modules/adlooxRtdProvider.js +1 -1
  749. package/dist/src/modules/admixerBidAdapter.js +5 -4
  750. package/dist/src/modules/admixerBidAdapter.js.map +1 -1
  751. package/dist/src/modules/adqueryBidAdapter.js +1 -1
  752. package/dist/src/modules/adrelevantisBidAdapter.js +1 -1
  753. package/dist/src/modules/adspiritBidAdapter.js.map +1 -1
  754. package/dist/src/modules/adstirBidAdapter.js +1 -1
  755. package/dist/src/modules/adtrgtmeBidAdapter.js +1 -1
  756. package/dist/src/modules/adtrgtmeBidAdapter.js.map +1 -1
  757. package/dist/src/modules/advertisingBidAdapter.js +2 -2
  758. package/dist/src/modules/adxcgAnalyticsAdapter.js +1 -1
  759. package/dist/src/modules/adxcgBidAdapter.js +4 -39
  760. package/dist/src/modules/adxcgBidAdapter.js.map +1 -1
  761. package/dist/src/modules/adyoulikeBidAdapter.js +1 -1
  762. package/dist/src/modules/agmaAnalyticsAdapter.js +1 -1
  763. package/dist/src/modules/ajaBidAdapter.js +1 -1
  764. package/dist/src/modules/amxBidAdapter.js +2 -2
  765. package/dist/src/modules/amxBidAdapter.js.map +1 -1
  766. package/dist/src/modules/amxIdSystem.js +1 -1
  767. package/dist/src/modules/aniviewBidAdapter.js +1 -1
  768. package/dist/src/modules/appierAnalyticsAdapter.js +1 -1
  769. package/dist/src/modules/appnexusBidAdapter.js +2 -2
  770. package/dist/src/modules/asoBidAdapter.js +1 -1
  771. package/dist/src/modules/axonixBidAdapter.js +1 -1
  772. package/dist/src/modules/beopBidAdapter.js +2 -2
  773. package/dist/src/modules/bidglassBidAdapter.js +1 -1
  774. package/dist/src/modules/bitmediaBidAdapter.js +1 -1
  775. package/dist/src/modules/blockthroughBidAdapter.js +1 -1
  776. package/dist/src/modules/bmtmBidAdapter.js +1 -1
  777. package/dist/src/modules/bridBidAdapter.js +1 -1
  778. package/dist/src/modules/bridgewellBidAdapter.js +1 -1
  779. package/dist/src/modules/carodaBidAdapter.js +1 -1
  780. package/dist/src/modules/chromeAiRtdProvider.js.map +1 -1
  781. package/dist/src/modules/chtnwBidAdapter.js +1 -1
  782. package/dist/src/modules/concertBidAdapter.js +1 -1
  783. package/dist/src/modules/connectadBidAdapter.js +1 -1
  784. package/dist/src/modules/consentManagementGpp.js.map +1 -1
  785. package/dist/src/modules/consentManagementTcf.js.map +1 -1
  786. package/dist/src/modules/consentManagementUsp.js.map +1 -1
  787. package/dist/src/modules/consumableBidAdapter.js +1 -1
  788. package/dist/src/modules/contxtfulBidAdapter.js +1 -1
  789. package/dist/src/modules/conversantBidAdapter.js +1 -1
  790. package/dist/src/modules/craftBidAdapter.js +1 -1
  791. package/dist/src/modules/criteoBidAdapter.js +2 -2
  792. package/dist/src/modules/currency.js.map +1 -1
  793. package/dist/src/modules/cwireBidAdapter.js +1 -1
  794. package/dist/src/modules/cwireBidAdapter.js.map +1 -1
  795. package/dist/src/modules/dailymotionBidAdapter.js +1 -1
  796. package/dist/src/modules/dailymotionBidAdapter.js.map +1 -1
  797. package/dist/src/modules/dchain.js.map +1 -1
  798. package/dist/src/modules/dspxBidAdapter.js +1 -1
  799. package/dist/src/modules/dspxBidAdapter.js.map +1 -1
  800. package/dist/src/modules/dxkultureBidAdapter.js +1 -1
  801. package/dist/src/modules/eightPodBidAdapter.js.map +1 -1
  802. package/dist/src/modules/eplanningBidAdapter.js +1 -1
  803. package/dist/src/modules/equativBidAdapter.js +1 -1
  804. package/dist/src/modules/eskimiBidAdapter.js +1 -1
  805. package/dist/src/modules/euidIdSystem.js +1 -1
  806. package/dist/src/modules/exadsBidAdapter.js +1 -1
  807. package/dist/src/modules/excoBidAdapter.js +3 -3
  808. package/dist/src/modules/feedadBidAdapter.js +2 -2
  809. package/dist/src/modules/finativeBidAdapter.js +1 -1
  810. package/dist/src/modules/genericAnalyticsAdapter.js.map +1 -1
  811. package/dist/src/modules/geolocationRtdProvider.js.map +1 -1
  812. package/dist/src/modules/getintentBidAdapter.js +4 -2
  813. package/dist/src/modules/getintentBidAdapter.js.map +1 -1
  814. package/dist/src/modules/gmosspBidAdapter.js +1 -1
  815. package/dist/src/modules/gmosspBidAdapter.js.map +1 -1
  816. package/dist/src/modules/gppControl_usstates.js.map +1 -1
  817. package/dist/src/modules/gptPreAuction.d.ts +3 -3
  818. package/dist/src/modules/gptPreAuction.js.map +1 -1
  819. package/dist/src/modules/greenbidsAnalyticsAdapter.js +1 -1
  820. package/dist/src/modules/greenbidsBidAdapter.js +1 -1
  821. package/dist/src/modules/greenbidsRtdProvider.js +1 -1
  822. package/dist/src/modules/gridBidAdapter.js +2 -2
  823. package/dist/src/modules/gumgumBidAdapter.js +2 -2
  824. package/dist/src/modules/h12mediaBidAdapter.js +1 -1
  825. package/dist/src/modules/hypelabBidAdapter.js +1 -1
  826. package/dist/src/modules/iasRtdProvider.js +110 -5
  827. package/dist/src/modules/iasRtdProvider.js.map +1 -1
  828. package/dist/src/modules/id5AnalyticsAdapter.js +1 -1
  829. package/dist/src/modules/id5IdSystem.js +1 -1
  830. package/dist/src/modules/improvedigitalBidAdapter.js +1 -1
  831. package/dist/src/modules/inmobiBidAdapter.js +1 -1
  832. package/dist/src/modules/insticatorBidAdapter.js +1 -1
  833. package/dist/src/modules/intentIqAnalyticsAdapter.js +1 -1
  834. package/dist/src/modules/intentIqAnalyticsAdapter.js.map +1 -1
  835. package/dist/src/modules/intentIqIdSystem.js.map +1 -1
  836. package/dist/src/modules/ixBidAdapter.js +1 -1
  837. package/dist/src/modules/jixieBidAdapter.js +1 -1
  838. package/dist/src/modules/justpremiumBidAdapter.js +1 -1
  839. package/dist/src/modules/jwplayerRtdProvider.js +6 -2
  840. package/dist/src/modules/jwplayerRtdProvider.js.map +1 -1
  841. package/dist/src/modules/jwplayerVideoProvider.js +12 -9
  842. package/dist/src/modules/jwplayerVideoProvider.js.map +1 -1
  843. package/dist/src/modules/kargoBidAdapter.js +1 -1
  844. package/dist/src/modules/kimberliteBidAdapter.js +1 -1
  845. package/dist/src/modules/kubientBidAdapter.js +0 -1
  846. package/dist/src/modules/kubientBidAdapter.js.map +1 -1
  847. package/dist/src/modules/lassoBidAdapter.js +1 -1
  848. package/dist/src/modules/lifestreetBidAdapter.js +1 -1
  849. package/dist/src/modules/logicadBidAdapter.js +1 -1
  850. package/dist/src/modules/luceadBidAdapter.js +1 -1
  851. package/dist/src/modules/mabidderBidAdapter.js +1 -1
  852. package/dist/src/modules/madsenseBidAdapter.js +1 -1
  853. package/dist/src/modules/magniteAnalyticsAdapter.js +1 -1
  854. package/dist/src/modules/malltvAnalyticsAdapter.js +1 -1
  855. package/dist/src/modules/marsmediaBidAdapter.js +1 -1
  856. package/dist/src/modules/mediafuseBidAdapter.js +2 -2
  857. package/dist/src/modules/medianetAnalyticsAdapter.js.map +1 -1
  858. package/dist/src/modules/medianetBidAdapter.js +6 -2
  859. package/dist/src/modules/medianetBidAdapter.js.map +1 -1
  860. package/dist/src/modules/mediasquareBidAdapter.js +2 -2
  861. package/dist/src/modules/mgidBidAdapter.js +1 -1
  862. package/dist/src/modules/michaoBidAdapter.js.map +1 -1
  863. package/dist/src/modules/missenaBidAdapter.js +1 -1
  864. package/dist/src/modules/mobilefuseBidAdapter.js +1 -1
  865. package/dist/src/modules/multibid/index.js.map +1 -1
  866. package/dist/src/modules/nextMillenniumBidAdapter.js +1 -1
  867. package/dist/src/modules/nexverseBidAdapter.js.map +1 -1
  868. package/dist/src/modules/nobidAnalyticsAdapter.js +1 -1
  869. package/dist/src/modules/nobidBidAdapter.js +1 -1
  870. package/dist/src/modules/nodalsAiRtdProvider.js +4 -2
  871. package/dist/src/modules/nodalsAiRtdProvider.js.map +1 -1
  872. package/dist/src/modules/oguryBidAdapter.js +1 -1
  873. package/dist/src/modules/onetagBidAdapter.js +1 -1
  874. package/dist/src/modules/onetagBidAdapter.js.map +1 -1
  875. package/dist/src/modules/ooloAnalyticsAdapter.js +1 -1
  876. package/dist/src/modules/openxBidAdapter.js +1 -1
  877. package/dist/src/modules/optidigitalBidAdapter.js +1 -1
  878. package/dist/src/modules/orbidderBidAdapter.js +1 -1
  879. package/dist/src/modules/outbrainBidAdapter.js +1 -1
  880. package/dist/src/modules/pixfutureBidAdapter.js +2 -2
  881. package/dist/src/modules/prebidServerBidAdapter/index.js.map +1 -1
  882. package/dist/src/modules/priceFloors.js.map +1 -1
  883. package/dist/src/modules/publinkIdSystem.js +1 -1
  884. package/dist/src/modules/pubmaticAnalyticsAdapter.js +2 -2
  885. package/dist/src/modules/pubmaticBidAdapter.js +2 -2
  886. package/dist/src/modules/pubmaticRtdProvider.js.map +1 -1
  887. package/dist/src/modules/pubwiseAnalyticsAdapter.js +1 -1
  888. package/dist/src/modules/pubxaiAnalyticsAdapter.js +1 -1
  889. package/dist/src/modules/pulsepointBidAdapter.js +2 -38
  890. package/dist/src/modules/pulsepointBidAdapter.js.map +1 -1
  891. package/dist/src/modules/pxyzBidAdapter.js +1 -1
  892. package/dist/src/modules/quantcastBidAdapter.js +1 -1
  893. package/dist/src/modules/readpeakBidAdapter.js +1 -1
  894. package/dist/src/modules/readpeakBidAdapter.js.map +1 -1
  895. package/dist/src/modules/relaidoBidAdapter.js +1 -1
  896. package/dist/src/modules/retailspotBidAdapter.js +1 -1
  897. package/dist/src/modules/rhythmoneBidAdapter.js +1 -1
  898. package/dist/src/modules/rtdModule/index.js.map +1 -1
  899. package/dist/src/modules/rtdModule/spec.js.map +1 -1
  900. package/dist/src/modules/rubiconBidAdapter.js +6 -2
  901. package/dist/src/modules/rubiconBidAdapter.js.map +1 -1
  902. package/dist/src/modules/rumbleBidAdapter.js +103 -0
  903. package/dist/src/modules/rumbleBidAdapter.js.map +1 -0
  904. package/dist/src/modules/schain.js.map +1 -1
  905. package/dist/src/modules/seedingAllianceBidAdapter.js +1 -1
  906. package/dist/src/modules/seedtagBidAdapter.js +1 -1
  907. package/dist/src/modules/sevioBidAdapter.js +251 -0
  908. package/dist/src/modules/sevioBidAdapter.js.map +1 -0
  909. package/dist/src/modules/sharedIdSystem.js.map +1 -1
  910. package/dist/src/modules/sharethroughAnalyticsAdapter.js +1 -1
  911. package/dist/src/modules/sharethroughBidAdapter.js +1 -1
  912. package/dist/src/modules/showheroes-bsBidAdapter.js +1 -1
  913. package/dist/src/modules/smaatoBidAdapter.js +1 -1
  914. package/dist/src/modules/smartadserverBidAdapter.js +1 -1
  915. package/dist/src/modules/smartxBidAdapter.js +1 -1
  916. package/dist/src/modules/smilewantedBidAdapter.js +1 -1
  917. package/dist/src/modules/snigelBidAdapter.js +1 -1
  918. package/dist/src/modules/sonaradsBidAdapter.js +2 -2
  919. package/dist/src/modules/sonobiBidAdapter.js +1 -1
  920. package/dist/src/modules/sovrnBidAdapter.js +1 -1
  921. package/dist/src/modules/sparteoBidAdapter.js +1 -1
  922. package/dist/src/modules/sspBCBidAdapter.js +1 -1
  923. package/dist/src/modules/storageControl.js.map +1 -1
  924. package/dist/src/modules/stvBidAdapter.js +1 -1
  925. package/dist/src/modules/sublimeBidAdapter.js +2 -2
  926. package/dist/src/modules/taboolaBidAdapter.js +1 -1
  927. package/dist/src/modules/tappxBidAdapter.js +1 -1
  928. package/dist/src/modules/targetVideoBidAdapter.js +1 -1
  929. package/dist/src/modules/tcfControl.js.map +1 -1
  930. package/dist/src/modules/teadsBidAdapter.js +1 -1
  931. package/dist/src/modules/terceptAnalyticsAdapter.js +1 -1
  932. package/dist/src/modules/themoneytizerBidAdapter.js +1 -3
  933. package/dist/src/modules/themoneytizerBidAdapter.js.map +1 -1
  934. package/dist/src/modules/trionBidAdapter.js +1 -1
  935. package/dist/src/modules/tripleliftBidAdapter.js +1 -1
  936. package/dist/src/modules/ttdBidAdapter.js +9 -2
  937. package/dist/src/modules/ttdBidAdapter.js.map +1 -1
  938. package/dist/src/modules/ucfunnelAnalyticsAdapter.js +1 -1
  939. package/dist/src/modules/uid2IdSystem.js +1 -1
  940. package/dist/src/modules/underdogmediaBidAdapter.js +1 -1
  941. package/dist/src/modules/undertoneBidAdapter.js +1 -1
  942. package/dist/src/modules/unrulyBidAdapter.js +1 -1
  943. package/dist/src/modules/userId/index.js +12 -8
  944. package/dist/src/modules/userId/index.js.map +1 -1
  945. package/dist/src/modules/userId/spec.js.map +1 -1
  946. package/dist/src/modules/validationFpdModule/index.js.map +1 -1
  947. package/dist/src/modules/videoModule/index.js.map +1 -1
  948. package/dist/src/modules/videobyteBidAdapter.js +1 -1
  949. package/dist/src/modules/visxBidAdapter.js +1 -1
  950. package/dist/src/modules/vuukleBidAdapter.js +1 -1
  951. package/dist/src/modules/weboramaRtdProvider.js +30 -11
  952. package/dist/src/modules/weboramaRtdProvider.js.map +1 -1
  953. package/dist/src/modules/welectBidAdapter.js.map +1 -1
  954. package/dist/src/modules/widespaceBidAdapter.js +1 -1
  955. package/dist/src/modules/winrBidAdapter.js +1 -1
  956. package/dist/src/modules/yahooAdsBidAdapter.js +1 -1
  957. package/dist/src/modules/yandexBidAdapter.js +47 -15
  958. package/dist/src/modules/yandexBidAdapter.js.map +1 -1
  959. package/dist/src/modules/yieldmoBidAdapter.js +2 -2
  960. package/dist/src/modules/yieldoneAnalyticsAdapter.js +1 -1
  961. package/dist/src/package.json +1 -1
  962. package/dist/src/public/rumbleBidAdapter.js +1 -0
  963. package/dist/src/public/sevioBidAdapter.js +1 -0
  964. package/dist/src/src/activities/params.d.ts +5 -0
  965. package/dist/src/src/activities/params.js +6 -0
  966. package/dist/src/src/activities/params.js.map +1 -1
  967. package/dist/src/src/activities/redactor.js.map +1 -1
  968. package/dist/src/src/adRendering.js.map +1 -1
  969. package/dist/src/src/adUnits.js.map +1 -1
  970. package/dist/src/src/adapterManager.js.map +1 -1
  971. package/dist/src/src/adapters/bidderFactory.js.map +1 -1
  972. package/dist/src/src/ajax.js.map +1 -1
  973. package/dist/src/src/auction.js.map +1 -1
  974. package/dist/src/src/banner.js.map +1 -1
  975. package/dist/src/src/bidTTL.js.map +1 -1
  976. package/dist/src/src/bidderSettings.js.map +1 -1
  977. package/dist/src/src/bidfactory.js.map +1 -1
  978. package/dist/src/src/config.js +3 -3
  979. package/dist/src/src/config.js.map +1 -1
  980. package/dist/src/src/consentHandler.js.map +1 -1
  981. package/dist/src/src/constants.js.map +1 -1
  982. package/dist/src/src/cpmBucketManager.js.map +1 -1
  983. package/dist/src/src/debugging.js +1 -1
  984. package/dist/src/src/events.js.map +1 -1
  985. package/dist/src/src/fpd/enrichment.js.map +1 -1
  986. package/dist/src/src/hook.js.map +1 -1
  987. package/dist/src/src/mediaTypes.js.map +1 -1
  988. package/dist/src/src/native.js.map +1 -1
  989. package/dist/src/src/prebid.js +2 -2
  990. package/dist/src/src/prebid.js.map +1 -1
  991. package/dist/src/src/prebidGlobal.js.map +1 -1
  992. package/dist/src/src/refererDetection.js.map +1 -1
  993. package/dist/src/src/storageManager.js +26 -25
  994. package/dist/src/src/storageManager.js.map +1 -1
  995. package/dist/src/src/targeting.d.ts +3 -3
  996. package/dist/src/src/targeting.js.map +1 -1
  997. package/dist/src/src/types/common.d.js.map +1 -1
  998. package/dist/src/src/types/common.d.ts +29 -29
  999. package/dist/src/src/types/local/buildOptions.d.js.map +1 -1
  1000. package/dist/src/src/types/local/shim.d.js.map +1 -1
  1001. package/dist/src/src/types/objects.d.js.map +1 -1
  1002. package/dist/src/src/types/objects.d.ts +15 -15
  1003. package/dist/src/src/types/ortb/common.d.js.map +1 -1
  1004. package/dist/src/src/types/ortb/common.d.ts +1 -1
  1005. package/dist/src/src/types/ortb/ext/dchain.d.js.map +1 -1
  1006. package/dist/src/src/types/ortb/ext/dchain.d.ts +69 -69
  1007. package/dist/src/src/types/ortb/ext/dsa.d.js.map +1 -1
  1008. package/dist/src/src/types/ortb/ext/dsa.d.ts +50 -50
  1009. package/dist/src/src/types/ortb/request.d.js.map +1 -1
  1010. package/dist/src/src/types/ortb/request.d.ts +21 -21
  1011. package/dist/src/src/types/ortb/response.d.js.map +1 -1
  1012. package/dist/src/src/types/ortb/response.d.ts +6 -6
  1013. package/dist/src/src/types/summary/core.d.ts +5 -5
  1014. package/dist/src/src/types/summary/modules.d.ts +2 -2
  1015. package/dist/src/src/userSync.js.map +1 -1
  1016. package/dist/src/src/utils/objects.js.map +1 -1
  1017. package/dist/src/src/utils/perfMetrics.js.map +1 -1
  1018. package/dist/src/src/utils/promise.js.map +1 -1
  1019. package/dist/src/src/utils/ttlCollection.js.map +1 -1
  1020. package/dist/src/src/video.js.map +1 -1
  1021. package/dist/src/src/videoCache.js.map +1 -1
  1022. package/dist/src/test/helpers/index_adapter_utils.js +1 -1
  1023. package/dist/src/test/helpers/index_adapter_utils.js.map +1 -1
  1024. package/dist/src/test/helpers/refererDetectionHelper.js.map +1 -1
  1025. package/dist/src/test/mocks/timers.js +12 -12
  1026. package/dist/src/test/mocks/timers.js.map +1 -1
  1027. package/dist/src/test/spec/adloader_spec.js.map +1 -1
  1028. package/dist/src/test/spec/config_spec.js +9 -3
  1029. package/dist/src/test/spec/config_spec.js.map +1 -1
  1030. package/dist/src/test/spec/libraries/greedy/greedyPromise_spec.js +2 -2
  1031. package/dist/src/test/spec/libraries/greedy/greedyPromise_spec.js.map +1 -1
  1032. package/dist/src/test/spec/modules/1plusXRtdProvider_spec.js +2 -9
  1033. package/dist/src/test/spec/modules/1plusXRtdProvider_spec.js.map +1 -1
  1034. package/dist/src/test/spec/modules/33acrossAnalyticsAdapter_spec.js +2 -2
  1035. package/dist/src/test/spec/modules/33acrossBidAdapter_spec.js +1 -1
  1036. package/dist/src/test/spec/modules/33acrossIdSystem_spec.js +1 -1
  1037. package/dist/src/test/spec/modules/adagioAnalyticsAdapter_spec.js +4 -4
  1038. package/dist/src/test/spec/modules/adgridBidAdapter_spec.js.map +1 -1
  1039. package/dist/src/test/spec/modules/adkernelAdnBidAdapter_spec.js.map +1 -1
  1040. package/dist/src/test/spec/modules/adkernelBidAdapter_spec.js.map +1 -1
  1041. package/dist/src/test/spec/modules/admediaBidAdapter_spec.js.map +1 -1
  1042. package/dist/src/test/spec/modules/adnuntiusBidAdapter_spec.js.map +1 -1
  1043. package/dist/src/test/spec/modules/adqueryBidAdapter_spec.js +1 -1
  1044. package/dist/src/test/spec/modules/adrelevantisBidAdapter_spec.js +1 -1
  1045. package/dist/src/test/spec/modules/adspiritBidAdapter_spec.js.map +1 -1
  1046. package/dist/src/test/spec/modules/adtrgtmeBidAdapter_spec.js +1 -1
  1047. package/dist/src/test/spec/modules/adtrgtmeBidAdapter_spec.js.map +1 -1
  1048. package/dist/src/test/spec/modules/adtrueBidAdapter_spec.js.map +1 -1
  1049. package/dist/src/test/spec/modules/advertisingBidAdapter_spec.js +9 -9
  1050. package/dist/src/test/spec/modules/advertisingBidAdapter_spec.js.map +1 -1
  1051. package/dist/src/test/spec/modules/adyoulikeBidAdapter_spec.js +3 -3
  1052. package/dist/src/test/spec/modules/ajaBidAdapter_spec.js +2 -2
  1053. package/dist/src/test/spec/modules/amxBidAdapter_spec.js +2 -2
  1054. package/dist/src/test/spec/modules/appierAnalyticsAdapter_spec.js +1 -1
  1055. package/dist/src/test/spec/modules/appnexusBidAdapter_spec.js +2 -2
  1056. package/dist/src/test/spec/modules/asoBidAdapter_spec.js +1 -1
  1057. package/dist/src/test/spec/modules/bidmaticBidAdapter_spec.js.map +1 -1
  1058. package/dist/src/test/spec/modules/blockthroughBidAdapter_spec.js +1 -1
  1059. package/dist/src/test/spec/modules/bridBidAdapter_spec.js +1 -1
  1060. package/dist/src/test/spec/modules/criteoBidAdapter_spec.js +1 -1
  1061. package/dist/src/test/spec/modules/dailymotionBidAdapter_spec.js +4 -4
  1062. package/dist/src/test/spec/modules/datablocksBidAdapter_spec.js.map +1 -1
  1063. package/dist/src/test/spec/modules/deepintentBidAdapter_spec.js.map +1 -1
  1064. package/dist/src/test/spec/modules/dexertoBidAdapter_spec.js.map +1 -1
  1065. package/dist/src/test/spec/modules/dochaseBidAdapter_spec.js.map +1 -1
  1066. package/dist/src/test/spec/modules/dspxBidAdapter_spec.js.map +1 -1
  1067. package/dist/src/test/spec/modules/dxkultureBidAdapter_spec.js +1 -1
  1068. package/dist/src/test/spec/modules/ehealthcaresolutionsBidAdapter_spec.js.map +1 -1
  1069. package/dist/src/test/spec/modules/enrichmentLiftMeasurement_spec.js.map +1 -1
  1070. package/dist/src/test/spec/modules/eplanningBidAdapter_spec.js +1 -1
  1071. package/dist/src/test/spec/modules/equativBidAdapter_spec.js +1 -1
  1072. package/dist/src/test/spec/modules/equativBidAdapter_spec.js.map +1 -1
  1073. package/dist/src/test/spec/modules/excoBidAdapter_spec.js +1 -1
  1074. package/dist/src/test/spec/modules/feedadBidAdapter_spec.js +2 -2
  1075. package/dist/src/test/spec/modules/finativeBidAdapter_spec.js.map +1 -1
  1076. package/dist/src/test/spec/modules/ftrackIdSystem_spec.js.map +1 -1
  1077. package/dist/src/test/spec/modules/fwsspBidAdapter_spec.js.map +1 -1
  1078. package/dist/src/test/spec/modules/gmosspBidAdapter_spec.js +2 -2
  1079. package/dist/src/test/spec/modules/greenbidsAnalyticsAdapter_spec.js +1 -1
  1080. package/dist/src/test/spec/modules/gridBidAdapter_spec.js +6 -6
  1081. package/dist/src/test/spec/modules/gumgumBidAdapter_spec.js +1 -1
  1082. package/dist/src/test/spec/modules/hypelabBidAdapter_spec.js.map +1 -1
  1083. package/dist/src/test/spec/modules/iasRtdProvider_spec.js +104 -1
  1084. package/dist/src/test/spec/modules/iasRtdProvider_spec.js.map +1 -1
  1085. package/dist/src/test/spec/modules/id5IdSystem_spec.js +4 -4
  1086. package/dist/src/test/spec/modules/insticatorBidAdapter_spec.js +1 -1
  1087. package/dist/src/test/spec/modules/intentIqIdSystem_spec.js.map +1 -1
  1088. package/dist/src/test/spec/modules/invibesBidAdapter_spec.js.map +1 -1
  1089. package/dist/src/test/spec/modules/ixBidAdapter_spec.js +2 -2
  1090. package/dist/src/test/spec/modules/justpremiumBidAdapter_spec.js +1 -1
  1091. package/dist/src/test/spec/modules/kargoBidAdapter_spec.js +1 -1
  1092. package/dist/src/test/spec/modules/kargoBidAdapter_spec.js.map +1 -1
  1093. package/dist/src/test/spec/modules/lane4BidAdapter_spec.js.map +1 -1
  1094. package/dist/src/test/spec/modules/lemmaDigitalBidAdapter_spec.js.map +1 -1
  1095. package/dist/src/test/spec/modules/liveIntentExternalIdSystem_spec.js +10 -10
  1096. package/dist/src/test/spec/modules/liveIntentIdSystem_spec.js +1 -1
  1097. package/dist/src/test/spec/modules/liveIntentRtdProvider_spec.js.map +1 -1
  1098. package/dist/src/test/spec/modules/magniteAnalyticsAdapter_spec.js +1 -1
  1099. package/dist/src/test/spec/modules/malltvAnalyticsAdapter_spec.js +1 -1
  1100. package/dist/src/test/spec/modules/mediaeyesBidAdapter_spec.js.map +1 -1
  1101. package/dist/src/test/spec/modules/mediafuseBidAdapter_spec.js +2 -2
  1102. package/dist/src/test/spec/modules/mediagoBidAdapter_spec.js.map +1 -1
  1103. package/dist/src/test/spec/modules/medianetBidAdapter_spec.js +43 -26
  1104. package/dist/src/test/spec/modules/medianetBidAdapter_spec.js.map +1 -1
  1105. package/dist/src/test/spec/modules/mediasquareBidAdapter_spec.js.map +1 -1
  1106. package/dist/src/test/spec/modules/missenaBidAdapter_spec.js +1 -1
  1107. package/dist/src/test/spec/modules/nexx360BidAdapter_spec.js.map +1 -1
  1108. package/dist/src/test/spec/modules/nobidAnalyticsAdapter_spec.js +1 -1
  1109. package/dist/src/test/spec/modules/nobidBidAdapter_spec.js +1 -1
  1110. package/dist/src/test/spec/modules/nobidBidAdapter_spec.js.map +1 -1
  1111. package/dist/src/test/spec/modules/oguryBidAdapter_spec.js +1 -1
  1112. package/dist/src/test/spec/modules/onetagBidAdapter_spec.js.map +1 -1
  1113. package/dist/src/test/spec/modules/optoutBidAdapter_spec.js.map +1 -1
  1114. package/dist/src/test/spec/modules/orbitsoftBidAdapter_spec.js.map +1 -1
  1115. package/dist/src/test/spec/modules/outbrainBidAdapter_spec.js +3 -3
  1116. package/dist/src/test/spec/modules/oxxionAnalyticsAdapter_spec.js.map +1 -1
  1117. package/dist/src/test/spec/modules/ozoneBidAdapter_spec.js.map +1 -1
  1118. package/dist/src/test/spec/modules/prebidServerBidAdapter_spec.js +4 -4
  1119. package/dist/src/test/spec/modules/prebidServerBidAdapter_spec.js.map +1 -1
  1120. package/dist/src/test/spec/modules/prismaBidAdapter_spec.js.map +1 -1
  1121. package/dist/src/test/spec/modules/publinkIdSystem_spec.js +5 -5
  1122. package/dist/src/test/spec/modules/pubmaticAnalyticsAdapter_spec.js +6 -6
  1123. package/dist/src/test/spec/modules/pubmaticBidAdapter_spec.js.map +1 -1
  1124. package/dist/src/test/spec/modules/pubmaticRtdProvider_spec.js.map +1 -1
  1125. package/dist/src/test/spec/modules/pubwiseAnalyticsAdapter_spec.js +1 -1
  1126. package/dist/src/test/spec/modules/pubxaiAnalyticsAdapter_spec.js +6 -6
  1127. package/dist/src/test/spec/modules/pwbidBidAdapter_spec.js.map +1 -1
  1128. package/dist/src/test/spec/modules/quantcastBidAdapter_spec.js +6 -6
  1129. package/dist/src/test/spec/modules/readpeakBidAdapter_spec.js +4 -4
  1130. package/dist/src/test/spec/modules/relaidoBidAdapter_spec.js +1 -1
  1131. package/dist/src/test/spec/modules/relevadRtdProvider_spec.js.map +1 -1
  1132. package/dist/src/test/spec/modules/relevatehealthBidAdapter_spec.js.map +1 -1
  1133. package/dist/src/test/spec/modules/richaudienceBidAdapter_spec.js.map +1 -1
  1134. package/dist/src/test/spec/modules/rubiconBidAdapter_spec.js +2 -2
  1135. package/dist/src/test/spec/modules/rubiconBidAdapter_spec.js.map +1 -1
  1136. package/dist/src/test/spec/modules/rumbleBidAdapter_spec.js +110 -0
  1137. package/dist/src/test/spec/modules/rumbleBidAdapter_spec.js.map +1 -0
  1138. package/dist/src/test/spec/modules/sevioBidAdapter_spec.js +182 -0
  1139. package/dist/src/test/spec/modules/sevioBidAdapter_spec.js.map +1 -0
  1140. package/dist/src/test/spec/modules/smaatoBidAdapter_spec.js.map +1 -1
  1141. package/dist/src/test/spec/modules/smarticoBidAdapter_spec.js.map +1 -1
  1142. package/dist/src/test/spec/modules/smartxBidAdapter_spec.js +1 -1
  1143. package/dist/src/test/spec/modules/sonaradsBidAdapter_spec.js +5 -5
  1144. package/dist/src/test/spec/modules/sovrnBidAdapter_spec.js +1 -1
  1145. package/dist/src/test/spec/modules/sparteoBidAdapter_spec.js +3 -3
  1146. package/dist/src/test/spec/modules/sspBCBidAdapter_spec.js +1 -1
  1147. package/dist/src/test/spec/modules/stvBidAdapter_spec.js.map +1 -1
  1148. package/dist/src/test/spec/modules/taboolaBidAdapter_spec.js +1 -1
  1149. package/dist/src/test/spec/modules/tapnativeBidAdapter_spec.js.map +1 -1
  1150. package/dist/src/test/spec/modules/targetVideoBidAdapter_spec.js +2 -2
  1151. package/dist/src/test/spec/modules/themoneytizerBidAdapter_spec.js +0 -5
  1152. package/dist/src/test/spec/modules/themoneytizerBidAdapter_spec.js.map +1 -1
  1153. package/dist/src/test/spec/modules/trionBidAdapter_spec.js +1 -1
  1154. package/dist/src/test/spec/modules/ttdBidAdapter_spec.js +24 -3
  1155. package/dist/src/test/spec/modules/ttdBidAdapter_spec.js.map +1 -1
  1156. package/dist/src/test/spec/modules/ucfunnelAnalyticsAdapter_spec.js +1 -1
  1157. package/dist/src/test/spec/modules/uid2IdSystem_spec.js.map +1 -1
  1158. package/dist/src/test/spec/modules/unrulyBidAdapter_spec.js +3 -3
  1159. package/dist/src/test/spec/modules/userId_spec.js +41 -6
  1160. package/dist/src/test/spec/modules/userId_spec.js.map +1 -1
  1161. package/dist/src/test/spec/modules/videoModule/submodules/jwplayerVideoProvider_spec.js +1738 -9
  1162. package/dist/src/test/spec/modules/videoModule/submodules/jwplayerVideoProvider_spec.js.map +1 -1
  1163. package/dist/src/test/spec/modules/videobyteBidAdapter_spec.js +1 -1
  1164. package/dist/src/test/spec/modules/visxBidAdapter_spec.js +12 -12
  1165. package/dist/src/test/spec/modules/winrBidAdapter_spec.js +1 -1
  1166. package/dist/src/test/spec/modules/yahooAdsBidAdapter_spec.js +1 -1
  1167. package/dist/src/test/spec/modules/yandexBidAdapter_spec.js +107 -2
  1168. package/dist/src/test/spec/modules/yandexBidAdapter_spec.js.map +1 -1
  1169. package/dist/src/test/spec/modules/yieldoneAnalyticsAdapter_spec.js +2 -2
  1170. package/dist/src/test/spec/refererDetection_spec.js.map +1 -1
  1171. package/dist/src/test/spec/unit/core/storageManager_spec.js +18 -1
  1172. package/dist/src/test/spec/unit/core/storageManager_spec.js.map +1 -1
  1173. package/dist/src/test/spec/unit/core/targeting_spec.js.map +1 -1
  1174. package/dist/src/test/spec/utils_spec.js.map +1 -1
  1175. package/eslint.config.js +2 -6
  1176. package/libraries/analyticsAdapter/AnalyticsAdapter.ts +28 -28
  1177. package/libraries/appnexusUtils/anKeywords.js +11 -0
  1178. package/libraries/consentManagement/cmUtils.ts +18 -18
  1179. package/libraries/creative-renderer-display/renderer.js +1 -1
  1180. package/libraries/cryptoUtils/wallets.js +38 -0
  1181. package/libraries/dspxUtils/bidderUtils.js +1 -1
  1182. package/libraries/impUtils.js +33 -0
  1183. package/libraries/nexx360Utils/index.js +8 -8
  1184. package/libraries/ortbConverter/converter.ts +79 -79
  1185. package/libraries/video/constants/events.ts +5 -5
  1186. package/metadata/modules/33acrossBidAdapter.json +1 -1
  1187. package/metadata/modules/33acrossIdSystem.json +1 -1
  1188. package/metadata/modules/acuityadsBidAdapter.json +1 -1
  1189. package/metadata/modules/adagioBidAdapter.json +1 -1
  1190. package/metadata/modules/adagioRtdProvider.json +1 -1
  1191. package/metadata/modules/addefendBidAdapter.json +1 -1
  1192. package/metadata/modules/adfBidAdapter.json +1 -1
  1193. package/metadata/modules/adfusionBidAdapter.json +1 -1
  1194. package/metadata/modules/adheseBidAdapter.json +1 -1
  1195. package/metadata/modules/adkernelAdnBidAdapter.json +1 -1
  1196. package/metadata/modules/adkernelBidAdapter.json +4 -4
  1197. package/metadata/modules/admaticBidAdapter.json +2 -2
  1198. package/metadata/modules/admixerBidAdapter.json +8 -1
  1199. package/metadata/modules/admixerIdSystem.json +1 -1
  1200. package/metadata/modules/adnowBidAdapter.json +1 -1
  1201. package/metadata/modules/adnuntiusBidAdapter.json +1 -1
  1202. package/metadata/modules/adnuntiusRtdProvider.json +1 -1
  1203. package/metadata/modules/adotBidAdapter.json +1 -1
  1204. package/metadata/modules/adponeBidAdapter.json +1 -1
  1205. package/metadata/modules/adqueryBidAdapter.json +1 -1
  1206. package/metadata/modules/adqueryIdSystem.json +1 -1
  1207. package/metadata/modules/adrinoBidAdapter.json +1 -1
  1208. package/metadata/modules/ads_interactiveBidAdapter.json +1 -1
  1209. package/metadata/modules/adtargetBidAdapter.json +1 -1
  1210. package/metadata/modules/adtelligentBidAdapter.json +3 -3
  1211. package/metadata/modules/adtelligentIdSystem.json +1 -1
  1212. package/metadata/modules/aduptechBidAdapter.json +1 -1
  1213. package/metadata/modules/adyoulikeBidAdapter.json +1 -1
  1214. package/metadata/modules/aidemBidAdapter.json +1 -1
  1215. package/metadata/modules/airgridRtdProvider.json +1 -1
  1216. package/metadata/modules/alkimiBidAdapter.json +1 -1
  1217. package/metadata/modules/ampliffyBidAdapter.json +1 -1
  1218. package/metadata/modules/amxBidAdapter.json +1 -1
  1219. package/metadata/modules/amxIdSystem.json +1 -1
  1220. package/metadata/modules/aniviewBidAdapter.json +1 -1
  1221. package/metadata/modules/anonymisedRtdProvider.json +1 -1
  1222. package/metadata/modules/appierBidAdapter.json +15 -29
  1223. package/metadata/modules/appnexusBidAdapter.json +5 -5
  1224. package/metadata/modules/appushBidAdapter.json +1 -1
  1225. package/metadata/modules/apstreamBidAdapter.json +1 -1
  1226. package/metadata/modules/audiencerunBidAdapter.json +1 -1
  1227. package/metadata/modules/axisBidAdapter.json +1 -1
  1228. package/metadata/modules/azerionedgeRtdProvider.json +1 -1
  1229. package/metadata/modules/beopBidAdapter.json +1 -1
  1230. package/metadata/modules/betweenBidAdapter.json +1 -1
  1231. package/metadata/modules/bidmaticBidAdapter.json +1 -1
  1232. package/metadata/modules/bidtheatreBidAdapter.json +1 -1
  1233. package/metadata/modules/bliinkBidAdapter.json +1 -1
  1234. package/metadata/modules/blockthroughBidAdapter.json +1 -1
  1235. package/metadata/modules/blueBidAdapter.json +1 -1
  1236. package/metadata/modules/bmsBidAdapter.json +1 -1
  1237. package/metadata/modules/boldwinBidAdapter.json +1 -1
  1238. package/metadata/modules/bridBidAdapter.json +1 -1
  1239. package/metadata/modules/browsiBidAdapter.json +1 -1
  1240. package/metadata/modules/bucksenseBidAdapter.json +1 -1
  1241. package/metadata/modules/carodaBidAdapter.json +1 -1
  1242. package/metadata/modules/categoryTranslation.json +1 -1
  1243. package/metadata/modules/ccxBidAdapter.json +1 -1
  1244. package/metadata/modules/ceeIdSystem.json +1 -1
  1245. package/metadata/modules/chromeAiRtdProvider.json +1 -1
  1246. package/metadata/modules/compassBidAdapter.json +1 -1
  1247. package/metadata/modules/conceptxBidAdapter.json +1 -1
  1248. package/metadata/modules/connatixBidAdapter.json +1 -1
  1249. package/metadata/modules/connectIdSystem.json +1 -1
  1250. package/metadata/modules/connectadBidAdapter.json +1 -1
  1251. package/metadata/modules/contentexchangeBidAdapter.json +1 -1
  1252. package/metadata/modules/conversantBidAdapter.json +1 -1
  1253. package/metadata/modules/copper6sspBidAdapter.json +1 -1
  1254. package/metadata/modules/cpmstarBidAdapter.json +1 -1
  1255. package/metadata/modules/criteoBidAdapter.json +1 -1
  1256. package/metadata/modules/criteoIdSystem.json +1 -1
  1257. package/metadata/modules/cwireBidAdapter.json +1 -1
  1258. package/metadata/modules/czechAdIdSystem.json +1 -1
  1259. package/metadata/modules/dailymotionBidAdapter.json +1 -1
  1260. package/metadata/modules/debugging.json +1 -1
  1261. package/metadata/modules/deepintentBidAdapter.json +1 -1
  1262. package/metadata/modules/deltaprojectsBidAdapter.json +1 -1
  1263. package/metadata/modules/dianomiBidAdapter.json +1 -1
  1264. package/metadata/modules/digitalMatterBidAdapter.json +1 -1
  1265. package/metadata/modules/distroscaleBidAdapter.json +1 -1
  1266. package/metadata/modules/docereeAdManagerBidAdapter.json +3 -3
  1267. package/metadata/modules/docereeBidAdapter.json +3 -3
  1268. package/metadata/modules/dspxBidAdapter.json +1 -1
  1269. package/metadata/modules/e_volutionBidAdapter.json +1 -1
  1270. package/metadata/modules/edge226BidAdapter.json +3 -3
  1271. package/metadata/modules/equativBidAdapter.json +1 -1
  1272. package/metadata/modules/eskimiBidAdapter.json +1 -1
  1273. package/metadata/modules/etargetBidAdapter.json +1 -1
  1274. package/metadata/modules/euidIdSystem.json +1 -1
  1275. package/metadata/modules/exadsBidAdapter.json +1 -1
  1276. package/metadata/modules/feedadBidAdapter.json +1 -1
  1277. package/metadata/modules/fwsspBidAdapter.json +1 -1
  1278. package/metadata/modules/gamoshiBidAdapter.json +1 -1
  1279. package/metadata/modules/glomexBidAdapter.json +1 -1
  1280. package/metadata/modules/goldbachBidAdapter.json +1 -1
  1281. package/metadata/modules/greenbidsBidAdapter.json +1 -1
  1282. package/metadata/modules/gridBidAdapter.json +1 -1
  1283. package/metadata/modules/gumgumBidAdapter.json +1 -1
  1284. package/metadata/modules/hadronIdSystem.json +1 -1
  1285. package/metadata/modules/hadronRtdProvider.json +1 -1
  1286. package/metadata/modules/holidBidAdapter.json +1 -1
  1287. package/metadata/modules/hybridBidAdapter.json +1 -1
  1288. package/metadata/modules/id5IdSystem.json +1 -1
  1289. package/metadata/modules/identityLinkIdSystem.json +1 -1
  1290. package/metadata/modules/illuminBidAdapter.json +1 -1
  1291. package/metadata/modules/impactifyBidAdapter.json +1 -1
  1292. package/metadata/modules/improvedigitalBidAdapter.json +1 -1
  1293. package/metadata/modules/inmobiBidAdapter.json +1 -1
  1294. package/metadata/modules/innityBidAdapter.json +1 -1
  1295. package/metadata/modules/insticatorBidAdapter.json +1 -1
  1296. package/metadata/modules/intentIqIdSystem.json +1 -1
  1297. package/metadata/modules/invibesBidAdapter.json +1 -1
  1298. package/metadata/modules/ipromBidAdapter.json +1 -1
  1299. package/metadata/modules/ixBidAdapter.json +1 -1
  1300. package/metadata/modules/justIdSystem.json +1 -1
  1301. package/metadata/modules/justpremiumBidAdapter.json +1 -1
  1302. package/metadata/modules/jwplayerBidAdapter.json +1 -1
  1303. package/metadata/modules/kargoBidAdapter.json +1 -1
  1304. package/metadata/modules/kubientBidAdapter.json +3 -8
  1305. package/metadata/modules/kueezRtbBidAdapter.json +1 -1
  1306. package/metadata/modules/limelightDigitalBidAdapter.json +2 -2
  1307. package/metadata/modules/liveIntentIdSystem.json +1 -1
  1308. package/metadata/modules/liveIntentRtdProvider.json +1 -1
  1309. package/metadata/modules/livewrappedBidAdapter.json +1 -1
  1310. package/metadata/modules/loopmeBidAdapter.json +1 -1
  1311. package/metadata/modules/lotamePanoramaIdSystem.json +1 -1
  1312. package/metadata/modules/luceadBidAdapter.json +1 -1
  1313. package/metadata/modules/luponmediaBidAdapter.json +1 -1
  1314. package/metadata/modules/madvertiseBidAdapter.json +1 -1
  1315. package/metadata/modules/marsmediaBidAdapter.json +1 -1
  1316. package/metadata/modules/mediaConsortiumBidAdapter.json +1 -1
  1317. package/metadata/modules/mediaforceBidAdapter.json +1 -1
  1318. package/metadata/modules/mediafuseBidAdapter.json +1 -1
  1319. package/metadata/modules/mediagoBidAdapter.json +1 -1
  1320. package/metadata/modules/mediakeysBidAdapter.json +1 -1
  1321. package/metadata/modules/medianetBidAdapter.json +2 -2
  1322. package/metadata/modules/mediasquareBidAdapter.json +1 -1
  1323. package/metadata/modules/mgidBidAdapter.json +1 -1
  1324. package/metadata/modules/mgidRtdProvider.json +1 -1
  1325. package/metadata/modules/mgidXBidAdapter.json +1 -1
  1326. package/metadata/modules/minutemediaBidAdapter.json +1 -1
  1327. package/metadata/modules/missenaBidAdapter.json +1 -1
  1328. package/metadata/modules/mobianRtdProvider.json +1 -1
  1329. package/metadata/modules/mobilefuseBidAdapter.json +1 -1
  1330. package/metadata/modules/mobkoiBidAdapter.json +1 -1
  1331. package/metadata/modules/mobkoiIdSystem.json +1 -1
  1332. package/metadata/modules/nativeryBidAdapter.json +1 -1
  1333. package/metadata/modules/nativoBidAdapter.json +1 -1
  1334. package/metadata/modules/newspassidBidAdapter.json +1 -1
  1335. package/metadata/modules/nextMillenniumBidAdapter.json +1 -1
  1336. package/metadata/modules/nextrollBidAdapter.json +1 -1
  1337. package/metadata/modules/nexx360BidAdapter.json +8 -8
  1338. package/metadata/modules/nobidBidAdapter.json +2 -2
  1339. package/metadata/modules/nodalsAiRtdProvider.json +1 -1
  1340. package/metadata/modules/novatiqIdSystem.json +1 -1
  1341. package/metadata/modules/oguryBidAdapter.json +1 -1
  1342. package/metadata/modules/omsBidAdapter.json +1 -1
  1343. package/metadata/modules/onetagBidAdapter.json +1 -1
  1344. package/metadata/modules/openwebBidAdapter.json +1 -1
  1345. package/metadata/modules/openxBidAdapter.json +1 -1
  1346. package/metadata/modules/operaadsBidAdapter.json +1 -1
  1347. package/metadata/modules/optidigitalBidAdapter.json +1 -1
  1348. package/metadata/modules/optoutBidAdapter.json +1 -1
  1349. package/metadata/modules/orbidderBidAdapter.json +1 -1
  1350. package/metadata/modules/outbrainBidAdapter.json +1 -1
  1351. package/metadata/modules/ozoneBidAdapter.json +1 -1
  1352. package/metadata/modules/pairIdSystem.json +1 -1
  1353. package/metadata/modules/performaxBidAdapter.json +4 -5
  1354. package/metadata/modules/pgamsspBidAdapter.json +1 -1
  1355. package/metadata/modules/pixfutureBidAdapter.json +1 -1
  1356. package/metadata/modules/playdigoBidAdapter.json +1 -1
  1357. package/metadata/modules/prebid-core.json +2 -2
  1358. package/metadata/modules/precisoBidAdapter.json +1 -1
  1359. package/metadata/modules/prismaBidAdapter.json +1 -1
  1360. package/metadata/modules/programmaticXBidAdapter.json +1 -1
  1361. package/metadata/modules/proxistoreBidAdapter.json +1 -1
  1362. package/metadata/modules/publinkIdSystem.json +1 -1
  1363. package/metadata/modules/pubmaticBidAdapter.json +1 -1
  1364. package/metadata/modules/pubmaticIdSystem.json +1 -1
  1365. package/metadata/modules/pulsepointBidAdapter.json +1 -1
  1366. package/metadata/modules/pwbidBidAdapter.json +1 -1
  1367. package/metadata/modules/qtBidAdapter.json +1 -1
  1368. package/metadata/modules/quantcastBidAdapter.json +1 -1
  1369. package/metadata/modules/quantcastIdSystem.json +1 -1
  1370. package/metadata/modules/r2b2BidAdapter.json +1 -1
  1371. package/metadata/modules/raynRtdProvider.json +1 -1
  1372. package/metadata/modules/readpeakBidAdapter.json +1 -1
  1373. package/metadata/modules/relayBidAdapter.json +1 -1
  1374. package/metadata/modules/relevantdigitalBidAdapter.json +1 -1
  1375. package/metadata/modules/resetdigitalBidAdapter.json +1 -1
  1376. package/metadata/modules/responsiveAdsBidAdapter.json +1 -1
  1377. package/metadata/modules/retailspotBidAdapter.json +1 -1
  1378. package/metadata/modules/revcontentBidAdapter.json +7 -117
  1379. package/metadata/modules/rhythmoneBidAdapter.json +1 -1
  1380. package/metadata/modules/richaudienceBidAdapter.json +1 -1
  1381. package/metadata/modules/riseBidAdapter.json +2 -2
  1382. package/metadata/modules/rixengineBidAdapter.json +1 -1
  1383. package/metadata/modules/rtbhouseBidAdapter.json +1 -1
  1384. package/metadata/modules/rubiconBidAdapter.json +1 -1
  1385. package/metadata/modules/rumbleBidAdapter.json +13 -0
  1386. package/metadata/modules/scatteredBidAdapter.json +1 -1
  1387. package/metadata/modules/seedingAllianceBidAdapter.json +1 -1
  1388. package/metadata/modules/seedtagBidAdapter.json +1 -1
  1389. package/metadata/modules/semantiqRtdProvider.json +1 -1
  1390. package/metadata/modules/setupadBidAdapter.json +1 -1
  1391. package/metadata/modules/sevioBidAdapter.json +18 -0
  1392. package/metadata/modules/sharedIdSystem.json +1 -1
  1393. package/metadata/modules/sharethroughBidAdapter.json +1 -1
  1394. package/metadata/modules/showheroes-bsBidAdapter.json +1 -1
  1395. package/metadata/modules/silvermobBidAdapter.json +1 -1
  1396. package/metadata/modules/sirdataRtdProvider.json +1 -1
  1397. package/metadata/modules/slimcutBidAdapter.json +1 -1
  1398. package/metadata/modules/smaatoBidAdapter.json +1 -1
  1399. package/metadata/modules/smartadserverBidAdapter.json +1 -1
  1400. package/metadata/modules/smartxBidAdapter.json +1 -1
  1401. package/metadata/modules/smartyadsBidAdapter.json +1 -1
  1402. package/metadata/modules/smilewantedBidAdapter.json +1 -1
  1403. package/metadata/modules/snigelBidAdapter.json +1 -1
  1404. package/metadata/modules/sonaradsBidAdapter.json +1 -1
  1405. package/metadata/modules/sonobiBidAdapter.json +1 -1
  1406. package/metadata/modules/sovrnBidAdapter.json +4 -4
  1407. package/metadata/modules/sparteoBidAdapter.json +1 -1
  1408. package/metadata/modules/ssmasBidAdapter.json +1 -1
  1409. package/metadata/modules/sspBCBidAdapter.json +1 -1
  1410. package/metadata/modules/stackadaptBidAdapter.json +1 -1
  1411. package/metadata/modules/startioBidAdapter.json +1 -1
  1412. package/metadata/modules/stroeerCoreBidAdapter.json +1 -1
  1413. package/metadata/modules/stvBidAdapter.json +1 -1
  1414. package/metadata/modules/sublimeBidAdapter.json +1 -1
  1415. package/metadata/modules/taboolaBidAdapter.json +1 -1
  1416. package/metadata/modules/taboolaIdSystem.json +1 -1
  1417. package/metadata/modules/tappxBidAdapter.json +1 -1
  1418. package/metadata/modules/targetVideoBidAdapter.json +1 -1
  1419. package/metadata/modules/teadsBidAdapter.json +1 -1
  1420. package/metadata/modules/teadsIdSystem.json +1 -1
  1421. package/metadata/modules/tealBidAdapter.json +1 -1
  1422. package/metadata/modules/themoneytizerBidAdapter.json +3 -8
  1423. package/metadata/modules/tncIdSystem.json +1 -1
  1424. package/metadata/modules/topicsFpdModule.json +1 -1
  1425. package/metadata/modules/tripleliftBidAdapter.json +1 -1
  1426. package/metadata/modules/ttdBidAdapter.json +1 -1
  1427. package/metadata/modules/twistDigitalBidAdapter.json +1 -1
  1428. package/metadata/modules/underdogmediaBidAdapter.json +1 -1
  1429. package/metadata/modules/undertoneBidAdapter.json +1 -1
  1430. package/metadata/modules/unifiedIdSystem.json +1 -1
  1431. package/metadata/modules/unrulyBidAdapter.json +1 -1
  1432. package/metadata/modules/userId.json +1 -1
  1433. package/metadata/modules/validationFpdModule.json +1 -1
  1434. package/metadata/modules/vidazooBidAdapter.json +1 -1
  1435. package/metadata/modules/vidoomyBidAdapter.json +1 -1
  1436. package/metadata/modules/viewdeosDXBidAdapter.json +1 -1
  1437. package/metadata/modules/viouslyBidAdapter.json +1 -1
  1438. package/metadata/modules/visxBidAdapter.json +1 -1
  1439. package/metadata/modules/vlybyBidAdapter.json +1 -1
  1440. package/metadata/modules/voxBidAdapter.json +1 -1
  1441. package/metadata/modules/vrtcalBidAdapter.json +1 -1
  1442. package/metadata/modules/vuukleBidAdapter.json +1 -1
  1443. package/metadata/modules/weboramaRtdProvider.json +1 -1
  1444. package/metadata/modules/welectBidAdapter.json +1 -1
  1445. package/metadata/modules/yahooAdsBidAdapter.json +1 -1
  1446. package/metadata/modules/yieldlabBidAdapter.json +1 -1
  1447. package/metadata/modules/yieldliftBidAdapter.json +1 -1
  1448. package/metadata/modules/yieldloveBidAdapter.json +1 -1
  1449. package/metadata/modules/yieldmoBidAdapter.json +1 -1
  1450. package/metadata/modules/zeotapIdPlusIdSystem.json +1 -1
  1451. package/metadata/modules/zeta_globalBidAdapter.json +1 -1
  1452. package/metadata/modules/zeta_global_sspBidAdapter.json +1 -1
  1453. package/metadata/modules.json +23 -2
  1454. package/modules/1plusXRtdProvider.js +6 -2
  1455. package/modules/adWMGBidAdapter.js +8 -8
  1456. package/modules/admixerBidAdapter.js +9 -4
  1457. package/modules/adspiritBidAdapter.js +8 -8
  1458. package/modules/adtrgtmeBidAdapter.js +2 -2
  1459. package/modules/adxcgBidAdapter.js +2 -36
  1460. package/modules/amxBidAdapter.js +3 -3
  1461. package/modules/chromeAiRtdProvider.js +5 -5
  1462. package/modules/consentManagementGpp.ts +11 -11
  1463. package/modules/consentManagementTcf.ts +33 -33
  1464. package/modules/consentManagementUsp.ts +14 -14
  1465. package/modules/currency.ts +59 -59
  1466. package/modules/cwireBidAdapter.js +2 -2
  1467. package/modules/dailymotionBidAdapter.js +4 -4
  1468. package/modules/dchain.ts +4 -4
  1469. package/modules/dspxBidAdapter.js +8 -8
  1470. package/modules/eightPodBidAdapter.js +8 -8
  1471. package/modules/genericAnalyticsAdapter.ts +50 -50
  1472. package/modules/geolocationRtdProvider.ts +48 -48
  1473. package/modules/getintentBidAdapter.js +4 -2
  1474. package/modules/gmosspBidAdapter.js +1 -1
  1475. package/modules/gppControl_usstates.ts +40 -40
  1476. package/modules/gptPreAuction.ts +34 -34
  1477. package/modules/iasRtdProvider.js +87 -5
  1478. package/modules/intentIqAnalyticsAdapter.js +8 -8
  1479. package/modules/intentIqIdSystem.js +2 -2
  1480. package/modules/jwplayerRtdProvider.js +6 -2
  1481. package/modules/jwplayerVideoProvider.js +13 -9
  1482. package/modules/kubientBidAdapter.js +0 -1
  1483. package/modules/medianetAnalyticsAdapter.js +5 -5
  1484. package/modules/medianetBidAdapter.js +5 -1
  1485. package/modules/michaoBidAdapter.ts +7 -7
  1486. package/modules/multibid/index.ts +31 -31
  1487. package/modules/nexverseBidAdapter.js +1 -1
  1488. package/modules/nodalsAiRtdProvider.js +4 -2
  1489. package/modules/onetagBidAdapter.js +12 -12
  1490. package/modules/prebidServerBidAdapter/index.ts +130 -130
  1491. package/modules/priceFloors.ts +131 -131
  1492. package/modules/pubmaticRtdProvider.js +143 -143
  1493. package/modules/pulsepointBidAdapter.js +3 -38
  1494. package/modules/readpeakBidAdapter.js +17 -17
  1495. package/modules/rtdModule/index.ts +8 -8
  1496. package/modules/rtdModule/spec.ts +30 -30
  1497. package/modules/rubiconBidAdapter.js +5 -1
  1498. package/modules/rumbleBidAdapter.js +128 -0
  1499. package/modules/rumbleBidAdapter.md +114 -0
  1500. package/modules/schain.ts +4 -4
  1501. package/modules/sevioBidAdapter.js +259 -0
  1502. package/modules/sevioBidAdapter.md +29 -0
  1503. package/modules/sharedIdSystem.ts +29 -29
  1504. package/modules/storageControl.ts +72 -72
  1505. package/modules/tcfControl.ts +60 -60
  1506. package/modules/themoneytizerBidAdapter.js +2 -4
  1507. package/modules/ttdBidAdapter.js +11 -1
  1508. package/modules/ttdBidAdapter.md +3 -1
  1509. package/modules/userId/index.ts +129 -119
  1510. package/modules/userId/spec.ts +136 -136
  1511. package/modules/validationFpdModule/index.ts +4 -4
  1512. package/modules/videoModule/index.ts +37 -37
  1513. package/modules/weboramaRtdProvider.js +30 -11
  1514. package/modules/welectBidAdapter.js +3 -3
  1515. package/modules/yandexBidAdapter.js +67 -24
  1516. package/package.json +1 -1
  1517. package/src/activities/params.js +6 -0
  1518. package/src/activities/redactor.ts +8 -8
  1519. package/src/adRendering.ts +61 -61
  1520. package/src/adUnits.ts +100 -100
  1521. package/src/adapterManager.ts +605 -605
  1522. package/src/adapters/bidderFactory.ts +99 -99
  1523. package/src/ajax.ts +39 -39
  1524. package/src/auction.ts +217 -217
  1525. package/src/banner.ts +28 -28
  1526. package/src/bidTTL.ts +16 -16
  1527. package/src/bidderSettings.ts +46 -46
  1528. package/src/bidfactory.ts +107 -107
  1529. package/src/config.ts +65 -65
  1530. package/src/consentHandler.ts +25 -25
  1531. package/src/constants.ts +14 -14
  1532. package/src/cpmBucketManager.ts +7 -7
  1533. package/src/events.ts +75 -75
  1534. package/src/fpd/enrichment.ts +8 -8
  1535. package/src/hook.ts +14 -14
  1536. package/src/mediaTypes.ts +16 -16
  1537. package/src/native.ts +62 -62
  1538. package/src/prebid.ts +362 -362
  1539. package/src/prebidGlobal.ts +18 -18
  1540. package/src/refererDetection.ts +54 -54
  1541. package/src/storageManager.ts +76 -73
  1542. package/src/targeting.ts +215 -215
  1543. package/src/types/common.d.ts +29 -29
  1544. package/src/types/local/buildOptions.d.ts +3 -3
  1545. package/src/types/local/shim.d.ts +6 -6
  1546. package/src/types/objects.d.ts +15 -15
  1547. package/src/types/ortb/common.d.ts +1 -1
  1548. package/src/types/ortb/ext/dchain.d.ts +69 -69
  1549. package/src/types/ortb/ext/dsa.d.ts +50 -50
  1550. package/src/types/ortb/request.d.ts +21 -21
  1551. package/src/types/ortb/response.d.ts +6 -6
  1552. package/src/userSync.ts +32 -32
  1553. package/src/utils/objects.ts +11 -11
  1554. package/src/utils/perfMetrics.ts +193 -193
  1555. package/src/utils/promise.ts +14 -14
  1556. package/src/utils/ttlCollection.ts +25 -25
  1557. package/src/video.ts +73 -73
  1558. package/src/videoCache.ts +60 -60
  1559. package/test/helpers/index_adapter_utils.js +1 -2
  1560. package/test/helpers/refererDetectionHelper.js +2 -2
  1561. package/test/mocks/timers.js +12 -9
  1562. package/test/spec/adloader_spec.js +13 -13
  1563. package/test/spec/config_spec.js +9 -3
  1564. package/test/spec/libraries/greedy/greedyPromise_spec.js +2 -2
  1565. package/test/spec/modules/1plusXRtdProvider_spec.js +2 -9
  1566. package/test/spec/modules/adgridBidAdapter_spec.js +6 -6
  1567. package/test/spec/modules/adkernelAdnBidAdapter_spec.js +127 -127
  1568. package/test/spec/modules/adkernelBidAdapter_spec.js +308 -308
  1569. package/test/spec/modules/admediaBidAdapter_spec.js +34 -34
  1570. package/test/spec/modules/adnuntiusBidAdapter_spec.js +7 -7
  1571. package/test/spec/modules/adspiritBidAdapter_spec.js +1 -1
  1572. package/test/spec/modules/adtrgtmeBidAdapter_spec.js +3 -3
  1573. package/test/spec/modules/adtrueBidAdapter_spec.js +19 -19
  1574. package/test/spec/modules/advertisingBidAdapter_spec.js +2 -2
  1575. package/test/spec/modules/bidmaticBidAdapter_spec.js +2 -2
  1576. package/test/spec/modules/datablocksBidAdapter_spec.js +115 -115
  1577. package/test/spec/modules/deepintentBidAdapter_spec.js +51 -51
  1578. package/test/spec/modules/dexertoBidAdapter_spec.js +16 -16
  1579. package/test/spec/modules/dochaseBidAdapter_spec.js +17 -17
  1580. package/test/spec/modules/dspxBidAdapter_spec.js +23 -23
  1581. package/test/spec/modules/ehealthcaresolutionsBidAdapter_spec.js +17 -17
  1582. package/test/spec/modules/enrichmentLiftMeasurement_spec.js +8 -8
  1583. package/test/spec/modules/equativBidAdapter_spec.js +1 -1
  1584. package/test/spec/modules/finativeBidAdapter_spec.js +11 -11
  1585. package/test/spec/modules/ftrackIdSystem_spec.js +16 -16
  1586. package/test/spec/modules/fwsspBidAdapter_spec.js +5 -5
  1587. package/test/spec/modules/hypelabBidAdapter_spec.js +9 -9
  1588. package/test/spec/modules/iasRtdProvider_spec.js +89 -8
  1589. package/test/spec/modules/intentIqIdSystem_spec.js +3 -3
  1590. package/test/spec/modules/invibesBidAdapter_spec.js +2 -2
  1591. package/test/spec/modules/kargoBidAdapter_spec.js +7 -7
  1592. package/test/spec/modules/lane4BidAdapter_spec.js +17 -17
  1593. package/test/spec/modules/lemmaDigitalBidAdapter_spec.js +37 -37
  1594. package/test/spec/modules/liveIntentRtdProvider_spec.js +2 -2
  1595. package/test/spec/modules/mediaeyesBidAdapter_spec.js +166 -166
  1596. package/test/spec/modules/mediagoBidAdapter_spec.js +1 -1
  1597. package/test/spec/modules/medianetBidAdapter_spec.js +1724 -1707
  1598. package/test/spec/modules/mediasquareBidAdapter_spec.js +7 -7
  1599. package/test/spec/modules/nexx360BidAdapter_spec.js +6 -6
  1600. package/test/spec/modules/nobidBidAdapter_spec.js +16 -16
  1601. package/test/spec/modules/onetagBidAdapter_spec.js +47 -47
  1602. package/test/spec/modules/optoutBidAdapter_spec.js +1 -1
  1603. package/test/spec/modules/orbitsoftBidAdapter_spec.js +85 -85
  1604. package/test/spec/modules/oxxionAnalyticsAdapter_spec.js +1 -1
  1605. package/test/spec/modules/ozoneBidAdapter_spec.js +439 -439
  1606. package/test/spec/modules/prebidServerBidAdapter_spec.js +2 -2
  1607. package/test/spec/modules/prismaBidAdapter_spec.js +6 -6
  1608. package/test/spec/modules/pubmaticBidAdapter_spec.js +3 -3
  1609. package/test/spec/modules/pubmaticRtdProvider_spec.js +1389 -1389
  1610. package/test/spec/modules/pwbidBidAdapter_spec.js +25 -25
  1611. package/test/spec/modules/relevadRtdProvider_spec.js +1 -1
  1612. package/test/spec/modules/relevatehealthBidAdapter_spec.js +16 -16
  1613. package/test/spec/modules/richaudienceBidAdapter_spec.js +10 -10
  1614. package/test/spec/modules/rubiconBidAdapter_spec.js +7 -7
  1615. package/test/spec/modules/rumbleBidAdapter_spec.js +125 -0
  1616. package/test/spec/modules/sevioBidAdapter_spec.js +209 -0
  1617. package/test/spec/modules/smaatoBidAdapter_spec.js +30 -30
  1618. package/test/spec/modules/smarticoBidAdapter_spec.js +10 -10
  1619. package/test/spec/modules/stvBidAdapter_spec.js +32 -32
  1620. package/test/spec/modules/tapnativeBidAdapter_spec.js +17 -17
  1621. package/test/spec/modules/themoneytizerBidAdapter_spec.js +0 -6
  1622. package/test/spec/modules/ttdBidAdapter_spec.js +27 -2
  1623. package/test/spec/modules/uid2IdSystem_spec.js +3 -3
  1624. package/test/spec/modules/userId_spec.js +41 -7
  1625. package/test/spec/modules/videoModule/submodules/jwplayerVideoProvider_spec.js +1953 -154
  1626. package/test/spec/modules/yandexBidAdapter_spec.js +128 -0
  1627. package/test/spec/refererDetection_spec.js +11 -11
  1628. package/test/spec/unit/core/storageManager_spec.js +20 -1
  1629. package/test/spec/unit/core/targeting_spec.js +8 -8
  1630. package/test/spec/utils_spec.js +25 -25
@@ -1 +1 @@
1
- {"version":3,"file":"auction.js","names":["generateUUID","isEmpty","isEmptyStr","isFn","logError","logInfo","logMessage","logWarn","parseUrl","timestamp","getPriceBucketString","isNativeResponse","setNativeResponseProperties","batchAndStore","storeLocally","Renderer","config","userSync","hook","ignoreCallbackArg","OUTSTREAM","VIDEO","auctionManager","bidderSettings","events","adapterManager","EVENTS","GRANULARITY_OPTIONS","JSON_MAPPING","REJECTION_REASON","S2S","TARGETING_KEYS","defer","PbPromise","useMetrics","adjustCpm","getGlobal","ttlCollection","getMinBidCacheTTL","onMinBidCacheTTLChange","syncUsers","AUCTION_STARTED","AUCTION_IN_PROGRESS","AUCTION_COMPLETED","on","BID_ADJUSTMENT","bid","adjustBids","MAX_REQUESTS_PER_ORIGIN","outstandingRequests","sourceInfo","queuedCalls","pbjsInstance","resetAuctionState","length","forEach","ob","Object","keys","k","newAuction","_ref","adUnits","adUnitCodes","callback","cbTimeout","labels","auctionId","ortb2Fragments","metrics","_adUnits","_labels","_adUnitCodes","_auctionId","_timeout","_timelyRequests","Set","done","requestsDone","_bidsRejected","_callback","_bidderRequests","_bidsReceived","startTime","responseTimestamp","ttl","Math","max","_noBids","_winningBids","_auctionStart","_auctionEnd","_timeoutTimer","_auctionStatus","_nonBids","refresh","addBidRequests","bidderRequests","concat","addBidReceived","add","addBidRejected","bidsRejected","addNoBid","noBid","addNonBids","seatnonbids","getProperties","auctionEnd","auctionStatus","noBids","bidsReceived","toArray","winningBids","timeout","seatNonBids","startAuctionTimer","setTimeout","executeCallback","timedOut","clearTimeout","emit","AUCTION_TIMEOUT","undefined","timedOutRequests","filter","rq","has","bidderRequestId","flatMap","br","bids","BID_TIMEOUT","Date","now","checkpoint","timeBetween","resolve","AUCTION_END","bidsBackCallback","includes","adUnitCode","reduce","groupByPlacement","apply","e","callTimedOutBidders","userSyncConfig","getConfig","enableOverride","syncDelay","auctionDone","resetBidder","onTimelyResponse","callBids","bidRequests","measureTime","makeBidRequests","addBidderRequests","call","dispatch","addBidderRequestsCallback","context","bidRequest","requests","run","AUCTION_INIT","callbacks","auctionCallbacks","addBidResponse","adapterDone","request","source","origin","increment","SRA","runIfOriginHasCapacity","shift","push","hasCapacity","maxRequests","some","src","SRC","bidderCode","min","obj","prop","addWinningBid","winningBid","callBidWonBidder","adapterCode","bidder","deferBilling","triggerBilling","setBidTargeting","callSetTargetingBidder","SEAT_NON_BID","event","seatnonbid","getWinningBids","getAuctionStart","getAuctionEnd","getTimeout","getAuctionId","getAuctionStatus","getAdUnits","getAdUnitCodes","getBidRequests","getBidsReceived","getNoBids","getNonBids","getFPD","getMetrics","end","promise","reject","isValidPrice","PRICE_TOO_HIGH","responsesReady","ready","auctionInstance","index","arguments","outstandingBidsAdded","allAdapterCalledDone","bidderRequestsDone","bidResponseMap","afterBidAdded","handleBidResponse","handler","requestId","addCommonResponseProperties","acceptBidResponse","bidResponse","getPreparedBidForAuction","BID_ACCEPTED","mediaType","tryAddVideoBid","getAdUnit","addBidToAuction","rejectBidResponse","reason","rejectionReason","BID_REJECTED","bidderRequest","auctionOptionsConfig","secondaryBidders","every","bidId","NO_BID","addBid","rejected","finally","setupBidTargeting","timeSince","BID_RESPONSE","videoMediaType","getMediaTypes","originalRequestId","adUnitId","video","useCacheKey","useLocal","url","cacheUrl","ignoreBidderCacheKey","videoCacheKey","callPrebidCache","vastUrl","getBidderRequest","adUnit","start","requestTimestamp","assign","cpm","parseFloat","ttlBuffer","timeToRespond","instl","ortb2Imp","bidRenderer","getBidRequest","renderer","bidObjectMediaType","mediaTypes","bidMediaType","mediaTypeRenderer","render","backupOnly","install","options","renderNow","setRender","mediaTypeGranularity","getMediaTypeGranularity","priceStringsObj","pbLg","low","pbMg","med","pbHg","high","pbAg","auto","pbDg","dense","pbCg","custom","bidObject","keyValues","cpmCheck","get","dealId","getKeyValueTargetingPairs","adserverTargeting","mediaTypePriceGranularity","getPriceGranularity","granularity","getPriceByGranularity","bidGranularity","AUTO","DENSE","LOW","MEDIUM","HIGH","CUSTOM","getCreativeId","creativeId","getAdvertiserDomain","meta","advertiserDomains","flat","getDSP","networkId","networkName","getPrimaryCatId","catId","primaryCatId","Array","isArray","createKeyVal","key","value","val","bidReq","defaultAdserverTargeting","BIDDER","AD_ID","PRICE_BUCKET","SIZE","DEAL","SOURCE","FORMAT","ADOMAIN","ACAT","DSP","CRID","getStandardBidderSettings","standardSettings","settingsFor","ADSERVER_TARGETING","slice","UUID","CACHE_ID","targetingKeyVal","find","kvPair","urlInfo","CACHE_HOST","hostname","custBidObj","setKeys","getOwn","ownSettingsFor","sendStandardTargeting","targeting","size","getSize","suppressEmptyKeys","bidPriceAdjusted","bidsByPlacement","maxBidValue","Number"],"sourceRoot":"../../..","sources":["src/auction.ts"],"sourcesContent":["import {\n generateUUID,\n isEmpty,\n isEmptyStr,\n isFn,\n logError,\n logInfo,\n logMessage,\n logWarn,\n parseUrl,\n timestamp\n} from './utils.js';\nimport {getPriceBucketString} from './cpmBucketManager.js';\nimport {isNativeResponse, setNativeResponseProperties} from './native.js';\nimport {batchAndStore, storeLocally} from './videoCache.js';\nimport {Renderer} from './Renderer.js';\nimport {config} from './config.js';\nimport {userSync} from './userSync.js';\nimport {hook, ignoreCallbackArg} from './hook.js';\nimport {OUTSTREAM} from './video.js';\nimport {VIDEO} from './mediaTypes.js';\nimport {auctionManager} from './auctionManager.js';\nimport {bidderSettings} from './bidderSettings.js';\nimport * as events from './events.js';\nimport adapterManager, {type BidderRequest, type BidRequest} from './adapterManager.js';\nimport {EVENTS, GRANULARITY_OPTIONS, JSON_MAPPING, REJECTION_REASON, S2S, TARGETING_KEYS} from './constants.js';\nimport {defer, PbPromise} from './utils/promise.js';\nimport {type Metrics, useMetrics} from './utils/perfMetrics.js';\nimport {adjustCpm} from './utils/cpm.js';\nimport {getGlobal} from './prebidGlobal.js';\nimport {ttlCollection} from './utils/ttlCollection.js';\nimport {getMinBidCacheTTL, onMinBidCacheTTLChange} from './bidTTL.js';\nimport type {Bid, BidResponse} from \"./bidfactory.ts\";\nimport type {AdUnitCode, BidderCode, Identifier, ORTBFragments} from './types/common.d.ts';\nimport type {TargetingMap} from \"./targeting.ts\";\nimport type {AdUnit} from \"./adUnits.ts\";\nimport type {MediaType} from \"./mediaTypes.ts\";\nimport type {VideoContext} from \"./video.ts\";\n\nconst { syncUsers } = userSync;\n\nexport const AUCTION_STARTED = 'started';\nexport const AUCTION_IN_PROGRESS = 'inProgress';\nexport const AUCTION_COMPLETED = 'completed';\n\ntype AuctionStatus = typeof AUCTION_STARTED | typeof AUCTION_COMPLETED | typeof AUCTION_IN_PROGRESS;\n\n// register event for bid adjustment\nevents.on(EVENTS.BID_ADJUSTMENT, function (bid) {\n adjustBids(bid);\n});\n\nconst MAX_REQUESTS_PER_ORIGIN = 4;\nconst outstandingRequests = {};\nconst sourceInfo = {};\nconst queuedCalls = [];\n\nconst pbjsInstance = getGlobal();\n\n/**\n * Clear global state for tests\n */\nexport function resetAuctionState() {\n queuedCalls.length = 0;\n [outstandingRequests, sourceInfo].forEach((ob) => Object.keys(ob).forEach((k) => { delete ob[k] }));\n}\n\ntype AuctionOptions = {\n adUnits: AdUnit[],\n adUnitCodes: AdUnitCode[],\n callback: () => void;\n cbTimeout: number;\n labels: string[];\n auctionId: Identifier;\n ortb2Fragments: ORTBFragments;\n metrics: Metrics;\n}\n\nexport type AuctionProperties = ReturnType<ReturnType<typeof newAuction>['getProperties']>;\n\ndeclare module './events' {\n interface Events {\n /**\n * Fired when an auction starts.\n */\n [EVENTS.AUCTION_INIT]: [AuctionProperties];\n /**\n * Fired when an auction ends.\n */\n [EVENTS.AUCTION_END]: [AuctionProperties];\n /**\n * Fired when an auction times out (at least some of the bid adapters\n * did not reply before the timeout.\n */\n [EVENTS.AUCTION_TIMEOUT]: [AuctionProperties];\n /**\n * Fired when an auction times out.\n */\n [EVENTS.BID_TIMEOUT]: [BidRequest<BidderCode>[]];\n /**\n * Fired when a bid is received.\n */\n [EVENTS.BID_ACCEPTED]: [Partial<Bid>];\n /**\n * Fired when a bid is rejected.\n */\n [EVENTS.BID_REJECTED]: [Partial<Bid>];\n /**\n * Fired once for each bid request (unique combination of auction, ad unit and bidder)\n * that produced no bid.\n */\n [EVENTS.NO_BID]: [BidRequest<BidderCode>];\n /**\n * Fired when a bid is received.\n */\n [EVENTS.BID_RESPONSE]: [Bid];\n /**\n * Fired once for each bid, immediately after its adjustment (see bidCpmAdjustment).\n */\n [EVENTS.BID_ADJUSTMENT]: [Partial<Bid>];\n }\n}\n\nexport interface AuctionOptionsConfig {\n /**\n * Specifies bidders that the Prebid auction will no longer wait for before determining the auction has completed.\n * This may be helpful if you find there are a number of low performing and/or high timeout bidders in your page’s rotation.\n */\n secondaryBidders?: BidderCode[]\n /**\n * When true, prevents banner bids from being rendered more than once. It should only be enabled after auto-refreshing is implemented correctly. Default is false.\n */\n suppressStaleRender?: boolean;\n /**\n * When true, prevent bids from being rendered if TTL is reached. Default is false.\n */\n suppressExpiredRender?: boolean;\n}\n\nexport interface PriceBucketConfig {\n buckets: {\n precision?: number;\n max: number;\n increment: number;\n }[];\n}\n\ndeclare module './config' {\n interface Config {\n /**\n * Since browsers have a limit of how many requests they will allow to a specific domain before they block,\n * Prebid.js will queue auctions that would cause requests to a specific origin to exceed that limit.\n * The limit is different for each browser. Prebid.js defaults to a max of 4 requests per origin.\n */\n maxRequestsPerOrigin?: number;\n auctionOptions?: AuctionOptionsConfig;\n priceGranularity?: (typeof GRANULARITY_OPTIONS)[keyof typeof GRANULARITY_OPTIONS];\n customPriceBucket?: PriceBucketConfig;\n mediaTypePriceGranularity?: {[K in MediaType]?: PriceBucketConfig} & {[K in VideoContext as `${typeof VIDEO}-${K}`]?: PriceBucketConfig};\n }\n}\n\nexport function newAuction({adUnits, adUnitCodes, callback, cbTimeout, labels, auctionId, ortb2Fragments, metrics}: AuctionOptions) {\n metrics = useMetrics(metrics);\n const _adUnits = adUnits;\n const _labels = labels;\n const _adUnitCodes = adUnitCodes;\n const _auctionId: Identifier = auctionId || generateUUID();\n const _timeout = cbTimeout;\n const _timelyRequests = new Set();\n const done = defer<void>();\n const requestsDone = defer<void>();\n let _bidsRejected: Partial<Bid>[] = [];\n let _callback = callback;\n let _bidderRequests: BidderRequest<BidderCode>[] = [];\n const _bidsReceived = ttlCollection<Bid>({\n startTime: (bid) => bid.responseTimestamp,\n ttl: (bid) => getMinBidCacheTTL() == null ? null : Math.max(getMinBidCacheTTL(), bid.ttl) * 1000\n });\n let _noBids: BidRequest<BidderCode>[] = [];\n let _winningBids: Bid[] = [];\n let _auctionStart: number;\n let _auctionEnd: number;\n let _timeoutTimer;\n let _auctionStatus: AuctionStatus;\n let _nonBids = [];\n\n onMinBidCacheTTLChange(() => _bidsReceived.refresh());\n\n function addBidRequests(bidderRequests) { _bidderRequests = _bidderRequests.concat(bidderRequests); }\n function addBidReceived(bid) { _bidsReceived.add(bid); }\n function addBidRejected(bidsRejected) { _bidsRejected = _bidsRejected.concat(bidsRejected); }\n function addNoBid(noBid) { _noBids = _noBids.concat(noBid); }\n function addNonBids(seatnonbids) { _nonBids = _nonBids.concat(seatnonbids); }\n\n function getProperties() {\n return {\n auctionId: _auctionId,\n timestamp: _auctionStart,\n auctionEnd: _auctionEnd,\n auctionStatus: _auctionStatus,\n adUnits: _adUnits,\n adUnitCodes: _adUnitCodes,\n labels: _labels,\n bidderRequests: _bidderRequests,\n noBids: _noBids,\n bidsReceived: _bidsReceived.toArray(),\n bidsRejected: _bidsRejected,\n winningBids: _winningBids,\n timeout: _timeout,\n metrics: metrics,\n seatNonBids: _nonBids\n };\n }\n\n function startAuctionTimer() {\n _timeoutTimer = setTimeout(() => executeCallback(true), _timeout);\n }\n\n function executeCallback(timedOut) {\n if (!timedOut) {\n clearTimeout(_timeoutTimer);\n } else {\n events.emit(EVENTS.AUCTION_TIMEOUT, getProperties());\n }\n if (_auctionEnd === undefined) {\n let timedOutRequests = [];\n if (timedOut) {\n logMessage(`Auction ${_auctionId} timedOut`);\n timedOutRequests = _bidderRequests.filter(rq => !_timelyRequests.has(rq.bidderRequestId)).flatMap(br => br.bids)\n if (timedOutRequests.length) {\n events.emit(EVENTS.BID_TIMEOUT, timedOutRequests);\n }\n }\n\n _auctionStatus = AUCTION_COMPLETED;\n _auctionEnd = Date.now();\n metrics.checkpoint('auctionEnd');\n metrics.timeBetween('requestBids', 'auctionEnd', 'requestBids.total');\n metrics.timeBetween('callBids', 'auctionEnd', 'requestBids.callBids');\n done.resolve();\n\n events.emit(EVENTS.AUCTION_END, getProperties());\n bidsBackCallback(_adUnits, function () {\n try {\n if (_callback != null) {\n const bids = _bidsReceived.toArray()\n .filter(bid => _adUnitCodes.includes(bid.adUnitCode))\n .reduce(groupByPlacement, {});\n _callback.apply(pbjsInstance, [bids, timedOut, _auctionId]);\n _callback = null;\n }\n } catch (e) {\n logError('Error executing bidsBackHandler', null, e);\n } finally {\n // Calling timed out bidders\n if (timedOutRequests.length) {\n adapterManager.callTimedOutBidders(adUnits, timedOutRequests, _timeout);\n }\n // Only automatically sync if the publisher has not chosen to \"enableOverride\"\n const userSyncConfig = config.getConfig('userSync') ?? {} as any;\n if (!userSyncConfig.enableOverride) {\n // Delay the auto sync by the config delay\n syncUsers(userSyncConfig.syncDelay);\n }\n }\n })\n }\n }\n\n function auctionDone() {\n config.resetBidder();\n // when all bidders have called done callback atleast once it means auction is complete\n logInfo(`Bids Received for Auction with id: ${_auctionId}`, _bidsReceived.toArray());\n _auctionStatus = AUCTION_COMPLETED;\n executeCallback(false);\n }\n\n function onTimelyResponse(bidderRequestId) {\n _timelyRequests.add(bidderRequestId);\n }\n\n function callBids() {\n _auctionStatus = AUCTION_STARTED;\n _auctionStart = Date.now();\n\n const bidRequests = metrics.measureTime('requestBids.makeRequests',\n () => adapterManager.makeBidRequests(_adUnits, _auctionStart, _auctionId, _timeout, _labels, ortb2Fragments, metrics));\n logInfo(`Bids Requested for Auction with id: ${_auctionId}`, bidRequests);\n\n metrics.checkpoint('callBids')\n\n if (bidRequests.length < 1) {\n logWarn('No valid bid requests returned for auction');\n auctionDone();\n } else {\n addBidderRequests.call({\n dispatch: addBidderRequestsCallback,\n context: this\n }, bidRequests);\n }\n }\n\n /**\n * callback executed after addBidderRequests completes\n * @param {BidRequest[]} bidRequests\n */\n function addBidderRequestsCallback(bidRequests) {\n bidRequests.forEach(bidRequest => {\n addBidRequests(bidRequest);\n });\n\n const requests = {};\n const call = {\n bidRequests,\n run: () => {\n startAuctionTimer();\n\n _auctionStatus = AUCTION_IN_PROGRESS;\n\n events.emit(EVENTS.AUCTION_INIT, getProperties());\n\n const callbacks = auctionCallbacks(auctionDone, this);\n adapterManager.callBids(_adUnits, bidRequests, callbacks.addBidResponse, callbacks.adapterDone, {\n request(source, origin) {\n increment(outstandingRequests, origin);\n increment(requests, source);\n\n if (!sourceInfo[source]) {\n sourceInfo[source] = {\n SRA: true,\n origin\n };\n }\n if (requests[source] > 1) {\n sourceInfo[source].SRA = false;\n }\n },\n done(origin) {\n outstandingRequests[origin]--;\n if (queuedCalls[0]) {\n if (runIfOriginHasCapacity(queuedCalls[0])) {\n queuedCalls.shift();\n }\n }\n }\n }, _timeout, onTimelyResponse, ortb2Fragments);\n requestsDone.resolve();\n }\n };\n\n if (!runIfOriginHasCapacity(call)) {\n logWarn('queueing auction due to limited endpoint capacity');\n queuedCalls.push(call);\n }\n\n function runIfOriginHasCapacity(call) {\n let hasCapacity = true;\n\n const maxRequests = config.getConfig('maxRequestsPerOrigin') || MAX_REQUESTS_PER_ORIGIN;\n\n call.bidRequests.some(bidRequest => {\n let requests = 1;\n const source = (typeof bidRequest.src !== 'undefined' && bidRequest.src === S2S.SRC) ? 's2s'\n : bidRequest.bidderCode;\n // if we have no previous info on this source just let them through\n if (sourceInfo[source]) {\n if (sourceInfo[source].SRA === false) {\n // some bidders might use more than the MAX_REQUESTS_PER_ORIGIN in a single auction. In those cases\n // set their request count to MAX_REQUESTS_PER_ORIGIN so the auction isn't permanently queued waiting\n // for capacity for that bidder\n requests = Math.min(bidRequest.bids.length, maxRequests);\n }\n if (outstandingRequests[sourceInfo[source].origin] + requests > maxRequests) {\n hasCapacity = false;\n }\n }\n // return only used for terminating this .some() iteration early if it is determined we don't have capacity\n return !hasCapacity;\n });\n\n if (hasCapacity) {\n call.run();\n }\n\n return hasCapacity;\n }\n\n function increment(obj, prop) {\n if (typeof obj[prop] === 'undefined') {\n obj[prop] = 1\n } else {\n obj[prop]++;\n }\n }\n }\n\n function addWinningBid(winningBid) {\n _winningBids = _winningBids.concat(winningBid);\n adapterManager.callBidWonBidder(winningBid.adapterCode || winningBid.bidder, winningBid, adUnits);\n if (!winningBid.deferBilling) {\n adapterManager.triggerBilling(winningBid)\n }\n }\n\n function setBidTargeting(bid) {\n adapterManager.callSetTargetingBidder(bid.adapterCode || bid.bidder, bid);\n }\n\n events.on(EVENTS.SEAT_NON_BID, (event) => {\n if (event.auctionId === _auctionId) {\n addNonBids(event.seatnonbid)\n }\n });\n\n return {\n addBidReceived,\n addBidRejected,\n addNoBid,\n callBids,\n addWinningBid,\n setBidTargeting,\n getWinningBids: () => _winningBids,\n getAuctionStart: () => _auctionStart,\n getAuctionEnd: () => _auctionEnd,\n getTimeout: () => _timeout,\n getAuctionId: () => _auctionId,\n getAuctionStatus: () => _auctionStatus,\n getAdUnits: () => _adUnits,\n getAdUnitCodes: () => _adUnitCodes,\n getBidRequests: () => _bidderRequests,\n getBidsReceived: () => _bidsReceived.toArray(),\n getNoBids: () => _noBids,\n getNonBids: () => _nonBids,\n getFPD: () => ortb2Fragments,\n getMetrics: () => metrics,\n end: done.promise,\n requestsDone: requestsDone.promise,\n getProperties\n };\n}\n\ndeclare module './hook' {\n interface NamedHooks {\n addBidResponse: typeof addBidResponse\n }\n}\n\n/**\n * Hook into this to intercept bids before they are added to an auction.\n */\nexport const addBidResponse = ignoreCallbackArg(hook('async', function(adUnitCode: string, bid: Partial<Bid>, reject: (reason: (typeof REJECTION_REASON)[keyof typeof REJECTION_REASON]) => void): void {\n if (!isValidPrice(bid)) {\n reject(REJECTION_REASON.PRICE_TOO_HIGH)\n } else {\n this.dispatch.call(null, adUnitCode, bid);\n }\n}, 'addBidResponse'));\n\n/**\n * Delay hook for adapter responses.\n *\n * `ready` is a promise; auctions wait for it to resolve before closing. Modules can hook into this\n * to delay the end of auctions while they perform initialization that does not need to delay their start.\n */\nexport const responsesReady = hook('sync', (ready) => ready, 'responsesReady');\n\nexport const addBidderRequests = hook('sync', function(bidderRequests) {\n this.dispatch.call(this.context, bidderRequests);\n}, 'addBidderRequests');\n\nexport const bidsBackCallback = hook('async', function (adUnits, callback) {\n if (callback) {\n callback();\n }\n}, 'bidsBackCallback');\n\nexport type AddBidResponse = {\n (adUnitCode: AdUnitCode, bid: BidResponse): void;\n reject(adUnitCode: AdUnitCode, bid: BidResponse, reason: typeof REJECTION_REASON[keyof typeof REJECTION_REASON]) : void;\n}\n\nexport function auctionCallbacks(auctionDone, auctionInstance, {index = auctionManager.index} = {}) {\n let outstandingBidsAdded = 0;\n let allAdapterCalledDone = false;\n const bidderRequestsDone = new Set();\n const bidResponseMap = {};\n\n function afterBidAdded() {\n outstandingBidsAdded--;\n if (allAdapterCalledDone && outstandingBidsAdded === 0) {\n auctionDone()\n }\n }\n\n function handleBidResponse(adUnitCode: string, bid: Partial<Bid>, handler) {\n bidResponseMap[bid.requestId] = true;\n addCommonResponseProperties(bid, adUnitCode)\n outstandingBidsAdded++;\n return handler(afterBidAdded);\n }\n\n function acceptBidResponse(adUnitCode: string, bid: Partial<Bid>) {\n handleBidResponse(adUnitCode, bid, (done) => {\n const bidResponse = getPreparedBidForAuction(bid);\n events.emit(EVENTS.BID_ACCEPTED, bidResponse);\n if (FEATURES.VIDEO && bidResponse.mediaType === VIDEO) {\n tryAddVideoBid(auctionInstance, bidResponse, done);\n } else {\n if (FEATURES.NATIVE && isNativeResponse(bidResponse)) {\n setNativeResponseProperties(bidResponse, index.getAdUnit(bidResponse));\n }\n addBidToAuction(auctionInstance, bidResponse);\n done();\n }\n });\n }\n\n function rejectBidResponse(adUnitCode, bid, reason) {\n return handleBidResponse(adUnitCode, bid, (done) => {\n bid.rejectionReason = reason;\n logWarn(`Bid from ${bid.bidder || 'unknown bidder'} was rejected: ${reason}`, bid)\n events.emit(EVENTS.BID_REJECTED, bid);\n auctionInstance.addBidRejected(bid);\n done();\n })\n }\n\n function adapterDone() {\n // eslint-disable-next-line @typescript-eslint/no-this-alias\n const bidderRequest = this;\n let bidderRequests = auctionInstance.getBidRequests();\n const auctionOptionsConfig = config.getConfig('auctionOptions');\n\n bidderRequestsDone.add(bidderRequest);\n\n if (auctionOptionsConfig && !isEmpty(auctionOptionsConfig)) {\n const secondaryBidders = auctionOptionsConfig.secondaryBidders;\n if (secondaryBidders && !bidderRequests.every(bidder => secondaryBidders.includes(bidder.bidderCode))) {\n bidderRequests = bidderRequests.filter(request => !secondaryBidders.includes(request.bidderCode));\n }\n }\n\n allAdapterCalledDone = bidderRequests.every(bidderRequest => bidderRequestsDone.has(bidderRequest));\n\n bidderRequest.bids.forEach(bid => {\n if (!bidResponseMap[bid.bidId]) {\n auctionInstance.addNoBid(bid);\n events.emit(EVENTS.NO_BID, bid);\n }\n });\n\n if (allAdapterCalledDone && outstandingBidsAdded === 0) {\n auctionDone();\n }\n }\n\n return {\n addBidResponse: (function () {\n function addBid(adUnitCode, bid) {\n addBidResponse.call({\n dispatch: acceptBidResponse,\n }, adUnitCode, bid, (() => {\n let rejected = false;\n return (reason) => {\n if (!rejected) {\n rejectBidResponse(adUnitCode, bid, reason);\n rejected = true;\n }\n }\n })())\n }\n addBid.reject = rejectBidResponse;\n return addBid;\n })(),\n adapterDone: function () {\n responsesReady(PbPromise.resolve()).finally(() => adapterDone.call(this));\n }\n }\n}\n\n// Add a bid to the auction.\nexport function addBidToAuction(auctionInstance, bidResponse: Bid) {\n setupBidTargeting(bidResponse);\n\n useMetrics(bidResponse.metrics).timeSince('addBidResponse', 'addBidResponse.total');\n auctionInstance.addBidReceived(bidResponse);\n events.emit(EVENTS.BID_RESPONSE, bidResponse);\n}\n\n// Video bids may fail if the cache is down, or there's trouble on the network.\nfunction tryAddVideoBid(auctionInstance, bidResponse, afterBidAdded, {index = auctionManager.index} = {}) {\n let addBid = true;\n\n const videoMediaType = index.getMediaTypes({\n requestId: bidResponse.originalRequestId || bidResponse.requestId,\n adUnitId: bidResponse.adUnitId\n })?.video;\n const context = videoMediaType && videoMediaType?.context;\n const useCacheKey = videoMediaType && videoMediaType?.useCacheKey;\n const {\n useLocal,\n url: cacheUrl,\n ignoreBidderCacheKey\n } = config.getConfig('cache') || {};\n\n if (useLocal) {\n // stores video bid vast as local blob in the browser\n storeLocally(bidResponse);\n } else if (cacheUrl && (useCacheKey || context !== OUTSTREAM)) {\n if (!bidResponse.videoCacheKey || ignoreBidderCacheKey) {\n addBid = false;\n callPrebidCache(auctionInstance, bidResponse, afterBidAdded, videoMediaType);\n } else if (!bidResponse.vastUrl) {\n logError('videoCacheKey specified but not required vastUrl for video bid');\n addBid = false;\n }\n }\n\n if (addBid) {\n addBidToAuction(auctionInstance, bidResponse);\n afterBidAdded();\n }\n}\n\nexport const callPrebidCache = hook('async', function(auctionInstance, bidResponse, afterBidAdded, videoMediaType) {\n if (FEATURES.VIDEO) {\n batchAndStore(auctionInstance, bidResponse, afterBidAdded);\n }\n}, 'callPrebidCache');\n\ndeclare module './bidfactory' {\n interface BaseBidResponse {\n /**\n * Targeting custom key-value pairs for this bid.\n */\n adserverTargeting?: TargetingMap<unknown>;\n }\n\n interface BaseBid {\n /**\n * true if this bid is for an interstitial slot.\n */\n instl: boolean;\n /**\n * Timestamp of when the request for this bid was generated.\n */\n requestTimestamp: number;\n /**\n * Timestamp of when the response for this bid was received.\n */\n responseTimestamp: number;\n /**\n * responseTimestamp - requestTimestamp\n */\n timeToRespond: number;\n /**\n * alias of `bidderCode`.\n */\n bidder: BidderCode;\n /**\n * Code of the ad unit this bid is for.\n */\n adUnitCode: string;\n /**\n * TTL buffer for this bid; it will expire after `.ttl` - `.ttlBuffer` seconds have elapsed.\n */\n ttlBuffer?: number;\n /**\n * Low granularity price bucket for this bid.\n */\n pbLg: string;\n /**\n * Medium granularity price bucket for this bid.\n */\n pbMg: string;\n /**\n * High granularity price bucket for this bid.\n */\n pbHg: string;\n /**\n * Auto granularity price bucket for this bid.\n */\n pbAg: string;\n /**\n * Dense granularity price bucket for this bid.\n */\n pbDg: string;\n /**\n * Custom granularity price bucket for this bid.\n */\n pbCg: string;\n /**\n * This bid's creative size, expressed as width x height.\n */\n size: ReturnType<BaseBid['getSize']>\n /**\n * If custom targeting was defined, whether standard targeting should also be used for this bid.\n */\n sendStandardTargeting?: boolean;\n adserverTargeting: BaseBidResponse['adserverTargeting'];\n }\n}\n/**\n * Augment `bidResponse` with properties that are common across all bids - including rejected bids.\n */\nfunction addCommonResponseProperties(bidResponse: Partial<Bid>, adUnitCode: string, {index = auctionManager.index} = {}) {\n const bidderRequest = index.getBidderRequest(bidResponse);\n const adUnit = index.getAdUnit(bidResponse);\n const start = (bidderRequest && bidderRequest.start) || bidResponse.requestTimestamp;\n\n Object.assign(bidResponse, {\n responseTimestamp: bidResponse.responseTimestamp || timestamp(),\n requestTimestamp: bidResponse.requestTimestamp || start,\n cpm: parseFloat(bidResponse.cpm) || 0,\n bidder: bidResponse.bidder || bidResponse.bidderCode,\n adUnitCode\n });\n\n if (adUnit?.ttlBuffer != null) {\n bidResponse.ttlBuffer = adUnit.ttlBuffer;\n }\n\n bidResponse.timeToRespond = bidResponse.responseTimestamp - bidResponse.requestTimestamp;\n}\n\n/**\n * Add additional bid response properties that are universal for all _accepted_ bids.\n */\nfunction getPreparedBidForAuction(bid: Partial<Bid>, {index = auctionManager.index} = {}): Bid {\n // Let listeners know that now is the time to adjust the bid, if they want to.\n //\n // CAREFUL: Publishers rely on certain bid properties to be available (like cpm),\n // but others to not be set yet (like priceStrings). See #1372 and #1389.\n events.emit(EVENTS.BID_ADJUSTMENT, bid);\n\n const adUnit = index.getAdUnit(bid);\n bid.instl = adUnit?.ortb2Imp?.instl === 1;\n\n // a publisher-defined renderer can be used to render bids\n const bidRenderer = index.getBidRequest(bid)?.renderer || adUnit.renderer;\n\n // a publisher can also define a renderer for a mediaType\n const bidObjectMediaType = bid.mediaType;\n const mediaTypes = index.getMediaTypes(bid);\n const bidMediaType = mediaTypes && mediaTypes[bidObjectMediaType];\n\n var mediaTypeRenderer = bidMediaType && bidMediaType.renderer;\n\n var renderer = null;\n\n // the renderer for the mediaType takes precendence\n if (mediaTypeRenderer && mediaTypeRenderer.render && !(mediaTypeRenderer.backupOnly === true && bid.renderer)) {\n renderer = mediaTypeRenderer;\n } else if (bidRenderer && bidRenderer.render && !(bidRenderer.backupOnly === true && bid.renderer)) {\n renderer = bidRenderer;\n }\n\n if (renderer) {\n // be aware, an adapter could already have installed the bidder, in which case this overwrite's the existing adapter\n bid.renderer = Renderer.install({ url: renderer.url, config: renderer.options, renderNow: renderer.url == null });// rename options to config, to make it consistent?\n bid.renderer.setRender(renderer.render);\n }\n\n // Use the config value 'mediaTypeGranularity' if it has been defined for mediaType, else use 'customPriceBucket'\n const mediaTypeGranularity = getMediaTypeGranularity(bid.mediaType, mediaTypes, config.getConfig('mediaTypePriceGranularity'));\n const priceStringsObj = getPriceBucketString(\n bid.cpm,\n (typeof mediaTypeGranularity === 'object') ? mediaTypeGranularity : config.getConfig('customPriceBucket'),\n config.getConfig('currency.granularityMultiplier')\n );\n bid.pbLg = priceStringsObj.low;\n bid.pbMg = priceStringsObj.med;\n bid.pbHg = priceStringsObj.high;\n bid.pbAg = priceStringsObj.auto;\n bid.pbDg = priceStringsObj.dense;\n bid.pbCg = priceStringsObj.custom;\n\n return bid as Bid;\n}\n\nfunction setupBidTargeting(bidObject: Bid) {\n let keyValues;\n const cpmCheck = (bidderSettings.get(bidObject.bidderCode, 'allowZeroCpmBids') === true) ? bidObject.cpm >= 0 : bidObject.cpm > 0;\n if (bidObject.bidderCode && (cpmCheck || bidObject.dealId)) {\n keyValues = getKeyValueTargetingPairs(bidObject.bidderCode, bidObject);\n }\n\n // use any targeting provided as defaults, otherwise just set from getKeyValueTargetingPairs\n bidObject.adserverTargeting = Object.assign(bidObject.adserverTargeting || {}, keyValues);\n}\n\nexport function getMediaTypeGranularity(mediaType, mediaTypes, mediaTypePriceGranularity) {\n if (mediaType && mediaTypePriceGranularity) {\n if (FEATURES.VIDEO && mediaType === VIDEO) {\n const context = mediaTypes?.[VIDEO]?.context ?? 'instream';\n if (mediaTypePriceGranularity[`${VIDEO}-${context}`]) {\n return mediaTypePriceGranularity[`${VIDEO}-${context}`];\n }\n }\n return mediaTypePriceGranularity[mediaType];\n }\n}\n\n/**\n * This function returns the price granularity defined. It can be either publisher defined or default value\n * @param {Bid} bid bid response object\n * @param {object} obj\n * @param {object} obj.index\n * @returns {string} granularity\n */\nexport const getPriceGranularity = (bid, {index = auctionManager.index} = {}) => {\n // Use the config value 'mediaTypeGranularity' if it has been set for mediaType, else use 'priceGranularity'\n const mediaTypeGranularity = getMediaTypeGranularity(bid.mediaType, index.getMediaTypes(bid), config.getConfig('mediaTypePriceGranularity'));\n const granularity = (typeof bid.mediaType === 'string' && mediaTypeGranularity) ? ((typeof mediaTypeGranularity === 'string') ? mediaTypeGranularity : 'custom') : config.getConfig('priceGranularity');\n return granularity;\n}\n\n/**\n * This function returns a function to get bid price by price granularity\n * @param {string} granularity\n * @returns {function}\n */\nexport const getPriceByGranularity = (granularity?) => {\n return (bid) => {\n const bidGranularity = granularity || getPriceGranularity(bid);\n if (bidGranularity === GRANULARITY_OPTIONS.AUTO) {\n return bid.pbAg;\n } else if (bidGranularity === GRANULARITY_OPTIONS.DENSE) {\n return bid.pbDg;\n } else if (bidGranularity === GRANULARITY_OPTIONS.LOW) {\n return bid.pbLg;\n } else if (bidGranularity === GRANULARITY_OPTIONS.MEDIUM) {\n return bid.pbMg;\n } else if (bidGranularity === GRANULARITY_OPTIONS.HIGH) {\n return bid.pbHg;\n } else if (bidGranularity === GRANULARITY_OPTIONS.CUSTOM) {\n return bid.pbCg;\n }\n }\n}\n\n/**\n * This function returns a function to get crid from bid response\n * @returns {function}\n */\nexport const getCreativeId = () => {\n return (bid) => {\n return (bid.creativeId) ? bid.creativeId : '';\n }\n}\n\n/**\n * This function returns a function to get first advertiser domain from bid response meta\n * @returns {function}\n */\nexport const getAdvertiserDomain = () => {\n return (bid) => {\n return (bid.meta && bid.meta.advertiserDomains && bid.meta.advertiserDomains.length > 0) ? [bid.meta.advertiserDomains].flat()[0] : '';\n }\n}\n\n/**\n * This function returns a function to get dsp name or id from bid response meta\n * @returns {function}\n */\nexport const getDSP = () => {\n return (bid) => {\n return (bid.meta && (bid.meta.networkId || bid.meta.networkName)) ? bid?.meta?.networkName || bid?.meta?.networkId : '';\n }\n}\n\n/**\n * This function returns a function to get the primary category id from bid response meta\n * @returns {function}\n */\nexport const getPrimaryCatId = () => {\n return (bid) => {\n const catId = bid?.meta?.primaryCatId;\n if (Array.isArray(catId)) {\n return catId[0] || '';\n }\n return catId || '';\n };\n}\n\nexport interface DefaultTargeting {\n /**\n * Bidder code.\n */\n [TARGETING_KEYS.BIDDER]: Bid['bidderCode'];\n /**\n * Ad ID.\n */\n [TARGETING_KEYS.AD_ID]: Bid['adId'];\n /**\n * Price bucket.\n */\n [TARGETING_KEYS.PRICE_BUCKET]: string;\n /**\n * Size, expressed as ${width}x${height}.\n */\n [TARGETING_KEYS.SIZE]: Bid['size'];\n /**\n * Deal ID.\n */\n [TARGETING_KEYS.DEAL]: Bid['dealId'];\n /**\n * Bid source - either client or s2s.\n */\n [TARGETING_KEYS.SOURCE]: Bid['source'];\n /**\n * Media type.\n */\n [TARGETING_KEYS.FORMAT]: Bid['mediaType'];\n /**\n * Advertiser domain.\n */\n [TARGETING_KEYS.ADOMAIN]: Bid['meta']['advertiserDomains'][0];\n /**\n * Primary category ID.\n */\n [TARGETING_KEYS.ACAT]: Bid['meta']['primaryCatId'];\n /**\n * DSP network name.\n */\n [TARGETING_KEYS.DSP]: Bid['meta']['networkName'];\n /**\n * Creative ID.\n */\n [TARGETING_KEYS.CRID]: Bid['creativeId'];\n /**\n * Video cache key.\n */\n [TARGETING_KEYS.UUID]: Bid['videoCacheKey'];\n /**\n * Video cache key.\n */\n [TARGETING_KEYS.CACHE_ID]: Bid['videoCacheKey'];\n /**\n * Video cache host.\n */\n [TARGETING_KEYS.CACHE_HOST]: string;\n}\n\ntype KeyValFn<K extends keyof DefaultTargeting> = (bidResponse: Bid, bidRequest: BidRequest<BidderCode>) => DefaultTargeting[K];\ntype KeyValProp<K extends keyof DefaultTargeting> = {\n [P in keyof Bid]: Bid[P] extends DefaultTargeting[K] ? P : never\n}[keyof Bid];\n\nfunction createKeyVal<K extends keyof DefaultTargeting>(key: K, value: KeyValFn<K> | KeyValProp<K>) {\n return {\n key,\n val: (typeof value === 'function')\n ? function (bidResponse, bidReq) {\n return value(bidResponse, bidReq);\n }\n : function (bidResponse) {\n return bidResponse[value];\n }\n };\n}\n\nfunction defaultAdserverTargeting() {\n return [\n createKeyVal(TARGETING_KEYS.BIDDER, 'bidderCode'),\n createKeyVal(TARGETING_KEYS.AD_ID, 'adId'),\n createKeyVal(TARGETING_KEYS.PRICE_BUCKET, getPriceByGranularity()),\n createKeyVal(TARGETING_KEYS.SIZE, 'size'),\n createKeyVal(TARGETING_KEYS.DEAL, 'dealId'),\n createKeyVal(TARGETING_KEYS.SOURCE, 'source'),\n createKeyVal(TARGETING_KEYS.FORMAT, 'mediaType'),\n createKeyVal(TARGETING_KEYS.ADOMAIN, getAdvertiserDomain()),\n createKeyVal(TARGETING_KEYS.ACAT, getPrimaryCatId()),\n createKeyVal(TARGETING_KEYS.DSP, getDSP()),\n createKeyVal(TARGETING_KEYS.CRID, getCreativeId()),\n ]\n}\n\n/**\n * @param {string} mediaType\n * @param {string} bidderCode\n * @returns {*}\n */\nexport function getStandardBidderSettings(mediaType, bidderCode) {\n const standardSettings = Object.assign({}, bidderSettings.settingsFor(null));\n if (!standardSettings[JSON_MAPPING.ADSERVER_TARGETING]) {\n standardSettings[JSON_MAPPING.ADSERVER_TARGETING] = defaultAdserverTargeting();\n }\n\n if (FEATURES.VIDEO && mediaType === 'video') {\n const adserverTargeting = standardSettings[JSON_MAPPING.ADSERVER_TARGETING].slice();\n standardSettings[JSON_MAPPING.ADSERVER_TARGETING] = adserverTargeting;\n\n // Adding hb_uuid + hb_cache_id\n [TARGETING_KEYS.UUID, TARGETING_KEYS.CACHE_ID].forEach(targetingKeyVal => {\n if (typeof adserverTargeting.find(kvPair => kvPair.key === targetingKeyVal) === 'undefined') {\n adserverTargeting.push(createKeyVal(targetingKeyVal, 'videoCacheKey'));\n }\n });\n\n // Adding hb_cache_host\n if (config.getConfig('cache.url') && (!bidderCode || bidderSettings.get(bidderCode, 'sendStandardTargeting') !== false)) {\n const urlInfo = parseUrl(config.getConfig('cache.url'));\n\n if (typeof adserverTargeting.find(targetingKeyVal => targetingKeyVal.key === TARGETING_KEYS.CACHE_HOST) === 'undefined') {\n adserverTargeting.push(createKeyVal(TARGETING_KEYS.CACHE_HOST, function(bidResponse) {\n return (bidResponse?.adserverTargeting?.[TARGETING_KEYS.CACHE_HOST] || urlInfo.hostname) as string;\n }));\n }\n }\n }\n\n return standardSettings;\n}\n\nexport function getKeyValueTargetingPairs(bidderCode, custBidObj: Bid, {index = auctionManager.index} = {}) {\n if (!custBidObj) {\n return {};\n }\n const bidRequest = index.getBidRequest(custBidObj);\n var keyValues = {};\n\n // 1) set the keys from \"standard\" setting or from prebid defaults\n // initialize default if not set\n const standardSettings = getStandardBidderSettings(custBidObj.mediaType, bidderCode);\n setKeys(keyValues, standardSettings, custBidObj, bidRequest);\n\n // 2) set keys from specific bidder setting override if they exist\n if (bidderCode && bidderSettings.getOwn(bidderCode, JSON_MAPPING.ADSERVER_TARGETING)) {\n setKeys(keyValues, bidderSettings.ownSettingsFor(bidderCode), custBidObj, bidRequest);\n custBidObj.sendStandardTargeting = bidderSettings.get(bidderCode, 'sendStandardTargeting');\n }\n\n return keyValues;\n}\n\nfunction setKeys(keyValues, bidderSettings, custBidObj, bidReq) {\n var targeting = bidderSettings[JSON_MAPPING.ADSERVER_TARGETING];\n custBidObj.size = custBidObj.getSize();\n\n (targeting || []).forEach(function (kvPair) {\n var key = kvPair.key;\n var value = kvPair.val;\n\n if (keyValues[key]) {\n logWarn('The key: ' + key + ' is being overwritten');\n }\n\n if (isFn(value)) {\n try {\n value = value(custBidObj, bidReq);\n } catch (e) {\n logError('bidmanager', 'ERROR', e);\n }\n }\n\n if (\n ((typeof bidderSettings.suppressEmptyKeys !== 'undefined' && bidderSettings.suppressEmptyKeys === true) ||\n key === TARGETING_KEYS.DEAL || key === TARGETING_KEYS.ACAT || key === TARGETING_KEYS.DSP || key === TARGETING_KEYS.CRID) && // hb_deal & hb_acat are suppressed automatically if not set\n (\n isEmptyStr(value) ||\n value === null ||\n value === undefined\n )\n ) {\n logInfo(\"suppressing empty key '\" + key + \"' from adserver targeting\");\n } else {\n keyValues[key] = value;\n }\n });\n\n return keyValues;\n}\n\nexport function adjustBids(bid) {\n const bidPriceAdjusted = adjustCpm(bid.cpm, bid);\n\n if (bidPriceAdjusted >= 0) {\n bid.cpm = bidPriceAdjusted;\n }\n}\n\n/**\n * groupByPlacement is a reduce function that converts an array of Bid objects\n * to an object with placement codes as keys, with each key representing an object\n * with an array of `Bid` objects for that placement\n * @returns {*} as { [adUnitCode]: { bids: [Bid, Bid, Bid] } }\n */\nfunction groupByPlacement(bidsByPlacement, bid) {\n if (!bidsByPlacement[bid.adUnitCode]) { bidsByPlacement[bid.adUnitCode] = { bids: [] }; }\n bidsByPlacement[bid.adUnitCode].bids.push(bid);\n return bidsByPlacement;\n}\n\n/**\n * isValidPrice is price validation function\n * which checks if price from bid response\n * is not higher than top limit set in config\n * @type {Function}\n * @param bid\n * @returns {boolean}\n */\nfunction isValidPrice(bid) {\n const maxBidValue = config.getConfig('maxBid');\n if (!maxBidValue || !bid.cpm) return true;\n return maxBidValue >= Number(bid.cpm);\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"auction.js","names":["generateUUID","isEmpty","isEmptyStr","isFn","logError","logInfo","logMessage","logWarn","parseUrl","timestamp","getPriceBucketString","isNativeResponse","setNativeResponseProperties","batchAndStore","storeLocally","Renderer","config","userSync","hook","ignoreCallbackArg","OUTSTREAM","VIDEO","auctionManager","bidderSettings","events","adapterManager","EVENTS","GRANULARITY_OPTIONS","JSON_MAPPING","REJECTION_REASON","S2S","TARGETING_KEYS","defer","PbPromise","useMetrics","adjustCpm","getGlobal","ttlCollection","getMinBidCacheTTL","onMinBidCacheTTLChange","syncUsers","AUCTION_STARTED","AUCTION_IN_PROGRESS","AUCTION_COMPLETED","on","BID_ADJUSTMENT","bid","adjustBids","MAX_REQUESTS_PER_ORIGIN","outstandingRequests","sourceInfo","queuedCalls","pbjsInstance","resetAuctionState","length","forEach","ob","Object","keys","k","newAuction","_ref","adUnits","adUnitCodes","callback","cbTimeout","labels","auctionId","ortb2Fragments","metrics","_adUnits","_labels","_adUnitCodes","_auctionId","_timeout","_timelyRequests","Set","done","requestsDone","_bidsRejected","_callback","_bidderRequests","_bidsReceived","startTime","responseTimestamp","ttl","Math","max","_noBids","_winningBids","_auctionStart","_auctionEnd","_timeoutTimer","_auctionStatus","_nonBids","refresh","addBidRequests","bidderRequests","concat","addBidReceived","add","addBidRejected","bidsRejected","addNoBid","noBid","addNonBids","seatnonbids","getProperties","auctionEnd","auctionStatus","noBids","bidsReceived","toArray","winningBids","timeout","seatNonBids","startAuctionTimer","setTimeout","executeCallback","timedOut","clearTimeout","emit","AUCTION_TIMEOUT","undefined","timedOutRequests","filter","rq","has","bidderRequestId","flatMap","br","bids","BID_TIMEOUT","Date","now","checkpoint","timeBetween","resolve","AUCTION_END","bidsBackCallback","includes","adUnitCode","reduce","groupByPlacement","apply","e","callTimedOutBidders","userSyncConfig","getConfig","enableOverride","syncDelay","auctionDone","resetBidder","onTimelyResponse","callBids","bidRequests","measureTime","makeBidRequests","addBidderRequests","call","dispatch","addBidderRequestsCallback","context","bidRequest","requests","run","AUCTION_INIT","callbacks","auctionCallbacks","addBidResponse","adapterDone","request","source","origin","increment","SRA","runIfOriginHasCapacity","shift","push","hasCapacity","maxRequests","some","src","SRC","bidderCode","min","obj","prop","addWinningBid","winningBid","callBidWonBidder","adapterCode","bidder","deferBilling","triggerBilling","setBidTargeting","callSetTargetingBidder","SEAT_NON_BID","event","seatnonbid","getWinningBids","getAuctionStart","getAuctionEnd","getTimeout","getAuctionId","getAuctionStatus","getAdUnits","getAdUnitCodes","getBidRequests","getBidsReceived","getNoBids","getNonBids","getFPD","getMetrics","end","promise","reject","isValidPrice","PRICE_TOO_HIGH","responsesReady","ready","auctionInstance","index","arguments","outstandingBidsAdded","allAdapterCalledDone","bidderRequestsDone","bidResponseMap","afterBidAdded","handleBidResponse","handler","requestId","addCommonResponseProperties","acceptBidResponse","bidResponse","getPreparedBidForAuction","BID_ACCEPTED","mediaType","tryAddVideoBid","getAdUnit","addBidToAuction","rejectBidResponse","reason","rejectionReason","BID_REJECTED","bidderRequest","auctionOptionsConfig","secondaryBidders","every","bidId","NO_BID","addBid","rejected","finally","setupBidTargeting","timeSince","BID_RESPONSE","videoMediaType","getMediaTypes","originalRequestId","adUnitId","video","useCacheKey","useLocal","url","cacheUrl","ignoreBidderCacheKey","videoCacheKey","callPrebidCache","vastUrl","getBidderRequest","adUnit","start","requestTimestamp","assign","cpm","parseFloat","ttlBuffer","timeToRespond","instl","ortb2Imp","bidRenderer","getBidRequest","renderer","bidObjectMediaType","mediaTypes","bidMediaType","mediaTypeRenderer","render","backupOnly","install","options","renderNow","setRender","mediaTypeGranularity","getMediaTypeGranularity","priceStringsObj","pbLg","low","pbMg","med","pbHg","high","pbAg","auto","pbDg","dense","pbCg","custom","bidObject","keyValues","cpmCheck","get","dealId","getKeyValueTargetingPairs","adserverTargeting","mediaTypePriceGranularity","getPriceGranularity","granularity","getPriceByGranularity","bidGranularity","AUTO","DENSE","LOW","MEDIUM","HIGH","CUSTOM","getCreativeId","creativeId","getAdvertiserDomain","meta","advertiserDomains","flat","getDSP","networkId","networkName","getPrimaryCatId","catId","primaryCatId","Array","isArray","createKeyVal","key","value","val","bidReq","defaultAdserverTargeting","BIDDER","AD_ID","PRICE_BUCKET","SIZE","DEAL","SOURCE","FORMAT","ADOMAIN","ACAT","DSP","CRID","getStandardBidderSettings","standardSettings","settingsFor","ADSERVER_TARGETING","slice","UUID","CACHE_ID","targetingKeyVal","find","kvPair","urlInfo","CACHE_HOST","hostname","custBidObj","setKeys","getOwn","ownSettingsFor","sendStandardTargeting","targeting","size","getSize","suppressEmptyKeys","bidPriceAdjusted","bidsByPlacement","maxBidValue","Number"],"sourceRoot":"../../..","sources":["src/auction.ts"],"sourcesContent":["import {\n generateUUID,\n isEmpty,\n isEmptyStr,\n isFn,\n logError,\n logInfo,\n logMessage,\n logWarn,\n parseUrl,\n timestamp\n} from './utils.js';\nimport {getPriceBucketString} from './cpmBucketManager.js';\nimport {isNativeResponse, setNativeResponseProperties} from './native.js';\nimport {batchAndStore, storeLocally} from './videoCache.js';\nimport {Renderer} from './Renderer.js';\nimport {config} from './config.js';\nimport {userSync} from './userSync.js';\nimport {hook, ignoreCallbackArg} from './hook.js';\nimport {OUTSTREAM} from './video.js';\nimport {VIDEO} from './mediaTypes.js';\nimport {auctionManager} from './auctionManager.js';\nimport {bidderSettings} from './bidderSettings.js';\nimport * as events from './events.js';\nimport adapterManager, {type BidderRequest, type BidRequest} from './adapterManager.js';\nimport {EVENTS, GRANULARITY_OPTIONS, JSON_MAPPING, REJECTION_REASON, S2S, TARGETING_KEYS} from './constants.js';\nimport {defer, PbPromise} from './utils/promise.js';\nimport {type Metrics, useMetrics} from './utils/perfMetrics.js';\nimport {adjustCpm} from './utils/cpm.js';\nimport {getGlobal} from './prebidGlobal.js';\nimport {ttlCollection} from './utils/ttlCollection.js';\nimport {getMinBidCacheTTL, onMinBidCacheTTLChange} from './bidTTL.js';\nimport type {Bid, BidResponse} from \"./bidfactory.ts\";\nimport type {AdUnitCode, BidderCode, Identifier, ORTBFragments} from './types/common.d.ts';\nimport type {TargetingMap} from \"./targeting.ts\";\nimport type {AdUnit} from \"./adUnits.ts\";\nimport type {MediaType} from \"./mediaTypes.ts\";\nimport type {VideoContext} from \"./video.ts\";\n\nconst { syncUsers } = userSync;\n\nexport const AUCTION_STARTED = 'started';\nexport const AUCTION_IN_PROGRESS = 'inProgress';\nexport const AUCTION_COMPLETED = 'completed';\n\ntype AuctionStatus = typeof AUCTION_STARTED | typeof AUCTION_COMPLETED | typeof AUCTION_IN_PROGRESS;\n\n// register event for bid adjustment\nevents.on(EVENTS.BID_ADJUSTMENT, function (bid) {\n adjustBids(bid);\n});\n\nconst MAX_REQUESTS_PER_ORIGIN = 4;\nconst outstandingRequests = {};\nconst sourceInfo = {};\nconst queuedCalls = [];\n\nconst pbjsInstance = getGlobal();\n\n/**\n * Clear global state for tests\n */\nexport function resetAuctionState() {\n queuedCalls.length = 0;\n [outstandingRequests, sourceInfo].forEach((ob) => Object.keys(ob).forEach((k) => { delete ob[k] }));\n}\n\ntype AuctionOptions = {\n adUnits: AdUnit[],\n adUnitCodes: AdUnitCode[],\n callback: () => void;\n cbTimeout: number;\n labels: string[];\n auctionId: Identifier;\n ortb2Fragments: ORTBFragments;\n metrics: Metrics;\n}\n\nexport type AuctionProperties = ReturnType<ReturnType<typeof newAuction>['getProperties']>;\n\ndeclare module './events' {\n interface Events {\n /**\n * Fired when an auction starts.\n */\n [EVENTS.AUCTION_INIT]: [AuctionProperties];\n /**\n * Fired when an auction ends.\n */\n [EVENTS.AUCTION_END]: [AuctionProperties];\n /**\n * Fired when an auction times out (at least some of the bid adapters\n * did not reply before the timeout.\n */\n [EVENTS.AUCTION_TIMEOUT]: [AuctionProperties];\n /**\n * Fired when an auction times out.\n */\n [EVENTS.BID_TIMEOUT]: [BidRequest<BidderCode>[]];\n /**\n * Fired when a bid is received.\n */\n [EVENTS.BID_ACCEPTED]: [Partial<Bid>];\n /**\n * Fired when a bid is rejected.\n */\n [EVENTS.BID_REJECTED]: [Partial<Bid>];\n /**\n * Fired once for each bid request (unique combination of auction, ad unit and bidder)\n * that produced no bid.\n */\n [EVENTS.NO_BID]: [BidRequest<BidderCode>];\n /**\n * Fired when a bid is received.\n */\n [EVENTS.BID_RESPONSE]: [Bid];\n /**\n * Fired once for each bid, immediately after its adjustment (see bidCpmAdjustment).\n */\n [EVENTS.BID_ADJUSTMENT]: [Partial<Bid>];\n }\n}\n\nexport interface AuctionOptionsConfig {\n /**\n * Specifies bidders that the Prebid auction will no longer wait for before determining the auction has completed.\n * This may be helpful if you find there are a number of low performing and/or high timeout bidders in your page’s rotation.\n */\n secondaryBidders?: BidderCode[]\n /**\n * When true, prevents banner bids from being rendered more than once. It should only be enabled after auto-refreshing is implemented correctly. Default is false.\n */\n suppressStaleRender?: boolean;\n /**\n * When true, prevent bids from being rendered if TTL is reached. Default is false.\n */\n suppressExpiredRender?: boolean;\n}\n\nexport interface PriceBucketConfig {\n buckets: {\n precision?: number;\n max: number;\n increment: number;\n }[];\n}\n\ndeclare module './config' {\n interface Config {\n /**\n * Since browsers have a limit of how many requests they will allow to a specific domain before they block,\n * Prebid.js will queue auctions that would cause requests to a specific origin to exceed that limit.\n * The limit is different for each browser. Prebid.js defaults to a max of 4 requests per origin.\n */\n maxRequestsPerOrigin?: number;\n auctionOptions?: AuctionOptionsConfig;\n priceGranularity?: (typeof GRANULARITY_OPTIONS)[keyof typeof GRANULARITY_OPTIONS];\n customPriceBucket?: PriceBucketConfig;\n mediaTypePriceGranularity?: {[K in MediaType]?: PriceBucketConfig} & {[K in VideoContext as `${typeof VIDEO}-${K}`]?: PriceBucketConfig};\n }\n}\n\nexport function newAuction({adUnits, adUnitCodes, callback, cbTimeout, labels, auctionId, ortb2Fragments, metrics}: AuctionOptions) {\n metrics = useMetrics(metrics);\n const _adUnits = adUnits;\n const _labels = labels;\n const _adUnitCodes = adUnitCodes;\n const _auctionId: Identifier = auctionId || generateUUID();\n const _timeout = cbTimeout;\n const _timelyRequests = new Set();\n const done = defer<void>();\n const requestsDone = defer<void>();\n let _bidsRejected: Partial<Bid>[] = [];\n let _callback = callback;\n let _bidderRequests: BidderRequest<BidderCode>[] = [];\n const _bidsReceived = ttlCollection<Bid>({\n startTime: (bid) => bid.responseTimestamp,\n ttl: (bid) => getMinBidCacheTTL() == null ? null : Math.max(getMinBidCacheTTL(), bid.ttl) * 1000\n });\n let _noBids: BidRequest<BidderCode>[] = [];\n let _winningBids: Bid[] = [];\n let _auctionStart: number;\n let _auctionEnd: number;\n let _timeoutTimer;\n let _auctionStatus: AuctionStatus;\n let _nonBids = [];\n\n onMinBidCacheTTLChange(() => _bidsReceived.refresh());\n\n function addBidRequests(bidderRequests) { _bidderRequests = _bidderRequests.concat(bidderRequests); }\n function addBidReceived(bid) { _bidsReceived.add(bid); }\n function addBidRejected(bidsRejected) { _bidsRejected = _bidsRejected.concat(bidsRejected); }\n function addNoBid(noBid) { _noBids = _noBids.concat(noBid); }\n function addNonBids(seatnonbids) { _nonBids = _nonBids.concat(seatnonbids); }\n\n function getProperties() {\n return {\n auctionId: _auctionId,\n timestamp: _auctionStart,\n auctionEnd: _auctionEnd,\n auctionStatus: _auctionStatus,\n adUnits: _adUnits,\n adUnitCodes: _adUnitCodes,\n labels: _labels,\n bidderRequests: _bidderRequests,\n noBids: _noBids,\n bidsReceived: _bidsReceived.toArray(),\n bidsRejected: _bidsRejected,\n winningBids: _winningBids,\n timeout: _timeout,\n metrics: metrics,\n seatNonBids: _nonBids\n };\n }\n\n function startAuctionTimer() {\n _timeoutTimer = setTimeout(() => executeCallback(true), _timeout);\n }\n\n function executeCallback(timedOut) {\n if (!timedOut) {\n clearTimeout(_timeoutTimer);\n } else {\n events.emit(EVENTS.AUCTION_TIMEOUT, getProperties());\n }\n if (_auctionEnd === undefined) {\n let timedOutRequests = [];\n if (timedOut) {\n logMessage(`Auction ${_auctionId} timedOut`);\n timedOutRequests = _bidderRequests.filter(rq => !_timelyRequests.has(rq.bidderRequestId)).flatMap(br => br.bids)\n if (timedOutRequests.length) {\n events.emit(EVENTS.BID_TIMEOUT, timedOutRequests);\n }\n }\n\n _auctionStatus = AUCTION_COMPLETED;\n _auctionEnd = Date.now();\n metrics.checkpoint('auctionEnd');\n metrics.timeBetween('requestBids', 'auctionEnd', 'requestBids.total');\n metrics.timeBetween('callBids', 'auctionEnd', 'requestBids.callBids');\n done.resolve();\n\n events.emit(EVENTS.AUCTION_END, getProperties());\n bidsBackCallback(_adUnits, function () {\n try {\n if (_callback != null) {\n const bids = _bidsReceived.toArray()\n .filter(bid => _adUnitCodes.includes(bid.adUnitCode))\n .reduce(groupByPlacement, {});\n _callback.apply(pbjsInstance, [bids, timedOut, _auctionId]);\n _callback = null;\n }\n } catch (e) {\n logError('Error executing bidsBackHandler', null, e);\n } finally {\n // Calling timed out bidders\n if (timedOutRequests.length) {\n adapterManager.callTimedOutBidders(adUnits, timedOutRequests, _timeout);\n }\n // Only automatically sync if the publisher has not chosen to \"enableOverride\"\n const userSyncConfig = config.getConfig('userSync') ?? {} as any;\n if (!userSyncConfig.enableOverride) {\n // Delay the auto sync by the config delay\n syncUsers(userSyncConfig.syncDelay);\n }\n }\n })\n }\n }\n\n function auctionDone() {\n config.resetBidder();\n // when all bidders have called done callback atleast once it means auction is complete\n logInfo(`Bids Received for Auction with id: ${_auctionId}`, _bidsReceived.toArray());\n _auctionStatus = AUCTION_COMPLETED;\n executeCallback(false);\n }\n\n function onTimelyResponse(bidderRequestId) {\n _timelyRequests.add(bidderRequestId);\n }\n\n function callBids() {\n _auctionStatus = AUCTION_STARTED;\n _auctionStart = Date.now();\n\n const bidRequests = metrics.measureTime('requestBids.makeRequests',\n () => adapterManager.makeBidRequests(_adUnits, _auctionStart, _auctionId, _timeout, _labels, ortb2Fragments, metrics));\n logInfo(`Bids Requested for Auction with id: ${_auctionId}`, bidRequests);\n\n metrics.checkpoint('callBids')\n\n if (bidRequests.length < 1) {\n logWarn('No valid bid requests returned for auction');\n auctionDone();\n } else {\n addBidderRequests.call({\n dispatch: addBidderRequestsCallback,\n context: this\n }, bidRequests);\n }\n }\n\n /**\n * callback executed after addBidderRequests completes\n * @param {BidRequest[]} bidRequests\n */\n function addBidderRequestsCallback(bidRequests) {\n bidRequests.forEach(bidRequest => {\n addBidRequests(bidRequest);\n });\n\n const requests = {};\n const call = {\n bidRequests,\n run: () => {\n startAuctionTimer();\n\n _auctionStatus = AUCTION_IN_PROGRESS;\n\n events.emit(EVENTS.AUCTION_INIT, getProperties());\n\n const callbacks = auctionCallbacks(auctionDone, this);\n adapterManager.callBids(_adUnits, bidRequests, callbacks.addBidResponse, callbacks.adapterDone, {\n request(source, origin) {\n increment(outstandingRequests, origin);\n increment(requests, source);\n\n if (!sourceInfo[source]) {\n sourceInfo[source] = {\n SRA: true,\n origin\n };\n }\n if (requests[source] > 1) {\n sourceInfo[source].SRA = false;\n }\n },\n done(origin) {\n outstandingRequests[origin]--;\n if (queuedCalls[0]) {\n if (runIfOriginHasCapacity(queuedCalls[0])) {\n queuedCalls.shift();\n }\n }\n }\n }, _timeout, onTimelyResponse, ortb2Fragments);\n requestsDone.resolve();\n }\n };\n\n if (!runIfOriginHasCapacity(call)) {\n logWarn('queueing auction due to limited endpoint capacity');\n queuedCalls.push(call);\n }\n\n function runIfOriginHasCapacity(call) {\n let hasCapacity = true;\n\n const maxRequests = config.getConfig('maxRequestsPerOrigin') || MAX_REQUESTS_PER_ORIGIN;\n\n call.bidRequests.some(bidRequest => {\n let requests = 1;\n const source = (typeof bidRequest.src !== 'undefined' && bidRequest.src === S2S.SRC) ? 's2s'\n : bidRequest.bidderCode;\n // if we have no previous info on this source just let them through\n if (sourceInfo[source]) {\n if (sourceInfo[source].SRA === false) {\n // some bidders might use more than the MAX_REQUESTS_PER_ORIGIN in a single auction. In those cases\n // set their request count to MAX_REQUESTS_PER_ORIGIN so the auction isn't permanently queued waiting\n // for capacity for that bidder\n requests = Math.min(bidRequest.bids.length, maxRequests);\n }\n if (outstandingRequests[sourceInfo[source].origin] + requests > maxRequests) {\n hasCapacity = false;\n }\n }\n // return only used for terminating this .some() iteration early if it is determined we don't have capacity\n return !hasCapacity;\n });\n\n if (hasCapacity) {\n call.run();\n }\n\n return hasCapacity;\n }\n\n function increment(obj, prop) {\n if (typeof obj[prop] === 'undefined') {\n obj[prop] = 1\n } else {\n obj[prop]++;\n }\n }\n }\n\n function addWinningBid(winningBid) {\n _winningBids = _winningBids.concat(winningBid);\n adapterManager.callBidWonBidder(winningBid.adapterCode || winningBid.bidder, winningBid, adUnits);\n if (!winningBid.deferBilling) {\n adapterManager.triggerBilling(winningBid)\n }\n }\n\n function setBidTargeting(bid) {\n adapterManager.callSetTargetingBidder(bid.adapterCode || bid.bidder, bid);\n }\n\n events.on(EVENTS.SEAT_NON_BID, (event) => {\n if (event.auctionId === _auctionId) {\n addNonBids(event.seatnonbid)\n }\n });\n\n return {\n addBidReceived,\n addBidRejected,\n addNoBid,\n callBids,\n addWinningBid,\n setBidTargeting,\n getWinningBids: () => _winningBids,\n getAuctionStart: () => _auctionStart,\n getAuctionEnd: () => _auctionEnd,\n getTimeout: () => _timeout,\n getAuctionId: () => _auctionId,\n getAuctionStatus: () => _auctionStatus,\n getAdUnits: () => _adUnits,\n getAdUnitCodes: () => _adUnitCodes,\n getBidRequests: () => _bidderRequests,\n getBidsReceived: () => _bidsReceived.toArray(),\n getNoBids: () => _noBids,\n getNonBids: () => _nonBids,\n getFPD: () => ortb2Fragments,\n getMetrics: () => metrics,\n end: done.promise,\n requestsDone: requestsDone.promise,\n getProperties\n };\n}\n\ndeclare module './hook' {\n interface NamedHooks {\n addBidResponse: typeof addBidResponse\n }\n}\n\n/**\n * Hook into this to intercept bids before they are added to an auction.\n */\nexport const addBidResponse = ignoreCallbackArg(hook('async', function(adUnitCode: string, bid: Partial<Bid>, reject: (reason: (typeof REJECTION_REASON)[keyof typeof REJECTION_REASON]) => void): void {\n if (!isValidPrice(bid)) {\n reject(REJECTION_REASON.PRICE_TOO_HIGH)\n } else {\n this.dispatch.call(null, adUnitCode, bid);\n }\n}, 'addBidResponse'));\n\n/**\n * Delay hook for adapter responses.\n *\n * `ready` is a promise; auctions wait for it to resolve before closing. Modules can hook into this\n * to delay the end of auctions while they perform initialization that does not need to delay their start.\n */\nexport const responsesReady = hook('sync', (ready) => ready, 'responsesReady');\n\nexport const addBidderRequests = hook('sync', function(bidderRequests) {\n this.dispatch.call(this.context, bidderRequests);\n}, 'addBidderRequests');\n\nexport const bidsBackCallback = hook('async', function (adUnits, callback) {\n if (callback) {\n callback();\n }\n}, 'bidsBackCallback');\n\nexport type AddBidResponse = {\n (adUnitCode: AdUnitCode, bid: BidResponse): void;\n reject(adUnitCode: AdUnitCode, bid: BidResponse, reason: typeof REJECTION_REASON[keyof typeof REJECTION_REASON]) : void;\n}\n\nexport function auctionCallbacks(auctionDone, auctionInstance, {index = auctionManager.index} = {}) {\n let outstandingBidsAdded = 0;\n let allAdapterCalledDone = false;\n const bidderRequestsDone = new Set();\n const bidResponseMap = {};\n\n function afterBidAdded() {\n outstandingBidsAdded--;\n if (allAdapterCalledDone && outstandingBidsAdded === 0) {\n auctionDone()\n }\n }\n\n function handleBidResponse(adUnitCode: string, bid: Partial<Bid>, handler) {\n bidResponseMap[bid.requestId] = true;\n addCommonResponseProperties(bid, adUnitCode)\n outstandingBidsAdded++;\n return handler(afterBidAdded);\n }\n\n function acceptBidResponse(adUnitCode: string, bid: Partial<Bid>) {\n handleBidResponse(adUnitCode, bid, (done) => {\n const bidResponse = getPreparedBidForAuction(bid);\n events.emit(EVENTS.BID_ACCEPTED, bidResponse);\n if (FEATURES.VIDEO && bidResponse.mediaType === VIDEO) {\n tryAddVideoBid(auctionInstance, bidResponse, done);\n } else {\n if (FEATURES.NATIVE && isNativeResponse(bidResponse)) {\n setNativeResponseProperties(bidResponse, index.getAdUnit(bidResponse));\n }\n addBidToAuction(auctionInstance, bidResponse);\n done();\n }\n });\n }\n\n function rejectBidResponse(adUnitCode, bid, reason) {\n return handleBidResponse(adUnitCode, bid, (done) => {\n bid.rejectionReason = reason;\n logWarn(`Bid from ${bid.bidder || 'unknown bidder'} was rejected: ${reason}`, bid)\n events.emit(EVENTS.BID_REJECTED, bid);\n auctionInstance.addBidRejected(bid);\n done();\n })\n }\n\n function adapterDone() {\n // eslint-disable-next-line @typescript-eslint/no-this-alias\n const bidderRequest = this;\n let bidderRequests = auctionInstance.getBidRequests();\n const auctionOptionsConfig = config.getConfig('auctionOptions');\n\n bidderRequestsDone.add(bidderRequest);\n\n if (auctionOptionsConfig && !isEmpty(auctionOptionsConfig)) {\n const secondaryBidders = auctionOptionsConfig.secondaryBidders;\n if (secondaryBidders && !bidderRequests.every(bidder => secondaryBidders.includes(bidder.bidderCode))) {\n bidderRequests = bidderRequests.filter(request => !secondaryBidders.includes(request.bidderCode));\n }\n }\n\n allAdapterCalledDone = bidderRequests.every(bidderRequest => bidderRequestsDone.has(bidderRequest));\n\n bidderRequest.bids.forEach(bid => {\n if (!bidResponseMap[bid.bidId]) {\n auctionInstance.addNoBid(bid);\n events.emit(EVENTS.NO_BID, bid);\n }\n });\n\n if (allAdapterCalledDone && outstandingBidsAdded === 0) {\n auctionDone();\n }\n }\n\n return {\n addBidResponse: (function () {\n function addBid(adUnitCode, bid) {\n addBidResponse.call({\n dispatch: acceptBidResponse,\n }, adUnitCode, bid, (() => {\n let rejected = false;\n return (reason) => {\n if (!rejected) {\n rejectBidResponse(adUnitCode, bid, reason);\n rejected = true;\n }\n }\n })())\n }\n addBid.reject = rejectBidResponse;\n return addBid;\n })(),\n adapterDone: function () {\n responsesReady(PbPromise.resolve()).finally(() => adapterDone.call(this));\n }\n }\n}\n\n// Add a bid to the auction.\nexport function addBidToAuction(auctionInstance, bidResponse: Bid) {\n setupBidTargeting(bidResponse);\n\n useMetrics(bidResponse.metrics).timeSince('addBidResponse', 'addBidResponse.total');\n auctionInstance.addBidReceived(bidResponse);\n events.emit(EVENTS.BID_RESPONSE, bidResponse);\n}\n\n// Video bids may fail if the cache is down, or there's trouble on the network.\nfunction tryAddVideoBid(auctionInstance, bidResponse, afterBidAdded, {index = auctionManager.index} = {}) {\n let addBid = true;\n\n const videoMediaType = index.getMediaTypes({\n requestId: bidResponse.originalRequestId || bidResponse.requestId,\n adUnitId: bidResponse.adUnitId\n })?.video;\n const context = videoMediaType && videoMediaType?.context;\n const useCacheKey = videoMediaType && videoMediaType?.useCacheKey;\n const {\n useLocal,\n url: cacheUrl,\n ignoreBidderCacheKey\n } = config.getConfig('cache') || {};\n\n if (useLocal) {\n // stores video bid vast as local blob in the browser\n storeLocally(bidResponse);\n } else if (cacheUrl && (useCacheKey || context !== OUTSTREAM)) {\n if (!bidResponse.videoCacheKey || ignoreBidderCacheKey) {\n addBid = false;\n callPrebidCache(auctionInstance, bidResponse, afterBidAdded, videoMediaType);\n } else if (!bidResponse.vastUrl) {\n logError('videoCacheKey specified but not required vastUrl for video bid');\n addBid = false;\n }\n }\n\n if (addBid) {\n addBidToAuction(auctionInstance, bidResponse);\n afterBidAdded();\n }\n}\n\nexport const callPrebidCache = hook('async', function(auctionInstance, bidResponse, afterBidAdded, videoMediaType) {\n if (FEATURES.VIDEO) {\n batchAndStore(auctionInstance, bidResponse, afterBidAdded);\n }\n}, 'callPrebidCache');\n\ndeclare module './bidfactory' {\n interface BaseBidResponse {\n /**\n * Targeting custom key-value pairs for this bid.\n */\n adserverTargeting?: TargetingMap<unknown>;\n }\n\n interface BaseBid {\n /**\n * true if this bid is for an interstitial slot.\n */\n instl: boolean;\n /**\n * Timestamp of when the request for this bid was generated.\n */\n requestTimestamp: number;\n /**\n * Timestamp of when the response for this bid was received.\n */\n responseTimestamp: number;\n /**\n * responseTimestamp - requestTimestamp\n */\n timeToRespond: number;\n /**\n * alias of `bidderCode`.\n */\n bidder: BidderCode;\n /**\n * Code of the ad unit this bid is for.\n */\n adUnitCode: string;\n /**\n * TTL buffer for this bid; it will expire after `.ttl` - `.ttlBuffer` seconds have elapsed.\n */\n ttlBuffer?: number;\n /**\n * Low granularity price bucket for this bid.\n */\n pbLg: string;\n /**\n * Medium granularity price bucket for this bid.\n */\n pbMg: string;\n /**\n * High granularity price bucket for this bid.\n */\n pbHg: string;\n /**\n * Auto granularity price bucket for this bid.\n */\n pbAg: string;\n /**\n * Dense granularity price bucket for this bid.\n */\n pbDg: string;\n /**\n * Custom granularity price bucket for this bid.\n */\n pbCg: string;\n /**\n * This bid's creative size, expressed as width x height.\n */\n size: ReturnType<BaseBid['getSize']>\n /**\n * If custom targeting was defined, whether standard targeting should also be used for this bid.\n */\n sendStandardTargeting?: boolean;\n adserverTargeting: BaseBidResponse['adserverTargeting'];\n }\n}\n/**\n * Augment `bidResponse` with properties that are common across all bids - including rejected bids.\n */\nfunction addCommonResponseProperties(bidResponse: Partial<Bid>, adUnitCode: string, {index = auctionManager.index} = {}) {\n const bidderRequest = index.getBidderRequest(bidResponse);\n const adUnit = index.getAdUnit(bidResponse);\n const start = (bidderRequest && bidderRequest.start) || bidResponse.requestTimestamp;\n\n Object.assign(bidResponse, {\n responseTimestamp: bidResponse.responseTimestamp || timestamp(),\n requestTimestamp: bidResponse.requestTimestamp || start,\n cpm: parseFloat(bidResponse.cpm) || 0,\n bidder: bidResponse.bidder || bidResponse.bidderCode,\n adUnitCode\n });\n\n if (adUnit?.ttlBuffer != null) {\n bidResponse.ttlBuffer = adUnit.ttlBuffer;\n }\n\n bidResponse.timeToRespond = bidResponse.responseTimestamp - bidResponse.requestTimestamp;\n}\n\n/**\n * Add additional bid response properties that are universal for all _accepted_ bids.\n */\nfunction getPreparedBidForAuction(bid: Partial<Bid>, {index = auctionManager.index} = {}): Bid {\n // Let listeners know that now is the time to adjust the bid, if they want to.\n //\n // CAREFUL: Publishers rely on certain bid properties to be available (like cpm),\n // but others to not be set yet (like priceStrings). See #1372 and #1389.\n events.emit(EVENTS.BID_ADJUSTMENT, bid);\n\n const adUnit = index.getAdUnit(bid);\n bid.instl = adUnit?.ortb2Imp?.instl === 1;\n\n // a publisher-defined renderer can be used to render bids\n const bidRenderer = index.getBidRequest(bid)?.renderer || adUnit.renderer;\n\n // a publisher can also define a renderer for a mediaType\n const bidObjectMediaType = bid.mediaType;\n const mediaTypes = index.getMediaTypes(bid);\n const bidMediaType = mediaTypes && mediaTypes[bidObjectMediaType];\n\n var mediaTypeRenderer = bidMediaType && bidMediaType.renderer;\n\n var renderer = null;\n\n // the renderer for the mediaType takes precendence\n if (mediaTypeRenderer && mediaTypeRenderer.render && !(mediaTypeRenderer.backupOnly === true && bid.renderer)) {\n renderer = mediaTypeRenderer;\n } else if (bidRenderer && bidRenderer.render && !(bidRenderer.backupOnly === true && bid.renderer)) {\n renderer = bidRenderer;\n }\n\n if (renderer) {\n // be aware, an adapter could already have installed the bidder, in which case this overwrite's the existing adapter\n bid.renderer = Renderer.install({ url: renderer.url, config: renderer.options, renderNow: renderer.url == null });// rename options to config, to make it consistent?\n bid.renderer.setRender(renderer.render);\n }\n\n // Use the config value 'mediaTypeGranularity' if it has been defined for mediaType, else use 'customPriceBucket'\n const mediaTypeGranularity = getMediaTypeGranularity(bid.mediaType, mediaTypes, config.getConfig('mediaTypePriceGranularity'));\n const priceStringsObj = getPriceBucketString(\n bid.cpm,\n (typeof mediaTypeGranularity === 'object') ? mediaTypeGranularity : config.getConfig('customPriceBucket'),\n config.getConfig('currency.granularityMultiplier')\n );\n bid.pbLg = priceStringsObj.low;\n bid.pbMg = priceStringsObj.med;\n bid.pbHg = priceStringsObj.high;\n bid.pbAg = priceStringsObj.auto;\n bid.pbDg = priceStringsObj.dense;\n bid.pbCg = priceStringsObj.custom;\n\n return bid as Bid;\n}\n\nfunction setupBidTargeting(bidObject: Bid) {\n let keyValues;\n const cpmCheck = (bidderSettings.get(bidObject.bidderCode, 'allowZeroCpmBids') === true) ? bidObject.cpm >= 0 : bidObject.cpm > 0;\n if (bidObject.bidderCode && (cpmCheck || bidObject.dealId)) {\n keyValues = getKeyValueTargetingPairs(bidObject.bidderCode, bidObject);\n }\n\n // use any targeting provided as defaults, otherwise just set from getKeyValueTargetingPairs\n bidObject.adserverTargeting = Object.assign(bidObject.adserverTargeting || {}, keyValues);\n}\n\nexport function getMediaTypeGranularity(mediaType, mediaTypes, mediaTypePriceGranularity) {\n if (mediaType && mediaTypePriceGranularity) {\n if (FEATURES.VIDEO && mediaType === VIDEO) {\n const context = mediaTypes?.[VIDEO]?.context ?? 'instream';\n if (mediaTypePriceGranularity[`${VIDEO}-${context}`]) {\n return mediaTypePriceGranularity[`${VIDEO}-${context}`];\n }\n }\n return mediaTypePriceGranularity[mediaType];\n }\n}\n\n/**\n * This function returns the price granularity defined. It can be either publisher defined or default value\n * @param {Bid} bid bid response object\n * @param {object} obj\n * @param {object} obj.index\n * @returns {string} granularity\n */\nexport const getPriceGranularity = (bid, {index = auctionManager.index} = {}) => {\n // Use the config value 'mediaTypeGranularity' if it has been set for mediaType, else use 'priceGranularity'\n const mediaTypeGranularity = getMediaTypeGranularity(bid.mediaType, index.getMediaTypes(bid), config.getConfig('mediaTypePriceGranularity'));\n const granularity = (typeof bid.mediaType === 'string' && mediaTypeGranularity) ? ((typeof mediaTypeGranularity === 'string') ? mediaTypeGranularity : 'custom') : config.getConfig('priceGranularity');\n return granularity;\n}\n\n/**\n * This function returns a function to get bid price by price granularity\n * @param {string} granularity\n * @returns {function}\n */\nexport const getPriceByGranularity = (granularity?) => {\n return (bid) => {\n const bidGranularity = granularity || getPriceGranularity(bid);\n if (bidGranularity === GRANULARITY_OPTIONS.AUTO) {\n return bid.pbAg;\n } else if (bidGranularity === GRANULARITY_OPTIONS.DENSE) {\n return bid.pbDg;\n } else if (bidGranularity === GRANULARITY_OPTIONS.LOW) {\n return bid.pbLg;\n } else if (bidGranularity === GRANULARITY_OPTIONS.MEDIUM) {\n return bid.pbMg;\n } else if (bidGranularity === GRANULARITY_OPTIONS.HIGH) {\n return bid.pbHg;\n } else if (bidGranularity === GRANULARITY_OPTIONS.CUSTOM) {\n return bid.pbCg;\n }\n }\n}\n\n/**\n * This function returns a function to get crid from bid response\n * @returns {function}\n */\nexport const getCreativeId = () => {\n return (bid) => {\n return (bid.creativeId) ? bid.creativeId : '';\n }\n}\n\n/**\n * This function returns a function to get first advertiser domain from bid response meta\n * @returns {function}\n */\nexport const getAdvertiserDomain = () => {\n return (bid) => {\n return (bid.meta && bid.meta.advertiserDomains && bid.meta.advertiserDomains.length > 0) ? [bid.meta.advertiserDomains].flat()[0] : '';\n }\n}\n\n/**\n * This function returns a function to get dsp name or id from bid response meta\n * @returns {function}\n */\nexport const getDSP = () => {\n return (bid) => {\n return (bid.meta && (bid.meta.networkId || bid.meta.networkName)) ? bid?.meta?.networkName || bid?.meta?.networkId : '';\n }\n}\n\n/**\n * This function returns a function to get the primary category id from bid response meta\n * @returns {function}\n */\nexport const getPrimaryCatId = () => {\n return (bid) => {\n const catId = bid?.meta?.primaryCatId;\n if (Array.isArray(catId)) {\n return catId[0] || '';\n }\n return catId || '';\n };\n}\n\nexport interface DefaultTargeting {\n /**\n * Bidder code.\n */\n [TARGETING_KEYS.BIDDER]: Bid['bidderCode'];\n /**\n * Ad ID.\n */\n [TARGETING_KEYS.AD_ID]: Bid['adId'];\n /**\n * Price bucket.\n */\n [TARGETING_KEYS.PRICE_BUCKET]: string;\n /**\n * Size, expressed as ${width}x${height}.\n */\n [TARGETING_KEYS.SIZE]: Bid['size'];\n /**\n * Deal ID.\n */\n [TARGETING_KEYS.DEAL]: Bid['dealId'];\n /**\n * Bid source - either client or s2s.\n */\n [TARGETING_KEYS.SOURCE]: Bid['source'];\n /**\n * Media type.\n */\n [TARGETING_KEYS.FORMAT]: Bid['mediaType'];\n /**\n * Advertiser domain.\n */\n [TARGETING_KEYS.ADOMAIN]: Bid['meta']['advertiserDomains'][0];\n /**\n * Primary category ID.\n */\n [TARGETING_KEYS.ACAT]: Bid['meta']['primaryCatId'];\n /**\n * DSP network name.\n */\n [TARGETING_KEYS.DSP]: Bid['meta']['networkName'];\n /**\n * Creative ID.\n */\n [TARGETING_KEYS.CRID]: Bid['creativeId'];\n /**\n * Video cache key.\n */\n [TARGETING_KEYS.UUID]: Bid['videoCacheKey'];\n /**\n * Video cache key.\n */\n [TARGETING_KEYS.CACHE_ID]: Bid['videoCacheKey'];\n /**\n * Video cache host.\n */\n [TARGETING_KEYS.CACHE_HOST]: string;\n}\n\ntype KeyValFn<K extends keyof DefaultTargeting> = (bidResponse: Bid, bidRequest: BidRequest<BidderCode>) => DefaultTargeting[K];\ntype KeyValProp<K extends keyof DefaultTargeting> = {\n [P in keyof Bid]: Bid[P] extends DefaultTargeting[K] ? P : never\n}[keyof Bid];\n\nfunction createKeyVal<K extends keyof DefaultTargeting>(key: K, value: KeyValFn<K> | KeyValProp<K>) {\n return {\n key,\n val: (typeof value === 'function')\n ? function (bidResponse, bidReq) {\n return value(bidResponse, bidReq);\n }\n : function (bidResponse) {\n return bidResponse[value];\n }\n };\n}\n\nfunction defaultAdserverTargeting() {\n return [\n createKeyVal(TARGETING_KEYS.BIDDER, 'bidderCode'),\n createKeyVal(TARGETING_KEYS.AD_ID, 'adId'),\n createKeyVal(TARGETING_KEYS.PRICE_BUCKET, getPriceByGranularity()),\n createKeyVal(TARGETING_KEYS.SIZE, 'size'),\n createKeyVal(TARGETING_KEYS.DEAL, 'dealId'),\n createKeyVal(TARGETING_KEYS.SOURCE, 'source'),\n createKeyVal(TARGETING_KEYS.FORMAT, 'mediaType'),\n createKeyVal(TARGETING_KEYS.ADOMAIN, getAdvertiserDomain()),\n createKeyVal(TARGETING_KEYS.ACAT, getPrimaryCatId()),\n createKeyVal(TARGETING_KEYS.DSP, getDSP()),\n createKeyVal(TARGETING_KEYS.CRID, getCreativeId()),\n ]\n}\n\n/**\n * @param {string} mediaType\n * @param {string} bidderCode\n * @returns {*}\n */\nexport function getStandardBidderSettings(mediaType, bidderCode) {\n const standardSettings = Object.assign({}, bidderSettings.settingsFor(null));\n if (!standardSettings[JSON_MAPPING.ADSERVER_TARGETING]) {\n standardSettings[JSON_MAPPING.ADSERVER_TARGETING] = defaultAdserverTargeting();\n }\n\n if (FEATURES.VIDEO && mediaType === 'video') {\n const adserverTargeting = standardSettings[JSON_MAPPING.ADSERVER_TARGETING].slice();\n standardSettings[JSON_MAPPING.ADSERVER_TARGETING] = adserverTargeting;\n\n // Adding hb_uuid + hb_cache_id\n [TARGETING_KEYS.UUID, TARGETING_KEYS.CACHE_ID].forEach(targetingKeyVal => {\n if (typeof adserverTargeting.find(kvPair => kvPair.key === targetingKeyVal) === 'undefined') {\n adserverTargeting.push(createKeyVal(targetingKeyVal, 'videoCacheKey'));\n }\n });\n\n // Adding hb_cache_host\n if (config.getConfig('cache.url') && (!bidderCode || bidderSettings.get(bidderCode, 'sendStandardTargeting') !== false)) {\n const urlInfo = parseUrl(config.getConfig('cache.url'));\n\n if (typeof adserverTargeting.find(targetingKeyVal => targetingKeyVal.key === TARGETING_KEYS.CACHE_HOST) === 'undefined') {\n adserverTargeting.push(createKeyVal(TARGETING_KEYS.CACHE_HOST, function(bidResponse) {\n return (bidResponse?.adserverTargeting?.[TARGETING_KEYS.CACHE_HOST] || urlInfo.hostname) as string;\n }));\n }\n }\n }\n\n return standardSettings;\n}\n\nexport function getKeyValueTargetingPairs(bidderCode, custBidObj: Bid, {index = auctionManager.index} = {}) {\n if (!custBidObj) {\n return {};\n }\n const bidRequest = index.getBidRequest(custBidObj);\n var keyValues = {};\n\n // 1) set the keys from \"standard\" setting or from prebid defaults\n // initialize default if not set\n const standardSettings = getStandardBidderSettings(custBidObj.mediaType, bidderCode);\n setKeys(keyValues, standardSettings, custBidObj, bidRequest);\n\n // 2) set keys from specific bidder setting override if they exist\n if (bidderCode && bidderSettings.getOwn(bidderCode, JSON_MAPPING.ADSERVER_TARGETING)) {\n setKeys(keyValues, bidderSettings.ownSettingsFor(bidderCode), custBidObj, bidRequest);\n custBidObj.sendStandardTargeting = bidderSettings.get(bidderCode, 'sendStandardTargeting');\n }\n\n return keyValues;\n}\n\nfunction setKeys(keyValues, bidderSettings, custBidObj, bidReq) {\n var targeting = bidderSettings[JSON_MAPPING.ADSERVER_TARGETING];\n custBidObj.size = custBidObj.getSize();\n\n (targeting || []).forEach(function (kvPair) {\n var key = kvPair.key;\n var value = kvPair.val;\n\n if (keyValues[key]) {\n logWarn('The key: ' + key + ' is being overwritten');\n }\n\n if (isFn(value)) {\n try {\n value = value(custBidObj, bidReq);\n } catch (e) {\n logError('bidmanager', 'ERROR', e);\n }\n }\n\n if (\n ((typeof bidderSettings.suppressEmptyKeys !== 'undefined' && bidderSettings.suppressEmptyKeys === true) ||\n key === TARGETING_KEYS.DEAL || key === TARGETING_KEYS.ACAT || key === TARGETING_KEYS.DSP || key === TARGETING_KEYS.CRID) && // hb_deal & hb_acat are suppressed automatically if not set\n (\n isEmptyStr(value) ||\n value === null ||\n value === undefined\n )\n ) {\n logInfo(\"suppressing empty key '\" + key + \"' from adserver targeting\");\n } else {\n keyValues[key] = value;\n }\n });\n\n return keyValues;\n}\n\nexport function adjustBids(bid) {\n const bidPriceAdjusted = adjustCpm(bid.cpm, bid);\n\n if (bidPriceAdjusted >= 0) {\n bid.cpm = bidPriceAdjusted;\n }\n}\n\n/**\n * groupByPlacement is a reduce function that converts an array of Bid objects\n * to an object with placement codes as keys, with each key representing an object\n * with an array of `Bid` objects for that placement\n * @returns {*} as { [adUnitCode]: { bids: [Bid, Bid, Bid] } }\n */\nfunction groupByPlacement(bidsByPlacement, bid) {\n if (!bidsByPlacement[bid.adUnitCode]) { bidsByPlacement[bid.adUnitCode] = { bids: [] }; }\n bidsByPlacement[bid.adUnitCode].bids.push(bid);\n return bidsByPlacement;\n}\n\n/**\n * isValidPrice is price validation function\n * which checks if price from bid response\n * is not higher than top limit set in config\n * @type {Function}\n * @param bid\n * @returns {boolean}\n */\nfunction isValidPrice(bid) {\n const maxBidValue = config.getConfig('maxBid');\n if (!maxBidValue || !bid.cpm) return true;\n return maxBidValue >= Number(bid.cpm);\n}\n"],"mappings":"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","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"banner.js","names":["isArrayOfNums","isInteger","isStr","isPlainObject","logWarn","ORTB_PARAMS","value","Array","isArray","length","every","v","includes","ORTB_BANNER_PARAMS","Map","validateOrtbBannerFields","adUnit","onInvalidParam","bannerParams","mediaTypes","banner","Object","entries","forEach","_ref","key","has","isValid","get","code"],"sourceRoot":"../../..","sources":["src/banner.ts"],"sourcesContent":["import { isArrayOfNums, isInteger, isStr, isPlainObject, logWarn } from './utils.js';\nimport type {Size} from \"./types/common.d.ts\";\nimport type {ORTBImp} from \"./types/ortb/request.d.ts\";\nimport type {BaseMediaType} from \"./mediaTypes.ts\";\n\nconst ORTB_PARAMS = [\n [ 'format', value => Array.isArray(value) && value.length > 0 && value.every(v => typeof v === 'object') ],\n [ 'w', isInteger ],\n [ 'h', isInteger ],\n [ 'btype', isArrayOfNums ],\n [ 'battr', isArrayOfNums ],\n [ 'pos', isInteger ],\n [ 'mimes', value => Array.isArray(value) && value.length > 0 && value.every(v => typeof v === 'string') ],\n [ 'topframe', value => [1, 0].includes(value) ],\n [ 'expdir', isArrayOfNums ],\n [ 'api', isArrayOfNums ],\n [ 'id', isStr ],\n [ 'vcm', value => [1, 0].includes(value) ]\n] as const;\n\n/**\n * List of OpenRTB 2.x banner object properties with simple validators.\n * Not included: `ext`\n * reference: https://github.com/InteractiveAdvertisingBureau/openrtb2.x/blob/main/2.6.md\n */\nexport const ORTB_BANNER_PARAMS = new Map(ORTB_PARAMS);\n\n/**\n * validateOrtbBannerFields mutates the `adUnit.mediaTypes.banner` object by removing invalid ortb properties (default).\n * The onInvalidParam callback can be used to handle invalid properties differently.\n * Other properties are ignored and kept as is.\n *\n * @param {Object} adUnit - The adUnit object.\n * @param {Function=} onInvalidParam - The callback function to be called with key, value, and adUnit.\n * @returns {void}\n */\nexport function validateOrtbBannerFields(adUnit, onInvalidParam?) {\n const bannerParams = adUnit?.mediaTypes?.banner;\n\n if (!isPlainObject(bannerParams)) {\n logWarn(`validateOrtbBannerFields: bannerParams must be an object.`);\n return;\n }\n\n if (bannerParams != null) {\n Object.entries(bannerParams)\n .forEach(([key, value]: any) => {\n if (!ORTB_BANNER_PARAMS.has(key)) {\n return\n }\n const isValid = ORTB_BANNER_PARAMS.get(key)(value);\n if (!isValid) {\n if (typeof onInvalidParam === 'function') {\n onInvalidParam(key, value, adUnit);\n } else {\n logWarn(`Invalid prop in adUnit \"${adUnit.code}\": Invalid value for mediaTypes.banner.${key} ORTB property. The property has been removed.`, adUnit);\n delete bannerParams[key];\n }\n }\n });\n }\n}\n\nexport interface BannerMediaType extends BaseMediaType, Partial<Pick<ORTBImp['banner'], (typeof ORTB_PARAMS)[number][0]>> {\n /**\n * All sizes this ad unit can accept.\n * Examples: [400, 600], [[300, 250], [300, 600]].\n * Prebid recommends that the sizes auctioned by Prebid should be the same auctioned by AdX and GAM OpenBidding, which means AdUnit sizes should match the GPT sizes.\n */\n sizes?: Size | Size[]\n}\n\ndeclare module './bidfactory' {\n interface BannerBidResponseProperties {\n /**\n * Ad markup. Required unless adUrl is provided.\n */\n ad?: string;\n /**\n * Ad URL. Required unless ad is provided.\n */\n adUrl?: string;\n }\n}\n"],"mappings":"AAAA,SAASA,aAAa,EAAEC,SAAS,EAAEC,KAAK,EAAEC,aAAa,EAAEC,OAAO,QAAQ,YAAY;AAKpF,MAAMC,WAAW,GAAG,CAChB,CAAE,QAAQ,EAAEC,KAAK,IAAIC,KAAK,CAACC,OAAO,CAACF,KAAK,CAAC,IAAIA,KAAK,CAACG,MAAM,GAAG,CAAC,IAAIH,KAAK,CAACI,KAAK,CAACC,CAAC,IAAI,OAAOA,CAAC,KAAK,QAAQ,CAAC,CAAE,EAC1G,CAAE,GAAG,EAAEV,SAAS,CAAE,EAClB,CAAE,GAAG,EAAEA,SAAS,CAAE,EAClB,CAAE,OAAO,EAAED,aAAa,CAAE,EAC1B,CAAE,OAAO,EAAEA,aAAa,CAAE,EAC1B,CAAE,KAAK,EAAEC,SAAS,CAAE,EACpB,CAAE,OAAO,EAAEK,KAAK,IAAIC,KAAK,CAACC,OAAO,CAACF,KAAK,CAAC,IAAIA,KAAK,CAACG,MAAM,GAAG,CAAC,IAAIH,KAAK,CAACI,KAAK,CAACC,CAAC,IAAI,OAAOA,CAAC,KAAK,QAAQ,CAAC,CAAE,EACzG,CAAE,UAAU,EAAEL,KAAK,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,CAACM,QAAQ,CAACN,KAAK,CAAC,CAAE,EAC/C,CAAE,QAAQ,EAAEN,aAAa,CAAE,EAC3B,CAAE,KAAK,EAAEA,aAAa,CAAE,EACxB,CAAE,IAAI,EAAEE,KAAK,CAAE,EACf,CAAE,KAAK,EAAEI,KAAK,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,CAACM,QAAQ,CAACN,KAAK,CAAC,CAAE,CACpC;;AAEV;AACA;AACA;AACA;AACA;AACA,OAAO,MAAMO,kBAAkB,GAAG,IAAIC,GAAG,CAACT,WAAW,CAAC;;AAEtD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,SAASU,wBAAwBA,CAACC,MAAM,EAAEC,cAAe,EAAE;EAChE,MAAMC,YAAY,GAAGF,MAAM,EAAEG,UAAU,EAAEC,MAAM;EAE/C,IAAI,CAACjB,aAAa,CAACe,YAAY,CAAC,EAAE;IAChCd,OAAO,CAAC,2DAA2D,CAAC;IACpE;EACF;EAEA,IAAIc,YAAY,IAAI,IAAI,EAAE;IACxBG,MAAM,CAACC,OAAO,CAACJ,YAAY,CAAC,CACzBK,OAAO,CAACC,IAAA,IAAuB;MAAA,IAAtB,CAACC,GAAG,EAAEnB,KAAK,CAAM,GAAAkB,IAAA;MACzB,IAAI,CAACX,kBAAkB,CAACa,GAAG,CAACD,GAAG,CAAC,EAAE;QAChC;MACF;MACA,MAAME,OAAO,GAAGd,kBAAkB,CAACe,GAAG,CAACH,GAAG,CAAC,CAACnB,KAAK,CAAC;MAClD,IAAI,CAACqB,OAAO,EAAE;QACZ,IAAI,OAAOV,cAAc,KAAK,UAAU,EAAE;UACxCA,cAAc,CAACQ,GAAG,EAAEnB,KAAK,EAAEU,MAAM,CAAC;QACpC,CAAC,MAAM;UACLZ,OAAO,CAAC,2BAA2BY,MAAM,CAACa,IAAI,0CAA0CJ,GAAG,gDAAgD,EAAET,MAAM,CAAC;UACpJ,OAAOE,YAAY,CAACO,GAAG,CAAC;QAC1B;MACF;IACF,CAAC,CAAC;EACN;AACF","ignoreList":[]}
1
+ {"version":3,"file":"banner.js","names":["isArrayOfNums","isInteger","isStr","isPlainObject","logWarn","ORTB_PARAMS","value","Array","isArray","length","every","v","includes","ORTB_BANNER_PARAMS","Map","validateOrtbBannerFields","adUnit","onInvalidParam","bannerParams","mediaTypes","banner","Object","entries","forEach","_ref","key","has","isValid","get","code"],"sourceRoot":"../../..","sources":["src/banner.ts"],"sourcesContent":["import { isArrayOfNums, isInteger, isStr, isPlainObject, logWarn } from './utils.js';\nimport type {Size} from \"./types/common.d.ts\";\nimport type {ORTBImp} from \"./types/ortb/request.d.ts\";\nimport type {BaseMediaType} from \"./mediaTypes.ts\";\n\nconst ORTB_PARAMS = [\n [ 'format', value => Array.isArray(value) && value.length > 0 && value.every(v => typeof v === 'object') ],\n [ 'w', isInteger ],\n [ 'h', isInteger ],\n [ 'btype', isArrayOfNums ],\n [ 'battr', isArrayOfNums ],\n [ 'pos', isInteger ],\n [ 'mimes', value => Array.isArray(value) && value.length > 0 && value.every(v => typeof v === 'string') ],\n [ 'topframe', value => [1, 0].includes(value) ],\n [ 'expdir', isArrayOfNums ],\n [ 'api', isArrayOfNums ],\n [ 'id', isStr ],\n [ 'vcm', value => [1, 0].includes(value) ]\n] as const;\n\n/**\n * List of OpenRTB 2.x banner object properties with simple validators.\n * Not included: `ext`\n * reference: https://github.com/InteractiveAdvertisingBureau/openrtb2.x/blob/main/2.6.md\n */\nexport const ORTB_BANNER_PARAMS = new Map(ORTB_PARAMS);\n\n/**\n * validateOrtbBannerFields mutates the `adUnit.mediaTypes.banner` object by removing invalid ortb properties (default).\n * The onInvalidParam callback can be used to handle invalid properties differently.\n * Other properties are ignored and kept as is.\n *\n * @param {Object} adUnit - The adUnit object.\n * @param {Function=} onInvalidParam - The callback function to be called with key, value, and adUnit.\n * @returns {void}\n */\nexport function validateOrtbBannerFields(adUnit, onInvalidParam?) {\n const bannerParams = adUnit?.mediaTypes?.banner;\n\n if (!isPlainObject(bannerParams)) {\n logWarn(`validateOrtbBannerFields: bannerParams must be an object.`);\n return;\n }\n\n if (bannerParams != null) {\n Object.entries(bannerParams)\n .forEach(([key, value]: any) => {\n if (!ORTB_BANNER_PARAMS.has(key)) {\n return\n }\n const isValid = ORTB_BANNER_PARAMS.get(key)(value);\n if (!isValid) {\n if (typeof onInvalidParam === 'function') {\n onInvalidParam(key, value, adUnit);\n } else {\n logWarn(`Invalid prop in adUnit \"${adUnit.code}\": Invalid value for mediaTypes.banner.${key} ORTB property. The property has been removed.`, adUnit);\n delete bannerParams[key];\n }\n }\n });\n }\n}\n\nexport interface BannerMediaType extends BaseMediaType, Partial<Pick<ORTBImp['banner'], (typeof ORTB_PARAMS)[number][0]>> {\n /**\n * All sizes this ad unit can accept.\n * Examples: [400, 600], [[300, 250], [300, 600]].\n * Prebid recommends that the sizes auctioned by Prebid should be the same auctioned by AdX and GAM OpenBidding, which means AdUnit sizes should match the GPT sizes.\n */\n sizes?: Size | Size[]\n}\n\ndeclare module './bidfactory' {\n interface BannerBidResponseProperties {\n /**\n * Ad markup. Required unless adUrl is provided.\n */\n ad?: string;\n /**\n * Ad URL. Required unless ad is provided.\n */\n adUrl?: string;\n }\n}\n"],"mappings":"AAAA,SAASA,aAAa,EAAEC,SAAS,EAAEC,KAAK,EAAEC,aAAa,EAAEC,OAAO,QAAQ,YAAY;AAKpF,MAAMC,WAAW,GAAG,CAClB,CAAE,QAAQ,EAAEC,KAAK,IAAIC,KAAK,CAACC,OAAO,CAACF,KAAK,CAAC,IAAIA,KAAK,CAACG,MAAM,GAAG,CAAC,IAAIH,KAAK,CAACI,KAAK,CAACC,CAAC,IAAI,OAAOA,CAAC,KAAK,QAAQ,CAAC,CAAE,EAC1G,CAAE,GAAG,EAAEV,SAAS,CAAE,EAClB,CAAE,GAAG,EAAEA,SAAS,CAAE,EAClB,CAAE,OAAO,EAAED,aAAa,CAAE,EAC1B,CAAE,OAAO,EAAEA,aAAa,CAAE,EAC1B,CAAE,KAAK,EAAEC,SAAS,CAAE,EACpB,CAAE,OAAO,EAAEK,KAAK,IAAIC,KAAK,CAACC,OAAO,CAACF,KAAK,CAAC,IAAIA,KAAK,CAACG,MAAM,GAAG,CAAC,IAAIH,KAAK,CAACI,KAAK,CAACC,CAAC,IAAI,OAAOA,CAAC,KAAK,QAAQ,CAAC,CAAE,EACzG,CAAE,UAAU,EAAEL,KAAK,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,CAACM,QAAQ,CAACN,KAAK,CAAC,CAAE,EAC/C,CAAE,QAAQ,EAAEN,aAAa,CAAE,EAC3B,CAAE,KAAK,EAAEA,aAAa,CAAE,EACxB,CAAE,IAAI,EAAEE,KAAK,CAAE,EACf,CAAE,KAAK,EAAEI,KAAK,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,CAACM,QAAQ,CAACN,KAAK,CAAC,CAAE,CAClC;;AAEV;AACA;AACA;AACA;AACA;AACA,OAAO,MAAMO,kBAAkB,GAAG,IAAIC,GAAG,CAACT,WAAW,CAAC;;AAEtD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,SAASU,wBAAwBA,CAACC,MAAM,EAAEC,cAAe,EAAE;EAChE,MAAMC,YAAY,GAAGF,MAAM,EAAEG,UAAU,EAAEC,MAAM;EAE/C,IAAI,CAACjB,aAAa,CAACe,YAAY,CAAC,EAAE;IAChCd,OAAO,CAAC,2DAA2D,CAAC;IACpE;EACF;EAEA,IAAIc,YAAY,IAAI,IAAI,EAAE;IACxBG,MAAM,CAACC,OAAO,CAACJ,YAAY,CAAC,CACzBK,OAAO,CAACC,IAAA,IAAuB;MAAA,IAAtB,CAACC,GAAG,EAAEnB,KAAK,CAAM,GAAAkB,IAAA;MACzB,IAAI,CAACX,kBAAkB,CAACa,GAAG,CAACD,GAAG,CAAC,EAAE;QAChC;MACF;MACA,MAAME,OAAO,GAAGd,kBAAkB,CAACe,GAAG,CAACH,GAAG,CAAC,CAACnB,KAAK,CAAC;MAClD,IAAI,CAACqB,OAAO,EAAE;QACZ,IAAI,OAAOV,cAAc,KAAK,UAAU,EAAE;UACxCA,cAAc,CAACQ,GAAG,EAAEnB,KAAK,EAAEU,MAAM,CAAC;QACpC,CAAC,MAAM;UACLZ,OAAO,CAAC,2BAA2BY,MAAM,CAACa,IAAI,0CAA0CJ,GAAG,gDAAgD,EAAET,MAAM,CAAC;UACpJ,OAAOE,YAAY,CAACO,GAAG,CAAC;QAC1B;MACF;IACF,CAAC,CAAC;EACN;AACF","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"bidTTL.js","names":["config","logError","CACHE_TTL_SETTING","TTL_BUFFER","minCacheTTL","listeners","getConfig","cfg","ttlBuffer","getBufferedTTL","bid","ttl","hasOwnProperty","getMinBidCacheTTL","prev","forEach","l","onMinBidCacheTTLChange","listener","push"],"sourceRoot":"../../..","sources":["src/bidTTL.ts"],"sourcesContent":["import {config} from './config.js';\nimport {logError} from './utils.js';\nconst CACHE_TTL_SETTING = 'minBidCacheTTL';\nlet TTL_BUFFER = 1;\nlet minCacheTTL = null;\nconst listeners = [];\n\ndeclare module './config' {\n interface Config {\n /**\n * TTL buffer in seconds.\n *\n * When an adapter bids, it provides a TTL (time-to-live); the bid is considered expired and unusuable after that time has elapsed.\n * Core subtracts from it a buffer (default 1 second) that is, a bid with TTL of 30 seconds is considered expired after 29 seconds.\n */\n ttlBuffer?: number;\n /**\n * When set, bids are only kept in memory for the duration of their actual TTL lifetime or the value of minBidCacheTTL, whichever is greater.\n * Setting minBidCacheTTL: 0 causes bids to be dropped as soon as they expire.\n *\n * If unset (the default), bids are kept for the lifetime of the page.\n */\n [CACHE_TTL_SETTING]?: number;\n }\n}\n\nconfig.getConfig('ttlBuffer', (cfg) => {\n if (typeof cfg.ttlBuffer === 'number') {\n TTL_BUFFER = cfg.ttlBuffer;\n } else {\n logError('Invalid value for ttlBuffer', cfg.ttlBuffer);\n }\n})\n\nexport function getBufferedTTL(bid) {\n return bid.ttl - (bid.hasOwnProperty('ttlBuffer') ? bid.ttlBuffer : TTL_BUFFER);\n}\n\nexport function getMinBidCacheTTL() {\n return minCacheTTL;\n}\n\nconfig.getConfig(CACHE_TTL_SETTING, (cfg) => {\n const prev = minCacheTTL;\n minCacheTTL = cfg?.[CACHE_TTL_SETTING];\n minCacheTTL = typeof minCacheTTL === 'number' ? minCacheTTL : null;\n if (prev !== minCacheTTL) {\n listeners.forEach(l => l(minCacheTTL))\n }\n})\n\nexport function onMinBidCacheTTLChange(listener) {\n listeners.push(listener);\n}\n"],"mappings":"AAAA,SAAQA,MAAM,QAAO,aAAa;AAClC,SAAQC,QAAQ,QAAO,YAAY;AACnC,MAAMC,iBAAiB,GAAG,gBAAgB;AAC1C,IAAIC,UAAU,GAAG,CAAC;AAClB,IAAIC,WAAW,GAAG,IAAI;AACtB,MAAMC,SAAS,GAAG,EAAE;AAqBpBL,MAAM,CAACM,SAAS,CAAC,WAAW,EAAGC,GAAG,IAAK;EACrC,IAAI,OAAOA,GAAG,CAACC,SAAS,KAAK,QAAQ,EAAE;IACrCL,UAAU,GAAGI,GAAG,CAACC,SAAS;EAC5B,CAAC,MAAM;IACLP,QAAQ,CAAC,6BAA6B,EAAEM,GAAG,CAACC,SAAS,CAAC;EACxD;AACF,CAAC,CAAC;AAEF,OAAO,SAASC,cAAcA,CAACC,GAAG,EAAE;EAClC,OAAOA,GAAG,CAACC,GAAG,IAAID,GAAG,CAACE,cAAc,CAAC,WAAW,CAAC,GAAGF,GAAG,CAACF,SAAS,GAAGL,UAAU,CAAC;AACjF;AAEA,OAAO,SAASU,iBAAiBA,CAAA,EAAG;EAClC,OAAOT,WAAW;AACpB;AAEAJ,MAAM,CAACM,SAAS,CAACJ,iBAAiB,EAAGK,GAAG,IAAK;EAC3C,MAAMO,IAAI,GAAGV,WAAW;EACxBA,WAAW,GAAGG,GAAG,GAAGL,iBAAiB,CAAC;EACtCE,WAAW,GAAG,OAAOA,WAAW,KAAK,QAAQ,GAAGA,WAAW,GAAG,IAAI;EAClE,IAAIU,IAAI,KAAKV,WAAW,EAAE;IACxBC,SAAS,CAACU,OAAO,CAACC,CAAC,IAAIA,CAAC,CAACZ,WAAW,CAAC,CAAC;EACxC;AACF,CAAC,CAAC;AAEF,OAAO,SAASa,sBAAsBA,CAACC,QAAQ,EAAE;EAC/Cb,SAAS,CAACc,IAAI,CAACD,QAAQ,CAAC;AAC1B","ignoreList":[]}
1
+ {"version":3,"file":"bidTTL.js","names":["config","logError","CACHE_TTL_SETTING","TTL_BUFFER","minCacheTTL","listeners","getConfig","cfg","ttlBuffer","getBufferedTTL","bid","ttl","hasOwnProperty","getMinBidCacheTTL","prev","forEach","l","onMinBidCacheTTLChange","listener","push"],"sourceRoot":"../../..","sources":["src/bidTTL.ts"],"sourcesContent":["import {config} from './config.js';\nimport {logError} from './utils.js';\nconst CACHE_TTL_SETTING = 'minBidCacheTTL';\nlet TTL_BUFFER = 1;\nlet minCacheTTL = null;\nconst listeners = [];\n\ndeclare module './config' {\n interface Config {\n /**\n * TTL buffer in seconds.\n *\n * When an adapter bids, it provides a TTL (time-to-live); the bid is considered expired and unusuable after that time has elapsed.\n * Core subtracts from it a buffer (default 1 second) that is, a bid with TTL of 30 seconds is considered expired after 29 seconds.\n */\n ttlBuffer?: number;\n /**\n * When set, bids are only kept in memory for the duration of their actual TTL lifetime or the value of minBidCacheTTL, whichever is greater.\n * Setting minBidCacheTTL: 0 causes bids to be dropped as soon as they expire.\n *\n * If unset (the default), bids are kept for the lifetime of the page.\n */\n [CACHE_TTL_SETTING]?: number;\n }\n}\n\nconfig.getConfig('ttlBuffer', (cfg) => {\n if (typeof cfg.ttlBuffer === 'number') {\n TTL_BUFFER = cfg.ttlBuffer;\n } else {\n logError('Invalid value for ttlBuffer', cfg.ttlBuffer);\n }\n})\n\nexport function getBufferedTTL(bid) {\n return bid.ttl - (bid.hasOwnProperty('ttlBuffer') ? bid.ttlBuffer : TTL_BUFFER);\n}\n\nexport function getMinBidCacheTTL() {\n return minCacheTTL;\n}\n\nconfig.getConfig(CACHE_TTL_SETTING, (cfg) => {\n const prev = minCacheTTL;\n minCacheTTL = cfg?.[CACHE_TTL_SETTING];\n minCacheTTL = typeof minCacheTTL === 'number' ? minCacheTTL : null;\n if (prev !== minCacheTTL) {\n listeners.forEach(l => l(minCacheTTL))\n }\n})\n\nexport function onMinBidCacheTTLChange(listener) {\n listeners.push(listener);\n}\n"],"mappings":"AAAA,SAAQA,MAAM,QAAO,aAAa;AAClC,SAAQC,QAAQ,QAAO,YAAY;AACnC,MAAMC,iBAAiB,GAAG,gBAAgB;AAC1C,IAAIC,UAAU,GAAG,CAAC;AAClB,IAAIC,WAAW,GAAG,IAAI;AACtB,MAAMC,SAAS,GAAG,EAAE;AAqBpBL,MAAM,CAACM,SAAS,CAAC,WAAW,EAAGC,GAAG,IAAK;EACrC,IAAI,OAAOA,GAAG,CAACC,SAAS,KAAK,QAAQ,EAAE;IACrCL,UAAU,GAAGI,GAAG,CAACC,SAAS;EAC5B,CAAC,MAAM;IACLP,QAAQ,CAAC,6BAA6B,EAAEM,GAAG,CAACC,SAAS,CAAC;EACxD;AACF,CAAC,CAAC;AAEF,OAAO,SAASC,cAAcA,CAACC,GAAG,EAAE;EAClC,OAAOA,GAAG,CAACC,GAAG,IAAID,GAAG,CAACE,cAAc,CAAC,WAAW,CAAC,GAAGF,GAAG,CAACF,SAAS,GAAGL,UAAU,CAAC;AACjF;AAEA,OAAO,SAASU,iBAAiBA,CAAA,EAAG;EAClC,OAAOT,WAAW;AACpB;AAEAJ,MAAM,CAACM,SAAS,CAACJ,iBAAiB,EAAGK,GAAG,IAAK;EAC3C,MAAMO,IAAI,GAAGV,WAAW;EACxBA,WAAW,GAAGG,GAAG,GAAGL,iBAAiB,CAAC;EACtCE,WAAW,GAAG,OAAOA,WAAW,KAAK,QAAQ,GAAGA,WAAW,GAAG,IAAI;EAClE,IAAIU,IAAI,KAAKV,WAAW,EAAE;IACxBC,SAAS,CAACU,OAAO,CAACC,CAAC,IAAIA,CAAC,CAACZ,WAAW,CAAC,CAAC;EACxC;AACF,CAAC,CAAC;AAEF,OAAO,SAASa,sBAAsBA,CAACC,QAAQ,EAAE;EAC/Cb,SAAS,CAACc,IAAI,CAACD,QAAQ,CAAC;AAC1B","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"bidderSettings.js","names":["deepAccess","mergeDeep","getGlobal","JSON_MAPPING","ScopedSettings","constructor","getSettings","defaultScope","get","scope","path","value","getOwn","resolveScope","getScopes","Object","keys","filter","settingsFor","ownSettingsFor","#resolveScope","bidderSettings","BD_SETTING_STANDARD"],"sourceRoot":"../../..","sources":["src/bidderSettings.ts"],"sourcesContent":["import {deepAccess, mergeDeep} from './utils.js';\nimport {getGlobal} from './prebidGlobal.js';\nimport { JSON_MAPPING } from './constants.js';\nimport type {BidderCode} from \"./types/common\";\nimport type {BidRequest} from \"./adapterManager.ts\";\nimport type {Bid} from \"./bidfactory.ts\";\nimport type {StorageType} from \"./storageManager.ts\";\n\n// eslint-disable-next-line @typescript-eslint/no-unused-vars\nexport interface BidderSettings<B extends BidderCode> {\n /**\n * If true, allow bids with CPM 0to be accepted by Prebid.js and sent to the ad server.\n */\n allowZeroCpmBids?: boolean;\n /**\n * Optionally allow alternate bidder codes to use an adapter’s bidCpmAdjustment function by default instead of\n * the standard bidCpmAdjustment function if present (note: if a bidCpmAdjustment function exists for the alternate\n * bidder code within bidderSettings, then this will be used instead of falling back to the adapter’s bidCpmAdjustment function).\n */\n adjustAlternateBids?: boolean;\n /**\n * If adapter-specific targeting is specified, can be used to suppress the standard targeting for that adapter.\n */\n sendStandardTargeting?: boolean;\n /**\n * If custom adserverTargeting functions are specified that may generate empty keys, this can be used to suppress them.\n */\n suppressEmptyKeys?: boolean;\n /**\n * Allow use of cookies and/or local storage.\n */\n storageAllowed?: boolean | StorageType[];\n /**\n * Allow adapters to bid with alternate bidder codes.\n */\n allowAlternateBidderCodes?: boolean;\n /**\n * Array of bidder codes for which an adapter can bid.\n * undefined or ['*'] will allow adapter to bid with any bidder code.\n */\n allowedAlternateBidderCodes?: ['*'] | BidderCode[];\n /**\n * If true (the default), allow the `Sec-Browsing-Topics` header in requests to their exchange.\n */\n topicsHeader?: boolean;\n}\n\nexport interface BidderScopedSettings<B extends BidderCode> extends BidderSettings<B> {\n /**\n * Custom CPM adjustment function. Could, for example, adjust a bidder’s gross-price bid to net price.\n */\n bidCpmAdjustment?: (cpm: number, bid: Bid, bidRequest: BidRequest<B>) => number;\n /**\n * Define which key/value pairs are sent to the ad server.\n */\n adserverTargeting?: ({\n key: string;\n val(bid: Bid, bidRequest: BidRequest<B>): string;\n })[];\n}\n\nexport class ScopedSettings<SETTINGS extends Record<string, any>, SCOPED extends SETTINGS> {\n getSettings;\n defaultScope;\n constructor(getSettings, defaultScope) {\n this.getSettings = getSettings;\n this.defaultScope = defaultScope;\n }\n\n /**\n * Get setting value at `path` under the given scope, falling back to the default scope if needed.\n * If `scope` is `null`, get the setting's default value.\n */\n get<P extends keyof SETTINGS>(scope, path: P): SETTINGS[P] {\n let value = this.getOwn(scope, path);\n if (typeof value === 'undefined') {\n value = this.getOwn(null, path);\n }\n return value;\n }\n\n /**\n * Get the setting value at `path` *without* falling back to the default value.\n */\n getOwn<P extends keyof SCOPED>(scope, path: P): SCOPED[P] {\n scope = this.#resolveScope(scope);\n return deepAccess(this.getSettings(), `${scope}.${path as any}`)\n }\n\n /**\n * @returns all existing scopes except the default one.\n */\n getScopes(): string[] {\n return Object.keys(this.getSettings()).filter((scope) => scope !== this.defaultScope);\n }\n\n /**\n * @returns all settings in the given scope, merged with the settings for the default scope.\n */\n settingsFor(scope): SETTINGS {\n return mergeDeep({}, this.ownSettingsFor(null), this.ownSettingsFor(scope));\n }\n\n /**\n * @returns all settings in the given scope, *without* any of the default settings.\n */\n ownSettingsFor(scope): SCOPED {\n scope = this.#resolveScope(scope);\n return this.getSettings()[scope] || {};\n }\n\n #resolveScope(scope) {\n if (scope == null) {\n return this.defaultScope;\n } else {\n return scope;\n }\n }\n}\n\nexport const bidderSettings = new ScopedSettings<BidderSettings<BidderCode>, BidderScopedSettings<BidderCode>>(() => getGlobal().bidderSettings || {}, JSON_MAPPING.BD_SETTING_STANDARD);\n"],"mappings":"AAAA,SAAQA,UAAU,EAAEC,SAAS,QAAO,YAAY;AAChD,SAAQC,SAAS,QAAO,mBAAmB;AAC3C,SAASC,YAAY,QAAQ,gBAAgB;;AAM7C;;AAqDA,OAAO,MAAMC,cAAc,CAAgE;EAGzFC,WAAWA,CAACC,WAAW,EAAEC,YAAY,EAAE;IACrC,IAAI,CAACD,WAAW,GAAGA,WAAW;IAC9B,IAAI,CAACC,YAAY,GAAGA,YAAY;EAClC;;EAEA;AACF;AACA;AACA;EACEC,GAAGA,CAA2BC,KAAK,EAAEC,IAAO,EAAe;IACzD,IAAIC,KAAK,GAAG,IAAI,CAACC,MAAM,CAACH,KAAK,EAAEC,IAAI,CAAC;IACpC,IAAI,OAAOC,KAAK,KAAK,WAAW,EAAE;MAChCA,KAAK,GAAG,IAAI,CAACC,MAAM,CAAC,IAAI,EAAEF,IAAI,CAAC;IACjC;IACA,OAAOC,KAAK;EACd;;EAEA;AACF;AACA;EACEC,MAAMA,CAAyBH,KAAK,EAAEC,IAAO,EAAa;IACxDD,KAAK,GAAG,IAAI,CAAC,CAACI,YAAY,CAACJ,KAAK,CAAC;IACjC,OAAOT,UAAU,CAAC,IAAI,CAACM,WAAW,CAAC,CAAC,EAAE,GAAGG,KAAK,IAAIC,IAAI,EAAS,CAAC;EAClE;;EAEA;AACF;AACA;EACEI,SAASA,CAAA,EAAa;IACpB,OAAOC,MAAM,CAACC,IAAI,CAAC,IAAI,CAACV,WAAW,CAAC,CAAC,CAAC,CAACW,MAAM,CAAER,KAAK,IAAKA,KAAK,KAAK,IAAI,CAACF,YAAY,CAAC;EACvF;;EAEA;AACF;AACA;EACEW,WAAWA,CAACT,KAAK,EAAY;IAC3B,OAAOR,SAAS,CAAC,CAAC,CAAC,EAAE,IAAI,CAACkB,cAAc,CAAC,IAAI,CAAC,EAAE,IAAI,CAACA,cAAc,CAACV,KAAK,CAAC,CAAC;EAC7E;;EAEA;AACF;AACA;EACEU,cAAcA,CAACV,KAAK,EAAU;IAC5BA,KAAK,GAAG,IAAI,CAAC,CAACI,YAAY,CAACJ,KAAK,CAAC;IACjC,OAAO,IAAI,CAACH,WAAW,CAAC,CAAC,CAACG,KAAK,CAAC,IAAI,CAAC,CAAC;EACxC;EAEA,CAACI,YAAYO,CAACX,KAAK,EAAE;IACnB,IAAIA,KAAK,IAAI,IAAI,EAAE;MACjB,OAAO,IAAI,CAACF,YAAY;IAC1B,CAAC,MAAM;MACL,OAAOE,KAAK;IACd;EACF;AACF;AAEA,OAAO,MAAMY,cAAc,GAAG,IAAIjB,cAAc,CAA+D,MAAMF,SAAS,CAAC,CAAC,CAACmB,cAAc,IAAI,CAAC,CAAC,EAAElB,YAAY,CAACmB,mBAAmB,CAAC","ignoreList":[]}
1
+ {"version":3,"file":"bidderSettings.js","names":["deepAccess","mergeDeep","getGlobal","JSON_MAPPING","ScopedSettings","constructor","getSettings","defaultScope","get","scope","path","value","getOwn","resolveScope","getScopes","Object","keys","filter","settingsFor","ownSettingsFor","#resolveScope","bidderSettings","BD_SETTING_STANDARD"],"sourceRoot":"../../..","sources":["src/bidderSettings.ts"],"sourcesContent":["import {deepAccess, mergeDeep} from './utils.js';\nimport {getGlobal} from './prebidGlobal.js';\nimport { JSON_MAPPING } from './constants.js';\nimport type {BidderCode} from \"./types/common\";\nimport type {BidRequest} from \"./adapterManager.ts\";\nimport type {Bid} from \"./bidfactory.ts\";\nimport type {StorageType} from \"./storageManager.ts\";\n\n// eslint-disable-next-line @typescript-eslint/no-unused-vars\nexport interface BidderSettings<B extends BidderCode> {\n /**\n * If true, allow bids with CPM 0to be accepted by Prebid.js and sent to the ad server.\n */\n allowZeroCpmBids?: boolean;\n /**\n * Optionally allow alternate bidder codes to use an adapter’s bidCpmAdjustment function by default instead of\n * the standard bidCpmAdjustment function if present (note: if a bidCpmAdjustment function exists for the alternate\n * bidder code within bidderSettings, then this will be used instead of falling back to the adapter’s bidCpmAdjustment function).\n */\n adjustAlternateBids?: boolean;\n /**\n * If adapter-specific targeting is specified, can be used to suppress the standard targeting for that adapter.\n */\n sendStandardTargeting?: boolean;\n /**\n * If custom adserverTargeting functions are specified that may generate empty keys, this can be used to suppress them.\n */\n suppressEmptyKeys?: boolean;\n /**\n * Allow use of cookies and/or local storage.\n */\n storageAllowed?: boolean | StorageType[];\n /**\n * Allow adapters to bid with alternate bidder codes.\n */\n allowAlternateBidderCodes?: boolean;\n /**\n * Array of bidder codes for which an adapter can bid.\n * undefined or ['*'] will allow adapter to bid with any bidder code.\n */\n allowedAlternateBidderCodes?: ['*'] | BidderCode[];\n /**\n * If true (the default), allow the `Sec-Browsing-Topics` header in requests to their exchange.\n */\n topicsHeader?: boolean;\n}\n\nexport interface BidderScopedSettings<B extends BidderCode> extends BidderSettings<B> {\n /**\n * Custom CPM adjustment function. Could, for example, adjust a bidder’s gross-price bid to net price.\n */\n bidCpmAdjustment?: (cpm: number, bid: Bid, bidRequest: BidRequest<B>) => number;\n /**\n * Define which key/value pairs are sent to the ad server.\n */\n adserverTargeting?: ({\n key: string;\n val(bid: Bid, bidRequest: BidRequest<B>): string;\n })[];\n}\n\nexport class ScopedSettings<SETTINGS extends Record<string, any>, SCOPED extends SETTINGS> {\n getSettings;\n defaultScope;\n constructor(getSettings, defaultScope) {\n this.getSettings = getSettings;\n this.defaultScope = defaultScope;\n }\n\n /**\n * Get setting value at `path` under the given scope, falling back to the default scope if needed.\n * If `scope` is `null`, get the setting's default value.\n */\n get<P extends keyof SETTINGS>(scope, path: P): SETTINGS[P] {\n let value = this.getOwn(scope, path);\n if (typeof value === 'undefined') {\n value = this.getOwn(null, path);\n }\n return value;\n }\n\n /**\n * Get the setting value at `path` *without* falling back to the default value.\n */\n getOwn<P extends keyof SCOPED>(scope, path: P): SCOPED[P] {\n scope = this.#resolveScope(scope);\n return deepAccess(this.getSettings(), `${scope}.${path as any}`)\n }\n\n /**\n * @returns all existing scopes except the default one.\n */\n getScopes(): string[] {\n return Object.keys(this.getSettings()).filter((scope) => scope !== this.defaultScope);\n }\n\n /**\n * @returns all settings in the given scope, merged with the settings for the default scope.\n */\n settingsFor(scope): SETTINGS {\n return mergeDeep({}, this.ownSettingsFor(null), this.ownSettingsFor(scope));\n }\n\n /**\n * @returns all settings in the given scope, *without* any of the default settings.\n */\n ownSettingsFor(scope): SCOPED {\n scope = this.#resolveScope(scope);\n return this.getSettings()[scope] || {};\n }\n\n #resolveScope(scope) {\n if (scope == null) {\n return this.defaultScope;\n } else {\n return scope;\n }\n }\n}\n\nexport const bidderSettings = new ScopedSettings<BidderSettings<BidderCode>, BidderScopedSettings<BidderCode>>(() => getGlobal().bidderSettings || {}, JSON_MAPPING.BD_SETTING_STANDARD);\n"],"mappings":"AAAA,SAAQA,UAAU,EAAEC,SAAS,QAAO,YAAY;AAChD,SAAQC,SAAS,QAAO,mBAAmB;AAC3C,SAASC,YAAY,QAAQ,gBAAgB;;AAM7C;;AAqDA,OAAO,MAAMC,cAAc,CAAgE;EAGzFC,WAAWA,CAACC,WAAW,EAAEC,YAAY,EAAE;IACrC,IAAI,CAACD,WAAW,GAAGA,WAAW;IAC9B,IAAI,CAACC,YAAY,GAAGA,YAAY;EAClC;;EAEA;AACF;AACA;AACA;EACEC,GAAGA,CAA2BC,KAAK,EAAEC,IAAO,EAAe;IACzD,IAAIC,KAAK,GAAG,IAAI,CAACC,MAAM,CAACH,KAAK,EAAEC,IAAI,CAAC;IACpC,IAAI,OAAOC,KAAK,KAAK,WAAW,EAAE;MAChCA,KAAK,GAAG,IAAI,CAACC,MAAM,CAAC,IAAI,EAAEF,IAAI,CAAC;IACjC;IACA,OAAOC,KAAK;EACd;;EAEA;AACF;AACA;EACEC,MAAMA,CAAyBH,KAAK,EAAEC,IAAO,EAAa;IACxDD,KAAK,GAAG,IAAI,CAAC,CAACI,YAAY,CAACJ,KAAK,CAAC;IACjC,OAAOT,UAAU,CAAC,IAAI,CAACM,WAAW,CAAC,CAAC,EAAE,GAAGG,KAAK,IAAIC,IAAI,EAAS,CAAC;EAClE;;EAEA;AACF;AACA;EACEI,SAASA,CAAA,EAAa;IACpB,OAAOC,MAAM,CAACC,IAAI,CAAC,IAAI,CAACV,WAAW,CAAC,CAAC,CAAC,CAACW,MAAM,CAAER,KAAK,IAAKA,KAAK,KAAK,IAAI,CAACF,YAAY,CAAC;EACvF;;EAEA;AACF;AACA;EACEW,WAAWA,CAACT,KAAK,EAAY;IAC3B,OAAOR,SAAS,CAAC,CAAC,CAAC,EAAE,IAAI,CAACkB,cAAc,CAAC,IAAI,CAAC,EAAE,IAAI,CAACA,cAAc,CAACV,KAAK,CAAC,CAAC;EAC7E;;EAEA;AACF;AACA;EACEU,cAAcA,CAACV,KAAK,EAAU;IAC5BA,KAAK,GAAG,IAAI,CAAC,CAACI,YAAY,CAACJ,KAAK,CAAC;IACjC,OAAO,IAAI,CAACH,WAAW,CAAC,CAAC,CAACG,KAAK,CAAC,IAAI,CAAC,CAAC;EACxC;EAEA,CAACI,YAAYO,CAACX,KAAK,EAAE;IACnB,IAAIA,KAAK,IAAI,IAAI,EAAE;MACjB,OAAO,IAAI,CAACF,YAAY;IAC1B,CAAC,MAAM;MACL,OAAOE,KAAK;IACd;EACF;AACF;AAEA,OAAO,MAAMY,cAAc,GAAG,IAAIjB,cAAc,CAA+D,MAAMF,SAAS,CAAC,CAAC,CAACmB,cAAc,IAAI,CAAC,CAAC,EAAElB,YAAY,CAACmB,mBAAmB,CAAC","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"bidfactory.js","names":["getUniqueIdentifierStr","Bid","src","bidder","bidId","transactionId","adUnitId","auctionId","arguments","length","undefined","_bidSrc","Object","assign","bidderCode","width","height","adId","requestId","mediaType","source","getSize","createBid","identifiers"],"sourceRoot":"../../..","sources":["src/bidfactory.ts"],"sourcesContent":["import {getUniqueIdentifierStr} from './utils.js';\nimport type {BidderCode, BidSource, ContextIdentifiers, Currency, Identifier} from \"./types/common.d.ts\";\nimport {MediaType} from \"./mediaTypes.ts\";\nimport type {DSAResponse} from \"./types/ortb/ext/dsa.d.ts\";\nimport type {EventTrackerResponse} from \"./types/ortb/native.d.ts\";\nimport {Metrics} from \"./utils/perfMetrics.ts\";\nimport {Renderer} from './Renderer.js';\nimport {type BID_STATUS} from \"./constants.ts\";\nimport type {DemandChain} from \"./types/ortb/ext/dchain.d.ts\";\n\ntype BidIdentifiers = ContextIdentifiers & {\n src: BidSource;\n bidder: BidderCode;\n bidId: Identifier;\n};\n\n/**\n * Bid metadata.\n */\nexport interface BidMeta {\n [key: string]: unknown;\n /**\n * Advertiser domains (corresponds to ORTB `bid.adomain`).\n */\n advertiserDomains?: string[];\n /**\n * Primary category ID (corresponds to ORTB `bid.cat[0]`).\n */\n primaryCatId?: string;\n /**\n * IDs of all other categories (corresponds to ORTB `bid.cat.slice(1)`).\n */\n secondaryCatIds?: string[];\n /**\n * Creative attributes (corresponds to ORTB `bid.attr`).\n */\n attr?: number[];\n /**\n * DSA transparency information.\n */\n dsa?: DSAResponse;\n /**\n * Demand chain object.\n */\n dchain?: DemandChain\n /**\n * DSP network name.\n */\n networkName?: string;\n /**\n * DSP network ID.\n */\n networkId?: string | number;\n}\n\n/**\n * Bid responses as provided by adapters; core then transforms these into `Bid`s\n */\nexport interface BaseBidResponse {\n bidderCode?: BidderCode;\n /**\n * This bid's BidRequest's `.bidId`.\n */\n requestId: Identifier;\n mediaType: MediaType;\n cpm: number;\n currency: Currency;\n /**\n * The time to live for this bid response in seconds\n */\n ttl: number;\n creativeId: string;\n /**\n * True if the CPM is the one this bidder will pay\n */\n netRevenue: boolean;\n /**\n * If the bid is associated with a Deal, this field contains the deal ID.\n * @see https://docs.prebid.org/adops/deals.html\n */\n dealId?: string;\n meta?: BidMeta;\n /**\n * If true, and deferred billing was requested for this bid, its creative will not be rendered\n * until billing is explicitly triggered with `pbjs.triggerBilling()`.\n * Useful to avoid premature firing of trackers embedded in the creative.\n */\n deferRendering?: boolean;\n /**\n * Event trackers for this bid.\n */\n eventtrackers?: EventTrackerResponse[];\n renderer?: Renderer;\n /**\n * Billing tracker URL.\n */\n burl?: string;\n}\n\n// <format>BidResponesProperties - adapter interpretResponse properties specific to the format.\n// they are included in both BidResponse and Bid types.\n// Here we have only \"naked\" declarations, extended in banner/video/native.ts as well as modules.\n\nexport interface BannerBidResponseProperties {\n mediaType: 'banner';\n}\n\nexport interface VideoBidResponseProperties {\n mediaType: 'video';\n}\n\nexport interface NativeBidResponseProperties {\n mediaType: 'native';\n}\n\nexport type BannerBidResponse = BaseBidResponse & BannerBidResponseProperties;\nexport type VideoBidResponse = BaseBidResponse & VideoBidResponseProperties;\nexport type NativeBidResponse = BaseBidResponse & NativeBidResponseProperties;\n\nexport type BidResponse = BannerBidResponse | VideoBidResponse | NativeBidResponse;\n\nexport interface BaseBid extends ContextIdentifiers, Required<Pick<BaseBidResponse, 'meta' | 'deferRendering'>> {\n /**\n * This bid's BidRequest's `.bidId`. Can be null in some `allowUnknownBidderCodes` scenarios.\n */\n requestId: Identifier | null;\n metrics: Metrics;\n source: BidSource;\n width: number;\n height: number;\n adId: Identifier;\n getSize(): string;\n getStatusCode(): number;\n status?: (typeof BID_STATUS)[keyof typeof BID_STATUS]\n bidderCode: BidderCode;\n adapterCode?: BidderCode;\n /**\n * CPM of this bid before currency conversions or adjustments.\n */\n originalCpm?: number;\n /**\n * Currency for `originalCpm`.\n */\n originalCurrency?: Currency;\n /**\n * If true, this bid will not fire billing trackers until they are explicitly\n * triggered with `pbjs.triggerBilling()`.\n */\n deferBilling: boolean;\n}\n\n// <format>BidProperties - format specific properties of Bid objects generated by Prebid, but not in\n// (or different from) adapter responses. Again,these are just naked declarations, extended in their place of\n// use.\n\nexport interface BannerBidProperties {\n mediaType: 'banner';\n}\n\nexport interface NativeBidProperties {\n mediaType: 'native';\n}\n\nexport interface VideoBidProperties {\n mediaType: 'video';\n}\n\ntype BidFrom<RESP, PROPS> = BaseBid & Omit<RESP, keyof BaseBid | keyof PROPS> & PROPS;\n\ntype _BannerBid = BidFrom<BannerBidResponse, BannerBidProperties>;\ntype _VideoBid = BidFrom<VideoBidResponse, VideoBidProperties>;\ntype _NativeBid = BidFrom<NativeBidResponse, NativeBidProperties>;\n\ntype AnyBid = _BannerBid | _VideoBid | _NativeBid;\n\n// the following adds `property?: undefined` declarations for each property\n// that is in some other format, to avoid requiring type casts\n// every time that property is used\ntype NullProps<T> = {[K in keyof T]?: undefined};\ntype NullBid = NullProps<_BannerBid> & NullProps<_VideoBid> & NullProps<_NativeBid>;\ntype ExtendBid<B extends AnyBid> = B & Omit<NullBid, keyof B>;\n\nexport type BannerBid = ExtendBid<_BannerBid>;\nexport type VideoBid = ExtendBid<_VideoBid>;\nexport type NativeBid = ExtendBid<_NativeBid>;\n\nexport type Bid = BannerBid | VideoBid | NativeBid;\n\n// eslint-disable-next-line @typescript-eslint/no-redeclare\nfunction Bid({src = 'client', bidder = '', bidId, transactionId, adUnitId, auctionId}: Partial<BidIdentifiers> = {}) {\n var _bidSrc = src;\n\n Object.assign(this, {\n bidderCode: bidder,\n width: 0,\n height: 0,\n adId: getUniqueIdentifierStr(),\n requestId: bidId,\n transactionId,\n adUnitId,\n auctionId,\n mediaType: 'banner',\n source: _bidSrc\n })\n\n // returns the size of the bid creative. Concatenation of width and height by ‘x’.\n this.getSize = function () {\n return this.width + 'x' + this.height;\n };\n}\n\nexport function createBid(identifiers?: Partial<BidIdentifiers>): Partial<Bid> {\n return new Bid(identifiers);\n}\n"],"mappings":"AAAA,SAAQA,sBAAsB,QAAO,YAAY;;AAgBjD;AACA;AACA;;AAqCA;AACA;AACA;;AA0CA;AACA;AACA;;AAkDA;AACA;AACA;;AAsBA;AACA;AACA;;AAWA;AACA,SAASC,GAAGA,CAAA,EAAyG;EAAA,IAAxG;IAACC,GAAG,GAAG,QAAQ;IAAEC,MAAM,GAAG,EAAE;IAAEC,KAAK;IAAEC,aAAa;IAAEC,QAAQ;IAAEC;EAAkC,CAAC,GAAAC,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAE,SAAA,GAAAF,SAAA,MAAG,CAAC,CAAC;EACjH,IAAIG,OAAO,GAAGT,GAAG;EAEjBU,MAAM,CAACC,MAAM,CAAC,IAAI,EAAE;IAClBC,UAAU,EAAEX,MAAM;IAClBY,KAAK,EAAE,CAAC;IACRC,MAAM,EAAE,CAAC;IACTC,IAAI,EAAEjB,sBAAsB,CAAC,CAAC;IAC9BkB,SAAS,EAAEd,KAAK;IAChBC,aAAa;IACbC,QAAQ;IACRC,SAAS;IACTY,SAAS,EAAE,QAAQ;IACnBC,MAAM,EAAET;EACV,CAAC,CAAC;;EAEF;EACA,IAAI,CAACU,OAAO,GAAG,YAAY;IACzB,OAAO,IAAI,CAACN,KAAK,GAAG,GAAG,GAAG,IAAI,CAACC,MAAM;EACvC,CAAC;AACH;AAEA,OAAO,SAASM,SAASA,CAACC,WAAqC,EAAgB;EAC7E,OAAO,IAAItB,GAAG,CAACsB,WAAW,CAAC;AAC7B","ignoreList":[]}
1
+ {"version":3,"file":"bidfactory.js","names":["getUniqueIdentifierStr","Bid","src","bidder","bidId","transactionId","adUnitId","auctionId","arguments","length","undefined","_bidSrc","Object","assign","bidderCode","width","height","adId","requestId","mediaType","source","getSize","createBid","identifiers"],"sourceRoot":"../../..","sources":["src/bidfactory.ts"],"sourcesContent":["import {getUniqueIdentifierStr} from './utils.js';\nimport type {BidderCode, BidSource, ContextIdentifiers, Currency, Identifier} from \"./types/common.d.ts\";\nimport {MediaType} from \"./mediaTypes.ts\";\nimport type {DSAResponse} from \"./types/ortb/ext/dsa.d.ts\";\nimport type {EventTrackerResponse} from \"./types/ortb/native.d.ts\";\nimport {Metrics} from \"./utils/perfMetrics.ts\";\nimport {Renderer} from './Renderer.js';\nimport {type BID_STATUS} from \"./constants.ts\";\nimport type {DemandChain} from \"./types/ortb/ext/dchain.d.ts\";\n\ntype BidIdentifiers = ContextIdentifiers & {\n src: BidSource;\n bidder: BidderCode;\n bidId: Identifier;\n};\n\n/**\n * Bid metadata.\n */\nexport interface BidMeta {\n [key: string]: unknown;\n /**\n * Advertiser domains (corresponds to ORTB `bid.adomain`).\n */\n advertiserDomains?: string[];\n /**\n * Primary category ID (corresponds to ORTB `bid.cat[0]`).\n */\n primaryCatId?: string;\n /**\n * IDs of all other categories (corresponds to ORTB `bid.cat.slice(1)`).\n */\n secondaryCatIds?: string[];\n /**\n * Creative attributes (corresponds to ORTB `bid.attr`).\n */\n attr?: number[];\n /**\n * DSA transparency information.\n */\n dsa?: DSAResponse;\n /**\n * Demand chain object.\n */\n dchain?: DemandChain\n /**\n * DSP network name.\n */\n networkName?: string;\n /**\n * DSP network ID.\n */\n networkId?: string | number;\n}\n\n/**\n * Bid responses as provided by adapters; core then transforms these into `Bid`s\n */\nexport interface BaseBidResponse {\n bidderCode?: BidderCode;\n /**\n * This bid's BidRequest's `.bidId`.\n */\n requestId: Identifier;\n mediaType: MediaType;\n cpm: number;\n currency: Currency;\n /**\n * The time to live for this bid response in seconds\n */\n ttl: number;\n creativeId: string;\n /**\n * True if the CPM is the one this bidder will pay\n */\n netRevenue: boolean;\n /**\n * If the bid is associated with a Deal, this field contains the deal ID.\n * @see https://docs.prebid.org/adops/deals.html\n */\n dealId?: string;\n meta?: BidMeta;\n /**\n * If true, and deferred billing was requested for this bid, its creative will not be rendered\n * until billing is explicitly triggered with `pbjs.triggerBilling()`.\n * Useful to avoid premature firing of trackers embedded in the creative.\n */\n deferRendering?: boolean;\n /**\n * Event trackers for this bid.\n */\n eventtrackers?: EventTrackerResponse[];\n renderer?: Renderer;\n /**\n * Billing tracker URL.\n */\n burl?: string;\n}\n\n// <format>BidResponesProperties - adapter interpretResponse properties specific to the format.\n// they are included in both BidResponse and Bid types.\n// Here we have only \"naked\" declarations, extended in banner/video/native.ts as well as modules.\n\nexport interface BannerBidResponseProperties {\n mediaType: 'banner';\n}\n\nexport interface VideoBidResponseProperties {\n mediaType: 'video';\n}\n\nexport interface NativeBidResponseProperties {\n mediaType: 'native';\n}\n\nexport type BannerBidResponse = BaseBidResponse & BannerBidResponseProperties;\nexport type VideoBidResponse = BaseBidResponse & VideoBidResponseProperties;\nexport type NativeBidResponse = BaseBidResponse & NativeBidResponseProperties;\n\nexport type BidResponse = BannerBidResponse | VideoBidResponse | NativeBidResponse;\n\nexport interface BaseBid extends ContextIdentifiers, Required<Pick<BaseBidResponse, 'meta' | 'deferRendering'>> {\n /**\n * This bid's BidRequest's `.bidId`. Can be null in some `allowUnknownBidderCodes` scenarios.\n */\n requestId: Identifier | null;\n metrics: Metrics;\n source: BidSource;\n width: number;\n height: number;\n adId: Identifier;\n getSize(): string;\n getStatusCode(): number;\n status?: (typeof BID_STATUS)[keyof typeof BID_STATUS]\n bidderCode: BidderCode;\n adapterCode?: BidderCode;\n /**\n * CPM of this bid before currency conversions or adjustments.\n */\n originalCpm?: number;\n /**\n * Currency for `originalCpm`.\n */\n originalCurrency?: Currency;\n /**\n * If true, this bid will not fire billing trackers until they are explicitly\n * triggered with `pbjs.triggerBilling()`.\n */\n deferBilling: boolean;\n}\n\n// <format>BidProperties - format specific properties of Bid objects generated by Prebid, but not in\n// (or different from) adapter responses. Again,these are just naked declarations, extended in their place of\n// use.\n\nexport interface BannerBidProperties {\n mediaType: 'banner';\n}\n\nexport interface NativeBidProperties {\n mediaType: 'native';\n}\n\nexport interface VideoBidProperties {\n mediaType: 'video';\n}\n\ntype BidFrom<RESP, PROPS> = BaseBid & Omit<RESP, keyof BaseBid | keyof PROPS> & PROPS;\n\ntype _BannerBid = BidFrom<BannerBidResponse, BannerBidProperties>;\ntype _VideoBid = BidFrom<VideoBidResponse, VideoBidProperties>;\ntype _NativeBid = BidFrom<NativeBidResponse, NativeBidProperties>;\n\ntype AnyBid = _BannerBid | _VideoBid | _NativeBid;\n\n// the following adds `property?: undefined` declarations for each property\n// that is in some other format, to avoid requiring type casts\n// every time that property is used\ntype NullProps<T> = {[K in keyof T]?: undefined};\ntype NullBid = NullProps<_BannerBid> & NullProps<_VideoBid> & NullProps<_NativeBid>;\ntype ExtendBid<B extends AnyBid> = B & Omit<NullBid, keyof B>;\n\nexport type BannerBid = ExtendBid<_BannerBid>;\nexport type VideoBid = ExtendBid<_VideoBid>;\nexport type NativeBid = ExtendBid<_NativeBid>;\n\nexport type Bid = BannerBid | VideoBid | NativeBid;\n\n// eslint-disable-next-line @typescript-eslint/no-redeclare\nfunction Bid({src = 'client', bidder = '', bidId, transactionId, adUnitId, auctionId}: Partial<BidIdentifiers> = {}) {\n var _bidSrc = src;\n\n Object.assign(this, {\n bidderCode: bidder,\n width: 0,\n height: 0,\n adId: getUniqueIdentifierStr(),\n requestId: bidId,\n transactionId,\n adUnitId,\n auctionId,\n mediaType: 'banner',\n source: _bidSrc\n })\n\n // returns the size of the bid creative. Concatenation of width and height by ‘x’.\n this.getSize = function () {\n return this.width + 'x' + this.height;\n };\n}\n\nexport function createBid(identifiers?: Partial<BidIdentifiers>): Partial<Bid> {\n return new Bid(identifiers);\n}\n"],"mappings":"AAAA,SAAQA,sBAAsB,QAAO,YAAY;;AAgBjD;AACA;AACA;;AAqCA;AACA;AACA;;AA0CA;AACA;AACA;;AAkDA;AACA;AACA;;AAsBA;AACA;AACA;;AAWA;AACA,SAASC,GAAGA,CAAA,EAAyG;EAAA,IAAxG;IAACC,GAAG,GAAG,QAAQ;IAAEC,MAAM,GAAG,EAAE;IAAEC,KAAK;IAAEC,aAAa;IAAEC,QAAQ;IAAEC;EAAkC,CAAC,GAAAC,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAE,SAAA,GAAAF,SAAA,MAAG,CAAC,CAAC;EACjH,IAAIG,OAAO,GAAGT,GAAG;EAEjBU,MAAM,CAACC,MAAM,CAAC,IAAI,EAAE;IAClBC,UAAU,EAAEX,MAAM;IAClBY,KAAK,EAAE,CAAC;IACRC,MAAM,EAAE,CAAC;IACTC,IAAI,EAAEjB,sBAAsB,CAAC,CAAC;IAC9BkB,SAAS,EAAEd,KAAK;IAChBC,aAAa;IACbC,QAAQ;IACRC,SAAS;IACTY,SAAS,EAAE,QAAQ;IACnBC,MAAM,EAAET;EACV,CAAC,CAAC;;EAEF;EACA,IAAI,CAACU,OAAO,GAAG,YAAY;IACzB,OAAO,IAAI,CAACN,KAAK,GAAG,GAAG,GAAG,IAAI,CAACC,MAAM;EACvC,CAAC;AACH;AAEA,OAAO,SAASM,SAASA,CAACC,WAAqC,EAAgB;EAC7E,OAAO,IAAItB,GAAG,CAACsB,WAAW,CAAC;AAC7B","ignoreList":[]}
@@ -413,13 +413,13 @@ export function newConfig() {
413
413
  }
414
414
  function check(obj) {
415
415
  if (!isPlainObject(obj)) {
416
- throw 'setBidderConfig bidder options must be an object';
416
+ throw new Error('setBidderConfig bidder options must be an object');
417
417
  }
418
418
  if (!(Array.isArray(obj.bidders) && obj.bidders.length)) {
419
- throw 'setBidderConfig bidder options must contain a bidders list with at least 1 bidder';
419
+ throw new Error('setBidderConfig bidder options must contain a bidders list with at least 1 bidder');
420
420
  }
421
421
  if (!isPlainObject(obj.config)) {
422
- throw 'setBidderConfig bidder options must contain a config object';
422
+ throw new Error('setBidderConfig bidder options must contain a config object');
423
423
  }
424
424
  }
425
425
  }