@constructor-io/constructorio-client-javascript 2.36.4 → 2.37.1

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.
@@ -1,96 +1,73 @@
1
1
  "use strict";
2
2
 
3
3
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
-
5
4
  var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
6
-
7
5
  var _typeof2 = _interopRequireDefault(require("@babel/runtime/helpers/typeof"));
8
-
9
6
  var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
10
-
11
7
  var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
12
-
13
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; }
14
-
15
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; }
16
-
17
10
  /* eslint-disable object-curly-newline, no-underscore-dangle, camelcase, no-unneeded-ternary */
18
11
  var EventEmitter = require('../utils/events');
19
-
20
12
  var helpers = require('../utils/helpers');
21
-
22
13
  var RequestQueue = require('../utils/request-queue');
23
-
24
14
  function applyParams(parameters, options) {
25
15
  var apiKey = options.apiKey,
26
- version = options.version,
27
- sessionId = options.sessionId,
28
- clientId = options.clientId,
29
- userId = options.userId,
30
- segments = options.segments,
31
- testCells = options.testCells,
32
- requestMethod = options.requestMethod,
33
- beaconMode = options.beaconMode;
34
-
16
+ version = options.version,
17
+ sessionId = options.sessionId,
18
+ clientId = options.clientId,
19
+ userId = options.userId,
20
+ segments = options.segments,
21
+ testCells = options.testCells,
22
+ requestMethod = options.requestMethod,
23
+ beaconMode = options.beaconMode;
35
24
  var _helpers$getWindowLoc = helpers.getWindowLocation(),
36
- host = _helpers$getWindowLoc.host,
37
- pathname = _helpers$getWindowLoc.pathname;
38
-
25
+ host = _helpers$getWindowLoc.host,
26
+ pathname = _helpers$getWindowLoc.pathname;
39
27
  var sendReferrerWithTrackingEvents = options.sendReferrerWithTrackingEvents === false ? false : true; // Defaults to 'true'
40
-
41
28
  var aggregateParams = Object.assign(parameters);
42
-
43
29
  if (version) {
44
30
  aggregateParams.c = version;
45
31
  }
46
-
47
32
  if (clientId) {
48
33
  aggregateParams.i = clientId;
49
34
  }
50
-
51
35
  if (sessionId) {
52
36
  aggregateParams.s = sessionId;
53
37
  }
54
-
55
38
  if (userId) {
56
39
  aggregateParams.ui = String(userId);
57
40
  }
58
-
59
41
  if (segments && segments.length) {
60
42
  aggregateParams.us = segments;
61
43
  }
62
-
63
44
  if (apiKey) {
64
45
  aggregateParams.key = apiKey;
65
46
  }
66
-
67
47
  if (testCells) {
68
48
  Object.keys(testCells).forEach(function (testCellKey) {
69
49
  aggregateParams["ef-".concat(testCellKey)] = testCells[testCellKey];
70
50
  });
71
51
  }
72
-
73
52
  if (beaconMode && requestMethod && requestMethod.match(/POST/i)) {
74
53
  aggregateParams.beacon = true;
75
54
  }
76
-
77
55
  if (sendReferrerWithTrackingEvents && host) {
78
56
  aggregateParams.origin_referrer = host;
79
-
80
57
  if (pathname) {
81
58
  aggregateParams.origin_referrer += pathname;
82
59
  }
83
60
  }
84
-
85
61
  aggregateParams._dt = Date.now();
86
62
  aggregateParams = helpers.cleanParams(aggregateParams);
87
63
  return aggregateParams;
88
- } // Append common parameters to supplied parameters object and return as string
89
-
64
+ }
90
65
 
66
+ // Append common parameters to supplied parameters object and return as string
91
67
  function applyParamsAsString(parameters, options) {
92
68
  return helpers.stringify(applyParams(parameters, options));
93
69
  }
70
+
94
71
  /**
95
72
  * Interface to tracking related API calls
96
73
  *
@@ -98,8 +75,6 @@ function applyParamsAsString(parameters, options) {
98
75
  * @inner
99
76
  * @returns {object}
100
77
  */
101
-
102
-
103
78
  var Tracker = /*#__PURE__*/function () {
104
79
  function Tracker(options) {
105
80
  (0, _classCallCheck2["default"])(this, Tracker);
@@ -108,6 +83,7 @@ var Tracker = /*#__PURE__*/function () {
108
83
  this.requests = new RequestQueue(options, this.eventemitter);
109
84
  this.behavioralV2Url = 'https://ac.cnstrc.com/v2/behavioral_action/';
110
85
  }
86
+
111
87
  /**
112
88
  * Send session start event to API
113
89
  * @private
@@ -118,8 +94,6 @@ var Tracker = /*#__PURE__*/function () {
118
94
  * @example
119
95
  * constructorio.tracker.trackSessionStartV2();
120
96
  */
121
-
122
-
123
97
  (0, _createClass2["default"])(Tracker, [{
124
98
  key: "trackSessionStartV2",
125
99
  value: function trackSessionStartV2() {
@@ -129,6 +103,7 @@ var Tracker = /*#__PURE__*/function () {
129
103
  this.requests.send();
130
104
  return true;
131
105
  }
106
+
132
107
  /**
133
108
  * Send session start event to API
134
109
  *
@@ -139,7 +114,6 @@ var Tracker = /*#__PURE__*/function () {
139
114
  * @example
140
115
  * constructorio.tracker.trackSessionStart();
141
116
  */
142
-
143
117
  }, {
144
118
  key: "trackSessionStart",
145
119
  value: function trackSessionStart() {
@@ -152,6 +126,7 @@ var Tracker = /*#__PURE__*/function () {
152
126
  this.requests.send();
153
127
  return true;
154
128
  }
129
+
155
130
  /**
156
131
  * Send input focus event to API
157
132
  * @private
@@ -164,7 +139,6 @@ var Tracker = /*#__PURE__*/function () {
164
139
  * @example
165
140
  * constructorio.tracker.trackInputFocusV2("text");
166
141
  */
167
-
168
142
  }, {
169
143
  key: "trackInputFocusV2",
170
144
  value: function trackInputFocusV2() {
@@ -174,12 +148,10 @@ var Tracker = /*#__PURE__*/function () {
174
148
  var bodyParams = {};
175
149
  var networkParametersNew = networkParameters;
176
150
  var userInputNew = userInput;
177
-
178
151
  if ((0, _typeof2["default"])(userInput) === 'object') {
179
152
  networkParametersNew = userInput;
180
153
  userInputNew = '';
181
154
  }
182
-
183
155
  bodyParams.user_input = userInputNew;
184
156
  var requestMethod = 'POST';
185
157
  var requestBody = applyParams(bodyParams, _objectSpread(_objectSpread({}, this.options), {}, {
@@ -189,6 +161,7 @@ var Tracker = /*#__PURE__*/function () {
189
161
  this.requests.send();
190
162
  return true;
191
163
  }
164
+
192
165
  /**
193
166
  * Send input focus event to API
194
167
  *
@@ -200,7 +173,6 @@ var Tracker = /*#__PURE__*/function () {
200
173
  * @example
201
174
  * constructorio.tracker.trackInputFocus();
202
175
  */
203
-
204
176
  }, {
205
177
  key: "trackInputFocus",
206
178
  value: function trackInputFocus() {
@@ -213,6 +185,7 @@ var Tracker = /*#__PURE__*/function () {
213
185
  this.requests.send();
214
186
  return true;
215
187
  }
188
+
216
189
  /**
217
190
  * Send item detail load event to API
218
191
  *
@@ -235,49 +208,45 @@ var Tracker = /*#__PURE__*/function () {
235
208
  * },
236
209
  * );
237
210
  */
238
-
239
211
  }, {
240
212
  key: "trackItemDetailLoad",
241
213
  value: function trackItemDetailLoad(parameters) {
242
214
  var networkParameters = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
243
-
244
215
  // Ensure parameters are provided (required)
245
216
  if (parameters && (0, _typeof2["default"])(parameters) === 'object' && !Array.isArray(parameters)) {
246
217
  var requestUrlPath = "".concat(this.options.serviceUrl, "/v2/behavioral_action/item_detail_load?");
247
218
  var queryParams = {};
248
219
  var bodyParams = {};
249
220
  var item_name = parameters.item_name,
250
- name = parameters.name,
251
- item_id = parameters.item_id,
252
- customer_id = parameters.customer_id,
253
- _parameters$customerI = parameters.customerId,
254
- customerId = _parameters$customerI === void 0 ? customer_id : _parameters$customerI,
255
- variation_id = parameters.variation_id,
256
- _parameters$itemName = parameters.itemName,
257
- itemName = _parameters$itemName === void 0 ? item_name || name : _parameters$itemName,
258
- _parameters$itemId = parameters.itemId,
259
- itemId = _parameters$itemId === void 0 ? item_id || customerId : _parameters$itemId,
260
- _parameters$variation = parameters.variationId,
261
- variationId = _parameters$variation === void 0 ? variation_id : _parameters$variation,
262
- url = parameters.url; // Ensure support for both item_name and name as parameters
263
-
221
+ name = parameters.name,
222
+ item_id = parameters.item_id,
223
+ customer_id = parameters.customer_id,
224
+ _parameters$customerI = parameters.customerId,
225
+ customerId = _parameters$customerI === void 0 ? customer_id : _parameters$customerI,
226
+ variation_id = parameters.variation_id,
227
+ _parameters$itemName = parameters.itemName,
228
+ itemName = _parameters$itemName === void 0 ? item_name || name : _parameters$itemName,
229
+ _parameters$itemId = parameters.itemId,
230
+ itemId = _parameters$itemId === void 0 ? item_id || customerId : _parameters$itemId,
231
+ _parameters$variation = parameters.variationId,
232
+ variationId = _parameters$variation === void 0 ? variation_id : _parameters$variation,
233
+ url = parameters.url;
234
+
235
+ // Ensure support for both item_name and name as parameters
264
236
  if (itemName) {
265
237
  bodyParams.item_name = itemName;
266
- } // Ensure support for both item_id and customer_id as parameters
267
-
238
+ }
268
239
 
240
+ // Ensure support for both item_id and customer_id as parameters
269
241
  if (itemId) {
270
242
  bodyParams.item_id = itemId;
271
243
  }
272
-
273
244
  if (variationId) {
274
245
  bodyParams.variation_id = variationId;
275
246
  }
276
-
277
247
  if (url) {
278
248
  bodyParams.url = url;
279
249
  }
280
-
281
250
  var requestURL = "".concat(requestUrlPath).concat(applyParamsAsString(queryParams, this.options));
282
251
  var requestMethod = 'POST';
283
252
  var requestBody = applyParams(bodyParams, _objectSpread(_objectSpread({}, this.options), {}, {
@@ -287,10 +256,10 @@ var Tracker = /*#__PURE__*/function () {
287
256
  this.requests.send();
288
257
  return true;
289
258
  }
290
-
291
259
  this.requests.send();
292
260
  return new Error('parameters are required of type object');
293
261
  }
262
+
294
263
  /**
295
264
  * Send autocomplete select event to API
296
265
  * @private
@@ -320,36 +289,34 @@ var Tracker = /*#__PURE__*/function () {
320
289
  * },
321
290
  * );
322
291
  */
323
-
324
292
  }, {
325
293
  key: "trackAutocompleteSelectV2",
326
294
  value: function trackAutocompleteSelectV2(itemName, parameters) {
327
295
  var networkParameters = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
328
-
329
296
  // Ensure term is provided (required)
330
297
  if (itemName && typeof itemName === 'string') {
331
298
  // Ensure parameters are provided (required)
332
299
  if (parameters && (0, _typeof2["default"])(parameters) === 'object' && !Array.isArray(parameters)) {
333
300
  var baseUrl = "".concat(this.behavioralV2Url, "autocomplete_select?");
334
301
  var original_query = parameters.original_query,
335
- _parameters$originalQ = parameters.originalQuery,
336
- originalQuery = _parameters$originalQ === void 0 ? original_query : _parameters$originalQ,
337
- user_input = parameters.user_input,
338
- _parameters$userInput = parameters.userInput,
339
- userInput = _parameters$userInput === void 0 ? originalQuery || user_input : _parameters$userInput,
340
- original_section = parameters.original_section,
341
- _parameters$section = parameters.section,
342
- section = _parameters$section === void 0 ? original_section : _parameters$section,
343
- tr = parameters.tr,
344
- group_id = parameters.group_id,
345
- _parameters$groupId = parameters.groupId,
346
- groupId = _parameters$groupId === void 0 ? group_id : _parameters$groupId,
347
- item_id = parameters.item_id,
348
- _parameters$itemId2 = parameters.itemId,
349
- itemId = _parameters$itemId2 === void 0 ? item_id : _parameters$itemId2,
350
- variation_id = parameters.variation_id,
351
- _parameters$variation2 = parameters.variationId,
352
- variationId = _parameters$variation2 === void 0 ? variation_id : _parameters$variation2;
302
+ _parameters$originalQ = parameters.originalQuery,
303
+ originalQuery = _parameters$originalQ === void 0 ? original_query : _parameters$originalQ,
304
+ user_input = parameters.user_input,
305
+ _parameters$userInput = parameters.userInput,
306
+ userInput = _parameters$userInput === void 0 ? originalQuery || user_input : _parameters$userInput,
307
+ original_section = parameters.original_section,
308
+ _parameters$section = parameters.section,
309
+ section = _parameters$section === void 0 ? original_section : _parameters$section,
310
+ tr = parameters.tr,
311
+ group_id = parameters.group_id,
312
+ _parameters$groupId = parameters.groupId,
313
+ groupId = _parameters$groupId === void 0 ? group_id : _parameters$groupId,
314
+ item_id = parameters.item_id,
315
+ _parameters$itemId2 = parameters.itemId,
316
+ itemId = _parameters$itemId2 === void 0 ? item_id : _parameters$itemId2,
317
+ variation_id = parameters.variation_id,
318
+ _parameters$variation2 = parameters.variationId,
319
+ variationId = _parameters$variation2 === void 0 ? variation_id : _parameters$variation2;
353
320
  var queryParams = {};
354
321
  var bodyParams = {
355
322
  user_input: userInput,
@@ -360,11 +327,9 @@ var Tracker = /*#__PURE__*/function () {
360
327
  item_name: itemName,
361
328
  section: section
362
329
  };
363
-
364
330
  if (section) {
365
331
  queryParams.section = section;
366
332
  }
367
-
368
333
  var requestURL = "".concat(baseUrl).concat(applyParamsAsString(queryParams, this.options));
369
334
  var requestMethod = 'POST';
370
335
  var requestBody = applyParams(bodyParams, _objectSpread(_objectSpread({}, this.options), {}, {
@@ -374,14 +339,13 @@ var Tracker = /*#__PURE__*/function () {
374
339
  this.requests.send();
375
340
  return true;
376
341
  }
377
-
378
342
  this.requests.send();
379
343
  return new Error('parameters are required of type object');
380
344
  }
381
-
382
345
  this.requests.send();
383
346
  return new Error('term is a required parameter of type string');
384
347
  }
348
+
385
349
  /**
386
350
  * Send autocomplete select event to API
387
351
  *
@@ -409,12 +373,10 @@ var Tracker = /*#__PURE__*/function () {
409
373
  * },
410
374
  * );
411
375
  */
412
-
413
376
  }, {
414
377
  key: "trackAutocompleteSelect",
415
378
  value: function trackAutocompleteSelect(term, parameters) {
416
379
  var networkParameters = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
417
-
418
380
  // Ensure term is provided (required)
419
381
  if (term && typeof term === 'string') {
420
382
  // Ensure parameters are provided (required)
@@ -422,51 +384,45 @@ var Tracker = /*#__PURE__*/function () {
422
384
  var url = "".concat(this.options.serviceUrl, "/autocomplete/").concat(helpers.encodeURIComponentRFC3986(helpers.trimNonBreakingSpaces(term)), "/select?");
423
385
  var queryParams = {};
424
386
  var original_query = parameters.original_query,
425
- _parameters$originalQ2 = parameters.originalQuery,
426
- originalQuery = _parameters$originalQ2 === void 0 ? original_query : _parameters$originalQ2,
427
- section = parameters.section,
428
- original_section = parameters.original_section,
429
- _parameters$originalS = parameters.originalSection,
430
- originalSection = _parameters$originalS === void 0 ? original_section : _parameters$originalS,
431
- tr = parameters.tr,
432
- group_id = parameters.group_id,
433
- _parameters$groupId2 = parameters.groupId,
434
- groupId = _parameters$groupId2 === void 0 ? group_id : _parameters$groupId2,
435
- display_name = parameters.display_name,
436
- _parameters$displayNa = parameters.displayName,
437
- displayName = _parameters$displayNa === void 0 ? display_name : _parameters$displayNa;
438
-
387
+ _parameters$originalQ2 = parameters.originalQuery,
388
+ originalQuery = _parameters$originalQ2 === void 0 ? original_query : _parameters$originalQ2,
389
+ section = parameters.section,
390
+ original_section = parameters.original_section,
391
+ _parameters$originalS = parameters.originalSection,
392
+ originalSection = _parameters$originalS === void 0 ? original_section : _parameters$originalS,
393
+ tr = parameters.tr,
394
+ group_id = parameters.group_id,
395
+ _parameters$groupId2 = parameters.groupId,
396
+ groupId = _parameters$groupId2 === void 0 ? group_id : _parameters$groupId2,
397
+ display_name = parameters.display_name,
398
+ _parameters$displayNa = parameters.displayName,
399
+ displayName = _parameters$displayNa === void 0 ? display_name : _parameters$displayNa;
439
400
  if (originalQuery) {
440
401
  queryParams.original_query = originalQuery;
441
402
  }
442
-
443
403
  if (tr) {
444
404
  queryParams.tr = tr;
445
405
  }
446
-
447
406
  if (originalSection || section) {
448
407
  queryParams.section = originalSection || section;
449
408
  }
450
-
451
409
  if (groupId) {
452
410
  queryParams.group = {
453
411
  group_id: groupId,
454
412
  display_name: displayName
455
413
  };
456
414
  }
457
-
458
415
  this.requests.queue("".concat(url).concat(applyParamsAsString(queryParams, this.options)), undefined, undefined, networkParameters);
459
416
  this.requests.send();
460
417
  return true;
461
418
  }
462
-
463
419
  this.requests.send();
464
420
  return new Error('parameters are required of type object');
465
421
  }
466
-
467
422
  this.requests.send();
468
423
  return new Error('term is a required parameter of type string');
469
424
  }
425
+
470
426
  /**
471
427
  * Send autocomplete search event to API
472
428
  * @private
@@ -489,44 +445,39 @@ var Tracker = /*#__PURE__*/function () {
489
445
  * },
490
446
  * );
491
447
  */
492
-
493
448
  }, {
494
449
  key: "trackSearchSubmitV2",
495
450
  value: function trackSearchSubmitV2(searchTerm, parameters) {
496
451
  var networkParameters = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
497
-
498
452
  // Ensure term is provided (required)
499
453
  if (searchTerm && typeof searchTerm === 'string') {
500
454
  // Ensure parameters are provided (required)
501
455
  if (parameters && (0, _typeof2["default"])(parameters) === 'object' && !Array.isArray(parameters)) {
502
456
  var baseUrl = "".concat(this.behavioralV2Url, "search_submit?");
503
457
  var original_query = parameters.original_query,
504
- _parameters$originalQ3 = parameters.originalQuery,
505
- originalQuery = _parameters$originalQ3 === void 0 ? original_query : _parameters$originalQ3,
506
- user_input = parameters.user_input,
507
- _parameters$userInput2 = parameters.userInput,
508
- userInput = _parameters$userInput2 === void 0 ? originalQuery || user_input : _parameters$userInput2,
509
- group_id = parameters.group_id,
510
- _parameters$groupId3 = parameters.groupId,
511
- groupId = _parameters$groupId3 === void 0 ? group_id : _parameters$groupId3,
512
- section = parameters.section;
458
+ _parameters$originalQ3 = parameters.originalQuery,
459
+ originalQuery = _parameters$originalQ3 === void 0 ? original_query : _parameters$originalQ3,
460
+ user_input = parameters.user_input,
461
+ _parameters$userInput2 = parameters.userInput,
462
+ userInput = _parameters$userInput2 === void 0 ? originalQuery || user_input : _parameters$userInput2,
463
+ group_id = parameters.group_id,
464
+ _parameters$groupId3 = parameters.groupId,
465
+ groupId = _parameters$groupId3 === void 0 ? group_id : _parameters$groupId3,
466
+ section = parameters.section;
513
467
  var queryParams = {};
514
468
  var bodyParams = {
515
469
  user_input: userInput,
516
470
  search_term: searchTerm,
517
471
  section: section
518
472
  };
519
-
520
473
  if (groupId) {
521
474
  bodyParams.filters = {
522
475
  group_id: groupId
523
476
  };
524
477
  }
525
-
526
478
  if (section) {
527
479
  queryParams.section = section;
528
480
  }
529
-
530
481
  var requestURL = "".concat(baseUrl).concat(applyParamsAsString(queryParams, this.options));
531
482
  var requestMethod = 'POST';
532
483
  var requestBody = applyParams(bodyParams, _objectSpread(_objectSpread({}, this.options), {}, {
@@ -536,14 +487,13 @@ var Tracker = /*#__PURE__*/function () {
536
487
  this.requests.send();
537
488
  return true;
538
489
  }
539
-
540
490
  this.requests.send();
541
491
  return new Error('parameters are required of type object');
542
492
  }
543
-
544
493
  this.requests.send();
545
494
  return new Error('term is a required parameter of type string');
546
495
  }
496
+
547
497
  /**
548
498
  * Send autocomplete search event to API
549
499
  *
@@ -567,12 +517,10 @@ var Tracker = /*#__PURE__*/function () {
567
517
  * },
568
518
  * );
569
519
  */
570
-
571
520
  }, {
572
521
  key: "trackSearchSubmit",
573
522
  value: function trackSearchSubmit(term, parameters) {
574
523
  var networkParameters = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
575
-
576
524
  // Ensure term is provided (required)
577
525
  if (term && typeof term === 'string') {
578
526
  // Ensure parameters are provided (required)
@@ -580,38 +528,34 @@ var Tracker = /*#__PURE__*/function () {
580
528
  var url = "".concat(this.options.serviceUrl, "/autocomplete/").concat(helpers.encodeURIComponentRFC3986(helpers.trimNonBreakingSpaces(term)), "/search?");
581
529
  var queryParams = {};
582
530
  var original_query = parameters.original_query,
583
- _parameters$originalQ4 = parameters.originalQuery,
584
- originalQuery = _parameters$originalQ4 === void 0 ? original_query : _parameters$originalQ4,
585
- group_id = parameters.group_id,
586
- _parameters$groupId4 = parameters.groupId,
587
- groupId = _parameters$groupId4 === void 0 ? group_id : _parameters$groupId4,
588
- display_name = parameters.display_name,
589
- _parameters$displayNa2 = parameters.displayName,
590
- displayName = _parameters$displayNa2 === void 0 ? display_name : _parameters$displayNa2;
591
-
531
+ _parameters$originalQ4 = parameters.originalQuery,
532
+ originalQuery = _parameters$originalQ4 === void 0 ? original_query : _parameters$originalQ4,
533
+ group_id = parameters.group_id,
534
+ _parameters$groupId4 = parameters.groupId,
535
+ groupId = _parameters$groupId4 === void 0 ? group_id : _parameters$groupId4,
536
+ display_name = parameters.display_name,
537
+ _parameters$displayNa2 = parameters.displayName,
538
+ displayName = _parameters$displayNa2 === void 0 ? display_name : _parameters$displayNa2;
592
539
  if (originalQuery) {
593
540
  queryParams.original_query = originalQuery;
594
541
  }
595
-
596
542
  if (groupId) {
597
543
  queryParams.group = {
598
544
  group_id: groupId,
599
545
  display_name: displayName
600
546
  };
601
547
  }
602
-
603
548
  this.requests.queue("".concat(url).concat(applyParamsAsString(queryParams, this.options)), undefined, undefined, networkParameters);
604
549
  this.requests.send();
605
550
  return true;
606
551
  }
607
-
608
552
  this.requests.send();
609
553
  return new Error('parameters are required of type object');
610
554
  }
611
-
612
555
  this.requests.send();
613
556
  return new Error('term is a required parameter of type string');
614
557
  }
558
+
615
559
  /**
616
560
  * Send search results loaded v2 event to API
617
561
  * @private
@@ -644,50 +588,46 @@ var Tracker = /*#__PURE__*/function () {
644
588
  * },
645
589
  * );
646
590
  */
647
-
648
591
  }, {
649
592
  key: "trackSearchResultsLoadedV2",
650
593
  value: function trackSearchResultsLoadedV2(searchTerm, parameters) {
651
594
  var networkParameters = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
652
-
653
595
  // Ensure term is provided (required)
654
596
  if (searchTerm && typeof searchTerm === 'string') {
655
597
  // Ensure parameters are provided (required)
656
598
  if (parameters && (0, _typeof2["default"])(parameters) === 'object' && !Array.isArray(parameters)) {
657
599
  var baseUrl = "".concat(this.behavioralV2Url, "search_result_load?");
658
600
  var num_results = parameters.num_results,
659
- _parameters$numResult = parameters.numResults,
660
- numResults = _parameters$numResult === void 0 ? num_results : _parameters$numResult,
661
- result_count = parameters.result_count,
662
- _parameters$resultCou = parameters.resultCount,
663
- resultCount = _parameters$resultCou === void 0 ? numResults || result_count : _parameters$resultCou,
664
- customer_ids = parameters.customer_ids,
665
- item_ids = parameters.item_ids,
666
- _parameters$items = parameters.items,
667
- items = _parameters$items === void 0 ? customer_ids || item_ids : _parameters$items,
668
- result_page = parameters.result_page,
669
- _parameters$resultPag = parameters.resultPage,
670
- resultPage = _parameters$resultPag === void 0 ? result_page : _parameters$resultPag,
671
- result_id = parameters.result_id,
672
- _parameters$resultId = parameters.resultId,
673
- resultId = _parameters$resultId === void 0 ? result_id : _parameters$resultId,
674
- sort_order = parameters.sort_order,
675
- _parameters$sortOrder = parameters.sortOrder,
676
- sortOrder = _parameters$sortOrder === void 0 ? sort_order : _parameters$sortOrder,
677
- sort_by = parameters.sort_by,
678
- _parameters$sortBy = parameters.sortBy,
679
- sortBy = _parameters$sortBy === void 0 ? sort_by : _parameters$sortBy,
680
- selected_filters = parameters.selected_filters,
681
- _parameters$selectedF = parameters.selectedFilters,
682
- selectedFilters = _parameters$selectedF === void 0 ? selected_filters : _parameters$selectedF,
683
- url = parameters.url,
684
- section = parameters.section;
601
+ _parameters$numResult = parameters.numResults,
602
+ numResults = _parameters$numResult === void 0 ? num_results : _parameters$numResult,
603
+ result_count = parameters.result_count,
604
+ _parameters$resultCou = parameters.resultCount,
605
+ resultCount = _parameters$resultCou === void 0 ? numResults || result_count : _parameters$resultCou,
606
+ customer_ids = parameters.customer_ids,
607
+ item_ids = parameters.item_ids,
608
+ _parameters$items = parameters.items,
609
+ items = _parameters$items === void 0 ? customer_ids || item_ids : _parameters$items,
610
+ result_page = parameters.result_page,
611
+ _parameters$resultPag = parameters.resultPage,
612
+ resultPage = _parameters$resultPag === void 0 ? result_page : _parameters$resultPag,
613
+ result_id = parameters.result_id,
614
+ _parameters$resultId = parameters.resultId,
615
+ resultId = _parameters$resultId === void 0 ? result_id : _parameters$resultId,
616
+ sort_order = parameters.sort_order,
617
+ _parameters$sortOrder = parameters.sortOrder,
618
+ sortOrder = _parameters$sortOrder === void 0 ? sort_order : _parameters$sortOrder,
619
+ sort_by = parameters.sort_by,
620
+ _parameters$sortBy = parameters.sortBy,
621
+ sortBy = _parameters$sortBy === void 0 ? sort_by : _parameters$sortBy,
622
+ selected_filters = parameters.selected_filters,
623
+ _parameters$selectedF = parameters.selectedFilters,
624
+ selectedFilters = _parameters$selectedF === void 0 ? selected_filters : _parameters$selectedF,
625
+ url = parameters.url,
626
+ section = parameters.section;
685
627
  var queryParams = {};
686
628
  var transformedItems;
687
-
688
629
  if (items && Array.isArray(items) && items.length !== 0) {
689
630
  transformedItems = items;
690
-
691
631
  if (typeof items[0] === 'string' || typeof items[0] === 'number') {
692
632
  transformedItems = items.map(function (itemId) {
693
633
  return {
@@ -700,11 +640,9 @@ var Tracker = /*#__PURE__*/function () {
700
640
  });
701
641
  }
702
642
  }
703
-
704
643
  if (section) {
705
644
  queryParams.section = section;
706
645
  }
707
-
708
646
  var bodyParams = {
709
647
  search_term: searchTerm,
710
648
  result_count: resultCount,
@@ -726,14 +664,13 @@ var Tracker = /*#__PURE__*/function () {
726
664
  this.requests.send();
727
665
  return true;
728
666
  }
729
-
730
667
  this.requests.send();
731
668
  return new Error('parameters are required of type object');
732
669
  }
733
-
734
670
  this.requests.send();
735
671
  return new Error('term is a required parameter of type string');
736
672
  }
673
+
737
674
  /**
738
675
  * Send search results loaded event to API
739
676
  *
@@ -755,12 +692,10 @@ var Tracker = /*#__PURE__*/function () {
755
692
  * },
756
693
  * );
757
694
  */
758
-
759
695
  }, {
760
696
  key: "trackSearchResultsLoaded",
761
697
  value: function trackSearchResultsLoaded(term, parameters) {
762
698
  var networkParameters = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
763
-
764
699
  // Ensure term is provided (required)
765
700
  if (term && typeof term === 'string') {
766
701
  // Ensure parameters are provided (required)
@@ -771,43 +706,39 @@ var Tracker = /*#__PURE__*/function () {
771
706
  term: term
772
707
  };
773
708
  var num_results = parameters.num_results,
774
- _parameters$numResult2 = parameters.numResults,
775
- numResults = _parameters$numResult2 === void 0 ? num_results : _parameters$numResult2,
776
- customer_ids = parameters.customer_ids,
777
- _parameters$customerI2 = parameters.customerIds,
778
- customerIds = _parameters$customerI2 === void 0 ? customer_ids : _parameters$customerI2,
779
- item_ids = parameters.item_ids,
780
- _parameters$itemIds = parameters.itemIds,
781
- itemIds = _parameters$itemIds === void 0 ? item_ids : _parameters$itemIds;
709
+ _parameters$numResult2 = parameters.numResults,
710
+ numResults = _parameters$numResult2 === void 0 ? num_results : _parameters$numResult2,
711
+ customer_ids = parameters.customer_ids,
712
+ _parameters$customerI2 = parameters.customerIds,
713
+ customerIds = _parameters$customerI2 === void 0 ? customer_ids : _parameters$customerI2,
714
+ item_ids = parameters.item_ids,
715
+ _parameters$itemIds = parameters.itemIds,
716
+ itemIds = _parameters$itemIds === void 0 ? item_ids : _parameters$itemIds;
782
717
  var customerIDs;
783
-
784
718
  if (!helpers.isNil(numResults)) {
785
719
  queryParams.num_results = numResults;
786
- } // Ensure support for both item_ids and customer_ids as parameters
787
-
720
+ }
788
721
 
722
+ // Ensure support for both item_ids and customer_ids as parameters
789
723
  if (itemIds && Array.isArray(itemIds)) {
790
724
  customerIDs = itemIds;
791
725
  } else if (customerIds && Array.isArray(customerIds)) {
792
726
  customerIDs = customerIds;
793
727
  }
794
-
795
728
  if (customerIDs && Array.isArray(customerIDs) && customerIDs.length) {
796
729
  queryParams.customer_ids = customerIDs.slice(0, 100).join(',');
797
730
  }
798
-
799
731
  this.requests.queue("".concat(url).concat(applyParamsAsString(queryParams, this.options)), undefined, undefined, networkParameters);
800
732
  this.requests.send();
801
733
  return true;
802
734
  }
803
-
804
735
  this.requests.send();
805
736
  return new Error('parameters are required of type object');
806
737
  }
807
-
808
738
  this.requests.send();
809
739
  return new Error('term is a required parameter of type string');
810
740
  }
741
+
811
742
  /**
812
743
  * Send click through event to API
813
744
  * @private
@@ -838,48 +769,46 @@ var Tracker = /*#__PURE__*/function () {
838
769
  * },
839
770
  * );
840
771
  */
841
-
842
772
  }, {
843
773
  key: "trackSearchResultClickV2",
844
774
  value: function trackSearchResultClickV2(searchTerm, parameters) {
845
775
  var networkParameters = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
846
-
847
776
  // Ensure term is provided (required)
848
777
  if (searchTerm && typeof searchTerm === 'string') {
849
778
  // Ensure parameters are provided (required)
850
779
  if (parameters && (0, _typeof2["default"])(parameters) === 'object' && !Array.isArray(parameters)) {
851
780
  var baseUrl = "".concat(this.behavioralV2Url, "search_result_click?");
852
781
  var num_results = parameters.num_results,
853
- customer_id = parameters.customer_id,
854
- item_id = parameters.item_id,
855
- _parameters$itemId3 = parameters.itemId,
856
- itemId = _parameters$itemId3 === void 0 ? customer_id || item_id : _parameters$itemId3,
857
- name = parameters.name,
858
- item_name = parameters.item_name,
859
- _parameters$itemName2 = parameters.itemName,
860
- itemName = _parameters$itemName2 === void 0 ? name || item_name : _parameters$itemName2,
861
- variation_id = parameters.variation_id,
862
- _parameters$variation3 = parameters.variationId,
863
- variationId = _parameters$variation3 === void 0 ? variation_id : _parameters$variation3,
864
- result_id = parameters.result_id,
865
- _parameters$resultId2 = parameters.resultId,
866
- resultId = _parameters$resultId2 === void 0 ? result_id : _parameters$resultId2,
867
- result_count = parameters.result_count,
868
- _parameters$resultCou2 = parameters.resultCount,
869
- resultCount = _parameters$resultCou2 === void 0 ? num_results || result_count : _parameters$resultCou2,
870
- result_page = parameters.result_page,
871
- _parameters$resultPag2 = parameters.resultPage,
872
- resultPage = _parameters$resultPag2 === void 0 ? result_page : _parameters$resultPag2,
873
- result_position_on_page = parameters.result_position_on_page,
874
- _parameters$resultPos = parameters.resultPositionOnPage,
875
- resultPositionOnPage = _parameters$resultPos === void 0 ? result_position_on_page : _parameters$resultPos,
876
- num_results_per_page = parameters.num_results_per_page,
877
- _parameters$numResult3 = parameters.numResultsPerPage,
878
- numResultsPerPage = _parameters$numResult3 === void 0 ? num_results_per_page : _parameters$numResult3,
879
- selected_filters = parameters.selected_filters,
880
- _parameters$selectedF2 = parameters.selectedFilters,
881
- selectedFilters = _parameters$selectedF2 === void 0 ? selected_filters : _parameters$selectedF2,
882
- section = parameters.section;
782
+ customer_id = parameters.customer_id,
783
+ item_id = parameters.item_id,
784
+ _parameters$itemId3 = parameters.itemId,
785
+ itemId = _parameters$itemId3 === void 0 ? customer_id || item_id : _parameters$itemId3,
786
+ name = parameters.name,
787
+ item_name = parameters.item_name,
788
+ _parameters$itemName2 = parameters.itemName,
789
+ itemName = _parameters$itemName2 === void 0 ? name || item_name : _parameters$itemName2,
790
+ variation_id = parameters.variation_id,
791
+ _parameters$variation3 = parameters.variationId,
792
+ variationId = _parameters$variation3 === void 0 ? variation_id : _parameters$variation3,
793
+ result_id = parameters.result_id,
794
+ _parameters$resultId2 = parameters.resultId,
795
+ resultId = _parameters$resultId2 === void 0 ? result_id : _parameters$resultId2,
796
+ result_count = parameters.result_count,
797
+ _parameters$resultCou2 = parameters.resultCount,
798
+ resultCount = _parameters$resultCou2 === void 0 ? num_results || result_count : _parameters$resultCou2,
799
+ result_page = parameters.result_page,
800
+ _parameters$resultPag2 = parameters.resultPage,
801
+ resultPage = _parameters$resultPag2 === void 0 ? result_page : _parameters$resultPag2,
802
+ result_position_on_page = parameters.result_position_on_page,
803
+ _parameters$resultPos = parameters.resultPositionOnPage,
804
+ resultPositionOnPage = _parameters$resultPos === void 0 ? result_position_on_page : _parameters$resultPos,
805
+ num_results_per_page = parameters.num_results_per_page,
806
+ _parameters$numResult3 = parameters.numResultsPerPage,
807
+ numResultsPerPage = _parameters$numResult3 === void 0 ? num_results_per_page : _parameters$numResult3,
808
+ selected_filters = parameters.selected_filters,
809
+ _parameters$selectedF2 = parameters.selectedFilters,
810
+ selectedFilters = _parameters$selectedF2 === void 0 ? selected_filters : _parameters$selectedF2,
811
+ section = parameters.section;
883
812
  var bodyParams = {
884
813
  item_name: itemName,
885
814
  item_id: itemId,
@@ -894,11 +823,9 @@ var Tracker = /*#__PURE__*/function () {
894
823
  search_term: searchTerm
895
824
  };
896
825
  var queryParams = {};
897
-
898
826
  if (section) {
899
827
  queryParams.section = section;
900
828
  }
901
-
902
829
  var requestURL = "".concat(baseUrl).concat(applyParamsAsString(queryParams, this.options));
903
830
  var requestMethod = 'POST';
904
831
  var requestBody = applyParams(bodyParams, _objectSpread(_objectSpread({}, this.options), {}, {
@@ -908,14 +835,13 @@ var Tracker = /*#__PURE__*/function () {
908
835
  this.requests.send();
909
836
  return true;
910
837
  }
911
-
912
838
  this.requests.send();
913
839
  return new Error('parameters are required of type object');
914
840
  }
915
-
916
841
  this.requests.send();
917
842
  return new Error('term is a required parameter of type string');
918
843
  }
844
+
919
845
  /**
920
846
  * Send click through event to API
921
847
  *
@@ -942,12 +868,10 @@ var Tracker = /*#__PURE__*/function () {
942
868
  * },
943
869
  * );
944
870
  */
945
-
946
871
  }, {
947
872
  key: "trackSearchResultClick",
948
873
  value: function trackSearchResultClick(term, parameters) {
949
874
  var networkParameters = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
950
-
951
875
  // Ensure term is provided (required)
952
876
  if (term && typeof term === 'string') {
953
877
  // Ensure parameters are provided (required)
@@ -955,63 +879,58 @@ var Tracker = /*#__PURE__*/function () {
955
879
  var url = "".concat(this.options.serviceUrl, "/autocomplete/").concat(helpers.encodeURIComponentRFC3986(helpers.trimNonBreakingSpaces(term)), "/click_through?");
956
880
  var queryParams = {};
957
881
  var item_name = parameters.item_name,
958
- name = parameters.name,
959
- _parameters$itemName3 = parameters.itemName,
960
- itemName = _parameters$itemName3 === void 0 ? item_name || name : _parameters$itemName3,
961
- item_id = parameters.item_id,
962
- _parameters$itemId4 = parameters.itemId,
963
- itemId = _parameters$itemId4 === void 0 ? item_id : _parameters$itemId4,
964
- customer_id = parameters.customer_id,
965
- _parameters$customerI3 = parameters.customerId,
966
- customerId = _parameters$customerI3 === void 0 ? customer_id || itemId : _parameters$customerI3,
967
- variation_id = parameters.variation_id,
968
- _parameters$variation4 = parameters.variationId,
969
- variationId = _parameters$variation4 === void 0 ? variation_id : _parameters$variation4,
970
- result_id = parameters.result_id,
971
- _parameters$resultId3 = parameters.resultId,
972
- resultId = _parameters$resultId3 === void 0 ? result_id : _parameters$resultId3,
973
- item_is_convertible = parameters.item_is_convertible,
974
- _parameters$itemIsCon = parameters.itemIsConvertible,
975
- itemIsConvertible = _parameters$itemIsCon === void 0 ? item_is_convertible : _parameters$itemIsCon,
976
- section = parameters.section; // Ensure support for both item_name and name as parameters
882
+ name = parameters.name,
883
+ _parameters$itemName3 = parameters.itemName,
884
+ itemName = _parameters$itemName3 === void 0 ? item_name || name : _parameters$itemName3,
885
+ item_id = parameters.item_id,
886
+ _parameters$itemId4 = parameters.itemId,
887
+ itemId = _parameters$itemId4 === void 0 ? item_id : _parameters$itemId4,
888
+ customer_id = parameters.customer_id,
889
+ _parameters$customerI3 = parameters.customerId,
890
+ customerId = _parameters$customerI3 === void 0 ? customer_id || itemId : _parameters$customerI3,
891
+ variation_id = parameters.variation_id,
892
+ _parameters$variation4 = parameters.variationId,
893
+ variationId = _parameters$variation4 === void 0 ? variation_id : _parameters$variation4,
894
+ result_id = parameters.result_id,
895
+ _parameters$resultId3 = parameters.resultId,
896
+ resultId = _parameters$resultId3 === void 0 ? result_id : _parameters$resultId3,
897
+ item_is_convertible = parameters.item_is_convertible,
898
+ _parameters$itemIsCon = parameters.itemIsConvertible,
899
+ itemIsConvertible = _parameters$itemIsCon === void 0 ? item_is_convertible : _parameters$itemIsCon,
900
+ section = parameters.section;
977
901
 
902
+ // Ensure support for both item_name and name as parameters
978
903
  if (itemName) {
979
904
  queryParams.name = itemName;
980
- } // Ensure support for both item_id and customer_id as parameters
981
-
905
+ }
982
906
 
907
+ // Ensure support for both item_id and customer_id as parameters
983
908
  if (customerId) {
984
909
  queryParams.customer_id = customerId;
985
910
  }
986
-
987
911
  if (variationId) {
988
912
  queryParams.variation_id = variationId;
989
913
  }
990
-
991
914
  if (resultId) {
992
915
  queryParams.result_id = resultId;
993
916
  }
994
-
995
917
  if (typeof itemIsConvertible === 'boolean') {
996
918
  queryParams.item_is_convertible = itemIsConvertible;
997
919
  }
998
-
999
920
  if (section) {
1000
921
  queryParams.section = section;
1001
922
  }
1002
-
1003
923
  this.requests.queue("".concat(url).concat(applyParamsAsString(queryParams, this.options)), undefined, undefined, networkParameters);
1004
924
  this.requests.send();
1005
925
  return true;
1006
926
  }
1007
-
1008
927
  this.requests.send();
1009
928
  return new Error('parameters are required of type object');
1010
929
  }
1011
-
1012
930
  this.requests.send();
1013
931
  return new Error('term is a required parameter of type string');
1014
932
  }
933
+
1015
934
  /**
1016
935
  * Send conversion event to API
1017
936
  *
@@ -1045,12 +964,10 @@ var Tracker = /*#__PURE__*/function () {
1045
964
  * },
1046
965
  * );
1047
966
  */
1048
-
1049
967
  }, {
1050
968
  key: "trackConversion",
1051
969
  value: function trackConversion(term, parameters) {
1052
970
  var networkParameters = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
1053
-
1054
971
  // Ensure parameters are provided (required)
1055
972
  if (parameters && (0, _typeof2["default"])(parameters) === 'object' && !Array.isArray(parameters)) {
1056
973
  var searchTerm = term || 'TERM_UNKNOWN';
@@ -1058,67 +975,60 @@ var Tracker = /*#__PURE__*/function () {
1058
975
  var queryParams = {};
1059
976
  var bodyParams = {};
1060
977
  var name = parameters.name,
1061
- item_name = parameters.item_name,
1062
- _parameters$itemName4 = parameters.itemName,
1063
- itemName = _parameters$itemName4 === void 0 ? item_name || name : _parameters$itemName4,
1064
- customer_id = parameters.customer_id,
1065
- _parameters$customerI4 = parameters.customerId,
1066
- customerId = _parameters$customerI4 === void 0 ? customer_id : _parameters$customerI4,
1067
- item_id = parameters.item_id,
1068
- _parameters$itemId5 = parameters.itemId,
1069
- itemId = _parameters$itemId5 === void 0 ? item_id || customerId : _parameters$itemId5,
1070
- variation_id = parameters.variation_id,
1071
- _parameters$variation5 = parameters.variationId,
1072
- variationId = _parameters$variation5 === void 0 ? variation_id : _parameters$variation5,
1073
- revenue = parameters.revenue,
1074
- _parameters$section2 = parameters.section,
1075
- section = _parameters$section2 === void 0 ? 'Products' : _parameters$section2,
1076
- display_name = parameters.display_name,
1077
- _parameters$displayNa3 = parameters.displayName,
1078
- displayName = _parameters$displayNa3 === void 0 ? display_name : _parameters$displayNa3,
1079
- type = parameters.type,
1080
- is_custom_type = parameters.is_custom_type,
1081
- _parameters$isCustomT = parameters.isCustomType,
1082
- isCustomType = _parameters$isCustomT === void 0 ? is_custom_type : _parameters$isCustomT; // Ensure support for both item_id and customer_id as parameters
1083
-
978
+ item_name = parameters.item_name,
979
+ _parameters$itemName4 = parameters.itemName,
980
+ itemName = _parameters$itemName4 === void 0 ? item_name || name : _parameters$itemName4,
981
+ customer_id = parameters.customer_id,
982
+ _parameters$customerI4 = parameters.customerId,
983
+ customerId = _parameters$customerI4 === void 0 ? customer_id : _parameters$customerI4,
984
+ item_id = parameters.item_id,
985
+ _parameters$itemId5 = parameters.itemId,
986
+ itemId = _parameters$itemId5 === void 0 ? item_id || customerId : _parameters$itemId5,
987
+ variation_id = parameters.variation_id,
988
+ _parameters$variation5 = parameters.variationId,
989
+ variationId = _parameters$variation5 === void 0 ? variation_id : _parameters$variation5,
990
+ revenue = parameters.revenue,
991
+ _parameters$section2 = parameters.section,
992
+ section = _parameters$section2 === void 0 ? 'Products' : _parameters$section2,
993
+ display_name = parameters.display_name,
994
+ _parameters$displayNa3 = parameters.displayName,
995
+ displayName = _parameters$displayNa3 === void 0 ? display_name : _parameters$displayNa3,
996
+ type = parameters.type,
997
+ is_custom_type = parameters.is_custom_type,
998
+ _parameters$isCustomT = parameters.isCustomType,
999
+ isCustomType = _parameters$isCustomT === void 0 ? is_custom_type : _parameters$isCustomT;
1000
+
1001
+ // Ensure support for both item_id and customer_id as parameters
1084
1002
  if (itemId) {
1085
1003
  bodyParams.item_id = itemId;
1086
- } // Ensure support for both item_name and name as parameters
1087
-
1004
+ }
1088
1005
 
1006
+ // Ensure support for both item_name and name as parameters
1089
1007
  if (itemName) {
1090
1008
  bodyParams.item_name = itemName;
1091
1009
  }
1092
-
1093
1010
  if (variationId) {
1094
1011
  bodyParams.variation_id = variationId;
1095
1012
  }
1096
-
1097
1013
  if (revenue || revenue === 0) {
1098
1014
  bodyParams.revenue = revenue.toString();
1099
1015
  }
1100
-
1101
1016
  if (section) {
1102
1017
  queryParams.section = section;
1103
1018
  bodyParams.section = section;
1104
1019
  }
1105
-
1106
1020
  if (searchTerm) {
1107
1021
  bodyParams.search_term = searchTerm;
1108
1022
  }
1109
-
1110
1023
  if (type) {
1111
1024
  bodyParams.type = type;
1112
1025
  }
1113
-
1114
1026
  if (isCustomType) {
1115
1027
  bodyParams.is_custom_type = isCustomType;
1116
1028
  }
1117
-
1118
1029
  if (displayName) {
1119
1030
  bodyParams.display_name = displayName;
1120
1031
  }
1121
-
1122
1032
  var requestURL = "".concat(requestPath).concat(applyParamsAsString(queryParams, this.options));
1123
1033
  var requestMethod = 'POST';
1124
1034
  var requestBody = applyParams(bodyParams, _objectSpread(_objectSpread({}, this.options), {}, {
@@ -1128,10 +1038,10 @@ var Tracker = /*#__PURE__*/function () {
1128
1038
  this.requests.send();
1129
1039
  return true;
1130
1040
  }
1131
-
1132
1041
  this.requests.send();
1133
1042
  return new Error('parameters are required of type object');
1134
1043
  }
1044
+
1135
1045
  /**
1136
1046
  * Send purchase event to API
1137
1047
  *
@@ -1155,51 +1065,44 @@ var Tracker = /*#__PURE__*/function () {
1155
1065
  * },
1156
1066
  * );
1157
1067
  */
1158
-
1159
1068
  }, {
1160
1069
  key: "trackPurchase",
1161
1070
  value: function trackPurchase(parameters) {
1162
1071
  var networkParameters = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
1163
-
1164
1072
  // Ensure parameters are provided (required)
1165
1073
  if (parameters && (0, _typeof2["default"])(parameters) === 'object' && !Array.isArray(parameters)) {
1166
1074
  var requestPath = "".concat(this.options.serviceUrl, "/v2/behavioral_action/purchase?");
1167
1075
  var queryParams = {};
1168
1076
  var bodyParams = {};
1169
1077
  var items = parameters.items,
1170
- revenue = parameters.revenue,
1171
- order_id = parameters.order_id,
1172
- _parameters$orderId = parameters.orderId,
1173
- orderId = _parameters$orderId === void 0 ? order_id : _parameters$orderId,
1174
- section = parameters.section;
1175
-
1078
+ revenue = parameters.revenue,
1079
+ order_id = parameters.order_id,
1080
+ _parameters$orderId = parameters.orderId,
1081
+ orderId = _parameters$orderId === void 0 ? order_id : _parameters$orderId,
1082
+ section = parameters.section;
1176
1083
  if (orderId) {
1177
1084
  // Don't send another purchase event if we have already tracked the order
1178
1085
  if (helpers.hasOrderIdRecord(orderId)) {
1179
1086
  return false;
1180
1087
  }
1088
+ helpers.addOrderIdRecord(orderId);
1181
1089
 
1182
- helpers.addOrderIdRecord(orderId); // Add order_id to the tracking params
1183
-
1090
+ // Add order_id to the tracking params
1184
1091
  bodyParams.order_id = orderId;
1185
1092
  }
1186
-
1187
1093
  if (items && Array.isArray(items)) {
1188
1094
  bodyParams.items = items.slice(0, 100).map(function (item) {
1189
1095
  return helpers.toSnakeCaseKeys(item, false);
1190
1096
  });
1191
1097
  }
1192
-
1193
1098
  if (revenue || revenue === 0) {
1194
1099
  bodyParams.revenue = revenue;
1195
1100
  }
1196
-
1197
1101
  if (section) {
1198
1102
  queryParams.section = section;
1199
1103
  } else {
1200
1104
  queryParams.section = 'Products';
1201
1105
  }
1202
-
1203
1106
  var requestURL = "".concat(requestPath).concat(applyParamsAsString(queryParams, this.options));
1204
1107
  var requestMethod = 'POST';
1205
1108
  var requestBody = applyParams(bodyParams, _objectSpread(_objectSpread({}, this.options), {}, {
@@ -1209,10 +1112,10 @@ var Tracker = /*#__PURE__*/function () {
1209
1112
  this.requests.send();
1210
1113
  return true;
1211
1114
  }
1212
-
1213
1115
  this.requests.send();
1214
1116
  return new Error('parameters are required of type object');
1215
1117
  }
1118
+
1216
1119
  /**
1217
1120
  * Send recommendation view event to API
1218
1121
  *
@@ -1243,71 +1146,60 @@ var Tracker = /*#__PURE__*/function () {
1243
1146
  * },
1244
1147
  * );
1245
1148
  */
1246
-
1247
1149
  }, {
1248
1150
  key: "trackRecommendationView",
1249
1151
  value: function trackRecommendationView(parameters) {
1250
1152
  var networkParameters = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
1251
-
1252
1153
  // Ensure parameters are provided (required)
1253
1154
  if (parameters && (0, _typeof2["default"])(parameters) === 'object' && !Array.isArray(parameters)) {
1254
1155
  var requestPath = "".concat(this.options.serviceUrl, "/v2/behavioral_action/recommendation_result_view?");
1255
1156
  var bodyParams = {};
1256
1157
  var result_count = parameters.result_count,
1257
- _parameters$resultCou3 = parameters.resultCount,
1258
- resultCount = _parameters$resultCou3 === void 0 ? result_count : _parameters$resultCou3,
1259
- result_page = parameters.result_page,
1260
- _parameters$resultPag3 = parameters.resultPage,
1261
- resultPage = _parameters$resultPag3 === void 0 ? result_page : _parameters$resultPag3,
1262
- result_id = parameters.result_id,
1263
- _parameters$resultId4 = parameters.resultId,
1264
- resultId = _parameters$resultId4 === void 0 ? result_id : _parameters$resultId4,
1265
- section = parameters.section,
1266
- url = parameters.url,
1267
- pod_id = parameters.pod_id,
1268
- _parameters$podId = parameters.podId,
1269
- podId = _parameters$podId === void 0 ? pod_id : _parameters$podId,
1270
- num_results_viewed = parameters.num_results_viewed,
1271
- _parameters$numResult4 = parameters.numResultsViewed,
1272
- numResultsViewed = _parameters$numResult4 === void 0 ? num_results_viewed : _parameters$numResult4,
1273
- items = parameters.items;
1274
-
1158
+ _parameters$resultCou3 = parameters.resultCount,
1159
+ resultCount = _parameters$resultCou3 === void 0 ? result_count : _parameters$resultCou3,
1160
+ result_page = parameters.result_page,
1161
+ _parameters$resultPag3 = parameters.resultPage,
1162
+ resultPage = _parameters$resultPag3 === void 0 ? result_page : _parameters$resultPag3,
1163
+ result_id = parameters.result_id,
1164
+ _parameters$resultId4 = parameters.resultId,
1165
+ resultId = _parameters$resultId4 === void 0 ? result_id : _parameters$resultId4,
1166
+ section = parameters.section,
1167
+ url = parameters.url,
1168
+ pod_id = parameters.pod_id,
1169
+ _parameters$podId = parameters.podId,
1170
+ podId = _parameters$podId === void 0 ? pod_id : _parameters$podId,
1171
+ num_results_viewed = parameters.num_results_viewed,
1172
+ _parameters$numResult4 = parameters.numResultsViewed,
1173
+ numResultsViewed = _parameters$numResult4 === void 0 ? num_results_viewed : _parameters$numResult4,
1174
+ items = parameters.items;
1275
1175
  if (!helpers.isNil(resultCount)) {
1276
1176
  bodyParams.result_count = resultCount;
1277
1177
  }
1278
-
1279
1178
  if (!helpers.isNil(resultPage)) {
1280
1179
  bodyParams.result_page = resultPage;
1281
1180
  }
1282
-
1283
1181
  if (resultId) {
1284
1182
  bodyParams.result_id = resultId;
1285
1183
  }
1286
-
1287
1184
  if (section) {
1288
1185
  bodyParams.section = section;
1289
1186
  } else {
1290
1187
  bodyParams.section = 'Products';
1291
1188
  }
1292
-
1293
1189
  if (url) {
1294
1190
  bodyParams.url = url;
1295
1191
  }
1296
-
1297
1192
  if (podId) {
1298
1193
  bodyParams.pod_id = podId;
1299
1194
  }
1300
-
1301
1195
  if (!helpers.isNil(numResultsViewed)) {
1302
1196
  bodyParams.num_results_viewed = numResultsViewed;
1303
1197
  }
1304
-
1305
1198
  if (items && Array.isArray(items)) {
1306
1199
  bodyParams.items = items.slice(0, 100).map(function (item) {
1307
1200
  return helpers.toSnakeCaseKeys(item, false);
1308
1201
  });
1309
1202
  }
1310
-
1311
1203
  var requestURL = "".concat(requestPath).concat(applyParamsAsString({}, this.options));
1312
1204
  var requestMethod = 'POST';
1313
1205
  var requestBody = applyParams(bodyParams, _objectSpread(_objectSpread({}, this.options), {}, {
@@ -1317,10 +1209,10 @@ var Tracker = /*#__PURE__*/function () {
1317
1209
  this.requests.send();
1318
1210
  return true;
1319
1211
  }
1320
-
1321
1212
  this.requests.send();
1322
1213
  return new Error('parameters are required of type object');
1323
1214
  }
1215
+
1324
1216
  /**
1325
1217
  * Send recommendation click event to API
1326
1218
  *
@@ -1357,93 +1249,79 @@ var Tracker = /*#__PURE__*/function () {
1357
1249
  * },
1358
1250
  * );
1359
1251
  */
1360
-
1361
1252
  }, {
1362
1253
  key: "trackRecommendationClick",
1363
1254
  value: function trackRecommendationClick(parameters) {
1364
1255
  var networkParameters = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
1365
-
1366
1256
  // Ensure parameters are provided (required)
1367
1257
  if (parameters && (0, _typeof2["default"])(parameters) === 'object' && !Array.isArray(parameters)) {
1368
1258
  var requestPath = "".concat(this.options.serviceUrl, "/v2/behavioral_action/recommendation_result_click?");
1369
1259
  var bodyParams = {};
1370
1260
  var variation_id = parameters.variation_id,
1371
- _parameters$variation6 = parameters.variationId,
1372
- variationId = _parameters$variation6 === void 0 ? variation_id : _parameters$variation6,
1373
- _parameters$section3 = parameters.section,
1374
- section = _parameters$section3 === void 0 ? 'Products' : _parameters$section3,
1375
- result_id = parameters.result_id,
1376
- _parameters$resultId5 = parameters.resultId,
1377
- resultId = _parameters$resultId5 === void 0 ? result_id : _parameters$resultId5,
1378
- result_count = parameters.result_count,
1379
- _parameters$resultCou4 = parameters.resultCount,
1380
- resultCount = _parameters$resultCou4 === void 0 ? result_count : _parameters$resultCou4,
1381
- result_page = parameters.result_page,
1382
- _parameters$resultPag4 = parameters.resultPage,
1383
- resultPage = _parameters$resultPag4 === void 0 ? result_page : _parameters$resultPag4,
1384
- result_position_on_page = parameters.result_position_on_page,
1385
- _parameters$resultPos2 = parameters.resultPositionOnPage,
1386
- resultPositionOnPage = _parameters$resultPos2 === void 0 ? result_position_on_page : _parameters$resultPos2,
1387
- num_results_per_page = parameters.num_results_per_page,
1388
- _parameters$numResult5 = parameters.numResultsPerPage,
1389
- numResultsPerPage = _parameters$numResult5 === void 0 ? num_results_per_page : _parameters$numResult5,
1390
- pod_id = parameters.pod_id,
1391
- _parameters$podId2 = parameters.podId,
1392
- podId = _parameters$podId2 === void 0 ? pod_id : _parameters$podId2,
1393
- strategy_id = parameters.strategy_id,
1394
- _parameters$strategyI = parameters.strategyId,
1395
- strategyId = _parameters$strategyI === void 0 ? strategy_id : _parameters$strategyI,
1396
- item_id = parameters.item_id,
1397
- _parameters$itemId6 = parameters.itemId,
1398
- itemId = _parameters$itemId6 === void 0 ? item_id : _parameters$itemId6,
1399
- item_name = parameters.item_name,
1400
- _parameters$itemName5 = parameters.itemName,
1401
- itemName = _parameters$itemName5 === void 0 ? item_name : _parameters$itemName5;
1402
-
1261
+ _parameters$variation6 = parameters.variationId,
1262
+ variationId = _parameters$variation6 === void 0 ? variation_id : _parameters$variation6,
1263
+ _parameters$section3 = parameters.section,
1264
+ section = _parameters$section3 === void 0 ? 'Products' : _parameters$section3,
1265
+ result_id = parameters.result_id,
1266
+ _parameters$resultId5 = parameters.resultId,
1267
+ resultId = _parameters$resultId5 === void 0 ? result_id : _parameters$resultId5,
1268
+ result_count = parameters.result_count,
1269
+ _parameters$resultCou4 = parameters.resultCount,
1270
+ resultCount = _parameters$resultCou4 === void 0 ? result_count : _parameters$resultCou4,
1271
+ result_page = parameters.result_page,
1272
+ _parameters$resultPag4 = parameters.resultPage,
1273
+ resultPage = _parameters$resultPag4 === void 0 ? result_page : _parameters$resultPag4,
1274
+ result_position_on_page = parameters.result_position_on_page,
1275
+ _parameters$resultPos2 = parameters.resultPositionOnPage,
1276
+ resultPositionOnPage = _parameters$resultPos2 === void 0 ? result_position_on_page : _parameters$resultPos2,
1277
+ num_results_per_page = parameters.num_results_per_page,
1278
+ _parameters$numResult5 = parameters.numResultsPerPage,
1279
+ numResultsPerPage = _parameters$numResult5 === void 0 ? num_results_per_page : _parameters$numResult5,
1280
+ pod_id = parameters.pod_id,
1281
+ _parameters$podId2 = parameters.podId,
1282
+ podId = _parameters$podId2 === void 0 ? pod_id : _parameters$podId2,
1283
+ strategy_id = parameters.strategy_id,
1284
+ _parameters$strategyI = parameters.strategyId,
1285
+ strategyId = _parameters$strategyI === void 0 ? strategy_id : _parameters$strategyI,
1286
+ item_id = parameters.item_id,
1287
+ _parameters$itemId6 = parameters.itemId,
1288
+ itemId = _parameters$itemId6 === void 0 ? item_id : _parameters$itemId6,
1289
+ item_name = parameters.item_name,
1290
+ _parameters$itemName5 = parameters.itemName,
1291
+ itemName = _parameters$itemName5 === void 0 ? item_name : _parameters$itemName5;
1403
1292
  if (variationId) {
1404
1293
  bodyParams.variation_id = variationId;
1405
1294
  }
1406
-
1407
1295
  if (section) {
1408
1296
  bodyParams.section = section;
1409
1297
  }
1410
-
1411
1298
  if (resultId) {
1412
1299
  bodyParams.result_id = resultId;
1413
1300
  }
1414
-
1415
1301
  if (!helpers.isNil(resultCount)) {
1416
1302
  bodyParams.result_count = resultCount;
1417
1303
  }
1418
-
1419
1304
  if (!helpers.isNil(resultPage)) {
1420
1305
  bodyParams.result_page = resultPage;
1421
1306
  }
1422
-
1423
1307
  if (!helpers.isNil(resultPositionOnPage)) {
1424
1308
  bodyParams.result_position_on_page = resultPositionOnPage;
1425
1309
  }
1426
-
1427
1310
  if (!helpers.isNil(numResultsPerPage)) {
1428
1311
  bodyParams.num_results_per_page = numResultsPerPage;
1429
1312
  }
1430
-
1431
1313
  if (podId) {
1432
1314
  bodyParams.pod_id = podId;
1433
1315
  }
1434
-
1435
1316
  if (strategyId) {
1436
1317
  bodyParams.strategy_id = strategyId;
1437
1318
  }
1438
-
1439
1319
  if (itemId) {
1440
1320
  bodyParams.item_id = itemId;
1441
1321
  }
1442
-
1443
1322
  if (itemName) {
1444
1323
  bodyParams.item_name = itemName;
1445
1324
  }
1446
-
1447
1325
  var requestURL = "".concat(requestPath).concat(applyParamsAsString({}, this.options));
1448
1326
  var requestMethod = 'POST';
1449
1327
  var requestBody = applyParams(bodyParams, _objectSpread(_objectSpread({}, this.options), {}, {
@@ -1453,10 +1331,10 @@ var Tracker = /*#__PURE__*/function () {
1453
1331
  this.requests.send();
1454
1332
  return true;
1455
1333
  }
1456
-
1457
1334
  this.requests.send();
1458
1335
  return new Error('parameters are required of type object');
1459
1336
  }
1337
+
1460
1338
  /**
1461
1339
  * Send browse results loaded event to API
1462
1340
  *
@@ -1493,91 +1371,77 @@ var Tracker = /*#__PURE__*/function () {
1493
1371
  * },
1494
1372
  * );
1495
1373
  */
1496
-
1497
1374
  }, {
1498
1375
  key: "trackBrowseResultsLoaded",
1499
1376
  value: function trackBrowseResultsLoaded(parameters) {
1500
1377
  var networkParameters = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
1501
-
1502
1378
  // Ensure parameters are provided (required)
1503
1379
  if (parameters && (0, _typeof2["default"])(parameters) === 'object' && !Array.isArray(parameters)) {
1504
1380
  var requestPath = "".concat(this.options.serviceUrl, "/v2/behavioral_action/browse_result_load?");
1505
1381
  var bodyParams = {};
1506
1382
  var _parameters$section4 = parameters.section,
1507
- section = _parameters$section4 === void 0 ? 'Products' : _parameters$section4,
1508
- result_count = parameters.result_count,
1509
- _parameters$resultCou5 = parameters.resultCount,
1510
- resultCount = _parameters$resultCou5 === void 0 ? result_count : _parameters$resultCou5,
1511
- result_page = parameters.result_page,
1512
- _parameters$resultPag5 = parameters.resultPage,
1513
- resultPage = _parameters$resultPag5 === void 0 ? result_page : _parameters$resultPag5,
1514
- result_id = parameters.result_id,
1515
- _parameters$resultId6 = parameters.resultId,
1516
- resultId = _parameters$resultId6 === void 0 ? result_id : _parameters$resultId6,
1517
- selected_filters = parameters.selected_filters,
1518
- _parameters$selectedF3 = parameters.selectedFilters,
1519
- selectedFilters = _parameters$selectedF3 === void 0 ? selected_filters : _parameters$selectedF3,
1520
- url = parameters.url,
1521
- sort_order = parameters.sort_order,
1522
- _parameters$sortOrder2 = parameters.sortOrder,
1523
- sortOrder = _parameters$sortOrder2 === void 0 ? sort_order : _parameters$sortOrder2,
1524
- sort_by = parameters.sort_by,
1525
- _parameters$sortBy2 = parameters.sortBy,
1526
- sortBy = _parameters$sortBy2 === void 0 ? sort_by : _parameters$sortBy2,
1527
- filter_name = parameters.filter_name,
1528
- _parameters$filterNam = parameters.filterName,
1529
- filterName = _parameters$filterNam === void 0 ? filter_name : _parameters$filterNam,
1530
- filter_value = parameters.filter_value,
1531
- _parameters$filterVal = parameters.filterValue,
1532
- filterValue = _parameters$filterVal === void 0 ? filter_value : _parameters$filterVal,
1533
- items = parameters.items;
1534
-
1383
+ section = _parameters$section4 === void 0 ? 'Products' : _parameters$section4,
1384
+ result_count = parameters.result_count,
1385
+ _parameters$resultCou5 = parameters.resultCount,
1386
+ resultCount = _parameters$resultCou5 === void 0 ? result_count : _parameters$resultCou5,
1387
+ result_page = parameters.result_page,
1388
+ _parameters$resultPag5 = parameters.resultPage,
1389
+ resultPage = _parameters$resultPag5 === void 0 ? result_page : _parameters$resultPag5,
1390
+ result_id = parameters.result_id,
1391
+ _parameters$resultId6 = parameters.resultId,
1392
+ resultId = _parameters$resultId6 === void 0 ? result_id : _parameters$resultId6,
1393
+ selected_filters = parameters.selected_filters,
1394
+ _parameters$selectedF3 = parameters.selectedFilters,
1395
+ selectedFilters = _parameters$selectedF3 === void 0 ? selected_filters : _parameters$selectedF3,
1396
+ url = parameters.url,
1397
+ sort_order = parameters.sort_order,
1398
+ _parameters$sortOrder2 = parameters.sortOrder,
1399
+ sortOrder = _parameters$sortOrder2 === void 0 ? sort_order : _parameters$sortOrder2,
1400
+ sort_by = parameters.sort_by,
1401
+ _parameters$sortBy2 = parameters.sortBy,
1402
+ sortBy = _parameters$sortBy2 === void 0 ? sort_by : _parameters$sortBy2,
1403
+ filter_name = parameters.filter_name,
1404
+ _parameters$filterNam = parameters.filterName,
1405
+ filterName = _parameters$filterNam === void 0 ? filter_name : _parameters$filterNam,
1406
+ filter_value = parameters.filter_value,
1407
+ _parameters$filterVal = parameters.filterValue,
1408
+ filterValue = _parameters$filterVal === void 0 ? filter_value : _parameters$filterVal,
1409
+ items = parameters.items;
1535
1410
  if (section) {
1536
1411
  bodyParams.section = section;
1537
1412
  }
1538
-
1539
1413
  if (!helpers.isNil(resultCount)) {
1540
1414
  bodyParams.result_count = resultCount;
1541
1415
  }
1542
-
1543
1416
  if (!helpers.isNil(resultPage)) {
1544
1417
  bodyParams.result_page = resultPage;
1545
1418
  }
1546
-
1547
1419
  if (resultId) {
1548
1420
  bodyParams.result_id = resultId;
1549
1421
  }
1550
-
1551
1422
  if (selectedFilters) {
1552
1423
  bodyParams.selected_filters = selectedFilters;
1553
1424
  }
1554
-
1555
1425
  if (url) {
1556
1426
  bodyParams.url = url;
1557
1427
  }
1558
-
1559
1428
  if (sortOrder) {
1560
1429
  bodyParams.sort_order = sortOrder;
1561
1430
  }
1562
-
1563
1431
  if (sortBy) {
1564
1432
  bodyParams.sort_by = sortBy;
1565
1433
  }
1566
-
1567
1434
  if (filterName) {
1568
1435
  bodyParams.filter_name = filterName;
1569
1436
  }
1570
-
1571
1437
  if (filterValue) {
1572
1438
  bodyParams.filter_value = filterValue;
1573
1439
  }
1574
-
1575
1440
  if (items && Array.isArray(items)) {
1576
1441
  bodyParams.items = items.slice(0, 100).map(function (item) {
1577
1442
  return helpers.toSnakeCaseKeys(item, false);
1578
1443
  });
1579
1444
  }
1580
-
1581
1445
  var requestURL = "".concat(requestPath).concat(applyParamsAsString({}, this.options));
1582
1446
  var requestMethod = 'POST';
1583
1447
  var requestBody = applyParams(bodyParams, _objectSpread(_objectSpread({}, this.options), {}, {
@@ -1587,10 +1451,10 @@ var Tracker = /*#__PURE__*/function () {
1587
1451
  this.requests.send();
1588
1452
  return true;
1589
1453
  }
1590
-
1591
1454
  this.requests.send();
1592
1455
  return new Error('parameters are required of type object');
1593
1456
  }
1457
+
1594
1458
  /**
1595
1459
  * Send browse result click event to API
1596
1460
  *
@@ -1628,105 +1492,91 @@ var Tracker = /*#__PURE__*/function () {
1628
1492
  * },
1629
1493
  * );
1630
1494
  */
1631
-
1632
1495
  }, {
1633
1496
  key: "trackBrowseResultClick",
1634
1497
  value: function trackBrowseResultClick(parameters) {
1635
1498
  var networkParameters = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
1636
-
1637
1499
  // Ensure parameters are provided (required)
1638
1500
  if (parameters && (0, _typeof2["default"])(parameters) === 'object' && !Array.isArray(parameters)) {
1639
1501
  var requestPath = "".concat(this.options.serviceUrl, "/v2/behavioral_action/browse_result_click?");
1640
1502
  var bodyParams = {};
1641
1503
  var _parameters$section5 = parameters.section,
1642
- section = _parameters$section5 === void 0 ? 'Products' : _parameters$section5,
1643
- variation_id = parameters.variation_id,
1644
- _parameters$variation7 = parameters.variationId,
1645
- variationId = _parameters$variation7 === void 0 ? variation_id : _parameters$variation7,
1646
- result_id = parameters.result_id,
1647
- _parameters$resultId7 = parameters.resultId,
1648
- resultId = _parameters$resultId7 === void 0 ? result_id : _parameters$resultId7,
1649
- result_count = parameters.result_count,
1650
- _parameters$resultCou6 = parameters.resultCount,
1651
- resultCount = _parameters$resultCou6 === void 0 ? result_count : _parameters$resultCou6,
1652
- result_page = parameters.result_page,
1653
- _parameters$resultPag6 = parameters.resultPage,
1654
- resultPage = _parameters$resultPag6 === void 0 ? result_page : _parameters$resultPag6,
1655
- result_position_on_page = parameters.result_position_on_page,
1656
- _parameters$resultPos3 = parameters.resultPositionOnPage,
1657
- resultPositionOnPage = _parameters$resultPos3 === void 0 ? result_position_on_page : _parameters$resultPos3,
1658
- num_results_per_page = parameters.num_results_per_page,
1659
- _parameters$numResult6 = parameters.numResultsPerPage,
1660
- numResultsPerPage = _parameters$numResult6 === void 0 ? num_results_per_page : _parameters$numResult6,
1661
- selected_filters = parameters.selected_filters,
1662
- _parameters$selectedF4 = parameters.selectedFilters,
1663
- selectedFilters = _parameters$selectedF4 === void 0 ? selected_filters : _parameters$selectedF4,
1664
- filter_name = parameters.filter_name,
1665
- _parameters$filterNam2 = parameters.filterName,
1666
- filterName = _parameters$filterNam2 === void 0 ? filter_name : _parameters$filterNam2,
1667
- filter_value = parameters.filter_value,
1668
- _parameters$filterVal2 = parameters.filterValue,
1669
- filterValue = _parameters$filterVal2 === void 0 ? filter_value : _parameters$filterVal2,
1670
- customer_id = parameters.customer_id,
1671
- _parameters$customerI5 = parameters.customerId,
1672
- customerId = _parameters$customerI5 === void 0 ? customer_id : _parameters$customerI5,
1673
- item_id = parameters.item_id,
1674
- _parameters$itemId7 = parameters.itemId,
1675
- itemId = _parameters$itemId7 === void 0 ? customerId || item_id : _parameters$itemId7,
1676
- item_name = parameters.item_name,
1677
- name = parameters.name,
1678
- _parameters$itemName6 = parameters.itemName,
1679
- itemName = _parameters$itemName6 === void 0 ? item_name || name : _parameters$itemName6;
1680
-
1504
+ section = _parameters$section5 === void 0 ? 'Products' : _parameters$section5,
1505
+ variation_id = parameters.variation_id,
1506
+ _parameters$variation7 = parameters.variationId,
1507
+ variationId = _parameters$variation7 === void 0 ? variation_id : _parameters$variation7,
1508
+ result_id = parameters.result_id,
1509
+ _parameters$resultId7 = parameters.resultId,
1510
+ resultId = _parameters$resultId7 === void 0 ? result_id : _parameters$resultId7,
1511
+ result_count = parameters.result_count,
1512
+ _parameters$resultCou6 = parameters.resultCount,
1513
+ resultCount = _parameters$resultCou6 === void 0 ? result_count : _parameters$resultCou6,
1514
+ result_page = parameters.result_page,
1515
+ _parameters$resultPag6 = parameters.resultPage,
1516
+ resultPage = _parameters$resultPag6 === void 0 ? result_page : _parameters$resultPag6,
1517
+ result_position_on_page = parameters.result_position_on_page,
1518
+ _parameters$resultPos3 = parameters.resultPositionOnPage,
1519
+ resultPositionOnPage = _parameters$resultPos3 === void 0 ? result_position_on_page : _parameters$resultPos3,
1520
+ num_results_per_page = parameters.num_results_per_page,
1521
+ _parameters$numResult6 = parameters.numResultsPerPage,
1522
+ numResultsPerPage = _parameters$numResult6 === void 0 ? num_results_per_page : _parameters$numResult6,
1523
+ selected_filters = parameters.selected_filters,
1524
+ _parameters$selectedF4 = parameters.selectedFilters,
1525
+ selectedFilters = _parameters$selectedF4 === void 0 ? selected_filters : _parameters$selectedF4,
1526
+ filter_name = parameters.filter_name,
1527
+ _parameters$filterNam2 = parameters.filterName,
1528
+ filterName = _parameters$filterNam2 === void 0 ? filter_name : _parameters$filterNam2,
1529
+ filter_value = parameters.filter_value,
1530
+ _parameters$filterVal2 = parameters.filterValue,
1531
+ filterValue = _parameters$filterVal2 === void 0 ? filter_value : _parameters$filterVal2,
1532
+ customer_id = parameters.customer_id,
1533
+ _parameters$customerI5 = parameters.customerId,
1534
+ customerId = _parameters$customerI5 === void 0 ? customer_id : _parameters$customerI5,
1535
+ item_id = parameters.item_id,
1536
+ _parameters$itemId7 = parameters.itemId,
1537
+ itemId = _parameters$itemId7 === void 0 ? customerId || item_id : _parameters$itemId7,
1538
+ item_name = parameters.item_name,
1539
+ name = parameters.name,
1540
+ _parameters$itemName6 = parameters.itemName,
1541
+ itemName = _parameters$itemName6 === void 0 ? item_name || name : _parameters$itemName6;
1681
1542
  if (section) {
1682
1543
  bodyParams.section = section;
1683
1544
  }
1684
-
1685
1545
  if (variationId) {
1686
1546
  bodyParams.variation_id = variationId;
1687
1547
  }
1688
-
1689
1548
  if (resultId) {
1690
1549
  bodyParams.result_id = resultId;
1691
1550
  }
1692
-
1693
1551
  if (!helpers.isNil(resultCount)) {
1694
1552
  bodyParams.result_count = resultCount;
1695
1553
  }
1696
-
1697
1554
  if (!helpers.isNil(resultPage)) {
1698
1555
  bodyParams.result_page = resultPage;
1699
1556
  }
1700
-
1701
1557
  if (!helpers.isNil(resultPositionOnPage)) {
1702
1558
  bodyParams.result_position_on_page = resultPositionOnPage;
1703
1559
  }
1704
-
1705
1560
  if (!helpers.isNil(numResultsPerPage)) {
1706
1561
  bodyParams.num_results_per_page = numResultsPerPage;
1707
1562
  }
1708
-
1709
1563
  if (selectedFilters) {
1710
1564
  bodyParams.selected_filters = selectedFilters;
1711
1565
  }
1712
-
1713
1566
  if (filterName) {
1714
1567
  bodyParams.filter_name = filterName;
1715
1568
  }
1716
-
1717
1569
  if (filterValue) {
1718
1570
  bodyParams.filter_value = filterValue;
1719
1571
  }
1720
-
1721
1572
  if (itemId) {
1722
1573
  bodyParams.item_id = itemId;
1723
- } // Ensure support for both item_name and name as parameters
1724
-
1574
+ }
1725
1575
 
1576
+ // Ensure support for both item_name and name as parameters
1726
1577
  if (itemName) {
1727
1578
  bodyParams.item_name = itemName;
1728
1579
  }
1729
-
1730
1580
  var requestURL = "".concat(requestPath).concat(applyParamsAsString({}, this.options));
1731
1581
  var requestMethod = 'POST';
1732
1582
  var requestBody = applyParams(bodyParams, _objectSpread(_objectSpread({}, this.options), {}, {
@@ -1736,10 +1586,10 @@ var Tracker = /*#__PURE__*/function () {
1736
1586
  this.requests.send();
1737
1587
  return true;
1738
1588
  }
1739
-
1740
1589
  this.requests.send();
1741
1590
  return new Error('parameters are required of type object');
1742
1591
  }
1592
+
1743
1593
  /**
1744
1594
  * Send generic result click event to API
1745
1595
  *
@@ -1762,40 +1612,34 @@ var Tracker = /*#__PURE__*/function () {
1762
1612
  * },
1763
1613
  * );
1764
1614
  */
1765
-
1766
1615
  }, {
1767
1616
  key: "trackGenericResultClick",
1768
1617
  value: function trackGenericResultClick(parameters) {
1769
1618
  var networkParameters = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
1770
-
1771
1619
  // Ensure required parameters are provided
1772
1620
  if ((0, _typeof2["default"])(parameters) === 'object') {
1773
1621
  var requestPath = "".concat(this.options.serviceUrl, "/v2/behavioral_action/result_click?");
1774
1622
  var bodyParams = {};
1775
1623
  var item_id = parameters.item_id,
1776
- _parameters$itemId8 = parameters.itemId,
1777
- itemId = _parameters$itemId8 === void 0 ? item_id : _parameters$itemId8,
1778
- item_name = parameters.item_name,
1779
- _parameters$itemName7 = parameters.itemName,
1780
- itemName = _parameters$itemName7 === void 0 ? item_name : _parameters$itemName7,
1781
- variation_id = parameters.variation_id,
1782
- _parameters$variation8 = parameters.variationId,
1783
- variationId = _parameters$variation8 === void 0 ? variation_id : _parameters$variation8,
1784
- _parameters$section6 = parameters.section,
1785
- section = _parameters$section6 === void 0 ? 'Products' : _parameters$section6;
1786
-
1624
+ _parameters$itemId8 = parameters.itemId,
1625
+ itemId = _parameters$itemId8 === void 0 ? item_id : _parameters$itemId8,
1626
+ item_name = parameters.item_name,
1627
+ _parameters$itemName7 = parameters.itemName,
1628
+ itemName = _parameters$itemName7 === void 0 ? item_name : _parameters$itemName7,
1629
+ variation_id = parameters.variation_id,
1630
+ _parameters$variation8 = parameters.variationId,
1631
+ variationId = _parameters$variation8 === void 0 ? variation_id : _parameters$variation8,
1632
+ _parameters$section6 = parameters.section,
1633
+ section = _parameters$section6 === void 0 ? 'Products' : _parameters$section6;
1787
1634
  if (itemId) {
1788
1635
  bodyParams.section = section;
1789
1636
  bodyParams.item_id = itemId;
1790
-
1791
1637
  if (itemName) {
1792
1638
  bodyParams.item_name = itemName;
1793
1639
  }
1794
-
1795
1640
  if (variationId) {
1796
1641
  bodyParams.variation_id = variationId;
1797
1642
  }
1798
-
1799
1643
  var requestURL = "".concat(requestPath).concat(applyParamsAsString({}, this.options));
1800
1644
  var requestMethod = 'POST';
1801
1645
  var requestBody = applyParams(bodyParams, _objectSpread(_objectSpread({}, this.options), {}, {
@@ -1806,10 +1650,10 @@ var Tracker = /*#__PURE__*/function () {
1806
1650
  return true;
1807
1651
  }
1808
1652
  }
1809
-
1810
1653
  this.requests.send();
1811
1654
  return new Error('A parameters object with an "itemId" property is required.');
1812
1655
  }
1656
+
1813
1657
  /**
1814
1658
  * Send quiz results loaded event to API
1815
1659
  *
@@ -1841,100 +1685,83 @@ var Tracker = /*#__PURE__*/function () {
1841
1685
  * );
1842
1686
  */
1843
1687
  // eslint-disable-next-line complexity
1844
-
1845
1688
  }, {
1846
1689
  key: "trackQuizResultsLoaded",
1847
1690
  value: function trackQuizResultsLoaded(parameters) {
1848
1691
  var networkParameters = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
1849
-
1850
1692
  // Ensure parameters are provided (required)
1851
1693
  if (parameters && (0, _typeof2["default"])(parameters) === 'object' && !Array.isArray(parameters)) {
1852
1694
  var requestPath = "".concat(this.options.serviceUrl, "/v2/behavioral_action/quiz_result_load?");
1853
1695
  var quiz_id = parameters.quiz_id,
1854
- _parameters$quizId = parameters.quizId,
1855
- quizId = _parameters$quizId === void 0 ? quiz_id : _parameters$quizId,
1856
- quiz_version_id = parameters.quiz_version_id,
1857
- _parameters$quizVersi = parameters.quizVersionId,
1858
- quizVersionId = _parameters$quizVersi === void 0 ? quiz_version_id : _parameters$quizVersi,
1859
- quiz_session_id = parameters.quiz_session_id,
1860
- _parameters$quizSessi = parameters.quizSessionId,
1861
- quizSessionId = _parameters$quizSessi === void 0 ? quiz_session_id : _parameters$quizSessi,
1862
- url = parameters.url,
1863
- _parameters$section7 = parameters.section,
1864
- section = _parameters$section7 === void 0 ? 'Products' : _parameters$section7,
1865
- result_count = parameters.result_count,
1866
- _parameters$resultCou7 = parameters.resultCount,
1867
- resultCount = _parameters$resultCou7 === void 0 ? result_count : _parameters$resultCou7,
1868
- result_id = parameters.result_id,
1869
- _parameters$resultId8 = parameters.resultId,
1870
- resultId = _parameters$resultId8 === void 0 ? result_id : _parameters$resultId8,
1871
- result_page = parameters.result_page,
1872
- _parameters$resultPag7 = parameters.resultPage,
1873
- resultPage = _parameters$resultPag7 === void 0 ? result_page : _parameters$resultPag7,
1874
- items = parameters.items;
1696
+ _parameters$quizId = parameters.quizId,
1697
+ quizId = _parameters$quizId === void 0 ? quiz_id : _parameters$quizId,
1698
+ quiz_version_id = parameters.quiz_version_id,
1699
+ _parameters$quizVersi = parameters.quizVersionId,
1700
+ quizVersionId = _parameters$quizVersi === void 0 ? quiz_version_id : _parameters$quizVersi,
1701
+ quiz_session_id = parameters.quiz_session_id,
1702
+ _parameters$quizSessi = parameters.quizSessionId,
1703
+ quizSessionId = _parameters$quizSessi === void 0 ? quiz_session_id : _parameters$quizSessi,
1704
+ url = parameters.url,
1705
+ _parameters$section7 = parameters.section,
1706
+ section = _parameters$section7 === void 0 ? 'Products' : _parameters$section7,
1707
+ result_count = parameters.result_count,
1708
+ _parameters$resultCou7 = parameters.resultCount,
1709
+ resultCount = _parameters$resultCou7 === void 0 ? result_count : _parameters$resultCou7,
1710
+ result_id = parameters.result_id,
1711
+ _parameters$resultId8 = parameters.resultId,
1712
+ resultId = _parameters$resultId8 === void 0 ? result_id : _parameters$resultId8,
1713
+ result_page = parameters.result_page,
1714
+ _parameters$resultPag7 = parameters.resultPage,
1715
+ resultPage = _parameters$resultPag7 === void 0 ? result_page : _parameters$resultPag7,
1716
+ items = parameters.items;
1875
1717
  var queryParams = {};
1876
1718
  var bodyParams = {};
1877
-
1878
1719
  if (items && Array.isArray(items)) {
1879
1720
  bodyParams.items = items.slice(0, 100).map(function (item) {
1880
1721
  return helpers.toSnakeCaseKeys(item, false);
1881
1722
  });
1882
1723
  }
1883
-
1884
1724
  if (typeof quizId !== 'string') {
1885
1725
  return new Error('"quizId" is a required parameter of type string');
1886
1726
  }
1887
-
1888
1727
  if (typeof quizVersionId !== 'string') {
1889
1728
  return new Error('"quizVersionId" is a required parameter of type string');
1890
1729
  }
1891
-
1892
1730
  if (typeof quizSessionId !== 'string') {
1893
1731
  return new Error('"quizSessionId" is a required parameter of type string');
1894
1732
  }
1895
-
1896
1733
  if (typeof url !== 'string') {
1897
1734
  return new Error('"url" is a required parameter of type string');
1898
1735
  }
1899
-
1900
1736
  bodyParams.quiz_id = quizId;
1901
1737
  bodyParams.quiz_version_id = quizVersionId;
1902
1738
  bodyParams.quiz_session_id = quizSessionId;
1903
1739
  bodyParams.url = url;
1904
-
1905
1740
  if (!helpers.isNil(section)) {
1906
1741
  if (typeof section !== 'string') {
1907
1742
  return new Error('"section" must be a string');
1908
1743
  }
1909
-
1910
1744
  queryParams.section = section;
1911
1745
  bodyParams.section = section;
1912
1746
  }
1913
-
1914
1747
  if (!helpers.isNil(resultCount)) {
1915
1748
  if (typeof resultCount !== 'number') {
1916
1749
  return new Error('"resultCount" must be a number');
1917
1750
  }
1918
-
1919
1751
  bodyParams.result_count = resultCount;
1920
1752
  }
1921
-
1922
1753
  if (!helpers.isNil(resultId)) {
1923
1754
  if (typeof resultId !== 'string') {
1924
1755
  return new Error('"resultId" must be a string');
1925
1756
  }
1926
-
1927
1757
  bodyParams.result_id = resultId;
1928
1758
  }
1929
-
1930
1759
  if (!helpers.isNil(resultPage)) {
1931
1760
  if (typeof resultPage !== 'number') {
1932
1761
  return new Error('"resultPage" must be a number');
1933
1762
  }
1934
-
1935
1763
  bodyParams.result_page = resultPage;
1936
1764
  }
1937
-
1938
1765
  var requestURL = "".concat(requestPath).concat(applyParamsAsString(queryParams, this.options));
1939
1766
  var requestMethod = 'POST';
1940
1767
  var requestBody = applyParams(bodyParams, _objectSpread(_objectSpread({}, this.options), {}, {
@@ -1944,10 +1771,10 @@ var Tracker = /*#__PURE__*/function () {
1944
1771
  this.requests.send();
1945
1772
  return true;
1946
1773
  }
1947
-
1948
1774
  this.requests.send();
1949
1775
  return new Error('parameters are required of type object');
1950
1776
  }
1777
+
1951
1778
  /**
1952
1779
  * Send quiz result click event to API
1953
1780
  *
@@ -1982,143 +1809,117 @@ var Tracker = /*#__PURE__*/function () {
1982
1809
  * );
1983
1810
  */
1984
1811
  // eslint-disable-next-line complexity
1985
-
1986
1812
  }, {
1987
1813
  key: "trackQuizResultClick",
1988
1814
  value: function trackQuizResultClick(parameters) {
1989
1815
  var networkParameters = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
1990
-
1991
1816
  // Ensure parameters are provided (required)
1992
1817
  if (parameters && (0, _typeof2["default"])(parameters) === 'object' && !Array.isArray(parameters)) {
1993
1818
  var requestPath = "".concat(this.options.serviceUrl, "/v2/behavioral_action/quiz_result_click?");
1994
1819
  var quiz_id = parameters.quiz_id,
1995
- _parameters$quizId2 = parameters.quizId,
1996
- quizId = _parameters$quizId2 === void 0 ? quiz_id : _parameters$quizId2,
1997
- quiz_version_id = parameters.quiz_version_id,
1998
- _parameters$quizVersi2 = parameters.quizVersionId,
1999
- quizVersionId = _parameters$quizVersi2 === void 0 ? quiz_version_id : _parameters$quizVersi2,
2000
- quiz_session_id = parameters.quiz_session_id,
2001
- _parameters$quizSessi2 = parameters.quizSessionId,
2002
- quizSessionId = _parameters$quizSessi2 === void 0 ? quiz_session_id : _parameters$quizSessi2,
2003
- item_id = parameters.item_id,
2004
- _parameters$itemId9 = parameters.itemId,
2005
- itemId = _parameters$itemId9 === void 0 ? item_id : _parameters$itemId9,
2006
- item_name = parameters.item_name,
2007
- _parameters$itemName8 = parameters.itemName,
2008
- itemName = _parameters$itemName8 === void 0 ? item_name : _parameters$itemName8,
2009
- result_count = parameters.result_count,
2010
- _parameters$resultCou8 = parameters.resultCount,
2011
- resultCount = _parameters$resultCou8 === void 0 ? result_count : _parameters$resultCou8,
2012
- result_id = parameters.result_id,
2013
- _parameters$resultId9 = parameters.resultId,
2014
- resultId = _parameters$resultId9 === void 0 ? result_id : _parameters$resultId9,
2015
- result_page = parameters.result_page,
2016
- _parameters$resultPag8 = parameters.resultPage,
2017
- resultPage = _parameters$resultPag8 === void 0 ? result_page : _parameters$resultPag8,
2018
- num_results_per_page = parameters.num_results_per_page,
2019
- _parameters$numResult7 = parameters.numResultsPerPage,
2020
- numResultsPerPage = _parameters$numResult7 === void 0 ? num_results_per_page : _parameters$numResult7,
2021
- result_position_on_page = parameters.result_position_on_page,
2022
- _parameters$resultPos4 = parameters.resultPositionOnPage,
2023
- resultPositionOnPage = _parameters$resultPos4 === void 0 ? result_position_on_page : _parameters$resultPos4,
2024
- _parameters$section8 = parameters.section,
2025
- section = _parameters$section8 === void 0 ? 'Products' : _parameters$section8,
2026
- variationId = parameters.variationId;
1820
+ _parameters$quizId2 = parameters.quizId,
1821
+ quizId = _parameters$quizId2 === void 0 ? quiz_id : _parameters$quizId2,
1822
+ quiz_version_id = parameters.quiz_version_id,
1823
+ _parameters$quizVersi2 = parameters.quizVersionId,
1824
+ quizVersionId = _parameters$quizVersi2 === void 0 ? quiz_version_id : _parameters$quizVersi2,
1825
+ quiz_session_id = parameters.quiz_session_id,
1826
+ _parameters$quizSessi2 = parameters.quizSessionId,
1827
+ quizSessionId = _parameters$quizSessi2 === void 0 ? quiz_session_id : _parameters$quizSessi2,
1828
+ item_id = parameters.item_id,
1829
+ _parameters$itemId9 = parameters.itemId,
1830
+ itemId = _parameters$itemId9 === void 0 ? item_id : _parameters$itemId9,
1831
+ item_name = parameters.item_name,
1832
+ _parameters$itemName8 = parameters.itemName,
1833
+ itemName = _parameters$itemName8 === void 0 ? item_name : _parameters$itemName8,
1834
+ result_count = parameters.result_count,
1835
+ _parameters$resultCou8 = parameters.resultCount,
1836
+ resultCount = _parameters$resultCou8 === void 0 ? result_count : _parameters$resultCou8,
1837
+ result_id = parameters.result_id,
1838
+ _parameters$resultId9 = parameters.resultId,
1839
+ resultId = _parameters$resultId9 === void 0 ? result_id : _parameters$resultId9,
1840
+ result_page = parameters.result_page,
1841
+ _parameters$resultPag8 = parameters.resultPage,
1842
+ resultPage = _parameters$resultPag8 === void 0 ? result_page : _parameters$resultPag8,
1843
+ num_results_per_page = parameters.num_results_per_page,
1844
+ _parameters$numResult7 = parameters.numResultsPerPage,
1845
+ numResultsPerPage = _parameters$numResult7 === void 0 ? num_results_per_page : _parameters$numResult7,
1846
+ result_position_on_page = parameters.result_position_on_page,
1847
+ _parameters$resultPos4 = parameters.resultPositionOnPage,
1848
+ resultPositionOnPage = _parameters$resultPos4 === void 0 ? result_position_on_page : _parameters$resultPos4,
1849
+ _parameters$section8 = parameters.section,
1850
+ section = _parameters$section8 === void 0 ? 'Products' : _parameters$section8,
1851
+ variationId = parameters.variationId;
2027
1852
  var queryParams = {};
2028
1853
  var bodyParams = {};
2029
-
2030
1854
  if (typeof quizId !== 'string') {
2031
1855
  return new Error('"quizId" is a required parameter of type string');
2032
1856
  }
2033
-
2034
1857
  if (typeof quizVersionId !== 'string') {
2035
1858
  return new Error('"quizVersionId" is a required parameter of type string');
2036
1859
  }
2037
-
2038
1860
  if (typeof quizSessionId !== 'string') {
2039
1861
  return new Error('"quizSessionId" is a required parameter of type string');
2040
1862
  }
2041
-
2042
1863
  if (typeof itemId !== 'string' && typeof itemName !== 'string') {
2043
1864
  return new Error('"itemId" or "itemName" is a required parameter of type string');
2044
1865
  }
2045
-
2046
1866
  bodyParams.quiz_id = quizId;
2047
1867
  bodyParams.quiz_version_id = quizVersionId;
2048
1868
  bodyParams.quiz_session_id = quizSessionId;
2049
-
2050
1869
  if (!helpers.isNil(itemId)) {
2051
1870
  if (typeof itemId !== 'string') {
2052
1871
  return new Error('"itemId" must be a string');
2053
1872
  }
2054
-
2055
1873
  bodyParams.item_id = itemId;
2056
1874
  }
2057
-
2058
1875
  if (!helpers.isNil(itemName)) {
2059
1876
  if (typeof itemName !== 'string') {
2060
1877
  return new Error('"itemName" must be a string');
2061
1878
  }
2062
-
2063
1879
  bodyParams.item_name = itemName;
2064
1880
  }
2065
-
2066
1881
  if (!helpers.isNil(variationId)) {
2067
1882
  if (typeof variationId !== 'string') {
2068
1883
  return new Error('"variationId" must be a string');
2069
1884
  }
2070
-
2071
1885
  bodyParams.variation_id = variationId;
2072
1886
  }
2073
-
2074
1887
  if (!helpers.isNil(section)) {
2075
1888
  if (typeof section !== 'string') {
2076
1889
  return new Error('"section" must be a string');
2077
1890
  }
2078
-
2079
1891
  queryParams.section = section;
2080
1892
  }
2081
-
2082
1893
  if (!helpers.isNil(resultCount)) {
2083
1894
  if (typeof resultCount !== 'number') {
2084
1895
  return new Error('"resultCount" must be a number');
2085
1896
  }
2086
-
2087
1897
  bodyParams.result_count = resultCount;
2088
1898
  }
2089
-
2090
1899
  if (!helpers.isNil(resultId)) {
2091
1900
  if (typeof resultId !== 'string') {
2092
1901
  return new Error('"resultId" must be a string');
2093
1902
  }
2094
-
2095
1903
  bodyParams.result_id = resultId;
2096
1904
  }
2097
-
2098
1905
  if (!helpers.isNil(resultPage)) {
2099
1906
  if (typeof resultPage !== 'number') {
2100
1907
  return new Error('"resultPage" must be a number');
2101
1908
  }
2102
-
2103
1909
  bodyParams.result_page = resultPage;
2104
1910
  }
2105
-
2106
1911
  if (!helpers.isNil(numResultsPerPage)) {
2107
1912
  if (typeof numResultsPerPage !== 'number') {
2108
1913
  return new Error('"numResultsPerPage" must be a number');
2109
1914
  }
2110
-
2111
1915
  bodyParams.num_results_per_page = numResultsPerPage;
2112
1916
  }
2113
-
2114
1917
  if (!helpers.isNil(resultPositionOnPage)) {
2115
1918
  if (typeof resultPositionOnPage !== 'number') {
2116
1919
  return new Error('"resultPositionOnPage" must be a number');
2117
1920
  }
2118
-
2119
1921
  bodyParams.result_position_on_page = resultPositionOnPage;
2120
1922
  }
2121
-
2122
1923
  var requestURL = "".concat(requestPath).concat(applyParamsAsString(queryParams, this.options));
2123
1924
  var requestMethod = 'POST';
2124
1925
  var requestBody = applyParams(bodyParams, _objectSpread(_objectSpread({}, this.options), {}, {
@@ -2128,10 +1929,10 @@ var Tracker = /*#__PURE__*/function () {
2128
1929
  this.requests.send();
2129
1930
  return true;
2130
1931
  }
2131
-
2132
1932
  this.requests.send();
2133
1933
  return new Error('parameters are required of type object');
2134
1934
  }
1935
+
2135
1936
  /**
2136
1937
  * Send quiz conversion event to API
2137
1938
  *
@@ -2166,130 +1967,108 @@ var Tracker = /*#__PURE__*/function () {
2166
1967
  * );
2167
1968
  */
2168
1969
  // eslint-disable-next-line complexity
2169
-
2170
1970
  }, {
2171
1971
  key: "trackQuizConversion",
2172
1972
  value: function trackQuizConversion(parameters) {
2173
1973
  var networkParameters = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
2174
-
2175
1974
  // Ensure parameters are provided (required)
2176
1975
  if (parameters && (0, _typeof2["default"])(parameters) === 'object' && !Array.isArray(parameters)) {
2177
1976
  var requestPath = "".concat(this.options.serviceUrl, "/v2/behavioral_action/quiz_conversion?");
2178
1977
  var quiz_id = parameters.quiz_id,
2179
- _parameters$quizId3 = parameters.quizId,
2180
- quizId = _parameters$quizId3 === void 0 ? quiz_id : _parameters$quizId3,
2181
- quiz_version_id = parameters.quiz_version_id,
2182
- _parameters$quizVersi3 = parameters.quizVersionId,
2183
- quizVersionId = _parameters$quizVersi3 === void 0 ? quiz_version_id : _parameters$quizVersi3,
2184
- quiz_session_id = parameters.quiz_session_id,
2185
- _parameters$quizSessi3 = parameters.quizSessionId,
2186
- quizSessionId = _parameters$quizSessi3 === void 0 ? quiz_session_id : _parameters$quizSessi3,
2187
- item_id = parameters.item_id,
2188
- _parameters$itemId10 = parameters.itemId,
2189
- itemId = _parameters$itemId10 === void 0 ? item_id : _parameters$itemId10,
2190
- item_name = parameters.item_name,
2191
- _parameters$itemName9 = parameters.itemName,
2192
- itemName = _parameters$itemName9 === void 0 ? item_name : _parameters$itemName9,
2193
- variation_id = parameters.variation_id,
2194
- _parameters$variation9 = parameters.variationId,
2195
- variationId = _parameters$variation9 === void 0 ? variation_id : _parameters$variation9,
2196
- revenue = parameters.revenue,
2197
- _parameters$section9 = parameters.section,
2198
- section = _parameters$section9 === void 0 ? 'Products' : _parameters$section9,
2199
- type = parameters.type,
2200
- is_custom_type = parameters.is_custom_type,
2201
- _parameters$isCustomT2 = parameters.isCustomType,
2202
- isCustomType = _parameters$isCustomT2 === void 0 ? is_custom_type : _parameters$isCustomT2,
2203
- display_name = parameters.display_name,
2204
- _parameters$displayNa4 = parameters.displayName,
2205
- displayName = _parameters$displayNa4 === void 0 ? display_name : _parameters$displayNa4;
1978
+ _parameters$quizId3 = parameters.quizId,
1979
+ quizId = _parameters$quizId3 === void 0 ? quiz_id : _parameters$quizId3,
1980
+ quiz_version_id = parameters.quiz_version_id,
1981
+ _parameters$quizVersi3 = parameters.quizVersionId,
1982
+ quizVersionId = _parameters$quizVersi3 === void 0 ? quiz_version_id : _parameters$quizVersi3,
1983
+ quiz_session_id = parameters.quiz_session_id,
1984
+ _parameters$quizSessi3 = parameters.quizSessionId,
1985
+ quizSessionId = _parameters$quizSessi3 === void 0 ? quiz_session_id : _parameters$quizSessi3,
1986
+ item_id = parameters.item_id,
1987
+ _parameters$itemId10 = parameters.itemId,
1988
+ itemId = _parameters$itemId10 === void 0 ? item_id : _parameters$itemId10,
1989
+ item_name = parameters.item_name,
1990
+ _parameters$itemName9 = parameters.itemName,
1991
+ itemName = _parameters$itemName9 === void 0 ? item_name : _parameters$itemName9,
1992
+ variation_id = parameters.variation_id,
1993
+ _parameters$variation9 = parameters.variationId,
1994
+ variationId = _parameters$variation9 === void 0 ? variation_id : _parameters$variation9,
1995
+ revenue = parameters.revenue,
1996
+ _parameters$section9 = parameters.section,
1997
+ section = _parameters$section9 === void 0 ? 'Products' : _parameters$section9,
1998
+ type = parameters.type,
1999
+ is_custom_type = parameters.is_custom_type,
2000
+ _parameters$isCustomT2 = parameters.isCustomType,
2001
+ isCustomType = _parameters$isCustomT2 === void 0 ? is_custom_type : _parameters$isCustomT2,
2002
+ display_name = parameters.display_name,
2003
+ _parameters$displayNa4 = parameters.displayName,
2004
+ displayName = _parameters$displayNa4 === void 0 ? display_name : _parameters$displayNa4;
2206
2005
  var queryParams = {};
2207
- var bodyParams = {}; // Ensure required parameters provided
2006
+ var bodyParams = {};
2208
2007
 
2008
+ // Ensure required parameters provided
2209
2009
  if (typeof quizId !== 'string') {
2210
2010
  return new Error('"quizId" is a required parameter of type string');
2211
2011
  }
2212
-
2213
2012
  if (typeof quizVersionId !== 'string') {
2214
2013
  return new Error('"quizVersionId" is a required parameter of type string');
2215
2014
  }
2216
-
2217
2015
  if (typeof quizSessionId !== 'string') {
2218
2016
  return new Error('"quizSessionId" is a required parameter of type string');
2219
2017
  }
2220
-
2221
2018
  if (typeof itemId !== 'string' && typeof itemName !== 'string') {
2222
2019
  return new Error('"itemId" or "itemName" is a required parameter of type string');
2223
2020
  }
2224
-
2225
2021
  bodyParams.quiz_id = quizId;
2226
2022
  bodyParams.quiz_version_id = quizVersionId;
2227
2023
  bodyParams.quiz_session_id = quizSessionId;
2228
-
2229
2024
  if (!helpers.isNil(itemId)) {
2230
2025
  if (typeof itemId !== 'string') {
2231
2026
  return new Error('"itemId" must be a string');
2232
2027
  }
2233
-
2234
2028
  bodyParams.item_id = itemId;
2235
2029
  }
2236
-
2237
2030
  if (!helpers.isNil(itemName)) {
2238
2031
  if (typeof itemName !== 'string') {
2239
2032
  return new Error('"itemName" must be a string');
2240
2033
  }
2241
-
2242
2034
  bodyParams.item_name = itemName;
2243
2035
  }
2244
-
2245
2036
  if (!helpers.isNil(variationId)) {
2246
2037
  if (typeof variationId !== 'string') {
2247
2038
  return new Error('"variationId" must be a string');
2248
2039
  }
2249
-
2250
2040
  bodyParams.variation_id = variationId;
2251
2041
  }
2252
-
2253
2042
  if (!helpers.isNil(revenue)) {
2254
2043
  if (typeof revenue !== 'string') {
2255
2044
  return new Error('"revenue" must be a string');
2256
2045
  }
2257
-
2258
2046
  bodyParams.revenue = revenue;
2259
2047
  }
2260
-
2261
2048
  if (!helpers.isNil(section)) {
2262
2049
  if (typeof section !== 'string') {
2263
2050
  return new Error('"section" must be a string');
2264
2051
  }
2265
-
2266
2052
  bodyParams.section = section;
2267
2053
  }
2268
-
2269
2054
  if (!helpers.isNil(type)) {
2270
2055
  if (typeof type !== 'string') {
2271
2056
  return new Error('"type" must be a string');
2272
2057
  }
2273
-
2274
2058
  bodyParams.type = type;
2275
2059
  }
2276
-
2277
2060
  if (!helpers.isNil(isCustomType)) {
2278
2061
  if (typeof isCustomType !== 'boolean') {
2279
2062
  return new Error('"isCustomType" must be a boolean');
2280
2063
  }
2281
-
2282
2064
  bodyParams.is_custom_type = isCustomType;
2283
2065
  }
2284
-
2285
2066
  if (!helpers.isNil(displayName)) {
2286
2067
  if (typeof displayName !== 'string') {
2287
2068
  return new Error('"displayName" must be a string');
2288
2069
  }
2289
-
2290
2070
  bodyParams.display_name = displayName;
2291
2071
  }
2292
-
2293
2072
  var requestURL = "".concat(requestPath).concat(applyParamsAsString(queryParams, this.options));
2294
2073
  var requestMethod = 'POST';
2295
2074
  var requestBody = applyParams(bodyParams, _objectSpread(_objectSpread({}, this.options), {}, {
@@ -2299,10 +2078,10 @@ var Tracker = /*#__PURE__*/function () {
2299
2078
  this.requests.send();
2300
2079
  return true;
2301
2080
  }
2302
-
2303
2081
  this.requests.send();
2304
2082
  return new Error('parameters are required of type object');
2305
2083
  }
2084
+
2306
2085
  /**
2307
2086
  * Subscribe to success or error messages emitted by tracking requests
2308
2087
  *
@@ -2315,25 +2094,20 @@ var Tracker = /*#__PURE__*/function () {
2315
2094
  * // Handle tracking error
2316
2095
  * });
2317
2096
  */
2318
-
2319
2097
  }, {
2320
2098
  key: "on",
2321
2099
  value: function on(messageType, callback) {
2322
2100
  if (messageType !== 'success' && messageType !== 'error') {
2323
2101
  return new Error('messageType must be a string of value "success" or "error"');
2324
2102
  }
2325
-
2326
2103
  if (!callback || typeof callback !== 'function') {
2327
2104
  return new Error('callback is required and must be a function');
2328
2105
  }
2329
-
2330
2106
  this.eventemitter.on(messageType, callback);
2331
2107
  return true;
2332
2108
  }
2333
2109
  }]);
2334
2110
  return Tracker;
2335
2111
  }(); // Exposed for testing
2336
-
2337
-
2338
2112
  Tracker.RequestQueue = RequestQueue;
2339
2113
  module.exports = Tracker;