@blaze-cms/react-page-builder 0.146.0-alpha.8 → 0.146.0-alpha.9

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 CHANGED
@@ -3,6 +3,22 @@
3
3
  All notable changes to this project will be documented in this file.
4
4
  See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
5
5
 
6
+ # [0.146.0-alpha.9](https://github.com/thebyte9/blaze/compare/v0.146.0-alpha.8...v0.146.0-alpha.9) (2024-09-27)
7
+
8
+
9
+ ### Bug Fixes
10
+
11
+ * fixed url not being decoded when set on useEffect in SearchFilterContainer ([#4492](https://github.com/thebyte9/blaze/issues/4492)) ([64ba7a0](https://github.com/thebyte9/blaze/commit/64ba7a0260ee657561df5273fac3e537d6845db0))
12
+
13
+
14
+ ### Features
15
+
16
+ * improve card click wrapper feature flag to make valid html ([#4495](https://github.com/thebyte9/blaze/issues/4495)) ([cc01f4d](https://github.com/thebyte9/blaze/commit/cc01f4dae15158c0896d48ed05cb32a64c8caa1b))
17
+
18
+
19
+
20
+
21
+
6
22
  # [0.146.0-alpha.8](https://github.com/thebyte9/blaze/compare/v0.146.0-alpha.7...v0.146.0-alpha.8) (2024-09-24)
7
23
 
8
24
 
@@ -117,18 +117,23 @@ var Card = function Card(_ref) {
117
117
  if (shouldTriggerRouteChange) router.push("/Resolver", url);
118
118
  };
119
119
 
120
- // todo: remove temp env var flag once widely tested BLAZE_PB_ADD_CLICK_TO_CARDS
121
- var clickProps = url && process.env.BLAZE_PB_ADD_CLICK_TO_CARDS ? {
120
+ // todo: asses whether we make link wrapper default after wider testing with BLAZE_PB_ADD_CLICK_TO_CARDS
121
+ var useLinkWrapper = url && process.env.BLAZE_PB_ADD_CLICK_TO_CARDS;
122
+ var clickProps = useLinkWrapper ? {
122
123
  onClick: handleCardClick,
123
- role: 'button'
124
+ href: url,
125
+ ariaLabel: name
124
126
  } : {};
125
- return /*#__PURE__*/_react["default"].createElement(Wrapper, wrapperProps, /*#__PURE__*/_react["default"].createElement("div", (0, _extends2["default"])({
127
+ var CardWrapper = useLinkWrapper ? _BlazeLink["default"] : 'div';
128
+ var childLinkHref = useLinkWrapper ? undefined : url;
129
+ var ChildLinkWrapper = useLinkWrapper ? 'div' : _BlazeLink["default"];
130
+ return /*#__PURE__*/_react["default"].createElement(Wrapper, wrapperProps, /*#__PURE__*/_react["default"].createElement(CardWrapper, (0, _extends2["default"])({
126
131
  className: classNameWithModifiers
127
132
  }, clickProps), shouldDisplayThumbnail && /*#__PURE__*/_react["default"].createElement("div", {
128
133
  className: (0, _helpers.getModifiers)('card__image', modifiers)
129
- }, /*#__PURE__*/_react["default"].createElement(_BlazeLink["default"], {
134
+ }, /*#__PURE__*/_react["default"].createElement(ChildLinkWrapper, {
130
135
  gtmId: gtmId,
131
- href: url,
136
+ href: childLinkHref,
132
137
  className: "card__image-link",
133
138
  scroll: true
134
139
  }, /*#__PURE__*/_react["default"].createElement(_LazyImage["default"], {
@@ -140,7 +145,7 @@ var Card = function Card(_ref) {
140
145
  className: contentWrapperModifier
141
146
  }, /*#__PURE__*/_react["default"].createElement("div", {
142
147
  className: (0, _helpers.getModifiers)('card__content', modifiers)
143
- }, displayCategory && (publishedListingPage ? /*#__PURE__*/_react["default"].createElement(_BlazeLink["default"], {
148
+ }, displayCategory && (publishedListingPage ? /*#__PURE__*/_react["default"].createElement(ChildLinkWrapper, {
144
149
  gtmId: gtmId,
145
150
  href: publishedListingPage,
146
151
  className: "badge badge--label",
@@ -149,10 +154,10 @@ var Card = function Card(_ref) {
149
154
  className: "badge badge--label"
150
155
  }, label)), displayTitle && /*#__PURE__*/_react["default"].createElement("div", {
151
156
  className: titleWrapperModifier
152
- }, /*#__PURE__*/_react["default"].createElement(_BlazeLink["default"], {
157
+ }, /*#__PURE__*/_react["default"].createElement(ChildLinkWrapper, {
153
158
  title: linkTitle,
154
159
  gtmId: gtmId,
155
- href: url,
160
+ href: childLinkHref,
156
161
  scroll: true
157
162
  }, headline)), !!pageBuilderComponents.length && /*#__PURE__*/_react["default"].createElement("div", {
158
163
  className: "card__item card__item--full",
@@ -1 +1 @@
1
- {"version":3,"file":"Card.js","names":["_react","_interopRequireWildcard","require","_router","_propTypes","_interopRequireDefault","_BlazeLink","_ClickWrapper","_helpers","_LazyImage","_helpers2","_constants","_buildPBComponents","_excluded","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","_typeof","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","Card","_ref","id","image","name","url","graphqlEntityMap","entityProps","alternativePreHeader","alternativeHeadline","category","modifier","parsedPropsToDisplay","propsToDisplay","propsToDisplayModifiers","gtmId","style","priority","cardChildren","gtmChildren","displayCategory","displayThumbnail","displayTitle","enableOverlay","enableCarousel","titleOverlayModifier","overlayModifier","gridModifier","pageBuilderComponents","dataEntity","__typename","otherProps","_objectWithoutProperties2","entity","updateChildrensParent","parent","itemId","itemEntity","router","useRouter","_getImageDefinedProps","getImageDefinedProps","imageSrc","shouldDisplayThumbnail","altText","modifiers","getInitialModifiers","_getCategoryDefinedPr","getCategoryDefinedProps","publishedListingPage","preHeader","label","headline","linkTitle","dynamicSizeKey","useDynamicSizeKey","CARD_STRING","_getClickWrapperOptio","getClickWrapperOptions","shouldUseClickWrapper","wrapperProps","Wrapper","ClickWrapper","Fragment","classNameWithModifiers","getModifiers","contentWrapperModifier","concat","titleWrapperModifier","handleCardClick","clickEventTag","target","tagName","toLowerCase","clickEventRole","role","shouldTriggerRouteChange","CARD_CHILDREN_WITH_LINKS","find","childTag","push","clickProps","process","env","BLAZE_PB_ADD_CLICK_TO_CARDS","onClick","createElement","_extends2","className","href","scroll","src","alt","sizeKey","title","length","BuildPBComponents","map","prop","dynamicKey","propModifier","_ref2","htmlAttribute","extraProps","props","children","encodeURIComponent","key","renderChildren","propTypes","PropTypes","string","isRequired","shape","data","object","array","bool","oneOfType","arrayOf","node","defaultProps","_ref3","hasAlternativePreHeader","getPublishedListingUrl","_ref4","_ref5","_ref6","sponsored","featured","_default","exports"],"sources":["../../../src/components/Card/Card.js"],"sourcesContent":["import React, { Fragment } from 'react';\nimport { useRouter } from 'next/router';\nimport PropTypes from 'prop-types';\nimport BlazeLink from '../BlazeLink';\nimport ClickWrapper from '../ClickWrapper';\nimport {\n getModifiers,\n renderChildren,\n updateChildrensParent,\n getClickWrapperOptions\n} from '../../helpers';\nimport LazyImage from '../LazyImage';\nimport { getPublishedListingUrl, useDynamicSizeKey } from './helpers';\nimport { CARD_STRING, CARD_CHILDREN_WITH_LINKS } from './constants';\nimport BuildPBComponents from '../../hooks/helpers/buildPBComponents';\n\nconst Card = ({\n id,\n image,\n name,\n url,\n graphqlEntityMap,\n entityProps,\n alternativePreHeader,\n alternativeHeadline,\n category,\n modifier,\n parsedPropsToDisplay,\n propsToDisplay,\n propsToDisplayModifiers,\n gtmId,\n style,\n priority,\n cardChildren,\n gtmChildren,\n displayCategory,\n displayThumbnail,\n displayTitle,\n enableOverlay,\n enableCarousel,\n titleOverlayModifier,\n overlayModifier,\n gridModifier,\n pageBuilderComponents,\n __typename: dataEntity,\n ...otherProps\n}) => {\n const entity = graphqlEntityMap[dataEntity];\n updateChildrensParent(cardChildren, id, entity);\n const parent = { itemId: id, itemEntity: entity };\n const router = useRouter();\n const { imageSrc, shouldDisplayThumbnail, altText } = getImageDefinedProps({\n image,\n displayThumbnail,\n name\n });\n\n const modifiers = getInitialModifiers({ modifier, style, otherProps });\n\n const { publishedListingPage, preHeader, label, headline } = getCategoryDefinedProps({\n alternativePreHeader,\n category,\n entity,\n alternativeHeadline,\n displayCategory,\n name\n });\n\n const linkTitle = name;\n\n const dynamicSizeKey = useDynamicSizeKey(CARD_STRING, { style, gridModifier, modifier });\n\n const { shouldUseClickWrapper, wrapperProps } = getClickWrapperOptions(\n gtmChildren,\n entityProps,\n id\n );\n\n const Wrapper = shouldUseClickWrapper ? ClickWrapper : Fragment;\n\n const classNameWithModifiers = getModifiers(CARD_STRING, modifiers);\n\n const contentWrapperModifier = `${getModifiers('card__content-wrapper', modifiers)} ${\n enableOverlay && enableCarousel ? overlayModifier : ''\n }`;\n\n const titleWrapperModifier = `${getModifiers('card__title', modifiers)} ${\n enableOverlay && enableCarousel ? titleOverlayModifier : ''\n }`;\n\n const handleCardClick = e => {\n if (!url) return;\n\n const clickEventTag = e.target.tagName.toLowerCase();\n const clickEventRole = e.target.role;\n const shouldTriggerRouteChange =\n clickEventRole !== 'button' &&\n !CARD_CHILDREN_WITH_LINKS.find(childTag => childTag === clickEventTag);\n if (shouldTriggerRouteChange) router.push(`/Resolver`, url);\n };\n\n // todo: remove temp env var flag once widely tested BLAZE_PB_ADD_CLICK_TO_CARDS\n const clickProps =\n url && process.env.BLAZE_PB_ADD_CLICK_TO_CARDS\n ? {\n onClick: handleCardClick,\n role: 'button'\n }\n : {};\n return (\n <Wrapper {...wrapperProps}>\n <div className={classNameWithModifiers} {...clickProps}>\n {shouldDisplayThumbnail && (\n <div className={getModifiers('card__image', modifiers)}>\n <BlazeLink gtmId={gtmId} href={url} className=\"card__image-link\" scroll>\n <LazyImage\n src={imageSrc}\n alt={altText}\n sizeKey={dynamicSizeKey}\n priority={priority}\n />\n </BlazeLink>\n </div>\n )}\n <div className={contentWrapperModifier}>\n <div className={getModifiers('card__content', modifiers)}>\n {displayCategory &&\n (publishedListingPage ? (\n <BlazeLink\n gtmId={gtmId}\n href={publishedListingPage}\n className=\"badge badge--label\"\n scroll>\n {preHeader.name}\n </BlazeLink>\n ) : (\n <div className=\"badge badge--label\">{label}</div>\n ))}\n {displayTitle && (\n <div className={titleWrapperModifier}>\n <BlazeLink title={linkTitle} gtmId={gtmId} href={url} scroll>\n {headline}\n </BlazeLink>\n </div>\n )}\n {!!pageBuilderComponents.length && (\n <div className=\"card__item card__item--full\" data-testid=\"full-card\">\n {BuildPBComponents(pageBuilderComponents, { parent })}\n </div>\n )}\n {!!parsedPropsToDisplay.length && (\n <div className={getModifiers('card__details', modifiers)}>\n {parsedPropsToDisplay.map((prop, i) => {\n if (!prop) return null;\n\n const dynamicKey = `${id}${i}`;\n const propModifier = propsToDisplayModifiers[i] || '';\n\n const { htmlAttribute } = propsToDisplay[i] || {};\n const extraProps = {};\n if (htmlAttribute && prop.props.children) {\n extraProps[htmlAttribute] = encodeURIComponent(prop.props.children[2]);\n }\n\n return (\n <span key={dynamicKey} className={propModifier} {...extraProps}>\n {prop}\n </span>\n );\n })}\n </div>\n )}\n </div>\n {!!cardChildren && (\n <div className=\"card__child-content\">{renderChildren(cardChildren)}</div>\n )}\n </div>\n </div>\n </Wrapper>\n );\n};\n\nCard.propTypes = {\n id: PropTypes.string.isRequired,\n image: PropTypes.shape({\n url: PropTypes.string,\n data: PropTypes.object\n }),\n graphqlEntityMap: PropTypes.object.isRequired,\n __typename: PropTypes.string.isRequired,\n style: PropTypes.string,\n parsedPropsToDisplay: PropTypes.array,\n propsToDisplay: PropTypes.array,\n propsToDisplayModifiers: PropTypes.array,\n url: PropTypes.string,\n name: PropTypes.string.isRequired,\n entityProps: PropTypes.object,\n gtmId: PropTypes.string,\n alternativePreHeader: PropTypes.shape({\n name: PropTypes.string\n }),\n alternativeHeadline: PropTypes.string,\n category: PropTypes.shape({\n name: PropTypes.string,\n publishedListingPage: PropTypes.shape({\n url: PropTypes.string\n })\n }),\n modifier: PropTypes.string,\n displayCategory: PropTypes.bool.isRequired,\n displayThumbnail: PropTypes.bool.isRequired,\n displayTitle: PropTypes.bool.isRequired,\n enableCarousel: PropTypes.bool,\n enableOverlay: PropTypes.bool,\n overlayModifier: PropTypes.string,\n titleOverlayModifier: PropTypes.string,\n cardChildren: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.node), PropTypes.node]),\n gtmChildren: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.node), PropTypes.node]),\n gridModifier: PropTypes.string,\n priority: PropTypes.bool,\n pageBuilderComponents: PropTypes.array\n};\n\nCard.defaultProps = {\n entityProps: {},\n pageBuilderComponents: [],\n image: {\n url: null,\n data: {}\n },\n gtmId: '',\n style: 'portrait',\n parsedPropsToDisplay: [],\n propsToDisplay: [],\n propsToDisplayModifiers: [],\n url: '',\n alternativePreHeader: null,\n alternativeHeadline: '',\n category: null,\n modifier: '',\n cardChildren: [],\n gtmChildren: [],\n gridModifier: '',\n priority: false,\n overlayModifier: '',\n titleOverlayModifier: '',\n enableOverlay: false,\n enableCarousel: false\n};\n\nconst getCategoryDefinedProps = ({\n alternativePreHeader,\n category,\n entity,\n alternativeHeadline,\n displayCategory,\n name\n}) => {\n const hasAlternativePreHeader = alternativePreHeader && alternativePreHeader.name;\n const preHeader =\n alternativeHeadline && hasAlternativePreHeader ? alternativePreHeader : category;\n const publishedListingPage = getPublishedListingUrl(preHeader);\n const label = preHeader ? preHeader.name : entity;\n const headline =\n !displayCategory || !hasAlternativePreHeader ? name : alternativeHeadline || name;\n return { publishedListingPage, preHeader, label, headline };\n};\n\nconst getImageDefinedProps = ({ image, displayThumbnail, name }) => {\n const { url: imageSrc, data } = image || {};\n const shouldDisplayThumbnail = displayThumbnail && imageSrc;\n const altText = (data && data.altText) || name;\n return { imageSrc, shouldDisplayThumbnail, altText };\n};\n\nconst getInitialModifiers = ({ modifier, style, otherProps }) => {\n const modifiers = [modifier, style];\n const { sponsored, featured } = otherProps;\n if (sponsored) modifiers.push('sponsored');\n if (featured) modifiers.push('featured');\n\n return modifiers;\n};\n\nexport default Card;\n"],"mappings":"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"}
1
+ {"version":3,"file":"Card.js","names":["_react","_interopRequireWildcard","require","_router","_propTypes","_interopRequireDefault","_BlazeLink","_ClickWrapper","_helpers","_LazyImage","_helpers2","_constants","_buildPBComponents","_excluded","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","_typeof","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","Card","_ref","id","image","name","url","graphqlEntityMap","entityProps","alternativePreHeader","alternativeHeadline","category","modifier","parsedPropsToDisplay","propsToDisplay","propsToDisplayModifiers","gtmId","style","priority","cardChildren","gtmChildren","displayCategory","displayThumbnail","displayTitle","enableOverlay","enableCarousel","titleOverlayModifier","overlayModifier","gridModifier","pageBuilderComponents","dataEntity","__typename","otherProps","_objectWithoutProperties2","entity","updateChildrensParent","parent","itemId","itemEntity","router","useRouter","_getImageDefinedProps","getImageDefinedProps","imageSrc","shouldDisplayThumbnail","altText","modifiers","getInitialModifiers","_getCategoryDefinedPr","getCategoryDefinedProps","publishedListingPage","preHeader","label","headline","linkTitle","dynamicSizeKey","useDynamicSizeKey","CARD_STRING","_getClickWrapperOptio","getClickWrapperOptions","shouldUseClickWrapper","wrapperProps","Wrapper","ClickWrapper","Fragment","classNameWithModifiers","getModifiers","contentWrapperModifier","concat","titleWrapperModifier","handleCardClick","clickEventTag","target","tagName","toLowerCase","clickEventRole","role","shouldTriggerRouteChange","CARD_CHILDREN_WITH_LINKS","find","childTag","push","useLinkWrapper","process","env","BLAZE_PB_ADD_CLICK_TO_CARDS","clickProps","onClick","href","ariaLabel","CardWrapper","BlazeLink","childLinkHref","undefined","ChildLinkWrapper","createElement","_extends2","className","scroll","src","alt","sizeKey","title","length","BuildPBComponents","map","prop","dynamicKey","propModifier","_ref2","htmlAttribute","extraProps","props","children","encodeURIComponent","key","renderChildren","propTypes","PropTypes","string","isRequired","shape","data","object","array","bool","oneOfType","arrayOf","node","defaultProps","_ref3","hasAlternativePreHeader","getPublishedListingUrl","_ref4","_ref5","_ref6","sponsored","featured","_default","exports"],"sources":["../../../src/components/Card/Card.js"],"sourcesContent":["import React, { Fragment } from 'react';\nimport { useRouter } from 'next/router';\nimport PropTypes from 'prop-types';\nimport BlazeLink from '../BlazeLink';\nimport ClickWrapper from '../ClickWrapper';\nimport {\n getModifiers,\n renderChildren,\n updateChildrensParent,\n getClickWrapperOptions\n} from '../../helpers';\nimport LazyImage from '../LazyImage';\nimport { getPublishedListingUrl, useDynamicSizeKey } from './helpers';\nimport { CARD_STRING, CARD_CHILDREN_WITH_LINKS } from './constants';\nimport BuildPBComponents from '../../hooks/helpers/buildPBComponents';\n\nconst Card = ({\n id,\n image,\n name,\n url,\n graphqlEntityMap,\n entityProps,\n alternativePreHeader,\n alternativeHeadline,\n category,\n modifier,\n parsedPropsToDisplay,\n propsToDisplay,\n propsToDisplayModifiers,\n gtmId,\n style,\n priority,\n cardChildren,\n gtmChildren,\n displayCategory,\n displayThumbnail,\n displayTitle,\n enableOverlay,\n enableCarousel,\n titleOverlayModifier,\n overlayModifier,\n gridModifier,\n pageBuilderComponents,\n __typename: dataEntity,\n ...otherProps\n}) => {\n const entity = graphqlEntityMap[dataEntity];\n updateChildrensParent(cardChildren, id, entity);\n const parent = { itemId: id, itemEntity: entity };\n const router = useRouter();\n const { imageSrc, shouldDisplayThumbnail, altText } = getImageDefinedProps({\n image,\n displayThumbnail,\n name\n });\n\n const modifiers = getInitialModifiers({ modifier, style, otherProps });\n\n const { publishedListingPage, preHeader, label, headline } = getCategoryDefinedProps({\n alternativePreHeader,\n category,\n entity,\n alternativeHeadline,\n displayCategory,\n name\n });\n\n const linkTitle = name;\n\n const dynamicSizeKey = useDynamicSizeKey(CARD_STRING, { style, gridModifier, modifier });\n\n const { shouldUseClickWrapper, wrapperProps } = getClickWrapperOptions(\n gtmChildren,\n entityProps,\n id\n );\n\n const Wrapper = shouldUseClickWrapper ? ClickWrapper : Fragment;\n\n const classNameWithModifiers = getModifiers(CARD_STRING, modifiers);\n\n const contentWrapperModifier = `${getModifiers('card__content-wrapper', modifiers)} ${\n enableOverlay && enableCarousel ? overlayModifier : ''\n }`;\n\n const titleWrapperModifier = `${getModifiers('card__title', modifiers)} ${\n enableOverlay && enableCarousel ? titleOverlayModifier : ''\n }`;\n\n const handleCardClick = e => {\n if (!url) return;\n\n const clickEventTag = e.target.tagName.toLowerCase();\n const clickEventRole = e.target.role;\n const shouldTriggerRouteChange =\n clickEventRole !== 'button' &&\n !CARD_CHILDREN_WITH_LINKS.find(childTag => childTag === clickEventTag);\n if (shouldTriggerRouteChange) router.push(`/Resolver`, url);\n };\n\n // todo: asses whether we make link wrapper default after wider testing with BLAZE_PB_ADD_CLICK_TO_CARDS\n const useLinkWrapper = url && process.env.BLAZE_PB_ADD_CLICK_TO_CARDS;\n const clickProps = useLinkWrapper\n ? {\n onClick: handleCardClick,\n href: url,\n ariaLabel: name\n }\n : {};\n const CardWrapper = useLinkWrapper ? BlazeLink : 'div';\n const childLinkHref = useLinkWrapper ? undefined : url;\n const ChildLinkWrapper = useLinkWrapper ? 'div' : BlazeLink;\n\n return (\n <Wrapper {...wrapperProps}>\n <CardWrapper className={classNameWithModifiers} {...clickProps}>\n {shouldDisplayThumbnail && (\n <div className={getModifiers('card__image', modifiers)}>\n <ChildLinkWrapper\n gtmId={gtmId}\n href={childLinkHref}\n className=\"card__image-link\"\n scroll>\n <LazyImage\n src={imageSrc}\n alt={altText}\n sizeKey={dynamicSizeKey}\n priority={priority}\n />\n </ChildLinkWrapper>\n </div>\n )}\n <div className={contentWrapperModifier}>\n <div className={getModifiers('card__content', modifiers)}>\n {displayCategory &&\n (publishedListingPage ? (\n <ChildLinkWrapper\n gtmId={gtmId}\n href={publishedListingPage}\n className=\"badge badge--label\"\n scroll>\n {preHeader.name}\n </ChildLinkWrapper>\n ) : (\n <div className=\"badge badge--label\">{label}</div>\n ))}\n {displayTitle && (\n <div className={titleWrapperModifier}>\n <ChildLinkWrapper title={linkTitle} gtmId={gtmId} href={childLinkHref} scroll>\n {headline}\n </ChildLinkWrapper>\n </div>\n )}\n {!!pageBuilderComponents.length && (\n <div className=\"card__item card__item--full\" data-testid=\"full-card\">\n {BuildPBComponents(pageBuilderComponents, { parent })}\n </div>\n )}\n {!!parsedPropsToDisplay.length && (\n <div className={getModifiers('card__details', modifiers)}>\n {parsedPropsToDisplay.map((prop, i) => {\n if (!prop) return null;\n\n const dynamicKey = `${id}${i}`;\n const propModifier = propsToDisplayModifiers[i] || '';\n\n const { htmlAttribute } = propsToDisplay[i] || {};\n const extraProps = {};\n if (htmlAttribute && prop.props.children) {\n extraProps[htmlAttribute] = encodeURIComponent(prop.props.children[2]);\n }\n\n return (\n <span key={dynamicKey} className={propModifier} {...extraProps}>\n {prop}\n </span>\n );\n })}\n </div>\n )}\n </div>\n {!!cardChildren && (\n <div className=\"card__child-content\">{renderChildren(cardChildren)}</div>\n )}\n </div>\n </CardWrapper>\n </Wrapper>\n );\n};\n\nCard.propTypes = {\n id: PropTypes.string.isRequired,\n image: PropTypes.shape({\n url: PropTypes.string,\n data: PropTypes.object\n }),\n graphqlEntityMap: PropTypes.object.isRequired,\n __typename: PropTypes.string.isRequired,\n style: PropTypes.string,\n parsedPropsToDisplay: PropTypes.array,\n propsToDisplay: PropTypes.array,\n propsToDisplayModifiers: PropTypes.array,\n url: PropTypes.string,\n name: PropTypes.string.isRequired,\n entityProps: PropTypes.object,\n gtmId: PropTypes.string,\n alternativePreHeader: PropTypes.shape({\n name: PropTypes.string\n }),\n alternativeHeadline: PropTypes.string,\n category: PropTypes.shape({\n name: PropTypes.string,\n publishedListingPage: PropTypes.shape({\n url: PropTypes.string\n })\n }),\n modifier: PropTypes.string,\n displayCategory: PropTypes.bool.isRequired,\n displayThumbnail: PropTypes.bool.isRequired,\n displayTitle: PropTypes.bool.isRequired,\n enableCarousel: PropTypes.bool,\n enableOverlay: PropTypes.bool,\n overlayModifier: PropTypes.string,\n titleOverlayModifier: PropTypes.string,\n cardChildren: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.node), PropTypes.node]),\n gtmChildren: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.node), PropTypes.node]),\n gridModifier: PropTypes.string,\n priority: PropTypes.bool,\n pageBuilderComponents: PropTypes.array\n};\n\nCard.defaultProps = {\n entityProps: {},\n pageBuilderComponents: [],\n image: {\n url: null,\n data: {}\n },\n gtmId: '',\n style: 'portrait',\n parsedPropsToDisplay: [],\n propsToDisplay: [],\n propsToDisplayModifiers: [],\n url: '',\n alternativePreHeader: null,\n alternativeHeadline: '',\n category: null,\n modifier: '',\n cardChildren: [],\n gtmChildren: [],\n gridModifier: '',\n priority: false,\n overlayModifier: '',\n titleOverlayModifier: '',\n enableOverlay: false,\n enableCarousel: false\n};\n\nconst getCategoryDefinedProps = ({\n alternativePreHeader,\n category,\n entity,\n alternativeHeadline,\n displayCategory,\n name\n}) => {\n const hasAlternativePreHeader = alternativePreHeader && alternativePreHeader.name;\n const preHeader =\n alternativeHeadline && hasAlternativePreHeader ? alternativePreHeader : category;\n const publishedListingPage = getPublishedListingUrl(preHeader);\n const label = preHeader ? preHeader.name : entity;\n const headline =\n !displayCategory || !hasAlternativePreHeader ? name : alternativeHeadline || name;\n return { publishedListingPage, preHeader, label, headline };\n};\n\nconst getImageDefinedProps = ({ image, displayThumbnail, name }) => {\n const { url: imageSrc, data } = image || {};\n const shouldDisplayThumbnail = displayThumbnail && imageSrc;\n const altText = (data && data.altText) || name;\n return { imageSrc, shouldDisplayThumbnail, altText };\n};\n\nconst getInitialModifiers = ({ modifier, style, otherProps }) => {\n const modifiers = [modifier, style];\n const { sponsored, featured } = otherProps;\n if (sponsored) modifiers.push('sponsored');\n if (featured) modifiers.push('featured');\n\n return modifiers;\n};\n\nexport default Card;\n"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"ListRender.js","names":["_react","_interopRequireDefault","require","_client","_propTypes","_Pagination","_Header","_constants","_hooks","_helpers","ListRender","props","variables","actionKey","action","name","itemsToDisplay","itemsPerPageToUse","limitToUse","initialOffset","isInfinite","omitWrappers","paginationType","ListComponent","listComponent","query","url","listAggregations","isAZ","azFilter","displayTotal","_useAppSyncEventHook","useAppSyncEventHook","eventName","data","updatedVariables","boostedVariables","buildQueryBooster","_useQuery","useQuery","_useQuery$data","error","loading","fetchMore","message","results","listData","listTotal","total","length","currentListLength","currentPage","Math","ceil","totalDisplay","createElement","Fragment","className","_extends2","orderedListData","LOAD_MORE","itemsPerPage","propTypes","PropTypes","string","isRequired","object","number","bool","func","array","defaultProps","_default","exports"],"sources":["../../../src/components/List/ListRender.js"],"sourcesContent":["import React from 'react';\nimport { useQuery } from '@apollo/client';\nimport PropTypes from 'prop-types';\nimport ListPagination from './components/Pagination';\nimport ListHeader from './components/Header';\nimport { LOAD_MORE } from '../../constants';\nimport { useAppSyncEventHook } from '../../hooks';\nimport { buildQueryBooster } from './helpers';\n\nconst ListRender = props => {\n const {\n variables,\n actionKey,\n action,\n name,\n itemsToDisplay,\n itemsPerPageToUse,\n limitToUse,\n initialOffset,\n isInfinite,\n omitWrappers,\n paginationType,\n listComponent: ListComponent,\n query,\n url,\n listAggregations,\n isAZ,\n azFilter,\n displayTotal\n } = props;\n const { data: updatedVariables } = useAppSyncEventHook({\n eventName: 'list:query-variables',\n data: variables,\n props\n });\n const boostedVariables = buildQueryBooster(props, updatedVariables);\n\n const { data = {}, error, loading, fetchMore } = useQuery(action, {\n variables: boostedVariables\n });\n\n if (loading) return '';\n if (error) return error.message;\n if (!data[actionKey] || !data[actionKey].results) return null;\n\n const listData = data[actionKey].results;\n const listTotal = data[actionKey].total;\n\n if (!listData || !listData.length) return null;\n const { length: currentListLength } = listData;\n const currentPage = Math.ceil((initialOffset + currentListLength) / itemsPerPageToUse);\n const totalDisplay = limitToUse && listTotal > limitToUse ? limitToUse : listTotal;\n\n return (\n <>\n <span className=\"list-top\" />\n {isAZ && <ListHeader name={name} listAggregations={listAggregations} azFilter={azFilter} />}\n {displayTotal && (\n <div className=\"list_total_results w-full text-left p-4\">Total results: {totalDisplay}</div>\n )}\n <ListComponent\n orderedListData={listData}\n isInfinite={isInfinite}\n initialOffset={initialOffset}\n actionKey={actionKey}\n limitToUse={limitToUse}\n fetchMore={fetchMore}\n omitWrappers={omitWrappers}\n itemsPerPageToUse={itemsPerPageToUse || listData.length}\n listTotal={listTotal}\n currentListLength={currentListLength}\n currentPage={currentPage}\n query={query}\n url={url}\n itemsToDisplay={itemsToDisplay}\n {...props}\n />\n {paginationType !== LOAD_MORE && (\n <ListPagination\n limitToUse={limitToUse}\n itemsPerPage={itemsPerPageToUse}\n listTotal={listTotal}\n name={name}\n isInfinite={isInfinite}\n currentListLength={currentListLength}\n paginationType={paginationType}\n currentPage={currentPage}\n query={query}\n url={url}\n />\n )}\n </>\n );\n};\n\nListRender.propTypes = {\n name: PropTypes.string.isRequired,\n paginationType: PropTypes.string.isRequired,\n variables: PropTypes.object.isRequired,\n actionKey: PropTypes.string.isRequired,\n action: PropTypes.object.isRequired,\n itemsPerPageToUse: PropTypes.number.isRequired,\n limitToUse: PropTypes.number.isRequired,\n initialOffset: PropTypes.number.isRequired,\n isInfinite: PropTypes.bool.isRequired,\n omitWrappers: PropTypes.bool,\n query: PropTypes.object.isRequired,\n url: PropTypes.string.isRequired,\n listComponent: PropTypes.func.isRequired,\n isAZ: PropTypes.bool.isRequired,\n azFilter: PropTypes.string.isRequired,\n listAggregations: PropTypes.array,\n itemsToDisplay: PropTypes.array,\n displayTotal: PropTypes.bool\n};\n\nListRender.defaultProps = {\n omitWrappers: false,\n itemsToDisplay: [],\n listAggregations: [],\n displayTotal: false\n};\n\nexport default ListRender;\n"],"mappings":"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"}
1
+ {"version":3,"file":"ListRender.js","names":["_react","_interopRequireDefault","require","_client","_propTypes","_Pagination","_Header","_constants","_hooks","_helpers","ListRender","props","variables","actionKey","action","name","itemsToDisplay","itemsPerPageToUse","limitToUse","initialOffset","isInfinite","omitWrappers","paginationType","ListComponent","listComponent","query","url","listAggregations","isAZ","azFilter","displayTotal","_useAppSyncEventHook","useAppSyncEventHook","eventName","data","updatedVariables","boostedVariables","buildQueryBooster","_useQuery","useQuery","_useQuery$data","error","loading","fetchMore","message","results","listData","listTotal","total","length","currentListLength","currentPage","Math","ceil","totalDisplay","createElement","Fragment","className","_extends2","orderedListData","LOAD_MORE","itemsPerPage","propTypes","PropTypes","string","isRequired","object","number","bool","func","array","defaultProps","_default","exports"],"sources":["../../../src/components/List/ListRender.js"],"sourcesContent":["import React from 'react';\nimport { useQuery } from '@apollo/client';\nimport PropTypes from 'prop-types';\nimport ListPagination from './components/Pagination';\nimport ListHeader from './components/Header';\nimport { LOAD_MORE } from '../../constants';\nimport { useAppSyncEventHook } from '../../hooks';\nimport { buildQueryBooster } from './helpers';\n\nconst ListRender = props => {\n const {\n variables,\n actionKey,\n action,\n name,\n itemsToDisplay,\n itemsPerPageToUse,\n limitToUse,\n initialOffset,\n isInfinite,\n omitWrappers,\n paginationType,\n listComponent: ListComponent,\n query,\n url,\n listAggregations,\n isAZ,\n azFilter,\n displayTotal\n } = props;\n const { data: updatedVariables } = useAppSyncEventHook({\n eventName: 'list:query-variables',\n data: variables,\n props\n });\n const boostedVariables = buildQueryBooster(props, updatedVariables);\n const { data = {}, error, loading, fetchMore } = useQuery(action, {\n variables: boostedVariables\n });\n\n if (loading) return '';\n if (error) return error.message;\n if (!data[actionKey] || !data[actionKey].results) return null;\n\n const listData = data[actionKey].results;\n const listTotal = data[actionKey].total;\n\n if (!listData || !listData.length) return null;\n const { length: currentListLength } = listData;\n const currentPage = Math.ceil((initialOffset + currentListLength) / itemsPerPageToUse);\n const totalDisplay = limitToUse && listTotal > limitToUse ? limitToUse : listTotal;\n\n return (\n <>\n <span className=\"list-top\" />\n {isAZ && <ListHeader name={name} listAggregations={listAggregations} azFilter={azFilter} />}\n {displayTotal && (\n <div className=\"list_total_results w-full text-left p-4\">Total results: {totalDisplay}</div>\n )}\n <ListComponent\n orderedListData={listData}\n isInfinite={isInfinite}\n initialOffset={initialOffset}\n actionKey={actionKey}\n limitToUse={limitToUse}\n fetchMore={fetchMore}\n omitWrappers={omitWrappers}\n itemsPerPageToUse={itemsPerPageToUse || listData.length}\n listTotal={listTotal}\n currentListLength={currentListLength}\n currentPage={currentPage}\n query={query}\n url={url}\n itemsToDisplay={itemsToDisplay}\n {...props}\n />\n {paginationType !== LOAD_MORE && (\n <ListPagination\n limitToUse={limitToUse}\n itemsPerPage={itemsPerPageToUse}\n listTotal={listTotal}\n name={name}\n isInfinite={isInfinite}\n currentListLength={currentListLength}\n paginationType={paginationType}\n currentPage={currentPage}\n query={query}\n url={url}\n />\n )}\n </>\n );\n};\n\nListRender.propTypes = {\n name: PropTypes.string.isRequired,\n paginationType: PropTypes.string.isRequired,\n variables: PropTypes.object.isRequired,\n actionKey: PropTypes.string.isRequired,\n action: PropTypes.object.isRequired,\n itemsPerPageToUse: PropTypes.number.isRequired,\n limitToUse: PropTypes.number.isRequired,\n initialOffset: PropTypes.number.isRequired,\n isInfinite: PropTypes.bool.isRequired,\n omitWrappers: PropTypes.bool,\n query: PropTypes.object.isRequired,\n url: PropTypes.string.isRequired,\n listComponent: PropTypes.func.isRequired,\n isAZ: PropTypes.bool.isRequired,\n azFilter: PropTypes.string.isRequired,\n listAggregations: PropTypes.array,\n itemsToDisplay: PropTypes.array,\n displayTotal: PropTypes.bool\n};\n\nListRender.defaultProps = {\n omitWrappers: false,\n itemsToDisplay: [],\n listAggregations: [],\n displayTotal: false\n};\n\nexport default ListRender;\n"],"mappings":";;;;;;;;;;AAAA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,OAAA,GAAAD,OAAA;AACA,IAAAE,UAAA,GAAAH,sBAAA,CAAAC,OAAA;AACA,IAAAG,WAAA,GAAAJ,sBAAA,CAAAC,OAAA;AACA,IAAAI,OAAA,GAAAL,sBAAA,CAAAC,OAAA;AACA,IAAAK,UAAA,GAAAL,OAAA;AACA,IAAAM,MAAA,GAAAN,OAAA;AACA,IAAAO,QAAA,GAAAP,OAAA;AAEA,IAAMQ,UAAU,GAAG,SAAbA,UAAUA,CAAGC,KAAK,EAAI;EAC1B,IACEC,SAAS,GAkBPD,KAAK,CAlBPC,SAAS;IACTC,SAAS,GAiBPF,KAAK,CAjBPE,SAAS;IACTC,MAAM,GAgBJH,KAAK,CAhBPG,MAAM;IACNC,IAAI,GAeFJ,KAAK,CAfPI,IAAI;IACJC,cAAc,GAcZL,KAAK,CAdPK,cAAc;IACdC,iBAAiB,GAafN,KAAK,CAbPM,iBAAiB;IACjBC,UAAU,GAYRP,KAAK,CAZPO,UAAU;IACVC,aAAa,GAWXR,KAAK,CAXPQ,aAAa;IACbC,UAAU,GAURT,KAAK,CAVPS,UAAU;IACVC,YAAY,GASVV,KAAK,CATPU,YAAY;IACZC,cAAc,GAQZX,KAAK,CARPW,cAAc;IACCC,aAAa,GAO1BZ,KAAK,CAPPa,aAAa;IACbC,KAAK,GAMHd,KAAK,CANPc,KAAK;IACLC,GAAG,GAKDf,KAAK,CALPe,GAAG;IACHC,gBAAgB,GAIdhB,KAAK,CAJPgB,gBAAgB;IAChBC,IAAI,GAGFjB,KAAK,CAHPiB,IAAI;IACJC,QAAQ,GAENlB,KAAK,CAFPkB,QAAQ;IACRC,YAAY,GACVnB,KAAK,CADPmB,YAAY;EAEd,IAAAC,oBAAA,GAAmC,IAAAC,0BAAmB,EAAC;MACrDC,SAAS,EAAE,sBAAsB;MACjCC,IAAI,EAAEtB,SAAS;MACfD,KAAK,EAALA;IACF,CAAC,CAAC;IAJYwB,gBAAgB,GAAAJ,oBAAA,CAAtBG,IAAI;EAKZ,IAAME,gBAAgB,GAAG,IAAAC,0BAAiB,EAAC1B,KAAK,EAAEwB,gBAAgB,CAAC;EACnE,IAAAG,SAAA,GAAiD,IAAAC,gBAAQ,EAACzB,MAAM,EAAE;MAChEF,SAAS,EAAEwB;IACb,CAAC,CAAC;IAAAI,cAAA,GAAAF,SAAA,CAFMJ,IAAI;IAAJA,IAAI,GAAAM,cAAA,cAAG,CAAC,CAAC,GAAAA,cAAA;IAAEC,KAAK,GAAAH,SAAA,CAALG,KAAK;IAAEC,OAAO,GAAAJ,SAAA,CAAPI,OAAO;IAAEC,SAAS,GAAAL,SAAA,CAATK,SAAS;EAI5C,IAAID,OAAO,EAAE,OAAO,EAAE;EACtB,IAAID,KAAK,EAAE,OAAOA,KAAK,CAACG,OAAO;EAC/B,IAAI,CAACV,IAAI,CAACrB,SAAS,CAAC,IAAI,CAACqB,IAAI,CAACrB,SAAS,CAAC,CAACgC,OAAO,EAAE,OAAO,IAAI;EAE7D,IAAMC,QAAQ,GAAGZ,IAAI,CAACrB,SAAS,CAAC,CAACgC,OAAO;EACxC,IAAME,SAAS,GAAGb,IAAI,CAACrB,SAAS,CAAC,CAACmC,KAAK;EAEvC,IAAI,CAACF,QAAQ,IAAI,CAACA,QAAQ,CAACG,MAAM,EAAE,OAAO,IAAI;EAC9C,IAAgBC,iBAAiB,GAAKJ,QAAQ,CAAtCG,MAAM;EACd,IAAME,WAAW,GAAGC,IAAI,CAACC,IAAI,CAAC,CAAClC,aAAa,GAAG+B,iBAAiB,IAAIjC,iBAAiB,CAAC;EACtF,IAAMqC,YAAY,GAAGpC,UAAU,IAAI6B,SAAS,GAAG7B,UAAU,GAAGA,UAAU,GAAG6B,SAAS;EAElF,oBACE/C,MAAA,YAAAuD,aAAA,CAAAvD,MAAA,YAAAwD,QAAA,qBACExD,MAAA,YAAAuD,aAAA;IAAME,SAAS,EAAC;EAAU,CAAE,CAAC,EAC5B7B,IAAI,iBAAI5B,MAAA,YAAAuD,aAAA,CAACjD,OAAA,WAAU;IAACS,IAAI,EAAEA,IAAK;IAACY,gBAAgB,EAAEA,gBAAiB;IAACE,QAAQ,EAAEA;EAAS,CAAE,CAAC,EAC1FC,YAAY,iBACX9B,MAAA,YAAAuD,aAAA;IAAKE,SAAS,EAAC;EAAyC,GAAC,iBAAe,EAACH,YAAkB,CAC5F,eACDtD,MAAA,YAAAuD,aAAA,CAAChC,aAAa,MAAAmC,SAAA;IACZC,eAAe,EAAEb,QAAS;IAC1B1B,UAAU,EAAEA,UAAW;IACvBD,aAAa,EAAEA,aAAc;IAC7BN,SAAS,EAAEA,SAAU;IACrBK,UAAU,EAAEA,UAAW;IACvByB,SAAS,EAAEA,SAAU;IACrBtB,YAAY,EAAEA,YAAa;IAC3BJ,iBAAiB,EAAEA,iBAAiB,IAAI6B,QAAQ,CAACG,MAAO;IACxDF,SAAS,EAAEA,SAAU;IACrBG,iBAAiB,EAAEA,iBAAkB;IACrCC,WAAW,EAAEA,WAAY;IACzB1B,KAAK,EAAEA,KAAM;IACbC,GAAG,EAAEA,GAAI;IACTV,cAAc,EAAEA;EAAe,GAC3BL,KAAK,CACV,CAAC,EACDW,cAAc,KAAKsC,oBAAS,iBAC3B5D,MAAA,YAAAuD,aAAA,CAAClD,WAAA,WAAc;IACba,UAAU,EAAEA,UAAW;IACvB2C,YAAY,EAAE5C,iBAAkB;IAChC8B,SAAS,EAAEA,SAAU;IACrBhC,IAAI,EAAEA,IAAK;IACXK,UAAU,EAAEA,UAAW;IACvB8B,iBAAiB,EAAEA,iBAAkB;IACrC5B,cAAc,EAAEA,cAAe;IAC/B6B,WAAW,EAAEA,WAAY;IACzB1B,KAAK,EAAEA,KAAM;IACbC,GAAG,EAAEA;EAAI,CACV,CAEH,CAAC;AAEP,CAAC;AAEDhB,UAAU,CAACoD,SAAS,GAAG;EACrB/C,IAAI,EAAEgD,qBAAS,CAACC,MAAM,CAACC,UAAU;EACjC3C,cAAc,EAAEyC,qBAAS,CAACC,MAAM,CAACC,UAAU;EAC3CrD,SAAS,EAAEmD,qBAAS,CAACG,MAAM,CAACD,UAAU;EACtCpD,SAAS,EAAEkD,qBAAS,CAACC,MAAM,CAACC,UAAU;EACtCnD,MAAM,EAAEiD,qBAAS,CAACG,MAAM,CAACD,UAAU;EACnChD,iBAAiB,EAAE8C,qBAAS,CAACI,MAAM,CAACF,UAAU;EAC9C/C,UAAU,EAAE6C,qBAAS,CAACI,MAAM,CAACF,UAAU;EACvC9C,aAAa,EAAE4C,qBAAS,CAACI,MAAM,CAACF,UAAU;EAC1C7C,UAAU,EAAE2C,qBAAS,CAACK,IAAI,CAACH,UAAU;EACrC5C,YAAY,EAAE0C,qBAAS,CAACK,IAAI;EAC5B3C,KAAK,EAAEsC,qBAAS,CAACG,MAAM,CAACD,UAAU;EAClCvC,GAAG,EAAEqC,qBAAS,CAACC,MAAM,CAACC,UAAU;EAChCzC,aAAa,EAAEuC,qBAAS,CAACM,IAAI,CAACJ,UAAU;EACxCrC,IAAI,EAAEmC,qBAAS,CAACK,IAAI,CAACH,UAAU;EAC/BpC,QAAQ,EAAEkC,qBAAS,CAACC,MAAM,CAACC,UAAU;EACrCtC,gBAAgB,EAAEoC,qBAAS,CAACO,KAAK;EACjCtD,cAAc,EAAE+C,qBAAS,CAACO,KAAK;EAC/BxC,YAAY,EAAEiC,qBAAS,CAACK;AAC1B,CAAC;AAED1D,UAAU,CAAC6D,YAAY,GAAG;EACxBlD,YAAY,EAAE,KAAK;EACnBL,cAAc,EAAE,EAAE;EAClBW,gBAAgB,EAAE,EAAE;EACpBG,YAAY,EAAE;AAChB,CAAC;AAAC,IAAA0C,QAAA,GAAAC,OAAA,cAEa/D,UAAU"}
@@ -78,17 +78,19 @@ var SearchFilterContainer = function SearchFilterContainer(_ref) {
78
78
  var parentId = parent.itemId,
79
79
  parentEntity = parent.itemEntity;
80
80
  (0, _react.useEffect)(function () {
81
- if (!asPath) return;
82
81
  var _parseUrl2 = (0, _queryString.parseUrl)(asPath),
83
82
  newQuery = _parseUrl2.query;
84
- var asPathQuery = (0, _helpers.buildListNameQuery)(newQuery, listComponentName);
85
- if (asPathQuery) dispatch({
86
- newValues: asPathQuery,
83
+ var updatedNewQuery = (0, _helpers.buildListNameQuery)(newQuery, listComponentName);
84
+ var newValues = (0, _helpers.getFilterValues)({}, filters, updatedNewQuery);
85
+ if (newValues) dispatch({
86
+ newValues: newValues,
87
87
  shouldSearch: false,
88
88
  type: 'update'
89
89
  });
90
90
  setUrlPath(asPath);
91
- }, [asPath, listComponentName]);
91
+ },
92
+ // eslint-disable-next-line react-hooks/exhaustive-deps
93
+ [asPath]);
92
94
  var _useGetEntitySchemasA = (0, _hooks.useGetEntitySchemasAsObj)([parentEntity, entity]),
93
95
  _useGetEntitySchemasA2 = _useGetEntitySchemasA.data,
94
96
  mainSchemas = _useGetEntitySchemasA2 === void 0 ? {} : _useGetEntitySchemasA2,
@@ -1 +1 @@
1
- {"version":3,"file":"SearchFilterContainer.js","names":["_react","_interopRequireWildcard","require","_nextjsComponents","_router","_client","_propTypes","_interopRequireDefault","_queryString","_SearchFilter","_HOC","_query","_helpers","_helpers2","_constants","_constants2","_searchFilterReducer","_hooks","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","_typeof","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","SearchFilterContainer","_ref","entity","url","filters","name","isCollapsedOnResponsive","groupAfterMobile","groupAfterDesktop","filterBy","filterByProperty","shouldAddFilters","listComponentName","parent","mobileRefineButtonText","_useContext","useContext","MainContext","isPreview","router","useRouter","asPath","searchFilterRef","useRef","_useState","useState","concat","_useState2","_slicedToArray2","key","setKey","_useState3","_useState4","displaySearchFilter","setDisplaySearchFilter","_useState5","_useState6","urlPath","setUrlPath","_useReducer","useReducer","searchFilterReducer","_useReducer2","filterValues","dispatch","_parseUrl","parseUrl","currentUrl","query","updatedQuery","buildListNameQuery","parentId","itemId","parentEntity","itemEntity","useEffect","_parseUrl2","newQuery","asPathQuery","newValues","shouldSearch","type","_useGetEntitySchemasA","useGetEntitySchemasAsObj","_useGetEntitySchemasA2","data","mainSchemas","schemasLoading","loading","_mainSchemas$parentEn","parentSchema","_mainSchemas$entity","filterEntitySchema","_ref2","_ref2$actions","actions","getAction","getPublished","inheritedFilters","getInheritedFilters","queryProps","getQueryProps","_useQuery","useQuery","generateSingleItemQuery","variables","id","skip","length","_useQuery$data","_useQuery$data2","parentData","entityData","parentQueryLoading","_getUpdatedFilterBy","getUpdatedFilterBy","updatedFilterBy","updatedFilterByProperty","action","getSearchPublishedContent","RAW_RESULTS","_getFilterRangesAndCh","getFilterRangesAndCheckboxesValues","_getFilterRangesAndCh2","checkboxSelectValues","rangeValues","_getEntityData","getEntityData","docType","filtersQuery","buildFiltersQuery","queryKeys","keys","rawQueryStringified","buildRawQueryStringified","_useQuery2","limit","error","message","_ref3","_ref3$searchPublished","searchPublishedContent","_ref3$searchPublished2","_ref3$searchPublished3","rawResults","_ref3$searchPublished4","filterData","aggregations","getFilterValues","handleSearch","hashBit","split","parsedHashBit","scrollToFirstList","baseQuery","push","shallow","scroll","then","Date","now","newUrl","buildNewUrl","_document$getElements","document","getElementsByClassName","_document$getElements2","list","shouldScrollToFirstList","window","scrollTo","left","top","pageYOffset","SCROLL_OFFSET","getBoundingClientRect","createElement","setAppliedFilters","hasUrl","propTypes","PropTypes","string","array","isRequired","bool","number","object","defaultProps","_default","exports","withTitle"],"sources":["../../../src/components/SearchFilter/SearchFilterContainer.js"],"sourcesContent":["import React, { useState, useEffect, useRef, useReducer, useContext } from 'react';\nimport { MainContext } from '@blaze-cms/nextjs-components';\nimport { useRouter } from 'next/router';\nimport { useQuery } from '@apollo/client';\nimport PropTypes from 'prop-types';\nimport { parseUrl } from 'query-string';\nimport SearchFilter from './SearchFilter';\nimport { withTitle } from '../../HOC';\nimport { getSearchPublishedContent, generateSingleItemQuery } from '../../application/query';\nimport {\n buildNewUrl,\n getFilterValues,\n getFilterRangesAndCheckboxesValues,\n getUpdatedFilterBy,\n buildListNameQuery\n} from './helpers';\nimport {\n getEntityData,\n getInheritedFilters,\n getQueryProps,\n buildRawQueryStringified,\n buildFiltersQuery\n} from '../../helpers';\nimport { RAW_RESULTS } from './constants';\nimport { SCROLL_OFFSET } from '../../constants';\nimport searchFilterReducer from './searchFilterReducer';\nimport { useGetEntitySchemasAsObj } from '../../hooks';\n\nconst SearchFilterContainer = ({\n entity,\n url,\n filters,\n name,\n isCollapsedOnResponsive,\n groupAfterMobile,\n groupAfterDesktop,\n filterBy,\n filterByProperty,\n shouldAddFilters,\n listComponentName,\n parent,\n mobileRefineButtonText\n}) => {\n const { isPreview } = useContext(MainContext);\n const router = useRouter();\n const { asPath } = router;\n const searchFilterRef = useRef(null);\n const [key, setKey] = useState(`filter-${name}`);\n const [displaySearchFilter, setDisplaySearchFilter] = useState(false);\n const [urlPath, setUrlPath] = useState(asPath); // used as asPath can take too long to update\n const [filterValues, dispatch] = useReducer(searchFilterReducer, null);\n const { url: currentUrl, query } = parseUrl(urlPath);\n const updatedQuery = buildListNameQuery(query, listComponentName);\n const { itemId: parentId, itemEntity: parentEntity } = parent;\n\n useEffect(\n () => {\n if (!asPath) return;\n const { query: newQuery } = parseUrl(asPath);\n const asPathQuery = buildListNameQuery(newQuery, listComponentName);\n if (asPathQuery) dispatch({ newValues: asPathQuery, shouldSearch: false, type: 'update' });\n setUrlPath(asPath);\n },\n [asPath, listComponentName]\n );\n\n const { data: mainSchemas = {}, loading: schemasLoading } = useGetEntitySchemasAsObj([\n parentEntity,\n entity\n ]);\n const { [parentEntity]: parentSchema = {}, [entity]: filterEntitySchema = {} } = mainSchemas;\n const { actions = {} } = parentSchema || {};\n const getAction = isPreview ? actions.get : actions.getPublished;\n const inheritedFilters = getInheritedFilters(filterBy, filterByProperty);\n const queryProps = getQueryProps(inheritedFilters, parentSchema, filterEntitySchema);\n const { data: { entityData: parentData } = {}, loading: parentQueryLoading } = useQuery(\n generateSingleItemQuery(getAction, queryProps),\n {\n variables: { id: parentId },\n skip: schemasLoading || !inheritedFilters.length\n }\n );\n const { updatedFilterBy, updatedFilterByProperty } = getUpdatedFilterBy(\n filterBy,\n filterByProperty,\n parentData\n );\n\n const action = getSearchPublishedContent(RAW_RESULTS);\n const [checkboxSelectValues, rangeValues] = getFilterRangesAndCheckboxesValues(filters);\n\n const { docType } = getEntityData(entity);\n\n const filtersQuery = buildFiltersQuery({\n shouldAddFilters,\n query: filterValues,\n filterBy: updatedFilterBy,\n filterByProperty: updatedFilterByProperty,\n rangeValues,\n queryKeys: Object.keys(updatedQuery)\n });\n\n const rawQueryStringified = buildRawQueryStringified(\n checkboxSelectValues,\n rangeValues,\n docType,\n filtersQuery\n );\n\n const { data, error, loading } = useQuery(action, {\n variables: { rawQueryStringified, limit: 0 }, // we only want aggs so limit=0 for no search results\n skip: !rawQueryStringified || parentQueryLoading\n });\n\n if (error) return error.message;\n if (!filters.length) return null;\n\n const { searchPublishedContent: { rawResults: { aggregations: filterData } = {} } = {} } =\n data || {};\n\n if (!filterValues && !loading && !parentQueryLoading && (filterData || !rawQueryStringified)) {\n const newValues = getFilterValues(filterData, filters, updatedQuery);\n dispatch({ newValues, shouldSearch: false, type: 'update' });\n return null;\n }\n\n const handleSearch = newQuery => {\n setDisplaySearchFilter(false);\n const hashBit = asPath.split('#')[1] || '';\n const parsedHashBit = hashBit ? `#${hashBit}` : '';\n scrollToFirstList();\n if (!newQuery) {\n const baseQuery = `${currentUrl}${parsedHashBit}`;\n setUrlPath(baseQuery);\n return router.push('/Resolver', baseQuery, { shallow: !url, scroll: false }).then(() => {\n setKey(`filter-${name}:${Date.now()}`); // remove after range component update\n });\n }\n const newUrl = buildNewUrl(url, currentUrl, newQuery, hashBit);\n setUrlPath(newUrl);\n return router.push('/Resolver', newUrl, { shallow: !url, scroll: false });\n };\n\n const scrollToFirstList = () => {\n const [list] = document.getElementsByClassName('list-top');\n const shouldScrollToFirstList = !url && list;\n\n if (shouldScrollToFirstList) {\n window.scrollTo({\n left: 0,\n top: window.pageYOffset - SCROLL_OFFSET + list.getBoundingClientRect().top\n });\n } else {\n window.scrollTo(0, 0);\n }\n };\n\n if (!filterValues) return null;\n\n return (\n <SearchFilter\n key={key}\n setAppliedFilters={dispatch}\n query={updatedQuery}\n listComponentName={listComponentName}\n searchFilterRef={searchFilterRef}\n data={filterData}\n filters={filters}\n hasUrl={!!url}\n entity={entity}\n handleSearch={handleSearch}\n filterValues={filterValues}\n name={name}\n isCollapsedOnResponsive={isCollapsedOnResponsive}\n displaySearchFilter={displaySearchFilter}\n setDisplaySearchFilter={setDisplaySearchFilter}\n groupAfterMobile={groupAfterMobile}\n groupAfterDesktop={groupAfterDesktop}\n mobileRefineButtonText={mobileRefineButtonText}\n />\n );\n};\n\nSearchFilterContainer.propTypes = {\n mobileRefineButtonText: PropTypes.string,\n entity: PropTypes.string,\n url: PropTypes.string,\n filters: PropTypes.array,\n name: PropTypes.string.isRequired,\n isCollapsedOnResponsive: PropTypes.bool,\n groupAfterMobile: PropTypes.number,\n groupAfterDesktop: PropTypes.number,\n filterBy: PropTypes.array,\n filterByProperty: PropTypes.array,\n shouldAddFilters: PropTypes.bool,\n listComponentName: PropTypes.string,\n parent: PropTypes.object\n};\n\nSearchFilterContainer.defaultProps = {\n url: null,\n filters: [],\n entity: '',\n isCollapsedOnResponsive: true,\n groupAfterMobile: 0,\n groupAfterDesktop: 0,\n filterBy: [],\n filterByProperty: [],\n shouldAddFilters: false,\n listComponentName: '',\n parent: {},\n mobileRefineButtonText: ''\n};\n\nexport default withTitle(SearchFilterContainer);\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;AAAA,IAAAA,MAAA,GAAAC,uBAAA,CAAAC,OAAA;AACA,IAAAC,iBAAA,GAAAD,OAAA;AACA,IAAAE,OAAA,GAAAF,OAAA;AACA,IAAAG,OAAA,GAAAH,OAAA;AACA,IAAAI,UAAA,GAAAC,sBAAA,CAAAL,OAAA;AACA,IAAAM,YAAA,GAAAN,OAAA;AACA,IAAAO,aAAA,GAAAF,sBAAA,CAAAL,OAAA;AACA,IAAAQ,IAAA,GAAAR,OAAA;AACA,IAAAS,MAAA,GAAAT,OAAA;AACA,IAAAU,QAAA,GAAAV,OAAA;AAOA,IAAAW,SAAA,GAAAX,OAAA;AAOA,IAAAY,UAAA,GAAAZ,OAAA;AACA,IAAAa,WAAA,GAAAb,OAAA;AACA,IAAAc,oBAAA,GAAAT,sBAAA,CAAAL,OAAA;AACA,IAAAe,MAAA,GAAAf,OAAA;AAAuD,SAAAgB,yBAAAC,CAAA,6BAAAC,OAAA,mBAAAC,CAAA,OAAAD,OAAA,IAAAE,CAAA,OAAAF,OAAA,YAAAF,wBAAA,YAAAA,yBAAAC,CAAA,WAAAA,CAAA,GAAAG,CAAA,GAAAD,CAAA,KAAAF,CAAA;AAAA,SAAAlB,wBAAAkB,CAAA,EAAAE,CAAA,SAAAA,CAAA,IAAAF,CAAA,IAAAA,CAAA,CAAAI,UAAA,SAAAJ,CAAA,eAAAA,CAAA,gBAAAK,OAAA,CAAAL,CAAA,0BAAAA,CAAA,sBAAAA,CAAA,QAAAG,CAAA,GAAAJ,wBAAA,CAAAG,CAAA,OAAAC,CAAA,IAAAA,CAAA,CAAAG,GAAA,CAAAN,CAAA,UAAAG,CAAA,CAAAI,GAAA,CAAAP,CAAA,OAAAQ,CAAA,KAAAC,SAAA,UAAAC,CAAA,GAAAC,MAAA,CAAAC,cAAA,IAAAD,MAAA,CAAAE,wBAAA,WAAAC,CAAA,IAAAd,CAAA,oBAAAc,CAAA,IAAAH,MAAA,CAAAI,SAAA,CAAAC,cAAA,CAAAC,IAAA,CAAAjB,CAAA,EAAAc,CAAA,SAAAI,CAAA,GAAAR,CAAA,GAAAC,MAAA,CAAAE,wBAAA,CAAAb,CAAA,EAAAc,CAAA,UAAAI,CAAA,KAAAA,CAAA,CAAAX,GAAA,IAAAW,CAAA,CAAAC,GAAA,IAAAR,MAAA,CAAAC,cAAA,CAAAJ,CAAA,EAAAM,CAAA,EAAAI,CAAA,IAAAV,CAAA,CAAAM,CAAA,IAAAd,CAAA,CAAAc,CAAA,YAAAN,CAAA,cAAAR,CAAA,EAAAG,CAAA,IAAAA,CAAA,CAAAgB,GAAA,CAAAnB,CAAA,EAAAQ,CAAA,GAAAA,CAAA;AAEvD,IAAMY,qBAAqB,GAAG,SAAxBA,qBAAqBA,CAAAC,IAAA,EAcrB;EAAA,IAbJC,MAAM,GAAAD,IAAA,CAANC,MAAM;IACNC,GAAG,GAAAF,IAAA,CAAHE,GAAG;IACHC,OAAO,GAAAH,IAAA,CAAPG,OAAO;IACPC,IAAI,GAAAJ,IAAA,CAAJI,IAAI;IACJC,uBAAuB,GAAAL,IAAA,CAAvBK,uBAAuB;IACvBC,gBAAgB,GAAAN,IAAA,CAAhBM,gBAAgB;IAChBC,iBAAiB,GAAAP,IAAA,CAAjBO,iBAAiB;IACjBC,QAAQ,GAAAR,IAAA,CAARQ,QAAQ;IACRC,gBAAgB,GAAAT,IAAA,CAAhBS,gBAAgB;IAChBC,gBAAgB,GAAAV,IAAA,CAAhBU,gBAAgB;IAChBC,iBAAiB,GAAAX,IAAA,CAAjBW,iBAAiB;IACjBC,MAAM,GAAAZ,IAAA,CAANY,MAAM;IACNC,sBAAsB,GAAAb,IAAA,CAAtBa,sBAAsB;EAEtB,IAAAC,WAAA,GAAsB,IAAAC,iBAAU,EAACC,6BAAW,CAAC;IAArCC,SAAS,GAAAH,WAAA,CAATG,SAAS;EACjB,IAAMC,MAAM,GAAG,IAAAC,iBAAS,EAAC,CAAC;EAC1B,IAAQC,MAAM,GAAKF,MAAM,CAAjBE,MAAM;EACd,IAAMC,eAAe,GAAG,IAAAC,aAAM,EAAC,IAAI,CAAC;EACpC,IAAAC,SAAA,GAAsB,IAAAC,eAAQ,YAAAC,MAAA,CAAWrB,IAAI,CAAE,CAAC;IAAAsB,UAAA,OAAAC,eAAA,aAAAJ,SAAA;IAAzCK,GAAG,GAAAF,UAAA;IAAEG,MAAM,GAAAH,UAAA;EAClB,IAAAI,UAAA,GAAsD,IAAAN,eAAQ,EAAC,KAAK,CAAC;IAAAO,UAAA,OAAAJ,eAAA,aAAAG,UAAA;IAA9DE,mBAAmB,GAAAD,UAAA;IAAEE,sBAAsB,GAAAF,UAAA;EAClD,IAAAG,UAAA,GAA8B,IAAAV,eAAQ,EAACJ,MAAM,CAAC;IAAAe,UAAA,OAAAR,eAAA,aAAAO,UAAA;IAAvCE,OAAO,GAAAD,UAAA;IAAEE,UAAU,GAAAF,UAAA,IAAqB,CAAC;EAChD,IAAAG,WAAA,GAAiC,IAAAC,iBAAU,EAACC,+BAAmB,EAAE,IAAI,CAAC;IAAAC,YAAA,OAAAd,eAAA,aAAAW,WAAA;IAA/DI,YAAY,GAAAD,YAAA;IAAEE,QAAQ,GAAAF,YAAA;EAC7B,IAAAG,SAAA,GAAmC,IAAAC,qBAAQ,EAACT,OAAO,CAAC;IAAvCU,UAAU,GAAAF,SAAA,CAAf1C,GAAG;IAAc6C,KAAK,GAAAH,SAAA,CAALG,KAAK;EAC9B,IAAMC,YAAY,GAAG,IAAAC,2BAAkB,EAACF,KAAK,EAAEpC,iBAAiB,CAAC;EACjE,IAAgBuC,QAAQ,GAA+BtC,MAAM,CAArDuC,MAAM;IAAwBC,YAAY,GAAKxC,MAAM,CAAnCyC,UAAU;EAEpC,IAAAC,gBAAS,EACP,YAAM;IACJ,IAAI,CAAClC,MAAM,EAAE;IACb,IAAAmC,UAAA,GAA4B,IAAAV,qBAAQ,EAACzB,MAAM,CAAC;MAA7BoC,QAAQ,GAAAD,UAAA,CAAfR,KAAK;IACb,IAAMU,WAAW,GAAG,IAAAR,2BAAkB,EAACO,QAAQ,EAAE7C,iBAAiB,CAAC;IACnE,IAAI8C,WAAW,EAAEd,QAAQ,CAAC;MAAEe,SAAS,EAAED,WAAW;MAAEE,YAAY,EAAE,KAAK;MAAEC,IAAI,EAAE;IAAS,CAAC,CAAC;IAC1FvB,UAAU,CAACjB,MAAM,CAAC;EACpB,CAAC,EACD,CAACA,MAAM,EAAET,iBAAiB,CAC5B,CAAC;EAED,IAAAkD,qBAAA,GAA4D,IAAAC,+BAAwB,EAAC,CACnFV,YAAY,EACZnD,MAAM,CACP,CAAC;IAAA8D,sBAAA,GAAAF,qBAAA,CAHMG,IAAI;IAAEC,WAAW,GAAAF,sBAAA,cAAG,CAAC,CAAC,GAAAA,sBAAA;IAAWG,cAAc,GAAAL,qBAAA,CAAvBM,OAAO;EAIvC,IAAAC,qBAAA,GAAiFH,WAAW,CAAnFb,YAAY;IAAGiB,YAAY,GAAAD,qBAAA,cAAG,CAAC,CAAC,GAAAA,qBAAA;IAAAE,mBAAA,GAAwCL,WAAW,CAAhDhE,MAAM;IAAGsE,kBAAkB,GAAAD,mBAAA,cAAG,CAAC,CAAC,GAAAA,mBAAA;EAC5E,IAAAE,KAAA,GAAyBH,YAAY,IAAI,CAAC,CAAC;IAAAI,aAAA,GAAAD,KAAA,CAAnCE,OAAO;IAAPA,OAAO,GAAAD,aAAA,cAAG,CAAC,CAAC,GAAAA,aAAA;EACpB,IAAME,SAAS,GAAG1D,SAAS,GAAGyD,OAAO,CAACxF,GAAG,GAAGwF,OAAO,CAACE,YAAY;EAChE,IAAMC,gBAAgB,GAAG,IAAAC,6BAAmB,EAACtE,QAAQ,EAAEC,gBAAgB,CAAC;EACxE,IAAMsE,UAAU,GAAG,IAAAC,uBAAa,EAACH,gBAAgB,EAAER,YAAY,EAAEE,kBAAkB,CAAC;EACpF,IAAAU,SAAA,GAA+E,IAAAC,gBAAQ,EACrF,IAAAC,8BAAuB,EAACR,SAAS,EAAEI,UAAU,CAAC,EAC9C;MACEK,SAAS,EAAE;QAAEC,EAAE,EAAEnC;MAAS,CAAC;MAC3BoC,IAAI,EAAEpB,cAAc,IAAI,CAACW,gBAAgB,CAACU;IAC5C,CACF,CAAC;IAAAC,cAAA,GAAAP,SAAA,CANOjB,IAAI;IAAAyB,eAAA,GAAAD,cAAA,cAA+B,CAAC,CAAC,GAAAA,cAAA;IAAjBE,UAAU,GAAAD,eAAA,CAAtBE,UAAU;IAA8BC,kBAAkB,GAAAX,SAAA,CAA3Bd,OAAO;EAOtD,IAAA0B,mBAAA,GAAqD,IAAAC,2BAAkB,EACrEtF,QAAQ,EACRC,gBAAgB,EAChBiF,UACF,CAAC;IAJOK,eAAe,GAAAF,mBAAA,CAAfE,eAAe;IAAEC,uBAAuB,GAAAH,mBAAA,CAAvBG,uBAAuB;EAMhD,IAAMC,MAAM,GAAG,IAAAC,gCAAyB,EAACC,sBAAW,CAAC;EACrD,IAAAC,qBAAA,GAA4C,IAAAC,2CAAkC,EAAClG,OAAO,CAAC;IAAAmG,sBAAA,OAAA3E,eAAA,aAAAyE,qBAAA;IAAhFG,oBAAoB,GAAAD,sBAAA;IAAEE,WAAW,GAAAF,sBAAA;EAExC,IAAAG,cAAA,GAAoB,IAAAC,uBAAa,EAACzG,MAAM,CAAC;IAAjC0G,OAAO,GAAAF,cAAA,CAAPE,OAAO;EAEf,IAAMC,YAAY,GAAG,IAAAC,2BAAiB,EAAC;IACrCnG,gBAAgB,EAAhBA,gBAAgB;IAChBqC,KAAK,EAAEL,YAAY;IACnBlC,QAAQ,EAAEuF,eAAe;IACzBtF,gBAAgB,EAAEuF,uBAAuB;IACzCQ,WAAW,EAAXA,WAAW;IACXM,SAAS,EAAExH,MAAM,CAACyH,IAAI,CAAC/D,YAAY;EACrC,CAAC,CAAC;EAEF,IAAMgE,mBAAmB,GAAG,IAAAC,kCAAwB,EAClDV,oBAAoB,EACpBC,WAAW,EACXG,OAAO,EACPC,YACF,CAAC;EAED,IAAAM,UAAA,GAAiC,IAAAhC,gBAAQ,EAACe,MAAM,EAAE;MAChDb,SAAS,EAAE;QAAE4B,mBAAmB,EAAnBA,mBAAmB;QAAEG,KAAK,EAAE;MAAE,CAAC;MAAE;MAC9C7B,IAAI,EAAE,CAAC0B,mBAAmB,IAAIpB;IAChC,CAAC,CAAC;IAHM5B,IAAI,GAAAkD,UAAA,CAAJlD,IAAI;IAAEoD,KAAK,GAAAF,UAAA,CAALE,KAAK;IAAEjD,OAAO,GAAA+C,UAAA,CAAP/C,OAAO;EAK5B,IAAIiD,KAAK,EAAE,OAAOA,KAAK,CAACC,OAAO;EAC/B,IAAI,CAAClH,OAAO,CAACoF,MAAM,EAAE,OAAO,IAAI;EAEhC,IAAA+B,KAAA,GACEtD,IAAI,IAAI,CAAC,CAAC;IAAAuD,qBAAA,GAAAD,KAAA,CADJE,sBAAsB;IAAAC,sBAAA,GAAAF,qBAAA,cAAsD,CAAC,CAAC,GAAAA,qBAAA;IAAAG,sBAAA,GAAAD,sBAAA,CAApDE,UAAU;IAAAC,sBAAA,GAAAF,sBAAA,cAAiC,CAAC,CAAC,GAAAA,sBAAA;IAAjBG,UAAU,GAAAD,sBAAA,CAAxBE,YAAY;EAG5D,IAAI,CAACpF,YAAY,IAAI,CAACyB,OAAO,IAAI,CAACyB,kBAAkB,KAAKiC,UAAU,IAAI,CAACb,mBAAmB,CAAC,EAAE;IAC5F,IAAMtD,SAAS,GAAG,IAAAqE,wBAAe,EAACF,UAAU,EAAE1H,OAAO,EAAE6C,YAAY,CAAC;IACpEL,QAAQ,CAAC;MAAEe,SAAS,EAATA,SAAS;MAAEC,YAAY,EAAE,KAAK;MAAEC,IAAI,EAAE;IAAS,CAAC,CAAC;IAC5D,OAAO,IAAI;EACb;EAEA,IAAMoE,YAAY,GAAG,SAAfA,YAAYA,CAAGxE,QAAQ,EAAI;IAC/BvB,sBAAsB,CAAC,KAAK,CAAC;IAC7B,IAAMgG,OAAO,GAAG7G,MAAM,CAAC8G,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE;IAC1C,IAAMC,aAAa,GAAGF,OAAO,OAAAxG,MAAA,CAAOwG,OAAO,IAAK,EAAE;IAClDG,iBAAiB,CAAC,CAAC;IACnB,IAAI,CAAC5E,QAAQ,EAAE;MACb,IAAM6E,SAAS,MAAA5G,MAAA,CAAMqB,UAAU,EAAArB,MAAA,CAAG0G,aAAa,CAAE;MACjD9F,UAAU,CAACgG,SAAS,CAAC;MACrB,OAAOnH,MAAM,CAACoH,IAAI,CAAC,WAAW,EAAED,SAAS,EAAE;QAAEE,OAAO,EAAE,CAACrI,GAAG;QAAEsI,MAAM,EAAE;MAAM,CAAC,CAAC,CAACC,IAAI,CAAC,YAAM;QACtF5G,MAAM,WAAAJ,MAAA,CAAWrB,IAAI,OAAAqB,MAAA,CAAIiH,IAAI,CAACC,GAAG,CAAC,CAAC,CAAE,CAAC,CAAC,CAAC;MAC1C,CAAC,CAAC;IACJ;IACA,IAAMC,MAAM,GAAG,IAAAC,oBAAW,EAAC3I,GAAG,EAAE4C,UAAU,EAAEU,QAAQ,EAAEyE,OAAO,CAAC;IAC9D5F,UAAU,CAACuG,MAAM,CAAC;IAClB,OAAO1H,MAAM,CAACoH,IAAI,CAAC,WAAW,EAAEM,MAAM,EAAE;MAAEL,OAAO,EAAE,CAACrI,GAAG;MAAEsI,MAAM,EAAE;IAAM,CAAC,CAAC;EAC3E,CAAC;EAED,IAAMJ,iBAAiB,GAAG,SAApBA,iBAAiBA,CAAA,EAAS;IAC9B,IAAAU,qBAAA,GAAeC,QAAQ,CAACC,sBAAsB,CAAC,UAAU,CAAC;MAAAC,sBAAA,OAAAtH,eAAA,aAAAmH,qBAAA;MAAnDI,IAAI,GAAAD,sBAAA;IACX,IAAME,uBAAuB,GAAG,CAACjJ,GAAG,IAAIgJ,IAAI;IAE5C,IAAIC,uBAAuB,EAAE;MAC3BC,MAAM,CAACC,QAAQ,CAAC;QACdC,IAAI,EAAE,CAAC;QACPC,GAAG,EAAEH,MAAM,CAACI,WAAW,GAAGC,yBAAa,GAAGP,IAAI,CAACQ,qBAAqB,CAAC,CAAC,CAACH;MACzE,CAAC,CAAC;IACJ,CAAC,MAAM;MACLH,MAAM,CAACC,QAAQ,CAAC,CAAC,EAAE,CAAC,CAAC;IACvB;EACF,CAAC;EAED,IAAI,CAAC3G,YAAY,EAAE,OAAO,IAAI;EAE9B,oBACElF,MAAA,YAAAmM,aAAA,CAAC1L,aAAA,WAAY;IACX2D,GAAG,EAAEA,GAAI;IACTgI,iBAAiB,EAAEjH,QAAS;IAC5BI,KAAK,EAAEC,YAAa;IACpBrC,iBAAiB,EAAEA,iBAAkB;IACrCU,eAAe,EAAEA,eAAgB;IACjC2C,IAAI,EAAE6D,UAAW;IACjB1H,OAAO,EAAEA,OAAQ;IACjB0J,MAAM,EAAE,CAAC,CAAC3J,GAAI;IACdD,MAAM,EAAEA,MAAO;IACf+H,YAAY,EAAEA,YAAa;IAC3BtF,YAAY,EAAEA,YAAa;IAC3BtC,IAAI,EAAEA,IAAK;IACXC,uBAAuB,EAAEA,uBAAwB;IACjD2B,mBAAmB,EAAEA,mBAAoB;IACzCC,sBAAsB,EAAEA,sBAAuB;IAC/C3B,gBAAgB,EAAEA,gBAAiB;IACnCC,iBAAiB,EAAEA,iBAAkB;IACrCM,sBAAsB,EAAEA;EAAuB,CAChD,CAAC;AAEN,CAAC;AAEDd,qBAAqB,CAAC+J,SAAS,GAAG;EAChCjJ,sBAAsB,EAAEkJ,qBAAS,CAACC,MAAM;EACxC/J,MAAM,EAAE8J,qBAAS,CAACC,MAAM;EACxB9J,GAAG,EAAE6J,qBAAS,CAACC,MAAM;EACrB7J,OAAO,EAAE4J,qBAAS,CAACE,KAAK;EACxB7J,IAAI,EAAE2J,qBAAS,CAACC,MAAM,CAACE,UAAU;EACjC7J,uBAAuB,EAAE0J,qBAAS,CAACI,IAAI;EACvC7J,gBAAgB,EAAEyJ,qBAAS,CAACK,MAAM;EAClC7J,iBAAiB,EAAEwJ,qBAAS,CAACK,MAAM;EACnC5J,QAAQ,EAAEuJ,qBAAS,CAACE,KAAK;EACzBxJ,gBAAgB,EAAEsJ,qBAAS,CAACE,KAAK;EACjCvJ,gBAAgB,EAAEqJ,qBAAS,CAACI,IAAI;EAChCxJ,iBAAiB,EAAEoJ,qBAAS,CAACC,MAAM;EACnCpJ,MAAM,EAAEmJ,qBAAS,CAACM;AACpB,CAAC;AAEDtK,qBAAqB,CAACuK,YAAY,GAAG;EACnCpK,GAAG,EAAE,IAAI;EACTC,OAAO,EAAE,EAAE;EACXF,MAAM,EAAE,EAAE;EACVI,uBAAuB,EAAE,IAAI;EAC7BC,gBAAgB,EAAE,CAAC;EACnBC,iBAAiB,EAAE,CAAC;EACpBC,QAAQ,EAAE,EAAE;EACZC,gBAAgB,EAAE,EAAE;EACpBC,gBAAgB,EAAE,KAAK;EACvBC,iBAAiB,EAAE,EAAE;EACrBC,MAAM,EAAE,CAAC,CAAC;EACVC,sBAAsB,EAAE;AAC1B,CAAC;AAAC,IAAA0J,QAAA,GAAAC,OAAA,cAEa,IAAAC,cAAS,EAAC1K,qBAAqB,CAAC"}
1
+ {"version":3,"file":"SearchFilterContainer.js","names":["_react","_interopRequireWildcard","require","_nextjsComponents","_router","_client","_propTypes","_interopRequireDefault","_queryString","_SearchFilter","_HOC","_query","_helpers","_helpers2","_constants","_constants2","_searchFilterReducer","_hooks","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","_typeof","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","SearchFilterContainer","_ref","entity","url","filters","name","isCollapsedOnResponsive","groupAfterMobile","groupAfterDesktop","filterBy","filterByProperty","shouldAddFilters","listComponentName","parent","mobileRefineButtonText","_useContext","useContext","MainContext","isPreview","router","useRouter","asPath","searchFilterRef","useRef","_useState","useState","concat","_useState2","_slicedToArray2","key","setKey","_useState3","_useState4","displaySearchFilter","setDisplaySearchFilter","_useState5","_useState6","urlPath","setUrlPath","_useReducer","useReducer","searchFilterReducer","_useReducer2","filterValues","dispatch","_parseUrl","parseUrl","currentUrl","query","updatedQuery","buildListNameQuery","parentId","itemId","parentEntity","itemEntity","useEffect","_parseUrl2","newQuery","updatedNewQuery","newValues","getFilterValues","shouldSearch","type","_useGetEntitySchemasA","useGetEntitySchemasAsObj","_useGetEntitySchemasA2","data","mainSchemas","schemasLoading","loading","_mainSchemas$parentEn","parentSchema","_mainSchemas$entity","filterEntitySchema","_ref2","_ref2$actions","actions","getAction","getPublished","inheritedFilters","getInheritedFilters","queryProps","getQueryProps","_useQuery","useQuery","generateSingleItemQuery","variables","id","skip","length","_useQuery$data","_useQuery$data2","parentData","entityData","parentQueryLoading","_getUpdatedFilterBy","getUpdatedFilterBy","updatedFilterBy","updatedFilterByProperty","action","getSearchPublishedContent","RAW_RESULTS","_getFilterRangesAndCh","getFilterRangesAndCheckboxesValues","_getFilterRangesAndCh2","checkboxSelectValues","rangeValues","_getEntityData","getEntityData","docType","filtersQuery","buildFiltersQuery","queryKeys","keys","rawQueryStringified","buildRawQueryStringified","_useQuery2","limit","error","message","_ref3","_ref3$searchPublished","searchPublishedContent","_ref3$searchPublished2","_ref3$searchPublished3","rawResults","_ref3$searchPublished4","filterData","aggregations","handleSearch","hashBit","split","parsedHashBit","scrollToFirstList","baseQuery","push","shallow","scroll","then","Date","now","newUrl","buildNewUrl","_document$getElements","document","getElementsByClassName","_document$getElements2","list","shouldScrollToFirstList","window","scrollTo","left","top","pageYOffset","SCROLL_OFFSET","getBoundingClientRect","createElement","setAppliedFilters","hasUrl","propTypes","PropTypes","string","array","isRequired","bool","number","object","defaultProps","_default","exports","withTitle"],"sources":["../../../src/components/SearchFilter/SearchFilterContainer.js"],"sourcesContent":["import React, { useState, useEffect, useRef, useReducer, useContext } from 'react';\nimport { MainContext } from '@blaze-cms/nextjs-components';\nimport { useRouter } from 'next/router';\nimport { useQuery } from '@apollo/client';\nimport PropTypes from 'prop-types';\nimport { parseUrl } from 'query-string';\nimport SearchFilter from './SearchFilter';\nimport { withTitle } from '../../HOC';\nimport { getSearchPublishedContent, generateSingleItemQuery } from '../../application/query';\nimport {\n buildNewUrl,\n getFilterValues,\n getFilterRangesAndCheckboxesValues,\n getUpdatedFilterBy,\n buildListNameQuery\n} from './helpers';\nimport {\n getEntityData,\n getInheritedFilters,\n getQueryProps,\n buildRawQueryStringified,\n buildFiltersQuery\n} from '../../helpers';\nimport { RAW_RESULTS } from './constants';\nimport { SCROLL_OFFSET } from '../../constants';\nimport searchFilterReducer from './searchFilterReducer';\nimport { useGetEntitySchemasAsObj } from '../../hooks';\n\nconst SearchFilterContainer = ({\n entity,\n url,\n filters,\n name,\n isCollapsedOnResponsive,\n groupAfterMobile,\n groupAfterDesktop,\n filterBy,\n filterByProperty,\n shouldAddFilters,\n listComponentName,\n parent,\n mobileRefineButtonText\n}) => {\n const { isPreview } = useContext(MainContext);\n const router = useRouter();\n const { asPath } = router;\n const searchFilterRef = useRef(null);\n const [key, setKey] = useState(`filter-${name}`);\n const [displaySearchFilter, setDisplaySearchFilter] = useState(false);\n const [urlPath, setUrlPath] = useState(asPath); // used as asPath can take too long to update\n const [filterValues, dispatch] = useReducer(searchFilterReducer, null);\n const { url: currentUrl, query } = parseUrl(urlPath);\n const updatedQuery = buildListNameQuery(query, listComponentName);\n const { itemId: parentId, itemEntity: parentEntity } = parent;\n\n useEffect(\n () => {\n const { query: newQuery } = parseUrl(asPath);\n const updatedNewQuery = buildListNameQuery(newQuery, listComponentName);\n const newValues = getFilterValues({}, filters, updatedNewQuery);\n if (newValues) dispatch({ newValues, shouldSearch: false, type: 'update' });\n setUrlPath(asPath);\n },\n // eslint-disable-next-line react-hooks/exhaustive-deps\n [asPath]\n );\n\n const { data: mainSchemas = {}, loading: schemasLoading } = useGetEntitySchemasAsObj([\n parentEntity,\n entity\n ]);\n const { [parentEntity]: parentSchema = {}, [entity]: filterEntitySchema = {} } = mainSchemas;\n const { actions = {} } = parentSchema || {};\n const getAction = isPreview ? actions.get : actions.getPublished;\n const inheritedFilters = getInheritedFilters(filterBy, filterByProperty);\n const queryProps = getQueryProps(inheritedFilters, parentSchema, filterEntitySchema);\n const { data: { entityData: parentData } = {}, loading: parentQueryLoading } = useQuery(\n generateSingleItemQuery(getAction, queryProps),\n {\n variables: { id: parentId },\n skip: schemasLoading || !inheritedFilters.length\n }\n );\n const { updatedFilterBy, updatedFilterByProperty } = getUpdatedFilterBy(\n filterBy,\n filterByProperty,\n parentData\n );\n\n const action = getSearchPublishedContent(RAW_RESULTS);\n const [checkboxSelectValues, rangeValues] = getFilterRangesAndCheckboxesValues(filters);\n\n const { docType } = getEntityData(entity);\n\n const filtersQuery = buildFiltersQuery({\n shouldAddFilters,\n query: filterValues,\n filterBy: updatedFilterBy,\n filterByProperty: updatedFilterByProperty,\n rangeValues,\n queryKeys: Object.keys(updatedQuery)\n });\n\n const rawQueryStringified = buildRawQueryStringified(\n checkboxSelectValues,\n rangeValues,\n docType,\n filtersQuery\n );\n\n const { data, error, loading } = useQuery(action, {\n variables: { rawQueryStringified, limit: 0 }, // we only want aggs so limit=0 for no search results\n skip: !rawQueryStringified || parentQueryLoading\n });\n\n if (error) return error.message;\n if (!filters.length) return null;\n\n const { searchPublishedContent: { rawResults: { aggregations: filterData } = {} } = {} } =\n data || {};\n\n if (!filterValues && !loading && !parentQueryLoading && (filterData || !rawQueryStringified)) {\n const newValues = getFilterValues(filterData, filters, updatedQuery);\n dispatch({ newValues, shouldSearch: false, type: 'update' });\n return null;\n }\n\n const handleSearch = newQuery => {\n setDisplaySearchFilter(false);\n const hashBit = asPath.split('#')[1] || '';\n const parsedHashBit = hashBit ? `#${hashBit}` : '';\n scrollToFirstList();\n if (!newQuery) {\n const baseQuery = `${currentUrl}${parsedHashBit}`;\n setUrlPath(baseQuery);\n return router.push('/Resolver', baseQuery, { shallow: !url, scroll: false }).then(() => {\n setKey(`filter-${name}:${Date.now()}`); // remove after range component update\n });\n }\n const newUrl = buildNewUrl(url, currentUrl, newQuery, hashBit);\n setUrlPath(newUrl);\n return router.push('/Resolver', newUrl, { shallow: !url, scroll: false });\n };\n\n const scrollToFirstList = () => {\n const [list] = document.getElementsByClassName('list-top');\n const shouldScrollToFirstList = !url && list;\n\n if (shouldScrollToFirstList) {\n window.scrollTo({\n left: 0,\n top: window.pageYOffset - SCROLL_OFFSET + list.getBoundingClientRect().top\n });\n } else {\n window.scrollTo(0, 0);\n }\n };\n\n if (!filterValues) return null;\n\n return (\n <SearchFilter\n key={key}\n setAppliedFilters={dispatch}\n query={updatedQuery}\n listComponentName={listComponentName}\n searchFilterRef={searchFilterRef}\n data={filterData}\n filters={filters}\n hasUrl={!!url}\n entity={entity}\n handleSearch={handleSearch}\n filterValues={filterValues}\n name={name}\n isCollapsedOnResponsive={isCollapsedOnResponsive}\n displaySearchFilter={displaySearchFilter}\n setDisplaySearchFilter={setDisplaySearchFilter}\n groupAfterMobile={groupAfterMobile}\n groupAfterDesktop={groupAfterDesktop}\n mobileRefineButtonText={mobileRefineButtonText}\n />\n );\n};\n\nSearchFilterContainer.propTypes = {\n mobileRefineButtonText: PropTypes.string,\n entity: PropTypes.string,\n url: PropTypes.string,\n filters: PropTypes.array,\n name: PropTypes.string.isRequired,\n isCollapsedOnResponsive: PropTypes.bool,\n groupAfterMobile: PropTypes.number,\n groupAfterDesktop: PropTypes.number,\n filterBy: PropTypes.array,\n filterByProperty: PropTypes.array,\n shouldAddFilters: PropTypes.bool,\n listComponentName: PropTypes.string,\n parent: PropTypes.object\n};\n\nSearchFilterContainer.defaultProps = {\n url: null,\n filters: [],\n entity: '',\n isCollapsedOnResponsive: true,\n groupAfterMobile: 0,\n groupAfterDesktop: 0,\n filterBy: [],\n filterByProperty: [],\n shouldAddFilters: false,\n listComponentName: '',\n parent: {},\n mobileRefineButtonText: ''\n};\n\nexport default withTitle(SearchFilterContainer);\n"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"decode-encode.js","names":["decodeValue","exports","value","decodeURIComponent","encodeValue","encodeURIComponent"],"sources":["../../../../src/components/SearchFilter/helpers/decode-encode.js"],"sourcesContent":["const decodeValue = value => decodeURIComponent(value);\n\nconst encodeValue = value => encodeURIComponent(value);\n\nexport { decodeValue, encodeValue };\n"],"mappings":";;;;;;;AAAA,IAAMA,WAAW,GAAAC,OAAA,CAAAD,WAAA,GAAG,SAAdA,WAAWA,CAAGE,KAAK;EAAA,OAAIC,kBAAkB,CAACD,KAAK,CAAC;AAAA;AAEtD,IAAME,WAAW,GAAAH,OAAA,CAAAG,WAAA,GAAG,SAAdA,WAAWA,CAAGF,KAAK;EAAA,OAAIG,kBAAkB,CAACH,KAAK,CAAC;AAAA"}
1
+ {"version":3,"file":"decode-encode.js","names":["decodeValue","exports","value","decodeURIComponent","encodeValue","encodeURIComponent"],"sources":["../../../../src/components/SearchFilter/helpers/decode-encode.js"],"sourcesContent":["const decodeValue = value => decodeURIComponent(value);\nconst encodeValue = value => encodeURIComponent(value);\n\nexport { decodeValue, encodeValue };\n"],"mappings":";;;;;;;AAAA,IAAMA,WAAW,GAAAC,OAAA,CAAAD,WAAA,GAAG,SAAdA,WAAWA,CAAGE,KAAK;EAAA,OAAIC,kBAAkB,CAACD,KAAK,CAAC;AAAA;AACtD,IAAME,WAAW,GAAAH,OAAA,CAAAG,WAAA,GAAG,SAAdA,WAAWA,CAAGF,KAAK;EAAA,OAAIG,kBAAkB,CAACH,KAAK,CAAC;AAAA"}
@@ -99,18 +99,23 @@ const Card = _ref => {
99
99
  if (shouldTriggerRouteChange) router.push(`/Resolver`, url);
100
100
  };
101
101
 
102
- // todo: remove temp env var flag once widely tested BLAZE_PB_ADD_CLICK_TO_CARDS
103
- const clickProps = url && process.env.BLAZE_PB_ADD_CLICK_TO_CARDS ? {
102
+ // todo: asses whether we make link wrapper default after wider testing with BLAZE_PB_ADD_CLICK_TO_CARDS
103
+ const useLinkWrapper = url && process.env.BLAZE_PB_ADD_CLICK_TO_CARDS;
104
+ const clickProps = useLinkWrapper ? {
104
105
  onClick: handleCardClick,
105
- role: 'button'
106
+ href: url,
107
+ ariaLabel: name
106
108
  } : {};
107
- return /*#__PURE__*/React.createElement(Wrapper, wrapperProps, /*#__PURE__*/React.createElement("div", _extends({
109
+ const CardWrapper = useLinkWrapper ? BlazeLink : 'div';
110
+ const childLinkHref = useLinkWrapper ? undefined : url;
111
+ const ChildLinkWrapper = useLinkWrapper ? 'div' : BlazeLink;
112
+ return /*#__PURE__*/React.createElement(Wrapper, wrapperProps, /*#__PURE__*/React.createElement(CardWrapper, _extends({
108
113
  className: classNameWithModifiers
109
114
  }, clickProps), shouldDisplayThumbnail && /*#__PURE__*/React.createElement("div", {
110
115
  className: getModifiers('card__image', modifiers)
111
- }, /*#__PURE__*/React.createElement(BlazeLink, {
116
+ }, /*#__PURE__*/React.createElement(ChildLinkWrapper, {
112
117
  gtmId: gtmId,
113
- href: url,
118
+ href: childLinkHref,
114
119
  className: "card__image-link",
115
120
  scroll: true
116
121
  }, /*#__PURE__*/React.createElement(LazyImage, {
@@ -122,7 +127,7 @@ const Card = _ref => {
122
127
  className: contentWrapperModifier
123
128
  }, /*#__PURE__*/React.createElement("div", {
124
129
  className: getModifiers('card__content', modifiers)
125
- }, displayCategory && (publishedListingPage ? /*#__PURE__*/React.createElement(BlazeLink, {
130
+ }, displayCategory && (publishedListingPage ? /*#__PURE__*/React.createElement(ChildLinkWrapper, {
126
131
  gtmId: gtmId,
127
132
  href: publishedListingPage,
128
133
  className: "badge badge--label",
@@ -131,10 +136,10 @@ const Card = _ref => {
131
136
  className: "badge badge--label"
132
137
  }, label)), displayTitle && /*#__PURE__*/React.createElement("div", {
133
138
  className: titleWrapperModifier
134
- }, /*#__PURE__*/React.createElement(BlazeLink, {
139
+ }, /*#__PURE__*/React.createElement(ChildLinkWrapper, {
135
140
  title: linkTitle,
136
141
  gtmId: gtmId,
137
- href: url,
142
+ href: childLinkHref,
138
143
  scroll: true
139
144
  }, headline)), !!pageBuilderComponents.length && /*#__PURE__*/React.createElement("div", {
140
145
  className: "card__item card__item--full",
@@ -1 +1 @@
1
- {"version":3,"file":"Card.js","names":["React","Fragment","useRouter","PropTypes","BlazeLink","ClickWrapper","getModifiers","renderChildren","updateChildrensParent","getClickWrapperOptions","LazyImage","getPublishedListingUrl","useDynamicSizeKey","CARD_STRING","CARD_CHILDREN_WITH_LINKS","BuildPBComponents","Card","_ref","id","image","name","url","graphqlEntityMap","entityProps","alternativePreHeader","alternativeHeadline","category","modifier","parsedPropsToDisplay","propsToDisplay","propsToDisplayModifiers","gtmId","style","priority","cardChildren","gtmChildren","displayCategory","displayThumbnail","displayTitle","enableOverlay","enableCarousel","titleOverlayModifier","overlayModifier","gridModifier","pageBuilderComponents","__typename","dataEntity","otherProps","_objectWithoutProperties","_excluded","entity","parent","itemId","itemEntity","router","imageSrc","shouldDisplayThumbnail","altText","getImageDefinedProps","modifiers","getInitialModifiers","publishedListingPage","preHeader","label","headline","getCategoryDefinedProps","linkTitle","dynamicSizeKey","shouldUseClickWrapper","wrapperProps","Wrapper","classNameWithModifiers","contentWrapperModifier","titleWrapperModifier","handleCardClick","e","clickEventTag","target","tagName","toLowerCase","clickEventRole","role","shouldTriggerRouteChange","find","childTag","push","clickProps","process","env","BLAZE_PB_ADD_CLICK_TO_CARDS","onClick","createElement","_extends","className","href","scroll","src","alt","sizeKey","title","length","map","prop","i","dynamicKey","propModifier","htmlAttribute","extraProps","props","children","encodeURIComponent","key","propTypes","string","isRequired","shape","data","object","array","bool","oneOfType","arrayOf","node","defaultProps","hasAlternativePreHeader","sponsored","featured"],"sources":["../../../src/components/Card/Card.js"],"sourcesContent":["import React, { Fragment } from 'react';\nimport { useRouter } from 'next/router';\nimport PropTypes from 'prop-types';\nimport BlazeLink from '../BlazeLink';\nimport ClickWrapper from '../ClickWrapper';\nimport {\n getModifiers,\n renderChildren,\n updateChildrensParent,\n getClickWrapperOptions\n} from '../../helpers';\nimport LazyImage from '../LazyImage';\nimport { getPublishedListingUrl, useDynamicSizeKey } from './helpers';\nimport { CARD_STRING, CARD_CHILDREN_WITH_LINKS } from './constants';\nimport BuildPBComponents from '../../hooks/helpers/buildPBComponents';\n\nconst Card = ({\n id,\n image,\n name,\n url,\n graphqlEntityMap,\n entityProps,\n alternativePreHeader,\n alternativeHeadline,\n category,\n modifier,\n parsedPropsToDisplay,\n propsToDisplay,\n propsToDisplayModifiers,\n gtmId,\n style,\n priority,\n cardChildren,\n gtmChildren,\n displayCategory,\n displayThumbnail,\n displayTitle,\n enableOverlay,\n enableCarousel,\n titleOverlayModifier,\n overlayModifier,\n gridModifier,\n pageBuilderComponents,\n __typename: dataEntity,\n ...otherProps\n}) => {\n const entity = graphqlEntityMap[dataEntity];\n updateChildrensParent(cardChildren, id, entity);\n const parent = { itemId: id, itemEntity: entity };\n const router = useRouter();\n const { imageSrc, shouldDisplayThumbnail, altText } = getImageDefinedProps({\n image,\n displayThumbnail,\n name\n });\n\n const modifiers = getInitialModifiers({ modifier, style, otherProps });\n\n const { publishedListingPage, preHeader, label, headline } = getCategoryDefinedProps({\n alternativePreHeader,\n category,\n entity,\n alternativeHeadline,\n displayCategory,\n name\n });\n\n const linkTitle = name;\n\n const dynamicSizeKey = useDynamicSizeKey(CARD_STRING, { style, gridModifier, modifier });\n\n const { shouldUseClickWrapper, wrapperProps } = getClickWrapperOptions(\n gtmChildren,\n entityProps,\n id\n );\n\n const Wrapper = shouldUseClickWrapper ? ClickWrapper : Fragment;\n\n const classNameWithModifiers = getModifiers(CARD_STRING, modifiers);\n\n const contentWrapperModifier = `${getModifiers('card__content-wrapper', modifiers)} ${\n enableOverlay && enableCarousel ? overlayModifier : ''\n }`;\n\n const titleWrapperModifier = `${getModifiers('card__title', modifiers)} ${\n enableOverlay && enableCarousel ? titleOverlayModifier : ''\n }`;\n\n const handleCardClick = e => {\n if (!url) return;\n\n const clickEventTag = e.target.tagName.toLowerCase();\n const clickEventRole = e.target.role;\n const shouldTriggerRouteChange =\n clickEventRole !== 'button' &&\n !CARD_CHILDREN_WITH_LINKS.find(childTag => childTag === clickEventTag);\n if (shouldTriggerRouteChange) router.push(`/Resolver`, url);\n };\n\n // todo: remove temp env var flag once widely tested BLAZE_PB_ADD_CLICK_TO_CARDS\n const clickProps =\n url && process.env.BLAZE_PB_ADD_CLICK_TO_CARDS\n ? {\n onClick: handleCardClick,\n role: 'button'\n }\n : {};\n return (\n <Wrapper {...wrapperProps}>\n <div className={classNameWithModifiers} {...clickProps}>\n {shouldDisplayThumbnail && (\n <div className={getModifiers('card__image', modifiers)}>\n <BlazeLink gtmId={gtmId} href={url} className=\"card__image-link\" scroll>\n <LazyImage\n src={imageSrc}\n alt={altText}\n sizeKey={dynamicSizeKey}\n priority={priority}\n />\n </BlazeLink>\n </div>\n )}\n <div className={contentWrapperModifier}>\n <div className={getModifiers('card__content', modifiers)}>\n {displayCategory &&\n (publishedListingPage ? (\n <BlazeLink\n gtmId={gtmId}\n href={publishedListingPage}\n className=\"badge badge--label\"\n scroll>\n {preHeader.name}\n </BlazeLink>\n ) : (\n <div className=\"badge badge--label\">{label}</div>\n ))}\n {displayTitle && (\n <div className={titleWrapperModifier}>\n <BlazeLink title={linkTitle} gtmId={gtmId} href={url} scroll>\n {headline}\n </BlazeLink>\n </div>\n )}\n {!!pageBuilderComponents.length && (\n <div className=\"card__item card__item--full\" data-testid=\"full-card\">\n {BuildPBComponents(pageBuilderComponents, { parent })}\n </div>\n )}\n {!!parsedPropsToDisplay.length && (\n <div className={getModifiers('card__details', modifiers)}>\n {parsedPropsToDisplay.map((prop, i) => {\n if (!prop) return null;\n\n const dynamicKey = `${id}${i}`;\n const propModifier = propsToDisplayModifiers[i] || '';\n\n const { htmlAttribute } = propsToDisplay[i] || {};\n const extraProps = {};\n if (htmlAttribute && prop.props.children) {\n extraProps[htmlAttribute] = encodeURIComponent(prop.props.children[2]);\n }\n\n return (\n <span key={dynamicKey} className={propModifier} {...extraProps}>\n {prop}\n </span>\n );\n })}\n </div>\n )}\n </div>\n {!!cardChildren && (\n <div className=\"card__child-content\">{renderChildren(cardChildren)}</div>\n )}\n </div>\n </div>\n </Wrapper>\n );\n};\n\nCard.propTypes = {\n id: PropTypes.string.isRequired,\n image: PropTypes.shape({\n url: PropTypes.string,\n data: PropTypes.object\n }),\n graphqlEntityMap: PropTypes.object.isRequired,\n __typename: PropTypes.string.isRequired,\n style: PropTypes.string,\n parsedPropsToDisplay: PropTypes.array,\n propsToDisplay: PropTypes.array,\n propsToDisplayModifiers: PropTypes.array,\n url: PropTypes.string,\n name: PropTypes.string.isRequired,\n entityProps: PropTypes.object,\n gtmId: PropTypes.string,\n alternativePreHeader: PropTypes.shape({\n name: PropTypes.string\n }),\n alternativeHeadline: PropTypes.string,\n category: PropTypes.shape({\n name: PropTypes.string,\n publishedListingPage: PropTypes.shape({\n url: PropTypes.string\n })\n }),\n modifier: PropTypes.string,\n displayCategory: PropTypes.bool.isRequired,\n displayThumbnail: PropTypes.bool.isRequired,\n displayTitle: PropTypes.bool.isRequired,\n enableCarousel: PropTypes.bool,\n enableOverlay: PropTypes.bool,\n overlayModifier: PropTypes.string,\n titleOverlayModifier: PropTypes.string,\n cardChildren: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.node), PropTypes.node]),\n gtmChildren: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.node), PropTypes.node]),\n gridModifier: PropTypes.string,\n priority: PropTypes.bool,\n pageBuilderComponents: PropTypes.array\n};\n\nCard.defaultProps = {\n entityProps: {},\n pageBuilderComponents: [],\n image: {\n url: null,\n data: {}\n },\n gtmId: '',\n style: 'portrait',\n parsedPropsToDisplay: [],\n propsToDisplay: [],\n propsToDisplayModifiers: [],\n url: '',\n alternativePreHeader: null,\n alternativeHeadline: '',\n category: null,\n modifier: '',\n cardChildren: [],\n gtmChildren: [],\n gridModifier: '',\n priority: false,\n overlayModifier: '',\n titleOverlayModifier: '',\n enableOverlay: false,\n enableCarousel: false\n};\n\nconst getCategoryDefinedProps = ({\n alternativePreHeader,\n category,\n entity,\n alternativeHeadline,\n displayCategory,\n name\n}) => {\n const hasAlternativePreHeader = alternativePreHeader && alternativePreHeader.name;\n const preHeader =\n alternativeHeadline && hasAlternativePreHeader ? alternativePreHeader : category;\n const publishedListingPage = getPublishedListingUrl(preHeader);\n const label = preHeader ? preHeader.name : entity;\n const headline =\n !displayCategory || !hasAlternativePreHeader ? name : alternativeHeadline || name;\n return { publishedListingPage, preHeader, label, headline };\n};\n\nconst getImageDefinedProps = ({ image, displayThumbnail, name }) => {\n const { url: imageSrc, data } = image || {};\n const shouldDisplayThumbnail = displayThumbnail && imageSrc;\n const altText = (data && data.altText) || name;\n return { imageSrc, shouldDisplayThumbnail, altText };\n};\n\nconst getInitialModifiers = ({ modifier, style, otherProps }) => {\n const modifiers = [modifier, style];\n const { sponsored, featured } = otherProps;\n if (sponsored) modifiers.push('sponsored');\n if (featured) modifiers.push('featured');\n\n return modifiers;\n};\n\nexport default Card;\n"],"mappings":"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"}
1
+ {"version":3,"file":"Card.js","names":["React","Fragment","useRouter","PropTypes","BlazeLink","ClickWrapper","getModifiers","renderChildren","updateChildrensParent","getClickWrapperOptions","LazyImage","getPublishedListingUrl","useDynamicSizeKey","CARD_STRING","CARD_CHILDREN_WITH_LINKS","BuildPBComponents","Card","_ref","id","image","name","url","graphqlEntityMap","entityProps","alternativePreHeader","alternativeHeadline","category","modifier","parsedPropsToDisplay","propsToDisplay","propsToDisplayModifiers","gtmId","style","priority","cardChildren","gtmChildren","displayCategory","displayThumbnail","displayTitle","enableOverlay","enableCarousel","titleOverlayModifier","overlayModifier","gridModifier","pageBuilderComponents","__typename","dataEntity","otherProps","_objectWithoutProperties","_excluded","entity","parent","itemId","itemEntity","router","imageSrc","shouldDisplayThumbnail","altText","getImageDefinedProps","modifiers","getInitialModifiers","publishedListingPage","preHeader","label","headline","getCategoryDefinedProps","linkTitle","dynamicSizeKey","shouldUseClickWrapper","wrapperProps","Wrapper","classNameWithModifiers","contentWrapperModifier","titleWrapperModifier","handleCardClick","e","clickEventTag","target","tagName","toLowerCase","clickEventRole","role","shouldTriggerRouteChange","find","childTag","push","useLinkWrapper","process","env","BLAZE_PB_ADD_CLICK_TO_CARDS","clickProps","onClick","href","ariaLabel","CardWrapper","childLinkHref","undefined","ChildLinkWrapper","createElement","_extends","className","scroll","src","alt","sizeKey","title","length","map","prop","i","dynamicKey","propModifier","htmlAttribute","extraProps","props","children","encodeURIComponent","key","propTypes","string","isRequired","shape","data","object","array","bool","oneOfType","arrayOf","node","defaultProps","hasAlternativePreHeader","sponsored","featured"],"sources":["../../../src/components/Card/Card.js"],"sourcesContent":["import React, { Fragment } from 'react';\nimport { useRouter } from 'next/router';\nimport PropTypes from 'prop-types';\nimport BlazeLink from '../BlazeLink';\nimport ClickWrapper from '../ClickWrapper';\nimport {\n getModifiers,\n renderChildren,\n updateChildrensParent,\n getClickWrapperOptions\n} from '../../helpers';\nimport LazyImage from '../LazyImage';\nimport { getPublishedListingUrl, useDynamicSizeKey } from './helpers';\nimport { CARD_STRING, CARD_CHILDREN_WITH_LINKS } from './constants';\nimport BuildPBComponents from '../../hooks/helpers/buildPBComponents';\n\nconst Card = ({\n id,\n image,\n name,\n url,\n graphqlEntityMap,\n entityProps,\n alternativePreHeader,\n alternativeHeadline,\n category,\n modifier,\n parsedPropsToDisplay,\n propsToDisplay,\n propsToDisplayModifiers,\n gtmId,\n style,\n priority,\n cardChildren,\n gtmChildren,\n displayCategory,\n displayThumbnail,\n displayTitle,\n enableOverlay,\n enableCarousel,\n titleOverlayModifier,\n overlayModifier,\n gridModifier,\n pageBuilderComponents,\n __typename: dataEntity,\n ...otherProps\n}) => {\n const entity = graphqlEntityMap[dataEntity];\n updateChildrensParent(cardChildren, id, entity);\n const parent = { itemId: id, itemEntity: entity };\n const router = useRouter();\n const { imageSrc, shouldDisplayThumbnail, altText } = getImageDefinedProps({\n image,\n displayThumbnail,\n name\n });\n\n const modifiers = getInitialModifiers({ modifier, style, otherProps });\n\n const { publishedListingPage, preHeader, label, headline } = getCategoryDefinedProps({\n alternativePreHeader,\n category,\n entity,\n alternativeHeadline,\n displayCategory,\n name\n });\n\n const linkTitle = name;\n\n const dynamicSizeKey = useDynamicSizeKey(CARD_STRING, { style, gridModifier, modifier });\n\n const { shouldUseClickWrapper, wrapperProps } = getClickWrapperOptions(\n gtmChildren,\n entityProps,\n id\n );\n\n const Wrapper = shouldUseClickWrapper ? ClickWrapper : Fragment;\n\n const classNameWithModifiers = getModifiers(CARD_STRING, modifiers);\n\n const contentWrapperModifier = `${getModifiers('card__content-wrapper', modifiers)} ${\n enableOverlay && enableCarousel ? overlayModifier : ''\n }`;\n\n const titleWrapperModifier = `${getModifiers('card__title', modifiers)} ${\n enableOverlay && enableCarousel ? titleOverlayModifier : ''\n }`;\n\n const handleCardClick = e => {\n if (!url) return;\n\n const clickEventTag = e.target.tagName.toLowerCase();\n const clickEventRole = e.target.role;\n const shouldTriggerRouteChange =\n clickEventRole !== 'button' &&\n !CARD_CHILDREN_WITH_LINKS.find(childTag => childTag === clickEventTag);\n if (shouldTriggerRouteChange) router.push(`/Resolver`, url);\n };\n\n // todo: asses whether we make link wrapper default after wider testing with BLAZE_PB_ADD_CLICK_TO_CARDS\n const useLinkWrapper = url && process.env.BLAZE_PB_ADD_CLICK_TO_CARDS;\n const clickProps = useLinkWrapper\n ? {\n onClick: handleCardClick,\n href: url,\n ariaLabel: name\n }\n : {};\n const CardWrapper = useLinkWrapper ? BlazeLink : 'div';\n const childLinkHref = useLinkWrapper ? undefined : url;\n const ChildLinkWrapper = useLinkWrapper ? 'div' : BlazeLink;\n\n return (\n <Wrapper {...wrapperProps}>\n <CardWrapper className={classNameWithModifiers} {...clickProps}>\n {shouldDisplayThumbnail && (\n <div className={getModifiers('card__image', modifiers)}>\n <ChildLinkWrapper\n gtmId={gtmId}\n href={childLinkHref}\n className=\"card__image-link\"\n scroll>\n <LazyImage\n src={imageSrc}\n alt={altText}\n sizeKey={dynamicSizeKey}\n priority={priority}\n />\n </ChildLinkWrapper>\n </div>\n )}\n <div className={contentWrapperModifier}>\n <div className={getModifiers('card__content', modifiers)}>\n {displayCategory &&\n (publishedListingPage ? (\n <ChildLinkWrapper\n gtmId={gtmId}\n href={publishedListingPage}\n className=\"badge badge--label\"\n scroll>\n {preHeader.name}\n </ChildLinkWrapper>\n ) : (\n <div className=\"badge badge--label\">{label}</div>\n ))}\n {displayTitle && (\n <div className={titleWrapperModifier}>\n <ChildLinkWrapper title={linkTitle} gtmId={gtmId} href={childLinkHref} scroll>\n {headline}\n </ChildLinkWrapper>\n </div>\n )}\n {!!pageBuilderComponents.length && (\n <div className=\"card__item card__item--full\" data-testid=\"full-card\">\n {BuildPBComponents(pageBuilderComponents, { parent })}\n </div>\n )}\n {!!parsedPropsToDisplay.length && (\n <div className={getModifiers('card__details', modifiers)}>\n {parsedPropsToDisplay.map((prop, i) => {\n if (!prop) return null;\n\n const dynamicKey = `${id}${i}`;\n const propModifier = propsToDisplayModifiers[i] || '';\n\n const { htmlAttribute } = propsToDisplay[i] || {};\n const extraProps = {};\n if (htmlAttribute && prop.props.children) {\n extraProps[htmlAttribute] = encodeURIComponent(prop.props.children[2]);\n }\n\n return (\n <span key={dynamicKey} className={propModifier} {...extraProps}>\n {prop}\n </span>\n );\n })}\n </div>\n )}\n </div>\n {!!cardChildren && (\n <div className=\"card__child-content\">{renderChildren(cardChildren)}</div>\n )}\n </div>\n </CardWrapper>\n </Wrapper>\n );\n};\n\nCard.propTypes = {\n id: PropTypes.string.isRequired,\n image: PropTypes.shape({\n url: PropTypes.string,\n data: PropTypes.object\n }),\n graphqlEntityMap: PropTypes.object.isRequired,\n __typename: PropTypes.string.isRequired,\n style: PropTypes.string,\n parsedPropsToDisplay: PropTypes.array,\n propsToDisplay: PropTypes.array,\n propsToDisplayModifiers: PropTypes.array,\n url: PropTypes.string,\n name: PropTypes.string.isRequired,\n entityProps: PropTypes.object,\n gtmId: PropTypes.string,\n alternativePreHeader: PropTypes.shape({\n name: PropTypes.string\n }),\n alternativeHeadline: PropTypes.string,\n category: PropTypes.shape({\n name: PropTypes.string,\n publishedListingPage: PropTypes.shape({\n url: PropTypes.string\n })\n }),\n modifier: PropTypes.string,\n displayCategory: PropTypes.bool.isRequired,\n displayThumbnail: PropTypes.bool.isRequired,\n displayTitle: PropTypes.bool.isRequired,\n enableCarousel: PropTypes.bool,\n enableOverlay: PropTypes.bool,\n overlayModifier: PropTypes.string,\n titleOverlayModifier: PropTypes.string,\n cardChildren: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.node), PropTypes.node]),\n gtmChildren: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.node), PropTypes.node]),\n gridModifier: PropTypes.string,\n priority: PropTypes.bool,\n pageBuilderComponents: PropTypes.array\n};\n\nCard.defaultProps = {\n entityProps: {},\n pageBuilderComponents: [],\n image: {\n url: null,\n data: {}\n },\n gtmId: '',\n style: 'portrait',\n parsedPropsToDisplay: [],\n propsToDisplay: [],\n propsToDisplayModifiers: [],\n url: '',\n alternativePreHeader: null,\n alternativeHeadline: '',\n category: null,\n modifier: '',\n cardChildren: [],\n gtmChildren: [],\n gridModifier: '',\n priority: false,\n overlayModifier: '',\n titleOverlayModifier: '',\n enableOverlay: false,\n enableCarousel: false\n};\n\nconst getCategoryDefinedProps = ({\n alternativePreHeader,\n category,\n entity,\n alternativeHeadline,\n displayCategory,\n name\n}) => {\n const hasAlternativePreHeader = alternativePreHeader && alternativePreHeader.name;\n const preHeader =\n alternativeHeadline && hasAlternativePreHeader ? alternativePreHeader : category;\n const publishedListingPage = getPublishedListingUrl(preHeader);\n const label = preHeader ? preHeader.name : entity;\n const headline =\n !displayCategory || !hasAlternativePreHeader ? name : alternativeHeadline || name;\n return { publishedListingPage, preHeader, label, headline };\n};\n\nconst getImageDefinedProps = ({ image, displayThumbnail, name }) => {\n const { url: imageSrc, data } = image || {};\n const shouldDisplayThumbnail = displayThumbnail && imageSrc;\n const altText = (data && data.altText) || name;\n return { imageSrc, shouldDisplayThumbnail, altText };\n};\n\nconst getInitialModifiers = ({ modifier, style, otherProps }) => {\n const modifiers = [modifier, style];\n const { sponsored, featured } = otherProps;\n if (sponsored) modifiers.push('sponsored');\n if (featured) modifiers.push('featured');\n\n return modifiers;\n};\n\nexport default Card;\n"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"ListRender.js","names":["React","useQuery","PropTypes","ListPagination","ListHeader","LOAD_MORE","useAppSyncEventHook","buildQueryBooster","ListRender","props","variables","actionKey","action","name","itemsToDisplay","itemsPerPageToUse","limitToUse","initialOffset","isInfinite","omitWrappers","paginationType","listComponent","ListComponent","query","url","listAggregations","isAZ","azFilter","displayTotal","data","updatedVariables","eventName","boostedVariables","error","loading","fetchMore","message","results","listData","listTotal","total","length","currentListLength","currentPage","Math","ceil","totalDisplay","createElement","Fragment","className","_extends","orderedListData","itemsPerPage","propTypes","string","isRequired","object","number","bool","func","array","defaultProps"],"sources":["../../../src/components/List/ListRender.js"],"sourcesContent":["import React from 'react';\nimport { useQuery } from '@apollo/client';\nimport PropTypes from 'prop-types';\nimport ListPagination from './components/Pagination';\nimport ListHeader from './components/Header';\nimport { LOAD_MORE } from '../../constants';\nimport { useAppSyncEventHook } from '../../hooks';\nimport { buildQueryBooster } from './helpers';\n\nconst ListRender = props => {\n const {\n variables,\n actionKey,\n action,\n name,\n itemsToDisplay,\n itemsPerPageToUse,\n limitToUse,\n initialOffset,\n isInfinite,\n omitWrappers,\n paginationType,\n listComponent: ListComponent,\n query,\n url,\n listAggregations,\n isAZ,\n azFilter,\n displayTotal\n } = props;\n const { data: updatedVariables } = useAppSyncEventHook({\n eventName: 'list:query-variables',\n data: variables,\n props\n });\n const boostedVariables = buildQueryBooster(props, updatedVariables);\n\n const { data = {}, error, loading, fetchMore } = useQuery(action, {\n variables: boostedVariables\n });\n\n if (loading) return '';\n if (error) return error.message;\n if (!data[actionKey] || !data[actionKey].results) return null;\n\n const listData = data[actionKey].results;\n const listTotal = data[actionKey].total;\n\n if (!listData || !listData.length) return null;\n const { length: currentListLength } = listData;\n const currentPage = Math.ceil((initialOffset + currentListLength) / itemsPerPageToUse);\n const totalDisplay = limitToUse && listTotal > limitToUse ? limitToUse : listTotal;\n\n return (\n <>\n <span className=\"list-top\" />\n {isAZ && <ListHeader name={name} listAggregations={listAggregations} azFilter={azFilter} />}\n {displayTotal && (\n <div className=\"list_total_results w-full text-left p-4\">Total results: {totalDisplay}</div>\n )}\n <ListComponent\n orderedListData={listData}\n isInfinite={isInfinite}\n initialOffset={initialOffset}\n actionKey={actionKey}\n limitToUse={limitToUse}\n fetchMore={fetchMore}\n omitWrappers={omitWrappers}\n itemsPerPageToUse={itemsPerPageToUse || listData.length}\n listTotal={listTotal}\n currentListLength={currentListLength}\n currentPage={currentPage}\n query={query}\n url={url}\n itemsToDisplay={itemsToDisplay}\n {...props}\n />\n {paginationType !== LOAD_MORE && (\n <ListPagination\n limitToUse={limitToUse}\n itemsPerPage={itemsPerPageToUse}\n listTotal={listTotal}\n name={name}\n isInfinite={isInfinite}\n currentListLength={currentListLength}\n paginationType={paginationType}\n currentPage={currentPage}\n query={query}\n url={url}\n />\n )}\n </>\n );\n};\n\nListRender.propTypes = {\n name: PropTypes.string.isRequired,\n paginationType: PropTypes.string.isRequired,\n variables: PropTypes.object.isRequired,\n actionKey: PropTypes.string.isRequired,\n action: PropTypes.object.isRequired,\n itemsPerPageToUse: PropTypes.number.isRequired,\n limitToUse: PropTypes.number.isRequired,\n initialOffset: PropTypes.number.isRequired,\n isInfinite: PropTypes.bool.isRequired,\n omitWrappers: PropTypes.bool,\n query: PropTypes.object.isRequired,\n url: PropTypes.string.isRequired,\n listComponent: PropTypes.func.isRequired,\n isAZ: PropTypes.bool.isRequired,\n azFilter: PropTypes.string.isRequired,\n listAggregations: PropTypes.array,\n itemsToDisplay: PropTypes.array,\n displayTotal: PropTypes.bool\n};\n\nListRender.defaultProps = {\n omitWrappers: false,\n itemsToDisplay: [],\n listAggregations: [],\n displayTotal: false\n};\n\nexport default ListRender;\n"],"mappings":"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"}
1
+ {"version":3,"file":"ListRender.js","names":["React","useQuery","PropTypes","ListPagination","ListHeader","LOAD_MORE","useAppSyncEventHook","buildQueryBooster","ListRender","props","variables","actionKey","action","name","itemsToDisplay","itemsPerPageToUse","limitToUse","initialOffset","isInfinite","omitWrappers","paginationType","listComponent","ListComponent","query","url","listAggregations","isAZ","azFilter","displayTotal","data","updatedVariables","eventName","boostedVariables","error","loading","fetchMore","message","results","listData","listTotal","total","length","currentListLength","currentPage","Math","ceil","totalDisplay","createElement","Fragment","className","_extends","orderedListData","itemsPerPage","propTypes","string","isRequired","object","number","bool","func","array","defaultProps"],"sources":["../../../src/components/List/ListRender.js"],"sourcesContent":["import React from 'react';\nimport { useQuery } from '@apollo/client';\nimport PropTypes from 'prop-types';\nimport ListPagination from './components/Pagination';\nimport ListHeader from './components/Header';\nimport { LOAD_MORE } from '../../constants';\nimport { useAppSyncEventHook } from '../../hooks';\nimport { buildQueryBooster } from './helpers';\n\nconst ListRender = props => {\n const {\n variables,\n actionKey,\n action,\n name,\n itemsToDisplay,\n itemsPerPageToUse,\n limitToUse,\n initialOffset,\n isInfinite,\n omitWrappers,\n paginationType,\n listComponent: ListComponent,\n query,\n url,\n listAggregations,\n isAZ,\n azFilter,\n displayTotal\n } = props;\n const { data: updatedVariables } = useAppSyncEventHook({\n eventName: 'list:query-variables',\n data: variables,\n props\n });\n const boostedVariables = buildQueryBooster(props, updatedVariables);\n const { data = {}, error, loading, fetchMore } = useQuery(action, {\n variables: boostedVariables\n });\n\n if (loading) return '';\n if (error) return error.message;\n if (!data[actionKey] || !data[actionKey].results) return null;\n\n const listData = data[actionKey].results;\n const listTotal = data[actionKey].total;\n\n if (!listData || !listData.length) return null;\n const { length: currentListLength } = listData;\n const currentPage = Math.ceil((initialOffset + currentListLength) / itemsPerPageToUse);\n const totalDisplay = limitToUse && listTotal > limitToUse ? limitToUse : listTotal;\n\n return (\n <>\n <span className=\"list-top\" />\n {isAZ && <ListHeader name={name} listAggregations={listAggregations} azFilter={azFilter} />}\n {displayTotal && (\n <div className=\"list_total_results w-full text-left p-4\">Total results: {totalDisplay}</div>\n )}\n <ListComponent\n orderedListData={listData}\n isInfinite={isInfinite}\n initialOffset={initialOffset}\n actionKey={actionKey}\n limitToUse={limitToUse}\n fetchMore={fetchMore}\n omitWrappers={omitWrappers}\n itemsPerPageToUse={itemsPerPageToUse || listData.length}\n listTotal={listTotal}\n currentListLength={currentListLength}\n currentPage={currentPage}\n query={query}\n url={url}\n itemsToDisplay={itemsToDisplay}\n {...props}\n />\n {paginationType !== LOAD_MORE && (\n <ListPagination\n limitToUse={limitToUse}\n itemsPerPage={itemsPerPageToUse}\n listTotal={listTotal}\n name={name}\n isInfinite={isInfinite}\n currentListLength={currentListLength}\n paginationType={paginationType}\n currentPage={currentPage}\n query={query}\n url={url}\n />\n )}\n </>\n );\n};\n\nListRender.propTypes = {\n name: PropTypes.string.isRequired,\n paginationType: PropTypes.string.isRequired,\n variables: PropTypes.object.isRequired,\n actionKey: PropTypes.string.isRequired,\n action: PropTypes.object.isRequired,\n itemsPerPageToUse: PropTypes.number.isRequired,\n limitToUse: PropTypes.number.isRequired,\n initialOffset: PropTypes.number.isRequired,\n isInfinite: PropTypes.bool.isRequired,\n omitWrappers: PropTypes.bool,\n query: PropTypes.object.isRequired,\n url: PropTypes.string.isRequired,\n listComponent: PropTypes.func.isRequired,\n isAZ: PropTypes.bool.isRequired,\n azFilter: PropTypes.string.isRequired,\n listAggregations: PropTypes.array,\n itemsToDisplay: PropTypes.array,\n displayTotal: PropTypes.bool\n};\n\nListRender.defaultProps = {\n omitWrappers: false,\n itemsToDisplay: [],\n listAggregations: [],\n displayTotal: false\n};\n\nexport default ListRender;\n"],"mappings":"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"}
@@ -50,18 +50,20 @@ const SearchFilterContainer = ({
50
50
  itemEntity: parentEntity
51
51
  } = parent;
52
52
  useEffect(() => {
53
- if (!asPath) return;
54
53
  const {
55
54
  query: newQuery
56
55
  } = parseUrl(asPath);
57
- const asPathQuery = buildListNameQuery(newQuery, listComponentName);
58
- if (asPathQuery) dispatch({
59
- newValues: asPathQuery,
56
+ const updatedNewQuery = buildListNameQuery(newQuery, listComponentName);
57
+ const newValues = getFilterValues({}, filters, updatedNewQuery);
58
+ if (newValues) dispatch({
59
+ newValues,
60
60
  shouldSearch: false,
61
61
  type: 'update'
62
62
  });
63
63
  setUrlPath(asPath);
64
- }, [asPath, listComponentName]);
64
+ },
65
+ // eslint-disable-next-line react-hooks/exhaustive-deps
66
+ [asPath]);
65
67
  const {
66
68
  data: mainSchemas = {},
67
69
  loading: schemasLoading
@@ -1 +1 @@
1
- {"version":3,"file":"SearchFilterContainer.js","names":["React","useState","useEffect","useRef","useReducer","useContext","MainContext","useRouter","useQuery","PropTypes","parseUrl","SearchFilter","withTitle","getSearchPublishedContent","generateSingleItemQuery","buildNewUrl","getFilterValues","getFilterRangesAndCheckboxesValues","getUpdatedFilterBy","buildListNameQuery","getEntityData","getInheritedFilters","getQueryProps","buildRawQueryStringified","buildFiltersQuery","RAW_RESULTS","SCROLL_OFFSET","searchFilterReducer","useGetEntitySchemasAsObj","SearchFilterContainer","entity","url","filters","name","isCollapsedOnResponsive","groupAfterMobile","groupAfterDesktop","filterBy","filterByProperty","shouldAddFilters","listComponentName","parent","mobileRefineButtonText","isPreview","router","asPath","searchFilterRef","key","setKey","displaySearchFilter","setDisplaySearchFilter","urlPath","setUrlPath","filterValues","dispatch","currentUrl","query","updatedQuery","itemId","parentId","itemEntity","parentEntity","newQuery","asPathQuery","newValues","shouldSearch","type","data","mainSchemas","loading","schemasLoading","parentSchema","filterEntitySchema","actions","getAction","get","getPublished","inheritedFilters","queryProps","entityData","parentData","parentQueryLoading","variables","id","skip","length","updatedFilterBy","updatedFilterByProperty","action","checkboxSelectValues","rangeValues","docType","filtersQuery","queryKeys","Object","keys","rawQueryStringified","error","limit","message","searchPublishedContent","rawResults","aggregations","filterData","handleSearch","hashBit","split","parsedHashBit","scrollToFirstList","baseQuery","push","shallow","scroll","then","Date","now","newUrl","list","document","getElementsByClassName","shouldScrollToFirstList","window","scrollTo","left","top","pageYOffset","getBoundingClientRect","createElement","setAppliedFilters","hasUrl","propTypes","string","array","isRequired","bool","number","object","defaultProps"],"sources":["../../../src/components/SearchFilter/SearchFilterContainer.js"],"sourcesContent":["import React, { useState, useEffect, useRef, useReducer, useContext } from 'react';\nimport { MainContext } from '@blaze-cms/nextjs-components';\nimport { useRouter } from 'next/router';\nimport { useQuery } from '@apollo/client';\nimport PropTypes from 'prop-types';\nimport { parseUrl } from 'query-string';\nimport SearchFilter from './SearchFilter';\nimport { withTitle } from '../../HOC';\nimport { getSearchPublishedContent, generateSingleItemQuery } from '../../application/query';\nimport {\n buildNewUrl,\n getFilterValues,\n getFilterRangesAndCheckboxesValues,\n getUpdatedFilterBy,\n buildListNameQuery\n} from './helpers';\nimport {\n getEntityData,\n getInheritedFilters,\n getQueryProps,\n buildRawQueryStringified,\n buildFiltersQuery\n} from '../../helpers';\nimport { RAW_RESULTS } from './constants';\nimport { SCROLL_OFFSET } from '../../constants';\nimport searchFilterReducer from './searchFilterReducer';\nimport { useGetEntitySchemasAsObj } from '../../hooks';\n\nconst SearchFilterContainer = ({\n entity,\n url,\n filters,\n name,\n isCollapsedOnResponsive,\n groupAfterMobile,\n groupAfterDesktop,\n filterBy,\n filterByProperty,\n shouldAddFilters,\n listComponentName,\n parent,\n mobileRefineButtonText\n}) => {\n const { isPreview } = useContext(MainContext);\n const router = useRouter();\n const { asPath } = router;\n const searchFilterRef = useRef(null);\n const [key, setKey] = useState(`filter-${name}`);\n const [displaySearchFilter, setDisplaySearchFilter] = useState(false);\n const [urlPath, setUrlPath] = useState(asPath); // used as asPath can take too long to update\n const [filterValues, dispatch] = useReducer(searchFilterReducer, null);\n const { url: currentUrl, query } = parseUrl(urlPath);\n const updatedQuery = buildListNameQuery(query, listComponentName);\n const { itemId: parentId, itemEntity: parentEntity } = parent;\n\n useEffect(\n () => {\n if (!asPath) return;\n const { query: newQuery } = parseUrl(asPath);\n const asPathQuery = buildListNameQuery(newQuery, listComponentName);\n if (asPathQuery) dispatch({ newValues: asPathQuery, shouldSearch: false, type: 'update' });\n setUrlPath(asPath);\n },\n [asPath, listComponentName]\n );\n\n const { data: mainSchemas = {}, loading: schemasLoading } = useGetEntitySchemasAsObj([\n parentEntity,\n entity\n ]);\n const { [parentEntity]: parentSchema = {}, [entity]: filterEntitySchema = {} } = mainSchemas;\n const { actions = {} } = parentSchema || {};\n const getAction = isPreview ? actions.get : actions.getPublished;\n const inheritedFilters = getInheritedFilters(filterBy, filterByProperty);\n const queryProps = getQueryProps(inheritedFilters, parentSchema, filterEntitySchema);\n const { data: { entityData: parentData } = {}, loading: parentQueryLoading } = useQuery(\n generateSingleItemQuery(getAction, queryProps),\n {\n variables: { id: parentId },\n skip: schemasLoading || !inheritedFilters.length\n }\n );\n const { updatedFilterBy, updatedFilterByProperty } = getUpdatedFilterBy(\n filterBy,\n filterByProperty,\n parentData\n );\n\n const action = getSearchPublishedContent(RAW_RESULTS);\n const [checkboxSelectValues, rangeValues] = getFilterRangesAndCheckboxesValues(filters);\n\n const { docType } = getEntityData(entity);\n\n const filtersQuery = buildFiltersQuery({\n shouldAddFilters,\n query: filterValues,\n filterBy: updatedFilterBy,\n filterByProperty: updatedFilterByProperty,\n rangeValues,\n queryKeys: Object.keys(updatedQuery)\n });\n\n const rawQueryStringified = buildRawQueryStringified(\n checkboxSelectValues,\n rangeValues,\n docType,\n filtersQuery\n );\n\n const { data, error, loading } = useQuery(action, {\n variables: { rawQueryStringified, limit: 0 }, // we only want aggs so limit=0 for no search results\n skip: !rawQueryStringified || parentQueryLoading\n });\n\n if (error) return error.message;\n if (!filters.length) return null;\n\n const { searchPublishedContent: { rawResults: { aggregations: filterData } = {} } = {} } =\n data || {};\n\n if (!filterValues && !loading && !parentQueryLoading && (filterData || !rawQueryStringified)) {\n const newValues = getFilterValues(filterData, filters, updatedQuery);\n dispatch({ newValues, shouldSearch: false, type: 'update' });\n return null;\n }\n\n const handleSearch = newQuery => {\n setDisplaySearchFilter(false);\n const hashBit = asPath.split('#')[1] || '';\n const parsedHashBit = hashBit ? `#${hashBit}` : '';\n scrollToFirstList();\n if (!newQuery) {\n const baseQuery = `${currentUrl}${parsedHashBit}`;\n setUrlPath(baseQuery);\n return router.push('/Resolver', baseQuery, { shallow: !url, scroll: false }).then(() => {\n setKey(`filter-${name}:${Date.now()}`); // remove after range component update\n });\n }\n const newUrl = buildNewUrl(url, currentUrl, newQuery, hashBit);\n setUrlPath(newUrl);\n return router.push('/Resolver', newUrl, { shallow: !url, scroll: false });\n };\n\n const scrollToFirstList = () => {\n const [list] = document.getElementsByClassName('list-top');\n const shouldScrollToFirstList = !url && list;\n\n if (shouldScrollToFirstList) {\n window.scrollTo({\n left: 0,\n top: window.pageYOffset - SCROLL_OFFSET + list.getBoundingClientRect().top\n });\n } else {\n window.scrollTo(0, 0);\n }\n };\n\n if (!filterValues) return null;\n\n return (\n <SearchFilter\n key={key}\n setAppliedFilters={dispatch}\n query={updatedQuery}\n listComponentName={listComponentName}\n searchFilterRef={searchFilterRef}\n data={filterData}\n filters={filters}\n hasUrl={!!url}\n entity={entity}\n handleSearch={handleSearch}\n filterValues={filterValues}\n name={name}\n isCollapsedOnResponsive={isCollapsedOnResponsive}\n displaySearchFilter={displaySearchFilter}\n setDisplaySearchFilter={setDisplaySearchFilter}\n groupAfterMobile={groupAfterMobile}\n groupAfterDesktop={groupAfterDesktop}\n mobileRefineButtonText={mobileRefineButtonText}\n />\n );\n};\n\nSearchFilterContainer.propTypes = {\n mobileRefineButtonText: PropTypes.string,\n entity: PropTypes.string,\n url: PropTypes.string,\n filters: PropTypes.array,\n name: PropTypes.string.isRequired,\n isCollapsedOnResponsive: PropTypes.bool,\n groupAfterMobile: PropTypes.number,\n groupAfterDesktop: PropTypes.number,\n filterBy: PropTypes.array,\n filterByProperty: PropTypes.array,\n shouldAddFilters: PropTypes.bool,\n listComponentName: PropTypes.string,\n parent: PropTypes.object\n};\n\nSearchFilterContainer.defaultProps = {\n url: null,\n filters: [],\n entity: '',\n isCollapsedOnResponsive: true,\n groupAfterMobile: 0,\n groupAfterDesktop: 0,\n filterBy: [],\n filterByProperty: [],\n shouldAddFilters: false,\n listComponentName: '',\n parent: {},\n mobileRefineButtonText: ''\n};\n\nexport default withTitle(SearchFilterContainer);\n"],"mappings":"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"}
1
+ {"version":3,"file":"SearchFilterContainer.js","names":["React","useState","useEffect","useRef","useReducer","useContext","MainContext","useRouter","useQuery","PropTypes","parseUrl","SearchFilter","withTitle","getSearchPublishedContent","generateSingleItemQuery","buildNewUrl","getFilterValues","getFilterRangesAndCheckboxesValues","getUpdatedFilterBy","buildListNameQuery","getEntityData","getInheritedFilters","getQueryProps","buildRawQueryStringified","buildFiltersQuery","RAW_RESULTS","SCROLL_OFFSET","searchFilterReducer","useGetEntitySchemasAsObj","SearchFilterContainer","entity","url","filters","name","isCollapsedOnResponsive","groupAfterMobile","groupAfterDesktop","filterBy","filterByProperty","shouldAddFilters","listComponentName","parent","mobileRefineButtonText","isPreview","router","asPath","searchFilterRef","key","setKey","displaySearchFilter","setDisplaySearchFilter","urlPath","setUrlPath","filterValues","dispatch","currentUrl","query","updatedQuery","itemId","parentId","itemEntity","parentEntity","newQuery","updatedNewQuery","newValues","shouldSearch","type","data","mainSchemas","loading","schemasLoading","parentSchema","filterEntitySchema","actions","getAction","get","getPublished","inheritedFilters","queryProps","entityData","parentData","parentQueryLoading","variables","id","skip","length","updatedFilterBy","updatedFilterByProperty","action","checkboxSelectValues","rangeValues","docType","filtersQuery","queryKeys","Object","keys","rawQueryStringified","error","limit","message","searchPublishedContent","rawResults","aggregations","filterData","handleSearch","hashBit","split","parsedHashBit","scrollToFirstList","baseQuery","push","shallow","scroll","then","Date","now","newUrl","list","document","getElementsByClassName","shouldScrollToFirstList","window","scrollTo","left","top","pageYOffset","getBoundingClientRect","createElement","setAppliedFilters","hasUrl","propTypes","string","array","isRequired","bool","number","object","defaultProps"],"sources":["../../../src/components/SearchFilter/SearchFilterContainer.js"],"sourcesContent":["import React, { useState, useEffect, useRef, useReducer, useContext } from 'react';\nimport { MainContext } from '@blaze-cms/nextjs-components';\nimport { useRouter } from 'next/router';\nimport { useQuery } from '@apollo/client';\nimport PropTypes from 'prop-types';\nimport { parseUrl } from 'query-string';\nimport SearchFilter from './SearchFilter';\nimport { withTitle } from '../../HOC';\nimport { getSearchPublishedContent, generateSingleItemQuery } from '../../application/query';\nimport {\n buildNewUrl,\n getFilterValues,\n getFilterRangesAndCheckboxesValues,\n getUpdatedFilterBy,\n buildListNameQuery\n} from './helpers';\nimport {\n getEntityData,\n getInheritedFilters,\n getQueryProps,\n buildRawQueryStringified,\n buildFiltersQuery\n} from '../../helpers';\nimport { RAW_RESULTS } from './constants';\nimport { SCROLL_OFFSET } from '../../constants';\nimport searchFilterReducer from './searchFilterReducer';\nimport { useGetEntitySchemasAsObj } from '../../hooks';\n\nconst SearchFilterContainer = ({\n entity,\n url,\n filters,\n name,\n isCollapsedOnResponsive,\n groupAfterMobile,\n groupAfterDesktop,\n filterBy,\n filterByProperty,\n shouldAddFilters,\n listComponentName,\n parent,\n mobileRefineButtonText\n}) => {\n const { isPreview } = useContext(MainContext);\n const router = useRouter();\n const { asPath } = router;\n const searchFilterRef = useRef(null);\n const [key, setKey] = useState(`filter-${name}`);\n const [displaySearchFilter, setDisplaySearchFilter] = useState(false);\n const [urlPath, setUrlPath] = useState(asPath); // used as asPath can take too long to update\n const [filterValues, dispatch] = useReducer(searchFilterReducer, null);\n const { url: currentUrl, query } = parseUrl(urlPath);\n const updatedQuery = buildListNameQuery(query, listComponentName);\n const { itemId: parentId, itemEntity: parentEntity } = parent;\n\n useEffect(\n () => {\n const { query: newQuery } = parseUrl(asPath);\n const updatedNewQuery = buildListNameQuery(newQuery, listComponentName);\n const newValues = getFilterValues({}, filters, updatedNewQuery);\n if (newValues) dispatch({ newValues, shouldSearch: false, type: 'update' });\n setUrlPath(asPath);\n },\n // eslint-disable-next-line react-hooks/exhaustive-deps\n [asPath]\n );\n\n const { data: mainSchemas = {}, loading: schemasLoading } = useGetEntitySchemasAsObj([\n parentEntity,\n entity\n ]);\n const { [parentEntity]: parentSchema = {}, [entity]: filterEntitySchema = {} } = mainSchemas;\n const { actions = {} } = parentSchema || {};\n const getAction = isPreview ? actions.get : actions.getPublished;\n const inheritedFilters = getInheritedFilters(filterBy, filterByProperty);\n const queryProps = getQueryProps(inheritedFilters, parentSchema, filterEntitySchema);\n const { data: { entityData: parentData } = {}, loading: parentQueryLoading } = useQuery(\n generateSingleItemQuery(getAction, queryProps),\n {\n variables: { id: parentId },\n skip: schemasLoading || !inheritedFilters.length\n }\n );\n const { updatedFilterBy, updatedFilterByProperty } = getUpdatedFilterBy(\n filterBy,\n filterByProperty,\n parentData\n );\n\n const action = getSearchPublishedContent(RAW_RESULTS);\n const [checkboxSelectValues, rangeValues] = getFilterRangesAndCheckboxesValues(filters);\n\n const { docType } = getEntityData(entity);\n\n const filtersQuery = buildFiltersQuery({\n shouldAddFilters,\n query: filterValues,\n filterBy: updatedFilterBy,\n filterByProperty: updatedFilterByProperty,\n rangeValues,\n queryKeys: Object.keys(updatedQuery)\n });\n\n const rawQueryStringified = buildRawQueryStringified(\n checkboxSelectValues,\n rangeValues,\n docType,\n filtersQuery\n );\n\n const { data, error, loading } = useQuery(action, {\n variables: { rawQueryStringified, limit: 0 }, // we only want aggs so limit=0 for no search results\n skip: !rawQueryStringified || parentQueryLoading\n });\n\n if (error) return error.message;\n if (!filters.length) return null;\n\n const { searchPublishedContent: { rawResults: { aggregations: filterData } = {} } = {} } =\n data || {};\n\n if (!filterValues && !loading && !parentQueryLoading && (filterData || !rawQueryStringified)) {\n const newValues = getFilterValues(filterData, filters, updatedQuery);\n dispatch({ newValues, shouldSearch: false, type: 'update' });\n return null;\n }\n\n const handleSearch = newQuery => {\n setDisplaySearchFilter(false);\n const hashBit = asPath.split('#')[1] || '';\n const parsedHashBit = hashBit ? `#${hashBit}` : '';\n scrollToFirstList();\n if (!newQuery) {\n const baseQuery = `${currentUrl}${parsedHashBit}`;\n setUrlPath(baseQuery);\n return router.push('/Resolver', baseQuery, { shallow: !url, scroll: false }).then(() => {\n setKey(`filter-${name}:${Date.now()}`); // remove after range component update\n });\n }\n const newUrl = buildNewUrl(url, currentUrl, newQuery, hashBit);\n setUrlPath(newUrl);\n return router.push('/Resolver', newUrl, { shallow: !url, scroll: false });\n };\n\n const scrollToFirstList = () => {\n const [list] = document.getElementsByClassName('list-top');\n const shouldScrollToFirstList = !url && list;\n\n if (shouldScrollToFirstList) {\n window.scrollTo({\n left: 0,\n top: window.pageYOffset - SCROLL_OFFSET + list.getBoundingClientRect().top\n });\n } else {\n window.scrollTo(0, 0);\n }\n };\n\n if (!filterValues) return null;\n\n return (\n <SearchFilter\n key={key}\n setAppliedFilters={dispatch}\n query={updatedQuery}\n listComponentName={listComponentName}\n searchFilterRef={searchFilterRef}\n data={filterData}\n filters={filters}\n hasUrl={!!url}\n entity={entity}\n handleSearch={handleSearch}\n filterValues={filterValues}\n name={name}\n isCollapsedOnResponsive={isCollapsedOnResponsive}\n displaySearchFilter={displaySearchFilter}\n setDisplaySearchFilter={setDisplaySearchFilter}\n groupAfterMobile={groupAfterMobile}\n groupAfterDesktop={groupAfterDesktop}\n mobileRefineButtonText={mobileRefineButtonText}\n />\n );\n};\n\nSearchFilterContainer.propTypes = {\n mobileRefineButtonText: PropTypes.string,\n entity: PropTypes.string,\n url: PropTypes.string,\n filters: PropTypes.array,\n name: PropTypes.string.isRequired,\n isCollapsedOnResponsive: PropTypes.bool,\n groupAfterMobile: PropTypes.number,\n groupAfterDesktop: PropTypes.number,\n filterBy: PropTypes.array,\n filterByProperty: PropTypes.array,\n shouldAddFilters: PropTypes.bool,\n listComponentName: PropTypes.string,\n parent: PropTypes.object\n};\n\nSearchFilterContainer.defaultProps = {\n url: null,\n filters: [],\n entity: '',\n isCollapsedOnResponsive: true,\n groupAfterMobile: 0,\n groupAfterDesktop: 0,\n filterBy: [],\n filterByProperty: [],\n shouldAddFilters: false,\n listComponentName: '',\n parent: {},\n mobileRefineButtonText: ''\n};\n\nexport default withTitle(SearchFilterContainer);\n"],"mappings":"AAAA,OAAOA,KAAK,IAAIC,QAAQ,EAAEC,SAAS,EAAEC,MAAM,EAAEC,UAAU,EAAEC,UAAU,QAAQ,OAAO;AAClF,SAASC,WAAW,QAAQ,8BAA8B;AAC1D,SAASC,SAAS,QAAQ,aAAa;AACvC,SAASC,QAAQ,QAAQ,gBAAgB;AACzC,OAAOC,SAAS,MAAM,YAAY;AAClC,SAASC,QAAQ,QAAQ,cAAc;AACvC,OAAOC,YAAY,MAAM,gBAAgB;AACzC,SAASC,SAAS,QAAQ,WAAW;AACrC,SAASC,yBAAyB,EAAEC,uBAAuB,QAAQ,yBAAyB;AAC5F,SACEC,WAAW,EACXC,eAAe,EACfC,kCAAkC,EAClCC,kBAAkB,EAClBC,kBAAkB,QACb,WAAW;AAClB,SACEC,aAAa,EACbC,mBAAmB,EACnBC,aAAa,EACbC,wBAAwB,EACxBC,iBAAiB,QACZ,eAAe;AACtB,SAASC,WAAW,QAAQ,aAAa;AACzC,SAASC,aAAa,QAAQ,iBAAiB;AAC/C,OAAOC,mBAAmB,MAAM,uBAAuB;AACvD,SAASC,wBAAwB,QAAQ,aAAa;AAEtD,MAAMC,qBAAqB,GAAGA,CAAC;EAC7BC,MAAM;EACNC,GAAG;EACHC,OAAO;EACPC,IAAI;EACJC,uBAAuB;EACvBC,gBAAgB;EAChBC,iBAAiB;EACjBC,QAAQ;EACRC,gBAAgB;EAChBC,gBAAgB;EAChBC,iBAAiB;EACjBC,MAAM;EACNC;AACF,CAAC,KAAK;EACJ,MAAM;IAAEC;EAAU,CAAC,GAAGtC,UAAU,CAACC,WAAW,CAAC;EAC7C,MAAMsC,MAAM,GAAGrC,SAAS,CAAC,CAAC;EAC1B,MAAM;IAAEsC;EAAO,CAAC,GAAGD,MAAM;EACzB,MAAME,eAAe,GAAG3C,MAAM,CAAC,IAAI,CAAC;EACpC,MAAM,CAAC4C,GAAG,EAAEC,MAAM,CAAC,GAAG/C,QAAQ,CAAE,UAASgC,IAAK,EAAC,CAAC;EAChD,MAAM,CAACgB,mBAAmB,EAAEC,sBAAsB,CAAC,GAAGjD,QAAQ,CAAC,KAAK,CAAC;EACrE,MAAM,CAACkD,OAAO,EAAEC,UAAU,CAAC,GAAGnD,QAAQ,CAAC4C,MAAM,CAAC,CAAC,CAAC;EAChD,MAAM,CAACQ,YAAY,EAAEC,QAAQ,CAAC,GAAGlD,UAAU,CAACuB,mBAAmB,EAAE,IAAI,CAAC;EACtE,MAAM;IAAEI,GAAG,EAAEwB,UAAU;IAAEC;EAAM,CAAC,GAAG9C,QAAQ,CAACyC,OAAO,CAAC;EACpD,MAAMM,YAAY,GAAGtC,kBAAkB,CAACqC,KAAK,EAAEhB,iBAAiB,CAAC;EACjE,MAAM;IAAEkB,MAAM,EAAEC,QAAQ;IAAEC,UAAU,EAAEC;EAAa,CAAC,GAAGpB,MAAM;EAE7DvC,SAAS,CACP,MAAM;IACJ,MAAM;MAAEsD,KAAK,EAAEM;IAAS,CAAC,GAAGpD,QAAQ,CAACmC,MAAM,CAAC;IAC5C,MAAMkB,eAAe,GAAG5C,kBAAkB,CAAC2C,QAAQ,EAAEtB,iBAAiB,CAAC;IACvE,MAAMwB,SAAS,GAAGhD,eAAe,CAAC,CAAC,CAAC,EAAEgB,OAAO,EAAE+B,eAAe,CAAC;IAC/D,IAAIC,SAAS,EAAEV,QAAQ,CAAC;MAAEU,SAAS;MAAEC,YAAY,EAAE,KAAK;MAAEC,IAAI,EAAE;IAAS,CAAC,CAAC;IAC3Ed,UAAU,CAACP,MAAM,CAAC;EACpB,CAAC;EACD;EACA,CAACA,MAAM,CACT,CAAC;EAED,MAAM;IAAEsB,IAAI,EAAEC,WAAW,GAAG,CAAC,CAAC;IAAEC,OAAO,EAAEC;EAAe,CAAC,GAAG1C,wBAAwB,CAAC,CACnFiC,YAAY,EACZ/B,MAAM,CACP,CAAC;EACF,MAAM;IAAE,CAAC+B,YAAY,GAAGU,YAAY,GAAG,CAAC,CAAC;IAAE,CAACzC,MAAM,GAAG0C,kBAAkB,GAAG,CAAC;EAAE,CAAC,GAAGJ,WAAW;EAC5F,MAAM;IAAEK,OAAO,GAAG,CAAC;EAAE,CAAC,GAAGF,YAAY,IAAI,CAAC,CAAC;EAC3C,MAAMG,SAAS,GAAG/B,SAAS,GAAG8B,OAAO,CAACE,GAAG,GAAGF,OAAO,CAACG,YAAY;EAChE,MAAMC,gBAAgB,GAAGxD,mBAAmB,CAACgB,QAAQ,EAAEC,gBAAgB,CAAC;EACxE,MAAMwC,UAAU,GAAGxD,aAAa,CAACuD,gBAAgB,EAAEN,YAAY,EAAEC,kBAAkB,CAAC;EACpF,MAAM;IAAEL,IAAI,EAAE;MAAEY,UAAU,EAAEC;IAAW,CAAC,GAAG,CAAC,CAAC;IAAEX,OAAO,EAAEY;EAAmB,CAAC,GAAGzE,QAAQ,CACrFM,uBAAuB,CAAC4D,SAAS,EAAEI,UAAU,CAAC,EAC9C;IACEI,SAAS,EAAE;MAAEC,EAAE,EAAExB;IAAS,CAAC;IAC3ByB,IAAI,EAAEd,cAAc,IAAI,CAACO,gBAAgB,CAACQ;EAC5C,CACF,CAAC;EACD,MAAM;IAAEC,eAAe;IAAEC;EAAwB,CAAC,GAAGrE,kBAAkB,CACrEmB,QAAQ,EACRC,gBAAgB,EAChB0C,UACF,CAAC;EAED,MAAMQ,MAAM,GAAG3E,yBAAyB,CAACY,WAAW,CAAC;EACrD,MAAM,CAACgE,oBAAoB,EAAEC,WAAW,CAAC,GAAGzE,kCAAkC,CAACe,OAAO,CAAC;EAEvF,MAAM;IAAE2D;EAAQ,CAAC,GAAGvE,aAAa,CAACU,MAAM,CAAC;EAEzC,MAAM8D,YAAY,GAAGpE,iBAAiB,CAAC;IACrCe,gBAAgB;IAChBiB,KAAK,EAAEH,YAAY;IACnBhB,QAAQ,EAAEiD,eAAe;IACzBhD,gBAAgB,EAAEiD,uBAAuB;IACzCG,WAAW;IACXG,SAAS,EAAEC,MAAM,CAACC,IAAI,CAACtC,YAAY;EACrC,CAAC,CAAC;EAEF,MAAMuC,mBAAmB,GAAGzE,wBAAwB,CAClDkE,oBAAoB,EACpBC,WAAW,EACXC,OAAO,EACPC,YACF,CAAC;EAED,MAAM;IAAEzB,IAAI;IAAE8B,KAAK;IAAE5B;EAAQ,CAAC,GAAG7D,QAAQ,CAACgF,MAAM,EAAE;IAChDN,SAAS,EAAE;MAAEc,mBAAmB;MAAEE,KAAK,EAAE;IAAE,CAAC;IAAE;IAC9Cd,IAAI,EAAE,CAACY,mBAAmB,IAAIf;EAChC,CAAC,CAAC;EAEF,IAAIgB,KAAK,EAAE,OAAOA,KAAK,CAACE,OAAO;EAC/B,IAAI,CAACnE,OAAO,CAACqD,MAAM,EAAE,OAAO,IAAI;EAEhC,MAAM;IAAEe,sBAAsB,EAAE;MAAEC,UAAU,EAAE;QAAEC,YAAY,EAAEC;MAAW,CAAC,GAAG,CAAC;IAAE,CAAC,GAAG,CAAC;EAAE,CAAC,GACtFpC,IAAI,IAAI,CAAC,CAAC;EAEZ,IAAI,CAACd,YAAY,IAAI,CAACgB,OAAO,IAAI,CAACY,kBAAkB,KAAKsB,UAAU,IAAI,CAACP,mBAAmB,CAAC,EAAE;IAC5F,MAAMhC,SAAS,GAAGhD,eAAe,CAACuF,UAAU,EAAEvE,OAAO,EAAEyB,YAAY,CAAC;IACpEH,QAAQ,CAAC;MAAEU,SAAS;MAAEC,YAAY,EAAE,KAAK;MAAEC,IAAI,EAAE;IAAS,CAAC,CAAC;IAC5D,OAAO,IAAI;EACb;EAEA,MAAMsC,YAAY,GAAG1C,QAAQ,IAAI;IAC/BZ,sBAAsB,CAAC,KAAK,CAAC;IAC7B,MAAMuD,OAAO,GAAG5D,MAAM,CAAC6D,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE;IAC1C,MAAMC,aAAa,GAAGF,OAAO,GAAI,IAAGA,OAAQ,EAAC,GAAG,EAAE;IAClDG,iBAAiB,CAAC,CAAC;IACnB,IAAI,CAAC9C,QAAQ,EAAE;MACb,MAAM+C,SAAS,GAAI,GAAEtD,UAAW,GAAEoD,aAAc,EAAC;MACjDvD,UAAU,CAACyD,SAAS,CAAC;MACrB,OAAOjE,MAAM,CAACkE,IAAI,CAAC,WAAW,EAAED,SAAS,EAAE;QAAEE,OAAO,EAAE,CAAChF,GAAG;QAAEiF,MAAM,EAAE;MAAM,CAAC,CAAC,CAACC,IAAI,CAAC,MAAM;QACtFjE,MAAM,CAAE,UAASf,IAAK,IAAGiF,IAAI,CAACC,GAAG,CAAC,CAAE,EAAC,CAAC,CAAC,CAAC;MAC1C,CAAC,CAAC;IACJ;IACA,MAAMC,MAAM,GAAGrG,WAAW,CAACgB,GAAG,EAAEwB,UAAU,EAAEO,QAAQ,EAAE2C,OAAO,CAAC;IAC9DrD,UAAU,CAACgE,MAAM,CAAC;IAClB,OAAOxE,MAAM,CAACkE,IAAI,CAAC,WAAW,EAAEM,MAAM,EAAE;MAAEL,OAAO,EAAE,CAAChF,GAAG;MAAEiF,MAAM,EAAE;IAAM,CAAC,CAAC;EAC3E,CAAC;EAED,MAAMJ,iBAAiB,GAAGA,CAAA,KAAM;IAC9B,MAAM,CAACS,IAAI,CAAC,GAAGC,QAAQ,CAACC,sBAAsB,CAAC,UAAU,CAAC;IAC1D,MAAMC,uBAAuB,GAAG,CAACzF,GAAG,IAAIsF,IAAI;IAE5C,IAAIG,uBAAuB,EAAE;MAC3BC,MAAM,CAACC,QAAQ,CAAC;QACdC,IAAI,EAAE,CAAC;QACPC,GAAG,EAAEH,MAAM,CAACI,WAAW,GAAGnG,aAAa,GAAG2F,IAAI,CAACS,qBAAqB,CAAC,CAAC,CAACF;MACzE,CAAC,CAAC;IACJ,CAAC,MAAM;MACLH,MAAM,CAACC,QAAQ,CAAC,CAAC,EAAE,CAAC,CAAC;IACvB;EACF,CAAC;EAED,IAAI,CAACrE,YAAY,EAAE,OAAO,IAAI;EAE9B,oBACErD,KAAA,CAAA+H,aAAA,CAACpH,YAAY;IACXoC,GAAG,EAAEA,GAAI;IACTiF,iBAAiB,EAAE1E,QAAS;IAC5BE,KAAK,EAAEC,YAAa;IACpBjB,iBAAiB,EAAEA,iBAAkB;IACrCM,eAAe,EAAEA,eAAgB;IACjCqB,IAAI,EAAEoC,UAAW;IACjBvE,OAAO,EAAEA,OAAQ;IACjBiG,MAAM,EAAE,CAAC,CAAClG,GAAI;IACdD,MAAM,EAAEA,MAAO;IACf0E,YAAY,EAAEA,YAAa;IAC3BnD,YAAY,EAAEA,YAAa;IAC3BpB,IAAI,EAAEA,IAAK;IACXC,uBAAuB,EAAEA,uBAAwB;IACjDe,mBAAmB,EAAEA,mBAAoB;IACzCC,sBAAsB,EAAEA,sBAAuB;IAC/Cf,gBAAgB,EAAEA,gBAAiB;IACnCC,iBAAiB,EAAEA,iBAAkB;IACrCM,sBAAsB,EAAEA;EAAuB,CAChD,CAAC;AAEN,CAAC;AAEDb,qBAAqB,CAACqG,SAAS,GAAG;EAChCxF,sBAAsB,EAAEjC,SAAS,CAAC0H,MAAM;EACxCrG,MAAM,EAAErB,SAAS,CAAC0H,MAAM;EACxBpG,GAAG,EAAEtB,SAAS,CAAC0H,MAAM;EACrBnG,OAAO,EAAEvB,SAAS,CAAC2H,KAAK;EACxBnG,IAAI,EAAExB,SAAS,CAAC0H,MAAM,CAACE,UAAU;EACjCnG,uBAAuB,EAAEzB,SAAS,CAAC6H,IAAI;EACvCnG,gBAAgB,EAAE1B,SAAS,CAAC8H,MAAM;EAClCnG,iBAAiB,EAAE3B,SAAS,CAAC8H,MAAM;EACnClG,QAAQ,EAAE5B,SAAS,CAAC2H,KAAK;EACzB9F,gBAAgB,EAAE7B,SAAS,CAAC2H,KAAK;EACjC7F,gBAAgB,EAAE9B,SAAS,CAAC6H,IAAI;EAChC9F,iBAAiB,EAAE/B,SAAS,CAAC0H,MAAM;EACnC1F,MAAM,EAAEhC,SAAS,CAAC+H;AACpB,CAAC;AAED3G,qBAAqB,CAAC4G,YAAY,GAAG;EACnC1G,GAAG,EAAE,IAAI;EACTC,OAAO,EAAE,EAAE;EACXF,MAAM,EAAE,EAAE;EACVI,uBAAuB,EAAE,IAAI;EAC7BC,gBAAgB,EAAE,CAAC;EACnBC,iBAAiB,EAAE,CAAC;EACpBC,QAAQ,EAAE,EAAE;EACZC,gBAAgB,EAAE,EAAE;EACpBC,gBAAgB,EAAE,KAAK;EACvBC,iBAAiB,EAAE,EAAE;EACrBC,MAAM,EAAE,CAAC,CAAC;EACVC,sBAAsB,EAAE;AAC1B,CAAC;AAED,eAAe9B,SAAS,CAACiB,qBAAqB,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"decode-encode.js","names":["decodeValue","value","decodeURIComponent","encodeValue","encodeURIComponent"],"sources":["../../../../src/components/SearchFilter/helpers/decode-encode.js"],"sourcesContent":["const decodeValue = value => decodeURIComponent(value);\n\nconst encodeValue = value => encodeURIComponent(value);\n\nexport { decodeValue, encodeValue };\n"],"mappings":"AAAA,MAAMA,WAAW,GAAGC,KAAK,IAAIC,kBAAkB,CAACD,KAAK,CAAC;AAEtD,MAAME,WAAW,GAAGF,KAAK,IAAIG,kBAAkB,CAACH,KAAK,CAAC;AAEtD,SAASD,WAAW,EAAEG,WAAW"}
1
+ {"version":3,"file":"decode-encode.js","names":["decodeValue","value","decodeURIComponent","encodeValue","encodeURIComponent"],"sources":["../../../../src/components/SearchFilter/helpers/decode-encode.js"],"sourcesContent":["const decodeValue = value => decodeURIComponent(value);\nconst encodeValue = value => encodeURIComponent(value);\n\nexport { decodeValue, encodeValue };\n"],"mappings":"AAAA,MAAMA,WAAW,GAAGC,KAAK,IAAIC,kBAAkB,CAACD,KAAK,CAAC;AACtD,MAAME,WAAW,GAAGF,KAAK,IAAIG,kBAAkB,CAACH,KAAK,CAAC;AAEtD,SAASD,WAAW,EAAEG,WAAW"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@blaze-cms/react-page-builder",
3
- "version": "0.146.0-alpha.8",
3
+ "version": "0.146.0-alpha.9",
4
4
  "description": "Blaze react page builder",
5
5
  "main": "lib/index.js",
6
6
  "module": "lib-es/index.js",
@@ -90,5 +90,5 @@
90
90
  "lib/*",
91
91
  "lib-es/*"
92
92
  ],
93
- "gitHead": "96806a1ef220f03e1b39894b5b34d6e5fc50c67f"
93
+ "gitHead": "3e35f8ceb5b9ca2eb14a47e2321120fb46cc85b5"
94
94
  }
@@ -99,48 +99,57 @@ const Card = ({
99
99
  if (shouldTriggerRouteChange) router.push(`/Resolver`, url);
100
100
  };
101
101
 
102
- // todo: remove temp env var flag once widely tested BLAZE_PB_ADD_CLICK_TO_CARDS
103
- const clickProps =
104
- url && process.env.BLAZE_PB_ADD_CLICK_TO_CARDS
105
- ? {
106
- onClick: handleCardClick,
107
- role: 'button'
108
- }
109
- : {};
102
+ // todo: asses whether we make link wrapper default after wider testing with BLAZE_PB_ADD_CLICK_TO_CARDS
103
+ const useLinkWrapper = url && process.env.BLAZE_PB_ADD_CLICK_TO_CARDS;
104
+ const clickProps = useLinkWrapper
105
+ ? {
106
+ onClick: handleCardClick,
107
+ href: url,
108
+ ariaLabel: name
109
+ }
110
+ : {};
111
+ const CardWrapper = useLinkWrapper ? BlazeLink : 'div';
112
+ const childLinkHref = useLinkWrapper ? undefined : url;
113
+ const ChildLinkWrapper = useLinkWrapper ? 'div' : BlazeLink;
114
+
110
115
  return (
111
116
  <Wrapper {...wrapperProps}>
112
- <div className={classNameWithModifiers} {...clickProps}>
117
+ <CardWrapper className={classNameWithModifiers} {...clickProps}>
113
118
  {shouldDisplayThumbnail && (
114
119
  <div className={getModifiers('card__image', modifiers)}>
115
- <BlazeLink gtmId={gtmId} href={url} className="card__image-link" scroll>
120
+ <ChildLinkWrapper
121
+ gtmId={gtmId}
122
+ href={childLinkHref}
123
+ className="card__image-link"
124
+ scroll>
116
125
  <LazyImage
117
126
  src={imageSrc}
118
127
  alt={altText}
119
128
  sizeKey={dynamicSizeKey}
120
129
  priority={priority}
121
130
  />
122
- </BlazeLink>
131
+ </ChildLinkWrapper>
123
132
  </div>
124
133
  )}
125
134
  <div className={contentWrapperModifier}>
126
135
  <div className={getModifiers('card__content', modifiers)}>
127
136
  {displayCategory &&
128
137
  (publishedListingPage ? (
129
- <BlazeLink
138
+ <ChildLinkWrapper
130
139
  gtmId={gtmId}
131
140
  href={publishedListingPage}
132
141
  className="badge badge--label"
133
142
  scroll>
134
143
  {preHeader.name}
135
- </BlazeLink>
144
+ </ChildLinkWrapper>
136
145
  ) : (
137
146
  <div className="badge badge--label">{label}</div>
138
147
  ))}
139
148
  {displayTitle && (
140
149
  <div className={titleWrapperModifier}>
141
- <BlazeLink title={linkTitle} gtmId={gtmId} href={url} scroll>
150
+ <ChildLinkWrapper title={linkTitle} gtmId={gtmId} href={childLinkHref} scroll>
142
151
  {headline}
143
- </BlazeLink>
152
+ </ChildLinkWrapper>
144
153
  </div>
145
154
  )}
146
155
  {!!pageBuilderComponents.length && (
@@ -175,7 +184,7 @@ const Card = ({
175
184
  <div className="card__child-content">{renderChildren(cardChildren)}</div>
176
185
  )}
177
186
  </div>
178
- </div>
187
+ </CardWrapper>
179
188
  </Wrapper>
180
189
  );
181
190
  };
@@ -34,7 +34,6 @@ const ListRender = props => {
34
34
  props
35
35
  });
36
36
  const boostedVariables = buildQueryBooster(props, updatedVariables);
37
-
38
37
  const { data = {}, error, loading, fetchMore } = useQuery(action, {
39
38
  variables: boostedVariables
40
39
  });
@@ -55,13 +55,14 @@ const SearchFilterContainer = ({
55
55
 
56
56
  useEffect(
57
57
  () => {
58
- if (!asPath) return;
59
58
  const { query: newQuery } = parseUrl(asPath);
60
- const asPathQuery = buildListNameQuery(newQuery, listComponentName);
61
- if (asPathQuery) dispatch({ newValues: asPathQuery, shouldSearch: false, type: 'update' });
59
+ const updatedNewQuery = buildListNameQuery(newQuery, listComponentName);
60
+ const newValues = getFilterValues({}, filters, updatedNewQuery);
61
+ if (newValues) dispatch({ newValues, shouldSearch: false, type: 'update' });
62
62
  setUrlPath(asPath);
63
63
  },
64
- [asPath, listComponentName]
64
+ // eslint-disable-next-line react-hooks/exhaustive-deps
65
+ [asPath]
65
66
  );
66
67
 
67
68
  const { data: mainSchemas = {}, loading: schemasLoading } = useGetEntitySchemasAsObj([
@@ -1,5 +1,4 @@
1
1
  const decodeValue = value => decodeURIComponent(value);
2
-
3
2
  const encodeValue = value => encodeURIComponent(value);
4
3
 
5
4
  export { decodeValue, encodeValue };
@@ -2,8 +2,9 @@
2
2
  * @jest-environment jsdom
3
3
  */
4
4
  import React from 'react';
5
- import { render as _render, act, waitFor } from '@testing-library/react';
5
+ import { render as _render, act, waitFor, screen } from '@testing-library/react';
6
6
  import '@testing-library/jest-dom/extend-expect';
7
+ import { setEnvs, deleteEnvs } from '@blaze-cms/tools/test-helpers/test-files/test-env';
7
8
  import Card from '../../../../../src/components/Card/Card';
8
9
  import { pageBuilderComponentsMocks } from './mockData';
9
10
 
@@ -211,4 +212,18 @@ describe('Card component', () => {
211
212
  });
212
213
  expect(getByTestId('full-card')).toBeInTheDocument();
213
214
  });
215
+
216
+ it('should render link wrapper', async () => {
217
+ const envs = {
218
+ BLAZE_PB_ADD_CLICK_TO_CARDS: 'true'
219
+ };
220
+ setEnvs(envs);
221
+ const { asFragment } = await render(Card, {
222
+ ...componentProps,
223
+ pageBuilderComponents: pageBuilderComponentsMocks
224
+ });
225
+ expect(screen.getByLabelText(componentProps.name)).toBeInTheDocument();
226
+ expect(asFragment()).toMatchSnapshot();
227
+ deleteEnvs(envs);
228
+ });
214
229
  });
@@ -303,6 +303,89 @@ exports[`Card component should render customPreheader and alternativeHeadline in
303
303
  </DocumentFragment>
304
304
  `;
305
305
 
306
+ exports[`Card component should render link wrapper 1`] = `
307
+ <DocumentFragment>
308
+ <a
309
+ aria-label="mock name"
310
+ class="card card--portrait"
311
+ href="/mockurl"
312
+ >
313
+ <div
314
+ class="card__image card__image--portrait"
315
+ >
316
+ <div
317
+ class="card__image-link"
318
+ gtmid=""
319
+ >
320
+ <img
321
+ alt="test-altText"
322
+ src="test-url"
323
+ />
324
+ </div>
325
+ </div>
326
+ <div
327
+ class="card__content-wrapper card__content-wrapper--portrait "
328
+ >
329
+ <div
330
+ class="card__content card__content--portrait"
331
+ >
332
+ <div
333
+ class="badge badge--label"
334
+ gtmid=""
335
+ href="published-url"
336
+ >
337
+ category-name
338
+ </div>
339
+ <div
340
+ class="card__title card__title--portrait "
341
+ >
342
+ <div
343
+ gtmid=""
344
+ title="mock name"
345
+ >
346
+ mock name
347
+ </div>
348
+ </div>
349
+ <div
350
+ class="card__item card__item--full"
351
+ data-testid="full-card"
352
+ />
353
+ <div
354
+ class="card__details card__details--portrait"
355
+ >
356
+ <span
357
+ class=""
358
+ data-testid="some%20description"
359
+ >
360
+ some description
361
+ </span>
362
+ <span
363
+ class=""
364
+ >
365
+ extra props
366
+ </span>
367
+ </div>
368
+ </div>
369
+ <div
370
+ class="card__child-content"
371
+ >
372
+ <div
373
+ class="child_1"
374
+ >
375
+ some stuff
376
+ </div>
377
+ <div
378
+ class="child_2"
379
+ modifier="child-modi"
380
+ >
381
+ another child
382
+ </div>
383
+ </div>
384
+ </div>
385
+ </a>
386
+ </DocumentFragment>
387
+ `;
388
+
306
389
  exports[`Card component should render without throwing an error and match snapshot 1`] = `
307
390
  <DocumentFragment>
308
391
  <div