6071 return only updated fields of records in zapier update trigger (#8193)

- move webhook triggers into `entity-events-to-db.listener.ts`
- refactor event management
- add a `@OnDatabaseEvent` decorator to manage database events
- add updatedFields in updated events
- update openApi webhooks docs
- update zapier integration
This commit is contained in:
martmull
2024-11-04 17:44:36 +01:00
committed by GitHub
parent 741020fbb0
commit 695991881f
62 changed files with 547 additions and 578 deletions

View File

@ -20,15 +20,15 @@ export class CreateAuditLogFromInternalEvent {
@Process(CreateAuditLogFromInternalEvent.name)
async handle(
data: WorkspaceEventBatch<ObjectRecordBaseEvent>,
workspaceEventBatch: WorkspaceEventBatch<ObjectRecordBaseEvent>,
): Promise<void> {
for (const eventData of data.events) {
for (const eventData of workspaceEventBatch.events) {
let workspaceMemberId: string | null = null;
if (eventData.userId) {
const workspaceMember = await this.workspaceMemberService.getByIdOrFail(
eventData.userId,
data.workspaceId,
workspaceEventBatch.workspaceId,
);
workspaceMemberId = workspaceMember.id;
@ -42,13 +42,13 @@ export class CreateAuditLogFromInternalEvent {
}
await this.auditLogRepository.insert(
data.name,
workspaceEventBatch.name,
eventData.properties,
workspaceMemberId,
data.name.split('.')[0],
workspaceEventBatch.name.split('.')[0],
eventData.objectMetadata.id,
eventData.recordId,
data.workspaceId,
workspaceEventBatch.workspaceId,
);
}
}