@constructor-io/constructorio-client-javascript 2.27.9 → 2.27.12
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/modules/browse.js +5 -0
- package/lib/modules/tracker.js +71 -1
- package/package.json +1 -1
package/lib/modules/browse.js
CHANGED
|
@@ -226,6 +226,7 @@ var Browse = /*#__PURE__*/function () {
|
|
|
226
226
|
* @param {object} [parameters.filters] - Key / value mapping (dictionary) of filters used to refine results
|
|
227
227
|
* @param {string} [parameters.sortBy='relevance'] - The sort method for results
|
|
228
228
|
* @param {string} [parameters.sortOrder='descending'] - The sort order for results
|
|
229
|
+
* @param {string} [parameters.section='Products'] - The section name for results
|
|
229
230
|
* @param {object} [parameters.fmtOptions] - The format options used to refine result groups
|
|
230
231
|
* @param {string[]} [parameters.hiddenFields] - Hidden metadata fields to return
|
|
231
232
|
* @param {string[]} [parameters.hiddenFacets] - Hidden facets to return
|
|
@@ -305,6 +306,7 @@ var Browse = /*#__PURE__*/function () {
|
|
|
305
306
|
* @param {object} [parameters.filters] - Filters used to refine results
|
|
306
307
|
* @param {string} [parameters.sortBy='relevance'] - The sort method for results
|
|
307
308
|
* @param {string} [parameters.sortOrder='descending'] - The sort order for results
|
|
309
|
+
* @param {string} [parameters.section='Products'] - The section name for results
|
|
308
310
|
* @param {object} [parameters.fmtOptions] - The format options used to refine result groups
|
|
309
311
|
* @param {string[]} [parameters.hiddenFields] - Hidden metadata fields to return
|
|
310
312
|
* @param {string[]} [parameters.hiddenFacets] - Hidden facets to return
|
|
@@ -376,6 +378,7 @@ var Browse = /*#__PURE__*/function () {
|
|
|
376
378
|
*
|
|
377
379
|
* @function getBrowseGroups
|
|
378
380
|
* @param {object} [parameters.filters] - Filters used to refine results
|
|
381
|
+
* @param {string} [parameters.section='Products'] - The section name for results
|
|
379
382
|
* @param {object} [parameters.fmtOptions] - The format options used to refine result groups
|
|
380
383
|
* @param {object} [networkParameters] - Parameters relevant to the network request
|
|
381
384
|
* @param {number} [networkParameters.timeout] - Request timeout (in milliseconds)
|
|
@@ -441,6 +444,7 @@ var Browse = /*#__PURE__*/function () {
|
|
|
441
444
|
* @function getBrowseFacets
|
|
442
445
|
* @param {object} [parameters] - Additional parameters to refine result set
|
|
443
446
|
* @param {number} [parameters.page] - The page number of the results
|
|
447
|
+
* @param {string} [parameters.section='Products'] - The section name for results
|
|
444
448
|
* @param {boolean} [parameters.fmtOptions.show_hidden_facets] - Include facets configured as hidden
|
|
445
449
|
* @param {number} [parameters.resultsPerPage] - The number of results per page to return
|
|
446
450
|
* @param {object} [networkParameters] - Parameters relevant to the network request
|
|
@@ -504,6 +508,7 @@ var Browse = /*#__PURE__*/function () {
|
|
|
504
508
|
* @param {object} [networkParameters] - Parameters relevant to the network request
|
|
505
509
|
* @param {number} [networkParameters.timeout] - Request timeout (in milliseconds)
|
|
506
510
|
* @param {object} [parameters] - Additional parameters to refine result set
|
|
511
|
+
* @param {string} [parameters.section='Products'] - The section name for results
|
|
507
512
|
* @param {object} [parameters.fmtOptions] - The format options used to refine result groups
|
|
508
513
|
* @param {boolean} [parameters.fmtOptions.show_hidden_facets] - Include facets configured as hidden
|
|
509
514
|
* @param {}
|
package/lib/modules/tracker.js
CHANGED
|
@@ -159,6 +159,69 @@ var Tracker = /*#__PURE__*/function () {
|
|
|
159
159
|
this.requests.send();
|
|
160
160
|
return true;
|
|
161
161
|
}
|
|
162
|
+
/**
|
|
163
|
+
* Send item detail load event to API
|
|
164
|
+
*
|
|
165
|
+
* @function trackItemDetailLoad
|
|
166
|
+
* @param {object} parameters - Additional parameters to be sent with request
|
|
167
|
+
* @param {string} parameters.item_name - Product item name
|
|
168
|
+
* @param {string} parameters.item_id - Product item unique identifier
|
|
169
|
+
* @param {string} [parameters.variation_id] - Product item variation unique identifier
|
|
170
|
+
* @param {object} [networkParameters] - Parameters relevant to the network request
|
|
171
|
+
* @param {number} [networkParameters.timeout] - Request timeout (in milliseconds)
|
|
172
|
+
* @returns {(true|Error)}
|
|
173
|
+
* @description User loaded an item detail page
|
|
174
|
+
* @example
|
|
175
|
+
* constructorio.tracker.trackItemDetailLoad(
|
|
176
|
+
* {
|
|
177
|
+
* item_name: 'Red T-Shirt',
|
|
178
|
+
* item_id: 'KMH876',
|
|
179
|
+
* },
|
|
180
|
+
* );
|
|
181
|
+
*/
|
|
182
|
+
|
|
183
|
+
}, {
|
|
184
|
+
key: "trackItemDetailLoad",
|
|
185
|
+
value: function trackItemDetailLoad(parameters) {
|
|
186
|
+
var networkParameters = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
|
|
187
|
+
|
|
188
|
+
// Ensure parameters are provided (required)
|
|
189
|
+
if (parameters && (0, _typeof2["default"])(parameters) === 'object' && !Array.isArray(parameters)) {
|
|
190
|
+
var url = "".concat(this.options.serviceUrl, "/behavior?");
|
|
191
|
+
var queryParams = {
|
|
192
|
+
action: 'item_detail_load'
|
|
193
|
+
};
|
|
194
|
+
var item_name = parameters.item_name,
|
|
195
|
+
name = parameters.name,
|
|
196
|
+
item_id = parameters.item_id,
|
|
197
|
+
customer_id = parameters.customer_id,
|
|
198
|
+
variation_id = parameters.variation_id; // Ensure support for both item_name and name as parameters
|
|
199
|
+
|
|
200
|
+
if (item_name) {
|
|
201
|
+
queryParams.name = item_name;
|
|
202
|
+
} else if (name) {
|
|
203
|
+
queryParams.name = name;
|
|
204
|
+
} // Ensure support for both item_id and customer_id as parameters
|
|
205
|
+
|
|
206
|
+
|
|
207
|
+
if (item_id) {
|
|
208
|
+
queryParams.customer_id = item_id;
|
|
209
|
+
} else if (customer_id) {
|
|
210
|
+
queryParams.customer_id = customer_id;
|
|
211
|
+
}
|
|
212
|
+
|
|
213
|
+
if (variation_id) {
|
|
214
|
+
queryParams.variation_id = variation_id;
|
|
215
|
+
}
|
|
216
|
+
|
|
217
|
+
this.requests.queue("".concat(url).concat(applyParamsAsString(queryParams, this.options)), undefined, undefined, networkParameters);
|
|
218
|
+
this.requests.send();
|
|
219
|
+
return true;
|
|
220
|
+
}
|
|
221
|
+
|
|
222
|
+
this.requests.send();
|
|
223
|
+
return new Error('parameters are required of type object');
|
|
224
|
+
}
|
|
162
225
|
/**
|
|
163
226
|
* Send autocomplete select event to API
|
|
164
227
|
*
|
|
@@ -640,6 +703,7 @@ var Tracker = /*#__PURE__*/function () {
|
|
|
640
703
|
* @param {string} parameters.url - Current page URL
|
|
641
704
|
* @param {string} parameters.pod_id - Pod identifier
|
|
642
705
|
* @param {number} parameters.num_results_viewed - Number of results viewed
|
|
706
|
+
* @param {object[]} [parameters.items] - List of Product Item Objects
|
|
643
707
|
* @param {number} [parameters.result_count] - Total number of results
|
|
644
708
|
* @param {number} [parameters.result_page] - Page number of results
|
|
645
709
|
* @param {string} [parameters.result_id] - Recommendation result identifier (returned in response from Constructor)
|
|
@@ -651,6 +715,7 @@ var Tracker = /*#__PURE__*/function () {
|
|
|
651
715
|
* @example
|
|
652
716
|
* constructorio.tracker.trackRecommendationView(
|
|
653
717
|
* {
|
|
718
|
+
* items: [{ item_id: 'KMH876' }, { item_id: 'KMH140' }],
|
|
654
719
|
* result_count: 22,
|
|
655
720
|
* result_page: 2,
|
|
656
721
|
* result_id: '019927c2-f955-4020-8b8d-6b21b93cb5a2',
|
|
@@ -676,7 +741,8 @@ var Tracker = /*#__PURE__*/function () {
|
|
|
676
741
|
section = parameters.section,
|
|
677
742
|
url = parameters.url,
|
|
678
743
|
pod_id = parameters.pod_id,
|
|
679
|
-
num_results_viewed = parameters.num_results_viewed
|
|
744
|
+
num_results_viewed = parameters.num_results_viewed,
|
|
745
|
+
items = parameters.items;
|
|
680
746
|
|
|
681
747
|
if (!helpers.isNil(result_count)) {
|
|
682
748
|
bodyParams.result_count = result_count;
|
|
@@ -708,6 +774,10 @@ var Tracker = /*#__PURE__*/function () {
|
|
|
708
774
|
bodyParams.num_results_viewed = num_results_viewed;
|
|
709
775
|
}
|
|
710
776
|
|
|
777
|
+
if (items && Array.isArray(items)) {
|
|
778
|
+
bodyParams.items = items.slice(0, 100);
|
|
779
|
+
}
|
|
780
|
+
|
|
711
781
|
var requestURL = "".concat(requestPath).concat(applyParamsAsString({}, this.options));
|
|
712
782
|
var requestMethod = 'POST';
|
|
713
783
|
var requestBody = applyParams(bodyParams, _objectSpread(_objectSpread({}, this.options), {}, {
|