@searchspring/snap-store-mobx 0.27.7 → 0.29.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/Abstract/AbstractStore.d.ts +3 -4
- package/dist/cjs/Abstract/AbstractStore.d.ts.map +1 -1
- package/dist/cjs/Abstract/AbstractStore.js +0 -1
- package/dist/cjs/Autocomplete/AutocompleteStore.d.ts +19 -18
- package/dist/cjs/Autocomplete/AutocompleteStore.d.ts.map +1 -1
- package/dist/cjs/Autocomplete/AutocompleteStore.js +20 -19
- package/dist/cjs/Autocomplete/Stores/{FacetStore.d.ts → AutocompleteFacetStore.d.ts} +4 -4
- package/dist/cjs/Autocomplete/Stores/AutocompleteFacetStore.d.ts.map +1 -0
- package/dist/cjs/Autocomplete/Stores/{FacetStore.js → AutocompleteFacetStore.js} +8 -8
- package/dist/{esm/Autocomplete/Stores/QueryStore.d.ts → cjs/Autocomplete/Stores/AutocompleteQueryStore.d.ts} +5 -5
- package/dist/cjs/Autocomplete/Stores/AutocompleteQueryStore.d.ts.map +1 -0
- package/dist/cjs/Autocomplete/Stores/{QueryStore.js → AutocompleteQueryStore.js} +6 -6
- package/dist/{esm/Autocomplete/Stores/StateStore.d.ts → cjs/Autocomplete/Stores/AutocompleteStateStore.d.ts} +3 -3
- package/dist/cjs/Autocomplete/Stores/AutocompleteStateStore.d.ts.map +1 -0
- package/dist/cjs/Autocomplete/Stores/{StateStore.js → AutocompleteStateStore.js} +6 -6
- package/dist/{esm/Autocomplete/Stores/TermStore.d.ts → cjs/Autocomplete/Stores/AutocompleteTermStore.d.ts} +5 -5
- package/dist/cjs/Autocomplete/Stores/AutocompleteTermStore.d.ts.map +1 -0
- package/dist/cjs/Autocomplete/Stores/{TermStore.js → AutocompleteTermStore.js} +7 -7
- package/dist/cjs/Autocomplete/Stores/AutocompleteTrendingStore.d.ts +9 -0
- package/dist/cjs/Autocomplete/Stores/AutocompleteTrendingStore.d.ts.map +1 -0
- package/dist/cjs/Autocomplete/Stores/{TrendingStore.js → AutocompleteTrendingStore.js} +11 -11
- package/dist/cjs/Autocomplete/Stores/index.d.ts +5 -5
- package/dist/cjs/Autocomplete/Stores/index.d.ts.map +1 -1
- package/dist/cjs/Autocomplete/Stores/index.js +11 -11
- package/dist/cjs/Finder/FinderStore.d.ts +6 -5
- package/dist/cjs/Finder/FinderStore.d.ts.map +1 -1
- package/dist/cjs/Finder/FinderStore.js +9 -9
- package/dist/cjs/Finder/Stores/FinderSelectionStore.d.ts +56 -0
- package/dist/cjs/Finder/Stores/FinderSelectionStore.d.ts.map +1 -0
- package/dist/cjs/Finder/Stores/{SelectionStore.js → FinderSelectionStore.js} +17 -16
- package/dist/cjs/Finder/Stores/index.d.ts +1 -1
- package/dist/cjs/Finder/Stores/index.d.ts.map +1 -1
- package/dist/cjs/Finder/Stores/index.js +3 -3
- package/dist/cjs/Recommendation/RecommendationStore.d.ts +6 -5
- package/dist/cjs/Recommendation/RecommendationStore.d.ts.map +1 -1
- package/dist/cjs/Recommendation/RecommendationStore.js +4 -4
- package/dist/cjs/Recommendation/Stores/RecommendationProfileStore.d.ts +9 -0
- package/dist/cjs/Recommendation/Stores/RecommendationProfileStore.d.ts.map +1 -0
- package/dist/cjs/Recommendation/Stores/RecommendationProfileStore.js +23 -0
- package/dist/cjs/Recommendation/Stores/index.d.ts +1 -1
- package/dist/cjs/Recommendation/Stores/index.d.ts.map +1 -1
- package/dist/cjs/Recommendation/Stores/index.js +3 -3
- package/dist/cjs/Search/SearchStore.d.ts +11 -11
- package/dist/cjs/Search/SearchStore.d.ts.map +1 -1
- package/dist/cjs/Search/SearchStore.js +26 -10
- package/dist/cjs/Search/Stores/SearchFacetStore.d.ts +76 -0
- package/dist/cjs/Search/Stores/SearchFacetStore.d.ts.map +1 -0
- package/dist/cjs/Search/Stores/{FacetStore.js → SearchFacetStore.js} +57 -50
- package/dist/cjs/Search/Stores/SearchFilterStore.d.ts +35 -0
- package/dist/cjs/Search/Stores/SearchFilterStore.d.ts.map +1 -0
- package/dist/cjs/Search/Stores/SearchFilterStore.js +93 -0
- package/dist/cjs/Search/Stores/SearchMerchandisingStore.d.ts +21 -0
- package/dist/cjs/Search/Stores/SearchMerchandisingStore.d.ts.map +1 -0
- package/dist/cjs/Search/Stores/{MerchandisingStore.js → SearchMerchandisingStore.js} +7 -7
- package/dist/cjs/Search/Stores/{PaginationStore.d.ts → SearchPaginationStore.d.ts} +5 -6
- package/dist/cjs/Search/Stores/SearchPaginationStore.d.ts.map +1 -0
- package/dist/cjs/Search/Stores/{PaginationStore.js → SearchPaginationStore.js} +17 -16
- package/dist/cjs/Search/Stores/{QueryStore.d.ts → SearchQueryStore.d.ts} +6 -6
- package/dist/cjs/Search/Stores/SearchQueryStore.d.ts.map +1 -0
- package/dist/cjs/Search/Stores/{QueryStore.js → SearchQueryStore.js} +5 -5
- package/dist/cjs/Search/Stores/SearchResultStore.d.ts +34 -0
- package/dist/cjs/Search/Stores/SearchResultStore.d.ts.map +1 -0
- package/dist/cjs/Search/Stores/{ResultStore.js → SearchResultStore.js} +10 -8
- package/dist/cjs/Search/Stores/SearchSortingStore.d.ts +25 -0
- package/dist/cjs/Search/Stores/SearchSortingStore.d.ts.map +1 -0
- package/dist/cjs/Search/Stores/{SortingStore.js → SearchSortingStore.js} +10 -11
- package/dist/cjs/Search/Stores/index.d.ts +7 -7
- package/dist/cjs/Search/Stores/index.d.ts.map +1 -1
- package/dist/cjs/Search/Stores/index.js +24 -15
- package/dist/cjs/Storage/StorageStore.d.ts +6 -6
- package/dist/cjs/Storage/StorageStore.d.ts.map +1 -1
- package/dist/cjs/Storage/StorageStore.js +7 -5
- package/dist/cjs/index.d.ts +1 -0
- package/dist/cjs/index.d.ts.map +1 -1
- package/dist/cjs/index.js +1 -0
- package/dist/cjs/types.d.ts +3 -3
- package/dist/cjs/types.d.ts.map +1 -1
- package/dist/esm/Abstract/AbstractStore.d.ts +3 -4
- package/dist/esm/Abstract/AbstractStore.d.ts.map +1 -1
- package/dist/esm/Abstract/AbstractStore.js +0 -1
- package/dist/esm/Autocomplete/AutocompleteStore.d.ts +19 -18
- package/dist/esm/Autocomplete/AutocompleteStore.d.ts.map +1 -1
- package/dist/esm/Autocomplete/AutocompleteStore.js +21 -22
- package/dist/esm/Autocomplete/Stores/{FacetStore.d.ts → AutocompleteFacetStore.d.ts} +4 -4
- package/dist/esm/Autocomplete/Stores/AutocompleteFacetStore.d.ts.map +1 -0
- package/dist/esm/Autocomplete/Stores/{FacetStore.js → AutocompleteFacetStore.js} +2 -2
- package/dist/{cjs/Autocomplete/Stores/QueryStore.d.ts → esm/Autocomplete/Stores/AutocompleteQueryStore.d.ts} +5 -5
- package/dist/esm/Autocomplete/Stores/AutocompleteQueryStore.d.ts.map +1 -0
- package/dist/esm/Autocomplete/Stores/{QueryStore.js → AutocompleteQueryStore.js} +2 -2
- package/dist/{cjs/Autocomplete/Stores/StateStore.d.ts → esm/Autocomplete/Stores/AutocompleteStateStore.d.ts} +3 -3
- package/dist/esm/Autocomplete/Stores/AutocompleteStateStore.d.ts.map +1 -0
- package/dist/esm/Autocomplete/Stores/{StateStore.js → AutocompleteStateStore.js} +1 -1
- package/dist/{cjs/Autocomplete/Stores/TermStore.d.ts → esm/Autocomplete/Stores/AutocompleteTermStore.d.ts} +5 -5
- package/dist/esm/Autocomplete/Stores/AutocompleteTermStore.d.ts.map +1 -0
- package/dist/esm/Autocomplete/Stores/{TermStore.js → AutocompleteTermStore.js} +1 -1
- package/dist/esm/Autocomplete/Stores/AutocompleteTrendingStore.d.ts +9 -0
- package/dist/esm/Autocomplete/Stores/AutocompleteTrendingStore.d.ts.map +1 -0
- package/dist/esm/Autocomplete/Stores/{TrendingStore.js → AutocompleteTrendingStore.js} +3 -3
- package/dist/esm/Autocomplete/Stores/index.d.ts +5 -5
- package/dist/esm/Autocomplete/Stores/index.d.ts.map +1 -1
- package/dist/esm/Autocomplete/Stores/index.js +5 -5
- package/dist/esm/Finder/FinderStore.d.ts +6 -5
- package/dist/esm/Finder/FinderStore.d.ts.map +1 -1
- package/dist/esm/Finder/FinderStore.js +9 -9
- package/dist/esm/Finder/Stores/FinderSelectionStore.d.ts +60 -0
- package/dist/esm/Finder/Stores/FinderSelectionStore.d.ts.map +1 -0
- package/dist/esm/Finder/Stores/{SelectionStore.js → FinderSelectionStore.js} +9 -9
- package/dist/esm/Finder/Stores/index.d.ts +1 -1
- package/dist/esm/Finder/Stores/index.d.ts.map +1 -1
- package/dist/esm/Finder/Stores/index.js +1 -1
- package/dist/esm/Recommendation/RecommendationStore.d.ts +6 -5
- package/dist/esm/Recommendation/RecommendationStore.d.ts.map +1 -1
- package/dist/esm/Recommendation/RecommendationStore.js +6 -6
- package/dist/esm/Recommendation/Stores/RecommendationProfileStore.d.ts +9 -0
- package/dist/esm/Recommendation/Stores/RecommendationProfileStore.d.ts.map +1 -0
- package/dist/esm/Recommendation/Stores/{ProfileStore.js → RecommendationProfileStore.js} +6 -6
- package/dist/esm/Recommendation/Stores/index.d.ts +1 -1
- package/dist/esm/Recommendation/Stores/index.d.ts.map +1 -1
- package/dist/esm/Recommendation/Stores/index.js +1 -1
- package/dist/esm/Search/SearchStore.d.ts +11 -11
- package/dist/esm/Search/SearchStore.d.ts.map +1 -1
- package/dist/esm/Search/SearchStore.js +27 -12
- package/dist/esm/Search/Stores/SearchFacetStore.d.ts +76 -0
- package/dist/esm/Search/Stores/SearchFacetStore.d.ts.map +1 -0
- package/dist/esm/Search/Stores/{FacetStore.js → SearchFacetStore.js} +34 -33
- package/dist/esm/Search/Stores/SearchFilterStore.d.ts +35 -0
- package/dist/esm/Search/Stores/SearchFilterStore.d.ts.map +1 -0
- package/dist/esm/Search/Stores/SearchFilterStore.js +61 -0
- package/dist/esm/Search/Stores/SearchMerchandisingStore.d.ts +21 -0
- package/dist/esm/Search/Stores/SearchMerchandisingStore.d.ts.map +1 -0
- package/dist/esm/Search/Stores/{MerchandisingStore.js → SearchMerchandisingStore.js} +3 -3
- package/dist/esm/Search/Stores/{PaginationStore.d.ts → SearchPaginationStore.d.ts} +5 -6
- package/dist/esm/Search/Stores/SearchPaginationStore.d.ts.map +1 -0
- package/dist/esm/Search/Stores/{PaginationStore.js → SearchPaginationStore.js} +3 -3
- package/dist/esm/Search/Stores/{QueryStore.d.ts → SearchQueryStore.d.ts} +6 -6
- package/dist/esm/Search/Stores/SearchQueryStore.d.ts.map +1 -0
- package/dist/esm/Search/Stores/{QueryStore.js → SearchQueryStore.js} +1 -1
- package/dist/esm/Search/Stores/SearchResultStore.d.ts +34 -0
- package/dist/esm/Search/Stores/SearchResultStore.d.ts.map +1 -0
- package/dist/esm/Search/Stores/{ResultStore.js → SearchResultStore.js} +4 -6
- package/dist/esm/Search/Stores/SearchSortingStore.d.ts +25 -0
- package/dist/esm/Search/Stores/SearchSortingStore.d.ts.map +1 -0
- package/dist/esm/Search/Stores/{SortingStore.js → SearchSortingStore.js} +5 -6
- package/dist/esm/Search/Stores/index.d.ts +7 -7
- package/dist/esm/Search/Stores/index.d.ts.map +1 -1
- package/dist/esm/Search/Stores/index.js +7 -7
- package/dist/esm/Storage/StorageStore.d.ts +6 -6
- package/dist/esm/Storage/StorageStore.d.ts.map +1 -1
- package/dist/esm/Storage/StorageStore.js +7 -5
- package/dist/esm/index.d.ts +1 -0
- package/dist/esm/index.d.ts.map +1 -1
- package/dist/esm/index.js +1 -0
- package/dist/esm/types.d.ts +3 -3
- package/dist/esm/types.d.ts.map +1 -1
- package/package.json +6 -5
- package/dist/cjs/Autocomplete/Stores/FacetStore.d.ts.map +0 -1
- package/dist/cjs/Autocomplete/Stores/QueryStore.d.ts.map +0 -1
- package/dist/cjs/Autocomplete/Stores/StateStore.d.ts.map +0 -1
- package/dist/cjs/Autocomplete/Stores/TermStore.d.ts.map +0 -1
- package/dist/cjs/Autocomplete/Stores/TrendingStore.d.ts +0 -7
- package/dist/cjs/Autocomplete/Stores/TrendingStore.d.ts.map +0 -1
- package/dist/cjs/Finder/Stores/SelectionStore.d.ts +0 -17
- package/dist/cjs/Finder/Stores/SelectionStore.d.ts.map +0 -1
- package/dist/cjs/Recommendation/Stores/ProfileStore.d.ts +0 -8
- package/dist/cjs/Recommendation/Stores/ProfileStore.d.ts.map +0 -1
- package/dist/cjs/Recommendation/Stores/ProfileStore.js +0 -22
- package/dist/cjs/Search/Stores/FacetStore.d.ts +0 -8
- package/dist/cjs/Search/Stores/FacetStore.d.ts.map +0 -1
- package/dist/cjs/Search/Stores/FilterStore.d.ts +0 -7
- package/dist/cjs/Search/Stores/FilterStore.d.ts.map +0 -1
- package/dist/cjs/Search/Stores/FilterStore.js +0 -96
- package/dist/cjs/Search/Stores/MerchandisingStore.d.ts +0 -20
- package/dist/cjs/Search/Stores/MerchandisingStore.d.ts.map +0 -1
- package/dist/cjs/Search/Stores/PaginationStore.d.ts.map +0 -1
- package/dist/cjs/Search/Stores/QueryStore.d.ts.map +0 -1
- package/dist/cjs/Search/Stores/ResultStore.d.ts +0 -7
- package/dist/cjs/Search/Stores/ResultStore.d.ts.map +0 -1
- package/dist/cjs/Search/Stores/SortingStore.d.ts +0 -21
- package/dist/cjs/Search/Stores/SortingStore.d.ts.map +0 -1
- package/dist/esm/Autocomplete/Stores/FacetStore.d.ts.map +0 -1
- package/dist/esm/Autocomplete/Stores/QueryStore.d.ts.map +0 -1
- package/dist/esm/Autocomplete/Stores/StateStore.d.ts.map +0 -1
- package/dist/esm/Autocomplete/Stores/TermStore.d.ts.map +0 -1
- package/dist/esm/Autocomplete/Stores/TrendingStore.d.ts +0 -7
- package/dist/esm/Autocomplete/Stores/TrendingStore.d.ts.map +0 -1
- package/dist/esm/Finder/Stores/SelectionStore.d.ts +0 -17
- package/dist/esm/Finder/Stores/SelectionStore.d.ts.map +0 -1
- package/dist/esm/Recommendation/Stores/ProfileStore.d.ts +0 -8
- package/dist/esm/Recommendation/Stores/ProfileStore.d.ts.map +0 -1
- package/dist/esm/Search/Stores/FacetStore.d.ts +0 -8
- package/dist/esm/Search/Stores/FacetStore.d.ts.map +0 -1
- package/dist/esm/Search/Stores/FilterStore.d.ts +0 -7
- package/dist/esm/Search/Stores/FilterStore.d.ts.map +0 -1
- package/dist/esm/Search/Stores/FilterStore.js +0 -68
- package/dist/esm/Search/Stores/MerchandisingStore.d.ts +0 -20
- package/dist/esm/Search/Stores/MerchandisingStore.d.ts.map +0 -1
- package/dist/esm/Search/Stores/PaginationStore.d.ts.map +0 -1
- package/dist/esm/Search/Stores/QueryStore.d.ts.map +0 -1
- package/dist/esm/Search/Stores/ResultStore.d.ts +0 -7
- package/dist/esm/Search/Stores/ResultStore.d.ts.map +0 -1
- package/dist/esm/Search/Stores/SortingStore.d.ts +0 -21
- package/dist/esm/Search/Stores/SortingStore.d.ts.map +0 -1
|
@@ -32,9 +32,9 @@ var FinderStore = /** @class */ (function (_super) {
|
|
|
32
32
|
persisted: false,
|
|
33
33
|
};
|
|
34
34
|
_this.reset = function () {
|
|
35
|
-
var _a;
|
|
35
|
+
var _a, _b;
|
|
36
36
|
if ((_a = _this.config.persist) === null || _a === void 0 ? void 0 : _a.enabled) {
|
|
37
|
-
_this.persistedStorage.clear();
|
|
37
|
+
(_b = _this.persistedStorage) === null || _b === void 0 ? void 0 : _b.clear();
|
|
38
38
|
_this.state.persisted = false;
|
|
39
39
|
}
|
|
40
40
|
if (_this.services.urlManager.state.filter) {
|
|
@@ -67,8 +67,8 @@ var FinderStore = /** @class */ (function (_super) {
|
|
|
67
67
|
}
|
|
68
68
|
};
|
|
69
69
|
FinderStore.prototype.save = function () {
|
|
70
|
-
var _a;
|
|
71
|
-
if (((_a = this.config.persist) === null || _a === void 0 ? void 0 : _a.enabled) && this.selections.filter(function (selection) { return selection.selected; }).length) {
|
|
70
|
+
var _a, _b;
|
|
71
|
+
if (((_a = this.config.persist) === null || _a === void 0 ? void 0 : _a.enabled) && this.persistedStorage && ((_b = this === null || this === void 0 ? void 0 : this.selections) === null || _b === void 0 ? void 0 : _b.filter(function (selection) { return selection.selected; }).length)) {
|
|
72
72
|
this.persistedStorage.set('config', this.config);
|
|
73
73
|
this.persistedStorage.set('data', this.data);
|
|
74
74
|
this.persistedStorage.set('date', Date.now());
|
|
@@ -83,7 +83,7 @@ var FinderStore = /** @class */ (function (_super) {
|
|
|
83
83
|
};
|
|
84
84
|
FinderStore.prototype.loadPersisted = function () {
|
|
85
85
|
var _a;
|
|
86
|
-
if (((_a = this.config.persist) === null || _a === void 0 ? void 0 : _a.enabled) && !this.loaded) {
|
|
86
|
+
if (((_a = this.config.persist) === null || _a === void 0 ? void 0 : _a.enabled) && this.persistedStorage && !this.loaded) {
|
|
87
87
|
var date = this.persistedStorage.get('date');
|
|
88
88
|
var data = this.persistedStorage.get('data');
|
|
89
89
|
var config = this.persistedStorage.get('config');
|
|
@@ -106,14 +106,14 @@ var FinderStore = /** @class */ (function (_super) {
|
|
|
106
106
|
this.data = JSON.parse(JSON.stringify(data));
|
|
107
107
|
this.loaded = !!data.pagination;
|
|
108
108
|
this.meta = data.meta;
|
|
109
|
-
this.pagination = new Stores_1.
|
|
110
|
-
this.selections = new Stores_2.
|
|
109
|
+
this.pagination = new Stores_1.SearchPaginationStore(this.config, this.services, data.pagination);
|
|
110
|
+
this.selections = new Stores_2.FinderSelectionStore(this.config, this.services, {
|
|
111
111
|
state: this.state,
|
|
112
|
-
facets: data.facets,
|
|
112
|
+
facets: data.facets || [],
|
|
113
113
|
meta: this.meta,
|
|
114
114
|
loading: this.loading,
|
|
115
115
|
storage: this.storage,
|
|
116
|
-
selections: selectedSelections,
|
|
116
|
+
selections: selectedSelections || [],
|
|
117
117
|
});
|
|
118
118
|
};
|
|
119
119
|
return FinderStore;
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
import type { FinderStoreConfig, FinderFieldConfig, StoreServices, SelectedSelection, FinderStoreState } from '../../types';
|
|
2
|
+
import type { StorageStore } from '../../Storage/StorageStore';
|
|
3
|
+
import type { MetaResponseModel, MetaResponseModelFacetGrid, MetaResponseModelFacetHierarchy, MetaResponseModelFacetList, MetaResponseModelFacetPalette, MetaResponseModelFacetSlider, SearchResponseModelFacet, SearchResponseModelFacetRange, SearchResponseModelFacetRangeBuckets, SearchResponseModelFacetValue, SearchResponseModelFacetValueAllOfValues } from '@searchspring/snapi-types';
|
|
4
|
+
export declare type FinderSelectionStoreData = {
|
|
5
|
+
state: FinderStoreState;
|
|
6
|
+
facets: SearchResponseModelFacet[];
|
|
7
|
+
meta: MetaResponseModel;
|
|
8
|
+
loading: boolean;
|
|
9
|
+
storage: StorageStore;
|
|
10
|
+
selections: SelectedSelection[];
|
|
11
|
+
};
|
|
12
|
+
declare type FacetWithMeta = MetaResponseModelFacetGrid & MetaResponseModelFacetHierarchy & MetaResponseModelFacetList & MetaResponseModelFacetPalette & MetaResponseModelFacetSlider & SearchResponseModelFacetValue & SearchResponseModelFacetRange & SearchResponseModelFacetRangeBuckets;
|
|
13
|
+
export declare class FinderSelectionStore extends Array<Selection | SelectionHierarchy> {
|
|
14
|
+
static get [Symbol.species](): ArrayConstructor;
|
|
15
|
+
constructor(config: FinderStoreConfig, services: StoreServices, { state, facets, meta, loading, storage, selections }: FinderSelectionStoreData);
|
|
16
|
+
}
|
|
17
|
+
declare class SelectionBase {
|
|
18
|
+
state: FinderStoreState;
|
|
19
|
+
type: string;
|
|
20
|
+
field: string;
|
|
21
|
+
filtered: boolean;
|
|
22
|
+
collapsed: boolean;
|
|
23
|
+
display: string;
|
|
24
|
+
label: string;
|
|
25
|
+
multiple: string;
|
|
26
|
+
id: string;
|
|
27
|
+
disabled: boolean;
|
|
28
|
+
selected: string;
|
|
29
|
+
custom: {};
|
|
30
|
+
facet: any;
|
|
31
|
+
services: StoreServices;
|
|
32
|
+
loading: boolean;
|
|
33
|
+
config: FinderFieldConfig | LevelConfig;
|
|
34
|
+
data?: SearchResponseModelFacetValueAllOfValues[];
|
|
35
|
+
storage: any;
|
|
36
|
+
constructor(services: StoreServices, id: string, state: FinderStoreState, facet: FacetWithMeta, selectionConfig: FinderFieldConfig | LevelConfig, loading: boolean, storageStore: StorageStore);
|
|
37
|
+
get values(): SearchResponseModelFacetValueAllOfValues[];
|
|
38
|
+
}
|
|
39
|
+
declare class Selection extends SelectionBase {
|
|
40
|
+
config: FinderFieldConfig;
|
|
41
|
+
constructor(services: StoreServices, id: string, state: FinderStoreState, facet: FacetWithMeta, config: FinderFieldConfig, loading: boolean, storageStore: StorageStore);
|
|
42
|
+
select(value?: string): void;
|
|
43
|
+
}
|
|
44
|
+
declare class SelectionHierarchy extends SelectionBase {
|
|
45
|
+
hierarchyDelimiter: string;
|
|
46
|
+
config: LevelConfig;
|
|
47
|
+
constructor(services: StoreServices, id: string, state: FinderStoreState, facet: FacetWithMeta, config: LevelConfig, loading: boolean, storageStore: StorageStore);
|
|
48
|
+
select(value?: string): void;
|
|
49
|
+
}
|
|
50
|
+
declare type LevelConfig = {
|
|
51
|
+
index: number;
|
|
52
|
+
label?: string;
|
|
53
|
+
key: string;
|
|
54
|
+
};
|
|
55
|
+
export {};
|
|
56
|
+
//# sourceMappingURL=FinderSelectionStore.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"FinderSelectionStore.d.ts","sourceRoot":"","sources":["../../../../src/Finder/Stores/FinderSelectionStore.ts"],"names":[],"mappings":"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"}
|
|
@@ -35,10 +35,10 @@ var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {
|
|
|
35
35
|
return to.concat(ar || Array.prototype.slice.call(from));
|
|
36
36
|
};
|
|
37
37
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
38
|
-
exports.
|
|
39
|
-
var
|
|
40
|
-
__extends(
|
|
41
|
-
function
|
|
38
|
+
exports.FinderSelectionStore = void 0;
|
|
39
|
+
var FinderSelectionStore = /** @class */ (function (_super) {
|
|
40
|
+
__extends(FinderSelectionStore, _super);
|
|
41
|
+
function FinderSelectionStore(config, services, _a) {
|
|
42
42
|
var state = _a.state, facets = _a.facets, meta = _a.meta, loading = _a.loading, storage = _a.storage, selections = _a.selections;
|
|
43
43
|
var _b;
|
|
44
44
|
var selectedSelections = [];
|
|
@@ -92,20 +92,21 @@ var SelectionStore = /** @class */ (function (_super) {
|
|
|
92
92
|
return fields.indexOf(a.field) - fields.indexOf(b.field);
|
|
93
93
|
});
|
|
94
94
|
(_b = config === null || config === void 0 ? void 0 : config.fields) === null || _b === void 0 ? void 0 : _b.forEach(function (fieldObj) {
|
|
95
|
-
var _a;
|
|
96
|
-
var facet = facets
|
|
97
|
-
facet = __assign(__assign({}, meta === null || meta === void 0 ? void 0 : meta.facets[fieldObj.field]), facet);
|
|
98
|
-
var isHierarchy = facet.display === 'hierarchy';
|
|
95
|
+
var _a, _b, _c, _d, _e;
|
|
96
|
+
var facet = facets.filter(function (facet) { return facet.field == fieldObj.field; }).pop();
|
|
97
|
+
facet = __assign(__assign({}, (((meta === null || meta === void 0 ? void 0 : meta.facets) && meta.facets[fieldObj.field]) || {})), facet);
|
|
98
|
+
var isHierarchy = (facet === null || facet === void 0 ? void 0 : facet.display) === 'hierarchy';
|
|
99
99
|
if (isHierarchy) {
|
|
100
100
|
// filter out history/current hierarchy values
|
|
101
|
-
var filtered =
|
|
101
|
+
var filtered = (_a = facet.values) === null || _a === void 0 ? void 0 : _a.filter(function (value) { return value.filtered; }).pop();
|
|
102
102
|
if (filtered) {
|
|
103
|
-
var filteredLevel_1 = filtered.value.split(facet.hierarchyDelimiter).length;
|
|
104
|
-
facet.values = facet.values.filter(function (value, index) {
|
|
105
|
-
|
|
103
|
+
var filteredLevel_1 = (_b = filtered.value) === null || _b === void 0 ? void 0 : _b.split(facet === null || facet === void 0 ? void 0 : facet.hierarchyDelimiter).length;
|
|
104
|
+
facet.values = (_c = facet.values) === null || _c === void 0 ? void 0 : _c.filter(function (value, index) {
|
|
105
|
+
var _a;
|
|
106
|
+
return (value.value && value.value.split(facet === null || facet === void 0 ? void 0 : facet.hierarchyDelimiter).length > filteredLevel_1) || index == ((_a = facet.values) === null || _a === void 0 ? void 0 : _a.length) - 1;
|
|
106
107
|
});
|
|
107
108
|
}
|
|
108
|
-
var levels = (fieldObj === null || fieldObj === void 0 ? void 0 : fieldObj.levels) || ((
|
|
109
|
+
var levels = (fieldObj === null || fieldObj === void 0 ? void 0 : fieldObj.levels) || ((facet === null || facet === void 0 ? void 0 : facet.values) && ((_e = facet === null || facet === void 0 ? void 0 : facet.values[((_d = facet === null || facet === void 0 ? void 0 : facet.values) === null || _d === void 0 ? void 0 : _d.length) - 1].value) === null || _e === void 0 ? void 0 : _e.split(facet.hierarchyDelimiter)));
|
|
109
110
|
levels === null || levels === void 0 ? void 0 : levels.map(function (level, index) {
|
|
110
111
|
var levelConfig = { index: index, label: fieldObj.levels ? level : '', key: "ss-".concat(index) };
|
|
111
112
|
selectedSelections.push(new SelectionHierarchy(services, config.id, state, facet, levelConfig, loading, storage));
|
|
@@ -118,16 +119,16 @@ var SelectionStore = /** @class */ (function (_super) {
|
|
|
118
119
|
}
|
|
119
120
|
return _super.apply(this, selectedSelections) || this;
|
|
120
121
|
}
|
|
121
|
-
Object.defineProperty(
|
|
122
|
+
Object.defineProperty(FinderSelectionStore, Symbol.species, {
|
|
122
123
|
get: function () {
|
|
123
124
|
return Array;
|
|
124
125
|
},
|
|
125
126
|
enumerable: false,
|
|
126
127
|
configurable: true
|
|
127
128
|
});
|
|
128
|
-
return
|
|
129
|
+
return FinderSelectionStore;
|
|
129
130
|
}(Array));
|
|
130
|
-
exports.
|
|
131
|
+
exports.FinderSelectionStore = FinderSelectionStore;
|
|
131
132
|
var SelectionBase = /** @class */ (function () {
|
|
132
133
|
function SelectionBase(services, id, state, facet, selectionConfig, loading, storageStore) {
|
|
133
134
|
this.filtered = false;
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export {
|
|
1
|
+
export { FinderSelectionStore } from './FinderSelectionStore';
|
|
2
2
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/Finder/Stores/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/Finder/Stores/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.
|
|
4
|
-
var
|
|
5
|
-
Object.defineProperty(exports, "
|
|
3
|
+
exports.FinderSelectionStore = void 0;
|
|
4
|
+
var FinderSelectionStore_1 = require("./FinderSelectionStore");
|
|
5
|
+
Object.defineProperty(exports, "FinderSelectionStore", { enumerable: true, get: function () { return FinderSelectionStore_1.FinderSelectionStore; } });
|
|
@@ -1,14 +1,15 @@
|
|
|
1
1
|
import { AbstractStore } from '../Abstract/AbstractStore';
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
2
|
+
import { SearchResultStore } from '../Search/Stores';
|
|
3
|
+
import { RecommendationProfileStore } from './Stores';
|
|
4
4
|
import type { RecommendationStoreConfig, StoreServices } from '../types';
|
|
5
|
+
import type { RecommendCombinedResponseModel } from '@searchspring/snap-client';
|
|
5
6
|
export declare class RecommendationStore extends AbstractStore {
|
|
6
7
|
services: StoreServices;
|
|
7
8
|
loaded: boolean;
|
|
8
|
-
profile:
|
|
9
|
-
results:
|
|
9
|
+
profile: RecommendationProfileStore;
|
|
10
|
+
results: SearchResultStore;
|
|
10
11
|
constructor(config: RecommendationStoreConfig, services: StoreServices);
|
|
11
12
|
reset(): void;
|
|
12
|
-
update(data
|
|
13
|
+
update(data?: RecommendCombinedResponseModel): void;
|
|
13
14
|
}
|
|
14
15
|
//# sourceMappingURL=RecommendationStore.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"RecommendationStore.d.ts","sourceRoot":"","sources":["../../../src/Recommendation/RecommendationStore.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAC1D,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"RecommendationStore.d.ts","sourceRoot":"","sources":["../../../src/Recommendation/RecommendationStore.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAC1D,OAAO,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AACrD,OAAO,EAAE,0BAA0B,EAAE,MAAM,UAAU,CAAC;AACtD,OAAO,KAAK,EAAE,yBAAyB,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AACzE,OAAO,KAAK,EAAE,8BAA8B,EAAE,MAAM,2BAA2B,CAAC;AAEhF,qBAAa,mBAAoB,SAAQ,aAAa;IAC9C,QAAQ,EAAE,aAAa,CAAC;IACxB,MAAM,UAAS;IACf,OAAO,EAAG,0BAA0B,CAAC;IACrC,OAAO,EAAG,iBAAiB,CAAC;gBAEvB,MAAM,EAAE,yBAAyB,EAAE,QAAQ,EAAE,aAAa;IAiB/D,KAAK,IAAI,IAAI;IAIb,MAAM,CAAC,IAAI,CAAC,EAAE,8BAA8B,GAAG,IAAI;CAM1D"}
|
|
@@ -39,13 +39,13 @@ var RecommendationStore = /** @class */ (function (_super) {
|
|
|
39
39
|
return _this;
|
|
40
40
|
}
|
|
41
41
|
RecommendationStore.prototype.reset = function () {
|
|
42
|
-
this.update(
|
|
42
|
+
this.update();
|
|
43
43
|
};
|
|
44
44
|
RecommendationStore.prototype.update = function (data) {
|
|
45
45
|
this.error = undefined;
|
|
46
|
-
this.loaded = !!data.profile;
|
|
47
|
-
this.profile = new Stores_2.
|
|
48
|
-
this.results = new Stores_1.
|
|
46
|
+
this.loaded = !!(data === null || data === void 0 ? void 0 : data.profile);
|
|
47
|
+
this.profile = new Stores_2.RecommendationProfileStore(this.services, data);
|
|
48
|
+
this.results = new Stores_1.SearchResultStore(this.config, this.services, data === null || data === void 0 ? void 0 : data.results);
|
|
49
49
|
};
|
|
50
50
|
return RecommendationStore;
|
|
51
51
|
}(AbstractStore_1.AbstractStore));
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import type { StoreServices } from '../../types';
|
|
2
|
+
import type { RecommendCombinedResponseModel } from '@searchspring/snap-client';
|
|
3
|
+
export declare class RecommendationProfileStore {
|
|
4
|
+
tag: string;
|
|
5
|
+
placement: string;
|
|
6
|
+
display: Record<string, any>;
|
|
7
|
+
constructor(services: StoreServices, data?: RecommendCombinedResponseModel);
|
|
8
|
+
}
|
|
9
|
+
//# sourceMappingURL=RecommendationProfileStore.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"RecommendationProfileStore.d.ts","sourceRoot":"","sources":["../../../../src/Recommendation/Stores/RecommendationProfileStore.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AACjD,OAAO,KAAK,EAAE,8BAA8B,EAAE,MAAM,2BAA2B,CAAC;AAEhF,qBAAa,0BAA0B;IAC/B,GAAG,EAAG,MAAM,CAAC;IACb,SAAS,EAAG,MAAM,CAAC;IACnB,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAM;gBAE7B,QAAQ,EAAE,aAAa,EAAE,IAAI,CAAC,EAAE,8BAA8B;CAe1E"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.RecommendationProfileStore = void 0;
|
|
4
|
+
var mobx_1 = require("mobx");
|
|
5
|
+
var RecommendationProfileStore = /** @class */ (function () {
|
|
6
|
+
function RecommendationProfileStore(services, data) {
|
|
7
|
+
var _a;
|
|
8
|
+
this.display = {};
|
|
9
|
+
if (!((_a = data === null || data === void 0 ? void 0 : data.profile) === null || _a === void 0 ? void 0 : _a.tag)) {
|
|
10
|
+
return;
|
|
11
|
+
}
|
|
12
|
+
this.tag = data.profile.tag;
|
|
13
|
+
this.placement = data.profile.placement;
|
|
14
|
+
this.display = data.profile.display;
|
|
15
|
+
(0, mobx_1.makeObservable)(this, {
|
|
16
|
+
tag: mobx_1.observable,
|
|
17
|
+
placement: mobx_1.observable,
|
|
18
|
+
display: mobx_1.observable,
|
|
19
|
+
});
|
|
20
|
+
}
|
|
21
|
+
return RecommendationProfileStore;
|
|
22
|
+
}());
|
|
23
|
+
exports.RecommendationProfileStore = RecommendationProfileStore;
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export {
|
|
1
|
+
export { RecommendationProfileStore } from './RecommendationProfileStore';
|
|
2
2
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/Recommendation/Stores/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/Recommendation/Stores/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,0BAA0B,EAAE,MAAM,8BAA8B,CAAC"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.
|
|
4
|
-
var
|
|
5
|
-
Object.defineProperty(exports, "
|
|
3
|
+
exports.RecommendationProfileStore = void 0;
|
|
4
|
+
var RecommendationProfileStore_1 = require("./RecommendationProfileStore");
|
|
5
|
+
Object.defineProperty(exports, "RecommendationProfileStore", { enumerable: true, get: function () { return RecommendationProfileStore_1.RecommendationProfileStore; } });
|
|
@@ -1,26 +1,26 @@
|
|
|
1
1
|
import type { SearchResponseModel, MetaResponseModel } from '@searchspring/snapi-types';
|
|
2
2
|
import type { SearchStoreConfig, StoreServices } from '../types';
|
|
3
|
-
import {
|
|
3
|
+
import { SearchMerchandisingStore, SearchFacetStore, SearchFilterStore, SearchResultStore, SearchPaginationStore, SearchSortingStore, SearchQueryStore } from './Stores';
|
|
4
4
|
import { AbstractStore } from '../Abstract/AbstractStore';
|
|
5
5
|
import { StorageStore } from '../Storage/StorageStore';
|
|
6
6
|
export declare class SearchStore extends AbstractStore {
|
|
7
|
-
config: SearchStoreConfig;
|
|
8
7
|
services: StoreServices;
|
|
9
8
|
data: SearchResponseModel & {
|
|
10
9
|
meta: MetaResponseModel;
|
|
11
10
|
};
|
|
12
11
|
meta: MetaResponseModel;
|
|
13
|
-
merchandising:
|
|
14
|
-
search:
|
|
15
|
-
facets:
|
|
16
|
-
filters:
|
|
17
|
-
results:
|
|
18
|
-
pagination:
|
|
19
|
-
sorting:
|
|
12
|
+
merchandising: SearchMerchandisingStore;
|
|
13
|
+
search: SearchQueryStore;
|
|
14
|
+
facets: SearchFacetStore;
|
|
15
|
+
filters: SearchFilterStore;
|
|
16
|
+
results: SearchResultStore;
|
|
17
|
+
pagination: SearchPaginationStore;
|
|
18
|
+
sorting: SearchSortingStore;
|
|
20
19
|
storage: StorageStore;
|
|
21
20
|
constructor(config: SearchStoreConfig, services: StoreServices);
|
|
22
|
-
|
|
23
|
-
|
|
21
|
+
reset(): void;
|
|
22
|
+
update(data?: SearchResponseModel & {
|
|
23
|
+
meta?: MetaResponseModel;
|
|
24
24
|
}): void;
|
|
25
25
|
}
|
|
26
26
|
//# sourceMappingURL=SearchStore.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SearchStore.d.ts","sourceRoot":"","sources":["../../../src/Search/SearchStore.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,mBAAmB,EAAE,iBAAiB,EAAE,MAAM,2BAA2B,CAAC;AACxF,OAAO,KAAK,EAAE,iBAAiB,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AACjE,OAAO,
|
|
1
|
+
{"version":3,"file":"SearchStore.d.ts","sourceRoot":"","sources":["../../../src/Search/SearchStore.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,mBAAmB,EAAE,iBAAiB,EAAE,MAAM,2BAA2B,CAAC;AACxF,OAAO,KAAK,EAAE,iBAAiB,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AACjE,OAAO,EACN,wBAAwB,EACxB,gBAAgB,EAChB,iBAAiB,EACjB,iBAAiB,EACjB,qBAAqB,EACrB,kBAAkB,EAClB,gBAAgB,EAChB,MAAM,UAAU,CAAC;AAClB,OAAO,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAC1D,OAAO,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AAEvD,qBAAa,WAAY,SAAQ,aAAa;IACtC,QAAQ,EAAE,aAAa,CAAC;IACxB,IAAI,EAAG,mBAAmB,GAAG;QAAE,IAAI,EAAE,iBAAiB,CAAA;KAAE,CAAC;IACzD,IAAI,EAAG,iBAAiB,CAAC;IACzB,aAAa,EAAG,wBAAwB,CAAC;IACzC,MAAM,EAAG,gBAAgB,CAAC;IAC1B,MAAM,EAAG,gBAAgB,CAAC;IAC1B,OAAO,EAAG,iBAAiB,CAAC;IAC5B,OAAO,EAAG,iBAAiB,CAAC;IAC5B,UAAU,EAAG,qBAAqB,CAAC;IACnC,OAAO,EAAG,kBAAkB,CAAC;IAC7B,OAAO,EAAE,YAAY,CAAC;gBAEjB,MAAM,EAAE,iBAAiB,EAAE,QAAQ,EAAE,aAAa;IAqCvD,KAAK,IAAI,IAAI;IAIb,MAAM,CAAC,IAAI,GAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,iBAAiB,CAAA;KAAO,GAAG,IAAI;CAalF"}
|
|
@@ -26,13 +26,12 @@ var SearchStore = /** @class */ (function (_super) {
|
|
|
26
26
|
var _this = this;
|
|
27
27
|
var _a;
|
|
28
28
|
_this = _super.call(this, config) || this;
|
|
29
|
-
_this.meta = {};
|
|
30
29
|
if (typeof services != 'object' || typeof ((_a = services.urlManager) === null || _a === void 0 ? void 0 : _a.subscribe) != 'function') {
|
|
31
30
|
throw new Error("Invalid service 'urlManager' passed to SearchStore. Missing \"subscribe\" function.");
|
|
32
31
|
}
|
|
33
32
|
_this.services = services;
|
|
34
33
|
_this.storage = new StorageStore_1.StorageStore();
|
|
35
|
-
_this.update(
|
|
34
|
+
_this.update();
|
|
36
35
|
(0, mobx_1.makeObservable)(_this, {
|
|
37
36
|
search: mobx_1.observable,
|
|
38
37
|
merchandising: mobx_1.observable,
|
|
@@ -44,18 +43,35 @@ var SearchStore = /** @class */ (function (_super) {
|
|
|
44
43
|
});
|
|
45
44
|
return _this;
|
|
46
45
|
}
|
|
46
|
+
/*
|
|
47
|
+
TODO: refactor sub-store interfaces
|
|
48
|
+
|
|
49
|
+
interface StoreParameters {
|
|
50
|
+
config?: StoreConfigs;
|
|
51
|
+
services?: StoreServices;
|
|
52
|
+
stores?: {
|
|
53
|
+
storage?: StorageStore;
|
|
54
|
+
state?: StateStore;
|
|
55
|
+
};
|
|
56
|
+
data?: SearchResponseModel & { meta: MetaResponseModel };
|
|
57
|
+
}
|
|
58
|
+
*/
|
|
59
|
+
SearchStore.prototype.reset = function () {
|
|
60
|
+
this.update();
|
|
61
|
+
};
|
|
47
62
|
SearchStore.prototype.update = function (data) {
|
|
63
|
+
if (data === void 0) { data = {}; }
|
|
48
64
|
this.error = undefined;
|
|
49
65
|
this.data = JSON.parse(JSON.stringify(data));
|
|
50
66
|
this.loaded = !!data.pagination;
|
|
51
|
-
this.meta = data.meta;
|
|
52
|
-
this.merchandising = new Stores_1.
|
|
53
|
-
this.search = new Stores_1.
|
|
54
|
-
this.facets = new Stores_1.
|
|
55
|
-
this.filters = new Stores_1.
|
|
56
|
-
this.results = new Stores_1.
|
|
57
|
-
this.pagination = new Stores_1.
|
|
58
|
-
this.sorting = new Stores_1.
|
|
67
|
+
this.meta = data.meta || {};
|
|
68
|
+
this.merchandising = new Stores_1.SearchMerchandisingStore(this.services, (data === null || data === void 0 ? void 0 : data.merchandising) || {});
|
|
69
|
+
this.search = new Stores_1.SearchQueryStore(this.services, (data === null || data === void 0 ? void 0 : data.search) || {});
|
|
70
|
+
this.facets = new Stores_1.SearchFacetStore(this.config, this.services, this.storage, data.facets, (data === null || data === void 0 ? void 0 : data.pagination) || {}, this.meta);
|
|
71
|
+
this.filters = new Stores_1.SearchFilterStore(this.services, data.filters, this.meta);
|
|
72
|
+
this.results = new Stores_1.SearchResultStore(this.config, this.services, (data === null || data === void 0 ? void 0 : data.results) || [], data.pagination, data.merchandising);
|
|
73
|
+
this.pagination = new Stores_1.SearchPaginationStore(this.config, this.services, data.pagination);
|
|
74
|
+
this.sorting = new Stores_1.SearchSortingStore(this.services, (data === null || data === void 0 ? void 0 : data.sorting) || [], (data === null || data === void 0 ? void 0 : data.search) || {}, this.meta);
|
|
59
75
|
};
|
|
60
76
|
return SearchStore;
|
|
61
77
|
}(AbstractStore_1.AbstractStore));
|
|
@@ -0,0 +1,76 @@
|
|
|
1
|
+
import type { UrlManager } from '@searchspring/snap-url-manager';
|
|
2
|
+
import type { StorageStore } from '../../Storage/StorageStore';
|
|
3
|
+
import type { AutocompleteStoreConfig, SearchStoreConfig, StoreServices } from '../../types';
|
|
4
|
+
import type { MetaResponseModel, MetaResponseModelFacet, MetaResponseModelFacetSlider, MetaResponseModelFacetValueMultipleEnum, MetaResponseModelFacetHierarchyAllOf, SearchResponseModelPagination, SearchResponseModelFacet, SearchResponseModelFacetRange, SearchResponseModelFacetValue, SearchResponseModelFacetValueAllOfValues, SearchRequestModelFilterRangeAllOfValue } from '@searchspring/snapi-types';
|
|
5
|
+
export declare class SearchFacetStore extends Array {
|
|
6
|
+
static get [Symbol.species](): ArrayConstructor;
|
|
7
|
+
constructor(config: SearchStoreConfig | AutocompleteStoreConfig, services: StoreServices, storage: StorageStore, facetsData: SearchResponseModelFacet[], pagination: SearchResponseModelPagination, meta: MetaResponseModel);
|
|
8
|
+
}
|
|
9
|
+
export declare class Facet {
|
|
10
|
+
services: StoreServices;
|
|
11
|
+
type: string;
|
|
12
|
+
field: string;
|
|
13
|
+
filtered: boolean;
|
|
14
|
+
custom: {};
|
|
15
|
+
collapsed: boolean;
|
|
16
|
+
display: string;
|
|
17
|
+
label: string;
|
|
18
|
+
storage: StorageStore;
|
|
19
|
+
constructor(services: StoreServices, storage: StorageStore, facet: SearchResponseModelFacetValue | SearchResponseModelFacetRange, facetMeta: MetaResponseModelFacet);
|
|
20
|
+
get clear(): {
|
|
21
|
+
url: UrlManager;
|
|
22
|
+
};
|
|
23
|
+
toggleCollapse(): void;
|
|
24
|
+
}
|
|
25
|
+
export declare class RangeFacet extends Facet {
|
|
26
|
+
step?: number;
|
|
27
|
+
range?: SearchRequestModelFilterRangeAllOfValue;
|
|
28
|
+
active?: SearchRequestModelFilterRangeAllOfValue;
|
|
29
|
+
formatSeparator: string;
|
|
30
|
+
formatValue: string;
|
|
31
|
+
constructor(config: SearchStoreConfig | AutocompleteStoreConfig, services: StoreServices, storage: StorageStore, facet: SearchResponseModelFacetRange, facetMeta: MetaResponseModelFacetSlider);
|
|
32
|
+
}
|
|
33
|
+
export declare class ValueFacet extends Facet {
|
|
34
|
+
values: Array<FacetHierarchyValue | FacetValue | FacetRangeValue | undefined>;
|
|
35
|
+
search: {
|
|
36
|
+
input: string;
|
|
37
|
+
};
|
|
38
|
+
multiple: MetaResponseModelFacetValueMultipleEnum;
|
|
39
|
+
overflow: {
|
|
40
|
+
enabled: boolean;
|
|
41
|
+
limited: boolean;
|
|
42
|
+
limit: number;
|
|
43
|
+
remaining: number | undefined;
|
|
44
|
+
setLimit: (limit: number) => void;
|
|
45
|
+
toggle: (val?: boolean) => void;
|
|
46
|
+
calculate: () => void;
|
|
47
|
+
};
|
|
48
|
+
constructor(config: SearchStoreConfig | AutocompleteStoreConfig, services: StoreServices, storage: StorageStore, facet: SearchResponseModelFacetValue, facetMeta: MetaResponseModelFacet);
|
|
49
|
+
get refinedValues(): (FacetHierarchyValue | FacetValue | FacetRangeValue)[];
|
|
50
|
+
}
|
|
51
|
+
export declare class FacetValue {
|
|
52
|
+
label: string;
|
|
53
|
+
count: number;
|
|
54
|
+
filtered: boolean;
|
|
55
|
+
value: string;
|
|
56
|
+
custom: {};
|
|
57
|
+
url: UrlManager;
|
|
58
|
+
preview?: () => void;
|
|
59
|
+
constructor(services: StoreServices, facet: ValueFacet, value: SearchResponseModelFacetValueAllOfValues);
|
|
60
|
+
}
|
|
61
|
+
export declare class FacetHierarchyValue extends FacetValue {
|
|
62
|
+
level: number;
|
|
63
|
+
history: boolean;
|
|
64
|
+
constructor(services: StoreServices, facet: ValueFacet & MetaResponseModelFacetHierarchyAllOf, value: SearchResponseModelFacetValueAllOfValues, filteredValues: SearchResponseModelFacetValueAllOfValues[]);
|
|
65
|
+
}
|
|
66
|
+
export declare class FacetRangeValue {
|
|
67
|
+
label: string;
|
|
68
|
+
count: number;
|
|
69
|
+
filtered: boolean;
|
|
70
|
+
low: number;
|
|
71
|
+
high: number;
|
|
72
|
+
custom: {};
|
|
73
|
+
url: UrlManager;
|
|
74
|
+
constructor(services: StoreServices, facet: ValueFacet, value: SearchResponseModelFacetValueAllOfValues);
|
|
75
|
+
}
|
|
76
|
+
//# sourceMappingURL=SearchFacetStore.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"SearchFacetStore.d.ts","sourceRoot":"","sources":["../../../../src/Search/Stores/SearchFacetStore.ts"],"names":[],"mappings":"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"}
|