@searchspring/snap-client 0.27.2 → 0.27.5
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/Client/Client.d.ts.map +1 -1
- package/dist/cjs/Client/Client.js +13 -13
- package/dist/cjs/Client/NetworkCache/NetworkCache.d.ts +3 -3
- package/dist/cjs/Client/NetworkCache/NetworkCache.d.ts.map +1 -1
- package/dist/cjs/Client/NetworkCache/NetworkCache.js +5 -3
- package/dist/cjs/Client/apis/Abstract.js +4 -3
- package/dist/cjs/Client/apis/Recommend.d.ts.map +1 -1
- package/dist/cjs/Client/apis/Recommend.js +52 -24
- package/dist/cjs/Client/transforms/searchRequest.d.ts +6 -6
- package/dist/cjs/Client/transforms/searchRequest.d.ts.map +1 -1
- package/dist/cjs/Client/transforms/searchRequest.js +4 -4
- package/dist/cjs/Client/transforms/searchResponse.d.ts +161 -20
- package/dist/cjs/Client/transforms/searchResponse.d.ts.map +1 -1
- package/dist/cjs/Client/transforms/searchResponse.js +49 -40
- package/dist/cjs/Client/utils/mergeParams.d.ts.map +1 -1
- package/dist/cjs/types.d.ts +7 -6
- package/dist/cjs/types.d.ts.map +1 -1
- package/dist/esm/Client/Client.d.ts.map +1 -1
- package/dist/esm/Client/Client.js +8 -8
- package/dist/esm/Client/NetworkCache/NetworkCache.d.ts +3 -3
- package/dist/esm/Client/NetworkCache/NetworkCache.d.ts.map +1 -1
- package/dist/esm/Client/NetworkCache/NetworkCache.js +4 -3
- package/dist/esm/Client/apis/Abstract.js +3 -3
- package/dist/esm/Client/apis/Recommend.d.ts.map +1 -1
- package/dist/esm/Client/apis/Recommend.js +26 -9
- package/dist/esm/Client/transforms/searchRequest.d.ts +21 -21
- package/dist/esm/Client/transforms/searchRequest.d.ts.map +1 -1
- package/dist/esm/Client/transforms/searchRequest.js +3 -3
- package/dist/esm/Client/transforms/searchResponse.d.ts +161 -20
- package/dist/esm/Client/transforms/searchResponse.d.ts.map +1 -1
- package/dist/esm/Client/transforms/searchResponse.js +51 -45
- package/dist/esm/Client/transforms/suggestResponse.d.ts +2 -2
- package/dist/esm/Client/utils/mergeParams.d.ts.map +1 -1
- package/dist/esm/types.d.ts +7 -6
- package/dist/esm/types.d.ts.map +1 -1
- package/package.json +3 -3
|
@@ -1,32 +1,173 @@
|
|
|
1
|
-
import { SearchRequestModel,
|
|
2
|
-
|
|
1
|
+
import { SearchRequestModel, SearchResponseModelResult, SearchResponseModelPagination, SearchResponseModelSearchMatchTypeEnum } from '@searchspring/snapi-types';
|
|
2
|
+
declare type sortingOption = {
|
|
3
|
+
field: string;
|
|
4
|
+
direction: string;
|
|
5
|
+
label: string;
|
|
6
|
+
active?: number;
|
|
7
|
+
};
|
|
8
|
+
declare type rawResult = {
|
|
9
|
+
brand?: string;
|
|
10
|
+
collection_handle?: string[];
|
|
11
|
+
collection_id?: string[];
|
|
12
|
+
handle?: string;
|
|
13
|
+
id: string;
|
|
14
|
+
imageUrl: string;
|
|
15
|
+
intellisuggestData?: string;
|
|
16
|
+
intellisuggestSignature?: string;
|
|
17
|
+
msrp?: string;
|
|
18
|
+
name: string;
|
|
19
|
+
price: string;
|
|
20
|
+
product_type?: string[];
|
|
21
|
+
product_type_unigram?: string;
|
|
22
|
+
sku: string;
|
|
23
|
+
ss_available?: string;
|
|
24
|
+
ss_best_selling?: string;
|
|
25
|
+
ss_days_since_published?: string;
|
|
26
|
+
ss_id?: string;
|
|
27
|
+
ss_image_hover?: string;
|
|
28
|
+
ss_images?: string[];
|
|
29
|
+
ss_inventory_count?: string;
|
|
30
|
+
ss_tags?: string[];
|
|
31
|
+
thumbnailImageUrl?: string;
|
|
32
|
+
uid?: string;
|
|
33
|
+
url?: string;
|
|
34
|
+
children?: [];
|
|
35
|
+
};
|
|
36
|
+
declare type facetValue = {
|
|
37
|
+
active: boolean;
|
|
38
|
+
type: string;
|
|
39
|
+
value: string;
|
|
40
|
+
label: string;
|
|
41
|
+
count: number;
|
|
42
|
+
low?: string | number;
|
|
43
|
+
high?: string | number;
|
|
44
|
+
};
|
|
45
|
+
declare type facet = {
|
|
46
|
+
hierarchyDelimiter?: string;
|
|
47
|
+
multiple?: string;
|
|
48
|
+
active?: any;
|
|
49
|
+
count?: number;
|
|
50
|
+
high?: string;
|
|
51
|
+
low?: string;
|
|
52
|
+
field: string;
|
|
53
|
+
label: string;
|
|
54
|
+
type: null | string;
|
|
55
|
+
collapse: number;
|
|
56
|
+
facet_active: number;
|
|
57
|
+
values: facetValue[];
|
|
58
|
+
step?: number;
|
|
59
|
+
filtered?: boolean;
|
|
60
|
+
range?: string[];
|
|
61
|
+
};
|
|
62
|
+
declare type breadcrumb = {
|
|
63
|
+
field: string;
|
|
64
|
+
label: string;
|
|
65
|
+
filterLabel: string;
|
|
66
|
+
filterValue: string;
|
|
67
|
+
removeFilters: [];
|
|
68
|
+
removeRefineQuery: [];
|
|
69
|
+
};
|
|
70
|
+
export declare type searchResponseType = {
|
|
71
|
+
pagination: {
|
|
72
|
+
totalResults: number;
|
|
73
|
+
begin: number;
|
|
74
|
+
end: number;
|
|
75
|
+
currentPage: number;
|
|
76
|
+
totalPages: number;
|
|
77
|
+
previousPage: number;
|
|
78
|
+
nextPage: number;
|
|
79
|
+
perPage: number;
|
|
80
|
+
defaultPerPage: number;
|
|
81
|
+
};
|
|
82
|
+
sorting: {
|
|
83
|
+
options: sortingOption[];
|
|
84
|
+
};
|
|
85
|
+
resultLayout?: string;
|
|
86
|
+
results: rawResult[];
|
|
87
|
+
facets: facet[];
|
|
88
|
+
breadcrumbs?: breadcrumb[];
|
|
89
|
+
filterSummary: {
|
|
90
|
+
field: string;
|
|
91
|
+
filterLabel: string;
|
|
92
|
+
filterValue: string;
|
|
93
|
+
label: string;
|
|
94
|
+
value: {
|
|
95
|
+
rangeHigh?: string | number;
|
|
96
|
+
rangeLow?: string | number;
|
|
97
|
+
low?: string | number;
|
|
98
|
+
high?: string | number;
|
|
99
|
+
} | string;
|
|
100
|
+
}[];
|
|
101
|
+
merchandising: {
|
|
102
|
+
redirect: string;
|
|
103
|
+
is_elevated: string[];
|
|
104
|
+
elevated: any[];
|
|
105
|
+
removed: string[];
|
|
106
|
+
content: {};
|
|
107
|
+
facets: any[];
|
|
108
|
+
facetsHide: any[];
|
|
109
|
+
experiments?: [];
|
|
110
|
+
variants?: [];
|
|
111
|
+
personalized?: boolean;
|
|
112
|
+
triggeredCampaigns?: {
|
|
113
|
+
id: string;
|
|
114
|
+
title: string;
|
|
115
|
+
type: string;
|
|
116
|
+
}[];
|
|
117
|
+
};
|
|
118
|
+
didYouMean?: {
|
|
119
|
+
query: string;
|
|
120
|
+
};
|
|
121
|
+
query?: {
|
|
122
|
+
matchType: SearchResponseModelSearchMatchTypeEnum | undefined;
|
|
123
|
+
};
|
|
124
|
+
};
|
|
125
|
+
export declare function transformSearchResponse(response: searchResponseType, request: SearchRequestModel): any;
|
|
3
126
|
export declare namespace transformSearchResponse {
|
|
4
|
-
var pagination: (response:
|
|
127
|
+
var pagination: (response: searchResponseType) => {
|
|
5
128
|
pagination: SearchResponseModelPagination;
|
|
6
129
|
};
|
|
7
|
-
var results: (response:
|
|
8
|
-
results:
|
|
9
|
-
};
|
|
10
|
-
var result: (rawResult: any) => SearchResponseModelResult;
|
|
11
|
-
var filters: (response: any) => {
|
|
12
|
-
filters: any;
|
|
130
|
+
var results: (response: searchResponseType) => {
|
|
131
|
+
results: SearchResponseModelResult[];
|
|
13
132
|
};
|
|
14
|
-
var
|
|
15
|
-
|
|
133
|
+
var result: (rawResult: rawResult) => SearchResponseModelResult;
|
|
134
|
+
var filters: (response: searchResponseType) => any;
|
|
135
|
+
var facets: (response: searchResponseType, request?: SearchRequestModel) => {
|
|
136
|
+
facets: any[];
|
|
16
137
|
};
|
|
17
|
-
var sorting: (response:
|
|
18
|
-
sorting:
|
|
138
|
+
var sorting: (response: searchResponseType) => {
|
|
139
|
+
sorting: {
|
|
140
|
+
field: string;
|
|
141
|
+
direction: string;
|
|
142
|
+
}[];
|
|
19
143
|
};
|
|
20
|
-
var merchandising: (response:
|
|
21
|
-
merchandising:
|
|
144
|
+
var merchandising: (response: searchResponseType) => {
|
|
145
|
+
merchandising: {
|
|
146
|
+
redirect: string;
|
|
147
|
+
is_elevated: string[];
|
|
148
|
+
elevated: any[];
|
|
149
|
+
removed: string[];
|
|
150
|
+
content: {};
|
|
151
|
+
facets: any[];
|
|
152
|
+
facetsHide: any[];
|
|
153
|
+
experiments?: [] | undefined;
|
|
154
|
+
variants?: [] | undefined;
|
|
155
|
+
personalized?: boolean | undefined;
|
|
156
|
+
triggeredCampaigns?: {
|
|
157
|
+
id: string;
|
|
158
|
+
title: string;
|
|
159
|
+
type: string;
|
|
160
|
+
}[] | undefined;
|
|
161
|
+
};
|
|
22
162
|
};
|
|
23
|
-
var search: (response:
|
|
163
|
+
var search: (response: searchResponseType, request: SearchRequestModel) => {
|
|
24
164
|
search: {
|
|
25
|
-
query:
|
|
26
|
-
didYouMean:
|
|
27
|
-
originalQuery:
|
|
28
|
-
matchType:
|
|
165
|
+
query: string | undefined;
|
|
166
|
+
didYouMean: string | undefined;
|
|
167
|
+
originalQuery: string | undefined;
|
|
168
|
+
matchType: SearchResponseModelSearchMatchTypeEnum | undefined;
|
|
29
169
|
};
|
|
30
170
|
};
|
|
31
171
|
}
|
|
172
|
+
export {};
|
|
32
173
|
//# sourceMappingURL=searchResponse.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"searchResponse.d.ts","sourceRoot":"","sources":["../../../../src/Client/transforms/searchResponse.ts"],"names":[],"mappings":"AAEA,OAAO,EACN,kBAAkB,EAElB,
|
|
1
|
+
{"version":3,"file":"searchResponse.d.ts","sourceRoot":"","sources":["../../../../src/Client/transforms/searchResponse.ts"],"names":[],"mappings":"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"}
|
|
@@ -37,19 +37,19 @@ export function transformSearchResponse(response, request) {
|
|
|
37
37
|
};
|
|
38
38
|
}
|
|
39
39
|
transformSearchResponse.pagination = (response) => {
|
|
40
|
-
const pagination =
|
|
40
|
+
const pagination = response?.pagination;
|
|
41
41
|
return {
|
|
42
42
|
pagination: {
|
|
43
|
-
totalResults: pagination
|
|
44
|
-
page: pagination
|
|
45
|
-
pageSize: pagination
|
|
46
|
-
defaultPageSize: pagination
|
|
47
|
-
totalPages: pagination
|
|
43
|
+
totalResults: pagination?.totalResults,
|
|
44
|
+
page: pagination?.currentPage,
|
|
45
|
+
pageSize: pagination?.perPage,
|
|
46
|
+
defaultPageSize: pagination?.defaultPerPage,
|
|
47
|
+
totalPages: pagination?.totalPages,
|
|
48
48
|
},
|
|
49
49
|
};
|
|
50
50
|
};
|
|
51
51
|
transformSearchResponse.results = (response) => {
|
|
52
|
-
const results =
|
|
52
|
+
const results = response?.results || [];
|
|
53
53
|
return { results: results.map(transformSearchResponse.result) };
|
|
54
54
|
};
|
|
55
55
|
transformSearchResponse.result = (rawResult) => {
|
|
@@ -57,7 +57,7 @@ transformSearchResponse.result = (rawResult) => {
|
|
|
57
57
|
if (typeof rawResult[key] != 'undefined') {
|
|
58
58
|
return {
|
|
59
59
|
...coreFields,
|
|
60
|
-
[key]: decodeProperty(rawResult[key]),
|
|
60
|
+
[key]: decodeProperty(rawResult[key] || ''),
|
|
61
61
|
};
|
|
62
62
|
}
|
|
63
63
|
return coreFields;
|
|
@@ -71,7 +71,7 @@ transformSearchResponse.result = (rawResult) => {
|
|
|
71
71
|
.reduce((attributes, key) => {
|
|
72
72
|
return {
|
|
73
73
|
...attributes,
|
|
74
|
-
[key]: decodeProperty(rawResult[key]),
|
|
74
|
+
[key]: decodeProperty(rawResult[key] || ''),
|
|
75
75
|
};
|
|
76
76
|
}, {});
|
|
77
77
|
const children = rawResult?.children?.map((child) => {
|
|
@@ -96,17 +96,19 @@ transformSearchResponse.result = (rawResult) => {
|
|
|
96
96
|
});
|
|
97
97
|
};
|
|
98
98
|
transformSearchResponse.filters = (response) => {
|
|
99
|
-
const filterSummary =
|
|
99
|
+
const filterSummary = response?.filterSummary || [];
|
|
100
100
|
return {
|
|
101
101
|
filters: filterSummary.map((filter) => {
|
|
102
102
|
let value = filter.value;
|
|
103
103
|
let type = 'value';
|
|
104
104
|
if (typeof filter.value == 'object') {
|
|
105
|
-
(
|
|
106
|
-
(
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
105
|
+
if (filter && filter.value && filter.value.rangeHigh && filter.value.rangeLow) {
|
|
106
|
+
(type = 'range'),
|
|
107
|
+
(value = {
|
|
108
|
+
low: +filter.value.rangeLow,
|
|
109
|
+
high: +filter.value.rangeHigh,
|
|
110
|
+
});
|
|
111
|
+
}
|
|
110
112
|
}
|
|
111
113
|
return {
|
|
112
114
|
type,
|
|
@@ -119,7 +121,7 @@ transformSearchResponse.filters = (response) => {
|
|
|
119
121
|
};
|
|
120
122
|
transformSearchResponse.facets = (response, request = {}) => {
|
|
121
123
|
const filters = request.filters || [];
|
|
122
|
-
const facets =
|
|
124
|
+
const facets = response?.facets || [];
|
|
123
125
|
return {
|
|
124
126
|
facets: facets.map((facet) => {
|
|
125
127
|
let transformedFacet = {
|
|
@@ -128,19 +130,21 @@ transformSearchResponse.facets = (response, request = {}) => {
|
|
|
128
130
|
filtered: Boolean(facet.facet_active),
|
|
129
131
|
};
|
|
130
132
|
if (facet.step) {
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
133
|
+
if (facet.range) {
|
|
134
|
+
transformedFacet = {
|
|
135
|
+
...transformedFacet,
|
|
136
|
+
type: 'range',
|
|
137
|
+
step: facet.step,
|
|
138
|
+
range: {
|
|
139
|
+
low: facet.range[0] == '*' ? undefined : +facet.range[0],
|
|
140
|
+
high: facet.range[1] == '*' ? undefined : +facet.range[1],
|
|
141
|
+
},
|
|
142
|
+
};
|
|
143
|
+
}
|
|
144
|
+
if (facet.active && typeof facet.active != 'boolean' && facet.active.length > 1) {
|
|
141
145
|
transformedFacet.active = {
|
|
142
|
-
low: facet.active[0] == '*' ?
|
|
143
|
-
high: facet.active[1] == '*' ?
|
|
146
|
+
low: facet.active[0] == '*' ? undefined : +facet.active[0],
|
|
147
|
+
high: facet.active[1] == '*' ? undefined : +facet.active[1],
|
|
144
148
|
};
|
|
145
149
|
}
|
|
146
150
|
}
|
|
@@ -158,15 +162,17 @@ transformSearchResponse.facets = (response, request = {}) => {
|
|
|
158
162
|
const filterSelected = filters.find((f) => f.field == facet.field);
|
|
159
163
|
const newValues = [];
|
|
160
164
|
if (filterSelected && !filterSelected.background) {
|
|
161
|
-
const valueLevels = filterSelected.value
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
165
|
+
const valueLevels = filterSelected.value?.split(facet.hierarchyDelimiter || '>');
|
|
166
|
+
if (valueLevels) {
|
|
167
|
+
for (let i = valueLevels.length - 1; i >= 0; i--) {
|
|
168
|
+
const valueSplit = valueLevels.slice(0, i + 1);
|
|
169
|
+
const value = valueSplit.join(facet.hierarchyDelimiter);
|
|
170
|
+
newValues.unshift({
|
|
171
|
+
value,
|
|
172
|
+
filtered: value == filterSelected.value,
|
|
173
|
+
label: valueSplit[valueSplit.length - 1],
|
|
174
|
+
});
|
|
175
|
+
}
|
|
170
176
|
}
|
|
171
177
|
newValues.unshift({
|
|
172
178
|
value: null,
|
|
@@ -192,8 +198,8 @@ transformSearchResponse.facets = (response, request = {}) => {
|
|
|
192
198
|
transformedFacet.values = facet.values.map((value) => {
|
|
193
199
|
return {
|
|
194
200
|
filtered: value.active,
|
|
195
|
-
low: value.low == '*' ? null : +value.low,
|
|
196
|
-
high: value.high == '*' ? null : +value.high,
|
|
201
|
+
low: value.low == '*' ? null : value.low ? +value.low : null,
|
|
202
|
+
high: value.high == '*' ? null : value.high ? +value.high : null,
|
|
197
203
|
label: value.label,
|
|
198
204
|
count: value.count,
|
|
199
205
|
};
|
|
@@ -205,7 +211,7 @@ transformSearchResponse.facets = (response, request = {}) => {
|
|
|
205
211
|
};
|
|
206
212
|
};
|
|
207
213
|
transformSearchResponse.sorting = (response) => {
|
|
208
|
-
const sorts =
|
|
214
|
+
const sorts = response?.sorting?.options || [];
|
|
209
215
|
const transformedSorting = sorts
|
|
210
216
|
.filter((sort) => sort.active)
|
|
211
217
|
.map((sort) => {
|
|
@@ -219,7 +225,7 @@ transformSearchResponse.sorting = (response) => {
|
|
|
219
225
|
};
|
|
220
226
|
};
|
|
221
227
|
transformSearchResponse.merchandising = (response) => {
|
|
222
|
-
const merchandising =
|
|
228
|
+
const merchandising = response?.merchandising;
|
|
223
229
|
if (merchandising.content && Array.isArray(merchandising.content) && !merchandising.content.length) {
|
|
224
230
|
merchandising.content = {};
|
|
225
231
|
}
|
|
@@ -228,12 +234,12 @@ transformSearchResponse.merchandising = (response) => {
|
|
|
228
234
|
};
|
|
229
235
|
};
|
|
230
236
|
transformSearchResponse.search = (response, request) => {
|
|
231
|
-
const didYouMean =
|
|
232
|
-
const originalQuery =
|
|
233
|
-
const matchType =
|
|
237
|
+
const didYouMean = response?.didYouMean?.query;
|
|
238
|
+
const originalQuery = request?.search?.originalQuery;
|
|
239
|
+
const matchType = response?.query?.matchType;
|
|
234
240
|
return {
|
|
235
241
|
search: {
|
|
236
|
-
query:
|
|
242
|
+
query: request?.search?.query?.string,
|
|
237
243
|
didYouMean,
|
|
238
244
|
originalQuery,
|
|
239
245
|
matchType,
|
|
@@ -16,8 +16,8 @@ export declare namespace transformSuggestResponse {
|
|
|
16
16
|
} | {
|
|
17
17
|
suggested: {
|
|
18
18
|
text: string;
|
|
19
|
-
type: string;
|
|
20
|
-
source: string;
|
|
19
|
+
type: string | undefined;
|
|
20
|
+
source: string | undefined;
|
|
21
21
|
};
|
|
22
22
|
};
|
|
23
23
|
var alternatives: (response: SuggestResponseModel) => {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mergeParams.d.ts","sourceRoot":"","sources":["../../../../src/Client/utils/mergeParams.ts"],"names":[],"mappings":"AAAA,wBAAgB,WAAW,CAAC,GAAG,IAAI,
|
|
1
|
+
{"version":3,"file":"mergeParams.d.ts","sourceRoot":"","sources":["../../../../src/Client/utils/mergeParams.ts"],"names":[],"mappings":"AAAA,wBAAgB,WAAW,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,GAAG,GAAG,CAY/C"}
|
package/dist/esm/types.d.ts
CHANGED
|
@@ -20,18 +20,19 @@ export declare type ClientConfig = {
|
|
|
20
20
|
cache?: CacheConfig;
|
|
21
21
|
};
|
|
22
22
|
};
|
|
23
|
-
export declare type CacheConfig =
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
23
|
+
export declare type CacheConfig = Partial<DefaultCacheConfig>;
|
|
24
|
+
export declare type DefaultCacheConfig = {
|
|
25
|
+
enabled: boolean;
|
|
26
|
+
ttl: number;
|
|
27
|
+
maxSize: number;
|
|
28
|
+
purgeable: boolean;
|
|
28
29
|
entries?: {
|
|
29
30
|
[key: string]: Response;
|
|
30
31
|
};
|
|
31
32
|
};
|
|
32
33
|
export declare type CacheEntry = {
|
|
33
34
|
value: Response;
|
|
34
|
-
expires
|
|
35
|
+
expires: number;
|
|
35
36
|
purgeable?: boolean;
|
|
36
37
|
};
|
|
37
38
|
export declare type Cache = {
|
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,oBAAY,YAAY,GAAG;IAC1B,IAAI,CAAC,EAAE;QACN,GAAG,CAAC,EAAE,aAAa,CAAC;QACpB,KAAK,CAAC,EAAE,WAAW,CAAC;KACpB,CAAC;IACF,MAAM,CAAC,EAAE;QACR,GAAG,CAAC,EAAE,aAAa,CAAC;QACpB,KAAK,CAAC,EAAE,WAAW,CAAC;KACpB,CAAC;IACF,YAAY,CAAC,EAAE;QACd,GAAG,CAAC,EAAE,aAAa,CAAC;QACpB,KAAK,CAAC,EAAE,WAAW,CAAC;KACpB,CAAC;IACF,SAAS,CAAC,EAAE;QACX,GAAG,CAAC,EAAE,aAAa,CAAC;QACpB,KAAK,CAAC,EAAE,WAAW,CAAC;KACpB,CAAC;IACF,OAAO,CAAC,EAAE;QACT,GAAG,CAAC,EAAE,aAAa,CAAC;QACpB,KAAK,CAAC,EAAE,WAAW,CAAC;KACpB,CAAC;CACF,CAAC;AAEF,oBAAY,WAAW,GAAG
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/types.ts"],"names":[],"mappings":"AAAA,oBAAY,YAAY,GAAG;IAC1B,IAAI,CAAC,EAAE;QACN,GAAG,CAAC,EAAE,aAAa,CAAC;QACpB,KAAK,CAAC,EAAE,WAAW,CAAC;KACpB,CAAC;IACF,MAAM,CAAC,EAAE;QACR,GAAG,CAAC,EAAE,aAAa,CAAC;QACpB,KAAK,CAAC,EAAE,WAAW,CAAC;KACpB,CAAC;IACF,YAAY,CAAC,EAAE;QACd,GAAG,CAAC,EAAE,aAAa,CAAC;QACpB,KAAK,CAAC,EAAE,WAAW,CAAC;KACpB,CAAC;IACF,SAAS,CAAC,EAAE;QACX,GAAG,CAAC,EAAE,aAAa,CAAC;QACpB,KAAK,CAAC,EAAE,WAAW,CAAC;KACpB,CAAC;IACF,OAAO,CAAC,EAAE;QACT,GAAG,CAAC,EAAE,aAAa,CAAC;QACpB,KAAK,CAAC,EAAE,WAAW,CAAC;KACpB,CAAC;CACF,CAAC;AAEF,oBAAY,WAAW,GAAG,OAAO,CAAC,kBAAkB,CAAC,CAAC;AAEtD,oBAAY,kBAAkB,GAAG;IAChC,OAAO,EAAE,OAAO,CAAC;IACjB,GAAG,EAAE,MAAM,CAAC;IACZ,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,OAAO,CAAC;IACnB,OAAO,CAAC,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,QAAQ,CAAA;KAAE,CAAC;CACtC,CAAC;AACF,oBAAY,UAAU,GAAG;IACxB,KAAK,EAAE,QAAQ,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,CAAC,EAAE,OAAO,CAAC;CACpB,CAAC;AAEF,oBAAY,KAAK,GAAG;IACnB,CAAC,GAAG,EAAE,MAAM,GAAG,UAAU,CAAC;CAC1B,CAAC;AAEF,oBAAY,aAAa,GAAG;IAC3B,MAAM,CAAC,EAAE,MAAM,CAAC;CAChB,CAAC;AAEF,oBAAY,aAAa,GAAG;IAC3B,MAAM,EAAE,MAAM,CAAC;IACf,CAAC,iBAAiB,EAAE,MAAM,GAAG,GAAG,CAAC;CACjC,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@searchspring/snap-client",
|
|
3
|
-
"version": "0.27.
|
|
3
|
+
"version": "0.27.5",
|
|
4
4
|
"description": "Snap Client",
|
|
5
5
|
"main": "dist/cjs/index.js",
|
|
6
6
|
"module": "dist/esm/index.js",
|
|
@@ -20,12 +20,12 @@
|
|
|
20
20
|
"test:watch": "jest --watch"
|
|
21
21
|
},
|
|
22
22
|
"dependencies": {
|
|
23
|
-
"@searchspring/snap-toolbox": "^0.27.
|
|
23
|
+
"@searchspring/snap-toolbox": "^0.27.5",
|
|
24
24
|
"deepmerge": "^4.2.2"
|
|
25
25
|
},
|
|
26
26
|
"sideEffects": false,
|
|
27
27
|
"files": [
|
|
28
28
|
"dist/**/*"
|
|
29
29
|
],
|
|
30
|
-
"gitHead": "
|
|
30
|
+
"gitHead": "1b6ea66f4b93f511d9836a02fceb6ce89e00892f"
|
|
31
31
|
}
|