Skip to content

Commit 9bf8d85

Browse files
committed
feat(sdk-coin-icp): implement combine method for signed transaction generation
TICKET: WIN-4908
1 parent b2a5fea commit 9bf8d85

File tree

2 files changed

+10
-11
lines changed

2 files changed

+10
-11
lines changed

modules/sdk-coin-icp/src/lib/transactionBuilder.ts

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@ import { BaseTransactionBuilder, BuildTransactionError, BaseAddress, SigningErro
44
import { Transaction } from './transaction';
55
import utils from './utils';
66
import { IcpTransactionData } from './iface';
7+
import { SignedTransactionBuilder } from './signedTransactionBuilder';
78

89
export abstract class TransactionBuilder extends BaseTransactionBuilder {
910
protected _transaction: Transaction;
@@ -144,4 +145,13 @@ export abstract class TransactionBuilder extends BaseTransactionBuilder {
144145
throw new SigningError('Invalid private key');
145146
}
146147
}
148+
149+
// combine the unsigned transaction with the signature payload and generates the signed transaction
150+
protected combine(): void {
151+
const signedTransactionBuilder = new SignedTransactionBuilder(
152+
this._transaction.unsignedTransaction,
153+
this._transaction.signaturePayload
154+
);
155+
this._transaction.signedTransaction = signedTransactionBuilder.getSignTransaction();
156+
}
147157
}

modules/sdk-coin-icp/src/lib/transferBuilder.ts

Lines changed: 0 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,6 @@ import {
1313
IcpTransactionData,
1414
OperationType,
1515
} from './iface';
16-
import { SignedTransactionBuilder } from './signedTransactionBuilder';
1716
import assert from 'assert';
1817

1918
export class TransferBuilder extends TransactionBuilder {
@@ -113,16 +112,6 @@ export class TransferBuilder extends TransactionBuilder {
113112
this._transaction.icpTransaction = icpTransaction;
114113
}
115114

116-
// combine the unsigned transaction with the signature payload and generates the signed transaction
117-
protected combine(): BaseTransaction {
118-
const signedTransactionBuilder = new SignedTransactionBuilder(
119-
this._transaction.unsignedTransaction,
120-
this._transaction.signaturePayload
121-
);
122-
this._transaction.signedTransaction = signedTransactionBuilder.getSignTransaction();
123-
return this._transaction;
124-
}
125-
126115
/** @inheritdoc */
127116
protected signImplementation(key: BaseKey): BaseTransaction {
128117
const signatures = this._utils.getSignatures(this._transaction.payloadsData, this._publicKey, key.key);

0 commit comments

Comments
 (0)