@blaze-cms/react-page-builder 0.140.3 → 0.141.0-alpha.1
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 +38 -0
- package/README.md +23 -0
- package/lib/components/BlazeLink.js +6 -2
- package/lib/components/BlazeLink.js.map +1 -1
- package/lib/components/Card/Card.js.map +1 -1
- package/lib/components/ContentGroup/ContentGroupTabs.js +10 -8
- package/lib/components/ContentGroup/ContentGroupTabs.js.map +1 -1
- package/lib/components/Image/ImageRender.js +4 -2
- package/lib/components/Image/ImageRender.js.map +1 -1
- package/lib/components/List/ListRender.js +10 -1
- package/lib/components/List/ListRender.js.map +1 -1
- package/lib/components/List/components/Header/ListHeader.js +5 -2
- package/lib/components/List/components/Header/ListHeader.js.map +1 -1
- package/lib/components/List/components/Pagination/Classic.js +2 -2
- package/lib/components/List/components/Pagination/Classic.js.map +1 -1
- package/lib/components/List/components/Pagination/LoadMore.js +2 -1
- package/lib/components/List/components/Pagination/LoadMore.js.map +1 -1
- package/lib/components/List/helpers/build-pagination-items.js +2 -1
- package/lib/components/List/helpers/build-pagination-items.js.map +1 -1
- package/lib/components/List/helpers/build-query-booster.js +57 -0
- package/lib/components/List/helpers/build-query-booster.js.map +1 -0
- package/lib/components/List/helpers/index.js +7 -0
- package/lib/components/List/helpers/index.js.map +1 -1
- package/lib/components/Menu/Menu.js +6 -6
- package/lib/components/Menu/Menu.js.map +1 -1
- package/lib/components/MenuItem/MenuItem.js +2 -1
- package/lib/components/MenuItem/MenuItem.js.map +1 -1
- package/lib/components/SearchFilter/components/Select.js +1 -0
- package/lib/components/SearchFilter/components/Select.js.map +1 -1
- package/lib/components/SearchFilterSort/SearchFilterSort.js +1 -0
- package/lib/components/SearchFilterSort/SearchFilterSort.js.map +1 -1
- package/lib/components/SocialFollow/SFItem.js +4 -3
- package/lib/components/SocialFollow/SFItem.js.map +1 -1
- package/lib/components/Video/providers/Default.js +13 -7
- package/lib/components/Video/providers/Default.js.map +1 -1
- package/lib/components/Video/providers/get-provider.js +5 -0
- package/lib/components/Video/providers/get-provider.js.map +1 -1
- package/lib/hooks/helpers/getVariant.js.map +1 -1
- package/lib/hooks/index.js +7 -0
- package/lib/hooks/index.js.map +1 -1
- package/lib/hooks/use-app-sync-event-hook.js +31 -0
- package/lib/hooks/use-app-sync-event-hook.js.map +1 -0
- package/lib/utils/variant-handler.js +2 -1
- package/lib/utils/variant-handler.js.map +1 -1
- package/lib/variants/HeroImage/index.js +29 -0
- package/lib/variants/HeroImage/index.js.map +1 -0
- package/lib/variants/Infographic/Infographic.js +27 -0
- package/lib/variants/Infographic/Infographic.js.map +1 -0
- package/lib/variants/Infographic/index.js +41 -0
- package/lib/variants/Infographic/index.js.map +1 -0
- package/lib/variants/Infographic/useInfographic.js +43 -0
- package/lib/variants/Infographic/useInfographic.js.map +1 -0
- package/lib/variants/LongformGallery/LongformGallery.js +53 -0
- package/lib/variants/LongformGallery/LongformGallery.js.map +1 -0
- package/lib/variants/LongformGallery/LongformGalleryImage.js +71 -0
- package/lib/variants/LongformGallery/LongformGalleryImage.js.map +1 -0
- package/lib/variants/LongformGallery/constants.js +19 -0
- package/lib/variants/LongformGallery/constants.js.map +1 -0
- package/lib/variants/LongformGallery/helpers/index.js +29 -0
- package/lib/variants/LongformGallery/helpers/index.js.map +1 -0
- package/lib/variants/LongformGallery/helpers/parseImageData.js +42 -0
- package/lib/variants/LongformGallery/helpers/parseImageData.js.map +1 -0
- package/lib/variants/LongformGallery/helpers/separateImages.js +36 -0
- package/lib/variants/LongformGallery/helpers/separateImages.js.map +1 -0
- package/lib/variants/LongformGallery/helpers/shouldSkip.js +13 -0
- package/lib/variants/LongformGallery/helpers/shouldSkip.js.map +1 -0
- package/lib/variants/LongformGallery/index.js +43 -0
- package/lib/variants/LongformGallery/index.js.map +1 -0
- package/lib/variants/LongformGallery/useLongformGallery.js +58 -0
- package/lib/variants/LongformGallery/useLongformGallery.js.map +1 -0
- package/lib/variants/LongformRow/index.js +29 -0
- package/lib/variants/LongformRow/index.js.map +1 -0
- package/lib/variants/ParallaxImageTextRight/index.js +30 -0
- package/lib/variants/ParallaxImageTextRight/index.js.map +1 -0
- package/lib/variants/ThumbnailCarousel/ThumbnailCarousel.js +63 -0
- package/lib/variants/ThumbnailCarousel/ThumbnailCarousel.js.map +1 -0
- package/lib/variants/ThumbnailCarousel/ThumbnailImage/ThumbnailImage.js +37 -0
- package/lib/variants/ThumbnailCarousel/ThumbnailImage/ThumbnailImage.js.map +1 -0
- package/lib/variants/ThumbnailCarousel/ThumbnailImage/index.js +11 -0
- package/lib/variants/ThumbnailCarousel/ThumbnailImage/index.js.map +1 -0
- package/lib/variants/ThumbnailCarousel/ThumbnailImage/useThumbnailImage.js +69 -0
- package/lib/variants/ThumbnailCarousel/ThumbnailImage/useThumbnailImage.js.map +1 -0
- package/lib/variants/ThumbnailCarousel/index.js +41 -0
- package/lib/variants/ThumbnailCarousel/index.js.map +1 -0
- package/lib/variants/ThumbnailCarousel/useThumbnailCarousel.js +66 -0
- package/lib/variants/ThumbnailCarousel/useThumbnailCarousel.js.map +1 -0
- package/lib/variants/index.js +15 -1
- package/lib/variants/index.js.map +1 -1
- package/lib-es/components/BlazeLink.js +6 -2
- package/lib-es/components/BlazeLink.js.map +1 -1
- package/lib-es/components/Card/Card.js.map +1 -1
- package/lib-es/components/ContentGroup/ContentGroupTabs.js +10 -8
- package/lib-es/components/ContentGroup/ContentGroupTabs.js.map +1 -1
- package/lib-es/components/Image/ImageRender.js +4 -2
- package/lib-es/components/Image/ImageRender.js.map +1 -1
- package/lib-es/components/List/ListRender.js +11 -1
- package/lib-es/components/List/ListRender.js.map +1 -1
- package/lib-es/components/List/components/Header/ListHeader.js +5 -2
- package/lib-es/components/List/components/Header/ListHeader.js.map +1 -1
- package/lib-es/components/List/components/Pagination/Classic.js +2 -2
- package/lib-es/components/List/components/Pagination/Classic.js.map +1 -1
- package/lib-es/components/List/components/Pagination/LoadMore.js +2 -1
- package/lib-es/components/List/components/Pagination/LoadMore.js.map +1 -1
- package/lib-es/components/List/helpers/build-pagination-items.js +2 -1
- package/lib-es/components/List/helpers/build-pagination-items.js.map +1 -1
- package/lib-es/components/List/helpers/build-query-booster.js +41 -0
- package/lib-es/components/List/helpers/build-query-booster.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 +6 -6
- package/lib-es/components/Menu/Menu.js.map +1 -1
- package/lib-es/components/MenuItem/MenuItem.js +2 -1
- package/lib-es/components/MenuItem/MenuItem.js.map +1 -1
- package/lib-es/components/SearchFilter/components/Select.js +1 -0
- package/lib-es/components/SearchFilter/components/Select.js.map +1 -1
- package/lib-es/components/SearchFilterSort/SearchFilterSort.js +1 -0
- package/lib-es/components/SearchFilterSort/SearchFilterSort.js.map +1 -1
- package/lib-es/components/SocialFollow/SFItem.js +4 -3
- package/lib-es/components/SocialFollow/SFItem.js.map +1 -1
- package/lib-es/components/Video/providers/Default.js +14 -7
- package/lib-es/components/Video/providers/Default.js.map +1 -1
- package/lib-es/components/Video/providers/get-provider.js +2 -1
- package/lib-es/components/Video/providers/get-provider.js.map +1 -1
- package/lib-es/hooks/helpers/getVariant.js.map +1 -1
- package/lib-es/hooks/index.js +1 -0
- package/lib-es/hooks/index.js.map +1 -1
- package/lib-es/hooks/use-app-sync-event-hook.js +25 -0
- package/lib-es/hooks/use-app-sync-event-hook.js.map +1 -0
- package/lib-es/utils/variant-handler.js +2 -1
- package/lib-es/utils/variant-handler.js.map +1 -1
- package/lib-es/variants/HeroImage/index.js +10 -0
- package/lib-es/variants/HeroImage/index.js.map +1 -0
- package/lib-es/variants/Infographic/Infographic.js +20 -0
- package/lib-es/variants/Infographic/Infographic.js.map +1 -0
- package/lib-es/variants/Infographic/index.js +10 -0
- package/lib-es/variants/Infographic/index.js.map +1 -0
- package/lib-es/variants/Infographic/useInfographic.js +23 -0
- package/lib-es/variants/Infographic/useInfographic.js.map +1 -0
- package/lib-es/variants/LongformGallery/LongformGallery.js +40 -0
- package/lib-es/variants/LongformGallery/LongformGallery.js.map +1 -0
- package/lib-es/variants/LongformGallery/LongformGalleryImage.js +59 -0
- package/lib-es/variants/LongformGallery/LongformGalleryImage.js.map +1 -0
- package/lib-es/variants/LongformGallery/constants.js +18 -0
- package/lib-es/variants/LongformGallery/constants.js.map +1 -0
- package/lib-es/variants/LongformGallery/helpers/index.js +5 -0
- package/lib-es/variants/LongformGallery/helpers/index.js.map +1 -0
- package/lib-es/variants/LongformGallery/helpers/parseImageData.js +26 -0
- package/lib-es/variants/LongformGallery/helpers/parseImageData.js.map +1 -0
- package/lib-es/variants/LongformGallery/helpers/separateImages.js +25 -0
- package/lib-es/variants/LongformGallery/helpers/separateImages.js.map +1 -0
- package/lib-es/variants/LongformGallery/helpers/shouldSkip.js +3 -0
- package/lib-es/variants/LongformGallery/helpers/shouldSkip.js.map +1 -0
- package/lib-es/variants/LongformGallery/index.js +12 -0
- package/lib-es/variants/LongformGallery/index.js.map +1 -0
- package/lib-es/variants/LongformGallery/useLongformGallery.js +47 -0
- package/lib-es/variants/LongformGallery/useLongformGallery.js.map +1 -0
- package/lib-es/variants/LongformRow/index.js +10 -0
- package/lib-es/variants/LongformRow/index.js.map +1 -0
- package/lib-es/variants/ParallaxImageTextRight/index.js +11 -0
- package/lib-es/variants/ParallaxImageTextRight/index.js.map +1 -0
- package/lib-es/variants/ThumbnailCarousel/ThumbnailCarousel.js +49 -0
- package/lib-es/variants/ThumbnailCarousel/ThumbnailCarousel.js.map +1 -0
- package/lib-es/variants/ThumbnailCarousel/ThumbnailImage/ThumbnailImage.js +30 -0
- package/lib-es/variants/ThumbnailCarousel/ThumbnailImage/ThumbnailImage.js.map +1 -0
- package/lib-es/variants/ThumbnailCarousel/ThumbnailImage/index.js +3 -0
- package/lib-es/variants/ThumbnailCarousel/ThumbnailImage/index.js.map +1 -0
- package/lib-es/variants/ThumbnailCarousel/ThumbnailImage/useThumbnailImage.js +62 -0
- package/lib-es/variants/ThumbnailCarousel/ThumbnailImage/useThumbnailImage.js.map +1 -0
- package/lib-es/variants/ThumbnailCarousel/index.js +10 -0
- package/lib-es/variants/ThumbnailCarousel/index.js.map +1 -0
- package/lib-es/variants/ThumbnailCarousel/useThumbnailCarousel.js +47 -0
- package/lib-es/variants/ThumbnailCarousel/useThumbnailCarousel.js.map +1 -0
- package/lib-es/variants/index.js +14 -1
- package/lib-es/variants/index.js.map +1 -1
- package/package.json +7 -7
- package/src/components/BlazeLink.js +23 -4
- package/src/components/Card/Card.js +0 -1
- package/src/components/ContentGroup/ContentGroupTabs.js +11 -8
- package/src/components/Image/ImageRender.js +4 -2
- package/src/components/List/ListRender.js +11 -1
- package/src/components/List/components/Header/ListHeader.js +7 -4
- package/src/components/List/components/Pagination/Classic.js +2 -2
- package/src/components/List/components/Pagination/LoadMore.js +7 -2
- package/src/components/List/helpers/build-pagination-items.js +2 -1
- package/src/components/List/helpers/build-query-booster.js +35 -0
- package/src/components/List/helpers/index.js +1 -0
- package/src/components/Menu/Menu.js +6 -7
- package/src/components/MenuItem/MenuItem.js +5 -2
- package/src/components/SearchFilter/components/Select.js +1 -0
- package/src/components/SearchFilterSort/SearchFilterSort.js +1 -0
- package/src/components/SocialFollow/SFItem.js +8 -2
- package/src/components/Video/providers/Default.js +12 -6
- package/src/components/Video/providers/get-provider.js +2 -1
- package/src/hooks/helpers/getVariant.js +1 -0
- package/src/hooks/index.js +1 -0
- package/src/hooks/use-app-sync-event-hook.js +19 -0
- package/src/utils/variant-handler.js +2 -1
- package/src/variants/HeroImage/index.js +8 -0
- package/src/variants/Infographic/Infographic.js +14 -0
- package/src/variants/Infographic/index.js +12 -0
- package/src/variants/Infographic/useInfographic.js +18 -0
- package/src/variants/LongformGallery/LongformGallery.js +47 -0
- package/src/variants/LongformGallery/LongformGalleryImage.js +65 -0
- package/src/variants/LongformGallery/constants.js +21 -0
- package/src/variants/LongformGallery/helpers/index.js +5 -0
- package/src/variants/LongformGallery/helpers/parseImageData.js +25 -0
- package/src/variants/LongformGallery/helpers/separateImages.js +38 -0
- package/src/variants/LongformGallery/helpers/shouldSkip.js +3 -0
- package/src/variants/LongformGallery/index.js +13 -0
- package/src/variants/LongformGallery/useLongformGallery.js +41 -0
- package/src/variants/LongformRow/index.js +8 -0
- package/src/variants/ParallaxImageTextRight/index.js +9 -0
- package/src/variants/ThumbnailCarousel/ThumbnailCarousel.js +51 -0
- package/src/variants/ThumbnailCarousel/ThumbnailImage/ThumbnailImage.js +26 -0
- package/src/variants/ThumbnailCarousel/ThumbnailImage/index.js +3 -0
- package/src/variants/ThumbnailCarousel/ThumbnailImage/useThumbnailImage.js +61 -0
- package/src/variants/ThumbnailCarousel/index.js +12 -0
- package/src/variants/ThumbnailCarousel/useThumbnailCarousel.js +42 -0
- package/src/variants/index.js +15 -1
- package/tests/unit/src/components/Breadcrumb/__snapshots__/Breadcrumb.test.js.snap +3 -0
- package/tests/unit/src/components/Button.test.js +2 -2
- package/tests/unit/src/components/Card/__snapshots__/Card.test.js.snap +13 -0
- package/tests/unit/src/components/Card/__snapshots__/CardContainer.test.js.snap +8 -0
- package/tests/unit/src/components/ContentGroup/__snapshots__/ContentGroupTabs.test.js.snap +2 -0
- package/tests/unit/src/components/Image/GlobalLightbox/__snapshots__/GlobalLightbox.test.js.snap +1 -0
- package/tests/unit/src/components/Image/__snapshots__/Image.test.js.snap +3 -0
- package/tests/unit/src/components/Image/__snapshots__/ImageFactory.test.js.snap +4 -0
- package/tests/unit/src/components/List/ListRender.test.js +9 -0
- package/tests/unit/src/components/List/components/Header/__snapshots__/ListHeader.test.js.snap +5 -0
- package/tests/unit/src/components/List/components/Pagination/__snapshots__/Classic.test.js.snap +8 -2
- package/tests/unit/src/components/List/components/Pagination/__snapshots__/ListPagination.test.js.snap +5 -1
- package/tests/unit/src/components/List/components/Pagination/__snapshots__/LoadMore.test.js.snap +1 -1
- package/tests/unit/src/components/List/helpers/__snapshots__/build-pagination-items.test.js.snap +21 -0
- package/tests/unit/src/components/List/helpers/build-query-booster.test.js +33 -0
- package/tests/unit/src/components/MenuItem/__snapshots__/MenuItem.test.js.snap +3 -0
- package/tests/unit/src/components/PlaceholderIcon/__snapshots__/index.test.js.snap +3 -1
- package/tests/unit/src/components/SearchFilter/components/__snapshots__/Select.test.js.snap +5 -3
- package/tests/unit/src/components/SearchFilterSort/__snapshots__/SearchFilterSort.test.js.snap +2 -1
- package/tests/unit/src/components/SocialFollow/__snapshots__/SFItem.test.js.snap +2 -2
- package/tests/unit/src/components/SocialFollow/__snapshots__/SocialFollow.test.js.snap +2 -6
- package/tests/unit/src/components/TextBlock/__snapshots__/TextBlock.test.js.snap +4 -0
- package/tests/unit/src/components/Video/providers/__snapshots__/Default.test.js.snap +111 -108
- package/tests/unit/src/components/__snapshots__/BlazeLink.test.js.snap +1 -1
- package/tests/unit/src/components/__snapshots__/Button.test.js.snap +1 -0
- package/tests/unit/src/helpers/__snapshots__/parse-textBlock.test.js.snap +1 -0
- package/tests/unit/src/helpers/parse-textBlock.test.js +3 -1
- package/tests/unit/src/hooks/use-app-sync-evet-hook.test.js +50 -0
- package/tests/unit/src/utils/variant-handler.test.js +9 -4
- package/tests/unit/src/variants/LongFormGallery/LongformGallery.test.js +42 -0
- package/tests/unit/src/variants/LongFormGallery/LongformGalleryImage.test.js +44 -0
- package/tests/unit/src/variants/LongFormGallery/__snapshots__/LongformGallery.test.js.snap +99 -0
- package/tests/unit/src/variants/LongFormGallery/__snapshots__/LongformGalleryImage.test.js.snap +51 -0
- package/tests/unit/src/variants/LongFormGallery/constants.js +37 -0
- package/tests/unit/src/variants/LongFormGallery/helpers/parseImageData.test.js +53 -0
- package/tests/unit/src/variants/LongFormGallery/helpers/separateImages.test.js +52 -0
- package/tests/unit/src/variants/LongFormGallery/helpers/shouldSkip.test.js +23 -0
- package/tests/unit/src/variants/LongFormGallery/useLongformGallery.test.js +36 -0
- package/tests/unit/src/variants/ThumbnailCarousel/ThumbnailCarousel.test.js +29 -0
- package/tests/unit/src/variants/ThumbnailCarousel/ThumbnailImage.test.js +45 -0
- package/tests/unit/src/variants/ThumbnailCarousel/__snapshots__/ThumbnailCarousel.test.js.snap +71 -0
- package/tests/unit/src/variants/ThumbnailCarousel/__snapshots__/ThumbnailImage.test.js.snap +19 -0
- package/tests/unit/src/variants/ThumbnailCarousel/mocks.js +64 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BlazeLink.js","names":["React","useContext","PropTypes","Link","MainContext","buildLinkExtraProps","BlazeLink","children","className","name","href","as","shallow","scroll","gtmId","onClick","hasGTM","gtmProps","linkExtraProps","_objectSpread","createElement","_extends","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 = ({
|
|
1
|
+
{"version":3,"file":"BlazeLink.js","names":["React","useContext","PropTypes","Link","MainContext","buildLinkExtraProps","BlazeLink","children","className","name","ariaLabel","href","as","shallow","scroll","gtmId","onClick","hasGTM","gtmProps","linkExtraProps","_objectSpread","createElement","_extends","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 = ({\n children,\n className,\n name,\n ariaLabel,\n href,\n as,\n shallow,\n scroll,\n gtmId,\n onClick\n}) => {\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\n href={href}\n ariaLabel={ariaLabel}\n shallow={shallow}\n scroll={scroll}\n onClick={onClick}\n {...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 ariaLabel: PropTypes.string\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 ariaLabel: ''\n};\n\nexport default BlazeLink;\n"],"mappings":";;;;AAAA,OAAOA,KAAK,IAAIC,UAAU,QAAQ,OAAO;AACzC,OAAOC,SAAS,MAAM,YAAY;AAClC,SAASC,IAAI,EAAEC,WAAW,QAAQ,8BAA8B;AAChE,OAAOC,mBAAmB,MAAM,mCAAmC;AAEnE,MAAMC,SAAS,GAAGA,CAAC;EACjBC,QAAQ;EACRC,SAAS;EACTC,IAAI;EACJC,SAAS;EACTC,IAAI;EACJC,EAAE;EACFC,OAAO;EACPC,MAAM;EACNC,KAAK;EACLC;AACF,CAAC,KAAK;EACJ,MAAM;IAAEC;EAAO,CAAC,GAAGhB,UAAU,CAACG,WAAW,CAAC;EAC1C,MAAMc,QAAQ,GAAGD,MAAM,IAAI,CAAC,CAACF,KAAK,GAAG;IAAEA;EAAM,CAAC,GAAG,CAAC,CAAC;EACnD,MAAMI,cAAc,GAAGd,mBAAmB,CAAAe,aAAA;IAAGZ,SAAS;IAAEC,IAAI;IAAEG;EAAE,GAAKM,QAAQ,CAAE,CAAC;EAChF,IAAI,CAACP,IAAI,EAAE,OAAOJ,QAAQ;EAE1B,oBACEP,KAAA,CAAAqB,aAAA,CAAClB,IAAI,EAAAmB,QAAA;IACHX,IAAI,EAAEA,IAAK;IACXD,SAAS,EAAEA,SAAU;IACrBG,OAAO,EAAEA,OAAQ;IACjBC,MAAM,EAAEA,MAAO;IACfE,OAAO,EAAEA;EAAQ,GACbG,cAAc,GACjBZ,QACG,CAAC;AAEX,CAAC;AAEDD,SAAS,CAACiB,SAAS,GAAG;EACpBhB,QAAQ,EAAEL,SAAS,CAACsB,SAAS,CAAC,CAACtB,SAAS,CAACuB,OAAO,CAACvB,SAAS,CAACwB,IAAI,CAAC,EAAExB,SAAS,CAACwB,IAAI,CAAC,CAAC;EAClFf,IAAI,EAAET,SAAS,CAACyB,MAAM;EACtBf,EAAE,EAAEV,SAAS,CAACyB,MAAM;EACpBlB,IAAI,EAAEP,SAAS,CAACyB,MAAM;EACtBC,KAAK,EAAE1B,SAAS,CAACyB,MAAM;EACvBnB,SAAS,EAAEN,SAAS,CAACyB,MAAM;EAC3Bd,OAAO,EAAEX,SAAS,CAAC2B,IAAI;EACvBf,MAAM,EAAEZ,SAAS,CAAC2B,IAAI;EACtBd,KAAK,EAAEb,SAAS,CAACyB,MAAM;EACvBX,OAAO,EAAEd,SAAS,CAAC4B,IAAI;EACvBpB,SAAS,EAAER,SAAS,CAACyB;AACvB,CAAC;AAEDrB,SAAS,CAACyB,YAAY,GAAG;EACvBxB,QAAQ,EAAE,EAAE;EACZK,EAAE,EAAE,EAAE;EACND,IAAI,EAAE,GAAG;EACTF,IAAI,EAAE,EAAE;EACRmB,KAAK,EAAE,EAAE;EACTpB,SAAS,EAAE,EAAE;EACbK,OAAO,EAAE,KAAK;EACdC,MAAM,EAAE,IAAI;EACZC,KAAK,EAAE,EAAE;EACTC,OAAO,EAAE,IAAI;EACbN,SAAS,EAAE;AACb,CAAC;AAED,eAAeJ,SAAS"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Card.js","names":["React","Fragment","useRouter","PropTypes","BlazeLink","ClickWrapper","getModifiers","renderChildren","updateChildrensParent","getClickWrapperOptions","LazyImage","getPublishedListingUrl","useDynamicSizeKey","CARD_STRING","CARD_CHILDREN_WITH_LINKS","BuildPBComponents","Card","_ref","id","image","name","url","graphqlEntityMap","entityProps","alternativePreHeader","alternativeHeadline","category","modifier","parsedPropsToDisplay","propsToDisplay","propsToDisplayModifiers","gtmId","style","priority","cardChildren","gtmChildren","displayCategory","displayThumbnail","displayTitle","enableOverlay","enableCarousel","titleOverlayModifier","overlayModifier","gridModifier","pageBuilderComponents","__typename","dataEntity","otherProps","_objectWithoutProperties","_excluded","entity","parent","itemId","itemEntity","router","imageSrc","shouldDisplayThumbnail","altText","getImageDefinedProps","modifiers","getInitialModifiers","publishedListingPage","preHeader","label","headline","getCategoryDefinedProps","linkTitle","dynamicSizeKey","shouldUseClickWrapper","wrapperProps","Wrapper","classNameWithModifiers","contentWrapperModifier","titleWrapperModifier","handleCardClick","e","clickEventTag","target","tagName","toLowerCase","clickEventRole","role","shouldTriggerRouteChange","find","childTag","push","clickProps","process","env","BLAZE_PB_ADD_CLICK_TO_CARDS","onClick","createElement","_extends","className","href","scroll","src","alt","sizeKey","title","length","map","prop","i","dynamicKey","propModifier","htmlAttribute","extraProps","props","children","encodeURIComponent","key","propTypes","string","isRequired","shape","data","object","array","bool","oneOfType","arrayOf","node","defaultProps","hasAlternativePreHeader","sponsored","featured"],"sources":["../../../src/components/Card/Card.js"],"sourcesContent":["import React, { Fragment } from 'react';\nimport { useRouter } from 'next/router';\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, CARD_CHILDREN_WITH_LINKS } from './constants';\nimport BuildPBComponents from '../../hooks/helpers/buildPBComponents';\n\nconst Card = ({\n id,\n image,\n name,\n url,\n graphqlEntityMap,\n entityProps,\n alternativePreHeader,\n alternativeHeadline,\n category,\n modifier,\n parsedPropsToDisplay,\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 pageBuilderComponents,\n __typename: dataEntity,\n ...otherProps\n}) => {\n const entity = graphqlEntityMap[dataEntity];\n updateChildrensParent(cardChildren, id, entity);\n const parent = { itemId: id, itemEntity: entity };\n const router = useRouter();\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 const handleCardClick = e => {\n if (!url) return;\n\n const clickEventTag = e.target.tagName.toLowerCase();\n const clickEventRole = e.target.role;\n const shouldTriggerRouteChange =\n clickEventRole !== 'button' &&\n !CARD_CHILDREN_WITH_LINKS.find(childTag => childTag === clickEventTag);\n if (shouldTriggerRouteChange) router.push(`/Resolver`, url);\n };\n\n // todo: remove temp env var flag once widely tested BLAZE_PB_ADD_CLICK_TO_CARDS\n const clickProps =\n url && process.env.BLAZE_PB_ADD_CLICK_TO_CARDS\n ? {\n onClick: handleCardClick,\n role: 'button'\n }\n : {};\n\n return (\n <Wrapper {...wrapperProps}>\n <div className={classNameWithModifiers} {...clickProps}>\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 <div className={titleWrapperModifier}>\n <BlazeLink title={linkTitle} gtmId={gtmId} href={url} scroll>\n {headline}\n </BlazeLink>\n </div>\n )}\n {!!pageBuilderComponents.length && (\n <div className=\"card__item card__item--full\" data-testid=\"full-card\">\n {BuildPBComponents(pageBuilderComponents, { parent })}\n </div>\n )}\n {!!parsedPropsToDisplay.length && (\n <div className={getModifiers('card__details', modifiers)}>\n {parsedPropsToDisplay.map((prop, i) => {\n if (!prop) return null;\n\n const dynamicKey = `${id}${i}`;\n const propModifier = propsToDisplayModifiers[i] || '';\n\n const { htmlAttribute } = propsToDisplay[i] || {};\n const extraProps = {};\n if (htmlAttribute && prop.props.children) {\n extraProps[htmlAttribute] = encodeURIComponent(prop.props.children[2]);\n }\n\n return (\n <span key={dynamicKey} className={propModifier} {...extraProps}>\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 graphqlEntityMap: PropTypes.object.isRequired,\n __typename: PropTypes.string.isRequired,\n style: PropTypes.string,\n parsedPropsToDisplay: PropTypes.array,\n propsToDisplay: PropTypes.array,\n propsToDisplayModifiers: PropTypes.array,\n url: PropTypes.string,\n name: 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 pageBuilderComponents: PropTypes.array\n};\n\nCard.defaultProps = {\n entityProps: {},\n pageBuilderComponents: [],\n image: {\n url: null,\n data: {}\n },\n gtmId: '',\n style: 'portrait',\n parsedPropsToDisplay: [],\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":["React","Fragment","useRouter","PropTypes","BlazeLink","ClickWrapper","getModifiers","renderChildren","updateChildrensParent","getClickWrapperOptions","LazyImage","getPublishedListingUrl","useDynamicSizeKey","CARD_STRING","CARD_CHILDREN_WITH_LINKS","BuildPBComponents","Card","_ref","id","image","name","url","graphqlEntityMap","entityProps","alternativePreHeader","alternativeHeadline","category","modifier","parsedPropsToDisplay","propsToDisplay","propsToDisplayModifiers","gtmId","style","priority","cardChildren","gtmChildren","displayCategory","displayThumbnail","displayTitle","enableOverlay","enableCarousel","titleOverlayModifier","overlayModifier","gridModifier","pageBuilderComponents","__typename","dataEntity","otherProps","_objectWithoutProperties","_excluded","entity","parent","itemId","itemEntity","router","imageSrc","shouldDisplayThumbnail","altText","getImageDefinedProps","modifiers","getInitialModifiers","publishedListingPage","preHeader","label","headline","getCategoryDefinedProps","linkTitle","dynamicSizeKey","shouldUseClickWrapper","wrapperProps","Wrapper","classNameWithModifiers","contentWrapperModifier","titleWrapperModifier","handleCardClick","e","clickEventTag","target","tagName","toLowerCase","clickEventRole","role","shouldTriggerRouteChange","find","childTag","push","clickProps","process","env","BLAZE_PB_ADD_CLICK_TO_CARDS","onClick","createElement","_extends","className","href","scroll","src","alt","sizeKey","title","length","map","prop","i","dynamicKey","propModifier","htmlAttribute","extraProps","props","children","encodeURIComponent","key","propTypes","string","isRequired","shape","data","object","array","bool","oneOfType","arrayOf","node","defaultProps","hasAlternativePreHeader","sponsored","featured"],"sources":["../../../src/components/Card/Card.js"],"sourcesContent":["import React, { Fragment } from 'react';\nimport { useRouter } from 'next/router';\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, CARD_CHILDREN_WITH_LINKS } from './constants';\nimport BuildPBComponents from '../../hooks/helpers/buildPBComponents';\n\nconst Card = ({\n id,\n image,\n name,\n url,\n graphqlEntityMap,\n entityProps,\n alternativePreHeader,\n alternativeHeadline,\n category,\n modifier,\n parsedPropsToDisplay,\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 pageBuilderComponents,\n __typename: dataEntity,\n ...otherProps\n}) => {\n const entity = graphqlEntityMap[dataEntity];\n updateChildrensParent(cardChildren, id, entity);\n const parent = { itemId: id, itemEntity: entity };\n const router = useRouter();\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 const handleCardClick = e => {\n if (!url) return;\n\n const clickEventTag = e.target.tagName.toLowerCase();\n const clickEventRole = e.target.role;\n const shouldTriggerRouteChange =\n clickEventRole !== 'button' &&\n !CARD_CHILDREN_WITH_LINKS.find(childTag => childTag === clickEventTag);\n if (shouldTriggerRouteChange) router.push(`/Resolver`, url);\n };\n\n // todo: remove temp env var flag once widely tested BLAZE_PB_ADD_CLICK_TO_CARDS\n const clickProps =\n url && process.env.BLAZE_PB_ADD_CLICK_TO_CARDS\n ? {\n onClick: handleCardClick,\n role: 'button'\n }\n : {};\n return (\n <Wrapper {...wrapperProps}>\n <div className={classNameWithModifiers} {...clickProps}>\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 <div className={titleWrapperModifier}>\n <BlazeLink title={linkTitle} gtmId={gtmId} href={url} scroll>\n {headline}\n </BlazeLink>\n </div>\n )}\n {!!pageBuilderComponents.length && (\n <div className=\"card__item card__item--full\" data-testid=\"full-card\">\n {BuildPBComponents(pageBuilderComponents, { parent })}\n </div>\n )}\n {!!parsedPropsToDisplay.length && (\n <div className={getModifiers('card__details', modifiers)}>\n {parsedPropsToDisplay.map((prop, i) => {\n if (!prop) return null;\n\n const dynamicKey = `${id}${i}`;\n const propModifier = propsToDisplayModifiers[i] || '';\n\n const { htmlAttribute } = propsToDisplay[i] || {};\n const extraProps = {};\n if (htmlAttribute && prop.props.children) {\n extraProps[htmlAttribute] = encodeURIComponent(prop.props.children[2]);\n }\n\n return (\n <span key={dynamicKey} className={propModifier} {...extraProps}>\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 graphqlEntityMap: PropTypes.object.isRequired,\n __typename: PropTypes.string.isRequired,\n style: PropTypes.string,\n parsedPropsToDisplay: PropTypes.array,\n propsToDisplay: PropTypes.array,\n propsToDisplayModifiers: PropTypes.array,\n url: PropTypes.string,\n name: 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 pageBuilderComponents: PropTypes.array\n};\n\nCard.defaultProps = {\n entityProps: {},\n pageBuilderComponents: [],\n image: {\n url: null,\n data: {}\n },\n gtmId: '',\n style: 'portrait',\n parsedPropsToDisplay: [],\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":";;;AAAA,OAAOA,KAAK,IAAIC,QAAQ,QAAQ,OAAO;AACvC,SAASC,SAAS,QAAQ,aAAa;AACvC,OAAOC,SAAS,MAAM,YAAY;AAClC,OAAOC,SAAS,MAAM,cAAc;AACpC,OAAOC,YAAY,MAAM,iBAAiB;AAC1C,SACEC,YAAY,EACZC,cAAc,EACdC,qBAAqB,EACrBC,sBAAsB,QACjB,eAAe;AACtB,OAAOC,SAAS,MAAM,cAAc;AACpC,SAASC,sBAAsB,EAAEC,iBAAiB,QAAQ,WAAW;AACrE,SAASC,WAAW,EAAEC,wBAAwB,QAAQ,aAAa;AACnE,OAAOC,iBAAiB,MAAM,uCAAuC;AAErE,MAAMC,IAAI,GAAGC,IAAA,IA8BP;EAAA,IA9BQ;MACZC,EAAE;MACFC,KAAK;MACLC,IAAI;MACJC,GAAG;MACHC,gBAAgB;MAChBC,WAAW;MACXC,oBAAoB;MACpBC,mBAAmB;MACnBC,QAAQ;MACRC,QAAQ;MACRC,oBAAoB;MACpBC,cAAc;MACdC,uBAAuB;MACvBC,KAAK;MACLC,KAAK;MACLC,QAAQ;MACRC,YAAY;MACZC,WAAW;MACXC,eAAe;MACfC,gBAAgB;MAChBC,YAAY;MACZC,aAAa;MACbC,cAAc;MACdC,oBAAoB;MACpBC,eAAe;MACfC,YAAY;MACZC,qBAAqB;MACrBC,UAAU,EAAEC;IAEd,CAAC,GAAA7B,IAAA;IADI8B,UAAU,GAAAC,wBAAA,CAAA/B,IAAA,EAAAgC,SAAA;EAEb,MAAMC,MAAM,GAAG5B,gBAAgB,CAACwB,UAAU,CAAC;EAC3CtC,qBAAqB,CAAC0B,YAAY,EAAEhB,EAAE,EAAEgC,MAAM,CAAC;EAC/C,MAAMC,MAAM,GAAG;IAAEC,MAAM,EAAElC,EAAE;IAAEmC,UAAU,EAAEH;EAAO,CAAC;EACjD,MAAMI,MAAM,GAAGpD,SAAS,CAAC,CAAC;EAC1B,MAAM;IAAEqD,QAAQ;IAAEC,sBAAsB;IAAEC;EAAQ,CAAC,GAAGC,oBAAoB,CAAC;IACzEvC,KAAK;IACLkB;EACF,CAAC,CAAC;EAEF,MAAMsB,SAAS,GAAGC,mBAAmB,CAAC;IAAEjC,QAAQ;IAAEK,KAAK;IAAEe;EAAW,CAAC,CAAC;EAEtE,MAAM;IAAEc,oBAAoB;IAAEC,SAAS;IAAEC,KAAK;IAAEC;EAAS,CAAC,GAAGC,uBAAuB,CAAC;IACnFzC,oBAAoB;IACpBE,QAAQ;IACRwB,MAAM;IACNzB,mBAAmB;IACnBW,eAAe;IACfhB;EACF,CAAC,CAAC;EAEF,MAAM8C,SAAS,GAAG9C,IAAI;EAEtB,MAAM+C,cAAc,GAAGvD,iBAAiB,CAACC,WAAW,EAAE;IAAEmB,KAAK;IAAEW,YAAY;IAAEhB;EAAS,CAAC,CAAC;EAExF,MAAM;IAAEyC,qBAAqB;IAAEC;EAAa,CAAC,GAAG5D,sBAAsB,CACpE0B,WAAW,EACXZ,WAAW,EACXL,EACF,CAAC;EAED,MAAMoD,OAAO,GAAGF,qBAAqB,GAAG/D,YAAY,GAAGJ,QAAQ;EAE/D,MAAMsE,sBAAsB,GAAGjE,YAAY,CAACO,WAAW,EAAE8C,SAAS,CAAC;EAEnE,MAAMa,sBAAsB,GAAI,GAAElE,YAAY,CAAC,uBAAuB,EAAEqD,SAAS,CAAE,IACjFpB,aAAa,IAAIC,cAAc,GAAGE,eAAe,GAAG,EACrD,EAAC;EAEF,MAAM+B,oBAAoB,GAAI,GAAEnE,YAAY,CAAC,aAAa,EAAEqD,SAAS,CAAE,IACrEpB,aAAa,IAAIC,cAAc,GAAGC,oBAAoB,GAAG,EAC1D,EAAC;EAEF,MAAMiC,eAAe,GAAGC,CAAC,IAAI;IAC3B,IAAI,CAACtD,GAAG,EAAE;IAEV,MAAMuD,aAAa,GAAGD,CAAC,CAACE,MAAM,CAACC,OAAO,CAACC,WAAW,CAAC,CAAC;IACpD,MAAMC,cAAc,GAAGL,CAAC,CAACE,MAAM,CAACI,IAAI;IACpC,MAAMC,wBAAwB,GAC5BF,cAAc,KAAK,QAAQ,IAC3B,CAAClE,wBAAwB,CAACqE,IAAI,CAACC,QAAQ,IAAIA,QAAQ,KAAKR,aAAa,CAAC;IACxE,IAAIM,wBAAwB,EAAE5B,MAAM,CAAC+B,IAAI,CAAE,WAAU,EAAEhE,GAAG,CAAC;EAC7D,CAAC;;EAED;EACA,MAAMiE,UAAU,GACdjE,GAAG,IAAIkE,OAAO,CAACC,GAAG,CAACC,2BAA2B,GAC1C;IACEC,OAAO,EAAEhB,eAAe;IACxBO,IAAI,EAAE;EACR,CAAC,GACD,CAAC,CAAC;EACR,oBACEjF,KAAA,CAAA2F,aAAA,CAACrB,OAAO,EAAKD,YAAY,eACvBrE,KAAA,CAAA2F,aAAA,QAAAC,QAAA;IAAKC,SAAS,EAAEtB;EAAuB,GAAKe,UAAU,GACnD9B,sBAAsB,iBACrBxD,KAAA,CAAA2F,aAAA;IAAKE,SAAS,EAAEvF,YAAY,CAAC,aAAa,EAAEqD,SAAS;EAAE,gBACrD3D,KAAA,CAAA2F,aAAA,CAACvF,SAAS;IAAC2B,KAAK,EAAEA,KAAM;IAAC+D,IAAI,EAAEzE,GAAI;IAACwE,SAAS,EAAC,kBAAkB;IAACE,MAAM;EAAA,gBACrE/F,KAAA,CAAA2F,aAAA,CAACjF,SAAS;IACRsF,GAAG,EAAEzC,QAAS;IACd0C,GAAG,EAAExC,OAAQ;IACbyC,OAAO,EAAE/B,cAAe;IACxBlC,QAAQ,EAAEA;EAAS,CACpB,CACQ,CACR,CACN,eACDjC,KAAA,CAAA2F,aAAA;IAAKE,SAAS,EAAErB;EAAuB,gBACrCxE,KAAA,CAAA2F,aAAA;IAAKE,SAAS,EAAEvF,YAAY,CAAC,eAAe,EAAEqD,SAAS;EAAE,GACtDvB,eAAe,KACbyB,oBAAoB,gBACnB7D,KAAA,CAAA2F,aAAA,CAACvF,SAAS;IACR2B,KAAK,EAAEA,KAAM;IACb+D,IAAI,EAAEjC,oBAAqB;IAC3BgC,SAAS,EAAC,oBAAoB;IAC9BE,MAAM;EAAA,GACLjC,SAAS,CAAC1C,IACF,CAAC,gBAEZpB,KAAA,CAAA2F,aAAA;IAAKE,SAAS,EAAC;EAAoB,GAAE9B,KAAW,CACjD,CAAC,EACHzB,YAAY,iBACXtC,KAAA,CAAA2F,aAAA;IAAKE,SAAS,EAAEpB;EAAqB,gBACnCzE,KAAA,CAAA2F,aAAA,CAACvF,SAAS;IAAC+F,KAAK,EAAEjC,SAAU;IAACnC,KAAK,EAAEA,KAAM;IAAC+D,IAAI,EAAEzE,GAAI;IAAC0E,MAAM;EAAA,GACzD/B,QACQ,CACR,CACN,EACA,CAAC,CAACpB,qBAAqB,CAACwD,MAAM,iBAC7BpG,KAAA,CAAA2F,aAAA;IAAKE,SAAS,EAAC,6BAA6B;IAAC,eAAY;EAAW,GACjE9E,iBAAiB,CAAC6B,qBAAqB,EAAE;IAAEO;EAAO,CAAC,CACjD,CACN,EACA,CAAC,CAACvB,oBAAoB,CAACwE,MAAM,iBAC5BpG,KAAA,CAAA2F,aAAA;IAAKE,SAAS,EAAEvF,YAAY,CAAC,eAAe,EAAEqD,SAAS;EAAE,GACtD/B,oBAAoB,CAACyE,GAAG,CAAC,CAACC,IAAI,EAAEC,CAAC,KAAK;IACrC,IAAI,CAACD,IAAI,EAAE,OAAO,IAAI;IAEtB,MAAME,UAAU,GAAI,GAAEtF,EAAG,GAAEqF,CAAE,EAAC;IAC9B,MAAME,YAAY,GAAG3E,uBAAuB,CAACyE,CAAC,CAAC,IAAI,EAAE;IAErD,MAAM;MAAEG;IAAc,CAAC,GAAG7E,cAAc,CAAC0E,CAAC,CAAC,IAAI,CAAC,CAAC;IACjD,MAAMI,UAAU,GAAG,CAAC,CAAC;IACrB,IAAID,aAAa,IAAIJ,IAAI,CAACM,KAAK,CAACC,QAAQ,EAAE;MACxCF,UAAU,CAACD,aAAa,CAAC,GAAGI,kBAAkB,CAACR,IAAI,CAACM,KAAK,CAACC,QAAQ,CAAC,CAAC,CAAC,CAAC;IACxE;IAEA,oBACE7G,KAAA,CAAA2F,aAAA,SAAAC,QAAA;MAAMmB,GAAG,EAAEP,UAAW;MAACX,SAAS,EAAEY;IAAa,GAAKE,UAAU,GAC3DL,IACG,CAAC;EAEX,CAAC,CACE,CAEJ,CAAC,EACL,CAAC,CAACpE,YAAY,iBACblC,KAAA,CAAA2F,aAAA;IAAKE,SAAS,EAAC;EAAqB,GAAEtF,cAAc,CAAC2B,YAAY,CAAO,CAEvE,CACF,CACE,CAAC;AAEd,CAAC;AAEDlB,IAAI,CAACgG,SAAS,GAAG;EACf9F,EAAE,EAAEf,SAAS,CAAC8G,MAAM,CAACC,UAAU;EAC/B/F,KAAK,EAAEhB,SAAS,CAACgH,KAAK,CAAC;IACrB9F,GAAG,EAAElB,SAAS,CAAC8G,MAAM;IACrBG,IAAI,EAAEjH,SAAS,CAACkH;EAClB,CAAC,CAAC;EACF/F,gBAAgB,EAAEnB,SAAS,CAACkH,MAAM,CAACH,UAAU;EAC7CrE,UAAU,EAAE1C,SAAS,CAAC8G,MAAM,CAACC,UAAU;EACvClF,KAAK,EAAE7B,SAAS,CAAC8G,MAAM;EACvBrF,oBAAoB,EAAEzB,SAAS,CAACmH,KAAK;EACrCzF,cAAc,EAAE1B,SAAS,CAACmH,KAAK;EAC/BxF,uBAAuB,EAAE3B,SAAS,CAACmH,KAAK;EACxCjG,GAAG,EAAElB,SAAS,CAAC8G,MAAM;EACrB7F,IAAI,EAAEjB,SAAS,CAAC8G,MAAM,CAACC,UAAU;EACjC3F,WAAW,EAAEpB,SAAS,CAACkH,MAAM;EAC7BtF,KAAK,EAAE5B,SAAS,CAAC8G,MAAM;EACvBzF,oBAAoB,EAAErB,SAAS,CAACgH,KAAK,CAAC;IACpC/F,IAAI,EAAEjB,SAAS,CAAC8G;EAClB,CAAC,CAAC;EACFxF,mBAAmB,EAAEtB,SAAS,CAAC8G,MAAM;EACrCvF,QAAQ,EAAEvB,SAAS,CAACgH,KAAK,CAAC;IACxB/F,IAAI,EAAEjB,SAAS,CAAC8G,MAAM;IACtBpD,oBAAoB,EAAE1D,SAAS,CAACgH,KAAK,CAAC;MACpC9F,GAAG,EAAElB,SAAS,CAAC8G;IACjB,CAAC;EACH,CAAC,CAAC;EACFtF,QAAQ,EAAExB,SAAS,CAAC8G,MAAM;EAC1B7E,eAAe,EAAEjC,SAAS,CAACoH,IAAI,CAACL,UAAU;EAC1C7E,gBAAgB,EAAElC,SAAS,CAACoH,IAAI,CAACL,UAAU;EAC3C5E,YAAY,EAAEnC,SAAS,CAACoH,IAAI,CAACL,UAAU;EACvC1E,cAAc,EAAErC,SAAS,CAACoH,IAAI;EAC9BhF,aAAa,EAAEpC,SAAS,CAACoH,IAAI;EAC7B7E,eAAe,EAAEvC,SAAS,CAAC8G,MAAM;EACjCxE,oBAAoB,EAAEtC,SAAS,CAAC8G,MAAM;EACtC/E,YAAY,EAAE/B,SAAS,CAACqH,SAAS,CAAC,CAACrH,SAAS,CAACsH,OAAO,CAACtH,SAAS,CAACuH,IAAI,CAAC,EAAEvH,SAAS,CAACuH,IAAI,CAAC,CAAC;EACtFvF,WAAW,EAAEhC,SAAS,CAACqH,SAAS,CAAC,CAACrH,SAAS,CAACsH,OAAO,CAACtH,SAAS,CAACuH,IAAI,CAAC,EAAEvH,SAAS,CAACuH,IAAI,CAAC,CAAC;EACrF/E,YAAY,EAAExC,SAAS,CAAC8G,MAAM;EAC9BhF,QAAQ,EAAE9B,SAAS,CAACoH,IAAI;EACxB3E,qBAAqB,EAAEzC,SAAS,CAACmH;AACnC,CAAC;AAEDtG,IAAI,CAAC2G,YAAY,GAAG;EAClBpG,WAAW,EAAE,CAAC,CAAC;EACfqB,qBAAqB,EAAE,EAAE;EACzBzB,KAAK,EAAE;IACLE,GAAG,EAAE,IAAI;IACT+F,IAAI,EAAE,CAAC;EACT,CAAC;EACDrF,KAAK,EAAE,EAAE;EACTC,KAAK,EAAE,UAAU;EACjBJ,oBAAoB,EAAE,EAAE;EACxBC,cAAc,EAAE,EAAE;EAClBC,uBAAuB,EAAE,EAAE;EAC3BT,GAAG,EAAE,EAAE;EACPG,oBAAoB,EAAE,IAAI;EAC1BC,mBAAmB,EAAE,EAAE;EACvBC,QAAQ,EAAE,IAAI;EACdC,QAAQ,EAAE,EAAE;EACZO,YAAY,EAAE,EAAE;EAChBC,WAAW,EAAE,EAAE;EACfQ,YAAY,EAAE,EAAE;EAChBV,QAAQ,EAAE,KAAK;EACfS,eAAe,EAAE,EAAE;EACnBD,oBAAoB,EAAE,EAAE;EACxBF,aAAa,EAAE,KAAK;EACpBC,cAAc,EAAE;AAClB,CAAC;AAED,MAAMyB,uBAAuB,GAAGA,CAAC;EAC/BzC,oBAAoB;EACpBE,QAAQ;EACRwB,MAAM;EACNzB,mBAAmB;EACnBW,eAAe;EACfhB;AACF,CAAC,KAAK;EACJ,MAAMwG,uBAAuB,GAAGpG,oBAAoB,IAAIA,oBAAoB,CAACJ,IAAI;EACjF,MAAM0C,SAAS,GACbrC,mBAAmB,IAAImG,uBAAuB,GAAGpG,oBAAoB,GAAGE,QAAQ;EAClF,MAAMmC,oBAAoB,GAAGlD,sBAAsB,CAACmD,SAAS,CAAC;EAC9D,MAAMC,KAAK,GAAGD,SAAS,GAAGA,SAAS,CAAC1C,IAAI,GAAG8B,MAAM;EACjD,MAAMc,QAAQ,GACZ,CAAC5B,eAAe,IAAI,CAACwF,uBAAuB,GAAGxG,IAAI,GAAGK,mBAAmB,IAAIL,IAAI;EACnF,OAAO;IAAEyC,oBAAoB;IAAEC,SAAS;IAAEC,KAAK;IAAEC;EAAS,CAAC;AAC7D,CAAC;AAED,MAAMN,oBAAoB,GAAGA,CAAC;EAAEvC,KAAK;EAAEkB;AAAiB,CAAC,KAAK;EAC5D,MAAM;IAAEhB,GAAG,EAAEkC,QAAQ;IAAE6D;EAAK,CAAC,GAAGjG,KAAK,IAAI,CAAC,CAAC;EAC3C,MAAMqC,sBAAsB,GAAGnB,gBAAgB,IAAIkB,QAAQ;EAC3D,MAAME,OAAO,GAAI2D,IAAI,IAAIA,IAAI,CAAC3D,OAAO,IAAK,EAAE;EAC5C,OAAO;IAAEF,QAAQ;IAAEC,sBAAsB;IAAEC;EAAQ,CAAC;AACtD,CAAC;AAED,MAAMG,mBAAmB,GAAGA,CAAC;EAAEjC,QAAQ;EAAEK,KAAK;EAAEe;AAAW,CAAC,KAAK;EAC/D,MAAMY,SAAS,GAAG,CAAChC,QAAQ,EAAEK,KAAK,CAAC;EACnC,MAAM;IAAE6F,SAAS;IAAEC;EAAS,CAAC,GAAG/E,UAAU;EAC1C,IAAI8E,SAAS,EAAElE,SAAS,CAAC0B,IAAI,CAAC,WAAW,CAAC;EAC1C,IAAIyC,QAAQ,EAAEnE,SAAS,CAAC0B,IAAI,CAAC,UAAU,CAAC;EAExC,OAAO1B,SAAS;AAClB,CAAC;AAED,eAAe3C,IAAI"}
|
|
@@ -6,9 +6,9 @@ import { TAB, TABS, SIDEPANEL, CONTENT_GROUP, PANEL } from './constants';
|
|
|
6
6
|
const ContentGroupTabs = ({
|
|
7
7
|
name,
|
|
8
8
|
contentType,
|
|
9
|
-
modifier,
|
|
10
9
|
groupSections,
|
|
11
|
-
sectionsData
|
|
10
|
+
sectionsData,
|
|
11
|
+
VariantComponent
|
|
12
12
|
}) => {
|
|
13
13
|
const router = useRouter();
|
|
14
14
|
const [selectedTab, setSelectedTab] = useState(getActiveTab(sectionsData, ''));
|
|
@@ -23,13 +23,14 @@ const ContentGroupTabs = ({
|
|
|
23
23
|
const activeTab = getActiveTab(sectionsData, asPath);
|
|
24
24
|
if (activeTab !== selectedTab) setSelectedTab(activeTab);
|
|
25
25
|
}, [asPath, sectionsData, selectedTab]);
|
|
26
|
+
const WrapperComponent = VariantComponent || 'div';
|
|
26
27
|
return /*#__PURE__*/React.createElement("div", {
|
|
27
28
|
className: mainDivClass
|
|
28
29
|
}, /*#__PURE__*/React.createElement("ul", {
|
|
29
30
|
className: contentGroupClass,
|
|
30
31
|
role: "tablist",
|
|
31
32
|
"aria-label": name
|
|
32
|
-
}, groupSections.map((
|
|
33
|
+
}, groupSections.map((_, index) => {
|
|
33
34
|
const [sectionName, sectioLabel] = sectionsData[index];
|
|
34
35
|
const tabId = `${TAB}-${sectionName}`;
|
|
35
36
|
const panelId = `${PANEL}-${sectionName}`;
|
|
@@ -58,11 +59,12 @@ const ContentGroupTabs = ({
|
|
|
58
59
|
const tabId = `${TAB}-${sectionName}`;
|
|
59
60
|
const panelId = `${PANEL}-${sectionName}`;
|
|
60
61
|
if (selectedTab !== tabId) return null;
|
|
61
|
-
return /*#__PURE__*/React.createElement(
|
|
62
|
-
id: sectionName,
|
|
62
|
+
return /*#__PURE__*/React.createElement(WrapperComponent, {
|
|
63
63
|
key: panelId,
|
|
64
|
+
id: sectionName,
|
|
64
65
|
className: sectionClass,
|
|
65
66
|
role: "tabpanel",
|
|
67
|
+
tabId: tabId,
|
|
66
68
|
"aria-labelledby": tabId
|
|
67
69
|
}, groupSection);
|
|
68
70
|
}));
|
|
@@ -70,12 +72,12 @@ const ContentGroupTabs = ({
|
|
|
70
72
|
ContentGroupTabs.propTypes = {
|
|
71
73
|
name: PropTypes.string.isRequired,
|
|
72
74
|
contentType: PropTypes.string.isRequired,
|
|
73
|
-
modifier: PropTypes.string,
|
|
74
75
|
groupSections: PropTypes.array.isRequired,
|
|
75
|
-
sectionsData: PropTypes.array.isRequired
|
|
76
|
+
sectionsData: PropTypes.array.isRequired,
|
|
77
|
+
VariantComponent: PropTypes.func
|
|
76
78
|
};
|
|
77
79
|
ContentGroupTabs.defaultProps = {
|
|
78
|
-
|
|
80
|
+
VariantComponent: null
|
|
79
81
|
};
|
|
80
82
|
export default ContentGroupTabs;
|
|
81
83
|
//# sourceMappingURL=ContentGroupTabs.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ContentGroupTabs.js","names":["React","useState","useEffect","PropTypes","useRouter","getActiveTab","TAB","TABS","SIDEPANEL","CONTENT_GROUP","PANEL","ContentGroupTabs","name","contentType","
|
|
1
|
+
{"version":3,"file":"ContentGroupTabs.js","names":["React","useState","useEffect","PropTypes","useRouter","getActiveTab","TAB","TABS","SIDEPANEL","CONTENT_GROUP","PANEL","ContentGroupTabs","name","contentType","groupSections","sectionsData","VariantComponent","router","selectedTab","setSelectedTab","asPath","contentClassame","mainDivClass","contentGroupClass","sectionClass","activeTab","WrapperComponent","createElement","className","role","map","_","index","sectionName","sectioLabel","tabId","panelId","isSelected","buttonClassName","id","key","type","onClick","baseUrl","split","newUrl","push","shallow","groupSection","propTypes","string","isRequired","array","func","defaultProps"],"sources":["../../../src/components/ContentGroup/ContentGroupTabs.js"],"sourcesContent":["import React, { useState, useEffect } from 'react';\nimport PropTypes from 'prop-types';\nimport { useRouter } from 'next/router';\nimport { getActiveTab } from './helpers';\nimport { TAB, TABS, SIDEPANEL, CONTENT_GROUP, PANEL } from './constants';\n\nconst ContentGroupTabs = ({ name, contentType, groupSections, sectionsData, VariantComponent }) => {\n const router = useRouter();\n const [selectedTab, setSelectedTab] = useState(getActiveTab(sectionsData, ''));\n const { asPath } = router;\n const contentClassame = contentType === TAB ? TABS : SIDEPANEL;\n const mainDivClass = `${CONTENT_GROUP}-${contentClassame}`;\n const contentGroupClass = `${CONTENT_GROUP}-${contentClassame}__buttons-wrapper`;\n const sectionClass = `${CONTENT_GROUP}-${contentClassame}__content-section`;\n\n useEffect(\n () => {\n const activeTab = getActiveTab(sectionsData, asPath);\n if (activeTab !== selectedTab) setSelectedTab(activeTab);\n },\n [asPath, sectionsData, selectedTab]\n );\n\n const WrapperComponent = VariantComponent || 'div';\n\n return (\n <div className={mainDivClass}>\n <ul className={contentGroupClass} role=\"tablist\" aria-label={name}>\n {groupSections.map((_, index) => {\n const [sectionName, sectioLabel] = sectionsData[index];\n const tabId = `${TAB}-${sectionName}`;\n const panelId = `${PANEL}-${sectionName}`;\n const isSelected = selectedTab === tabId;\n const buttonClassName = `${CONTENT_GROUP}-${contentClassame}__button${\n isSelected ? '--is-active' : ''\n }`;\n\n return (\n <button\n id={tabId}\n key={tabId}\n className={buttonClassName}\n type=\"button\"\n role=\"tab\"\n aria-selected={isSelected}\n aria-controls={panelId}\n onClick={() => {\n const baseUrl = asPath.split('#')[0];\n const newUrl = `${baseUrl}#${sectionName}`;\n if (asPath === newUrl) return;\n router.push(`/Resolver`, newUrl, { shallow: true });\n setSelectedTab(tabId);\n }}>\n {sectioLabel}\n </button>\n );\n })}\n </ul>\n {groupSections.map((groupSection, index) => {\n const [sectionName] = sectionsData[index];\n const tabId = `${TAB}-${sectionName}`;\n const panelId = `${PANEL}-${sectionName}`;\n if (selectedTab !== tabId) return null;\n\n return (\n <WrapperComponent\n key={panelId}\n id={sectionName}\n className={sectionClass}\n role=\"tabpanel\"\n tabId={tabId}\n aria-labelledby={tabId}>\n {groupSection}\n </WrapperComponent>\n );\n })}\n </div>\n );\n};\n\nContentGroupTabs.propTypes = {\n name: PropTypes.string.isRequired,\n contentType: PropTypes.string.isRequired,\n groupSections: PropTypes.array.isRequired,\n sectionsData: PropTypes.array.isRequired,\n VariantComponent: PropTypes.func\n};\n\nContentGroupTabs.defaultProps = {\n VariantComponent: null\n};\n\nexport default ContentGroupTabs;\n"],"mappings":"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"}
|
|
@@ -67,7 +67,8 @@ ImageRender.propTypes = {
|
|
|
67
67
|
style: PropTypes.object,
|
|
68
68
|
isHero: PropTypes.bool,
|
|
69
69
|
priority: PropTypes.bool,
|
|
70
|
-
sizeKey: PropTypes.string
|
|
70
|
+
sizeKey: PropTypes.string,
|
|
71
|
+
shouldRenderImgTag: PropTypes.bool
|
|
71
72
|
};
|
|
72
73
|
ImageRender.defaultProps = {
|
|
73
74
|
name: '',
|
|
@@ -78,7 +79,8 @@ ImageRender.defaultProps = {
|
|
|
78
79
|
isHero: false,
|
|
79
80
|
priority: false,
|
|
80
81
|
style: {},
|
|
81
|
-
sizeKey: ''
|
|
82
|
+
sizeKey: '',
|
|
83
|
+
shouldRenderImgTag: false
|
|
82
84
|
};
|
|
83
85
|
export default ImageRender;
|
|
84
86
|
//# sourceMappingURL=ImageRender.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ImageRender.js","names":["React","PropTypes","Head","ResponsiveImage","Lightbox","ImageRender","_ref","alt","imageUrl","handleEnableLightbox","toggleLightbox","displayLightbox","enableLightbox","caption","lightboxImgProps","name","metaTitle","heroModifier","style","isHero","priority","sizeKey","shouldRenderImgTag","otherProps","_objectWithoutProperties","_excluded","imageStyle","cursor","HeadComponent","createElement","Fragment","src","onClick","_extends","closeModal","imgWrapperProps","propTypes","bool","isRequired","string","func","object","defaultProps"],"sources":["../../../src/components/Image/ImageRender.js"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport Head from 'next/head';\nimport { ResponsiveImage } from '@blaze-cms/image-cdn-react';\nimport Lightbox from './Lightbox';\n\nconst ImageRender = ({\n alt,\n imageUrl,\n handleEnableLightbox,\n toggleLightbox,\n displayLightbox,\n enableLightbox,\n caption,\n lightboxImgProps,\n name,\n metaTitle,\n heroModifier,\n style,\n isHero,\n priority,\n sizeKey,\n shouldRenderImgTag,\n ...otherProps\n}) => {\n const imageStyle = enableLightbox ? { cursor: 'pointer' } : style;\n const HeadComponent = priority ? Head : null;\n\n return (\n <>\n {shouldRenderImgTag ? (\n <img style={imageStyle} src={imageUrl} alt={alt} onClick={handleEnableLightbox} />\n ) : (\n <ResponsiveImage\n sizeKey={sizeKey}\n alt={alt}\n src={imageUrl}\n onClick={handleEnableLightbox}\n style={imageStyle}\n HeadComponent={HeadComponent}\n />\n )}\n\n {displayLightbox && (\n <Lightbox\n imageUrl={imageUrl}\n alt={alt}\n priority={priority}\n closeModal={toggleLightbox}\n caption={caption}\n imgWrapperProps={lightboxImgProps}\n name={metaTitle || name}\n {...otherProps}\n />\n )}\n </>\n );\n};\n\nImageRender.propTypes = {\n displayLightbox: PropTypes.bool.isRequired,\n enableLightbox: PropTypes.bool.isRequired,\n alt: PropTypes.string,\n caption: PropTypes.string,\n imageUrl: PropTypes.string.isRequired,\n name: PropTypes.string,\n heroModifier: PropTypes.string,\n metaTitle: PropTypes.string,\n handleEnableLightbox: PropTypes.func.isRequired,\n toggleLightbox: PropTypes.func.isRequired,\n lightboxImgProps: PropTypes.object.isRequired,\n style: PropTypes.object,\n isHero: PropTypes.bool,\n priority: PropTypes.bool,\n sizeKey: PropTypes.string\n};\n\nImageRender.defaultProps = {\n name: '',\n metaTitle: '',\n heroModifier: '',\n alt: '',\n caption: '',\n isHero: false,\n priority: false,\n style: {},\n sizeKey: ''\n};\n\nexport default ImageRender;\n"],"mappings":";;;AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,OAAOC,SAAS,MAAM,YAAY;AAClC,OAAOC,IAAI,MAAM,WAAW;AAC5B,SAASC,eAAe,QAAQ,4BAA4B;AAC5D,OAAOC,QAAQ,MAAM,YAAY;AAEjC,MAAMC,WAAW,GAAGC,IAAA,IAkBd;EAAA,IAlBe;MACnBC,GAAG;MACHC,QAAQ;MACRC,oBAAoB;MACpBC,cAAc;MACdC,eAAe;MACfC,cAAc;MACdC,OAAO;MACPC,gBAAgB;MAChBC,IAAI;MACJC,SAAS;MACTC,YAAY;MACZC,KAAK;MACLC,MAAM;MACNC,QAAQ;MACRC,OAAO;MACPC;IAEF,CAAC,GAAAhB,IAAA;IADIiB,UAAU,GAAAC,wBAAA,CAAAlB,IAAA,EAAAmB,SAAA;EAEb,MAAMC,UAAU,GAAGd,cAAc,GAAG;IAAEe,MAAM,EAAE;EAAU,CAAC,GAAGT,KAAK;EACjE,MAAMU,aAAa,GAAGR,QAAQ,GAAGlB,IAAI,GAAG,IAAI;EAE5C,oBACEF,KAAA,CAAA6B,aAAA,CAAA7B,KAAA,CAAA8B,QAAA,QACGR,kBAAkB,gBACjBtB,KAAA,CAAA6B,aAAA;IAAKX,KAAK,EAAEQ,UAAW;IAACK,GAAG,EAAEvB,QAAS;IAACD,GAAG,EAAEA,GAAI;IAACyB,OAAO,EAAEvB;EAAqB,CAAE,CAAC,gBAElFT,KAAA,CAAA6B,aAAA,CAAC1B,eAAe;IACdkB,OAAO,EAAEA,OAAQ;IACjBd,GAAG,EAAEA,GAAI;IACTwB,GAAG,EAAEvB,QAAS;IACdwB,OAAO,EAAEvB,oBAAqB;IAC9BS,KAAK,EAAEQ,UAAW;IAClBE,aAAa,EAAEA;EAAc,CAC9B,CACF,EAEAjB,eAAe,iBACdX,KAAA,CAAA6B,aAAA,CAACzB,QAAQ,EAAA6B,QAAA;IACPzB,QAAQ,EAAEA,QAAS;IACnBD,GAAG,EAAEA,GAAI;IACTa,QAAQ,EAAEA,QAAS;IACnBc,UAAU,EAAExB,cAAe;IAC3BG,OAAO,EAAEA,OAAQ;IACjBsB,eAAe,EAAErB,gBAAiB;IAClCC,IAAI,EAAEC,SAAS,IAAID;EAAK,GACpBQ,UAAU,CACf,CAEH,CAAC;AAEP,CAAC;AAEDlB,WAAW,CAAC+B,SAAS,GAAG;EACtBzB,eAAe,EAAEV,SAAS,CAACoC,IAAI,CAACC,UAAU;EAC1C1B,cAAc,EAAEX,SAAS,CAACoC,IAAI,CAACC,UAAU;EACzC/B,GAAG,EAAEN,SAAS,CAACsC,MAAM;EACrB1B,OAAO,EAAEZ,SAAS,CAACsC,MAAM;EACzB/B,QAAQ,EAAEP,SAAS,CAACsC,MAAM,CAACD,UAAU;EACrCvB,IAAI,EAAEd,SAAS,CAACsC,MAAM;EACtBtB,YAAY,EAAEhB,SAAS,CAACsC,MAAM;EAC9BvB,SAAS,EAAEf,SAAS,CAACsC,MAAM;EAC3B9B,oBAAoB,EAAER,SAAS,CAACuC,IAAI,CAACF,UAAU;EAC/C5B,cAAc,EAAET,SAAS,CAACuC,IAAI,CAACF,UAAU;EACzCxB,gBAAgB,EAAEb,SAAS,CAACwC,MAAM,CAACH,UAAU;EAC7CpB,KAAK,EAAEjB,SAAS,CAACwC,MAAM;EACvBtB,MAAM,EAAElB,SAAS,CAACoC,IAAI;EACtBjB,QAAQ,EAAEnB,SAAS,CAACoC,IAAI;EACxBhB,OAAO,EAAEpB,SAAS,CAACsC;
|
|
1
|
+
{"version":3,"file":"ImageRender.js","names":["React","PropTypes","Head","ResponsiveImage","Lightbox","ImageRender","_ref","alt","imageUrl","handleEnableLightbox","toggleLightbox","displayLightbox","enableLightbox","caption","lightboxImgProps","name","metaTitle","heroModifier","style","isHero","priority","sizeKey","shouldRenderImgTag","otherProps","_objectWithoutProperties","_excluded","imageStyle","cursor","HeadComponent","createElement","Fragment","src","onClick","_extends","closeModal","imgWrapperProps","propTypes","bool","isRequired","string","func","object","defaultProps"],"sources":["../../../src/components/Image/ImageRender.js"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport Head from 'next/head';\nimport { ResponsiveImage } from '@blaze-cms/image-cdn-react';\nimport Lightbox from './Lightbox';\n\nconst ImageRender = ({\n alt,\n imageUrl,\n handleEnableLightbox,\n toggleLightbox,\n displayLightbox,\n enableLightbox,\n caption,\n lightboxImgProps,\n name,\n metaTitle,\n heroModifier,\n style,\n isHero,\n priority,\n sizeKey,\n shouldRenderImgTag,\n ...otherProps\n}) => {\n const imageStyle = enableLightbox ? { cursor: 'pointer' } : style;\n const HeadComponent = priority ? Head : null;\n\n return (\n <>\n {shouldRenderImgTag ? (\n <img style={imageStyle} src={imageUrl} alt={alt} onClick={handleEnableLightbox} />\n ) : (\n <ResponsiveImage\n sizeKey={sizeKey}\n alt={alt}\n src={imageUrl}\n onClick={handleEnableLightbox}\n style={imageStyle}\n HeadComponent={HeadComponent}\n />\n )}\n\n {displayLightbox && (\n <Lightbox\n imageUrl={imageUrl}\n alt={alt}\n priority={priority}\n closeModal={toggleLightbox}\n caption={caption}\n imgWrapperProps={lightboxImgProps}\n name={metaTitle || name}\n {...otherProps}\n />\n )}\n </>\n );\n};\n\nImageRender.propTypes = {\n displayLightbox: PropTypes.bool.isRequired,\n enableLightbox: PropTypes.bool.isRequired,\n alt: PropTypes.string,\n caption: PropTypes.string,\n imageUrl: PropTypes.string.isRequired,\n name: PropTypes.string,\n heroModifier: PropTypes.string,\n metaTitle: PropTypes.string,\n handleEnableLightbox: PropTypes.func.isRequired,\n toggleLightbox: PropTypes.func.isRequired,\n lightboxImgProps: PropTypes.object.isRequired,\n style: PropTypes.object,\n isHero: PropTypes.bool,\n priority: PropTypes.bool,\n sizeKey: PropTypes.string,\n shouldRenderImgTag: PropTypes.bool\n};\n\nImageRender.defaultProps = {\n name: '',\n metaTitle: '',\n heroModifier: '',\n alt: '',\n caption: '',\n isHero: false,\n priority: false,\n style: {},\n sizeKey: '',\n shouldRenderImgTag: false\n};\n\nexport default ImageRender;\n"],"mappings":"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"}
|
|
@@ -6,6 +6,8 @@ import ListPagination from './components/Pagination';
|
|
|
6
6
|
import ListHeader from './components/Header';
|
|
7
7
|
import { sortResponseData } from '../../helpers';
|
|
8
8
|
import { LOAD_MORE } from '../../constants';
|
|
9
|
+
import { useAppSyncEventHook } from '../../hooks';
|
|
10
|
+
import { buildQueryBooster } from './helpers';
|
|
9
11
|
const ListRender = props => {
|
|
10
12
|
const {
|
|
11
13
|
variables,
|
|
@@ -27,13 +29,21 @@ const ListRender = props => {
|
|
|
27
29
|
azFilter,
|
|
28
30
|
displayTotal
|
|
29
31
|
} = props;
|
|
32
|
+
const {
|
|
33
|
+
data: updatedVariables
|
|
34
|
+
} = useAppSyncEventHook({
|
|
35
|
+
eventName: 'list:query-variables',
|
|
36
|
+
data: variables,
|
|
37
|
+
props
|
|
38
|
+
});
|
|
39
|
+
const boostedVariables = buildQueryBooster(props, updatedVariables);
|
|
30
40
|
const {
|
|
31
41
|
data = {},
|
|
32
42
|
error,
|
|
33
43
|
loading,
|
|
34
44
|
fetchMore
|
|
35
45
|
} = useQuery(action, {
|
|
36
|
-
variables
|
|
46
|
+
variables: boostedVariables
|
|
37
47
|
});
|
|
38
48
|
if (loading) return '';
|
|
39
49
|
if (error) return error.message;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ListRender.js","names":["React","useQuery","PropTypes","ListPagination","ListHeader","sortResponseData","LOAD_MORE","ListRender","props","variables","actionKey","action","name","itemsToDisplay","itemsPerPageToUse","limitToUse","initialOffset","isInfinite","omitWrappers","paginationType","listComponent","ListComponent","query","url","listAggregations","isAZ","azFilter","displayTotal","data","error","loading","fetchMore","message","results","listData","listTotal","total","orderedListData","length","currentListLength","currentPage","Math","ceil","totalDisplay","createElement","Fragment","className","_extends","itemsPerPage","propTypes","string","isRequired","object","number","bool","func","array","defaultProps"],"sources":["../../../src/components/List/ListRender.js"],"sourcesContent":["import React from 'react';\nimport { useQuery } from '@apollo/client';\nimport PropTypes from 'prop-types';\nimport ListPagination from './components/Pagination';\nimport ListHeader from './components/Header';\nimport { sortResponseData } from '../../helpers';\nimport { LOAD_MORE } from '../../constants';\n\nconst ListRender = props => {\n const {\n variables,\n actionKey,\n action,\n name,\n itemsToDisplay,\n itemsPerPageToUse,\n limitToUse,\n initialOffset,\n isInfinite,\n omitWrappers,\n paginationType,\n listComponent: ListComponent,\n query,\n url,\n listAggregations,\n isAZ,\n azFilter,\n displayTotal\n } = props;\n const { data = {}, error, loading, fetchMore } = useQuery(action, {\n variables\n });\n if (loading) return '';\n if (error) return error.message;\n if (!data[actionKey] || !data[actionKey].results) return null;\n\n const listData = data[actionKey].results;\n const listTotal = data[actionKey].total;\n const orderedListData = sortResponseData(listData, itemsToDisplay);\n if (!orderedListData || !orderedListData.length) return null;\n const { length: currentListLength } = orderedListData;\n const currentPage = Math.ceil((initialOffset + currentListLength) / itemsPerPageToUse);\n const totalDisplay = limitToUse && listTotal > limitToUse ? limitToUse : listTotal;\n\n return (\n <>\n <span className=\"list-top\" />\n {isAZ && <ListHeader name={name} listAggregations={listAggregations} azFilter={azFilter} />}\n {displayTotal && (\n <div className=\"list_total_results w-full text-left p-4\">Total results: {totalDisplay}</div>\n )}\n <ListComponent\n orderedListData={orderedListData}\n isInfinite={isInfinite}\n initialOffset={initialOffset}\n actionKey={actionKey}\n limitToUse={limitToUse}\n fetchMore={fetchMore}\n omitWrappers={omitWrappers}\n itemsPerPageToUse={itemsPerPageToUse || listData.length}\n listTotal={listTotal}\n currentListLength={currentListLength}\n currentPage={currentPage}\n query={query}\n url={url}\n itemsToDisplay={itemsToDisplay}\n {...props}\n />\n {paginationType !== LOAD_MORE && (\n <ListPagination\n limitToUse={limitToUse}\n itemsPerPage={itemsPerPageToUse}\n listTotal={listTotal}\n name={name}\n isInfinite={isInfinite}\n currentListLength={currentListLength}\n paginationType={paginationType}\n currentPage={currentPage}\n query={query}\n url={url}\n />\n )}\n </>\n );\n};\n\nListRender.propTypes = {\n name: PropTypes.string.isRequired,\n paginationType: PropTypes.string.isRequired,\n variables: PropTypes.object.isRequired,\n actionKey: PropTypes.string.isRequired,\n action: PropTypes.object.isRequired,\n itemsPerPageToUse: PropTypes.number.isRequired,\n limitToUse: PropTypes.number.isRequired,\n initialOffset: PropTypes.number.isRequired,\n isInfinite: PropTypes.bool.isRequired,\n omitWrappers: PropTypes.bool,\n query: PropTypes.object.isRequired,\n url: PropTypes.string.isRequired,\n listComponent: PropTypes.func.isRequired,\n isAZ: PropTypes.bool.isRequired,\n azFilter: PropTypes.string.isRequired,\n listAggregations: PropTypes.array,\n itemsToDisplay: PropTypes.array,\n displayTotal: PropTypes.bool\n};\n\nListRender.defaultProps = {\n omitWrappers: false,\n itemsToDisplay: [],\n listAggregations: [],\n displayTotal: false\n};\n\nexport default ListRender;\n"],"mappings":";AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,SAASC,QAAQ,QAAQ,gBAAgB;AACzC,OAAOC,SAAS,MAAM,YAAY;AAClC,OAAOC,cAAc,MAAM,yBAAyB;AACpD,OAAOC,UAAU,MAAM,qBAAqB;AAC5C,SAASC,gBAAgB,QAAQ,eAAe;AAChD,SAASC,SAAS,QAAQ,iBAAiB;
|
|
1
|
+
{"version":3,"file":"ListRender.js","names":["React","useQuery","PropTypes","ListPagination","ListHeader","sortResponseData","LOAD_MORE","useAppSyncEventHook","buildQueryBooster","ListRender","props","variables","actionKey","action","name","itemsToDisplay","itemsPerPageToUse","limitToUse","initialOffset","isInfinite","omitWrappers","paginationType","listComponent","ListComponent","query","url","listAggregations","isAZ","azFilter","displayTotal","data","updatedVariables","eventName","boostedVariables","error","loading","fetchMore","message","results","listData","listTotal","total","orderedListData","length","currentListLength","currentPage","Math","ceil","totalDisplay","createElement","Fragment","className","_extends","itemsPerPage","propTypes","string","isRequired","object","number","bool","func","array","defaultProps"],"sources":["../../../src/components/List/ListRender.js"],"sourcesContent":["import React from 'react';\nimport { useQuery } from '@apollo/client';\nimport PropTypes from 'prop-types';\nimport ListPagination from './components/Pagination';\nimport ListHeader from './components/Header';\nimport { sortResponseData } from '../../helpers';\nimport { LOAD_MORE } from '../../constants';\nimport { useAppSyncEventHook } from '../../hooks';\nimport { buildQueryBooster } from './helpers';\n\nconst ListRender = props => {\n const {\n variables,\n actionKey,\n action,\n name,\n itemsToDisplay,\n itemsPerPageToUse,\n limitToUse,\n initialOffset,\n isInfinite,\n omitWrappers,\n paginationType,\n listComponent: ListComponent,\n query,\n url,\n listAggregations,\n isAZ,\n azFilter,\n displayTotal\n } = props;\n const { data: updatedVariables } = useAppSyncEventHook({\n eventName: 'list:query-variables',\n data: variables,\n props\n });\n const boostedVariables = buildQueryBooster(props, updatedVariables);\n\n const { data = {}, error, loading, fetchMore } = useQuery(action, {\n variables: boostedVariables\n });\n\n if (loading) return '';\n if (error) return error.message;\n if (!data[actionKey] || !data[actionKey].results) return null;\n\n const listData = data[actionKey].results;\n const listTotal = data[actionKey].total;\n const orderedListData = sortResponseData(listData, itemsToDisplay);\n if (!orderedListData || !orderedListData.length) return null;\n const { length: currentListLength } = orderedListData;\n const currentPage = Math.ceil((initialOffset + currentListLength) / itemsPerPageToUse);\n const totalDisplay = limitToUse && listTotal > limitToUse ? limitToUse : listTotal;\n\n return (\n <>\n <span className=\"list-top\" />\n {isAZ && <ListHeader name={name} listAggregations={listAggregations} azFilter={azFilter} />}\n {displayTotal && (\n <div className=\"list_total_results w-full text-left p-4\">Total results: {totalDisplay}</div>\n )}\n <ListComponent\n orderedListData={orderedListData}\n isInfinite={isInfinite}\n initialOffset={initialOffset}\n actionKey={actionKey}\n limitToUse={limitToUse}\n fetchMore={fetchMore}\n omitWrappers={omitWrappers}\n itemsPerPageToUse={itemsPerPageToUse || listData.length}\n listTotal={listTotal}\n currentListLength={currentListLength}\n currentPage={currentPage}\n query={query}\n url={url}\n itemsToDisplay={itemsToDisplay}\n {...props}\n />\n {paginationType !== LOAD_MORE && (\n <ListPagination\n limitToUse={limitToUse}\n itemsPerPage={itemsPerPageToUse}\n listTotal={listTotal}\n name={name}\n isInfinite={isInfinite}\n currentListLength={currentListLength}\n paginationType={paginationType}\n currentPage={currentPage}\n query={query}\n url={url}\n />\n )}\n </>\n );\n};\n\nListRender.propTypes = {\n name: PropTypes.string.isRequired,\n paginationType: PropTypes.string.isRequired,\n variables: PropTypes.object.isRequired,\n actionKey: PropTypes.string.isRequired,\n action: PropTypes.object.isRequired,\n itemsPerPageToUse: PropTypes.number.isRequired,\n limitToUse: PropTypes.number.isRequired,\n initialOffset: PropTypes.number.isRequired,\n isInfinite: PropTypes.bool.isRequired,\n omitWrappers: PropTypes.bool,\n query: PropTypes.object.isRequired,\n url: PropTypes.string.isRequired,\n listComponent: PropTypes.func.isRequired,\n isAZ: PropTypes.bool.isRequired,\n azFilter: PropTypes.string.isRequired,\n listAggregations: PropTypes.array,\n itemsToDisplay: PropTypes.array,\n displayTotal: PropTypes.bool\n};\n\nListRender.defaultProps = {\n omitWrappers: false,\n itemsToDisplay: [],\n listAggregations: [],\n displayTotal: false\n};\n\nexport default ListRender;\n"],"mappings":"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"}
|
|
@@ -3,6 +3,7 @@ import PropTypes from 'prop-types';
|
|
|
3
3
|
import { useRouter } from 'next/router';
|
|
4
4
|
import { parseUrl } from 'query-string';
|
|
5
5
|
import { buildAzUrl } from '../../helpers';
|
|
6
|
+
import BlazeLink from '../../../BlazeLink';
|
|
6
7
|
const ListHeader = ({
|
|
7
8
|
name,
|
|
8
9
|
listAggregations,
|
|
@@ -19,7 +20,8 @@ const ListHeader = ({
|
|
|
19
20
|
const allHref = buildAzUrl(query, name, '', url);
|
|
20
21
|
return /*#__PURE__*/React.createElement("div", {
|
|
21
22
|
className: "az_list_filter flex"
|
|
22
|
-
}, /*#__PURE__*/React.createElement(
|
|
23
|
+
}, /*#__PURE__*/React.createElement(BlazeLink, {
|
|
24
|
+
ariaLabel: "Show all",
|
|
23
25
|
className: `az_list_filter_option${!azFilter ? ' selected' : ''} flex-grow`,
|
|
24
26
|
href: allHref,
|
|
25
27
|
onClick: e => {
|
|
@@ -39,7 +41,8 @@ const ListHeader = ({
|
|
|
39
41
|
const href = buildAzUrl(query, name, key, url);
|
|
40
42
|
const isSelected = azFilter === key.toLowerCase();
|
|
41
43
|
const className = `az_list_filter_option${isSelected ? ' selected' : ''} flex-grow`;
|
|
42
|
-
return /*#__PURE__*/React.createElement(
|
|
44
|
+
return /*#__PURE__*/React.createElement(BlazeLink, {
|
|
45
|
+
ariaLabel: `Filter by ${key}`,
|
|
43
46
|
key: key,
|
|
44
47
|
className: className,
|
|
45
48
|
href: href,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ListHeader.js","names":["React","PropTypes","useRouter","parseUrl","buildAzUrl","ListHeader","name","listAggregations","azFilter","router","asPath","url","query","allHref","createElement","className","href","onClick","e","preventDefault","push","shallow","map","key","doc_count","count","isSelected","toLowerCase","propTypes","array","isRequired","string"],"sources":["../../../../../src/components/List/components/Header/ListHeader.js"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport { useRouter } from 'next/router';\nimport { parseUrl } from 'query-string';\nimport { buildAzUrl } from '../../helpers';\n\nconst ListHeader = ({ name, listAggregations, azFilter }) => {\n const router = useRouter();\n const { asPath } = router;\n const { url, query } = parseUrl(asPath);\n const allHref = buildAzUrl(query, name, '', url);\n\n return (\n <div className=\"az_list_filter flex\">\n <
|
|
1
|
+
{"version":3,"file":"ListHeader.js","names":["React","PropTypes","useRouter","parseUrl","buildAzUrl","BlazeLink","ListHeader","name","listAggregations","azFilter","router","asPath","url","query","allHref","createElement","className","ariaLabel","href","onClick","e","preventDefault","push","shallow","map","key","doc_count","count","isSelected","toLowerCase","propTypes","array","isRequired","string"],"sources":["../../../../../src/components/List/components/Header/ListHeader.js"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport { useRouter } from 'next/router';\nimport { parseUrl } from 'query-string';\nimport { buildAzUrl } from '../../helpers';\nimport BlazeLink from '../../../BlazeLink';\n\nconst ListHeader = ({ name, listAggregations, azFilter }) => {\n const router = useRouter();\n const { asPath } = router;\n const { url, query } = parseUrl(asPath);\n const allHref = buildAzUrl(query, name, '', url);\n\n return (\n <div className=\"az_list_filter flex\">\n <BlazeLink\n ariaLabel=\"Show all\"\n className={`az_list_filter_option${!azFilter ? ' selected' : ''} flex-grow`}\n href={allHref}\n onClick={e => {\n e.preventDefault();\n return router.push('/Resolver', allHref, { shallow: true });\n }}>\n ALL\n </BlazeLink>\n {listAggregations.map(({ key, doc_count: count }) => {\n if (!count)\n return (\n <span key={key} className=\"az_list_filter_option no_results flex-grow\">\n {key}\n </span>\n );\n\n const href = buildAzUrl(query, name, key, url);\n const isSelected = azFilter === key.toLowerCase();\n const className = `az_list_filter_option${isSelected ? ' selected' : ''} flex-grow`;\n\n return (\n <BlazeLink\n ariaLabel={`Filter by ${key}`}\n key={key}\n className={className}\n href={href}\n onClick={e => {\n e.preventDefault();\n return router.push('/Resolver', href, { shallow: true });\n }}>\n {key}\n </BlazeLink>\n );\n })}\n </div>\n );\n};\n\nListHeader.propTypes = {\n listAggregations: PropTypes.array.isRequired,\n name: PropTypes.string.isRequired,\n azFilter: PropTypes.string.isRequired\n};\n\nexport default ListHeader;\n"],"mappings":"AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,OAAOC,SAAS,MAAM,YAAY;AAClC,SAASC,SAAS,QAAQ,aAAa;AACvC,SAASC,QAAQ,QAAQ,cAAc;AACvC,SAASC,UAAU,QAAQ,eAAe;AAC1C,OAAOC,SAAS,MAAM,oBAAoB;AAE1C,MAAMC,UAAU,GAAGA,CAAC;EAAEC,IAAI;EAAEC,gBAAgB;EAAEC;AAAS,CAAC,KAAK;EAC3D,MAAMC,MAAM,GAAGR,SAAS,CAAC,CAAC;EAC1B,MAAM;IAAES;EAAO,CAAC,GAAGD,MAAM;EACzB,MAAM;IAAEE,GAAG;IAAEC;EAAM,CAAC,GAAGV,QAAQ,CAACQ,MAAM,CAAC;EACvC,MAAMG,OAAO,GAAGV,UAAU,CAACS,KAAK,EAAEN,IAAI,EAAE,EAAE,EAAEK,GAAG,CAAC;EAEhD,oBACEZ,KAAA,CAAAe,aAAA;IAAKC,SAAS,EAAC;EAAqB,gBAClChB,KAAA,CAAAe,aAAA,CAACV,SAAS;IACRY,SAAS,EAAC,UAAU;IACpBD,SAAS,EAAG,wBAAuB,CAACP,QAAQ,GAAG,WAAW,GAAG,EAAG,YAAY;IAC5ES,IAAI,EAAEJ,OAAQ;IACdK,OAAO,EAAEC,CAAC,IAAI;MACZA,CAAC,CAACC,cAAc,CAAC,CAAC;MAClB,OAAOX,MAAM,CAACY,IAAI,CAAC,WAAW,EAAER,OAAO,EAAE;QAAES,OAAO,EAAE;MAAK,CAAC,CAAC;IAC7D;EAAE,GAAC,KAEM,CAAC,EACXf,gBAAgB,CAACgB,GAAG,CAAC,CAAC;IAAEC,GAAG;IAAEC,SAAS,EAAEC;EAAM,CAAC,KAAK;IACnD,IAAI,CAACA,KAAK,EACR,oBACE3B,KAAA,CAAAe,aAAA;MAAMU,GAAG,EAAEA,GAAI;MAACT,SAAS,EAAC;IAA4C,GACnES,GACG,CAAC;IAGX,MAAMP,IAAI,GAAGd,UAAU,CAACS,KAAK,EAAEN,IAAI,EAAEkB,GAAG,EAAEb,GAAG,CAAC;IAC9C,MAAMgB,UAAU,GAAGnB,QAAQ,KAAKgB,GAAG,CAACI,WAAW,CAAC,CAAC;IACjD,MAAMb,SAAS,GAAI,wBAAuBY,UAAU,GAAG,WAAW,GAAG,EAAG,YAAW;IAEnF,oBACE5B,KAAA,CAAAe,aAAA,CAACV,SAAS;MACRY,SAAS,EAAG,aAAYQ,GAAI,EAAE;MAC9BA,GAAG,EAAEA,GAAI;MACTT,SAAS,EAAEA,SAAU;MACrBE,IAAI,EAAEA,IAAK;MACXC,OAAO,EAAEC,CAAC,IAAI;QACZA,CAAC,CAACC,cAAc,CAAC,CAAC;QAClB,OAAOX,MAAM,CAACY,IAAI,CAAC,WAAW,EAAEJ,IAAI,EAAE;UAAEK,OAAO,EAAE;QAAK,CAAC,CAAC;MAC1D;IAAE,GACDE,GACQ,CAAC;EAEhB,CAAC,CACE,CAAC;AAEV,CAAC;AAEDnB,UAAU,CAACwB,SAAS,GAAG;EACrBtB,gBAAgB,EAAEP,SAAS,CAAC8B,KAAK,CAACC,UAAU;EAC5CzB,IAAI,EAAEN,SAAS,CAACgC,MAAM,CAACD,UAAU;EACjCvB,QAAQ,EAAER,SAAS,CAACgC,MAAM,CAACD;AAC7B,CAAC;AAED,eAAe1B,UAAU"}
|
|
@@ -31,13 +31,13 @@ const Classic = ({
|
|
|
31
31
|
onClick: onClick,
|
|
32
32
|
shallow: true,
|
|
33
33
|
scroll: true
|
|
34
|
-
}, PREVIOUS_STRING), pages, !!nextPageLink && /*#__PURE__*/React.createElement(BlazeLink, {
|
|
34
|
+
}, `${PREVIOUS_STRING} page`), pages, !!nextPageLink && /*#__PURE__*/React.createElement(BlazeLink, {
|
|
35
35
|
href: nextPageLink,
|
|
36
36
|
className: "pagination_page-next",
|
|
37
37
|
onClick: onClick,
|
|
38
38
|
shallow: true,
|
|
39
39
|
scroll: true
|
|
40
|
-
}, NEXT_STRING));
|
|
40
|
+
}, `${NEXT_STRING} page`));
|
|
41
41
|
};
|
|
42
42
|
Classic.propTypes = {
|
|
43
43
|
numberOfPages: PropTypes.number.isRequired,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Classic.js","names":["React","PropTypes","buildPaginationItems","BlazeLink","buildPaginationUrl","NEXT_STRING","PREVIOUS_STRING","Classic","name","numberOfPages","currentPage","query","url","isLastPage","onClick","pages","nextPage","previousPage","previousPageLink","nextPageLink","createElement","Fragment","href","className","shallow","scroll","propTypes","number","isRequired","string","object","bool","func"],"sources":["../../../../../src/components/List/components/Pagination/Classic.js"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport { buildPaginationItems } from '../../helpers';\nimport BlazeLink from '../../../BlazeLink';\nimport buildPaginationUrl from '../../helpers/build-pagination-url';\nimport { NEXT_STRING, PREVIOUS_STRING } from '../../../../constants';\n\nconst Classic = ({ name, numberOfPages, currentPage, query, url, isLastPage, onClick }) => {\n const pages = buildPaginationItems({ name, numberOfPages, currentPage, query, url, onClick });\n const nextPage = currentPage + 1;\n const previousPage = currentPage - 1;\n const previousPageLink =\n currentPage > 1 ? buildPaginationUrl(name, previousPage, query, url) : null;\n const nextPageLink = !isLastPage ? buildPaginationUrl(name, nextPage, query, url) : null;\n\n return (\n <>\n {!!previousPageLink && (\n <BlazeLink\n href={previousPageLink}\n className=\"pagination_page-previous\"\n onClick={onClick}\n shallow\n scroll>\n {PREVIOUS_STRING}\n </BlazeLink>\n )}\n {pages}\n {!!nextPageLink && (\n <BlazeLink\n href={nextPageLink}\n className=\"pagination_page-next\"\n onClick={onClick}\n shallow\n scroll>\n {NEXT_STRING}\n </BlazeLink>\n )}\n </>\n );\n};\n\nClassic.propTypes = {\n numberOfPages: PropTypes.number.isRequired,\n currentPage: PropTypes.number.isRequired,\n name: PropTypes.string.isRequired,\n query: PropTypes.object.isRequired,\n url: PropTypes.string.isRequired,\n isLastPage: PropTypes.bool.isRequired,\n onClick: PropTypes.func.isRequired\n};\n\nexport default Classic;\n"],"mappings":"AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,OAAOC,SAAS,MAAM,YAAY;AAClC,SAASC,oBAAoB,QAAQ,eAAe;AACpD,OAAOC,SAAS,MAAM,oBAAoB;AAC1C,OAAOC,kBAAkB,MAAM,oCAAoC;AACnE,SAASC,WAAW,EAAEC,eAAe,QAAQ,uBAAuB;AAEpE,MAAMC,OAAO,GAAGA,CAAC;EAAEC,IAAI;EAAEC,aAAa;EAAEC,WAAW;EAAEC,KAAK;EAAEC,GAAG;EAAEC,UAAU;EAAEC;AAAQ,CAAC,KAAK;EACzF,MAAMC,KAAK,GAAGb,oBAAoB,CAAC;IAAEM,IAAI;IAAEC,aAAa;IAAEC,WAAW;IAAEC,KAAK;IAAEC,GAAG;IAAEE;EAAQ,CAAC,CAAC;EAC7F,MAAME,QAAQ,GAAGN,WAAW,GAAG,CAAC;EAChC,MAAMO,YAAY,GAAGP,WAAW,GAAG,CAAC;EACpC,MAAMQ,gBAAgB,GACpBR,WAAW,GAAG,CAAC,GAAGN,kBAAkB,CAACI,IAAI,EAAES,YAAY,EAAEN,KAAK,EAAEC,GAAG,CAAC,GAAG,IAAI;EAC7E,MAAMO,YAAY,GAAG,CAACN,UAAU,GAAGT,kBAAkB,CAACI,IAAI,EAAEQ,QAAQ,EAAEL,KAAK,EAAEC,GAAG,CAAC,GAAG,IAAI;EAExF,oBACEZ,KAAA,CAAAoB,aAAA,CAAApB,KAAA,CAAAqB,QAAA,QACG,CAAC,CAACH,gBAAgB,iBACjBlB,KAAA,CAAAoB,aAAA,CAACjB,SAAS;IACRmB,IAAI,EAAEJ,gBAAiB;IACvBK,SAAS,EAAC,0BAA0B;IACpCT,OAAO,EAAEA,OAAQ;IACjBU,OAAO;IACPC,MAAM;EAAA,
|
|
1
|
+
{"version":3,"file":"Classic.js","names":["React","PropTypes","buildPaginationItems","BlazeLink","buildPaginationUrl","NEXT_STRING","PREVIOUS_STRING","Classic","name","numberOfPages","currentPage","query","url","isLastPage","onClick","pages","nextPage","previousPage","previousPageLink","nextPageLink","createElement","Fragment","href","className","shallow","scroll","propTypes","number","isRequired","string","object","bool","func"],"sources":["../../../../../src/components/List/components/Pagination/Classic.js"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport { buildPaginationItems } from '../../helpers';\nimport BlazeLink from '../../../BlazeLink';\nimport buildPaginationUrl from '../../helpers/build-pagination-url';\nimport { NEXT_STRING, PREVIOUS_STRING } from '../../../../constants';\n\nconst Classic = ({ name, numberOfPages, currentPage, query, url, isLastPage, onClick }) => {\n const pages = buildPaginationItems({ name, numberOfPages, currentPage, query, url, onClick });\n const nextPage = currentPage + 1;\n const previousPage = currentPage - 1;\n const previousPageLink =\n currentPage > 1 ? buildPaginationUrl(name, previousPage, query, url) : null;\n const nextPageLink = !isLastPage ? buildPaginationUrl(name, nextPage, query, url) : null;\n\n return (\n <>\n {!!previousPageLink && (\n <BlazeLink\n href={previousPageLink}\n className=\"pagination_page-previous\"\n onClick={onClick}\n shallow\n scroll>\n {`${PREVIOUS_STRING} page`}\n </BlazeLink>\n )}\n {pages}\n {!!nextPageLink && (\n <BlazeLink\n href={nextPageLink}\n className=\"pagination_page-next\"\n onClick={onClick}\n shallow\n scroll>\n {`${NEXT_STRING} page`}\n </BlazeLink>\n )}\n </>\n );\n};\n\nClassic.propTypes = {\n numberOfPages: PropTypes.number.isRequired,\n currentPage: PropTypes.number.isRequired,\n name: PropTypes.string.isRequired,\n query: PropTypes.object.isRequired,\n url: PropTypes.string.isRequired,\n isLastPage: PropTypes.bool.isRequired,\n onClick: PropTypes.func.isRequired\n};\n\nexport default Classic;\n"],"mappings":"AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,OAAOC,SAAS,MAAM,YAAY;AAClC,SAASC,oBAAoB,QAAQ,eAAe;AACpD,OAAOC,SAAS,MAAM,oBAAoB;AAC1C,OAAOC,kBAAkB,MAAM,oCAAoC;AACnE,SAASC,WAAW,EAAEC,eAAe,QAAQ,uBAAuB;AAEpE,MAAMC,OAAO,GAAGA,CAAC;EAAEC,IAAI;EAAEC,aAAa;EAAEC,WAAW;EAAEC,KAAK;EAAEC,GAAG;EAAEC,UAAU;EAAEC;AAAQ,CAAC,KAAK;EACzF,MAAMC,KAAK,GAAGb,oBAAoB,CAAC;IAAEM,IAAI;IAAEC,aAAa;IAAEC,WAAW;IAAEC,KAAK;IAAEC,GAAG;IAAEE;EAAQ,CAAC,CAAC;EAC7F,MAAME,QAAQ,GAAGN,WAAW,GAAG,CAAC;EAChC,MAAMO,YAAY,GAAGP,WAAW,GAAG,CAAC;EACpC,MAAMQ,gBAAgB,GACpBR,WAAW,GAAG,CAAC,GAAGN,kBAAkB,CAACI,IAAI,EAAES,YAAY,EAAEN,KAAK,EAAEC,GAAG,CAAC,GAAG,IAAI;EAC7E,MAAMO,YAAY,GAAG,CAACN,UAAU,GAAGT,kBAAkB,CAACI,IAAI,EAAEQ,QAAQ,EAAEL,KAAK,EAAEC,GAAG,CAAC,GAAG,IAAI;EAExF,oBACEZ,KAAA,CAAAoB,aAAA,CAAApB,KAAA,CAAAqB,QAAA,QACG,CAAC,CAACH,gBAAgB,iBACjBlB,KAAA,CAAAoB,aAAA,CAACjB,SAAS;IACRmB,IAAI,EAAEJ,gBAAiB;IACvBK,SAAS,EAAC,0BAA0B;IACpCT,OAAO,EAAEA,OAAQ;IACjBU,OAAO;IACPC,MAAM;EAAA,GACJ,GAAEnB,eAAgB,OACX,CACZ,EACAS,KAAK,EACL,CAAC,CAACI,YAAY,iBACbnB,KAAA,CAAAoB,aAAA,CAACjB,SAAS;IACRmB,IAAI,EAAEH,YAAa;IACnBI,SAAS,EAAC,sBAAsB;IAChCT,OAAO,EAAEA,OAAQ;IACjBU,OAAO;IACPC,MAAM;EAAA,GACJ,GAAEpB,WAAY,OACP,CAEb,CAAC;AAEP,CAAC;AAEDE,OAAO,CAACmB,SAAS,GAAG;EAClBjB,aAAa,EAAER,SAAS,CAAC0B,MAAM,CAACC,UAAU;EAC1ClB,WAAW,EAAET,SAAS,CAAC0B,MAAM,CAACC,UAAU;EACxCpB,IAAI,EAAEP,SAAS,CAAC4B,MAAM,CAACD,UAAU;EACjCjB,KAAK,EAAEV,SAAS,CAAC6B,MAAM,CAACF,UAAU;EAClChB,GAAG,EAAEX,SAAS,CAAC4B,MAAM,CAACD,UAAU;EAChCf,UAAU,EAAEZ,SAAS,CAAC8B,IAAI,CAACH,UAAU;EACrCd,OAAO,EAAEb,SAAS,CAAC+B,IAAI,CAACJ;AAC1B,CAAC;AAED,eAAerB,OAAO"}
|
|
@@ -2,6 +2,7 @@ import React from 'react';
|
|
|
2
2
|
import PropTypes from 'prop-types';
|
|
3
3
|
import { LOAD_MORE_STRING } from '../../../../constants';
|
|
4
4
|
import buildPaginationUrl from '../../helpers/build-pagination-url';
|
|
5
|
+
import BlazeLink from '../../../BlazeLink';
|
|
5
6
|
const LoadMore = ({
|
|
6
7
|
name,
|
|
7
8
|
currentPage,
|
|
@@ -17,7 +18,7 @@ const LoadMore = ({
|
|
|
17
18
|
e.preventDefault();
|
|
18
19
|
triggerInfiniteScroll();
|
|
19
20
|
};
|
|
20
|
-
return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(
|
|
21
|
+
return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(BlazeLink, {
|
|
21
22
|
className: "pagination_load-more",
|
|
22
23
|
role: "button",
|
|
23
24
|
href: nextPageLink,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"LoadMore.js","names":["React","PropTypes","LOAD_MORE_STRING","buildPaginationUrl","LoadMore","name","currentPage","query","url","triggerInfiniteScroll","isLastPage","nextPage","nextPageLink","loadMoreItems","e","preventDefault","createElement","Fragment","className","role","href","onClick","propTypes","bool","isRequired","number","string","object","func"],"sources":["../../../../../src/components/List/components/Pagination/LoadMore.js"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport { LOAD_MORE_STRING } from '../../../../constants';\nimport buildPaginationUrl from '../../helpers/build-pagination-url';\n\nconst LoadMore = ({ name, currentPage, query, url, triggerInfiniteScroll, isLastPage }) => {\n if (isLastPage) return null;\n const nextPage = currentPage + 1;\n const nextPageLink = buildPaginationUrl(name, nextPage, query, url);\n\n const loadMoreItems = e => {\n e.preventDefault();\n triggerInfiniteScroll();\n };\n\n return (\n <>\n <
|
|
1
|
+
{"version":3,"file":"LoadMore.js","names":["React","PropTypes","LOAD_MORE_STRING","buildPaginationUrl","BlazeLink","LoadMore","name","currentPage","query","url","triggerInfiniteScroll","isLastPage","nextPage","nextPageLink","loadMoreItems","e","preventDefault","createElement","Fragment","className","role","href","onClick","propTypes","bool","isRequired","number","string","object","func"],"sources":["../../../../../src/components/List/components/Pagination/LoadMore.js"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport { LOAD_MORE_STRING } from '../../../../constants';\nimport buildPaginationUrl from '../../helpers/build-pagination-url';\nimport BlazeLink from '../../../BlazeLink';\n\nconst LoadMore = ({ name, currentPage, query, url, triggerInfiniteScroll, isLastPage }) => {\n if (isLastPage) return null;\n const nextPage = currentPage + 1;\n const nextPageLink = buildPaginationUrl(name, nextPage, query, url);\n\n const loadMoreItems = e => {\n e.preventDefault();\n triggerInfiniteScroll();\n };\n\n return (\n <>\n <BlazeLink\n className=\"pagination_load-more\"\n role=\"button\"\n href={nextPageLink}\n onClick={loadMoreItems}>\n {LOAD_MORE_STRING}\n </BlazeLink>\n </>\n );\n};\n\nLoadMore.propTypes = {\n isLastPage: PropTypes.bool.isRequired,\n currentPage: PropTypes.number.isRequired,\n name: PropTypes.string.isRequired,\n query: PropTypes.object.isRequired,\n url: PropTypes.string.isRequired,\n triggerInfiniteScroll: PropTypes.func.isRequired\n};\n\nexport default LoadMore;\n"],"mappings":"AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,OAAOC,SAAS,MAAM,YAAY;AAClC,SAASC,gBAAgB,QAAQ,uBAAuB;AACxD,OAAOC,kBAAkB,MAAM,oCAAoC;AACnE,OAAOC,SAAS,MAAM,oBAAoB;AAE1C,MAAMC,QAAQ,GAAGA,CAAC;EAAEC,IAAI;EAAEC,WAAW;EAAEC,KAAK;EAAEC,GAAG;EAAEC,qBAAqB;EAAEC;AAAW,CAAC,KAAK;EACzF,IAAIA,UAAU,EAAE,OAAO,IAAI;EAC3B,MAAMC,QAAQ,GAAGL,WAAW,GAAG,CAAC;EAChC,MAAMM,YAAY,GAAGV,kBAAkB,CAACG,IAAI,EAAEM,QAAQ,EAAEJ,KAAK,EAAEC,GAAG,CAAC;EAEnE,MAAMK,aAAa,GAAGC,CAAC,IAAI;IACzBA,CAAC,CAACC,cAAc,CAAC,CAAC;IAClBN,qBAAqB,CAAC,CAAC;EACzB,CAAC;EAED,oBACEV,KAAA,CAAAiB,aAAA,CAAAjB,KAAA,CAAAkB,QAAA,qBACElB,KAAA,CAAAiB,aAAA,CAACb,SAAS;IACRe,SAAS,EAAC,sBAAsB;IAChCC,IAAI,EAAC,QAAQ;IACbC,IAAI,EAAER,YAAa;IACnBS,OAAO,EAAER;EAAc,GACtBZ,gBACQ,CACX,CAAC;AAEP,CAAC;AAEDG,QAAQ,CAACkB,SAAS,GAAG;EACnBZ,UAAU,EAAEV,SAAS,CAACuB,IAAI,CAACC,UAAU;EACrClB,WAAW,EAAEN,SAAS,CAACyB,MAAM,CAACD,UAAU;EACxCnB,IAAI,EAAEL,SAAS,CAAC0B,MAAM,CAACF,UAAU;EACjCjB,KAAK,EAAEP,SAAS,CAAC2B,MAAM,CAACH,UAAU;EAClChB,GAAG,EAAER,SAAS,CAAC0B,MAAM,CAACF,UAAU;EAChCf,qBAAqB,EAAET,SAAS,CAAC4B,IAAI,CAACJ;AACxC,CAAC;AAED,eAAepB,QAAQ"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"build-pagination-items.js","names":["React","BlazeLink","buildPaginationUrl","PAGINATION_DISPLAY_LIMIT","PAGINATION_DIFFERENCE","buildPaginationItems","name","numberOfPages","currentPage","query","url","onClick","pages","paginationDifference","index","page","length","href","pageHtml","createElement","key","className","shallow","scroll","push"],"sources":["../../../../src/components/List/helpers/build-pagination-items.js"],"sourcesContent":["import React from 'react';\nimport BlazeLink from '../../BlazeLink';\nimport buildPaginationUrl from './build-pagination-url';\nimport { PAGINATION_DISPLAY_LIMIT, PAGINATION_DIFFERENCE } from '../../../constants';\n\nconst buildPaginationItems = ({ name, numberOfPages, currentPage, query, url, onClick }) => {\n const pages = [];\n const paginationDifference =\n currentPage > PAGINATION_DIFFERENCE ? currentPage - PAGINATION_DIFFERENCE : 0;\n\n if (numberOfPages <= 1) return null;\n\n for (let index = 0; index < numberOfPages; index += 1) {\n const page = index + 1 + paginationDifference;\n if (pages.length < PAGINATION_DISPLAY_LIMIT && page <= numberOfPages) {\n const href = buildPaginationUrl(name, page, query, url);\n const pageHtml =\n page === currentPage ? (\n <span key={page} className=\"pagination_page-item--current\">\n {page}\n </span>\n ) : (\n <BlazeLink\n key={page}\n href={href}\n className=\"pagination_page-item\"\n onClick={onClick}\n shallow\n scroll>\n {page}\n </BlazeLink>\n );\n pages.push(pageHtml);\n }\n }\n\n return pages;\n};\n\nexport default buildPaginationItems;\n"],"mappings":"AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,OAAOC,SAAS,MAAM,iBAAiB;AACvC,OAAOC,kBAAkB,MAAM,wBAAwB;AACvD,SAASC,wBAAwB,EAAEC,qBAAqB,QAAQ,oBAAoB;AAEpF,MAAMC,oBAAoB,GAAGA,CAAC;EAAEC,IAAI;EAAEC,aAAa;EAAEC,WAAW;EAAEC,KAAK;EAAEC,GAAG;EAAEC;AAAQ,CAAC,KAAK;EAC1F,MAAMC,KAAK,GAAG,EAAE;EAChB,MAAMC,oBAAoB,GACxBL,WAAW,GAAGJ,qBAAqB,GAAGI,WAAW,GAAGJ,qBAAqB,GAAG,CAAC;EAE/E,IAAIG,aAAa,IAAI,CAAC,EAAE,OAAO,IAAI;EAEnC,KAAK,IAAIO,KAAK,GAAG,CAAC,EAAEA,KAAK,GAAGP,aAAa,EAAEO,KAAK,IAAI,CAAC,EAAE;IACrD,MAAMC,IAAI,GAAGD,KAAK,GAAG,CAAC,GAAGD,oBAAoB;IAC7C,IAAID,KAAK,CAACI,MAAM,GAAGb,wBAAwB,IAAIY,IAAI,IAAIR,aAAa,EAAE;MACpE,MAAMU,IAAI,GAAGf,kBAAkB,CAACI,IAAI,EAAES,IAAI,EAAEN,KAAK,EAAEC,GAAG,CAAC;MACvD,MAAMQ,QAAQ,GACZH,IAAI,KAAKP,WAAW,gBAClBR,KAAA,CAAAmB,aAAA;QAAMC,GAAG,EAAEL,IAAK;QAACM,SAAS,EAAC;MAA+B,GACvDN,IACG,CAAC,gBAEPf,KAAA,CAAAmB,aAAA,CAAClB,SAAS;QACRmB,GAAG,EAAEL,IAAK;QACVE,IAAI,EAAEA,IAAK;QACXI,SAAS,EAAC,sBAAsB;QAChCV,OAAO,EAAEA,OAAQ;QACjBW,OAAO;QACPC,MAAM;
|
|
1
|
+
{"version":3,"file":"build-pagination-items.js","names":["React","BlazeLink","buildPaginationUrl","PAGINATION_DISPLAY_LIMIT","PAGINATION_DIFFERENCE","buildPaginationItems","name","numberOfPages","currentPage","query","url","onClick","pages","paginationDifference","index","page","length","href","pageHtml","createElement","key","className","shallow","scroll","ariaLabel","push"],"sources":["../../../../src/components/List/helpers/build-pagination-items.js"],"sourcesContent":["import React from 'react';\nimport BlazeLink from '../../BlazeLink';\nimport buildPaginationUrl from './build-pagination-url';\nimport { PAGINATION_DISPLAY_LIMIT, PAGINATION_DIFFERENCE } from '../../../constants';\n\nconst buildPaginationItems = ({ name, numberOfPages, currentPage, query, url, onClick }) => {\n const pages = [];\n const paginationDifference =\n currentPage > PAGINATION_DIFFERENCE ? currentPage - PAGINATION_DIFFERENCE : 0;\n\n if (numberOfPages <= 1) return null;\n\n for (let index = 0; index < numberOfPages; index += 1) {\n const page = index + 1 + paginationDifference;\n if (pages.length < PAGINATION_DISPLAY_LIMIT && page <= numberOfPages) {\n const href = buildPaginationUrl(name, page, query, url);\n const pageHtml =\n page === currentPage ? (\n <span key={page} className=\"pagination_page-item--current\">\n {page}\n </span>\n ) : (\n <BlazeLink\n key={page}\n href={href}\n className=\"pagination_page-item\"\n onClick={onClick}\n shallow\n scroll\n ariaLabel={`Page ${page}`}>\n {page}\n </BlazeLink>\n );\n pages.push(pageHtml);\n }\n }\n\n return pages;\n};\n\nexport default buildPaginationItems;\n"],"mappings":"AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,OAAOC,SAAS,MAAM,iBAAiB;AACvC,OAAOC,kBAAkB,MAAM,wBAAwB;AACvD,SAASC,wBAAwB,EAAEC,qBAAqB,QAAQ,oBAAoB;AAEpF,MAAMC,oBAAoB,GAAGA,CAAC;EAAEC,IAAI;EAAEC,aAAa;EAAEC,WAAW;EAAEC,KAAK;EAAEC,GAAG;EAAEC;AAAQ,CAAC,KAAK;EAC1F,MAAMC,KAAK,GAAG,EAAE;EAChB,MAAMC,oBAAoB,GACxBL,WAAW,GAAGJ,qBAAqB,GAAGI,WAAW,GAAGJ,qBAAqB,GAAG,CAAC;EAE/E,IAAIG,aAAa,IAAI,CAAC,EAAE,OAAO,IAAI;EAEnC,KAAK,IAAIO,KAAK,GAAG,CAAC,EAAEA,KAAK,GAAGP,aAAa,EAAEO,KAAK,IAAI,CAAC,EAAE;IACrD,MAAMC,IAAI,GAAGD,KAAK,GAAG,CAAC,GAAGD,oBAAoB;IAC7C,IAAID,KAAK,CAACI,MAAM,GAAGb,wBAAwB,IAAIY,IAAI,IAAIR,aAAa,EAAE;MACpE,MAAMU,IAAI,GAAGf,kBAAkB,CAACI,IAAI,EAAES,IAAI,EAAEN,KAAK,EAAEC,GAAG,CAAC;MACvD,MAAMQ,QAAQ,GACZH,IAAI,KAAKP,WAAW,gBAClBR,KAAA,CAAAmB,aAAA;QAAMC,GAAG,EAAEL,IAAK;QAACM,SAAS,EAAC;MAA+B,GACvDN,IACG,CAAC,gBAEPf,KAAA,CAAAmB,aAAA,CAAClB,SAAS;QACRmB,GAAG,EAAEL,IAAK;QACVE,IAAI,EAAEA,IAAK;QACXI,SAAS,EAAC,sBAAsB;QAChCV,OAAO,EAAEA,OAAQ;QACjBW,OAAO;QACPC,MAAM;QACNC,SAAS,EAAG,QAAOT,IAAK;MAAE,GACzBA,IACQ,CACZ;MACHH,KAAK,CAACa,IAAI,CAACP,QAAQ,CAAC;IACtB;EACF;EAEA,OAAON,KAAK;AACd,CAAC;AAED,eAAeP,oBAAoB"}
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
import _defineProperty from "@babel/runtime/helpers/defineProperty";
|
|
2
|
+
function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
|
|
3
|
+
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
|
|
4
|
+
const buildQueryBooster = (props, data) => {
|
|
5
|
+
const {
|
|
6
|
+
recencyBoostProperty
|
|
7
|
+
} = props;
|
|
8
|
+
if (!recencyBoostProperty || !recencyBoostProperty.length) return data;
|
|
9
|
+
const {
|
|
10
|
+
rawQueryStringified = ''
|
|
11
|
+
} = data;
|
|
12
|
+
const parsedRawQuery = JSON.parse(rawQueryStringified);
|
|
13
|
+
const {
|
|
14
|
+
function_score: {
|
|
15
|
+
query,
|
|
16
|
+
functions = []
|
|
17
|
+
} = {}
|
|
18
|
+
} = parsedRawQuery;
|
|
19
|
+
const boostedPropsFunctios = recencyBoostProperty.map(propToBoost => ({
|
|
20
|
+
gauss: {
|
|
21
|
+
[propToBoost]: {
|
|
22
|
+
origin: 'now',
|
|
23
|
+
scale: '30d',
|
|
24
|
+
offset: '7d',
|
|
25
|
+
decay: 0.5
|
|
26
|
+
}
|
|
27
|
+
}
|
|
28
|
+
}));
|
|
29
|
+
const updatedData = {
|
|
30
|
+
function_score: {
|
|
31
|
+
query: functions.length ? query : parsedRawQuery,
|
|
32
|
+
functions: [...functions, ...boostedPropsFunctios],
|
|
33
|
+
boost_mode: 'multiply'
|
|
34
|
+
}
|
|
35
|
+
};
|
|
36
|
+
return _objectSpread(_objectSpread({}, data), {}, {
|
|
37
|
+
rawQueryStringified: JSON.stringify(updatedData)
|
|
38
|
+
});
|
|
39
|
+
};
|
|
40
|
+
export default buildQueryBooster;
|
|
41
|
+
//# sourceMappingURL=build-query-booster.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"build-query-booster.js","names":["buildQueryBooster","props","data","recencyBoostProperty","length","rawQueryStringified","parsedRawQuery","JSON","parse","function_score","query","functions","boostedPropsFunctios","map","propToBoost","gauss","origin","scale","offset","decay","updatedData","boost_mode","_objectSpread","stringify"],"sources":["../../../../src/components/List/helpers/build-query-booster.js"],"sourcesContent":["const buildQueryBooster = (props, data) => {\n const { recencyBoostProperty } = props;\n\n if (!recencyBoostProperty || !recencyBoostProperty.length) return data;\n const { rawQueryStringified = '' } = data;\n\n const parsedRawQuery = JSON.parse(rawQueryStringified);\n const { function_score: { query, functions = [] } = {} } = parsedRawQuery;\n\n const boostedPropsFunctios = recencyBoostProperty.map(propToBoost => ({\n gauss: {\n [propToBoost]: {\n origin: 'now',\n scale: '30d',\n offset: '7d',\n decay: 0.5\n }\n }\n }));\n\n const updatedData = {\n function_score: {\n query: functions.length ? query : parsedRawQuery,\n functions: [...functions, ...boostedPropsFunctios],\n boost_mode: 'multiply'\n }\n };\n\n return {\n ...data,\n rawQueryStringified: JSON.stringify(updatedData)\n };\n};\n\nexport default buildQueryBooster;\n"],"mappings":";;;AAAA,MAAMA,iBAAiB,GAAGA,CAACC,KAAK,EAAEC,IAAI,KAAK;EACzC,MAAM;IAAEC;EAAqB,CAAC,GAAGF,KAAK;EAEtC,IAAI,CAACE,oBAAoB,IAAI,CAACA,oBAAoB,CAACC,MAAM,EAAE,OAAOF,IAAI;EACtE,MAAM;IAAEG,mBAAmB,GAAG;EAAG,CAAC,GAAGH,IAAI;EAEzC,MAAMI,cAAc,GAAGC,IAAI,CAACC,KAAK,CAACH,mBAAmB,CAAC;EACtD,MAAM;IAAEI,cAAc,EAAE;MAAEC,KAAK;MAAEC,SAAS,GAAG;IAAG,CAAC,GAAG,CAAC;EAAE,CAAC,GAAGL,cAAc;EAEzE,MAAMM,oBAAoB,GAAGT,oBAAoB,CAACU,GAAG,CAACC,WAAW,KAAK;IACpEC,KAAK,EAAE;MACL,CAACD,WAAW,GAAG;QACbE,MAAM,EAAE,KAAK;QACbC,KAAK,EAAE,KAAK;QACZC,MAAM,EAAE,IAAI;QACZC,KAAK,EAAE;MACT;IACF;EACF,CAAC,CAAC,CAAC;EAEH,MAAMC,WAAW,GAAG;IAClBX,cAAc,EAAE;MACdC,KAAK,EAAEC,SAAS,CAACP,MAAM,GAAGM,KAAK,GAAGJ,cAAc;MAChDK,SAAS,EAAE,CAAC,GAAGA,SAAS,EAAE,GAAGC,oBAAoB,CAAC;MAClDS,UAAU,EAAE;IACd;EACF,CAAC;EAED,OAAAC,aAAA,CAAAA,aAAA,KACKpB,IAAI;IACPG,mBAAmB,EAAEE,IAAI,CAACgB,SAAS,CAACH,WAAW;EAAC;AAEpD,CAAC;AAED,eAAepB,iBAAiB"}
|
|
@@ -9,4 +9,5 @@ export { default as hasRequiredItemListDetails } from './has-required-item-list-
|
|
|
9
9
|
export { default as getListComponent } from './get-list-component';
|
|
10
10
|
export { default as getListQuery } from './get-list-query';
|
|
11
11
|
export { default as getListSpecificSearchFilter } from './get-list-specific-search-filter';
|
|
12
|
+
export { default as buildQueryBooster } from './build-query-booster';
|
|
12
13
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["default","buildPaginationItems","getAzQueryFilter","buildAzAggregations","buildAzUrl","sortAggs","getItemsPerPageToUse","getSortProps","hasRequiredItemListDetails","getListComponent","getListQuery","getListSpecificSearchFilter"],"sources":["../../../../src/components/List/helpers/index.js"],"sourcesContent":["export { default as buildPaginationItems } from './build-pagination-items';\nexport { default as getAzQueryFilter } from './get-az-query-filter';\nexport { default as buildAzAggregations } from './build-az-aggregations';\nexport { default as buildAzUrl } from './build-az-url';\nexport { default as sortAggs } from './sort-aggs';\nexport { default as getItemsPerPageToUse } from './get-items-per-page-to-use';\nexport { default as getSortProps } from './get-sort-props';\nexport { default as hasRequiredItemListDetails } from './has-required-item-list-details';\nexport { default as getListComponent } from './get-list-component';\nexport { default as getListQuery } from './get-list-query';\nexport { default as getListSpecificSearchFilter } from './get-list-specific-search-filter';\n"],"mappings":"AAAA,SAASA,OAAO,IAAIC,oBAAoB,QAAQ,0BAA0B;AAC1E,SAASD,OAAO,IAAIE,gBAAgB,QAAQ,uBAAuB;AACnE,SAASF,OAAO,IAAIG,mBAAmB,QAAQ,yBAAyB;AACxE,SAASH,OAAO,IAAII,UAAU,QAAQ,gBAAgB;AACtD,SAASJ,OAAO,IAAIK,QAAQ,QAAQ,aAAa;AACjD,SAASL,OAAO,IAAIM,oBAAoB,QAAQ,6BAA6B;AAC7E,SAASN,OAAO,IAAIO,YAAY,QAAQ,kBAAkB;AAC1D,SAASP,OAAO,IAAIQ,0BAA0B,QAAQ,kCAAkC;AACxF,SAASR,OAAO,IAAIS,gBAAgB,QAAQ,sBAAsB;AAClE,SAAST,OAAO,IAAIU,YAAY,QAAQ,kBAAkB;AAC1D,SAASV,OAAO,IAAIW,2BAA2B,QAAQ,mCAAmC"}
|
|
1
|
+
{"version":3,"file":"index.js","names":["default","buildPaginationItems","getAzQueryFilter","buildAzAggregations","buildAzUrl","sortAggs","getItemsPerPageToUse","getSortProps","hasRequiredItemListDetails","getListComponent","getListQuery","getListSpecificSearchFilter","buildQueryBooster"],"sources":["../../../../src/components/List/helpers/index.js"],"sourcesContent":["export { default as buildPaginationItems } from './build-pagination-items';\nexport { default as getAzQueryFilter } from './get-az-query-filter';\nexport { default as buildAzAggregations } from './build-az-aggregations';\nexport { default as buildAzUrl } from './build-az-url';\nexport { default as sortAggs } from './sort-aggs';\nexport { default as getItemsPerPageToUse } from './get-items-per-page-to-use';\nexport { default as getSortProps } from './get-sort-props';\nexport { default as hasRequiredItemListDetails } from './has-required-item-list-details';\nexport { default as getListComponent } from './get-list-component';\nexport { default as getListQuery } from './get-list-query';\nexport { default as getListSpecificSearchFilter } from './get-list-specific-search-filter';\nexport { default as buildQueryBooster } from './build-query-booster';\n"],"mappings":"AAAA,SAASA,OAAO,IAAIC,oBAAoB,QAAQ,0BAA0B;AAC1E,SAASD,OAAO,IAAIE,gBAAgB,QAAQ,uBAAuB;AACnE,SAASF,OAAO,IAAIG,mBAAmB,QAAQ,yBAAyB;AACxE,SAASH,OAAO,IAAII,UAAU,QAAQ,gBAAgB;AACtD,SAASJ,OAAO,IAAIK,QAAQ,QAAQ,aAAa;AACjD,SAASL,OAAO,IAAIM,oBAAoB,QAAQ,6BAA6B;AAC7E,SAASN,OAAO,IAAIO,YAAY,QAAQ,kBAAkB;AAC1D,SAASP,OAAO,IAAIQ,0BAA0B,QAAQ,kCAAkC;AACxF,SAASR,OAAO,IAAIS,gBAAgB,QAAQ,sBAAsB;AAClE,SAAST,OAAO,IAAIU,YAAY,QAAQ,kBAAkB;AAC1D,SAASV,OAAO,IAAIW,2BAA2B,QAAQ,mCAAmC;AAC1F,SAASX,OAAO,IAAIY,iBAAiB,QAAQ,uBAAuB"}
|