From 7d74422c2cb85cfc6acca3667a5cf235e16ab08a Mon Sep 17 00:00:00 2001 From: Guillim Date: Wed, 1 Jan 2025 09:17:30 +0100 Subject: [PATCH] fix "Relations" not displayed on kanban views (#9301) fix #7358 Problem was only for some specific relations : target tasks. (Not related to 1o1 VS 1toMany VS MAnyto1) --- .../hooks/useRecordBoardRecordGqlFields.ts | 31 ++++++++++++------- 1 file changed, 19 insertions(+), 12 deletions(-) diff --git a/packages/twenty-front/src/modules/object-record/record-index/hooks/useRecordBoardRecordGqlFields.ts b/packages/twenty-front/src/modules/object-record/record-index/hooks/useRecordBoardRecordGqlFields.ts index 4386c2922..c192de208 100644 --- a/packages/twenty-front/src/modules/object-record/record-index/hooks/useRecordBoardRecordGqlFields.ts +++ b/packages/twenty-front/src/modules/object-record/record-index/hooks/useRecordBoardRecordGqlFields.ts @@ -1,6 +1,9 @@ +import { useObjectMetadataItem } from '@/object-metadata/hooks/useObjectMetadataItem'; +import { CoreObjectNameSingular } from '@/object-metadata/types/CoreObjectNameSingular'; import { ObjectMetadataItem } from '@/object-metadata/types/ObjectMetadataItem'; import { getObjectMetadataIdentifierFields } from '@/object-metadata/utils/getObjectMetadataIdentifierFields'; import { hasPositionField } from '@/object-metadata/utils/hasPositionField'; +import { generateDepthOneRecordGqlFields } from '@/object-record/graphql/utils/generateDepthOneRecordGqlFields'; import { recordBoardVisibleFieldDefinitionsComponentSelector } from '@/object-record/record-board/states/selectors/recordBoardVisibleFieldDefinitionsComponentSelector'; import { recordGroupFieldMetadataComponentState } from '@/object-record/record-group/states/recordGroupFieldMetadataComponentState'; import { useRecoilComponentValueV2 } from '@/ui/utilities/state/component-state/hooks/useRecoilComponentValueV2'; @@ -36,6 +39,16 @@ export const useRecordBoardRecordGqlFields = ({ identifierQueryFields[imageIdentifierFieldMetadataItem.name] = true; } + const { objectMetadataItem: noteTargetObjectMetadataItem } = + useObjectMetadataItem({ + objectNameSingular: CoreObjectNameSingular.NoteTarget, + }); + + const { objectMetadataItem: taskTargetObjectMetadataItem } = + useObjectMetadataItem({ + objectNameSingular: CoreObjectNameSingular.TaskTarget, + }); + const recordGqlFields: Record = { id: true, deletedAt: true, @@ -47,18 +60,12 @@ export const useRecordBoardRecordGqlFields = ({ ), ...(hasPositionField(objectMetadataItem) ? { position: true } : undefined), ...identifierQueryFields, - noteTargets: { - note: { - id: true, - title: true, - }, - }, - taskTargets: { - task: { - id: true, - title: true, - }, - }, + noteTargets: generateDepthOneRecordGqlFields({ + objectMetadataItem: noteTargetObjectMetadataItem, + }), + taskTargets: generateDepthOneRecordGqlFields({ + objectMetadataItem: taskTargetObjectMetadataItem, + }), }; if (isDefined(recordGroupFieldMetadata?.name)) {