Skip to content

Commit 7c7ee44

Browse files
committed
Fix
1 parent 6ca4628 commit 7c7ee44

File tree

6 files changed

+23
-22
lines changed

6 files changed

+23
-22
lines changed

packages/twenty-server/src/engine/api/graphql/graphql-query-runner/graphql-query-parsers/graphql-query-filter/graphql-query-filter-field.parser.ts

+1-1
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,7 @@ export class GraphqlQueryFilterFieldParser {
2929
filterValue: any,
3030
isFirst = false,
3131
): void {
32-
const fieldMetadataMapByName = this.fieldMetadataMapByName[`${key}`];
32+
const fieldMetadata = this.fieldMetadataMapByName[`${key}`];
3333

3434
if (!fieldMetadata) {
3535
throw new Error(`Field metadata not found for field: ${key}`);

packages/twenty-server/src/engine/api/graphql/workspace-query-runner/utils/workspace-query-runner-graphql-api-exception-handler.util.ts

+15-14
Original file line numberDiff line numberDiff line change
@@ -31,22 +31,23 @@ export const workspaceQueryRunnerGraphqlApiExceptionHandler = (
3131
if (indexNameMatch) {
3232
const indexName = indexNameMatch[1];
3333

34-
const deletedAtFieldMetadata = context.objectMetadataItem.fields.find(
35-
(field) => field.name === 'deletedAt',
36-
);
34+
const deletedAtFieldMetadata =
35+
context.objectMetadataItemWithFieldMaps.fieldsByName['deletedAt'];
3736

38-
const affectedColumns = context.objectMetadataItem.indexMetadatas
39-
.find((index) => index.name === indexName)
40-
?.indexFieldMetadatas?.filter(
41-
(field) => field.fieldMetadataId !== deletedAtFieldMetadata?.id,
42-
)
43-
.map((indexField) => {
44-
const fieldMetadata = context.objectMetadataItem.fields.find(
45-
(objectField) => indexField.fieldMetadataId === objectField.id,
46-
);
37+
const affectedColumns =
38+
context.objectMetadataItemWithFieldMaps.indexMetadatas
39+
.find((index) => index.name === indexName)
40+
?.indexFieldMetadatas?.filter(
41+
(field) => field.fieldMetadataId !== deletedAtFieldMetadata?.id,
42+
)
43+
.map((indexField) => {
44+
const fieldMetadata =
45+
context.objectMetadataItemWithFieldMaps.fieldsById[
46+
indexField.fieldMetadataId
47+
];
4748

48-
return fieldMetadata?.label;
49-
});
49+
return fieldMetadata?.label;
50+
});
5051

5152
const columnNames = affectedColumns?.join(', ');
5253

packages/twenty-server/src/engine/api/rest/input-factories/order-by-input.factory.ts

+2-2
Original file line numberDiff line numberDiff line change
@@ -3,8 +3,8 @@ import { BadRequestException, Injectable } from '@nestjs/common';
33
import { Request } from 'express';
44

55
import {
6+
ObjectRecordOrderBy,
67
OrderByDirection,
7-
RecordOrderBy,
88
} from 'src/engine/api/graphql/workspace-query-builder/interfaces/object-record.interface';
99

1010
import { checkArrayFields } from 'src/engine/api/rest/core/query-builder/utils/check-order-by.utils';
@@ -13,7 +13,7 @@ export const DEFAULT_ORDER_DIRECTION = OrderByDirection.AscNullsFirst;
1313

1414
@Injectable()
1515
export class OrderByInputFactory {
16-
create(request: Request, objectMetadata): RecordOrderBy {
16+
create(request: Request, objectMetadata): ObjectRecordOrderBy {
1717
const orderByQuery = request.query.order_by;
1818

1919
if (typeof orderByQuery !== 'string') {

packages/twenty-server/src/engine/core-modules/duplicate/constants/duplicate-criteria.constants.ts

+2-2
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,12 @@
1-
import { RecordDuplicateCriteria } from 'src/engine/api/graphql/workspace-query-builder/interfaces/object-record.interface';
1+
import { ObjectRecordDuplicateCriteria } from 'src/engine/api/graphql/workspace-query-builder/interfaces/object-record.interface';
22

33
/**
44
* objectName: directly reference the name of the object from the metadata tables.
55
* columnNames: reference the column names not the field names.
66
* So if we need to reference a custom field, we should directly add the column name like `_customColumn`.
77
* If we need to terence a composite field, we should add all children of the composite like `nameFirstName` and `nameLastName`
88
*/
9-
export const DUPLICATE_CRITERIA_COLLECTION: RecordDuplicateCriteria[] = [
9+
export const DUPLICATE_CRITERIA_COLLECTION: ObjectRecordDuplicateCriteria[] = [
1010
{
1111
objectName: 'company',
1212
columnNames: ['domainName'],
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,9 @@
1-
import { ObjectMetadataItemWithFieldMaps } from 'src/engine/metadata-modules/types/object-metadata-item-with-field-maps';
1+
import { ObjectMetadataInterface } from 'src/engine/metadata-modules/field-metadata/interfaces/object-metadata.interface';
22

33
export class ObjectRecordBaseEvent {
44
recordId: string;
55
userId?: string;
66
workspaceMemberId?: string;
7-
objectMetadata: ObjectMetadataItemWithFieldMaps;
7+
objectMetadata: ObjectMetadataInterface;
88
properties: any;
99
}

packages/twenty-server/src/modules/workflow/workflow-builder/utils/generate-fake-object-record-event.ts

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,12 @@
11
import { v4 } from 'uuid';
22

3+
import { DatabaseEventAction } from 'src/engine/api/graphql/graphql-query-runner/enums/database-event-action';
34
import { ObjectRecordCreateEvent } from 'src/engine/core-modules/event-emitter/types/object-record-create.event';
45
import { ObjectRecordDeleteEvent } from 'src/engine/core-modules/event-emitter/types/object-record-delete.event';
56
import { ObjectRecordDestroyEvent } from 'src/engine/core-modules/event-emitter/types/object-record-destroy.event';
67
import { ObjectRecordUpdateEvent } from 'src/engine/core-modules/event-emitter/types/object-record-update.event';
78
import { ObjectMetadataEntity } from 'src/engine/metadata-modules/object-metadata/object-metadata.entity';
89
import { generateFakeObjectRecord } from 'src/modules/workflow/workflow-builder/utils/generate-fake-object-record';
9-
import { DatabaseEventAction } from 'src/engine/api/graphql/graphql-query-runner/enums/database-event-action';
1010

1111
export const generateFakeObjectRecordEvent = <Entity>(
1212
objectMetadataEntity: ObjectMetadataEntity,

0 commit comments

Comments
 (0)