prebid.js 6.3.0 → 6.7.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 (157) hide show
  1. package/.circleci/config.yml +1 -1
  2. package/gulpfile.js +87 -74
  3. package/integrationExamples/gpt/amp/creative.html +11 -33
  4. package/karma.conf.maker.js +1 -1
  5. package/modules/.submodules.json +2 -1
  6. package/modules/adbookpspBidAdapter.js +27 -10
  7. package/modules/adhashBidAdapter.js +3 -3
  8. package/modules/adkernelBidAdapter.js +148 -62
  9. package/modules/adlooxAdServerVideo.js +2 -2
  10. package/modules/adlooxAnalyticsAdapter.js +4 -4
  11. package/modules/admanBidAdapter.js +10 -4
  12. package/modules/adomikAnalyticsAdapter.js +27 -9
  13. package/modules/adqueryIdSystem.js +103 -0
  14. package/modules/adqueryIdSystem.md +35 -0
  15. package/modules/adyoulikeBidAdapter.js +13 -9
  16. package/modules/aniviewBidAdapter.js +1 -1
  17. package/modules/beopBidAdapter.js +1 -1
  18. package/modules/bidViewability.js +3 -3
  19. package/modules/bidViewabilityIO.js +3 -3
  20. package/modules/bliinkBidAdapter.js +3 -2
  21. package/modules/colossussspBidAdapter.js +12 -8
  22. package/modules/colossussspBidAdapter.md +15 -1
  23. package/modules/compassBidAdapter.js +208 -0
  24. package/modules/compassBidAdapter.md +79 -0
  25. package/modules/consentManagement.js +7 -1
  26. package/modules/consumableBidAdapter.md +1 -1
  27. package/modules/criteoBidAdapter.js +1 -1
  28. package/modules/criteoIdSystem.js +29 -7
  29. package/modules/currency.js +2 -2
  30. package/modules/dailyhuntBidAdapter.js +435 -0
  31. package/modules/dailyhuntBidAdapter.md +4 -0
  32. package/modules/docereeBidAdapter.js +10 -1
  33. package/modules/docereeBidAdapter.md +2 -0
  34. package/modules/engageyaBidAdapter.js +1 -1
  35. package/modules/feedadBidAdapter.js +2 -2
  36. package/modules/feedadBidAdapter.md +4 -2
  37. package/modules/glimpseBidAdapter.js +66 -44
  38. package/modules/gnetBidAdapter.js +3 -3
  39. package/modules/gnetBidAdapter.md +4 -4
  40. package/modules/gptPreAuction.js +55 -7
  41. package/modules/gridBidAdapter.js +4 -3
  42. package/modules/gumgumBidAdapter.js +4 -4
  43. package/modules/idImportLibrary.js +45 -8
  44. package/modules/idImportLibrary.md +4 -0
  45. package/modules/improvedigitalBidAdapter.js +42 -4
  46. package/modules/instreamTracking.js +4 -4
  47. package/modules/invibesBidAdapter.js +49 -5
  48. package/modules/invibesBidAdapter.md +2 -1
  49. package/modules/ixBidAdapter.js +53 -18
  50. package/modules/jwplayerRtdProvider.js +71 -6
  51. package/modules/jwplayerRtdProvider.md +27 -11
  52. package/modules/kargoBidAdapter.js +2 -2
  53. package/modules/limelightDigitalBidAdapter.js +2 -1
  54. package/modules/livewrappedAnalyticsAdapter.js +3 -1
  55. package/modules/livewrappedBidAdapter.js +8 -2
  56. package/modules/loglyliftBidAdapter.js +79 -0
  57. package/modules/loglyliftBidAdapter.md +55 -0
  58. package/modules/nextMillenniumBidAdapter.js +11 -7
  59. package/modules/oguryBidAdapter.js +9 -2
  60. package/modules/onetagBidAdapter.js +4 -2
  61. package/modules/optimeraRtdProvider.js +8 -1
  62. package/modules/ozoneBidAdapter.js +21 -64
  63. package/modules/pilotxBidAdapter.js +147 -0
  64. package/modules/pilotxBidAdapter.md +50 -0
  65. package/modules/proxistoreBidAdapter.js +0 -2
  66. package/modules/pubgeniusBidAdapter.js +1 -1
  67. package/modules/pubmaticAnalyticsAdapter.js +16 -0
  68. package/modules/pubxaiAnalyticsAdapter.js +17 -0
  69. package/modules/richaudienceBidAdapter.js +3 -2
  70. package/modules/riseBidAdapter.js +1 -1
  71. package/modules/rtbhouseBidAdapter.js +14 -4
  72. package/modules/rtdModule/index.js +14 -15
  73. package/modules/rubiconAnalyticsAdapter.js +3 -2
  74. package/modules/rubiconBidAdapter.js +21 -11
  75. package/modules/seedingAllianceBidAdapter.js +3 -3
  76. package/modules/sharethroughBidAdapter.js +12 -17
  77. package/modules/showheroes-bsBidAdapter.js +13 -2
  78. package/modules/synacormediaBidAdapter.js +31 -10
  79. package/modules/tappxBidAdapter.js +8 -5
  80. package/modules/teadsBidAdapter.js +1 -2
  81. package/modules/telariaBidAdapter.js +2 -2
  82. package/modules/trustxBidAdapter.js +8 -16
  83. package/modules/userId/eids.js +7 -1
  84. package/modules/userId/userId.md +8 -0
  85. package/modules/viewability.js +177 -0
  86. package/modules/viewability.md +87 -0
  87. package/modules/welectBidAdapter.js +106 -0
  88. package/modules/yieldmoBidAdapter.js +23 -5
  89. package/modules/zeta_global_sspAnalyticsAdapter.js +97 -0
  90. package/modules/zeta_global_sspAnalyticsAdapter.md +24 -0
  91. package/package.json +1 -1
  92. package/src/auction.js +2 -2
  93. package/src/config.js +27 -3
  94. package/src/hook.js +5 -1
  95. package/src/prebid.js +20 -4
  96. package/src/secureCreatives.js +3 -2
  97. package/src/utils.js +12 -1
  98. package/test/helpers/prebidGlobal.js +1 -0
  99. package/test/spec/config_spec.js +279 -0
  100. package/test/spec/modules/adbookpspBidAdapter_spec.js +17 -3
  101. package/test/spec/modules/adhashBidAdapter_spec.js +2 -2
  102. package/test/spec/modules/adlooxAnalyticsAdapter_spec.js +6 -6
  103. package/test/spec/modules/admanBidAdapter_spec.js +2 -2
  104. package/test/spec/modules/adomikAnalyticsAdapter_spec.js +9 -1
  105. package/test/spec/modules/adqueryIdSystem_spec.js +74 -0
  106. package/test/spec/modules/adyoulikeBidAdapter_spec.js +49 -0
  107. package/test/spec/modules/beopBidAdapter_spec.js +1 -1
  108. package/test/spec/modules/bidViewabilityIO_spec.js +2 -2
  109. package/test/spec/modules/bidViewability_spec.js +4 -4
  110. package/test/spec/modules/bliinkBidAdapter_spec.js +2 -0
  111. package/test/spec/modules/colossussspBidAdapter_spec.js +5 -2
  112. package/test/spec/modules/compassBidAdapter_spec.js +398 -0
  113. package/test/spec/modules/consentManagement_spec.js +20 -0
  114. package/test/spec/modules/criteoIdSystem_spec.js +6 -3
  115. package/test/spec/modules/dailyhuntBidAdapter_spec.js +404 -0
  116. package/test/spec/modules/docereeBidAdapter_spec.js +9 -1
  117. package/test/spec/modules/eids_spec.js +15 -0
  118. package/test/spec/modules/feedadBidAdapter_spec.js +15 -0
  119. package/test/spec/modules/glimpseBidAdapter_spec.js +0 -18
  120. package/test/spec/modules/gnetBidAdapter_spec.js +6 -6
  121. package/test/spec/modules/gptPreAuction_spec.js +177 -2
  122. package/test/spec/modules/idImportLibrary_spec.js +197 -10
  123. package/test/spec/modules/improvedigitalBidAdapter_spec.js +45 -1
  124. package/test/spec/modules/invibesBidAdapter_spec.js +119 -0
  125. package/test/spec/modules/ixBidAdapter_spec.js +112 -62
  126. package/test/spec/modules/jwplayerRtdProvider_spec.js +195 -2
  127. package/test/spec/modules/kargoBidAdapter_spec.js +1 -1
  128. package/test/spec/modules/limelightDigitalBidAdapter_spec.js +75 -17
  129. package/test/spec/modules/livewrappedAnalyticsAdapter_spec.js +22 -0
  130. package/test/spec/modules/livewrappedBidAdapter_spec.js +31 -0
  131. package/test/spec/modules/loglyliftBidAdapter_spec.js +172 -0
  132. package/test/spec/modules/nextMillenniumBidAdapter_spec.js +9 -2
  133. package/test/spec/modules/oguryBidAdapter_spec.js +10 -2
  134. package/test/spec/modules/optimeraRtdProvider_spec.js +14 -1
  135. package/test/spec/modules/ozoneBidAdapter_spec.js +43 -31
  136. package/test/spec/modules/pilotxBidAdapter_spec.js +244 -0
  137. package/test/spec/modules/pubgeniusBidAdapter_spec.js +3 -3
  138. package/test/spec/modules/pubmaticAnalyticsAdapter_spec.js +13 -1
  139. package/test/spec/modules/pubxaiAnalyticsAdapter_spec.js +11 -0
  140. package/test/spec/modules/realTimeDataModule_spec.js +67 -5
  141. package/test/spec/modules/richaudienceBidAdapter_spec.js +40 -0
  142. package/test/spec/modules/riseBidAdapter_spec.js +1 -1
  143. package/test/spec/modules/rtbhouseBidAdapter_spec.js +20 -0
  144. package/test/spec/modules/rubiconAnalyticsAdapter_spec.js +30 -0
  145. package/test/spec/modules/rubiconBidAdapter_spec.js +48 -9
  146. package/test/spec/modules/sharethroughBidAdapter_spec.js +91 -6
  147. package/test/spec/modules/showheroes-bsBidAdapter_spec.js +2 -0
  148. package/test/spec/modules/synacormediaBidAdapter_spec.js +70 -0
  149. package/test/spec/modules/tappxBidAdapter_spec.js +0 -19
  150. package/test/spec/modules/teadsBidAdapter_spec.js +14 -59
  151. package/test/spec/modules/userId_spec.js +68 -19
  152. package/test/spec/modules/viewability_spec.js +280 -0
  153. package/test/spec/modules/welectBidAdapter_spec.js +211 -0
  154. package/test/spec/modules/zeta_global_sspAnalyticsAdapter_spec.js +427 -0
  155. package/test/spec/unit/pbjs_api_spec.js +3 -1
  156. package/test/test_deps.js +3 -0
  157. package/test/test_index.js +1 -3
@@ -0,0 +1,208 @@
1
+ import { isFn, deepAccess, logMessage, logError } from '../src/utils.js';
2
+
3
+ import { registerBidder } from '../src/adapters/bidderFactory.js';
4
+ import { BANNER, NATIVE, VIDEO } from '../src/mediaTypes.js';
5
+ import { config } from '../src/config.js';
6
+
7
+ const BIDDER_CODE = 'compass';
8
+ const AD_URL = 'https://sa-lb.deliverimp.com/pbjs';
9
+ const SYNC_URL = 'https://sa-cs.deliverimp.com';
10
+
11
+ function isBidResponseValid(bid) {
12
+ if (!bid.requestId || !bid.cpm || !bid.creativeId || !bid.ttl || !bid.currency) {
13
+ return false;
14
+ }
15
+
16
+ switch (bid.mediaType) {
17
+ case BANNER:
18
+ return Boolean(bid.width && bid.height && bid.ad);
19
+ case VIDEO:
20
+ return Boolean(bid.vastUrl || bid.vastXml);
21
+ case NATIVE:
22
+ return Boolean(bid.native && bid.native.impressionTrackers && bid.native.impressionTrackers.length);
23
+ default:
24
+ return false;
25
+ }
26
+ }
27
+
28
+ function getPlacementReqData(bid) {
29
+ const { params, bidId, mediaTypes } = bid;
30
+ const schain = bid.schain || {};
31
+ const { placementId, endpointId } = params;
32
+ const bidfloor = getBidFloor(bid);
33
+
34
+ const placement = {
35
+ bidId,
36
+ schain,
37
+ bidfloor
38
+ };
39
+
40
+ if (placementId) {
41
+ placement.placementId = placementId;
42
+ placement.type = 'publisher';
43
+ } else if (endpointId) {
44
+ placement.endpointId = endpointId;
45
+ placement.type = 'network';
46
+ }
47
+
48
+ if (mediaTypes && mediaTypes[BANNER]) {
49
+ placement.adFormat = BANNER;
50
+ placement.sizes = mediaTypes[BANNER].sizes;
51
+ } else if (mediaTypes && mediaTypes[VIDEO]) {
52
+ placement.adFormat = VIDEO;
53
+ placement.playerSize = mediaTypes[VIDEO].playerSize;
54
+ placement.minduration = mediaTypes[VIDEO].minduration;
55
+ placement.maxduration = mediaTypes[VIDEO].maxduration;
56
+ placement.mimes = mediaTypes[VIDEO].mimes;
57
+ placement.protocols = mediaTypes[VIDEO].protocols;
58
+ placement.startdelay = mediaTypes[VIDEO].startdelay;
59
+ placement.placement = mediaTypes[VIDEO].placement;
60
+ placement.skip = mediaTypes[VIDEO].skip;
61
+ placement.skipafter = mediaTypes[VIDEO].skipafter;
62
+ placement.minbitrate = mediaTypes[VIDEO].minbitrate;
63
+ placement.maxbitrate = mediaTypes[VIDEO].maxbitrate;
64
+ placement.delivery = mediaTypes[VIDEO].delivery;
65
+ placement.playbackmethod = mediaTypes[VIDEO].playbackmethod;
66
+ placement.api = mediaTypes[VIDEO].api;
67
+ placement.linearity = mediaTypes[VIDEO].linearity;
68
+ } else if (mediaTypes && mediaTypes[NATIVE]) {
69
+ placement.native = mediaTypes[NATIVE];
70
+ placement.adFormat = NATIVE;
71
+ }
72
+
73
+ return placement;
74
+ }
75
+
76
+ function getBidFloor(bid) {
77
+ if (!isFn(bid.getFloor)) {
78
+ return deepAccess(bid, 'params.bidfloor', 0);
79
+ }
80
+
81
+ try {
82
+ const bidFloor = bid.getFloor({
83
+ currency: 'USD',
84
+ mediaType: '*',
85
+ size: '*',
86
+ });
87
+ return bidFloor.floor;
88
+ } catch (err) {
89
+ logError(err);
90
+ return 0;
91
+ }
92
+ }
93
+
94
+ export const spec = {
95
+ code: BIDDER_CODE,
96
+ supportedMediaTypes: [BANNER, VIDEO, NATIVE],
97
+
98
+ isBidRequestValid: (bid = {}) => {
99
+ const { params, bidId, mediaTypes } = bid;
100
+ let valid = Boolean(bidId && params && (params.placementId || params.endpointId));
101
+
102
+ if (mediaTypes && mediaTypes[BANNER]) {
103
+ valid = valid && Boolean(mediaTypes[BANNER] && mediaTypes[BANNER].sizes);
104
+ } else if (mediaTypes && mediaTypes[VIDEO]) {
105
+ valid = valid && Boolean(mediaTypes[VIDEO] && mediaTypes[VIDEO].playerSize);
106
+ } else if (mediaTypes && mediaTypes[NATIVE]) {
107
+ valid = valid && Boolean(mediaTypes[NATIVE]);
108
+ } else {
109
+ valid = false;
110
+ }
111
+ return valid;
112
+ },
113
+
114
+ buildRequests: (validBidRequests = [], bidderRequest = {}) => {
115
+ let deviceWidth = 0;
116
+ let deviceHeight = 0;
117
+
118
+ let winLocation;
119
+ try {
120
+ const winTop = window.top;
121
+ deviceWidth = winTop.screen.width;
122
+ deviceHeight = winTop.screen.height;
123
+ winLocation = winTop.location;
124
+ } catch (e) {
125
+ logMessage(e);
126
+ winLocation = window.location;
127
+ }
128
+
129
+ const refferUrl = bidderRequest.refererInfo && bidderRequest.refererInfo.referer;
130
+ let refferLocation;
131
+ try {
132
+ refferLocation = refferUrl && new URL(refferUrl);
133
+ } catch (e) {
134
+ logMessage(e);
135
+ }
136
+
137
+ let location = refferLocation || winLocation;
138
+ const language = (navigator && navigator.language) ? navigator.language.split('-')[0] : '';
139
+ const host = location.host;
140
+ const page = location.pathname;
141
+ const secure = location.protocol === 'https:' ? 1 : 0;
142
+ const placements = [];
143
+ const request = {
144
+ deviceWidth,
145
+ deviceHeight,
146
+ language,
147
+ secure,
148
+ host,
149
+ page,
150
+ placements,
151
+ coppa: config.getConfig('coppa') === true ? 1 : 0,
152
+ ccpa: bidderRequest.uspConsent || undefined,
153
+ gdpr: bidderRequest.gdprConsent || undefined,
154
+ tmax: config.getConfig('bidderTimeout')
155
+ };
156
+
157
+ const len = validBidRequests.length;
158
+ for (let i = 0; i < len; i++) {
159
+ const bid = validBidRequests[i];
160
+ placements.push(getPlacementReqData(bid));
161
+ }
162
+
163
+ return {
164
+ method: 'POST',
165
+ url: AD_URL,
166
+ data: request
167
+ };
168
+ },
169
+
170
+ interpretResponse: (serverResponse) => {
171
+ let response = [];
172
+ for (let i = 0; i < serverResponse.body.length; i++) {
173
+ let resItem = serverResponse.body[i];
174
+ if (isBidResponseValid(resItem)) {
175
+ const advertiserDomains = resItem.adomain && resItem.adomain.length ? resItem.adomain : [];
176
+ resItem.meta = { ...resItem.meta, advertiserDomains };
177
+
178
+ response.push(resItem);
179
+ }
180
+ }
181
+ return response;
182
+ },
183
+
184
+ getUserSyncs: (syncOptions, serverResponses, gdprConsent, uspConsent) => {
185
+ let syncType = syncOptions.iframeEnabled ? 'iframe' : 'image';
186
+ let syncUrl = SYNC_URL + `/${syncType}?pbjs=1`;
187
+ if (gdprConsent && gdprConsent.consentString) {
188
+ if (typeof gdprConsent.gdprApplies === 'boolean') {
189
+ syncUrl += `&gdpr=${Number(gdprConsent.gdprApplies)}&gdpr_consent=${gdprConsent.consentString}`;
190
+ } else {
191
+ syncUrl += `&gdpr=0&gdpr_consent=${gdprConsent.consentString}`;
192
+ }
193
+ }
194
+ if (uspConsent && uspConsent.consentString) {
195
+ syncUrl += `&ccpa_consent=${uspConsent.consentString}`;
196
+ }
197
+
198
+ const coppa = config.getConfig('coppa') ? 1 : 0;
199
+ syncUrl += `&coppa=${coppa}`;
200
+
201
+ return [{
202
+ type: syncType,
203
+ url: syncUrl
204
+ }];
205
+ }
206
+ };
207
+
208
+ registerBidder(spec);
@@ -0,0 +1,79 @@
1
+ # Overview
2
+
3
+ ```
4
+ Module Name: Compass Bidder Adapter
5
+ Module Type: Compass Bidder Adapter
6
+ Maintainer: sa-support@brightcom.com
7
+ ```
8
+
9
+ # Description
10
+
11
+ Connects to Compass exchange for bids.
12
+ Compass bid adapter supports Banner, Video (instream and outstream) and Native.
13
+
14
+ # Test Parameters
15
+ ```
16
+ var adUnits = [
17
+ // Will return static test banner
18
+ {
19
+ code: 'adunit1',
20
+ mediaTypes: {
21
+ banner: {
22
+ sizes: [ [300, 250], [320, 50] ],
23
+ }
24
+ },
25
+ bids: [
26
+ {
27
+ bidder: 'compass',
28
+ params: {
29
+ placementId: 'testBanner',
30
+ }
31
+ }
32
+ ]
33
+ },
34
+ {
35
+ code: 'addunit2',
36
+ mediaTypes: {
37
+ video: {
38
+ playerSize: [ [640, 480] ],
39
+ context: 'instream',
40
+ minduration: 5,
41
+ maxduration: 60,
42
+ }
43
+ },
44
+ bids: [
45
+ {
46
+ bidder: 'compass',
47
+ params: {
48
+ placementId: 'testVideo',
49
+ }
50
+ }
51
+ ]
52
+ },
53
+ {
54
+ code: 'addunit3',
55
+ mediaTypes: {
56
+ native: {
57
+ title: {
58
+ required: true
59
+ },
60
+ body: {
61
+ required: true
62
+ },
63
+ icon: {
64
+ required: true,
65
+ size: [64, 64]
66
+ }
67
+ }
68
+ },
69
+ bids: [
70
+ {
71
+ bidder: 'compass',
72
+ params: {
73
+ placementId: 'testNative',
74
+ }
75
+ }
76
+ ]
77
+ }
78
+ ];
79
+ ```
@@ -371,7 +371,13 @@ function processCmpData(consentObject, hookConfig) {
371
371
  * General timeout callback when interacting with CMP takes too long.
372
372
  */
373
373
  function cmpTimedOut(hookConfig) {
374
- cmpFailed('CMP workflow exceeded timeout threshold.', hookConfig);
374
+ if (cmpVersion === 2) {
375
+ logWarn(`No response from CMP, continuing auction...`)
376
+ storeConsentData(undefined);
377
+ exitModule(null, hookConfig)
378
+ } else {
379
+ cmpFailed('CMP workflow exceeded timeout threshold.', hookConfig);
380
+ }
375
381
  }
376
382
 
377
383
  /**
@@ -4,7 +4,7 @@ Module Name: Consumable Bid Adapter
4
4
 
5
5
  Module Type: Consumable Adapter
6
6
 
7
- Maintainer: naffis@consumable.com
7
+ Maintainer: prebid@consumable.com
8
8
 
9
9
  # Description
10
10
 
@@ -24,7 +24,7 @@ const LOG_PREFIX = 'Criteo: ';
24
24
  Unminified source code can be found in the privately shared repo: https://github.com/Prebid-org/prebid-js-external-js-criteo/blob/master/dist/prod.js
25
25
  */
26
26
  const FAST_BID_VERSION_PLACEHOLDER = '%FAST_BID_VERSION%';
27
- export const FAST_BID_VERSION_CURRENT = 116;
27
+ export const FAST_BID_VERSION_CURRENT = 117;
28
28
  const FAST_BID_VERSION_LATEST = 'latest';
29
29
  const FAST_BID_VERSION_NONE = 'none';
30
30
  const PUBLISHER_TAG_URL_TEMPLATE = 'https://static.criteo.net/js/ld/publishertag.prebid' + FAST_BID_VERSION_PLACEHOLDER + '.js';
@@ -33,15 +33,37 @@ function getFromAllStorages(key) {
33
33
  return storage.getCookie(key) || storage.getDataFromLocalStorage(key);
34
34
  }
35
35
 
36
- function saveOnAllStorages(key, value) {
36
+ function saveOnAllStorages(key, value, hostname) {
37
37
  if (key && value) {
38
- storage.setCookie(key, value, expirationString);
39
38
  storage.setDataInLocalStorage(key, value);
39
+ setCookieOnAllDomains(key, value, expirationString, hostname, true);
40
40
  }
41
41
  }
42
42
 
43
- function deleteFromAllStorages(key) {
44
- storage.setCookie(key, '', pastDateString);
43
+ function setCookieOnAllDomains(key, value, expiration, hostname, stopOnSuccess) {
44
+ const subDomains = hostname.split('.');
45
+ for (let i = 0; i < subDomains.length; ++i) {
46
+ // Try to write the cookie on this subdomain (we want it to be stored only on the TLD+1)
47
+ const domain = subDomains.slice(subDomains.length - i - 1, subDomains.length).join('.');
48
+
49
+ try {
50
+ storage.setCookie(key, value, expiration, null, '.' + domain);
51
+
52
+ if (stopOnSuccess) {
53
+ // Try to read the cookie to check if we wrote it
54
+ const ck = storage.getCookie(key);
55
+ if (ck && ck === value) {
56
+ break;
57
+ }
58
+ }
59
+ } catch (error) {
60
+
61
+ }
62
+ }
63
+ }
64
+
65
+ function deleteFromAllStorages(key, hostname) {
66
+ setCookieOnAllDomains(key, '', pastDateString, hostname, true);
45
67
  storage.removeDataFromLocalStorage(key);
46
68
  }
47
69
 
@@ -89,15 +111,15 @@ function callCriteoUserSync(parsedCriteoData, gdprString, callback) {
89
111
  const urlsToCall = typeof jsonResponse.acwsUrl === 'string' ? [jsonResponse.acwsUrl] : jsonResponse.acwsUrl;
90
112
  urlsToCall.forEach(url => triggerPixel(url));
91
113
  } else if (jsonResponse.bundle) {
92
- saveOnAllStorages(bundleStorageKey, jsonResponse.bundle);
114
+ saveOnAllStorages(bundleStorageKey, jsonResponse.bundle, domain);
93
115
  }
94
116
 
95
117
  if (jsonResponse.bidId) {
96
- saveOnAllStorages(bididStorageKey, jsonResponse.bidId);
118
+ saveOnAllStorages(bididStorageKey, jsonResponse.bidId, domain);
97
119
  const criteoId = { criteoId: jsonResponse.bidId };
98
120
  callback(criteoId);
99
121
  } else {
100
- deleteFromAllStorages(bididStorageKey);
122
+ deleteFromAllStorages(bididStorageKey, domain);
101
123
  callback();
102
124
  }
103
125
  },
@@ -1,7 +1,7 @@
1
1
  import { logInfo, logWarn, logError, logMessage } from '../src/utils.js';
2
2
  import { getGlobal } from '../src/prebidGlobal.js';
3
3
  import { createBid } from '../src/bidfactory.js';
4
- import { STATUS } from '../src/constants.json';
4
+ import CONSTANTS from '../src/constants.json';
5
5
  import { ajax } from '../src/ajax.js';
6
6
  import { config } from '../src/config.js';
7
7
  import { getHook } from '../src/hook.js';
@@ -219,7 +219,7 @@ function wrapFunction(fn, context, params) {
219
219
  }
220
220
  } catch (e) {
221
221
  logWarn('Returning NO_BID, getCurrencyConversion threw error: ', e);
222
- params[1] = createBid(STATUS.NO_BID, {
222
+ params[1] = createBid(CONSTANTS.STATUS.NO_BID, {
223
223
  bidder: bid.bidderCode || bid.bidder,
224
224
  bidId: bid.requestId
225
225
  });