From ee6245090dedac24daadc4777bf27acef4793e6a Mon Sep 17 00:00:00 2001 From: bilalabbad Date: Tue, 24 Sep 2024 10:21:54 +0200 Subject: [PATCH] Add Parent columns on list view --- frontend/app/src/config/constants.tsx | 2 +- .../relationship-details-paginated.tsx | 9 +++++++++ 2 files changed, 10 insertions(+), 1 deletion(-) diff --git a/frontend/app/src/config/constants.tsx b/frontend/app/src/config/constants.tsx index d3b9758c41..6c3b8f82ee 100644 --- a/frontend/app/src/config/constants.tsx +++ b/frontend/app/src/config/constants.tsx @@ -174,7 +174,7 @@ export const SCHEMA_ATTRIBUTE_KIND = { export const attributesKindForDetailsViewExclude = ["HashedPassword"]; export const relationshipsForListView = { - one: ["Attribute", "Hierarchy"], + one: ["Attribute", "Hierarchy", "Parent"], many: ["Attribute"], }; diff --git a/frontend/app/src/screens/object-item-details/relationship-details-paginated.tsx b/frontend/app/src/screens/object-item-details/relationship-details-paginated.tsx index 64224d53e5..27f4313d60 100644 --- a/frontend/app/src/screens/object-item-details/relationship-details-paginated.tsx +++ b/frontend/app/src/screens/object-item-details/relationship-details-paginated.tsx @@ -74,6 +74,15 @@ export default function RelationshipDetails(props: iRelationDetailsProps) { const columns = getSchemaObjectColumns({ schema: relationshipSchemaData, forListView: mode === "TABLE", + }).filter((column) => { + if (column.isAttribute) return true; + + return relationshipsData.some((relationship: { node: any }) => { + const relatedObject = relationship.node[column.name]?.node; + if (!relatedObject) return true; + + return relatedObject.id !== objectid; + }); }); let options: SelectOption[] = [];