Files
ohif-viewer/platform/viewer/src/connectedComponents/ConnectedLayoutManager.js
T

36 lines
1.0 KiB
JavaScript
Raw Normal View History

2019-08-06 23:56:44 -04:00
import { LayoutManager } from "react-viewerbase";
import { MODULE_TYPES } from "@ohif/core";
import { connect } from "react-redux";
import { extensionManager } from "./../App.js";
const mapStateToProps = state => {
const availableViewportModules = {};
const viewportModules = extensionManager.modules[MODULE_TYPES.VIEWPORT];
viewportModules.forEach(moduleDefinition => {
availableViewportModules[moduleDefinition.extensionId] =
moduleDefinition.module;
2019-04-19 12:42:26 -04:00
});
// TODO: Use something like state.plugins.defaultPlugin[MODULE_TYPES.VIEWPORT]
2019-04-19 12:42:26 -04:00
let defaultPlugin;
if (viewportModules.length) {
defaultPlugin = viewportModules[0].extensionId;
2019-04-19 12:42:26 -04:00
}
return {
layout: state.viewports.layout,
activeViewportIndex: state.viewports.activeViewportIndex,
// TODO: rename `availableViewportModules`
availablePlugins: availableViewportModules,
// TODO: rename `defaultViewportModule`
2019-08-06 23:56:44 -04:00
defaultPlugin
2019-04-19 12:42:26 -04:00
};
};
const ConnectedLayoutManager = connect(
2019-04-19 12:42:26 -04:00
mapStateToProps,
null
)(LayoutManager);
export default ConnectedLayoutManager;