@searchspring/snap-store-mobx 0.21.0 → 0.23.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.
- package/dist/cjs/Autocomplete/AutocompleteStore.js +2 -1
- package/dist/cjs/Autocomplete/Stores/FacetStore.js +1 -3
- package/dist/cjs/Autocomplete/Stores/TermStore.js +1 -3
- package/dist/cjs/Autocomplete/Stores/TrendingStore.js +1 -3
- package/dist/cjs/Finder/FinderStore.js +2 -1
- package/dist/cjs/Finder/Stores/SelectionStore.js +33 -36
- package/dist/cjs/Recommendation/RecommendationStore.js +2 -1
- package/dist/cjs/Search/SearchStore.js +2 -1
- package/dist/cjs/Search/Stores/FacetStore.d.ts.map +1 -1
- package/dist/cjs/Search/Stores/FacetStore.js +14 -12
- package/dist/cjs/Search/Stores/FilterStore.js +1 -5
- package/dist/cjs/Search/Stores/ResultStore.js +1 -5
- package/dist/cjs/index.js +5 -1
- package/dist/cjs/types.d.ts +1 -0
- package/dist/cjs/types.d.ts.map +1 -1
- package/dist/esm/Finder/Stores/SelectionStore.js +32 -34
- package/dist/esm/Search/Stores/FacetStore.d.ts.map +1 -1
- package/dist/esm/Search/Stores/FacetStore.js +9 -5
- package/dist/esm/types.d.ts +1 -0
- package/dist/esm/types.d.ts.map +1 -1
- package/package.json +4 -4
|
@@ -24,8 +24,9 @@ var Stores_2 = require("./Stores");
|
|
|
24
24
|
var AutocompleteStore = /** @class */ (function (_super) {
|
|
25
25
|
__extends(AutocompleteStore, _super);
|
|
26
26
|
function AutocompleteStore(config, services) {
|
|
27
|
+
var _this = this;
|
|
27
28
|
var _a;
|
|
28
|
-
|
|
29
|
+
_this = _super.call(this, config) || this;
|
|
29
30
|
_this.meta = {};
|
|
30
31
|
if (typeof services != 'object' || typeof ((_a = services.urlManager) === null || _a === void 0 ? void 0 : _a.subscribe) != 'function') {
|
|
31
32
|
throw new Error("Invalid service 'urlManager' passed to AutocompleteStore. Missing \"subscribe\" function.");
|
|
@@ -31,7 +31,6 @@ var Stores_1 = require("../../Search/Stores");
|
|
|
31
31
|
var FacetStore = /** @class */ (function (_super) {
|
|
32
32
|
__extends(FacetStore, _super);
|
|
33
33
|
function FacetStore(config, services, storage, facetsData, paginationData, meta, rootState) {
|
|
34
|
-
var _this = this;
|
|
35
34
|
// allow for only a singular facet option selection at a time
|
|
36
35
|
var alteredServices = __assign(__assign({}, services), { urlManager: services.urlManager.remove('filter') });
|
|
37
36
|
var facets = new Stores_1.FacetStore(config, alteredServices, storage, facetsData, paginationData, meta);
|
|
@@ -54,8 +53,7 @@ var FacetStore = /** @class */ (function (_super) {
|
|
|
54
53
|
};
|
|
55
54
|
});
|
|
56
55
|
});
|
|
57
|
-
|
|
58
|
-
return _this;
|
|
56
|
+
return _super.apply(this, facets) || this;
|
|
59
57
|
}
|
|
60
58
|
Object.defineProperty(FacetStore, Symbol.species, {
|
|
61
59
|
get: function () {
|
|
@@ -30,7 +30,6 @@ var TermStore = /** @class */ (function (_super) {
|
|
|
30
30
|
__extends(TermStore, _super);
|
|
31
31
|
function TermStore(services, autocomplete, paginationData, resetTerms, rootState) {
|
|
32
32
|
var _a;
|
|
33
|
-
var _this = this;
|
|
34
33
|
var suggestions = __spreadArray([], ((autocomplete === null || autocomplete === void 0 ? void 0 : autocomplete.alternatives) ? autocomplete.alternatives : []).map(function (term) { return term.text; }), true);
|
|
35
34
|
if ((_a = autocomplete === null || autocomplete === void 0 ? void 0 : autocomplete.suggested) === null || _a === void 0 ? void 0 : _a.text) {
|
|
36
35
|
suggestions.unshift(autocomplete.suggested.text);
|
|
@@ -45,8 +44,7 @@ var TermStore = /** @class */ (function (_super) {
|
|
|
45
44
|
value: term,
|
|
46
45
|
}, terms, resetTerms, rootState));
|
|
47
46
|
});
|
|
48
|
-
|
|
49
|
-
return _this;
|
|
47
|
+
return _super.apply(this, terms) || this;
|
|
50
48
|
}
|
|
51
49
|
Object.defineProperty(TermStore, Symbol.species, {
|
|
52
50
|
get: function () {
|
|
@@ -21,7 +21,6 @@ var TrendingStore = /** @class */ (function (_super) {
|
|
|
21
21
|
__extends(TrendingStore, _super);
|
|
22
22
|
function TrendingStore(services, trendingData, resetTerms, rootState) {
|
|
23
23
|
var _a;
|
|
24
|
-
var _this = this;
|
|
25
24
|
var terms = [];
|
|
26
25
|
(_a = trendingData === null || trendingData === void 0 ? void 0 : trendingData.queries) === null || _a === void 0 ? void 0 : _a.map(function (term) {
|
|
27
26
|
terms.push(new TermStore_1.Term(services, {
|
|
@@ -29,8 +28,7 @@ var TrendingStore = /** @class */ (function (_super) {
|
|
|
29
28
|
value: term.searchQuery,
|
|
30
29
|
}, terms, resetTerms, rootState));
|
|
31
30
|
});
|
|
32
|
-
|
|
33
|
-
return _this;
|
|
31
|
+
return _super.apply(this, terms) || this;
|
|
34
32
|
}
|
|
35
33
|
Object.defineProperty(TrendingStore, Symbol.species, {
|
|
36
34
|
get: function () {
|
|
@@ -24,8 +24,9 @@ var Stores_2 = require("./Stores");
|
|
|
24
24
|
var FinderStore = /** @class */ (function (_super) {
|
|
25
25
|
__extends(FinderStore, _super);
|
|
26
26
|
function FinderStore(config, services) {
|
|
27
|
+
var _this = this;
|
|
27
28
|
var _a;
|
|
28
|
-
|
|
29
|
+
_this = _super.call(this, config) || this;
|
|
29
30
|
_this.meta = {};
|
|
30
31
|
if (typeof services != 'object' || typeof ((_a = services.urlManager) === null || _a === void 0 ? void 0 : _a.subscribe) != 'function') {
|
|
31
32
|
throw new Error("Invalid service 'urlManager' passed to AutocompleteStore. Missing \"subscribe\" function.");
|
|
@@ -40,44 +40,40 @@ var SelectionStore = /** @class */ (function (_super) {
|
|
|
40
40
|
__extends(SelectionStore, _super);
|
|
41
41
|
function SelectionStore(config, services, facets, meta, loading, storage) {
|
|
42
42
|
var _a;
|
|
43
|
-
var _this = this;
|
|
44
|
-
if (!facets || !meta) {
|
|
45
|
-
_this = _super.call(this) || this;
|
|
46
|
-
return;
|
|
47
|
-
}
|
|
48
|
-
// re-order facets to match our config
|
|
49
|
-
(config === null || config === void 0 ? void 0 : config.fields) &&
|
|
50
|
-
facets.sort(function (a, b) {
|
|
51
|
-
var fields = config.fields.map(function (fieldConfig) { return fieldConfig.field; });
|
|
52
|
-
return fields.indexOf(a.field) - fields.indexOf(b.field);
|
|
53
|
-
});
|
|
54
43
|
var selections = [];
|
|
55
|
-
(
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
44
|
+
if (facets && meta) {
|
|
45
|
+
// re-order facets to match our config
|
|
46
|
+
(config === null || config === void 0 ? void 0 : config.fields) &&
|
|
47
|
+
facets.sort(function (a, b) {
|
|
48
|
+
var fields = config.fields.map(function (fieldConfig) { return fieldConfig.field; });
|
|
49
|
+
return fields.indexOf(a.field) - fields.indexOf(b.field);
|
|
50
|
+
});
|
|
51
|
+
(_a = config === null || config === void 0 ? void 0 : config.fields) === null || _a === void 0 ? void 0 : _a.forEach(function (fieldObj) {
|
|
52
|
+
var _a;
|
|
53
|
+
var facet = facets === null || facets === void 0 ? void 0 : facets.filter(function (facet) { return facet.field == fieldObj.field; }).pop();
|
|
54
|
+
facet = __assign(__assign({}, meta === null || meta === void 0 ? void 0 : meta.facets[fieldObj.field]), facet);
|
|
55
|
+
var isHierarchy = facet.display === 'hierarchy';
|
|
56
|
+
if (isHierarchy) {
|
|
57
|
+
// filter out history/current hierarchy values
|
|
58
|
+
var filtered = facet.filtered && facet.values.filter(function (value) { return value.filtered; }).pop();
|
|
59
|
+
if (filtered) {
|
|
60
|
+
var filteredLevel_1 = filtered.value.split(facet.hierarchyDelimiter).length;
|
|
61
|
+
facet.values = facet.values.filter(function (value, index) {
|
|
62
|
+
return (value.value && value.value.split(facet.hierarchyDelimiter).length > filteredLevel_1) || index == facet.values.length - 1;
|
|
63
|
+
});
|
|
64
|
+
}
|
|
65
|
+
var levels = (fieldObj === null || fieldObj === void 0 ? void 0 : fieldObj.levels) || ((_a = facet === null || facet === void 0 ? void 0 : facet.values[(facet === null || facet === void 0 ? void 0 : facet.values.length) - 1]) === null || _a === void 0 ? void 0 : _a.value.split(facet.hierarchyDelimiter));
|
|
66
|
+
levels === null || levels === void 0 ? void 0 : levels.map(function (level, index) {
|
|
67
|
+
var levelConfig = { index: index, label: fieldObj.levels ? level : '', key: "ss-".concat(index) };
|
|
68
|
+
selections.push(new SelectionHierarchy(services, config.id, facet, levelConfig, loading, storage));
|
|
67
69
|
});
|
|
68
70
|
}
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
else {
|
|
76
|
-
selections.push(new Selection(services, config.id, facet, fieldObj, loading, storage));
|
|
77
|
-
}
|
|
78
|
-
});
|
|
79
|
-
_this = _super.apply(this, selections) || this;
|
|
80
|
-
return _this;
|
|
71
|
+
else {
|
|
72
|
+
selections.push(new Selection(services, config.id, facet, fieldObj, loading, storage));
|
|
73
|
+
}
|
|
74
|
+
});
|
|
75
|
+
}
|
|
76
|
+
return _super.apply(this, selections) || this;
|
|
81
77
|
}
|
|
82
78
|
Object.defineProperty(SelectionStore, Symbol.species, {
|
|
83
79
|
get: function () {
|
|
@@ -168,8 +164,9 @@ var Selection = /** @class */ (function (_super) {
|
|
|
168
164
|
var SelectionHierarchy = /** @class */ (function (_super) {
|
|
169
165
|
__extends(SelectionHierarchy, _super);
|
|
170
166
|
function SelectionHierarchy(services, id, facet, config, loading, storageStore) {
|
|
167
|
+
var _this = this;
|
|
171
168
|
var _a, _b, _c;
|
|
172
|
-
|
|
169
|
+
_this = _super.call(this, services, id, facet, config, loading, storageStore) || this;
|
|
173
170
|
// inherit additional facet properties
|
|
174
171
|
_this.hierarchyDelimiter = facet.hierarchyDelimiter;
|
|
175
172
|
var storageData = _this.storage.get();
|
|
@@ -23,8 +23,9 @@ var Stores_2 = require("./Stores");
|
|
|
23
23
|
var RecommendationStore = /** @class */ (function (_super) {
|
|
24
24
|
__extends(RecommendationStore, _super);
|
|
25
25
|
function RecommendationStore(config, services) {
|
|
26
|
+
var _this = this;
|
|
26
27
|
var _a;
|
|
27
|
-
|
|
28
|
+
_this = _super.call(this, config) || this;
|
|
28
29
|
_this.loaded = false;
|
|
29
30
|
if (typeof services != 'object' || typeof ((_a = services.urlManager) === null || _a === void 0 ? void 0 : _a.subscribe) != 'function') {
|
|
30
31
|
throw new Error("Invalid service 'urlManager' passed to AutocompleteStore. Missing \"subscribe\" function.");
|
|
@@ -23,8 +23,9 @@ var StorageStore_1 = require("../Storage/StorageStore");
|
|
|
23
23
|
var SearchStore = /** @class */ (function (_super) {
|
|
24
24
|
__extends(SearchStore, _super);
|
|
25
25
|
function SearchStore(config, services) {
|
|
26
|
+
var _this = this;
|
|
26
27
|
var _a;
|
|
27
|
-
|
|
28
|
+
_this = _super.call(this, config) || this;
|
|
28
29
|
_this.meta = {};
|
|
29
30
|
if (typeof services != 'object' || typeof ((_a = services.urlManager) === null || _a === void 0 ? void 0 : _a.subscribe) != 'function') {
|
|
30
31
|
throw new Error("Invalid service 'urlManager' passed to SearchStore. Missing \"subscribe\" function.");
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FacetStore.d.ts","sourceRoot":"","sources":["../../../../src/Search/Stores/FacetStore.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAC/D,OAAO,KAAK,EAAE,uBAAuB,EAAE,iBAAiB,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAC7F,OAAO,KAAK,EACX,iBAAiB,EAMjB,6BAA6B,EAC7B,wBAAwB,EAMxB,MAAM,2BAA2B,CAAC;AAEnC,qBAAa,UAAW,SAAQ,KAAK;IACpC,MAAM,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,gBAAgB,CAE9C;gBAEA,MAAM,EAAE,iBAAiB,GAAG,uBAAuB,EACnD,QAAQ,EAAE,aAAa,EACvB,OAAO,EAAE,YAAY,EACrB,UAAU,EAAE,wBAAwB,EAAO,EAC3C,UAAU,EAAE,6BAA6B,EACzC,IAAI,EAAE,iBAAiB;
|
|
1
|
+
{"version":3,"file":"FacetStore.d.ts","sourceRoot":"","sources":["../../../../src/Search/Stores/FacetStore.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAC/D,OAAO,KAAK,EAAE,uBAAuB,EAAE,iBAAiB,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAC7F,OAAO,KAAK,EACX,iBAAiB,EAMjB,6BAA6B,EAC7B,wBAAwB,EAMxB,MAAM,2BAA2B,CAAC;AAEnC,qBAAa,UAAW,SAAQ,KAAK;IACpC,MAAM,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,gBAAgB,CAE9C;gBAEA,MAAM,EAAE,iBAAiB,GAAG,uBAAuB,EACnD,QAAQ,EAAE,aAAa,EACvB,OAAO,EAAE,YAAY,EACrB,UAAU,EAAE,wBAAwB,EAAO,EAC3C,UAAU,EAAE,6BAA6B,EACzC,IAAI,EAAE,iBAAiB;CA4CxB"}
|
|
@@ -21,17 +21,20 @@ var FacetStore = /** @class */ (function (_super) {
|
|
|
21
21
|
__extends(FacetStore, _super);
|
|
22
22
|
function FacetStore(config, services, storage, facetsData, pagination, meta) {
|
|
23
23
|
if (facetsData === void 0) { facetsData = []; }
|
|
24
|
-
var _this = this;
|
|
25
24
|
var facets = facetsData
|
|
26
25
|
.filter(function (facet) {
|
|
27
26
|
var _a, _b, _c, _d;
|
|
28
27
|
var facetMeta = meta.facets[facet.field];
|
|
28
|
+
// exclude facets that have no meta data
|
|
29
|
+
if (!facetMeta)
|
|
30
|
+
return false;
|
|
31
|
+
// exclude facets that have mismatched meta data
|
|
32
|
+
if ((facetMeta.display == 'slider' && facet.type !== 'range') || (facet.type == 'range' && facetMeta.display !== 'slider')) {
|
|
33
|
+
return false;
|
|
34
|
+
}
|
|
35
|
+
// trim facets - remove facets that have no use
|
|
29
36
|
if ((_b = (_a = config.settings) === null || _a === void 0 ? void 0 : _a.facets) === null || _b === void 0 ? void 0 : _b.trim) {
|
|
30
|
-
if (
|
|
31
|
-
return false;
|
|
32
|
-
}
|
|
33
|
-
else if (facet.type === 'range' &&
|
|
34
|
-
facet.range.low == facet.range.high) {
|
|
37
|
+
if (facet.type === 'range' && facet.range.low == facet.range.high) {
|
|
35
38
|
return false;
|
|
36
39
|
}
|
|
37
40
|
else if (((_c = facet.values) === null || _c === void 0 ? void 0 : _c.length) == 0) {
|
|
@@ -54,10 +57,7 @@ var FacetStore = /** @class */ (function (_super) {
|
|
|
54
57
|
return new ValueFacet(config, services, storage, facet, facetMeta);
|
|
55
58
|
}
|
|
56
59
|
});
|
|
57
|
-
|
|
58
|
-
// @ts-ignore
|
|
59
|
-
_this = _super.apply(this, facets) || this;
|
|
60
|
-
return _this;
|
|
60
|
+
return _super.apply(this, facets) || this;
|
|
61
61
|
}
|
|
62
62
|
Object.defineProperty(FacetStore, Symbol.species, {
|
|
63
63
|
get: function () {
|
|
@@ -153,8 +153,9 @@ var RangeFacet = /** @class */ (function (_super) {
|
|
|
153
153
|
var ValueFacet = /** @class */ (function (_super) {
|
|
154
154
|
__extends(ValueFacet, _super);
|
|
155
155
|
function ValueFacet(config, services, storage, facet, facetMeta) {
|
|
156
|
+
var _this = this;
|
|
156
157
|
var _a, _b;
|
|
157
|
-
|
|
158
|
+
_this = _super.call(this, services, storage, facet, facetMeta) || this;
|
|
158
159
|
_this.values = [];
|
|
159
160
|
_this.search = {
|
|
160
161
|
input: '',
|
|
@@ -275,8 +276,9 @@ var Value = /** @class */ (function () {
|
|
|
275
276
|
var HierarchyValue = /** @class */ (function (_super) {
|
|
276
277
|
__extends(HierarchyValue, _super);
|
|
277
278
|
function HierarchyValue(services, facet, value, filteredValues) {
|
|
279
|
+
var _this = this;
|
|
278
280
|
var _a, _b;
|
|
279
|
-
|
|
281
|
+
_this = _super.call(this, services, facet, value) || this;
|
|
280
282
|
_this.level = 0;
|
|
281
283
|
_this.history = false;
|
|
282
284
|
if (value.value && facet.hierarchyDelimiter) {
|
|
@@ -21,7 +21,6 @@ var FilterStore = /** @class */ (function (_super) {
|
|
|
21
21
|
__extends(FilterStore, _super);
|
|
22
22
|
function FilterStore(services, filtersData, meta) {
|
|
23
23
|
if (filtersData === void 0) { filtersData = []; }
|
|
24
|
-
var _this = this;
|
|
25
24
|
var filters = filtersData.map(function (filter) {
|
|
26
25
|
var facetMeta = meta.facets[filter.field];
|
|
27
26
|
switch (filter.type) {
|
|
@@ -53,10 +52,7 @@ var FilterStore = /** @class */ (function (_super) {
|
|
|
53
52
|
});
|
|
54
53
|
}
|
|
55
54
|
});
|
|
56
|
-
|
|
57
|
-
// @ts-ignore
|
|
58
|
-
_this = _super.apply(this, filters) || this;
|
|
59
|
-
return _this;
|
|
55
|
+
return _super.apply(this, filters) || this;
|
|
60
56
|
}
|
|
61
57
|
Object.defineProperty(FilterStore, Symbol.species, {
|
|
62
58
|
get: function () {
|
|
@@ -32,7 +32,6 @@ var ResultStore = /** @class */ (function (_super) {
|
|
|
32
32
|
__extends(ResultStore, _super);
|
|
33
33
|
function ResultStore(config, services, resultData, paginationData, merchData) {
|
|
34
34
|
var _a;
|
|
35
|
-
var _this = this;
|
|
36
35
|
var results = (resultData || []).map(function (result) {
|
|
37
36
|
return new Product(services, result);
|
|
38
37
|
});
|
|
@@ -48,10 +47,7 @@ var ResultStore = /** @class */ (function (_super) {
|
|
|
48
47
|
results = addBannersToResults(config, results, banners, paginationData);
|
|
49
48
|
}
|
|
50
49
|
}
|
|
51
|
-
|
|
52
|
-
// @ts-ignore
|
|
53
|
-
_this = _super.apply(this, results) || this;
|
|
54
|
-
return _this;
|
|
50
|
+
return _super.apply(this, results) || this;
|
|
55
51
|
}
|
|
56
52
|
Object.defineProperty(ResultStore, Symbol.species, {
|
|
57
53
|
get: function () {
|
package/dist/cjs/index.js
CHANGED
|
@@ -1,7 +1,11 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
3
|
if (k2 === undefined) k2 = k;
|
|
4
|
-
Object.
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
5
9
|
}) : (function(o, m, k, k2) {
|
|
6
10
|
if (k2 === undefined) k2 = k;
|
|
7
11
|
o[k2] = m[k];
|
package/dist/cjs/types.d.ts
CHANGED
package/dist/cjs/types.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,gCAAgC,CAAC;AAGjE,oBAAY,WAAW,GAAG;IACzB,EAAE,EAAE,MAAM,CAAC;IACX,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CACvB,CAAC;AAGF,oBAAY,iBAAiB,GAAG,WAAW,GAAG;IAC7C,OAAO,CAAC,EAAE;QACT,eAAe,CAAC,EAAE;YACjB,QAAQ,EAAE,OAAO,CAAC;SAClB,CAAC;QACF,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;KACvB,CAAC;IACF,QAAQ,CAAC,EAAE;QACV,SAAS,CAAC,EAAE;YACX,aAAa,CAAC,EAAE,OAAO,CAAC;YACxB,YAAY,CAAC,EAAE,OAAO,CAAC;SACvB,CAAC;QACF,MAAM,CAAC,EAAE;YACR,IAAI,CAAC,EAAE,OAAO,CAAC;YACf,WAAW,CAAC,EAAE,OAAO,CAAC;SACtB,CAAC;QACF,QAAQ,CAAC,EAAE;YACV,QAAQ,CAAC,EAAE,MAAM,CAAC;SAClB,CAAC;KACF,CAAC;CACF,CAAC;AAGF,oBAAY,iBAAiB,GAAG,WAAW,GAAG;IAC7C,OAAO,CAAC,EAAE,GAAG,CAAC;IACd,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,iBAAiB,EAAE,CAAC;CAC5B,CAAC;AAEF,oBAAY,iBAAiB,GAAG;IAC/B,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC;CAClB,CAAC;AAGF,oBAAY,uBAAuB,GAAG,WAAW,GAAG;IACnD,OAAO,CAAC,EAAE;QACT,eAAe,CAAC,EAAE;YACjB,QAAQ,EAAE,OAAO,CAAC;SAClB,CAAC;QACF,MAAM,CAAC,EAAE;YACR,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;YACvB,KAAK,CAAC,EAAE;gBACP,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;gBACvB,eAAe,CAAC,EAAE,OAAO,CAAC;aAC1B,CAAC;SACF,CAAC;QACF,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;KACvB,CAAC;IACF,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE;QACV,iBAAiB,CAAC,EAAE,OAAO,CAAC;QAC5B,UAAU,CAAC,EAAE,OAAO,CAAC;QACrB,MAAM,CAAC,EAAE;YACR,IAAI,CAAC,EAAE,OAAO,CAAC;YACf,WAAW,CAAC,EAAE,OAAO,CAAC;SACtB,CAAC;QACF,QAAQ,CAAC,EAAE;YACV,KAAK,EAAE,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,gCAAgC,CAAC;AAGjE,oBAAY,WAAW,GAAG;IACzB,EAAE,EAAE,MAAM,CAAC;IACX,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CACvB,CAAC;AAGF,oBAAY,iBAAiB,GAAG,WAAW,GAAG;IAC7C,OAAO,CAAC,EAAE;QACT,eAAe,CAAC,EAAE;YACjB,QAAQ,EAAE,OAAO,CAAC;SAClB,CAAC;QACF,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;KACvB,CAAC;IACF,QAAQ,CAAC,EAAE;QACV,SAAS,CAAC,EAAE;YACX,aAAa,CAAC,EAAE,OAAO,CAAC;YACxB,YAAY,CAAC,EAAE,OAAO,CAAC;SACvB,CAAC;QACF,MAAM,CAAC,EAAE;YACR,IAAI,CAAC,EAAE,OAAO,CAAC;YACf,WAAW,CAAC,EAAE,OAAO,CAAC;SACtB,CAAC;QACF,QAAQ,CAAC,EAAE;YACV,QAAQ,CAAC,EAAE,MAAM,CAAC;SAClB,CAAC;KACF,CAAC;CACF,CAAC;AAGF,oBAAY,iBAAiB,GAAG,WAAW,GAAG;IAC7C,OAAO,CAAC,EAAE,GAAG,CAAC;IACd,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,iBAAiB,EAAE,CAAC;CAC5B,CAAC;AAEF,oBAAY,iBAAiB,GAAG;IAC/B,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC;CAClB,CAAC;AAGF,oBAAY,uBAAuB,GAAG,WAAW,GAAG;IACnD,OAAO,CAAC,EAAE;QACT,eAAe,CAAC,EAAE;YACjB,QAAQ,EAAE,OAAO,CAAC;SAClB,CAAC;QACF,MAAM,CAAC,EAAE;YACR,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;YACvB,KAAK,CAAC,EAAE;gBACP,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;gBACvB,eAAe,CAAC,EAAE,OAAO,CAAC;aAC1B,CAAC;SACF,CAAC;QACF,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;KACvB,CAAC;IACF,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE;QACV,iBAAiB,CAAC,EAAE,OAAO,CAAC;QAC5B,UAAU,CAAC,EAAE,OAAO,CAAC;QACrB,MAAM,CAAC,EAAE;YACR,IAAI,CAAC,EAAE,OAAO,CAAC;YACf,WAAW,CAAC,EAAE,OAAO,CAAC;SACtB,CAAC;QACF,QAAQ,CAAC,EAAE;YACV,KAAK,EAAE,MAAM,CAAC;YACd,WAAW,CAAC,EAAE,OAAO,CAAC;SACtB,CAAC;KACF,CAAC;CACF,CAAC;AAGF,oBAAY,yBAAyB,GAAG,WAAW,GAAG;IACrD,OAAO,CAAC,EAAE,GAAG,CAAC;IACd,GAAG,EAAE,MAAM,CAAC;IACZ,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,OAAO,CAAC,EAAE,OAAO,CAAC;CAClB,CAAC;AAEF,oBAAY,YAAY,GAAG,iBAAiB,GAAG,uBAAuB,GAAG,iBAAiB,GAAG,yBAAyB,CAAC;AAEvH,oBAAY,aAAa,GAAG;IAC3B,UAAU,CAAC,EAAE,UAAU,CAAC;CACxB,CAAC;AAEF,oBAAY,SAAS;IACpB,OAAO,YAAY;IACnB,IAAI,SAAS;IACb,KAAK,UAAU;CACf"}
|
|
@@ -3,43 +3,41 @@ export class SelectionStore extends Array {
|
|
|
3
3
|
return Array;
|
|
4
4
|
}
|
|
5
5
|
constructor(config, services, facets, meta, loading, storage) {
|
|
6
|
-
if (!facets || !meta) {
|
|
7
|
-
super();
|
|
8
|
-
return;
|
|
9
|
-
}
|
|
10
|
-
// re-order facets to match our config
|
|
11
|
-
config?.fields &&
|
|
12
|
-
facets.sort((a, b) => {
|
|
13
|
-
const fields = config.fields.map((fieldConfig) => fieldConfig.field);
|
|
14
|
-
return fields.indexOf(a.field) - fields.indexOf(b.field);
|
|
15
|
-
});
|
|
16
6
|
const selections = [];
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
7
|
+
if (facets && meta) {
|
|
8
|
+
// re-order facets to match our config
|
|
9
|
+
config?.fields &&
|
|
10
|
+
facets.sort((a, b) => {
|
|
11
|
+
const fields = config.fields.map((fieldConfig) => fieldConfig.field);
|
|
12
|
+
return fields.indexOf(a.field) - fields.indexOf(b.field);
|
|
13
|
+
});
|
|
14
|
+
config?.fields?.forEach((fieldObj) => {
|
|
15
|
+
let facet = facets?.filter((facet) => facet.field == fieldObj.field).pop();
|
|
16
|
+
facet = {
|
|
17
|
+
...meta?.facets[fieldObj.field],
|
|
18
|
+
...facet,
|
|
19
|
+
};
|
|
20
|
+
const isHierarchy = facet.display === 'hierarchy';
|
|
21
|
+
if (isHierarchy) {
|
|
22
|
+
// filter out history/current hierarchy values
|
|
23
|
+
const filtered = facet.filtered && facet.values.filter((value) => value.filtered).pop();
|
|
24
|
+
if (filtered) {
|
|
25
|
+
const filteredLevel = filtered.value.split(facet.hierarchyDelimiter).length;
|
|
26
|
+
facet.values = facet.values.filter((value, index) => {
|
|
27
|
+
return (value.value && value.value.split(facet.hierarchyDelimiter).length > filteredLevel) || index == facet.values.length - 1;
|
|
28
|
+
});
|
|
29
|
+
}
|
|
30
|
+
const levels = fieldObj?.levels || facet?.values[facet?.values.length - 1]?.value.split(facet.hierarchyDelimiter);
|
|
31
|
+
levels?.map((level, index) => {
|
|
32
|
+
const levelConfig = { index, label: fieldObj.levels ? level : '', key: `ss-${index}` };
|
|
33
|
+
selections.push(new SelectionHierarchy(services, config.id, facet, levelConfig, loading, storage));
|
|
31
34
|
});
|
|
32
35
|
}
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
}
|
|
39
|
-
else {
|
|
40
|
-
selections.push(new Selection(services, config.id, facet, fieldObj, loading, storage));
|
|
41
|
-
}
|
|
42
|
-
});
|
|
36
|
+
else {
|
|
37
|
+
selections.push(new Selection(services, config.id, facet, fieldObj, loading, storage));
|
|
38
|
+
}
|
|
39
|
+
});
|
|
40
|
+
}
|
|
43
41
|
super(...selections);
|
|
44
42
|
}
|
|
45
43
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FacetStore.d.ts","sourceRoot":"","sources":["../../../../src/Search/Stores/FacetStore.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAC/D,OAAO,KAAK,EAAE,uBAAuB,EAAE,iBAAiB,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAC7F,OAAO,KAAK,EACX,iBAAiB,EAMjB,6BAA6B,EAC7B,wBAAwB,EAMxB,MAAM,2BAA2B,CAAC;AAEnC,qBAAa,UAAW,SAAQ,KAAK;IACpC,MAAM,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,gBAAgB,CAE9C;gBAEA,MAAM,EAAE,iBAAiB,GAAG,uBAAuB,EACnD,QAAQ,EAAE,aAAa,EACvB,OAAO,EAAE,YAAY,EACrB,UAAU,EAAE,wBAAwB,EAAO,EAC3C,UAAU,EAAE,6BAA6B,EACzC,IAAI,EAAE,iBAAiB;
|
|
1
|
+
{"version":3,"file":"FacetStore.d.ts","sourceRoot":"","sources":["../../../../src/Search/Stores/FacetStore.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAC/D,OAAO,KAAK,EAAE,uBAAuB,EAAE,iBAAiB,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAC7F,OAAO,KAAK,EACX,iBAAiB,EAMjB,6BAA6B,EAC7B,wBAAwB,EAMxB,MAAM,2BAA2B,CAAC;AAEnC,qBAAa,UAAW,SAAQ,KAAK;IACpC,MAAM,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,gBAAgB,CAE9C;gBAEA,MAAM,EAAE,iBAAiB,GAAG,uBAAuB,EACnD,QAAQ,EAAE,aAAa,EACvB,OAAO,EAAE,YAAY,EACrB,UAAU,EAAE,wBAAwB,EAAO,EAC3C,UAAU,EAAE,6BAA6B,EACzC,IAAI,EAAE,iBAAiB;CA4CxB"}
|
|
@@ -7,12 +7,16 @@ export class FacetStore extends Array {
|
|
|
7
7
|
const facets = facetsData
|
|
8
8
|
.filter((facet) => {
|
|
9
9
|
const facetMeta = meta.facets[facet.field];
|
|
10
|
+
// exclude facets that have no meta data
|
|
11
|
+
if (!facetMeta)
|
|
12
|
+
return false;
|
|
13
|
+
// exclude facets that have mismatched meta data
|
|
14
|
+
if ((facetMeta.display == 'slider' && facet.type !== 'range') || (facet.type == 'range' && facetMeta.display !== 'slider')) {
|
|
15
|
+
return false;
|
|
16
|
+
}
|
|
17
|
+
// trim facets - remove facets that have no use
|
|
10
18
|
if (config.settings?.facets?.trim) {
|
|
11
|
-
if (
|
|
12
|
-
return false;
|
|
13
|
-
}
|
|
14
|
-
else if (facet.type === 'range' &&
|
|
15
|
-
facet.range.low == facet.range.high) {
|
|
19
|
+
if (facet.type === 'range' && facet.range.low == facet.range.high) {
|
|
16
20
|
return false;
|
|
17
21
|
}
|
|
18
22
|
else if (facet.values?.length == 0) {
|
package/dist/esm/types.d.ts
CHANGED
package/dist/esm/types.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,gCAAgC,CAAC;AAGjE,oBAAY,WAAW,GAAG;IACzB,EAAE,EAAE,MAAM,CAAC;IACX,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CACvB,CAAC;AAGF,oBAAY,iBAAiB,GAAG,WAAW,GAAG;IAC7C,OAAO,CAAC,EAAE;QACT,eAAe,CAAC,EAAE;YACjB,QAAQ,EAAE,OAAO,CAAC;SAClB,CAAC;QACF,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;KACvB,CAAC;IACF,QAAQ,CAAC,EAAE;QACV,SAAS,CAAC,EAAE;YACX,aAAa,CAAC,EAAE,OAAO,CAAC;YACxB,YAAY,CAAC,EAAE,OAAO,CAAC;SACvB,CAAC;QACF,MAAM,CAAC,EAAE;YACR,IAAI,CAAC,EAAE,OAAO,CAAC;YACf,WAAW,CAAC,EAAE,OAAO,CAAC;SACtB,CAAC;QACF,QAAQ,CAAC,EAAE;YACV,QAAQ,CAAC,EAAE,MAAM,CAAC;SAClB,CAAC;KACF,CAAC;CACF,CAAC;AAGF,oBAAY,iBAAiB,GAAG,WAAW,GAAG;IAC7C,OAAO,CAAC,EAAE,GAAG,CAAC;IACd,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,iBAAiB,EAAE,CAAC;CAC5B,CAAC;AAEF,oBAAY,iBAAiB,GAAG;IAC/B,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC;CAClB,CAAC;AAGF,oBAAY,uBAAuB,GAAG,WAAW,GAAG;IACnD,OAAO,CAAC,EAAE;QACT,eAAe,CAAC,EAAE;YACjB,QAAQ,EAAE,OAAO,CAAC;SAClB,CAAC;QACF,MAAM,CAAC,EAAE;YACR,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;YACvB,KAAK,CAAC,EAAE;gBACP,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;gBACvB,eAAe,CAAC,EAAE,OAAO,CAAC;aAC1B,CAAC;SACF,CAAC;QACF,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;KACvB,CAAC;IACF,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE;QACV,iBAAiB,CAAC,EAAE,OAAO,CAAC;QAC5B,UAAU,CAAC,EAAE,OAAO,CAAC;QACrB,MAAM,CAAC,EAAE;YACR,IAAI,CAAC,EAAE,OAAO,CAAC;YACf,WAAW,CAAC,EAAE,OAAO,CAAC;SACtB,CAAC;QACF,QAAQ,CAAC,EAAE;YACV,KAAK,EAAE,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,gCAAgC,CAAC;AAGjE,oBAAY,WAAW,GAAG;IACzB,EAAE,EAAE,MAAM,CAAC;IACX,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CACvB,CAAC;AAGF,oBAAY,iBAAiB,GAAG,WAAW,GAAG;IAC7C,OAAO,CAAC,EAAE;QACT,eAAe,CAAC,EAAE;YACjB,QAAQ,EAAE,OAAO,CAAC;SAClB,CAAC;QACF,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;KACvB,CAAC;IACF,QAAQ,CAAC,EAAE;QACV,SAAS,CAAC,EAAE;YACX,aAAa,CAAC,EAAE,OAAO,CAAC;YACxB,YAAY,CAAC,EAAE,OAAO,CAAC;SACvB,CAAC;QACF,MAAM,CAAC,EAAE;YACR,IAAI,CAAC,EAAE,OAAO,CAAC;YACf,WAAW,CAAC,EAAE,OAAO,CAAC;SACtB,CAAC;QACF,QAAQ,CAAC,EAAE;YACV,QAAQ,CAAC,EAAE,MAAM,CAAC;SAClB,CAAC;KACF,CAAC;CACF,CAAC;AAGF,oBAAY,iBAAiB,GAAG,WAAW,GAAG;IAC7C,OAAO,CAAC,EAAE,GAAG,CAAC;IACd,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,iBAAiB,EAAE,CAAC;CAC5B,CAAC;AAEF,oBAAY,iBAAiB,GAAG;IAC/B,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC;CAClB,CAAC;AAGF,oBAAY,uBAAuB,GAAG,WAAW,GAAG;IACnD,OAAO,CAAC,EAAE;QACT,eAAe,CAAC,EAAE;YACjB,QAAQ,EAAE,OAAO,CAAC;SAClB,CAAC;QACF,MAAM,CAAC,EAAE;YACR,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;YACvB,KAAK,CAAC,EAAE;gBACP,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;gBACvB,eAAe,CAAC,EAAE,OAAO,CAAC;aAC1B,CAAC;SACF,CAAC;QACF,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;KACvB,CAAC;IACF,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE;QACV,iBAAiB,CAAC,EAAE,OAAO,CAAC;QAC5B,UAAU,CAAC,EAAE,OAAO,CAAC;QACrB,MAAM,CAAC,EAAE;YACR,IAAI,CAAC,EAAE,OAAO,CAAC;YACf,WAAW,CAAC,EAAE,OAAO,CAAC;SACtB,CAAC;QACF,QAAQ,CAAC,EAAE;YACV,KAAK,EAAE,MAAM,CAAC;YACd,WAAW,CAAC,EAAE,OAAO,CAAC;SACtB,CAAC;KACF,CAAC;CACF,CAAC;AAGF,oBAAY,yBAAyB,GAAG,WAAW,GAAG;IACrD,OAAO,CAAC,EAAE,GAAG,CAAC;IACd,GAAG,EAAE,MAAM,CAAC;IACZ,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,OAAO,CAAC,EAAE,OAAO,CAAC;CAClB,CAAC;AAEF,oBAAY,YAAY,GAAG,iBAAiB,GAAG,uBAAuB,GAAG,iBAAiB,GAAG,yBAAyB,CAAC;AAEvH,oBAAY,aAAa,GAAG;IAC3B,UAAU,CAAC,EAAE,UAAU,CAAC;CACxB,CAAC;AAEF,oBAAY,SAAS;IACpB,OAAO,YAAY;IACnB,IAAI,SAAS;IACb,KAAK,UAAU;CACf"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@searchspring/snap-store-mobx",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.23.0",
|
|
4
4
|
"description": "Snap MobX Store",
|
|
5
5
|
"main": "dist/cjs/index.js",
|
|
6
6
|
"module": "dist/esm/index.js",
|
|
@@ -20,15 +20,15 @@
|
|
|
20
20
|
"test:watch": "jest --watch"
|
|
21
21
|
},
|
|
22
22
|
"dependencies": {
|
|
23
|
-
"@searchspring/snap-toolbox": "^0.
|
|
23
|
+
"@searchspring/snap-toolbox": "^0.23.0",
|
|
24
24
|
"mobx": "^6.3.12"
|
|
25
25
|
},
|
|
26
26
|
"devDependencies": {
|
|
27
|
-
"@searchspring/snap-url-manager": "^0.
|
|
27
|
+
"@searchspring/snap-url-manager": "^0.23.0"
|
|
28
28
|
},
|
|
29
29
|
"sideEffects": false,
|
|
30
30
|
"files": [
|
|
31
31
|
"dist/**/*"
|
|
32
32
|
],
|
|
33
|
-
"gitHead": "
|
|
33
|
+
"gitHead": "1b80d38743b8d123b7f597d4defd81a4263f1122"
|
|
34
34
|
}
|