Files
twenty/front/src/modules/object-metadata/components/ObjectMetadataNavItems.tsx
Jérémy M e026b2b6e9 feat: expose foreign key (#2505)
* fix: typo

* feat: expose foreign key

* fix: foreign key exposition

* fix: be able to filter by foreign key

* feat: add `isSystem` on field metadata

* feat: update all seeds

* fix: seed issues

* fix: sync metadata generated files

* fix: squash metadata migrations

* Fix conflicts

---------

Co-authored-by: Charles Bochet <charles@twenty.com>
2023-11-16 12:30:40 +01:00

42 lines
1.2 KiB
TypeScript

import { useNavigate } from 'react-router-dom';
import { Icon123 } from '@/ui/input/constants/icons';
import { useLazyLoadIcons } from '@/ui/input/hooks/useLazyLoadIcons';
import NavItem from '@/ui/navigation/navbar/components/NavItem';
import { useFindManyObjectMetadataItems } from '../hooks/useFindManyObjectMetadataItems';
export const ObjectMetadataNavItems = () => {
const { objectMetadataItems } = useFindManyObjectMetadataItems({
objectFilter: {
isSystem: { is: false },
},
fieldFilter: {
isSystem: { is: false },
},
});
const navigate = useNavigate();
const { icons } = useLazyLoadIcons();
return (
<>
{objectMetadataItems.map((objectMetadataItem) => {
return (
<NavItem
key={objectMetadataItem.id}
label={objectMetadataItem.labelPlural}
to={`/objects/${objectMetadataItem.namePlural}`}
Icon={
objectMetadataItem.icon ? icons[objectMetadataItem.icon] : Icon123
}
onClick={() => {
navigate(`/objects/${objectMetadataItem.namePlural}`);
}}
/>
);
})}
</>
);
};