@searchspring/snap-controller 0.59.0 → 0.60.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.
- package/dist/cjs/Recommendation/RecommendationController.d.ts +2 -2
- package/dist/cjs/Recommendation/RecommendationController.d.ts.map +1 -1
- package/dist/cjs/Recommendation/RecommendationController.js +27 -23
- package/dist/esm/Recommendation/RecommendationController.d.ts +2 -2
- package/dist/esm/Recommendation/RecommendationController.d.ts.map +1 -1
- package/dist/esm/Recommendation/RecommendationController.js +14 -14
- package/package.json +10 -10
|
@@ -3,7 +3,7 @@ import { BeaconEvent } from '@searchspring/snap-tracker';
|
|
|
3
3
|
import { AbstractController } from '../Abstract/AbstractController';
|
|
4
4
|
import { ControllerTypes } from '../types';
|
|
5
5
|
import type { RecommendationStore } from '@searchspring/snap-store-mobx';
|
|
6
|
-
import type {
|
|
6
|
+
import type { RecommendRequestModel } from '@searchspring/snap-client';
|
|
7
7
|
import type { RecommendationControllerConfig, ControllerServices, ContextVariables } from '../types';
|
|
8
8
|
type RecommendationTrackMethods = {
|
|
9
9
|
product: {
|
|
@@ -33,7 +33,7 @@ export declare class RecommendationController extends AbstractController {
|
|
|
33
33
|
};
|
|
34
34
|
constructor(config: RecommendationControllerConfig, { client, store, urlManager, eventManager, profiler, logger, tracker }: ControllerServices, context?: ContextVariables);
|
|
35
35
|
track: RecommendationTrackMethods;
|
|
36
|
-
get params():
|
|
36
|
+
get params(): RecommendRequestModel;
|
|
37
37
|
search: () => Promise<void>;
|
|
38
38
|
}
|
|
39
39
|
export {};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"RecommendationController.d.ts","sourceRoot":"","sources":["../../../src/Recommendation/RecommendationController.ts"],"names":[],"mappings":"AAGA,OAAO,EAAa,OAAO,EAAE,MAAM,+BAA+B,CAAC;AACnE,OAAO,EAAE,WAAW,EAAE,MAAM,4BAA4B,CAAC;AACzD,OAAO,EAAE,kBAAkB,EAAE,MAAM,gCAAgC,CAAC;AACpE,OAAO,EAAE,eAAe,EAAE,MAAM,UAAU,CAAC;AAE3C,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,+BAA+B,CAAC;AAEzE,OAAO,KAAK,EAAE,
|
|
1
|
+
{"version":3,"file":"RecommendationController.d.ts","sourceRoot":"","sources":["../../../src/Recommendation/RecommendationController.ts"],"names":[],"mappings":"AAGA,OAAO,EAAa,OAAO,EAAE,MAAM,+BAA+B,CAAC;AACnE,OAAO,EAAE,WAAW,EAAE,MAAM,4BAA4B,CAAC;AACzD,OAAO,EAAE,kBAAkB,EAAE,MAAM,gCAAgC,CAAC;AACpE,OAAO,EAAE,eAAe,EAAE,MAAM,UAAU,CAAC;AAE3C,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,+BAA+B,CAAC;AAEzE,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,2BAA2B,CAAC;AACvE,OAAO,KAAK,EAAE,8BAA8B,EAAkC,kBAAkB,EAAE,gBAAgB,EAAE,MAAM,UAAU,CAAC;AAErI,KAAK,0BAA0B,GAAG;IACjC,OAAO,EAAE;QACR,KAAK,EAAE,CAAC,CAAC,EAAE,UAAU,EAAE,MAAM,EAAE,OAAO,KAAK,WAAW,GAAG,SAAS,CAAC;QACnE,MAAM,EAAE,CAAC,MAAM,EAAE,OAAO,KAAK,WAAW,GAAG,SAAS,CAAC;QACrD,UAAU,EAAE,CAAC,MAAM,EAAE,OAAO,KAAK,WAAW,GAAG,SAAS,CAAC;QACzD,iBAAiB,EAAE,CAAC,MAAM,EAAE,OAAO,KAAK,WAAW,GAAG,SAAS,CAAC;QAChE,aAAa,EAAE,CAAC,MAAM,EAAE,OAAO,KAAK,WAAW,GAAG,SAAS,CAAC;KAC5D,CAAC;IACF,KAAK,EAAE,CAAC,CAAC,EAAE,UAAU,KAAK,WAAW,GAAG,SAAS,CAAC;IAClD,SAAS,EAAE,CAAC,CAAC,EAAE,UAAU,EAAE,OAAO,EAAE,OAAO,EAAE,KAAK,WAAW,GAAG,SAAS,CAAC;IAC1E,UAAU,EAAE,MAAM,WAAW,GAAG,SAAS,CAAC;IAC1C,MAAM,EAAE,CAAC,OAAO,CAAC,EAAE,OAAO,EAAE,KAAK,WAAW,GAAG,SAAS,CAAC;CACzD,CAAC;AAUF,qBAAa,wBAAyB,SAAQ,kBAAkB;IACxD,IAAI,kBAAkC;IACrC,KAAK,EAAE,mBAAmB,CAAC;IAC3B,MAAM,EAAE,8BAA8B,CAAC;IAE/C,MAAM,EAAE;QACP,KAAK,CAAC,EAAE,WAAW,CAAC;QACpB,UAAU,CAAC,EAAE,WAAW,CAAC;QACzB,MAAM,CAAC,EAAE,WAAW,CAAC;QACrB,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE;YAAE,UAAU,CAAC,EAAE,WAAW,CAAC;YAAC,MAAM,CAAC,EAAE,WAAW,CAAA;SAAE,CAAC,CAAC;KAC7E,CAKC;gBAGD,MAAM,EAAE,8BAA8B,EACtC,EAAE,MAAM,EAAE,KAAK,EAAE,UAAU,EAAE,YAAY,EAAE,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,EAAE,kBAAkB,EAC1F,OAAO,CAAC,EAAE,gBAAgB;IA2C3B,KAAK,EAAE,0BAA0B,CAwS5B;IAEL,IAAI,MAAM,IAAI,qBAAqB,CA2BlC;IAED,MAAM,QAAa,QAAQ,IAAI,CAAC,CAuH9B;CACF"}
|
|
@@ -92,14 +92,15 @@ var RecommendationController = /** @class */ (function (_super) {
|
|
|
92
92
|
};
|
|
93
93
|
_this.track = (function () {
|
|
94
94
|
var getSeed = function () {
|
|
95
|
+
var _a, _b, _c, _d;
|
|
95
96
|
var skus = [];
|
|
96
97
|
switch (_this.store.profile.placement) {
|
|
97
98
|
case snap_tracker_1.ProfilePlacement.PRODUCTPAGE:
|
|
98
|
-
if (_this.config.globals.product) {
|
|
99
|
-
skus = [_this.config.globals.product];
|
|
99
|
+
if ((_a = _this.config.globals) === null || _a === void 0 ? void 0 : _a.product) {
|
|
100
|
+
skus = [(_b = _this.config.globals) === null || _b === void 0 ? void 0 : _b.product];
|
|
100
101
|
}
|
|
101
|
-
else if (_this.config.globals.products) {
|
|
102
|
-
skus = _this.config.globals.products;
|
|
102
|
+
else if ((_c = _this.config.globals) === null || _c === void 0 ? void 0 : _c.products) {
|
|
103
|
+
skus = (_d = _this.config.globals) === null || _d === void 0 ? void 0 : _d.products;
|
|
103
104
|
}
|
|
104
105
|
break;
|
|
105
106
|
case snap_tracker_1.ProfilePlacement.BASKETPAGE:
|
|
@@ -117,7 +118,7 @@ var RecommendationController = /** @class */ (function (_super) {
|
|
|
117
118
|
return {
|
|
118
119
|
product: {
|
|
119
120
|
click: function (e, result) {
|
|
120
|
-
var _a;
|
|
121
|
+
var _a, _b, _c;
|
|
121
122
|
if (!_this.store.profile.tag || !result)
|
|
122
123
|
return;
|
|
123
124
|
//set the profile click every time
|
|
@@ -125,7 +126,7 @@ var RecommendationController = /** @class */ (function (_super) {
|
|
|
125
126
|
var payload = {
|
|
126
127
|
type: snap_tracker_1.BeaconType.PROFILE_PRODUCT_CLICK,
|
|
127
128
|
category: snap_tracker_1.BeaconCategory.RECOMMENDATIONS,
|
|
128
|
-
context: _this.config.globals.siteId ? { website: { trackingCode: _this.config.globals.siteId } } : undefined,
|
|
129
|
+
context: ((_a = _this.config.globals) === null || _a === void 0 ? void 0 : _a.siteId) ? { website: { trackingCode: (_b = _this.config.globals) === null || _b === void 0 ? void 0 : _b.siteId } } : undefined,
|
|
129
130
|
event: {
|
|
130
131
|
context: {
|
|
131
132
|
action: 'navigate',
|
|
@@ -141,20 +142,20 @@ var RecommendationController = /** @class */ (function (_super) {
|
|
|
141
142
|
seed: getSeed(),
|
|
142
143
|
},
|
|
143
144
|
},
|
|
144
|
-
pid: (
|
|
145
|
+
pid: (_c = _this.events.click) === null || _c === void 0 ? void 0 : _c.id,
|
|
145
146
|
};
|
|
146
147
|
var event = _this.tracker.track.event(payload);
|
|
147
148
|
_this.eventManager.fire('track.product.click', { controller: _this, event: e, result: result, trackEvent: event });
|
|
148
149
|
return event;
|
|
149
150
|
},
|
|
150
151
|
impression: function (result) {
|
|
151
|
-
var _a;
|
|
152
|
+
var _a, _b, _c;
|
|
152
153
|
if (!_this.store.profile.tag || !result || !_this.events.impression || (_this.events.product && ((_a = _this.events.product[result.id]) === null || _a === void 0 ? void 0 : _a.impression)))
|
|
153
154
|
return;
|
|
154
155
|
var payload = {
|
|
155
156
|
type: snap_tracker_1.BeaconType.PROFILE_PRODUCT_IMPRESSION,
|
|
156
157
|
category: snap_tracker_1.BeaconCategory.RECOMMENDATIONS,
|
|
157
|
-
context: _this.config.globals.siteId ? { website: { trackingCode: _this.config.globals.siteId } } : undefined,
|
|
158
|
+
context: ((_b = _this.config.globals) === null || _b === void 0 ? void 0 : _b.siteId) ? { website: { trackingCode: (_c = _this.config.globals) === null || _c === void 0 ? void 0 : _c.siteId } } : undefined,
|
|
158
159
|
event: {
|
|
159
160
|
context: {
|
|
160
161
|
placement: _this.store.profile.placement,
|
|
@@ -177,13 +178,13 @@ var RecommendationController = /** @class */ (function (_super) {
|
|
|
177
178
|
return event;
|
|
178
179
|
},
|
|
179
180
|
render: function (result) {
|
|
180
|
-
var _a;
|
|
181
|
+
var _a, _b, _c;
|
|
181
182
|
if (!_this.store.profile.tag || !result || !_this.events.render || ((_a = _this.events.product[result.id]) === null || _a === void 0 ? void 0 : _a.render))
|
|
182
183
|
return;
|
|
183
184
|
var payload = {
|
|
184
185
|
type: snap_tracker_1.BeaconType.PROFILE_PRODUCT_RENDER,
|
|
185
186
|
category: snap_tracker_1.BeaconCategory.RECOMMENDATIONS,
|
|
186
|
-
context: _this.config.globals.siteId ? { website: { trackingCode: _this.config.globals.siteId } } : undefined,
|
|
187
|
+
context: ((_b = _this.config.globals) === null || _b === void 0 ? void 0 : _b.siteId) ? { website: { trackingCode: (_c = _this.config.globals) === null || _c === void 0 ? void 0 : _c.siteId } } : undefined,
|
|
187
188
|
event: {
|
|
188
189
|
context: {
|
|
189
190
|
placement: _this.store.profile.placement,
|
|
@@ -206,7 +207,7 @@ var RecommendationController = /** @class */ (function (_super) {
|
|
|
206
207
|
return event;
|
|
207
208
|
},
|
|
208
209
|
removedFromBundle: function (result) {
|
|
209
|
-
var _a, _b;
|
|
210
|
+
var _a, _b, _c, _d;
|
|
210
211
|
if (!_this.store.profile.tag ||
|
|
211
212
|
!result ||
|
|
212
213
|
!_this.events.render ||
|
|
@@ -216,7 +217,7 @@ var RecommendationController = /** @class */ (function (_super) {
|
|
|
216
217
|
var payload = {
|
|
217
218
|
type: snap_tracker_1.BeaconType.PROFILE_PRODUCT_REMOVEDFROMBUNDLE,
|
|
218
219
|
category: snap_tracker_1.BeaconCategory.RECOMMENDATIONS,
|
|
219
|
-
context: _this.config.globals.siteId ? { website: { trackingCode: _this.config.globals.siteId } } : undefined,
|
|
220
|
+
context: ((_b = _this.config.globals) === null || _b === void 0 ? void 0 : _b.siteId) ? { website: { trackingCode: (_c = _this.config.globals) === null || _c === void 0 ? void 0 : _c.siteId } } : undefined,
|
|
220
221
|
event: {
|
|
221
222
|
context: {
|
|
222
223
|
placement: _this.store.profile.placement,
|
|
@@ -231,7 +232,7 @@ var RecommendationController = /** @class */ (function (_super) {
|
|
|
231
232
|
seed: getSeed(),
|
|
232
233
|
},
|
|
233
234
|
},
|
|
234
|
-
pid: (
|
|
235
|
+
pid: (_d = _this.events.click) === null || _d === void 0 ? void 0 : _d.id,
|
|
235
236
|
};
|
|
236
237
|
_this.events.product[result.id] = _this.events.product[result.id] || {};
|
|
237
238
|
var event = (_this.events.product[result.id].render = _this.tracker.track.event(payload));
|
|
@@ -239,7 +240,7 @@ var RecommendationController = /** @class */ (function (_super) {
|
|
|
239
240
|
return event;
|
|
240
241
|
},
|
|
241
242
|
addedToBundle: function (result) {
|
|
242
|
-
var _a, _b;
|
|
243
|
+
var _a, _b, _c, _d;
|
|
243
244
|
if (!_this.store.profile.tag ||
|
|
244
245
|
!result ||
|
|
245
246
|
!_this.events.render ||
|
|
@@ -249,7 +250,7 @@ var RecommendationController = /** @class */ (function (_super) {
|
|
|
249
250
|
var payload = {
|
|
250
251
|
type: snap_tracker_1.BeaconType.PROFILE_PRODUCT_ADDEDTOBUNDLE,
|
|
251
252
|
category: snap_tracker_1.BeaconCategory.RECOMMENDATIONS,
|
|
252
|
-
context: _this.config.globals.siteId ? { website: { trackingCode: _this.config.globals.siteId } } : undefined,
|
|
253
|
+
context: ((_b = _this.config.globals) === null || _b === void 0 ? void 0 : _b.siteId) ? { website: { trackingCode: (_c = _this.config.globals) === null || _c === void 0 ? void 0 : _c.siteId } } : undefined,
|
|
253
254
|
event: {
|
|
254
255
|
context: {
|
|
255
256
|
placement: _this.store.profile.placement,
|
|
@@ -264,7 +265,7 @@ var RecommendationController = /** @class */ (function (_super) {
|
|
|
264
265
|
seed: getSeed(),
|
|
265
266
|
},
|
|
266
267
|
},
|
|
267
|
-
pid: (
|
|
268
|
+
pid: (_d = _this.events.click) === null || _d === void 0 ? void 0 : _d.id,
|
|
268
269
|
};
|
|
269
270
|
_this.events.product[result.id] = _this.events.product[result.id] || {};
|
|
270
271
|
var event = (_this.events.product[result.id].render = _this.tracker.track.event(payload));
|
|
@@ -273,12 +274,13 @@ var RecommendationController = /** @class */ (function (_super) {
|
|
|
273
274
|
},
|
|
274
275
|
},
|
|
275
276
|
addBundle: function (e, results) {
|
|
277
|
+
var _a, _b;
|
|
276
278
|
if (!results.length || !_this.store.profile.tag || _this.store.profile.type != 'bundle')
|
|
277
279
|
return;
|
|
278
280
|
var event = _this.tracker.track.event({
|
|
279
281
|
type: snap_tracker_1.BeaconType.PROFILE_ADDBUNDLE,
|
|
280
282
|
category: snap_tracker_1.BeaconCategory.RECOMMENDATIONS,
|
|
281
|
-
context: _this.config.globals.siteId ? { website: { trackingCode: _this.config.globals.siteId } } : undefined,
|
|
283
|
+
context: ((_a = _this.config.globals) === null || _a === void 0 ? void 0 : _a.siteId) ? { website: { trackingCode: (_b = _this.config.globals) === null || _b === void 0 ? void 0 : _b.siteId } } : undefined,
|
|
282
284
|
event: {
|
|
283
285
|
context: {
|
|
284
286
|
placement: _this.store.profile.placement,
|
|
@@ -305,12 +307,13 @@ var RecommendationController = /** @class */ (function (_super) {
|
|
|
305
307
|
return event;
|
|
306
308
|
},
|
|
307
309
|
click: function (e) {
|
|
310
|
+
var _a, _b;
|
|
308
311
|
if (!_this.store.profile.tag)
|
|
309
312
|
return;
|
|
310
313
|
var event = _this.tracker.track.event({
|
|
311
314
|
type: snap_tracker_1.BeaconType.PROFILE_CLICK,
|
|
312
315
|
category: snap_tracker_1.BeaconCategory.RECOMMENDATIONS,
|
|
313
|
-
context: _this.config.globals.siteId ? { website: { trackingCode: _this.config.globals.siteId } } : undefined,
|
|
316
|
+
context: ((_a = _this.config.globals) === null || _a === void 0 ? void 0 : _a.siteId) ? { website: { trackingCode: (_b = _this.config.globals) === null || _b === void 0 ? void 0 : _b.siteId } } : undefined,
|
|
314
317
|
event: {
|
|
315
318
|
context: {
|
|
316
319
|
action: 'navigate',
|
|
@@ -332,12 +335,13 @@ var RecommendationController = /** @class */ (function (_super) {
|
|
|
332
335
|
return event;
|
|
333
336
|
},
|
|
334
337
|
impression: function () {
|
|
338
|
+
var _a, _b;
|
|
335
339
|
if (!_this.store.profile.tag || _this.events.impression)
|
|
336
340
|
return;
|
|
337
341
|
var event = _this.tracker.track.event({
|
|
338
342
|
type: snap_tracker_1.BeaconType.PROFILE_IMPRESSION,
|
|
339
343
|
category: snap_tracker_1.BeaconCategory.RECOMMENDATIONS,
|
|
340
|
-
context: _this.config.globals.siteId ? { website: { trackingCode: _this.config.globals.siteId } } : undefined,
|
|
344
|
+
context: ((_a = _this.config.globals) === null || _a === void 0 ? void 0 : _a.siteId) ? { website: { trackingCode: (_b = _this.config.globals) === null || _b === void 0 ? void 0 : _b.siteId } } : undefined,
|
|
341
345
|
event: {
|
|
342
346
|
context: {
|
|
343
347
|
placement: _this.store.profile.placement,
|
|
@@ -358,12 +362,13 @@ var RecommendationController = /** @class */ (function (_super) {
|
|
|
358
362
|
return event;
|
|
359
363
|
},
|
|
360
364
|
render: function () {
|
|
365
|
+
var _a, _b;
|
|
361
366
|
if (!_this.store.profile.tag || _this.events.render)
|
|
362
367
|
return;
|
|
363
368
|
var event = _this.tracker.track.event({
|
|
364
369
|
type: snap_tracker_1.BeaconType.PROFILE_RENDER,
|
|
365
370
|
category: snap_tracker_1.BeaconCategory.RECOMMENDATIONS,
|
|
366
|
-
context: _this.config.globals.siteId ? { website: { trackingCode: _this.config.globals.siteId } } : undefined,
|
|
371
|
+
context: ((_a = _this.config.globals) === null || _a === void 0 ? void 0 : _a.siteId) ? { website: { trackingCode: (_b = _this.config.globals) === null || _b === void 0 ? void 0 : _b.siteId } } : undefined,
|
|
367
372
|
event: {
|
|
368
373
|
context: {
|
|
369
374
|
placement: _this.store.profile.placement,
|
|
@@ -584,8 +589,7 @@ var RecommendationController = /** @class */ (function (_super) {
|
|
|
584
589
|
}
|
|
585
590
|
Object.defineProperty(RecommendationController.prototype, "params", {
|
|
586
591
|
get: function () {
|
|
587
|
-
var
|
|
588
|
-
var params = __assign({ tag: this.config.tag, batched: this.config.batched, branch: this.config.branch || 'production', order: (_b = (_a = this.context) === null || _a === void 0 ? void 0 : _a.options) === null || _b === void 0 ? void 0 : _b.order }, this.config.globals);
|
|
592
|
+
var params = __assign({ tag: this.config.tag, batched: this.config.batched, branch: this.config.branch || 'production', batchId: this.config.batchId }, this.config.globals);
|
|
589
593
|
var shopperId = this.tracker.getContext().shopperId;
|
|
590
594
|
var cart = this.tracker.cookies.cart.get();
|
|
591
595
|
var lastViewed = this.tracker.cookies.viewed.get();
|
|
@@ -3,7 +3,7 @@ import { BeaconEvent } from '@searchspring/snap-tracker';
|
|
|
3
3
|
import { AbstractController } from '../Abstract/AbstractController';
|
|
4
4
|
import { ControllerTypes } from '../types';
|
|
5
5
|
import type { RecommendationStore } from '@searchspring/snap-store-mobx';
|
|
6
|
-
import type {
|
|
6
|
+
import type { RecommendRequestModel } from '@searchspring/snap-client';
|
|
7
7
|
import type { RecommendationControllerConfig, ControllerServices, ContextVariables } from '../types';
|
|
8
8
|
type RecommendationTrackMethods = {
|
|
9
9
|
product: {
|
|
@@ -33,7 +33,7 @@ export declare class RecommendationController extends AbstractController {
|
|
|
33
33
|
};
|
|
34
34
|
constructor(config: RecommendationControllerConfig, { client, store, urlManager, eventManager, profiler, logger, tracker }: ControllerServices, context?: ContextVariables);
|
|
35
35
|
track: RecommendationTrackMethods;
|
|
36
|
-
get params():
|
|
36
|
+
get params(): RecommendRequestModel;
|
|
37
37
|
search: () => Promise<void>;
|
|
38
38
|
}
|
|
39
39
|
export {};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"RecommendationController.d.ts","sourceRoot":"","sources":["../../../src/Recommendation/RecommendationController.ts"],"names":[],"mappings":"AAGA,OAAO,EAAa,OAAO,EAAE,MAAM,+BAA+B,CAAC;AACnE,OAAO,EAAE,WAAW,EAAE,MAAM,4BAA4B,CAAC;AACzD,OAAO,EAAE,kBAAkB,EAAE,MAAM,gCAAgC,CAAC;AACpE,OAAO,EAAE,eAAe,EAAE,MAAM,UAAU,CAAC;AAE3C,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,+BAA+B,CAAC;AAEzE,OAAO,KAAK,EAAE,
|
|
1
|
+
{"version":3,"file":"RecommendationController.d.ts","sourceRoot":"","sources":["../../../src/Recommendation/RecommendationController.ts"],"names":[],"mappings":"AAGA,OAAO,EAAa,OAAO,EAAE,MAAM,+BAA+B,CAAC;AACnE,OAAO,EAAE,WAAW,EAAE,MAAM,4BAA4B,CAAC;AACzD,OAAO,EAAE,kBAAkB,EAAE,MAAM,gCAAgC,CAAC;AACpE,OAAO,EAAE,eAAe,EAAE,MAAM,UAAU,CAAC;AAE3C,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,+BAA+B,CAAC;AAEzE,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,2BAA2B,CAAC;AACvE,OAAO,KAAK,EAAE,8BAA8B,EAAkC,kBAAkB,EAAE,gBAAgB,EAAE,MAAM,UAAU,CAAC;AAErI,KAAK,0BAA0B,GAAG;IACjC,OAAO,EAAE;QACR,KAAK,EAAE,CAAC,CAAC,EAAE,UAAU,EAAE,MAAM,EAAE,OAAO,KAAK,WAAW,GAAG,SAAS,CAAC;QACnE,MAAM,EAAE,CAAC,MAAM,EAAE,OAAO,KAAK,WAAW,GAAG,SAAS,CAAC;QACrD,UAAU,EAAE,CAAC,MAAM,EAAE,OAAO,KAAK,WAAW,GAAG,SAAS,CAAC;QACzD,iBAAiB,EAAE,CAAC,MAAM,EAAE,OAAO,KAAK,WAAW,GAAG,SAAS,CAAC;QAChE,aAAa,EAAE,CAAC,MAAM,EAAE,OAAO,KAAK,WAAW,GAAG,SAAS,CAAC;KAC5D,CAAC;IACF,KAAK,EAAE,CAAC,CAAC,EAAE,UAAU,KAAK,WAAW,GAAG,SAAS,CAAC;IAClD,SAAS,EAAE,CAAC,CAAC,EAAE,UAAU,EAAE,OAAO,EAAE,OAAO,EAAE,KAAK,WAAW,GAAG,SAAS,CAAC;IAC1E,UAAU,EAAE,MAAM,WAAW,GAAG,SAAS,CAAC;IAC1C,MAAM,EAAE,CAAC,OAAO,CAAC,EAAE,OAAO,EAAE,KAAK,WAAW,GAAG,SAAS,CAAC;CACzD,CAAC;AAUF,qBAAa,wBAAyB,SAAQ,kBAAkB;IACxD,IAAI,kBAAkC;IACrC,KAAK,EAAE,mBAAmB,CAAC;IAC3B,MAAM,EAAE,8BAA8B,CAAC;IAE/C,MAAM,EAAE;QACP,KAAK,CAAC,EAAE,WAAW,CAAC;QACpB,UAAU,CAAC,EAAE,WAAW,CAAC;QACzB,MAAM,CAAC,EAAE,WAAW,CAAC;QACrB,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE;YAAE,UAAU,CAAC,EAAE,WAAW,CAAC;YAAC,MAAM,CAAC,EAAE,WAAW,CAAA;SAAE,CAAC,CAAC;KAC7E,CAKC;gBAGD,MAAM,EAAE,8BAA8B,EACtC,EAAE,MAAM,EAAE,KAAK,EAAE,UAAU,EAAE,YAAY,EAAE,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,EAAE,kBAAkB,EAC1F,OAAO,CAAC,EAAE,gBAAgB;IA2C3B,KAAK,EAAE,0BAA0B,CAwS5B;IAEL,IAAI,MAAM,IAAI,qBAAqB,CA2BlC;IAED,MAAM,QAAa,QAAQ,IAAI,CAAC,CAuH9B;CACF"}
|
|
@@ -25,11 +25,11 @@ export class RecommendationController extends AbstractController {
|
|
|
25
25
|
let skus = [];
|
|
26
26
|
switch (this.store.profile.placement) {
|
|
27
27
|
case ProfilePlacement.PRODUCTPAGE:
|
|
28
|
-
if (this.config.globals
|
|
29
|
-
skus = [this.config.globals
|
|
28
|
+
if (this.config.globals?.product) {
|
|
29
|
+
skus = [this.config.globals?.product];
|
|
30
30
|
}
|
|
31
|
-
else if (this.config.globals
|
|
32
|
-
skus = this.config.globals
|
|
31
|
+
else if (this.config.globals?.products) {
|
|
32
|
+
skus = this.config.globals?.products;
|
|
33
33
|
}
|
|
34
34
|
break;
|
|
35
35
|
case ProfilePlacement.BASKETPAGE:
|
|
@@ -54,7 +54,7 @@ export class RecommendationController extends AbstractController {
|
|
|
54
54
|
const payload = {
|
|
55
55
|
type: BeaconType.PROFILE_PRODUCT_CLICK,
|
|
56
56
|
category: BeaconCategory.RECOMMENDATIONS,
|
|
57
|
-
context: this.config.globals
|
|
57
|
+
context: this.config.globals?.siteId ? { website: { trackingCode: this.config.globals?.siteId } } : undefined,
|
|
58
58
|
event: {
|
|
59
59
|
context: {
|
|
60
60
|
action: 'navigate',
|
|
@@ -82,7 +82,7 @@ export class RecommendationController extends AbstractController {
|
|
|
82
82
|
const payload = {
|
|
83
83
|
type: BeaconType.PROFILE_PRODUCT_IMPRESSION,
|
|
84
84
|
category: BeaconCategory.RECOMMENDATIONS,
|
|
85
|
-
context: this.config.globals
|
|
85
|
+
context: this.config.globals?.siteId ? { website: { trackingCode: this.config.globals?.siteId } } : undefined,
|
|
86
86
|
event: {
|
|
87
87
|
context: {
|
|
88
88
|
placement: this.store.profile.placement,
|
|
@@ -110,7 +110,7 @@ export class RecommendationController extends AbstractController {
|
|
|
110
110
|
const payload = {
|
|
111
111
|
type: BeaconType.PROFILE_PRODUCT_RENDER,
|
|
112
112
|
category: BeaconCategory.RECOMMENDATIONS,
|
|
113
|
-
context: this.config.globals
|
|
113
|
+
context: this.config.globals?.siteId ? { website: { trackingCode: this.config.globals?.siteId } } : undefined,
|
|
114
114
|
event: {
|
|
115
115
|
context: {
|
|
116
116
|
placement: this.store.profile.placement,
|
|
@@ -142,7 +142,7 @@ export class RecommendationController extends AbstractController {
|
|
|
142
142
|
const payload = {
|
|
143
143
|
type: BeaconType.PROFILE_PRODUCT_REMOVEDFROMBUNDLE,
|
|
144
144
|
category: BeaconCategory.RECOMMENDATIONS,
|
|
145
|
-
context: this.config.globals
|
|
145
|
+
context: this.config.globals?.siteId ? { website: { trackingCode: this.config.globals?.siteId } } : undefined,
|
|
146
146
|
event: {
|
|
147
147
|
context: {
|
|
148
148
|
placement: this.store.profile.placement,
|
|
@@ -174,7 +174,7 @@ export class RecommendationController extends AbstractController {
|
|
|
174
174
|
const payload = {
|
|
175
175
|
type: BeaconType.PROFILE_PRODUCT_ADDEDTOBUNDLE,
|
|
176
176
|
category: BeaconCategory.RECOMMENDATIONS,
|
|
177
|
-
context: this.config.globals
|
|
177
|
+
context: this.config.globals?.siteId ? { website: { trackingCode: this.config.globals?.siteId } } : undefined,
|
|
178
178
|
event: {
|
|
179
179
|
context: {
|
|
180
180
|
placement: this.store.profile.placement,
|
|
@@ -203,7 +203,7 @@ export class RecommendationController extends AbstractController {
|
|
|
203
203
|
const event = this.tracker.track.event({
|
|
204
204
|
type: BeaconType.PROFILE_ADDBUNDLE,
|
|
205
205
|
category: BeaconCategory.RECOMMENDATIONS,
|
|
206
|
-
context: this.config.globals
|
|
206
|
+
context: this.config.globals?.siteId ? { website: { trackingCode: this.config.globals?.siteId } } : undefined,
|
|
207
207
|
event: {
|
|
208
208
|
context: {
|
|
209
209
|
placement: this.store.profile.placement,
|
|
@@ -235,7 +235,7 @@ export class RecommendationController extends AbstractController {
|
|
|
235
235
|
const event = this.tracker.track.event({
|
|
236
236
|
type: BeaconType.PROFILE_CLICK,
|
|
237
237
|
category: BeaconCategory.RECOMMENDATIONS,
|
|
238
|
-
context: this.config.globals
|
|
238
|
+
context: this.config.globals?.siteId ? { website: { trackingCode: this.config.globals?.siteId } } : undefined,
|
|
239
239
|
event: {
|
|
240
240
|
context: {
|
|
241
241
|
action: 'navigate',
|
|
@@ -262,7 +262,7 @@ export class RecommendationController extends AbstractController {
|
|
|
262
262
|
const event = this.tracker.track.event({
|
|
263
263
|
type: BeaconType.PROFILE_IMPRESSION,
|
|
264
264
|
category: BeaconCategory.RECOMMENDATIONS,
|
|
265
|
-
context: this.config.globals
|
|
265
|
+
context: this.config.globals?.siteId ? { website: { trackingCode: this.config.globals?.siteId } } : undefined,
|
|
266
266
|
event: {
|
|
267
267
|
context: {
|
|
268
268
|
placement: this.store.profile.placement,
|
|
@@ -288,7 +288,7 @@ export class RecommendationController extends AbstractController {
|
|
|
288
288
|
const event = this.tracker.track.event({
|
|
289
289
|
type: BeaconType.PROFILE_RENDER,
|
|
290
290
|
category: BeaconCategory.RECOMMENDATIONS,
|
|
291
|
-
context: this.config.globals
|
|
291
|
+
context: this.config.globals?.siteId ? { website: { trackingCode: this.config.globals?.siteId } } : undefined,
|
|
292
292
|
event: {
|
|
293
293
|
context: {
|
|
294
294
|
placement: this.store.profile.placement,
|
|
@@ -459,7 +459,7 @@ export class RecommendationController extends AbstractController {
|
|
|
459
459
|
tag: this.config.tag,
|
|
460
460
|
batched: this.config.batched,
|
|
461
461
|
branch: this.config.branch || 'production',
|
|
462
|
-
|
|
462
|
+
batchId: this.config.batchId,
|
|
463
463
|
...this.config.globals,
|
|
464
464
|
};
|
|
465
465
|
const shopperId = this.tracker.getContext().shopperId;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@searchspring/snap-controller",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.60.1",
|
|
4
4
|
"description": "Snap Controllers",
|
|
5
5
|
"main": "dist/cjs/index.js",
|
|
6
6
|
"module": "dist/esm/index.js",
|
|
@@ -20,22 +20,22 @@
|
|
|
20
20
|
"test:watch": "jest --watch"
|
|
21
21
|
},
|
|
22
22
|
"dependencies": {
|
|
23
|
-
"@searchspring/snap-toolbox": "^0.
|
|
23
|
+
"@searchspring/snap-toolbox": "^0.60.1",
|
|
24
24
|
"css.escape": "1.5.1",
|
|
25
25
|
"deepmerge": "4.3.1"
|
|
26
26
|
},
|
|
27
27
|
"devDependencies": {
|
|
28
|
-
"@searchspring/snap-client": "^0.
|
|
29
|
-
"@searchspring/snap-event-manager": "^0.
|
|
30
|
-
"@searchspring/snap-logger": "^0.
|
|
31
|
-
"@searchspring/snap-profiler": "^0.
|
|
32
|
-
"@searchspring/snap-store-mobx": "^0.
|
|
33
|
-
"@searchspring/snap-tracker": "^0.
|
|
34
|
-
"@searchspring/snap-url-manager": "^0.
|
|
28
|
+
"@searchspring/snap-client": "^0.60.1",
|
|
29
|
+
"@searchspring/snap-event-manager": "^0.60.1",
|
|
30
|
+
"@searchspring/snap-logger": "^0.60.1",
|
|
31
|
+
"@searchspring/snap-profiler": "^0.60.1",
|
|
32
|
+
"@searchspring/snap-store-mobx": "^0.60.1",
|
|
33
|
+
"@searchspring/snap-tracker": "^0.60.1",
|
|
34
|
+
"@searchspring/snap-url-manager": "^0.60.1"
|
|
35
35
|
},
|
|
36
36
|
"sideEffects": false,
|
|
37
37
|
"files": [
|
|
38
38
|
"dist/**/*"
|
|
39
39
|
],
|
|
40
|
-
"gitHead": "
|
|
40
|
+
"gitHead": "94761345dd36b121494c165d9844a27086085dc9"
|
|
41
41
|
}
|