From 3f66e81a9f61839dcb10b8d06198ebb583294cd7 Mon Sep 17 00:00:00 2001 From: Guillim Date: Wed, 13 Aug 2025 16:49:22 +0200 Subject: [PATCH] Missing the joincolumnname parsing (#13898) in graphql-selecvted-fields-parser, we forgot to treat the joincolumnname case, on top of the relation itself. --- .../graphql-selected-fields.parser.ts | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) diff --git a/packages/twenty-server/src/engine/api/graphql/graphql-query-runner/graphql-query-parsers/graphql-query-selected-fields/graphql-selected-fields.parser.ts b/packages/twenty-server/src/engine/api/graphql/graphql-query-runner/graphql-query-parsers/graphql-query-selected-fields/graphql-selected-fields.parser.ts index ef0a54ee33..480ab83907 100644 --- a/packages/twenty-server/src/engine/api/graphql/graphql-query-runner/graphql-query-parsers/graphql-query-selected-fields/graphql-selected-fields.parser.ts +++ b/packages/twenty-server/src/engine/api/graphql/graphql-query-runner/graphql-query-parsers/graphql-query-selected-fields/graphql-selected-fields.parser.ts @@ -83,6 +83,15 @@ export class GraphqlQuerySelectedFieldsParser { if ( isFieldMetadataEntityOfType(fieldMetadata, FieldMetadataType.RELATION) ) { + const joinColumnName = fieldMetadata.settings?.joinColumnName; + + if ( + isDefined(joinColumnName) && + isDefined(graphqlSelectedFields[joinColumnName]) + ) { + accumulator.select[joinColumnName] = true; + } + const graphqlSelectedFieldValue = graphqlSelectedFields[fieldMetadata.name]; @@ -116,6 +125,15 @@ export class GraphqlQuerySelectedFieldsParser { continue; } + const joinColumnName = fieldMetadata.settings?.joinColumnName; + + if ( + isDefined(joinColumnName) && + isDefined(graphqlSelectedFields[joinColumnName]) + ) { + accumulator.select[joinColumnName] = true; + } + const morphRelationFieldName = computeMorphRelationFieldName({ fieldName: fieldMetadata.name, relationDirection: fieldMetadata.settings.relationType,