From 8ab409ebdc8684d388dbc2b8547f47c42b9a0428 Mon Sep 17 00:00:00 2001 From: andreiggr Date: Tue, 4 Oct 2022 13:56:36 +0300 Subject: [PATCH] use specific volto alpha version for testing --- Jenkinsfile | 2 +- .../manage/Blocks/Block/StyleWrapper.jsx | 22 +++++++++++++++++++ 2 files changed, 23 insertions(+), 1 deletion(-) create mode 100644 src/customizations/volto/components/manage/Blocks/Block/StyleWrapper.jsx diff --git a/Jenkinsfile b/Jenkinsfile index 0b4263e..05b7b40 100644 --- a/Jenkinsfile +++ b/Jenkinsfile @@ -6,7 +6,7 @@ pipeline { NAMESPACE = "@eeacms" SONARQUBE_TAGS = "volto.eea.europa.eu,forest.eea.europa.eu" DEPENDENCIES = "" - VOLTO = "alpha" + VOLTO = "16.0.0-alpha.14" } stages { diff --git a/src/customizations/volto/components/manage/Blocks/Block/StyleWrapper.jsx b/src/customizations/volto/components/manage/Blocks/Block/StyleWrapper.jsx new file mode 100644 index 0000000..23fe121 --- /dev/null +++ b/src/customizations/volto/components/manage/Blocks/Block/StyleWrapper.jsx @@ -0,0 +1,22 @@ +import React from 'react'; +import cx from 'classnames'; +import { buildStyleClassNamesFromData } from '@plone/volto/helpers'; + +const StyleWrapper = (props) => { + const { children, data = {} } = props; + const styles = buildStyleClassNamesFromData(data.styles); + const rewrittenChildren = React.Children.map(children, (child) => { + if (React.isValidElement(child)) { + const childProps = { + ...props, + className: cx([child.props.className, ...styles]), + }; + return React.cloneElement(child, childProps); + } + return child; + }); + + return rewrittenChildren; +}; + +export default StyleWrapper;