@blaze-cms/react-page-builder 0.123.0-alpha.25 → 0.123.0-alpha.27
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 +8 -0
- package/lib/components/Card/Card.js +4 -4
- package/lib/components/Card/Card.js.map +1 -1
- package/lib/constants/index.js +1 -1
- package/lib-es/components/Card/Card.js +4 -4
- package/lib-es/components/Card/Card.js.map +1 -1
- package/package.json +2 -2
- package/src/components/Card/Card.js +4 -4
- package/tests/unit/src/components/Card/__snapshots__/Card.test.js.snap +10 -10
- package/tests/unit/src/components/List/components/Cards/__snapshots__/CardsRender.test.js.snap +12 -12
package/CHANGELOG.md
CHANGED
|
@@ -3,6 +3,14 @@
|
|
|
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.123.0-alpha.27](https://github.com/thebyte9/blaze/compare/v0.123.0-alpha.26...v0.123.0-alpha.27) (2022-04-07)
|
|
7
|
+
|
|
8
|
+
**Note:** Version bump only for package @blaze-cms/react-page-builder
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
|
|
12
|
+
|
|
13
|
+
|
|
6
14
|
# [0.123.0-alpha.25](https://github.com/thebyte9/blaze/compare/v0.123.0-alpha.24...v0.123.0-alpha.25) (2022-04-07)
|
|
7
15
|
|
|
8
16
|
**Note:** Version bump only for package @blaze-cms/react-page-builder
|
|
@@ -227,10 +227,10 @@ Card.defaultProps = {
|
|
|
227
227
|
gtmChildren: [],
|
|
228
228
|
gridModifier: '',
|
|
229
229
|
priority: false,
|
|
230
|
-
overlayModifier: '
|
|
231
|
-
titleOverlayModifier: '
|
|
232
|
-
enableOverlay:
|
|
233
|
-
enableCarousel:
|
|
230
|
+
overlayModifier: '',
|
|
231
|
+
titleOverlayModifier: '',
|
|
232
|
+
enableOverlay: false,
|
|
233
|
+
enableCarousel: false
|
|
234
234
|
};
|
|
235
235
|
|
|
236
236
|
var getCategoryDefinedProps = function getCategoryDefinedProps(_ref2) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/components/Card/Card.js"],"names":["Card","id","image","name","url","entity","entityProps","alternativePreHeader","alternativeHeadline","category","modifier","propsToDisplay","propsToDisplayModifiers","gtmId","style","priority","cardChildren","gtmChildren","displayCategory","displayThumbnail","displayTitle","enableOverlay","enableCarousel","titleOverlayModifier","overlayModifier","gridModifier","otherProps","getImageDefinedProps","imageSrc","shouldDisplayThumbnail","altText","modifiers","getInitialModifiers","getCategoryDefinedProps","publishedListingPage","preHeader","label","headline","linkTitle","dynamicSizeKey","CARD_STRING","shouldUseClickWrapper","wrapperProps","Wrapper","ClickWrapper","Fragment","classNameWithModifiers","contentWrapperModifier","titleWrapperModifier","length","map","prop","i","dynamicKey","propModifier","propTypes","PropTypes","string","isRequired","shape","data","object","array","bool","oneOfType","arrayOf","node","defaultProps","hasAlternativePreHeader","sponsored","featured","push"],"mappings":"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","sourcesContent":["import React, { Fragment } from 'react';\nimport PropTypes from 'prop-types';\nimport BlazeLink from '../BlazeLink';\nimport ClickWrapper from '../ClickWrapper';\nimport {\n getModifiers,\n renderChildren,\n updateChildrensParent,\n getClickWrapperOptions\n} from '../../helpers';\nimport LazyImage from '../LazyImage';\nimport { getPublishedListingUrl, useDynamicSizeKey } from './helpers';\nimport { CARD_STRING } from './constants';\n\nconst Card = ({\n id,\n image,\n name,\n url,\n entity,\n entityProps,\n alternativePreHeader,\n alternativeHeadline,\n category,\n modifier,\n propsToDisplay,\n propsToDisplayModifiers,\n gtmId,\n style,\n priority,\n cardChildren,\n gtmChildren,\n displayCategory,\n displayThumbnail,\n displayTitle,\n enableOverlay,\n enableCarousel,\n titleOverlayModifier,\n overlayModifier,\n gridModifier,\n ...otherProps\n}) => {\n updateChildrensParent(cardChildren, id, entity);\n const { imageSrc, shouldDisplayThumbnail, altText } = getImageDefinedProps({\n image,\n displayThumbnail\n });\n\n const modifiers = getInitialModifiers({ modifier, style, otherProps });\n\n const { publishedListingPage, preHeader, label, headline } = getCategoryDefinedProps({\n alternativePreHeader,\n category,\n entity,\n alternativeHeadline,\n displayCategory,\n name\n });\n\n const linkTitle = name;\n\n const dynamicSizeKey = useDynamicSizeKey(CARD_STRING, { style, gridModifier, modifier });\n\n const { shouldUseClickWrapper, wrapperProps } = getClickWrapperOptions(\n gtmChildren,\n entityProps,\n id\n );\n\n const Wrapper = shouldUseClickWrapper ? ClickWrapper : Fragment;\n\n const classNameWithModifiers = getModifiers(CARD_STRING, modifiers);\n\n const contentWrapperModifier = `${getModifiers('card__content-wrapper', modifiers)} ${\n enableOverlay && enableCarousel ? overlayModifier : ''\n }`;\n\n const titleWrapperModifier = `${getModifiers('card__title', modifiers)} ${\n enableOverlay && enableCarousel ? titleOverlayModifier : ''\n }`;\n\n return (\n <Wrapper {...wrapperProps}>\n <div className={classNameWithModifiers}>\n {shouldDisplayThumbnail && (\n <div className={getModifiers('card__image', modifiers)}>\n <BlazeLink gtmId={gtmId} href={url} className=\"card__image-link\" scroll>\n <LazyImage\n src={imageSrc}\n alt={altText}\n sizeKey={dynamicSizeKey}\n priority={priority}\n />\n </BlazeLink>\n </div>\n )}\n <div className={contentWrapperModifier}>\n <div className={getModifiers('card__content', modifiers)}>\n {displayCategory &&\n (publishedListingPage ? (\n <BlazeLink\n gtmId={gtmId}\n href={publishedListingPage}\n className=\"badge badge--label\"\n scroll>\n {preHeader.name}\n </BlazeLink>\n ) : (\n <div className=\"badge badge--label\">{label}</div>\n ))}\n {displayTitle && (\n <h2 className={titleWrapperModifier}>\n <BlazeLink title={linkTitle} gtmId={gtmId} href={url} scroll>\n {headline}\n </BlazeLink>\n </h2>\n )}\n {!!propsToDisplay.length && (\n <div className={getModifiers('card__details', modifiers)}>\n {propsToDisplay.map((prop, i) => {\n if (!prop) return null;\n const dynamicKey = `${id}${i}`;\n const propModifier = propsToDisplayModifiers[i] || '';\n\n return (\n <span key={dynamicKey} className={propModifier}>\n {prop}\n </span>\n );\n })}\n </div>\n )}\n </div>\n {!!cardChildren && (\n <div className=\"card__child-content\">{renderChildren(cardChildren)}</div>\n )}\n </div>\n </div>\n </Wrapper>\n );\n};\n\nCard.propTypes = {\n id: PropTypes.string.isRequired,\n image: PropTypes.shape({\n url: PropTypes.string,\n data: PropTypes.object\n }),\n style: PropTypes.string,\n propsToDisplay: PropTypes.array,\n propsToDisplayModifiers: PropTypes.array,\n url: PropTypes.string,\n name: PropTypes.string.isRequired,\n entity: PropTypes.string.isRequired,\n entityProps: PropTypes.object,\n gtmId: PropTypes.string,\n alternativePreHeader: PropTypes.shape({\n name: PropTypes.string\n }),\n alternativeHeadline: PropTypes.string,\n category: PropTypes.shape({\n name: PropTypes.string,\n publishedListingPage: PropTypes.shape({\n url: PropTypes.string\n })\n }),\n modifier: PropTypes.string,\n displayCategory: PropTypes.bool.isRequired,\n displayThumbnail: PropTypes.bool.isRequired,\n displayTitle: PropTypes.bool.isRequired,\n enableCarousel: PropTypes.bool,\n enableOverlay: PropTypes.bool,\n overlayModifier: PropTypes.string,\n titleOverlayModifier: PropTypes.string,\n cardChildren: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.node), PropTypes.node]),\n gtmChildren: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.node), PropTypes.node]),\n gridModifier: PropTypes.string,\n priority: PropTypes.bool\n};\n\nCard.defaultProps = {\n entityProps: {},\n image: {\n url: null,\n data: {}\n },\n gtmId: '',\n style: 'portrait',\n propsToDisplay: [],\n propsToDisplayModifiers: [],\n url: '',\n alternativePreHeader: null,\n alternativeHeadline: '',\n category: null,\n modifier: '',\n cardChildren: [],\n gtmChildren: [],\n gridModifier: '',\n priority: false,\n overlayModifier: 'card__content--overlay',\n titleOverlayModifier: 'card__content--overlay__title',\n enableOverlay: true,\n enableCarousel: true\n};\n\nconst getCategoryDefinedProps = ({\n alternativePreHeader,\n category,\n entity,\n alternativeHeadline,\n displayCategory,\n name\n}) => {\n const hasAlternativePreHeader = alternativePreHeader && alternativePreHeader.name;\n const preHeader =\n alternativeHeadline && hasAlternativePreHeader ? alternativePreHeader : category;\n const publishedListingPage = getPublishedListingUrl(preHeader);\n const label = preHeader ? preHeader.name : entity;\n const headline =\n !displayCategory || !hasAlternativePreHeader ? name : alternativeHeadline || name;\n return { publishedListingPage, preHeader, label, headline };\n};\n\nconst getImageDefinedProps = ({ image, displayThumbnail }) => {\n const { url: imageSrc, data } = image || {};\n const shouldDisplayThumbnail = displayThumbnail && imageSrc;\n const altText = (data && data.altText) || '';\n return { imageSrc, shouldDisplayThumbnail, altText };\n};\n\nconst getInitialModifiers = ({ modifier, style, otherProps }) => {\n const modifiers = [modifier, style];\n const { sponsored, featured } = otherProps;\n if (sponsored) modifiers.push('sponsored');\n if (featured) modifiers.push('featured');\n\n return modifiers;\n};\n\nexport default Card;\n"],"file":"Card.js"}
|
|
1
|
+
{"version":3,"sources":["../../../src/components/Card/Card.js"],"names":["Card","id","image","name","url","entity","entityProps","alternativePreHeader","alternativeHeadline","category","modifier","propsToDisplay","propsToDisplayModifiers","gtmId","style","priority","cardChildren","gtmChildren","displayCategory","displayThumbnail","displayTitle","enableOverlay","enableCarousel","titleOverlayModifier","overlayModifier","gridModifier","otherProps","getImageDefinedProps","imageSrc","shouldDisplayThumbnail","altText","modifiers","getInitialModifiers","getCategoryDefinedProps","publishedListingPage","preHeader","label","headline","linkTitle","dynamicSizeKey","CARD_STRING","shouldUseClickWrapper","wrapperProps","Wrapper","ClickWrapper","Fragment","classNameWithModifiers","contentWrapperModifier","titleWrapperModifier","length","map","prop","i","dynamicKey","propModifier","propTypes","PropTypes","string","isRequired","shape","data","object","array","bool","oneOfType","arrayOf","node","defaultProps","hasAlternativePreHeader","sponsored","featured","push"],"mappings":"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","sourcesContent":["import React, { Fragment } from 'react';\nimport PropTypes from 'prop-types';\nimport BlazeLink from '../BlazeLink';\nimport ClickWrapper from '../ClickWrapper';\nimport {\n getModifiers,\n renderChildren,\n updateChildrensParent,\n getClickWrapperOptions\n} from '../../helpers';\nimport LazyImage from '../LazyImage';\nimport { getPublishedListingUrl, useDynamicSizeKey } from './helpers';\nimport { CARD_STRING } from './constants';\n\nconst Card = ({\n id,\n image,\n name,\n url,\n entity,\n entityProps,\n alternativePreHeader,\n alternativeHeadline,\n category,\n modifier,\n propsToDisplay,\n propsToDisplayModifiers,\n gtmId,\n style,\n priority,\n cardChildren,\n gtmChildren,\n displayCategory,\n displayThumbnail,\n displayTitle,\n enableOverlay,\n enableCarousel,\n titleOverlayModifier,\n overlayModifier,\n gridModifier,\n ...otherProps\n}) => {\n updateChildrensParent(cardChildren, id, entity);\n const { imageSrc, shouldDisplayThumbnail, altText } = getImageDefinedProps({\n image,\n displayThumbnail\n });\n\n const modifiers = getInitialModifiers({ modifier, style, otherProps });\n\n const { publishedListingPage, preHeader, label, headline } = getCategoryDefinedProps({\n alternativePreHeader,\n category,\n entity,\n alternativeHeadline,\n displayCategory,\n name\n });\n\n const linkTitle = name;\n\n const dynamicSizeKey = useDynamicSizeKey(CARD_STRING, { style, gridModifier, modifier });\n\n const { shouldUseClickWrapper, wrapperProps } = getClickWrapperOptions(\n gtmChildren,\n entityProps,\n id\n );\n\n const Wrapper = shouldUseClickWrapper ? ClickWrapper : Fragment;\n\n const classNameWithModifiers = getModifiers(CARD_STRING, modifiers);\n\n const contentWrapperModifier = `${getModifiers('card__content-wrapper', modifiers)} ${\n enableOverlay && enableCarousel ? overlayModifier : ''\n }`;\n\n const titleWrapperModifier = `${getModifiers('card__title', modifiers)} ${\n enableOverlay && enableCarousel ? titleOverlayModifier : ''\n }`;\n\n return (\n <Wrapper {...wrapperProps}>\n <div className={classNameWithModifiers}>\n {shouldDisplayThumbnail && (\n <div className={getModifiers('card__image', modifiers)}>\n <BlazeLink gtmId={gtmId} href={url} className=\"card__image-link\" scroll>\n <LazyImage\n src={imageSrc}\n alt={altText}\n sizeKey={dynamicSizeKey}\n priority={priority}\n />\n </BlazeLink>\n </div>\n )}\n <div className={contentWrapperModifier}>\n <div className={getModifiers('card__content', modifiers)}>\n {displayCategory &&\n (publishedListingPage ? (\n <BlazeLink\n gtmId={gtmId}\n href={publishedListingPage}\n className=\"badge badge--label\"\n scroll>\n {preHeader.name}\n </BlazeLink>\n ) : (\n <div className=\"badge badge--label\">{label}</div>\n ))}\n {displayTitle && (\n <h2 className={titleWrapperModifier}>\n <BlazeLink title={linkTitle} gtmId={gtmId} href={url} scroll>\n {headline}\n </BlazeLink>\n </h2>\n )}\n {!!propsToDisplay.length && (\n <div className={getModifiers('card__details', modifiers)}>\n {propsToDisplay.map((prop, i) => {\n if (!prop) return null;\n const dynamicKey = `${id}${i}`;\n const propModifier = propsToDisplayModifiers[i] || '';\n\n return (\n <span key={dynamicKey} className={propModifier}>\n {prop}\n </span>\n );\n })}\n </div>\n )}\n </div>\n {!!cardChildren && (\n <div className=\"card__child-content\">{renderChildren(cardChildren)}</div>\n )}\n </div>\n </div>\n </Wrapper>\n );\n};\n\nCard.propTypes = {\n id: PropTypes.string.isRequired,\n image: PropTypes.shape({\n url: PropTypes.string,\n data: PropTypes.object\n }),\n style: PropTypes.string,\n propsToDisplay: PropTypes.array,\n propsToDisplayModifiers: PropTypes.array,\n url: PropTypes.string,\n name: PropTypes.string.isRequired,\n entity: PropTypes.string.isRequired,\n entityProps: PropTypes.object,\n gtmId: PropTypes.string,\n alternativePreHeader: PropTypes.shape({\n name: PropTypes.string\n }),\n alternativeHeadline: PropTypes.string,\n category: PropTypes.shape({\n name: PropTypes.string,\n publishedListingPage: PropTypes.shape({\n url: PropTypes.string\n })\n }),\n modifier: PropTypes.string,\n displayCategory: PropTypes.bool.isRequired,\n displayThumbnail: PropTypes.bool.isRequired,\n displayTitle: PropTypes.bool.isRequired,\n enableCarousel: PropTypes.bool,\n enableOverlay: PropTypes.bool,\n overlayModifier: PropTypes.string,\n titleOverlayModifier: PropTypes.string,\n cardChildren: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.node), PropTypes.node]),\n gtmChildren: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.node), PropTypes.node]),\n gridModifier: PropTypes.string,\n priority: PropTypes.bool\n};\n\nCard.defaultProps = {\n entityProps: {},\n image: {\n url: null,\n data: {}\n },\n gtmId: '',\n style: 'portrait',\n propsToDisplay: [],\n propsToDisplayModifiers: [],\n url: '',\n alternativePreHeader: null,\n alternativeHeadline: '',\n category: null,\n modifier: '',\n cardChildren: [],\n gtmChildren: [],\n gridModifier: '',\n priority: false,\n overlayModifier: '',\n titleOverlayModifier: '',\n enableOverlay: false,\n enableCarousel: false\n};\n\nconst getCategoryDefinedProps = ({\n alternativePreHeader,\n category,\n entity,\n alternativeHeadline,\n displayCategory,\n name\n}) => {\n const hasAlternativePreHeader = alternativePreHeader && alternativePreHeader.name;\n const preHeader =\n alternativeHeadline && hasAlternativePreHeader ? alternativePreHeader : category;\n const publishedListingPage = getPublishedListingUrl(preHeader);\n const label = preHeader ? preHeader.name : entity;\n const headline =\n !displayCategory || !hasAlternativePreHeader ? name : alternativeHeadline || name;\n return { publishedListingPage, preHeader, label, headline };\n};\n\nconst getImageDefinedProps = ({ image, displayThumbnail }) => {\n const { url: imageSrc, data } = image || {};\n const shouldDisplayThumbnail = displayThumbnail && imageSrc;\n const altText = (data && data.altText) || '';\n return { imageSrc, shouldDisplayThumbnail, altText };\n};\n\nconst getInitialModifiers = ({ modifier, style, otherProps }) => {\n const modifiers = [modifier, style];\n const { sponsored, featured } = otherProps;\n if (sponsored) modifiers.push('sponsored');\n if (featured) modifiers.push('featured');\n\n return modifiers;\n};\n\nexport default Card;\n"],"file":"Card.js"}
|
package/lib/constants/index.js
CHANGED
|
@@ -6,7 +6,7 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
6
6
|
value: true
|
|
7
7
|
});
|
|
8
8
|
exports.SELECT = exports.SEARCH_TERM = exports.SEARCH_PUBLISHED_CONTENT = exports.SEARCH = exports.SCROLL_OFFSET = exports.ROW = exports.RANGE = exports.PUBLISHED = exports.PROPS_TO_CHECK = exports.PREVIOUS_STRING = exports.PREHEADER_PROP = exports.PB_QUERY_CONST = exports.PASSWORD_VALIDATION_MESSAGE = exports.PASSWORD_REGEX = exports.PASSWORD_CONFIRM_MESSAGE = exports.PASSWORD = exports.PAGINATION_QUERY_CONST = exports.PAGINATION_DISPLAY_LIMIT = exports.PAGINATION_DIFFERENCE = exports.OR_OPERATOR = exports.OR = exports.ON_CLICK = exports.OBJECT = exports.NEXT_STRING = exports.MOUSE_LEAVE = exports.MOUSE_ENTER = exports.MOBILE_WIDTH = exports.MOBILE = exports.MIN_BANNER_HEIGHT = exports.MENU_ITEM = exports.MAX_BANNER_HEIGHT = exports.LOGOUT = exports.LOGIN_FORM = exports.LOAD_MORE_STRING = exports.LOAD_MORE = exports.LINK = exports.KEYWORD = exports.JW_PLAYER_TYPE_FILE = exports.IN_VIEW_CONFIG = exports.INVISIBLE = exports.INFINITE = exports.IMAGE_WRAPPER = exports.IMAGES = exports.IMAGE = exports.ID = exports.ICON_BUTTON = exports.HOVER = exports.HIDE = exports.HIDDEN = exports.HERO_WRAPPER = exports.HERO = exports.HEADLINE_PROP = exports.HALF = exports.GTM_DATA_ID_ATTR = exports.GTM = exports.GRAPH_QL_ERROR = exports.GET_FILE_FALLBACK = exports.GET_BANNER = exports.FULL = exports.FEATURED = exports.END_ADUNIT = exports.EMAIL = exports.ELEMENT = exports.DESK = exports.DEFAULT_OFFSET = exports.DEFAULT_LIMIT = exports.DATE = exports.DATA_SUMMARY_URL_REGEX = exports.DATA_SUMMARY_TEL_REGEX = exports.DATA_SUMMARY_EMAIL_REGEX = exports.COUNT_CONTENT_HIERARCHIES = exports.COLUMN = exports.CODE = exports.CLICK = exports.CLASS_MODIFIERS = exports.CLASSIC = exports.CHILD_PROPS_TO_USE = exports.CHECKBOX = exports.CENTER = exports.CATEGORY_ID = exports.CAROUSEL = exports.BUTTON_ICON = exports.BUTTON = exports.BREAKPOINT_SIZES = exports.BOLD_TAG = exports.BLANK_SPACE_UNICODE_STRING = exports.BANNER_QUERY_PROPS = exports.BANNER_LOADING = exports.BANNER_LOADED = exports.BANNER_EMPTY = exports.AZ_QUERY_CONST = exports.AZ_AGGS = exports.AZ = exports.AND_OPERATOR = exports.AND = exports.ANCHOR_TAG = exports.ALL_AZ_SORT = exports.ALLOWED_BLOCK_TYPES = exports.ALL = exports.ALIGNMENT = void 0;
|
|
9
|
-
exports.WITH_BANNER = exports.WIDE = exports.WAYPOINT_BOTTOM_OFFSET = exports.VISIBLE = exports.VIDEO_WRAPPER_CLASS_NAME = exports.TEXT_SEARCH = exports.TARGET_BLANK = exports.TABLET = exports.STRING = exports.SPONSORED = exports.SHOW =
|
|
9
|
+
exports.WITH_BANNER = exports.WIDE = exports.WAYPOINT_BOTTOM_OFFSET = exports.VISIBLE = exports.VIDEO_WRAPPER_CLASS_NAME = exports.TEXT_SEARCH = exports.TARGET_BLANK = exports.TABLET = exports.STRING = exports.SPONSORED = exports.SHOW = void 0;
|
|
10
10
|
var BOLD_TAG = 'b';
|
|
11
11
|
exports.BOLD_TAG = BOLD_TAG;
|
|
12
12
|
var BUTTON = 'button';
|
|
@@ -183,10 +183,10 @@ Card.defaultProps = {
|
|
|
183
183
|
gtmChildren: [],
|
|
184
184
|
gridModifier: '',
|
|
185
185
|
priority: false,
|
|
186
|
-
overlayModifier: '
|
|
187
|
-
titleOverlayModifier: '
|
|
188
|
-
enableOverlay:
|
|
189
|
-
enableCarousel:
|
|
186
|
+
overlayModifier: '',
|
|
187
|
+
titleOverlayModifier: '',
|
|
188
|
+
enableOverlay: false,
|
|
189
|
+
enableCarousel: false
|
|
190
190
|
};
|
|
191
191
|
|
|
192
192
|
const getCategoryDefinedProps = ({
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/components/Card/Card.js"],"names":["React","Fragment","PropTypes","BlazeLink","ClickWrapper","getModifiers","renderChildren","updateChildrensParent","getClickWrapperOptions","LazyImage","getPublishedListingUrl","useDynamicSizeKey","CARD_STRING","Card","id","image","name","url","entity","entityProps","alternativePreHeader","alternativeHeadline","category","modifier","propsToDisplay","propsToDisplayModifiers","gtmId","style","priority","cardChildren","gtmChildren","displayCategory","displayThumbnail","displayTitle","enableOverlay","enableCarousel","titleOverlayModifier","overlayModifier","gridModifier","otherProps","imageSrc","shouldDisplayThumbnail","altText","getImageDefinedProps","modifiers","getInitialModifiers","publishedListingPage","preHeader","label","headline","getCategoryDefinedProps","linkTitle","dynamicSizeKey","shouldUseClickWrapper","wrapperProps","Wrapper","classNameWithModifiers","contentWrapperModifier","titleWrapperModifier","length","map","prop","i","dynamicKey","propModifier","propTypes","string","isRequired","shape","data","object","array","bool","oneOfType","arrayOf","node","defaultProps","hasAlternativePreHeader","sponsored","featured","push"],"mappings":"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","sourcesContent":["import React, { Fragment } from 'react';\nimport PropTypes from 'prop-types';\nimport BlazeLink from '../BlazeLink';\nimport ClickWrapper from '../ClickWrapper';\nimport {\n getModifiers,\n renderChildren,\n updateChildrensParent,\n getClickWrapperOptions\n} from '../../helpers';\nimport LazyImage from '../LazyImage';\nimport { getPublishedListingUrl, useDynamicSizeKey } from './helpers';\nimport { CARD_STRING } from './constants';\n\nconst Card = ({\n id,\n image,\n name,\n url,\n entity,\n entityProps,\n alternativePreHeader,\n alternativeHeadline,\n category,\n modifier,\n propsToDisplay,\n propsToDisplayModifiers,\n gtmId,\n style,\n priority,\n cardChildren,\n gtmChildren,\n displayCategory,\n displayThumbnail,\n displayTitle,\n enableOverlay,\n enableCarousel,\n titleOverlayModifier,\n overlayModifier,\n gridModifier,\n ...otherProps\n}) => {\n updateChildrensParent(cardChildren, id, entity);\n const { imageSrc, shouldDisplayThumbnail, altText } = getImageDefinedProps({\n image,\n displayThumbnail\n });\n\n const modifiers = getInitialModifiers({ modifier, style, otherProps });\n\n const { publishedListingPage, preHeader, label, headline } = getCategoryDefinedProps({\n alternativePreHeader,\n category,\n entity,\n alternativeHeadline,\n displayCategory,\n name\n });\n\n const linkTitle = name;\n\n const dynamicSizeKey = useDynamicSizeKey(CARD_STRING, { style, gridModifier, modifier });\n\n const { shouldUseClickWrapper, wrapperProps } = getClickWrapperOptions(\n gtmChildren,\n entityProps,\n id\n );\n\n const Wrapper = shouldUseClickWrapper ? ClickWrapper : Fragment;\n\n const classNameWithModifiers = getModifiers(CARD_STRING, modifiers);\n\n const contentWrapperModifier = `${getModifiers('card__content-wrapper', modifiers)} ${\n enableOverlay && enableCarousel ? overlayModifier : ''\n }`;\n\n const titleWrapperModifier = `${getModifiers('card__title', modifiers)} ${\n enableOverlay && enableCarousel ? titleOverlayModifier : ''\n }`;\n\n return (\n <Wrapper {...wrapperProps}>\n <div className={classNameWithModifiers}>\n {shouldDisplayThumbnail && (\n <div className={getModifiers('card__image', modifiers)}>\n <BlazeLink gtmId={gtmId} href={url} className=\"card__image-link\" scroll>\n <LazyImage\n src={imageSrc}\n alt={altText}\n sizeKey={dynamicSizeKey}\n priority={priority}\n />\n </BlazeLink>\n </div>\n )}\n <div className={contentWrapperModifier}>\n <div className={getModifiers('card__content', modifiers)}>\n {displayCategory &&\n (publishedListingPage ? (\n <BlazeLink\n gtmId={gtmId}\n href={publishedListingPage}\n className=\"badge badge--label\"\n scroll>\n {preHeader.name}\n </BlazeLink>\n ) : (\n <div className=\"badge badge--label\">{label}</div>\n ))}\n {displayTitle && (\n <h2 className={titleWrapperModifier}>\n <BlazeLink title={linkTitle} gtmId={gtmId} href={url} scroll>\n {headline}\n </BlazeLink>\n </h2>\n )}\n {!!propsToDisplay.length && (\n <div className={getModifiers('card__details', modifiers)}>\n {propsToDisplay.map((prop, i) => {\n if (!prop) return null;\n const dynamicKey = `${id}${i}`;\n const propModifier = propsToDisplayModifiers[i] || '';\n\n return (\n <span key={dynamicKey} className={propModifier}>\n {prop}\n </span>\n );\n })}\n </div>\n )}\n </div>\n {!!cardChildren && (\n <div className=\"card__child-content\">{renderChildren(cardChildren)}</div>\n )}\n </div>\n </div>\n </Wrapper>\n );\n};\n\nCard.propTypes = {\n id: PropTypes.string.isRequired,\n image: PropTypes.shape({\n url: PropTypes.string,\n data: PropTypes.object\n }),\n style: PropTypes.string,\n propsToDisplay: PropTypes.array,\n propsToDisplayModifiers: PropTypes.array,\n url: PropTypes.string,\n name: PropTypes.string.isRequired,\n entity: PropTypes.string.isRequired,\n entityProps: PropTypes.object,\n gtmId: PropTypes.string,\n alternativePreHeader: PropTypes.shape({\n name: PropTypes.string\n }),\n alternativeHeadline: PropTypes.string,\n category: PropTypes.shape({\n name: PropTypes.string,\n publishedListingPage: PropTypes.shape({\n url: PropTypes.string\n })\n }),\n modifier: PropTypes.string,\n displayCategory: PropTypes.bool.isRequired,\n displayThumbnail: PropTypes.bool.isRequired,\n displayTitle: PropTypes.bool.isRequired,\n enableCarousel: PropTypes.bool,\n enableOverlay: PropTypes.bool,\n overlayModifier: PropTypes.string,\n titleOverlayModifier: PropTypes.string,\n cardChildren: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.node), PropTypes.node]),\n gtmChildren: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.node), PropTypes.node]),\n gridModifier: PropTypes.string,\n priority: PropTypes.bool\n};\n\nCard.defaultProps = {\n entityProps: {},\n image: {\n url: null,\n data: {}\n },\n gtmId: '',\n style: 'portrait',\n propsToDisplay: [],\n propsToDisplayModifiers: [],\n url: '',\n alternativePreHeader: null,\n alternativeHeadline: '',\n category: null,\n modifier: '',\n cardChildren: [],\n gtmChildren: [],\n gridModifier: '',\n priority: false,\n overlayModifier: 'card__content--overlay',\n titleOverlayModifier: 'card__content--overlay__title',\n enableOverlay: true,\n enableCarousel: true\n};\n\nconst getCategoryDefinedProps = ({\n alternativePreHeader,\n category,\n entity,\n alternativeHeadline,\n displayCategory,\n name\n}) => {\n const hasAlternativePreHeader = alternativePreHeader && alternativePreHeader.name;\n const preHeader =\n alternativeHeadline && hasAlternativePreHeader ? alternativePreHeader : category;\n const publishedListingPage = getPublishedListingUrl(preHeader);\n const label = preHeader ? preHeader.name : entity;\n const headline =\n !displayCategory || !hasAlternativePreHeader ? name : alternativeHeadline || name;\n return { publishedListingPage, preHeader, label, headline };\n};\n\nconst getImageDefinedProps = ({ image, displayThumbnail }) => {\n const { url: imageSrc, data } = image || {};\n const shouldDisplayThumbnail = displayThumbnail && imageSrc;\n const altText = (data && data.altText) || '';\n return { imageSrc, shouldDisplayThumbnail, altText };\n};\n\nconst getInitialModifiers = ({ modifier, style, otherProps }) => {\n const modifiers = [modifier, style];\n const { sponsored, featured } = otherProps;\n if (sponsored) modifiers.push('sponsored');\n if (featured) modifiers.push('featured');\n\n return modifiers;\n};\n\nexport default Card;\n"],"file":"Card.js"}
|
|
1
|
+
{"version":3,"sources":["../../../src/components/Card/Card.js"],"names":["React","Fragment","PropTypes","BlazeLink","ClickWrapper","getModifiers","renderChildren","updateChildrensParent","getClickWrapperOptions","LazyImage","getPublishedListingUrl","useDynamicSizeKey","CARD_STRING","Card","id","image","name","url","entity","entityProps","alternativePreHeader","alternativeHeadline","category","modifier","propsToDisplay","propsToDisplayModifiers","gtmId","style","priority","cardChildren","gtmChildren","displayCategory","displayThumbnail","displayTitle","enableOverlay","enableCarousel","titleOverlayModifier","overlayModifier","gridModifier","otherProps","imageSrc","shouldDisplayThumbnail","altText","getImageDefinedProps","modifiers","getInitialModifiers","publishedListingPage","preHeader","label","headline","getCategoryDefinedProps","linkTitle","dynamicSizeKey","shouldUseClickWrapper","wrapperProps","Wrapper","classNameWithModifiers","contentWrapperModifier","titleWrapperModifier","length","map","prop","i","dynamicKey","propModifier","propTypes","string","isRequired","shape","data","object","array","bool","oneOfType","arrayOf","node","defaultProps","hasAlternativePreHeader","sponsored","featured","push"],"mappings":"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","sourcesContent":["import React, { Fragment } from 'react';\nimport PropTypes from 'prop-types';\nimport BlazeLink from '../BlazeLink';\nimport ClickWrapper from '../ClickWrapper';\nimport {\n getModifiers,\n renderChildren,\n updateChildrensParent,\n getClickWrapperOptions\n} from '../../helpers';\nimport LazyImage from '../LazyImage';\nimport { getPublishedListingUrl, useDynamicSizeKey } from './helpers';\nimport { CARD_STRING } from './constants';\n\nconst Card = ({\n id,\n image,\n name,\n url,\n entity,\n entityProps,\n alternativePreHeader,\n alternativeHeadline,\n category,\n modifier,\n propsToDisplay,\n propsToDisplayModifiers,\n gtmId,\n style,\n priority,\n cardChildren,\n gtmChildren,\n displayCategory,\n displayThumbnail,\n displayTitle,\n enableOverlay,\n enableCarousel,\n titleOverlayModifier,\n overlayModifier,\n gridModifier,\n ...otherProps\n}) => {\n updateChildrensParent(cardChildren, id, entity);\n const { imageSrc, shouldDisplayThumbnail, altText } = getImageDefinedProps({\n image,\n displayThumbnail\n });\n\n const modifiers = getInitialModifiers({ modifier, style, otherProps });\n\n const { publishedListingPage, preHeader, label, headline } = getCategoryDefinedProps({\n alternativePreHeader,\n category,\n entity,\n alternativeHeadline,\n displayCategory,\n name\n });\n\n const linkTitle = name;\n\n const dynamicSizeKey = useDynamicSizeKey(CARD_STRING, { style, gridModifier, modifier });\n\n const { shouldUseClickWrapper, wrapperProps } = getClickWrapperOptions(\n gtmChildren,\n entityProps,\n id\n );\n\n const Wrapper = shouldUseClickWrapper ? ClickWrapper : Fragment;\n\n const classNameWithModifiers = getModifiers(CARD_STRING, modifiers);\n\n const contentWrapperModifier = `${getModifiers('card__content-wrapper', modifiers)} ${\n enableOverlay && enableCarousel ? overlayModifier : ''\n }`;\n\n const titleWrapperModifier = `${getModifiers('card__title', modifiers)} ${\n enableOverlay && enableCarousel ? titleOverlayModifier : ''\n }`;\n\n return (\n <Wrapper {...wrapperProps}>\n <div className={classNameWithModifiers}>\n {shouldDisplayThumbnail && (\n <div className={getModifiers('card__image', modifiers)}>\n <BlazeLink gtmId={gtmId} href={url} className=\"card__image-link\" scroll>\n <LazyImage\n src={imageSrc}\n alt={altText}\n sizeKey={dynamicSizeKey}\n priority={priority}\n />\n </BlazeLink>\n </div>\n )}\n <div className={contentWrapperModifier}>\n <div className={getModifiers('card__content', modifiers)}>\n {displayCategory &&\n (publishedListingPage ? (\n <BlazeLink\n gtmId={gtmId}\n href={publishedListingPage}\n className=\"badge badge--label\"\n scroll>\n {preHeader.name}\n </BlazeLink>\n ) : (\n <div className=\"badge badge--label\">{label}</div>\n ))}\n {displayTitle && (\n <h2 className={titleWrapperModifier}>\n <BlazeLink title={linkTitle} gtmId={gtmId} href={url} scroll>\n {headline}\n </BlazeLink>\n </h2>\n )}\n {!!propsToDisplay.length && (\n <div className={getModifiers('card__details', modifiers)}>\n {propsToDisplay.map((prop, i) => {\n if (!prop) return null;\n const dynamicKey = `${id}${i}`;\n const propModifier = propsToDisplayModifiers[i] || '';\n\n return (\n <span key={dynamicKey} className={propModifier}>\n {prop}\n </span>\n );\n })}\n </div>\n )}\n </div>\n {!!cardChildren && (\n <div className=\"card__child-content\">{renderChildren(cardChildren)}</div>\n )}\n </div>\n </div>\n </Wrapper>\n );\n};\n\nCard.propTypes = {\n id: PropTypes.string.isRequired,\n image: PropTypes.shape({\n url: PropTypes.string,\n data: PropTypes.object\n }),\n style: PropTypes.string,\n propsToDisplay: PropTypes.array,\n propsToDisplayModifiers: PropTypes.array,\n url: PropTypes.string,\n name: PropTypes.string.isRequired,\n entity: PropTypes.string.isRequired,\n entityProps: PropTypes.object,\n gtmId: PropTypes.string,\n alternativePreHeader: PropTypes.shape({\n name: PropTypes.string\n }),\n alternativeHeadline: PropTypes.string,\n category: PropTypes.shape({\n name: PropTypes.string,\n publishedListingPage: PropTypes.shape({\n url: PropTypes.string\n })\n }),\n modifier: PropTypes.string,\n displayCategory: PropTypes.bool.isRequired,\n displayThumbnail: PropTypes.bool.isRequired,\n displayTitle: PropTypes.bool.isRequired,\n enableCarousel: PropTypes.bool,\n enableOverlay: PropTypes.bool,\n overlayModifier: PropTypes.string,\n titleOverlayModifier: PropTypes.string,\n cardChildren: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.node), PropTypes.node]),\n gtmChildren: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.node), PropTypes.node]),\n gridModifier: PropTypes.string,\n priority: PropTypes.bool\n};\n\nCard.defaultProps = {\n entityProps: {},\n image: {\n url: null,\n data: {}\n },\n gtmId: '',\n style: 'portrait',\n propsToDisplay: [],\n propsToDisplayModifiers: [],\n url: '',\n alternativePreHeader: null,\n alternativeHeadline: '',\n category: null,\n modifier: '',\n cardChildren: [],\n gtmChildren: [],\n gridModifier: '',\n priority: false,\n overlayModifier: '',\n titleOverlayModifier: '',\n enableOverlay: false,\n enableCarousel: false\n};\n\nconst getCategoryDefinedProps = ({\n alternativePreHeader,\n category,\n entity,\n alternativeHeadline,\n displayCategory,\n name\n}) => {\n const hasAlternativePreHeader = alternativePreHeader && alternativePreHeader.name;\n const preHeader =\n alternativeHeadline && hasAlternativePreHeader ? alternativePreHeader : category;\n const publishedListingPage = getPublishedListingUrl(preHeader);\n const label = preHeader ? preHeader.name : entity;\n const headline =\n !displayCategory || !hasAlternativePreHeader ? name : alternativeHeadline || name;\n return { publishedListingPage, preHeader, label, headline };\n};\n\nconst getImageDefinedProps = ({ image, displayThumbnail }) => {\n const { url: imageSrc, data } = image || {};\n const shouldDisplayThumbnail = displayThumbnail && imageSrc;\n const altText = (data && data.altText) || '';\n return { imageSrc, shouldDisplayThumbnail, altText };\n};\n\nconst getInitialModifiers = ({ modifier, style, otherProps }) => {\n const modifiers = [modifier, style];\n const { sponsored, featured } = otherProps;\n if (sponsored) modifiers.push('sponsored');\n if (featured) modifiers.push('featured');\n\n return modifiers;\n};\n\nexport default Card;\n"],"file":"Card.js"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@blaze-cms/react-page-builder",
|
|
3
|
-
"version": "0.123.0-alpha.
|
|
3
|
+
"version": "0.123.0-alpha.27",
|
|
4
4
|
"description": "Blaze react page builder",
|
|
5
5
|
"main": "lib/index.js",
|
|
6
6
|
"module": "lib-es/index.js",
|
|
@@ -84,5 +84,5 @@
|
|
|
84
84
|
"lib/*",
|
|
85
85
|
"lib-es/*"
|
|
86
86
|
],
|
|
87
|
-
"gitHead": "
|
|
87
|
+
"gitHead": "15df20e52fadb648779c7147bb72c6d8f00db5f8"
|
|
88
88
|
}
|
|
@@ -197,10 +197,10 @@ Card.defaultProps = {
|
|
|
197
197
|
gtmChildren: [],
|
|
198
198
|
gridModifier: '',
|
|
199
199
|
priority: false,
|
|
200
|
-
overlayModifier: '
|
|
201
|
-
titleOverlayModifier: '
|
|
202
|
-
enableOverlay:
|
|
203
|
-
enableCarousel:
|
|
200
|
+
overlayModifier: '',
|
|
201
|
+
titleOverlayModifier: '',
|
|
202
|
+
enableOverlay: false,
|
|
203
|
+
enableCarousel: false
|
|
204
204
|
};
|
|
205
205
|
|
|
206
206
|
const getCategoryDefinedProps = ({
|
|
@@ -19,7 +19,7 @@ exports[`Card component should not render alternative headline if alternativePre
|
|
|
19
19
|
</a>
|
|
20
20
|
</div>
|
|
21
21
|
<div
|
|
22
|
-
class="card__content-wrapper card__content-wrapper--portrait
|
|
22
|
+
class="card__content-wrapper card__content-wrapper--portrait "
|
|
23
23
|
>
|
|
24
24
|
<div
|
|
25
25
|
class="card__content card__content--portrait"
|
|
@@ -31,7 +31,7 @@ exports[`Card component should not render alternative headline if alternativePre
|
|
|
31
31
|
category-name
|
|
32
32
|
</a>
|
|
33
33
|
<h2
|
|
34
|
-
class="card__title card__title--portrait
|
|
34
|
+
class="card__title card__title--portrait "
|
|
35
35
|
>
|
|
36
36
|
<a
|
|
37
37
|
href="/mockurl"
|
|
@@ -93,13 +93,13 @@ exports[`Card component should not render alternative headline if displayCategor
|
|
|
93
93
|
</a>
|
|
94
94
|
</div>
|
|
95
95
|
<div
|
|
96
|
-
class="card__content-wrapper card__content-wrapper--portrait
|
|
96
|
+
class="card__content-wrapper card__content-wrapper--portrait "
|
|
97
97
|
>
|
|
98
98
|
<div
|
|
99
99
|
class="card__content card__content--portrait"
|
|
100
100
|
>
|
|
101
101
|
<h2
|
|
102
|
-
class="card__title card__title--portrait
|
|
102
|
+
class="card__title card__title--portrait "
|
|
103
103
|
>
|
|
104
104
|
<a
|
|
105
105
|
href="/mockurl"
|
|
@@ -161,7 +161,7 @@ exports[`Card component should not render preHeader if alternativeHeadline is no
|
|
|
161
161
|
</a>
|
|
162
162
|
</div>
|
|
163
163
|
<div
|
|
164
|
-
class="card__content-wrapper card__content-wrapper--portrait
|
|
164
|
+
class="card__content-wrapper card__content-wrapper--portrait "
|
|
165
165
|
>
|
|
166
166
|
<div
|
|
167
167
|
class="card__content card__content--portrait"
|
|
@@ -173,7 +173,7 @@ exports[`Card component should not render preHeader if alternativeHeadline is no
|
|
|
173
173
|
category-name
|
|
174
174
|
</a>
|
|
175
175
|
<h2
|
|
176
|
-
class="card__title card__title--portrait
|
|
176
|
+
class="card__title card__title--portrait "
|
|
177
177
|
>
|
|
178
178
|
<a
|
|
179
179
|
href="/mockurl"
|
|
@@ -235,7 +235,7 @@ exports[`Card component should render customPreheader and alternativeHeadline in
|
|
|
235
235
|
</a>
|
|
236
236
|
</div>
|
|
237
237
|
<div
|
|
238
|
-
class="card__content-wrapper card__content-wrapper--portrait
|
|
238
|
+
class="card__content-wrapper card__content-wrapper--portrait "
|
|
239
239
|
>
|
|
240
240
|
<div
|
|
241
241
|
class="card__content card__content--portrait"
|
|
@@ -246,7 +246,7 @@ exports[`Card component should render customPreheader and alternativeHeadline in
|
|
|
246
246
|
Pre header
|
|
247
247
|
</div>
|
|
248
248
|
<h2
|
|
249
|
-
class="card__title card__title--portrait
|
|
249
|
+
class="card__title card__title--portrait "
|
|
250
250
|
>
|
|
251
251
|
<a
|
|
252
252
|
href="/mockurl"
|
|
@@ -308,7 +308,7 @@ exports[`Card component should render without throwing an error and match snapsh
|
|
|
308
308
|
</a>
|
|
309
309
|
</div>
|
|
310
310
|
<div
|
|
311
|
-
class="card__content-wrapper card__content-wrapper--portrait
|
|
311
|
+
class="card__content-wrapper card__content-wrapper--portrait "
|
|
312
312
|
>
|
|
313
313
|
<div
|
|
314
314
|
class="card__content card__content--portrait"
|
|
@@ -320,7 +320,7 @@ exports[`Card component should render without throwing an error and match snapsh
|
|
|
320
320
|
category-name
|
|
321
321
|
</a>
|
|
322
322
|
<h2
|
|
323
|
-
class="card__title card__title--portrait
|
|
323
|
+
class="card__title card__title--portrait "
|
|
324
324
|
>
|
|
325
325
|
<a
|
|
326
326
|
href="/mockurl"
|
package/tests/unit/src/components/List/components/Cards/__snapshots__/CardsRender.test.js.snap
CHANGED
|
@@ -20,13 +20,13 @@ exports[`CardsRender component should render based on listData received 1`] = `
|
|
|
20
20
|
class="card card--portrait"
|
|
21
21
|
>
|
|
22
22
|
<div
|
|
23
|
-
class="card__content-wrapper card__content-wrapper--portrait
|
|
23
|
+
class="card__content-wrapper card__content-wrapper--portrait "
|
|
24
24
|
>
|
|
25
25
|
<div
|
|
26
26
|
class="card__content card__content--portrait"
|
|
27
27
|
>
|
|
28
28
|
<h2
|
|
29
|
-
class="card__title card__title--portrait
|
|
29
|
+
class="card__title card__title--portrait "
|
|
30
30
|
>
|
|
31
31
|
item 1
|
|
32
32
|
</h2>
|
|
@@ -41,13 +41,13 @@ exports[`CardsRender component should render based on listData received 1`] = `
|
|
|
41
41
|
class="card card--portrait"
|
|
42
42
|
>
|
|
43
43
|
<div
|
|
44
|
-
class="card__content-wrapper card__content-wrapper--portrait
|
|
44
|
+
class="card__content-wrapper card__content-wrapper--portrait "
|
|
45
45
|
>
|
|
46
46
|
<div
|
|
47
47
|
class="card__content card__content--portrait"
|
|
48
48
|
>
|
|
49
49
|
<h2
|
|
50
|
-
class="card__title card__title--portrait
|
|
50
|
+
class="card__title card__title--portrait "
|
|
51
51
|
>
|
|
52
52
|
item 1
|
|
53
53
|
</h2>
|
|
@@ -62,13 +62,13 @@ exports[`CardsRender component should render based on listData received 1`] = `
|
|
|
62
62
|
class="card card--portrait"
|
|
63
63
|
>
|
|
64
64
|
<div
|
|
65
|
-
class="card__content-wrapper card__content-wrapper--portrait
|
|
65
|
+
class="card__content-wrapper card__content-wrapper--portrait "
|
|
66
66
|
>
|
|
67
67
|
<div
|
|
68
68
|
class="card__content card__content--portrait"
|
|
69
69
|
>
|
|
70
70
|
<h2
|
|
71
|
-
class="card__title card__title--portrait
|
|
71
|
+
class="card__title card__title--portrait "
|
|
72
72
|
>
|
|
73
73
|
item 1
|
|
74
74
|
</h2>
|
|
@@ -95,13 +95,13 @@ exports[`CardsRender component should render without wrapper, when requested 1`]
|
|
|
95
95
|
class="card card--portrait"
|
|
96
96
|
>
|
|
97
97
|
<div
|
|
98
|
-
class="card__content-wrapper card__content-wrapper--portrait
|
|
98
|
+
class="card__content-wrapper card__content-wrapper--portrait "
|
|
99
99
|
>
|
|
100
100
|
<div
|
|
101
101
|
class="card__content card__content--portrait"
|
|
102
102
|
>
|
|
103
103
|
<h2
|
|
104
|
-
class="card__title card__title--portrait
|
|
104
|
+
class="card__title card__title--portrait "
|
|
105
105
|
>
|
|
106
106
|
item 1
|
|
107
107
|
</h2>
|
|
@@ -116,13 +116,13 @@ exports[`CardsRender component should render without wrapper, when requested 1`]
|
|
|
116
116
|
class="card card--portrait"
|
|
117
117
|
>
|
|
118
118
|
<div
|
|
119
|
-
class="card__content-wrapper card__content-wrapper--portrait
|
|
119
|
+
class="card__content-wrapper card__content-wrapper--portrait "
|
|
120
120
|
>
|
|
121
121
|
<div
|
|
122
122
|
class="card__content card__content--portrait"
|
|
123
123
|
>
|
|
124
124
|
<h2
|
|
125
|
-
class="card__title card__title--portrait
|
|
125
|
+
class="card__title card__title--portrait "
|
|
126
126
|
>
|
|
127
127
|
item 1
|
|
128
128
|
</h2>
|
|
@@ -137,13 +137,13 @@ exports[`CardsRender component should render without wrapper, when requested 1`]
|
|
|
137
137
|
class="card card--portrait"
|
|
138
138
|
>
|
|
139
139
|
<div
|
|
140
|
-
class="card__content-wrapper card__content-wrapper--portrait
|
|
140
|
+
class="card__content-wrapper card__content-wrapper--portrait "
|
|
141
141
|
>
|
|
142
142
|
<div
|
|
143
143
|
class="card__content card__content--portrait"
|
|
144
144
|
>
|
|
145
145
|
<h2
|
|
146
|
-
class="card__title card__title--portrait
|
|
146
|
+
class="card__title card__title--portrait "
|
|
147
147
|
>
|
|
148
148
|
item 1
|
|
149
149
|
</h2>
|