@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,10 @@
1
- import React, { useState, useRef } from 'react';
1
+ import _defineProperty from "@babel/runtime/helpers/defineProperty";
2
+
3
+ function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
4
+
5
+ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
6
+
7
+ import React, { useState, useRef, useReducer } from 'react';
2
8
  import { useRouter } from 'next/router';
3
9
  import { useQuery } from '@apollo/client';
4
10
  import PropTypes from 'prop-types';
@@ -6,11 +12,39 @@ import { parseUrl, stringify } from 'query-string';
6
12
  import SearchFilter from './SearchFilter';
7
13
  import { withTitle } from '../../HOC';
8
14
  import { getSearchPublishedContent } from '../../application/query';
9
- import { buildNewQuery, buildRawQueryStringified, getInitialFilterValues } from './helpers';
15
+ import { buildNewQuery, buildRawQueryStringified, getInitialFilterValues, buildFiltersQuery } from './helpers';
10
16
  import { getEntityData } from '../../helpers';
11
17
  import { RAW_RESULTS, RANGE, CHECKBOX_SELECT } from './constants';
12
18
  import { SCROLL_OFFSET } from '../../constants';
13
19
 
20
+ const reducer = (state, action) => {
21
+ const {
22
+ newValues,
23
+ type,
24
+ shouldSearch = true
25
+ } = action;
26
+
27
+ switch (type) {
28
+ case 'update':
29
+ return _objectSpread(_objectSpread(_objectSpread({}, state), newValues), {}, {
30
+ shouldSearch
31
+ });
32
+
33
+ case 'resetSearch':
34
+ return _objectSpread(_objectSpread({}, state), {}, {
35
+ shouldSearch: false
36
+ });
37
+
38
+ case 'reset':
39
+ return _objectSpread(_objectSpread({}, newValues), {}, {
40
+ shouldSearch
41
+ });
42
+
43
+ default:
44
+ throw new Error();
45
+ }
46
+ };
47
+
14
48
  const SearchFilterContainer = ({
15
49
  entity,
16
50
  url,
@@ -18,13 +52,18 @@ const SearchFilterContainer = ({
18
52
  name,
19
53
  isCollapsedOnResponsive,
20
54
  groupAfterMobile,
21
- groupAfterDesktop
55
+ groupAfterDesktop,
56
+ filterBy,
57
+ filterByProperty,
58
+ shouldAddFilters
22
59
  }) => {
23
60
  const router = useRouter();
61
+ const {
62
+ asPath
63
+ } = router;
24
64
  const searchFilterRef = useRef(null);
25
65
  const [key, setKey] = useState(`filter-${name}`);
26
66
  const [displaySearchFilter, setDisplaySearchFilter] = useState(false);
27
- const hasUrl = !!url;
28
67
  const {
29
68
  url: currentUrl,
30
69
  query: {
@@ -32,14 +71,15 @@ const SearchFilterContainer = ({
32
71
  sortby
33
72
  },
34
73
  query
35
- } = parseUrl(router.asPath);
74
+ } = parseUrl(asPath);
75
+ const [filterValues, dispatch] = useReducer(reducer, getInitialFilterValues(null, filters, query));
76
+ const hasUrl = !!url;
36
77
  const sortValues = sort && sortby ? stringify({
37
78
  sort,
38
79
  sortby
39
80
  }) : '';
40
81
  const baseQuery = sortValues ? `${currentUrl}?${sortValues}` : currentUrl;
41
82
  const action = getSearchPublishedContent(RAW_RESULTS);
42
- let rawQueryStringified = '';
43
83
  const checkboxSelectValues = [];
44
84
  const rangeValues = [];
45
85
  filters.forEach(({
@@ -55,11 +95,11 @@ const SearchFilterContainer = ({
55
95
  const {
56
96
  docType
57
97
  } = getEntityData(entity);
58
- rawQueryStringified = buildRawQueryStringified(checkboxSelectValues, rangeValues, docType);
98
+ const filtersQuery = shouldAddFilters ? buildFiltersQuery(filterValues || query, filterBy, filterByProperty) : [];
99
+ const rawQueryStringified = buildRawQueryStringified(checkboxSelectValues, rangeValues, docType, filtersQuery);
59
100
  const {
60
101
  data,
61
- error,
62
- loading
102
+ error
63
103
  } = useQuery(action, {
64
104
  variables: {
65
105
  rawQueryStringified,
@@ -68,17 +108,24 @@ const SearchFilterContainer = ({
68
108
  // we only want aggs so limit=0 for no search results
69
109
  skip: !rawQueryStringified
70
110
  });
71
- if (loading) return null;
72
111
  if (error) return error.message;
73
112
  if (!filters.length) return null;
74
113
  const {
75
114
  searchPublishedContent: {
76
115
  rawResults: {
77
- aggregations: filterData = {}
116
+ aggregations: filterData
78
117
  } = {}
79
118
  } = {}
80
119
  } = data || {};
81
- const initialFilterValues = getInitialFilterValues(filterData, filters, query);
120
+
121
+ if (filterValues.dataNotSet && filterData) {
122
+ const initialFilterValues = getInitialFilterValues(filterData, filters, query);
123
+ dispatch({
124
+ newValues: initialFilterValues,
125
+ shouldSearch: false,
126
+ type: 'update'
127
+ });
128
+ }
82
129
 
83
130
  const handleSearch = newQuery => {
84
131
  setDisplaySearchFilter(false);
@@ -115,15 +162,17 @@ const SearchFilterContainer = ({
115
162
  }
116
163
  };
117
164
 
165
+ if (!filterValues) return '';
118
166
  return /*#__PURE__*/React.createElement(SearchFilter, {
119
167
  key: key,
168
+ setAppliedFilters: dispatch,
120
169
  searchFilterRef: searchFilterRef,
121
170
  data: filterData,
122
171
  filters: filters,
123
172
  hasUrl: hasUrl,
124
173
  entity: entity,
125
174
  handleSearch: handleSearch,
126
- initialFilterValues: initialFilterValues,
175
+ filterValues: filterValues,
127
176
  name: name,
128
177
  isCollapsedOnResponsive: isCollapsedOnResponsive,
129
178
  displaySearchFilter: displaySearchFilter,
@@ -140,7 +189,10 @@ SearchFilterContainer.propTypes = {
140
189
  name: PropTypes.string.isRequired,
141
190
  isCollapsedOnResponsive: PropTypes.bool,
142
191
  groupAfterMobile: PropTypes.number,
143
- groupAfterDesktop: PropTypes.number
192
+ groupAfterDesktop: PropTypes.number,
193
+ filterBy: PropTypes.array,
194
+ filterByProperty: PropTypes.array,
195
+ shouldAddFilters: PropTypes.bool
144
196
  };
145
197
  SearchFilterContainer.defaultProps = {
146
198
  url: null,
@@ -148,7 +200,10 @@ SearchFilterContainer.defaultProps = {
148
200
  entity: '',
149
201
  isCollapsedOnResponsive: true,
150
202
  groupAfterMobile: 0,
151
- groupAfterDesktop: 0
203
+ groupAfterDesktop: 0,
204
+ filterBy: [],
205
+ filterByProperty: [],
206
+ shouldAddFilters: false
152
207
  };
153
208
  export default withTitle(SearchFilterContainer);
154
209
  //# sourceMappingURL=SearchFilterContainer.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/components/SearchFilter/SearchFilterContainer.js"],"names":["React","useState","useRef","useRouter","useQuery","PropTypes","parseUrl","stringify","SearchFilter","withTitle","getSearchPublishedContent","buildNewQuery","buildRawQueryStringified","getInitialFilterValues","getEntityData","RAW_RESULTS","RANGE","CHECKBOX_SELECT","SCROLL_OFFSET","SearchFilterContainer","entity","url","filters","name","isCollapsedOnResponsive","groupAfterMobile","groupAfterDesktop","router","searchFilterRef","key","setKey","displaySearchFilter","setDisplaySearchFilter","hasUrl","currentUrl","query","sort","sortby","asPath","sortValues","baseQuery","action","rawQueryStringified","checkboxSelectValues","rangeValues","forEach","type","propsToDisplay","includes","push","docType","data","error","loading","variables","limit","skip","message","length","searchPublishedContent","rawResults","aggregations","filterData","initialFilterValues","handleSearch","newQuery","scrollToFirstList","shallow","scroll","then","Date","now","newUrl","list","document","getElementsByClassName","shouldScrollToFirstList","window","scrollTo","left","top","pageYOffset","getBoundingClientRect","propTypes","string","array","isRequired","bool","number","defaultProps"],"mappings":"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","sourcesContent":["import React, { useState, useRef } from 'react';\nimport { useRouter } from 'next/router';\nimport { useQuery } from '@apollo/client';\nimport PropTypes from 'prop-types';\nimport { parseUrl, stringify } from 'query-string';\nimport SearchFilter from './SearchFilter';\nimport { withTitle } from '../../HOC';\nimport { getSearchPublishedContent } from '../../application/query';\nimport { buildNewQuery, buildRawQueryStringified, getInitialFilterValues } from './helpers';\nimport { getEntityData } from '../../helpers';\nimport { RAW_RESULTS, RANGE, CHECKBOX_SELECT } from './constants';\nimport { SCROLL_OFFSET } from '../../constants';\n\nconst SearchFilterContainer = ({\n entity,\n url,\n filters,\n name,\n isCollapsedOnResponsive,\n groupAfterMobile,\n groupAfterDesktop\n}) => {\n const router = useRouter();\n const searchFilterRef = useRef(null);\n const [key, setKey] = useState(`filter-${name}`);\n const [displaySearchFilter, setDisplaySearchFilter] = useState(false);\n const hasUrl = !!url;\n const {\n url: currentUrl,\n query: { sort, sortby },\n query\n } = parseUrl(router.asPath);\n const sortValues = sort && sortby ? stringify({ sort, sortby }) : '';\n const baseQuery = sortValues ? `${currentUrl}?${sortValues}` : currentUrl;\n\n const action = getSearchPublishedContent(RAW_RESULTS);\n\n let rawQueryStringified = '';\n\n const checkboxSelectValues = [];\n const rangeValues = [];\n\n filters.forEach(({ type, propsToDisplay }) => {\n if (CHECKBOX_SELECT.includes(type)) {\n checkboxSelectValues.push(propsToDisplay[0]);\n } else if (type === RANGE) {\n rangeValues.push(...propsToDisplay);\n }\n });\n\n const { docType } = getEntityData(entity);\n\n rawQueryStringified = buildRawQueryStringified(checkboxSelectValues, rangeValues, docType);\n\n const { data, error, loading } = useQuery(action, {\n variables: { rawQueryStringified, limit: 0 }, // we only want aggs so limit=0 for no search results\n skip: !rawQueryStringified\n });\n\n if (loading) return null;\n if (error) return error.message;\n if (!filters.length) return null;\n\n const { searchPublishedContent: { rawResults: { aggregations: filterData = {} } = {} } = {} } =\n data || {};\n\n const initialFilterValues = getInitialFilterValues(filterData, filters, query);\n\n const handleSearch = newQuery => {\n setDisplaySearchFilter(false);\n\n if (!newQuery) {\n scrollToFirstList();\n return router.push('/Resolver', baseQuery, { shallow: !hasUrl, scroll: false }).then(() => {\n setKey(`filter-${name}:${Date.now()}`); // remove after range component update\n });\n }\n const newUrl = buildNewQuery(url, currentUrl, newQuery, sortValues);\n scrollToFirstList();\n return router.push('/Resolver', newUrl, { shallow: !hasUrl, scroll: false });\n };\n\n const scrollToFirstList = () => {\n const [list] = document.getElementsByClassName('list-top');\n const shouldScrollToFirstList = !hasUrl && list;\n\n if (shouldScrollToFirstList) {\n window.scrollTo({\n left: 0,\n top: window.pageYOffset - SCROLL_OFFSET + list.getBoundingClientRect().top\n });\n } else {\n window.scrollTo(0, 0);\n }\n };\n\n return (\n <SearchFilter\n key={key}\n searchFilterRef={searchFilterRef}\n data={filterData}\n filters={filters}\n hasUrl={hasUrl}\n entity={entity}\n handleSearch={handleSearch}\n initialFilterValues={initialFilterValues}\n name={name}\n isCollapsedOnResponsive={isCollapsedOnResponsive}\n displaySearchFilter={displaySearchFilter}\n setDisplaySearchFilter={setDisplaySearchFilter}\n groupAfterMobile={groupAfterMobile}\n groupAfterDesktop={groupAfterDesktop}\n />\n );\n};\n\nSearchFilterContainer.propTypes = {\n entity: PropTypes.string,\n url: PropTypes.string,\n filters: PropTypes.array,\n name: PropTypes.string.isRequired,\n isCollapsedOnResponsive: PropTypes.bool,\n groupAfterMobile: PropTypes.number,\n groupAfterDesktop: PropTypes.number\n};\n\nSearchFilterContainer.defaultProps = {\n url: null,\n filters: [],\n entity: '',\n isCollapsedOnResponsive: true,\n groupAfterMobile: 0,\n groupAfterDesktop: 0\n};\n\nexport default withTitle(SearchFilterContainer);\n"],"file":"SearchFilterContainer.js"}
1
+ {"version":3,"file":"SearchFilterContainer.js","names":["React","useState","useRef","useReducer","useRouter","useQuery","PropTypes","parseUrl","stringify","SearchFilter","withTitle","getSearchPublishedContent","buildNewQuery","buildRawQueryStringified","getInitialFilterValues","buildFiltersQuery","getEntityData","RAW_RESULTS","RANGE","CHECKBOX_SELECT","SCROLL_OFFSET","reducer","state","action","newValues","type","shouldSearch","Error","SearchFilterContainer","entity","url","filters","name","isCollapsedOnResponsive","groupAfterMobile","groupAfterDesktop","filterBy","filterByProperty","shouldAddFilters","router","asPath","searchFilterRef","key","setKey","displaySearchFilter","setDisplaySearchFilter","currentUrl","query","sort","sortby","filterValues","dispatch","hasUrl","sortValues","baseQuery","checkboxSelectValues","rangeValues","forEach","propsToDisplay","includes","push","docType","filtersQuery","rawQueryStringified","data","error","variables","limit","skip","message","length","searchPublishedContent","rawResults","aggregations","filterData","dataNotSet","initialFilterValues","handleSearch","newQuery","scrollToFirstList","shallow","scroll","then","Date","now","newUrl","list","document","getElementsByClassName","shouldScrollToFirstList","window","scrollTo","left","top","pageYOffset","getBoundingClientRect","propTypes","string","array","isRequired","bool","number","defaultProps"],"sources":["../../../src/components/SearchFilter/SearchFilterContainer.js"],"sourcesContent":["import React, { useState, useRef, useReducer } from 'react';\nimport { useRouter } from 'next/router';\nimport { useQuery } from '@apollo/client';\nimport PropTypes from 'prop-types';\nimport { parseUrl, stringify } from 'query-string';\nimport SearchFilter from './SearchFilter';\nimport { withTitle } from '../../HOC';\nimport { getSearchPublishedContent } from '../../application/query';\nimport {\n buildNewQuery,\n buildRawQueryStringified,\n getInitialFilterValues,\n buildFiltersQuery\n} from './helpers';\nimport { getEntityData } from '../../helpers';\nimport { RAW_RESULTS, RANGE, CHECKBOX_SELECT } from './constants';\nimport { SCROLL_OFFSET } from '../../constants';\n\nconst reducer = (state, action) => {\n const { newValues, type, shouldSearch = true } = action;\n\n switch (type) {\n case 'update':\n return { ...state, ...newValues, shouldSearch };\n case 'resetSearch':\n return { ...state, shouldSearch: false };\n case 'reset':\n return { ...newValues, shouldSearch };\n default:\n throw new Error();\n }\n};\n\nconst SearchFilterContainer = ({\n entity,\n url,\n filters,\n name,\n isCollapsedOnResponsive,\n groupAfterMobile,\n groupAfterDesktop,\n filterBy,\n filterByProperty,\n shouldAddFilters\n}) => {\n const router = useRouter();\n const { asPath } = router;\n const searchFilterRef = useRef(null);\n const [key, setKey] = useState(`filter-${name}`);\n const [displaySearchFilter, setDisplaySearchFilter] = useState(false);\n const {\n url: currentUrl,\n query: { sort, sortby },\n query\n } = parseUrl(asPath);\n const [filterValues, dispatch] = useReducer(\n reducer,\n getInitialFilterValues(null, filters, query)\n );\n const hasUrl = !!url;\n\n const sortValues = sort && sortby ? stringify({ sort, sortby }) : '';\n const baseQuery = sortValues ? `${currentUrl}?${sortValues}` : currentUrl;\n\n const action = getSearchPublishedContent(RAW_RESULTS);\n const checkboxSelectValues = [];\n const rangeValues = [];\n\n filters.forEach(({ type, propsToDisplay }) => {\n if (CHECKBOX_SELECT.includes(type)) {\n checkboxSelectValues.push(propsToDisplay[0]);\n } else if (type === RANGE) {\n rangeValues.push(...propsToDisplay);\n }\n });\n\n const { docType } = getEntityData(entity);\n\n const filtersQuery = shouldAddFilters\n ? buildFiltersQuery(filterValues || query, filterBy, filterByProperty)\n : [];\n\n const rawQueryStringified = buildRawQueryStringified(\n checkboxSelectValues,\n rangeValues,\n docType,\n filtersQuery\n );\n\n const { data, error } = useQuery(action, {\n variables: { rawQueryStringified, limit: 0 }, // we only want aggs so limit=0 for no search results\n skip: !rawQueryStringified\n });\n\n if (error) return error.message;\n if (!filters.length) return null;\n\n const { searchPublishedContent: { rawResults: { aggregations: filterData } = {} } = {} } =\n data || {};\n\n if (filterValues.dataNotSet && filterData) {\n const initialFilterValues = getInitialFilterValues(filterData, filters, query);\n dispatch({ newValues: initialFilterValues, shouldSearch: false, type: 'update' });\n }\n\n const handleSearch = newQuery => {\n setDisplaySearchFilter(false);\n\n if (!newQuery) {\n scrollToFirstList();\n return router.push('/Resolver', baseQuery, { shallow: !hasUrl, scroll: false }).then(() => {\n setKey(`filter-${name}:${Date.now()}`); // remove after range component update\n });\n }\n const newUrl = buildNewQuery(url, currentUrl, newQuery, sortValues);\n scrollToFirstList();\n return router.push('/Resolver', newUrl, { shallow: !hasUrl, scroll: false });\n };\n\n const scrollToFirstList = () => {\n const [list] = document.getElementsByClassName('list-top');\n const shouldScrollToFirstList = !hasUrl && list;\n\n if (shouldScrollToFirstList) {\n window.scrollTo({\n left: 0,\n top: window.pageYOffset - SCROLL_OFFSET + list.getBoundingClientRect().top\n });\n } else {\n window.scrollTo(0, 0);\n }\n };\n if (!filterValues) return '';\n\n return (\n <SearchFilter\n key={key}\n setAppliedFilters={dispatch}\n searchFilterRef={searchFilterRef}\n data={filterData}\n filters={filters}\n hasUrl={hasUrl}\n entity={entity}\n handleSearch={handleSearch}\n filterValues={filterValues}\n name={name}\n isCollapsedOnResponsive={isCollapsedOnResponsive}\n displaySearchFilter={displaySearchFilter}\n setDisplaySearchFilter={setDisplaySearchFilter}\n groupAfterMobile={groupAfterMobile}\n groupAfterDesktop={groupAfterDesktop}\n />\n );\n};\n\nSearchFilterContainer.propTypes = {\n entity: PropTypes.string,\n url: PropTypes.string,\n filters: PropTypes.array,\n name: PropTypes.string.isRequired,\n isCollapsedOnResponsive: PropTypes.bool,\n groupAfterMobile: PropTypes.number,\n groupAfterDesktop: PropTypes.number,\n filterBy: PropTypes.array,\n filterByProperty: PropTypes.array,\n shouldAddFilters: PropTypes.bool\n};\n\nSearchFilterContainer.defaultProps = {\n url: null,\n filters: [],\n entity: '',\n isCollapsedOnResponsive: true,\n groupAfterMobile: 0,\n groupAfterDesktop: 0,\n filterBy: [],\n filterByProperty: [],\n shouldAddFilters: false\n};\n\nexport default withTitle(SearchFilterContainer);\n"],"mappings":"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"}
@@ -13,9 +13,11 @@ const Checkbox = ({
13
13
  updateFilterValues,
14
14
  filterValues,
15
15
  label,
16
- shouldSearch
16
+ shouldSearch,
17
+ displayFilterCount
17
18
  }) => {
18
19
  const [checkboxLimit, setCheckboxLimit] = useState(null);
20
+ if (!data[prop]) return null;
19
21
 
20
22
  const handleCheckboxOptions = () => {
21
23
  if (checkboxLimit[prop] === LIMIT_MIN) {
@@ -44,14 +46,19 @@ const Checkbox = ({
44
46
 
45
47
  const multiple = [];
46
48
  const sortedValues = data[prop].buckets.map(({
47
- key
48
- }) => key).filter(Boolean).sort();
49
+ key,
50
+ doc_count: count
51
+ }) => {
52
+ const optionLabel = displayFilterCount ? `${key} (${count})` : key;
53
+ return [key, optionLabel, !count];
54
+ }).filter(Boolean).sort();
49
55
  sortedValues.forEach((value, i) => i < checkboxLimit[prop] && multiple.push({
50
- label: upperFirst(value),
51
- value,
56
+ label: upperFirst(value[1]),
57
+ value: value[0],
52
58
  name: prop,
53
- checked: checkboxQueryParams.includes(value),
54
- id: value
59
+ checked: checkboxQueryParams.includes(value[0]),
60
+ id: value[0],
61
+ disabled: value[2]
55
62
  }));
56
63
  const shouldDisplayMore = !checkboxLimit || checkboxLimit[prop] === LIMIT_MIN;
57
64
  return /*#__PURE__*/React.createElement(React.Fragment, null, label ? /*#__PURE__*/React.createElement("p", null, label) : '', /*#__PURE__*/React.createElement(Checkboxes, {
@@ -86,11 +93,13 @@ Checkbox.propTypes = {
86
93
  filterValues: PropTypes.object.isRequired,
87
94
  updateFilterValues: PropTypes.func.isRequired,
88
95
  shouldSearch: PropTypes.bool,
89
- label: PropTypes.string
96
+ label: PropTypes.string,
97
+ displayFilterCount: PropTypes.bool
90
98
  };
91
99
  Checkbox.defaultProps = {
92
100
  shouldSearch: false,
93
- label: ''
101
+ label: '',
102
+ displayFilterCount: false
94
103
  };
95
104
  export default withTitle(Checkbox);
96
105
  //# sourceMappingURL=Checkbox.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/components/SearchFilter/components/Checkbox.js"],"names":["React","useState","PropTypes","upperFirst","Checkboxes","FaChevronDown","FaChevronUp","withTitle","decodeValue","LIMIT_MIN","LIMIT_MAX","MORE","LESS","Checkbox","data","prop","updateFilterValues","filterValues","label","shouldSearch","checkboxLimit","setCheckboxLimit","handleCheckboxOptions","checkboxQueryParams","map","val","multiple","sortedValues","buckets","key","filter","Boolean","sort","forEach","value","i","push","name","checked","includes","id","shouldDisplayMore","eData","newCheckboxValues","length","propTypes","object","isRequired","string","func","bool","defaultProps"],"mappings":"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","sourcesContent":["import React, { useState } from 'react';\nimport PropTypes from 'prop-types';\nimport upperFirst from 'lodash.upperfirst';\nimport { Checkboxes } from '@blaze-react/checkboxes';\nimport { FaChevronDown, FaChevronUp } from 'react-icons/fa';\nimport { withTitle } from '../../../HOC';\nimport { decodeValue } from '../helpers';\nimport { LIMIT_MIN, LIMIT_MAX, MORE, LESS } from '../constants';\n\nconst Checkbox = ({ data, prop, updateFilterValues, filterValues, label, shouldSearch }) => {\n const [checkboxLimit, setCheckboxLimit] = useState(null);\n\n const handleCheckboxOptions = () => {\n if (checkboxLimit[prop] === LIMIT_MIN) {\n setCheckboxLimit({ [prop]: LIMIT_MAX });\n } else {\n setCheckboxLimit({ [prop]: LIMIT_MIN });\n }\n };\n\n if (!checkboxLimit) {\n setCheckboxLimit({ [prop]: LIMIT_MIN });\n }\n\n if (!checkboxLimit) return null;\n\n let checkboxQueryParams = [];\n\n if (filterValues && filterValues[prop]) {\n checkboxQueryParams =\n typeof filterValues[prop] === 'string'\n ? [decodeValue(filterValues[prop])]\n : filterValues[prop].map(val => decodeValue(val));\n }\n const multiple = [];\n\n const sortedValues = data[prop].buckets\n .map(({ key }) => key)\n .filter(Boolean)\n .sort();\n\n sortedValues.forEach(\n (value, i) =>\n i < checkboxLimit[prop] &&\n multiple.push({\n label: upperFirst(value),\n value,\n name: prop,\n checked: checkboxQueryParams.includes(value),\n id: value\n })\n );\n\n const shouldDisplayMore = !checkboxLimit || checkboxLimit[prop] === LIMIT_MIN;\n\n return (\n <>\n {label ? <p>{label}</p> : ''}\n <Checkboxes\n className=\"form-checkbox\"\n options={multiple}\n onChange={({ data: eData }) => {\n const newCheckboxValues = eData\n .filter(({ checked }) => checked)\n .map(({ value }) => value);\n updateFilterValues({ [prop]: newCheckboxValues }, shouldSearch);\n }}\n />\n {data[prop].buckets.length > LIMIT_MIN && (\n <div role=\"button\" className=\"see-more\" onClick={handleCheckboxOptions}>\n {shouldDisplayMore ? (\n <>\n <i>\n <FaChevronDown className=\"inline-icon\" />\n </i>\n {` See ${MORE}`}\n </>\n ) : (\n <>\n <i>\n <FaChevronUp className=\"inline-icon\" />\n </i>\n {` See ${LESS}`}\n </>\n )}\n </div>\n )}\n </>\n );\n};\n\nCheckbox.propTypes = {\n data: PropTypes.object.isRequired,\n prop: PropTypes.string.isRequired,\n filterValues: PropTypes.object.isRequired,\n updateFilterValues: PropTypes.func.isRequired,\n shouldSearch: PropTypes.bool,\n label: PropTypes.string\n};\n\nCheckbox.defaultProps = {\n shouldSearch: false,\n label: ''\n};\n\nexport default withTitle(Checkbox);\n"],"file":"Checkbox.js"}
1
+ {"version":3,"file":"Checkbox.js","names":["React","useState","PropTypes","upperFirst","Checkboxes","FaChevronDown","FaChevronUp","withTitle","decodeValue","LIMIT_MIN","LIMIT_MAX","MORE","LESS","Checkbox","data","prop","updateFilterValues","filterValues","label","shouldSearch","displayFilterCount","checkboxLimit","setCheckboxLimit","handleCheckboxOptions","checkboxQueryParams","map","val","multiple","sortedValues","buckets","key","doc_count","count","optionLabel","filter","Boolean","sort","forEach","value","i","push","name","checked","includes","id","disabled","shouldDisplayMore","eData","newCheckboxValues","length","propTypes","object","isRequired","string","func","bool","defaultProps"],"sources":["../../../../src/components/SearchFilter/components/Checkbox.js"],"sourcesContent":["import React, { useState } from 'react';\nimport PropTypes from 'prop-types';\nimport upperFirst from 'lodash.upperfirst';\nimport { Checkboxes } from '@blaze-react/checkboxes';\nimport { FaChevronDown, FaChevronUp } from 'react-icons/fa';\nimport { withTitle } from '../../../HOC';\nimport { decodeValue } from '../helpers';\nimport { LIMIT_MIN, LIMIT_MAX, MORE, LESS } from '../constants';\n\nconst Checkbox = ({\n data,\n prop,\n updateFilterValues,\n filterValues,\n label,\n shouldSearch,\n displayFilterCount\n}) => {\n const [checkboxLimit, setCheckboxLimit] = useState(null);\n if (!data[prop]) return null;\n\n const handleCheckboxOptions = () => {\n if (checkboxLimit[prop] === LIMIT_MIN) {\n setCheckboxLimit({ [prop]: LIMIT_MAX });\n } else {\n setCheckboxLimit({ [prop]: LIMIT_MIN });\n }\n };\n\n if (!checkboxLimit) {\n setCheckboxLimit({ [prop]: LIMIT_MIN });\n }\n\n if (!checkboxLimit) return null;\n\n let checkboxQueryParams = [];\n\n if (filterValues && filterValues[prop]) {\n checkboxQueryParams =\n typeof filterValues[prop] === 'string'\n ? [decodeValue(filterValues[prop])]\n : filterValues[prop].map(val => decodeValue(val));\n }\n const multiple = [];\n\n const sortedValues = data[prop].buckets\n .map(({ key, doc_count: count }) => {\n const optionLabel = displayFilterCount ? `${key} (${count})` : key;\n return [key, optionLabel, !count];\n })\n .filter(Boolean)\n .sort();\n\n sortedValues.forEach(\n (value, i) =>\n i < checkboxLimit[prop] &&\n multiple.push({\n label: upperFirst(value[1]),\n value: value[0],\n name: prop,\n checked: checkboxQueryParams.includes(value[0]),\n id: value[0],\n disabled: value[2]\n })\n );\n\n const shouldDisplayMore = !checkboxLimit || checkboxLimit[prop] === LIMIT_MIN;\n\n return (\n <>\n {label ? <p>{label}</p> : ''}\n <Checkboxes\n className=\"form-checkbox\"\n options={multiple}\n onChange={({ data: eData }) => {\n const newCheckboxValues = eData\n .filter(({ checked }) => checked)\n .map(({ value }) => value);\n updateFilterValues({ [prop]: newCheckboxValues }, shouldSearch);\n }}\n />\n {data[prop].buckets.length > LIMIT_MIN && (\n <div role=\"button\" className=\"see-more\" onClick={handleCheckboxOptions}>\n {shouldDisplayMore ? (\n <>\n <i>\n <FaChevronDown className=\"inline-icon\" />\n </i>\n {` See ${MORE}`}\n </>\n ) : (\n <>\n <i>\n <FaChevronUp className=\"inline-icon\" />\n </i>\n {` See ${LESS}`}\n </>\n )}\n </div>\n )}\n </>\n );\n};\n\nCheckbox.propTypes = {\n data: PropTypes.object.isRequired,\n prop: PropTypes.string.isRequired,\n filterValues: PropTypes.object.isRequired,\n updateFilterValues: PropTypes.func.isRequired,\n shouldSearch: PropTypes.bool,\n label: PropTypes.string,\n displayFilterCount: PropTypes.bool\n};\n\nCheckbox.defaultProps = {\n shouldSearch: false,\n label: '',\n displayFilterCount: false\n};\n\nexport default withTitle(Checkbox);\n"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/components/SearchFilter/components/Range.js"],"names":["React","PropTypes","debounce","RangeFilter","useRouter","Select","parseUrl","useGetSingleEntitySchema","withTitle","getSelectOptions","getIntersectedProp","getRangeValue","decodeValue","Range","rangeInterval","label","entity","propsToDisplay","updateFilterValues","filterValues","shouldSearch","router","debounceAmount","query","asPath","hasMultipleOptions","length","initialRangeOption","rangeOption","selectedOption","rangeValue","data","getEntitySchema","loading","options","min","max","shouldShowRange","handleChange","option","value","updatedOptions","forEach","prop","eMin","eMax","initValue","propTypes","array","isRequired","string","object","func","bool","number","defaultProps"],"mappings":"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","sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport debounce from 'lodash.debounce';\nimport RangeFilter from '@blaze-react/range-filter';\nimport { useRouter } from 'next/router';\nimport Select from '@blaze-react/select';\nimport { parseUrl } from 'query-string';\nimport { useGetSingleEntitySchema } from '../../../hooks';\nimport { withTitle } from '../../../HOC';\nimport { getSelectOptions, getIntersectedProp, getRangeValue } from '../helpers';\nimport { decodeValue } from '../helpers/decode-encode';\n\nconst Range = ({\n rangeInterval,\n label,\n entity,\n propsToDisplay,\n updateFilterValues,\n filterValues,\n shouldSearch\n}) => {\n const router = useRouter();\n const debounceAmount = shouldSearch ? 1200 : 100;\n const { query } = parseUrl(decodeValue(router.asPath));\n const hasMultipleOptions = propsToDisplay.length > 1;\n const initialRangeOption = getIntersectedProp(query, propsToDisplay) || propsToDisplay[0];\n const rangeOption =\n (filterValues[initialRangeOption] && filterValues[initialRangeOption].selectedOption) ||\n initialRangeOption;\n const rangeValue = filterValues[rangeOption];\n\n const { data: { getEntitySchema = {} } = {}, loading } = useGetSingleEntitySchema(\n entity,\n !hasMultipleOptions\n );\n\n if (loading || !rangeOption || !rangeValue) return '';\n\n const options = getSelectOptions(getEntitySchema, propsToDisplay);\n const { min, max } = rangeValue;\n const shouldShowRange = rangeOption && min !== max;\n\n const handleChange = debounce((option, value) => {\n updateFilterValues({ [option]: { ...value, selectedOption: rangeOption } }, shouldSearch);\n }, debounceAmount);\n\n return (\n <>\n {hasMultipleOptions && (\n <>\n <label>{label}</label>\n <Select\n value={rangeOption}\n id={rangeOption}\n options={options}\n required\n onChange={({ value }) => {\n const updatedOptions = {};\n propsToDisplay.forEach(prop => {\n const { min: eMin, max: eMax } = filterValues[prop];\n const initValue = getRangeValue(null, rangeInterval, eMin, eMax);\n updatedOptions[prop] = { ...initValue, selectedOption: value };\n });\n\n updateFilterValues(updatedOptions, false);\n }}\n />\n </>\n )}\n {shouldShowRange && (\n <RangeFilter\n key={rangeOption}\n name={rangeOption}\n label={hasMultipleOptions ? '' : label}\n value={rangeValue}\n id={rangeOption}\n onChange={({ value }) => {\n handleChange(rangeOption, value);\n }}\n />\n )}\n </>\n );\n};\n\nRange.propTypes = {\n propsToDisplay: PropTypes.array.isRequired,\n entity: PropTypes.string.isRequired,\n filterValues: PropTypes.object.isRequired,\n updateFilterValues: PropTypes.func.isRequired,\n shouldSearch: PropTypes.bool,\n rangeInterval: PropTypes.number,\n label: PropTypes.string\n};\n\nRange.defaultProps = {\n shouldSearch: false,\n rangeInterval: 1,\n label: ''\n};\n\nexport default withTitle(Range);\n"],"file":"Range.js"}
1
+ {"version":3,"file":"Range.js","names":["React","PropTypes","debounce","RangeFilter","useRouter","Select","parseUrl","useGetSingleEntitySchema","withTitle","getSelectOptions","getIntersectedProp","getRangeValue","decodeValue","Range","rangeInterval","label","entity","propsToDisplay","updateFilterValues","filterValues","shouldSearch","router","debounceAmount","query","asPath","hasMultipleOptions","length","initialRangeOption","rangeOption","selectedOption","rangeValue","data","getEntitySchema","loading","options","min","max","shouldShowRange","handleChange","option","value","updatedOptions","forEach","prop","eMin","eMax","initValue","propTypes","array","isRequired","string","object","func","bool","number","defaultProps"],"sources":["../../../../src/components/SearchFilter/components/Range.js"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport debounce from 'lodash.debounce';\nimport RangeFilter from '@blaze-react/range-filter';\nimport { useRouter } from 'next/router';\nimport Select from '@blaze-react/select';\nimport { parseUrl } from 'query-string';\nimport { useGetSingleEntitySchema } from '../../../hooks';\nimport { withTitle } from '../../../HOC';\nimport { getSelectOptions, getIntersectedProp, getRangeValue } from '../helpers';\nimport { decodeValue } from '../helpers/decode-encode';\n\nconst Range = ({\n rangeInterval,\n label,\n entity,\n propsToDisplay,\n updateFilterValues,\n filterValues,\n shouldSearch\n}) => {\n const router = useRouter();\n const debounceAmount = shouldSearch ? 1200 : 100;\n const { query } = parseUrl(decodeValue(router.asPath));\n const hasMultipleOptions = propsToDisplay.length > 1;\n const initialRangeOption = getIntersectedProp(query, propsToDisplay) || propsToDisplay[0];\n const rangeOption =\n (filterValues[initialRangeOption] && filterValues[initialRangeOption].selectedOption) ||\n initialRangeOption;\n const rangeValue = filterValues[rangeOption];\n\n const { data: { getEntitySchema = {} } = {}, loading } = useGetSingleEntitySchema(\n entity,\n !hasMultipleOptions\n );\n\n if (loading || !rangeOption || !rangeValue) return '';\n\n const options = getSelectOptions(getEntitySchema, propsToDisplay);\n const { min, max } = rangeValue;\n const shouldShowRange = rangeOption && min !== max;\n\n const handleChange = debounce((option, value) => {\n updateFilterValues({ [option]: { ...value, selectedOption: rangeOption } }, shouldSearch);\n }, debounceAmount);\n\n return (\n <>\n {hasMultipleOptions && (\n <>\n <label>{label}</label>\n <Select\n value={rangeOption}\n id={rangeOption}\n options={options}\n required\n onChange={({ value }) => {\n const updatedOptions = {};\n propsToDisplay.forEach(prop => {\n const { min: eMin, max: eMax } = filterValues[prop];\n const initValue = getRangeValue(null, rangeInterval, eMin, eMax);\n updatedOptions[prop] = { ...initValue, selectedOption: value };\n });\n\n updateFilterValues(updatedOptions, false);\n }}\n />\n </>\n )}\n {shouldShowRange && (\n <RangeFilter\n key={rangeOption}\n name={rangeOption}\n label={hasMultipleOptions ? '' : label}\n value={rangeValue}\n id={rangeOption}\n onChange={({ value }) => {\n handleChange(rangeOption, value);\n }}\n />\n )}\n </>\n );\n};\n\nRange.propTypes = {\n propsToDisplay: PropTypes.array.isRequired,\n entity: PropTypes.string.isRequired,\n filterValues: PropTypes.object.isRequired,\n updateFilterValues: PropTypes.func.isRequired,\n shouldSearch: PropTypes.bool,\n rangeInterval: PropTypes.number,\n label: PropTypes.string\n};\n\nRange.defaultProps = {\n shouldSearch: false,\n rangeInterval: 1,\n label: ''\n};\n\nexport default withTitle(Range);\n"],"mappings":"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"}
@@ -11,11 +11,22 @@ 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
- const options = data[prop].buckets.map(bucket => bucket.key).filter(Boolean).sort();
18
- const optionsJoined = options;
18
+ const disabledOptions = [];
19
+ const {
20
+ buckets = []
21
+ } = data[prop] || {};
22
+ const options = buckets.map(({
23
+ key,
24
+ doc_count: count
25
+ }) => {
26
+ if (!count) disabledOptions.push(key);
27
+ const optionLabel = displayFilterCount ? `${key} (${count})` : key;
28
+ return [key, optionLabel];
29
+ }).filter(Boolean).sort();
19
30
  const labelText = label || prop;
20
31
  let labelToUse = labelText;
21
32
  let defaultTextValue = DEFAULT_OPTION;
@@ -30,7 +41,7 @@ const SelectFilter = ({
30
41
  value: filterValue,
31
42
  id: prop,
32
43
  "data-testid": `filter-${prop}`,
33
- options: optionsJoined,
44
+ options: options,
34
45
  defaultTextValue: defaultTextValue,
35
46
  onChange: ({
36
47
  value
@@ -40,23 +51,27 @@ const SelectFilter = ({
40
51
  updateFilterValues({
41
52
  [prop]: valueToUse
42
53
  }, shouldSearch);
43
- }
54
+ },
55
+ disabled: disabledOptions
44
56
  });
45
57
  };
46
58
 
47
59
  SelectFilter.propTypes = {
48
60
  data: PropTypes.object.isRequired,
49
61
  prop: PropTypes.string.isRequired,
50
- filterValues: PropTypes.object.isRequired,
62
+ filterValues: PropTypes.object,
51
63
  updateFilterValues: PropTypes.func.isRequired,
52
64
  shouldSearch: PropTypes.bool,
53
65
  label: PropTypes.string,
54
- displayLabelAsPlaceholder: PropTypes.bool
66
+ displayLabelAsPlaceholder: PropTypes.bool,
67
+ displayFilterCount: PropTypes.bool
55
68
  };
56
69
  SelectFilter.defaultProps = {
70
+ filterValues: {},
57
71
  shouldSearch: false,
58
72
  label: '',
59
- displayLabelAsPlaceholder: false
73
+ displayLabelAsPlaceholder: false,
74
+ displayFilterCount: false
60
75
  };
61
76
  export default withTitle(SelectFilter);
62
77
  //# sourceMappingURL=Select.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/components/SearchFilter/components/Select.js"],"names":["React","PropTypes","Select","withTitle","DEFAULT_OPTION","SelectFilter","data","label","prop","updateFilterValues","filterValues","shouldSearch","displayLabelAsPlaceholder","filterValue","options","buckets","map","bucket","key","filter","Boolean","sort","optionsJoined","labelText","labelToUse","defaultTextValue","value","valueToUse","propTypes","object","isRequired","string","func","bool","defaultProps"],"mappings":"AAAA,OAAOA,KAAP,MAAkB,OAAlB;AACA,OAAOC,SAAP,MAAsB,YAAtB;AACA,OAAOC,MAAP,MAAmB,qBAAnB;AACA,SAASC,SAAT,QAA0B,cAA1B;AACA,SAASC,cAAT,QAA+B,cAA/B;;AAEA,MAAMC,YAAY,GAAG,CAAC;AACpBC,EAAAA,IADoB;AAEpBC,EAAAA,KAFoB;AAGpBC,EAAAA,IAHoB;AAIpBC,EAAAA,kBAJoB;AAKpBC,EAAAA,YALoB;AAMpBC,EAAAA,YANoB;AAOpBC,EAAAA;AAPoB,CAAD,KAQf;AACJ,QAAMC,WAAW,GAAGH,YAAY,CAACF,IAAD,CAAZ,IAAsB,EAA1C;AAEA,QAAMM,OAAO,GAAGR,IAAI,CAACE,IAAD,CAAJ,CAAWO,OAAX,CACbC,GADa,CACTC,MAAM,IAAIA,MAAM,CAACC,GADR,EAEbC,MAFa,CAENC,OAFM,EAGbC,IAHa,EAAhB;AAKA,QAAMC,aAAa,GAAGR,OAAtB;AAEA,QAAMS,SAAS,GAAGhB,KAAK,IAAIC,IAA3B;AACA,MAAIgB,UAAU,GAAGD,SAAjB;AACA,MAAIE,gBAAgB,GAAGrB,cAAvB;;AACA,MAAIQ,yBAAJ,EAA+B;AAC7Ba,IAAAA,gBAAgB,GAAGD,UAAnB;AACAA,IAAAA,UAAU,GAAG,IAAb;AACD;;AAED,sBACE,oBAAC,MAAD;AACE,IAAA,KAAK,EAAEA,UADT;AAEE,IAAA,KAAK,EAAEX,WAFT;AAGE,IAAA,EAAE,EAAEL,IAHN;AAIE,mBAAc,UAASA,IAAK,EAJ9B;AAKE,IAAA,OAAO,EAAEc,aALX;AAME,IAAA,gBAAgB,EAAEG,gBANpB;AAOE,IAAA,QAAQ,EAAE,CAAC;AAAEC,MAAAA;AAAF,KAAD,KAAe;AACvB,UAAIC,UAAU,GAAGD,KAAjB;AACA,UAAIA,KAAK,KAAKD,gBAAd,EAAgCE,UAAU,GAAG,EAAb;AAEhClB,MAAAA,kBAAkB,CAAC;AAAE,SAACD,IAAD,GAAQmB;AAAV,OAAD,EAAyBhB,YAAzB,CAAlB;AACD;AAZH,IADF;AAgBD,CA1CD;;AA4CAN,YAAY,CAACuB,SAAb,GAAyB;AACvBtB,EAAAA,IAAI,EAAEL,SAAS,CAAC4B,MAAV,CAAiBC,UADA;AAEvBtB,EAAAA,IAAI,EAAEP,SAAS,CAAC8B,MAAV,CAAiBD,UAFA;AAGvBpB,EAAAA,YAAY,EAAET,SAAS,CAAC4B,MAAV,CAAiBC,UAHR;AAIvBrB,EAAAA,kBAAkB,EAAER,SAAS,CAAC+B,IAAV,CAAeF,UAJZ;AAKvBnB,EAAAA,YAAY,EAAEV,SAAS,CAACgC,IALD;AAMvB1B,EAAAA,KAAK,EAAEN,SAAS,CAAC8B,MANM;AAOvBnB,EAAAA,yBAAyB,EAAEX,SAAS,CAACgC;AAPd,CAAzB;AAUA5B,YAAY,CAAC6B,YAAb,GAA4B;AAC1BvB,EAAAA,YAAY,EAAE,KADY;AAE1BJ,EAAAA,KAAK,EAAE,EAFmB;AAG1BK,EAAAA,yBAAyB,EAAE;AAHD,CAA5B;AAMA,eAAeT,SAAS,CAACE,YAAD,CAAxB","sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport Select from '@blaze-react/select';\nimport { withTitle } from '../../../HOC';\nimport { DEFAULT_OPTION } from '../constants';\n\nconst SelectFilter = ({\n data,\n label,\n prop,\n updateFilterValues,\n filterValues,\n shouldSearch,\n displayLabelAsPlaceholder\n}) => {\n const filterValue = filterValues[prop] || '';\n\n const options = data[prop].buckets\n .map(bucket => bucket.key)\n .filter(Boolean)\n .sort();\n\n const optionsJoined = options;\n\n const labelText = label || prop;\n let labelToUse = labelText;\n let defaultTextValue = DEFAULT_OPTION;\n if (displayLabelAsPlaceholder) {\n defaultTextValue = labelToUse;\n labelToUse = null;\n }\n\n return (\n <Select\n label={labelToUse}\n value={filterValue}\n id={prop}\n data-testid={`filter-${prop}`}\n options={optionsJoined}\n defaultTextValue={defaultTextValue}\n onChange={({ value }) => {\n let valueToUse = value;\n if (value === defaultTextValue) valueToUse = '';\n\n updateFilterValues({ [prop]: valueToUse }, shouldSearch);\n }}\n />\n );\n};\n\nSelectFilter.propTypes = {\n data: PropTypes.object.isRequired,\n prop: PropTypes.string.isRequired,\n filterValues: PropTypes.object.isRequired,\n updateFilterValues: PropTypes.func.isRequired,\n shouldSearch: PropTypes.bool,\n label: PropTypes.string,\n displayLabelAsPlaceholder: PropTypes.bool\n};\n\nSelectFilter.defaultProps = {\n shouldSearch: false,\n label: '',\n displayLabelAsPlaceholder: false\n};\n\nexport default withTitle(SelectFilter);\n"],"file":"Select.js"}
1
+ {"version":3,"file":"Select.js","names":["React","PropTypes","Select","withTitle","DEFAULT_OPTION","SelectFilter","data","label","prop","updateFilterValues","filterValues","shouldSearch","displayLabelAsPlaceholder","displayFilterCount","filterValue","disabledOptions","buckets","options","map","key","doc_count","count","push","optionLabel","filter","Boolean","sort","labelText","labelToUse","defaultTextValue","value","valueToUse","propTypes","object","isRequired","string","func","bool","defaultProps"],"sources":["../../../../src/components/SearchFilter/components/Select.js"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport Select from '@blaze-react/select';\nimport { withTitle } from '../../../HOC';\nimport { DEFAULT_OPTION } from '../constants';\n\nconst SelectFilter = ({\n data,\n label,\n prop,\n updateFilterValues,\n filterValues,\n shouldSearch,\n displayLabelAsPlaceholder,\n displayFilterCount\n}) => {\n const filterValue = filterValues[prop] || '';\n const disabledOptions = [];\n const { buckets = [] } = data[prop] || {};\n const options = buckets\n .map(({ key, doc_count: count }) => {\n if (!count) disabledOptions.push(key);\n const optionLabel = displayFilterCount ? `${key} (${count})` : key;\n return [key, optionLabel];\n })\n .filter(Boolean)\n .sort();\n\n const labelText = label || prop;\n let labelToUse = labelText;\n let defaultTextValue = DEFAULT_OPTION;\n if (displayLabelAsPlaceholder) {\n defaultTextValue = labelToUse;\n labelToUse = null;\n }\n\n return (\n <Select\n label={labelToUse}\n value={filterValue}\n id={prop}\n data-testid={`filter-${prop}`}\n options={options}\n defaultTextValue={defaultTextValue}\n onChange={({ value }) => {\n let valueToUse = value;\n if (value === defaultTextValue) valueToUse = '';\n updateFilterValues({ [prop]: valueToUse }, shouldSearch);\n }}\n disabled={disabledOptions}\n />\n );\n};\n\nSelectFilter.propTypes = {\n data: PropTypes.object.isRequired,\n prop: PropTypes.string.isRequired,\n filterValues: PropTypes.object,\n updateFilterValues: PropTypes.func.isRequired,\n shouldSearch: PropTypes.bool,\n label: PropTypes.string,\n displayLabelAsPlaceholder: PropTypes.bool,\n displayFilterCount: PropTypes.bool\n};\n\nSelectFilter.defaultProps = {\n filterValues: {},\n shouldSearch: false,\n label: '',\n displayLabelAsPlaceholder: false,\n displayFilterCount: false\n};\n\nexport default withTitle(SelectFilter);\n"],"mappings":"AAAA,OAAOA,KAAP,MAAkB,OAAlB;AACA,OAAOC,SAAP,MAAsB,YAAtB;AACA,OAAOC,MAAP,MAAmB,qBAAnB;AACA,SAASC,SAAT,QAA0B,cAA1B;AACA,SAASC,cAAT,QAA+B,cAA/B;;AAEA,MAAMC,YAAY,GAAG,CAAC;EACpBC,IADoB;EAEpBC,KAFoB;EAGpBC,IAHoB;EAIpBC,kBAJoB;EAKpBC,YALoB;EAMpBC,YANoB;EAOpBC,yBAPoB;EAQpBC;AARoB,CAAD,KASf;EACJ,MAAMC,WAAW,GAAGJ,YAAY,CAACF,IAAD,CAAZ,IAAsB,EAA1C;EACA,MAAMO,eAAe,GAAG,EAAxB;EACA,MAAM;IAAEC,OAAO,GAAG;EAAZ,IAAmBV,IAAI,CAACE,IAAD,CAAJ,IAAc,EAAvC;EACA,MAAMS,OAAO,GAAGD,OAAO,CACpBE,GADa,CACT,CAAC;IAAEC,GAAF;IAAOC,SAAS,EAAEC;EAAlB,CAAD,KAA+B;IAClC,IAAI,CAACA,KAAL,EAAYN,eAAe,CAACO,IAAhB,CAAqBH,GAArB;IACZ,MAAMI,WAAW,GAAGV,kBAAkB,GAAI,GAAEM,GAAI,KAAIE,KAAM,GAApB,GAAyBF,GAA/D;IACA,OAAO,CAACA,GAAD,EAAMI,WAAN,CAAP;EACD,CALa,EAMbC,MANa,CAMNC,OANM,EAObC,IAPa,EAAhB;EASA,MAAMC,SAAS,GAAGpB,KAAK,IAAIC,IAA3B;EACA,IAAIoB,UAAU,GAAGD,SAAjB;EACA,IAAIE,gBAAgB,GAAGzB,cAAvB;;EACA,IAAIQ,yBAAJ,EAA+B;IAC7BiB,gBAAgB,GAAGD,UAAnB;IACAA,UAAU,GAAG,IAAb;EACD;;EAED,oBACE,oBAAC,MAAD;IACE,KAAK,EAAEA,UADT;IAEE,KAAK,EAAEd,WAFT;IAGE,EAAE,EAAEN,IAHN;IAIE,eAAc,UAASA,IAAK,EAJ9B;IAKE,OAAO,EAAES,OALX;IAME,gBAAgB,EAAEY,gBANpB;IAOE,QAAQ,EAAE,CAAC;MAAEC;IAAF,CAAD,KAAe;MACvB,IAAIC,UAAU,GAAGD,KAAjB;MACA,IAAIA,KAAK,KAAKD,gBAAd,EAAgCE,UAAU,GAAG,EAAb;MAChCtB,kBAAkB,CAAC;QAAE,CAACD,IAAD,GAAQuB;MAAV,CAAD,EAAyBpB,YAAzB,CAAlB;IACD,CAXH;IAYE,QAAQ,EAAEI;EAZZ,EADF;AAgBD,CA9CD;;AAgDAV,YAAY,CAAC2B,SAAb,GAAyB;EACvB1B,IAAI,EAAEL,SAAS,CAACgC,MAAV,CAAiBC,UADA;EAEvB1B,IAAI,EAAEP,SAAS,CAACkC,MAAV,CAAiBD,UAFA;EAGvBxB,YAAY,EAAET,SAAS,CAACgC,MAHD;EAIvBxB,kBAAkB,EAAER,SAAS,CAACmC,IAAV,CAAeF,UAJZ;EAKvBvB,YAAY,EAAEV,SAAS,CAACoC,IALD;EAMvB9B,KAAK,EAAEN,SAAS,CAACkC,MANM;EAOvBvB,yBAAyB,EAAEX,SAAS,CAACoC,IAPd;EAQvBxB,kBAAkB,EAAEZ,SAAS,CAACoC;AARP,CAAzB;AAWAhC,YAAY,CAACiC,YAAb,GAA4B;EAC1B5B,YAAY,EAAE,EADY;EAE1BC,YAAY,EAAE,KAFY;EAG1BJ,KAAK,EAAE,EAHmB;EAI1BK,yBAAyB,EAAE,KAJD;EAK1BC,kBAAkB,EAAE;AALM,CAA5B;AAQA,eAAeV,SAAS,CAACE,YAAD,CAAxB"}
@@ -8,9 +8,7 @@ import { SEARCH_TERM } from '../constants';
8
8
  const TextSearch = ({
9
9
  label,
10
10
  searchValue,
11
- updateFilterValues,
12
- handleSubmit,
13
- filterValues
11
+ updateFilterValues
14
12
  }) => /*#__PURE__*/React.createElement("div", {
15
13
  className: "search"
16
14
  }, /*#__PURE__*/React.createElement("div", {
@@ -40,10 +38,8 @@ const TextSearch = ({
40
38
  }, /*#__PURE__*/React.createElement("i", null, /*#__PURE__*/React.createElement(MdSearch, null)))));
41
39
 
42
40
  TextSearch.propTypes = {
43
- filterValues: PropTypes.object.isRequired,
44
41
  searchValue: PropTypes.string.isRequired,
45
42
  updateFilterValues: PropTypes.func.isRequired,
46
- handleSubmit: PropTypes.func.isRequired,
47
43
  label: PropTypes.string
48
44
  };
49
45
  TextSearch.defaultProps = {
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/components/SearchFilter/components/TextSearch.js"],"names":["React","PropTypes","Input","MdSearch","withTitle","SEARCH_TERM","TextSearch","label","searchValue","updateFilterValues","handleSubmit","filterValues","value","eValue","e","preventDefault","propTypes","object","isRequired","string","func","defaultProps"],"mappings":"AAAA,OAAOA,KAAP,MAAkB,OAAlB;AACA,OAAOC,SAAP,MAAsB,YAAtB;AACA,OAAOC,KAAP,MAAkB,oBAAlB;AACA,SAASC,QAAT,QAAyB,gBAAzB;AACA,SAASC,SAAT,QAA0B,cAA1B;AACA,SAASC,WAAT,QAA4B,cAA5B;;AAEA,MAAMC,UAAU,GAAG,CAAC;AAAEC,EAAAA,KAAF;AAASC,EAAAA,WAAT;AAAsBC,EAAAA,kBAAtB;AAA0CC,EAAAA,YAA1C;AAAwDC,EAAAA;AAAxD,CAAD,kBACjB;AAAK,EAAA,SAAS,EAAC;AAAf,gBACE;AAAK,EAAA,SAAS,EAAC;AAAf,gBACE;AAAK,EAAA,SAAS,EAAC;AAAf,gBACE,oBAAC,KAAD;AACE,EAAA,EAAE,EAAEN,WADN;AAEE,EAAA,KAAK,EAAEG,WAFT;AAGE,EAAA,WAAW,EAAED,KAAK,IAAI,QAHxB;AAIE,EAAA,QAAQ,EAAE,CAAC;AAAEK,IAAAA,KAAK,EAAEC;AAAT,GAAD,KAAuB;AAC/BJ,IAAAA,kBAAkB,CAAC;AAAE,OAACJ,WAAD,GAAeQ;AAAjB,KAAD,EAA4B,KAA5B,CAAlB;AACD;AANH,EADF,CADF,eAWE;AACE,EAAA,IAAI,EAAC,QADP;AAEE,EAAA,SAAS,EAAC,iCAFZ;AAGE,EAAA,OAAO,EAAEC,CAAC,IAAI;AACZA,IAAAA,CAAC,CAACC,cAAF;AACAN,IAAAA,kBAAkB,CAAC;AAAE,OAACJ,WAAD,GAAeG;AAAjB,KAAD,EAAiC,IAAjC,CAAlB;AACD;AANH,gBAOE,4CACE,oBAAC,QAAD,OADF,CAPF,CAXF,CADF,CADF;;AA4BAF,UAAU,CAACU,SAAX,GAAuB;AACrBL,EAAAA,YAAY,EAAEV,SAAS,CAACgB,MAAV,CAAiBC,UADV;AAErBV,EAAAA,WAAW,EAAEP,SAAS,CAACkB,MAAV,CAAiBD,UAFT;AAGrBT,EAAAA,kBAAkB,EAAER,SAAS,CAACmB,IAAV,CAAeF,UAHd;AAIrBR,EAAAA,YAAY,EAAET,SAAS,CAACmB,IAAV,CAAeF,UAJR;AAKrBX,EAAAA,KAAK,EAAEN,SAAS,CAACkB;AALI,CAAvB;AAQAb,UAAU,CAACe,YAAX,GAA0B;AACxBd,EAAAA,KAAK,EAAE;AADiB,CAA1B;AAIA,eAAeH,SAAS,CAACE,UAAD,CAAxB","sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport Input from '@blaze-react/input';\nimport { MdSearch } from 'react-icons/md';\nimport { withTitle } from '../../../HOC';\nimport { SEARCH_TERM } from '../constants';\n\nconst TextSearch = ({ label, searchValue, updateFilterValues, handleSubmit, filterValues }) => (\n <div className=\"search\">\n <div className=\"search__wrapper\">\n <div className=\"form-field form-field--input form-field--search\">\n <Input\n id={SEARCH_TERM}\n value={searchValue}\n placeholder={label || 'Search'}\n onChange={({ value: eValue }) => {\n updateFilterValues({ [SEARCH_TERM]: eValue }, false);\n }}\n />\n </div>\n <button\n type=\"button\"\n className=\"icon-button icon-button--search\"\n onClick={e => {\n e.preventDefault();\n updateFilterValues({ [SEARCH_TERM]: searchValue }, true);\n }}>\n <i>\n <MdSearch />\n </i>\n </button>\n </div>\n </div>\n);\n\nTextSearch.propTypes = {\n filterValues: PropTypes.object.isRequired,\n searchValue: PropTypes.string.isRequired,\n updateFilterValues: PropTypes.func.isRequired,\n handleSubmit: PropTypes.func.isRequired,\n label: PropTypes.string\n};\n\nTextSearch.defaultProps = {\n label: ''\n};\n\nexport default withTitle(TextSearch);\n"],"file":"TextSearch.js"}
1
+ {"version":3,"file":"TextSearch.js","names":["React","PropTypes","Input","MdSearch","withTitle","SEARCH_TERM","TextSearch","label","searchValue","updateFilterValues","value","eValue","e","preventDefault","propTypes","string","isRequired","func","defaultProps"],"sources":["../../../../src/components/SearchFilter/components/TextSearch.js"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport Input from '@blaze-react/input';\nimport { MdSearch } from 'react-icons/md';\nimport { withTitle } from '../../../HOC';\nimport { SEARCH_TERM } from '../constants';\n\nconst TextSearch = ({ label, searchValue, updateFilterValues }) => (\n <div className=\"search\">\n <div className=\"search__wrapper\">\n <div className=\"form-field form-field--input form-field--search\">\n <Input\n id={SEARCH_TERM}\n value={searchValue}\n placeholder={label || 'Search'}\n onChange={({ value: eValue }) => {\n updateFilterValues({ [SEARCH_TERM]: eValue }, false);\n }}\n />\n </div>\n <button\n type=\"button\"\n className=\"icon-button icon-button--search\"\n onClick={e => {\n e.preventDefault();\n updateFilterValues({ [SEARCH_TERM]: searchValue }, true);\n }}>\n <i>\n <MdSearch />\n </i>\n </button>\n </div>\n </div>\n);\n\nTextSearch.propTypes = {\n searchValue: PropTypes.string.isRequired,\n updateFilterValues: PropTypes.func.isRequired,\n label: PropTypes.string\n};\n\nTextSearch.defaultProps = {\n label: ''\n};\n\nexport default withTitle(TextSearch);\n"],"mappings":"AAAA,OAAOA,KAAP,MAAkB,OAAlB;AACA,OAAOC,SAAP,MAAsB,YAAtB;AACA,OAAOC,KAAP,MAAkB,oBAAlB;AACA,SAASC,QAAT,QAAyB,gBAAzB;AACA,SAASC,SAAT,QAA0B,cAA1B;AACA,SAASC,WAAT,QAA4B,cAA5B;;AAEA,MAAMC,UAAU,GAAG,CAAC;EAAEC,KAAF;EAASC,WAAT;EAAsBC;AAAtB,CAAD,kBACjB;EAAK,SAAS,EAAC;AAAf,gBACE;EAAK,SAAS,EAAC;AAAf,gBACE;EAAK,SAAS,EAAC;AAAf,gBACE,oBAAC,KAAD;EACE,EAAE,EAAEJ,WADN;EAEE,KAAK,EAAEG,WAFT;EAGE,WAAW,EAAED,KAAK,IAAI,QAHxB;EAIE,QAAQ,EAAE,CAAC;IAAEG,KAAK,EAAEC;EAAT,CAAD,KAAuB;IAC/BF,kBAAkB,CAAC;MAAE,CAACJ,WAAD,GAAeM;IAAjB,CAAD,EAA4B,KAA5B,CAAlB;EACD;AANH,EADF,CADF,eAWE;EACE,IAAI,EAAC,QADP;EAEE,SAAS,EAAC,iCAFZ;EAGE,OAAO,EAAEC,CAAC,IAAI;IACZA,CAAC,CAACC,cAAF;IACAJ,kBAAkB,CAAC;MAAE,CAACJ,WAAD,GAAeG;IAAjB,CAAD,EAAiC,IAAjC,CAAlB;EACD;AANH,gBAOE,4CACE,oBAAC,QAAD,OADF,CAPF,CAXF,CADF,CADF;;AA4BAF,UAAU,CAACQ,SAAX,GAAuB;EACrBN,WAAW,EAAEP,SAAS,CAACc,MAAV,CAAiBC,UADT;EAErBP,kBAAkB,EAAER,SAAS,CAACgB,IAAV,CAAeD,UAFd;EAGrBT,KAAK,EAAEN,SAAS,CAACc;AAHI,CAAvB;AAMAT,UAAU,CAACY,YAAX,GAA0B;EACxBX,KAAK,EAAE;AADiB,CAA1B;AAIA,eAAeH,SAAS,CAACE,UAAD,CAAxB"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/components/SearchFilter/components/index.js"],"names":["TextSearch","Checkbox","SelectFilter","Range"],"mappings":"AAAA,OAAOA,UAAP,MAAuB,cAAvB;AACA,OAAOC,QAAP,MAAqB,YAArB;AACA,OAAOC,YAAP,MAAyB,UAAzB;AACA,OAAOC,KAAP,MAAkB,SAAlB;AAEA,SAASH,UAAT,EAAqBC,QAArB,EAA+BC,YAA/B,EAA6CC,KAA7C","sourcesContent":["import TextSearch from './TextSearch';\nimport Checkbox from './Checkbox';\nimport SelectFilter from './Select';\nimport Range from './Range';\n\nexport { TextSearch, Checkbox, SelectFilter, Range };\n"],"file":"index.js"}
1
+ {"version":3,"file":"index.js","names":["TextSearch","Checkbox","SelectFilter","Range"],"sources":["../../../../src/components/SearchFilter/components/index.js"],"sourcesContent":["import TextSearch from './TextSearch';\nimport Checkbox from './Checkbox';\nimport SelectFilter from './Select';\nimport Range from './Range';\n\nexport { TextSearch, Checkbox, SelectFilter, Range };\n"],"mappings":"AAAA,OAAOA,UAAP,MAAuB,cAAvB;AACA,OAAOC,QAAP,MAAqB,YAArB;AACA,OAAOC,YAAP,MAAyB,UAAzB;AACA,OAAOC,KAAP,MAAkB,SAAlB;AAEA,SAASH,UAAT,EAAqBC,QAArB,EAA+BC,YAA/B,EAA6CC,KAA7C"}
@@ -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';
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/components/SearchFilter/constants.js"],"names":["CHECKBOX","SELECT","TEXT_SEARCH","SEARCH_TERM","SIZE","KEYWORD","RAW_RESULTS","DEFAULT_OPTION","DEFAULT_VALUES","RANGE","CHECKBOX_SELECT","LIMIT_MIN","LIMIT_MAX","MORE","LESS","UPDATED_RANGES","MIN_VALUE","MAX_VALUE","TABLET_WIDTH","RESET","SEARCH","REFINE","MOBILE_REFINEMENT_TITLE","MORE_FILTERS_CLASSES_BASE","MORE_FILTERS_CLASSES","MOBILE_WRAPPER","MOBILE_CONTENT","MOBILE_TOGGLER","MOBILE_BUTTONS","DESKTOP_WRAPPER","DESKTOP_CONTENT","DESKTOP_TOGGLER","DESKTOP_BUTTONS"],"mappings":"AAAA,MAAMA,QAAQ,GAAG,UAAjB;AACA,MAAMC,MAAM,GAAG,QAAf;AACA,MAAMC,WAAW,GAAG,aAApB;AACA,MAAMC,WAAW,GAAG,aAApB;AACA,MAAMC,IAAI,GAAG,EAAb;AACA,MAAMC,OAAO,GAAG,SAAhB;AACA,MAAMC,WAAW,GAAG,YAApB;AACA,MAAMC,cAAc,GAAG,KAAvB;AACA,MAAMC,cAAc,GAAG,CAAC,KAAD,EAAQ,kBAAR,CAAvB;AACA,MAAMC,KAAK,GAAG,OAAd;AACA,MAAMC,eAAe,GAAG,CAAC,UAAD,EAAa,QAAb,CAAxB;AACA,MAAMC,SAAS,GAAG,CAAlB;AACA,MAAMC,SAAS,GAAG,IAAlB;AACA,MAAMC,IAAI,GAAG,MAAb;AACA,MAAMC,IAAI,GAAG,MAAb;AACA,MAAMC,cAAc,GAAG,gBAAvB;AACA,MAAMC,SAAS,GAAG,WAAlB;AACA,MAAMC,SAAS,GAAG,WAAlB;AACA,MAAMC,YAAY,GAAG,GAArB;AACA,MAAMC,KAAK,GAAG,mBAAd;AACA,MAAMC,MAAM,GAAG,QAAf;AACA,MAAMC,MAAM,GAAI,eAAhB;AACA,MAAMC,uBAAuB,GAAG,mBAAhC;AAEA,MAAMC,yBAAyB,GAAG,sBAAlC;AACA,MAAMC,oBAAoB,GAAG;AAC3BC,EAAAA,cAAc,EAAG,GAAEF,yBAA0B,iBADlB;AAE3BG,EAAAA,cAAc,EAAG,GAAEH,yBAA0B,iBAFlB;AAG3BI,EAAAA,cAAc,EAAG,GAAEJ,yBAA0B,iBAHlB;AAI3BK,EAAAA,cAAc,EAAG,GAAEL,yBAA0B,iBAJlB;AAK3BM,EAAAA,eAAe,EAAG,GAAEN,yBAA0B,kBALnB;AAM3BO,EAAAA,eAAe,EAAG,GAAEP,yBAA0B,kBANnB;AAO3BQ,EAAAA,eAAe,EAAG,GAAER,yBAA0B,kBAPnB;AAQ3BS,EAAAA,eAAe,EAAG,GAAET,yBAA0B;AARnB,CAA7B;AAWA,SACEvB,QADF,EAEEC,MAFF,EAGEC,WAHF,EAIEC,WAJF,EAKEC,IALF,EAMEC,OANF,EAOEC,WAPF,EAQEC,cARF,EASEC,cATF,EAUEC,KAVF,EAWEC,eAXF,EAYEC,SAZF,EAaEC,SAbF,EAcEC,IAdF,EAeEC,IAfF,EAgBEC,cAhBF,EAiBEC,SAjBF,EAkBEC,SAlBF,EAmBEC,YAnBF,EAoBEC,KApBF,EAqBEC,MArBF,EAsBEC,MAtBF,EAuBEC,uBAvBF,EAwBEE,oBAxBF","sourcesContent":["const CHECKBOX = 'checkbox';\nconst SELECT = 'select';\nconst TEXT_SEARCH = 'text-search';\nconst SEARCH_TERM = 'search_term';\nconst SIZE = 50;\nconst KEYWORD = 'keyword';\nconst RAW_RESULTS = 'rawResults';\nconst DEFAULT_OPTION = 'Any';\nconst DEFAULT_VALUES = ['Any', 'Please Choose...'];\nconst RANGE = 'range';\nconst CHECKBOX_SELECT = ['checkbox', 'select'];\nconst LIMIT_MIN = 5;\nconst LIMIT_MAX = 1000;\nconst MORE = 'more';\nconst LESS = 'less';\nconst UPDATED_RANGES = 'updated_ranges';\nconst MIN_VALUE = 'min-value';\nconst MAX_VALUE = 'max-value';\nconst TABLET_WIDTH = 768;\nconst RESET = 'Reset all filters';\nconst SEARCH = 'Search';\nconst REFINE = `Refine Search`;\nconst MOBILE_REFINEMENT_TITLE = 'Search refinement';\n\nconst MORE_FILTERS_CLASSES_BASE = 'filter__more-filters';\nconst MORE_FILTERS_CLASSES = {\n MOBILE_WRAPPER: `${MORE_FILTERS_CLASSES_BASE}-mobile-wrapper`,\n MOBILE_CONTENT: `${MORE_FILTERS_CLASSES_BASE}-mobile-content`,\n MOBILE_TOGGLER: `${MORE_FILTERS_CLASSES_BASE}-mobile-toggler`,\n MOBILE_BUTTONS: `${MORE_FILTERS_CLASSES_BASE}-mobile-buttons`,\n DESKTOP_WRAPPER: `${MORE_FILTERS_CLASSES_BASE}-desktop-wrapper`,\n DESKTOP_CONTENT: `${MORE_FILTERS_CLASSES_BASE}-desktop-content`,\n DESKTOP_TOGGLER: `${MORE_FILTERS_CLASSES_BASE}-desktop-toggler`,\n DESKTOP_BUTTONS: `${MORE_FILTERS_CLASSES_BASE}-desktop-buttons`\n};\n\nexport {\n CHECKBOX,\n SELECT,\n TEXT_SEARCH,\n SEARCH_TERM,\n SIZE,\n KEYWORD,\n RAW_RESULTS,\n DEFAULT_OPTION,\n DEFAULT_VALUES,\n RANGE,\n CHECKBOX_SELECT,\n LIMIT_MIN,\n LIMIT_MAX,\n MORE,\n LESS,\n UPDATED_RANGES,\n MIN_VALUE,\n MAX_VALUE,\n TABLET_WIDTH,\n RESET,\n SEARCH,\n REFINE,\n MOBILE_REFINEMENT_TITLE,\n MORE_FILTERS_CLASSES\n};\n"],"file":"constants.js"}
1
+ {"version":3,"file":"constants.js","names":["CHECKBOX","SELECT","TEXT_SEARCH","SEARCH_TERM","SIZE","process","env","BLAZE_PB_SEARCH_FILETER_AGG_SIZE","KEYWORD","RAW_RESULTS","DEFAULT_OPTION","DEFAULT_VALUES","RANGE","CHECKBOX_SELECT","LIMIT_MIN","LIMIT_MAX","MORE","LESS","UPDATED_RANGES","MIN_VALUE","MAX_VALUE","TABLET_WIDTH","RESET","SEARCH","REFINE","MOBILE_REFINEMENT_TITLE","MORE_FILTERS_CLASSES_BASE","MORE_FILTERS_CLASSES","MOBILE_WRAPPER","MOBILE_CONTENT","MOBILE_TOGGLER","MOBILE_BUTTONS","DESKTOP_WRAPPER","DESKTOP_CONTENT","DESKTOP_TOGGLER","DESKTOP_BUTTONS"],"sources":["../../../src/components/SearchFilter/constants.js"],"sourcesContent":["const CHECKBOX = 'checkbox';\nconst SELECT = 'select';\nconst TEXT_SEARCH = 'text-search';\nconst SEARCH_TERM = 'search_term';\nconst SIZE = process.env.BLAZE_PB_SEARCH_FILETER_AGG_SIZE || 500;\nconst KEYWORD = 'keyword';\nconst RAW_RESULTS = 'rawResults';\nconst DEFAULT_OPTION = 'Any';\nconst DEFAULT_VALUES = ['Any', 'Please Choose...'];\nconst RANGE = 'range';\nconst CHECKBOX_SELECT = ['checkbox', 'select'];\nconst LIMIT_MIN = 5;\nconst LIMIT_MAX = 1000;\nconst MORE = 'more';\nconst LESS = 'less';\nconst UPDATED_RANGES = 'updated_ranges';\nconst MIN_VALUE = 'min-value';\nconst MAX_VALUE = 'max-value';\nconst TABLET_WIDTH = 768;\nconst RESET = 'Reset all filters';\nconst SEARCH = 'Search';\nconst REFINE = `Refine Search`;\nconst MOBILE_REFINEMENT_TITLE = 'Search refinement';\n\nconst MORE_FILTERS_CLASSES_BASE = 'filter__more-filters';\nconst MORE_FILTERS_CLASSES = {\n MOBILE_WRAPPER: `${MORE_FILTERS_CLASSES_BASE}-mobile-wrapper`,\n MOBILE_CONTENT: `${MORE_FILTERS_CLASSES_BASE}-mobile-content`,\n MOBILE_TOGGLER: `${MORE_FILTERS_CLASSES_BASE}-mobile-toggler`,\n MOBILE_BUTTONS: `${MORE_FILTERS_CLASSES_BASE}-mobile-buttons`,\n DESKTOP_WRAPPER: `${MORE_FILTERS_CLASSES_BASE}-desktop-wrapper`,\n DESKTOP_CONTENT: `${MORE_FILTERS_CLASSES_BASE}-desktop-content`,\n DESKTOP_TOGGLER: `${MORE_FILTERS_CLASSES_BASE}-desktop-toggler`,\n DESKTOP_BUTTONS: `${MORE_FILTERS_CLASSES_BASE}-desktop-buttons`\n};\n\nexport {\n CHECKBOX,\n SELECT,\n TEXT_SEARCH,\n SEARCH_TERM,\n SIZE,\n KEYWORD,\n RAW_RESULTS,\n DEFAULT_OPTION,\n DEFAULT_VALUES,\n RANGE,\n CHECKBOX_SELECT,\n LIMIT_MIN,\n LIMIT_MAX,\n MORE,\n LESS,\n UPDATED_RANGES,\n MIN_VALUE,\n MAX_VALUE,\n TABLET_WIDTH,\n RESET,\n SEARCH,\n REFINE,\n MOBILE_REFINEMENT_TITLE,\n MORE_FILTERS_CLASSES\n};\n"],"mappings":"AAAA,MAAMA,QAAQ,GAAG,UAAjB;AACA,MAAMC,MAAM,GAAG,QAAf;AACA,MAAMC,WAAW,GAAG,aAApB;AACA,MAAMC,WAAW,GAAG,aAApB;AACA,MAAMC,IAAI,GAAGC,OAAO,CAACC,GAAR,CAAYC,gCAAZ,IAAgD,GAA7D;AACA,MAAMC,OAAO,GAAG,SAAhB;AACA,MAAMC,WAAW,GAAG,YAApB;AACA,MAAMC,cAAc,GAAG,KAAvB;AACA,MAAMC,cAAc,GAAG,CAAC,KAAD,EAAQ,kBAAR,CAAvB;AACA,MAAMC,KAAK,GAAG,OAAd;AACA,MAAMC,eAAe,GAAG,CAAC,UAAD,EAAa,QAAb,CAAxB;AACA,MAAMC,SAAS,GAAG,CAAlB;AACA,MAAMC,SAAS,GAAG,IAAlB;AACA,MAAMC,IAAI,GAAG,MAAb;AACA,MAAMC,IAAI,GAAG,MAAb;AACA,MAAMC,cAAc,GAAG,gBAAvB;AACA,MAAMC,SAAS,GAAG,WAAlB;AACA,MAAMC,SAAS,GAAG,WAAlB;AACA,MAAMC,YAAY,GAAG,GAArB;AACA,MAAMC,KAAK,GAAG,mBAAd;AACA,MAAMC,MAAM,GAAG,QAAf;AACA,MAAMC,MAAM,GAAI,eAAhB;AACA,MAAMC,uBAAuB,GAAG,mBAAhC;AAEA,MAAMC,yBAAyB,GAAG,sBAAlC;AACA,MAAMC,oBAAoB,GAAG;EAC3BC,cAAc,EAAG,GAAEF,yBAA0B,iBADlB;EAE3BG,cAAc,EAAG,GAAEH,yBAA0B,iBAFlB;EAG3BI,cAAc,EAAG,GAAEJ,yBAA0B,iBAHlB;EAI3BK,cAAc,EAAG,GAAEL,yBAA0B,iBAJlB;EAK3BM,eAAe,EAAG,GAAEN,yBAA0B,kBALnB;EAM3BO,eAAe,EAAG,GAAEP,yBAA0B,kBANnB;EAO3BQ,eAAe,EAAG,GAAER,yBAA0B,kBAPnB;EAQ3BS,eAAe,EAAG,GAAET,yBAA0B;AARnB,CAA7B;AAWA,SACE1B,QADF,EAEEC,MAFF,EAGEC,WAHF,EAIEC,WAJF,EAKEC,IALF,EAMEI,OANF,EAOEC,WAPF,EAQEC,cARF,EASEC,cATF,EAUEC,KAVF,EAWEC,eAXF,EAYEC,SAZF,EAaEC,SAbF,EAcEC,IAdF,EAeEC,IAfF,EAgBEC,cAhBF,EAiBEC,SAjBF,EAkBEC,SAlBF,EAmBEC,YAnBF,EAoBEC,KApBF,EAqBEC,MArBF,EAsBEC,MAtBF,EAuBEC,uBAvBF,EAwBEE,oBAxBF"}
@@ -0,0 +1,54 @@
1
+ const builFilterObject = (key, value, filters) => {
2
+ const isArray = Array.isArray(value);
3
+
4
+ if (!isArray) {
5
+ const singleFilterObj = {
6
+ match: {
7
+ [key]: value
8
+ }
9
+ };
10
+ filters.push(singleFilterObj);
11
+ return;
12
+ }
13
+
14
+ value.forEach(filterValue => {
15
+ filters.push({
16
+ match: {
17
+ [key]: filterValue
18
+ }
19
+ });
20
+ });
21
+ };
22
+
23
+ const buildFiltersQuery = (query, filterBy, filterByProperty) => {
24
+ const mustFilters = [];
25
+ Object.keys(query).forEach(queryKey => {
26
+ if (queryKey === 'search_term' || queryKey === 'shouldSearch') return;
27
+ if (!queryKey || !query[queryKey]) return;
28
+ const queryValue = query[queryKey];
29
+ const queryKeyword = `${queryKey}.keyword`;
30
+ builFilterObject(queryKeyword, queryValue, mustFilters);
31
+ });
32
+
33
+ if (filterByProperty && filterByProperty.length) {
34
+ filterByProperty && filterByProperty.forEach(filterByPropOption => {
35
+ const [filterByPropKey] = filterByPropOption.split('/');
36
+ filterBy.forEach(filterByOption => {
37
+ if (filterByOption.indexOf(filterByPropKey) === -1) return;
38
+ const [, filteryByValue] = filterByOption.split('/');
39
+ const filterByKeyword = `${filterByPropKey}.keyword`;
40
+ if (!filteryByValue) return;
41
+ mustFilters.push({
42
+ match: {
43
+ [filterByKeyword]: filteryByValue
44
+ }
45
+ });
46
+ });
47
+ });
48
+ }
49
+
50
+ return mustFilters;
51
+ };
52
+
53
+ export default buildFiltersQuery;
54
+ //# sourceMappingURL=build-filters-query.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"build-filters-query.js","names":["builFilterObject","key","value","filters","isArray","Array","singleFilterObj","match","push","forEach","filterValue","buildFiltersQuery","query","filterBy","filterByProperty","mustFilters","Object","keys","queryKey","queryValue","queryKeyword","length","filterByPropOption","filterByPropKey","split","filterByOption","indexOf","filteryByValue","filterByKeyword"],"sources":["../../../../src/components/SearchFilter/helpers/build-filters-query.js"],"sourcesContent":["const builFilterObject = (key, value, filters) => {\n const isArray = Array.isArray(value);\n if (!isArray) {\n const singleFilterObj = { match: { [key]: value } };\n filters.push(singleFilterObj);\n return;\n }\n\n value.forEach(filterValue => {\n filters.push({ match: { [key]: filterValue } });\n });\n};\nconst buildFiltersQuery = (query, filterBy, filterByProperty) => {\n const mustFilters = [];\n Object.keys(query).forEach(queryKey => {\n if (queryKey === 'search_term' || queryKey === 'shouldSearch') return;\n if (!queryKey || !query[queryKey]) return;\n const queryValue = query[queryKey];\n const queryKeyword = `${queryKey}.keyword`;\n builFilterObject(queryKeyword, queryValue, mustFilters);\n });\n\n if (filterByProperty && filterByProperty.length) {\n filterByProperty &&\n filterByProperty.forEach(filterByPropOption => {\n const [filterByPropKey] = filterByPropOption.split('/');\n filterBy.forEach(filterByOption => {\n if (filterByOption.indexOf(filterByPropKey) === -1) return;\n const [, filteryByValue] = filterByOption.split('/');\n const filterByKeyword = `${filterByPropKey}.keyword`;\n if (!filteryByValue) return;\n mustFilters.push({ match: { [filterByKeyword]: filteryByValue } });\n });\n });\n }\n\n return mustFilters;\n};\n\nexport default buildFiltersQuery;\n"],"mappings":"AAAA,MAAMA,gBAAgB,GAAG,CAACC,GAAD,EAAMC,KAAN,EAAaC,OAAb,KAAyB;EAChD,MAAMC,OAAO,GAAGC,KAAK,CAACD,OAAN,CAAcF,KAAd,CAAhB;;EACA,IAAI,CAACE,OAAL,EAAc;IACZ,MAAME,eAAe,GAAG;MAAEC,KAAK,EAAE;QAAE,CAACN,GAAD,GAAOC;MAAT;IAAT,CAAxB;IACAC,OAAO,CAACK,IAAR,CAAaF,eAAb;IACA;EACD;;EAEDJ,KAAK,CAACO,OAAN,CAAcC,WAAW,IAAI;IAC3BP,OAAO,CAACK,IAAR,CAAa;MAAED,KAAK,EAAE;QAAE,CAACN,GAAD,GAAOS;MAAT;IAAT,CAAb;EACD,CAFD;AAGD,CAXD;;AAYA,MAAMC,iBAAiB,GAAG,CAACC,KAAD,EAAQC,QAAR,EAAkBC,gBAAlB,KAAuC;EAC/D,MAAMC,WAAW,GAAG,EAApB;EACAC,MAAM,CAACC,IAAP,CAAYL,KAAZ,EAAmBH,OAAnB,CAA2BS,QAAQ,IAAI;IACrC,IAAIA,QAAQ,KAAK,aAAb,IAA8BA,QAAQ,KAAK,cAA/C,EAA+D;IAC/D,IAAI,CAACA,QAAD,IAAa,CAACN,KAAK,CAACM,QAAD,CAAvB,EAAmC;IACnC,MAAMC,UAAU,GAAGP,KAAK,CAACM,QAAD,CAAxB;IACA,MAAME,YAAY,GAAI,GAAEF,QAAS,UAAjC;IACAlB,gBAAgB,CAACoB,YAAD,EAAeD,UAAf,EAA2BJ,WAA3B,CAAhB;EACD,CAND;;EAQA,IAAID,gBAAgB,IAAIA,gBAAgB,CAACO,MAAzC,EAAiD;IAC/CP,gBAAgB,IACdA,gBAAgB,CAACL,OAAjB,CAAyBa,kBAAkB,IAAI;MAC7C,MAAM,CAACC,eAAD,IAAoBD,kBAAkB,CAACE,KAAnB,CAAyB,GAAzB,CAA1B;MACAX,QAAQ,CAACJ,OAAT,CAAiBgB,cAAc,IAAI;QACjC,IAAIA,cAAc,CAACC,OAAf,CAAuBH,eAAvB,MAA4C,CAAC,CAAjD,EAAoD;QACpD,MAAM,GAAGI,cAAH,IAAqBF,cAAc,CAACD,KAAf,CAAqB,GAArB,CAA3B;QACA,MAAMI,eAAe,GAAI,GAAEL,eAAgB,UAA3C;QACA,IAAI,CAACI,cAAL,EAAqB;QACrBZ,WAAW,CAACP,IAAZ,CAAiB;UAAED,KAAK,EAAE;YAAE,CAACqB,eAAD,GAAmBD;UAArB;QAAT,CAAjB;MACD,CAND;IAOD,CATD,CADF;EAWD;;EAED,OAAOZ,WAAP;AACD,CAzBD;;AA2BA,eAAeJ,iBAAf"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/components/SearchFilter/helpers/build-new-query.js"],"names":["buildNewQuery","url","currentUrl","queryParams","sortValues","newUrl"],"mappings":"AAAA,MAAMA,aAAa,GAAG,CAACC,GAAD,EAAMC,UAAN,EAAkBC,WAAlB,EAA+BC,UAA/B,KAA8C;AAClE,QAAMC,MAAM,GAAGJ,GAAG,GAAI,GAAEA,GAAI,IAAGE,WAAY,EAAzB,GAA8B,GAAED,UAAW,IAAGC,WAAY,EAA5E;AACA,SAAOC,UAAU,GAAI,GAAEC,MAAO,IAAGD,UAAW,EAA3B,GAA+BC,MAAhD;AACD,CAHD;;AAKA,eAAeL,aAAf","sourcesContent":["const buildNewQuery = (url, currentUrl, queryParams, sortValues) => {\n const newUrl = url ? `${url}?${queryParams}` : `${currentUrl}?${queryParams}`;\n return sortValues ? `${newUrl}&${sortValues}` : newUrl;\n};\n\nexport default buildNewQuery;\n"],"file":"build-new-query.js"}
1
+ {"version":3,"file":"build-new-query.js","names":["buildNewQuery","url","currentUrl","queryParams","sortValues","newUrl"],"sources":["../../../../src/components/SearchFilter/helpers/build-new-query.js"],"sourcesContent":["const buildNewQuery = (url, currentUrl, queryParams, sortValues) => {\n const newUrl = url ? `${url}?${queryParams}` : `${currentUrl}?${queryParams}`;\n return sortValues ? `${newUrl}&${sortValues}` : newUrl;\n};\n\nexport default buildNewQuery;\n"],"mappings":"AAAA,MAAMA,aAAa,GAAG,CAACC,GAAD,EAAMC,UAAN,EAAkBC,WAAlB,EAA+BC,UAA/B,KAA8C;EAClE,MAAMC,MAAM,GAAGJ,GAAG,GAAI,GAAEA,GAAI,IAAGE,WAAY,EAAzB,GAA8B,GAAED,UAAW,IAAGC,WAAY,EAA5E;EACA,OAAOC,UAAU,GAAI,GAAEC,MAAO,IAAGD,UAAW,EAA3B,GAA+BC,MAAhD;AACD,CAHD;;AAKA,eAAeL,aAAf"}
@@ -3,7 +3,7 @@ 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] ? encodeURIComponent(filterValues[SEARCH_TERM]) : '';
7
7
  if (searchValue) newQuery.push(`${SEARCH_TERM}=${searchValue}`);
8
8
  filters.forEach(({
9
9
  propsToDisplay,