prebid.js 10.2.0 → 10.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (1650) hide show
  1. package/.github/dependabot.yml +8 -0
  2. package/.github/workflows/scripts/codepath-notification +1 -0
  3. package/creative/renderers/display/renderer.js +3 -4
  4. package/dist/chunks/1plusXRtdProvider.js +1 -1
  5. package/dist/chunks/33acrossAnalyticsAdapter.js +1 -1
  6. package/dist/chunks/33acrossBidAdapter.js +1 -1
  7. package/dist/chunks/33acrossBidAdapter.metadata.js +1 -1
  8. package/dist/chunks/33acrossIdSystem.js +1 -1
  9. package/dist/chunks/33acrossIdSystem.metadata.js +1 -1
  10. package/dist/chunks/acuityadsBidAdapter.metadata.js +1 -1
  11. package/dist/chunks/adagioAnalyticsAdapter.js +1 -1
  12. package/dist/chunks/adagioBidAdapter.js +1 -1
  13. package/dist/chunks/adagioBidAdapter.metadata.js +1 -1
  14. package/dist/chunks/adagioRtdProvider.metadata.js +1 -1
  15. package/dist/chunks/adagioUtils.js +1 -1
  16. package/dist/chunks/addefendBidAdapter.js +1 -1
  17. package/dist/chunks/addefendBidAdapter.metadata.js +1 -1
  18. package/dist/chunks/adfBidAdapter.metadata.js +1 -1
  19. package/dist/chunks/adfusionBidAdapter.metadata.js +1 -1
  20. package/dist/chunks/adgenerationBidAdapter.js +1 -1
  21. package/dist/chunks/adheseBidAdapter.metadata.js +1 -1
  22. package/dist/chunks/adkernelAdnBidAdapter.metadata.js +1 -1
  23. package/dist/chunks/adkernelBidAdapter.metadata.js +1 -1
  24. package/dist/chunks/adlooxRtdProvider.js +1 -1
  25. package/dist/chunks/admaticBidAdapter.metadata.js +1 -1
  26. package/dist/chunks/admixerBidAdapter.js +1 -1
  27. package/dist/chunks/admixerBidAdapter.metadata.js +1 -1
  28. package/dist/chunks/admixerIdSystem.metadata.js +1 -1
  29. package/dist/chunks/adnowBidAdapter.metadata.js +1 -1
  30. package/dist/chunks/adnuntiusBidAdapter.metadata.js +1 -1
  31. package/dist/chunks/adnuntiusRtdProvider.metadata.js +1 -1
  32. package/dist/chunks/adotBidAdapter.metadata.js +1 -1
  33. package/dist/chunks/adponeBidAdapter.metadata.js +1 -1
  34. package/dist/chunks/adqueryBidAdapter.js +1 -1
  35. package/dist/chunks/adqueryBidAdapter.metadata.js +1 -1
  36. package/dist/chunks/adqueryIdSystem.metadata.js +1 -1
  37. package/dist/chunks/adrelevantisBidAdapter.js +1 -1
  38. package/dist/chunks/adrinoBidAdapter.metadata.js +1 -1
  39. package/dist/chunks/ads_interactiveBidAdapter.metadata.js +1 -1
  40. package/dist/chunks/adstirBidAdapter.js +1 -1
  41. package/dist/chunks/adtargetBidAdapter.metadata.js +1 -1
  42. package/dist/chunks/adtelligentBidAdapter.metadata.js +1 -1
  43. package/dist/chunks/adtelligentIdSystem.metadata.js +1 -1
  44. package/dist/chunks/adtrgtmeBidAdapter.js +1 -1
  45. package/dist/chunks/aduptechBidAdapter.metadata.js +1 -1
  46. package/dist/chunks/advertisingBidAdapter.js +1 -1
  47. package/dist/chunks/adxcgAnalyticsAdapter.js +1 -1
  48. package/dist/chunks/adxcgBidAdapter.js +1 -1
  49. package/dist/chunks/adyoulikeBidAdapter.js +1 -1
  50. package/dist/chunks/adyoulikeBidAdapter.metadata.js +1 -1
  51. package/dist/chunks/agmaAnalyticsAdapter.js +1 -1
  52. package/dist/chunks/aidemBidAdapter.metadata.js +1 -1
  53. package/dist/chunks/airgridRtdProvider.metadata.js +1 -1
  54. package/dist/chunks/ajaBidAdapter.js +1 -1
  55. package/dist/chunks/alkimiBidAdapter.metadata.js +1 -1
  56. package/dist/chunks/ampliffyBidAdapter.metadata.js +1 -1
  57. package/dist/chunks/amxBidAdapter.js +1 -1
  58. package/dist/chunks/amxBidAdapter.metadata.js +1 -1
  59. package/dist/chunks/amxIdSystem.js +1 -1
  60. package/dist/chunks/amxIdSystem.metadata.js +1 -1
  61. package/dist/chunks/aniviewBidAdapter.js +1 -1
  62. package/dist/chunks/aniviewBidAdapter.metadata.js +1 -1
  63. package/dist/chunks/anonymisedRtdProvider.metadata.js +1 -1
  64. package/dist/chunks/appierAnalyticsAdapter.js +1 -1
  65. package/dist/chunks/appierBidAdapter.metadata.js +1 -1
  66. package/dist/chunks/appnexusBidAdapter.js +1 -1
  67. package/dist/chunks/appnexusBidAdapter.metadata.js +1 -1
  68. package/dist/chunks/appnexusUtils.js +1 -1
  69. package/dist/chunks/appushBidAdapter.metadata.js +1 -1
  70. package/dist/chunks/apstreamBidAdapter.metadata.js +1 -1
  71. package/dist/chunks/asoBidAdapter.js +1 -1
  72. package/dist/chunks/audiencerunBidAdapter.metadata.js +1 -1
  73. package/dist/chunks/axisBidAdapter.metadata.js +1 -1
  74. package/dist/chunks/axonixBidAdapter.js +1 -1
  75. package/dist/chunks/azerionedgeRtdProvider.metadata.js +1 -1
  76. package/dist/chunks/beopBidAdapter.js +1 -1
  77. package/dist/chunks/beopBidAdapter.metadata.js +1 -1
  78. package/dist/chunks/betweenBidAdapter.metadata.js +1 -1
  79. package/dist/chunks/bidglassBidAdapter.js +1 -1
  80. package/dist/chunks/bidmaticBidAdapter.metadata.js +1 -1
  81. package/dist/chunks/bidtheatreBidAdapter.metadata.js +1 -1
  82. package/dist/chunks/big-richmediaBidAdapter.js +1 -1
  83. package/dist/chunks/bitmediaBidAdapter.js +1 -1
  84. package/dist/chunks/bliinkBidAdapter.metadata.js +1 -1
  85. package/dist/chunks/blockthroughBidAdapter.js +1 -1
  86. package/dist/chunks/blockthroughBidAdapter.metadata.js +1 -1
  87. package/dist/chunks/blueBidAdapter.metadata.js +1 -1
  88. package/dist/chunks/bmsBidAdapter.metadata.js +1 -1
  89. package/dist/chunks/bmtmBidAdapter.js +1 -1
  90. package/dist/chunks/boldwinBidAdapter.metadata.js +1 -1
  91. package/dist/chunks/bridBidAdapter.js +1 -1
  92. package/dist/chunks/bridBidAdapter.metadata.js +1 -1
  93. package/dist/chunks/bridgewellBidAdapter.js +1 -1
  94. package/dist/chunks/browsiBidAdapter.metadata.js +1 -1
  95. package/dist/chunks/bucksenseBidAdapter.metadata.js +1 -1
  96. package/dist/chunks/carodaBidAdapter.js +1 -1
  97. package/dist/chunks/carodaBidAdapter.metadata.js +1 -1
  98. package/dist/chunks/categoryTranslation.metadata.js +1 -1
  99. package/dist/chunks/ccxBidAdapter.metadata.js +1 -1
  100. package/dist/chunks/ceeIdSystem.metadata.js +1 -1
  101. package/dist/chunks/chromeAiRtdProvider.metadata.js +1 -1
  102. package/dist/chunks/chtnwBidAdapter.js +1 -1
  103. package/dist/chunks/chunk-core.js +1 -1
  104. package/dist/chunks/compassBidAdapter.metadata.js +1 -1
  105. package/dist/chunks/conceptxBidAdapter.metadata.js +1 -1
  106. package/dist/chunks/concertBidAdapter.js +1 -1
  107. package/dist/chunks/connatixBidAdapter.metadata.js +1 -1
  108. package/dist/chunks/connectIdSystem.metadata.js +1 -1
  109. package/dist/chunks/connectadBidAdapter.js +1 -1
  110. package/dist/chunks/connectadBidAdapter.metadata.js +1 -1
  111. package/dist/chunks/consumableBidAdapter.js +1 -1
  112. package/dist/chunks/contentexchangeBidAdapter.metadata.js +1 -1
  113. package/dist/chunks/contxtfulBidAdapter.js +1 -1
  114. package/dist/chunks/conversantBidAdapter.js +1 -1
  115. package/dist/chunks/conversantBidAdapter.metadata.js +1 -1
  116. package/dist/chunks/copper6sspBidAdapter.metadata.js +1 -1
  117. package/dist/chunks/cpmstarBidAdapter.metadata.js +1 -1
  118. package/dist/chunks/craftBidAdapter.js +1 -1
  119. package/dist/chunks/creative-renderer-display.js +1 -1
  120. package/dist/chunks/criteoBidAdapter.js +1 -1
  121. package/dist/chunks/criteoBidAdapter.metadata.js +1 -1
  122. package/dist/chunks/criteoIdSystem.metadata.js +1 -1
  123. package/dist/chunks/cryptoUtils.js +1 -0
  124. package/dist/chunks/cwireBidAdapter.js +1 -1
  125. package/dist/chunks/cwireBidAdapter.metadata.js +1 -1
  126. package/dist/chunks/czechAdIdSystem.metadata.js +1 -1
  127. package/dist/chunks/dailymotionBidAdapter.js +1 -1
  128. package/dist/chunks/dailymotionBidAdapter.metadata.js +1 -1
  129. package/dist/chunks/debugging-standalone.js +1 -1
  130. package/dist/chunks/debugging.metadata.js +1 -1
  131. package/dist/chunks/deepintentBidAdapter.metadata.js +1 -1
  132. package/dist/chunks/deltaprojectsBidAdapter.metadata.js +1 -1
  133. package/dist/chunks/dependencies.json +13 -0
  134. package/dist/chunks/dianomiBidAdapter.metadata.js +1 -1
  135. package/dist/chunks/digitalMatterBidAdapter.metadata.js +1 -1
  136. package/dist/chunks/distroscaleBidAdapter.metadata.js +1 -1
  137. package/dist/chunks/docereeAdManagerBidAdapter.metadata.js +1 -1
  138. package/dist/chunks/docereeBidAdapter.metadata.js +1 -1
  139. package/dist/chunks/dspxBidAdapter.js +1 -1
  140. package/dist/chunks/dspxBidAdapter.metadata.js +1 -1
  141. package/dist/chunks/dxkultureBidAdapter.js +1 -1
  142. package/dist/chunks/e_volutionBidAdapter.metadata.js +1 -1
  143. package/dist/chunks/edge226BidAdapter.metadata.js +1 -1
  144. package/dist/chunks/eplanningBidAdapter.js +1 -1
  145. package/dist/chunks/equativBidAdapter.js +1 -1
  146. package/dist/chunks/equativBidAdapter.metadata.js +1 -1
  147. package/dist/chunks/eskimiBidAdapter.js +1 -1
  148. package/dist/chunks/eskimiBidAdapter.metadata.js +1 -1
  149. package/dist/chunks/etargetBidAdapter.metadata.js +1 -1
  150. package/dist/chunks/euidIdSystem.js +1 -1
  151. package/dist/chunks/euidIdSystem.metadata.js +1 -1
  152. package/dist/chunks/exadsBidAdapter.js +1 -1
  153. package/dist/chunks/exadsBidAdapter.metadata.js +1 -1
  154. package/dist/chunks/excoBidAdapter.js +1 -1
  155. package/dist/chunks/feedadBidAdapter.js +1 -1
  156. package/dist/chunks/feedadBidAdapter.metadata.js +1 -1
  157. package/dist/chunks/finativeBidAdapter.js +1 -1
  158. package/dist/chunks/fwsspBidAdapter.metadata.js +1 -1
  159. package/dist/chunks/gamoshiBidAdapter.metadata.js +1 -1
  160. package/dist/chunks/getintentBidAdapter.js +1 -1
  161. package/dist/chunks/glomexBidAdapter.metadata.js +1 -1
  162. package/dist/chunks/gmosspBidAdapter.js +1 -1
  163. package/dist/chunks/goldbachBidAdapter.metadata.js +1 -1
  164. package/dist/chunks/greenbidsAnalyticsAdapter.js +1 -1
  165. package/dist/chunks/greenbidsBidAdapter.js +1 -1
  166. package/dist/chunks/greenbidsBidAdapter.metadata.js +1 -1
  167. package/dist/chunks/greenbidsRtdProvider.js +1 -1
  168. package/dist/chunks/gridBidAdapter.js +1 -1
  169. package/dist/chunks/gridBidAdapter.metadata.js +1 -1
  170. package/dist/chunks/gumgumBidAdapter.js +1 -1
  171. package/dist/chunks/gumgumBidAdapter.metadata.js +1 -1
  172. package/dist/chunks/h12mediaBidAdapter.js +1 -1
  173. package/dist/chunks/hadronIdSystem.metadata.js +1 -1
  174. package/dist/chunks/hadronRtdProvider.metadata.js +1 -1
  175. package/dist/chunks/holidBidAdapter.metadata.js +1 -1
  176. package/dist/chunks/hybridBidAdapter.metadata.js +1 -1
  177. package/dist/chunks/hypelabBidAdapter.js +1 -1
  178. package/dist/chunks/iasRtdProvider.js +1 -1
  179. package/dist/chunks/id5AnalyticsAdapter.js +1 -1
  180. package/dist/chunks/id5IdSystem.js +1 -1
  181. package/dist/chunks/id5IdSystem.metadata.js +1 -1
  182. package/dist/chunks/identityLinkIdSystem.metadata.js +1 -1
  183. package/dist/chunks/illuminBidAdapter.metadata.js +1 -1
  184. package/dist/chunks/impactifyBidAdapter.metadata.js +1 -1
  185. package/dist/chunks/improvedigitalBidAdapter.js +1 -1
  186. package/dist/chunks/improvedigitalBidAdapter.metadata.js +1 -1
  187. package/dist/chunks/inmobiBidAdapter.js +1 -1
  188. package/dist/chunks/inmobiBidAdapter.metadata.js +1 -1
  189. package/dist/chunks/innityBidAdapter.metadata.js +1 -1
  190. package/dist/chunks/insticatorBidAdapter.js +1 -1
  191. package/dist/chunks/insticatorBidAdapter.metadata.js +1 -1
  192. package/dist/chunks/intentIqAnalyticsAdapter.js +1 -1
  193. package/dist/chunks/intentIqIdSystem.metadata.js +1 -1
  194. package/dist/chunks/invibesBidAdapter.metadata.js +1 -1
  195. package/dist/chunks/ipromBidAdapter.metadata.js +1 -1
  196. package/dist/chunks/ixBidAdapter.js +1 -1
  197. package/dist/chunks/ixBidAdapter.metadata.js +1 -1
  198. package/dist/chunks/jixieBidAdapter.js +1 -1
  199. package/dist/chunks/justIdSystem.metadata.js +1 -1
  200. package/dist/chunks/justpremiumBidAdapter.js +1 -1
  201. package/dist/chunks/justpremiumBidAdapter.metadata.js +1 -1
  202. package/dist/chunks/jwplayerBidAdapter.metadata.js +1 -1
  203. package/dist/chunks/jwplayerRtdProvider.js +1 -1
  204. package/dist/chunks/jwplayerVideoProvider.js +1 -1
  205. package/dist/chunks/kargoBidAdapter.js +1 -1
  206. package/dist/chunks/kargoBidAdapter.metadata.js +1 -1
  207. package/dist/chunks/kimberliteBidAdapter.js +1 -1
  208. package/dist/chunks/kubientBidAdapter.js +1 -1
  209. package/dist/chunks/kubientBidAdapter.metadata.js +1 -1
  210. package/dist/chunks/kueezRtbBidAdapter.metadata.js +1 -1
  211. package/dist/chunks/lassoBidAdapter.js +1 -1
  212. package/dist/chunks/lifestreetBidAdapter.js +1 -1
  213. package/dist/chunks/limelightDigitalBidAdapter.metadata.js +1 -1
  214. package/dist/chunks/liveIntentId.js +1 -1
  215. package/dist/chunks/liveIntentIdSystem.metadata.js +1 -1
  216. package/dist/chunks/liveIntentRtdProvider.metadata.js +1 -1
  217. package/dist/chunks/livewrappedBidAdapter.metadata.js +1 -1
  218. package/dist/chunks/logicadBidAdapter.js +1 -1
  219. package/dist/chunks/loopmeBidAdapter.metadata.js +1 -1
  220. package/dist/chunks/lotamePanoramaIdSystem.metadata.js +1 -1
  221. package/dist/chunks/luceadBidAdapter.js +1 -1
  222. package/dist/chunks/luceadBidAdapter.metadata.js +1 -1
  223. package/dist/chunks/luponmediaBidAdapter.metadata.js +1 -1
  224. package/dist/chunks/mabidderBidAdapter.js +1 -1
  225. package/dist/chunks/madsenseBidAdapter.js +1 -1
  226. package/dist/chunks/madvertiseBidAdapter.metadata.js +1 -1
  227. package/dist/chunks/magniteAnalyticsAdapter.js +1 -1
  228. package/dist/chunks/malltvAnalyticsAdapter.js +1 -1
  229. package/dist/chunks/marsmediaBidAdapter.js +1 -1
  230. package/dist/chunks/marsmediaBidAdapter.metadata.js +1 -1
  231. package/dist/chunks/mediaConsortiumBidAdapter.metadata.js +1 -1
  232. package/dist/chunks/mediaforceBidAdapter.metadata.js +1 -1
  233. package/dist/chunks/mediafuseBidAdapter.js +1 -1
  234. package/dist/chunks/mediafuseBidAdapter.metadata.js +1 -1
  235. package/dist/chunks/mediagoBidAdapter.metadata.js +1 -1
  236. package/dist/chunks/mediakeysBidAdapter.metadata.js +1 -1
  237. package/dist/chunks/medianetBidAdapter.js +1 -1
  238. package/dist/chunks/medianetBidAdapter.metadata.js +1 -1
  239. package/dist/chunks/medianetUtils.js +1 -1
  240. package/dist/chunks/mediasquareBidAdapter.js +1 -1
  241. package/dist/chunks/mediasquareBidAdapter.metadata.js +1 -1
  242. package/dist/chunks/mgidBidAdapter.js +1 -1
  243. package/dist/chunks/mgidBidAdapter.metadata.js +1 -1
  244. package/dist/chunks/mgidRtdProvider.metadata.js +1 -1
  245. package/dist/chunks/mgidXBidAdapter.metadata.js +1 -1
  246. package/dist/chunks/minutemediaBidAdapter.metadata.js +1 -1
  247. package/dist/chunks/missenaBidAdapter.js +1 -1
  248. package/dist/chunks/missenaBidAdapter.metadata.js +1 -1
  249. package/dist/chunks/mobianRtdProvider.metadata.js +1 -1
  250. package/dist/chunks/mobilefuseBidAdapter.js +1 -1
  251. package/dist/chunks/mobilefuseBidAdapter.metadata.js +1 -1
  252. package/dist/chunks/mobkoiBidAdapter.metadata.js +1 -1
  253. package/dist/chunks/mobkoiIdSystem.metadata.js +1 -1
  254. package/dist/chunks/nativeryBidAdapter.metadata.js +1 -1
  255. package/dist/chunks/nativoBidAdapter.metadata.js +1 -1
  256. package/dist/chunks/newspassidBidAdapter.metadata.js +1 -1
  257. package/dist/chunks/nextMillenniumBidAdapter.js +1 -1
  258. package/dist/chunks/nextMillenniumBidAdapter.metadata.js +1 -1
  259. package/dist/chunks/nextrollBidAdapter.metadata.js +1 -1
  260. package/dist/chunks/nexx360BidAdapter.metadata.js +1 -1
  261. package/dist/chunks/nexx360Utils.js +1 -1
  262. package/dist/chunks/nobidAnalyticsAdapter.js +1 -1
  263. package/dist/chunks/nobidBidAdapter.js +1 -1
  264. package/dist/chunks/nobidBidAdapter.metadata.js +1 -1
  265. package/dist/chunks/nodalsAiRtdProvider.js +1 -1
  266. package/dist/chunks/nodalsAiRtdProvider.metadata.js +1 -1
  267. package/dist/chunks/novatiqIdSystem.metadata.js +1 -1
  268. package/dist/chunks/oguryBidAdapter.js +1 -1
  269. package/dist/chunks/oguryBidAdapter.metadata.js +1 -1
  270. package/dist/chunks/omsBidAdapter.metadata.js +1 -1
  271. package/dist/chunks/onetagBidAdapter.js +1 -1
  272. package/dist/chunks/onetagBidAdapter.metadata.js +1 -1
  273. package/dist/chunks/ooloAnalyticsAdapter.js +1 -1
  274. package/dist/chunks/openwebBidAdapter.metadata.js +1 -1
  275. package/dist/chunks/openxBidAdapter.js +1 -1
  276. package/dist/chunks/openxBidAdapter.metadata.js +1 -1
  277. package/dist/chunks/operaadsBidAdapter.metadata.js +1 -1
  278. package/dist/chunks/optidigitalBidAdapter.js +1 -1
  279. package/dist/chunks/optidigitalBidAdapter.metadata.js +1 -1
  280. package/dist/chunks/optoutBidAdapter.metadata.js +1 -1
  281. package/dist/chunks/orbidderBidAdapter.js +1 -1
  282. package/dist/chunks/orbidderBidAdapter.metadata.js +1 -1
  283. package/dist/chunks/outbrainBidAdapter.js +1 -1
  284. package/dist/chunks/outbrainBidAdapter.metadata.js +1 -1
  285. package/dist/chunks/ozoneBidAdapter.metadata.js +1 -1
  286. package/dist/chunks/pairIdSystem.metadata.js +1 -1
  287. package/dist/chunks/performaxBidAdapter.metadata.js +1 -1
  288. package/dist/chunks/pgamsspBidAdapter.metadata.js +1 -1
  289. package/dist/chunks/pixfutureBidAdapter.js +1 -1
  290. package/dist/chunks/pixfutureBidAdapter.metadata.js +1 -1
  291. package/dist/chunks/playdigoBidAdapter.metadata.js +1 -1
  292. package/dist/chunks/prebid-core.metadata.js +1 -1
  293. package/dist/chunks/precisoBidAdapter.metadata.js +1 -1
  294. package/dist/chunks/prismaBidAdapter.metadata.js +1 -1
  295. package/dist/chunks/programmaticXBidAdapter.metadata.js +1 -1
  296. package/dist/chunks/proxistoreBidAdapter.metadata.js +1 -1
  297. package/dist/chunks/publinkIdSystem.js +1 -1
  298. package/dist/chunks/publinkIdSystem.metadata.js +1 -1
  299. package/dist/chunks/pubmaticAnalyticsAdapter.js +1 -1
  300. package/dist/chunks/pubmaticBidAdapter.js +1 -1
  301. package/dist/chunks/pubmaticBidAdapter.metadata.js +1 -1
  302. package/dist/chunks/pubmaticIdSystem.metadata.js +1 -1
  303. package/dist/chunks/pubwiseAnalyticsAdapter.js +1 -1
  304. package/dist/chunks/pubxaiAnalyticsAdapter.js +1 -1
  305. package/dist/chunks/pulsepointBidAdapter.js +1 -1
  306. package/dist/chunks/pulsepointBidAdapter.metadata.js +1 -1
  307. package/dist/chunks/pwbidBidAdapter.metadata.js +1 -1
  308. package/dist/chunks/pxyzBidAdapter.js +1 -1
  309. package/dist/chunks/qtBidAdapter.metadata.js +1 -1
  310. package/dist/chunks/quantcastBidAdapter.js +1 -1
  311. package/dist/chunks/quantcastBidAdapter.metadata.js +1 -1
  312. package/dist/chunks/quantcastIdSystem.metadata.js +1 -1
  313. package/dist/chunks/r2b2BidAdapter.metadata.js +1 -1
  314. package/dist/chunks/raynRtdProvider.metadata.js +1 -1
  315. package/dist/chunks/readpeakBidAdapter.js +1 -1
  316. package/dist/chunks/readpeakBidAdapter.metadata.js +1 -1
  317. package/dist/chunks/relaidoBidAdapter.js +1 -1
  318. package/dist/chunks/relayBidAdapter.metadata.js +1 -1
  319. package/dist/chunks/relevantdigitalBidAdapter.metadata.js +1 -1
  320. package/dist/chunks/resetdigitalBidAdapter.metadata.js +1 -1
  321. package/dist/chunks/responsiveAdsBidAdapter.metadata.js +1 -1
  322. package/dist/chunks/retailspotBidAdapter.js +1 -1
  323. package/dist/chunks/retailspotBidAdapter.metadata.js +1 -1
  324. package/dist/chunks/revcontentBidAdapter.metadata.js +1 -1
  325. package/dist/chunks/rhythmoneBidAdapter.js +1 -1
  326. package/dist/chunks/rhythmoneBidAdapter.metadata.js +1 -1
  327. package/dist/chunks/richaudienceBidAdapter.metadata.js +1 -1
  328. package/dist/chunks/riseBidAdapter.metadata.js +1 -1
  329. package/dist/chunks/riseUtils.js +1 -1
  330. package/dist/chunks/rixengineBidAdapter.metadata.js +1 -1
  331. package/dist/chunks/rtbhouseBidAdapter.metadata.js +1 -1
  332. package/dist/chunks/rubiconBidAdapter.js +1 -1
  333. package/dist/chunks/rubiconBidAdapter.metadata.js +1 -1
  334. package/dist/chunks/rumbleBidAdapter.js +1 -0
  335. package/dist/chunks/rumbleBidAdapter.metadata.js +1 -0
  336. package/dist/chunks/scatteredBidAdapter.metadata.js +1 -1
  337. package/dist/chunks/seedingAllianceBidAdapter.js +1 -1
  338. package/dist/chunks/seedingAllianceBidAdapter.metadata.js +1 -1
  339. package/dist/chunks/seedtagBidAdapter.js +1 -1
  340. package/dist/chunks/seedtagBidAdapter.metadata.js +1 -1
  341. package/dist/chunks/semantiqRtdProvider.metadata.js +1 -1
  342. package/dist/chunks/setupadBidAdapter.metadata.js +1 -1
  343. package/dist/chunks/sevioBidAdapter.js +1 -0
  344. package/dist/chunks/sevioBidAdapter.metadata.js +1 -0
  345. package/dist/chunks/sharedIdSystem.metadata.js +1 -1
  346. package/dist/chunks/sharethroughAnalyticsAdapter.js +1 -1
  347. package/dist/chunks/sharethroughBidAdapter.js +1 -1
  348. package/dist/chunks/sharethroughBidAdapter.metadata.js +1 -1
  349. package/dist/chunks/showheroes-bsBidAdapter.js +1 -1
  350. package/dist/chunks/showheroes-bsBidAdapter.metadata.js +1 -1
  351. package/dist/chunks/silvermobBidAdapter.metadata.js +1 -1
  352. package/dist/chunks/sirdataRtdProvider.metadata.js +1 -1
  353. package/dist/chunks/slimcutBidAdapter.metadata.js +1 -1
  354. package/dist/chunks/smaatoBidAdapter.js +1 -1
  355. package/dist/chunks/smaatoBidAdapter.metadata.js +1 -1
  356. package/dist/chunks/smartadserverBidAdapter.js +1 -1
  357. package/dist/chunks/smartadserverBidAdapter.metadata.js +1 -1
  358. package/dist/chunks/smartxBidAdapter.js +1 -1
  359. package/dist/chunks/smartxBidAdapter.metadata.js +1 -1
  360. package/dist/chunks/smartyadsBidAdapter.metadata.js +1 -1
  361. package/dist/chunks/smilewantedBidAdapter.js +1 -1
  362. package/dist/chunks/smilewantedBidAdapter.metadata.js +1 -1
  363. package/dist/chunks/snigelBidAdapter.js +1 -1
  364. package/dist/chunks/snigelBidAdapter.metadata.js +1 -1
  365. package/dist/chunks/sonaradsBidAdapter.js +1 -1
  366. package/dist/chunks/sonaradsBidAdapter.metadata.js +1 -1
  367. package/dist/chunks/sonobiBidAdapter.js +1 -1
  368. package/dist/chunks/sonobiBidAdapter.metadata.js +1 -1
  369. package/dist/chunks/sovrnBidAdapter.js +1 -1
  370. package/dist/chunks/sovrnBidAdapter.metadata.js +1 -1
  371. package/dist/chunks/sparteoBidAdapter.js +1 -1
  372. package/dist/chunks/sparteoBidAdapter.metadata.js +1 -1
  373. package/dist/chunks/ssmasBidAdapter.metadata.js +1 -1
  374. package/dist/chunks/sspBCBidAdapter.js +1 -1
  375. package/dist/chunks/sspBCBidAdapter.metadata.js +1 -1
  376. package/dist/chunks/stackadaptBidAdapter.metadata.js +1 -1
  377. package/dist/chunks/startioBidAdapter.metadata.js +1 -1
  378. package/dist/chunks/stroeerCoreBidAdapter.metadata.js +1 -1
  379. package/dist/chunks/stvBidAdapter.js +1 -1
  380. package/dist/chunks/stvBidAdapter.metadata.js +1 -1
  381. package/dist/chunks/sublimeBidAdapter.js +1 -1
  382. package/dist/chunks/sublimeBidAdapter.metadata.js +1 -1
  383. package/dist/chunks/taboolaBidAdapter.js +1 -1
  384. package/dist/chunks/taboolaBidAdapter.metadata.js +1 -1
  385. package/dist/chunks/taboolaIdSystem.metadata.js +1 -1
  386. package/dist/chunks/tappxBidAdapter.js +1 -1
  387. package/dist/chunks/tappxBidAdapter.metadata.js +1 -1
  388. package/dist/chunks/targetVideoBidAdapter.js +1 -1
  389. package/dist/chunks/targetVideoBidAdapter.metadata.js +1 -1
  390. package/dist/chunks/teadsBidAdapter.js +1 -1
  391. package/dist/chunks/teadsBidAdapter.metadata.js +1 -1
  392. package/dist/chunks/teadsIdSystem.metadata.js +1 -1
  393. package/dist/chunks/tealBidAdapter.metadata.js +1 -1
  394. package/dist/chunks/terceptAnalyticsAdapter.js +1 -1
  395. package/dist/chunks/themoneytizerBidAdapter.js +1 -1
  396. package/dist/chunks/themoneytizerBidAdapter.metadata.js +1 -1
  397. package/dist/chunks/tncIdSystem.metadata.js +1 -1
  398. package/dist/chunks/topicsFpdModule.metadata.js +1 -1
  399. package/dist/chunks/trionBidAdapter.js +1 -1
  400. package/dist/chunks/tripleliftBidAdapter.js +1 -1
  401. package/dist/chunks/tripleliftBidAdapter.metadata.js +1 -1
  402. package/dist/chunks/ttdBidAdapter.js +1 -1
  403. package/dist/chunks/ttdBidAdapter.metadata.js +1 -1
  404. package/dist/chunks/twistDigitalBidAdapter.metadata.js +1 -1
  405. package/dist/chunks/ucfunnelAnalyticsAdapter.js +1 -1
  406. package/dist/chunks/uid2IdSystem.js +1 -1
  407. package/dist/chunks/underdogmediaBidAdapter.js +1 -1
  408. package/dist/chunks/underdogmediaBidAdapter.metadata.js +1 -1
  409. package/dist/chunks/undertoneBidAdapter.js +1 -1
  410. package/dist/chunks/undertoneBidAdapter.metadata.js +1 -1
  411. package/dist/chunks/unifiedIdSystem.metadata.js +1 -1
  412. package/dist/chunks/unrulyBidAdapter.js +1 -1
  413. package/dist/chunks/unrulyBidAdapter.metadata.js +1 -1
  414. package/dist/chunks/userId.js +1 -1
  415. package/dist/chunks/userId.metadata.js +1 -1
  416. package/dist/chunks/validationFpdModule.metadata.js +1 -1
  417. package/dist/chunks/vidazooBidAdapter.metadata.js +1 -1
  418. package/dist/chunks/vidazooUtils.js +1 -1
  419. package/dist/chunks/videobyteBidAdapter.js +1 -1
  420. package/dist/chunks/vidoomyBidAdapter.metadata.js +1 -1
  421. package/dist/chunks/viewdeosDXBidAdapter.metadata.js +1 -1
  422. package/dist/chunks/viouslyBidAdapter.metadata.js +1 -1
  423. package/dist/chunks/visxBidAdapter.js +1 -1
  424. package/dist/chunks/visxBidAdapter.metadata.js +1 -1
  425. package/dist/chunks/vlybyBidAdapter.metadata.js +1 -1
  426. package/dist/chunks/voxBidAdapter.metadata.js +1 -1
  427. package/dist/chunks/vrtcalBidAdapter.metadata.js +1 -1
  428. package/dist/chunks/vuukleBidAdapter.js +1 -1
  429. package/dist/chunks/vuukleBidAdapter.metadata.js +1 -1
  430. package/dist/chunks/weboramaRtdProvider.js +1 -1
  431. package/dist/chunks/weboramaRtdProvider.metadata.js +1 -1
  432. package/dist/chunks/welectBidAdapter.metadata.js +1 -1
  433. package/dist/chunks/widespaceBidAdapter.js +1 -1
  434. package/dist/chunks/winrBidAdapter.js +1 -1
  435. package/dist/chunks/yahooAdsBidAdapter.js +1 -1
  436. package/dist/chunks/yahooAdsBidAdapter.metadata.js +1 -1
  437. package/dist/chunks/yandexBidAdapter.js +1 -1
  438. package/dist/chunks/yieldlabBidAdapter.metadata.js +1 -1
  439. package/dist/chunks/yieldliftBidAdapter.metadata.js +1 -1
  440. package/dist/chunks/yieldloveBidAdapter.metadata.js +1 -1
  441. package/dist/chunks/yieldmoBidAdapter.js +1 -1
  442. package/dist/chunks/yieldmoBidAdapter.metadata.js +1 -1
  443. package/dist/chunks/yieldoneAnalyticsAdapter.js +1 -1
  444. package/dist/chunks/zeotapIdPlusIdSystem.metadata.js +1 -1
  445. package/dist/chunks/zeta_globalBidAdapter.metadata.js +1 -1
  446. package/dist/chunks/zeta_global_sspBidAdapter.metadata.js +1 -1
  447. package/dist/not-for-prod/prebid.js +443 -438
  448. package/dist/src/creative/renderers/display/renderer.js +3 -4
  449. package/dist/src/creative/renderers/display/renderer.js.map +1 -1
  450. package/dist/src/libraries/adagioUtils/adagioUtils.js +1 -1
  451. package/dist/src/libraries/analyticsAdapter/AnalyticsAdapter.js.map +1 -1
  452. package/dist/src/libraries/appnexusUtils/anKeywords.js +15 -1
  453. package/dist/src/libraries/appnexusUtils/anKeywords.js.map +1 -1
  454. package/dist/src/libraries/consentManagement/cmUtils.js.map +1 -1
  455. package/dist/src/libraries/creative-renderer-display/renderer.d.ts +1 -1
  456. package/dist/src/libraries/creative-renderer-display/renderer.js +1 -1
  457. package/dist/src/libraries/creative-renderer-display/renderer.js.map +1 -1
  458. package/dist/src/libraries/cryptoUtils/wallets.js +14 -0
  459. package/dist/src/libraries/cryptoUtils/wallets.js.map +1 -0
  460. package/dist/src/libraries/dspxUtils/bidderUtils.js.map +1 -1
  461. package/dist/src/libraries/impUtils.js +36 -0
  462. package/dist/src/libraries/impUtils.js.map +1 -0
  463. package/dist/src/libraries/liveIntentId/externalIdSystem.js +1 -1
  464. package/dist/src/libraries/liveIntentId/idSystem.js +1 -1
  465. package/dist/src/libraries/liveIntentId/shared.js +20 -0
  466. package/dist/src/libraries/liveIntentId/shared.js.map +1 -1
  467. package/dist/src/libraries/medianetUtils/constants.js +1 -1
  468. package/dist/src/libraries/nexx360Utils/index.js +1 -1
  469. package/dist/src/libraries/nexx360Utils/index.js.map +1 -1
  470. package/dist/src/libraries/ortbConverter/converter.js.map +1 -1
  471. package/dist/src/libraries/riseUtils/index.js +1 -1
  472. package/dist/src/libraries/vidazooUtils/bidderUtils.js +1 -1
  473. package/dist/src/libraries/video/constants/events.js.map +1 -1
  474. package/dist/src/metadata/modules/33acrossBidAdapter.js +1 -1
  475. package/dist/src/metadata/modules/33acrossIdSystem.js +1 -1
  476. package/dist/src/metadata/modules/acuityadsBidAdapter.js +1 -1
  477. package/dist/src/metadata/modules/adagioBidAdapter.js +1 -1
  478. package/dist/src/metadata/modules/adagioRtdProvider.js +1 -1
  479. package/dist/src/metadata/modules/addefendBidAdapter.js +1 -1
  480. package/dist/src/metadata/modules/adfBidAdapter.js +1 -1
  481. package/dist/src/metadata/modules/adfusionBidAdapter.js +1 -1
  482. package/dist/src/metadata/modules/adheseBidAdapter.js +1 -1
  483. package/dist/src/metadata/modules/adkernelAdnBidAdapter.js +1 -1
  484. package/dist/src/metadata/modules/adkernelBidAdapter.js +1 -1
  485. package/dist/src/metadata/modules/admaticBidAdapter.js +1 -1
  486. package/dist/src/metadata/modules/admixerBidAdapter.js +1 -1
  487. package/dist/src/metadata/modules/admixerIdSystem.js +1 -1
  488. package/dist/src/metadata/modules/adnowBidAdapter.js +1 -1
  489. package/dist/src/metadata/modules/adnuntiusBidAdapter.js +1 -1
  490. package/dist/src/metadata/modules/adnuntiusRtdProvider.js +1 -1
  491. package/dist/src/metadata/modules/adotBidAdapter.js +1 -1
  492. package/dist/src/metadata/modules/adponeBidAdapter.js +1 -1
  493. package/dist/src/metadata/modules/adqueryBidAdapter.js +1 -1
  494. package/dist/src/metadata/modules/adqueryIdSystem.js +1 -1
  495. package/dist/src/metadata/modules/adrinoBidAdapter.js +1 -1
  496. package/dist/src/metadata/modules/ads_interactiveBidAdapter.js +1 -1
  497. package/dist/src/metadata/modules/adtargetBidAdapter.js +1 -1
  498. package/dist/src/metadata/modules/adtelligentBidAdapter.js +1 -1
  499. package/dist/src/metadata/modules/adtelligentIdSystem.js +1 -1
  500. package/dist/src/metadata/modules/aduptechBidAdapter.js +1 -1
  501. package/dist/src/metadata/modules/adyoulikeBidAdapter.js +1 -1
  502. package/dist/src/metadata/modules/aidemBidAdapter.js +1 -1
  503. package/dist/src/metadata/modules/airgridRtdProvider.js +1 -1
  504. package/dist/src/metadata/modules/alkimiBidAdapter.js +1 -1
  505. package/dist/src/metadata/modules/ampliffyBidAdapter.js +1 -1
  506. package/dist/src/metadata/modules/amxBidAdapter.js +1 -1
  507. package/dist/src/metadata/modules/amxIdSystem.js +1 -1
  508. package/dist/src/metadata/modules/aniviewBidAdapter.js +1 -1
  509. package/dist/src/metadata/modules/anonymisedRtdProvider.js +1 -1
  510. package/dist/src/metadata/modules/appierBidAdapter.js +1 -1
  511. package/dist/src/metadata/modules/appnexusBidAdapter.js +1 -1
  512. package/dist/src/metadata/modules/appushBidAdapter.js +1 -1
  513. package/dist/src/metadata/modules/apstreamBidAdapter.js +1 -1
  514. package/dist/src/metadata/modules/audiencerunBidAdapter.js +1 -1
  515. package/dist/src/metadata/modules/axisBidAdapter.js +1 -1
  516. package/dist/src/metadata/modules/azerionedgeRtdProvider.js +1 -1
  517. package/dist/src/metadata/modules/beopBidAdapter.js +1 -1
  518. package/dist/src/metadata/modules/betweenBidAdapter.js +1 -1
  519. package/dist/src/metadata/modules/bidmaticBidAdapter.js +1 -1
  520. package/dist/src/metadata/modules/bidtheatreBidAdapter.js +1 -1
  521. package/dist/src/metadata/modules/bliinkBidAdapter.js +1 -1
  522. package/dist/src/metadata/modules/blockthroughBidAdapter.js +1 -1
  523. package/dist/src/metadata/modules/blueBidAdapter.js +1 -1
  524. package/dist/src/metadata/modules/bmsBidAdapter.js +1 -1
  525. package/dist/src/metadata/modules/boldwinBidAdapter.js +1 -1
  526. package/dist/src/metadata/modules/bridBidAdapter.js +1 -1
  527. package/dist/src/metadata/modules/browsiBidAdapter.js +1 -1
  528. package/dist/src/metadata/modules/bucksenseBidAdapter.js +1 -1
  529. package/dist/src/metadata/modules/carodaBidAdapter.js +1 -1
  530. package/dist/src/metadata/modules/categoryTranslation.js +1 -1
  531. package/dist/src/metadata/modules/ccxBidAdapter.js +1 -1
  532. package/dist/src/metadata/modules/ceeIdSystem.js +1 -1
  533. package/dist/src/metadata/modules/chromeAiRtdProvider.js +1 -1
  534. package/dist/src/metadata/modules/compassBidAdapter.js +1 -1
  535. package/dist/src/metadata/modules/conceptxBidAdapter.js +1 -1
  536. package/dist/src/metadata/modules/connatixBidAdapter.js +1 -1
  537. package/dist/src/metadata/modules/connectIdSystem.js +1 -1
  538. package/dist/src/metadata/modules/connectadBidAdapter.js +1 -1
  539. package/dist/src/metadata/modules/contentexchangeBidAdapter.js +1 -1
  540. package/dist/src/metadata/modules/conversantBidAdapter.js +1 -1
  541. package/dist/src/metadata/modules/copper6sspBidAdapter.js +1 -1
  542. package/dist/src/metadata/modules/cpmstarBidAdapter.js +1 -1
  543. package/dist/src/metadata/modules/criteoBidAdapter.js +1 -1
  544. package/dist/src/metadata/modules/criteoIdSystem.js +1 -1
  545. package/dist/src/metadata/modules/cwireBidAdapter.js +1 -1
  546. package/dist/src/metadata/modules/czechAdIdSystem.js +1 -1
  547. package/dist/src/metadata/modules/dailymotionBidAdapter.js +1 -1
  548. package/dist/src/metadata/modules/debugging.js +1 -1
  549. package/dist/src/metadata/modules/deepintentBidAdapter.js +1 -1
  550. package/dist/src/metadata/modules/deltaprojectsBidAdapter.js +1 -1
  551. package/dist/src/metadata/modules/dianomiBidAdapter.js +1 -1
  552. package/dist/src/metadata/modules/digitalMatterBidAdapter.js +1 -1
  553. package/dist/src/metadata/modules/distroscaleBidAdapter.js +1 -1
  554. package/dist/src/metadata/modules/docereeAdManagerBidAdapter.js +1 -1
  555. package/dist/src/metadata/modules/docereeBidAdapter.js +1 -1
  556. package/dist/src/metadata/modules/dspxBidAdapter.js +1 -1
  557. package/dist/src/metadata/modules/e_volutionBidAdapter.js +1 -1
  558. package/dist/src/metadata/modules/edge226BidAdapter.js +1 -1
  559. package/dist/src/metadata/modules/equativBidAdapter.js +1 -1
  560. package/dist/src/metadata/modules/eskimiBidAdapter.js +1 -1
  561. package/dist/src/metadata/modules/etargetBidAdapter.js +1 -1
  562. package/dist/src/metadata/modules/euidIdSystem.js +1 -1
  563. package/dist/src/metadata/modules/exadsBidAdapter.js +1 -1
  564. package/dist/src/metadata/modules/feedadBidAdapter.js +1 -1
  565. package/dist/src/metadata/modules/fwsspBidAdapter.js +1 -1
  566. package/dist/src/metadata/modules/gamoshiBidAdapter.js +1 -1
  567. package/dist/src/metadata/modules/glomexBidAdapter.js +1 -1
  568. package/dist/src/metadata/modules/goldbachBidAdapter.js +1 -1
  569. package/dist/src/metadata/modules/greenbidsBidAdapter.js +1 -1
  570. package/dist/src/metadata/modules/gridBidAdapter.js +1 -1
  571. package/dist/src/metadata/modules/gumgumBidAdapter.js +1 -1
  572. package/dist/src/metadata/modules/hadronIdSystem.js +1 -1
  573. package/dist/src/metadata/modules/hadronRtdProvider.js +1 -1
  574. package/dist/src/metadata/modules/holidBidAdapter.js +1 -1
  575. package/dist/src/metadata/modules/hybridBidAdapter.js +1 -1
  576. package/dist/src/metadata/modules/id5IdSystem.js +1 -1
  577. package/dist/src/metadata/modules/identityLinkIdSystem.js +1 -1
  578. package/dist/src/metadata/modules/illuminBidAdapter.js +1 -1
  579. package/dist/src/metadata/modules/impactifyBidAdapter.js +1 -1
  580. package/dist/src/metadata/modules/improvedigitalBidAdapter.js +1 -1
  581. package/dist/src/metadata/modules/inmobiBidAdapter.js +1 -1
  582. package/dist/src/metadata/modules/innityBidAdapter.js +1 -1
  583. package/dist/src/metadata/modules/insticatorBidAdapter.js +1 -1
  584. package/dist/src/metadata/modules/intentIqIdSystem.js +1 -1
  585. package/dist/src/metadata/modules/invibesBidAdapter.js +1 -1
  586. package/dist/src/metadata/modules/ipromBidAdapter.js +1 -1
  587. package/dist/src/metadata/modules/ixBidAdapter.js +1 -1
  588. package/dist/src/metadata/modules/justIdSystem.js +1 -1
  589. package/dist/src/metadata/modules/justpremiumBidAdapter.js +1 -1
  590. package/dist/src/metadata/modules/jwplayerBidAdapter.js +1 -1
  591. package/dist/src/metadata/modules/kargoBidAdapter.js +1 -1
  592. package/dist/src/metadata/modules/kubientBidAdapter.js +1 -1
  593. package/dist/src/metadata/modules/kueezRtbBidAdapter.js +1 -1
  594. package/dist/src/metadata/modules/limelightDigitalBidAdapter.js +1 -1
  595. package/dist/src/metadata/modules/liveIntentIdSystem.js +1 -1
  596. package/dist/src/metadata/modules/liveIntentRtdProvider.js +1 -1
  597. package/dist/src/metadata/modules/livewrappedBidAdapter.js +1 -1
  598. package/dist/src/metadata/modules/loopmeBidAdapter.js +1 -1
  599. package/dist/src/metadata/modules/lotamePanoramaIdSystem.js +1 -1
  600. package/dist/src/metadata/modules/luceadBidAdapter.js +1 -1
  601. package/dist/src/metadata/modules/luponmediaBidAdapter.js +1 -1
  602. package/dist/src/metadata/modules/madvertiseBidAdapter.js +1 -1
  603. package/dist/src/metadata/modules/marsmediaBidAdapter.js +1 -1
  604. package/dist/src/metadata/modules/mediaConsortiumBidAdapter.js +1 -1
  605. package/dist/src/metadata/modules/mediaforceBidAdapter.js +1 -1
  606. package/dist/src/metadata/modules/mediafuseBidAdapter.js +1 -1
  607. package/dist/src/metadata/modules/mediagoBidAdapter.js +1 -1
  608. package/dist/src/metadata/modules/mediakeysBidAdapter.js +1 -1
  609. package/dist/src/metadata/modules/medianetBidAdapter.js +1 -1
  610. package/dist/src/metadata/modules/mediasquareBidAdapter.js +1 -1
  611. package/dist/src/metadata/modules/mgidBidAdapter.js +1 -1
  612. package/dist/src/metadata/modules/mgidRtdProvider.js +1 -1
  613. package/dist/src/metadata/modules/mgidXBidAdapter.js +1 -1
  614. package/dist/src/metadata/modules/minutemediaBidAdapter.js +1 -1
  615. package/dist/src/metadata/modules/missenaBidAdapter.js +1 -1
  616. package/dist/src/metadata/modules/mobianRtdProvider.js +1 -1
  617. package/dist/src/metadata/modules/mobilefuseBidAdapter.js +1 -1
  618. package/dist/src/metadata/modules/mobkoiBidAdapter.js +1 -1
  619. package/dist/src/metadata/modules/mobkoiIdSystem.js +1 -1
  620. package/dist/src/metadata/modules/nativeryBidAdapter.js +1 -1
  621. package/dist/src/metadata/modules/nativoBidAdapter.js +1 -1
  622. package/dist/src/metadata/modules/newspassidBidAdapter.js +1 -1
  623. package/dist/src/metadata/modules/nextMillenniumBidAdapter.js +1 -1
  624. package/dist/src/metadata/modules/nextrollBidAdapter.js +1 -1
  625. package/dist/src/metadata/modules/nexx360BidAdapter.js +1 -1
  626. package/dist/src/metadata/modules/nobidBidAdapter.js +1 -1
  627. package/dist/src/metadata/modules/nodalsAiRtdProvider.js +1 -1
  628. package/dist/src/metadata/modules/novatiqIdSystem.js +1 -1
  629. package/dist/src/metadata/modules/oguryBidAdapter.js +1 -1
  630. package/dist/src/metadata/modules/omsBidAdapter.js +1 -1
  631. package/dist/src/metadata/modules/onetagBidAdapter.js +1 -1
  632. package/dist/src/metadata/modules/openwebBidAdapter.js +1 -1
  633. package/dist/src/metadata/modules/openxBidAdapter.js +1 -1
  634. package/dist/src/metadata/modules/operaadsBidAdapter.js +1 -1
  635. package/dist/src/metadata/modules/optidigitalBidAdapter.js +1 -1
  636. package/dist/src/metadata/modules/optoutBidAdapter.js +1 -1
  637. package/dist/src/metadata/modules/orbidderBidAdapter.js +1 -1
  638. package/dist/src/metadata/modules/outbrainBidAdapter.js +1 -1
  639. package/dist/src/metadata/modules/ozoneBidAdapter.js +1 -1
  640. package/dist/src/metadata/modules/pairIdSystem.js +1 -1
  641. package/dist/src/metadata/modules/performaxBidAdapter.js +1 -1
  642. package/dist/src/metadata/modules/pgamsspBidAdapter.js +1 -1
  643. package/dist/src/metadata/modules/pixfutureBidAdapter.js +1 -1
  644. package/dist/src/metadata/modules/playdigoBidAdapter.js +1 -1
  645. package/dist/src/metadata/modules/prebid-core.js +1 -1
  646. package/dist/src/metadata/modules/precisoBidAdapter.js +1 -1
  647. package/dist/src/metadata/modules/prismaBidAdapter.js +1 -1
  648. package/dist/src/metadata/modules/programmaticXBidAdapter.js +1 -1
  649. package/dist/src/metadata/modules/proxistoreBidAdapter.js +1 -1
  650. package/dist/src/metadata/modules/publinkIdSystem.js +1 -1
  651. package/dist/src/metadata/modules/pubmaticBidAdapter.js +1 -1
  652. package/dist/src/metadata/modules/pubmaticIdSystem.js +1 -1
  653. package/dist/src/metadata/modules/pulsepointBidAdapter.js +1 -1
  654. package/dist/src/metadata/modules/pwbidBidAdapter.js +1 -1
  655. package/dist/src/metadata/modules/qtBidAdapter.js +1 -1
  656. package/dist/src/metadata/modules/quantcastBidAdapter.js +1 -1
  657. package/dist/src/metadata/modules/quantcastIdSystem.js +1 -1
  658. package/dist/src/metadata/modules/r2b2BidAdapter.js +1 -1
  659. package/dist/src/metadata/modules/raynRtdProvider.js +1 -1
  660. package/dist/src/metadata/modules/readpeakBidAdapter.js +1 -1
  661. package/dist/src/metadata/modules/relayBidAdapter.js +1 -1
  662. package/dist/src/metadata/modules/relevantdigitalBidAdapter.js +1 -1
  663. package/dist/src/metadata/modules/resetdigitalBidAdapter.js +1 -1
  664. package/dist/src/metadata/modules/responsiveAdsBidAdapter.js +1 -1
  665. package/dist/src/metadata/modules/retailspotBidAdapter.js +1 -1
  666. package/dist/src/metadata/modules/revcontentBidAdapter.js +1 -1
  667. package/dist/src/metadata/modules/rhythmoneBidAdapter.js +1 -1
  668. package/dist/src/metadata/modules/richaudienceBidAdapter.js +1 -1
  669. package/dist/src/metadata/modules/riseBidAdapter.js +1 -1
  670. package/dist/src/metadata/modules/rixengineBidAdapter.js +1 -1
  671. package/dist/src/metadata/modules/rtbhouseBidAdapter.js +1 -1
  672. package/dist/src/metadata/modules/rubiconBidAdapter.js +1 -1
  673. package/dist/src/metadata/modules/rumbleBidAdapter.js +2 -0
  674. package/dist/src/metadata/modules/scatteredBidAdapter.js +1 -1
  675. package/dist/src/metadata/modules/seedingAllianceBidAdapter.js +1 -1
  676. package/dist/src/metadata/modules/seedtagBidAdapter.js +1 -1
  677. package/dist/src/metadata/modules/semantiqRtdProvider.js +1 -1
  678. package/dist/src/metadata/modules/setupadBidAdapter.js +1 -1
  679. package/dist/src/metadata/modules/sevioBidAdapter.js +2 -0
  680. package/dist/src/metadata/modules/sharedIdSystem.js +1 -1
  681. package/dist/src/metadata/modules/sharethroughBidAdapter.js +1 -1
  682. package/dist/src/metadata/modules/showheroes-bsBidAdapter.js +1 -1
  683. package/dist/src/metadata/modules/silvermobBidAdapter.js +1 -1
  684. package/dist/src/metadata/modules/sirdataRtdProvider.js +1 -1
  685. package/dist/src/metadata/modules/slimcutBidAdapter.js +1 -1
  686. package/dist/src/metadata/modules/smaatoBidAdapter.js +1 -1
  687. package/dist/src/metadata/modules/smartadserverBidAdapter.js +1 -1
  688. package/dist/src/metadata/modules/smartxBidAdapter.js +1 -1
  689. package/dist/src/metadata/modules/smartyadsBidAdapter.js +1 -1
  690. package/dist/src/metadata/modules/smilewantedBidAdapter.js +1 -1
  691. package/dist/src/metadata/modules/snigelBidAdapter.js +1 -1
  692. package/dist/src/metadata/modules/sonaradsBidAdapter.js +1 -1
  693. package/dist/src/metadata/modules/sonobiBidAdapter.js +1 -1
  694. package/dist/src/metadata/modules/sovrnBidAdapter.js +1 -1
  695. package/dist/src/metadata/modules/sparteoBidAdapter.js +1 -1
  696. package/dist/src/metadata/modules/ssmasBidAdapter.js +1 -1
  697. package/dist/src/metadata/modules/sspBCBidAdapter.js +1 -1
  698. package/dist/src/metadata/modules/stackadaptBidAdapter.js +1 -1
  699. package/dist/src/metadata/modules/startioBidAdapter.js +1 -1
  700. package/dist/src/metadata/modules/stroeerCoreBidAdapter.js +1 -1
  701. package/dist/src/metadata/modules/stvBidAdapter.js +1 -1
  702. package/dist/src/metadata/modules/sublimeBidAdapter.js +1 -1
  703. package/dist/src/metadata/modules/taboolaBidAdapter.js +1 -1
  704. package/dist/src/metadata/modules/taboolaIdSystem.js +1 -1
  705. package/dist/src/metadata/modules/tappxBidAdapter.js +1 -1
  706. package/dist/src/metadata/modules/targetVideoBidAdapter.js +1 -1
  707. package/dist/src/metadata/modules/teadsBidAdapter.js +1 -1
  708. package/dist/src/metadata/modules/teadsIdSystem.js +1 -1
  709. package/dist/src/metadata/modules/tealBidAdapter.js +1 -1
  710. package/dist/src/metadata/modules/themoneytizerBidAdapter.js +1 -1
  711. package/dist/src/metadata/modules/tncIdSystem.js +1 -1
  712. package/dist/src/metadata/modules/topicsFpdModule.js +1 -1
  713. package/dist/src/metadata/modules/tripleliftBidAdapter.js +1 -1
  714. package/dist/src/metadata/modules/ttdBidAdapter.js +1 -1
  715. package/dist/src/metadata/modules/twistDigitalBidAdapter.js +1 -1
  716. package/dist/src/metadata/modules/underdogmediaBidAdapter.js +1 -1
  717. package/dist/src/metadata/modules/undertoneBidAdapter.js +1 -1
  718. package/dist/src/metadata/modules/unifiedIdSystem.js +1 -1
  719. package/dist/src/metadata/modules/unrulyBidAdapter.js +1 -1
  720. package/dist/src/metadata/modules/userId.js +1 -1
  721. package/dist/src/metadata/modules/validationFpdModule.js +1 -1
  722. package/dist/src/metadata/modules/vidazooBidAdapter.js +1 -1
  723. package/dist/src/metadata/modules/vidoomyBidAdapter.js +1 -1
  724. package/dist/src/metadata/modules/viewdeosDXBidAdapter.js +1 -1
  725. package/dist/src/metadata/modules/viouslyBidAdapter.js +1 -1
  726. package/dist/src/metadata/modules/visxBidAdapter.js +1 -1
  727. package/dist/src/metadata/modules/vlybyBidAdapter.js +1 -1
  728. package/dist/src/metadata/modules/voxBidAdapter.js +1 -1
  729. package/dist/src/metadata/modules/vrtcalBidAdapter.js +1 -1
  730. package/dist/src/metadata/modules/vuukleBidAdapter.js +1 -1
  731. package/dist/src/metadata/modules/weboramaRtdProvider.js +1 -1
  732. package/dist/src/metadata/modules/welectBidAdapter.js +1 -1
  733. package/dist/src/metadata/modules/yahooAdsBidAdapter.js +1 -1
  734. package/dist/src/metadata/modules/yieldlabBidAdapter.js +1 -1
  735. package/dist/src/metadata/modules/yieldliftBidAdapter.js +1 -1
  736. package/dist/src/metadata/modules/yieldloveBidAdapter.js +1 -1
  737. package/dist/src/metadata/modules/yieldmoBidAdapter.js +1 -1
  738. package/dist/src/metadata/modules/zeotapIdPlusIdSystem.js +1 -1
  739. package/dist/src/metadata/modules/zeta_globalBidAdapter.js +1 -1
  740. package/dist/src/metadata/modules/zeta_global_sspBidAdapter.js +1 -1
  741. package/dist/src/modules/1plusXRtdProvider.js +6 -2
  742. package/dist/src/modules/1plusXRtdProvider.js.map +1 -1
  743. package/dist/src/modules/33acrossAnalyticsAdapter.js +1 -1
  744. package/dist/src/modules/33acrossBidAdapter.js +1 -1
  745. package/dist/src/modules/33acrossIdSystem.js +1 -1
  746. package/dist/src/modules/adWMGBidAdapter.js.map +1 -1
  747. package/dist/src/modules/adagioAnalyticsAdapter.js +1 -1
  748. package/dist/src/modules/adagioBidAdapter.js +1 -1
  749. package/dist/src/modules/addefendBidAdapter.js +1 -1
  750. package/dist/src/modules/adgenerationBidAdapter.js +1 -1
  751. package/dist/src/modules/adlooxRtdProvider.js +1 -1
  752. package/dist/src/modules/admixerBidAdapter.js +5 -4
  753. package/dist/src/modules/admixerBidAdapter.js.map +1 -1
  754. package/dist/src/modules/adqueryBidAdapter.js +1 -1
  755. package/dist/src/modules/adrelevantisBidAdapter.js +1 -1
  756. package/dist/src/modules/adspiritBidAdapter.js.map +1 -1
  757. package/dist/src/modules/adstirBidAdapter.js +1 -1
  758. package/dist/src/modules/adtrgtmeBidAdapter.js +1 -1
  759. package/dist/src/modules/adtrgtmeBidAdapter.js.map +1 -1
  760. package/dist/src/modules/advertisingBidAdapter.js +2 -2
  761. package/dist/src/modules/adxcgAnalyticsAdapter.js +1 -1
  762. package/dist/src/modules/adxcgBidAdapter.js +4 -39
  763. package/dist/src/modules/adxcgBidAdapter.js.map +1 -1
  764. package/dist/src/modules/adyoulikeBidAdapter.js +1 -1
  765. package/dist/src/modules/agmaAnalyticsAdapter.js +1 -1
  766. package/dist/src/modules/ajaBidAdapter.js +1 -1
  767. package/dist/src/modules/amxBidAdapter.js +2 -2
  768. package/dist/src/modules/amxBidAdapter.js.map +1 -1
  769. package/dist/src/modules/amxIdSystem.js +1 -1
  770. package/dist/src/modules/aniviewBidAdapter.js +1 -1
  771. package/dist/src/modules/appierAnalyticsAdapter.js +1 -1
  772. package/dist/src/modules/appnexusBidAdapter.js +2 -2
  773. package/dist/src/modules/asoBidAdapter.js +1 -1
  774. package/dist/src/modules/axonixBidAdapter.js +1 -1
  775. package/dist/src/modules/beopBidAdapter.js +2 -2
  776. package/dist/src/modules/bidglassBidAdapter.js +1 -1
  777. package/dist/src/modules/bitmediaBidAdapter.js +1 -1
  778. package/dist/src/modules/blockthroughBidAdapter.js +1 -1
  779. package/dist/src/modules/bmtmBidAdapter.js +1 -1
  780. package/dist/src/modules/bridBidAdapter.js +1 -1
  781. package/dist/src/modules/bridgewellBidAdapter.js +1 -1
  782. package/dist/src/modules/carodaBidAdapter.js +1 -1
  783. package/dist/src/modules/chromeAiRtdProvider.js.map +1 -1
  784. package/dist/src/modules/chtnwBidAdapter.js +1 -1
  785. package/dist/src/modules/concertBidAdapter.js +1 -1
  786. package/dist/src/modules/connectadBidAdapter.js +1 -1
  787. package/dist/src/modules/consentManagementGpp.js.map +1 -1
  788. package/dist/src/modules/consentManagementTcf.js.map +1 -1
  789. package/dist/src/modules/consentManagementUsp.js.map +1 -1
  790. package/dist/src/modules/consumableBidAdapter.js +1 -1
  791. package/dist/src/modules/contxtfulBidAdapter.js +1 -1
  792. package/dist/src/modules/conversantBidAdapter.js +1 -1
  793. package/dist/src/modules/craftBidAdapter.js +1 -1
  794. package/dist/src/modules/criteoBidAdapter.js +2 -2
  795. package/dist/src/modules/currency.js.map +1 -1
  796. package/dist/src/modules/cwireBidAdapter.js +1 -1
  797. package/dist/src/modules/cwireBidAdapter.js.map +1 -1
  798. package/dist/src/modules/dailymotionBidAdapter.js +1 -1
  799. package/dist/src/modules/dailymotionBidAdapter.js.map +1 -1
  800. package/dist/src/modules/dchain.js.map +1 -1
  801. package/dist/src/modules/dspxBidAdapter.js +1 -1
  802. package/dist/src/modules/dspxBidAdapter.js.map +1 -1
  803. package/dist/src/modules/dxkultureBidAdapter.js +1 -1
  804. package/dist/src/modules/eightPodBidAdapter.js.map +1 -1
  805. package/dist/src/modules/eplanningBidAdapter.js +1 -1
  806. package/dist/src/modules/equativBidAdapter.js +1 -1
  807. package/dist/src/modules/eskimiBidAdapter.js +1 -1
  808. package/dist/src/modules/euidIdSystem.js +1 -1
  809. package/dist/src/modules/exadsBidAdapter.js +1 -1
  810. package/dist/src/modules/excoBidAdapter.js +3 -3
  811. package/dist/src/modules/feedadBidAdapter.js +2 -2
  812. package/dist/src/modules/finativeBidAdapter.js +1 -1
  813. package/dist/src/modules/genericAnalyticsAdapter.js.map +1 -1
  814. package/dist/src/modules/geolocationRtdProvider.js.map +1 -1
  815. package/dist/src/modules/getintentBidAdapter.js +4 -2
  816. package/dist/src/modules/getintentBidAdapter.js.map +1 -1
  817. package/dist/src/modules/gmosspBidAdapter.js +1 -1
  818. package/dist/src/modules/gmosspBidAdapter.js.map +1 -1
  819. package/dist/src/modules/gppControl_usstates.js.map +1 -1
  820. package/dist/src/modules/gptPreAuction.d.ts +3 -3
  821. package/dist/src/modules/gptPreAuction.js.map +1 -1
  822. package/dist/src/modules/greenbidsAnalyticsAdapter.js +1 -1
  823. package/dist/src/modules/greenbidsBidAdapter.js +1 -1
  824. package/dist/src/modules/greenbidsRtdProvider.js +1 -1
  825. package/dist/src/modules/gridBidAdapter.js +2 -2
  826. package/dist/src/modules/gumgumBidAdapter.js +2 -2
  827. package/dist/src/modules/h12mediaBidAdapter.js +1 -1
  828. package/dist/src/modules/hypelabBidAdapter.js +1 -1
  829. package/dist/src/modules/iasRtdProvider.js +110 -5
  830. package/dist/src/modules/iasRtdProvider.js.map +1 -1
  831. package/dist/src/modules/id5AnalyticsAdapter.js +1 -1
  832. package/dist/src/modules/id5IdSystem.js +1 -1
  833. package/dist/src/modules/improvedigitalBidAdapter.js +1 -1
  834. package/dist/src/modules/inmobiBidAdapter.js +1 -1
  835. package/dist/src/modules/insticatorBidAdapter.js +1 -1
  836. package/dist/src/modules/intentIqAnalyticsAdapter.js +1 -1
  837. package/dist/src/modules/intentIqAnalyticsAdapter.js.map +1 -1
  838. package/dist/src/modules/intentIqIdSystem.js.map +1 -1
  839. package/dist/src/modules/ixBidAdapter.js +1 -1
  840. package/dist/src/modules/jixieBidAdapter.js +1 -1
  841. package/dist/src/modules/justpremiumBidAdapter.js +1 -1
  842. package/dist/src/modules/jwplayerRtdProvider.js +6 -2
  843. package/dist/src/modules/jwplayerRtdProvider.js.map +1 -1
  844. package/dist/src/modules/jwplayerVideoProvider.js +12 -9
  845. package/dist/src/modules/jwplayerVideoProvider.js.map +1 -1
  846. package/dist/src/modules/kargoBidAdapter.js +1 -1
  847. package/dist/src/modules/kimberliteBidAdapter.js +1 -1
  848. package/dist/src/modules/kubientBidAdapter.js +0 -1
  849. package/dist/src/modules/kubientBidAdapter.js.map +1 -1
  850. package/dist/src/modules/lassoBidAdapter.js +1 -1
  851. package/dist/src/modules/lifestreetBidAdapter.js +1 -1
  852. package/dist/src/modules/logicadBidAdapter.js +1 -1
  853. package/dist/src/modules/luceadBidAdapter.js +1 -1
  854. package/dist/src/modules/mabidderBidAdapter.js +1 -1
  855. package/dist/src/modules/madsenseBidAdapter.js +1 -1
  856. package/dist/src/modules/magniteAnalyticsAdapter.js +1 -1
  857. package/dist/src/modules/malltvAnalyticsAdapter.js +1 -1
  858. package/dist/src/modules/marsmediaBidAdapter.js +1 -1
  859. package/dist/src/modules/mediafuseBidAdapter.js +2 -2
  860. package/dist/src/modules/medianetAnalyticsAdapter.js.map +1 -1
  861. package/dist/src/modules/medianetBidAdapter.js +6 -2
  862. package/dist/src/modules/medianetBidAdapter.js.map +1 -1
  863. package/dist/src/modules/mediasquareBidAdapter.js +2 -2
  864. package/dist/src/modules/mgidBidAdapter.js +1 -1
  865. package/dist/src/modules/michaoBidAdapter.js.map +1 -1
  866. package/dist/src/modules/missenaBidAdapter.js +1 -1
  867. package/dist/src/modules/mobilefuseBidAdapter.js +1 -1
  868. package/dist/src/modules/multibid/index.js.map +1 -1
  869. package/dist/src/modules/nextMillenniumBidAdapter.js +1 -1
  870. package/dist/src/modules/nexverseBidAdapter.js.map +1 -1
  871. package/dist/src/modules/nobidAnalyticsAdapter.js +1 -1
  872. package/dist/src/modules/nobidBidAdapter.js +1 -1
  873. package/dist/src/modules/nodalsAiRtdProvider.js +4 -2
  874. package/dist/src/modules/nodalsAiRtdProvider.js.map +1 -1
  875. package/dist/src/modules/oguryBidAdapter.js +1 -1
  876. package/dist/src/modules/onetagBidAdapter.js +1 -1
  877. package/dist/src/modules/onetagBidAdapter.js.map +1 -1
  878. package/dist/src/modules/ooloAnalyticsAdapter.js +1 -1
  879. package/dist/src/modules/openxBidAdapter.js +7 -2
  880. package/dist/src/modules/openxBidAdapter.js.map +1 -1
  881. package/dist/src/modules/optidigitalBidAdapter.js +1 -1
  882. package/dist/src/modules/orbidderBidAdapter.js +1 -1
  883. package/dist/src/modules/outbrainBidAdapter.js +1 -1
  884. package/dist/src/modules/pixfutureBidAdapter.js +2 -2
  885. package/dist/src/modules/prebidServerBidAdapter/index.js.map +1 -1
  886. package/dist/src/modules/priceFloors.d.ts +2 -2
  887. package/dist/src/modules/priceFloors.js.map +1 -1
  888. package/dist/src/modules/publinkIdSystem.js +1 -1
  889. package/dist/src/modules/pubmaticAnalyticsAdapter.js +2 -2
  890. package/dist/src/modules/pubmaticBidAdapter.js +23 -3
  891. package/dist/src/modules/pubmaticBidAdapter.js.map +1 -1
  892. package/dist/src/modules/pubmaticRtdProvider.js.map +1 -1
  893. package/dist/src/modules/pubwiseAnalyticsAdapter.js +1 -1
  894. package/dist/src/modules/pubxaiAnalyticsAdapter.js +1 -1
  895. package/dist/src/modules/pulsepointBidAdapter.js +2 -38
  896. package/dist/src/modules/pulsepointBidAdapter.js.map +1 -1
  897. package/dist/src/modules/pxyzBidAdapter.js +1 -1
  898. package/dist/src/modules/quantcastBidAdapter.js +1 -1
  899. package/dist/src/modules/readpeakBidAdapter.js +1 -1
  900. package/dist/src/modules/readpeakBidAdapter.js.map +1 -1
  901. package/dist/src/modules/relaidoBidAdapter.js +1 -1
  902. package/dist/src/modules/retailspotBidAdapter.js +1 -1
  903. package/dist/src/modules/rhythmoneBidAdapter.js +1 -1
  904. package/dist/src/modules/rtdModule/index.js.map +1 -1
  905. package/dist/src/modules/rtdModule/spec.js.map +1 -1
  906. package/dist/src/modules/rubiconBidAdapter.js +6 -2
  907. package/dist/src/modules/rubiconBidAdapter.js.map +1 -1
  908. package/dist/src/modules/rumbleBidAdapter.js +103 -0
  909. package/dist/src/modules/rumbleBidAdapter.js.map +1 -0
  910. package/dist/src/modules/schain.js.map +1 -1
  911. package/dist/src/modules/seedingAllianceBidAdapter.js +1 -1
  912. package/dist/src/modules/seedtagBidAdapter.js +1 -1
  913. package/dist/src/modules/sevioBidAdapter.js +254 -0
  914. package/dist/src/modules/sevioBidAdapter.js.map +1 -0
  915. package/dist/src/modules/sharedIdSystem.js.map +1 -1
  916. package/dist/src/modules/sharethroughAnalyticsAdapter.js +1 -1
  917. package/dist/src/modules/sharethroughBidAdapter.js +1 -1
  918. package/dist/src/modules/showheroes-bsBidAdapter.js +1 -1
  919. package/dist/src/modules/smaatoBidAdapter.js +1 -1
  920. package/dist/src/modules/smartadserverBidAdapter.js +1 -1
  921. package/dist/src/modules/smartxBidAdapter.js +1 -1
  922. package/dist/src/modules/smilewantedBidAdapter.js +1 -1
  923. package/dist/src/modules/snigelBidAdapter.js +1 -1
  924. package/dist/src/modules/sonaradsBidAdapter.js +2 -2
  925. package/dist/src/modules/sonobiBidAdapter.js +1 -1
  926. package/dist/src/modules/sovrnBidAdapter.js +1 -1
  927. package/dist/src/modules/sparteoBidAdapter.js +1 -1
  928. package/dist/src/modules/sspBCBidAdapter.js +1 -1
  929. package/dist/src/modules/storageControl.js.map +1 -1
  930. package/dist/src/modules/stvBidAdapter.js +1 -1
  931. package/dist/src/modules/sublimeBidAdapter.js +2 -2
  932. package/dist/src/modules/taboolaBidAdapter.js +1 -1
  933. package/dist/src/modules/tappxBidAdapter.js +1 -1
  934. package/dist/src/modules/targetVideoBidAdapter.js +1 -1
  935. package/dist/src/modules/tcfControl.js.map +1 -1
  936. package/dist/src/modules/teadsBidAdapter.js +1 -1
  937. package/dist/src/modules/terceptAnalyticsAdapter.js +1 -1
  938. package/dist/src/modules/themoneytizerBidAdapter.js +1 -3
  939. package/dist/src/modules/themoneytizerBidAdapter.js.map +1 -1
  940. package/dist/src/modules/trionBidAdapter.js +1 -1
  941. package/dist/src/modules/tripleliftBidAdapter.js +1 -1
  942. package/dist/src/modules/ttdBidAdapter.js +9 -2
  943. package/dist/src/modules/ttdBidAdapter.js.map +1 -1
  944. package/dist/src/modules/ucfunnelAnalyticsAdapter.js +1 -1
  945. package/dist/src/modules/uid2IdSystem.js +1 -1
  946. package/dist/src/modules/underdogmediaBidAdapter.js +1 -1
  947. package/dist/src/modules/undertoneBidAdapter.js +1 -1
  948. package/dist/src/modules/unrulyBidAdapter.js +1 -1
  949. package/dist/src/modules/userId/index.js +12 -8
  950. package/dist/src/modules/userId/index.js.map +1 -1
  951. package/dist/src/modules/userId/spec.js.map +1 -1
  952. package/dist/src/modules/validationFpdModule/index.js.map +1 -1
  953. package/dist/src/modules/videoModule/index.js.map +1 -1
  954. package/dist/src/modules/videobyteBidAdapter.js +1 -1
  955. package/dist/src/modules/visxBidAdapter.js +1 -1
  956. package/dist/src/modules/vuukleBidAdapter.js +1 -1
  957. package/dist/src/modules/weboramaRtdProvider.js +30 -11
  958. package/dist/src/modules/weboramaRtdProvider.js.map +1 -1
  959. package/dist/src/modules/welectBidAdapter.js.map +1 -1
  960. package/dist/src/modules/widespaceBidAdapter.js +1 -1
  961. package/dist/src/modules/winrBidAdapter.js +1 -1
  962. package/dist/src/modules/yahooAdsBidAdapter.js +1 -1
  963. package/dist/src/modules/yandexBidAdapter.js +47 -15
  964. package/dist/src/modules/yandexBidAdapter.js.map +1 -1
  965. package/dist/src/modules/yieldmoBidAdapter.js +2 -2
  966. package/dist/src/modules/yieldoneAnalyticsAdapter.js +1 -1
  967. package/dist/src/package.json +2 -3
  968. package/dist/src/public/rumbleBidAdapter.js +1 -0
  969. package/dist/src/public/sevioBidAdapter.js +1 -0
  970. package/dist/src/src/activities/params.d.ts +5 -0
  971. package/dist/src/src/activities/params.js +6 -0
  972. package/dist/src/src/activities/params.js.map +1 -1
  973. package/dist/src/src/activities/redactor.js.map +1 -1
  974. package/dist/src/src/adRendering.js.map +1 -1
  975. package/dist/src/src/adUnits.js.map +1 -1
  976. package/dist/src/src/adapterManager.js.map +1 -1
  977. package/dist/src/src/adapters/bidderFactory.js.map +1 -1
  978. package/dist/src/src/ajax.js.map +1 -1
  979. package/dist/src/src/auction.js.map +1 -1
  980. package/dist/src/src/banner.js.map +1 -1
  981. package/dist/src/src/bidTTL.js.map +1 -1
  982. package/dist/src/src/bidderSettings.js.map +1 -1
  983. package/dist/src/src/bidfactory.js.map +1 -1
  984. package/dist/src/src/config.js +3 -3
  985. package/dist/src/src/config.js.map +1 -1
  986. package/dist/src/src/consentHandler.js.map +1 -1
  987. package/dist/src/src/constants.js.map +1 -1
  988. package/dist/src/src/cpmBucketManager.js.map +1 -1
  989. package/dist/src/src/debugging.js +1 -1
  990. package/dist/src/src/events.js.map +1 -1
  991. package/dist/src/src/fpd/enrichment.js.map +1 -1
  992. package/dist/src/src/hook.js.map +1 -1
  993. package/dist/src/src/mediaTypes.js.map +1 -1
  994. package/dist/src/src/native.js.map +1 -1
  995. package/dist/src/src/prebid.js +2 -2
  996. package/dist/src/src/prebid.js.map +1 -1
  997. package/dist/src/src/prebidGlobal.js.map +1 -1
  998. package/dist/src/src/refererDetection.js.map +1 -1
  999. package/dist/src/src/storageManager.js +26 -25
  1000. package/dist/src/src/storageManager.js.map +1 -1
  1001. package/dist/src/src/targeting.d.ts +7 -7
  1002. package/dist/src/src/targeting.js.map +1 -1
  1003. package/dist/src/src/types/common.d.js.map +1 -1
  1004. package/dist/src/src/types/common.d.ts +29 -29
  1005. package/dist/src/src/types/local/buildOptions.d.js.map +1 -1
  1006. package/dist/src/src/types/local/shim.d.js.map +1 -1
  1007. package/dist/src/src/types/objects.d.js.map +1 -1
  1008. package/dist/src/src/types/objects.d.ts +15 -15
  1009. package/dist/src/src/types/ortb/common.d.js.map +1 -1
  1010. package/dist/src/src/types/ortb/common.d.ts +1 -1
  1011. package/dist/src/src/types/ortb/ext/dchain.d.js.map +1 -1
  1012. package/dist/src/src/types/ortb/ext/dchain.d.ts +69 -69
  1013. package/dist/src/src/types/ortb/ext/dsa.d.js.map +1 -1
  1014. package/dist/src/src/types/ortb/ext/dsa.d.ts +50 -50
  1015. package/dist/src/src/types/ortb/request.d.js.map +1 -1
  1016. package/dist/src/src/types/ortb/request.d.ts +21 -21
  1017. package/dist/src/src/types/ortb/response.d.js.map +1 -1
  1018. package/dist/src/src/types/ortb/response.d.ts +6 -6
  1019. package/dist/src/src/types/summary/core.d.ts +5 -5
  1020. package/dist/src/src/userSync.js.map +1 -1
  1021. package/dist/src/src/utils/objects.js.map +1 -1
  1022. package/dist/src/src/utils/perfMetrics.js.map +1 -1
  1023. package/dist/src/src/utils/promise.js.map +1 -1
  1024. package/dist/src/src/utils/ttlCollection.js.map +1 -1
  1025. package/dist/src/src/video.js.map +1 -1
  1026. package/dist/src/src/videoCache.js.map +1 -1
  1027. package/dist/src/test/helpers/index_adapter_utils.js +1 -1
  1028. package/dist/src/test/helpers/index_adapter_utils.js.map +1 -1
  1029. package/dist/src/test/helpers/refererDetectionHelper.js.map +1 -1
  1030. package/dist/src/test/mocks/timers.js +12 -12
  1031. package/dist/src/test/mocks/timers.js.map +1 -1
  1032. package/dist/src/test/spec/adloader_spec.js.map +1 -1
  1033. package/dist/src/test/spec/config_spec.js +9 -3
  1034. package/dist/src/test/spec/config_spec.js.map +1 -1
  1035. package/dist/src/test/spec/libraries/greedy/greedyPromise_spec.js +2 -2
  1036. package/dist/src/test/spec/libraries/greedy/greedyPromise_spec.js.map +1 -1
  1037. package/dist/src/test/spec/modules/1plusXRtdProvider_spec.js +2 -9
  1038. package/dist/src/test/spec/modules/1plusXRtdProvider_spec.js.map +1 -1
  1039. package/dist/src/test/spec/modules/33acrossAnalyticsAdapter_spec.js +2 -2
  1040. package/dist/src/test/spec/modules/33acrossBidAdapter_spec.js +1 -1
  1041. package/dist/src/test/spec/modules/33acrossIdSystem_spec.js +1 -1
  1042. package/dist/src/test/spec/modules/adagioAnalyticsAdapter_spec.js +4 -4
  1043. package/dist/src/test/spec/modules/adgridBidAdapter_spec.js.map +1 -1
  1044. package/dist/src/test/spec/modules/adkernelAdnBidAdapter_spec.js.map +1 -1
  1045. package/dist/src/test/spec/modules/adkernelBidAdapter_spec.js.map +1 -1
  1046. package/dist/src/test/spec/modules/admediaBidAdapter_spec.js.map +1 -1
  1047. package/dist/src/test/spec/modules/adnuntiusBidAdapter_spec.js.map +1 -1
  1048. package/dist/src/test/spec/modules/adqueryBidAdapter_spec.js +1 -1
  1049. package/dist/src/test/spec/modules/adrelevantisBidAdapter_spec.js +1 -1
  1050. package/dist/src/test/spec/modules/adspiritBidAdapter_spec.js.map +1 -1
  1051. package/dist/src/test/spec/modules/adtrgtmeBidAdapter_spec.js +1 -1
  1052. package/dist/src/test/spec/modules/adtrgtmeBidAdapter_spec.js.map +1 -1
  1053. package/dist/src/test/spec/modules/adtrueBidAdapter_spec.js.map +1 -1
  1054. package/dist/src/test/spec/modules/advertisingBidAdapter_spec.js +9 -9
  1055. package/dist/src/test/spec/modules/advertisingBidAdapter_spec.js.map +1 -1
  1056. package/dist/src/test/spec/modules/adyoulikeBidAdapter_spec.js +3 -3
  1057. package/dist/src/test/spec/modules/ajaBidAdapter_spec.js +2 -2
  1058. package/dist/src/test/spec/modules/amxBidAdapter_spec.js +2 -2
  1059. package/dist/src/test/spec/modules/appierAnalyticsAdapter_spec.js +1 -1
  1060. package/dist/src/test/spec/modules/appnexusBidAdapter_spec.js +2 -2
  1061. package/dist/src/test/spec/modules/asoBidAdapter_spec.js +1 -1
  1062. package/dist/src/test/spec/modules/bidmaticBidAdapter_spec.js.map +1 -1
  1063. package/dist/src/test/spec/modules/blockthroughBidAdapter_spec.js +1 -1
  1064. package/dist/src/test/spec/modules/bridBidAdapter_spec.js +1 -1
  1065. package/dist/src/test/spec/modules/criteoBidAdapter_spec.js +1 -1
  1066. package/dist/src/test/spec/modules/dailymotionBidAdapter_spec.js +4 -4
  1067. package/dist/src/test/spec/modules/datablocksBidAdapter_spec.js.map +1 -1
  1068. package/dist/src/test/spec/modules/deepintentBidAdapter_spec.js.map +1 -1
  1069. package/dist/src/test/spec/modules/dexertoBidAdapter_spec.js.map +1 -1
  1070. package/dist/src/test/spec/modules/dochaseBidAdapter_spec.js.map +1 -1
  1071. package/dist/src/test/spec/modules/dspxBidAdapter_spec.js.map +1 -1
  1072. package/dist/src/test/spec/modules/dxkultureBidAdapter_spec.js +1 -1
  1073. package/dist/src/test/spec/modules/ehealthcaresolutionsBidAdapter_spec.js.map +1 -1
  1074. package/dist/src/test/spec/modules/enrichmentLiftMeasurement_spec.js.map +1 -1
  1075. package/dist/src/test/spec/modules/eplanningBidAdapter_spec.js +1 -1
  1076. package/dist/src/test/spec/modules/equativBidAdapter_spec.js +1 -1
  1077. package/dist/src/test/spec/modules/equativBidAdapter_spec.js.map +1 -1
  1078. package/dist/src/test/spec/modules/excoBidAdapter_spec.js +1 -1
  1079. package/dist/src/test/spec/modules/feedadBidAdapter_spec.js +2 -2
  1080. package/dist/src/test/spec/modules/finativeBidAdapter_spec.js.map +1 -1
  1081. package/dist/src/test/spec/modules/ftrackIdSystem_spec.js.map +1 -1
  1082. package/dist/src/test/spec/modules/fwsspBidAdapter_spec.js.map +1 -1
  1083. package/dist/src/test/spec/modules/gmosspBidAdapter_spec.js +2 -2
  1084. package/dist/src/test/spec/modules/greenbidsAnalyticsAdapter_spec.js +1 -1
  1085. package/dist/src/test/spec/modules/gridBidAdapter_spec.js +6 -6
  1086. package/dist/src/test/spec/modules/gumgumBidAdapter_spec.js +1 -1
  1087. package/dist/src/test/spec/modules/hypelabBidAdapter_spec.js.map +1 -1
  1088. package/dist/src/test/spec/modules/iasRtdProvider_spec.js +104 -1
  1089. package/dist/src/test/spec/modules/iasRtdProvider_spec.js.map +1 -1
  1090. package/dist/src/test/spec/modules/id5IdSystem_spec.js +4 -4
  1091. package/dist/src/test/spec/modules/insticatorBidAdapter_spec.js +1 -1
  1092. package/dist/src/test/spec/modules/intentIqIdSystem_spec.js.map +1 -1
  1093. package/dist/src/test/spec/modules/invibesBidAdapter_spec.js.map +1 -1
  1094. package/dist/src/test/spec/modules/ixBidAdapter_spec.js +2 -2
  1095. package/dist/src/test/spec/modules/justpremiumBidAdapter_spec.js +1 -1
  1096. package/dist/src/test/spec/modules/kargoBidAdapter_spec.js +1 -1
  1097. package/dist/src/test/spec/modules/kargoBidAdapter_spec.js.map +1 -1
  1098. package/dist/src/test/spec/modules/lane4BidAdapter_spec.js.map +1 -1
  1099. package/dist/src/test/spec/modules/lemmaDigitalBidAdapter_spec.js.map +1 -1
  1100. package/dist/src/test/spec/modules/liveIntentExternalIdSystem_spec.js +29 -10
  1101. package/dist/src/test/spec/modules/liveIntentExternalIdSystem_spec.js.map +1 -1
  1102. package/dist/src/test/spec/modules/liveIntentIdMinimalSystem_spec.js +19 -0
  1103. package/dist/src/test/spec/modules/liveIntentIdMinimalSystem_spec.js.map +1 -1
  1104. package/dist/src/test/spec/modules/liveIntentIdSystem_spec.js +58 -1
  1105. package/dist/src/test/spec/modules/liveIntentIdSystem_spec.js.map +1 -1
  1106. package/dist/src/test/spec/modules/liveIntentRtdProvider_spec.js.map +1 -1
  1107. package/dist/src/test/spec/modules/magniteAnalyticsAdapter_spec.js +1 -1
  1108. package/dist/src/test/spec/modules/malltvAnalyticsAdapter_spec.js +1 -1
  1109. package/dist/src/test/spec/modules/mediaeyesBidAdapter_spec.js.map +1 -1
  1110. package/dist/src/test/spec/modules/mediafuseBidAdapter_spec.js +2 -2
  1111. package/dist/src/test/spec/modules/mediagoBidAdapter_spec.js.map +1 -1
  1112. package/dist/src/test/spec/modules/medianetBidAdapter_spec.js +43 -26
  1113. package/dist/src/test/spec/modules/medianetBidAdapter_spec.js.map +1 -1
  1114. package/dist/src/test/spec/modules/mediasquareBidAdapter_spec.js.map +1 -1
  1115. package/dist/src/test/spec/modules/missenaBidAdapter_spec.js +1 -1
  1116. package/dist/src/test/spec/modules/nexx360BidAdapter_spec.js.map +1 -1
  1117. package/dist/src/test/spec/modules/nobidAnalyticsAdapter_spec.js +1 -1
  1118. package/dist/src/test/spec/modules/nobidBidAdapter_spec.js +1 -1
  1119. package/dist/src/test/spec/modules/nobidBidAdapter_spec.js.map +1 -1
  1120. package/dist/src/test/spec/modules/oguryBidAdapter_spec.js +1 -1
  1121. package/dist/src/test/spec/modules/onetagBidAdapter_spec.js.map +1 -1
  1122. package/dist/src/test/spec/modules/openxBidAdapter_spec.js +113 -0
  1123. package/dist/src/test/spec/modules/openxBidAdapter_spec.js.map +1 -1
  1124. package/dist/src/test/spec/modules/optoutBidAdapter_spec.js.map +1 -1
  1125. package/dist/src/test/spec/modules/orbitsoftBidAdapter_spec.js.map +1 -1
  1126. package/dist/src/test/spec/modules/outbrainBidAdapter_spec.js +3 -3
  1127. package/dist/src/test/spec/modules/oxxionAnalyticsAdapter_spec.js.map +1 -1
  1128. package/dist/src/test/spec/modules/ozoneBidAdapter_spec.js.map +1 -1
  1129. package/dist/src/test/spec/modules/prebidServerBidAdapter_spec.js +4 -4
  1130. package/dist/src/test/spec/modules/prebidServerBidAdapter_spec.js.map +1 -1
  1131. package/dist/src/test/spec/modules/prismaBidAdapter_spec.js.map +1 -1
  1132. package/dist/src/test/spec/modules/publinkIdSystem_spec.js +5 -5
  1133. package/dist/src/test/spec/modules/pubmaticAnalyticsAdapter_spec.js +6 -6
  1134. package/dist/src/test/spec/modules/pubmaticBidAdapter_spec.js +58 -0
  1135. package/dist/src/test/spec/modules/pubmaticBidAdapter_spec.js.map +1 -1
  1136. package/dist/src/test/spec/modules/pubmaticRtdProvider_spec.js.map +1 -1
  1137. package/dist/src/test/spec/modules/pubwiseAnalyticsAdapter_spec.js +1 -1
  1138. package/dist/src/test/spec/modules/pubxaiAnalyticsAdapter_spec.js +6 -6
  1139. package/dist/src/test/spec/modules/pwbidBidAdapter_spec.js.map +1 -1
  1140. package/dist/src/test/spec/modules/quantcastBidAdapter_spec.js +6 -6
  1141. package/dist/src/test/spec/modules/readpeakBidAdapter_spec.js +4 -4
  1142. package/dist/src/test/spec/modules/relaidoBidAdapter_spec.js +1 -1
  1143. package/dist/src/test/spec/modules/relevadRtdProvider_spec.js.map +1 -1
  1144. package/dist/src/test/spec/modules/relevatehealthBidAdapter_spec.js.map +1 -1
  1145. package/dist/src/test/spec/modules/richaudienceBidAdapter_spec.js.map +1 -1
  1146. package/dist/src/test/spec/modules/rubiconBidAdapter_spec.js +2 -2
  1147. package/dist/src/test/spec/modules/rubiconBidAdapter_spec.js.map +1 -1
  1148. package/dist/src/test/spec/modules/rumbleBidAdapter_spec.js +110 -0
  1149. package/dist/src/test/spec/modules/rumbleBidAdapter_spec.js.map +1 -0
  1150. package/dist/src/test/spec/modules/sevioBidAdapter_spec.js +182 -0
  1151. package/dist/src/test/spec/modules/sevioBidAdapter_spec.js.map +1 -0
  1152. package/dist/src/test/spec/modules/smaatoBidAdapter_spec.js.map +1 -1
  1153. package/dist/src/test/spec/modules/smarticoBidAdapter_spec.js.map +1 -1
  1154. package/dist/src/test/spec/modules/smartxBidAdapter_spec.js +1 -1
  1155. package/dist/src/test/spec/modules/sonaradsBidAdapter_spec.js +5 -5
  1156. package/dist/src/test/spec/modules/sovrnBidAdapter_spec.js +1 -1
  1157. package/dist/src/test/spec/modules/sparteoBidAdapter_spec.js +3 -3
  1158. package/dist/src/test/spec/modules/sspBCBidAdapter_spec.js +1 -1
  1159. package/dist/src/test/spec/modules/stvBidAdapter_spec.js.map +1 -1
  1160. package/dist/src/test/spec/modules/taboolaBidAdapter_spec.js +1 -1
  1161. package/dist/src/test/spec/modules/tapnativeBidAdapter_spec.js.map +1 -1
  1162. package/dist/src/test/spec/modules/targetVideoBidAdapter_spec.js +2 -2
  1163. package/dist/src/test/spec/modules/themoneytizerBidAdapter_spec.js +0 -5
  1164. package/dist/src/test/spec/modules/themoneytizerBidAdapter_spec.js.map +1 -1
  1165. package/dist/src/test/spec/modules/trionBidAdapter_spec.js +1 -1
  1166. package/dist/src/test/spec/modules/ttdBidAdapter_spec.js +24 -3
  1167. package/dist/src/test/spec/modules/ttdBidAdapter_spec.js.map +1 -1
  1168. package/dist/src/test/spec/modules/ucfunnelAnalyticsAdapter_spec.js +1 -1
  1169. package/dist/src/test/spec/modules/uid2IdSystem_spec.js.map +1 -1
  1170. package/dist/src/test/spec/modules/unrulyBidAdapter_spec.js +3 -3
  1171. package/dist/src/test/spec/modules/userId_spec.js +41 -6
  1172. package/dist/src/test/spec/modules/userId_spec.js.map +1 -1
  1173. package/dist/src/test/spec/modules/videoModule/submodules/jwplayerVideoProvider_spec.js +1738 -9
  1174. package/dist/src/test/spec/modules/videoModule/submodules/jwplayerVideoProvider_spec.js.map +1 -1
  1175. package/dist/src/test/spec/modules/videobyteBidAdapter_spec.js +1 -1
  1176. package/dist/src/test/spec/modules/visxBidAdapter_spec.js +12 -12
  1177. package/dist/src/test/spec/modules/winrBidAdapter_spec.js +1 -1
  1178. package/dist/src/test/spec/modules/yahooAdsBidAdapter_spec.js +1 -1
  1179. package/dist/src/test/spec/modules/yandexBidAdapter_spec.js +107 -2
  1180. package/dist/src/test/spec/modules/yandexBidAdapter_spec.js.map +1 -1
  1181. package/dist/src/test/spec/modules/yieldoneAnalyticsAdapter_spec.js +2 -2
  1182. package/dist/src/test/spec/refererDetection_spec.js.map +1 -1
  1183. package/dist/src/test/spec/unit/core/storageManager_spec.js +18 -1
  1184. package/dist/src/test/spec/unit/core/storageManager_spec.js.map +1 -1
  1185. package/dist/src/test/spec/unit/core/targeting_spec.js.map +1 -1
  1186. package/dist/src/test/spec/utils_spec.js.map +1 -1
  1187. package/eslint.config.js +2 -6
  1188. package/gulpfile.js +0 -7
  1189. package/libraries/analyticsAdapter/AnalyticsAdapter.ts +28 -28
  1190. package/libraries/appnexusUtils/anKeywords.js +11 -0
  1191. package/libraries/consentManagement/cmUtils.ts +18 -18
  1192. package/libraries/creative-renderer-display/renderer.js +1 -1
  1193. package/libraries/cryptoUtils/wallets.js +38 -0
  1194. package/libraries/dspxUtils/bidderUtils.js +1 -1
  1195. package/libraries/impUtils.js +33 -0
  1196. package/libraries/liveIntentId/shared.js +16 -0
  1197. package/libraries/nexx360Utils/index.js +8 -8
  1198. package/libraries/ortbConverter/converter.ts +79 -79
  1199. package/libraries/video/constants/events.ts +5 -5
  1200. package/metadata/modules/33acrossBidAdapter.json +1 -1
  1201. package/metadata/modules/33acrossIdSystem.json +1 -1
  1202. package/metadata/modules/acuityadsBidAdapter.json +1 -1
  1203. package/metadata/modules/adagioBidAdapter.json +1 -1
  1204. package/metadata/modules/adagioRtdProvider.json +1 -1
  1205. package/metadata/modules/addefendBidAdapter.json +1 -1
  1206. package/metadata/modules/adfBidAdapter.json +1 -1
  1207. package/metadata/modules/adfusionBidAdapter.json +1 -1
  1208. package/metadata/modules/adheseBidAdapter.json +1 -1
  1209. package/metadata/modules/adkernelAdnBidAdapter.json +1 -1
  1210. package/metadata/modules/adkernelBidAdapter.json +4 -4
  1211. package/metadata/modules/admaticBidAdapter.json +2 -2
  1212. package/metadata/modules/admixerBidAdapter.json +8 -1
  1213. package/metadata/modules/admixerIdSystem.json +1 -1
  1214. package/metadata/modules/adnowBidAdapter.json +1 -1
  1215. package/metadata/modules/adnuntiusBidAdapter.json +1 -1
  1216. package/metadata/modules/adnuntiusRtdProvider.json +1 -1
  1217. package/metadata/modules/adotBidAdapter.json +1 -1
  1218. package/metadata/modules/adponeBidAdapter.json +1 -1
  1219. package/metadata/modules/adqueryBidAdapter.json +1 -1
  1220. package/metadata/modules/adqueryIdSystem.json +1 -1
  1221. package/metadata/modules/adrinoBidAdapter.json +1 -1
  1222. package/metadata/modules/ads_interactiveBidAdapter.json +1 -1
  1223. package/metadata/modules/adtargetBidAdapter.json +1 -1
  1224. package/metadata/modules/adtelligentBidAdapter.json +3 -3
  1225. package/metadata/modules/adtelligentIdSystem.json +1 -1
  1226. package/metadata/modules/aduptechBidAdapter.json +1 -1
  1227. package/metadata/modules/adyoulikeBidAdapter.json +1 -1
  1228. package/metadata/modules/aidemBidAdapter.json +1 -1
  1229. package/metadata/modules/airgridRtdProvider.json +1 -1
  1230. package/metadata/modules/alkimiBidAdapter.json +1 -1
  1231. package/metadata/modules/ampliffyBidAdapter.json +1 -1
  1232. package/metadata/modules/amxBidAdapter.json +1 -1
  1233. package/metadata/modules/amxIdSystem.json +1 -1
  1234. package/metadata/modules/aniviewBidAdapter.json +1 -1
  1235. package/metadata/modules/anonymisedRtdProvider.json +1 -1
  1236. package/metadata/modules/appierBidAdapter.json +15 -29
  1237. package/metadata/modules/appnexusBidAdapter.json +5 -5
  1238. package/metadata/modules/appushBidAdapter.json +1 -1
  1239. package/metadata/modules/apstreamBidAdapter.json +1 -1
  1240. package/metadata/modules/audiencerunBidAdapter.json +1 -1
  1241. package/metadata/modules/axisBidAdapter.json +1 -1
  1242. package/metadata/modules/azerionedgeRtdProvider.json +1 -1
  1243. package/metadata/modules/beopBidAdapter.json +1 -1
  1244. package/metadata/modules/betweenBidAdapter.json +1 -1
  1245. package/metadata/modules/bidmaticBidAdapter.json +1 -1
  1246. package/metadata/modules/bidtheatreBidAdapter.json +1 -1
  1247. package/metadata/modules/bliinkBidAdapter.json +1 -1
  1248. package/metadata/modules/blockthroughBidAdapter.json +1 -1
  1249. package/metadata/modules/blueBidAdapter.json +1 -1
  1250. package/metadata/modules/bmsBidAdapter.json +1 -1
  1251. package/metadata/modules/boldwinBidAdapter.json +1 -1
  1252. package/metadata/modules/bridBidAdapter.json +1 -1
  1253. package/metadata/modules/browsiBidAdapter.json +1 -1
  1254. package/metadata/modules/bucksenseBidAdapter.json +1 -1
  1255. package/metadata/modules/carodaBidAdapter.json +1 -1
  1256. package/metadata/modules/categoryTranslation.json +1 -1
  1257. package/metadata/modules/ccxBidAdapter.json +1 -1
  1258. package/metadata/modules/ceeIdSystem.json +1 -1
  1259. package/metadata/modules/chromeAiRtdProvider.json +1 -1
  1260. package/metadata/modules/compassBidAdapter.json +1 -1
  1261. package/metadata/modules/conceptxBidAdapter.json +1 -1
  1262. package/metadata/modules/connatixBidAdapter.json +1 -1
  1263. package/metadata/modules/connectIdSystem.json +1 -1
  1264. package/metadata/modules/connectadBidAdapter.json +1 -1
  1265. package/metadata/modules/contentexchangeBidAdapter.json +1 -1
  1266. package/metadata/modules/conversantBidAdapter.json +1 -1
  1267. package/metadata/modules/copper6sspBidAdapter.json +1 -1
  1268. package/metadata/modules/cpmstarBidAdapter.json +1 -1
  1269. package/metadata/modules/criteoBidAdapter.json +1 -1
  1270. package/metadata/modules/criteoIdSystem.json +1 -1
  1271. package/metadata/modules/cwireBidAdapter.json +1 -1
  1272. package/metadata/modules/czechAdIdSystem.json +1 -1
  1273. package/metadata/modules/dailymotionBidAdapter.json +1 -1
  1274. package/metadata/modules/debugging.json +1 -1
  1275. package/metadata/modules/deepintentBidAdapter.json +1 -1
  1276. package/metadata/modules/deltaprojectsBidAdapter.json +1 -1
  1277. package/metadata/modules/dianomiBidAdapter.json +1 -1
  1278. package/metadata/modules/digitalMatterBidAdapter.json +1 -1
  1279. package/metadata/modules/distroscaleBidAdapter.json +1 -1
  1280. package/metadata/modules/docereeAdManagerBidAdapter.json +3 -3
  1281. package/metadata/modules/docereeBidAdapter.json +3 -3
  1282. package/metadata/modules/dspxBidAdapter.json +1 -1
  1283. package/metadata/modules/e_volutionBidAdapter.json +1 -1
  1284. package/metadata/modules/edge226BidAdapter.json +3 -3
  1285. package/metadata/modules/equativBidAdapter.json +1 -1
  1286. package/metadata/modules/eskimiBidAdapter.json +1 -1
  1287. package/metadata/modules/etargetBidAdapter.json +1 -1
  1288. package/metadata/modules/euidIdSystem.json +1 -1
  1289. package/metadata/modules/exadsBidAdapter.json +1 -1
  1290. package/metadata/modules/feedadBidAdapter.json +1 -1
  1291. package/metadata/modules/fwsspBidAdapter.json +1 -1
  1292. package/metadata/modules/gamoshiBidAdapter.json +1 -1
  1293. package/metadata/modules/glomexBidAdapter.json +1 -1
  1294. package/metadata/modules/goldbachBidAdapter.json +1 -1
  1295. package/metadata/modules/greenbidsBidAdapter.json +1 -1
  1296. package/metadata/modules/gridBidAdapter.json +1 -1
  1297. package/metadata/modules/gumgumBidAdapter.json +1 -1
  1298. package/metadata/modules/hadronIdSystem.json +1 -1
  1299. package/metadata/modules/hadronRtdProvider.json +1 -1
  1300. package/metadata/modules/holidBidAdapter.json +1 -1
  1301. package/metadata/modules/hybridBidAdapter.json +1 -1
  1302. package/metadata/modules/id5IdSystem.json +1 -1
  1303. package/metadata/modules/identityLinkIdSystem.json +1 -1
  1304. package/metadata/modules/illuminBidAdapter.json +1 -1
  1305. package/metadata/modules/impactifyBidAdapter.json +1 -1
  1306. package/metadata/modules/improvedigitalBidAdapter.json +1 -1
  1307. package/metadata/modules/inmobiBidAdapter.json +1 -1
  1308. package/metadata/modules/innityBidAdapter.json +1 -1
  1309. package/metadata/modules/insticatorBidAdapter.json +1 -1
  1310. package/metadata/modules/intentIqIdSystem.json +1 -1
  1311. package/metadata/modules/invibesBidAdapter.json +1 -1
  1312. package/metadata/modules/ipromBidAdapter.json +1 -1
  1313. package/metadata/modules/ixBidAdapter.json +1 -1
  1314. package/metadata/modules/justIdSystem.json +1 -1
  1315. package/metadata/modules/justpremiumBidAdapter.json +1 -1
  1316. package/metadata/modules/jwplayerBidAdapter.json +1 -1
  1317. package/metadata/modules/kargoBidAdapter.json +1 -1
  1318. package/metadata/modules/kubientBidAdapter.json +3 -8
  1319. package/metadata/modules/kueezRtbBidAdapter.json +1 -1
  1320. package/metadata/modules/limelightDigitalBidAdapter.json +2 -2
  1321. package/metadata/modules/liveIntentIdSystem.json +1 -1
  1322. package/metadata/modules/liveIntentRtdProvider.json +1 -1
  1323. package/metadata/modules/livewrappedBidAdapter.json +1 -1
  1324. package/metadata/modules/loopmeBidAdapter.json +1 -1
  1325. package/metadata/modules/lotamePanoramaIdSystem.json +1 -1
  1326. package/metadata/modules/luceadBidAdapter.json +1 -1
  1327. package/metadata/modules/luponmediaBidAdapter.json +1 -1
  1328. package/metadata/modules/madvertiseBidAdapter.json +1 -1
  1329. package/metadata/modules/marsmediaBidAdapter.json +1 -1
  1330. package/metadata/modules/mediaConsortiumBidAdapter.json +1 -1
  1331. package/metadata/modules/mediaforceBidAdapter.json +1 -1
  1332. package/metadata/modules/mediafuseBidAdapter.json +1 -1
  1333. package/metadata/modules/mediagoBidAdapter.json +1 -1
  1334. package/metadata/modules/mediakeysBidAdapter.json +1 -1
  1335. package/metadata/modules/medianetBidAdapter.json +2 -2
  1336. package/metadata/modules/mediasquareBidAdapter.json +1 -1
  1337. package/metadata/modules/mgidBidAdapter.json +1 -1
  1338. package/metadata/modules/mgidRtdProvider.json +1 -1
  1339. package/metadata/modules/mgidXBidAdapter.json +1 -1
  1340. package/metadata/modules/minutemediaBidAdapter.json +1 -1
  1341. package/metadata/modules/missenaBidAdapter.json +1 -1
  1342. package/metadata/modules/mobianRtdProvider.json +1 -1
  1343. package/metadata/modules/mobilefuseBidAdapter.json +1 -1
  1344. package/metadata/modules/mobkoiBidAdapter.json +1 -1
  1345. package/metadata/modules/mobkoiIdSystem.json +1 -1
  1346. package/metadata/modules/nativeryBidAdapter.json +1 -1
  1347. package/metadata/modules/nativoBidAdapter.json +1 -1
  1348. package/metadata/modules/newspassidBidAdapter.json +1 -1
  1349. package/metadata/modules/nextMillenniumBidAdapter.json +1 -1
  1350. package/metadata/modules/nextrollBidAdapter.json +1 -1
  1351. package/metadata/modules/nexx360BidAdapter.json +8 -8
  1352. package/metadata/modules/nobidBidAdapter.json +2 -2
  1353. package/metadata/modules/nodalsAiRtdProvider.json +1 -1
  1354. package/metadata/modules/novatiqIdSystem.json +1 -1
  1355. package/metadata/modules/oguryBidAdapter.json +1 -1
  1356. package/metadata/modules/omsBidAdapter.json +1 -1
  1357. package/metadata/modules/onetagBidAdapter.json +1 -1
  1358. package/metadata/modules/openwebBidAdapter.json +1 -1
  1359. package/metadata/modules/openxBidAdapter.json +1 -1
  1360. package/metadata/modules/operaadsBidAdapter.json +1 -1
  1361. package/metadata/modules/optidigitalBidAdapter.json +1 -1
  1362. package/metadata/modules/optoutBidAdapter.json +1 -1
  1363. package/metadata/modules/orbidderBidAdapter.json +1 -1
  1364. package/metadata/modules/outbrainBidAdapter.json +1 -1
  1365. package/metadata/modules/ozoneBidAdapter.json +1 -1
  1366. package/metadata/modules/pairIdSystem.json +1 -1
  1367. package/metadata/modules/performaxBidAdapter.json +4 -5
  1368. package/metadata/modules/pgamsspBidAdapter.json +1 -1
  1369. package/metadata/modules/pixfutureBidAdapter.json +1 -1
  1370. package/metadata/modules/playdigoBidAdapter.json +1 -1
  1371. package/metadata/modules/prebid-core.json +2 -2
  1372. package/metadata/modules/precisoBidAdapter.json +1 -1
  1373. package/metadata/modules/prismaBidAdapter.json +1 -1
  1374. package/metadata/modules/programmaticXBidAdapter.json +1 -1
  1375. package/metadata/modules/proxistoreBidAdapter.json +1 -1
  1376. package/metadata/modules/publinkIdSystem.json +1 -1
  1377. package/metadata/modules/pubmaticBidAdapter.json +1 -1
  1378. package/metadata/modules/pubmaticIdSystem.json +1 -1
  1379. package/metadata/modules/pulsepointBidAdapter.json +1 -1
  1380. package/metadata/modules/pwbidBidAdapter.json +1 -1
  1381. package/metadata/modules/qtBidAdapter.json +1 -1
  1382. package/metadata/modules/quantcastBidAdapter.json +1 -1
  1383. package/metadata/modules/quantcastIdSystem.json +1 -1
  1384. package/metadata/modules/r2b2BidAdapter.json +1 -1
  1385. package/metadata/modules/raynRtdProvider.json +1 -1
  1386. package/metadata/modules/readpeakBidAdapter.json +1 -1
  1387. package/metadata/modules/relayBidAdapter.json +1 -1
  1388. package/metadata/modules/relevantdigitalBidAdapter.json +1 -1
  1389. package/metadata/modules/resetdigitalBidAdapter.json +1 -1
  1390. package/metadata/modules/responsiveAdsBidAdapter.json +1 -1
  1391. package/metadata/modules/retailspotBidAdapter.json +1 -1
  1392. package/metadata/modules/revcontentBidAdapter.json +7 -117
  1393. package/metadata/modules/rhythmoneBidAdapter.json +1 -1
  1394. package/metadata/modules/richaudienceBidAdapter.json +1 -1
  1395. package/metadata/modules/riseBidAdapter.json +2 -2
  1396. package/metadata/modules/rixengineBidAdapter.json +1 -1
  1397. package/metadata/modules/rtbhouseBidAdapter.json +1 -1
  1398. package/metadata/modules/rubiconBidAdapter.json +1 -1
  1399. package/metadata/modules/rumbleBidAdapter.json +13 -0
  1400. package/metadata/modules/scatteredBidAdapter.json +1 -1
  1401. package/metadata/modules/seedingAllianceBidAdapter.json +1 -1
  1402. package/metadata/modules/seedtagBidAdapter.json +1 -1
  1403. package/metadata/modules/semantiqRtdProvider.json +1 -1
  1404. package/metadata/modules/setupadBidAdapter.json +1 -1
  1405. package/metadata/modules/sevioBidAdapter.json +18 -0
  1406. package/metadata/modules/sharedIdSystem.json +1 -1
  1407. package/metadata/modules/sharethroughBidAdapter.json +1 -1
  1408. package/metadata/modules/showheroes-bsBidAdapter.json +1 -1
  1409. package/metadata/modules/silvermobBidAdapter.json +1 -1
  1410. package/metadata/modules/sirdataRtdProvider.json +1 -1
  1411. package/metadata/modules/slimcutBidAdapter.json +1 -1
  1412. package/metadata/modules/smaatoBidAdapter.json +1 -1
  1413. package/metadata/modules/smartadserverBidAdapter.json +1 -1
  1414. package/metadata/modules/smartxBidAdapter.json +1 -1
  1415. package/metadata/modules/smartyadsBidAdapter.json +1 -1
  1416. package/metadata/modules/smilewantedBidAdapter.json +1 -1
  1417. package/metadata/modules/snigelBidAdapter.json +1 -1
  1418. package/metadata/modules/sonaradsBidAdapter.json +1 -1
  1419. package/metadata/modules/sonobiBidAdapter.json +1 -1
  1420. package/metadata/modules/sovrnBidAdapter.json +4 -4
  1421. package/metadata/modules/sparteoBidAdapter.json +1 -1
  1422. package/metadata/modules/ssmasBidAdapter.json +1 -1
  1423. package/metadata/modules/sspBCBidAdapter.json +1 -1
  1424. package/metadata/modules/stackadaptBidAdapter.json +1 -1
  1425. package/metadata/modules/startioBidAdapter.json +1 -1
  1426. package/metadata/modules/stroeerCoreBidAdapter.json +1 -1
  1427. package/metadata/modules/stvBidAdapter.json +1 -1
  1428. package/metadata/modules/sublimeBidAdapter.json +1 -1
  1429. package/metadata/modules/taboolaBidAdapter.json +1 -1
  1430. package/metadata/modules/taboolaIdSystem.json +1 -1
  1431. package/metadata/modules/tappxBidAdapter.json +1 -1
  1432. package/metadata/modules/targetVideoBidAdapter.json +1 -1
  1433. package/metadata/modules/teadsBidAdapter.json +1 -1
  1434. package/metadata/modules/teadsIdSystem.json +1 -1
  1435. package/metadata/modules/tealBidAdapter.json +1 -1
  1436. package/metadata/modules/themoneytizerBidAdapter.json +3 -8
  1437. package/metadata/modules/tncIdSystem.json +1 -1
  1438. package/metadata/modules/topicsFpdModule.json +1 -1
  1439. package/metadata/modules/tripleliftBidAdapter.json +1 -1
  1440. package/metadata/modules/ttdBidAdapter.json +1 -1
  1441. package/metadata/modules/twistDigitalBidAdapter.json +1 -1
  1442. package/metadata/modules/underdogmediaBidAdapter.json +1 -1
  1443. package/metadata/modules/undertoneBidAdapter.json +1 -1
  1444. package/metadata/modules/unifiedIdSystem.json +1 -1
  1445. package/metadata/modules/unrulyBidAdapter.json +1 -1
  1446. package/metadata/modules/userId.json +1 -1
  1447. package/metadata/modules/validationFpdModule.json +1 -1
  1448. package/metadata/modules/vidazooBidAdapter.json +1 -1
  1449. package/metadata/modules/vidoomyBidAdapter.json +1 -1
  1450. package/metadata/modules/viewdeosDXBidAdapter.json +1 -1
  1451. package/metadata/modules/viouslyBidAdapter.json +1 -1
  1452. package/metadata/modules/visxBidAdapter.json +1 -1
  1453. package/metadata/modules/vlybyBidAdapter.json +1 -1
  1454. package/metadata/modules/voxBidAdapter.json +1 -1
  1455. package/metadata/modules/vrtcalBidAdapter.json +1 -1
  1456. package/metadata/modules/vuukleBidAdapter.json +1 -1
  1457. package/metadata/modules/weboramaRtdProvider.json +1 -1
  1458. package/metadata/modules/welectBidAdapter.json +1 -1
  1459. package/metadata/modules/yahooAdsBidAdapter.json +1 -1
  1460. package/metadata/modules/yieldlabBidAdapter.json +1 -1
  1461. package/metadata/modules/yieldliftBidAdapter.json +1 -1
  1462. package/metadata/modules/yieldloveBidAdapter.json +1 -1
  1463. package/metadata/modules/yieldmoBidAdapter.json +1 -1
  1464. package/metadata/modules/zeotapIdPlusIdSystem.json +1 -1
  1465. package/metadata/modules/zeta_globalBidAdapter.json +1 -1
  1466. package/metadata/modules/zeta_global_sspBidAdapter.json +1 -1
  1467. package/metadata/modules.json +23 -2
  1468. package/modules/1plusXRtdProvider.js +6 -2
  1469. package/modules/adWMGBidAdapter.js +8 -8
  1470. package/modules/admixerBidAdapter.js +9 -4
  1471. package/modules/adspiritBidAdapter.js +8 -8
  1472. package/modules/adtrgtmeBidAdapter.js +2 -2
  1473. package/modules/adxcgBidAdapter.js +2 -36
  1474. package/modules/amxBidAdapter.js +3 -3
  1475. package/modules/chromeAiRtdProvider.js +5 -5
  1476. package/modules/consentManagementGpp.ts +11 -11
  1477. package/modules/consentManagementTcf.ts +33 -33
  1478. package/modules/consentManagementUsp.ts +14 -14
  1479. package/modules/currency.ts +59 -59
  1480. package/modules/cwireBidAdapter.js +2 -2
  1481. package/modules/dailymotionBidAdapter.js +4 -4
  1482. package/modules/dchain.ts +4 -4
  1483. package/modules/dspxBidAdapter.js +8 -8
  1484. package/modules/eightPodBidAdapter.js +8 -8
  1485. package/modules/genericAnalyticsAdapter.ts +50 -50
  1486. package/modules/geolocationRtdProvider.ts +48 -48
  1487. package/modules/getintentBidAdapter.js +4 -2
  1488. package/modules/gmosspBidAdapter.js +1 -1
  1489. package/modules/gppControl_usstates.ts +40 -40
  1490. package/modules/gptPreAuction.ts +34 -34
  1491. package/modules/iasRtdProvider.js +87 -5
  1492. package/modules/intentIqAnalyticsAdapter.js +8 -8
  1493. package/modules/intentIqIdSystem.js +2 -2
  1494. package/modules/jwplayerRtdProvider.js +6 -2
  1495. package/modules/jwplayerVideoProvider.js +13 -9
  1496. package/modules/kubientBidAdapter.js +0 -1
  1497. package/modules/medianetAnalyticsAdapter.js +5 -5
  1498. package/modules/medianetBidAdapter.js +5 -1
  1499. package/modules/michaoBidAdapter.ts +7 -7
  1500. package/modules/multibid/index.ts +31 -31
  1501. package/modules/nexverseBidAdapter.js +1 -1
  1502. package/modules/nodalsAiRtdProvider.js +4 -2
  1503. package/modules/onetagBidAdapter.js +12 -12
  1504. package/modules/openxBidAdapter.js +6 -1
  1505. package/modules/prebidServerBidAdapter/index.ts +130 -130
  1506. package/modules/priceFloors.ts +131 -131
  1507. package/modules/pubmaticBidAdapter.js +21 -1
  1508. package/modules/pubmaticRtdProvider.js +143 -143
  1509. package/modules/pulsepointBidAdapter.js +3 -38
  1510. package/modules/readpeakBidAdapter.js +17 -17
  1511. package/modules/rtdModule/index.ts +8 -8
  1512. package/modules/rtdModule/spec.ts +30 -30
  1513. package/modules/rubiconBidAdapter.js +5 -1
  1514. package/modules/rumbleBidAdapter.js +128 -0
  1515. package/modules/rumbleBidAdapter.md +114 -0
  1516. package/modules/schain.ts +4 -4
  1517. package/modules/sevioBidAdapter.js +262 -0
  1518. package/modules/sevioBidAdapter.md +29 -0
  1519. package/modules/sharedIdSystem.ts +29 -29
  1520. package/modules/storageControl.ts +72 -72
  1521. package/modules/tcfControl.ts +60 -60
  1522. package/modules/themoneytizerBidAdapter.js +2 -4
  1523. package/modules/ttdBidAdapter.js +11 -1
  1524. package/modules/ttdBidAdapter.md +3 -1
  1525. package/modules/userId/index.ts +129 -119
  1526. package/modules/userId/spec.ts +136 -136
  1527. package/modules/validationFpdModule/index.ts +4 -4
  1528. package/modules/videoModule/index.ts +37 -37
  1529. package/modules/weboramaRtdProvider.js +30 -11
  1530. package/modules/welectBidAdapter.js +3 -3
  1531. package/modules/yandexBidAdapter.js +67 -24
  1532. package/package.json +2 -3
  1533. package/src/activities/params.js +6 -0
  1534. package/src/activities/redactor.ts +8 -8
  1535. package/src/adRendering.ts +61 -61
  1536. package/src/adUnits.ts +100 -100
  1537. package/src/adapterManager.ts +605 -605
  1538. package/src/adapters/bidderFactory.ts +99 -99
  1539. package/src/ajax.ts +39 -39
  1540. package/src/auction.ts +217 -217
  1541. package/src/banner.ts +28 -28
  1542. package/src/bidTTL.ts +16 -16
  1543. package/src/bidderSettings.ts +46 -46
  1544. package/src/bidfactory.ts +107 -107
  1545. package/src/config.ts +65 -65
  1546. package/src/consentHandler.ts +25 -25
  1547. package/src/constants.ts +14 -14
  1548. package/src/cpmBucketManager.ts +7 -7
  1549. package/src/events.ts +75 -75
  1550. package/src/fpd/enrichment.ts +8 -8
  1551. package/src/hook.ts +14 -14
  1552. package/src/mediaTypes.ts +16 -16
  1553. package/src/native.ts +62 -62
  1554. package/src/prebid.ts +362 -362
  1555. package/src/prebidGlobal.ts +18 -18
  1556. package/src/refererDetection.ts +54 -54
  1557. package/src/storageManager.ts +76 -73
  1558. package/src/targeting.ts +215 -215
  1559. package/src/types/common.d.ts +29 -29
  1560. package/src/types/local/buildOptions.d.ts +3 -3
  1561. package/src/types/local/shim.d.ts +6 -6
  1562. package/src/types/objects.d.ts +15 -15
  1563. package/src/types/ortb/common.d.ts +1 -1
  1564. package/src/types/ortb/ext/dchain.d.ts +69 -69
  1565. package/src/types/ortb/ext/dsa.d.ts +50 -50
  1566. package/src/types/ortb/request.d.ts +21 -21
  1567. package/src/types/ortb/response.d.ts +6 -6
  1568. package/src/userSync.ts +32 -32
  1569. package/src/utils/objects.ts +11 -11
  1570. package/src/utils/perfMetrics.ts +193 -193
  1571. package/src/utils/promise.ts +14 -14
  1572. package/src/utils/ttlCollection.ts +25 -25
  1573. package/src/video.ts +73 -73
  1574. package/src/videoCache.ts +60 -60
  1575. package/test/helpers/index_adapter_utils.js +1 -2
  1576. package/test/helpers/refererDetectionHelper.js +2 -2
  1577. package/test/mocks/timers.js +12 -9
  1578. package/test/spec/adloader_spec.js +13 -13
  1579. package/test/spec/config_spec.js +9 -3
  1580. package/test/spec/libraries/greedy/greedyPromise_spec.js +2 -2
  1581. package/test/spec/modules/1plusXRtdProvider_spec.js +2 -9
  1582. package/test/spec/modules/adgridBidAdapter_spec.js +6 -6
  1583. package/test/spec/modules/adkernelAdnBidAdapter_spec.js +127 -127
  1584. package/test/spec/modules/adkernelBidAdapter_spec.js +308 -308
  1585. package/test/spec/modules/admediaBidAdapter_spec.js +34 -34
  1586. package/test/spec/modules/adnuntiusBidAdapter_spec.js +7 -7
  1587. package/test/spec/modules/adspiritBidAdapter_spec.js +1 -1
  1588. package/test/spec/modules/adtrgtmeBidAdapter_spec.js +3 -3
  1589. package/test/spec/modules/adtrueBidAdapter_spec.js +19 -19
  1590. package/test/spec/modules/advertisingBidAdapter_spec.js +2 -2
  1591. package/test/spec/modules/bidmaticBidAdapter_spec.js +2 -2
  1592. package/test/spec/modules/datablocksBidAdapter_spec.js +115 -115
  1593. package/test/spec/modules/deepintentBidAdapter_spec.js +51 -51
  1594. package/test/spec/modules/dexertoBidAdapter_spec.js +16 -16
  1595. package/test/spec/modules/dochaseBidAdapter_spec.js +17 -17
  1596. package/test/spec/modules/dspxBidAdapter_spec.js +23 -23
  1597. package/test/spec/modules/ehealthcaresolutionsBidAdapter_spec.js +17 -17
  1598. package/test/spec/modules/enrichmentLiftMeasurement_spec.js +8 -8
  1599. package/test/spec/modules/equativBidAdapter_spec.js +1 -1
  1600. package/test/spec/modules/finativeBidAdapter_spec.js +11 -11
  1601. package/test/spec/modules/ftrackIdSystem_spec.js +16 -16
  1602. package/test/spec/modules/fwsspBidAdapter_spec.js +5 -5
  1603. package/test/spec/modules/hypelabBidAdapter_spec.js +9 -9
  1604. package/test/spec/modules/iasRtdProvider_spec.js +89 -8
  1605. package/test/spec/modules/intentIqIdSystem_spec.js +3 -3
  1606. package/test/spec/modules/invibesBidAdapter_spec.js +2 -2
  1607. package/test/spec/modules/kargoBidAdapter_spec.js +7 -7
  1608. package/test/spec/modules/lane4BidAdapter_spec.js +17 -17
  1609. package/test/spec/modules/lemmaDigitalBidAdapter_spec.js +37 -37
  1610. package/test/spec/modules/liveIntentExternalIdSystem_spec.js +5 -0
  1611. package/test/spec/modules/liveIntentIdMinimalSystem_spec.js +5 -0
  1612. package/test/spec/modules/liveIntentIdSystem_spec.js +38 -0
  1613. package/test/spec/modules/liveIntentRtdProvider_spec.js +2 -2
  1614. package/test/spec/modules/mediaeyesBidAdapter_spec.js +166 -166
  1615. package/test/spec/modules/mediagoBidAdapter_spec.js +1 -1
  1616. package/test/spec/modules/medianetBidAdapter_spec.js +1724 -1707
  1617. package/test/spec/modules/mediasquareBidAdapter_spec.js +7 -7
  1618. package/test/spec/modules/nexx360BidAdapter_spec.js +6 -6
  1619. package/test/spec/modules/nobidBidAdapter_spec.js +16 -16
  1620. package/test/spec/modules/onetagBidAdapter_spec.js +47 -47
  1621. package/test/spec/modules/openxBidAdapter_spec.js +129 -0
  1622. package/test/spec/modules/optoutBidAdapter_spec.js +1 -1
  1623. package/test/spec/modules/orbitsoftBidAdapter_spec.js +85 -85
  1624. package/test/spec/modules/oxxionAnalyticsAdapter_spec.js +1 -1
  1625. package/test/spec/modules/ozoneBidAdapter_spec.js +439 -439
  1626. package/test/spec/modules/prebidServerBidAdapter_spec.js +2 -2
  1627. package/test/spec/modules/prismaBidAdapter_spec.js +6 -6
  1628. package/test/spec/modules/pubmaticBidAdapter_spec.js +73 -3
  1629. package/test/spec/modules/pubmaticRtdProvider_spec.js +1389 -1389
  1630. package/test/spec/modules/pwbidBidAdapter_spec.js +25 -25
  1631. package/test/spec/modules/relevadRtdProvider_spec.js +1 -1
  1632. package/test/spec/modules/relevatehealthBidAdapter_spec.js +16 -16
  1633. package/test/spec/modules/richaudienceBidAdapter_spec.js +10 -10
  1634. package/test/spec/modules/rubiconBidAdapter_spec.js +7 -7
  1635. package/test/spec/modules/rumbleBidAdapter_spec.js +125 -0
  1636. package/test/spec/modules/sevioBidAdapter_spec.js +209 -0
  1637. package/test/spec/modules/smaatoBidAdapter_spec.js +30 -30
  1638. package/test/spec/modules/smarticoBidAdapter_spec.js +10 -10
  1639. package/test/spec/modules/stvBidAdapter_spec.js +32 -32
  1640. package/test/spec/modules/tapnativeBidAdapter_spec.js +17 -17
  1641. package/test/spec/modules/themoneytizerBidAdapter_spec.js +0 -6
  1642. package/test/spec/modules/ttdBidAdapter_spec.js +27 -2
  1643. package/test/spec/modules/uid2IdSystem_spec.js +3 -3
  1644. package/test/spec/modules/userId_spec.js +41 -7
  1645. package/test/spec/modules/videoModule/submodules/jwplayerVideoProvider_spec.js +1953 -154
  1646. package/test/spec/modules/yandexBidAdapter_spec.js +128 -0
  1647. package/test/spec/refererDetection_spec.js +11 -11
  1648. package/test/spec/unit/core/storageManager_spec.js +20 -1
  1649. package/test/spec/unit/core/targeting_spec.js +8 -8
  1650. package/test/spec/utils_spec.js +25 -25
@@ -1 +1 @@
1
- {"version":3,"file":"currency.js","names":["registerModule","__r0","deepSetValue","logError","logInfo","logMessage","logWarn","getGlobal","EVENTS","REJECTION_REASON","ajax","config","getHook","defer","registerOrtbProcessor","REQUEST","timedAuctionHook","timedBidResponseHook","on","onEvent","off","offEvent","enrichFPD","timeoutQueue","addApiMethod","DEFAULT_CURRENCY_RATE_URL","CURRENCY_RATE_PRECISION","MODULE_NAME","ratesURL","bidResponseQueue","conversionCache","currencyRatesLoaded","needToCallForCurrencyFile","adServerCurrency","currencySupportEnabled","currencyRates","bidderCurrencyDefault","defaultRates","responseReady","delayedAuctions","auctionDelay","setConfig","rates","conversions","conversionRateFile","macroLocation","indexOf","d","Date","month","getMonth","day","getDate","length","todaysDate","getFullYear","substring","initCurrency","resetCurrency","getConfig","currency","errorSettingsRates","msg","loadRates","success","response","JSON","parse","stringify","processBidResponseQueue","resume","e","error","err","convertCurrency","cpm","fromCurrency","toCurrency","parseFloat","getCurrencyConversion","before","addBidResponseHook","responsesReadyHook","enrichFPDHook","requestBidsHook","AUCTION_TIMEOUT","rejectOnAuctionTimeout","AUCTION_INIT","getHooks","hook","remove","next","ready","then","promise","fn","adUnitCode","bid","reject","call","bidder","bidderCode","currencyDefault","getCpmInNewCurrency","toFixed","push","_ref","auctionId","filter","_ref2","ctx","CANNOT_CONVERT_CURRENCY","shift","undefined","conversion","resolve","arguments","conversionRate","cacheKey","Error","roundFloat","anyBaseCurrency","Object","keys","toIntermediateConversionRate","fromIntermediateConversionRate","num","dec","i","Math","round","setOrtbCurrency","ortbRequest","bidderRequest","context","cur","type","name","fpd","ortb2","reqBidsConfigObj","continueAuction","that","submit"],"sourceRoot":"../../..","sources":["modules/currency.ts"],"sourcesContent":["import {deepSetValue, logError, logInfo, logMessage, logWarn} from '../src/utils.js';\nimport {getGlobal} from '../src/prebidGlobal.js';\nimport { EVENTS, REJECTION_REASON } from '../src/constants.js';\nimport {ajax} from '../src/ajax.js';\nimport {config} from '../src/config.js';\nimport {getHook} from '../src/hook.js';\nimport {defer} from '../src/utils/promise.js';\nimport {registerOrtbProcessor, REQUEST} from '../src/pbjsORTB.js';\nimport {timedAuctionHook, timedBidResponseHook} from '../src/utils/perfMetrics.js';\nimport {on as onEvent, off as offEvent} from '../src/events.js';\nimport { enrichFPD } from '../src/fpd/enrichment.js';\nimport { timeoutQueue } from '../libraries/timeoutQueue/timeoutQueue.js';\nimport type {Currency, BidderCode} from \"../src/types/common.d.ts\";\nimport {addApiMethod} from \"../src/prebid.ts\";\n\nconst DEFAULT_CURRENCY_RATE_URL = 'https://cdn.jsdelivr.net/gh/prebid/currency-file@1/latest.json?date=$$TODAY$$';\nconst CURRENCY_RATE_PRECISION = 4;\nconst MODULE_NAME = 'currency';\n\nlet ratesURL;\nlet bidResponseQueue = [];\nlet conversionCache = {};\nlet currencyRatesLoaded = false;\nlet needToCallForCurrencyFile = true;\nlet adServerCurrency = 'USD';\n\nexport var currencySupportEnabled = false;\nexport var currencyRates = {} as any;\nlet bidderCurrencyDefault = {};\nlet defaultRates;\n\nexport let responseReady = defer<void>();\n\nconst delayedAuctions = timeoutQueue();\nlet auctionDelay = 0;\n\nexport interface CurrencyConfig {\n /**\n * ISO 4217 3-letter currency code that represents the target currency. (e.g. 'EUR'). If this value is present,\n * the currency conversion feature is activated.\n */\n adServerCurrency: Currency;\n /**\n * Optional URL to a file containing currency conversion data. Prebid.org hosts a file that is used as the default,\n * if not specified.\n */\n conversionRateFile?: string;\n /**\n * Time (in milliseconds) that auctions should be delayed to wait for conversion rates to load. Default is 0.\n */\n auctionDelay?: number;\n /**\n * A decimal value representing how much to scale the price granularity calculations.\n */\n granularityMultiplier?: number;\n /**\n * This optional argument allows you to specify the rates with a JSON object, subverting the need for a external\n * config.conversionRateFile parameter. If this argument is specified, the conversion rate file will not be loaded.\n *\n * example:\n * {\n * 'GBP': { 'CNY': 8.8282, 'JPY': 141.7, 'USD': 1.2824 },\n * 'USD': { 'CNY': 6.8842, 'GBP': 0.7798, 'JPY': 110.49 }\n * }\n */\n rates?: { [from: Currency]: { [to: Currency]: number } };\n /**\n * This optional currency rates definition follows the same format as config.rates, however it is only utilized if\n * there is an error loading the config.conversionRateFile.\n */\n defaultRates?: CurrencyConfig['rates'];\n /**\n * An optional argument to specify bid currencies for bid adapters. This option is provided for the transitional phase\n * before every bid adapter will specify its own bid currency. If the adapter specifies a bid currency, this value is\n * ignored for that bidder.\n *\n * example:\n * {\n * rubicon: 'USD'\n * }\n */\n bidderCurrencyDefault?: { [bidder: BidderCode]: Currency };\n}\n\ndeclare module '../src/config' {\n interface Config {\n currency?: CurrencyConfig;\n }\n}\n\nexport function setConfig(config: CurrencyConfig) {\n ratesURL = DEFAULT_CURRENCY_RATE_URL;\n\n if (config.rates !== null && typeof config.rates === 'object') {\n currencyRates.conversions = config.rates;\n currencyRatesLoaded = true;\n needToCallForCurrencyFile = false; // don't call if rates are already specified\n }\n\n if (config.defaultRates !== null && typeof config.defaultRates === 'object') {\n defaultRates = config.defaultRates;\n\n // set up the default rates to be used if the rate file doesn't get loaded in time\n currencyRates.conversions = defaultRates;\n currencyRatesLoaded = true;\n }\n\n if (typeof config.adServerCurrency === 'string') {\n auctionDelay = config.auctionDelay;\n logInfo('enabling currency support', config);\n\n adServerCurrency = config.adServerCurrency;\n if (config.conversionRateFile) {\n logInfo('currency using override conversionRateFile:', config.conversionRateFile);\n ratesURL = config.conversionRateFile;\n }\n\n // see if the url contains a date macro\n // this is a workaround to the fact that jsdelivr doesn't currently support setting a 24-hour HTTP cache header\n // So this is an approach to let the browser cache a copy of the file each day\n // We should remove the macro once the CDN support a day-level HTTP cache setting\n const macroLocation = ratesURL.indexOf('$$TODAY$$');\n if (macroLocation !== -1) {\n // get the date to resolve the macro\n const d = new Date();\n let month = `${d.getMonth() + 1}`;\n let day = `${d.getDate()}`;\n if (month.length < 2) month = `0${month}`;\n if (day.length < 2) day = `0${day}`;\n const todaysDate = `${d.getFullYear()}${month}${day}`;\n\n // replace $$TODAY$$ with todaysDate\n ratesURL = `${ratesURL.substring(0, macroLocation)}${todaysDate}${ratesURL.substring(macroLocation + 9, ratesURL.length)}`;\n }\n\n initCurrency();\n } else {\n // currency support is disabled, setting defaults\n auctionDelay = 0;\n logInfo('disabling currency support');\n resetCurrency();\n }\n if (typeof config.bidderCurrencyDefault === 'object') {\n bidderCurrencyDefault = config.bidderCurrencyDefault;\n }\n}\nconfig.getConfig('currency', config => setConfig(config.currency));\n\nfunction errorSettingsRates(msg) {\n if (defaultRates) {\n logWarn(msg);\n logWarn('Currency failed loading rates, falling back to currency.defaultRates');\n } else {\n logError(msg);\n }\n}\n\nfunction loadRates() {\n if (needToCallForCurrencyFile) {\n needToCallForCurrencyFile = false;\n currencyRatesLoaded = false;\n ajax(ratesURL,\n {\n success: function (response) {\n try {\n currencyRates = JSON.parse(response);\n logInfo('currencyRates set to ' + JSON.stringify(currencyRates));\n conversionCache = {};\n currencyRatesLoaded = true;\n processBidResponseQueue();\n delayedAuctions.resume();\n } catch (e) {\n errorSettingsRates('Failed to parse currencyRates response: ' + response);\n }\n },\n error: function (err) {\n errorSettingsRates(err);\n currencyRatesLoaded = true;\n processBidResponseQueue();\n delayedAuctions.resume();\n needToCallForCurrencyFile = true;\n }\n }\n );\n } else {\n processBidResponseQueue();\n }\n}\n\ndeclare module '../src/prebidGlobal' {\n interface PrebidJS {\n convertCurrency: typeof convertCurrency\n }\n}\n\n/**\n * Convert `amount` in currency `fromCurrency` to `toCurrency`.\n */\nfunction convertCurrency(cpm, fromCurrency, toCurrency) {\n return parseFloat(cpm) * getCurrencyConversion(fromCurrency, toCurrency)\n}\n\nfunction initCurrency() {\n conversionCache = {};\n if (!currencySupportEnabled) {\n currencySupportEnabled = true;\n addApiMethod('convertCurrency', convertCurrency, false);\n // Adding conversion function to prebid global for external module and on page use\n getHook('addBidResponse').before(addBidResponseHook, 100);\n getHook('responsesReady').before(responsesReadyHook);\n enrichFPD.before(enrichFPDHook);\n getHook('requestBids').before(requestBidsHook, 50);\n onEvent(EVENTS.AUCTION_TIMEOUT, rejectOnAuctionTimeout);\n onEvent(EVENTS.AUCTION_INIT, loadRates);\n loadRates();\n }\n}\n\nexport function resetCurrency() {\n if (currencySupportEnabled) {\n getHook('addBidResponse').getHooks({hook: addBidResponseHook}).remove();\n getHook('responsesReady').getHooks({hook: responsesReadyHook}).remove();\n enrichFPD.getHooks({hook: enrichFPDHook}).remove();\n getHook('requestBids').getHooks({hook: requestBidsHook}).remove();\n offEvent(EVENTS.AUCTION_TIMEOUT, rejectOnAuctionTimeout);\n offEvent(EVENTS.AUCTION_INIT, loadRates);\n delete getGlobal().convertCurrency;\n\n adServerCurrency = 'USD';\n conversionCache = {};\n currencySupportEnabled = false;\n currencyRatesLoaded = false;\n needToCallForCurrencyFile = true;\n currencyRates = {};\n bidderCurrencyDefault = {};\n responseReady = defer();\n }\n}\n\nfunction responsesReadyHook(next, ready) {\n next(ready.then(() => responseReady.promise));\n}\n\ndeclare module '../src/bidfactory' {\n interface BaseBid {\n /**\n * Convert this bid's CPM into the given currency.\n * @return the converted CPM as a string with 3 digit precision.\n */\n getCpmInNewCurrency(toCurrency: Currency): string\n }\n}\n\nexport const addBidResponseHook = timedBidResponseHook('currency', function addBidResponseHook(fn, adUnitCode, bid, reject) {\n if (!bid) {\n return fn.call(this, adUnitCode, bid, reject); // if no bid, call original and let it display warnings\n }\n\n const bidder = bid.bidderCode || bid.bidder;\n if (bidderCurrencyDefault[bidder]) {\n const currencyDefault = bidderCurrencyDefault[bidder];\n if (bid.currency && currencyDefault !== bid.currency) {\n logWarn(`Currency default '${bidder}: ${currencyDefault}' ignored. adapter specified '${bid.currency}'`);\n } else {\n bid.currency = currencyDefault;\n }\n }\n\n // default to USD if currency not set\n if (!bid.currency) {\n logWarn('Currency not specified on bid. Defaulted to \"USD\"');\n bid.currency = 'USD';\n }\n\n // used for analytics\n bid.getCpmInNewCurrency = function(toCurrency) {\n return (parseFloat(this.cpm) * getCurrencyConversion(this.currency, toCurrency)).toFixed(3);\n };\n\n // execute immediately if the bid is already in the desired currency\n if (bid.currency === adServerCurrency) {\n return fn.call(this, adUnitCode, bid, reject);\n }\n bidResponseQueue.push([fn, this, adUnitCode, bid, reject]);\n if (!currencySupportEnabled || currencyRatesLoaded) {\n processBidResponseQueue();\n }\n});\n\nfunction rejectOnAuctionTimeout({auctionId}) {\n bidResponseQueue = bidResponseQueue.filter(([fn, ctx, adUnitCode, bid, reject]) => {\n if (bid.auctionId === auctionId) {\n reject(REJECTION_REASON.CANNOT_CONVERT_CURRENCY)\n } else {\n return true;\n }\n });\n}\n\nfunction processBidResponseQueue() {\n while (bidResponseQueue.length > 0) {\n const [fn, ctx, adUnitCode, bid, reject] = bidResponseQueue.shift();\n if (bid !== undefined && 'currency' in bid && 'cpm' in bid) {\n const fromCurrency = bid.currency;\n try {\n const conversion = getCurrencyConversion(fromCurrency);\n if (conversion !== 1) {\n bid.cpm = (parseFloat(bid.cpm) * conversion).toFixed(4);\n bid.currency = adServerCurrency;\n }\n } catch (e) {\n logWarn('getCurrencyConversion threw error: ', e);\n reject(REJECTION_REASON.CANNOT_CONVERT_CURRENCY);\n continue;\n }\n }\n fn.call(ctx, adUnitCode, bid, reject);\n }\n responseReady.resolve();\n}\n\nfunction getCurrencyConversion(fromCurrency, toCurrency = adServerCurrency) {\n var conversionRate = null;\n var rates;\n const cacheKey = `${fromCurrency}->${toCurrency}`;\n if (cacheKey in conversionCache) {\n conversionRate = conversionCache[cacheKey];\n logMessage('Using conversionCache value ' + conversionRate + ' for ' + cacheKey);\n } else if (currencySupportEnabled === false) {\n if (fromCurrency === 'USD') {\n conversionRate = 1;\n } else {\n throw new Error('Prebid currency support has not been enabled and fromCurrency is not USD');\n }\n } else if (fromCurrency === toCurrency) {\n conversionRate = 1;\n } else {\n if (fromCurrency in currencyRates.conversions) {\n // using direct conversion rate from fromCurrency to toCurrency\n rates = currencyRates.conversions[fromCurrency];\n if (!(toCurrency in rates)) {\n // bid should fail, currency is not supported\n throw new Error('Specified adServerCurrency in config \\'' + toCurrency + '\\' not found in the currency rates file');\n }\n conversionRate = rates[toCurrency];\n logInfo('getCurrencyConversion using direct ' + fromCurrency + ' to ' + toCurrency + ' conversionRate ' + conversionRate);\n } else if (toCurrency in currencyRates.conversions) {\n // using reciprocal of conversion rate from toCurrency to fromCurrency\n rates = currencyRates.conversions[toCurrency];\n if (!(fromCurrency in rates)) {\n // bid should fail, currency is not supported\n throw new Error('Specified fromCurrency \\'' + fromCurrency + '\\' not found in the currency rates file');\n }\n conversionRate = roundFloat(1 / rates[fromCurrency], CURRENCY_RATE_PRECISION);\n logInfo('getCurrencyConversion using reciprocal ' + fromCurrency + ' to ' + toCurrency + ' conversionRate ' + conversionRate);\n } else {\n // first defined currency base used as intermediary\n var anyBaseCurrency = Object.keys(currencyRates.conversions)[0];\n\n if (!(fromCurrency in currencyRates.conversions[anyBaseCurrency])) {\n // bid should fail, currency is not supported\n throw new Error('Specified fromCurrency \\'' + fromCurrency + '\\' not found in the currency rates file');\n }\n var toIntermediateConversionRate = 1 / currencyRates.conversions[anyBaseCurrency][fromCurrency];\n\n if (!(toCurrency in currencyRates.conversions[anyBaseCurrency])) {\n // bid should fail, currency is not supported\n throw new Error('Specified adServerCurrency in config \\'' + toCurrency + '\\' not found in the currency rates file');\n }\n var fromIntermediateConversionRate = currencyRates.conversions[anyBaseCurrency][toCurrency];\n\n conversionRate = roundFloat(toIntermediateConversionRate * fromIntermediateConversionRate, CURRENCY_RATE_PRECISION);\n logInfo('getCurrencyConversion using intermediate ' + fromCurrency + ' thru ' + anyBaseCurrency + ' to ' + toCurrency + ' conversionRate ' + conversionRate);\n }\n }\n if (!(cacheKey in conversionCache)) {\n logMessage('Adding conversionCache value ' + conversionRate + ' for ' + cacheKey);\n conversionCache[cacheKey] = conversionRate;\n }\n return conversionRate;\n}\n\nfunction roundFloat(num, dec) {\n var d: any = 1;\n for (let i = 0; i < dec; i++) {\n d += '0';\n }\n return Math.round(num * d) / d;\n}\n\nexport function setOrtbCurrency(ortbRequest, bidderRequest, context) {\n if (currencySupportEnabled) {\n ortbRequest.cur = ortbRequest.cur || [context.currency || adServerCurrency];\n }\n}\n\nregisterOrtbProcessor({type: REQUEST, name: 'currency', fn: setOrtbCurrency});\n\nfunction enrichFPDHook(next, fpd) {\n return next(fpd.then(ortb2 => {\n deepSetValue(ortb2, 'ext.prebid.adServerCurrency', adServerCurrency);\n return ortb2;\n }))\n}\n\nexport const requestBidsHook = timedAuctionHook('currency', function requestBidsHook(fn, reqBidsConfigObj) {\n const continueAuction = ((that) => () => fn.call(that, reqBidsConfigObj))(this);\n\n if (!currencyRatesLoaded && auctionDelay > 0) {\n delayedAuctions.submit(auctionDelay, continueAuction, () => {\n logWarn(`${MODULE_NAME}: Fetch attempt did not return in time for auction ${reqBidsConfigObj.auctionId}`)\n continueAuction();\n });\n } else {\n continueAuction();\n }\n});\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"currency.js","names":["registerModule","__r0","deepSetValue","logError","logInfo","logMessage","logWarn","getGlobal","EVENTS","REJECTION_REASON","ajax","config","getHook","defer","registerOrtbProcessor","REQUEST","timedAuctionHook","timedBidResponseHook","on","onEvent","off","offEvent","enrichFPD","timeoutQueue","addApiMethod","DEFAULT_CURRENCY_RATE_URL","CURRENCY_RATE_PRECISION","MODULE_NAME","ratesURL","bidResponseQueue","conversionCache","currencyRatesLoaded","needToCallForCurrencyFile","adServerCurrency","currencySupportEnabled","currencyRates","bidderCurrencyDefault","defaultRates","responseReady","delayedAuctions","auctionDelay","setConfig","rates","conversions","conversionRateFile","macroLocation","indexOf","d","Date","month","getMonth","day","getDate","length","todaysDate","getFullYear","substring","initCurrency","resetCurrency","getConfig","currency","errorSettingsRates","msg","loadRates","success","response","JSON","parse","stringify","processBidResponseQueue","resume","e","error","err","convertCurrency","cpm","fromCurrency","toCurrency","parseFloat","getCurrencyConversion","before","addBidResponseHook","responsesReadyHook","enrichFPDHook","requestBidsHook","AUCTION_TIMEOUT","rejectOnAuctionTimeout","AUCTION_INIT","getHooks","hook","remove","next","ready","then","promise","fn","adUnitCode","bid","reject","call","bidder","bidderCode","currencyDefault","getCpmInNewCurrency","toFixed","push","_ref","auctionId","filter","_ref2","ctx","CANNOT_CONVERT_CURRENCY","shift","undefined","conversion","resolve","arguments","conversionRate","cacheKey","Error","roundFloat","anyBaseCurrency","Object","keys","toIntermediateConversionRate","fromIntermediateConversionRate","num","dec","i","Math","round","setOrtbCurrency","ortbRequest","bidderRequest","context","cur","type","name","fpd","ortb2","reqBidsConfigObj","continueAuction","that","submit"],"sourceRoot":"../../..","sources":["modules/currency.ts"],"sourcesContent":["import {deepSetValue, logError, logInfo, logMessage, logWarn} from '../src/utils.js';\nimport {getGlobal} from '../src/prebidGlobal.js';\nimport { EVENTS, REJECTION_REASON } from '../src/constants.js';\nimport {ajax} from '../src/ajax.js';\nimport {config} from '../src/config.js';\nimport {getHook} from '../src/hook.js';\nimport {defer} from '../src/utils/promise.js';\nimport {registerOrtbProcessor, REQUEST} from '../src/pbjsORTB.js';\nimport {timedAuctionHook, timedBidResponseHook} from '../src/utils/perfMetrics.js';\nimport {on as onEvent, off as offEvent} from '../src/events.js';\nimport { enrichFPD } from '../src/fpd/enrichment.js';\nimport { timeoutQueue } from '../libraries/timeoutQueue/timeoutQueue.js';\nimport type {Currency, BidderCode} from \"../src/types/common.d.ts\";\nimport {addApiMethod} from \"../src/prebid.ts\";\n\nconst DEFAULT_CURRENCY_RATE_URL = 'https://cdn.jsdelivr.net/gh/prebid/currency-file@1/latest.json?date=$$TODAY$$';\nconst CURRENCY_RATE_PRECISION = 4;\nconst MODULE_NAME = 'currency';\n\nlet ratesURL;\nlet bidResponseQueue = [];\nlet conversionCache = {};\nlet currencyRatesLoaded = false;\nlet needToCallForCurrencyFile = true;\nlet adServerCurrency = 'USD';\n\nexport var currencySupportEnabled = false;\nexport var currencyRates = {} as any;\nlet bidderCurrencyDefault = {};\nlet defaultRates;\n\nexport let responseReady = defer<void>();\n\nconst delayedAuctions = timeoutQueue();\nlet auctionDelay = 0;\n\nexport interface CurrencyConfig {\n /**\n * ISO 4217 3-letter currency code that represents the target currency. (e.g. 'EUR'). If this value is present,\n * the currency conversion feature is activated.\n */\n adServerCurrency: Currency;\n /**\n * Optional URL to a file containing currency conversion data. Prebid.org hosts a file that is used as the default,\n * if not specified.\n */\n conversionRateFile?: string;\n /**\n * Time (in milliseconds) that auctions should be delayed to wait for conversion rates to load. Default is 0.\n */\n auctionDelay?: number;\n /**\n * A decimal value representing how much to scale the price granularity calculations.\n */\n granularityMultiplier?: number;\n /**\n * This optional argument allows you to specify the rates with a JSON object, subverting the need for a external\n * config.conversionRateFile parameter. If this argument is specified, the conversion rate file will not be loaded.\n *\n * example:\n * {\n * 'GBP': { 'CNY': 8.8282, 'JPY': 141.7, 'USD': 1.2824 },\n * 'USD': { 'CNY': 6.8842, 'GBP': 0.7798, 'JPY': 110.49 }\n * }\n */\n rates?: { [from: Currency]: { [to: Currency]: number } };\n /**\n * This optional currency rates definition follows the same format as config.rates, however it is only utilized if\n * there is an error loading the config.conversionRateFile.\n */\n defaultRates?: CurrencyConfig['rates'];\n /**\n * An optional argument to specify bid currencies for bid adapters. This option is provided for the transitional phase\n * before every bid adapter will specify its own bid currency. If the adapter specifies a bid currency, this value is\n * ignored for that bidder.\n *\n * example:\n * {\n * rubicon: 'USD'\n * }\n */\n bidderCurrencyDefault?: { [bidder: BidderCode]: Currency };\n}\n\ndeclare module '../src/config' {\n interface Config {\n currency?: CurrencyConfig;\n }\n}\n\nexport function setConfig(config: CurrencyConfig) {\n ratesURL = DEFAULT_CURRENCY_RATE_URL;\n\n if (config.rates !== null && typeof config.rates === 'object') {\n currencyRates.conversions = config.rates;\n currencyRatesLoaded = true;\n needToCallForCurrencyFile = false; // don't call if rates are already specified\n }\n\n if (config.defaultRates !== null && typeof config.defaultRates === 'object') {\n defaultRates = config.defaultRates;\n\n // set up the default rates to be used if the rate file doesn't get loaded in time\n currencyRates.conversions = defaultRates;\n currencyRatesLoaded = true;\n }\n\n if (typeof config.adServerCurrency === 'string') {\n auctionDelay = config.auctionDelay;\n logInfo('enabling currency support', config);\n\n adServerCurrency = config.adServerCurrency;\n if (config.conversionRateFile) {\n logInfo('currency using override conversionRateFile:', config.conversionRateFile);\n ratesURL = config.conversionRateFile;\n }\n\n // see if the url contains a date macro\n // this is a workaround to the fact that jsdelivr doesn't currently support setting a 24-hour HTTP cache header\n // So this is an approach to let the browser cache a copy of the file each day\n // We should remove the macro once the CDN support a day-level HTTP cache setting\n const macroLocation = ratesURL.indexOf('$$TODAY$$');\n if (macroLocation !== -1) {\n // get the date to resolve the macro\n const d = new Date();\n let month = `${d.getMonth() + 1}`;\n let day = `${d.getDate()}`;\n if (month.length < 2) month = `0${month}`;\n if (day.length < 2) day = `0${day}`;\n const todaysDate = `${d.getFullYear()}${month}${day}`;\n\n // replace $$TODAY$$ with todaysDate\n ratesURL = `${ratesURL.substring(0, macroLocation)}${todaysDate}${ratesURL.substring(macroLocation + 9, ratesURL.length)}`;\n }\n\n initCurrency();\n } else {\n // currency support is disabled, setting defaults\n auctionDelay = 0;\n logInfo('disabling currency support');\n resetCurrency();\n }\n if (typeof config.bidderCurrencyDefault === 'object') {\n bidderCurrencyDefault = config.bidderCurrencyDefault;\n }\n}\nconfig.getConfig('currency', config => setConfig(config.currency));\n\nfunction errorSettingsRates(msg) {\n if (defaultRates) {\n logWarn(msg);\n logWarn('Currency failed loading rates, falling back to currency.defaultRates');\n } else {\n logError(msg);\n }\n}\n\nfunction loadRates() {\n if (needToCallForCurrencyFile) {\n needToCallForCurrencyFile = false;\n currencyRatesLoaded = false;\n ajax(ratesURL,\n {\n success: function (response) {\n try {\n currencyRates = JSON.parse(response);\n logInfo('currencyRates set to ' + JSON.stringify(currencyRates));\n conversionCache = {};\n currencyRatesLoaded = true;\n processBidResponseQueue();\n delayedAuctions.resume();\n } catch (e) {\n errorSettingsRates('Failed to parse currencyRates response: ' + response);\n }\n },\n error: function (err) {\n errorSettingsRates(err);\n currencyRatesLoaded = true;\n processBidResponseQueue();\n delayedAuctions.resume();\n needToCallForCurrencyFile = true;\n }\n }\n );\n } else {\n processBidResponseQueue();\n }\n}\n\ndeclare module '../src/prebidGlobal' {\n interface PrebidJS {\n convertCurrency: typeof convertCurrency\n }\n}\n\n/**\n * Convert `amount` in currency `fromCurrency` to `toCurrency`.\n */\nfunction convertCurrency(cpm, fromCurrency, toCurrency) {\n return parseFloat(cpm) * getCurrencyConversion(fromCurrency, toCurrency)\n}\n\nfunction initCurrency() {\n conversionCache = {};\n if (!currencySupportEnabled) {\n currencySupportEnabled = true;\n addApiMethod('convertCurrency', convertCurrency, false);\n // Adding conversion function to prebid global for external module and on page use\n getHook('addBidResponse').before(addBidResponseHook, 100);\n getHook('responsesReady').before(responsesReadyHook);\n enrichFPD.before(enrichFPDHook);\n getHook('requestBids').before(requestBidsHook, 50);\n onEvent(EVENTS.AUCTION_TIMEOUT, rejectOnAuctionTimeout);\n onEvent(EVENTS.AUCTION_INIT, loadRates);\n loadRates();\n }\n}\n\nexport function resetCurrency() {\n if (currencySupportEnabled) {\n getHook('addBidResponse').getHooks({hook: addBidResponseHook}).remove();\n getHook('responsesReady').getHooks({hook: responsesReadyHook}).remove();\n enrichFPD.getHooks({hook: enrichFPDHook}).remove();\n getHook('requestBids').getHooks({hook: requestBidsHook}).remove();\n offEvent(EVENTS.AUCTION_TIMEOUT, rejectOnAuctionTimeout);\n offEvent(EVENTS.AUCTION_INIT, loadRates);\n delete getGlobal().convertCurrency;\n\n adServerCurrency = 'USD';\n conversionCache = {};\n currencySupportEnabled = false;\n currencyRatesLoaded = false;\n needToCallForCurrencyFile = true;\n currencyRates = {};\n bidderCurrencyDefault = {};\n responseReady = defer();\n }\n}\n\nfunction responsesReadyHook(next, ready) {\n next(ready.then(() => responseReady.promise));\n}\n\ndeclare module '../src/bidfactory' {\n interface BaseBid {\n /**\n * Convert this bid's CPM into the given currency.\n * @return the converted CPM as a string with 3 digit precision.\n */\n getCpmInNewCurrency(toCurrency: Currency): string\n }\n}\n\nexport const addBidResponseHook = timedBidResponseHook('currency', function addBidResponseHook(fn, adUnitCode, bid, reject) {\n if (!bid) {\n return fn.call(this, adUnitCode, bid, reject); // if no bid, call original and let it display warnings\n }\n\n const bidder = bid.bidderCode || bid.bidder;\n if (bidderCurrencyDefault[bidder]) {\n const currencyDefault = bidderCurrencyDefault[bidder];\n if (bid.currency && currencyDefault !== bid.currency) {\n logWarn(`Currency default '${bidder}: ${currencyDefault}' ignored. adapter specified '${bid.currency}'`);\n } else {\n bid.currency = currencyDefault;\n }\n }\n\n // default to USD if currency not set\n if (!bid.currency) {\n logWarn('Currency not specified on bid. Defaulted to \"USD\"');\n bid.currency = 'USD';\n }\n\n // used for analytics\n bid.getCpmInNewCurrency = function(toCurrency) {\n return (parseFloat(this.cpm) * getCurrencyConversion(this.currency, toCurrency)).toFixed(3);\n };\n\n // execute immediately if the bid is already in the desired currency\n if (bid.currency === adServerCurrency) {\n return fn.call(this, adUnitCode, bid, reject);\n }\n bidResponseQueue.push([fn, this, adUnitCode, bid, reject]);\n if (!currencySupportEnabled || currencyRatesLoaded) {\n processBidResponseQueue();\n }\n});\n\nfunction rejectOnAuctionTimeout({auctionId}) {\n bidResponseQueue = bidResponseQueue.filter(([fn, ctx, adUnitCode, bid, reject]) => {\n if (bid.auctionId === auctionId) {\n reject(REJECTION_REASON.CANNOT_CONVERT_CURRENCY)\n } else {\n return true;\n }\n });\n}\n\nfunction processBidResponseQueue() {\n while (bidResponseQueue.length > 0) {\n const [fn, ctx, adUnitCode, bid, reject] = bidResponseQueue.shift();\n if (bid !== undefined && 'currency' in bid && 'cpm' in bid) {\n const fromCurrency = bid.currency;\n try {\n const conversion = getCurrencyConversion(fromCurrency);\n if (conversion !== 1) {\n bid.cpm = (parseFloat(bid.cpm) * conversion).toFixed(4);\n bid.currency = adServerCurrency;\n }\n } catch (e) {\n logWarn('getCurrencyConversion threw error: ', e);\n reject(REJECTION_REASON.CANNOT_CONVERT_CURRENCY);\n continue;\n }\n }\n fn.call(ctx, adUnitCode, bid, reject);\n }\n responseReady.resolve();\n}\n\nfunction getCurrencyConversion(fromCurrency, toCurrency = adServerCurrency) {\n var conversionRate = null;\n var rates;\n const cacheKey = `${fromCurrency}->${toCurrency}`;\n if (cacheKey in conversionCache) {\n conversionRate = conversionCache[cacheKey];\n logMessage('Using conversionCache value ' + conversionRate + ' for ' + cacheKey);\n } else if (currencySupportEnabled === false) {\n if (fromCurrency === 'USD') {\n conversionRate = 1;\n } else {\n throw new Error('Prebid currency support has not been enabled and fromCurrency is not USD');\n }\n } else if (fromCurrency === toCurrency) {\n conversionRate = 1;\n } else {\n if (fromCurrency in currencyRates.conversions) {\n // using direct conversion rate from fromCurrency to toCurrency\n rates = currencyRates.conversions[fromCurrency];\n if (!(toCurrency in rates)) {\n // bid should fail, currency is not supported\n throw new Error('Specified adServerCurrency in config \\'' + toCurrency + '\\' not found in the currency rates file');\n }\n conversionRate = rates[toCurrency];\n logInfo('getCurrencyConversion using direct ' + fromCurrency + ' to ' + toCurrency + ' conversionRate ' + conversionRate);\n } else if (toCurrency in currencyRates.conversions) {\n // using reciprocal of conversion rate from toCurrency to fromCurrency\n rates = currencyRates.conversions[toCurrency];\n if (!(fromCurrency in rates)) {\n // bid should fail, currency is not supported\n throw new Error('Specified fromCurrency \\'' + fromCurrency + '\\' not found in the currency rates file');\n }\n conversionRate = roundFloat(1 / rates[fromCurrency], CURRENCY_RATE_PRECISION);\n logInfo('getCurrencyConversion using reciprocal ' + fromCurrency + ' to ' + toCurrency + ' conversionRate ' + conversionRate);\n } else {\n // first defined currency base used as intermediary\n var anyBaseCurrency = Object.keys(currencyRates.conversions)[0];\n\n if (!(fromCurrency in currencyRates.conversions[anyBaseCurrency])) {\n // bid should fail, currency is not supported\n throw new Error('Specified fromCurrency \\'' + fromCurrency + '\\' not found in the currency rates file');\n }\n var toIntermediateConversionRate = 1 / currencyRates.conversions[anyBaseCurrency][fromCurrency];\n\n if (!(toCurrency in currencyRates.conversions[anyBaseCurrency])) {\n // bid should fail, currency is not supported\n throw new Error('Specified adServerCurrency in config \\'' + toCurrency + '\\' not found in the currency rates file');\n }\n var fromIntermediateConversionRate = currencyRates.conversions[anyBaseCurrency][toCurrency];\n\n conversionRate = roundFloat(toIntermediateConversionRate * fromIntermediateConversionRate, CURRENCY_RATE_PRECISION);\n logInfo('getCurrencyConversion using intermediate ' + fromCurrency + ' thru ' + anyBaseCurrency + ' to ' + toCurrency + ' conversionRate ' + conversionRate);\n }\n }\n if (!(cacheKey in conversionCache)) {\n logMessage('Adding conversionCache value ' + conversionRate + ' for ' + cacheKey);\n conversionCache[cacheKey] = conversionRate;\n }\n return conversionRate;\n}\n\nfunction roundFloat(num, dec) {\n var d: any = 1;\n for (let i = 0; i < dec; i++) {\n d += '0';\n }\n return Math.round(num * d) / d;\n}\n\nexport function setOrtbCurrency(ortbRequest, bidderRequest, context) {\n if (currencySupportEnabled) {\n ortbRequest.cur = ortbRequest.cur || [context.currency || adServerCurrency];\n }\n}\n\nregisterOrtbProcessor({type: REQUEST, name: 'currency', fn: setOrtbCurrency});\n\nfunction enrichFPDHook(next, fpd) {\n return next(fpd.then(ortb2 => {\n deepSetValue(ortb2, 'ext.prebid.adServerCurrency', adServerCurrency);\n return ortb2;\n }))\n}\n\nexport const requestBidsHook = timedAuctionHook('currency', function requestBidsHook(fn, reqBidsConfigObj) {\n const continueAuction = ((that) => () => fn.call(that, reqBidsConfigObj))(this);\n\n if (!currencyRatesLoaded && auctionDelay > 0) {\n delayedAuctions.submit(auctionDelay, continueAuction, () => {\n logWarn(`${MODULE_NAME}: Fetch attempt did not return in time for auction ${reqBidsConfigObj.auctionId}`)\n continueAuction();\n });\n } else {\n continueAuction();\n }\n});\n"],"mappings":"AAAA,SAAQA,cAAc,IAAIC,IAAI,QAAO,wBAAwB;AAA7D,SAAQC,YAAY,EAAEC,QAAQ,EAAEC,OAAO,EAAEC,UAAU,EAAEC,OAAO,QAAO,iBAAiB;AACpF,SAAQC,SAAS,QAAO,wBAAwB;AAChD,SAASC,MAAM,EAAEC,gBAAgB,QAAQ,qBAAqB;AAC9D,SAAQC,IAAI,QAAO,gBAAgB;AACnC,SAAQC,MAAM,QAAO,kBAAkB;AACvC,SAAQC,OAAO,QAAO,gBAAgB;AACtC,SAAQC,KAAK,QAAO,yBAAyB;AAC7C,SAAQC,qBAAqB,EAAEC,OAAO,QAAO,oBAAoB;AACjE,SAAQC,gBAAgB,EAAEC,oBAAoB,QAAO,6BAA6B;AAClF,SAAQC,EAAE,IAAIC,OAAO,EAAEC,GAAG,IAAIC,QAAQ,QAAO,kBAAkB;AAC/D,SAASC,SAAS,QAAQ,0BAA0B;AACpD,SAASC,YAAY,QAAQ,2CAA2C;AAExE,SAAQC,YAAY,QAAO,kBAAkB;AAE7C,MAAMC,yBAAyB,GAAG,+EAA+E;AACjH,MAAMC,uBAAuB,GAAG,CAAC;AACjC,MAAMC,WAAW,GAAG,UAAU;AAE9B,IAAIC,QAAQ;AACZ,IAAIC,gBAAgB,GAAG,EAAE;AACzB,IAAIC,eAAe,GAAG,CAAC,CAAC;AACxB,IAAIC,mBAAmB,GAAG,KAAK;AAC/B,IAAIC,yBAAyB,GAAG,IAAI;AACpC,IAAIC,gBAAgB,GAAG,KAAK;AAE5B,OAAO,IAAIC,sBAAsB,GAAG,KAAK;AACzC,OAAO,IAAIC,aAAa,GAAG,CAAC,CAAQ;AACpC,IAAIC,qBAAqB,GAAG,CAAC,CAAC;AAC9B,IAAIC,YAAY;AAEhB,OAAO,IAAIC,aAAa,GAAGzB,KAAK,CAAO,CAAC;AAExC,MAAM0B,eAAe,GAAGhB,YAAY,CAAC,CAAC;AACtC,IAAIiB,YAAY,GAAG,CAAC;AAwDpB,OAAO,SAASC,SAASA,CAAC9B,MAAsB,EAAE;EAChDiB,QAAQ,GAAGH,yBAAyB;EAEpC,IAAId,MAAM,CAAC+B,KAAK,KAAK,IAAI,IAAI,OAAO/B,MAAM,CAAC+B,KAAK,KAAK,QAAQ,EAAE;IAC7DP,aAAa,CAACQ,WAAW,GAAGhC,MAAM,CAAC+B,KAAK;IACxCX,mBAAmB,GAAG,IAAI;IAC1BC,yBAAyB,GAAG,KAAK,CAAC,CAAC;EACrC;EAEA,IAAIrB,MAAM,CAAC0B,YAAY,KAAK,IAAI,IAAI,OAAO1B,MAAM,CAAC0B,YAAY,KAAK,QAAQ,EAAE;IAC3EA,YAAY,GAAG1B,MAAM,CAAC0B,YAAY;;IAElC;IACAF,aAAa,CAACQ,WAAW,GAAGN,YAAY;IACxCN,mBAAmB,GAAG,IAAI;EAC5B;EAEA,IAAI,OAAOpB,MAAM,CAACsB,gBAAgB,KAAK,QAAQ,EAAE;IAC/CO,YAAY,GAAG7B,MAAM,CAAC6B,YAAY;IAClCpC,OAAO,CAAC,2BAA2B,EAAEO,MAAM,CAAC;IAE5CsB,gBAAgB,GAAGtB,MAAM,CAACsB,gBAAgB;IAC1C,IAAItB,MAAM,CAACiC,kBAAkB,EAAE;MAC7BxC,OAAO,CAAC,6CAA6C,EAAEO,MAAM,CAACiC,kBAAkB,CAAC;MACjFhB,QAAQ,GAAGjB,MAAM,CAACiC,kBAAkB;IACtC;;IAEA;IACA;IACA;IACA;IACA,MAAMC,aAAa,GAAGjB,QAAQ,CAACkB,OAAO,CAAC,WAAW,CAAC;IACnD,IAAID,aAAa,KAAK,CAAC,CAAC,EAAE;MACxB;MACA,MAAME,CAAC,GAAG,IAAIC,IAAI,CAAC,CAAC;MACpB,IAAIC,KAAK,GAAG,GAAGF,CAAC,CAACG,QAAQ,CAAC,CAAC,GAAG,CAAC,EAAE;MACjC,IAAIC,GAAG,GAAG,GAAGJ,CAAC,CAACK,OAAO,CAAC,CAAC,EAAE;MAC1B,IAAIH,KAAK,CAACI,MAAM,GAAG,CAAC,EAAEJ,KAAK,GAAG,IAAIA,KAAK,EAAE;MACzC,IAAIE,GAAG,CAACE,MAAM,GAAG,CAAC,EAAEF,GAAG,GAAG,IAAIA,GAAG,EAAE;MACnC,MAAMG,UAAU,GAAG,GAAGP,CAAC,CAACQ,WAAW,CAAC,CAAC,GAAGN,KAAK,GAAGE,GAAG,EAAE;;MAErD;MACAvB,QAAQ,GAAG,GAAGA,QAAQ,CAAC4B,SAAS,CAAC,CAAC,EAAEX,aAAa,CAAC,GAAGS,UAAU,GAAG1B,QAAQ,CAAC4B,SAAS,CAACX,aAAa,GAAG,CAAC,EAAEjB,QAAQ,CAACyB,MAAM,CAAC,EAAE;IAC5H;IAEAI,YAAY,CAAC,CAAC;EAChB,CAAC,MAAM;IACL;IACAjB,YAAY,GAAG,CAAC;IAChBpC,OAAO,CAAC,4BAA4B,CAAC;IACrCsD,aAAa,CAAC,CAAC;EACjB;EACA,IAAI,OAAO/C,MAAM,CAACyB,qBAAqB,KAAK,QAAQ,EAAE;IACpDA,qBAAqB,GAAGzB,MAAM,CAACyB,qBAAqB;EACtD;AACF;AACAzB,MAAM,CAACgD,SAAS,CAAC,UAAU,EAAEhD,MAAM,IAAI8B,SAAS,CAAC9B,MAAM,CAACiD,QAAQ,CAAC,CAAC;AAElE,SAASC,kBAAkBA,CAACC,GAAG,EAAE;EAC/B,IAAIzB,YAAY,EAAE;IAChB/B,OAAO,CAACwD,GAAG,CAAC;IACZxD,OAAO,CAAC,sEAAsE,CAAC;EACjF,CAAC,MAAM;IACLH,QAAQ,CAAC2D,GAAG,CAAC;EACf;AACF;AAEA,SAASC,SAASA,CAAA,EAAG;EACnB,IAAI/B,yBAAyB,EAAE;IAC7BA,yBAAyB,GAAG,KAAK;IACjCD,mBAAmB,GAAG,KAAK;IAC3BrB,IAAI,CAACkB,QAAQ,EACX;MACEoC,OAAO,EAAE,SAAAA,CAAUC,QAAQ,EAAE;QAC3B,IAAI;UACF9B,aAAa,GAAG+B,IAAI,CAACC,KAAK,CAACF,QAAQ,CAAC;UACpC7D,OAAO,CAAC,uBAAuB,GAAG8D,IAAI,CAACE,SAAS,CAACjC,aAAa,CAAC,CAAC;UAChEL,eAAe,GAAG,CAAC,CAAC;UACpBC,mBAAmB,GAAG,IAAI;UAC1BsC,uBAAuB,CAAC,CAAC;UACzB9B,eAAe,CAAC+B,MAAM,CAAC,CAAC;QAC1B,CAAC,CAAC,OAAOC,CAAC,EAAE;UACVV,kBAAkB,CAAC,0CAA0C,GAAGI,QAAQ,CAAC;QAC3E;MACF,CAAC;MACDO,KAAK,EAAE,SAAAA,CAAUC,GAAG,EAAE;QACpBZ,kBAAkB,CAACY,GAAG,CAAC;QACvB1C,mBAAmB,GAAG,IAAI;QAC1BsC,uBAAuB,CAAC,CAAC;QACzB9B,eAAe,CAAC+B,MAAM,CAAC,CAAC;QACxBtC,yBAAyB,GAAG,IAAI;MAClC;IACF,CACF,CAAC;EACH,CAAC,MAAM;IACLqC,uBAAuB,CAAC,CAAC;EAC3B;AACF;AAQA;AACA;AACA;AACA,SAASK,eAAeA,CAACC,GAAG,EAAEC,YAAY,EAAEC,UAAU,EAAE;EACtD,OAAOC,UAAU,CAACH,GAAG,CAAC,GAAGI,qBAAqB,CAACH,YAAY,EAAEC,UAAU,CAAC;AAC1E;AAEA,SAASpB,YAAYA,CAAA,EAAG;EACtB3B,eAAe,GAAG,CAAC,CAAC;EACpB,IAAI,CAACI,sBAAsB,EAAE;IAC3BA,sBAAsB,GAAG,IAAI;IAC7BV,YAAY,CAAC,iBAAiB,EAAEkD,eAAe,EAAE,KAAK,CAAC;IACvD;IACA9D,OAAO,CAAC,gBAAgB,CAAC,CAACoE,MAAM,CAACC,kBAAkB,EAAE,GAAG,CAAC;IACzDrE,OAAO,CAAC,gBAAgB,CAAC,CAACoE,MAAM,CAACE,kBAAkB,CAAC;IACpD5D,SAAS,CAAC0D,MAAM,CAACG,aAAa,CAAC;IAC/BvE,OAAO,CAAC,aAAa,CAAC,CAACoE,MAAM,CAACI,eAAe,EAAE,EAAE,CAAC;IAClDjE,OAAO,CAACX,MAAM,CAAC6E,eAAe,EAAEC,sBAAsB,CAAC;IACvDnE,OAAO,CAACX,MAAM,CAAC+E,YAAY,EAAExB,SAAS,CAAC;IACvCA,SAAS,CAAC,CAAC;EACb;AACF;AAEA,OAAO,SAASL,aAAaA,CAAA,EAAG;EAC9B,IAAIxB,sBAAsB,EAAE;IAC1BtB,OAAO,CAAC,gBAAgB,CAAC,CAAC4E,QAAQ,CAAC;MAACC,IAAI,EAAER;IAAkB,CAAC,CAAC,CAACS,MAAM,CAAC,CAAC;IACvE9E,OAAO,CAAC,gBAAgB,CAAC,CAAC4E,QAAQ,CAAC;MAACC,IAAI,EAAEP;IAAkB,CAAC,CAAC,CAACQ,MAAM,CAAC,CAAC;IACvEpE,SAAS,CAACkE,QAAQ,CAAC;MAACC,IAAI,EAAEN;IAAa,CAAC,CAAC,CAACO,MAAM,CAAC,CAAC;IAClD9E,OAAO,CAAC,aAAa,CAAC,CAAC4E,QAAQ,CAAC;MAACC,IAAI,EAAEL;IAAe,CAAC,CAAC,CAACM,MAAM,CAAC,CAAC;IACjErE,QAAQ,CAACb,MAAM,CAAC6E,eAAe,EAAEC,sBAAsB,CAAC;IACxDjE,QAAQ,CAACb,MAAM,CAAC+E,YAAY,EAAExB,SAAS,CAAC;IACxC,OAAOxD,SAAS,CAAC,CAAC,CAACmE,eAAe;IAElCzC,gBAAgB,GAAG,KAAK;IACxBH,eAAe,GAAG,CAAC,CAAC;IACpBI,sBAAsB,GAAG,KAAK;IAC9BH,mBAAmB,GAAG,KAAK;IAC3BC,yBAAyB,GAAG,IAAI;IAChCG,aAAa,GAAG,CAAC,CAAC;IAClBC,qBAAqB,GAAG,CAAC,CAAC;IAC1BE,aAAa,GAAGzB,KAAK,CAAC,CAAC;EACzB;AACF;AAEA,SAASqE,kBAAkBA,CAACS,IAAI,EAAEC,KAAK,EAAE;EACvCD,IAAI,CAACC,KAAK,CAACC,IAAI,CAAC,MAAMvD,aAAa,CAACwD,OAAO,CAAC,CAAC;AAC/C;AAYA,OAAO,MAAMb,kBAAkB,GAAGhE,oBAAoB,CAAC,UAAU,EAAE,SAASgE,kBAAkBA,CAACc,EAAE,EAAEC,UAAU,EAAEC,GAAG,EAAEC,MAAM,EAAE;EAC1H,IAAI,CAACD,GAAG,EAAE;IACR,OAAOF,EAAE,CAACI,IAAI,CAAC,IAAI,EAAEH,UAAU,EAAEC,GAAG,EAAEC,MAAM,CAAC,CAAC,CAAC;EACjD;EAEA,MAAME,MAAM,GAAGH,GAAG,CAACI,UAAU,IAAIJ,GAAG,CAACG,MAAM;EAC3C,IAAIhE,qBAAqB,CAACgE,MAAM,CAAC,EAAE;IACjC,MAAME,eAAe,GAAGlE,qBAAqB,CAACgE,MAAM,CAAC;IACrD,IAAIH,GAAG,CAACrC,QAAQ,IAAI0C,eAAe,KAAKL,GAAG,CAACrC,QAAQ,EAAE;MACpDtD,OAAO,CAAC,qBAAqB8F,MAAM,KAAKE,eAAe,iCAAiCL,GAAG,CAACrC,QAAQ,GAAG,CAAC;IAC1G,CAAC,MAAM;MACLqC,GAAG,CAACrC,QAAQ,GAAG0C,eAAe;IAChC;EACF;;EAEA;EACA,IAAI,CAACL,GAAG,CAACrC,QAAQ,EAAE;IACjBtD,OAAO,CAAC,oDAAoD,CAAC;IAC7D2F,GAAG,CAACrC,QAAQ,GAAG,KAAK;EACtB;;EAEA;EACAqC,GAAG,CAACM,mBAAmB,GAAG,UAAS1B,UAAU,EAAE;IAC7C,OAAO,CAACC,UAAU,CAAC,IAAI,CAACH,GAAG,CAAC,GAAGI,qBAAqB,CAAC,IAAI,CAACnB,QAAQ,EAAEiB,UAAU,CAAC,EAAE2B,OAAO,CAAC,CAAC,CAAC;EAC7F,CAAC;;EAED;EACA,IAAIP,GAAG,CAACrC,QAAQ,KAAK3B,gBAAgB,EAAE;IACrC,OAAO8D,EAAE,CAACI,IAAI,CAAC,IAAI,EAAEH,UAAU,EAAEC,GAAG,EAAEC,MAAM,CAAC;EAC/C;EACArE,gBAAgB,CAAC4E,IAAI,CAAC,CAACV,EAAE,EAAE,IAAI,EAAEC,UAAU,EAAEC,GAAG,EAAEC,MAAM,CAAC,CAAC;EAC1D,IAAI,CAAChE,sBAAsB,IAAIH,mBAAmB,EAAE;IAClDsC,uBAAuB,CAAC,CAAC;EAC3B;AACF,CAAC,CAAC;AAEF,SAASiB,sBAAsBA,CAAAoB,IAAA,EAAc;EAAA,IAAb;IAACC;EAAS,CAAC,GAAAD,IAAA;EACzC7E,gBAAgB,GAAGA,gBAAgB,CAAC+E,MAAM,CAACC,KAAA,IAAwC;IAAA,IAAvC,CAACd,EAAE,EAAEe,GAAG,EAAEd,UAAU,EAAEC,GAAG,EAAEC,MAAM,CAAC,GAAAW,KAAA;IAC5E,IAAIZ,GAAG,CAACU,SAAS,KAAKA,SAAS,EAAE;MAC/BT,MAAM,CAACzF,gBAAgB,CAACsG,uBAAuB,CAAC;IAClD,CAAC,MAAM;MACL,OAAO,IAAI;IACb;EACF,CAAC,CAAC;AACJ;AAEA,SAAS1C,uBAAuBA,CAAA,EAAG;EACjC,OAAOxC,gBAAgB,CAACwB,MAAM,GAAG,CAAC,EAAE;IAClC,MAAM,CAAC0C,EAAE,EAAEe,GAAG,EAAEd,UAAU,EAAEC,GAAG,EAAEC,MAAM,CAAC,GAAGrE,gBAAgB,CAACmF,KAAK,CAAC,CAAC;IACnE,IAAIf,GAAG,KAAKgB,SAAS,IAAI,UAAU,IAAIhB,GAAG,IAAI,KAAK,IAAIA,GAAG,EAAE;MAC1D,MAAMrB,YAAY,GAAGqB,GAAG,CAACrC,QAAQ;MACjC,IAAI;QACF,MAAMsD,UAAU,GAAGnC,qBAAqB,CAACH,YAAY,CAAC;QACtD,IAAIsC,UAAU,KAAK,CAAC,EAAE;UACpBjB,GAAG,CAACtB,GAAG,GAAG,CAACG,UAAU,CAACmB,GAAG,CAACtB,GAAG,CAAC,GAAGuC,UAAU,EAAEV,OAAO,CAAC,CAAC,CAAC;UACvDP,GAAG,CAACrC,QAAQ,GAAG3B,gBAAgB;QACjC;MACF,CAAC,CAAC,OAAOsC,CAAC,EAAE;QACVjE,OAAO,CAAC,qCAAqC,EAAEiE,CAAC,CAAC;QACjD2B,MAAM,CAACzF,gBAAgB,CAACsG,uBAAuB,CAAC;QAChD;MACF;IACF;IACAhB,EAAE,CAACI,IAAI,CAACW,GAAG,EAAEd,UAAU,EAAEC,GAAG,EAAEC,MAAM,CAAC;EACvC;EACA5D,aAAa,CAAC6E,OAAO,CAAC,CAAC;AACzB;AAEA,SAASpC,qBAAqBA,CAACH,YAAY,EAAiC;EAAA,IAA/BC,UAAU,GAAAuC,SAAA,CAAA/D,MAAA,QAAA+D,SAAA,QAAAH,SAAA,GAAAG,SAAA,MAAGnF,gBAAgB;EACxE,IAAIoF,cAAc,GAAG,IAAI;EACzB,IAAI3E,KAAK;EACT,MAAM4E,QAAQ,GAAG,GAAG1C,YAAY,KAAKC,UAAU,EAAE;EACjD,IAAIyC,QAAQ,IAAIxF,eAAe,EAAE;IAC/BuF,cAAc,GAAGvF,eAAe,CAACwF,QAAQ,CAAC;IAC1CjH,UAAU,CAAC,8BAA8B,GAAGgH,cAAc,GAAG,OAAO,GAAGC,QAAQ,CAAC;EAClF,CAAC,MAAM,IAAIpF,sBAAsB,KAAK,KAAK,EAAE;IAC3C,IAAI0C,YAAY,KAAK,KAAK,EAAE;MAC1ByC,cAAc,GAAG,CAAC;IACpB,CAAC,MAAM;MACL,MAAM,IAAIE,KAAK,CAAC,0EAA0E,CAAC;IAC7F;EACF,CAAC,MAAM,IAAI3C,YAAY,KAAKC,UAAU,EAAE;IACtCwC,cAAc,GAAG,CAAC;EACpB,CAAC,MAAM;IACL,IAAIzC,YAAY,IAAIzC,aAAa,CAACQ,WAAW,EAAE;MAC7C;MACAD,KAAK,GAAGP,aAAa,CAACQ,WAAW,CAACiC,YAAY,CAAC;MAC/C,IAAI,EAAEC,UAAU,IAAInC,KAAK,CAAC,EAAE;QAC1B;QACA,MAAM,IAAI6E,KAAK,CAAC,yCAAyC,GAAG1C,UAAU,GAAG,yCAAyC,CAAC;MACrH;MACAwC,cAAc,GAAG3E,KAAK,CAACmC,UAAU,CAAC;MAClCzE,OAAO,CAAC,qCAAqC,GAAGwE,YAAY,GAAG,MAAM,GAAGC,UAAU,GAAG,kBAAkB,GAAGwC,cAAc,CAAC;IAC3H,CAAC,MAAM,IAAIxC,UAAU,IAAI1C,aAAa,CAACQ,WAAW,EAAE;MAClD;MACAD,KAAK,GAAGP,aAAa,CAACQ,WAAW,CAACkC,UAAU,CAAC;MAC7C,IAAI,EAAED,YAAY,IAAIlC,KAAK,CAAC,EAAE;QAC5B;QACA,MAAM,IAAI6E,KAAK,CAAC,2BAA2B,GAAG3C,YAAY,GAAG,yCAAyC,CAAC;MACzG;MACAyC,cAAc,GAAGG,UAAU,CAAC,CAAC,GAAG9E,KAAK,CAACkC,YAAY,CAAC,EAAElD,uBAAuB,CAAC;MAC7EtB,OAAO,CAAC,yCAAyC,GAAGwE,YAAY,GAAG,MAAM,GAAGC,UAAU,GAAG,kBAAkB,GAAGwC,cAAc,CAAC;IAC/H,CAAC,MAAM;MACL;MACA,IAAII,eAAe,GAAGC,MAAM,CAACC,IAAI,CAACxF,aAAa,CAACQ,WAAW,CAAC,CAAC,CAAC,CAAC;MAE/D,IAAI,EAAEiC,YAAY,IAAIzC,aAAa,CAACQ,WAAW,CAAC8E,eAAe,CAAC,CAAC,EAAE;QACjE;QACA,MAAM,IAAIF,KAAK,CAAC,2BAA2B,GAAG3C,YAAY,GAAG,yCAAyC,CAAC;MACzG;MACA,IAAIgD,4BAA4B,GAAG,CAAC,GAAGzF,aAAa,CAACQ,WAAW,CAAC8E,eAAe,CAAC,CAAC7C,YAAY,CAAC;MAE/F,IAAI,EAAEC,UAAU,IAAI1C,aAAa,CAACQ,WAAW,CAAC8E,eAAe,CAAC,CAAC,EAAE;QAC/D;QACA,MAAM,IAAIF,KAAK,CAAC,yCAAyC,GAAG1C,UAAU,GAAG,yCAAyC,CAAC;MACrH;MACA,IAAIgD,8BAA8B,GAAG1F,aAAa,CAACQ,WAAW,CAAC8E,eAAe,CAAC,CAAC5C,UAAU,CAAC;MAE3FwC,cAAc,GAAGG,UAAU,CAACI,4BAA4B,GAAGC,8BAA8B,EAAEnG,uBAAuB,CAAC;MACnHtB,OAAO,CAAC,2CAA2C,GAAGwE,YAAY,GAAG,QAAQ,GAAG6C,eAAe,GAAG,MAAM,GAAG5C,UAAU,GAAG,kBAAkB,GAAGwC,cAAc,CAAC;IAC9J;EACF;EACA,IAAI,EAAEC,QAAQ,IAAIxF,eAAe,CAAC,EAAE;IAClCzB,UAAU,CAAC,+BAA+B,GAAGgH,cAAc,GAAG,OAAO,GAAGC,QAAQ,CAAC;IACjFxF,eAAe,CAACwF,QAAQ,CAAC,GAAGD,cAAc;EAC5C;EACA,OAAOA,cAAc;AACvB;AAEA,SAASG,UAAUA,CAACM,GAAG,EAAEC,GAAG,EAAE;EAC5B,IAAIhF,CAAM,GAAG,CAAC;EACd,KAAK,IAAIiF,CAAC,GAAG,CAAC,EAAEA,CAAC,GAAGD,GAAG,EAAEC,CAAC,EAAE,EAAE;IAC5BjF,CAAC,IAAI,GAAG;EACV;EACA,OAAOkF,IAAI,CAACC,KAAK,CAACJ,GAAG,GAAG/E,CAAC,CAAC,GAAGA,CAAC;AAChC;AAEA,OAAO,SAASoF,eAAeA,CAACC,WAAW,EAAEC,aAAa,EAAEC,OAAO,EAAE;EACnE,IAAIpG,sBAAsB,EAAE;IAC1BkG,WAAW,CAACG,GAAG,GAAGH,WAAW,CAACG,GAAG,IAAI,CAACD,OAAO,CAAC1E,QAAQ,IAAI3B,gBAAgB,CAAC;EAC7E;AACF;AAEAnB,qBAAqB,CAAC;EAAC0H,IAAI,EAAEzH,OAAO;EAAE0H,IAAI,EAAE,UAAU;EAAE1C,EAAE,EAAEoC;AAAe,CAAC,CAAC;AAE7E,SAAShD,aAAaA,CAACQ,IAAI,EAAE+C,GAAG,EAAE;EAChC,OAAO/C,IAAI,CAAC+C,GAAG,CAAC7C,IAAI,CAAC8C,KAAK,IAAI;IAC5BzI,YAAY,CAACyI,KAAK,EAAE,6BAA6B,EAAE1G,gBAAgB,CAAC;IACpE,OAAO0G,KAAK;EACd,CAAC,CAAC,CAAC;AACL;AAEA,OAAO,MAAMvD,eAAe,GAAGpE,gBAAgB,CAAC,UAAU,EAAE,SAASoE,eAAeA,CAACW,EAAE,EAAE6C,gBAAgB,EAAE;EACzG,MAAMC,eAAe,GAAG,CAAEC,IAAI,IAAK,MAAM/C,EAAE,CAACI,IAAI,CAAC2C,IAAI,EAAEF,gBAAgB,CAAC,EAAE,IAAI,CAAC;EAE/E,IAAI,CAAC7G,mBAAmB,IAAIS,YAAY,GAAG,CAAC,EAAE;IAC5CD,eAAe,CAACwG,MAAM,CAACvG,YAAY,EAAEqG,eAAe,EAAE,MAAM;MAC1DvI,OAAO,CAAC,GAAGqB,WAAW,sDAAsDiH,gBAAgB,CAACjC,SAAS,EAAE,CAAC;MACzGkC,eAAe,CAAC,CAAC;IACnB,CAAC,CAAC;EACJ,CAAC,MAAM;IACLA,eAAe,CAAC,CAAC;EACnB;AACF,CAAC,CAAC;AAhaF5I,IAAI,CAAC,UAAU,CAAC","ignoreList":[]}
@@ -227,7 +227,7 @@ export const spec = {
227
227
  pageViewId: pageViewId,
228
228
  networkBandwidth: getConnectionDownLink(window.navigator),
229
229
  sdk: {
230
- version: "10.2.0"
230
+ version: "10.4.0"
231
231
  },
232
232
  ...extensions
233
233
  };
@@ -1 +1 @@
1
- {"version":3,"file":"cwireBidAdapter.js","names":["registerModule","__r0","registerBidder","getStorageManager","BANNER","generateUUID","getParameterByName","isNumber","logError","logInfo","getBoundingClientRect","hasPurpose1Consent","sendBeacon","isAutoplayEnabled","BIDDER_CODE","CWID_KEY","BID_ENDPOINT","EVENT_ENDPOINT","GVL_ID","pageViewId","storage","bidderCode","slotDimensions","bid","adUnitCode","slotEl","document","getElementById","width","slotW","height","slotH","cssMaxW","style","maxWidth","cssMaxH","maxHeight","cwExt","dimensions","getFeatureFlags","ffParam","split","getRefGroups","groups","getBidFloor","getFloor","floor","currency","mediaType","size","getConnectionDownLink","nav","connection","downlink","toString","getCwid","localStorageIsEnabled","getDataFromLocalStorage","hasCwid","updateCwid","cwid","setDataInLocalStorage","getCwExtension","cwId","cwCreative","cwGroups","cwFeatures","debug","length","refgroups","featureFlags","cwcreative","spec","code","gvlid","supportedMediaTypes","isBidRequestValid","params","domainId","placementId","pageId","buildRequests","validBidRequests","bidderRequest","referrer","refererInfo","page","processed","map","bidFloor","autoplayEnabled","autoplay","extensions","payload","slots","httpRef","networkBandwidth","window","navigator","sdk","version","payloadString","JSON","stringify","method","url","data","interpretResponse","serverResponse","bidRequest","body","bids","_ref","html","rest","ad","onBidWon","event","type","onBidderError","error","getUserSyncs","syncOptions","serverResponses","gdprConsent","uspConsent","syncs","consentString","pixelEnabled","iframeEnabled","push","gdprApplies"],"sourceRoot":"../../..","sources":["modules/cwireBidAdapter.js"],"sourcesContent":["import { registerBidder } from \"../src/adapters/bidderFactory.js\";\nimport { getStorageManager } from \"../src/storageManager.js\";\nimport { BANNER } from \"../src/mediaTypes.js\";\nimport {\n generateUUID,\n getParameterByName,\n isNumber,\n logError,\n logInfo,\n} from \"../src/utils.js\";\nimport { getBoundingClientRect } from \"../libraries/boundingClientRect/boundingClientRect.js\";\nimport { hasPurpose1Consent } from \"../src/utils/gdpr.js\";\nimport { sendBeacon } from \"../src/ajax.js\";\nimport { isAutoplayEnabled } from \"../libraries/autoplayDetection/autoplay.js\";\n\n/**\n * @typedef {import('../src/adapters/bidderFactory.js').BidRequest} BidRequest\n * @typedef {import('../src/adapters/bidderFactory.js').Bid} Bid\n * @typedef {import('../src/adapters/bidderFactory.js').ServerResponse} ServerResponse\n */\n\n// ------------------------------------\nconst BIDDER_CODE = \"cwire\";\nconst CWID_KEY = \"cw_cwid\";\n\nexport const BID_ENDPOINT = \"https://prebid.cwi.re/v1/bid\";\nexport const EVENT_ENDPOINT = \"https://prebid.cwi.re/v1/event\";\nexport const GVL_ID = 1081;\n\n/**\n * Allows limiting ad impressions per site render. Unique per prebid instance ID.\n */\nexport const pageViewId = generateUUID();\n\nexport const storage = getStorageManager({ bidderCode: BIDDER_CODE });\n\n/**\n * Retrieve dimensions and CSS max height/width from a given slot and attach the properties to the bidRequest.\n * @param bid\n * @returns {*&{cwExt: {dimensions: {width: number, height: number}, style: {maxWidth: number, maxHeight: number}}}}\n */\nfunction slotDimensions(bid) {\n const adUnitCode = bid.adUnitCode;\n const slotEl = document.getElementById(adUnitCode);\n\n if (slotEl) {\n logInfo(`Slot element found: ${adUnitCode}`);\n const { width: slotW, height: slotH } = getBoundingClientRect(slotEl);\n const cssMaxW = slotEl.style?.maxWidth;\n const cssMaxH = slotEl.style?.maxHeight;\n logInfo(`Slot dimensions (w/h): ${slotW} / ${slotH}`);\n logInfo(`Slot Styles (maxW/maxH): ${cssMaxW} / ${cssMaxH}`);\n\n bid = {\n ...bid,\n cwExt: {\n dimensions: {\n width: slotW,\n height: slotH,\n },\n style: {\n ...(cssMaxW && {\n maxWidth: cssMaxW,\n }),\n ...(cssMaxH && {\n maxHeight: cssMaxH,\n }),\n },\n },\n };\n }\n return bid;\n}\n\n/**\n * Extracts feature flags from a comma-separated url parameter `cwfeatures`.\n *\n * @returns *[]\n */\nfunction getFeatureFlags() {\n const ffParam = getParameterByName(\"cwfeatures\");\n if (ffParam) {\n return ffParam.split(\",\");\n }\n return [];\n}\n\nfunction getRefGroups() {\n const groups = getParameterByName(\"cwgroups\");\n if (groups) {\n return groups.split(\",\");\n }\n return [];\n}\n\nfunction getBidFloor(bid) {\n if (typeof bid.getFloor !== \"function\") {\n return {};\n }\n\n const floor = bid.getFloor({\n currency: \"USD\",\n mediaType: \"*\",\n size: \"*\",\n });\n\n return floor;\n}\n\n/**\n * Returns the downlink speed of the connection in Mbps or an empty string if not available.\n */\nfunction getConnectionDownLink(nav) {\n return nav && nav.connection && nav.connection.downlink >= 0\n ? nav.connection.downlink.toString()\n : \"\";\n}\n\n/**\n * Reads the CWID from local storage.\n */\nfunction getCwid() {\n return storage.localStorageIsEnabled()\n ? storage.getDataFromLocalStorage(CWID_KEY)\n : null;\n}\n\nfunction hasCwid() {\n return (\n storage.localStorageIsEnabled() && storage.getDataFromLocalStorage(CWID_KEY)\n );\n}\n\n/**\n * Store the CWID to local storage.\n */\nfunction updateCwid(cwid) {\n if (storage.localStorageIsEnabled()) {\n storage.setDataInLocalStorage(CWID_KEY, cwid);\n } else {\n logInfo(`Could not set CWID ${cwid} in localstorage`);\n }\n}\n\n/**\n * Extract and collect cwire specific extensions.\n */\nfunction getCwExtension() {\n const cwId = getCwid();\n const cwCreative = getParameterByName(\"cwcreative\");\n const cwGroups = getRefGroups();\n const cwFeatures = getFeatureFlags();\n // Enable debug flag by passing ?cwdebug=true as url parameter.\n // Note: pbjs_debug=true enables it on prebid level\n // More info: https://docs.prebid.org/troubleshooting/troubleshooting-guide.html#turn-on-prebidjs-debug-messages\n const debug = getParameterByName(\"cwdebug\");\n\n return {\n ...(cwId && {\n cwid: cwId,\n }),\n ...(cwGroups.length > 0 && {\n refgroups: cwGroups,\n }),\n ...(cwFeatures.length > 0 && {\n featureFlags: cwFeatures,\n }),\n ...(cwCreative && {\n cwcreative: cwCreative,\n }),\n ...(debug && {\n debug: true,\n }),\n };\n}\n\nexport const spec = {\n code: BIDDER_CODE,\n gvlid: GVL_ID,\n supportedMediaTypes: [BANNER],\n\n /**\n * Determines whether the given bid request is valid.\n *\n * @param {BidRequest} bid The bid params to validate.\n * @return boolean True if this is a valid bid, and false otherwise.\n */\n isBidRequestValid: function (bid) {\n if (!bid.params?.domainId || !isNumber(bid.params.domainId)) {\n logError(\"domainId not provided or not a number\");\n if (!bid.params?.placementId || !isNumber(bid.params.placementId)) {\n logError(\"placementId not provided or not a number\");\n return false;\n }\n\n if (!bid.params?.pageId || !isNumber(bid.params.pageId)) {\n logError(\"pageId not provided or not a number\");\n return false;\n }\n return true;\n }\n return true;\n },\n\n /**\n * Make a server request from the list of BidRequests.\n *\n * @param {validBidRequests[]} validBidRequests An array of bids.\n * @return ServerRequest Info describing the request to the server.\n */\n buildRequests: function (validBidRequests, bidderRequest) {\n // There are more fields on the refererInfo object\n const referrer = bidderRequest?.refererInfo?.page;\n\n // process bid requests\n const processed = validBidRequests\n .map((bid) => slotDimensions(bid))\n .map((bid) => {\n const bidFloor = getBidFloor(bid);\n return {\n ...bid,\n params: {\n ...bid.params,\n floor: bidFloor,\n },\n };\n })\n .map((bid) => {\n const autoplayEnabled = isAutoplayEnabled();\n return {\n ...bid,\n params: {\n ...bid.params,\n autoplay: autoplayEnabled,\n },\n };\n })\n // Flattens the pageId, domainId and placement Id for backwards compatibility.\n .map((bid) => ({\n ...bid,\n pageId: bid.params?.pageId,\n domainId: bid.params?.domainId,\n placementId: bid.params?.placementId,\n }));\n\n const extensions = getCwExtension();\n const payload = {\n slots: processed,\n httpRef: referrer,\n // TODO: Verify whether the auctionId and the usage of pageViewId make sense.\n pageViewId: pageViewId,\n networkBandwidth: getConnectionDownLink(window.navigator),\n sdk: {\n version: \"$prebid.version$\",\n },\n ...extensions,\n };\n const payloadString = JSON.stringify(payload);\n return {\n method: \"POST\",\n url: BID_ENDPOINT,\n data: payloadString,\n };\n },\n /**\n * Unpack the response from the server into a list of bids.\n *\n * @param {ServerResponse} serverResponse A successful response from the server.\n * @return {Bid[]} An array of bids which were nested inside the server.\n */\n interpretResponse: function (serverResponse, bidRequest) {\n if (!hasCwid()) {\n const cwid = serverResponse.body?.cwid;\n if (cwid) {\n updateCwid(cwid);\n }\n }\n\n // Rename `html` response property to `ad` as used by prebid.\n const bids = serverResponse.body?.bids.map(({ html, ...rest }) => ({\n ...rest,\n ad: html,\n }));\n return bids || [];\n },\n\n onBidWon: function (bid) {\n logInfo(`Bid won.`);\n const event = {\n type: \"BID_WON\",\n payload: {\n bid: bid,\n },\n };\n sendBeacon(EVENT_ENDPOINT, JSON.stringify(event));\n },\n\n onBidderError: function (error, bidderRequest) {\n logInfo(`Bidder error: ${error}`);\n const event = {\n type: \"BID_ERROR\",\n payload: {\n error: error,\n bidderRequest: bidderRequest,\n },\n };\n sendBeacon(EVENT_ENDPOINT, JSON.stringify(event));\n },\n\n getUserSyncs: function (\n syncOptions,\n serverResponses,\n gdprConsent,\n uspConsent\n ) {\n logInfo(\n \"Collecting user-syncs: \",\n JSON.stringify({ syncOptions, gdprConsent, uspConsent, serverResponses })\n );\n\n const syncs = [];\n if (hasPurpose1Consent(gdprConsent) && gdprConsent.consentString) {\n logInfo(\"GDPR purpose 1 consent was given, adding user-syncs\");\n const type = syncOptions.pixelEnabled\n ? \"image\"\n : null ?? syncOptions.iframeEnabled\n ? \"iframe\"\n : null;\n if (type) {\n syncs.push({\n type: type,\n url: `https://ib.adnxs.com/getuid?https://prebid.cwi.re/v1/cookiesync?xandrId=$UID&gdpr=${\n gdprConsent.gdprApplies ? 1 : 0\n }&gdpr_consent=${gdprConsent.consentString}`,\n });\n }\n }\n logInfo(\"Collected user-syncs: \", JSON.stringify({ syncs }));\n return syncs;\n },\n};\nregisterBidder(spec);\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"cwireBidAdapter.js","names":["registerModule","__r0","registerBidder","getStorageManager","BANNER","generateUUID","getParameterByName","isNumber","logError","logInfo","getBoundingClientRect","hasPurpose1Consent","sendBeacon","isAutoplayEnabled","BIDDER_CODE","CWID_KEY","BID_ENDPOINT","EVENT_ENDPOINT","GVL_ID","pageViewId","storage","bidderCode","slotDimensions","bid","adUnitCode","slotEl","document","getElementById","width","slotW","height","slotH","cssMaxW","style","maxWidth","cssMaxH","maxHeight","cwExt","dimensions","getFeatureFlags","ffParam","split","getRefGroups","groups","getBidFloor","getFloor","floor","currency","mediaType","size","getConnectionDownLink","nav","connection","downlink","toString","getCwid","localStorageIsEnabled","getDataFromLocalStorage","hasCwid","updateCwid","cwid","setDataInLocalStorage","getCwExtension","cwId","cwCreative","cwGroups","cwFeatures","debug","length","refgroups","featureFlags","cwcreative","spec","code","gvlid","supportedMediaTypes","isBidRequestValid","params","domainId","placementId","pageId","buildRequests","validBidRequests","bidderRequest","referrer","refererInfo","page","processed","map","bidFloor","autoplayEnabled","autoplay","extensions","payload","slots","httpRef","networkBandwidth","window","navigator","sdk","version","payloadString","JSON","stringify","method","url","data","interpretResponse","serverResponse","bidRequest","body","bids","_ref","html","rest","ad","onBidWon","event","type","onBidderError","error","getUserSyncs","syncOptions","serverResponses","gdprConsent","uspConsent","syncs","consentString","pixelEnabled","iframeEnabled","push","gdprApplies"],"sourceRoot":"../../..","sources":["modules/cwireBidAdapter.js"],"sourcesContent":["import { registerBidder } from \"../src/adapters/bidderFactory.js\";\nimport { getStorageManager } from \"../src/storageManager.js\";\nimport { BANNER } from \"../src/mediaTypes.js\";\nimport {\n generateUUID,\n getParameterByName,\n isNumber,\n logError,\n logInfo,\n} from \"../src/utils.js\";\nimport { getBoundingClientRect } from \"../libraries/boundingClientRect/boundingClientRect.js\";\nimport { hasPurpose1Consent } from \"../src/utils/gdpr.js\";\nimport { sendBeacon } from \"../src/ajax.js\";\nimport { isAutoplayEnabled } from \"../libraries/autoplayDetection/autoplay.js\";\n\n/**\n * @typedef {import('../src/adapters/bidderFactory.js').BidRequest} BidRequest\n * @typedef {import('../src/adapters/bidderFactory.js').Bid} Bid\n * @typedef {import('../src/adapters/bidderFactory.js').ServerResponse} ServerResponse\n */\n\n// ------------------------------------\nconst BIDDER_CODE = \"cwire\";\nconst CWID_KEY = \"cw_cwid\";\n\nexport const BID_ENDPOINT = \"https://prebid.cwi.re/v1/bid\";\nexport const EVENT_ENDPOINT = \"https://prebid.cwi.re/v1/event\";\nexport const GVL_ID = 1081;\n\n/**\n * Allows limiting ad impressions per site render. Unique per prebid instance ID.\n */\nexport const pageViewId = generateUUID();\n\nexport const storage = getStorageManager({ bidderCode: BIDDER_CODE });\n\n/**\n * Retrieve dimensions and CSS max height/width from a given slot and attach the properties to the bidRequest.\n * @param bid\n * @returns {*&{cwExt: {dimensions: {width: number, height: number}, style: {maxWidth: number, maxHeight: number}}}}\n */\nfunction slotDimensions(bid) {\n const adUnitCode = bid.adUnitCode;\n const slotEl = document.getElementById(adUnitCode);\n\n if (slotEl) {\n logInfo(`Slot element found: ${adUnitCode}`);\n const { width: slotW, height: slotH } = getBoundingClientRect(slotEl);\n const cssMaxW = slotEl.style?.maxWidth;\n const cssMaxH = slotEl.style?.maxHeight;\n logInfo(`Slot dimensions (w/h): ${slotW} / ${slotH}`);\n logInfo(`Slot Styles (maxW/maxH): ${cssMaxW} / ${cssMaxH}`);\n\n bid = {\n ...bid,\n cwExt: {\n dimensions: {\n width: slotW,\n height: slotH,\n },\n style: {\n ...(cssMaxW && {\n maxWidth: cssMaxW,\n }),\n ...(cssMaxH && {\n maxHeight: cssMaxH,\n }),\n },\n },\n };\n }\n return bid;\n}\n\n/**\n * Extracts feature flags from a comma-separated url parameter `cwfeatures`.\n *\n * @returns *[]\n */\nfunction getFeatureFlags() {\n const ffParam = getParameterByName(\"cwfeatures\");\n if (ffParam) {\n return ffParam.split(\",\");\n }\n return [];\n}\n\nfunction getRefGroups() {\n const groups = getParameterByName(\"cwgroups\");\n if (groups) {\n return groups.split(\",\");\n }\n return [];\n}\n\nfunction getBidFloor(bid) {\n if (typeof bid.getFloor !== \"function\") {\n return {};\n }\n\n const floor = bid.getFloor({\n currency: \"USD\",\n mediaType: \"*\",\n size: \"*\",\n });\n\n return floor;\n}\n\n/**\n * Returns the downlink speed of the connection in Mbps or an empty string if not available.\n */\nfunction getConnectionDownLink(nav) {\n return nav && nav.connection && nav.connection.downlink >= 0\n ? nav.connection.downlink.toString()\n : \"\";\n}\n\n/**\n * Reads the CWID from local storage.\n */\nfunction getCwid() {\n return storage.localStorageIsEnabled()\n ? storage.getDataFromLocalStorage(CWID_KEY)\n : null;\n}\n\nfunction hasCwid() {\n return (\n storage.localStorageIsEnabled() && storage.getDataFromLocalStorage(CWID_KEY)\n );\n}\n\n/**\n * Store the CWID to local storage.\n */\nfunction updateCwid(cwid) {\n if (storage.localStorageIsEnabled()) {\n storage.setDataInLocalStorage(CWID_KEY, cwid);\n } else {\n logInfo(`Could not set CWID ${cwid} in localstorage`);\n }\n}\n\n/**\n * Extract and collect cwire specific extensions.\n */\nfunction getCwExtension() {\n const cwId = getCwid();\n const cwCreative = getParameterByName(\"cwcreative\");\n const cwGroups = getRefGroups();\n const cwFeatures = getFeatureFlags();\n // Enable debug flag by passing ?cwdebug=true as url parameter.\n // Note: pbjs_debug=true enables it on prebid level\n // More info: https://docs.prebid.org/troubleshooting/troubleshooting-guide.html#turn-on-prebidjs-debug-messages\n const debug = getParameterByName(\"cwdebug\");\n\n return {\n ...(cwId && {\n cwid: cwId,\n }),\n ...(cwGroups.length > 0 && {\n refgroups: cwGroups,\n }),\n ...(cwFeatures.length > 0 && {\n featureFlags: cwFeatures,\n }),\n ...(cwCreative && {\n cwcreative: cwCreative,\n }),\n ...(debug && {\n debug: true,\n }),\n };\n}\n\nexport const spec = {\n code: BIDDER_CODE,\n gvlid: GVL_ID,\n supportedMediaTypes: [BANNER],\n\n /**\n * Determines whether the given bid request is valid.\n *\n * @param {BidRequest} bid The bid params to validate.\n * @return boolean True if this is a valid bid, and false otherwise.\n */\n isBidRequestValid: function (bid) {\n if (!bid.params?.domainId || !isNumber(bid.params.domainId)) {\n logError(\"domainId not provided or not a number\");\n if (!bid.params?.placementId || !isNumber(bid.params.placementId)) {\n logError(\"placementId not provided or not a number\");\n return false;\n }\n\n if (!bid.params?.pageId || !isNumber(bid.params.pageId)) {\n logError(\"pageId not provided or not a number\");\n return false;\n }\n return true;\n }\n return true;\n },\n\n /**\n * Make a server request from the list of BidRequests.\n *\n * @param {validBidRequests[]} validBidRequests An array of bids.\n * @return ServerRequest Info describing the request to the server.\n */\n buildRequests: function (validBidRequests, bidderRequest) {\n // There are more fields on the refererInfo object\n const referrer = bidderRequest?.refererInfo?.page;\n\n // process bid requests\n const processed = validBidRequests\n .map((bid) => slotDimensions(bid))\n .map((bid) => {\n const bidFloor = getBidFloor(bid);\n return {\n ...bid,\n params: {\n ...bid.params,\n floor: bidFloor,\n },\n };\n })\n .map((bid) => {\n const autoplayEnabled = isAutoplayEnabled();\n return {\n ...bid,\n params: {\n ...bid.params,\n autoplay: autoplayEnabled,\n },\n };\n })\n // Flattens the pageId, domainId and placement Id for backwards compatibility.\n .map((bid) => ({\n ...bid,\n pageId: bid.params?.pageId,\n domainId: bid.params?.domainId,\n placementId: bid.params?.placementId,\n }));\n\n const extensions = getCwExtension();\n const payload = {\n slots: processed,\n httpRef: referrer,\n // TODO: Verify whether the auctionId and the usage of pageViewId make sense.\n pageViewId: pageViewId,\n networkBandwidth: getConnectionDownLink(window.navigator),\n sdk: {\n version: \"$prebid.version$\",\n },\n ...extensions,\n };\n const payloadString = JSON.stringify(payload);\n return {\n method: \"POST\",\n url: BID_ENDPOINT,\n data: payloadString,\n };\n },\n /**\n * Unpack the response from the server into a list of bids.\n *\n * @param {ServerResponse} serverResponse A successful response from the server.\n * @return {Bid[]} An array of bids which were nested inside the server.\n */\n interpretResponse: function (serverResponse, bidRequest) {\n if (!hasCwid()) {\n const cwid = serverResponse.body?.cwid;\n if (cwid) {\n updateCwid(cwid);\n }\n }\n\n // Rename `html` response property to `ad` as used by prebid.\n const bids = serverResponse.body?.bids.map(({ html, ...rest }) => ({\n ...rest,\n ad: html,\n }));\n return bids || [];\n },\n\n onBidWon: function (bid) {\n logInfo(`Bid won.`);\n const event = {\n type: \"BID_WON\",\n payload: {\n bid: bid,\n },\n };\n sendBeacon(EVENT_ENDPOINT, JSON.stringify(event));\n },\n\n onBidderError: function (error, bidderRequest) {\n logInfo(`Bidder error: ${error}`);\n const event = {\n type: \"BID_ERROR\",\n payload: {\n error: error,\n bidderRequest: bidderRequest,\n },\n };\n sendBeacon(EVENT_ENDPOINT, JSON.stringify(event));\n },\n\n getUserSyncs: function (\n syncOptions,\n serverResponses,\n gdprConsent,\n uspConsent\n ) {\n logInfo(\n \"Collecting user-syncs: \",\n JSON.stringify({ syncOptions, gdprConsent, uspConsent, serverResponses })\n );\n\n const syncs = [];\n if (hasPurpose1Consent(gdprConsent) && gdprConsent.consentString) {\n logInfo(\"GDPR purpose 1 consent was given, adding user-syncs\");\n const type = syncOptions.pixelEnabled\n ? \"image\"\n : null ?? syncOptions.iframeEnabled\n ? \"iframe\"\n : null;\n if (type) {\n syncs.push({\n type: type,\n url: `https://ib.adnxs.com/getuid?https://prebid.cwi.re/v1/cookiesync?xandrId=$UID&gdpr=${\n gdprConsent.gdprApplies ? 1 : 0\n }&gdpr_consent=${gdprConsent.consentString}`,\n });\n }\n }\n logInfo(\"Collected user-syncs: \", JSON.stringify({ syncs }));\n return syncs;\n },\n};\nregisterBidder(spec);\n"],"mappings":"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","ignoreList":[]}
@@ -174,7 +174,7 @@ export const spec = {
174
174
  method: 'POST',
175
175
  url: 'https://pb.dmxleo.com',
176
176
  data: {
177
- pbv: "10.2.0",
177
+ pbv: "10.4.0",
178
178
  ortb: ortbData,
179
179
  bidder_request: {
180
180
  gdprConsent: {
@@ -1 +1 @@
1
- {"version":3,"file":"dailymotionBidAdapter.js","names":["registerModule","__r0","registerBidder","ortbConverter","VIDEO","deepAccess","config","userSync","DAILYMOTION_VENDOR_ID","dailymotionOrtbConverter","context","netRevenue","ttl","imp","buildImp","bidRequest","getFloor","size","w","h","floorInfo","currency","mediaType","floor","bidfloor","bidfloorcur","isArrayFilled","_array","Array","isArray","length","getVideoMetadata","bidderRequest","videoParams","siteOrAppObj","contentObj","contentCattax","isContentCattaxV1","isContentCattaxV2","includes","parsedContentData","iabcat1","iabcat2","forEach","data","ext","segtax","segment","id","videoMetadata","description","duration","cat","Object","keys","lang","livestream","private","tags","title","url","topics","isCreatedForKids","siteOrAppCat","siteOrAppContentCat","videoViewsInSession","autoplay","playerName","playerVolume","isUserSyncEnabled","syncEnabled","getConfig","canSyncWithIframe","canBidderRegisterSync","canSyncWithPixel","spec","code","gvlid","supportedMediaTypes","isBidRequestValid","bid","params","mediaTypes","isInstream","placement","plcmt","apiKey","buildRequests","validBidRequests","arguments","undefined","ortbData","toORTB","bidRequests","allowCookieReading","every","v","map","method","pbv","ortb","bidder_request","gdprConsent","apiVersion","consentString","gdprApplies","refererInfo","page","uspConsent","gppConsent","gppString","applicableSections","api_key","ts","dmTs","userSyncEnabled","request","adUnitCode","auctionId","bidId","video","api","mimes","minduration","maxduration","playbackmethod","protocols","skip","skipafter","skipmin","startdelay","sizes","video_metadata","options","withCredentials","crossOrigin","interpretResponse","serverResponse","body","cpm","getUserSyncs","syncOptions","serverResponses","iframeEnabled","pixelEnabled","iframeSyncs","pixelSyncs","response","userSyncs","syncUrl","type","push"],"sourceRoot":"../../..","sources":["modules/dailymotionBidAdapter.js"],"sourcesContent":["import { registerBidder } from '../src/adapters/bidderFactory.js';\nimport { ortbConverter } from '../libraries/ortbConverter/converter.js';\nimport { VIDEO } from '../src/mediaTypes.js';\nimport { deepAccess } from '../src/utils.js';\nimport { config } from '../src/config.js';\nimport { userSync } from '../src/userSync.js';\n\n/**\n * @typedef {import('../src/adapters/bidderFactory.js').BidRequest} BidRequest\n * @typedef {import('../src/adapters/bidderFactory.js').BidderRequest} BidderRequest\n * @typedef {import('../src/adapters/bidderFactory.js').Bid} Bid\n */\n\nconst DAILYMOTION_VENDOR_ID = 573;\n\nconst dailymotionOrtbConverter = ortbConverter({\n context: {\n netRevenue: true,\n ttl: 600,\n },\n imp(buildImp, bidRequest, context) {\n const imp = buildImp(bidRequest, context);\n\n if (typeof bidRequest.getFloor === 'function') {\n const size = imp.w > 0 && imp.h > 0 ? [imp.w, imp.h] : '*';\n\n const floorInfo = bidRequest.getFloor({\n currency: 'USD',\n mediaType: 'video', // or '*' for all the mediaType\n size\n }) || {};\n\n if (floorInfo.floor && floorInfo.currency) {\n imp.bidfloor = floorInfo.floor;\n imp.bidfloorcur = floorInfo.currency;\n }\n }\n\n return imp;\n },\n});\n\nfunction isArrayFilled (_array) {\n return _array && Array.isArray(_array) && _array.length > 0;\n}\n\n/**\n * Get video metadata from bid request\n *\n * @param {BidRequest} bidRequest A valid bid requests that should be sent to the Server.\n * @return video metadata\n */\nfunction getVideoMetadata(bidRequest, bidderRequest) {\n const videoParams = deepAccess(bidRequest, 'params.video', {});\n\n // As per oRTB 2.5 spec, \"A bid request must not contain both an App and a Site object.\"\n // See section 3.2.14\n const siteOrAppObj = deepAccess(bidderRequest, 'ortb2.site')\n ? deepAccess(bidderRequest, 'ortb2.site')\n : deepAccess(bidderRequest, 'ortb2.app');\n // Content object is either from Object: Site or Object: App\n const contentObj = deepAccess(siteOrAppObj, 'content')\n\n const contentCattax = deepAccess(contentObj, 'cattax', 0);\n const isContentCattaxV1 = contentCattax === 1;\n const isContentCattaxV2 = [2, 5, 6].includes(contentCattax);\n\n const parsedContentData = {\n // Store as object keys to ensure uniqueness\n iabcat1: {},\n iabcat2: {},\n };\n\n deepAccess(contentObj, 'data', []).forEach((data) => {\n if ([4, 5, 6, 7].includes(data?.ext?.segtax)) {\n (Array.isArray(data.segment) ? data.segment : []).forEach((segment) => {\n if (typeof segment.id === 'string') {\n // See https://docs.prebid.org/features/firstPartyData.html#segments-and-taxonomy\n // Only take IAB cats of taxonomy V1\n if (data.ext.segtax === 4) {\n parsedContentData.iabcat1[segment.id] = 1;\n } else {\n // Only take IAB cats of taxonomy V2 or higher\n parsedContentData.iabcat2[segment.id] = 1;\n }\n }\n });\n }\n });\n\n const videoMetadata = {\n description: videoParams.description || '',\n duration: videoParams.duration || deepAccess(contentObj, 'len', 0),\n iabcat1: isArrayFilled(videoParams.iabcat1)\n ? videoParams.iabcat1\n : (isArrayFilled(deepAccess(contentObj, 'cat')) && isContentCattaxV1)\n ? contentObj.cat\n : Object.keys(parsedContentData.iabcat1),\n iabcat2: isArrayFilled(videoParams.iabcat2)\n ? videoParams.iabcat2\n : (isArrayFilled(deepAccess(contentObj, 'cat')) && isContentCattaxV2)\n ? contentObj.cat\n : Object.keys(parsedContentData.iabcat2),\n id: videoParams.id || deepAccess(contentObj, 'id', ''),\n lang: videoParams.lang || deepAccess(contentObj, 'language', ''),\n livestream: typeof videoParams.livestream === 'number'\n ? !!videoParams.livestream\n : !!deepAccess(contentObj, 'livestream', 0),\n private: videoParams.private || false,\n tags: videoParams.tags || deepAccess(contentObj, 'keywords', ''),\n title: videoParams.title || deepAccess(contentObj, 'title', ''),\n url: videoParams.url || deepAccess(contentObj, 'url', ''),\n topics: videoParams.topics || '',\n isCreatedForKids: typeof videoParams.isCreatedForKids === 'boolean'\n ? videoParams.isCreatedForKids\n : null,\n context: {\n siteOrAppCat: deepAccess(siteOrAppObj, 'cat', []),\n siteOrAppContentCat: deepAccess(contentObj, 'cat', []),\n videoViewsInSession: (\n typeof videoParams.videoViewsInSession === 'number' &&\n videoParams.videoViewsInSession >= 0\n )\n ? videoParams.videoViewsInSession\n : null,\n autoplay: typeof videoParams.autoplay === 'boolean'\n ? videoParams.autoplay\n : null,\n playerName: videoParams.playerName || deepAccess(contentObj, 'playerName', ''),\n playerVolume: (\n typeof videoParams.playerVolume === 'number' &&\n videoParams.playerVolume >= 0 &&\n videoParams.playerVolume <= 10\n )\n ? videoParams.playerVolume\n : null,\n },\n };\n\n return videoMetadata;\n}\n\n/**\n * Check if user sync is enabled for Dailymotion\n *\n * @return boolean True if user sync is enabled\n */\nfunction isUserSyncEnabled() {\n const syncEnabled = deepAccess(config.getConfig('userSync'), 'syncEnabled');\n\n if (!syncEnabled) return false;\n\n const canSyncWithIframe = userSync.canBidderRegisterSync('iframe', 'dailymotion');\n const canSyncWithPixel = userSync.canBidderRegisterSync('image', 'dailymotion');\n\n return !!(canSyncWithIframe || canSyncWithPixel);\n}\n\nexport const spec = {\n code: 'dailymotion',\n gvlid: DAILYMOTION_VENDOR_ID,\n supportedMediaTypes: [VIDEO],\n\n /**\n * Determines whether or not the given bid request is valid.\n * The only mandatory parameter for a bid to be valid is the API key.\n * Other parameters are optional.\n *\n * @return boolean True if this is a valid bid, and false otherwise.\n */\n isBidRequestValid: function (bid) {\n if (bid?.params) {\n // We only accept video adUnits\n if (!bid?.mediaTypes?.[VIDEO]) return false;\n\n // As `context`, `placement` & `plcmt` are optional (although recommended)\n // values, we check the 3 of them to see if we are in an instream video context\n const isInstream = bid.mediaTypes[VIDEO].context === 'instream' ||\n bid.mediaTypes[VIDEO].placement === 1 ||\n bid.mediaTypes[VIDEO].plcmt === 1;\n\n // We only accept instream video context\n if (!isInstream) return false;\n\n // We need API key\n return typeof bid.params.apiKey === 'string' && bid.params.apiKey.length > 10;\n }\n\n return false;\n },\n\n /**\n * Make a server request from the list of valid BidRequests (that already passed the isBidRequestValid call)\n *\n * @param {BidRequest[]} validBidRequests A non-empty list of valid bid requests that should be sent to the Server.\n * @param {BidderRequest} bidderRequest\n * @return ServerRequest Info describing the request to the server.\n */\n buildRequests: function(validBidRequests = [], bidderRequest) {\n const ortbData = dailymotionOrtbConverter.toORTB({ bidRequests: validBidRequests, bidderRequest });\n // check consent to be able to read user cookie\n const allowCookieReading =\n // No GDPR applies\n !deepAccess(bidderRequest, 'gdprConsent.gdprApplies') ||\n // OR GDPR applies and we have global consent\n deepAccess(bidderRequest, 'gdprConsent.vendorData.hasGlobalConsent') === true ||\n (\n // Vendor consent\n deepAccess(bidderRequest, `gdprConsent.vendorData.vendor.consents.${DAILYMOTION_VENDOR_ID}`) === true &&\n\n // Purposes with legal basis \"consent\". These are not flexible, so if publisher requires legitimate interest (2) it cancels them\n [1, 3, 4].every(v =>\n deepAccess(bidderRequest, `gdprConsent.vendorData.publisher.restrictions.${v}.${DAILYMOTION_VENDOR_ID}`) !== 0 &&\n deepAccess(bidderRequest, `gdprConsent.vendorData.publisher.restrictions.${v}.${DAILYMOTION_VENDOR_ID}`) !== 2 &&\n deepAccess(bidderRequest, `gdprConsent.vendorData.purpose.consents.${v}`) === true\n ) &&\n\n // Purposes with legal basis \"legitimate interest\" (default) or \"consent\" (when specified as such by publisher)\n [2, 7, 9, 10].every(v =>\n deepAccess(bidderRequest, `gdprConsent.vendorData.publisher.restrictions.${v}.${DAILYMOTION_VENDOR_ID}`) !== 0 &&\n (deepAccess(bidderRequest, `gdprConsent.vendorData.publisher.restrictions.${v}.${DAILYMOTION_VENDOR_ID}`) === 1\n ? deepAccess(bidderRequest, `gdprConsent.vendorData.purpose.consents.${v}`) === true\n : deepAccess(bidderRequest, `gdprConsent.vendorData.purpose.legitimateInterests.${v}`) === true)\n )\n );\n\n return validBidRequests.map(bid => ({\n method: 'POST',\n url: 'https://pb.dmxleo.com',\n data: {\n pbv: '$prebid.version$',\n ortb: ortbData,\n bidder_request: {\n gdprConsent: {\n apiVersion: deepAccess(bidderRequest, 'gdprConsent.apiVersion', 1),\n consentString: deepAccess(bidderRequest, 'gdprConsent.consentString', ''),\n // Cast boolean in any case (eg: if value is int) to ensure type\n gdprApplies: !!deepAccess(bidderRequest, 'gdprConsent.gdprApplies'),\n },\n refererInfo: {\n page: deepAccess(bidderRequest, 'refererInfo.page', ''),\n },\n uspConsent: deepAccess(bidderRequest, 'uspConsent', ''),\n gppConsent: {\n gppString: deepAccess(bidderRequest, 'gppConsent.gppString') ||\n deepAccess(bidderRequest, 'ortb2.regs.gpp', ''),\n applicableSections: deepAccess(bidderRequest, 'gppConsent.applicableSections') ||\n deepAccess(bidderRequest, 'ortb2.regs.gpp_sid', []),\n },\n },\n config: {\n api_key: bid.params.apiKey,\n ts: bid.params.dmTs,\n },\n userSyncEnabled: isUserSyncEnabled(),\n request: {\n adUnitCode: deepAccess(bid, 'adUnitCode', ''),\n auctionId: deepAccess(bid, 'auctionId', ''),\n bidId: deepAccess(bid, 'bidId', ''),\n mediaTypes: {\n video: {\n api: bid.mediaTypes?.[VIDEO]?.api || [],\n mimes: bid.mediaTypes?.[VIDEO]?.mimes || [],\n minduration: bid.mediaTypes?.[VIDEO]?.minduration || 0,\n maxduration: bid.mediaTypes?.[VIDEO]?.maxduration || 0,\n playbackmethod: bid.mediaTypes?.[VIDEO]?.playbackmethod || [],\n plcmt: bid.mediaTypes?.[VIDEO]?.plcmt,\n protocols: bid.mediaTypes?.[VIDEO]?.protocols || [],\n skip: bid.mediaTypes?.[VIDEO]?.skip || 0,\n skipafter: bid.mediaTypes?.[VIDEO]?.skipafter || 0,\n skipmin: bid.mediaTypes?.[VIDEO]?.skipmin || 0,\n startdelay: bid.mediaTypes?.[VIDEO]?.startdelay,\n w: bid.mediaTypes?.[VIDEO]?.w || 0,\n h: bid.mediaTypes?.[VIDEO]?.h || 0,\n },\n },\n sizes: bid.sizes || [],\n },\n video_metadata: getVideoMetadata(bid, bidderRequest),\n },\n options: {\n withCredentials: allowCookieReading,\n crossOrigin: true,\n },\n }));\n },\n\n /**\n * Map the response from the server into a list of bids.\n * As dailymotion prebid server returns an entry with the correct Prebid structure,\n * we directly include it as the only bid in the response.\n *\n * @param {*} serverResponse A successful response from the server.\n * @return {Bid[]} An array of bids which were nested inside the server.\n */\n interpretResponse: serverResponse => serverResponse?.body?.cpm ? [serverResponse.body] : [],\n\n /**\n * Retrieves user synchronization URLs based on provided options and consents.\n *\n * @param {object} syncOptions - Options for synchronization.\n * @param {object[]} serverResponses - Array of server responses.\n * @returns {object[]} - Array of synchronization URLs.\n */\n getUserSyncs: (syncOptions, serverResponses) => {\n if (!!serverResponses?.length && (syncOptions.iframeEnabled || syncOptions.pixelEnabled)) {\n const iframeSyncs = [];\n const pixelSyncs = [];\n\n serverResponses.forEach((response) => {\n (response?.body?.userSyncs || []).forEach((syncUrl) => {\n if (syncUrl.type === 'image') {\n pixelSyncs.push({ url: syncUrl.url, type: 'image' });\n }\n\n if (syncUrl.type === 'iframe') {\n iframeSyncs.push({ url: syncUrl.url, type: 'iframe' });\n }\n });\n });\n\n if (syncOptions.iframeEnabled) return iframeSyncs;\n return pixelSyncs;\n }\n\n return [];\n },\n};\n\nregisterBidder(spec);\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"dailymotionBidAdapter.js","names":["registerModule","__r0","registerBidder","ortbConverter","VIDEO","deepAccess","config","userSync","DAILYMOTION_VENDOR_ID","dailymotionOrtbConverter","context","netRevenue","ttl","imp","buildImp","bidRequest","getFloor","size","w","h","floorInfo","currency","mediaType","floor","bidfloor","bidfloorcur","isArrayFilled","_array","Array","isArray","length","getVideoMetadata","bidderRequest","videoParams","siteOrAppObj","contentObj","contentCattax","isContentCattaxV1","isContentCattaxV2","includes","parsedContentData","iabcat1","iabcat2","forEach","data","ext","segtax","segment","id","videoMetadata","description","duration","cat","Object","keys","lang","livestream","private","tags","title","url","topics","isCreatedForKids","siteOrAppCat","siteOrAppContentCat","videoViewsInSession","autoplay","playerName","playerVolume","isUserSyncEnabled","syncEnabled","getConfig","canSyncWithIframe","canBidderRegisterSync","canSyncWithPixel","spec","code","gvlid","supportedMediaTypes","isBidRequestValid","bid","params","mediaTypes","isInstream","placement","plcmt","apiKey","buildRequests","validBidRequests","arguments","undefined","ortbData","toORTB","bidRequests","allowCookieReading","every","v","map","method","pbv","ortb","bidder_request","gdprConsent","apiVersion","consentString","gdprApplies","refererInfo","page","uspConsent","gppConsent","gppString","applicableSections","api_key","ts","dmTs","userSyncEnabled","request","adUnitCode","auctionId","bidId","video","api","mimes","minduration","maxduration","playbackmethod","protocols","skip","skipafter","skipmin","startdelay","sizes","video_metadata","options","withCredentials","crossOrigin","interpretResponse","serverResponse","body","cpm","getUserSyncs","syncOptions","serverResponses","iframeEnabled","pixelEnabled","iframeSyncs","pixelSyncs","response","userSyncs","syncUrl","type","push"],"sourceRoot":"../../..","sources":["modules/dailymotionBidAdapter.js"],"sourcesContent":["import { registerBidder } from '../src/adapters/bidderFactory.js';\nimport { ortbConverter } from '../libraries/ortbConverter/converter.js';\nimport { VIDEO } from '../src/mediaTypes.js';\nimport { deepAccess } from '../src/utils.js';\nimport { config } from '../src/config.js';\nimport { userSync } from '../src/userSync.js';\n\n/**\n * @typedef {import('../src/adapters/bidderFactory.js').BidRequest} BidRequest\n * @typedef {import('../src/adapters/bidderFactory.js').BidderRequest} BidderRequest\n * @typedef {import('../src/adapters/bidderFactory.js').Bid} Bid\n */\n\nconst DAILYMOTION_VENDOR_ID = 573;\n\nconst dailymotionOrtbConverter = ortbConverter({\n context: {\n netRevenue: true,\n ttl: 600,\n },\n imp(buildImp, bidRequest, context) {\n const imp = buildImp(bidRequest, context);\n\n if (typeof bidRequest.getFloor === 'function') {\n const size = imp.w > 0 && imp.h > 0 ? [imp.w, imp.h] : '*';\n\n const floorInfo = bidRequest.getFloor({\n currency: 'USD',\n mediaType: 'video', // or '*' for all the mediaType\n size\n }) || {};\n\n if (floorInfo.floor && floorInfo.currency) {\n imp.bidfloor = floorInfo.floor;\n imp.bidfloorcur = floorInfo.currency;\n }\n }\n\n return imp;\n },\n});\n\nfunction isArrayFilled (_array) {\n return _array && Array.isArray(_array) && _array.length > 0;\n}\n\n/**\n * Get video metadata from bid request\n *\n * @param {BidRequest} bidRequest A valid bid requests that should be sent to the Server.\n * @return video metadata\n */\nfunction getVideoMetadata(bidRequest, bidderRequest) {\n const videoParams = deepAccess(bidRequest, 'params.video', {});\n\n // As per oRTB 2.5 spec, \"A bid request must not contain both an App and a Site object.\"\n // See section 3.2.14\n const siteOrAppObj = deepAccess(bidderRequest, 'ortb2.site')\n ? deepAccess(bidderRequest, 'ortb2.site')\n : deepAccess(bidderRequest, 'ortb2.app');\n // Content object is either from Object: Site or Object: App\n const contentObj = deepAccess(siteOrAppObj, 'content')\n\n const contentCattax = deepAccess(contentObj, 'cattax', 0);\n const isContentCattaxV1 = contentCattax === 1;\n const isContentCattaxV2 = [2, 5, 6].includes(contentCattax);\n\n const parsedContentData = {\n // Store as object keys to ensure uniqueness\n iabcat1: {},\n iabcat2: {},\n };\n\n deepAccess(contentObj, 'data', []).forEach((data) => {\n if ([4, 5, 6, 7].includes(data?.ext?.segtax)) {\n (Array.isArray(data.segment) ? data.segment : []).forEach((segment) => {\n if (typeof segment.id === 'string') {\n // See https://docs.prebid.org/features/firstPartyData.html#segments-and-taxonomy\n // Only take IAB cats of taxonomy V1\n if (data.ext.segtax === 4) {\n parsedContentData.iabcat1[segment.id] = 1;\n } else {\n // Only take IAB cats of taxonomy V2 or higher\n parsedContentData.iabcat2[segment.id] = 1;\n }\n }\n });\n }\n });\n\n const videoMetadata = {\n description: videoParams.description || '',\n duration: videoParams.duration || deepAccess(contentObj, 'len', 0),\n iabcat1: isArrayFilled(videoParams.iabcat1)\n ? videoParams.iabcat1\n : (isArrayFilled(deepAccess(contentObj, 'cat')) && isContentCattaxV1)\n ? contentObj.cat\n : Object.keys(parsedContentData.iabcat1),\n iabcat2: isArrayFilled(videoParams.iabcat2)\n ? videoParams.iabcat2\n : (isArrayFilled(deepAccess(contentObj, 'cat')) && isContentCattaxV2)\n ? contentObj.cat\n : Object.keys(parsedContentData.iabcat2),\n id: videoParams.id || deepAccess(contentObj, 'id', ''),\n lang: videoParams.lang || deepAccess(contentObj, 'language', ''),\n livestream: typeof videoParams.livestream === 'number'\n ? !!videoParams.livestream\n : !!deepAccess(contentObj, 'livestream', 0),\n private: videoParams.private || false,\n tags: videoParams.tags || deepAccess(contentObj, 'keywords', ''),\n title: videoParams.title || deepAccess(contentObj, 'title', ''),\n url: videoParams.url || deepAccess(contentObj, 'url', ''),\n topics: videoParams.topics || '',\n isCreatedForKids: typeof videoParams.isCreatedForKids === 'boolean'\n ? videoParams.isCreatedForKids\n : null,\n context: {\n siteOrAppCat: deepAccess(siteOrAppObj, 'cat', []),\n siteOrAppContentCat: deepAccess(contentObj, 'cat', []),\n videoViewsInSession: (\n typeof videoParams.videoViewsInSession === 'number' &&\n videoParams.videoViewsInSession >= 0\n )\n ? videoParams.videoViewsInSession\n : null,\n autoplay: typeof videoParams.autoplay === 'boolean'\n ? videoParams.autoplay\n : null,\n playerName: videoParams.playerName || deepAccess(contentObj, 'playerName', ''),\n playerVolume: (\n typeof videoParams.playerVolume === 'number' &&\n videoParams.playerVolume >= 0 &&\n videoParams.playerVolume <= 10\n )\n ? videoParams.playerVolume\n : null,\n },\n };\n\n return videoMetadata;\n}\n\n/**\n * Check if user sync is enabled for Dailymotion\n *\n * @return boolean True if user sync is enabled\n */\nfunction isUserSyncEnabled() {\n const syncEnabled = deepAccess(config.getConfig('userSync'), 'syncEnabled');\n\n if (!syncEnabled) return false;\n\n const canSyncWithIframe = userSync.canBidderRegisterSync('iframe', 'dailymotion');\n const canSyncWithPixel = userSync.canBidderRegisterSync('image', 'dailymotion');\n\n return !!(canSyncWithIframe || canSyncWithPixel);\n}\n\nexport const spec = {\n code: 'dailymotion',\n gvlid: DAILYMOTION_VENDOR_ID,\n supportedMediaTypes: [VIDEO],\n\n /**\n * Determines whether or not the given bid request is valid.\n * The only mandatory parameter for a bid to be valid is the API key.\n * Other parameters are optional.\n *\n * @return boolean True if this is a valid bid, and false otherwise.\n */\n isBidRequestValid: function (bid) {\n if (bid?.params) {\n // We only accept video adUnits\n if (!bid?.mediaTypes?.[VIDEO]) return false;\n\n // As `context`, `placement` & `plcmt` are optional (although recommended)\n // values, we check the 3 of them to see if we are in an instream video context\n const isInstream = bid.mediaTypes[VIDEO].context === 'instream' ||\n bid.mediaTypes[VIDEO].placement === 1 ||\n bid.mediaTypes[VIDEO].plcmt === 1;\n\n // We only accept instream video context\n if (!isInstream) return false;\n\n // We need API key\n return typeof bid.params.apiKey === 'string' && bid.params.apiKey.length > 10;\n }\n\n return false;\n },\n\n /**\n * Make a server request from the list of valid BidRequests (that already passed the isBidRequestValid call)\n *\n * @param {BidRequest[]} validBidRequests A non-empty list of valid bid requests that should be sent to the Server.\n * @param {BidderRequest} bidderRequest\n * @return ServerRequest Info describing the request to the server.\n */\n buildRequests: function(validBidRequests = [], bidderRequest) {\n const ortbData = dailymotionOrtbConverter.toORTB({ bidRequests: validBidRequests, bidderRequest });\n // check consent to be able to read user cookie\n const allowCookieReading =\n // No GDPR applies\n !deepAccess(bidderRequest, 'gdprConsent.gdprApplies') ||\n // OR GDPR applies and we have global consent\n deepAccess(bidderRequest, 'gdprConsent.vendorData.hasGlobalConsent') === true ||\n (\n // Vendor consent\n deepAccess(bidderRequest, `gdprConsent.vendorData.vendor.consents.${DAILYMOTION_VENDOR_ID}`) === true &&\n\n // Purposes with legal basis \"consent\". These are not flexible, so if publisher requires legitimate interest (2) it cancels them\n [1, 3, 4].every(v =>\n deepAccess(bidderRequest, `gdprConsent.vendorData.publisher.restrictions.${v}.${DAILYMOTION_VENDOR_ID}`) !== 0 &&\n deepAccess(bidderRequest, `gdprConsent.vendorData.publisher.restrictions.${v}.${DAILYMOTION_VENDOR_ID}`) !== 2 &&\n deepAccess(bidderRequest, `gdprConsent.vendorData.purpose.consents.${v}`) === true\n ) &&\n\n // Purposes with legal basis \"legitimate interest\" (default) or \"consent\" (when specified as such by publisher)\n [2, 7, 9, 10].every(v =>\n deepAccess(bidderRequest, `gdprConsent.vendorData.publisher.restrictions.${v}.${DAILYMOTION_VENDOR_ID}`) !== 0 &&\n (deepAccess(bidderRequest, `gdprConsent.vendorData.publisher.restrictions.${v}.${DAILYMOTION_VENDOR_ID}`) === 1\n ? deepAccess(bidderRequest, `gdprConsent.vendorData.purpose.consents.${v}`) === true\n : deepAccess(bidderRequest, `gdprConsent.vendorData.purpose.legitimateInterests.${v}`) === true)\n )\n );\n\n return validBidRequests.map(bid => ({\n method: 'POST',\n url: 'https://pb.dmxleo.com',\n data: {\n pbv: '$prebid.version$',\n ortb: ortbData,\n bidder_request: {\n gdprConsent: {\n apiVersion: deepAccess(bidderRequest, 'gdprConsent.apiVersion', 1),\n consentString: deepAccess(bidderRequest, 'gdprConsent.consentString', ''),\n // Cast boolean in any case (eg: if value is int) to ensure type\n gdprApplies: !!deepAccess(bidderRequest, 'gdprConsent.gdprApplies'),\n },\n refererInfo: {\n page: deepAccess(bidderRequest, 'refererInfo.page', ''),\n },\n uspConsent: deepAccess(bidderRequest, 'uspConsent', ''),\n gppConsent: {\n gppString: deepAccess(bidderRequest, 'gppConsent.gppString') ||\n deepAccess(bidderRequest, 'ortb2.regs.gpp', ''),\n applicableSections: deepAccess(bidderRequest, 'gppConsent.applicableSections') ||\n deepAccess(bidderRequest, 'ortb2.regs.gpp_sid', []),\n },\n },\n config: {\n api_key: bid.params.apiKey,\n ts: bid.params.dmTs,\n },\n userSyncEnabled: isUserSyncEnabled(),\n request: {\n adUnitCode: deepAccess(bid, 'adUnitCode', ''),\n auctionId: deepAccess(bid, 'auctionId', ''),\n bidId: deepAccess(bid, 'bidId', ''),\n mediaTypes: {\n video: {\n api: bid.mediaTypes?.[VIDEO]?.api || [],\n mimes: bid.mediaTypes?.[VIDEO]?.mimes || [],\n minduration: bid.mediaTypes?.[VIDEO]?.minduration || 0,\n maxduration: bid.mediaTypes?.[VIDEO]?.maxduration || 0,\n playbackmethod: bid.mediaTypes?.[VIDEO]?.playbackmethod || [],\n plcmt: bid.mediaTypes?.[VIDEO]?.plcmt,\n protocols: bid.mediaTypes?.[VIDEO]?.protocols || [],\n skip: bid.mediaTypes?.[VIDEO]?.skip || 0,\n skipafter: bid.mediaTypes?.[VIDEO]?.skipafter || 0,\n skipmin: bid.mediaTypes?.[VIDEO]?.skipmin || 0,\n startdelay: bid.mediaTypes?.[VIDEO]?.startdelay,\n w: bid.mediaTypes?.[VIDEO]?.w || 0,\n h: bid.mediaTypes?.[VIDEO]?.h || 0,\n },\n },\n sizes: bid.sizes || [],\n },\n video_metadata: getVideoMetadata(bid, bidderRequest),\n },\n options: {\n withCredentials: allowCookieReading,\n crossOrigin: true,\n },\n }));\n },\n\n /**\n * Map the response from the server into a list of bids.\n * As dailymotion prebid server returns an entry with the correct Prebid structure,\n * we directly include it as the only bid in the response.\n *\n * @param {*} serverResponse A successful response from the server.\n * @return {Bid[]} An array of bids which were nested inside the server.\n */\n interpretResponse: serverResponse => serverResponse?.body?.cpm ? [serverResponse.body] : [],\n\n /**\n * Retrieves user synchronization URLs based on provided options and consents.\n *\n * @param {object} syncOptions - Options for synchronization.\n * @param {object[]} serverResponses - Array of server responses.\n * @returns {object[]} - Array of synchronization URLs.\n */\n getUserSyncs: (syncOptions, serverResponses) => {\n if (!!serverResponses?.length && (syncOptions.iframeEnabled || syncOptions.pixelEnabled)) {\n const iframeSyncs = [];\n const pixelSyncs = [];\n\n serverResponses.forEach((response) => {\n (response?.body?.userSyncs || []).forEach((syncUrl) => {\n if (syncUrl.type === 'image') {\n pixelSyncs.push({ url: syncUrl.url, type: 'image' });\n }\n\n if (syncUrl.type === 'iframe') {\n iframeSyncs.push({ url: syncUrl.url, type: 'iframe' });\n }\n });\n });\n\n if (syncOptions.iframeEnabled) return iframeSyncs;\n return pixelSyncs;\n }\n\n return [];\n },\n};\n\nregisterBidder(spec);\n"],"mappings":"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","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"dchain.js","names":["registerModule","__r0","config","getHook","_each","deepAccess","deepClone","isArray","isPlainObject","isStr","logError","logWarn","timedBidResponseHook","shouldBeAString","shouldBeAnObject","shouldBeAnArray","shouldBeValid","MODE","STRICT","RELAXED","OFF","MODES","mode","push","checkDchainSyntax","bid","dchainObj","meta","dchain","failPrefix","failMsg","dchainPropList","appendFailMsg","msg","printFailMsg","dchainProps","Object","keys","forEach","prop","includes","complete","ver","hasOwnProperty","ext","nodes","nodesPropList","node","index","nodeProps","length","isValidDchain","dchainConfig","getConfig","validation","indexOf","addBidResponseHook","fn","adUnitCode","reject","basicDchain","name","networkName","bsid","networkId","toString","bidderCode","bidDchain","result","asi","init","before"],"sourceRoot":"../../..","sources":["modules/dchain.ts"],"sourcesContent":["import {config} from '../src/config.js';\nimport {getHook} from '../src/hook.js';\nimport {_each, deepAccess, deepClone, isArray, isPlainObject, isStr, logError, logWarn} from '../src/utils.js';\nimport {timedBidResponseHook} from '../src/utils/perfMetrics.js';\nimport type {DemandChain} from \"../src/types/ortb/ext/dchain.d.ts\";\n\nconst shouldBeAString = ' should be a string';\nconst shouldBeAnObject = ' should be an object';\nconst shouldBeAnArray = ' should be an Array';\nconst shouldBeValid = ' is not a valid dchain property';\nconst MODE = {\n STRICT: 'strict',\n RELAXED: 'relaxed',\n OFF: 'off'\n} as const;\nconst MODES = []; // an array of modes\n_each(MODE, mode => MODES.push(mode));\n\nexport function checkDchainSyntax(bid, mode) {\n const dchainObj = deepClone(bid.meta.dchain);\n const failPrefix = 'Detected something wrong in bid.meta.dchain object for bid:';\n let failMsg = '';\n const dchainPropList = ['ver', 'complete', 'nodes', 'ext'];\n\n function appendFailMsg(msg) {\n failMsg += '\\n' + msg;\n }\n\n function printFailMsg() {\n if (mode === MODE.STRICT) {\n logError(failPrefix, bid, '\\n', dchainObj, failMsg);\n } else {\n logWarn(failPrefix, bid, `\\n`, dchainObj, failMsg);\n }\n }\n\n const dchainProps = Object.keys(dchainObj);\n dchainProps.forEach(prop => {\n if (!dchainPropList.includes(prop)) {\n appendFailMsg(`dchain.${prop}` + shouldBeValid);\n }\n });\n\n if (dchainObj.complete !== 0 && dchainObj.complete !== 1) {\n appendFailMsg(`dchain.complete should be 0 or 1`);\n }\n\n if (!isStr(dchainObj.ver)) {\n appendFailMsg(`dchain.ver` + shouldBeAString);\n }\n\n if (dchainObj.hasOwnProperty('ext')) {\n if (!isPlainObject(dchainObj.ext)) {\n appendFailMsg(`dchain.ext` + shouldBeAnObject);\n }\n }\n\n if (!isArray(dchainObj.nodes)) {\n appendFailMsg(`dchain.nodes` + shouldBeAnArray);\n printFailMsg();\n if (mode === MODE.STRICT) return false;\n } else {\n const nodesPropList = ['asi', 'bsid', 'rid', 'name', 'domain', 'ext'];\n dchainObj.nodes.forEach((node, index) => {\n if (!isPlainObject(node)) {\n appendFailMsg(`dchain.nodes[${index}]` + shouldBeAnObject);\n } else {\n const nodeProps = Object.keys(node);\n nodeProps.forEach(prop => {\n if (!nodesPropList.includes(prop)) {\n appendFailMsg(`dchain.nodes[${index}].${prop}` + shouldBeValid);\n }\n\n if (prop === 'ext') {\n if (!isPlainObject(node.ext)) {\n appendFailMsg(`dchain.nodes[${index}].ext` + shouldBeAnObject);\n }\n } else {\n if (!isStr(node[prop])) {\n appendFailMsg(`dchain.nodes[${index}].${prop}` + shouldBeAString);\n }\n }\n });\n }\n });\n }\n\n if (failMsg.length > 0) {\n printFailMsg();\n if (mode === MODE.STRICT) {\n return false;\n }\n }\n return true;\n}\n\nexport interface DchainConfig {\n validation?: typeof MODES[keyof typeof MODES];\n}\n\ndeclare module '../src/config' {\n interface Config {\n dchain?: DchainConfig;\n }\n}\n\nfunction isValidDchain(bid) {\n let mode: string = MODE.STRICT;\n const dchainConfig = config.getConfig('dchain');\n\n if (dchainConfig && isStr(dchainConfig.validation) && MODES.indexOf(dchainConfig.validation) != -1) {\n mode = dchainConfig.validation;\n }\n\n if (mode === MODE.OFF) {\n return true;\n } else {\n return checkDchainSyntax(bid, mode);\n }\n}\n\nexport const addBidResponseHook = timedBidResponseHook('dchain', function addBidResponseHook(fn, adUnitCode, bid, reject) {\n const basicDchain: DemandChain = {\n ver: '1.0',\n complete: 0,\n nodes: []\n };\n\n if (deepAccess(bid, 'meta.networkId') && deepAccess(bid, 'meta.networkName')) {\n basicDchain.nodes.push({ name: bid.meta.networkName, bsid: bid.meta.networkId.toString() });\n }\n basicDchain.nodes.push({ name: bid.bidderCode });\n\n const bidDchain = deepAccess(bid, 'meta.dchain');\n if (bidDchain && isPlainObject(bidDchain)) {\n const result = isValidDchain(bid);\n\n if (result) {\n // extra check in-case mode is OFF and there is a setup issue\n if (isArray(bidDchain.nodes)) {\n bid.meta.dchain.nodes.push({ asi: bid.bidderCode });\n } else {\n logWarn('bid.meta.dchain.nodes did not exist or was not an array; did not append prebid dchain.', bid);\n }\n } else {\n // remove invalid dchain\n delete bid.meta.dchain;\n }\n } else {\n bid.meta.dchain = basicDchain;\n }\n\n fn(adUnitCode, bid, reject);\n});\n\nexport function init() {\n getHook('addBidResponse').before(addBidResponseHook, 35);\n}\n\ninit();\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"dchain.js","names":["registerModule","__r0","config","getHook","_each","deepAccess","deepClone","isArray","isPlainObject","isStr","logError","logWarn","timedBidResponseHook","shouldBeAString","shouldBeAnObject","shouldBeAnArray","shouldBeValid","MODE","STRICT","RELAXED","OFF","MODES","mode","push","checkDchainSyntax","bid","dchainObj","meta","dchain","failPrefix","failMsg","dchainPropList","appendFailMsg","msg","printFailMsg","dchainProps","Object","keys","forEach","prop","includes","complete","ver","hasOwnProperty","ext","nodes","nodesPropList","node","index","nodeProps","length","isValidDchain","dchainConfig","getConfig","validation","indexOf","addBidResponseHook","fn","adUnitCode","reject","basicDchain","name","networkName","bsid","networkId","toString","bidderCode","bidDchain","result","asi","init","before"],"sourceRoot":"../../..","sources":["modules/dchain.ts"],"sourcesContent":["import {config} from '../src/config.js';\nimport {getHook} from '../src/hook.js';\nimport {_each, deepAccess, deepClone, isArray, isPlainObject, isStr, logError, logWarn} from '../src/utils.js';\nimport {timedBidResponseHook} from '../src/utils/perfMetrics.js';\nimport type {DemandChain} from \"../src/types/ortb/ext/dchain.d.ts\";\n\nconst shouldBeAString = ' should be a string';\nconst shouldBeAnObject = ' should be an object';\nconst shouldBeAnArray = ' should be an Array';\nconst shouldBeValid = ' is not a valid dchain property';\nconst MODE = {\n STRICT: 'strict',\n RELAXED: 'relaxed',\n OFF: 'off'\n} as const;\nconst MODES = []; // an array of modes\n_each(MODE, mode => MODES.push(mode));\n\nexport function checkDchainSyntax(bid, mode) {\n const dchainObj = deepClone(bid.meta.dchain);\n const failPrefix = 'Detected something wrong in bid.meta.dchain object for bid:';\n let failMsg = '';\n const dchainPropList = ['ver', 'complete', 'nodes', 'ext'];\n\n function appendFailMsg(msg) {\n failMsg += '\\n' + msg;\n }\n\n function printFailMsg() {\n if (mode === MODE.STRICT) {\n logError(failPrefix, bid, '\\n', dchainObj, failMsg);\n } else {\n logWarn(failPrefix, bid, `\\n`, dchainObj, failMsg);\n }\n }\n\n const dchainProps = Object.keys(dchainObj);\n dchainProps.forEach(prop => {\n if (!dchainPropList.includes(prop)) {\n appendFailMsg(`dchain.${prop}` + shouldBeValid);\n }\n });\n\n if (dchainObj.complete !== 0 && dchainObj.complete !== 1) {\n appendFailMsg(`dchain.complete should be 0 or 1`);\n }\n\n if (!isStr(dchainObj.ver)) {\n appendFailMsg(`dchain.ver` + shouldBeAString);\n }\n\n if (dchainObj.hasOwnProperty('ext')) {\n if (!isPlainObject(dchainObj.ext)) {\n appendFailMsg(`dchain.ext` + shouldBeAnObject);\n }\n }\n\n if (!isArray(dchainObj.nodes)) {\n appendFailMsg(`dchain.nodes` + shouldBeAnArray);\n printFailMsg();\n if (mode === MODE.STRICT) return false;\n } else {\n const nodesPropList = ['asi', 'bsid', 'rid', 'name', 'domain', 'ext'];\n dchainObj.nodes.forEach((node, index) => {\n if (!isPlainObject(node)) {\n appendFailMsg(`dchain.nodes[${index}]` + shouldBeAnObject);\n } else {\n const nodeProps = Object.keys(node);\n nodeProps.forEach(prop => {\n if (!nodesPropList.includes(prop)) {\n appendFailMsg(`dchain.nodes[${index}].${prop}` + shouldBeValid);\n }\n\n if (prop === 'ext') {\n if (!isPlainObject(node.ext)) {\n appendFailMsg(`dchain.nodes[${index}].ext` + shouldBeAnObject);\n }\n } else {\n if (!isStr(node[prop])) {\n appendFailMsg(`dchain.nodes[${index}].${prop}` + shouldBeAString);\n }\n }\n });\n }\n });\n }\n\n if (failMsg.length > 0) {\n printFailMsg();\n if (mode === MODE.STRICT) {\n return false;\n }\n }\n return true;\n}\n\nexport interface DchainConfig {\n validation?: typeof MODES[keyof typeof MODES];\n}\n\ndeclare module '../src/config' {\n interface Config {\n dchain?: DchainConfig;\n }\n}\n\nfunction isValidDchain(bid) {\n let mode: string = MODE.STRICT;\n const dchainConfig = config.getConfig('dchain');\n\n if (dchainConfig && isStr(dchainConfig.validation) && MODES.indexOf(dchainConfig.validation) != -1) {\n mode = dchainConfig.validation;\n }\n\n if (mode === MODE.OFF) {\n return true;\n } else {\n return checkDchainSyntax(bid, mode);\n }\n}\n\nexport const addBidResponseHook = timedBidResponseHook('dchain', function addBidResponseHook(fn, adUnitCode, bid, reject) {\n const basicDchain: DemandChain = {\n ver: '1.0',\n complete: 0,\n nodes: []\n };\n\n if (deepAccess(bid, 'meta.networkId') && deepAccess(bid, 'meta.networkName')) {\n basicDchain.nodes.push({ name: bid.meta.networkName, bsid: bid.meta.networkId.toString() });\n }\n basicDchain.nodes.push({ name: bid.bidderCode });\n\n const bidDchain = deepAccess(bid, 'meta.dchain');\n if (bidDchain && isPlainObject(bidDchain)) {\n const result = isValidDchain(bid);\n\n if (result) {\n // extra check in-case mode is OFF and there is a setup issue\n if (isArray(bidDchain.nodes)) {\n bid.meta.dchain.nodes.push({ asi: bid.bidderCode });\n } else {\n logWarn('bid.meta.dchain.nodes did not exist or was not an array; did not append prebid dchain.', bid);\n }\n } else {\n // remove invalid dchain\n delete bid.meta.dchain;\n }\n } else {\n bid.meta.dchain = basicDchain;\n }\n\n fn(adUnitCode, bid, reject);\n});\n\nexport function init() {\n getHook('addBidResponse').before(addBidResponseHook, 35);\n}\n\ninit();\n"],"mappings":"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","ignoreList":[]}
@@ -56,7 +56,7 @@ export const spec = {
56
56
  rnd: rnd,
57
57
  ref: referrer,
58
58
  bid_id: bidId,
59
- pbver: "10.2.0"
59
+ pbver: "10.4.0"
60
60
  };
61
61
  payload.pfilter = params.pfilter ?? {};
62
62
  payload.bcat = deepAccess(bidderRequest.ortb2, 'bcat') ? bidderRequest.ortb2.bcat.join(",") : params.bcat ?? null;
@@ -1 +1 @@
1
- {"version":3,"file":"dspxBidAdapter.js","names":["registerModule","__r0","deepAccess","logMessage","getBidIdParameter","logError","logWarn","registerBidder","BANNER","VIDEO","fillUsersIds","handleSyncUrls","objectToQueryString","isBannerRequest","getVideoContext","convertMediaInfoForRequest","getMediaTypesInfo","getBidFloor","siteContentToString","assignDefinedValues","extractUserSegments","interpretResponse","Renderer","BIDDER_CODE","ENDPOINT_URL","ENDPOINT_URL_DEV","GVLID","VIDEO_ORTB_PARAMS","spec","code","gvlid","aliases","supportedMediaTypes","isBidRequestValid","bid","params","placement","buildRequests","validBidRequests","bidderRequest","payload","map","bidRequest","rnd","Math","floor","random","referrer","refererInfo","page","bidId","pbcode","adUnitCode","auctionId","isDev","devMode","endpoint","placementId","dev","pfilter","undefined","mediaTypesInfo","type","sizes","_f","alternative","inventory_item_id","srw","width","srh","height","idt","ref","bid_id","pbver","bcat","ortb2","join","pcat","site","pagecat","dvt","prebidDevMode","gdprConsent","gdpr_consent","consentString","gdpr","gdprApplies","floorprice","bidFloor","media_types","vctx","vastFormat","vf","vpl","videoParams","Object","keys","filter","key","includes","forEach","content","stringContent","iab_content","segments","segtx","segtax","segcl","segclass","segs","schain","source","ext","ver","complete","nodes","schainString","node","asi","sid","hp","rid","name","domain","method","url","data","serverResponse","response","newRenderer","getUserSyncs","syncOptions","serverResponses","uspConsent","outstreamRender","embedCode","createOutstreamEmbedCode","inIframe","renderer","config","window","document","getElementById","nodeName","iframe","framedoc","contentDocument","contentWindow","body","appendChild","dspxRender","slot","err","message","fragment","createDocumentFragment","div","createElement","innerHTML","scripts","getElementsByTagName","scriptsClone","idx","length","push","i","currentScript","s","j","attributes","a","setAttribute","value","createTextNode","parentNode","replaceChild","install","id","rendererUrl","options","loaded","setRender"],"sourceRoot":"../../..","sources":["modules/dspxBidAdapter.js"],"sourcesContent":["import {deepAccess, logMessage, getBidIdParameter, logError, logWarn} from '../src/utils.js';\nimport {registerBidder} from '../src/adapters/bidderFactory.js';\nimport {BANNER, VIDEO} from '../src/mediaTypes.js';\n\nimport {\n fillUsersIds,\n handleSyncUrls,\n objectToQueryString,\n isBannerRequest,\n getVideoContext,\n convertMediaInfoForRequest,\n getMediaTypesInfo,\n getBidFloor,\n siteContentToString,\n assignDefinedValues,\n extractUserSegments,\n interpretResponse\n} from '../libraries/dspxUtils/bidderUtils.js';\nimport {Renderer} from '../src/Renderer.js';\n\n/**\n * @typedef {import('../src/adapters/bidderFactory.js').BidRequest} BidRequest\n */\nconst BIDDER_CODE = 'dspx';\nconst ENDPOINT_URL = 'https://buyer.dspx.tv/request/';\nconst ENDPOINT_URL_DEV = 'https://dcbuyer.dspx.tv/request/';\nconst GVLID = 602;\nconst VIDEO_ORTB_PARAMS = ['mimes', 'minduration', 'maxduration', 'protocols', 'w', 'h', 'startdelay', 'placement', 'plcmt', 'linearity', 'skip', 'skipmin',\n 'skipafter', 'sequence', 'battr', 'maxextended', 'minbitrate', 'maxbitrate', 'boxingallowed', 'playbackmethod', 'playbackend', 'delivery', 'pos', 'companionad',\n 'api', 'companiontype', 'ext'];\n\nexport const spec = {\n code: BIDDER_CODE,\n gvlid: GVLID,\n aliases: [],\n supportedMediaTypes: [BANNER, VIDEO],\n isBidRequestValid: function(bid) {\n return !!(bid.params.placement);\n },\n buildRequests: function(validBidRequests, bidderRequest) {\n let payload = {};\n return validBidRequests.map(bidRequest => {\n const params = bidRequest.params;\n\n const rnd = Math.floor(Math.random() * 99999999999);\n const referrer = bidderRequest.refererInfo.page;\n const bidId = bidRequest.bidId;\n const pbcode = bidRequest.adUnitCode || false; // div id\n // TODO: fix auctionId leak: https://github.com/prebid/Prebid.js/issues/9781\n const auctionId = bidRequest.auctionId || false;\n const isDev = params.devMode || false;\n\n let endpoint = isDev ? ENDPOINT_URL_DEV : ENDPOINT_URL;\n let placementId = params.placement;\n\n // dev config\n if (isDev && params.dev) {\n endpoint = params.dev.endpoint || endpoint;\n placementId = params.dev.placement || placementId;\n if (params.dev.pfilter !== undefined) {\n params.pfilter = params.dev.pfilter;\n }\n }\n\n const mediaTypesInfo = getMediaTypesInfo(bidRequest);\n const type = isBannerRequest(bidRequest) ? BANNER : VIDEO;\n const sizes = mediaTypesInfo[type];\n\n payload = {\n _f: 'auto',\n alternative: 'prebid_js',\n inventory_item_id: placementId,\n srw: sizes ? sizes[0].width : 0,\n srh: sizes ? sizes[0].height : 0,\n idt: 100,\n rnd: rnd,\n ref: referrer,\n bid_id: bidId,\n pbver: '$prebid.version$',\n };\n\n payload.pfilter = params.pfilter ?? {};\n payload.bcat = deepAccess(bidderRequest.ortb2, 'bcat') ? bidderRequest.ortb2.bcat.join(\",\") : (params.bcat ?? null);\n payload.pcat = deepAccess(bidderRequest.ortb2, 'site.pagecat') ? bidderRequest.ortb2.site.pagecat.join(\",\") : null;\n payload.dvt = params.dvt ?? null;\n isDev && (payload.prebidDevMode = 1);\n\n if (bidderRequest && bidderRequest.gdprConsent) {\n if (!payload.pfilter.gdpr_consent) {\n payload.pfilter.gdpr_consent = bidderRequest.gdprConsent.consentString;\n payload.pfilter.gdpr = bidderRequest.gdprConsent.gdprApplies;\n }\n }\n\n if (!payload.pfilter.floorprice) {\n const bidFloor = getBidFloor(bidRequest);\n if (bidFloor > 0) {\n payload.pfilter.floorprice = bidFloor;\n }\n }\n\n if (auctionId) {\n payload.auctionId = auctionId;\n }\n if (pbcode) {\n payload.pbcode = pbcode;\n }\n\n // media types\n payload.media_types = convertMediaInfoForRequest(mediaTypesInfo);\n if (mediaTypesInfo[VIDEO] !== undefined) {\n payload.vctx = getVideoContext(bidRequest);\n if (params.vastFormat !== undefined) {\n payload.vf = params.vastFormat;\n }\n payload.vpl = {};\n const videoParams = deepAccess(bidRequest, 'mediaTypes.video');\n Object.keys(videoParams)\n .filter(key => VIDEO_ORTB_PARAMS.includes(key))\n .forEach(key => payload.vpl[key] = videoParams[key]);\n }\n\n // iab content\n const content = deepAccess(bidderRequest, 'ortb2.site.content');\n if (content) {\n const stringContent = siteContentToString(content);\n if (stringContent) {\n payload.pfilter.iab_content = stringContent;\n }\n }\n\n // Google Topics\n const segments = extractUserSegments(bidderRequest);\n if (segments) {\n assignDefinedValues(payload, {\n segtx: segments.segtax,\n segcl: segments.segclass,\n segs: segments.segments\n });\n }\n\n // schain\n const schain = bidRequest?.ortb2?.source?.ext?.schain;\n if (schain && schain.ver && schain.complete && schain.nodes) {\n let schainString = schain.ver + \",\" + schain.complete;\n for (const node of schain.nodes) {\n schainString += '!' + [\n node.asi ?? '',\n node.sid ?? '',\n node.hp ?? '',\n node.rid ?? '',\n node.name ?? '',\n node.domain ?? '',\n ].join(\",\");\n }\n payload.schain = schainString;\n }\n\n // fill userId params\n fillUsersIds(bidRequest, payload);\n\n return {\n method: 'GET',\n url: endpoint,\n data: objectToQueryString(payload),\n };\n });\n },\n interpretResponse: function(serverResponse, bidRequest) {\n logMessage('DSPx: serverResponse', serverResponse);\n logMessage('DSPx: bidRequest', bidRequest);\n return interpretResponse(serverResponse, bidRequest, (bidRequest, response) => newRenderer(bidRequest, response));\n },\n getUserSyncs: function(syncOptions, serverResponses, gdprConsent, uspConsent) {\n return handleSyncUrls(syncOptions, serverResponses, gdprConsent);\n }\n}\n\n/**\n * Outstream Render Function\n *\n * @param bid\n */\nfunction outstreamRender(bid) {\n logMessage('[DSPx][outstreamRender] bid:', bid);\n const embedCode = createOutstreamEmbedCode(bid);\n try {\n const inIframe = getBidIdParameter('iframe', bid.renderer.config);\n if (inIframe && window.document.getElementById(inIframe).nodeName === 'IFRAME') {\n const iframe = window.document.getElementById(inIframe);\n const framedoc = iframe.contentDocument || (iframe.contentWindow && iframe.contentWindow.document);\n framedoc.body.appendChild(embedCode);\n if (typeof window.dspxRender === 'function') {\n window.dspxRender(bid);\n } else {\n logError('[DSPx][outstreamRender] Error: dspxRender function is not found');\n }\n return;\n }\n\n const slot = getBidIdParameter('slot', bid.renderer.config) || bid.adUnitCode;\n if (slot && window.document.getElementById(slot)) {\n window.document.getElementById(slot).appendChild(embedCode);\n if (typeof window.dspxRender === 'function') {\n window.dspxRender(bid);\n } else {\n logError('[DSPx][outstreamRender] Error: dspxRender function is not found');\n }\n } else if (slot) {\n logError('[DSPx][outstreamRender] Error: slot not found');\n }\n } catch (err) {\n logError('[DSPx][outstreamRender] Error:' + err.message)\n }\n}\n\n/**\n * create Outstream Embed Code Node\n *\n * @param bid\n * @returns {DocumentFragment}\n */\nfunction createOutstreamEmbedCode(bid) {\n const fragment = window.document.createDocumentFragment();\n const div = window.document.createElement('div');\n div.innerHTML = deepAccess(bid, 'renderer.config.code', '');\n fragment.appendChild(div);\n\n // run scripts\n var scripts = div.getElementsByTagName('script');\n var scriptsClone = [];\n for (var idx = 0; idx < scripts.length; idx++) {\n scriptsClone.push(scripts[idx]);\n }\n for (var i = 0; i < scriptsClone.length; i++) {\n var currentScript = scriptsClone[i];\n var s = document.createElement('script');\n for (var j = 0; j < currentScript.attributes.length; j++) {\n var a = currentScript.attributes[j];\n s.setAttribute(a.name, a.value);\n }\n s.appendChild(document.createTextNode(currentScript.innerHTML));\n currentScript.parentNode.replaceChild(s, currentScript);\n }\n\n return fragment;\n}\n\n/**\n * Create a new renderer\n *\n * @param bidRequest\n * @param response\n * @returns {Renderer}\n */\nfunction newRenderer(bidRequest, response) {\n logMessage('[DSPx] newRenderer', bidRequest, response);\n const renderer = Renderer.install({\n id: response.renderer.id || response.bid_id,\n url: (bidRequest.params && bidRequest.params.rendererUrl) || response.renderer.url,\n config: response.renderer.options || deepAccess(bidRequest, 'renderer.options'),\n loaded: false\n });\n\n try {\n renderer.setRender(outstreamRender);\n } catch (err) {\n logWarn('[DSPx]Prebid Error calling setRender on renderer', err);\n }\n return renderer;\n}\n\nregisterBidder(spec);\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"dspxBidAdapter.js","names":["registerModule","__r0","deepAccess","logMessage","getBidIdParameter","logError","logWarn","registerBidder","BANNER","VIDEO","fillUsersIds","handleSyncUrls","objectToQueryString","isBannerRequest","getVideoContext","convertMediaInfoForRequest","getMediaTypesInfo","getBidFloor","siteContentToString","assignDefinedValues","extractUserSegments","interpretResponse","Renderer","BIDDER_CODE","ENDPOINT_URL","ENDPOINT_URL_DEV","GVLID","VIDEO_ORTB_PARAMS","spec","code","gvlid","aliases","supportedMediaTypes","isBidRequestValid","bid","params","placement","buildRequests","validBidRequests","bidderRequest","payload","map","bidRequest","rnd","Math","floor","random","referrer","refererInfo","page","bidId","pbcode","adUnitCode","auctionId","isDev","devMode","endpoint","placementId","dev","pfilter","undefined","mediaTypesInfo","type","sizes","_f","alternative","inventory_item_id","srw","width","srh","height","idt","ref","bid_id","pbver","bcat","ortb2","join","pcat","site","pagecat","dvt","prebidDevMode","gdprConsent","gdpr_consent","consentString","gdpr","gdprApplies","floorprice","bidFloor","media_types","vctx","vastFormat","vf","vpl","videoParams","Object","keys","filter","key","includes","forEach","content","stringContent","iab_content","segments","segtx","segtax","segcl","segclass","segs","schain","source","ext","ver","complete","nodes","schainString","node","asi","sid","hp","rid","name","domain","method","url","data","serverResponse","response","newRenderer","getUserSyncs","syncOptions","serverResponses","uspConsent","outstreamRender","embedCode","createOutstreamEmbedCode","inIframe","renderer","config","window","document","getElementById","nodeName","iframe","framedoc","contentDocument","contentWindow","body","appendChild","dspxRender","slot","err","message","fragment","createDocumentFragment","div","createElement","innerHTML","scripts","getElementsByTagName","scriptsClone","idx","length","push","i","currentScript","s","j","attributes","a","setAttribute","value","createTextNode","parentNode","replaceChild","install","id","rendererUrl","options","loaded","setRender"],"sourceRoot":"../../..","sources":["modules/dspxBidAdapter.js"],"sourcesContent":["import {deepAccess, logMessage, getBidIdParameter, logError, logWarn} from '../src/utils.js';\nimport {registerBidder} from '../src/adapters/bidderFactory.js';\nimport {BANNER, VIDEO} from '../src/mediaTypes.js';\n\nimport {\n fillUsersIds,\n handleSyncUrls,\n objectToQueryString,\n isBannerRequest,\n getVideoContext,\n convertMediaInfoForRequest,\n getMediaTypesInfo,\n getBidFloor,\n siteContentToString,\n assignDefinedValues,\n extractUserSegments,\n interpretResponse\n} from '../libraries/dspxUtils/bidderUtils.js';\nimport {Renderer} from '../src/Renderer.js';\n\n/**\n * @typedef {import('../src/adapters/bidderFactory.js').BidRequest} BidRequest\n */\nconst BIDDER_CODE = 'dspx';\nconst ENDPOINT_URL = 'https://buyer.dspx.tv/request/';\nconst ENDPOINT_URL_DEV = 'https://dcbuyer.dspx.tv/request/';\nconst GVLID = 602;\nconst VIDEO_ORTB_PARAMS = ['mimes', 'minduration', 'maxduration', 'protocols', 'w', 'h', 'startdelay', 'placement', 'plcmt', 'linearity', 'skip', 'skipmin',\n 'skipafter', 'sequence', 'battr', 'maxextended', 'minbitrate', 'maxbitrate', 'boxingallowed', 'playbackmethod', 'playbackend', 'delivery', 'pos', 'companionad',\n 'api', 'companiontype', 'ext'];\n\nexport const spec = {\n code: BIDDER_CODE,\n gvlid: GVLID,\n aliases: [],\n supportedMediaTypes: [BANNER, VIDEO],\n isBidRequestValid: function(bid) {\n return !!(bid.params.placement);\n },\n buildRequests: function(validBidRequests, bidderRequest) {\n let payload = {};\n return validBidRequests.map(bidRequest => {\n const params = bidRequest.params;\n\n const rnd = Math.floor(Math.random() * 99999999999);\n const referrer = bidderRequest.refererInfo.page;\n const bidId = bidRequest.bidId;\n const pbcode = bidRequest.adUnitCode || false; // div id\n // TODO: fix auctionId leak: https://github.com/prebid/Prebid.js/issues/9781\n const auctionId = bidRequest.auctionId || false;\n const isDev = params.devMode || false;\n\n let endpoint = isDev ? ENDPOINT_URL_DEV : ENDPOINT_URL;\n let placementId = params.placement;\n\n // dev config\n if (isDev && params.dev) {\n endpoint = params.dev.endpoint || endpoint;\n placementId = params.dev.placement || placementId;\n if (params.dev.pfilter !== undefined) {\n params.pfilter = params.dev.pfilter;\n }\n }\n\n const mediaTypesInfo = getMediaTypesInfo(bidRequest);\n const type = isBannerRequest(bidRequest) ? BANNER : VIDEO;\n const sizes = mediaTypesInfo[type];\n\n payload = {\n _f: 'auto',\n alternative: 'prebid_js',\n inventory_item_id: placementId,\n srw: sizes ? sizes[0].width : 0,\n srh: sizes ? sizes[0].height : 0,\n idt: 100,\n rnd: rnd,\n ref: referrer,\n bid_id: bidId,\n pbver: '$prebid.version$',\n };\n\n payload.pfilter = params.pfilter ?? {};\n payload.bcat = deepAccess(bidderRequest.ortb2, 'bcat') ? bidderRequest.ortb2.bcat.join(\",\") : (params.bcat ?? null);\n payload.pcat = deepAccess(bidderRequest.ortb2, 'site.pagecat') ? bidderRequest.ortb2.site.pagecat.join(\",\") : null;\n payload.dvt = params.dvt ?? null;\n isDev && (payload.prebidDevMode = 1);\n\n if (bidderRequest && bidderRequest.gdprConsent) {\n if (!payload.pfilter.gdpr_consent) {\n payload.pfilter.gdpr_consent = bidderRequest.gdprConsent.consentString;\n payload.pfilter.gdpr = bidderRequest.gdprConsent.gdprApplies;\n }\n }\n\n if (!payload.pfilter.floorprice) {\n const bidFloor = getBidFloor(bidRequest);\n if (bidFloor > 0) {\n payload.pfilter.floorprice = bidFloor;\n }\n }\n\n if (auctionId) {\n payload.auctionId = auctionId;\n }\n if (pbcode) {\n payload.pbcode = pbcode;\n }\n\n // media types\n payload.media_types = convertMediaInfoForRequest(mediaTypesInfo);\n if (mediaTypesInfo[VIDEO] !== undefined) {\n payload.vctx = getVideoContext(bidRequest);\n if (params.vastFormat !== undefined) {\n payload.vf = params.vastFormat;\n }\n payload.vpl = {};\n const videoParams = deepAccess(bidRequest, 'mediaTypes.video');\n Object.keys(videoParams)\n .filter(key => VIDEO_ORTB_PARAMS.includes(key))\n .forEach(key => payload.vpl[key] = videoParams[key]);\n }\n\n // iab content\n const content = deepAccess(bidderRequest, 'ortb2.site.content');\n if (content) {\n const stringContent = siteContentToString(content);\n if (stringContent) {\n payload.pfilter.iab_content = stringContent;\n }\n }\n\n // Google Topics\n const segments = extractUserSegments(bidderRequest);\n if (segments) {\n assignDefinedValues(payload, {\n segtx: segments.segtax,\n segcl: segments.segclass,\n segs: segments.segments\n });\n }\n\n // schain\n const schain = bidRequest?.ortb2?.source?.ext?.schain;\n if (schain && schain.ver && schain.complete && schain.nodes) {\n let schainString = schain.ver + \",\" + schain.complete;\n for (const node of schain.nodes) {\n schainString += '!' + [\n node.asi ?? '',\n node.sid ?? '',\n node.hp ?? '',\n node.rid ?? '',\n node.name ?? '',\n node.domain ?? '',\n ].join(\",\");\n }\n payload.schain = schainString;\n }\n\n // fill userId params\n fillUsersIds(bidRequest, payload);\n\n return {\n method: 'GET',\n url: endpoint,\n data: objectToQueryString(payload),\n };\n });\n },\n interpretResponse: function(serverResponse, bidRequest) {\n logMessage('DSPx: serverResponse', serverResponse);\n logMessage('DSPx: bidRequest', bidRequest);\n return interpretResponse(serverResponse, bidRequest, (bidRequest, response) => newRenderer(bidRequest, response));\n },\n getUserSyncs: function(syncOptions, serverResponses, gdprConsent, uspConsent) {\n return handleSyncUrls(syncOptions, serverResponses, gdprConsent);\n }\n}\n\n/**\n * Outstream Render Function\n *\n * @param bid\n */\nfunction outstreamRender(bid) {\n logMessage('[DSPx][outstreamRender] bid:', bid);\n const embedCode = createOutstreamEmbedCode(bid);\n try {\n const inIframe = getBidIdParameter('iframe', bid.renderer.config);\n if (inIframe && window.document.getElementById(inIframe).nodeName === 'IFRAME') {\n const iframe = window.document.getElementById(inIframe);\n const framedoc = iframe.contentDocument || (iframe.contentWindow && iframe.contentWindow.document);\n framedoc.body.appendChild(embedCode);\n if (typeof window.dspxRender === 'function') {\n window.dspxRender(bid);\n } else {\n logError('[DSPx][outstreamRender] Error: dspxRender function is not found');\n }\n return;\n }\n\n const slot = getBidIdParameter('slot', bid.renderer.config) || bid.adUnitCode;\n if (slot && window.document.getElementById(slot)) {\n window.document.getElementById(slot).appendChild(embedCode);\n if (typeof window.dspxRender === 'function') {\n window.dspxRender(bid);\n } else {\n logError('[DSPx][outstreamRender] Error: dspxRender function is not found');\n }\n } else if (slot) {\n logError('[DSPx][outstreamRender] Error: slot not found');\n }\n } catch (err) {\n logError('[DSPx][outstreamRender] Error:' + err.message)\n }\n}\n\n/**\n * create Outstream Embed Code Node\n *\n * @param bid\n * @returns {DocumentFragment}\n */\nfunction createOutstreamEmbedCode(bid) {\n const fragment = window.document.createDocumentFragment();\n const div = window.document.createElement('div');\n div.innerHTML = deepAccess(bid, 'renderer.config.code', '');\n fragment.appendChild(div);\n\n // run scripts\n var scripts = div.getElementsByTagName('script');\n var scriptsClone = [];\n for (var idx = 0; idx < scripts.length; idx++) {\n scriptsClone.push(scripts[idx]);\n }\n for (var i = 0; i < scriptsClone.length; i++) {\n var currentScript = scriptsClone[i];\n var s = document.createElement('script');\n for (var j = 0; j < currentScript.attributes.length; j++) {\n var a = currentScript.attributes[j];\n s.setAttribute(a.name, a.value);\n }\n s.appendChild(document.createTextNode(currentScript.innerHTML));\n currentScript.parentNode.replaceChild(s, currentScript);\n }\n\n return fragment;\n}\n\n/**\n * Create a new renderer\n *\n * @param bidRequest\n * @param response\n * @returns {Renderer}\n */\nfunction newRenderer(bidRequest, response) {\n logMessage('[DSPx] newRenderer', bidRequest, response);\n const renderer = Renderer.install({\n id: response.renderer.id || response.bid_id,\n url: (bidRequest.params && bidRequest.params.rendererUrl) || response.renderer.url,\n config: response.renderer.options || deepAccess(bidRequest, 'renderer.options'),\n loaded: false\n });\n\n try {\n renderer.setRender(outstreamRender);\n } catch (err) {\n logWarn('[DSPx]Prebid Error calling setRender on renderer', err);\n }\n return renderer;\n}\n\nregisterBidder(spec);\n"],"mappings":"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","ignoreList":[]}
@@ -33,7 +33,7 @@ const converter = ortbConverter({
33
33
  mergeDeep(req, {
34
34
  ext: {
35
35
  hb: 1,
36
- prebidver: "10.2.0",
36
+ prebidver: "10.4.0",
37
37
  adapterver: '1.0.0'
38
38
  }
39
39
  });