Skip to content

Commit 95b7b39

Browse files
authored
add optional receipt to submit commitment response (#33)
* add optional receipt to submit commitment response
1 parent acae2ed commit 95b7b39

7 files changed

Lines changed: 1111 additions & 428 deletions

File tree

package-lock.json

Lines changed: 1098 additions & 361 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

package.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,7 @@
2929
"license": "ISC",
3030
"homepage": "https://unicitynetwork.github.io/state-transition-sdk/",
3131
"dependencies": {
32-
"@unicitylabs/commons": "2.4.0-rc.a5f85b0",
32+
"@unicitylabs/commons": "2.4.0-rc.1d26eee",
3333
"@unicitylabs/prefix-hash-tree": "1.2.13-rc.43a27ce"
3434
},
3535
"devDependencies": {
@@ -48,6 +48,6 @@
4848
"typescript-eslint": "8.33.0"
4949
},
5050
"overrides": {
51-
"@unicitylabs/commons": "2.4.0-rc.a5f85b0"
51+
"@unicitylabs/commons": "2.4.0-rc.1d26eee"
5252
}
5353
}

src/StateTransitionClient.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,10 +5,10 @@ import { DataHash } from '@unicitylabs/commons/lib/hash/DataHash.js';
55
import { HashAlgorithm } from '@unicitylabs/commons/lib/hash/HashAlgorithm.js';
66
import { SigningService } from '@unicitylabs/commons/lib/signing/SigningService.js';
77
import { HexConverter } from '@unicitylabs/commons/lib/util/HexConverter.js';
8+
import { SubmitCommitmentStatus } from '@unicitylabs/commons/lib/api/SubmitCommitmentResponse.js';
89

910
import { DirectAddress } from './address/DirectAddress.js';
1011
import { IAggregatorClient } from './api/IAggregatorClient.js';
11-
import { SubmitCommitmentStatus } from './api/SubmitCommitmentResponse.js';
1212
import { ISerializable } from './ISerializable.js';
1313
import { TokenCoinData } from './token/fungible/TokenCoinData.js';
1414
import { NameTagToken } from './token/NameTagToken.js';

src/api/AggregatorClient.ts

Lines changed: 8 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,12 @@
11
import { Authenticator } from '@unicitylabs/commons/lib/api/Authenticator.js';
22
import { InclusionProof } from '@unicitylabs/commons/lib/api/InclusionProof.js';
33
import { RequestId } from '@unicitylabs/commons/lib/api/RequestId.js';
4+
import { SubmitCommitmentRequest } from '@unicitylabs/commons/lib/api/SubmitCommitmentRequest.js';
5+
import { SubmitCommitmentResponse } from '@unicitylabs/commons/lib/api/SubmitCommitmentResponse.js';
46
import { DataHash } from '@unicitylabs/commons/lib/hash/DataHash.js';
57
import { JsonRpcHttpTransport } from '@unicitylabs/commons/lib/json-rpc/JsonRpcHttpTransport.js';
68

79
import { IAggregatorClient } from './IAggregatorClient.js';
8-
import { SubmitCommitmentResponse, SubmitCommitmentStatus } from './SubmitCommitmentResponse.js';
910

1011
/**
1112
* Client implementation for communicating with an aggregator via JSON-RPC.
@@ -29,16 +30,13 @@ export class AggregatorClient implements IAggregatorClient {
2930
requestId: RequestId,
3031
transactionHash: DataHash,
3132
authenticator: Authenticator,
33+
receipt: boolean = false,
3234
): Promise<SubmitCommitmentResponse> {
33-
const data = {
34-
authenticator: authenticator.toJSON(),
35-
requestId: requestId.toJSON(),
36-
transactionHash: transactionHash.toJSON(),
37-
};
38-
39-
await this.transport.request('submit_commitment', data);
40-
// TODO: Fix response
41-
return new SubmitCommitmentResponse(SubmitCommitmentStatus.SUCCESS);
35+
const request = new SubmitCommitmentRequest(requestId, transactionHash, authenticator, receipt);
36+
37+
const response = await this.transport.request('submit_commitment', request.toJSON());
38+
39+
return SubmitCommitmentResponse.fromJSON(response)
4240
}
4341

4442
/**

src/api/IAggregatorClient.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,8 +2,7 @@ import { Authenticator } from '@unicitylabs/commons/lib/api/Authenticator.js';
22
import { InclusionProof } from '@unicitylabs/commons/lib/api/InclusionProof.js';
33
import { RequestId } from '@unicitylabs/commons/lib/api/RequestId.js';
44
import { DataHash } from '@unicitylabs/commons/lib/hash/DataHash.js';
5-
6-
import { SubmitCommitmentResponse } from './SubmitCommitmentResponse.js';
5+
import { SubmitCommitmentResponse } from '@unicitylabs/commons/lib/api/SubmitCommitmentResponse.js';
76

87
/**
98
* Client interface for interacting with an aggregator service.
@@ -21,6 +20,7 @@ export interface IAggregatorClient {
2120
requestId: RequestId,
2221
transactionHash: DataHash,
2322
authenticator: Authenticator,
23+
receipt?: boolean,
2424
): Promise<SubmitCommitmentResponse>;
2525

2626
/**

src/api/SubmitCommitmentResponse.ts

Lines changed: 0 additions & 51 deletions
This file was deleted.

src/index.ts

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,6 @@ export * from './address/IAddress.js';
66
// API exports
77
export * from './api/AggregatorClient.js';
88
export * from './api/IAggregatorClient.js';
9-
export * from './api/SubmitCommitmentResponse.js';
109

1110
// Predicate exports
1211
export * from './predicate/BurnPredicate.js';

0 commit comments

Comments
 (0)