@blaze-cms/react-page-builder 0.124.0-alpha.7 → 0.124.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (867) hide show
  1. package/CHANGELOG.md +339 -0
  2. package/README.md +9 -0
  3. package/example.env +1 -0
  4. package/lib/BannerContext/helpers/index.js.map +1 -1
  5. package/lib/BannerContext/helpers/set-initial-banner-counters.js.map +1 -1
  6. package/lib/BannerContext/index.js.map +1 -1
  7. package/lib/HOC/index.js.map +1 -1
  8. package/lib/HOC/withInfiniteScroll.js.map +1 -1
  9. package/lib/HOC/withTitle.js.map +1 -1
  10. package/lib/PBContext/index.js.map +1 -1
  11. package/lib/application/query/index.js +8 -2
  12. package/lib/application/query/index.js.map +1 -1
  13. package/lib/components/BackToTop/BackToTop.js.map +1 -1
  14. package/lib/components/BackToTop/index.js.map +1 -1
  15. package/lib/components/Banner/AdSlotRender.js.map +1 -1
  16. package/lib/components/Banner/Banner.js.map +1 -1
  17. package/lib/components/Banner/BannerRender.js.map +1 -1
  18. package/lib/components/Banner/helpers.js.map +1 -1
  19. package/lib/components/Banner/index.js.map +1 -1
  20. package/lib/components/BlazeLink.js.map +1 -1
  21. package/lib/components/Breadcrumb/Breadcrumb.js.map +1 -1
  22. package/lib/components/Breadcrumb/index.js.map +1 -1
  23. package/lib/components/Button.js +18 -5
  24. package/lib/components/Button.js.map +1 -1
  25. package/lib/components/Card/Card.js.map +1 -1
  26. package/lib/components/Card/CardContainer.js +3 -7
  27. package/lib/components/Card/CardContainer.js.map +1 -1
  28. package/lib/components/Card/CardFactory.js +6 -3
  29. package/lib/components/Card/CardFactory.js.map +1 -1
  30. package/lib/components/Card/CardRender.js.map +1 -1
  31. package/lib/components/Card/constants.js.map +1 -1
  32. package/lib/components/Card/helpers/filter-query-setup.js.map +1 -1
  33. package/lib/components/Card/helpers/filters-setup.js.map +1 -1
  34. package/lib/components/Card/helpers/get-dynamic-grid-classes.js.map +1 -1
  35. package/lib/components/Card/helpers/get-published-listing-url.js.map +1 -1
  36. package/lib/components/Card/helpers/index.js.map +1 -1
  37. package/lib/components/Card/helpers/should-return.js.map +1 -1
  38. package/lib/components/Card/helpers/should-skip-single-query.js.map +1 -1
  39. package/lib/components/Card/helpers/use-dynamic-size-key.js.map +1 -1
  40. package/lib/components/Card/index.js.map +1 -1
  41. package/lib/components/Carousel/Carousel.js.map +1 -1
  42. package/lib/components/Carousel/CarouselImage/CarouselImage.js.map +1 -1
  43. package/lib/components/Carousel/CarouselImage/index.js.map +1 -1
  44. package/lib/components/Carousel/CarouselRender/CarouselRender.js.map +1 -1
  45. package/lib/components/Carousel/CarouselRender/index.js.map +1 -1
  46. package/lib/components/Carousel/index.js.map +1 -1
  47. package/lib/components/CarouselWrapper.js +2 -2
  48. package/lib/components/CarouselWrapper.js.map +1 -1
  49. package/lib/components/ClickWrapper.js.map +1 -1
  50. package/lib/components/Code/Code.js.map +1 -1
  51. package/lib/components/Code/ScriptTag.js.map +1 -1
  52. package/lib/components/Code/helpers/index.js.map +1 -1
  53. package/lib/components/Code/helpers/wrap-script-tags.js.map +1 -1
  54. package/lib/components/Code/index.js.map +1 -1
  55. package/lib/components/DataSummary/DataSummaryFactory.js.map +1 -1
  56. package/lib/components/DataSummary/DataSummaryRender.js.map +1 -1
  57. package/lib/components/DataSummary/DataSummaryTypes/HeadingLargeSummary/HeadingLargeSummary.js.map +1 -1
  58. package/lib/components/DataSummary/DataSummaryTypes/HeadingLargeSummary/HeadingLargeSummaryContent.js.map +1 -1
  59. package/lib/components/DataSummary/DataSummaryTypes/HeadingLargeSummary/index.js.map +1 -1
  60. package/lib/components/DataSummary/DataSummaryTypes/ItemDetailsSummary/ItemDetailsSummary.js.map +1 -1
  61. package/lib/components/DataSummary/DataSummaryTypes/ItemDetailsSummary/ItemDetailsSummaryContent.js.map +1 -1
  62. package/lib/components/DataSummary/DataSummaryTypes/ItemDetailsSummary/index.js.map +1 -1
  63. package/lib/components/DataSummary/DataSummaryTypes/LargeSummary/LargeSummary.js.map +1 -1
  64. package/lib/components/DataSummary/DataSummaryTypes/LargeSummary/LargeSummaryContent.js.map +1 -1
  65. package/lib/components/DataSummary/DataSummaryTypes/LargeSummary/index.js.map +1 -1
  66. package/lib/components/DataSummary/DataSummaryTypes/ListSummary/ListSummary.js.map +1 -1
  67. package/lib/components/DataSummary/DataSummaryTypes/ListSummary/ListSummaryContent.js.map +1 -1
  68. package/lib/components/DataSummary/DataSummaryTypes/ListSummary/index.js.map +1 -1
  69. package/lib/components/DataSummary/DataSummaryTypes/TextSummary/TextSummary.js.map +1 -1
  70. package/lib/components/DataSummary/DataSummaryTypes/TextSummary/TextSummaryContent.js.map +1 -1
  71. package/lib/components/DataSummary/DataSummaryTypes/TextSummary/index.js.map +1 -1
  72. package/lib/components/DataSummary/DataSummaryTypes/index.js.map +1 -1
  73. package/lib/components/DataSummary/helpers/build-loop-props-content.js.map +1 -1
  74. package/lib/components/DataSummary/helpers/build-props-to-display-with-content.js.map +1 -1
  75. package/lib/components/DataSummary/helpers/get-data-summary-query.js.map +1 -1
  76. package/lib/components/DataSummary/helpers/get-link-based-on-value.js.map +1 -1
  77. package/lib/components/DataSummary/helpers/get-link-to-published-content.js.map +1 -1
  78. package/lib/components/DataSummary/helpers/get-loop-props-limit.js.map +1 -1
  79. package/lib/components/DataSummary/helpers/get-prop-value.js.map +1 -1
  80. package/lib/components/DataSummary/helpers/get-value-from-array.js.map +1 -1
  81. package/lib/components/DataSummary/helpers/index.js.map +1 -1
  82. package/lib/components/DataSummary/helpers/parse-boolean-values.js.map +1 -1
  83. package/lib/components/DataSummary/helpers/strip-summary-props-content.js.map +1 -1
  84. package/lib/components/DataSummary/index.js.map +1 -1
  85. package/lib/components/EmailConfirm/EmailConfirm.js.map +1 -1
  86. package/lib/components/EmailConfirm/index.js.map +1 -1
  87. package/lib/components/EmailConfirm/mutation.js.map +1 -1
  88. package/lib/components/Image/GlobalLightbox/GlobalLightbox.js.map +1 -1
  89. package/lib/components/Image/GlobalLightbox/NavButton.js.map +1 -1
  90. package/lib/components/Image/GlobalLightbox/index.js.map +1 -1
  91. package/lib/components/Image/Image.js.map +1 -1
  92. package/lib/components/Image/ImageDetails.js.map +1 -1
  93. package/lib/components/Image/ImageFactory.js.map +1 -1
  94. package/lib/components/Image/ImageRender.js +5 -1
  95. package/lib/components/Image/ImageRender.js.map +1 -1
  96. package/lib/components/Image/Lightbox/Lightbox.js.map +1 -1
  97. package/lib/components/Image/Lightbox/index.js.map +1 -1
  98. package/lib/components/Image/index.js.map +1 -1
  99. package/lib/components/ItemList/ItemListButton/ItemListButton.js +161 -0
  100. package/lib/components/ItemList/ItemListButton/ItemListButton.js.map +1 -0
  101. package/lib/components/ItemList/ItemListButton/index.js +16 -0
  102. package/lib/components/ItemList/ItemListButton/index.js.map +1 -0
  103. package/lib/components/ItemList/ItemListCounter/ItemListCounter.js +83 -0
  104. package/lib/components/ItemList/ItemListCounter/ItemListCounter.js.map +1 -0
  105. package/lib/components/ItemList/ItemListCounter/index.js +16 -0
  106. package/lib/components/ItemList/ItemListCounter/index.js.map +1 -0
  107. package/lib/components/ItemList/ItemListNew/ItemListNew.js +87 -0
  108. package/lib/components/ItemList/ItemListNew/ItemListNew.js.map +1 -0
  109. package/lib/components/ItemList/ItemListNew/index.js +16 -0
  110. package/lib/components/ItemList/ItemListNew/index.js.map +1 -0
  111. package/lib/components/ItemList/constants.js +19 -0
  112. package/lib/components/ItemList/constants.js.map +1 -0
  113. package/lib/components/ItemList/helpers/get-item-list-data.js +17 -0
  114. package/lib/components/ItemList/helpers/get-item-list-data.js.map +1 -0
  115. package/lib/components/ItemList/helpers/get-item-list-id.js +23 -0
  116. package/lib/components/ItemList/helpers/get-item-list-id.js.map +1 -0
  117. package/lib/components/ItemList/helpers/get-item-list-ids.js +28 -0
  118. package/lib/components/ItemList/helpers/get-item-list-ids.js.map +1 -0
  119. package/lib/components/ItemList/helpers/index.js +50 -0
  120. package/lib/components/ItemList/helpers/index.js.map +1 -0
  121. package/lib/components/ItemList/helpers/set-item-list-id.js +22 -0
  122. package/lib/components/ItemList/helpers/set-item-list-id.js.map +1 -0
  123. package/lib/components/ItemList/helpers/set-param-and-redirect.js +51 -0
  124. package/lib/components/ItemList/helpers/set-param-and-redirect.js.map +1 -0
  125. package/lib/components/ItemList/hooks/index.js +18 -0
  126. package/lib/components/ItemList/hooks/index.js.map +1 -0
  127. package/lib/components/ItemList/hooks/use-item-list-id.js +45 -0
  128. package/lib/components/ItemList/hooks/use-item-list-id.js.map +1 -0
  129. package/lib/components/Layout/Layout.js.map +1 -1
  130. package/lib/components/Layout/constants.js.map +1 -1
  131. package/lib/components/Layout/helpers/check-if-row-has-columns.js.map +1 -1
  132. package/lib/components/Layout/helpers/get-styles-to-update.js.map +1 -1
  133. package/lib/components/Layout/helpers/index.js.map +1 -1
  134. package/lib/components/Layout/index.js.map +1 -1
  135. package/lib/components/LazyImage/LazyImage.js +5 -1
  136. package/lib/components/LazyImage/LazyImage.js.map +1 -1
  137. package/lib/components/LazyImage/index.js.map +1 -1
  138. package/lib/components/List/ListBuilder.js +12 -6
  139. package/lib/components/List/ListBuilder.js.map +1 -1
  140. package/lib/components/List/ListFactory.js +34 -7
  141. package/lib/components/List/ListFactory.js.map +1 -1
  142. package/lib/components/List/ListRender.js.map +1 -1
  143. package/lib/components/List/components/Cards/CardRenderWithInfiniteScroll.js.map +1 -1
  144. package/lib/components/List/components/Cards/CardsRender.js.map +1 -1
  145. package/lib/components/List/components/Cards/CardsRenderItem.js.map +1 -1
  146. package/lib/components/List/components/Cards/CardsRenderWrapper.js.map +1 -1
  147. package/lib/components/List/components/Cards/index.js.map +1 -1
  148. package/lib/components/List/components/Full/FullRender.js.map +1 -1
  149. package/lib/components/List/components/Full/FullRenderItem.js.map +1 -1
  150. package/lib/components/List/components/Full/FullRenderWithInfiniteScroll.js.map +1 -1
  151. package/lib/components/List/components/Full/index.js.map +1 -1
  152. package/lib/components/List/components/Header/ListHeader.js.map +1 -1
  153. package/lib/components/List/components/Header/index.js.map +1 -1
  154. package/lib/components/List/components/Pagination/Classic.js.map +1 -1
  155. package/lib/components/List/components/Pagination/ListPagination.js.map +1 -1
  156. package/lib/components/List/components/Pagination/LoadMore.js.map +1 -1
  157. package/lib/components/List/components/Pagination/index.js.map +1 -1
  158. package/lib/components/List/components/helpers/check-if-should-render-banner.js.map +1 -1
  159. package/lib/components/List/components/helpers/check-if-should-render-gtm.js.map +1 -1
  160. package/lib/components/List/components/helpers/index.js.map +1 -1
  161. package/lib/components/List/components/index.js.map +1 -1
  162. package/lib/components/List/constants.js.map +1 -1
  163. package/lib/components/List/helpers/build-az-aggregations.js.map +1 -1
  164. package/lib/components/List/helpers/build-az-url.js.map +1 -1
  165. package/lib/components/List/helpers/build-pagination-items.js.map +1 -1
  166. package/lib/components/List/helpers/build-pagination-url.js.map +1 -1
  167. package/lib/components/List/helpers/get-az-query-filter.js.map +1 -1
  168. package/lib/components/List/helpers/get-items-per-page-to-use.js.map +1 -1
  169. package/lib/components/List/helpers/get-sort-props.js.map +1 -1
  170. package/lib/components/List/helpers/has-required-item-list-details.js +29 -0
  171. package/lib/components/List/helpers/has-required-item-list-details.js.map +1 -0
  172. package/lib/components/List/helpers/index.js +8 -0
  173. package/lib/components/List/helpers/index.js.map +1 -1
  174. package/lib/components/List/helpers/sort-aggs.js.map +1 -1
  175. package/lib/components/List/index.js.map +1 -1
  176. package/lib/components/Login/LoggedInMessage.js.map +1 -1
  177. package/lib/components/Login/Login.js.map +1 -1
  178. package/lib/components/Login/LoginForm.js.map +1 -1
  179. package/lib/components/Login/helpers/check-gtm-children.js.map +1 -1
  180. package/lib/components/Login/helpers/get-url-to-use.js.map +1 -1
  181. package/lib/components/Login/helpers/index.js.map +1 -1
  182. package/lib/components/Login/index.js.map +1 -1
  183. package/lib/components/Menu/Menu.js +41 -28
  184. package/lib/components/Menu/Menu.js.map +1 -1
  185. package/lib/components/Menu/MenuContext.js +20 -0
  186. package/lib/components/Menu/MenuContext.js.map +1 -0
  187. package/lib/components/Menu/index.js.map +1 -1
  188. package/lib/components/MenuItem/MenuItem.js +26 -7
  189. package/lib/components/MenuItem/MenuItem.js.map +1 -1
  190. package/lib/components/MenuItem/index.js.map +1 -1
  191. package/lib/components/Modal/Modal.js.map +1 -1
  192. package/lib/components/Modal/index.js.map +1 -1
  193. package/lib/components/PasswordReset/PasswordReset.js.map +1 -1
  194. package/lib/components/PasswordReset/helpers/index.js.map +1 -1
  195. package/lib/components/PasswordReset/helpers/validatePassword.js.map +1 -1
  196. package/lib/components/PasswordReset/index.js.map +1 -1
  197. package/lib/components/PasswordResetRequest/PasswordResetRequest.js.map +1 -1
  198. package/lib/components/PasswordResetRequest/index.js.map +1 -1
  199. package/lib/components/SearchContent/SearchContent.js +183 -0
  200. package/lib/components/SearchContent/SearchContent.js.map +1 -0
  201. package/lib/components/SearchContent/SearchContentItems.js +51 -0
  202. package/lib/components/SearchContent/SearchContentItems.js.map +1 -0
  203. package/lib/components/SearchContent/SearchContentResults.js +45 -0
  204. package/lib/components/SearchContent/SearchContentResults.js.map +1 -0
  205. package/lib/components/SearchContent/SearchContentToggleIcon.js +42 -0
  206. package/lib/components/SearchContent/SearchContentToggleIcon.js.map +1 -0
  207. package/lib/components/SearchContent/index.js +2 -301
  208. package/lib/components/SearchContent/index.js.map +1 -1
  209. package/lib/components/SearchFilter/SearchFilter/CloseMobileForm.js.map +1 -1
  210. package/lib/components/SearchFilter/SearchFilter/FiltersList.js +2 -4
  211. package/lib/components/SearchFilter/SearchFilter/FiltersList.js.map +1 -1
  212. package/lib/components/SearchFilter/SearchFilter/MobileFormToolbar.js.map +1 -1
  213. package/lib/components/SearchFilter/SearchFilter/ResetDesktopForm.js.map +1 -1
  214. package/lib/components/SearchFilter/SearchFilter/SearchFilter.js +27 -69
  215. package/lib/components/SearchFilter/SearchFilter/SearchFilter.js.map +1 -1
  216. package/lib/components/SearchFilter/SearchFilter/index.js.map +1 -1
  217. package/lib/components/SearchFilter/SearchFilterContainer.js +87 -23
  218. package/lib/components/SearchFilter/SearchFilterContainer.js.map +1 -1
  219. package/lib/components/SearchFilter/components/Checkbox.js +19 -9
  220. package/lib/components/SearchFilter/components/Checkbox.js.map +1 -1
  221. package/lib/components/SearchFilter/components/Range.js.map +1 -1
  222. package/lib/components/SearchFilter/components/Select.js +27 -11
  223. package/lib/components/SearchFilter/components/Select.js.map +1 -1
  224. package/lib/components/SearchFilter/components/TextSearch.js +1 -5
  225. package/lib/components/SearchFilter/components/TextSearch.js.map +1 -1
  226. package/lib/components/SearchFilter/components/index.js.map +1 -1
  227. package/lib/components/SearchFilter/constants.js +1 -1
  228. package/lib/components/SearchFilter/constants.js.map +1 -1
  229. package/lib/components/SearchFilter/helpers/build-filters-query.js +87 -0
  230. package/lib/components/SearchFilter/helpers/build-filters-query.js.map +1 -0
  231. package/lib/components/SearchFilter/helpers/build-new-query.js.map +1 -1
  232. package/lib/components/SearchFilter/helpers/build-query.js +1 -1
  233. package/lib/components/SearchFilter/helpers/build-query.js.map +1 -1
  234. package/lib/components/SearchFilter/helpers/build-raw-query-stringified.js +2 -1
  235. package/lib/components/SearchFilter/helpers/build-raw-query-stringified.js.map +1 -1
  236. package/lib/components/SearchFilter/helpers/calculate-min-max.js.map +1 -1
  237. package/lib/components/SearchFilter/helpers/calculate-step.js.map +1 -1
  238. package/lib/components/SearchFilter/helpers/check-if-range-updated.js.map +1 -1
  239. package/lib/components/SearchFilter/helpers/decode-encode.js.map +1 -1
  240. package/lib/components/SearchFilter/helpers/get-display-value.js.map +1 -1
  241. package/lib/components/SearchFilter/helpers/get-filter-value-from-query.js.map +1 -1
  242. package/lib/components/SearchFilter/helpers/get-initial-filter-values.js +18 -3
  243. package/lib/components/SearchFilter/helpers/get-initial-filter-values.js.map +1 -1
  244. package/lib/components/SearchFilter/helpers/get-intersected-prop.js.map +1 -1
  245. package/lib/components/SearchFilter/helpers/get-range-value.js.map +1 -1
  246. package/lib/components/SearchFilter/helpers/get-responsive-filter-classnames.js.map +1 -1
  247. package/lib/components/SearchFilter/helpers/get-select-options.js.map +1 -1
  248. package/lib/components/SearchFilter/helpers/index.js +8 -0
  249. package/lib/components/SearchFilter/helpers/index.js.map +1 -1
  250. package/lib/components/SearchFilter/helpers/is-device-desktop.js.map +1 -1
  251. package/lib/components/SearchFilter/helpers/parse-filter-value.js +3 -7
  252. package/lib/components/SearchFilter/helpers/parse-filter-value.js.map +1 -1
  253. package/lib/components/SearchFilter/index.js.map +1 -1
  254. package/lib/components/SearchFilterSort/SearchFilterSort.js.map +1 -1
  255. package/lib/components/SearchFilterSort/constants.js.map +1 -1
  256. package/lib/components/SearchFilterSort/helpers/handle-sort-update.js.map +1 -1
  257. package/lib/components/SearchFilterSort/helpers/index.js.map +1 -1
  258. package/lib/components/SearchFilterSort/helpers/update-sort.js.map +1 -1
  259. package/lib/components/SearchFilterSort/index.js.map +1 -1
  260. package/lib/components/SocialFollow/SFItem.js.map +1 -1
  261. package/lib/components/SocialFollow/SocialFollow.js.map +1 -1
  262. package/lib/components/SocialFollow/SocialFollowRender.js.map +1 -1
  263. package/lib/components/SocialFollow/index.js.map +1 -1
  264. package/lib/components/SocialFollow/sf.config.js.map +1 -1
  265. package/lib/components/SubMenu/SubMenu.js.map +1 -1
  266. package/lib/components/SubMenu/index.js.map +1 -1
  267. package/lib/components/TextBlock/TextBlockRender.js.map +1 -1
  268. package/lib/components/TextBlock/index.js.map +1 -1
  269. package/lib/components/Video/Video.js.map +1 -1
  270. package/lib/components/Video/VideoModal.js.map +1 -1
  271. package/lib/components/Video/VideoRender.js.map +1 -1
  272. package/lib/components/Video/index.js.map +1 -1
  273. package/lib/components/Video/providers/Default.js.map +1 -1
  274. package/lib/components/Video/providers/JWPlayer/JWPlayerController.js.map +1 -1
  275. package/lib/components/Video/providers/JWPlayer/JWPlayerProvider.js.map +1 -1
  276. package/lib/components/Video/providers/YouTube/YouTubeProvider.js.map +1 -1
  277. package/lib/components/Video/providers/YouTube/YoutubeEmbeded.js.map +1 -1
  278. package/lib/components/Video/providers/YouTube/helpers/index.js.map +1 -1
  279. package/lib/components/Video/providers/get-provider.js.map +1 -1
  280. package/lib/components/Video/providers/index.js.map +1 -1
  281. package/lib/components/Wrapper.js.map +1 -1
  282. package/lib/components/index.js +16 -1
  283. package/lib/components/index.js.map +1 -1
  284. package/lib/constants/componentsDefaultValues.js.map +1 -1
  285. package/lib/constants/index.js +3 -1
  286. package/lib/constants/index.js.map +1 -1
  287. package/lib/helpers/append-images.js.map +1 -1
  288. package/lib/helpers/build-az-filter.js.map +1 -1
  289. package/lib/helpers/build-image-properties.js.map +1 -1
  290. package/lib/helpers/build-inherited-filters.js.map +1 -1
  291. package/lib/helpers/build-link-extra-props.js.map +1 -1
  292. package/lib/helpers/build-props-query.js.map +1 -1
  293. package/lib/helpers/build-query-fields.js.map +1 -1
  294. package/lib/helpers/build-raw-query-base.js.map +1 -1
  295. package/lib/helpers/build-raw-query.js.map +1 -1
  296. package/lib/helpers/build-search-values-checkbox-select.js.map +1 -1
  297. package/lib/helpers/build-search-values-text.js.map +1 -1
  298. package/lib/helpers/build-set-filters.js.map +1 -1
  299. package/lib/helpers/check-for-error.js.map +1 -1
  300. package/lib/helpers/check-props-to-use.js.map +1 -1
  301. package/lib/helpers/entities/constants.js.map +1 -1
  302. package/lib/helpers/get-banner-data.js.map +1 -1
  303. package/lib/helpers/get-click-wrapper-options.js.map +1 -1
  304. package/lib/helpers/get-current-offset.js.map +1 -1
  305. package/lib/helpers/get-dictionary-match.js.map +1 -1
  306. package/lib/helpers/get-display-count-data.js.map +1 -1
  307. package/lib/helpers/get-elasticsearch-operator.js.map +1 -1
  308. package/lib/helpers/get-entities-with-banner.js.map +1 -1
  309. package/lib/helpers/get-entity-data.js.map +1 -1
  310. package/lib/helpers/get-entity-render-props.js.map +1 -1
  311. package/lib/helpers/get-extra-az-bits.js.map +1 -1
  312. package/lib/helpers/get-filter-props.js.map +1 -1
  313. package/lib/helpers/get-filter-relation-keys.js.map +1 -1
  314. package/lib/helpers/get-generic-props.js.map +1 -1
  315. package/lib/helpers/get-generic-render-variables.js.map +1 -1
  316. package/lib/helpers/get-image-ids.js.map +1 -1
  317. package/lib/helpers/get-inherited-filters.js.map +1 -1
  318. package/lib/helpers/get-items-to-display-ids.js.map +1 -1
  319. package/lib/helpers/get-modifiers.js.map +1 -1
  320. package/lib/helpers/get-not-equal-query.js.map +1 -1
  321. package/lib/helpers/get-pagination-index.js.map +1 -1
  322. package/lib/helpers/get-parsed-prop-values.js.map +1 -1
  323. package/lib/helpers/get-parsed-summary-value.js.map +1 -1
  324. package/lib/helpers/get-prop-values.js.map +1 -1
  325. package/lib/helpers/get-query-filters.js.map +1 -1
  326. package/lib/helpers/get-query-props.js.map +1 -1
  327. package/lib/helpers/get-required-schemas.js.map +1 -1
  328. package/lib/helpers/get-sanitized-prop-values.js.map +1 -1
  329. package/lib/helpers/get-search-filter-type.js.map +1 -1
  330. package/lib/helpers/get-sort-by-field-name.js.map +1 -1
  331. package/lib/helpers/get-unpublished-entity-name.js.map +1 -1
  332. package/lib/helpers/get-updated-filter-by.js.map +1 -1
  333. package/lib/helpers/get-wrapped-value-with-link.js.map +1 -1
  334. package/lib/helpers/group-entities.js.map +1 -1
  335. package/lib/helpers/has-children.js.map +1 -1
  336. package/lib/helpers/index.js.map +1 -1
  337. package/lib/helpers/inject-banner.js.map +1 -1
  338. package/lib/helpers/inject-banners-to-entities.js.map +1 -1
  339. package/lib/helpers/inject-multiple-banners/get-banners-for-entities/get-banners-for-entities.js.map +1 -1
  340. package/lib/helpers/inject-multiple-banners/get-banners-for-entities/index.js.map +1 -1
  341. package/lib/helpers/inject-multiple-banners/get-banners-for-nodes/get-banners-for-nodes.js.map +1 -1
  342. package/lib/helpers/inject-multiple-banners/get-banners-for-nodes/helpers/group-node-entities.js.map +1 -1
  343. package/lib/helpers/inject-multiple-banners/get-banners-for-nodes/helpers/index.js.map +1 -1
  344. package/lib/helpers/inject-multiple-banners/get-banners-for-nodes/index.js.map +1 -1
  345. package/lib/helpers/inject-multiple-banners/index.js.map +1 -1
  346. package/lib/helpers/inject-multiple-banners/inject-multiple-banners.js.map +1 -1
  347. package/lib/helpers/is-browser.js.map +1 -1
  348. package/lib/helpers/is-filter-entitys-id.js.map +1 -1
  349. package/lib/helpers/is-object.js.map +1 -1
  350. package/lib/helpers/is-using-relation-image.js.map +1 -1
  351. package/lib/helpers/parse-TextBlock.js.map +1 -1
  352. package/lib/helpers/parse-interval.js.map +1 -1
  353. package/lib/helpers/parse-props-to-display.js.map +1 -1
  354. package/lib/helpers/remove-extra-items.js.map +1 -1
  355. package/lib/helpers/remove-unwanted-characters.js.map +1 -1
  356. package/lib/helpers/render-children.js.map +1 -1
  357. package/lib/helpers/should-render-waypoint.js.map +1 -1
  358. package/lib/helpers/should-show-property.js.map +1 -1
  359. package/lib/helpers/sort-response-data.js.map +1 -1
  360. package/lib/helpers/split-children.js.map +1 -1
  361. package/lib/helpers/update-childrens-parent.js.map +1 -1
  362. package/lib/hooks/helpers/RenderComponent.js.map +1 -1
  363. package/lib/hooks/helpers/StoreImages.js.map +1 -1
  364. package/lib/hooks/helpers/append-gtm-classname.js +1 -0
  365. package/lib/hooks/helpers/append-gtm-classname.js.map +1 -1
  366. package/lib/hooks/helpers/buildPBComponents.js.map +1 -1
  367. package/lib/hooks/helpers/check-banner-insertion-set.js.map +1 -1
  368. package/lib/hooks/helpers/check-collisions.js.map +1 -1
  369. package/lib/hooks/helpers/constants.js.map +1 -1
  370. package/lib/hooks/helpers/get-banner-index.js.map +1 -1
  371. package/lib/hooks/helpers/get-banners-by-type.js.map +1 -1
  372. package/lib/hooks/helpers/get-lightbox-images.js.map +1 -1
  373. package/lib/hooks/helpers/getComponent.js.map +1 -1
  374. package/lib/hooks/helpers/index.js.map +1 -1
  375. package/lib/hooks/helpers/inject-element-banners.js.map +1 -1
  376. package/lib/hooks/helpers/inject-textblock-banners.js.map +1 -1
  377. package/lib/hooks/helpers/insert-banners.js.map +1 -1
  378. package/lib/hooks/helpers/update-targetings.js.map +1 -1
  379. package/lib/hooks/index.js.map +1 -1
  380. package/lib/hooks/use-banner-insertion.js.map +1 -1
  381. package/lib/hooks/use-check-mobile-screen.js.map +1 -1
  382. package/lib/hooks/use-get-entity-schema.js.map +1 -1
  383. package/lib/hooks/use-get-entity-schemas-as-obj.js.map +1 -1
  384. package/lib/hooks/use-get-image-id-from-relation.js.map +1 -1
  385. package/lib/hooks/use-get-images.js.map +1 -1
  386. package/lib/hooks/use-get-single-entity-schema.js.map +1 -1
  387. package/lib/hooks/use-page-builder.js.map +1 -1
  388. package/lib/index.js.map +1 -1
  389. package/lib/utils/component-map.js.map +1 -1
  390. package/lib/utils/get-class-modifiers.js.map +1 -1
  391. package/lib/utils/get-image-data.js.map +1 -1
  392. package/lib/utils/get-props-to-display-modifiers.js.map +1 -1
  393. package/lib/utils/index.js.map +1 -1
  394. package/lib/utils/is-object-empty.js.map +1 -1
  395. package/lib-es/BannerContext/helpers/index.js.map +1 -1
  396. package/lib-es/BannerContext/helpers/set-initial-banner-counters.js.map +1 -1
  397. package/lib-es/BannerContext/index.js.map +1 -1
  398. package/lib-es/HOC/index.js.map +1 -1
  399. package/lib-es/HOC/withInfiniteScroll.js.map +1 -1
  400. package/lib-es/HOC/withTitle.js.map +1 -1
  401. package/lib-es/PBContext/index.js.map +1 -1
  402. package/lib-es/application/query/index.js +45 -1
  403. package/lib-es/application/query/index.js.map +1 -1
  404. package/lib-es/components/BackToTop/BackToTop.js.map +1 -1
  405. package/lib-es/components/BackToTop/index.js.map +1 -1
  406. package/lib-es/components/Banner/AdSlotRender.js.map +1 -1
  407. package/lib-es/components/Banner/Banner.js.map +1 -1
  408. package/lib-es/components/Banner/BannerRender.js.map +1 -1
  409. package/lib-es/components/Banner/helpers.js.map +1 -1
  410. package/lib-es/components/Banner/index.js.map +1 -1
  411. package/lib-es/components/BlazeLink.js.map +1 -1
  412. package/lib-es/components/Breadcrumb/Breadcrumb.js.map +1 -1
  413. package/lib-es/components/Breadcrumb/index.js.map +1 -1
  414. package/lib-es/components/Button.js +18 -6
  415. package/lib-es/components/Button.js.map +1 -1
  416. package/lib-es/components/Card/Card.js.map +1 -1
  417. package/lib-es/components/Card/CardContainer.js +3 -7
  418. package/lib-es/components/Card/CardContainer.js.map +1 -1
  419. package/lib-es/components/Card/CardFactory.js +7 -4
  420. package/lib-es/components/Card/CardFactory.js.map +1 -1
  421. package/lib-es/components/Card/CardRender.js.map +1 -1
  422. package/lib-es/components/Card/constants.js.map +1 -1
  423. package/lib-es/components/Card/helpers/filter-query-setup.js.map +1 -1
  424. package/lib-es/components/Card/helpers/filters-setup.js.map +1 -1
  425. package/lib-es/components/Card/helpers/get-dynamic-grid-classes.js.map +1 -1
  426. package/lib-es/components/Card/helpers/get-published-listing-url.js.map +1 -1
  427. package/lib-es/components/Card/helpers/index.js.map +1 -1
  428. package/lib-es/components/Card/helpers/should-return.js.map +1 -1
  429. package/lib-es/components/Card/helpers/should-skip-single-query.js.map +1 -1
  430. package/lib-es/components/Card/helpers/use-dynamic-size-key.js.map +1 -1
  431. package/lib-es/components/Card/index.js.map +1 -1
  432. package/lib-es/components/Carousel/Carousel.js.map +1 -1
  433. package/lib-es/components/Carousel/CarouselImage/CarouselImage.js.map +1 -1
  434. package/lib-es/components/Carousel/CarouselImage/index.js.map +1 -1
  435. package/lib-es/components/Carousel/CarouselRender/CarouselRender.js.map +1 -1
  436. package/lib-es/components/Carousel/CarouselRender/index.js.map +1 -1
  437. package/lib-es/components/Carousel/index.js.map +1 -1
  438. package/lib-es/components/CarouselWrapper.js +2 -2
  439. package/lib-es/components/CarouselWrapper.js.map +1 -1
  440. package/lib-es/components/ClickWrapper.js.map +1 -1
  441. package/lib-es/components/Code/Code.js.map +1 -1
  442. package/lib-es/components/Code/ScriptTag.js.map +1 -1
  443. package/lib-es/components/Code/helpers/index.js.map +1 -1
  444. package/lib-es/components/Code/helpers/wrap-script-tags.js.map +1 -1
  445. package/lib-es/components/Code/index.js.map +1 -1
  446. package/lib-es/components/DataSummary/DataSummaryFactory.js.map +1 -1
  447. package/lib-es/components/DataSummary/DataSummaryRender.js.map +1 -1
  448. package/lib-es/components/DataSummary/DataSummaryTypes/HeadingLargeSummary/HeadingLargeSummary.js.map +1 -1
  449. package/lib-es/components/DataSummary/DataSummaryTypes/HeadingLargeSummary/HeadingLargeSummaryContent.js.map +1 -1
  450. package/lib-es/components/DataSummary/DataSummaryTypes/HeadingLargeSummary/index.js.map +1 -1
  451. package/lib-es/components/DataSummary/DataSummaryTypes/ItemDetailsSummary/ItemDetailsSummary.js.map +1 -1
  452. package/lib-es/components/DataSummary/DataSummaryTypes/ItemDetailsSummary/ItemDetailsSummaryContent.js.map +1 -1
  453. package/lib-es/components/DataSummary/DataSummaryTypes/ItemDetailsSummary/index.js.map +1 -1
  454. package/lib-es/components/DataSummary/DataSummaryTypes/LargeSummary/LargeSummary.js.map +1 -1
  455. package/lib-es/components/DataSummary/DataSummaryTypes/LargeSummary/LargeSummaryContent.js.map +1 -1
  456. package/lib-es/components/DataSummary/DataSummaryTypes/LargeSummary/index.js.map +1 -1
  457. package/lib-es/components/DataSummary/DataSummaryTypes/ListSummary/ListSummary.js.map +1 -1
  458. package/lib-es/components/DataSummary/DataSummaryTypes/ListSummary/ListSummaryContent.js.map +1 -1
  459. package/lib-es/components/DataSummary/DataSummaryTypes/ListSummary/index.js.map +1 -1
  460. package/lib-es/components/DataSummary/DataSummaryTypes/TextSummary/TextSummary.js.map +1 -1
  461. package/lib-es/components/DataSummary/DataSummaryTypes/TextSummary/TextSummaryContent.js.map +1 -1
  462. package/lib-es/components/DataSummary/DataSummaryTypes/TextSummary/index.js.map +1 -1
  463. package/lib-es/components/DataSummary/DataSummaryTypes/index.js.map +1 -1
  464. package/lib-es/components/DataSummary/helpers/build-loop-props-content.js.map +1 -1
  465. package/lib-es/components/DataSummary/helpers/build-props-to-display-with-content.js.map +1 -1
  466. package/lib-es/components/DataSummary/helpers/get-data-summary-query.js.map +1 -1
  467. package/lib-es/components/DataSummary/helpers/get-link-based-on-value.js.map +1 -1
  468. package/lib-es/components/DataSummary/helpers/get-link-to-published-content.js.map +1 -1
  469. package/lib-es/components/DataSummary/helpers/get-loop-props-limit.js.map +1 -1
  470. package/lib-es/components/DataSummary/helpers/get-prop-value.js.map +1 -1
  471. package/lib-es/components/DataSummary/helpers/get-value-from-array.js.map +1 -1
  472. package/lib-es/components/DataSummary/helpers/index.js.map +1 -1
  473. package/lib-es/components/DataSummary/helpers/parse-boolean-values.js.map +1 -1
  474. package/lib-es/components/DataSummary/helpers/strip-summary-props-content.js.map +1 -1
  475. package/lib-es/components/DataSummary/index.js.map +1 -1
  476. package/lib-es/components/EmailConfirm/EmailConfirm.js.map +1 -1
  477. package/lib-es/components/EmailConfirm/index.js.map +1 -1
  478. package/lib-es/components/EmailConfirm/mutation.js.map +1 -1
  479. package/lib-es/components/Image/GlobalLightbox/GlobalLightbox.js.map +1 -1
  480. package/lib-es/components/Image/GlobalLightbox/NavButton.js.map +1 -1
  481. package/lib-es/components/Image/GlobalLightbox/index.js.map +1 -1
  482. package/lib-es/components/Image/Image.js.map +1 -1
  483. package/lib-es/components/Image/ImageDetails.js.map +1 -1
  484. package/lib-es/components/Image/ImageFactory.js.map +1 -1
  485. package/lib-es/components/Image/ImageRender.js +4 -1
  486. package/lib-es/components/Image/ImageRender.js.map +1 -1
  487. package/lib-es/components/Image/Lightbox/Lightbox.js.map +1 -1
  488. package/lib-es/components/Image/Lightbox/index.js.map +1 -1
  489. package/lib-es/components/Image/index.js.map +1 -1
  490. package/lib-es/components/ItemList/ItemListButton/ItemListButton.js +111 -0
  491. package/lib-es/components/ItemList/ItemListButton/ItemListButton.js.map +1 -0
  492. package/lib-es/components/ItemList/ItemListButton/index.js +3 -0
  493. package/lib-es/components/ItemList/ItemListButton/index.js.map +1 -0
  494. package/lib-es/components/ItemList/ItemListCounter/ItemListCounter.js +60 -0
  495. package/lib-es/components/ItemList/ItemListCounter/ItemListCounter.js.map +1 -0
  496. package/lib-es/components/ItemList/ItemListCounter/index.js +3 -0
  497. package/lib-es/components/ItemList/ItemListCounter/index.js.map +1 -0
  498. package/lib-es/components/ItemList/ItemListNew/ItemListNew.js +64 -0
  499. package/lib-es/components/ItemList/ItemListNew/ItemListNew.js.map +1 -0
  500. package/lib-es/components/ItemList/ItemListNew/index.js +3 -0
  501. package/lib-es/components/ItemList/ItemListNew/index.js.map +1 -0
  502. package/lib-es/components/ItemList/constants.js +6 -0
  503. package/lib-es/components/ItemList/constants.js.map +1 -0
  504. package/lib-es/components/ItemList/helpers/get-item-list-data.js +7 -0
  505. package/lib-es/components/ItemList/helpers/get-item-list-data.js.map +1 -0
  506. package/lib-es/components/ItemList/helpers/get-item-list-id.js +11 -0
  507. package/lib-es/components/ItemList/helpers/get-item-list-id.js.map +1 -0
  508. package/lib-es/components/ItemList/helpers/get-item-list-ids.js +13 -0
  509. package/lib-es/components/ItemList/helpers/get-item-list-ids.js.map +1 -0
  510. package/lib-es/components/ItemList/helpers/index.js +6 -0
  511. package/lib-es/components/ItemList/helpers/index.js.map +1 -0
  512. package/lib-es/components/ItemList/helpers/set-item-list-id.js +10 -0
  513. package/lib-es/components/ItemList/helpers/set-item-list-id.js.map +1 -0
  514. package/lib-es/components/ItemList/helpers/set-param-and-redirect.js +20 -0
  515. package/lib-es/components/ItemList/helpers/set-param-and-redirect.js.map +1 -0
  516. package/lib-es/components/ItemList/hooks/index.js +2 -0
  517. package/lib-es/components/ItemList/hooks/index.js.map +1 -0
  518. package/lib-es/components/ItemList/hooks/use-item-list-id.js +26 -0
  519. package/lib-es/components/ItemList/hooks/use-item-list-id.js.map +1 -0
  520. package/lib-es/components/Layout/Layout.js.map +1 -1
  521. package/lib-es/components/Layout/constants.js.map +1 -1
  522. package/lib-es/components/Layout/helpers/check-if-row-has-columns.js.map +1 -1
  523. package/lib-es/components/Layout/helpers/get-styles-to-update.js.map +1 -1
  524. package/lib-es/components/Layout/helpers/index.js.map +1 -1
  525. package/lib-es/components/Layout/index.js.map +1 -1
  526. package/lib-es/components/LazyImage/LazyImage.js +4 -1
  527. package/lib-es/components/LazyImage/LazyImage.js.map +1 -1
  528. package/lib-es/components/LazyImage/index.js.map +1 -1
  529. package/lib-es/components/List/ListBuilder.js +12 -6
  530. package/lib-es/components/List/ListBuilder.js.map +1 -1
  531. package/lib-es/components/List/ListFactory.js +33 -9
  532. package/lib-es/components/List/ListFactory.js.map +1 -1
  533. package/lib-es/components/List/ListRender.js.map +1 -1
  534. package/lib-es/components/List/components/Cards/CardRenderWithInfiniteScroll.js.map +1 -1
  535. package/lib-es/components/List/components/Cards/CardsRender.js.map +1 -1
  536. package/lib-es/components/List/components/Cards/CardsRenderItem.js.map +1 -1
  537. package/lib-es/components/List/components/Cards/CardsRenderWrapper.js.map +1 -1
  538. package/lib-es/components/List/components/Cards/index.js.map +1 -1
  539. package/lib-es/components/List/components/Full/FullRender.js.map +1 -1
  540. package/lib-es/components/List/components/Full/FullRenderItem.js.map +1 -1
  541. package/lib-es/components/List/components/Full/FullRenderWithInfiniteScroll.js.map +1 -1
  542. package/lib-es/components/List/components/Full/index.js.map +1 -1
  543. package/lib-es/components/List/components/Header/ListHeader.js.map +1 -1
  544. package/lib-es/components/List/components/Header/index.js.map +1 -1
  545. package/lib-es/components/List/components/Pagination/Classic.js.map +1 -1
  546. package/lib-es/components/List/components/Pagination/ListPagination.js.map +1 -1
  547. package/lib-es/components/List/components/Pagination/LoadMore.js.map +1 -1
  548. package/lib-es/components/List/components/Pagination/index.js.map +1 -1
  549. package/lib-es/components/List/components/helpers/check-if-should-render-banner.js.map +1 -1
  550. package/lib-es/components/List/components/helpers/check-if-should-render-gtm.js.map +1 -1
  551. package/lib-es/components/List/components/helpers/index.js.map +1 -1
  552. package/lib-es/components/List/components/index.js.map +1 -1
  553. package/lib-es/components/List/constants.js.map +1 -1
  554. package/lib-es/components/List/helpers/build-az-aggregations.js.map +1 -1
  555. package/lib-es/components/List/helpers/build-az-url.js.map +1 -1
  556. package/lib-es/components/List/helpers/build-pagination-items.js.map +1 -1
  557. package/lib-es/components/List/helpers/build-pagination-url.js.map +1 -1
  558. package/lib-es/components/List/helpers/get-az-query-filter.js.map +1 -1
  559. package/lib-es/components/List/helpers/get-items-per-page-to-use.js.map +1 -1
  560. package/lib-es/components/List/helpers/get-sort-props.js.map +1 -1
  561. package/lib-es/components/List/helpers/has-required-item-list-details.js +20 -0
  562. package/lib-es/components/List/helpers/has-required-item-list-details.js.map +1 -0
  563. package/lib-es/components/List/helpers/index.js +1 -0
  564. package/lib-es/components/List/helpers/index.js.map +1 -1
  565. package/lib-es/components/List/helpers/sort-aggs.js.map +1 -1
  566. package/lib-es/components/List/index.js.map +1 -1
  567. package/lib-es/components/Login/LoggedInMessage.js.map +1 -1
  568. package/lib-es/components/Login/Login.js.map +1 -1
  569. package/lib-es/components/Login/LoginForm.js.map +1 -1
  570. package/lib-es/components/Login/helpers/check-gtm-children.js.map +1 -1
  571. package/lib-es/components/Login/helpers/get-url-to-use.js.map +1 -1
  572. package/lib-es/components/Login/helpers/index.js.map +1 -1
  573. package/lib-es/components/Login/index.js.map +1 -1
  574. package/lib-es/components/Menu/Menu.js +54 -46
  575. package/lib-es/components/Menu/Menu.js.map +1 -1
  576. package/lib-es/components/Menu/MenuContext.js +6 -0
  577. package/lib-es/components/Menu/MenuContext.js.map +1 -0
  578. package/lib-es/components/Menu/index.js.map +1 -1
  579. package/lib-es/components/MenuItem/MenuItem.js +24 -9
  580. package/lib-es/components/MenuItem/MenuItem.js.map +1 -1
  581. package/lib-es/components/MenuItem/index.js.map +1 -1
  582. package/lib-es/components/Modal/Modal.js.map +1 -1
  583. package/lib-es/components/Modal/index.js.map +1 -1
  584. package/lib-es/components/PasswordReset/PasswordReset.js.map +1 -1
  585. package/lib-es/components/PasswordReset/helpers/index.js.map +1 -1
  586. package/lib-es/components/PasswordReset/helpers/validatePassword.js.map +1 -1
  587. package/lib-es/components/PasswordReset/index.js.map +1 -1
  588. package/lib-es/components/PasswordResetRequest/PasswordResetRequest.js.map +1 -1
  589. package/lib-es/components/PasswordResetRequest/index.js.map +1 -1
  590. package/lib-es/components/SearchContent/SearchContent.js +129 -0
  591. package/lib-es/components/SearchContent/SearchContent.js.map +1 -0
  592. package/lib-es/components/SearchContent/SearchContentItems.js +33 -0
  593. package/lib-es/components/SearchContent/SearchContentItems.js.map +1 -0
  594. package/lib-es/components/SearchContent/SearchContentResults.js +31 -0
  595. package/lib-es/components/SearchContent/SearchContentResults.js.map +1 -0
  596. package/lib-es/components/SearchContent/SearchContentToggleIcon.js +30 -0
  597. package/lib-es/components/SearchContent/SearchContentToggleIcon.js.map +1 -0
  598. package/lib-es/components/SearchContent/index.js +1 -205
  599. package/lib-es/components/SearchContent/index.js.map +1 -1
  600. package/lib-es/components/SearchFilter/SearchFilter/CloseMobileForm.js.map +1 -1
  601. package/lib-es/components/SearchFilter/SearchFilter/FiltersList.js +2 -4
  602. package/lib-es/components/SearchFilter/SearchFilter/FiltersList.js.map +1 -1
  603. package/lib-es/components/SearchFilter/SearchFilter/MobileFormToolbar.js.map +1 -1
  604. package/lib-es/components/SearchFilter/SearchFilter/ResetDesktopForm.js.map +1 -1
  605. package/lib-es/components/SearchFilter/SearchFilter/SearchFilter.js +21 -46
  606. package/lib-es/components/SearchFilter/SearchFilter/SearchFilter.js.map +1 -1
  607. package/lib-es/components/SearchFilter/SearchFilter/index.js.map +1 -1
  608. package/lib-es/components/SearchFilter/SearchFilterContainer.js +70 -15
  609. package/lib-es/components/SearchFilter/SearchFilterContainer.js.map +1 -1
  610. package/lib-es/components/SearchFilter/components/Checkbox.js +18 -9
  611. package/lib-es/components/SearchFilter/components/Checkbox.js.map +1 -1
  612. package/lib-es/components/SearchFilter/components/Range.js.map +1 -1
  613. package/lib-es/components/SearchFilter/components/Select.js +23 -8
  614. package/lib-es/components/SearchFilter/components/Select.js.map +1 -1
  615. package/lib-es/components/SearchFilter/components/TextSearch.js +1 -5
  616. package/lib-es/components/SearchFilter/components/TextSearch.js.map +1 -1
  617. package/lib-es/components/SearchFilter/components/index.js.map +1 -1
  618. package/lib-es/components/SearchFilter/constants.js +1 -1
  619. package/lib-es/components/SearchFilter/constants.js.map +1 -1
  620. package/lib-es/components/SearchFilter/helpers/build-filters-query.js +54 -0
  621. package/lib-es/components/SearchFilter/helpers/build-filters-query.js.map +1 -0
  622. package/lib-es/components/SearchFilter/helpers/build-new-query.js.map +1 -1
  623. package/lib-es/components/SearchFilter/helpers/build-query.js +1 -1
  624. package/lib-es/components/SearchFilter/helpers/build-query.js.map +1 -1
  625. package/lib-es/components/SearchFilter/helpers/build-raw-query-stringified.js +2 -1
  626. package/lib-es/components/SearchFilter/helpers/build-raw-query-stringified.js.map +1 -1
  627. package/lib-es/components/SearchFilter/helpers/calculate-min-max.js.map +1 -1
  628. package/lib-es/components/SearchFilter/helpers/calculate-step.js.map +1 -1
  629. package/lib-es/components/SearchFilter/helpers/check-if-range-updated.js.map +1 -1
  630. package/lib-es/components/SearchFilter/helpers/decode-encode.js.map +1 -1
  631. package/lib-es/components/SearchFilter/helpers/get-display-value.js.map +1 -1
  632. package/lib-es/components/SearchFilter/helpers/get-filter-value-from-query.js.map +1 -1
  633. package/lib-es/components/SearchFilter/helpers/get-initial-filter-values.js +13 -1
  634. package/lib-es/components/SearchFilter/helpers/get-initial-filter-values.js.map +1 -1
  635. package/lib-es/components/SearchFilter/helpers/get-intersected-prop.js.map +1 -1
  636. package/lib-es/components/SearchFilter/helpers/get-range-value.js.map +1 -1
  637. package/lib-es/components/SearchFilter/helpers/get-responsive-filter-classnames.js.map +1 -1
  638. package/lib-es/components/SearchFilter/helpers/get-select-options.js.map +1 -1
  639. package/lib-es/components/SearchFilter/helpers/index.js +2 -1
  640. package/lib-es/components/SearchFilter/helpers/index.js.map +1 -1
  641. package/lib-es/components/SearchFilter/helpers/is-device-desktop.js.map +1 -1
  642. package/lib-es/components/SearchFilter/helpers/parse-filter-value.js +3 -3
  643. package/lib-es/components/SearchFilter/helpers/parse-filter-value.js.map +1 -1
  644. package/lib-es/components/SearchFilter/index.js.map +1 -1
  645. package/lib-es/components/SearchFilterSort/SearchFilterSort.js.map +1 -1
  646. package/lib-es/components/SearchFilterSort/constants.js.map +1 -1
  647. package/lib-es/components/SearchFilterSort/helpers/handle-sort-update.js.map +1 -1
  648. package/lib-es/components/SearchFilterSort/helpers/index.js.map +1 -1
  649. package/lib-es/components/SearchFilterSort/helpers/update-sort.js.map +1 -1
  650. package/lib-es/components/SearchFilterSort/index.js.map +1 -1
  651. package/lib-es/components/SocialFollow/SFItem.js.map +1 -1
  652. package/lib-es/components/SocialFollow/SocialFollow.js.map +1 -1
  653. package/lib-es/components/SocialFollow/SocialFollowRender.js.map +1 -1
  654. package/lib-es/components/SocialFollow/index.js.map +1 -1
  655. package/lib-es/components/SocialFollow/sf.config.js.map +1 -1
  656. package/lib-es/components/SubMenu/SubMenu.js.map +1 -1
  657. package/lib-es/components/SubMenu/index.js.map +1 -1
  658. package/lib-es/components/TextBlock/TextBlockRender.js.map +1 -1
  659. package/lib-es/components/TextBlock/index.js.map +1 -1
  660. package/lib-es/components/Video/Video.js.map +1 -1
  661. package/lib-es/components/Video/VideoModal.js.map +1 -1
  662. package/lib-es/components/Video/VideoRender.js.map +1 -1
  663. package/lib-es/components/Video/index.js.map +1 -1
  664. package/lib-es/components/Video/providers/Default.js.map +1 -1
  665. package/lib-es/components/Video/providers/JWPlayer/JWPlayerController.js.map +1 -1
  666. package/lib-es/components/Video/providers/JWPlayer/JWPlayerProvider.js.map +1 -1
  667. package/lib-es/components/Video/providers/YouTube/YouTubeProvider.js.map +1 -1
  668. package/lib-es/components/Video/providers/YouTube/YoutubeEmbeded.js.map +1 -1
  669. package/lib-es/components/Video/providers/YouTube/helpers/index.js.map +1 -1
  670. package/lib-es/components/Video/providers/get-provider.js.map +1 -1
  671. package/lib-es/components/Video/providers/index.js.map +1 -1
  672. package/lib-es/components/Wrapper.js.map +1 -1
  673. package/lib-es/components/index.js +10 -1
  674. package/lib-es/components/index.js.map +1 -1
  675. package/lib-es/constants/componentsDefaultValues.js.map +1 -1
  676. package/lib-es/constants/index.js +2 -1
  677. package/lib-es/constants/index.js.map +1 -1
  678. package/lib-es/helpers/append-images.js.map +1 -1
  679. package/lib-es/helpers/build-az-filter.js.map +1 -1
  680. package/lib-es/helpers/build-image-properties.js.map +1 -1
  681. package/lib-es/helpers/build-inherited-filters.js.map +1 -1
  682. package/lib-es/helpers/build-link-extra-props.js.map +1 -1
  683. package/lib-es/helpers/build-props-query.js.map +1 -1
  684. package/lib-es/helpers/build-query-fields.js.map +1 -1
  685. package/lib-es/helpers/build-raw-query-base.js.map +1 -1
  686. package/lib-es/helpers/build-raw-query.js.map +1 -1
  687. package/lib-es/helpers/build-search-values-checkbox-select.js.map +1 -1
  688. package/lib-es/helpers/build-search-values-text.js.map +1 -1
  689. package/lib-es/helpers/build-set-filters.js.map +1 -1
  690. package/lib-es/helpers/check-for-error.js.map +1 -1
  691. package/lib-es/helpers/check-props-to-use.js.map +1 -1
  692. package/lib-es/helpers/entities/constants.js.map +1 -1
  693. package/lib-es/helpers/get-banner-data.js.map +1 -1
  694. package/lib-es/helpers/get-click-wrapper-options.js.map +1 -1
  695. package/lib-es/helpers/get-current-offset.js.map +1 -1
  696. package/lib-es/helpers/get-dictionary-match.js.map +1 -1
  697. package/lib-es/helpers/get-display-count-data.js.map +1 -1
  698. package/lib-es/helpers/get-elasticsearch-operator.js.map +1 -1
  699. package/lib-es/helpers/get-entities-with-banner.js.map +1 -1
  700. package/lib-es/helpers/get-entity-data.js.map +1 -1
  701. package/lib-es/helpers/get-entity-render-props.js.map +1 -1
  702. package/lib-es/helpers/get-extra-az-bits.js.map +1 -1
  703. package/lib-es/helpers/get-filter-props.js.map +1 -1
  704. package/lib-es/helpers/get-filter-relation-keys.js.map +1 -1
  705. package/lib-es/helpers/get-generic-props.js.map +1 -1
  706. package/lib-es/helpers/get-generic-render-variables.js.map +1 -1
  707. package/lib-es/helpers/get-image-ids.js.map +1 -1
  708. package/lib-es/helpers/get-inherited-filters.js.map +1 -1
  709. package/lib-es/helpers/get-items-to-display-ids.js.map +1 -1
  710. package/lib-es/helpers/get-modifiers.js.map +1 -1
  711. package/lib-es/helpers/get-not-equal-query.js.map +1 -1
  712. package/lib-es/helpers/get-pagination-index.js.map +1 -1
  713. package/lib-es/helpers/get-parsed-prop-values.js.map +1 -1
  714. package/lib-es/helpers/get-parsed-summary-value.js.map +1 -1
  715. package/lib-es/helpers/get-prop-values.js.map +1 -1
  716. package/lib-es/helpers/get-query-filters.js.map +1 -1
  717. package/lib-es/helpers/get-query-props.js.map +1 -1
  718. package/lib-es/helpers/get-required-schemas.js.map +1 -1
  719. package/lib-es/helpers/get-sanitized-prop-values.js.map +1 -1
  720. package/lib-es/helpers/get-search-filter-type.js.map +1 -1
  721. package/lib-es/helpers/get-sort-by-field-name.js.map +1 -1
  722. package/lib-es/helpers/get-unpublished-entity-name.js.map +1 -1
  723. package/lib-es/helpers/get-updated-filter-by.js.map +1 -1
  724. package/lib-es/helpers/get-wrapped-value-with-link.js.map +1 -1
  725. package/lib-es/helpers/group-entities.js.map +1 -1
  726. package/lib-es/helpers/has-children.js.map +1 -1
  727. package/lib-es/helpers/index.js.map +1 -1
  728. package/lib-es/helpers/inject-banner.js.map +1 -1
  729. package/lib-es/helpers/inject-banners-to-entities.js.map +1 -1
  730. package/lib-es/helpers/inject-multiple-banners/get-banners-for-entities/get-banners-for-entities.js.map +1 -1
  731. package/lib-es/helpers/inject-multiple-banners/get-banners-for-entities/index.js.map +1 -1
  732. package/lib-es/helpers/inject-multiple-banners/get-banners-for-nodes/get-banners-for-nodes.js.map +1 -1
  733. package/lib-es/helpers/inject-multiple-banners/get-banners-for-nodes/helpers/group-node-entities.js.map +1 -1
  734. package/lib-es/helpers/inject-multiple-banners/get-banners-for-nodes/helpers/index.js.map +1 -1
  735. package/lib-es/helpers/inject-multiple-banners/get-banners-for-nodes/index.js.map +1 -1
  736. package/lib-es/helpers/inject-multiple-banners/index.js.map +1 -1
  737. package/lib-es/helpers/inject-multiple-banners/inject-multiple-banners.js.map +1 -1
  738. package/lib-es/helpers/is-browser.js.map +1 -1
  739. package/lib-es/helpers/is-filter-entitys-id.js.map +1 -1
  740. package/lib-es/helpers/is-object.js.map +1 -1
  741. package/lib-es/helpers/is-using-relation-image.js.map +1 -1
  742. package/lib-es/helpers/parse-TextBlock.js.map +1 -1
  743. package/lib-es/helpers/parse-interval.js.map +1 -1
  744. package/lib-es/helpers/parse-props-to-display.js.map +1 -1
  745. package/lib-es/helpers/remove-extra-items.js.map +1 -1
  746. package/lib-es/helpers/remove-unwanted-characters.js.map +1 -1
  747. package/lib-es/helpers/render-children.js.map +1 -1
  748. package/lib-es/helpers/should-render-waypoint.js.map +1 -1
  749. package/lib-es/helpers/should-show-property.js.map +1 -1
  750. package/lib-es/helpers/sort-response-data.js.map +1 -1
  751. package/lib-es/helpers/split-children.js.map +1 -1
  752. package/lib-es/helpers/update-childrens-parent.js.map +1 -1
  753. package/lib-es/hooks/helpers/RenderComponent.js.map +1 -1
  754. package/lib-es/hooks/helpers/StoreImages.js.map +1 -1
  755. package/lib-es/hooks/helpers/append-gtm-classname.js +1 -0
  756. package/lib-es/hooks/helpers/append-gtm-classname.js.map +1 -1
  757. package/lib-es/hooks/helpers/buildPBComponents.js.map +1 -1
  758. package/lib-es/hooks/helpers/check-banner-insertion-set.js.map +1 -1
  759. package/lib-es/hooks/helpers/check-collisions.js.map +1 -1
  760. package/lib-es/hooks/helpers/constants.js.map +1 -1
  761. package/lib-es/hooks/helpers/get-banner-index.js.map +1 -1
  762. package/lib-es/hooks/helpers/get-banners-by-type.js.map +1 -1
  763. package/lib-es/hooks/helpers/get-lightbox-images.js.map +1 -1
  764. package/lib-es/hooks/helpers/getComponent.js.map +1 -1
  765. package/lib-es/hooks/helpers/index.js.map +1 -1
  766. package/lib-es/hooks/helpers/inject-element-banners.js.map +1 -1
  767. package/lib-es/hooks/helpers/inject-textblock-banners.js.map +1 -1
  768. package/lib-es/hooks/helpers/insert-banners.js.map +1 -1
  769. package/lib-es/hooks/helpers/update-targetings.js.map +1 -1
  770. package/lib-es/hooks/index.js.map +1 -1
  771. package/lib-es/hooks/use-banner-insertion.js.map +1 -1
  772. package/lib-es/hooks/use-check-mobile-screen.js.map +1 -1
  773. package/lib-es/hooks/use-get-entity-schema.js.map +1 -1
  774. package/lib-es/hooks/use-get-entity-schemas-as-obj.js.map +1 -1
  775. package/lib-es/hooks/use-get-image-id-from-relation.js.map +1 -1
  776. package/lib-es/hooks/use-get-images.js.map +1 -1
  777. package/lib-es/hooks/use-get-single-entity-schema.js.map +1 -1
  778. package/lib-es/hooks/use-page-builder.js.map +1 -1
  779. package/lib-es/index.js.map +1 -1
  780. package/lib-es/utils/component-map.js.map +1 -1
  781. package/lib-es/utils/get-class-modifiers.js.map +1 -1
  782. package/lib-es/utils/get-image-data.js.map +1 -1
  783. package/lib-es/utils/get-props-to-display-modifiers.js.map +1 -1
  784. package/lib-es/utils/index.js.map +1 -1
  785. package/lib-es/utils/is-object-empty.js.map +1 -1
  786. package/package.json +5 -4
  787. package/src/application/query/index.js +51 -1
  788. package/src/components/Button.js +27 -5
  789. package/src/components/Card/CardContainer.js +2 -6
  790. package/src/components/Card/CardFactory.js +5 -3
  791. package/src/components/CarouselWrapper.js +2 -2
  792. package/src/components/Image/ImageRender.js +3 -0
  793. package/src/components/ItemList/ItemListButton/ItemListButton.js +94 -0
  794. package/src/components/ItemList/ItemListButton/index.js +3 -0
  795. package/src/components/ItemList/ItemListCounter/ItemListCounter.js +52 -0
  796. package/src/components/ItemList/ItemListCounter/index.js +3 -0
  797. package/src/components/ItemList/ItemListNew/ItemListNew.js +51 -0
  798. package/src/components/ItemList/ItemListNew/index.js +3 -0
  799. package/src/components/ItemList/constants.js +5 -0
  800. package/src/components/ItemList/helpers/get-item-list-data.js +6 -0
  801. package/src/components/ItemList/helpers/get-item-list-id.js +11 -0
  802. package/src/components/ItemList/helpers/get-item-list-ids.js +10 -0
  803. package/src/components/ItemList/helpers/index.js +5 -0
  804. package/src/components/ItemList/helpers/set-item-list-id.js +9 -0
  805. package/src/components/ItemList/helpers/set-param-and-redirect.js +20 -0
  806. package/src/components/ItemList/hooks/index.js +1 -0
  807. package/src/components/ItemList/hooks/use-item-list-id.js +27 -0
  808. package/src/components/LazyImage/LazyImage.js +11 -1
  809. package/src/components/List/ListBuilder.js +10 -5
  810. package/src/components/List/ListFactory.js +48 -12
  811. package/src/components/List/helpers/has-required-item-list-details.js +14 -0
  812. package/src/components/List/helpers/index.js +1 -0
  813. package/src/components/Menu/Menu.js +61 -54
  814. package/src/components/Menu/MenuContext.js +5 -0
  815. package/src/components/MenuItem/MenuItem.js +39 -14
  816. package/src/components/SearchContent/SearchContent.js +136 -0
  817. package/src/components/SearchContent/SearchContentItems.js +28 -0
  818. package/src/components/SearchContent/SearchContentResults.js +27 -0
  819. package/src/components/SearchContent/SearchContentToggleIcon.js +27 -0
  820. package/src/components/SearchContent/index.js +1 -217
  821. package/src/components/SearchFilter/SearchFilter/FiltersList.js +30 -37
  822. package/src/components/SearchFilter/SearchFilter/SearchFilter.js +20 -28
  823. package/src/components/SearchFilter/SearchFilterContainer.js +61 -16
  824. package/src/components/SearchFilter/components/Checkbox.js +23 -8
  825. package/src/components/SearchFilter/components/Select.js +18 -11
  826. package/src/components/SearchFilter/components/TextSearch.js +1 -3
  827. package/src/components/SearchFilter/constants.js +1 -1
  828. package/src/components/SearchFilter/helpers/build-filters-query.js +40 -0
  829. package/src/components/SearchFilter/helpers/build-query.js +3 -1
  830. package/src/components/SearchFilter/helpers/build-raw-query-stringified.js +2 -1
  831. package/src/components/SearchFilter/helpers/get-initial-filter-values.js +12 -1
  832. package/src/components/SearchFilter/helpers/index.js +3 -1
  833. package/src/components/SearchFilter/helpers/parse-filter-value.js +3 -3
  834. package/src/components/index.js +10 -1
  835. package/src/constants/index.js +2 -0
  836. package/src/helpers/build-raw-query.js +1 -0
  837. package/src/hooks/helpers/append-gtm-classname.js +3 -0
  838. package/tests/helpers/mocks.js +4 -4
  839. package/tests/unit/src/components/Button.test.js +55 -1
  840. package/tests/unit/src/components/ItemList/ItemListButton.test.js +175 -0
  841. package/tests/unit/src/components/ItemList/ItemListCounter.test.js +65 -0
  842. package/tests/unit/src/components/ItemList/ItemListNew.test.js +164 -0
  843. package/tests/unit/src/components/ItemList/__snapshots__/ItemListButton.test.js.snap +107 -0
  844. package/tests/unit/src/components/ItemList/__snapshots__/ItemListCounter.test.js.snap +31 -0
  845. package/tests/unit/src/components/ItemList/__snapshots__/ItemListNew.test.js.snap +27 -0
  846. package/tests/unit/src/components/ItemList/helpers/get-item-list-data.test.js +28 -0
  847. package/tests/unit/src/components/ItemList/helpers/get-item-list-id.test.js +20 -0
  848. package/tests/unit/src/components/ItemList/helpers/get-item-list-ids.test.js +19 -0
  849. package/tests/unit/src/components/ItemList/helpers/set-item-list-id.test.js +13 -0
  850. package/tests/unit/src/components/ItemList/helpers/set-param-and-redirect.test.js +30 -0
  851. package/tests/unit/src/components/ItemList/hooks/use-item-list-id.test.js +32 -0
  852. package/tests/unit/src/components/List/helpers/has-required-item-list-details.test.js +30 -0
  853. package/tests/unit/src/components/Menu/Menu.test.js +9 -3
  854. package/tests/unit/src/components/Menu/__snapshots__/Menu.test.js.snap +12 -11
  855. package/tests/unit/src/components/MenuItem/MenuItem.test.js +1 -1
  856. package/tests/unit/src/components/MenuItem/SubMenu.test.js +5 -1
  857. package/tests/unit/src/components/MenuItem/__snapshots__/MenuItem.test.js.snap +54 -10
  858. package/tests/unit/src/components/SearchContent/SearchContent.test.js +29 -0
  859. package/tests/unit/src/components/SearchContent/__snapshots__/SearchContent.test.js.snap +9 -0
  860. package/tests/unit/src/components/SearchFilter/SearchFilter/SearchFilter.test.js +26 -7
  861. package/tests/unit/src/components/SearchFilter/SearchFilter/__snapshots__/SearchFilter.test.js.snap +4 -0
  862. package/tests/unit/src/components/SearchFilter/components/__snapshots__/Checkbox.test.js.snap +2 -0
  863. package/tests/unit/src/components/SearchFilter/components/__snapshots__/Select.test.js.snap +4 -0
  864. package/tests/unit/src/components/SearchFilter/helpers/build-query.test.js +2 -2
  865. package/tests/unit/src/components/SearchFilter/helpers/get-initial-filter-values.test.js +25 -11
  866. package/tests/unit/src/components/SearchFilter/helpers/parse-filter-value.test.js +1 -1
  867. package/tests/unit/src/components/__snapshots__/index.test.js.snap +12 -0
@@ -0,0 +1,136 @@
1
+ import React, { useState, useEffect } from 'react';
2
+ import PropTypes from 'prop-types';
3
+ import { useRouter } from 'next/router';
4
+ import { useDebounceSearch } from '@blaze-cms/plugin-search-ui';
5
+ import SearchContentResults from './SearchContentResults';
6
+ import SearchContentToggleIcon from './SearchContentToggleIcon';
7
+
8
+ const SearchContent = ({
9
+ entities,
10
+ searchInputAlignment,
11
+ searchInputWrapperMobile,
12
+ searchInputWrapperDesktop,
13
+ collapsible,
14
+ isMobile,
15
+ placeholder,
16
+ modifier
17
+ }) => {
18
+ const [collapsed, setCollapsed] = useState(collapsible);
19
+ const router = useRouter();
20
+
21
+ const { results, searchTerm, setSearchTerm, debouncedSearchTerm } = useDebounceSearch({
22
+ entities,
23
+ initialSearchTerm: '',
24
+ resultKeys: 'id, name, image { url }, url'
25
+ });
26
+
27
+ useEffect(
28
+ () => {
29
+ const handleRouteChange = () => setSearchTerm('');
30
+ router.events.on('routeChangeStart', handleRouteChange);
31
+
32
+ return () => {
33
+ router.events.off('routeChangeStart', handleRouteChange);
34
+ };
35
+ },
36
+ [router.events, setSearchTerm]
37
+ );
38
+
39
+ const responsiveClasses = isMobile ? searchInputWrapperMobile : searchInputWrapperDesktop;
40
+
41
+ const handleClick = (e, url) => {
42
+ e.preventDefault();
43
+ router.push(url);
44
+ };
45
+
46
+ const handleKeyPress = e => {
47
+ if (e.key === 'Enter' && e.target.value !== '') {
48
+ router.push(`/search?search_term=${e.target.value}`);
49
+ }
50
+ };
51
+
52
+ const handleOnBlur = () => {
53
+ if (!collapsible) return;
54
+ if (!debouncedSearchTerm || debouncedSearchTerm === '') setCollapsed(true);
55
+ };
56
+
57
+ const handleClearSearchResults = () => {
58
+ setSearchTerm('');
59
+ };
60
+
61
+ const className = ['search-content', modifier, responsiveClasses].filter(Boolean).join(' ');
62
+ return collapsed ? (
63
+ <div className={className}>
64
+ <div className="search-content--collapse__wrapper">
65
+ <label className="search-content--collapse__label">
66
+ <span className="search-content--collapse__icon_wrapper">
67
+ <svg className="search-content--collapse__icon" viewBox="0 0 20 20">
68
+ <path
69
+ fillRule="evenodd"
70
+ d="M8 4a4 4 0 100 8 4 4 0 000-8zM2 8a6 6 0 1110.89 3.476l4.817 4.817a1 1 0 01-1.414 1.414l-4.816-4.816A6 6 0 012 8z"
71
+ clipRule="evenodd"
72
+ />
73
+ </svg>
74
+ </span>
75
+ <input
76
+ onFocus={() => setCollapsed(false)}
77
+ onChange={e => setSearchTerm(e.target.value)}
78
+ type="text"
79
+ name="search"
80
+ className="search-content--collapse__input"
81
+ />
82
+ </label>
83
+ </div>
84
+ </div>
85
+ ) : (
86
+ <>
87
+ <div className={className}>
88
+ <div className="search-content--expanded__wrapper">
89
+ <label className="search-content--expanded__label">
90
+ <span className="search-content--expanded__icon_wrapper">
91
+ <SearchContentToggleIcon results={results} onClear={handleClearSearchResults} />
92
+ </span>
93
+ <input
94
+ type="text"
95
+ name="search"
96
+ onChange={e => setSearchTerm(e.target.value)}
97
+ onKeyPress={handleKeyPress}
98
+ className="search-content--expanded__input"
99
+ placeholder={placeholder}
100
+ value={searchTerm}
101
+ onBlur={handleOnBlur}
102
+ />
103
+ </label>
104
+ </div>
105
+ <SearchContentResults
106
+ results={results}
107
+ debouncedSearchTerm={debouncedSearchTerm}
108
+ handleClick={handleClick}
109
+ />
110
+ </div>
111
+ </>
112
+ );
113
+ };
114
+
115
+ SearchContent.propTypes = {
116
+ searchInputAlignment: PropTypes.string,
117
+ searchInputWrapperMobile: PropTypes.string,
118
+ searchInputWrapperDesktop: PropTypes.string,
119
+ placeholder: PropTypes.string,
120
+ isMobile: PropTypes.bool,
121
+ collapsible: PropTypes.bool,
122
+ entities: PropTypes.array.isRequired,
123
+ modifier: PropTypes.string
124
+ };
125
+
126
+ SearchContent.defaultProps = {
127
+ searchInputAlignment: '',
128
+ searchInputWrapperMobile: '',
129
+ searchInputWrapperDesktop: '',
130
+ placeholder: '',
131
+ isMobile: false,
132
+ collapsible: false,
133
+ modifier: ''
134
+ };
135
+
136
+ export default SearchContent;
@@ -0,0 +1,28 @@
1
+ import React from 'react';
2
+ import BlazeLink from '../BlazeLink';
3
+ import LazyImage from '../LazyImage';
4
+
5
+ const SearchContentItems = ({ results = [], onClick }) =>
6
+ results.map(item => {
7
+ if (!item.url) return null;
8
+
9
+ const { id, name, image, url } = item;
10
+
11
+ return (
12
+ <BlazeLink href={url} onClick={onClick} key={id}>
13
+ <div className="search-content--results__wrapper">
14
+ {image?.url ? (
15
+ <LazyImage
16
+ src={image.url}
17
+ alt={name}
18
+ className="search-content--results__image"
19
+ sizeKey="search-result"
20
+ />
21
+ ) : null}
22
+ <span className="search-content--results__title">{name}</span>
23
+ </div>
24
+ </BlazeLink>
25
+ );
26
+ });
27
+
28
+ export default SearchContentItems;
@@ -0,0 +1,27 @@
1
+ import React from 'react';
2
+ import BlazeLink from '../BlazeLink';
3
+ import SearchContentItems from './SearchContentItems';
4
+
5
+ const SearchContentResults = ({ results, debouncedSearchTerm, onClick }) => {
6
+ if (debouncedSearchTerm !== '') {
7
+ return (
8
+ <div className="search-content--results__wrapper">
9
+ <div className="search-content--results__wrapper--message">
10
+ <div className="search-content--results__content">
11
+ {results.length === 0 && (
12
+ <div className="search-content--results__message">
13
+ <BlazeLink href={`/search?search_term=${debouncedSearchTerm}`}>
14
+ {`Search all results for: ${debouncedSearchTerm}`}
15
+ </BlazeLink>
16
+ </div>
17
+ )}
18
+ {results.length > 0 && <SearchContentItems results={results} onClick={onClick} />}
19
+ </div>
20
+ </div>
21
+ </div>
22
+ );
23
+ }
24
+ return null;
25
+ };
26
+
27
+ export default SearchContentResults;
@@ -0,0 +1,27 @@
1
+ import React from 'react';
2
+
3
+ const SearchContentToggleIcon = ({ results, onClear }) => {
4
+ if (results && results.length > 0) {
5
+ return (
6
+ <svg className="search-content--expanded__icon" viewBox="0 0 20 20" onClick={onClear}>
7
+ <path
8
+ fillRule="evenodd"
9
+ d="M4.293 4.293a1 1 0 011.414 0L10 8.586l4.293-4.293a1 1 0 111.414 1.414L11.414 10l4.293 4.293a1 1 0 01-1.414 1.414L10 11.414l-4.293 4.293a1 1 0 01-1.414-1.414L8.586 10 4.293 5.707a1 1 0 010-1.414z"
10
+ clipRule="evenodd"
11
+ />
12
+ </svg>
13
+ );
14
+ }
15
+
16
+ return (
17
+ <svg className="search-content--expanded__icon" viewBox="0 0 20 20">
18
+ <path
19
+ fillRule="evenodd"
20
+ d="M8 4a4 4 0 100 8 4 4 0 000-8zM2 8a6 6 0 1110.89 3.476l4.817 4.817a1 1 0 01-1.414 1.414l-4.816-4.816A6 6 0 012 8z"
21
+ clipRule="evenodd"
22
+ />
23
+ </svg>
24
+ );
25
+ };
26
+
27
+ export default SearchContentToggleIcon;
@@ -1,219 +1,3 @@
1
- import React, { useState } from 'react';
2
- import PropTypes from 'prop-types';
3
- import { gql, useApolloClient } from '@apollo/client';
4
-
5
- import { useRouter } from 'next/router';
6
- import { getPublishedContent } from '../../application/query';
7
- import BlazeLink from '../BlazeLink';
8
-
9
- const logError = error => error;
10
-
11
- const SearchContent = ({
12
- entities,
13
- searchInputAlignment,
14
- searchInputWrapperMobile,
15
- searchInputWrapperDesktop,
16
- collapsible,
17
- isMobile,
18
- placeholder
19
- }) => {
20
- const [collapsed, setCollapsed] = useState(collapsible);
21
- const [searchTerm, setSearchTerm] = useState(null);
22
- const [data, setData] = useState([]);
23
-
24
- const router = useRouter();
25
- const client = useApolloClient();
26
-
27
- const capitalize = s => {
28
- if (typeof s !== 'string') return '';
29
- return s.charAt(0).toUpperCase() + s.slice(1);
30
- };
31
-
32
- React.useEffect(() => {
33
- if (data && data.length !== 0) return;
34
-
35
- const promises = entities.map(entity => {
36
- const [a, b] = entity.split('_');
37
-
38
- const entityName = capitalize(a) + capitalize(b);
39
-
40
- const rawQueryStringified = JSON.stringify({
41
- size: 0,
42
- query: {
43
- bool: {
44
- should: [
45
- {
46
- match: {
47
- docType: entity
48
- }
49
- }
50
- ],
51
- minimum_should_match: 1
52
- }
53
- }
54
- });
55
-
56
- const query = gql`
57
- ${getPublishedContent(entityName)}
58
- `;
59
-
60
- try {
61
- return client.query({
62
- query,
63
- variables: {
64
- rawQueryStringified,
65
- offset: 0,
66
- limit: 5
67
- }
68
- });
69
- } catch (e) {
70
- return [];
71
- }
72
- });
73
-
74
- try {
75
- (async () => {
76
- try {
77
- const fetchResults = await Promise.all(promises);
78
- const searchResults = fetchResults
79
- .map(result => {
80
- const { data: resultData } = result;
81
- return resultData.searchPublishedContent.results;
82
- })
83
- .flat();
84
-
85
- setData(searchResults);
86
- } catch (e) {
87
- logError(e);
88
- }
89
- })();
90
- } catch (e) {
91
- logError(e);
92
- }
93
- });
94
-
95
- const handleClick = (e, url) => {
96
- e.preventDefault();
97
- router.push(url);
98
- };
99
-
100
- const handleKeyPress = e => {
101
- if (e.key === 'Enter' && e.target.value !== '') {
102
- router.push(`/search?search_term=${e.target.value}`);
103
- }
104
- };
105
-
106
- const renderResults = () =>
107
- // eslint-disable-next-line no-undef
108
- data?.map(dataItem => {
109
- const { name, image, url } = dataItem;
110
-
111
- if (searchTerm && searchTerm !== '') {
112
- if (name.includes(searchTerm)) {
113
- return (
114
- <BlazeLink href={url} onClick={e => handleClick(e, url)}>
115
- <div className="mt-2 mb-1">
116
- <div className="flex justify-start items-center">
117
- {image.url ? <img src={image.url} alt={name} className="w-20 h-14" /> : null}
118
- <span className="ml-2">{name}</span>
119
- </div>
120
- </div>
121
- </BlazeLink>
122
- );
123
- }
124
-
125
- return null;
126
- }
127
- });
128
-
129
- const searchResultsMessage = searchTerm ? `Search results for: ${searchTerm}` : '';
130
-
131
- return collapsed ? (
132
- <div className={isMobile ? searchInputWrapperMobile : searchInputWrapperDesktop}>
133
- <div className="search-content--collapse__wrapper">
134
- <label className="search-content--collapse__label">
135
- <span className="search-content--collapse__icon_wrapper">
136
- <svg className="search-content--collapse__icon" viewBox="0 0 20 20">
137
- <path
138
- fillRule="evenodd"
139
- d="M8 4a4 4 0 100 8 4 4 0 000-8zM2 8a6 6 0 1110.89 3.476l4.817 4.817a1 1 0 01-1.414 1.414l-4.816-4.816A6 6 0 012 8z"
140
- clipRule="evenodd"
141
- />
142
- </svg>
143
- </span>
144
- <input
145
- onFocus={() => setCollapsed(false)}
146
- onChange={e => setSearchTerm(e.target.value)}
147
- type="text"
148
- name="search"
149
- value=""
150
- className="search-content--collapse__input"
151
- />
152
- </label>
153
- </div>
154
- </div>
155
- ) : (
156
- <>
157
- <div className={`${isMobile ? searchInputWrapperMobile : searchInputWrapperDesktop}`}>
158
- <div className="search-content--expanded__wrapper">
159
- <label className="search-content--expanded__label">
160
- <span className="search-content--expanded__icon_wrapper">
161
- <svg className="search-content--expanded__icon" viewBox="0 0 20 20">
162
- <path
163
- fillRule="evenodd"
164
- d="M8 4a4 4 0 100 8 4 4 0 000-8zM2 8a6 6 0 1110.89 3.476l4.817 4.817a1 1 0 01-1.414 1.414l-4.816-4.816A6 6 0 012 8z"
165
- clipRule="evenodd"
166
- />
167
- </svg>
168
- </span>
169
- <input
170
- type="text"
171
- name="search"
172
- onChange={e => setSearchTerm(e.target.value)}
173
- onKeyPress={handleKeyPress}
174
- className="search-content--expanded__input"
175
- placeholder={placeholder}
176
- onBlur={() => {
177
- if (!collapsible) return;
178
- if (!searchTerm || searchTerm === '') setCollapsed(true);
179
- }}
180
- />
181
- </label>
182
- </div>
183
- {data &&
184
- searchResultsMessage !== '' && (
185
- <div className="search-content--results__wrapper">
186
- <div className="search-content--results__wrapper--message">
187
- <div className="text-sm pt-2">{searchResultsMessage}</div>
188
-
189
- <div className="search-content--results__message">
190
- <div className="search-content--results__content">{renderResults()}</div>
191
- </div>
192
- </div>
193
- </div>
194
- )}
195
- </div>
196
- </>
197
- );
198
- };
199
-
200
- SearchContent.propTypes = {
201
- searchInputAlignment: PropTypes.string,
202
- searchInputWrapperMobile: PropTypes.string,
203
- searchInputWrapperDesktop: PropTypes.string,
204
- placeholder: PropTypes.string,
205
- isMobile: PropTypes.bool,
206
- collapsible: PropTypes.bool,
207
- entities: PropTypes.array.isRequired
208
- };
209
-
210
- SearchContent.defaultProps = {
211
- searchInputAlignment: '',
212
- searchInputWrapperMobile: '',
213
- searchInputWrapperDesktop: '',
214
- placeholder: '',
215
- isMobile: false,
216
- collapsible: false
217
- };
1
+ import SearchContent from './SearchContent';
218
2
 
219
3
  export default SearchContent;
@@ -17,13 +17,10 @@ const FiltersList = ({
17
17
 
18
18
  return filters.map(({ type, label, propsToDisplay, elementTitle, ...otherProps }, index) => {
19
19
  if (!propsToDisplay && !propsToDisplay.length) return null;
20
-
21
20
  const dynamicKey = [itemId, index].join('-');
22
21
  const isDataAvailable = !!data && Object.keys(data).length;
23
22
  const dataAggregations = isDataAvailable ? data : null;
24
23
  const areAggregationsAvailable = isDataAvailable && !!dataAggregations;
25
- const results = areAggregationsAvailable && dataAggregations[propsToDisplay[0]];
26
- const shouldDisplayFilter = results && results.buckets && results.buckets.length;
27
24
 
28
25
  switch (type) {
29
26
  case TEXT_SEARCH:
@@ -43,43 +40,39 @@ const FiltersList = ({
43
40
  );
44
41
  case CHECKBOX:
45
42
  return (
46
- !!shouldDisplayFilter && (
47
- <div
48
- key={dynamicKey}
49
- className="filter__section filter__section--search-refine filter__section--checkboxes">
50
- <Checkbox
51
- {...otherProps}
52
- data={data}
53
- prop={propsToDisplay[0]}
54
- label={label}
55
- elementTitle={elementTitle}
56
- hasUrl={hasUrl}
57
- filterValues={filterValues}
58
- updateFilterValues={updateFilterValues}
59
- shouldSearch={shouldSearch}
60
- />
61
- </div>
62
- )
43
+ <div
44
+ key={dynamicKey}
45
+ className="filter__section filter__section--search-refine filter__section--checkboxes">
46
+ <Checkbox
47
+ {...otherProps}
48
+ data={data}
49
+ prop={propsToDisplay[0]}
50
+ label={label}
51
+ elementTitle={elementTitle}
52
+ hasUrl={hasUrl}
53
+ filterValues={filterValues}
54
+ updateFilterValues={updateFilterValues}
55
+ shouldSearch={shouldSearch}
56
+ />
57
+ </div>
63
58
  );
64
59
  case SELECT:
65
60
  return (
66
- !!shouldDisplayFilter && (
67
- <div
68
- key={dynamicKey}
69
- className="filter__section filter__section--search-refine filter__section--selects">
70
- <SelectFilter
71
- {...otherProps}
72
- data={data}
73
- prop={propsToDisplay[0]}
74
- label={label}
75
- elementTitle={elementTitle}
76
- hasUrl={hasUrl}
77
- filterValues={filterValues}
78
- updateFilterValues={updateFilterValues}
79
- shouldSearch={shouldSearch}
80
- />
81
- </div>
82
- )
61
+ <div
62
+ key={dynamicKey}
63
+ className="filter__section filter__section--search-refine filter__section--selects">
64
+ <SelectFilter
65
+ {...otherProps}
66
+ data={data}
67
+ prop={propsToDisplay[0]}
68
+ label={label}
69
+ elementTitle={elementTitle}
70
+ hasUrl={hasUrl}
71
+ filterValues={filterValues}
72
+ updateFilterValues={updateFilterValues}
73
+ shouldSearch={shouldSearch}
74
+ />
75
+ </div>
83
76
  );
84
77
  case RANGE:
85
78
  return (
@@ -1,4 +1,4 @@
1
- import React, { useState, useEffect, useReducer } from 'react';
1
+ import React, { useState, useEffect } from 'react';
2
2
  import PropTypes from 'prop-types';
3
3
  import classnames from 'classnames';
4
4
  import debounce from 'lodash.debounce';
@@ -14,21 +14,6 @@ import ResetDesktopForm from './ResetDesktopForm';
14
14
  import MobileFormToolbar from './MobileFormToolbar';
15
15
  import { SEARCH, REFINE, MORE_FILTERS_CLASSES } from '../constants';
16
16
 
17
- const reducer = (state, action) => {
18
- const { newValues, type, shouldSearch = true } = action;
19
-
20
- switch (type) {
21
- case 'update':
22
- return { ...state, ...newValues, shouldSearch };
23
- case 'resetSearch':
24
- return { ...state, shouldSearch: false };
25
- case 'reset':
26
- return { ...newValues, shouldSearch };
27
- default:
28
- throw new Error();
29
- }
30
- };
31
-
32
17
  const SearchFilter = ({
33
18
  searchFilterRef,
34
19
  data,
@@ -40,27 +25,33 @@ const SearchFilter = ({
40
25
  isCollapsedOnResponsive,
41
26
  displaySearchFilter,
42
27
  setDisplaySearchFilter,
43
- initialFilterValues,
44
28
  groupAfterDesktop,
45
- groupAfterMobile
29
+ groupAfterMobile,
30
+ filterValues,
31
+ setAppliedFilters
46
32
  }) => {
47
33
  const [moreFiltersMobileCollapsed, setMoreFiltersMobileCollapsed] = useState(true);
48
34
  const [moreFiltersDesktopCollapsed, setMoreFiltersDesktopCollapsed] = useState(true);
49
- const [filterValues, dispatch] = useReducer(reducer, initialFilterValues);
50
35
 
51
- const handleSubmit = debounce(newValues => {
36
+ const doSubmit = (newValues = filterValues) => {
52
37
  const newQuery = buildQuery(newValues, filters);
53
38
  handleSearch(newQuery);
39
+ setMoreFiltersDesktopCollapsed(true);
40
+ setMoreFiltersMobileCollapsed(true);
41
+ };
42
+
43
+ const handleSubmit = debounce(newValues => {
44
+ doSubmit(newValues);
54
45
  }, 200);
55
46
 
56
47
  useEffect(
57
48
  () => {
58
49
  if (filterValues.shouldSearch) {
59
50
  handleSubmit(filterValues);
60
- dispatch({ type: 'resetSearch' });
51
+ setAppliedFilters({ type: 'resetSearch' });
61
52
  }
62
53
  },
63
- [filterValues, handleSubmit]
54
+ [filterValues, handleSubmit, setAppliedFilters]
64
55
  );
65
56
 
66
57
  const formClass = classnames('filter__form filter__form--initial', {
@@ -79,12 +70,11 @@ const SearchFilter = ({
79
70
 
80
71
  const handleReset = () => {
81
72
  const newValues = getInitialFilterValues(data, filters, {});
82
-
83
- dispatch({ newValues, type: 'reset' });
73
+ setAppliedFilters({ newValues, type: 'reset' });
84
74
  };
85
75
 
86
76
  const updateFilterValues = (newValues, shouldSubmit) => {
87
- dispatch({ newValues, shouldSearch: shouldSubmit, type: 'update' });
77
+ setAppliedFilters({ newValues, shouldSearch: shouldSubmit, type: 'update' });
88
78
  };
89
79
 
90
80
  const shouldGroup = !!(groupAfterDesktop || groupAfterMobile);
@@ -99,8 +89,7 @@ const SearchFilter = ({
99
89
  id={formId}
100
90
  onSubmit={e => {
101
91
  e.preventDefault();
102
- const newQuery = buildQuery(filterValues, filters);
103
- handleSearch(newQuery);
92
+ doSubmit();
104
93
  }}>
105
94
  {displaySearchFilter && (
106
95
  <CloseMobileForm handleClose={() => setDisplaySearchFilter(false)} />
@@ -136,6 +125,7 @@ const SearchFilter = ({
136
125
 
137
126
  {!!groupAfterMobile && (
138
127
  <button
128
+ data-testId="search-filter-mobile-toggler"
139
129
  className={moreFiltersMobileTogglerClass}
140
130
  type="button"
141
131
  onClick={() => setMoreFiltersMobileCollapsed(!moreFiltersMobileCollapsed)}>
@@ -160,6 +150,7 @@ const SearchFilter = ({
160
150
 
161
151
  {!!groupAfterDesktop && (
162
152
  <button
153
+ data-testId="search-filter-desktop-toggler"
163
154
  className={moreFiltersDesktopTogglerClass}
164
155
  type="button"
165
156
  onClick={() =>
@@ -241,7 +232,8 @@ SearchFilter.propTypes = {
241
232
  isCollapsedOnResponsive: PropTypes.bool.isRequired,
242
233
  groupAfterDesktop: PropTypes.number.isRequired,
243
234
  groupAfterMobile: PropTypes.number.isRequired,
244
- initialFilterValues: PropTypes.object.isRequired
235
+ filterValues: PropTypes.object.isRequired,
236
+ setAppliedFilters: PropTypes.func.isRequired
245
237
  };
246
238
 
247
239
  export default SearchFilter;