Skip to content

Commit b5a49ba

Browse files
feat: Added transformIdx to the event (#34)
1 parent eb6d96b commit b5a49ba

File tree

4 files changed

+10
-2
lines changed

4 files changed

+10
-2
lines changed

.github/workflows/test.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@ on:
1616

1717
jobs:
1818
build:
19-
runs-on: ubuntu-20.04
19+
runs-on: ubuntu-latest
2020
strategy:
2121
fail-fast: false
2222
matrix:

src/event.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,7 @@ export interface Event {
1616
contractHash: Hash | null;
1717
contractPackageHash: Hash | null;
1818
eventId: number;
19+
transformIdx: number;
1920
data: Record<string, CLValue>;
2021
}
2122

src/parser.ts

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -138,7 +138,9 @@ export class Parser {
138138

139139
const results: ParseResult[] = [];
140140

141-
for (const transform of executionResult.effects) {
141+
for (let i = 0; i < executionResult.effects.length; i++) {
142+
const transform = executionResult.effects[i];
143+
142144
if (!transform.key.dictionary) {
143145
continue;
144146
}
@@ -168,6 +170,7 @@ export class Parser {
168170
contractPackageHash: null,
169171
name: eventNameWithRemainder.result,
170172
eventId: parseInt(dictionary.key),
173+
transformIdx: i,
171174
data: {},
172175
};
173176

test/parser.test.ts

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -62,6 +62,8 @@ describe('Parser', () => {
6262
expect(events[0].event!.name).toEqual('BallotCast');
6363
expect(events[0].event!.contractHash).toEqual(contractHash);
6464
expect(events[0].event!.contractPackageHash).toEqual(contractPackageHash);
65+
expect(events[0].event!.eventId).toEqual(2);
66+
expect(events[0].event!.transformIdx).toEqual(99);
6567

6668
expect(Object.keys(events[0].event!.data!).length).toEqual(5);
6769

@@ -75,6 +77,8 @@ describe('Parser', () => {
7577
expect(events[1].event!.name).toEqual('SimpleVotingCreated');
7678
expect(events[1].event!.contractHash).toEqual(contractHash);
7779
expect(events[1].event!.contractPackageHash).toEqual(contractPackageHash);
80+
expect(events[1].event!.eventId).toEqual(3);
81+
expect(events[1].event!.transformIdx).toEqual(115);
7882

7983
expect(Object.keys(events[1].event!.data!).length).toEqual(12);
8084

0 commit comments

Comments
 (0)