@blaze-cms/react-page-builder 0.118.0-alpha.2 → 0.119.0-alpha.2
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 +41 -0
- package/README.md +22 -0
- package/lib/application/query/index.js +12 -12
- package/lib/application/query/index.js.map +1 -1
- package/lib/components/Banner/AdSlotRender.js +104 -0
- package/lib/components/Banner/AdSlotRender.js.map +1 -0
- package/lib/components/Banner/Banner.js +2 -2
- package/lib/components/Banner/Banner.js.map +1 -1
- package/lib/components/Banner/BannerRender.js +23 -33
- package/lib/components/Banner/BannerRender.js.map +1 -1
- package/lib/components/Button.js +2 -2
- package/lib/components/Button.js.map +1 -1
- package/lib/components/Card/CardContainer.js +6 -2
- package/lib/components/Card/CardContainer.js.map +1 -1
- package/lib/components/Card/CardFactory.js +2 -2
- package/lib/components/Card/CardFactory.js.map +1 -1
- package/lib/components/Card/CardRender.js +3 -3
- package/lib/components/Card/CardRender.js.map +1 -1
- package/lib/components/Card/helpers/filter-query-setup.js +7 -7
- package/lib/components/Card/helpers/filter-query-setup.js.map +1 -1
- package/lib/components/CarouselWrapper.js +54 -14
- package/lib/components/CarouselWrapper.js.map +1 -1
- package/lib/components/DataSummary/DataSummaryFactory.js +2 -2
- package/lib/components/DataSummary/DataSummaryFactory.js.map +1 -1
- package/lib/components/DataSummary/DataSummaryRender.js +2 -2
- package/lib/components/DataSummary/DataSummaryRender.js.map +1 -1
- package/lib/components/EmailConfirm/EmailConfirm.js +2 -2
- package/lib/components/EmailConfirm/EmailConfirm.js.map +1 -1
- package/lib/components/EmailConfirm/mutation.js +2 -2
- package/lib/components/EmailConfirm/mutation.js.map +1 -1
- package/lib/components/Image/ImageFactory.js +9 -5
- package/lib/components/Image/ImageFactory.js.map +1 -1
- package/lib/components/List/ListBuilder.js +21 -21
- package/lib/components/List/ListBuilder.js.map +1 -1
- package/lib/components/List/ListFactory.js +3 -3
- package/lib/components/List/ListFactory.js.map +1 -1
- package/lib/components/List/ListRender.js +2 -2
- package/lib/components/List/ListRender.js.map +1 -1
- package/lib/components/Login/LoggedInMessage.js +1 -1
- package/lib/components/Login/LoggedInMessage.js.map +1 -1
- package/lib/components/Login/Login.js +2 -2
- package/lib/components/Login/Login.js.map +1 -1
- package/lib/components/Menu/Menu.js +39 -6
- package/lib/components/Menu/Menu.js.map +1 -1
- package/lib/components/PasswordReset/PasswordReset.js +2 -2
- package/lib/components/PasswordReset/PasswordReset.js.map +1 -1
- package/lib/components/PasswordResetRequest/PasswordResetRequest.js +2 -2
- package/lib/components/PasswordResetRequest/PasswordResetRequest.js.map +1 -1
- package/lib/components/SearchFilter/SearchFilterContainer.js +2 -2
- package/lib/components/SearchFilter/SearchFilterContainer.js.map +1 -1
- package/lib/constants/index.js +8 -2
- package/lib/constants/index.js.map +1 -1
- package/lib/helpers/build-props-query.js +2 -2
- package/lib/helpers/build-props-query.js.map +1 -1
- package/lib/hooks/use-get-entity-schema.js +3 -3
- package/lib/hooks/use-get-entity-schema.js.map +1 -1
- package/lib/hooks/use-get-entity-schemas-as-obj.js +2 -2
- package/lib/hooks/use-get-entity-schemas-as-obj.js.map +1 -1
- package/lib/hooks/use-get-image-id-from-relation.js +2 -2
- package/lib/hooks/use-get-image-id-from-relation.js.map +1 -1
- package/lib/hooks/use-get-images.js +2 -2
- package/lib/hooks/use-get-images.js.map +1 -1
- package/lib/hooks/use-get-single-entity-schema.js +2 -2
- package/lib/hooks/use-get-single-entity-schema.js.map +1 -1
- package/lib-es/application/query/index.js +1 -5
- package/lib-es/application/query/index.js.map +1 -1
- package/lib-es/components/Banner/AdSlotRender.js +54 -0
- package/lib-es/components/Banner/AdSlotRender.js.map +1 -0
- package/lib-es/components/Banner/Banner.js +1 -1
- package/lib-es/components/Banner/Banner.js.map +1 -1
- package/lib-es/components/Banner/BannerRender.js +21 -29
- package/lib-es/components/Banner/BannerRender.js.map +1 -1
- package/lib-es/components/Button.js +1 -1
- package/lib-es/components/Button.js.map +1 -1
- package/lib-es/components/Card/CardContainer.js +7 -3
- package/lib-es/components/Card/CardContainer.js.map +1 -1
- package/lib-es/components/Card/CardFactory.js +1 -1
- package/lib-es/components/Card/CardFactory.js.map +1 -1
- package/lib-es/components/Card/CardRender.js +1 -1
- package/lib-es/components/Card/CardRender.js.map +1 -1
- package/lib-es/components/Card/helpers/filter-query-setup.js +1 -1
- package/lib-es/components/Card/helpers/filter-query-setup.js.map +1 -1
- package/lib-es/components/CarouselWrapper.js +50 -14
- package/lib-es/components/CarouselWrapper.js.map +1 -1
- package/lib-es/components/DataSummary/DataSummaryFactory.js +1 -1
- package/lib-es/components/DataSummary/DataSummaryFactory.js.map +1 -1
- package/lib-es/components/DataSummary/DataSummaryRender.js +1 -1
- package/lib-es/components/DataSummary/DataSummaryRender.js.map +1 -1
- package/lib-es/components/EmailConfirm/EmailConfirm.js +1 -1
- package/lib-es/components/EmailConfirm/EmailConfirm.js.map +1 -1
- package/lib-es/components/EmailConfirm/mutation.js +1 -1
- package/lib-es/components/EmailConfirm/mutation.js.map +1 -1
- package/lib-es/components/Image/ImageFactory.js +8 -4
- package/lib-es/components/Image/ImageFactory.js.map +1 -1
- package/lib-es/components/List/ListBuilder.js +2 -2
- package/lib-es/components/List/ListBuilder.js.map +1 -1
- package/lib-es/components/List/ListFactory.js +1 -1
- package/lib-es/components/List/ListFactory.js.map +1 -1
- package/lib-es/components/List/ListRender.js +1 -1
- package/lib-es/components/List/ListRender.js.map +1 -1
- package/lib-es/components/Login/LoggedInMessage.js +1 -1
- package/lib-es/components/Login/LoggedInMessage.js.map +1 -1
- package/lib-es/components/Login/Login.js +1 -1
- package/lib-es/components/Login/Login.js.map +1 -1
- package/lib-es/components/Menu/Menu.js +44 -11
- package/lib-es/components/Menu/Menu.js.map +1 -1
- package/lib-es/components/PasswordReset/PasswordReset.js +1 -1
- package/lib-es/components/PasswordReset/PasswordReset.js.map +1 -1
- package/lib-es/components/PasswordResetRequest/PasswordResetRequest.js +1 -1
- package/lib-es/components/PasswordResetRequest/PasswordResetRequest.js.map +1 -1
- package/lib-es/components/SearchFilter/SearchFilterContainer.js +1 -1
- package/lib-es/components/SearchFilter/SearchFilterContainer.js.map +1 -1
- package/lib-es/constants/index.js +4 -1
- package/lib-es/constants/index.js.map +1 -1
- package/lib-es/helpers/build-props-query.js +2 -2
- package/lib-es/helpers/build-props-query.js.map +1 -1
- package/lib-es/hooks/use-get-entity-schema.js +1 -1
- package/lib-es/hooks/use-get-entity-schema.js.map +1 -1
- package/lib-es/hooks/use-get-entity-schemas-as-obj.js +1 -1
- package/lib-es/hooks/use-get-entity-schemas-as-obj.js.map +1 -1
- package/lib-es/hooks/use-get-image-id-from-relation.js +1 -1
- package/lib-es/hooks/use-get-image-id-from-relation.js.map +1 -1
- package/lib-es/hooks/use-get-images.js +1 -1
- package/lib-es/hooks/use-get-images.js.map +1 -1
- package/lib-es/hooks/use-get-single-entity-schema.js +1 -1
- package/lib-es/hooks/use-get-single-entity-schema.js.map +1 -1
- package/package.json +9 -13
- package/src/application/query/index.js +1 -5
- package/src/components/Banner/AdSlotRender.js +62 -0
- package/src/components/Banner/Banner.js +1 -1
- package/src/components/Banner/BannerRender.js +22 -27
- package/src/components/Button.js +1 -1
- package/src/components/Card/CardContainer.js +5 -1
- package/src/components/Card/CardFactory.js +1 -1
- package/src/components/Card/CardRender.js +1 -1
- package/src/components/Card/helpers/filter-query-setup.js +1 -1
- package/src/components/CarouselWrapper.js +64 -19
- package/src/components/DataSummary/DataSummaryFactory.js +1 -1
- package/src/components/DataSummary/DataSummaryRender.js +1 -1
- package/src/components/EmailConfirm/EmailConfirm.js +1 -1
- package/src/components/EmailConfirm/mutation.js +1 -1
- package/src/components/Image/ImageFactory.js +10 -7
- package/src/components/List/ListBuilder.js +2 -2
- package/src/components/List/ListFactory.js +1 -1
- package/src/components/List/ListRender.js +1 -1
- package/src/components/Login/LoggedInMessage.js +1 -1
- package/src/components/Login/Login.js +1 -1
- package/src/components/Menu/Menu.js +50 -12
- package/src/components/PasswordReset/PasswordReset.js +1 -1
- package/src/components/PasswordResetRequest/PasswordResetRequest.js +1 -1
- package/src/components/SearchFilter/SearchFilterContainer.js +1 -1
- package/src/constants/index.js +6 -0
- package/src/helpers/build-props-query.js +2 -2
- package/src/hooks/use-get-entity-schema.js +1 -1
- package/src/hooks/use-get-entity-schemas-as-obj.js +1 -1
- package/src/hooks/use-get-image-id-from-relation.js +1 -1
- package/src/hooks/use-get-images.js +1 -1
- package/src/hooks/use-get-single-entity-schema.js +1 -1
- package/tests/unit/src/components/Banner/AdSlotRender.test.js +81 -0
- package/tests/unit/src/components/Banner/Banner.test.js +2 -1
- package/tests/unit/src/components/Banner/BannerRender.test.js +119 -0
- package/tests/unit/src/components/Banner/__snapshots__/AdSlotRender.test.js.snap +54 -0
- package/tests/unit/src/components/Banner/__snapshots__/BannerRender.test.js.snap +10 -0
- package/tests/unit/src/components/Button.test.js +2 -1
- package/tests/unit/src/components/Card/CardRender.test.js +1 -1
- package/tests/unit/src/components/Card/__snapshots__/CardContainer.test.js.snap +4 -4
- package/tests/unit/src/components/Carousel/Carousel.test.js +1 -1
- package/tests/unit/src/components/DataSummary/DataSummaryFactory.test.js +3 -2
- package/tests/unit/src/components/EmailConfirm/EmailConfirm.test.js +2 -1
- package/tests/unit/src/components/Image/GlobalLightbox/GlobalLightbox.test.js +10 -6
- package/tests/unit/src/components/Image/ImageFactory.test.js +11 -19
- package/tests/unit/src/components/Image/__snapshots__/ImageFactory.test.js.snap +34 -1
- package/tests/unit/src/components/Image/mocks.js +80 -24
- package/tests/unit/src/components/List/ListRender.test.js +2 -1
- package/tests/unit/src/components/Login/Login.test.js +2 -1
- package/tests/unit/src/components/PasswordReset/PasswordReset.test.js +2 -2
- package/tests/unit/src/components/PasswordResetRequest/PasswordResetRequest.test.js +2 -2
- package/tests/unit/src/components/SearchFilter/SearchFilterContainer.test.js +2 -1
- package/tests/unit/src/components/Video/providers/JWPlayer/JWPlayerProvider.test.js +1 -1
- package/tests/unit/src/components/__snapshots__/CarouselWrapper.test.js.snap +12 -12
- package/tests/unit/src/helpers/build-props-query.test.js +6 -6
- package/tests/unit/src/hooks/use-get-entity-schema-as-obj.test.js +2 -2
- package/tests/unit/src/hooks/use-get-image-id-from-relation.test.js +1 -1
- package/tests/unit/src/hooks/use-get-images.test.js +4 -14
- package/tests/unit/src/hooks/use-get-single-entity-schema.test.js +2 -4
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
import React, { useState } from 'react';
|
|
2
|
+
import { AdSlot } from 'react-dfp';
|
|
3
|
+
import PropTypes from 'prop-types';
|
|
4
|
+
import { BANNER_LOADING, BANNER_EMPTY, BANNER_LOADED } from '../../constants';
|
|
5
|
+
|
|
6
|
+
const AdSlotRender = ({
|
|
7
|
+
shouldShowBanner,
|
|
8
|
+
sizeMapping,
|
|
9
|
+
sizeId,
|
|
10
|
+
parsedAdunit,
|
|
11
|
+
parsedSizes,
|
|
12
|
+
targetingArguments
|
|
13
|
+
}) => {
|
|
14
|
+
const [loadingStatus, setLoadingStatus] = useState(BANNER_LOADING);
|
|
15
|
+
const bannerClass = `banner-${sizeId}`;
|
|
16
|
+
const styles = loadingStatus === BANNER_LOADING && sizeMapping.map(({
|
|
17
|
+
sizes: styleSizes,
|
|
18
|
+
viewport: [minWidth]
|
|
19
|
+
}) => {
|
|
20
|
+
const minHeight = Math.min(...styleSizes.map(([, height]) => height));
|
|
21
|
+
return `@media(min-width:${minWidth}px){.${bannerClass}{min-height:${minHeight}px;}`;
|
|
22
|
+
}).sort();
|
|
23
|
+
const className = `ad-slot ad-slot-${loadingStatus} ${bannerClass}`;
|
|
24
|
+
return /*#__PURE__*/React.createElement(React.Fragment, null, styles && /*#__PURE__*/React.createElement("style", null, styles), /*#__PURE__*/React.createElement("div", {
|
|
25
|
+
className: className
|
|
26
|
+
}, shouldShowBanner && /*#__PURE__*/React.createElement(AdSlot, {
|
|
27
|
+
adUnit: parsedAdunit,
|
|
28
|
+
sizes: parsedSizes,
|
|
29
|
+
targetingArguments: targetingArguments,
|
|
30
|
+
sizeMapping: sizeMapping,
|
|
31
|
+
onSlotRender: ({
|
|
32
|
+
event: {
|
|
33
|
+
isEmpty
|
|
34
|
+
}
|
|
35
|
+
}) => {
|
|
36
|
+
const newLoadingStatus = isEmpty ? BANNER_EMPTY : BANNER_LOADED;
|
|
37
|
+
setLoadingStatus(newLoadingStatus);
|
|
38
|
+
}
|
|
39
|
+
})));
|
|
40
|
+
};
|
|
41
|
+
|
|
42
|
+
AdSlotRender.propTypes = {
|
|
43
|
+
shouldShowBanner: PropTypes.bool.isRequired,
|
|
44
|
+
sizeMapping: PropTypes.array.isRequired,
|
|
45
|
+
sizeId: PropTypes.string.isRequired,
|
|
46
|
+
parsedAdunit: PropTypes.string.isRequired,
|
|
47
|
+
parsedSizes: PropTypes.array,
|
|
48
|
+
targetingArguments: PropTypes.object.isRequired
|
|
49
|
+
};
|
|
50
|
+
AdSlotRender.defaultProps = {
|
|
51
|
+
parsedSizes: null
|
|
52
|
+
};
|
|
53
|
+
export default AdSlotRender;
|
|
54
|
+
//# sourceMappingURL=AdSlotRender.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../src/components/Banner/AdSlotRender.js"],"names":["React","useState","AdSlot","PropTypes","BANNER_LOADING","BANNER_EMPTY","BANNER_LOADED","AdSlotRender","shouldShowBanner","sizeMapping","sizeId","parsedAdunit","parsedSizes","targetingArguments","loadingStatus","setLoadingStatus","bannerClass","styles","map","sizes","styleSizes","viewport","minWidth","minHeight","Math","min","height","sort","className","event","isEmpty","newLoadingStatus","propTypes","bool","isRequired","array","string","object","defaultProps"],"mappings":"AAAA,OAAOA,KAAP,IAAgBC,QAAhB,QAAgC,OAAhC;AACA,SAASC,MAAT,QAAuB,WAAvB;AACA,OAAOC,SAAP,MAAsB,YAAtB;AACA,SAASC,cAAT,EAAyBC,YAAzB,EAAuCC,aAAvC,QAA4D,iBAA5D;;AAEA,MAAMC,YAAY,GAAG,CAAC;AACpBC,EAAAA,gBADoB;AAEpBC,EAAAA,WAFoB;AAGpBC,EAAAA,MAHoB;AAIpBC,EAAAA,YAJoB;AAKpBC,EAAAA,WALoB;AAMpBC,EAAAA;AANoB,CAAD,KAOf;AACJ,QAAM,CAACC,aAAD,EAAgBC,gBAAhB,IAAoCd,QAAQ,CAACG,cAAD,CAAlD;AAEA,QAAMY,WAAW,GAAI,UAASN,MAAO,EAArC;AAEA,QAAMO,MAAM,GACVH,aAAa,KAAKV,cAAlB,IACAK,WAAW,CACRS,GADH,CACO,CAAC;AAAEC,IAAAA,KAAK,EAAEC,UAAT;AAAqBC,IAAAA,QAAQ,EAAE,CAACC,QAAD;AAA/B,GAAD,KAAiD;AACpD,UAAMC,SAAS,GAAGC,IAAI,CAACC,GAAL,CAAS,GAAGL,UAAU,CAACF,GAAX,CAAe,CAAC,GAAGQ,MAAH,CAAD,KAAgBA,MAA/B,CAAZ,CAAlB;AACA,WAAQ,oBAAmBJ,QAAS,QAAON,WAAY,eAAcO,SAAU,MAA/E;AACD,GAJH,EAKGI,IALH,EAFF;AAQA,QAAMC,SAAS,GAAI,mBAAkBd,aAAc,IAAGE,WAAY,EAAlE;AAEA,sBACE,0CACGC,MAAM,iBAAI,mCAAQA,MAAR,CADb,eAEE;AAAK,IAAA,SAAS,EAAEW;AAAhB,KACGpB,gBAAgB,iBACf,oBAAC,MAAD;AACE,IAAA,MAAM,EAAEG,YADV;AAEE,IAAA,KAAK,EAAEC,WAFT;AAGE,IAAA,kBAAkB,EAAEC,kBAHtB;AAIE,IAAA,WAAW,EAAEJ,WAJf;AAKE,IAAA,YAAY,EAAE,CAAC;AAAEoB,MAAAA,KAAK,EAAE;AAAEC,QAAAA;AAAF;AAAT,KAAD,KAA4B;AACxC,YAAMC,gBAAgB,GAAGD,OAAO,GAAGzB,YAAH,GAAkBC,aAAlD;AACAS,MAAAA,gBAAgB,CAACgB,gBAAD,CAAhB;AACD;AARH,IAFJ,CAFF,CADF;AAmBD,CAzCD;;AA2CAxB,YAAY,CAACyB,SAAb,GAAyB;AACvBxB,EAAAA,gBAAgB,EAAEL,SAAS,CAAC8B,IAAV,CAAeC,UADV;AAEvBzB,EAAAA,WAAW,EAAEN,SAAS,CAACgC,KAAV,CAAgBD,UAFN;AAGvBxB,EAAAA,MAAM,EAAEP,SAAS,CAACiC,MAAV,CAAiBF,UAHF;AAIvBvB,EAAAA,YAAY,EAAER,SAAS,CAACiC,MAAV,CAAiBF,UAJR;AAKvBtB,EAAAA,WAAW,EAAET,SAAS,CAACgC,KALA;AAMvBtB,EAAAA,kBAAkB,EAAEV,SAAS,CAACkC,MAAV,CAAiBH;AANd,CAAzB;AASA3B,YAAY,CAAC+B,YAAb,GAA4B;AAC1B1B,EAAAA,WAAW,EAAE;AADa,CAA5B;AAIA,eAAeL,YAAf","sourcesContent":["import React, { useState } from 'react';\nimport { AdSlot } from 'react-dfp';\nimport PropTypes from 'prop-types';\nimport { BANNER_LOADING, BANNER_EMPTY, BANNER_LOADED } from '../../constants';\n\nconst AdSlotRender = ({\n shouldShowBanner,\n sizeMapping,\n sizeId,\n parsedAdunit,\n parsedSizes,\n targetingArguments\n}) => {\n const [loadingStatus, setLoadingStatus] = useState(BANNER_LOADING);\n\n const bannerClass = `banner-${sizeId}`;\n\n const styles =\n loadingStatus === BANNER_LOADING &&\n sizeMapping\n .map(({ sizes: styleSizes, viewport: [minWidth] }) => {\n const minHeight = Math.min(...styleSizes.map(([, height]) => height));\n return `@media(min-width:${minWidth}px){.${bannerClass}{min-height:${minHeight}px;}`;\n })\n .sort();\n const className = `ad-slot ad-slot-${loadingStatus} ${bannerClass}`;\n\n return (\n <>\n {styles && <style>{styles}</style>}\n <div className={className}>\n {shouldShowBanner && (\n <AdSlot\n adUnit={parsedAdunit}\n sizes={parsedSizes}\n targetingArguments={targetingArguments}\n sizeMapping={sizeMapping}\n onSlotRender={({ event: { isEmpty } }) => {\n const newLoadingStatus = isEmpty ? BANNER_EMPTY : BANNER_LOADED;\n setLoadingStatus(newLoadingStatus);\n }}\n />\n )}\n </div>\n </>\n );\n};\n\nAdSlotRender.propTypes = {\n shouldShowBanner: PropTypes.bool.isRequired,\n sizeMapping: PropTypes.array.isRequired,\n sizeId: PropTypes.string.isRequired,\n parsedAdunit: PropTypes.string.isRequired,\n parsedSizes: PropTypes.array,\n targetingArguments: PropTypes.object.isRequired\n};\n\nAdSlotRender.defaultProps = {\n parsedSizes: null\n};\n\nexport default AdSlotRender;\n"],"file":"AdSlotRender.js"}
|
|
@@ -5,7 +5,7 @@ import React, { useContext } from 'react';
|
|
|
5
5
|
import { MainContext } from '@blaze-cms/nextjs-components';
|
|
6
6
|
import PropTypes from 'prop-types';
|
|
7
7
|
import flatten from 'lodash.flatten';
|
|
8
|
-
import { useQuery } from '@apollo/
|
|
8
|
+
import { useQuery } from '@apollo/client';
|
|
9
9
|
import { useRouter } from 'next/router';
|
|
10
10
|
import { getSingleEntitySchema } from '../../application/query';
|
|
11
11
|
import Wrapper from '../Wrapper';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/components/Banner/Banner.js"],"names":["React","useContext","MainContext","PropTypes","flatten","useQuery","useRouter","getSingleEntitySchema","Wrapper","BannerRender","buildPropsQuery","getClassModifiers","getEntityRenderProps","Banner","type","otherProps","router","isPreview","asPath","parent","entity","sizeId","propsToDisplay","itemEntity","data","error","loading","variables","id","message","modifiers","queryProps","length","map","propertiesToDisplay","actionKey","action","bannerKey","propTypes","string","defaultProps"],"mappings":";;;AAAA,OAAOA,KAAP,IAAgBC,UAAhB,QAAkC,OAAlC;AACA,SAASC,WAAT,QAA4B,8BAA5B;AACA,OAAOC,SAAP,MAAsB,YAAtB;AACA,OAAOC,OAAP,MAAoB,gBAApB;AACA,SAASC,QAAT,QAAyB,
|
|
1
|
+
{"version":3,"sources":["../../../src/components/Banner/Banner.js"],"names":["React","useContext","MainContext","PropTypes","flatten","useQuery","useRouter","getSingleEntitySchema","Wrapper","BannerRender","buildPropsQuery","getClassModifiers","getEntityRenderProps","Banner","type","otherProps","router","isPreview","asPath","parent","entity","sizeId","propsToDisplay","itemEntity","data","error","loading","variables","id","message","modifiers","queryProps","length","map","propertiesToDisplay","actionKey","action","bannerKey","propTypes","string","defaultProps"],"mappings":";;;AAAA,OAAOA,KAAP,IAAgBC,UAAhB,QAAkC,OAAlC;AACA,SAASC,WAAT,QAA4B,8BAA5B;AACA,OAAOC,SAAP,MAAsB,YAAtB;AACA,OAAOC,OAAP,MAAoB,gBAApB;AACA,SAASC,QAAT,QAAyB,gBAAzB;AACA,SAASC,SAAT,QAA0B,aAA1B;AACA,SAASC,qBAAT,QAAsC,yBAAtC;AACA,OAAOC,OAAP,MAAoB,YAApB;AACA,OAAOC,YAAP,MAAyB,gBAAzB;AACA,OAAOC,eAAP,MAA4B,iCAA5B;AACA,SAASC,iBAAT,QAAkC,aAAlC;AACA,OAAOC,oBAAP,MAAiC,uCAAjC;;AAEA,MAAMC,MAAM,GAAG,QAA6B;AAAA,MAA5B;AAAEC,IAAAA;AAAF,GAA4B;AAAA,MAAjBC,UAAiB;;AAC1C,QAAMC,MAAM,GAAGV,SAAS,EAAxB;AACA,QAAM;AAAEW,IAAAA;AAAF,MAAgBhB,UAAU,CAACC,WAAD,CAAhC;AACA,QAAM;AAAEgB,IAAAA;AAAF,MAAaF,MAAnB;AACA,QAAM;AAAEG,IAAAA,MAAF;AAAUC,IAAAA,MAAV;AAAkBC,IAAAA,MAAlB;AAA0BC,IAAAA,cAAc,GAAG;AAA3C,MAAkDP,UAAxD;AAEA,QAAM;AAAEQ,IAAAA;AAAF,MAAiBJ,MAAvB;AACA,QAAM;AAAEK,IAAAA,IAAF;AAAQC,IAAAA,KAAR;AAAeC,IAAAA;AAAf,MAA2BrB,QAAQ,CAACE,qBAAD,EAAwB;AAC/DoB,IAAAA,SAAS,EAAE;AAAEC,MAAAA,EAAE,EAAER,MAAM,IAAIG;AAAhB;AADoD,GAAxB,CAAzC;AAIA,MAAIG,OAAJ,EAAa,OAAO,EAAP;AACb,MAAID,KAAJ,EAAW,OAAOA,KAAK,CAACI,OAAb;AACX,MAAI,CAACL,IAAL,EAAW,OAAO,IAAP;AACX,MAAI,CAACH,MAAL,EAAa,OAAO,IAAP;AAEb,QAAMS,SAAS,GAAGnB,iBAAiB,CAAC,QAAD,EAAWI,UAAX,CAAnC;AACA,QAAMgB,UAAU,GAAGrB,eAAe,CAChCc,IADgC,EAEhCF,cAAc,CAACU,MAAf,GACI5B,OAAO,CAACkB,cAAc,CAACW,GAAf,CAAmB,CAAC;AAAEC,IAAAA;AAAF,GAAD,KAA6BA,mBAAhD,CAAD,CADX,GAEI,EAJ4B,CAAlC;AAOA,QAAM;AAAEC,IAAAA,SAAF;AAAaC,IAAAA;AAAb,MAAwBxB,oBAAoB,CAACmB,UAAD,EAAaP,IAAb,EAAmBP,SAAnB,CAAlD;AACA,QAAMoB,SAAS,GAAI,GAAEhB,MAAO,GAAEH,MAAO,EAArC;AAEA,sBACE,oBAAC,OAAD;AAAS,IAAA,SAAS,EAAEJ,IAApB;AAA0B,IAAA,SAAS,EAAEgB;AAArC,kBACE,oBAAC,YAAD;AACE,IAAA,GAAG,EAAEO;AADP,KAEMtB,UAFN;AAGE,IAAA,MAAM,EAAEqB,MAHV;AAIE,IAAA,SAAS,EAAED,SAJb;AAKE,IAAA,MAAM,EAAEjB;AALV,KADF,CADF;AAWD,CAtCD;;AAwCAL,MAAM,CAACyB,SAAP,GAAmB;AACjBxB,EAAAA,IAAI,EAAEX,SAAS,CAACoC;AADC,CAAnB;AAIA1B,MAAM,CAAC2B,YAAP,GAAsB;AACpB1B,EAAAA,IAAI,EAAE;AADc,CAAtB;AAIA,eAAeD,MAAf","sourcesContent":["import React, { useContext } from 'react';\nimport { MainContext } from '@blaze-cms/nextjs-components';\nimport PropTypes from 'prop-types';\nimport flatten from 'lodash.flatten';\nimport { useQuery } from '@apollo/client';\nimport { useRouter } from 'next/router';\nimport { getSingleEntitySchema } from '../../application/query';\nimport Wrapper from '../Wrapper';\nimport BannerRender from './BannerRender';\nimport buildPropsQuery from '../../helpers/build-props-query';\nimport { getClassModifiers } from '../../utils';\nimport getEntityRenderProps from '../../helpers/get-entity-render-props';\n\nconst Banner = ({ type, ...otherProps }) => {\n const router = useRouter();\n const { isPreview } = useContext(MainContext);\n const { asPath } = router;\n const { parent, entity, sizeId, propsToDisplay = [] } = otherProps;\n\n const { itemEntity } = parent;\n const { data, error, loading } = useQuery(getSingleEntitySchema, {\n variables: { id: entity || itemEntity }\n });\n\n if (loading) return '';\n if (error) return error.message;\n if (!data) return null;\n if (!sizeId) return null;\n\n const modifiers = getClassModifiers('banner', otherProps);\n const queryProps = buildPropsQuery(\n data,\n propsToDisplay.length\n ? flatten(propsToDisplay.map(({ propertiesToDisplay }) => propertiesToDisplay))\n : []\n );\n\n const { actionKey, action } = getEntityRenderProps(queryProps, data, isPreview);\n const bannerKey = `${sizeId}${asPath}`;\n\n return (\n <Wrapper className={type} modifiers={modifiers}>\n <BannerRender\n key={bannerKey}\n {...otherProps}\n action={action}\n actionKey={actionKey}\n asPath={asPath}\n />\n </Wrapper>\n );\n};\n\nBanner.propTypes = {\n type: PropTypes.string\n};\n\nBanner.defaultProps = {\n type: 'banner'\n};\n\nexport default Banner;\n"],"file":"Banner.js"}
|
|
@@ -6,14 +6,14 @@ function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (O
|
|
|
6
6
|
|
|
7
7
|
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
|
|
8
8
|
|
|
9
|
-
import { AdSlot } from 'react-dfp';
|
|
10
|
-
import PropTypes from 'prop-types';
|
|
11
9
|
import React from 'react';
|
|
12
|
-
import
|
|
10
|
+
import PropTypes from 'prop-types';
|
|
11
|
+
import { useQuery } from '@apollo/client';
|
|
13
12
|
import { generateSingleItemQuery, getCount } from '../../application/query';
|
|
14
|
-
import { buildBannerSizes, buildContextualTargeting, buildParsedAdunit, buildSizeMapping,
|
|
13
|
+
import { buildBannerSizes, buildContextualTargeting, buildParsedAdunit, buildSizeMapping, setCustomTargetings } from './helpers';
|
|
15
14
|
import { BANNER_QUERY_PROPS, COUNT_CONTENT_HIERARCHIES, GET_BANNER, PUBLISHED } from '../../constants';
|
|
16
15
|
import { withTitle } from '../../HOC';
|
|
16
|
+
import AdSlotRender from './AdSlotRender';
|
|
17
17
|
|
|
18
18
|
const BannerRender = _ref => {
|
|
19
19
|
let {
|
|
@@ -48,7 +48,6 @@ const BannerRender = _ref => {
|
|
|
48
48
|
},
|
|
49
49
|
skip: id && id !== itemId
|
|
50
50
|
});
|
|
51
|
-
const parsedTargetings = buildContextualTargeting(actionKey, entityRecordData, propsToDisplay);
|
|
52
51
|
const {
|
|
53
52
|
data: bannerData = {}
|
|
54
53
|
} = useQuery(generateSingleItemQuery(GET_BANNER, BANNER_QUERY_PROPS), {
|
|
@@ -57,16 +56,6 @@ const BannerRender = _ref => {
|
|
|
57
56
|
},
|
|
58
57
|
skip: !sizeId
|
|
59
58
|
});
|
|
60
|
-
const {
|
|
61
|
-
entityData
|
|
62
|
-
} = bannerData;
|
|
63
|
-
const {
|
|
64
|
-
sizes: bannerSizes
|
|
65
|
-
} = entityData || {};
|
|
66
|
-
const sizeMapping = buildSizeMapping(sizeId, bannerSizes);
|
|
67
|
-
const parsedSizes = buildBannerSizes(sizeId, bannerSizes, sizes);
|
|
68
|
-
const maxBannerHeight = getMaxBannerHeight(bannerSizes);
|
|
69
|
-
const minBannerHeight = getMinBannerHeight(bannerSizes);
|
|
70
59
|
const {
|
|
71
60
|
data = {}
|
|
72
61
|
} = useQuery(getCount(COUNT_CONTENT_HIERARCHIES), {
|
|
@@ -79,6 +68,15 @@ const BannerRender = _ref => {
|
|
|
79
68
|
}
|
|
80
69
|
}
|
|
81
70
|
});
|
|
71
|
+
const parsedTargetings = buildContextualTargeting(actionKey, entityRecordData, propsToDisplay);
|
|
72
|
+
const {
|
|
73
|
+
entityData
|
|
74
|
+
} = bannerData;
|
|
75
|
+
const {
|
|
76
|
+
sizes: bannerSizes
|
|
77
|
+
} = entityData || {};
|
|
78
|
+
const sizeMapping = buildSizeMapping(sizeId, bannerSizes);
|
|
79
|
+
const parsedSizes = buildBannerSizes(sizeId, bannerSizes, sizes);
|
|
82
80
|
const {
|
|
83
81
|
countContentHierarchies
|
|
84
82
|
} = data;
|
|
@@ -86,24 +84,18 @@ const BannerRender = _ref => {
|
|
|
86
84
|
const isContextualTargetingSet = propsToDisplay.length && parsedTargetings && Object.keys(parsedTargetings).length;
|
|
87
85
|
const isContextualTargetingReady = isContextualTargetingSet || !propsToDisplay.length;
|
|
88
86
|
const shouldShowBanner = parsedAdunit && parsedSizes && !!parsedSizes.length && isContextualTargetingReady;
|
|
89
|
-
if (!shouldShowBanner) return null;
|
|
90
87
|
const customTargetings = setCustomTargetings(targetings, cardBannerIndex);
|
|
91
|
-
const style = {
|
|
92
|
-
maxHeight: maxBannerHeight,
|
|
93
|
-
minHeight: minBannerHeight
|
|
94
|
-
};
|
|
95
88
|
|
|
96
89
|
const targetingArguments = _objectSpread(_objectSpread({}, parsedTargetings), customTargetings);
|
|
97
90
|
|
|
98
|
-
return /*#__PURE__*/React.createElement(
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
targetingArguments: targetingArguments
|
|
105
|
-
|
|
106
|
-
}));
|
|
91
|
+
return /*#__PURE__*/React.createElement(AdSlotRender, {
|
|
92
|
+
shouldShowBanner: !!shouldShowBanner,
|
|
93
|
+
sizeMapping: sizeMapping,
|
|
94
|
+
sizeId: sizeId,
|
|
95
|
+
parsedAdunit: parsedAdunit,
|
|
96
|
+
parsedSizes: parsedSizes,
|
|
97
|
+
targetingArguments: targetingArguments
|
|
98
|
+
});
|
|
107
99
|
};
|
|
108
100
|
|
|
109
101
|
BannerRender.propTypes = {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/components/Banner/BannerRender.js"],"names":["
|
|
1
|
+
{"version":3,"sources":["../../../src/components/Banner/BannerRender.js"],"names":["React","PropTypes","useQuery","generateSingleItemQuery","getCount","buildBannerSizes","buildContextualTargeting","buildParsedAdunit","buildSizeMapping","setCustomTargetings","BANNER_QUERY_PROPS","COUNT_CONTENT_HIERARCHIES","GET_BANNER","PUBLISHED","withTitle","AdSlotRender","BannerRender","baseAdunit","adunit","sizeId","sizes","propsToDisplay","entity","targetings","parent","asPath","action","actionKey","cardBannerIndex","otherProps","id","itemId","data","entityRecordData","variables","where","skip","bannerData","parentId","childEntity","_ilike","parsedTargetings","entityData","bannerSizes","sizeMapping","parsedSizes","countContentHierarchies","parsedAdunit","isContextualTargetingSet","length","Object","keys","isContextualTargetingReady","shouldShowBanner","customTargetings","targetingArguments","propTypes","object","isRequired","string","array","number","defaultProps"],"mappings":"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","sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\n\nimport { useQuery } from '@apollo/client';\n\nimport { generateSingleItemQuery, getCount } from '../../application/query';\nimport {\n buildBannerSizes,\n buildContextualTargeting,\n buildParsedAdunit,\n buildSizeMapping,\n setCustomTargetings\n} from './helpers';\nimport {\n BANNER_QUERY_PROPS,\n COUNT_CONTENT_HIERARCHIES,\n GET_BANNER,\n PUBLISHED\n} from '../../constants';\nimport { withTitle } from '../../HOC';\nimport AdSlotRender from './AdSlotRender';\n\nconst BannerRender = ({\n baseAdunit,\n adunit,\n sizeId,\n sizes,\n propsToDisplay,\n entity,\n targetings,\n parent,\n asPath,\n action,\n actionKey,\n cardBannerIndex,\n ...otherProps\n}) => {\n const { id } = otherProps;\n const { itemId } = parent;\n\n const { data: entityRecordData = {} } = useQuery(action, {\n variables: { where: { id: id || itemId } },\n skip: id && id !== itemId\n });\n\n const { data: bannerData = {} } = useQuery(\n generateSingleItemQuery(GET_BANNER, BANNER_QUERY_PROPS),\n {\n variables: { id: sizeId },\n skip: !sizeId\n }\n );\n\n const { data = {} } = useQuery(getCount(COUNT_CONTENT_HIERARCHIES), {\n variables: {\n where: {\n parentId: id || itemId,\n childEntity: {\n _ilike: `${PUBLISHED}_%`\n }\n }\n }\n });\n\n const parsedTargetings = buildContextualTargeting(actionKey, entityRecordData, propsToDisplay);\n\n const { entityData } = bannerData;\n const { sizes: bannerSizes } = entityData || {};\n\n const sizeMapping = buildSizeMapping(sizeId, bannerSizes);\n const parsedSizes = buildBannerSizes(sizeId, bannerSizes, sizes);\n\n const { countContentHierarchies } = data;\n\n const parsedAdunit = buildParsedAdunit(asPath, countContentHierarchies, baseAdunit, adunit);\n const isContextualTargetingSet =\n propsToDisplay.length && parsedTargetings && Object.keys(parsedTargetings).length;\n const isContextualTargetingReady = isContextualTargetingSet || !propsToDisplay.length;\n const shouldShowBanner =\n parsedAdunit && parsedSizes && !!parsedSizes.length && isContextualTargetingReady;\n\n const customTargetings = setCustomTargetings(targetings, cardBannerIndex);\n\n const targetingArguments = { ...parsedTargetings, ...customTargetings };\n\n return (\n <AdSlotRender\n shouldShowBanner={!!shouldShowBanner}\n sizeMapping={sizeMapping}\n sizeId={sizeId}\n parsedAdunit={parsedAdunit}\n parsedSizes={parsedSizes}\n targetingArguments={targetingArguments}\n />\n );\n};\n\nBannerRender.propTypes = {\n parent: PropTypes.object.isRequired,\n asPath: PropTypes.string.isRequired,\n action: PropTypes.object.isRequired,\n actionKey: PropTypes.string.isRequired,\n adunit: PropTypes.string,\n baseAdunit: PropTypes.string,\n sizeId: PropTypes.string,\n propsToDisplay: PropTypes.array,\n entity: PropTypes.string,\n targetings: PropTypes.string,\n sizes: PropTypes.string,\n cardBannerIndex: PropTypes.number\n};\n\nBannerRender.defaultProps = {\n adunit: '',\n baseAdunit: '',\n sizeId: '',\n propsToDisplay: [],\n entity: '',\n targetings: '',\n sizes: '',\n cardBannerIndex: null\n};\n\nexport default withTitle(BannerRender);\n"],"file":"BannerRender.js"}
|
|
@@ -12,7 +12,7 @@ import { useCookies } from 'react-cookie';
|
|
|
12
12
|
import { useRouter } from 'next/router';
|
|
13
13
|
import BlazeButton from '@blaze-react/button';
|
|
14
14
|
import { handleLogout } from '@blaze-cms/core-auth-ui';
|
|
15
|
-
import { useApolloClient } from '
|
|
15
|
+
import { useApolloClient } from '@apollo/client';
|
|
16
16
|
import PropTypes from 'prop-types';
|
|
17
17
|
import ClickWrapper from './ClickWrapper';
|
|
18
18
|
import BlazeLink from './BlazeLink';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/components/Button.js"],"names":["React","useState","Fragment","useCookies","useRouter","BlazeButton","handleLogout","useApolloClient","PropTypes","ClickWrapper","BlazeLink","withTitle","getClassModifiers","LOGOUT","renderChildren","updateChildrensParent","hasChildren","getClickWrapperOptions","Button","props","type","text","url","icon","name","style","children","clickAction","otherProps","client","router","isLogoutButton","cookies","blaze_auth","blazeCookie","showChildren","setShowChildren","checkIfButtonShouldRender","logout","reload","handleClick","buttonType","modifiers","currentProps","href","title","DynamicButton","parent","itemId","itemEntity","renderedChildren","onClose","shouldUseClickWrapper","wrapperProps","Wrapper","propTypes","string","size","oneOfType","arrayOf","node","defaultProps"],"mappings":";;;;;;;;;AAAA,OAAOA,KAAP,IAAgBC,QAAhB,EAA0BC,QAA1B,QAA0C,OAA1C;AACA,SAASC,UAAT,QAA2B,cAA3B;AACA,SAASC,SAAT,QAA0B,aAA1B;AACA,OAAOC,WAAP,MAAwB,qBAAxB;AACA,SAASC,YAAT,QAA6B,yBAA7B;AACA,SAASC,eAAT,QAAgC,
|
|
1
|
+
{"version":3,"sources":["../../src/components/Button.js"],"names":["React","useState","Fragment","useCookies","useRouter","BlazeButton","handleLogout","useApolloClient","PropTypes","ClickWrapper","BlazeLink","withTitle","getClassModifiers","LOGOUT","renderChildren","updateChildrensParent","hasChildren","getClickWrapperOptions","Button","props","type","text","url","icon","name","style","children","clickAction","otherProps","client","router","isLogoutButton","cookies","blaze_auth","blazeCookie","showChildren","setShowChildren","checkIfButtonShouldRender","logout","reload","handleClick","buttonType","modifiers","currentProps","href","title","DynamicButton","parent","itemId","itemEntity","renderedChildren","onClose","shouldUseClickWrapper","wrapperProps","Wrapper","propTypes","string","size","oneOfType","arrayOf","node","defaultProps"],"mappings":"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","sourcesContent":["import React, { useState, Fragment } from 'react';\nimport { useCookies } from 'react-cookie';\nimport { useRouter } from 'next/router';\nimport BlazeButton from '@blaze-react/button';\nimport { handleLogout } from '@blaze-cms/core-auth-ui';\nimport { useApolloClient } from '@apollo/client';\nimport PropTypes from 'prop-types';\nimport ClickWrapper from './ClickWrapper';\nimport BlazeLink from './BlazeLink';\nimport { withTitle } from '../HOC';\nimport { getClassModifiers } from '../utils';\nimport { LOGOUT } from '../constants';\nimport {\n renderChildren,\n updateChildrensParent,\n hasChildren,\n getClickWrapperOptions\n} from '../helpers';\n\nconst Button = props => {\n const { type, text, url, icon, name, style, children, clickAction, ...otherProps } = props;\n const client = useApolloClient();\n const router = useRouter();\n const isLogoutButton = clickAction === LOGOUT;\n const [cookies] = useCookies();\n const { blaze_auth: blazeCookie } = cookies;\n const [showChildren, setShowChildren] = useState(false);\n\n const checkIfButtonShouldRender = () => {\n if (isLogoutButton) return !!blazeCookie;\n if (!text && !icon) return false;\n return !!(url || hasChildren(children));\n };\n\n const logout = () => {\n handleLogout(client);\n url ? router.reload(url) : router.reload();\n };\n\n const handleClick = () => {\n if (isLogoutButton) logout();\n if (!url && !isLogoutButton) setShowChildren(!showChildren);\n };\n\n if (!checkIfButtonShouldRender()) return null;\n\n const buttonType = !text && icon ? 'icon' : type;\n const modifiers = getClassModifiers(buttonType, { icon, style, ...otherProps });\n const currentProps = url ? { href: url, title: name } : { name };\n const DynamicButton = url && !isLogoutButton ? BlazeLink : BlazeButton;\n updateChildrensParent(children, otherProps.parent.itemId, otherProps.parent.itemEntity);\n\n const renderedChildren = renderChildren(children, { onClose: handleClick });\n const { shouldUseClickWrapper, wrapperProps } = getClickWrapperOptions(children, props);\n const Wrapper = shouldUseClickWrapper ? ClickWrapper : Fragment;\n\n return (\n <Wrapper {...wrapperProps}>\n <DynamicButton className={modifiers} onClick={handleClick} {...currentProps}>\n {icon && <i className={icon} />}\n {text}\n </DynamicButton>\n {showChildren && renderedChildren}\n </Wrapper>\n );\n};\n\nButton.propTypes = {\n clickAction: PropTypes.string,\n text: PropTypes.string,\n name: PropTypes.string,\n type: PropTypes.string,\n url: PropTypes.string,\n size: PropTypes.string,\n icon: PropTypes.string,\n style: PropTypes.string,\n children: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.node), PropTypes.node])\n};\n\nButton.defaultProps = {\n clickAction: '',\n text: '',\n name: '',\n type: '',\n url: null,\n size: '',\n icon: '',\n style: '',\n children: []\n};\n\nexport default withTitle(Button);\n"],"file":"Button.js"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import _extends from "@babel/runtime/helpers/extends";
|
|
2
2
|
import _objectWithoutProperties from "@babel/runtime/helpers/objectWithoutProperties";
|
|
3
|
-
const _excluded = ["cardData", "gridModifier", "style", "displayCategory", "displayThumbnail", "displayTitle", "modifier", "entity", "propsToDisplay", "gtmChildren", "cardChildren", "name", "designConfig", "itemsPerRow", "enableCarousel", "bannerModifier", "priorityLimit"],
|
|
3
|
+
const _excluded = ["cardData", "gridModifier", "style", "displayCategory", "displayThumbnail", "displayTitle", "modifier", "entity", "propsToDisplay", "gtmChildren", "cardChildren", "name", "designConfig", "itemsPerRow", "enableCarousel", "bannerModifier", "priorityLimit", "enableAutoScroll", "autoScrollTimer"],
|
|
4
4
|
_excluded2 = ["baseAdunit", "id"];
|
|
5
5
|
import React, { useContext } from 'react';
|
|
6
6
|
import PropTypes from 'prop-types';
|
|
@@ -32,7 +32,9 @@ const CardContainer = _ref => {
|
|
|
32
32
|
itemsPerRow,
|
|
33
33
|
enableCarousel,
|
|
34
34
|
bannerModifier,
|
|
35
|
-
priorityLimit
|
|
35
|
+
priorityLimit,
|
|
36
|
+
enableAutoScroll,
|
|
37
|
+
autoScrollTimer
|
|
36
38
|
} = _ref,
|
|
37
39
|
cardProps = _objectWithoutProperties(_ref, _excluded);
|
|
38
40
|
|
|
@@ -48,7 +50,9 @@ const CardContainer = _ref => {
|
|
|
48
50
|
className: dynamicWrapperSizes,
|
|
49
51
|
modifiers: gridModifier,
|
|
50
52
|
itemsPerRow: itemsPerRow,
|
|
51
|
-
bannerModifier: bannerModifier
|
|
53
|
+
bannerModifier: bannerModifier,
|
|
54
|
+
enableAutoScroll: enableAutoScroll,
|
|
55
|
+
autoScrollTimer: autoScrollTimer
|
|
52
56
|
}, entities.map((_ref2, index) => {
|
|
53
57
|
let {
|
|
54
58
|
baseAdunit,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/components/Card/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","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"],"mappings":";;;;AAAA,OAAOA,KAAP,IAAgBC,UAAhB,QAAkC,OAAlC;AACA,OAAOC,SAAP,MAAsB,YAAtB;AACA,SAASC,WAAT,QAA4B,8BAA5B;AACA,SAASC,SAAT,QAA0B,WAA1B;AACA,OAAOC,MAAP,MAAmB,WAAnB;AACA,OAAOC,OAAP,MAAoB,YAApB;AACA,OAAOC,eAAP,MAA4B,oBAA5B;AACA,OAAOC,IAAP,MAAiB,QAAjB;AACA,SAASC,qBAAT,QAAsC,WAAtC;AACA,SAASC,qBAAT,EAAgCC,mBAAhC,QAA2D,eAA3D;AACA,SAASC,0BAAT,QAA2C,aAA3C;;AAEA,MAAMC,aAAa,GAAG,
|
|
1
|
+
{"version":3,"sources":["../../../src/components/Card/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","autoScrollTimer","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"],"mappings":";;;;AAAA,OAAOA,KAAP,IAAgBC,UAAhB,QAAkC,OAAlC;AACA,OAAOC,SAAP,MAAsB,YAAtB;AACA,SAASC,WAAT,QAA4B,8BAA5B;AACA,SAASC,SAAT,QAA0B,WAA1B;AACA,OAAOC,MAAP,MAAmB,WAAnB;AACA,OAAOC,OAAP,MAAoB,YAApB;AACA,OAAOC,eAAP,MAA4B,oBAA5B;AACA,OAAOC,IAAP,MAAiB,QAAjB;AACA,SAASC,qBAAT,QAAsC,WAAtC;AACA,SAASC,qBAAT,EAAgCC,mBAAhC,QAA2D,eAA3D;AACA,SAASC,0BAAT,QAA2C,aAA3C;;AAEA,MAAMC,aAAa,GAAG,QAqBhB;AAAA,MArBiB;AACrBC,IAAAA,QADqB;AAErBC,IAAAA,YAFqB;AAGrBC,IAAAA,KAHqB;AAIrBC,IAAAA,eAJqB;AAKrBC,IAAAA,gBALqB;AAMrBC,IAAAA,YANqB;AAOrBC,IAAAA,QAPqB;AAQrBC,IAAAA,MARqB;AASrBC,IAAAA,cATqB;AAUrBC,IAAAA,WAVqB;AAWrBC,IAAAA,YAXqB;AAYrBC,IAAAA,IAZqB;AAarBC,IAAAA,YAbqB;AAcrBC,IAAAA,WAdqB;AAerBC,IAAAA,cAfqB;AAgBrBC,IAAAA,cAhBqB;AAiBrBC,IAAAA,aAjBqB;AAkBrBC,IAAAA,gBAlBqB;AAmBrBC,IAAAA;AAnBqB,GAqBjB;AAAA,MADDC,SACC;;AACJ,QAAMC,QAAQ,GAAGxB,qBAAqB,CAACI,QAAD,EAAWmB,SAAX,CAAtC;AACA,QAAM;AAAEE,IAAAA;AAAF,MAAalC,UAAU,CAACE,WAAD,CAA7B;AACA,QAAMiC,uBAAuB,GAAGxB,0BAA0B,CAACU,cAAD,CAA1D;AACA,QAAMe,mBAAmB,GAAGT,cAAc,GACtC,EADsC,GAEtCnB,qBAAqB,CAAC,MAAD,EAASkB,WAAT,EAAsBD,YAAtB,CAFzB;AAGA,MAAIY,eAAe,GAAG,CAAtB;AACA,QAAMC,WAAW,GAAGX,cAAc,GAAGrB,eAAH,GAAqBD,OAAvD;AAEA,sBACE,oBAAC,WAAD;AACE,IAAA,SAAS,EAAE+B,mBADb;AAEE,IAAA,SAAS,EAAEtB,YAFb;AAGE,IAAA,WAAW,EAAEY,WAHf;AAIE,IAAA,cAAc,EAAEE,cAJlB;AAKE,IAAA,gBAAgB,EAAEE,gBALpB;AAME,IAAA,eAAe,EAAEC;AANnB,KAOGE,QAAQ,CAACM,GAAT,CAAa,QAAqCC,KAArC,KAA+C;AAAA,QAA9C;AAAEC,MAAAA,UAAF;AAAcC,MAAAA;AAAd,KAA8C;AAAA,QAAzBC,WAAyB;;AAC3D,UAAMC,UAAU,GAAGlC,mBAAmB,CAACiC,WAAD,EAActB,cAAd,CAAtC;AACA,UAAMwB,UAAU,GAAG,CAACX,MAAD,EAASM,KAAT,EAAgBM,IAAhB,CAAqB,GAArB,CAAnB;AACA,QAAIL,UAAJ,EAAgBJ,eAAe,IAAI,CAAnB;AAEhB,UAAMU,QAAQ,GAAGlB,aAAa,GAAG,CAAhB,IAAqBW,KAAK,GAAG,CAAR,IAAaX,aAAnD;AAEA,WAAOY,UAAU,gBACf,oBAAC,MAAD;AACE,MAAA,GAAG,EAAEI,UADP;AAEE,MAAA,MAAM,EAAEzB,MAFV;AAGE,MAAA,UAAU,EAAEqB;AAHd,OAIME,WAJN;AAKE,MAAA,QAAQ,EAAExB,QALZ;AAME,MAAA,eAAe,EAAEkB;AANnB,OADe,gBAUf,oBAAC,IAAD;AACE,MAAA,GAAG,EAAEK,EADP;AAEE,MAAA,EAAE,EAAEA,EAFN;AAGE,MAAA,cAAc,EAAEf,cAHlB;AAIE,MAAA,MAAM,EAAEP,MAJV;AAKE,MAAA,cAAc,EAAEwB,UALlB;AAME,MAAA,uBAAuB,EAAET,uBAN3B;AAOE,MAAA,QAAQ,EAAEhB,QAPZ;AAQE,MAAA,KAAK,EAAEJ,KART;AASE,MAAA,YAAY,EAAEQ,YAThB;AAUE,MAAA,WAAW,EAAED,WAVf;AAWE,MAAA,KAAK,EAAEE,IAXT;AAYE,MAAA,YAAY,EAAEV,YAZhB;AAaE,MAAA,WAAW,EAAE6B,WAbf;AAcE,MAAA,eAAe,EAAE3B,eAdnB;AAeE,MAAA,gBAAgB,EAAEC,gBAfpB;AAgBE,MAAA,YAAY,EAAEC,YAhBhB;AAiBE,MAAA,QAAQ,EAAE6B;AAjBZ,OAkBMJ,WAlBN,EAVF;AA+BD,GAtCA,CAPH,CADF;AAiDD,CAhFD;;AAkFA/B,aAAa,CAACoC,SAAd,GAA0B;AACxBnC,EAAAA,QAAQ,EAAEZ,SAAS,CAACgD,KAAV,CAAgBC,UADF;AAExB1B,EAAAA,IAAI,EAAEvB,SAAS,CAACkD,MAFQ;AAGxB/B,EAAAA,MAAM,EAAEnB,SAAS,CAACkD,MAAV,CAAiBD,UAHD;AAIxBpC,EAAAA,YAAY,EAAEb,SAAS,CAACkD,MAJA;AAKxB7B,EAAAA,WAAW,EAAErB,SAAS,CAACmD,SAAV,CAAoB,CAACnD,SAAS,CAACoD,OAAV,CAAkBpD,SAAS,CAACqD,IAA5B,CAAD,EAAoCrD,SAAS,CAACqD,IAA9C,CAApB,CALW;AAMxB/B,EAAAA,YAAY,EAAEtB,SAAS,CAACmD,SAAV,CAAoB,CAACnD,SAAS,CAACoD,OAAV,CAAkBpD,SAAS,CAACqD,IAA5B,CAAD,EAAoCrD,SAAS,CAACqD,IAA9C,CAApB,CANU;AAOxBjC,EAAAA,cAAc,EAAEpB,SAAS,CAACgD,KAPF;AAQxBjC,EAAAA,eAAe,EAAEf,SAAS,CAACsD,IARH;AASxBtC,EAAAA,gBAAgB,EAAEhB,SAAS,CAACsD,IATJ;AAUxBrC,EAAAA,YAAY,EAAEjB,SAAS,CAACsD,IAVA;AAWxBpC,EAAAA,QAAQ,EAAElB,SAAS,CAACkD,MAXI;AAYxBpC,EAAAA,KAAK,EAAEd,SAAS,CAACkD,MAZO;AAaxB1B,EAAAA,YAAY,EAAExB,SAAS,CAACuD,MAbA;AAcxB9B,EAAAA,WAAW,EAAEzB,SAAS,CAACwD,MAdC;AAexB9B,EAAAA,cAAc,EAAE1B,SAAS,CAACsD,IAfF;AAgBxB3B,EAAAA,cAAc,EAAE3B,SAAS,CAACkD,MAhBF;AAiBxBtB,EAAAA,aAAa,EAAE5B,SAAS,CAACwD;AAjBD,CAA1B;AAoBA7C,aAAa,CAAC8C,YAAd,GAA6B;AAC3BpC,EAAAA,WAAW,EAAE,EADc;AAE3BC,EAAAA,YAAY,EAAE,EAFa;AAG3BC,EAAAA,IAAI,EAAE,EAHqB;AAI3BV,EAAAA,YAAY,EAAE,EAJa;AAK3BO,EAAAA,cAAc,EAAE,EALW;AAM3BL,EAAAA,eAAe,EAAE,IANU;AAO3BC,EAAAA,gBAAgB,EAAE,IAPS;AAQ3BC,EAAAA,YAAY,EAAE,IARa;AAS3BC,EAAAA,QAAQ,EAAE,EATiB;AAU3BJ,EAAAA,KAAK,EAAE,UAVoB;AAW3BU,EAAAA,YAAY,EAAE,EAXa;AAY3BC,EAAAA,WAAW,EAAE,CAZc;AAa3BC,EAAAA,cAAc,EAAE,KAbW;AAc3BC,EAAAA,cAAc,EAAE,EAdW;AAe3BC,EAAAA,aAAa,EAAE;AAfY,CAA7B;AAkBA,eAAe1B,SAAS,CAACS,aAAD,CAAxB","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 autoScrollTimer,\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 {...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};\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};\n\nexport default withTitle(CardContainer);\n"],"file":"CardContainer.js"}
|
|
@@ -3,7 +3,7 @@ import _objectWithoutProperties from "@babel/runtime/helpers/objectWithoutProper
|
|
|
3
3
|
const _excluded = ["entity", "propsToDisplay", "itemsToDisplay"],
|
|
4
4
|
_excluded2 = ["gridModifier"];
|
|
5
5
|
import React from 'react';
|
|
6
|
-
import { useQuery } from '@apollo/
|
|
6
|
+
import { useQuery } from '@apollo/client';
|
|
7
7
|
import PropTypes from 'prop-types';
|
|
8
8
|
import { getSingleEntitySchema } from '../../application/query';
|
|
9
9
|
import CardRender from './CardRender';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/components/Card/CardFactory.js"],"names":["React","useQuery","PropTypes","getSingleEntitySchema","CardRender","buildPropsQuery","getGenericProps","checkPropsToUse","WITH_BANNER","CardFactory","entity","propsToDisplay","itemsToDisplay","cardProps","data","error","loading","variables","id","message","propsToDisplayValues","extraProps","gridModifier","cardRenderProps","extraModifierForBanner","banner","propTypes","string","isRequired","array","defaultProps"],"mappings":";;;;AAAA,OAAOA,KAAP,MAAkB,OAAlB;AACA,SAASC,QAAT,QAAyB,
|
|
1
|
+
{"version":3,"sources":["../../../src/components/Card/CardFactory.js"],"names":["React","useQuery","PropTypes","getSingleEntitySchema","CardRender","buildPropsQuery","getGenericProps","checkPropsToUse","WITH_BANNER","CardFactory","entity","propsToDisplay","itemsToDisplay","cardProps","data","error","loading","variables","id","message","propsToDisplayValues","extraProps","gridModifier","cardRenderProps","extraModifierForBanner","banner","propTypes","string","isRequired","array","defaultProps"],"mappings":";;;;AAAA,OAAOA,KAAP,MAAkB,OAAlB;AACA,SAASC,QAAT,QAAyB,gBAAzB;AACA,OAAOC,SAAP,MAAsB,YAAtB;AACA,SAASC,qBAAT,QAAsC,yBAAtC;AACA,OAAOC,UAAP,MAAuB,cAAvB;AACA,SAASC,eAAT,EAA0BC,eAA1B,EAA2CC,eAA3C,QAAkE,eAAlE;AACA,SAASC,WAAT,QAA4B,iBAA5B;;AAEA,MAAMC,WAAW,GAAG,QAA8D;AAAA,MAA7D;AAAEC,IAAAA,MAAF;AAAUC,IAAAA,cAAV;AAA0BC,IAAAA;AAA1B,GAA6D;AAAA,MAAhBC,SAAgB;;AAChF,QAAM;AAAEC,IAAAA,IAAF;AAAQC,IAAAA,KAAR;AAAeC,IAAAA;AAAf,MAA2Bf,QAAQ,CAACE,qBAAD,EAAwB;AAC/Dc,IAAAA,SAAS,EAAE;AAAEC,MAAAA,EAAE,EAAER;AAAN;AADoD,GAAxB,CAAzC;AAIA,MAAIM,OAAJ,EAAa,OAAO,EAAP;AACb,MAAID,KAAJ,EAAW,OAAOA,KAAK,CAACI,OAAb;AACX,MAAI,CAACL,IAAL,EAAW,OAAO,IAAP;AAEX,QAAMM,oBAAoB,GAAGb,eAAe,CAACI,cAAD,CAA5C;AACA,QAAMU,UAAU,GAAGhB,eAAe,CAACS,IAAD,EAAOM,oBAAP,EAA6BP,SAA7B,CAAf,IAA0D,EAA7E;;AACA,2BAA6CP,eAAe,CAACO,SAAD,CAA5D;AAAA,QAAM;AAAES,IAAAA;AAAF,GAAN;AAAA,QAAyBC,eAAzB;;AACA,QAAMC,sBAAsB,GAAGD,eAAe,CAACE,MAAhB,GAAyBjB,WAAzB,GAAuC,EAAtE;AAEA,sBACE,oBAAC,UAAD;AACE,IAAA,YAAY,EAAG,GAAEc,YAAa,GAAEE,sBAAuB,EADzD;AAEE,IAAA,cAAc,EAAEA,sBAFlB;AAGE,IAAA,MAAM,EAAEd,MAHV;AAIE,IAAA,cAAc,EAAEE,cAJlB;AAKE,IAAA,cAAc,EAAED,cALlB;AAME,IAAA,YAAY,EAAEU;AANhB,KAOME,eAPN,EADF;AAWD,CAzBD;;AA2BAd,WAAW,CAACiB,SAAZ,GAAwB;AACtBhB,EAAAA,MAAM,EAAER,SAAS,CAACyB,MAAV,CAAiBC,UADH;AAEtBjB,EAAAA,cAAc,EAAET,SAAS,CAAC2B,KAFJ;AAGtBjB,EAAAA,cAAc,EAAEV,SAAS,CAAC2B;AAHJ,CAAxB;AAMApB,WAAW,CAACqB,YAAZ,GAA2B;AACzBnB,EAAAA,cAAc,EAAE,EADS;AAEzBC,EAAAA,cAAc,EAAE;AAFS,CAA3B;AAKA,eAAeH,WAAf","sourcesContent":["import React from 'react';\nimport { useQuery } from '@apollo/client';\nimport PropTypes from 'prop-types';\nimport { getSingleEntitySchema } from '../../application/query';\nimport CardRender from './CardRender';\nimport { buildPropsQuery, getGenericProps, checkPropsToUse } from '../../helpers';\nimport { WITH_BANNER } from '../../constants';\n\nconst CardFactory = ({ entity, propsToDisplay, itemsToDisplay, ...cardProps }) => {\n const { data, error, loading } = useQuery(getSingleEntitySchema, {\n variables: { id: entity }\n });\n\n if (loading) return '';\n if (error) return error.message;\n if (!data) return null;\n\n const propsToDisplayValues = checkPropsToUse(propsToDisplay);\n const extraProps = buildPropsQuery(data, propsToDisplayValues, cardProps) || '';\n const { gridModifier, ...cardRenderProps } = getGenericProps(cardProps);\n const extraModifierForBanner = cardRenderProps.banner ? WITH_BANNER : '';\n\n return (\n <CardRender\n gridModifier={`${gridModifier}${extraModifierForBanner}`}\n bannerModifier={extraModifierForBanner}\n entity={entity}\n itemsToDisplay={itemsToDisplay}\n propsToDisplay={propsToDisplay}\n entityFields={extraProps}\n {...cardRenderProps}\n />\n );\n};\n\nCardFactory.propTypes = {\n entity: PropTypes.string.isRequired,\n propsToDisplay: PropTypes.array,\n itemsToDisplay: PropTypes.array\n};\n\nCardFactory.defaultProps = {\n propsToDisplay: [],\n itemsToDisplay: []\n};\n\nexport default CardFactory;\n"],"file":"CardFactory.js"}
|
|
@@ -8,7 +8,7 @@ function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (O
|
|
|
8
8
|
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
|
|
9
9
|
|
|
10
10
|
import React, { useContext } from 'react';
|
|
11
|
-
import { useQuery } from '
|
|
11
|
+
import { useQuery } from '@apollo/client';
|
|
12
12
|
import dynamic from 'next/dynamic';
|
|
13
13
|
import PropTypes from 'prop-types';
|
|
14
14
|
import { MainContext } from '@blaze-cms/nextjs-components';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/components/Card/CardRender.js"],"names":["React","useContext","useQuery","dynamic","PropTypes","MainContext","generateSingleItemQuery","SEARCH_PUBLISHED_CONTENT","AND","useGetEntitySchemasAsObj","useGetImages","getUpdatedFilterBy","getEntityData","getRequiredSchemas","sortResponseData","getUnpublishedEntityName","renderChildren","splitChildren","removeExtraItems","appendImages","filtersSetup","filterQuerySetup","shouldSkipSingleQuery","shouldReturn","CardContainer","CardRender","entity","entityFields","itemsToDisplay","children","otherProps","parent","itemId","itemEntity","filterBy","filterByProperty","sortby","sort","sortProperties","operator","filterOperator","updatedSortProperties","length","unshift","propsToDisplay","sortbyFilters","map","filter","Boolean","flat","variableProps","itemEntityUpdated","data","mainSchemas","loading","_loading","error","_error","isPreview","entityType","docType","getAction","queryProps","inheritedFilters","currentSchema","filterEntitySchema","entitySameAsCurrentItemEntity","action","filterEntityRelations","getEntitySchemas","Object","values","entityData","_err","_load","variables","id","skip","requiredSchema","schemaLoading","schemaError","updatedFilterBy","limit","cardsError","cardsLoading","imageIds","imageId","imagesData","imagesLoading","isLoading","hasError","message","results","cardData","orderedData","regularChildren","gtmChildren","name","updatedCards","propTypes","oneOfType","arrayOf","node","string","isRequired","array","defaultProps"],"mappings":"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","sourcesContent":["import React, { useContext } from 'react';\nimport { useQuery } from 'react-apollo';\nimport dynamic from 'next/dynamic';\nimport PropTypes from 'prop-types';\nimport { MainContext } from '@blaze-cms/nextjs-components';\nimport { generateSingleItemQuery } from '../../application/query';\nimport { SEARCH_PUBLISHED_CONTENT, AND } from '../../constants';\nimport { useGetEntitySchemasAsObj, useGetImages } from '../../hooks';\nimport {\n getUpdatedFilterBy,\n getEntityData,\n getRequiredSchemas,\n sortResponseData,\n getUnpublishedEntityName,\n renderChildren,\n splitChildren,\n removeExtraItems,\n appendImages\n} from '../../helpers';\nimport { filtersSetup, filterQuerySetup, shouldSkipSingleQuery, shouldReturn } from './helpers';\n\nconst CardContainer = dynamic(() => import('./CardContainer'));\n\nconst CardRender = ({ entity, entityFields, itemsToDisplay, children, ...otherProps }) => {\n const {\n parent: { itemId, itemEntity },\n filterBy = [],\n filterByProperty = [],\n sortby,\n sort,\n sortProperties = [],\n operator: filterOperator = AND\n } = otherProps;\n\n const updatedSortProperties = [...sortProperties];\n if (!updatedSortProperties.length && sort) {\n updatedSortProperties.unshift({ sort, propsToDisplay: sortby });\n }\n\n const sortbyFilters = updatedSortProperties\n .map(({ propsToDisplay }) => propsToDisplay)\n .filter(Boolean)\n .flat();\n\n const variableProps = {\n ...otherProps,\n sortProperties: updatedSortProperties,\n sort: null,\n sortby: null\n };\n\n const itemEntityUpdated = getUnpublishedEntityName(itemEntity);\n const { data: mainSchemas = {}, loading: _loading, error: _error } = useGetEntitySchemasAsObj([\n itemEntityUpdated,\n entity\n ]);\n\n const { isPreview } = useContext(MainContext);\n const { entityType, docType } = getEntityData(entity);\n const {\n getAction,\n queryProps,\n inheritedFilters,\n currentSchema,\n filterEntitySchema,\n entitySameAsCurrentItemEntity,\n action,\n filterEntityRelations\n } = filtersSetup({\n entityFields,\n entityType,\n filterBy,\n filterByProperty,\n entity,\n getEntitySchemas: Object.values(mainSchemas),\n isPreview,\n itemEntityUpdated\n });\n const { data: { entityData = {} } = {}, error: _err, loading: _load } = useQuery(\n generateSingleItemQuery(getAction, queryProps),\n {\n variables: { id: itemId },\n skip: shouldSkipSingleQuery(_loading, getAction, queryProps)\n }\n );\n\n const {\n data: requiredSchema = {},\n loading: schemaLoading,\n error: schemaError\n } = useGetEntitySchemasAsObj(\n getRequiredSchemas([...filterByProperty, ...sortbyFilters], filterEntitySchema),\n _loading\n );\n\n const updatedFilterBy = getUpdatedFilterBy(\n inheritedFilters,\n entityData,\n currentSchema,\n filterEntitySchema,\n itemId,\n variableProps\n );\n\n const { limit, variables } = filterQuerySetup({\n getEntitySchemas: Object.values(requiredSchema),\n entity,\n updatedFilterBy,\n variableProps,\n docType,\n filterOperator,\n filterEntityRelations,\n itemsToDisplay,\n entitySameAsCurrentItemEntity\n });\n const { data, error: cardsError, loading: cardsLoading } = useQuery(action, {\n variables,\n skip: shouldReturn(!updatedFilterBy, _loading, _load, schemaLoading, _error, _err, schemaError)\n });\n const imageIds = itemsToDisplay.map(({ imageId }) => imageId).filter(Boolean);\n const { data: imagesData, loading: imagesLoading } = useGetImages(imageIds, true);\n const isLoading = shouldReturn(_loading, _load, schemaLoading, cardsLoading, imagesLoading);\n const hasError = shouldReturn(_error, _err, schemaError);\n\n if (!updatedFilterBy) return null;\n if (isLoading) return '';\n if (hasError) return null;\n if (cardsError) return cardsError.message;\n\n let { results: cardData } = data[SEARCH_PUBLISHED_CONTENT];\n if (!cardData || !cardData.length) return null;\n cardData = entitySameAsCurrentItemEntity ? removeExtraItems(cardData, limit, itemId) : cardData;\n const orderedData = sortResponseData(cardData, itemsToDisplay);\n const { regularChildren, gtmChildren } = splitChildren(children, cardData, entity, {\n name: variableProps.name\n });\n const updatedCards = appendImages(imagesData, orderedData, itemsToDisplay);\n\n return (\n <>\n {gtmChildren && renderChildren(gtmChildren)}\n <CardContainer\n cardData={updatedCards}\n entity={entity}\n gtmChildren={gtmChildren}\n cardChildren={regularChildren}\n {...variableProps}\n />\n </>\n );\n};\n\nCardRender.propTypes = {\n children: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.node), PropTypes.node]),\n entity: PropTypes.string.isRequired,\n entityFields: PropTypes.string.isRequired,\n itemsToDisplay: PropTypes.array\n};\n\nCardRender.defaultProps = {\n children: [],\n itemsToDisplay: []\n};\n\nexport default CardRender;\n"],"file":"CardRender.js"}
|
|
1
|
+
{"version":3,"sources":["../../../src/components/Card/CardRender.js"],"names":["React","useContext","useQuery","dynamic","PropTypes","MainContext","generateSingleItemQuery","SEARCH_PUBLISHED_CONTENT","AND","useGetEntitySchemasAsObj","useGetImages","getUpdatedFilterBy","getEntityData","getRequiredSchemas","sortResponseData","getUnpublishedEntityName","renderChildren","splitChildren","removeExtraItems","appendImages","filtersSetup","filterQuerySetup","shouldSkipSingleQuery","shouldReturn","CardContainer","CardRender","entity","entityFields","itemsToDisplay","children","otherProps","parent","itemId","itemEntity","filterBy","filterByProperty","sortby","sort","sortProperties","operator","filterOperator","updatedSortProperties","length","unshift","propsToDisplay","sortbyFilters","map","filter","Boolean","flat","variableProps","itemEntityUpdated","data","mainSchemas","loading","_loading","error","_error","isPreview","entityType","docType","getAction","queryProps","inheritedFilters","currentSchema","filterEntitySchema","entitySameAsCurrentItemEntity","action","filterEntityRelations","getEntitySchemas","Object","values","entityData","_err","_load","variables","id","skip","requiredSchema","schemaLoading","schemaError","updatedFilterBy","limit","cardsError","cardsLoading","imageIds","imageId","imagesData","imagesLoading","isLoading","hasError","message","results","cardData","orderedData","regularChildren","gtmChildren","name","updatedCards","propTypes","oneOfType","arrayOf","node","string","isRequired","array","defaultProps"],"mappings":"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","sourcesContent":["import React, { useContext } from 'react';\nimport { useQuery } from '@apollo/client';\nimport dynamic from 'next/dynamic';\nimport PropTypes from 'prop-types';\nimport { MainContext } from '@blaze-cms/nextjs-components';\nimport { generateSingleItemQuery } from '../../application/query';\nimport { SEARCH_PUBLISHED_CONTENT, AND } from '../../constants';\nimport { useGetEntitySchemasAsObj, useGetImages } from '../../hooks';\nimport {\n getUpdatedFilterBy,\n getEntityData,\n getRequiredSchemas,\n sortResponseData,\n getUnpublishedEntityName,\n renderChildren,\n splitChildren,\n removeExtraItems,\n appendImages\n} from '../../helpers';\nimport { filtersSetup, filterQuerySetup, shouldSkipSingleQuery, shouldReturn } from './helpers';\n\nconst CardContainer = dynamic(() => import('./CardContainer'));\n\nconst CardRender = ({ entity, entityFields, itemsToDisplay, children, ...otherProps }) => {\n const {\n parent: { itemId, itemEntity },\n filterBy = [],\n filterByProperty = [],\n sortby,\n sort,\n sortProperties = [],\n operator: filterOperator = AND\n } = otherProps;\n\n const updatedSortProperties = [...sortProperties];\n if (!updatedSortProperties.length && sort) {\n updatedSortProperties.unshift({ sort, propsToDisplay: sortby });\n }\n\n const sortbyFilters = updatedSortProperties\n .map(({ propsToDisplay }) => propsToDisplay)\n .filter(Boolean)\n .flat();\n\n const variableProps = {\n ...otherProps,\n sortProperties: updatedSortProperties,\n sort: null,\n sortby: null\n };\n\n const itemEntityUpdated = getUnpublishedEntityName(itemEntity);\n const { data: mainSchemas = {}, loading: _loading, error: _error } = useGetEntitySchemasAsObj([\n itemEntityUpdated,\n entity\n ]);\n\n const { isPreview } = useContext(MainContext);\n const { entityType, docType } = getEntityData(entity);\n const {\n getAction,\n queryProps,\n inheritedFilters,\n currentSchema,\n filterEntitySchema,\n entitySameAsCurrentItemEntity,\n action,\n filterEntityRelations\n } = filtersSetup({\n entityFields,\n entityType,\n filterBy,\n filterByProperty,\n entity,\n getEntitySchemas: Object.values(mainSchemas),\n isPreview,\n itemEntityUpdated\n });\n const { data: { entityData = {} } = {}, error: _err, loading: _load } = useQuery(\n generateSingleItemQuery(getAction, queryProps),\n {\n variables: { id: itemId },\n skip: shouldSkipSingleQuery(_loading, getAction, queryProps)\n }\n );\n\n const {\n data: requiredSchema = {},\n loading: schemaLoading,\n error: schemaError\n } = useGetEntitySchemasAsObj(\n getRequiredSchemas([...filterByProperty, ...sortbyFilters], filterEntitySchema),\n _loading\n );\n\n const updatedFilterBy = getUpdatedFilterBy(\n inheritedFilters,\n entityData,\n currentSchema,\n filterEntitySchema,\n itemId,\n variableProps\n );\n\n const { limit, variables } = filterQuerySetup({\n getEntitySchemas: Object.values(requiredSchema),\n entity,\n updatedFilterBy,\n variableProps,\n docType,\n filterOperator,\n filterEntityRelations,\n itemsToDisplay,\n entitySameAsCurrentItemEntity\n });\n const { data, error: cardsError, loading: cardsLoading } = useQuery(action, {\n variables,\n skip: shouldReturn(!updatedFilterBy, _loading, _load, schemaLoading, _error, _err, schemaError)\n });\n const imageIds = itemsToDisplay.map(({ imageId }) => imageId).filter(Boolean);\n const { data: imagesData, loading: imagesLoading } = useGetImages(imageIds, true);\n const isLoading = shouldReturn(_loading, _load, schemaLoading, cardsLoading, imagesLoading);\n const hasError = shouldReturn(_error, _err, schemaError);\n\n if (!updatedFilterBy) return null;\n if (isLoading) return '';\n if (hasError) return null;\n if (cardsError) return cardsError.message;\n\n let { results: cardData } = data[SEARCH_PUBLISHED_CONTENT];\n if (!cardData || !cardData.length) return null;\n cardData = entitySameAsCurrentItemEntity ? removeExtraItems(cardData, limit, itemId) : cardData;\n const orderedData = sortResponseData(cardData, itemsToDisplay);\n const { regularChildren, gtmChildren } = splitChildren(children, cardData, entity, {\n name: variableProps.name\n });\n const updatedCards = appendImages(imagesData, orderedData, itemsToDisplay);\n\n return (\n <>\n {gtmChildren && renderChildren(gtmChildren)}\n <CardContainer\n cardData={updatedCards}\n entity={entity}\n gtmChildren={gtmChildren}\n cardChildren={regularChildren}\n {...variableProps}\n />\n </>\n );\n};\n\nCardRender.propTypes = {\n children: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.node), PropTypes.node]),\n entity: PropTypes.string.isRequired,\n entityFields: PropTypes.string.isRequired,\n itemsToDisplay: PropTypes.array\n};\n\nCardRender.defaultProps = {\n children: [],\n itemsToDisplay: []\n};\n\nexport default CardRender;\n"],"file":"CardRender.js"}
|
|
@@ -4,7 +4,7 @@ function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (O
|
|
|
4
4
|
|
|
5
5
|
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
|
|
6
6
|
|
|
7
|
-
import { getStringTypeProps } from '@blaze-cms/utils';
|
|
7
|
+
import { getStringTypeProps } from '@blaze-cms/utils/src/helpers';
|
|
8
8
|
import { getGenericRenderVariables, buildRawQueryBase, buildSetFilters } from '../../../helpers';
|
|
9
9
|
import { DEFAULT_LIMIT } from '../../../constants';
|
|
10
10
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../src/components/Card/helpers/filter-query-setup.js"],"names":["getStringTypeProps","getGenericRenderVariables","buildRawQueryBase","buildSetFilters","DEFAULT_LIMIT","filterQuerySetup","getEntitySchemas","entity","updatedFilterBy","variableProps","docType","filterOperator","filterEntityRelations","itemsToDisplay","entitySameAsCurrentItemEntity","stringProps","filterValues","length","filterBy","rawQuery","bool","relations","addListFiltersToQuery","limit","settingsLimit","requestLimit","Number","variables","JSON","stringify"],"mappings":";;;;;;AAAA,SAASA,kBAAT,QAAmC,
|
|
1
|
+
{"version":3,"sources":["../../../../src/components/Card/helpers/filter-query-setup.js"],"names":["getStringTypeProps","getGenericRenderVariables","buildRawQueryBase","buildSetFilters","DEFAULT_LIMIT","filterQuerySetup","getEntitySchemas","entity","updatedFilterBy","variableProps","docType","filterOperator","filterEntityRelations","itemsToDisplay","entitySameAsCurrentItemEntity","stringProps","filterValues","length","filterBy","rawQuery","bool","relations","addListFiltersToQuery","limit","settingsLimit","requestLimit","Number","variables","JSON","stringify"],"mappings":";;;;;;AAAA,SAASA,kBAAT,QAAmC,8BAAnC;AACA,SAASC,yBAAT,EAAoCC,iBAApC,EAAuDC,eAAvD,QAA8E,kBAA9E;AACA,SAASC,aAAT,QAA8B,oBAA9B;;AAEA,MAAMC,gBAAgB,GAAG,CAAC;AACxBC,EAAAA,gBADwB;AAExBC,EAAAA,MAFwB;AAGxBC,EAAAA,eAHwB;AAIxBC,EAAAA,aAJwB;AAKxBC,EAAAA,OALwB;AAMxBC,EAAAA,cANwB;AAOxBC,EAAAA,qBAPwB;AAQxBC,EAAAA,cARwB;AASxBC,EAAAA;AATwB,CAAD,KAUnB;AACJ,QAAMC,WAAW,GAAGf,kBAAkB,CAACO,MAAD,EAASK,qBAAT,EAAgCN,gBAAhC,CAAtC;AACA,QAAMU,YAAY,GAChBR,eAAe,IAAIA,eAAe,CAACS,MAAnC,GACId,eAAe,iCAAMM,aAAN;AAAqBS,IAAAA,QAAQ,EAAEV;AAA/B,KADnB,GAEIL,eAAe,CAACM,aAAD,CAHrB;AAKA,QAAMU,QAAQ,GAAG;AACfC,IAAAA,IAAI,EAAElB,iBAAiB,CAAC;AACtBQ,MAAAA,OADsB;AAEtBM,MAAAA,YAFsB;AAGtBL,MAAAA,cAHsB;AAItBU,MAAAA,SAAS,EAAET,qBAJW;AAKtBG,MAAAA,WALsB;AAMtBF,MAAAA,cANsB;AAOtBS,MAAAA,qBAAqB,EAAE;AAPD,KAAD;AADR,GAAjB,CAPI,CAmBJ;;AACA,QAAM;AAAEC,IAAAA,KAAK,EAAEC;AAAT,MAA2Bf,aAAjC;AACA,QAAMc,KAAK,GAAGC,aAAa,IAAIpB,aAA/B,CArBI,CAqB0C;;AAC9C,QAAMqB,YAAY,GAAGX,6BAA6B,GAAGY,MAAM,CAACH,KAAD,CAAN,GAAgB,CAAnB,GAAuBA,KAAzE;AACA,QAAMI,SAAS,GAAG1B,yBAAyB,CACzCW,qBADyC,kCAEpCH,aAFoC;AAErBc,IAAAA,KAAK,EAAEE;AAFc,MAGzCV,WAHyC,EAIzCa,IAAI,CAACC,SAAL,CAAeV,QAAf,CAJyC,CAA3C;AAOA,SAAO;AAAEQ,IAAAA,SAAF;AAAaJ,IAAAA;AAAb,GAAP;AACD,CAzCD;;AA2CA,eAAelB,gBAAf","sourcesContent":["import { getStringTypeProps } from '@blaze-cms/utils/src/helpers';\nimport { getGenericRenderVariables, buildRawQueryBase, buildSetFilters } from '../../../helpers';\nimport { DEFAULT_LIMIT } from '../../../constants';\n\nconst filterQuerySetup = ({\n getEntitySchemas,\n entity,\n updatedFilterBy,\n variableProps,\n docType,\n filterOperator,\n filterEntityRelations,\n itemsToDisplay,\n entitySameAsCurrentItemEntity\n}) => {\n const stringProps = getStringTypeProps(entity, filterEntityRelations, getEntitySchemas);\n const filterValues =\n updatedFilterBy && updatedFilterBy.length\n ? buildSetFilters({ ...variableProps, filterBy: updatedFilterBy })\n : buildSetFilters(variableProps);\n\n const rawQuery = {\n bool: buildRawQueryBase({\n docType,\n filterValues,\n filterOperator,\n relations: filterEntityRelations,\n stringProps,\n itemsToDisplay,\n addListFiltersToQuery: true\n })\n };\n\n // increase limit to get extra item in case results contain current parent\n const { limit: settingsLimit } = variableProps;\n const limit = settingsLimit || DEFAULT_LIMIT; // all falsey should use default\n const requestLimit = entitySameAsCurrentItemEntity ? Number(limit) + 1 : limit;\n const variables = getGenericRenderVariables(\n filterEntityRelations,\n { ...variableProps, limit: requestLimit },\n stringProps,\n JSON.stringify(rawQuery)\n );\n\n return { variables, limit };\n};\n\nexport default filterQuerySetup;\n"],"file":"filter-query-setup.js"}
|