@constructor-io/constructorio-client-javascript 2.26.0 → 2.26.4
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.
|
@@ -18,7 +18,7 @@ var HumanityCheck = require('../utils/humanity-check');
|
|
|
18
18
|
var helpers = require('../utils/helpers');
|
|
19
19
|
|
|
20
20
|
var storageKey = '_constructorio_requests';
|
|
21
|
-
var requestTTL =
|
|
21
|
+
var requestTTL = 180000; // 3 minutes in milliseconds
|
|
22
22
|
|
|
23
23
|
var RequestQueue = /*#__PURE__*/function () {
|
|
24
24
|
function RequestQueue(options, eventemitter) {
|
|
@@ -103,16 +103,12 @@ var RequestQueue = /*#__PURE__*/function () {
|
|
|
103
103
|
if (nextInQueue.url) {
|
|
104
104
|
// Pull `dt` parameter from URL, indicating origin time of request
|
|
105
105
|
var dtMatch = nextInQueue.url.match(/\?.*_dt=([^&]+)/);
|
|
106
|
-
var requestOriginTime = dtMatch && dtMatch[1];
|
|
106
|
+
var requestOriginTime = parseInt(dtMatch && dtMatch[1], 10);
|
|
107
107
|
var now = +new Date();
|
|
108
108
|
|
|
109
|
-
if (requestOriginTime && now - requestOriginTime > requestTTL) {
|
|
109
|
+
if (requestOriginTime && Number.isInteger(requestOriginTime) && now - requestOriginTime > requestTTL) {
|
|
110
|
+
this.sendTrackingEvents = false;
|
|
110
111
|
RequestQueue.remove();
|
|
111
|
-
instance.eventemitter.emit('error', {
|
|
112
|
-
url: nextInQueue.url,
|
|
113
|
-
method: nextInQueue.method,
|
|
114
|
-
message: "Request queue cleared - an item in the queue existed for longer than TTL value of ".concat(requestTTL, "ms")
|
|
115
|
-
});
|
|
116
112
|
return;
|
|
117
113
|
}
|
|
118
114
|
}
|
|
@@ -218,6 +214,7 @@ var RequestQueue = /*#__PURE__*/function () {
|
|
|
218
214
|
// - Firefox seeing identical events being transmitted multiple times
|
|
219
215
|
|
|
220
216
|
if (Array.isArray(localStorageQueue) && localStorageQueue.length !== queue.length) {
|
|
217
|
+
this.sendTrackingEvents = false;
|
|
221
218
|
RequestQueue.remove();
|
|
222
219
|
}
|
|
223
220
|
} // Remove current request queue key
|