@searchspring/snap-store-mobx 0.20.5 → 0.22.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.
@@ -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
- var _this = _super.call(this, config) || this;
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
- _this = _super.apply(this, facets) || this;
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
- _this = _super.apply(this, terms) || this;
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
- _this = _super.apply(this, terms) || this;
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
- var _this = _super.call(this, config) || this;
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
- (_a = config === null || config === void 0 ? void 0 : config.fields) === null || _a === void 0 ? void 0 : _a.forEach(function (fieldObj) {
56
- var _a;
57
- var facet = facets === null || facets === void 0 ? void 0 : facets.filter(function (facet) { return facet.field == fieldObj.field; }).pop();
58
- facet = __assign(__assign({}, meta === null || meta === void 0 ? void 0 : meta.facets[fieldObj.field]), facet);
59
- var isHierarchy = facet.display === 'hierarchy';
60
- if (isHierarchy) {
61
- // filter out history/current hierarchy values
62
- var filtered = facet.filtered && facet.values.filter(function (value) { return value.filtered; }).pop();
63
- if (filtered) {
64
- var filteredLevel_1 = filtered.value.split(facet.hierarchyDelimiter).length;
65
- facet.values = facet.values.filter(function (value, index) {
66
- return (value.value && value.value.split(facet.hierarchyDelimiter).length > filteredLevel_1) || index == facet.values.length - 1;
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
- 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));
70
- levels === null || levels === void 0 ? void 0 : levels.map(function (level, index) {
71
- var levelConfig = { index: index, label: fieldObj.levels ? level : '', key: "ss-".concat(index) };
72
- selections.push(new SelectionHierarchy(services, config.id, facet, levelConfig, loading, storage));
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
- var _this = _super.call(this, services, id, facet, config, loading, storageStore) || this;
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
- var _this = _super.call(this, config) || this;
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
- var _this = _super.call(this, config) || this;
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;CAsCxB"}
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 ((facetMeta.display == 'slider' && facet.type !== 'range') || (facet.type == 'range' && facetMeta.display !== 'slider')) {
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
- // eslint-disable-next-line @typescript-eslint/ban-ts-comment
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
- var _this = _super.call(this, services, storage, facet, facetMeta) || this;
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
- var _this = _super.call(this, services, facet, value) || this;
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
- // eslint-disable-next-line @typescript-eslint/ban-ts-comment
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
- // eslint-disable-next-line @typescript-eslint/ban-ts-comment
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.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
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];
@@ -59,6 +59,7 @@ export declare type AutocompleteStoreConfig = StoreConfig & {
59
59
  };
60
60
  trending?: {
61
61
  limit: number;
62
+ showResults?: boolean;
62
63
  };
63
64
  };
64
65
  };
@@ -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;SACd,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"}
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
- config?.fields?.forEach((fieldObj) => {
18
- let facet = facets?.filter((facet) => facet.field == fieldObj.field).pop();
19
- facet = {
20
- ...meta?.facets[fieldObj.field],
21
- ...facet,
22
- };
23
- const isHierarchy = facet.display === 'hierarchy';
24
- if (isHierarchy) {
25
- // filter out history/current hierarchy values
26
- const filtered = facet.filtered && facet.values.filter((value) => value.filtered).pop();
27
- if (filtered) {
28
- const filteredLevel = filtered.value.split(facet.hierarchyDelimiter).length;
29
- facet.values = facet.values.filter((value, index) => {
30
- return (value.value && value.value.split(facet.hierarchyDelimiter).length > filteredLevel) || index == facet.values.length - 1;
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
- const levels = fieldObj?.levels || facet?.values[facet?.values.length - 1]?.value.split(facet.hierarchyDelimiter);
34
- levels?.map((level, index) => {
35
- const levelConfig = { index, label: fieldObj.levels ? level : '', key: `ss-${index}` };
36
- selections.push(new SelectionHierarchy(services, config.id, facet, levelConfig, loading, storage));
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;CAsCxB"}
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 ((facetMeta.display == 'slider' && facet.type !== 'range') || (facet.type == 'range' && facetMeta.display !== 'slider')) {
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) {
@@ -59,6 +59,7 @@ export declare type AutocompleteStoreConfig = StoreConfig & {
59
59
  };
60
60
  trending?: {
61
61
  limit: number;
62
+ showResults?: boolean;
62
63
  };
63
64
  };
64
65
  };
@@ -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;SACd,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"}
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.20.5",
3
+ "version": "0.22.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.20.5",
23
+ "@searchspring/snap-toolbox": "^0.22.0",
24
24
  "mobx": "^6.3.12"
25
25
  },
26
26
  "devDependencies": {
27
- "@searchspring/snap-url-manager": "^0.20.5"
27
+ "@searchspring/snap-url-manager": "^0.22.0"
28
28
  },
29
29
  "sideEffects": false,
30
30
  "files": [
31
31
  "dist/**/*"
32
32
  ],
33
- "gitHead": "37807cdbe3906c03227d32023a119d0bf8892f84"
33
+ "gitHead": "e75d852fd1750840d7c851172bbfd5f66e8ace1e"
34
34
  }