import React, { useEffect, useState } from "react"; import Header from "./Header"; import useModuleStore, { useSubModuleStore } from "../../../store/useModuleStore"; import { AnalysisIcon, MechanicsIcon, PropertiesIcon, SimulationIcon, } from "../../icons/SimulationIcons"; import useToggleStore from "../../../store/useUIToggleStore"; import MachineMechanics from "./mechanics/MachineMechanics"; import Visualization from "./visualization/Visualization"; import GlobalProperties from "./properties/GlobalProperties"; import AsstePropertiies from "./properties/AssetProperties"; import Analysis from "./analysis/Analysis"; import Simulations from "./simulation/Simulations"; import { useSelectedActionSphere } from "../../../store/store"; const SideBarRight: React.FC = () => { const { activeModule } = useModuleStore(); const { selectedActionSphere } = useSelectedActionSphere(); const { subModule, setSubModule } = useSubModuleStore(); const { toggleUI } = useToggleStore(); // Reset subModule whenever activeModule changes useEffect(() => { setSubModule("properties"); }, [activeModule]); return (
{toggleUI && (
setSubModule("properties")} >
{activeModule === "simulation" && ( <>
setSubModule("mechanics")} >
setSubModule("simulations")} >
setSubModule("analysis")} >
)}
)} {/* process builder */} {toggleUI && subModule === "properties" && activeModule !== "visualization" && (
{/* */}
)} {/* simulation */} {toggleUI && activeModule === "simulation" && ( <> {(subModule === "mechanics" && selectedActionSphere) && (
)} {(subModule === "mechanics" && !selectedActionSphere) && (
{/* */}
)} {subModule === "analysis" && (
)} {subModule === "simulations" && (
)} )} {/* realtime visualization */} {toggleUI && activeModule === "visualization" && }
); }; export default SideBarRight;