import React from "react"; import { connect } from "react-redux"; import ProjectList from "./projectList"; import TaskList from "./taskList"; import Box from '@mui/material/Box'; import Paper from '@mui/material/Paper'; // Dashboard shows projects loaded from cloud based NoSqL which is in sync with a relational // database which holds security and other relationship based information about the projects // When a project is selected various artifacts in the project are shown based on template // it was based on. function Dashboard(props) { if (props.selectedProjectId !== "0") { const selectedProject = (projects, selectedProjectId) => { return projects.filter((project) => project.id === selectedProjectId); }; const project = props.projects.find( (project) => project.projectId === props.selectedProjectId ); // return TaskList as a table with two columns WBS numbers and Tasks when a project is selected // WBS number is recalculated when change occurs // regardless of the template used task decomposition is utilized until task can be assigned to // one and only one resource. Resource can be a person, team, departement or company. return ( <>
:not(style)': { m: 1, width: 480, height: 1/2, }, }} >

{project ? project.projectName : "No Project Selected - Please select one"}

); } else { return (

Please select a project

); } } export default connect(mapStateToProps)(Dashboard); function mapStateToProps(state) { return { projects: state.projectsReducer.projects, selectedProjectId: state.projectsReducer.selectedProjectId, }; }