@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
@@ -1,4 +1,4 @@
1
- import React, { useState, useRef } from 'react';
1
+ import React, { useState, useRef, useReducer } from 'react';
2
2
  import { useRouter } from 'next/router';
3
3
  import { useQuery } from '@apollo/client';
4
4
  import PropTypes from 'prop-types';
@@ -6,11 +6,31 @@ import { parseUrl, stringify } from 'query-string';
6
6
  import SearchFilter from './SearchFilter';
7
7
  import { withTitle } from '../../HOC';
8
8
  import { getSearchPublishedContent } from '../../application/query';
9
- import { buildNewQuery, buildRawQueryStringified, getInitialFilterValues } from './helpers';
9
+ import {
10
+ buildNewQuery,
11
+ buildRawQueryStringified,
12
+ getInitialFilterValues,
13
+ buildFiltersQuery
14
+ } from './helpers';
10
15
  import { getEntityData } from '../../helpers';
11
16
  import { RAW_RESULTS, RANGE, CHECKBOX_SELECT } from './constants';
12
17
  import { SCROLL_OFFSET } from '../../constants';
13
18
 
19
+ const reducer = (state, action) => {
20
+ const { newValues, type, shouldSearch = true } = action;
21
+
22
+ switch (type) {
23
+ case 'update':
24
+ return { ...state, ...newValues, shouldSearch };
25
+ case 'resetSearch':
26
+ return { ...state, shouldSearch: false };
27
+ case 'reset':
28
+ return { ...newValues, shouldSearch };
29
+ default:
30
+ throw new Error();
31
+ }
32
+ };
33
+
14
34
  const SearchFilterContainer = ({
15
35
  entity,
16
36
  url,
@@ -18,25 +38,31 @@ const SearchFilterContainer = ({
18
38
  name,
19
39
  isCollapsedOnResponsive,
20
40
  groupAfterMobile,
21
- groupAfterDesktop
41
+ groupAfterDesktop,
42
+ filterBy,
43
+ filterByProperty,
44
+ shouldAddFilters
22
45
  }) => {
23
46
  const router = useRouter();
47
+ const { asPath } = router;
24
48
  const searchFilterRef = useRef(null);
25
49
  const [key, setKey] = useState(`filter-${name}`);
26
50
  const [displaySearchFilter, setDisplaySearchFilter] = useState(false);
27
- const hasUrl = !!url;
28
51
  const {
29
52
  url: currentUrl,
30
53
  query: { sort, sortby },
31
54
  query
32
- } = parseUrl(router.asPath);
55
+ } = parseUrl(asPath);
56
+ const [filterValues, dispatch] = useReducer(
57
+ reducer,
58
+ getInitialFilterValues(null, filters, query)
59
+ );
60
+ const hasUrl = !!url;
61
+
33
62
  const sortValues = sort && sortby ? stringify({ sort, sortby }) : '';
34
63
  const baseQuery = sortValues ? `${currentUrl}?${sortValues}` : currentUrl;
35
64
 
36
65
  const action = getSearchPublishedContent(RAW_RESULTS);
37
-
38
- let rawQueryStringified = '';
39
-
40
66
  const checkboxSelectValues = [];
41
67
  const rangeValues = [];
42
68
 
@@ -50,21 +76,32 @@ const SearchFilterContainer = ({
50
76
 
51
77
  const { docType } = getEntityData(entity);
52
78
 
53
- rawQueryStringified = buildRawQueryStringified(checkboxSelectValues, rangeValues, docType);
79
+ const filtersQuery = shouldAddFilters
80
+ ? buildFiltersQuery(filterValues || query, filterBy, filterByProperty)
81
+ : [];
82
+
83
+ const rawQueryStringified = buildRawQueryStringified(
84
+ checkboxSelectValues,
85
+ rangeValues,
86
+ docType,
87
+ filtersQuery
88
+ );
54
89
 
55
- const { data, error, loading } = useQuery(action, {
90
+ const { data, error } = useQuery(action, {
56
91
  variables: { rawQueryStringified, limit: 0 }, // we only want aggs so limit=0 for no search results
57
92
  skip: !rawQueryStringified
58
93
  });
59
94
 
60
- if (loading) return null;
61
95
  if (error) return error.message;
62
96
  if (!filters.length) return null;
63
97
 
64
- const { searchPublishedContent: { rawResults: { aggregations: filterData = {} } = {} } = {} } =
98
+ const { searchPublishedContent: { rawResults: { aggregations: filterData } = {} } = {} } =
65
99
  data || {};
66
100
 
67
- const initialFilterValues = getInitialFilterValues(filterData, filters, query);
101
+ if (filterValues.dataNotSet && filterData) {
102
+ const initialFilterValues = getInitialFilterValues(filterData, filters, query);
103
+ dispatch({ newValues: initialFilterValues, shouldSearch: false, type: 'update' });
104
+ }
68
105
 
69
106
  const handleSearch = newQuery => {
70
107
  setDisplaySearchFilter(false);
@@ -93,17 +130,19 @@ const SearchFilterContainer = ({
93
130
  window.scrollTo(0, 0);
94
131
  }
95
132
  };
133
+ if (!filterValues) return '';
96
134
 
97
135
  return (
98
136
  <SearchFilter
99
137
  key={key}
138
+ setAppliedFilters={dispatch}
100
139
  searchFilterRef={searchFilterRef}
101
140
  data={filterData}
102
141
  filters={filters}
103
142
  hasUrl={hasUrl}
104
143
  entity={entity}
105
144
  handleSearch={handleSearch}
106
- initialFilterValues={initialFilterValues}
145
+ filterValues={filterValues}
107
146
  name={name}
108
147
  isCollapsedOnResponsive={isCollapsedOnResponsive}
109
148
  displaySearchFilter={displaySearchFilter}
@@ -121,7 +160,10 @@ SearchFilterContainer.propTypes = {
121
160
  name: PropTypes.string.isRequired,
122
161
  isCollapsedOnResponsive: PropTypes.bool,
123
162
  groupAfterMobile: PropTypes.number,
124
- groupAfterDesktop: PropTypes.number
163
+ groupAfterDesktop: PropTypes.number,
164
+ filterBy: PropTypes.array,
165
+ filterByProperty: PropTypes.array,
166
+ shouldAddFilters: PropTypes.bool
125
167
  };
126
168
 
127
169
  SearchFilterContainer.defaultProps = {
@@ -130,7 +172,10 @@ SearchFilterContainer.defaultProps = {
130
172
  entity: '',
131
173
  isCollapsedOnResponsive: true,
132
174
  groupAfterMobile: 0,
133
- groupAfterDesktop: 0
175
+ groupAfterDesktop: 0,
176
+ filterBy: [],
177
+ filterByProperty: [],
178
+ shouldAddFilters: false
134
179
  };
135
180
 
136
181
  export default withTitle(SearchFilterContainer);
@@ -7,8 +7,17 @@ import { withTitle } from '../../../HOC';
7
7
  import { decodeValue } from '../helpers';
8
8
  import { LIMIT_MIN, LIMIT_MAX, MORE, LESS } from '../constants';
9
9
 
10
- const Checkbox = ({ data, prop, updateFilterValues, filterValues, label, shouldSearch }) => {
10
+ const Checkbox = ({
11
+ data,
12
+ prop,
13
+ updateFilterValues,
14
+ filterValues,
15
+ label,
16
+ shouldSearch,
17
+ displayFilterCount
18
+ }) => {
11
19
  const [checkboxLimit, setCheckboxLimit] = useState(null);
20
+ if (!data[prop]) return null;
12
21
 
13
22
  const handleCheckboxOptions = () => {
14
23
  if (checkboxLimit[prop] === LIMIT_MIN) {
@@ -35,7 +44,10 @@ const Checkbox = ({ data, prop, updateFilterValues, filterValues, label, shouldS
35
44
  const multiple = [];
36
45
 
37
46
  const sortedValues = data[prop].buckets
38
- .map(({ key }) => key)
47
+ .map(({ key, doc_count: count }) => {
48
+ const optionLabel = displayFilterCount ? `${key} (${count})` : key;
49
+ return [key, optionLabel, !count];
50
+ })
39
51
  .filter(Boolean)
40
52
  .sort();
41
53
 
@@ -43,11 +55,12 @@ const Checkbox = ({ data, prop, updateFilterValues, filterValues, label, shouldS
43
55
  (value, i) =>
44
56
  i < checkboxLimit[prop] &&
45
57
  multiple.push({
46
- label: upperFirst(value),
47
- value,
58
+ label: upperFirst(value[1]),
59
+ value: value[0],
48
60
  name: prop,
49
- checked: checkboxQueryParams.includes(value),
50
- id: value
61
+ checked: checkboxQueryParams.includes(value[0]),
62
+ id: value[0],
63
+ disabled: value[2]
51
64
  })
52
65
  );
53
66
 
@@ -95,12 +108,14 @@ Checkbox.propTypes = {
95
108
  filterValues: PropTypes.object.isRequired,
96
109
  updateFilterValues: PropTypes.func.isRequired,
97
110
  shouldSearch: PropTypes.bool,
98
- label: PropTypes.string
111
+ label: PropTypes.string,
112
+ displayFilterCount: PropTypes.bool
99
113
  };
100
114
 
101
115
  Checkbox.defaultProps = {
102
116
  shouldSearch: false,
103
- label: ''
117
+ label: '',
118
+ displayFilterCount: false
104
119
  };
105
120
 
106
121
  export default withTitle(Checkbox);
@@ -11,17 +11,21 @@ const SelectFilter = ({
11
11
  updateFilterValues,
12
12
  filterValues,
13
13
  shouldSearch,
14
- displayLabelAsPlaceholder
14
+ displayLabelAsPlaceholder,
15
+ displayFilterCount
15
16
  }) => {
16
17
  const filterValue = filterValues[prop] || '';
17
-
18
- const options = data[prop].buckets
19
- .map(bucket => bucket.key)
18
+ const disabledOptions = [];
19
+ const { buckets = [] } = data[prop] || {};
20
+ const options = buckets
21
+ .map(({ key, doc_count: count }) => {
22
+ if (!count) disabledOptions.push(key);
23
+ const optionLabel = displayFilterCount ? `${key} (${count})` : key;
24
+ return [key, optionLabel];
25
+ })
20
26
  .filter(Boolean)
21
27
  .sort();
22
28
 
23
- const optionsJoined = options;
24
-
25
29
  const labelText = label || prop;
26
30
  let labelToUse = labelText;
27
31
  let defaultTextValue = DEFAULT_OPTION;
@@ -36,14 +40,14 @@ const SelectFilter = ({
36
40
  value={filterValue}
37
41
  id={prop}
38
42
  data-testid={`filter-${prop}`}
39
- options={optionsJoined}
43
+ options={options}
40
44
  defaultTextValue={defaultTextValue}
41
45
  onChange={({ value }) => {
42
46
  let valueToUse = value;
43
47
  if (value === defaultTextValue) valueToUse = '';
44
-
45
48
  updateFilterValues({ [prop]: valueToUse }, shouldSearch);
46
49
  }}
50
+ disabled={disabledOptions}
47
51
  />
48
52
  );
49
53
  };
@@ -51,17 +55,20 @@ const SelectFilter = ({
51
55
  SelectFilter.propTypes = {
52
56
  data: PropTypes.object.isRequired,
53
57
  prop: PropTypes.string.isRequired,
54
- filterValues: PropTypes.object.isRequired,
58
+ filterValues: PropTypes.object,
55
59
  updateFilterValues: PropTypes.func.isRequired,
56
60
  shouldSearch: PropTypes.bool,
57
61
  label: PropTypes.string,
58
- displayLabelAsPlaceholder: PropTypes.bool
62
+ displayLabelAsPlaceholder: PropTypes.bool,
63
+ displayFilterCount: PropTypes.bool
59
64
  };
60
65
 
61
66
  SelectFilter.defaultProps = {
67
+ filterValues: {},
62
68
  shouldSearch: false,
63
69
  label: '',
64
- displayLabelAsPlaceholder: false
70
+ displayLabelAsPlaceholder: false,
71
+ displayFilterCount: false
65
72
  };
66
73
 
67
74
  export default withTitle(SelectFilter);
@@ -5,7 +5,7 @@ import { MdSearch } from 'react-icons/md';
5
5
  import { withTitle } from '../../../HOC';
6
6
  import { SEARCH_TERM } from '../constants';
7
7
 
8
- const TextSearch = ({ label, searchValue, updateFilterValues, handleSubmit, filterValues }) => (
8
+ const TextSearch = ({ label, searchValue, updateFilterValues }) => (
9
9
  <div className="search">
10
10
  <div className="search__wrapper">
11
11
  <div className="form-field form-field--input form-field--search">
@@ -34,10 +34,8 @@ const TextSearch = ({ label, searchValue, updateFilterValues, handleSubmit, filt
34
34
  );
35
35
 
36
36
  TextSearch.propTypes = {
37
- filterValues: PropTypes.object.isRequired,
38
37
  searchValue: PropTypes.string.isRequired,
39
38
  updateFilterValues: PropTypes.func.isRequired,
40
- handleSubmit: PropTypes.func.isRequired,
41
39
  label: PropTypes.string
42
40
  };
43
41
 
@@ -2,7 +2,7 @@ const CHECKBOX = 'checkbox';
2
2
  const SELECT = 'select';
3
3
  const TEXT_SEARCH = 'text-search';
4
4
  const SEARCH_TERM = 'search_term';
5
- const SIZE = 50;
5
+ const SIZE = process.env.BLAZE_PB_SEARCH_FILETER_AGG_SIZE || 500;
6
6
  const KEYWORD = 'keyword';
7
7
  const RAW_RESULTS = 'rawResults';
8
8
  const DEFAULT_OPTION = 'Any';
@@ -0,0 +1,40 @@
1
+ const builFilterObject = (key, value, filters) => {
2
+ const isArray = Array.isArray(value);
3
+ if (!isArray) {
4
+ const singleFilterObj = { match: { [key]: value } };
5
+ filters.push(singleFilterObj);
6
+ return;
7
+ }
8
+
9
+ value.forEach(filterValue => {
10
+ filters.push({ match: { [key]: filterValue } });
11
+ });
12
+ };
13
+ const buildFiltersQuery = (query, filterBy, filterByProperty) => {
14
+ const mustFilters = [];
15
+ Object.keys(query).forEach(queryKey => {
16
+ if (queryKey === 'search_term' || queryKey === 'shouldSearch') return;
17
+ if (!queryKey || !query[queryKey]) return;
18
+ const queryValue = query[queryKey];
19
+ const queryKeyword = `${queryKey}.keyword`;
20
+ builFilterObject(queryKeyword, queryValue, mustFilters);
21
+ });
22
+
23
+ if (filterByProperty && filterByProperty.length) {
24
+ filterByProperty &&
25
+ filterByProperty.forEach(filterByPropOption => {
26
+ const [filterByPropKey] = filterByPropOption.split('/');
27
+ filterBy.forEach(filterByOption => {
28
+ if (filterByOption.indexOf(filterByPropKey) === -1) return;
29
+ const [, filteryByValue] = filterByOption.split('/');
30
+ const filterByKeyword = `${filterByPropKey}.keyword`;
31
+ if (!filteryByValue) return;
32
+ mustFilters.push({ match: { [filterByKeyword]: filteryByValue } });
33
+ });
34
+ });
35
+ }
36
+
37
+ return mustFilters;
38
+ };
39
+
40
+ export default buildFiltersQuery;
@@ -3,7 +3,9 @@ import parseFilterValue from './parse-filter-value';
3
3
 
4
4
  const buildQuery = (filterValues, filters) => {
5
5
  const newQuery = [];
6
- const searchValue = filterValues[SEARCH_TERM];
6
+ const searchValue = filterValues[SEARCH_TERM]
7
+ ? encodeURIComponent(filterValues[SEARCH_TERM])
8
+ : '';
7
9
  if (searchValue) newQuery.push(`${SEARCH_TERM}=${searchValue}`);
8
10
 
9
11
  filters.forEach(({ propsToDisplay, type }) => {
@@ -1,6 +1,6 @@
1
1
  import { KEYWORD, SIZE } from '../constants';
2
2
 
3
- const buildRawQueryStringified = (checkboxSelectValues, rangeValues, entity) => {
3
+ const buildRawQueryStringified = (checkboxSelectValues, rangeValues, entity, mustFilters) => {
4
4
  if (!checkboxSelectValues.length && !rangeValues.length) return '';
5
5
 
6
6
  const aggs = {};
@@ -36,6 +36,7 @@ const buildRawQueryStringified = (checkboxSelectValues, rangeValues, entity) =>
36
36
  }
37
37
  }
38
38
  ],
39
+ must: mustFilters,
39
40
  minimum_should_match: 1
40
41
  }
41
42
  }
@@ -3,12 +3,23 @@ import getFilterValueFromQuery from './get-filter-value-from-query';
3
3
 
4
4
  const getInitialFilterValues = (filterData, filters, query) => {
5
5
  const filterValues = {};
6
+ filterValues[SEARCH_TERM] = query[SEARCH_TERM] || '';
7
+
8
+ if (!filterData) {
9
+ filters.forEach(({ propsToDisplay: [key] }) => {
10
+ filterValues[key] = null;
11
+ });
12
+ filterValues.dataNotSet = true;
13
+ return filterValues;
14
+ }
15
+
6
16
  Object.keys(filterData).forEach(key => {
7
17
  const filterProps =
8
18
  filters.find(({ propsToDisplay }) => propsToDisplay.find(prop => key === prop)) || {};
9
19
  filterValues[key] = getFilterValueFromQuery(key, filterProps, filterData[key], query);
10
20
  });
11
- filterValues[SEARCH_TERM] = query[SEARCH_TERM] || '';
21
+
22
+ filterValues.dataNotSet = false;
12
23
 
13
24
  return filterValues;
14
25
  };
@@ -13,6 +13,7 @@ import isDeviceDesktop from './is-device-desktop';
13
13
  import getInitialFilterValues from './get-initial-filter-values';
14
14
  import getFilterValueFromQuery from './get-filter-value-from-query';
15
15
  import buildQuery from './build-query';
16
+ import buildFiltersQuery from './build-filters-query';
16
17
 
17
18
  export {
18
19
  buildQuery,
@@ -30,5 +31,6 @@ export {
30
31
  getSelectOptions,
31
32
  isDeviceDesktop,
32
33
  getInitialFilterValues,
33
- getFilterValueFromQuery
34
+ getFilterValueFromQuery,
35
+ buildFiltersQuery
34
36
  };
@@ -8,10 +8,10 @@ const parseFilterValue = (key, type, value) => {
8
8
  if (value.minValue === value.min && value.maxValue === value.max) return null;
9
9
  return `${key}=${value.minValue}-${value.maxValue}`;
10
10
  case CHECKBOX:
11
- if (typeof value === 'string') return `${key}=${value}`;
12
- return value.map(val => `${key}=${val}`).join('&');
11
+ if (typeof value === 'string') return `${key}=${encodeURIComponent(value)}`;
12
+ return value.map(val => `${key}=${encodeURIComponent(val)}`).join('&');
13
13
  case SELECT: {
14
- const parsedValue = value.replace(/&/g, '%26');
14
+ const parsedValue = encodeURIComponent(value);
15
15
  return `${key}=${parsedValue}`;
16
16
  }
17
17
 
@@ -18,7 +18,7 @@ export default {
18
18
  video: dynamic(() => import(/* webpackChunkName: "blazePbVideo" */ './Video')),
19
19
  wrapper: dynamic(() => import(/* webpackChunkName: "blazePbWrapper" */ './Wrapper')),
20
20
  searchcontent: dynamic(() =>
21
- import(/* webpackChunkName: "blazePbSearchFilter" */ './SearchContent')
21
+ import(/* webpackChunkName: "blazePbSearchFilter" */ './SearchContent/SearchContent')
22
22
  ),
23
23
  searchfilter: dynamic(() =>
24
24
  import(/* webpackChunkName: "blazePbSearchFilter" */ './SearchFilter')
@@ -42,5 +42,14 @@ export default {
42
42
  import(/* webpackChunkName: "blazePbPasswordResetRequest" */ './PasswordResetRequest')
43
43
  ),
44
44
  breadcrumb: dynamic(() => import(/* webpackChunkName: "blazePbBreadcrumb" */ './Breadcrumb')),
45
+ itemlistbutton: dynamic(() =>
46
+ import(/* webpackChunkName: "blazePbItemListButton" */ './ItemList/ItemListButton')
47
+ ),
48
+ itemlistcounter: dynamic(() =>
49
+ import(/* webpackChunkName: "blazePbItemListCounter" */ './ItemList/ItemListCounter')
50
+ ),
51
+ itemlistnew: dynamic(() =>
52
+ import(/* webpackChunkName: "blazePbItemListNew" */ './ItemList/ItemListNew')
53
+ ),
45
54
  backtotop: dynamic(() => import(/* webpackChunkName: "blazePbBackToTop" */ './BackToTop'))
46
55
  };
@@ -17,6 +17,7 @@ const RANGE = 'range';
17
17
  const CHECKBOX = 'checkbox';
18
18
  const ELEMENT = 'element';
19
19
  const MENU_ITEM = 'menuitem';
20
+ const SUB_MENU = 'submenu';
20
21
  const SELECT = 'select';
21
22
  const ON_CLICK = 'onClick';
22
23
  const KEYWORD = 'keyword';
@@ -303,6 +304,7 @@ export {
303
304
  MOBILE_WIDTH,
304
305
  HIDDEN,
305
306
  MENU_ITEM,
307
+ SUB_MENU,
306
308
  LOGIN_FORM,
307
309
  PASSWORD_REGEX,
308
310
  PASSWORD_VALIDATION_MESSAGE,
@@ -62,6 +62,7 @@ const buildRawQuery = (
62
62
 
63
63
  if (itemsToDisplay && itemsToDisplay.length) {
64
64
  const itemsToDisplayIds = getItemsToDisplayIds(itemsToDisplay);
65
+
65
66
  query.bool.must.push({ ids: { values: itemsToDisplayIds } });
66
67
  if (shouldApplySort) {
67
68
  return {
@@ -7,6 +7,9 @@ const appendGtmClassName = (settings, childComponents) => {
7
7
  children: [, compChildren]
8
8
  }
9
9
  } = childComponents;
10
+
11
+ if (!compChildren || !Array.isArray(compChildren)) return settings;
12
+
10
13
  const gtmClassNames = compChildren
11
14
  .filter(
12
15
  ({
@@ -1521,13 +1521,13 @@ const RAW_QUERY_ALL_SEARCH_VALUE_DIFFERENT_OPERATOR_TEXT_CHECKBOX_HAS_OR_OPERATO
1521
1521
  };
1522
1522
 
1523
1523
  const RAW_QUERY_STRINGIFIED =
1524
- '{"aggs":{"tags.name":{"terms":{"field":"tags.name.keyword","size":50}},"category.name"' +
1525
- ':{"terms":{"field":"category.name.keyword","size":50}}},"size":0,"query":{"bool":{"filter":{"bool"' +
1524
+ '{"aggs":{"tags.name":{"terms":{"field":"tags.name.keyword","size":500}},"category.name"' +
1525
+ ':{"terms":{"field":"category.name.keyword","size":500}}},"size":0,"query":{"bool":{"filter":{"bool"' +
1526
1526
  ':{"should":[{"match":{"docType":"published_page"}}],"minimum_should_match":1}}}}}';
1527
1527
 
1528
1528
  const RAW_QUERY_STRINGIFIED_WITH_RANGE =
1529
- '{"aggs":{"tags.name":{"terms":{"field":"tags.name.keyword","size":50}},"category.name":{"' +
1530
- 'terms":{"field":"category.name.keyword","size":50}},"price":{"stats":{"field":"price"}},"length":' +
1529
+ '{"aggs":{"tags.name":{"terms":{"field":"tags.name.keyword","size":500}},"category.name":{"' +
1530
+ 'terms":{"field":"category.name.keyword","size":500}},"price":{"stats":{"field":"price"}},"length":' +
1531
1531
  '{"stats":{"field":"length"}}},"size":0,"query":{"bool":{"filter":{"bool":{"should":[{"match":' +
1532
1532
  '{"docType":"published_page"}}],"minimum_should_match":1}}}}}';
1533
1533
 
@@ -1,5 +1,5 @@
1
1
  import React from 'react';
2
- import { act, render } from '@testing-library/react';
2
+ import { act, render, fireEvent, waitFor } from '@testing-library/react';
3
3
  import '@testing-library/jest-dom/extend-expect';
4
4
  import Button from '../../../../src/components/Button';
5
5
 
@@ -20,6 +20,16 @@ const componentProps = {
20
20
  }
21
21
  };
22
22
 
23
+ const contentToShow = 'Content to show';
24
+
25
+ const seoVisivilityProps = {
26
+ text: 'show more',
27
+ afterClickText: 'show less',
28
+ url: '',
29
+ icon: '',
30
+ children: [<p>Content to show</p>]
31
+ };
32
+
23
33
  const renderComponent = async props => {
24
34
  let renderResults;
25
35
 
@@ -68,4 +78,48 @@ describe('Button component', () => {
68
78
  const { container } = await renderComponent(logoutButton);
69
79
  expect(container.innerHTML).toBe('');
70
80
  });
81
+
82
+ it('should toggle button text and render child components for SEO visibility ', async () => {
83
+ const props = {
84
+ ...componentProps,
85
+ ...seoVisivilityProps,
86
+ childSeoVisibility: true
87
+ };
88
+ const { container, getByText } = await renderComponent(props);
89
+
90
+ const element = await waitFor(() => getByText('show more'));
91
+ expect(container.innerHTML).toContain(contentToShow);
92
+
93
+ fireEvent(
94
+ element,
95
+ new MouseEvent('click', {
96
+ bubbles: true,
97
+ cancelable: true
98
+ })
99
+ );
100
+ expect(container.innerHTML).toContain('show less');
101
+ expect(container.innerHTML).toContain(contentToShow);
102
+ });
103
+
104
+ it('should toggle button text hide child components when SEO visibility is disabled', async () => {
105
+ const props = {
106
+ ...componentProps,
107
+ ...seoVisivilityProps,
108
+ childSeoVisibility: false
109
+ };
110
+ const { container, getByText } = await renderComponent(props);
111
+
112
+ const element = await waitFor(() => getByText('show more'));
113
+ expect(container.innerHTML).not.toContain(contentToShow);
114
+
115
+ fireEvent(
116
+ element,
117
+ new MouseEvent('click', {
118
+ bubbles: true,
119
+ cancelable: true
120
+ })
121
+ );
122
+ expect(container.innerHTML).toContain('show less');
123
+ expect(container.innerHTML).toContain(contentToShow);
124
+ });
71
125
  });