@blaze-cms/react-page-builder 0.125.0-auth-updates.0 → 0.125.0-auth-updates.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +19 -0
- package/README.md +2 -1
- package/lib/components/Card/Card.js +32 -22
- package/lib/components/Card/Card.js.map +1 -1
- package/lib/components/Card/CardContainer.js +2 -1
- package/lib/components/Card/CardContainer.js.map +1 -1
- package/lib/components/List/components/Cards/CardsRender.js.map +1 -1
- package/lib/components/List/components/Cards/CardsRenderItem.js +2 -1
- package/lib/components/List/components/Cards/CardsRenderItem.js.map +1 -1
- package/lib-es/components/Card/Card.js +16 -5
- package/lib-es/components/Card/Card.js.map +1 -1
- package/lib-es/components/Card/CardContainer.js +2 -1
- package/lib-es/components/Card/CardContainer.js.map +1 -1
- package/lib-es/components/List/components/Cards/CardsRender.js.map +1 -1
- package/lib-es/components/List/components/Cards/CardsRenderItem.js +2 -1
- package/lib-es/components/List/components/Cards/CardsRenderItem.js.map +1 -1
- package/package.json +5 -5
- package/src/components/Card/Card.js +13 -3
- package/src/components/Card/CardContainer.js +2 -1
- package/src/components/List/components/Cards/CardsRender.js +1 -0
- package/src/components/List/components/Cards/CardsRenderItem.js +2 -1
- package/tests/unit/src/components/Card/Card.test.js +18 -7
- package/tests/unit/src/components/Card/__snapshots__/Card.test.js.snap +5 -0
package/CHANGELOG.md
CHANGED
|
@@ -3,6 +3,25 @@
|
|
|
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.125.0-auth-updates.3](https://github.com/thebyte9/blaze/compare/v0.125.0-auth-updates.2...v0.125.0-auth-updates.3) (2022-11-15)
|
|
7
|
+
|
|
8
|
+
|
|
9
|
+
### Features
|
|
10
|
+
|
|
11
|
+
* allow setting custom html attribute on props to display ([115e3f1](https://github.com/thebyte9/blaze/commit/115e3f1540abfe6a5dd32dbebc2a4474197c262e))
|
|
12
|
+
|
|
13
|
+
|
|
14
|
+
|
|
15
|
+
|
|
16
|
+
|
|
17
|
+
# [0.125.0-auth-updates.1](https://github.com/thebyte9/blaze/compare/v0.125.0-auth-updates.0...v0.125.0-auth-updates.1) (2022-11-07)
|
|
18
|
+
|
|
19
|
+
**Note:** Version bump only for package @blaze-cms/react-page-builder
|
|
20
|
+
|
|
21
|
+
|
|
22
|
+
|
|
23
|
+
|
|
24
|
+
|
|
6
25
|
# [0.125.0-auth-updates.0](https://github.com/thebyte9/blaze/compare/v0.124.1...v0.125.0-auth-updates.0) (2022-11-07)
|
|
7
26
|
|
|
8
27
|
|
package/README.md
CHANGED
|
@@ -115,7 +115,8 @@ List components are link by the "listName" property and when a new list is creat
|
|
|
115
115
|
|
|
116
116
|
- displayCategory: if true this will fetch the alternativePreHeader or category set on the record and display in the card. If the alternativePreHeader is set this takes priority over the category. If this option is not set these properties will not be included in the query.
|
|
117
117
|
- displayThumbnail: if true this will fetch the default card image url to displayed the the card
|
|
118
|
-
|
|
118
|
+
- propsToDisplay:
|
|
119
|
+
- htmlAttribute: allows setting of a custom html attribute on the prop to display. The value will be escaped e.g. `<span html-attribute-value="ESCAPED%20VALUE">`
|
|
119
120
|
## Code
|
|
120
121
|
|
|
121
122
|
The code block can parse a string of HTML and render it as react components. The code block will activate script blocks in the html string by wrapping them in a `<span>` and then inserting the script tag into the DOM on render using `appendChild`.
|
|
@@ -16,6 +16,7 @@ exports["default"] = void 0;
|
|
|
16
16
|
require("core-js/modules/es.function.name.js");
|
|
17
17
|
require("core-js/modules/es.array.concat.js");
|
|
18
18
|
require("core-js/modules/es.array.map.js");
|
|
19
|
+
var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
|
|
19
20
|
var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
|
|
20
21
|
var _react = _interopRequireWildcard(require("react"));
|
|
21
22
|
var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
@@ -25,7 +26,7 @@ var _helpers = require("../../helpers");
|
|
|
25
26
|
var _LazyImage = _interopRequireDefault(require("../LazyImage"));
|
|
26
27
|
var _helpers2 = require("./helpers");
|
|
27
28
|
var _constants = require("./constants");
|
|
28
|
-
var _excluded = ["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"];
|
|
29
|
+
var _excluded = ["id", "image", "name", "url", "entity", "entityProps", "alternativePreHeader", "alternativeHeadline", "category", "modifier", "parsedPropsToDisplay", "propsToDisplay", "propsToDisplayModifiers", "gtmId", "style", "priority", "cardChildren", "gtmChildren", "displayCategory", "displayThumbnail", "displayTitle", "enableOverlay", "enableCarousel", "titleOverlayModifier", "overlayModifier", "gridModifier"];
|
|
29
30
|
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
|
|
30
31
|
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
|
31
32
|
var Card = function Card(_ref) {
|
|
@@ -39,6 +40,7 @@ var Card = function Card(_ref) {
|
|
|
39
40
|
alternativeHeadline = _ref.alternativeHeadline,
|
|
40
41
|
category = _ref.category,
|
|
41
42
|
modifier = _ref.modifier,
|
|
43
|
+
parsedPropsToDisplay = _ref.parsedPropsToDisplay,
|
|
42
44
|
propsToDisplay = _ref.propsToDisplay,
|
|
43
45
|
propsToDisplayModifiers = _ref.propsToDisplayModifiers,
|
|
44
46
|
gtmId = _ref.gtmId,
|
|
@@ -125,16 +127,22 @@ var Card = function Card(_ref) {
|
|
|
125
127
|
gtmId: gtmId,
|
|
126
128
|
href: url,
|
|
127
129
|
scroll: true
|
|
128
|
-
}, headline)), !!
|
|
130
|
+
}, headline)), !!parsedPropsToDisplay.length && /*#__PURE__*/_react["default"].createElement("div", {
|
|
129
131
|
className: (0, _helpers.getModifiers)('card__details', modifiers)
|
|
130
|
-
},
|
|
132
|
+
}, parsedPropsToDisplay.map(function (prop, i) {
|
|
131
133
|
if (!prop) return null;
|
|
132
134
|
var dynamicKey = "".concat(id).concat(i);
|
|
133
135
|
var propModifier = propsToDisplayModifiers[i] || '';
|
|
134
|
-
|
|
136
|
+
var _ref2 = propsToDisplay[i] || {},
|
|
137
|
+
htmlAttribute = _ref2.htmlAttribute;
|
|
138
|
+
var extraProps = {};
|
|
139
|
+
if (htmlAttribute && prop.props.children) {
|
|
140
|
+
extraProps[htmlAttribute] = encodeURIComponent(prop.props.children[2]);
|
|
141
|
+
}
|
|
142
|
+
return /*#__PURE__*/_react["default"].createElement("span", (0, _extends2["default"])({
|
|
135
143
|
key: dynamicKey,
|
|
136
144
|
className: propModifier
|
|
137
|
-
}, prop);
|
|
145
|
+
}, extraProps), prop);
|
|
138
146
|
}))), !!cardChildren && /*#__PURE__*/_react["default"].createElement("div", {
|
|
139
147
|
className: "card__child-content"
|
|
140
148
|
}, (0, _helpers.renderChildren)(cardChildren)))));
|
|
@@ -146,6 +154,7 @@ Card.propTypes = {
|
|
|
146
154
|
data: _propTypes["default"].object
|
|
147
155
|
}),
|
|
148
156
|
style: _propTypes["default"].string,
|
|
157
|
+
parsedPropsToDisplay: _propTypes["default"].array,
|
|
149
158
|
propsToDisplay: _propTypes["default"].array,
|
|
150
159
|
propsToDisplayModifiers: _propTypes["default"].array,
|
|
151
160
|
url: _propTypes["default"].string,
|
|
@@ -184,6 +193,7 @@ Card.defaultProps = {
|
|
|
184
193
|
},
|
|
185
194
|
gtmId: '',
|
|
186
195
|
style: 'portrait',
|
|
196
|
+
parsedPropsToDisplay: [],
|
|
187
197
|
propsToDisplay: [],
|
|
188
198
|
propsToDisplayModifiers: [],
|
|
189
199
|
url: '',
|
|
@@ -200,13 +210,13 @@ Card.defaultProps = {
|
|
|
200
210
|
enableOverlay: false,
|
|
201
211
|
enableCarousel: false
|
|
202
212
|
};
|
|
203
|
-
var getCategoryDefinedProps = function getCategoryDefinedProps(
|
|
204
|
-
var alternativePreHeader =
|
|
205
|
-
category =
|
|
206
|
-
entity =
|
|
207
|
-
alternativeHeadline =
|
|
208
|
-
displayCategory =
|
|
209
|
-
name =
|
|
213
|
+
var getCategoryDefinedProps = function getCategoryDefinedProps(_ref3) {
|
|
214
|
+
var alternativePreHeader = _ref3.alternativePreHeader,
|
|
215
|
+
category = _ref3.category,
|
|
216
|
+
entity = _ref3.entity,
|
|
217
|
+
alternativeHeadline = _ref3.alternativeHeadline,
|
|
218
|
+
displayCategory = _ref3.displayCategory,
|
|
219
|
+
name = _ref3.name;
|
|
210
220
|
var hasAlternativePreHeader = alternativePreHeader && alternativePreHeader.name;
|
|
211
221
|
var preHeader = alternativeHeadline && hasAlternativePreHeader ? alternativePreHeader : category;
|
|
212
222
|
var publishedListingPage = (0, _helpers2.getPublishedListingUrl)(preHeader);
|
|
@@ -219,12 +229,12 @@ var getCategoryDefinedProps = function getCategoryDefinedProps(_ref2) {
|
|
|
219
229
|
headline: headline
|
|
220
230
|
};
|
|
221
231
|
};
|
|
222
|
-
var getImageDefinedProps = function getImageDefinedProps(
|
|
223
|
-
var image =
|
|
224
|
-
displayThumbnail =
|
|
225
|
-
var
|
|
226
|
-
imageSrc =
|
|
227
|
-
data =
|
|
232
|
+
var getImageDefinedProps = function getImageDefinedProps(_ref4) {
|
|
233
|
+
var image = _ref4.image,
|
|
234
|
+
displayThumbnail = _ref4.displayThumbnail;
|
|
235
|
+
var _ref5 = image || {},
|
|
236
|
+
imageSrc = _ref5.url,
|
|
237
|
+
data = _ref5.data;
|
|
228
238
|
var shouldDisplayThumbnail = displayThumbnail && imageSrc;
|
|
229
239
|
var altText = data && data.altText || '';
|
|
230
240
|
return {
|
|
@@ -233,10 +243,10 @@ var getImageDefinedProps = function getImageDefinedProps(_ref3) {
|
|
|
233
243
|
altText: altText
|
|
234
244
|
};
|
|
235
245
|
};
|
|
236
|
-
var getInitialModifiers = function getInitialModifiers(
|
|
237
|
-
var modifier =
|
|
238
|
-
style =
|
|
239
|
-
otherProps =
|
|
246
|
+
var getInitialModifiers = function getInitialModifiers(_ref6) {
|
|
247
|
+
var modifier = _ref6.modifier,
|
|
248
|
+
style = _ref6.style,
|
|
249
|
+
otherProps = _ref6.otherProps;
|
|
240
250
|
var modifiers = [modifier, style];
|
|
241
251
|
var sponsored = otherProps.sponsored,
|
|
242
252
|
featured = otherProps.featured;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Card.js","names":["Card","id","image","name","url","entity","entityProps","alternativePreHeader","alternativeHeadline","category","modifier","propsToDisplay","propsToDisplayModifiers","gtmId","style","priority","cardChildren","gtmChildren","displayCategory","displayThumbnail","displayTitle","enableOverlay","enableCarousel","titleOverlayModifier","overlayModifier","gridModifier","otherProps","updateChildrensParent","getImageDefinedProps","imageSrc","shouldDisplayThumbnail","altText","modifiers","getInitialModifiers","getCategoryDefinedProps","publishedListingPage","preHeader","label","headline","linkTitle","dynamicSizeKey","useDynamicSizeKey","CARD_STRING","getClickWrapperOptions","shouldUseClickWrapper","wrapperProps","Wrapper","ClickWrapper","Fragment","classNameWithModifiers","getModifiers","contentWrapperModifier","titleWrapperModifier","length","map","prop","i","dynamicKey","propModifier","renderChildren","propTypes","PropTypes","string","isRequired","shape","data","object","array","bool","oneOfType","arrayOf","node","defaultProps","hasAlternativePreHeader","getPublishedListingUrl","sponsored","featured","push"],"sources":["../../../src/components/Card/Card.js"],"sourcesContent":["import React, { Fragment } from 'react';\nimport PropTypes from 'prop-types';\nimport BlazeLink from '../BlazeLink';\nimport ClickWrapper from '../ClickWrapper';\nimport {\n getModifiers,\n renderChildren,\n updateChildrensParent,\n getClickWrapperOptions\n} from '../../helpers';\nimport LazyImage from '../LazyImage';\nimport { getPublishedListingUrl, useDynamicSizeKey } from './helpers';\nimport { CARD_STRING } from './constants';\n\nconst Card = ({\n id,\n image,\n name,\n url,\n entity,\n entityProps,\n alternativePreHeader,\n alternativeHeadline,\n category,\n modifier,\n propsToDisplay,\n propsToDisplayModifiers,\n gtmId,\n style,\n priority,\n cardChildren,\n gtmChildren,\n displayCategory,\n displayThumbnail,\n displayTitle,\n enableOverlay,\n enableCarousel,\n titleOverlayModifier,\n overlayModifier,\n gridModifier,\n ...otherProps\n}) => {\n updateChildrensParent(cardChildren, id, entity);\n const { imageSrc, shouldDisplayThumbnail, altText } = getImageDefinedProps({\n image,\n displayThumbnail\n });\n\n const modifiers = getInitialModifiers({ modifier, style, otherProps });\n\n const { publishedListingPage, preHeader, label, headline } = getCategoryDefinedProps({\n alternativePreHeader,\n category,\n entity,\n alternativeHeadline,\n displayCategory,\n name\n });\n\n const linkTitle = name;\n\n const dynamicSizeKey = useDynamicSizeKey(CARD_STRING, { style, gridModifier, modifier });\n\n const { shouldUseClickWrapper, wrapperProps } = getClickWrapperOptions(\n gtmChildren,\n entityProps,\n id\n );\n\n const Wrapper = shouldUseClickWrapper ? ClickWrapper : Fragment;\n\n const classNameWithModifiers = getModifiers(CARD_STRING, modifiers);\n\n const contentWrapperModifier = `${getModifiers('card__content-wrapper', modifiers)} ${\n enableOverlay && enableCarousel ? overlayModifier : ''\n }`;\n\n const titleWrapperModifier = `${getModifiers('card__title', modifiers)} ${\n enableOverlay && enableCarousel ? titleOverlayModifier : ''\n }`;\n\n return (\n <Wrapper {...wrapperProps}>\n <div className={classNameWithModifiers}>\n {shouldDisplayThumbnail && (\n <div className={getModifiers('card__image', modifiers)}>\n <BlazeLink gtmId={gtmId} href={url} className=\"card__image-link\" scroll>\n <LazyImage\n src={imageSrc}\n alt={altText}\n sizeKey={dynamicSizeKey}\n priority={priority}\n />\n </BlazeLink>\n </div>\n )}\n <div className={contentWrapperModifier}>\n <div className={getModifiers('card__content', modifiers)}>\n {displayCategory &&\n (publishedListingPage ? (\n <BlazeLink\n gtmId={gtmId}\n href={publishedListingPage}\n className=\"badge badge--label\"\n scroll>\n {preHeader.name}\n </BlazeLink>\n ) : (\n <div className=\"badge badge--label\">{label}</div>\n ))}\n {displayTitle && (\n <h2 className={titleWrapperModifier}>\n <BlazeLink title={linkTitle} gtmId={gtmId} href={url} scroll>\n {headline}\n </BlazeLink>\n </h2>\n )}\n {!!propsToDisplay.length && (\n <div className={getModifiers('card__details', modifiers)}>\n {propsToDisplay.map((prop, i) => {\n if (!prop) return null;\n const dynamicKey = `${id}${i}`;\n const propModifier = propsToDisplayModifiers[i] || '';\n\n return (\n <span key={dynamicKey} className={propModifier}>\n {prop}\n </span>\n );\n })}\n </div>\n )}\n </div>\n {!!cardChildren && (\n <div className=\"card__child-content\">{renderChildren(cardChildren)}</div>\n )}\n </div>\n </div>\n </Wrapper>\n );\n};\n\nCard.propTypes = {\n id: PropTypes.string.isRequired,\n image: PropTypes.shape({\n url: PropTypes.string,\n data: PropTypes.object\n }),\n style: PropTypes.string,\n propsToDisplay: PropTypes.array,\n propsToDisplayModifiers: PropTypes.array,\n url: PropTypes.string,\n name: PropTypes.string.isRequired,\n entity: PropTypes.string.isRequired,\n entityProps: PropTypes.object,\n gtmId: PropTypes.string,\n alternativePreHeader: PropTypes.shape({\n name: PropTypes.string\n }),\n alternativeHeadline: PropTypes.string,\n category: PropTypes.shape({\n name: PropTypes.string,\n publishedListingPage: PropTypes.shape({\n url: PropTypes.string\n })\n }),\n modifier: PropTypes.string,\n displayCategory: PropTypes.bool.isRequired,\n displayThumbnail: PropTypes.bool.isRequired,\n displayTitle: PropTypes.bool.isRequired,\n enableCarousel: PropTypes.bool,\n enableOverlay: PropTypes.bool,\n overlayModifier: PropTypes.string,\n titleOverlayModifier: PropTypes.string,\n cardChildren: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.node), PropTypes.node]),\n gtmChildren: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.node), PropTypes.node]),\n gridModifier: PropTypes.string,\n priority: PropTypes.bool\n};\n\nCard.defaultProps = {\n entityProps: {},\n image: {\n url: null,\n data: {}\n },\n gtmId: '',\n style: 'portrait',\n propsToDisplay: [],\n propsToDisplayModifiers: [],\n url: '',\n alternativePreHeader: null,\n alternativeHeadline: '',\n category: null,\n modifier: '',\n cardChildren: [],\n gtmChildren: [],\n gridModifier: '',\n priority: false,\n overlayModifier: '',\n titleOverlayModifier: '',\n enableOverlay: false,\n enableCarousel: false\n};\n\nconst getCategoryDefinedProps = ({\n alternativePreHeader,\n category,\n entity,\n alternativeHeadline,\n displayCategory,\n name\n}) => {\n const hasAlternativePreHeader = alternativePreHeader && alternativePreHeader.name;\n const preHeader =\n alternativeHeadline && hasAlternativePreHeader ? alternativePreHeader : category;\n const publishedListingPage = getPublishedListingUrl(preHeader);\n const label = preHeader ? preHeader.name : entity;\n const headline =\n !displayCategory || !hasAlternativePreHeader ? name : alternativeHeadline || name;\n return { publishedListingPage, preHeader, label, headline };\n};\n\nconst getImageDefinedProps = ({ image, displayThumbnail }) => {\n const { url: imageSrc, data } = image || {};\n const shouldDisplayThumbnail = displayThumbnail && imageSrc;\n const altText = (data && data.altText) || '';\n return { imageSrc, shouldDisplayThumbnail, altText };\n};\n\nconst getInitialModifiers = ({ modifier, style, otherProps }) => {\n const modifiers = [modifier, style];\n const { sponsored, featured } = otherProps;\n if (sponsored) modifiers.push('sponsored');\n if (featured) modifiers.push('featured');\n\n return modifiers;\n};\n\nexport default Card;\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Card.js","names":["Card","id","image","name","url","entity","entityProps","alternativePreHeader","alternativeHeadline","category","modifier","parsedPropsToDisplay","propsToDisplay","propsToDisplayModifiers","gtmId","style","priority","cardChildren","gtmChildren","displayCategory","displayThumbnail","displayTitle","enableOverlay","enableCarousel","titleOverlayModifier","overlayModifier","gridModifier","otherProps","updateChildrensParent","getImageDefinedProps","imageSrc","shouldDisplayThumbnail","altText","modifiers","getInitialModifiers","getCategoryDefinedProps","publishedListingPage","preHeader","label","headline","linkTitle","dynamicSizeKey","useDynamicSizeKey","CARD_STRING","getClickWrapperOptions","shouldUseClickWrapper","wrapperProps","Wrapper","ClickWrapper","Fragment","classNameWithModifiers","getModifiers","contentWrapperModifier","titleWrapperModifier","length","map","prop","i","dynamicKey","propModifier","htmlAttribute","extraProps","props","children","encodeURIComponent","renderChildren","propTypes","PropTypes","string","isRequired","shape","data","object","array","bool","oneOfType","arrayOf","node","defaultProps","hasAlternativePreHeader","getPublishedListingUrl","sponsored","featured","push"],"sources":["../../../src/components/Card/Card.js"],"sourcesContent":["import React, { Fragment } from 'react';\nimport PropTypes from 'prop-types';\nimport BlazeLink from '../BlazeLink';\nimport ClickWrapper from '../ClickWrapper';\nimport {\n getModifiers,\n renderChildren,\n updateChildrensParent,\n getClickWrapperOptions\n} from '../../helpers';\nimport LazyImage from '../LazyImage';\nimport { getPublishedListingUrl, useDynamicSizeKey } from './helpers';\nimport { CARD_STRING } from './constants';\n\nconst Card = ({\n id,\n image,\n name,\n url,\n entity,\n entityProps,\n alternativePreHeader,\n alternativeHeadline,\n category,\n modifier,\n 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 ...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 {!!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 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 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 parsedPropsToDisplay: [],\n propsToDisplay: [],\n propsToDisplayModifiers: [],\n url: '',\n alternativePreHeader: null,\n alternativeHeadline: '',\n category: null,\n modifier: '',\n cardChildren: [],\n gtmChildren: [],\n gridModifier: '',\n priority: false,\n overlayModifier: '',\n titleOverlayModifier: '',\n enableOverlay: false,\n enableCarousel: false\n};\n\nconst getCategoryDefinedProps = ({\n alternativePreHeader,\n category,\n entity,\n alternativeHeadline,\n displayCategory,\n name\n}) => {\n const hasAlternativePreHeader = alternativePreHeader && alternativePreHeader.name;\n const preHeader =\n alternativeHeadline && hasAlternativePreHeader ? alternativePreHeader : category;\n const publishedListingPage = getPublishedListingUrl(preHeader);\n const label = preHeader ? preHeader.name : entity;\n const headline =\n !displayCategory || !hasAlternativePreHeader ? name : alternativeHeadline || name;\n return { publishedListingPage, preHeader, label, headline };\n};\n\nconst getImageDefinedProps = ({ image, displayThumbnail }) => {\n const { url: imageSrc, data } = image || {};\n const shouldDisplayThumbnail = displayThumbnail && imageSrc;\n const altText = (data && data.altText) || '';\n return { imageSrc, shouldDisplayThumbnail, altText };\n};\n\nconst getInitialModifiers = ({ modifier, style, otherProps }) => {\n const modifiers = [modifier, style];\n const { sponsored, featured } = otherProps;\n if (sponsored) modifiers.push('sponsored');\n if (featured) modifiers.push('featured');\n\n return modifiers;\n};\n\nexport default Card;\n"],"mappings":";;;;;;;;;;;;;;;;;;;;AAAA;AACA;AACA;AACA;AACA;AAMA;AACA;AACA;AAA0C;AAAA;AAAA;AAE1C,IAAMA,IAAI,GAAG,SAAPA,IAAI,OA4BJ;EAAA,IA3BJC,EAAE,QAAFA,EAAE;IACFC,KAAK,QAALA,KAAK;IACLC,IAAI,QAAJA,IAAI;IACJC,GAAG,QAAHA,GAAG;IACHC,MAAM,QAANA,MAAM;IACNC,WAAW,QAAXA,WAAW;IACXC,oBAAoB,QAApBA,oBAAoB;IACpBC,mBAAmB,QAAnBA,mBAAmB;IACnBC,QAAQ,QAARA,QAAQ;IACRC,QAAQ,QAARA,QAAQ;IACRC,oBAAoB,QAApBA,oBAAoB;IACpBC,cAAc,QAAdA,cAAc;IACdC,uBAAuB,QAAvBA,uBAAuB;IACvBC,KAAK,QAALA,KAAK;IACLC,KAAK,QAALA,KAAK;IACLC,QAAQ,QAARA,QAAQ;IACRC,YAAY,QAAZA,YAAY;IACZC,WAAW,QAAXA,WAAW;IACXC,eAAe,QAAfA,eAAe;IACfC,gBAAgB,QAAhBA,gBAAgB;IAChBC,YAAY,QAAZA,YAAY;IACZC,aAAa,QAAbA,aAAa;IACbC,cAAc,QAAdA,cAAc;IACdC,oBAAoB,QAApBA,oBAAoB;IACpBC,eAAe,QAAfA,eAAe;IACfC,YAAY,QAAZA,YAAY;IACTC,UAAU;EAEb,IAAAC,8BAAqB,EAACX,YAAY,EAAEhB,EAAE,EAAEI,MAAM,CAAC;EAC/C,4BAAsDwB,oBAAoB,CAAC;MACzE3B,KAAK,EAALA,KAAK;MACLkB,gBAAgB,EAAhBA;IACF,CAAC,CAAC;IAHMU,QAAQ,yBAARA,QAAQ;IAAEC,sBAAsB,yBAAtBA,sBAAsB;IAAEC,OAAO,yBAAPA,OAAO;EAKjD,IAAMC,SAAS,GAAGC,mBAAmB,CAAC;IAAExB,QAAQ,EAARA,QAAQ;IAAEK,KAAK,EAALA,KAAK;IAAEY,UAAU,EAAVA;EAAW,CAAC,CAAC;EAEtE,4BAA6DQ,uBAAuB,CAAC;MACnF5B,oBAAoB,EAApBA,oBAAoB;MACpBE,QAAQ,EAARA,QAAQ;MACRJ,MAAM,EAANA,MAAM;MACNG,mBAAmB,EAAnBA,mBAAmB;MACnBW,eAAe,EAAfA,eAAe;MACfhB,IAAI,EAAJA;IACF,CAAC,CAAC;IAPMiC,oBAAoB,yBAApBA,oBAAoB;IAAEC,SAAS,yBAATA,SAAS;IAAEC,KAAK,yBAALA,KAAK;IAAEC,QAAQ,yBAARA,QAAQ;EASxD,IAAMC,SAAS,GAAGrC,IAAI;EAEtB,IAAMsC,cAAc,GAAG,IAAAC,2BAAiB,EAACC,sBAAW,EAAE;IAAE5B,KAAK,EAALA,KAAK;IAAEW,YAAY,EAAZA,YAAY;IAAEhB,QAAQ,EAARA;EAAS,CAAC,CAAC;EAExF,4BAAgD,IAAAkC,+BAAsB,EACpE1B,WAAW,EACXZ,WAAW,EACXL,EAAE,CACH;IAJO4C,qBAAqB,yBAArBA,qBAAqB;IAAEC,YAAY,yBAAZA,YAAY;EAM3C,IAAMC,OAAO,GAAGF,qBAAqB,GAAGG,wBAAY,GAAGC,eAAQ;EAE/D,IAAMC,sBAAsB,GAAG,IAAAC,qBAAY,EAACR,sBAAW,EAAEV,SAAS,CAAC;EAEnE,IAAMmB,sBAAsB,aAAM,IAAAD,qBAAY,EAAC,uBAAuB,EAAElB,SAAS,CAAC,cAChFX,aAAa,IAAIC,cAAc,GAAGE,eAAe,GAAG,EAAE,CACtD;EAEF,IAAM4B,oBAAoB,aAAM,IAAAF,qBAAY,EAAC,aAAa,EAAElB,SAAS,CAAC,cACpEX,aAAa,IAAIC,cAAc,GAAGC,oBAAoB,GAAG,EAAE,CAC3D;EAEF,oBACE,gCAAC,OAAO,EAAKsB,YAAY,eACvB;IAAK,SAAS,EAAEI;EAAuB,GACpCnB,sBAAsB,iBACrB;IAAK,SAAS,EAAE,IAAAoB,qBAAY,EAAC,aAAa,EAAElB,SAAS;EAAE,gBACrD,gCAAC,qBAAS;IAAC,KAAK,EAAEnB,KAAM;IAAC,IAAI,EAAEV,GAAI;IAAC,SAAS,EAAC,kBAAkB;IAAC,MAAM;EAAA,gBACrE,gCAAC,qBAAS;IACR,GAAG,EAAE0B,QAAS;IACd,GAAG,EAAEE,OAAQ;IACb,OAAO,EAAES,cAAe;IACxB,QAAQ,EAAEzB;EAAS,EACnB,CACQ,CAEf,eACD;IAAK,SAAS,EAAEoC;EAAuB,gBACrC;IAAK,SAAS,EAAE,IAAAD,qBAAY,EAAC,eAAe,EAAElB,SAAS;EAAE,GACtDd,eAAe,KACbiB,oBAAoB,gBACnB,gCAAC,qBAAS;IACR,KAAK,EAAEtB,KAAM;IACb,IAAI,EAAEsB,oBAAqB;IAC3B,SAAS,EAAC,oBAAoB;IAC9B,MAAM;EAAA,GACLC,SAAS,CAAClC,IAAI,CACL,gBAEZ;IAAK,SAAS,EAAC;EAAoB,GAAEmC,KAAK,CAC3C,CAAC,EACHjB,YAAY,iBACX;IAAI,SAAS,EAAEgC;EAAqB,gBAClC,gCAAC,qBAAS;IAAC,KAAK,EAAEb,SAAU;IAAC,KAAK,EAAE1B,KAAM;IAAC,IAAI,EAAEV,GAAI;IAAC,MAAM;EAAA,GACzDmC,QAAQ,CACC,CAEf,EACA,CAAC,CAAC5B,oBAAoB,CAAC2C,MAAM,iBAC5B;IAAK,SAAS,EAAE,IAAAH,qBAAY,EAAC,eAAe,EAAElB,SAAS;EAAE,GACtDtB,oBAAoB,CAAC4C,GAAG,CAAC,UAACC,IAAI,EAAEC,CAAC,EAAK;IACrC,IAAI,CAACD,IAAI,EAAE,OAAO,IAAI;IAEtB,IAAME,UAAU,aAAMzD,EAAE,SAAGwD,CAAC,CAAE;IAC9B,IAAME,YAAY,GAAG9C,uBAAuB,CAAC4C,CAAC,CAAC,IAAI,EAAE;IAErD,YAA0B7C,cAAc,CAAC6C,CAAC,CAAC,IAAI,CAAC,CAAC;MAAzCG,aAAa,SAAbA,aAAa;IACrB,IAAMC,UAAU,GAAG,CAAC,CAAC;IACrB,IAAID,aAAa,IAAIJ,IAAI,CAACM,KAAK,CAACC,QAAQ,EAAE;MACxCF,UAAU,CAACD,aAAa,CAAC,GAAGI,kBAAkB,CAACR,IAAI,CAACM,KAAK,CAACC,QAAQ,CAAC,CAAC,CAAC,CAAC;IACxE;IAEA,oBACE;MAAM,GAAG,EAAEL,UAAW;MAAC,SAAS,EAAEC;IAAa,GAAKE,UAAU,GAC3DL,IAAI,CACA;EAEX,CAAC,CAAC,CAEL,CACG,EACL,CAAC,CAACvC,YAAY,iBACb;IAAK,SAAS,EAAC;EAAqB,GAAE,IAAAgD,uBAAc,EAAChD,YAAY,CAAC,CACnE,CACG,CACF,CACE;AAEd,CAAC;AAEDjB,IAAI,CAACkE,SAAS,GAAG;EACfjE,EAAE,EAAEkE,qBAAS,CAACC,MAAM,CAACC,UAAU;EAC/BnE,KAAK,EAAEiE,qBAAS,CAACG,KAAK,CAAC;IACrBlE,GAAG,EAAE+D,qBAAS,CAACC,MAAM;IACrBG,IAAI,EAAEJ,qBAAS,CAACK;EAClB,CAAC,CAAC;EACFzD,KAAK,EAAEoD,qBAAS,CAACC,MAAM;EACvBzD,oBAAoB,EAAEwD,qBAAS,CAACM,KAAK;EACrC7D,cAAc,EAAEuD,qBAAS,CAACM,KAAK;EAC/B5D,uBAAuB,EAAEsD,qBAAS,CAACM,KAAK;EACxCrE,GAAG,EAAE+D,qBAAS,CAACC,MAAM;EACrBjE,IAAI,EAAEgE,qBAAS,CAACC,MAAM,CAACC,UAAU;EACjChE,MAAM,EAAE8D,qBAAS,CAACC,MAAM,CAACC,UAAU;EACnC/D,WAAW,EAAE6D,qBAAS,CAACK,MAAM;EAC7B1D,KAAK,EAAEqD,qBAAS,CAACC,MAAM;EACvB7D,oBAAoB,EAAE4D,qBAAS,CAACG,KAAK,CAAC;IACpCnE,IAAI,EAAEgE,qBAAS,CAACC;EAClB,CAAC,CAAC;EACF5D,mBAAmB,EAAE2D,qBAAS,CAACC,MAAM;EACrC3D,QAAQ,EAAE0D,qBAAS,CAACG,KAAK,CAAC;IACxBnE,IAAI,EAAEgE,qBAAS,CAACC,MAAM;IACtBhC,oBAAoB,EAAE+B,qBAAS,CAACG,KAAK,CAAC;MACpClE,GAAG,EAAE+D,qBAAS,CAACC;IACjB,CAAC;EACH,CAAC,CAAC;EACF1D,QAAQ,EAAEyD,qBAAS,CAACC,MAAM;EAC1BjD,eAAe,EAAEgD,qBAAS,CAACO,IAAI,CAACL,UAAU;EAC1CjD,gBAAgB,EAAE+C,qBAAS,CAACO,IAAI,CAACL,UAAU;EAC3ChD,YAAY,EAAE8C,qBAAS,CAACO,IAAI,CAACL,UAAU;EACvC9C,cAAc,EAAE4C,qBAAS,CAACO,IAAI;EAC9BpD,aAAa,EAAE6C,qBAAS,CAACO,IAAI;EAC7BjD,eAAe,EAAE0C,qBAAS,CAACC,MAAM;EACjC5C,oBAAoB,EAAE2C,qBAAS,CAACC,MAAM;EACtCnD,YAAY,EAAEkD,qBAAS,CAACQ,SAAS,CAAC,CAACR,qBAAS,CAACS,OAAO,CAACT,qBAAS,CAACU,IAAI,CAAC,EAAEV,qBAAS,CAACU,IAAI,CAAC,CAAC;EACtF3D,WAAW,EAAEiD,qBAAS,CAACQ,SAAS,CAAC,CAACR,qBAAS,CAACS,OAAO,CAACT,qBAAS,CAACU,IAAI,CAAC,EAAEV,qBAAS,CAACU,IAAI,CAAC,CAAC;EACrFnD,YAAY,EAAEyC,qBAAS,CAACC,MAAM;EAC9BpD,QAAQ,EAAEmD,qBAAS,CAACO;AACtB,CAAC;AAED1E,IAAI,CAAC8E,YAAY,GAAG;EAClBxE,WAAW,EAAE,CAAC,CAAC;EACfJ,KAAK,EAAE;IACLE,GAAG,EAAE,IAAI;IACTmE,IAAI,EAAE,CAAC;EACT,CAAC;EACDzD,KAAK,EAAE,EAAE;EACTC,KAAK,EAAE,UAAU;EACjBJ,oBAAoB,EAAE,EAAE;EACxBC,cAAc,EAAE,EAAE;EAClBC,uBAAuB,EAAE,EAAE;EAC3BT,GAAG,EAAE,EAAE;EACPG,oBAAoB,EAAE,IAAI;EAC1BC,mBAAmB,EAAE,EAAE;EACvBC,QAAQ,EAAE,IAAI;EACdC,QAAQ,EAAE,EAAE;EACZO,YAAY,EAAE,EAAE;EAChBC,WAAW,EAAE,EAAE;EACfQ,YAAY,EAAE,EAAE;EAChBV,QAAQ,EAAE,KAAK;EACfS,eAAe,EAAE,EAAE;EACnBD,oBAAoB,EAAE,EAAE;EACxBF,aAAa,EAAE,KAAK;EACpBC,cAAc,EAAE;AAClB,CAAC;AAED,IAAMY,uBAAuB,GAAG,SAA1BA,uBAAuB,QAOvB;EAAA,IANJ5B,oBAAoB,SAApBA,oBAAoB;IACpBE,QAAQ,SAARA,QAAQ;IACRJ,MAAM,SAANA,MAAM;IACNG,mBAAmB,SAAnBA,mBAAmB;IACnBW,eAAe,SAAfA,eAAe;IACfhB,IAAI,SAAJA,IAAI;EAEJ,IAAM4E,uBAAuB,GAAGxE,oBAAoB,IAAIA,oBAAoB,CAACJ,IAAI;EACjF,IAAMkC,SAAS,GACb7B,mBAAmB,IAAIuE,uBAAuB,GAAGxE,oBAAoB,GAAGE,QAAQ;EAClF,IAAM2B,oBAAoB,GAAG,IAAA4C,gCAAsB,EAAC3C,SAAS,CAAC;EAC9D,IAAMC,KAAK,GAAGD,SAAS,GAAGA,SAAS,CAAClC,IAAI,GAAGE,MAAM;EACjD,IAAMkC,QAAQ,GACZ,CAACpB,eAAe,IAAI,CAAC4D,uBAAuB,GAAG5E,IAAI,GAAGK,mBAAmB,IAAIL,IAAI;EACnF,OAAO;IAAEiC,oBAAoB,EAApBA,oBAAoB;IAAEC,SAAS,EAATA,SAAS;IAAEC,KAAK,EAALA,KAAK;IAAEC,QAAQ,EAARA;EAAS,CAAC;AAC7D,CAAC;AAED,IAAMV,oBAAoB,GAAG,SAAvBA,oBAAoB,QAAoC;EAAA,IAA9B3B,KAAK,SAALA,KAAK;IAAEkB,gBAAgB,SAAhBA,gBAAgB;EACrD,YAAgClB,KAAK,IAAI,CAAC,CAAC;IAA9B4B,QAAQ,SAAb1B,GAAG;IAAYmE,IAAI,SAAJA,IAAI;EAC3B,IAAMxC,sBAAsB,GAAGX,gBAAgB,IAAIU,QAAQ;EAC3D,IAAME,OAAO,GAAIuC,IAAI,IAAIA,IAAI,CAACvC,OAAO,IAAK,EAAE;EAC5C,OAAO;IAAEF,QAAQ,EAARA,QAAQ;IAAEC,sBAAsB,EAAtBA,sBAAsB;IAAEC,OAAO,EAAPA;EAAQ,CAAC;AACtD,CAAC;AAED,IAAME,mBAAmB,GAAG,SAAtBA,mBAAmB,QAAwC;EAAA,IAAlCxB,QAAQ,SAARA,QAAQ;IAAEK,KAAK,SAALA,KAAK;IAAEY,UAAU,SAAVA,UAAU;EACxD,IAAMM,SAAS,GAAG,CAACvB,QAAQ,EAAEK,KAAK,CAAC;EACnC,IAAQkE,SAAS,GAAetD,UAAU,CAAlCsD,SAAS;IAAEC,QAAQ,GAAKvD,UAAU,CAAvBuD,QAAQ;EAC3B,IAAID,SAAS,EAAEhD,SAAS,CAACkD,IAAI,CAAC,WAAW,CAAC;EAC1C,IAAID,QAAQ,EAAEjD,SAAS,CAACkD,IAAI,CAAC,UAAU,CAAC;EAExC,OAAOlD,SAAS;AAClB,CAAC;AAAC,eAEajC,IAAI;AAAA"}
|
|
@@ -91,7 +91,8 @@ var CardContainer = function CardContainer(_ref) {
|
|
|
91
91
|
id: id,
|
|
92
92
|
enableCarousel: enableCarousel,
|
|
93
93
|
entity: entity,
|
|
94
|
-
propsToDisplay:
|
|
94
|
+
propsToDisplay: propsToDisplay,
|
|
95
|
+
parsedPropsToDisplay: extraProps,
|
|
95
96
|
propsToDisplayModifiers: propsToDisplayModifiers,
|
|
96
97
|
modifier: modifier,
|
|
97
98
|
style: style,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CardContainer.js","names":["CardContainer","cardData","gridModifier","style","displayCategory","displayThumbnail","displayTitle","modifier","entity","propsToDisplay","gtmChildren","cardChildren","name","designConfig","itemsPerRow","enableCarousel","bannerModifier","priorityLimit","enableAutoScroll","enableOverlay","autoScrollTimer","overlayModifier","titleOverlayModifier","cardProps","entities","getEntitiesWithBanner","useContext","MainContext","itemId","propsToDisplayModifiers","getPropsToDisplayModifiers","dynamicWrapperSizes","getDynamicGridClasses","cardBannerIndex","CardWrapper","CarouselWrapper","Wrapper","map","index","baseAdunit","id","entityProps","extraProps","parsePropsToDisplay","dynamicKey","join","priority","propTypes","PropTypes","array","isRequired","string","oneOfType","arrayOf","node","bool","object","number","defaultProps","withTitle"],"sources":["../../../src/components/Card/CardContainer.js"],"sourcesContent":["import React, { useContext } from 'react';\nimport PropTypes from 'prop-types';\nimport { MainContext } from '@blaze-cms/nextjs-components';\nimport { withTitle } from '../../HOC';\nimport Banner from '../Banner';\nimport Wrapper from '../Wrapper';\nimport CarouselWrapper from '../CarouselWrapper';\nimport Card from './Card';\nimport { getDynamicGridClasses } from './helpers';\nimport { getEntitiesWithBanner, parsePropsToDisplay } from '../../helpers';\nimport { getPropsToDisplayModifiers } from '../../utils';\n\nconst CardContainer = ({\n cardData,\n gridModifier,\n style,\n displayCategory,\n displayThumbnail,\n displayTitle,\n modifier,\n entity,\n propsToDisplay,\n gtmChildren,\n cardChildren,\n name,\n designConfig,\n itemsPerRow,\n enableCarousel,\n bannerModifier,\n priorityLimit,\n enableAutoScroll,\n enableOverlay,\n autoScrollTimer,\n overlayModifier,\n titleOverlayModifier,\n ...cardProps\n}) => {\n const entities = getEntitiesWithBanner(cardData, cardProps);\n const { itemId } = useContext(MainContext);\n const propsToDisplayModifiers = getPropsToDisplayModifiers(propsToDisplay);\n const dynamicWrapperSizes = enableCarousel\n ? ''\n : getDynamicGridClasses('grid', itemsPerRow, designConfig);\n let cardBannerIndex = 0;\n const CardWrapper = enableCarousel ? CarouselWrapper : Wrapper;\n\n return (\n <CardWrapper\n className={dynamicWrapperSizes}\n modifiers={gridModifier}\n itemsPerRow={itemsPerRow}\n bannerModifier={bannerModifier}\n enableAutoScroll={enableAutoScroll}\n autoScrollTimer={autoScrollTimer}>\n {entities.map(({ baseAdunit, id, ...entityProps }, index) => {\n const extraProps = parsePropsToDisplay(entityProps, propsToDisplay);\n const dynamicKey = [itemId, index].join('-');\n if (baseAdunit) cardBannerIndex += 1;\n\n const priority = priorityLimit > 0 && index + 1 <= priorityLimit;\n\n return baseAdunit ? (\n <Banner\n key={dynamicKey}\n entity={entity}\n baseAdunit={baseAdunit}\n {...entityProps}\n modifier={modifier}\n cardBannerIndex={cardBannerIndex}\n />\n ) : (\n <Card\n key={id}\n id={id}\n enableCarousel={enableCarousel}\n entity={entity}\n propsToDisplay={extraProps}\n propsToDisplayModifiers={propsToDisplayModifiers}\n modifier={modifier}\n style={style}\n cardChildren={cardChildren}\n gtmChildren={gtmChildren}\n gtmId={name}\n gridModifier={gridModifier}\n entityProps={entityProps}\n displayCategory={displayCategory}\n displayThumbnail={displayThumbnail}\n displayTitle={displayTitle}\n priority={priority}\n enableOverlay={enableOverlay}\n overlayModifier={overlayModifier}\n titleOverlayModifier={titleOverlayModifier}\n {...entityProps}\n />\n );\n })}\n </CardWrapper>\n );\n};\n\nCardContainer.propTypes = {\n cardData: PropTypes.array.isRequired,\n name: PropTypes.string,\n entity: PropTypes.string.isRequired,\n gridModifier: PropTypes.string,\n gtmChildren: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.node), PropTypes.node]),\n cardChildren: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.node), PropTypes.node]),\n propsToDisplay: PropTypes.array,\n displayCategory: PropTypes.bool,\n displayThumbnail: PropTypes.bool,\n displayTitle: PropTypes.bool,\n modifier: PropTypes.string,\n style: PropTypes.string,\n designConfig: PropTypes.object,\n itemsPerRow: PropTypes.number,\n enableCarousel: PropTypes.bool,\n bannerModifier: PropTypes.string,\n priorityLimit: PropTypes.number,\n enableAutoScroll: PropTypes.bool,\n enableOverlay: PropTypes.bool,\n overlayModifier: PropTypes.string,\n titleOverlayModifier: PropTypes.string,\n autoScrollTimer: PropTypes.number\n};\n\nCardContainer.defaultProps = {\n gtmChildren: [],\n cardChildren: [],\n name: '',\n gridModifier: '',\n propsToDisplay: [],\n displayCategory: true,\n displayThumbnail: true,\n displayTitle: true,\n modifier: '',\n style: 'portrait',\n designConfig: {},\n itemsPerRow: 1,\n enableCarousel: false,\n bannerModifier: '',\n priorityLimit: 0,\n enableAutoScroll: false,\n enableOverlay: false,\n autoScrollTimer: 0,\n overlayModifier: '',\n titleOverlayModifier: ''\n};\n\nexport default withTitle(CardContainer);\n"],"mappings":";;;;;;;;;;;;;;;;;;;;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAAyD;EAAA;AAAA;AAAA;AAEzD,IAAMA,aAAa,GAAG,SAAhBA,aAAa,OAwBb;EAAA,IAvBJC,QAAQ,QAARA,QAAQ;IACRC,YAAY,QAAZA,YAAY;IACZC,KAAK,QAALA,KAAK;IACLC,eAAe,QAAfA,eAAe;IACfC,gBAAgB,QAAhBA,gBAAgB;IAChBC,YAAY,QAAZA,YAAY;IACZC,QAAQ,QAARA,QAAQ;IACRC,MAAM,QAANA,MAAM;IACNC,cAAc,QAAdA,cAAc;IACdC,WAAW,QAAXA,WAAW;IACXC,YAAY,QAAZA,YAAY;IACZC,IAAI,QAAJA,IAAI;IACJC,YAAY,QAAZA,YAAY;IACZC,WAAW,QAAXA,WAAW;IACXC,cAAc,QAAdA,cAAc;IACdC,cAAc,QAAdA,cAAc;IACdC,aAAa,QAAbA,aAAa;IACbC,gBAAgB,QAAhBA,gBAAgB;IAChBC,aAAa,QAAbA,aAAa;IACbC,eAAe,QAAfA,eAAe;IACfC,eAAe,QAAfA,eAAe;IACfC,oBAAoB,QAApBA,oBAAoB;IACjBC,SAAS;EAEZ,IAAMC,QAAQ,GAAG,IAAAC,+BAAqB,EAACxB,QAAQ,EAAEsB,SAAS,CAAC;EAC3D,kBAAmB,IAAAG,iBAAU,EAACC,6BAAW,CAAC;IAAlCC,MAAM,eAANA,MAAM;EACd,IAAMC,uBAAuB,GAAG,IAAAC,iCAA0B,EAACrB,cAAc,CAAC;EAC1E,IAAMsB,mBAAmB,GAAGhB,cAAc,GACtC,EAAE,GACF,IAAAiB,8BAAqB,EAAC,MAAM,EAAElB,WAAW,EAAED,YAAY,CAAC;EAC5D,IAAIoB,eAAe,GAAG,CAAC;EACvB,IAAMC,WAAW,GAAGnB,cAAc,GAAGoB,2BAAe,GAAGC,mBAAO;EAE9D,oBACE,gCAAC,WAAW;IACV,SAAS,EAAEL,mBAAoB;IAC/B,SAAS,EAAE7B,YAAa;IACxB,WAAW,EAAEY,WAAY;IACzB,cAAc,EAAEE,cAAe;IAC/B,gBAAgB,EAAEE,gBAAiB;IACnC,eAAe,EAAEE;EAAgB,GAChCI,QAAQ,CAACa,GAAG,CAAC,iBAAqCC,KAAK,EAAK;IAAA,IAA5CC,UAAU,SAAVA,UAAU;MAAEC,EAAE,SAAFA,EAAE;MAAKC,WAAW;IAC7C,IAAMC,UAAU,GAAG,IAAAC,6BAAmB,EAACF,WAAW,EAAEhC,cAAc,CAAC;IACnE,IAAMmC,UAAU,GAAG,CAAChB,MAAM,EAAEU,KAAK,CAAC,CAACO,IAAI,CAAC,GAAG,CAAC;IAC5C,IAAIN,UAAU,EAAEN,eAAe,IAAI,CAAC;IAEpC,IAAMa,QAAQ,GAAG7B,aAAa,GAAG,CAAC,IAAIqB,KAAK,GAAG,CAAC,IAAIrB,aAAa;IAEhE,OAAOsB,UAAU,gBACf,gCAAC,kBAAM;MACL,GAAG,EAAEK,UAAW;MAChB,MAAM,EAAEpC,MAAO;MACf,UAAU,EAAE+B;IAAW,GACnBE,WAAW;MACf,QAAQ,EAAElC,QAAS;MACnB,eAAe,EAAE0B;IAAgB,GACjC,gBAEF,gCAAC,gBAAI;MACH,GAAG,EAAEO,EAAG;MACR,EAAE,EAAEA,EAAG;MACP,cAAc,EAAEzB,cAAe;MAC/B,MAAM,EAAEP,MAAO;MACf,cAAc,
|
|
1
|
+
{"version":3,"file":"CardContainer.js","names":["CardContainer","cardData","gridModifier","style","displayCategory","displayThumbnail","displayTitle","modifier","entity","propsToDisplay","gtmChildren","cardChildren","name","designConfig","itemsPerRow","enableCarousel","bannerModifier","priorityLimit","enableAutoScroll","enableOverlay","autoScrollTimer","overlayModifier","titleOverlayModifier","cardProps","entities","getEntitiesWithBanner","useContext","MainContext","itemId","propsToDisplayModifiers","getPropsToDisplayModifiers","dynamicWrapperSizes","getDynamicGridClasses","cardBannerIndex","CardWrapper","CarouselWrapper","Wrapper","map","index","baseAdunit","id","entityProps","extraProps","parsePropsToDisplay","dynamicKey","join","priority","propTypes","PropTypes","array","isRequired","string","oneOfType","arrayOf","node","bool","object","number","defaultProps","withTitle"],"sources":["../../../src/components/Card/CardContainer.js"],"sourcesContent":["import React, { useContext } from 'react';\nimport PropTypes from 'prop-types';\nimport { MainContext } from '@blaze-cms/nextjs-components';\nimport { withTitle } from '../../HOC';\nimport Banner from '../Banner';\nimport Wrapper from '../Wrapper';\nimport CarouselWrapper from '../CarouselWrapper';\nimport Card from './Card';\nimport { getDynamicGridClasses } from './helpers';\nimport { getEntitiesWithBanner, parsePropsToDisplay } from '../../helpers';\nimport { getPropsToDisplayModifiers } from '../../utils';\n\nconst CardContainer = ({\n cardData,\n gridModifier,\n style,\n displayCategory,\n displayThumbnail,\n displayTitle,\n modifier,\n entity,\n propsToDisplay,\n gtmChildren,\n cardChildren,\n name,\n designConfig,\n itemsPerRow,\n enableCarousel,\n bannerModifier,\n priorityLimit,\n enableAutoScroll,\n enableOverlay,\n autoScrollTimer,\n overlayModifier,\n titleOverlayModifier,\n ...cardProps\n}) => {\n const entities = getEntitiesWithBanner(cardData, cardProps);\n const { itemId } = useContext(MainContext);\n const propsToDisplayModifiers = getPropsToDisplayModifiers(propsToDisplay);\n const dynamicWrapperSizes = enableCarousel\n ? ''\n : getDynamicGridClasses('grid', itemsPerRow, designConfig);\n let cardBannerIndex = 0;\n const CardWrapper = enableCarousel ? CarouselWrapper : Wrapper;\n\n return (\n <CardWrapper\n className={dynamicWrapperSizes}\n modifiers={gridModifier}\n itemsPerRow={itemsPerRow}\n bannerModifier={bannerModifier}\n enableAutoScroll={enableAutoScroll}\n autoScrollTimer={autoScrollTimer}>\n {entities.map(({ baseAdunit, id, ...entityProps }, index) => {\n const extraProps = parsePropsToDisplay(entityProps, propsToDisplay);\n const dynamicKey = [itemId, index].join('-');\n if (baseAdunit) cardBannerIndex += 1;\n\n const priority = priorityLimit > 0 && index + 1 <= priorityLimit;\n\n return baseAdunit ? (\n <Banner\n key={dynamicKey}\n entity={entity}\n baseAdunit={baseAdunit}\n {...entityProps}\n modifier={modifier}\n cardBannerIndex={cardBannerIndex}\n />\n ) : (\n <Card\n key={id}\n id={id}\n enableCarousel={enableCarousel}\n entity={entity}\n propsToDisplay={propsToDisplay}\n parsedPropsToDisplay={extraProps}\n propsToDisplayModifiers={propsToDisplayModifiers}\n modifier={modifier}\n style={style}\n cardChildren={cardChildren}\n gtmChildren={gtmChildren}\n gtmId={name}\n gridModifier={gridModifier}\n entityProps={entityProps}\n displayCategory={displayCategory}\n displayThumbnail={displayThumbnail}\n displayTitle={displayTitle}\n priority={priority}\n enableOverlay={enableOverlay}\n overlayModifier={overlayModifier}\n titleOverlayModifier={titleOverlayModifier}\n {...entityProps}\n />\n );\n })}\n </CardWrapper>\n );\n};\n\nCardContainer.propTypes = {\n cardData: PropTypes.array.isRequired,\n name: PropTypes.string,\n entity: PropTypes.string.isRequired,\n gridModifier: PropTypes.string,\n gtmChildren: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.node), PropTypes.node]),\n cardChildren: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.node), PropTypes.node]),\n propsToDisplay: PropTypes.array,\n displayCategory: PropTypes.bool,\n displayThumbnail: PropTypes.bool,\n displayTitle: PropTypes.bool,\n modifier: PropTypes.string,\n style: PropTypes.string,\n designConfig: PropTypes.object,\n itemsPerRow: PropTypes.number,\n enableCarousel: PropTypes.bool,\n bannerModifier: PropTypes.string,\n priorityLimit: PropTypes.number,\n enableAutoScroll: PropTypes.bool,\n enableOverlay: PropTypes.bool,\n overlayModifier: PropTypes.string,\n titleOverlayModifier: PropTypes.string,\n autoScrollTimer: PropTypes.number\n};\n\nCardContainer.defaultProps = {\n gtmChildren: [],\n cardChildren: [],\n name: '',\n gridModifier: '',\n propsToDisplay: [],\n displayCategory: true,\n displayThumbnail: true,\n displayTitle: true,\n modifier: '',\n style: 'portrait',\n designConfig: {},\n itemsPerRow: 1,\n enableCarousel: false,\n bannerModifier: '',\n priorityLimit: 0,\n enableAutoScroll: false,\n enableOverlay: false,\n autoScrollTimer: 0,\n overlayModifier: '',\n titleOverlayModifier: ''\n};\n\nexport default withTitle(CardContainer);\n"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CardsRender.js","names":["CardsRender","orderedListData","gridModifier","children","entity","banner","omitWrappers","propsToDisplay","paginationType","parent","hasBanner","gtmData","itemsToDisplay","props","name","dataForGtm","splitChildren","regularChildren","gtmChildren","bannerProps","type","BANNER","propsToDisplayModifiers","getPropsToDisplayModifiers","imageIds","map","imageId","filter","Boolean","useGetImages","imagesData","data","imagesLoading","loading","updatedListWithImages","appendImages","WrapperToUse","Fragment","Wrapper","LOAD_MORE","propTypes","PropTypes","string","isRequired","object","array","bool","oneOfType","defaultProps"],"sources":["../../../../../src/components/List/components/Cards/CardsRender.js"],"sourcesContent":["import React, { Fragment } from 'react';\nimport PropTypes from 'prop-types';\nimport CardsRenderWrapper from './CardsRenderWrapper';\nimport { BANNER } from '../../constants';\nimport Wrapper from '../../../Wrapper';\nimport { splitChildren, appendImages } from '../../../../helpers';\nimport { getPropsToDisplayModifiers } from '../../../../utils';\nimport ListPagination from '../Pagination';\nimport { LOAD_MORE } from '../../../../constants';\nimport { useGetImages } from '../../../../hooks';\n\nconst CardsRender = ({\n orderedListData,\n gridModifier,\n children,\n entity,\n banner,\n omitWrappers,\n propsToDisplay,\n paginationType,\n parent,\n hasBanner,\n gtmData,\n itemsToDisplay,\n ...props\n}) => {\n const { name } = props;\n const dataForGtm = gtmData || orderedListData;\n\n const { regularChildren, gtmChildren } = splitChildren(children, dataForGtm, entity, {\n name\n });\n\n const bannerProps = banner\n ? { parent, hasBanner, entity, propsToDisplay, ...banner, type: BANNER }\n : null;\n const propsToDisplayModifiers = getPropsToDisplayModifiers(propsToDisplay);\n const imageIds = itemsToDisplay.map(({ imageId }) => imageId).filter(Boolean);\n const { data: imagesData, loading: imagesLoading } = useGetImages(imageIds, true);\n if (imagesLoading) return '';\n const updatedListWithImages = appendImages(imagesData, orderedListData, itemsToDisplay);\n\n const WrapperToUse = omitWrappers ? Fragment : Wrapper;\n\n return (\n <>\n <WrapperToUse className=\"list list--compact\">\n <CardsRenderWrapper\n orderedListData={updatedListWithImages}\n listProps={props}\n bannerProps={bannerProps}\n cardChildren={regularChildren}\n gtmChildren={gtmChildren}\n omitWrappers={omitWrappers}\n propsToDisplay={propsToDisplay}\n propsToDisplayModifiers={propsToDisplayModifiers}\n gridModifier={gridModifier}\n entity={entity}\n parent={parent}\n {...props}\n />\n </WrapperToUse>\n\n {paginationType === LOAD_MORE && (\n <ListPagination paginationType={paginationType} parent={parent} {...props} />\n )}\n </>\n );\n};\n\nCardsRender.propTypes = {\n name: PropTypes.string.isRequired,\n parent: PropTypes.object.isRequired,\n orderedListData: PropTypes.array.isRequired,\n propsToDisplay: PropTypes.array.isRequired,\n paginationType: PropTypes.string.isRequired,\n hasBanner: PropTypes.bool,\n banner: PropTypes.object,\n omitWrappers: PropTypes.bool,\n gridModifier: PropTypes.string,\n entity: PropTypes.string.isRequired,\n children: PropTypes.oneOfType([PropTypes.array, PropTypes.object]),\n gtmData: PropTypes.array,\n itemsToDisplay: PropTypes.array\n};\n\nCardsRender.defaultProps = {\n gridModifier: '',\n children: null,\n hasBanner: false,\n banner: null,\n omitWrappers: false,\n gtmData: null,\n itemsToDisplay: []\n};\n\nexport default CardsRender;\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAAiD;AAAA;AAAA;AAAA;AAAA;AAEjD,IAAMA,WAAW,GAAG,SAAdA,WAAW,OAcX;EAAA,IAbJC,eAAe,QAAfA,eAAe;IACfC,YAAY,QAAZA,YAAY;IACZC,QAAQ,QAARA,QAAQ;IACRC,MAAM,QAANA,MAAM;IACNC,MAAM,QAANA,MAAM;IACNC,YAAY,QAAZA,YAAY;IACZC,cAAc,QAAdA,cAAc;IACdC,cAAc,QAAdA,cAAc;IACdC,MAAM,QAANA,MAAM;IACNC,SAAS,QAATA,SAAS;IACTC,OAAO,QAAPA,OAAO;IACPC,cAAc,QAAdA,cAAc;IACXC,KAAK;EAER,IAAQC,IAAI,GAAKD,KAAK,CAAdC,IAAI;EACZ,IAAMC,UAAU,GAAGJ,OAAO,IAAIV,eAAe;EAE7C,qBAAyC,IAAAe,sBAAa,EAACb,QAAQ,EAAEY,UAAU,EAAEX,MAAM,EAAE;MACnFU,IAAI,EAAJA;IACF,CAAC,CAAC;IAFMG,eAAe,kBAAfA,eAAe;IAAEC,WAAW,kBAAXA,WAAW;EAIpC,IAAMC,WAAW,GAAGd,MAAM;IACpBI,MAAM,EAANA,MAAM;IAAEC,SAAS,EAATA,SAAS;IAAEN,MAAM,EAANA,MAAM;IAAEG,cAAc,EAAdA;EAAc,GAAKF,MAAM;IAAEe,IAAI,EAAEC;EAAM,KACpE,IAAI;
|
|
1
|
+
{"version":3,"file":"CardsRender.js","names":["CardsRender","orderedListData","gridModifier","children","entity","banner","omitWrappers","propsToDisplay","paginationType","parent","hasBanner","gtmData","itemsToDisplay","props","name","dataForGtm","splitChildren","regularChildren","gtmChildren","bannerProps","type","BANNER","propsToDisplayModifiers","getPropsToDisplayModifiers","imageIds","map","imageId","filter","Boolean","useGetImages","imagesData","data","imagesLoading","loading","updatedListWithImages","appendImages","WrapperToUse","Fragment","Wrapper","LOAD_MORE","propTypes","PropTypes","string","isRequired","object","array","bool","oneOfType","defaultProps"],"sources":["../../../../../src/components/List/components/Cards/CardsRender.js"],"sourcesContent":["import React, { Fragment } from 'react';\nimport PropTypes from 'prop-types';\nimport CardsRenderWrapper from './CardsRenderWrapper';\nimport { BANNER } from '../../constants';\nimport Wrapper from '../../../Wrapper';\nimport { splitChildren, appendImages } from '../../../../helpers';\nimport { getPropsToDisplayModifiers } from '../../../../utils';\nimport ListPagination from '../Pagination';\nimport { LOAD_MORE } from '../../../../constants';\nimport { useGetImages } from '../../../../hooks';\n\nconst CardsRender = ({\n orderedListData,\n gridModifier,\n children,\n entity,\n banner,\n omitWrappers,\n propsToDisplay,\n paginationType,\n parent,\n hasBanner,\n gtmData,\n itemsToDisplay,\n ...props\n}) => {\n const { name } = props;\n const dataForGtm = gtmData || orderedListData;\n\n const { regularChildren, gtmChildren } = splitChildren(children, dataForGtm, entity, {\n name\n });\n\n const bannerProps = banner\n ? { parent, hasBanner, entity, propsToDisplay, ...banner, type: BANNER }\n : null;\n\n const propsToDisplayModifiers = getPropsToDisplayModifiers(propsToDisplay);\n const imageIds = itemsToDisplay.map(({ imageId }) => imageId).filter(Boolean);\n const { data: imagesData, loading: imagesLoading } = useGetImages(imageIds, true);\n if (imagesLoading) return '';\n const updatedListWithImages = appendImages(imagesData, orderedListData, itemsToDisplay);\n\n const WrapperToUse = omitWrappers ? Fragment : Wrapper;\n\n return (\n <>\n <WrapperToUse className=\"list list--compact\">\n <CardsRenderWrapper\n orderedListData={updatedListWithImages}\n listProps={props}\n bannerProps={bannerProps}\n cardChildren={regularChildren}\n gtmChildren={gtmChildren}\n omitWrappers={omitWrappers}\n propsToDisplay={propsToDisplay}\n propsToDisplayModifiers={propsToDisplayModifiers}\n gridModifier={gridModifier}\n entity={entity}\n parent={parent}\n {...props}\n />\n </WrapperToUse>\n\n {paginationType === LOAD_MORE && (\n <ListPagination paginationType={paginationType} parent={parent} {...props} />\n )}\n </>\n );\n};\n\nCardsRender.propTypes = {\n name: PropTypes.string.isRequired,\n parent: PropTypes.object.isRequired,\n orderedListData: PropTypes.array.isRequired,\n propsToDisplay: PropTypes.array.isRequired,\n paginationType: PropTypes.string.isRequired,\n hasBanner: PropTypes.bool,\n banner: PropTypes.object,\n omitWrappers: PropTypes.bool,\n gridModifier: PropTypes.string,\n entity: PropTypes.string.isRequired,\n children: PropTypes.oneOfType([PropTypes.array, PropTypes.object]),\n gtmData: PropTypes.array,\n itemsToDisplay: PropTypes.array\n};\n\nCardsRender.defaultProps = {\n gridModifier: '',\n children: null,\n hasBanner: false,\n banner: null,\n omitWrappers: false,\n gtmData: null,\n itemsToDisplay: []\n};\n\nexport default CardsRender;\n"],"mappings":"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"}
|
|
@@ -69,7 +69,8 @@ var CardsRenderItem = function CardsRenderItem(_ref) {
|
|
|
69
69
|
id: id,
|
|
70
70
|
entity: entity,
|
|
71
71
|
gridModifier: gridModifier,
|
|
72
|
-
propsToDisplay:
|
|
72
|
+
propsToDisplay: propsToDisplay,
|
|
73
|
+
parsedPropsToDisplay: parsedPropsToDisplay,
|
|
73
74
|
propsToDisplayModifiers: propsToDisplayModifiers,
|
|
74
75
|
modifier: modifier,
|
|
75
76
|
style: style,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CardsRenderItem.js","names":["CardsRenderItem","cardProps","listProps","bannerProps","index","entity","currentListLength","cardChildren","gtmChildren","modifier","gridModifier","propsToDisplayModifiers","propsToDisplay","shouldRenderBanner","bannerIndex","priority","enableOverlay","autoScrollTimer","arrowSize","overlayModifier","titleOverlayModifier","initialOffset","isInfinite","style","name","id","triggerInfiniteScroll","displayCount","displayCategory","displayThumbnail","displayTitle","listTotal","itemsPerPage","currentItemIndex","renderWaypoint","shouldRenderWaypoint","shouldRenderGtm","checkIfShouldRenderGtm","parsedPropsToDisplay","parsePropsToDisplay","renderChildren","propTypes","PropTypes","object","isRequired","number","array","bool","string","oneOfType","arrayOf","node","defaultProps"],"sources":["../../../../../src/components/List/components/Cards/CardsRenderItem.js"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport { Waypoint } from 'react-waypoint';\nimport Card from '../../../Card/Card';\nimport { shouldRenderWaypoint, renderChildren, parsePropsToDisplay } from '../../../../helpers';\nimport { checkIfShouldRenderGtm } from '../helpers';\nimport Banner from '../../../Banner';\n\nconst CardsRenderItem = ({\n cardProps,\n listProps,\n bannerProps,\n index,\n entity,\n currentListLength,\n cardChildren,\n gtmChildren,\n modifier,\n gridModifier,\n propsToDisplayModifiers,\n propsToDisplay,\n shouldRenderBanner,\n bannerIndex,\n priority,\n enableOverlay,\n autoScrollTimer,\n arrowSize,\n overlayModifier,\n titleOverlayModifier\n}) => {\n const {\n initialOffset,\n isInfinite,\n style,\n name,\n id,\n triggerInfiniteScroll,\n displayCount,\n displayCategory = true,\n displayThumbnail = true,\n displayTitle = true,\n listTotal,\n itemsPerPage\n } = listProps;\n\n const currentItemIndex = initialOffset + index;\n const renderWaypoint =\n isInfinite && shouldRenderWaypoint(index, currentListLength, currentItemIndex, listTotal);\n const shouldRenderGtm =\n gtmChildren && checkIfShouldRenderGtm(itemsPerPage, currentListLength, index);\n\n const parsedPropsToDisplay = parsePropsToDisplay(cardProps, propsToDisplay);\n\n return (\n <>\n {shouldRenderGtm && renderChildren(gtmChildren)}\n {displayCount && (\n <div className=\"heading heading--section heading--section--count\">\n <span className=\"section-number\">{currentItemIndex + 1}</span>\n <span className=\"section-total\">/{listTotal}</span>\n </div>\n )}\n <div className=\"list__item list__item--compact\">\n {renderWaypoint && <Waypoint onEnter={triggerInfiniteScroll} />}\n <Card\n id={id}\n entity={entity}\n gridModifier={gridModifier}\n propsToDisplay={parsedPropsToDisplay}\n propsToDisplayModifiers={propsToDisplayModifiers}\n modifier={modifier}\n style={style}\n cardChildren={cardChildren}\n displayCategory={displayCategory}\n displayThumbnail={displayThumbnail}\n displayTitle={displayTitle}\n cardProps={cardProps}\n gtmId={name}\n gtmChildren={gtmChildren}\n priority={priority}\n arrowSize={arrowSize}\n enableOverlay={enableOverlay}\n overlayModifier={overlayModifier}\n titleOverlayModifier={titleOverlayModifier}\n {...cardProps}\n />\n </div>\n {shouldRenderBanner && <Banner {...bannerProps} cardBannerIndex={bannerIndex} />}\n </>\n );\n};\n\nCardsRenderItem.propTypes = {\n cardProps: PropTypes.object.isRequired,\n listProps: PropTypes.object.isRequired,\n index: PropTypes.number.isRequired,\n currentListLength: PropTypes.number.isRequired,\n propsToDisplayModifiers: PropTypes.array.isRequired,\n shouldRenderBanner: PropTypes.bool.isRequired,\n bannerIndex: PropTypes.number.isRequired,\n bannerProps: PropTypes.object,\n gridModifier: PropTypes.string,\n propsToDisplay: PropTypes.array,\n entity: PropTypes.string.isRequired,\n modifier: PropTypes.string,\n cardChildren: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.node), PropTypes.node]),\n gtmChildren: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.node), PropTypes.node]),\n priority: PropTypes.bool,\n enableOverlay: PropTypes.bool,\n overlayModifier: PropTypes.string,\n titleOverlayModifier: PropTypes.string,\n autoScrollTimer: PropTypes.number,\n arrowSize: PropTypes.string\n};\n\nCardsRenderItem.defaultProps = {\n priority: false,\n bannerProps: null,\n gridModifier: '',\n propsToDisplay: [],\n modifier: '',\n cardChildren: [],\n gtmChildren: [],\n enableOverlay: false,\n autoScrollTimer: 0,\n overlayModifier: '',\n titleOverlayModifier: '',\n arrowSize: ''\n};\n\nexport default CardsRenderItem;\n"],"mappings":";;;;;;;;;;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AAEA,IAAMA,eAAe,GAAG,SAAlBA,eAAe,OAqBf;EAAA,IApBJC,SAAS,QAATA,SAAS;IACTC,SAAS,QAATA,SAAS;IACTC,WAAW,QAAXA,WAAW;IACXC,KAAK,QAALA,KAAK;IACLC,MAAM,QAANA,MAAM;IACNC,iBAAiB,QAAjBA,iBAAiB;IACjBC,YAAY,QAAZA,YAAY;IACZC,WAAW,QAAXA,WAAW;IACXC,QAAQ,QAARA,QAAQ;IACRC,YAAY,QAAZA,YAAY;IACZC,uBAAuB,QAAvBA,uBAAuB;IACvBC,cAAc,QAAdA,cAAc;IACdC,kBAAkB,QAAlBA,kBAAkB;IAClBC,WAAW,QAAXA,WAAW;IACXC,QAAQ,QAARA,QAAQ;IACRC,aAAa,QAAbA,aAAa;IACbC,eAAe,QAAfA,eAAe;IACfC,SAAS,QAATA,SAAS;IACTC,eAAe,QAAfA,eAAe;IACfC,oBAAoB,QAApBA,oBAAoB;EAEpB,IACEC,aAAa,GAYXnB,SAAS,CAZXmB,aAAa;IACbC,UAAU,GAWRpB,SAAS,CAXXoB,UAAU;IACVC,KAAK,GAUHrB,SAAS,CAVXqB,KAAK;IACLC,IAAI,GASFtB,SAAS,CATXsB,IAAI;IACJC,EAAE,GAQAvB,SAAS,CARXuB,EAAE;IACFC,qBAAqB,GAOnBxB,SAAS,CAPXwB,qBAAqB;IACrBC,YAAY,GAMVzB,SAAS,CANXyB,YAAY;IAAA,wBAMVzB,SAAS,CALX0B,eAAe;IAAfA,eAAe,sCAAG,IAAI;IAAA,wBAKpB1B,SAAS,CAJX2B,gBAAgB;IAAhBA,gBAAgB,sCAAG,IAAI;IAAA,wBAIrB3B,SAAS,CAHX4B,YAAY;IAAZA,YAAY,sCAAG,IAAI;IACnBC,SAAS,GAEP7B,SAAS,CAFX6B,SAAS;IACTC,YAAY,GACV9B,SAAS,CADX8B,YAAY;EAGd,IAAMC,gBAAgB,GAAGZ,aAAa,GAAGjB,KAAK;EAC9C,IAAM8B,cAAc,GAClBZ,UAAU,IAAI,IAAAa,6BAAoB,EAAC/B,KAAK,EAAEE,iBAAiB,EAAE2B,gBAAgB,EAAEF,SAAS,CAAC;EAC3F,IAAMK,eAAe,GACnB5B,WAAW,IAAI,IAAA6B,gCAAsB,EAACL,YAAY,EAAE1B,iBAAiB,EAAEF,KAAK,CAAC;EAE/E,IAAMkC,oBAAoB,GAAG,IAAAC,4BAAmB,EAACtC,SAAS,EAAEW,cAAc,CAAC;EAE3E,oBACE,kEACGwB,eAAe,IAAI,IAAAI,uBAAc,EAAChC,WAAW,CAAC,EAC9CmB,YAAY,iBACX;IAAK,SAAS,EAAC;EAAkD,gBAC/D;IAAM,SAAS,EAAC;EAAgB,GAAEM,gBAAgB,GAAG,CAAC,CAAQ,eAC9D;IAAM,SAAS,EAAC;EAAe,QAAGF,SAAS,CAAQ,CAEtD,eACD;IAAK,SAAS,EAAC;EAAgC,GAC5CG,cAAc,iBAAI,gCAAC,uBAAQ;IAAC,OAAO,EAAER;EAAsB,EAAG,eAC/D,gCAAC,gBAAI;IACH,EAAE,EAAED,EAAG;IACP,MAAM,EAAEpB,MAAO;IACf,YAAY,EAAEK,YAAa;IAC3B,cAAc,
|
|
1
|
+
{"version":3,"file":"CardsRenderItem.js","names":["CardsRenderItem","cardProps","listProps","bannerProps","index","entity","currentListLength","cardChildren","gtmChildren","modifier","gridModifier","propsToDisplayModifiers","propsToDisplay","shouldRenderBanner","bannerIndex","priority","enableOverlay","autoScrollTimer","arrowSize","overlayModifier","titleOverlayModifier","initialOffset","isInfinite","style","name","id","triggerInfiniteScroll","displayCount","displayCategory","displayThumbnail","displayTitle","listTotal","itemsPerPage","currentItemIndex","renderWaypoint","shouldRenderWaypoint","shouldRenderGtm","checkIfShouldRenderGtm","parsedPropsToDisplay","parsePropsToDisplay","renderChildren","propTypes","PropTypes","object","isRequired","number","array","bool","string","oneOfType","arrayOf","node","defaultProps"],"sources":["../../../../../src/components/List/components/Cards/CardsRenderItem.js"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport { Waypoint } from 'react-waypoint';\nimport Card from '../../../Card/Card';\nimport { shouldRenderWaypoint, renderChildren, parsePropsToDisplay } from '../../../../helpers';\nimport { checkIfShouldRenderGtm } from '../helpers';\nimport Banner from '../../../Banner';\n\nconst CardsRenderItem = ({\n cardProps,\n listProps,\n bannerProps,\n index,\n entity,\n currentListLength,\n cardChildren,\n gtmChildren,\n modifier,\n gridModifier,\n propsToDisplayModifiers,\n propsToDisplay,\n shouldRenderBanner,\n bannerIndex,\n priority,\n enableOverlay,\n autoScrollTimer,\n arrowSize,\n overlayModifier,\n titleOverlayModifier\n}) => {\n const {\n initialOffset,\n isInfinite,\n style,\n name,\n id,\n triggerInfiniteScroll,\n displayCount,\n displayCategory = true,\n displayThumbnail = true,\n displayTitle = true,\n listTotal,\n itemsPerPage\n } = listProps;\n\n const currentItemIndex = initialOffset + index;\n const renderWaypoint =\n isInfinite && shouldRenderWaypoint(index, currentListLength, currentItemIndex, listTotal);\n const shouldRenderGtm =\n gtmChildren && checkIfShouldRenderGtm(itemsPerPage, currentListLength, index);\n\n const parsedPropsToDisplay = parsePropsToDisplay(cardProps, propsToDisplay);\n\n return (\n <>\n {shouldRenderGtm && renderChildren(gtmChildren)}\n {displayCount && (\n <div className=\"heading heading--section heading--section--count\">\n <span className=\"section-number\">{currentItemIndex + 1}</span>\n <span className=\"section-total\">/{listTotal}</span>\n </div>\n )}\n <div className=\"list__item list__item--compact\">\n {renderWaypoint && <Waypoint onEnter={triggerInfiniteScroll} />}\n <Card\n id={id}\n entity={entity}\n gridModifier={gridModifier}\n propsToDisplay={propsToDisplay}\n parsedPropsToDisplay={parsedPropsToDisplay}\n propsToDisplayModifiers={propsToDisplayModifiers}\n modifier={modifier}\n style={style}\n cardChildren={cardChildren}\n displayCategory={displayCategory}\n displayThumbnail={displayThumbnail}\n displayTitle={displayTitle}\n cardProps={cardProps}\n gtmId={name}\n gtmChildren={gtmChildren}\n priority={priority}\n arrowSize={arrowSize}\n enableOverlay={enableOverlay}\n overlayModifier={overlayModifier}\n titleOverlayModifier={titleOverlayModifier}\n {...cardProps}\n />\n </div>\n {shouldRenderBanner && <Banner {...bannerProps} cardBannerIndex={bannerIndex} />}\n </>\n );\n};\n\nCardsRenderItem.propTypes = {\n cardProps: PropTypes.object.isRequired,\n listProps: PropTypes.object.isRequired,\n index: PropTypes.number.isRequired,\n currentListLength: PropTypes.number.isRequired,\n propsToDisplayModifiers: PropTypes.array.isRequired,\n shouldRenderBanner: PropTypes.bool.isRequired,\n bannerIndex: PropTypes.number.isRequired,\n bannerProps: PropTypes.object,\n gridModifier: PropTypes.string,\n propsToDisplay: PropTypes.array,\n entity: PropTypes.string.isRequired,\n modifier: PropTypes.string,\n cardChildren: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.node), PropTypes.node]),\n gtmChildren: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.node), PropTypes.node]),\n priority: PropTypes.bool,\n enableOverlay: PropTypes.bool,\n overlayModifier: PropTypes.string,\n titleOverlayModifier: PropTypes.string,\n autoScrollTimer: PropTypes.number,\n arrowSize: PropTypes.string\n};\n\nCardsRenderItem.defaultProps = {\n priority: false,\n bannerProps: null,\n gridModifier: '',\n propsToDisplay: [],\n modifier: '',\n cardChildren: [],\n gtmChildren: [],\n enableOverlay: false,\n autoScrollTimer: 0,\n overlayModifier: '',\n titleOverlayModifier: '',\n arrowSize: ''\n};\n\nexport default CardsRenderItem;\n"],"mappings":";;;;;;;;;;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AAEA,IAAMA,eAAe,GAAG,SAAlBA,eAAe,OAqBf;EAAA,IApBJC,SAAS,QAATA,SAAS;IACTC,SAAS,QAATA,SAAS;IACTC,WAAW,QAAXA,WAAW;IACXC,KAAK,QAALA,KAAK;IACLC,MAAM,QAANA,MAAM;IACNC,iBAAiB,QAAjBA,iBAAiB;IACjBC,YAAY,QAAZA,YAAY;IACZC,WAAW,QAAXA,WAAW;IACXC,QAAQ,QAARA,QAAQ;IACRC,YAAY,QAAZA,YAAY;IACZC,uBAAuB,QAAvBA,uBAAuB;IACvBC,cAAc,QAAdA,cAAc;IACdC,kBAAkB,QAAlBA,kBAAkB;IAClBC,WAAW,QAAXA,WAAW;IACXC,QAAQ,QAARA,QAAQ;IACRC,aAAa,QAAbA,aAAa;IACbC,eAAe,QAAfA,eAAe;IACfC,SAAS,QAATA,SAAS;IACTC,eAAe,QAAfA,eAAe;IACfC,oBAAoB,QAApBA,oBAAoB;EAEpB,IACEC,aAAa,GAYXnB,SAAS,CAZXmB,aAAa;IACbC,UAAU,GAWRpB,SAAS,CAXXoB,UAAU;IACVC,KAAK,GAUHrB,SAAS,CAVXqB,KAAK;IACLC,IAAI,GASFtB,SAAS,CATXsB,IAAI;IACJC,EAAE,GAQAvB,SAAS,CARXuB,EAAE;IACFC,qBAAqB,GAOnBxB,SAAS,CAPXwB,qBAAqB;IACrBC,YAAY,GAMVzB,SAAS,CANXyB,YAAY;IAAA,wBAMVzB,SAAS,CALX0B,eAAe;IAAfA,eAAe,sCAAG,IAAI;IAAA,wBAKpB1B,SAAS,CAJX2B,gBAAgB;IAAhBA,gBAAgB,sCAAG,IAAI;IAAA,wBAIrB3B,SAAS,CAHX4B,YAAY;IAAZA,YAAY,sCAAG,IAAI;IACnBC,SAAS,GAEP7B,SAAS,CAFX6B,SAAS;IACTC,YAAY,GACV9B,SAAS,CADX8B,YAAY;EAGd,IAAMC,gBAAgB,GAAGZ,aAAa,GAAGjB,KAAK;EAC9C,IAAM8B,cAAc,GAClBZ,UAAU,IAAI,IAAAa,6BAAoB,EAAC/B,KAAK,EAAEE,iBAAiB,EAAE2B,gBAAgB,EAAEF,SAAS,CAAC;EAC3F,IAAMK,eAAe,GACnB5B,WAAW,IAAI,IAAA6B,gCAAsB,EAACL,YAAY,EAAE1B,iBAAiB,EAAEF,KAAK,CAAC;EAE/E,IAAMkC,oBAAoB,GAAG,IAAAC,4BAAmB,EAACtC,SAAS,EAAEW,cAAc,CAAC;EAE3E,oBACE,kEACGwB,eAAe,IAAI,IAAAI,uBAAc,EAAChC,WAAW,CAAC,EAC9CmB,YAAY,iBACX;IAAK,SAAS,EAAC;EAAkD,gBAC/D;IAAM,SAAS,EAAC;EAAgB,GAAEM,gBAAgB,GAAG,CAAC,CAAQ,eAC9D;IAAM,SAAS,EAAC;EAAe,QAAGF,SAAS,CAAQ,CAEtD,eACD;IAAK,SAAS,EAAC;EAAgC,GAC5CG,cAAc,iBAAI,gCAAC,uBAAQ;IAAC,OAAO,EAAER;EAAsB,EAAG,eAC/D,gCAAC,gBAAI;IACH,EAAE,EAAED,EAAG;IACP,MAAM,EAAEpB,MAAO;IACf,YAAY,EAAEK,YAAa;IAC3B,cAAc,EAAEE,cAAe;IAC/B,oBAAoB,EAAE0B,oBAAqB;IAC3C,uBAAuB,EAAE3B,uBAAwB;IACjD,QAAQ,EAAEF,QAAS;IACnB,KAAK,EAAEc,KAAM;IACb,YAAY,EAAEhB,YAAa;IAC3B,eAAe,EAAEqB,eAAgB;IACjC,gBAAgB,EAAEC,gBAAiB;IACnC,YAAY,EAAEC,YAAa;IAC3B,SAAS,EAAE7B,SAAU;IACrB,KAAK,EAAEuB,IAAK;IACZ,WAAW,EAAEhB,WAAY;IACzB,QAAQ,EAAEO,QAAS;IACnB,SAAS,EAAEG,SAAU;IACrB,aAAa,EAAEF,aAAc;IAC7B,eAAe,EAAEG,eAAgB;IACjC,oBAAoB,EAAEC;EAAqB,GACvCnB,SAAS,EACb,CACE,EACLY,kBAAkB,iBAAI,gCAAC,kBAAM,gCAAKV,WAAW;IAAE,eAAe,EAAEW;EAAY,GAAG,CAC/E;AAEP,CAAC;AAEDd,eAAe,CAACyC,SAAS,GAAG;EAC1BxC,SAAS,EAAEyC,qBAAS,CAACC,MAAM,CAACC,UAAU;EACtC1C,SAAS,EAAEwC,qBAAS,CAACC,MAAM,CAACC,UAAU;EACtCxC,KAAK,EAAEsC,qBAAS,CAACG,MAAM,CAACD,UAAU;EAClCtC,iBAAiB,EAAEoC,qBAAS,CAACG,MAAM,CAACD,UAAU;EAC9CjC,uBAAuB,EAAE+B,qBAAS,CAACI,KAAK,CAACF,UAAU;EACnD/B,kBAAkB,EAAE6B,qBAAS,CAACK,IAAI,CAACH,UAAU;EAC7C9B,WAAW,EAAE4B,qBAAS,CAACG,MAAM,CAACD,UAAU;EACxCzC,WAAW,EAAEuC,qBAAS,CAACC,MAAM;EAC7BjC,YAAY,EAAEgC,qBAAS,CAACM,MAAM;EAC9BpC,cAAc,EAAE8B,qBAAS,CAACI,KAAK;EAC/BzC,MAAM,EAAEqC,qBAAS,CAACM,MAAM,CAACJ,UAAU;EACnCnC,QAAQ,EAAEiC,qBAAS,CAACM,MAAM;EAC1BzC,YAAY,EAAEmC,qBAAS,CAACO,SAAS,CAAC,CAACP,qBAAS,CAACQ,OAAO,CAACR,qBAAS,CAACS,IAAI,CAAC,EAAET,qBAAS,CAACS,IAAI,CAAC,CAAC;EACtF3C,WAAW,EAAEkC,qBAAS,CAACO,SAAS,CAAC,CAACP,qBAAS,CAACQ,OAAO,CAACR,qBAAS,CAACS,IAAI,CAAC,EAAET,qBAAS,CAACS,IAAI,CAAC,CAAC;EACrFpC,QAAQ,EAAE2B,qBAAS,CAACK,IAAI;EACxB/B,aAAa,EAAE0B,qBAAS,CAACK,IAAI;EAC7B5B,eAAe,EAAEuB,qBAAS,CAACM,MAAM;EACjC5B,oBAAoB,EAAEsB,qBAAS,CAACM,MAAM;EACtC/B,eAAe,EAAEyB,qBAAS,CAACG,MAAM;EACjC3B,SAAS,EAAEwB,qBAAS,CAACM;AACvB,CAAC;AAEDhD,eAAe,CAACoD,YAAY,GAAG;EAC7BrC,QAAQ,EAAE,KAAK;EACfZ,WAAW,EAAE,IAAI;EACjBO,YAAY,EAAE,EAAE;EAChBE,cAAc,EAAE,EAAE;EAClBH,QAAQ,EAAE,EAAE;EACZF,YAAY,EAAE,EAAE;EAChBC,WAAW,EAAE,EAAE;EACfQ,aAAa,EAAE,KAAK;EACpBC,eAAe,EAAE,CAAC;EAClBE,eAAe,EAAE,EAAE;EACnBC,oBAAoB,EAAE,EAAE;EACxBF,SAAS,EAAE;AACb,CAAC;AAAC,eAEalB,eAAe;AAAA"}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
|
+
import _extends from "@babel/runtime/helpers/extends";
|
|
1
2
|
import _objectWithoutProperties from "@babel/runtime/helpers/objectWithoutProperties";
|
|
2
|
-
const _excluded = ["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"];
|
|
3
|
+
const _excluded = ["id", "image", "name", "url", "entity", "entityProps", "alternativePreHeader", "alternativeHeadline", "category", "modifier", "parsedPropsToDisplay", "propsToDisplay", "propsToDisplayModifiers", "gtmId", "style", "priority", "cardChildren", "gtmChildren", "displayCategory", "displayThumbnail", "displayTitle", "enableOverlay", "enableCarousel", "titleOverlayModifier", "overlayModifier", "gridModifier"];
|
|
3
4
|
import React, { Fragment } from 'react';
|
|
4
5
|
import PropTypes from 'prop-types';
|
|
5
6
|
import BlazeLink from '../BlazeLink';
|
|
@@ -20,6 +21,7 @@ const Card = _ref => {
|
|
|
20
21
|
alternativeHeadline,
|
|
21
22
|
category,
|
|
22
23
|
modifier,
|
|
24
|
+
parsedPropsToDisplay,
|
|
23
25
|
propsToDisplay,
|
|
24
26
|
propsToDisplayModifiers,
|
|
25
27
|
gtmId,
|
|
@@ -110,16 +112,23 @@ const Card = _ref => {
|
|
|
110
112
|
gtmId: gtmId,
|
|
111
113
|
href: url,
|
|
112
114
|
scroll: true
|
|
113
|
-
}, headline)), !!
|
|
115
|
+
}, headline)), !!parsedPropsToDisplay.length && /*#__PURE__*/React.createElement("div", {
|
|
114
116
|
className: getModifiers('card__details', modifiers)
|
|
115
|
-
},
|
|
117
|
+
}, parsedPropsToDisplay.map((prop, i) => {
|
|
116
118
|
if (!prop) return null;
|
|
117
119
|
const dynamicKey = `${id}${i}`;
|
|
118
120
|
const propModifier = propsToDisplayModifiers[i] || '';
|
|
119
|
-
|
|
121
|
+
const {
|
|
122
|
+
htmlAttribute
|
|
123
|
+
} = propsToDisplay[i] || {};
|
|
124
|
+
const extraProps = {};
|
|
125
|
+
if (htmlAttribute && prop.props.children) {
|
|
126
|
+
extraProps[htmlAttribute] = encodeURIComponent(prop.props.children[2]);
|
|
127
|
+
}
|
|
128
|
+
return /*#__PURE__*/React.createElement("span", _extends({
|
|
120
129
|
key: dynamicKey,
|
|
121
130
|
className: propModifier
|
|
122
|
-
}, prop);
|
|
131
|
+
}, extraProps), prop);
|
|
123
132
|
}))), !!cardChildren && /*#__PURE__*/React.createElement("div", {
|
|
124
133
|
className: "card__child-content"
|
|
125
134
|
}, renderChildren(cardChildren)))));
|
|
@@ -131,6 +140,7 @@ Card.propTypes = {
|
|
|
131
140
|
data: PropTypes.object
|
|
132
141
|
}),
|
|
133
142
|
style: PropTypes.string,
|
|
143
|
+
parsedPropsToDisplay: PropTypes.array,
|
|
134
144
|
propsToDisplay: PropTypes.array,
|
|
135
145
|
propsToDisplayModifiers: PropTypes.array,
|
|
136
146
|
url: PropTypes.string,
|
|
@@ -169,6 +179,7 @@ Card.defaultProps = {
|
|
|
169
179
|
},
|
|
170
180
|
gtmId: '',
|
|
171
181
|
style: 'portrait',
|
|
182
|
+
parsedPropsToDisplay: [],
|
|
172
183
|
propsToDisplay: [],
|
|
173
184
|
propsToDisplayModifiers: [],
|
|
174
185
|
url: '',
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"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"],"sources":["../../../src/components/Card/Card.js"],"sourcesContent":["import React, { Fragment } from 'react';\nimport PropTypes from 'prop-types';\nimport BlazeLink from '../BlazeLink';\nimport ClickWrapper from '../ClickWrapper';\nimport {\n getModifiers,\n renderChildren,\n updateChildrensParent,\n getClickWrapperOptions\n} from '../../helpers';\nimport LazyImage from '../LazyImage';\nimport { getPublishedListingUrl, useDynamicSizeKey } from './helpers';\nimport { CARD_STRING } from './constants';\n\nconst Card = ({\n id,\n image,\n name,\n url,\n entity,\n entityProps,\n alternativePreHeader,\n alternativeHeadline,\n category,\n modifier,\n propsToDisplay,\n propsToDisplayModifiers,\n gtmId,\n style,\n priority,\n cardChildren,\n gtmChildren,\n displayCategory,\n displayThumbnail,\n displayTitle,\n enableOverlay,\n enableCarousel,\n titleOverlayModifier,\n overlayModifier,\n gridModifier,\n ...otherProps\n}) => {\n updateChildrensParent(cardChildren, id, entity);\n const { imageSrc, shouldDisplayThumbnail, altText } = getImageDefinedProps({\n image,\n displayThumbnail\n });\n\n const modifiers = getInitialModifiers({ modifier, style, otherProps });\n\n const { publishedListingPage, preHeader, label, headline } = getCategoryDefinedProps({\n alternativePreHeader,\n category,\n entity,\n alternativeHeadline,\n displayCategory,\n name\n });\n\n const linkTitle = name;\n\n const dynamicSizeKey = useDynamicSizeKey(CARD_STRING, { style, gridModifier, modifier });\n\n const { shouldUseClickWrapper, wrapperProps } = getClickWrapperOptions(\n gtmChildren,\n entityProps,\n id\n );\n\n const Wrapper = shouldUseClickWrapper ? ClickWrapper : Fragment;\n\n const classNameWithModifiers = getModifiers(CARD_STRING, modifiers);\n\n const contentWrapperModifier = `${getModifiers('card__content-wrapper', modifiers)} ${\n enableOverlay && enableCarousel ? overlayModifier : ''\n }`;\n\n const titleWrapperModifier = `${getModifiers('card__title', modifiers)} ${\n enableOverlay && enableCarousel ? titleOverlayModifier : ''\n }`;\n\n return (\n <Wrapper {...wrapperProps}>\n <div className={classNameWithModifiers}>\n {shouldDisplayThumbnail && (\n <div className={getModifiers('card__image', modifiers)}>\n <BlazeLink gtmId={gtmId} href={url} className=\"card__image-link\" scroll>\n <LazyImage\n src={imageSrc}\n alt={altText}\n sizeKey={dynamicSizeKey}\n priority={priority}\n />\n </BlazeLink>\n </div>\n )}\n <div className={contentWrapperModifier}>\n <div className={getModifiers('card__content', modifiers)}>\n {displayCategory &&\n (publishedListingPage ? (\n <BlazeLink\n gtmId={gtmId}\n href={publishedListingPage}\n className=\"badge badge--label\"\n scroll>\n {preHeader.name}\n </BlazeLink>\n ) : (\n <div className=\"badge badge--label\">{label}</div>\n ))}\n {displayTitle && (\n <h2 className={titleWrapperModifier}>\n <BlazeLink title={linkTitle} gtmId={gtmId} href={url} scroll>\n {headline}\n </BlazeLink>\n </h2>\n )}\n {!!propsToDisplay.length && (\n <div className={getModifiers('card__details', modifiers)}>\n {propsToDisplay.map((prop, i) => {\n if (!prop) return null;\n const dynamicKey = `${id}${i}`;\n const propModifier = propsToDisplayModifiers[i] || '';\n\n return (\n <span key={dynamicKey} className={propModifier}>\n {prop}\n </span>\n );\n })}\n </div>\n )}\n </div>\n {!!cardChildren && (\n <div className=\"card__child-content\">{renderChildren(cardChildren)}</div>\n )}\n </div>\n </div>\n </Wrapper>\n );\n};\n\nCard.propTypes = {\n id: PropTypes.string.isRequired,\n image: PropTypes.shape({\n url: PropTypes.string,\n data: PropTypes.object\n }),\n style: PropTypes.string,\n propsToDisplay: PropTypes.array,\n propsToDisplayModifiers: PropTypes.array,\n url: PropTypes.string,\n name: PropTypes.string.isRequired,\n entity: PropTypes.string.isRequired,\n entityProps: PropTypes.object,\n gtmId: PropTypes.string,\n alternativePreHeader: PropTypes.shape({\n name: PropTypes.string\n }),\n alternativeHeadline: PropTypes.string,\n category: PropTypes.shape({\n name: PropTypes.string,\n publishedListingPage: PropTypes.shape({\n url: PropTypes.string\n })\n }),\n modifier: PropTypes.string,\n displayCategory: PropTypes.bool.isRequired,\n displayThumbnail: PropTypes.bool.isRequired,\n displayTitle: PropTypes.bool.isRequired,\n enableCarousel: PropTypes.bool,\n enableOverlay: PropTypes.bool,\n overlayModifier: PropTypes.string,\n titleOverlayModifier: PropTypes.string,\n cardChildren: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.node), PropTypes.node]),\n gtmChildren: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.node), PropTypes.node]),\n gridModifier: PropTypes.string,\n priority: PropTypes.bool\n};\n\nCard.defaultProps = {\n entityProps: {},\n image: {\n url: null,\n data: {}\n },\n gtmId: '',\n style: 'portrait',\n propsToDisplay: [],\n propsToDisplayModifiers: [],\n url: '',\n alternativePreHeader: null,\n alternativeHeadline: '',\n category: null,\n modifier: '',\n cardChildren: [],\n gtmChildren: [],\n gridModifier: '',\n priority: false,\n overlayModifier: '',\n titleOverlayModifier: '',\n enableOverlay: false,\n enableCarousel: false\n};\n\nconst getCategoryDefinedProps = ({\n alternativePreHeader,\n category,\n entity,\n alternativeHeadline,\n displayCategory,\n name\n}) => {\n const hasAlternativePreHeader = alternativePreHeader && alternativePreHeader.name;\n const preHeader =\n alternativeHeadline && hasAlternativePreHeader ? alternativePreHeader : category;\n const publishedListingPage = getPublishedListingUrl(preHeader);\n const label = preHeader ? preHeader.name : entity;\n const headline =\n !displayCategory || !hasAlternativePreHeader ? name : alternativeHeadline || name;\n return { publishedListingPage, preHeader, label, headline };\n};\n\nconst getImageDefinedProps = ({ image, displayThumbnail }) => {\n const { url: imageSrc, data } = image || {};\n const shouldDisplayThumbnail = displayThumbnail && imageSrc;\n const altText = (data && data.altText) || '';\n return { imageSrc, shouldDisplayThumbnail, altText };\n};\n\nconst getInitialModifiers = ({ modifier, style, otherProps }) => {\n const modifiers = [modifier, style];\n const { sponsored, featured } = otherProps;\n if (sponsored) modifiers.push('sponsored');\n if (featured) modifiers.push('featured');\n\n return modifiers;\n};\n\nexport default Card;\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Card.js","names":["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","parsedPropsToDisplay","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","htmlAttribute","extraProps","props","children","encodeURIComponent","propTypes","string","isRequired","shape","data","object","array","bool","oneOfType","arrayOf","node","defaultProps","hasAlternativePreHeader","sponsored","featured","push"],"sources":["../../../src/components/Card/Card.js"],"sourcesContent":["import React, { Fragment } from 'react';\nimport PropTypes from 'prop-types';\nimport BlazeLink from '../BlazeLink';\nimport ClickWrapper from '../ClickWrapper';\nimport {\n getModifiers,\n renderChildren,\n updateChildrensParent,\n getClickWrapperOptions\n} from '../../helpers';\nimport LazyImage from '../LazyImage';\nimport { getPublishedListingUrl, useDynamicSizeKey } from './helpers';\nimport { CARD_STRING } from './constants';\n\nconst Card = ({\n id,\n image,\n name,\n url,\n entity,\n entityProps,\n alternativePreHeader,\n alternativeHeadline,\n category,\n modifier,\n 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 ...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 {!!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 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 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 parsedPropsToDisplay: [],\n propsToDisplay: [],\n propsToDisplayModifiers: [],\n url: '',\n alternativePreHeader: null,\n alternativeHeadline: '',\n category: null,\n modifier: '',\n cardChildren: [],\n gtmChildren: [],\n gridModifier: '',\n priority: false,\n overlayModifier: '',\n titleOverlayModifier: '',\n enableOverlay: false,\n enableCarousel: false\n};\n\nconst getCategoryDefinedProps = ({\n alternativePreHeader,\n category,\n entity,\n alternativeHeadline,\n displayCategory,\n name\n}) => {\n const hasAlternativePreHeader = alternativePreHeader && alternativePreHeader.name;\n const preHeader =\n alternativeHeadline && hasAlternativePreHeader ? alternativePreHeader : category;\n const publishedListingPage = getPublishedListingUrl(preHeader);\n const label = preHeader ? preHeader.name : entity;\n const headline =\n !displayCategory || !hasAlternativePreHeader ? name : alternativeHeadline || name;\n return { publishedListingPage, preHeader, label, headline };\n};\n\nconst getImageDefinedProps = ({ image, displayThumbnail }) => {\n const { url: imageSrc, data } = image || {};\n const shouldDisplayThumbnail = displayThumbnail && imageSrc;\n const altText = (data && data.altText) || '';\n return { imageSrc, shouldDisplayThumbnail, altText };\n};\n\nconst getInitialModifiers = ({ modifier, style, otherProps }) => {\n const modifiers = [modifier, style];\n const { sponsored, featured } = otherProps;\n if (sponsored) modifiers.push('sponsored');\n if (featured) modifiers.push('featured');\n\n return modifiers;\n};\n\nexport default Card;\n"],"mappings":"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"}
|
|
@@ -76,7 +76,8 @@ const CardContainer = _ref => {
|
|
|
76
76
|
id: id,
|
|
77
77
|
enableCarousel: enableCarousel,
|
|
78
78
|
entity: entity,
|
|
79
|
-
propsToDisplay:
|
|
79
|
+
propsToDisplay: propsToDisplay,
|
|
80
|
+
parsedPropsToDisplay: extraProps,
|
|
80
81
|
propsToDisplayModifiers: propsToDisplayModifiers,
|
|
81
82
|
modifier: modifier,
|
|
82
83
|
style: style,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CardContainer.js","names":["React","useContext","PropTypes","MainContext","withTitle","Banner","Wrapper","CarouselWrapper","Card","getDynamicGridClasses","getEntitiesWithBanner","parsePropsToDisplay","getPropsToDisplayModifiers","CardContainer","cardData","gridModifier","style","displayCategory","displayThumbnail","displayTitle","modifier","entity","propsToDisplay","gtmChildren","cardChildren","name","designConfig","itemsPerRow","enableCarousel","bannerModifier","priorityLimit","enableAutoScroll","enableOverlay","autoScrollTimer","overlayModifier","titleOverlayModifier","cardProps","entities","itemId","propsToDisplayModifiers","dynamicWrapperSizes","cardBannerIndex","CardWrapper","map","index","baseAdunit","id","entityProps","extraProps","dynamicKey","join","priority","propTypes","array","isRequired","string","oneOfType","arrayOf","node","bool","object","number","defaultProps"],"sources":["../../../src/components/Card/CardContainer.js"],"sourcesContent":["import React, { useContext } from 'react';\nimport PropTypes from 'prop-types';\nimport { MainContext } from '@blaze-cms/nextjs-components';\nimport { withTitle } from '../../HOC';\nimport Banner from '../Banner';\nimport Wrapper from '../Wrapper';\nimport CarouselWrapper from '../CarouselWrapper';\nimport Card from './Card';\nimport { getDynamicGridClasses } from './helpers';\nimport { getEntitiesWithBanner, parsePropsToDisplay } from '../../helpers';\nimport { getPropsToDisplayModifiers } from '../../utils';\n\nconst CardContainer = ({\n cardData,\n gridModifier,\n style,\n displayCategory,\n displayThumbnail,\n displayTitle,\n modifier,\n entity,\n propsToDisplay,\n gtmChildren,\n cardChildren,\n name,\n designConfig,\n itemsPerRow,\n enableCarousel,\n bannerModifier,\n priorityLimit,\n enableAutoScroll,\n enableOverlay,\n autoScrollTimer,\n overlayModifier,\n titleOverlayModifier,\n ...cardProps\n}) => {\n const entities = getEntitiesWithBanner(cardData, cardProps);\n const { itemId } = useContext(MainContext);\n const propsToDisplayModifiers = getPropsToDisplayModifiers(propsToDisplay);\n const dynamicWrapperSizes = enableCarousel\n ? ''\n : getDynamicGridClasses('grid', itemsPerRow, designConfig);\n let cardBannerIndex = 0;\n const CardWrapper = enableCarousel ? CarouselWrapper : Wrapper;\n\n return (\n <CardWrapper\n className={dynamicWrapperSizes}\n modifiers={gridModifier}\n itemsPerRow={itemsPerRow}\n bannerModifier={bannerModifier}\n enableAutoScroll={enableAutoScroll}\n autoScrollTimer={autoScrollTimer}>\n {entities.map(({ baseAdunit, id, ...entityProps }, index) => {\n const extraProps = parsePropsToDisplay(entityProps, propsToDisplay);\n const dynamicKey = [itemId, index].join('-');\n if (baseAdunit) cardBannerIndex += 1;\n\n const priority = priorityLimit > 0 && index + 1 <= priorityLimit;\n\n return baseAdunit ? (\n <Banner\n key={dynamicKey}\n entity={entity}\n baseAdunit={baseAdunit}\n {...entityProps}\n modifier={modifier}\n cardBannerIndex={cardBannerIndex}\n />\n ) : (\n <Card\n key={id}\n id={id}\n enableCarousel={enableCarousel}\n entity={entity}\n propsToDisplay={extraProps}\n propsToDisplayModifiers={propsToDisplayModifiers}\n modifier={modifier}\n style={style}\n cardChildren={cardChildren}\n gtmChildren={gtmChildren}\n gtmId={name}\n gridModifier={gridModifier}\n entityProps={entityProps}\n displayCategory={displayCategory}\n displayThumbnail={displayThumbnail}\n displayTitle={displayTitle}\n priority={priority}\n enableOverlay={enableOverlay}\n overlayModifier={overlayModifier}\n titleOverlayModifier={titleOverlayModifier}\n {...entityProps}\n />\n );\n })}\n </CardWrapper>\n );\n};\n\nCardContainer.propTypes = {\n cardData: PropTypes.array.isRequired,\n name: PropTypes.string,\n entity: PropTypes.string.isRequired,\n gridModifier: PropTypes.string,\n gtmChildren: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.node), PropTypes.node]),\n cardChildren: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.node), PropTypes.node]),\n propsToDisplay: PropTypes.array,\n displayCategory: PropTypes.bool,\n displayThumbnail: PropTypes.bool,\n displayTitle: PropTypes.bool,\n modifier: PropTypes.string,\n style: PropTypes.string,\n designConfig: PropTypes.object,\n itemsPerRow: PropTypes.number,\n enableCarousel: PropTypes.bool,\n bannerModifier: PropTypes.string,\n priorityLimit: PropTypes.number,\n enableAutoScroll: PropTypes.bool,\n enableOverlay: PropTypes.bool,\n overlayModifier: PropTypes.string,\n titleOverlayModifier: PropTypes.string,\n autoScrollTimer: PropTypes.number\n};\n\nCardContainer.defaultProps = {\n gtmChildren: [],\n cardChildren: [],\n name: '',\n gridModifier: '',\n propsToDisplay: [],\n displayCategory: true,\n displayThumbnail: true,\n displayTitle: true,\n modifier: '',\n style: 'portrait',\n designConfig: {},\n itemsPerRow: 1,\n enableCarousel: false,\n bannerModifier: '',\n priorityLimit: 0,\n enableAutoScroll: false,\n enableOverlay: false,\n autoScrollTimer: 0,\n overlayModifier: '',\n titleOverlayModifier: ''\n};\n\nexport default withTitle(CardContainer);\n"],"mappings":";;;;AAAA,OAAOA,KAAK,IAAIC,UAAU,QAAQ,OAAO;AACzC,OAAOC,SAAS,MAAM,YAAY;AAClC,SAASC,WAAW,QAAQ,8BAA8B;AAC1D,SAASC,SAAS,QAAQ,WAAW;AACrC,OAAOC,MAAM,MAAM,WAAW;AAC9B,OAAOC,OAAO,MAAM,YAAY;AAChC,OAAOC,eAAe,MAAM,oBAAoB;AAChD,OAAOC,IAAI,MAAM,QAAQ;AACzB,SAASC,qBAAqB,QAAQ,WAAW;AACjD,SAASC,qBAAqB,EAAEC,mBAAmB,QAAQ,eAAe;AAC1E,SAASC,0BAA0B,QAAQ,aAAa;AAExD,MAAMC,aAAa,GAAG,QAwBhB;EAAA,IAxBiB;MACrBC,QAAQ;MACRC,YAAY;MACZC,KAAK;MACLC,eAAe;MACfC,gBAAgB;MAChBC,YAAY;MACZC,QAAQ;MACRC,MAAM;MACNC,cAAc;MACdC,WAAW;MACXC,YAAY;MACZC,IAAI;MACJC,YAAY;MACZC,WAAW;MACXC,cAAc;MACdC,cAAc;MACdC,aAAa;MACbC,gBAAgB;MAChBC,aAAa;MACbC,eAAe;MACfC,eAAe;MACfC;IAEF,CAAC;IADIC,SAAS;EAEZ,MAAMC,QAAQ,GAAG3B,qBAAqB,CAACI,QAAQ,EAAEsB,SAAS,CAAC;EAC3D,MAAM;IAAEE;EAAO,CAAC,GAAGrC,UAAU,CAACE,WAAW,CAAC;EAC1C,MAAMoC,uBAAuB,GAAG3B,0BAA0B,CAACU,cAAc,CAAC;EAC1E,MAAMkB,mBAAmB,GAAGZ,cAAc,GACtC,EAAE,GACFnB,qBAAqB,CAAC,MAAM,EAAEkB,WAAW,EAAED,YAAY,CAAC;EAC5D,IAAIe,eAAe,GAAG,CAAC;EACvB,MAAMC,WAAW,GAAGd,cAAc,GAAGrB,eAAe,GAAGD,OAAO;EAE9D,oBACE,oBAAC,WAAW;IACV,SAAS,EAAEkC,mBAAoB;IAC/B,SAAS,EAAEzB,YAAa;IACxB,WAAW,EAAEY,WAAY;IACzB,cAAc,EAAEE,cAAe;IAC/B,gBAAgB,EAAEE,gBAAiB;IACnC,eAAe,EAAEE;EAAgB,GAChCI,QAAQ,CAACM,GAAG,CAAC,QAAqCC,KAAK,KAAK;IAAA,IAA9C;QAAEC,UAAU;QAAEC;MAAmB,CAAC;MAAbC,WAAW;IAC7C,MAAMC,UAAU,GAAGrC,mBAAmB,CAACoC,WAAW,EAAEzB,cAAc,CAAC;IACnE,MAAM2B,UAAU,GAAG,CAACX,MAAM,EAAEM,KAAK,CAAC,CAACM,IAAI,CAAC,GAAG,CAAC;IAC5C,IAAIL,UAAU,EAAEJ,eAAe,IAAI,CAAC;IAEpC,MAAMU,QAAQ,GAAGrB,aAAa,GAAG,CAAC,IAAIc,KAAK,GAAG,CAAC,IAAId,aAAa;IAEhE,OAAOe,UAAU,gBACf,oBAAC,MAAM;MACL,GAAG,EAAEI,UAAW;MAChB,MAAM,EAAE5B,MAAO;MACf,UAAU,EAAEwB;IAAW,GACnBE,WAAW;MACf,QAAQ,EAAE3B,QAAS;MACnB,eAAe,EAAEqB;IAAgB,GACjC,gBAEF,oBAAC,IAAI;MACH,GAAG,EAAEK,EAAG;MACR,EAAE,EAAEA,EAAG;MACP,cAAc,EAAElB,cAAe;MAC/B,MAAM,EAAEP,MAAO;MACf,cAAc,
|
|
1
|
+
{"version":3,"file":"CardContainer.js","names":["React","useContext","PropTypes","MainContext","withTitle","Banner","Wrapper","CarouselWrapper","Card","getDynamicGridClasses","getEntitiesWithBanner","parsePropsToDisplay","getPropsToDisplayModifiers","CardContainer","cardData","gridModifier","style","displayCategory","displayThumbnail","displayTitle","modifier","entity","propsToDisplay","gtmChildren","cardChildren","name","designConfig","itemsPerRow","enableCarousel","bannerModifier","priorityLimit","enableAutoScroll","enableOverlay","autoScrollTimer","overlayModifier","titleOverlayModifier","cardProps","entities","itemId","propsToDisplayModifiers","dynamicWrapperSizes","cardBannerIndex","CardWrapper","map","index","baseAdunit","id","entityProps","extraProps","dynamicKey","join","priority","propTypes","array","isRequired","string","oneOfType","arrayOf","node","bool","object","number","defaultProps"],"sources":["../../../src/components/Card/CardContainer.js"],"sourcesContent":["import React, { useContext } from 'react';\nimport PropTypes from 'prop-types';\nimport { MainContext } from '@blaze-cms/nextjs-components';\nimport { withTitle } from '../../HOC';\nimport Banner from '../Banner';\nimport Wrapper from '../Wrapper';\nimport CarouselWrapper from '../CarouselWrapper';\nimport Card from './Card';\nimport { getDynamicGridClasses } from './helpers';\nimport { getEntitiesWithBanner, parsePropsToDisplay } from '../../helpers';\nimport { getPropsToDisplayModifiers } from '../../utils';\n\nconst CardContainer = ({\n cardData,\n gridModifier,\n style,\n displayCategory,\n displayThumbnail,\n displayTitle,\n modifier,\n entity,\n propsToDisplay,\n gtmChildren,\n cardChildren,\n name,\n designConfig,\n itemsPerRow,\n enableCarousel,\n bannerModifier,\n priorityLimit,\n enableAutoScroll,\n enableOverlay,\n autoScrollTimer,\n overlayModifier,\n titleOverlayModifier,\n ...cardProps\n}) => {\n const entities = getEntitiesWithBanner(cardData, cardProps);\n const { itemId } = useContext(MainContext);\n const propsToDisplayModifiers = getPropsToDisplayModifiers(propsToDisplay);\n const dynamicWrapperSizes = enableCarousel\n ? ''\n : getDynamicGridClasses('grid', itemsPerRow, designConfig);\n let cardBannerIndex = 0;\n const CardWrapper = enableCarousel ? CarouselWrapper : Wrapper;\n\n return (\n <CardWrapper\n className={dynamicWrapperSizes}\n modifiers={gridModifier}\n itemsPerRow={itemsPerRow}\n bannerModifier={bannerModifier}\n enableAutoScroll={enableAutoScroll}\n autoScrollTimer={autoScrollTimer}>\n {entities.map(({ baseAdunit, id, ...entityProps }, index) => {\n const extraProps = parsePropsToDisplay(entityProps, propsToDisplay);\n const dynamicKey = [itemId, index].join('-');\n if (baseAdunit) cardBannerIndex += 1;\n\n const priority = priorityLimit > 0 && index + 1 <= priorityLimit;\n\n return baseAdunit ? (\n <Banner\n key={dynamicKey}\n entity={entity}\n baseAdunit={baseAdunit}\n {...entityProps}\n modifier={modifier}\n cardBannerIndex={cardBannerIndex}\n />\n ) : (\n <Card\n key={id}\n id={id}\n enableCarousel={enableCarousel}\n entity={entity}\n propsToDisplay={propsToDisplay}\n parsedPropsToDisplay={extraProps}\n propsToDisplayModifiers={propsToDisplayModifiers}\n modifier={modifier}\n style={style}\n cardChildren={cardChildren}\n gtmChildren={gtmChildren}\n gtmId={name}\n gridModifier={gridModifier}\n entityProps={entityProps}\n displayCategory={displayCategory}\n displayThumbnail={displayThumbnail}\n displayTitle={displayTitle}\n priority={priority}\n enableOverlay={enableOverlay}\n overlayModifier={overlayModifier}\n titleOverlayModifier={titleOverlayModifier}\n {...entityProps}\n />\n );\n })}\n </CardWrapper>\n );\n};\n\nCardContainer.propTypes = {\n cardData: PropTypes.array.isRequired,\n name: PropTypes.string,\n entity: PropTypes.string.isRequired,\n gridModifier: PropTypes.string,\n gtmChildren: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.node), PropTypes.node]),\n cardChildren: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.node), PropTypes.node]),\n propsToDisplay: PropTypes.array,\n displayCategory: PropTypes.bool,\n displayThumbnail: PropTypes.bool,\n displayTitle: PropTypes.bool,\n modifier: PropTypes.string,\n style: PropTypes.string,\n designConfig: PropTypes.object,\n itemsPerRow: PropTypes.number,\n enableCarousel: PropTypes.bool,\n bannerModifier: PropTypes.string,\n priorityLimit: PropTypes.number,\n enableAutoScroll: PropTypes.bool,\n enableOverlay: PropTypes.bool,\n overlayModifier: PropTypes.string,\n titleOverlayModifier: PropTypes.string,\n autoScrollTimer: PropTypes.number\n};\n\nCardContainer.defaultProps = {\n gtmChildren: [],\n cardChildren: [],\n name: '',\n gridModifier: '',\n propsToDisplay: [],\n displayCategory: true,\n displayThumbnail: true,\n displayTitle: true,\n modifier: '',\n style: 'portrait',\n designConfig: {},\n itemsPerRow: 1,\n enableCarousel: false,\n bannerModifier: '',\n priorityLimit: 0,\n enableAutoScroll: false,\n enableOverlay: false,\n autoScrollTimer: 0,\n overlayModifier: '',\n titleOverlayModifier: ''\n};\n\nexport default withTitle(CardContainer);\n"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CardsRender.js","names":["React","Fragment","PropTypes","CardsRenderWrapper","BANNER","Wrapper","splitChildren","appendImages","getPropsToDisplayModifiers","ListPagination","LOAD_MORE","useGetImages","CardsRender","orderedListData","gridModifier","children","entity","banner","omitWrappers","propsToDisplay","paginationType","parent","hasBanner","gtmData","itemsToDisplay","props","name","dataForGtm","regularChildren","gtmChildren","bannerProps","type","propsToDisplayModifiers","imageIds","map","imageId","filter","Boolean","data","imagesData","loading","imagesLoading","updatedListWithImages","WrapperToUse","propTypes","string","isRequired","object","array","bool","oneOfType","defaultProps"],"sources":["../../../../../src/components/List/components/Cards/CardsRender.js"],"sourcesContent":["import React, { Fragment } from 'react';\nimport PropTypes from 'prop-types';\nimport CardsRenderWrapper from './CardsRenderWrapper';\nimport { BANNER } from '../../constants';\nimport Wrapper from '../../../Wrapper';\nimport { splitChildren, appendImages } from '../../../../helpers';\nimport { getPropsToDisplayModifiers } from '../../../../utils';\nimport ListPagination from '../Pagination';\nimport { LOAD_MORE } from '../../../../constants';\nimport { useGetImages } from '../../../../hooks';\n\nconst CardsRender = ({\n orderedListData,\n gridModifier,\n children,\n entity,\n banner,\n omitWrappers,\n propsToDisplay,\n paginationType,\n parent,\n hasBanner,\n gtmData,\n itemsToDisplay,\n ...props\n}) => {\n const { name } = props;\n const dataForGtm = gtmData || orderedListData;\n\n const { regularChildren, gtmChildren } = splitChildren(children, dataForGtm, entity, {\n name\n });\n\n const bannerProps = banner\n ? { parent, hasBanner, entity, propsToDisplay, ...banner, type: BANNER }\n : null;\n const propsToDisplayModifiers = getPropsToDisplayModifiers(propsToDisplay);\n const imageIds = itemsToDisplay.map(({ imageId }) => imageId).filter(Boolean);\n const { data: imagesData, loading: imagesLoading } = useGetImages(imageIds, true);\n if (imagesLoading) return '';\n const updatedListWithImages = appendImages(imagesData, orderedListData, itemsToDisplay);\n\n const WrapperToUse = omitWrappers ? Fragment : Wrapper;\n\n return (\n <>\n <WrapperToUse className=\"list list--compact\">\n <CardsRenderWrapper\n orderedListData={updatedListWithImages}\n listProps={props}\n bannerProps={bannerProps}\n cardChildren={regularChildren}\n gtmChildren={gtmChildren}\n omitWrappers={omitWrappers}\n propsToDisplay={propsToDisplay}\n propsToDisplayModifiers={propsToDisplayModifiers}\n gridModifier={gridModifier}\n entity={entity}\n parent={parent}\n {...props}\n />\n </WrapperToUse>\n\n {paginationType === LOAD_MORE && (\n <ListPagination paginationType={paginationType} parent={parent} {...props} />\n )}\n </>\n );\n};\n\nCardsRender.propTypes = {\n name: PropTypes.string.isRequired,\n parent: PropTypes.object.isRequired,\n orderedListData: PropTypes.array.isRequired,\n propsToDisplay: PropTypes.array.isRequired,\n paginationType: PropTypes.string.isRequired,\n hasBanner: PropTypes.bool,\n banner: PropTypes.object,\n omitWrappers: PropTypes.bool,\n gridModifier: PropTypes.string,\n entity: PropTypes.string.isRequired,\n children: PropTypes.oneOfType([PropTypes.array, PropTypes.object]),\n gtmData: PropTypes.array,\n itemsToDisplay: PropTypes.array\n};\n\nCardsRender.defaultProps = {\n gridModifier: '',\n children: null,\n hasBanner: false,\n banner: null,\n omitWrappers: false,\n gtmData: null,\n itemsToDisplay: []\n};\n\nexport default CardsRender;\n"],"mappings":";;;;;;AAAA,OAAOA,KAAK,IAAIC,QAAQ,QAAQ,OAAO;AACvC,OAAOC,SAAS,MAAM,YAAY;AAClC,OAAOC,kBAAkB,MAAM,sBAAsB;AACrD,SAASC,MAAM,QAAQ,iBAAiB;AACxC,OAAOC,OAAO,MAAM,kBAAkB;AACtC,SAASC,aAAa,EAAEC,YAAY,QAAQ,qBAAqB;AACjE,SAASC,0BAA0B,QAAQ,mBAAmB;AAC9D,OAAOC,cAAc,MAAM,eAAe;AAC1C,SAASC,SAAS,QAAQ,uBAAuB;AACjD,SAASC,YAAY,QAAQ,mBAAmB;AAEhD,MAAMC,WAAW,GAAG,QAcd;EAAA,IAde;MACnBC,eAAe;MACfC,YAAY;MACZC,QAAQ;MACRC,MAAM;MACNC,MAAM;MACNC,YAAY;MACZC,cAAc;MACdC,cAAc;MACdC,MAAM;MACNC,SAAS;MACTC,OAAO;MACPC;IAEF,CAAC;IADIC,KAAK;EAER,MAAM;IAAEC;EAAK,CAAC,GAAGD,KAAK;EACtB,MAAME,UAAU,GAAGJ,OAAO,IAAIV,eAAe;EAE7C,MAAM;IAAEe,eAAe;IAAEC;EAAY,CAAC,GAAGvB,aAAa,CAACS,QAAQ,EAAEY,UAAU,EAAEX,MAAM,EAAE;IACnFU;EACF,CAAC,CAAC;EAEF,MAAMI,WAAW,GAAGb,MAAM;IACpBI,MAAM;IAAEC,SAAS;IAAEN,MAAM;IAAEG;EAAc,GAAKF,MAAM;IAAEc,IAAI,EAAE3B;EAAM,KACpE,IAAI;
|
|
1
|
+
{"version":3,"file":"CardsRender.js","names":["React","Fragment","PropTypes","CardsRenderWrapper","BANNER","Wrapper","splitChildren","appendImages","getPropsToDisplayModifiers","ListPagination","LOAD_MORE","useGetImages","CardsRender","orderedListData","gridModifier","children","entity","banner","omitWrappers","propsToDisplay","paginationType","parent","hasBanner","gtmData","itemsToDisplay","props","name","dataForGtm","regularChildren","gtmChildren","bannerProps","type","propsToDisplayModifiers","imageIds","map","imageId","filter","Boolean","data","imagesData","loading","imagesLoading","updatedListWithImages","WrapperToUse","propTypes","string","isRequired","object","array","bool","oneOfType","defaultProps"],"sources":["../../../../../src/components/List/components/Cards/CardsRender.js"],"sourcesContent":["import React, { Fragment } from 'react';\nimport PropTypes from 'prop-types';\nimport CardsRenderWrapper from './CardsRenderWrapper';\nimport { BANNER } from '../../constants';\nimport Wrapper from '../../../Wrapper';\nimport { splitChildren, appendImages } from '../../../../helpers';\nimport { getPropsToDisplayModifiers } from '../../../../utils';\nimport ListPagination from '../Pagination';\nimport { LOAD_MORE } from '../../../../constants';\nimport { useGetImages } from '../../../../hooks';\n\nconst CardsRender = ({\n orderedListData,\n gridModifier,\n children,\n entity,\n banner,\n omitWrappers,\n propsToDisplay,\n paginationType,\n parent,\n hasBanner,\n gtmData,\n itemsToDisplay,\n ...props\n}) => {\n const { name } = props;\n const dataForGtm = gtmData || orderedListData;\n\n const { regularChildren, gtmChildren } = splitChildren(children, dataForGtm, entity, {\n name\n });\n\n const bannerProps = banner\n ? { parent, hasBanner, entity, propsToDisplay, ...banner, type: BANNER }\n : null;\n\n const propsToDisplayModifiers = getPropsToDisplayModifiers(propsToDisplay);\n const imageIds = itemsToDisplay.map(({ imageId }) => imageId).filter(Boolean);\n const { data: imagesData, loading: imagesLoading } = useGetImages(imageIds, true);\n if (imagesLoading) return '';\n const updatedListWithImages = appendImages(imagesData, orderedListData, itemsToDisplay);\n\n const WrapperToUse = omitWrappers ? Fragment : Wrapper;\n\n return (\n <>\n <WrapperToUse className=\"list list--compact\">\n <CardsRenderWrapper\n orderedListData={updatedListWithImages}\n listProps={props}\n bannerProps={bannerProps}\n cardChildren={regularChildren}\n gtmChildren={gtmChildren}\n omitWrappers={omitWrappers}\n propsToDisplay={propsToDisplay}\n propsToDisplayModifiers={propsToDisplayModifiers}\n gridModifier={gridModifier}\n entity={entity}\n parent={parent}\n {...props}\n />\n </WrapperToUse>\n\n {paginationType === LOAD_MORE && (\n <ListPagination paginationType={paginationType} parent={parent} {...props} />\n )}\n </>\n );\n};\n\nCardsRender.propTypes = {\n name: PropTypes.string.isRequired,\n parent: PropTypes.object.isRequired,\n orderedListData: PropTypes.array.isRequired,\n propsToDisplay: PropTypes.array.isRequired,\n paginationType: PropTypes.string.isRequired,\n hasBanner: PropTypes.bool,\n banner: PropTypes.object,\n omitWrappers: PropTypes.bool,\n gridModifier: PropTypes.string,\n entity: PropTypes.string.isRequired,\n children: PropTypes.oneOfType([PropTypes.array, PropTypes.object]),\n gtmData: PropTypes.array,\n itemsToDisplay: PropTypes.array\n};\n\nCardsRender.defaultProps = {\n gridModifier: '',\n children: null,\n hasBanner: false,\n banner: null,\n omitWrappers: false,\n gtmData: null,\n itemsToDisplay: []\n};\n\nexport default CardsRender;\n"],"mappings":"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"}
|
|
@@ -60,7 +60,8 @@ const CardsRenderItem = ({
|
|
|
60
60
|
id: id,
|
|
61
61
|
entity: entity,
|
|
62
62
|
gridModifier: gridModifier,
|
|
63
|
-
propsToDisplay:
|
|
63
|
+
propsToDisplay: propsToDisplay,
|
|
64
|
+
parsedPropsToDisplay: parsedPropsToDisplay,
|
|
64
65
|
propsToDisplayModifiers: propsToDisplayModifiers,
|
|
65
66
|
modifier: modifier,
|
|
66
67
|
style: style,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CardsRenderItem.js","names":["React","PropTypes","Waypoint","Card","shouldRenderWaypoint","renderChildren","parsePropsToDisplay","checkIfShouldRenderGtm","Banner","CardsRenderItem","cardProps","listProps","bannerProps","index","entity","currentListLength","cardChildren","gtmChildren","modifier","gridModifier","propsToDisplayModifiers","propsToDisplay","shouldRenderBanner","bannerIndex","priority","enableOverlay","autoScrollTimer","arrowSize","overlayModifier","titleOverlayModifier","initialOffset","isInfinite","style","name","id","triggerInfiniteScroll","displayCount","displayCategory","displayThumbnail","displayTitle","listTotal","itemsPerPage","currentItemIndex","renderWaypoint","shouldRenderGtm","parsedPropsToDisplay","propTypes","object","isRequired","number","array","bool","string","oneOfType","arrayOf","node","defaultProps"],"sources":["../../../../../src/components/List/components/Cards/CardsRenderItem.js"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport { Waypoint } from 'react-waypoint';\nimport Card from '../../../Card/Card';\nimport { shouldRenderWaypoint, renderChildren, parsePropsToDisplay } from '../../../../helpers';\nimport { checkIfShouldRenderGtm } from '../helpers';\nimport Banner from '../../../Banner';\n\nconst CardsRenderItem = ({\n cardProps,\n listProps,\n bannerProps,\n index,\n entity,\n currentListLength,\n cardChildren,\n gtmChildren,\n modifier,\n gridModifier,\n propsToDisplayModifiers,\n propsToDisplay,\n shouldRenderBanner,\n bannerIndex,\n priority,\n enableOverlay,\n autoScrollTimer,\n arrowSize,\n overlayModifier,\n titleOverlayModifier\n}) => {\n const {\n initialOffset,\n isInfinite,\n style,\n name,\n id,\n triggerInfiniteScroll,\n displayCount,\n displayCategory = true,\n displayThumbnail = true,\n displayTitle = true,\n listTotal,\n itemsPerPage\n } = listProps;\n\n const currentItemIndex = initialOffset + index;\n const renderWaypoint =\n isInfinite && shouldRenderWaypoint(index, currentListLength, currentItemIndex, listTotal);\n const shouldRenderGtm =\n gtmChildren && checkIfShouldRenderGtm(itemsPerPage, currentListLength, index);\n\n const parsedPropsToDisplay = parsePropsToDisplay(cardProps, propsToDisplay);\n\n return (\n <>\n {shouldRenderGtm && renderChildren(gtmChildren)}\n {displayCount && (\n <div className=\"heading heading--section heading--section--count\">\n <span className=\"section-number\">{currentItemIndex + 1}</span>\n <span className=\"section-total\">/{listTotal}</span>\n </div>\n )}\n <div className=\"list__item list__item--compact\">\n {renderWaypoint && <Waypoint onEnter={triggerInfiniteScroll} />}\n <Card\n id={id}\n entity={entity}\n gridModifier={gridModifier}\n propsToDisplay={parsedPropsToDisplay}\n propsToDisplayModifiers={propsToDisplayModifiers}\n modifier={modifier}\n style={style}\n cardChildren={cardChildren}\n displayCategory={displayCategory}\n displayThumbnail={displayThumbnail}\n displayTitle={displayTitle}\n cardProps={cardProps}\n gtmId={name}\n gtmChildren={gtmChildren}\n priority={priority}\n arrowSize={arrowSize}\n enableOverlay={enableOverlay}\n overlayModifier={overlayModifier}\n titleOverlayModifier={titleOverlayModifier}\n {...cardProps}\n />\n </div>\n {shouldRenderBanner && <Banner {...bannerProps} cardBannerIndex={bannerIndex} />}\n </>\n );\n};\n\nCardsRenderItem.propTypes = {\n cardProps: PropTypes.object.isRequired,\n listProps: PropTypes.object.isRequired,\n index: PropTypes.number.isRequired,\n currentListLength: PropTypes.number.isRequired,\n propsToDisplayModifiers: PropTypes.array.isRequired,\n shouldRenderBanner: PropTypes.bool.isRequired,\n bannerIndex: PropTypes.number.isRequired,\n bannerProps: PropTypes.object,\n gridModifier: PropTypes.string,\n propsToDisplay: PropTypes.array,\n entity: PropTypes.string.isRequired,\n modifier: PropTypes.string,\n cardChildren: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.node), PropTypes.node]),\n gtmChildren: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.node), PropTypes.node]),\n priority: PropTypes.bool,\n enableOverlay: PropTypes.bool,\n overlayModifier: PropTypes.string,\n titleOverlayModifier: PropTypes.string,\n autoScrollTimer: PropTypes.number,\n arrowSize: PropTypes.string\n};\n\nCardsRenderItem.defaultProps = {\n priority: false,\n bannerProps: null,\n gridModifier: '',\n propsToDisplay: [],\n modifier: '',\n cardChildren: [],\n gtmChildren: [],\n enableOverlay: false,\n autoScrollTimer: 0,\n overlayModifier: '',\n titleOverlayModifier: '',\n arrowSize: ''\n};\n\nexport default CardsRenderItem;\n"],"mappings":";AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,OAAOC,SAAS,MAAM,YAAY;AAClC,SAASC,QAAQ,QAAQ,gBAAgB;AACzC,OAAOC,IAAI,MAAM,oBAAoB;AACrC,SAASC,oBAAoB,EAAEC,cAAc,EAAEC,mBAAmB,QAAQ,qBAAqB;AAC/F,SAASC,sBAAsB,QAAQ,YAAY;AACnD,OAAOC,MAAM,MAAM,iBAAiB;AAEpC,MAAMC,eAAe,GAAG,CAAC;EACvBC,SAAS;EACTC,SAAS;EACTC,WAAW;EACXC,KAAK;EACLC,MAAM;EACNC,iBAAiB;EACjBC,YAAY;EACZC,WAAW;EACXC,QAAQ;EACRC,YAAY;EACZC,uBAAuB;EACvBC,cAAc;EACdC,kBAAkB;EAClBC,WAAW;EACXC,QAAQ;EACRC,aAAa;EACbC,eAAe;EACfC,SAAS;EACTC,eAAe;EACfC;AACF,CAAC,KAAK;EACJ,MAAM;IACJC,aAAa;IACbC,UAAU;IACVC,KAAK;IACLC,IAAI;IACJC,EAAE;IACFC,qBAAqB;IACrBC,YAAY;IACZC,eAAe,GAAG,IAAI;IACtBC,gBAAgB,GAAG,IAAI;IACvBC,YAAY,GAAG,IAAI;IACnBC,SAAS;IACTC;EACF,CAAC,GAAG9B,SAAS;EAEb,MAAM+B,gBAAgB,GAAGZ,aAAa,GAAGjB,KAAK;EAC9C,MAAM8B,cAAc,GAClBZ,UAAU,IAAI3B,oBAAoB,CAACS,KAAK,EAAEE,iBAAiB,EAAE2B,gBAAgB,EAAEF,SAAS,CAAC;EAC3F,MAAMI,eAAe,GACnB3B,WAAW,IAAIV,sBAAsB,CAACkC,YAAY,EAAE1B,iBAAiB,EAAEF,KAAK,CAAC;EAE/E,MAAMgC,oBAAoB,GAAGvC,mBAAmB,CAACI,SAAS,EAAEW,cAAc,CAAC;EAE3E,oBACE,0CACGuB,eAAe,IAAIvC,cAAc,CAACY,WAAW,CAAC,EAC9CmB,YAAY,iBACX;IAAK,SAAS,EAAC;EAAkD,gBAC/D;IAAM,SAAS,EAAC;EAAgB,GAAEM,gBAAgB,GAAG,CAAC,CAAQ,eAC9D;IAAM,SAAS,EAAC;EAAe,QAAGF,SAAS,CAAQ,CAEtD,eACD;IAAK,SAAS,EAAC;EAAgC,GAC5CG,cAAc,iBAAI,oBAAC,QAAQ;IAAC,OAAO,EAAER;EAAsB,EAAG,eAC/D,oBAAC,IAAI;IACH,EAAE,EAAED,EAAG;IACP,MAAM,EAAEpB,MAAO;IACf,YAAY,EAAEK,YAAa;IAC3B,cAAc,
|
|
1
|
+
{"version":3,"file":"CardsRenderItem.js","names":["React","PropTypes","Waypoint","Card","shouldRenderWaypoint","renderChildren","parsePropsToDisplay","checkIfShouldRenderGtm","Banner","CardsRenderItem","cardProps","listProps","bannerProps","index","entity","currentListLength","cardChildren","gtmChildren","modifier","gridModifier","propsToDisplayModifiers","propsToDisplay","shouldRenderBanner","bannerIndex","priority","enableOverlay","autoScrollTimer","arrowSize","overlayModifier","titleOverlayModifier","initialOffset","isInfinite","style","name","id","triggerInfiniteScroll","displayCount","displayCategory","displayThumbnail","displayTitle","listTotal","itemsPerPage","currentItemIndex","renderWaypoint","shouldRenderGtm","parsedPropsToDisplay","propTypes","object","isRequired","number","array","bool","string","oneOfType","arrayOf","node","defaultProps"],"sources":["../../../../../src/components/List/components/Cards/CardsRenderItem.js"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport { Waypoint } from 'react-waypoint';\nimport Card from '../../../Card/Card';\nimport { shouldRenderWaypoint, renderChildren, parsePropsToDisplay } from '../../../../helpers';\nimport { checkIfShouldRenderGtm } from '../helpers';\nimport Banner from '../../../Banner';\n\nconst CardsRenderItem = ({\n cardProps,\n listProps,\n bannerProps,\n index,\n entity,\n currentListLength,\n cardChildren,\n gtmChildren,\n modifier,\n gridModifier,\n propsToDisplayModifiers,\n propsToDisplay,\n shouldRenderBanner,\n bannerIndex,\n priority,\n enableOverlay,\n autoScrollTimer,\n arrowSize,\n overlayModifier,\n titleOverlayModifier\n}) => {\n const {\n initialOffset,\n isInfinite,\n style,\n name,\n id,\n triggerInfiniteScroll,\n displayCount,\n displayCategory = true,\n displayThumbnail = true,\n displayTitle = true,\n listTotal,\n itemsPerPage\n } = listProps;\n\n const currentItemIndex = initialOffset + index;\n const renderWaypoint =\n isInfinite && shouldRenderWaypoint(index, currentListLength, currentItemIndex, listTotal);\n const shouldRenderGtm =\n gtmChildren && checkIfShouldRenderGtm(itemsPerPage, currentListLength, index);\n\n const parsedPropsToDisplay = parsePropsToDisplay(cardProps, propsToDisplay);\n\n return (\n <>\n {shouldRenderGtm && renderChildren(gtmChildren)}\n {displayCount && (\n <div className=\"heading heading--section heading--section--count\">\n <span className=\"section-number\">{currentItemIndex + 1}</span>\n <span className=\"section-total\">/{listTotal}</span>\n </div>\n )}\n <div className=\"list__item list__item--compact\">\n {renderWaypoint && <Waypoint onEnter={triggerInfiniteScroll} />}\n <Card\n id={id}\n entity={entity}\n gridModifier={gridModifier}\n propsToDisplay={propsToDisplay}\n parsedPropsToDisplay={parsedPropsToDisplay}\n propsToDisplayModifiers={propsToDisplayModifiers}\n modifier={modifier}\n style={style}\n cardChildren={cardChildren}\n displayCategory={displayCategory}\n displayThumbnail={displayThumbnail}\n displayTitle={displayTitle}\n cardProps={cardProps}\n gtmId={name}\n gtmChildren={gtmChildren}\n priority={priority}\n arrowSize={arrowSize}\n enableOverlay={enableOverlay}\n overlayModifier={overlayModifier}\n titleOverlayModifier={titleOverlayModifier}\n {...cardProps}\n />\n </div>\n {shouldRenderBanner && <Banner {...bannerProps} cardBannerIndex={bannerIndex} />}\n </>\n );\n};\n\nCardsRenderItem.propTypes = {\n cardProps: PropTypes.object.isRequired,\n listProps: PropTypes.object.isRequired,\n index: PropTypes.number.isRequired,\n currentListLength: PropTypes.number.isRequired,\n propsToDisplayModifiers: PropTypes.array.isRequired,\n shouldRenderBanner: PropTypes.bool.isRequired,\n bannerIndex: PropTypes.number.isRequired,\n bannerProps: PropTypes.object,\n gridModifier: PropTypes.string,\n propsToDisplay: PropTypes.array,\n entity: PropTypes.string.isRequired,\n modifier: PropTypes.string,\n cardChildren: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.node), PropTypes.node]),\n gtmChildren: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.node), PropTypes.node]),\n priority: PropTypes.bool,\n enableOverlay: PropTypes.bool,\n overlayModifier: PropTypes.string,\n titleOverlayModifier: PropTypes.string,\n autoScrollTimer: PropTypes.number,\n arrowSize: PropTypes.string\n};\n\nCardsRenderItem.defaultProps = {\n priority: false,\n bannerProps: null,\n gridModifier: '',\n propsToDisplay: [],\n modifier: '',\n cardChildren: [],\n gtmChildren: [],\n enableOverlay: false,\n autoScrollTimer: 0,\n overlayModifier: '',\n titleOverlayModifier: '',\n arrowSize: ''\n};\n\nexport default CardsRenderItem;\n"],"mappings":";AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,OAAOC,SAAS,MAAM,YAAY;AAClC,SAASC,QAAQ,QAAQ,gBAAgB;AACzC,OAAOC,IAAI,MAAM,oBAAoB;AACrC,SAASC,oBAAoB,EAAEC,cAAc,EAAEC,mBAAmB,QAAQ,qBAAqB;AAC/F,SAASC,sBAAsB,QAAQ,YAAY;AACnD,OAAOC,MAAM,MAAM,iBAAiB;AAEpC,MAAMC,eAAe,GAAG,CAAC;EACvBC,SAAS;EACTC,SAAS;EACTC,WAAW;EACXC,KAAK;EACLC,MAAM;EACNC,iBAAiB;EACjBC,YAAY;EACZC,WAAW;EACXC,QAAQ;EACRC,YAAY;EACZC,uBAAuB;EACvBC,cAAc;EACdC,kBAAkB;EAClBC,WAAW;EACXC,QAAQ;EACRC,aAAa;EACbC,eAAe;EACfC,SAAS;EACTC,eAAe;EACfC;AACF,CAAC,KAAK;EACJ,MAAM;IACJC,aAAa;IACbC,UAAU;IACVC,KAAK;IACLC,IAAI;IACJC,EAAE;IACFC,qBAAqB;IACrBC,YAAY;IACZC,eAAe,GAAG,IAAI;IACtBC,gBAAgB,GAAG,IAAI;IACvBC,YAAY,GAAG,IAAI;IACnBC,SAAS;IACTC;EACF,CAAC,GAAG9B,SAAS;EAEb,MAAM+B,gBAAgB,GAAGZ,aAAa,GAAGjB,KAAK;EAC9C,MAAM8B,cAAc,GAClBZ,UAAU,IAAI3B,oBAAoB,CAACS,KAAK,EAAEE,iBAAiB,EAAE2B,gBAAgB,EAAEF,SAAS,CAAC;EAC3F,MAAMI,eAAe,GACnB3B,WAAW,IAAIV,sBAAsB,CAACkC,YAAY,EAAE1B,iBAAiB,EAAEF,KAAK,CAAC;EAE/E,MAAMgC,oBAAoB,GAAGvC,mBAAmB,CAACI,SAAS,EAAEW,cAAc,CAAC;EAE3E,oBACE,0CACGuB,eAAe,IAAIvC,cAAc,CAACY,WAAW,CAAC,EAC9CmB,YAAY,iBACX;IAAK,SAAS,EAAC;EAAkD,gBAC/D;IAAM,SAAS,EAAC;EAAgB,GAAEM,gBAAgB,GAAG,CAAC,CAAQ,eAC9D;IAAM,SAAS,EAAC;EAAe,QAAGF,SAAS,CAAQ,CAEtD,eACD;IAAK,SAAS,EAAC;EAAgC,GAC5CG,cAAc,iBAAI,oBAAC,QAAQ;IAAC,OAAO,EAAER;EAAsB,EAAG,eAC/D,oBAAC,IAAI;IACH,EAAE,EAAED,EAAG;IACP,MAAM,EAAEpB,MAAO;IACf,YAAY,EAAEK,YAAa;IAC3B,cAAc,EAAEE,cAAe;IAC/B,oBAAoB,EAAEwB,oBAAqB;IAC3C,uBAAuB,EAAEzB,uBAAwB;IACjD,QAAQ,EAAEF,QAAS;IACnB,KAAK,EAAEc,KAAM;IACb,YAAY,EAAEhB,YAAa;IAC3B,eAAe,EAAEqB,eAAgB;IACjC,gBAAgB,EAAEC,gBAAiB;IACnC,YAAY,EAAEC,YAAa;IAC3B,SAAS,EAAE7B,SAAU;IACrB,KAAK,EAAEuB,IAAK;IACZ,WAAW,EAAEhB,WAAY;IACzB,QAAQ,EAAEO,QAAS;IACnB,SAAS,EAAEG,SAAU;IACrB,aAAa,EAAEF,aAAc;IAC7B,eAAe,EAAEG,eAAgB;IACjC,oBAAoB,EAAEC;EAAqB,GACvCnB,SAAS,EACb,CACE,EACLY,kBAAkB,iBAAI,oBAAC,MAAM,eAAKV,WAAW;IAAE,eAAe,EAAEW;EAAY,GAAG,CAC/E;AAEP,CAAC;AAEDd,eAAe,CAACqC,SAAS,GAAG;EAC1BpC,SAAS,EAAET,SAAS,CAAC8C,MAAM,CAACC,UAAU;EACtCrC,SAAS,EAAEV,SAAS,CAAC8C,MAAM,CAACC,UAAU;EACtCnC,KAAK,EAAEZ,SAAS,CAACgD,MAAM,CAACD,UAAU;EAClCjC,iBAAiB,EAAEd,SAAS,CAACgD,MAAM,CAACD,UAAU;EAC9C5B,uBAAuB,EAAEnB,SAAS,CAACiD,KAAK,CAACF,UAAU;EACnD1B,kBAAkB,EAAErB,SAAS,CAACkD,IAAI,CAACH,UAAU;EAC7CzB,WAAW,EAAEtB,SAAS,CAACgD,MAAM,CAACD,UAAU;EACxCpC,WAAW,EAAEX,SAAS,CAAC8C,MAAM;EAC7B5B,YAAY,EAAElB,SAAS,CAACmD,MAAM;EAC9B/B,cAAc,EAAEpB,SAAS,CAACiD,KAAK;EAC/BpC,MAAM,EAAEb,SAAS,CAACmD,MAAM,CAACJ,UAAU;EACnC9B,QAAQ,EAAEjB,SAAS,CAACmD,MAAM;EAC1BpC,YAAY,EAAEf,SAAS,CAACoD,SAAS,CAAC,CAACpD,SAAS,CAACqD,OAAO,CAACrD,SAAS,CAACsD,IAAI,CAAC,EAAEtD,SAAS,CAACsD,IAAI,CAAC,CAAC;EACtFtC,WAAW,EAAEhB,SAAS,CAACoD,SAAS,CAAC,CAACpD,SAAS,CAACqD,OAAO,CAACrD,SAAS,CAACsD,IAAI,CAAC,EAAEtD,SAAS,CAACsD,IAAI,CAAC,CAAC;EACrF/B,QAAQ,EAAEvB,SAAS,CAACkD,IAAI;EACxB1B,aAAa,EAAExB,SAAS,CAACkD,IAAI;EAC7BvB,eAAe,EAAE3B,SAAS,CAACmD,MAAM;EACjCvB,oBAAoB,EAAE5B,SAAS,CAACmD,MAAM;EACtC1B,eAAe,EAAEzB,SAAS,CAACgD,MAAM;EACjCtB,SAAS,EAAE1B,SAAS,CAACmD;AACvB,CAAC;AAED3C,eAAe,CAAC+C,YAAY,GAAG;EAC7BhC,QAAQ,EAAE,KAAK;EACfZ,WAAW,EAAE,IAAI;EACjBO,YAAY,EAAE,EAAE;EAChBE,cAAc,EAAE,EAAE;EAClBH,QAAQ,EAAE,EAAE;EACZF,YAAY,EAAE,EAAE;EAChBC,WAAW,EAAE,EAAE;EACfQ,aAAa,EAAE,KAAK;EACpBC,eAAe,EAAE,CAAC;EAClBE,eAAe,EAAE,EAAE;EACnBC,oBAAoB,EAAE,EAAE;EACxBF,SAAS,EAAE;AACb,CAAC;AAED,eAAelB,eAAe"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@blaze-cms/react-page-builder",
|
|
3
|
-
"version": "0.125.0-auth-updates.
|
|
3
|
+
"version": "0.125.0-auth-updates.3",
|
|
4
4
|
"description": "Blaze react page builder",
|
|
5
5
|
"main": "lib/index.js",
|
|
6
6
|
"module": "lib-es/index.js",
|
|
@@ -27,13 +27,13 @@
|
|
|
27
27
|
},
|
|
28
28
|
"license": "GPL-3.0",
|
|
29
29
|
"dependencies": {
|
|
30
|
-
"@blaze-cms/core-auth-ui": "0.125.0-auth-updates.
|
|
30
|
+
"@blaze-cms/core-auth-ui": "0.125.0-auth-updates.1",
|
|
31
31
|
"@blaze-cms/core-errors": "^0.118.0",
|
|
32
32
|
"@blaze-cms/image-cdn-react": "0.3.0-alpha.3",
|
|
33
33
|
"@blaze-cms/nextjs-components": "0.125.0-auth-updates.0",
|
|
34
|
-
"@blaze-cms/plugin-search-ui": "0.125.0-auth-updates.
|
|
34
|
+
"@blaze-cms/plugin-search-ui": "0.125.0-auth-updates.1",
|
|
35
35
|
"@blaze-cms/setup-ui": "^0.92.0",
|
|
36
|
-
"@blaze-cms/utils": "
|
|
36
|
+
"@blaze-cms/utils": "0.125.0-auth-updates.1",
|
|
37
37
|
"@blaze-cms/utils-handlebars": "0.125.0-auth-updates.0",
|
|
38
38
|
"@blaze-react/breadcrumb": "0.8.0-alpha.60",
|
|
39
39
|
"@blaze-react/button": "0.5.19",
|
|
@@ -87,5 +87,5 @@
|
|
|
87
87
|
"lib/*",
|
|
88
88
|
"lib-es/*"
|
|
89
89
|
],
|
|
90
|
-
"gitHead": "
|
|
90
|
+
"gitHead": "348b2ee787a4e573ac400f6071041e341370fe86"
|
|
91
91
|
}
|
|
@@ -23,6 +23,7 @@ const Card = ({
|
|
|
23
23
|
alternativeHeadline,
|
|
24
24
|
category,
|
|
25
25
|
modifier,
|
|
26
|
+
parsedPropsToDisplay,
|
|
26
27
|
propsToDisplay,
|
|
27
28
|
propsToDisplayModifiers,
|
|
28
29
|
gtmId,
|
|
@@ -115,15 +116,22 @@ const Card = ({
|
|
|
115
116
|
</BlazeLink>
|
|
116
117
|
</h2>
|
|
117
118
|
)}
|
|
118
|
-
{!!
|
|
119
|
+
{!!parsedPropsToDisplay.length && (
|
|
119
120
|
<div className={getModifiers('card__details', modifiers)}>
|
|
120
|
-
{
|
|
121
|
+
{parsedPropsToDisplay.map((prop, i) => {
|
|
121
122
|
if (!prop) return null;
|
|
123
|
+
|
|
122
124
|
const dynamicKey = `${id}${i}`;
|
|
123
125
|
const propModifier = propsToDisplayModifiers[i] || '';
|
|
124
126
|
|
|
127
|
+
const { htmlAttribute } = propsToDisplay[i] || {};
|
|
128
|
+
const extraProps = {};
|
|
129
|
+
if (htmlAttribute && prop.props.children) {
|
|
130
|
+
extraProps[htmlAttribute] = encodeURIComponent(prop.props.children[2]);
|
|
131
|
+
}
|
|
132
|
+
|
|
125
133
|
return (
|
|
126
|
-
<span key={dynamicKey} className={propModifier}>
|
|
134
|
+
<span key={dynamicKey} className={propModifier} {...extraProps}>
|
|
127
135
|
{prop}
|
|
128
136
|
</span>
|
|
129
137
|
);
|
|
@@ -147,6 +155,7 @@ Card.propTypes = {
|
|
|
147
155
|
data: PropTypes.object
|
|
148
156
|
}),
|
|
149
157
|
style: PropTypes.string,
|
|
158
|
+
parsedPropsToDisplay: PropTypes.array,
|
|
150
159
|
propsToDisplay: PropTypes.array,
|
|
151
160
|
propsToDisplayModifiers: PropTypes.array,
|
|
152
161
|
url: PropTypes.string,
|
|
@@ -186,6 +195,7 @@ Card.defaultProps = {
|
|
|
186
195
|
},
|
|
187
196
|
gtmId: '',
|
|
188
197
|
style: 'portrait',
|
|
198
|
+
parsedPropsToDisplay: [],
|
|
189
199
|
propsToDisplay: [],
|
|
190
200
|
propsToDisplayModifiers: [],
|
|
191
201
|
url: '',
|
|
@@ -74,7 +74,8 @@ const CardContainer = ({
|
|
|
74
74
|
id={id}
|
|
75
75
|
enableCarousel={enableCarousel}
|
|
76
76
|
entity={entity}
|
|
77
|
-
propsToDisplay={
|
|
77
|
+
propsToDisplay={propsToDisplay}
|
|
78
|
+
parsedPropsToDisplay={extraProps}
|
|
78
79
|
propsToDisplayModifiers={propsToDisplayModifiers}
|
|
79
80
|
modifier={modifier}
|
|
80
81
|
style={style}
|
|
@@ -34,6 +34,7 @@ const CardsRender = ({
|
|
|
34
34
|
const bannerProps = banner
|
|
35
35
|
? { parent, hasBanner, entity, propsToDisplay, ...banner, type: BANNER }
|
|
36
36
|
: null;
|
|
37
|
+
|
|
37
38
|
const propsToDisplayModifiers = getPropsToDisplayModifiers(propsToDisplay);
|
|
38
39
|
const imageIds = itemsToDisplay.map(({ imageId }) => imageId).filter(Boolean);
|
|
39
40
|
const { data: imagesData, loading: imagesLoading } = useGetImages(imageIds, true);
|
|
@@ -66,7 +66,8 @@ const CardsRenderItem = ({
|
|
|
66
66
|
id={id}
|
|
67
67
|
entity={entity}
|
|
68
68
|
gridModifier={gridModifier}
|
|
69
|
-
propsToDisplay={
|
|
69
|
+
propsToDisplay={propsToDisplay}
|
|
70
|
+
parsedPropsToDisplay={parsedPropsToDisplay}
|
|
70
71
|
propsToDisplayModifiers={propsToDisplayModifiers}
|
|
71
72
|
modifier={modifier}
|
|
72
73
|
style={style}
|
|
@@ -16,8 +16,17 @@ const render = async (Component, props) => {
|
|
|
16
16
|
};
|
|
17
17
|
|
|
18
18
|
const CATEGORY = 'category-name';
|
|
19
|
-
|
|
20
|
-
const
|
|
19
|
+
|
|
20
|
+
const propsToDisplay = [
|
|
21
|
+
{
|
|
22
|
+
htmlAttribute: 'data-testid'
|
|
23
|
+
}
|
|
24
|
+
];
|
|
25
|
+
const getMockedParsedProp = children => <>{children}</>;
|
|
26
|
+
const firstPropValue = 'some description';
|
|
27
|
+
const secondPropValue = 'extra props';
|
|
28
|
+
const firstPropToDisplay = getMockedParsedProp(['', '', firstPropValue, '', '']);
|
|
29
|
+
const secondPropToDisplay = getMockedParsedProp(['', '', secondPropValue, '', '']);
|
|
21
30
|
|
|
22
31
|
const componentProps = {
|
|
23
32
|
id: 'id',
|
|
@@ -41,7 +50,8 @@ const componentProps = {
|
|
|
41
50
|
displayCategory: true,
|
|
42
51
|
displayThumbnail: true,
|
|
43
52
|
displayTitle: true,
|
|
44
|
-
propsToDisplay
|
|
53
|
+
propsToDisplay,
|
|
54
|
+
parsedPropsToDisplay: [firstPropToDisplay, secondPropToDisplay]
|
|
45
55
|
};
|
|
46
56
|
|
|
47
57
|
const preHeaderName = 'Pre header';
|
|
@@ -54,7 +64,8 @@ jest.mock('../../../../../src/components/LazyImage', () => ({ src, alt }) => (
|
|
|
54
64
|
|
|
55
65
|
describe('Card component', () => {
|
|
56
66
|
it('should render without throwing an error and match snapshot', async () => {
|
|
57
|
-
const { asFragment } = await render(Card, componentProps);
|
|
67
|
+
const { asFragment, getByTestId } = await render(Card, componentProps);
|
|
68
|
+
expect(getByTestId(encodeURIComponent(firstPropValue))).toBeDefined();
|
|
58
69
|
expect(asFragment()).toMatchSnapshot();
|
|
59
70
|
});
|
|
60
71
|
|
|
@@ -159,8 +170,8 @@ describe('Card component', () => {
|
|
|
159
170
|
const { getByText } = await render(Card, componentProps);
|
|
160
171
|
|
|
161
172
|
await waitFor(() => {
|
|
162
|
-
expect(getByText(
|
|
163
|
-
expect(getByText(
|
|
173
|
+
expect(getByText(firstPropValue)).toBeInTheDocument();
|
|
174
|
+
expect(getByText(secondPropValue)).toBeInTheDocument();
|
|
164
175
|
});
|
|
165
176
|
});
|
|
166
177
|
|
|
@@ -170,7 +181,7 @@ describe('Card component', () => {
|
|
|
170
181
|
const { getByText } = await render(Card, { ...componentProps, ...propsToDisplayModifiers });
|
|
171
182
|
|
|
172
183
|
await waitFor(() => {
|
|
173
|
-
const span = getByText(
|
|
184
|
+
const span = getByText(firstPropValue).closest('span');
|
|
174
185
|
expect(span).not.toHaveAttribute(modifier);
|
|
175
186
|
});
|
|
176
187
|
});
|
|
@@ -44,6 +44,7 @@ exports[`Card component should not render alternative headline if alternativePre
|
|
|
44
44
|
>
|
|
45
45
|
<span
|
|
46
46
|
class=""
|
|
47
|
+
data-testid="some%20description"
|
|
47
48
|
>
|
|
48
49
|
some description
|
|
49
50
|
</span>
|
|
@@ -112,6 +113,7 @@ exports[`Card component should not render alternative headline if displayCategor
|
|
|
112
113
|
>
|
|
113
114
|
<span
|
|
114
115
|
class=""
|
|
116
|
+
data-testid="some%20description"
|
|
115
117
|
>
|
|
116
118
|
some description
|
|
117
119
|
</span>
|
|
@@ -186,6 +188,7 @@ exports[`Card component should not render preHeader if alternativeHeadline is no
|
|
|
186
188
|
>
|
|
187
189
|
<span
|
|
188
190
|
class=""
|
|
191
|
+
data-testid="some%20description"
|
|
189
192
|
>
|
|
190
193
|
some description
|
|
191
194
|
</span>
|
|
@@ -259,6 +262,7 @@ exports[`Card component should render customPreheader and alternativeHeadline in
|
|
|
259
262
|
>
|
|
260
263
|
<span
|
|
261
264
|
class=""
|
|
265
|
+
data-testid="some%20description"
|
|
262
266
|
>
|
|
263
267
|
some description
|
|
264
268
|
</span>
|
|
@@ -333,6 +337,7 @@ exports[`Card component should render without throwing an error and match snapsh
|
|
|
333
337
|
>
|
|
334
338
|
<span
|
|
335
339
|
class=""
|
|
340
|
+
data-testid="some%20description"
|
|
336
341
|
>
|
|
337
342
|
some description
|
|
338
343
|
</span>
|