@blaze-cms/react-page-builder 0.127.0-project-admin-customisations.2 → 0.127.0
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 +3 -8
- package/README.md +4 -0
- package/lib/HOC/withInfiniteScroll.js +23 -21
- package/lib/HOC/withInfiniteScroll.js.map +1 -1
- package/lib/components/Banner/Banner.js +3 -3
- package/lib/components/Banner/Banner.js.map +1 -1
- package/lib/components/Banner/BannerRender.js +5 -5
- package/lib/components/Banner/BannerRender.js.map +1 -1
- package/lib/components/Banner/helpers.js +2 -2
- package/lib/components/Banner/helpers.js.map +1 -1
- package/lib/components/Breadcrumb/Breadcrumb.js +11 -11
- package/lib/components/Breadcrumb/Breadcrumb.js.map +1 -1
- package/lib/components/Card/CardContainer.js +3 -3
- package/lib/components/Card/CardContainer.js.map +1 -1
- package/lib/components/Card/CardRender.js +4 -4
- package/lib/components/Card/CardRender.js.map +1 -1
- package/lib/components/Card/helpers/get-dynamic-grid-classes.js +3 -3
- package/lib/components/Card/helpers/get-dynamic-grid-classes.js.map +1 -1
- package/lib/components/Code/Code.js +7 -4
- package/lib/components/Code/Code.js.map +1 -1
- package/lib/components/Code/helpers/wrap-script-tags.js +7 -3
- package/lib/components/Code/helpers/wrap-script-tags.js.map +1 -1
- package/lib/components/ContentGroup/helpers/get-sections-data.js +8 -8
- package/lib/components/ContentGroup/helpers/get-sections-data.js.map +1 -1
- package/lib/components/DataSummary/helpers/build-loop-props-content.js.map +1 -1
- package/lib/components/EmailConfirm/EmailConfirm.js +4 -4
- package/lib/components/EmailConfirm/EmailConfirm.js.map +1 -1
- package/lib/components/Image/ImageFactory.js +9 -9
- package/lib/components/Image/ImageFactory.js.map +1 -1
- package/lib/components/ItemList/ItemListNew/ItemListNew.js +3 -3
- package/lib/components/ItemList/ItemListNew/ItemListNew.js.map +1 -1
- package/lib/components/Layout/Layout.js +4 -4
- package/lib/components/Layout/Layout.js.map +1 -1
- package/lib/components/List/ListFactory.js +9 -9
- package/lib/components/List/ListFactory.js.map +1 -1
- package/lib/components/List/ListRender.js.map +1 -1
- package/lib/components/List/components/Cards/CardsRenderItem.js +1 -1
- package/lib/components/List/components/Cards/CardsRenderItem.js.map +1 -1
- package/lib/components/List/components/Full/FullRenderItem.js +1 -1
- package/lib/components/List/components/Full/FullRenderItem.js.map +1 -1
- package/lib/components/List/components/Header/ListHeader.js.map +1 -1
- package/lib/components/List/helpers/sort-aggs.js +10 -10
- package/lib/components/List/helpers/sort-aggs.js.map +1 -1
- package/lib/components/SearchFilter/SearchFilter/SearchFilter.js.map +1 -1
- package/lib/components/SearchFilter/SearchFilterContainer.js +5 -5
- package/lib/components/SearchFilter/SearchFilterContainer.js.map +1 -1
- package/lib/components/SearchFilter/components/Range.js +4 -4
- package/lib/components/SearchFilter/components/Range.js.map +1 -1
- package/lib/components/SearchFilterSort/SearchFilterSort.js +5 -5
- package/lib/components/SearchFilterSort/SearchFilterSort.js.map +1 -1
- package/lib/components/TextBlock/TextBlockRender.js.map +1 -1
- package/lib/components/Video/providers/Vimeo/VimeoProvider.js +23 -21
- package/lib/components/Video/providers/Vimeo/VimeoProvider.js.map +1 -1
- package/lib/helpers/build-raw-query-base.js +6 -6
- package/lib/helpers/build-raw-query-base.js.map +1 -1
- package/lib/helpers/get-click-wrapper-options.js +11 -11
- package/lib/helpers/get-click-wrapper-options.js.map +1 -1
- package/lib/helpers/get-entity-data.js +3 -3
- package/lib/helpers/get-entity-data.js.map +1 -1
- package/lib/helpers/get-search-filter-type.js +4 -4
- package/lib/helpers/get-search-filter-type.js.map +1 -1
- package/lib/helpers/parse-props-to-display.js.map +1 -1
- package/lib/helpers/split-children.js +12 -12
- package/lib/helpers/split-children.js.map +1 -1
- package/lib/hooks/helpers/buildPBComponents.js +3 -3
- package/lib/hooks/helpers/buildPBComponents.js.map +1 -1
- package/lib/hooks/helpers/inject-textblock-banners.js +3 -3
- package/lib/hooks/helpers/inject-textblock-banners.js.map +1 -1
- package/lib/hooks/helpers/insert-banners.js.map +1 -1
- package/lib/hooks/use-page-builder.js +9 -7
- package/lib/hooks/use-page-builder.js.map +1 -1
- package/lib-es/components/Banner/BannerRender.js +5 -5
- package/lib-es/components/Banner/BannerRender.js.map +1 -1
- package/lib-es/components/Banner/helpers.js +2 -2
- package/lib-es/components/Banner/helpers.js.map +1 -1
- package/lib-es/components/Card/CardContainer.js +3 -3
- package/lib-es/components/Card/CardContainer.js.map +1 -1
- package/lib-es/components/Code/Code.js +8 -5
- package/lib-es/components/Code/Code.js.map +1 -1
- package/lib-es/components/Code/helpers/wrap-script-tags.js +7 -3
- package/lib-es/components/Code/helpers/wrap-script-tags.js.map +1 -1
- package/lib-es/components/List/ListRender.js.map +1 -1
- package/lib-es/components/List/components/Cards/CardsRenderItem.js +1 -1
- package/lib-es/components/List/components/Cards/CardsRenderItem.js.map +1 -1
- package/lib-es/components/List/components/Full/FullRenderItem.js +1 -1
- package/lib-es/components/List/components/Full/FullRenderItem.js.map +1 -1
- package/lib-es/components/List/components/Header/ListHeader.js.map +1 -1
- package/lib-es/components/SearchFilter/SearchFilter/SearchFilter.js.map +1 -1
- package/lib-es/components/TextBlock/TextBlockRender.js.map +1 -1
- package/lib-es/helpers/parse-props-to-display.js.map +1 -1
- package/package.json +10 -10
- package/src/components/Banner/BannerRender.js +4 -4
- package/src/components/Banner/helpers.js +3 -3
- package/src/components/Card/CardContainer.js +3 -3
- package/src/components/Code/Code.js +6 -4
- package/src/components/Code/helpers/wrap-script-tags.js +7 -3
- package/src/components/List/components/Cards/CardsRenderItem.js +1 -1
- package/src/components/List/components/Full/FullRenderItem.js +1 -1
- package/tests/unit/src/components/Banner/BannerRender.test.js +1 -1
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import _defineProperty from "@babel/runtime/helpers/defineProperty";
|
|
2
2
|
import _objectWithoutProperties from "@babel/runtime/helpers/objectWithoutProperties";
|
|
3
|
-
const _excluded = ["code"];
|
|
3
|
+
const _excluded = ["code", "parserOptions"];
|
|
4
4
|
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
|
|
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
|
import React, { memo } from 'react';
|
|
@@ -13,11 +13,12 @@ import { CODE } from '../../constants';
|
|
|
13
13
|
import { wrapScriptTags } from './helpers';
|
|
14
14
|
const Code = memo(_ref => {
|
|
15
15
|
let {
|
|
16
|
-
code: embedCode
|
|
16
|
+
code: embedCode,
|
|
17
|
+
parserOptions
|
|
17
18
|
} = _ref,
|
|
18
19
|
otherProps = _objectWithoutProperties(_ref, _excluded);
|
|
19
20
|
if (!embedCode) return null;
|
|
20
|
-
const parsedCode = parseHTML(embedCode);
|
|
21
|
+
const parsedCode = parseHTML(embedCode, parserOptions);
|
|
21
22
|
const wrappedCode = wrapScriptTags(parsedCode);
|
|
22
23
|
const modifiers = getClassModifiers(CODE, _objectSpread({}, otherProps));
|
|
23
24
|
return /*#__PURE__*/React.createElement(Wrapper, {
|
|
@@ -26,11 +27,13 @@ const Code = memo(_ref => {
|
|
|
26
27
|
});
|
|
27
28
|
Code.propTypes = {
|
|
28
29
|
code: PropTypes.string,
|
|
29
|
-
modifier: PropTypes.string
|
|
30
|
+
modifier: PropTypes.string,
|
|
31
|
+
parserOptions: PropTypes.object
|
|
30
32
|
};
|
|
31
33
|
Code.defaultProps = {
|
|
32
34
|
code: '',
|
|
33
|
-
modifier: ''
|
|
35
|
+
modifier: '',
|
|
36
|
+
parserOptions: {}
|
|
34
37
|
};
|
|
35
38
|
export default withTitle(Code);
|
|
36
39
|
//# sourceMappingURL=Code.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Code.js","names":["React","memo","PropTypes","parseHTML","Wrapper","withTitle","getClassModifiers","CODE","wrapScriptTags","Code","code","embedCode","otherProps","parsedCode","wrappedCode","modifiers","propTypes","string","modifier","defaultProps"],"sources":["../../../src/components/Code/Code.js"],"sourcesContent":["import React, { memo } from 'react';\nimport PropTypes from 'prop-types';\nimport parseHTML from 'html-react-parser';\nimport Wrapper from '../Wrapper';\nimport { withTitle } from '../../HOC';\nimport { getClassModifiers } from '../../utils';\nimport { CODE } from '../../constants';\nimport { wrapScriptTags } from './helpers';\n\nconst Code = memo(({ code: embedCode, ...otherProps }) => {\n if (!embedCode) return null;\n\n const parsedCode = parseHTML(embedCode);\n const wrappedCode = wrapScriptTags(parsedCode);\n const modifiers = getClassModifiers(CODE, { ...otherProps });\n\n return <Wrapper modifiers={modifiers}>{wrappedCode}</Wrapper>;\n});\n\nCode.propTypes = {\n code: PropTypes.string,\n modifier: PropTypes.string\n};\n\nCode.defaultProps = {\n code: '',\n modifier: ''\n};\n\nexport default withTitle(Code);\n"],"mappings":";;;;;AAAA,OAAOA,KAAK,IAAIC,IAAI,QAAQ,OAAO;AACnC,OAAOC,SAAS,MAAM,YAAY;AAClC,OAAOC,SAAS,MAAM,mBAAmB;AACzC,OAAOC,OAAO,MAAM,YAAY;AAChC,SAASC,SAAS,QAAQ,WAAW;AACrC,SAASC,iBAAiB,QAAQ,aAAa;AAC/C,SAASC,IAAI,QAAQ,iBAAiB;AACtC,SAASC,cAAc,QAAQ,WAAW;AAE1C,MAAMC,IAAI,GAAGR,IAAI,CAAC,
|
|
1
|
+
{"version":3,"file":"Code.js","names":["React","memo","PropTypes","parseHTML","Wrapper","withTitle","getClassModifiers","CODE","wrapScriptTags","Code","code","embedCode","parserOptions","otherProps","parsedCode","wrappedCode","modifiers","propTypes","string","modifier","object","defaultProps"],"sources":["../../../src/components/Code/Code.js"],"sourcesContent":["import React, { memo } from 'react';\nimport PropTypes from 'prop-types';\nimport parseHTML from 'html-react-parser';\nimport Wrapper from '../Wrapper';\nimport { withTitle } from '../../HOC';\nimport { getClassModifiers } from '../../utils';\nimport { CODE } from '../../constants';\nimport { wrapScriptTags } from './helpers';\n\nconst Code = memo(({ code: embedCode, parserOptions, ...otherProps }) => {\n if (!embedCode) return null;\n\n const parsedCode = parseHTML(embedCode, parserOptions);\n const wrappedCode = wrapScriptTags(parsedCode);\n const modifiers = getClassModifiers(CODE, { ...otherProps });\n\n return <Wrapper modifiers={modifiers}>{wrappedCode}</Wrapper>;\n});\n\nCode.propTypes = {\n code: PropTypes.string,\n modifier: PropTypes.string,\n parserOptions: PropTypes.object\n};\n\nCode.defaultProps = {\n code: '',\n modifier: '',\n parserOptions: {}\n};\n\nexport default withTitle(Code);\n"],"mappings":";;;;;AAAA,OAAOA,KAAK,IAAIC,IAAI,QAAQ,OAAO;AACnC,OAAOC,SAAS,MAAM,YAAY;AAClC,OAAOC,SAAS,MAAM,mBAAmB;AACzC,OAAOC,OAAO,MAAM,YAAY;AAChC,SAASC,SAAS,QAAQ,WAAW;AACrC,SAASC,iBAAiB,QAAQ,aAAa;AAC/C,SAASC,IAAI,QAAQ,iBAAiB;AACtC,SAASC,cAAc,QAAQ,WAAW;AAE1C,MAAMC,IAAI,GAAGR,IAAI,CAAC,QAAuD;EAAA,IAAtD;MAAES,IAAI,EAAEC,SAAS;MAAEC;IAA6B,CAAC;IAAZC,UAAU;EAChE,IAAI,CAACF,SAAS,EAAE,OAAO,IAAI;EAE3B,MAAMG,UAAU,GAAGX,SAAS,CAACQ,SAAS,EAAEC,aAAa,CAAC;EACtD,MAAMG,WAAW,GAAGP,cAAc,CAACM,UAAU,CAAC;EAC9C,MAAME,SAAS,GAAGV,iBAAiB,CAACC,IAAI,oBAAOM,UAAU,EAAG;EAE5D,oBAAO,oBAAC,OAAO;IAAC,SAAS,EAAEG;EAAU,GAAED,WAAW,CAAW;AAC/D,CAAC,CAAC;AAEFN,IAAI,CAACQ,SAAS,GAAG;EACfP,IAAI,EAAER,SAAS,CAACgB,MAAM;EACtBC,QAAQ,EAAEjB,SAAS,CAACgB,MAAM;EAC1BN,aAAa,EAAEV,SAAS,CAACkB;AAC3B,CAAC;AAEDX,IAAI,CAACY,YAAY,GAAG;EAClBX,IAAI,EAAE,EAAE;EACRS,QAAQ,EAAE,EAAE;EACZP,aAAa,EAAE,CAAC;AAClB,CAAC;AAED,eAAeP,SAAS,CAACI,IAAI,CAAC"}
|
|
@@ -20,9 +20,13 @@ function getWrappedScriptTag(child) {
|
|
|
20
20
|
function wrapScriptTags(parsedCode) {
|
|
21
21
|
if (Array.isArray(parsedCode)) {
|
|
22
22
|
parsedCode.forEach((child, index) => {
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
23
|
+
try {
|
|
24
|
+
// modify children array as we just want to wrap single components
|
|
25
|
+
// eslint-disable-next-line no-param-reassign
|
|
26
|
+
parsedCode[index] = getWrappedScriptTag(child);
|
|
27
|
+
} catch {
|
|
28
|
+
// catch read-only element errors
|
|
29
|
+
}
|
|
26
30
|
});
|
|
27
31
|
return parsedCode;
|
|
28
32
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"wrap-script-tags.js","names":["React","ScriptTag","getWrappedScriptTag","child","props","children","scriptProps","type","key","cloneElement","wrapScriptTags","parsedCode","Array","isArray","forEach","index"],"sources":["../../../../src/components/Code/helpers/wrap-script-tags.js"],"sourcesContent":["import React from 'react';\nimport ScriptTag from '../ScriptTag';\n\nfunction getWrappedScriptTag(child) {\n if (!child) return child;\n\n if (typeof child === 'string') return child;\n\n const { children, ...scriptProps } = child.props;\n if (child.type === 'script') return <ScriptTag {...scriptProps} key={child.key} />;\n\n if (!children) return child;\n\n return React.cloneElement(child, child.props, wrapScriptTags(children));\n}\n\nfunction wrapScriptTags(parsedCode) {\n if (Array.isArray(parsedCode)) {\n parsedCode.forEach((child, index) => {\n // modify children array as we just want to wrap single components\n
|
|
1
|
+
{"version":3,"file":"wrap-script-tags.js","names":["React","ScriptTag","getWrappedScriptTag","child","props","children","scriptProps","type","key","cloneElement","wrapScriptTags","parsedCode","Array","isArray","forEach","index"],"sources":["../../../../src/components/Code/helpers/wrap-script-tags.js"],"sourcesContent":["import React from 'react';\nimport ScriptTag from '../ScriptTag';\n\nfunction getWrappedScriptTag(child) {\n if (!child) return child;\n\n if (typeof child === 'string') return child;\n\n const { children, ...scriptProps } = child.props;\n if (child.type === 'script') return <ScriptTag {...scriptProps} key={child.key} />;\n\n if (!children) return child;\n\n return React.cloneElement(child, child.props, wrapScriptTags(children));\n}\n\nfunction wrapScriptTags(parsedCode) {\n if (Array.isArray(parsedCode)) {\n parsedCode.forEach((child, index) => {\n try {\n // modify children array as we just want to wrap single components\n // eslint-disable-next-line no-param-reassign\n parsedCode[index] = getWrappedScriptTag(child);\n } catch {\n // catch read-only element errors\n }\n });\n\n return parsedCode;\n }\n\n return getWrappedScriptTag(parsedCode);\n}\n\nexport default wrapScriptTags;\n"],"mappings":";;;AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,OAAOC,SAAS,MAAM,cAAc;AAEpC,SAASC,mBAAmB,CAACC,KAAK,EAAE;EAClC,IAAI,CAACA,KAAK,EAAE,OAAOA,KAAK;EAExB,IAAI,OAAOA,KAAK,KAAK,QAAQ,EAAE,OAAOA,KAAK;EAE3C,qBAAqCA,KAAK,CAACC,KAAK;IAA1C;MAAEC;IAAyB,CAAC;IAAbC,WAAW;EAChC,IAAIH,KAAK,CAACI,IAAI,KAAK,QAAQ,EAAE,oBAAO,oBAAC,SAAS,eAAKD,WAAW;IAAE,GAAG,EAAEH,KAAK,CAACK;EAAI,GAAG;EAElF,IAAI,CAACH,QAAQ,EAAE,OAAOF,KAAK;EAE3B,OAAOH,KAAK,CAACS,YAAY,CAACN,KAAK,EAAEA,KAAK,CAACC,KAAK,EAAEM,cAAc,CAACL,QAAQ,CAAC,CAAC;AACzE;AAEA,SAASK,cAAc,CAACC,UAAU,EAAE;EAClC,IAAIC,KAAK,CAACC,OAAO,CAACF,UAAU,CAAC,EAAE;IAC7BA,UAAU,CAACG,OAAO,CAAC,CAACX,KAAK,EAAEY,KAAK,KAAK;MACnC,IAAI;QACF;QACA;QACAJ,UAAU,CAACI,KAAK,CAAC,GAAGb,mBAAmB,CAACC,KAAK,CAAC;MAChD,CAAC,CAAC,MAAM;QACN;MAAA;IAEJ,CAAC,CAAC;IAEF,OAAOQ,UAAU;EACnB;EAEA,OAAOT,mBAAmB,CAACS,UAAU,CAAC;AACxC;AAEA,eAAeD,cAAc"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ListRender.js","names":["React","useQuery","PropTypes","ListPagination","ListHeader","sortResponseData","LOAD_MORE","ListRender","props","variables","actionKey","action","name","itemsToDisplay","itemsPerPageToUse","limitToUse","initialOffset","isInfinite","omitWrappers","paginationType","listComponent","ListComponent","query","url","listAggregations","isAZ","azFilter","displayTotal","data","error","loading","fetchMore","message","results","listData","listTotal","total","orderedListData","length","currentListLength","currentPage","Math","ceil","totalDisplay","propTypes","string","isRequired","object","number","bool","func","array","defaultProps"],"sources":["../../../src/components/List/ListRender.js"],"sourcesContent":["import React from 'react';\nimport { useQuery } from '@apollo/client';\nimport PropTypes from 'prop-types';\nimport ListPagination from './components/Pagination';\nimport ListHeader from './components/Header';\nimport { sortResponseData } from '../../helpers';\nimport { LOAD_MORE } from '../../constants';\n\nconst ListRender = props => {\n const {\n variables,\n actionKey,\n action,\n name,\n itemsToDisplay,\n itemsPerPageToUse,\n limitToUse,\n initialOffset,\n isInfinite,\n omitWrappers,\n paginationType,\n listComponent: ListComponent,\n query,\n url,\n listAggregations,\n isAZ,\n azFilter,\n displayTotal\n } = props;\n const { data = {}, error, loading, fetchMore } = useQuery(action, {\n variables\n });\n if (loading) return '';\n if (error) return error.message;\n if (!data[actionKey] || !data[actionKey].results) return null;\n\n const listData = data[actionKey].results;\n const listTotal = data[actionKey].total;\n const orderedListData = sortResponseData(listData, itemsToDisplay);\n if (!orderedListData || !orderedListData.length) return null;\n const { length: currentListLength } = orderedListData;\n const currentPage = Math.ceil((initialOffset + currentListLength) / itemsPerPageToUse);\n const totalDisplay = limitToUse && listTotal > limitToUse ? limitToUse : listTotal;\n\n return (\n <>\n <span className=\"list-top\" />\n {isAZ && <ListHeader name={name} listAggregations={listAggregations} azFilter={azFilter} />}\n {displayTotal && (\n <div className=\"list_total_results w-full text-left p-4\">Total results: {totalDisplay}</div>\n )}\n <ListComponent\n orderedListData={orderedListData}\n isInfinite={isInfinite}\n initialOffset={initialOffset}\n actionKey={actionKey}\n limitToUse={limitToUse}\n fetchMore={fetchMore}\n omitWrappers={omitWrappers}\n itemsPerPageToUse={itemsPerPageToUse || listData.length}\n listTotal={listTotal}\n currentListLength={currentListLength}\n currentPage={currentPage}\n query={query}\n url={url}\n itemsToDisplay={itemsToDisplay}\n {...props}\n />\n {paginationType !== LOAD_MORE && (\n <ListPagination\n limitToUse={limitToUse}\n itemsPerPage={itemsPerPageToUse}\n listTotal={listTotal}\n name={name}\n isInfinite={isInfinite}\n currentListLength={currentListLength}\n paginationType={paginationType}\n currentPage={currentPage}\n query={query}\n url={url}\n />\n )}\n </>\n );\n};\n\nListRender.propTypes = {\n name: PropTypes.string.isRequired,\n paginationType: PropTypes.string.isRequired,\n variables: PropTypes.object.isRequired,\n actionKey: PropTypes.string.isRequired,\n action: PropTypes.object.isRequired,\n itemsPerPageToUse: PropTypes.number.isRequired,\n limitToUse: PropTypes.number.isRequired,\n initialOffset: PropTypes.number.isRequired,\n isInfinite: PropTypes.bool.isRequired,\n omitWrappers: PropTypes.bool,\n query: PropTypes.object.isRequired,\n url: PropTypes.string.isRequired,\n listComponent: PropTypes.func.isRequired,\n isAZ: PropTypes.bool.isRequired,\n azFilter: PropTypes.string.isRequired,\n listAggregations: PropTypes.array,\n itemsToDisplay: PropTypes.array,\n displayTotal: PropTypes.bool\n};\n\nListRender.defaultProps = {\n omitWrappers: false,\n itemsToDisplay: [],\n listAggregations: [],\n displayTotal: false\n};\n\nexport default ListRender;\n"],"mappings":";AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,SAASC,QAAQ,QAAQ,gBAAgB;AACzC,OAAOC,SAAS,MAAM,YAAY;AAClC,OAAOC,cAAc,MAAM,yBAAyB;AACpD,OAAOC,UAAU,MAAM,qBAAqB;AAC5C,SAASC,gBAAgB,QAAQ,eAAe;AAChD,SAASC,SAAS,QAAQ,iBAAiB;AAE3C,MAAMC,UAAU,GAAGC,KAAK,IAAI;EAC1B,MAAM;IACJC,SAAS;IACTC,SAAS;IACTC,MAAM;IACNC,IAAI;IACJC,cAAc;IACdC,iBAAiB;IACjBC,UAAU;IACVC,aAAa;IACbC,UAAU;IACVC,YAAY;IACZC,cAAc;IACdC,aAAa,EAAEC,aAAa;IAC5BC,KAAK;IACLC,GAAG;IACHC,gBAAgB;IAChBC,IAAI;IACJC,QAAQ;IACRC;EACF,CAAC,GAAGnB,KAAK;EACT,MAAM;IAAEoB,IAAI,GAAG,CAAC,CAAC;IAAEC,KAAK;IAAEC,OAAO;IAAEC;EAAU,CAAC,GAAG9B,QAAQ,CAACU,MAAM,EAAE;IAChEF;EACF,CAAC,CAAC;EACF,IAAIqB,OAAO,EAAE,OAAO,EAAE;EACtB,IAAID,KAAK,EAAE,OAAOA,KAAK,CAACG,OAAO;EAC/B,IAAI,CAACJ,IAAI,CAAClB,SAAS,CAAC,IAAI,CAACkB,IAAI,CAAClB,SAAS,CAAC,CAACuB,OAAO,EAAE,OAAO,IAAI;EAE7D,MAAMC,QAAQ,GAAGN,IAAI,CAAClB,SAAS,CAAC,CAACuB,OAAO;EACxC,MAAME,SAAS,GAAGP,IAAI,CAAClB,SAAS,CAAC,CAAC0B,KAAK;EACvC,MAAMC,eAAe,GAAGhC,gBAAgB,CAAC6B,QAAQ,EAAErB,cAAc,CAAC;EAClE,IAAI,CAACwB,eAAe,IAAI,CAACA,eAAe,CAACC,MAAM,EAAE,OAAO,IAAI;EAC5D,MAAM;IAAEA,MAAM,EAAEC;EAAkB,CAAC,GAAGF,eAAe;EACrD,MAAMG,WAAW,GAAGC,IAAI,CAACC,IAAI,CAAC,CAAC1B,aAAa,GAAGuB,iBAAiB,IAAIzB,iBAAiB,CAAC;EACtF,MAAM6B,YAAY,GAAG5B,UAAU,IAAIoB,SAAS,GAAGpB,UAAU,GAAGA,UAAU,GAAGoB,SAAS;EAElF,oBACE,uDACE;IAAM,SAAS,EAAC;EAAU,EAAG,EAC5BV,IAAI,iBAAI,oBAAC,UAAU;IAAC,IAAI,EAAEb,IAAK;IAAC,gBAAgB,EAAEY,gBAAiB;IAAC,QAAQ,EAAEE;EAAS,EAAG,EAC1FC,YAAY,iBACX;IAAK,SAAS,EAAC;EAAyC,
|
|
1
|
+
{"version":3,"file":"ListRender.js","names":["React","useQuery","PropTypes","ListPagination","ListHeader","sortResponseData","LOAD_MORE","ListRender","props","variables","actionKey","action","name","itemsToDisplay","itemsPerPageToUse","limitToUse","initialOffset","isInfinite","omitWrappers","paginationType","listComponent","ListComponent","query","url","listAggregations","isAZ","azFilter","displayTotal","data","error","loading","fetchMore","message","results","listData","listTotal","total","orderedListData","length","currentListLength","currentPage","Math","ceil","totalDisplay","propTypes","string","isRequired","object","number","bool","func","array","defaultProps"],"sources":["../../../src/components/List/ListRender.js"],"sourcesContent":["import React from 'react';\nimport { useQuery } from '@apollo/client';\nimport PropTypes from 'prop-types';\nimport ListPagination from './components/Pagination';\nimport ListHeader from './components/Header';\nimport { sortResponseData } from '../../helpers';\nimport { LOAD_MORE } from '../../constants';\n\nconst ListRender = props => {\n const {\n variables,\n actionKey,\n action,\n name,\n itemsToDisplay,\n itemsPerPageToUse,\n limitToUse,\n initialOffset,\n isInfinite,\n omitWrappers,\n paginationType,\n listComponent: ListComponent,\n query,\n url,\n listAggregations,\n isAZ,\n azFilter,\n displayTotal\n } = props;\n const { data = {}, error, loading, fetchMore } = useQuery(action, {\n variables\n });\n if (loading) return '';\n if (error) return error.message;\n if (!data[actionKey] || !data[actionKey].results) return null;\n\n const listData = data[actionKey].results;\n const listTotal = data[actionKey].total;\n const orderedListData = sortResponseData(listData, itemsToDisplay);\n if (!orderedListData || !orderedListData.length) return null;\n const { length: currentListLength } = orderedListData;\n const currentPage = Math.ceil((initialOffset + currentListLength) / itemsPerPageToUse);\n const totalDisplay = limitToUse && listTotal > limitToUse ? limitToUse : listTotal;\n\n return (\n <>\n <span className=\"list-top\" />\n {isAZ && <ListHeader name={name} listAggregations={listAggregations} azFilter={azFilter} />}\n {displayTotal && (\n <div className=\"list_total_results w-full text-left p-4\">Total results: {totalDisplay}</div>\n )}\n <ListComponent\n orderedListData={orderedListData}\n isInfinite={isInfinite}\n initialOffset={initialOffset}\n actionKey={actionKey}\n limitToUse={limitToUse}\n fetchMore={fetchMore}\n omitWrappers={omitWrappers}\n itemsPerPageToUse={itemsPerPageToUse || listData.length}\n listTotal={listTotal}\n currentListLength={currentListLength}\n currentPage={currentPage}\n query={query}\n url={url}\n itemsToDisplay={itemsToDisplay}\n {...props}\n />\n {paginationType !== LOAD_MORE && (\n <ListPagination\n limitToUse={limitToUse}\n itemsPerPage={itemsPerPageToUse}\n listTotal={listTotal}\n name={name}\n isInfinite={isInfinite}\n currentListLength={currentListLength}\n paginationType={paginationType}\n currentPage={currentPage}\n query={query}\n url={url}\n />\n )}\n </>\n );\n};\n\nListRender.propTypes = {\n name: PropTypes.string.isRequired,\n paginationType: PropTypes.string.isRequired,\n variables: PropTypes.object.isRequired,\n actionKey: PropTypes.string.isRequired,\n action: PropTypes.object.isRequired,\n itemsPerPageToUse: PropTypes.number.isRequired,\n limitToUse: PropTypes.number.isRequired,\n initialOffset: PropTypes.number.isRequired,\n isInfinite: PropTypes.bool.isRequired,\n omitWrappers: PropTypes.bool,\n query: PropTypes.object.isRequired,\n url: PropTypes.string.isRequired,\n listComponent: PropTypes.func.isRequired,\n isAZ: PropTypes.bool.isRequired,\n azFilter: PropTypes.string.isRequired,\n listAggregations: PropTypes.array,\n itemsToDisplay: PropTypes.array,\n displayTotal: PropTypes.bool\n};\n\nListRender.defaultProps = {\n omitWrappers: false,\n itemsToDisplay: [],\n listAggregations: [],\n displayTotal: false\n};\n\nexport default ListRender;\n"],"mappings":"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"}
|
|
@@ -78,7 +78,7 @@ const CardsRenderItem = ({
|
|
|
78
78
|
overlayModifier: overlayModifier,
|
|
79
79
|
titleOverlayModifier: titleOverlayModifier
|
|
80
80
|
}, cardProps))), shouldRenderBanner && /*#__PURE__*/React.createElement(Banner, _extends({}, bannerProps, {
|
|
81
|
-
|
|
81
|
+
renderCounter: bannerIndex
|
|
82
82
|
})));
|
|
83
83
|
};
|
|
84
84
|
CardsRenderItem.propTypes = {
|
|
@@ -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={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}
|
|
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} renderCounter={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,aAAa,EAAEW;EAAY,GAAG,CAC7E;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"}
|
|
@@ -55,7 +55,7 @@ const FullRenderItem = ({
|
|
|
55
55
|
})), !!parsedPropsToDisplay.length && /*#__PURE__*/React.createElement(React.Fragment, null, parsedPropsToDisplay.map(prop => prop ? /*#__PURE__*/React.createElement("span", {
|
|
56
56
|
key: prop
|
|
57
57
|
}, prop) : null)), shouldRenderBanner && /*#__PURE__*/React.createElement(Banner, _extends({}, bannerProps, {
|
|
58
|
-
|
|
58
|
+
renderCounter: bannerIndex
|
|
59
59
|
})));
|
|
60
60
|
};
|
|
61
61
|
FullRenderItem.propTypes = {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FullRenderItem.js","names":["React","useContext","PropTypes","Waypoint","MainContext","BuildPBComponents","Banner","parsePropsToDisplay","shouldRenderWaypoint","FullRenderItem","isInfinite","pageBuilderComponents","entityProps","propsToDisplay","entity","index","itemId","listTotal","initialOffset","currentListLength","triggerInfiniteScroll","parent","pageBuilderID","displayCount","shouldRenderBanner","bannerProps","bannerIndex","hasGTM","parsedPropsToDisplay","currentItemIndex","renderWaypoint","itemEntity","length","map","prop","propTypes","array","object","isRequired","number","bool","func","string","data","itemsToDisplay","defaultProps"],"sources":["../../../../../src/components/List/components/Full/FullRenderItem.js"],"sourcesContent":["import React, { useContext } from 'react';\nimport PropTypes from 'prop-types';\nimport { Waypoint } from 'react-waypoint';\nimport { MainContext } from '@blaze-cms/nextjs-components';\nimport BuildPBComponents from '../../../../hooks/helpers/buildPBComponents';\nimport Banner from '../../../Banner';\nimport { parsePropsToDisplay, shouldRenderWaypoint } from '../../../../helpers';\n\nconst FullRenderItem = ({\n isInfinite,\n pageBuilderComponents,\n entityProps,\n propsToDisplay,\n entity,\n index,\n itemId,\n listTotal,\n initialOffset,\n currentListLength,\n triggerInfiniteScroll,\n parent,\n pageBuilderID,\n displayCount,\n shouldRenderBanner,\n bannerProps,\n bannerIndex\n}) => {\n const { hasGTM } = useContext(MainContext);\n if (!pageBuilderComponents) return null;\n const parsedPropsToDisplay = parsePropsToDisplay(entityProps, propsToDisplay);\n const currentItemIndex = initialOffset + index;\n const renderWaypoint =\n isInfinite && shouldRenderWaypoint(index, currentListLength, currentItemIndex, listTotal);\n return (\n <>\n {renderWaypoint && <Waypoint onEnter={triggerInfiniteScroll} />}\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--full\">\n {BuildPBComponents(pageBuilderComponents, {\n parent: { ...parent, itemId, itemEntity: entity },\n hasGTM,\n pageBuilderID\n })}\n </div>\n {!!parsedPropsToDisplay.length && (\n <>{parsedPropsToDisplay.map(prop => (prop ? <span key={prop}>{prop}</span> : null))}</>\n )}\n {shouldRenderBanner && <Banner {...bannerProps}
|
|
1
|
+
{"version":3,"file":"FullRenderItem.js","names":["React","useContext","PropTypes","Waypoint","MainContext","BuildPBComponents","Banner","parsePropsToDisplay","shouldRenderWaypoint","FullRenderItem","isInfinite","pageBuilderComponents","entityProps","propsToDisplay","entity","index","itemId","listTotal","initialOffset","currentListLength","triggerInfiniteScroll","parent","pageBuilderID","displayCount","shouldRenderBanner","bannerProps","bannerIndex","hasGTM","parsedPropsToDisplay","currentItemIndex","renderWaypoint","itemEntity","length","map","prop","propTypes","array","object","isRequired","number","bool","func","string","data","itemsToDisplay","defaultProps"],"sources":["../../../../../src/components/List/components/Full/FullRenderItem.js"],"sourcesContent":["import React, { useContext } from 'react';\nimport PropTypes from 'prop-types';\nimport { Waypoint } from 'react-waypoint';\nimport { MainContext } from '@blaze-cms/nextjs-components';\nimport BuildPBComponents from '../../../../hooks/helpers/buildPBComponents';\nimport Banner from '../../../Banner';\nimport { parsePropsToDisplay, shouldRenderWaypoint } from '../../../../helpers';\n\nconst FullRenderItem = ({\n isInfinite,\n pageBuilderComponents,\n entityProps,\n propsToDisplay,\n entity,\n index,\n itemId,\n listTotal,\n initialOffset,\n currentListLength,\n triggerInfiniteScroll,\n parent,\n pageBuilderID,\n displayCount,\n shouldRenderBanner,\n bannerProps,\n bannerIndex\n}) => {\n const { hasGTM } = useContext(MainContext);\n if (!pageBuilderComponents) return null;\n const parsedPropsToDisplay = parsePropsToDisplay(entityProps, propsToDisplay);\n const currentItemIndex = initialOffset + index;\n const renderWaypoint =\n isInfinite && shouldRenderWaypoint(index, currentListLength, currentItemIndex, listTotal);\n return (\n <>\n {renderWaypoint && <Waypoint onEnter={triggerInfiniteScroll} />}\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--full\">\n {BuildPBComponents(pageBuilderComponents, {\n parent: { ...parent, itemId, itemEntity: entity },\n hasGTM,\n pageBuilderID\n })}\n </div>\n {!!parsedPropsToDisplay.length && (\n <>{parsedPropsToDisplay.map(prop => (prop ? <span key={prop}>{prop}</span> : null))}</>\n )}\n {shouldRenderBanner && <Banner {...bannerProps} renderCounter={bannerIndex} />}\n </>\n );\n};\n\nFullRenderItem.propTypes = {\n pageBuilderComponents: PropTypes.array,\n entityProps: PropTypes.object.isRequired,\n parent: PropTypes.object.isRequired,\n currentListLength: PropTypes.number.isRequired,\n listTotal: PropTypes.number.isRequired,\n initialOffset: PropTypes.number.isRequired,\n displayCount: PropTypes.bool.isRequired,\n triggerInfiniteScroll: PropTypes.func,\n entity: PropTypes.string.isRequired,\n pageBuilderID: PropTypes.string.isRequired,\n itemId: PropTypes.string.isRequired,\n index: PropTypes.number.isRequired,\n isInfinite: PropTypes.bool.isRequired,\n shouldRenderBanner: PropTypes.bool.isRequired,\n bannerIndex: PropTypes.number.isRequired,\n propsToDisplay: PropTypes.array,\n data: PropTypes.array,\n itemsToDisplay: PropTypes.array,\n bannerProps: PropTypes.object\n};\n\nFullRenderItem.defaultProps = {\n pageBuilderComponents: null,\n data: [],\n propsToDisplay: [],\n itemsToDisplay: [],\n triggerInfiniteScroll: null,\n bannerProps: null\n};\n\nexport default FullRenderItem;\n"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ListHeader.js","names":["React","PropTypes","useRouter","parseUrl","buildAzUrl","ListHeader","name","listAggregations","azFilter","router","asPath","url","query","allHref","e","preventDefault","push","shallow","map","key","doc_count","count","href","isSelected","toLowerCase","className","propTypes","array","isRequired","string"],"sources":["../../../../../src/components/List/components/Header/ListHeader.js"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport { useRouter } from 'next/router';\nimport { parseUrl } from 'query-string';\nimport { buildAzUrl } from '../../helpers';\n\nconst ListHeader = ({ name, listAggregations, azFilter }) => {\n const router = useRouter();\n const { asPath } = router;\n const { url, query } = parseUrl(asPath);\n const allHref = buildAzUrl(query, name, '', url);\n\n return (\n <div className=\"az_list_filter flex\">\n <a\n className={`az_list_filter_option${!azFilter ? ' selected' : ''} flex-grow`}\n href={allHref}\n onClick={e => {\n e.preventDefault();\n return router.push('/Resolver', allHref, { shallow: true });\n }}>\n ALL\n </a>\n {listAggregations.map(({ key, doc_count: count }) => {\n if (!count)\n return (\n <span key={key} className=\"az_list_filter_option no_results flex-grow\">\n {key}\n </span>\n );\n\n const href = buildAzUrl(query, name, key, url);\n const isSelected = azFilter === key.toLowerCase();\n const className = `az_list_filter_option${isSelected ? ' selected' : ''} flex-grow`;\n\n return (\n <a\n key={key}\n className={className}\n href={href}\n onClick={e => {\n e.preventDefault();\n return router.push('/Resolver', href, { shallow: true });\n }}>\n {key}\n </a>\n );\n })}\n </div>\n );\n};\n\nListHeader.propTypes = {\n listAggregations: PropTypes.array.isRequired,\n name: PropTypes.string.isRequired,\n azFilter: PropTypes.string.isRequired\n};\n\nexport default ListHeader;\n"],"mappings":"AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,OAAOC,SAAS,MAAM,YAAY;AAClC,SAASC,SAAS,QAAQ,aAAa;AACvC,SAASC,QAAQ,QAAQ,cAAc;AACvC,SAASC,UAAU,QAAQ,eAAe;AAE1C,MAAMC,UAAU,GAAG,CAAC;EAAEC,IAAI;EAAEC,gBAAgB;EAAEC;AAAS,CAAC,KAAK;EAC3D,MAAMC,MAAM,GAAGP,SAAS,EAAE;EAC1B,MAAM;IAAEQ;EAAO,CAAC,GAAGD,MAAM;EACzB,MAAM;IAAEE,GAAG;IAAEC;EAAM,CAAC,GAAGT,QAAQ,CAACO,MAAM,CAAC;EACvC,MAAMG,OAAO,GAAGT,UAAU,CAACQ,KAAK,EAAEN,IAAI,EAAE,EAAE,EAAEK,GAAG,CAAC;EAEhD,oBACE;IAAK,SAAS,EAAC;EAAqB,gBAClC;IACE,SAAS,EAAG,wBAAuB,CAACH,QAAQ,GAAG,WAAW,GAAG,EAAG,YAAY;IAC5E,IAAI,EAAEK,OAAQ;IACd,OAAO,EAAEC,CAAC,IAAI;MACZA,CAAC,CAACC,cAAc,EAAE;MAClB,OAAON,MAAM,CAACO,IAAI,CAAC,WAAW,EAAEH,OAAO,EAAE;QAAEI,OAAO,EAAE;MAAK,CAAC,CAAC;IAC7D;EAAE,
|
|
1
|
+
{"version":3,"file":"ListHeader.js","names":["React","PropTypes","useRouter","parseUrl","buildAzUrl","ListHeader","name","listAggregations","azFilter","router","asPath","url","query","allHref","e","preventDefault","push","shallow","map","key","doc_count","count","href","isSelected","toLowerCase","className","propTypes","array","isRequired","string"],"sources":["../../../../../src/components/List/components/Header/ListHeader.js"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport { useRouter } from 'next/router';\nimport { parseUrl } from 'query-string';\nimport { buildAzUrl } from '../../helpers';\n\nconst ListHeader = ({ name, listAggregations, azFilter }) => {\n const router = useRouter();\n const { asPath } = router;\n const { url, query } = parseUrl(asPath);\n const allHref = buildAzUrl(query, name, '', url);\n\n return (\n <div className=\"az_list_filter flex\">\n <a\n className={`az_list_filter_option${!azFilter ? ' selected' : ''} flex-grow`}\n href={allHref}\n onClick={e => {\n e.preventDefault();\n return router.push('/Resolver', allHref, { shallow: true });\n }}>\n ALL\n </a>\n {listAggregations.map(({ key, doc_count: count }) => {\n if (!count)\n return (\n <span key={key} className=\"az_list_filter_option no_results flex-grow\">\n {key}\n </span>\n );\n\n const href = buildAzUrl(query, name, key, url);\n const isSelected = azFilter === key.toLowerCase();\n const className = `az_list_filter_option${isSelected ? ' selected' : ''} flex-grow`;\n\n return (\n <a\n key={key}\n className={className}\n href={href}\n onClick={e => {\n e.preventDefault();\n return router.push('/Resolver', href, { shallow: true });\n }}>\n {key}\n </a>\n );\n })}\n </div>\n );\n};\n\nListHeader.propTypes = {\n listAggregations: PropTypes.array.isRequired,\n name: PropTypes.string.isRequired,\n azFilter: PropTypes.string.isRequired\n};\n\nexport default ListHeader;\n"],"mappings":"AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,OAAOC,SAAS,MAAM,YAAY;AAClC,SAASC,SAAS,QAAQ,aAAa;AACvC,SAASC,QAAQ,QAAQ,cAAc;AACvC,SAASC,UAAU,QAAQ,eAAe;AAE1C,MAAMC,UAAU,GAAG,CAAC;EAAEC,IAAI;EAAEC,gBAAgB;EAAEC;AAAS,CAAC,KAAK;EAC3D,MAAMC,MAAM,GAAGP,SAAS,EAAE;EAC1B,MAAM;IAAEQ;EAAO,CAAC,GAAGD,MAAM;EACzB,MAAM;IAAEE,GAAG;IAAEC;EAAM,CAAC,GAAGT,QAAQ,CAACO,MAAM,CAAC;EACvC,MAAMG,OAAO,GAAGT,UAAU,CAACQ,KAAK,EAAEN,IAAI,EAAE,EAAE,EAAEK,GAAG,CAAC;EAEhD,oBACE;IAAK,SAAS,EAAC;EAAqB,gBAClC;IACE,SAAS,EAAG,wBAAuB,CAACH,QAAQ,GAAG,WAAW,GAAG,EAAG,YAAY;IAC5E,IAAI,EAAEK,OAAQ;IACd,OAAO,EAAEC,CAAC,IAAI;MACZA,CAAC,CAACC,cAAc,EAAE;MAClB,OAAON,MAAM,CAACO,IAAI,CAAC,WAAW,EAAEH,OAAO,EAAE;QAAEI,OAAO,EAAE;MAAK,CAAC,CAAC;IAC7D;EAAE,SAEA,EACHV,gBAAgB,CAACW,GAAG,CAAC,CAAC;IAAEC,GAAG;IAAEC,SAAS,EAAEC;EAAM,CAAC,KAAK;IACnD,IAAI,CAACA,KAAK,EACR,oBACE;MAAM,GAAG,EAAEF,GAAI;MAAC,SAAS,EAAC;IAA4C,GACnEA,GAAG,CACC;IAGX,MAAMG,IAAI,GAAGlB,UAAU,CAACQ,KAAK,EAAEN,IAAI,EAAEa,GAAG,EAAER,GAAG,CAAC;IAC9C,MAAMY,UAAU,GAAGf,QAAQ,KAAKW,GAAG,CAACK,WAAW,EAAE;IACjD,MAAMC,SAAS,GAAI,wBAAuBF,UAAU,GAAG,WAAW,GAAG,EAAG,YAAW;IAEnF,oBACE;MACE,GAAG,EAAEJ,GAAI;MACT,SAAS,EAAEM,SAAU;MACrB,IAAI,EAAEH,IAAK;MACX,OAAO,EAAER,CAAC,IAAI;QACZA,CAAC,CAACC,cAAc,EAAE;QAClB,OAAON,MAAM,CAACO,IAAI,CAAC,WAAW,EAAEM,IAAI,EAAE;UAAEL,OAAO,EAAE;QAAK,CAAC,CAAC;MAC1D;IAAE,GACDE,GAAG,CACF;EAER,CAAC,CAAC,CACE;AAEV,CAAC;AAEDd,UAAU,CAACqB,SAAS,GAAG;EACrBnB,gBAAgB,EAAEN,SAAS,CAAC0B,KAAK,CAACC,UAAU;EAC5CtB,IAAI,EAAEL,SAAS,CAAC4B,MAAM,CAACD,UAAU;EACjCpB,QAAQ,EAAEP,SAAS,CAAC4B,MAAM,CAACD;AAC7B,CAAC;AAED,eAAevB,UAAU"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SearchFilter.js","names":["React","useState","useEffect","PropTypes","classnames","debounce","FiltersList","isDeviceDesktop","buildQuery","getInitialFilterValues","getResponsiveFilterClassnames","CloseMobileForm","ResetDesktopForm","MobileFormToolbar","SEARCH","REFINE","MORE_FILTERS_CLASSES","SearchFilter","searchFilterRef","data","filters","hasUrl","entity","handleSearch","name","isCollapsedOnResponsive","displaySearchFilter","setDisplaySearchFilter","groupAfterDesktop","groupAfterMobile","filterValues","setAppliedFilters","moreFiltersMobileCollapsed","setMoreFiltersMobileCollapsed","moreFiltersDesktopCollapsed","setMoreFiltersDesktopCollapsed","doSubmit","newValues","newQuery","handleSubmit","shouldSearch","type","formClass","moreFiltersMobileWrapperClass","moreFiltersMobileTogglerClass","moreFiltersDesktopWrapperClass","moreFiltersDesktopTogglerClass","formId","handleReset","updateFilterValues","shouldSubmit","shouldGroup","e","preventDefault","slice","MOBILE_CONTENT","DESKTOP_CONTENT","DESKTOP_BUTTONS","MOBILE_BUTTONS","propTypes","object","isRequired","array","bool","string","func","number"],"sources":["../../../../src/components/SearchFilter/SearchFilter/SearchFilter.js"],"sourcesContent":["import React, { useState, useEffect } from 'react';\nimport PropTypes from 'prop-types';\nimport classnames from 'classnames';\nimport debounce from 'lodash.debounce';\nimport FiltersList from './FiltersList';\nimport {\n isDeviceDesktop,\n buildQuery,\n getInitialFilterValues,\n getResponsiveFilterClassnames\n} from '../helpers';\nimport CloseMobileForm from './CloseMobileForm';\nimport ResetDesktopForm from './ResetDesktopForm';\nimport MobileFormToolbar from './MobileFormToolbar';\nimport { SEARCH, REFINE, MORE_FILTERS_CLASSES } from '../constants';\n\nconst SearchFilter = ({\n searchFilterRef,\n data,\n filters,\n hasUrl,\n entity,\n handleSearch,\n name,\n isCollapsedOnResponsive,\n displaySearchFilter,\n setDisplaySearchFilter,\n groupAfterDesktop,\n groupAfterMobile,\n filterValues,\n setAppliedFilters\n}) => {\n const [moreFiltersMobileCollapsed, setMoreFiltersMobileCollapsed] = useState(true);\n const [moreFiltersDesktopCollapsed, setMoreFiltersDesktopCollapsed] = useState(true);\n\n const doSubmit = (newValues = filterValues) => {\n const newQuery = buildQuery(newValues, filters);\n handleSearch(newQuery);\n setMoreFiltersDesktopCollapsed(true);\n setMoreFiltersMobileCollapsed(true);\n };\n\n const handleSubmit = debounce(newValues => {\n doSubmit(newValues);\n }, 200);\n\n useEffect(\n () => {\n if (filterValues.shouldSearch) {\n handleSubmit(filterValues);\n setAppliedFilters({ type: 'resetSearch' });\n }\n },\n [filterValues, handleSubmit, setAppliedFilters]\n );\n\n const formClass = classnames('filter__form filter__form--initial', {\n 'filter__form--mobile': isCollapsedOnResponsive && displaySearchFilter,\n 'filter__form--collapsible': isCollapsedOnResponsive\n });\n\n const {\n moreFiltersMobileWrapperClass,\n moreFiltersMobileTogglerClass,\n moreFiltersDesktopWrapperClass,\n moreFiltersDesktopTogglerClass\n } = getResponsiveFilterClassnames(moreFiltersDesktopCollapsed, moreFiltersMobileCollapsed);\n\n const formId = `filter-${name}-form`;\n\n const handleReset = () => {\n const newValues = getInitialFilterValues(null, filters, {});\n setAppliedFilters({ newValues, type: 'reset' });\n doSubmit(newValues);\n };\n\n const updateFilterValues = (newValues, shouldSubmit) => {\n setAppliedFilters({ newValues, shouldSearch: shouldSubmit, type: 'update' });\n };\n\n const shouldGroup = !!(groupAfterDesktop || groupAfterMobile);\n const shouldSearch = !hasUrl;\n\n return (\n <>\n <form\n ref={searchFilterRef}\n className={formClass}\n data-testid={formId}\n id={formId}\n onSubmit={e => {\n e.preventDefault();\n doSubmit();\n }}>\n {displaySearchFilter && (\n <CloseMobileForm handleClose={() => setDisplaySearchFilter(false)} />\n )}\n\n <div className=\"filter filter--search-refine\">\n <ResetDesktopForm handleReset={handleReset} />\n\n <div className=\"filter__wrapper filter__wrapper--search-refine\">\n {!shouldGroup && (\n <FiltersList\n shouldSearch={shouldSearch}\n data={data}\n filters={filters}\n hasUrl={hasUrl}\n entity={entity}\n filterValues={filterValues}\n updateFilterValues={updateFilterValues}\n />\n )}\n\n {shouldGroup && (\n <>\n <FiltersList\n shouldSearch={shouldSearch}\n data={data}\n filters={filters.slice(0, groupAfterMobile)}\n hasUrl={hasUrl}\n entity={entity}\n filterValues={filterValues}\n updateFilterValues={updateFilterValues}\n />\n\n {!!groupAfterMobile && (\n <button\n data-testId=\"search-filter-mobile-toggler\"\n className={moreFiltersMobileTogglerClass}\n type=\"button\"\n onClick={() => setMoreFiltersMobileCollapsed(!moreFiltersMobileCollapsed)}>\n Filters\n </button>\n )}\n\n <div className={moreFiltersMobileWrapperClass}>\n <div className={MORE_FILTERS_CLASSES.MOBILE_CONTENT}>\n <FiltersList\n shouldSearch={shouldSearch && isDeviceDesktop()}\n data={data}\n filters={filters.slice(\n groupAfterMobile,\n groupAfterDesktop ? groupAfterDesktop - 1 : 0\n )}\n hasUrl={hasUrl}\n entity={entity}\n filterValues={filterValues}\n updateFilterValues={updateFilterValues}\n />\n\n {!!groupAfterDesktop && (\n <button\n data-testId=\"search-filter-desktop-toggler\"\n className={moreFiltersDesktopTogglerClass}\n type=\"button\"\n onClick={() =>\n setMoreFiltersDesktopCollapsed(!moreFiltersDesktopCollapsed)\n }>\n More filters\n </button>\n )}\n\n <div className={moreFiltersDesktopWrapperClass}>\n <div className={MORE_FILTERS_CLASSES.DESKTOP_CONTENT}>\n <FiltersList\n shouldSearch={false}\n data={data}\n filters={filters.slice(groupAfterDesktop)}\n hasUrl={hasUrl}\n entity={entity}\n filterValues={filterValues}\n updateFilterValues={updateFilterValues}\n />\n </div>\n\n <div className={MORE_FILTERS_CLASSES.DESKTOP_BUTTONS}>\n <ResetDesktopForm handleReset={handleReset} />\n\n <button className=\"button button--full-width\" type=\"submit\">\n {SEARCH}\n </button>\n </div>\n </div>\n </div>\n\n <div className={MORE_FILTERS_CLASSES.MOBILE_BUTTONS}>\n <ResetDesktopForm handleReset={handleReset} />\n\n <button className=\"button button--full-width\" type=\"submit\">\n {SEARCH}\n </button>\n </div>\n </div>\n </>\n )}\n\n <br />\n\n {!displaySearchFilter && (\n <button className=\"button button--full-width\" type=\"submit\">\n {SEARCH}\n </button>\n )}\n </div>\n </div>\n\n {displaySearchFilter && <MobileFormToolbar formId={formId} handleReset={handleReset} />}\n </form>\n\n {isCollapsedOnResponsive &&\n !displaySearchFilter && (\n <div className=\"filter__refine filter__refine--mobile-close\" data-testid=\"refine-mobile\">\n <div role=\"button\" onClick={() => setDisplaySearchFilter(true)}>\n {REFINE}\n </div>\n </div>\n )}\n </>\n );\n};\n\nSearchFilter.propTypes = {\n data: PropTypes.object.isRequired,\n filters: PropTypes.array.isRequired,\n searchFilterRef: PropTypes.object.isRequired,\n hasUrl: PropTypes.bool.isRequired,\n entity: PropTypes.string.isRequired,\n handleSearch: PropTypes.func.isRequired,\n name: PropTypes.string.isRequired,\n displaySearchFilter: PropTypes.bool.isRequired,\n setDisplaySearchFilter: PropTypes.func.isRequired,\n isCollapsedOnResponsive: PropTypes.bool.isRequired,\n groupAfterDesktop: PropTypes.number.isRequired,\n groupAfterMobile: PropTypes.number.isRequired,\n filterValues: PropTypes.object.isRequired,\n setAppliedFilters: PropTypes.func.isRequired\n};\n\nexport default SearchFilter;\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"SearchFilter.js","names":["React","useState","useEffect","PropTypes","classnames","debounce","FiltersList","isDeviceDesktop","buildQuery","getInitialFilterValues","getResponsiveFilterClassnames","CloseMobileForm","ResetDesktopForm","MobileFormToolbar","SEARCH","REFINE","MORE_FILTERS_CLASSES","SearchFilter","searchFilterRef","data","filters","hasUrl","entity","handleSearch","name","isCollapsedOnResponsive","displaySearchFilter","setDisplaySearchFilter","groupAfterDesktop","groupAfterMobile","filterValues","setAppliedFilters","moreFiltersMobileCollapsed","setMoreFiltersMobileCollapsed","moreFiltersDesktopCollapsed","setMoreFiltersDesktopCollapsed","doSubmit","newValues","newQuery","handleSubmit","shouldSearch","type","formClass","moreFiltersMobileWrapperClass","moreFiltersMobileTogglerClass","moreFiltersDesktopWrapperClass","moreFiltersDesktopTogglerClass","formId","handleReset","updateFilterValues","shouldSubmit","shouldGroup","e","preventDefault","slice","MOBILE_CONTENT","DESKTOP_CONTENT","DESKTOP_BUTTONS","MOBILE_BUTTONS","propTypes","object","isRequired","array","bool","string","func","number"],"sources":["../../../../src/components/SearchFilter/SearchFilter/SearchFilter.js"],"sourcesContent":["import React, { useState, useEffect } from 'react';\nimport PropTypes from 'prop-types';\nimport classnames from 'classnames';\nimport debounce from 'lodash.debounce';\nimport FiltersList from './FiltersList';\nimport {\n isDeviceDesktop,\n buildQuery,\n getInitialFilterValues,\n getResponsiveFilterClassnames\n} from '../helpers';\nimport CloseMobileForm from './CloseMobileForm';\nimport ResetDesktopForm from './ResetDesktopForm';\nimport MobileFormToolbar from './MobileFormToolbar';\nimport { SEARCH, REFINE, MORE_FILTERS_CLASSES } from '../constants';\n\nconst SearchFilter = ({\n searchFilterRef,\n data,\n filters,\n hasUrl,\n entity,\n handleSearch,\n name,\n isCollapsedOnResponsive,\n displaySearchFilter,\n setDisplaySearchFilter,\n groupAfterDesktop,\n groupAfterMobile,\n filterValues,\n setAppliedFilters\n}) => {\n const [moreFiltersMobileCollapsed, setMoreFiltersMobileCollapsed] = useState(true);\n const [moreFiltersDesktopCollapsed, setMoreFiltersDesktopCollapsed] = useState(true);\n\n const doSubmit = (newValues = filterValues) => {\n const newQuery = buildQuery(newValues, filters);\n handleSearch(newQuery);\n setMoreFiltersDesktopCollapsed(true);\n setMoreFiltersMobileCollapsed(true);\n };\n\n const handleSubmit = debounce(newValues => {\n doSubmit(newValues);\n }, 200);\n\n useEffect(\n () => {\n if (filterValues.shouldSearch) {\n handleSubmit(filterValues);\n setAppliedFilters({ type: 'resetSearch' });\n }\n },\n [filterValues, handleSubmit, setAppliedFilters]\n );\n\n const formClass = classnames('filter__form filter__form--initial', {\n 'filter__form--mobile': isCollapsedOnResponsive && displaySearchFilter,\n 'filter__form--collapsible': isCollapsedOnResponsive\n });\n\n const {\n moreFiltersMobileWrapperClass,\n moreFiltersMobileTogglerClass,\n moreFiltersDesktopWrapperClass,\n moreFiltersDesktopTogglerClass\n } = getResponsiveFilterClassnames(moreFiltersDesktopCollapsed, moreFiltersMobileCollapsed);\n\n const formId = `filter-${name}-form`;\n\n const handleReset = () => {\n const newValues = getInitialFilterValues(null, filters, {});\n setAppliedFilters({ newValues, type: 'reset' });\n doSubmit(newValues);\n };\n\n const updateFilterValues = (newValues, shouldSubmit) => {\n setAppliedFilters({ newValues, shouldSearch: shouldSubmit, type: 'update' });\n };\n\n const shouldGroup = !!(groupAfterDesktop || groupAfterMobile);\n const shouldSearch = !hasUrl;\n\n return (\n <>\n <form\n ref={searchFilterRef}\n className={formClass}\n data-testid={formId}\n id={formId}\n onSubmit={e => {\n e.preventDefault();\n doSubmit();\n }}>\n {displaySearchFilter && (\n <CloseMobileForm handleClose={() => setDisplaySearchFilter(false)} />\n )}\n\n <div className=\"filter filter--search-refine\">\n <ResetDesktopForm handleReset={handleReset} />\n\n <div className=\"filter__wrapper filter__wrapper--search-refine\">\n {!shouldGroup && (\n <FiltersList\n shouldSearch={shouldSearch}\n data={data}\n filters={filters}\n hasUrl={hasUrl}\n entity={entity}\n filterValues={filterValues}\n updateFilterValues={updateFilterValues}\n />\n )}\n\n {shouldGroup && (\n <>\n <FiltersList\n shouldSearch={shouldSearch}\n data={data}\n filters={filters.slice(0, groupAfterMobile)}\n hasUrl={hasUrl}\n entity={entity}\n filterValues={filterValues}\n updateFilterValues={updateFilterValues}\n />\n\n {!!groupAfterMobile && (\n <button\n data-testId=\"search-filter-mobile-toggler\"\n className={moreFiltersMobileTogglerClass}\n type=\"button\"\n onClick={() => setMoreFiltersMobileCollapsed(!moreFiltersMobileCollapsed)}>\n Filters\n </button>\n )}\n\n <div className={moreFiltersMobileWrapperClass}>\n <div className={MORE_FILTERS_CLASSES.MOBILE_CONTENT}>\n <FiltersList\n shouldSearch={shouldSearch && isDeviceDesktop()}\n data={data}\n filters={filters.slice(\n groupAfterMobile,\n groupAfterDesktop ? groupAfterDesktop - 1 : 0\n )}\n hasUrl={hasUrl}\n entity={entity}\n filterValues={filterValues}\n updateFilterValues={updateFilterValues}\n />\n\n {!!groupAfterDesktop && (\n <button\n data-testId=\"search-filter-desktop-toggler\"\n className={moreFiltersDesktopTogglerClass}\n type=\"button\"\n onClick={() =>\n setMoreFiltersDesktopCollapsed(!moreFiltersDesktopCollapsed)\n }>\n More filters\n </button>\n )}\n\n <div className={moreFiltersDesktopWrapperClass}>\n <div className={MORE_FILTERS_CLASSES.DESKTOP_CONTENT}>\n <FiltersList\n shouldSearch={false}\n data={data}\n filters={filters.slice(groupAfterDesktop)}\n hasUrl={hasUrl}\n entity={entity}\n filterValues={filterValues}\n updateFilterValues={updateFilterValues}\n />\n </div>\n\n <div className={MORE_FILTERS_CLASSES.DESKTOP_BUTTONS}>\n <ResetDesktopForm handleReset={handleReset} />\n\n <button className=\"button button--full-width\" type=\"submit\">\n {SEARCH}\n </button>\n </div>\n </div>\n </div>\n\n <div className={MORE_FILTERS_CLASSES.MOBILE_BUTTONS}>\n <ResetDesktopForm handleReset={handleReset} />\n\n <button className=\"button button--full-width\" type=\"submit\">\n {SEARCH}\n </button>\n </div>\n </div>\n </>\n )}\n\n <br />\n\n {!displaySearchFilter && (\n <button className=\"button button--full-width\" type=\"submit\">\n {SEARCH}\n </button>\n )}\n </div>\n </div>\n\n {displaySearchFilter && <MobileFormToolbar formId={formId} handleReset={handleReset} />}\n </form>\n\n {isCollapsedOnResponsive &&\n !displaySearchFilter && (\n <div className=\"filter__refine filter__refine--mobile-close\" data-testid=\"refine-mobile\">\n <div role=\"button\" onClick={() => setDisplaySearchFilter(true)}>\n {REFINE}\n </div>\n </div>\n )}\n </>\n );\n};\n\nSearchFilter.propTypes = {\n data: PropTypes.object.isRequired,\n filters: PropTypes.array.isRequired,\n searchFilterRef: PropTypes.object.isRequired,\n hasUrl: PropTypes.bool.isRequired,\n entity: PropTypes.string.isRequired,\n handleSearch: PropTypes.func.isRequired,\n name: PropTypes.string.isRequired,\n displaySearchFilter: PropTypes.bool.isRequired,\n setDisplaySearchFilter: PropTypes.func.isRequired,\n isCollapsedOnResponsive: PropTypes.bool.isRequired,\n groupAfterDesktop: PropTypes.number.isRequired,\n groupAfterMobile: PropTypes.number.isRequired,\n filterValues: PropTypes.object.isRequired,\n setAppliedFilters: PropTypes.func.isRequired\n};\n\nexport default SearchFilter;\n"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TextBlockRender.js","names":["React","PropTypes","withTitle","useBannerInsertion","TextBlockRender","parsedTextBlock","name","updatedBlock","propTypes","oneOfType","array","object","isRequired","string"],"sources":["../../../src/components/TextBlock/TextBlockRender.js"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport { withTitle } from '../../HOC';\nimport { useBannerInsertion } from '../../hooks';\n\nconst TextBlockRender = ({ parsedTextBlock, name }) => {\n const updatedBlock = useBannerInsertion({ name, parsedTextBlock });\n return <> {updatedBlock} </>;\n};\n\nTextBlockRender.propTypes = {\n parsedTextBlock: PropTypes.oneOfType([PropTypes.array, PropTypes.object]).isRequired,\n name: PropTypes.string.isRequired\n};\n\nexport default withTitle(TextBlockRender);\n"],"mappings":"AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,OAAOC,SAAS,MAAM,YAAY;AAClC,SAASC,SAAS,QAAQ,WAAW;AACrC,SAASC,kBAAkB,QAAQ,aAAa;AAEhD,MAAMC,eAAe,GAAG,CAAC;EAAEC,eAAe;EAAEC;AAAK,CAAC,KAAK;EACrD,MAAMC,YAAY,GAAGJ,kBAAkB,CAAC;IAAEG,IAAI;IAAED;EAAgB,CAAC,CAAC;EAClE,oBAAO,
|
|
1
|
+
{"version":3,"file":"TextBlockRender.js","names":["React","PropTypes","withTitle","useBannerInsertion","TextBlockRender","parsedTextBlock","name","updatedBlock","propTypes","oneOfType","array","object","isRequired","string"],"sources":["../../../src/components/TextBlock/TextBlockRender.js"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport { withTitle } from '../../HOC';\nimport { useBannerInsertion } from '../../hooks';\n\nconst TextBlockRender = ({ parsedTextBlock, name }) => {\n const updatedBlock = useBannerInsertion({ name, parsedTextBlock });\n return <> {updatedBlock} </>;\n};\n\nTextBlockRender.propTypes = {\n parsedTextBlock: PropTypes.oneOfType([PropTypes.array, PropTypes.object]).isRequired,\n name: PropTypes.string.isRequired\n};\n\nexport default withTitle(TextBlockRender);\n"],"mappings":"AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,OAAOC,SAAS,MAAM,YAAY;AAClC,SAASC,SAAS,QAAQ,WAAW;AACrC,SAASC,kBAAkB,QAAQ,aAAa;AAEhD,MAAMC,eAAe,GAAG,CAAC;EAAEC,eAAe;EAAEC;AAAK,CAAC,KAAK;EACrD,MAAMC,YAAY,GAAGJ,kBAAkB,CAAC;IAAEG,IAAI;IAAED;EAAgB,CAAC,CAAC;EAClE,oBAAO,+CAAIE,YAAY,MAAK;AAC9B,CAAC;AAEDH,eAAe,CAACI,SAAS,GAAG;EAC1BH,eAAe,EAAEJ,SAAS,CAACQ,SAAS,CAAC,CAACR,SAAS,CAACS,KAAK,EAAET,SAAS,CAACU,MAAM,CAAC,CAAC,CAACC,UAAU;EACpFN,IAAI,EAAEL,SAAS,CAACY,MAAM,CAACD;AACzB,CAAC;AAED,eAAeV,SAAS,CAACE,eAAe,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"parse-props-to-display.js","names":["React","Fragment","at","isObject","getParsedPropValues","getSanitizedPropValues","BOLD_TAG","BLANK_SPACE_UNICODE_STRING","parsePropsToDisplay","props","propsToDisplay","filter","Boolean","map","bold","propertiesToDisplay","prefix","suffix","shouldStrip","enableLink","currentIndex","Wrapper","parsedPropValues","sanitizedPropValues","length","stringEndBlank"],"sources":["../../src/helpers/parse-props-to-display.js"],"sourcesContent":["import React, { Fragment } from 'react';\nimport at from 'lodash.at';\nimport isObject from './is-object';\nimport getParsedPropValues from './get-parsed-prop-values';\nimport getSanitizedPropValues from './get-sanitized-prop-values';\nimport { BOLD_TAG, BLANK_SPACE_UNICODE_STRING } from '../constants';\n\n// TODO this helper should be removed if database is wiped clean and all elements change to new props struc\nconst parsePropsToDisplay = (props = {}, propsToDisplay = []) => {\n if (!isObject(propsToDisplay[0])) return at(props, propsToDisplay).filter(Boolean);\n\n return propsToDisplay.map(\n ({ bold, propertiesToDisplay, prefix, suffix, shouldStrip, enableLink }, currentIndex) => {\n const Wrapper = bold ? BOLD_TAG : Fragment;\n\n const parsedPropValues = getParsedPropValues({\n propertiesToDisplay,\n props,\n enableLink,\n shouldStrip\n });\n\n const sanitizedPropValues = getSanitizedPropValues(parsedPropValues);\n if (!sanitizedPropValues || !sanitizedPropValues.length) return null;\n const stringEndBlank =\n currentIndex + 1 === propsToDisplay.length ? '' : BLANK_SPACE_UNICODE_STRING;\n\n return (\n <Wrapper>\n {prefix} {sanitizedPropValues} {suffix}\n {stringEndBlank}\n </Wrapper>\n );\n }\n );\n};\n\nexport default parsePropsToDisplay;\n"],"mappings":"AAAA,OAAOA,KAAK,IAAIC,QAAQ,QAAQ,OAAO;AACvC,OAAOC,EAAE,MAAM,WAAW;AAC1B,OAAOC,QAAQ,MAAM,aAAa;AAClC,OAAOC,mBAAmB,MAAM,0BAA0B;AAC1D,OAAOC,sBAAsB,MAAM,6BAA6B;AAChE,SAASC,QAAQ,EAAEC,0BAA0B,QAAQ,cAAc;;AAEnE;AACA,MAAMC,mBAAmB,GAAG,CAACC,KAAK,GAAG,CAAC,CAAC,EAAEC,cAAc,GAAG,EAAE,KAAK;EAC/D,IAAI,CAACP,QAAQ,CAACO,cAAc,CAAC,CAAC,CAAC,CAAC,EAAE,OAAOR,EAAE,CAACO,KAAK,EAAEC,cAAc,CAAC,CAACC,MAAM,CAACC,OAAO,CAAC;EAElF,OAAOF,cAAc,CAACG,GAAG,CACvB,CAAC;IAAEC,IAAI;IAAEC,mBAAmB;IAAEC,MAAM;IAAEC,MAAM;IAAEC,WAAW;IAAEC;EAAW,CAAC,EAAEC,YAAY,KAAK;IACxF,MAAMC,OAAO,GAAGP,IAAI,GAAGR,QAAQ,GAAGL,QAAQ;IAE1C,MAAMqB,gBAAgB,GAAGlB,mBAAmB,CAAC;MAC3CW,mBAAmB;MACnBN,KAAK;MACLU,UAAU;MACVD;IACF,CAAC,CAAC;IAEF,MAAMK,mBAAmB,GAAGlB,sBAAsB,CAACiB,gBAAgB,CAAC;IACpE,IAAI,CAACC,mBAAmB,IAAI,CAACA,mBAAmB,CAACC,MAAM,EAAE,OAAO,IAAI;IACpE,MAAMC,cAAc,GAClBL,YAAY,GAAG,CAAC,KAAKV,cAAc,CAACc,MAAM,GAAG,EAAE,GAAGjB,0BAA0B;IAE9E,oBACE,oBAAC,OAAO,QACLS,MAAM,
|
|
1
|
+
{"version":3,"file":"parse-props-to-display.js","names":["React","Fragment","at","isObject","getParsedPropValues","getSanitizedPropValues","BOLD_TAG","BLANK_SPACE_UNICODE_STRING","parsePropsToDisplay","props","propsToDisplay","filter","Boolean","map","bold","propertiesToDisplay","prefix","suffix","shouldStrip","enableLink","currentIndex","Wrapper","parsedPropValues","sanitizedPropValues","length","stringEndBlank"],"sources":["../../src/helpers/parse-props-to-display.js"],"sourcesContent":["import React, { Fragment } from 'react';\nimport at from 'lodash.at';\nimport isObject from './is-object';\nimport getParsedPropValues from './get-parsed-prop-values';\nimport getSanitizedPropValues from './get-sanitized-prop-values';\nimport { BOLD_TAG, BLANK_SPACE_UNICODE_STRING } from '../constants';\n\n// TODO this helper should be removed if database is wiped clean and all elements change to new props struc\nconst parsePropsToDisplay = (props = {}, propsToDisplay = []) => {\n if (!isObject(propsToDisplay[0])) return at(props, propsToDisplay).filter(Boolean);\n\n return propsToDisplay.map(\n ({ bold, propertiesToDisplay, prefix, suffix, shouldStrip, enableLink }, currentIndex) => {\n const Wrapper = bold ? BOLD_TAG : Fragment;\n\n const parsedPropValues = getParsedPropValues({\n propertiesToDisplay,\n props,\n enableLink,\n shouldStrip\n });\n\n const sanitizedPropValues = getSanitizedPropValues(parsedPropValues);\n if (!sanitizedPropValues || !sanitizedPropValues.length) return null;\n const stringEndBlank =\n currentIndex + 1 === propsToDisplay.length ? '' : BLANK_SPACE_UNICODE_STRING;\n\n return (\n <Wrapper>\n {prefix} {sanitizedPropValues} {suffix}\n {stringEndBlank}\n </Wrapper>\n );\n }\n );\n};\n\nexport default parsePropsToDisplay;\n"],"mappings":"AAAA,OAAOA,KAAK,IAAIC,QAAQ,QAAQ,OAAO;AACvC,OAAOC,EAAE,MAAM,WAAW;AAC1B,OAAOC,QAAQ,MAAM,aAAa;AAClC,OAAOC,mBAAmB,MAAM,0BAA0B;AAC1D,OAAOC,sBAAsB,MAAM,6BAA6B;AAChE,SAASC,QAAQ,EAAEC,0BAA0B,QAAQ,cAAc;;AAEnE;AACA,MAAMC,mBAAmB,GAAG,CAACC,KAAK,GAAG,CAAC,CAAC,EAAEC,cAAc,GAAG,EAAE,KAAK;EAC/D,IAAI,CAACP,QAAQ,CAACO,cAAc,CAAC,CAAC,CAAC,CAAC,EAAE,OAAOR,EAAE,CAACO,KAAK,EAAEC,cAAc,CAAC,CAACC,MAAM,CAACC,OAAO,CAAC;EAElF,OAAOF,cAAc,CAACG,GAAG,CACvB,CAAC;IAAEC,IAAI;IAAEC,mBAAmB;IAAEC,MAAM;IAAEC,MAAM;IAAEC,WAAW;IAAEC;EAAW,CAAC,EAAEC,YAAY,KAAK;IACxF,MAAMC,OAAO,GAAGP,IAAI,GAAGR,QAAQ,GAAGL,QAAQ;IAE1C,MAAMqB,gBAAgB,GAAGlB,mBAAmB,CAAC;MAC3CW,mBAAmB;MACnBN,KAAK;MACLU,UAAU;MACVD;IACF,CAAC,CAAC;IAEF,MAAMK,mBAAmB,GAAGlB,sBAAsB,CAACiB,gBAAgB,CAAC;IACpE,IAAI,CAACC,mBAAmB,IAAI,CAACA,mBAAmB,CAACC,MAAM,EAAE,OAAO,IAAI;IACpE,MAAMC,cAAc,GAClBL,YAAY,GAAG,CAAC,KAAKV,cAAc,CAACc,MAAM,GAAG,EAAE,GAAGjB,0BAA0B;IAE9E,oBACE,oBAAC,OAAO,QACLS,MAAM,OAAGO,mBAAmB,OAAGN,MAAM,EACrCQ,cAAc,CACP;EAEd,CAAC,CACF;AACH,CAAC;AAED,eAAejB,mBAAmB"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@blaze-cms/react-page-builder",
|
|
3
|
-
"version": "0.127.0
|
|
3
|
+
"version": "0.127.0",
|
|
4
4
|
"description": "Blaze react page builder",
|
|
5
5
|
"main": "lib/index.js",
|
|
6
6
|
"module": "lib-es/index.js",
|
|
@@ -27,14 +27,14 @@
|
|
|
27
27
|
},
|
|
28
28
|
"license": "GPL-3.0",
|
|
29
29
|
"dependencies": {
|
|
30
|
-
"@blaze-cms/core-auth-ui": "^0.
|
|
31
|
-
"@blaze-cms/core-errors": "^0.
|
|
30
|
+
"@blaze-cms/core-auth-ui": "^0.127.0",
|
|
31
|
+
"@blaze-cms/core-errors": "^0.127.0",
|
|
32
32
|
"@blaze-cms/image-cdn-react": "0.3.0-alpha.3",
|
|
33
|
-
"@blaze-cms/nextjs-components": "^0.
|
|
34
|
-
"@blaze-cms/plugin-search-ui": "0.127.0
|
|
35
|
-
"@blaze-cms/setup-ui": "^0.
|
|
36
|
-
"@blaze-cms/utils": "^0.
|
|
37
|
-
"@blaze-cms/utils-handlebars": "^0.
|
|
33
|
+
"@blaze-cms/nextjs-components": "^0.127.0",
|
|
34
|
+
"@blaze-cms/plugin-search-ui": "^0.127.0",
|
|
35
|
+
"@blaze-cms/setup-ui": "^0.127.0",
|
|
36
|
+
"@blaze-cms/utils": "^0.127.0",
|
|
37
|
+
"@blaze-cms/utils-handlebars": "^0.127.0",
|
|
38
38
|
"@blaze-react/breadcrumb": "0.8.0-alpha.60",
|
|
39
39
|
"@blaze-react/button": "0.5.19",
|
|
40
40
|
"@blaze-react/checkboxes": "0.5.31",
|
|
@@ -45,7 +45,7 @@
|
|
|
45
45
|
"@blaze-react/utils": "0.5.15",
|
|
46
46
|
"core-js": "^3.2.1",
|
|
47
47
|
"entities": "^2.0.0",
|
|
48
|
-
"html-react-parser": "^0.
|
|
48
|
+
"html-react-parser": "^3.0.4",
|
|
49
49
|
"lodash.at": "^4.6.0",
|
|
50
50
|
"lodash.camelcase": "^4.3.0",
|
|
51
51
|
"lodash.clonedeep": "^4.5.0",
|
|
@@ -87,5 +87,5 @@
|
|
|
87
87
|
"lib/*",
|
|
88
88
|
"lib-es/*"
|
|
89
89
|
],
|
|
90
|
-
"gitHead": "
|
|
90
|
+
"gitHead": "dde05d6ccc6823315e5f16c8e7ded5a84637d9c4"
|
|
91
91
|
}
|
|
@@ -32,7 +32,7 @@ const BannerRender = ({
|
|
|
32
32
|
asPath,
|
|
33
33
|
action,
|
|
34
34
|
actionKey,
|
|
35
|
-
|
|
35
|
+
renderCounter,
|
|
36
36
|
userPropsData,
|
|
37
37
|
...otherProps
|
|
38
38
|
}) => {
|
|
@@ -79,7 +79,7 @@ const BannerRender = ({
|
|
|
79
79
|
const shouldShowBanner =
|
|
80
80
|
parsedAdunit && parsedSizes && !!parsedSizes.length && isContextualTargetingReady;
|
|
81
81
|
|
|
82
|
-
const customTargetings = setCustomTargetings(targetings,
|
|
82
|
+
const customTargetings = setCustomTargetings(targetings, renderCounter);
|
|
83
83
|
|
|
84
84
|
const targetingArguments = { ...parsedTargetings, ...customTargetings, ...userPropsData };
|
|
85
85
|
|
|
@@ -107,7 +107,7 @@ BannerRender.propTypes = {
|
|
|
107
107
|
entity: PropTypes.string,
|
|
108
108
|
targetings: PropTypes.string,
|
|
109
109
|
sizes: PropTypes.string,
|
|
110
|
-
|
|
110
|
+
renderCounter: PropTypes.number,
|
|
111
111
|
userPropsData: PropTypes.object
|
|
112
112
|
};
|
|
113
113
|
|
|
@@ -119,7 +119,7 @@ BannerRender.defaultProps = {
|
|
|
119
119
|
entity: '',
|
|
120
120
|
targetings: '',
|
|
121
121
|
sizes: '',
|
|
122
|
-
|
|
122
|
+
renderCounter: null,
|
|
123
123
|
userPropsData: {}
|
|
124
124
|
};
|
|
125
125
|
|
|
@@ -20,11 +20,11 @@ const buildTargetingValue = valueTargeting =>
|
|
|
20
20
|
? valueTargeting.replace(/\;|\[|\]/gm, char => (char === ';' ? ',' : '')).split(',')
|
|
21
21
|
: valueTargeting;
|
|
22
22
|
|
|
23
|
-
const setCustomTargetings = (targetings,
|
|
23
|
+
const setCustomTargetings = (targetings, renderCounter) => {
|
|
24
24
|
let bannerTargetings = {};
|
|
25
25
|
|
|
26
|
-
const updatedTargetings =
|
|
27
|
-
? addPosnToTargetings(targetings,
|
|
26
|
+
const updatedTargetings = renderCounter
|
|
27
|
+
? addPosnToTargetings(targetings, renderCounter)
|
|
28
28
|
: targetings;
|
|
29
29
|
|
|
30
30
|
const isValidTargeting = updatedTargetings && typeof updatedTargetings === 'string';
|
|
@@ -41,7 +41,7 @@ const CardContainer = ({
|
|
|
41
41
|
const dynamicWrapperSizes = enableCarousel
|
|
42
42
|
? ''
|
|
43
43
|
: getDynamicGridClasses('grid', itemsPerRow, designConfig);
|
|
44
|
-
let
|
|
44
|
+
let renderCounter = 0;
|
|
45
45
|
const CardWrapper = enableCarousel ? CarouselWrapper : Wrapper;
|
|
46
46
|
|
|
47
47
|
return (
|
|
@@ -55,7 +55,7 @@ const CardContainer = ({
|
|
|
55
55
|
{entities.map(({ baseAdunit, id, ...entityProps }, index) => {
|
|
56
56
|
const extraProps = parsePropsToDisplay(entityProps, propsToDisplay);
|
|
57
57
|
const dynamicKey = [itemId, index].join('-');
|
|
58
|
-
if (baseAdunit)
|
|
58
|
+
if (baseAdunit) renderCounter += 1;
|
|
59
59
|
|
|
60
60
|
const priority = priorityLimit > 0 && index + 1 <= priorityLimit;
|
|
61
61
|
|
|
@@ -66,7 +66,7 @@ const CardContainer = ({
|
|
|
66
66
|
baseAdunit={baseAdunit}
|
|
67
67
|
{...entityProps}
|
|
68
68
|
modifier={modifier}
|
|
69
|
-
|
|
69
|
+
renderCounter={renderCounter}
|
|
70
70
|
/>
|
|
71
71
|
) : (
|
|
72
72
|
<Card
|
|
@@ -7,10 +7,10 @@ import { getClassModifiers } from '../../utils';
|
|
|
7
7
|
import { CODE } from '../../constants';
|
|
8
8
|
import { wrapScriptTags } from './helpers';
|
|
9
9
|
|
|
10
|
-
const Code = memo(({ code: embedCode, ...otherProps }) => {
|
|
10
|
+
const Code = memo(({ code: embedCode, parserOptions, ...otherProps }) => {
|
|
11
11
|
if (!embedCode) return null;
|
|
12
12
|
|
|
13
|
-
const parsedCode = parseHTML(embedCode);
|
|
13
|
+
const parsedCode = parseHTML(embedCode, parserOptions);
|
|
14
14
|
const wrappedCode = wrapScriptTags(parsedCode);
|
|
15
15
|
const modifiers = getClassModifiers(CODE, { ...otherProps });
|
|
16
16
|
|
|
@@ -19,12 +19,14 @@ const Code = memo(({ code: embedCode, ...otherProps }) => {
|
|
|
19
19
|
|
|
20
20
|
Code.propTypes = {
|
|
21
21
|
code: PropTypes.string,
|
|
22
|
-
modifier: PropTypes.string
|
|
22
|
+
modifier: PropTypes.string,
|
|
23
|
+
parserOptions: PropTypes.object
|
|
23
24
|
};
|
|
24
25
|
|
|
25
26
|
Code.defaultProps = {
|
|
26
27
|
code: '',
|
|
27
|
-
modifier: ''
|
|
28
|
+
modifier: '',
|
|
29
|
+
parserOptions: {}
|
|
28
30
|
};
|
|
29
31
|
|
|
30
32
|
export default withTitle(Code);
|
|
@@ -17,9 +17,13 @@ function getWrappedScriptTag(child) {
|
|
|
17
17
|
function wrapScriptTags(parsedCode) {
|
|
18
18
|
if (Array.isArray(parsedCode)) {
|
|
19
19
|
parsedCode.forEach((child, index) => {
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
20
|
+
try {
|
|
21
|
+
// modify children array as we just want to wrap single components
|
|
22
|
+
// eslint-disable-next-line no-param-reassign
|
|
23
|
+
parsedCode[index] = getWrappedScriptTag(child);
|
|
24
|
+
} catch {
|
|
25
|
+
// catch read-only element errors
|
|
26
|
+
}
|
|
23
27
|
});
|
|
24
28
|
|
|
25
29
|
return parsedCode;
|
|
@@ -50,7 +50,7 @@ const FullRenderItem = ({
|
|
|
50
50
|
{!!parsedPropsToDisplay.length && (
|
|
51
51
|
<>{parsedPropsToDisplay.map(prop => (prop ? <span key={prop}>{prop}</span> : null))}</>
|
|
52
52
|
)}
|
|
53
|
-
{shouldRenderBanner && <Banner {...bannerProps}
|
|
53
|
+
{shouldRenderBanner && <Banner {...bannerProps} renderCounter={bannerIndex} />}
|
|
54
54
|
</>
|
|
55
55
|
);
|
|
56
56
|
};
|