@constructor-io/constructorio-client-javascript 2.71.0 → 2.71.2
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.
- package/lib/constructorio.js +2 -1
- package/lib/modules/agent.js +5 -3
- package/lib/modules/assistant.js +10 -7
- package/lib/modules/autocomplete.js +2 -1
- package/lib/modules/browse.js +4 -3
- package/lib/modules/quizzes.js +2 -1
- package/lib/modules/recommendations.js +2 -1
- package/lib/modules/search.js +2 -1
- package/lib/modules/tracker.js +22 -13
- package/lib/types/index.d.ts +3 -0
- package/lib/utils/event-dispatcher.js +2 -1
- package/lib/utils/events.js +13 -4
- package/lib/utils/helpers.js +23 -3
- package/lib/utils/humanity-check.js +5 -4
- package/lib/utils/request-queue.js +5 -4
- package/lib/version.js +2 -1
- package/package.json +1 -1
- package/lib/.DS_Store +0 -0
package/lib/constructorio.js
CHANGED
|
@@ -165,7 +165,7 @@ var ConstructorIO = /*#__PURE__*/function () {
|
|
|
165
165
|
* @param {string} [options.userId] - User ID
|
|
166
166
|
* @param {boolean} [options.sendTrackingEvents] - Indicates if tracking events should be dispatched
|
|
167
167
|
*/
|
|
168
|
-
|
|
168
|
+
(0, _createClass2["default"])(ConstructorIO, [{
|
|
169
169
|
key: "setClientOptions",
|
|
170
170
|
value: function setClientOptions(options) {
|
|
171
171
|
if (Object.keys(options).length) {
|
|
@@ -201,6 +201,7 @@ var ConstructorIO = /*#__PURE__*/function () {
|
|
|
201
201
|
}
|
|
202
202
|
}
|
|
203
203
|
}]);
|
|
204
|
+
return ConstructorIO;
|
|
204
205
|
}(); // Exposed for testing
|
|
205
206
|
ConstructorIO.Tracker = Tracker;
|
|
206
207
|
|
package/lib/modules/agent.js
CHANGED
|
@@ -125,7 +125,7 @@ var Agent = /*#__PURE__*/function () {
|
|
|
125
125
|
(0, _classCallCheck2["default"])(this, Agent);
|
|
126
126
|
this.options = options || {};
|
|
127
127
|
}
|
|
128
|
-
|
|
128
|
+
(0, _createClass2["default"])(Agent, [{
|
|
129
129
|
key: "getAgentResultsStream",
|
|
130
130
|
value:
|
|
131
131
|
/**
|
|
@@ -170,17 +170,18 @@ var Agent = /*#__PURE__*/function () {
|
|
|
170
170
|
} catch (e) {
|
|
171
171
|
if (readableStream) {
|
|
172
172
|
var _readableStream;
|
|
173
|
-
(_readableStream = readableStream) === null || _readableStream === void 0
|
|
173
|
+
(_readableStream = readableStream) === null || _readableStream === void 0 ? void 0 : _readableStream.cancel();
|
|
174
174
|
} else {
|
|
175
175
|
var _eventSource;
|
|
176
176
|
// If the stream was not successfully created, close the EventSource directly
|
|
177
|
-
(_eventSource = eventSource) === null || _eventSource === void 0
|
|
177
|
+
(_eventSource = eventSource) === null || _eventSource === void 0 ? void 0 : _eventSource.close();
|
|
178
178
|
}
|
|
179
179
|
throw new Error(e.message);
|
|
180
180
|
}
|
|
181
181
|
return readableStream;
|
|
182
182
|
}
|
|
183
183
|
}]);
|
|
184
|
+
return Agent;
|
|
184
185
|
}();
|
|
185
186
|
(0, _defineProperty2["default"])(Agent, "EventTypes", {
|
|
186
187
|
START: 'start',
|
|
@@ -201,6 +202,7 @@ var Agent = /*#__PURE__*/function () {
|
|
|
201
202
|
// This event type is used for enhancing recommendations with media content such as images
|
|
202
203
|
END: 'end' // Represents the end of data stream
|
|
203
204
|
});
|
|
205
|
+
|
|
204
206
|
module.exports = Agent;
|
|
205
207
|
module.exports.createAgentUrl = createAgentUrl;
|
|
206
208
|
module.exports.setupEventListeners = setupEventListeners;
|
package/lib/modules/assistant.js
CHANGED
|
@@ -3,12 +3,13 @@
|
|
|
3
3
|
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
4
|
var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
|
|
5
5
|
var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
|
|
6
|
+
var _assertThisInitialized2 = _interopRequireDefault(require("@babel/runtime/helpers/assertThisInitialized"));
|
|
7
|
+
var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
|
|
6
8
|
var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn"));
|
|
7
9
|
var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
|
|
8
|
-
var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
|
|
9
10
|
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
10
|
-
function
|
|
11
|
-
function _isNativeReflectConstruct() {
|
|
11
|
+
function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = (0, _getPrototypeOf2["default"])(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = (0, _getPrototypeOf2["default"])(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return (0, _possibleConstructorReturn2["default"])(this, result); }; }
|
|
12
|
+
function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
|
|
12
13
|
var Agent = require('./agent');
|
|
13
14
|
var _require = require('./agent'),
|
|
14
15
|
createAgentUrl = _require.createAgentUrl,
|
|
@@ -23,18 +24,19 @@ var _require = require('./agent'),
|
|
|
23
24
|
* @returns {object}
|
|
24
25
|
*/
|
|
25
26
|
var Assistant = /*#__PURE__*/function (_Agent) {
|
|
27
|
+
(0, _inherits2["default"])(Assistant, _Agent);
|
|
28
|
+
var _super = _createSuper(Assistant);
|
|
26
29
|
function Assistant() {
|
|
27
30
|
var _this;
|
|
28
31
|
(0, _classCallCheck2["default"])(this, Assistant);
|
|
29
32
|
for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
|
|
30
33
|
args[_key] = arguments[_key];
|
|
31
34
|
}
|
|
32
|
-
_this =
|
|
33
|
-
(0, _defineProperty2["default"])(_this, "EventTypes", Agent.EventTypes);
|
|
35
|
+
_this = _super.call.apply(_super, [this].concat(args));
|
|
36
|
+
(0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "EventTypes", Agent.EventTypes);
|
|
34
37
|
return _this;
|
|
35
38
|
}
|
|
36
|
-
(0,
|
|
37
|
-
return (0, _createClass2["default"])(Assistant, [{
|
|
39
|
+
(0, _createClass2["default"])(Assistant, [{
|
|
38
40
|
key: "getAssistantResultsStream",
|
|
39
41
|
value:
|
|
40
42
|
/**
|
|
@@ -59,6 +61,7 @@ var Assistant = /*#__PURE__*/function (_Agent) {
|
|
|
59
61
|
return this.getAgentResultsStream(query, parameters);
|
|
60
62
|
}
|
|
61
63
|
}]);
|
|
64
|
+
return Assistant;
|
|
62
65
|
}(Agent);
|
|
63
66
|
module.exports = Assistant;
|
|
64
67
|
module.exports.createAssistantUrl = createAgentUrl;
|
|
@@ -170,7 +170,7 @@ var Autocomplete = /*#__PURE__*/function () {
|
|
|
170
170
|
* },
|
|
171
171
|
* });
|
|
172
172
|
*/
|
|
173
|
-
|
|
173
|
+
(0, _createClass2["default"])(Autocomplete, [{
|
|
174
174
|
key: "getAutocompleteResults",
|
|
175
175
|
value: function getAutocompleteResults(query, parameters) {
|
|
176
176
|
var _this = this;
|
|
@@ -214,5 +214,6 @@ var Autocomplete = /*#__PURE__*/function () {
|
|
|
214
214
|
});
|
|
215
215
|
}
|
|
216
216
|
}]);
|
|
217
|
+
return Autocomplete;
|
|
217
218
|
}();
|
|
218
219
|
module.exports = Autocomplete;
|
package/lib/modules/browse.js
CHANGED
|
@@ -4,8 +4,8 @@ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefau
|
|
|
4
4
|
var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
|
|
5
5
|
var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
|
|
6
6
|
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
7
|
-
function ownKeys(
|
|
8
|
-
function _objectSpread(
|
|
7
|
+
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) { symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); } keys.push.apply(keys, symbols); } return keys; }
|
|
8
|
+
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { (0, _defineProperty2["default"])(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
|
|
9
9
|
/* eslint-disable object-curly-newline, no-underscore-dangle, max-len, complexity */
|
|
10
10
|
var EventDispatcher = require('../utils/event-dispatcher');
|
|
11
11
|
var helpers = require('../utils/helpers');
|
|
@@ -253,7 +253,7 @@ var Browse = /*#__PURE__*/function () {
|
|
|
253
253
|
* }
|
|
254
254
|
* });
|
|
255
255
|
*/
|
|
256
|
-
|
|
256
|
+
(0, _createClass2["default"])(Browse, [{
|
|
257
257
|
key: "getBrowseResults",
|
|
258
258
|
value: function getBrowseResults(filterName, filterValue, parameters) {
|
|
259
259
|
var _this = this;
|
|
@@ -510,5 +510,6 @@ var Browse = /*#__PURE__*/function () {
|
|
|
510
510
|
});
|
|
511
511
|
}
|
|
512
512
|
}]);
|
|
513
|
+
return Browse;
|
|
513
514
|
}();
|
|
514
515
|
module.exports = Browse;
|
package/lib/modules/quizzes.js
CHANGED
|
@@ -153,7 +153,7 @@ var Quizzes = /*#__PURE__*/function () {
|
|
|
153
153
|
* quizSessionId: '1234',
|
|
154
154
|
* });
|
|
155
155
|
*/
|
|
156
|
-
|
|
156
|
+
(0, _createClass2["default"])(Quizzes, [{
|
|
157
157
|
key: "getQuizNextQuestion",
|
|
158
158
|
value: function getQuizNextQuestion(quizId, parameters) {
|
|
159
159
|
var _this = this;
|
|
@@ -328,5 +328,6 @@ var Quizzes = /*#__PURE__*/function () {
|
|
|
328
328
|
});
|
|
329
329
|
}
|
|
330
330
|
}]);
|
|
331
|
+
return Quizzes;
|
|
331
332
|
}();
|
|
332
333
|
module.exports = Quizzes;
|
|
@@ -146,7 +146,7 @@ var Recommendations = /*#__PURE__*/function () {
|
|
|
146
146
|
* },
|
|
147
147
|
* });
|
|
148
148
|
*/
|
|
149
|
-
|
|
149
|
+
(0, _createClass2["default"])(Recommendations, [{
|
|
150
150
|
key: "getRecommendations",
|
|
151
151
|
value: function getRecommendations(podId, parameters) {
|
|
152
152
|
var _this = this;
|
|
@@ -184,5 +184,6 @@ var Recommendations = /*#__PURE__*/function () {
|
|
|
184
184
|
});
|
|
185
185
|
}
|
|
186
186
|
}]);
|
|
187
|
+
return Recommendations;
|
|
187
188
|
}();
|
|
188
189
|
module.exports = Recommendations;
|
package/lib/modules/search.js
CHANGED
|
@@ -201,7 +201,7 @@ var Search = /*#__PURE__*/function () {
|
|
|
201
201
|
* }
|
|
202
202
|
* });
|
|
203
203
|
*/
|
|
204
|
-
|
|
204
|
+
(0, _createClass2["default"])(Search, [{
|
|
205
205
|
key: "getSearchResults",
|
|
206
206
|
value: function getSearchResults(query, parameters) {
|
|
207
207
|
var _this = this;
|
|
@@ -316,5 +316,6 @@ var Search = /*#__PURE__*/function () {
|
|
|
316
316
|
});
|
|
317
317
|
}
|
|
318
318
|
}]);
|
|
319
|
+
return Search;
|
|
319
320
|
}();
|
|
320
321
|
module.exports = Search;
|
package/lib/modules/tracker.js
CHANGED
|
@@ -5,8 +5,8 @@ var _typeof2 = _interopRequireDefault(require("@babel/runtime/helpers/typeof"));
|
|
|
5
5
|
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
6
6
|
var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
|
|
7
7
|
var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
|
|
8
|
-
function ownKeys(
|
|
9
|
-
function _objectSpread(
|
|
8
|
+
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) { symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); } keys.push.apply(keys, symbols); } return keys; }
|
|
9
|
+
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { (0, _defineProperty2["default"])(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
|
|
10
10
|
/* eslint-disable max-depth */
|
|
11
11
|
/* eslint-disable complexity */
|
|
12
12
|
/* eslint-disable max-len */
|
|
@@ -29,6 +29,8 @@ function applyParams(parameters, options) {
|
|
|
29
29
|
host = _helpers$getWindowLoc.host,
|
|
30
30
|
pathname = _helpers$getWindowLoc.pathname,
|
|
31
31
|
search = _helpers$getWindowLoc.search;
|
|
32
|
+
var canonicalUrl = helpers.getCanonicalUrl();
|
|
33
|
+
var documentReferrer = helpers.getDocumentReferrer();
|
|
32
34
|
var sendReferrerWithTrackingEvents = options.sendReferrerWithTrackingEvents === false ? false : true; // Defaults to 'true'
|
|
33
35
|
var aggregateParams = Object.assign(parameters);
|
|
34
36
|
if (version) {
|
|
@@ -49,6 +51,12 @@ function applyParams(parameters, options) {
|
|
|
49
51
|
if (apiKey) {
|
|
50
52
|
aggregateParams.key = apiKey;
|
|
51
53
|
}
|
|
54
|
+
if (documentReferrer) {
|
|
55
|
+
aggregateParams.document_referrer = documentReferrer;
|
|
56
|
+
}
|
|
57
|
+
if (canonicalUrl) {
|
|
58
|
+
aggregateParams.canonical_url = canonicalUrl;
|
|
59
|
+
}
|
|
52
60
|
if (testCells) {
|
|
53
61
|
Object.keys(testCells).forEach(function (testCellKey) {
|
|
54
62
|
aggregateParams["ef-".concat(testCellKey)] = testCells[testCellKey];
|
|
@@ -114,7 +122,7 @@ var Tracker = /*#__PURE__*/function () {
|
|
|
114
122
|
* @example
|
|
115
123
|
* constructorio.tracker.trackSessionStartV2();
|
|
116
124
|
*/
|
|
117
|
-
|
|
125
|
+
(0, _createClass2["default"])(Tracker, [{
|
|
118
126
|
key: "trackSessionStartV2",
|
|
119
127
|
value: function trackSessionStartV2() {
|
|
120
128
|
var networkParameters = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
|
|
@@ -2098,8 +2106,8 @@ var Tracker = /*#__PURE__*/function () {
|
|
|
2098
2106
|
_parameters$quizSessi2 = parameters.quizSessionId,
|
|
2099
2107
|
quizSessionId = _parameters$quizSessi2 === void 0 ? quiz_session_id : _parameters$quizSessi2,
|
|
2100
2108
|
item_id = parameters.item_id,
|
|
2101
|
-
_parameters$
|
|
2102
|
-
itemId = _parameters$
|
|
2109
|
+
_parameters$itemId10 = parameters.itemId,
|
|
2110
|
+
itemId = _parameters$itemId10 === void 0 ? item_id : _parameters$itemId10,
|
|
2103
2111
|
item_name = parameters.item_name,
|
|
2104
2112
|
_parameters$itemName8 = parameters.itemName,
|
|
2105
2113
|
itemName = _parameters$itemName8 === void 0 ? item_name : _parameters$itemName8,
|
|
@@ -2256,8 +2264,8 @@ var Tracker = /*#__PURE__*/function () {
|
|
|
2256
2264
|
_parameters$quizSessi3 = parameters.quizSessionId,
|
|
2257
2265
|
quizSessionId = _parameters$quizSessi3 === void 0 ? quiz_session_id : _parameters$quizSessi3,
|
|
2258
2266
|
item_id = parameters.item_id,
|
|
2259
|
-
_parameters$
|
|
2260
|
-
itemId = _parameters$
|
|
2267
|
+
_parameters$itemId11 = parameters.itemId,
|
|
2268
|
+
itemId = _parameters$itemId11 === void 0 ? item_id : _parameters$itemId11,
|
|
2261
2269
|
item_name = parameters.item_name,
|
|
2262
2270
|
_parameters$itemName9 = parameters.itemName,
|
|
2263
2271
|
itemName = _parameters$itemName9 === void 0 ? item_name : _parameters$itemName9,
|
|
@@ -2265,8 +2273,8 @@ var Tracker = /*#__PURE__*/function () {
|
|
|
2265
2273
|
_parameters$variation9 = parameters.variationId,
|
|
2266
2274
|
variationId = _parameters$variation9 === void 0 ? variation_id : _parameters$variation9,
|
|
2267
2275
|
revenue = parameters.revenue,
|
|
2268
|
-
_parameters$
|
|
2269
|
-
section = _parameters$
|
|
2276
|
+
_parameters$section10 = parameters.section,
|
|
2277
|
+
section = _parameters$section10 === void 0 ? 'Products' : _parameters$section10,
|
|
2270
2278
|
type = parameters.type,
|
|
2271
2279
|
is_custom_type = parameters.is_custom_type,
|
|
2272
2280
|
_parameters$isCustomT2 = parameters.isCustomType,
|
|
@@ -2533,8 +2541,8 @@ var Tracker = /*#__PURE__*/function () {
|
|
|
2533
2541
|
// Ensure parameters are provided (required)
|
|
2534
2542
|
if (parameters && (0, _typeof2["default"])(parameters) === 'object' && !Array.isArray(parameters)) {
|
|
2535
2543
|
var requestPath = "".concat(this.options.serviceUrl, "/v2/behavioral_action/assistant_search_result_click?");
|
|
2536
|
-
var _parameters$
|
|
2537
|
-
section = _parameters$
|
|
2544
|
+
var _parameters$section11 = parameters.section,
|
|
2545
|
+
section = _parameters$section11 === void 0 ? 'Products' : _parameters$section11,
|
|
2538
2546
|
variationId = parameters.variationId,
|
|
2539
2547
|
intentResultId = parameters.intentResultId,
|
|
2540
2548
|
searchResultId = parameters.searchResultId,
|
|
@@ -2596,8 +2604,8 @@ var Tracker = /*#__PURE__*/function () {
|
|
|
2596
2604
|
// Ensure parameters are provided (required)
|
|
2597
2605
|
if (parameters && (0, _typeof2["default"])(parameters) === 'object' && !Array.isArray(parameters)) {
|
|
2598
2606
|
var requestPath = "".concat(this.options.serviceUrl, "/v2/behavioral_action/assistant_search_result_view?");
|
|
2599
|
-
var _parameters$
|
|
2600
|
-
section = _parameters$
|
|
2607
|
+
var _parameters$section12 = parameters.section,
|
|
2608
|
+
section = _parameters$section12 === void 0 ? 'Products' : _parameters$section12,
|
|
2601
2609
|
items = parameters.items,
|
|
2602
2610
|
numResultsViewed = parameters.numResultsViewed,
|
|
2603
2611
|
intentResultId = parameters.intentResultId,
|
|
@@ -3392,6 +3400,7 @@ var Tracker = /*#__PURE__*/function () {
|
|
|
3392
3400
|
return true;
|
|
3393
3401
|
}
|
|
3394
3402
|
}]);
|
|
3403
|
+
return Tracker;
|
|
3395
3404
|
}(); // Exposed for testing
|
|
3396
3405
|
Tracker.RequestQueue = RequestQueue;
|
|
3397
3406
|
module.exports = Tracker;
|
package/lib/types/index.d.ts
CHANGED
|
@@ -162,6 +162,9 @@ export interface FmtOptions extends Record<string, any> {
|
|
|
162
162
|
groups_max_depth?: number;
|
|
163
163
|
groups_start?: 'current' | 'top' | `group_id:${string}`;
|
|
164
164
|
fields?: string[]; // Array of metadata field to be returned in the data response
|
|
165
|
+
hidden_fields?: string[];
|
|
166
|
+
show_hidden_fields?: boolean;
|
|
167
|
+
variations_return_type?: 'default' | 'all' | 'matched';
|
|
165
168
|
}
|
|
166
169
|
|
|
167
170
|
export type Nullable<T> = T | null;
|
|
@@ -44,7 +44,7 @@ var EventDispatcher = /*#__PURE__*/function () {
|
|
|
44
44
|
}
|
|
45
45
|
|
|
46
46
|
// Push event data to queue
|
|
47
|
-
|
|
47
|
+
(0, _createClass2["default"])(EventDispatcher, [{
|
|
48
48
|
key: "queue",
|
|
49
49
|
value: function queue(name, data) {
|
|
50
50
|
this.events.push({
|
|
@@ -69,5 +69,6 @@ var EventDispatcher = /*#__PURE__*/function () {
|
|
|
69
69
|
}
|
|
70
70
|
}
|
|
71
71
|
}]);
|
|
72
|
+
return EventDispatcher;
|
|
72
73
|
}();
|
|
73
74
|
module.exports = EventDispatcher;
|
package/lib/utils/events.js
CHANGED
|
@@ -107,7 +107,9 @@ EventEmitter.prototype.getMaxListeners = function getMaxListeners() {
|
|
|
107
107
|
};
|
|
108
108
|
EventEmitter.prototype.emit = function emit(type) {
|
|
109
109
|
var args = [];
|
|
110
|
-
for (var i = 1; i < arguments.length; i++)
|
|
110
|
+
for (var i = 1; i < arguments.length; i++) {
|
|
111
|
+
args.push(arguments[i]);
|
|
112
|
+
}
|
|
111
113
|
var doError = type === 'error';
|
|
112
114
|
var events = this._events;
|
|
113
115
|
if (events !== undefined) doError = doError && events.error === undefined;else if (!doError) return false;
|
|
@@ -126,6 +128,7 @@ EventEmitter.prototype.emit = function emit(type) {
|
|
|
126
128
|
err.context = er;
|
|
127
129
|
throw err; // Unhandled 'error' event
|
|
128
130
|
}
|
|
131
|
+
|
|
129
132
|
var handler = events[type];
|
|
130
133
|
if (handler === undefined) return false;
|
|
131
134
|
if (typeof handler === 'function') {
|
|
@@ -133,7 +136,9 @@ EventEmitter.prototype.emit = function emit(type) {
|
|
|
133
136
|
} else {
|
|
134
137
|
var len = handler.length;
|
|
135
138
|
var listeners = arrayClone(handler, len);
|
|
136
|
-
for (var i = 0; i < len; ++i)
|
|
139
|
+
for (var i = 0; i < len; ++i) {
|
|
140
|
+
ReflectApply(listeners[i], this, args);
|
|
141
|
+
}
|
|
137
142
|
}
|
|
138
143
|
return true;
|
|
139
144
|
};
|
|
@@ -340,11 +345,15 @@ EventEmitter.prototype.eventNames = function eventNames() {
|
|
|
340
345
|
};
|
|
341
346
|
function arrayClone(arr, n) {
|
|
342
347
|
var copy = new Array(n);
|
|
343
|
-
for (var i = 0; i < n; ++i)
|
|
348
|
+
for (var i = 0; i < n; ++i) {
|
|
349
|
+
copy[i] = arr[i];
|
|
350
|
+
}
|
|
344
351
|
return copy;
|
|
345
352
|
}
|
|
346
353
|
function spliceOne(list, index) {
|
|
347
|
-
for (; index + 1 < list.length; index++)
|
|
354
|
+
for (; index + 1 < list.length; index++) {
|
|
355
|
+
list[index] = list[index + 1];
|
|
356
|
+
}
|
|
348
357
|
list.pop();
|
|
349
358
|
}
|
|
350
359
|
function unwrapListeners(arr) {
|
package/lib/utils/helpers.js
CHANGED
|
@@ -19,6 +19,7 @@ var PII_REGEX = [{
|
|
|
19
19
|
}
|
|
20
20
|
// Add more PII REGEX
|
|
21
21
|
];
|
|
22
|
+
|
|
22
23
|
var utils = {
|
|
23
24
|
trimNonBreakingSpaces: function trimNonBreakingSpaces(string) {
|
|
24
25
|
return string.replace(/\s/g, ' ').trim();
|
|
@@ -84,6 +85,25 @@ var utils = {
|
|
|
84
85
|
}
|
|
85
86
|
return {};
|
|
86
87
|
},
|
|
88
|
+
getDocumentReferrer: function getDocumentReferrer() {
|
|
89
|
+
if (utils.canUseDOM()) {
|
|
90
|
+
var _document;
|
|
91
|
+
return (_document = document) === null || _document === void 0 ? void 0 : _document.referrer;
|
|
92
|
+
}
|
|
93
|
+
return null;
|
|
94
|
+
},
|
|
95
|
+
getCanonicalUrl: function getCanonicalUrl() {
|
|
96
|
+
if (utils.canUseDOM()) {
|
|
97
|
+
var _document2;
|
|
98
|
+
var linkEle = (_document2 = document) === null || _document2 === void 0 ? void 0 : _document2.querySelector('link[rel="canonical"]');
|
|
99
|
+
var canonicalURL = null;
|
|
100
|
+
if (linkEle) {
|
|
101
|
+
canonicalURL = linkEle.getAttribute('href');
|
|
102
|
+
}
|
|
103
|
+
return canonicalURL;
|
|
104
|
+
}
|
|
105
|
+
return null;
|
|
106
|
+
},
|
|
87
107
|
dispatchEvent: function dispatchEvent(event) {
|
|
88
108
|
if (utils.canUseDOM()) {
|
|
89
109
|
window.dispatchEvent(event);
|
|
@@ -208,10 +228,10 @@ var utils = {
|
|
|
208
228
|
obfuscatePiiRequest: function obfuscatePiiRequest(urlString) {
|
|
209
229
|
var obfuscatedUrl = urlString;
|
|
210
230
|
try {
|
|
211
|
-
var _url$pathname, _url$search;
|
|
231
|
+
var _url$pathname, _url$search, _url$search$split;
|
|
212
232
|
var url = new URL(urlString);
|
|
213
|
-
var paths = url === null || url === void 0
|
|
214
|
-
var paramValues = url === null || url === void 0
|
|
233
|
+
var paths = url === null || url === void 0 ? void 0 : (_url$pathname = url.pathname) === null || _url$pathname === void 0 ? void 0 : _url$pathname.split('/');
|
|
234
|
+
var paramValues = url === null || url === void 0 ? void 0 : (_url$search = url.search) === null || _url$search === void 0 ? void 0 : (_url$search$split = _url$search.split('&')) === null || _url$search$split === void 0 ? void 0 : _url$search$split.map(function (param) {
|
|
215
235
|
var _param$split;
|
|
216
236
|
return (_param$split = param.split('=')) === null || _param$split === void 0 ? void 0 : _param$split[1];
|
|
217
237
|
});
|
|
@@ -17,24 +17,24 @@ var HumanityCheck = /*#__PURE__*/function () {
|
|
|
17
17
|
this.hasPerformedHumanEvent = this.getIsHumanFromSessionStorage();
|
|
18
18
|
|
|
19
19
|
// Humanity proved, remove handlers
|
|
20
|
-
var
|
|
20
|
+
var remove = function remove() {
|
|
21
21
|
_this.hasPerformedHumanEvent = true;
|
|
22
22
|
store.session.set(storageKey, true);
|
|
23
23
|
humanEvents.forEach(function (eventType) {
|
|
24
|
-
helpers.removeEventListener(eventType,
|
|
24
|
+
helpers.removeEventListener(eventType, remove, true);
|
|
25
25
|
});
|
|
26
26
|
};
|
|
27
27
|
|
|
28
28
|
// Add handlers to prove humanity
|
|
29
29
|
if (!this.hasPerformedHumanEvent) {
|
|
30
30
|
humanEvents.forEach(function (eventType) {
|
|
31
|
-
helpers.addEventListener(eventType,
|
|
31
|
+
helpers.addEventListener(eventType, remove, true);
|
|
32
32
|
});
|
|
33
33
|
}
|
|
34
34
|
}
|
|
35
35
|
|
|
36
36
|
// Helper function to grab the human variable from session storage
|
|
37
|
-
|
|
37
|
+
(0, _createClass2["default"])(HumanityCheck, [{
|
|
38
38
|
key: "getIsHumanFromSessionStorage",
|
|
39
39
|
value: function getIsHumanFromSessionStorage() {
|
|
40
40
|
return !!store.session.get(storageKey) || false;
|
|
@@ -66,5 +66,6 @@ var HumanityCheck = /*#__PURE__*/function () {
|
|
|
66
66
|
return false;
|
|
67
67
|
}
|
|
68
68
|
}]);
|
|
69
|
+
return HumanityCheck;
|
|
69
70
|
}();
|
|
70
71
|
module.exports = HumanityCheck;
|
|
@@ -40,7 +40,7 @@ var RequestQueue = /*#__PURE__*/function () {
|
|
|
40
40
|
}
|
|
41
41
|
|
|
42
42
|
// Add request to queue to be dispatched
|
|
43
|
-
|
|
43
|
+
(0, _createClass2["default"])(RequestQueue, [{
|
|
44
44
|
key: "queue",
|
|
45
45
|
value: function queue(url) {
|
|
46
46
|
var method = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 'GET';
|
|
@@ -48,17 +48,17 @@ var RequestQueue = /*#__PURE__*/function () {
|
|
|
48
48
|
var networkParameters = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : {};
|
|
49
49
|
// Consider user "human" if no DOM context is available
|
|
50
50
|
if (this.sendTrackingEvents && (!helpers.canUseDOM() || !this.humanity.isBot())) {
|
|
51
|
-
var
|
|
51
|
+
var queue = RequestQueue.get();
|
|
52
52
|
|
|
53
53
|
// PII Detection & Obfuscation
|
|
54
54
|
var obfuscatedUrl = obfuscatePiiRequest(url);
|
|
55
|
-
|
|
55
|
+
queue.push({
|
|
56
56
|
url: obfuscatedUrl,
|
|
57
57
|
method: method,
|
|
58
58
|
body: body,
|
|
59
59
|
networkParameters: networkParameters
|
|
60
60
|
});
|
|
61
|
-
RequestQueue.set(
|
|
61
|
+
RequestQueue.set(queue);
|
|
62
62
|
}
|
|
63
63
|
}
|
|
64
64
|
|
|
@@ -228,5 +228,6 @@ var RequestQueue = /*#__PURE__*/function () {
|
|
|
228
228
|
store.local.remove(storageKey);
|
|
229
229
|
}
|
|
230
230
|
}]);
|
|
231
|
+
return RequestQueue;
|
|
231
232
|
}();
|
|
232
233
|
module.exports = RequestQueue;
|
package/lib/version.js
CHANGED
package/package.json
CHANGED
package/lib/.DS_Store
DELETED
|
Binary file
|