@constructor-io/constructorio-client-javascript 2.42.3 → 2.43.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,8 +1,8 @@
1
1
  "use strict";
2
2
 
3
3
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
- var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
5
4
  var _typeof2 = _interopRequireDefault(require("@babel/runtime/helpers/typeof"));
5
+ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
6
6
  var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
7
7
  var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
8
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; }
@@ -131,7 +131,9 @@ var Tracker = /*#__PURE__*/function () {
131
131
  * Send input focus event to API
132
132
  * @private
133
133
  * @function trackInputFocusV2
134
- * @param {string} userInput - Input at the time user focused on the search bar
134
+ * @param {string} userInput - The current autocomplete search query
135
+ * @param {object} parameters - Additional parameters to be sent with request
136
+ * @param {object} [parameters.analyticsTags] - Pass additional analytics data
135
137
  * @param {object} [networkParameters] - Parameters relevant to the network request
136
138
  * @param {number} [networkParameters.timeout] - Request timeout (in milliseconds)
137
139
  * @returns {(true|Error)}
@@ -143,21 +145,21 @@ var Tracker = /*#__PURE__*/function () {
143
145
  key: "trackInputFocusV2",
144
146
  value: function trackInputFocusV2() {
145
147
  var userInput = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : '';
146
- var networkParameters = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
148
+ var parameters = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
149
+ var networkParameters = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
147
150
  var baseUrl = "".concat(this.behavioralV2Url, "focus?");
148
151
  var bodyParams = {};
149
- var networkParametersNew = networkParameters;
150
- var userInputNew = userInput;
151
- if ((0, _typeof2["default"])(userInput) === 'object') {
152
- networkParametersNew = userInput;
153
- userInputNew = '';
152
+ var _parameters$analytics = parameters.analyticsTags,
153
+ analyticsTags = _parameters$analytics === void 0 ? null : _parameters$analytics;
154
+ if (analyticsTags) {
155
+ bodyParams.analytics_tags = analyticsTags;
154
156
  }
155
- bodyParams.user_input = userInputNew;
157
+ bodyParams.user_input = userInput;
156
158
  var requestMethod = 'POST';
157
159
  var requestBody = applyParams(bodyParams, _objectSpread(_objectSpread({}, this.options), {}, {
158
160
  requestMethod: requestMethod
159
161
  }));
160
- this.requests.queue("".concat(baseUrl).concat(applyParamsAsString({}, this.options)), requestMethod, requestBody, networkParametersNew);
162
+ this.requests.queue("".concat(baseUrl).concat(applyParamsAsString({}, this.options)), requestMethod, requestBody, networkParameters);
161
163
  this.requests.send();
162
164
  return true;
163
165
  }
@@ -194,6 +196,7 @@ var Tracker = /*#__PURE__*/function () {
194
196
  * @param {string} parameters.itemName - Product item name
195
197
  * @param {string} parameters.itemId - Product item unique identifier
196
198
  * @param {string} parameters.url - Current page URL
199
+ * @param {object} [parameters.analyticsTags] - Pass additional analytics data
197
200
  * @param {string} [parameters.variationId] - Product item variation unique identifier
198
201
  * @param {object} [networkParameters] - Parameters relevant to the network request
199
202
  * @param {number} [networkParameters.timeout] - Request timeout (in milliseconds)
@@ -230,7 +233,8 @@ var Tracker = /*#__PURE__*/function () {
230
233
  itemId = _parameters$itemId === void 0 ? item_id || customerId : _parameters$itemId,
231
234
  _parameters$variation = parameters.variationId,
232
235
  variationId = _parameters$variation === void 0 ? variation_id : _parameters$variation,
233
- url = parameters.url;
236
+ url = parameters.url,
237
+ analyticsTags = parameters.analyticsTags;
234
238
 
235
239
  // Ensure support for both item_name and name as parameters
236
240
  if (itemName) {
@@ -244,6 +248,9 @@ var Tracker = /*#__PURE__*/function () {
244
248
  if (variationId) {
245
249
  bodyParams.variation_id = variationId;
246
250
  }
251
+ if (analyticsTags) {
252
+ bodyParams.analytics_tags = analyticsTags;
253
+ }
247
254
  if (url) {
248
255
  bodyParams.url = url;
249
256
  }
@@ -1051,6 +1058,7 @@ var Tracker = /*#__PURE__*/function () {
1051
1058
  * @param {number} parameters.revenue - The subtotal (excluding taxes, shipping, etc.) of the entire order
1052
1059
  * @param {string} [parameters.orderId] - Unique order identifier
1053
1060
  * @param {string} [parameters.section="Products"] - Index section
1061
+ * @param {object} [parameters.analyticsTags] - Pass additional analytics data
1054
1062
  * @param {object} [networkParameters] - Parameters relevant to the network request
1055
1063
  * @param {number} [networkParameters.timeout] - Request timeout (in milliseconds)
1056
1064
  * @returns {(true|Error)}
@@ -1079,7 +1087,8 @@ var Tracker = /*#__PURE__*/function () {
1079
1087
  order_id = parameters.order_id,
1080
1088
  _parameters$orderId = parameters.orderId,
1081
1089
  orderId = _parameters$orderId === void 0 ? order_id : _parameters$orderId,
1082
- section = parameters.section;
1090
+ section = parameters.section,
1091
+ analyticsTags = parameters.analyticsTags;
1083
1092
  if (orderId) {
1084
1093
  // Don't send another purchase event if we have already tracked the order
1085
1094
  if (helpers.hasOrderIdRecord(orderId)) {
@@ -1103,6 +1112,9 @@ var Tracker = /*#__PURE__*/function () {
1103
1112
  } else {
1104
1113
  queryParams.section = 'Products';
1105
1114
  }
1115
+ if (analyticsTags) {
1116
+ bodyParams.analytics_tags = analyticsTags;
1117
+ }
1106
1118
  var requestURL = "".concat(requestPath).concat(applyParamsAsString(queryParams, this.options));
1107
1119
  var requestMethod = 'POST';
1108
1120
  var requestBody = applyParams(bodyParams, _objectSpread(_objectSpread({}, this.options), {}, {
@@ -1129,6 +1141,7 @@ var Tracker = /*#__PURE__*/function () {
1129
1141
  * @param {number} [parameters.resultPage] - Page number of results
1130
1142
  * @param {string} [parameters.resultId] - Recommendation result identifier (returned in response from Constructor)
1131
1143
  * @param {string} [parameters.section="Products"] - Results section
1144
+ * @param {object} [parameters.analyticsTags] - Pass additional analytics data
1132
1145
  * @param {object} [networkParameters] - Parameters relevant to the network request
1133
1146
  * @param {number} [networkParameters.timeout] - Request timeout (in milliseconds)
1134
1147
  * @returns {(true|Error)}
@@ -1171,7 +1184,8 @@ var Tracker = /*#__PURE__*/function () {
1171
1184
  num_results_viewed = parameters.num_results_viewed,
1172
1185
  _parameters$numResult4 = parameters.numResultsViewed,
1173
1186
  numResultsViewed = _parameters$numResult4 === void 0 ? num_results_viewed : _parameters$numResult4,
1174
- items = parameters.items;
1187
+ items = parameters.items,
1188
+ analyticsTags = parameters.analyticsTags;
1175
1189
  if (!helpers.isNil(resultCount)) {
1176
1190
  bodyParams.result_count = resultCount;
1177
1191
  }
@@ -1200,6 +1214,9 @@ var Tracker = /*#__PURE__*/function () {
1200
1214
  return helpers.toSnakeCaseKeys(item, false);
1201
1215
  });
1202
1216
  }
1217
+ if (analyticsTags) {
1218
+ bodyParams.analytics_tags = analyticsTags;
1219
+ }
1203
1220
  var requestURL = "".concat(requestPath).concat(applyParamsAsString({}, this.options));
1204
1221
  var requestMethod = 'POST';
1205
1222
  var requestBody = applyParams(bodyParams, _objectSpread(_objectSpread({}, this.options), {}, {
@@ -1229,6 +1246,7 @@ var Tracker = /*#__PURE__*/function () {
1229
1246
  * @param {number} [parameters.resultPage] - Page number of results
1230
1247
  * @param {number} [parameters.resultPositionOnPage] - Position of result on page
1231
1248
  * @param {number} [parameters.numResultsPerPage] - Number of results on page
1249
+ * @param {object} [parameters.analyticsTags] - Pass additional analytics data
1232
1250
  * @param {object} [networkParameters] - Parameters relevant to the network request
1233
1251
  * @param {number} [networkParameters.timeout] - Request timeout (in milliseconds)
1234
1252
  * @returns {(true|Error)}
@@ -1288,7 +1306,8 @@ var Tracker = /*#__PURE__*/function () {
1288
1306
  itemId = _parameters$itemId6 === void 0 ? item_id : _parameters$itemId6,
1289
1307
  item_name = parameters.item_name,
1290
1308
  _parameters$itemName5 = parameters.itemName,
1291
- itemName = _parameters$itemName5 === void 0 ? item_name : _parameters$itemName5;
1309
+ itemName = _parameters$itemName5 === void 0 ? item_name : _parameters$itemName5,
1310
+ analyticsTags = parameters.analyticsTags;
1292
1311
  if (variationId) {
1293
1312
  bodyParams.variation_id = variationId;
1294
1313
  }
@@ -1322,6 +1341,9 @@ var Tracker = /*#__PURE__*/function () {
1322
1341
  if (itemName) {
1323
1342
  bodyParams.item_name = itemName;
1324
1343
  }
1344
+ if (analyticsTags) {
1345
+ bodyParams.analytics_tags = analyticsTags;
1346
+ }
1325
1347
  var requestURL = "".concat(requestPath).concat(applyParamsAsString({}, this.options));
1326
1348
  var requestMethod = 'POST';
1327
1349
  var requestBody = applyParams(bodyParams, _objectSpread(_objectSpread({}, this.options), {}, {
@@ -1351,6 +1373,7 @@ var Tracker = /*#__PURE__*/function () {
1351
1373
  * @param {object} [parameters.selectedFilters] - Selected filters
1352
1374
  * @param {string} [parameters.sortOrder] - Sort order ('ascending' or 'descending')
1353
1375
  * @param {string} [parameters.sortBy] - Sorting method
1376
+ * @param {object} [parameters.analyticsTags] - Pass additional analytics data
1354
1377
  * @param {object} [networkParameters] - Parameters relevant to the network request
1355
1378
  * @param {number} [networkParameters.timeout] - Request timeout (in milliseconds)
1356
1379
  * @returns {(true|Error)}
@@ -1406,7 +1429,8 @@ var Tracker = /*#__PURE__*/function () {
1406
1429
  filter_value = parameters.filter_value,
1407
1430
  _parameters$filterVal = parameters.filterValue,
1408
1431
  filterValue = _parameters$filterVal === void 0 ? filter_value : _parameters$filterVal,
1409
- items = parameters.items;
1432
+ items = parameters.items,
1433
+ analyticsTags = parameters.analyticsTags;
1410
1434
  if (section) {
1411
1435
  bodyParams.section = section;
1412
1436
  }
@@ -1442,6 +1466,9 @@ var Tracker = /*#__PURE__*/function () {
1442
1466
  return helpers.toSnakeCaseKeys(item, false);
1443
1467
  });
1444
1468
  }
1469
+ if (analyticsTags) {
1470
+ bodyParams.analytics_tags = analyticsTags;
1471
+ }
1445
1472
  var requestURL = "".concat(requestPath).concat(applyParamsAsString({}, this.options));
1446
1473
  var requestMethod = 'POST';
1447
1474
  var requestBody = applyParams(bodyParams, _objectSpread(_objectSpread({}, this.options), {}, {
@@ -1472,6 +1499,7 @@ var Tracker = /*#__PURE__*/function () {
1472
1499
  * @param {number} [parameters.resultPositionOnPage] - Position of clicked item
1473
1500
  * @param {number} [parameters.numResultsPerPage] - Number of results shown
1474
1501
  * @param {object} [parameters.selectedFilters] - Selected filters
1502
+ * @param {object} [parameters.analyticsTags] - Pass additional analytics data
1475
1503
  * @param {object} [networkParameters] - Parameters relevant to the network request
1476
1504
  * @param {number} [networkParameters.timeout] - Request timeout (in milliseconds)
1477
1505
  * @returns {(true|Error)}
@@ -1538,7 +1566,8 @@ var Tracker = /*#__PURE__*/function () {
1538
1566
  item_name = parameters.item_name,
1539
1567
  name = parameters.name,
1540
1568
  _parameters$itemName6 = parameters.itemName,
1541
- itemName = _parameters$itemName6 === void 0 ? item_name || name : _parameters$itemName6;
1569
+ itemName = _parameters$itemName6 === void 0 ? item_name || name : _parameters$itemName6,
1570
+ analyticsTags = parameters.analyticsTags;
1542
1571
  if (section) {
1543
1572
  bodyParams.section = section;
1544
1573
  }
@@ -1577,6 +1606,9 @@ var Tracker = /*#__PURE__*/function () {
1577
1606
  if (itemName) {
1578
1607
  bodyParams.item_name = itemName;
1579
1608
  }
1609
+ if (analyticsTags) {
1610
+ bodyParams.analytics_tags = analyticsTags;
1611
+ }
1580
1612
  var requestURL = "".concat(requestPath).concat(applyParamsAsString({}, this.options));
1581
1613
  var requestMethod = 'POST';
1582
1614
  var requestBody = applyParams(bodyParams, _objectSpread(_objectSpread({}, this.options), {}, {
@@ -1599,6 +1631,7 @@ var Tracker = /*#__PURE__*/function () {
1599
1631
  * @param {string} [parameters.itemName] - Product item name
1600
1632
  * @param {string} [parameters.variationId] - Product item variation unique identifier
1601
1633
  * @param {string} [parameters.section="Products"] - Index section
1634
+ * @param {object} [parameters.analyticsTags] - Pass additional analytics data
1602
1635
  * @param {object} [networkParameters] - Parameters relevant to the network request
1603
1636
  * @param {number} [networkParameters.timeout] - Request timeout (in milliseconds)
1604
1637
  * @returns {(true|Error)}
@@ -1630,7 +1663,8 @@ var Tracker = /*#__PURE__*/function () {
1630
1663
  _parameters$variation8 = parameters.variationId,
1631
1664
  variationId = _parameters$variation8 === void 0 ? variation_id : _parameters$variation8,
1632
1665
  _parameters$section6 = parameters.section,
1633
- section = _parameters$section6 === void 0 ? 'Products' : _parameters$section6;
1666
+ section = _parameters$section6 === void 0 ? 'Products' : _parameters$section6,
1667
+ analyticsTags = parameters.analyticsTags;
1634
1668
  if (itemId) {
1635
1669
  bodyParams.section = section;
1636
1670
  bodyParams.item_id = itemId;
@@ -1640,6 +1674,9 @@ var Tracker = /*#__PURE__*/function () {
1640
1674
  if (variationId) {
1641
1675
  bodyParams.variation_id = variationId;
1642
1676
  }
1677
+ if (analyticsTags) {
1678
+ bodyParams.analytics_tags = analyticsTags;
1679
+ }
1643
1680
  var requestURL = "".concat(requestPath).concat(applyParamsAsString({}, this.options));
1644
1681
  var requestMethod = 'POST';
1645
1682
  var requestBody = applyParams(bodyParams, _objectSpread(_objectSpread({}, this.options), {}, {
@@ -17,12 +17,21 @@ declare class Tracker {
17
17
 
18
18
  trackInputFocus(networkParameters?: NetworkParameters): true | Error;
19
19
 
20
+ trackInputFocusV2(
21
+ parameters: {
22
+ userInput: string;
23
+ analyticsTags?: Record<string, string>;
24
+ },
25
+ networkParameters?: NetworkParameters,
26
+ ): true | Error;
27
+
20
28
  trackItemDetailLoad(
21
29
  parameters: {
22
30
  itemName: string;
23
31
  itemId: string;
24
32
  url: string;
25
33
  variationId?: string;
34
+ analyticsTags?: Record<string, string>;
26
35
  },
27
36
  networkParameters?: NetworkParameters
28
37
  ): true | Error;
@@ -109,6 +118,7 @@ declare class Tracker {
109
118
  revenue: number;
110
119
  orderId?: string;
111
120
  section?: string;
121
+ analyticsTags?: Record<string, string>;
112
122
  },
113
123
  networkParameters?: NetworkParameters
114
124
  ): true | Error;
@@ -123,6 +133,7 @@ declare class Tracker {
123
133
  resultPage?: number;
124
134
  resultId?: string;
125
135
  section?: string;
136
+ analyticsTags?: Record<string, string>;
126
137
  },
127
138
  networkParameters?: NetworkParameters
128
139
  ): true | Error;
@@ -140,6 +151,7 @@ declare class Tracker {
140
151
  resultPage?: number;
141
152
  resultPositionOnPage?: number;
142
153
  numResultsPerPage?: number;
154
+ analyticsTags?: Record<string, string>;
143
155
  },
144
156
  networkParameters?: NetworkParameters
145
157
  ): true | Error;
@@ -157,6 +169,7 @@ declare class Tracker {
157
169
  sortOrder?: string;
158
170
  sortBy?: string;
159
171
  items: ItemTracked[];
172
+ analyticsTags?: Record<string, string>;
160
173
  },
161
174
  networkParameters?: NetworkParameters
162
175
  ): true | Error;
@@ -174,6 +187,7 @@ declare class Tracker {
174
187
  resultPositionOnPage?: number;
175
188
  numResultsPerPage?: number;
176
189
  selectedFilters?: object;
190
+ analyticsTags?: Record<string, string>;
177
191
  },
178
192
  networkParameters?: NetworkParameters
179
193
  ): true | Error;
@@ -184,6 +198,7 @@ declare class Tracker {
184
198
  itemName?: string;
185
199
  variationId?: string;
186
200
  section?: string;
201
+ analyticsTags?: Record<string, string>;
187
202
  },
188
203
  networkParameters?: NetworkParameters
189
204
  ): true | Error;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@constructor-io/constructorio-client-javascript",
3
- "version": "2.42.3",
3
+ "version": "2.43.0",
4
4
  "description": "Constructor.io JavaScript client",
5
5
  "main": "lib/constructorio.js",
6
6
  "types": "lib/types/index.d.ts",