diff --git a/packages/twenty-front/src/modules/navigation-menu-item/display/hooks/useWorkspaceNavigationMenuItems.ts b/packages/twenty-front/src/modules/navigation-menu-item/display/hooks/useWorkspaceNavigationMenuItems.ts index 38258e7f364..addc0aa5589 100644 --- a/packages/twenty-front/src/modules/navigation-menu-item/display/hooks/useWorkspaceNavigationMenuItems.ts +++ b/packages/twenty-front/src/modules/navigation-menu-item/display/hooks/useWorkspaceNavigationMenuItems.ts @@ -1,3 +1,7 @@ +import { getObjectMetadataForNavigationMenuItem } from '@/navigation-menu-item/display/object/utils/getObjectMetadataForNavigationMenuItem'; +import { objectMetadataItemsSelector } from '@/object-metadata/states/objectMetadataItemsSelector'; +import { useAtomStateValue } from '@/ui/utilities/state/jotai/hooks/useAtomStateValue'; +import { viewsSelector } from '@/views/states/selectors/viewsSelector'; import { NavigationMenuItemType } from 'twenty-shared/types'; import { isDefined } from 'twenty-shared/utils'; import { useNavigationMenuItemsData } from './useNavigationMenuItemsData'; @@ -7,11 +11,24 @@ export const useWorkspaceNavigationMenuItems = (): { } => { const { workspaceNavigationMenuItems: rawWorkspaceNavigationMenuItems } = useNavigationMenuItemsData(); + const objectMetadataItems = useAtomStateValue(objectMetadataItemsSelector); + const views = useAtomStateValue(viewsSelector); const objectMetadataIdsInWorkspaceNav = new Set( rawWorkspaceNavigationMenuItems - .filter((item) => item.type === NavigationMenuItemType.OBJECT) - .map((item) => item.targetObjectMetadataId) + .filter( + (item) => + item.type === NavigationMenuItemType.OBJECT || + item.type === NavigationMenuItemType.VIEW, + ) + .map( + (item) => + getObjectMetadataForNavigationMenuItem( + item, + objectMetadataItems, + views, + )?.id, + ) .filter((objectMetadataId) => isDefined(objectMetadataId)), );