@bitgo-beta/sdk-coin-icp 1.0.1-beta.95 → 1.0.1-beta.97

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (34) hide show
  1. package/dist/src/lib/iface.d.ts +165 -0
  2. package/dist/src/lib/iface.d.ts.map +1 -0
  3. package/dist/src/lib/iface.js +31 -0
  4. package/dist/src/lib/index.d.ts +3 -0
  5. package/dist/src/lib/index.d.ts.map +1 -1
  6. package/dist/src/lib/index.js +8 -2
  7. package/dist/src/lib/protoDefinition.d.ts +2 -0
  8. package/dist/src/lib/protoDefinition.d.ts.map +1 -0
  9. package/dist/src/lib/protoDefinition.js +44 -0
  10. package/dist/src/lib/signedTransactionBuilder.d.ts +9 -0
  11. package/dist/src/lib/signedTransactionBuilder.d.ts.map +1 -0
  12. package/dist/src/lib/signedTransactionBuilder.js +69 -0
  13. package/dist/src/lib/transaction.d.ts +42 -0
  14. package/dist/src/lib/transaction.d.ts.map +1 -0
  15. package/dist/src/lib/transaction.js +169 -0
  16. package/dist/src/lib/transactionBuilder.d.ts +47 -31
  17. package/dist/src/lib/transactionBuilder.d.ts.map +1 -1
  18. package/dist/src/lib/transactionBuilder.js +98 -44
  19. package/dist/src/lib/transactionBuilderFactory.d.ts +15 -12
  20. package/dist/src/lib/transactionBuilderFactory.d.ts.map +1 -1
  21. package/dist/src/lib/transactionBuilderFactory.js +38 -24
  22. package/dist/src/lib/transferBuilder.d.ts +10 -25
  23. package/dist/src/lib/transferBuilder.d.ts.map +1 -1
  24. package/dist/src/lib/transferBuilder.js +95 -44
  25. package/dist/src/lib/unsignedTransactionBuilder.d.ts +12 -0
  26. package/dist/src/lib/unsignedTransactionBuilder.d.ts.map +1 -0
  27. package/dist/src/lib/unsignedTransactionBuilder.js +105 -0
  28. package/dist/src/lib/utils.d.ts +261 -7
  29. package/dist/src/lib/utils.d.ts.map +1 -1
  30. package/dist/src/lib/utils.js +453 -52
  31. package/dist/src/ticp.d.ts +0 -4
  32. package/dist/src/ticp.d.ts.map +1 -1
  33. package/dist/src/ticp.js +1 -7
  34. package/package.json +11 -7
@@ -0,0 +1,169 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.Transaction = void 0;
4
+ const sdk_core_1 = require("@bitgo-beta/sdk-core");
5
+ const iface_1 = require("./iface");
6
+ const keyPair_1 = require("./keyPair");
7
+ class Transaction extends sdk_core_1.BaseTransaction {
8
+ constructor(_coinConfig, utils) {
9
+ super(_coinConfig);
10
+ this._utils = utils;
11
+ }
12
+ get icpTransactionData() {
13
+ return this._icpTransactionData;
14
+ }
15
+ set icpTransactionData(icpTransactionData) {
16
+ this._icpTransactionData = icpTransactionData;
17
+ }
18
+ get icpTransaction() {
19
+ return this._icpTransaction;
20
+ }
21
+ set icpTransaction(icpTransaction) {
22
+ this._icpTransaction = icpTransaction;
23
+ }
24
+ get unsignedTransaction() {
25
+ return this._payloadsData.unsigned_transaction;
26
+ }
27
+ get signaturePayload() {
28
+ return this._signaturePayload;
29
+ }
30
+ set signedTransaction(signature) {
31
+ this._signedTransaction = signature;
32
+ }
33
+ get signedTransaction() {
34
+ return this._signedTransaction;
35
+ }
36
+ set payloadsData(payloadsData) {
37
+ this._payloadsData = payloadsData;
38
+ }
39
+ get payloadsData() {
40
+ return this._payloadsData;
41
+ }
42
+ fromRawTransaction(rawTransaction) {
43
+ try {
44
+ const parsedTx = JSON.parse(rawTransaction);
45
+ switch (parsedTx.type) {
46
+ case iface_1.OperationType.TRANSACTION:
47
+ this._icpTransactionData = {
48
+ senderAddress: parsedTx.address,
49
+ receiverAddress: parsedTx.externalOutputs[0].address,
50
+ amount: parsedTx.spendAmountString,
51
+ fee: parsedTx.fee,
52
+ senderPublicKeyHex: parsedTx.senderKey,
53
+ memo: parsedTx.seqno,
54
+ transactionType: parsedTx.type,
55
+ expiryTime: parsedTx.expiryTime,
56
+ };
57
+ this._utils.validateRawTransaction(this._icpTransactionData);
58
+ break;
59
+ default:
60
+ throw new Error('Invalid transaction type');
61
+ }
62
+ }
63
+ catch (error) {
64
+ throw new sdk_core_1.InvalidTransactionError('Invalid raw transaction');
65
+ }
66
+ }
67
+ addSignature(signaturePayloads) {
68
+ if (!signaturePayloads) {
69
+ throw new Error('signatures not provided');
70
+ }
71
+ if (signaturePayloads.length !== this._payloadsData.payloads.length) {
72
+ throw new Error('signatures length is not matching');
73
+ }
74
+ this._signaturePayload = signaturePayloads;
75
+ }
76
+ /** @inheritdoc */
77
+ toJson() {
78
+ if (!this._icpTransactionData) {
79
+ throw new sdk_core_1.InvalidTransactionError('Empty transaction');
80
+ }
81
+ switch (this._icpTransactionData.transactionType) {
82
+ case iface_1.OperationType.TRANSACTION:
83
+ return {
84
+ id: this._id,
85
+ sender: this._icpTransactionData.senderAddress,
86
+ senderPublicKey: this._icpTransactionData.senderPublicKeyHex,
87
+ recipient: this._icpTransactionData.receiverAddress,
88
+ memo: this._icpTransactionData.memo,
89
+ feeAmount: this._icpTransactionData.fee,
90
+ expirationTime: this._icpTransactionData.expiryTime,
91
+ type: sdk_core_1.TransactionType.Send,
92
+ };
93
+ default:
94
+ throw new Error('Unsupported transaction type');
95
+ }
96
+ }
97
+ /** @inheritDoc */
98
+ explainTransaction() {
99
+ const result = this.toJson();
100
+ const displayOrder = ['id', 'outputAmount', 'changeAmount', 'outputs', 'changeOutputs', 'fee'];
101
+ const outputs = [];
102
+ const explanationResult = {
103
+ displayOrder,
104
+ id: this.id,
105
+ outputs,
106
+ outputAmount: '0',
107
+ fee: { fee: '0' },
108
+ type: result.type,
109
+ changeOutputs: [], // account based does not use change outputs
110
+ changeAmount: '0', // account based does not make change
111
+ };
112
+ switch (explanationResult.type) {
113
+ case sdk_core_1.TransactionType.Send:
114
+ return this.explainTransferTransaction(explanationResult);
115
+ default:
116
+ throw new sdk_core_1.InvalidTransactionError('Transaction type not supported');
117
+ }
118
+ }
119
+ /**
120
+ * Explains a transfer transaction by providing details about the recipients and the total output amount.
121
+ *
122
+ * @param {IcpTransactionExplanation} explanationResult - The initial explanation result to be extended.
123
+ * @returns {IcpTransactionExplanation} The extended explanation result including the output amount and recipients.
124
+ */
125
+ explainTransferTransaction(explanationResult) {
126
+ explanationResult.fee = { fee: this.icpTransactionData.fee };
127
+ const recipients = this._utils.getRecipients(this.icpTransactionData);
128
+ const outputs = [recipients];
129
+ const outputAmountBN = recipients.amount;
130
+ const outputAmount = outputAmountBN.toString();
131
+ return {
132
+ ...explanationResult,
133
+ outputAmount,
134
+ outputs,
135
+ };
136
+ }
137
+ /** @inheritdoc */
138
+ toBroadcastFormat() {
139
+ if (!this._signedTransaction) {
140
+ throw new sdk_core_1.InvalidTransactionError('Empty transaction');
141
+ }
142
+ return this.serialize();
143
+ }
144
+ serialize() {
145
+ const transaction = {
146
+ signed_transaction: this._signedTransaction,
147
+ network_identifier: {
148
+ blockchain: this._coinConfig.fullName,
149
+ network: iface_1.Network.ID,
150
+ },
151
+ };
152
+ return JSON.stringify(transaction);
153
+ }
154
+ /** @inheritdoc */
155
+ canSign(key) {
156
+ try {
157
+ const keyPair = new keyPair_1.KeyPair({ prv: key.key });
158
+ const publicKeyHex = keyPair.getPublicKey({ compressed: true }).toString('hex');
159
+ const uncompressedPublicKeyHex = keyPair.getPublicKey({ compressed: false }).toString('hex');
160
+ return (this.icpTransactionData.senderPublicKeyHex === publicKeyHex ||
161
+ this.icpTransactionData.senderPublicKeyHex === uncompressedPublicKeyHex);
162
+ }
163
+ catch (error) {
164
+ return false;
165
+ }
166
+ }
167
+ }
168
+ exports.Transaction = Transaction;
169
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNhY3Rpb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbGliL3RyYW5zYWN0aW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLG1EQU84QjtBQUU5QixtQ0FVaUI7QUFFakIsdUNBQW9DO0FBRXBDLE1BQWEsV0FBWSxTQUFRLDBCQUFlO0lBUTlDLFlBQVksV0FBaUMsRUFBRSxLQUFZO1FBQ3pELEtBQUssQ0FBQyxXQUFXLENBQUMsQ0FBQztRQUNuQixJQUFJLENBQUMsTUFBTSxHQUFHLEtBQUssQ0FBQztJQUN0QixDQUFDO0lBRUQsSUFBSSxrQkFBa0I7UUFDcEIsT0FBTyxJQUFJLENBQUMsbUJBQW1CLENBQUM7SUFDbEMsQ0FBQztJQUVELElBQUksa0JBQWtCLENBQUMsa0JBQXNDO1FBQzNELElBQUksQ0FBQyxtQkFBbUIsR0FBRyxrQkFBa0IsQ0FBQztJQUNoRCxDQUFDO0lBRUQsSUFBSSxjQUFjO1FBQ2hCLE9BQU8sSUFBSSxDQUFDLGVBQWUsQ0FBQztJQUM5QixDQUFDO0lBRUQsSUFBSSxjQUFjLENBQUMsY0FBOEI7UUFDL0MsSUFBSSxDQUFDLGVBQWUsR0FBRyxjQUFjLENBQUM7SUFDeEMsQ0FBQztJQUVELElBQUksbUJBQW1CO1FBQ3JCLE9BQU8sSUFBSSxDQUFDLGFBQWEsQ0FBQyxvQkFBb0IsQ0FBQztJQUNqRCxDQUFDO0lBRUQsSUFBSSxnQkFBZ0I7UUFDbEIsT0FBTyxJQUFJLENBQUMsaUJBQWlCLENBQUM7SUFDaEMsQ0FBQztJQUVELElBQUksaUJBQWlCLENBQUMsU0FBaUI7UUFDckMsSUFBSSxDQUFDLGtCQUFrQixHQUFHLFNBQVMsQ0FBQztJQUN0QyxDQUFDO0lBRUQsSUFBSSxpQkFBaUI7UUFDbkIsT0FBTyxJQUFJLENBQUMsa0JBQWtCLENBQUM7SUFDakMsQ0FBQztJQUVELElBQUksWUFBWSxDQUFDLFlBQTBCO1FBQ3pDLElBQUksQ0FBQyxhQUFhLEdBQUcsWUFBWSxDQUFDO0lBQ3BDLENBQUM7SUFFRCxJQUFJLFlBQVk7UUFDZCxPQUFPLElBQUksQ0FBQyxhQUFhLENBQUM7SUFDNUIsQ0FBQztJQUVELGtCQUFrQixDQUFDLGNBQXNCO1FBQ3ZDLElBQUksQ0FBQztZQUNILE1BQU0sUUFBUSxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsY0FBYyxDQUFDLENBQUM7WUFDNUMsUUFBUSxRQUFRLENBQUMsSUFBSSxFQUFFLENBQUM7Z0JBQ3RCLEtBQUsscUJBQWEsQ0FBQyxXQUFXO29CQUM1QixJQUFJLENBQUMsbUJBQW1CLEdBQUc7d0JBQ3pCLGFBQWEsRUFBRSxRQUFRLENBQUMsT0FBTzt3QkFDL0IsZUFBZSxFQUFFLFFBQVEsQ0FBQyxlQUFlLENBQUMsQ0FBQyxDQUFDLENBQUMsT0FBTzt3QkFDcEQsTUFBTSxFQUFFLFFBQVEsQ0FBQyxpQkFBaUI7d0JBQ2xDLEdBQUcsRUFBRSxRQUFRLENBQUMsR0FBRzt3QkFDakIsa0JBQWtCLEVBQUUsUUFBUSxDQUFDLFNBQVM7d0JBQ3RDLElBQUksRUFBRSxRQUFRLENBQUMsS0FBSzt3QkFDcEIsZUFBZSxFQUFFLFFBQVEsQ0FBQyxJQUFJO3dCQUM5QixVQUFVLEVBQUUsUUFBUSxDQUFDLFVBQVU7cUJBQ2hDLENBQUM7b0JBQ0YsSUFBSSxDQUFDLE1BQU0sQ0FBQyxzQkFBc0IsQ0FBQyxJQUFJLENBQUMsbUJBQW1CLENBQUMsQ0FBQztvQkFDN0QsTUFBTTtnQkFDUjtvQkFDRSxNQUFNLElBQUksS0FBSyxDQUFDLDBCQUEwQixDQUFDLENBQUM7WUFDaEQsQ0FBQztRQUNILENBQUM7UUFBQyxPQUFPLEtBQUssRUFBRSxDQUFDO1lBQ2YsTUFBTSxJQUFJLGtDQUF1QixDQUFDLHlCQUF5QixDQUFDLENBQUM7UUFDL0QsQ0FBQztJQUNILENBQUM7SUFFRCxZQUFZLENBQUMsaUJBQStCO1FBQzFDLElBQUksQ0FBQyxpQkFBaUIsRUFBRSxDQUFDO1lBQ3ZCLE1BQU0sSUFBSSxLQUFLLENBQUMseUJBQXlCLENBQUMsQ0FBQztRQUM3QyxDQUFDO1FBQ0QsSUFBSSxpQkFBaUIsQ0FBQyxNQUFNLEtBQUssSUFBSSxDQUFDLGFBQWEsQ0FBQyxRQUFRLENBQUMsTUFBTSxFQUFFLENBQUM7WUFDcEUsTUFBTSxJQUFJLEtBQUssQ0FBQyxtQ0FBbUMsQ0FBQyxDQUFDO1FBQ3ZELENBQUM7UUFDRCxJQUFJLENBQUMsaUJBQWlCLEdBQUcsaUJBQWlCLENBQUM7SUFDN0MsQ0FBQztJQUVELGtCQUFrQjtJQUNsQixNQUFNO1FBQ0osSUFBSSxDQUFDLElBQUksQ0FBQyxtQkFBbUIsRUFBRSxDQUFDO1lBQzlCLE1BQU0sSUFBSSxrQ0FBdUIsQ0FBQyxtQkFBbUIsQ0FBQyxDQUFDO1FBQ3pELENBQUM7UUFDRCxRQUFRLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxlQUFlLEVBQUUsQ0FBQztZQUNqRCxLQUFLLHFCQUFhLENBQUMsV0FBVztnQkFDNUIsT0FBTztvQkFDTCxFQUFFLEVBQUUsSUFBSSxDQUFDLEdBQUc7b0JBQ1osTUFBTSxFQUFFLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxhQUFhO29CQUM5QyxlQUFlLEVBQUUsSUFBSSxDQUFDLG1CQUFtQixDQUFDLGtCQUFrQjtvQkFDNUQsU0FBUyxFQUFFLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxlQUFlO29CQUNuRCxJQUFJLEVBQUUsSUFBSSxDQUFDLG1CQUFtQixDQUFDLElBQUk7b0JBQ25DLFNBQVMsRUFBRSxJQUFJLENBQUMsbUJBQW1CLENBQUMsR0FBRztvQkFDdkMsY0FBYyxFQUFFLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxVQUFVO29CQUNuRCxJQUFJLEVBQUUsMEJBQW9CLENBQUMsSUFBSTtpQkFDaEMsQ0FBQztZQUNKO2dCQUNFLE1BQU0sSUFBSSxLQUFLLENBQUMsOEJBQThCLENBQUMsQ0FBQztRQUNwRCxDQUFDO0lBQ0gsQ0FBQztJQUVELGtCQUFrQjtJQUNsQixrQkFBa0I7UUFDaEIsTUFBTSxNQUFNLEdBQUcsSUFBSSxDQUFDLE1BQU0sRUFBRSxDQUFDO1FBQzdCLE1BQU0sWUFBWSxHQUFHLENBQUMsSUFBSSxFQUFFLGNBQWMsRUFBRSxjQUFjLEVBQUUsU0FBUyxFQUFFLGVBQWUsRUFBRSxLQUFLLENBQUMsQ0FBQztRQUMvRixNQUFNLE9BQU8sR0FBMkIsRUFBRSxDQUFDO1FBRTNDLE1BQU0saUJBQWlCLEdBQUc7WUFDeEIsWUFBWTtZQUNaLEVBQUUsRUFBRSxJQUFJLENBQUMsRUFBRTtZQUNYLE9BQU87WUFDUCxZQUFZLEVBQUUsR0FBRztZQUNqQixHQUFHLEVBQUUsRUFBRSxHQUFHLEVBQUUsR0FBRyxFQUFFO1lBQ2pCLElBQUksRUFBRSxNQUFNLENBQUMsSUFBSTtZQUNqQixhQUFhLEVBQUUsRUFBRSxFQUFFLDRDQUE0QztZQUMvRCxZQUFZLEVBQUUsR0FBRyxFQUFFLHFDQUFxQztTQUN6RCxDQUFDO1FBRUYsUUFBUSxpQkFBaUIsQ0FBQyxJQUFJLEVBQUUsQ0FBQztZQUMvQixLQUFLLDBCQUFlLENBQUMsSUFBSTtnQkFDdkIsT0FBTyxJQUFJLENBQUMsMEJBQTBCLENBQUMsaUJBQWlCLENBQUMsQ0FBQztZQUM1RDtnQkFDRSxNQUFNLElBQUksa0NBQXVCLENBQUMsZ0NBQWdDLENBQUMsQ0FBQztRQUN4RSxDQUFDO0lBQ0gsQ0FBQztJQUVEOzs7OztPQUtHO0lBQ0gsMEJBQTBCLENBQUMsaUJBQTRDO1FBQ3JFLGlCQUFpQixDQUFDLEdBQUcsR0FBRyxFQUFFLEdBQUcsRUFBRSxJQUFJLENBQUMsa0JBQWtCLENBQUMsR0FBRyxFQUFFLENBQUM7UUFDN0QsTUFBTSxVQUFVLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLGtCQUFrQixDQUFDLENBQUM7UUFDdEUsTUFBTSxPQUFPLEdBQTJCLENBQUMsVUFBVSxDQUFDLENBQUM7UUFDckQsTUFBTSxjQUFjLEdBQUcsVUFBVSxDQUFDLE1BQU0sQ0FBQztRQUN6QyxNQUFNLFlBQVksR0FBRyxjQUFjLENBQUMsUUFBUSxFQUFFLENBQUM7UUFFL0MsT0FBTztZQUNMLEdBQUcsaUJBQWlCO1lBQ3BCLFlBQVk7WUFDWixPQUFPO1NBQ1IsQ0FBQztJQUNKLENBQUM7SUFFRCxrQkFBa0I7SUFDbEIsaUJBQWlCO1FBQ2YsSUFBSSxDQUFDLElBQUksQ0FBQyxrQkFBa0IsRUFBRSxDQUFDO1lBQzdCLE1BQU0sSUFBSSxrQ0FBdUIsQ0FBQyxtQkFBbUIsQ0FBQyxDQUFDO1FBQ3pELENBQUM7UUFDRCxPQUFPLElBQUksQ0FBQyxTQUFTLEVBQUUsQ0FBQztJQUMxQixDQUFDO0lBRUQsU0FBUztRQUNQLE1BQU0sV0FBVyxHQUE2QjtZQUM1QyxrQkFBa0IsRUFBRSxJQUFJLENBQUMsa0JBQWtCO1lBQzNDLGtCQUFrQixFQUFFO2dCQUNsQixVQUFVLEVBQUUsSUFBSSxDQUFDLFdBQVcsQ0FBQyxRQUFRO2dCQUNyQyxPQUFPLEVBQUUsZUFBTyxDQUFDLEVBQUU7YUFDcEI7U0FDRixDQUFDO1FBQ0YsT0FBTyxJQUFJLENBQUMsU0FBUyxDQUFDLFdBQVcsQ0FBQyxDQUFDO0lBQ3JDLENBQUM7SUFFRCxrQkFBa0I7SUFDbEIsT0FBTyxDQUFDLEdBQVk7UUFDbEIsSUFBSSxDQUFDO1lBQ0gsTUFBTSxPQUFPLEdBQUcsSUFBSSxpQkFBTyxDQUFDLEVBQUUsR0FBRyxFQUFFLEdBQUcsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxDQUFDO1lBQzlDLE1BQU0sWUFBWSxHQUFHLE9BQU8sQ0FBQyxZQUFZLENBQUMsRUFBRSxVQUFVLEVBQUUsSUFBSSxFQUFFLENBQUMsQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLENBQUM7WUFDaEYsTUFBTSx3QkFBd0IsR0FBRyxPQUFPLENBQUMsWUFBWSxDQUFDLEVBQUUsVUFBVSxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxDQUFDO1lBQzdGLE9BQU8sQ0FDTCxJQUFJLENBQUMsa0JBQWtCLENBQUMsa0JBQWtCLEtBQUssWUFBWTtnQkFDM0QsSUFBSSxDQUFDLGtCQUFrQixDQUFDLGtCQUFrQixLQUFLLHdCQUF3QixDQUN4RSxDQUFDO1FBQ0osQ0FBQztRQUFDLE9BQU8sS0FBSyxFQUFFLENBQUM7WUFDZixPQUFPLEtBQUssQ0FBQztRQUNmLENBQUM7SUFDSCxDQUFDO0NBQ0Y7QUE1TEQsa0NBNExDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQmFzZUtleSxcbiAgQmFzZVRyYW5zYWN0aW9uLFxuICBUcmFuc2FjdGlvblJlY2lwaWVudCxcbiAgVHJhbnNhY3Rpb25UeXBlLFxuICBJbnZhbGlkVHJhbnNhY3Rpb25FcnJvcixcbiAgVHJhbnNhY3Rpb25UeXBlIGFzIEJpdEdvVHJhbnNhY3Rpb25UeXBlLFxufSBmcm9tICdAYml0Z28tYmV0YS9zZGstY29yZSc7XG5pbXBvcnQgeyBCYXNlQ29pbiBhcyBDb2luQ29uZmlnIH0gZnJvbSAnQGJpdGdvLWJldGEvc3RhdGljcyc7XG5pbXBvcnQge1xuICBJY3BUcmFuc2FjdGlvbixcbiAgSWNwVHJhbnNhY3Rpb25EYXRhLFxuICBQYXlsb2Fkc0RhdGEsXG4gIE9wZXJhdGlvblR5cGUsXG4gIFNpZ25hdHVyZXMsXG4gIFR4RGF0YSxcbiAgSWNwVHJhbnNhY3Rpb25FeHBsYW5hdGlvbixcbiAgU2lnbmVkVHJhbnNhY3Rpb25SZXF1ZXN0LFxuICBOZXR3b3JrLFxufSBmcm9tICcuL2lmYWNlJztcbmltcG9ydCB7IFV0aWxzIH0gZnJvbSAnLi91dGlscyc7XG5pbXBvcnQgeyBLZXlQYWlyIH0gZnJvbSAnLi9rZXlQYWlyJztcblxuZXhwb3J0IGNsYXNzIFRyYW5zYWN0aW9uIGV4dGVuZHMgQmFzZVRyYW5zYWN0aW9uIHtcbiAgcHJvdGVjdGVkIF9pY3BUcmFuc2FjdGlvbkRhdGE6IEljcFRyYW5zYWN0aW9uRGF0YTtcbiAgcHJvdGVjdGVkIF9pY3BUcmFuc2FjdGlvbjogSWNwVHJhbnNhY3Rpb247XG4gIHByb3RlY3RlZCBfcGF5bG9hZHNEYXRhOiBQYXlsb2Fkc0RhdGE7XG4gIHByb3RlY3RlZCBfc2lnbmVkVHJhbnNhY3Rpb246IHN0cmluZztcbiAgcHJvdGVjdGVkIF9zaWduYXR1cmVQYXlsb2FkOiBTaWduYXR1cmVzW107XG4gIHByb3RlY3RlZCBfdXRpbHM6IFV0aWxzO1xuXG4gIGNvbnN0cnVjdG9yKF9jb2luQ29uZmlnOiBSZWFkb25seTxDb2luQ29uZmlnPiwgdXRpbHM6IFV0aWxzKSB7XG4gICAgc3VwZXIoX2NvaW5Db25maWcpO1xuICAgIHRoaXMuX3V0aWxzID0gdXRpbHM7XG4gIH1cblxuICBnZXQgaWNwVHJhbnNhY3Rpb25EYXRhKCk6IEljcFRyYW5zYWN0aW9uRGF0YSB7XG4gICAgcmV0dXJuIHRoaXMuX2ljcFRyYW5zYWN0aW9uRGF0YTtcbiAgfVxuXG4gIHNldCBpY3BUcmFuc2FjdGlvbkRhdGEoaWNwVHJhbnNhY3Rpb25EYXRhOiBJY3BUcmFuc2FjdGlvbkRhdGEpIHtcbiAgICB0aGlzLl9pY3BUcmFuc2FjdGlvbkRhdGEgPSBpY3BUcmFuc2FjdGlvbkRhdGE7XG4gIH1cblxuICBnZXQgaWNwVHJhbnNhY3Rpb24oKTogSWNwVHJhbnNhY3Rpb24ge1xuICAgIHJldHVybiB0aGlzLl9pY3BUcmFuc2FjdGlvbjtcbiAgfVxuXG4gIHNldCBpY3BUcmFuc2FjdGlvbihpY3BUcmFuc2FjdGlvbjogSWNwVHJhbnNhY3Rpb24pIHtcbiAgICB0aGlzLl9pY3BUcmFuc2FjdGlvbiA9IGljcFRyYW5zYWN0aW9uO1xuICB9XG5cbiAgZ2V0IHVuc2lnbmVkVHJhbnNhY3Rpb24oKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy5fcGF5bG9hZHNEYXRhLnVuc2lnbmVkX3RyYW5zYWN0aW9uO1xuICB9XG5cbiAgZ2V0IHNpZ25hdHVyZVBheWxvYWQoKTogU2lnbmF0dXJlc1tdIHtcbiAgICByZXR1cm4gdGhpcy5fc2lnbmF0dXJlUGF5bG9hZDtcbiAgfVxuXG4gIHNldCBzaWduZWRUcmFuc2FjdGlvbihzaWduYXR1cmU6IHN0cmluZykge1xuICAgIHRoaXMuX3NpZ25lZFRyYW5zYWN0aW9uID0gc2lnbmF0dXJlO1xuICB9XG5cbiAgZ2V0IHNpZ25lZFRyYW5zYWN0aW9uKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMuX3NpZ25lZFRyYW5zYWN0aW9uO1xuICB9XG5cbiAgc2V0IHBheWxvYWRzRGF0YShwYXlsb2Fkc0RhdGE6IFBheWxvYWRzRGF0YSkge1xuICAgIHRoaXMuX3BheWxvYWRzRGF0YSA9IHBheWxvYWRzRGF0YTtcbiAgfVxuXG4gIGdldCBwYXlsb2Fkc0RhdGEoKTogUGF5bG9hZHNEYXRhIHtcbiAgICByZXR1cm4gdGhpcy5fcGF5bG9hZHNEYXRhO1xuICB9XG5cbiAgZnJvbVJhd1RyYW5zYWN0aW9uKHJhd1RyYW5zYWN0aW9uOiBzdHJpbmcpOiB2b2lkIHtcbiAgICB0cnkge1xuICAgICAgY29uc3QgcGFyc2VkVHggPSBKU09OLnBhcnNlKHJhd1RyYW5zYWN0aW9uKTtcbiAgICAgIHN3aXRjaCAocGFyc2VkVHgudHlwZSkge1xuICAgICAgICBjYXNlIE9wZXJhdGlvblR5cGUuVFJBTlNBQ1RJT046XG4gICAgICAgICAgdGhpcy5faWNwVHJhbnNhY3Rpb25EYXRhID0ge1xuICAgICAgICAgICAgc2VuZGVyQWRkcmVzczogcGFyc2VkVHguYWRkcmVzcyxcbiAgICAgICAgICAgIHJlY2VpdmVyQWRkcmVzczogcGFyc2VkVHguZXh0ZXJuYWxPdXRwdXRzWzBdLmFkZHJlc3MsXG4gICAgICAgICAgICBhbW91bnQ6IHBhcnNlZFR4LnNwZW5kQW1vdW50U3RyaW5nLFxuICAgICAgICAgICAgZmVlOiBwYXJzZWRUeC5mZWUsXG4gICAgICAgICAgICBzZW5kZXJQdWJsaWNLZXlIZXg6IHBhcnNlZFR4LnNlbmRlcktleSxcbiAgICAgICAgICAgIG1lbW86IHBhcnNlZFR4LnNlcW5vLFxuICAgICAgICAgICAgdHJhbnNhY3Rpb25UeXBlOiBwYXJzZWRUeC50eXBlLFxuICAgICAgICAgICAgZXhwaXJ5VGltZTogcGFyc2VkVHguZXhwaXJ5VGltZSxcbiAgICAgICAgICB9O1xuICAgICAgICAgIHRoaXMuX3V0aWxzLnZhbGlkYXRlUmF3VHJhbnNhY3Rpb24odGhpcy5faWNwVHJhbnNhY3Rpb25EYXRhKTtcbiAgICAgICAgICBicmVhaztcbiAgICAgICAgZGVmYXVsdDpcbiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ0ludmFsaWQgdHJhbnNhY3Rpb24gdHlwZScpO1xuICAgICAgfVxuICAgIH0gY2F0Y2ggKGVycm9yKSB7XG4gICAgICB0aHJvdyBuZXcgSW52YWxpZFRyYW5zYWN0aW9uRXJyb3IoJ0ludmFsaWQgcmF3IHRyYW5zYWN0aW9uJyk7XG4gICAgfVxuICB9XG5cbiAgYWRkU2lnbmF0dXJlKHNpZ25hdHVyZVBheWxvYWRzOiBTaWduYXR1cmVzW10pOiB2b2lkIHtcbiAgICBpZiAoIXNpZ25hdHVyZVBheWxvYWRzKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ3NpZ25hdHVyZXMgbm90IHByb3ZpZGVkJyk7XG4gICAgfVxuICAgIGlmIChzaWduYXR1cmVQYXlsb2Fkcy5sZW5ndGggIT09IHRoaXMuX3BheWxvYWRzRGF0YS5wYXlsb2Fkcy5sZW5ndGgpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignc2lnbmF0dXJlcyBsZW5ndGggaXMgbm90IG1hdGNoaW5nJyk7XG4gICAgfVxuICAgIHRoaXMuX3NpZ25hdHVyZVBheWxvYWQgPSBzaWduYXR1cmVQYXlsb2FkcztcbiAgfVxuXG4gIC8qKiBAaW5oZXJpdGRvYyAqL1xuICB0b0pzb24oKTogVHhEYXRhIHtcbiAgICBpZiAoIXRoaXMuX2ljcFRyYW5zYWN0aW9uRGF0YSkge1xuICAgICAgdGhyb3cgbmV3IEludmFsaWRUcmFuc2FjdGlvbkVycm9yKCdFbXB0eSB0cmFuc2FjdGlvbicpO1xuICAgIH1cbiAgICBzd2l0Y2ggKHRoaXMuX2ljcFRyYW5zYWN0aW9uRGF0YS50cmFuc2FjdGlvblR5cGUpIHtcbiAgICAgIGNhc2UgT3BlcmF0aW9uVHlwZS5UUkFOU0FDVElPTjpcbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICBpZDogdGhpcy5faWQsXG4gICAgICAgICAgc2VuZGVyOiB0aGlzLl9pY3BUcmFuc2FjdGlvbkRhdGEuc2VuZGVyQWRkcmVzcyxcbiAgICAgICAgICBzZW5kZXJQdWJsaWNLZXk6IHRoaXMuX2ljcFRyYW5zYWN0aW9uRGF0YS5zZW5kZXJQdWJsaWNLZXlIZXgsXG4gICAgICAgICAgcmVjaXBpZW50OiB0aGlzLl9pY3BUcmFuc2FjdGlvbkRhdGEucmVjZWl2ZXJBZGRyZXNzLFxuICAgICAgICAgIG1lbW86IHRoaXMuX2ljcFRyYW5zYWN0aW9uRGF0YS5tZW1vLFxuICAgICAgICAgIGZlZUFtb3VudDogdGhpcy5faWNwVHJhbnNhY3Rpb25EYXRhLmZlZSxcbiAgICAgICAgICBleHBpcmF0aW9uVGltZTogdGhpcy5faWNwVHJhbnNhY3Rpb25EYXRhLmV4cGlyeVRpbWUsXG4gICAgICAgICAgdHlwZTogQml0R29UcmFuc2FjdGlvblR5cGUuU2VuZCxcbiAgICAgICAgfTtcbiAgICAgIGRlZmF1bHQ6XG4gICAgICAgIHRocm93IG5ldyBFcnJvcignVW5zdXBwb3J0ZWQgdHJhbnNhY3Rpb24gdHlwZScpO1xuICAgIH1cbiAgfVxuXG4gIC8qKiBAaW5oZXJpdERvYyAqL1xuICBleHBsYWluVHJhbnNhY3Rpb24oKTogSWNwVHJhbnNhY3Rpb25FeHBsYW5hdGlvbiB7XG4gICAgY29uc3QgcmVzdWx0ID0gdGhpcy50b0pzb24oKTtcbiAgICBjb25zdCBkaXNwbGF5T3JkZXIgPSBbJ2lkJywgJ291dHB1dEFtb3VudCcsICdjaGFuZ2VBbW91bnQnLCAnb3V0cHV0cycsICdjaGFuZ2VPdXRwdXRzJywgJ2ZlZSddO1xuICAgIGNvbnN0IG91dHB1dHM6IFRyYW5zYWN0aW9uUmVjaXBpZW50W10gPSBbXTtcblxuICAgIGNvbnN0IGV4cGxhbmF0aW9uUmVzdWx0ID0ge1xuICAgICAgZGlzcGxheU9yZGVyLFxuICAgICAgaWQ6IHRoaXMuaWQsXG4gICAgICBvdXRwdXRzLFxuICAgICAgb3V0cHV0QW1vdW50OiAnMCcsXG4gICAgICBmZWU6IHsgZmVlOiAnMCcgfSxcbiAgICAgIHR5cGU6IHJlc3VsdC50eXBlLFxuICAgICAgY2hhbmdlT3V0cHV0czogW10sIC8vIGFjY291bnQgYmFzZWQgZG9lcyBub3QgdXNlIGNoYW5nZSBvdXRwdXRzXG4gICAgICBjaGFuZ2VBbW91bnQ6ICcwJywgLy8gYWNjb3VudCBiYXNlZCBkb2VzIG5vdCBtYWtlIGNoYW5nZVxuICAgIH07XG5cbiAgICBzd2l0Y2ggKGV4cGxhbmF0aW9uUmVzdWx0LnR5cGUpIHtcbiAgICAgIGNhc2UgVHJhbnNhY3Rpb25UeXBlLlNlbmQ6XG4gICAgICAgIHJldHVybiB0aGlzLmV4cGxhaW5UcmFuc2ZlclRyYW5zYWN0aW9uKGV4cGxhbmF0aW9uUmVzdWx0KTtcbiAgICAgIGRlZmF1bHQ6XG4gICAgICAgIHRocm93IG5ldyBJbnZhbGlkVHJhbnNhY3Rpb25FcnJvcignVHJhbnNhY3Rpb24gdHlwZSBub3Qgc3VwcG9ydGVkJyk7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIEV4cGxhaW5zIGEgdHJhbnNmZXIgdHJhbnNhY3Rpb24gYnkgcHJvdmlkaW5nIGRldGFpbHMgYWJvdXQgdGhlIHJlY2lwaWVudHMgYW5kIHRoZSB0b3RhbCBvdXRwdXQgYW1vdW50LlxuICAgKlxuICAgKiBAcGFyYW0ge0ljcFRyYW5zYWN0aW9uRXhwbGFuYXRpb259IGV4cGxhbmF0aW9uUmVzdWx0IC0gVGhlIGluaXRpYWwgZXhwbGFuYXRpb24gcmVzdWx0IHRvIGJlIGV4dGVuZGVkLlxuICAgKiBAcmV0dXJucyB7SWNwVHJhbnNhY3Rpb25FeHBsYW5hdGlvbn0gVGhlIGV4dGVuZGVkIGV4cGxhbmF0aW9uIHJlc3VsdCBpbmNsdWRpbmcgdGhlIG91dHB1dCBhbW91bnQgYW5kIHJlY2lwaWVudHMuXG4gICAqL1xuICBleHBsYWluVHJhbnNmZXJUcmFuc2FjdGlvbihleHBsYW5hdGlvblJlc3VsdDogSWNwVHJhbnNhY3Rpb25FeHBsYW5hdGlvbik6IEljcFRyYW5zYWN0aW9uRXhwbGFuYXRpb24ge1xuICAgIGV4cGxhbmF0aW9uUmVzdWx0LmZlZSA9IHsgZmVlOiB0aGlzLmljcFRyYW5zYWN0aW9uRGF0YS5mZWUgfTtcbiAgICBjb25zdCByZWNpcGllbnRzID0gdGhpcy5fdXRpbHMuZ2V0UmVjaXBpZW50cyh0aGlzLmljcFRyYW5zYWN0aW9uRGF0YSk7XG4gICAgY29uc3Qgb3V0cHV0czogVHJhbnNhY3Rpb25SZWNpcGllbnRbXSA9IFtyZWNpcGllbnRzXTtcbiAgICBjb25zdCBvdXRwdXRBbW91bnRCTiA9IHJlY2lwaWVudHMuYW1vdW50O1xuICAgIGNvbnN0IG91dHB1dEFtb3VudCA9IG91dHB1dEFtb3VudEJOLnRvU3RyaW5nKCk7XG5cbiAgICByZXR1cm4ge1xuICAgICAgLi4uZXhwbGFuYXRpb25SZXN1bHQsXG4gICAgICBvdXRwdXRBbW91bnQsXG4gICAgICBvdXRwdXRzLFxuICAgIH07XG4gIH1cblxuICAvKiogQGluaGVyaXRkb2MgKi9cbiAgdG9Ccm9hZGNhc3RGb3JtYXQoKTogc3RyaW5nIHtcbiAgICBpZiAoIXRoaXMuX3NpZ25lZFRyYW5zYWN0aW9uKSB7XG4gICAgICB0aHJvdyBuZXcgSW52YWxpZFRyYW5zYWN0aW9uRXJyb3IoJ0VtcHR5IHRyYW5zYWN0aW9uJyk7XG4gICAgfVxuICAgIHJldHVybiB0aGlzLnNlcmlhbGl6ZSgpO1xuICB9XG5cbiAgc2VyaWFsaXplKCk6IHN0cmluZyB7XG4gICAgY29uc3QgdHJhbnNhY3Rpb246IFNpZ25lZFRyYW5zYWN0aW9uUmVxdWVzdCA9IHtcbiAgICAgIHNpZ25lZF90cmFuc2FjdGlvbjogdGhpcy5fc2lnbmVkVHJhbnNhY3Rpb24sXG4gICAgICBuZXR3b3JrX2lkZW50aWZpZXI6IHtcbiAgICAgICAgYmxvY2tjaGFpbjogdGhpcy5fY29pbkNvbmZpZy5mdWxsTmFtZSxcbiAgICAgICAgbmV0d29yazogTmV0d29yay5JRCxcbiAgICAgIH0sXG4gICAgfTtcbiAgICByZXR1cm4gSlNPTi5zdHJpbmdpZnkodHJhbnNhY3Rpb24pO1xuICB9XG5cbiAgLyoqIEBpbmhlcml0ZG9jICovXG4gIGNhblNpZ24oa2V5OiBCYXNlS2V5KTogYm9vbGVhbiB7XG4gICAgdHJ5IHtcbiAgICAgIGNvbnN0IGtleVBhaXIgPSBuZXcgS2V5UGFpcih7IHBydjoga2V5LmtleSB9KTtcbiAgICAgIGNvbnN0IHB1YmxpY0tleUhleCA9IGtleVBhaXIuZ2V0UHVibGljS2V5KHsgY29tcHJlc3NlZDogdHJ1ZSB9KS50b1N0cmluZygnaGV4Jyk7XG4gICAgICBjb25zdCB1bmNvbXByZXNzZWRQdWJsaWNLZXlIZXggPSBrZXlQYWlyLmdldFB1YmxpY0tleSh7IGNvbXByZXNzZWQ6IGZhbHNlIH0pLnRvU3RyaW5nKCdoZXgnKTtcbiAgICAgIHJldHVybiAoXG4gICAgICAgIHRoaXMuaWNwVHJhbnNhY3Rpb25EYXRhLnNlbmRlclB1YmxpY0tleUhleCA9PT0gcHVibGljS2V5SGV4IHx8XG4gICAgICAgIHRoaXMuaWNwVHJhbnNhY3Rpb25EYXRhLnNlbmRlclB1YmxpY0tleUhleCA9PT0gdW5jb21wcmVzc2VkUHVibGljS2V5SGV4XG4gICAgICApO1xuICAgIH0gY2F0Y2ggKGVycm9yKSB7XG4gICAgICByZXR1cm4gZmFsc2U7XG4gICAgfVxuICB9XG59XG4iXX0=
@@ -1,48 +1,64 @@
1
1
  import { BaseCoin as CoinConfig } from '@bitgo-beta/statics';
2
- import { BaseKey, BaseTransaction, PublicKey as BasePublicKey, BaseTransactionBuilder, BaseAddress, Recipient } from '@bitgo-beta/sdk-core';
3
- import { TransferBuilder } from './transferBuilder';
2
+ import BigNumber from 'bignumber.js';
3
+ import { BaseKey, BaseTransactionBuilder, BaseAddress } from '@bitgo-beta/sdk-core';
4
+ import { Transaction } from './transaction';
5
+ import { IcpTransactionData } from './iface';
4
6
  export declare abstract class TransactionBuilder extends BaseTransactionBuilder {
5
- protected _transfer: TransferBuilder;
6
- protected constructor(_coinConfig: Readonly<CoinConfig>);
7
- /** @inheritdoc */
8
- protected signImplementation(key: BaseKey): BaseTransaction;
7
+ protected _transaction: Transaction;
8
+ protected _sender: string;
9
+ protected _publicKey: string;
10
+ protected _memo: number | BigInt;
11
+ protected _receiverId: string;
12
+ protected _amount: string;
13
+ constructor(_coinConfig: Readonly<CoinConfig>);
9
14
  /**
10
- * add a signature to the transaction
15
+ * Sets the public key and the address of the sender of this transaction.
16
+ *
17
+ * @param {string} address the account that is sending this transaction
18
+ * @param {string} pubKey the public key that is sending this transaction
19
+ * @returns {TransactionBuilder} This transaction builder
11
20
  */
12
- addSignature(publicKey: BasePublicKey, signature: Buffer): void;
21
+ sender(address: string, pubKey: string): this;
13
22
  /**
14
- * Sets the sender of this transaction.
23
+ * Set the memo
24
+ *
25
+ * @param {number} memo - number that to be used as memo
26
+ * @returns {TransactionBuilder} This transaction builder
15
27
  */
16
- sender(senderAddress: string): this;
28
+ memo(memo: number): this;
17
29
  /**
18
- * gets the gas data of this transaction.
30
+ * Sets the account Id of the receiver of this transaction.
31
+ *
32
+ * @param {string} accountId the account id of the account that is receiving this transaction
33
+ * @returns {TransactionBuilder} This transaction builder
19
34
  */
20
- gasData(): this;
35
+ receiverId(accountId: string): this;
21
36
  /** @inheritdoc */
22
- validateAddress(address: BaseAddress, addressFormat?: string): void;
23
- /**
24
- * validates the recipients of the transaction
25
- */
26
- validateRecipients(recipients: Recipient[]): void;
27
- /**
28
- * validates the gas data of the transaction
29
- */
30
- validateGasData(): void;
31
- /**
32
- * validates the gas price of the transaction
33
- */
34
- validateGasPrice(gasPrice: number): void;
37
+ get transaction(): Transaction;
35
38
  /** @inheritdoc */
36
- validateKey(key: BaseKey): void;
39
+ set transaction(transaction: Transaction);
40
+ get transactionType(): string;
37
41
  /** @inheritdoc */
38
- validateRawTransaction(rawTransaction: string): void;
42
+ fromImplementation(rawTransaction: IcpTransactionData): Transaction;
39
43
  /** @inheritdoc */
40
- validateValue(): void;
44
+ validateTransaction(transaction: Transaction): void;
41
45
  /**
42
- * Validates the specific transaction builder internally
46
+ * Sets the amount of this transaction.
47
+ *
48
+ * @param {string} value the amount to be sent in e8s (1 ICP = 1e8 e8s)
49
+ * @returns {TransactionBuilder} This transaction builder
43
50
  */
44
- validateDecodedTransaction(): void;
51
+ amount(value: string): this;
52
+ validateValue(value: BigNumber): void;
53
+ /**
54
+ * Initialize the transaction builder fields using the decoded transaction data
55
+ *
56
+ * @param {Transaction} tx the transaction data
57
+ */
58
+ initBuilder(tx: Transaction): void;
45
59
  /** @inheritdoc */
46
- validateTransaction(): void;
60
+ validateKey(key: BaseKey): void;
61
+ validateAddress(address: BaseAddress): void;
62
+ validateRawTransaction(rawTransaction: IcpTransactionData): void;
47
63
  }
48
64
  //# sourceMappingURL=transactionBuilder.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"transactionBuilder.d.ts","sourceRoot":"","sources":["../../../src/lib/transactionBuilder.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,IAAI,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAC7D,OAAO,EACL,OAAO,EACP,eAAe,EACf,SAAS,IAAI,aAAa,EAC1B,sBAAsB,EACtB,WAAW,EACX,SAAS,EACV,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAEpD,8BAAsB,kBAAmB,SAAQ,sBAAsB;IACrE,SAAS,CAAC,SAAS,EAAE,eAAe,CAAC;IAErC,SAAS,aAAa,WAAW,EAAE,QAAQ,CAAC,UAAU,CAAC;IAIvD,kBAAkB;IAClB,SAAS,CAAC,kBAAkB,CAAC,GAAG,EAAE,OAAO,GAAG,eAAe;IAI3D;;OAEG;IACH,YAAY,CAAC,SAAS,EAAE,aAAa,EAAE,SAAS,EAAE,MAAM,GAAG,IAAI;IAI/D;;OAEG;IACH,MAAM,CAAC,aAAa,EAAE,MAAM,GAAG,IAAI;IAInC;;OAEG;IACH,OAAO,IAAI,IAAI;IAIf,kBAAkB;IAClB,eAAe,CAAC,OAAO,EAAE,WAAW,EAAE,aAAa,CAAC,EAAE,MAAM,GAAG,IAAI;IAInE;;OAEG;IACH,kBAAkB,CAAC,UAAU,EAAE,SAAS,EAAE,GAAG,IAAI;IAIjD;;OAEG;IACH,eAAe,IAAI,IAAI;IAIvB;;OAEG;IACH,gBAAgB,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI;IAIxC,kBAAkB;IAClB,WAAW,CAAC,GAAG,EAAE,OAAO,GAAG,IAAI;IAI/B,kBAAkB;IAClB,sBAAsB,CAAC,cAAc,EAAE,MAAM,GAAG,IAAI;IAIpD,kBAAkB;IAClB,aAAa,IAAI,IAAI;IAIrB;;OAEG;IACH,0BAA0B,IAAI,IAAI;IAIlC,kBAAkB;IAClB,mBAAmB,IAAI,IAAI;CAG5B"}
1
+ {"version":3,"file":"transactionBuilder.d.ts","sourceRoot":"","sources":["../../../src/lib/transactionBuilder.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,IAAI,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAC7D,OAAO,SAAS,MAAM,cAAc,CAAC;AACrC,OAAO,EAAE,OAAO,EAAE,sBAAsB,EAAuC,WAAW,EAAE,MAAM,sBAAsB,CAAC;AACzH,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAE5C,OAAO,EAAE,kBAAkB,EAAE,MAAM,SAAS,CAAC;AAE7C,8BAAsB,kBAAmB,SAAQ,sBAAsB;IACrE,SAAS,CAAC,YAAY,EAAE,WAAW,CAAC;IACpC,SAAS,CAAC,OAAO,EAAE,MAAM,CAAC;IAC1B,SAAS,CAAC,UAAU,EAAE,MAAM,CAAC;IAC7B,SAAS,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAAC;IACjC,SAAS,CAAC,WAAW,EAAE,MAAM,CAAC;IAC9B,SAAS,CAAC,OAAO,EAAE,MAAM,CAAC;gBAEd,WAAW,EAAE,QAAQ,CAAC,UAAU,CAAC;IAK7C;;;;;;OAMG;IACI,MAAM,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,IAAI;IAYpD;;;;;OAKG;IACI,IAAI,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI;IAQ/B;;;;;OAKG;IACI,UAAU,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI;IAQ1C,kBAAkB;IAClB,IAAI,WAAW,IAAI,WAAW,CAE7B;IAED,kBAAkB;IAClB,IAAI,WAAW,CAAC,WAAW,EAAE,WAAW,EAEvC;IAED,IAAI,eAAe,IAAI,MAAM,CAE5B;IAED,kBAAkB;IAClB,kBAAkB,CAAC,cAAc,EAAE,kBAAkB,GAAG,WAAW;IAMnE,kBAAkB;IAClB,mBAAmB,CAAC,WAAW,EAAE,WAAW,GAAG,IAAI;IAOnD;;;;;OAKG;IACI,MAAM,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAMlC,aAAa,CAAC,KAAK,EAAE,SAAS,GAAG,IAAI;IAIrC;;;;OAIG;IACH,WAAW,CAAC,EAAE,EAAE,WAAW,GAAG,IAAI;IAUlC,kBAAkB;IAClB,WAAW,CAAC,GAAG,EAAE,OAAO,GAAG,IAAI;IAS/B,eAAe,CAAC,OAAO,EAAE,WAAW,GAAG,IAAI;IAM3C,sBAAsB,CAAC,cAAc,EAAE,kBAAkB,GAAG,IAAI;CAGjE"}
@@ -1,77 +1,131 @@
1
1
  "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
2
5
  Object.defineProperty(exports, "__esModule", { value: true });
3
6
  exports.TransactionBuilder = void 0;
7
+ const bignumber_js_1 = __importDefault(require("bignumber.js"));
4
8
  const sdk_core_1 = require("@bitgo-beta/sdk-core");
9
+ const transaction_1 = require("./transaction");
10
+ const utils_1 = __importDefault(require("./utils"));
5
11
  class TransactionBuilder extends sdk_core_1.BaseTransactionBuilder {
6
12
  constructor(_coinConfig) {
7
13
  super(_coinConfig);
8
- }
9
- /** @inheritdoc */
10
- signImplementation(key) {
11
- throw new Error('method not implemented');
14
+ this._transaction = new transaction_1.Transaction(_coinConfig, utils_1.default);
12
15
  }
13
16
  /**
14
- * add a signature to the transaction
17
+ * Sets the public key and the address of the sender of this transaction.
18
+ *
19
+ * @param {string} address the account that is sending this transaction
20
+ * @param {string} pubKey the public key that is sending this transaction
21
+ * @returns {TransactionBuilder} This transaction builder
15
22
  */
16
- addSignature(publicKey, signature) {
17
- throw new Error('method not implemented');
23
+ sender(address, pubKey) {
24
+ if (!address || !utils_1.default.isValidAddress(address.toString())) {
25
+ throw new sdk_core_1.BuildTransactionError('Invalid or missing address, got: ' + address);
26
+ }
27
+ if (!pubKey || !utils_1.default.isValidPublicKey(pubKey)) {
28
+ throw new sdk_core_1.BuildTransactionError('Invalid or missing pubKey, got: ' + pubKey);
29
+ }
30
+ this._sender = address;
31
+ this._publicKey = pubKey;
32
+ return this;
18
33
  }
19
34
  /**
20
- * Sets the sender of this transaction.
35
+ * Set the memo
36
+ *
37
+ * @param {number} memo - number that to be used as memo
38
+ * @returns {TransactionBuilder} This transaction builder
21
39
  */
22
- sender(senderAddress) {
23
- throw new Error('method not implemented');
40
+ memo(memo) {
41
+ if (memo < 0) {
42
+ throw new sdk_core_1.BuildTransactionError(`Invalid memo: ${memo}`);
43
+ }
44
+ this._memo = memo;
45
+ return this;
24
46
  }
25
47
  /**
26
- * gets the gas data of this transaction.
48
+ * Sets the account Id of the receiver of this transaction.
49
+ *
50
+ * @param {string} accountId the account id of the account that is receiving this transaction
51
+ * @returns {TransactionBuilder} This transaction builder
27
52
  */
28
- gasData() {
29
- throw new Error('method not implemented');
53
+ receiverId(accountId) {
54
+ if (!accountId || !utils_1.default.isValidAddress(accountId)) {
55
+ throw new sdk_core_1.BuildTransactionError('Invalid or missing accountId for receiver, got: ' + accountId);
56
+ }
57
+ this._receiverId = accountId;
58
+ return this;
30
59
  }
31
60
  /** @inheritdoc */
32
- validateAddress(address, addressFormat) {
33
- throw new Error('method not implemented');
34
- }
35
- /**
36
- * validates the recipients of the transaction
37
- */
38
- validateRecipients(recipients) {
39
- throw new Error('method not implemented');
61
+ get transaction() {
62
+ return this._transaction;
40
63
  }
41
- /**
42
- * validates the gas data of the transaction
43
- */
44
- validateGasData() {
45
- throw new Error('method not implemented');
64
+ /** @inheritdoc */
65
+ set transaction(transaction) {
66
+ this._transaction = transaction;
46
67
  }
47
- /**
48
- * validates the gas price of the transaction
49
- */
50
- validateGasPrice(gasPrice) {
51
- throw new Error('method not implemented');
68
+ get transactionType() {
69
+ return this._transaction.icpTransactionData.transactionType;
52
70
  }
53
71
  /** @inheritdoc */
54
- validateKey(key) {
55
- throw new Error('method not implemented');
72
+ fromImplementation(rawTransaction) {
73
+ this.validateRawTransaction(rawTransaction);
74
+ this.buildImplementation();
75
+ return this.transaction;
56
76
  }
57
77
  /** @inheritdoc */
58
- validateRawTransaction(rawTransaction) {
59
- throw new Error('method not implemented');
78
+ validateTransaction(transaction) {
79
+ if (!transaction || !transaction.icpTransactionData) {
80
+ return;
81
+ }
82
+ utils_1.default.validateRawTransaction(transaction.icpTransactionData);
60
83
  }
61
- /** @inheritdoc */
62
- validateValue() {
63
- throw new Error('method not implemented');
84
+ /**
85
+ * Sets the amount of this transaction.
86
+ *
87
+ * @param {string} value the amount to be sent in e8s (1 ICP = 1e8 e8s)
88
+ * @returns {TransactionBuilder} This transaction builder
89
+ */
90
+ amount(value) {
91
+ utils_1.default.validateValue(new bignumber_js_1.default(value));
92
+ this._amount = value;
93
+ return this;
94
+ }
95
+ validateValue(value) {
96
+ utils_1.default.validateValue(new bignumber_js_1.default(value));
64
97
  }
65
98
  /**
66
- * Validates the specific transaction builder internally
99
+ * Initialize the transaction builder fields using the decoded transaction data
100
+ *
101
+ * @param {Transaction} tx the transaction data
67
102
  */
68
- validateDecodedTransaction() {
69
- throw new Error('method not implemented');
103
+ initBuilder(tx) {
104
+ this._transaction = tx;
105
+ const icpTransactionData = tx.icpTransactionData;
106
+ this._sender = icpTransactionData.senderAddress;
107
+ this._memo = icpTransactionData.memo;
108
+ this._receiverId = icpTransactionData.receiverAddress;
109
+ this._publicKey = icpTransactionData.senderPublicKeyHex;
110
+ this._amount = icpTransactionData.amount;
70
111
  }
71
112
  /** @inheritdoc */
72
- validateTransaction() {
73
- throw new Error('method not implemented');
113
+ validateKey(key) {
114
+ if (!key || !key.key) {
115
+ throw new sdk_core_1.SigningError('Key is required');
116
+ }
117
+ if (!utils_1.default.isValidPrivateKey(key.key)) {
118
+ throw new sdk_core_1.SigningError('Invalid private key');
119
+ }
120
+ }
121
+ validateAddress(address) {
122
+ if (!utils_1.default.isValidAddress(address.address)) {
123
+ throw new sdk_core_1.BuildTransactionError('Invalid address');
124
+ }
125
+ }
126
+ validateRawTransaction(rawTransaction) {
127
+ utils_1.default.validateRawTransaction(rawTransaction);
74
128
  }
75
129
  }
76
130
  exports.TransactionBuilder = TransactionBuilder;
77
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNhY3Rpb25CdWlsZGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2xpYi90cmFuc2FjdGlvbkJ1aWxkZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQ0EsbURBTzhCO0FBRzlCLE1BQXNCLGtCQUFtQixTQUFRLGlDQUFzQjtJQUdyRSxZQUFzQixXQUFpQztRQUNyRCxLQUFLLENBQUMsV0FBVyxDQUFDLENBQUM7SUFDckIsQ0FBQztJQUVELGtCQUFrQjtJQUNSLGtCQUFrQixDQUFDLEdBQVk7UUFDdkMsTUFBTSxJQUFJLEtBQUssQ0FBQyx3QkFBd0IsQ0FBQyxDQUFDO0lBQzVDLENBQUM7SUFFRDs7T0FFRztJQUNILFlBQVksQ0FBQyxTQUF3QixFQUFFLFNBQWlCO1FBQ3RELE1BQU0sSUFBSSxLQUFLLENBQUMsd0JBQXdCLENBQUMsQ0FBQztJQUM1QyxDQUFDO0lBRUQ7O09BRUc7SUFDSCxNQUFNLENBQUMsYUFBcUI7UUFDMUIsTUFBTSxJQUFJLEtBQUssQ0FBQyx3QkFBd0IsQ0FBQyxDQUFDO0lBQzVDLENBQUM7SUFFRDs7T0FFRztJQUNILE9BQU87UUFDTCxNQUFNLElBQUksS0FBSyxDQUFDLHdCQUF3QixDQUFDLENBQUM7SUFDNUMsQ0FBQztJQUVELGtCQUFrQjtJQUNsQixlQUFlLENBQUMsT0FBb0IsRUFBRSxhQUFzQjtRQUMxRCxNQUFNLElBQUksS0FBSyxDQUFDLHdCQUF3QixDQUFDLENBQUM7SUFDNUMsQ0FBQztJQUVEOztPQUVHO0lBQ0gsa0JBQWtCLENBQUMsVUFBdUI7UUFDeEMsTUFBTSxJQUFJLEtBQUssQ0FBQyx3QkFBd0IsQ0FBQyxDQUFDO0lBQzVDLENBQUM7SUFFRDs7T0FFRztJQUNILGVBQWU7UUFDYixNQUFNLElBQUksS0FBSyxDQUFDLHdCQUF3QixDQUFDLENBQUM7SUFDNUMsQ0FBQztJQUVEOztPQUVHO0lBQ0gsZ0JBQWdCLENBQUMsUUFBZ0I7UUFDL0IsTUFBTSxJQUFJLEtBQUssQ0FBQyx3QkFBd0IsQ0FBQyxDQUFDO0lBQzVDLENBQUM7SUFFRCxrQkFBa0I7SUFDbEIsV0FBVyxDQUFDLEdBQVk7UUFDdEIsTUFBTSxJQUFJLEtBQUssQ0FBQyx3QkFBd0IsQ0FBQyxDQUFDO0lBQzVDLENBQUM7SUFFRCxrQkFBa0I7SUFDbEIsc0JBQXNCLENBQUMsY0FBc0I7UUFDM0MsTUFBTSxJQUFJLEtBQUssQ0FBQyx3QkFBd0IsQ0FBQyxDQUFDO0lBQzVDLENBQUM7SUFFRCxrQkFBa0I7SUFDbEIsYUFBYTtRQUNYLE1BQU0sSUFBSSxLQUFLLENBQUMsd0JBQXdCLENBQUMsQ0FBQztJQUM1QyxDQUFDO0lBRUQ7O09BRUc7SUFDSCwwQkFBMEI7UUFDeEIsTUFBTSxJQUFJLEtBQUssQ0FBQyx3QkFBd0IsQ0FBQyxDQUFDO0lBQzVDLENBQUM7SUFFRCxrQkFBa0I7SUFDbEIsbUJBQW1CO1FBQ2pCLE1BQU0sSUFBSSxLQUFLLENBQUMsd0JBQXdCLENBQUMsQ0FBQztJQUM1QyxDQUFDO0NBQ0Y7QUFyRkQsZ0RBcUZDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQmFzZUNvaW4gYXMgQ29pbkNvbmZpZyB9IGZyb20gJ0BiaXRnby1iZXRhL3N0YXRpY3MnO1xuaW1wb3J0IHtcbiAgQmFzZUtleSxcbiAgQmFzZVRyYW5zYWN0aW9uLFxuICBQdWJsaWNLZXkgYXMgQmFzZVB1YmxpY0tleSxcbiAgQmFzZVRyYW5zYWN0aW9uQnVpbGRlcixcbiAgQmFzZUFkZHJlc3MsXG4gIFJlY2lwaWVudCxcbn0gZnJvbSAnQGJpdGdvLWJldGEvc2RrLWNvcmUnO1xuaW1wb3J0IHsgVHJhbnNmZXJCdWlsZGVyIH0gZnJvbSAnLi90cmFuc2ZlckJ1aWxkZXInO1xuXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgVHJhbnNhY3Rpb25CdWlsZGVyIGV4dGVuZHMgQmFzZVRyYW5zYWN0aW9uQnVpbGRlciB7XG4gIHByb3RlY3RlZCBfdHJhbnNmZXI6IFRyYW5zZmVyQnVpbGRlcjtcblxuICBwcm90ZWN0ZWQgY29uc3RydWN0b3IoX2NvaW5Db25maWc6IFJlYWRvbmx5PENvaW5Db25maWc+KSB7XG4gICAgc3VwZXIoX2NvaW5Db25maWcpO1xuICB9XG5cbiAgLyoqIEBpbmhlcml0ZG9jICovXG4gIHByb3RlY3RlZCBzaWduSW1wbGVtZW50YXRpb24oa2V5OiBCYXNlS2V5KTogQmFzZVRyYW5zYWN0aW9uIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoJ21ldGhvZCBub3QgaW1wbGVtZW50ZWQnKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBhZGQgYSBzaWduYXR1cmUgdG8gdGhlIHRyYW5zYWN0aW9uXG4gICAqL1xuICBhZGRTaWduYXR1cmUocHVibGljS2V5OiBCYXNlUHVibGljS2V5LCBzaWduYXR1cmU6IEJ1ZmZlcik6IHZvaWQge1xuICAgIHRocm93IG5ldyBFcnJvcignbWV0aG9kIG5vdCBpbXBsZW1lbnRlZCcpO1xuICB9XG5cbiAgLyoqXG4gICAqIFNldHMgdGhlIHNlbmRlciBvZiB0aGlzIHRyYW5zYWN0aW9uLlxuICAgKi9cbiAgc2VuZGVyKHNlbmRlckFkZHJlc3M6IHN0cmluZyk6IHRoaXMge1xuICAgIHRocm93IG5ldyBFcnJvcignbWV0aG9kIG5vdCBpbXBsZW1lbnRlZCcpO1xuICB9XG5cbiAgLyoqXG4gICAqIGdldHMgdGhlIGdhcyBkYXRhIG9mIHRoaXMgdHJhbnNhY3Rpb24uXG4gICAqL1xuICBnYXNEYXRhKCk6IHRoaXMge1xuICAgIHRocm93IG5ldyBFcnJvcignbWV0aG9kIG5vdCBpbXBsZW1lbnRlZCcpO1xuICB9XG5cbiAgLyoqIEBpbmhlcml0ZG9jICovXG4gIHZhbGlkYXRlQWRkcmVzcyhhZGRyZXNzOiBCYXNlQWRkcmVzcywgYWRkcmVzc0Zvcm1hdD86IHN0cmluZyk6IHZvaWQge1xuICAgIHRocm93IG5ldyBFcnJvcignbWV0aG9kIG5vdCBpbXBsZW1lbnRlZCcpO1xuICB9XG5cbiAgLyoqXG4gICAqIHZhbGlkYXRlcyB0aGUgcmVjaXBpZW50cyBvZiB0aGUgdHJhbnNhY3Rpb25cbiAgICovXG4gIHZhbGlkYXRlUmVjaXBpZW50cyhyZWNpcGllbnRzOiBSZWNpcGllbnRbXSk6IHZvaWQge1xuICAgIHRocm93IG5ldyBFcnJvcignbWV0aG9kIG5vdCBpbXBsZW1lbnRlZCcpO1xuICB9XG5cbiAgLyoqXG4gICAqIHZhbGlkYXRlcyB0aGUgZ2FzIGRhdGEgb2YgdGhlIHRyYW5zYWN0aW9uXG4gICAqL1xuICB2YWxpZGF0ZUdhc0RhdGEoKTogdm9pZCB7XG4gICAgdGhyb3cgbmV3IEVycm9yKCdtZXRob2Qgbm90IGltcGxlbWVudGVkJyk7XG4gIH1cblxuICAvKipcbiAgICogdmFsaWRhdGVzIHRoZSBnYXMgcHJpY2Ugb2YgdGhlIHRyYW5zYWN0aW9uXG4gICAqL1xuICB2YWxpZGF0ZUdhc1ByaWNlKGdhc1ByaWNlOiBudW1iZXIpOiB2b2lkIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoJ21ldGhvZCBub3QgaW1wbGVtZW50ZWQnKTtcbiAgfVxuXG4gIC8qKiBAaW5oZXJpdGRvYyAqL1xuICB2YWxpZGF0ZUtleShrZXk6IEJhc2VLZXkpOiB2b2lkIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoJ21ldGhvZCBub3QgaW1wbGVtZW50ZWQnKTtcbiAgfVxuXG4gIC8qKiBAaW5oZXJpdGRvYyAqL1xuICB2YWxpZGF0ZVJhd1RyYW5zYWN0aW9uKHJhd1RyYW5zYWN0aW9uOiBzdHJpbmcpOiB2b2lkIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoJ21ldGhvZCBub3QgaW1wbGVtZW50ZWQnKTtcbiAgfVxuXG4gIC8qKiBAaW5oZXJpdGRvYyAqL1xuICB2YWxpZGF0ZVZhbHVlKCk6IHZvaWQge1xuICAgIHRocm93IG5ldyBFcnJvcignbWV0aG9kIG5vdCBpbXBsZW1lbnRlZCcpO1xuICB9XG5cbiAgLyoqXG4gICAqIFZhbGlkYXRlcyB0aGUgc3BlY2lmaWMgdHJhbnNhY3Rpb24gYnVpbGRlciBpbnRlcm5hbGx5XG4gICAqL1xuICB2YWxpZGF0ZURlY29kZWRUcmFuc2FjdGlvbigpOiB2b2lkIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoJ21ldGhvZCBub3QgaW1wbGVtZW50ZWQnKTtcbiAgfVxuXG4gIC8qKiBAaW5oZXJpdGRvYyAqL1xuICB2YWxpZGF0ZVRyYW5zYWN0aW9uKCk6IHZvaWQge1xuICAgIHRocm93IG5ldyBFcnJvcignbWV0aG9kIG5vdCBpbXBsZW1lbnRlZCcpO1xuICB9XG59XG4iXX0=
131
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNhY3Rpb25CdWlsZGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2xpYi90cmFuc2FjdGlvbkJ1aWxkZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQ0EsZ0VBQXFDO0FBQ3JDLG1EQUF5SDtBQUN6SCwrQ0FBNEM7QUFDNUMsb0RBQTRCO0FBRzVCLE1BQXNCLGtCQUFtQixTQUFRLGlDQUFzQjtJQVFyRSxZQUFZLFdBQWlDO1FBQzNDLEtBQUssQ0FBQyxXQUFXLENBQUMsQ0FBQztRQUNuQixJQUFJLENBQUMsWUFBWSxHQUFHLElBQUkseUJBQVcsQ0FBQyxXQUFXLEVBQUUsZUFBSyxDQUFDLENBQUM7SUFDMUQsQ0FBQztJQUVEOzs7Ozs7T0FNRztJQUNJLE1BQU0sQ0FBQyxPQUFlLEVBQUUsTUFBYztRQUMzQyxJQUFJLENBQUMsT0FBTyxJQUFJLENBQUMsZUFBSyxDQUFDLGNBQWMsQ0FBQyxPQUFPLENBQUMsUUFBUSxFQUFFLENBQUMsRUFBRSxDQUFDO1lBQzFELE1BQU0sSUFBSSxnQ0FBcUIsQ0FBQyxtQ0FBbUMsR0FBRyxPQUFPLENBQUMsQ0FBQztRQUNqRixDQUFDO1FBQ0QsSUFBSSxDQUFDLE1BQU0sSUFBSSxDQUFDLGVBQUssQ0FBQyxnQkFBZ0IsQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDO1lBQy9DLE1BQU0sSUFBSSxnQ0FBcUIsQ0FBQyxrQ0FBa0MsR0FBRyxNQUFNLENBQUMsQ0FBQztRQUMvRSxDQUFDO1FBQ0QsSUFBSSxDQUFDLE9BQU8sR0FBRyxPQUFPLENBQUM7UUFDdkIsSUFBSSxDQUFDLFVBQVUsR0FBRyxNQUFNLENBQUM7UUFDekIsT0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDO0lBRUQ7Ozs7O09BS0c7SUFDSSxJQUFJLENBQUMsSUFBWTtRQUN0QixJQUFJLElBQUksR0FBRyxDQUFDLEVBQUUsQ0FBQztZQUNiLE1BQU0sSUFBSSxnQ0FBcUIsQ0FBQyxpQkFBaUIsSUFBSSxFQUFF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QUFlLENBQUMsT0FBb0I7UUFDbEMsSUFBSSxDQUFDLGVBQUssQ0FBQyxjQUFjLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxFQUFFLENBQUM7WUFDM0MsTUFBTSxJQUFJLGdDQUFxQixDQUFDLGlCQUFpQixDQUFDLENBQUM7UUFDckQsQ0FBQztJQUNILENBQUM7SUFFRCxzQkFBc0IsQ0FBQyxjQUFrQztRQUN2RCxlQUFLLENBQUMsc0JBQXNCLENBQUMsY0FBYyxDQUFDLENBQUM7SUFDL0MsQ0FBQztDQUNGO0FBM0lELGdEQTJJQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEJhc2VDb2luIGFzIENvaW5Db25maWcgfSBmcm9tICdAYml0Z28tYmV0YS9zdGF0aWNzJztcbmltcG9ydCBCaWdOdW1iZXIgZnJvbSAnYmlnbnVtYmVyLmpzJztcbmltcG9ydCB7IEJhc2VLZXksIEJhc2VUcmFuc2FjdGlvbkJ1aWxkZXIsIEJ1aWxkVHJhbnNhY3Rpb25FcnJvciwgU2lnbmluZ0Vycm9yLCBCYXNlQWRkcmVzcyB9IGZyb20gJ0BiaXRnby1iZXRhL3Nkay1jb3JlJztcbmltcG9ydCB7IFRyYW5zYWN0aW9uIH0gZnJvbSAnLi90cmFuc2FjdGlvbic7XG5pbXBvcnQgdXRpbHMgZnJvbSAnLi91dGlscyc7XG5pbXBvcnQgeyBJY3BUcmFuc2FjdGlvbkRhdGEgfSBmcm9tICcuL2lmYWNlJztcblxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIFRyYW5zYWN0aW9uQnVpbGRlciBleHRlbmRzIEJhc2VUcmFuc2FjdGlvbkJ1aWxkZXIge1xuICBwcm90ZWN0ZWQgX3RyYW5zYWN0aW9uOiBUcmFuc2FjdGlvbjtcbiAgcHJvdGVjdGVkIF9zZW5kZXI6IHN0cmluZztcbiAgcHJvdGVjdGVkIF9wdWJsaWNLZXk6IHN0cmluZztcbiAgcHJvdGVjdGVkIF9tZW1vOiBudW1iZXIgfCBCaWdJbnQ7XG4gIHByb3RlY3RlZCBfcmVjZWl2ZXJJZDogc3RyaW5nO1xuICBwcm90ZWN0ZWQgX2Ftb3VudDogc3RyaW5nO1xuXG4gIGNvbnN0cnVjdG9yKF9jb2luQ29uZmlnOiBSZWFkb25seTxDb2luQ29uZmlnPikge1xuICAgIHN1cGVyKF9jb2luQ29uZmlnKTtcbiAgICB0aGlzLl90cmFuc2FjdGlvbiA9IG5ldyBUcmFuc2FjdGlvbihfY29pbkNvbmZpZywgdXRpbHMpO1xuICB9XG5cbiAgLyoqXG4gICAqIFNldHMgdGhlIHB1YmxpYyBrZXkgYW5kIHRoZSBhZGRyZXNzIG9mIHRoZSBzZW5kZXIgb2YgdGhpcyB0cmFuc2FjdGlvbi5cbiAgICpcbiAgICogQHBhcmFtIHtzdHJpbmd9IGFkZHJlc3MgdGhlIGFjY291bnQgdGhhdCBpcyBzZW5kaW5nIHRoaXMgdHJhbnNhY3Rpb25cbiAgICogQHBhcmFtIHtzdHJpbmd9IHB1YktleSB0aGUgcHVibGljIGtleSB0aGF0IGlzIHNlbmRpbmcgdGhpcyB0cmFuc2FjdGlvblxuICAgKiBAcmV0dXJucyB7VHJhbnNhY3Rpb25CdWlsZGVyfSBUaGlzIHRyYW5zYWN0aW9uIGJ1aWxkZXJcbiAgICovXG4gIHB1YmxpYyBzZW5kZXIoYWRkcmVzczogc3RyaW5nLCBwdWJLZXk6IHN0cmluZyk6IHRoaXMge1xuICAgIGlmICghYWRkcmVzcyB8fCAhdXRpbHMuaXNWYWxpZEFkZHJlc3MoYWRkcmVzcy50b1N0cmluZygpKSkge1xuICAgICAgdGhyb3cgbmV3IEJ1aWxkVHJhbnNhY3Rpb25FcnJvcignSW52YWxpZCBvciBtaXNzaW5nIGFkZHJlc3MsIGdvdDogJyArIGFkZHJlc3MpO1xuICAgIH1cbiAgICBpZiAoIXB1YktleSB8fCAhdXRpbHMuaXNWYWxpZFB1YmxpY0tleShwdWJLZXkpKSB7XG4gICAgICB0aHJvdyBuZXcgQnVpbGRUcmFuc2FjdGlvbkVycm9yKCdJbnZhbGlkIG9yIG1pc3NpbmcgcHViS2V5LCBnb3Q6ICcgKyBwdWJLZXkpO1xuICAgIH1cbiAgICB0aGlzLl9zZW5kZXIgPSBhZGRyZXNzO1xuICAgIHRoaXMuX3B1YmxpY0tleSA9IHB1YktleTtcbiAgICByZXR1cm4gdGhpcztcbiAgfVxuXG4gIC8qKlxuICAgKiBTZXQgdGhlIG1lbW9cbiAgICpcbiAgICogQHBhcmFtIHtudW1iZXJ9IG1lbW8gLSBudW1iZXIgdGhhdCB0byBiZSB1c2VkIGFzIG1lbW9cbiAgICogQHJldHVybnMge1RyYW5zYWN0aW9uQnVpbGRlcn0gVGhpcyB0cmFuc2FjdGlvbiBidWlsZGVyXG4gICAqL1xuICBwdWJsaWMgbWVtbyhtZW1vOiBudW1iZXIpOiB0aGlzIHtcbiAgICBpZiAobWVtbyA8IDApIHtcbiAgICAgIHRocm93IG5ldyBCdWlsZFRyYW5zYWN0aW9uRXJyb3IoYEludmFsaWQgbWVtbzogJHttZW1vfWApO1xuICAgIH1cbiAgICB0aGlzLl9tZW1vID0gbWVtbztcbiAgICByZXR1cm4gdGhpcztcbiAgfVxuXG4gIC8qKlxuICAgKiBTZXRzIHRoZSBhY2NvdW50IElkIG9mIHRoZSByZWNlaXZlciBvZiB0aGlzIHRyYW5zYWN0aW9uLlxuICAgKlxuICAgKiBAcGFyYW0ge3N0cmluZ30gYWNjb3VudElkIHRoZSBhY2NvdW50IGlkIG9mIHRoZSBhY2NvdW50IHRoYXQgaXMgcmVjZWl2aW5nIHRoaXMgdHJhbnNhY3Rpb25cbiAgICogQHJldHVybnMge1RyYW5zYWN0aW9uQnVpbGRlcn0gVGhpcyB0cmFuc2FjdGlvbiBidWlsZGVyXG4gICAqL1xuICBwdWJsaWMgcmVjZWl2ZXJJZChhY2NvdW50SWQ6IHN0cmluZyk6IHRoaXMge1xuICAgIGlmICghYWNjb3VudElkIHx8ICF1dGlscy5pc1ZhbGlkQWRkcmVzcyhhY2NvdW50SWQpKSB7XG4gICAgICB0aHJvdyBuZXcgQnVpbGRUcmFuc2FjdGlvbkVycm9yKCdJbnZhbGlkIG9yIG1pc3NpbmcgYWNjb3VudElkIGZvciByZWNlaXZlciwgZ290OiAnICsgYWNjb3VudElkKTtcbiAgICB9XG4gICAgdGhpcy5fcmVjZWl2ZXJJZCA9IGFjY291bnRJZDtcbiAgICByZXR1cm4gdGhpcztcbiAgfVxuXG4gIC8qKiBAaW5oZXJpdGRvYyAqL1xuICBnZXQgdHJhbnNhY3Rpb24oKTogVHJhbnNhY3Rpb24ge1xuICAgIHJldHVybiB0aGlzLl90cmFuc2FjdGlvbjtcbiAgfVxuXG4gIC8qKiBAaW5oZXJpdGRvYyAqL1xuICBzZXQgdHJhbnNhY3Rpb24odHJhbnNhY3Rpb246IFRyYW5zYWN0aW9uKSB7XG4gICAgdGhpcy5fdHJhbnNhY3Rpb24gPSB0cmFuc2FjdGlvbjtcbiAgfVxuXG4gIGdldCB0cmFuc2FjdGlvblR5cGUoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy5fdHJhbnNhY3Rpb24uaWNwVHJhbnNhY3Rpb25EYXRhLnRyYW5zYWN0aW9uVHlwZTtcbiAgfVxuXG4gIC8qKiBAaW5oZXJpdGRvYyAqL1xuICBmcm9tSW1wbGVtZW50YXRpb24ocmF3VHJhbnNhY3Rpb246IEljcFRyYW5zYWN0aW9uRGF0YSk6IFRyYW5zYWN0aW9uIHtcbiAgICB0aGlzLnZhbGlkYXRlUmF3VHJhbnNhY3Rpb24ocmF3VHJhbnNhY3Rpb24pO1xuICAgIHRoaXMuYnVpbGRJbXBsZW1lbnRhdGlvbigpO1xuICAgIHJldHVybiB0aGlzLnRyYW5zYWN0aW9uO1xuICB9XG5cbiAgLyoqIEBpbmhlcml0ZG9jICovXG4gIHZhbGlkYXRlVHJhbnNhY3Rpb24odHJhbnNhY3Rpb246IFRyYW5zYWN0aW9uKTogdm9pZCB7XG4gICAgaWYgKCF0cmFuc2FjdGlvbiB8fCAhdHJhbnNhY3Rpb24uaWNwVHJhbnNhY3Rpb25EYXRhKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIHV0aWxzLnZhbGlkYXRlUmF3VHJhbnNhY3Rpb24odHJhbnNhY3Rpb24uaWNwVHJhbnNhY3Rpb25EYXRhKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBTZXRzIHRoZSBhbW91bnQgb2YgdGhpcyB0cmFuc2FjdGlvbi5cbiAgICpcbiAgICogQHBhcmFtIHtzdHJpbmd9IHZhbHVlIHRoZSBhbW91bnQgdG8gYmUgc2VudCBpbiBlOHMgKDEgSUNQID0gMWU4IGU4cylcbiAgICogQHJldHVybnMge1RyYW5zYWN0aW9uQnVpbGRlcn0gVGhpcyB0cmFuc2FjdGlvbiBidWlsZGVyXG4gICAqL1xuICBwdWJsaWMgYW1vdW50KHZhbHVlOiBzdHJpbmcpOiB0aGlzIHtcbiAgICB1dGlscy52YWxpZGF0ZVZhbHVlKG5ldyBCaWdOdW1iZXIodmFsdWUpKTtcbiAgICB0aGlzLl9hbW91bnQgPSB2YWx1ZTtcbiAgICByZXR1cm4gdGhpcztcbiAgfVxuXG4gIHZhbGlkYXRlVmFsdWUodmFsdWU6IEJpZ051bWJlcik6IHZvaWQge1xuICAgIHV0aWxzLnZhbGlkYXRlVmFsdWUobmV3IEJpZ051bWJlcih2YWx1ZSkpO1xuICB9XG5cbiAgLyoqXG4gICAqIEluaXRpYWxpemUgdGhlIHRyYW5zYWN0aW9uIGJ1aWxkZXIgZmllbGRzIHVzaW5nIHRoZSBkZWNvZGVkIHRyYW5zYWN0aW9uIGRhdGFcbiAgICpcbiAgICogQHBhcmFtIHtUcmFuc2FjdGlvbn0gdHggdGhlIHRyYW5zYWN0aW9uIGRhdGFcbiAgICovXG4gIGluaXRCdWlsZGVyKHR4OiBUcmFuc2FjdGlvbik6IHZvaWQge1xuICAgIHRoaXMuX3RyYW5zYWN0aW9uID0gdHg7XG4gICAgY29uc3QgaWNwVHJhbnNhY3Rpb25EYXRhID0gdHguaWNwVHJhbnNhY3Rpb25EYXRhO1xuICAgIHRoaXMuX3NlbmRlciA9IGljcFRyYW5zYWN0aW9uRGF0YS5zZW5kZXJBZGRyZXNzO1xuICAgIHRoaXMuX21lbW8gPSBpY3BUcmFuc2FjdGlvbkRhdGEubWVtbztcbiAgICB0aGlzLl9yZWNlaXZlcklkID0gaWNwVHJhbnNhY3Rpb25EYXRhLnJlY2VpdmVyQWRkcmVzcztcbiAgICB0aGlzLl9wdWJsaWNLZXkgPSBpY3BUcmFuc2FjdGlvbkRhdGEuc2VuZGVyUHVibGljS2V5SGV4O1xuICAgIHRoaXMuX2Ftb3VudCA9IGljcFRyYW5zYWN0aW9uRGF0YS5hbW91bnQ7XG4gIH1cblxuICAvKiogQGluaGVyaXRkb2MgKi9cbiAgdmFsaWRhdGVLZXkoa2V5OiBCYXNlS2V5KTogdm9pZCB7XG4gICAgaWYgKCFrZXkgfHwgIWtleS5rZXkpIHtcbiAgICAgIHRocm93IG5ldyBTaWduaW5nRXJyb3IoJ0tleSBpcyByZXF1aXJlZCcpO1xuICAgIH1cbiAgICBpZiAoIXV0aWxzLmlzVmFsaWRQcml2YXRlS2V5KGtleS5rZXkpKSB7XG4gICAgICB0aHJvdyBuZXcgU2lnbmluZ0Vycm9yKCdJbnZhbGlkIHByaXZhdGUga2V5Jyk7XG4gICAgfVxuICB9XG5cbiAgdmFsaWRhdGVBZGRyZXNzKGFkZHJlc3M6IEJhc2VBZGRyZXNzKTogdm9pZCB7XG4gICAgaWYgKCF1dGlscy5pc1ZhbGlkQWRkcmVzcyhhZGRyZXNzLmFkZHJlc3MpKSB7XG4gICAgICB0aHJvdyBuZXcgQnVpbGRUcmFuc2FjdGlvbkVycm9yKCdJbnZhbGlkIGFkZHJlc3MnKTtcbiAgICB9XG4gIH1cblxuICB2YWxpZGF0ZVJhd1RyYW5zYWN0aW9uKHJhd1RyYW5zYWN0aW9uOiBJY3BUcmFuc2FjdGlvbkRhdGEpOiB2b2lkIHtcbiAgICB1dGlscy52YWxpZGF0ZVJhd1RyYW5zYWN0aW9uKHJhd1RyYW5zYWN0aW9uKTtcbiAgfVxufVxuIl19
@@ -1,24 +1,27 @@
1
1
  import { BaseTransactionBuilderFactory } from '@bitgo-beta/sdk-core';
2
2
  import { BaseCoin as CoinConfig } from '@bitgo-beta/statics';
3
+ import { Transaction } from './transaction';
4
+ import { TransactionBuilder } from './transactionBuilder';
5
+ import { TransferBuilder } from './transferBuilder';
3
6
  export declare class TransactionBuilderFactory extends BaseTransactionBuilderFactory {
4
7
  constructor(_coinConfig: Readonly<CoinConfig>);
5
8
  /** @inheritdoc */
6
- from(): void;
7
- /** @inheritdoc */
8
- getTransferBuilder(): void;
9
- /** @inheritdoc */
10
- getStakingBuilder(): void;
11
- /** @inheritdoc */
12
- getUnstakingBuilder(): void;
13
- /** @inheritdoc */
14
- getCustomTransactionBuilder(): void;
15
- /** @inheritdoc */
16
- getTokenTransferBuilder(): void;
9
+ from(rawTransaction: string): TransactionBuilder;
10
+ /**
11
+ * Initialize the builder with the given transaction
12
+ *
13
+ * @param {Transaction | undefined} tx - the transaction used to initialize the builder
14
+ * @param {TransactionBuilder} builder - the builder to be initialized
15
+ * @returns {TransactionBuilder} the builder initialized
16
+ */
17
+ private static initializeBuilder;
17
18
  /** @inheritdoc */
18
- getWalletInitializationBuilder(): void;
19
+ getTransferBuilder(tx?: Transaction): TransferBuilder;
19
20
  /**
20
21
  * Parse the transaction from a raw transaction
21
22
  */
22
23
  private parseTransaction;
24
+ /** @inheritdoc */
25
+ getWalletInitializationBuilder(): void;
23
26
  }
24
27
  //# sourceMappingURL=transactionBuilderFactory.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"transactionBuilderFactory.d.ts","sourceRoot":"","sources":["../../../src/lib/transactionBuilderFactory.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,6BAA6B,EAAE,MAAM,sBAAsB,CAAC;AACrE,OAAO,EAAE,QAAQ,IAAI,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAE7D,qBAAa,yBAA0B,SAAQ,6BAA6B;gBAC9D,WAAW,EAAE,QAAQ,CAAC,UAAU,CAAC;IAI7C,kBAAkB;IAClB,IAAI,IAAI,IAAI;IAIZ,kBAAkB;IAClB,kBAAkB,IAAI,IAAI;IAI1B,kBAAkB;IAClB,iBAAiB,IAAI,IAAI;IAIzB,kBAAkB;IAClB,mBAAmB,IAAI,IAAI;IAI3B,kBAAkB;IAClB,2BAA2B,IAAI,IAAI;IAInC,kBAAkB;IAClB,uBAAuB,IAAI,IAAI;IAI/B,kBAAkB;IAClB,8BAA8B,IAAI,IAAI;IAItC;;OAEG;IACH,OAAO,CAAC,gBAAgB;CAGzB"}
1
+ {"version":3,"file":"transactionBuilderFactory.d.ts","sourceRoot":"","sources":["../../../src/lib/transactionBuilderFactory.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,6BAA6B,EAA2B,MAAM,sBAAsB,CAAC;AAC9F,OAAO,EAAE,QAAQ,IAAI,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAC7D,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAIpD,qBAAa,yBAA0B,SAAQ,6BAA6B;gBAC9D,WAAW,EAAE,QAAQ,CAAC,UAAU,CAAC;IAI7C,kBAAkB;IAClB,IAAI,CAAC,cAAc,EAAE,MAAM,GAAG,kBAAkB;IAehD;;;;;;OAMG;IACH,OAAO,CAAC,MAAM,CAAC,iBAAiB;IAOhC,kBAAkB;IAClB,kBAAkB,CAAC,EAAE,CAAC,EAAE,WAAW,GAAG,eAAe;IAKrD;;OAEG;IACH,OAAO,CAAC,gBAAgB;IAIxB,kBAAkB;IAClB,8BAA8B,IAAI,IAAI;CAGvC"}