@blaze-cms/react-page-builder 0.146.0-alpha.0 → 0.146.0-alpha.4
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 +19 -0
- package/lib/components/BackToTop/BackToTop.js +8 -13
- package/lib/components/BackToTop/BackToTop.js.map +1 -1
- package/lib/components/Card/Card.js +5 -3
- package/lib/components/Card/Card.js.map +1 -1
- package/lib/components/Card/CardsContainer.js +8 -4
- package/lib/components/Card/CardsContainer.js.map +1 -1
- package/lib/components/Card/CardsFactory.js +37 -7
- package/lib/components/Card/CardsFactory.js.map +1 -1
- package/lib/components/Card/CardsRender.js +8 -4
- package/lib/components/Card/CardsRender.js.map +1 -1
- package/lib/components/Carousel/CarouselImage/CarouselImage.js +3 -1
- package/lib/components/Carousel/CarouselImage/CarouselImage.js.map +1 -1
- package/lib/components/Carousel/CarouselImage/constants.js +9 -0
- package/lib/components/Carousel/CarouselImage/constants.js.map +1 -0
- package/lib/components/CarouselWrapper/DefaultCarousel.js +2 -0
- package/lib/components/CarouselWrapper/DefaultCarousel.js.map +1 -1
- package/lib/components/ContentGroup/ContentGroupTabs.js +1 -2
- package/lib/components/ContentGroup/ContentGroupTabs.js.map +1 -1
- package/lib/components/Image/GlobalLightbox/GlobalLightbox.js +3 -3
- package/lib/components/Image/GlobalLightbox/GlobalLightbox.js.map +1 -1
- package/lib/components/Image/GlobalLightbox/NavButton.js +6 -3
- package/lib/components/Image/GlobalLightbox/NavButton.js.map +1 -1
- package/lib/components/Image/Image.js +1 -0
- package/lib/components/Image/Image.js.map +1 -1
- package/lib/components/ItemList/ItemListNew/ItemListNew.js +1 -2
- package/lib/components/ItemList/ItemListNew/ItemListNew.js.map +1 -1
- package/lib/components/List/components/Cards/CardsRender.js.map +1 -1
- package/lib/components/List/components/Full/FullRender.js +2 -2
- package/lib/components/List/components/Full/FullRender.js.map +1 -1
- package/lib/components/Menu/Menu.js +1 -1
- package/lib/components/Menu/Menu.js.map +1 -1
- package/lib/components/MenuItem/MenuItem.js +2 -5
- package/lib/components/MenuItem/MenuItem.js.map +1 -1
- package/lib/components/SearchFilter/SearchFilter/FiltersList.js.map +1 -1
- package/lib/components/SearchFilter/SearchFilter/MobileFormToolbar.js +1 -1
- package/lib/components/SearchFilter/SearchFilter/MobileFormToolbar.js.map +1 -1
- package/lib/components/SearchFilter/SearchFilter/ResetDesktopForm.js +3 -3
- package/lib/components/SearchFilter/SearchFilter/ResetDesktopForm.js.map +1 -1
- package/lib/components/SearchFilter/SearchFilter/SearchFilter.js +4 -3
- package/lib/components/SearchFilter/SearchFilter/SearchFilter.js.map +1 -1
- package/lib/components/SearchFilter/components/Checkbox.js +1 -1
- package/lib/components/SearchFilter/components/Checkbox.js.map +1 -1
- package/lib/components/SearchFilter/components/TextSearch.js +1 -0
- package/lib/components/SearchFilter/components/TextSearch.js.map +1 -1
- package/lib/components/Video/providers/Vimeo/VimeoProvider.js +0 -1
- package/lib/components/Video/providers/Vimeo/VimeoProvider.js.map +1 -1
- package/lib-es/components/BackToTop/BackToTop.js +11 -17
- package/lib-es/components/BackToTop/BackToTop.js.map +1 -1
- package/lib-es/components/Card/Card.js +5 -3
- package/lib-es/components/Card/Card.js.map +1 -1
- package/lib-es/components/Card/CardsContainer.js +9 -5
- package/lib-es/components/Card/CardsContainer.js.map +1 -1
- package/lib-es/components/Card/CardsFactory.js +40 -9
- package/lib-es/components/Card/CardsFactory.js.map +1 -1
- package/lib-es/components/Card/CardsRender.js +9 -5
- package/lib-es/components/Card/CardsRender.js.map +1 -1
- package/lib-es/components/Carousel/CarouselImage/CarouselImage.js +3 -1
- package/lib-es/components/Carousel/CarouselImage/CarouselImage.js.map +1 -1
- package/lib-es/components/Carousel/CarouselImage/constants.js +2 -0
- package/lib-es/components/Carousel/CarouselImage/constants.js.map +1 -0
- package/lib-es/components/CarouselWrapper/DefaultCarousel.js +2 -0
- package/lib-es/components/CarouselWrapper/DefaultCarousel.js.map +1 -1
- package/lib-es/components/ContentGroup/ContentGroupTabs.js +1 -2
- package/lib-es/components/ContentGroup/ContentGroupTabs.js.map +1 -1
- package/lib-es/components/Image/GlobalLightbox/GlobalLightbox.js +3 -3
- package/lib-es/components/Image/GlobalLightbox/GlobalLightbox.js.map +1 -1
- package/lib-es/components/Image/GlobalLightbox/NavButton.js +6 -3
- package/lib-es/components/Image/GlobalLightbox/NavButton.js.map +1 -1
- package/lib-es/components/Image/Image.js +1 -0
- package/lib-es/components/Image/Image.js.map +1 -1
- package/lib-es/components/ItemList/ItemListNew/ItemListNew.js +1 -2
- package/lib-es/components/ItemList/ItemListNew/ItemListNew.js.map +1 -1
- package/lib-es/components/List/components/Cards/CardsRender.js.map +1 -1
- package/lib-es/components/List/components/Full/FullRender.js +2 -2
- package/lib-es/components/List/components/Full/FullRender.js.map +1 -1
- package/lib-es/components/Menu/Menu.js +1 -1
- package/lib-es/components/Menu/Menu.js.map +1 -1
- package/lib-es/components/MenuItem/MenuItem.js +2 -5
- package/lib-es/components/MenuItem/MenuItem.js.map +1 -1
- package/lib-es/components/SearchFilter/SearchFilter/FiltersList.js.map +1 -1
- package/lib-es/components/SearchFilter/SearchFilter/MobileFormToolbar.js +1 -1
- package/lib-es/components/SearchFilter/SearchFilter/MobileFormToolbar.js.map +1 -1
- package/lib-es/components/SearchFilter/SearchFilter/ResetDesktopForm.js +3 -3
- package/lib-es/components/SearchFilter/SearchFilter/ResetDesktopForm.js.map +1 -1
- package/lib-es/components/SearchFilter/SearchFilter/SearchFilter.js +4 -3
- package/lib-es/components/SearchFilter/SearchFilter/SearchFilter.js.map +1 -1
- package/lib-es/components/SearchFilter/components/Checkbox.js +1 -1
- package/lib-es/components/SearchFilter/components/Checkbox.js.map +1 -1
- package/lib-es/components/SearchFilter/components/TextSearch.js +1 -0
- package/lib-es/components/SearchFilter/components/TextSearch.js.map +1 -1
- package/lib-es/components/Video/providers/Vimeo/VimeoProvider.js +0 -1
- package/lib-es/components/Video/providers/Vimeo/VimeoProvider.js.map +1 -1
- package/package.json +4 -4
- package/src/components/BackToTop/BackToTop.js +6 -11
- package/src/components/Card/Card.js +4 -3
- package/src/components/Card/CardsContainer.js +7 -3
- package/src/components/Card/CardsFactory.js +34 -6
- package/src/components/Card/CardsRender.js +6 -2
- package/src/components/Carousel/CarouselImage/CarouselImage.js +3 -1
- package/src/components/Carousel/CarouselImage/constants.js +1 -0
- package/src/components/CarouselWrapper/DefaultCarousel.js +2 -0
- package/src/components/ContentGroup/ContentGroupTabs.js +1 -3
- package/src/components/Image/GlobalLightbox/GlobalLightbox.js +3 -3
- package/src/components/Image/GlobalLightbox/NavButton.js +5 -3
- package/src/components/Image/Image.js +1 -0
- package/src/components/ItemList/ItemListNew/ItemListNew.js +1 -4
- package/src/components/List/components/Cards/CardsRender.js +2 -0
- package/src/components/List/components/Full/FullRender.js +2 -1
- package/src/components/Menu/Menu.js +1 -1
- package/src/components/MenuItem/MenuItem.js +2 -9
- package/src/components/SearchFilter/SearchFilter/FiltersList.js +3 -0
- package/src/components/SearchFilter/SearchFilter/MobileFormToolbar.js +1 -1
- package/src/components/SearchFilter/SearchFilter/ResetDesktopForm.js +3 -2
- package/src/components/SearchFilter/SearchFilter/SearchFilter.js +10 -5
- package/src/components/SearchFilter/components/Checkbox.js +3 -1
- package/src/components/SearchFilter/components/TextSearch.js +1 -0
- package/src/components/Video/providers/Vimeo/VimeoProvider.js +0 -1
- package/tests/unit/src/components/BackToTop/BackToTop.test.js +9 -5
- package/tests/unit/src/components/BackToTop/__snapshots__/BackToTop.test.js.snap +1 -1
- package/tests/unit/src/components/Carousel/CarouselImage/__snapshots__/CarouselImage.test.js.snap +1 -1
- package/tests/unit/src/components/Carousel/__snapshots__/Carousel.test.js.snap +1 -1
- package/tests/unit/src/components/ContentGroup/__snapshots__/ContentGroupTabs.test.js.snap +4 -4
- package/tests/unit/src/components/ItemList/__snapshots__/ItemListNew.test.js.snap +0 -2
- package/tests/unit/src/components/MenuItem/__snapshots__/MenuItem.test.js.snap +0 -5
- package/tests/unit/src/components/SearchFilter/SearchFilter/__snapshots__/MobileFormToolbar.test.js.snap +1 -1
- package/tests/unit/src/components/SearchFilter/SearchFilter/__snapshots__/ResetDesktopForm.test.js.snap +1 -1
- package/tests/unit/src/components/SearchFilter/SearchFilter/__snapshots__/SearchFilter.test.js.snap +19 -17
- package/tests/unit/src/components/SearchFilter/components/__snapshots__/Select.test.js.snap +1 -0
- package/tests/unit/src/components/SearchFilter/components/__snapshots__/TextSearch.test.js.snap +1 -0
- package/tests/unit/src/components/SearchFilterSort/__snapshots__/SearchFilterSort.test.js.snap +1 -0
- package/tests/unit/src/components/Video/providers/Vimeo/__snapshots__/Vimeo.test.js.snap +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CardsRender.js","names":["React","useContext","useQuery","dynamic","PropTypes","MainContext","generateSingleItemQuery","SEARCH_PUBLISHED_CONTENT","AND","FULL","useGetEntitySchemasAsObj","useGetImages","getUpdatedFilterBy","getEntityData","getRequiredSchemas","sortResponseData","getUnpublishedEntityName","renderChildren","splitChildren","removeExtraItems","appendImages","filtersSetup","filterQuerySetup","shouldSkipSingleQuery","shouldReturn","getUpdatedSortProperties","getUpdatedItemsToDisplay","CardsContainer","CardsRender","_ref","entity","legacyEntity","entities","entityFields","itemsToDisplay","children","otherProps","_objectWithoutProperties","_excluded","isPreview","parent","itemId","parentId","itemEntity","parentEntity","filterBy","filterByProperty","sortby","sort","sortProperties","operator","filterOperator","useRandomSort","updatedSortProperties","sortbyFilters","variableProps","_objectSpread","entitiesToUse","primaryEntityToUse","unpublishedParentEntityName","allEntityNames","uniqueEntityNames","Set","data","mainSchemas","loading","_loading","error","_error","parentSchema","filterEntitySchema","entitiesTypes","map","ent","graphqlEntityMap","reduce","acc","entityType","docTypes","docType","type","entityTypes","eType","style","getAction","queryProps","inheritedFilters","entitySameAsCurrentItemEntity","action","filterEntityRelations","currentSchema","itemEntityUpdated","isFull","entityData","parentEntityData","_err","_load","variables","id","skip","requiredSchema","schemaLoading","schemaError","updatedFilterBy","updatedItemsToDisplay","limit","getEntitySchemas","Object","values","hasNoFiltersOrItemsToDisplay","length","cardData","cardsError","fetchPolicy","imageIds","imageId","filter","Boolean","imagesData","imagesLoading","isLoading","hasError","message","results","cardDataResults","orderedData","regularChildren","gtmChildren","name","updatedCards","createElement","Fragment","_extends","cardChildren","propTypes","oneOfType","arrayOf","node","string","isRequired","array","defaultProps"],"sources":["../../../src/components/Card/CardsRender.js"],"sourcesContent":["import React, { useContext } from 'react';\nimport { useQuery } from '@apollo/client';\nimport dynamic from 'next/dynamic';\nimport PropTypes from 'prop-types';\nimport { MainContext } from '@blaze-cms/nextjs-components';\nimport { generateSingleItemQuery } from '../../application/query';\nimport { SEARCH_PUBLISHED_CONTENT, AND, FULL } from '../../constants';\nimport { useGetEntitySchemasAsObj, useGetImages } from '../../hooks';\nimport {\n getUpdatedFilterBy,\n getEntityData,\n getRequiredSchemas,\n sortResponseData,\n getUnpublishedEntityName,\n renderChildren,\n splitChildren,\n removeExtraItems,\n appendImages\n} from '../../helpers';\nimport {\n filtersSetup,\n filterQuerySetup,\n shouldSkipSingleQuery,\n shouldReturn,\n getUpdatedSortProperties,\n getUpdatedItemsToDisplay\n} from './helpers';\n\nconst CardsContainer = dynamic(() => import('./CardsContainer'));\n\nconst CardsRender = ({\n entity: legacyEntity,\n entities,\n entityFields,\n itemsToDisplay,\n children,\n ...otherProps\n}) => {\n const { isPreview } = useContext(MainContext);\n const {\n parent: { itemId: parentId, itemEntity: parentEntity },\n filterBy = [],\n filterByProperty = [],\n sortby,\n sort,\n sortProperties = [],\n operator: filterOperator = AND,\n useRandomSort\n } = otherProps;\n const [updatedSortProperties, sortbyFilters] = getUpdatedSortProperties(\n sort,\n sortby,\n sortProperties\n );\n\n const variableProps = {\n ...otherProps,\n sortProperties: updatedSortProperties,\n sort: null,\n sortby: null\n };\n\n const entitiesToUse = entities || [legacyEntity];\n const primaryEntityToUse = entitiesToUse[0];\n const unpublishedParentEntityName = getUnpublishedEntityName(parentEntity);\n const allEntityNames = [...entitiesToUse, unpublishedParentEntityName];\n const uniqueEntityNames = [...new Set(allEntityNames)];\n const { data: mainSchemas = {}, loading: _loading, error: _error } = useGetEntitySchemasAsObj(\n uniqueEntityNames\n );\n const parentSchema = mainSchemas[unpublishedParentEntityName] || {};\n const filterEntitySchema = mainSchemas[primaryEntityToUse] || {};\n const entitiesTypes = entitiesToUse.map(ent => getEntityData(ent, mainSchemas[ent]));\n const graphqlEntityMap = entitiesTypes.reduce(\n (acc, entityType) => ({ ...acc, [entityType.entityType]: entityType.entity }),\n {}\n );\n const docTypes = entitiesTypes.map(({ docType: type }) => type);\n const entityTypes = entitiesTypes.map(({ entityType: eType }) => eType);\n\n const { style } = otherProps;\n\n const {\n getAction,\n queryProps,\n inheritedFilters,\n entitySameAsCurrentItemEntity,\n action,\n filterEntityRelations\n } = filtersSetup({\n entityFields,\n entityTypes,\n filterBy,\n filterByProperty,\n entities: entitiesToUse,\n currentSchema: parentSchema,\n filterEntitySchema,\n isPreview,\n itemEntityUpdated: unpublishedParentEntityName,\n isFull: style === FULL\n });\n\n const {\n data: { entityData: parentEntityData = {} } = {},\n error: _err,\n loading: _load\n } = useQuery(generateSingleItemQuery(getAction, queryProps), {\n variables: { id: parentId },\n skip: shouldSkipSingleQuery(_loading, getAction, queryProps)\n });\n\n const {\n data: requiredSchema = {},\n loading: schemaLoading,\n error: schemaError\n } = useGetEntitySchemasAsObj(\n getRequiredSchemas([...filterByProperty, ...sortbyFilters], filterEntitySchema),\n _loading\n );\n\n const updatedFilterBy = getUpdatedFilterBy(\n inheritedFilters,\n parentEntityData,\n parentSchema,\n filterEntitySchema,\n parentId,\n variableProps\n );\n\n const updatedItemsToDisplay = getUpdatedItemsToDisplay({\n itemsToDisplay,\n inheritedFilters,\n parentSchema,\n parentEntityData\n });\n\n const { limit, variables } = filterQuerySetup({\n getEntitySchemas: Object.values(requiredSchema),\n entity: primaryEntityToUse,\n updatedFilterBy,\n variableProps,\n docType: docTypes,\n filterOperator,\n filterEntityRelations,\n itemsToDisplay: updatedItemsToDisplay,\n entitySameAsCurrentItemEntity,\n useRandomSort\n });\n\n const hasNoFiltersOrItemsToDisplay = !updatedItemsToDisplay.length && !updatedFilterBy;\n\n const { data: cardData = {}, error: cardsError } = useQuery(action, {\n variables,\n fetchPolicy: useRandomSort ? 'cache-and-network' : 'cache-first',\n skip: shouldReturn(\n hasNoFiltersOrItemsToDisplay,\n _loading,\n _load,\n schemaLoading,\n _error,\n _err,\n schemaError\n )\n });\n\n const imageIds = updatedItemsToDisplay.map(({ imageId }) => imageId).filter(Boolean);\n const { data: imagesData, loading: imagesLoading } = useGetImages(imageIds, true);\n const isLoading = shouldReturn(_loading, _load, schemaLoading, imagesLoading);\n const hasError = shouldReturn(_error, _err, schemaError);\n\n if (hasNoFiltersOrItemsToDisplay) return null;\n if (isLoading) return null;\n if (hasError) return null;\n if (cardsError) return cardsError.message;\n let { results: cardDataResults } = cardData[SEARCH_PUBLISHED_CONTENT] || {};\n\n if (!cardDataResults || !cardDataResults.length) return null;\n\n cardDataResults = entitySameAsCurrentItemEntity\n ? removeExtraItems(cardDataResults, limit, parentId)\n : cardDataResults;\n if (!cardDataResults.length) return null;\n\n const orderedData =\n useRandomSort || updatedSortProperties.length\n ? cardDataResults\n : sortResponseData(cardDataResults, updatedItemsToDisplay);\n const { regularChildren, gtmChildren } = splitChildren(\n children,\n cardDataResults,\n graphqlEntityMap,\n {\n name: variableProps.name\n }\n );\n const updatedCards = appendImages(imagesData, orderedData, updatedItemsToDisplay);\n\n return (\n <>\n {gtmChildren && renderChildren(gtmChildren)}\n <CardsContainer\n cardData={updatedCards}\n entity={primaryEntityToUse}\n gtmChildren={gtmChildren}\n cardChildren={regularChildren}\n graphqlEntityMap={graphqlEntityMap}\n {...variableProps}\n />\n </>\n );\n};\n\nCardsRender.propTypes = {\n children: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.node), PropTypes.node]),\n entity: PropTypes.string.isRequired,\n entityFields: PropTypes.string.isRequired,\n itemsToDisplay: PropTypes.array,\n entities: PropTypes.array\n};\n\nCardsRender.defaultProps = {\n children: [],\n itemsToDisplay: [],\n entities: []\n};\n\nexport default CardsRender;\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"CardsRender.js","names":["React","useContext","useQuery","dynamic","PropTypes","MainContext","generateSingleItemQuery","SEARCH_PUBLISHED_CONTENT","AND","FULL","useGetEntitySchemasAsObj","useGetImages","getUpdatedFilterBy","getEntityData","getRequiredSchemas","sortResponseData","getUnpublishedEntityName","renderChildren","splitChildren","removeExtraItems","appendImages","filtersSetup","filterQuerySetup","shouldSkipSingleQuery","shouldReturn","getUpdatedSortProperties","getUpdatedItemsToDisplay","CardsContainer","CardsRender","_ref","entity","legacyEntity","entities","entityFields","itemsToDisplay","children","VariantComponent","otherProps","_objectWithoutProperties","_excluded","isPreview","parent","itemId","parentId","itemEntity","parentEntity","filterBy","filterByProperty","sortby","sort","sortProperties","operator","filterOperator","useRandomSort","updatedSortProperties","sortbyFilters","variableProps","_objectSpread","entitiesToUse","primaryEntityToUse","unpublishedParentEntityName","allEntityNames","uniqueEntityNames","Set","data","mainSchemas","loading","_loading","error","_error","parentSchema","filterEntitySchema","entitiesTypes","map","ent","graphqlEntityMap","reduce","acc","entityType","docTypes","docType","type","entityTypes","eType","style","getAction","queryProps","inheritedFilters","entitySameAsCurrentItemEntity","action","filterEntityRelations","currentSchema","itemEntityUpdated","isFull","entityData","parentEntityData","_err","_load","variables","id","skip","requiredSchema","schemaLoading","schemaError","updatedFilterBy","updatedItemsToDisplay","limit","getEntitySchemas","Object","values","hasNoFiltersOrItemsToDisplay","length","cardData","cardsError","fetchPolicy","imageIds","imageId","filter","Boolean","imagesData","imagesLoading","isLoading","hasError","message","results","cardDataResults","orderedData","regularChildren","gtmChildren","name","updatedCards","createElement","Fragment","_extends","cardChildren","propTypes","oneOfType","arrayOf","node","string","isRequired","array","func","defaultProps"],"sources":["../../../src/components/Card/CardsRender.js"],"sourcesContent":["import React, { useContext } from 'react';\nimport { useQuery } from '@apollo/client';\nimport dynamic from 'next/dynamic';\nimport PropTypes from 'prop-types';\nimport { MainContext } from '@blaze-cms/nextjs-components';\nimport { generateSingleItemQuery } from '../../application/query';\nimport { SEARCH_PUBLISHED_CONTENT, AND, FULL } from '../../constants';\nimport { useGetEntitySchemasAsObj, useGetImages } from '../../hooks';\nimport {\n getUpdatedFilterBy,\n getEntityData,\n getRequiredSchemas,\n sortResponseData,\n getUnpublishedEntityName,\n renderChildren,\n splitChildren,\n removeExtraItems,\n appendImages\n} from '../../helpers';\nimport {\n filtersSetup,\n filterQuerySetup,\n shouldSkipSingleQuery,\n shouldReturn,\n getUpdatedSortProperties,\n getUpdatedItemsToDisplay\n} from './helpers';\n\nconst CardsContainer = dynamic(() => import('./CardsContainer'));\n\nconst CardsRender = ({\n entity: legacyEntity,\n entities,\n entityFields,\n itemsToDisplay,\n children,\n VariantComponent,\n ...otherProps\n}) => {\n const { isPreview } = useContext(MainContext);\n const {\n parent: { itemId: parentId, itemEntity: parentEntity },\n filterBy = [],\n filterByProperty = [],\n sortby,\n sort,\n sortProperties = [],\n operator: filterOperator = AND,\n useRandomSort\n } = otherProps;\n const [updatedSortProperties, sortbyFilters] = getUpdatedSortProperties(\n sort,\n sortby,\n sortProperties\n );\n\n const variableProps = {\n ...otherProps,\n sortProperties: updatedSortProperties,\n sort: null,\n sortby: null\n };\n\n const entitiesToUse = entities || [legacyEntity];\n const primaryEntityToUse = entitiesToUse[0];\n const unpublishedParentEntityName = getUnpublishedEntityName(parentEntity);\n const allEntityNames = [...entitiesToUse, unpublishedParentEntityName];\n const uniqueEntityNames = [...new Set(allEntityNames)];\n const { data: mainSchemas = {}, loading: _loading, error: _error } = useGetEntitySchemasAsObj(\n uniqueEntityNames\n );\n const parentSchema = mainSchemas[unpublishedParentEntityName] || {};\n const filterEntitySchema = mainSchemas[primaryEntityToUse] || {};\n const entitiesTypes = entitiesToUse.map(ent => getEntityData(ent, mainSchemas[ent]));\n const graphqlEntityMap = entitiesTypes.reduce(\n (acc, entityType) => ({ ...acc, [entityType.entityType]: entityType.entity }),\n {}\n );\n const docTypes = entitiesTypes.map(({ docType: type }) => type);\n const entityTypes = entitiesTypes.map(({ entityType: eType }) => eType);\n\n const { style } = otherProps;\n\n const {\n getAction,\n queryProps,\n inheritedFilters,\n entitySameAsCurrentItemEntity,\n action,\n filterEntityRelations\n } = filtersSetup({\n entityFields,\n entityTypes,\n filterBy,\n filterByProperty,\n entities: entitiesToUse,\n currentSchema: parentSchema,\n filterEntitySchema,\n isPreview,\n itemEntityUpdated: unpublishedParentEntityName,\n isFull: style === FULL\n });\n\n const {\n data: { entityData: parentEntityData = {} } = {},\n error: _err,\n loading: _load\n } = useQuery(generateSingleItemQuery(getAction, queryProps), {\n variables: { id: parentId },\n skip: shouldSkipSingleQuery(_loading, getAction, queryProps)\n });\n\n const {\n data: requiredSchema = {},\n loading: schemaLoading,\n error: schemaError\n } = useGetEntitySchemasAsObj(\n getRequiredSchemas([...filterByProperty, ...sortbyFilters], filterEntitySchema),\n _loading\n );\n\n const updatedFilterBy = getUpdatedFilterBy(\n inheritedFilters,\n parentEntityData,\n parentSchema,\n filterEntitySchema,\n parentId,\n variableProps\n );\n\n const updatedItemsToDisplay = getUpdatedItemsToDisplay({\n itemsToDisplay,\n inheritedFilters,\n parentSchema,\n parentEntityData\n });\n\n const { limit, variables } = filterQuerySetup({\n getEntitySchemas: Object.values(requiredSchema),\n entity: primaryEntityToUse,\n updatedFilterBy,\n variableProps,\n docType: docTypes,\n filterOperator,\n filterEntityRelations,\n itemsToDisplay: updatedItemsToDisplay,\n entitySameAsCurrentItemEntity,\n useRandomSort\n });\n\n const hasNoFiltersOrItemsToDisplay = !updatedItemsToDisplay.length && !updatedFilterBy;\n\n const { data: cardData = {}, error: cardsError } = useQuery(action, {\n variables,\n fetchPolicy: useRandomSort ? 'cache-and-network' : 'cache-first',\n skip: shouldReturn(\n hasNoFiltersOrItemsToDisplay,\n _loading,\n _load,\n schemaLoading,\n _error,\n _err,\n schemaError\n )\n });\n\n const imageIds = updatedItemsToDisplay.map(({ imageId }) => imageId).filter(Boolean);\n const { data: imagesData, loading: imagesLoading } = useGetImages(imageIds, true);\n const isLoading = shouldReturn(_loading, _load, schemaLoading, imagesLoading);\n const hasError = shouldReturn(_error, _err, schemaError);\n\n if (hasNoFiltersOrItemsToDisplay) return null;\n if (isLoading) return null;\n if (hasError) return null;\n if (cardsError) return cardsError.message;\n let { results: cardDataResults } = cardData[SEARCH_PUBLISHED_CONTENT] || {};\n\n if (!cardDataResults || !cardDataResults.length) return null;\n\n cardDataResults = entitySameAsCurrentItemEntity\n ? removeExtraItems(cardDataResults, limit, parentId)\n : cardDataResults;\n if (!cardDataResults.length) return null;\n\n const orderedData =\n useRandomSort || updatedSortProperties.length\n ? cardDataResults\n : sortResponseData(cardDataResults, updatedItemsToDisplay);\n const { regularChildren, gtmChildren } = splitChildren(\n children,\n cardDataResults,\n graphqlEntityMap,\n {\n name: variableProps.name\n }\n );\n const updatedCards = appendImages(imagesData, orderedData, updatedItemsToDisplay);\n\n return (\n <>\n {gtmChildren && renderChildren(gtmChildren)}\n <CardsContainer\n cardData={updatedCards}\n entity={primaryEntityToUse}\n gtmChildren={gtmChildren}\n cardChildren={regularChildren}\n graphqlEntityMap={graphqlEntityMap}\n VariantComponent={VariantComponent}\n {...variableProps}\n />\n </>\n );\n};\n\nCardsRender.propTypes = {\n children: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.node), PropTypes.node]),\n entity: PropTypes.string.isRequired,\n entityFields: PropTypes.string.isRequired,\n itemsToDisplay: PropTypes.array,\n entities: PropTypes.array,\n VariantComponent: PropTypes.func\n};\n\nCardsRender.defaultProps = {\n children: [],\n itemsToDisplay: [],\n entities: [],\n VariantComponent: null\n};\n\nexport default CardsRender;\n"],"mappings":"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"}
|
|
@@ -3,6 +3,7 @@ import PropTypes from 'prop-types';
|
|
|
3
3
|
import { useGetImages } from '../../../hooks';
|
|
4
4
|
import { getImageData } from '../../../utils';
|
|
5
5
|
import LazyImage from '../../LazyImage';
|
|
6
|
+
import { CAROUSEL_DEFAULT_ALT } from './constants';
|
|
6
7
|
const CarouselImage = ({
|
|
7
8
|
imageId,
|
|
8
9
|
enableLightbox,
|
|
@@ -28,6 +29,7 @@ const CarouselImage = ({
|
|
|
28
29
|
const {
|
|
29
30
|
altText
|
|
30
31
|
} = getImageData({}, imageData);
|
|
32
|
+
const alt = altText || CAROUSEL_DEFAULT_ALT;
|
|
31
33
|
const handleEnableLightbox = () => {
|
|
32
34
|
if (!enableLightbox) return;
|
|
33
35
|
toggleModal();
|
|
@@ -37,7 +39,7 @@ const CarouselImage = ({
|
|
|
37
39
|
className: "carousel__slide"
|
|
38
40
|
}, loading ? /*#__PURE__*/React.createElement("div", null) : /*#__PURE__*/React.createElement(LazyImage, {
|
|
39
41
|
src: imageUrl,
|
|
40
|
-
alt:
|
|
42
|
+
alt: alt,
|
|
41
43
|
sizeKey: "carousel",
|
|
42
44
|
onClick: handleEnableLightbox,
|
|
43
45
|
role: "button",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CarouselImage.js","names":["React","PropTypes","useGetImages","getImageData","LazyImage","CarouselImage","imageId","enableLightbox","toggleModal","handleSelectedImage","priority","data","loading","error","message","url","imageUrl","imageData","getFile","altText","handleEnableLightbox","createElement","className","src","
|
|
1
|
+
{"version":3,"file":"CarouselImage.js","names":["React","PropTypes","useGetImages","getImageData","LazyImage","CAROUSEL_DEFAULT_ALT","CarouselImage","imageId","enableLightbox","toggleModal","handleSelectedImage","priority","data","loading","error","message","url","imageUrl","imageData","getFile","altText","alt","handleEnableLightbox","createElement","className","src","sizeKey","onClick","role","propTypes","string","isRequired","bool","func"],"sources":["../../../../src/components/Carousel/CarouselImage/CarouselImage.js"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport { useGetImages } from '../../../hooks';\nimport { getImageData } from '../../../utils';\nimport LazyImage from '../../LazyImage';\nimport { CAROUSEL_DEFAULT_ALT } from './constants';\n\nconst CarouselImage = ({ imageId, enableLightbox, toggleModal, handleSelectedImage, priority }) => {\n const { data, loading, error } = useGetImages(imageId);\n\n if (error) return error.message;\n\n const { url: imageUrl = '', data: imageData = {} } = data.getFile || {\n getFile: { url: '', data: {} }\n };\n\n const { altText } = getImageData({}, imageData);\n const alt = altText || CAROUSEL_DEFAULT_ALT;\n\n const handleEnableLightbox = () => {\n if (!enableLightbox) return;\n toggleModal();\n handleSelectedImage(imageId);\n };\n\n return (\n <div className=\"carousel__slide\">\n {loading ? (\n <div />\n ) : (\n <LazyImage\n src={imageUrl}\n alt={alt}\n sizeKey=\"carousel\"\n onClick={handleEnableLightbox}\n role=\"button\"\n aria-label=\"View Image\"\n priority={priority}\n />\n )}\n </div>\n );\n};\n\nCarouselImage.propTypes = {\n imageId: PropTypes.string.isRequired,\n enableLightbox: PropTypes.bool.isRequired,\n toggleModal: PropTypes.func.isRequired,\n handleSelectedImage: PropTypes.func.isRequired,\n priority: PropTypes.bool.isRequired\n};\n\nexport default CarouselImage;\n"],"mappings":"AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,OAAOC,SAAS,MAAM,YAAY;AAClC,SAASC,YAAY,QAAQ,gBAAgB;AAC7C,SAASC,YAAY,QAAQ,gBAAgB;AAC7C,OAAOC,SAAS,MAAM,iBAAiB;AACvC,SAASC,oBAAoB,QAAQ,aAAa;AAElD,MAAMC,aAAa,GAAGA,CAAC;EAAEC,OAAO;EAAEC,cAAc;EAAEC,WAAW;EAAEC,mBAAmB;EAAEC;AAAS,CAAC,KAAK;EACjG,MAAM;IAAEC,IAAI;IAAEC,OAAO;IAAEC;EAAM,CAAC,GAAGZ,YAAY,CAACK,OAAO,CAAC;EAEtD,IAAIO,KAAK,EAAE,OAAOA,KAAK,CAACC,OAAO;EAE/B,MAAM;IAAEC,GAAG,EAAEC,QAAQ,GAAG,EAAE;IAAEL,IAAI,EAAEM,SAAS,GAAG,CAAC;EAAE,CAAC,GAAGN,IAAI,CAACO,OAAO,IAAI;IACnEA,OAAO,EAAE;MAAEH,GAAG,EAAE,EAAE;MAAEJ,IAAI,EAAE,CAAC;IAAE;EAC/B,CAAC;EAED,MAAM;IAAEQ;EAAQ,CAAC,GAAGjB,YAAY,CAAC,CAAC,CAAC,EAAEe,SAAS,CAAC;EAC/C,MAAMG,GAAG,GAAGD,OAAO,IAAIf,oBAAoB;EAE3C,MAAMiB,oBAAoB,GAAGA,CAAA,KAAM;IACjC,IAAI,CAACd,cAAc,EAAE;IACrBC,WAAW,CAAC,CAAC;IACbC,mBAAmB,CAACH,OAAO,CAAC;EAC9B,CAAC;EAED,oBACEP,KAAA,CAAAuB,aAAA;IAAKC,SAAS,EAAC;EAAiB,GAC7BX,OAAO,gBACNb,KAAA,CAAAuB,aAAA,YAAM,CAAC,gBAEPvB,KAAA,CAAAuB,aAAA,CAACnB,SAAS;IACRqB,GAAG,EAAER,QAAS;IACdI,GAAG,EAAEA,GAAI;IACTK,OAAO,EAAC,UAAU;IAClBC,OAAO,EAAEL,oBAAqB;IAC9BM,IAAI,EAAC,QAAQ;IACb,cAAW,YAAY;IACvBjB,QAAQ,EAAEA;EAAS,CACpB,CAEA,CAAC;AAEV,CAAC;AAEDL,aAAa,CAACuB,SAAS,GAAG;EACxBtB,OAAO,EAAEN,SAAS,CAAC6B,MAAM,CAACC,UAAU;EACpCvB,cAAc,EAAEP,SAAS,CAAC+B,IAAI,CAACD,UAAU;EACzCtB,WAAW,EAAER,SAAS,CAACgC,IAAI,CAACF,UAAU;EACtCrB,mBAAmB,EAAET,SAAS,CAACgC,IAAI,CAACF,UAAU;EAC9CpB,QAAQ,EAAEV,SAAS,CAAC+B,IAAI,CAACD;AAC3B,CAAC;AAED,eAAezB,aAAa"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"constants.js","names":["CAROUSEL_DEFAULT_ALT"],"sources":["../../../../src/components/Carousel/CarouselImage/constants.js"],"sourcesContent":["export const CAROUSEL_DEFAULT_ALT = 'Carousel image';\n"],"mappings":"AAAA,OAAO,MAAMA,oBAAoB,GAAG,gBAAgB"}
|
|
@@ -95,6 +95,7 @@ const DefaultCarousel = ({
|
|
|
95
95
|
}, displayLeft && /*#__PURE__*/React.createElement("button", {
|
|
96
96
|
type: "button",
|
|
97
97
|
className: "cards-carousel--button-back icon-button icon",
|
|
98
|
+
"aria-label": "Scroll left",
|
|
98
99
|
onClick: () => {
|
|
99
100
|
setShouldAutoScroll(false);
|
|
100
101
|
handleButtonNavigation();
|
|
@@ -106,6 +107,7 @@ const DefaultCarousel = ({
|
|
|
106
107
|
}, displayRight && /*#__PURE__*/React.createElement("button", {
|
|
107
108
|
type: "button",
|
|
108
109
|
className: "cards-carousel--button-forward icon-button icon",
|
|
110
|
+
"aria-label": "Scroll right",
|
|
109
111
|
onClick: () => {
|
|
110
112
|
setShouldAutoScroll(false);
|
|
111
113
|
handleButtonNavigation(true);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DefaultCarousel.js","names":["React","useRef","useState","useEffect","PropTypes","DefaultCarousel","children","bannerModifier","itemsPerRow","enableAutoScroll","autoScrollTimer","pauseScrollOnHover","modifier","ref","buttonDisplay","setButtonDisplays","displayLeft","displayRight","shouldAutoScroll","setShouldAutoScroll","autoScrollRef","current","id","setInterval","scrollCheck","clearInterval","handleButtonNavigation","offsetWidth","scrollWidth","handleScroll","scrollLeft","updatedDisplayLeft","updatedDisplayRight","handleMouseEnter","handleMouseLeave","direction","parsedModifier","wrapperClassName","contentClassName","createElement","className","onMouseEnter","onMouseLeave","type","onClick","onScroll","propTypes","string","number","oneOfType","arrayOf","node","bool","defaultProps"],"sources":["../../../src/components/CarouselWrapper/DefaultCarousel.js"],"sourcesContent":["import React, { useRef, useState, useEffect } from 'react';\nimport PropTypes from 'prop-types';\n\nconst DefaultCarousel = ({\n children,\n bannerModifier,\n itemsPerRow,\n enableAutoScroll,\n autoScrollTimer,\n pauseScrollOnHover,\n modifier\n}) => {\n const ref = useRef();\n const [buttonDisplay, setButtonDisplays] = useState({ displayLeft: false, displayRight: true });\n const [shouldAutoScroll, setShouldAutoScroll] = useState(false);\n const autoScrollRef = useRef();\n\n useEffect(\n () => {\n autoScrollRef.current = shouldAutoScroll;\n const id = setInterval(scrollCheck, autoScrollTimer);\n function scrollCheck() {\n if (!autoScrollRef.current) {\n clearInterval(id);\n } else {\n handleButtonNavigation(true);\n }\n }\n\n return () => clearInterval(id);\n },\n [autoScrollTimer, shouldAutoScroll]\n );\n\n useEffect(\n () => {\n const {\n current: { offsetWidth, scrollWidth }\n } = ref;\n if (scrollWidth <= offsetWidth) {\n setButtonDisplays({ displayLeft: false, displayRight: false });\n }\n\n setShouldAutoScroll(enableAutoScroll);\n },\n [enableAutoScroll]\n );\n\n const handleScroll = () => {\n const {\n current: { offsetWidth, scrollLeft, scrollWidth }\n } = ref;\n const updatedDisplayLeft = !!scrollLeft;\n const updatedDisplayRight = scrollLeft + offsetWidth + 1 < scrollWidth;\n setButtonDisplays({ displayLeft: updatedDisplayLeft, displayRight: updatedDisplayRight });\n };\n\n const handleMouseEnter = () => {\n if (pauseScrollOnHover) setShouldAutoScroll(false);\n };\n\n const handleMouseLeave = () => {\n if (pauseScrollOnHover) setShouldAutoScroll(true);\n };\n\n const handleButtonNavigation = direction => {\n if (!ref || !ref.current) return;\n const {\n current: { offsetWidth, scrollLeft, scrollWidth }\n } = ref;\n\n if (autoScrollRef.current && scrollLeft + offsetWidth >= scrollWidth) {\n ref.current.scrollLeft = 0;\n } else {\n ref.current.scrollLeft = direction ? scrollLeft + offsetWidth : scrollLeft - offsetWidth;\n }\n };\n\n const { displayLeft, displayRight } = buttonDisplay;\n const parsedModifier = modifier ? ` ${modifier}` : '';\n const wrapperClassName = `cards-carousel${bannerModifier}${parsedModifier}`;\n const contentClassName = `cards-carousel--content items-per-row-${itemsPerRow}`;\n\n return (\n <div\n className={wrapperClassName}\n onMouseEnter={handleMouseEnter}\n onMouseLeave={handleMouseLeave}>\n <div className=\"cards-carousel--left-button-wrapper\">\n {displayLeft && (\n <button\n type=\"button\"\n className=\"cards-carousel--button-back icon-button icon\"\n onClick={() => {\n setShouldAutoScroll(false);\n handleButtonNavigation();\n }}>\n <i className=\"cards-carousel--arrow cards-carousel--arrow__left\" />\n </button>\n )}\n </div>\n\n <div className=\"cards-carousel--right-button-wrapper\">\n {displayRight && (\n <button\n type=\"button\"\n className=\"cards-carousel--button-forward icon-button icon\"\n onClick={() => {\n setShouldAutoScroll(false);\n handleButtonNavigation(true);\n }}>\n <i className=\"cards-carousel--arrow cards-carousel--arrow__right\" />\n </button>\n )}\n </div>\n\n <div className={contentClassName} ref={ref} onScroll={handleScroll}>\n {children}\n </div>\n </div>\n );\n};\n\nDefaultCarousel.propTypes = {\n bannerModifier: PropTypes.string,\n itemsPerRow: PropTypes.number,\n children: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.node), PropTypes.node]),\n enableAutoScroll: PropTypes.bool,\n pauseScrollOnHover: PropTypes.bool,\n autoScrollTimer: PropTypes.number\n};\n\nDefaultCarousel.defaultProps = {\n itemsPerRow: 0,\n bannerModifier: '',\n children: [],\n enableAutoScroll: false,\n pauseScrollOnHover: false,\n autoScrollTimer: 0\n};\n\nexport default DefaultCarousel;\n"],"mappings":"AAAA,OAAOA,KAAK,IAAIC,MAAM,EAAEC,QAAQ,EAAEC,SAAS,QAAQ,OAAO;AAC1D,OAAOC,SAAS,MAAM,YAAY;AAElC,MAAMC,eAAe,GAAGA,CAAC;EACvBC,QAAQ;EACRC,cAAc;EACdC,WAAW;EACXC,gBAAgB;EAChBC,eAAe;EACfC,kBAAkB;EAClBC;AACF,CAAC,KAAK;EACJ,MAAMC,GAAG,GAAGZ,MAAM,CAAC,CAAC;EACpB,MAAM,CAACa,aAAa,EAAEC,iBAAiB,CAAC,GAAGb,QAAQ,CAAC;IAAEc,WAAW,EAAE,KAAK;IAAEC,YAAY,EAAE;EAAK,CAAC,CAAC;EAC/F,MAAM,CAACC,gBAAgB,EAAEC,mBAAmB,CAAC,GAAGjB,QAAQ,CAAC,KAAK,CAAC;EAC/D,MAAMkB,aAAa,GAAGnB,MAAM,CAAC,CAAC;EAE9BE,SAAS,CACP,MAAM;IACJiB,aAAa,CAACC,OAAO,GAAGH,gBAAgB;IACxC,MAAMI,EAAE,GAAGC,WAAW,CAACC,WAAW,EAAEd,eAAe,CAAC;IACpD,SAASc,WAAWA,CAAA,EAAG;MACrB,IAAI,CAACJ,aAAa,CAACC,OAAO,EAAE;QAC1BI,aAAa,CAACH,EAAE,CAAC;MACnB,CAAC,MAAM;QACLI,sBAAsB,CAAC,IAAI,CAAC;MAC9B;IACF;IAEA,OAAO,MAAMD,aAAa,CAACH,EAAE,CAAC;EAChC,CAAC,EACD,CAACZ,eAAe,EAAEQ,gBAAgB,CACpC,CAAC;EAEDf,SAAS,CACP,MAAM;IACJ,MAAM;MACJkB,OAAO,EAAE;QAAEM,WAAW;QAAEC;MAAY;IACtC,CAAC,GAAGf,GAAG;IACP,IAAIe,WAAW,IAAID,WAAW,EAAE;MAC9BZ,iBAAiB,CAAC;QAAEC,WAAW,EAAE,KAAK;QAAEC,YAAY,EAAE;MAAM,CAAC,CAAC;IAChE;IAEAE,mBAAmB,CAACV,gBAAgB,CAAC;EACvC,CAAC,EACD,CAACA,gBAAgB,CACnB,CAAC;EAED,MAAMoB,YAAY,GAAGA,CAAA,KAAM;IACzB,MAAM;MACJR,OAAO,EAAE;QAAEM,WAAW;QAAEG,UAAU;QAAEF;MAAY;IAClD,CAAC,GAAGf,GAAG;IACP,MAAMkB,kBAAkB,GAAG,CAAC,CAACD,UAAU;IACvC,MAAME,mBAAmB,GAAGF,UAAU,GAAGH,WAAW,GAAG,CAAC,GAAGC,WAAW;IACtEb,iBAAiB,CAAC;MAAEC,WAAW,EAAEe,kBAAkB;MAAEd,YAAY,EAAEe;IAAoB,CAAC,CAAC;EAC3F,CAAC;EAED,MAAMC,gBAAgB,GAAGA,CAAA,KAAM;IAC7B,IAAItB,kBAAkB,EAAEQ,mBAAmB,CAAC,KAAK,CAAC;EACpD,CAAC;EAED,MAAMe,gBAAgB,GAAGA,CAAA,KAAM;IAC7B,IAAIvB,kBAAkB,EAAEQ,mBAAmB,CAAC,IAAI,CAAC;EACnD,CAAC;EAED,MAAMO,sBAAsB,GAAGS,SAAS,IAAI;IAC1C,IAAI,CAACtB,GAAG,IAAI,CAACA,GAAG,CAACQ,OAAO,EAAE;IAC1B,MAAM;MACJA,OAAO,EAAE;QAAEM,WAAW;QAAEG,UAAU;QAAEF;MAAY;IAClD,CAAC,GAAGf,GAAG;IAEP,IAAIO,aAAa,CAACC,OAAO,IAAIS,UAAU,GAAGH,WAAW,IAAIC,WAAW,EAAE;MACpEf,GAAG,CAACQ,OAAO,CAACS,UAAU,GAAG,CAAC;IAC5B,CAAC,MAAM;MACLjB,GAAG,CAACQ,OAAO,CAACS,UAAU,GAAGK,SAAS,GAAGL,UAAU,GAAGH,WAAW,GAAGG,UAAU,GAAGH,WAAW;IAC1F;EACF,CAAC;EAED,MAAM;IAAEX,WAAW;IAAEC;EAAa,CAAC,GAAGH,aAAa;EACnD,MAAMsB,cAAc,GAAGxB,QAAQ,GAAI,IAAGA,QAAS,EAAC,GAAG,EAAE;EACrD,MAAMyB,gBAAgB,GAAI,iBAAgB9B,cAAe,GAAE6B,cAAe,EAAC;EAC3E,MAAME,gBAAgB,GAAI,yCAAwC9B,WAAY,EAAC;EAE/E,oBACER,KAAA,CAAAuC,aAAA;IACEC,SAAS,EAAEH,gBAAiB;IAC5BI,YAAY,EAAER,gBAAiB;IAC/BS,YAAY,EAAER;EAAiB,gBAC/BlC,KAAA,CAAAuC,aAAA;IAAKC,SAAS,EAAC;EAAqC,GACjDxB,WAAW,iBACVhB,KAAA,CAAAuC,aAAA;IACEI,IAAI,EAAC,QAAQ;IACbH,SAAS,EAAC,8CAA8C;
|
|
1
|
+
{"version":3,"file":"DefaultCarousel.js","names":["React","useRef","useState","useEffect","PropTypes","DefaultCarousel","children","bannerModifier","itemsPerRow","enableAutoScroll","autoScrollTimer","pauseScrollOnHover","modifier","ref","buttonDisplay","setButtonDisplays","displayLeft","displayRight","shouldAutoScroll","setShouldAutoScroll","autoScrollRef","current","id","setInterval","scrollCheck","clearInterval","handleButtonNavigation","offsetWidth","scrollWidth","handleScroll","scrollLeft","updatedDisplayLeft","updatedDisplayRight","handleMouseEnter","handleMouseLeave","direction","parsedModifier","wrapperClassName","contentClassName","createElement","className","onMouseEnter","onMouseLeave","type","onClick","onScroll","propTypes","string","number","oneOfType","arrayOf","node","bool","defaultProps"],"sources":["../../../src/components/CarouselWrapper/DefaultCarousel.js"],"sourcesContent":["import React, { useRef, useState, useEffect } from 'react';\nimport PropTypes from 'prop-types';\n\nconst DefaultCarousel = ({\n children,\n bannerModifier,\n itemsPerRow,\n enableAutoScroll,\n autoScrollTimer,\n pauseScrollOnHover,\n modifier\n}) => {\n const ref = useRef();\n const [buttonDisplay, setButtonDisplays] = useState({ displayLeft: false, displayRight: true });\n const [shouldAutoScroll, setShouldAutoScroll] = useState(false);\n const autoScrollRef = useRef();\n\n useEffect(\n () => {\n autoScrollRef.current = shouldAutoScroll;\n const id = setInterval(scrollCheck, autoScrollTimer);\n function scrollCheck() {\n if (!autoScrollRef.current) {\n clearInterval(id);\n } else {\n handleButtonNavigation(true);\n }\n }\n\n return () => clearInterval(id);\n },\n [autoScrollTimer, shouldAutoScroll]\n );\n\n useEffect(\n () => {\n const {\n current: { offsetWidth, scrollWidth }\n } = ref;\n if (scrollWidth <= offsetWidth) {\n setButtonDisplays({ displayLeft: false, displayRight: false });\n }\n\n setShouldAutoScroll(enableAutoScroll);\n },\n [enableAutoScroll]\n );\n\n const handleScroll = () => {\n const {\n current: { offsetWidth, scrollLeft, scrollWidth }\n } = ref;\n const updatedDisplayLeft = !!scrollLeft;\n const updatedDisplayRight = scrollLeft + offsetWidth + 1 < scrollWidth;\n setButtonDisplays({ displayLeft: updatedDisplayLeft, displayRight: updatedDisplayRight });\n };\n\n const handleMouseEnter = () => {\n if (pauseScrollOnHover) setShouldAutoScroll(false);\n };\n\n const handleMouseLeave = () => {\n if (pauseScrollOnHover) setShouldAutoScroll(true);\n };\n\n const handleButtonNavigation = direction => {\n if (!ref || !ref.current) return;\n const {\n current: { offsetWidth, scrollLeft, scrollWidth }\n } = ref;\n\n if (autoScrollRef.current && scrollLeft + offsetWidth >= scrollWidth) {\n ref.current.scrollLeft = 0;\n } else {\n ref.current.scrollLeft = direction ? scrollLeft + offsetWidth : scrollLeft - offsetWidth;\n }\n };\n\n const { displayLeft, displayRight } = buttonDisplay;\n const parsedModifier = modifier ? ` ${modifier}` : '';\n const wrapperClassName = `cards-carousel${bannerModifier}${parsedModifier}`;\n const contentClassName = `cards-carousel--content items-per-row-${itemsPerRow}`;\n\n return (\n <div\n className={wrapperClassName}\n onMouseEnter={handleMouseEnter}\n onMouseLeave={handleMouseLeave}>\n <div className=\"cards-carousel--left-button-wrapper\">\n {displayLeft && (\n <button\n type=\"button\"\n className=\"cards-carousel--button-back icon-button icon\"\n aria-label=\"Scroll left\"\n onClick={() => {\n setShouldAutoScroll(false);\n handleButtonNavigation();\n }}>\n <i className=\"cards-carousel--arrow cards-carousel--arrow__left\" />\n </button>\n )}\n </div>\n\n <div className=\"cards-carousel--right-button-wrapper\">\n {displayRight && (\n <button\n type=\"button\"\n className=\"cards-carousel--button-forward icon-button icon\"\n aria-label=\"Scroll right\"\n onClick={() => {\n setShouldAutoScroll(false);\n handleButtonNavigation(true);\n }}>\n <i className=\"cards-carousel--arrow cards-carousel--arrow__right\" />\n </button>\n )}\n </div>\n\n <div className={contentClassName} ref={ref} onScroll={handleScroll}>\n {children}\n </div>\n </div>\n );\n};\n\nDefaultCarousel.propTypes = {\n bannerModifier: PropTypes.string,\n itemsPerRow: PropTypes.number,\n children: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.node), PropTypes.node]),\n enableAutoScroll: PropTypes.bool,\n pauseScrollOnHover: PropTypes.bool,\n autoScrollTimer: PropTypes.number\n};\n\nDefaultCarousel.defaultProps = {\n itemsPerRow: 0,\n bannerModifier: '',\n children: [],\n enableAutoScroll: false,\n pauseScrollOnHover: false,\n autoScrollTimer: 0\n};\n\nexport default DefaultCarousel;\n"],"mappings":"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"}
|
|
@@ -33,7 +33,6 @@ const ContentGroupTabs = ({
|
|
|
33
33
|
}, groupSections.map((_, index) => {
|
|
34
34
|
const [sectionName, sectioLabel] = sectionsData[index];
|
|
35
35
|
const tabId = `${TAB}-${sectionName}`;
|
|
36
|
-
const panelId = `${PANEL}-${sectionName}`;
|
|
37
36
|
const isSelected = selectedTab === tabId;
|
|
38
37
|
const buttonClassName = `${CONTENT_GROUP}-${contentClassame}__button${isSelected ? '--is-active' : ''}`;
|
|
39
38
|
return /*#__PURE__*/React.createElement("button", {
|
|
@@ -43,7 +42,7 @@ const ContentGroupTabs = ({
|
|
|
43
42
|
type: "button",
|
|
44
43
|
role: "tab",
|
|
45
44
|
"aria-selected": isSelected,
|
|
46
|
-
"aria-controls":
|
|
45
|
+
"aria-controls": sectionName,
|
|
47
46
|
onClick: () => {
|
|
48
47
|
const baseUrl = asPath.split('#')[0];
|
|
49
48
|
const newUrl = `${baseUrl}#${sectionName}`;
|
|
@@ -1 +1 @@
|
|
|
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","
|
|
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","isSelected","buttonClassName","id","key","type","onClick","baseUrl","split","newUrl","push","shallow","groupSection","panelId","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 isSelected = selectedTab === tabId;\n const buttonClassName = `${CONTENT_GROUP}-${contentClassame}__button${\n isSelected ? '--is-active' : ''\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={sectionName}\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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"}
|
|
@@ -61,7 +61,7 @@ const GlobalLightbox = ({
|
|
|
61
61
|
value: caption
|
|
62
62
|
});
|
|
63
63
|
|
|
64
|
-
//
|
|
64
|
+
// deprecated: imageCredits is deprecated. This code is to handle legacy data. check before changing/removing
|
|
65
65
|
const shouldDisplayCredits = shouldShowProperty({
|
|
66
66
|
isDisplayed: areImageCreditsDisplayed,
|
|
67
67
|
value: credits || imageCredits
|
|
@@ -110,7 +110,7 @@ const GlobalLightbox = ({
|
|
|
110
110
|
handleAction: handlePrevious,
|
|
111
111
|
show: showPrevious,
|
|
112
112
|
modifier: "previous",
|
|
113
|
-
|
|
113
|
+
ariaLabel: "Previous Image"
|
|
114
114
|
}), /*#__PURE__*/React.createElement("div", {
|
|
115
115
|
className: "slider slider--gallery"
|
|
116
116
|
}, /*#__PURE__*/React.createElement("div", {
|
|
@@ -130,7 +130,7 @@ const GlobalLightbox = ({
|
|
|
130
130
|
sizeKey: "globalLightbox",
|
|
131
131
|
"data-testid": "globalLightboxImage"
|
|
132
132
|
})))))), /*#__PURE__*/React.createElement(NavButton, {
|
|
133
|
-
|
|
133
|
+
ariaLabel: "Next Image",
|
|
134
134
|
handleAction: handleNext,
|
|
135
135
|
show: showNext,
|
|
136
136
|
modifier: "next"
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"GlobalLightbox.js","names":["React","useState","Fragment","PropTypes","ResponsiveImage","FaTimes","BlazeLink","ImageDetails","NavButton","getImageData","useGetImages","shouldShowProperty","GlobalLightbox","images","onClose","selectedImage","metaTitle","parentName","index","setIndex","currentImage","imageId","url","name","enableLightbox","isCaptionDisplayed","areImageCreditsDisplayed","imageCredits","credits","otherProps","_objectWithoutProperties","_excluded","data","loading","error","message","imageUrl","imageData","getFile","urlProps","href","title","imgWrapperProps","caption","altText","shouldDisplayCaption","isDisplayed","value","shouldDisplayCredits","navigate","position","newPosition","handlePrevious","handleNext","handleClose","showNext","length","showPrevious","imageCounter","createElement","className","role","onClick","handleAction","show","modifier","Object","keys","src","alt","sizeKey","propTypes","arrayOf","shape","string","func","isRequired","number","defaultProps"],"sources":["../../../../src/components/Image/GlobalLightbox/GlobalLightbox.js"],"sourcesContent":["import React, { useState, Fragment } from 'react';\nimport PropTypes from 'prop-types';\nimport { ResponsiveImage } from '@blaze-cms/image-cdn-react';\nimport { FaTimes } from 'react-icons/fa';\nimport BlazeLink from '../../BlazeLink';\nimport ImageDetails from '../ImageDetails';\nimport NavButton from './NavButton';\nimport getImageData from '../../../utils/get-image-data';\nimport useGetImages from '../../../hooks/use-get-images';\nimport { shouldShowProperty } from '../../../helpers';\n\nconst GlobalLightbox = ({ images, onClose, selectedImage, metaTitle, parentName }) => {\n const [index, setIndex] = useState(selectedImage);\n\n const currentImage = images[index] || {};\n\n const {\n imageId,\n url,\n name,\n enableLightbox,\n isCaptionDisplayed,\n areImageCreditsDisplayed,\n imageCredits,\n credits,\n ...otherProps\n } = currentImage;\n\n const { data, loading, error } = useGetImages(imageId);\n\n if (error) {\n return error.message;\n }\n\n const { url: imageUrl = '', data: imageData = {} } = data.getFile || {\n getFile: { url: '', data: {} }\n };\n\n const urlProps = { href: url, title: name };\n const imgWrapperProps = url ? urlProps : {};\n\n const { caption, altText } = getImageData(otherProps, imageData);\n\n const shouldDisplayCaption = shouldShowProperty({\n isDisplayed: isCaptionDisplayed,\n value: caption\n });\n\n // depreciated: imageCredits is depreciated. This code is to handle legacy data. check before changing/removing\n const shouldDisplayCredits = shouldShowProperty({\n isDisplayed: areImageCreditsDisplayed,\n value: credits || imageCredits\n });\n\n const navigate = position => {\n const newPosition = index + position;\n if (images[newPosition]) {\n setIndex(newPosition);\n }\n };\n\n const handlePrevious = () => navigate(-1);\n const handleNext = () => navigate(1);\n const handleClose = () => onClose();\n\n const showNext = index !== images.length - 1;\n const showPrevious = !!index;\n\n const imageCounter = `${index + 1} of ${images.length}`;\n\n return (\n <>\n {!!images.length && (\n <div>\n <div className=\"overlay\" />\n <div className=\"modal modal--full-screen modal--gallery modal--show\">\n <header className=\"modal__header modal__header--gallery\">\n <div className=\"modal__title modal__title--gallery\">\n {parentName || metaTitle || name}\n </div>\n <div\n role=\"button\"\n className=\"modal__close\"\n onClick={handleClose}\n aria-label=\"Close modal\">\n <i>\n <FaTimes />\n </i>\n </div>\n </header>\n <div className=\"modal__content modal__content--gallery\">\n <div className=\"gallery\">\n <div className=\"gallery__column gallery__column--slider\">\n <div className=\"gallery__slider\">\n <div className=\"slider__wrapper slider__wrapper--gallery open\">\n <div className=\"slider__header slider__header--gallery\">\n <div\n className=\"slider__counter slider__counter--gallery\"\n data-testid=\"image-counter\">\n {imageCounter}\n </div>\n </div>\n\n <NavButton\n handleAction={handlePrevious}\n show={showPrevious}\n modifier=\"previous\"\n aria-label=\"Previous Image\"\n />\n\n <div className=\"slider slider--gallery\">\n <div className=\"slider__list slider__list--gallery\">\n <div className=\"slider__list-wrapper slider__list-wrapper--gallery\">\n <div className=\"slider__slide slider__slide--gallery\">\n {loading && <div />}\n {Object.keys(imgWrapperProps).length ? (\n <BlazeLink {...imgWrapperProps}>\n <ResponsiveImage\n src={imageUrl}\n alt={altText}\n sizeKey=\"globalLightbox\"\n data-testid=\"globalLightboxImage\"\n />\n </BlazeLink>\n ) : (\n <Fragment>\n <ResponsiveImage\n src={imageUrl}\n alt={altText}\n sizeKey=\"globalLightbox\"\n data-testid=\"globalLightboxImage\"\n />\n </Fragment>\n )}\n </div>\n </div>\n </div>\n </div>\n\n <NavButton\n aria-label=\"Next Image\"\n handleAction={handleNext}\n show={showNext}\n modifier=\"next\"\n />\n </div>\n {(shouldDisplayCaption || shouldDisplayCredits) && (\n <ImageDetails\n caption={caption}\n credits={credits || imageCredits}\n shouldDisplayCaption={shouldDisplayCaption}\n shouldDisplayCredits={shouldDisplayCredits}\n />\n )}\n </div>\n </div>\n </div>\n </div>\n </div>\n </div>\n )}\n </>\n );\n};\n\nGlobalLightbox.propTypes = {\n images: PropTypes.arrayOf(\n PropTypes.shape({\n url: PropTypes.string,\n imageId: PropTypes.string\n })\n ),\n metaTitle: PropTypes.string,\n onClose: PropTypes.func.isRequired,\n selectedImage: PropTypes.number,\n parentName: PropTypes.string\n};\n\nGlobalLightbox.defaultProps = {\n metaTitle: '',\n images: [],\n selectedImage: 0,\n parentName: ''\n};\n\nexport default GlobalLightbox;\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"GlobalLightbox.js","names":["React","useState","Fragment","PropTypes","ResponsiveImage","FaTimes","BlazeLink","ImageDetails","NavButton","getImageData","useGetImages","shouldShowProperty","GlobalLightbox","images","onClose","selectedImage","metaTitle","parentName","index","setIndex","currentImage","imageId","url","name","enableLightbox","isCaptionDisplayed","areImageCreditsDisplayed","imageCredits","credits","otherProps","_objectWithoutProperties","_excluded","data","loading","error","message","imageUrl","imageData","getFile","urlProps","href","title","imgWrapperProps","caption","altText","shouldDisplayCaption","isDisplayed","value","shouldDisplayCredits","navigate","position","newPosition","handlePrevious","handleNext","handleClose","showNext","length","showPrevious","imageCounter","createElement","className","role","onClick","handleAction","show","modifier","ariaLabel","Object","keys","src","alt","sizeKey","propTypes","arrayOf","shape","string","func","isRequired","number","defaultProps"],"sources":["../../../../src/components/Image/GlobalLightbox/GlobalLightbox.js"],"sourcesContent":["import React, { useState, Fragment } from 'react';\nimport PropTypes from 'prop-types';\nimport { ResponsiveImage } from '@blaze-cms/image-cdn-react';\nimport { FaTimes } from 'react-icons/fa';\nimport BlazeLink from '../../BlazeLink';\nimport ImageDetails from '../ImageDetails';\nimport NavButton from './NavButton';\nimport getImageData from '../../../utils/get-image-data';\nimport useGetImages from '../../../hooks/use-get-images';\nimport { shouldShowProperty } from '../../../helpers';\n\nconst GlobalLightbox = ({ images, onClose, selectedImage, metaTitle, parentName }) => {\n const [index, setIndex] = useState(selectedImage);\n\n const currentImage = images[index] || {};\n\n const {\n imageId,\n url,\n name,\n enableLightbox,\n isCaptionDisplayed,\n areImageCreditsDisplayed,\n imageCredits,\n credits,\n ...otherProps\n } = currentImage;\n\n const { data, loading, error } = useGetImages(imageId);\n\n if (error) {\n return error.message;\n }\n\n const { url: imageUrl = '', data: imageData = {} } = data.getFile || {\n getFile: { url: '', data: {} }\n };\n\n const urlProps = { href: url, title: name };\n const imgWrapperProps = url ? urlProps : {};\n\n const { caption, altText } = getImageData(otherProps, imageData);\n\n const shouldDisplayCaption = shouldShowProperty({\n isDisplayed: isCaptionDisplayed,\n value: caption\n });\n\n // deprecated: imageCredits is deprecated. This code is to handle legacy data. check before changing/removing\n const shouldDisplayCredits = shouldShowProperty({\n isDisplayed: areImageCreditsDisplayed,\n value: credits || imageCredits\n });\n\n const navigate = position => {\n const newPosition = index + position;\n if (images[newPosition]) {\n setIndex(newPosition);\n }\n };\n\n const handlePrevious = () => navigate(-1);\n const handleNext = () => navigate(1);\n const handleClose = () => onClose();\n\n const showNext = index !== images.length - 1;\n const showPrevious = !!index;\n\n const imageCounter = `${index + 1} of ${images.length}`;\n\n return (\n <>\n {!!images.length && (\n <div>\n <div className=\"overlay\" />\n <div className=\"modal modal--full-screen modal--gallery modal--show\">\n <header className=\"modal__header modal__header--gallery\">\n <div className=\"modal__title modal__title--gallery\">\n {parentName || metaTitle || name}\n </div>\n <div\n role=\"button\"\n className=\"modal__close\"\n onClick={handleClose}\n aria-label=\"Close modal\">\n <i>\n <FaTimes />\n </i>\n </div>\n </header>\n <div className=\"modal__content modal__content--gallery\">\n <div className=\"gallery\">\n <div className=\"gallery__column gallery__column--slider\">\n <div className=\"gallery__slider\">\n <div className=\"slider__wrapper slider__wrapper--gallery open\">\n <div className=\"slider__header slider__header--gallery\">\n <div\n className=\"slider__counter slider__counter--gallery\"\n data-testid=\"image-counter\">\n {imageCounter}\n </div>\n </div>\n\n <NavButton\n handleAction={handlePrevious}\n show={showPrevious}\n modifier=\"previous\"\n ariaLabel=\"Previous Image\"\n />\n\n <div className=\"slider slider--gallery\">\n <div className=\"slider__list slider__list--gallery\">\n <div className=\"slider__list-wrapper slider__list-wrapper--gallery\">\n <div className=\"slider__slide slider__slide--gallery\">\n {loading && <div />}\n {Object.keys(imgWrapperProps).length ? (\n <BlazeLink {...imgWrapperProps}>\n <ResponsiveImage\n src={imageUrl}\n alt={altText}\n sizeKey=\"globalLightbox\"\n data-testid=\"globalLightboxImage\"\n />\n </BlazeLink>\n ) : (\n <Fragment>\n <ResponsiveImage\n src={imageUrl}\n alt={altText}\n sizeKey=\"globalLightbox\"\n data-testid=\"globalLightboxImage\"\n />\n </Fragment>\n )}\n </div>\n </div>\n </div>\n </div>\n\n <NavButton\n ariaLabel=\"Next Image\"\n handleAction={handleNext}\n show={showNext}\n modifier=\"next\"\n />\n </div>\n {(shouldDisplayCaption || shouldDisplayCredits) && (\n <ImageDetails\n caption={caption}\n credits={credits || imageCredits}\n shouldDisplayCaption={shouldDisplayCaption}\n shouldDisplayCredits={shouldDisplayCredits}\n />\n )}\n </div>\n </div>\n </div>\n </div>\n </div>\n </div>\n )}\n </>\n );\n};\n\nGlobalLightbox.propTypes = {\n images: PropTypes.arrayOf(\n PropTypes.shape({\n url: PropTypes.string,\n imageId: PropTypes.string\n })\n ),\n metaTitle: PropTypes.string,\n onClose: PropTypes.func.isRequired,\n selectedImage: PropTypes.number,\n parentName: PropTypes.string\n};\n\nGlobalLightbox.defaultProps = {\n metaTitle: '',\n images: [],\n selectedImage: 0,\n parentName: ''\n};\n\nexport default GlobalLightbox;\n"],"mappings":"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"}
|
|
@@ -3,11 +3,13 @@ import PropTypes from 'prop-types';
|
|
|
3
3
|
const NavButton = ({
|
|
4
4
|
handleAction,
|
|
5
5
|
show,
|
|
6
|
-
modifier
|
|
6
|
+
modifier,
|
|
7
|
+
ariaLabel
|
|
7
8
|
}) => /*#__PURE__*/React.createElement(React.Fragment, null, show && /*#__PURE__*/React.createElement("div", {
|
|
8
9
|
role: "button",
|
|
9
10
|
className: `slider__button slider__button--gallery slider__button--${modifier}`,
|
|
10
|
-
onClick: handleAction
|
|
11
|
+
onClick: handleAction,
|
|
12
|
+
"aria-label": ariaLabel
|
|
11
13
|
}, /*#__PURE__*/React.createElement("div", {
|
|
12
14
|
className: `arrow arrow--${modifier === 'next' ? 'right' : 'left'}`,
|
|
13
15
|
"data-testid": `navButton-${modifier}`
|
|
@@ -15,7 +17,8 @@ const NavButton = ({
|
|
|
15
17
|
NavButton.propTypes = {
|
|
16
18
|
handleAction: PropTypes.func.isRequired,
|
|
17
19
|
show: PropTypes.bool.isRequired,
|
|
18
|
-
modifier: PropTypes.string.isRequired
|
|
20
|
+
modifier: PropTypes.string.isRequired,
|
|
21
|
+
ariaLabel: PropTypes.string.isRequired
|
|
19
22
|
};
|
|
20
23
|
export default NavButton;
|
|
21
24
|
//# sourceMappingURL=NavButton.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"NavButton.js","names":["React","PropTypes","NavButton","handleAction","show","modifier","createElement","Fragment","role","className","onClick","propTypes","func","isRequired","bool","string"],"sources":["../../../../src/components/Image/GlobalLightbox/NavButton.js"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\n\nconst NavButton = ({ handleAction, show, modifier }) => (\n <>\n {show && (\n <div\n role=\"button\"\n className={`slider__button slider__button--gallery slider__button--${modifier}`}\n onClick={handleAction}>\n <div\n className={`arrow arrow--${modifier === 'next' ? 'right' : 'left'}`}\n data-testid={`navButton-${modifier}`}\n />\n </div>\n )}\n </>\n);\n\nNavButton.propTypes = {\n handleAction: PropTypes.func.isRequired,\n show: PropTypes.bool.isRequired,\n modifier: PropTypes.string.isRequired\n};\n\nexport default NavButton;\n"],"mappings":"AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,OAAOC,SAAS,MAAM,YAAY;AAElC,MAAMC,SAAS,GAAGA,CAAC;EAAEC,YAAY;EAAEC,IAAI;EAAEC;
|
|
1
|
+
{"version":3,"file":"NavButton.js","names":["React","PropTypes","NavButton","handleAction","show","modifier","ariaLabel","createElement","Fragment","role","className","onClick","propTypes","func","isRequired","bool","string"],"sources":["../../../../src/components/Image/GlobalLightbox/NavButton.js"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\n\nconst NavButton = ({ handleAction, show, modifier, ariaLabel }) => (\n <>\n {show && (\n <div\n role=\"button\"\n className={`slider__button slider__button--gallery slider__button--${modifier}`}\n onClick={handleAction}\n aria-label={ariaLabel}>\n <div\n className={`arrow arrow--${modifier === 'next' ? 'right' : 'left'}`}\n data-testid={`navButton-${modifier}`}\n />\n </div>\n )}\n </>\n);\n\nNavButton.propTypes = {\n handleAction: PropTypes.func.isRequired,\n show: PropTypes.bool.isRequired,\n modifier: PropTypes.string.isRequired,\n ariaLabel: PropTypes.string.isRequired\n};\n\nexport default NavButton;\n"],"mappings":"AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,OAAOC,SAAS,MAAM,YAAY;AAElC,MAAMC,SAAS,GAAGA,CAAC;EAAEC,YAAY;EAAEC,IAAI;EAAEC,QAAQ;EAAEC;AAAU,CAAC,kBAC5DN,KAAA,CAAAO,aAAA,CAAAP,KAAA,CAAAQ,QAAA,QACGJ,IAAI,iBACHJ,KAAA,CAAAO,aAAA;EACEE,IAAI,EAAC,QAAQ;EACbC,SAAS,EAAG,0DAAyDL,QAAS,EAAE;EAChFM,OAAO,EAAER,YAAa;EACtB,cAAYG;AAAU,gBACtBN,KAAA,CAAAO,aAAA;EACEG,SAAS,EAAG,gBAAeL,QAAQ,KAAK,MAAM,GAAG,OAAO,GAAG,MAAO,EAAE;EACpE,eAAc,aAAYA,QAAS;AAAE,CACtC,CACE,CAEP,CACH;AAEDH,SAAS,CAACU,SAAS,GAAG;EACpBT,YAAY,EAAEF,SAAS,CAACY,IAAI,CAACC,UAAU;EACvCV,IAAI,EAAEH,SAAS,CAACc,IAAI,CAACD,UAAU;EAC/BT,QAAQ,EAAEJ,SAAS,CAACe,MAAM,CAACF,UAAU;EACrCR,SAAS,EAAEL,SAAS,CAACe,MAAM,CAACF;AAC9B,CAAC;AAED,eAAeZ,SAAS"}
|
|
@@ -112,6 +112,7 @@ const Image = _ref => {
|
|
|
112
112
|
}, children)), shouldDisplayCount && /*#__PURE__*/React.createElement("div", {
|
|
113
113
|
className: "image__button image__button--count",
|
|
114
114
|
role: "button",
|
|
115
|
+
"aria-label": "Show more images",
|
|
115
116
|
onClick: handleEnableLightbox
|
|
116
117
|
}, /*#__PURE__*/React.createElement("p", null, countMessage), /*#__PURE__*/React.createElement("div", {
|
|
117
118
|
className: "arrow arrow--right"
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Image.js","names":["React","useState","PropTypes","useInView","Wrapper","ImageRender","ImageDetails","getClassModifiers","getImageData","getDisplayCountData","shouldShowProperty","buildImageProperties","IMAGE","HERO","IN_VIEW_CONFIG","Image","_ref","url","modifier","_modifier","imageId","enableLightbox","name","toggleModal","handleSelectedImage","displayCount","lightboxImages","isHero","priority","type","areImageCreditsDisplayed","isCaptionDisplayed","images","imageData","imageUrl","elementTitle","credits","imageCredits","children","otherProps","_objectWithoutProperties","_excluded","displayLightbox","setDisplayLightbox","isIntersecting","outerRef","caption","altText","hrefUrl","imageDataCredits","href","ImgWrapper","imgWrapperProps","lightboxImgProps","modifiers","_objectSpread","wrapperClassName","toggleLightbox","handleEnableLightbox","shouldDisplayCaption","isDisplayed","value","creditsValue","shouldDisplayCredits","shouldDisplayCount","countMessage","sizeKey","filter","Boolean","join","shouldDisplayImage","createElement","_extends","ref","className","alt","role","onClick","propTypes","string","bool","func","array","object","oneOfType","arrayOf","node","defaultProps"],"sources":["../../../src/components/Image/Image.js"],"sourcesContent":["import React, { useState } from 'react';\nimport PropTypes from 'prop-types';\nimport { useInView } from '@blaze-react/utils/lib/customHooks';\nimport Wrapper from '../Wrapper';\nimport ImageRender from './ImageRender';\nimport ImageDetails from './ImageDetails';\nimport getClassModifiers from '../../utils/get-class-modifiers';\nimport { getImageData } from '../../utils';\nimport { getDisplayCountData, shouldShowProperty, buildImageProperties } from '../../helpers';\nimport { IMAGE, HERO, IN_VIEW_CONFIG } from '../../constants';\n\nconst Image = ({\n url,\n modifier: _modifier,\n imageId,\n enableLightbox,\n name,\n toggleModal,\n handleSelectedImage,\n displayCount,\n lightboxImages,\n isHero,\n priority,\n type,\n areImageCreditsDisplayed,\n isCaptionDisplayed,\n images,\n imageData,\n imageUrl,\n elementTitle,\n credits,\n imageCredits,\n children,\n ...otherProps\n}) => {\n const [displayLightbox, setDisplayLightbox] = useState(false);\n const [isIntersecting, outerRef] = useInView(IN_VIEW_CONFIG);\n\n const { caption, altText, hrefUrl, credits: imageDataCredits } = getImageData(\n otherProps,\n imageData\n );\n\n const href = url || hrefUrl;\n\n const { ImgWrapper, imgWrapperProps, lightboxImgProps } = buildImageProperties({\n href,\n name,\n enableLightbox,\n isHero\n });\n\n const modifier = _modifier || '';\n const modifiers = getClassModifiers(type, { modifier, ...otherProps });\n const wrapperClassName = isHero ? HERO : IMAGE;\n const toggleLightbox = () => setDisplayLightbox(!displayLightbox);\n\n const handleEnableLightbox = () => {\n if (!enableLightbox) return;\n toggleModal();\n handleSelectedImage(imageId);\n };\n\n const shouldDisplayCaption = shouldShowProperty({\n isDisplayed: isCaptionDisplayed,\n value: caption\n });\n\n // deprecated: imageCredits is deprecated. This code is to handle legacy data. check before changing/removing\n const creditsValue = credits || imageCredits || imageDataCredits;\n\n const shouldDisplayCredits = shouldShowProperty({\n isDisplayed: areImageCreditsDisplayed,\n value: creditsValue\n });\n const { shouldDisplayCount, countMessage } = getDisplayCountData(displayCount, images);\n const sizeKey = [IMAGE, isHero ? HERO : '', _modifier].filter(Boolean).join(':');\n const shouldDisplayImage = !!imageUrl && (priority || isIntersecting);\n\n return (\n <Wrapper ref={outerRef} className={wrapperClassName} modifiers={modifiers} {...otherProps}>\n {elementTitle && <div className=\"heading heading--section\">{elementTitle}</div>}\n {shouldDisplayImage && (\n <ImgWrapper {...imgWrapperProps}>\n <ImageRender\n {...otherProps}\n alt={altText}\n imageUrl={imageUrl}\n handleEnableLightbox={handleEnableLightbox}\n toggleLightbox={toggleLightbox}\n displayLightbox={displayLightbox}\n caption={caption}\n enableLightbox={enableLightbox}\n lightboxImgProps={lightboxImgProps}\n name={name}\n displayCount={displayCount}\n lightboxImages={lightboxImages}\n isHero={isHero}\n priority={priority}\n sizeKey={sizeKey}\n />\n {children && <div className=\"image__children\">{children}</div>}\n </ImgWrapper>\n )}\n {shouldDisplayCount && (\n <div\n className=\"image__button image__button--count\"\n role=\"button\"\n onClick={handleEnableLightbox}>\n <p>{countMessage}</p>\n <div className=\"arrow arrow--right\" />\n </div>\n )}\n {(shouldDisplayCaption || shouldDisplayCredits) && (\n <ImageDetails\n caption={caption}\n credits={creditsValue}\n shouldDisplayCaption={shouldDisplayCaption}\n shouldDisplayCredits={shouldDisplayCredits}\n />\n )}\n </Wrapper>\n );\n};\n\nImage.propTypes = {\n url: PropTypes.string,\n name: PropTypes.string,\n modifier: PropTypes.string,\n imageId: PropTypes.string,\n enableLightbox: PropTypes.bool,\n toggleModal: PropTypes.func,\n handleSelectedImage: PropTypes.func,\n displayCount: PropTypes.bool,\n lightboxImages: PropTypes.array,\n images: PropTypes.array,\n isHero: PropTypes.bool,\n priority: PropTypes.bool,\n type: PropTypes.string,\n areImageCreditsDisplayed: PropTypes.bool,\n isCaptionDisplayed: PropTypes.bool,\n imageData: PropTypes.object,\n imageUrl: PropTypes.string,\n credits: PropTypes.string,\n imageCredits: PropTypes.string,\n elementTitle: PropTypes.string,\n children: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.node), PropTypes.node])\n};\n\nImage.defaultProps = {\n modifier: '',\n url: null,\n name: '',\n credits: '',\n imageCredits: '',\n enableLightbox: false,\n imageId: '',\n handleSelectedImage: () => {},\n toggleModal: () => {},\n displayCount: false,\n lightboxImages: [],\n images: [],\n isHero: false,\n priority: false,\n type: '',\n areImageCreditsDisplayed: false,\n isCaptionDisplayed: true,\n imageData: {},\n imageUrl: '',\n elementTitle: '',\n children: null\n};\n\nexport default Image;\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Image.js","names":["React","useState","PropTypes","useInView","Wrapper","ImageRender","ImageDetails","getClassModifiers","getImageData","getDisplayCountData","shouldShowProperty","buildImageProperties","IMAGE","HERO","IN_VIEW_CONFIG","Image","_ref","url","modifier","_modifier","imageId","enableLightbox","name","toggleModal","handleSelectedImage","displayCount","lightboxImages","isHero","priority","type","areImageCreditsDisplayed","isCaptionDisplayed","images","imageData","imageUrl","elementTitle","credits","imageCredits","children","otherProps","_objectWithoutProperties","_excluded","displayLightbox","setDisplayLightbox","isIntersecting","outerRef","caption","altText","hrefUrl","imageDataCredits","href","ImgWrapper","imgWrapperProps","lightboxImgProps","modifiers","_objectSpread","wrapperClassName","toggleLightbox","handleEnableLightbox","shouldDisplayCaption","isDisplayed","value","creditsValue","shouldDisplayCredits","shouldDisplayCount","countMessage","sizeKey","filter","Boolean","join","shouldDisplayImage","createElement","_extends","ref","className","alt","role","onClick","propTypes","string","bool","func","array","object","oneOfType","arrayOf","node","defaultProps"],"sources":["../../../src/components/Image/Image.js"],"sourcesContent":["import React, { useState } from 'react';\nimport PropTypes from 'prop-types';\nimport { useInView } from '@blaze-react/utils/lib/customHooks';\nimport Wrapper from '../Wrapper';\nimport ImageRender from './ImageRender';\nimport ImageDetails from './ImageDetails';\nimport getClassModifiers from '../../utils/get-class-modifiers';\nimport { getImageData } from '../../utils';\nimport { getDisplayCountData, shouldShowProperty, buildImageProperties } from '../../helpers';\nimport { IMAGE, HERO, IN_VIEW_CONFIG } from '../../constants';\n\nconst Image = ({\n url,\n modifier: _modifier,\n imageId,\n enableLightbox,\n name,\n toggleModal,\n handleSelectedImage,\n displayCount,\n lightboxImages,\n isHero,\n priority,\n type,\n areImageCreditsDisplayed,\n isCaptionDisplayed,\n images,\n imageData,\n imageUrl,\n elementTitle,\n credits,\n imageCredits,\n children,\n ...otherProps\n}) => {\n const [displayLightbox, setDisplayLightbox] = useState(false);\n const [isIntersecting, outerRef] = useInView(IN_VIEW_CONFIG);\n\n const { caption, altText, hrefUrl, credits: imageDataCredits } = getImageData(\n otherProps,\n imageData\n );\n\n const href = url || hrefUrl;\n\n const { ImgWrapper, imgWrapperProps, lightboxImgProps } = buildImageProperties({\n href,\n name,\n enableLightbox,\n isHero\n });\n\n const modifier = _modifier || '';\n const modifiers = getClassModifiers(type, { modifier, ...otherProps });\n const wrapperClassName = isHero ? HERO : IMAGE;\n const toggleLightbox = () => setDisplayLightbox(!displayLightbox);\n\n const handleEnableLightbox = () => {\n if (!enableLightbox) return;\n toggleModal();\n handleSelectedImage(imageId);\n };\n\n const shouldDisplayCaption = shouldShowProperty({\n isDisplayed: isCaptionDisplayed,\n value: caption\n });\n\n // deprecated: imageCredits is deprecated. This code is to handle legacy data. check before changing/removing\n const creditsValue = credits || imageCredits || imageDataCredits;\n\n const shouldDisplayCredits = shouldShowProperty({\n isDisplayed: areImageCreditsDisplayed,\n value: creditsValue\n });\n const { shouldDisplayCount, countMessage } = getDisplayCountData(displayCount, images);\n const sizeKey = [IMAGE, isHero ? HERO : '', _modifier].filter(Boolean).join(':');\n const shouldDisplayImage = !!imageUrl && (priority || isIntersecting);\n\n return (\n <Wrapper ref={outerRef} className={wrapperClassName} modifiers={modifiers} {...otherProps}>\n {elementTitle && <div className=\"heading heading--section\">{elementTitle}</div>}\n {shouldDisplayImage && (\n <ImgWrapper {...imgWrapperProps}>\n <ImageRender\n {...otherProps}\n alt={altText}\n imageUrl={imageUrl}\n handleEnableLightbox={handleEnableLightbox}\n toggleLightbox={toggleLightbox}\n displayLightbox={displayLightbox}\n caption={caption}\n enableLightbox={enableLightbox}\n lightboxImgProps={lightboxImgProps}\n name={name}\n displayCount={displayCount}\n lightboxImages={lightboxImages}\n isHero={isHero}\n priority={priority}\n sizeKey={sizeKey}\n />\n {children && <div className=\"image__children\">{children}</div>}\n </ImgWrapper>\n )}\n {shouldDisplayCount && (\n <div\n className=\"image__button image__button--count\"\n role=\"button\"\n aria-label=\"Show more images\"\n onClick={handleEnableLightbox}>\n <p>{countMessage}</p>\n <div className=\"arrow arrow--right\" />\n </div>\n )}\n {(shouldDisplayCaption || shouldDisplayCredits) && (\n <ImageDetails\n caption={caption}\n credits={creditsValue}\n shouldDisplayCaption={shouldDisplayCaption}\n shouldDisplayCredits={shouldDisplayCredits}\n />\n )}\n </Wrapper>\n );\n};\n\nImage.propTypes = {\n url: PropTypes.string,\n name: PropTypes.string,\n modifier: PropTypes.string,\n imageId: PropTypes.string,\n enableLightbox: PropTypes.bool,\n toggleModal: PropTypes.func,\n handleSelectedImage: PropTypes.func,\n displayCount: PropTypes.bool,\n lightboxImages: PropTypes.array,\n images: PropTypes.array,\n isHero: PropTypes.bool,\n priority: PropTypes.bool,\n type: PropTypes.string,\n areImageCreditsDisplayed: PropTypes.bool,\n isCaptionDisplayed: PropTypes.bool,\n imageData: PropTypes.object,\n imageUrl: PropTypes.string,\n credits: PropTypes.string,\n imageCredits: PropTypes.string,\n elementTitle: PropTypes.string,\n children: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.node), PropTypes.node])\n};\n\nImage.defaultProps = {\n modifier: '',\n url: null,\n name: '',\n credits: '',\n imageCredits: '',\n enableLightbox: false,\n imageId: '',\n handleSelectedImage: () => {},\n toggleModal: () => {},\n displayCount: false,\n lightboxImages: [],\n images: [],\n isHero: false,\n priority: false,\n type: '',\n areImageCreditsDisplayed: false,\n isCaptionDisplayed: true,\n imageData: {},\n imageUrl: '',\n elementTitle: '',\n children: null\n};\n\nexport default Image;\n"],"mappings":";;;;;;AAAA,OAAOA,KAAK,IAAIC,QAAQ,QAAQ,OAAO;AACvC,OAAOC,SAAS,MAAM,YAAY;AAClC,SAASC,SAAS,QAAQ,oCAAoC;AAC9D,OAAOC,OAAO,MAAM,YAAY;AAChC,OAAOC,WAAW,MAAM,eAAe;AACvC,OAAOC,YAAY,MAAM,gBAAgB;AACzC,OAAOC,iBAAiB,MAAM,iCAAiC;AAC/D,SAASC,YAAY,QAAQ,aAAa;AAC1C,SAASC,mBAAmB,EAAEC,kBAAkB,EAAEC,oBAAoB,QAAQ,eAAe;AAC7F,SAASC,KAAK,EAAEC,IAAI,EAAEC,cAAc,QAAQ,iBAAiB;AAE7D,MAAMC,KAAK,GAAGC,IAAA,IAuBR;EAAA,IAvBS;MACbC,GAAG;MACHC,QAAQ,EAAEC,SAAS;MACnBC,OAAO;MACPC,cAAc;MACdC,IAAI;MACJC,WAAW;MACXC,mBAAmB;MACnBC,YAAY;MACZC,cAAc;MACdC,MAAM;MACNC,QAAQ;MACRC,IAAI;MACJC,wBAAwB;MACxBC,kBAAkB;MAClBC,MAAM;MACNC,SAAS;MACTC,QAAQ;MACRC,YAAY;MACZC,OAAO;MACPC,YAAY;MACZC;IAEF,CAAC,GAAAtB,IAAA;IADIuB,UAAU,GAAAC,wBAAA,CAAAxB,IAAA,EAAAyB,SAAA;EAEb,MAAM,CAACC,eAAe,EAAEC,kBAAkB,CAAC,GAAG1C,QAAQ,CAAC,KAAK,CAAC;EAC7D,MAAM,CAAC2C,cAAc,EAAEC,QAAQ,CAAC,GAAG1C,SAAS,CAACW,cAAc,CAAC;EAE5D,MAAM;IAAEgC,OAAO;IAAEC,OAAO;IAAEC,OAAO;IAAEZ,OAAO,EAAEa;EAAiB,CAAC,GAAGzC,YAAY,CAC3E+B,UAAU,EACVN,SACF,CAAC;EAED,MAAMiB,IAAI,GAAGjC,GAAG,IAAI+B,OAAO;EAE3B,MAAM;IAAEG,UAAU;IAAEC,eAAe;IAAEC;EAAiB,CAAC,GAAG1C,oBAAoB,CAAC;IAC7EuC,IAAI;IACJ5B,IAAI;IACJD,cAAc;IACdM;EACF,CAAC,CAAC;EAEF,MAAMT,QAAQ,GAAGC,SAAS,IAAI,EAAE;EAChC,MAAMmC,SAAS,GAAG/C,iBAAiB,CAACsB,IAAI,EAAA0B,aAAA;IAAIrC;EAAQ,GAAKqB,UAAU,CAAE,CAAC;EACtE,MAAMiB,gBAAgB,GAAG7B,MAAM,GAAGd,IAAI,GAAGD,KAAK;EAC9C,MAAM6C,cAAc,GAAGA,CAAA,KAAMd,kBAAkB,CAAC,CAACD,eAAe,CAAC;EAEjE,MAAMgB,oBAAoB,GAAGA,CAAA,KAAM;IACjC,IAAI,CAACrC,cAAc,EAAE;IACrBE,WAAW,CAAC,CAAC;IACbC,mBAAmB,CAACJ,OAAO,CAAC;EAC9B,CAAC;EAED,MAAMuC,oBAAoB,GAAGjD,kBAAkB,CAAC;IAC9CkD,WAAW,EAAE7B,kBAAkB;IAC/B8B,KAAK,EAAEf;EACT,CAAC,CAAC;;EAEF;EACA,MAAMgB,YAAY,GAAG1B,OAAO,IAAIC,YAAY,IAAIY,gBAAgB;EAEhE,MAAMc,oBAAoB,GAAGrD,kBAAkB,CAAC;IAC9CkD,WAAW,EAAE9B,wBAAwB;IACrC+B,KAAK,EAAEC;EACT,CAAC,CAAC;EACF,MAAM;IAAEE,kBAAkB;IAAEC;EAAa,CAAC,GAAGxD,mBAAmB,CAACgB,YAAY,EAAEO,MAAM,CAAC;EACtF,MAAMkC,OAAO,GAAG,CAACtD,KAAK,EAAEe,MAAM,GAAGd,IAAI,GAAG,EAAE,EAAEM,SAAS,CAAC,CAACgD,MAAM,CAACC,OAAO,CAAC,CAACC,IAAI,CAAC,GAAG,CAAC;EAChF,MAAMC,kBAAkB,GAAG,CAAC,CAACpC,QAAQ,KAAKN,QAAQ,IAAIgB,cAAc,CAAC;EAErE,oBACE5C,KAAA,CAAAuE,aAAA,CAACnE,OAAO,EAAAoE,QAAA;IAACC,GAAG,EAAE5B,QAAS;IAAC6B,SAAS,EAAElB,gBAAiB;IAACF,SAAS,EAAEA;EAAU,GAAKf,UAAU,GACtFJ,YAAY,iBAAInC,KAAA,CAAAuE,aAAA;IAAKG,SAAS,EAAC;EAA0B,GAAEvC,YAAkB,CAAC,EAC9EmC,kBAAkB,iBACjBtE,KAAA,CAAAuE,aAAA,CAACpB,UAAU,EAAKC,eAAe,eAC7BpD,KAAA,CAAAuE,aAAA,CAAClE,WAAW,EAAAmE,QAAA,KACNjC,UAAU;IACdoC,GAAG,EAAE5B,OAAQ;IACbb,QAAQ,EAAEA,QAAS;IACnBwB,oBAAoB,EAAEA,oBAAqB;IAC3CD,cAAc,EAAEA,cAAe;IAC/Bf,eAAe,EAAEA,eAAgB;IACjCI,OAAO,EAAEA,OAAQ;IACjBzB,cAAc,EAAEA,cAAe;IAC/BgC,gBAAgB,EAAEA,gBAAiB;IACnC/B,IAAI,EAAEA,IAAK;IACXG,YAAY,EAAEA,YAAa;IAC3BC,cAAc,EAAEA,cAAe;IAC/BC,MAAM,EAAEA,MAAO;IACfC,QAAQ,EAAEA,QAAS;IACnBsC,OAAO,EAAEA;EAAQ,EAClB,CAAC,EACD5B,QAAQ,iBAAItC,KAAA,CAAAuE,aAAA;IAAKG,SAAS,EAAC;EAAiB,GAAEpC,QAAc,CACnD,CACb,EACA0B,kBAAkB,iBACjBhE,KAAA,CAAAuE,aAAA;IACEG,SAAS,EAAC,oCAAoC;IAC9CE,IAAI,EAAC,QAAQ;IACb,cAAW,kBAAkB;IAC7BC,OAAO,EAAEnB;EAAqB,gBAC9B1D,KAAA,CAAAuE,aAAA,YAAIN,YAAgB,CAAC,eACrBjE,KAAA,CAAAuE,aAAA;IAAKG,SAAS,EAAC;EAAoB,CAAE,CAClC,CACN,EACA,CAACf,oBAAoB,IAAII,oBAAoB,kBAC5C/D,KAAA,CAAAuE,aAAA,CAACjE,YAAY;IACXwC,OAAO,EAAEA,OAAQ;IACjBV,OAAO,EAAE0B,YAAa;IACtBH,oBAAoB,EAAEA,oBAAqB;IAC3CI,oBAAoB,EAAEA;EAAqB,CAC5C,CAEI,CAAC;AAEd,CAAC;AAEDhD,KAAK,CAAC+D,SAAS,GAAG;EAChB7D,GAAG,EAAEf,SAAS,CAAC6E,MAAM;EACrBzD,IAAI,EAAEpB,SAAS,CAAC6E,MAAM;EACtB7D,QAAQ,EAAEhB,SAAS,CAAC6E,MAAM;EAC1B3D,OAAO,EAAElB,SAAS,CAAC6E,MAAM;EACzB1D,cAAc,EAAEnB,SAAS,CAAC8E,IAAI;EAC9BzD,WAAW,EAAErB,SAAS,CAAC+E,IAAI;EAC3BzD,mBAAmB,EAAEtB,SAAS,CAAC+E,IAAI;EACnCxD,YAAY,EAAEvB,SAAS,CAAC8E,IAAI;EAC5BtD,cAAc,EAAExB,SAAS,CAACgF,KAAK;EAC/BlD,MAAM,EAAE9B,SAAS,CAACgF,KAAK;EACvBvD,MAAM,EAAEzB,SAAS,CAAC8E,IAAI;EACtBpD,QAAQ,EAAE1B,SAAS,CAAC8E,IAAI;EACxBnD,IAAI,EAAE3B,SAAS,CAAC6E,MAAM;EACtBjD,wBAAwB,EAAE5B,SAAS,CAAC8E,IAAI;EACxCjD,kBAAkB,EAAE7B,SAAS,CAAC8E,IAAI;EAClC/C,SAAS,EAAE/B,SAAS,CAACiF,MAAM;EAC3BjD,QAAQ,EAAEhC,SAAS,CAAC6E,MAAM;EAC1B3C,OAAO,EAAElC,SAAS,CAAC6E,MAAM;EACzB1C,YAAY,EAAEnC,SAAS,CAAC6E,MAAM;EAC9B5C,YAAY,EAAEjC,SAAS,CAAC6E,MAAM;EAC9BzC,QAAQ,EAAEpC,SAAS,CAACkF,SAAS,CAAC,CAAClF,SAAS,CAACmF,OAAO,CAACnF,SAAS,CAACoF,IAAI,CAAC,EAAEpF,SAAS,CAACoF,IAAI,CAAC;AACnF,CAAC;AAEDvE,KAAK,CAACwE,YAAY,GAAG;EACnBrE,QAAQ,EAAE,EAAE;EACZD,GAAG,EAAE,IAAI;EACTK,IAAI,EAAE,EAAE;EACRc,OAAO,EAAE,EAAE;EACXC,YAAY,EAAE,EAAE;EAChBhB,cAAc,EAAE,KAAK;EACrBD,OAAO,EAAE,EAAE;EACXI,mBAAmB,EAAEA,CAAA,KAAM,CAAC,CAAC;EAC7BD,WAAW,EAAEA,CAAA,KAAM,CAAC,CAAC;EACrBE,YAAY,EAAE,KAAK;EACnBC,cAAc,EAAE,EAAE;EAClBM,MAAM,EAAE,EAAE;EACVL,MAAM,EAAE,KAAK;EACbC,QAAQ,EAAE,KAAK;EACfC,IAAI,EAAE,EAAE;EACRC,wBAAwB,EAAE,KAAK;EAC/BC,kBAAkB,EAAE,IAAI;EACxBE,SAAS,EAAE,CAAC,CAAC;EACbC,QAAQ,EAAE,EAAE;EACZC,YAAY,EAAE,EAAE;EAChBG,QAAQ,EAAE;AACZ,CAAC;AAED,eAAevB,KAAK"}
|
|
@@ -45,8 +45,7 @@ const ItemListNew = ({
|
|
|
45
45
|
};
|
|
46
46
|
return /*#__PURE__*/React.createElement(BlazeButton, {
|
|
47
47
|
className: `item-list-new ${modifier}`,
|
|
48
|
-
onClick: handleClick
|
|
49
|
-
"aria-label": `Create new ${listName}`
|
|
48
|
+
onClick: handleClick
|
|
50
49
|
}, text);
|
|
51
50
|
};
|
|
52
51
|
ItemListNew.propTypes = {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ItemListNew.js","names":["React","PropTypes","useRouter","useQuery","BlazeButton","parseUrl","getItemList","useItemListId","getItemListData","setItemListId","setParamAndRedirect","LIST_ITEM_QUERY_PARAM","ItemListNew","listName","modifier","text","router","query","listItemId","asPath","listId","listIdToUse","data","error","loading","variables","id","skip","message","listItems","length","handleClick","createElement","className","onClick","propTypes","string","isRequired","defaultProps"],"sources":["../../../../src/components/ItemList/ItemListNew/ItemListNew.js"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport { useRouter } from 'next/router';\nimport { useQuery } from '@apollo/client';\nimport BlazeButton from '@blaze-react/button';\nimport { parseUrl } from 'query-string';\nimport { getItemList } from '../../../application/query';\nimport { useItemListId } from '../hooks';\nimport { getItemListData, setItemListId, setParamAndRedirect } from '../helpers';\nimport { LIST_ITEM_QUERY_PARAM } from '../constants';\n\nconst ItemListNew = ({ listName, modifier, text }) => {\n const router = useRouter();\n const { query: { [LIST_ITEM_QUERY_PARAM]: listItemId } = {} } = parseUrl(router.asPath);\n\n const { listId } = useItemListId({ listName });\n const listIdToUse = listItemId || listId;\n const { data, error, loading } = useQuery(getItemList, {\n variables: { id: listIdToUse },\n skip: !listIdToUse\n });\n\n if (loading) return '';\n if (error) return error.message;\n\n const listItems = getItemListData(data);\n if (!listItems.length) return '';\n\n const handleClick = () => {\n setItemListId(listName, '');\n setParamAndRedirect(router);\n };\n\n return (\n <BlazeButton
|
|
1
|
+
{"version":3,"file":"ItemListNew.js","names":["React","PropTypes","useRouter","useQuery","BlazeButton","parseUrl","getItemList","useItemListId","getItemListData","setItemListId","setParamAndRedirect","LIST_ITEM_QUERY_PARAM","ItemListNew","listName","modifier","text","router","query","listItemId","asPath","listId","listIdToUse","data","error","loading","variables","id","skip","message","listItems","length","handleClick","createElement","className","onClick","propTypes","string","isRequired","defaultProps"],"sources":["../../../../src/components/ItemList/ItemListNew/ItemListNew.js"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport { useRouter } from 'next/router';\nimport { useQuery } from '@apollo/client';\nimport BlazeButton from '@blaze-react/button';\nimport { parseUrl } from 'query-string';\nimport { getItemList } from '../../../application/query';\nimport { useItemListId } from '../hooks';\nimport { getItemListData, setItemListId, setParamAndRedirect } from '../helpers';\nimport { LIST_ITEM_QUERY_PARAM } from '../constants';\n\nconst ItemListNew = ({ listName, modifier, text }) => {\n const router = useRouter();\n const { query: { [LIST_ITEM_QUERY_PARAM]: listItemId } = {} } = parseUrl(router.asPath);\n\n const { listId } = useItemListId({ listName });\n const listIdToUse = listItemId || listId;\n const { data, error, loading } = useQuery(getItemList, {\n variables: { id: listIdToUse },\n skip: !listIdToUse\n });\n\n if (loading) return '';\n if (error) return error.message;\n\n const listItems = getItemListData(data);\n if (!listItems.length) return '';\n\n const handleClick = () => {\n setItemListId(listName, '');\n setParamAndRedirect(router);\n };\n\n return (\n <BlazeButton className={`item-list-new ${modifier}`} onClick={handleClick}>\n {text}\n </BlazeButton>\n );\n};\n\nItemListNew.propTypes = {\n listName: PropTypes.string.isRequired,\n modifier: PropTypes.string,\n text: PropTypes.string.isRequired\n};\n\nItemListNew.defaultProps = {\n modifier: ''\n};\n\nexport default ItemListNew;\n"],"mappings":"AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,OAAOC,SAAS,MAAM,YAAY;AAClC,SAASC,SAAS,QAAQ,aAAa;AACvC,SAASC,QAAQ,QAAQ,gBAAgB;AACzC,OAAOC,WAAW,MAAM,qBAAqB;AAC7C,SAASC,QAAQ,QAAQ,cAAc;AACvC,SAASC,WAAW,QAAQ,4BAA4B;AACxD,SAASC,aAAa,QAAQ,UAAU;AACxC,SAASC,eAAe,EAAEC,aAAa,EAAEC,mBAAmB,QAAQ,YAAY;AAChF,SAASC,qBAAqB,QAAQ,cAAc;AAEpD,MAAMC,WAAW,GAAGA,CAAC;EAAEC,QAAQ;EAAEC,QAAQ;EAAEC;AAAK,CAAC,KAAK;EACpD,MAAMC,MAAM,GAAGd,SAAS,CAAC,CAAC;EAC1B,MAAM;IAAEe,KAAK,EAAE;MAAE,CAACN,qBAAqB,GAAGO;IAAW,CAAC,GAAG,CAAC;EAAE,CAAC,GAAGb,QAAQ,CAACW,MAAM,CAACG,MAAM,CAAC;EAEvF,MAAM;IAAEC;EAAO,CAAC,GAAGb,aAAa,CAAC;IAAEM;EAAS,CAAC,CAAC;EAC9C,MAAMQ,WAAW,GAAGH,UAAU,IAAIE,MAAM;EACxC,MAAM;IAAEE,IAAI;IAAEC,KAAK;IAAEC;EAAQ,CAAC,GAAGrB,QAAQ,CAACG,WAAW,EAAE;IACrDmB,SAAS,EAAE;MAAEC,EAAE,EAAEL;IAAY,CAAC;IAC9BM,IAAI,EAAE,CAACN;EACT,CAAC,CAAC;EAEF,IAAIG,OAAO,EAAE,OAAO,EAAE;EACtB,IAAID,KAAK,EAAE,OAAOA,KAAK,CAACK,OAAO;EAE/B,MAAMC,SAAS,GAAGrB,eAAe,CAACc,IAAI,CAAC;EACvC,IAAI,CAACO,SAAS,CAACC,MAAM,EAAE,OAAO,EAAE;EAEhC,MAAMC,WAAW,GAAGA,CAAA,KAAM;IACxBtB,aAAa,CAACI,QAAQ,EAAE,EAAE,CAAC;IAC3BH,mBAAmB,CAACM,MAAM,CAAC;EAC7B,CAAC;EAED,oBACEhB,KAAA,CAAAgC,aAAA,CAAC5B,WAAW;IAAC6B,SAAS,EAAG,iBAAgBnB,QAAS,EAAE;IAACoB,OAAO,EAAEH;EAAY,GACvEhB,IACU,CAAC;AAElB,CAAC;AAEDH,WAAW,CAACuB,SAAS,GAAG;EACtBtB,QAAQ,EAAEZ,SAAS,CAACmC,MAAM,CAACC,UAAU;EACrCvB,QAAQ,EAAEb,SAAS,CAACmC,MAAM;EAC1BrB,IAAI,EAAEd,SAAS,CAACmC,MAAM,CAACC;AACzB,CAAC;AAEDzB,WAAW,CAAC0B,YAAY,GAAG;EACzBxB,QAAQ,EAAE;AACZ,CAAC;AAED,eAAeF,WAAW"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CardsRender.js","names":["React","Fragment","PropTypes","CardsRenderWrapper","BANNER","Wrapper","splitChildren","appendImages","getPropsToDisplayModifiers","ListPagination","LOAD_MORE","useGetImages","CardsRender","_ref","orderedListData","gridModifier","children","entity","banner","omitWrappers","propsToDisplay","paginationType","parent","hasBanner","gtmData","itemsToDisplay","props","_objectWithoutProperties","_excluded","name","dataForGtm","regularChildren","gtmChildren","bannerProps","_objectSpread","type","propsToDisplayModifiers","imageIds","map","imageId","filter","Boolean","data","imagesData","loading","imagesLoading","updatedListWithImages","WrapperToUse","createElement","className","_extends","listProps","cardChildren","propTypes","string","isRequired","object","array","bool","oneOfType","defaultProps"],"sources":["../../../../../src/components/List/components/Cards/CardsRender.js"],"sourcesContent":["import React, { Fragment } from 'react';\nimport PropTypes from 'prop-types';\nimport CardsRenderWrapper from './CardsRenderWrapper';\nimport { BANNER } from '../../constants';\nimport Wrapper from '../../../Wrapper';\nimport { splitChildren, appendImages } from '../../../../helpers';\nimport { getPropsToDisplayModifiers } from '../../../../utils';\nimport ListPagination from '../Pagination';\nimport { LOAD_MORE } from '../../../../constants';\nimport { useGetImages } from '../../../../hooks';\n\nconst CardsRender = ({\n orderedListData,\n gridModifier,\n children,\n entity,\n banner,\n omitWrappers,\n propsToDisplay,\n paginationType,\n parent,\n hasBanner,\n gtmData,\n itemsToDisplay,\n ...props\n}) => {\n const { name } = props;\n const dataForGtm = gtmData || orderedListData;\n\n const { regularChildren, gtmChildren } = splitChildren(children, dataForGtm, entity, {\n name\n });\n\n const bannerProps = banner\n ? { parent, hasBanner, entity, propsToDisplay, ...banner, type: BANNER }\n : null;\n\n const propsToDisplayModifiers = getPropsToDisplayModifiers(propsToDisplay);\n const imageIds = itemsToDisplay.map(({ imageId }) => imageId).filter(Boolean);\n const { data: imagesData, loading: imagesLoading } = useGetImages(imageIds, true);\n if (imagesLoading) return '';\n const updatedListWithImages = appendImages(imagesData, orderedListData, itemsToDisplay);\n const WrapperToUse = omitWrappers ? Fragment : Wrapper;\n\n return (\n <>\n <WrapperToUse className=\"list list--compact\">\n <CardsRenderWrapper\n orderedListData={updatedListWithImages}\n listProps={props}\n bannerProps={bannerProps}\n cardChildren={regularChildren}\n gtmChildren={gtmChildren}\n omitWrappers={omitWrappers}\n propsToDisplay={propsToDisplay}\n propsToDisplayModifiers={propsToDisplayModifiers}\n gridModifier={gridModifier}\n entity={entity}\n parent={parent}\n {...props}\n />\n </WrapperToUse>\n\n {paginationType === LOAD_MORE && (\n <ListPagination paginationType={paginationType} parent={parent} {...props} />\n )}\n </>\n );\n};\n\nCardsRender.propTypes = {\n name: PropTypes.string.isRequired,\n parent: PropTypes.object.isRequired,\n orderedListData: PropTypes.array.isRequired,\n propsToDisplay: PropTypes.array.isRequired,\n paginationType: PropTypes.string.isRequired,\n hasBanner: PropTypes.bool,\n banner: PropTypes.object,\n omitWrappers: PropTypes.bool,\n gridModifier: PropTypes.string,\n entity: PropTypes.string.isRequired,\n children: PropTypes.oneOfType([PropTypes.array, PropTypes.object]),\n gtmData: PropTypes.array,\n itemsToDisplay: PropTypes.array\n};\n\nCardsRender.defaultProps = {\n gridModifier: '',\n children: null,\n hasBanner: false,\n banner: null,\n omitWrappers: false,\n gtmData: null,\n itemsToDisplay: []\n};\n\nexport default CardsRender;\n"],"mappings":";;;;;;AAAA,OAAOA,KAAK,IAAIC,QAAQ,QAAQ,OAAO;AACvC,OAAOC,SAAS,MAAM,YAAY;AAClC,OAAOC,kBAAkB,MAAM,sBAAsB;AACrD,SAASC,MAAM,QAAQ,iBAAiB;AACxC,OAAOC,OAAO,MAAM,kBAAkB;AACtC,SAASC,aAAa,EAAEC,YAAY,QAAQ,qBAAqB;AACjE,SAASC,0BAA0B,QAAQ,mBAAmB;AAC9D,OAAOC,cAAc,MAAM,eAAe;AAC1C,SAASC,SAAS,QAAQ,uBAAuB;AACjD,SAASC,YAAY,QAAQ,mBAAmB;AAEhD,MAAMC,WAAW,GAAGC,IAAA,IAcd;EAAA,IAde;MACnBC,eAAe;MACfC,YAAY;MACZC,QAAQ;MACRC,MAAM;MACNC,MAAM;MACNC,YAAY;MACZC,cAAc;MACdC,cAAc;MACdC,MAAM;MACNC,SAAS;MACTC,OAAO;MACPC;IAEF,CAAC,GAAAZ,IAAA;IADIa,KAAK,GAAAC,wBAAA,CAAAd,IAAA,EAAAe,SAAA;EAER,MAAM;IAAEC;EAAK,CAAC,GAAGH,KAAK;EACtB,MAAMI,UAAU,GAAGN,OAAO,IAAIV,eAAe;EAE7C,MAAM;IAAEiB,eAAe;IAAEC;EAAY,CAAC,GAAG1B,aAAa,CAACU,QAAQ,EAAEc,UAAU,EAAEb,MAAM,EAAE;IACnFY;EACF,CAAC,CAAC;EAEF,MAAMI,WAAW,GAAGf,MAAM,GAAAgB,aAAA,CAAAA,aAAA;IACpBZ,MAAM;IAAEC,SAAS;IAAEN,MAAM;IAAEG;EAAc,GAAKF,MAAM;IAAEiB,IAAI,EAAE/B;EAAM,KACpE,IAAI;EAER,MAAMgC,uBAAuB,GAAG5B,0BAA0B,CAACY,cAAc,CAAC;EAC1E,MAAMiB,QAAQ,GAAGZ,cAAc,CAACa,GAAG,CAAC,CAAC;IAAEC;EAAQ,CAAC,KAAKA,OAAO,CAAC,CAACC,MAAM,CAACC,OAAO,CAAC;EAC7E,MAAM;IAAEC,IAAI,EAAEC,UAAU;IAAEC,OAAO,EAAEC;EAAc,CAAC,GAAGlC,YAAY,CAAC0B,QAAQ,EAAE,IAAI,CAAC;
|
|
1
|
+
{"version":3,"file":"CardsRender.js","names":["React","Fragment","PropTypes","CardsRenderWrapper","BANNER","Wrapper","splitChildren","appendImages","getPropsToDisplayModifiers","ListPagination","LOAD_MORE","useGetImages","CardsRender","_ref","orderedListData","gridModifier","children","entity","banner","omitWrappers","propsToDisplay","paginationType","parent","hasBanner","gtmData","itemsToDisplay","props","_objectWithoutProperties","_excluded","name","dataForGtm","regularChildren","gtmChildren","bannerProps","_objectSpread","type","propsToDisplayModifiers","imageIds","map","imageId","filter","Boolean","data","imagesData","loading","imagesLoading","updatedListWithImages","WrapperToUse","createElement","className","_extends","listProps","cardChildren","propTypes","string","isRequired","object","array","bool","oneOfType","defaultProps"],"sources":["../../../../../src/components/List/components/Cards/CardsRender.js"],"sourcesContent":["import React, { Fragment } from 'react';\nimport PropTypes from 'prop-types';\nimport CardsRenderWrapper from './CardsRenderWrapper';\nimport { BANNER } from '../../constants';\nimport Wrapper from '../../../Wrapper';\nimport { splitChildren, appendImages } from '../../../../helpers';\nimport { getPropsToDisplayModifiers } from '../../../../utils';\nimport ListPagination from '../Pagination';\nimport { LOAD_MORE } from '../../../../constants';\nimport { useGetImages } from '../../../../hooks';\n\nconst CardsRender = ({\n orderedListData,\n gridModifier,\n children,\n entity,\n banner,\n omitWrappers,\n propsToDisplay,\n paginationType,\n parent,\n hasBanner,\n gtmData,\n itemsToDisplay,\n ...props\n}) => {\n const { name } = props;\n const dataForGtm = gtmData || orderedListData;\n\n const { regularChildren, gtmChildren } = splitChildren(children, dataForGtm, entity, {\n name\n });\n\n const bannerProps = banner\n ? { parent, hasBanner, entity, propsToDisplay, ...banner, type: BANNER }\n : null;\n\n const propsToDisplayModifiers = getPropsToDisplayModifiers(propsToDisplay);\n const imageIds = itemsToDisplay.map(({ imageId }) => imageId).filter(Boolean);\n const { data: imagesData, loading: imagesLoading } = useGetImages(imageIds, true);\n\n if (imagesLoading) return '';\n\n const updatedListWithImages = appendImages(imagesData, orderedListData, itemsToDisplay);\n const WrapperToUse = omitWrappers ? Fragment : Wrapper;\n\n return (\n <>\n <WrapperToUse className=\"list list--compact\">\n <CardsRenderWrapper\n orderedListData={updatedListWithImages}\n listProps={props}\n bannerProps={bannerProps}\n cardChildren={regularChildren}\n gtmChildren={gtmChildren}\n omitWrappers={omitWrappers}\n propsToDisplay={propsToDisplay}\n propsToDisplayModifiers={propsToDisplayModifiers}\n gridModifier={gridModifier}\n entity={entity}\n parent={parent}\n {...props}\n />\n </WrapperToUse>\n\n {paginationType === LOAD_MORE && (\n <ListPagination paginationType={paginationType} parent={parent} {...props} />\n )}\n </>\n );\n};\n\nCardsRender.propTypes = {\n name: PropTypes.string.isRequired,\n parent: PropTypes.object.isRequired,\n orderedListData: PropTypes.array.isRequired,\n propsToDisplay: PropTypes.array.isRequired,\n paginationType: PropTypes.string.isRequired,\n hasBanner: PropTypes.bool,\n banner: PropTypes.object,\n omitWrappers: PropTypes.bool,\n gridModifier: PropTypes.string,\n entity: PropTypes.string.isRequired,\n children: PropTypes.oneOfType([PropTypes.array, PropTypes.object]),\n gtmData: PropTypes.array,\n itemsToDisplay: PropTypes.array\n};\n\nCardsRender.defaultProps = {\n gridModifier: '',\n children: null,\n hasBanner: false,\n banner: null,\n omitWrappers: false,\n gtmData: null,\n itemsToDisplay: []\n};\n\nexport default CardsRender;\n"],"mappings":";;;;;;AAAA,OAAOA,KAAK,IAAIC,QAAQ,QAAQ,OAAO;AACvC,OAAOC,SAAS,MAAM,YAAY;AAClC,OAAOC,kBAAkB,MAAM,sBAAsB;AACrD,SAASC,MAAM,QAAQ,iBAAiB;AACxC,OAAOC,OAAO,MAAM,kBAAkB;AACtC,SAASC,aAAa,EAAEC,YAAY,QAAQ,qBAAqB;AACjE,SAASC,0BAA0B,QAAQ,mBAAmB;AAC9D,OAAOC,cAAc,MAAM,eAAe;AAC1C,SAASC,SAAS,QAAQ,uBAAuB;AACjD,SAASC,YAAY,QAAQ,mBAAmB;AAEhD,MAAMC,WAAW,GAAGC,IAAA,IAcd;EAAA,IAde;MACnBC,eAAe;MACfC,YAAY;MACZC,QAAQ;MACRC,MAAM;MACNC,MAAM;MACNC,YAAY;MACZC,cAAc;MACdC,cAAc;MACdC,MAAM;MACNC,SAAS;MACTC,OAAO;MACPC;IAEF,CAAC,GAAAZ,IAAA;IADIa,KAAK,GAAAC,wBAAA,CAAAd,IAAA,EAAAe,SAAA;EAER,MAAM;IAAEC;EAAK,CAAC,GAAGH,KAAK;EACtB,MAAMI,UAAU,GAAGN,OAAO,IAAIV,eAAe;EAE7C,MAAM;IAAEiB,eAAe;IAAEC;EAAY,CAAC,GAAG1B,aAAa,CAACU,QAAQ,EAAEc,UAAU,EAAEb,MAAM,EAAE;IACnFY;EACF,CAAC,CAAC;EAEF,MAAMI,WAAW,GAAGf,MAAM,GAAAgB,aAAA,CAAAA,aAAA;IACpBZ,MAAM;IAAEC,SAAS;IAAEN,MAAM;IAAEG;EAAc,GAAKF,MAAM;IAAEiB,IAAI,EAAE/B;EAAM,KACpE,IAAI;EAER,MAAMgC,uBAAuB,GAAG5B,0BAA0B,CAACY,cAAc,CAAC;EAC1E,MAAMiB,QAAQ,GAAGZ,cAAc,CAACa,GAAG,CAAC,CAAC;IAAEC;EAAQ,CAAC,KAAKA,OAAO,CAAC,CAACC,MAAM,CAACC,OAAO,CAAC;EAC7E,MAAM;IAAEC,IAAI,EAAEC,UAAU;IAAEC,OAAO,EAAEC;EAAc,CAAC,GAAGlC,YAAY,CAAC0B,QAAQ,EAAE,IAAI,CAAC;EAEjF,IAAIQ,aAAa,EAAE,OAAO,EAAE;EAE5B,MAAMC,qBAAqB,GAAGvC,YAAY,CAACoC,UAAU,EAAE7B,eAAe,EAAEW,cAAc,CAAC;EACvF,MAAMsB,YAAY,GAAG5B,YAAY,GAAGlB,QAAQ,GAAGI,OAAO;EAEtD,oBACEL,KAAA,CAAAgD,aAAA,CAAAhD,KAAA,CAAAC,QAAA,qBACED,KAAA,CAAAgD,aAAA,CAACD,YAAY;IAACE,SAAS,EAAC;EAAoB,gBAC1CjD,KAAA,CAAAgD,aAAA,CAAC7C,kBAAkB,EAAA+C,QAAA;IACjBpC,eAAe,EAAEgC,qBAAsB;IACvCK,SAAS,EAAEzB,KAAM;IACjBO,WAAW,EAAEA,WAAY;IACzBmB,YAAY,EAAErB,eAAgB;IAC9BC,WAAW,EAAEA,WAAY;IACzBb,YAAY,EAAEA,YAAa;IAC3BC,cAAc,EAAEA,cAAe;IAC/BgB,uBAAuB,EAAEA,uBAAwB;IACjDrB,YAAY,EAAEA,YAAa;IAC3BE,MAAM,EAAEA,MAAO;IACfK,MAAM,EAAEA;EAAO,GACXI,KAAK,CACV,CACW,CAAC,EAEdL,cAAc,KAAKX,SAAS,iBAC3BV,KAAA,CAAAgD,aAAA,CAACvC,cAAc,EAAAyC,QAAA;IAAC7B,cAAc,EAAEA,cAAe;IAACC,MAAM,EAAEA;EAAO,GAAKI,KAAK,CAAG,CAE9E,CAAC;AAEP,CAAC;AAEDd,WAAW,CAACyC,SAAS,GAAG;EACtBxB,IAAI,EAAE3B,SAAS,CAACoD,MAAM,CAACC,UAAU;EACjCjC,MAAM,EAAEpB,SAAS,CAACsD,MAAM,CAACD,UAAU;EACnCzC,eAAe,EAAEZ,SAAS,CAACuD,KAAK,CAACF,UAAU;EAC3CnC,cAAc,EAAElB,SAAS,CAACuD,KAAK,CAACF,UAAU;EAC1ClC,cAAc,EAAEnB,SAAS,CAACoD,MAAM,CAACC,UAAU;EAC3ChC,SAAS,EAAErB,SAAS,CAACwD,IAAI;EACzBxC,MAAM,EAAEhB,SAAS,CAACsD,MAAM;EACxBrC,YAAY,EAAEjB,SAAS,CAACwD,IAAI;EAC5B3C,YAAY,EAAEb,SAAS,CAACoD,MAAM;EAC9BrC,MAAM,EAAEf,SAAS,CAACoD,MAAM,CAACC,UAAU;EACnCvC,QAAQ,EAAEd,SAAS,CAACyD,SAAS,CAAC,CAACzD,SAAS,CAACuD,KAAK,EAAEvD,SAAS,CAACsD,MAAM,CAAC,CAAC;EAClEhC,OAAO,EAAEtB,SAAS,CAACuD,KAAK;EACxBhC,cAAc,EAAEvB,SAAS,CAACuD;AAC5B,CAAC;AAED7C,WAAW,CAACgD,YAAY,GAAG;EACzB7C,YAAY,EAAE,EAAE;EAChBC,QAAQ,EAAE,IAAI;EACdO,SAAS,EAAE,KAAK;EAChBL,MAAM,EAAE,IAAI;EACZC,YAAY,EAAE,KAAK;EACnBK,OAAO,EAAE,IAAI;EACbC,cAAc,EAAE;AAClB,CAAC;AAED,eAAeb,WAAW"}
|
|
@@ -23,8 +23,6 @@ const FullRender = _ref => {
|
|
|
23
23
|
graphqlEntityMap
|
|
24
24
|
} = _ref,
|
|
25
25
|
props = _objectWithoutProperties(_ref, _excluded);
|
|
26
|
-
const contextProps = useContext(MainContext);
|
|
27
|
-
const pageBuilderID = uuid();
|
|
28
26
|
const {
|
|
29
27
|
parent,
|
|
30
28
|
entity,
|
|
@@ -32,6 +30,8 @@ const FullRender = _ref => {
|
|
|
32
30
|
banner,
|
|
33
31
|
hasBanner
|
|
34
32
|
} = props;
|
|
33
|
+
const contextProps = useContext(MainContext);
|
|
34
|
+
const pageBuilderID = uuid();
|
|
35
35
|
const bannerProps = banner ? _objectSpread(_objectSpread({
|
|
36
36
|
hasBanner,
|
|
37
37
|
parent,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FullRender.js","names":["React","Fragment","useContext","MainContext","MainContextProvider","PropTypes","uuid","FullRenderItem","ListPagination","LOAD_MORE","BANNER","Wrapper","checkIfShouldRenderBanner","FullRender","_ref","orderedListData","omitWrappers","paginationType","graphqlEntityMap","props","_objectWithoutProperties","_excluded","
|
|
1
|
+
{"version":3,"file":"FullRender.js","names":["React","Fragment","useContext","MainContext","MainContextProvider","PropTypes","uuid","FullRenderItem","ListPagination","LOAD_MORE","BANNER","Wrapper","checkIfShouldRenderBanner","FullRender","_ref","orderedListData","omitWrappers","paginationType","graphqlEntityMap","props","_objectWithoutProperties","_excluded","parent","entity","propsToDisplay","banner","hasBanner","contextProps","pageBuilderID","bannerProps","_objectSpread","type","bannerIndex","WrapperToUse","createElement","value","isPreview","className","map","_ref2","i","id","__typename","dataEntity","entityProps","_excluded2","shouldRenderBanner","_extends","key","index","itemId","propTypes","array","isRequired","string","object","bool","defaultProps"],"sources":["../../../../../src/components/List/components/Full/FullRender.js"],"sourcesContent":["import React, { Fragment, useContext } from 'react';\nimport { MainContext, MainContextProvider } from '@blaze-cms/nextjs-components';\nimport PropTypes from 'prop-types';\nimport uuid from 'uuid/v1';\nimport FullRenderItem from './FullRenderItem';\nimport ListPagination from '../Pagination';\nimport { LOAD_MORE } from '../../../../constants';\nimport { BANNER } from '../../constants';\nimport Wrapper from '../../../Wrapper';\nimport { checkIfShouldRenderBanner } from '../helpers';\n\nconst FullRender = ({\n orderedListData,\n omitWrappers,\n paginationType,\n graphqlEntityMap,\n ...props\n}) => {\n const { parent, entity, propsToDisplay, banner, hasBanner } = props;\n\n const contextProps = useContext(MainContext);\n const pageBuilderID = uuid();\n const bannerProps = banner\n ? { hasBanner, parent, entity, propsToDisplay, ...banner, type: BANNER }\n : null;\n let bannerIndex = 0;\n const WrapperToUse = omitWrappers ? Fragment : Wrapper;\n\n return (\n <MainContextProvider value={{ ...contextProps, isPreview: false }}>\n <WrapperToUse className=\"list list--full\">\n {orderedListData.map(({ id, __typename: dataEntity, ...entityProps }, i) => {\n const shouldRenderBanner = !!bannerProps && checkIfShouldRenderBanner(i, bannerProps);\n if (shouldRenderBanner) bannerIndex += 1;\n\n return (\n <FullRenderItem\n key={id}\n {...props}\n {...entityProps}\n entity={graphqlEntityMap[dataEntity]}\n index={i}\n itemId={id}\n pageBuilderID={pageBuilderID}\n entityProps={entityProps}\n shouldRenderBanner={shouldRenderBanner}\n bannerProps={bannerProps}\n bannerIndex={bannerIndex}\n />\n );\n })}\n </WrapperToUse>\n\n {paginationType === LOAD_MORE && (\n <ListPagination paginationType={paginationType} {...props} />\n )}\n </MainContextProvider>\n );\n};\n\nFullRender.propTypes = {\n orderedListData: PropTypes.array.isRequired,\n paginationType: PropTypes.string.isRequired,\n parent: PropTypes.object.isRequired,\n propsToDisplay: PropTypes.array.isRequired,\n entity: PropTypes.string.isRequired,\n omitWrappers: PropTypes.bool,\n hasBanner: PropTypes.bool,\n banner: PropTypes.object,\n graphqlEntityMap: PropTypes.object.isRequired\n};\n\nFullRender.defaultProps = {\n omitWrappers: false,\n hasBanner: false,\n banner: null\n};\n\nexport default FullRender;\n"],"mappings":"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"}
|