From 307b0a9ac1a9658958fe66206eac3fd4b4e6b334 Mon Sep 17 00:00:00 2001 From: dannyrb Date: Mon, 25 May 2020 21:12:37 -0400 Subject: [PATCH] Simplify viewportComponent map --- .../viewer/src/components/ViewportGrid.jsx | 71 +++++++------------ 1 file changed, 27 insertions(+), 44 deletions(-) diff --git a/platform/viewer/src/components/ViewportGrid.jsx b/platform/viewer/src/components/ViewportGrid.jsx index 03c11764f..7ceeeddd5 100644 --- a/platform/viewer/src/components/ViewportGrid.jsx +++ b/platform/viewer/src/components/ViewportGrid.jsx @@ -84,49 +84,30 @@ function ViewerViewportGrid(props) { for (let i = 0; i < numViewportPanes; i++) { const viewportIndex = i; - const paneMeta = viewports[i]; - const isEmpty = !paneMeta || !paneMeta.displaySetInstanceUID; + const paneMetadata = viewports[i] || {}; + const { displaySetInstanceUID } = paneMetadata; + const displaySet = DisplaySetService.getDisplaySetByUID(displaySetInstanceUID) || {}; + const ViewportComponent = _getViewportComponent( + displaySet.SOPClassHandlerId, + viewportComponents + ); - if (isEmpty) { - viewportPanes[i] = ( - { setActiveViewportIndex(viewportIndex); }} - isActive={activeViewportIndex === viewportIndex} - > - - - ); - } else { - const displaySet = DisplaySetService.getDisplaySetByUID( - paneMeta.displaySetInstanceUID - ); - - const ViewportComponent = _getViewportComponent( - displaySet, - viewportComponents - ); - - viewportPanes[i] = ( - { setActiveViewportIndex(viewportIndex); }} - isActive={activeViewportIndex === viewportIndex} - > - - - ); - } + viewportPanes[i] = ( + { setActiveViewportIndex(viewportIndex); }} + isActive={activeViewportIndex === viewportIndex} + > + + + ); } return viewportPanes; @@ -154,8 +135,10 @@ ViewerViewportGrid.defaultProps = { viewportComponents: [], }; -function _getViewportComponent(displaySet, viewportComponents) { - const { SOPClassHandlerId } = displaySet; +function _getViewportComponent(SOPClassHandlerId, viewportComponents) { + if (!SOPClassHandlerId) { + return EmptyViewport; + } for (let i = 0; i < viewportComponents.length; i++) { if (