This commit is contained in:
Weiko
2024-11-19 18:53:33 +01:00
parent debf91ee1d
commit ae44711812
3 changed files with 10 additions and 36 deletions

View File

@@ -127,7 +127,7 @@ export class GraphqlQueryRunnerService {
args: UpdateOneResolverArgs<Partial<T>>,
options: WorkspaceQueryRunnerOptions,
): Promise<T> {
return await this.executeQuery<UpdateOneResolverArgs<Partial<T>>, T>(
return this.executeQuery<UpdateOneResolverArgs<Partial<T>>, T>(
'updateOne',
args,
options,

View File

@@ -71,9 +71,9 @@ export class GraphqlQueryUpdateOneResolverService
const existingRecordBuilder = queryBuilder.clone();
const existingRecords = await existingRecordBuilder
const existingRecords = (await existingRecordBuilder
.where({ id: args.id })
.execute();
.getMany()) as ObjectRecord[];
const formattedExistingRecords = formatResult(
existingRecords,
@@ -81,16 +81,14 @@ export class GraphqlQueryUpdateOneResolverService
objectMetadataMaps,
);
const result = await queryBuilder
const nonFormattedUpdatedObjectRecords = await queryBuilder
.update(data)
.where({ id: args.id })
.returning('*')
.execute();
const nonFormattedUpdatedObjectRecords = result.raw;
const formattedUpdatedRecords = formatResult(
nonFormattedUpdatedObjectRecords,
nonFormattedUpdatedObjectRecords.raw,
objectMetadataItemWithFieldMaps,
objectMetadataMaps,
);

View File

@@ -25,7 +25,7 @@ export class ApiEventEmitterService {
objectMetadata: objectMetadataItem,
properties: {
before: null,
after: this.removeGraphQLAndNestedProperties(record),
after: record,
},
})),
authContext.workspace.id,
@@ -50,10 +50,8 @@ export class ApiEventEmitterService {
this.workspaceEventEmitter.emit(
`${objectMetadataItem.nameSingular}.${DatabaseEventAction.UPDATED}`,
records.map((record) => {
const before = this.removeGraphQLAndNestedProperties(
mappedExistingRecords[record.id],
);
const after = this.removeGraphQLAndNestedProperties(record);
const before = mappedExistingRecords[record.id];
const after = record;
const diff = objectRecordChangedValues(
before,
after,
@@ -90,7 +88,7 @@ export class ApiEventEmitterService {
recordId: record.id,
objectMetadata: objectMetadataItem,
properties: {
before: this.removeGraphQLAndNestedProperties(record),
before: record,
after: null,
},
};
@@ -112,7 +110,7 @@ export class ApiEventEmitterService {
recordId: record.id,
objectMetadata: objectMetadataItem,
properties: {
before: this.removeGraphQLAndNestedProperties(record),
before: record,
after: null,
},
};
@@ -120,26 +118,4 @@ export class ApiEventEmitterService {
authContext.workspace.id,
);
}
private removeGraphQLAndNestedProperties<T extends ObjectRecord>(record: T) {
if (!record) {
return {};
}
const sanitizedRecord = {};
for (const [key, value] of Object.entries(record)) {
if (value && typeof value === 'object' && value['edges']) {
continue;
}
if (key === '__typename') {
continue;
}
sanitizedRecord[key] = value;
}
return sanitizedRecord;
}
}