next-start-cli
Version:
This is a CLI tool to create a nextjs project and add the necessary dependencies and configurations
21 lines (20 loc) • 600 B
text/typescript
import { IMenueItem } from "@/types/navigation";
export function filterMenuItems(
menuItems: IMenueItem[],
showOnlyIn: "navbar" | "footer"
): IMenueItem[] {
return menuItems
.map((menu) => {
if ("items" in menu) {
const filteredItems = menu.items.filter(
(item) => item.showOnlyIn !== showOnlyIn
);
if (filteredItems.length === 0) {
return null;
}
return { ...menu, items: filteredItems };
}
return menu.showOnlyIn !== showOnlyIn ? menu : null;
})
.filter((menu): menu is IMenueItem => menu !== null);
}