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

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 (419) hide show
  1. package/CHANGELOG.md +320 -0
  2. package/README.md +9 -0
  3. package/example.env +1 -0
  4. package/lib/BannerContext/index.js.map +1 -1
  5. package/lib/HOC/withInfiniteScroll.js.map +1 -1
  6. package/lib/HOC/withTitle.js.map +1 -1
  7. package/lib/PBContext/index.js.map +1 -1
  8. package/lib/application/query/index.js +9 -3
  9. package/lib/application/query/index.js.map +1 -1
  10. package/lib/components/BackToTop/BackToTop.js.map +1 -1
  11. package/lib/components/Banner/AdSlotRender.js.map +1 -1
  12. package/lib/components/Banner/Banner.js.map +1 -1
  13. package/lib/components/Banner/BannerRender.js.map +1 -1
  14. package/lib/components/Banner/helpers.js.map +1 -1
  15. package/lib/components/Banner/index.js.map +1 -1
  16. package/lib/components/BlazeLink.js.map +1 -1
  17. package/lib/components/Breadcrumb/Breadcrumb.js.map +1 -1
  18. package/lib/components/Button.js.map +1 -1
  19. package/lib/components/Card/Card.js.map +1 -1
  20. package/lib/components/Card/CardContainer.js +3 -7
  21. package/lib/components/Card/CardContainer.js.map +1 -1
  22. package/lib/components/Card/CardFactory.js +6 -3
  23. package/lib/components/Card/CardFactory.js.map +1 -1
  24. package/lib/components/Card/CardRender.js.map +1 -1
  25. package/lib/components/Card/helpers/filter-query-setup.js.map +1 -1
  26. package/lib/components/Card/helpers/filters-setup.js.map +1 -1
  27. package/lib/components/Card/helpers/get-dynamic-grid-classes.js.map +1 -1
  28. package/lib/components/Carousel/Carousel.js.map +1 -1
  29. package/lib/components/Carousel/CarouselImage/CarouselImage.js.map +1 -1
  30. package/lib/components/Carousel/CarouselRender/CarouselRender.js.map +1 -1
  31. package/lib/components/CarouselWrapper.js +2 -2
  32. package/lib/components/CarouselWrapper.js.map +1 -1
  33. package/lib/components/ClickWrapper.js.map +1 -1
  34. package/lib/components/Code/Code.js.map +1 -1
  35. package/lib/components/Code/ScriptTag.js.map +1 -1
  36. package/lib/components/Code/helpers/wrap-script-tags.js.map +1 -1
  37. package/lib/components/DataSummary/DataSummaryFactory.js.map +1 -1
  38. package/lib/components/DataSummary/DataSummaryRender.js.map +1 -1
  39. package/lib/components/DataSummary/DataSummaryTypes/HeadingLargeSummary/HeadingLargeSummary.js.map +1 -1
  40. package/lib/components/DataSummary/DataSummaryTypes/HeadingLargeSummary/HeadingLargeSummaryContent.js.map +1 -1
  41. package/lib/components/DataSummary/DataSummaryTypes/ItemDetailsSummary/ItemDetailsSummary.js.map +1 -1
  42. package/lib/components/DataSummary/DataSummaryTypes/ItemDetailsSummary/ItemDetailsSummaryContent.js.map +1 -1
  43. package/lib/components/DataSummary/DataSummaryTypes/LargeSummary/LargeSummary.js.map +1 -1
  44. package/lib/components/DataSummary/DataSummaryTypes/LargeSummary/LargeSummaryContent.js.map +1 -1
  45. package/lib/components/DataSummary/DataSummaryTypes/ListSummary/ListSummary.js.map +1 -1
  46. package/lib/components/DataSummary/DataSummaryTypes/ListSummary/ListSummaryContent.js.map +1 -1
  47. package/lib/components/DataSummary/DataSummaryTypes/TextSummary/TextSummary.js.map +1 -1
  48. package/lib/components/DataSummary/DataSummaryTypes/TextSummary/TextSummaryContent.js.map +1 -1
  49. package/lib/components/DataSummary/DataSummaryTypes/index.js.map +1 -1
  50. package/lib/components/DataSummary/helpers/build-loop-props-content.js.map +1 -1
  51. package/lib/components/DataSummary/helpers/build-props-to-display-with-content.js.map +1 -1
  52. package/lib/components/DataSummary/helpers/get-data-summary-query.js.map +1 -1
  53. package/lib/components/DataSummary/helpers/get-link-based-on-value.js.map +1 -1
  54. package/lib/components/DataSummary/helpers/get-prop-value.js.map +1 -1
  55. package/lib/components/DataSummary/helpers/get-value-from-array.js.map +1 -1
  56. package/lib/components/DataSummary/helpers/strip-summary-props-content.js.map +1 -1
  57. package/lib/components/EmailConfirm/EmailConfirm.js.map +1 -1
  58. package/lib/components/Image/GlobalLightbox/GlobalLightbox.js.map +1 -1
  59. package/lib/components/Image/GlobalLightbox/NavButton.js.map +1 -1
  60. package/lib/components/Image/GlobalLightbox/index.js.map +1 -1
  61. package/lib/components/Image/Image.js.map +1 -1
  62. package/lib/components/Image/ImageDetails.js.map +1 -1
  63. package/lib/components/Image/ImageFactory.js.map +1 -1
  64. package/lib/components/Image/ImageRender.js +5 -1
  65. package/lib/components/Image/ImageRender.js.map +1 -1
  66. package/lib/components/Image/Lightbox/Lightbox.js.map +1 -1
  67. package/lib/components/ItemList/ItemListButton/ItemListButton.js +161 -0
  68. package/lib/components/ItemList/ItemListButton/ItemListButton.js.map +1 -0
  69. package/lib/components/ItemList/ItemListButton/index.js +16 -0
  70. package/lib/components/ItemList/ItemListButton/index.js.map +1 -0
  71. package/lib/components/ItemList/ItemListCounter/ItemListCounter.js +83 -0
  72. package/lib/components/ItemList/ItemListCounter/ItemListCounter.js.map +1 -0
  73. package/lib/components/ItemList/ItemListCounter/index.js +16 -0
  74. package/lib/components/ItemList/ItemListCounter/index.js.map +1 -0
  75. package/lib/components/ItemList/ItemListNew/ItemListNew.js +87 -0
  76. package/lib/components/ItemList/ItemListNew/ItemListNew.js.map +1 -0
  77. package/lib/components/ItemList/ItemListNew/index.js +16 -0
  78. package/lib/components/ItemList/ItemListNew/index.js.map +1 -0
  79. package/lib/components/ItemList/constants.js +19 -0
  80. package/lib/components/ItemList/constants.js.map +1 -0
  81. package/lib/components/ItemList/helpers/get-item-list-data.js +17 -0
  82. package/lib/components/ItemList/helpers/get-item-list-data.js.map +1 -0
  83. package/lib/components/ItemList/helpers/get-item-list-id.js +23 -0
  84. package/lib/components/ItemList/helpers/get-item-list-id.js.map +1 -0
  85. package/lib/components/ItemList/helpers/get-item-list-ids.js +28 -0
  86. package/lib/components/ItemList/helpers/get-item-list-ids.js.map +1 -0
  87. package/lib/components/ItemList/helpers/index.js +50 -0
  88. package/lib/components/ItemList/helpers/index.js.map +1 -0
  89. package/lib/components/ItemList/helpers/set-item-list-id.js +22 -0
  90. package/lib/components/ItemList/helpers/set-item-list-id.js.map +1 -0
  91. package/lib/components/ItemList/helpers/set-param-and-redirect.js +51 -0
  92. package/lib/components/ItemList/helpers/set-param-and-redirect.js.map +1 -0
  93. package/lib/components/ItemList/hooks/index.js +18 -0
  94. package/lib/components/ItemList/hooks/index.js.map +1 -0
  95. package/lib/components/ItemList/hooks/use-item-list-id.js +45 -0
  96. package/lib/components/ItemList/hooks/use-item-list-id.js.map +1 -0
  97. package/lib/components/Layout/Layout.js.map +1 -1
  98. package/lib/components/Layout/helpers/check-if-row-has-columns.js.map +1 -1
  99. package/lib/components/LazyImage/LazyImage.js +5 -1
  100. package/lib/components/LazyImage/LazyImage.js.map +1 -1
  101. package/lib/components/LazyImage/index.js.map +1 -1
  102. package/lib/components/List/ListBuilder.js +12 -6
  103. package/lib/components/List/ListBuilder.js.map +1 -1
  104. package/lib/components/List/ListFactory.js +34 -7
  105. package/lib/components/List/ListFactory.js.map +1 -1
  106. package/lib/components/List/ListRender.js.map +1 -1
  107. package/lib/components/List/components/Cards/CardRenderWithInfiniteScroll.js.map +1 -1
  108. package/lib/components/List/components/Cards/CardsRender.js.map +1 -1
  109. package/lib/components/List/components/Cards/CardsRenderItem.js.map +1 -1
  110. package/lib/components/List/components/Cards/CardsRenderWrapper.js.map +1 -1
  111. package/lib/components/List/components/Full/FullRender.js.map +1 -1
  112. package/lib/components/List/components/Full/FullRenderItem.js.map +1 -1
  113. package/lib/components/List/components/Full/FullRenderWithInfiniteScroll.js.map +1 -1
  114. package/lib/components/List/components/Header/ListHeader.js.map +1 -1
  115. package/lib/components/List/components/Pagination/Classic.js.map +1 -1
  116. package/lib/components/List/components/Pagination/ListPagination.js.map +1 -1
  117. package/lib/components/List/components/Pagination/LoadMore.js.map +1 -1
  118. package/lib/components/List/helpers/build-az-aggregations.js.map +1 -1
  119. package/lib/components/List/helpers/build-az-url.js.map +1 -1
  120. package/lib/components/List/helpers/build-pagination-items.js.map +1 -1
  121. package/lib/components/List/helpers/build-pagination-url.js.map +1 -1
  122. package/lib/components/List/helpers/has-required-item-list-details.js +29 -0
  123. package/lib/components/List/helpers/has-required-item-list-details.js.map +1 -0
  124. package/lib/components/List/helpers/index.js +8 -0
  125. package/lib/components/List/helpers/index.js.map +1 -1
  126. package/lib/components/Login/LoggedInMessage.js.map +1 -1
  127. package/lib/components/Login/Login.js.map +1 -1
  128. package/lib/components/Login/LoginForm.js.map +1 -1
  129. package/lib/components/Menu/Menu.js +41 -28
  130. package/lib/components/Menu/Menu.js.map +1 -1
  131. package/lib/components/Menu/MenuContext.js +20 -0
  132. package/lib/components/Menu/MenuContext.js.map +1 -0
  133. package/lib/components/MenuItem/MenuItem.js +26 -7
  134. package/lib/components/MenuItem/MenuItem.js.map +1 -1
  135. package/lib/components/Modal/Modal.js.map +1 -1
  136. package/lib/components/PasswordReset/PasswordReset.js.map +1 -1
  137. package/lib/components/PasswordReset/helpers/validatePassword.js.map +1 -1
  138. package/lib/components/PasswordResetRequest/PasswordResetRequest.js.map +1 -1
  139. package/lib/components/SearchContent/SearchContent.js +183 -0
  140. package/lib/components/SearchContent/SearchContent.js.map +1 -0
  141. package/lib/components/SearchContent/SearchContentItems.js +51 -0
  142. package/lib/components/SearchContent/SearchContentItems.js.map +1 -0
  143. package/lib/components/SearchContent/SearchContentResults.js +45 -0
  144. package/lib/components/SearchContent/SearchContentResults.js.map +1 -0
  145. package/lib/components/SearchContent/SearchContentToggleIcon.js +42 -0
  146. package/lib/components/SearchContent/SearchContentToggleIcon.js.map +1 -0
  147. package/lib/components/SearchContent/index.js +2 -233
  148. package/lib/components/SearchContent/index.js.map +1 -1
  149. package/lib/components/SearchFilter/SearchFilter/CloseMobileForm.js.map +1 -1
  150. package/lib/components/SearchFilter/SearchFilter/FiltersList.js +2 -4
  151. package/lib/components/SearchFilter/SearchFilter/FiltersList.js.map +1 -1
  152. package/lib/components/SearchFilter/SearchFilter/MobileFormToolbar.js.map +1 -1
  153. package/lib/components/SearchFilter/SearchFilter/ResetDesktopForm.js.map +1 -1
  154. package/lib/components/SearchFilter/SearchFilter/SearchFilter.js +27 -69
  155. package/lib/components/SearchFilter/SearchFilter/SearchFilter.js.map +1 -1
  156. package/lib/components/SearchFilter/SearchFilterContainer.js +87 -23
  157. package/lib/components/SearchFilter/SearchFilterContainer.js.map +1 -1
  158. package/lib/components/SearchFilter/components/Checkbox.js +19 -9
  159. package/lib/components/SearchFilter/components/Checkbox.js.map +1 -1
  160. package/lib/components/SearchFilter/components/Range.js.map +1 -1
  161. package/lib/components/SearchFilter/components/Select.js +27 -11
  162. package/lib/components/SearchFilter/components/Select.js.map +1 -1
  163. package/lib/components/SearchFilter/components/TextSearch.js +1 -5
  164. package/lib/components/SearchFilter/components/TextSearch.js.map +1 -1
  165. package/lib/components/SearchFilter/constants.js +1 -1
  166. package/lib/components/SearchFilter/constants.js.map +1 -1
  167. package/lib/components/SearchFilter/helpers/build-filters-query.js +87 -0
  168. package/lib/components/SearchFilter/helpers/build-filters-query.js.map +1 -0
  169. package/lib/components/SearchFilter/helpers/build-query.js.map +1 -1
  170. package/lib/components/SearchFilter/helpers/build-raw-query-stringified.js +2 -1
  171. package/lib/components/SearchFilter/helpers/build-raw-query-stringified.js.map +1 -1
  172. package/lib/components/SearchFilter/helpers/calculate-min-max.js.map +1 -1
  173. package/lib/components/SearchFilter/helpers/check-if-range-updated.js.map +1 -1
  174. package/lib/components/SearchFilter/helpers/get-filter-value-from-query.js.map +1 -1
  175. package/lib/components/SearchFilter/helpers/get-initial-filter-values.js.map +1 -1
  176. package/lib/components/SearchFilter/helpers/get-intersected-prop.js.map +1 -1
  177. package/lib/components/SearchFilter/helpers/get-range-value.js.map +1 -1
  178. package/lib/components/SearchFilter/helpers/get-responsive-filter-classnames.js.map +1 -1
  179. package/lib/components/SearchFilter/helpers/get-select-options.js.map +1 -1
  180. package/lib/components/SearchFilter/helpers/index.js +8 -0
  181. package/lib/components/SearchFilter/helpers/index.js.map +1 -1
  182. package/lib/components/SearchFilterSort/SearchFilterSort.js.map +1 -1
  183. package/lib/components/SearchFilterSort/helpers/handle-sort-update.js.map +1 -1
  184. package/lib/components/SearchFilterSort/helpers/update-sort.js.map +1 -1
  185. package/lib/components/SocialFollow/SFItem.js.map +1 -1
  186. package/lib/components/SocialFollow/SocialFollow.js.map +1 -1
  187. package/lib/components/SocialFollow/SocialFollowRender.js.map +1 -1
  188. package/lib/components/SubMenu/SubMenu.js.map +1 -1
  189. package/lib/components/TextBlock/TextBlockRender.js.map +1 -1
  190. package/lib/components/TextBlock/index.js.map +1 -1
  191. package/lib/components/Video/Video.js.map +1 -1
  192. package/lib/components/Video/VideoModal.js.map +1 -1
  193. package/lib/components/Video/VideoRender.js.map +1 -1
  194. package/lib/components/Video/providers/Default.js.map +1 -1
  195. package/lib/components/Video/providers/JWPlayer/JWPlayerProvider.js.map +1 -1
  196. package/lib/components/Video/providers/YouTube/YouTubeProvider.js.map +1 -1
  197. package/lib/components/Video/providers/YouTube/YoutubeEmbeded.js.map +1 -1
  198. package/lib/components/Video/providers/get-provider.js.map +1 -1
  199. package/lib/components/Wrapper.js.map +1 -1
  200. package/lib/components/index.js +16 -1
  201. package/lib/components/index.js.map +1 -1
  202. package/lib/constants/index.js +3 -1
  203. package/lib/constants/index.js.map +1 -1
  204. package/lib/helpers/build-inherited-filters.js.map +1 -1
  205. package/lib/helpers/build-raw-query-base.js.map +1 -1
  206. package/lib/helpers/build-raw-query.js.map +1 -1
  207. package/lib/helpers/build-search-values-checkbox-select.js.map +1 -1
  208. package/lib/helpers/check-props-to-use.js.map +1 -1
  209. package/lib/helpers/get-entities-with-banner.js.map +1 -1
  210. package/lib/helpers/get-entity-data.js.map +1 -1
  211. package/lib/helpers/get-entity-render-props.js.map +1 -1
  212. package/lib/helpers/get-filter-props.js.map +1 -1
  213. package/lib/helpers/get-generic-props.js.map +1 -1
  214. package/lib/helpers/get-generic-render-variables.js.map +1 -1
  215. package/lib/helpers/get-image-ids.js.map +1 -1
  216. package/lib/helpers/get-parsed-prop-values.js.map +1 -1
  217. package/lib/helpers/get-prop-values.js.map +1 -1
  218. package/lib/helpers/get-query-filters.js.map +1 -1
  219. package/lib/helpers/get-query-props.js.map +1 -1
  220. package/lib/helpers/get-updated-filter-by.js.map +1 -1
  221. package/lib/helpers/inject-banner.js.map +1 -1
  222. package/lib/helpers/inject-banners-to-entities.js.map +1 -1
  223. package/lib/helpers/inject-multiple-banners/get-banners-for-entities/get-banners-for-entities.js.map +1 -1
  224. package/lib/helpers/inject-multiple-banners/get-banners-for-nodes/get-banners-for-nodes.js.map +1 -1
  225. package/lib/helpers/inject-multiple-banners/get-banners-for-nodes/helpers/group-node-entities.js.map +1 -1
  226. package/lib/helpers/inject-multiple-banners/inject-multiple-banners.js.map +1 -1
  227. package/lib/helpers/is-filter-entitys-id.js.map +1 -1
  228. package/lib/helpers/parse-TextBlock.js.map +1 -1
  229. package/lib/helpers/parse-props-to-display.js.map +1 -1
  230. package/lib/helpers/render-children.js.map +1 -1
  231. package/lib/helpers/sort-response-data.js.map +1 -1
  232. package/lib/hooks/helpers/RenderComponent.js.map +1 -1
  233. package/lib/hooks/helpers/append-gtm-classname.js +1 -0
  234. package/lib/hooks/helpers/append-gtm-classname.js.map +1 -1
  235. package/lib/hooks/helpers/buildPBComponents.js.map +1 -1
  236. package/lib/hooks/helpers/getComponent.js.map +1 -1
  237. package/lib/hooks/helpers/inject-element-banners.js.map +1 -1
  238. package/lib/hooks/helpers/inject-textblock-banners.js.map +1 -1
  239. package/lib/hooks/helpers/insert-banners.js.map +1 -1
  240. package/lib/hooks/helpers/update-targetings.js.map +1 -1
  241. package/lib/hooks/use-banner-insertion.js.map +1 -1
  242. package/lib/hooks/use-check-mobile-screen.js.map +1 -1
  243. package/lib/hooks/use-get-entity-schema.js.map +1 -1
  244. package/lib/hooks/use-get-entity-schemas-as-obj.js.map +1 -1
  245. package/lib/hooks/use-get-image-id-from-relation.js.map +1 -1
  246. package/lib/hooks/use-get-images.js.map +1 -1
  247. package/lib/hooks/use-get-single-entity-schema.js.map +1 -1
  248. package/lib/hooks/use-page-builder.js.map +1 -1
  249. package/lib/utils/get-class-modifiers.js.map +1 -1
  250. package/lib/utils/get-image-data.js.map +1 -1
  251. package/lib-es/application/query/index.js +49 -1
  252. package/lib-es/application/query/index.js.map +1 -1
  253. package/lib-es/components/Card/CardContainer.js +3 -7
  254. package/lib-es/components/Card/CardContainer.js.map +1 -1
  255. package/lib-es/components/Card/CardFactory.js +7 -4
  256. package/lib-es/components/Card/CardFactory.js.map +1 -1
  257. package/lib-es/components/CarouselWrapper.js +2 -2
  258. package/lib-es/components/CarouselWrapper.js.map +1 -1
  259. package/lib-es/components/Image/ImageRender.js +4 -1
  260. package/lib-es/components/Image/ImageRender.js.map +1 -1
  261. package/lib-es/components/ItemList/ItemListButton/ItemListButton.js +111 -0
  262. package/lib-es/components/ItemList/ItemListButton/ItemListButton.js.map +1 -0
  263. package/lib-es/components/ItemList/ItemListButton/index.js +3 -0
  264. package/lib-es/components/ItemList/ItemListButton/index.js.map +1 -0
  265. package/lib-es/components/ItemList/ItemListCounter/ItemListCounter.js +60 -0
  266. package/lib-es/components/ItemList/ItemListCounter/ItemListCounter.js.map +1 -0
  267. package/lib-es/components/ItemList/ItemListCounter/index.js +3 -0
  268. package/lib-es/components/ItemList/ItemListCounter/index.js.map +1 -0
  269. package/lib-es/components/ItemList/ItemListNew/ItemListNew.js +64 -0
  270. package/lib-es/components/ItemList/ItemListNew/ItemListNew.js.map +1 -0
  271. package/lib-es/components/ItemList/ItemListNew/index.js +3 -0
  272. package/lib-es/components/ItemList/ItemListNew/index.js.map +1 -0
  273. package/lib-es/components/ItemList/constants.js +6 -0
  274. package/lib-es/components/ItemList/constants.js.map +1 -0
  275. package/lib-es/components/ItemList/helpers/get-item-list-data.js +7 -0
  276. package/lib-es/components/ItemList/helpers/get-item-list-data.js.map +1 -0
  277. package/lib-es/components/ItemList/helpers/get-item-list-id.js +11 -0
  278. package/lib-es/components/ItemList/helpers/get-item-list-id.js.map +1 -0
  279. package/lib-es/components/ItemList/helpers/get-item-list-ids.js +13 -0
  280. package/lib-es/components/ItemList/helpers/get-item-list-ids.js.map +1 -0
  281. package/lib-es/components/ItemList/helpers/index.js +6 -0
  282. package/lib-es/components/ItemList/helpers/index.js.map +1 -0
  283. package/lib-es/components/ItemList/helpers/set-item-list-id.js +10 -0
  284. package/lib-es/components/ItemList/helpers/set-item-list-id.js.map +1 -0
  285. package/lib-es/components/ItemList/helpers/set-param-and-redirect.js +20 -0
  286. package/lib-es/components/ItemList/helpers/set-param-and-redirect.js.map +1 -0
  287. package/lib-es/components/ItemList/hooks/index.js +2 -0
  288. package/lib-es/components/ItemList/hooks/index.js.map +1 -0
  289. package/lib-es/components/ItemList/hooks/use-item-list-id.js +26 -0
  290. package/lib-es/components/ItemList/hooks/use-item-list-id.js.map +1 -0
  291. package/lib-es/components/LazyImage/LazyImage.js +4 -1
  292. package/lib-es/components/LazyImage/LazyImage.js.map +1 -1
  293. package/lib-es/components/List/ListBuilder.js +12 -6
  294. package/lib-es/components/List/ListBuilder.js.map +1 -1
  295. package/lib-es/components/List/ListFactory.js +33 -9
  296. package/lib-es/components/List/ListFactory.js.map +1 -1
  297. package/lib-es/components/List/helpers/has-required-item-list-details.js +20 -0
  298. package/lib-es/components/List/helpers/has-required-item-list-details.js.map +1 -0
  299. package/lib-es/components/List/helpers/index.js +1 -0
  300. package/lib-es/components/List/helpers/index.js.map +1 -1
  301. package/lib-es/components/Menu/Menu.js +54 -46
  302. package/lib-es/components/Menu/Menu.js.map +1 -1
  303. package/lib-es/components/Menu/MenuContext.js +6 -0
  304. package/lib-es/components/Menu/MenuContext.js.map +1 -0
  305. package/lib-es/components/MenuItem/MenuItem.js +24 -9
  306. package/lib-es/components/MenuItem/MenuItem.js.map +1 -1
  307. package/lib-es/components/SearchContent/SearchContent.js +129 -0
  308. package/lib-es/components/SearchContent/SearchContent.js.map +1 -0
  309. package/lib-es/components/SearchContent/SearchContentItems.js +33 -0
  310. package/lib-es/components/SearchContent/SearchContentItems.js.map +1 -0
  311. package/lib-es/components/SearchContent/SearchContentResults.js +31 -0
  312. package/lib-es/components/SearchContent/SearchContentResults.js.map +1 -0
  313. package/lib-es/components/SearchContent/SearchContentToggleIcon.js +30 -0
  314. package/lib-es/components/SearchContent/SearchContentToggleIcon.js.map +1 -0
  315. package/lib-es/components/SearchContent/index.js +1 -172
  316. package/lib-es/components/SearchContent/index.js.map +1 -1
  317. package/lib-es/components/SearchFilter/SearchFilter/FiltersList.js +2 -4
  318. package/lib-es/components/SearchFilter/SearchFilter/FiltersList.js.map +1 -1
  319. package/lib-es/components/SearchFilter/SearchFilter/SearchFilter.js +21 -46
  320. package/lib-es/components/SearchFilter/SearchFilter/SearchFilter.js.map +1 -1
  321. package/lib-es/components/SearchFilter/SearchFilterContainer.js +70 -15
  322. package/lib-es/components/SearchFilter/SearchFilterContainer.js.map +1 -1
  323. package/lib-es/components/SearchFilter/components/Checkbox.js +18 -9
  324. package/lib-es/components/SearchFilter/components/Checkbox.js.map +1 -1
  325. package/lib-es/components/SearchFilter/components/Select.js +23 -8
  326. package/lib-es/components/SearchFilter/components/Select.js.map +1 -1
  327. package/lib-es/components/SearchFilter/components/TextSearch.js +1 -5
  328. package/lib-es/components/SearchFilter/components/TextSearch.js.map +1 -1
  329. package/lib-es/components/SearchFilter/constants.js +1 -1
  330. package/lib-es/components/SearchFilter/constants.js.map +1 -1
  331. package/lib-es/components/SearchFilter/helpers/build-filters-query.js +54 -0
  332. package/lib-es/components/SearchFilter/helpers/build-filters-query.js.map +1 -0
  333. package/lib-es/components/SearchFilter/helpers/build-raw-query-stringified.js +2 -1
  334. package/lib-es/components/SearchFilter/helpers/build-raw-query-stringified.js.map +1 -1
  335. package/lib-es/components/SearchFilter/helpers/get-initial-filter-values.js.map +1 -1
  336. package/lib-es/components/SearchFilter/helpers/index.js +2 -1
  337. package/lib-es/components/SearchFilter/helpers/index.js.map +1 -1
  338. package/lib-es/components/index.js +10 -1
  339. package/lib-es/components/index.js.map +1 -1
  340. package/lib-es/constants/index.js +2 -1
  341. package/lib-es/constants/index.js.map +1 -1
  342. package/lib-es/helpers/build-raw-query.js.map +1 -1
  343. package/lib-es/hooks/helpers/append-gtm-classname.js +1 -0
  344. package/lib-es/hooks/helpers/append-gtm-classname.js.map +1 -1
  345. package/package.json +5 -4
  346. package/src/application/query/index.js +55 -1
  347. package/src/components/Card/CardContainer.js +2 -6
  348. package/src/components/Card/CardFactory.js +5 -3
  349. package/src/components/CarouselWrapper.js +2 -2
  350. package/src/components/Image/ImageRender.js +3 -0
  351. package/src/components/ItemList/ItemListButton/ItemListButton.js +94 -0
  352. package/src/components/ItemList/ItemListButton/index.js +3 -0
  353. package/src/components/ItemList/ItemListCounter/ItemListCounter.js +52 -0
  354. package/src/components/ItemList/ItemListCounter/index.js +3 -0
  355. package/src/components/ItemList/ItemListNew/ItemListNew.js +51 -0
  356. package/src/components/ItemList/ItemListNew/index.js +3 -0
  357. package/src/components/ItemList/constants.js +5 -0
  358. package/src/components/ItemList/helpers/get-item-list-data.js +6 -0
  359. package/src/components/ItemList/helpers/get-item-list-id.js +11 -0
  360. package/src/components/ItemList/helpers/get-item-list-ids.js +10 -0
  361. package/src/components/ItemList/helpers/index.js +5 -0
  362. package/src/components/ItemList/helpers/set-item-list-id.js +9 -0
  363. package/src/components/ItemList/helpers/set-param-and-redirect.js +20 -0
  364. package/src/components/ItemList/hooks/index.js +1 -0
  365. package/src/components/ItemList/hooks/use-item-list-id.js +27 -0
  366. package/src/components/LazyImage/LazyImage.js +11 -1
  367. package/src/components/List/ListBuilder.js +10 -5
  368. package/src/components/List/ListFactory.js +48 -12
  369. package/src/components/List/helpers/has-required-item-list-details.js +14 -0
  370. package/src/components/List/helpers/index.js +1 -0
  371. package/src/components/Menu/Menu.js +61 -54
  372. package/src/components/Menu/MenuContext.js +5 -0
  373. package/src/components/MenuItem/MenuItem.js +39 -14
  374. package/src/components/SearchContent/SearchContent.js +136 -0
  375. package/src/components/SearchContent/SearchContentItems.js +28 -0
  376. package/src/components/SearchContent/SearchContentResults.js +27 -0
  377. package/src/components/SearchContent/SearchContentToggleIcon.js +27 -0
  378. package/src/components/SearchContent/index.js +1 -177
  379. package/src/components/SearchFilter/SearchFilter/FiltersList.js +30 -37
  380. package/src/components/SearchFilter/SearchFilter/SearchFilter.js +20 -28
  381. package/src/components/SearchFilter/SearchFilterContainer.js +58 -16
  382. package/src/components/SearchFilter/components/Checkbox.js +23 -8
  383. package/src/components/SearchFilter/components/Select.js +18 -11
  384. package/src/components/SearchFilter/components/TextSearch.js +1 -3
  385. package/src/components/SearchFilter/constants.js +1 -1
  386. package/src/components/SearchFilter/helpers/build-filters-query.js +40 -0
  387. package/src/components/SearchFilter/helpers/build-raw-query-stringified.js +2 -1
  388. package/src/components/SearchFilter/helpers/get-initial-filter-values.js +1 -0
  389. package/src/components/SearchFilter/helpers/index.js +3 -1
  390. package/src/components/index.js +10 -1
  391. package/src/constants/index.js +2 -0
  392. package/src/helpers/build-raw-query.js +1 -0
  393. package/src/hooks/helpers/append-gtm-classname.js +3 -0
  394. package/tests/helpers/mocks.js +4 -4
  395. package/tests/unit/src/components/ItemList/ItemListButton.test.js +175 -0
  396. package/tests/unit/src/components/ItemList/ItemListCounter.test.js +65 -0
  397. package/tests/unit/src/components/ItemList/ItemListNew.test.js +164 -0
  398. package/tests/unit/src/components/ItemList/__snapshots__/ItemListButton.test.js.snap +107 -0
  399. package/tests/unit/src/components/ItemList/__snapshots__/ItemListCounter.test.js.snap +31 -0
  400. package/tests/unit/src/components/ItemList/__snapshots__/ItemListNew.test.js.snap +27 -0
  401. package/tests/unit/src/components/ItemList/helpers/get-item-list-data.test.js +28 -0
  402. package/tests/unit/src/components/ItemList/helpers/get-item-list-id.test.js +20 -0
  403. package/tests/unit/src/components/ItemList/helpers/get-item-list-ids.test.js +19 -0
  404. package/tests/unit/src/components/ItemList/helpers/set-item-list-id.test.js +13 -0
  405. package/tests/unit/src/components/ItemList/helpers/set-param-and-redirect.test.js +30 -0
  406. package/tests/unit/src/components/ItemList/hooks/use-item-list-id.test.js +32 -0
  407. package/tests/unit/src/components/List/helpers/has-required-item-list-details.test.js +30 -0
  408. package/tests/unit/src/components/Menu/Menu.test.js +9 -3
  409. package/tests/unit/src/components/Menu/__snapshots__/Menu.test.js.snap +12 -11
  410. package/tests/unit/src/components/MenuItem/MenuItem.test.js +1 -1
  411. package/tests/unit/src/components/MenuItem/SubMenu.test.js +5 -1
  412. package/tests/unit/src/components/MenuItem/__snapshots__/MenuItem.test.js.snap +54 -10
  413. package/tests/unit/src/components/SearchContent/SearchContent.test.js +29 -0
  414. package/tests/unit/src/components/SearchContent/__snapshots__/SearchContent.test.js.snap +9 -0
  415. package/tests/unit/src/components/SearchFilter/SearchFilter/SearchFilter.test.js +26 -7
  416. package/tests/unit/src/components/SearchFilter/SearchFilter/__snapshots__/SearchFilter.test.js.snap +4 -0
  417. package/tests/unit/src/components/SearchFilter/components/__snapshots__/Checkbox.test.js.snap +2 -0
  418. package/tests/unit/src/components/SearchFilter/components/__snapshots__/Select.test.js.snap +4 -0
  419. package/tests/unit/src/components/__snapshots__/index.test.js.snap +12 -0
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["SearchContent","entity","searchInputAlignment","searchInputWrapperMobile","searchInputWrapperDesktop","collapsible","isMobile","placeholder","collapsed","setCollapsed","searchTerm","setSearchTerm","router","capitalize","s","charAt","toUpperCase","slice","split","a","b","entityName","rawQueryStringified","JSON","stringify","size","query","bool","should","match","docType","minimum_should_match","gql","variables","offset","limit","loading","error","data","handleClick","e","url","preventDefault","push","handleKeyPress","key","target","value","renderResults","searchPublishedContent","results","map","name","includes","searchResultsMessage","propTypes","PropTypes","string","isRequired","defaultProps"],"sources":["../../../src/components/SearchContent/index.js"],"sourcesContent":["import React, { useState } from 'react';\nimport PropTypes from 'prop-types';\nimport { gql, useQuery } from '@apollo/client';\nimport { useRouter } from 'next/router';\nimport { getPublishedContent } from '../../application/query';\nimport BlazeLink from '../BlazeLink';\n\nconst SearchContent = ({\n entity,\n searchInputAlignment,\n searchInputWrapperMobile,\n searchInputWrapperDesktop,\n collapsible,\n isMobile,\n placeholder\n}) => {\n const [collapsed, setCollapsed] = useState(collapsible);\n const [searchTerm, setSearchTerm] = useState(null);\n const router = useRouter();\n\n const capitalize = s => {\n if (typeof s !== 'string') return '';\n return s.charAt(0).toUpperCase() + s.slice(1);\n };\n\n const [a, b] = entity.split('_');\n\n const entityName = capitalize(a) + capitalize(b);\n\n const rawQueryStringified = JSON.stringify({\n size: 0,\n query: {\n bool: {\n should: [\n {\n match: {\n docType: entity\n }\n }\n ],\n minimum_should_match: 1\n }\n }\n });\n\n const query = gql`\n ${getPublishedContent(entityName)}\n `;\n\n const { loading, error, data } = useQuery(query, {\n variables: { rawQueryStringified, offset: 0, limit: 5 }\n });\n\n if (loading) return null;\n if (error) return null;\n\n const handleClick = (e, url) => {\n e.preventDefault();\n router.push(url);\n };\n\n const handleKeyPress = e => {\n if (e.key === 'Enter' && e.target.value !== '') {\n router.push(`/search?search_term=${e.target.value}`);\n }\n };\n\n const renderResults = () => {\n // eslint-disable-next-line no-undef\n const { results } = data?.searchPublishedContent;\n\n if (results && searchTerm && searchTerm !== '') {\n return results.map(({ name, url }) => {\n if (name.includes(searchTerm)) {\n return (\n <BlazeLink href={url} onClick={e => handleClick(e, url)}>\n {name}\n </BlazeLink>\n );\n }\n\n return null;\n });\n }\n\n return [];\n };\n\n const searchResultsMessage = searchTerm ? `Search results for: ${searchTerm}` : '';\n\n return collapsed ? (\n <div className={isMobile ? searchInputWrapperMobile : searchInputWrapperDesktop}>\n <div className=\"search-content--collapse__wrapper\">\n <label className=\"search-content--collapse__label\">\n <span className=\"search-content--collapse__icon_wrapper\">\n <svg className=\"search-content--collapse__icon\" viewBox=\"0 0 20 20\">\n <path\n fillRule=\"evenodd\"\n d=\"M8 4a4 4 0 100 8 4 4 0 000-8zM2 8a6 6 0 1110.89 3.476l4.817 4.817a1 1 0 01-1.414 1.414l-4.816-4.816A6 6 0 012 8z\"\n clipRule=\"evenodd\"\n />\n </svg>\n </span>\n <input\n onFocus={() => setCollapsed(false)}\n onChange={e => setSearchTerm(e.target.value)}\n type=\"text\"\n name=\"search\"\n value=\"\"\n className=\"search-content--collapse__input\"\n />\n </label>\n </div>\n </div>\n ) : (\n <>\n <div className={`${isMobile ? searchInputWrapperMobile : searchInputWrapperDesktop}`}>\n <div className=\"search-content--expanded__wrapper\">\n <label className=\"search-content--expanded__label\">\n <span className=\"search-content--expanded__icon_wrapper\">\n <svg className=\"search-content--expanded__icon\" viewBox=\"0 0 20 20\">\n <path\n fillRule=\"evenodd\"\n d=\"M8 4a4 4 0 100 8 4 4 0 000-8zM2 8a6 6 0 1110.89 3.476l4.817 4.817a1 1 0 01-1.414 1.414l-4.816-4.816A6 6 0 012 8z\"\n clipRule=\"evenodd\"\n />\n </svg>\n </span>\n <input\n type=\"text\"\n name=\"search\"\n onChange={e => setSearchTerm(e.target.value)}\n onKeyPress={handleKeyPress}\n className=\"search-content--expanded__input\"\n placeholder={placeholder}\n onBlur={() => {\n if (!collapsible) return;\n if (!searchTerm || searchTerm === '') setCollapsed(true);\n }}\n />\n </label>\n </div>\n {data &&\n searchResultsMessage !== '' && (\n <div className=\"search-content--results__wrapper\">\n <div className=\"search-content--results__wrapper--message\">\n <div className=\"text-sm pt-2\">{searchResultsMessage}</div>\n\n <div className=\"search-content--results__message\">\n <div className=\"search-content--results__content\">{renderResults()}</div>\n </div>\n </div>\n </div>\n )}\n </div>\n </>\n );\n};\n\nSearchContent.propTypes = {\n searchInputAlignment: PropTypes.string,\n searchInputWrapperMobile: PropTypes.string,\n searchInputWrapperDesktop: PropTypes.string,\n placeholder: PropTypes.string,\n isMobile: PropTypes.bool,\n collapsible: PropTypes.bool,\n entity: PropTypes.string.isRequired\n};\n\nSearchContent.defaultProps = {\n searchInputAlignment: '',\n searchInputWrapperMobile: '',\n searchInputWrapperDesktop: '',\n placeholder: '',\n isMobile: false,\n collapsible: false\n};\n\nexport default SearchContent;\n"],"mappings":"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"}
1
+ {"version":3,"file":"index.js","names":["SearchContent"],"sources":["../../../src/components/SearchContent/index.js"],"sourcesContent":["import SearchContent from './SearchContent';\n\nexport default SearchContent;\n"],"mappings":";;;;;;;;;;;AAAA;;eAEeA,yB"}
@@ -1 +1 @@
1
- {"version":3,"file":"CloseMobileForm.js","names":["CloseMobileForm","handleClose","MOBILE_REFINEMENT_TITLE","propTypes","PropTypes","func","isRequired"],"sources":["../../../../src/components/SearchFilter/SearchFilter/CloseMobileForm.js"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport { MdClose } from 'react-icons/md';\nimport { MOBILE_REFINEMENT_TITLE } from '../constants';\n\nconst CloseMobileForm = ({ handleClose }) => (\n <div className=\"filter__header filter__header--mobile\">\n <p>{MOBILE_REFINEMENT_TITLE}</p>\n\n <i role=\"button\" onClick={handleClose}>\n <MdClose />\n </i>\n </div>\n);\n\nCloseMobileForm.propTypes = {\n handleClose: PropTypes.func.isRequired\n};\n\nexport default CloseMobileForm;\n"],"mappings":";;;;;;;;;;;AAAA;;AACA;;AACA;;AACA;;AAEA,IAAMA,eAAe,GAAG,SAAlBA,eAAkB;EAAA,IAAGC,WAAH,QAAGA,WAAH;EAAA,oBACtB;IAAK,SAAS,EAAC;EAAf,gBACE,2CAAIC,kCAAJ,CADF,eAGE;IAAG,IAAI,EAAC,QAAR;IAAiB,OAAO,EAAED;EAA1B,gBACE,gCAAC,WAAD,OADF,CAHF,CADsB;AAAA,CAAxB;;AAUAD,eAAe,CAACG,SAAhB,GAA4B;EAC1BF,WAAW,EAAEG,sBAAUC,IAAV,CAAeC;AADF,CAA5B;eAIeN,e"}
1
+ {"version":3,"file":"CloseMobileForm.js","names":["CloseMobileForm","handleClose","MOBILE_REFINEMENT_TITLE","propTypes","PropTypes","func","isRequired"],"sources":["../../../../src/components/SearchFilter/SearchFilter/CloseMobileForm.js"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport { MdClose } from 'react-icons/md';\nimport { MOBILE_REFINEMENT_TITLE } from '../constants';\n\nconst CloseMobileForm = ({ handleClose }) => (\n <div className=\"filter__header filter__header--mobile\">\n <p>{MOBILE_REFINEMENT_TITLE}</p>\n\n <i role=\"button\" onClick={handleClose}>\n <MdClose />\n </i>\n </div>\n);\n\nCloseMobileForm.propTypes = {\n handleClose: PropTypes.func.isRequired\n};\n\nexport default CloseMobileForm;\n"],"mappings":";;;;;;;;;;;AAAA;;AACA;;AACA;;AACA;;AAEA,IAAMA,eAAe,GAAG,SAAlBA,eAAkB;EAAA,IAAGC,WAAH,QAAGA,WAAH;EAAA,oBACtB;IAAK,SAAS,EAAC;EAAf,gBACE,2CAAIC,kCAAJ,CADF,eAGE;IAAG,IAAI,EAAC,QAAR;IAAiB,OAAO,EAAED;EAA1B,gBACE,gCAAC,WAAD,OADF,CAHF,CADsB;AAAA,CAAxB;;AAUAD,eAAe,CAACG,SAAhB,GAA4B;EAC1BF,WAAW,EAAEG,qBAAA,CAAUC,IAAV,CAAeC;AADF,CAA5B;eAIeN,e"}
@@ -72,8 +72,6 @@ var FiltersList = function FiltersList(_ref) {
72
72
  var isDataAvailable = !!data && Object.keys(data).length;
73
73
  var dataAggregations = isDataAvailable ? data : null;
74
74
  var areAggregationsAvailable = isDataAvailable && !!dataAggregations;
75
- var results = areAggregationsAvailable && dataAggregations[propsToDisplay[0]];
76
- var shouldDisplayFilter = results && results.buckets && results.buckets.length;
77
75
 
78
76
  switch (type) {
79
77
  case _constants.TEXT_SEARCH:
@@ -89,7 +87,7 @@ var FiltersList = function FiltersList(_ref) {
89
87
  })));
90
88
 
91
89
  case _constants.CHECKBOX:
92
- return !!shouldDisplayFilter && /*#__PURE__*/_react["default"].createElement("div", {
90
+ return /*#__PURE__*/_react["default"].createElement("div", {
93
91
  key: dynamicKey,
94
92
  className: "filter__section filter__section--search-refine filter__section--checkboxes"
95
93
  }, /*#__PURE__*/_react["default"].createElement(_components.Checkbox, (0, _extends2["default"])({}, otherProps, {
@@ -104,7 +102,7 @@ var FiltersList = function FiltersList(_ref) {
104
102
  })));
105
103
 
106
104
  case _constants.SELECT:
107
- return !!shouldDisplayFilter && /*#__PURE__*/_react["default"].createElement("div", {
105
+ return /*#__PURE__*/_react["default"].createElement("div", {
108
106
  key: dynamicKey,
109
107
  className: "filter__section filter__section--search-refine filter__section--selects"
110
108
  }, /*#__PURE__*/_react["default"].createElement(_components.SelectFilter, (0, _extends2["default"])({}, otherProps, {
@@ -1 +1 @@
1
- {"version":3,"file":"FiltersList.js","names":["FiltersList","data","filters","hasUrl","entity","filterValues","updateFilterValues","shouldSearch","MainContext","itemId","map","index","type","label","propsToDisplay","elementTitle","otherProps","length","dynamicKey","join","isDataAvailable","Object","keys","dataAggregations","areAggregationsAvailable","results","shouldDisplayFilter","buckets","TEXT_SEARCH","SEARCH_TERM","CHECKBOX","SELECT","RANGE","propTypes","PropTypes","bool","isRequired","string","object","func","array","defaultProps"],"sources":["../../../../src/components/SearchFilter/SearchFilter/FiltersList.js"],"sourcesContent":["import React, { useContext } from 'react';\nimport PropTypes from 'prop-types';\nimport { MainContext } from '@blaze-cms/nextjs-components';\nimport { TextSearch, Checkbox, SelectFilter, Range } from '../components';\nimport { CHECKBOX, SELECT, TEXT_SEARCH, RANGE, SEARCH_TERM } from '../constants';\n\nconst FiltersList = ({\n data,\n filters,\n hasUrl,\n entity,\n filterValues,\n updateFilterValues,\n shouldSearch\n}) => {\n const { itemId } = useContext(MainContext);\n\n return filters.map(({ type, label, propsToDisplay, elementTitle, ...otherProps }, index) => {\n if (!propsToDisplay && !propsToDisplay.length) return null;\n\n const dynamicKey = [itemId, index].join('-');\n const isDataAvailable = !!data && Object.keys(data).length;\n const dataAggregations = isDataAvailable ? data : null;\n const areAggregationsAvailable = isDataAvailable && !!dataAggregations;\n const results = areAggregationsAvailable && dataAggregations[propsToDisplay[0]];\n const shouldDisplayFilter = results && results.buckets && results.buckets.length;\n\n switch (type) {\n case TEXT_SEARCH:\n return (\n <div\n key={dynamicKey}\n className=\"filter__section filter__section--search-refine filter__section--search\">\n <TextSearch\n {...otherProps}\n label={label}\n elementTitle={elementTitle}\n searchValue={filterValues[SEARCH_TERM]}\n updateFilterValues={updateFilterValues}\n filterValues={filterValues}\n />\n </div>\n );\n case CHECKBOX:\n return (\n !!shouldDisplayFilter && (\n <div\n key={dynamicKey}\n className=\"filter__section filter__section--search-refine filter__section--checkboxes\">\n <Checkbox\n {...otherProps}\n data={data}\n prop={propsToDisplay[0]}\n label={label}\n elementTitle={elementTitle}\n hasUrl={hasUrl}\n filterValues={filterValues}\n updateFilterValues={updateFilterValues}\n shouldSearch={shouldSearch}\n />\n </div>\n )\n );\n case SELECT:\n return (\n !!shouldDisplayFilter && (\n <div\n key={dynamicKey}\n className=\"filter__section filter__section--search-refine filter__section--selects\">\n <SelectFilter\n {...otherProps}\n data={data}\n prop={propsToDisplay[0]}\n label={label}\n elementTitle={elementTitle}\n hasUrl={hasUrl}\n filterValues={filterValues}\n updateFilterValues={updateFilterValues}\n shouldSearch={shouldSearch}\n />\n </div>\n )\n );\n case RANGE:\n return (\n !!areAggregationsAvailable && (\n <div key={dynamicKey} className=\"range-slider__wrapper\">\n <Range\n {...otherProps}\n dataAggregations={dataAggregations}\n propsToDisplay={propsToDisplay}\n label={label}\n elementTitle={elementTitle}\n entity={entity}\n filterValues={filterValues}\n updateFilterValues={updateFilterValues}\n shouldSearch={shouldSearch}\n />\n </div>\n )\n );\n default:\n return null;\n }\n });\n};\n\nFiltersList.propTypes = {\n hasUrl: PropTypes.bool.isRequired,\n entity: PropTypes.string.isRequired,\n filterValues: PropTypes.object.isRequired,\n updateFilterValues: PropTypes.func.isRequired,\n data: PropTypes.object,\n filters: PropTypes.array,\n shouldSearch: PropTypes.bool\n};\n\nFiltersList.defaultProps = {\n shouldSearch: false,\n data: {},\n filters: []\n};\n\nexport default FiltersList;\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;;AACA;;AACA;;AACA;;AACA;;;;;;;;AAEA,IAAMA,WAAW,GAAG,SAAdA,WAAc,OAQd;EAAA,IAPJC,IAOI,QAPJA,IAOI;EAAA,IANJC,OAMI,QANJA,OAMI;EAAA,IALJC,MAKI,QALJA,MAKI;EAAA,IAJJC,MAII,QAJJA,MAII;EAAA,IAHJC,YAGI,QAHJA,YAGI;EAAA,IAFJC,kBAEI,QAFJA,kBAEI;EAAA,IADJC,YACI,QADJA,YACI;;EACJ,kBAAmB,uBAAWC,6BAAX,CAAnB;EAAA,IAAQC,MAAR,eAAQA,MAAR;;EAEA,OAAOP,OAAO,CAACQ,GAAR,CAAY,iBAA+DC,KAA/D,EAAyE;IAAA,IAAtEC,IAAsE,SAAtEA,IAAsE;IAAA,IAAhEC,KAAgE,SAAhEA,KAAgE;IAAA,IAAzDC,cAAyD,SAAzDA,cAAyD;IAAA,IAAzCC,YAAyC,SAAzCA,YAAyC;IAAA,IAAxBC,UAAwB;IAC1F,IAAI,CAACF,cAAD,IAAmB,CAACA,cAAc,CAACG,MAAvC,EAA+C,OAAO,IAAP;IAE/C,IAAMC,UAAU,GAAG,CAACT,MAAD,EAASE,KAAT,EAAgBQ,IAAhB,CAAqB,GAArB,CAAnB;IACA,IAAMC,eAAe,GAAG,CAAC,CAACnB,IAAF,IAAUoB,MAAM,CAACC,IAAP,CAAYrB,IAAZ,EAAkBgB,MAApD;IACA,IAAMM,gBAAgB,GAAGH,eAAe,GAAGnB,IAAH,GAAU,IAAlD;IACA,IAAMuB,wBAAwB,GAAGJ,eAAe,IAAI,CAAC,CAACG,gBAAtD;IACA,IAAME,OAAO,GAAGD,wBAAwB,IAAID,gBAAgB,CAACT,cAAc,CAAC,CAAD,CAAf,CAA5D;IACA,IAAMY,mBAAmB,GAAGD,OAAO,IAAIA,OAAO,CAACE,OAAnB,IAA8BF,OAAO,CAACE,OAAR,CAAgBV,MAA1E;;IAEA,QAAQL,IAAR;MACE,KAAKgB,sBAAL;QACE,oBACE;UACE,GAAG,EAAEV,UADP;UAEE,SAAS,EAAC;QAFZ,gBAGE,gCAAC,sBAAD,gCACMF,UADN;UAEE,KAAK,EAAEH,KAFT;UAGE,YAAY,EAAEE,YAHhB;UAIE,WAAW,EAAEV,YAAY,CAACwB,sBAAD,CAJ3B;UAKE,kBAAkB,EAAEvB,kBALtB;UAME,YAAY,EAAED;QANhB,GAHF,CADF;;MAcF,KAAKyB,mBAAL;QACE,OACE,CAAC,CAACJ,mBAAF,iBACE;UACE,GAAG,EAAER,UADP;UAEE,SAAS,EAAC;QAFZ,gBAGE,gCAAC,oBAAD,gCACMF,UADN;UAEE,IAAI,EAAEf,IAFR;UAGE,IAAI,EAAEa,cAAc,CAAC,CAAD,CAHtB;UAIE,KAAK,EAAED,KAJT;UAKE,YAAY,EAAEE,YALhB;UAME,MAAM,EAAEZ,MANV;UAOE,YAAY,EAAEE,YAPhB;UAQE,kBAAkB,EAAEC,kBARtB;UASE,YAAY,EAAEC;QAThB,GAHF,CAFJ;;MAmBF,KAAKwB,iBAAL;QACE,OACE,CAAC,CAACL,mBAAF,iBACE;UACE,GAAG,EAAER,UADP;UAEE,SAAS,EAAC;QAFZ,gBAGE,gCAAC,wBAAD,gCACMF,UADN;UAEE,IAAI,EAAEf,IAFR;UAGE,IAAI,EAAEa,cAAc,CAAC,CAAD,CAHtB;UAIE,KAAK,EAAED,KAJT;UAKE,YAAY,EAAEE,YALhB;UAME,MAAM,EAAEZ,MANV;UAOE,YAAY,EAAEE,YAPhB;UAQE,kBAAkB,EAAEC,kBARtB;UASE,YAAY,EAAEC;QAThB,GAHF,CAFJ;;MAmBF,KAAKyB,gBAAL;QACE,OACE,CAAC,CAACR,wBAAF,iBACE;UAAK,GAAG,EAAEN,UAAV;UAAsB,SAAS,EAAC;QAAhC,gBACE,gCAAC,iBAAD,gCACMF,UADN;UAEE,gBAAgB,EAAEO,gBAFpB;UAGE,cAAc,EAAET,cAHlB;UAIE,KAAK,EAAED,KAJT;UAKE,YAAY,EAAEE,YALhB;UAME,MAAM,EAAEX,MANV;UAOE,YAAY,EAAEC,YAPhB;UAQE,kBAAkB,EAAEC,kBARtB;UASE,YAAY,EAAEC;QAThB,GADF,CAFJ;;MAiBF;QACE,OAAO,IAAP;IA3EJ;EA6ED,CAvFM,CAAP;AAwFD,CAnGD;;AAqGAP,WAAW,CAACiC,SAAZ,GAAwB;EACtB9B,MAAM,EAAE+B,sBAAUC,IAAV,CAAeC,UADD;EAEtBhC,MAAM,EAAE8B,sBAAUG,MAAV,CAAiBD,UAFH;EAGtB/B,YAAY,EAAE6B,sBAAUI,MAAV,CAAiBF,UAHT;EAItB9B,kBAAkB,EAAE4B,sBAAUK,IAAV,CAAeH,UAJb;EAKtBnC,IAAI,EAAEiC,sBAAUI,MALM;EAMtBpC,OAAO,EAAEgC,sBAAUM,KANG;EAOtBjC,YAAY,EAAE2B,sBAAUC;AAPF,CAAxB;AAUAnC,WAAW,CAACyC,YAAZ,GAA2B;EACzBlC,YAAY,EAAE,KADW;EAEzBN,IAAI,EAAE,EAFmB;EAGzBC,OAAO,EAAE;AAHgB,CAA3B;eAMeF,W"}
1
+ {"version":3,"file":"FiltersList.js","names":["FiltersList","data","filters","hasUrl","entity","filterValues","updateFilterValues","shouldSearch","useContext","MainContext","itemId","map","index","type","label","propsToDisplay","elementTitle","otherProps","length","dynamicKey","join","isDataAvailable","Object","keys","dataAggregations","areAggregationsAvailable","TEXT_SEARCH","SEARCH_TERM","CHECKBOX","SELECT","RANGE","propTypes","PropTypes","bool","isRequired","string","object","func","array","defaultProps"],"sources":["../../../../src/components/SearchFilter/SearchFilter/FiltersList.js"],"sourcesContent":["import React, { useContext } from 'react';\nimport PropTypes from 'prop-types';\nimport { MainContext } from '@blaze-cms/nextjs-components';\nimport { TextSearch, Checkbox, SelectFilter, Range } from '../components';\nimport { CHECKBOX, SELECT, TEXT_SEARCH, RANGE, SEARCH_TERM } from '../constants';\n\nconst FiltersList = ({\n data,\n filters,\n hasUrl,\n entity,\n filterValues,\n updateFilterValues,\n shouldSearch\n}) => {\n const { itemId } = useContext(MainContext);\n\n return filters.map(({ type, label, propsToDisplay, elementTitle, ...otherProps }, index) => {\n if (!propsToDisplay && !propsToDisplay.length) return null;\n const dynamicKey = [itemId, index].join('-');\n const isDataAvailable = !!data && Object.keys(data).length;\n const dataAggregations = isDataAvailable ? data : null;\n const areAggregationsAvailable = isDataAvailable && !!dataAggregations;\n\n switch (type) {\n case TEXT_SEARCH:\n return (\n <div\n key={dynamicKey}\n className=\"filter__section filter__section--search-refine filter__section--search\">\n <TextSearch\n {...otherProps}\n label={label}\n elementTitle={elementTitle}\n searchValue={filterValues[SEARCH_TERM]}\n updateFilterValues={updateFilterValues}\n filterValues={filterValues}\n />\n </div>\n );\n case CHECKBOX:\n return (\n <div\n key={dynamicKey}\n className=\"filter__section filter__section--search-refine filter__section--checkboxes\">\n <Checkbox\n {...otherProps}\n data={data}\n prop={propsToDisplay[0]}\n label={label}\n elementTitle={elementTitle}\n hasUrl={hasUrl}\n filterValues={filterValues}\n updateFilterValues={updateFilterValues}\n shouldSearch={shouldSearch}\n />\n </div>\n );\n case SELECT:\n return (\n <div\n key={dynamicKey}\n className=\"filter__section filter__section--search-refine filter__section--selects\">\n <SelectFilter\n {...otherProps}\n data={data}\n prop={propsToDisplay[0]}\n label={label}\n elementTitle={elementTitle}\n hasUrl={hasUrl}\n filterValues={filterValues}\n updateFilterValues={updateFilterValues}\n shouldSearch={shouldSearch}\n />\n </div>\n );\n case RANGE:\n return (\n !!areAggregationsAvailable && (\n <div key={dynamicKey} className=\"range-slider__wrapper\">\n <Range\n {...otherProps}\n dataAggregations={dataAggregations}\n propsToDisplay={propsToDisplay}\n label={label}\n elementTitle={elementTitle}\n entity={entity}\n filterValues={filterValues}\n updateFilterValues={updateFilterValues}\n shouldSearch={shouldSearch}\n />\n </div>\n )\n );\n default:\n return null;\n }\n });\n};\n\nFiltersList.propTypes = {\n hasUrl: PropTypes.bool.isRequired,\n entity: PropTypes.string.isRequired,\n filterValues: PropTypes.object.isRequired,\n updateFilterValues: PropTypes.func.isRequired,\n data: PropTypes.object,\n filters: PropTypes.array,\n shouldSearch: PropTypes.bool\n};\n\nFiltersList.defaultProps = {\n shouldSearch: false,\n data: {},\n filters: []\n};\n\nexport default FiltersList;\n"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"MobileFormToolbar.js","names":["MobileFormToolbar","formId","handleReset","RESET","SEARCH","propTypes","PropTypes","string","isRequired","func"],"sources":["../../../../src/components/SearchFilter/SearchFilter/MobileFormToolbar.js"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport { RESET, SEARCH } from '../constants';\n\nconst MobileFormToolbar = ({ formId, handleReset }) => (\n <div className=\"filter__refine filter__refine--mobile-open\">\n <div className=\"reset\" data-testid=\"reset-button\" role=\"button\" onClick={handleReset}>\n {RESET}\n </div>\n\n <button className=\"search\" type=\"submit\" form={formId}>\n {SEARCH}\n </button>\n </div>\n);\n\nMobileFormToolbar.propTypes = {\n formId: PropTypes.string.isRequired,\n handleReset: PropTypes.func.isRequired\n};\n\nexport default MobileFormToolbar;\n"],"mappings":";;;;;;;;;;;AAAA;;AACA;;AACA;;AAEA,IAAMA,iBAAiB,GAAG,SAApBA,iBAAoB;EAAA,IAAGC,MAAH,QAAGA,MAAH;EAAA,IAAWC,WAAX,QAAWA,WAAX;EAAA,oBACxB;IAAK,SAAS,EAAC;EAAf,gBACE;IAAK,SAAS,EAAC,OAAf;IAAuB,eAAY,cAAnC;IAAkD,IAAI,EAAC,QAAvD;IAAgE,OAAO,EAAEA;EAAzE,GACGC,gBADH,CADF,eAKE;IAAQ,SAAS,EAAC,QAAlB;IAA2B,IAAI,EAAC,QAAhC;IAAyC,IAAI,EAAEF;EAA/C,GACGG,iBADH,CALF,CADwB;AAAA,CAA1B;;AAYAJ,iBAAiB,CAACK,SAAlB,GAA8B;EAC5BJ,MAAM,EAAEK,sBAAUC,MAAV,CAAiBC,UADG;EAE5BN,WAAW,EAAEI,sBAAUG,IAAV,CAAeD;AAFA,CAA9B;eAKeR,iB"}
1
+ {"version":3,"file":"MobileFormToolbar.js","names":["MobileFormToolbar","formId","handleReset","RESET","SEARCH","propTypes","PropTypes","string","isRequired","func"],"sources":["../../../../src/components/SearchFilter/SearchFilter/MobileFormToolbar.js"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport { RESET, SEARCH } from '../constants';\n\nconst MobileFormToolbar = ({ formId, handleReset }) => (\n <div className=\"filter__refine filter__refine--mobile-open\">\n <div className=\"reset\" data-testid=\"reset-button\" role=\"button\" onClick={handleReset}>\n {RESET}\n </div>\n\n <button className=\"search\" type=\"submit\" form={formId}>\n {SEARCH}\n </button>\n </div>\n);\n\nMobileFormToolbar.propTypes = {\n formId: PropTypes.string.isRequired,\n handleReset: PropTypes.func.isRequired\n};\n\nexport default MobileFormToolbar;\n"],"mappings":";;;;;;;;;;;AAAA;;AACA;;AACA;;AAEA,IAAMA,iBAAiB,GAAG,SAApBA,iBAAoB;EAAA,IAAGC,MAAH,QAAGA,MAAH;EAAA,IAAWC,WAAX,QAAWA,WAAX;EAAA,oBACxB;IAAK,SAAS,EAAC;EAAf,gBACE;IAAK,SAAS,EAAC,OAAf;IAAuB,eAAY,cAAnC;IAAkD,IAAI,EAAC,QAAvD;IAAgE,OAAO,EAAEA;EAAzE,GACGC,gBADH,CADF,eAKE;IAAQ,SAAS,EAAC,QAAlB;IAA2B,IAAI,EAAC,QAAhC;IAAyC,IAAI,EAAEF;EAA/C,GACGG,iBADH,CALF,CADwB;AAAA,CAA1B;;AAYAJ,iBAAiB,CAACK,SAAlB,GAA8B;EAC5BJ,MAAM,EAAEK,qBAAA,CAAUC,MAAV,CAAiBC,UADG;EAE5BN,WAAW,EAAEI,qBAAA,CAAUG,IAAV,CAAeD;AAFA,CAA9B;eAKeR,iB"}
@@ -1 +1 @@
1
- {"version":3,"file":"ResetDesktopForm.js","names":["ResetDesktopForm","handleReset","RESET","propTypes","PropTypes","func","isRequired"],"sources":["../../../../src/components/SearchFilter/SearchFilter/ResetDesktopForm.js"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport { FaRedoAlt } from 'react-icons/fa';\nimport { RESET } from '../constants';\n\nconst ResetDesktopForm = ({ handleReset }) => (\n <div className=\"filter__reset\">\n <button\n type=\"button\"\n className=\"icon-button icon-button--reset\"\n title=\"reset--button\"\n data-testid=\"reset-icon\"\n onClick={handleReset}>\n <i>\n <FaRedoAlt />\n </i>\n </button>\n\n <div role=\"button\" onClick={handleReset} data-testid=\"reset-button\">\n {RESET}\n </div>\n </div>\n);\n\nResetDesktopForm.propTypes = {\n handleReset: PropTypes.func.isRequired\n};\n\nexport default ResetDesktopForm;\n"],"mappings":";;;;;;;;;;;AAAA;;AACA;;AACA;;AACA;;AAEA,IAAMA,gBAAgB,GAAG,SAAnBA,gBAAmB;EAAA,IAAGC,WAAH,QAAGA,WAAH;EAAA,oBACvB;IAAK,SAAS,EAAC;EAAf,gBACE;IACE,IAAI,EAAC,QADP;IAEE,SAAS,EAAC,gCAFZ;IAGE,KAAK,EAAC,eAHR;IAIE,eAAY,YAJd;IAKE,OAAO,EAAEA;EALX,gBAME,wDACE,gCAAC,aAAD,OADF,CANF,CADF,eAYE;IAAK,IAAI,EAAC,QAAV;IAAmB,OAAO,EAAEA,WAA5B;IAAyC,eAAY;EAArD,GACGC,gBADH,CAZF,CADuB;AAAA,CAAzB;;AAmBAF,gBAAgB,CAACG,SAAjB,GAA6B;EAC3BF,WAAW,EAAEG,sBAAUC,IAAV,CAAeC;AADD,CAA7B;eAIeN,gB"}
1
+ {"version":3,"file":"ResetDesktopForm.js","names":["ResetDesktopForm","handleReset","RESET","propTypes","PropTypes","func","isRequired"],"sources":["../../../../src/components/SearchFilter/SearchFilter/ResetDesktopForm.js"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport { FaRedoAlt } from 'react-icons/fa';\nimport { RESET } from '../constants';\n\nconst ResetDesktopForm = ({ handleReset }) => (\n <div className=\"filter__reset\">\n <button\n type=\"button\"\n className=\"icon-button icon-button--reset\"\n title=\"reset--button\"\n data-testid=\"reset-icon\"\n onClick={handleReset}>\n <i>\n <FaRedoAlt />\n </i>\n </button>\n\n <div role=\"button\" onClick={handleReset} data-testid=\"reset-button\">\n {RESET}\n </div>\n </div>\n);\n\nResetDesktopForm.propTypes = {\n handleReset: PropTypes.func.isRequired\n};\n\nexport default ResetDesktopForm;\n"],"mappings":";;;;;;;;;;;AAAA;;AACA;;AACA;;AACA;;AAEA,IAAMA,gBAAgB,GAAG,SAAnBA,gBAAmB;EAAA,IAAGC,WAAH,QAAGA,WAAH;EAAA,oBACvB;IAAK,SAAS,EAAC;EAAf,gBACE;IACE,IAAI,EAAC,QADP;IAEE,SAAS,EAAC,gCAFZ;IAGE,KAAK,EAAC,eAHR;IAIE,eAAY,YAJd;IAKE,OAAO,EAAEA;EALX,gBAME,wDACE,gCAAC,aAAD,OADF,CANF,CADF,eAYE;IAAK,IAAI,EAAC,QAAV;IAAmB,OAAO,EAAEA,WAA5B;IAAyC,eAAY;EAArD,GACGC,gBADH,CAZF,CADuB;AAAA,CAAzB;;AAmBAF,gBAAgB,CAACG,SAAjB,GAA6B;EAC3BF,WAAW,EAAEG,qBAAA,CAAUC,IAAV,CAAeC;AADD,CAA7B;eAIeN,gB"}
@@ -1,33 +1,19 @@
1
1
  "use strict";
2
2
 
3
- require("core-js/modules/es.object.keys.js");
4
-
5
- require("core-js/modules/es.symbol.js");
6
-
7
- require("core-js/modules/es.array.filter.js");
3
+ require("core-js/modules/es.array.iterator.js");
8
4
 
9
5
  require("core-js/modules/es.object.to-string.js");
10
6
 
11
- require("core-js/modules/es.object.get-own-property-descriptor.js");
12
-
13
- require("core-js/modules/es.array.for-each.js");
14
-
15
- require("core-js/modules/web.dom-collections.for-each.js");
16
-
17
- require("core-js/modules/es.object.get-own-property-descriptors.js");
18
-
19
- require("core-js/modules/es.object.define-properties.js");
20
-
21
- require("core-js/modules/es.object.define-property.js");
22
-
23
- require("core-js/modules/es.array.iterator.js");
24
-
25
7
  require("core-js/modules/es.string.iterator.js");
26
8
 
27
9
  require("core-js/modules/es.weak-map.js");
28
10
 
29
11
  require("core-js/modules/web.dom-collections.iterator.js");
30
12
 
13
+ require("core-js/modules/es.object.define-property.js");
14
+
15
+ require("core-js/modules/es.object.get-own-property-descriptor.js");
16
+
31
17
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
32
18
 
33
19
  var _typeof = require("@babel/runtime/helpers/typeof");
@@ -37,14 +23,12 @@ Object.defineProperty(exports, "__esModule", {
37
23
  });
38
24
  exports["default"] = void 0;
39
25
 
26
+ var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
27
+
40
28
  require("core-js/modules/es.function.name.js");
41
29
 
42
30
  require("core-js/modules/es.array.slice.js");
43
31
 
44
- var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
45
-
46
- var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
47
-
48
32
  var _react = _interopRequireWildcard(require("react"));
49
33
 
50
34
  var _propTypes = _interopRequireDefault(require("prop-types"));
@@ -69,37 +53,6 @@ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "functio
69
53
 
70
54
  function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
71
55
 
72
- 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; }
73
-
74
- 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) { (0, _defineProperty2["default"])(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; }
75
-
76
- var reducer = function reducer(state, action) {
77
- var newValues = action.newValues,
78
- type = action.type,
79
- _action$shouldSearch = action.shouldSearch,
80
- shouldSearch = _action$shouldSearch === void 0 ? true : _action$shouldSearch;
81
-
82
- switch (type) {
83
- case 'update':
84
- return _objectSpread(_objectSpread(_objectSpread({}, state), newValues), {}, {
85
- shouldSearch: shouldSearch
86
- });
87
-
88
- case 'resetSearch':
89
- return _objectSpread(_objectSpread({}, state), {}, {
90
- shouldSearch: false
91
- });
92
-
93
- case 'reset':
94
- return _objectSpread(_objectSpread({}, newValues), {}, {
95
- shouldSearch: shouldSearch
96
- });
97
-
98
- default:
99
- throw new Error();
100
- }
101
- };
102
-
103
56
  var SearchFilter = function SearchFilter(_ref) {
104
57
  var searchFilterRef = _ref.searchFilterRef,
105
58
  data = _ref.data,
@@ -111,9 +64,10 @@ var SearchFilter = function SearchFilter(_ref) {
111
64
  isCollapsedOnResponsive = _ref.isCollapsedOnResponsive,
112
65
  displaySearchFilter = _ref.displaySearchFilter,
113
66
  setDisplaySearchFilter = _ref.setDisplaySearchFilter,
114
- initialFilterValues = _ref.initialFilterValues,
115
67
  groupAfterDesktop = _ref.groupAfterDesktop,
116
- groupAfterMobile = _ref.groupAfterMobile;
68
+ groupAfterMobile = _ref.groupAfterMobile,
69
+ filterValues = _ref.filterValues,
70
+ setAppliedFilters = _ref.setAppliedFilters;
117
71
 
118
72
  var _useState = (0, _react.useState)(true),
119
73
  _useState2 = (0, _slicedToArray2["default"])(_useState, 2),
@@ -125,23 +79,25 @@ var SearchFilter = function SearchFilter(_ref) {
125
79
  moreFiltersDesktopCollapsed = _useState4[0],
126
80
  setMoreFiltersDesktopCollapsed = _useState4[1];
127
81
 
128
- var _useReducer = (0, _react.useReducer)(reducer, initialFilterValues),
129
- _useReducer2 = (0, _slicedToArray2["default"])(_useReducer, 2),
130
- filterValues = _useReducer2[0],
131
- dispatch = _useReducer2[1];
132
-
133
- var handleSubmit = (0, _lodash["default"])(function (newValues) {
82
+ var doSubmit = function doSubmit() {
83
+ var newValues = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : filterValues;
134
84
  var newQuery = (0, _helpers.buildQuery)(newValues, filters);
135
85
  handleSearch(newQuery);
86
+ setMoreFiltersDesktopCollapsed(true);
87
+ setMoreFiltersMobileCollapsed(true);
88
+ };
89
+
90
+ var handleSubmit = (0, _lodash["default"])(function (newValues) {
91
+ doSubmit(newValues);
136
92
  }, 200);
137
93
  (0, _react.useEffect)(function () {
138
94
  if (filterValues.shouldSearch) {
139
95
  handleSubmit(filterValues);
140
- dispatch({
96
+ setAppliedFilters({
141
97
  type: 'resetSearch'
142
98
  });
143
99
  }
144
- }, [filterValues, handleSubmit]);
100
+ }, [filterValues, handleSubmit, setAppliedFilters]);
145
101
  var formClass = (0, _classnames["default"])('filter__form filter__form--initial', {
146
102
  'filter__form--mobile': isCollapsedOnResponsive && displaySearchFilter,
147
103
  'filter__form--collapsible': isCollapsedOnResponsive
@@ -157,14 +113,14 @@ var SearchFilter = function SearchFilter(_ref) {
157
113
 
158
114
  var handleReset = function handleReset() {
159
115
  var newValues = (0, _helpers.getInitialFilterValues)(data, filters, {});
160
- dispatch({
116
+ setAppliedFilters({
161
117
  newValues: newValues,
162
118
  type: 'reset'
163
119
  });
164
120
  };
165
121
 
166
122
  var updateFilterValues = function updateFilterValues(newValues, shouldSubmit) {
167
- dispatch({
123
+ setAppliedFilters({
168
124
  newValues: newValues,
169
125
  shouldSearch: shouldSubmit,
170
126
  type: 'update'
@@ -180,8 +136,7 @@ var SearchFilter = function SearchFilter(_ref) {
180
136
  id: formId,
181
137
  onSubmit: function onSubmit(e) {
182
138
  e.preventDefault();
183
- var newQuery = (0, _helpers.buildQuery)(filterValues, filters);
184
- handleSearch(newQuery);
139
+ doSubmit();
185
140
  }
186
141
  }, displaySearchFilter && /*#__PURE__*/_react["default"].createElement(_CloseMobileForm["default"], {
187
142
  handleClose: function handleClose() {
@@ -210,6 +165,7 @@ var SearchFilter = function SearchFilter(_ref) {
210
165
  filterValues: filterValues,
211
166
  updateFilterValues: updateFilterValues
212
167
  }), !!groupAfterMobile && /*#__PURE__*/_react["default"].createElement("button", {
168
+ "data-testId": "search-filter-mobile-toggler",
213
169
  className: moreFiltersMobileTogglerClass,
214
170
  type: "button",
215
171
  onClick: function onClick() {
@@ -228,6 +184,7 @@ var SearchFilter = function SearchFilter(_ref) {
228
184
  filterValues: filterValues,
229
185
  updateFilterValues: updateFilterValues
230
186
  }), !!groupAfterDesktop && /*#__PURE__*/_react["default"].createElement("button", {
187
+ "data-testId": "search-filter-desktop-toggler",
231
188
  className: moreFiltersDesktopTogglerClass,
232
189
  type: "button",
233
190
  onClick: function onClick() {
@@ -289,7 +246,8 @@ SearchFilter.propTypes = {
289
246
  isCollapsedOnResponsive: _propTypes["default"].bool.isRequired,
290
247
  groupAfterDesktop: _propTypes["default"].number.isRequired,
291
248
  groupAfterMobile: _propTypes["default"].number.isRequired,
292
- initialFilterValues: _propTypes["default"].object.isRequired
249
+ filterValues: _propTypes["default"].object.isRequired,
250
+ setAppliedFilters: _propTypes["default"].func.isRequired
293
251
  };
294
252
  var _default = SearchFilter;
295
253
  exports["default"] = _default;
@@ -1 +1 @@
1
- {"version":3,"file":"SearchFilter.js","names":["reducer","state","action","newValues","type","shouldSearch","Error","SearchFilter","searchFilterRef","data","filters","hasUrl","entity","handleSearch","name","isCollapsedOnResponsive","displaySearchFilter","setDisplaySearchFilter","initialFilterValues","groupAfterDesktop","groupAfterMobile","moreFiltersMobileCollapsed","setMoreFiltersMobileCollapsed","moreFiltersDesktopCollapsed","setMoreFiltersDesktopCollapsed","filterValues","dispatch","handleSubmit","newQuery","formClass","moreFiltersMobileWrapperClass","moreFiltersMobileTogglerClass","moreFiltersDesktopWrapperClass","moreFiltersDesktopTogglerClass","formId","handleReset","updateFilterValues","shouldSubmit","shouldGroup","e","preventDefault","slice","MORE_FILTERS_CLASSES","MOBILE_CONTENT","DESKTOP_CONTENT","DESKTOP_BUTTONS","SEARCH","MOBILE_BUTTONS","REFINE","propTypes","PropTypes","object","isRequired","array","bool","string","func","number"],"sources":["../../../../src/components/SearchFilter/SearchFilter/SearchFilter.js"],"sourcesContent":["import React, { useState, useEffect, useReducer } from 'react';\nimport PropTypes from 'prop-types';\nimport classnames from 'classnames';\nimport debounce from 'lodash.debounce';\nimport FiltersList from './FiltersList';\nimport {\n isDeviceDesktop,\n buildQuery,\n getInitialFilterValues,\n getResponsiveFilterClassnames\n} from '../helpers';\nimport CloseMobileForm from './CloseMobileForm';\nimport ResetDesktopForm from './ResetDesktopForm';\nimport MobileFormToolbar from './MobileFormToolbar';\nimport { SEARCH, REFINE, MORE_FILTERS_CLASSES } 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 SearchFilter = ({\n searchFilterRef,\n data,\n filters,\n hasUrl,\n entity,\n handleSearch,\n name,\n isCollapsedOnResponsive,\n displaySearchFilter,\n setDisplaySearchFilter,\n initialFilterValues,\n groupAfterDesktop,\n groupAfterMobile\n}) => {\n const [moreFiltersMobileCollapsed, setMoreFiltersMobileCollapsed] = useState(true);\n const [moreFiltersDesktopCollapsed, setMoreFiltersDesktopCollapsed] = useState(true);\n const [filterValues, dispatch] = useReducer(reducer, initialFilterValues);\n\n const handleSubmit = debounce(newValues => {\n const newQuery = buildQuery(newValues, filters);\n handleSearch(newQuery);\n }, 200);\n\n useEffect(\n () => {\n if (filterValues.shouldSearch) {\n handleSubmit(filterValues);\n dispatch({ type: 'resetSearch' });\n }\n },\n [filterValues, handleSubmit]\n );\n\n const formClass = classnames('filter__form filter__form--initial', {\n 'filter__form--mobile': isCollapsedOnResponsive && displaySearchFilter,\n 'filter__form--collapsible': isCollapsedOnResponsive\n });\n\n const {\n moreFiltersMobileWrapperClass,\n moreFiltersMobileTogglerClass,\n moreFiltersDesktopWrapperClass,\n moreFiltersDesktopTogglerClass\n } = getResponsiveFilterClassnames(moreFiltersDesktopCollapsed, moreFiltersMobileCollapsed);\n\n const formId = `filter-${name}-form`;\n\n const handleReset = () => {\n const newValues = getInitialFilterValues(data, filters, {});\n\n dispatch({ newValues, type: 'reset' });\n };\n\n const updateFilterValues = (newValues, shouldSubmit) => {\n dispatch({ newValues, shouldSearch: shouldSubmit, type: 'update' });\n };\n\n const shouldGroup = !!(groupAfterDesktop || groupAfterMobile);\n const shouldSearch = !hasUrl;\n\n return (\n <>\n <form\n ref={searchFilterRef}\n className={formClass}\n data-testid={formId}\n id={formId}\n onSubmit={e => {\n e.preventDefault();\n const newQuery = buildQuery(filterValues, filters);\n handleSearch(newQuery);\n }}>\n {displaySearchFilter && (\n <CloseMobileForm handleClose={() => setDisplaySearchFilter(false)} />\n )}\n\n <div className=\"filter filter--search-refine\">\n <ResetDesktopForm handleReset={handleReset} />\n\n <div className=\"filter__wrapper filter__wrapper--search-refine\">\n {!shouldGroup && (\n <FiltersList\n shouldSearch={shouldSearch}\n data={data}\n filters={filters}\n hasUrl={hasUrl}\n entity={entity}\n filterValues={filterValues}\n updateFilterValues={updateFilterValues}\n />\n )}\n\n {shouldGroup && (\n <>\n <FiltersList\n shouldSearch={shouldSearch}\n data={data}\n filters={filters.slice(0, groupAfterMobile)}\n hasUrl={hasUrl}\n entity={entity}\n filterValues={filterValues}\n updateFilterValues={updateFilterValues}\n />\n\n {!!groupAfterMobile && (\n <button\n className={moreFiltersMobileTogglerClass}\n type=\"button\"\n onClick={() => setMoreFiltersMobileCollapsed(!moreFiltersMobileCollapsed)}>\n Filters\n </button>\n )}\n\n <div className={moreFiltersMobileWrapperClass}>\n <div className={MORE_FILTERS_CLASSES.MOBILE_CONTENT}>\n <FiltersList\n shouldSearch={shouldSearch && isDeviceDesktop()}\n data={data}\n filters={filters.slice(\n groupAfterMobile,\n groupAfterDesktop ? groupAfterDesktop - 1 : 0\n )}\n hasUrl={hasUrl}\n entity={entity}\n filterValues={filterValues}\n updateFilterValues={updateFilterValues}\n />\n\n {!!groupAfterDesktop && (\n <button\n className={moreFiltersDesktopTogglerClass}\n type=\"button\"\n onClick={() =>\n setMoreFiltersDesktopCollapsed(!moreFiltersDesktopCollapsed)\n }>\n More filters\n </button>\n )}\n\n <div className={moreFiltersDesktopWrapperClass}>\n <div className={MORE_FILTERS_CLASSES.DESKTOP_CONTENT}>\n <FiltersList\n shouldSearch={false}\n data={data}\n filters={filters.slice(groupAfterDesktop)}\n hasUrl={hasUrl}\n entity={entity}\n filterValues={filterValues}\n updateFilterValues={updateFilterValues}\n />\n </div>\n\n <div className={MORE_FILTERS_CLASSES.DESKTOP_BUTTONS}>\n <ResetDesktopForm handleReset={handleReset} />\n\n <button className=\"button button--full-width\" type=\"submit\">\n {SEARCH}\n </button>\n </div>\n </div>\n </div>\n\n <div className={MORE_FILTERS_CLASSES.MOBILE_BUTTONS}>\n <ResetDesktopForm handleReset={handleReset} />\n\n <button className=\"button button--full-width\" type=\"submit\">\n {SEARCH}\n </button>\n </div>\n </div>\n </>\n )}\n\n <br />\n\n {!displaySearchFilter && (\n <button className=\"button button--full-width\" type=\"submit\">\n {SEARCH}\n </button>\n )}\n </div>\n </div>\n\n {displaySearchFilter && <MobileFormToolbar formId={formId} handleReset={handleReset} />}\n </form>\n\n {isCollapsedOnResponsive &&\n !displaySearchFilter && (\n <div className=\"filter__refine filter__refine--mobile-close\" data-testid=\"refine-mobile\">\n <div role=\"button\" onClick={() => setDisplaySearchFilter(true)}>\n {REFINE}\n </div>\n </div>\n )}\n </>\n );\n};\n\nSearchFilter.propTypes = {\n data: PropTypes.object.isRequired,\n filters: PropTypes.array.isRequired,\n searchFilterRef: PropTypes.object.isRequired,\n hasUrl: PropTypes.bool.isRequired,\n entity: PropTypes.string.isRequired,\n handleSearch: PropTypes.func.isRequired,\n name: PropTypes.string.isRequired,\n displaySearchFilter: PropTypes.bool.isRequired,\n setDisplaySearchFilter: PropTypes.func.isRequired,\n isCollapsedOnResponsive: PropTypes.bool.isRequired,\n groupAfterDesktop: PropTypes.number.isRequired,\n groupAfterMobile: PropTypes.number.isRequired,\n initialFilterValues: PropTypes.object.isRequired\n};\n\nexport default SearchFilter;\n"],"mappings":"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"}
1
+ {"version":3,"file":"SearchFilter.js","names":["SearchFilter","searchFilterRef","data","filters","hasUrl","entity","handleSearch","name","isCollapsedOnResponsive","displaySearchFilter","setDisplaySearchFilter","groupAfterDesktop","groupAfterMobile","filterValues","setAppliedFilters","useState","moreFiltersMobileCollapsed","setMoreFiltersMobileCollapsed","moreFiltersDesktopCollapsed","setMoreFiltersDesktopCollapsed","doSubmit","newValues","newQuery","buildQuery","handleSubmit","debounce","useEffect","shouldSearch","type","formClass","classnames","getResponsiveFilterClassnames","moreFiltersMobileWrapperClass","moreFiltersMobileTogglerClass","moreFiltersDesktopWrapperClass","moreFiltersDesktopTogglerClass","formId","handleReset","getInitialFilterValues","updateFilterValues","shouldSubmit","shouldGroup","e","preventDefault","slice","MORE_FILTERS_CLASSES","MOBILE_CONTENT","isDeviceDesktop","DESKTOP_CONTENT","DESKTOP_BUTTONS","SEARCH","MOBILE_BUTTONS","REFINE","propTypes","PropTypes","object","isRequired","array","bool","string","func","number"],"sources":["../../../../src/components/SearchFilter/SearchFilter/SearchFilter.js"],"sourcesContent":["import React, { useState, useEffect } from 'react';\nimport PropTypes from 'prop-types';\nimport classnames from 'classnames';\nimport debounce from 'lodash.debounce';\nimport FiltersList from './FiltersList';\nimport {\n isDeviceDesktop,\n buildQuery,\n getInitialFilterValues,\n getResponsiveFilterClassnames\n} from '../helpers';\nimport CloseMobileForm from './CloseMobileForm';\nimport ResetDesktopForm from './ResetDesktopForm';\nimport MobileFormToolbar from './MobileFormToolbar';\nimport { SEARCH, REFINE, MORE_FILTERS_CLASSES } from '../constants';\n\nconst SearchFilter = ({\n searchFilterRef,\n data,\n filters,\n hasUrl,\n entity,\n handleSearch,\n name,\n isCollapsedOnResponsive,\n displaySearchFilter,\n setDisplaySearchFilter,\n groupAfterDesktop,\n groupAfterMobile,\n filterValues,\n setAppliedFilters\n}) => {\n const [moreFiltersMobileCollapsed, setMoreFiltersMobileCollapsed] = useState(true);\n const [moreFiltersDesktopCollapsed, setMoreFiltersDesktopCollapsed] = useState(true);\n\n const doSubmit = (newValues = filterValues) => {\n const newQuery = buildQuery(newValues, filters);\n handleSearch(newQuery);\n setMoreFiltersDesktopCollapsed(true);\n setMoreFiltersMobileCollapsed(true);\n };\n\n const handleSubmit = debounce(newValues => {\n doSubmit(newValues);\n }, 200);\n\n useEffect(\n () => {\n if (filterValues.shouldSearch) {\n handleSubmit(filterValues);\n setAppliedFilters({ type: 'resetSearch' });\n }\n },\n [filterValues, handleSubmit, setAppliedFilters]\n );\n\n const formClass = classnames('filter__form filter__form--initial', {\n 'filter__form--mobile': isCollapsedOnResponsive && displaySearchFilter,\n 'filter__form--collapsible': isCollapsedOnResponsive\n });\n\n const {\n moreFiltersMobileWrapperClass,\n moreFiltersMobileTogglerClass,\n moreFiltersDesktopWrapperClass,\n moreFiltersDesktopTogglerClass\n } = getResponsiveFilterClassnames(moreFiltersDesktopCollapsed, moreFiltersMobileCollapsed);\n\n const formId = `filter-${name}-form`;\n\n const handleReset = () => {\n const newValues = getInitialFilterValues(data, filters, {});\n setAppliedFilters({ newValues, type: 'reset' });\n };\n\n const updateFilterValues = (newValues, shouldSubmit) => {\n setAppliedFilters({ newValues, shouldSearch: shouldSubmit, type: 'update' });\n };\n\n const shouldGroup = !!(groupAfterDesktop || groupAfterMobile);\n const shouldSearch = !hasUrl;\n\n return (\n <>\n <form\n ref={searchFilterRef}\n className={formClass}\n data-testid={formId}\n id={formId}\n onSubmit={e => {\n e.preventDefault();\n doSubmit();\n }}>\n {displaySearchFilter && (\n <CloseMobileForm handleClose={() => setDisplaySearchFilter(false)} />\n )}\n\n <div className=\"filter filter--search-refine\">\n <ResetDesktopForm handleReset={handleReset} />\n\n <div className=\"filter__wrapper filter__wrapper--search-refine\">\n {!shouldGroup && (\n <FiltersList\n shouldSearch={shouldSearch}\n data={data}\n filters={filters}\n hasUrl={hasUrl}\n entity={entity}\n filterValues={filterValues}\n updateFilterValues={updateFilterValues}\n />\n )}\n\n {shouldGroup && (\n <>\n <FiltersList\n shouldSearch={shouldSearch}\n data={data}\n filters={filters.slice(0, groupAfterMobile)}\n hasUrl={hasUrl}\n entity={entity}\n filterValues={filterValues}\n updateFilterValues={updateFilterValues}\n />\n\n {!!groupAfterMobile && (\n <button\n data-testId=\"search-filter-mobile-toggler\"\n className={moreFiltersMobileTogglerClass}\n type=\"button\"\n onClick={() => setMoreFiltersMobileCollapsed(!moreFiltersMobileCollapsed)}>\n Filters\n </button>\n )}\n\n <div className={moreFiltersMobileWrapperClass}>\n <div className={MORE_FILTERS_CLASSES.MOBILE_CONTENT}>\n <FiltersList\n shouldSearch={shouldSearch && isDeviceDesktop()}\n data={data}\n filters={filters.slice(\n groupAfterMobile,\n groupAfterDesktop ? groupAfterDesktop - 1 : 0\n )}\n hasUrl={hasUrl}\n entity={entity}\n filterValues={filterValues}\n updateFilterValues={updateFilterValues}\n />\n\n {!!groupAfterDesktop && (\n <button\n data-testId=\"search-filter-desktop-toggler\"\n className={moreFiltersDesktopTogglerClass}\n type=\"button\"\n onClick={() =>\n setMoreFiltersDesktopCollapsed(!moreFiltersDesktopCollapsed)\n }>\n More filters\n </button>\n )}\n\n <div className={moreFiltersDesktopWrapperClass}>\n <div className={MORE_FILTERS_CLASSES.DESKTOP_CONTENT}>\n <FiltersList\n shouldSearch={false}\n data={data}\n filters={filters.slice(groupAfterDesktop)}\n hasUrl={hasUrl}\n entity={entity}\n filterValues={filterValues}\n updateFilterValues={updateFilterValues}\n />\n </div>\n\n <div className={MORE_FILTERS_CLASSES.DESKTOP_BUTTONS}>\n <ResetDesktopForm handleReset={handleReset} />\n\n <button className=\"button button--full-width\" type=\"submit\">\n {SEARCH}\n </button>\n </div>\n </div>\n </div>\n\n <div className={MORE_FILTERS_CLASSES.MOBILE_BUTTONS}>\n <ResetDesktopForm handleReset={handleReset} />\n\n <button className=\"button button--full-width\" type=\"submit\">\n {SEARCH}\n </button>\n </div>\n </div>\n </>\n )}\n\n <br />\n\n {!displaySearchFilter && (\n <button className=\"button button--full-width\" type=\"submit\">\n {SEARCH}\n </button>\n )}\n </div>\n </div>\n\n {displaySearchFilter && <MobileFormToolbar formId={formId} handleReset={handleReset} />}\n </form>\n\n {isCollapsedOnResponsive &&\n !displaySearchFilter && (\n <div className=\"filter__refine filter__refine--mobile-close\" data-testid=\"refine-mobile\">\n <div role=\"button\" onClick={() => setDisplaySearchFilter(true)}>\n {REFINE}\n </div>\n </div>\n )}\n </>\n );\n};\n\nSearchFilter.propTypes = {\n data: PropTypes.object.isRequired,\n filters: PropTypes.array.isRequired,\n searchFilterRef: PropTypes.object.isRequired,\n hasUrl: PropTypes.bool.isRequired,\n entity: PropTypes.string.isRequired,\n handleSearch: PropTypes.func.isRequired,\n name: PropTypes.string.isRequired,\n displaySearchFilter: PropTypes.bool.isRequired,\n setDisplaySearchFilter: PropTypes.func.isRequired,\n isCollapsedOnResponsive: PropTypes.bool.isRequired,\n groupAfterDesktop: PropTypes.number.isRequired,\n groupAfterMobile: PropTypes.number.isRequired,\n filterValues: PropTypes.object.isRequired,\n setAppliedFilters: PropTypes.func.isRequired\n};\n\nexport default SearchFilter;\n"],"mappings":"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"}
@@ -1,5 +1,19 @@
1
1
  "use strict";
2
2
 
3
+ require("core-js/modules/es.object.keys.js");
4
+
5
+ require("core-js/modules/es.symbol.js");
6
+
7
+ require("core-js/modules/es.array.filter.js");
8
+
9
+ require("core-js/modules/es.object.get-own-property-descriptor.js");
10
+
11
+ require("core-js/modules/es.object.get-own-property-descriptors.js");
12
+
13
+ require("core-js/modules/es.object.define-properties.js");
14
+
15
+ require("core-js/modules/es.object.define-property.js");
16
+
3
17
  require("core-js/modules/es.array.iterator.js");
4
18
 
5
19
  require("core-js/modules/es.string.iterator.js");
@@ -8,10 +22,6 @@ require("core-js/modules/es.weak-map.js");
8
22
 
9
23
  require("core-js/modules/web.dom-collections.iterator.js");
10
24
 
11
- require("core-js/modules/es.object.define-property.js");
12
-
13
- require("core-js/modules/es.object.get-own-property-descriptor.js");
14
-
15
25
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
16
26
 
17
27
  var _typeof = require("@babel/runtime/helpers/typeof");
@@ -21,10 +31,6 @@ Object.defineProperty(exports, "__esModule", {
21
31
  });
22
32
  exports["default"] = void 0;
23
33
 
24
- var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
25
-
26
- var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
27
-
28
34
  require("core-js/modules/es.function.name.js");
29
35
 
30
36
  require("core-js/modules/es.array.sort.js");
@@ -45,6 +51,12 @@ require("core-js/modules/es.date.now.js");
45
51
 
46
52
  require("core-js/modules/es.date.to-string.js");
47
53
 
54
+ var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
55
+
56
+ var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
57
+
58
+ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
59
+
48
60
  var _react = _interopRequireWildcard(require("react"));
49
61
 
50
62
  var _router = require("next/router");
@@ -73,6 +85,37 @@ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "functio
73
85
 
74
86
  function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
75
87
 
88
+ 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; }
89
+
90
+ 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) { (0, _defineProperty2["default"])(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; }
91
+
92
+ var reducer = function reducer(state, action) {
93
+ var newValues = action.newValues,
94
+ type = action.type,
95
+ _action$shouldSearch = action.shouldSearch,
96
+ shouldSearch = _action$shouldSearch === void 0 ? true : _action$shouldSearch;
97
+
98
+ switch (type) {
99
+ case 'update':
100
+ return _objectSpread(_objectSpread(_objectSpread({}, state), newValues), {}, {
101
+ shouldSearch: shouldSearch
102
+ });
103
+
104
+ case 'resetSearch':
105
+ return _objectSpread(_objectSpread({}, state), {}, {
106
+ shouldSearch: false
107
+ });
108
+
109
+ case 'reset':
110
+ return _objectSpread(_objectSpread({}, newValues), {}, {
111
+ shouldSearch: shouldSearch
112
+ });
113
+
114
+ default:
115
+ throw new Error();
116
+ }
117
+ };
118
+
76
119
  var SearchFilterContainer = function SearchFilterContainer(_ref) {
77
120
  var entity = _ref.entity,
78
121
  url = _ref.url,
@@ -80,8 +123,12 @@ var SearchFilterContainer = function SearchFilterContainer(_ref) {
80
123
  name = _ref.name,
81
124
  isCollapsedOnResponsive = _ref.isCollapsedOnResponsive,
82
125
  groupAfterMobile = _ref.groupAfterMobile,
83
- groupAfterDesktop = _ref.groupAfterDesktop;
126
+ groupAfterDesktop = _ref.groupAfterDesktop,
127
+ filterBy = _ref.filterBy,
128
+ filterByProperty = _ref.filterByProperty,
129
+ shouldAddFilters = _ref.shouldAddFilters;
84
130
  var router = (0, _router.useRouter)();
131
+ var asPath = router.asPath;
85
132
  var searchFilterRef = (0, _react.useRef)(null);
86
133
 
87
134
  var _useState = (0, _react.useState)("filter-".concat(name)),
@@ -94,22 +141,25 @@ var SearchFilterContainer = function SearchFilterContainer(_ref) {
94
141
  displaySearchFilter = _useState4[0],
95
142
  setDisplaySearchFilter = _useState4[1];
96
143
 
97
- var hasUrl = !!url;
98
-
99
- var _parseUrl = (0, _queryString.parseUrl)(router.asPath),
144
+ var _parseUrl = (0, _queryString.parseUrl)(asPath),
100
145
  currentUrl = _parseUrl.url,
101
146
  _parseUrl$query = _parseUrl.query,
102
147
  sort = _parseUrl$query.sort,
103
148
  sortby = _parseUrl$query.sortby,
104
149
  query = _parseUrl.query;
105
150
 
151
+ var _useReducer = (0, _react.useReducer)(reducer, query),
152
+ _useReducer2 = (0, _slicedToArray2["default"])(_useReducer, 2),
153
+ filterValues = _useReducer2[0],
154
+ dispatch = _useReducer2[1];
155
+
156
+ var hasUrl = !!url;
106
157
  var sortValues = sort && sortby ? (0, _queryString.stringify)({
107
158
  sort: sort,
108
159
  sortby: sortby
109
160
  }) : '';
110
161
  var baseQuery = sortValues ? "".concat(currentUrl, "?").concat(sortValues) : currentUrl;
111
162
  var action = (0, _query.getSearchPublishedContent)(_constants.RAW_RESULTS);
112
- var rawQueryStringified = '';
113
163
  var checkboxSelectValues = [];
114
164
  var rangeValues = [];
115
165
  filters.forEach(function (_ref2) {
@@ -126,7 +176,8 @@ var SearchFilterContainer = function SearchFilterContainer(_ref) {
126
176
  var _getEntityData = (0, _helpers2.getEntityData)(entity),
127
177
  docType = _getEntityData.docType;
128
178
 
129
- rawQueryStringified = (0, _helpers.buildRawQueryStringified)(checkboxSelectValues, rangeValues, docType);
179
+ var filtersQuery = shouldAddFilters ? (0, _helpers.buildFiltersQuery)(filterValues || query, filterBy, filterByProperty) : [];
180
+ var rawQueryStringified = (0, _helpers.buildRawQueryStringified)(checkboxSelectValues, rangeValues, docType, filtersQuery);
130
181
 
131
182
  var _useQuery = (0, _client.useQuery)(action, {
132
183
  variables: {
@@ -137,10 +188,8 @@ var SearchFilterContainer = function SearchFilterContainer(_ref) {
137
188
  skip: !rawQueryStringified
138
189
  }),
139
190
  data = _useQuery.data,
140
- error = _useQuery.error,
141
- loading = _useQuery.loading;
191
+ error = _useQuery.error;
142
192
 
143
- if (loading) return null;
144
193
  if (error) return error.message;
145
194
  if (!filters.length) return null;
146
195
 
@@ -150,9 +199,16 @@ var SearchFilterContainer = function SearchFilterContainer(_ref) {
150
199
  _ref3$searchPublished = _ref3$searchPublished === void 0 ? {} : _ref3$searchPublished;
151
200
  var _ref3$searchPublished2 = _ref3$searchPublished.rawResults;
152
201
  _ref3$searchPublished2 = _ref3$searchPublished2 === void 0 ? {} : _ref3$searchPublished2;
153
- var _ref3$searchPublished3 = _ref3$searchPublished2.aggregations,
154
- filterData = _ref3$searchPublished3 === void 0 ? {} : _ref3$searchPublished3;
155
- var initialFilterValues = (0, _helpers.getInitialFilterValues)(filterData, filters, query);
202
+ var filterData = _ref3$searchPublished2.aggregations;
203
+
204
+ if (!filterValues && filterData) {
205
+ var initialFilterValues = (0, _helpers.getInitialFilterValues)(filterData, filters, query);
206
+ dispatch({
207
+ newValues: initialFilterValues,
208
+ shouldSearch: false,
209
+ type: 'update'
210
+ });
211
+ }
156
212
 
157
213
  var handleSearch = function handleSearch(newQuery) {
158
214
  setDisplaySearchFilter(false);
@@ -192,15 +248,17 @@ var SearchFilterContainer = function SearchFilterContainer(_ref) {
192
248
  }
193
249
  };
194
250
 
251
+ if (!filterValues) return '';
195
252
  return /*#__PURE__*/_react["default"].createElement(_SearchFilter["default"], {
196
253
  key: key,
254
+ setAppliedFilters: dispatch,
197
255
  searchFilterRef: searchFilterRef,
198
256
  data: filterData,
199
257
  filters: filters,
200
258
  hasUrl: hasUrl,
201
259
  entity: entity,
202
260
  handleSearch: handleSearch,
203
- initialFilterValues: initialFilterValues,
261
+ filterValues: filterValues,
204
262
  name: name,
205
263
  isCollapsedOnResponsive: isCollapsedOnResponsive,
206
264
  displaySearchFilter: displaySearchFilter,
@@ -217,7 +275,10 @@ SearchFilterContainer.propTypes = {
217
275
  name: _propTypes["default"].string.isRequired,
218
276
  isCollapsedOnResponsive: _propTypes["default"].bool,
219
277
  groupAfterMobile: _propTypes["default"].number,
220
- groupAfterDesktop: _propTypes["default"].number
278
+ groupAfterDesktop: _propTypes["default"].number,
279
+ filterBy: _propTypes["default"].array,
280
+ filterByProperty: _propTypes["default"].array,
281
+ shouldAddFilters: _propTypes["default"].bool
221
282
  };
222
283
  SearchFilterContainer.defaultProps = {
223
284
  url: null,
@@ -225,7 +286,10 @@ SearchFilterContainer.defaultProps = {
225
286
  entity: '',
226
287
  isCollapsedOnResponsive: true,
227
288
  groupAfterMobile: 0,
228
- groupAfterDesktop: 0
289
+ groupAfterDesktop: 0,
290
+ filterBy: [],
291
+ filterByProperty: [],
292
+ shouldAddFilters: false
229
293
  };
230
294
 
231
295
  var _default = (0, _HOC.withTitle)(SearchFilterContainer);