diff --git a/Packages-react/extensions/ohif-cornerstone-extension/src/OHIFCornerstoneExtension.js b/Packages-react/extensions/ohif-cornerstone-extension/src/OHIFCornerstoneExtension.js index 0d18df211..abf239939 100644 --- a/Packages-react/extensions/ohif-cornerstone-extension/src/OHIFCornerstoneExtension.js +++ b/Packages-react/extensions/ohif-cornerstone-extension/src/OHIFCornerstoneExtension.js @@ -11,9 +11,18 @@ import ToolbarModule from './ToolbarModule.js'; * @param children * @return {function(*): *} */ -function withChildren(WrappedComponent, children) { +function componentWithProps(WrappedComponent, children, customProps) { return function(props) { - return ; + const extraProps = { + customProps + }; + if (children.viewport) { + extraProps.children = children.viewport; + } + + const mergedProps = Object.assign({}, props, extraProps); + + return ; }; } @@ -21,8 +30,10 @@ function withChildren(WrappedComponent, children) { // https://github.com/whitecolor/yalc export default class OHIFCornerstoneExtension { - constructor(children) { + constructor(props) { + const { children = {}, customProps = {} } = props; this.children = children; + this.customProps = customProps; } /** @@ -33,11 +44,11 @@ export default class OHIFCornerstoneExtension { } getViewportModule() { - if (this.children && this.children.viewport) { - return withChildren(OHIFCornerstoneViewport, this.children.viewport); - } - - return OHIFCornerstoneViewport; + return componentWithProps( + OHIFCornerstoneViewport, + this.children, + this.customProps + ); } getSopClassHandler() { diff --git a/Packages-react/extensions/ohif-cornerstone-extension/src/OHIFCornerstoneViewport.js b/Packages-react/extensions/ohif-cornerstone-extension/src/OHIFCornerstoneViewport.js index 3224b6465..9e90a046e 100644 --- a/Packages-react/extensions/ohif-cornerstone-extension/src/OHIFCornerstoneViewport.js +++ b/Packages-react/extensions/ohif-cornerstone-extension/src/OHIFCornerstoneViewport.js @@ -36,7 +36,8 @@ class OHIFCornerstoneViewport extends Component { studies: PropTypes.object, displaySet: PropTypes.object, viewportIndex: PropTypes.number, - children: PropTypes.node + children: PropTypes.node, + customProps: PropTypes.object }; static id = 'OHIFCornerstoneViewport'; @@ -226,6 +227,7 @@ class OHIFCornerstoneViewport extends Component { )} {childrenWithProps}