@bridgeline-digital/hawksearch-handlebars-ui 5.2.4 → 5.2.6
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/changelog.md +6 -0
- package/dist/hawksearch-handlebars-ui.cjs +10 -0
- package/dist/hawksearch-handlebars-ui.js +11623 -0
- package/dist/hawksearch-handlebars-ui.min.js +975 -0
- package/dist/hawksearch-handlebars-ui.umd.cjs +10 -0
- package/dist/index.d.ts +1438 -1
- package/package.json +1 -1
- package/dist/components/base.component.d.ts +0 -139
- package/dist/components/content/content-types/base-content.component.d.ts +0 -9
- package/dist/components/content/content-types/custom-content/custom-content.component.d.ts +0 -21
- package/dist/components/content/content-types/featured-items-content/featured-items-content.component.d.ts +0 -22
- package/dist/components/content/content-types/featured-items-content-item/featured-items-content-item.component.d.ts +0 -39
- package/dist/components/content/content-types/image-content/image-content.component.d.ts +0 -22
- package/dist/components/content/content-types/index.d.ts +0 -6
- package/dist/components/content/content-types/popular-queries-content/popular-queries-content.component.d.ts +0 -22
- package/dist/components/content/content-zone/content-zone.component.d.ts +0 -44
- package/dist/components/content/index.d.ts +0 -2
- package/dist/components/general/date-picker/date-picker.component.d.ts +0 -117
- package/dist/components/general/icon/icon.component.d.ts +0 -38
- package/dist/components/general/index.d.ts +0 -5
- package/dist/components/general/range-slider/range-slider.component.d.ts +0 -54
- package/dist/components/general/rating/rating.component.d.ts +0 -39
- package/dist/components/general/tooltip/tooltip.component.d.ts +0 -32
- package/dist/components/index.d.ts +0 -231
- package/dist/components/landing-pages/index.d.ts +0 -1
- package/dist/components/landing-pages/landing-page/landing-page.component.d.ts +0 -32
- package/dist/components/recommendations/index.d.ts +0 -2
- package/dist/components/recommendations/recommendations/recommendations.component.d.ts +0 -87
- package/dist/components/recommendations/recommendations-item/recommendations-item.component.d.ts +0 -40
- package/dist/components/search/autocomplete/autocomplete.component.d.ts +0 -59
- package/dist/components/search/facet-types/base-facet.component.d.ts +0 -44
- package/dist/components/search/facet-types/checkbox-list-facet/checkbox-list-facet.component.d.ts +0 -36
- package/dist/components/search/facet-types/color-facet/color-facet.component.d.ts +0 -24
- package/dist/components/search/facet-types/date-range-facet/date-range-facet.component.d.ts +0 -33
- package/dist/components/search/facet-types/index.d.ts +0 -11
- package/dist/components/search/facet-types/linked-list-facet/link-list-facet.component.d.ts +0 -24
- package/dist/components/search/facet-types/numeric-range-facet/numeric-range-facet.component.d.ts +0 -32
- package/dist/components/search/facet-types/range-slider-facet/range-slider-facet.component.d.ts +0 -34
- package/dist/components/search/facet-types/recent-searches-facet/recent-searches-facet.component.d.ts +0 -29
- package/dist/components/search/facet-types/related-searches-facet/related-searches-facet.component.d.ts +0 -29
- package/dist/components/search/facet-types/search-within-facet/search-within-facet.component.d.ts +0 -29
- package/dist/components/search/facet-types/size-facet/size-facet.component.d.ts +0 -24
- package/dist/components/search/facet-wrapper/facet-wrapper.component.d.ts +0 -47
- package/dist/components/search/facets-list/facets-list.component.d.ts +0 -32
- package/dist/components/search/index.d.ts +0 -15
- package/dist/components/search/modified-query/modified-query.component.d.ts +0 -32
- package/dist/components/search/page-size/page-size.component.d.ts +0 -32
- package/dist/components/search/pagination/pagination.component.d.ts +0 -43
- package/dist/components/search/query-suggestions/query-suggestions.component.d.ts +0 -38
- package/dist/components/search/search-field/search-field.component.d.ts +0 -40
- package/dist/components/search/search-results/search-results.component.d.ts +0 -34
- package/dist/components/search/search-results-item/search-results-item.component.d.ts +0 -38
- package/dist/components/search/search-results-list/search-results-list.component.d.ts +0 -23
- package/dist/components/search/selected-facets/selected-facets.component.d.ts +0 -31
- package/dist/components/search/sorting/sorting.component.d.ts +0 -30
- package/dist/components/search/tabs/dist/tabs.component.spec.d.ts +0 -1
- package/dist/components/search/tabs/tabs.component.d.ts +0 -30
- package/dist/components/variants/index.d.ts +0 -1
- package/dist/components/variants/variant-selector/variant-selector.component.d.ts +0 -23
- package/dist/configuration/configuration.models.d.ts +0 -609
- package/dist/configuration/index.d.ts +0 -4
- package/dist/helpers/helpers.d.ts +0 -221
- package/dist/helpers/index.d.ts +0 -4
- package/dist/index.js +0 -3
- package/dist/index.js.LICENSE.txt +0 -28
- package/dist/index.js.map +0 -1
- package/dist/models/autocomplete.models.d.ts +0 -85
- package/dist/models/base.models.d.ts +0 -50
- package/dist/models/component.models.d.ts +0 -453
- package/dist/models/content.models.d.ts +0 -94
- package/dist/models/index.d.ts +0 -11
- package/dist/models/raw/index.d.ts +0 -4
- package/dist/models/raw/raw-autocomplete.models.d.ts +0 -51
- package/dist/models/raw/raw-base.models.d.ts +0 -8
- package/dist/models/raw/raw-recommendation.models.d.ts +0 -39
- package/dist/models/raw/raw-search.models.d.ts +0 -191
- package/dist/models/recommendation.models.d.ts +0 -31
- package/dist/models/search.models.d.ts +0 -237
- package/dist/models/tracking.models.d.ts +0 -42
- package/dist/placeholder.c99b7374b9bf579d0fd0.png +0 -0
- package/dist/services/autocomplete.service.d.ts +0 -11
- package/dist/services/base.service.d.ts +0 -63
- package/dist/services/index.d.ts +0 -8
- package/dist/services/recommendations.service.d.ts +0 -10
- package/dist/services/search.service.d.ts +0 -53
- package/dist/services/tracking.service.d.ts +0 -29
- package/dist/styles.65c0ab8e75ac4bcab10e99f66a160664.css +0 -1
- package/dist/utilities/colors.d.ts +0 -1
- package/dist/utilities/dates.d.ts +0 -4
- package/dist/utilities/decodes.d.ts +0 -1
- package/dist/utilities/formatters.d.ts +0 -4
- package/dist/utilities/index.d.ts +0 -7
package/dist/index.d.ts
CHANGED
|
@@ -1 +1,1438 @@
|
|
|
1
|
-
|
|
1
|
+
import * as Handlebars_2 from 'handlebars';
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* @category Autocomplete
|
|
5
|
+
*/
|
|
6
|
+
declare interface AutocompleteCategories {
|
|
7
|
+
title: string;
|
|
8
|
+
results: Array<AutocompleteCategory>;
|
|
9
|
+
}
|
|
10
|
+
|
|
11
|
+
/**
|
|
12
|
+
* @category Autocomplete
|
|
13
|
+
*/
|
|
14
|
+
declare interface AutocompleteCategory {
|
|
15
|
+
title: string;
|
|
16
|
+
field: string;
|
|
17
|
+
value: string;
|
|
18
|
+
url: string;
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
declare interface AutocompleteComponentConfig extends BaseComponentConfig {
|
|
22
|
+
}
|
|
23
|
+
|
|
24
|
+
/**
|
|
25
|
+
* @category Autocomplete
|
|
26
|
+
*/
|
|
27
|
+
declare interface AutocompleteContent {
|
|
28
|
+
title: string;
|
|
29
|
+
results: Array<AutocompleteContentResult>;
|
|
30
|
+
totalRecords: number;
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
/**
|
|
34
|
+
* @category Autocomplete
|
|
35
|
+
*/
|
|
36
|
+
declare interface AutocompleteContentResult {
|
|
37
|
+
id: string;
|
|
38
|
+
title: string;
|
|
39
|
+
url: string;
|
|
40
|
+
pinned: boolean;
|
|
41
|
+
score: number;
|
|
42
|
+
attributes?: Record<string, Array<string>>;
|
|
43
|
+
}
|
|
44
|
+
|
|
45
|
+
/**
|
|
46
|
+
* @category Tracking
|
|
47
|
+
*/
|
|
48
|
+
declare enum AutocompleteItemType {
|
|
49
|
+
Search = 1,
|
|
50
|
+
Category = 2,
|
|
51
|
+
Product = 3,
|
|
52
|
+
Content = 4
|
|
53
|
+
}
|
|
54
|
+
|
|
55
|
+
/**
|
|
56
|
+
* @category Autocomplete
|
|
57
|
+
*/
|
|
58
|
+
declare interface AutocompleteProductResult extends Item {
|
|
59
|
+
pinned: boolean;
|
|
60
|
+
score: number;
|
|
61
|
+
}
|
|
62
|
+
|
|
63
|
+
/**
|
|
64
|
+
* @category Autocomplete
|
|
65
|
+
*/
|
|
66
|
+
declare interface AutocompleteProducts {
|
|
67
|
+
title: string;
|
|
68
|
+
results: Array<AutocompleteProductResult>;
|
|
69
|
+
totalRecords: number;
|
|
70
|
+
}
|
|
71
|
+
|
|
72
|
+
/**
|
|
73
|
+
* @category Autocomplete
|
|
74
|
+
*/
|
|
75
|
+
declare interface AutocompleteQueries {
|
|
76
|
+
title: string;
|
|
77
|
+
results: Array<AutocompleteQuery>;
|
|
78
|
+
}
|
|
79
|
+
|
|
80
|
+
/**
|
|
81
|
+
* @category Autocomplete
|
|
82
|
+
*/
|
|
83
|
+
declare interface AutocompleteQuery {
|
|
84
|
+
query: string;
|
|
85
|
+
url: string;
|
|
86
|
+
}
|
|
87
|
+
|
|
88
|
+
/**
|
|
89
|
+
* @category Autocomplete
|
|
90
|
+
*/
|
|
91
|
+
declare interface AutocompleteResponse {
|
|
92
|
+
query?: string;
|
|
93
|
+
categories: AutocompleteCategories;
|
|
94
|
+
content: AutocompleteContent;
|
|
95
|
+
products: AutocompleteProducts;
|
|
96
|
+
queries: AutocompleteQueries;
|
|
97
|
+
contentSuggestedQueries: AutocompleteQueries;
|
|
98
|
+
productSuggestedQueries: AutocompleteQueries;
|
|
99
|
+
totalRecords: number;
|
|
100
|
+
viewAllText: string;
|
|
101
|
+
}
|
|
102
|
+
|
|
103
|
+
declare class AutocompleteService extends BaseService {
|
|
104
|
+
protected baseUrl: string;
|
|
105
|
+
private decodeQuery;
|
|
106
|
+
query(query?: string): Promise<AutocompleteResponse>;
|
|
107
|
+
private executeAutocomplete;
|
|
108
|
+
private convertResponse;
|
|
109
|
+
bindComponent(autocompleteResponse: AutocompleteResponse): void;
|
|
110
|
+
}
|
|
111
|
+
|
|
112
|
+
declare interface BaseComponentConfig {
|
|
113
|
+
/**
|
|
114
|
+
* Specifies whether the component should be rendered in the [Shadow DOM](https://developer.mozilla.org/en-US/docs/Web/Web_Components/Using_shadow_DOM). This is highly recommended to avoid CSS conflicts.
|
|
115
|
+
*
|
|
116
|
+
* #### Default Value
|
|
117
|
+
* `true`
|
|
118
|
+
*/
|
|
119
|
+
shadowDom?: boolean;
|
|
120
|
+
/**
|
|
121
|
+
* Specifies a custom template to be used instead of the default template.
|
|
122
|
+
*
|
|
123
|
+
* *For more information, see {@link Components}.*
|
|
124
|
+
*/
|
|
125
|
+
template?: string;
|
|
126
|
+
}
|
|
127
|
+
|
|
128
|
+
declare abstract class BaseService {
|
|
129
|
+
protected abstract baseUrl: string;
|
|
130
|
+
protected fieldMappings: ServiceFieldMappings;
|
|
131
|
+
protected variantFieldMappings: ServiceVariantFieldMappings;
|
|
132
|
+
queryStringParams: {
|
|
133
|
+
disableSpellcheck: string;
|
|
134
|
+
page: string;
|
|
135
|
+
pageSize: string;
|
|
136
|
+
query: string;
|
|
137
|
+
searchWithin: string;
|
|
138
|
+
sort: string;
|
|
139
|
+
requestType: string;
|
|
140
|
+
};
|
|
141
|
+
searchUrl: string;
|
|
142
|
+
protected get onSearchPage(): boolean;
|
|
143
|
+
constructor();
|
|
144
|
+
protected httpPost<T>(relativeUrl: string, body?: any, customHeaders?: any, isAbsoluteUrl?: boolean): Promise<T>;
|
|
145
|
+
private getHeaders;
|
|
146
|
+
private getFieldMappings;
|
|
147
|
+
protected getVisitorId(): string;
|
|
148
|
+
protected getVisitId(): string;
|
|
149
|
+
protected generateGuid(): string;
|
|
150
|
+
protected stripHtml(input: string): string;
|
|
151
|
+
protected getValue(data: object, fieldMappings: Array<string>): Array<string> | undefined;
|
|
152
|
+
protected getString(data: object, fieldMappings: Array<string>, defaultValue?: string): string | undefined;
|
|
153
|
+
protected getNumber(data: object, fieldMappings: Array<string>, defaultValue?: number): number | undefined;
|
|
154
|
+
protected getUrl(data: object, fieldMappings: Array<string>, prefix?: string | undefined): string | undefined;
|
|
155
|
+
protected getFullUrl(url: string | undefined, prefix: string | undefined): string | undefined;
|
|
156
|
+
protected getVariants(document: RawVariantDocument): {
|
|
157
|
+
items: Array<ItemVariant> | undefined;
|
|
158
|
+
selectedItem?: ItemVariant;
|
|
159
|
+
};
|
|
160
|
+
protected triggerBindEvent<T>(component: keyof HawkSearchComponents, data: T, filter?: string): void;
|
|
161
|
+
protected triggerEvent<T>(name: string, data: T): void;
|
|
162
|
+
}
|
|
163
|
+
|
|
164
|
+
declare interface Breakpoints<TValue> extends Record<DisplayType, TValue> {
|
|
165
|
+
}
|
|
166
|
+
|
|
167
|
+
declare interface CheckboxListFacetComponentConfig extends BaseComponentConfig {
|
|
168
|
+
excludeEnabled?: boolean;
|
|
169
|
+
strings?: {
|
|
170
|
+
collapse?: string;
|
|
171
|
+
exclude?: string;
|
|
172
|
+
expand?: string;
|
|
173
|
+
include?: string;
|
|
174
|
+
showFewer?: string;
|
|
175
|
+
showMore?: string;
|
|
176
|
+
};
|
|
177
|
+
}
|
|
178
|
+
|
|
179
|
+
declare interface ColorFacetComponentConfig extends BaseComponentConfig {
|
|
180
|
+
excludeEnabled?: boolean;
|
|
181
|
+
strings?: {
|
|
182
|
+
exclude?: string;
|
|
183
|
+
include?: string;
|
|
184
|
+
showFewer?: string;
|
|
185
|
+
showMore?: string;
|
|
186
|
+
};
|
|
187
|
+
}
|
|
188
|
+
|
|
189
|
+
/**
|
|
190
|
+
* @category Search
|
|
191
|
+
*/
|
|
192
|
+
declare interface ContentConfiguration {
|
|
193
|
+
breadcrumbs?: string;
|
|
194
|
+
customHtml?: string;
|
|
195
|
+
heading?: string;
|
|
196
|
+
}
|
|
197
|
+
|
|
198
|
+
/**
|
|
199
|
+
* @category Content
|
|
200
|
+
*/
|
|
201
|
+
declare interface ContentType {
|
|
202
|
+
id: number;
|
|
203
|
+
campaignId: number;
|
|
204
|
+
type: string;
|
|
205
|
+
title: string;
|
|
206
|
+
trackingEnabled: boolean;
|
|
207
|
+
zone: string;
|
|
208
|
+
}
|
|
209
|
+
|
|
210
|
+
/**
|
|
211
|
+
* @category Content
|
|
212
|
+
*/
|
|
213
|
+
declare interface ContentZone {
|
|
214
|
+
name: string;
|
|
215
|
+
items: Array<ContentZoneItem>;
|
|
216
|
+
}
|
|
217
|
+
|
|
218
|
+
declare interface ContentZoneComponentConfig extends BaseComponentConfig {
|
|
219
|
+
}
|
|
220
|
+
|
|
221
|
+
/**
|
|
222
|
+
* @category Content
|
|
223
|
+
*/
|
|
224
|
+
declare interface ContentZoneItem {
|
|
225
|
+
mobile: ContentType;
|
|
226
|
+
tablet: ContentType;
|
|
227
|
+
desktop: ContentType;
|
|
228
|
+
}
|
|
229
|
+
|
|
230
|
+
/**
|
|
231
|
+
* @category Content
|
|
232
|
+
*/
|
|
233
|
+
declare interface ContentZones {
|
|
234
|
+
[zone: string]: ContentZone;
|
|
235
|
+
}
|
|
236
|
+
|
|
237
|
+
declare interface ConversationalSearchComponentConfig extends BaseComponentConfig {
|
|
238
|
+
query?: string;
|
|
239
|
+
strings?: {
|
|
240
|
+
placeholder?: string;
|
|
241
|
+
resetLabel?: string;
|
|
242
|
+
sendLabel?: string;
|
|
243
|
+
};
|
|
244
|
+
prompt?: {
|
|
245
|
+
instructions?: string;
|
|
246
|
+
schema?: object;
|
|
247
|
+
onRequest?: any;
|
|
248
|
+
onResponse?: any;
|
|
249
|
+
};
|
|
250
|
+
}
|
|
251
|
+
|
|
252
|
+
declare class ConversationalService extends BaseService {
|
|
253
|
+
protected baseUrl: string;
|
|
254
|
+
protected API_KEY: string;
|
|
255
|
+
query(query?: MessageItemList, options?: object): Promise<any | void>;
|
|
256
|
+
private executeSearch;
|
|
257
|
+
private convertResponse;
|
|
258
|
+
bindComponents(conversationResponse: any): void;
|
|
259
|
+
}
|
|
260
|
+
|
|
261
|
+
declare interface CustomContentComponentConfig extends BaseComponentConfig {
|
|
262
|
+
}
|
|
263
|
+
|
|
264
|
+
/**
|
|
265
|
+
* @category Search
|
|
266
|
+
*/
|
|
267
|
+
declare interface DateFacetRange extends FacetRange<Date> {
|
|
268
|
+
type: 'date';
|
|
269
|
+
}
|
|
270
|
+
|
|
271
|
+
declare interface DatePickerComponentConfig extends BaseComponentConfig {
|
|
272
|
+
strings?: {
|
|
273
|
+
defaultLabel?: string;
|
|
274
|
+
next?: string;
|
|
275
|
+
previous?: string;
|
|
276
|
+
selectMonth?: string;
|
|
277
|
+
viewCalendar?: string;
|
|
278
|
+
};
|
|
279
|
+
}
|
|
280
|
+
|
|
281
|
+
declare interface DateRangeFacetComponentConfig extends BaseComponentConfig {
|
|
282
|
+
strings?: {
|
|
283
|
+
endDate?: string;
|
|
284
|
+
startDate?: string;
|
|
285
|
+
};
|
|
286
|
+
}
|
|
287
|
+
|
|
288
|
+
declare type DisplayType = 'mobile' | 'tablet' | 'desktop';
|
|
289
|
+
|
|
290
|
+
/**
|
|
291
|
+
* @category Tracking
|
|
292
|
+
*/
|
|
293
|
+
declare enum EventType {
|
|
294
|
+
PageLoad = 1,
|
|
295
|
+
Search = 2,
|
|
296
|
+
Click = 3,
|
|
297
|
+
AddToCart = 4,
|
|
298
|
+
Rate = 5,
|
|
299
|
+
Sale = 6,
|
|
300
|
+
BannerClick = 7,
|
|
301
|
+
BannerImpression = 8,
|
|
302
|
+
RecommendationClick = 10,
|
|
303
|
+
AutocompleteClick = 11,
|
|
304
|
+
AddToCartMultiple = 14
|
|
305
|
+
}
|
|
306
|
+
|
|
307
|
+
/**
|
|
308
|
+
* @category Search
|
|
309
|
+
*/
|
|
310
|
+
declare interface Facet {
|
|
311
|
+
id: number;
|
|
312
|
+
type: FacetType;
|
|
313
|
+
title: string;
|
|
314
|
+
values?: Array<FacetValue>;
|
|
315
|
+
field: string;
|
|
316
|
+
collapsible: boolean;
|
|
317
|
+
collapsed?: boolean;
|
|
318
|
+
displayCount?: boolean;
|
|
319
|
+
range?: DateFacetRange | NumericFacetRange;
|
|
320
|
+
scrolling?: FacetScrolling;
|
|
321
|
+
search?: FacetSearch;
|
|
322
|
+
searchWithin?: string;
|
|
323
|
+
tooltip?: string;
|
|
324
|
+
truncation?: FacetTruncation;
|
|
325
|
+
visible: boolean;
|
|
326
|
+
}
|
|
327
|
+
|
|
328
|
+
/**
|
|
329
|
+
* @category Search
|
|
330
|
+
*/
|
|
331
|
+
declare interface FacetRange<T> {
|
|
332
|
+
type: string;
|
|
333
|
+
min: T;
|
|
334
|
+
max: T;
|
|
335
|
+
start: T;
|
|
336
|
+
end: T;
|
|
337
|
+
}
|
|
338
|
+
|
|
339
|
+
/**
|
|
340
|
+
* @category Search
|
|
341
|
+
*/
|
|
342
|
+
declare interface FacetScrolling {
|
|
343
|
+
height?: number;
|
|
344
|
+
threshold: number;
|
|
345
|
+
}
|
|
346
|
+
|
|
347
|
+
/**
|
|
348
|
+
* @category Search
|
|
349
|
+
*/
|
|
350
|
+
declare interface FacetSearch {
|
|
351
|
+
threshold: number;
|
|
352
|
+
}
|
|
353
|
+
|
|
354
|
+
declare interface FacetsListComponentConfig extends BaseComponentConfig {
|
|
355
|
+
strings?: {
|
|
356
|
+
heading?: string;
|
|
357
|
+
};
|
|
358
|
+
}
|
|
359
|
+
|
|
360
|
+
/**
|
|
361
|
+
* @category Search
|
|
362
|
+
*/
|
|
363
|
+
declare interface FacetTruncation {
|
|
364
|
+
threshold: number;
|
|
365
|
+
}
|
|
366
|
+
|
|
367
|
+
/**
|
|
368
|
+
* @category Search
|
|
369
|
+
*/
|
|
370
|
+
declare type FacetType = 'checkbox' | 'color' | 'date-range' | 'link' | 'numeric-range' | 'range-slider' | 'recent-searches' | 'related-searches' | 'search' | 'size' | 'tabs' | 'unsupported';
|
|
371
|
+
|
|
372
|
+
/**
|
|
373
|
+
* @category Search
|
|
374
|
+
*/
|
|
375
|
+
declare interface FacetValue {
|
|
376
|
+
title: string;
|
|
377
|
+
imageUrl?: string;
|
|
378
|
+
value?: string;
|
|
379
|
+
color?: FacetValueColor;
|
|
380
|
+
count?: number;
|
|
381
|
+
level?: number;
|
|
382
|
+
selected?: boolean;
|
|
383
|
+
excluded?: boolean;
|
|
384
|
+
children?: Array<FacetValue>;
|
|
385
|
+
}
|
|
386
|
+
|
|
387
|
+
/**
|
|
388
|
+
* @category Search
|
|
389
|
+
*/
|
|
390
|
+
declare interface FacetValueColor {
|
|
391
|
+
name: string;
|
|
392
|
+
hex?: string;
|
|
393
|
+
imageUrl?: string;
|
|
394
|
+
}
|
|
395
|
+
|
|
396
|
+
declare interface FacetWrapperComponentConfig extends BaseComponentConfig {
|
|
397
|
+
}
|
|
398
|
+
|
|
399
|
+
declare interface FeaturedItemsContentComponentConfig extends BaseComponentConfig {
|
|
400
|
+
}
|
|
401
|
+
|
|
402
|
+
declare interface FeaturedItemsContentItemComponentConfig extends BaseComponentConfig {
|
|
403
|
+
strings?: {
|
|
404
|
+
sale?: string;
|
|
405
|
+
};
|
|
406
|
+
}
|
|
407
|
+
|
|
408
|
+
declare interface FieldMappings {
|
|
409
|
+
/**
|
|
410
|
+
* #### Default Value
|
|
411
|
+
* `['description', 'longdescription']`
|
|
412
|
+
*/
|
|
413
|
+
description?: string | Array<string>;
|
|
414
|
+
/**
|
|
415
|
+
* #### Default Value
|
|
416
|
+
* `['imageurl', 'image']`
|
|
417
|
+
*/
|
|
418
|
+
imageUrl?: string | Array<string>;
|
|
419
|
+
/**
|
|
420
|
+
* #### Default Value
|
|
421
|
+
* `'price'`
|
|
422
|
+
*/
|
|
423
|
+
price?: string | Array<string>;
|
|
424
|
+
/**
|
|
425
|
+
* #### Default Value
|
|
426
|
+
* `'rating'`
|
|
427
|
+
*/
|
|
428
|
+
rating?: string | Array<string>;
|
|
429
|
+
/**
|
|
430
|
+
* #### Default Value
|
|
431
|
+
* `['saleprice']`
|
|
432
|
+
*/
|
|
433
|
+
salePrice?: string | Array<string>;
|
|
434
|
+
/**
|
|
435
|
+
* #### Default Value
|
|
436
|
+
* `['sku']`
|
|
437
|
+
*/
|
|
438
|
+
sku?: string | Array<string>;
|
|
439
|
+
/**
|
|
440
|
+
* #### Default Value
|
|
441
|
+
* `['title', 'name', 'itemname']`
|
|
442
|
+
*/
|
|
443
|
+
title?: string | Array<string>;
|
|
444
|
+
/**
|
|
445
|
+
* #### Default Value
|
|
446
|
+
* `'type'`
|
|
447
|
+
*/
|
|
448
|
+
type?: string | Array<string>;
|
|
449
|
+
/**
|
|
450
|
+
* #### Default Value
|
|
451
|
+
* `'url'`
|
|
452
|
+
*/
|
|
453
|
+
url?: string;
|
|
454
|
+
}
|
|
455
|
+
|
|
456
|
+
declare const HawkSearch: HawkSearchGlobal;
|
|
457
|
+
export default HawkSearch;
|
|
458
|
+
|
|
459
|
+
declare interface HawkSearchComponents {
|
|
460
|
+
'autocomplete'?: AutocompleteComponentConfig;
|
|
461
|
+
'checkbox-list-facet'?: CheckboxListFacetComponentConfig;
|
|
462
|
+
'color-facet'?: ColorFacetComponentConfig;
|
|
463
|
+
'conversationalsearch'?: ConversationalSearchComponentConfig;
|
|
464
|
+
'conceptsearch-field'?: SmartSearchFieldComponentConfig;
|
|
465
|
+
'content-zone'?: ContentZoneComponentConfig;
|
|
466
|
+
'custom-content'?: CustomContentComponentConfig;
|
|
467
|
+
'date-picker'?: DatePickerComponentConfig;
|
|
468
|
+
'date-range-facet'?: DateRangeFacetComponentConfig;
|
|
469
|
+
'facet-wrapper'?: FacetWrapperComponentConfig;
|
|
470
|
+
'facets-list'?: FacetsListComponentConfig;
|
|
471
|
+
'featured-items-content'?: FeaturedItemsContentComponentConfig;
|
|
472
|
+
'featured-items-content-item'?: FeaturedItemsContentItemComponentConfig;
|
|
473
|
+
'icon'?: IconComponentConfig;
|
|
474
|
+
'image-content'?: ImageContentComponentConfig;
|
|
475
|
+
'imagesearch-field'?: SmartSearchFieldComponentConfig;
|
|
476
|
+
'landing-page'?: LandingPageComponentConfig;
|
|
477
|
+
'link-list-facet'?: LinkListFacetComponentConfig;
|
|
478
|
+
'modified-query'?: ModifiedQueryComponentConfig;
|
|
479
|
+
'numeric-range-facet'?: NumericRangeFacetComponentConfig;
|
|
480
|
+
'page-size'?: PageSizeComponentConfig;
|
|
481
|
+
'pagination'?: PaginationComponentConfig;
|
|
482
|
+
'popular-queries-content'?: PopularQueriesContentComponentConfig;
|
|
483
|
+
'query-suggestions'?: QuerySuggestionsComponentConfig;
|
|
484
|
+
'range-slider'?: RangeSliderComponentConfig;
|
|
485
|
+
'range-slider-facet'?: RangeSliderFacetComponentConfig;
|
|
486
|
+
'rating'?: RatingComponentConfig;
|
|
487
|
+
'recommendations'?: RecommendationsComponentConfig;
|
|
488
|
+
'recommendations-item'?: RecommendationsItemComponentConfig;
|
|
489
|
+
'recent-searches-facet'?: RecentSearchesFacetComponentConfig;
|
|
490
|
+
'related-searches-facet'?: RelatedSearchesFacetComponentConfig;
|
|
491
|
+
'search-field'?: SearchFieldComponentConfig;
|
|
492
|
+
'search-results'?: SearchResultsComponentConfig;
|
|
493
|
+
'search-results-item'?: SearchResultsItemComponentConfig;
|
|
494
|
+
'search-results-list'?: SearchResultsListComponentConfig;
|
|
495
|
+
'search-within-facet'?: SearchWithinFacetComponentConfig;
|
|
496
|
+
'selected-facets'?: SelectedFacetsComponentConfig;
|
|
497
|
+
'size-facet'?: SizeFacetComponentConfig;
|
|
498
|
+
'smartresponse'?: SmartResponseComponentConfig;
|
|
499
|
+
'sorting'?: SortingComponentConfig;
|
|
500
|
+
'tabs'?: TabsComponentConfig;
|
|
501
|
+
'tooltip'?: TooltipComponentConfig;
|
|
502
|
+
'variant-selector'?: VariantSelectorComponentConfig;
|
|
503
|
+
'visualsearch-field'?: VisualSearchFieldComponentConfig;
|
|
504
|
+
}
|
|
505
|
+
|
|
506
|
+
declare interface HawkSearchConfig {
|
|
507
|
+
/**
|
|
508
|
+
* The unique ID for your installation found in the HawkSearch admin
|
|
509
|
+
*/
|
|
510
|
+
clientId: string;
|
|
511
|
+
/**
|
|
512
|
+
* Specify an index to query rather than the default
|
|
513
|
+
*/
|
|
514
|
+
index?: string;
|
|
515
|
+
/**
|
|
516
|
+
* Map item attributes to common object properties
|
|
517
|
+
*/
|
|
518
|
+
fieldMappings?: FieldMappings;
|
|
519
|
+
autocomplete?: {
|
|
520
|
+
/**
|
|
521
|
+
* The API used to retrieve search results
|
|
522
|
+
*
|
|
523
|
+
* #### Default Value
|
|
524
|
+
* `'https://searchapi-dev.hawksearch.net'`
|
|
525
|
+
*/
|
|
526
|
+
endpointUrl?: string;
|
|
527
|
+
/**
|
|
528
|
+
* Specifies whether autocomplete recommendations (autocomplete without entering a query - "instant engage") is enabled
|
|
529
|
+
*
|
|
530
|
+
* #### Default Value
|
|
531
|
+
* `false`
|
|
532
|
+
*/
|
|
533
|
+
recommendationsEnabled?: boolean;
|
|
534
|
+
/**
|
|
535
|
+
* Whether to automatically URI decode the search query value. Runs recursively until value is fully decoded. For example, `Test%2520Value` would become `Test Value`.
|
|
536
|
+
*
|
|
537
|
+
* #### Default Value
|
|
538
|
+
* `true`
|
|
539
|
+
*/
|
|
540
|
+
decodeQuery?: boolean;
|
|
541
|
+
/**
|
|
542
|
+
* Specifies the minimum length for a query to trigger an autocomplete recommendations request.
|
|
543
|
+
*
|
|
544
|
+
* #### Default Value
|
|
545
|
+
* `1`
|
|
546
|
+
*/
|
|
547
|
+
minCharacterCount?: number;
|
|
548
|
+
};
|
|
549
|
+
search?: {
|
|
550
|
+
/**
|
|
551
|
+
* The API used to retrieve search results
|
|
552
|
+
*
|
|
553
|
+
* #### Default Value
|
|
554
|
+
* `'https://searchapi-dev.hawksearch.net'`
|
|
555
|
+
*/
|
|
556
|
+
endpointUrl?: string;
|
|
557
|
+
/**
|
|
558
|
+
* The URL of your search results page. This is used to redirect users after performing a search.
|
|
559
|
+
*
|
|
560
|
+
* #### Default Value
|
|
561
|
+
* `'/search'`
|
|
562
|
+
*/
|
|
563
|
+
url?: string;
|
|
564
|
+
/**
|
|
565
|
+
* The prefix for values sent to the API when excluding a facet. This is only modified in rare circumstances where the project has facet values starting with a hyphen.
|
|
566
|
+
*
|
|
567
|
+
* #### Default Value
|
|
568
|
+
* `'-'`
|
|
569
|
+
*/
|
|
570
|
+
facetExclusionPrefix?: string;
|
|
571
|
+
/**
|
|
572
|
+
* Specifies how search results should be classified
|
|
573
|
+
*/
|
|
574
|
+
itemTypes?: {
|
|
575
|
+
/**
|
|
576
|
+
* If the value a search result item is missing a value for the field mapped to {@link HawkSearchConfig.search | fieldMappings.type}, this value will be assumed.
|
|
577
|
+
*
|
|
578
|
+
* #### Default Value
|
|
579
|
+
* `'content'`
|
|
580
|
+
*/
|
|
581
|
+
default: ItemType;
|
|
582
|
+
/**
|
|
583
|
+
* List of values that will be considered a `product` result.
|
|
584
|
+
*
|
|
585
|
+
* #### Default Value
|
|
586
|
+
* `['item', 'product']`
|
|
587
|
+
*/
|
|
588
|
+
productValues?: Array<string>;
|
|
589
|
+
};
|
|
590
|
+
/**
|
|
591
|
+
* Specifies which query string parameters are used
|
|
592
|
+
*/
|
|
593
|
+
queryStringMappings?: {
|
|
594
|
+
/**
|
|
595
|
+
* #### Default Value
|
|
596
|
+
* `'disableSpellcheck'`
|
|
597
|
+
*/
|
|
598
|
+
disableSpellcheck?: string;
|
|
599
|
+
/**
|
|
600
|
+
* #### Default Value
|
|
601
|
+
* `'page'`
|
|
602
|
+
*/
|
|
603
|
+
page?: string;
|
|
604
|
+
/**
|
|
605
|
+
* #### Default Value
|
|
606
|
+
* `'pageSize'`
|
|
607
|
+
*/
|
|
608
|
+
pageSize?: string;
|
|
609
|
+
/**
|
|
610
|
+
* #### Default Value
|
|
611
|
+
* `'query'`
|
|
612
|
+
*/
|
|
613
|
+
query?: string;
|
|
614
|
+
/**
|
|
615
|
+
* #### Default Value
|
|
616
|
+
* `'searchWithin'`
|
|
617
|
+
*/
|
|
618
|
+
searchWithin?: string;
|
|
619
|
+
/**
|
|
620
|
+
* #### Default Value
|
|
621
|
+
* `'sort'`
|
|
622
|
+
*/
|
|
623
|
+
sort?: string;
|
|
624
|
+
/**
|
|
625
|
+
* Sets RequestType field to toggle between Keyword search, Image search or Concept search
|
|
626
|
+
*
|
|
627
|
+
* #### Default Value
|
|
628
|
+
* `'DefaultSearch'`
|
|
629
|
+
*/
|
|
630
|
+
requestType?: RequestType;
|
|
631
|
+
};
|
|
632
|
+
/**
|
|
633
|
+
* Whether to automatically URI decode the search query value. Runs recursively until value is fully decoded. For example, `Test%2520Value` would become `Test Value`.
|
|
634
|
+
*
|
|
635
|
+
* #### Default Value
|
|
636
|
+
* `true`
|
|
637
|
+
*/
|
|
638
|
+
decodeQuery?: boolean;
|
|
639
|
+
/**
|
|
640
|
+
* Whether to automatically URI decode facet selection values. Runs recursively until value is fully decoded. For example, `Test%2520Value` would become `Test Value`.
|
|
641
|
+
*
|
|
642
|
+
* #### Default Value
|
|
643
|
+
* `true`
|
|
644
|
+
*/
|
|
645
|
+
decodeFacetValues?: boolean;
|
|
646
|
+
/**
|
|
647
|
+
* Specifies a kValue for Concept and Image search
|
|
648
|
+
*/
|
|
649
|
+
kValue?: number;
|
|
650
|
+
};
|
|
651
|
+
recommendations?: {
|
|
652
|
+
/**
|
|
653
|
+
* The API used to retrieve product recommendations
|
|
654
|
+
*
|
|
655
|
+
* #### Default Value
|
|
656
|
+
* `'https://recs-dev.hawksearch.net'`
|
|
657
|
+
*/
|
|
658
|
+
endpointUrl?: string;
|
|
659
|
+
};
|
|
660
|
+
tracking?: {
|
|
661
|
+
/**
|
|
662
|
+
* Specifies whether user actions should be tracked to provide valuable insights on your search engine performance
|
|
663
|
+
*
|
|
664
|
+
* #### Default Value
|
|
665
|
+
*
|
|
666
|
+
* `true`
|
|
667
|
+
*/
|
|
668
|
+
enabled?: boolean;
|
|
669
|
+
/**
|
|
670
|
+
* The API used to track user interactions
|
|
671
|
+
*
|
|
672
|
+
* #### Default Value
|
|
673
|
+
* `'https://tracking-dev.hawksearch.net'`
|
|
674
|
+
*/
|
|
675
|
+
endpointUrl?: string;
|
|
676
|
+
};
|
|
677
|
+
variants?: {
|
|
678
|
+
/**
|
|
679
|
+
* When `true`, specifies that facet counts should be calculated based on the number of child items rather than the number of parent items
|
|
680
|
+
*
|
|
681
|
+
* #### Default Value
|
|
682
|
+
*
|
|
683
|
+
* `false`
|
|
684
|
+
*/
|
|
685
|
+
baseFacetCountOnVariants?: boolean;
|
|
686
|
+
/**
|
|
687
|
+
* Specifies whether variant logic should be used if data is available
|
|
688
|
+
*
|
|
689
|
+
* #### Default Value
|
|
690
|
+
*
|
|
691
|
+
* `true`
|
|
692
|
+
*/
|
|
693
|
+
enabled?: boolean;
|
|
694
|
+
/**
|
|
695
|
+
* When specified, this prefix is removed from the `attributes` collection on variant items. For example, if a value of `'child_'` is used and HawkSearch returns a field named `'child_color'`, it will be transformed to `'color'`.
|
|
696
|
+
*/
|
|
697
|
+
fieldPrefix?: string;
|
|
698
|
+
/**
|
|
699
|
+
* Map item attributes to common object properties
|
|
700
|
+
*/
|
|
701
|
+
fieldMappings?: VariantFieldMappings;
|
|
702
|
+
/**
|
|
703
|
+
* When `true`, specifies that tracking should use the ID of the selected variant rather than the ID of the parent
|
|
704
|
+
*
|
|
705
|
+
* #### Default Value
|
|
706
|
+
*
|
|
707
|
+
* `false`
|
|
708
|
+
*/
|
|
709
|
+
trackUsingVariant?: boolean;
|
|
710
|
+
};
|
|
711
|
+
/**
|
|
712
|
+
* Specifies the minimum window widths that correspond to each breakpoint. This is used determine when certain content items are displayed.
|
|
713
|
+
*
|
|
714
|
+
* #### Default Value
|
|
715
|
+
* ```js
|
|
716
|
+
* {
|
|
717
|
+
* mobile: undefined,
|
|
718
|
+
* tablet: 740,
|
|
719
|
+
* desktop: 990
|
|
720
|
+
* }
|
|
721
|
+
* ```
|
|
722
|
+
*/
|
|
723
|
+
breakpoints?: Breakpoints<number>;
|
|
724
|
+
/**
|
|
725
|
+
* Specifies component-specific configuration options
|
|
726
|
+
*/
|
|
727
|
+
components?: HawkSearchComponents;
|
|
728
|
+
/**
|
|
729
|
+
* Specifies which styles should be loaded for each component
|
|
730
|
+
*/
|
|
731
|
+
css?: {
|
|
732
|
+
/**
|
|
733
|
+
* One or more style sets to be loaded. This can be either a URL to an external stylesheet, the ID of a `template` element wrapping around a `style` element, or a string containing CSS rules.
|
|
734
|
+
*/
|
|
735
|
+
customStyles?: string | Array<string>;
|
|
736
|
+
/**
|
|
737
|
+
* Specifies whether the default stylesheet should be loaded. This should generally be true except for with completely custom interfaces.
|
|
738
|
+
*/
|
|
739
|
+
defaultStyles?: boolean;
|
|
740
|
+
};
|
|
741
|
+
/**
|
|
742
|
+
* Specifies how values should be formatted for different cultures
|
|
743
|
+
*/
|
|
744
|
+
formatting?: {
|
|
745
|
+
/**
|
|
746
|
+
* #### Default Value
|
|
747
|
+
* `'en-US'`
|
|
748
|
+
*/
|
|
749
|
+
cultureIsoCode?: string;
|
|
750
|
+
/**
|
|
751
|
+
* #### Default Value
|
|
752
|
+
* `'USD'`
|
|
753
|
+
*/
|
|
754
|
+
currencyIsoCode?: string;
|
|
755
|
+
};
|
|
756
|
+
/**
|
|
757
|
+
* The URL of an image to be loaded whenever an image fails to load for a search result item
|
|
758
|
+
*/
|
|
759
|
+
placeholderImageUrl?: string;
|
|
760
|
+
seo?: {
|
|
761
|
+
title?: {
|
|
762
|
+
/**
|
|
763
|
+
* Value prepended to title returned from API
|
|
764
|
+
*/
|
|
765
|
+
prefix?: string;
|
|
766
|
+
/**
|
|
767
|
+
* Value appended to title returned from API
|
|
768
|
+
*/
|
|
769
|
+
suffix?: string;
|
|
770
|
+
};
|
|
771
|
+
};
|
|
772
|
+
/**
|
|
773
|
+
* Specifies whether components should be rendered in the [Shadow DOM](https://developer.mozilla.org/en-US/docs/Web/Web_Components/Using_shadow_DOM). This is highly recommended to avoid CSS conflicts.
|
|
774
|
+
*
|
|
775
|
+
* #### Default Value
|
|
776
|
+
* `true`
|
|
777
|
+
*/
|
|
778
|
+
shadowDom?: boolean;
|
|
779
|
+
/**
|
|
780
|
+
* If your data contains relative URLs, these values can be prepended to the values to convert them to absolute URLs
|
|
781
|
+
*/
|
|
782
|
+
urlPrefixes?: {
|
|
783
|
+
assets?: string;
|
|
784
|
+
content?: string;
|
|
785
|
+
};
|
|
786
|
+
/**
|
|
787
|
+
* Specifies whether search queries should be displayed on console
|
|
788
|
+
*
|
|
789
|
+
* #### Default Value
|
|
790
|
+
* `false`
|
|
791
|
+
*/
|
|
792
|
+
debug?: boolean;
|
|
793
|
+
}
|
|
794
|
+
|
|
795
|
+
declare interface HawkSearchGlobal {
|
|
796
|
+
config: HawkSearchConfig;
|
|
797
|
+
handlebars: typeof Handlebars_2;
|
|
798
|
+
recommendationsResponses?: {
|
|
799
|
+
[widgetId: string]: RecommendationsResponse;
|
|
800
|
+
};
|
|
801
|
+
searchRequest?: SearchRequest;
|
|
802
|
+
searchResponse?: SearchResponse;
|
|
803
|
+
services: {
|
|
804
|
+
autocomplete: AutocompleteService;
|
|
805
|
+
conversational: ConversationalService;
|
|
806
|
+
recommendations: RecommendationsService;
|
|
807
|
+
search: SearchService;
|
|
808
|
+
tracking: TrackingService;
|
|
809
|
+
};
|
|
810
|
+
init: (config: HawkSearchConfig) => void;
|
|
811
|
+
}
|
|
812
|
+
|
|
813
|
+
declare interface IconComponentConfig extends BaseComponentConfig {
|
|
814
|
+
}
|
|
815
|
+
|
|
816
|
+
declare interface ImageContentComponentConfig extends BaseComponentConfig {
|
|
817
|
+
}
|
|
818
|
+
|
|
819
|
+
/**
|
|
820
|
+
* @category Base
|
|
821
|
+
*/
|
|
822
|
+
declare interface Item {
|
|
823
|
+
attributes?: Record<string, Array<string>>;
|
|
824
|
+
description?: string;
|
|
825
|
+
id: string;
|
|
826
|
+
imageUrl?: string;
|
|
827
|
+
price?: number;
|
|
828
|
+
rating?: number;
|
|
829
|
+
salePrice?: number;
|
|
830
|
+
selectedVariant?: ItemVariant;
|
|
831
|
+
sku?: string;
|
|
832
|
+
title: string;
|
|
833
|
+
url: string;
|
|
834
|
+
variants?: Array<ItemVariant>;
|
|
835
|
+
visible?: boolean;
|
|
836
|
+
}
|
|
837
|
+
|
|
838
|
+
/**
|
|
839
|
+
* @category Base
|
|
840
|
+
*/
|
|
841
|
+
declare type ItemType = 'content' | 'product';
|
|
842
|
+
|
|
843
|
+
/**
|
|
844
|
+
* @category Base
|
|
845
|
+
*/
|
|
846
|
+
declare interface ItemVariant {
|
|
847
|
+
attributes: Record<string, Array<string>>;
|
|
848
|
+
color?: {
|
|
849
|
+
name?: string;
|
|
850
|
+
hex?: string;
|
|
851
|
+
imageUrl?: string;
|
|
852
|
+
};
|
|
853
|
+
description?: string;
|
|
854
|
+
id: string;
|
|
855
|
+
imageUrl?: string;
|
|
856
|
+
price?: number;
|
|
857
|
+
queryMatch: boolean;
|
|
858
|
+
rating?: number;
|
|
859
|
+
salePrice?: number;
|
|
860
|
+
sku?: string;
|
|
861
|
+
title?: string;
|
|
862
|
+
url?: string;
|
|
863
|
+
}
|
|
864
|
+
|
|
865
|
+
declare interface LandingPageComponentConfig extends BaseComponentConfig {
|
|
866
|
+
}
|
|
867
|
+
|
|
868
|
+
declare interface LinkListFacetComponentConfig extends BaseComponentConfig {
|
|
869
|
+
strings?: {
|
|
870
|
+
showFewer?: string;
|
|
871
|
+
showMore?: string;
|
|
872
|
+
};
|
|
873
|
+
}
|
|
874
|
+
|
|
875
|
+
/**
|
|
876
|
+
* @category Base
|
|
877
|
+
*/
|
|
878
|
+
declare interface MessageItem {
|
|
879
|
+
role: MessageRole;
|
|
880
|
+
content: string;
|
|
881
|
+
}
|
|
882
|
+
|
|
883
|
+
/**
|
|
884
|
+
* @category Base
|
|
885
|
+
*/
|
|
886
|
+
declare interface MessageItemList extends Array<MessageItem> {
|
|
887
|
+
}
|
|
888
|
+
|
|
889
|
+
/**
|
|
890
|
+
* @category Base
|
|
891
|
+
*/
|
|
892
|
+
declare type MessageRole = 'system' | 'user' | 'assistant';
|
|
893
|
+
|
|
894
|
+
declare interface ModifiedQueryComponentConfig extends BaseComponentConfig {
|
|
895
|
+
strings?: {
|
|
896
|
+
showingResultsFor?: string;
|
|
897
|
+
searchInsteadFor?: string;
|
|
898
|
+
};
|
|
899
|
+
}
|
|
900
|
+
|
|
901
|
+
/**
|
|
902
|
+
* @category Search
|
|
903
|
+
*/
|
|
904
|
+
declare interface NumericFacetRange extends FacetRange<number> {
|
|
905
|
+
type: 'numeric';
|
|
906
|
+
}
|
|
907
|
+
|
|
908
|
+
declare interface NumericRangeFacetComponentConfig extends BaseComponentConfig {
|
|
909
|
+
strings?: {
|
|
910
|
+
maximum?: string;
|
|
911
|
+
minimum?: string;
|
|
912
|
+
};
|
|
913
|
+
}
|
|
914
|
+
|
|
915
|
+
declare interface PageSizeComponentConfig extends BaseComponentConfig {
|
|
916
|
+
}
|
|
917
|
+
|
|
918
|
+
/**
|
|
919
|
+
* @category Tracking
|
|
920
|
+
*/
|
|
921
|
+
declare enum PageType {
|
|
922
|
+
Item = 1,
|
|
923
|
+
Landing = 2,
|
|
924
|
+
Cart = 3,
|
|
925
|
+
Order = 4,
|
|
926
|
+
Custom = 5
|
|
927
|
+
}
|
|
928
|
+
|
|
929
|
+
/**
|
|
930
|
+
* @category Search
|
|
931
|
+
*/
|
|
932
|
+
declare interface Pagination {
|
|
933
|
+
page: number;
|
|
934
|
+
pageSize: number;
|
|
935
|
+
totalPages: number;
|
|
936
|
+
totalResults: number;
|
|
937
|
+
maxPageLinks?: number;
|
|
938
|
+
displayFirstLink: boolean;
|
|
939
|
+
displayLastLink: boolean;
|
|
940
|
+
options: Array<PaginationOption>;
|
|
941
|
+
}
|
|
942
|
+
|
|
943
|
+
declare interface PaginationComponentConfig extends BaseComponentConfig {
|
|
944
|
+
strings?: {
|
|
945
|
+
first?: string;
|
|
946
|
+
last?: string;
|
|
947
|
+
next?: string;
|
|
948
|
+
previous?: string;
|
|
949
|
+
summary?: string;
|
|
950
|
+
};
|
|
951
|
+
}
|
|
952
|
+
|
|
953
|
+
/**
|
|
954
|
+
* @category Search
|
|
955
|
+
*/
|
|
956
|
+
declare interface PaginationOption {
|
|
957
|
+
title: string;
|
|
958
|
+
pageSize: number;
|
|
959
|
+
selected: boolean;
|
|
960
|
+
default: boolean;
|
|
961
|
+
}
|
|
962
|
+
|
|
963
|
+
declare interface PopularQueriesContentComponentConfig extends BaseComponentConfig {
|
|
964
|
+
}
|
|
965
|
+
|
|
966
|
+
declare interface QuerySuggestionsComponentConfig extends BaseComponentConfig {
|
|
967
|
+
strings?: {
|
|
968
|
+
orDelimeter?: string;
|
|
969
|
+
prompt?: string;
|
|
970
|
+
};
|
|
971
|
+
}
|
|
972
|
+
|
|
973
|
+
declare interface RangeSliderComponentConfig extends BaseComponentConfig {
|
|
974
|
+
strings?: {
|
|
975
|
+
end?: string;
|
|
976
|
+
start?: string;
|
|
977
|
+
};
|
|
978
|
+
}
|
|
979
|
+
|
|
980
|
+
declare interface RangeSliderFacetComponentConfig extends BaseComponentConfig {
|
|
981
|
+
strings?: {
|
|
982
|
+
maximum?: string;
|
|
983
|
+
minimum?: string;
|
|
984
|
+
};
|
|
985
|
+
}
|
|
986
|
+
|
|
987
|
+
declare interface RatingComponentConfig extends BaseComponentConfig {
|
|
988
|
+
}
|
|
989
|
+
|
|
990
|
+
declare interface RawVariantDocument {
|
|
991
|
+
hawk_child_attributes?: Array<Record<string, Array<string>>>;
|
|
992
|
+
hawk_child_attributes_hits?: Array<{
|
|
993
|
+
Items: Array<Record<string, Array<string>>>;
|
|
994
|
+
NofPages: number;
|
|
995
|
+
NofResults: number;
|
|
996
|
+
}>;
|
|
997
|
+
}
|
|
998
|
+
|
|
999
|
+
declare interface RecentSearchesFacetComponentConfig extends BaseComponentConfig {
|
|
1000
|
+
}
|
|
1001
|
+
|
|
1002
|
+
declare interface RecommendationsComponentConfig extends BaseComponentConfig {
|
|
1003
|
+
carousel?: {
|
|
1004
|
+
autorotation?: {
|
|
1005
|
+
enabled?: boolean;
|
|
1006
|
+
interval?: number;
|
|
1007
|
+
};
|
|
1008
|
+
buttonsEnabled?: boolean;
|
|
1009
|
+
enabled?: boolean;
|
|
1010
|
+
paginationEnabled?: boolean;
|
|
1011
|
+
paginationSelectedCssClass?: string;
|
|
1012
|
+
};
|
|
1013
|
+
headingEnabled?: boolean;
|
|
1014
|
+
itemsToDisplay?: Breakpoints<number>;
|
|
1015
|
+
strings?: {
|
|
1016
|
+
next?: string;
|
|
1017
|
+
previous?: string;
|
|
1018
|
+
};
|
|
1019
|
+
}
|
|
1020
|
+
|
|
1021
|
+
/**
|
|
1022
|
+
* @category Recommendations
|
|
1023
|
+
*/
|
|
1024
|
+
declare interface RecommendationsItem extends Item {
|
|
1025
|
+
}
|
|
1026
|
+
|
|
1027
|
+
declare interface RecommendationsItemComponentConfig extends BaseComponentConfig {
|
|
1028
|
+
strings?: {
|
|
1029
|
+
sale?: string;
|
|
1030
|
+
};
|
|
1031
|
+
}
|
|
1032
|
+
|
|
1033
|
+
/**
|
|
1034
|
+
* @category Recommendations
|
|
1035
|
+
*/
|
|
1036
|
+
declare interface RecommendationsRequest {
|
|
1037
|
+
widgetId: string;
|
|
1038
|
+
itemId?: string;
|
|
1039
|
+
url?: string;
|
|
1040
|
+
}
|
|
1041
|
+
|
|
1042
|
+
/**
|
|
1043
|
+
* @category Recommendations
|
|
1044
|
+
*/
|
|
1045
|
+
declare interface RecommendationsResponse {
|
|
1046
|
+
requestId: string;
|
|
1047
|
+
widgets?: Array<RecommendationsWidget>;
|
|
1048
|
+
}
|
|
1049
|
+
|
|
1050
|
+
declare class RecommendationsService extends BaseService {
|
|
1051
|
+
protected baseUrl: string;
|
|
1052
|
+
getItems(recommendationsRequest: RecommendationsRequest): Promise<RecommendationsResponse>;
|
|
1053
|
+
private executeRecommendations;
|
|
1054
|
+
private convertResponse;
|
|
1055
|
+
bindComponents(recommendationsResponse: RecommendationsResponse): void;
|
|
1056
|
+
}
|
|
1057
|
+
|
|
1058
|
+
/**
|
|
1059
|
+
* @category Recommendations
|
|
1060
|
+
*/
|
|
1061
|
+
declare interface RecommendationsWidget {
|
|
1062
|
+
id: string;
|
|
1063
|
+
requestId: string;
|
|
1064
|
+
title: string;
|
|
1065
|
+
carousel: boolean;
|
|
1066
|
+
items?: Array<RecommendationsItem>;
|
|
1067
|
+
}
|
|
1068
|
+
|
|
1069
|
+
/**
|
|
1070
|
+
* @category Search
|
|
1071
|
+
*/
|
|
1072
|
+
declare interface Redirect {
|
|
1073
|
+
url: string;
|
|
1074
|
+
target?: string;
|
|
1075
|
+
}
|
|
1076
|
+
|
|
1077
|
+
declare interface RelatedSearchesFacetComponentConfig extends BaseComponentConfig {
|
|
1078
|
+
}
|
|
1079
|
+
|
|
1080
|
+
/**
|
|
1081
|
+
* @category Search
|
|
1082
|
+
*/
|
|
1083
|
+
declare type RequestType = 'ConceptSearch' | 'ImageSearch' | 'DefaultSearch';
|
|
1084
|
+
|
|
1085
|
+
declare interface SearchFieldComponentConfig extends BaseComponentConfig {
|
|
1086
|
+
strings?: {
|
|
1087
|
+
placeholder?: string;
|
|
1088
|
+
};
|
|
1089
|
+
/**
|
|
1090
|
+
* Specifies whether the input element should be pre-populared if "query" parameter exists on the URL.
|
|
1091
|
+
*
|
|
1092
|
+
* #### Default Value
|
|
1093
|
+
* `false`
|
|
1094
|
+
*/
|
|
1095
|
+
disableAutofill?: boolean;
|
|
1096
|
+
}
|
|
1097
|
+
|
|
1098
|
+
/**
|
|
1099
|
+
* @category Search
|
|
1100
|
+
*/
|
|
1101
|
+
declare interface SearchRequest {
|
|
1102
|
+
disableSpellcheck?: boolean;
|
|
1103
|
+
facets?: SelectedFacets;
|
|
1104
|
+
newRequest: boolean;
|
|
1105
|
+
pageSize?: number;
|
|
1106
|
+
page?: number;
|
|
1107
|
+
query?: string;
|
|
1108
|
+
requestType?: string;
|
|
1109
|
+
searchWithin?: string;
|
|
1110
|
+
sort?: string;
|
|
1111
|
+
url?: string;
|
|
1112
|
+
}
|
|
1113
|
+
|
|
1114
|
+
/**
|
|
1115
|
+
* @category Search
|
|
1116
|
+
*/
|
|
1117
|
+
declare interface SearchResponse {
|
|
1118
|
+
content?: ContentConfiguration;
|
|
1119
|
+
contentZones?: ContentZones;
|
|
1120
|
+
customLayout?: string;
|
|
1121
|
+
facets?: Array<Facet>;
|
|
1122
|
+
modifiedQuery?: string;
|
|
1123
|
+
pagination?: Pagination;
|
|
1124
|
+
query?: string;
|
|
1125
|
+
querySuggestions?: Array<string>;
|
|
1126
|
+
redirect?: Redirect;
|
|
1127
|
+
results?: Array<SearchResultsItem>;
|
|
1128
|
+
selectedFacets?: Array<SelectedFacet>;
|
|
1129
|
+
seo?: SeoConfiguration;
|
|
1130
|
+
sorting?: Sorting;
|
|
1131
|
+
success: boolean;
|
|
1132
|
+
trackingId: string;
|
|
1133
|
+
}
|
|
1134
|
+
|
|
1135
|
+
declare interface SearchResultsComponentConfig extends BaseComponentConfig {
|
|
1136
|
+
}
|
|
1137
|
+
|
|
1138
|
+
/**
|
|
1139
|
+
* @category Search
|
|
1140
|
+
*/
|
|
1141
|
+
declare interface SearchResultsItem extends Item {
|
|
1142
|
+
pinned: boolean;
|
|
1143
|
+
score: number;
|
|
1144
|
+
type: ItemType;
|
|
1145
|
+
}
|
|
1146
|
+
|
|
1147
|
+
declare interface SearchResultsItemComponentConfig extends BaseComponentConfig {
|
|
1148
|
+
strings?: {
|
|
1149
|
+
sale?: string;
|
|
1150
|
+
};
|
|
1151
|
+
}
|
|
1152
|
+
|
|
1153
|
+
declare interface SearchResultsListComponentConfig extends BaseComponentConfig {
|
|
1154
|
+
}
|
|
1155
|
+
|
|
1156
|
+
declare class SearchService extends BaseService {
|
|
1157
|
+
protected baseUrl: string;
|
|
1158
|
+
private facetExclusionPrefix;
|
|
1159
|
+
private decodeQuery;
|
|
1160
|
+
private decodeFacetValues;
|
|
1161
|
+
private shouldRenderUI;
|
|
1162
|
+
search(searchRequest: SearchRequest): Promise<SearchResponse>;
|
|
1163
|
+
query(query?: SearchTypes, selectedFacets?: SelectedFacets | undefined, disableSpellcheck?: boolean): Promise<SearchResponse | void>;
|
|
1164
|
+
addFacetValue(field: string, value: string): Promise<SearchResponse>;
|
|
1165
|
+
removeFacetValue(field: string, value: string): Promise<SearchResponse>;
|
|
1166
|
+
includeFacetValue(field: string, value: string): Promise<SearchResponse>;
|
|
1167
|
+
excludeFacetValue(field: string, value: string): Promise<SearchResponse>;
|
|
1168
|
+
private clearExistingFacetValue;
|
|
1169
|
+
setFacetValue(field: string, value: string): Promise<SearchResponse>;
|
|
1170
|
+
searchWithin(value: string): Promise<SearchResponse>;
|
|
1171
|
+
selectTab(value?: string): Promise<SearchResponse>;
|
|
1172
|
+
paginate(page: number): Promise<SearchResponse>;
|
|
1173
|
+
setPageSize(pageSize: number): Promise<SearchResponse>;
|
|
1174
|
+
sort(value?: string): Promise<SearchResponse>;
|
|
1175
|
+
private executeSearch;
|
|
1176
|
+
private ensureSearchRequest;
|
|
1177
|
+
private convertResponse;
|
|
1178
|
+
bindComponents(searchResponse: SearchResponse): void;
|
|
1179
|
+
bindFacetsListComponent(searchResponse: SearchResponse | undefined): void;
|
|
1180
|
+
bindLandingPageComponent(searchResponse: SearchResponse | undefined): void;
|
|
1181
|
+
bindModifiedQueryComponent(searchResponse: SearchResponse | undefined): void;
|
|
1182
|
+
bindPageSizeComponent(searchResponse: SearchResponse | undefined): void;
|
|
1183
|
+
bindPaginationComponent(searchResponse: SearchResponse | undefined): void;
|
|
1184
|
+
bindSearchFieldComponent(searchResponse: SearchResponse | undefined): void;
|
|
1185
|
+
bindConceptSearchFieldComponent(searchResponse: SearchResponse | undefined): void;
|
|
1186
|
+
bindImageSearchFieldComponent(searchResponse: SearchResponse | undefined): void;
|
|
1187
|
+
bindSearchResultsComponent(searchResponse: SearchResponse | undefined): void;
|
|
1188
|
+
bindSearchResultsListComponent(searchResponse: SearchResponse | undefined): void;
|
|
1189
|
+
bindQuerySuggestionsComponent(searchResponse: SearchResponse | undefined): void;
|
|
1190
|
+
bindSmartResponseComponent(searchResponse: SearchResponse | undefined): void;
|
|
1191
|
+
bindSortingComponent(searchResponse: SearchResponse | undefined): void;
|
|
1192
|
+
bindSelectedFacetsComponent(searchResponse: SearchResponse | undefined): void;
|
|
1193
|
+
bindTabsComponent(searchResponse: SearchResponse | undefined): void;
|
|
1194
|
+
bindZoneComponent(searchResponse: SearchResponse | undefined): void;
|
|
1195
|
+
getRequestFromUrl(): SearchRequest;
|
|
1196
|
+
private setQueryString;
|
|
1197
|
+
private getSearchUrl;
|
|
1198
|
+
private getBooleanParameter;
|
|
1199
|
+
private getPositiveIntegerParameter;
|
|
1200
|
+
private getStringParameter;
|
|
1201
|
+
private getRecentQueries;
|
|
1202
|
+
private saveRecentQueries;
|
|
1203
|
+
protected setSeoElements(searchResponse: SearchResponse): void;
|
|
1204
|
+
private removeElement;
|
|
1205
|
+
private setLinkTag;
|
|
1206
|
+
private setMetaTag;
|
|
1207
|
+
private setTitle;
|
|
1208
|
+
}
|
|
1209
|
+
|
|
1210
|
+
/**
|
|
1211
|
+
* @category Search
|
|
1212
|
+
*/
|
|
1213
|
+
declare type SearchTypes = string | {
|
|
1214
|
+
queryString: string;
|
|
1215
|
+
requestType: string;
|
|
1216
|
+
} | undefined;
|
|
1217
|
+
|
|
1218
|
+
declare interface SearchWithinFacetComponentConfig extends BaseComponentConfig {
|
|
1219
|
+
strings?: {
|
|
1220
|
+
label?: string;
|
|
1221
|
+
};
|
|
1222
|
+
}
|
|
1223
|
+
|
|
1224
|
+
/**
|
|
1225
|
+
* @category Search
|
|
1226
|
+
*/
|
|
1227
|
+
declare interface SelectedFacet {
|
|
1228
|
+
field: string;
|
|
1229
|
+
currency: boolean;
|
|
1230
|
+
title: string;
|
|
1231
|
+
values: Array<SelectedFacetValue>;
|
|
1232
|
+
}
|
|
1233
|
+
|
|
1234
|
+
/**
|
|
1235
|
+
* @category Search
|
|
1236
|
+
*/
|
|
1237
|
+
declare type SelectedFacets = Record<string, Array<string> | undefined>;
|
|
1238
|
+
|
|
1239
|
+
declare interface SelectedFacetsComponentConfig extends BaseComponentConfig {
|
|
1240
|
+
strings?: {
|
|
1241
|
+
remove?: string;
|
|
1242
|
+
};
|
|
1243
|
+
}
|
|
1244
|
+
|
|
1245
|
+
/**
|
|
1246
|
+
* @category Search
|
|
1247
|
+
*/
|
|
1248
|
+
declare interface SelectedFacetValue {
|
|
1249
|
+
title: string;
|
|
1250
|
+
value: string;
|
|
1251
|
+
excluded: boolean;
|
|
1252
|
+
}
|
|
1253
|
+
|
|
1254
|
+
/**
|
|
1255
|
+
* @category Search
|
|
1256
|
+
*/
|
|
1257
|
+
declare interface SeoConfiguration {
|
|
1258
|
+
canonicalUrl?: string;
|
|
1259
|
+
description?: string;
|
|
1260
|
+
keywords?: string;
|
|
1261
|
+
robots?: string;
|
|
1262
|
+
title?: string;
|
|
1263
|
+
}
|
|
1264
|
+
|
|
1265
|
+
declare interface ServiceFieldMappings {
|
|
1266
|
+
description: Array<string>;
|
|
1267
|
+
imageUrl: Array<string>;
|
|
1268
|
+
price: Array<string>;
|
|
1269
|
+
rating: Array<string>;
|
|
1270
|
+
salePrice: Array<string>;
|
|
1271
|
+
sku: Array<string>;
|
|
1272
|
+
title: Array<string>;
|
|
1273
|
+
type: Array<string>;
|
|
1274
|
+
url: Array<string>;
|
|
1275
|
+
}
|
|
1276
|
+
|
|
1277
|
+
declare interface ServiceVariantFieldMappings {
|
|
1278
|
+
color: {
|
|
1279
|
+
name: Array<string>;
|
|
1280
|
+
hex: Array<string>;
|
|
1281
|
+
imageUrl: Array<string>;
|
|
1282
|
+
};
|
|
1283
|
+
description: Array<string>;
|
|
1284
|
+
id: Array<string>;
|
|
1285
|
+
imageUrl: Array<string>;
|
|
1286
|
+
price: Array<string>;
|
|
1287
|
+
rating: Array<string>;
|
|
1288
|
+
salePrice: Array<string>;
|
|
1289
|
+
sku: Array<string>;
|
|
1290
|
+
title: Array<string>;
|
|
1291
|
+
url: Array<string>;
|
|
1292
|
+
}
|
|
1293
|
+
|
|
1294
|
+
declare interface SizeFacetComponentConfig extends BaseComponentConfig {
|
|
1295
|
+
excludeEnabled?: boolean;
|
|
1296
|
+
strings?: {
|
|
1297
|
+
exclude?: string;
|
|
1298
|
+
include?: string;
|
|
1299
|
+
showFewer?: string;
|
|
1300
|
+
showMore?: string;
|
|
1301
|
+
};
|
|
1302
|
+
}
|
|
1303
|
+
|
|
1304
|
+
declare interface SmartResponseComponentConfig extends BaseComponentConfig {
|
|
1305
|
+
strings?: {
|
|
1306
|
+
header?: string;
|
|
1307
|
+
noresults?: string;
|
|
1308
|
+
};
|
|
1309
|
+
prompt?: {
|
|
1310
|
+
instructions?: string;
|
|
1311
|
+
schema?: object;
|
|
1312
|
+
onRequest?: any;
|
|
1313
|
+
onResponse?: any;
|
|
1314
|
+
};
|
|
1315
|
+
}
|
|
1316
|
+
|
|
1317
|
+
declare interface SmartSearchFieldComponentConfig extends BaseComponentConfig {
|
|
1318
|
+
strings?: {
|
|
1319
|
+
placeholder?: string;
|
|
1320
|
+
};
|
|
1321
|
+
/**
|
|
1322
|
+
* Specifies if a request is triggered on keypress.
|
|
1323
|
+
*
|
|
1324
|
+
* #### Default Value
|
|
1325
|
+
* `false`
|
|
1326
|
+
* *For more information, see {@link Components}.*
|
|
1327
|
+
*/
|
|
1328
|
+
searchOnKeyPress?: boolean;
|
|
1329
|
+
/**
|
|
1330
|
+
* Specifies the minimum length for a query to trigger a request.
|
|
1331
|
+
*
|
|
1332
|
+
* #### Default Value
|
|
1333
|
+
* `10`
|
|
1334
|
+
* *For more information, see {@link Components}.*
|
|
1335
|
+
*/
|
|
1336
|
+
searchMinCharacterCount?: number;
|
|
1337
|
+
/**
|
|
1338
|
+
* Specifies the debounce value between fetching data and keypress (ms)
|
|
1339
|
+
*
|
|
1340
|
+
* #### Default Value
|
|
1341
|
+
* `350`
|
|
1342
|
+
* *For more information, see {@link Components}.*
|
|
1343
|
+
*/
|
|
1344
|
+
searchDebounceValue?: number;
|
|
1345
|
+
}
|
|
1346
|
+
|
|
1347
|
+
/**
|
|
1348
|
+
* @category Search
|
|
1349
|
+
*/
|
|
1350
|
+
declare interface Sorting {
|
|
1351
|
+
value?: string;
|
|
1352
|
+
options: Array<SortingOption>;
|
|
1353
|
+
}
|
|
1354
|
+
|
|
1355
|
+
declare interface SortingComponentConfig extends BaseComponentConfig {
|
|
1356
|
+
}
|
|
1357
|
+
|
|
1358
|
+
/**
|
|
1359
|
+
* @category Search
|
|
1360
|
+
*/
|
|
1361
|
+
declare interface SortingOption {
|
|
1362
|
+
title: string;
|
|
1363
|
+
value: string;
|
|
1364
|
+
default: boolean;
|
|
1365
|
+
selected: boolean;
|
|
1366
|
+
}
|
|
1367
|
+
|
|
1368
|
+
declare interface TabsComponentConfig extends BaseComponentConfig {
|
|
1369
|
+
}
|
|
1370
|
+
|
|
1371
|
+
declare interface TooltipComponentConfig extends BaseComponentConfig {
|
|
1372
|
+
}
|
|
1373
|
+
|
|
1374
|
+
declare class TrackingService extends BaseService {
|
|
1375
|
+
protected baseUrl: string;
|
|
1376
|
+
trackAddToCart(productId: string, quantity: number, price: number, currencyIsoCode: string): Promise<void>;
|
|
1377
|
+
trackAddToCartMultiple(items: Array<{
|
|
1378
|
+
productId: string;
|
|
1379
|
+
quantity: number;
|
|
1380
|
+
price: number;
|
|
1381
|
+
currencyIsoCode: string;
|
|
1382
|
+
}>): Promise<void>;
|
|
1383
|
+
trackAutocompleteClick(query: string | undefined, itemType: AutocompleteItemType, title: string, url: string): Promise<void>;
|
|
1384
|
+
trackBannerClick(bannerId: number, campaignId: number): Promise<void>;
|
|
1385
|
+
trackBannerImpression(bannerId: number, campaignId: number): Promise<void>;
|
|
1386
|
+
trackOrder(orderId: string, items: Array<{
|
|
1387
|
+
productId: string;
|
|
1388
|
+
quantity: number;
|
|
1389
|
+
price: number;
|
|
1390
|
+
}>, subTotal: number, tax: number, total: number, currencyIsoCode: string): Promise<void>;
|
|
1391
|
+
trackPageLoad(pageType: PageType, productId?: string): Promise<void>;
|
|
1392
|
+
trackRating(productId: string, rating: number): Promise<void>;
|
|
1393
|
+
trackRecommendationClick(widgetId: string, requestId: string, productId: string): Promise<void>;
|
|
1394
|
+
trackSearchResultClick(id: string, url: string, event?: PointerEvent): Promise<void>;
|
|
1395
|
+
trackSearch(query: string | undefined, newSearch: boolean): Promise<void>;
|
|
1396
|
+
trackEvent(type: EventType, data: any): Promise<void>;
|
|
1397
|
+
private getQueryId;
|
|
1398
|
+
private setNewQueryId;
|
|
1399
|
+
}
|
|
1400
|
+
|
|
1401
|
+
declare interface VariantFieldMappings extends FieldMappings {
|
|
1402
|
+
/**
|
|
1403
|
+
* #### Default Value
|
|
1404
|
+
* `['id']`
|
|
1405
|
+
*/
|
|
1406
|
+
id?: string | Array<string>;
|
|
1407
|
+
color?: {
|
|
1408
|
+
/**
|
|
1409
|
+
* #### Default Value
|
|
1410
|
+
* `['colorname', 'color']`
|
|
1411
|
+
*/
|
|
1412
|
+
name?: string | Array<string>;
|
|
1413
|
+
/**
|
|
1414
|
+
* #### Default Value
|
|
1415
|
+
* `['colorhex', 'colorvalue']`
|
|
1416
|
+
*/
|
|
1417
|
+
hex?: string | Array<string>;
|
|
1418
|
+
/**
|
|
1419
|
+
* #### Default Value
|
|
1420
|
+
* `['colorimageurl', 'colorimage']`
|
|
1421
|
+
*/
|
|
1422
|
+
imageUrl?: string | Array<string>;
|
|
1423
|
+
};
|
|
1424
|
+
}
|
|
1425
|
+
|
|
1426
|
+
declare interface VariantSelectorComponentConfig extends BaseComponentConfig {
|
|
1427
|
+
}
|
|
1428
|
+
|
|
1429
|
+
declare interface VisualSearchFieldComponentConfig extends BaseComponentConfig {
|
|
1430
|
+
strings?: {
|
|
1431
|
+
dragImageMessage?: string;
|
|
1432
|
+
uploadImageMessage?: string;
|
|
1433
|
+
dropImageMessage?: string;
|
|
1434
|
+
errorMessage?: string;
|
|
1435
|
+
};
|
|
1436
|
+
}
|
|
1437
|
+
|
|
1438
|
+
export { }
|