From d1602cb52419e22793d0a5cbd415ac09a9b71dc2 Mon Sep 17 00:00:00 2001 From: amateima <89395931+amateima@users.noreply.github.com> Date: Tue, 15 Oct 2024 16:23:38 +0300 Subject: [PATCH] fix: remove grouping of fill event parameters (#72) Co-authored-by: Alexandru Matei --- .../src/entities/evm/FilledV3Relay.ts | 27 ++++++++----------- .../src/database/SpokePoolRepository.ts | 20 +++++++++----- 2 files changed, 25 insertions(+), 22 deletions(-) diff --git a/packages/indexer-database/src/entities/evm/FilledV3Relay.ts b/packages/indexer-database/src/entities/evm/FilledV3Relay.ts index bb00e0c2..132debb4 100644 --- a/packages/indexer-database/src/entities/evm/FilledV3Relay.ts +++ b/packages/indexer-database/src/entities/evm/FilledV3Relay.ts @@ -7,20 +7,6 @@ import { } from "typeorm"; import { interfaces } from "@across-protocol/sdk"; -class RelayExecutionInfo { - @Column() - updatedRecipient: string; - - @Column() - updatedMessage: string; - - @Column() - updatedOutputAmount: string; - - @Column({ type: "enum", enum: interfaces.FillType }) - fillType: interfaces.FillType; -} - @Entity({ schema: "evm" }) @Unique("UK_filledV3Relay_relayHash", ["relayHash"]) export class FilledV3Relay { @@ -69,8 +55,17 @@ export class FilledV3Relay { @Column() fillDeadline: Date; - @Column(() => RelayExecutionInfo, { prefix: false }) - relayExecutionInfo: RelayExecutionInfo; + @Column() + updatedRecipient: string; + + @Column() + updatedMessage: string; + + @Column() + updatedOutputAmount: string; + + @Column({ type: "enum", enum: interfaces.FillType }) + fillType: interfaces.FillType; @Column() relayer: string; diff --git a/packages/indexer/src/database/SpokePoolRepository.ts b/packages/indexer/src/database/SpokePoolRepository.ts index 7ccb4bc7..417c9974 100644 --- a/packages/indexer/src/database/SpokePoolRepository.ts +++ b/packages/indexer/src/database/SpokePoolRepository.ts @@ -64,14 +64,22 @@ export class SpokePoolRepository extends utils.BaseRepository { ) { const formattedEvents = filledV3RelayEvents.map((event) => { return { - ...event, + ...Object.keys(event).reduce( + (acc, key) => { + if (key !== "relayExecutionInfo") { + acc[key] = (event as any)[key]; + } + return acc; + }, + {} as { [key: string]: any }, + ), relayHash: getRelayHashFromEvent(event), ...this.formatRelayData(event), - relayExecutionInfo: { - ...event.relayExecutionInfo, - updatedOutputAmount: - event.relayExecutionInfo.updatedOutputAmount.toString(), - }, + updatedRecipient: event.relayExecutionInfo.updatedRecipient, + updatedOutputAmount: + event.relayExecutionInfo.updatedOutputAmount.toString(), + updatedMessage: event.relayExecutionInfo.updatedMessage, + fillType: event.relayExecutionInfo.fillType, finalised: event.blockNumber <= lastFinalisedBlock, }; });