@bitgo/account-lib 2.19.0-rc.0 → 2.19.0-rc.11

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 (173) hide show
  1. package/.mocharc.js +10 -0
  2. package/DEVELOPER.md +1 -1
  3. package/dist/browser/bitgo-account-lib.js +1 -1
  4. package/dist/browser/bitgo-account-lib.js.LICENSE.txt +10 -17
  5. package/dist/package.json +12 -15
  6. package/dist/src/coin/algo/ifaces.d.ts +1 -0
  7. package/dist/src/coin/algo/ifaces.d.ts.map +1 -1
  8. package/dist/src/coin/algo/ifaces.js +1 -1
  9. package/dist/src/coin/algo/index.d.ts +2 -0
  10. package/dist/src/coin/algo/index.d.ts.map +1 -1
  11. package/dist/src/coin/algo/index.js +23 -2
  12. package/dist/src/coin/algo/keyRegistrationBuilder.d.ts +24 -5
  13. package/dist/src/coin/algo/keyRegistrationBuilder.d.ts.map +1 -1
  14. package/dist/src/coin/algo/keyRegistrationBuilder.js +100 -21
  15. package/dist/src/coin/algo/transaction.d.ts.map +1 -1
  16. package/dist/src/coin/algo/transaction.js +15 -6
  17. package/dist/src/coin/algo/txnSchema.d.ts.map +1 -1
  18. package/dist/src/coin/algo/txnSchema.js +2 -1
  19. package/dist/src/coin/algo/utils.d.ts +5 -0
  20. package/dist/src/coin/algo/utils.d.ts.map +1 -1
  21. package/dist/src/coin/algo/utils.js +19 -2
  22. package/dist/src/coin/avaxc/resources.js +3 -3
  23. package/dist/src/coin/avaxc/transactionBuilder.d.ts +1 -1
  24. package/dist/src/coin/avaxc/transactionBuilder.d.ts.map +1 -1
  25. package/dist/src/coin/avaxc/transactionBuilder.js +1 -1
  26. package/dist/src/coin/baseCoin/blsKeyPair.js +7 -7
  27. package/dist/src/coin/baseCoin/index.d.ts +1 -0
  28. package/dist/src/coin/baseCoin/index.d.ts.map +1 -1
  29. package/dist/src/coin/baseCoin/index.js +4 -2
  30. package/dist/src/coin/celo/stakingBuilder.d.ts +1 -1
  31. package/dist/src/coin/celo/stakingBuilder.d.ts.map +1 -1
  32. package/dist/src/coin/celo/stakingBuilder.js +1 -1
  33. package/dist/src/coin/celo/transactionBuilder.d.ts +1 -1
  34. package/dist/src/coin/celo/transactionBuilder.d.ts.map +1 -1
  35. package/dist/src/coin/celo/transactionBuilder.js +1 -1
  36. package/dist/src/coin/cspr/delegateBuilder.d.ts +1 -1
  37. package/dist/src/coin/cspr/delegateBuilder.d.ts.map +1 -1
  38. package/dist/src/coin/cspr/delegateBuilder.js +1 -1
  39. package/dist/src/coin/cspr/transaction.d.ts +1 -1
  40. package/dist/src/coin/cspr/transaction.d.ts.map +1 -1
  41. package/dist/src/coin/cspr/transaction.js +1 -1
  42. package/dist/src/coin/cspr/transactionBuilder.d.ts +1 -1
  43. package/dist/src/coin/cspr/transactionBuilder.d.ts.map +1 -1
  44. package/dist/src/coin/cspr/transactionBuilder.js +1 -1
  45. package/dist/src/coin/cspr/transactionBuilderFactory.d.ts +1 -1
  46. package/dist/src/coin/cspr/transactionBuilderFactory.d.ts.map +1 -1
  47. package/dist/src/coin/cspr/transactionBuilderFactory.js +1 -1
  48. package/dist/src/coin/cspr/transferBuilder.d.ts +1 -1
  49. package/dist/src/coin/cspr/transferBuilder.d.ts.map +1 -1
  50. package/dist/src/coin/cspr/transferBuilder.js +1 -1
  51. package/dist/src/coin/cspr/undelegateBuilder.d.ts +1 -1
  52. package/dist/src/coin/cspr/undelegateBuilder.d.ts.map +1 -1
  53. package/dist/src/coin/cspr/undelegateBuilder.js +1 -1
  54. package/dist/src/coin/cspr/walletInitializationBuilder.d.ts +1 -1
  55. package/dist/src/coin/cspr/walletInitializationBuilder.d.ts.map +1 -1
  56. package/dist/src/coin/cspr/walletInitializationBuilder.js +1 -1
  57. package/dist/src/coin/dot/batchTransactionBuilder.d.ts.map +1 -1
  58. package/dist/src/coin/dot/batchTransactionBuilder.js +1 -1
  59. package/dist/src/coin/dot/iface.d.ts +8 -2
  60. package/dist/src/coin/dot/iface.d.ts.map +1 -1
  61. package/dist/src/coin/dot/iface.js +2 -1
  62. package/dist/src/coin/dot/index.d.ts +2 -0
  63. package/dist/src/coin/dot/index.d.ts.map +1 -1
  64. package/dist/src/coin/dot/index.js +6 -2
  65. package/dist/src/coin/dot/keyPair.d.ts.map +1 -1
  66. package/dist/src/coin/dot/keyPair.js +4 -2
  67. package/dist/src/coin/dot/singletonRegistry.d.ts +7 -0
  68. package/dist/src/coin/dot/singletonRegistry.d.ts.map +1 -0
  69. package/dist/src/coin/dot/singletonRegistry.js +23 -0
  70. package/dist/src/coin/dot/transaction.d.ts +18 -2
  71. package/dist/src/coin/dot/transaction.d.ts.map +1 -1
  72. package/dist/src/coin/dot/transaction.js +66 -66
  73. package/dist/src/coin/dot/transactionBuilder.d.ts +6 -2
  74. package/dist/src/coin/dot/transactionBuilder.d.ts.map +1 -1
  75. package/dist/src/coin/dot/transactionBuilder.js +19 -8
  76. package/dist/src/coin/dot/transactionBuilderFactory.d.ts +2 -1
  77. package/dist/src/coin/dot/transactionBuilderFactory.d.ts.map +1 -1
  78. package/dist/src/coin/dot/transactionBuilderFactory.js +6 -7
  79. package/dist/src/coin/dot/transferBuilder.d.ts.map +1 -1
  80. package/dist/src/coin/dot/transferBuilder.js +4 -3
  81. package/dist/src/coin/dot/txnSchema.d.ts +1 -0
  82. package/dist/src/coin/dot/txnSchema.d.ts.map +1 -1
  83. package/dist/src/coin/dot/txnSchema.js +5 -2
  84. package/dist/src/coin/dot/utils.d.ts +19 -4
  85. package/dist/src/coin/dot/utils.d.ts.map +1 -1
  86. package/dist/src/coin/dot/utils.js +39 -11
  87. package/dist/src/coin/dot/withdrawUnstakedBuilder.d.ts +38 -0
  88. package/dist/src/coin/dot/withdrawUnstakedBuilder.d.ts.map +1 -0
  89. package/dist/src/coin/dot/withdrawUnstakedBuilder.js +112 -0
  90. package/dist/src/coin/etc/transactionBuilder.d.ts +1 -1
  91. package/dist/src/coin/etc/transactionBuilder.d.ts.map +1 -1
  92. package/dist/src/coin/etc/transactionBuilder.js +1 -1
  93. package/dist/src/coin/eth2/keyPair.js +2 -2
  94. package/dist/src/coin/hbar/transaction.d.ts +1 -1
  95. package/dist/src/coin/hbar/transaction.d.ts.map +1 -1
  96. package/dist/src/coin/hbar/transaction.js +1 -1
  97. package/dist/src/coin/hbar/transactionBuilder.d.ts +1 -1
  98. package/dist/src/coin/hbar/transactionBuilder.d.ts.map +1 -1
  99. package/dist/src/coin/hbar/transactionBuilder.js +1 -1
  100. package/dist/src/coin/hbar/transactionBuilderFactory.d.ts +1 -1
  101. package/dist/src/coin/hbar/transactionBuilderFactory.d.ts.map +1 -1
  102. package/dist/src/coin/hbar/transactionBuilderFactory.js +1 -1
  103. package/dist/src/coin/hbar/transferBuilder.d.ts +1 -1
  104. package/dist/src/coin/hbar/transferBuilder.d.ts.map +1 -1
  105. package/dist/src/coin/hbar/transferBuilder.js +1 -1
  106. package/dist/src/coin/hbar/walletInitializationBuilder.d.ts +1 -1
  107. package/dist/src/coin/hbar/walletInitializationBuilder.d.ts.map +1 -1
  108. package/dist/src/coin/hbar/walletInitializationBuilder.js +1 -1
  109. package/dist/src/coin/near/iface.d.ts +29 -0
  110. package/dist/src/coin/near/iface.d.ts.map +1 -0
  111. package/dist/src/coin/near/iface.js +8 -0
  112. package/dist/src/coin/near/index.d.ts +3 -0
  113. package/dist/src/coin/near/index.d.ts.map +1 -1
  114. package/dist/src/coin/near/index.js +8 -2
  115. package/dist/src/coin/near/keyPair.d.ts +7 -0
  116. package/dist/src/coin/near/keyPair.d.ts.map +1 -1
  117. package/dist/src/coin/near/keyPair.js +15 -1
  118. package/dist/src/coin/near/transaction.d.ts +57 -2
  119. package/dist/src/coin/near/transaction.d.ts.map +1 -1
  120. package/dist/src/coin/near/transaction.js +244 -6
  121. package/dist/src/coin/near/transactionBuilder.d.ts +64 -2
  122. package/dist/src/coin/near/transactionBuilder.d.ts.map +1 -1
  123. package/dist/src/coin/near/transactionBuilder.js +219 -8
  124. package/dist/src/coin/near/transactionBuilderFactory.d.ts +1 -1
  125. package/dist/src/coin/near/transactionBuilderFactory.d.ts.map +1 -1
  126. package/dist/src/coin/near/transactionBuilderFactory.js +17 -2
  127. package/dist/src/coin/near/transferBuilder.d.ts +14 -2
  128. package/dist/src/coin/near/transferBuilder.d.ts.map +1 -1
  129. package/dist/src/coin/near/transferBuilder.js +63 -8
  130. package/dist/src/coin/near/utils.d.ts +24 -1
  131. package/dist/src/coin/near/utils.d.ts.map +1 -1
  132. package/dist/src/coin/near/utils.js +42 -8
  133. package/dist/src/coin/near/walletInitializationBuilder.d.ts +0 -2
  134. package/dist/src/coin/near/walletInitializationBuilder.d.ts.map +1 -1
  135. package/dist/src/coin/near/walletInitializationBuilder.js +2 -6
  136. package/dist/src/coin/rbtc/transactionBuilder.d.ts +1 -1
  137. package/dist/src/coin/rbtc/transactionBuilder.d.ts.map +1 -1
  138. package/dist/src/coin/rbtc/transactionBuilder.js +1 -1
  139. package/dist/src/coin/sol/ataInitializationBuilder.d.ts +12 -1
  140. package/dist/src/coin/sol/ataInitializationBuilder.d.ts.map +1 -1
  141. package/dist/src/coin/sol/ataInitializationBuilder.js +37 -10
  142. package/dist/src/coin/sol/ataInitializationTransaction.d.ts +14 -0
  143. package/dist/src/coin/sol/ataInitializationTransaction.d.ts.map +1 -0
  144. package/dist/src/coin/sol/ataInitializationTransaction.js +104 -0
  145. package/dist/src/coin/sol/index.d.ts +3 -1
  146. package/dist/src/coin/sol/index.d.ts.map +1 -1
  147. package/dist/src/coin/sol/index.js +6 -2
  148. package/dist/src/coin/sol/tokenEncodeDecode.d.ts +85 -0
  149. package/dist/src/coin/sol/tokenEncodeDecode.d.ts.map +1 -0
  150. package/dist/src/coin/sol/tokenEncodeDecode.js +162 -0
  151. package/dist/src/coin/sol/transaction.d.ts +5 -2
  152. package/dist/src/coin/sol/transaction.d.ts.map +1 -1
  153. package/dist/src/coin/sol/transaction.js +13 -3
  154. package/dist/src/coin/sol/transactionBuilder.d.ts +1 -1
  155. package/dist/src/coin/sol/transactionBuilder.d.ts.map +1 -1
  156. package/dist/src/coin/sol/transactionBuilder.js +1 -1
  157. package/dist/src/coin/sol/transactionBuilderFactory.d.ts +3 -1
  158. package/dist/src/coin/sol/transactionBuilderFactory.d.ts.map +1 -1
  159. package/dist/src/coin/sol/transactionBuilderFactory.js +8 -3
  160. package/dist/src/coin/sol/utils.d.ts +9 -0
  161. package/dist/src/coin/sol/utils.d.ts.map +1 -1
  162. package/dist/src/coin/sol/utils.js +27 -2
  163. package/dist/src/index.d.ts +2 -0
  164. package/dist/src/index.d.ts.map +1 -1
  165. package/dist/src/index.js +7 -2
  166. package/dist/src/mpc/tss.d.ts +6 -6
  167. package/dist/src/mpc/tss.d.ts.map +1 -1
  168. package/dist/src/mpc/tss.js +3 -2
  169. package/dist/src/utils/crypto.d.ts +15 -0
  170. package/dist/src/utils/crypto.d.ts.map +1 -1
  171. package/dist/src/utils/crypto.js +33 -2
  172. package/dist/tsconfig.tsbuildinfo +1 -0
  173. package/package.json +12 -15
@@ -14,28 +14,266 @@ var __extends = (this && this.__extends) || (function () {
14
14
  d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
15
15
  };
16
16
  })();
17
+ var __assign = (this && this.__assign) || function () {
18
+ __assign = Object.assign || function(t) {
19
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
20
+ s = arguments[i];
21
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
22
+ t[p] = s[p];
23
+ }
24
+ return t;
25
+ };
26
+ return __assign.apply(this, arguments);
27
+ };
28
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
29
+ if (k2 === undefined) k2 = k;
30
+ Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
31
+ }) : (function(o, m, k, k2) {
32
+ if (k2 === undefined) k2 = k;
33
+ o[k2] = m[k];
34
+ }));
35
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
36
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
37
+ }) : function(o, v) {
38
+ o["default"] = v;
39
+ });
40
+ var __importStar = (this && this.__importStar) || function (mod) {
41
+ if (mod && mod.__esModule) return mod;
42
+ var result = {};
43
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
44
+ __setModuleDefault(result, mod);
45
+ return result;
46
+ };
47
+ var __importDefault = (this && this.__importDefault) || function (mod) {
48
+ return (mod && mod.__esModule) ? mod : { "default": mod };
49
+ };
17
50
  Object.defineProperty(exports, "__esModule", { value: true });
18
51
  exports.Transaction = void 0;
19
52
  var baseCoin_1 = require("../baseCoin");
20
53
  var errors_1 = require("../baseCoin/errors");
54
+ var utils_1 = __importDefault(require("./utils"));
55
+ var keyPair_1 = require("./keyPair");
56
+ var nearAPI = __importStar(require("near-api-js"));
57
+ var sha256 = __importStar(require("js-sha256"));
58
+ var bs58_1 = __importDefault(require("bs58"));
21
59
  var Transaction = /** @class */ (function (_super) {
22
60
  __extends(Transaction, _super);
23
- function Transaction() {
24
- return _super !== null && _super.apply(this, arguments) || this;
61
+ function Transaction(coinConfig) {
62
+ return _super.call(this, coinConfig) || this;
25
63
  }
64
+ Object.defineProperty(Transaction.prototype, "nearTransaction", {
65
+ get: function () {
66
+ return this._nearTransaction;
67
+ },
68
+ set: function (tx) {
69
+ this._nearTransaction = tx;
70
+ this._id = utils_1.default.base58Encode(this.getTransactionHash());
71
+ },
72
+ enumerable: false,
73
+ configurable: true
74
+ });
26
75
  /** @inheritdoc */
27
76
  Transaction.prototype.canSign = function (key) {
28
- throw new errors_1.NotImplementedError('canSign not implemented');
77
+ try {
78
+ new keyPair_1.KeyPair({ prv: key.key });
79
+ return true;
80
+ }
81
+ catch (_a) {
82
+ return false;
83
+ }
29
84
  };
30
85
  /** @inheritdoc */
31
86
  Transaction.prototype.toBroadcastFormat = function () {
32
- throw new errors_1.NotImplementedError('toBroadcastFormat not implemented');
87
+ if (!this._nearTransaction) {
88
+ throw new errors_1.InvalidTransactionError('Empty transaction data');
89
+ }
90
+ var txSeralized = this._nearSignedTransaction
91
+ ? nearAPI.utils.serialize.base_encode(this._nearSignedTransaction.encode())
92
+ : nearAPI.utils.serialize.base_encode(this._nearTransaction.encode());
93
+ return txSeralized;
33
94
  };
34
95
  /** @inheritdoc */
35
96
  Transaction.prototype.toJson = function () {
36
- throw new errors_1.NotImplementedError('toJson not implemented');
97
+ if (!this._nearTransaction) {
98
+ throw new errors_1.InvalidTransactionError('Empty transaction data');
99
+ }
100
+ return {
101
+ id: this._id,
102
+ signerId: this._nearTransaction.signerId,
103
+ publicKey: this._nearTransaction.publicKey.toString(),
104
+ nonce: this._nearTransaction.nonce,
105
+ receiverId: this._nearTransaction.receiverId,
106
+ actions: this._nearTransaction.actions,
107
+ signature: typeof this._nearSignedTransaction === 'undefined' ? undefined : this._nearSignedTransaction.signature,
108
+ };
109
+ };
110
+ /**
111
+ * Set the transaction type.
112
+ *
113
+ * @param {TransactionType} transactionType The transaction type to be set.
114
+ */
115
+ Transaction.prototype.setTransactionType = function (transactionType) {
116
+ this._type = transactionType;
117
+ };
118
+ /**
119
+ * Sets this transaction payload
120
+ *
121
+ * @param rawTransaction
122
+ */
123
+ Transaction.prototype.fromRawTransaction = function (rawTransaction) {
124
+ try {
125
+ var signedTx = nearAPI.utils.serialize.deserialize(nearAPI.transactions.SCHEMA, nearAPI.transactions.SignedTransaction, nearAPI.utils.serialize.base_decode(rawTransaction));
126
+ this._nearSignedTransaction = signedTx;
127
+ this._nearTransaction = signedTx.transaction;
128
+ this._id = utils_1.default.base58Encode(this.getTransactionHash());
129
+ }
130
+ catch (e) {
131
+ try {
132
+ this._nearTransaction = nearAPI.utils.serialize.deserialize(nearAPI.transactions.SCHEMA, nearAPI.transactions.Transaction, nearAPI.utils.serialize.base_decode(rawTransaction));
133
+ this._id = utils_1.default.base58Encode(this.getTransactionHash());
134
+ }
135
+ catch (e) {
136
+ throw new errors_1.InvalidTransactionError('unable to build transaction from raw');
137
+ }
138
+ }
139
+ this.loadInputsAndOutputs();
140
+ };
141
+ /**
142
+ * Sign this transaction
143
+ *
144
+ * @param {KeyPair} signer key
145
+ */
146
+ Transaction.prototype.sign = function (signer) {
147
+ if (!this._nearTransaction) {
148
+ throw new errors_1.InvalidTransactionError('empty transaction to sign');
149
+ }
150
+ var serializedTxHash = this.getTransactionHash();
151
+ var signature = signer.signMessageinUint8Array(serializedTxHash);
152
+ this._nearSignedTransaction = new nearAPI.transactions.SignedTransaction({
153
+ transaction: this._nearTransaction,
154
+ signature: new nearAPI.transactions.Signature({
155
+ keyType: this._nearTransaction.publicKey.keyType,
156
+ data: signature,
157
+ }),
158
+ });
159
+ this.loadInputsAndOutputs();
160
+ };
161
+ /**
162
+ * Build input and output field for this transaction
163
+ *
164
+ */
165
+ Transaction.prototype.loadInputsAndOutputs = function () {
166
+ if (this._nearTransaction.actions.length != 1) {
167
+ throw new errors_1.InvalidTransactionError('too many actions in raw transaction');
168
+ }
169
+ if (this._nearTransaction.actions[0].enum === 'transfer') {
170
+ this.setTransactionType(baseCoin_1.TransactionType.Send);
171
+ }
172
+ else {
173
+ throw new errors_1.InvalidTransactionError('unsupported action in raw transaction');
174
+ }
175
+ var outputs = [];
176
+ var inputs = [];
177
+ switch (this.type) {
178
+ case baseCoin_1.TransactionType.Send:
179
+ var amount = nearAPI.utils.format.formatNearAmount(this._nearTransaction.actions[0].transfer.deposit.toString());
180
+ inputs.push({
181
+ address: this._nearTransaction.signerId,
182
+ value: amount,
183
+ coin: this._coinConfig.name,
184
+ });
185
+ outputs.push({
186
+ address: this._nearTransaction.receiverId,
187
+ value: amount,
188
+ coin: this._coinConfig.name,
189
+ });
190
+ break;
191
+ }
192
+ this._outputs = outputs;
193
+ this._inputs = inputs;
194
+ };
195
+ /**
196
+ * Returns a complete explanation for a transfer transaction
197
+ * @param {TxData} json The transaction data in json format
198
+ * @param {TransactionExplanation} explanationResult The transaction explanation to be completed
199
+ * @returns {TransactionExplanation}
200
+ */
201
+ Transaction.prototype.explainTransferTransaction = function (json, explanationResult) {
202
+ return __assign(__assign({}, explanationResult), { outputs: [
203
+ {
204
+ address: json.receiverId,
205
+ amount: json.actions[0].transfer.deposit.toString(),
206
+ },
207
+ ] });
208
+ };
209
+ /** @inheritdoc */
210
+ Transaction.prototype.explainTransaction = function () {
211
+ var result = this.toJson();
212
+ var displayOrder = ['outputAmount', 'changeAmount', 'outputs', 'changeOutputs', 'fee', 'type'];
213
+ var outputs = [];
214
+ var explanationResult = {
215
+ // txhash used to identify the transactions
216
+ id: result.id || '',
217
+ displayOrder: displayOrder,
218
+ outputAmount: result.actions[0].transfer.deposit.toString(),
219
+ changeAmount: '0',
220
+ changeOutputs: [],
221
+ outputs: outputs,
222
+ fee: { fee: '' },
223
+ type: this.type,
224
+ };
225
+ switch (this.type) {
226
+ case baseCoin_1.TransactionType.Send:
227
+ return this.explainTransferTransaction(result, explanationResult);
228
+ default:
229
+ throw new errors_1.InvalidTransactionError('Transaction type not supported');
230
+ }
231
+ };
232
+ Transaction.prototype.getTransactionHash = function () {
233
+ var serializedTx = nearAPI.utils.serialize.serialize(nearAPI.transactions.SCHEMA, this._nearTransaction);
234
+ return new Uint8Array(sha256.sha256.array(serializedTx));
235
+ };
236
+ Object.defineProperty(Transaction.prototype, "signablePayload", {
237
+ get: function () {
238
+ if (!this._nearTransaction) {
239
+ throw new errors_1.InvalidTransactionError('empty transaction');
240
+ }
241
+ return Buffer.from(nearAPI.utils.serialize.serialize(nearAPI.transactions.SCHEMA, this._nearTransaction));
242
+ },
243
+ enumerable: false,
244
+ configurable: true
245
+ });
246
+ /**
247
+ * Constructs a signed payload using construct.signTx
248
+ * This method will be called during the build step if a TSS signature
249
+ * is added and will set the signTransaction which is the txHex that will be broadcasted
250
+ * As well as add the signature used to sign to the signature array in hex format
251
+ *
252
+ * @param {Buffer} signature The signature to be added to a dot transaction
253
+ */
254
+ Transaction.prototype.constructSignedPayload = function (signature) {
255
+ this._nearSignedTransaction = new nearAPI.transactions.SignedTransaction({
256
+ transaction: this._nearTransaction,
257
+ signature: new nearAPI.transactions.Signature({
258
+ keyType: this._nearTransaction.publicKey.keyType,
259
+ data: signature,
260
+ }),
261
+ });
262
+ this.loadInputsAndOutputs();
37
263
  };
264
+ Object.defineProperty(Transaction.prototype, "signature", {
265
+ /** @inheritdoc **/
266
+ get: function () {
267
+ var signatures = [];
268
+ if (this._nearSignedTransaction) {
269
+ signatures.push(bs58_1.default.encode(this._nearSignedTransaction.signature.data));
270
+ }
271
+ return signatures;
272
+ },
273
+ enumerable: false,
274
+ configurable: true
275
+ });
38
276
  return Transaction;
39
277
  }(baseCoin_1.BaseTransaction));
40
278
  exports.Transaction = Transaction;
41
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNhY3Rpb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvY29pbi9uZWFyL3RyYW5zYWN0aW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLHdDQUE4QztBQUU5Qyw2Q0FBeUQ7QUFFekQ7SUFBaUMsK0JBQWU7SUFBaEQ7O0lBZUEsQ0FBQztJQWRDLGtCQUFrQjtJQUNsQiw2QkFBTyxHQUFQLFVBQVEsR0FBWTtRQUNsQixNQUFNLElBQUksNEJBQW1CLENBQUMseUJBQXlCLENBQUMsQ0FBQztJQUMzRCxDQUFDO0lBRUQsa0JBQWtCO0lBQ2xCLHVDQUFpQixHQUFqQjtRQUNFLE1BQU0sSUFBSSw0QkFBbUIsQ0FBQyxtQ0FBbUMsQ0FBQyxDQUFDO0lBQ3JFLENBQUM7SUFFRCxrQkFBa0I7SUFDbEIsNEJBQU0sR0FBTjtRQUNFLE1BQU0sSUFBSSw0QkFBbUIsQ0FBQyx3QkFBd0IsQ0FBQyxDQUFDO0lBQzFELENBQUM7SUFDSCxrQkFBQztBQUFELENBQUMsQUFmRCxDQUFpQywwQkFBZSxHQWUvQztBQWZZLGtDQUFXIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQmFzZVRyYW5zYWN0aW9uIH0gZnJvbSAnLi4vYmFzZUNvaW4nO1xuaW1wb3J0IHsgQmFzZUtleSB9IGZyb20gJy4uL2Jhc2VDb2luL2lmYWNlJztcbmltcG9ydCB7IE5vdEltcGxlbWVudGVkRXJyb3IgfSBmcm9tICcuLi9iYXNlQ29pbi9lcnJvcnMnO1xuXG5leHBvcnQgY2xhc3MgVHJhbnNhY3Rpb24gZXh0ZW5kcyBCYXNlVHJhbnNhY3Rpb24ge1xuICAvKiogQGluaGVyaXRkb2MgKi9cbiAgY2FuU2lnbihrZXk6IEJhc2VLZXkpOiBib29sZWFuIHtcbiAgICB0aHJvdyBuZXcgTm90SW1wbGVtZW50ZWRFcnJvcignY2FuU2lnbiBub3QgaW1wbGVtZW50ZWQnKTtcbiAgfVxuXG4gIC8qKiBAaW5oZXJpdGRvYyAqL1xuICB0b0Jyb2FkY2FzdEZvcm1hdCgpOiBzdHJpbmcge1xuICAgIHRocm93IG5ldyBOb3RJbXBsZW1lbnRlZEVycm9yKCd0b0Jyb2FkY2FzdEZvcm1hdCBub3QgaW1wbGVtZW50ZWQnKTtcbiAgfVxuXG4gIC8qKiBAaW5oZXJpdGRvYyAqL1xuICB0b0pzb24oKTogYW55IHtcbiAgICB0aHJvdyBuZXcgTm90SW1wbGVtZW50ZWRFcnJvcigndG9Kc29uIG5vdCBpbXBsZW1lbnRlZCcpO1xuICB9XG59XG4iXX0=
279
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNhY3Rpb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvY29pbi9uZWFyL3RyYW5zYWN0aW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLHdDQUErRDtBQUUvRCw2Q0FBNkQ7QUFHN0Qsa0RBQTRCO0FBQzVCLHFDQUFvQztBQUNwQyxtREFBdUM7QUFDdkMsZ0RBQW9DO0FBQ3BDLDhDQUEwQjtBQUUxQjtJQUFpQywrQkFBZTtJQUk5QyxxQkFBWSxVQUFnQztlQUMxQyxrQkFBTSxVQUFVLENBQUM7SUFDbkIsQ0FBQztJQUVELHNCQUFJLHdDQUFlO2FBQW5CO1lBQ0UsT0FBTyxJQUFJLENBQUMsZ0JBQWdCLENBQUM7UUFDL0IsQ0FBQzthQUVELFVBQW9CLEVBQW9DO1lBQ3RELElBQUksQ0FBQyxnQkFBZ0IsR0FBRyxFQUFFLENBQUM7WUFDM0IsSUFBSSxDQUFDLEdBQUcsR0FBRyxlQUFLLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxrQkFBa0IsRUFBRSxDQUFDLENBQUM7UUFDM0QsQ0FBQzs7O09BTEE7SUFPRCxrQkFBa0I7SUFDbEIsNkJBQU8sR0FBUCxVQUFRLEdBQVk7UUFDbEIsSUFBSTtZQUNGLElBQUksaUJBQU8sQ0FBQyxFQUFFLEdBQUcsRUFBRSxHQUFHLENBQUMsR0FBRyxFQUFFLENBQUMsQ0FBQztZQUM5QixPQUFPLElBQUksQ0FBQztTQUNiO1FBQUMsV0FBTTtZQUNOLE9BQU8sS0FBSyxDQUFDO1NBQ2Q7SUFDSCxDQUFDO0lBRUQsa0JBQWtCO0lBQ2xCLHVDQUFpQixHQUFqQjtRQUNFLElBQUksQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLEVBQUU7WUFDMUIsTUFBTSxJQUFJLGdDQUF1QixDQUFDLHdCQUF3QixDQUFDLENBQUM7U0FDN0Q7UUFDRCxJQUFNLFdBQVcsR0FBRyxJQUFJLENBQUMsc0JBQXNC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TyxDQUFDLEtBQUssQ0FBQyxTQUFTLENBQUMsU0FBUyxDQUFDLE9BQU8sQ0FBQyxZQUFZLENBQUMsTUFBTSxFQUFFLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDLENBQUM7UUFDNUcsQ0FBQzs7O09BQUE7SUFFRDs7Ozs7OztPQU9HO0lBQ0gsNENBQXNCLEdBQXRCLFVBQXVCLFNBQWlCO1FBQ3RDLElBQUksQ0FBQyxzQkFBc0IsR0FBRyxJQUFJLE9BQU8sQ0FBQyxZQUFZLENBQUMsaUJBQWlCLENBQUM7WUFDdkUsV0FBVyxFQUFFLElBQUksQ0FBQyxnQkFBZ0I7WUFDbEMsU0FBUyxFQUFFLElBQUksT0FBTyxDQUFDLFlBQVksQ0FBQyxTQUFTLENBQUM7Z0JBQzVDLE9BQU8sRUFBRSxJQUFJLENBQUMsZ0JBQWdCLENBQUMsU0FBUyxDQUFDLE9BQU87Z0JBQ2hELElBQUksRUFBRSxTQUFTO2FBQ2hCLENBQUM7U0FDSCxDQUFDLENBQUM7UUFDSCxJQUFJLENBQUMsb0JBQW9CLEVBQUUsQ0FBQztJQUM5QixDQUFDO0lBRUQsc0JBQUksa0NBQVM7UUFEYixtQkFBbUI7YUFDbkI7WUFDRSxJQUFNLFVBQVUsR0FBYSxFQUFFLENBQUM7WUFFaEMsSUFBSSxJQUFJLENBQUMsc0JBQXNCLEVBQUU7Z0JBQy9CLFVBQVUsQ0FBQyxJQUFJLENBQUMsY0FBTSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsc0JBQXNCLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUM7YUFDNUU7WUFFRCxPQUFPLFVBQVUsQ0FBQztRQUNwQixDQUFDOzs7T0FBQTtJQUNILGtCQUFDO0FBQUQsQ0FBQyxBQS9PRCxDQUFpQywwQkFBZSxHQStPL0M7QUEvT1ksa0NBQVciLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBCYXNlVHJhbnNhY3Rpb24sIFRyYW5zYWN0aW9uVHlwZSB9IGZyb20gJy4uL2Jhc2VDb2luJztcbmltcG9ydCB7IEJhc2VLZXksIEVudHJ5LCBUcmFuc2FjdGlvblJlY2lwaWVudCB9IGZyb20gJy4uL2Jhc2VDb2luL2lmYWNlJztcbmltcG9ydCB7IEludmFsaWRUcmFuc2FjdGlvbkVycm9yIH0gZnJvbSAnLi4vYmFzZUNvaW4vZXJyb3JzJztcbmltcG9ydCB7IEJhc2VDb2luIGFzIENvaW5Db25maWcgfSBmcm9tICdAYml0Z28vc3RhdGljcyc7XG5pbXBvcnQgeyBUcmFuc2FjdGlvbkV4cGxhbmF0aW9uLCBUeERhdGEgfSBmcm9tICcuL2lmYWNlJztcbmltcG9ydCB1dGlscyBmcm9tICcuL3V0aWxzJztcbmltcG9ydCB7IEtleVBhaXIgfSBmcm9tICcuL2tleVBhaXInO1xuaW1wb3J0ICogYXMgbmVhckFQSSBmcm9tICduZWFyLWFwaS1qcyc7XG5pbXBvcnQgKiBhcyBzaGEyNTYgZnJvbSAnanMtc2hhMjU2JztcbmltcG9ydCBiYXNlNTggZnJvbSAnYnM1OCc7XG5cbmV4cG9ydCBjbGFzcyBUcmFuc2FjdGlvbiBleHRlbmRzIEJhc2VUcmFuc2FjdGlvbiB7XG4gIHByaXZhdGUgX25lYXJUcmFuc2FjdGlvbjogbmVhckFQSS50cmFuc2FjdGlvbnMuVHJhbnNhY3Rpb247XG4gIHByaXZhdGUgX25lYXJTaWduZWRUcmFuc2FjdGlvbjogbmVhckFQSS50cmFuc2FjdGlvbnMuU2lnbmVkVHJhbnNhY3Rpb247XG5cbiAgY29uc3RydWN0b3IoY29pbkNvbmZpZzogUmVhZG9ubHk8Q29pbkNvbmZpZz4pIHtcbiAgICBzdXBlcihjb2luQ29uZmlnKTtcbiAgfVxuXG4gIGdldCBuZWFyVHJhbnNhY3Rpb24oKTogbmVhckFQSS50cmFuc2FjdGlvbnMuVHJhbnNhY3Rpb24ge1xuICAgIHJldHVybiB0aGlzLl9uZWFyVHJhbnNhY3Rpb247XG4gIH1cblxuICBzZXQgbmVhclRyYW5zYWN0aW9uKHR4OiBuZWFyQVBJLnRyYW5zYWN0aW9ucy5UcmFuc2FjdGlvbikge1xuICAgIHRoaXMuX25lYXJUcmFuc2FjdGlvbiA9IHR4O1xuICAgIHRoaXMuX2lkID0gdXRpbHMuYmFzZTU4RW5jb2RlKHRoaXMuZ2V0VHJhbnNhY3Rpb25IYXNoKCkpO1xuICB9XG5cbiAgLyoqIEBpbmhlcml0ZG9jICovXG4gIGNhblNpZ24oa2V5OiBCYXNlS2V5KTogYm9vbGVhbiB7XG4gICAgdHJ5IHtcbiAgICAgIG5ldyBLZXlQYWlyKHsgcHJ2OiBrZXkua2V5IH0pO1xuICAgICAgcmV0dXJuIHRydWU7XG4gICAgfSBjYXRjaCB7XG4gICAgICByZXR1cm4gZmFsc2U7XG4gICAgfVxuICB9XG5cbiAgLyoqIEBpbmhlcml0ZG9jICovXG4gIHRvQnJvYWRjYXN0Rm9ybWF0KCk6IHN0cmluZyB7XG4gICAgaWYgKCF0aGlzLl9uZWFyVHJhbnNhY3Rpb24pIHtcbiAgICAgIHRocm93IG5ldyBJbnZhbGlkVHJhbnNhY3Rpb25FcnJvcignRW1wdHkgdHJhbnNhY3Rpb24gZGF0YScpO1xuICAgIH1cbiAgICBjb25zdCB0eFNlcmFsaXplZCA9IHRoaXMuX25lYXJTaWduZWRUcmFuc2FjdGlvblxuICAgICAgPyBuZWFyQVBJLnV0aWxzLnNlcmlhbGl6ZS5iYXNlX2VuY29kZSh0aGlzLl9uZWFyU2lnbmVkVHJhbnNhY3Rpb24uZW5jb2RlKCkpXG4gICAgICA6IG5lYXJBUEkudXRpbHMuc2VyaWFsaXplLmJhc2VfZW5jb2RlKHRoaXMuX25lYXJUcmFuc2FjdGlvbi5lbmNvZGUoKSk7XG4gICAgcmV0dXJuIHR4U2VyYWxpemVkO1xuICB9XG5cbiAgLyoqIEBpbmhlcml0ZG9jICovXG4gIHRvSnNvbigpOiBUeERhdGEge1xuICAgIGlmICghdGhpcy5fbmVhclRyYW5zYWN0aW9uKSB7XG4gICAgICB0aHJvdyBuZXcgSW52YWxpZFRyYW5zYWN0aW9uRXJyb3IoJ0VtcHR5IHRyYW5zYWN0aW9uIGRhdGEnKTtcbiAgICB9XG5cbiAgICByZXR1cm4ge1xuICAgICAgaWQ6IHRoaXMuX2lkLFxuICAgICAgc2lnbmVySWQ6IHRoaXMuX25lYXJUcmFuc2FjdGlvbi5zaWduZXJJZCxcbiAgICAgIHB1YmxpY0tleTogdGhpcy5fbmVhclRyYW5zYWN0aW9uLnB1YmxpY0tleS50b1N0cmluZygpLFxuICAgICAgbm9uY2U6IHRoaXMuX25lYXJUcmFuc2FjdGlvbi5ub25jZSxcbiAgICAgIHJlY2VpdmVySWQ6IHRoaXMuX25lYXJUcmFuc2FjdGlvbi5yZWNlaXZlcklkLFxuICAgICAgYWN0aW9uczogdGhpcy5fbmVhclRyYW5zYWN0aW9uLmFjdGlvbnMsXG4gICAgICBzaWduYXR1cmU6IHR5cGVvZiB0aGlzLl9uZWFyU2lnbmVkVHJhbnNhY3Rpb24gPT09ICd1bmRlZmluZWQnID8gdW5kZWZpbmVkIDogdGhpcy5fbmVhclNpZ25lZFRyYW5zYWN0aW9uLnNpZ25hdHVyZSxcbiAgICB9O1xuICB9XG5cbiAgLyoqXG4gICAqIFNldCB0aGUgdHJhbnNhY3Rpb24gdHlwZS5cbiAgICpcbiAgICogQHBhcmFtIHtUcmFuc2FjdGlvblR5cGV9IHRyYW5zYWN0aW9uVHlwZSBUaGUgdHJhbnNhY3Rpb24gdHlwZSB0byBiZSBzZXQuXG4gICAqL1xuICBzZXRUcmFuc2FjdGlvblR5cGUodHJhbnNhY3Rpb25UeXBlOiBUcmFuc2FjdGlvblR5cGUpOiB2b2lkIHtcbiAgICB0aGlzLl90eXBlID0gdHJhbnNhY3Rpb25UeXBlO1xuICB9XG5cbiAgLyoqXG4gICAqIFNldHMgdGhpcyB0cmFuc2FjdGlvbiBwYXlsb2FkXG4gICAqXG4gICAqIEBwYXJhbSByYXdUcmFuc2FjdGlvblxuICAgKi9cbiAgZnJvbVJhd1RyYW5zYWN0aW9uKHJhd1RyYW5zYWN0aW9uOiBzdHJpbmcpOiB2b2lkIHtcbiAgICB0cnkge1xuICAgICAgY29uc3Qgc2lnbmVkVHggPSBuZWFyQVBJLnV0aWxzLnNlcmlhbGl6ZS5kZXNlcmlhbGl6ZShcbiAgICAgICAgbmVhckFQSS50cmFuc2FjdGlvbnMuU0NIRU1BLFxuICAgICAgICBuZWFyQVBJLnRyYW5zYWN0aW9ucy5TaWduZWRUcmFuc2FjdGlvbixcbiAgICAgICAgbmVhckFQSS51dGlscy5zZXJpYWxpemUuYmFzZV9kZWNvZGUocmF3VHJhbnNhY3Rpb24pLFxuICAgICAgKTtcbiAgICAgIHRoaXMuX25lYXJTaWduZWRUcmFuc2FjdGlvbiA9IHNpZ25lZFR4O1xuICAgICAgdGhpcy5fbmVhclRyYW5zYWN0aW9uID0gc2lnbmVkVHgudHJhbnNhY3Rpb247XG4gICAgICB0aGlzLl9pZCA9IHV0aWxzLmJhc2U1OEVuY29kZSh0aGlzLmdldFRyYW5zYWN0aW9uSGFzaCgpKTtcbiAgICB9IGNhdGNoIChlKSB7XG4gICAgICB0cnkge1xuICAgICAgICB0aGlzLl9uZWFyVHJhbnNhY3Rpb24gPSBuZWFyQVBJLnV0aWxzLnNlcmlhbGl6ZS5kZXNlcmlhbGl6ZShcbiAgICAgICAgICBuZWFyQVBJLnRyYW5zYWN0aW9ucy5TQ0hFTUEsXG4gICAgICAgICAgbmVhckFQSS50cmFuc2FjdGlvbnMuVHJhbnNhY3Rpb24sXG4gICAgICAgICAgbmVhckFQSS51dGlscy5zZXJpYWxpemUuYmFzZV9kZWNvZGUocmF3VHJhbnNhY3Rpb24pLFxuICAgICAgICApO1xuICAgICAgICB0aGlzLl9pZCA9IHV0aWxzLmJhc2U1OEVuY29kZSh0aGlzLmdldFRyYW5zYWN0aW9uSGFzaCgpKTtcbiAgICAgIH0gY2F0Y2ggKGUpIHtcbiAgICAgICAgdGhyb3cgbmV3IEludmFsaWRUcmFuc2FjdGlvbkVycm9yKCd1bmFibGUgdG8gYnVpbGQgdHJhbnNhY3Rpb24gZnJvbSByYXcnKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICB0aGlzLmxvYWRJbnB1dHNBbmRPdXRwdXRzKCk7XG4gIH1cblxuICAvKipcbiAgICogU2lnbiB0aGlzIHRyYW5zYWN0aW9uXG4gICAqXG4gICAqIEBwYXJhbSB7S2V5UGFpcn0gc2lnbmVyIGtleVxuICAgKi9cblxuICBzaWduKHNpZ25lcjogS2V5UGFpcik6IHZvaWQge1xuICAgIGlmICghdGhpcy5fbmVhclRyYW5zYWN0aW9uKSB7XG4gICAgICB0aHJvdyBuZXcgSW52YWxpZFRyYW5zYWN0aW9uRXJyb3IoJ2VtcHR5IHRyYW5zYWN0aW9uIHRvIHNpZ24nKTtcbiAgICB9XG4gICAgY29uc3Qgc2VyaWFsaXplZFR4SGFzaCA9IHRoaXMuZ2V0VHJhbnNhY3Rpb25IYXNoKCk7XG4gICAgY29uc3Qgc2lnbmF0dXJlID0gc2lnbmVyLnNpZ25NZXNzYWdlaW5VaW50OEFycmF5KHNlcmlhbGl6ZWRUeEhhc2gpO1xuICAgIHRoaXMuX25lYXJTaWduZWRUcmFuc2FjdGlvbiA9IG5ldyBuZWFyQVBJLnRyYW5zYWN0aW9ucy5TaWduZWRUcmFuc2FjdGlvbih7XG4gICAgICB0cmFuc2FjdGlvbjogdGhpcy5fbmVhclRyYW5zYWN0aW9uLFxuICAgICAgc2lnbmF0dXJlOiBuZXcgbmVhckFQSS50cmFuc2FjdGlvbnMuU2lnbmF0dXJlKHtcbiAgICAgICAga2V5VHlwZTogdGhpcy5fbmVhclRyYW5zYWN0aW9uLnB1YmxpY0tleS5rZXlUeXBlLFxuICAgICAgICBkYXRhOiBzaWduYXR1cmUsXG4gICAgICB9KSxcbiAgICB9KTtcbiAgICB0aGlzLmxvYWRJbnB1dHNBbmRPdXRwdXRzKCk7XG4gIH1cblxuICAvKipcbiAgICogQnVpbGQgaW5wdXQgYW5kIG91dHB1dCBmaWVsZCBmb3IgdGhpcyB0cmFuc2FjdGlvblxuICAgKlxuICAgKi9cblxuICBsb2FkSW5wdXRzQW5kT3V0cHV0cygpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5fbmVhclRyYW5zYWN0aW9uLmFjdGlvbnMubGVuZ3RoICE9IDEpIHtcbiAgICAgIHRocm93IG5ldyBJbnZhbGlkVHJhbnNhY3Rpb25FcnJvcigndG9vIG1hbnkgYWN0aW9ucyBpbiByYXcgdHJhbnNhY3Rpb24nKTtcbiAgICB9XG5cbiAgICBpZiAodGhpcy5fbmVhclRyYW5zYWN0aW9uLmFjdGlvbnNbMF0uZW51bSA9PT0gJ3RyYW5zZmVyJykge1xuICAgICAgdGhpcy5zZXRUcmFuc2FjdGlvblR5cGUoVHJhbnNhY3Rpb25UeXBlLlNlbmQpO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aHJvdyBuZXcgSW52YWxpZFRyYW5zYWN0aW9uRXJyb3IoJ3Vuc3VwcG9ydGVkIGFjdGlvbiBpbiByYXcgdHJhbnNhY3Rpb24nKTtcbiAgICB9XG5cbiAgICBjb25zdCBvdXRwdXRzOiBFbnRyeVtdID0gW107XG4gICAgY29uc3QgaW5wdXRzOiBFbnRyeVtdID0gW107XG4gICAgc3dpdGNoICh0aGlzLnR5cGUpIHtcbiAgICAgIGNhc2UgVHJhbnNhY3Rpb25UeXBlLlNlbmQ6XG4gICAgICAgIGNvbnN0IGFtb3VudCA9IG5lYXJBUEkudXRpbHMuZm9ybWF0LmZvcm1hdE5lYXJBbW91bnQoXG4gICAgICAgICAgdGhpcy5fbmVhclRyYW5zYWN0aW9uLmFjdGlvbnNbMF0udHJhbnNmZXIuZGVwb3NpdC50b1N0cmluZygpLFxuICAgICAgICApO1xuXG4gICAgICAgIGlucHV0cy5wdXNoKHtcbiAgICAgICAgICBhZGRyZXNzOiB0aGlzLl9uZWFyVHJhbnNhY3Rpb24uc2lnbmVySWQsXG4gICAgICAgICAgdmFsdWU6IGFtb3VudCxcbiAgICAgICAgICBjb2luOiB0aGlzLl9jb2luQ29uZmlnLm5hbWUsXG4gICAgICAgIH0pO1xuICAgICAgICBvdXRwdXRzLnB1c2goe1xuICAgICAgICAgIGFkZHJlc3M6IHRoaXMuX25lYXJUcmFuc2FjdGlvbi5yZWNlaXZlcklkLFxuICAgICAgICAgIHZhbHVlOiBhbW91bnQsXG4gICAgICAgICAgY29pbjogdGhpcy5fY29pbkNvbmZpZy5uYW1lLFxuICAgICAgICB9KTtcbiAgICAgICAgYnJlYWs7XG4gICAgfVxuICAgIHRoaXMuX291dHB1dHMgPSBvdXRwdXRzO1xuICAgIHRoaXMuX2lucHV0cyA9IGlucHV0cztcbiAgfVxuXG4gIC8qKlxuICAgKiBSZXR1cm5zIGEgY29tcGxldGUgZXhwbGFuYXRpb24gZm9yIGEgdHJhbnNmZXIgdHJhbnNhY3Rpb25cbiAgICogQHBhcmFtIHtUeERhdGF9IGpzb24gVGhlIHRyYW5zYWN0aW9uIGRhdGEgaW4ganNvbiBmb3JtYXRcbiAgICogQHBhcmFtIHtUcmFuc2FjdGlvbkV4cGxhbmF0aW9ufSBleHBsYW5hdGlvblJlc3VsdCBUaGUgdHJhbnNhY3Rpb24gZXhwbGFuYXRpb24gdG8gYmUgY29tcGxldGVkXG4gICAqIEByZXR1cm5zIHtUcmFuc2FjdGlvbkV4cGxhbmF0aW9ufVxuICAgKi9cbiAgZXhwbGFpblRyYW5zZmVyVHJhbnNhY3Rpb24oanNvbjogVHhEYXRhLCBleHBsYW5hdGlvblJlc3VsdDogVHJhbnNhY3Rpb25FeHBsYW5hdGlvbik6IFRyYW5zYWN0aW9uRXhwbGFuYXRpb24ge1xuICAgIHJldHVybiB7XG4gICAgICAuLi5leHBsYW5hdGlvblJlc3VsdCxcbiAgICAgIG91dHB1dHM6IFtcbiAgICAgICAge1xuICAgICAgICAgIGFkZHJlc3M6IGpzb24ucmVjZWl2ZXJJZCxcbiAgICAgICAgICBhbW91bnQ6IGpzb24uYWN0aW9uc1swXS50cmFuc2Zlci5kZXBvc2l0LnRvU3RyaW5nKCksXG4gICAgICAgIH0sXG4gICAgICBdLFxuICAgIH07XG4gIH1cblxuICAvKiogQGluaGVyaXRkb2MgKi9cbiAgZXhwbGFpblRyYW5zYWN0aW9uKCk6IFRyYW5zYWN0aW9uRXhwbGFuYXRpb24ge1xuICAgIGNvbnN0IHJlc3VsdCA9IHRoaXMudG9Kc29uKCk7XG4gICAgY29uc3QgZGlzcGxheU9yZGVyID0gWydvdXRwdXRBbW91bnQnLCAnY2hhbmdlQW1vdW50JywgJ291dHB1dHMnLCAnY2hhbmdlT3V0cHV0cycsICdmZWUnLCAndHlwZSddO1xuICAgIGNvbnN0IG91dHB1dHM6IFRyYW5zYWN0aW9uUmVjaXBpZW50W10gPSBbXTtcbiAgICBjb25zdCBleHBsYW5hdGlvblJlc3VsdDogVHJhbnNhY3Rpb25FeHBsYW5hdGlvbiA9IHtcbiAgICAgIC8vIHR4aGFzaCB1c2VkIHRvIGlkZW50aWZ5IHRoZSB0cmFuc2FjdGlvbnNcbiAgICAgIGlkOiByZXN1bHQuaWQgfHwgJycsXG4gICAgICBkaXNwbGF5T3JkZXIsXG4gICAgICBvdXRwdXRBbW91bnQ6IHJlc3VsdC5hY3Rpb25zWzBdLnRyYW5zZmVyLmRlcG9zaXQudG9TdHJpbmcoKSxcbiAgICAgIGNoYW5nZUFtb3VudDogJzAnLFxuICAgICAgY2hhbmdlT3V0cHV0czogW10sXG4gICAgICBvdXRwdXRzLFxuICAgICAgZmVlOiB7IGZlZTogJycgfSxcbiAgICAgIHR5cGU6IHRoaXMudHlwZSxcbiAgICB9O1xuICAgIHN3aXRjaCAodGhpcy50eXBlKSB7XG4gICAgICBjYXNlIFRyYW5zYWN0aW9uVHlwZS5TZW5kOlxuICAgICAgICByZXR1cm4gdGhpcy5leHBsYWluVHJhbnNmZXJUcmFuc2FjdGlvbihyZXN1bHQsIGV4cGxhbmF0aW9uUmVzdWx0KTtcbiAgICAgIGRlZmF1bHQ6XG4gICAgICAgIHRocm93IG5ldyBJbnZhbGlkVHJhbnNhY3Rpb25FcnJvcignVHJhbnNhY3Rpb24gdHlwZSBub3Qgc3VwcG9ydGVkJyk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBnZXRUcmFuc2FjdGlvbkhhc2goKTogVWludDhBcnJheSB7XG4gICAgY29uc3Qgc2VyaWFsaXplZFR4ID0gbmVhckFQSS51dGlscy5zZXJpYWxpemUuc2VyaWFsaXplKG5lYXJBUEkudHJhbnNhY3Rpb25zLlNDSEVNQSwgdGhpcy5fbmVhclRyYW5zYWN0aW9uKTtcbiAgICByZXR1cm4gbmV3IFVpbnQ4QXJyYXkoc2hhMjU2LnNoYTI1Ni5hcnJheShzZXJpYWxpemVkVHgpKTtcbiAgfVxuXG4gIGdldCBzaWduYWJsZVBheWxvYWQoKTogQnVmZmVyIHtcbiAgICBpZiAoIXRoaXMuX25lYXJUcmFuc2FjdGlvbikge1xuICAgICAgdGhyb3cgbmV3IEludmFsaWRUcmFuc2FjdGlvbkVycm9yKCdlbXB0eSB0cmFuc2FjdGlvbicpO1xuICAgIH1cbiAgICByZXR1cm4gQnVmZmVyLmZyb20obmVhckFQSS51dGlscy5zZXJpYWxpemUuc2VyaWFsaXplKG5lYXJBUEkudHJhbnNhY3Rpb25zLlNDSEVNQSwgdGhpcy5fbmVhclRyYW5zYWN0aW9uKSk7XG4gIH1cblxuICAvKipcbiAgICogQ29uc3RydWN0cyBhIHNpZ25lZCBwYXlsb2FkIHVzaW5nIGNvbnN0cnVjdC5zaWduVHhcbiAgICogVGhpcyBtZXRob2Qgd2lsbCBiZSBjYWxsZWQgZHVyaW5nIHRoZSBidWlsZCBzdGVwIGlmIGEgVFNTIHNpZ25hdHVyZVxuICAgKiBpcyBhZGRlZCBhbmQgd2lsbCBzZXQgdGhlIHNpZ25UcmFuc2FjdGlvbiB3aGljaCBpcyB0aGUgdHhIZXggdGhhdCB3aWxsIGJlIGJyb2FkY2FzdGVkXG4gICAqIEFzIHdlbGwgYXMgYWRkIHRoZSBzaWduYXR1cmUgdXNlZCB0byBzaWduIHRvIHRoZSBzaWduYXR1cmUgYXJyYXkgaW4gaGV4IGZvcm1hdFxuICAgKlxuICAgKiBAcGFyYW0ge0J1ZmZlcn0gc2lnbmF0dXJlIFRoZSBzaWduYXR1cmUgdG8gYmUgYWRkZWQgdG8gYSBkb3QgdHJhbnNhY3Rpb25cbiAgICovXG4gIGNvbnN0cnVjdFNpZ25lZFBheWxvYWQoc2lnbmF0dXJlOiBCdWZmZXIpOiB2b2lkIHtcbiAgICB0aGlzLl9uZWFyU2lnbmVkVHJhbnNhY3Rpb24gPSBuZXcgbmVhckFQSS50cmFuc2FjdGlvbnMuU2lnbmVkVHJhbnNhY3Rpb24oe1xuICAgICAgdHJhbnNhY3Rpb246IHRoaXMuX25lYXJUcmFuc2FjdGlvbixcbiAgICAgIHNpZ25hdHVyZTogbmV3IG5lYXJBUEkudHJhbnNhY3Rpb25zLlNpZ25hdHVyZSh7XG4gICAgICAgIGtleVR5cGU6IHRoaXMuX25lYXJUcmFuc2FjdGlvbi5wdWJsaWNLZXkua2V5VHlwZSxcbiAgICAgICAgZGF0YTogc2lnbmF0dXJlLFxuICAgICAgfSksXG4gICAgfSk7XG4gICAgdGhpcy5sb2FkSW5wdXRzQW5kT3V0cHV0cygpO1xuICB9XG4gIC8qKiBAaW5oZXJpdGRvYyAqKi9cbiAgZ2V0IHNpZ25hdHVyZSgpOiBzdHJpbmdbXSB7XG4gICAgY29uc3Qgc2lnbmF0dXJlczogc3RyaW5nW10gPSBbXTtcblxuICAgIGlmICh0aGlzLl9uZWFyU2lnbmVkVHJhbnNhY3Rpb24pIHtcbiAgICAgIHNpZ25hdHVyZXMucHVzaChiYXNlNTguZW5jb2RlKHRoaXMuX25lYXJTaWduZWRUcmFuc2FjdGlvbi5zaWduYXR1cmUuZGF0YSkpO1xuICAgIH1cblxuICAgIHJldHVybiBzaWduYXR1cmVzO1xuICB9XG59XG4iXX0=
@@ -1,10 +1,20 @@
1
+ /// <reference types="node" />
1
2
  import BigNumber from 'bignumber.js';
2
3
  import { BaseCoin as CoinConfig } from '@bitgo/statics';
3
4
  import { BaseTransactionBuilder } from '../baseCoin';
4
- import { BaseAddress, BaseKey } from '../baseCoin/iface';
5
+ import { BaseAddress, BaseKey, PublicKey as BasePublicKey } from '../baseCoin/iface';
5
6
  import { Transaction } from './transaction';
7
+ import * as nearAPI from 'near-api-js';
6
8
  export declare abstract class TransactionBuilder extends BaseTransactionBuilder {
7
9
  private _transaction;
10
+ private _sender;
11
+ private _publicKey;
12
+ private _receiverId;
13
+ private _nonce;
14
+ private _recentBlockHash;
15
+ private _actions;
16
+ private _signer;
17
+ private _signatures;
8
18
  constructor(_coinConfig: Readonly<CoinConfig>);
9
19
  /**
10
20
  * Initialize the transaction builder fields using the decoded transaction data
@@ -13,16 +23,68 @@ export declare abstract class TransactionBuilder extends BaseTransactionBuilder
13
23
  */
14
24
  initBuilder(tx: Transaction): void;
15
25
  /** @inheritdoc */
26
+ protected fromImplementation(rawTransaction: string): Transaction;
27
+ /** @inheritdoc */
28
+ protected buildImplementation(): Promise<Transaction>;
29
+ /** @inheritdoc */
30
+ protected signImplementation(key: BaseKey): Transaction;
31
+ /** @inheritdoc */
16
32
  protected get transaction(): Transaction;
17
33
  /** @inheritdoc */
34
+ protected set transaction(transaction: Transaction);
35
+ /** @inheritdoc */
18
36
  validateAddress(address: BaseAddress, addressFormat?: string): void;
19
37
  /** @inheritdoc */
20
38
  validateKey(key: BaseKey): void;
21
39
  /** @inheritdoc */
22
40
  validateRawTransaction(rawTransaction: any): void;
23
41
  /** @inheritdoc */
24
- validateTransaction(transaction?: Transaction): void;
42
+ validateTransaction(transaction: Transaction): void;
25
43
  /** @inheritdoc */
26
44
  validateValue(value: BigNumber): void;
45
+ /**
46
+ * Sets the public key and the address of the sender of this transaction.
47
+ *
48
+ * @param {string} address the account that is sending this transaction
49
+ * @param {string} pubKey the public key that is sending this transaction
50
+ * @returns {TransactionBuilder} This transaction builder
51
+ */
52
+ sender(address: string, pubKey: string): this;
53
+ /**
54
+ * Sets the account Id of the receiver of this transaction.
55
+ *
56
+ * @param {string} accountId the account id of the account that is receiving this transaction
57
+ * @returns {TransactionBuilder} This transaction builder
58
+ */
59
+ receiverId(accountId: string): this;
60
+ /**
61
+ * Set the nonce
62
+ *
63
+ * @param {number} nonce - number that can be only used once
64
+ * @returns {TransactionBuilder} This transaction builder
65
+ */
66
+ nonce(nonce: number): this;
67
+ /**
68
+ * Sets the blockHash of this transaction.
69
+ *
70
+ * @param {string} blockHash the blockHash of this transaction
71
+ * @returns {TransactionBuilder} This transaction builder
72
+ */
73
+ recentBlockHash(blockHash: string): this;
74
+ /**
75
+ * Sets the list of actions of this transaction.
76
+ *
77
+ * @param {nearAPI.transactions.Action[]} value the the list of actions
78
+ * @returns {TransactionBuilder} This transaction builder
79
+ */
80
+ protected actions(value: nearAPI.transactions.Action[]): this;
81
+ /**
82
+ * Builds the NEAR transaction.
83
+ *
84
+ * @return {Transaction} near sdk transaction
85
+ */
86
+ protected buildNearTransaction(): nearAPI.transactions.Transaction;
87
+ /** @inheritDoc */
88
+ addSignature(publicKey: BasePublicKey, signature: Buffer): void;
27
89
  }
28
90
  //# sourceMappingURL=transactionBuilder.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"transactionBuilder.d.ts","sourceRoot":"","sources":["../../../../src/coin/near/transactionBuilder.ts"],"names":[],"mappings":"AAAA,OAAO,SAAS,MAAM,cAAc,CAAC;AACrC,OAAO,EAAE,QAAQ,IAAI,UAAU,EAAE,MAAM,gBAAgB,CAAC;AACxD,OAAO,EAAE,sBAAsB,EAAE,MAAM,aAAa,CAAC;AAErD,OAAO,EAAE,WAAW,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AACzD,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAE5C,8BAAsB,kBAAmB,SAAQ,sBAAsB;IACrE,OAAO,CAAC,YAAY,CAAc;gBAEtB,WAAW,EAAE,QAAQ,CAAC,UAAU,CAAC;IAI7C;;;;OAIG;IACH,WAAW,CAAC,EAAE,EAAE,WAAW,GAAG,IAAI;IAKlC,kBAAkB;IAClB,SAAS,KAAK,WAAW,IAAI,WAAW,CAEvC;IAID,kBAAkB;IAClB,eAAe,CAAC,OAAO,EAAE,WAAW,EAAE,aAAa,CAAC,EAAE,MAAM,GAAG,IAAI;IAInE,kBAAkB;IAClB,WAAW,CAAC,GAAG,EAAE,OAAO,GAAG,IAAI;IAI/B,kBAAkB;IAClB,sBAAsB,CAAC,cAAc,EAAE,GAAG,GAAG,IAAI;IAIjD,kBAAkB;IAClB,mBAAmB,CAAC,WAAW,CAAC,EAAE,WAAW,GAAG,IAAI;IAIpD,kBAAkB;IAClB,aAAa,CAAC,KAAK,EAAE,SAAS,GAAG,IAAI;CAItC"}
1
+ {"version":3,"file":"transactionBuilder.d.ts","sourceRoot":"","sources":["../../../../src/coin/near/transactionBuilder.ts"],"names":[],"mappings":";AAAA,OAAO,SAAS,MAAM,cAAc,CAAC;AACrC,OAAO,EAAE,QAAQ,IAAI,UAAU,EAAE,MAAM,gBAAgB,CAAC;AACxD,OAAO,EAAE,sBAAsB,EAAa,MAAM,aAAa,CAAC;AAEhE,OAAO,EAAE,WAAW,EAAE,OAAO,EAAE,SAAS,IAAI,aAAa,EAAE,MAAM,mBAAmB,CAAC;AACrF,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,KAAK,OAAO,MAAM,aAAa,CAAC;AAOvC,8BAAsB,kBAAmB,SAAQ,sBAAsB;IACrE,OAAO,CAAC,YAAY,CAAc;IAElC,OAAO,CAAC,OAAO,CAAS;IACxB,OAAO,CAAC,UAAU,CAAS;IAC3B,OAAO,CAAC,WAAW,CAAS;IAC5B,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,gBAAgB,CAAS;IACjC,OAAO,CAAC,QAAQ,CAAgC;IAChD,OAAO,CAAC,OAAO,CAAU;IAEzB,OAAO,CAAC,WAAW,CAA6B;gBAEpC,WAAW,EAAE,QAAQ,CAAC,UAAU,CAAC;IAK7C;;;;OAIG;IACH,WAAW,CAAC,EAAE,EAAE,WAAW,GAAG,IAAI;IAWlC,kBAAkB;IAClB,SAAS,CAAC,kBAAkB,CAAC,cAAc,EAAE,MAAM,GAAG,WAAW;IAMjE,kBAAkB;cACF,mBAAmB,IAAI,OAAO,CAAC,WAAW,CAAC;IAY3D,kBAAkB;IAClB,SAAS,CAAC,kBAAkB,CAAC,GAAG,EAAE,OAAO,GAAG,WAAW;IAMvD,kBAAkB;IAClB,SAAS,KAAK,WAAW,IAAI,WAAW,CAEvC;IAED,kBAAkB;IAClB,SAAS,KAAK,WAAW,CAAC,WAAW,EAAE,WAAW,EAEjD;IAKD,kBAAkB;IAClB,eAAe,CAAC,OAAO,EAAE,WAAW,EAAE,aAAa,CAAC,EAAE,MAAM,GAAG,IAAI;IAMnE,kBAAkB;IAClB,WAAW,CAAC,GAAG,EAAE,OAAO,GAAG,IAAI;IAQ/B,kBAAkB;IAClB,sBAAsB,CAAC,cAAc,EAAE,GAAG,GAAG,IAAI;IAoBjD,kBAAkB;IAClB,mBAAmB,CAAC,WAAW,EAAE,WAAW,GAAG,IAAI;IAQnD,kBAAkB;IAClB,aAAa,CAAC,KAAK,EAAE,SAAS,GAAG,IAAI;IAQrC;;;;;;OAMG;IACI,MAAM,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,IAAI;IAYpD;;;;;OAKG;IACI,UAAU,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI;IAM1C;;;;;OAKG;IACI,KAAK,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAQjC;;;;;OAKG;IACI,eAAe,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI;IAQ/C;;;;;OAKG;IACH,SAAS,CAAC,OAAO,CAAC,KAAK,EAAE,OAAO,CAAC,YAAY,CAAC,MAAM,EAAE,GAAG,IAAI;IAK7D;;;;OAIG;IACH,SAAS,CAAC,oBAAoB,IAAI,OAAO,CAAC,YAAY,CAAC,WAAW;IAgBlE,kBAAkB;IAClB,YAAY,CAAC,SAAS,EAAE,aAAa,EAAE,SAAS,EAAE,MAAM,GAAG,IAAI;CAGhE"}