From 140b416b22c26f533c024a968e7dae7c486c6000 Mon Sep 17 00:00:00 2001 From: Paul Rastoin <45004772+prastoin@users.noreply.github.com> Date: Thu, 11 Sep 2025 17:43:38 +0200 Subject: [PATCH] Early throw `useRecordTableRecordGqlFields.ts` (#14428) A self hoster has been facing this issue following a corrupted `CoreView` migration This won't fix the error but will make it more readable Related to https://github.com/twentyhq/core-team-issues/issues/1205 --- .../hooks/useRecordTableRecordGqlFields.ts | 14 +++++++++----- 1 file changed, 9 insertions(+), 5 deletions(-) diff --git a/packages/twenty-front/src/modules/object-record/record-index/hooks/useRecordTableRecordGqlFields.ts b/packages/twenty-front/src/modules/object-record/record-index/hooks/useRecordTableRecordGqlFields.ts index a396b04b5f..06bfb76462 100644 --- a/packages/twenty-front/src/modules/object-record/record-index/hooks/useRecordTableRecordGqlFields.ts +++ b/packages/twenty-front/src/modules/object-record/record-index/hooks/useRecordTableRecordGqlFields.ts @@ -1,5 +1,6 @@ import { useObjectMetadataItem } from '@/object-metadata/hooks/useObjectMetadataItem'; import { CoreObjectNameSingular } from '@/object-metadata/types/CoreObjectNameSingular'; +import { type FieldMetadataItem } from '@/object-metadata/types/FieldMetadataItem'; import { type ObjectMetadataItem } from '@/object-metadata/types/ObjectMetadataItem'; import { generateDepthOneRecordGqlFields } from '@/object-record/graphql/utils/generateDepthOneRecordGqlFields'; import { generateDepthOneWithoutRelationsRecordGqlFields } from '@/object-record/graphql/utils/generateDepthOneWithoutRelationsRecordGqlFields'; @@ -38,9 +39,15 @@ export const useRecordTableRecordGqlFields = ({ const gqlFieldsList = Object.fromEntries( visibleRecordFields.flatMap((recordField) => { - const fieldMetadataItem = + const fieldMetadataItem: FieldMetadataItem | undefined = fieldMetadataItemByFieldMetadataItemId[recordField.fieldMetadataItemId]; + if (!isDefined(fieldMetadataItem)) { + throw new Error( + `Field ${recordField.fieldMetadataItemId} is missing, please refresh the page. If the problem persists, please contact support.`, + ); + } + const isMorphRelation = fieldMetadataItem.type === FieldMetadataType.MORPH_RELATION; @@ -48,10 +55,7 @@ export const useRecordTableRecordGqlFields = ({ return [[fieldMetadataItem.name, true]]; } - if ( - !isDefined(fieldMetadataItem) || - !isDefined(fieldMetadataItem.morphRelations) - ) { + if (!isDefined(fieldMetadataItem.morphRelations)) { throw new Error( `Field ${fieldMetadataItem.name} is missing, please refresh the page. If the problem persists, please contact support.`, );