prebid.js 9.40.0 → 9.41.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 (191) hide show
  1. package/dist/33acrossAnalyticsAdapter.js +1 -1
  2. package/dist/33acrossBidAdapter.js +1 -1
  3. package/dist/33acrossIdSystem.js +1 -1
  4. package/dist/BTBidAdapter.js +1 -1
  5. package/dist/adagioAnalyticsAdapter.js +1 -1
  6. package/dist/adagioBidAdapter.js +1 -1
  7. package/dist/adagioUtils.js +1 -1
  8. package/dist/addefendBidAdapter.js +1 -1
  9. package/dist/adgenerationBidAdapter.js +1 -1
  10. package/dist/adlooxRtdProvider.js +1 -1
  11. package/dist/adqueryBidAdapter.js +1 -1
  12. package/dist/adrelevantisBidAdapter.js +1 -1
  13. package/dist/adstirBidAdapter.js +1 -1
  14. package/dist/adtrgtmeBidAdapter.js +1 -1
  15. package/dist/adxcgAnalyticsAdapter.js +1 -1
  16. package/dist/adxcgBidAdapter.js +1 -1
  17. package/dist/adyoulikeBidAdapter.js +1 -1
  18. package/dist/agmaAnalyticsAdapter.js +1 -1
  19. package/dist/ajaBidAdapter.js +1 -1
  20. package/dist/amxBidAdapter.js +1 -1
  21. package/dist/amxIdSystem.js +1 -1
  22. package/dist/aniviewBidAdapter.js +1 -1
  23. package/dist/appierAnalyticsAdapter.js +1 -1
  24. package/dist/appnexusBidAdapter.js +1 -1
  25. package/dist/asoBidAdapter.js +1 -1
  26. package/dist/axonixBidAdapter.js +1 -1
  27. package/dist/beopBidAdapter.js +1 -1
  28. package/dist/bidglassBidAdapter.js +1 -1
  29. package/dist/big-richmediaBidAdapter.js +1 -1
  30. package/dist/bitmediaBidAdapter.js +1 -1
  31. package/dist/braveUtils.js +1 -1
  32. package/dist/bridBidAdapter.js +1 -1
  33. package/dist/bridgeuppBidAdapter.js +1 -1
  34. package/dist/bridgewellBidAdapter.js +1 -1
  35. package/dist/brightMountainMediaBidAdapter.js +1 -1
  36. package/dist/carodaBidAdapter.js +1 -1
  37. package/dist/chtnwBidAdapter.js +1 -1
  38. package/dist/chunk-core.js +1 -1
  39. package/dist/concertBidAdapter.js +1 -1
  40. package/dist/connectadBidAdapter.js +1 -1
  41. package/dist/consumableBidAdapter.js +1 -1
  42. package/dist/contxtfulBidAdapter.js +1 -1
  43. package/dist/conversantAnalyticsAdapter.js +1 -1
  44. package/dist/conversantBidAdapter.js +1 -1
  45. package/dist/craftBidAdapter.js +1 -1
  46. package/dist/criteoBidAdapter.js +1 -1
  47. package/dist/cwireBidAdapter.js +1 -1
  48. package/dist/dailymotionBidAdapter.js +1 -1
  49. package/dist/dependencies.json +4 -0
  50. package/dist/dspxBidAdapter.js +1 -1
  51. package/dist/dxkultureBidAdapter.js +1 -1
  52. package/dist/eplanningBidAdapter.js +1 -1
  53. package/dist/epomDspBidAdapter.js +1 -0
  54. package/dist/equativBidAdapter.js +1 -1
  55. package/dist/eskimiBidAdapter.js +1 -1
  56. package/dist/euidIdSystem.js +1 -1
  57. package/dist/exadsBidAdapter.js +1 -1
  58. package/dist/excoBidAdapter.js +1 -1
  59. package/dist/feedadBidAdapter.js +1 -1
  60. package/dist/finativeBidAdapter.js +1 -1
  61. package/dist/freewheel-sspBidAdapter.js +1 -1
  62. package/dist/gmosspBidAdapter.js +1 -1
  63. package/dist/goldbachBidAdapter.js +1 -1
  64. package/dist/greenbidsAnalyticsAdapter.js +1 -1
  65. package/dist/greenbidsBidAdapter.js +1 -1
  66. package/dist/greenbidsRtdProvider.js +1 -1
  67. package/dist/gridBidAdapter.js +1 -1
  68. package/dist/gumgumBidAdapter.js +1 -1
  69. package/dist/h12mediaBidAdapter.js +1 -1
  70. package/dist/hypelabBidAdapter.js +1 -1
  71. package/dist/id5AnalyticsAdapter.js +1 -1
  72. package/dist/id5IdSystem.js +1 -1
  73. package/dist/imdsBidAdapter.js +1 -1
  74. package/dist/improvedigitalBidAdapter.js +1 -1
  75. package/dist/inmobiBidAdapter.js +1 -1
  76. package/dist/insticatorBidAdapter.js +1 -1
  77. package/dist/intentIqAnalyticsAdapter.js +1 -1
  78. package/dist/ixBidAdapter.js +1 -1
  79. package/dist/jixieBidAdapter.js +1 -1
  80. package/dist/justpremiumBidAdapter.js +1 -1
  81. package/dist/kargoBidAdapter.js +1 -1
  82. package/dist/kimberliteBidAdapter.js +1 -1
  83. package/dist/konduitAnalyticsAdapter.js +1 -1
  84. package/dist/kueezBidAdapter.js +1 -1
  85. package/dist/lassoBidAdapter.js +1 -1
  86. package/dist/lifestreetBidAdapter.js +1 -1
  87. package/dist/liveIntentId.js +1 -1
  88. package/dist/logicadBidAdapter.js +1 -1
  89. package/dist/loglyliftBidAdapter.js +1 -1
  90. package/dist/luceadBidAdapter.js +1 -1
  91. package/dist/mabidderBidAdapter.js +1 -1
  92. package/dist/madsenseBidAdapter.js +1 -1
  93. package/dist/magniteAnalyticsAdapter.js +1 -1
  94. package/dist/malltvAnalyticsAdapter.js +1 -1
  95. package/dist/marsmediaBidAdapter.js +1 -1
  96. package/dist/mediafuseBidAdapter.js +1 -1
  97. package/dist/medianetBidAdapter.js +1 -1
  98. package/dist/medianetUtils.js +1 -1
  99. package/dist/mediasquareBidAdapter.js +1 -1
  100. package/dist/mgidBidAdapter.js +1 -1
  101. package/dist/missenaBidAdapter.js +1 -1
  102. package/dist/nextMillenniumBidAdapter.js +1 -1
  103. package/dist/nexx360BidAdapter.js +1 -1
  104. package/dist/nobidAnalyticsAdapter.js +1 -1
  105. package/dist/nobidBidAdapter.js +1 -1
  106. package/dist/nodalsAiRtdProvider.js +1 -1
  107. package/dist/not-for-prod/prebid.js +170 -168
  108. package/dist/oguryBidAdapter.js +1 -1
  109. package/dist/onetagBidAdapter.js +1 -1
  110. package/dist/ooloAnalyticsAdapter.js +1 -1
  111. package/dist/openxBidAdapter.js +1 -1
  112. package/dist/optidigitalBidAdapter.js +1 -1
  113. package/dist/orbidderBidAdapter.js +1 -1
  114. package/dist/outbrainBidAdapter.js +1 -1
  115. package/dist/pixfutureBidAdapter.js +1 -1
  116. package/dist/publinkIdSystem.js +1 -1
  117. package/dist/pubmaticAnalyticsAdapter.js +1 -1
  118. package/dist/pubmaticBidAdapter.js +1 -1
  119. package/dist/pubwiseAnalyticsAdapter.js +1 -1
  120. package/dist/pubxaiAnalyticsAdapter.js +1 -1
  121. package/dist/pxyzBidAdapter.js +1 -1
  122. package/dist/quantcastBidAdapter.js +1 -1
  123. package/dist/raveltechRtdProvider.js +1 -0
  124. package/dist/readpeakBidAdapter.js +1 -1
  125. package/dist/relaidoBidAdapter.js +1 -1
  126. package/dist/retailspotBidAdapter.js +1 -1
  127. package/dist/rhythmoneBidAdapter.js +1 -1
  128. package/dist/riseUtils.js +1 -1
  129. package/dist/rubiconBidAdapter.js +1 -1
  130. package/dist/seedingAllianceBidAdapter.js +1 -1
  131. package/dist/seedtagBidAdapter.js +1 -1
  132. package/dist/sharethroughAnalyticsAdapter.js +1 -1
  133. package/dist/sharethroughBidAdapter.js +1 -1
  134. package/dist/showheroes-bsBidAdapter.js +1 -1
  135. package/dist/smaatoBidAdapter.js +1 -1
  136. package/dist/smartadserverBidAdapter.js +1 -1
  137. package/dist/smartxBidAdapter.js +1 -1
  138. package/dist/smilewantedBidAdapter.js +1 -1
  139. package/dist/snigelBidAdapter.js +1 -1
  140. package/dist/sonobiBidAdapter.js +1 -1
  141. package/dist/sovrnBidAdapter.js +1 -1
  142. package/dist/sparteoBidAdapter.js +1 -1
  143. package/dist/sspBCBidAdapter.js +1 -1
  144. package/dist/stvBidAdapter.js +1 -1
  145. package/dist/sublimeBidAdapter.js +1 -1
  146. package/dist/taboolaBidAdapter.js +1 -1
  147. package/dist/tappxBidAdapter.js +1 -1
  148. package/dist/targetVideoBidAdapter.js +1 -1
  149. package/dist/teadsBidAdapter.js +1 -1
  150. package/dist/terceptAnalyticsAdapter.js +1 -1
  151. package/dist/themoneytizerBidAdapter.js +1 -1
  152. package/dist/trionBidAdapter.js +1 -1
  153. package/dist/tripleliftBidAdapter.js +1 -1
  154. package/dist/ttdBidAdapter.js +1 -1
  155. package/dist/ucfunnelAnalyticsAdapter.js +1 -1
  156. package/dist/uid2IdSystem.js +1 -1
  157. package/dist/underdogmediaBidAdapter.js +1 -1
  158. package/dist/undertoneBidAdapter.js +1 -1
  159. package/dist/unrulyBidAdapter.js +1 -1
  160. package/dist/vidazooUtils.js +1 -1
  161. package/dist/videobyteBidAdapter.js +1 -1
  162. package/dist/visxBidAdapter.js +1 -1
  163. package/dist/vuukleBidAdapter.js +1 -1
  164. package/dist/widespaceBidAdapter.js +1 -1
  165. package/dist/winrBidAdapter.js +1 -1
  166. package/dist/yahooAdsBidAdapter.js +1 -1
  167. package/dist/yandexBidAdapter.js +1 -1
  168. package/dist/yieldmoBidAdapter.js +1 -1
  169. package/dist/yieldoneAnalyticsAdapter.js +1 -1
  170. package/dist/yieldoneBidAdapter.js +1 -1
  171. package/gulpfile.js +2 -1
  172. package/integrationExamples/gpt/raveltechRtdProvider_example.html +379 -0
  173. package/libraries/braveUtils/index.js +1 -1
  174. package/libraries/riseUtils/index.js +1 -1
  175. package/modules/epomDspBidAdapter.js +177 -0
  176. package/modules/epomDspBidAdapter.md +170 -0
  177. package/modules/equativBidAdapter.js +14 -3
  178. package/modules/goldbachBidAdapter.js +160 -300
  179. package/modules/raveltechRtdProvider.js +131 -0
  180. package/modules/raveltechRtdProvider.md +61 -0
  181. package/modules/seedtagBidAdapter.js +1 -0
  182. package/modules/yandexBidAdapter.js +4 -0
  183. package/modules/yieldoneBidAdapter.js +6 -0
  184. package/package.json +2 -2
  185. package/test/spec/modules/epomDspBidAdapter_spec.js +73 -0
  186. package/test/spec/modules/equativBidAdapter_spec.js +19 -1
  187. package/test/spec/modules/goldbachBidAdapter_spec.js +227 -499
  188. package/test/spec/modules/raveltechRtdProvider_spec.js +108 -0
  189. package/test/spec/modules/seedtagBidAdapter_spec.js +56 -2
  190. package/test/spec/modules/yandexBidAdapter_spec.js +6 -0
  191. package/test/spec/modules/yieldoneBidAdapter_spec.js +40 -0
@@ -0,0 +1,170 @@
1
+ # Overview
2
+
3
+ ```
4
+ Module Name: Epom DSP Bid Adapter
5
+ Module Type: Bidder Adapter
6
+ Maintainer: support@epom.com
7
+ ```
8
+
9
+ # Description
10
+
11
+ The **Epom DSP Bid Adapter** allows publishers to connect with the Epom DSP Exchange for programmatic advertising. It supports banner formats and adheres to the OpenRTB protocol.
12
+
13
+ ## Supported Features
14
+
15
+ | Feature | Supported |
16
+ |---------------------|-----------|
17
+ | **TCF 2.0 Support** | ✅ Yes |
18
+ | **US Privacy (CCPA)** | ✅ Yes |
19
+ | **GPP Support** | ✅ Yes |
20
+ | **Media Types** | Banner |
21
+ | **Floors Module** | ✅ Yes |
22
+ | **User Sync** | iframe, image |
23
+ | **GDPR Compliance** | ✅ Yes |
24
+
25
+ # Integration Guide for Publishers
26
+
27
+ ## Basic Configuration
28
+
29
+ Below is an example configuration for integrating the Epom DSP Bid Adapter into your Prebid.js setup.
30
+
31
+ ### Sample Banner Ad Unit
32
+
33
+ ```javascript
34
+ var adUnits = [
35
+ {
36
+ code: 'epom-banner-div',
37
+ mediaTypes: {
38
+ banner: {
39
+ sizes: [
40
+ [300, 250],
41
+ [728, 90],
42
+ [160, 600],
43
+ ]
44
+ }
45
+ },
46
+ bids: [
47
+ {
48
+ bidder: 'epom_dsp',
49
+ params: {
50
+ endpoint: 'https://bidder.epommarket.com/bidder/v2_5/bid?key=d0b9fb9de9dfbba694dfe75294d8e45a'
51
+ }
52
+ }
53
+ ]
54
+ }
55
+ ];
56
+ ```
57
+
58
+ ---
59
+
60
+ # Params
61
+
62
+ The following parameters can be configured in the `params` object for the **Epom DSP Bid Adapter**.
63
+
64
+ | Parameter | Type | Required | Description |
65
+ |--------------|----------|----------|-------------------------------------------------------------------------|
66
+ | `endpoint` | string | Yes | The URL of the Epom DSP bidding endpoint. |
67
+ | `adUnitId` | string | No | Unique identifier for the Ad Unit. |
68
+ | `bidfloor` | number | No | Minimum CPM value for the bid in USD. |
69
+
70
+ ---
71
+
72
+ # Global Settings (Optional)
73
+
74
+ You can define **global configuration parameters** for the **Epom DSP Bid Adapter** using `pbjs.setBidderConfig`. This is **optional** and allows centralized control over bidder settings.
75
+
76
+ ### Example Global Configuration
77
+
78
+ ```javascript
79
+ pbjs.setBidderConfig({
80
+ bidders: ['epom_dsp'],
81
+ config: {
82
+ epomSettings: {
83
+ endpoint: 'https://bidder.epommarket.com/bidder/v2_5/bid?key=d0b9fb9de9dfbba694dfe75294d8e45a'
84
+ }
85
+ }
86
+ });
87
+ ```
88
+
89
+ ---
90
+
91
+ # Response Format
92
+
93
+ The **Epom DSP Bid Adapter** complies with the OpenRTB protocol and returns responses in the following format:
94
+
95
+ ```json
96
+ {
97
+ "bids": [
98
+ {
99
+ "requestId": "12345",
100
+ "cpm": 1.50,
101
+ "currency": "USD",
102
+ "width": 300,
103
+ "height": 250,
104
+ "ad": "<div>Ad content</div>",
105
+ "creativeId": "abc123",
106
+ "ttl": 300,
107
+ "netRevenue": true
108
+ }
109
+ ]
110
+ }
111
+ ```
112
+
113
+ ### Response Fields
114
+
115
+ | Field | Type | Description |
116
+ |--------------|----------|--------------------------------------------------|
117
+ | `requestId` | string | Unique identifier for the bid request. |
118
+ | `cpm` | number | Cost per thousand impressions (CPM) in USD. |
119
+ | `currency` | string | Currency of the bid (default: USD). |
120
+ | `width` | number | Width of the ad unit in pixels. |
121
+ | `height` | number | Height of the ad unit in pixels. |
122
+ | `ad` | string | HTML markup for rendering the ad. |
123
+ | `creativeId` | string | Identifier for the creative. |
124
+ | `ttl` | number | Time-to-live for the bid (in seconds). |
125
+ | `netRevenue` | boolean | Indicates whether the CPM is net revenue. |
126
+
127
+ ---
128
+
129
+ # GDPR and Privacy Compliance
130
+
131
+ The **Epom DSP Bid Adapter** supports GDPR and CCPA compliance. Consent information can be passed via:
132
+
133
+ - `bidderRequest.gdprConsent`
134
+ - `bidderRequest.uspConsent`
135
+
136
+ ---
137
+
138
+ # Support
139
+
140
+ For integration assistance, contact [Epom Support](mailto:support@epom.com).
141
+
142
+ ---
143
+
144
+ # Examples
145
+
146
+ ## Basic Banner Ad Unit
147
+
148
+ ```javascript
149
+ var adUnits = [
150
+ {
151
+ code: 'epom-banner',
152
+ mediaTypes: {
153
+ banner: {
154
+ sizes: [
155
+ [300, 250],
156
+ [728, 90],
157
+ [160, 600],
158
+ ]
159
+ }
160
+ },
161
+ bids: [
162
+ {
163
+ bidder: 'epom_dsp',
164
+ params: {
165
+ endpoint: 'https://bidder.epommarket.com/bidder/v2_5/bid?key=d0b9fb9de9dfbba694dfe75294d8e45a'
166
+ }
167
+ }
168
+ ]
169
+ }
170
+ ];
@@ -14,11 +14,11 @@ import { deepAccess, deepSetValue, logError, logWarn, mergeDeep } from '../src/u
14
14
  const BIDDER_CODE = 'equativ';
15
15
  const COOKIE_SYNC_ORIGIN = 'https://apps.smartadserver.com';
16
16
  const COOKIE_SYNC_URL = `${COOKIE_SYNC_ORIGIN}/diff/templates/asset/csync.html`;
17
+ const DEFAULT_TTL = 300;
17
18
  const LOG_PREFIX = 'Equativ:';
18
19
  const PID_STORAGE_NAME = 'eqt_pid';
19
20
 
20
21
  let nwid = 0;
21
-
22
22
  let impIdMap = {};
23
23
 
24
24
  /**
@@ -61,6 +61,14 @@ function getFloor(bid, mediaType, width, height, currency) {
61
61
  .floor || bid.params.bidfloor || -1;
62
62
  }
63
63
 
64
+ /**
65
+ * Gets value of the local variable impIdMap
66
+ * @returns {*} Value of impIdMap
67
+ */
68
+ export function getImpIdMap() {
69
+ return impIdMap;
70
+ };
71
+
64
72
  /**
65
73
  * Evaluates impressions for validity. The entry evaluated is considered valid if NEITHER of these conditions are met:
66
74
  * 1) it has a `video` property defined for `mediaTypes.video` which is an empty object
@@ -135,7 +143,10 @@ export const spec = {
135
143
  serverResponse.body.seatbid
136
144
  .filter(seat => seat?.bid?.length)
137
145
  .forEach(seat =>
138
- seat.bid.forEach(bid => bid.impid = impIdMap[bid.impid])
146
+ seat.bid.forEach(bid => {
147
+ bid.impid = impIdMap[bid.impid];
148
+ bid.ttl = typeof bid.exp === 'number' && bid.exp > 0 ? bid.exp : DEFAULT_TTL;
149
+ })
139
150
  );
140
151
  }
141
152
 
@@ -193,7 +204,7 @@ export const spec = {
193
204
  export const converter = ortbConverter({
194
205
  context: {
195
206
  netRevenue: true,
196
- ttl: 300,
207
+ ttl: DEFAULT_TTL
197
208
  },
198
209
 
199
210
  imp(buildImp, bidRequest, context) {