Rename dfs to collectLeaves and change concat to push
This commit is contained in:
parent
bf7a07ca7f
commit
81cb3d60e4
|
@ -295,22 +295,23 @@ type Leaves = {
|
|||
ancestors: { name: string; route: string }[];
|
||||
}[];
|
||||
|
||||
function dfs(
|
||||
function collectLeaves(
|
||||
entry: { name: string; route: string; exact?: boolean; submenu?: Menu },
|
||||
ancestors: { name: string; route: string }[]
|
||||
): Leaves {
|
||||
if (entry.submenu == null) {
|
||||
return [{ ...entry, ancestors }];
|
||||
}
|
||||
let ret = [] as Leaves;
|
||||
const ret = [] as Leaves;
|
||||
for (const subEntry of entry.submenu) {
|
||||
ret = ret.concat(dfs(subEntry, [...ancestors, entry]));
|
||||
ret.push(...collectLeaves(subEntry, [...ancestors, entry]));
|
||||
}
|
||||
return ret;
|
||||
}
|
||||
|
||||
const leaves: Leaves = menu.reduce((prev, cur) => {
|
||||
return prev.concat(dfs(cur, []));
|
||||
prev.push(...collectLeaves(cur, []));
|
||||
return prev;
|
||||
}, [] as Leaves);
|
||||
|
||||
function shouldHighlight(
|
||||
|
|
Loading…
Reference in New Issue