Skip to content

Commit b1f12d7

Browse files
authored
Fix input position backfill (#5731)
Some objects do not have position field so they should not be backfilled
1 parent a4e5e48 commit b1f12d7

File tree

2 files changed

+10
-1
lines changed

2 files changed

+10
-1
lines changed

packages/twenty-server/src/engine/api/graphql/workspace-query-runner/factories/query-runner-args.factory.ts

+4-1
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,7 @@ import {
1313
import { RecordFilter } from 'src/engine/api/graphql/workspace-query-builder/interfaces/record.interface';
1414

1515
import { FieldMetadataType } from 'src/engine/metadata-modules/field-metadata/field-metadata.entity';
16+
import { hasPositionField } from 'src/engine/metadata-modules/object-metadata/utils/has-position-field.util';
1617

1718
import { RecordPositionFactory } from './record-position.factory';
1819

@@ -39,6 +40,8 @@ export class QueryRunnerArgsFactory {
3940
]),
4041
);
4142

43+
const shouldBackfillPosition = hasPositionField(options.objectMetadataItem);
44+
4245
switch (resolverArgsType) {
4346
case ResolverArgsType.CreateMany:
4447
return {
@@ -47,7 +50,7 @@ export class QueryRunnerArgsFactory {
4750
(args as CreateManyResolverArgs).data.map((arg, index) =>
4851
this.overrideDataByFieldMetadata(arg, options, fieldMetadataMap, {
4952
argIndex: index,
50-
shouldBackfillPosition: true,
53+
shouldBackfillPosition,
5154
}),
5255
),
5356
),
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
import { ObjectMetadataInterface } from 'src/engine/metadata-modules/field-metadata/interfaces/object-metadata.interface';
2+
3+
export const hasPositionField = (objectMetadataItem: ObjectMetadataInterface) =>
4+
['opportunity', 'person', 'company'].includes(
5+
objectMetadataItem.nameSingular,
6+
) || objectMetadataItem.isCustom;

0 commit comments

Comments
 (0)