@bridgeline-digital/hawksearch-handlebars-ui 6.1.12 → 6.1.13

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.
Files changed (239) hide show
  1. package/changelog.md +6 -0
  2. package/dist/hawksearch-handlebars-ui.cjs +2 -2
  3. package/dist/hawksearch-handlebars-ui.js +527 -87
  4. package/dist/hawksearch-handlebars-ui.min.js +139 -46
  5. package/dist/hawksearch-handlebars-ui.umd.cjs +2 -2
  6. package/dist/index.d.ts +61 -1
  7. package/docs/assets/search.js +1 -1
  8. package/docs/classes/Components.AutocompleteComponent.html +2 -0
  9. package/docs/classes/Components.BaseComponent.html +4 -0
  10. package/docs/classes/Components.BaseContentComponent.html +2 -0
  11. package/docs/classes/Components.BaseFacetComponent.html +2 -0
  12. package/docs/classes/Components.CheckboxListFacetComponent.html +2 -0
  13. package/docs/classes/Components.ColorFacetComponent.html +2 -0
  14. package/docs/classes/Components.ConceptSearchFieldComponent.html +2 -0
  15. package/docs/classes/Components.ContentZoneComponent.html +2 -0
  16. package/docs/classes/Components.ConversationalSearchComponent.html +377 -0
  17. package/docs/classes/Components.CustomContentComponent.html +2 -0
  18. package/docs/classes/Components.DatePickerComponent.html +2 -0
  19. package/docs/classes/Components.DateRangeFacetComponent.html +2 -0
  20. package/docs/classes/Components.FacetWrapperComponent.html +2 -0
  21. package/docs/classes/Components.FacetsListComponent.html +2 -0
  22. package/docs/classes/Components.FeaturedItemsContentComponent.html +2 -0
  23. package/docs/classes/Components.FeaturedItemsContentItemComponent.html +2 -0
  24. package/docs/classes/Components.IconComponent.html +2 -0
  25. package/docs/classes/Components.ImageContentComponent.html +2 -0
  26. package/docs/classes/Components.ImageSearchFieldComponent.html +2 -0
  27. package/docs/classes/Components.LandingPageComponent.html +2 -0
  28. package/docs/classes/Components.LinkListFacetComponent.html +2 -0
  29. package/docs/classes/Components.ModifiedQueryComponent.html +2 -0
  30. package/docs/classes/Components.NumericRangeFacetComponent.html +2 -0
  31. package/docs/classes/Components.PageSizeComponent.html +2 -0
  32. package/docs/classes/Components.PaginationComponent.html +2 -0
  33. package/docs/classes/Components.PopularQueriesContentComponent.html +2 -0
  34. package/docs/classes/Components.QuerySuggestionsComponent.html +2 -0
  35. package/docs/classes/Components.RangeSliderComponent.html +2 -0
  36. package/docs/classes/Components.RangeSliderFacetComponent.html +2 -0
  37. package/docs/classes/Components.RatingComponent.html +2 -0
  38. package/docs/classes/Components.RecentSearchesFacetComponent.html +2 -0
  39. package/docs/classes/Components.RecommendationsComponent.html +2 -0
  40. package/docs/classes/Components.RecommendationsItemComponent.html +2 -0
  41. package/docs/classes/Components.RelatedSearchesFacetComponent.html +2 -0
  42. package/docs/classes/Components.SearchFieldComponent.html +2 -0
  43. package/docs/classes/Components.SearchResultsComponent.html +2 -0
  44. package/docs/classes/Components.SearchResultsItemComponent.html +2 -0
  45. package/docs/classes/Components.SearchResultsListComponent.html +2 -0
  46. package/docs/classes/Components.SearchWithinFacetComponent.html +2 -0
  47. package/docs/classes/Components.SelectedFacetsComponent.html +2 -0
  48. package/docs/classes/Components.SizeFacetComponent.html +2 -0
  49. package/docs/classes/Components.SmartResponseComponent.html +346 -0
  50. package/docs/classes/Components.SortingComponent.html +2 -0
  51. package/docs/classes/Components.TabsComponent.html +2 -0
  52. package/docs/classes/Components.TooltipComponent.html +2 -0
  53. package/docs/classes/Components.VariantSelectorComponent.html +2 -0
  54. package/docs/classes/Components.VisualSearchFieldComponent.html +2 -0
  55. package/docs/classes/Services.AutocompleteService.html +7 -2
  56. package/docs/classes/Services.BaseService.html +8 -2
  57. package/docs/classes/Services.ConversationalService.html +400 -0
  58. package/docs/classes/Services.RecommendationsService.html +7 -2
  59. package/docs/classes/Services.SearchService.html +20 -2
  60. package/docs/classes/Services.TrackingService.html +7 -2
  61. package/docs/enums/Models.AutocompleteItemType.html +7 -0
  62. package/docs/enums/Models.EventType.html +7 -0
  63. package/docs/enums/Models.PageType.html +7 -0
  64. package/docs/enums/Models.SearchType.html +7 -0
  65. package/docs/index.html +3 -3
  66. package/docs/interfaces/Configuration.AutocompleteComponentConfig.html +2 -0
  67. package/docs/interfaces/Configuration.BaseComponentConfig.html +4 -0
  68. package/docs/interfaces/Configuration.Breakpoints.html +2 -0
  69. package/docs/interfaces/Configuration.CheckboxListFacetComponentConfig.html +2 -0
  70. package/docs/interfaces/Configuration.ColorFacetComponentConfig.html +2 -0
  71. package/docs/interfaces/Configuration.ContentZoneComponentConfig.html +2 -0
  72. package/docs/interfaces/Configuration.ConversationalSearchComponentConfig.html +174 -0
  73. package/docs/interfaces/Configuration.CustomContentComponentConfig.html +2 -0
  74. package/docs/interfaces/Configuration.DatePickerComponentConfig.html +2 -0
  75. package/docs/interfaces/Configuration.DateRangeFacetComponentConfig.html +2 -0
  76. package/docs/interfaces/Configuration.FacetWrapperComponentConfig.html +2 -0
  77. package/docs/interfaces/Configuration.FacetsListComponentConfig.html +2 -0
  78. package/docs/interfaces/Configuration.FeaturedItemsContentComponentConfig.html +2 -0
  79. package/docs/interfaces/Configuration.FeaturedItemsContentItemComponentConfig.html +2 -0
  80. package/docs/interfaces/Configuration.FieldMappings.html +2 -0
  81. package/docs/interfaces/Configuration.HawkSearchComponents.html +12 -0
  82. package/docs/interfaces/Configuration.HawkSearchConfig.html +2 -0
  83. package/docs/interfaces/Configuration.HawkSearchGlobal.html +5 -1
  84. package/docs/interfaces/Configuration.HawkSearchState.html +2 -0
  85. package/docs/interfaces/Configuration.IconComponentConfig.html +2 -0
  86. package/docs/interfaces/Configuration.ImageContentComponentConfig.html +2 -0
  87. package/docs/interfaces/Configuration.LandingPageComponentConfig.html +2 -0
  88. package/docs/interfaces/Configuration.LinkListFacetComponentConfig.html +2 -0
  89. package/docs/interfaces/Configuration.ModifiedQueryComponentConfig.html +2 -0
  90. package/docs/interfaces/Configuration.NumericRangeFacetComponentConfig.html +2 -0
  91. package/docs/interfaces/Configuration.PageSizeComponentConfig.html +2 -0
  92. package/docs/interfaces/Configuration.PaginationComponentConfig.html +2 -0
  93. package/docs/interfaces/Configuration.PopularQueriesContentComponentConfig.html +2 -0
  94. package/docs/interfaces/Configuration.QuerySuggestionsComponentConfig.html +2 -0
  95. package/docs/interfaces/Configuration.RangeSliderComponentConfig.html +2 -0
  96. package/docs/interfaces/Configuration.RangeSliderFacetComponentConfig.html +2 -0
  97. package/docs/interfaces/Configuration.RatingComponentConfig.html +2 -0
  98. package/docs/interfaces/Configuration.RecentSearchesFacetComponentConfig.html +2 -0
  99. package/docs/interfaces/Configuration.RecommendationsComponentConfig.html +2 -0
  100. package/docs/interfaces/Configuration.RecommendationsItemComponentConfig.html +2 -0
  101. package/docs/interfaces/Configuration.RelatedSearchesFacetComponentConfig.html +2 -0
  102. package/docs/interfaces/Configuration.SearchFieldComponentConfig.html +2 -0
  103. package/docs/interfaces/Configuration.SearchResultsComponentConfig.html +2 -0
  104. package/docs/interfaces/Configuration.SearchResultsItemComponentConfig.html +2 -0
  105. package/docs/interfaces/Configuration.SearchResultsListComponentConfig.html +2 -0
  106. package/docs/interfaces/Configuration.SearchWithinFacetComponentConfig.html +2 -0
  107. package/docs/interfaces/Configuration.SelectedFacetsComponentConfig.html +2 -0
  108. package/docs/interfaces/Configuration.SizeFacetComponentConfig.html +2 -0
  109. package/docs/interfaces/Configuration.SmartResponseComponentConfig.html +167 -0
  110. package/docs/interfaces/Configuration.SmartSearchFieldComponentConfig.html +2 -0
  111. package/docs/interfaces/Configuration.SortingComponentConfig.html +2 -0
  112. package/docs/interfaces/Configuration.TabsComponentConfig.html +2 -0
  113. package/docs/interfaces/Configuration.TooltipComponentConfig.html +2 -0
  114. package/docs/interfaces/Configuration.VariantFieldMappings.html +2 -0
  115. package/docs/interfaces/Configuration.VariantSelectorComponentConfig.html +2 -0
  116. package/docs/interfaces/Configuration.VisualSearchFieldComponentConfig.html +2 -0
  117. package/docs/interfaces/Models.AutocompleteCategories.html +7 -0
  118. package/docs/interfaces/Models.AutocompleteCategory.html +7 -0
  119. package/docs/interfaces/Models.AutocompleteComponentModel.html +7 -0
  120. package/docs/interfaces/Models.AutocompleteContent.html +7 -0
  121. package/docs/interfaces/Models.AutocompleteContentResult.html +7 -0
  122. package/docs/interfaces/Models.AutocompleteProductResult.html +7 -0
  123. package/docs/interfaces/Models.AutocompleteProducts.html +7 -0
  124. package/docs/interfaces/Models.AutocompleteQueries.html +7 -0
  125. package/docs/interfaces/Models.AutocompleteQuery.html +7 -0
  126. package/docs/interfaces/Models.AutocompleteRequest.html +7 -0
  127. package/docs/interfaces/Models.AutocompleteResponse.html +7 -0
  128. package/docs/interfaces/Models.BaseComponentModel.html +9 -0
  129. package/docs/interfaces/Models.CalendarDay.html +7 -0
  130. package/docs/interfaces/Models.CheckboxListFacetComponentModel.html +7 -0
  131. package/docs/interfaces/Models.CheckboxListFacetValue.html +7 -0
  132. package/docs/interfaces/Models.ColorFacetComponentModel.html +7 -0
  133. package/docs/interfaces/Models.ColorFacetValue.html +7 -0
  134. package/docs/interfaces/Models.ContentConfiguration.html +7 -0
  135. package/docs/interfaces/Models.ContentType.html +7 -0
  136. package/docs/interfaces/Models.ContentZone.html +7 -0
  137. package/docs/interfaces/Models.ContentZoneComponentModel.html +7 -0
  138. package/docs/interfaces/Models.ContentZoneItem.html +7 -0
  139. package/docs/interfaces/Models.ContentZones.html +7 -0
  140. package/docs/interfaces/Models.ConversationalSearchComponentModel.html +208 -0
  141. package/docs/interfaces/Models.CustomContent.html +7 -0
  142. package/docs/interfaces/Models.CustomContentComponentModel.html +7 -0
  143. package/docs/interfaces/Models.CustomWidgetContent.html +7 -0
  144. package/docs/interfaces/Models.DateFacetRange.html +7 -0
  145. package/docs/interfaces/Models.DatePickerComponentModel.html +7 -0
  146. package/docs/interfaces/Models.DateRangeFacetComponentModel.html +7 -0
  147. package/docs/interfaces/Models.Facet.html +7 -0
  148. package/docs/interfaces/Models.FacetScrolling.html +7 -0
  149. package/docs/interfaces/Models.FacetSearch.html +7 -0
  150. package/docs/interfaces/Models.FacetTruncation.html +7 -0
  151. package/docs/interfaces/Models.FacetValue.html +7 -0
  152. package/docs/interfaces/Models.FacetValueColor.html +7 -0
  153. package/docs/interfaces/Models.FacetWrapperComponentModel.html +7 -0
  154. package/docs/interfaces/Models.FacetsListComponentModel.html +7 -0
  155. package/docs/interfaces/Models.FeaturedItemsContent.html +7 -0
  156. package/docs/interfaces/Models.FeaturedItemsContentComponentModel.html +7 -0
  157. package/docs/interfaces/Models.FeaturedItemsContentItem.html +7 -0
  158. package/docs/interfaces/Models.FeaturedItemsContentItemComponentModel.html +7 -0
  159. package/docs/interfaces/Models.IconComponentModel.html +7 -0
  160. package/docs/interfaces/Models.ImageContent.html +7 -0
  161. package/docs/interfaces/Models.ImageContentComponentModel.html +7 -0
  162. package/docs/interfaces/Models.Item.html +7 -0
  163. package/docs/interfaces/Models.ItemVariant.html +7 -0
  164. package/docs/interfaces/Models.LandingPageComponentModel.html +7 -0
  165. package/docs/interfaces/Models.LinkListFacetComponentModel.html +7 -0
  166. package/docs/interfaces/Models.LinkListFacetValue.html +7 -0
  167. package/docs/interfaces/Models.MessageItem.html +191 -0
  168. package/docs/interfaces/Models.MessageItemList.html +1417 -0
  169. package/docs/interfaces/Models.ModifiedQueryComponentModel.html +7 -0
  170. package/docs/interfaces/Models.ModifiedQueryData.html +7 -0
  171. package/docs/interfaces/Models.NumericFacetRange.html +7 -0
  172. package/docs/interfaces/Models.NumericRangeFacetComponentModel.html +7 -0
  173. package/docs/interfaces/Models.PageSizeComponentModel.html +7 -0
  174. package/docs/interfaces/Models.Pagination.html +7 -0
  175. package/docs/interfaces/Models.PaginationComponentModel.html +7 -0
  176. package/docs/interfaces/Models.PaginationOption.html +7 -0
  177. package/docs/interfaces/Models.PopularQueriesContent.html +7 -0
  178. package/docs/interfaces/Models.PopularQueriesContentComponentModel.html +7 -0
  179. package/docs/interfaces/Models.PopularQueriesContentItem.html +7 -0
  180. package/docs/interfaces/Models.QuerySuggestionsComponentModel.html +7 -0
  181. package/docs/interfaces/Models.QuerySuggestionsData.html +7 -0
  182. package/docs/interfaces/Models.RangeSliderComponentModel.html +7 -0
  183. package/docs/interfaces/Models.RangeSliderEventData.html +7 -0
  184. package/docs/interfaces/Models.RangeSliderFacetComponentModel.html +7 -0
  185. package/docs/interfaces/Models.RatingComponentModel.html +7 -0
  186. package/docs/interfaces/Models.RecentSearchesFacetComponentModel.html +7 -0
  187. package/docs/interfaces/Models.RecommendationsComponentModel.html +7 -0
  188. package/docs/interfaces/Models.RecommendationsItem.html +7 -0
  189. package/docs/interfaces/Models.RecommendationsItemComponentModel.html +7 -0
  190. package/docs/interfaces/Models.RecommendationsRequest.html +7 -0
  191. package/docs/interfaces/Models.RecommendationsResponse.html +7 -0
  192. package/docs/interfaces/Models.RecommendationsWidget.html +7 -0
  193. package/docs/interfaces/Models.Redirect.html +7 -0
  194. package/docs/interfaces/Models.RelatedSearchesFacetComponentModel.html +7 -0
  195. package/docs/interfaces/Models.SearchFieldComponentModel.html +7 -0
  196. package/docs/interfaces/Models.SearchRequest.html +7 -0
  197. package/docs/interfaces/Models.SearchResponse.html +7 -0
  198. package/docs/interfaces/Models.SearchResultsComponentModel.html +7 -0
  199. package/docs/interfaces/Models.SearchResultsItem.html +7 -0
  200. package/docs/interfaces/Models.SearchResultsItemComponentModel.html +7 -0
  201. package/docs/interfaces/Models.SearchResultsItemVariant.html +7 -0
  202. package/docs/interfaces/Models.SearchResultsListComponentModel.html +7 -0
  203. package/docs/interfaces/Models.SearchWithinFacetComponentModel.html +7 -0
  204. package/docs/interfaces/Models.SelectedFacet.html +7 -0
  205. package/docs/interfaces/Models.SelectedFacetValue.html +7 -0
  206. package/docs/interfaces/Models.SelectedFacetsComponentModel.html +7 -0
  207. package/docs/interfaces/Models.SeoConfiguration.html +7 -0
  208. package/docs/interfaces/Models.SizeFacetComponentModel.html +7 -0
  209. package/docs/interfaces/Models.SizeFacetValue.html +7 -0
  210. package/docs/interfaces/Models.SmartResponseComponentModel.html +215 -0
  211. package/docs/interfaces/Models.SmartResponseRequest.html +191 -0
  212. package/docs/interfaces/Models.SmartResponseResponse.html +196 -0
  213. package/docs/interfaces/Models.SmartSearchFieldComponentModel.html +7 -0
  214. package/docs/interfaces/Models.Sorting.html +7 -0
  215. package/docs/interfaces/Models.SortingComponentModel.html +7 -0
  216. package/docs/interfaces/Models.SortingOption.html +7 -0
  217. package/docs/interfaces/Models.TabsComponentModel.html +7 -0
  218. package/docs/interfaces/Models.TooltipComponentModel.html +7 -0
  219. package/docs/interfaces/Models.VariantSelectorComponentModel.html +7 -0
  220. package/docs/interfaces/Models.Variants.html +7 -0
  221. package/docs/interfaces/Models.VisualSearchFieldComponentModel.html +7 -0
  222. package/docs/interfaces/Services.ServiceFieldMappings.html +1 -0
  223. package/docs/interfaces/Services.ServiceVariantFieldMappings.html +1 -0
  224. package/docs/modules/Components.html +4 -0
  225. package/docs/modules/Configuration.html +4 -0
  226. package/docs/modules/Models.html +14 -0
  227. package/docs/modules/Services.html +2 -0
  228. package/docs/types/Configuration.DisplayType.html +2 -0
  229. package/docs/types/Models.FacetState.html +7 -0
  230. package/docs/types/Models.FacetType.html +7 -0
  231. package/docs/types/Models.FacetValueState.html +7 -0
  232. package/docs/types/Models.IconName.html +7 -0
  233. package/docs/types/Models.ItemType.html +7 -0
  234. package/docs/types/Models.MessageRole.html +165 -0
  235. package/docs/types/Models.RequestType.html +7 -0
  236. package/docs/types/Models.SearchResultsMode.html +7 -0
  237. package/docs/types/Models.SearchTypes.html +7 -0
  238. package/docs/types/Models.SelectedFacets.html +7 -0
  239. package/package.json +1 -1
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * name: @bridgeline-digital/hawksearch-handlebars-ui
3
3
  *
4
- * version: v6.1.12
4
+ * version: v6.2.0-beta.5
5
5
  *
6
6
  * description: The HawkSearch Handlebars UI package allows you to add a highly-customizable search results page to your website powered by HawkSearch.
7
7
  *
@@ -5751,7 +5751,7 @@ function unescape(string2) {
5751
5751
  string2 = toString(string2);
5752
5752
  return string2 && reHasEscapedHtml.test(string2) ? string2.replace(reEscapedHtml, unescapeHtmlChar$1) : string2;
5753
5753
  }
5754
- const defaultStylesheet = 'html,body,div,span,applet,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,abbr,acronym,address,big,cite,code,del,dfn,em,img,ins,kbd,q,s,samp,small,strike,strong,sub,sup,tt,var,b,u,i,center,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,embed,figure,figcaption,footer,header,hgroup,menu,nav,output,ruby,section,summary,time,mark,audio,video{box-shadow:none;margin:0;padding:0;border:0;font-size:100%;font-weight:400;font:inherit;vertical-align:baseline;color:inherit;text-transform:none;text-shadow:none;background:transparent}article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section{display:block}body{line-height:1}ol,ul{list-style:none;width:auto}ol li,ul li{list-style:none}blockquote,q{quotes:none}blockquote:before,blockquote:after,q:before,q:after{content:"";content:none}table{border-collapse:collapse;border-spacing:0}img{display:inline-block}.clearfix:after{content:"";display:table;clear:both}*,*:before,*:after{box-sizing:border-box!important;transition:none}b,strong{font-weight:700}i,em{font-style:italic}u{text-decoration:underline}sup{vertical-align:super;font-size:75%}sub{vertical-align:sub;font-size:75%}a{cursor:pointer}.label{display:block;margin:0 0 5px;text-align:left}input[type=text],input[type=number],input[type=search],select{display:block;outline:none;width:100%;height:45px;border:var(--form-element-border);border-radius:var(--form-element-border-radius);padding:var(--padding-sm);background:var(--form-element-background);font-family:var(--default-font-family);font-size:16px;line-height:1;color:var(--default-font-color)}input[type=text]:hover,input[type=text]:focus,input[type=number]:hover,input[type=number]:focus,input[type=search]:hover,input[type=search]:focus,select:hover,select:focus{border:var(--form-element-border--focus)}select{padding-right:var(--padding)}::placeholder{color:var(--form-element-placeholder-color)}input[type=checkbox]{display:none}input[type=checkbox]+label{position:relative;display:block;margin:0 0 5px;padding-left:calc(16px + var(--padding-sm));cursor:pointer}input[type=checkbox]+label:before{content:"";position:absolute;top:1px;left:0;width:16px;height:16px;border:var(--form-element-border);background:var(--form-element-background)}input[type=checkbox]:checked+label:before{background:var(--color-accent)}.row{--gap: var(--padding);display:flex;flex-direction:row;flex-wrap:wrap;gap:var(--gap);margin:0 0 var(--margin) 0}.row:last-child{margin-bottom:0}.row--reverse{flex-direction:row-reverse}.row--tight{--gap: var(--padding-xs)}@media (min-width: 740px){.row-sm{--gap: var(--padding);display:flex;flex-direction:row;flex-wrap:wrap;gap:var(--gap);margin:0 0 var(--margin) 0}.row-sm:last-child{margin-bottom:0}.row-sm--reverse{flex-direction:row-reverse}.row-sm--tight{--gap: var(--padding-xs)}}@media (min-width: 990px){.row-md{--gap: var(--padding);display:flex;flex-direction:row;flex-wrap:wrap;gap:var(--gap);margin:0 0 var(--margin) 0}.row-md:last-child{margin-bottom:0}.row-md--reverse{flex-direction:row-reverse}.row-md--tight{--gap: var(--padding-xs)}}@media (min-width: 1260px){.row-lg{--gap: var(--padding);display:flex;flex-direction:row;flex-wrap:wrap;gap:var(--gap);margin:0 0 var(--margin) 0}.row-lg:last-child{margin-bottom:0}.row-lg--reverse{flex-direction:row-reverse}.row-lg--tight{--gap: var(--padding-xs)}}@media (min-width: 1800px){.row-xl{--gap: var(--padding);display:flex;flex-direction:row;flex-wrap:wrap;gap:var(--gap);margin:0 0 var(--margin) 0}.row-xl:last-child{margin-bottom:0}.row-xl--reverse{flex-direction:row-reverse}.row-xl--tight{--gap: var(--padding-xs)}}.column{flex-grow:0;flex-shrink:0;width:100%}.column--1{flex-basis:calc(8.3333333333% - (.9166666667 * var(--gap)))}.column--2{flex-basis:calc(16.6666666667% - (.8333333333 * var(--gap)))}.column--3{flex-basis:calc(25% - (.75 * var(--gap)))}.column--4{flex-basis:calc(33.3333333333% - (.6666666667 * var(--gap)))}.column--5{flex-basis:calc(41.6666666667% - (.5833333333 * var(--gap)))}.column--6{flex-basis:calc(50% - (.5 * var(--gap)))}.column--7{flex-basis:calc(58.3333333333% - (.4166666667 * var(--gap)))}.column--8{flex-basis:calc(66.6666666667% - (.3333333333 * var(--gap)))}.column--9{flex-basis:calc(75% - (.25 * var(--gap)))}.column--10{flex-basis:calc(83.3333333333% - (.1666666667 * var(--gap)))}.column--11{flex-basis:calc(91.6666666667% - (.0833333333 * var(--gap)))}.column--12{flex-basis:calc(100% - (0 * var(--gap)))}.column--pull-right{margin-left:auto}@media (min-width: 740px){.column-sm{flex-grow:0;flex-shrink:0;width:100%}.column-sm--1{flex-basis:calc(8.3333333333% - (.9166666667 * var(--gap)))}.column-sm--2{flex-basis:calc(16.6666666667% - (.8333333333 * var(--gap)))}.column-sm--3{flex-basis:calc(25% - (.75 * var(--gap)))}.column-sm--4{flex-basis:calc(33.3333333333% - (.6666666667 * var(--gap)))}.column-sm--5{flex-basis:calc(41.6666666667% - (.5833333333 * var(--gap)))}.column-sm--6{flex-basis:calc(50% - (.5 * var(--gap)))}.column-sm--7{flex-basis:calc(58.3333333333% - (.4166666667 * var(--gap)))}.column-sm--8{flex-basis:calc(66.6666666667% - (.3333333333 * var(--gap)))}.column-sm--9{flex-basis:calc(75% - (.25 * var(--gap)))}.column-sm--10{flex-basis:calc(83.3333333333% - (.1666666667 * var(--gap)))}.column-sm--11{flex-basis:calc(91.6666666667% - (.0833333333 * var(--gap)))}.column-sm--12{flex-basis:calc(100% - (0 * var(--gap)))}.column-sm--pull-right{margin-left:auto}}@media (min-width: 990px){.column-md{flex-grow:0;flex-shrink:0;width:100%}.column-md--1{flex-basis:calc(8.3333333333% - (.9166666667 * var(--gap)))}.column-md--2{flex-basis:calc(16.6666666667% - (.8333333333 * var(--gap)))}.column-md--3{flex-basis:calc(25% - (.75 * var(--gap)))}.column-md--4{flex-basis:calc(33.3333333333% - (.6666666667 * var(--gap)))}.column-md--5{flex-basis:calc(41.6666666667% - (.5833333333 * var(--gap)))}.column-md--6{flex-basis:calc(50% - (.5 * var(--gap)))}.column-md--7{flex-basis:calc(58.3333333333% - (.4166666667 * var(--gap)))}.column-md--8{flex-basis:calc(66.6666666667% - (.3333333333 * var(--gap)))}.column-md--9{flex-basis:calc(75% - (.25 * var(--gap)))}.column-md--10{flex-basis:calc(83.3333333333% - (.1666666667 * var(--gap)))}.column-md--11{flex-basis:calc(91.6666666667% - (.0833333333 * var(--gap)))}.column-md--12{flex-basis:calc(100% - (0 * var(--gap)))}.column-md--pull-right{margin-left:auto}}@media (min-width: 1260px){.column-lg{flex-grow:0;flex-shrink:0;width:100%}.column-lg--1{flex-basis:calc(8.3333333333% - (.9166666667 * var(--gap)))}.column-lg--2{flex-basis:calc(16.6666666667% - (.8333333333 * var(--gap)))}.column-lg--3{flex-basis:calc(25% - (.75 * var(--gap)))}.column-lg--4{flex-basis:calc(33.3333333333% - (.6666666667 * var(--gap)))}.column-lg--5{flex-basis:calc(41.6666666667% - (.5833333333 * var(--gap)))}.column-lg--6{flex-basis:calc(50% - (.5 * var(--gap)))}.column-lg--7{flex-basis:calc(58.3333333333% - (.4166666667 * var(--gap)))}.column-lg--8{flex-basis:calc(66.6666666667% - (.3333333333 * var(--gap)))}.column-lg--9{flex-basis:calc(75% - (.25 * var(--gap)))}.column-lg--10{flex-basis:calc(83.3333333333% - (.1666666667 * var(--gap)))}.column-lg--11{flex-basis:calc(91.6666666667% - (.0833333333 * var(--gap)))}.column-lg--12{flex-basis:calc(100% - (0 * var(--gap)))}.column-lg--pull-right{margin-left:auto}}@media (min-width: 1800px){.column-xl{flex-grow:0;flex-shrink:0;width:100%}.column-xl--1{flex-basis:calc(8.3333333333% - (.9166666667 * var(--gap)))}.column-xl--2{flex-basis:calc(16.6666666667% - (.8333333333 * var(--gap)))}.column-xl--3{flex-basis:calc(25% - (.75 * var(--gap)))}.column-xl--4{flex-basis:calc(33.3333333333% - (.6666666667 * var(--gap)))}.column-xl--5{flex-basis:calc(41.6666666667% - (.5833333333 * var(--gap)))}.column-xl--6{flex-basis:calc(50% - (.5 * var(--gap)))}.column-xl--7{flex-basis:calc(58.3333333333% - (.4166666667 * var(--gap)))}.column-xl--8{flex-basis:calc(66.6666666667% - (.3333333333 * var(--gap)))}.column-xl--9{flex-basis:calc(75% - (.25 * var(--gap)))}.column-xl--10{flex-basis:calc(83.3333333333% - (.1666666667 * var(--gap)))}.column-xl--11{flex-basis:calc(91.6666666667% - (.0833333333 * var(--gap)))}.column-xl--12{flex-basis:calc(100% - (0 * var(--gap)))}.column-xl--pull-right{margin-left:auto}}img{max-width:100%;height:auto}.heading{display:block;margin:0 0 var(--padding) 0;font-size:1.375rem;font-weight:700}p{margin:0 0 var(--padding) 0}p:last-child{margin-bottom:0}a,.link{text-decoration:none;cursor:pointer}a:hover,.link:hover{color:var(--color-accent)}.autocomplete{position:absolute;left:0;right:0;margin-top:-1px;box-shadow:0 2px 5px #0000001a;border:var(--container-border);padding:var(--padding);background:var(--container-background);z-index:1}.autocomplete__title{display:block;margin:0 0 var(--padding) 0;font-size:1.1rem;font-weight:700}.autocomplete__list:not(:last-child){margin-bottom:var(--margin)}.autocomplete__product{height:100%;text-align:center}.autocomplete__product__image{display:flex;justify-content:center;align-items:center;padding:0 var(--padding) var(--padding) var(--padding);height:150px}.autocomplete__product__image a{display:block}.autocomplete__product__image img{margin:0;max-height:100%}.autocomplete__product__title{display:block;margin:0 0 var(--padding-sm) 0;font-weight:700}.autocomplete__product__title:last-child{margin-bottom:0}.autocomplete__product__price{display:block;margin:0 0 var(--padding-sm) 0}.autocomplete__product__price__original{text-decoration:line-through}.autocomplete__product__price:last-child{margin-bottom:0}.autocomplete__view-all{text-align:center}.button{display:inline-block;outline:none;height:45px;border-radius:var(--button-border-radius);border:none;padding:var(--padding-sm) var(--padding);background:var(--button-background);font-weight:700;color:var(--button-font-color);text-align:center;cursor:pointer}.button:hover{outline:solid 2px var(--button-background)}.button--full-width{display:block;width:100%}hawksearch-featured-items-content-item{display:block;height:100%}.custom-content{margin:0 0 var(--margin) 0}.featured-items-content__item{position:relative}.featured-items-content__item__sale-indicator{position:absolute;top:0;left:0;padding:5px;background:var(--container-background--alternate)}.featured-items-content__item__pin{position:absolute;top:var(--padding-xs);right:var(--padding-xs);font-size:1.2rem}.featured-items-content__item__image{display:flex;justify-content:center;align-items:center;padding:0 var(--padding) var(--padding) var(--padding);height:200px}.featured-items-content__item__image img{margin:0;max-height:100%}.featured-items-content__item__title{display:block;margin:0 0 var(--padding-sm) 0;font-size:1.125rem;font-weight:700}.featured-items-content__item__title:last-child{margin-bottom:0}.featured-items-content__item__price{display:block;margin:0 0 var(--padding-sm) 0}.featured-items-content__item__price__original{text-decoration:line-through}.featured-items-content__item__price:last-child{margin-bottom:0}.featured-items-content__item--content{border-bottom:var(--container-border);padding:0 0 var(--padding) 0}.featured-items-content__item--product{position:relative;height:100%;padding:var(--padding);border:var(--container-border);background:var(--container-background);text-align:center}.featured-items-content__item--product:hover{border-color:var(--color-accent)}.image-content{margin:0 0 var(--margin) 0}.image-content__image{display:block;margin:0 auto}.popular-queries-content{margin:0 0 var(--margin) 0;text-align:center;line-height:1}.popular-queries-content__item{display:inline-block;margin:0 5px;vertical-align:middle}.popular-queries-content__item--1{font-size:100%}.popular-queries-content__item--2{font-size:150%}.popular-queries-content__item--3{font-size:200%}.popular-queries-content__item--4{font-size:250%}.popular-queries-content__item--5{font-size:300%}.content-zone{margin:0 0 var(--margin) 0}.date-picker{position:relative}.date-picker__modal{position:absolute;width:310px;border:var(--container-border);padding:var(--padding-sm);background:var(--container-background);z-index:10}.date-picker__modal__header{display:flex;align-items:center;gap:var(--padding-sm);margin:0 0 var(--padding-sm) 0;padding:var(--padding-sm);background:var(--container-background--alternate);font-weight:700;text-align:center}.date-picker__modal__header__previous,.date-picker__modal__header__next{display:inline-flex;font-size:1.5rem;flex-grow:0}.date-picker__modal__header__month{flex-grow:1}.date-picker__calendar{width:100%}.date-picker__calendar thead th{width:14.286%;padding:var(--padding-xs);background:var(--container-background);font-weight:700;text-align:center}.date-picker__calendar tbody td{border:var(--container-border);padding:var(--padding-xs);text-align:center}.date-picker__calendar tbody td:hover{color:var(--color-accent)}.date-picker__calendar__day{background:var(--container-background);cursor:pointer}.date-picker__calendar__day--alternate{background:var(--color-secondary-light)}.date-picker__calendar__day--selected{background:var(--color-accent);color:var(--default-font-color--inverse)!important}.date-picker__calendar__day--disabled{cursor:no-drop;opacity:.5}hawksearch-facets-list{display:block;margin:0 0 var(--margin-sm) 0}hawksearch-facets-list:last-child{margin-bottom:0}.facets{border:var(--container-border);background:var(--container-background)}.facets__heading{display:flex;align-items:center;padding:var(--padding-sm) var(--padding);font-size:1.2rem;font-weight:700;background:var(--container-background--alternate);cursor:pointer}.facets__heading__mobile-toggle{margin-left:auto}.facets__heading:hover{color:var(--color-accent)}.facets__content{display:none}.facets--expanded .facets__content{display:block}@media (min-width: 990px){.facets__heading{cursor:default}.facets__heading__mobile-toggle{display:none}.facets__heading:hover{color:var(--default-font-color)}.facets__content{display:block}}.facet__heading{display:flex;align-items:center;padding:var(--padding-sm) var(--padding);font-size:1.125rem;cursor:default}.facet__heading__tooltip{font-size:1.2em;margin-left:5px}.facet__heading__toggle{margin-left:auto}.facet__heading--collapsible{cursor:pointer}.facet__heading--collapsible:hover{--icon-color: var(--color-accent);color:var(--color-accent)}.facet__search{margin:0 0 var(--padding) 0}.facet__content{padding:0 var(--padding) var(--padding) var(--padding)}.facet__value{display:flex;align-items:center;flex-wrap:wrap}.facet__value__image{margin-right:5px}.facet__value__count{color:var(--secondary-font-color)}.checkbox-list-facet{overflow-y:auto}.checkbox-list-facet__list{margin:0 0 var(--padding-xs) 0}.checkbox-list-facet__list__item{display:flex;margin:0 0 var(--padding-xs) 0}.checkbox-list-facet__list__item__content{flex-grow:1}.checkbox-list-facet__list__item__actions{position:relative;top:-2px;flex-grow:0;margin-left:auto;white-space:nowrap;line-height:1}.checkbox-list-facet__list__item__actions__item{font-size:1.3em;cursor:pointer}.checkbox-list-facet__list__item__actions__item:hover{color:var(--color-accent)}.checkbox-list-facet__list__item--excluded>.checkbox-list-facet__item__content>label .facet__value__title{text-decoration:line-through}.checkbox-list-facet__list__item:last-child{margin-bottom:0}.checkbox-list-facet__list__item .checkbox-list-facet__list{margin-left:calc(16px + var(--padding-sm))}.checkbox-list-facet__list:last-child{margin-bottom:0}.color-facet__items{margin-bottom:var(--padding-xs)}.color-facet__item{position:relative;border:var(--container-border);cursor:pointer}.color-facet__item__box{padding:0 0 100%}.color-facet__item__image{display:block;width:100%;height:100%}.color-facet__item__actions{display:none}.color-facet__item--selected,.color-facet__item:hover{outline:solid 1px var(--color-accent);border-color:var(--color-accent)}.color-facet__item:hover .color-facet__item__actions{display:block;position:absolute;top:0;right:0;border:var(--container-border);background:var(--container-background);font-size:1rem;line-height:1}.color-facet__item:hover .color-facet__item__actions:hover{color:var(--color-accent)}.link-list-facet{overflow-y:auto}.link-list-facet__list__item,.recent-searches-facet__list__item,.related-searches-facet__list__item,.size-facet__items{margin-bottom:var(--padding-xs)}.size-facet__item{position:relative;border:var(--container-border)}.size-facet__item__outer{position:relative;padding:0 0 100%;cursor:pointer}.size-facet__item__inner{display:flex;align-items:center;justify-content:center;position:absolute;top:0;right:0;bottom:0;left:0;padding:var(--padding-xs);background:var(--container-background--alternate);font-size:.6875rem}.size-facet__item__actions{display:none}.size-facet__item--selected{outline:solid 1px var(--color-accent);border-color:var(--color-accent)}.size-facet__item:hover{border-color:var(--color-accent)}.size-facet__item:hover .size-facet__item__actions{display:block;position:absolute;top:0;right:0;border:var(--container-border);background:var(--container-background);font-size:1rem;line-height:1;cursor:pointer}.size-facet__item:hover .size-facet__item__actions:hover{color:var(--color-accent)}hawksearch-icon{display:inline-flex;align-items:center;font-size:var(--icon-font-size, 1em);color:var(--icon-color, currentColor)}.icon{display:inline-flex;align-items:center;margin:0 .5em 0 0;max-width:none;fill:currentColor;vertical-align:middle}.icon:last-child{margin:0}.modified-query{margin:0 0 var(--margin) 0}.modified-query__modified{font-style:italic}.modified-query__original{font-weight:700}.pagination{display:flex;align-items:center;gap:var(--padding);line-height:1}.pagination__pages{display:flex;align-items:center;gap:var(--padding-xs)}.pagination__page--selected{font-weight:700;color:var(--color-accent)}.query-suggestions{margin:0 0 var(--margin) 0}.query-suggestions a{font-style:italic}.range-slider{padding:0 12px}.range-slider__container{position:relative;padding:8px 0}.range-slider__bar{position:relative;border:var(--container-border);height:8px;background:var(--container-background)}.range-slider__bar__active{position:absolute;left:0;right:0;height:100%;background:var(--color-accent)}.range-slider__handle{display:block;position:absolute;top:0;outline:solid 1px var(--color-accent);margin-left:-12px;border:solid 3px var(--color-background);border-radius:100%;width:24px;height:24px;padding:4px;background:var(--color-accent);cursor:pointer;touch-action:none}.range-slider__handle--start{left:0}.range-slider__handle--end{left:100%}.range-slider__handle:hover{outline-width:2px}hawksearch-rating{display:inline-flex;align-items:center;margin:0 0 var(--padding-sm) 0;font-size:var(--icon-font-size, 1em);color:var(--icon-color, currentColor)}hawksearch-rating:last-child{margin:0}.rating{display:inline-flex;align-items:center;margin:0 0 var(--padding-sm) 0;max-width:none;fill:currentColor;vertical-align:middle;font-size:1.2em;color:var(--color-accent)}.rating:last-child{margin:0}hawksearch-recommendations-item{display:block;height:100%}.recommendations{margin:0 0 var(--margin) 0}.recommendations__content{display:flex}.recommendations__button{flex-shrink:0;align-self:center;font-size:2.5em}.recommendations__carousel{position:relative;flex-grow:1;overflow:hidden}.recommendations__carousel__item{flex-grow:0;flex-shrink:0;margin-bottom:var(--padding);padding:0 calc(.5 * var(--padding))}.recommendations__list{position:relative;display:flex;flex-wrap:wrap;margin:0 calc(-.5 * var(--padding)) calc(-1 * var(--padding)) calc(-.5 * var(--padding));transition:left .5s}.recommendations__list--carousel{flex-wrap:nowrap;margin:0}.recommendations__item{position:relative;height:100%;padding:var(--padding);border:var(--container-border);background:var(--container-background);text-align:center}.recommendations__item__sale-indicator{position:absolute;top:0;left:0;padding:5px;background:var(--container-background--alternate)}.recommendations__item__pin{position:absolute;top:var(--padding-xs);right:var(--padding-xs);font-size:1.2rem}.recommendations__item__image{display:flex;justify-content:center;align-items:center;padding:0 var(--padding) var(--padding) var(--padding);height:200px}.recommendations__item__image img{margin:0;max-height:100%}.recommendations__item__title{display:block;margin:0 0 var(--padding-sm) 0;font-size:1.125rem;font-weight:700}.recommendations__item__title:last-child{margin-bottom:0}.recommendations__item__price{display:block;margin:0 0 var(--padding-sm) 0}.recommendations__item__price__original{text-decoration:line-through}.recommendations__item__price:last-child{margin-bottom:0}.recommendations__item:hover{border-color:var(--color-accent)}.recommendations__pagination{display:flex;justify-content:center;gap:var(--padding-xs)}.recommendations__pagination__item{display:block;width:10px;height:10px;border-radius:100%;background:var(--color-secondary);cursor:pointer}.recommendations__pagination__item--selected{background:var(--color-secondary-dark)}.recommendations__pagination__item:hover{background:var(--color-accent)}.recommendations:last-child{margin-bottom:0}.search-field{position:relative}hawksearch-search-results-list{display:block;margin:0 0 var(--margin) 0}hawksearch-search-results-list:last-child{margin:0}hawksearch-search-results-item{display:block;height:100%}.search-results-list{margin:0 0 var(--margin) 0}.search-results-list__item{position:relative}.search-results-list__item__sale-indicator{position:absolute;top:0;left:0;padding:5px;background:var(--container-background--alternate)}.search-results-list__item__pin{position:absolute;top:var(--padding-xs);right:var(--padding-xs);font-size:1.2rem}.search-results-list__item__image{display:flex;justify-content:center;align-items:center;padding:0 var(--padding) var(--padding) var(--padding);height:200px}.search-results-list__item__image img{margin:0;max-height:100%}.search-results-list__item__title{display:block;margin:0 0 var(--padding-sm) 0;font-size:1.125rem;font-weight:700}.search-results-list__item__title:last-child{margin-bottom:0}.search-results-list__item__price{display:block;margin:0 0 var(--padding-sm) 0}.search-results-list__item__price__original{text-decoration:line-through}.search-results-list__item__price:last-child{margin-bottom:0}.search-results-list__item--content{border-bottom:var(--container-border);padding:0 0 var(--padding) 0}.search-results-list__item--product{position:relative;height:100%;padding:var(--padding);border:var(--container-border);background:var(--container-background);text-align:center}.search-results-list__item--product:hover{border-color:var(--color-accent)}.search-results-list:last-child{margin:0}.selected-facets{margin:0 0 var(--padding) 0}.selected-facets__item{display:flex;align-items:center;gap:var(--padding-xs);padding:var(--padding-xs);background:var(--container-background--alternate);white-space:nowrap}.selected-facets__item__field{font-weight:700}.selected-facets__item__field:after{content:":"}.selected-facets__item__value--excluded{text-decoration:line-through}.selected-facets__item__remove{margin-top:2px;line-height:1}.tabs{display:flex;flex-direction:column;flex-wrap:wrap;gap:var(--padding-xs);margin:0 0 var(--padding) 0}.tabs__item{display:block;margin:0 0 -1px;border:var(--container-border);padding:var(--padding-sm) var(--padding);background:var(--container-background--alternate);white-space:nowrap;cursor:pointer}.tabs__item--selected{background:var(--container-background)}.tabs__item:hover{color:var(--color-accent)}@media (min-width: 740px){.tabs{flex-direction:row}}@media (min-width: 990px){.tabs:not(.tabs--list){border-bottom:var(--container-border);border-bottom-color:var(--container-background--alternate);padding:0 var(--padding)}.tabs:not(.tabs--list) .tabs__item--selected{border-bottom-color:var(--container-background)}}.tooltip{display:inline-flex;cursor:pointer}.tooltip__content{display:none}.tooltip:hover .tooltip__content{display:block;position:fixed;margin:calc(-.5 * var(--padding) - 1px) 0 0 2rem;box-shadow:0 0 5px #0000001a;max-width:350px;border:var(--container-border);padding:calc(var(--padding) / 2);background:var(--container-background);z-index:1}.variant-selector-list{display:flex;gap:var(--padding-xs);flex-wrap:wrap;margin:0 0 var(--padding-sm) 0}.variant-selector-list:last-child{margin-bottom:0}.variant-selector-list__item{width:25px;height:25px;border:var(--container-border);cursor:pointer}.variant-selector-list__item__box{height:100%}.variant-selector-list__item__image{display:block;width:100%;height:100%}.variant-selector-list__item--selected,.variant-selector-list__item:hover{outline:solid 1px var(--color-accent);border-color:var(--color-accent)}.visualsearch-field{position:relative}.visualsearch-field__drop-area{display:flex;padding:var(--padding-sm) 0;flex-direction:column;align-items:center;align-self:stretch;border:var(--container-border);background:var(--container-background);margin-bottom:var(--padding-sm)}.visualsearch-field__drop-area input[type=file]{display:none}.visualsearch-field__drop-area.error-state{border-style:dashed;border-color:var(--color-accent);background-color:var(--color-accent-light)}.visualsearch-field__drop-area.error-state .visualsearch-field__drop-area__dragging-state{display:none}.visualsearch-field__drop-area.dragging-state{border-style:dashed;border-color:var(--color-accent);background-color:var(--container-background--alternate)}.visualsearch-field__drop-area.dragging-state .visualsearch-field__drop-area__normal-state{visibility:hidden}.visualsearch-field__drop-area.dragging-state .visualsearch-field__drop-area__dragging-state,.visualsearch-field__drop-area.dragging-state .visualsearch-field__drop-area__drop-msg{display:block}.visualsearch-field__drop-area.dragging-state .visualsearch-field__drop-area__prompt-msg{display:none}.visualsearch-field__drop-area.dragging-state .visualsearch-field__drop-area__image-display{opacity:.1}.visualsearch-field__drop-area__prompt-msg{display:block;margin:0}.visualsearch-field__drop-area__prompt-msg .visualsearch-field__drop-area__upload-button{color:var(--color-accent);cursor:pointer}.visualsearch-field__drop-area__drop-msg{display:none;pointer-events:none;color:var(--color-accent)!important;margin:0}.visualsearch-field__drop-area__image-display{pointer-events:none;text-align:center;width:220px;height:auto}.visualsearch-field__drop-area__image-display img{display:block;width:auto;height:auto;max-width:100%;max-height:100%}.display-block{display:block!important}.display-none{display:none!important}@media (min-width: 740px){.display-sm-block{display:block!important}.display-sm-none{display:none!important}}@media (min-width: 990px){.display-md-block{display:block!important}.display-md-none{display:none!important}}@media (min-width: 1260px){.display-lg-block{display:block!important}.display-lg-none{display:none!important}}@media (min-width: 1800px){.display-xl-block{display:block!important}.display-xl-none{display:none!important}}.flex-align-self-center{align-self:center}@media (min-width: 740px){.flex-align-self-sm-center{align-self:center}}@media (min-width: 990px){.flex-align-self-md-center{align-self:center}}@media (min-width: 1260px){.flex-align-self-lg-center{align-self:center}}@media (min-width: 1800px){.flex-align-self-xl-center{align-self:center}}.flex-vertical-center{display:flex;flex-direction:column;justify-content:center}@media (min-width: 740px){.flex-vertical-sm-center{display:flex;flex-direction:column;justify-content:center}}@media (min-width: 990px){.flex-vertical-md-center{display:flex;flex-direction:column;justify-content:center}}@media (min-width: 1260px){.flex-vertical-lg-center{display:flex;flex-direction:column;justify-content:center}}@media (min-width: 1800px){.flex-vertical-xl-center{display:flex;flex-direction:column;justify-content:center}}.flex-gap{display:flex;flex-wrap:wrap;gap:var(--padding)}.flex-gap--none{gap:0}.flex-gap--sm{gap:var(--padding-sm)}.flex-gap--xs{gap:var(--padding-xs)}@media (min-width: 740px){.flex-gap-sm{display:flex;flex-wrap:wrap;gap:var(--padding)}.flex-gap-sm--none{gap:0}.flex-gap-sm--sm{gap:var(--padding-sm)}.flex-gap-sm--xs{gap:var(--padding-xs)}}@media (min-width: 990px){.flex-gap-md{display:flex;flex-wrap:wrap;gap:var(--padding)}.flex-gap-md--none{gap:0}.flex-gap-md--sm{gap:var(--padding-sm)}.flex-gap-md--xs{gap:var(--padding-xs)}}@media (min-width: 1260px){.flex-gap-lg{display:flex;flex-wrap:wrap;gap:var(--padding)}.flex-gap-lg--none{gap:0}.flex-gap-lg--sm{gap:var(--padding-sm)}.flex-gap-lg--xs{gap:var(--padding-xs)}}@media (min-width: 1800px){.flex-gap-xl{display:flex;flex-wrap:wrap;gap:var(--padding)}.flex-gap-xl--none{gap:0}.flex-gap-xl--sm{gap:var(--padding-sm)}.flex-gap-xl--xs{gap:var(--padding-xs)}}.margin{margin-bottom:var(--margin)!important}.margin-small{margin-bottom:var(--margin-sm)!important}.margin-none{margin-bottom:0!important}@media (min-width: 740px){.margin-sm{margin-bottom:var(--margin)!important}.margin-sm-small{margin-bottom:var(--margin-sm)!important}.margin-sm-none{margin-bottom:0!important}}@media (min-width: 990px){.margin-md{margin-bottom:var(--margin)!important}.margin-md-small{margin-bottom:var(--margin-sm)!important}.margin-md-none{margin-bottom:0!important}}@media (min-width: 1260px){.margin-lg{margin-bottom:var(--margin)!important}.margin-lg-small{margin-bottom:var(--margin-sm)!important}.margin-lg-none{margin-bottom:0!important}}@media (min-width: 1800px){.margin-xl{margin-bottom:var(--margin)!important}.margin-xl-small{margin-bottom:var(--margin-sm)!important}.margin-xl-none{margin-bottom:0!important}}.width-auto{width:auto}.width-full{width:100%}@media (min-width: 740px){.width-sm-auto{width:auto}.width-sm-full{width:100%}}@media (min-width: 990px){.width-md-auto{width:auto}.width-md-full{width:100%}}@media (min-width: 1260px){.width-lg-auto{width:auto}.width-lg-full{width:100%}}@media (min-width: 1800px){.width-xl-auto{width:auto}.width-xl-full{width:100%}}.text-align-left{text-align:left}.text-align-center{text-align:center}.text-align-right{text-align:right}@media (min-width: 740px){.text-align-sm-left{text-align:left}.text-align-sm-center{text-align:center}.text-align-sm-right{text-align:right}}@media (min-width: 990px){.text-align-md-left{text-align:left}.text-align-md-center{text-align:center}.text-align-md-right{text-align:right}}@media (min-width: 1260px){.text-align-lg-left{text-align:left}.text-align-lg-center{text-align:center}.text-align-lg-right{text-align:right}}@media (min-width: 1800px){.text-align-xl-left{text-align:left}.text-align-xl-center{text-align:center}.text-align-xl-right{text-align:right}}:host,:root{--color-accent: var(--hawksearch-color-accent, #119ff7);--color-secondary: var(--hawksearch-color-secondary, #ccc);--color-secondary-light: var(--hawksearch-color-secondary-light, #f1f1f1);--color-secondary-dark: var(--hawksearch-color-secondary-dark, #757575);--color-background: var(--hawksearch-color-background, #fff);--container-background: var(--hawksearch-container-background, var(--color-background));--container-background--alternate: var(--hawksearch-container-background--alternate, var(--color-secondary-light));--container-border: var(--hawksearch-container-border, solid 1px var(--color-secondary));--default-line-height: var(--hawksearch-default-line-height, 1.25);--default-font-color: var(--hawksearch-default-font-color, #2e2e2e);--default-font-color--inverse: var(--hawksearch-default-font-color--inverse, #fff);--default-font-family: var(--hawksearch-default-font-family, Arial, sans-serif);--default-font-size: var(--hawksearch-default-font-size, 16px);--button-background: var(--hawksearch-button-background, var(--color-accent));--button-border-radius: var(--hawksearch-button-border-radius, 5px);--button-font-color: var(--hawksearch-button-font-color, #fff);--form-element-background: var(--hawksearch-form-element-background, var(--color-background));--form-element-border: var(--hawksearch-form-element-border, solid 1px var(--color-secondary));--form-element-border--focus: var(--hawksearch-form-element-border--focus, solid 1px var(--color-accent));--form-element-border-radius: var(--hawksearch-form-element-border-radius, 0);--form-element-placeholder-color: var(--hawksearch-form-element-placeholder-color, var(--color-secondary-dark));--margin: var(--hawksearch-margin, 32px);--margin-sm: var(--hawksearch-margin-sm, calc(var(--margin) / 2));--padding: var(--hawksearch-padding, 24px);--padding-xs: var(--hawksearch-padding-xs, calc(var(--padding) / 4));--padding-sm: var(--hawksearch-padding-sm, calc(var(--padding) / 2));--secondary-font-color: var(--hawksearch-secondary-font-color, var(--color-secondary-dark));font-family:var(--default-font-family);font-size:var(--default-font-size);color:var(--default-font-color);line-height:var(--default-line-height)}\n';
5754
+ const defaultStylesheet = 'html,body,div,span,applet,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,abbr,acronym,address,big,cite,code,del,dfn,em,img,ins,kbd,q,s,samp,small,strike,strong,sub,sup,tt,var,b,u,i,center,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,embed,figure,figcaption,footer,header,hgroup,menu,nav,output,ruby,section,summary,time,mark,audio,video{box-shadow:none;margin:0;padding:0;border:0;font-size:100%;font-weight:400;font:inherit;vertical-align:baseline;color:inherit;text-transform:none;text-shadow:none;background:transparent}article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section{display:block}body{line-height:1}ol,ul{list-style:none;width:auto}ol li,ul li{list-style:none}blockquote,q{quotes:none}blockquote:before,blockquote:after,q:before,q:after{content:"";content:none}table{border-collapse:collapse;border-spacing:0}img{display:inline-block}.clearfix:after{content:"";display:table;clear:both}*,*:before,*:after{box-sizing:border-box!important;transition:none}b,strong{font-weight:700}i,em{font-style:italic}u{text-decoration:underline}sup{vertical-align:super;font-size:75%}sub{vertical-align:sub;font-size:75%}a{cursor:pointer}.label{display:block;margin:0 0 5px;text-align:left}input[type=text],input[type=number],input[type=search],textarea,select{display:block;outline:none;width:100%;height:45px;border:var(--form-element-border);border-radius:var(--form-element-border-radius);padding:var(--padding-sm);background:var(--form-element-background);font-family:var(--default-font-family);font-size:16px;line-height:1;color:var(--default-font-color)}input[type=text]:hover,input[type=text]:focus,input[type=number]:hover,input[type=number]:focus,input[type=search]:hover,input[type=search]:focus,textarea:hover,textarea:focus,select:hover,select:focus{border:var(--form-element-border--focus)}select{padding-right:var(--padding)}::placeholder{color:var(--form-element-placeholder-color)}input[type=checkbox]{display:none}input[type=checkbox]+label{position:relative;display:block;margin:0 0 5px;padding-left:calc(16px + var(--padding-sm));cursor:pointer}input[type=checkbox]+label:before{content:"";position:absolute;top:1px;left:0;width:16px;height:16px;border:var(--form-element-border);background:var(--form-element-background)}input[type=checkbox]:checked+label:before{background:var(--color-accent)}.row,.smartresponse__info__summary ul{--gap: var(--padding);display:flex;flex-direction:row;flex-wrap:wrap;gap:var(--gap);margin:0 0 var(--margin) 0}.row:last-child,.smartresponse__info__summary ul:last-child{margin-bottom:0}.row--reverse{flex-direction:row-reverse}.row--tight{--gap: var(--padding-xs)}@media (min-width: 740px){.row-sm{--gap: var(--padding);display:flex;flex-direction:row;flex-wrap:wrap;gap:var(--gap);margin:0 0 var(--margin) 0}.row-sm:last-child{margin-bottom:0}.row-sm--reverse{flex-direction:row-reverse}.row-sm--tight{--gap: var(--padding-xs)}}@media (min-width: 990px){.row-md{--gap: var(--padding);display:flex;flex-direction:row;flex-wrap:wrap;gap:var(--gap);margin:0 0 var(--margin) 0}.row-md:last-child{margin-bottom:0}.row-md--reverse{flex-direction:row-reverse}.row-md--tight{--gap: var(--padding-xs)}}@media (min-width: 1260px){.row-lg{--gap: var(--padding);display:flex;flex-direction:row;flex-wrap:wrap;gap:var(--gap);margin:0 0 var(--margin) 0}.row-lg:last-child{margin-bottom:0}.row-lg--reverse{flex-direction:row-reverse}.row-lg--tight{--gap: var(--padding-xs)}}@media (min-width: 1800px){.row-xl{--gap: var(--padding);display:flex;flex-direction:row;flex-wrap:wrap;gap:var(--gap);margin:0 0 var(--margin) 0}.row-xl:last-child{margin-bottom:0}.row-xl--reverse{flex-direction:row-reverse}.row-xl--tight{--gap: var(--padding-xs)}}.column,.smartresponse__info__summary li{flex-grow:0;flex-shrink:0;width:100%}.column--1{flex-basis:calc(8.3333333333% - (.9166666667 * var(--gap)))}.column--2{flex-basis:calc(16.6666666667% - (.8333333333 * var(--gap)))}.column--3{flex-basis:calc(25% - (.75 * var(--gap)))}.column--4{flex-basis:calc(33.3333333333% - (.6666666667 * var(--gap)))}.column--5{flex-basis:calc(41.6666666667% - (.5833333333 * var(--gap)))}.column--6{flex-basis:calc(50% - (.5 * var(--gap)))}.column--7{flex-basis:calc(58.3333333333% - (.4166666667 * var(--gap)))}.column--8{flex-basis:calc(66.6666666667% - (.3333333333 * var(--gap)))}.column--9{flex-basis:calc(75% - (.25 * var(--gap)))}.column--10{flex-basis:calc(83.3333333333% - (.1666666667 * var(--gap)))}.column--11{flex-basis:calc(91.6666666667% - (.0833333333 * var(--gap)))}.column--12,.smartresponse__info__summary li{flex-basis:calc(100% - (0 * var(--gap)))}.column--pull-right{margin-left:auto}@media (min-width: 740px){.column-sm{flex-grow:0;flex-shrink:0;width:100%}.column-sm--1{flex-basis:calc(8.3333333333% - (.9166666667 * var(--gap)))}.column-sm--2{flex-basis:calc(16.6666666667% - (.8333333333 * var(--gap)))}.column-sm--3{flex-basis:calc(25% - (.75 * var(--gap)))}.column-sm--4{flex-basis:calc(33.3333333333% - (.6666666667 * var(--gap)))}.column-sm--5{flex-basis:calc(41.6666666667% - (.5833333333 * var(--gap)))}.column-sm--6,.smartresponse__info__summary li{flex-basis:calc(50% - (.5 * var(--gap)))}.column-sm--7{flex-basis:calc(58.3333333333% - (.4166666667 * var(--gap)))}.column-sm--8{flex-basis:calc(66.6666666667% - (.3333333333 * var(--gap)))}.column-sm--9{flex-basis:calc(75% - (.25 * var(--gap)))}.column-sm--10{flex-basis:calc(83.3333333333% - (.1666666667 * var(--gap)))}.column-sm--11{flex-basis:calc(91.6666666667% - (.0833333333 * var(--gap)))}.column-sm--12{flex-basis:calc(100% - (0 * var(--gap)))}.column-sm--pull-right{margin-left:auto}}@media (min-width: 990px){.column-md{flex-grow:0;flex-shrink:0;width:100%}.column-md--1{flex-basis:calc(8.3333333333% - (.9166666667 * var(--gap)))}.column-md--2{flex-basis:calc(16.6666666667% - (.8333333333 * var(--gap)))}.column-md--3{flex-basis:calc(25% - (.75 * var(--gap)))}.column-md--4{flex-basis:calc(33.3333333333% - (.6666666667 * var(--gap)))}.column-md--5{flex-basis:calc(41.6666666667% - (.5833333333 * var(--gap)))}.column-md--6{flex-basis:calc(50% - (.5 * var(--gap)))}.column-md--7{flex-basis:calc(58.3333333333% - (.4166666667 * var(--gap)))}.column-md--8{flex-basis:calc(66.6666666667% - (.3333333333 * var(--gap)))}.column-md--9{flex-basis:calc(75% - (.25 * var(--gap)))}.column-md--10{flex-basis:calc(83.3333333333% - (.1666666667 * var(--gap)))}.column-md--11{flex-basis:calc(91.6666666667% - (.0833333333 * var(--gap)))}.column-md--12{flex-basis:calc(100% - (0 * var(--gap)))}.column-md--pull-right{margin-left:auto}}@media (min-width: 1260px){.column-lg{flex-grow:0;flex-shrink:0;width:100%}.column-lg--1{flex-basis:calc(8.3333333333% - (.9166666667 * var(--gap)))}.column-lg--2{flex-basis:calc(16.6666666667% - (.8333333333 * var(--gap)))}.column-lg--3{flex-basis:calc(25% - (.75 * var(--gap)))}.column-lg--4,.smartresponse__info__summary li{flex-basis:calc(33.3333333333% - (.6666666667 * var(--gap)))}.column-lg--5{flex-basis:calc(41.6666666667% - (.5833333333 * var(--gap)))}.column-lg--6{flex-basis:calc(50% - (.5 * var(--gap)))}.column-lg--7{flex-basis:calc(58.3333333333% - (.4166666667 * var(--gap)))}.column-lg--8{flex-basis:calc(66.6666666667% - (.3333333333 * var(--gap)))}.column-lg--9{flex-basis:calc(75% - (.25 * var(--gap)))}.column-lg--10{flex-basis:calc(83.3333333333% - (.1666666667 * var(--gap)))}.column-lg--11{flex-basis:calc(91.6666666667% - (.0833333333 * var(--gap)))}.column-lg--12{flex-basis:calc(100% - (0 * var(--gap)))}.column-lg--pull-right{margin-left:auto}}@media (min-width: 1800px){.column-xl{flex-grow:0;flex-shrink:0;width:100%}.column-xl--1{flex-basis:calc(8.3333333333% - (.9166666667 * var(--gap)))}.column-xl--2{flex-basis:calc(16.6666666667% - (.8333333333 * var(--gap)))}.column-xl--3{flex-basis:calc(25% - (.75 * var(--gap)))}.column-xl--4{flex-basis:calc(33.3333333333% - (.6666666667 * var(--gap)))}.column-xl--5{flex-basis:calc(41.6666666667% - (.5833333333 * var(--gap)))}.column-xl--6{flex-basis:calc(50% - (.5 * var(--gap)))}.column-xl--7{flex-basis:calc(58.3333333333% - (.4166666667 * var(--gap)))}.column-xl--8{flex-basis:calc(66.6666666667% - (.3333333333 * var(--gap)))}.column-xl--9{flex-basis:calc(75% - (.25 * var(--gap)))}.column-xl--10{flex-basis:calc(83.3333333333% - (.1666666667 * var(--gap)))}.column-xl--11{flex-basis:calc(91.6666666667% - (.0833333333 * var(--gap)))}.column-xl--12{flex-basis:calc(100% - (0 * var(--gap)))}.column-xl--pull-right{margin-left:auto}}img{max-width:100%;height:auto}.spinner{width:var(--default-font-size);height:var(--default-font-size);border:2px solid var(--container-background--alternate);border-top-color:var(--color-accent);border-radius:50%;animation:spin .5s infinite linear}@keyframes spin{to{transform:rotate(360deg)}}.heading{display:block;margin:0 0 var(--padding) 0;font-size:1.375rem;font-weight:700}p{margin:0 0 var(--padding) 0}p:last-child{margin-bottom:0}a,.link{text-decoration:none;cursor:pointer}a:hover,.link:hover{color:var(--color-accent)}.autocomplete{position:absolute;left:0;right:0;margin-top:-1px;box-shadow:0 2px 5px #0000001a;border:var(--container-border);padding:var(--padding);background:var(--container-background);z-index:1}.autocomplete__title{display:block;margin:0 0 var(--padding) 0;font-size:1.1rem;font-weight:700}.autocomplete__list:not(:last-child){margin-bottom:var(--margin)}.autocomplete__product{height:100%;text-align:center}.autocomplete__product__image{display:flex;justify-content:center;align-items:center;padding:0 var(--padding) var(--padding) var(--padding);height:150px}.autocomplete__product__image a{display:block}.autocomplete__product__image img{margin:0;max-height:100%}.autocomplete__product__title{display:block;margin:0 0 var(--padding-sm) 0;font-weight:700}.autocomplete__product__title:last-child{margin-bottom:0}.autocomplete__product__price{display:block;margin:0 0 var(--padding-sm) 0}.autocomplete__product__price__original{text-decoration:line-through}.autocomplete__product__price:last-child{margin-bottom:0}.autocomplete__view-all{text-align:center}.button{display:inline-block;outline:none;height:45px;border-radius:var(--button-border-radius);border:none;padding:var(--padding-sm) var(--padding);background:var(--button-background);font-weight:700;color:var(--button-font-color);text-align:center;cursor:pointer}.button:hover{outline:solid 2px var(--button-background)}.button--full-width{display:block;width:100%}hawksearch-featured-items-content-item{display:block;height:100%}.custom-content{margin:0 0 var(--margin) 0}.featured-items-content__item{position:relative}.featured-items-content__item__sale-indicator{position:absolute;top:0;left:0;padding:5px;background:var(--container-background--alternate)}.featured-items-content__item__pin{position:absolute;top:var(--padding-xs);right:var(--padding-xs);font-size:1.2rem}.featured-items-content__item__image{display:flex;justify-content:center;align-items:center;padding:0 var(--padding) var(--padding) var(--padding);height:200px}.featured-items-content__item__image img{margin:0;max-height:100%}.featured-items-content__item__title{display:block;margin:0 0 var(--padding-sm) 0;font-size:1.125rem;font-weight:700}.featured-items-content__item__title:last-child{margin-bottom:0}.featured-items-content__item__price{display:block;margin:0 0 var(--padding-sm) 0}.featured-items-content__item__price__original{text-decoration:line-through}.featured-items-content__item__price:last-child{margin-bottom:0}.featured-items-content__item--content{border-bottom:var(--container-border);padding:0 0 var(--padding) 0}.featured-items-content__item--product{position:relative;height:100%;padding:var(--padding);border:var(--container-border);background:var(--container-background);text-align:center}.featured-items-content__item--product:hover{border-color:var(--color-accent)}.image-content{margin:0 0 var(--margin) 0}.image-content__image{display:block;margin:0 auto}.popular-queries-content{margin:0 0 var(--margin) 0;text-align:center;line-height:1}.popular-queries-content__item{display:inline-block;margin:0 5px;vertical-align:middle}.popular-queries-content__item--1{font-size:100%}.popular-queries-content__item--2{font-size:150%}.popular-queries-content__item--3{font-size:200%}.popular-queries-content__item--4{font-size:250%}.popular-queries-content__item--5{font-size:300%}.content-zone{margin:0 0 var(--margin) 0}.conversationalsearch{position:relative}.conversationalsearch__body{border:var(--form-element-border);border-radius:var(--form-element-border-radius);padding:0;margin:0 0 var(--padding-sm) 0;overflow:hidden}.conversationalsearch__message-list{display:flex;flex-direction:column;padding:var(--padding-sm) var(--padding) 0;margin:0;list-style:none;overflow-x:hidden;overflow-y:auto;overscroll-behavior-y:contain;height:270px;width:100%}.conversationalsearch__message-list p{margin:0}.conversationalsearch__message{display:flex;align-items:flex-start;gap:var(--padding-xs);width:100%;border-radius:0;margin:0 0 var(--margin) 0;max-width:70%;min-width:150px;word-wrap:break-word;white-space:pre-wrap}.conversationalsearch__message .message__icon{color:var(--color-accent)}.conversationalsearch__message.message--sent{align-self:flex-end;justify-content:flex-end}.conversationalsearch__message.message--sent p{background-color:var(--container-background--alternate);border-radius:var(--form-element-border-radius);padding:var(--padding-sm) var(--padding)}.conversationalsearch__message.message--received *{display:flex}.conversationalsearch__message.message--received .message-icon{color:var(--color-accent)}.conversationalsearch__message.message--received p{align-self:flex-start}.conversationalsearch__footer{display:flex;gap:var(--padding-xs)}.conversationalsearch textarea{resize:none;min-height:45px;line-height:1.2}.conversationalsearch button{display:flex;align-items:center;padding:var(--padding-sm) var(--padding);background:var(--container-background--alternate);border:var(--container-border)}.conversationalsearch button:hover{border-color:var(--color-accent)}.date-picker{position:relative}.date-picker__modal{position:absolute;width:310px;border:var(--container-border);padding:var(--padding-sm);background:var(--container-background);z-index:10}.date-picker__modal__header{display:flex;align-items:center;gap:var(--padding-sm);margin:0 0 var(--padding-sm) 0;padding:var(--padding-sm);background:var(--container-background--alternate);font-weight:700;text-align:center}.date-picker__modal__header__previous,.date-picker__modal__header__next{display:inline-flex;font-size:1.5rem;flex-grow:0}.date-picker__modal__header__month{flex-grow:1}.date-picker__calendar{width:100%}.date-picker__calendar thead th{width:14.286%;padding:var(--padding-xs);background:var(--container-background);font-weight:700;text-align:center}.date-picker__calendar tbody td{border:var(--container-border);padding:var(--padding-xs);text-align:center}.date-picker__calendar tbody td:hover{color:var(--color-accent)}.date-picker__calendar__day{background:var(--container-background);cursor:pointer}.date-picker__calendar__day--alternate{background:var(--color-secondary-light)}.date-picker__calendar__day--selected{background:var(--color-accent);color:var(--default-font-color--inverse)!important}.date-picker__calendar__day--disabled{cursor:no-drop;opacity:.5}hawksearch-facets-list{display:block;margin:0 0 var(--margin-sm) 0}hawksearch-facets-list:last-child{margin-bottom:0}.facets{border:var(--container-border);background:var(--container-background)}.facets__heading{display:flex;align-items:center;padding:var(--padding-sm) var(--padding);font-size:1.2rem;font-weight:700;background:var(--container-background--alternate);cursor:pointer}.facets__heading__mobile-toggle{margin-left:auto}.facets__heading:hover{color:var(--color-accent)}.facets__content{display:none}.facets--expanded .facets__content{display:block}@media (min-width: 990px){.facets__heading{cursor:default}.facets__heading__mobile-toggle{display:none}.facets__heading:hover{color:var(--default-font-color)}.facets__content{display:block}}.facet__heading{display:flex;align-items:center;padding:var(--padding-sm) var(--padding);font-size:1.125rem;cursor:default}.facet__heading__tooltip{font-size:1.2em;margin-left:5px}.facet__heading__toggle{margin-left:auto}.facet__heading--collapsible{cursor:pointer}.facet__heading--collapsible:hover{--icon-color: var(--color-accent);color:var(--color-accent)}.facet__search{margin:0 0 var(--padding) 0}.facet__content{padding:0 var(--padding) var(--padding) var(--padding)}.facet__value{display:flex;align-items:center;flex-wrap:wrap}.facet__value__image{margin-right:5px}.facet__value__count{color:var(--secondary-font-color)}.checkbox-list-facet{overflow-y:auto}.checkbox-list-facet__list{margin:0 0 var(--padding-xs) 0}.checkbox-list-facet__list__item{display:flex;margin:0 0 var(--padding-xs) 0}.checkbox-list-facet__list__item__content{flex-grow:1}.checkbox-list-facet__list__item__actions{position:relative;top:-2px;flex-grow:0;margin-left:auto;white-space:nowrap;line-height:1}.checkbox-list-facet__list__item__actions__item{font-size:1.3em;cursor:pointer}.checkbox-list-facet__list__item__actions__item:hover{color:var(--color-accent)}.checkbox-list-facet__list__item--excluded>.checkbox-list-facet__item__content>label .facet__value__title{text-decoration:line-through}.checkbox-list-facet__list__item:last-child{margin-bottom:0}.checkbox-list-facet__list__item .checkbox-list-facet__list{margin-left:calc(16px + var(--padding-sm))}.checkbox-list-facet__list:last-child{margin-bottom:0}.color-facet__items{margin-bottom:var(--padding-xs)}.color-facet__item{position:relative;border:var(--container-border);cursor:pointer}.color-facet__item__box{padding:0 0 100%}.color-facet__item__image{display:block;width:100%;height:100%}.color-facet__item__actions{display:none}.color-facet__item--selected,.color-facet__item:hover{outline:solid 1px var(--color-accent);border-color:var(--color-accent)}.color-facet__item:hover .color-facet__item__actions{display:block;position:absolute;top:0;right:0;border:var(--container-border);background:var(--container-background);font-size:1rem;line-height:1}.color-facet__item:hover .color-facet__item__actions:hover{color:var(--color-accent)}.link-list-facet{overflow-y:auto}.link-list-facet__list__item,.recent-searches-facet__list__item,.related-searches-facet__list__item,.size-facet__items{margin-bottom:var(--padding-xs)}.size-facet__item{position:relative;border:var(--container-border)}.size-facet__item__outer{position:relative;padding:0 0 100%;cursor:pointer}.size-facet__item__inner{display:flex;align-items:center;justify-content:center;position:absolute;top:0;right:0;bottom:0;left:0;padding:var(--padding-xs);background:var(--container-background--alternate);font-size:.6875rem}.size-facet__item__actions{display:none}.size-facet__item--selected{outline:solid 1px var(--color-accent);border-color:var(--color-accent)}.size-facet__item:hover{border-color:var(--color-accent)}.size-facet__item:hover .size-facet__item__actions{display:block;position:absolute;top:0;right:0;border:var(--container-border);background:var(--container-background);font-size:1rem;line-height:1;cursor:pointer}.size-facet__item:hover .size-facet__item__actions:hover{color:var(--color-accent)}hawksearch-icon{display:inline-flex;align-items:center;font-size:var(--icon-font-size, 1em);color:var(--icon-color, currentColor)}.icon{display:inline-flex;align-items:center;margin:0 .5em 0 0;max-width:none;fill:currentColor;vertical-align:middle}.icon:last-child{margin:0}.modified-query{margin:0 0 var(--margin) 0}.modified-query__modified{font-style:italic}.modified-query__original{font-weight:700}.pagination{display:flex;align-items:center;gap:var(--padding);line-height:1}.pagination__pages{display:flex;align-items:center;gap:var(--padding-xs)}.pagination__page--selected{font-weight:700;color:var(--color-accent)}.query-suggestions{margin:0 0 var(--margin) 0}.query-suggestions a{font-style:italic}.range-slider{padding:0 12px}.range-slider__container{position:relative;padding:8px 0}.range-slider__bar{position:relative;border:var(--container-border);height:8px;background:var(--container-background)}.range-slider__bar__active{position:absolute;left:0;right:0;height:100%;background:var(--color-accent)}.range-slider__handle{display:block;position:absolute;top:0;outline:solid 1px var(--color-accent);margin-left:-12px;border:solid 3px var(--color-background);border-radius:100%;width:24px;height:24px;padding:4px;background:var(--color-accent);cursor:pointer;touch-action:none}.range-slider__handle--start{left:0}.range-slider__handle--end{left:100%}.range-slider__handle:hover{outline-width:2px}hawksearch-rating{display:inline-flex;align-items:center;margin:0 0 var(--padding-sm) 0;font-size:var(--icon-font-size, 1em);color:var(--icon-color, currentColor)}hawksearch-rating:last-child{margin:0}.rating{display:inline-flex;align-items:center;margin:0 0 var(--padding-sm) 0;max-width:none;fill:currentColor;vertical-align:middle;font-size:1.2em;color:var(--color-accent)}.rating:last-child{margin:0}hawksearch-recommendations-item{display:block;height:100%}.recommendations{margin:0 0 var(--margin) 0}.recommendations__content{display:flex}.recommendations__button{flex-shrink:0;align-self:center;font-size:2.5em}.recommendations__carousel{position:relative;flex-grow:1;overflow:hidden}.recommendations__carousel__item{flex-grow:0;flex-shrink:0;margin-bottom:var(--padding);padding:0 calc(.5 * var(--padding))}.recommendations__list{position:relative;display:flex;flex-wrap:wrap;margin:0 calc(-.5 * var(--padding)) calc(-1 * var(--padding)) calc(-.5 * var(--padding));transition:left .5s}.recommendations__list--carousel{flex-wrap:nowrap;margin:0}.recommendations__item{position:relative;height:100%;padding:var(--padding);border:var(--container-border);background:var(--container-background);text-align:center}.recommendations__item__sale-indicator{position:absolute;top:0;left:0;padding:5px;background:var(--container-background--alternate)}.recommendations__item__pin{position:absolute;top:var(--padding-xs);right:var(--padding-xs);font-size:1.2rem}.recommendations__item__image{display:flex;justify-content:center;align-items:center;padding:0 var(--padding) var(--padding) var(--padding);height:200px}.recommendations__item__image img{margin:0;max-height:100%}.recommendations__item__title{display:block;margin:0 0 var(--padding-sm) 0;font-size:1.125rem;font-weight:700}.recommendations__item__title:last-child{margin-bottom:0}.recommendations__item__price{display:block;margin:0 0 var(--padding-sm) 0}.recommendations__item__price__original{text-decoration:line-through}.recommendations__item__price:last-child{margin-bottom:0}.recommendations__item:hover{border-color:var(--color-accent)}.recommendations__pagination{display:flex;justify-content:center;gap:var(--padding-xs)}.recommendations__pagination__item{display:block;width:10px;height:10px;border-radius:100%;background:var(--color-secondary);cursor:pointer}.recommendations__pagination__item--selected{background:var(--color-secondary-dark)}.recommendations__pagination__item:hover{background:var(--color-accent)}.recommendations:last-child{margin-bottom:0}.search-field{position:relative}hawksearch-search-results-list{display:block;margin:0 0 var(--margin) 0}hawksearch-search-results-list:last-child{margin:0}hawksearch-search-results-item{display:block;height:100%}.search-results-list{margin:0 0 var(--margin) 0}.search-results-list__item{position:relative}.search-results-list__item__sale-indicator{position:absolute;top:0;left:0;padding:5px;background:var(--container-background--alternate)}.search-results-list__item__pin{position:absolute;top:var(--padding-xs);right:var(--padding-xs);font-size:1.2rem}.search-results-list__item__image{display:flex;justify-content:center;align-items:center;padding:0 var(--padding) var(--padding) var(--padding);height:200px}.search-results-list__item__image img{margin:0;max-height:100%}.search-results-list__item__title{display:block;margin:0 0 var(--padding-sm) 0;font-size:1.125rem;font-weight:700}.search-results-list__item__title:last-child{margin-bottom:0}.search-results-list__item__price{display:block;margin:0 0 var(--padding-sm) 0}.search-results-list__item__price__original{text-decoration:line-through}.search-results-list__item__price:last-child{margin-bottom:0}.search-results-list__item--content{border-bottom:var(--container-border);padding:0 0 var(--padding) 0}.search-results-list__item--product{position:relative;height:100%;padding:var(--padding);border:var(--container-border);background:var(--container-background);text-align:center}.search-results-list__item--product:hover{border-color:var(--color-accent)}.search-results-list:last-child{margin:0}.selected-facets{margin:0 0 var(--padding) 0}.selected-facets__item{display:flex;align-items:center;gap:var(--padding-xs);padding:var(--padding-xs);background:var(--container-background--alternate);white-space:nowrap}.selected-facets__item__field{font-weight:700}.selected-facets__item__field:after{content:":"}.selected-facets__item__value--excluded{text-decoration:line-through}.selected-facets__item__remove{margin-top:2px;line-height:1}.smartresponse{display:flex;align-items:start;justify-content:space-between;column-gap:var(--padding-xs);padding:var(--padding-sm);border:var(--container-border);border-left-color:var(--color-accent);border-left-width:var(--padding-xs)}.smartresponse__icon{color:var(--color-accent)}.smartresponse__info{display:flex;flex-direction:column;flex-grow:1;gap:var(--padding-xs)}.smartresponse__info.busy .smartresponse__info__summary{opacity:.2}.smartresponse__info__header{font-weight:700}.smartresponse__info__summary{overflow:hidden;transition:max-height .5s ease-out,opacity .5s ease-out}.smartresponse__info__summary p{padding:var(--padding) var(--padding) var(--padding) 0}.smartresponse__info__summary ul{display:flex;gap:8px}.smartresponse__info__summary li{position:relative;height:100%;padding:var(--padding);border:var(--container-border);background:var(--container-background);text-align:center}.smartresponse__info__summary li *{display:flex;flex-direction:column}.smartresponse__info__summary li:hover{border-color:var(--color-accent)}.smartresponse__actions .switch{position:relative;width:50px;height:25px;background-color:#ccc;border-radius:25px;cursor:pointer;transition:background-color .3s ease}.smartresponse__actions .switch:before{content:"";position:absolute;width:23px;height:23px;border-radius:50%;background-color:#fff;top:1px;left:1px;transition:transform .3s ease}.smartresponse__actions .switch.on{background-color:#3498db}.smartresponse__actions .switch.on:before{transform:translate(25px)}.tabs{display:flex;flex-direction:column;flex-wrap:wrap;gap:var(--padding-xs);margin:0 0 var(--padding) 0}.tabs__item{display:block;margin:0 0 -1px;border:var(--container-border);padding:var(--padding-sm) var(--padding);background:var(--container-background--alternate);white-space:nowrap;cursor:pointer}.tabs__item--selected{background:var(--container-background)}.tabs__item:hover{color:var(--color-accent)}@media (min-width: 740px){.tabs{flex-direction:row}}@media (min-width: 990px){.tabs:not(.tabs--list){border-bottom:var(--container-border);border-bottom-color:var(--container-background--alternate);padding:0 var(--padding)}.tabs:not(.tabs--list) .tabs__item--selected{border-bottom-color:var(--container-background)}}.tooltip{display:inline-flex;cursor:pointer}.tooltip__content{display:none}.tooltip:hover .tooltip__content{display:block;position:fixed;margin:calc(-.5 * var(--padding) - 1px) 0 0 2rem;box-shadow:0 0 5px #0000001a;max-width:350px;border:var(--container-border);padding:calc(var(--padding) / 2);background:var(--container-background);z-index:1}.variant-selector-list{display:flex;gap:var(--padding-xs);flex-wrap:wrap;margin:0 0 var(--padding-sm) 0}.variant-selector-list:last-child{margin-bottom:0}.variant-selector-list__item{width:25px;height:25px;border:var(--container-border);cursor:pointer}.variant-selector-list__item__box{height:100%}.variant-selector-list__item__image{display:block;width:100%;height:100%}.variant-selector-list__item--selected,.variant-selector-list__item:hover{outline:solid 1px var(--color-accent);border-color:var(--color-accent)}.visualsearch-field{position:relative}.visualsearch-field__drop-area{display:flex;padding:var(--padding-sm) 0;flex-direction:column;align-items:center;align-self:stretch;border:var(--container-border);background:var(--container-background);margin-bottom:var(--padding-sm)}.visualsearch-field__drop-area input[type=file]{display:none}.visualsearch-field__drop-area.error-state{border-style:dashed;border-color:var(--color-accent);background-color:var(--color-accent-light)}.visualsearch-field__drop-area.error-state .visualsearch-field__drop-area__dragging-state{display:none}.visualsearch-field__drop-area.dragging-state{border-style:dashed;border-color:var(--color-accent);background-color:var(--container-background--alternate)}.visualsearch-field__drop-area.dragging-state .visualsearch-field__drop-area__normal-state{visibility:hidden}.visualsearch-field__drop-area.dragging-state .visualsearch-field__drop-area__dragging-state,.visualsearch-field__drop-area.dragging-state .visualsearch-field__drop-area__drop-msg{display:block}.visualsearch-field__drop-area.dragging-state .visualsearch-field__drop-area__prompt-msg{display:none}.visualsearch-field__drop-area.dragging-state .visualsearch-field__drop-area__image-display{opacity:.1}.visualsearch-field__drop-area__prompt-msg{display:block;margin:0}.visualsearch-field__drop-area__prompt-msg .visualsearch-field__drop-area__upload-button{color:var(--color-accent);cursor:pointer}.visualsearch-field__drop-area__drop-msg{display:none;pointer-events:none;color:var(--color-accent)!important;margin:0}.visualsearch-field__drop-area__image-display{pointer-events:none;text-align:center;width:220px;height:auto}.visualsearch-field__drop-area__image-display img{display:block;width:auto;height:auto;max-width:100%;max-height:100%}.display-block{display:block!important}.display-none{display:none!important}@media (min-width: 740px){.display-sm-block{display:block!important}.display-sm-none{display:none!important}}@media (min-width: 990px){.display-md-block{display:block!important}.display-md-none{display:none!important}}@media (min-width: 1260px){.display-lg-block{display:block!important}.display-lg-none{display:none!important}}@media (min-width: 1800px){.display-xl-block{display:block!important}.display-xl-none{display:none!important}}.flex-align-self-center{align-self:center}@media (min-width: 740px){.flex-align-self-sm-center{align-self:center}}@media (min-width: 990px){.flex-align-self-md-center{align-self:center}}@media (min-width: 1260px){.flex-align-self-lg-center{align-self:center}}@media (min-width: 1800px){.flex-align-self-xl-center{align-self:center}}.flex-vertical-center{display:flex;flex-direction:column;justify-content:center}@media (min-width: 740px){.flex-vertical-sm-center{display:flex;flex-direction:column;justify-content:center}}@media (min-width: 990px){.flex-vertical-md-center{display:flex;flex-direction:column;justify-content:center}}@media (min-width: 1260px){.flex-vertical-lg-center{display:flex;flex-direction:column;justify-content:center}}@media (min-width: 1800px){.flex-vertical-xl-center{display:flex;flex-direction:column;justify-content:center}}.flex-gap{display:flex;flex-wrap:wrap;gap:var(--padding)}.flex-gap--none{gap:0}.flex-gap--sm{gap:var(--padding-sm)}.flex-gap--xs{gap:var(--padding-xs)}@media (min-width: 740px){.flex-gap-sm{display:flex;flex-wrap:wrap;gap:var(--padding)}.flex-gap-sm--none{gap:0}.flex-gap-sm--sm{gap:var(--padding-sm)}.flex-gap-sm--xs{gap:var(--padding-xs)}}@media (min-width: 990px){.flex-gap-md{display:flex;flex-wrap:wrap;gap:var(--padding)}.flex-gap-md--none{gap:0}.flex-gap-md--sm{gap:var(--padding-sm)}.flex-gap-md--xs{gap:var(--padding-xs)}}@media (min-width: 1260px){.flex-gap-lg{display:flex;flex-wrap:wrap;gap:var(--padding)}.flex-gap-lg--none{gap:0}.flex-gap-lg--sm{gap:var(--padding-sm)}.flex-gap-lg--xs{gap:var(--padding-xs)}}@media (min-width: 1800px){.flex-gap-xl{display:flex;flex-wrap:wrap;gap:var(--padding)}.flex-gap-xl--none{gap:0}.flex-gap-xl--sm{gap:var(--padding-sm)}.flex-gap-xl--xs{gap:var(--padding-xs)}}.margin{margin-bottom:var(--margin)!important}.margin-small{margin-bottom:var(--margin-sm)!important}.margin-none{margin-bottom:0!important}@media (min-width: 740px){.margin-sm{margin-bottom:var(--margin)!important}.margin-sm-small{margin-bottom:var(--margin-sm)!important}.margin-sm-none{margin-bottom:0!important}}@media (min-width: 990px){.margin-md{margin-bottom:var(--margin)!important}.margin-md-small{margin-bottom:var(--margin-sm)!important}.margin-md-none{margin-bottom:0!important}}@media (min-width: 1260px){.margin-lg{margin-bottom:var(--margin)!important}.margin-lg-small{margin-bottom:var(--margin-sm)!important}.margin-lg-none{margin-bottom:0!important}}@media (min-width: 1800px){.margin-xl{margin-bottom:var(--margin)!important}.margin-xl-small{margin-bottom:var(--margin-sm)!important}.margin-xl-none{margin-bottom:0!important}}.width-auto{width:auto}.width-full{width:100%}@media (min-width: 740px){.width-sm-auto{width:auto}.width-sm-full{width:100%}}@media (min-width: 990px){.width-md-auto{width:auto}.width-md-full{width:100%}}@media (min-width: 1260px){.width-lg-auto{width:auto}.width-lg-full{width:100%}}@media (min-width: 1800px){.width-xl-auto{width:auto}.width-xl-full{width:100%}}.text-align-left{text-align:left}.text-align-center{text-align:center}.text-align-right{text-align:right}@media (min-width: 740px){.text-align-sm-left{text-align:left}.text-align-sm-center{text-align:center}.text-align-sm-right{text-align:right}}@media (min-width: 990px){.text-align-md-left{text-align:left}.text-align-md-center{text-align:center}.text-align-md-right{text-align:right}}@media (min-width: 1260px){.text-align-lg-left{text-align:left}.text-align-lg-center{text-align:center}.text-align-lg-right{text-align:right}}@media (min-width: 1800px){.text-align-xl-left{text-align:left}.text-align-xl-center{text-align:center}.text-align-xl-right{text-align:right}}:host,:root{--color-accent: var(--hawksearch-color-accent, #119ff7);--color-secondary: var(--hawksearch-color-secondary, #ccc);--color-secondary-light: var(--hawksearch-color-secondary-light, #f1f1f1);--color-secondary-dark: var(--hawksearch-color-secondary-dark, #757575);--color-background: var(--hawksearch-color-background, #fff);--container-background: var(--hawksearch-container-background, var(--color-background));--container-background--alternate: var(--hawksearch-container-background--alternate, var(--color-secondary-light));--container-border: var(--hawksearch-container-border, solid 1px var(--color-secondary));--default-line-height: var(--hawksearch-default-line-height, 1.25);--default-font-color: var(--hawksearch-default-font-color, #2e2e2e);--default-font-color--inverse: var(--hawksearch-default-font-color--inverse, #fff);--default-font-family: var(--hawksearch-default-font-family, Arial, sans-serif);--default-font-size: var(--hawksearch-default-font-size, 16px);--button-background: var(--hawksearch-button-background, var(--color-accent));--button-border-radius: var(--hawksearch-button-border-radius, 5px);--button-font-color: var(--hawksearch-button-font-color, #fff);--form-element-background: var(--hawksearch-form-element-background, var(--color-background));--form-element-border: var(--hawksearch-form-element-border, solid 1px var(--color-secondary));--form-element-border--focus: var(--hawksearch-form-element-border--focus, solid 1px var(--color-accent));--form-element-border-radius: var(--hawksearch-form-element-border-radius, 0);--form-element-placeholder-color: var(--hawksearch-form-element-placeholder-color, var(--color-secondary-dark));--margin: var(--hawksearch-margin, 32px);--margin-sm: var(--hawksearch-margin-sm, calc(var(--margin) / 2));--padding: var(--hawksearch-padding, 24px);--padding-xs: var(--hawksearch-padding-xs, calc(var(--padding) / 4));--padding-sm: var(--hawksearch-padding-sm, calc(var(--padding) / 2));--secondary-font-color: var(--hawksearch-secondary-font-color, var(--color-secondary-dark));font-family:var(--default-font-family);font-size:var(--default-font-size);color:var(--default-font-color);line-height:var(--default-line-height)}\n';
5755
5755
  class BaseComponent extends HTMLElement {
5756
5756
  constructor() {
5757
5757
  super(...arguments);
@@ -6016,12 +6016,12 @@ class BaseContentComponent extends BaseComponent {
6016
6016
  this.bindFromEvent = false;
6017
6017
  }
6018
6018
  }
6019
- const defaultHtml$F = '<div class="custom-content">\n {{html content}}\n</div>';
6019
+ const defaultHtml$H = '<div class="custom-content">\n {{html content}}\n</div>';
6020
6020
  class CustomContentComponent extends BaseContentComponent {
6021
6021
  constructor() {
6022
6022
  super(...arguments);
6023
6023
  this.componentName = "custom-content";
6024
- this.defaultHtml = defaultHtml$F;
6024
+ this.defaultHtml = defaultHtml$H;
6025
6025
  }
6026
6026
  renderContent() {
6027
6027
  return !!this.data;
@@ -6032,12 +6032,12 @@ class CustomContentComponent extends BaseContentComponent {
6032
6032
  };
6033
6033
  }
6034
6034
  }
6035
- const defaultHtml$E = '<div class="row featured-items-content">\n {{#each items}}\n {{#if (or (eq @root.zone "Top") (eq @root.zone "Top2") (eq @root.zone "Bottom") (eq @root.zone "Bottom2"))}}\n {{#if (eq type "content")}}\n <div class="column column--12">\n <hawksearch-featured-items-content-item></hawksearch-featured-items-content-item>\n </div>\n {{else}}\n <div class="column column--12 column-sm--6 column-lg--4">\n <hawksearch-featured-items-content-item></hawksearch-featured-items-content-item>\n </div>\n {{/if}}\n {{else}}\n <hawksearch-featured-items-content-item></hawksearch-featured-items-content-item>\n {{/if}}\n {{/each}}\n</div>';
6035
+ const defaultHtml$G = '<div class="row featured-items-content">\n {{#each items}}\n {{#if (or (eq @root.zone "Top") (eq @root.zone "Top2") (eq @root.zone "Bottom") (eq @root.zone "Bottom2"))}}\n {{#if (eq type "content")}}\n <div class="column column--12">\n <hawksearch-featured-items-content-item></hawksearch-featured-items-content-item>\n </div>\n {{else}}\n <div class="column column--12 column-sm--6 column-lg--4">\n <hawksearch-featured-items-content-item></hawksearch-featured-items-content-item>\n </div>\n {{/if}}\n {{else}}\n <hawksearch-featured-items-content-item></hawksearch-featured-items-content-item>\n {{/if}}\n {{/each}}\n</div>';
6036
6036
  class FeaturedItemsContentComponent extends BaseContentComponent {
6037
6037
  constructor() {
6038
6038
  super(...arguments);
6039
6039
  this.componentName = "featured-items-content";
6040
- this.defaultHtml = defaultHtml$E;
6040
+ this.defaultHtml = defaultHtml$G;
6041
6041
  }
6042
6042
  renderContent() {
6043
6043
  var _a, _b;
@@ -6058,13 +6058,13 @@ class FeaturedItemsContentComponent extends BaseContentComponent {
6058
6058
  }
6059
6059
  }
6060
6060
  const placeholderUrl = "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAg4AAAFoCAYAAAA//nPjAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAABx0RVh0U29mdHdhcmUAQWRvYmUgRmlyZXdvcmtzIENTNui8sowAAAAWdEVYdENyZWF0aW9uIFRpbWUAMDcvMTkvMjJHKrx6AAARvklEQVR4nO3dL3cbx9uA4fm9p0fIyMQiCUlISmqSkAaVBPWjFhWZ2EQiMrGJTWQiEZksElqSF7Rqk9R/HtmrnZnd64KtG497Yu/t3Xl2/vf169evCQAg4P9yLwAAqIdwAADChAMAECYcAIAw4QAAhAkHACBMOAAAYcIBAAgTDgBAmHAAAMKEAwAQJhwAgDDhAACECQcAIEw4AABhwgEACBMOAECYcAAAwoQDABAmHACAMOEAAIQJBwAgTDgAAGHCAQAIEw4AQJhwAADChAMAECYcAIAw4QAAhAkHACBMOAAAYcIBAAgTDgBAmHAAAMKEAwAQJhwAgDDhAACECQcAIEw4AABhwgEACPsp9wKiNptN2mw2uZcBAJ2bTqdpOp3mXkZIVeFwfX2dexkAcBC1hINHFQBAmHAAAMKEAwAQJhwAgDDhAACECQcAIEw4AABhwgEACBMOAECYcAAAwqp55fS+Tk5Oqnl9JwDDstls0v39fe5lHMRgw2E6nabT09PcywBghK6urgYbDh5VAABhwgEACBMOAECYcAAAwoQDABAmHACAMOEAAIQJBwAgTDgAAGHCAQAIEw4AQJhwAADChAMAECYcAIAw4QAAhAkHACBMOAAAYcIBAAgTDgBAmHAAAMKEAwAQJhwAgDDhAACECQcAIEw4AABhwgEACPsp9wIAurLZbFLbtqlpmkc/Zjqdpslkko6Pj3tcGQyHcACq1TRNWi6XqWmadH9/H/pvrq+vU0opTSaTdHJykqbTaXr//n2aTCaHXCoMhnAAqtK2bVoul+n29jZtt9tX/Tnr9Tqt1+t0eXmZ3rx5k37++ec0nU47XC0Mj3AAqtC2bbq5uUm3t7epbdvO//xdRBwfH6ePHz8KCHiEcACKt1qt0nw+P0gw/KhpmnR2dpZOTk7S58+f09HR0cE/J9TEVAVQrLZt0/n5ebq4uOglGr51f3+f/vzzz7RarXr9vFA64QAUafeb/3q9zraGtm3TxcVFms1m2dYApfGoAijOLhr6vsvwmLu7u5RSSp8/f868EsjPHQegKKVFw87d3Z07D5CEA1CQtm2LjIYd8QDCAShIydGwc3d3l25ubnIvA7IRDkARrq6unnxVdEkuLy/TZrPJvQzIQjgA2TVN88+roGtxeXmZewmQhXAAslssFrmXsLemadLV1VXuZUDvhAOQ1WazCR9QVZpDvf4aSiYcgKyWy2XuJbzY7vwMGBPhAGTTtu0/L1eqVe3rh30JByCbmu827Gy3W+dZMCrCAchmKCONwoExEQ5ANrVuivzRUL4OiBAOQBZN0wxmImG73abtdpt7GdAL4QBkMZRo2BEOjIVwALIYyv6GnaF9PfAY4QAAhAkHACBMOAAAYcIBAAgTDgBAmHAAAMKEA5DF8fFx7iV0amhfDzxGOABZHB0d5V5Cp4b29cBjhAOQxdB+Qx/a1wOPEQ5ANicnJ7mX0ImhfB0QIRyAbN6+fZt7CZ0YytcBEcIByGY6neZeQieEA2MiHIBsjo+Pq98bcHJyYmMkoyIcgKw+fPiQewmv8v79+9xLgF4JByCrt2/fpslkknsZL3J0dCQcGB3hAGQ1mUyqvevwyy+/5F4C9E44ANmdnp5Wt0/g5OTE3QZGSTgARfj1119zLyFsMpmkz58/514GZCEcgCJMp9NqHll8/Pixujsk0BXhABTj06dPxY9nfvjwwSMKRk04AEX58uVLsVMW7969S58+fcq9DMhKOABFmUwmRcbDu3fv7GuAJByAAh0fH6fff/+9mMcWHz9+FA3wN+EAFOno6Ch9+fIlvXnzJtsadnc/fv7552xrgNL8lHsBAI+ZTCbpt99+S6vVKs3n89S2bW+fe7efobRHJpCbcACK9/bt2zSdTtPNzU26vr4+6Oc6OTlJp6engzm5E7omHIAqTCaTdHp6mt6/f59ubm7Ser1O2+22sz//3bt36f3794IBniEcgKocHR2lT58+pU+fPqXVapU2m026v79PTdPs9edMJpN0cnKS3r59W/VBW9A34QBUa3fR39lsNmm73T55J2I6nabJZFLMxAbURjgAg+ExAxyecUwAIEw4AABhwgEACBMOAECYcAAAwoQDABAmHACAMOEAAIQJBwAgTDgAAGHCAQAIEw4AQJhwAADChAMAECYcAIAw4QAAhAkHACBMOAAAYcIBAAgTDozScrnMvQSAKgkHRmexWKT5fJ4Wi0XupQBURzgwKsvlMt3e3qaUUrq9vXXnAWBPwoHRaJomzefz7/7ZfD5PTdNkWhFAfYQDo7DdbtPZ2dmD/+7s7Cxtt9ueVwRQJ+HA4LVtmy4uLlLbti/69wD8SzgweLPZ7NnHEU3TpNls1tOKAOolHBi0xWKR1ut16GPX67VJC4BnCAcG69sJiiiTFgBPEw4M0kMTFFEmLQAeJxwYnKcmKKJMWgA8TDgwKF1NSJi0AHiYcGBQIhMUUSYtAP5LODAYV1dX4QmKKJMWAN8TDgzCcrlM19fXB/mzTVoA/Es4UL2madLl5eVBP4dJC4C/CAeq1rZtOjs762UTo0kLAOFAxfqMht3nM2kBjJ1woFqLxaL3xwcmLYCxEw5U6erqKt3d3WX53CYtgDETDlTnkBMUUSYtgLESDlSljwmKKJMWwBgJB6rR92bICJMWwNgIB6pQYjSkZNICGB/hQBVyTFBEmbQAxkQ4ULycExRRJi2AsRAOFG21WmWfoIgyaQGMgXCgWE3TpPl8nnsZezFpAQydcKBINW86NGkBDJlwoEg1X3xrjh6A5wgHijObzaq/3W/SAhgq4UBRbm5uip+giDJpAQyRcKAYq9WqmNdJd8WkBTA0woEi1DhBEWXSAhgS4UB2Y9hMWPNmT4BvCQeyG8NFdQxxBIyDcCCrIUxQRJm0AIZAOJDNkCYookxaALUTDmSx2WwGN0ERZdICqJlwoHdN06SLi4vcy8jKpAVQK+FAr9q2TfP53CbBNI5NocDwCAd6dX5+7jftv5m0AGokHOjNbDZL9/f3uZdRFJMWQG2EA71YLpejm6CIMmkB1EQ4cHCbzWawr5PuikkLoBbCgYMyQRFn0gKogXDgYExQ7M+kBVA64cDBmKDYn0kLoHTCgYMwQfFyJi2AkgkHOmeC4vVMWgClEg50ygRFd0xaACUSDnRmu92aoOiYSQugNMKBTtjUdzgmLYCSCAc6MZvN/GZ8IKIMKIlw4NUWi0Var9e5lzFoJi2AUggHXmW5XKbb29vcyxgFkxY8x2Za+iAceLGmaUxQ9MykBY+ZzWZpPp+7M8XBCQdeZLvdprOzs9zLGCWTFvxoNpv98+6Uu7s78cBBCQf2ZrNefiYt2Pk2Gnbu7u481uJghAN7M0GRn3gjpZRubm4efUurx1ocinBgLyYoymHSYtyWy2W6vLx88mPm87l4oHPCgTATFOUxaTFOy+UyvDFZPNA14UCICYpyuSU9LvtEw44NtXRJOPAsExTlc2EYh6Zpnn088ZizszN/R+iEcOBJNuHVw6TFsDVNk87Ozl78vdi2rXigE8KBJy0WCz9oKiHyhuu10bCziweByWsIBx51dXX16KgXZTJpMTxdRcOOwOS1hAMPWi6X6fr6OvcyeAGTFsPRtm2az+edX+S7jhHGRTjwH6/ZgEUZTFrU79B7EsQDLyUc+M7uh5UfJvUzaVGvvjYyerTFSwgH/iEahsdGuDr1Of2wXq/FA3sRDvzDBMXw2AhXnxxnwThRk30IB1JKJiiGzO3oejx00mVfnKhJlHDABMUImLQoX85o2LGplgjhMHImKMbDRaFcJd3xcygWzxEOI2Yz5PiYtChPiXf8xANPEQ4jJhrGyaRFOV5y0mVfRCaPEQ4jlWPnNmUwaVGGkqNhx6FYPEQ4jNDNzU0xz1PJw6RFXpvNpvhoSMmJmjxMOIzMarWyGZKUkkmLXJqmSRcXF7mXEeZETX4kHEakaZoqfsuhPyYt+lXr+RAeb/Et4TASvvF5jE1w/ag1GnZqXz/dEQ4j4VYjT/H347CGEu7igZSEwyiYoOA5Q7mwlWhoewRsrEU4DJwJCqJcELo31KkEJ2qOm3AYMBMU7MukRXeGGg07TtQcL+EwUCYoeCmTFt0YwyNCJ2qOk3AYIM+reS2TFq8zm83Ser3OvYxeCM3xEQ4DNKSNWOTj79HLlHA8dt8cijUuwmFgxnB7lH64c7W/MUbDjngYD+EwIMvlcrQ/tDgMkxZxvv884hoL4TAQtRyaQ31MWjyvhpMu+zLkSRL+IhwGoLZDc6iPDXCPEw3fG/oYKsKhem3bpvl87jk0B+c29H+tVivR8IChvS2T7wmHyp2fn/thTm9cDP7lXSlPs7l2uIRDxWazWbq/v8+9DEbExeAvDnuK8f9pmIRDpezgJpexT1q4GO7H/6/hEQ4VMkFBbmOdtNhuty6CLzD22Bwa4VAZExSUYmyTFh7TvI4TNYdDOFTEBAWlGcukhRHDbjhRcxiEQ0VMUFCioU9aiIZuOVGzfsKhEiYoKNXQb+EL9u6N7THX0AiHCpigoHRD3fwm2A/HoVj1Eg6F85IZajG0SYsxn3TZF/FQJ+FQsN3oF9RiKLegRUN/xrLBdkiEQ6GG/tyY4ar9QnB1dSUaembzaV2EQ6Fms5lvJKpV66TFcrlM19fXuZcxOiZX6iIcCrRYLNJ6vc69DHixGu+YOR47Lydq1kM4FGa5XKbb29vcy4BXq2nSQjSUocbgHCPhUBATFAxNDZMWvu/K4lCs8gmHQpigYKhKnrTYXaQoi3gom3AogNtzDF2JkxYuTmWr6VHX2AiHApigYAxK2vgmGurgRM0yCYfMTFAwFqXcWXPKbF2cqFke4ZCRCQrGJvftZ+8LqJMTNcsiHDJpmiZdXl7mXgb0LtekhWioW8mbbMdGOGSw+wHmVilj1fdFQDQMg0OxyiAceiYa4C99TlosFgvRMBDiIT/h0DM/wOBffUxaOOlyeEoc7x0T4dAjp+7B9w49aSEahsujp3yEQ0+cugcPO9SkxWKxEA0DZt9KPsKhByYo4GldT1oYdR4HJ2rmIRwOzGZIiOlq0sJJl+NSyovFxkQ4HJBogP28dtObaBgnrxDvl3A4IBMUsL+X3nperVaiYcTEQ3+Ew4GYoICXecmt56ZpRAPZX2k+FsLhAExQwOvscwHwmybfcqLm4QmHjpmggG5EJi1EAw9xouZhCYcO2d0L3Xpq0sLmY57iRM3DEQ4dMk8M3Xto0kI0EOFEzcMQDh2ZzWYmKOBAvo1ybwxkHw7F6p5w6MDNzY0JCjig3WPA7XYrGtibeOiWcHil1WplMyT0oGma9Mcff4gGXsSJmt0RDq9gdhygHu5WdUM4vJAJCoC62B/TDeHwQiYoAOrjRM3XEw4vYIICoF7uGL+OcNiTCQqA+nnr6MsJhz2YoAAYDvHwMsIhyAQFwPA4UXN/wiHA8zCA4XKi5n6EQ8D5+bkduAAD5kTNOOHwjNlslu7v73MvA4ADc6JmjHB4wnK5NEEBMCJO1HyecHjEZrOxGRJghByK9TTh8ICmadLFxUXuZQCQiXh4nHD4Qdu2aT6fm6AAGDknaj5MOPzg/PzcXxQAUkpO1HyIcPiGCQoAvuVEzf8SDn8zQQHAQ5yo+T3hkExQAPA0bxD+1+jDwQQFABEOxfrLqMPBBAUA+xAPKf2UewGHstls0tXV1bMfY8MLAPtomiadn5+n6XT66MdsNpseV9SvwYbD/f29CQkADmLM15hRP6oAAPYjHACAMOEAAIQJBwAgTDgAAGHCAQAIEw4AQJhwAADChAMAECYcAICwal45/dQ7wQGgZjVd4/739evXr7kXAQDUwaMKACBMOAAAYcIBAAgTDgBAmHAAAMKEAwAQJhwAgDDhAACECQcAIEw4AABhwgEACBMOAECYcAAAwoQDABAmHACAMOEAAIQJBwAgTDgAAGHCAQAIEw4AQJhwAADChAMAECYcAIAw4QAAhAkHACBMOAAAYcIBAAgTDgBAmHAAAMKEAwAQJhwAgDDhAACECQcAIEw4AABhwgEACBMOAECYcAAAwoQDABAmHACAMOEAAIT9PxPk4S8yUXfxAAAAAElFTkSuQmCC";
6061
- const defaultHtml$D = '<div class="featured-items-content__item featured-items-content__item--{{type}}">\n {{#if pinned}}\n <span class="featured-items-content__item__pin">\n <hawksearch-icon name="star"></hawksearch-icon>\n </span>\n {{/if}}\n {{#if (eq type "product")}}\n {{#if (lt salePrice price)}}\n <span class="featured-items-content__item__sale-indicator">{{strings.sale}}</span>\n {{/if}}\n <a hawksearch-link href="{{url}}" class="featured-items-content__item__image" aria-label="{{title}}">\n <img hawksearch-image src="{{imageUrl}}" alt="" />\n </a>\n <div class="featured-items-content__item__title">\n <a hawksearch-link href="{{url}}">{{title}}</a>\n </div>\n {{#if rating}}\n <hawksearch-rating rating="{{rating}}"></hawksearch-rating>\n {{/if}}\n {{#unless (eq price undefined)}}\n <div class="featured-items-content__item__price" itemprop="offers" itemtype="http://schema.org/Offer" itemscope>\n {{#if (lt salePrice price)}}\n <span class="featured-items-content__item__price__original">{{currency price}}</span>\n <span class="featured-items-content__item__price__current" itemprop="price">{{currency salePrice}}</span>\n {{else}}\n <span class="featured-items-content__item__price-__current" itemprop="price">{{currency price}}</span>\n {{/if}}\n </div>\n {{/unless}}\n <hawksearch-variant-selector></hawksearch-variant-selector>\n {{else}}\n <div class="row">\n {{#if imageUrl}}\n <div class="column column--12 column-sm--4">\n <a hawksearch-link href="{{url}}">\n <img hawksearch-image src="{{imageUrl}}" alt="" />\n </a>\n </div>\n {{/if}}\n <div class="column column--12 column-sm--8 flex-align-self-sm-center">\n <div class="featured-items-content__item__title">\n <a hawksearch-link href="{{url}}">{{title}}</a>\n </div>\n {{#if description}}\n <p>{{description}}</p>\n {{/if}}\n </div>\n </div>\n {{/if}}\n</div>';
6061
+ const defaultHtml$F = '<div class="featured-items-content__item featured-items-content__item--{{type}}">\n {{#if pinned}}\n <span class="featured-items-content__item__pin">\n <hawksearch-icon name="star"></hawksearch-icon>\n </span>\n {{/if}}\n {{#if (eq type "product")}}\n {{#if (lt salePrice price)}}\n <span class="featured-items-content__item__sale-indicator">{{strings.sale}}</span>\n {{/if}}\n <a hawksearch-link href="{{url}}" class="featured-items-content__item__image" aria-label="{{title}}">\n <img hawksearch-image src="{{imageUrl}}" alt="" />\n </a>\n <div class="featured-items-content__item__title">\n <a hawksearch-link href="{{url}}">{{title}}</a>\n </div>\n {{#if rating}}\n <hawksearch-rating rating="{{rating}}"></hawksearch-rating>\n {{/if}}\n {{#unless (eq price undefined)}}\n <div class="featured-items-content__item__price" itemprop="offers" itemtype="http://schema.org/Offer" itemscope>\n {{#if (lt salePrice price)}}\n <span class="featured-items-content__item__price__original">{{currency price}}</span>\n <span class="featured-items-content__item__price__current" itemprop="price">{{currency salePrice}}</span>\n {{else}}\n <span class="featured-items-content__item__price-__current" itemprop="price">{{currency price}}</span>\n {{/if}}\n </div>\n {{/unless}}\n <hawksearch-variant-selector></hawksearch-variant-selector>\n {{else}}\n <div class="row">\n {{#if imageUrl}}\n <div class="column column--12 column-sm--4">\n <a hawksearch-link href="{{url}}">\n <img hawksearch-image src="{{imageUrl}}" alt="" />\n </a>\n </div>\n {{/if}}\n <div class="column column--12 column-sm--8 flex-align-self-sm-center">\n <div class="featured-items-content__item__title">\n <a hawksearch-link href="{{url}}">{{title}}</a>\n </div>\n {{#if description}}\n <p>{{description}}</p>\n {{/if}}\n </div>\n </div>\n {{/if}}\n</div>';
6062
6062
  class FeaturedItemsContentItemComponent extends BaseComponent {
6063
6063
  constructor() {
6064
6064
  super(...arguments);
6065
6065
  this.trackingEnabled = true;
6066
6066
  this.componentName = "featured-items-content-item";
6067
- this.defaultHtml = defaultHtml$D;
6067
+ this.defaultHtml = defaultHtml$F;
6068
6068
  this.bindFromEvent = false;
6069
6069
  }
6070
6070
  renderContent() {
@@ -6123,12 +6123,12 @@ class FeaturedItemsContentItemComponent extends BaseComponent {
6123
6123
  });
6124
6124
  }
6125
6125
  }
6126
- const defaultHtml$C = '<div class="image-content">\n {{#if link}}\n <a hawksearch-link href="{{link.url}}" target="{{link.target}}">\n <img\n src="{{image.url}}"\n class="image-content__image"\n height="{{image.height}}"\n width="{{image.width}}"\n alt="{{image.altText}}"\n title="{{image.title}}"\n />\n </a>\n {{else}}\n <img\n src="{{image.url}}"\n class="image-content__image"\n height="{{image.height}}"\n width="{{image.width}}"\n alt="{{image.altText}}"\n title="{{image.title}}"\n />\n {{/if}}\n</div>';
6126
+ const defaultHtml$E = '<div class="image-content">\n {{#if link}}\n <a hawksearch-link href="{{link.url}}" target="{{link.target}}">\n <img\n src="{{image.url}}"\n class="image-content__image"\n height="{{image.height}}"\n width="{{image.width}}"\n alt="{{image.altText}}"\n title="{{image.title}}"\n />\n </a>\n {{else}}\n <img\n src="{{image.url}}"\n class="image-content__image"\n height="{{image.height}}"\n width="{{image.width}}"\n alt="{{image.altText}}"\n title="{{image.title}}"\n />\n {{/if}}\n</div>';
6127
6127
  class ImageContentComponent extends BaseContentComponent {
6128
6128
  constructor() {
6129
6129
  super(...arguments);
6130
6130
  this.componentName = "image-content";
6131
- this.defaultHtml = defaultHtml$C;
6131
+ this.defaultHtml = defaultHtml$E;
6132
6132
  }
6133
6133
  renderContent() {
6134
6134
  return !!this.data;
@@ -6148,12 +6148,12 @@ class ImageContentComponent extends BaseContentComponent {
6148
6148
  HawkSearch.services.tracking.trackBannerImpression(this.data.id, this.data.campaignId);
6149
6149
  }
6150
6150
  }
6151
- const defaultHtml$B = '<div class="popular-queries-content">\n {{#each items}}\n <a hawksearch-query="{{query}}" class="popular-queries-content__item popular-queries-content__item--{{weight}}">{{query}}</a>\n {{/each}}\n</div>';
6151
+ const defaultHtml$D = '<div class="popular-queries-content">\n {{#each items}}\n <a hawksearch-query="{{query}}" class="popular-queries-content__item popular-queries-content__item--{{weight}}">{{query}}</a>\n {{/each}}\n</div>';
6152
6152
  class PopularQueriesContentComponent extends BaseContentComponent {
6153
6153
  constructor() {
6154
6154
  super(...arguments);
6155
6155
  this.componentName = "popular-queries-content";
6156
- this.defaultHtml = defaultHtml$B;
6156
+ this.defaultHtml = defaultHtml$D;
6157
6157
  }
6158
6158
  renderContent() {
6159
6159
  var _a, _b;
@@ -6178,12 +6178,12 @@ class PopularQueriesContentComponent extends BaseContentComponent {
6178
6178
  });
6179
6179
  }
6180
6180
  }
6181
- const defaultHtml$A = '<div class="content-zone">\n {{#each items}}\n {{#if (eq type "custom")}}\n <hawksearch-custom-content index="{{@index}}"></hawksearch-custom-content>\n {{/if}}\n {{#if (eq type "featured-items")}}\n <hawksearch-featured-items-content index="{{@index}}"></hawksearch-featured-items-content>\n {{/if}}\n {{#if (eq type "image")}}\n <hawksearch-image-content index="{{@index}}"></hawksearch-image-content>\n {{/if}}\n {{#if (eq type "popular-queries")}}\n <hawksearch-popular-queries-content index="{{@index}}"></hawksearch-popular-queries-content>\n {{/if}}\n {{/each}}\n</div>';
6181
+ const defaultHtml$C = '<div class="content-zone">\n {{#each items}}\n {{#if (eq type "custom")}}\n <hawksearch-custom-content index="{{@index}}"></hawksearch-custom-content>\n {{/if}}\n {{#if (eq type "featured-items")}}\n <hawksearch-featured-items-content index="{{@index}}"></hawksearch-featured-items-content>\n {{/if}}\n {{#if (eq type "image")}}\n <hawksearch-image-content index="{{@index}}"></hawksearch-image-content>\n {{/if}}\n {{#if (eq type "popular-queries")}}\n <hawksearch-popular-queries-content index="{{@index}}"></hawksearch-popular-queries-content>\n {{/if}}\n {{/each}}\n</div>';
6182
6182
  class ContentZoneComponent extends BaseComponent {
6183
6183
  constructor() {
6184
6184
  super(...arguments);
6185
6185
  this.componentName = "content-zone";
6186
- this.defaultHtml = defaultHtml$A;
6186
+ this.defaultHtml = defaultHtml$C;
6187
6187
  this.bindFromEvent = true;
6188
6188
  }
6189
6189
  get name() {
@@ -6317,7 +6317,7 @@ function formatNumber(value, decimals = 2) {
6317
6317
  maximumFractionDigits: decimals
6318
6318
  });
6319
6319
  }
6320
- const defaultHtml$z = `<div class="date-picker">
6320
+ const defaultHtml$B = `<div class="date-picker">
6321
6321
  <input type="text" value="{{value}}" hawksearch-input readonly class="date-picker__input" aria-label="{{strings.label}}" />
6322
6322
  {{#if modalVisible}}
6323
6323
  <div hawksearch-modal class="date-picker__modal">
@@ -6400,7 +6400,7 @@ class DatePickerComponent extends BaseComponent {
6400
6400
  constructor() {
6401
6401
  super(...arguments);
6402
6402
  this.componentName = "date-picker";
6403
- this.defaultHtml = defaultHtml$z;
6403
+ this.defaultHtml = defaultHtml$B;
6404
6404
  this.bindFromEvent = false;
6405
6405
  this.modalVisible = false;
6406
6406
  this.modalDate = /* @__PURE__ */ new Date();
@@ -6608,12 +6608,12 @@ class DatePickerComponent extends BaseComponent {
6608
6608
  }
6609
6609
  }
6610
6610
  const iconsSvg = '<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"><defs><clipPath id="a"><path d="M0 0h20v20H0z"/></clipPath></defs><symbol id="chevron-back" viewBox="0 0 20 20"><path fill-rule="evenodd" clip-rule="evenodd" d="M9.703 5.331a1 1 0 0 1 .014 1.414l-3.303 3.371 3.289 3.222a1 1 0 0 1-1.4 1.428L4.3 10.845a1 1 0 0 1-.014-1.414l4.003-4.085a1 1 0 0 1 1.414-.015Z"/><path fill-rule="evenodd" clip-rule="evenodd" d="M14.817 5.331a1 1 0 0 1 .015 1.414l-3.304 3.371 3.29 3.222a1 1 0 0 1-1.4 1.428l-4.004-3.921A1 1 0 0 1 9.4 9.43l4.003-4.085a1 1 0 0 1 1.414-.015Z"/></symbol><symbol id="chevron-down" viewBox="0 0 24 24"><path fill-rule="evenodd" clip-rule="evenodd" d="M5.838 10.111a1 1 0 0 1 1.415 0L12 14.858l4.747-4.747a1 1 0 1 1 1.415 1.414l-5.455 5.455a1 1 0 0 1-1.414 0l-5.455-5.455a1 1 0 0 1 0-1.414Z"/></symbol><symbol id="chevron-forward" viewBox="0 0 20 20"><path fill-rule="evenodd" clip-rule="evenodd" d="M9.46 14.766a1 1 0 0 1-.014-1.414l3.303-3.37L9.46 6.76a1 1 0 0 1 1.4-1.429l4.003 3.922a1 1 0 0 1 .014 1.414l-4.003 4.085a1 1 0 0 1-1.414.014Z"/><path fill-rule="evenodd" clip-rule="evenodd" d="M4.346 14.766a1 1 0 0 1-.015-1.414l3.304-3.37-3.29-3.222a1 1 0 1 1 1.4-1.429L9.75 9.253a1 1 0 0 1 .014 1.414L5.76 14.752a1 1 0 0 1-1.414.014Z"/></symbol><symbol id="chevron-left" viewBox="0 0 24 24"><path fill-rule="evenodd" clip-rule="evenodd" d="M14.69 18.224a1 1 0 0 1-1.414-.034l-5-5.25a1 1 0 0 1 0-1.38l5-5.25a1 1 0 1 1 1.448 1.38l-4.343 4.56 4.343 4.56a1 1 0 0 1-.034 1.414Z"/></symbol><symbol id="chevron-right" viewBox="0 0 24 24"><path fill-rule="evenodd" clip-rule="evenodd" d="M8.31 18.224a1 1 0 0 1-.034-1.414l4.343-4.56-4.343-4.56a1 1 0 0 1 1.448-1.38l5 5.25a1 1 0 0 1 0 1.38l-5 5.25a1 1 0 0 1-1.414.034Z"/></symbol><symbol id="chevron-up" viewBox="0 0 24 24"><path fill-rule="evenodd" clip-rule="evenodd" d="M18.156 16.531a1 1 0 0 1-1.414-.012L12 11.7l-4.742 4.82a1 1 0 1 1-1.425-1.402l5.454-5.546a1 1 0 0 1 1.426 0l5.455 5.546a1 1 0 0 1-.012 1.414Z"/></symbol><symbol id="cross" viewBox="0 0 20 20"><path fill-rule="evenodd" clip-rule="evenodd" d="m17.29 3.922-1.178-1.178-6.077 6.078-6.078-6.078-1.179 1.178L8.856 10l-6.078 6.078 1.18 1.178 6.077-6.078 6.077 6.078 1.179-1.178L11.213 10l6.078-6.078Z"/></symbol><symbol id="drop-image" viewBox="0 0 100 100"><path d="M55.875 25.375H52.75v9h3.125v-9Zm0-5.375v-1.125c0-4.125-3.375-7.5-7.5-7.5H47.25V14.5h1.125c2.375 0 4.375 2 4.375 4.375V20h3.125Zm-14 39.875h-9V63h9v-3.125Zm-14.5 0h-9V63h9v-3.125Zm-19.875-20H4.375v9H7.5v-9Zm0-14.5H4.375v9H7.5v-9ZM11.875 63H13v-3.125h-1.125c-2.375 0-4.375-2-4.375-4.375v-1.125H4.375V55.5c0 4.125 3.375 7.5 7.5 7.5Zm0-48.5H13v-3.125h-1.125c-4.125 0-7.5 3.375-7.5 7.5V20H7.5v-1.125c0-2.375 2-4.375 4.375-4.375Zm15.5-3.125h-9V14.5h9v-3.125Zm14.5 0h-9V14.5h9v-3.125ZM36.625 36.5c.875 0 1.5-.625 1.5-1.5 0-.5-.25-1-.625-1.25L31.25 29c-.5-.5-1.375-.5-1.875 0l-6.25 4.75c-.625.5-.75 1.5-.25 2.125s1.5.75 2.125.25l3.875-2.75v11.25c0 .875.625 1.5 1.5 1.625h.25c.75-.125 1.375-.75 1.375-1.5V33.5l3.875 2.75s.375.25.75.25Zm52.75 1.5H51.25c-1.625 0-3.25.625-4.375 1.875-1.25 1-1.875 2.625-1.875 4.25V82.25c0 1.625.625 3.25 1.875 4.375C48 87.75 49.625 88.5 51.25 88.5h38.125c1.625 0 3.25-.625 4.375-1.875s1.875-2.75 1.875-4.375V44.125c0-1.625-.625-3.25-1.875-4.375S91.125 38 89.375 38Zm3.375 44.375a3.415 3.415 0 0 1-3.375 3.375H51.25a3.415 3.415 0 0 1-3.375-3.375v-6.5l5.75-5.75 6.125 6.125c.125.125.25.25.5.375.5.25 1.125.125 1.625-.375L77.5 60.5l15.25 15.25v6.625Zm0-10.75L78.5 57.5c-.125-.125-.25-.25-.5-.375a1.734 1.734 0 0 0-1.125 0c-.125.125-.375.125-.5.375L60.75 73.125 54.625 67c-.25-.25-.625-.375-1-.375s-.75.125-1 .375l-4.75 4.75v-27.5a3.415 3.415 0 0 1 3.375-3.375h38.125a3.415 3.415 0 0 1 3.375 3.375v27.375Z"/><path d="M64.625 54.125c.125-.875-.125-1.75-.625-2.5s-1.25-1.25-2.125-1.5C61.5 50 61.125 50 60.75 50c-.5 0-1 .125-1.5.25-.875.375-1.5 1-1.875 1.75s-.5 1.75-.375 2.5c.125.875.625 1.625 1.375 2.25.625.5 1.5.875 2.375.875 1 0 2-.375 2.75-1.125.625-.75 1-1.5 1.125-2.375Z"/></symbol><symbol id="help" viewBox="0 0 20 20"><path fill-rule="evenodd" clip-rule="evenodd" d="M10 18.333c-4.595 0-8.333-3.737-8.333-8.333 0-4.594 3.738-8.333 8.333-8.333 4.595 0 8.333 3.738 8.333 8.333 0 4.596-3.738 8.333-8.333 8.333Zm0-15A6.674 6.674 0 0 0 3.333 10 6.674 6.674 0 0 0 10 16.667 6.674 6.674 0 0 0 16.666 10 6.674 6.674 0 0 0 10 3.333Z"/><path fill-rule="evenodd" clip-rule="evenodd" d="M10.833 12.5H9.166V10H10a1.668 1.668 0 0 0 0-3.333c-.92 0-1.667.746-1.667 1.666H6.666A3.338 3.338 0 0 1 10 5a3.338 3.338 0 0 1 3.333 3.333 3.343 3.343 0 0 1-2.5 3.23v.937Zm-.097.93a1.042 1.042 0 1 1-1.473 1.473 1.042 1.042 0 0 1 1.473-1.473Z"/></symbol><symbol id="image" viewBox="0 0 20 20"><path d="M17.27 20H2.727A2.726 2.726 0 0 1 0 17.273V2.727A2.728 2.728 0 0 1 2.727 0H17.27a2.726 2.726 0 0 1 2.727 2.727v14.546A2.728 2.728 0 0 1 17.27 20ZM2.727 1.818a.909.909 0 0 0-.909.91v14.545a.91.91 0 0 0 .91.909H17.27a.91.91 0 0 0 .91-.91V2.728a.909.909 0 0 0-.91-.909H2.727Z"/><path d="M.91 15.455A.91.91 0 0 1 .269 13.9l2.727-2.727a.909.909 0 0 1 1.281.004l2.086 2.082 5.722-5.718a.908.908 0 0 1 1.286 0l6.363 6.364a.91.91 0 0 1-1.287 1.286l-5.721-5.723-5.722 5.719a.909.909 0 0 1-1.286 0l-2.082-2.082L1.55 15.19c-.17.17-.4.264-.64.264Zm5.453-7.273a1.818 1.818 0 1 1 .003-3.636 1.818 1.818 0 0 1-.003 3.636Z"/></symbol><symbol id="message" viewBox="0 0 20 21"><path fill-rule="evenodd" d="M14.84 7.946H5.01a1 1 0 0 1-.998-.998 1 1 0 0 1 .998-.998h9.83a1 1 0 0 1 .998.998 1 1 0 0 1-.998.998Zm-6.407 3.992H5a1 1 0 0 1-.998-.998A1 1 0 0 1 5 9.942h3.433a1 1 0 0 1 .998.998 1 1 0 0 1-.998.998Z" clip-rule="evenodd"/><path fill-rule="evenodd" d="M2.016.96A2.002 2.002 0 0 0 .02 2.956v11.976c0 1.098.898 1.996 1.996 1.996h8.094c-.21-.41-.34-.878-.34-1.377 0-.21.02-.42.07-.62H2.016V2.957h15.968v11.976h-2.216c.04.2.07.409.07.619 0 .499-.13.958-.339 1.377h2.495a2.002 2.002 0 0 0 1.996-1.996V2.956A2.002 2.002 0 0 0 17.994.96H2.016Z" clip-rule="evenodd"/><path d="m17.545 19.413-1.367-1.677a3.85 3.85 0 0 0 .778-2.315 3.897 3.897 0 0 0-3.892-3.892 3.897 3.897 0 0 0-3.892 3.892 3.897 3.897 0 0 0 3.892 3.892 3.89 3.89 0 0 0 1.647-.38l1.367 1.677c.18.22.449.35.738.35a.95.95 0 0 0 .738-1.547h-.009Zm-2.266-3.992a2.217 2.217 0 0 1-2.215 2.215 2.21 2.21 0 0 1-2.216-2.215 2.21 2.21 0 0 1 2.216-2.216 2.21 2.21 0 0 1 2.216 2.216Z"/></symbol><symbol id="minus" viewBox="0 0 20 20"><path fill-rule="evenodd" clip-rule="evenodd" d="M15.833 10.833H4.167V9.167h11.666v1.666Z"/></symbol><symbol id="plus" viewBox="0 0 20 20"><g style="enable-background:new 0 0 20 20"><path d="M16 9h-5V4c0-.6-.4-1-1-1s-1 .4-1 1v5H4c-.6 0-1 .4-1 1s.4 1 1 1h5v5c0 .6.4 1 1 1s1-.4 1-1v-5h5c.6 0 1-.4 1-1s-.4-1-1-1z"/></g></symbol><symbol id="reset" viewBox="0 0 16 16"><path d="M14.923 3.988A7.977 7.977 0 0 0 10.459.39a7.98 7.98 0 0 0-5.73.32 8.026 8.026 0 0 0-2.77 2.06V1.765a.976.976 0 0 0-1.951 0V5.86h4.097a.976.976 0 0 0 0-1.95H3.56a6.029 6.029 0 0 1 4.41-1.952h.078a6.003 6.003 0 0 1 4.16 1.694l.187.187a5.99 5.99 0 0 1 1.663 4.082v.187a6.022 6.022 0 0 1-1.647 4.05c-.078.087-.164.165-.25.25a6.042 6.042 0 0 1-4.059 1.647H7.93a6.039 6.039 0 0 1-5.682-4.214C2.1 9.374 1.623 9.1 1.116 9.21a.989.989 0 0 0-.64.46.946.946 0 0 0-.086.78 7.944 7.944 0 0 0 1.678 2.912A7.965 7.965 0 0 0 8.016 16a7.95 7.95 0 0 0 4.706-1.538 7.996 7.996 0 0 0 3.114-4.815 8.026 8.026 0 0 0-.905-5.667l-.008.008Z"/></symbol><symbol id="search" viewBox="0 0 20 20"><g clip-path="url(#a)"><path fill-rule="evenodd" d="m18.678 16.322-3.299-3.3a7.85 7.85 0 0 0 1.265-4.284 7.85 7.85 0 0 0-2.316-5.589A7.854 7.854 0 0 0 8.738.833 7.853 7.853 0 0 0 3.15 3.148a7.855 7.855 0 0 0-2.316 5.59c0 2.112.823 4.098 2.316 5.59a7.85 7.85 0 0 0 5.59 2.315 7.84 7.84 0 0 0 4.283-1.264l3.3 3.3c.315.314.733.488 1.178.488.445 0 .863-.174 1.178-.489.315-.314.489-.732.489-1.178 0-.446-.174-.864-.489-1.178Zm-14.35-3.174A6.193 6.193 0 0 1 2.5 8.738a6.2 6.2 0 0 1 1.827-4.41A6.194 6.194 0 0 1 8.738 2.5c1.667 0 3.233.65 4.411 1.828a6.193 6.193 0 0 1 1.828 4.41c0 1.667-.65 3.233-1.828 4.411a6.193 6.193 0 0 1-4.41 1.828 6.19 6.19 0 0 1-4.412-1.829Z" clip-rule="evenodd"/></g></symbol><symbol id="send" viewBox="0 0 20 20"><path d="M1.635 19a.635.635 0 0 1-.595-.856l2.608-7.03a.629.629 0 0 1 .483-.403l3.985-.704-3.98-.685a.63.63 0 0 1-.488-.405L1.04 1.853a.636.636 0 0 1 .88-.786l16.73 8.367a.634.634 0 0 1 0 1.132L1.918 18.933a.634.634 0 0 1-.282.067Z"/></symbol><symbol id="sparkles" viewBox="0 0 20 20"><path d="m12.263 16.353-.855 2.646-.855-2.646a4.086 4.086 0 0 0-2.636-2.635l-2.646-.855 2.646-.855a4.086 4.086 0 0 0 2.636-2.635l.855-2.646.855 2.646a4.086 4.086 0 0 0 2.635 2.635l2.646.855-2.646.855a4.09 4.09 0 0 0-2.635 2.635ZM5.75 9.342l-.478 1.478-.477-1.478a2.047 2.047 0 0 0-1.317-1.317L2 7.545l1.478-.476A2.047 2.047 0 0 0 4.795 5.75l.477-1.478.477 1.478a2.047 2.047 0 0 0 1.318 1.32l1.478.477-1.478.477a2.053 2.053 0 0 0-1.318 1.32Zm4.313-5.151-.29.899-.29-.899a1.33 1.33 0 0 0-.856-.856l-.898-.29.898-.29a1.33 1.33 0 0 0 .857-.857L9.774 1l.29.898c.13.407.45.726.856.857l.898.29-.898.29a1.337 1.337 0 0 0-.857.856Z"/></symbol><symbol id="star-empty" viewBox="0 0 20 20"><path fill-rule="evenodd" clip-rule="evenodd" d="m18.333 7.7-5.991-.517L10 1.667 7.658 7.192 1.666 7.7l4.55 3.942L4.85 17.5 10 14.392l5.15 3.108-1.359-5.858L18.334 7.7ZM10 12.833l-3.133 1.892.833-3.567-2.767-2.4 3.65-.316L10 5.083l1.425 3.367 3.65.317-2.767 2.4.834 3.566-3.142-1.9Z"/></symbol><symbol id="star-half" viewBox="0 0 20 20"><g style="enable-background:new 0 0 20 20"><style>.st0{fill-rule:evenodd;clip-rule:evenodd}</style><path class="st0" d="m18.3 7.7-6-.5L10 1.7 7.7 7.2l-6 .5 4.5 3.9-1.4 5.9 5.1-3.1 5.1 3.1-1.4-5.9 4.7-3.9zM10 12.8l-3.1 1.9.8-3.6-2.8-2.3 3.7-.3L10 5.1l1.4 3.4 3.6.3-2.8 2.4.8 3.6-3-2z"/><path class="st0" d="M10 1.7 7.7 7.2l-6 .5 4.5 3.9-1.4 5.9 5.2-3.1z"/></g></symbol><symbol id="star" viewBox="0 0 20 20"><path fill-rule="evenodd" clip-rule="evenodd" d="m10 14.392 5.15 3.108-1.367-5.858 4.55-3.942-5.991-.508L10 1.667 7.658 7.192 1.666 7.7l4.55 3.942L4.85 17.5 10 14.392Z"/></symbol><symbol id="upload" viewBox="0 0 21 20"><path fill-rule="evenodd" d="M5.825 6.67C3.422 6.762 1.5 8.72 1.5 11.119c0 2.457 2.016 4.45 4.498 4.45h1.196v-1.187H5.998c-1.82 0-3.297-1.462-3.297-3.263 0-1.8 1.477-3.263 3.297-3.263.286 0 .572.037.857.06.276-2.277 1.645-4.227 4.24-4.227 2.32 0 4.203 1.863 4.203 4.158 0 .614.03.6 0 1.36.428 0 3.001.39 3.001 2.799 0 1.311-1.075 2.376-2.4 2.376h-1.802v1.188h1.801c1.988 0 3.602-1.598 3.602-3.564 0-1.778-1.318-3.254-3.04-3.521.025-.21.038-.422.038-.638 0-2.95-2.42-5.346-5.402-5.346-2.574 0-4.73 1.785-5.271 4.17Z" clip-rule="evenodd"/><path d="m7.78 12.622-.845-.809 3.574-3.398 3.556 3.4-.848.807-2.105-2.013-.006 7.09H9.893l.007-7.094-2.12 2.017Z"/><path fill-rule="evenodd" d="M5.705 6.527c.598-2.398 2.786-4.177 5.39-4.177 3.064 0 5.553 2.462 5.553 5.496 0 .174-.008.345-.024.514 1.723.335 3.026 1.84 3.026 3.645 0 2.05-1.683 3.714-3.752 3.714h-1.95V14.23h1.95c1.244 0 2.251-.999 2.251-2.226 0-1.138-.602-1.794-1.264-2.173-.671-.383-1.395-.476-1.587-.476h-.156l.006-.156c.019-.476.014-.64.008-.85a15.228 15.228 0 0 1-.008-.504c0-2.21-1.815-4.008-4.052-4.008-1.257 0-2.207.47-2.88 1.21-.675.744-1.077 1.77-1.212 2.885l-.018.144-.144-.012-.226-.02a6.558 6.558 0 0 0-.618-.04c-1.739 0-3.147 1.397-3.147 3.113 0 1.717 1.408 3.113 3.147 3.113h1.346v1.488H5.998c-2.564 0-4.648-2.06-4.648-4.6 0-2.444 1.927-4.442 4.355-4.592Zm5.39-3.877c-2.503 0-4.598 1.736-5.124 4.054l-.026.112-.115.005c-2.323.087-4.18 1.98-4.18 4.297 0 2.372 1.947 4.3 4.348 4.3h1.046v-.887H5.998c-1.901 0-3.447-1.528-3.447-3.413 0-1.885 1.546-3.413 3.447-3.413a7.03 7.03 0 0 1 .727.048c.157-1.107.572-2.139 1.27-2.906.73-.804 1.761-1.309 3.1-1.309 2.401 0 4.353 1.93 4.353 4.308 0 .219.004.358.007.484.006.196.01.36-.002.735.332.033.975.16 1.58.507.732.418 1.416 1.162 1.416 2.433 0 1.396-1.144 2.526-2.55 2.526h-1.652v.888h1.651c1.906 0 3.452-1.532 3.452-3.414 0-1.702-1.262-3.117-2.913-3.373l-.143-.022.017-.144c.025-.203.038-.41.038-.62 0-2.866-2.353-5.196-5.253-5.196Zm-.586 5.557 3.774 3.609-1.066 1.013-1.955-1.869-.006 6.89-1.513-.002.007-6.893-1.97 1.874-1.063-1.016 3.792-3.606Zm-3.357 3.607.629.6 2.27-2.159-.008 7.294h.913l.007-7.29 2.255 2.156.63-.6-3.34-3.193-3.356 3.192Z" clip-rule="evenodd"/></symbol></svg>';
6611
- const defaultHtml$y = '{{html svg}}\n<svg height="{{height}}" width="{{width}}" focusable="false" aria-hidden="true" class="icon">\n <use href="{{url}}"></use>\n</svg>';
6611
+ const defaultHtml$A = '{{html svg}}\n<svg height="{{height}}" width="{{width}}" focusable="false" aria-hidden="true" class="icon">\n <use href="{{url}}"></use>\n</svg>';
6612
6612
  class IconComponent extends BaseComponent {
6613
6613
  constructor() {
6614
6614
  super(...arguments);
6615
6615
  this.componentName = "icon";
6616
- this.defaultHtml = defaultHtml$y;
6616
+ this.defaultHtml = defaultHtml$A;
6617
6617
  this.bindFromEvent = false;
6618
6618
  }
6619
6619
  get name() {
@@ -6645,12 +6645,12 @@ class IconComponent extends BaseComponent {
6645
6645
  };
6646
6646
  }
6647
6647
  }
6648
- const defaultHtml$x = '<div class="range-slider">\n <div class="range-slider__container">\n <div class="range-slider__bar">\n <div class="range-slider__bar__active" hawksearch-bar style="left: {{start}}%; right: {{subtract 100 end}}%;"></div>\n </div>\n <span class="range-slider__handle range-slider__handle--start" title="{{strings.start}}" hawksearch-handle="start" style="left: {{start}}%;"></span>\n <span class="range-slider__handle range-slider__handle--end" title="{{strings.end}}" hawksearch-handle="end" style="left: {{end}}%;"></span>\n </div>\n</div>';
6648
+ const defaultHtml$z = '<div class="range-slider">\n <div class="range-slider__container">\n <div class="range-slider__bar">\n <div class="range-slider__bar__active" hawksearch-bar style="left: {{start}}%; right: {{subtract 100 end}}%;"></div>\n </div>\n <span class="range-slider__handle range-slider__handle--start" title="{{strings.start}}" hawksearch-handle="start" style="left: {{start}}%;"></span>\n <span class="range-slider__handle range-slider__handle--end" title="{{strings.end}}" hawksearch-handle="end" style="left: {{end}}%;"></span>\n </div>\n</div>';
6649
6649
  class RangeSliderComponent extends BaseComponent {
6650
6650
  constructor() {
6651
6651
  super(...arguments);
6652
6652
  this.componentName = "range-slider";
6653
- this.defaultHtml = defaultHtml$x;
6653
+ this.defaultHtml = defaultHtml$z;
6654
6654
  this.bindFromEvent = false;
6655
6655
  this.dragging = false;
6656
6656
  this.start = 0;
@@ -6795,12 +6795,12 @@ class RangeSliderComponent extends BaseComponent {
6795
6795
  this.dispatchEvent(newEvent);
6796
6796
  }
6797
6797
  }
6798
- const defaultHtml$w = '<div class="rating" title="{{rating}}">\n <hawksearch-icon name="{{ratingIcon rating 0}}" class="rating__icon"></hawksearch-icon>\n <hawksearch-icon name="{{ratingIcon rating 1}}" class="rating__icon"></hawksearch-icon>\n <hawksearch-icon name="{{ratingIcon rating 2}}" class="rating__icon"></hawksearch-icon>\n <hawksearch-icon name="{{ratingIcon rating 3}}" class="rating__icon"></hawksearch-icon>\n <hawksearch-icon name="{{ratingIcon rating 4}}" class="rating__icon"></hawksearch-icon>\n</div>';
6798
+ const defaultHtml$y = '<div class="rating" title="{{rating}}">\n <hawksearch-icon name="{{ratingIcon rating 0}}" class="rating__icon"></hawksearch-icon>\n <hawksearch-icon name="{{ratingIcon rating 1}}" class="rating__icon"></hawksearch-icon>\n <hawksearch-icon name="{{ratingIcon rating 2}}" class="rating__icon"></hawksearch-icon>\n <hawksearch-icon name="{{ratingIcon rating 3}}" class="rating__icon"></hawksearch-icon>\n <hawksearch-icon name="{{ratingIcon rating 4}}" class="rating__icon"></hawksearch-icon>\n</div>';
6799
6799
  class RatingComponent extends BaseComponent {
6800
6800
  constructor() {
6801
6801
  super(...arguments);
6802
6802
  this.componentName = "rating";
6803
- this.defaultHtml = defaultHtml$w;
6803
+ this.defaultHtml = defaultHtml$y;
6804
6804
  this.bindFromEvent = false;
6805
6805
  }
6806
6806
  registerHelpers() {
@@ -6850,12 +6850,12 @@ class RatingComponent extends BaseComponent {
6850
6850
  });
6851
6851
  }
6852
6852
  }
6853
- const defaultHtml$v = '<span class="tooltip" hawksearch-tooltip>\n <span class="tooltip__icon">\n <hawksearch-icon name="help" class="facet__heading__tooltip"></hawksearch-icon>\n </span>\n <span class="tooltip__content" hawksearch-tooltip-content>{{text}}</span>\n</span>';
6853
+ const defaultHtml$x = '<span class="tooltip" hawksearch-tooltip>\n <span class="tooltip__icon">\n <hawksearch-icon name="help" class="facet__heading__tooltip"></hawksearch-icon>\n </span>\n <span class="tooltip__content" hawksearch-tooltip-content>{{text}}</span>\n</span>';
6854
6854
  class TooltipComponent extends BaseComponent {
6855
6855
  constructor() {
6856
6856
  super(...arguments);
6857
6857
  this.componentName = "tooltip";
6858
- this.defaultHtml = defaultHtml$v;
6858
+ this.defaultHtml = defaultHtml$x;
6859
6859
  this.bindFromEvent = false;
6860
6860
  }
6861
6861
  get text() {
@@ -6926,12 +6926,12 @@ var SearchType = /* @__PURE__ */ ((SearchType2) => {
6926
6926
  SearchType2[SearchType2["Refinement"] = 2] = "Refinement";
6927
6927
  return SearchType2;
6928
6928
  })(SearchType || {});
6929
- const defaultHtml$u = '{{#if customLayout}}\n {{html customLayout}}\n{{else}}\n <hawksearch-search-results mode="landing-page" url="{{url}}"></hawksearch-search-results>\n{{/if}}';
6929
+ const defaultHtml$w = '{{#if customLayout}}\n {{html customLayout}}\n{{else}}\n <hawksearch-search-results mode="landing-page" url="{{url}}"></hawksearch-search-results>\n{{/if}}';
6930
6930
  class LandingPageComponent extends BaseComponent {
6931
6931
  constructor() {
6932
6932
  super();
6933
6933
  this.componentName = "landing-page";
6934
- this.defaultHtml = defaultHtml$u;
6934
+ this.defaultHtml = defaultHtml$w;
6935
6935
  this.bindFromEvent = true;
6936
6936
  HawkSearch.services.tracking.trackPageLoad(PageType.Landing);
6937
6937
  const searchRequest = HawkSearch.services.search.getRequestFromUrl();
@@ -6966,7 +6966,7 @@ class LandingPageComponent extends BaseComponent {
6966
6966
  return output;
6967
6967
  }
6968
6968
  }
6969
- const defaultHtml$t = `<div class="recommendations">
6969
+ const defaultHtml$v = `<div class="recommendations">
6970
6970
  {{#if headingEnabled}}
6971
6971
  <h2 class="heading recommendations__heading">{{title}}</h2>
6972
6972
  {{/if}}
@@ -7011,7 +7011,7 @@ class RecommendationsComponent extends BaseComponent {
7011
7011
  constructor() {
7012
7012
  super();
7013
7013
  this.componentName = "recommendations";
7014
- this.defaultHtml = defaultHtml$t;
7014
+ this.defaultHtml = defaultHtml$v;
7015
7015
  this.bindFromEvent = true;
7016
7016
  this.selectedIndex = 0;
7017
7017
  }
@@ -7242,12 +7242,12 @@ class RecommendationsComponent extends BaseComponent {
7242
7242
  this.dragOrigin = void 0;
7243
7243
  }
7244
7244
  }
7245
- const defaultHtml$s = '<div class="recommendations__item">\n {{#if pinned}}\n <span class="recommendations__item__pin">\n <hawksearch-icon name="star"></hawksearch-icon>\n </span>\n {{/if}}\n {{#if (lt salePrice price)}}\n <span class="recommendations__item__sale-indicator">{{strings.sale}}</span>\n {{/if}}\n <a hawksearch-link href="{{url}}" class="recommendations__item__image" aria-label="{{title}}">\n <img hawksearch-image src="{{imageUrl}}" alt="" />\n </a>\n <div class="recommendations__item__title">\n <a hawksearch-link href="{{url}}">{{title}}</a>\n </div>\n {{#if rating}}\n <hawksearch-rating rating="{{rating}}"></hawksearch-rating>\n {{/if}}\n {{#unless (eq price undefined)}}\n <div class="recommendations__item__price" itemprop="offers" itemtype="http://schema.org/Offer" itemscope>\n {{#if (lt salePrice price)}}\n <span class="recommendations__item__price__original">{{currency price}}</span>\n <span class="recommendations__item__price__current" itemprop="price">{{currency salePrice}}</span>\n {{else}}\n <span class="recommendations__item__price-__current" itemprop="price">{{currency price}}</span>\n {{/if}}\n </div>\n {{/unless}}\n <hawksearch-variant-selector></hawksearch-variant-selector>\n</div>';
7245
+ const defaultHtml$u = '<div class="recommendations__item">\n {{#if pinned}}\n <span class="recommendations__item__pin">\n <hawksearch-icon name="star"></hawksearch-icon>\n </span>\n {{/if}}\n {{#if (lt salePrice price)}}\n <span class="recommendations__item__sale-indicator">{{strings.sale}}</span>\n {{/if}}\n <a hawksearch-link href="{{url}}" class="recommendations__item__image" aria-label="{{title}}">\n <img hawksearch-image src="{{imageUrl}}" alt="" />\n </a>\n <div class="recommendations__item__title">\n <a hawksearch-link href="{{url}}">{{title}}</a>\n </div>\n {{#if rating}}\n <hawksearch-rating rating="{{rating}}"></hawksearch-rating>\n {{/if}}\n {{#unless (eq price undefined)}}\n <div class="recommendations__item__price" itemprop="offers" itemtype="http://schema.org/Offer" itemscope>\n {{#if (lt salePrice price)}}\n <span class="recommendations__item__price__original">{{currency price}}</span>\n <span class="recommendations__item__price__current" itemprop="price">{{currency salePrice}}</span>\n {{else}}\n <span class="recommendations__item__price-__current" itemprop="price">{{currency price}}</span>\n {{/if}}\n </div>\n {{/unless}}\n <hawksearch-variant-selector></hawksearch-variant-selector>\n</div>';
7246
7246
  class RecommendationsItemComponent extends BaseComponent {
7247
7247
  constructor() {
7248
7248
  super(...arguments);
7249
7249
  this.componentName = "recommendations-item";
7250
- this.defaultHtml = defaultHtml$s;
7250
+ this.defaultHtml = defaultHtml$u;
7251
7251
  this.bindFromEvent = false;
7252
7252
  }
7253
7253
  get widgetId() {
@@ -7312,13 +7312,13 @@ class RecommendationsItemComponent extends BaseComponent {
7312
7312
  });
7313
7313
  }
7314
7314
  }
7315
- const defaultHtml$r = '<div class="autocomplete">\n <div class="row">\n {{#if products.results.length}}\n <div class="column column--12 column-md--8">\n <span class="autocomplete__title autocomplete__title--products">{{products.title}}</span>\n <div class="row autocomplete__products">\n {{#each products.results}}\n <div class="column column--12 column-sm--4">\n <div class="autocomplete__product">\n <a hawksearch-product="{{id}}" href="{{url}}" class="autocomplete__product__image">\n <img hawksearch-image src="{{imageUrl}}" alt="" />\n </a>\n <span class="autocomplete__product__title">\n <a hawksearch-product="{{id}}" href="{{url}}">{{html title}}</a>\n </span>\n {{#if rating}}\n <hawksearch-rating rating="{{rating}}"></hawksearch-rating>\n {{/if}}\n {{#unless (eq price undefined)}}\n <div class="autocomplete__product__price" itemprop="offers" itemtype="http://schema.org/Offer" itemscope>\n {{#if (lt salePrice price)}}\n <span class="autocomplete__product__price__original">{{currency price}}</span>\n <span class="autocomplete__product__price__current" itemprop="price">{{currency salePrice}}</span>\n {{else}}\n <span class="autocomplete__product__price-__current" itemprop="price">{{currency price}}</span>\n {{/if}}\n </div>\n {{/unless}}\n <hawksearch-variant-selector></hawksearch-variant-selector>\n </div>\n </div>\n {{/each}}\n </div>\n </div>\n {{/if}}\n {{#if (or categories.results.length content.results.length queries.results.length)}}\n <div class="column column--12 column-md--4">\n {{#if productSuggestedQueries.results.length}}\n <span class="autocomplete__title autocomplete__title--queries">{{productSuggestedQueries.title}}</span>\n <ul class="autocomplete__list">\n {{#each productSuggestedQueries.results}}\n <li>\n <a hawksearch-query="{{query}}" href="{{url}}">{{query}}</a>\n </li>\n {{/each}}\n </ul>\n {{/if}}\n {{#if contentSuggestedQueries.results.length}}\n <span class="autocomplete__title autocomplete__title--queries">{{contentSuggestedQueries.title}}</span>\n <ul class="autocomplete__list">\n {{#each contentSuggestedQueries.results}}\n <li>\n <a hawksearch-query="{{query}}" href="{{url}}">{{query}}</a>\n </li>\n {{/each}}\n </ul>\n {{/if}}\n {{#if categories.results.length}}\n <span class="autocomplete__title autocomplete__title--categories">{{categories.title}}</span>\n <ul class="autocomplete__list">\n {{#each categories.results}}\n <li>\n <a hawksearch-category-field="{{field}}" hawksearch-category-value="{{value}}" href="{{url}}">{{html title}}</a>\n </li>\n {{/each}}\n </ul>\n {{/if}}\n {{#if content.results.length}}\n <span class="autocomplete__title autocomplete__title--content">{{content.title}}</span>\n <ul class="autocomplete__list">\n {{#each content.results}}\n <li>\n <a hawksearch-content="{{id}}" href="{{url}}">{{html title}}</a>\n </li>\n {{/each}}\n </ul>\n {{/if}}\n {{#if queries.results.length}}\n <span class="autocomplete__title autocomplete__title--queries">{{queries.title}}</span>\n <ul class="autocomplete__list">\n {{#each queries.results}}\n <li>\n <a hawksearch-query="{{query}}" href="{{url}}">{{query}}</a>\n </li>\n {{/each}}\n </ul>\n {{/if}}\n </div>\n {{/if}}\n </div>\n <div class="autocomplete__view-all">\n <a hawksearch-view-all>{{viewAllText}}</a>\n </div>\n</div>';
7315
+ const defaultHtml$t = '<div class="autocomplete">\n <div class="row">\n {{#if products.results.length}}\n <div class="column column--12 column-md--8">\n <span class="autocomplete__title autocomplete__title--products">{{products.title}}</span>\n <div class="row autocomplete__products">\n {{#each products.results}}\n <div class="column column--12 column-sm--4">\n <div class="autocomplete__product">\n <a hawksearch-product="{{id}}" href="{{url}}" class="autocomplete__product__image">\n <img hawksearch-image src="{{imageUrl}}" alt="" />\n </a>\n <span class="autocomplete__product__title">\n <a hawksearch-product="{{id}}" href="{{url}}">{{html title}}</a>\n </span>\n {{#if rating}}\n <hawksearch-rating rating="{{rating}}"></hawksearch-rating>\n {{/if}}\n {{#unless (eq price undefined)}}\n <div class="autocomplete__product__price" itemprop="offers" itemtype="http://schema.org/Offer" itemscope>\n {{#if (lt salePrice price)}}\n <span class="autocomplete__product__price__original">{{currency price}}</span>\n <span class="autocomplete__product__price__current" itemprop="price">{{currency salePrice}}</span>\n {{else}}\n <span class="autocomplete__product__price-__current" itemprop="price">{{currency price}}</span>\n {{/if}}\n </div>\n {{/unless}}\n <hawksearch-variant-selector></hawksearch-variant-selector>\n </div>\n </div>\n {{/each}}\n </div>\n </div>\n {{/if}}\n {{#if (or categories.results.length content.results.length queries.results.length)}}\n <div class="column column--12 column-md--4">\n {{#if productSuggestedQueries.results.length}}\n <span class="autocomplete__title autocomplete__title--queries">{{productSuggestedQueries.title}}</span>\n <ul class="autocomplete__list">\n {{#each productSuggestedQueries.results}}\n <li>\n <a hawksearch-query="{{query}}" href="{{url}}">{{query}}</a>\n </li>\n {{/each}}\n </ul>\n {{/if}}\n {{#if contentSuggestedQueries.results.length}}\n <span class="autocomplete__title autocomplete__title--queries">{{contentSuggestedQueries.title}}</span>\n <ul class="autocomplete__list">\n {{#each contentSuggestedQueries.results}}\n <li>\n <a hawksearch-query="{{query}}" href="{{url}}">{{query}}</a>\n </li>\n {{/each}}\n </ul>\n {{/if}}\n {{#if categories.results.length}}\n <span class="autocomplete__title autocomplete__title--categories">{{categories.title}}</span>\n <ul class="autocomplete__list">\n {{#each categories.results}}\n <li>\n <a hawksearch-category-field="{{field}}" hawksearch-category-value="{{value}}" href="{{url}}">{{html title}}</a>\n </li>\n {{/each}}\n </ul>\n {{/if}}\n {{#if content.results.length}}\n <span class="autocomplete__title autocomplete__title--content">{{content.title}}</span>\n <ul class="autocomplete__list">\n {{#each content.results}}\n <li>\n <a hawksearch-content="{{id}}" href="{{url}}">{{html title}}</a>\n </li>\n {{/each}}\n </ul>\n {{/if}}\n {{#if queries.results.length}}\n <span class="autocomplete__title autocomplete__title--queries">{{queries.title}}</span>\n <ul class="autocomplete__list">\n {{#each queries.results}}\n <li>\n <a hawksearch-query="{{query}}" href="{{url}}">{{query}}</a>\n </li>\n {{/each}}\n </ul>\n {{/if}}\n </div>\n {{/if}}\n </div>\n <div class="autocomplete__view-all">\n <a hawksearch-view-all>{{viewAllText}}</a>\n </div>\n</div>';
7316
7316
  class AutocompleteComponent extends BaseComponent {
7317
7317
  constructor() {
7318
7318
  super(...arguments);
7319
7319
  this.bindFromEvent = true;
7320
7320
  this.componentName = "autocomplete";
7321
- this.defaultHtml = defaultHtml$r;
7321
+ this.defaultHtml = defaultHtml$t;
7322
7322
  }
7323
7323
  renderContent() {
7324
7324
  var _a, _b, _c, _d, _e, _f, _g, _h;
@@ -7656,7 +7656,7 @@ function decodeNested(value) {
7656
7656
  function escapeRegExp(value) {
7657
7657
  return escapeRegExp$1(value);
7658
7658
  }
7659
- const defaultHtml$q = `<div class="checkbox-list-facet" {{attribute (concat 'style="max-height: ' maxHeight 'px;"') maxHeight}}>
7659
+ const defaultHtml$s = `<div class="checkbox-list-facet" {{attribute (concat 'style="max-height: ' maxHeight 'px;"') maxHeight}}>
7660
7660
  {{> facet-checkbox-list values}}
7661
7661
  {{#if showToggle}}
7662
7662
  <span hawksearch-facet-toggle class="link facet__toggle">{{strings.toggle}}</span>
@@ -7717,7 +7717,7 @@ class CheckboxListFacetComponent extends BaseFacetComponent {
7717
7717
  constructor() {
7718
7718
  super(...arguments);
7719
7719
  this.componentName = "checkbox-list-facet";
7720
- this.defaultHtml = defaultHtml$q;
7720
+ this.defaultHtml = defaultHtml$s;
7721
7721
  }
7722
7722
  registerHelpers() {
7723
7723
  super.registerHelpers();
@@ -7771,7 +7771,7 @@ class CheckboxListFacetComponent extends BaseFacetComponent {
7771
7771
  };
7772
7772
  }
7773
7773
  }
7774
- const defaultHtml$p = `<div class="color-facet">
7774
+ const defaultHtml$r = `<div class="color-facet">
7775
7775
  <div class="row row--tight color-facet__items">
7776
7776
  {{#each values}}
7777
7777
  {{#if visible}}
@@ -7806,7 +7806,7 @@ class ColorFacetComponent extends BaseFacetComponent {
7806
7806
  constructor() {
7807
7807
  super(...arguments);
7808
7808
  this.componentName = "color-facet";
7809
- this.defaultHtml = defaultHtml$p;
7809
+ this.defaultHtml = defaultHtml$r;
7810
7810
  }
7811
7811
  renderContent() {
7812
7812
  return !!this.data;
@@ -7832,12 +7832,12 @@ class ColorFacetComponent extends BaseFacetComponent {
7832
7832
  };
7833
7833
  }
7834
7834
  }
7835
- const defaultHtml$o = '<div class="date-range-facet">\n <div class="row">\n <div class="column column--6">\n <hawksearch-date-picker\n hawksearch-start\n value="{{startValue}}"\n min="{{minValue}}"\n max="{{endValue}}"\n label="{{strings.startDate}}"\n ></hawksearch-date-picker>\n </div>\n <div class="column column--6">\n <hawksearch-date-picker\n hawksearch-end\n value="{{endValue}}"\n min="{{startValue}}"\n max="{{maxValue}}"\n label="{{strings.endDate}}"\n ></hawksearch-date-picker>\n </div>\n </div>\n</div>';
7835
+ const defaultHtml$q = '<div class="date-range-facet">\n <div class="row">\n <div class="column column--6">\n <hawksearch-date-picker\n hawksearch-start\n value="{{startValue}}"\n min="{{minValue}}"\n max="{{endValue}}"\n label="{{strings.startDate}}"\n ></hawksearch-date-picker>\n </div>\n <div class="column column--6">\n <hawksearch-date-picker\n hawksearch-end\n value="{{endValue}}"\n min="{{startValue}}"\n max="{{maxValue}}"\n label="{{strings.endDate}}"\n ></hawksearch-date-picker>\n </div>\n </div>\n</div>';
7836
7836
  class DateRangeFacetComponent extends BaseFacetComponent {
7837
7837
  constructor() {
7838
7838
  super(...arguments);
7839
7839
  this.componentName = "date-range-facet";
7840
- this.defaultHtml = defaultHtml$o;
7840
+ this.defaultHtml = defaultHtml$q;
7841
7841
  }
7842
7842
  get range() {
7843
7843
  var _a, _b;
@@ -7914,7 +7914,7 @@ class DateRangeFacetComponent extends BaseFacetComponent {
7914
7914
  HawkSearch.services.search.setFacetValue(this.data.field, `${(start == null ? void 0 : start.toISOString()) ?? ""},${(end == null ? void 0 : end.toISOString()) ?? ""}`);
7915
7915
  }
7916
7916
  }
7917
- const defaultHtml$n = `<div class="link-list-facet" {{attribute (concat 'style="max-height: ' maxHeight 'px;"') maxHeight}}>
7917
+ const defaultHtml$p = `<div class="link-list-facet" {{attribute (concat 'style="max-height: ' maxHeight 'px;"') maxHeight}}>
7918
7918
  <ul class="link-list-facet__list">
7919
7919
  {{#each values}}
7920
7920
  {{#if visible}}
@@ -7941,7 +7941,7 @@ class LinkListFacetComponent extends BaseFacetComponent {
7941
7941
  constructor() {
7942
7942
  super(...arguments);
7943
7943
  this.componentName = "link-list-facet";
7944
- this.defaultHtml = defaultHtml$n;
7944
+ this.defaultHtml = defaultHtml$p;
7945
7945
  }
7946
7946
  renderContent() {
7947
7947
  return !!this.data;
@@ -7966,12 +7966,12 @@ class LinkListFacetComponent extends BaseFacetComponent {
7966
7966
  };
7967
7967
  }
7968
7968
  }
7969
- const defaultHtml$m = '<div class="numeric-range-facet">\n <div class="row">\n <div class="column column--6">\n <input type="number" hawksearch-start value="{{start}}" min="{{min}}" max="{{end}}" aria-label="{{strings.minimum}}" />\n </div>\n <div class="column column--6">\n <input type="number" hawksearch-end value="{{end}}" min="{{start}}" max="{{max}}" aria-label="{{strings.maximum}}" />\n </div>\n </div>\n</div>';
7969
+ const defaultHtml$o = '<div class="numeric-range-facet">\n <div class="row">\n <div class="column column--6">\n <input type="number" hawksearch-start value="{{start}}" min="{{min}}" max="{{end}}" aria-label="{{strings.minimum}}" />\n </div>\n <div class="column column--6">\n <input type="number" hawksearch-end value="{{end}}" min="{{start}}" max="{{max}}" aria-label="{{strings.maximum}}" />\n </div>\n </div>\n</div>';
7970
7970
  class NumericRangeFacetComponent extends BaseFacetComponent {
7971
7971
  constructor() {
7972
7972
  super(...arguments);
7973
7973
  this.componentName = "numeric-range-facet";
7974
- this.defaultHtml = defaultHtml$m;
7974
+ this.defaultHtml = defaultHtml$o;
7975
7975
  }
7976
7976
  get range() {
7977
7977
  var _a, _b;
@@ -8035,12 +8035,12 @@ class NumericRangeFacetComponent extends BaseFacetComponent {
8035
8035
  HawkSearch.services.search.setFacetValue(this.data.field, `${start},${end}`);
8036
8036
  }
8037
8037
  }
8038
- const defaultHtml$l = '<div class="range-slider-facet">\n <div class="row">\n <div class="column column--6">\n <input type="number" hawksearch-start value="{{start}}" min="{{min}}" max="{{end}}" aria-label="{{strings.minimum}}" />\n </div>\n <div class="column column--6">\n <input type="number" hawksearch-end value="{{end}}" min="{{start}}" max="{{max}}" aria-label="{{strings.maximum}}" />\n </div>\n </div>\n <hawksearch-range-slider start="{{sliderStart}}" end="{{sliderEnd}}"></hawksearch-range-slider>\n</div>';
8038
+ const defaultHtml$n = '<div class="range-slider-facet">\n <div class="row">\n <div class="column column--6">\n <input type="number" hawksearch-start value="{{start}}" min="{{min}}" max="{{end}}" aria-label="{{strings.minimum}}" />\n </div>\n <div class="column column--6">\n <input type="number" hawksearch-end value="{{end}}" min="{{start}}" max="{{max}}" aria-label="{{strings.maximum}}" />\n </div>\n </div>\n <hawksearch-range-slider start="{{sliderStart}}" end="{{sliderEnd}}"></hawksearch-range-slider>\n</div>';
8039
8039
  class RangeSliderFacetComponent extends BaseFacetComponent {
8040
8040
  constructor() {
8041
8041
  super(...arguments);
8042
8042
  this.componentName = "range-slider-facet";
8043
- this.defaultHtml = defaultHtml$l;
8043
+ this.defaultHtml = defaultHtml$n;
8044
8044
  }
8045
8045
  get range() {
8046
8046
  var _a, _b;
@@ -8129,12 +8129,12 @@ class RangeSliderFacetComponent extends BaseFacetComponent {
8129
8129
  HawkSearch.services.search.setFacetValue(this.data.field, `${start.toFixed(2)},${end.toFixed(2)}`);
8130
8130
  }
8131
8131
  }
8132
- const defaultHtml$k = '<div class="recent-searches-facet">\n <ul class="recent-searches-facet__list">\n {{#each values}}\n <li class="recent-searches-facet__list__item">\n <a hawksearch-query="{{this}}" class="facet__value">{{this}}</a>\n </li>\n {{/each}}\n </ul>\n</div>';
8132
+ const defaultHtml$m = '<div class="recent-searches-facet">\n <ul class="recent-searches-facet__list">\n {{#each values}}\n <li class="recent-searches-facet__list__item">\n <a hawksearch-query="{{this}}" class="facet__value">{{this}}</a>\n </li>\n {{/each}}\n </ul>\n</div>';
8133
8133
  class RecentSearchesFacetComponent extends BaseFacetComponent {
8134
8134
  constructor() {
8135
8135
  super(...arguments);
8136
8136
  this.componentName = "recent-searches-facet";
8137
- this.defaultHtml = defaultHtml$k;
8137
+ this.defaultHtml = defaultHtml$m;
8138
8138
  }
8139
8139
  renderContent() {
8140
8140
  var _a, _b;
@@ -8160,12 +8160,12 @@ class RecentSearchesFacetComponent extends BaseFacetComponent {
8160
8160
  });
8161
8161
  }
8162
8162
  }
8163
- const defaultHtml$j = '<div class="related-searches-facet">\n <ul class="related-searches-facet__list">\n {{#each values}}\n <li class="related-searches-facet__list__item">\n <a hawksearch-query="{{this}}" class="facet__value">{{this}}</a>\n </li>\n {{/each}}\n </ul>\n</div>';
8163
+ const defaultHtml$l = '<div class="related-searches-facet">\n <ul class="related-searches-facet__list">\n {{#each values}}\n <li class="related-searches-facet__list__item">\n <a hawksearch-query="{{this}}" class="facet__value">{{this}}</a>\n </li>\n {{/each}}\n </ul>\n</div>';
8164
8164
  class RelatedSearchesFacetComponent extends BaseFacetComponent {
8165
8165
  constructor() {
8166
8166
  super(...arguments);
8167
8167
  this.componentName = "related-searches-facet";
8168
- this.defaultHtml = defaultHtml$j;
8168
+ this.defaultHtml = defaultHtml$l;
8169
8169
  }
8170
8170
  renderContent() {
8171
8171
  var _a, _b;
@@ -8191,12 +8191,12 @@ class RelatedSearchesFacetComponent extends BaseFacetComponent {
8191
8191
  });
8192
8192
  }
8193
8193
  }
8194
- const defaultHtml$i = '<div class="search-within-facet">\n <input type="text" hawksearch-input value="{{value}}" class="search-within-facet__input" aria-label="{{strings.label}}" />\n</div>';
8194
+ const defaultHtml$k = '<div class="search-within-facet">\n <input type="text" hawksearch-input value="{{value}}" class="search-within-facet__input" aria-label="{{strings.label}}" />\n</div>';
8195
8195
  class SearchWithinFacetComponent extends BaseFacetComponent {
8196
8196
  constructor() {
8197
8197
  super(...arguments);
8198
8198
  this.componentName = "search-within-facet";
8199
- this.defaultHtml = defaultHtml$i;
8199
+ this.defaultHtml = defaultHtml$k;
8200
8200
  }
8201
8201
  renderContent() {
8202
8202
  return !!this.data;
@@ -8222,7 +8222,7 @@ class SearchWithinFacetComponent extends BaseFacetComponent {
8222
8222
  });
8223
8223
  }
8224
8224
  }
8225
- const defaultHtml$h = `<div class="size-facet">
8225
+ const defaultHtml$j = `<div class="size-facet">
8226
8226
  <div class="row row--tight size-facet__items">
8227
8227
  {{#each values}}
8228
8228
  {{#if visible}}
@@ -8257,7 +8257,7 @@ class SizeFacetComponent extends BaseFacetComponent {
8257
8257
  constructor() {
8258
8258
  super(...arguments);
8259
8259
  this.componentName = "size-facet";
8260
- this.defaultHtml = defaultHtml$h;
8260
+ this.defaultHtml = defaultHtml$j;
8261
8261
  }
8262
8262
  renderContent() {
8263
8263
  return !!this.data;
@@ -8283,7 +8283,7 @@ class SizeFacetComponent extends BaseFacetComponent {
8283
8283
  };
8284
8284
  }
8285
8285
  }
8286
- const defaultHtml$g = `<div class="facet">
8286
+ const defaultHtml$i = `<div class="facet">
8287
8287
  <div hawksearch-facet-heading class="facet__heading{{attribute ' facet__heading--collapsible' collapsible}}">
8288
8288
  {{title}}
8289
8289
  {{#if tooltip}}
@@ -8335,7 +8335,7 @@ class FacetWrapperComponent extends BaseComponent {
8335
8335
  constructor() {
8336
8336
  super(...arguments);
8337
8337
  this.componentName = "facet-wrapper";
8338
- this.defaultHtml = defaultHtml$g;
8338
+ this.defaultHtml = defaultHtml$i;
8339
8339
  this.bindFromEvent = false;
8340
8340
  }
8341
8341
  renderContent() {
@@ -8386,7 +8386,7 @@ class FacetWrapperComponent extends BaseComponent {
8386
8386
  });
8387
8387
  }
8388
8388
  }
8389
- const defaultHtml$f = `<div class="facets{{attribute ' facets--expanded' expanded}}">
8389
+ const defaultHtml$h = `<div class="facets{{attribute ' facets--expanded' expanded}}">
8390
8390
  <div hawksearch-mobile-toggle class="facets__heading">
8391
8391
  {{strings.heading}}
8392
8392
  <hawksearch-icon name="{{if-else expanded 'chevron-down' 'chevron-right'}}" size="1.5rem" class="facets__heading__mobile-toggle"></hawksearch-icon>
@@ -8401,7 +8401,7 @@ class FacetsListComponent extends BaseComponent {
8401
8401
  constructor() {
8402
8402
  super(...arguments);
8403
8403
  this.componentName = "facets-list";
8404
- this.defaultHtml = defaultHtml$f;
8404
+ this.defaultHtml = defaultHtml$h;
8405
8405
  this.bindFromEvent = true;
8406
8406
  this.state = {
8407
8407
  expanded: false
@@ -8484,12 +8484,12 @@ class FacetsListComponent extends BaseComponent {
8484
8484
  });
8485
8485
  }
8486
8486
  }
8487
- const defaultHtml$e = '<div class="modified-query">\n <p>\n {{strings.showingResultsFor}}\n <span class="modified-query__modified">{{modifiedQuery}}</span>.\n {{strings.searchInsteadFor}}\n <a class="modified-query__original" hawksearch-query="{{query}}">{{query}}</a>.\n </p>\n</div>';
8487
+ const defaultHtml$g = '<div class="modified-query">\n <p>\n {{strings.showingResultsFor}}\n <span class="modified-query__modified">{{modifiedQuery}}</span>.\n {{strings.searchInsteadFor}}\n <a class="modified-query__original" hawksearch-query="{{query}}">{{query}}</a>.\n </p>\n</div>';
8488
8488
  class ModifiedQueryComponent extends BaseComponent {
8489
8489
  constructor() {
8490
8490
  super(...arguments);
8491
8491
  this.componentName = "modified-query";
8492
- this.defaultHtml = defaultHtml$e;
8492
+ this.defaultHtml = defaultHtml$g;
8493
8493
  this.bindFromEvent = true;
8494
8494
  }
8495
8495
  renderContent() {
@@ -8521,12 +8521,12 @@ class ModifiedQueryComponent extends BaseComponent {
8521
8521
  });
8522
8522
  }
8523
8523
  }
8524
- const defaultHtml$d = '<div class="page-size">\n <select hawksearch-page-size>\n {{#each options}}\n {{#if selected}}\n <option value="{{pageSize}}" selected>{{title}}</option>\n {{else}}\n <option value="{{pageSize}}">{{title}}</option>\n {{/if}}\n {{/each}}\n </select>\n</div>';
8524
+ const defaultHtml$f = '<div class="page-size">\n <select hawksearch-page-size>\n {{#each options}}\n {{#if selected}}\n <option value="{{pageSize}}" selected>{{title}}</option>\n {{else}}\n <option value="{{pageSize}}">{{title}}</option>\n {{/if}}\n {{/each}}\n </select>\n</div>';
8525
8525
  class PageSizeComponent extends BaseComponent {
8526
8526
  constructor() {
8527
8527
  super(...arguments);
8528
8528
  this.componentName = "page-size";
8529
- this.defaultHtml = defaultHtml$d;
8529
+ this.defaultHtml = defaultHtml$f;
8530
8530
  this.bindFromEvent = true;
8531
8531
  }
8532
8532
  renderContent() {
@@ -8550,12 +8550,12 @@ class PageSizeComponent extends BaseComponent {
8550
8550
  });
8551
8551
  }
8552
8552
  }
8553
- const defaultHtml$c = '<div class="pagination">\n {{#if strings.summary}}\n <div class="pagination__summary">{{strings.summary}}</div>\n {{/if}}\n <div class="pagination__pages">\n {{#if displayFirstLink}}\n <span hawksearch-page="1" class="link pagination__page pagination__page--first" title="{{strings.first}}">\n <hawksearch-icon name="chevron-back" size="1.2em"></hawksearch-icon>\n </span>\n {{/if}}\n {{#if displayPreviousLink}}\n <a\n hawksearch-page="{{subtract page 1}}"\n rel="prev"\n href="{{pageUrl (subtract page 1)}}"\n class="pagination__page pagination__page--previous"\n title="{{strings.previous}}"\n >\n <hawksearch-icon name="chevron-left" size="1.2em"></hawksearch-icon>\n </a>\n {{/if}}\n {{#each pages}}\n {{#if (eq this @root.page)}}\n <span class="pagination__page pagination__page--selected">{{this}}</span>\n {{else}}\n <a hawksearch-page="{{this}}" href="{{pageUrl this}}" class="pagination__page">{{this}}</a>\n {{/if}}\n {{/each}}\n {{#if displayNextLink}}\n <a\n hawksearch-page="{{add page 1}}"\n rel="next"\n href="{{pageUrl (add page 1)}}"\n class="pagination__page pagination__page--next"\n title="{{strings.next}}"\n >\n <hawksearch-icon name="chevron-right" size="1.2em"></hawksearch-icon>\n </a>\n {{/if}}\n {{#if displayLastLink}}\n <span hawksearch-page="{{totalPages}}" class="link pagination__page pagination__page--last" title="{{strings.last}}">\n <hawksearch-icon name="chevron-forward" size="1.2em"></hawksearch-icon>\n </span>\n {{/if}}\n </div>\n</div>';
8553
+ const defaultHtml$e = '<div class="pagination">\n {{#if strings.summary}}\n <div class="pagination__summary">{{strings.summary}}</div>\n {{/if}}\n <div class="pagination__pages">\n {{#if displayFirstLink}}\n <span hawksearch-page="1" class="link pagination__page pagination__page--first" title="{{strings.first}}">\n <hawksearch-icon name="chevron-back" size="1.2em"></hawksearch-icon>\n </span>\n {{/if}}\n {{#if displayPreviousLink}}\n <a\n hawksearch-page="{{subtract page 1}}"\n rel="prev"\n href="{{pageUrl (subtract page 1)}}"\n class="pagination__page pagination__page--previous"\n title="{{strings.previous}}"\n >\n <hawksearch-icon name="chevron-left" size="1.2em"></hawksearch-icon>\n </a>\n {{/if}}\n {{#each pages}}\n {{#if (eq this @root.page)}}\n <span class="pagination__page pagination__page--selected">{{this}}</span>\n {{else}}\n <a hawksearch-page="{{this}}" href="{{pageUrl this}}" class="pagination__page">{{this}}</a>\n {{/if}}\n {{/each}}\n {{#if displayNextLink}}\n <a\n hawksearch-page="{{add page 1}}"\n rel="next"\n href="{{pageUrl (add page 1)}}"\n class="pagination__page pagination__page--next"\n title="{{strings.next}}"\n >\n <hawksearch-icon name="chevron-right" size="1.2em"></hawksearch-icon>\n </a>\n {{/if}}\n {{#if displayLastLink}}\n <span hawksearch-page="{{totalPages}}" class="link pagination__page pagination__page--last" title="{{strings.last}}">\n <hawksearch-icon name="chevron-forward" size="1.2em"></hawksearch-icon>\n </span>\n {{/if}}\n </div>\n</div>';
8554
8554
  class PaginationComponent extends BaseComponent {
8555
8555
  constructor() {
8556
8556
  super(...arguments);
8557
8557
  this.componentName = "pagination";
8558
- this.defaultHtml = defaultHtml$c;
8558
+ this.defaultHtml = defaultHtml$e;
8559
8559
  this.bindFromEvent = true;
8560
8560
  this.defaultMaxPageLinks = 9;
8561
8561
  }
@@ -8645,12 +8645,12 @@ class PaginationComponent extends BaseComponent {
8645
8645
  return pages;
8646
8646
  }
8647
8647
  }
8648
- const defaultHtml$b = '<div class="query-suggestions">\n <p>{{query-suggestions querySuggestions}}</p>\n</div>';
8648
+ const defaultHtml$d = '<div class="query-suggestions">\n <p>{{query-suggestions querySuggestions}}</p>\n</div>';
8649
8649
  class QuerySuggestionsComponent extends BaseComponent {
8650
8650
  constructor() {
8651
8651
  super(...arguments);
8652
8652
  this.componentName = "query-suggestions";
8653
- this.defaultHtml = defaultHtml$b;
8653
+ this.defaultHtml = defaultHtml$d;
8654
8654
  this.bindFromEvent = true;
8655
8655
  }
8656
8656
  registerHelpers() {
@@ -8697,12 +8697,12 @@ class QuerySuggestionsComponent extends BaseComponent {
8697
8697
  });
8698
8698
  }
8699
8699
  }
8700
- const defaultHtml$a = '<div class="search-field">\n <input type="text" hawksearch-input value="{{query}}" placeholder="{{strings.placeholder}}" />\n <hawksearch-autocomplete></hawksearch-autocomplete>\n</div>';
8700
+ const defaultHtml$c = '<div class="search-field">\n <input type="text" hawksearch-input value="{{query}}" placeholder="{{strings.placeholder}}" />\n <hawksearch-autocomplete></hawksearch-autocomplete>\n</div>';
8701
8701
  class SearchFieldComponent extends BaseComponent {
8702
8702
  constructor() {
8703
8703
  super(...arguments);
8704
8704
  this.componentName = "search-field";
8705
- this.defaultHtml = defaultHtml$a;
8705
+ this.defaultHtml = defaultHtml$c;
8706
8706
  this.bindFromEvent = true;
8707
8707
  this.previousValue = "";
8708
8708
  }
@@ -8810,12 +8810,12 @@ class SearchFieldComponent extends BaseComponent {
8810
8810
  HawkSearch.services.autocomplete.bindComponent(this.defaultAutocompleteResponse);
8811
8811
  }
8812
8812
  }
8813
- const defaultHtml$9 = '<div class="search-field">\n <input type="text" hawksearch-input hawksearch-concept-search value="{{query}}" placeholder="{{strings.placeholder}}" />\n</div>';
8813
+ const defaultHtml$b = '<div class="search-field">\n <input type="text" hawksearch-input hawksearch-concept-search value="{{query}}" placeholder="{{strings.placeholder}}" />\n</div>';
8814
8814
  class ConceptSearchFieldComponent extends BaseComponent {
8815
8815
  constructor() {
8816
8816
  super(...arguments);
8817
8817
  this.componentName = "conceptsearch-field";
8818
- this.defaultHtml = defaultHtml$9;
8818
+ this.defaultHtml = defaultHtml$b;
8819
8819
  this.bindFromEvent = true;
8820
8820
  this.previousValue = "";
8821
8821
  }
@@ -8877,12 +8877,169 @@ class ConceptSearchFieldComponent extends BaseComponent {
8877
8877
  HawkSearch.services.search.query({ queryString: query, requestType: "ConceptSearch" });
8878
8878
  }
8879
8879
  }
8880
- const defaultHtml$8 = '<div class="search-field">\n <input type="text" hawksearch-input hawksearch-imagesearch-field value="{{query}}" placeholder="{{strings.placeholder}}" />\n</div>';
8880
+ const defaultHtml$a = '<div class="conversationalsearch">\n <div class="conversationalsearch__body">\n <ul class="conversationalsearch__message-list" hawksearch-message-list>\n {{#each messages}}\n {{#if (eq role "user")}}\n <li hawksearch-message-item class="conversationalsearch__message message--sent">\n <p>{{content}}</p>\n </li>\n {{else if (eq role "assistant")}}\n <li hawksearch-message-item class="conversationalsearch__message message--received">\n <span class="message__icon">\n <hawksearch-icon name="sparkles" size="16"></hawksearch-icon>\n </span>\n <p>{{content}}</p>\n </li>\n {{/if}}\n {{/each}}\n {{#if busy}}\n <li class="conversationalsearch__message message--received">\n <div class="spinner"></div>\n <p>...</p>\n </li>\n {{/if}}\n </ul>\n </div>\n <div class="conversationalsearch__footer">\n <textarea hawksearch-message-input rows="0" cols="17" placeholder="Enter a message..."></textarea>\n <button hawksearch-message-submit class="conversationalsearch__send-button" type="submit">\n <hawksearch-icon name="send" size="16"></hawksearch-icon>\n </button>\n <button hawksearch-message-reset class="conversationalsearch__reset-button" type="reset">\n <hawksearch-icon name="reset" size="16"></hawksearch-icon>\n </button>\n </div>\n</div>';
8881
+ class ConversationalSearchComponent extends BaseComponent {
8882
+ constructor() {
8883
+ super(...arguments);
8884
+ this.componentName = "conversationalsearch";
8885
+ this.defaultHtml = defaultHtml$a;
8886
+ this.bindFromEvent = true;
8887
+ this.firstMessage = true;
8888
+ this.busy = false;
8889
+ this.currentQuery = "";
8890
+ this.currentResponse = [];
8891
+ this.currentMessages = [];
8892
+ this.composeResponseObject = (items) => {
8893
+ return items.map((item) => item.description);
8894
+ };
8895
+ }
8896
+ get promptInstructions() {
8897
+ var _a, _b;
8898
+ return ((_b = (_a = this.configuration) == null ? void 0 : _a.prompt) == null ? void 0 : _b.instructions) || `
8899
+ You are a recommendation agent, specialized in finding the perfect match for a user.
8900
+ Answer the question from the user extensivelly.
8901
+ You will be provided with an array of products as DATA.
8902
+ Create 2 suggested questions that a user could ask about this data that follows.
8903
+ Use new lines to seperate them. Make them short.
8904
+ Say something like 'Try one of these suggested questions:' followed by the questions you generate.
8905
+ Only use the information passed to you as DATA to answer the questions asked.
8906
+ Do not provide any information not passed in as DATA.
8907
+ `;
8908
+ }
8909
+ connectedCallback() {
8910
+ super.connectedCallback();
8911
+ this.afterSearchExecutedEventHandler = (event) => {
8912
+ var _a, _b, _c;
8913
+ if (((_a = HawkSearch.searchResponse) == null ? void 0 : _a.results) && ((_b = HawkSearch.searchResponse) == null ? void 0 : _b.results.length) > 0) {
8914
+ this.currentResponse = this.composeResponseObject((_c = HawkSearch.searchResponse) == null ? void 0 : _c.results);
8915
+ }
8916
+ };
8917
+ window.addEventListener("hawksearch:after-search-executed", this.afterSearchExecutedEventHandler);
8918
+ }
8919
+ disconnectedCallback() {
8920
+ super.disconnectedCallback();
8921
+ window.removeEventListener("hawksearch:after-search-executed", this.afterSearchExecutedEventHandler);
8922
+ }
8923
+ getContentModel() {
8924
+ var _a, _b, _c;
8925
+ return {
8926
+ query: (_a = this.data) == null ? void 0 : _a.query,
8927
+ strings: {
8928
+ placeholder: ((_c = (_b = this.configuration) == null ? void 0 : _b.strings) == null ? void 0 : _c.placeholder) ?? "Enter a message..."
8929
+ },
8930
+ busy: this.busy || false,
8931
+ messages: this.currentMessages || []
8932
+ };
8933
+ }
8934
+ onRender() {
8935
+ super.onRender();
8936
+ const enterKeys = ["Enter", "NumpadEnter"];
8937
+ this.currentQuery = "";
8938
+ this.rootElement.querySelectorAll('[hawksearch-message-reset][type="reset"]').forEach((e) => {
8939
+ e.addEventListener("click", (event) => {
8940
+ if (this.currentMessages.length === 0) {
8941
+ return;
8942
+ }
8943
+ this.resetConversation();
8944
+ });
8945
+ });
8946
+ this.rootElement.querySelectorAll('[hawksearch-message-submit][type="submit"]').forEach((e) => {
8947
+ e.addEventListener("click", (event) => {
8948
+ if (!this.currentQuery || this.currentQuery.length < 2) {
8949
+ return;
8950
+ }
8951
+ this.sendMessage();
8952
+ });
8953
+ });
8954
+ this.rootElement.querySelectorAll("[hawksearch-message-list]").forEach((e) => {
8955
+ e.scrollTo(0, e.scrollHeight);
8956
+ });
8957
+ this.rootElement.querySelectorAll("[hawksearch-message-input]").forEach((e) => {
8958
+ e.focus();
8959
+ e.addEventListener("change", (event) => {
8960
+ const element = e;
8961
+ const query = element.value.trim();
8962
+ this.currentQuery = query;
8963
+ });
8964
+ e.addEventListener("keydown", (event) => {
8965
+ if (enterKeys.includes(event.code) && !event.shiftKey) {
8966
+ event.preventDefault();
8967
+ }
8968
+ });
8969
+ const onKeyDown = (event) => {
8970
+ const element = e;
8971
+ const query = element.value.trim();
8972
+ this.currentQuery = query;
8973
+ if (!enterKeys.includes(event.code)) {
8974
+ return;
8975
+ }
8976
+ if (enterKeys.includes(event.code) && !event.shiftKey) {
8977
+ event.preventDefault();
8978
+ this.handleMessageSubmit();
8979
+ } else if (enterKeys.includes(event.code) && event.shiftKey)
8980
+ ;
8981
+ };
8982
+ e.addEventListener("keyup", debounce(onKeyDown, 250));
8983
+ });
8984
+ }
8985
+ appendMessage(message) {
8986
+ this.currentMessages.push(message);
8987
+ }
8988
+ handleMessageSubmit() {
8989
+ if (!this.currentQuery || this.currentQuery.length < 3) {
8990
+ return;
8991
+ }
8992
+ this.sendMessage();
8993
+ }
8994
+ async sendMessage() {
8995
+ if (!this.currentQuery) {
8996
+ return;
8997
+ }
8998
+ let data = "";
8999
+ if (this.firstMessage) {
9000
+ data = this.currentResponse;
9001
+ this.appendMessage({
9002
+ role: "system",
9003
+ content: this.promptInstructions
9004
+ });
9005
+ this.appendMessage({
9006
+ role: "system",
9007
+ content: `DATA: ${data}`
9008
+ });
9009
+ this.firstMessage = false;
9010
+ } else {
9011
+ this.appendMessage({
9012
+ role: "system",
9013
+ content: `Include this DATA as well: ${this.currentResponse}`
9014
+ });
9015
+ }
9016
+ this.appendMessage({ role: "user", content: this.currentQuery });
9017
+ this.busy = true;
9018
+ const response = await HawkSearch.services.conversational.query(this.currentMessages).then((response2) => {
9019
+ return response2;
9020
+ }).catch((error) => {
9021
+ return false;
9022
+ });
9023
+ if (response) {
9024
+ this.currentMessages.push(response);
9025
+ } else {
9026
+ this.appendMessage({ role: "assistant", content: "Sorry, something went wrong." });
9027
+ }
9028
+ this.busy = false;
9029
+ this.render();
9030
+ }
9031
+ resetConversation() {
9032
+ this.currentMessages = [];
9033
+ this.firstMessage = true;
9034
+ this.render();
9035
+ }
9036
+ }
9037
+ const defaultHtml$9 = '<div class="search-field">\n <input type="text" hawksearch-input hawksearch-imagesearch-field value="{{query}}" placeholder="{{strings.placeholder}}" />\n</div>';
8881
9038
  class ImageSearchFieldComponent extends BaseComponent {
8882
9039
  constructor() {
8883
9040
  super(...arguments);
8884
9041
  this.componentName = "imagesearch-field";
8885
- this.defaultHtml = defaultHtml$8;
9042
+ this.defaultHtml = defaultHtml$9;
8886
9043
  this.bindFromEvent = true;
8887
9044
  this.previousValue = "";
8888
9045
  }
@@ -8944,12 +9101,12 @@ class ImageSearchFieldComponent extends BaseComponent {
8944
9101
  HawkSearch.services.search.query({ queryString: query, requestType: "ImageSearch" });
8945
9102
  }
8946
9103
  }
8947
- const defaultHtml$7 = '<div class="search-results-list__item search-results-list__item--{{type}}">\n {{#if pinned}}\n <span class="search-results-list__item__pin">\n <hawksearch-icon name="star"></hawksearch-icon>\n </span>\n {{/if}}\n {{#if (eq type "product")}}\n {{#if (lt salePrice price)}}\n <span class="search-results-list__item__sale-indicator">{{strings.sale}}</span>\n {{/if}}\n <a hawksearch-link href="{{url}}" class="search-results-list__item__image" aria-label="{{title}}">\n <img hawksearch-image src="{{imageUrl}}" alt="" />\n </a>\n <div class="search-results-list__item__title">\n <a hawksearch-link href="{{url}}">{{title}}</a>\n </div>\n {{#if rating}}\n <hawksearch-rating rating="{{rating}}"></hawksearch-rating>\n {{/if}}\n {{#unless (eq price undefined)}}\n <div class="search-results-list__item__price" itemprop="offers" itemtype="http://schema.org/Offer" itemscope>\n {{#if (lt salePrice price)}}\n <span class="search-results-list__item__price__original">{{currency price}}</span>\n <span class="search-results-list__item__price__current" itemprop="price">{{currency salePrice}}</span>\n {{else}}\n <span class="search-results-list__item__price-__current" itemprop="price">{{currency price}}</span>\n {{/if}}\n </div>\n {{/unless}}\n <hawksearch-variant-selector></hawksearch-variant-selector>\n {{else}}\n <div class="row">\n {{#if imageUrl}}\n <div class="column column--12 column-sm--4">\n <a hawksearch-link href="{{url}}">\n <img hawksearch-image src="{{imageUrl}}" alt="" />\n </a>\n </div>\n {{/if}}\n <div class="column column--12 column-sm--8 flex-align-self-sm-center">\n <div class="search-results-list__item__title">\n <a hawksearch-link href="{{url}}">{{title}}</a>\n </div>\n {{#if description}}\n <p>{{description}}</p>\n {{/if}}\n </div>\n </div>\n {{/if}}\n</div>';
9104
+ const defaultHtml$8 = '<div class="search-results-list__item search-results-list__item--{{type}}">\n {{#if pinned}}\n <span class="search-results-list__item__pin">\n <hawksearch-icon name="star"></hawksearch-icon>\n </span>\n {{/if}}\n {{#if (eq type "product")}}\n {{#if (lt salePrice price)}}\n <span class="search-results-list__item__sale-indicator">{{strings.sale}}</span>\n {{/if}}\n <a hawksearch-link href="{{url}}" class="search-results-list__item__image" aria-label="{{title}}">\n <img hawksearch-image src="{{imageUrl}}" alt="" />\n </a>\n <div class="search-results-list__item__title">\n <a hawksearch-link href="{{url}}">{{title}}</a>\n </div>\n {{#if rating}}\n <hawksearch-rating rating="{{rating}}"></hawksearch-rating>\n {{/if}}\n {{#unless (eq price undefined)}}\n <div class="search-results-list__item__price" itemprop="offers" itemtype="http://schema.org/Offer" itemscope>\n {{#if (lt salePrice price)}}\n <span class="search-results-list__item__price__original">{{currency price}}</span>\n <span class="search-results-list__item__price__current" itemprop="price">{{currency salePrice}}</span>\n {{else}}\n <span class="search-results-list__item__price-__current" itemprop="price">{{currency price}}</span>\n {{/if}}\n </div>\n {{/unless}}\n <hawksearch-variant-selector></hawksearch-variant-selector>\n {{else}}\n <div class="row">\n {{#if imageUrl}}\n <div class="column column--12 column-sm--4">\n <a hawksearch-link href="{{url}}">\n <img hawksearch-image src="{{imageUrl}}" alt="" />\n </a>\n </div>\n {{/if}}\n <div class="column column--12 column-sm--8 flex-align-self-sm-center">\n <div class="search-results-list__item__title">\n <a hawksearch-link href="{{url}}">{{title}}</a>\n </div>\n {{#if description}}\n <p>{{description}}</p>\n {{/if}}\n </div>\n </div>\n {{/if}}\n</div>';
8948
9105
  class SearchResultsItemComponent extends BaseComponent {
8949
9106
  constructor() {
8950
9107
  super(...arguments);
8951
9108
  this.componentName = "search-results-item";
8952
- this.defaultHtml = defaultHtml$7;
9109
+ this.defaultHtml = defaultHtml$8;
8953
9110
  this.bindFromEvent = false;
8954
9111
  }
8955
9112
  renderContent() {
@@ -9008,12 +9165,12 @@ class SearchResultsItemComponent extends BaseComponent {
9008
9165
  });
9009
9166
  }
9010
9167
  }
9011
- const defaultHtml$6 = '<div class="row search-results-list">\n {{#each items}}\n {{#if (eq type "content")}}\n <div class="column column--12">\n <hawksearch-search-results-item></hawksearch-search-results-item>\n </div>\n {{else}}\n <div class="column column--12 column-sm--6 column-lg--4">\n <hawksearch-search-results-item></hawksearch-search-results-item>\n </div>\n {{/if}}\n {{/each}}\n</div>';
9168
+ const defaultHtml$7 = '<div class="row search-results-list">\n {{#each items}}\n {{#if (eq type "content")}}\n <div class="column column--12">\n <hawksearch-search-results-item></hawksearch-search-results-item>\n </div>\n {{else}}\n <div class="column column--12 column-sm--6 column-lg--4">\n <hawksearch-search-results-item></hawksearch-search-results-item>\n </div>\n {{/if}}\n {{/each}}\n</div>';
9012
9169
  class SearchResultsListComponent extends BaseComponent {
9013
9170
  constructor() {
9014
9171
  super(...arguments);
9015
9172
  this.componentName = "search-results-list";
9016
- this.defaultHtml = defaultHtml$6;
9173
+ this.defaultHtml = defaultHtml$7;
9017
9174
  this.bindFromEvent = true;
9018
9175
  }
9019
9176
  renderContent() {
@@ -9033,12 +9190,12 @@ class SearchResultsListComponent extends BaseComponent {
9033
9190
  });
9034
9191
  }
9035
9192
  }
9036
- const defaultHtml$5 = '<hawksearch-modified-query></hawksearch-modified-query>\n<hawksearch-query-suggestions></hawksearch-query-suggestions>\n<div class="row">\n <div class="column column--12 column-md--4">\n <hawksearch-content-zone name="LeftTop"></hawksearch-content-zone>\n <hawksearch-facets-list></hawksearch-facets-list>\n <hawksearch-content-zone name="LeftBottom"></hawksearch-content-zone>\n </div>\n <div class="column column--12 column-md--8">\n <hawksearch-content-zone name="Top"></hawksearch-content-zone>\n <hawksearch-content-zone name="Top2"></hawksearch-content-zone>\n <hawksearch-tabs></hawksearch-tabs>\n <hawksearch-selected-facets></hawksearch-selected-facets>\n <div class="row">\n <div class="column column--12 column-sm--6 flex-vertical-sm-center">\n <hawksearch-pagination></hawksearch-pagination>\n </div>\n <div class="column column--12 column-md--6">\n <div class="row row--tight">\n <div class="column column--12 column-sm--6 flex-vertical-sm-center">\n <hawksearch-page-size></hawksearch-page-size>\n </div>\n <div class="column column--12 column-sm--6 flex-vertical-sm-center">\n <hawksearch-sorting></hawksearch-sorting>\n </div>\n </div>\n </div>\n </div>\n <hawksearch-search-results-list></hawksearch-search-results-list>\n <hawksearch-content-zone name="Bottom"></hawksearch-content-zone>\n <hawksearch-content-zone name="Bottom2"></hawksearch-content-zone>\n </div>\n</div>';
9193
+ const defaultHtml$6 = '<hawksearch-modified-query></hawksearch-modified-query>\n<hawksearch-query-suggestions></hawksearch-query-suggestions>\n<div class="row">\n <div class="column column--12 column-md--4">\n <hawksearch-content-zone name="LeftTop"></hawksearch-content-zone>\n <hawksearch-facets-list></hawksearch-facets-list>\n <hawksearch-content-zone name="LeftBottom"></hawksearch-content-zone>\n </div>\n <div class="column column--12 column-md--8">\n <hawksearch-content-zone name="Top"></hawksearch-content-zone>\n <hawksearch-content-zone name="Top2"></hawksearch-content-zone>\n <hawksearch-tabs></hawksearch-tabs>\n <hawksearch-selected-facets></hawksearch-selected-facets>\n <div class="row">\n <div class="column column--12 column-sm--6 flex-vertical-sm-center">\n <hawksearch-pagination></hawksearch-pagination>\n </div>\n <div class="column column--12 column-md--6">\n <div class="row row--tight">\n <div class="column column--12 column-sm--6 flex-vertical-sm-center">\n <hawksearch-page-size></hawksearch-page-size>\n </div>\n <div class="column column--12 column-sm--6 flex-vertical-sm-center">\n <hawksearch-sorting></hawksearch-sorting>\n </div>\n </div>\n </div>\n </div>\n <hawksearch-search-results-list></hawksearch-search-results-list>\n <hawksearch-content-zone name="Bottom"></hawksearch-content-zone>\n <hawksearch-content-zone name="Bottom2"></hawksearch-content-zone>\n </div>\n</div>';
9037
9194
  class SearchResultsComponent extends BaseComponent {
9038
9195
  constructor() {
9039
9196
  super();
9040
9197
  this.componentName = "search-results";
9041
- this.defaultHtml = defaultHtml$5;
9198
+ this.defaultHtml = defaultHtml$6;
9042
9199
  this.bindFromEvent = true;
9043
9200
  if (this.mode === "search-results") {
9044
9201
  HawkSearch.services.tracking.trackPageLoad(PageType.Custom);
@@ -9073,7 +9230,7 @@ class SearchResultsComponent extends BaseComponent {
9073
9230
  };
9074
9231
  }
9075
9232
  }
9076
- const defaultHtml$4 = `<div class="flex-gap flex-gap--xs selected-facets">
9233
+ const defaultHtml$5 = `<div class="flex-gap flex-gap--xs selected-facets">
9077
9234
  {{#each selections}}
9078
9235
  <span class="selected-facets__item">
9079
9236
  <span class="selected-facets__item__field">{{title}}</span>
@@ -9093,7 +9250,7 @@ class SelectedFacetsComponent extends BaseComponent {
9093
9250
  constructor() {
9094
9251
  super(...arguments);
9095
9252
  this.componentName = "selected-facets";
9096
- this.defaultHtml = defaultHtml$4;
9253
+ this.defaultHtml = defaultHtml$5;
9097
9254
  this.bindFromEvent = true;
9098
9255
  }
9099
9256
  renderContent() {
@@ -9176,6 +9333,220 @@ class SelectedFacetsComponent extends BaseComponent {
9176
9333
  });
9177
9334
  }
9178
9335
  }
9336
+ const defaultHtml$4 = `<span class="smartresponse" hawksearch-smartresponse>
9337
+ <div class="smartresponse__icon">
9338
+ {{#if busy}}
9339
+ <div class="spinner"></div>
9340
+ {{else}}
9341
+ <hawksearch-icon name="sparkles"></hawksearch-icon>
9342
+ {{/if}}
9343
+ </div>
9344
+ <div class="smartresponse__info {{attribute ' busy' busy}}">
9345
+ {{#if strings.header}}
9346
+ <h4 class="smartresponse__info__header">
9347
+ {{strings.header}}
9348
+ </h4>
9349
+ {{/if}}
9350
+ <div class="smartresponse__info__summary">
9351
+ {{#if summary}}
9352
+ {{#if summary.recommendation}}
9353
+ <div class="row">
9354
+ {{html summary.recommendation}}
9355
+ </div>
9356
+ {{/if}}
9357
+ {{#if summary.products}}
9358
+ <ul class="row">
9359
+ {{#each summary.products}}
9360
+ <li>
9361
+ <a hawksearch-link href="{{url}}" class="search-results-list__item__image" aria-label="{{name}}">
9362
+ <img hawksearch-image src="{{imageUrl}}" alt="" />
9363
+ </a>
9364
+ <div class="search-results-list__item__title">
9365
+ <a hawksearch-link href="{{url}}">{{name}}</a>
9366
+ </div>
9367
+ </li>
9368
+ {{/each}}
9369
+ </ul>
9370
+ {{else}}
9371
+ {{#if summary.nosources}}
9372
+ <p>{{strings.nosources}}</p>
9373
+ {{/if}}
9374
+ {{/if}}
9375
+ {{/if}}
9376
+ </div>
9377
+ </div>
9378
+ <div class="smartresponse__actions">
9379
+ <div class="switch{{attribute ' on' active}}" smartresponse-switch></div>
9380
+ </div>
9381
+ </span>`;
9382
+ class SmartResponseComponent extends BaseComponent {
9383
+ constructor() {
9384
+ var _a, _b;
9385
+ super(...arguments);
9386
+ this.componentName = "smartresponse";
9387
+ this.defaultHtml = defaultHtml$4;
9388
+ this.bindFromEvent = false;
9389
+ this.active = true;
9390
+ this.busy = false;
9391
+ this.summary = { recommendation: "", products: [], nosources: false };
9392
+ this.currentQuery = ((_a = HawkSearch.searchResponse) == null ? void 0 : _a.query) || "";
9393
+ this.currentResponse = ((_b = HawkSearch.searchResponse) == null ? void 0 : _b.results) || [];
9394
+ }
9395
+ get promptInstructions() {
9396
+ var _a, _b;
9397
+ return ((_b = (_a = this.configuration) == null ? void 0 : _a.prompt) == null ? void 0 : _b.instructions) || `
9398
+ You are a recommendation agent, specialized in finding the perfect match for a user.
9399
+ Answer the question from the user extensivelly.
9400
+ You will be provided with a user input and an array of products.
9401
+ Based on the user input and products, determine a maximum of 3 of the most relevant products based on the user input.
9402
+ `;
9403
+ }
9404
+ get schema() {
9405
+ var _a, _b;
9406
+ return ((_b = (_a = this.configuration) == null ? void 0 : _a.prompt) == null ? void 0 : _b.schema) || {
9407
+ "name": "smartresponse_summary",
9408
+ "description": "Recommedation message and product details which includes name, description, url, price and imageUrl",
9409
+ "strict": true,
9410
+ "schema": {
9411
+ "type": "object",
9412
+ "properties": {
9413
+ "recommendation": {
9414
+ "type": "string"
9415
+ },
9416
+ "products": {
9417
+ "type": "array",
9418
+ "items": {
9419
+ "type": "object",
9420
+ "properties": {
9421
+ "name": {
9422
+ "type": "string"
9423
+ },
9424
+ "url": {
9425
+ "type": "string"
9426
+ },
9427
+ "description": {
9428
+ "type": "string"
9429
+ },
9430
+ "price": {
9431
+ "type": "number"
9432
+ },
9433
+ "imageUrl": {
9434
+ "type": "string"
9435
+ }
9436
+ },
9437
+ "required": [
9438
+ "name",
9439
+ "url",
9440
+ "description",
9441
+ "price",
9442
+ "imageUrl"
9443
+ ],
9444
+ "additionalProperties": false
9445
+ }
9446
+ }
9447
+ },
9448
+ "required": [
9449
+ "recommendation",
9450
+ "products"
9451
+ ],
9452
+ "additionalProperties": false
9453
+ }
9454
+ };
9455
+ }
9456
+ connectedCallback() {
9457
+ super.connectedCallback();
9458
+ this.afterSearchExecutedEventHandler = (event) => {
9459
+ var _a, _b, _c, _d, _e;
9460
+ if (this.active && ((_a = HawkSearch.searchResponse) == null ? void 0 : _a.query) && ((_b = HawkSearch.searchResponse) == null ? void 0 : _b.results) && ((_c = HawkSearch.searchResponse) == null ? void 0 : _c.results.length) > 0) {
9461
+ this.busy = true;
9462
+ this.render();
9463
+ this.currentQuery = (_d = HawkSearch.searchResponse) == null ? void 0 : _d.query;
9464
+ this.currentResponse = this.convertSmartResponseRequest((_e = HawkSearch.searchResponse) == null ? void 0 : _e.results);
9465
+ if (this.currentResponse.length > 0) {
9466
+ this.updateSummary();
9467
+ }
9468
+ } else {
9469
+ this.clearSummary();
9470
+ }
9471
+ };
9472
+ window.addEventListener("hawksearch:after-search-executed", this.afterSearchExecutedEventHandler);
9473
+ }
9474
+ disconnectedCallback() {
9475
+ super.disconnectedCallback();
9476
+ window.removeEventListener("hawksearch:after-search-executed", this.afterSearchExecutedEventHandler);
9477
+ }
9478
+ getContentModel() {
9479
+ var _a, _b, _c, _d;
9480
+ return {
9481
+ summary: this.summary,
9482
+ strings: {
9483
+ header: ((_b = (_a = this.configuration) == null ? void 0 : _a.strings) == null ? void 0 : _b.header) || "SmartResponse",
9484
+ noresults: ((_d = (_c = this.configuration) == null ? void 0 : _c.strings) == null ? void 0 : _d.noresults) || "No Results found"
9485
+ },
9486
+ active: this.active,
9487
+ busy: this.busy
9488
+ };
9489
+ }
9490
+ onRender() {
9491
+ super.onRender();
9492
+ this.busy = true;
9493
+ this.rootElement.querySelectorAll("[smartresponse-switch]").forEach((e) => {
9494
+ e.addEventListener("click", () => {
9495
+ this.active = !this.active;
9496
+ e.classList.toggle("on", this.active);
9497
+ if (!this.active) {
9498
+ this.clearSummary();
9499
+ }
9500
+ });
9501
+ });
9502
+ }
9503
+ async updateSummary() {
9504
+ const rawSummaryResponse = await HawkSearch.services.conversational.query(
9505
+ [
9506
+ { role: "system", content: this.promptInstructions },
9507
+ { role: "user", content: `USER INPUT: "${this.currentQuery}", PRODUCTS:${JSON.stringify(this.currentResponse)}` }
9508
+ ],
9509
+ {
9510
+ "response_format": {
9511
+ "type": "json_schema",
9512
+ "json_schema": this.schema
9513
+ }
9514
+ }
9515
+ ).then((result) => {
9516
+ return result;
9517
+ }).catch((error) => {
9518
+ return false;
9519
+ });
9520
+ if (rawSummaryResponse) {
9521
+ const summaryResponse = JSON.parse(rawSummaryResponse.content);
9522
+ this.summary = {
9523
+ recommendation: summaryResponse.recommendation,
9524
+ products: summaryResponse.products.length > 3 ? summaryResponse.products.trim() : summaryResponse.products.slice(0, 3),
9525
+ nosources: summaryResponse.products.length === 0
9526
+ };
9527
+ }
9528
+ this.busy = false;
9529
+ this.render();
9530
+ }
9531
+ clearSummary() {
9532
+ this.summary = { recommendation: "", products: [], nosources: false };
9533
+ this.busy = false;
9534
+ this.render();
9535
+ }
9536
+ convertSmartResponseRequest(searchResponse, max = 3) {
9537
+ const cleanResults = searchResponse.map((item) => {
9538
+ return {
9539
+ id: item.id,
9540
+ title: item.title,
9541
+ description: item.description,
9542
+ imageUrl: item.imageUrl,
9543
+ url: item.url,
9544
+ score: item.score
9545
+ };
9546
+ });
9547
+ return cleanResults.slice(0, max);
9548
+ }
9549
+ }
9179
9550
  const defaultHtml$3 = '<div class="sorting">\n <select hawksearch-sort>\n {{#each options}}\n {{#if selected}}\n <option value="{{value}}" selected>{{title}}</option>\n {{else}}\n <option value="{{value}}">{{title}}</option>\n {{/if}}\n {{/each}}\n </select>\n</div>';
9180
9551
  class SortingComponent extends BaseComponent {
9181
9552
  constructor() {
@@ -9516,9 +9887,9 @@ class BaseService {
9516
9887
  return window.location.pathname.replace(trailingSlashRegex, "") === this.searchUrl.replace(trailingSlashRegex, "");
9517
9888
  }
9518
9889
  // #region HTTP
9519
- async httpPost(relativeUrl, body) {
9520
- const url = this.baseUrl + relativeUrl;
9521
- const headers = this.getHeaders();
9890
+ async httpPost(relativeUrl, body, customHeaders, isAbsoluteUrl) {
9891
+ const url = isAbsoluteUrl ? relativeUrl : this.baseUrl + relativeUrl;
9892
+ const headers = customHeaders || this.getHeaders();
9522
9893
  const response = await fetch(url, {
9523
9894
  method: "POST",
9524
9895
  headers,
@@ -9838,6 +10209,64 @@ class AutocompleteService extends BaseService {
9838
10209
  }
9839
10210
  // #endregion Events
9840
10211
  }
10212
+ class ConversationalService extends BaseService {
10213
+ constructor() {
10214
+ super(...arguments);
10215
+ this.baseUrl = "https://genai.bridgeline.com/api";
10216
+ this.API_KEY = "ba0279e8-6df6-11ee-a9fd-9df2e7adae60";
10217
+ }
10218
+ // #region ConversationalSearch
10219
+ async query(query, options) {
10220
+ if (!query) {
10221
+ return [];
10222
+ }
10223
+ const result = await this.executeSearch(query, options);
10224
+ return result;
10225
+ }
10226
+ async executeSearch(messages, options) {
10227
+ this.bindComponents(messages);
10228
+ const rawConversationalSearchRequest = {
10229
+ "api_key": this.API_KEY,
10230
+ messages,
10231
+ ...options
10232
+ };
10233
+ if (HawkSearch.config.debug) {
10234
+ console.log("hawksearch:debug ", { rawConversationalSearchRequest: rawConversationalSearchRequest.messages });
10235
+ }
10236
+ try {
10237
+ this.triggerEvent("hawksearch:before-send-message-executed", messages);
10238
+ const headers = new Headers();
10239
+ headers.set("Content-Type", "application/json");
10240
+ const rawConversationalSearchResponse = await this.httpPost(
10241
+ this.baseUrl,
10242
+ rawConversationalSearchRequest,
10243
+ headers,
10244
+ true
10245
+ );
10246
+ this.triggerEvent("hawksearch:after-send-message-executed", rawConversationalSearchResponse);
10247
+ if (!rawConversationalSearchResponse.success) {
10248
+ throw new Error("Network response was not ok");
10249
+ }
10250
+ this.triggerEvent("hawksearch:before-received-message-executed", rawConversationalSearchResponse);
10251
+ const conversationalSearchResponse = this.convertResponse(rawConversationalSearchResponse);
10252
+ this.triggerEvent("hawksearch:after-receive-message-executed", conversationalSearchResponse);
10253
+ this.bindComponents(conversationalSearchResponse);
10254
+ return conversationalSearchResponse;
10255
+ } catch {
10256
+ throw new Error("Error retrieving search response");
10257
+ }
10258
+ }
10259
+ convertResponse(rawOpenAIResponse) {
10260
+ const convertedResponse = rawOpenAIResponse.response.choices[0].message;
10261
+ return convertedResponse;
10262
+ }
10263
+ // #endregion ConversationalSearch Operations
10264
+ // #region Events
10265
+ bindComponents(conversationResponse) {
10266
+ this.triggerBindEvent("conversationalsearch", { conversationResponse });
10267
+ }
10268
+ // #endregion Events
10269
+ }
9841
10270
  class RecommendationsService extends BaseService {
9842
10271
  constructor() {
9843
10272
  var _a;
@@ -10161,12 +10590,16 @@ class SearchService extends BaseService {
10161
10590
  }
10162
10591
  if (this.decodeFacetValues && searchRequest.facets) {
10163
10592
  for (const facet in searchRequest.facets) {
10164
- const tempArray = [];
10165
- const facetsArray = searchRequest.facets[facet];
10166
- for (const selection in facetsArray) {
10167
- tempArray.push(decodeNestedURI(facetsArray[parseInt(selection)]));
10593
+ if (Object.prototype.hasOwnProperty.call(searchRequest.facets, facet)) {
10594
+ const tempArray = [];
10595
+ const facetsArray = searchRequest.facets[facet];
10596
+ for (const selection in facetsArray) {
10597
+ if (Object.prototype.hasOwnProperty.call(facetsArray, selection)) {
10598
+ tempArray.push(decodeNestedURI(facetsArray[parseInt(selection)]));
10599
+ }
10600
+ }
10601
+ searchRequest.facets[facet] = tempArray;
10168
10602
  }
10169
- searchRequest.facets[facet] = tempArray;
10170
10603
  }
10171
10604
  }
10172
10605
  HawkSearch.searchRequest = searchRequest;
@@ -10203,9 +10636,9 @@ class SearchService extends BaseService {
10203
10636
  try {
10204
10637
  this.triggerEvent("hawksearch:before-search-executed", rawSearchRequest);
10205
10638
  const rawSearchResponse = await this.httpPost("/api/v2/search", rawSearchRequest);
10206
- this.triggerEvent("hawksearch:after-search-executed", rawSearchResponse);
10207
10639
  const searchResponse = this.convertResponse(searchRequest, rawSearchResponse);
10208
10640
  HawkSearch.searchResponse = searchResponse;
10641
+ this.triggerEvent("hawksearch:after-search-executed", rawSearchResponse);
10209
10642
  HawkSearch.services.tracking.trackSearch(performImageSearch ? "image-upload" : searchRequest.query, newSearch);
10210
10643
  if (!performImageSearch) {
10211
10644
  this.setQueryString(searchResponse);
@@ -10689,6 +11122,7 @@ class SearchService extends BaseService {
10689
11122
  this.bindSearchFieldComponent(searchResponse);
10690
11123
  this.bindSearchResultsListComponent(searchResponse);
10691
11124
  this.bindSelectedFacetsComponent(searchResponse);
11125
+ this.bindSmartResponseComponent(searchResponse);
10692
11126
  this.bindSortingComponent(searchResponse);
10693
11127
  this.bindTabsComponent(searchResponse);
10694
11128
  this.bindZoneComponent(searchResponse);
@@ -10738,6 +11172,9 @@ class SearchService extends BaseService {
10738
11172
  };
10739
11173
  this.triggerBindEvent("query-suggestions", data);
10740
11174
  }
11175
+ bindSmartResponseComponent(searchResponse) {
11176
+ this.triggerBindEvent("smartresponse", searchResponse);
11177
+ }
10741
11178
  bindSortingComponent(searchResponse) {
10742
11179
  this.triggerBindEvent("sorting", searchResponse == null ? void 0 : searchResponse.sorting);
10743
11180
  }
@@ -11114,6 +11551,7 @@ HawkSearch$1.init = (config) => {
11114
11551
  HawkSearch$1.handlebars.registerHelper("subtract", subtract);
11115
11552
  HawkSearch$1.services = {
11116
11553
  autocomplete: new AutocompleteService(),
11554
+ conversational: new ConversationalService(),
11117
11555
  recommendations: new RecommendationsService(),
11118
11556
  search: new SearchService(),
11119
11557
  tracking: new TrackingService()
@@ -11124,6 +11562,7 @@ HawkSearch$1.init = (config) => {
11124
11562
  "color-facet": ColorFacetComponent,
11125
11563
  "conceptsearch-field": ConceptSearchFieldComponent,
11126
11564
  "content-zone": ContentZoneComponent,
11565
+ "conversationalsearch": ConversationalSearchComponent,
11127
11566
  "custom-content": CustomContentComponent,
11128
11567
  "date-picker": DatePickerComponent,
11129
11568
  "date-range-facet": DateRangeFacetComponent,
@@ -11156,6 +11595,7 @@ HawkSearch$1.init = (config) => {
11156
11595
  "search-within-facet": SearchWithinFacetComponent,
11157
11596
  "selected-facets": SelectedFacetsComponent,
11158
11597
  "size-facet": SizeFacetComponent,
11598
+ "smartresponse": SmartResponseComponent,
11159
11599
  "sorting": SortingComponent,
11160
11600
  "tabs": TabsComponent,
11161
11601
  "tooltip": TooltipComponent,