+
+export type DetailsPanelResource = ProjectResource | CollectionResource | ProcessResource | EmptyResource;
+
+const getItem = (res: DetailsPanelResource) => {
+ return DetailsPanelFactory.createItem(res);
+};
+
+const getDefaultItem = () => {
+ return DetailsPanelFactory.createItem({ kind: undefined, name: 'Projects' });
+};
+
+const mapStateToProps = ({ detailsPanel }: RootState) => {
+ const { isOpened, item } = detailsPanel;
+ return {
+ isOpened,
+ item: item ? getItem(item as DetailsPanelResource) : getDefaultItem()
+ };
+};
+
+const mapDispatchToProps = (dispatch: Dispatch) => ({
+ onCloseDrawer: () => {
+ dispatch(actions.TOGGLE_DETAILS_PANEL());
+ }
+});
+
+const DetailsPanelContainer = connect(mapStateToProps, mapDispatchToProps)(DetailsPanel);
+
+export default withStyles(styles)(DetailsPanelContainer);