@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.
- package/CHANGELOG.md +339 -0
- package/README.md +9 -0
- package/example.env +1 -0
- package/lib/BannerContext/helpers/index.js.map +1 -1
- package/lib/BannerContext/helpers/set-initial-banner-counters.js.map +1 -1
- package/lib/BannerContext/index.js.map +1 -1
- package/lib/HOC/index.js.map +1 -1
- package/lib/HOC/withInfiniteScroll.js.map +1 -1
- package/lib/HOC/withTitle.js.map +1 -1
- package/lib/PBContext/index.js.map +1 -1
- package/lib/application/query/index.js +8 -2
- package/lib/application/query/index.js.map +1 -1
- package/lib/components/BackToTop/BackToTop.js.map +1 -1
- package/lib/components/BackToTop/index.js.map +1 -1
- package/lib/components/Banner/AdSlotRender.js.map +1 -1
- package/lib/components/Banner/Banner.js.map +1 -1
- package/lib/components/Banner/BannerRender.js.map +1 -1
- package/lib/components/Banner/helpers.js.map +1 -1
- package/lib/components/Banner/index.js.map +1 -1
- package/lib/components/BlazeLink.js.map +1 -1
- package/lib/components/Breadcrumb/Breadcrumb.js.map +1 -1
- package/lib/components/Breadcrumb/index.js.map +1 -1
- package/lib/components/Button.js +18 -5
- package/lib/components/Button.js.map +1 -1
- package/lib/components/Card/Card.js.map +1 -1
- package/lib/components/Card/CardContainer.js +3 -7
- package/lib/components/Card/CardContainer.js.map +1 -1
- package/lib/components/Card/CardFactory.js +6 -3
- package/lib/components/Card/CardFactory.js.map +1 -1
- package/lib/components/Card/CardRender.js.map +1 -1
- package/lib/components/Card/constants.js.map +1 -1
- package/lib/components/Card/helpers/filter-query-setup.js.map +1 -1
- package/lib/components/Card/helpers/filters-setup.js.map +1 -1
- package/lib/components/Card/helpers/get-dynamic-grid-classes.js.map +1 -1
- package/lib/components/Card/helpers/get-published-listing-url.js.map +1 -1
- package/lib/components/Card/helpers/index.js.map +1 -1
- package/lib/components/Card/helpers/should-return.js.map +1 -1
- package/lib/components/Card/helpers/should-skip-single-query.js.map +1 -1
- package/lib/components/Card/helpers/use-dynamic-size-key.js.map +1 -1
- package/lib/components/Card/index.js.map +1 -1
- package/lib/components/Carousel/Carousel.js.map +1 -1
- package/lib/components/Carousel/CarouselImage/CarouselImage.js.map +1 -1
- package/lib/components/Carousel/CarouselImage/index.js.map +1 -1
- package/lib/components/Carousel/CarouselRender/CarouselRender.js.map +1 -1
- package/lib/components/Carousel/CarouselRender/index.js.map +1 -1
- package/lib/components/Carousel/index.js.map +1 -1
- package/lib/components/CarouselWrapper.js +2 -2
- package/lib/components/CarouselWrapper.js.map +1 -1
- package/lib/components/ClickWrapper.js.map +1 -1
- package/lib/components/Code/Code.js.map +1 -1
- package/lib/components/Code/ScriptTag.js.map +1 -1
- package/lib/components/Code/helpers/index.js.map +1 -1
- package/lib/components/Code/helpers/wrap-script-tags.js.map +1 -1
- package/lib/components/Code/index.js.map +1 -1
- package/lib/components/DataSummary/DataSummaryFactory.js.map +1 -1
- package/lib/components/DataSummary/DataSummaryRender.js.map +1 -1
- package/lib/components/DataSummary/DataSummaryTypes/HeadingLargeSummary/HeadingLargeSummary.js.map +1 -1
- package/lib/components/DataSummary/DataSummaryTypes/HeadingLargeSummary/HeadingLargeSummaryContent.js.map +1 -1
- package/lib/components/DataSummary/DataSummaryTypes/HeadingLargeSummary/index.js.map +1 -1
- package/lib/components/DataSummary/DataSummaryTypes/ItemDetailsSummary/ItemDetailsSummary.js.map +1 -1
- package/lib/components/DataSummary/DataSummaryTypes/ItemDetailsSummary/ItemDetailsSummaryContent.js.map +1 -1
- package/lib/components/DataSummary/DataSummaryTypes/ItemDetailsSummary/index.js.map +1 -1
- package/lib/components/DataSummary/DataSummaryTypes/LargeSummary/LargeSummary.js.map +1 -1
- package/lib/components/DataSummary/DataSummaryTypes/LargeSummary/LargeSummaryContent.js.map +1 -1
- package/lib/components/DataSummary/DataSummaryTypes/LargeSummary/index.js.map +1 -1
- package/lib/components/DataSummary/DataSummaryTypes/ListSummary/ListSummary.js.map +1 -1
- package/lib/components/DataSummary/DataSummaryTypes/ListSummary/ListSummaryContent.js.map +1 -1
- package/lib/components/DataSummary/DataSummaryTypes/ListSummary/index.js.map +1 -1
- package/lib/components/DataSummary/DataSummaryTypes/TextSummary/TextSummary.js.map +1 -1
- package/lib/components/DataSummary/DataSummaryTypes/TextSummary/TextSummaryContent.js.map +1 -1
- package/lib/components/DataSummary/DataSummaryTypes/TextSummary/index.js.map +1 -1
- package/lib/components/DataSummary/DataSummaryTypes/index.js.map +1 -1
- package/lib/components/DataSummary/helpers/build-loop-props-content.js.map +1 -1
- package/lib/components/DataSummary/helpers/build-props-to-display-with-content.js.map +1 -1
- package/lib/components/DataSummary/helpers/get-data-summary-query.js.map +1 -1
- package/lib/components/DataSummary/helpers/get-link-based-on-value.js.map +1 -1
- package/lib/components/DataSummary/helpers/get-link-to-published-content.js.map +1 -1
- package/lib/components/DataSummary/helpers/get-loop-props-limit.js.map +1 -1
- package/lib/components/DataSummary/helpers/get-prop-value.js.map +1 -1
- package/lib/components/DataSummary/helpers/get-value-from-array.js.map +1 -1
- package/lib/components/DataSummary/helpers/index.js.map +1 -1
- package/lib/components/DataSummary/helpers/parse-boolean-values.js.map +1 -1
- package/lib/components/DataSummary/helpers/strip-summary-props-content.js.map +1 -1
- package/lib/components/DataSummary/index.js.map +1 -1
- package/lib/components/EmailConfirm/EmailConfirm.js.map +1 -1
- package/lib/components/EmailConfirm/index.js.map +1 -1
- package/lib/components/EmailConfirm/mutation.js.map +1 -1
- package/lib/components/Image/GlobalLightbox/GlobalLightbox.js.map +1 -1
- package/lib/components/Image/GlobalLightbox/NavButton.js.map +1 -1
- package/lib/components/Image/GlobalLightbox/index.js.map +1 -1
- package/lib/components/Image/Image.js.map +1 -1
- package/lib/components/Image/ImageDetails.js.map +1 -1
- package/lib/components/Image/ImageFactory.js.map +1 -1
- package/lib/components/Image/ImageRender.js +5 -1
- package/lib/components/Image/ImageRender.js.map +1 -1
- package/lib/components/Image/Lightbox/Lightbox.js.map +1 -1
- package/lib/components/Image/Lightbox/index.js.map +1 -1
- package/lib/components/Image/index.js.map +1 -1
- package/lib/components/ItemList/ItemListButton/ItemListButton.js +161 -0
- package/lib/components/ItemList/ItemListButton/ItemListButton.js.map +1 -0
- package/lib/components/ItemList/ItemListButton/index.js +16 -0
- package/lib/components/ItemList/ItemListButton/index.js.map +1 -0
- package/lib/components/ItemList/ItemListCounter/ItemListCounter.js +83 -0
- package/lib/components/ItemList/ItemListCounter/ItemListCounter.js.map +1 -0
- package/lib/components/ItemList/ItemListCounter/index.js +16 -0
- package/lib/components/ItemList/ItemListCounter/index.js.map +1 -0
- package/lib/components/ItemList/ItemListNew/ItemListNew.js +87 -0
- package/lib/components/ItemList/ItemListNew/ItemListNew.js.map +1 -0
- package/lib/components/ItemList/ItemListNew/index.js +16 -0
- package/lib/components/ItemList/ItemListNew/index.js.map +1 -0
- package/lib/components/ItemList/constants.js +19 -0
- package/lib/components/ItemList/constants.js.map +1 -0
- package/lib/components/ItemList/helpers/get-item-list-data.js +17 -0
- package/lib/components/ItemList/helpers/get-item-list-data.js.map +1 -0
- package/lib/components/ItemList/helpers/get-item-list-id.js +23 -0
- package/lib/components/ItemList/helpers/get-item-list-id.js.map +1 -0
- package/lib/components/ItemList/helpers/get-item-list-ids.js +28 -0
- package/lib/components/ItemList/helpers/get-item-list-ids.js.map +1 -0
- package/lib/components/ItemList/helpers/index.js +50 -0
- package/lib/components/ItemList/helpers/index.js.map +1 -0
- package/lib/components/ItemList/helpers/set-item-list-id.js +22 -0
- package/lib/components/ItemList/helpers/set-item-list-id.js.map +1 -0
- package/lib/components/ItemList/helpers/set-param-and-redirect.js +51 -0
- package/lib/components/ItemList/helpers/set-param-and-redirect.js.map +1 -0
- package/lib/components/ItemList/hooks/index.js +18 -0
- package/lib/components/ItemList/hooks/index.js.map +1 -0
- package/lib/components/ItemList/hooks/use-item-list-id.js +45 -0
- package/lib/components/ItemList/hooks/use-item-list-id.js.map +1 -0
- package/lib/components/Layout/Layout.js.map +1 -1
- package/lib/components/Layout/constants.js.map +1 -1
- package/lib/components/Layout/helpers/check-if-row-has-columns.js.map +1 -1
- package/lib/components/Layout/helpers/get-styles-to-update.js.map +1 -1
- package/lib/components/Layout/helpers/index.js.map +1 -1
- package/lib/components/Layout/index.js.map +1 -1
- package/lib/components/LazyImage/LazyImage.js +5 -1
- package/lib/components/LazyImage/LazyImage.js.map +1 -1
- package/lib/components/LazyImage/index.js.map +1 -1
- package/lib/components/List/ListBuilder.js +12 -6
- package/lib/components/List/ListBuilder.js.map +1 -1
- package/lib/components/List/ListFactory.js +34 -7
- package/lib/components/List/ListFactory.js.map +1 -1
- package/lib/components/List/ListRender.js.map +1 -1
- package/lib/components/List/components/Cards/CardRenderWithInfiniteScroll.js.map +1 -1
- package/lib/components/List/components/Cards/CardsRender.js.map +1 -1
- package/lib/components/List/components/Cards/CardsRenderItem.js.map +1 -1
- package/lib/components/List/components/Cards/CardsRenderWrapper.js.map +1 -1
- package/lib/components/List/components/Cards/index.js.map +1 -1
- package/lib/components/List/components/Full/FullRender.js.map +1 -1
- package/lib/components/List/components/Full/FullRenderItem.js.map +1 -1
- package/lib/components/List/components/Full/FullRenderWithInfiniteScroll.js.map +1 -1
- package/lib/components/List/components/Full/index.js.map +1 -1
- package/lib/components/List/components/Header/ListHeader.js.map +1 -1
- package/lib/components/List/components/Header/index.js.map +1 -1
- package/lib/components/List/components/Pagination/Classic.js.map +1 -1
- package/lib/components/List/components/Pagination/ListPagination.js.map +1 -1
- package/lib/components/List/components/Pagination/LoadMore.js.map +1 -1
- package/lib/components/List/components/Pagination/index.js.map +1 -1
- package/lib/components/List/components/helpers/check-if-should-render-banner.js.map +1 -1
- package/lib/components/List/components/helpers/check-if-should-render-gtm.js.map +1 -1
- package/lib/components/List/components/helpers/index.js.map +1 -1
- package/lib/components/List/components/index.js.map +1 -1
- package/lib/components/List/constants.js.map +1 -1
- package/lib/components/List/helpers/build-az-aggregations.js.map +1 -1
- package/lib/components/List/helpers/build-az-url.js.map +1 -1
- package/lib/components/List/helpers/build-pagination-items.js.map +1 -1
- package/lib/components/List/helpers/build-pagination-url.js.map +1 -1
- package/lib/components/List/helpers/get-az-query-filter.js.map +1 -1
- package/lib/components/List/helpers/get-items-per-page-to-use.js.map +1 -1
- package/lib/components/List/helpers/get-sort-props.js.map +1 -1
- package/lib/components/List/helpers/has-required-item-list-details.js +29 -0
- package/lib/components/List/helpers/has-required-item-list-details.js.map +1 -0
- package/lib/components/List/helpers/index.js +8 -0
- package/lib/components/List/helpers/index.js.map +1 -1
- package/lib/components/List/helpers/sort-aggs.js.map +1 -1
- package/lib/components/List/index.js.map +1 -1
- package/lib/components/Login/LoggedInMessage.js.map +1 -1
- package/lib/components/Login/Login.js.map +1 -1
- package/lib/components/Login/LoginForm.js.map +1 -1
- package/lib/components/Login/helpers/check-gtm-children.js.map +1 -1
- package/lib/components/Login/helpers/get-url-to-use.js.map +1 -1
- package/lib/components/Login/helpers/index.js.map +1 -1
- package/lib/components/Login/index.js.map +1 -1
- package/lib/components/Menu/Menu.js +41 -28
- package/lib/components/Menu/Menu.js.map +1 -1
- package/lib/components/Menu/MenuContext.js +20 -0
- package/lib/components/Menu/MenuContext.js.map +1 -0
- package/lib/components/Menu/index.js.map +1 -1
- package/lib/components/MenuItem/MenuItem.js +26 -7
- package/lib/components/MenuItem/MenuItem.js.map +1 -1
- package/lib/components/MenuItem/index.js.map +1 -1
- package/lib/components/Modal/Modal.js.map +1 -1
- package/lib/components/Modal/index.js.map +1 -1
- package/lib/components/PasswordReset/PasswordReset.js.map +1 -1
- package/lib/components/PasswordReset/helpers/index.js.map +1 -1
- package/lib/components/PasswordReset/helpers/validatePassword.js.map +1 -1
- package/lib/components/PasswordReset/index.js.map +1 -1
- package/lib/components/PasswordResetRequest/PasswordResetRequest.js.map +1 -1
- package/lib/components/PasswordResetRequest/index.js.map +1 -1
- package/lib/components/SearchContent/SearchContent.js +183 -0
- package/lib/components/SearchContent/SearchContent.js.map +1 -0
- package/lib/components/SearchContent/SearchContentItems.js +51 -0
- package/lib/components/SearchContent/SearchContentItems.js.map +1 -0
- package/lib/components/SearchContent/SearchContentResults.js +45 -0
- package/lib/components/SearchContent/SearchContentResults.js.map +1 -0
- package/lib/components/SearchContent/SearchContentToggleIcon.js +42 -0
- package/lib/components/SearchContent/SearchContentToggleIcon.js.map +1 -0
- package/lib/components/SearchContent/index.js +2 -301
- package/lib/components/SearchContent/index.js.map +1 -1
- package/lib/components/SearchFilter/SearchFilter/CloseMobileForm.js.map +1 -1
- package/lib/components/SearchFilter/SearchFilter/FiltersList.js +2 -4
- package/lib/components/SearchFilter/SearchFilter/FiltersList.js.map +1 -1
- package/lib/components/SearchFilter/SearchFilter/MobileFormToolbar.js.map +1 -1
- package/lib/components/SearchFilter/SearchFilter/ResetDesktopForm.js.map +1 -1
- package/lib/components/SearchFilter/SearchFilter/SearchFilter.js +27 -69
- package/lib/components/SearchFilter/SearchFilter/SearchFilter.js.map +1 -1
- package/lib/components/SearchFilter/SearchFilter/index.js.map +1 -1
- package/lib/components/SearchFilter/SearchFilterContainer.js +87 -23
- package/lib/components/SearchFilter/SearchFilterContainer.js.map +1 -1
- package/lib/components/SearchFilter/components/Checkbox.js +19 -9
- package/lib/components/SearchFilter/components/Checkbox.js.map +1 -1
- package/lib/components/SearchFilter/components/Range.js.map +1 -1
- package/lib/components/SearchFilter/components/Select.js +27 -11
- package/lib/components/SearchFilter/components/Select.js.map +1 -1
- package/lib/components/SearchFilter/components/TextSearch.js +1 -5
- package/lib/components/SearchFilter/components/TextSearch.js.map +1 -1
- package/lib/components/SearchFilter/components/index.js.map +1 -1
- package/lib/components/SearchFilter/constants.js +1 -1
- package/lib/components/SearchFilter/constants.js.map +1 -1
- package/lib/components/SearchFilter/helpers/build-filters-query.js +87 -0
- package/lib/components/SearchFilter/helpers/build-filters-query.js.map +1 -0
- package/lib/components/SearchFilter/helpers/build-new-query.js.map +1 -1
- package/lib/components/SearchFilter/helpers/build-query.js +1 -1
- package/lib/components/SearchFilter/helpers/build-query.js.map +1 -1
- package/lib/components/SearchFilter/helpers/build-raw-query-stringified.js +2 -1
- package/lib/components/SearchFilter/helpers/build-raw-query-stringified.js.map +1 -1
- package/lib/components/SearchFilter/helpers/calculate-min-max.js.map +1 -1
- package/lib/components/SearchFilter/helpers/calculate-step.js.map +1 -1
- package/lib/components/SearchFilter/helpers/check-if-range-updated.js.map +1 -1
- package/lib/components/SearchFilter/helpers/decode-encode.js.map +1 -1
- package/lib/components/SearchFilter/helpers/get-display-value.js.map +1 -1
- package/lib/components/SearchFilter/helpers/get-filter-value-from-query.js.map +1 -1
- package/lib/components/SearchFilter/helpers/get-initial-filter-values.js +18 -3
- package/lib/components/SearchFilter/helpers/get-initial-filter-values.js.map +1 -1
- package/lib/components/SearchFilter/helpers/get-intersected-prop.js.map +1 -1
- package/lib/components/SearchFilter/helpers/get-range-value.js.map +1 -1
- package/lib/components/SearchFilter/helpers/get-responsive-filter-classnames.js.map +1 -1
- package/lib/components/SearchFilter/helpers/get-select-options.js.map +1 -1
- package/lib/components/SearchFilter/helpers/index.js +8 -0
- package/lib/components/SearchFilter/helpers/index.js.map +1 -1
- package/lib/components/SearchFilter/helpers/is-device-desktop.js.map +1 -1
- package/lib/components/SearchFilter/helpers/parse-filter-value.js +3 -7
- package/lib/components/SearchFilter/helpers/parse-filter-value.js.map +1 -1
- package/lib/components/SearchFilter/index.js.map +1 -1
- package/lib/components/SearchFilterSort/SearchFilterSort.js.map +1 -1
- package/lib/components/SearchFilterSort/constants.js.map +1 -1
- package/lib/components/SearchFilterSort/helpers/handle-sort-update.js.map +1 -1
- package/lib/components/SearchFilterSort/helpers/index.js.map +1 -1
- package/lib/components/SearchFilterSort/helpers/update-sort.js.map +1 -1
- package/lib/components/SearchFilterSort/index.js.map +1 -1
- package/lib/components/SocialFollow/SFItem.js.map +1 -1
- package/lib/components/SocialFollow/SocialFollow.js.map +1 -1
- package/lib/components/SocialFollow/SocialFollowRender.js.map +1 -1
- package/lib/components/SocialFollow/index.js.map +1 -1
- package/lib/components/SocialFollow/sf.config.js.map +1 -1
- package/lib/components/SubMenu/SubMenu.js.map +1 -1
- package/lib/components/SubMenu/index.js.map +1 -1
- package/lib/components/TextBlock/TextBlockRender.js.map +1 -1
- package/lib/components/TextBlock/index.js.map +1 -1
- package/lib/components/Video/Video.js.map +1 -1
- package/lib/components/Video/VideoModal.js.map +1 -1
- package/lib/components/Video/VideoRender.js.map +1 -1
- package/lib/components/Video/index.js.map +1 -1
- package/lib/components/Video/providers/Default.js.map +1 -1
- package/lib/components/Video/providers/JWPlayer/JWPlayerController.js.map +1 -1
- package/lib/components/Video/providers/JWPlayer/JWPlayerProvider.js.map +1 -1
- package/lib/components/Video/providers/YouTube/YouTubeProvider.js.map +1 -1
- package/lib/components/Video/providers/YouTube/YoutubeEmbeded.js.map +1 -1
- package/lib/components/Video/providers/YouTube/helpers/index.js.map +1 -1
- package/lib/components/Video/providers/get-provider.js.map +1 -1
- package/lib/components/Video/providers/index.js.map +1 -1
- package/lib/components/Wrapper.js.map +1 -1
- package/lib/components/index.js +16 -1
- package/lib/components/index.js.map +1 -1
- package/lib/constants/componentsDefaultValues.js.map +1 -1
- package/lib/constants/index.js +3 -1
- package/lib/constants/index.js.map +1 -1
- package/lib/helpers/append-images.js.map +1 -1
- package/lib/helpers/build-az-filter.js.map +1 -1
- package/lib/helpers/build-image-properties.js.map +1 -1
- package/lib/helpers/build-inherited-filters.js.map +1 -1
- package/lib/helpers/build-link-extra-props.js.map +1 -1
- package/lib/helpers/build-props-query.js.map +1 -1
- package/lib/helpers/build-query-fields.js.map +1 -1
- package/lib/helpers/build-raw-query-base.js.map +1 -1
- package/lib/helpers/build-raw-query.js.map +1 -1
- package/lib/helpers/build-search-values-checkbox-select.js.map +1 -1
- package/lib/helpers/build-search-values-text.js.map +1 -1
- package/lib/helpers/build-set-filters.js.map +1 -1
- package/lib/helpers/check-for-error.js.map +1 -1
- package/lib/helpers/check-props-to-use.js.map +1 -1
- package/lib/helpers/entities/constants.js.map +1 -1
- package/lib/helpers/get-banner-data.js.map +1 -1
- package/lib/helpers/get-click-wrapper-options.js.map +1 -1
- package/lib/helpers/get-current-offset.js.map +1 -1
- package/lib/helpers/get-dictionary-match.js.map +1 -1
- package/lib/helpers/get-display-count-data.js.map +1 -1
- package/lib/helpers/get-elasticsearch-operator.js.map +1 -1
- package/lib/helpers/get-entities-with-banner.js.map +1 -1
- package/lib/helpers/get-entity-data.js.map +1 -1
- package/lib/helpers/get-entity-render-props.js.map +1 -1
- package/lib/helpers/get-extra-az-bits.js.map +1 -1
- package/lib/helpers/get-filter-props.js.map +1 -1
- package/lib/helpers/get-filter-relation-keys.js.map +1 -1
- package/lib/helpers/get-generic-props.js.map +1 -1
- package/lib/helpers/get-generic-render-variables.js.map +1 -1
- package/lib/helpers/get-image-ids.js.map +1 -1
- package/lib/helpers/get-inherited-filters.js.map +1 -1
- package/lib/helpers/get-items-to-display-ids.js.map +1 -1
- package/lib/helpers/get-modifiers.js.map +1 -1
- package/lib/helpers/get-not-equal-query.js.map +1 -1
- package/lib/helpers/get-pagination-index.js.map +1 -1
- package/lib/helpers/get-parsed-prop-values.js.map +1 -1
- package/lib/helpers/get-parsed-summary-value.js.map +1 -1
- package/lib/helpers/get-prop-values.js.map +1 -1
- package/lib/helpers/get-query-filters.js.map +1 -1
- package/lib/helpers/get-query-props.js.map +1 -1
- package/lib/helpers/get-required-schemas.js.map +1 -1
- package/lib/helpers/get-sanitized-prop-values.js.map +1 -1
- package/lib/helpers/get-search-filter-type.js.map +1 -1
- package/lib/helpers/get-sort-by-field-name.js.map +1 -1
- package/lib/helpers/get-unpublished-entity-name.js.map +1 -1
- package/lib/helpers/get-updated-filter-by.js.map +1 -1
- package/lib/helpers/get-wrapped-value-with-link.js.map +1 -1
- package/lib/helpers/group-entities.js.map +1 -1
- package/lib/helpers/has-children.js.map +1 -1
- package/lib/helpers/index.js.map +1 -1
- package/lib/helpers/inject-banner.js.map +1 -1
- package/lib/helpers/inject-banners-to-entities.js.map +1 -1
- package/lib/helpers/inject-multiple-banners/get-banners-for-entities/get-banners-for-entities.js.map +1 -1
- package/lib/helpers/inject-multiple-banners/get-banners-for-entities/index.js.map +1 -1
- package/lib/helpers/inject-multiple-banners/get-banners-for-nodes/get-banners-for-nodes.js.map +1 -1
- package/lib/helpers/inject-multiple-banners/get-banners-for-nodes/helpers/group-node-entities.js.map +1 -1
- package/lib/helpers/inject-multiple-banners/get-banners-for-nodes/helpers/index.js.map +1 -1
- package/lib/helpers/inject-multiple-banners/get-banners-for-nodes/index.js.map +1 -1
- package/lib/helpers/inject-multiple-banners/index.js.map +1 -1
- package/lib/helpers/inject-multiple-banners/inject-multiple-banners.js.map +1 -1
- package/lib/helpers/is-browser.js.map +1 -1
- package/lib/helpers/is-filter-entitys-id.js.map +1 -1
- package/lib/helpers/is-object.js.map +1 -1
- package/lib/helpers/is-using-relation-image.js.map +1 -1
- package/lib/helpers/parse-TextBlock.js.map +1 -1
- package/lib/helpers/parse-interval.js.map +1 -1
- package/lib/helpers/parse-props-to-display.js.map +1 -1
- package/lib/helpers/remove-extra-items.js.map +1 -1
- package/lib/helpers/remove-unwanted-characters.js.map +1 -1
- package/lib/helpers/render-children.js.map +1 -1
- package/lib/helpers/should-render-waypoint.js.map +1 -1
- package/lib/helpers/should-show-property.js.map +1 -1
- package/lib/helpers/sort-response-data.js.map +1 -1
- package/lib/helpers/split-children.js.map +1 -1
- package/lib/helpers/update-childrens-parent.js.map +1 -1
- package/lib/hooks/helpers/RenderComponent.js.map +1 -1
- package/lib/hooks/helpers/StoreImages.js.map +1 -1
- package/lib/hooks/helpers/append-gtm-classname.js +1 -0
- package/lib/hooks/helpers/append-gtm-classname.js.map +1 -1
- package/lib/hooks/helpers/buildPBComponents.js.map +1 -1
- package/lib/hooks/helpers/check-banner-insertion-set.js.map +1 -1
- package/lib/hooks/helpers/check-collisions.js.map +1 -1
- package/lib/hooks/helpers/constants.js.map +1 -1
- package/lib/hooks/helpers/get-banner-index.js.map +1 -1
- package/lib/hooks/helpers/get-banners-by-type.js.map +1 -1
- package/lib/hooks/helpers/get-lightbox-images.js.map +1 -1
- package/lib/hooks/helpers/getComponent.js.map +1 -1
- package/lib/hooks/helpers/index.js.map +1 -1
- package/lib/hooks/helpers/inject-element-banners.js.map +1 -1
- package/lib/hooks/helpers/inject-textblock-banners.js.map +1 -1
- package/lib/hooks/helpers/insert-banners.js.map +1 -1
- package/lib/hooks/helpers/update-targetings.js.map +1 -1
- package/lib/hooks/index.js.map +1 -1
- package/lib/hooks/use-banner-insertion.js.map +1 -1
- package/lib/hooks/use-check-mobile-screen.js.map +1 -1
- package/lib/hooks/use-get-entity-schema.js.map +1 -1
- package/lib/hooks/use-get-entity-schemas-as-obj.js.map +1 -1
- package/lib/hooks/use-get-image-id-from-relation.js.map +1 -1
- package/lib/hooks/use-get-images.js.map +1 -1
- package/lib/hooks/use-get-single-entity-schema.js.map +1 -1
- package/lib/hooks/use-page-builder.js.map +1 -1
- package/lib/index.js.map +1 -1
- package/lib/utils/component-map.js.map +1 -1
- package/lib/utils/get-class-modifiers.js.map +1 -1
- package/lib/utils/get-image-data.js.map +1 -1
- package/lib/utils/get-props-to-display-modifiers.js.map +1 -1
- package/lib/utils/index.js.map +1 -1
- package/lib/utils/is-object-empty.js.map +1 -1
- package/lib-es/BannerContext/helpers/index.js.map +1 -1
- package/lib-es/BannerContext/helpers/set-initial-banner-counters.js.map +1 -1
- package/lib-es/BannerContext/index.js.map +1 -1
- package/lib-es/HOC/index.js.map +1 -1
- package/lib-es/HOC/withInfiniteScroll.js.map +1 -1
- package/lib-es/HOC/withTitle.js.map +1 -1
- package/lib-es/PBContext/index.js.map +1 -1
- package/lib-es/application/query/index.js +45 -1
- package/lib-es/application/query/index.js.map +1 -1
- package/lib-es/components/BackToTop/BackToTop.js.map +1 -1
- package/lib-es/components/BackToTop/index.js.map +1 -1
- package/lib-es/components/Banner/AdSlotRender.js.map +1 -1
- package/lib-es/components/Banner/Banner.js.map +1 -1
- package/lib-es/components/Banner/BannerRender.js.map +1 -1
- package/lib-es/components/Banner/helpers.js.map +1 -1
- package/lib-es/components/Banner/index.js.map +1 -1
- package/lib-es/components/BlazeLink.js.map +1 -1
- package/lib-es/components/Breadcrumb/Breadcrumb.js.map +1 -1
- package/lib-es/components/Breadcrumb/index.js.map +1 -1
- package/lib-es/components/Button.js +18 -6
- package/lib-es/components/Button.js.map +1 -1
- package/lib-es/components/Card/Card.js.map +1 -1
- package/lib-es/components/Card/CardContainer.js +3 -7
- package/lib-es/components/Card/CardContainer.js.map +1 -1
- package/lib-es/components/Card/CardFactory.js +7 -4
- package/lib-es/components/Card/CardFactory.js.map +1 -1
- package/lib-es/components/Card/CardRender.js.map +1 -1
- package/lib-es/components/Card/constants.js.map +1 -1
- package/lib-es/components/Card/helpers/filter-query-setup.js.map +1 -1
- package/lib-es/components/Card/helpers/filters-setup.js.map +1 -1
- package/lib-es/components/Card/helpers/get-dynamic-grid-classes.js.map +1 -1
- package/lib-es/components/Card/helpers/get-published-listing-url.js.map +1 -1
- package/lib-es/components/Card/helpers/index.js.map +1 -1
- package/lib-es/components/Card/helpers/should-return.js.map +1 -1
- package/lib-es/components/Card/helpers/should-skip-single-query.js.map +1 -1
- package/lib-es/components/Card/helpers/use-dynamic-size-key.js.map +1 -1
- package/lib-es/components/Card/index.js.map +1 -1
- package/lib-es/components/Carousel/Carousel.js.map +1 -1
- package/lib-es/components/Carousel/CarouselImage/CarouselImage.js.map +1 -1
- package/lib-es/components/Carousel/CarouselImage/index.js.map +1 -1
- package/lib-es/components/Carousel/CarouselRender/CarouselRender.js.map +1 -1
- package/lib-es/components/Carousel/CarouselRender/index.js.map +1 -1
- package/lib-es/components/Carousel/index.js.map +1 -1
- package/lib-es/components/CarouselWrapper.js +2 -2
- package/lib-es/components/CarouselWrapper.js.map +1 -1
- package/lib-es/components/ClickWrapper.js.map +1 -1
- package/lib-es/components/Code/Code.js.map +1 -1
- package/lib-es/components/Code/ScriptTag.js.map +1 -1
- package/lib-es/components/Code/helpers/index.js.map +1 -1
- package/lib-es/components/Code/helpers/wrap-script-tags.js.map +1 -1
- package/lib-es/components/Code/index.js.map +1 -1
- package/lib-es/components/DataSummary/DataSummaryFactory.js.map +1 -1
- package/lib-es/components/DataSummary/DataSummaryRender.js.map +1 -1
- package/lib-es/components/DataSummary/DataSummaryTypes/HeadingLargeSummary/HeadingLargeSummary.js.map +1 -1
- package/lib-es/components/DataSummary/DataSummaryTypes/HeadingLargeSummary/HeadingLargeSummaryContent.js.map +1 -1
- package/lib-es/components/DataSummary/DataSummaryTypes/HeadingLargeSummary/index.js.map +1 -1
- package/lib-es/components/DataSummary/DataSummaryTypes/ItemDetailsSummary/ItemDetailsSummary.js.map +1 -1
- package/lib-es/components/DataSummary/DataSummaryTypes/ItemDetailsSummary/ItemDetailsSummaryContent.js.map +1 -1
- package/lib-es/components/DataSummary/DataSummaryTypes/ItemDetailsSummary/index.js.map +1 -1
- package/lib-es/components/DataSummary/DataSummaryTypes/LargeSummary/LargeSummary.js.map +1 -1
- package/lib-es/components/DataSummary/DataSummaryTypes/LargeSummary/LargeSummaryContent.js.map +1 -1
- package/lib-es/components/DataSummary/DataSummaryTypes/LargeSummary/index.js.map +1 -1
- package/lib-es/components/DataSummary/DataSummaryTypes/ListSummary/ListSummary.js.map +1 -1
- package/lib-es/components/DataSummary/DataSummaryTypes/ListSummary/ListSummaryContent.js.map +1 -1
- package/lib-es/components/DataSummary/DataSummaryTypes/ListSummary/index.js.map +1 -1
- package/lib-es/components/DataSummary/DataSummaryTypes/TextSummary/TextSummary.js.map +1 -1
- package/lib-es/components/DataSummary/DataSummaryTypes/TextSummary/TextSummaryContent.js.map +1 -1
- package/lib-es/components/DataSummary/DataSummaryTypes/TextSummary/index.js.map +1 -1
- package/lib-es/components/DataSummary/DataSummaryTypes/index.js.map +1 -1
- package/lib-es/components/DataSummary/helpers/build-loop-props-content.js.map +1 -1
- package/lib-es/components/DataSummary/helpers/build-props-to-display-with-content.js.map +1 -1
- package/lib-es/components/DataSummary/helpers/get-data-summary-query.js.map +1 -1
- package/lib-es/components/DataSummary/helpers/get-link-based-on-value.js.map +1 -1
- package/lib-es/components/DataSummary/helpers/get-link-to-published-content.js.map +1 -1
- package/lib-es/components/DataSummary/helpers/get-loop-props-limit.js.map +1 -1
- package/lib-es/components/DataSummary/helpers/get-prop-value.js.map +1 -1
- package/lib-es/components/DataSummary/helpers/get-value-from-array.js.map +1 -1
- package/lib-es/components/DataSummary/helpers/index.js.map +1 -1
- package/lib-es/components/DataSummary/helpers/parse-boolean-values.js.map +1 -1
- package/lib-es/components/DataSummary/helpers/strip-summary-props-content.js.map +1 -1
- package/lib-es/components/DataSummary/index.js.map +1 -1
- package/lib-es/components/EmailConfirm/EmailConfirm.js.map +1 -1
- package/lib-es/components/EmailConfirm/index.js.map +1 -1
- package/lib-es/components/EmailConfirm/mutation.js.map +1 -1
- package/lib-es/components/Image/GlobalLightbox/GlobalLightbox.js.map +1 -1
- package/lib-es/components/Image/GlobalLightbox/NavButton.js.map +1 -1
- package/lib-es/components/Image/GlobalLightbox/index.js.map +1 -1
- package/lib-es/components/Image/Image.js.map +1 -1
- package/lib-es/components/Image/ImageDetails.js.map +1 -1
- package/lib-es/components/Image/ImageFactory.js.map +1 -1
- package/lib-es/components/Image/ImageRender.js +4 -1
- package/lib-es/components/Image/ImageRender.js.map +1 -1
- package/lib-es/components/Image/Lightbox/Lightbox.js.map +1 -1
- package/lib-es/components/Image/Lightbox/index.js.map +1 -1
- package/lib-es/components/Image/index.js.map +1 -1
- package/lib-es/components/ItemList/ItemListButton/ItemListButton.js +111 -0
- package/lib-es/components/ItemList/ItemListButton/ItemListButton.js.map +1 -0
- package/lib-es/components/ItemList/ItemListButton/index.js +3 -0
- package/lib-es/components/ItemList/ItemListButton/index.js.map +1 -0
- package/lib-es/components/ItemList/ItemListCounter/ItemListCounter.js +60 -0
- package/lib-es/components/ItemList/ItemListCounter/ItemListCounter.js.map +1 -0
- package/lib-es/components/ItemList/ItemListCounter/index.js +3 -0
- package/lib-es/components/ItemList/ItemListCounter/index.js.map +1 -0
- package/lib-es/components/ItemList/ItemListNew/ItemListNew.js +64 -0
- package/lib-es/components/ItemList/ItemListNew/ItemListNew.js.map +1 -0
- package/lib-es/components/ItemList/ItemListNew/index.js +3 -0
- package/lib-es/components/ItemList/ItemListNew/index.js.map +1 -0
- package/lib-es/components/ItemList/constants.js +6 -0
- package/lib-es/components/ItemList/constants.js.map +1 -0
- package/lib-es/components/ItemList/helpers/get-item-list-data.js +7 -0
- package/lib-es/components/ItemList/helpers/get-item-list-data.js.map +1 -0
- package/lib-es/components/ItemList/helpers/get-item-list-id.js +11 -0
- package/lib-es/components/ItemList/helpers/get-item-list-id.js.map +1 -0
- package/lib-es/components/ItemList/helpers/get-item-list-ids.js +13 -0
- package/lib-es/components/ItemList/helpers/get-item-list-ids.js.map +1 -0
- package/lib-es/components/ItemList/helpers/index.js +6 -0
- package/lib-es/components/ItemList/helpers/index.js.map +1 -0
- package/lib-es/components/ItemList/helpers/set-item-list-id.js +10 -0
- package/lib-es/components/ItemList/helpers/set-item-list-id.js.map +1 -0
- package/lib-es/components/ItemList/helpers/set-param-and-redirect.js +20 -0
- package/lib-es/components/ItemList/helpers/set-param-and-redirect.js.map +1 -0
- package/lib-es/components/ItemList/hooks/index.js +2 -0
- package/lib-es/components/ItemList/hooks/index.js.map +1 -0
- package/lib-es/components/ItemList/hooks/use-item-list-id.js +26 -0
- package/lib-es/components/ItemList/hooks/use-item-list-id.js.map +1 -0
- package/lib-es/components/Layout/Layout.js.map +1 -1
- package/lib-es/components/Layout/constants.js.map +1 -1
- package/lib-es/components/Layout/helpers/check-if-row-has-columns.js.map +1 -1
- package/lib-es/components/Layout/helpers/get-styles-to-update.js.map +1 -1
- package/lib-es/components/Layout/helpers/index.js.map +1 -1
- package/lib-es/components/Layout/index.js.map +1 -1
- package/lib-es/components/LazyImage/LazyImage.js +4 -1
- package/lib-es/components/LazyImage/LazyImage.js.map +1 -1
- package/lib-es/components/LazyImage/index.js.map +1 -1
- package/lib-es/components/List/ListBuilder.js +12 -6
- package/lib-es/components/List/ListBuilder.js.map +1 -1
- package/lib-es/components/List/ListFactory.js +33 -9
- package/lib-es/components/List/ListFactory.js.map +1 -1
- package/lib-es/components/List/ListRender.js.map +1 -1
- package/lib-es/components/List/components/Cards/CardRenderWithInfiniteScroll.js.map +1 -1
- package/lib-es/components/List/components/Cards/CardsRender.js.map +1 -1
- package/lib-es/components/List/components/Cards/CardsRenderItem.js.map +1 -1
- package/lib-es/components/List/components/Cards/CardsRenderWrapper.js.map +1 -1
- package/lib-es/components/List/components/Cards/index.js.map +1 -1
- package/lib-es/components/List/components/Full/FullRender.js.map +1 -1
- package/lib-es/components/List/components/Full/FullRenderItem.js.map +1 -1
- package/lib-es/components/List/components/Full/FullRenderWithInfiniteScroll.js.map +1 -1
- package/lib-es/components/List/components/Full/index.js.map +1 -1
- package/lib-es/components/List/components/Header/ListHeader.js.map +1 -1
- package/lib-es/components/List/components/Header/index.js.map +1 -1
- package/lib-es/components/List/components/Pagination/Classic.js.map +1 -1
- package/lib-es/components/List/components/Pagination/ListPagination.js.map +1 -1
- package/lib-es/components/List/components/Pagination/LoadMore.js.map +1 -1
- package/lib-es/components/List/components/Pagination/index.js.map +1 -1
- package/lib-es/components/List/components/helpers/check-if-should-render-banner.js.map +1 -1
- package/lib-es/components/List/components/helpers/check-if-should-render-gtm.js.map +1 -1
- package/lib-es/components/List/components/helpers/index.js.map +1 -1
- package/lib-es/components/List/components/index.js.map +1 -1
- package/lib-es/components/List/constants.js.map +1 -1
- package/lib-es/components/List/helpers/build-az-aggregations.js.map +1 -1
- package/lib-es/components/List/helpers/build-az-url.js.map +1 -1
- package/lib-es/components/List/helpers/build-pagination-items.js.map +1 -1
- package/lib-es/components/List/helpers/build-pagination-url.js.map +1 -1
- package/lib-es/components/List/helpers/get-az-query-filter.js.map +1 -1
- package/lib-es/components/List/helpers/get-items-per-page-to-use.js.map +1 -1
- package/lib-es/components/List/helpers/get-sort-props.js.map +1 -1
- package/lib-es/components/List/helpers/has-required-item-list-details.js +20 -0
- package/lib-es/components/List/helpers/has-required-item-list-details.js.map +1 -0
- package/lib-es/components/List/helpers/index.js +1 -0
- package/lib-es/components/List/helpers/index.js.map +1 -1
- package/lib-es/components/List/helpers/sort-aggs.js.map +1 -1
- package/lib-es/components/List/index.js.map +1 -1
- package/lib-es/components/Login/LoggedInMessage.js.map +1 -1
- package/lib-es/components/Login/Login.js.map +1 -1
- package/lib-es/components/Login/LoginForm.js.map +1 -1
- package/lib-es/components/Login/helpers/check-gtm-children.js.map +1 -1
- package/lib-es/components/Login/helpers/get-url-to-use.js.map +1 -1
- package/lib-es/components/Login/helpers/index.js.map +1 -1
- package/lib-es/components/Login/index.js.map +1 -1
- package/lib-es/components/Menu/Menu.js +54 -46
- package/lib-es/components/Menu/Menu.js.map +1 -1
- package/lib-es/components/Menu/MenuContext.js +6 -0
- package/lib-es/components/Menu/MenuContext.js.map +1 -0
- package/lib-es/components/Menu/index.js.map +1 -1
- package/lib-es/components/MenuItem/MenuItem.js +24 -9
- package/lib-es/components/MenuItem/MenuItem.js.map +1 -1
- package/lib-es/components/MenuItem/index.js.map +1 -1
- package/lib-es/components/Modal/Modal.js.map +1 -1
- package/lib-es/components/Modal/index.js.map +1 -1
- package/lib-es/components/PasswordReset/PasswordReset.js.map +1 -1
- package/lib-es/components/PasswordReset/helpers/index.js.map +1 -1
- package/lib-es/components/PasswordReset/helpers/validatePassword.js.map +1 -1
- package/lib-es/components/PasswordReset/index.js.map +1 -1
- package/lib-es/components/PasswordResetRequest/PasswordResetRequest.js.map +1 -1
- package/lib-es/components/PasswordResetRequest/index.js.map +1 -1
- package/lib-es/components/SearchContent/SearchContent.js +129 -0
- package/lib-es/components/SearchContent/SearchContent.js.map +1 -0
- package/lib-es/components/SearchContent/SearchContentItems.js +33 -0
- package/lib-es/components/SearchContent/SearchContentItems.js.map +1 -0
- package/lib-es/components/SearchContent/SearchContentResults.js +31 -0
- package/lib-es/components/SearchContent/SearchContentResults.js.map +1 -0
- package/lib-es/components/SearchContent/SearchContentToggleIcon.js +30 -0
- package/lib-es/components/SearchContent/SearchContentToggleIcon.js.map +1 -0
- package/lib-es/components/SearchContent/index.js +1 -205
- package/lib-es/components/SearchContent/index.js.map +1 -1
- package/lib-es/components/SearchFilter/SearchFilter/CloseMobileForm.js.map +1 -1
- package/lib-es/components/SearchFilter/SearchFilter/FiltersList.js +2 -4
- package/lib-es/components/SearchFilter/SearchFilter/FiltersList.js.map +1 -1
- package/lib-es/components/SearchFilter/SearchFilter/MobileFormToolbar.js.map +1 -1
- package/lib-es/components/SearchFilter/SearchFilter/ResetDesktopForm.js.map +1 -1
- package/lib-es/components/SearchFilter/SearchFilter/SearchFilter.js +21 -46
- package/lib-es/components/SearchFilter/SearchFilter/SearchFilter.js.map +1 -1
- package/lib-es/components/SearchFilter/SearchFilter/index.js.map +1 -1
- package/lib-es/components/SearchFilter/SearchFilterContainer.js +70 -15
- package/lib-es/components/SearchFilter/SearchFilterContainer.js.map +1 -1
- package/lib-es/components/SearchFilter/components/Checkbox.js +18 -9
- package/lib-es/components/SearchFilter/components/Checkbox.js.map +1 -1
- package/lib-es/components/SearchFilter/components/Range.js.map +1 -1
- package/lib-es/components/SearchFilter/components/Select.js +23 -8
- package/lib-es/components/SearchFilter/components/Select.js.map +1 -1
- package/lib-es/components/SearchFilter/components/TextSearch.js +1 -5
- package/lib-es/components/SearchFilter/components/TextSearch.js.map +1 -1
- package/lib-es/components/SearchFilter/components/index.js.map +1 -1
- package/lib-es/components/SearchFilter/constants.js +1 -1
- package/lib-es/components/SearchFilter/constants.js.map +1 -1
- package/lib-es/components/SearchFilter/helpers/build-filters-query.js +54 -0
- package/lib-es/components/SearchFilter/helpers/build-filters-query.js.map +1 -0
- package/lib-es/components/SearchFilter/helpers/build-new-query.js.map +1 -1
- package/lib-es/components/SearchFilter/helpers/build-query.js +1 -1
- package/lib-es/components/SearchFilter/helpers/build-query.js.map +1 -1
- package/lib-es/components/SearchFilter/helpers/build-raw-query-stringified.js +2 -1
- package/lib-es/components/SearchFilter/helpers/build-raw-query-stringified.js.map +1 -1
- package/lib-es/components/SearchFilter/helpers/calculate-min-max.js.map +1 -1
- package/lib-es/components/SearchFilter/helpers/calculate-step.js.map +1 -1
- package/lib-es/components/SearchFilter/helpers/check-if-range-updated.js.map +1 -1
- package/lib-es/components/SearchFilter/helpers/decode-encode.js.map +1 -1
- package/lib-es/components/SearchFilter/helpers/get-display-value.js.map +1 -1
- package/lib-es/components/SearchFilter/helpers/get-filter-value-from-query.js.map +1 -1
- package/lib-es/components/SearchFilter/helpers/get-initial-filter-values.js +13 -1
- package/lib-es/components/SearchFilter/helpers/get-initial-filter-values.js.map +1 -1
- package/lib-es/components/SearchFilter/helpers/get-intersected-prop.js.map +1 -1
- package/lib-es/components/SearchFilter/helpers/get-range-value.js.map +1 -1
- package/lib-es/components/SearchFilter/helpers/get-responsive-filter-classnames.js.map +1 -1
- package/lib-es/components/SearchFilter/helpers/get-select-options.js.map +1 -1
- package/lib-es/components/SearchFilter/helpers/index.js +2 -1
- package/lib-es/components/SearchFilter/helpers/index.js.map +1 -1
- package/lib-es/components/SearchFilter/helpers/is-device-desktop.js.map +1 -1
- package/lib-es/components/SearchFilter/helpers/parse-filter-value.js +3 -3
- package/lib-es/components/SearchFilter/helpers/parse-filter-value.js.map +1 -1
- package/lib-es/components/SearchFilter/index.js.map +1 -1
- package/lib-es/components/SearchFilterSort/SearchFilterSort.js.map +1 -1
- package/lib-es/components/SearchFilterSort/constants.js.map +1 -1
- package/lib-es/components/SearchFilterSort/helpers/handle-sort-update.js.map +1 -1
- package/lib-es/components/SearchFilterSort/helpers/index.js.map +1 -1
- package/lib-es/components/SearchFilterSort/helpers/update-sort.js.map +1 -1
- package/lib-es/components/SearchFilterSort/index.js.map +1 -1
- package/lib-es/components/SocialFollow/SFItem.js.map +1 -1
- package/lib-es/components/SocialFollow/SocialFollow.js.map +1 -1
- package/lib-es/components/SocialFollow/SocialFollowRender.js.map +1 -1
- package/lib-es/components/SocialFollow/index.js.map +1 -1
- package/lib-es/components/SocialFollow/sf.config.js.map +1 -1
- package/lib-es/components/SubMenu/SubMenu.js.map +1 -1
- package/lib-es/components/SubMenu/index.js.map +1 -1
- package/lib-es/components/TextBlock/TextBlockRender.js.map +1 -1
- package/lib-es/components/TextBlock/index.js.map +1 -1
- package/lib-es/components/Video/Video.js.map +1 -1
- package/lib-es/components/Video/VideoModal.js.map +1 -1
- package/lib-es/components/Video/VideoRender.js.map +1 -1
- package/lib-es/components/Video/index.js.map +1 -1
- package/lib-es/components/Video/providers/Default.js.map +1 -1
- package/lib-es/components/Video/providers/JWPlayer/JWPlayerController.js.map +1 -1
- package/lib-es/components/Video/providers/JWPlayer/JWPlayerProvider.js.map +1 -1
- package/lib-es/components/Video/providers/YouTube/YouTubeProvider.js.map +1 -1
- package/lib-es/components/Video/providers/YouTube/YoutubeEmbeded.js.map +1 -1
- package/lib-es/components/Video/providers/YouTube/helpers/index.js.map +1 -1
- package/lib-es/components/Video/providers/get-provider.js.map +1 -1
- package/lib-es/components/Video/providers/index.js.map +1 -1
- package/lib-es/components/Wrapper.js.map +1 -1
- package/lib-es/components/index.js +10 -1
- package/lib-es/components/index.js.map +1 -1
- package/lib-es/constants/componentsDefaultValues.js.map +1 -1
- package/lib-es/constants/index.js +2 -1
- package/lib-es/constants/index.js.map +1 -1
- package/lib-es/helpers/append-images.js.map +1 -1
- package/lib-es/helpers/build-az-filter.js.map +1 -1
- package/lib-es/helpers/build-image-properties.js.map +1 -1
- package/lib-es/helpers/build-inherited-filters.js.map +1 -1
- package/lib-es/helpers/build-link-extra-props.js.map +1 -1
- package/lib-es/helpers/build-props-query.js.map +1 -1
- package/lib-es/helpers/build-query-fields.js.map +1 -1
- package/lib-es/helpers/build-raw-query-base.js.map +1 -1
- package/lib-es/helpers/build-raw-query.js.map +1 -1
- package/lib-es/helpers/build-search-values-checkbox-select.js.map +1 -1
- package/lib-es/helpers/build-search-values-text.js.map +1 -1
- package/lib-es/helpers/build-set-filters.js.map +1 -1
- package/lib-es/helpers/check-for-error.js.map +1 -1
- package/lib-es/helpers/check-props-to-use.js.map +1 -1
- package/lib-es/helpers/entities/constants.js.map +1 -1
- package/lib-es/helpers/get-banner-data.js.map +1 -1
- package/lib-es/helpers/get-click-wrapper-options.js.map +1 -1
- package/lib-es/helpers/get-current-offset.js.map +1 -1
- package/lib-es/helpers/get-dictionary-match.js.map +1 -1
- package/lib-es/helpers/get-display-count-data.js.map +1 -1
- package/lib-es/helpers/get-elasticsearch-operator.js.map +1 -1
- package/lib-es/helpers/get-entities-with-banner.js.map +1 -1
- package/lib-es/helpers/get-entity-data.js.map +1 -1
- package/lib-es/helpers/get-entity-render-props.js.map +1 -1
- package/lib-es/helpers/get-extra-az-bits.js.map +1 -1
- package/lib-es/helpers/get-filter-props.js.map +1 -1
- package/lib-es/helpers/get-filter-relation-keys.js.map +1 -1
- package/lib-es/helpers/get-generic-props.js.map +1 -1
- package/lib-es/helpers/get-generic-render-variables.js.map +1 -1
- package/lib-es/helpers/get-image-ids.js.map +1 -1
- package/lib-es/helpers/get-inherited-filters.js.map +1 -1
- package/lib-es/helpers/get-items-to-display-ids.js.map +1 -1
- package/lib-es/helpers/get-modifiers.js.map +1 -1
- package/lib-es/helpers/get-not-equal-query.js.map +1 -1
- package/lib-es/helpers/get-pagination-index.js.map +1 -1
- package/lib-es/helpers/get-parsed-prop-values.js.map +1 -1
- package/lib-es/helpers/get-parsed-summary-value.js.map +1 -1
- package/lib-es/helpers/get-prop-values.js.map +1 -1
- package/lib-es/helpers/get-query-filters.js.map +1 -1
- package/lib-es/helpers/get-query-props.js.map +1 -1
- package/lib-es/helpers/get-required-schemas.js.map +1 -1
- package/lib-es/helpers/get-sanitized-prop-values.js.map +1 -1
- package/lib-es/helpers/get-search-filter-type.js.map +1 -1
- package/lib-es/helpers/get-sort-by-field-name.js.map +1 -1
- package/lib-es/helpers/get-unpublished-entity-name.js.map +1 -1
- package/lib-es/helpers/get-updated-filter-by.js.map +1 -1
- package/lib-es/helpers/get-wrapped-value-with-link.js.map +1 -1
- package/lib-es/helpers/group-entities.js.map +1 -1
- package/lib-es/helpers/has-children.js.map +1 -1
- package/lib-es/helpers/index.js.map +1 -1
- package/lib-es/helpers/inject-banner.js.map +1 -1
- package/lib-es/helpers/inject-banners-to-entities.js.map +1 -1
- package/lib-es/helpers/inject-multiple-banners/get-banners-for-entities/get-banners-for-entities.js.map +1 -1
- package/lib-es/helpers/inject-multiple-banners/get-banners-for-entities/index.js.map +1 -1
- package/lib-es/helpers/inject-multiple-banners/get-banners-for-nodes/get-banners-for-nodes.js.map +1 -1
- package/lib-es/helpers/inject-multiple-banners/get-banners-for-nodes/helpers/group-node-entities.js.map +1 -1
- package/lib-es/helpers/inject-multiple-banners/get-banners-for-nodes/helpers/index.js.map +1 -1
- package/lib-es/helpers/inject-multiple-banners/get-banners-for-nodes/index.js.map +1 -1
- package/lib-es/helpers/inject-multiple-banners/index.js.map +1 -1
- package/lib-es/helpers/inject-multiple-banners/inject-multiple-banners.js.map +1 -1
- package/lib-es/helpers/is-browser.js.map +1 -1
- package/lib-es/helpers/is-filter-entitys-id.js.map +1 -1
- package/lib-es/helpers/is-object.js.map +1 -1
- package/lib-es/helpers/is-using-relation-image.js.map +1 -1
- package/lib-es/helpers/parse-TextBlock.js.map +1 -1
- package/lib-es/helpers/parse-interval.js.map +1 -1
- package/lib-es/helpers/parse-props-to-display.js.map +1 -1
- package/lib-es/helpers/remove-extra-items.js.map +1 -1
- package/lib-es/helpers/remove-unwanted-characters.js.map +1 -1
- package/lib-es/helpers/render-children.js.map +1 -1
- package/lib-es/helpers/should-render-waypoint.js.map +1 -1
- package/lib-es/helpers/should-show-property.js.map +1 -1
- package/lib-es/helpers/sort-response-data.js.map +1 -1
- package/lib-es/helpers/split-children.js.map +1 -1
- package/lib-es/helpers/update-childrens-parent.js.map +1 -1
- package/lib-es/hooks/helpers/RenderComponent.js.map +1 -1
- package/lib-es/hooks/helpers/StoreImages.js.map +1 -1
- package/lib-es/hooks/helpers/append-gtm-classname.js +1 -0
- package/lib-es/hooks/helpers/append-gtm-classname.js.map +1 -1
- package/lib-es/hooks/helpers/buildPBComponents.js.map +1 -1
- package/lib-es/hooks/helpers/check-banner-insertion-set.js.map +1 -1
- package/lib-es/hooks/helpers/check-collisions.js.map +1 -1
- package/lib-es/hooks/helpers/constants.js.map +1 -1
- package/lib-es/hooks/helpers/get-banner-index.js.map +1 -1
- package/lib-es/hooks/helpers/get-banners-by-type.js.map +1 -1
- package/lib-es/hooks/helpers/get-lightbox-images.js.map +1 -1
- package/lib-es/hooks/helpers/getComponent.js.map +1 -1
- package/lib-es/hooks/helpers/index.js.map +1 -1
- package/lib-es/hooks/helpers/inject-element-banners.js.map +1 -1
- package/lib-es/hooks/helpers/inject-textblock-banners.js.map +1 -1
- package/lib-es/hooks/helpers/insert-banners.js.map +1 -1
- package/lib-es/hooks/helpers/update-targetings.js.map +1 -1
- package/lib-es/hooks/index.js.map +1 -1
- package/lib-es/hooks/use-banner-insertion.js.map +1 -1
- package/lib-es/hooks/use-check-mobile-screen.js.map +1 -1
- package/lib-es/hooks/use-get-entity-schema.js.map +1 -1
- package/lib-es/hooks/use-get-entity-schemas-as-obj.js.map +1 -1
- package/lib-es/hooks/use-get-image-id-from-relation.js.map +1 -1
- package/lib-es/hooks/use-get-images.js.map +1 -1
- package/lib-es/hooks/use-get-single-entity-schema.js.map +1 -1
- package/lib-es/hooks/use-page-builder.js.map +1 -1
- package/lib-es/index.js.map +1 -1
- package/lib-es/utils/component-map.js.map +1 -1
- package/lib-es/utils/get-class-modifiers.js.map +1 -1
- package/lib-es/utils/get-image-data.js.map +1 -1
- package/lib-es/utils/get-props-to-display-modifiers.js.map +1 -1
- package/lib-es/utils/index.js.map +1 -1
- package/lib-es/utils/is-object-empty.js.map +1 -1
- package/package.json +5 -4
- package/src/application/query/index.js +51 -1
- package/src/components/Button.js +27 -5
- package/src/components/Card/CardContainer.js +2 -6
- package/src/components/Card/CardFactory.js +5 -3
- package/src/components/CarouselWrapper.js +2 -2
- package/src/components/Image/ImageRender.js +3 -0
- package/src/components/ItemList/ItemListButton/ItemListButton.js +94 -0
- package/src/components/ItemList/ItemListButton/index.js +3 -0
- package/src/components/ItemList/ItemListCounter/ItemListCounter.js +52 -0
- package/src/components/ItemList/ItemListCounter/index.js +3 -0
- package/src/components/ItemList/ItemListNew/ItemListNew.js +51 -0
- package/src/components/ItemList/ItemListNew/index.js +3 -0
- package/src/components/ItemList/constants.js +5 -0
- package/src/components/ItemList/helpers/get-item-list-data.js +6 -0
- package/src/components/ItemList/helpers/get-item-list-id.js +11 -0
- package/src/components/ItemList/helpers/get-item-list-ids.js +10 -0
- package/src/components/ItemList/helpers/index.js +5 -0
- package/src/components/ItemList/helpers/set-item-list-id.js +9 -0
- package/src/components/ItemList/helpers/set-param-and-redirect.js +20 -0
- package/src/components/ItemList/hooks/index.js +1 -0
- package/src/components/ItemList/hooks/use-item-list-id.js +27 -0
- package/src/components/LazyImage/LazyImage.js +11 -1
- package/src/components/List/ListBuilder.js +10 -5
- package/src/components/List/ListFactory.js +48 -12
- package/src/components/List/helpers/has-required-item-list-details.js +14 -0
- package/src/components/List/helpers/index.js +1 -0
- package/src/components/Menu/Menu.js +61 -54
- package/src/components/Menu/MenuContext.js +5 -0
- package/src/components/MenuItem/MenuItem.js +39 -14
- package/src/components/SearchContent/SearchContent.js +136 -0
- package/src/components/SearchContent/SearchContentItems.js +28 -0
- package/src/components/SearchContent/SearchContentResults.js +27 -0
- package/src/components/SearchContent/SearchContentToggleIcon.js +27 -0
- package/src/components/SearchContent/index.js +1 -217
- package/src/components/SearchFilter/SearchFilter/FiltersList.js +30 -37
- package/src/components/SearchFilter/SearchFilter/SearchFilter.js +20 -28
- package/src/components/SearchFilter/SearchFilterContainer.js +61 -16
- package/src/components/SearchFilter/components/Checkbox.js +23 -8
- package/src/components/SearchFilter/components/Select.js +18 -11
- package/src/components/SearchFilter/components/TextSearch.js +1 -3
- package/src/components/SearchFilter/constants.js +1 -1
- package/src/components/SearchFilter/helpers/build-filters-query.js +40 -0
- package/src/components/SearchFilter/helpers/build-query.js +3 -1
- package/src/components/SearchFilter/helpers/build-raw-query-stringified.js +2 -1
- package/src/components/SearchFilter/helpers/get-initial-filter-values.js +12 -1
- package/src/components/SearchFilter/helpers/index.js +3 -1
- package/src/components/SearchFilter/helpers/parse-filter-value.js +3 -3
- package/src/components/index.js +10 -1
- package/src/constants/index.js +2 -0
- package/src/helpers/build-raw-query.js +1 -0
- package/src/hooks/helpers/append-gtm-classname.js +3 -0
- package/tests/helpers/mocks.js +4 -4
- package/tests/unit/src/components/Button.test.js +55 -1
- package/tests/unit/src/components/ItemList/ItemListButton.test.js +175 -0
- package/tests/unit/src/components/ItemList/ItemListCounter.test.js +65 -0
- package/tests/unit/src/components/ItemList/ItemListNew.test.js +164 -0
- package/tests/unit/src/components/ItemList/__snapshots__/ItemListButton.test.js.snap +107 -0
- package/tests/unit/src/components/ItemList/__snapshots__/ItemListCounter.test.js.snap +31 -0
- package/tests/unit/src/components/ItemList/__snapshots__/ItemListNew.test.js.snap +27 -0
- package/tests/unit/src/components/ItemList/helpers/get-item-list-data.test.js +28 -0
- package/tests/unit/src/components/ItemList/helpers/get-item-list-id.test.js +20 -0
- package/tests/unit/src/components/ItemList/helpers/get-item-list-ids.test.js +19 -0
- package/tests/unit/src/components/ItemList/helpers/set-item-list-id.test.js +13 -0
- package/tests/unit/src/components/ItemList/helpers/set-param-and-redirect.test.js +30 -0
- package/tests/unit/src/components/ItemList/hooks/use-item-list-id.test.js +32 -0
- package/tests/unit/src/components/List/helpers/has-required-item-list-details.test.js +30 -0
- package/tests/unit/src/components/Menu/Menu.test.js +9 -3
- package/tests/unit/src/components/Menu/__snapshots__/Menu.test.js.snap +12 -11
- package/tests/unit/src/components/MenuItem/MenuItem.test.js +1 -1
- package/tests/unit/src/components/MenuItem/SubMenu.test.js +5 -1
- package/tests/unit/src/components/MenuItem/__snapshots__/MenuItem.test.js.snap +54 -10
- package/tests/unit/src/components/SearchContent/SearchContent.test.js +29 -0
- package/tests/unit/src/components/SearchContent/__snapshots__/SearchContent.test.js.snap +9 -0
- package/tests/unit/src/components/SearchFilter/SearchFilter/SearchFilter.test.js +26 -7
- package/tests/unit/src/components/SearchFilter/SearchFilter/__snapshots__/SearchFilter.test.js.snap +4 -0
- package/tests/unit/src/components/SearchFilter/components/__snapshots__/Checkbox.test.js.snap +2 -0
- package/tests/unit/src/components/SearchFilter/components/__snapshots__/Select.test.js.snap +4 -0
- package/tests/unit/src/components/SearchFilter/helpers/build-query.test.js +2 -2
- package/tests/unit/src/components/SearchFilter/helpers/get-initial-filter-values.test.js +25 -11
- package/tests/unit/src/components/SearchFilter/helpers/parse-filter-value.test.js +1 -1
- package/tests/unit/src/components/__snapshots__/index.test.js.snap +12 -0
|
@@ -1,207 +1,3 @@
|
|
|
1
|
-
import
|
|
2
|
-
import PropTypes from 'prop-types';
|
|
3
|
-
import { gql, useApolloClient } from '@apollo/client';
|
|
4
|
-
import { useRouter } from 'next/router';
|
|
5
|
-
import { getPublishedContent } from '../../application/query';
|
|
6
|
-
import BlazeLink from '../BlazeLink';
|
|
7
|
-
|
|
8
|
-
const logError = error => error;
|
|
9
|
-
|
|
10
|
-
const SearchContent = ({
|
|
11
|
-
entities,
|
|
12
|
-
searchInputAlignment,
|
|
13
|
-
searchInputWrapperMobile,
|
|
14
|
-
searchInputWrapperDesktop,
|
|
15
|
-
collapsible,
|
|
16
|
-
isMobile,
|
|
17
|
-
placeholder
|
|
18
|
-
}) => {
|
|
19
|
-
const [collapsed, setCollapsed] = useState(collapsible);
|
|
20
|
-
const [searchTerm, setSearchTerm] = useState(null);
|
|
21
|
-
const [data, setData] = useState([]);
|
|
22
|
-
const router = useRouter();
|
|
23
|
-
const client = useApolloClient();
|
|
24
|
-
|
|
25
|
-
const capitalize = s => {
|
|
26
|
-
if (typeof s !== 'string') return '';
|
|
27
|
-
return s.charAt(0).toUpperCase() + s.slice(1);
|
|
28
|
-
};
|
|
29
|
-
|
|
30
|
-
React.useEffect(() => {
|
|
31
|
-
if (data && data.length !== 0) return;
|
|
32
|
-
const promises = entities.map(entity => {
|
|
33
|
-
const [a, b] = entity.split('_');
|
|
34
|
-
const entityName = capitalize(a) + capitalize(b);
|
|
35
|
-
const rawQueryStringified = JSON.stringify({
|
|
36
|
-
size: 0,
|
|
37
|
-
query: {
|
|
38
|
-
bool: {
|
|
39
|
-
should: [{
|
|
40
|
-
match: {
|
|
41
|
-
docType: entity
|
|
42
|
-
}
|
|
43
|
-
}],
|
|
44
|
-
minimum_should_match: 1
|
|
45
|
-
}
|
|
46
|
-
}
|
|
47
|
-
});
|
|
48
|
-
const query = gql`
|
|
49
|
-
${getPublishedContent(entityName)}
|
|
50
|
-
`;
|
|
51
|
-
|
|
52
|
-
try {
|
|
53
|
-
return client.query({
|
|
54
|
-
query,
|
|
55
|
-
variables: {
|
|
56
|
-
rawQueryStringified,
|
|
57
|
-
offset: 0,
|
|
58
|
-
limit: 5
|
|
59
|
-
}
|
|
60
|
-
});
|
|
61
|
-
} catch (e) {
|
|
62
|
-
return [];
|
|
63
|
-
}
|
|
64
|
-
});
|
|
65
|
-
|
|
66
|
-
try {
|
|
67
|
-
(async () => {
|
|
68
|
-
try {
|
|
69
|
-
const fetchResults = await Promise.all(promises);
|
|
70
|
-
const searchResults = fetchResults.map(result => {
|
|
71
|
-
const {
|
|
72
|
-
data: resultData
|
|
73
|
-
} = result;
|
|
74
|
-
return resultData.searchPublishedContent.results;
|
|
75
|
-
}).flat();
|
|
76
|
-
setData(searchResults);
|
|
77
|
-
} catch (e) {
|
|
78
|
-
logError(e);
|
|
79
|
-
}
|
|
80
|
-
})();
|
|
81
|
-
} catch (e) {
|
|
82
|
-
logError(e);
|
|
83
|
-
}
|
|
84
|
-
});
|
|
85
|
-
|
|
86
|
-
const handleClick = (e, url) => {
|
|
87
|
-
e.preventDefault();
|
|
88
|
-
router.push(url);
|
|
89
|
-
};
|
|
90
|
-
|
|
91
|
-
const handleKeyPress = e => {
|
|
92
|
-
if (e.key === 'Enter' && e.target.value !== '') {
|
|
93
|
-
router.push(`/search?search_term=${e.target.value}`);
|
|
94
|
-
}
|
|
95
|
-
};
|
|
96
|
-
|
|
97
|
-
const renderResults = () => // eslint-disable-next-line no-undef
|
|
98
|
-
data === null || data === void 0 ? void 0 : data.map(dataItem => {
|
|
99
|
-
const {
|
|
100
|
-
name,
|
|
101
|
-
image,
|
|
102
|
-
url
|
|
103
|
-
} = dataItem;
|
|
104
|
-
|
|
105
|
-
if (searchTerm && searchTerm !== '') {
|
|
106
|
-
if (name.includes(searchTerm)) {
|
|
107
|
-
return /*#__PURE__*/React.createElement(BlazeLink, {
|
|
108
|
-
href: url,
|
|
109
|
-
onClick: e => handleClick(e, url)
|
|
110
|
-
}, /*#__PURE__*/React.createElement("div", {
|
|
111
|
-
className: "mt-2 mb-1"
|
|
112
|
-
}, /*#__PURE__*/React.createElement("div", {
|
|
113
|
-
className: "flex justify-start items-center"
|
|
114
|
-
}, image.url ? /*#__PURE__*/React.createElement("img", {
|
|
115
|
-
src: image.url,
|
|
116
|
-
alt: name,
|
|
117
|
-
className: "w-20 h-14"
|
|
118
|
-
}) : null, /*#__PURE__*/React.createElement("span", {
|
|
119
|
-
className: "ml-2"
|
|
120
|
-
}, name))));
|
|
121
|
-
}
|
|
122
|
-
|
|
123
|
-
return null;
|
|
124
|
-
}
|
|
125
|
-
});
|
|
126
|
-
|
|
127
|
-
const searchResultsMessage = searchTerm ? `Search results for: ${searchTerm}` : '';
|
|
128
|
-
return collapsed ? /*#__PURE__*/React.createElement("div", {
|
|
129
|
-
className: isMobile ? searchInputWrapperMobile : searchInputWrapperDesktop
|
|
130
|
-
}, /*#__PURE__*/React.createElement("div", {
|
|
131
|
-
className: "search-content--collapse__wrapper"
|
|
132
|
-
}, /*#__PURE__*/React.createElement("label", {
|
|
133
|
-
className: "search-content--collapse__label"
|
|
134
|
-
}, /*#__PURE__*/React.createElement("span", {
|
|
135
|
-
className: "search-content--collapse__icon_wrapper"
|
|
136
|
-
}, /*#__PURE__*/React.createElement("svg", {
|
|
137
|
-
className: "search-content--collapse__icon",
|
|
138
|
-
viewBox: "0 0 20 20"
|
|
139
|
-
}, /*#__PURE__*/React.createElement("path", {
|
|
140
|
-
fillRule: "evenodd",
|
|
141
|
-
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",
|
|
142
|
-
clipRule: "evenodd"
|
|
143
|
-
}))), /*#__PURE__*/React.createElement("input", {
|
|
144
|
-
onFocus: () => setCollapsed(false),
|
|
145
|
-
onChange: e => setSearchTerm(e.target.value),
|
|
146
|
-
type: "text",
|
|
147
|
-
name: "search",
|
|
148
|
-
value: "",
|
|
149
|
-
className: "search-content--collapse__input"
|
|
150
|
-
})))) : /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement("div", {
|
|
151
|
-
className: `${isMobile ? searchInputWrapperMobile : searchInputWrapperDesktop}`
|
|
152
|
-
}, /*#__PURE__*/React.createElement("div", {
|
|
153
|
-
className: "search-content--expanded__wrapper"
|
|
154
|
-
}, /*#__PURE__*/React.createElement("label", {
|
|
155
|
-
className: "search-content--expanded__label"
|
|
156
|
-
}, /*#__PURE__*/React.createElement("span", {
|
|
157
|
-
className: "search-content--expanded__icon_wrapper"
|
|
158
|
-
}, /*#__PURE__*/React.createElement("svg", {
|
|
159
|
-
className: "search-content--expanded__icon",
|
|
160
|
-
viewBox: "0 0 20 20"
|
|
161
|
-
}, /*#__PURE__*/React.createElement("path", {
|
|
162
|
-
fillRule: "evenodd",
|
|
163
|
-
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",
|
|
164
|
-
clipRule: "evenodd"
|
|
165
|
-
}))), /*#__PURE__*/React.createElement("input", {
|
|
166
|
-
type: "text",
|
|
167
|
-
name: "search",
|
|
168
|
-
onChange: e => setSearchTerm(e.target.value),
|
|
169
|
-
onKeyPress: handleKeyPress,
|
|
170
|
-
className: "search-content--expanded__input",
|
|
171
|
-
placeholder: placeholder,
|
|
172
|
-
onBlur: () => {
|
|
173
|
-
if (!collapsible) return;
|
|
174
|
-
if (!searchTerm || searchTerm === '') setCollapsed(true);
|
|
175
|
-
}
|
|
176
|
-
}))), data && searchResultsMessage !== '' && /*#__PURE__*/React.createElement("div", {
|
|
177
|
-
className: "search-content--results__wrapper"
|
|
178
|
-
}, /*#__PURE__*/React.createElement("div", {
|
|
179
|
-
className: "search-content--results__wrapper--message"
|
|
180
|
-
}, /*#__PURE__*/React.createElement("div", {
|
|
181
|
-
className: "text-sm pt-2"
|
|
182
|
-
}, searchResultsMessage), /*#__PURE__*/React.createElement("div", {
|
|
183
|
-
className: "search-content--results__message"
|
|
184
|
-
}, /*#__PURE__*/React.createElement("div", {
|
|
185
|
-
className: "search-content--results__content"
|
|
186
|
-
}, renderResults()))))));
|
|
187
|
-
};
|
|
188
|
-
|
|
189
|
-
SearchContent.propTypes = {
|
|
190
|
-
searchInputAlignment: PropTypes.string,
|
|
191
|
-
searchInputWrapperMobile: PropTypes.string,
|
|
192
|
-
searchInputWrapperDesktop: PropTypes.string,
|
|
193
|
-
placeholder: PropTypes.string,
|
|
194
|
-
isMobile: PropTypes.bool,
|
|
195
|
-
collapsible: PropTypes.bool,
|
|
196
|
-
entities: PropTypes.array.isRequired
|
|
197
|
-
};
|
|
198
|
-
SearchContent.defaultProps = {
|
|
199
|
-
searchInputAlignment: '',
|
|
200
|
-
searchInputWrapperMobile: '',
|
|
201
|
-
searchInputWrapperDesktop: '',
|
|
202
|
-
placeholder: '',
|
|
203
|
-
isMobile: false,
|
|
204
|
-
collapsible: false
|
|
205
|
-
};
|
|
1
|
+
import SearchContent from './SearchContent';
|
|
206
2
|
export default SearchContent;
|
|
207
3
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/components/SearchContent/index.js"],"names":["React","useState","PropTypes","gql","useApolloClient","useRouter","getPublishedContent","BlazeLink","logError","error","SearchContent","entities","searchInputAlignment","searchInputWrapperMobile","searchInputWrapperDesktop","collapsible","isMobile","placeholder","collapsed","setCollapsed","searchTerm","setSearchTerm","data","setData","router","client","capitalize","s","charAt","toUpperCase","slice","useEffect","length","promises","map","entity","a","b","split","entityName","rawQueryStringified","JSON","stringify","size","query","bool","should","match","docType","minimum_should_match","variables","offset","limit","e","fetchResults","Promise","all","searchResults","result","resultData","searchPublishedContent","results","flat","handleClick","url","preventDefault","push","handleKeyPress","key","target","value","renderResults","dataItem","name","image","includes","searchResultsMessage","propTypes","string","array","isRequired","defaultProps"],"mappings":"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","sourcesContent":["import React, { useState } from 'react';\nimport PropTypes from 'prop-types';\nimport { gql, useApolloClient } from '@apollo/client';\n\nimport { useRouter } from 'next/router';\nimport { getPublishedContent } from '../../application/query';\nimport BlazeLink from '../BlazeLink';\n\nconst logError = error => error;\n\nconst SearchContent = ({\n entities,\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 [data, setData] = useState([]);\n\n const router = useRouter();\n const client = useApolloClient();\n\n const capitalize = s => {\n if (typeof s !== 'string') return '';\n return s.charAt(0).toUpperCase() + s.slice(1);\n };\n\n React.useEffect(() => {\n if (data && data.length !== 0) return;\n\n const promises = entities.map(entity => {\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 try {\n return client.query({\n query,\n variables: {\n rawQueryStringified,\n offset: 0,\n limit: 5\n }\n });\n } catch (e) {\n return [];\n }\n });\n\n try {\n (async () => {\n try {\n const fetchResults = await Promise.all(promises);\n const searchResults = fetchResults\n .map(result => {\n const { data: resultData } = result;\n return resultData.searchPublishedContent.results;\n })\n .flat();\n\n setData(searchResults);\n } catch (e) {\n logError(e);\n }\n })();\n } catch (e) {\n logError(e);\n }\n });\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 data?.map(dataItem => {\n const { name, image, url } = dataItem;\n\n if (searchTerm && searchTerm !== '') {\n if (name.includes(searchTerm)) {\n return (\n <BlazeLink href={url} onClick={e => handleClick(e, url)}>\n <div className=\"mt-2 mb-1\">\n <div className=\"flex justify-start items-center\">\n {image.url ? <img src={image.url} alt={name} className=\"w-20 h-14\" /> : null}\n <span className=\"ml-2\">{name}</span>\n </div>\n </div>\n </BlazeLink>\n );\n }\n\n return null;\n }\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 entities: PropTypes.array.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"],"file":"index.js"}
|
|
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,OAAOA,aAAP,MAA0B,iBAA1B;AAEA,eAAeA,aAAf"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"
|
|
1
|
+
{"version":3,"file":"CloseMobileForm.js","names":["React","PropTypes","MdClose","MOBILE_REFINEMENT_TITLE","CloseMobileForm","handleClose","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,OAAOA,KAAP,MAAkB,OAAlB;AACA,OAAOC,SAAP,MAAsB,YAAtB;AACA,SAASC,OAAT,QAAwB,gBAAxB;AACA,SAASC,uBAAT,QAAwC,cAAxC;;AAEA,MAAMC,eAAe,GAAG,CAAC;EAAEC;AAAF,CAAD,kBACtB;EAAK,SAAS,EAAC;AAAf,gBACE,+BAAIF,uBAAJ,CADF,eAGE;EAAG,IAAI,EAAC,QAAR;EAAiB,OAAO,EAAEE;AAA1B,gBACE,oBAAC,OAAD,OADF,CAHF,CADF;;AAUAD,eAAe,CAACE,SAAhB,GAA4B;EAC1BD,WAAW,EAAEJ,SAAS,CAACM,IAAV,CAAeC;AADF,CAA5B;AAIA,eAAeJ,eAAf"}
|
|
@@ -33,8 +33,6 @@ const FiltersList = ({
|
|
|
33
33
|
const isDataAvailable = !!data && Object.keys(data).length;
|
|
34
34
|
const dataAggregations = isDataAvailable ? data : null;
|
|
35
35
|
const areAggregationsAvailable = isDataAvailable && !!dataAggregations;
|
|
36
|
-
const results = areAggregationsAvailable && dataAggregations[propsToDisplay[0]];
|
|
37
|
-
const shouldDisplayFilter = results && results.buckets && results.buckets.length;
|
|
38
36
|
|
|
39
37
|
switch (type) {
|
|
40
38
|
case TEXT_SEARCH:
|
|
@@ -50,7 +48,7 @@ const FiltersList = ({
|
|
|
50
48
|
})));
|
|
51
49
|
|
|
52
50
|
case CHECKBOX:
|
|
53
|
-
return
|
|
51
|
+
return /*#__PURE__*/React.createElement("div", {
|
|
54
52
|
key: dynamicKey,
|
|
55
53
|
className: "filter__section filter__section--search-refine filter__section--checkboxes"
|
|
56
54
|
}, /*#__PURE__*/React.createElement(Checkbox, _extends({}, otherProps, {
|
|
@@ -65,7 +63,7 @@ const FiltersList = ({
|
|
|
65
63
|
})));
|
|
66
64
|
|
|
67
65
|
case SELECT:
|
|
68
|
-
return
|
|
66
|
+
return /*#__PURE__*/React.createElement("div", {
|
|
69
67
|
key: dynamicKey,
|
|
70
68
|
className: "filter__section filter__section--search-refine filter__section--selects"
|
|
71
69
|
}, /*#__PURE__*/React.createElement(SelectFilter, _extends({}, otherProps, {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"
|
|
1
|
+
{"version":3,"file":"FiltersList.js","names":["React","useContext","PropTypes","MainContext","TextSearch","Checkbox","SelectFilter","Range","CHECKBOX","SELECT","TEXT_SEARCH","RANGE","SEARCH_TERM","FiltersList","data","filters","hasUrl","entity","filterValues","updateFilterValues","shouldSearch","itemId","map","index","type","label","propsToDisplay","elementTitle","otherProps","length","dynamicKey","join","isDataAvailable","Object","keys","dataAggregations","areAggregationsAvailable","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":";;;AAAA,OAAOA,KAAP,IAAgBC,UAAhB,QAAkC,OAAlC;AACA,OAAOC,SAAP,MAAsB,YAAtB;AACA,SAASC,WAAT,QAA4B,8BAA5B;AACA,SAASC,UAAT,EAAqBC,QAArB,EAA+BC,YAA/B,EAA6CC,KAA7C,QAA0D,eAA1D;AACA,SAASC,QAAT,EAAmBC,MAAnB,EAA2BC,WAA3B,EAAwCC,KAAxC,EAA+CC,WAA/C,QAAkE,cAAlE;;AAEA,MAAMC,WAAW,GAAG,CAAC;EACnBC,IADmB;EAEnBC,OAFmB;EAGnBC,MAHmB;EAInBC,MAJmB;EAKnBC,YALmB;EAMnBC,kBANmB;EAOnBC;AAPmB,CAAD,KAQd;EACJ,MAAM;IAAEC;EAAF,IAAapB,UAAU,CAACE,WAAD,CAA7B;EAEA,OAAOY,OAAO,CAACO,GAAR,CAAY,OAA+DC,KAA/D,KAAyE;IAAA,IAAxE;MAAEC,IAAF;MAAQC,KAAR;MAAeC,cAAf;MAA+BC;IAA/B,CAAwE;IAAA,IAAxBC,UAAwB;;IAC1F,IAAI,CAACF,cAAD,IAAmB,CAACA,cAAc,CAACG,MAAvC,EAA+C,OAAO,IAAP;IAC/C,MAAMC,UAAU,GAAG,CAACT,MAAD,EAASE,KAAT,EAAgBQ,IAAhB,CAAqB,GAArB,CAAnB;IACA,MAAMC,eAAe,GAAG,CAAC,CAAClB,IAAF,IAAUmB,MAAM,CAACC,IAAP,CAAYpB,IAAZ,EAAkBe,MAApD;IACA,MAAMM,gBAAgB,GAAGH,eAAe,GAAGlB,IAAH,GAAU,IAAlD;IACA,MAAMsB,wBAAwB,GAAGJ,eAAe,IAAI,CAAC,CAACG,gBAAtD;;IAEA,QAAQX,IAAR;MACE,KAAKd,WAAL;QACE,oBACE;UACE,GAAG,EAAEoB,UADP;UAEE,SAAS,EAAC;QAFZ,gBAGE,oBAAC,UAAD,eACMF,UADN;UAEE,KAAK,EAAEH,KAFT;UAGE,YAAY,EAAEE,YAHhB;UAIE,WAAW,EAAET,YAAY,CAACN,WAAD,CAJ3B;UAKE,kBAAkB,EAAEO,kBALtB;UAME,YAAY,EAAED;QANhB,GAHF,CADF;;MAcF,KAAKV,QAAL;QACE,oBACE;UACE,GAAG,EAAEsB,UADP;UAEE,SAAS,EAAC;QAFZ,gBAGE,oBAAC,QAAD,eACMF,UADN;UAEE,IAAI,EAAEd,IAFR;UAGE,IAAI,EAAEY,cAAc,CAAC,CAAD,CAHtB;UAIE,KAAK,EAAED,KAJT;UAKE,YAAY,EAAEE,YALhB;UAME,MAAM,EAAEX,MANV;UAOE,YAAY,EAAEE,YAPhB;UAQE,kBAAkB,EAAEC,kBARtB;UASE,YAAY,EAAEC;QAThB,GAHF,CADF;;MAiBF,KAAKX,MAAL;QACE,oBACE;UACE,GAAG,EAAEqB,UADP;UAEE,SAAS,EAAC;QAFZ,gBAGE,oBAAC,YAAD,eACMF,UADN;UAEE,IAAI,EAAEd,IAFR;UAGE,IAAI,EAAEY,cAAc,CAAC,CAAD,CAHtB;UAIE,KAAK,EAAED,KAJT;UAKE,YAAY,EAAEE,YALhB;UAME,MAAM,EAAEX,MANV;UAOE,YAAY,EAAEE,YAPhB;UAQE,kBAAkB,EAAEC,kBARtB;UASE,YAAY,EAAEC;QAThB,GAHF,CADF;;MAiBF,KAAKT,KAAL;QACE,OACE,CAAC,CAACyB,wBAAF,iBACE;UAAK,GAAG,EAAEN,UAAV;UAAsB,SAAS,EAAC;QAAhC,gBACE,oBAAC,KAAD,eACMF,UADN;UAEE,gBAAgB,EAAEO,gBAFpB;UAGE,cAAc,EAAET,cAHlB;UAIE,KAAK,EAAED,KAJT;UAKE,YAAY,EAAEE,YALhB;UAME,MAAM,EAAEV,MANV;UAOE,YAAY,EAAEC,YAPhB;UAQE,kBAAkB,EAAEC,kBARtB;UASE,YAAY,EAAEC;QAThB,GADF,CAFJ;;MAiBF;QACE,OAAO,IAAP;IAvEJ;EAyED,CAhFM,CAAP;AAiFD,CA5FD;;AA8FAP,WAAW,CAACwB,SAAZ,GAAwB;EACtBrB,MAAM,EAAEd,SAAS,CAACoC,IAAV,CAAeC,UADD;EAEtBtB,MAAM,EAAEf,SAAS,CAACsC,MAAV,CAAiBD,UAFH;EAGtBrB,YAAY,EAAEhB,SAAS,CAACuC,MAAV,CAAiBF,UAHT;EAItBpB,kBAAkB,EAAEjB,SAAS,CAACwC,IAAV,CAAeH,UAJb;EAKtBzB,IAAI,EAAEZ,SAAS,CAACuC,MALM;EAMtB1B,OAAO,EAAEb,SAAS,CAACyC,KANG;EAOtBvB,YAAY,EAAElB,SAAS,CAACoC;AAPF,CAAxB;AAUAzB,WAAW,CAAC+B,YAAZ,GAA2B;EACzBxB,YAAY,EAAE,KADW;EAEzBN,IAAI,EAAE,EAFmB;EAGzBC,OAAO,EAAE;AAHgB,CAA3B;AAMA,eAAeF,WAAf"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"
|
|
1
|
+
{"version":3,"file":"MobileFormToolbar.js","names":["React","PropTypes","RESET","SEARCH","MobileFormToolbar","formId","handleReset","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,OAAOA,KAAP,MAAkB,OAAlB;AACA,OAAOC,SAAP,MAAsB,YAAtB;AACA,SAASC,KAAT,EAAgBC,MAAhB,QAA8B,cAA9B;;AAEA,MAAMC,iBAAiB,GAAG,CAAC;EAAEC,MAAF;EAAUC;AAAV,CAAD,kBACxB;EAAK,SAAS,EAAC;AAAf,gBACE;EAAK,SAAS,EAAC,OAAf;EAAuB,eAAY,cAAnC;EAAkD,IAAI,EAAC,QAAvD;EAAgE,OAAO,EAAEA;AAAzE,GACGJ,KADH,CADF,eAKE;EAAQ,SAAS,EAAC,QAAlB;EAA2B,IAAI,EAAC,QAAhC;EAAyC,IAAI,EAAEG;AAA/C,GACGF,MADH,CALF,CADF;;AAYAC,iBAAiB,CAACG,SAAlB,GAA8B;EAC5BF,MAAM,EAAEJ,SAAS,CAACO,MAAV,CAAiBC,UADG;EAE5BH,WAAW,EAAEL,SAAS,CAACS,IAAV,CAAeD;AAFA,CAA9B;AAKA,eAAeL,iBAAf"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"
|
|
1
|
+
{"version":3,"file":"ResetDesktopForm.js","names":["React","PropTypes","FaRedoAlt","RESET","ResetDesktopForm","handleReset","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,OAAOA,KAAP,MAAkB,OAAlB;AACA,OAAOC,SAAP,MAAsB,YAAtB;AACA,SAASC,SAAT,QAA0B,gBAA1B;AACA,SAASC,KAAT,QAAsB,cAAtB;;AAEA,MAAMC,gBAAgB,GAAG,CAAC;EAAEC;AAAF,CAAD,kBACvB;EAAK,SAAS,EAAC;AAAf,gBACE;EACE,IAAI,EAAC,QADP;EAEE,SAAS,EAAC,gCAFZ;EAGE,KAAK,EAAC,eAHR;EAIE,eAAY,YAJd;EAKE,OAAO,EAAEA;AALX,gBAME,4CACE,oBAAC,SAAD,OADF,CANF,CADF,eAYE;EAAK,IAAI,EAAC,QAAV;EAAmB,OAAO,EAAEA,WAA5B;EAAyC,eAAY;AAArD,GACGF,KADH,CAZF,CADF;;AAmBAC,gBAAgB,CAACE,SAAjB,GAA6B;EAC3BD,WAAW,EAAEJ,SAAS,CAACM,IAAV,CAAeC;AADD,CAA7B;AAIA,eAAeJ,gBAAf"}
|
|
@@ -1,10 +1,4 @@
|
|
|
1
|
-
import
|
|
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, useEffect, useReducer } from 'react';
|
|
1
|
+
import React, { useState, useEffect } from 'react';
|
|
8
2
|
import PropTypes from 'prop-types';
|
|
9
3
|
import classnames from 'classnames';
|
|
10
4
|
import debounce from 'lodash.debounce';
|
|
@@ -15,34 +9,6 @@ import ResetDesktopForm from './ResetDesktopForm';
|
|
|
15
9
|
import MobileFormToolbar from './MobileFormToolbar';
|
|
16
10
|
import { SEARCH, REFINE, MORE_FILTERS_CLASSES } from '../constants';
|
|
17
11
|
|
|
18
|
-
const reducer = (state, action) => {
|
|
19
|
-
const {
|
|
20
|
-
newValues,
|
|
21
|
-
type,
|
|
22
|
-
shouldSearch = true
|
|
23
|
-
} = action;
|
|
24
|
-
|
|
25
|
-
switch (type) {
|
|
26
|
-
case 'update':
|
|
27
|
-
return _objectSpread(_objectSpread(_objectSpread({}, state), newValues), {}, {
|
|
28
|
-
shouldSearch
|
|
29
|
-
});
|
|
30
|
-
|
|
31
|
-
case 'resetSearch':
|
|
32
|
-
return _objectSpread(_objectSpread({}, state), {}, {
|
|
33
|
-
shouldSearch: false
|
|
34
|
-
});
|
|
35
|
-
|
|
36
|
-
case 'reset':
|
|
37
|
-
return _objectSpread(_objectSpread({}, newValues), {}, {
|
|
38
|
-
shouldSearch
|
|
39
|
-
});
|
|
40
|
-
|
|
41
|
-
default:
|
|
42
|
-
throw new Error();
|
|
43
|
-
}
|
|
44
|
-
};
|
|
45
|
-
|
|
46
12
|
const SearchFilter = ({
|
|
47
13
|
searchFilterRef,
|
|
48
14
|
data,
|
|
@@ -54,25 +20,32 @@ const SearchFilter = ({
|
|
|
54
20
|
isCollapsedOnResponsive,
|
|
55
21
|
displaySearchFilter,
|
|
56
22
|
setDisplaySearchFilter,
|
|
57
|
-
initialFilterValues,
|
|
58
23
|
groupAfterDesktop,
|
|
59
|
-
groupAfterMobile
|
|
24
|
+
groupAfterMobile,
|
|
25
|
+
filterValues,
|
|
26
|
+
setAppliedFilters
|
|
60
27
|
}) => {
|
|
61
28
|
const [moreFiltersMobileCollapsed, setMoreFiltersMobileCollapsed] = useState(true);
|
|
62
29
|
const [moreFiltersDesktopCollapsed, setMoreFiltersDesktopCollapsed] = useState(true);
|
|
63
|
-
|
|
64
|
-
const
|
|
30
|
+
|
|
31
|
+
const doSubmit = (newValues = filterValues) => {
|
|
65
32
|
const newQuery = buildQuery(newValues, filters);
|
|
66
33
|
handleSearch(newQuery);
|
|
34
|
+
setMoreFiltersDesktopCollapsed(true);
|
|
35
|
+
setMoreFiltersMobileCollapsed(true);
|
|
36
|
+
};
|
|
37
|
+
|
|
38
|
+
const handleSubmit = debounce(newValues => {
|
|
39
|
+
doSubmit(newValues);
|
|
67
40
|
}, 200);
|
|
68
41
|
useEffect(() => {
|
|
69
42
|
if (filterValues.shouldSearch) {
|
|
70
43
|
handleSubmit(filterValues);
|
|
71
|
-
|
|
44
|
+
setAppliedFilters({
|
|
72
45
|
type: 'resetSearch'
|
|
73
46
|
});
|
|
74
47
|
}
|
|
75
|
-
}, [filterValues, handleSubmit]);
|
|
48
|
+
}, [filterValues, handleSubmit, setAppliedFilters]);
|
|
76
49
|
const formClass = classnames('filter__form filter__form--initial', {
|
|
77
50
|
'filter__form--mobile': isCollapsedOnResponsive && displaySearchFilter,
|
|
78
51
|
'filter__form--collapsible': isCollapsedOnResponsive
|
|
@@ -87,14 +60,14 @@ const SearchFilter = ({
|
|
|
87
60
|
|
|
88
61
|
const handleReset = () => {
|
|
89
62
|
const newValues = getInitialFilterValues(data, filters, {});
|
|
90
|
-
|
|
63
|
+
setAppliedFilters({
|
|
91
64
|
newValues,
|
|
92
65
|
type: 'reset'
|
|
93
66
|
});
|
|
94
67
|
};
|
|
95
68
|
|
|
96
69
|
const updateFilterValues = (newValues, shouldSubmit) => {
|
|
97
|
-
|
|
70
|
+
setAppliedFilters({
|
|
98
71
|
newValues,
|
|
99
72
|
shouldSearch: shouldSubmit,
|
|
100
73
|
type: 'update'
|
|
@@ -110,8 +83,7 @@ const SearchFilter = ({
|
|
|
110
83
|
id: formId,
|
|
111
84
|
onSubmit: e => {
|
|
112
85
|
e.preventDefault();
|
|
113
|
-
|
|
114
|
-
handleSearch(newQuery);
|
|
86
|
+
doSubmit();
|
|
115
87
|
}
|
|
116
88
|
}, displaySearchFilter && /*#__PURE__*/React.createElement(CloseMobileForm, {
|
|
117
89
|
handleClose: () => setDisplaySearchFilter(false)
|
|
@@ -138,6 +110,7 @@ const SearchFilter = ({
|
|
|
138
110
|
filterValues: filterValues,
|
|
139
111
|
updateFilterValues: updateFilterValues
|
|
140
112
|
}), !!groupAfterMobile && /*#__PURE__*/React.createElement("button", {
|
|
113
|
+
"data-testId": "search-filter-mobile-toggler",
|
|
141
114
|
className: moreFiltersMobileTogglerClass,
|
|
142
115
|
type: "button",
|
|
143
116
|
onClick: () => setMoreFiltersMobileCollapsed(!moreFiltersMobileCollapsed)
|
|
@@ -154,6 +127,7 @@ const SearchFilter = ({
|
|
|
154
127
|
filterValues: filterValues,
|
|
155
128
|
updateFilterValues: updateFilterValues
|
|
156
129
|
}), !!groupAfterDesktop && /*#__PURE__*/React.createElement("button", {
|
|
130
|
+
"data-testId": "search-filter-desktop-toggler",
|
|
157
131
|
className: moreFiltersDesktopTogglerClass,
|
|
158
132
|
type: "button",
|
|
159
133
|
onClick: () => setMoreFiltersDesktopCollapsed(!moreFiltersDesktopCollapsed)
|
|
@@ -211,7 +185,8 @@ SearchFilter.propTypes = {
|
|
|
211
185
|
isCollapsedOnResponsive: PropTypes.bool.isRequired,
|
|
212
186
|
groupAfterDesktop: PropTypes.number.isRequired,
|
|
213
187
|
groupAfterMobile: PropTypes.number.isRequired,
|
|
214
|
-
|
|
188
|
+
filterValues: PropTypes.object.isRequired,
|
|
189
|
+
setAppliedFilters: PropTypes.func.isRequired
|
|
215
190
|
};
|
|
216
191
|
export default SearchFilter;
|
|
217
192
|
//# sourceMappingURL=SearchFilter.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../src/components/SearchFilter/SearchFilter/SearchFilter.js"],"names":["React","useState","useEffect","useReducer","PropTypes","classnames","debounce","FiltersList","isDeviceDesktop","buildQuery","getInitialFilterValues","getResponsiveFilterClassnames","CloseMobileForm","ResetDesktopForm","MobileFormToolbar","SEARCH","REFINE","MORE_FILTERS_CLASSES","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","MOBILE_CONTENT","DESKTOP_CONTENT","DESKTOP_BUTTONS","MOBILE_BUTTONS","propTypes","object","isRequired","array","bool","string","func","number"],"mappings":"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","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"],"file":"SearchFilter.js"}
|
|
1
|
+
{"version":3,"file":"SearchFilter.js","names":["React","useState","useEffect","PropTypes","classnames","debounce","FiltersList","isDeviceDesktop","buildQuery","getInitialFilterValues","getResponsiveFilterClassnames","CloseMobileForm","ResetDesktopForm","MobileFormToolbar","SEARCH","REFINE","MORE_FILTERS_CLASSES","SearchFilter","searchFilterRef","data","filters","hasUrl","entity","handleSearch","name","isCollapsedOnResponsive","displaySearchFilter","setDisplaySearchFilter","groupAfterDesktop","groupAfterMobile","filterValues","setAppliedFilters","moreFiltersMobileCollapsed","setMoreFiltersMobileCollapsed","moreFiltersDesktopCollapsed","setMoreFiltersDesktopCollapsed","doSubmit","newValues","newQuery","handleSubmit","shouldSearch","type","formClass","moreFiltersMobileWrapperClass","moreFiltersMobileTogglerClass","moreFiltersDesktopWrapperClass","moreFiltersDesktopTogglerClass","formId","handleReset","updateFilterValues","shouldSubmit","shouldGroup","e","preventDefault","slice","MOBILE_CONTENT","DESKTOP_CONTENT","DESKTOP_BUTTONS","MOBILE_BUTTONS","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":"AAAA,OAAOA,KAAP,IAAgBC,QAAhB,EAA0BC,SAA1B,QAA2C,OAA3C;AACA,OAAOC,SAAP,MAAsB,YAAtB;AACA,OAAOC,UAAP,MAAuB,YAAvB;AACA,OAAOC,QAAP,MAAqB,iBAArB;AACA,OAAOC,WAAP,MAAwB,eAAxB;AACA,SACEC,eADF,EAEEC,UAFF,EAGEC,sBAHF,EAIEC,6BAJF,QAKO,YALP;AAMA,OAAOC,eAAP,MAA4B,mBAA5B;AACA,OAAOC,gBAAP,MAA6B,oBAA7B;AACA,OAAOC,iBAAP,MAA8B,qBAA9B;AACA,SAASC,MAAT,EAAiBC,MAAjB,EAAyBC,oBAAzB,QAAqD,cAArD;;AAEA,MAAMC,YAAY,GAAG,CAAC;EACpBC,eADoB;EAEpBC,IAFoB;EAGpBC,OAHoB;EAIpBC,MAJoB;EAKpBC,MALoB;EAMpBC,YANoB;EAOpBC,IAPoB;EAQpBC,uBARoB;EASpBC,mBAToB;EAUpBC,sBAVoB;EAWpBC,iBAXoB;EAYpBC,gBAZoB;EAapBC,YAboB;EAcpBC;AAdoB,CAAD,KAef;EACJ,MAAM,CAACC,0BAAD,EAA6BC,6BAA7B,IAA8DhC,QAAQ,CAAC,IAAD,CAA5E;EACA,MAAM,CAACiC,2BAAD,EAA8BC,8BAA9B,IAAgElC,QAAQ,CAAC,IAAD,CAA9E;;EAEA,MAAMmC,QAAQ,GAAG,CAACC,SAAS,GAAGP,YAAb,KAA8B;IAC7C,MAAMQ,QAAQ,GAAG9B,UAAU,CAAC6B,SAAD,EAAYjB,OAAZ,CAA3B;IACAG,YAAY,CAACe,QAAD,CAAZ;IACAH,8BAA8B,CAAC,IAAD,CAA9B;IACAF,6BAA6B,CAAC,IAAD,CAA7B;EACD,CALD;;EAOA,MAAMM,YAAY,GAAGlC,QAAQ,CAACgC,SAAS,IAAI;IACzCD,QAAQ,CAACC,SAAD,CAAR;EACD,CAF4B,EAE1B,GAF0B,CAA7B;EAIAnC,SAAS,CACP,MAAM;IACJ,IAAI4B,YAAY,CAACU,YAAjB,EAA+B;MAC7BD,YAAY,CAACT,YAAD,CAAZ;MACAC,iBAAiB,CAAC;QAAEU,IAAI,EAAE;MAAR,CAAD,CAAjB;IACD;EACF,CANM,EAOP,CAACX,YAAD,EAAeS,YAAf,EAA6BR,iBAA7B,CAPO,CAAT;EAUA,MAAMW,SAAS,GAAGtC,UAAU,CAAC,oCAAD,EAAuC;IACjE,wBAAwBqB,uBAAuB,IAAIC,mBADc;IAEjE,6BAA6BD;EAFoC,CAAvC,CAA5B;EAKA,MAAM;IACJkB,6BADI;IAEJC,6BAFI;IAGJC,8BAHI;IAIJC;EAJI,IAKFpC,6BAA6B,CAACwB,2BAAD,EAA8BF,0BAA9B,CALjC;EAOA,MAAMe,MAAM,GAAI,UAASvB,IAAK,OAA9B;;EAEA,MAAMwB,WAAW,GAAG,MAAM;IACxB,MAAMX,SAAS,GAAG5B,sBAAsB,CAACU,IAAD,EAAOC,OAAP,EAAgB,EAAhB,CAAxC;IACAW,iBAAiB,CAAC;MAAEM,SAAF;MAAaI,IAAI,EAAE;IAAnB,CAAD,CAAjB;EACD,CAHD;;EAKA,MAAMQ,kBAAkB,GAAG,CAACZ,SAAD,EAAYa,YAAZ,KAA6B;IACtDnB,iBAAiB,CAAC;MAAEM,SAAF;MAAaG,YAAY,EAAEU,YAA3B;MAAyCT,IAAI,EAAE;IAA/C,CAAD,CAAjB;EACD,CAFD;;EAIA,MAAMU,WAAW,GAAG,CAAC,EAAEvB,iBAAiB,IAAIC,gBAAvB,CAArB;EACA,MAAMW,YAAY,GAAG,CAACnB,MAAtB;EAEA,oBACE,uDACE;IACE,GAAG,EAAEH,eADP;IAEE,SAAS,EAAEwB,SAFb;IAGE,eAAaK,MAHf;IAIE,EAAE,EAAEA,MAJN;IAKE,QAAQ,EAAEK,CAAC,IAAI;MACbA,CAAC,CAACC,cAAF;MACAjB,QAAQ;IACT;EARH,GASGV,mBAAmB,iBAClB,oBAAC,eAAD;IAAiB,WAAW,EAAE,MAAMC,sBAAsB,CAAC,KAAD;EAA1D,EAVJ,eAaE;IAAK,SAAS,EAAC;EAAf,gBACE,oBAAC,gBAAD;IAAkB,WAAW,EAAEqB;EAA/B,EADF,eAGE;IAAK,SAAS,EAAC;EAAf,GACG,CAACG,WAAD,iBACC,oBAAC,WAAD;IACE,YAAY,EAAEX,YADhB;IAEE,IAAI,EAAErB,IAFR;IAGE,OAAO,EAAEC,OAHX;IAIE,MAAM,EAAEC,MAJV;IAKE,MAAM,EAAEC,MALV;IAME,YAAY,EAAEQ,YANhB;IAOE,kBAAkB,EAAEmB;EAPtB,EAFJ,EAaGE,WAAW,iBACV,uDACE,oBAAC,WAAD;IACE,YAAY,EAAEX,YADhB;IAEE,IAAI,EAAErB,IAFR;IAGE,OAAO,EAAEC,OAAO,CAACkC,KAAR,CAAc,CAAd,EAAiBzB,gBAAjB,CAHX;IAIE,MAAM,EAAER,MAJV;IAKE,MAAM,EAAEC,MALV;IAME,YAAY,EAAEQ,YANhB;IAOE,kBAAkB,EAAEmB;EAPtB,EADF,EAWG,CAAC,CAACpB,gBAAF,iBACC;IACE,eAAY,8BADd;IAEE,SAAS,EAAEe,6BAFb;IAGE,IAAI,EAAC,QAHP;IAIE,OAAO,EAAE,MAAMX,6BAA6B,CAAC,CAACD,0BAAF;EAJ9C,aAZJ,eAqBE;IAAK,SAAS,EAAEW;EAAhB,gBACE;IAAK,SAAS,EAAE3B,oBAAoB,CAACuC;EAArC,gBACE,oBAAC,WAAD;IACE,YAAY,EAAEf,YAAY,IAAIjC,eAAe,EAD/C;IAEE,IAAI,EAAEY,IAFR;IAGE,OAAO,EAAEC,OAAO,CAACkC,KAAR,CACPzB,gBADO,EAEPD,iBAAiB,GAAGA,iBAAiB,GAAG,CAAvB,GAA2B,CAFrC,CAHX;IAOE,MAAM,EAAEP,MAPV;IAQE,MAAM,EAAEC,MARV;IASE,YAAY,EAAEQ,YAThB;IAUE,kBAAkB,EAAEmB;EAVtB,EADF,EAcG,CAAC,CAACrB,iBAAF,iBACC;IACE,eAAY,+BADd;IAEE,SAAS,EAAEkB,8BAFb;IAGE,IAAI,EAAC,QAHP;IAIE,OAAO,EAAE,MACPX,8BAA8B,CAAC,CAACD,2BAAF;EALlC,kBAfJ,eA0BE;IAAK,SAAS,EAAEW;EAAhB,gBACE;IAAK,SAAS,EAAE7B,oBAAoB,CAACwC;EAArC,gBACE,oBAAC,WAAD;IACE,YAAY,EAAE,KADhB;IAEE,IAAI,EAAErC,IAFR;IAGE,OAAO,EAAEC,OAAO,CAACkC,KAAR,CAAc1B,iBAAd,CAHX;IAIE,MAAM,EAAEP,MAJV;IAKE,MAAM,EAAEC,MALV;IAME,YAAY,EAAEQ,YANhB;IAOE,kBAAkB,EAAEmB;EAPtB,EADF,CADF,eAaE;IAAK,SAAS,EAAEjC,oBAAoB,CAACyC;EAArC,gBACE,oBAAC,gBAAD;IAAkB,WAAW,EAAET;EAA/B,EADF,eAGE;IAAQ,SAAS,EAAC,2BAAlB;IAA8C,IAAI,EAAC;EAAnD,GACGlC,MADH,CAHF,CAbF,CA1BF,CADF,eAkDE;IAAK,SAAS,EAAEE,oBAAoB,CAAC0C;EAArC,gBACE,oBAAC,gBAAD;IAAkB,WAAW,EAAEV;EAA/B,EADF,eAGE;IAAQ,SAAS,EAAC,2BAAlB;IAA8C,IAAI,EAAC;EAAnD,GACGlC,MADH,CAHF,CAlDF,CArBF,CAdJ,eAgGE,+BAhGF,EAkGG,CAACY,mBAAD,iBACC;IAAQ,SAAS,EAAC,2BAAlB;IAA8C,IAAI,EAAC;EAAnD,GACGZ,MADH,CAnGJ,CAHF,CAbF,EA0HGY,mBAAmB,iBAAI,oBAAC,iBAAD;IAAmB,MAAM,EAAEqB,MAA3B;IAAmC,WAAW,EAAEC;EAAhD,EA1H1B,CADF,EA8HGvB,uBAAuB,IACtB,CAACC,mBADF,iBAEG;IAAK,SAAS,EAAC,6CAAf;IAA6D,eAAY;EAAzE,gBACE;IAAK,IAAI,EAAC,QAAV;IAAmB,OAAO,EAAE,MAAMC,sBAAsB,CAAC,IAAD;EAAxD,GACGZ,MADH,CADF,CAhIN,CADF;AAyID,CA3MD;;AA6MAE,YAAY,CAAC0C,SAAb,GAAyB;EACvBxC,IAAI,EAAEhB,SAAS,CAACyD,MAAV,CAAiBC,UADA;EAEvBzC,OAAO,EAAEjB,SAAS,CAAC2D,KAAV,CAAgBD,UAFF;EAGvB3C,eAAe,EAAEf,SAAS,CAACyD,MAAV,CAAiBC,UAHX;EAIvBxC,MAAM,EAAElB,SAAS,CAAC4D,IAAV,CAAeF,UAJA;EAKvBvC,MAAM,EAAEnB,SAAS,CAAC6D,MAAV,CAAiBH,UALF;EAMvBtC,YAAY,EAAEpB,SAAS,CAAC8D,IAAV,CAAeJ,UANN;EAOvBrC,IAAI,EAAErB,SAAS,CAAC6D,MAAV,CAAiBH,UAPA;EAQvBnC,mBAAmB,EAAEvB,SAAS,CAAC4D,IAAV,CAAeF,UARb;EASvBlC,sBAAsB,EAAExB,SAAS,CAAC8D,IAAV,CAAeJ,UAThB;EAUvBpC,uBAAuB,EAAEtB,SAAS,CAAC4D,IAAV,CAAeF,UAVjB;EAWvBjC,iBAAiB,EAAEzB,SAAS,CAAC+D,MAAV,CAAiBL,UAXb;EAYvBhC,gBAAgB,EAAE1B,SAAS,CAAC+D,MAAV,CAAiBL,UAZZ;EAavB/B,YAAY,EAAE3B,SAAS,CAACyD,MAAV,CAAiBC,UAbR;EAcvB9B,iBAAiB,EAAE5B,SAAS,CAAC8D,IAAV,CAAeJ;AAdX,CAAzB;AAiBA,eAAe5C,YAAf"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"
|
|
1
|
+
{"version":3,"file":"index.js","names":["SearchFilter"],"sources":["../../../../src/components/SearchFilter/SearchFilter/index.js"],"sourcesContent":["import SearchFilter from './SearchFilter';\n\nexport default SearchFilter;\n"],"mappings":"AAAA,OAAOA,YAAP,MAAyB,gBAAzB;AAEA,eAAeA,YAAf"}
|