@searchspring/snap-controller 0.30.0 → 0.31.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 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SearchController.d.ts","sourceRoot":"","sources":["../../../src/Search/SearchController.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,kBAAkB,EAAE,MAAM,gCAAgC,CAAC;AACpE,OAAO,EAAE,YAAY,EAA0B,MAAM,+BAA+B,CAAC;AAErF,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,EAAE,sBAAsB,EAAkD,kBAAkB,EAAE,gBAAgB,EAAE,MAAM,UAAU,CAAC;AAE7I,OAAO,KAAK,EAAE,kBAAkB,
|
|
1
|
+
{"version":3,"file":"SearchController.d.ts","sourceRoot":"","sources":["../../../src/Search/SearchController.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,kBAAkB,EAAE,MAAM,gCAAgC,CAAC;AACpE,OAAO,EAAE,YAAY,EAA0B,MAAM,+BAA+B,CAAC;AAErF,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,EAAE,sBAAsB,EAAkD,kBAAkB,EAAE,gBAAgB,EAAE,MAAM,UAAU,CAAC;AAE7I,OAAO,KAAK,EAAE,kBAAkB,EAA2E,MAAM,2BAA2B,CAAC;AAoB7I,aAAK,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;IAmG3B,KAAK,EAAE,kBAAkB,CAoCvB;IAEF,IAAI,MAAM,IAAI,kBAAkB,CAsC/B;IAED,MAAM,QAAa,QAAQ,IAAI,CAAC,CA0J9B;CACF"}
|
|
@@ -100,23 +100,33 @@ var SearchController = /** @class */ (function (_super) {
|
|
|
100
100
|
__extends(SearchController, _super);
|
|
101
101
|
function SearchController(config, _a, context) {
|
|
102
102
|
var client = _a.client, store = _a.store, urlManager = _a.urlManager, eventManager = _a.eventManager, profiler = _a.profiler, logger = _a.logger, tracker = _a.tracker;
|
|
103
|
-
var _this =
|
|
103
|
+
var _this = this;
|
|
104
|
+
var _b, _c, _d;
|
|
105
|
+
_this = _super.call(this, config, { client: client, store: store, urlManager: urlManager, eventManager: eventManager, profiler: profiler, logger: logger, tracker: tracker }, context) || this;
|
|
104
106
|
_this.type = types_1.ControllerTypes.search;
|
|
105
107
|
_this.track = {
|
|
106
108
|
product: {
|
|
107
109
|
click: function (e, result) {
|
|
108
|
-
var _a, _b;
|
|
110
|
+
var _a, _b, _c, _d;
|
|
109
111
|
// store scroll position
|
|
110
112
|
if ((_a = _this.config.settings) === null || _a === void 0 ? void 0 : _a.infinite) {
|
|
111
113
|
var stringyParams = _this.storage.get('lastStringyParams');
|
|
114
|
+
var paramsObj = JSON.parse(stringyParams);
|
|
115
|
+
if ((_b = paramsObj === null || paramsObj === void 0 ? void 0 : paramsObj.search) === null || _b === void 0 ? void 0 : _b.redirectResponse) {
|
|
116
|
+
(_c = paramsObj === null || paramsObj === void 0 ? void 0 : paramsObj.search) === null || _c === void 0 ? true : delete _c.redirectResponse;
|
|
117
|
+
}
|
|
118
|
+
if (paramsObj === null || paramsObj === void 0 ? void 0 : paramsObj.personalization) {
|
|
119
|
+
paramsObj === null || paramsObj === void 0 ? true : delete paramsObj.personalization;
|
|
120
|
+
}
|
|
121
|
+
stringyParams = JSON.stringify(paramsObj);
|
|
112
122
|
var scrollMap = {};
|
|
113
123
|
scrollMap[stringyParams] = window.scrollY;
|
|
114
124
|
_this.storage.set('scrollMap', scrollMap);
|
|
115
125
|
}
|
|
116
126
|
// track
|
|
117
|
-
var
|
|
127
|
+
var _e = result.attributes, intellisuggestData = _e.intellisuggestData, intellisuggestSignature = _e.intellisuggestSignature;
|
|
118
128
|
var target = e.target;
|
|
119
|
-
var href = (target === null || target === void 0 ? void 0 : target.href) || ((
|
|
129
|
+
var href = (target === null || target === void 0 ? void 0 : target.href) || ((_d = result.mappings.core) === null || _d === void 0 ? void 0 : _d.url) || undefined;
|
|
120
130
|
var event = _this.tracker.track.product.click({
|
|
121
131
|
intellisuggestData: intellisuggestData,
|
|
122
132
|
intellisuggestSignature: intellisuggestSignature,
|
|
@@ -129,32 +139,32 @@ var SearchController = /** @class */ (function (_super) {
|
|
|
129
139
|
};
|
|
130
140
|
_this.search = function () { return __awaiter(_this, void 0, void 0, function () {
|
|
131
141
|
var params, err_1, stringyParams, prevStringyParams, preventBackfill, dontBackfill, searchProfile, _a, meta, response, previousResults_1, backfills, page, backfillParams, backfillResponses, afterSearchProfile, err_2, afterStoreProfile, err_3, err_4;
|
|
132
|
-
var _b, _c, _d, _e, _f, _g, _h, _j, _k
|
|
133
|
-
return __generator(this, function (
|
|
134
|
-
switch (
|
|
142
|
+
var _b, _c, _d, _e, _f, _g, _h, _j, _k;
|
|
143
|
+
return __generator(this, function (_l) {
|
|
144
|
+
switch (_l.label) {
|
|
135
145
|
case 0:
|
|
136
146
|
if (!!this.initialized) return [3 /*break*/, 2];
|
|
137
147
|
return [4 /*yield*/, this.init()];
|
|
138
148
|
case 1:
|
|
139
|
-
|
|
140
|
-
|
|
149
|
+
_l.sent();
|
|
150
|
+
_l.label = 2;
|
|
141
151
|
case 2:
|
|
142
152
|
params = this.params;
|
|
143
|
-
|
|
153
|
+
_l.label = 3;
|
|
144
154
|
case 3:
|
|
145
|
-
|
|
146
|
-
|
|
155
|
+
_l.trys.push([3, 20, , 21]);
|
|
156
|
+
_l.label = 4;
|
|
147
157
|
case 4:
|
|
148
|
-
|
|
158
|
+
_l.trys.push([4, 6, , 7]);
|
|
149
159
|
return [4 /*yield*/, this.eventManager.fire('beforeSearch', {
|
|
150
160
|
controller: this,
|
|
151
161
|
request: params,
|
|
152
162
|
})];
|
|
153
163
|
case 5:
|
|
154
|
-
|
|
164
|
+
_l.sent();
|
|
155
165
|
return [3 /*break*/, 7];
|
|
156
166
|
case 6:
|
|
157
|
-
err_1 =
|
|
167
|
+
err_1 = _l.sent();
|
|
158
168
|
if ((err_1 === null || err_1 === void 0 ? void 0 : err_1.message) == 'cancelled') {
|
|
159
169
|
this.log.warn("'beforeSearch' middleware cancelled");
|
|
160
170
|
return [2 /*return*/];
|
|
@@ -183,7 +193,7 @@ var SearchController = /** @class */ (function (_super) {
|
|
|
183
193
|
searchProfile = this.profiler.create({ type: 'event', name: 'search', context: params }).start();
|
|
184
194
|
return [4 /*yield*/, this.client.search(params)];
|
|
185
195
|
case 8:
|
|
186
|
-
_a =
|
|
196
|
+
_a = _l.sent(), meta = _a[0], response = _a[1];
|
|
187
197
|
// @ts-ignore
|
|
188
198
|
if (!response.meta) {
|
|
189
199
|
/**
|
|
@@ -194,41 +204,41 @@ var SearchController = /** @class */ (function (_super) {
|
|
|
194
204
|
response.meta = meta;
|
|
195
205
|
}
|
|
196
206
|
if (!(((_g = this.config.settings) === null || _g === void 0 ? void 0 : _g.infinite) && ((_h = params.pagination) === null || _h === void 0 ? void 0 : _h.page) > 1)) return [3 /*break*/, 11];
|
|
197
|
-
previousResults_1 = ((
|
|
198
|
-
if (!(((
|
|
207
|
+
previousResults_1 = JSON.parse(JSON.stringify(this.store.results)) || [];
|
|
208
|
+
if (!(((_j = this.config.settings) === null || _j === void 0 ? void 0 : _j.infinite.backfill) && !previousResults_1.length)) return [3 /*break*/, 10];
|
|
199
209
|
backfills = [];
|
|
200
|
-
for (page = 1; page < ((
|
|
210
|
+
for (page = 1; page < ((_k = params.pagination) === null || _k === void 0 ? void 0 : _k.page); page++) {
|
|
201
211
|
backfillParams = (0, deepmerge_1.default)(__assign({}, params), { pagination: { page: page } });
|
|
202
212
|
backfills.push(this.client.search(backfillParams));
|
|
203
213
|
}
|
|
204
214
|
return [4 /*yield*/, Promise.all(backfills)];
|
|
205
215
|
case 9:
|
|
206
|
-
backfillResponses =
|
|
216
|
+
backfillResponses = _l.sent();
|
|
207
217
|
backfillResponses.map(function (_a) {
|
|
208
218
|
var meta = _a[0], data = _a[1];
|
|
209
219
|
previousResults_1 = previousResults_1.concat(data.results);
|
|
210
220
|
});
|
|
211
|
-
|
|
221
|
+
_l.label = 10;
|
|
212
222
|
case 10:
|
|
213
223
|
response.results = __spreadArray(__spreadArray([], previousResults_1, true), (response.results || []), true);
|
|
214
|
-
|
|
224
|
+
_l.label = 11;
|
|
215
225
|
case 11:
|
|
216
226
|
searchProfile.stop();
|
|
217
227
|
this.log.profile(searchProfile);
|
|
218
228
|
afterSearchProfile = this.profiler.create({ type: 'event', name: 'afterSearch', context: params }).start();
|
|
219
|
-
|
|
229
|
+
_l.label = 12;
|
|
220
230
|
case 12:
|
|
221
|
-
|
|
231
|
+
_l.trys.push([12, 14, , 15]);
|
|
222
232
|
return [4 /*yield*/, this.eventManager.fire('afterSearch', {
|
|
223
233
|
controller: this,
|
|
224
234
|
request: params,
|
|
225
235
|
response: response,
|
|
226
236
|
})];
|
|
227
237
|
case 13:
|
|
228
|
-
|
|
238
|
+
_l.sent();
|
|
229
239
|
return [3 /*break*/, 15];
|
|
230
240
|
case 14:
|
|
231
|
-
err_2 =
|
|
241
|
+
err_2 = _l.sent();
|
|
232
242
|
if ((err_2 === null || err_2 === void 0 ? void 0 : err_2.message) == 'cancelled') {
|
|
233
243
|
this.log.warn("'afterSearch' middleware cancelled");
|
|
234
244
|
afterSearchProfile.stop();
|
|
@@ -246,19 +256,19 @@ var SearchController = /** @class */ (function (_super) {
|
|
|
246
256
|
// @ts-ignore
|
|
247
257
|
this.store.update(response);
|
|
248
258
|
afterStoreProfile = this.profiler.create({ type: 'event', name: 'afterStore', context: params }).start();
|
|
249
|
-
|
|
259
|
+
_l.label = 16;
|
|
250
260
|
case 16:
|
|
251
|
-
|
|
261
|
+
_l.trys.push([16, 18, , 19]);
|
|
252
262
|
return [4 /*yield*/, this.eventManager.fire('afterStore', {
|
|
253
263
|
controller: this,
|
|
254
264
|
request: params,
|
|
255
265
|
response: response,
|
|
256
266
|
})];
|
|
257
267
|
case 17:
|
|
258
|
-
|
|
268
|
+
_l.sent();
|
|
259
269
|
return [3 /*break*/, 19];
|
|
260
270
|
case 18:
|
|
261
|
-
err_3 =
|
|
271
|
+
err_3 = _l.sent();
|
|
262
272
|
if ((err_3 === null || err_3 === void 0 ? void 0 : err_3.message) == 'cancelled') {
|
|
263
273
|
this.log.warn("'afterStore' middleware cancelled");
|
|
264
274
|
afterStoreProfile.stop();
|
|
@@ -274,7 +284,7 @@ var SearchController = /** @class */ (function (_super) {
|
|
|
274
284
|
this.log.profile(afterStoreProfile);
|
|
275
285
|
return [3 /*break*/, 21];
|
|
276
286
|
case 20:
|
|
277
|
-
err_4 =
|
|
287
|
+
err_4 = _l.sent();
|
|
278
288
|
if (err_4) {
|
|
279
289
|
switch (err_4) {
|
|
280
290
|
case 429:
|
|
@@ -306,6 +316,12 @@ var SearchController = /** @class */ (function (_super) {
|
|
|
306
316
|
}); };
|
|
307
317
|
// deep merge config with defaults
|
|
308
318
|
_this.config = (0, deepmerge_1.default)(defaultConfig, _this.config);
|
|
319
|
+
if (((_b = _this.config.settings) === null || _b === void 0 ? void 0 : _b.infinite) && typeof _this.config.settings.infinite.restorePosition == 'undefined') {
|
|
320
|
+
_this.config.settings.infinite.restorePosition = true;
|
|
321
|
+
}
|
|
322
|
+
if ((window === null || window === void 0 ? void 0 : window.history) && ((_d = (_c = _this.config.settings) === null || _c === void 0 ? void 0 : _c.infinite) === null || _d === void 0 ? void 0 : _d.restorePosition)) {
|
|
323
|
+
window.history.scrollRestoration = 'manual';
|
|
324
|
+
}
|
|
309
325
|
_this.store.setConfig(_this.config);
|
|
310
326
|
_this.storage = new snap_store_mobx_1.StorageStore({
|
|
311
327
|
type: snap_store_mobx_1.StorageType.SESSION,
|
|
@@ -355,18 +371,26 @@ var SearchController = /** @class */ (function (_super) {
|
|
|
355
371
|
});
|
|
356
372
|
}); });
|
|
357
373
|
_this.eventManager.on('afterStore', function (search, next) { return __awaiter(_this, void 0, void 0, function () {
|
|
358
|
-
var stringyParams, scrollMap_1, scrollToPosition_1, checkCount_1, heightCheck_1;
|
|
374
|
+
var requestParams, stringyParams, scrollMap_1, scrollToPosition_1, checkCount_1, heightCheck_1;
|
|
359
375
|
var _this = this;
|
|
360
|
-
var _a;
|
|
361
|
-
return __generator(this, function (
|
|
362
|
-
switch (
|
|
376
|
+
var _a, _b, _c;
|
|
377
|
+
return __generator(this, function (_d) {
|
|
378
|
+
switch (_d.label) {
|
|
363
379
|
case 0: return [4 /*yield*/, next()];
|
|
364
380
|
case 1:
|
|
365
|
-
|
|
381
|
+
_d.sent();
|
|
366
382
|
search.controller.store.loading = false;
|
|
367
|
-
|
|
368
|
-
this.storage.set('lastStringyParams',
|
|
369
|
-
|
|
383
|
+
// save last params
|
|
384
|
+
this.storage.set('lastStringyParams', JSON.stringify(search.request));
|
|
385
|
+
requestParams = __assign({}, search.request);
|
|
386
|
+
if (requestParams.personalization) {
|
|
387
|
+
delete requestParams.personalization;
|
|
388
|
+
}
|
|
389
|
+
if ((_a = requestParams === null || requestParams === void 0 ? void 0 : requestParams.search) === null || _a === void 0 ? void 0 : _a.redirectResponse) {
|
|
390
|
+
delete requestParams.search.redirectResponse;
|
|
391
|
+
}
|
|
392
|
+
stringyParams = JSON.stringify(requestParams);
|
|
393
|
+
if ((_c = (_b = this.config.settings) === null || _b === void 0 ? void 0 : _b.infinite) === null || _c === void 0 ? void 0 : _c.restorePosition) {
|
|
370
394
|
scrollMap_1 = this.storage.get('scrollMap') || {};
|
|
371
395
|
scrollToPosition_1 = scrollMap_1[stringyParams];
|
|
372
396
|
if (scrollToPosition_1) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SearchController.d.ts","sourceRoot":"","sources":["../../../src/Search/SearchController.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,kBAAkB,EAAE,MAAM,gCAAgC,CAAC;AACpE,OAAO,EAAE,YAAY,EAA0B,MAAM,+BAA+B,CAAC;AAErF,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,EAAE,sBAAsB,EAAkD,kBAAkB,EAAE,gBAAgB,EAAE,MAAM,UAAU,CAAC;AAE7I,OAAO,KAAK,EAAE,kBAAkB,
|
|
1
|
+
{"version":3,"file":"SearchController.d.ts","sourceRoot":"","sources":["../../../src/Search/SearchController.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,kBAAkB,EAAE,MAAM,gCAAgC,CAAC;AACpE,OAAO,EAAE,YAAY,EAA0B,MAAM,+BAA+B,CAAC;AAErF,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,EAAE,sBAAsB,EAAkD,kBAAkB,EAAE,gBAAgB,EAAE,MAAM,UAAU,CAAC;AAE7I,OAAO,KAAK,EAAE,kBAAkB,EAA2E,MAAM,2BAA2B,CAAC;AAoB7I,aAAK,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;IAmG3B,KAAK,EAAE,kBAAkB,CAoCvB;IAEF,IAAI,MAAM,IAAI,kBAAkB,CAsC/B;IAED,MAAM,QAAa,QAAQ,IAAI,CAAC,CA0J9B;CACF"}
|
|
@@ -28,7 +28,15 @@ export class SearchController extends AbstractController {
|
|
|
28
28
|
click: (e, result) => {
|
|
29
29
|
// store scroll position
|
|
30
30
|
if (this.config.settings?.infinite) {
|
|
31
|
-
|
|
31
|
+
let stringyParams = this.storage.get('lastStringyParams');
|
|
32
|
+
const paramsObj = JSON.parse(stringyParams);
|
|
33
|
+
if (paramsObj?.search?.redirectResponse) {
|
|
34
|
+
delete paramsObj?.search?.redirectResponse;
|
|
35
|
+
}
|
|
36
|
+
if (paramsObj?.personalization) {
|
|
37
|
+
delete paramsObj?.personalization;
|
|
38
|
+
}
|
|
39
|
+
stringyParams = JSON.stringify(paramsObj);
|
|
32
40
|
const scrollMap = {};
|
|
33
41
|
scrollMap[stringyParams] = window.scrollY;
|
|
34
42
|
this.storage.set('scrollMap', scrollMap);
|
|
@@ -100,7 +108,7 @@ export class SearchController extends AbstractController {
|
|
|
100
108
|
// if params.page > 1 and infinite setting exists we should append results
|
|
101
109
|
if (this.config.settings?.infinite && params.pagination?.page > 1) {
|
|
102
110
|
// if no results fetch results...
|
|
103
|
-
let previousResults = this.store.
|
|
111
|
+
let previousResults = JSON.parse(JSON.stringify(this.store.results)) || [];
|
|
104
112
|
if (this.config.settings?.infinite.backfill && !previousResults.length) {
|
|
105
113
|
// figure out how many pages of results to backfill and wait on all responses
|
|
106
114
|
const backfills = [];
|
|
@@ -192,6 +200,12 @@ export class SearchController extends AbstractController {
|
|
|
192
200
|
};
|
|
193
201
|
// deep merge config with defaults
|
|
194
202
|
this.config = deepmerge(defaultConfig, this.config);
|
|
203
|
+
if (this.config.settings?.infinite && typeof this.config.settings.infinite.restorePosition == 'undefined') {
|
|
204
|
+
this.config.settings.infinite.restorePosition = true;
|
|
205
|
+
}
|
|
206
|
+
if (window?.history && this.config.settings?.infinite?.restorePosition) {
|
|
207
|
+
window.history.scrollRestoration = 'manual';
|
|
208
|
+
}
|
|
195
209
|
this.store.setConfig(this.config);
|
|
196
210
|
this.storage = new StorageStore({
|
|
197
211
|
type: StorageType.SESSION,
|
|
@@ -226,10 +240,17 @@ export class SearchController extends AbstractController {
|
|
|
226
240
|
await next();
|
|
227
241
|
search.controller.store.loading = false;
|
|
228
242
|
// save last params
|
|
229
|
-
|
|
230
|
-
|
|
231
|
-
if (
|
|
232
|
-
|
|
243
|
+
this.storage.set('lastStringyParams', JSON.stringify(search.request));
|
|
244
|
+
const requestParams = { ...search.request };
|
|
245
|
+
if (requestParams.personalization) {
|
|
246
|
+
delete requestParams.personalization;
|
|
247
|
+
}
|
|
248
|
+
if (requestParams?.search?.redirectResponse) {
|
|
249
|
+
delete requestParams.search.redirectResponse;
|
|
250
|
+
}
|
|
251
|
+
const stringyParams = JSON.stringify(requestParams);
|
|
252
|
+
if (this.config.settings?.infinite?.restorePosition) {
|
|
253
|
+
// restore the scroll position saved previously
|
|
233
254
|
const scrollMap = this.storage.get('scrollMap') || {};
|
|
234
255
|
// interval we ony need to keep checking until the page height > than our stored value
|
|
235
256
|
const scrollToPosition = scrollMap[stringyParams];
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@searchspring/snap-controller",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.31.0",
|
|
4
4
|
"description": "Snap Controllers",
|
|
5
5
|
"main": "dist/cjs/index.js",
|
|
6
6
|
"module": "dist/esm/index.js",
|
|
@@ -20,21 +20,21 @@
|
|
|
20
20
|
"test:watch": "jest --watch"
|
|
21
21
|
},
|
|
22
22
|
"dependencies": {
|
|
23
|
-
"@searchspring/snap-toolbox": "^0.
|
|
23
|
+
"@searchspring/snap-toolbox": "^0.31.0",
|
|
24
24
|
"deepmerge": "4.2.2"
|
|
25
25
|
},
|
|
26
26
|
"devDependencies": {
|
|
27
|
-
"@searchspring/snap-client": "^0.
|
|
28
|
-
"@searchspring/snap-event-manager": "^0.
|
|
29
|
-
"@searchspring/snap-logger": "^0.
|
|
30
|
-
"@searchspring/snap-profiler": "^0.
|
|
31
|
-
"@searchspring/snap-store-mobx": "^0.
|
|
32
|
-
"@searchspring/snap-tracker": "^0.
|
|
33
|
-
"@searchspring/snap-url-manager": "^0.
|
|
27
|
+
"@searchspring/snap-client": "^0.31.0",
|
|
28
|
+
"@searchspring/snap-event-manager": "^0.31.0",
|
|
29
|
+
"@searchspring/snap-logger": "^0.31.0",
|
|
30
|
+
"@searchspring/snap-profiler": "^0.31.0",
|
|
31
|
+
"@searchspring/snap-store-mobx": "^0.31.0",
|
|
32
|
+
"@searchspring/snap-tracker": "^0.31.0",
|
|
33
|
+
"@searchspring/snap-url-manager": "^0.31.0"
|
|
34
34
|
},
|
|
35
35
|
"sideEffects": false,
|
|
36
36
|
"files": [
|
|
37
37
|
"dist/**/*"
|
|
38
38
|
],
|
|
39
|
-
"gitHead": "
|
|
39
|
+
"gitHead": "b09e1f5eb179f8ef167d264fab4dc5234ac9f83b"
|
|
40
40
|
}
|