diff --git a/Packages-react/extensions/ohif-cornerstone-extension/package.json b/Packages-react/extensions/ohif-cornerstone-extension/package.json
index e7388d424..81bbef186 100644
--- a/Packages-react/extensions/ohif-cornerstone-extension/package.json
+++ b/Packages-react/extensions/ohif-cornerstone-extension/package.json
@@ -92,6 +92,6 @@
"@babel/runtime": "^7.2.0",
"classnames": "^2.2.6",
"lodash.throttle": "^4.1.1",
- "react-cornerstone-viewport": "^0.1.23"
+ "react-cornerstone-viewport": "^0.1.24"
}
}
diff --git a/Packages-react/extensions/ohif-cornerstone-extension/rollup.config.js b/Packages-react/extensions/ohif-cornerstone-extension/rollup.config.js
index 4333cb6f5..f4130377c 100644
--- a/Packages-react/extensions/ohif-cornerstone-extension/rollup.config.js
+++ b/Packages-react/extensions/ohif-cornerstone-extension/rollup.config.js
@@ -13,6 +13,7 @@ const globals = {
'react-dom': 'ReactDOM',
'react-redux': 'ReactRedux',
'react-resize-detector': 'ReactResizeDetector',
+ 'react-viewerbase': 'reactViewerbase',
'prop-types': 'PropTypes',
'cornerstone-core': 'cornerstone',
'cornerstone-wado-image-loader': 'cornerstoneWADOImageLoader',
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..fb458d11b 100644
--- a/Packages-react/extensions/ohif-cornerstone-extension/src/OHIFCornerstoneViewport.js
+++ b/Packages-react/extensions/ohif-cornerstone-extension/src/OHIFCornerstoneViewport.js
@@ -32,11 +32,16 @@ class OHIFCornerstoneViewport extends Component {
viewportData: null
};
+ static defaultProps = {
+ customProps: {}
+ };
+
static propTypes = {
studies: PropTypes.object,
displaySet: PropTypes.object,
viewportIndex: PropTypes.number,
- children: PropTypes.node
+ children: PropTypes.node,
+ customProps: PropTypes.object
};
static id = 'OHIFCornerstoneViewport';
@@ -226,6 +231,7 @@ class OHIFCornerstoneViewport extends Component {
)}
{childrenWithProps}