@@ -10,6 +10,9 @@ import { MainMenuSideBarItems, MainMenuSideBarProps } from "./MenuSideBarProps";
1010import ElectricBoltIcon from "@mui/icons-material/ElectricBolt" ;
1111import { useNavigateToTop } from "../../hooks/useNavigateToTop" ;
1212
13+ import ExpandLess from "@mui/icons-material/ExpandLess" ;
14+ import ExpandMore from "@mui/icons-material/ExpandMore" ;
15+
1316export default function MainMenuSideBar ( props : MainMenuSideBarProps ) {
1417 const { /* items, */ selectedIndex /* setSelectedIndex */ } = props ;
1518 const navigate = useNavigateToTop ( ) ;
@@ -64,7 +67,6 @@ export default function MainMenuSideBar(props: MainMenuSideBarProps) {
6467 index : 26 ,
6568 onClick : ( ) => navigate ( "/components/fullscreen" ) ,
6669 } ,
67-
6870 ] ,
6971 } ,
7072 {
@@ -126,43 +128,31 @@ export default function MainMenuSideBar(props: MainMenuSideBarProps) {
126128 index : 5 ,
127129 onClick : ( ) => navigate ( "/localization" ) ,
128130 } ,
131+ /* {
132+ label: "Code Generator",
133+ index: 7,
134+ onClick: () => navigate("/code-generator"),
135+ }, */
136+ {
137+ label : "Types" ,
138+ index : 7 ,
139+ onClick : ( ) => navigate ( "/types" ) ,
140+ } ,
129141 {
130142 label : "Server side" ,
131143 index : 6 ,
132144 onClick : ( ) => navigate ( "/server-side" ) ,
133145 } ,
134146 {
135- label : "Code Generator" ,
136- index : 7 ,
137- onClick : ( ) => navigate ( "/code-generator" ) ,
138- } ,
139- {
140- label : "Types" ,
147+ label : "File readers" ,
141148 index : 8 ,
142- onClick : ( ) => navigate ( "/types " ) ,
149+ onClick : ( ) => navigate ( "/file-reader " ) ,
143150 } ,
151+
144152 {
145- label : "Utilities Methods " ,
153+ label : "File download " ,
146154 index : 9 ,
147- subMenu : [
148- {
149- label : "File readers" ,
150- index : 81 ,
151- onClick : ( ) => navigate ( "/utilities-methods/file-reader" ) ,
152- } ,
153-
154- {
155- label : "File uploader" ,
156- index : 82 ,
157- onClick : ( ) => navigate ( "/utilities-methods/file-uploader" ) ,
158- } ,
159-
160- {
161- label : "File download" ,
162- index : 83 ,
163- onClick : ( ) => navigate ( "/utilities-methods/file-downloader" ) ,
164- } ,
165- ] ,
155+ onClick : ( ) => navigate ( "/file-download" ) ,
166156 } ,
167157 ] ;
168158
@@ -175,6 +165,7 @@ export default function MainMenuSideBar(props: MainMenuSideBarProps) {
175165 } )
176166 ) ;
177167
168+
178169 /* const handleClick = () => {
179170 //setOpen(!open);
180171 }; */
@@ -195,11 +186,24 @@ export default function MainMenuSideBar(props: MainMenuSideBarProps) {
195186 withSubMenu ?: boolean
196187 ) => {
197188 //setSelectedIndex(index);
189+ console . log ( "newIndex" , index , withSubMenu ) ;
198190 if ( ! withSubMenu ) {
199191 onClick ?.( ) ;
200192 } else {
201193 setRegularItemsIni ( ( arr ) =>
202194 arr . map ( ( item ) => {
195+ /* if (item.subMenu) {
196+ const newSubMenu = item.subMenu.map((x) => {
197+ if (x.index === index) {
198+ return { ...x , };
199+ } else {
200+ return { ...x };
201+ }
202+ });
203+ return { ...item, subMenu: newSubMenu };
204+ } else */
205+
206+
203207 if ( item . index === index ) {
204208 return { ...item , isOpen : ! item . isOpen } ;
205209 }
@@ -300,7 +304,9 @@ export default function MainMenuSideBar(props: MainMenuSideBarProps) {
300304 style = { { padding : "2px 20px" } }
301305 key = { indexBase }
302306 // selected={subMenu === undefined && selectedIndex === index}
303- selected = { isOpen && selectedIndex === index }
307+ selected = {
308+ ( subMenu === undefined || isOpen ) && selectedIndex === index
309+ }
304310 onClick = { ( event ) =>
305311 handleListItemClick (
306312 event ,
@@ -321,6 +327,7 @@ export default function MainMenuSideBar(props: MainMenuSideBarProps) {
321327 primary = { label || "" }
322328 primaryTypographyProps = { { fontWeight : "600" } }
323329 />
330+ { subMenu && < > { isOpen ? < ExpandLess /> : < ExpandMore /> } </ > }
324331 </ ListItemButton >
325332
326333 { subMenu && (
@@ -336,6 +343,7 @@ export default function MainMenuSideBar(props: MainMenuSideBarProps) {
336343 < ListItemButton
337344 style = { { paddingTop : 0 } }
338345 sx = { { pl : 4 } }
346+ //selected={selectedIndex === index}
339347 selected = { selectedIndex === index }
340348 key = { index2 + indexBase }
341349 onClick = { ( event ) =>
0 commit comments