@blaze-cms/react-page-builder 0.124.0-alpha.9 → 0.124.1-alpha.2
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 +325 -0
- package/README.md +8 -0
- package/lib/BannerContext/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/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/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/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/Carousel/Carousel.js.map +1 -1
- package/lib/components/Carousel/CarouselImage/CarouselImage.js.map +1 -1
- package/lib/components/Carousel/CarouselRender/CarouselRender.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/wrap-script-tags.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/ItemDetailsSummary/ItemDetailsSummary.js.map +1 -1
- package/lib/components/DataSummary/DataSummaryTypes/ItemDetailsSummary/ItemDetailsSummaryContent.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/ListSummary/ListSummary.js.map +1 -1
- package/lib/components/DataSummary/DataSummaryTypes/ListSummary/ListSummaryContent.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/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-prop-value.js.map +1 -1
- package/lib/components/DataSummary/helpers/get-value-from-array.js.map +1 -1
- package/lib/components/DataSummary/helpers/strip-summary-props-content.js.map +1 -1
- package/lib/components/EmailConfirm/EmailConfirm.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/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/helpers/check-if-row-has-columns.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/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/Header/ListHeader.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/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/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/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/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/MenuItem/MenuItem.js +26 -7
- package/lib/components/MenuItem/MenuItem.js.map +1 -1
- package/lib/components/Modal/Modal.js.map +1 -1
- package/lib/components/PasswordReset/PasswordReset.js.map +1 -1
- package/lib/components/PasswordReset/helpers/validatePassword.js.map +1 -1
- package/lib/components/PasswordResetRequest/PasswordResetRequest.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 +18 -67
- package/lib/components/SearchFilter/SearchFilter/SearchFilter.js.map +1 -1
- package/lib/components/SearchFilter/SearchFilterContainer.js +97 -22
- 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 +23 -6
- 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/helpers/build-filters-query.js +110 -0
- package/lib/components/SearchFilter/helpers/build-filters-query.js.map +1 -0
- 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 +15 -8
- 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/check-if-range-updated.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 +16 -1
- 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 +4 -2
- 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/parse-filter-value.js +3 -7
- package/lib/components/SearchFilter/helpers/parse-filter-value.js.map +1 -1
- package/lib/components/SearchFilterSort/SearchFilterSort.js.map +1 -1
- package/lib/components/SearchFilterSort/helpers/handle-sort-update.js.map +1 -1
- package/lib/components/SearchFilterSort/helpers/update-sort.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/SubMenu/SubMenu.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/providers/Default.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/get-provider.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/index.js +3 -1
- package/lib/constants/index.js.map +1 -1
- package/lib/helpers/build-inherited-filters.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/check-props-to-use.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-filter-props.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-parsed-prop-values.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-updated-filter-by.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-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/inject-multiple-banners.js.map +1 -1
- package/lib/helpers/is-filter-entitys-id.js.map +1 -1
- package/lib/helpers/parse-TextBlock.js.map +1 -1
- package/lib/helpers/parse-props-to-display.js.map +1 -1
- package/lib/helpers/render-children.js.map +1 -1
- package/lib/helpers/sort-response-data.js.map +1 -1
- package/lib/hooks/helpers/RenderComponent.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/getComponent.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/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/utils/get-class-modifiers.js.map +1 -1
- package/lib/utils/get-image-data.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/Button.js +18 -6
- package/lib-es/components/Button.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/CarouselWrapper.js +2 -2
- package/lib-es/components/CarouselWrapper.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/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/LazyImage/LazyImage.js +4 -1
- package/lib-es/components/LazyImage/LazyImage.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/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/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/MenuItem/MenuItem.js +24 -9
- package/lib-es/components/MenuItem/MenuItem.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/FiltersList.js +2 -4
- package/lib-es/components/SearchFilter/SearchFilter/FiltersList.js.map +1 -1
- package/lib-es/components/SearchFilter/SearchFilter/SearchFilter.js +12 -44
- package/lib-es/components/SearchFilter/SearchFilter/SearchFilter.js.map +1 -1
- package/lib-es/components/SearchFilter/SearchFilterContainer.js +77 -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 +19 -6
- 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/helpers/build-filters-query.js +73 -0
- package/lib-es/components/SearchFilter/helpers/build-filters-query.js.map +1 -0
- 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 +15 -9
- package/lib-es/components/SearchFilter/helpers/build-raw-query-stringified.js.map +1 -1
- package/lib-es/components/SearchFilter/helpers/get-initial-filter-values.js +14 -1
- package/lib-es/components/SearchFilter/helpers/get-initial-filter-values.js.map +1 -1
- package/lib-es/components/SearchFilter/helpers/get-range-value.js +2 -2
- package/lib-es/components/SearchFilter/helpers/get-range-value.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/parse-filter-value.js +3 -3
- package/lib-es/components/SearchFilter/helpers/parse-filter-value.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/index.js +2 -1
- package/lib-es/constants/index.js.map +1 -1
- package/lib-es/helpers/build-raw-query.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/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 +12 -26
- package/src/components/SearchFilter/SearchFilterContainer.js +72 -16
- package/src/components/SearchFilter/components/Checkbox.js +23 -8
- package/src/components/SearchFilter/components/Range.js +11 -5
- package/src/components/SearchFilter/components/Select.js +18 -11
- package/src/components/SearchFilter/components/TextSearch.js +1 -3
- package/src/components/SearchFilter/helpers/build-filters-query.js +60 -0
- package/src/components/SearchFilter/helpers/build-query.js +3 -1
- package/src/components/SearchFilter/helpers/build-raw-query-stringified.js +17 -11
- package/src/components/SearchFilter/helpers/get-initial-filter-values.js +15 -1
- package/src/components/SearchFilter/helpers/get-range-value.js +2 -2
- 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/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 +3 -6
- package/tests/unit/src/components/SearchFilter/components/Range.test.js +24 -0
- package/tests/unit/src/components/SearchFilter/components/__snapshots__/Checkbox.test.js.snap +2 -0
- package/tests/unit/src/components/SearchFilter/components/__snapshots__/Range.test.js.snap +3 -3
- 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 +31 -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 +1 @@
|
|
|
1
|
-
{"version":3,"file":"helpers.js","names":["getParsedSizes","sizes","sanitizedSizes","replace","toLowerCase","sizeGroups","split","map","group","Number","addPosnToTargetings","targetings","index","posn","buildTargetingValue","valueTargeting","includes","char","setCustomTargetings","cardBannerIndex","bannerTargetings","updatedTargetings","isValidTargeting","customTargeting","splitTargeting","Object","keys","forEach","key","keyTargeting","buildParsedAdunit","path","countContentHierarchies","baseAdunit","adunit","isInteger","base","process","env","DFP_BASE_ADUNIT","hasChildren","url","urlParts","filter","Boolean","urlPart","slice","length","join","endAdunit","END_ADUNIT","getBannerSizes","sizeId","bannerSizes","width","height","buildBannerSizes","parsedSizes","buildContextualTargeting","actionKey","props","propsToDisplay","data","buildPropsData","buildSizeMapping","sizeMapping","groupedViewports","reduce","acc","viewports","size","viewportWidth","viewportHeight","push","keyGroupedViewport","viewport","getMaxBannerHeight","Array","isArray","Math","max","o","MAX_BANNER_HEIGHT","getMinBannerHeight","min","MIN_BANNER_HEIGHT","buildUserQuery","userProps","basicProps","nestedProps","propertiesToDisplay","propKey","indexOf","baseProp","nestedProp","nestedKey","nested","prop","propsWithData","label","parsedKey","value","getNestedValue","labelToUse","parseArrayValues","arr","obj","object","shift","nestedValue"],"sources":["../../../src/components/Banner/helpers.js"],"sourcesContent":["import { parseUrl } from 'query-string';\nimport { END_ADUNIT, MAX_BANNER_HEIGHT, MIN_BANNER_HEIGHT } from '../../constants';\n\nconst getParsedSizes = (sizes = '') => {\n if (typeof sizes !== 'string') return [];\n\n const sanitizedSizes = sizes.replace(/\\s+/, '').toLowerCase();\n const sizeGroups = sanitizedSizes.split(',');\n\n return sizeGroups.map(group => group.split('x').map(Number));\n};\n\nconst addPosnToTargetings = (targetings, index) => {\n const posn = `posn=${index}`;\n return targetings ? `${targetings},${posn}` : posn;\n};\n\nconst buildTargetingValue = valueTargeting =>\n valueTargeting.includes('[') && valueTargeting.includes(']')\n ? valueTargeting.replace(/\\;|\\[|\\]/gm, char => (char === ';' ? ',' : '')).split(',')\n : valueTargeting;\n\nconst setCustomTargetings = (targetings, cardBannerIndex) => {\n let bannerTargetings = {};\n\n const updatedTargetings = cardBannerIndex\n ? addPosnToTargetings(targetings, cardBannerIndex)\n : targetings;\n\n const isValidTargeting = updatedTargetings && typeof updatedTargetings === 'string';\n\n if (isValidTargeting) {\n const customTargeting = {};\n\n let splitTargeting = updatedTargetings.split(',');\n splitTargeting = { ...splitTargeting };\n\n Object.keys(splitTargeting).forEach(key => {\n const [keyTargeting, valueTargeting] = splitTargeting[key].split('=');\n\n if (keyTargeting && valueTargeting) {\n customTargeting[keyTargeting] = buildTargetingValue(valueTargeting);\n }\n });\n bannerTargetings = { ...bannerTargetings, ...customTargeting };\n }\n\n return bannerTargetings;\n};\n\nconst buildParsedAdunit = (path, countContentHierarchies, baseAdunit, adunit) => {\n if (!Number.isInteger(countContentHierarchies)) return '';\n\n const base = baseAdunit || process.env.DFP_BASE_ADUNIT;\n const hasChildren = countContentHierarchies !== 0;\n const { url } = parseUrl(path);\n let urlParts = url\n .split('/')\n .filter(Boolean)\n .map(urlPart => urlPart.replace(/-/g, ''));\n urlParts = urlParts.slice(0, hasChildren ? urlParts.length : urlParts.length - 1).join('/');\n urlParts = urlParts ? `${urlParts}/` : urlParts;\n const endAdunit = adunit || END_ADUNIT;\n\n return `${base}/${urlParts}${endAdunit}`;\n};\n\nconst getBannerSizes = (sizeId, bannerSizes) =>\n sizeId && bannerSizes && bannerSizes.length\n ? bannerSizes.map(({ width, height }) => [width, height])\n : null;\n\nconst buildBannerSizes = (sizeId, bannerSizes, sizes) => {\n let parsedSizes = getBannerSizes(sizeId, bannerSizes);\n\n if (!parsedSizes && sizes) parsedSizes = getParsedSizes(sizes);\n\n return parsedSizes;\n};\n\nconst buildContextualTargeting = (actionKey, props = {}, propsToDisplay = []) => {\n if (actionKey && props[actionKey] && props[actionKey][0]) {\n const data = props[actionKey][0];\n return buildPropsData(data, propsToDisplay);\n }\n return {};\n};\n\nconst buildSizeMapping = (sizeId, bannerSizes) => {\n let sizeMapping = [];\n\n if (sizeId && bannerSizes && bannerSizes.length) {\n const groupedViewports = bannerSizes.reduce((acc, { width, height, viewports = [] }) => {\n const size = width && height ? [width, height] : null; // if one dimension is falsey then it shouldn't display\n\n if (viewports) {\n viewports.forEach(({ width: viewportWidth, height: viewportHeight }) => {\n const key = `${viewportWidth || 0}x${viewportHeight || 0}`;\n acc[key] = acc[key] || [];\n if (size) acc[key].push(size);\n });\n }\n return acc;\n }, {});\n\n sizeMapping = Object.keys(groupedViewports).map(keyGroupedViewport => {\n const [viewportWidth, viewportHeight] = keyGroupedViewport.split('x');\n return {\n viewport: [Number(viewportWidth), Number(viewportHeight)],\n sizes: groupedViewports[keyGroupedViewport]\n };\n });\n }\n\n return sizeMapping;\n};\n\nconst getMaxBannerHeight = bannerSizes => {\n if (Array.isArray(bannerSizes) && bannerSizes.length > 0) {\n return Math.max(...bannerSizes.map(o => o.height));\n }\n return MAX_BANNER_HEIGHT;\n};\n\nconst getMinBannerHeight = bannerSizes => {\n if (Array.isArray(bannerSizes) && bannerSizes.length > 0) {\n return Math.min(...bannerSizes.map(o => o.height));\n }\n return MIN_BANNER_HEIGHT;\n};\n\nconst buildUserQuery = userProps => {\n if (!userProps || !userProps.length) return '';\n const basicProps = [];\n const nestedProps = {};\n userProps.forEach(({ propertiesToDisplay }) => {\n const [propKey] = propertiesToDisplay;\n if (!propKey || propKey === 'id') return;\n if (propKey.indexOf('.') !== -1) {\n const [baseProp, nestedProp] = propKey.split('.');\n if (nestedProps[baseProp]) nestedProps[baseProp].push(nestedProp);\n else nestedProps[baseProp] = [nestedProp];\n } else basicProps.push(propKey);\n });\n\n Object.keys(nestedProps).forEach(nestedKey => {\n const nested = nestedProps[nestedKey];\n basicProps.push(nestedKey);\n basicProps.push('{');\n nested.forEach(prop => basicProps.push(prop));\n basicProps.push('}');\n });\n\n return basicProps.join(' ');\n};\n\nconst buildPropsData = (data, props) => {\n if (!data || !props.length) return {};\n const propsWithData = {};\n\n props.forEach(({ propertiesToDisplay, label }) => {\n const [key] = propertiesToDisplay;\n if (!key) return;\n\n const parsedKey = key.split('.');\n const value = getNestedValue(parsedKey, data);\n const labelToUse = label || key;\n\n propsWithData[labelToUse] = value;\n });\n return propsWithData;\n};\n\nconst parseArrayValues = (arr, key) =>\n arr\n .map(obj => obj[key])\n .filter(Boolean)\n .join(', ');\n\nconst getNestedValue = (keys, object) => {\n const key = keys.shift();\n const nestedValue = Array.isArray(object) ? parseArrayValues(object, key) : object[key];\n if (!nestedValue) return null;\n return keys.length ? getNestedValue(keys, nestedValue) : nestedValue;\n};\n\nexport {\n getParsedSizes,\n setCustomTargetings,\n buildParsedAdunit,\n buildBannerSizes,\n buildContextualTargeting,\n buildSizeMapping,\n getMaxBannerHeight,\n getMinBannerHeight,\n buildPropsData,\n buildUserQuery\n};\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"helpers.js","names":["getParsedSizes","sizes","sanitizedSizes","replace","toLowerCase","sizeGroups","split","map","group","Number","addPosnToTargetings","targetings","index","posn","buildTargetingValue","valueTargeting","includes","char","setCustomTargetings","cardBannerIndex","bannerTargetings","updatedTargetings","isValidTargeting","customTargeting","splitTargeting","Object","keys","forEach","key","keyTargeting","buildParsedAdunit","path","countContentHierarchies","baseAdunit","adunit","isInteger","base","process","env","DFP_BASE_ADUNIT","hasChildren","parseUrl","url","urlParts","filter","Boolean","urlPart","slice","length","join","endAdunit","END_ADUNIT","getBannerSizes","sizeId","bannerSizes","width","height","buildBannerSizes","parsedSizes","buildContextualTargeting","actionKey","props","propsToDisplay","data","buildPropsData","buildSizeMapping","sizeMapping","groupedViewports","reduce","acc","viewports","size","viewportWidth","viewportHeight","push","keyGroupedViewport","viewport","getMaxBannerHeight","Array","isArray","Math","max","o","MAX_BANNER_HEIGHT","getMinBannerHeight","min","MIN_BANNER_HEIGHT","buildUserQuery","userProps","basicProps","nestedProps","propertiesToDisplay","propKey","indexOf","baseProp","nestedProp","nestedKey","nested","prop","propsWithData","label","parsedKey","value","getNestedValue","labelToUse","parseArrayValues","arr","obj","object","shift","nestedValue"],"sources":["../../../src/components/Banner/helpers.js"],"sourcesContent":["import { parseUrl } from 'query-string';\nimport { END_ADUNIT, MAX_BANNER_HEIGHT, MIN_BANNER_HEIGHT } from '../../constants';\n\nconst getParsedSizes = (sizes = '') => {\n if (typeof sizes !== 'string') return [];\n\n const sanitizedSizes = sizes.replace(/\\s+/, '').toLowerCase();\n const sizeGroups = sanitizedSizes.split(',');\n\n return sizeGroups.map(group => group.split('x').map(Number));\n};\n\nconst addPosnToTargetings = (targetings, index) => {\n const posn = `posn=${index}`;\n return targetings ? `${targetings},${posn}` : posn;\n};\n\nconst buildTargetingValue = valueTargeting =>\n valueTargeting.includes('[') && valueTargeting.includes(']')\n ? valueTargeting.replace(/\\;|\\[|\\]/gm, char => (char === ';' ? ',' : '')).split(',')\n : valueTargeting;\n\nconst setCustomTargetings = (targetings, cardBannerIndex) => {\n let bannerTargetings = {};\n\n const updatedTargetings = cardBannerIndex\n ? addPosnToTargetings(targetings, cardBannerIndex)\n : targetings;\n\n const isValidTargeting = updatedTargetings && typeof updatedTargetings === 'string';\n\n if (isValidTargeting) {\n const customTargeting = {};\n\n let splitTargeting = updatedTargetings.split(',');\n splitTargeting = { ...splitTargeting };\n\n Object.keys(splitTargeting).forEach(key => {\n const [keyTargeting, valueTargeting] = splitTargeting[key].split('=');\n\n if (keyTargeting && valueTargeting) {\n customTargeting[keyTargeting] = buildTargetingValue(valueTargeting);\n }\n });\n bannerTargetings = { ...bannerTargetings, ...customTargeting };\n }\n\n return bannerTargetings;\n};\n\nconst buildParsedAdunit = (path, countContentHierarchies, baseAdunit, adunit) => {\n if (!Number.isInteger(countContentHierarchies)) return '';\n\n const base = baseAdunit || process.env.DFP_BASE_ADUNIT;\n const hasChildren = countContentHierarchies !== 0;\n const { url } = parseUrl(path);\n let urlParts = url\n .split('/')\n .filter(Boolean)\n .map(urlPart => urlPart.replace(/-/g, ''));\n urlParts = urlParts.slice(0, hasChildren ? urlParts.length : urlParts.length - 1).join('/');\n urlParts = urlParts ? `${urlParts}/` : urlParts;\n const endAdunit = adunit || END_ADUNIT;\n\n return `${base}/${urlParts}${endAdunit}`;\n};\n\nconst getBannerSizes = (sizeId, bannerSizes) =>\n sizeId && bannerSizes && bannerSizes.length\n ? bannerSizes.map(({ width, height }) => [width, height])\n : null;\n\nconst buildBannerSizes = (sizeId, bannerSizes, sizes) => {\n let parsedSizes = getBannerSizes(sizeId, bannerSizes);\n\n if (!parsedSizes && sizes) parsedSizes = getParsedSizes(sizes);\n\n return parsedSizes;\n};\n\nconst buildContextualTargeting = (actionKey, props = {}, propsToDisplay = []) => {\n if (actionKey && props[actionKey] && props[actionKey][0]) {\n const data = props[actionKey][0];\n return buildPropsData(data, propsToDisplay);\n }\n return {};\n};\n\nconst buildSizeMapping = (sizeId, bannerSizes) => {\n let sizeMapping = [];\n\n if (sizeId && bannerSizes && bannerSizes.length) {\n const groupedViewports = bannerSizes.reduce((acc, { width, height, viewports = [] }) => {\n const size = width && height ? [width, height] : null; // if one dimension is falsey then it shouldn't display\n\n if (viewports) {\n viewports.forEach(({ width: viewportWidth, height: viewportHeight }) => {\n const key = `${viewportWidth || 0}x${viewportHeight || 0}`;\n acc[key] = acc[key] || [];\n if (size) acc[key].push(size);\n });\n }\n return acc;\n }, {});\n\n sizeMapping = Object.keys(groupedViewports).map(keyGroupedViewport => {\n const [viewportWidth, viewportHeight] = keyGroupedViewport.split('x');\n return {\n viewport: [Number(viewportWidth), Number(viewportHeight)],\n sizes: groupedViewports[keyGroupedViewport]\n };\n });\n }\n\n return sizeMapping;\n};\n\nconst getMaxBannerHeight = bannerSizes => {\n if (Array.isArray(bannerSizes) && bannerSizes.length > 0) {\n return Math.max(...bannerSizes.map(o => o.height));\n }\n return MAX_BANNER_HEIGHT;\n};\n\nconst getMinBannerHeight = bannerSizes => {\n if (Array.isArray(bannerSizes) && bannerSizes.length > 0) {\n return Math.min(...bannerSizes.map(o => o.height));\n }\n return MIN_BANNER_HEIGHT;\n};\n\nconst buildUserQuery = userProps => {\n if (!userProps || !userProps.length) return '';\n const basicProps = [];\n const nestedProps = {};\n userProps.forEach(({ propertiesToDisplay }) => {\n const [propKey] = propertiesToDisplay;\n if (!propKey || propKey === 'id') return;\n if (propKey.indexOf('.') !== -1) {\n const [baseProp, nestedProp] = propKey.split('.');\n if (nestedProps[baseProp]) nestedProps[baseProp].push(nestedProp);\n else nestedProps[baseProp] = [nestedProp];\n } else basicProps.push(propKey);\n });\n\n Object.keys(nestedProps).forEach(nestedKey => {\n const nested = nestedProps[nestedKey];\n basicProps.push(nestedKey);\n basicProps.push('{');\n nested.forEach(prop => basicProps.push(prop));\n basicProps.push('}');\n });\n\n return basicProps.join(' ');\n};\n\nconst buildPropsData = (data, props) => {\n if (!data || !props.length) return {};\n const propsWithData = {};\n\n props.forEach(({ propertiesToDisplay, label }) => {\n const [key] = propertiesToDisplay;\n if (!key) return;\n\n const parsedKey = key.split('.');\n const value = getNestedValue(parsedKey, data);\n const labelToUse = label || key;\n\n propsWithData[labelToUse] = value;\n });\n return propsWithData;\n};\n\nconst parseArrayValues = (arr, key) =>\n arr\n .map(obj => obj[key])\n .filter(Boolean)\n .join(', ');\n\nconst getNestedValue = (keys, object) => {\n const key = keys.shift();\n const nestedValue = Array.isArray(object) ? parseArrayValues(object, key) : object[key];\n if (!nestedValue) return null;\n return keys.length ? getNestedValue(keys, nestedValue) : nestedValue;\n};\n\nexport {\n getParsedSizes,\n setCustomTargetings,\n buildParsedAdunit,\n buildBannerSizes,\n buildContextualTargeting,\n buildSizeMapping,\n getMaxBannerHeight,\n getMinBannerHeight,\n buildPropsData,\n buildUserQuery\n};\n"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":[],"sources":["../../../src/components/Banner/index.js"],"sourcesContent":["import dynamic from 'next/dynamic';\n\nexport default dynamic(() => import(/* webpackChunkName: \"blazePbBanner\" */ './Banner'));\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;;;;;;eAEe,
|
|
1
|
+
{"version":3,"file":"index.js","names":["dynamic"],"sources":["../../../src/components/Banner/index.js"],"sourcesContent":["import dynamic from 'next/dynamic';\n\nexport default dynamic(() => import(/* webpackChunkName: \"blazePbBanner\" */ './Banner'));\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;;;;;;eAEe,IAAAA,mBAAA,EAAQ;EAAA;IAAA,uCAAqD,UAArD;EAAA;AAAA,CAAR,C"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BlazeLink.js","names":["BlazeLink","children","className","name","href","as","shallow","scroll","gtmId","onClick","MainContext","hasGTM","gtmProps","linkExtraProps","propTypes","PropTypes","oneOfType","arrayOf","node","string","title","bool","func","defaultProps"],"sources":["../../src/components/BlazeLink.js"],"sourcesContent":["import React, { useContext } from 'react';\nimport PropTypes from 'prop-types';\nimport { Link, MainContext } from '@blaze-cms/nextjs-components';\nimport buildLinkExtraProps from '../helpers/build-link-extra-props';\n\nconst BlazeLink = ({ children, className, name, href, as, shallow, scroll, gtmId, onClick }) => {\n const { hasGTM } = useContext(MainContext);\n const gtmProps = hasGTM && !!gtmId ? { gtmId } : {};\n const linkExtraProps = buildLinkExtraProps({ className, name, as, ...gtmProps });\n if (!href) return children;\n\n return (\n <Link href={href} shallow={shallow} scroll={scroll} onClick={onClick} {...linkExtraProps}>\n {children}\n </Link>\n );\n};\n\nBlazeLink.propTypes = {\n children: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.node), PropTypes.node]),\n href: PropTypes.string,\n as: PropTypes.string,\n name: PropTypes.string,\n title: PropTypes.string,\n className: PropTypes.string,\n shallow: PropTypes.bool,\n scroll: PropTypes.bool,\n gtmId: PropTypes.string,\n onClick: PropTypes.func\n};\n\nBlazeLink.defaultProps = {\n children: [],\n as: '',\n href: '/',\n name: '',\n title: '',\n className: '',\n shallow: false,\n scroll: null,\n gtmId: '',\n onClick: null\n};\n\nexport default BlazeLink;\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;;AACA;;AACA;;AACA;;;;;;;;;;AAEA,IAAMA,SAAS,GAAG,SAAZA,SAAY,OAA8E;EAAA,IAA3EC,QAA2E,QAA3EA,QAA2E;EAAA,IAAjEC,SAAiE,QAAjEA,SAAiE;EAAA,IAAtDC,IAAsD,QAAtDA,IAAsD;EAAA,IAAhDC,IAAgD,QAAhDA,IAAgD;EAAA,IAA1CC,EAA0C,QAA1CA,EAA0C;EAAA,IAAtCC,OAAsC,QAAtCA,OAAsC;EAAA,IAA7BC,MAA6B,QAA7BA,MAA6B;EAAA,IAArBC,KAAqB,QAArBA,KAAqB;EAAA,IAAdC,OAAc,QAAdA,OAAc;;EAC9F,kBAAmB,
|
|
1
|
+
{"version":3,"file":"BlazeLink.js","names":["BlazeLink","children","className","name","href","as","shallow","scroll","gtmId","onClick","useContext","MainContext","hasGTM","gtmProps","linkExtraProps","buildLinkExtraProps","propTypes","PropTypes","oneOfType","arrayOf","node","string","title","bool","func","defaultProps"],"sources":["../../src/components/BlazeLink.js"],"sourcesContent":["import React, { useContext } from 'react';\nimport PropTypes from 'prop-types';\nimport { Link, MainContext } from '@blaze-cms/nextjs-components';\nimport buildLinkExtraProps from '../helpers/build-link-extra-props';\n\nconst BlazeLink = ({ children, className, name, href, as, shallow, scroll, gtmId, onClick }) => {\n const { hasGTM } = useContext(MainContext);\n const gtmProps = hasGTM && !!gtmId ? { gtmId } : {};\n const linkExtraProps = buildLinkExtraProps({ className, name, as, ...gtmProps });\n if (!href) return children;\n\n return (\n <Link href={href} shallow={shallow} scroll={scroll} onClick={onClick} {...linkExtraProps}>\n {children}\n </Link>\n );\n};\n\nBlazeLink.propTypes = {\n children: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.node), PropTypes.node]),\n href: PropTypes.string,\n as: PropTypes.string,\n name: PropTypes.string,\n title: PropTypes.string,\n className: PropTypes.string,\n shallow: PropTypes.bool,\n scroll: PropTypes.bool,\n gtmId: PropTypes.string,\n onClick: PropTypes.func\n};\n\nBlazeLink.defaultProps = {\n children: [],\n as: '',\n href: '/',\n name: '',\n title: '',\n className: '',\n shallow: false,\n scroll: null,\n gtmId: '',\n onClick: null\n};\n\nexport default BlazeLink;\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;;AACA;;AACA;;AACA;;;;;;;;;;AAEA,IAAMA,SAAS,GAAG,SAAZA,SAAY,OAA8E;EAAA,IAA3EC,QAA2E,QAA3EA,QAA2E;EAAA,IAAjEC,SAAiE,QAAjEA,SAAiE;EAAA,IAAtDC,IAAsD,QAAtDA,IAAsD;EAAA,IAAhDC,IAAgD,QAAhDA,IAAgD;EAAA,IAA1CC,EAA0C,QAA1CA,EAA0C;EAAA,IAAtCC,OAAsC,QAAtCA,OAAsC;EAAA,IAA7BC,MAA6B,QAA7BA,MAA6B;EAAA,IAArBC,KAAqB,QAArBA,KAAqB;EAAA,IAAdC,OAAc,QAAdA,OAAc;;EAC9F,kBAAmB,IAAAC,iBAAA,EAAWC,6BAAX,CAAnB;EAAA,IAAQC,MAAR,eAAQA,MAAR;;EACA,IAAMC,QAAQ,GAAGD,MAAM,IAAI,CAAC,CAACJ,KAAZ,GAAoB;IAAEA,KAAK,EAALA;EAAF,CAApB,GAAgC,EAAjD;EACA,IAAMM,cAAc,GAAG,IAAAC,+BAAA;IAAsBb,SAAS,EAATA,SAAtB;IAAiCC,IAAI,EAAJA,IAAjC;IAAuCE,EAAE,EAAFA;EAAvC,GAA8CQ,QAA9C,EAAvB;EACA,IAAI,CAACT,IAAL,EAAW,OAAOH,QAAP;EAEX,oBACE,gCAAC,sBAAD;IAAM,IAAI,EAAEG,IAAZ;IAAkB,OAAO,EAAEE,OAA3B;IAAoC,MAAM,EAAEC,MAA5C;IAAoD,OAAO,EAAEE;EAA7D,GAA0EK,cAA1E,GACGb,QADH,CADF;AAKD,CAXD;;AAaAD,SAAS,CAACgB,SAAV,GAAsB;EACpBf,QAAQ,EAAEgB,qBAAA,CAAUC,SAAV,CAAoB,CAACD,qBAAA,CAAUE,OAAV,CAAkBF,qBAAA,CAAUG,IAA5B,CAAD,EAAoCH,qBAAA,CAAUG,IAA9C,CAApB,CADU;EAEpBhB,IAAI,EAAEa,qBAAA,CAAUI,MAFI;EAGpBhB,EAAE,EAAEY,qBAAA,CAAUI,MAHM;EAIpBlB,IAAI,EAAEc,qBAAA,CAAUI,MAJI;EAKpBC,KAAK,EAAEL,qBAAA,CAAUI,MALG;EAMpBnB,SAAS,EAAEe,qBAAA,CAAUI,MAND;EAOpBf,OAAO,EAAEW,qBAAA,CAAUM,IAPC;EAQpBhB,MAAM,EAAEU,qBAAA,CAAUM,IARE;EASpBf,KAAK,EAAES,qBAAA,CAAUI,MATG;EAUpBZ,OAAO,EAAEQ,qBAAA,CAAUO;AAVC,CAAtB;AAaAxB,SAAS,CAACyB,YAAV,GAAyB;EACvBxB,QAAQ,EAAE,EADa;EAEvBI,EAAE,EAAE,EAFmB;EAGvBD,IAAI,EAAE,GAHiB;EAIvBD,IAAI,EAAE,EAJiB;EAKvBmB,KAAK,EAAE,EALgB;EAMvBpB,SAAS,EAAE,EANY;EAOvBI,OAAO,EAAE,KAPc;EAQvBC,MAAM,EAAE,IARe;EASvBC,KAAK,EAAE,EATgB;EAUvBC,OAAO,EAAE;AAVc,CAAzB;eAaeT,S"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Breadcrumb.js","names":["Breadcrumb","type","otherProps","MainContext","isPreview","parent","itemEntity","itemId","getSingleEntitySchema","variables","id","data","error","loading","getEntitySchema","actions","getPublished","get","actionKey","skip","parentsData","parentsLoading","message","modifiers","recordParents","name","url","parents","breadcrumbItems","reverse","map","item","propTypes","PropTypes","string","defaultProps"],"sources":["../../../src/components/Breadcrumb/Breadcrumb.js"],"sourcesContent":["import React, { useContext } from 'react';\nimport { MainContext, Link } from '@blaze-cms/nextjs-components';\nimport PropTypes from 'prop-types';\nimport { useQuery } from '@apollo/client';\nimport Breadcrumbs from '@blaze-react/breadcrumb';\nimport { getRecordParents, getSingleEntitySchema } from '../../application/query';\nimport Wrapper from '../Wrapper';\nimport { getClassModifiers } from '../../utils';\n\nconst Breadcrumb = ({ type, ...otherProps }) => {\n const { isPreview } = useContext(MainContext);\n const { parent } = otherProps;\n const { itemEntity, itemId } = parent;\n\n const { data = {}, error, loading } = useQuery(getSingleEntitySchema, {\n variables: { id: itemEntity }\n });\n\n const { getEntitySchema = {} } = data;\n const { actions: { getPublished, get } = {} } = getEntitySchema;\n const actionKey = isPreview ? get : getPublished || get;\n\n const { data: parentsData = [], loading: parentsLoading } = useQuery(\n getRecordParents(actionKey),\n {\n variables: { id: itemId },\n skip: !actionKey\n }\n );\n\n if (loading || parentsLoading) return '';\n if (error) return error.message;\n if (!data) return null;\n\n const modifiers = getClassModifiers('breadcrumb', otherProps);\n const { recordParents: { name, url, parents = [] } = {} } = parentsData;\n\n if (url === '/') return '';\n\n const breadcrumbItems = [\n {\n name,\n url\n },\n ...parents,\n {\n name: 'Home',\n url: '/'\n }\n ];\n\n return (\n <Wrapper className={type} modifiers={modifiers}>\n <Breadcrumbs>\n {breadcrumbItems.reverse().map(item => (\n <Link key={item.url} href={item.url}>\n {item.name}\n </Link>\n ))}\n </Breadcrumbs>\n </Wrapper>\n );\n};\n\nBreadcrumb.propTypes = {\n type: PropTypes.string\n};\n\nBreadcrumb.defaultProps = {\n type: 'breadcrumb'\n};\n\nexport default Breadcrumb;\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;;;;;;;AAEA,IAAMA,UAAU,GAAG,SAAbA,UAAa,OAA6B;EAAA,IAA1BC,IAA0B,QAA1BA,IAA0B;EAAA,IAAjBC,UAAiB;;EAC9C,kBAAsB,
|
|
1
|
+
{"version":3,"file":"Breadcrumb.js","names":["Breadcrumb","type","otherProps","useContext","MainContext","isPreview","parent","itemEntity","itemId","useQuery","getSingleEntitySchema","variables","id","data","error","loading","getEntitySchema","actions","getPublished","get","actionKey","getRecordParents","skip","parentsData","parentsLoading","message","modifiers","getClassModifiers","recordParents","name","url","parents","breadcrumbItems","reverse","map","item","propTypes","PropTypes","string","defaultProps"],"sources":["../../../src/components/Breadcrumb/Breadcrumb.js"],"sourcesContent":["import React, { useContext } from 'react';\nimport { MainContext, Link } from '@blaze-cms/nextjs-components';\nimport PropTypes from 'prop-types';\nimport { useQuery } from '@apollo/client';\nimport Breadcrumbs from '@blaze-react/breadcrumb';\nimport { getRecordParents, getSingleEntitySchema } from '../../application/query';\nimport Wrapper from '../Wrapper';\nimport { getClassModifiers } from '../../utils';\n\nconst Breadcrumb = ({ type, ...otherProps }) => {\n const { isPreview } = useContext(MainContext);\n const { parent } = otherProps;\n const { itemEntity, itemId } = parent;\n\n const { data = {}, error, loading } = useQuery(getSingleEntitySchema, {\n variables: { id: itemEntity }\n });\n\n const { getEntitySchema = {} } = data;\n const { actions: { getPublished, get } = {} } = getEntitySchema;\n const actionKey = isPreview ? get : getPublished || get;\n\n const { data: parentsData = [], loading: parentsLoading } = useQuery(\n getRecordParents(actionKey),\n {\n variables: { id: itemId },\n skip: !actionKey\n }\n );\n\n if (loading || parentsLoading) return '';\n if (error) return error.message;\n if (!data) return null;\n\n const modifiers = getClassModifiers('breadcrumb', otherProps);\n const { recordParents: { name, url, parents = [] } = {} } = parentsData;\n\n if (url === '/') return '';\n\n const breadcrumbItems = [\n {\n name,\n url\n },\n ...parents,\n {\n name: 'Home',\n url: '/'\n }\n ];\n\n return (\n <Wrapper className={type} modifiers={modifiers}>\n <Breadcrumbs>\n {breadcrumbItems.reverse().map(item => (\n <Link key={item.url} href={item.url}>\n {item.name}\n </Link>\n ))}\n </Breadcrumbs>\n </Wrapper>\n );\n};\n\nBreadcrumb.propTypes = {\n type: PropTypes.string\n};\n\nBreadcrumb.defaultProps = {\n type: 'breadcrumb'\n};\n\nexport default Breadcrumb;\n"],"mappings":"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"}
|
package/lib/components/Button.js
CHANGED
|
@@ -53,13 +53,15 @@ var _reactCookie = require("react-cookie");
|
|
|
53
53
|
|
|
54
54
|
var _router = require("next/router");
|
|
55
55
|
|
|
56
|
+
var _classnames = _interopRequireDefault(require("classnames"));
|
|
57
|
+
|
|
56
58
|
var _button = _interopRequireDefault(require("@blaze-react/button"));
|
|
57
59
|
|
|
58
60
|
var _coreAuthUi = require("@blaze-cms/core-auth-ui");
|
|
59
61
|
|
|
60
62
|
var _client = require("@apollo/client");
|
|
61
63
|
|
|
62
|
-
var _propTypes =
|
|
64
|
+
var _propTypes = _interopRequireWildcard(require("prop-types"));
|
|
63
65
|
|
|
64
66
|
var _ClickWrapper = _interopRequireDefault(require("./ClickWrapper"));
|
|
65
67
|
|
|
@@ -73,7 +75,7 @@ var _constants = require("../constants");
|
|
|
73
75
|
|
|
74
76
|
var _helpers = require("../helpers");
|
|
75
77
|
|
|
76
|
-
var _excluded = ["type", "text", "url", "icon", "name", "style", "children", "clickAction"];
|
|
78
|
+
var _excluded = ["type", "text", "url", "icon", "name", "style", "children", "clickAction", "childSeoVisibility", "afterClickText"];
|
|
77
79
|
|
|
78
80
|
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
|
|
79
81
|
|
|
@@ -92,6 +94,8 @@ var Button = function Button(props) {
|
|
|
92
94
|
style = props.style,
|
|
93
95
|
children = props.children,
|
|
94
96
|
clickAction = props.clickAction,
|
|
97
|
+
childSeoVisibility = props.childSeoVisibility,
|
|
98
|
+
afterClickText = props.afterClickText,
|
|
95
99
|
otherProps = (0, _objectWithoutProperties2["default"])(props, _excluded);
|
|
96
100
|
var client = (0, _client.useApolloClient)();
|
|
97
101
|
var router = (0, _router.useRouter)();
|
|
@@ -147,35 +151,44 @@ var Button = function Button(props) {
|
|
|
147
151
|
wrapperProps = _getClickWrapperOptio.wrapperProps;
|
|
148
152
|
|
|
149
153
|
var Wrapper = shouldUseClickWrapper ? _ClickWrapper["default"] : _react.Fragment;
|
|
150
|
-
|
|
154
|
+
var contentClassName = (0, _classnames["default"])('button__content', {
|
|
155
|
+
'button__content--show': showChildren
|
|
156
|
+
});
|
|
157
|
+
return /*#__PURE__*/_react["default"].createElement(Wrapper, wrapperProps, childSeoVisibility && /*#__PURE__*/_react["default"].createElement("div", {
|
|
158
|
+
className: contentClassName
|
|
159
|
+
}, renderedChildren), !childSeoVisibility && showChildren && renderedChildren, /*#__PURE__*/_react["default"].createElement(DynamicButton, (0, _extends2["default"])({
|
|
151
160
|
className: modifiers,
|
|
152
161
|
onClick: handleClick
|
|
153
162
|
}, currentProps), icon && /*#__PURE__*/_react["default"].createElement("i", {
|
|
154
163
|
className: icon
|
|
155
|
-
}),
|
|
164
|
+
}), showChildren ? afterClickText : text));
|
|
156
165
|
};
|
|
157
166
|
|
|
158
167
|
Button.propTypes = {
|
|
159
168
|
clickAction: _propTypes["default"].string,
|
|
160
169
|
text: _propTypes["default"].string,
|
|
170
|
+
afterClickText: _propTypes.string,
|
|
161
171
|
name: _propTypes["default"].string,
|
|
162
172
|
type: _propTypes["default"].string,
|
|
163
173
|
url: _propTypes["default"].string,
|
|
164
174
|
size: _propTypes["default"].string,
|
|
165
175
|
icon: _propTypes["default"].string,
|
|
166
176
|
style: _propTypes["default"].string,
|
|
177
|
+
childSeoVisibility: _propTypes.bool,
|
|
167
178
|
children: _propTypes["default"].oneOfType([_propTypes["default"].arrayOf(_propTypes["default"].node), _propTypes["default"].node])
|
|
168
179
|
};
|
|
169
180
|
Button.defaultProps = {
|
|
170
181
|
clickAction: '',
|
|
171
182
|
text: '',
|
|
183
|
+
afterClickText: '',
|
|
172
184
|
name: '',
|
|
173
185
|
type: '',
|
|
174
186
|
url: null,
|
|
175
187
|
size: '',
|
|
176
188
|
icon: '',
|
|
177
189
|
style: '',
|
|
178
|
-
children: []
|
|
190
|
+
children: [],
|
|
191
|
+
childSeoVisibility: false
|
|
179
192
|
};
|
|
180
193
|
|
|
181
194
|
var _default = (0, _HOC.withTitle)(Button);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Button.js","names":["Button","props","type","text","url","icon","name","style","children","clickAction","otherProps","client","router","isLogoutButton","LOGOUT","cookies","blazeCookie","blaze_auth","showChildren","setShowChildren","checkIfButtonShouldRender","logout","reload","handleClick","buttonType","modifiers","currentProps","href","title","DynamicButton","BlazeLink","BlazeButton","parent","itemId","itemEntity","renderedChildren","onClose","shouldUseClickWrapper","wrapperProps","Wrapper","ClickWrapper","Fragment","propTypes","PropTypes","string","size","oneOfType","arrayOf","node","defaultProps"],"sources":["../../src/components/Button.js"],"sourcesContent":["import React, { useState, Fragment } from 'react';\nimport { useCookies } from 'react-cookie';\nimport { useRouter } from 'next/router';\nimport BlazeButton from '@blaze-react/button';\nimport { handleLogout } from '@blaze-cms/core-auth-ui';\nimport { useApolloClient } from '@apollo/client';\nimport PropTypes from 'prop-types';\nimport ClickWrapper from './ClickWrapper';\nimport BlazeLink from './BlazeLink';\nimport { withTitle } from '../HOC';\nimport { getClassModifiers } from '../utils';\nimport { LOGOUT } from '../constants';\nimport {\n renderChildren,\n updateChildrensParent,\n hasChildren,\n getClickWrapperOptions\n} from '../helpers';\n\nconst Button = props => {\n const {
|
|
1
|
+
{"version":3,"file":"Button.js","names":["Button","props","type","text","url","icon","name","style","children","clickAction","childSeoVisibility","afterClickText","otherProps","client","useApolloClient","router","useRouter","isLogoutButton","LOGOUT","useCookies","cookies","blazeCookie","blaze_auth","useState","showChildren","setShowChildren","checkIfButtonShouldRender","hasChildren","logout","handleLogout","reload","handleClick","buttonType","modifiers","getClassModifiers","currentProps","href","title","DynamicButton","BlazeLink","BlazeButton","updateChildrensParent","parent","itemId","itemEntity","renderedChildren","renderChildren","onClose","getClickWrapperOptions","shouldUseClickWrapper","wrapperProps","Wrapper","ClickWrapper","Fragment","contentClassName","classnames","propTypes","PropTypes","string","size","bool","oneOfType","arrayOf","node","defaultProps","withTitle"],"sources":["../../src/components/Button.js"],"sourcesContent":["import React, { useState, Fragment } from 'react';\nimport { useCookies } from 'react-cookie';\nimport { useRouter } from 'next/router';\nimport classnames from 'classnames';\nimport BlazeButton from '@blaze-react/button';\nimport { handleLogout } from '@blaze-cms/core-auth-ui';\nimport { useApolloClient } from '@apollo/client';\nimport PropTypes, { bool, string } from 'prop-types';\nimport ClickWrapper from './ClickWrapper';\nimport BlazeLink from './BlazeLink';\nimport { withTitle } from '../HOC';\nimport { getClassModifiers } from '../utils';\nimport { LOGOUT } from '../constants';\nimport {\n renderChildren,\n updateChildrensParent,\n hasChildren,\n getClickWrapperOptions\n} from '../helpers';\n\nconst Button = props => {\n const {\n type,\n text,\n url,\n icon,\n name,\n style,\n children,\n clickAction,\n childSeoVisibility,\n afterClickText,\n ...otherProps\n } = props;\n const client = useApolloClient();\n const router = useRouter();\n const isLogoutButton = clickAction === LOGOUT;\n const [cookies] = useCookies();\n const { blaze_auth: blazeCookie } = cookies;\n const [showChildren, setShowChildren] = useState(false);\n\n const checkIfButtonShouldRender = () => {\n if (isLogoutButton) return !!blazeCookie;\n if (!text && !icon) return false;\n return !!(url || hasChildren(children));\n };\n\n const logout = () => {\n handleLogout(client);\n url ? router.reload(url) : router.reload();\n };\n\n const handleClick = () => {\n if (isLogoutButton) logout();\n if (!url && !isLogoutButton) setShowChildren(!showChildren);\n };\n\n if (!checkIfButtonShouldRender()) return null;\n\n const buttonType = !text && icon ? 'icon' : type;\n const modifiers = getClassModifiers(buttonType, { icon, style, ...otherProps });\n const currentProps = url ? { href: url, title: name } : { name };\n const DynamicButton = url && !isLogoutButton ? BlazeLink : BlazeButton;\n updateChildrensParent(children, otherProps.parent.itemId, otherProps.parent.itemEntity);\n\n const renderedChildren = renderChildren(children, { onClose: handleClick });\n const { shouldUseClickWrapper, wrapperProps } = getClickWrapperOptions(children, props);\n const Wrapper = shouldUseClickWrapper ? ClickWrapper : Fragment;\n\n const contentClassName = classnames('button__content', {\n 'button__content--show': showChildren\n });\n\n return (\n <Wrapper {...wrapperProps}>\n {childSeoVisibility && <div className={contentClassName}>{renderedChildren}</div>}\n {!childSeoVisibility && showChildren && renderedChildren}\n <DynamicButton className={modifiers} onClick={handleClick} {...currentProps}>\n {icon && <i className={icon} />}\n {showChildren ? afterClickText : text}\n </DynamicButton>\n </Wrapper>\n );\n};\n\nButton.propTypes = {\n clickAction: PropTypes.string,\n text: PropTypes.string,\n afterClickText: string,\n name: PropTypes.string,\n type: PropTypes.string,\n url: PropTypes.string,\n size: PropTypes.string,\n icon: PropTypes.string,\n style: PropTypes.string,\n childSeoVisibility: bool,\n children: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.node), PropTypes.node])\n};\n\nButton.defaultProps = {\n clickAction: '',\n text: '',\n afterClickText: '',\n name: '',\n type: '',\n url: null,\n size: '',\n icon: '',\n style: '',\n children: [],\n childSeoVisibility: false\n};\n\nexport default withTitle(Button);\n"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Card.js","names":["Card","id","image","name","url","entity","entityProps","alternativePreHeader","alternativeHeadline","category","modifier","propsToDisplay","propsToDisplayModifiers","gtmId","style","priority","cardChildren","gtmChildren","displayCategory","displayThumbnail","displayTitle","enableOverlay","enableCarousel","titleOverlayModifier","overlayModifier","gridModifier","otherProps","getImageDefinedProps","imageSrc","shouldDisplayThumbnail","altText","modifiers","getInitialModifiers","getCategoryDefinedProps","publishedListingPage","preHeader","label","headline","linkTitle","dynamicSizeKey","CARD_STRING","shouldUseClickWrapper","wrapperProps","Wrapper","ClickWrapper","Fragment","classNameWithModifiers","contentWrapperModifier","titleWrapperModifier","length","map","prop","i","dynamicKey","propModifier","propTypes","PropTypes","string","isRequired","shape","data","object","array","bool","oneOfType","arrayOf","node","defaultProps","hasAlternativePreHeader","sponsored","featured","push"],"sources":["../../../src/components/Card/Card.js"],"sourcesContent":["import React, { Fragment } from 'react';\nimport PropTypes from 'prop-types';\nimport BlazeLink from '../BlazeLink';\nimport ClickWrapper from '../ClickWrapper';\nimport {\n getModifiers,\n renderChildren,\n updateChildrensParent,\n getClickWrapperOptions\n} from '../../helpers';\nimport LazyImage from '../LazyImage';\nimport { getPublishedListingUrl, useDynamicSizeKey } from './helpers';\nimport { CARD_STRING } from './constants';\n\nconst Card = ({\n id,\n image,\n name,\n url,\n entity,\n entityProps,\n alternativePreHeader,\n alternativeHeadline,\n category,\n modifier,\n propsToDisplay,\n propsToDisplayModifiers,\n gtmId,\n style,\n priority,\n cardChildren,\n gtmChildren,\n displayCategory,\n displayThumbnail,\n displayTitle,\n enableOverlay,\n enableCarousel,\n titleOverlayModifier,\n overlayModifier,\n gridModifier,\n ...otherProps\n}) => {\n updateChildrensParent(cardChildren, id, entity);\n const { imageSrc, shouldDisplayThumbnail, altText } = getImageDefinedProps({\n image,\n displayThumbnail\n });\n\n const modifiers = getInitialModifiers({ modifier, style, otherProps });\n\n const { publishedListingPage, preHeader, label, headline } = getCategoryDefinedProps({\n alternativePreHeader,\n category,\n entity,\n alternativeHeadline,\n displayCategory,\n name\n });\n\n const linkTitle = name;\n\n const dynamicSizeKey = useDynamicSizeKey(CARD_STRING, { style, gridModifier, modifier });\n\n const { shouldUseClickWrapper, wrapperProps } = getClickWrapperOptions(\n gtmChildren,\n entityProps,\n id\n );\n\n const Wrapper = shouldUseClickWrapper ? ClickWrapper : Fragment;\n\n const classNameWithModifiers = getModifiers(CARD_STRING, modifiers);\n\n const contentWrapperModifier = `${getModifiers('card__content-wrapper', modifiers)} ${\n enableOverlay && enableCarousel ? overlayModifier : ''\n }`;\n\n const titleWrapperModifier = `${getModifiers('card__title', modifiers)} ${\n enableOverlay && enableCarousel ? titleOverlayModifier : ''\n }`;\n\n return (\n <Wrapper {...wrapperProps}>\n <div className={classNameWithModifiers}>\n {shouldDisplayThumbnail && (\n <div className={getModifiers('card__image', modifiers)}>\n <BlazeLink gtmId={gtmId} href={url} className=\"card__image-link\" scroll>\n <LazyImage\n src={imageSrc}\n alt={altText}\n sizeKey={dynamicSizeKey}\n priority={priority}\n />\n </BlazeLink>\n </div>\n )}\n <div className={contentWrapperModifier}>\n <div className={getModifiers('card__content', modifiers)}>\n {displayCategory &&\n (publishedListingPage ? (\n <BlazeLink\n gtmId={gtmId}\n href={publishedListingPage}\n className=\"badge badge--label\"\n scroll>\n {preHeader.name}\n </BlazeLink>\n ) : (\n <div className=\"badge badge--label\">{label}</div>\n ))}\n {displayTitle && (\n <h2 className={titleWrapperModifier}>\n <BlazeLink title={linkTitle} gtmId={gtmId} href={url} scroll>\n {headline}\n </BlazeLink>\n </h2>\n )}\n {!!propsToDisplay.length && (\n <div className={getModifiers('card__details', modifiers)}>\n {propsToDisplay.map((prop, i) => {\n if (!prop) return null;\n const dynamicKey = `${id}${i}`;\n const propModifier = propsToDisplayModifiers[i] || '';\n\n return (\n <span key={dynamicKey} className={propModifier}>\n {prop}\n </span>\n );\n })}\n </div>\n )}\n </div>\n {!!cardChildren && (\n <div className=\"card__child-content\">{renderChildren(cardChildren)}</div>\n )}\n </div>\n </div>\n </Wrapper>\n );\n};\n\nCard.propTypes = {\n id: PropTypes.string.isRequired,\n image: PropTypes.shape({\n url: PropTypes.string,\n data: PropTypes.object\n }),\n style: PropTypes.string,\n propsToDisplay: PropTypes.array,\n propsToDisplayModifiers: PropTypes.array,\n url: PropTypes.string,\n name: PropTypes.string.isRequired,\n entity: PropTypes.string.isRequired,\n entityProps: PropTypes.object,\n gtmId: PropTypes.string,\n alternativePreHeader: PropTypes.shape({\n name: PropTypes.string\n }),\n alternativeHeadline: PropTypes.string,\n category: PropTypes.shape({\n name: PropTypes.string,\n publishedListingPage: PropTypes.shape({\n url: PropTypes.string\n })\n }),\n modifier: PropTypes.string,\n displayCategory: PropTypes.bool.isRequired,\n displayThumbnail: PropTypes.bool.isRequired,\n displayTitle: PropTypes.bool.isRequired,\n enableCarousel: PropTypes.bool,\n enableOverlay: PropTypes.bool,\n overlayModifier: PropTypes.string,\n titleOverlayModifier: PropTypes.string,\n cardChildren: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.node), PropTypes.node]),\n gtmChildren: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.node), PropTypes.node]),\n gridModifier: PropTypes.string,\n priority: PropTypes.bool\n};\n\nCard.defaultProps = {\n entityProps: {},\n image: {\n url: null,\n data: {}\n },\n gtmId: '',\n style: 'portrait',\n propsToDisplay: [],\n propsToDisplayModifiers: [],\n url: '',\n alternativePreHeader: null,\n alternativeHeadline: '',\n category: null,\n modifier: '',\n cardChildren: [],\n gtmChildren: [],\n gridModifier: '',\n priority: false,\n overlayModifier: '',\n titleOverlayModifier: '',\n enableOverlay: false,\n enableCarousel: false\n};\n\nconst getCategoryDefinedProps = ({\n alternativePreHeader,\n category,\n entity,\n alternativeHeadline,\n displayCategory,\n name\n}) => {\n const hasAlternativePreHeader = alternativePreHeader && alternativePreHeader.name;\n const preHeader =\n alternativeHeadline && hasAlternativePreHeader ? alternativePreHeader : category;\n const publishedListingPage = getPublishedListingUrl(preHeader);\n const label = preHeader ? preHeader.name : entity;\n const headline =\n !displayCategory || !hasAlternativePreHeader ? name : alternativeHeadline || name;\n return { publishedListingPage, preHeader, label, headline };\n};\n\nconst getImageDefinedProps = ({ image, displayThumbnail }) => {\n const { url: imageSrc, data } = image || {};\n const shouldDisplayThumbnail = displayThumbnail && imageSrc;\n const altText = (data && data.altText) || '';\n return { imageSrc, shouldDisplayThumbnail, altText };\n};\n\nconst getInitialModifiers = ({ modifier, style, otherProps }) => {\n const modifiers = [modifier, style];\n const { sponsored, featured } = otherProps;\n if (sponsored) modifiers.push('sponsored');\n if (featured) modifiers.push('featured');\n\n return modifiers;\n};\n\nexport default Card;\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Card.js","names":["Card","id","image","name","url","entity","entityProps","alternativePreHeader","alternativeHeadline","category","modifier","propsToDisplay","propsToDisplayModifiers","gtmId","style","priority","cardChildren","gtmChildren","displayCategory","displayThumbnail","displayTitle","enableOverlay","enableCarousel","titleOverlayModifier","overlayModifier","gridModifier","otherProps","updateChildrensParent","getImageDefinedProps","imageSrc","shouldDisplayThumbnail","altText","modifiers","getInitialModifiers","getCategoryDefinedProps","publishedListingPage","preHeader","label","headline","linkTitle","dynamicSizeKey","useDynamicSizeKey","CARD_STRING","getClickWrapperOptions","shouldUseClickWrapper","wrapperProps","Wrapper","ClickWrapper","Fragment","classNameWithModifiers","getModifiers","contentWrapperModifier","titleWrapperModifier","length","map","prop","i","dynamicKey","propModifier","renderChildren","propTypes","PropTypes","string","isRequired","shape","data","object","array","bool","oneOfType","arrayOf","node","defaultProps","hasAlternativePreHeader","getPublishedListingUrl","sponsored","featured","push"],"sources":["../../../src/components/Card/Card.js"],"sourcesContent":["import React, { Fragment } from 'react';\nimport PropTypes from 'prop-types';\nimport BlazeLink from '../BlazeLink';\nimport ClickWrapper from '../ClickWrapper';\nimport {\n getModifiers,\n renderChildren,\n updateChildrensParent,\n getClickWrapperOptions\n} from '../../helpers';\nimport LazyImage from '../LazyImage';\nimport { getPublishedListingUrl, useDynamicSizeKey } from './helpers';\nimport { CARD_STRING } from './constants';\n\nconst Card = ({\n id,\n image,\n name,\n url,\n entity,\n entityProps,\n alternativePreHeader,\n alternativeHeadline,\n category,\n modifier,\n propsToDisplay,\n propsToDisplayModifiers,\n gtmId,\n style,\n priority,\n cardChildren,\n gtmChildren,\n displayCategory,\n displayThumbnail,\n displayTitle,\n enableOverlay,\n enableCarousel,\n titleOverlayModifier,\n overlayModifier,\n gridModifier,\n ...otherProps\n}) => {\n updateChildrensParent(cardChildren, id, entity);\n const { imageSrc, shouldDisplayThumbnail, altText } = getImageDefinedProps({\n image,\n displayThumbnail\n });\n\n const modifiers = getInitialModifiers({ modifier, style, otherProps });\n\n const { publishedListingPage, preHeader, label, headline } = getCategoryDefinedProps({\n alternativePreHeader,\n category,\n entity,\n alternativeHeadline,\n displayCategory,\n name\n });\n\n const linkTitle = name;\n\n const dynamicSizeKey = useDynamicSizeKey(CARD_STRING, { style, gridModifier, modifier });\n\n const { shouldUseClickWrapper, wrapperProps } = getClickWrapperOptions(\n gtmChildren,\n entityProps,\n id\n );\n\n const Wrapper = shouldUseClickWrapper ? ClickWrapper : Fragment;\n\n const classNameWithModifiers = getModifiers(CARD_STRING, modifiers);\n\n const contentWrapperModifier = `${getModifiers('card__content-wrapper', modifiers)} ${\n enableOverlay && enableCarousel ? overlayModifier : ''\n }`;\n\n const titleWrapperModifier = `${getModifiers('card__title', modifiers)} ${\n enableOverlay && enableCarousel ? titleOverlayModifier : ''\n }`;\n\n return (\n <Wrapper {...wrapperProps}>\n <div className={classNameWithModifiers}>\n {shouldDisplayThumbnail && (\n <div className={getModifiers('card__image', modifiers)}>\n <BlazeLink gtmId={gtmId} href={url} className=\"card__image-link\" scroll>\n <LazyImage\n src={imageSrc}\n alt={altText}\n sizeKey={dynamicSizeKey}\n priority={priority}\n />\n </BlazeLink>\n </div>\n )}\n <div className={contentWrapperModifier}>\n <div className={getModifiers('card__content', modifiers)}>\n {displayCategory &&\n (publishedListingPage ? (\n <BlazeLink\n gtmId={gtmId}\n href={publishedListingPage}\n className=\"badge badge--label\"\n scroll>\n {preHeader.name}\n </BlazeLink>\n ) : (\n <div className=\"badge badge--label\">{label}</div>\n ))}\n {displayTitle && (\n <h2 className={titleWrapperModifier}>\n <BlazeLink title={linkTitle} gtmId={gtmId} href={url} scroll>\n {headline}\n </BlazeLink>\n </h2>\n )}\n {!!propsToDisplay.length && (\n <div className={getModifiers('card__details', modifiers)}>\n {propsToDisplay.map((prop, i) => {\n if (!prop) return null;\n const dynamicKey = `${id}${i}`;\n const propModifier = propsToDisplayModifiers[i] || '';\n\n return (\n <span key={dynamicKey} className={propModifier}>\n {prop}\n </span>\n );\n })}\n </div>\n )}\n </div>\n {!!cardChildren && (\n <div className=\"card__child-content\">{renderChildren(cardChildren)}</div>\n )}\n </div>\n </div>\n </Wrapper>\n );\n};\n\nCard.propTypes = {\n id: PropTypes.string.isRequired,\n image: PropTypes.shape({\n url: PropTypes.string,\n data: PropTypes.object\n }),\n style: PropTypes.string,\n propsToDisplay: PropTypes.array,\n propsToDisplayModifiers: PropTypes.array,\n url: PropTypes.string,\n name: PropTypes.string.isRequired,\n entity: PropTypes.string.isRequired,\n entityProps: PropTypes.object,\n gtmId: PropTypes.string,\n alternativePreHeader: PropTypes.shape({\n name: PropTypes.string\n }),\n alternativeHeadline: PropTypes.string,\n category: PropTypes.shape({\n name: PropTypes.string,\n publishedListingPage: PropTypes.shape({\n url: PropTypes.string\n })\n }),\n modifier: PropTypes.string,\n displayCategory: PropTypes.bool.isRequired,\n displayThumbnail: PropTypes.bool.isRequired,\n displayTitle: PropTypes.bool.isRequired,\n enableCarousel: PropTypes.bool,\n enableOverlay: PropTypes.bool,\n overlayModifier: PropTypes.string,\n titleOverlayModifier: PropTypes.string,\n cardChildren: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.node), PropTypes.node]),\n gtmChildren: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.node), PropTypes.node]),\n gridModifier: PropTypes.string,\n priority: PropTypes.bool\n};\n\nCard.defaultProps = {\n entityProps: {},\n image: {\n url: null,\n data: {}\n },\n gtmId: '',\n style: 'portrait',\n propsToDisplay: [],\n propsToDisplayModifiers: [],\n url: '',\n alternativePreHeader: null,\n alternativeHeadline: '',\n category: null,\n modifier: '',\n cardChildren: [],\n gtmChildren: [],\n gridModifier: '',\n priority: false,\n overlayModifier: '',\n titleOverlayModifier: '',\n enableOverlay: false,\n enableCarousel: false\n};\n\nconst getCategoryDefinedProps = ({\n alternativePreHeader,\n category,\n entity,\n alternativeHeadline,\n displayCategory,\n name\n}) => {\n const hasAlternativePreHeader = alternativePreHeader && alternativePreHeader.name;\n const preHeader =\n alternativeHeadline && hasAlternativePreHeader ? alternativePreHeader : category;\n const publishedListingPage = getPublishedListingUrl(preHeader);\n const label = preHeader ? preHeader.name : entity;\n const headline =\n !displayCategory || !hasAlternativePreHeader ? name : alternativeHeadline || name;\n return { publishedListingPage, preHeader, label, headline };\n};\n\nconst getImageDefinedProps = ({ image, displayThumbnail }) => {\n const { url: imageSrc, data } = image || {};\n const shouldDisplayThumbnail = displayThumbnail && imageSrc;\n const altText = (data && data.altText) || '';\n return { imageSrc, shouldDisplayThumbnail, altText };\n};\n\nconst getInitialModifiers = ({ modifier, style, otherProps }) => {\n const modifiers = [modifier, style];\n const { sponsored, featured } = otherProps;\n if (sponsored) modifiers.push('sponsored');\n if (featured) modifiers.push('featured');\n\n return modifiers;\n};\n\nexport default Card;\n"],"mappings":"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"}
|
|
@@ -55,7 +55,7 @@ var _helpers2 = require("../../helpers");
|
|
|
55
55
|
|
|
56
56
|
var _utils = require("../../utils");
|
|
57
57
|
|
|
58
|
-
var _excluded = ["cardData", "gridModifier", "style", "displayCategory", "displayThumbnail", "displayTitle", "modifier", "entity", "propsToDisplay", "gtmChildren", "cardChildren", "name", "designConfig", "itemsPerRow", "enableCarousel", "bannerModifier", "priorityLimit", "enableAutoScroll", "enableOverlay", "autoScrollTimer", "
|
|
58
|
+
var _excluded = ["cardData", "gridModifier", "style", "displayCategory", "displayThumbnail", "displayTitle", "modifier", "entity", "propsToDisplay", "gtmChildren", "cardChildren", "name", "designConfig", "itemsPerRow", "enableCarousel", "bannerModifier", "priorityLimit", "enableAutoScroll", "enableOverlay", "autoScrollTimer", "overlayModifier", "titleOverlayModifier"],
|
|
59
59
|
_excluded2 = ["baseAdunit", "id"];
|
|
60
60
|
|
|
61
61
|
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
|
|
@@ -83,7 +83,6 @@ var CardContainer = function CardContainer(_ref) {
|
|
|
83
83
|
enableAutoScroll = _ref.enableAutoScroll,
|
|
84
84
|
enableOverlay = _ref.enableOverlay,
|
|
85
85
|
autoScrollTimer = _ref.autoScrollTimer,
|
|
86
|
-
arrowSize = _ref.arrowSize,
|
|
87
86
|
overlayModifier = _ref.overlayModifier,
|
|
88
87
|
titleOverlayModifier = _ref.titleOverlayModifier,
|
|
89
88
|
cardProps = (0, _objectWithoutProperties2["default"])(_ref, _excluded);
|
|
@@ -136,7 +135,6 @@ var CardContainer = function CardContainer(_ref) {
|
|
|
136
135
|
displayThumbnail: displayThumbnail,
|
|
137
136
|
displayTitle: displayTitle,
|
|
138
137
|
priority: priority,
|
|
139
|
-
arrowSize: arrowSize,
|
|
140
138
|
enableOverlay: enableOverlay,
|
|
141
139
|
overlayModifier: overlayModifier,
|
|
142
140
|
titleOverlayModifier: titleOverlayModifier
|
|
@@ -166,8 +164,7 @@ CardContainer.propTypes = {
|
|
|
166
164
|
enableOverlay: _propTypes["default"].bool,
|
|
167
165
|
overlayModifier: _propTypes["default"].string,
|
|
168
166
|
titleOverlayModifier: _propTypes["default"].string,
|
|
169
|
-
autoScrollTimer: _propTypes["default"].number
|
|
170
|
-
arrowSize: _propTypes["default"].string
|
|
167
|
+
autoScrollTimer: _propTypes["default"].number
|
|
171
168
|
};
|
|
172
169
|
CardContainer.defaultProps = {
|
|
173
170
|
gtmChildren: [],
|
|
@@ -189,8 +186,7 @@ CardContainer.defaultProps = {
|
|
|
189
186
|
enableOverlay: false,
|
|
190
187
|
autoScrollTimer: 0,
|
|
191
188
|
overlayModifier: '',
|
|
192
|
-
titleOverlayModifier: ''
|
|
193
|
-
arrowSize: ''
|
|
189
|
+
titleOverlayModifier: ''
|
|
194
190
|
};
|
|
195
191
|
|
|
196
192
|
var _default = (0, _HOC.withTitle)(CardContainer);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CardContainer.js","names":["CardContainer","cardData","gridModifier","style","displayCategory","displayThumbnail","displayTitle","modifier","entity","propsToDisplay","gtmChildren","cardChildren","name","designConfig","itemsPerRow","enableCarousel","bannerModifier","priorityLimit","enableAutoScroll","enableOverlay","autoScrollTimer","
|
|
1
|
+
{"version":3,"file":"CardContainer.js","names":["CardContainer","cardData","gridModifier","style","displayCategory","displayThumbnail","displayTitle","modifier","entity","propsToDisplay","gtmChildren","cardChildren","name","designConfig","itemsPerRow","enableCarousel","bannerModifier","priorityLimit","enableAutoScroll","enableOverlay","autoScrollTimer","overlayModifier","titleOverlayModifier","cardProps","entities","getEntitiesWithBanner","useContext","MainContext","itemId","propsToDisplayModifiers","getPropsToDisplayModifiers","dynamicWrapperSizes","getDynamicGridClasses","cardBannerIndex","CardWrapper","CarouselWrapper","Wrapper","map","index","baseAdunit","id","entityProps","extraProps","parsePropsToDisplay","dynamicKey","join","priority","propTypes","PropTypes","array","isRequired","string","oneOfType","arrayOf","node","bool","object","number","defaultProps","withTitle"],"sources":["../../../src/components/Card/CardContainer.js"],"sourcesContent":["import React, { useContext } from 'react';\nimport PropTypes from 'prop-types';\nimport { MainContext } from '@blaze-cms/nextjs-components';\nimport { withTitle } from '../../HOC';\nimport Banner from '../Banner';\nimport Wrapper from '../Wrapper';\nimport CarouselWrapper from '../CarouselWrapper';\nimport Card from './Card';\nimport { getDynamicGridClasses } from './helpers';\nimport { getEntitiesWithBanner, parsePropsToDisplay } from '../../helpers';\nimport { getPropsToDisplayModifiers } from '../../utils';\n\nconst CardContainer = ({\n cardData,\n gridModifier,\n style,\n displayCategory,\n displayThumbnail,\n displayTitle,\n modifier,\n entity,\n propsToDisplay,\n gtmChildren,\n cardChildren,\n name,\n designConfig,\n itemsPerRow,\n enableCarousel,\n bannerModifier,\n priorityLimit,\n enableAutoScroll,\n enableOverlay,\n autoScrollTimer,\n overlayModifier,\n titleOverlayModifier,\n ...cardProps\n}) => {\n const entities = getEntitiesWithBanner(cardData, cardProps);\n const { itemId } = useContext(MainContext);\n const propsToDisplayModifiers = getPropsToDisplayModifiers(propsToDisplay);\n const dynamicWrapperSizes = enableCarousel\n ? ''\n : getDynamicGridClasses('grid', itemsPerRow, designConfig);\n let cardBannerIndex = 0;\n const CardWrapper = enableCarousel ? CarouselWrapper : Wrapper;\n\n return (\n <CardWrapper\n className={dynamicWrapperSizes}\n modifiers={gridModifier}\n itemsPerRow={itemsPerRow}\n bannerModifier={bannerModifier}\n enableAutoScroll={enableAutoScroll}\n autoScrollTimer={autoScrollTimer}>\n {entities.map(({ baseAdunit, id, ...entityProps }, index) => {\n const extraProps = parsePropsToDisplay(entityProps, propsToDisplay);\n const dynamicKey = [itemId, index].join('-');\n if (baseAdunit) cardBannerIndex += 1;\n\n const priority = priorityLimit > 0 && index + 1 <= priorityLimit;\n\n return baseAdunit ? (\n <Banner\n key={dynamicKey}\n entity={entity}\n baseAdunit={baseAdunit}\n {...entityProps}\n modifier={modifier}\n cardBannerIndex={cardBannerIndex}\n />\n ) : (\n <Card\n key={id}\n id={id}\n enableCarousel={enableCarousel}\n entity={entity}\n propsToDisplay={extraProps}\n propsToDisplayModifiers={propsToDisplayModifiers}\n modifier={modifier}\n style={style}\n cardChildren={cardChildren}\n gtmChildren={gtmChildren}\n gtmId={name}\n gridModifier={gridModifier}\n entityProps={entityProps}\n displayCategory={displayCategory}\n displayThumbnail={displayThumbnail}\n displayTitle={displayTitle}\n priority={priority}\n enableOverlay={enableOverlay}\n overlayModifier={overlayModifier}\n titleOverlayModifier={titleOverlayModifier}\n {...entityProps}\n />\n );\n })}\n </CardWrapper>\n );\n};\n\nCardContainer.propTypes = {\n cardData: PropTypes.array.isRequired,\n name: PropTypes.string,\n entity: PropTypes.string.isRequired,\n gridModifier: PropTypes.string,\n gtmChildren: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.node), PropTypes.node]),\n cardChildren: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.node), PropTypes.node]),\n propsToDisplay: PropTypes.array,\n displayCategory: PropTypes.bool,\n displayThumbnail: PropTypes.bool,\n displayTitle: PropTypes.bool,\n modifier: PropTypes.string,\n style: PropTypes.string,\n designConfig: PropTypes.object,\n itemsPerRow: PropTypes.number,\n enableCarousel: PropTypes.bool,\n bannerModifier: PropTypes.string,\n priorityLimit: PropTypes.number,\n enableAutoScroll: PropTypes.bool,\n enableOverlay: PropTypes.bool,\n overlayModifier: PropTypes.string,\n titleOverlayModifier: PropTypes.string,\n autoScrollTimer: PropTypes.number\n};\n\nCardContainer.defaultProps = {\n gtmChildren: [],\n cardChildren: [],\n name: '',\n gridModifier: '',\n propsToDisplay: [],\n displayCategory: true,\n displayThumbnail: true,\n displayTitle: true,\n modifier: '',\n style: 'portrait',\n designConfig: {},\n itemsPerRow: 1,\n enableCarousel: false,\n bannerModifier: '',\n priorityLimit: 0,\n enableAutoScroll: false,\n enableOverlay: false,\n autoScrollTimer: 0,\n overlayModifier: '',\n titleOverlayModifier: ''\n};\n\nexport default withTitle(CardContainer);\n"],"mappings":"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"}
|
|
@@ -29,13 +29,14 @@ var _helpers = require("../../helpers");
|
|
|
29
29
|
|
|
30
30
|
var _constants = require("../../constants");
|
|
31
31
|
|
|
32
|
-
var _excluded = ["entity", "propsToDisplay", "itemsToDisplay"],
|
|
32
|
+
var _excluded = ["entity", "propsToDisplay", "itemsToDisplay", "itemListName"],
|
|
33
33
|
_excluded2 = ["gridModifier"];
|
|
34
34
|
|
|
35
35
|
var CardFactory = function CardFactory(_ref) {
|
|
36
36
|
var entity = _ref.entity,
|
|
37
37
|
propsToDisplay = _ref.propsToDisplay,
|
|
38
38
|
itemsToDisplay = _ref.itemsToDisplay,
|
|
39
|
+
itemListName = _ref.itemListName,
|
|
39
40
|
cardProps = (0, _objectWithoutProperties2["default"])(_ref, _excluded);
|
|
40
41
|
|
|
41
42
|
var _useQuery = (0, _client.useQuery)(_query.getSingleEntitySchema, {
|
|
@@ -71,11 +72,13 @@ var CardFactory = function CardFactory(_ref) {
|
|
|
71
72
|
CardFactory.propTypes = {
|
|
72
73
|
entity: _propTypes["default"].string.isRequired,
|
|
73
74
|
propsToDisplay: _propTypes["default"].array,
|
|
74
|
-
itemsToDisplay: _propTypes["default"].array
|
|
75
|
+
itemsToDisplay: _propTypes["default"].array,
|
|
76
|
+
itemListName: _propTypes["default"].string
|
|
75
77
|
};
|
|
76
78
|
CardFactory.defaultProps = {
|
|
77
79
|
propsToDisplay: [],
|
|
78
|
-
itemsToDisplay: []
|
|
80
|
+
itemsToDisplay: [],
|
|
81
|
+
itemListName: ''
|
|
79
82
|
};
|
|
80
83
|
var _default = CardFactory;
|
|
81
84
|
exports["default"] = _default;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CardFactory.js","names":["CardFactory","entity","propsToDisplay","itemsToDisplay","cardProps","getSingleEntitySchema","variables","id","data","error","loading","message","propsToDisplayValues","extraProps","gridModifier","cardRenderProps","extraModifierForBanner","banner","WITH_BANNER","propTypes","PropTypes","string","isRequired","array","defaultProps"],"sources":["../../../src/components/Card/CardFactory.js"],"sourcesContent":["import React from 'react';\nimport { useQuery } from '@apollo/client';\nimport PropTypes from 'prop-types';\nimport { getSingleEntitySchema } from '../../application/query';\nimport CardRender from './CardRender';\nimport { buildPropsQuery, getGenericProps, checkPropsToUse } from '../../helpers';\nimport { WITH_BANNER } from '../../constants';\n\nconst CardFactory = ({ entity, propsToDisplay, itemsToDisplay, ...cardProps }) => {\n const { data, error, loading } = useQuery(getSingleEntitySchema, {\n variables: { id: entity }\n });\n\n if (loading) return '';\n if (error) return error.message;\n if (!data) return null;\n\n const propsToDisplayValues = checkPropsToUse(propsToDisplay);\n const extraProps = buildPropsQuery(data, propsToDisplayValues, cardProps) || '';\n const { gridModifier, ...cardRenderProps } = getGenericProps(cardProps);\n const extraModifierForBanner = cardRenderProps.banner ? WITH_BANNER : '';\n\n return (\n <CardRender\n gridModifier={`${gridModifier}${extraModifierForBanner}`}\n bannerModifier={extraModifierForBanner}\n entity={entity}\n itemsToDisplay={itemsToDisplay}\n propsToDisplay={propsToDisplay}\n entityFields={extraProps}\n {...cardRenderProps}\n />\n );\n};\n\nCardFactory.propTypes = {\n entity: PropTypes.string.isRequired,\n propsToDisplay: PropTypes.array,\n itemsToDisplay: PropTypes.array\n};\n\nCardFactory.defaultProps = {\n propsToDisplay: [],\n itemsToDisplay: []\n};\n\nexport default CardFactory;\n"],"mappings":";;;;;;;;;;;;;;;;;AAAA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;;;;AAEA,IAAMA,WAAW,GAAG,SAAdA,WAAc,
|
|
1
|
+
{"version":3,"file":"CardFactory.js","names":["CardFactory","entity","propsToDisplay","itemsToDisplay","itemListName","cardProps","useQuery","getSingleEntitySchema","variables","id","data","error","loading","message","propsToDisplayValues","checkPropsToUse","extraProps","buildPropsQuery","getGenericProps","gridModifier","cardRenderProps","extraModifierForBanner","banner","WITH_BANNER","propTypes","PropTypes","string","isRequired","array","defaultProps"],"sources":["../../../src/components/Card/CardFactory.js"],"sourcesContent":["import React from 'react';\nimport { useQuery } from '@apollo/client';\nimport PropTypes from 'prop-types';\nimport { getSingleEntitySchema } from '../../application/query';\nimport CardRender from './CardRender';\nimport { buildPropsQuery, getGenericProps, checkPropsToUse } from '../../helpers';\nimport { WITH_BANNER } from '../../constants';\n\nconst CardFactory = ({ entity, propsToDisplay, itemsToDisplay, itemListName, ...cardProps }) => {\n const { data, error, loading } = useQuery(getSingleEntitySchema, {\n variables: { id: entity }\n });\n\n if (loading) return '';\n if (error) return error.message;\n if (!data) return null;\n\n const propsToDisplayValues = checkPropsToUse(propsToDisplay);\n const extraProps = buildPropsQuery(data, propsToDisplayValues, cardProps) || '';\n const { gridModifier, ...cardRenderProps } = getGenericProps(cardProps);\n const extraModifierForBanner = cardRenderProps.banner ? WITH_BANNER : '';\n\n return (\n <CardRender\n gridModifier={`${gridModifier}${extraModifierForBanner}`}\n bannerModifier={extraModifierForBanner}\n entity={entity}\n itemsToDisplay={itemsToDisplay}\n propsToDisplay={propsToDisplay}\n entityFields={extraProps}\n {...cardRenderProps}\n />\n );\n};\n\nCardFactory.propTypes = {\n entity: PropTypes.string.isRequired,\n propsToDisplay: PropTypes.array,\n itemsToDisplay: PropTypes.array,\n itemListName: PropTypes.string\n};\n\nCardFactory.defaultProps = {\n propsToDisplay: [],\n itemsToDisplay: [],\n itemListName: ''\n};\n\nexport default CardFactory;\n"],"mappings":";;;;;;;;;;;;;;;;;AAAA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;;;;AAEA,IAAMA,WAAW,GAAG,SAAdA,WAAc,OAA4E;EAAA,IAAzEC,MAAyE,QAAzEA,MAAyE;EAAA,IAAjEC,cAAiE,QAAjEA,cAAiE;EAAA,IAAjDC,cAAiD,QAAjDA,cAAiD;EAAA,IAAjCC,YAAiC,QAAjCA,YAAiC;EAAA,IAAhBC,SAAgB;;EAC9F,gBAAiC,IAAAC,gBAAA,EAASC,4BAAT,EAAgC;IAC/DC,SAAS,EAAE;MAAEC,EAAE,EAAER;IAAN;EADoD,CAAhC,CAAjC;EAAA,IAAQS,IAAR,aAAQA,IAAR;EAAA,IAAcC,KAAd,aAAcA,KAAd;EAAA,IAAqBC,OAArB,aAAqBA,OAArB;;EAIA,IAAIA,OAAJ,EAAa,OAAO,EAAP;EACb,IAAID,KAAJ,EAAW,OAAOA,KAAK,CAACE,OAAb;EACX,IAAI,CAACH,IAAL,EAAW,OAAO,IAAP;EAEX,IAAMI,oBAAoB,GAAG,IAAAC,wBAAA,EAAgBb,cAAhB,CAA7B;EACA,IAAMc,UAAU,GAAG,IAAAC,wBAAA,EAAgBP,IAAhB,EAAsBI,oBAAtB,EAA4CT,SAA5C,KAA0D,EAA7E;;EACA,uBAA6C,IAAAa,wBAAA,EAAgBb,SAAhB,CAA7C;EAAA,IAAQc,YAAR,oBAAQA,YAAR;EAAA,IAAyBC,eAAzB;;EACA,IAAMC,sBAAsB,GAAGD,eAAe,CAACE,MAAhB,GAAyBC,sBAAzB,GAAuC,EAAtE;EAEA,oBACE,gCAAC,sBAAD;IACE,YAAY,YAAKJ,YAAL,SAAoBE,sBAApB,CADd;IAEE,cAAc,EAAEA,sBAFlB;IAGE,MAAM,EAAEpB,MAHV;IAIE,cAAc,EAAEE,cAJlB;IAKE,cAAc,EAAED,cALlB;IAME,YAAY,EAAEc;EANhB,GAOMI,eAPN,EADF;AAWD,CAzBD;;AA2BApB,WAAW,CAACwB,SAAZ,GAAwB;EACtBvB,MAAM,EAAEwB,qBAAA,CAAUC,MAAV,CAAiBC,UADH;EAEtBzB,cAAc,EAAEuB,qBAAA,CAAUG,KAFJ;EAGtBzB,cAAc,EAAEsB,qBAAA,CAAUG,KAHJ;EAItBxB,YAAY,EAAEqB,qBAAA,CAAUC;AAJF,CAAxB;AAOA1B,WAAW,CAAC6B,YAAZ,GAA2B;EACzB3B,cAAc,EAAE,EADS;EAEzBC,cAAc,EAAE,EAFS;EAGzBC,YAAY,EAAE;AAHW,CAA3B;eAMeJ,W"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CardRender.js","names":["CardContainer","CardRender","entity","entityFields","itemsToDisplay","children","otherProps","MainContext","isPreview","parent","itemId","itemEntity","filterBy","filterByProperty","sortby","sort","sortProperties","operator","filterOperator","AND","useRandomSort","updatedSortProperties","length","unshift","propsToDisplay","sortbyFilters","map","filter","Boolean","flat","variableProps","itemEntityUpdated","data","mainSchemas","_loading","loading","_error","error","schemas","Object","values","currentSchema","find","identifier","filterEntitySchema","id","entityType","docType","getAction","queryProps","inheritedFilters","entitySameAsCurrentItemEntity","action","filterEntityRelations","variables","skip","entityData","_err","_load","requiredSchema","schemaLoading","schemaError","updatedFilterBy","getEntitySchemas","limit","fetchPolicy","cardsError","cardsLoading","imageIds","imageId","imagesData","imagesLoading","isLoading","hasError","message","cardData","SEARCH_PUBLISHED_CONTENT","results","orderedData","name","regularChildren","gtmChildren","updatedCards","propTypes","PropTypes","oneOfType","arrayOf","node","string","isRequired","array","defaultProps"],"sources":["../../../src/components/Card/CardRender.js"],"sourcesContent":["import React, { useContext } from 'react';\nimport { useQuery } from '@apollo/client';\nimport dynamic from 'next/dynamic';\nimport PropTypes from 'prop-types';\nimport { MainContext } from '@blaze-cms/nextjs-components';\nimport { generateSingleItemQuery } from '../../application/query';\nimport { SEARCH_PUBLISHED_CONTENT, AND } from '../../constants';\nimport { useGetEntitySchemasAsObj, useGetImages } from '../../hooks';\nimport {\n getUpdatedFilterBy,\n getEntityData,\n getRequiredSchemas,\n sortResponseData,\n getUnpublishedEntityName,\n renderChildren,\n splitChildren,\n removeExtraItems,\n appendImages\n} from '../../helpers';\nimport { filtersSetup, filterQuerySetup, shouldSkipSingleQuery, shouldReturn } from './helpers';\n\nconst CardContainer = dynamic(() => import('./CardContainer'));\n\nconst CardRender = ({ entity, entityFields, itemsToDisplay, children, ...otherProps }) => {\n const { isPreview } = useContext(MainContext);\n const {\n parent: { itemId, itemEntity },\n filterBy = [],\n filterByProperty = [],\n sortby,\n sort,\n sortProperties = [],\n operator: filterOperator = AND,\n useRandomSort\n } = otherProps;\n\n const updatedSortProperties = [...sortProperties];\n if (!updatedSortProperties.length && sort) {\n updatedSortProperties.unshift({ sort, propsToDisplay: sortby });\n }\n\n const sortbyFilters = updatedSortProperties\n .map(({ propsToDisplay }) => propsToDisplay)\n .filter(Boolean)\n .flat();\n\n const variableProps = {\n ...otherProps,\n sortProperties: updatedSortProperties,\n sort: null,\n sortby: null\n };\n\n const itemEntityUpdated = getUnpublishedEntityName(itemEntity);\n const { data: mainSchemas = {}, loading: _loading, error: _error } = useGetEntitySchemasAsObj([\n itemEntityUpdated,\n entity\n ]);\n\n const schemas = Object.values(mainSchemas);\n const currentSchema = schemas.find(({ identifier }) => identifier === itemEntityUpdated) || {};\n const filterEntitySchema = schemas.find(({ id }) => entity === id) || {};\n const { entityType, docType } = getEntityData(entity, filterEntitySchema);\n\n const {\n getAction,\n queryProps,\n inheritedFilters,\n entitySameAsCurrentItemEntity,\n action,\n filterEntityRelations\n } = filtersSetup({\n entityFields,\n entityType,\n filterBy,\n filterByProperty,\n entity,\n currentSchema,\n filterEntitySchema,\n isPreview,\n itemEntityUpdated\n });\n const { data: { entityData = {} } = {}, error: _err, loading: _load } = useQuery(\n generateSingleItemQuery(getAction, queryProps),\n {\n variables: { id: itemId },\n skip: shouldSkipSingleQuery(_loading, getAction, queryProps)\n }\n );\n\n const {\n data: requiredSchema = {},\n loading: schemaLoading,\n error: schemaError\n } = useGetEntitySchemasAsObj(\n getRequiredSchemas([...filterByProperty, ...sortbyFilters], filterEntitySchema),\n _loading\n );\n\n const updatedFilterBy = getUpdatedFilterBy(\n inheritedFilters,\n entityData,\n currentSchema,\n filterEntitySchema,\n itemId,\n variableProps\n );\n\n const { limit, variables } = filterQuerySetup({\n getEntitySchemas: Object.values(requiredSchema),\n entity,\n updatedFilterBy,\n variableProps,\n docType,\n filterOperator,\n filterEntityRelations,\n itemsToDisplay,\n entitySameAsCurrentItemEntity,\n useRandomSort\n });\n const { data, error: cardsError, loading: cardsLoading } = useQuery(action, {\n variables,\n fetchPolicy: useRandomSort ? 'cache-and-network' : 'cache-first',\n skip: shouldReturn(!updatedFilterBy, _loading, _load, schemaLoading, _error, _err, schemaError)\n });\n\n const imageIds = itemsToDisplay.map(({ imageId }) => imageId).filter(Boolean);\n const { data: imagesData, loading: imagesLoading } = useGetImages(imageIds, true);\n const isLoading = shouldReturn(_loading, _load, schemaLoading, cardsLoading, imagesLoading);\n const hasError = shouldReturn(_error, _err, schemaError);\n\n if (!updatedFilterBy) return null;\n if (isLoading) return '';\n if (hasError) return null;\n if (cardsError) return cardsError.message;\n let { results: cardData } = data[SEARCH_PUBLISHED_CONTENT];\n\n if (!cardData || !cardData.length) return null;\n\n cardData = entitySameAsCurrentItemEntity ? removeExtraItems(cardData, limit, itemId) : cardData;\n if (!cardData.length) return null;\n\n const orderedData = useRandomSort ? cardData : sortResponseData(cardData, itemsToDisplay);\n const { regularChildren, gtmChildren } = splitChildren(children, cardData, entity, {\n name: variableProps.name\n });\n const updatedCards = appendImages(imagesData, orderedData, itemsToDisplay);\n\n return (\n <>\n {gtmChildren && renderChildren(gtmChildren)}\n <CardContainer\n cardData={updatedCards}\n entity={entity}\n gtmChildren={gtmChildren}\n cardChildren={regularChildren}\n {...variableProps}\n />\n </>\n );\n};\n\nCardRender.propTypes = {\n children: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.node), PropTypes.node]),\n entity: PropTypes.string.isRequired,\n entityFields: PropTypes.string.isRequired,\n itemsToDisplay: PropTypes.array\n};\n\nCardRender.defaultProps = {\n children: [],\n itemsToDisplay: []\n};\n\nexport default CardRender;\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"CardRender.js","names":["CardContainer","dynamic","CardRender","entity","entityFields","itemsToDisplay","children","otherProps","useContext","MainContext","isPreview","parent","itemId","itemEntity","filterBy","filterByProperty","sortby","sort","sortProperties","operator","filterOperator","AND","useRandomSort","updatedSortProperties","length","unshift","propsToDisplay","sortbyFilters","map","filter","Boolean","flat","variableProps","itemEntityUpdated","getUnpublishedEntityName","useGetEntitySchemasAsObj","data","mainSchemas","_loading","loading","_error","error","schemas","Object","values","currentSchema","find","identifier","filterEntitySchema","id","getEntityData","entityType","docType","filtersSetup","getAction","queryProps","inheritedFilters","entitySameAsCurrentItemEntity","action","filterEntityRelations","useQuery","generateSingleItemQuery","variables","skip","shouldSkipSingleQuery","entityData","_err","_load","getRequiredSchemas","requiredSchema","schemaLoading","schemaError","updatedFilterBy","getUpdatedFilterBy","filterQuerySetup","getEntitySchemas","limit","fetchPolicy","shouldReturn","cardsError","cardsLoading","imageIds","imageId","useGetImages","imagesData","imagesLoading","isLoading","hasError","message","cardData","SEARCH_PUBLISHED_CONTENT","results","removeExtraItems","orderedData","sortResponseData","splitChildren","name","regularChildren","gtmChildren","updatedCards","appendImages","renderChildren","propTypes","PropTypes","oneOfType","arrayOf","node","string","isRequired","array","defaultProps"],"sources":["../../../src/components/Card/CardRender.js"],"sourcesContent":["import React, { useContext } from 'react';\nimport { useQuery } from '@apollo/client';\nimport dynamic from 'next/dynamic';\nimport PropTypes from 'prop-types';\nimport { MainContext } from '@blaze-cms/nextjs-components';\nimport { generateSingleItemQuery } from '../../application/query';\nimport { SEARCH_PUBLISHED_CONTENT, AND } from '../../constants';\nimport { useGetEntitySchemasAsObj, useGetImages } from '../../hooks';\nimport {\n getUpdatedFilterBy,\n getEntityData,\n getRequiredSchemas,\n sortResponseData,\n getUnpublishedEntityName,\n renderChildren,\n splitChildren,\n removeExtraItems,\n appendImages\n} from '../../helpers';\nimport { filtersSetup, filterQuerySetup, shouldSkipSingleQuery, shouldReturn } from './helpers';\n\nconst CardContainer = dynamic(() => import('./CardContainer'));\n\nconst CardRender = ({ entity, entityFields, itemsToDisplay, children, ...otherProps }) => {\n const { isPreview } = useContext(MainContext);\n const {\n parent: { itemId, itemEntity },\n filterBy = [],\n filterByProperty = [],\n sortby,\n sort,\n sortProperties = [],\n operator: filterOperator = AND,\n useRandomSort\n } = otherProps;\n\n const updatedSortProperties = [...sortProperties];\n if (!updatedSortProperties.length && sort) {\n updatedSortProperties.unshift({ sort, propsToDisplay: sortby });\n }\n\n const sortbyFilters = updatedSortProperties\n .map(({ propsToDisplay }) => propsToDisplay)\n .filter(Boolean)\n .flat();\n\n const variableProps = {\n ...otherProps,\n sortProperties: updatedSortProperties,\n sort: null,\n sortby: null\n };\n\n const itemEntityUpdated = getUnpublishedEntityName(itemEntity);\n const { data: mainSchemas = {}, loading: _loading, error: _error } = useGetEntitySchemasAsObj([\n itemEntityUpdated,\n entity\n ]);\n\n const schemas = Object.values(mainSchemas);\n const currentSchema = schemas.find(({ identifier }) => identifier === itemEntityUpdated) || {};\n const filterEntitySchema = schemas.find(({ id }) => entity === id) || {};\n const { entityType, docType } = getEntityData(entity, filterEntitySchema);\n\n const {\n getAction,\n queryProps,\n inheritedFilters,\n entitySameAsCurrentItemEntity,\n action,\n filterEntityRelations\n } = filtersSetup({\n entityFields,\n entityType,\n filterBy,\n filterByProperty,\n entity,\n currentSchema,\n filterEntitySchema,\n isPreview,\n itemEntityUpdated\n });\n const { data: { entityData = {} } = {}, error: _err, loading: _load } = useQuery(\n generateSingleItemQuery(getAction, queryProps),\n {\n variables: { id: itemId },\n skip: shouldSkipSingleQuery(_loading, getAction, queryProps)\n }\n );\n\n const {\n data: requiredSchema = {},\n loading: schemaLoading,\n error: schemaError\n } = useGetEntitySchemasAsObj(\n getRequiredSchemas([...filterByProperty, ...sortbyFilters], filterEntitySchema),\n _loading\n );\n\n const updatedFilterBy = getUpdatedFilterBy(\n inheritedFilters,\n entityData,\n currentSchema,\n filterEntitySchema,\n itemId,\n variableProps\n );\n\n const { limit, variables } = filterQuerySetup({\n getEntitySchemas: Object.values(requiredSchema),\n entity,\n updatedFilterBy,\n variableProps,\n docType,\n filterOperator,\n filterEntityRelations,\n itemsToDisplay,\n entitySameAsCurrentItemEntity,\n useRandomSort\n });\n const { data, error: cardsError, loading: cardsLoading } = useQuery(action, {\n variables,\n fetchPolicy: useRandomSort ? 'cache-and-network' : 'cache-first',\n skip: shouldReturn(!updatedFilterBy, _loading, _load, schemaLoading, _error, _err, schemaError)\n });\n\n const imageIds = itemsToDisplay.map(({ imageId }) => imageId).filter(Boolean);\n const { data: imagesData, loading: imagesLoading } = useGetImages(imageIds, true);\n const isLoading = shouldReturn(_loading, _load, schemaLoading, cardsLoading, imagesLoading);\n const hasError = shouldReturn(_error, _err, schemaError);\n\n if (!updatedFilterBy) return null;\n if (isLoading) return '';\n if (hasError) return null;\n if (cardsError) return cardsError.message;\n let { results: cardData } = data[SEARCH_PUBLISHED_CONTENT];\n\n if (!cardData || !cardData.length) return null;\n\n cardData = entitySameAsCurrentItemEntity ? removeExtraItems(cardData, limit, itemId) : cardData;\n if (!cardData.length) return null;\n\n const orderedData = useRandomSort ? cardData : sortResponseData(cardData, itemsToDisplay);\n const { regularChildren, gtmChildren } = splitChildren(children, cardData, entity, {\n name: variableProps.name\n });\n const updatedCards = appendImages(imagesData, orderedData, itemsToDisplay);\n\n return (\n <>\n {gtmChildren && renderChildren(gtmChildren)}\n <CardContainer\n cardData={updatedCards}\n entity={entity}\n gtmChildren={gtmChildren}\n cardChildren={regularChildren}\n {...variableProps}\n />\n </>\n );\n};\n\nCardRender.propTypes = {\n children: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.node), PropTypes.node]),\n entity: PropTypes.string.isRequired,\n entityFields: PropTypes.string.isRequired,\n itemsToDisplay: PropTypes.array\n};\n\nCardRender.defaultProps = {\n children: [],\n itemsToDisplay: []\n};\n\nexport default CardRender;\n"],"mappings":"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"}
|