@searchspring/snap-controller 0.63.2 → 0.63.3

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.
@@ -15,6 +15,7 @@ export declare class SearchController extends AbstractController {
15
15
  store: SearchStore;
16
16
  config: SearchControllerConfig;
17
17
  storage: StorageStore;
18
+ private previousResults;
18
19
  constructor(config: SearchControllerConfig, { client, store, urlManager, eventManager, profiler, logger, tracker }: ControllerServices, context?: ContextVariables);
19
20
  track: SearchTrackMethods;
20
21
  get params(): SearchRequestModel;
@@ -1 +1 @@
1
- {"version":3,"file":"SearchController.d.ts","sourceRoot":"","sources":["../../../src/Search/SearchController.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,kBAAkB,EAAE,MAAM,gCAAgC,CAAC;AACpE,OAAO,EAAE,YAAY,EAAa,MAAM,+BAA+B,CAAC;AAExE,OAAO,EAAE,eAAe,EAAE,MAAM,UAAU,CAAC;AAE3C,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,4BAA4B,CAAC;AAC9D,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,+BAA+B,CAAC;AACjE,OAAO,KAAK,EACX,sBAAsB,EAGtB,kBAAkB,EAClB,gBAAgB,EAGhB,MAAM,UAAU,CAAC;AAElB,OAAO,KAAK,EACX,kBAAkB,EAKlB,MAAM,2BAA2B,CAAC;AAmBnC,KAAK,kBAAkB,GAAG;IACzB,OAAO,EAAE;QACR,KAAK,EAAE,CAAC,CAAC,EAAE,UAAU,EAAE,MAAM,EAAE,GAAG,KAAK,WAAW,GAAG,SAAS,CAAC;KAC/D,CAAC;CACF,CAAC;AAEF,qBAAa,gBAAiB,SAAQ,kBAAkB;IAChD,IAAI,kBAA0B;IAC7B,KAAK,EAAE,WAAW,CAAC;IACnB,MAAM,EAAE,sBAAsB,CAAC;IACvC,OAAO,EAAE,YAAY,CAAC;gBAGrB,MAAM,EAAE,sBAAsB,EAC9B,EAAE,MAAM,EAAE,KAAK,EAAE,UAAU,EAAE,YAAY,EAAE,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,EAAE,kBAAkB,EAC1F,OAAO,CAAC,EAAE,gBAAgB;IAsJ3B,KAAK,EAAE,kBAAkB,CA+CvB;IAEF,IAAI,MAAM,IAAI,kBAAkB,CAiD/B;IAED,MAAM,QAAa,QAAQ,IAAI,CAAC,CA2M9B;CACF;AAED,wBAAgB,wBAAwB,CAAC,OAAO,EAAE,kBAAkB,GAAG,kBAAkB,CAiBxF;AAED,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,WAAW,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,SAAI,GAAG,MAAM,GAAG,SAAS,CAgCvG"}
1
+ {"version":3,"file":"SearchController.d.ts","sourceRoot":"","sources":["../../../src/Search/SearchController.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,kBAAkB,EAAE,MAAM,gCAAgC,CAAC;AACpE,OAAO,EAAE,YAAY,EAAa,MAAM,+BAA+B,CAAC;AAExE,OAAO,EAAE,eAAe,EAAE,MAAM,UAAU,CAAC;AAE3C,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,4BAA4B,CAAC;AAC9D,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,+BAA+B,CAAC;AACjE,OAAO,KAAK,EACX,sBAAsB,EAGtB,kBAAkB,EAClB,gBAAgB,EAGhB,MAAM,UAAU,CAAC;AAElB,OAAO,KAAK,EACX,kBAAkB,EAKlB,MAAM,2BAA2B,CAAC;AAmBnC,KAAK,kBAAkB,GAAG;IACzB,OAAO,EAAE;QACR,KAAK,EAAE,CAAC,CAAC,EAAE,UAAU,EAAE,MAAM,EAAE,GAAG,KAAK,WAAW,GAAG,SAAS,CAAC;KAC/D,CAAC;CACF,CAAC;AAEF,qBAAa,gBAAiB,SAAQ,kBAAkB;IAChD,IAAI,kBAA0B;IAC7B,KAAK,EAAE,WAAW,CAAC;IACnB,MAAM,EAAE,sBAAsB,CAAC;IACvC,OAAO,EAAE,YAAY,CAAC;IACtB,OAAO,CAAC,eAAe,CAAwC;gBAG9D,MAAM,EAAE,sBAAsB,EAC9B,EAAE,MAAM,EAAE,KAAK,EAAE,UAAU,EAAE,YAAY,EAAE,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,EAAE,kBAAkB,EAC1F,OAAO,CAAC,EAAE,gBAAgB;IAuJ3B,KAAK,EAAE,kBAAkB,CA+CvB;IAEF,IAAI,MAAM,IAAI,kBAAkB,CAiD/B;IAED,MAAM,QAAa,QAAQ,IAAI,CAAC,CAsN9B;CACF;AAED,wBAAgB,wBAAwB,CAAC,OAAO,EAAE,kBAAkB,GAAG,kBAAkB,CAiBxF;AAED,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,WAAW,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,SAAI,GAAG,MAAM,GAAG,SAAS,CAgCvG"}
@@ -61,6 +61,15 @@ var __generator = (this && this.__generator) || function (thisArg, body) {
61
61
  if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
62
62
  }
63
63
  };
64
+ var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {
65
+ if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
66
+ if (ar || !(i in from)) {
67
+ if (!ar) ar = Array.prototype.slice.call(from, 0, i);
68
+ ar[i] = from[i];
69
+ }
70
+ }
71
+ return to.concat(ar || Array.prototype.slice.call(from));
72
+ };
64
73
  var __importDefault = (this && this.__importDefault) || function (mod) {
65
74
  return (mod && mod.__esModule) ? mod : { "default": mod };
66
75
  };
@@ -95,6 +104,7 @@ var SearchController = /** @class */ (function (_super) {
95
104
  var _b, _c, _d, _e, _f;
96
105
  var _this = _super.call(this, config, { client: client, store: store, urlManager: urlManager, eventManager: eventManager, profiler: profiler, logger: logger, tracker: tracker }, context) || this;
97
106
  _this.type = types_1.ControllerTypes.search;
107
+ _this.previousResults = [];
98
108
  _this.track = {
99
109
  product: {
100
110
  click: function (e, result) {
@@ -141,16 +151,16 @@ var SearchController = /** @class */ (function (_super) {
141
151
  var params_1, err_1, stringyParams, prevStringyParams, searchProfile, meta, response, preventBackfill, dontBackfill, backfillRequests, backfillResponses, backfillResults, afterSearchProfile, err_2, afterStoreProfile, err_3, err_4;
142
152
  var _a, _b;
143
153
  var _this = this;
144
- var _c, _d, _e, _f, _g, _h, _j, _k, _l, _m;
145
- return __generator(this, function (_o) {
146
- switch (_o.label) {
154
+ var _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o;
155
+ return __generator(this, function (_p) {
156
+ switch (_p.label) {
147
157
  case 0:
148
- _o.trys.push([0, 22, 23, 24]);
158
+ _p.trys.push([0, 22, 23, 24]);
149
159
  if (!!this.initialized) return [3 /*break*/, 2];
150
160
  return [4 /*yield*/, this.init()];
151
161
  case 1:
152
- _o.sent();
153
- _o.label = 2;
162
+ _p.sent();
163
+ _p.label = 2;
154
164
  case 2:
155
165
  params_1 = this.params;
156
166
  if (((_d = (_c = this.params.search) === null || _c === void 0 ? void 0 : _c.query) === null || _d === void 0 ? void 0 : _d.string) && ((_f = (_e = this.params.search) === null || _e === void 0 ? void 0 : _e.query) === null || _f === void 0 ? void 0 : _f.string.length)) {
@@ -158,18 +168,18 @@ var SearchController = /** @class */ (function (_super) {
158
168
  this.store.history.save(this.params.search.query.string);
159
169
  }
160
170
  this.store.loading = true;
161
- _o.label = 3;
171
+ _p.label = 3;
162
172
  case 3:
163
- _o.trys.push([3, 5, , 6]);
173
+ _p.trys.push([3, 5, , 6]);
164
174
  return [4 /*yield*/, this.eventManager.fire('beforeSearch', {
165
175
  controller: this,
166
176
  request: params_1,
167
177
  })];
168
178
  case 4:
169
- _o.sent();
179
+ _p.sent();
170
180
  return [3 /*break*/, 6];
171
181
  case 5:
172
- err_1 = _o.sent();
182
+ err_1 = _p.sent();
173
183
  if ((err_1 === null || err_1 === void 0 ? void 0 : err_1.message) == 'cancelled') {
174
184
  this.log.warn("'beforeSearch' middleware cancelled");
175
185
  return [2 /*return*/];
@@ -217,7 +227,7 @@ var SearchController = /** @class */ (function (_super) {
217
227
  });
218
228
  return [4 /*yield*/, Promise.all(backfillRequests)];
219
229
  case 7:
220
- backfillResponses = _o.sent();
230
+ backfillResponses = _p.sent();
221
231
  // backfillResponses are [meta, searchResponse][]
222
232
  // set the meta and response to the first page of backfillResponses
223
233
  meta = backfillResponses[0][0];
@@ -235,14 +245,19 @@ var SearchController = /** @class */ (function (_super) {
235
245
  case 8: return [4 /*yield*/, this.client.search(params_1)];
236
246
  case 9:
237
247
  // infinite with no backfills.
238
- _a = _o.sent(), meta = _a[0], response = _a[1];
239
- _o.label = 10;
248
+ _a = _p.sent(), meta = _a[0], response = _a[1];
249
+ // append new results to previous results
250
+ response.results = __spreadArray(__spreadArray([], this.previousResults, true), (response.results || []), true);
251
+ _p.label = 10;
240
252
  case 10: return [3 /*break*/, 13];
241
- case 11: return [4 /*yield*/, this.client.search(params_1)];
242
- case 12:
253
+ case 11:
243
254
  // normal request for next page
244
- _b = _o.sent(), meta = _b[0], response = _b[1];
245
- _o.label = 13;
255
+ // clear previousResults to prevent infinite scroll from using them
256
+ this.previousResults = [];
257
+ return [4 /*yield*/, this.client.search(params_1)];
258
+ case 12:
259
+ _b = _p.sent(), meta = _b[0], response = _b[1];
260
+ _p.label = 13;
246
261
  case 13:
247
262
  // MockClient will overwrite the client search() method and use SearchData to return mock data which already contains meta data
248
263
  if (!response.meta) {
@@ -251,19 +266,19 @@ var SearchController = /** @class */ (function (_super) {
251
266
  searchProfile.stop();
252
267
  this.log.profile(searchProfile);
253
268
  afterSearchProfile = this.profiler.create({ type: 'event', name: 'afterSearch', context: params_1 }).start();
254
- _o.label = 14;
269
+ _p.label = 14;
255
270
  case 14:
256
- _o.trys.push([14, 16, , 17]);
271
+ _p.trys.push([14, 16, , 17]);
257
272
  return [4 /*yield*/, this.eventManager.fire('afterSearch', {
258
273
  controller: this,
259
274
  request: params_1,
260
275
  response: response,
261
276
  })];
262
277
  case 15:
263
- _o.sent();
278
+ _p.sent();
264
279
  return [3 /*break*/, 17];
265
280
  case 16:
266
- err_2 = _o.sent();
281
+ err_2 = _p.sent();
267
282
  if ((err_2 === null || err_2 === void 0 ? void 0 : err_2.message) == 'cancelled') {
268
283
  this.log.warn("'afterSearch' middleware cancelled");
269
284
  afterSearchProfile.stop();
@@ -277,22 +292,26 @@ var SearchController = /** @class */ (function (_super) {
277
292
  case 17:
278
293
  afterSearchProfile.stop();
279
294
  this.log.profile(afterSearchProfile);
295
+ // store previous results for infinite usage
296
+ if ((_o = this.config.settings) === null || _o === void 0 ? void 0 : _o.infinite) {
297
+ this.previousResults = JSON.parse(JSON.stringify(response.results));
298
+ }
280
299
  // update the store
281
300
  this.store.update(response);
282
301
  afterStoreProfile = this.profiler.create({ type: 'event', name: 'afterStore', context: params_1 }).start();
283
- _o.label = 18;
302
+ _p.label = 18;
284
303
  case 18:
285
- _o.trys.push([18, 20, , 21]);
304
+ _p.trys.push([18, 20, , 21]);
286
305
  return [4 /*yield*/, this.eventManager.fire('afterStore', {
287
306
  controller: this,
288
307
  request: params_1,
289
308
  response: response,
290
309
  })];
291
310
  case 19:
292
- _o.sent();
311
+ _p.sent();
293
312
  return [3 /*break*/, 21];
294
313
  case 20:
295
- err_3 = _o.sent();
314
+ err_3 = _p.sent();
296
315
  if ((err_3 === null || err_3 === void 0 ? void 0 : err_3.message) == 'cancelled') {
297
316
  this.log.warn("'afterStore' middleware cancelled");
298
317
  afterStoreProfile.stop();
@@ -308,7 +327,7 @@ var SearchController = /** @class */ (function (_super) {
308
327
  this.log.profile(afterStoreProfile);
309
328
  return [3 /*break*/, 24];
310
329
  case 22:
311
- err_4 = _o.sent();
330
+ err_4 = _p.sent();
312
331
  if (err_4) {
313
332
  if (err_4.err && err_4.fetchDetails) {
314
333
  switch (err_4.fetchDetails.status) {
@@ -415,9 +434,8 @@ var SearchController = /** @class */ (function (_super) {
415
434
  // search params have changed - empty the scrollMap
416
435
  this.storage.set('scrollMap', {});
417
436
  }
418
- return [4 /*yield*/, this.eventManager.fire('restorePosition', { controller: this, element: elementPosition })];
419
- case 2:
420
- _a.sent();
437
+ // not awaiting this event as it relies on render, and render is blocked by afterStore event
438
+ this.eventManager.fire('restorePosition', { controller: this, element: elementPosition });
421
439
  return [2 /*return*/];
422
440
  }
423
441
  });
@@ -448,8 +466,8 @@ var SearchController = /** @class */ (function (_super) {
448
466
  return __generator(this, function (_a) {
449
467
  switch (_a.label) {
450
468
  case 0:
451
- maxCheckTime = 500;
452
- checkTime = 50;
469
+ maxCheckTime = 600;
470
+ checkTime = 60;
453
471
  maxScrolls = Math.ceil(maxCheckTime / checkTime);
454
472
  maxCheckCount = maxScrolls + 2;
455
473
  scrollBackCount = 0;
@@ -15,6 +15,7 @@ export declare class SearchController extends AbstractController {
15
15
  store: SearchStore;
16
16
  config: SearchControllerConfig;
17
17
  storage: StorageStore;
18
+ private previousResults;
18
19
  constructor(config: SearchControllerConfig, { client, store, urlManager, eventManager, profiler, logger, tracker }: ControllerServices, context?: ContextVariables);
19
20
  track: SearchTrackMethods;
20
21
  get params(): SearchRequestModel;
@@ -1 +1 @@
1
- {"version":3,"file":"SearchController.d.ts","sourceRoot":"","sources":["../../../src/Search/SearchController.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,kBAAkB,EAAE,MAAM,gCAAgC,CAAC;AACpE,OAAO,EAAE,YAAY,EAAa,MAAM,+BAA+B,CAAC;AAExE,OAAO,EAAE,eAAe,EAAE,MAAM,UAAU,CAAC;AAE3C,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,4BAA4B,CAAC;AAC9D,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,+BAA+B,CAAC;AACjE,OAAO,KAAK,EACX,sBAAsB,EAGtB,kBAAkB,EAClB,gBAAgB,EAGhB,MAAM,UAAU,CAAC;AAElB,OAAO,KAAK,EACX,kBAAkB,EAKlB,MAAM,2BAA2B,CAAC;AAmBnC,KAAK,kBAAkB,GAAG;IACzB,OAAO,EAAE;QACR,KAAK,EAAE,CAAC,CAAC,EAAE,UAAU,EAAE,MAAM,EAAE,GAAG,KAAK,WAAW,GAAG,SAAS,CAAC;KAC/D,CAAC;CACF,CAAC;AAEF,qBAAa,gBAAiB,SAAQ,kBAAkB;IAChD,IAAI,kBAA0B;IAC7B,KAAK,EAAE,WAAW,CAAC;IACnB,MAAM,EAAE,sBAAsB,CAAC;IACvC,OAAO,EAAE,YAAY,CAAC;gBAGrB,MAAM,EAAE,sBAAsB,EAC9B,EAAE,MAAM,EAAE,KAAK,EAAE,UAAU,EAAE,YAAY,EAAE,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,EAAE,kBAAkB,EAC1F,OAAO,CAAC,EAAE,gBAAgB;IAsJ3B,KAAK,EAAE,kBAAkB,CA+CvB;IAEF,IAAI,MAAM,IAAI,kBAAkB,CAiD/B;IAED,MAAM,QAAa,QAAQ,IAAI,CAAC,CA2M9B;CACF;AAED,wBAAgB,wBAAwB,CAAC,OAAO,EAAE,kBAAkB,GAAG,kBAAkB,CAiBxF;AAED,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,WAAW,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,SAAI,GAAG,MAAM,GAAG,SAAS,CAgCvG"}
1
+ {"version":3,"file":"SearchController.d.ts","sourceRoot":"","sources":["../../../src/Search/SearchController.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,kBAAkB,EAAE,MAAM,gCAAgC,CAAC;AACpE,OAAO,EAAE,YAAY,EAAa,MAAM,+BAA+B,CAAC;AAExE,OAAO,EAAE,eAAe,EAAE,MAAM,UAAU,CAAC;AAE3C,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,4BAA4B,CAAC;AAC9D,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,+BAA+B,CAAC;AACjE,OAAO,KAAK,EACX,sBAAsB,EAGtB,kBAAkB,EAClB,gBAAgB,EAGhB,MAAM,UAAU,CAAC;AAElB,OAAO,KAAK,EACX,kBAAkB,EAKlB,MAAM,2BAA2B,CAAC;AAmBnC,KAAK,kBAAkB,GAAG;IACzB,OAAO,EAAE;QACR,KAAK,EAAE,CAAC,CAAC,EAAE,UAAU,EAAE,MAAM,EAAE,GAAG,KAAK,WAAW,GAAG,SAAS,CAAC;KAC/D,CAAC;CACF,CAAC;AAEF,qBAAa,gBAAiB,SAAQ,kBAAkB;IAChD,IAAI,kBAA0B;IAC7B,KAAK,EAAE,WAAW,CAAC;IACnB,MAAM,EAAE,sBAAsB,CAAC;IACvC,OAAO,EAAE,YAAY,CAAC;IACtB,OAAO,CAAC,eAAe,CAAwC;gBAG9D,MAAM,EAAE,sBAAsB,EAC9B,EAAE,MAAM,EAAE,KAAK,EAAE,UAAU,EAAE,YAAY,EAAE,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,EAAE,kBAAkB,EAC1F,OAAO,CAAC,EAAE,gBAAgB;IAuJ3B,KAAK,EAAE,kBAAkB,CA+CvB;IAEF,IAAI,MAAM,IAAI,kBAAkB,CAiD/B;IAED,MAAM,QAAa,QAAQ,IAAI,CAAC,CAsN9B;CACF;AAED,wBAAgB,wBAAwB,CAAC,OAAO,EAAE,kBAAkB,GAAG,kBAAkB,CAiBxF;AAED,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,WAAW,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,SAAI,GAAG,MAAM,GAAG,SAAS,CAgCvG"}
@@ -24,6 +24,7 @@ export class SearchController extends AbstractController {
24
24
  constructor(config, { client, store, urlManager, eventManager, profiler, logger, tracker }, context) {
25
25
  super(config, { client, store, urlManager, eventManager, profiler, logger, tracker }, context);
26
26
  this.type = ControllerTypes.search;
27
+ this.previousResults = [];
27
28
  this.track = {
28
29
  product: {
29
30
  click: (e, result) => {
@@ -148,10 +149,14 @@ export class SearchController extends AbstractController {
148
149
  else {
149
150
  // infinite with no backfills.
150
151
  [meta, response] = await this.client.search(params);
152
+ // append new results to previous results
153
+ response.results = [...this.previousResults, ...(response.results || [])];
151
154
  }
152
155
  }
153
156
  else {
154
157
  // normal request for next page
158
+ // clear previousResults to prevent infinite scroll from using them
159
+ this.previousResults = [];
155
160
  [meta, response] = await this.client.search(params);
156
161
  }
157
162
  // MockClient will overwrite the client search() method and use SearchData to return mock data which already contains meta data
@@ -181,6 +186,10 @@ export class SearchController extends AbstractController {
181
186
  }
182
187
  afterSearchProfile.stop();
183
188
  this.log.profile(afterSearchProfile);
189
+ // store previous results for infinite usage
190
+ if (this.config.settings?.infinite) {
191
+ this.previousResults = JSON.parse(JSON.stringify(response.results));
192
+ }
184
193
  // update the store
185
194
  this.store.update(response);
186
195
  const afterStoreProfile = this.profiler.create({ type: 'event', name: 'afterStore', context: params }).start();
@@ -295,7 +304,8 @@ export class SearchController extends AbstractController {
295
304
  // search params have changed - empty the scrollMap
296
305
  this.storage.set('scrollMap', {});
297
306
  }
298
- await this.eventManager.fire('restorePosition', { controller: this, element: elementPosition });
307
+ // not awaiting this event as it relies on render, and render is blocked by afterStore event
308
+ this.eventManager.fire('restorePosition', { controller: this, element: elementPosition });
299
309
  });
300
310
  // restore position
301
311
  if (this.config.settings?.restorePosition?.enabled) {
@@ -312,8 +322,8 @@ export class SearchController extends AbstractController {
312
322
  }
313
323
  const scrollToPosition = () => {
314
324
  return new Promise(async (resolve) => {
315
- const maxCheckTime = 500;
316
- const checkTime = 50;
325
+ const maxCheckTime = 600;
326
+ const checkTime = 60;
317
327
  const maxScrolls = Math.ceil(maxCheckTime / checkTime);
318
328
  const maxCheckCount = maxScrolls + 2;
319
329
  let scrollBackCount = 0;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@searchspring/snap-controller",
3
- "version": "0.63.2",
3
+ "version": "0.63.3",
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.63.2",
23
+ "@searchspring/snap-toolbox": "^0.63.3",
24
24
  "css.escape": "1.5.1",
25
25
  "deepmerge": "4.3.1"
26
26
  },
27
27
  "devDependencies": {
28
- "@searchspring/snap-client": "^0.63.2",
29
- "@searchspring/snap-event-manager": "^0.63.2",
30
- "@searchspring/snap-logger": "^0.63.2",
31
- "@searchspring/snap-profiler": "^0.63.2",
32
- "@searchspring/snap-store-mobx": "^0.63.2",
33
- "@searchspring/snap-tracker": "^0.63.2",
34
- "@searchspring/snap-url-manager": "^0.63.2"
28
+ "@searchspring/snap-client": "^0.63.3",
29
+ "@searchspring/snap-event-manager": "^0.63.3",
30
+ "@searchspring/snap-logger": "^0.63.3",
31
+ "@searchspring/snap-profiler": "^0.63.3",
32
+ "@searchspring/snap-store-mobx": "^0.63.3",
33
+ "@searchspring/snap-tracker": "^0.63.3",
34
+ "@searchspring/snap-url-manager": "^0.63.3"
35
35
  },
36
36
  "sideEffects": false,
37
37
  "files": [
38
38
  "dist/**/*"
39
39
  ],
40
- "gitHead": "e0cbff5ebba37135d0ead609f6dc4b4b8db48916"
40
+ "gitHead": "cd9624efa3636a0344ba4e6b5a7d3eb6e33508fb"
41
41
  }