@bitgo/account-lib 2.18.0 → 2.19.0-rc.3
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.
- package/.mocharc.js +10 -0
- package/dist/browser/bitgo-account-lib.js +1 -1
- package/dist/browser/bitgo-account-lib.js.LICENSE.txt +10 -17
- package/dist/package.json +7 -10
- package/dist/src/coin/algo/keyRegistrationBuilder.d.ts +11 -2
- package/dist/src/coin/algo/keyRegistrationBuilder.d.ts.map +1 -1
- package/dist/src/coin/algo/keyRegistrationBuilder.js +58 -15
- package/dist/src/coin/algo/transaction.d.ts.map +1 -1
- package/dist/src/coin/algo/transaction.js +12 -6
- package/dist/src/coin/algo/utils.d.ts.map +1 -1
- package/dist/src/coin/algo/utils.js +6 -2
- package/dist/src/coin/baseCoin/baseTransaction.d.ts +6 -0
- package/dist/src/coin/baseCoin/baseTransaction.d.ts.map +1 -1
- package/dist/src/coin/baseCoin/baseTransaction.js +13 -1
- package/dist/src/coin/baseCoin/baseTransactionBuilder.d.ts +9 -1
- package/dist/src/coin/baseCoin/baseTransactionBuilder.d.ts.map +1 -1
- package/dist/src/coin/baseCoin/baseTransactionBuilder.js +10 -1
- package/dist/src/coin/baseCoin/iface.d.ts +7 -0
- package/dist/src/coin/baseCoin/iface.d.ts.map +1 -1
- package/dist/src/coin/baseCoin/iface.js +1 -1
- package/dist/src/coin/dot/iface.d.ts +7 -2
- package/dist/src/coin/dot/iface.d.ts.map +1 -1
- package/dist/src/coin/dot/iface.js +2 -1
- package/dist/src/coin/dot/index.d.ts +1 -0
- package/dist/src/coin/dot/index.d.ts.map +1 -1
- package/dist/src/coin/dot/index.js +4 -2
- package/dist/src/coin/dot/transaction.d.ts.map +1 -1
- package/dist/src/coin/dot/transaction.js +5 -1
- package/dist/src/coin/dot/transactionBuilderFactory.d.ts +2 -1
- package/dist/src/coin/dot/transactionBuilderFactory.d.ts.map +1 -1
- package/dist/src/coin/dot/transactionBuilderFactory.js +4 -1
- package/dist/src/coin/dot/txnSchema.d.ts +1 -0
- package/dist/src/coin/dot/txnSchema.d.ts.map +1 -1
- package/dist/src/coin/dot/txnSchema.js +5 -2
- package/dist/src/coin/dot/withdrawUnstakedBuilder.d.ts +38 -0
- package/dist/src/coin/dot/withdrawUnstakedBuilder.d.ts.map +1 -0
- package/dist/src/coin/dot/withdrawUnstakedBuilder.js +112 -0
- package/dist/src/coin/near/index.d.ts +3 -0
- package/dist/src/coin/near/index.d.ts.map +1 -1
- package/dist/src/coin/near/index.js +8 -2
- package/dist/src/coin/near/keyPair.d.ts +7 -0
- package/dist/src/coin/near/keyPair.d.ts.map +1 -1
- package/dist/src/coin/near/keyPair.js +15 -1
- package/dist/src/coin/near/transaction.d.ts +32 -1
- package/dist/src/coin/near/transaction.d.ts.map +1 -1
- package/dist/src/coin/near/transaction.js +144 -6
- package/dist/src/coin/near/transactionBuilder.d.ts +29 -1
- package/dist/src/coin/near/transactionBuilder.d.ts.map +1 -1
- package/dist/src/coin/near/transactionBuilder.js +163 -8
- package/dist/src/coin/near/transactionBuilderFactory.d.ts +1 -1
- package/dist/src/coin/near/transactionBuilderFactory.d.ts.map +1 -1
- package/dist/src/coin/near/transactionBuilderFactory.js +17 -2
- package/dist/src/coin/near/transferBuilder.d.ts +0 -2
- package/dist/src/coin/near/transferBuilder.d.ts.map +1 -1
- package/dist/src/coin/near/transferBuilder.js +13 -8
- package/dist/src/coin/near/utils.d.ts +7 -0
- package/dist/src/coin/near/utils.d.ts.map +1 -1
- package/dist/src/coin/near/utils.js +8 -1
- package/dist/src/coin/near/walletInitializationBuilder.d.ts +0 -2
- package/dist/src/coin/near/walletInitializationBuilder.d.ts.map +1 -1
- package/dist/src/coin/near/walletInitializationBuilder.js +2 -6
- package/dist/src/coin/sol/ataInitializationBuilder.d.ts +10 -1
- package/dist/src/coin/sol/ataInitializationBuilder.d.ts.map +1 -1
- package/dist/src/coin/sol/ataInitializationBuilder.js +34 -9
- package/dist/src/coin/sol/iface.d.ts +1 -0
- package/dist/src/coin/sol/iface.d.ts.map +1 -1
- package/dist/src/coin/sol/iface.js +1 -1
- package/dist/src/coin/sol/index.d.ts +1 -0
- package/dist/src/coin/sol/index.d.ts.map +1 -1
- package/dist/src/coin/sol/index.js +4 -2
- package/dist/src/coin/sol/transaction.d.ts +3 -0
- package/dist/src/coin/sol/transaction.d.ts.map +1 -1
- package/dist/src/coin/sol/transaction.js +31 -1
- package/dist/src/coin/sol/transactionBuilder.d.ts +5 -1
- package/dist/src/coin/sol/transactionBuilder.d.ts.map +1 -1
- package/dist/src/coin/sol/transactionBuilder.js +11 -1
- package/dist/src/coin/sol/utils.d.ts +9 -0
- package/dist/src/coin/sol/utils.d.ts.map +1 -1
- package/dist/src/coin/sol/utils.js +28 -2
- package/dist/src/mpc/tss.d.ts +1 -1
- package/dist/src/mpc/tss.d.ts.map +1 -1
- package/dist/src/mpc/tss.js +1 -1
- package/package.json +7 -10
|
@@ -1,11 +1,42 @@
|
|
|
1
|
-
import { BaseTransaction } from '../baseCoin';
|
|
1
|
+
import { BaseTransaction, TransactionType } from '../baseCoin';
|
|
2
2
|
import { BaseKey } from '../baseCoin/iface';
|
|
3
|
+
import { BaseCoin as CoinConfig } from '@bitgo/statics';
|
|
4
|
+
import { KeyPair } from './keyPair';
|
|
5
|
+
import * as nearAPI from 'near-api-js';
|
|
3
6
|
export declare class Transaction extends BaseTransaction {
|
|
7
|
+
private _nearTransaction;
|
|
8
|
+
private _nearSignedTransaction;
|
|
9
|
+
constructor(coinConfig: Readonly<CoinConfig>);
|
|
10
|
+
get nearTransaction(): nearAPI.transactions.Transaction;
|
|
11
|
+
set nearTransaction(tx: nearAPI.transactions.Transaction);
|
|
4
12
|
/** @inheritdoc */
|
|
5
13
|
canSign(key: BaseKey): boolean;
|
|
6
14
|
/** @inheritdoc */
|
|
7
15
|
toBroadcastFormat(): string;
|
|
8
16
|
/** @inheritdoc */
|
|
9
17
|
toJson(): any;
|
|
18
|
+
/**
|
|
19
|
+
* Set the transaction type.
|
|
20
|
+
*
|
|
21
|
+
* @param {TransactionType} transactionType The transaction type to be set.
|
|
22
|
+
*/
|
|
23
|
+
setTransactionType(transactionType: TransactionType): void;
|
|
24
|
+
/**
|
|
25
|
+
* Sets this transaction payload
|
|
26
|
+
*
|
|
27
|
+
* @param rawTransaction
|
|
28
|
+
*/
|
|
29
|
+
fromRawTransaction(rawTransaction: string): void;
|
|
30
|
+
/**
|
|
31
|
+
* Sign this transaction
|
|
32
|
+
*
|
|
33
|
+
* @param {KeyPair} signer key
|
|
34
|
+
*/
|
|
35
|
+
sign(signer: KeyPair): void;
|
|
36
|
+
/**
|
|
37
|
+
* Build input and output field for this transaction
|
|
38
|
+
*
|
|
39
|
+
*/
|
|
40
|
+
buildInputAndOutput(): void;
|
|
10
41
|
}
|
|
11
42
|
//# sourceMappingURL=transaction.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"transaction.d.ts","sourceRoot":"","sources":["../../../../src/coin/near/transaction.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"transaction.d.ts","sourceRoot":"","sources":["../../../../src/coin/near/transaction.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAC/D,OAAO,EAAE,OAAO,EAAS,MAAM,mBAAmB,CAAC;AAEnD,OAAO,EAAE,QAAQ,IAAI,UAAU,EAAE,MAAM,gBAAgB,CAAC;AACxD,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,KAAK,OAAO,MAAM,aAAa,CAAC;AAGvC,qBAAa,WAAY,SAAQ,eAAe;IAC9C,OAAO,CAAC,gBAAgB,CAAmC;IAC3D,OAAO,CAAC,sBAAsB,CAAyC;gBAE3D,UAAU,EAAE,QAAQ,CAAC,UAAU,CAAC;IAI5C,IAAI,eAAe,IAAI,OAAO,CAAC,YAAY,CAAC,WAAW,CAEtD;IAED,IAAI,eAAe,CAAC,EAAE,EAAE,OAAO,CAAC,YAAY,CAAC,WAAW,EAEvD;IAED,kBAAkB;IAClB,OAAO,CAAC,GAAG,EAAE,OAAO,GAAG,OAAO;IAS9B,kBAAkB;IAClB,iBAAiB,IAAI,MAAM;IAU3B,kBAAkB;IAClB,MAAM,IAAI,GAAG;IAeb;;;;OAIG;IACH,kBAAkB,CAAC,eAAe,EAAE,eAAe,GAAG,IAAI;IAI1D;;;;OAIG;IACH,kBAAkB,CAAC,cAAc,EAAE,MAAM,GAAG,IAAI;IAwBhD;;;;OAIG;IAEH,IAAI,CAAC,MAAM,EAAE,OAAO,GAAG,IAAI;IAiB3B;;;OAGG;IAEH,mBAAmB,IAAI,IAAI;CAkC5B"}
|
|
@@ -14,28 +14,166 @@ 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 __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
18
|
+
if (k2 === undefined) k2 = k;
|
|
19
|
+
Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
|
|
20
|
+
}) : (function(o, m, k, k2) {
|
|
21
|
+
if (k2 === undefined) k2 = k;
|
|
22
|
+
o[k2] = m[k];
|
|
23
|
+
}));
|
|
24
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
25
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
26
|
+
}) : function(o, v) {
|
|
27
|
+
o["default"] = v;
|
|
28
|
+
});
|
|
29
|
+
var __importStar = (this && this.__importStar) || function (mod) {
|
|
30
|
+
if (mod && mod.__esModule) return mod;
|
|
31
|
+
var result = {};
|
|
32
|
+
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
33
|
+
__setModuleDefault(result, mod);
|
|
34
|
+
return result;
|
|
35
|
+
};
|
|
17
36
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
18
37
|
exports.Transaction = void 0;
|
|
19
38
|
var baseCoin_1 = require("../baseCoin");
|
|
20
39
|
var errors_1 = require("../baseCoin/errors");
|
|
40
|
+
var keyPair_1 = require("./keyPair");
|
|
41
|
+
var nearAPI = __importStar(require("near-api-js"));
|
|
42
|
+
var sha256 = __importStar(require("js-sha256"));
|
|
21
43
|
var Transaction = /** @class */ (function (_super) {
|
|
22
44
|
__extends(Transaction, _super);
|
|
23
|
-
function Transaction() {
|
|
24
|
-
return _super
|
|
45
|
+
function Transaction(coinConfig) {
|
|
46
|
+
return _super.call(this, coinConfig) || this;
|
|
25
47
|
}
|
|
48
|
+
Object.defineProperty(Transaction.prototype, "nearTransaction", {
|
|
49
|
+
get: function () {
|
|
50
|
+
return this._nearTransaction;
|
|
51
|
+
},
|
|
52
|
+
set: function (tx) {
|
|
53
|
+
this._nearTransaction = tx;
|
|
54
|
+
},
|
|
55
|
+
enumerable: false,
|
|
56
|
+
configurable: true
|
|
57
|
+
});
|
|
26
58
|
/** @inheritdoc */
|
|
27
59
|
Transaction.prototype.canSign = function (key) {
|
|
28
|
-
|
|
60
|
+
try {
|
|
61
|
+
new keyPair_1.KeyPair({ prv: key.key });
|
|
62
|
+
return true;
|
|
63
|
+
}
|
|
64
|
+
catch (_a) {
|
|
65
|
+
return false;
|
|
66
|
+
}
|
|
29
67
|
};
|
|
30
68
|
/** @inheritdoc */
|
|
31
69
|
Transaction.prototype.toBroadcastFormat = function () {
|
|
32
|
-
|
|
70
|
+
if (!this._nearTransaction) {
|
|
71
|
+
throw new errors_1.InvalidTransactionError('Empty transaction data');
|
|
72
|
+
}
|
|
73
|
+
var txSeralized = this._nearSignedTransaction
|
|
74
|
+
? nearAPI.utils.serialize.base_encode(this._nearSignedTransaction.encode())
|
|
75
|
+
: nearAPI.utils.serialize.base_encode(this._nearTransaction.encode());
|
|
76
|
+
return txSeralized;
|
|
33
77
|
};
|
|
34
78
|
/** @inheritdoc */
|
|
35
79
|
Transaction.prototype.toJson = function () {
|
|
36
|
-
|
|
80
|
+
if (!this._nearTransaction) {
|
|
81
|
+
throw new errors_1.InvalidTransactionError('Empty transaction data');
|
|
82
|
+
}
|
|
83
|
+
return {
|
|
84
|
+
signer_id: this._nearTransaction.signerId,
|
|
85
|
+
public_key: this._nearTransaction.publicKey.toString(),
|
|
86
|
+
nonce: this._nearTransaction.nonce,
|
|
87
|
+
receiver_id: this._nearTransaction.receiverId,
|
|
88
|
+
actions: this._nearTransaction.actions,
|
|
89
|
+
signature: typeof this._nearSignedTransaction === 'undefined' ? '' : this._nearSignedTransaction.signature,
|
|
90
|
+
};
|
|
91
|
+
};
|
|
92
|
+
/**
|
|
93
|
+
* Set the transaction type.
|
|
94
|
+
*
|
|
95
|
+
* @param {TransactionType} transactionType The transaction type to be set.
|
|
96
|
+
*/
|
|
97
|
+
Transaction.prototype.setTransactionType = function (transactionType) {
|
|
98
|
+
this._type = transactionType;
|
|
99
|
+
};
|
|
100
|
+
/**
|
|
101
|
+
* Sets this transaction payload
|
|
102
|
+
*
|
|
103
|
+
* @param rawTransaction
|
|
104
|
+
*/
|
|
105
|
+
Transaction.prototype.fromRawTransaction = function (rawTransaction) {
|
|
106
|
+
try {
|
|
107
|
+
var signedTx = nearAPI.utils.serialize.deserialize(nearAPI.transactions.SCHEMA, nearAPI.transactions.SignedTransaction, nearAPI.utils.serialize.base_decode(rawTransaction));
|
|
108
|
+
this._nearSignedTransaction = signedTx;
|
|
109
|
+
this._nearTransaction = signedTx.transaction;
|
|
110
|
+
}
|
|
111
|
+
catch (e) {
|
|
112
|
+
try {
|
|
113
|
+
this._nearTransaction = nearAPI.utils.serialize.deserialize(nearAPI.transactions.SCHEMA, nearAPI.transactions.Transaction, nearAPI.utils.serialize.base_decode(rawTransaction));
|
|
114
|
+
}
|
|
115
|
+
catch (e) {
|
|
116
|
+
throw new errors_1.InvalidTransactionError('unable to build transaction from raw');
|
|
117
|
+
}
|
|
118
|
+
}
|
|
119
|
+
this.buildInputAndOutput();
|
|
120
|
+
};
|
|
121
|
+
/**
|
|
122
|
+
* Sign this transaction
|
|
123
|
+
*
|
|
124
|
+
* @param {KeyPair} signer key
|
|
125
|
+
*/
|
|
126
|
+
Transaction.prototype.sign = function (signer) {
|
|
127
|
+
if (!this._nearTransaction) {
|
|
128
|
+
throw new errors_1.InvalidTransactionError('empty transaction to sign');
|
|
129
|
+
}
|
|
130
|
+
var serializedTx = nearAPI.utils.serialize.serialize(nearAPI.transactions.SCHEMA, this._nearTransaction);
|
|
131
|
+
var serializedTxHash = new Uint8Array(sha256.sha256.array(serializedTx));
|
|
132
|
+
var signature = signer.signMessageinUint8Array(serializedTxHash);
|
|
133
|
+
this._nearSignedTransaction = new nearAPI.transactions.SignedTransaction({
|
|
134
|
+
transaction: this._nearTransaction,
|
|
135
|
+
signature: new nearAPI.transactions.Signature({
|
|
136
|
+
keyType: this._nearTransaction.publicKey.keyType,
|
|
137
|
+
data: signature,
|
|
138
|
+
}),
|
|
139
|
+
});
|
|
140
|
+
this.buildInputAndOutput();
|
|
141
|
+
};
|
|
142
|
+
/**
|
|
143
|
+
* Build input and output field for this transaction
|
|
144
|
+
*
|
|
145
|
+
*/
|
|
146
|
+
Transaction.prototype.buildInputAndOutput = function () {
|
|
147
|
+
if (this._nearTransaction.actions.length != 1) {
|
|
148
|
+
throw new errors_1.InvalidTransactionError('too many actions in raw transaction');
|
|
149
|
+
}
|
|
150
|
+
if (this._nearTransaction.actions[0].enum === 'transfer') {
|
|
151
|
+
this.setTransactionType(baseCoin_1.TransactionType.Send);
|
|
152
|
+
}
|
|
153
|
+
else {
|
|
154
|
+
throw new errors_1.InvalidTransactionError('unsupported action in raw transaction');
|
|
155
|
+
}
|
|
156
|
+
var outputs = [];
|
|
157
|
+
var inputs = [];
|
|
158
|
+
switch (this.type) {
|
|
159
|
+
case baseCoin_1.TransactionType.Send:
|
|
160
|
+
var amount = nearAPI.utils.format.formatNearAmount(this._nearTransaction.actions[0].transfer.deposit.toString());
|
|
161
|
+
inputs.push({
|
|
162
|
+
address: this._nearTransaction.signerId,
|
|
163
|
+
value: amount,
|
|
164
|
+
coin: this._coinConfig.name,
|
|
165
|
+
});
|
|
166
|
+
outputs.push({
|
|
167
|
+
address: this._nearTransaction.receiverId,
|
|
168
|
+
value: amount,
|
|
169
|
+
coin: this._coinConfig.name,
|
|
170
|
+
});
|
|
171
|
+
break;
|
|
172
|
+
}
|
|
173
|
+
this._outputs = outputs;
|
|
174
|
+
this._inputs = inputs;
|
|
37
175
|
};
|
|
38
176
|
return Transaction;
|
|
39
177
|
}(baseCoin_1.BaseTransaction));
|
|
40
178
|
exports.Transaction = Transaction;
|
|
41
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNhY3Rpb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvY29pbi9uZWFyL3RyYW5zYWN0aW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLHdDQUE4QztBQUU5Qyw2Q0FBeUQ7QUFFekQ7SUFBaUMsK0JBQWU7SUFBaEQ7O0lBZUEsQ0FBQztJQWRDLGtCQUFrQjtJQUNsQiw2QkFBTyxHQUFQLFVBQVEsR0FBWTtRQUNsQixNQUFNLElBQUksNEJBQW1CLENBQUMseUJBQXlCLENBQUMsQ0FBQztJQUMzRCxDQUFDO0lBRUQsa0JBQWtCO0lBQ2xCLHVDQUFpQixHQUFqQjtRQUNFLE1BQU0sSUFBSSw0QkFBbUIsQ0FBQyxtQ0FBbUMsQ0FBQyxDQUFDO0lBQ3JFLENBQUM7SUFFRCxrQkFBa0I7SUFDbEIsNEJBQU0sR0FBTjtRQUNFLE1BQU0sSUFBSSw0QkFBbUIsQ0FBQyx3QkFBd0IsQ0FBQyxDQUFDO0lBQzFELENBQUM7SUFDSCxrQkFBQztBQUFELENBQUMsQUFmRCxDQUFpQywwQkFBZSxHQWUvQztBQWZZLGtDQUFXIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQmFzZVRyYW5zYWN0aW9uIH0gZnJvbSAnLi4vYmFzZUNvaW4nO1xuaW1wb3J0IHsgQmFzZUtleSB9IGZyb20gJy4uL2Jhc2VDb2luL2lmYWNlJztcbmltcG9ydCB7IE5vdEltcGxlbWVudGVkRXJyb3IgfSBmcm9tICcuLi9iYXNlQ29pbi9lcnJvcnMnO1xuXG5leHBvcnQgY2xhc3MgVHJhbnNhY3Rpb24gZXh0ZW5kcyBCYXNlVHJhbnNhY3Rpb24ge1xuICAvKiogQGluaGVyaXRkb2MgKi9cbiAgY2FuU2lnbihrZXk6IEJhc2VLZXkpOiBib29sZWFuIHtcbiAgICB0aHJvdyBuZXcgTm90SW1wbGVtZW50ZWRFcnJvcignY2FuU2lnbiBub3QgaW1wbGVtZW50ZWQnKTtcbiAgfVxuXG4gIC8qKiBAaW5oZXJpdGRvYyAqL1xuICB0b0Jyb2FkY2FzdEZvcm1hdCgpOiBzdHJpbmcge1xuICAgIHRocm93IG5ldyBOb3RJbXBsZW1lbnRlZEVycm9yKCd0b0Jyb2FkY2FzdEZvcm1hdCBub3QgaW1wbGVtZW50ZWQnKTtcbiAgfVxuXG4gIC8qKiBAaW5oZXJpdGRvYyAqL1xuICB0b0pzb24oKTogYW55IHtcbiAgICB0aHJvdyBuZXcgTm90SW1wbGVtZW50ZWRFcnJvcigndG9Kc29uIG5vdCBpbXBsZW1lbnRlZCcpO1xuICB9XG59XG4iXX0=
|
|
179
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNhY3Rpb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvY29pbi9uZWFyL3RyYW5zYWN0aW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQSx3Q0FBK0Q7QUFFL0QsNkNBQTZEO0FBRTdELHFDQUFvQztBQUNwQyxtREFBdUM7QUFDdkMsZ0RBQW9DO0FBRXBDO0lBQWlDLCtCQUFlO0lBSTlDLHFCQUFZLFVBQWdDO2VBQzFDLGtCQUFNLFVBQVUsQ0FBQztJQUNuQixDQUFDO0lBRUQsc0JBQUksd0NBQWU7YUFBbkI7WUFDRSxPQUFPLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQztRQUMvQixDQUFDO2FBRUQsVUFBb0IsRUFBb0M7WUFDdEQsSUFBSSxDQUFDLGdCQUFnQixHQUFHLEVBQUUsQ0FBQztRQUM3QixDQUFDOzs7T0FKQTtJQU1ELGtCQUFrQjtJQUNsQiw2QkFBTyxHQUFQLFVBQVEsR0FBWTtRQUNsQixJQUFJO1lBQ0YsSUFBSSxpQkFBTyxDQUFDLEVBQUUsR0FBRyxFQUFFLEdBQUcsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxDQUFDO1lBQzlCLE9BQU8sSUFBSSxDQUFDO1NBQ2I7UUFBQyxXQUFNO1lBQ04sT0FBTyxLQUFLLENBQUM7U0FDZDtJQUNILENBQUM7SUFFRCxrQkFBa0I7SUFDbEIsdUNBQWlCLEdBQWpCO1FBQ0UsSUFBSSxDQUFDLElBQUksQ0FBQyxnQkFBZ0IsRUFBRTtZQUMxQixNQUFNLElBQUksZ0NBQXVCLENBQUMsd0JBQXdCLENBQUMsQ0FBQztTQUM3RDtRQUNELElBQU0sV0FBVyxHQUFHLElBQUksQ0FBQyxzQkFBc0I7WUFDN0MsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsU0FBUyxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsc0JBQXNCLENBQUMsTUFBTSxFQUFFLENBQUM7WUFDM0UsQ0FBQyxDQUFDLE9BQU8sQ0FB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LENBQUMsZ0JBQWdCLENBQUMsUUFBUTtvQkFDdkMsS0FBSyxFQUFFLE1BQU07b0JBQ2IsSUFBSSxFQUFFLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSTtpQkFDNUIsQ0FBQyxDQUFDO2dCQUNILE9BQU8sQ0FBQyxJQUFJLENBQUM7b0JBQ1gsT0FBTyxFQUFFLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxVQUFVO29CQUN6QyxLQUFLLEVBQUUsTUFBTTtvQkFDYixJQUFJLEVBQUUsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJO2lCQUM1QixDQUFDLENBQUM7Z0JBQ0gsTUFBTTtTQUNUO1FBQ0QsSUFBSSxDQUFDLFFBQVEsR0FBRyxPQUFPLENBQUM7UUFDeEIsSUFBSSxDQUFDLE9BQU8sR0FBRyxNQUFNLENBQUM7SUFDeEIsQ0FBQztJQUNILGtCQUFDO0FBQUQsQ0FBQyxBQXpKRCxDQUFpQywwQkFBZSxHQXlKL0M7QUF6Slksa0NBQVciLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBCYXNlVHJhbnNhY3Rpb24sIFRyYW5zYWN0aW9uVHlwZSB9IGZyb20gJy4uL2Jhc2VDb2luJztcbmltcG9ydCB7IEJhc2VLZXksIEVudHJ5IH0gZnJvbSAnLi4vYmFzZUNvaW4vaWZhY2UnO1xuaW1wb3J0IHsgSW52YWxpZFRyYW5zYWN0aW9uRXJyb3IgfSBmcm9tICcuLi9iYXNlQ29pbi9lcnJvcnMnO1xuaW1wb3J0IHsgQmFzZUNvaW4gYXMgQ29pbkNvbmZpZyB9IGZyb20gJ0BiaXRnby9zdGF0aWNzJztcbmltcG9ydCB7IEtleVBhaXIgfSBmcm9tICcuL2tleVBhaXInO1xuaW1wb3J0ICogYXMgbmVhckFQSSBmcm9tICduZWFyLWFwaS1qcyc7XG5pbXBvcnQgKiBhcyBzaGEyNTYgZnJvbSAnanMtc2hhMjU2JztcblxuZXhwb3J0IGNsYXNzIFRyYW5zYWN0aW9uIGV4dGVuZHMgQmFzZVRyYW5zYWN0aW9uIHtcbiAgcHJpdmF0ZSBfbmVhclRyYW5zYWN0aW9uOiBuZWFyQVBJLnRyYW5zYWN0aW9ucy5UcmFuc2FjdGlvbjtcbiAgcHJpdmF0ZSBfbmVhclNpZ25lZFRyYW5zYWN0aW9uOiBuZWFyQVBJLnRyYW5zYWN0aW9ucy5TaWduZWRUcmFuc2FjdGlvbjtcblxuICBjb25zdHJ1Y3Rvcihjb2luQ29uZmlnOiBSZWFkb25seTxDb2luQ29uZmlnPikge1xuICAgIHN1cGVyKGNvaW5Db25maWcpO1xuICB9XG5cbiAgZ2V0IG5lYXJUcmFuc2FjdGlvbigpOiBuZWFyQVBJLnRyYW5zYWN0aW9ucy5UcmFuc2FjdGlvbiB7XG4gICAgcmV0dXJuIHRoaXMuX25lYXJUcmFuc2FjdGlvbjtcbiAgfVxuXG4gIHNldCBuZWFyVHJhbnNhY3Rpb24odHg6IG5lYXJBUEkudHJhbnNhY3Rpb25zLlRyYW5zYWN0aW9uKSB7XG4gICAgdGhpcy5fbmVhclRyYW5zYWN0aW9uID0gdHg7XG4gIH1cblxuICAvKiogQGluaGVyaXRkb2MgKi9cbiAgY2FuU2lnbihrZXk6IEJhc2VLZXkpOiBib29sZWFuIHtcbiAgICB0cnkge1xuICAgICAgbmV3IEtleVBhaXIoeyBwcnY6IGtleS5rZXkgfSk7XG4gICAgICByZXR1cm4gdHJ1ZTtcbiAgICB9IGNhdGNoIHtcbiAgICAgIHJldHVybiBmYWxzZTtcbiAgICB9XG4gIH1cblxuICAvKiogQGluaGVyaXRkb2MgKi9cbiAgdG9Ccm9hZGNhc3RGb3JtYXQoKTogc3RyaW5nIHtcbiAgICBpZiAoIXRoaXMuX25lYXJUcmFuc2FjdGlvbikge1xuICAgICAgdGhyb3cgbmV3IEludmFsaWRUcmFuc2FjdGlvbkVycm9yKCdFbXB0eSB0cmFuc2FjdGlvbiBkYXRhJyk7XG4gICAgfVxuICAgIGNvbnN0IHR4U2VyYWxpemVkID0gdGhpcy5fbmVhclNpZ25lZFRyYW5zYWN0aW9uXG4gICAgICA/IG5lYXJBUEkudXRpbHMuc2VyaWFsaXplLmJhc2VfZW5jb2RlKHRoaXMuX25lYXJTaWduZWRUcmFuc2FjdGlvbi5lbmNvZGUoKSlcbiAgICAgIDogbmVhckFQSS51dGlscy5zZXJpYWxpemUuYmFzZV9lbmNvZGUodGhpcy5fbmVhclRyYW5zYWN0aW9uLmVuY29kZSgpKTtcbiAgICByZXR1cm4gdHhTZXJhbGl6ZWQ7XG4gIH1cblxuICAvKiogQGluaGVyaXRkb2MgKi9cbiAgdG9Kc29uKCk6IGFueSB7XG4gICAgaWYgKCF0aGlzLl9uZWFyVHJhbnNhY3Rpb24pIHtcbiAgICAgIHRocm93IG5ldyBJbnZhbGlkVHJhbnNhY3Rpb25FcnJvcignRW1wdHkgdHJhbnNhY3Rpb24gZGF0YScpO1xuICAgIH1cblxuICAgIHJldHVybiB7XG4gICAgICBzaWduZXJfaWQ6IHRoaXMuX25lYXJUcmFuc2FjdGlvbi5zaWduZXJJZCxcbiAgICAgIHB1YmxpY19rZXk6IHRoaXMuX25lYXJUcmFuc2FjdGlvbi5wdWJsaWNLZXkudG9TdHJpbmcoKSxcbiAgICAgIG5vbmNlOiB0aGlzLl9uZWFyVHJhbnNhY3Rpb24ubm9uY2UsXG4gICAgICByZWNlaXZlcl9pZDogdGhpcy5fbmVhclRyYW5zYWN0aW9uLnJlY2VpdmVySWQsXG4gICAgICBhY3Rpb25zOiB0aGlzLl9uZWFyVHJhbnNhY3Rpb24uYWN0aW9ucyxcbiAgICAgIHNpZ25hdHVyZTogdHlwZW9mIHRoaXMuX25lYXJTaWduZWRUcmFuc2FjdGlvbiA9PT0gJ3VuZGVmaW5lZCcgPyAnJyA6IHRoaXMuX25lYXJTaWduZWRUcmFuc2FjdGlvbi5zaWduYXR1cmUsXG4gICAgfTtcbiAgfVxuXG4gIC8qKlxuICAgKiBTZXQgdGhlIHRyYW5zYWN0aW9uIHR5cGUuXG4gICAqXG4gICAqIEBwYXJhbSB7VHJhbnNhY3Rpb25UeXBlfSB0cmFuc2FjdGlvblR5cGUgVGhlIHRyYW5zYWN0aW9uIHR5cGUgdG8gYmUgc2V0LlxuICAgKi9cbiAgc2V0VHJhbnNhY3Rpb25UeXBlKHRyYW5zYWN0aW9uVHlwZTogVHJhbnNhY3Rpb25UeXBlKTogdm9pZCB7XG4gICAgdGhpcy5fdHlwZSA9IHRyYW5zYWN0aW9uVHlwZTtcbiAgfVxuXG4gIC8qKlxuICAgKiBTZXRzIHRoaXMgdHJhbnNhY3Rpb24gcGF5bG9hZFxuICAgKlxuICAgKiBAcGFyYW0gcmF3VHJhbnNhY3Rpb25cbiAgICovXG4gIGZyb21SYXdUcmFuc2FjdGlvbihyYXdUcmFuc2FjdGlvbjogc3RyaW5nKTogdm9pZCB7XG4gICAgdHJ5IHtcbiAgICAgIGNvbnN0IHNpZ25lZFR4ID0gbmVhckFQSS51dGlscy5zZXJpYWxpemUuZGVzZXJpYWxpemUoXG4gICAgICAgIG5lYXJBUEkudHJhbnNhY3Rpb25zLlNDSEVNQSxcbiAgICAgICAgbmVhckFQSS50cmFuc2FjdGlvbnMuU2lnbmVkVHJhbnNhY3Rpb24sXG4gICAgICAgIG5lYXJBUEkudXRpbHMuc2VyaWFsaXplLmJhc2VfZGVjb2RlKHJhd1RyYW5zYWN0aW9uKSxcbiAgICAgICk7XG4gICAgICB0aGlzLl9uZWFyU2lnbmVkVHJhbnNhY3Rpb24gPSBzaWduZWRUeDtcbiAgICAgIHRoaXMuX25lYXJUcmFuc2FjdGlvbiA9IHNpZ25lZFR4LnRyYW5zYWN0aW9uO1xuICAgIH0gY2F0Y2ggKGUpIHtcbiAgICAgIHRyeSB7XG4gICAgICAgIHRoaXMuX25lYXJUcmFuc2FjdGlvbiA9IG5lYXJBUEkudXRpbHMuc2VyaWFsaXplLmRlc2VyaWFsaXplKFxuICAgICAgICAgIG5lYXJBUEkudHJhbnNhY3Rpb25zLlNDSEVNQSxcbiAgICAgICAgICBuZWFyQVBJLnRyYW5zYWN0aW9ucy5UcmFuc2FjdGlvbixcbiAgICAgICAgICBuZWFyQVBJLnV0aWxzLnNlcmlhbGl6ZS5iYXNlX2RlY29kZShyYXdUcmFuc2FjdGlvbiksXG4gICAgICAgICk7XG4gICAgICB9IGNhdGNoIChlKSB7XG4gICAgICAgIHRocm93IG5ldyBJbnZhbGlkVHJhbnNhY3Rpb25FcnJvcigndW5hYmxlIHRvIGJ1aWxkIHRyYW5zYWN0aW9uIGZyb20gcmF3Jyk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgdGhpcy5idWlsZElucHV0QW5kT3V0cHV0KCk7XG4gIH1cblxuICAvKipcbiAgICogU2lnbiB0aGlzIHRyYW5zYWN0aW9uXG4gICAqXG4gICAqIEBwYXJhbSB7S2V5UGFpcn0gc2lnbmVyIGtleVxuICAgKi9cblxuICBzaWduKHNpZ25lcjogS2V5UGFpcik6IHZvaWQge1xuICAgIGlmICghdGhpcy5fbmVhclRyYW5zYWN0aW9uKSB7XG4gICAgICB0aHJvdyBuZXcgSW52YWxpZFRyYW5zYWN0aW9uRXJyb3IoJ2VtcHR5IHRyYW5zYWN0aW9uIHRvIHNpZ24nKTtcbiAgICB9XG4gICAgY29uc3Qgc2VyaWFsaXplZFR4ID0gbmVhckFQSS51dGlscy5zZXJpYWxpemUuc2VyaWFsaXplKG5lYXJBUEkudHJhbnNhY3Rpb25zLlNDSEVNQSwgdGhpcy5fbmVhclRyYW5zYWN0aW9uKTtcbiAgICBjb25zdCBzZXJpYWxpemVkVHhIYXNoID0gbmV3IFVpbnQ4QXJyYXkoc2hhMjU2LnNoYTI1Ni5hcnJheShzZXJpYWxpemVkVHgpKTtcbiAgICBjb25zdCBzaWduYXR1cmUgPSBzaWduZXIuc2lnbk1lc3NhZ2VpblVpbnQ4QXJyYXkoc2VyaWFsaXplZFR4SGFzaCk7XG4gICAgdGhpcy5fbmVhclNpZ25lZFRyYW5zYWN0aW9uID0gbmV3IG5lYXJBUEkudHJhbnNhY3Rpb25zLlNpZ25lZFRyYW5zYWN0aW9uKHtcbiAgICAgIHRyYW5zYWN0aW9uOiB0aGlzLl9uZWFyVHJhbnNhY3Rpb24sXG4gICAgICBzaWduYXR1cmU6IG5ldyBuZWFyQVBJLnRyYW5zYWN0aW9ucy5TaWduYXR1cmUoe1xuICAgICAgICBrZXlUeXBlOiB0aGlzLl9uZWFyVHJhbnNhY3Rpb24ucHVibGljS2V5LmtleVR5cGUsXG4gICAgICAgIGRhdGE6IHNpZ25hdHVyZSxcbiAgICAgIH0pLFxuICAgIH0pO1xuICAgIHRoaXMuYnVpbGRJbnB1dEFuZE91dHB1dCgpO1xuICB9XG5cbiAgLyoqXG4gICAqIEJ1aWxkIGlucHV0IGFuZCBvdXRwdXQgZmllbGQgZm9yIHRoaXMgdHJhbnNhY3Rpb25cbiAgICpcbiAgICovXG5cbiAgYnVpbGRJbnB1dEFuZE91dHB1dCgpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5fbmVhclRyYW5zYWN0aW9uLmFjdGlvbnMubGVuZ3RoICE9IDEpIHtcbiAgICAgIHRocm93IG5ldyBJbnZhbGlkVHJhbnNhY3Rpb25FcnJvcigndG9vIG1hbnkgYWN0aW9ucyBpbiByYXcgdHJhbnNhY3Rpb24nKTtcbiAgICB9XG5cbiAgICBpZiAodGhpcy5fbmVhclRyYW5zYWN0aW9uLmFjdGlvbnNbMF0uZW51bSA9PT0gJ3RyYW5zZmVyJykge1xuICAgICAgdGhpcy5zZXRUcmFuc2FjdGlvblR5cGUoVHJhbnNhY3Rpb25UeXBlLlNlbmQpO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aHJvdyBuZXcgSW52YWxpZFRyYW5zYWN0aW9uRXJyb3IoJ3Vuc3VwcG9ydGVkIGFjdGlvbiBpbiByYXcgdHJhbnNhY3Rpb24nKTtcbiAgICB9XG5cbiAgICBjb25zdCBvdXRwdXRzOiBFbnRyeVtdID0gW107XG4gICAgY29uc3QgaW5wdXRzOiBFbnRyeVtdID0gW107XG4gICAgc3dpdGNoICh0aGlzLnR5cGUpIHtcbiAgICAgIGNhc2UgVHJhbnNhY3Rpb25UeXBlLlNlbmQ6XG4gICAgICAgIGNvbnN0IGFtb3VudCA9IG5lYXJBUEkudXRpbHMuZm9ybWF0LmZvcm1hdE5lYXJBbW91bnQoXG4gICAgICAgICAgdGhpcy5fbmVhclRyYW5zYWN0aW9uLmFjdGlvbnNbMF0udHJhbnNmZXIuZGVwb3NpdC50b1N0cmluZygpLFxuICAgICAgICApO1xuXG4gICAgICAgIGlucHV0cy5wdXNoKHtcbiAgICAgICAgICBhZGRyZXNzOiB0aGlzLl9uZWFyVHJhbnNhY3Rpb24uc2lnbmVySWQsXG4gICAgICAgICAgdmFsdWU6IGFtb3VudCxcbiAgICAgICAgICBjb2luOiB0aGlzLl9jb2luQ29uZmlnLm5hbWUsXG4gICAgICAgIH0pO1xuICAgICAgICBvdXRwdXRzLnB1c2goe1xuICAgICAgICAgIGFkZHJlc3M6IHRoaXMuX25lYXJUcmFuc2FjdGlvbi5yZWNlaXZlcklkLFxuICAgICAgICAgIHZhbHVlOiBhbW91bnQsXG4gICAgICAgICAgY29pbjogdGhpcy5fY29pbkNvbmZpZy5uYW1lLFxuICAgICAgICB9KTtcbiAgICAgICAgYnJlYWs7XG4gICAgfVxuICAgIHRoaXMuX291dHB1dHMgPSBvdXRwdXRzO1xuICAgIHRoaXMuX2lucHV0cyA9IGlucHV0cztcbiAgfVxufVxuIl19
|
|
@@ -3,8 +3,16 @@ import { BaseCoin as CoinConfig } from '@bitgo/statics';
|
|
|
3
3
|
import { BaseTransactionBuilder } from '../baseCoin';
|
|
4
4
|
import { BaseAddress, BaseKey } from '../baseCoin/iface';
|
|
5
5
|
import { Transaction } from './transaction';
|
|
6
|
+
import * as nearAPI from 'near-api-js';
|
|
6
7
|
export declare abstract class TransactionBuilder extends BaseTransactionBuilder {
|
|
7
8
|
private _transaction;
|
|
9
|
+
private _sender;
|
|
10
|
+
private _publicKey;
|
|
11
|
+
private _receiverId;
|
|
12
|
+
private _nonce;
|
|
13
|
+
private _recentBlockHash;
|
|
14
|
+
private _actions;
|
|
15
|
+
private _signer;
|
|
8
16
|
constructor(_coinConfig: Readonly<CoinConfig>);
|
|
9
17
|
/**
|
|
10
18
|
* Initialize the transaction builder fields using the decoded transaction data
|
|
@@ -13,16 +21,36 @@ export declare abstract class TransactionBuilder extends BaseTransactionBuilder
|
|
|
13
21
|
*/
|
|
14
22
|
initBuilder(tx: Transaction): void;
|
|
15
23
|
/** @inheritdoc */
|
|
24
|
+
protected fromImplementation(rawTransaction: string): Transaction;
|
|
25
|
+
/** @inheritdoc */
|
|
26
|
+
protected buildImplementation(): Promise<Transaction>;
|
|
27
|
+
/** @inheritdoc */
|
|
28
|
+
protected signImplementation(key: BaseKey): Transaction;
|
|
29
|
+
/** @inheritdoc */
|
|
16
30
|
protected get transaction(): Transaction;
|
|
17
31
|
/** @inheritdoc */
|
|
32
|
+
protected set transaction(transaction: Transaction);
|
|
33
|
+
/** @inheritdoc */
|
|
18
34
|
validateAddress(address: BaseAddress, addressFormat?: string): void;
|
|
19
35
|
/** @inheritdoc */
|
|
20
36
|
validateKey(key: BaseKey): void;
|
|
21
37
|
/** @inheritdoc */
|
|
22
38
|
validateRawTransaction(rawTransaction: any): void;
|
|
23
39
|
/** @inheritdoc */
|
|
24
|
-
validateTransaction(transaction
|
|
40
|
+
validateTransaction(transaction: Transaction): void;
|
|
25
41
|
/** @inheritdoc */
|
|
26
42
|
validateValue(value: BigNumber): void;
|
|
43
|
+
sender(value: string): void;
|
|
44
|
+
receiverId(value: string): void;
|
|
45
|
+
nounce(value: number): void;
|
|
46
|
+
recentBlockHash(value: string): void;
|
|
47
|
+
actions(value: nearAPI.transactions.Action[]): void;
|
|
48
|
+
publicKey(value: string): void;
|
|
49
|
+
/**
|
|
50
|
+
* Builds the NEAR transaction.
|
|
51
|
+
*
|
|
52
|
+
* @return {Transaction} near sdk transaction
|
|
53
|
+
*/
|
|
54
|
+
protected buildNearTransaction(): nearAPI.transactions.Transaction;
|
|
27
55
|
}
|
|
28
56
|
//# 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;
|
|
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;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;gBAEb,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;IAS3D,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;IAQ9B,MAAM,CAAC,KAAK,EAAE,MAAM;IAIpB,UAAU,CAAC,KAAK,EAAE,MAAM;IAIxB,MAAM,CAAC,KAAK,EAAE,MAAM;IAIpB,eAAe,CAAC,KAAK,EAAE,MAAM;IAI7B,OAAO,CAAC,KAAK,EAAE,OAAO,CAAC,YAAY,CAAC,MAAM,EAAE;IAI5C,SAAS,CAAC,KAAK,EAAE,MAAM;IAG9B;;;;OAIG;IACH,SAAS,CAAC,oBAAoB,IAAI,OAAO,CAAC,YAAY,CAAC,WAAW;CAenE"}
|
|
@@ -14,14 +14,81 @@ 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 __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
18
|
+
if (k2 === undefined) k2 = k;
|
|
19
|
+
Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
|
|
20
|
+
}) : (function(o, m, k, k2) {
|
|
21
|
+
if (k2 === undefined) k2 = k;
|
|
22
|
+
o[k2] = m[k];
|
|
23
|
+
}));
|
|
24
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
25
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
26
|
+
}) : function(o, v) {
|
|
27
|
+
o["default"] = v;
|
|
28
|
+
});
|
|
29
|
+
var __importStar = (this && this.__importStar) || function (mod) {
|
|
30
|
+
if (mod && mod.__esModule) return mod;
|
|
31
|
+
var result = {};
|
|
32
|
+
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
33
|
+
__setModuleDefault(result, mod);
|
|
34
|
+
return result;
|
|
35
|
+
};
|
|
36
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
37
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
38
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
39
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
40
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
41
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
42
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
43
|
+
});
|
|
44
|
+
};
|
|
45
|
+
var __generator = (this && this.__generator) || function (thisArg, body) {
|
|
46
|
+
var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
|
|
47
|
+
return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
|
|
48
|
+
function verb(n) { return function (v) { return step([n, v]); }; }
|
|
49
|
+
function step(op) {
|
|
50
|
+
if (f) throw new TypeError("Generator is already executing.");
|
|
51
|
+
while (_) try {
|
|
52
|
+
if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
|
|
53
|
+
if (y = 0, t) op = [op[0] & 2, t.value];
|
|
54
|
+
switch (op[0]) {
|
|
55
|
+
case 0: case 1: t = op; break;
|
|
56
|
+
case 4: _.label++; return { value: op[1], done: false };
|
|
57
|
+
case 5: _.label++; y = op[1]; op = [0]; continue;
|
|
58
|
+
case 7: op = _.ops.pop(); _.trys.pop(); continue;
|
|
59
|
+
default:
|
|
60
|
+
if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
|
|
61
|
+
if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
|
|
62
|
+
if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
|
|
63
|
+
if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
|
|
64
|
+
if (t[2]) _.ops.pop();
|
|
65
|
+
_.trys.pop(); continue;
|
|
66
|
+
}
|
|
67
|
+
op = body.call(thisArg, _);
|
|
68
|
+
} catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
|
|
69
|
+
if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
|
|
70
|
+
}
|
|
71
|
+
};
|
|
72
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
73
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
74
|
+
};
|
|
17
75
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
18
76
|
exports.TransactionBuilder = void 0;
|
|
19
77
|
var baseCoin_1 = require("../baseCoin");
|
|
20
78
|
var errors_1 = require("../baseCoin/errors");
|
|
79
|
+
var transaction_1 = require("./transaction");
|
|
80
|
+
var nearAPI = __importStar(require("near-api-js"));
|
|
81
|
+
var errors_2 = require("../dot/errors");
|
|
82
|
+
var utils_1 = __importDefault(require("./utils"));
|
|
83
|
+
var assert_1 = __importDefault(require("assert"));
|
|
84
|
+
var keyPair_1 = require("./keyPair");
|
|
85
|
+
var hex = __importStar(require("@stablelib/hex"));
|
|
21
86
|
var TransactionBuilder = /** @class */ (function (_super) {
|
|
22
87
|
__extends(TransactionBuilder, _super);
|
|
23
88
|
function TransactionBuilder(_coinConfig) {
|
|
24
|
-
|
|
89
|
+
var _this = _super.call(this, _coinConfig) || this;
|
|
90
|
+
_this._transaction = new transaction_1.Transaction(_coinConfig);
|
|
91
|
+
return _this;
|
|
25
92
|
}
|
|
26
93
|
/**
|
|
27
94
|
* Initialize the transaction builder fields using the decoded transaction data
|
|
@@ -29,7 +96,38 @@ var TransactionBuilder = /** @class */ (function (_super) {
|
|
|
29
96
|
* @param {Transaction} tx the transaction data
|
|
30
97
|
*/
|
|
31
98
|
TransactionBuilder.prototype.initBuilder = function (tx) {
|
|
32
|
-
|
|
99
|
+
this._transaction = tx;
|
|
100
|
+
var nearTransaction = tx.nearTransaction;
|
|
101
|
+
this._sender = nearTransaction.signerId;
|
|
102
|
+
this._nonce = nearTransaction.nonce;
|
|
103
|
+
this._receiverId = nearTransaction.receiverId;
|
|
104
|
+
this._publicKey = hex.encode(nearTransaction.publicKey.data);
|
|
105
|
+
this._recentBlockHash = nearAPI.utils.serialize.base_encode(nearTransaction.blockHash);
|
|
106
|
+
this._actions = nearTransaction.actions;
|
|
107
|
+
};
|
|
108
|
+
/** @inheritdoc */
|
|
109
|
+
TransactionBuilder.prototype.fromImplementation = function (rawTransaction) {
|
|
110
|
+
this.validateRawTransaction(rawTransaction);
|
|
111
|
+
this.buildImplementation();
|
|
112
|
+
return this.transaction;
|
|
113
|
+
};
|
|
114
|
+
/** @inheritdoc */
|
|
115
|
+
TransactionBuilder.prototype.buildImplementation = function () {
|
|
116
|
+
return __awaiter(this, void 0, void 0, function () {
|
|
117
|
+
return __generator(this, function (_a) {
|
|
118
|
+
this.transaction.nearTransaction = this.buildNearTransaction();
|
|
119
|
+
if (this._signer) {
|
|
120
|
+
this.transaction.sign(this._signer);
|
|
121
|
+
}
|
|
122
|
+
this.transaction.buildInputAndOutput();
|
|
123
|
+
return [2 /*return*/, this.transaction];
|
|
124
|
+
});
|
|
125
|
+
});
|
|
126
|
+
};
|
|
127
|
+
/** @inheritdoc */
|
|
128
|
+
TransactionBuilder.prototype.signImplementation = function (key) {
|
|
129
|
+
this._signer = new keyPair_1.KeyPair({ prv: key.key });
|
|
130
|
+
return this._transaction;
|
|
33
131
|
};
|
|
34
132
|
Object.defineProperty(TransactionBuilder.prototype, "transaction", {
|
|
35
133
|
// region Getters and Setters
|
|
@@ -37,6 +135,10 @@ var TransactionBuilder = /** @class */ (function (_super) {
|
|
|
37
135
|
get: function () {
|
|
38
136
|
return this._transaction;
|
|
39
137
|
},
|
|
138
|
+
/** @inheritdoc */
|
|
139
|
+
set: function (transaction) {
|
|
140
|
+
this._transaction = transaction;
|
|
141
|
+
},
|
|
40
142
|
enumerable: false,
|
|
41
143
|
configurable: true
|
|
42
144
|
});
|
|
@@ -44,25 +146,78 @@ var TransactionBuilder = /** @class */ (function (_super) {
|
|
|
44
146
|
// region Validators
|
|
45
147
|
/** @inheritdoc */
|
|
46
148
|
TransactionBuilder.prototype.validateAddress = function (address, addressFormat) {
|
|
47
|
-
|
|
149
|
+
if (!utils_1.default.isValidAddress(address.address)) {
|
|
150
|
+
throw new errors_2.AddressValidationError(address.address);
|
|
151
|
+
}
|
|
48
152
|
};
|
|
49
153
|
/** @inheritdoc */
|
|
50
154
|
TransactionBuilder.prototype.validateKey = function (key) {
|
|
51
|
-
|
|
155
|
+
try {
|
|
156
|
+
new keyPair_1.KeyPair({ prv: key.key });
|
|
157
|
+
}
|
|
158
|
+
catch (_a) {
|
|
159
|
+
throw new errors_1.BuildTransactionError("Key validation failed");
|
|
160
|
+
}
|
|
52
161
|
};
|
|
53
162
|
/** @inheritdoc */
|
|
54
163
|
TransactionBuilder.prototype.validateRawTransaction = function (rawTransaction) {
|
|
55
|
-
|
|
164
|
+
try {
|
|
165
|
+
nearAPI.utils.serialize.deserialize(nearAPI.transactions.SCHEMA, nearAPI.transactions.SignedTransaction, rawTransaction);
|
|
166
|
+
}
|
|
167
|
+
catch (_a) {
|
|
168
|
+
try {
|
|
169
|
+
nearAPI.utils.serialize.deserialize(nearAPI.transactions.SCHEMA, nearAPI.transactions.Transaction, rawTransaction);
|
|
170
|
+
}
|
|
171
|
+
catch (_b) {
|
|
172
|
+
throw new errors_1.BuildTransactionError('invalid raw transaction');
|
|
173
|
+
}
|
|
174
|
+
}
|
|
56
175
|
};
|
|
57
176
|
/** @inheritdoc */
|
|
58
177
|
TransactionBuilder.prototype.validateTransaction = function (transaction) {
|
|
59
|
-
|
|
178
|
+
if (!transaction.nearTransaction) {
|
|
179
|
+
return;
|
|
180
|
+
}
|
|
181
|
+
this.validateAddress({ address: transaction.nearTransaction.signerId });
|
|
182
|
+
this.validateAddress({ address: transaction.nearTransaction.receiverId });
|
|
60
183
|
};
|
|
61
184
|
/** @inheritdoc */
|
|
62
185
|
TransactionBuilder.prototype.validateValue = function (value) {
|
|
63
|
-
|
|
186
|
+
if (value.isLessThan(0)) {
|
|
187
|
+
throw new errors_1.BuildTransactionError('Value cannot be less than zero');
|
|
188
|
+
}
|
|
189
|
+
};
|
|
190
|
+
// endregion
|
|
191
|
+
TransactionBuilder.prototype.sender = function (value) {
|
|
192
|
+
this._sender = value;
|
|
193
|
+
};
|
|
194
|
+
TransactionBuilder.prototype.receiverId = function (value) {
|
|
195
|
+
this._receiverId = value;
|
|
196
|
+
};
|
|
197
|
+
TransactionBuilder.prototype.nounce = function (value) {
|
|
198
|
+
this._nonce = value;
|
|
199
|
+
};
|
|
200
|
+
TransactionBuilder.prototype.recentBlockHash = function (value) {
|
|
201
|
+
this._recentBlockHash = value;
|
|
202
|
+
};
|
|
203
|
+
TransactionBuilder.prototype.actions = function (value) {
|
|
204
|
+
this._actions = value;
|
|
205
|
+
};
|
|
206
|
+
TransactionBuilder.prototype.publicKey = function (value) {
|
|
207
|
+
this._publicKey = value;
|
|
208
|
+
};
|
|
209
|
+
/**
|
|
210
|
+
* Builds the NEAR transaction.
|
|
211
|
+
*
|
|
212
|
+
* @return {Transaction} near sdk transaction
|
|
213
|
+
*/
|
|
214
|
+
TransactionBuilder.prototype.buildNearTransaction = function () {
|
|
215
|
+
assert_1.default(this._sender, new errors_1.BuildTransactionError('sender is required before building'));
|
|
216
|
+
assert_1.default(this._recentBlockHash, new errors_1.BuildTransactionError('recent blockhash is required before building'));
|
|
217
|
+
var tx = nearAPI.transactions.createTransaction(this._sender, nearAPI.utils.PublicKey.fromString(nearAPI.utils.serialize.base_encode(hex.decode(this._publicKey))), this._receiverId, this._nonce, this._actions, nearAPI.utils.serialize.base_decode(this._recentBlockHash));
|
|
218
|
+
return tx;
|
|
64
219
|
};
|
|
65
220
|
return TransactionBuilder;
|
|
66
221
|
}(baseCoin_1.BaseTransactionBuilder));
|
|
67
222
|
exports.TransactionBuilder = TransactionBuilder;
|
|
68
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNhY3Rpb25CdWlsZGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2NvaW4vbmVhci90cmFuc2FjdGlvbkJ1aWxkZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBRUEsd0NBQXFEO0FBQ3JELDZDQUF5RDtBQUl6RDtJQUFpRCxzQ0FBc0I7SUFHckUsNEJBQVksV0FBaUM7ZUFDM0Msa0JBQU0sV0FBVyxDQUFDO0lBQ3BCLENBQUM7SUFFRDs7OztPQUlHO0lBQ0gsd0NBQVcsR0FBWCxVQUFZLEVBQWU7UUFDekIsTUFBTSxJQUFJLDRCQUFtQixDQUFDLDZCQUE2QixDQUFDLENBQUM7SUFDL0QsQ0FBQztJQUlELHNCQUFjLDJDQUFXO1FBRnpCLDZCQUE2QjtRQUM3QixrQkFBa0I7YUFDbEI7WUFDRSxPQUFPLElBQUksQ0FBQyxZQUFZLENBQUM7UUFDM0IsQ0FBQzs7O09BQUE7SUFDRCxZQUFZO0lBRVosb0JBQW9CO0lBQ3BCLGtCQUFrQjtJQUNsQiw0Q0FBZSxHQUFmLFVBQWdCLE9BQW9CLEVBQUUsYUFBc0I7UUFDMUQsTUFBTSxJQUFJLDRCQUFtQixDQUFDLGlDQUFpQyxDQUFDLENBQUM7SUFDbkUsQ0FBQztJQUVELGtCQUFrQjtJQUNsQix3Q0FBVyxHQUFYLFVBQVksR0FBWTtRQUN0QixNQUFNLElBQUksNEJBQW1CLENBQUMsNkJBQTZCLENBQUMsQ0FBQztJQUMvRCxDQUFDO0lBRUQsa0JBQWtCO0lBQ2xCLG1EQUFzQixHQUF0QixVQUF1QixjQUFtQjtRQUN4QyxNQUFNLElBQUksNEJBQW1CLENBQUMsd0NBQXdDLENBQUMsQ0FBQztJQUMxRSxDQUFDO0lBRUQsa0JBQWtCO0lBQ2xCLGdEQUFtQixHQUFuQixVQUFvQixXQUF5QjtRQUMzQyxNQUFNLElBQUksNEJBQW1CLENBQUMscUNBQXFDLENBQUMsQ0FBQztJQUN2RSxDQUFDO0lBRUQsa0JBQWtCO0lBQ2xCLDBDQUFhLEdBQWIsVUFBYyxLQUFnQjtRQUM1QixNQUFNLElBQUksNEJBQW1CLENBQUMsK0JBQStCLENBQUMsQ0FBQztJQUNqRSxDQUFDO0lBRUgseUJBQUM7QUFBRCxDQUFDLEFBakRELENBQWlELGlDQUFzQixHQWlEdEU7QUFqRHFCLGdEQUFrQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBCaWdOdW1iZXIgZnJvbSAnYmlnbnVtYmVyLmpzJztcbmltcG9ydCB7IEJhc2VDb2luIGFzIENvaW5Db25maWcgfSBmcm9tICdAYml0Z28vc3RhdGljcyc7XG5pbXBvcnQgeyBCYXNlVHJhbnNhY3Rpb25CdWlsZGVyIH0gZnJvbSAnLi4vYmFzZUNvaW4nO1xuaW1wb3J0IHsgTm90SW1wbGVtZW50ZWRFcnJvciB9IGZyb20gJy4uL2Jhc2VDb2luL2Vycm9ycyc7XG5pbXBvcnQgeyBCYXNlQWRkcmVzcywgQmFzZUtleSB9IGZyb20gJy4uL2Jhc2VDb2luL2lmYWNlJztcbmltcG9ydCB7IFRyYW5zYWN0aW9uIH0gZnJvbSAnLi90cmFuc2FjdGlvbic7XG5cbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBUcmFuc2FjdGlvbkJ1aWxkZXIgZXh0ZW5kcyBCYXNlVHJhbnNhY3Rpb25CdWlsZGVyIHtcbiAgcHJpdmF0ZSBfdHJhbnNhY3Rpb246IFRyYW5zYWN0aW9uO1xuXG4gIGNvbnN0cnVjdG9yKF9jb2luQ29uZmlnOiBSZWFkb25seTxDb2luQ29uZmlnPikge1xuICAgIHN1cGVyKF9jb2luQ29uZmlnKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBJbml0aWFsaXplIHRoZSB0cmFuc2FjdGlvbiBidWlsZGVyIGZpZWxkcyB1c2luZyB0aGUgZGVjb2RlZCB0cmFuc2FjdGlvbiBkYXRhXG4gICAqXG4gICAqIEBwYXJhbSB7VHJhbnNhY3Rpb259IHR4IHRoZSB0cmFuc2FjdGlvbiBkYXRhXG4gICAqL1xuICBpbml0QnVpbGRlcih0eDogVHJhbnNhY3Rpb24pOiB2b2lkIHtcbiAgICB0aHJvdyBuZXcgTm90SW1wbGVtZW50ZWRFcnJvcignaW5pdEJ1aWxkZXIgbm90IGltcGxlbWVudGVkJyk7XG4gIH1cblxuICAvLyByZWdpb24gR2V0dGVycyBhbmQgU2V0dGVyc1xuICAvKiogQGluaGVyaXRkb2MgKi9cbiAgcHJvdGVjdGVkIGdldCB0cmFuc2FjdGlvbigpOiBUcmFuc2FjdGlvbiB7XG4gICAgcmV0dXJuIHRoaXMuX3RyYW5zYWN0aW9uO1xuICB9XG4gIC8vIGVuZHJlZ2lvblxuXG4gIC8vIHJlZ2lvbiBWYWxpZGF0b3JzXG4gIC8qKiBAaW5oZXJpdGRvYyAqL1xuICB2YWxpZGF0ZUFkZHJlc3MoYWRkcmVzczogQmFzZUFkZHJlc3MsIGFkZHJlc3NGb3JtYXQ/OiBzdHJpbmcpOiB2b2lkIHtcbiAgICB0aHJvdyBuZXcgTm90SW1wbGVtZW50ZWRFcnJvcigndmFsaWRhdGVBZGRyZXNzIG5vdCBpbXBsZW1lbnRlZCcpO1xuICB9XG5cbiAgLyoqIEBpbmhlcml0ZG9jICovXG4gIHZhbGlkYXRlS2V5KGtleTogQmFzZUtleSk6IHZvaWQge1xuICAgIHRocm93IG5ldyBOb3RJbXBsZW1lbnRlZEVycm9yKCd2YWxpZGF0ZUtleSBub3QgaW1wbGVtZW50ZWQnKTtcbiAgfVxuXG4gIC8qKiBAaW5oZXJpdGRvYyAqL1xuICB2YWxpZGF0ZVJhd1RyYW5zYWN0aW9uKHJhd1RyYW5zYWN0aW9uOiBhbnkpOiB2b2lkIHtcbiAgICB0aHJvdyBuZXcgTm90SW1wbGVtZW50ZWRFcnJvcigndmFsaWRhdGVSYXdUcmFuc2FjdGlvbiBub3QgaW1wbGVtZW50ZWQnKTtcbiAgfVxuXG4gIC8qKiBAaW5oZXJpdGRvYyAqL1xuICB2YWxpZGF0ZVRyYW5zYWN0aW9uKHRyYW5zYWN0aW9uPzogVHJhbnNhY3Rpb24pOiB2b2lkIHtcbiAgICB0aHJvdyBuZXcgTm90SW1wbGVtZW50ZWRFcnJvcigndmFsaWRhdGVUcmFuc2FjdGlvbiBub3QgaW1wbGVtZW50ZWQnKTtcbiAgfVxuXG4gIC8qKiBAaW5oZXJpdGRvYyAqL1xuICB2YWxpZGF0ZVZhbHVlKHZhbHVlOiBCaWdOdW1iZXIpOiB2b2lkIHtcbiAgICB0aHJvdyBuZXcgTm90SW1wbGVtZW50ZWRFcnJvcigndmFsaWRhdGVWYWx1ZSBub3QgaW1wbGVtZW50ZWQnKTtcbiAgfVxuICAvLyBlbmRyZWdpb25cbn1cbiJdfQ==
|
|
223
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNhY3Rpb25CdWlsZGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2NvaW4vbmVhci90cmFuc2FjdGlvbkJ1aWxkZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUVBLHdDQUFxRDtBQUNyRCw2Q0FBMkQ7QUFFM0QsNkNBQTRDO0FBQzVDLG1EQUF1QztBQUN2Qyx3Q0FBdUQ7QUFDdkQsa0RBQTRCO0FBQzVCLGtEQUE0QjtBQUM1QixxQ0FBb0M7QUFDcEMsa0RBQXNDO0FBRXRDO0lBQWlELHNDQUFzQjtJQVdyRSw0QkFBWSxXQUFpQztRQUE3QyxZQUNFLGtCQUFNLFdBQVcsQ0FBQyxTQUVuQjtRQURDLEtBQUksQ0FBQyxZQUFZLEdBQUcsSUFBSSx5QkFBVyxDQUFDLFdBQVcsQ0FBQyxDQUFDOztJQUNuRCxDQUFDO0lBRUQ7Ozs7T0FJRztJQUNILHdDQUFXLEdBQVgsVUFBWSxFQUFlO1FBQ3pCLElBQUksQ0FBQyxZQUFZLEdBQUcsRUFBRSxDQUFDO1FBQ3ZCLElBQU0sZUFBZSxHQUFHLEVBQUUsQ0FBQyxlQUFlLENBQUM7UUFDM0MsSUFBSSxDQUFDLE9BQU8sR0FBRyxlQUFlLENBQUMsUUFBUSxDQUFDO1FBQ3hDLElBQUksQ0FBQyxNQUFNLEdBQUcsZUFBZSxDQUFDLEtBQUssQ0FBQztRQUNwQyxJQUFJLENBQUMsV0FBVyxHQUFHLGVBQWUsQ0FBQyxVQUFVLENBQUM7UUFDOUMsSUFBSSxDQUFDLFVBQVUsR0FBRyxHQUFHLENBQUMsTUFBTSxDQUFDLGVBQWUsQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDN0QsSUFBSSxDQUFDLGdCQUFnQixHQUFHLE9BQU8sQ0FBQyxLQUFLLENBQUMsU0FBUyxDQUFDLFdBQVcsQ0FBQyxlQUFlLENBQUMsU0FBUyxDQUFDLENB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Q0FBQztRQUV6RyxJQUFNLEVBQUUsR0FBRyxPQUFPLENBQUMsWUFBWSxDQUFDLGlCQUFpQixDQUMvQyxJQUFJLENBQUMsT0FBTyxFQUNaLE9BQU8sQ0FBQyxLQUFLLENBQUMsU0FBUyxDQUFDLFVBQVUsQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLFNBQVMsQ0FBQyxXQUFXLENBQUMsR0FBRyxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQyxFQUNwRyxJQUFJLENBQUMsV0FBVyxFQUNoQixJQUFJLENBQUMsTUFBTSxFQUNYLElBQUksQ0FBQyxRQUFRLEVBQ2IsT0FBTyxDQUFDLEtBQUssQ0FBQyxTQUFTLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxDQUMzRCxDQUFDO1FBRUYsT0FBTyxFQUFFLENBQUM7SUFDWixDQUFDO0lBQ0gseUJBQUM7QUFBRCxDQUFDLEFBdktELENBQWlELGlDQUFzQixHQXVLdEU7QUF2S3FCLGdEQUFrQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBCaWdOdW1iZXIgZnJvbSAnYmlnbnVtYmVyLmpzJztcbmltcG9ydCB7IEJhc2VDb2luIGFzIENvaW5Db25maWcgfSBmcm9tICdAYml0Z28vc3RhdGljcyc7XG5pbXBvcnQgeyBCYXNlVHJhbnNhY3Rpb25CdWlsZGVyIH0gZnJvbSAnLi4vYmFzZUNvaW4nO1xuaW1wb3J0IHsgQnVpbGRUcmFuc2FjdGlvbkVycm9yIH0gZnJvbSAnLi4vYmFzZUNvaW4vZXJyb3JzJztcbmltcG9ydCB7IEJhc2VBZGRyZXNzLCBCYXNlS2V5IH0gZnJvbSAnLi4vYmFzZUNvaW4vaWZhY2UnO1xuaW1wb3J0IHsgVHJhbnNhY3Rpb24gfSBmcm9tICcuL3RyYW5zYWN0aW9uJztcbmltcG9ydCAqIGFzIG5lYXJBUEkgZnJvbSAnbmVhci1hcGktanMnO1xuaW1wb3J0IHsgQWRkcmVzc1ZhbGlkYXRpb25FcnJvciB9IGZyb20gJy4uL2RvdC9lcnJvcnMnO1xuaW1wb3J0IHV0aWxzIGZyb20gJy4vdXRpbHMnO1xuaW1wb3J0IGFzc2VydCBmcm9tICdhc3NlcnQnO1xuaW1wb3J0IHsgS2V5UGFpciB9IGZyb20gJy4va2V5UGFpcic7XG5pbXBvcnQgKiBhcyBoZXggZnJvbSAnQHN0YWJsZWxpYi9oZXgnO1xuXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgVHJhbnNhY3Rpb25CdWlsZGVyIGV4dGVuZHMgQmFzZVRyYW5zYWN0aW9uQnVpbGRlciB7XG4gIHByaXZhdGUgX3RyYW5zYWN0aW9uOiBUcmFuc2FjdGlvbjtcblxuICBwcml2YXRlIF9zZW5kZXI6IHN0cmluZztcbiAgcHJpdmF0ZSBfcHVibGljS2V5OiBzdHJpbmc7XG4gIHByaXZhdGUgX3JlY2VpdmVySWQ6IHN0cmluZztcbiAgcHJpdmF0ZSBfbm9uY2U6IG51bWJlcjtcbiAgcHJpdmF0ZSBfcmVjZW50QmxvY2tIYXNoOiBzdHJpbmc7XG4gIHByaXZhdGUgX2FjdGlvbnM6IG5lYXJBUEkudHJhbnNhY3Rpb25zLkFjdGlvbltdO1xuICBwcml2YXRlIF9zaWduZXI6IEtleVBhaXI7XG5cbiAgY29uc3RydWN0b3IoX2NvaW5Db25maWc6IFJlYWRvbmx5PENvaW5Db25maWc+KSB7XG4gICAgc3VwZXIoX2NvaW5Db25maWcpO1xuICAgIHRoaXMuX3RyYW5zYWN0aW9uID0gbmV3IFRyYW5zYWN0aW9uKF9jb2luQ29uZmlnKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBJbml0aWFsaXplIHRoZSB0cmFuc2FjdGlvbiBidWlsZGVyIGZpZWxkcyB1c2luZyB0aGUgZGVjb2RlZCB0cmFuc2FjdGlvbiBkYXRhXG4gICAqXG4gICAqIEBwYXJhbSB7VHJhbnNhY3Rpb259IHR4IHRoZSB0cmFuc2FjdGlvbiBkYXRhXG4gICAqL1xuICBpbml0QnVpbGRlcih0eDogVHJhbnNhY3Rpb24pOiB2b2lkIHtcbiAgICB0aGlzLl90cmFuc2FjdGlvbiA9IHR4O1xuICAgIGNvbnN0IG5lYXJUcmFuc2FjdGlvbiA9IHR4Lm5lYXJUcmFuc2FjdGlvbjtcbiAgICB0aGlzLl9zZW5kZXIgPSBuZWFyVHJhbnNhY3Rpb24uc2lnbmVySWQ7XG4gICAgdGhpcy5fbm9uY2UgPSBuZWFyVHJhbnNhY3Rpb24ubm9uY2U7XG4gICAgdGhpcy5fcmVjZWl2ZXJJZCA9IG5lYXJUcmFuc2FjdGlvbi5yZWNlaXZlcklkO1xuICAgIHRoaXMuX3B1YmxpY0tleSA9IGhleC5lbmNvZGUobmVhclRyYW5zYWN0aW9uLnB1YmxpY0tleS5kYXRhKTtcbiAgICB0aGlzLl9yZWNlbnRCbG9ja0hhc2ggPSBuZWFyQVBJLnV0aWxzLnNlcmlhbGl6ZS5iYXNlX2VuY29kZShuZWFyVHJhbnNhY3Rpb24uYmxvY2tIYXNoKTtcbiAgICB0aGlzLl9hY3Rpb25zID0gbmVhclRyYW5zYWN0aW9uLmFjdGlvbnM7XG4gIH1cblxuICAvKiogQGluaGVyaXRkb2MgKi9cbiAgcHJvdGVjdGVkIGZyb21JbXBsZW1lbnRhdGlvbihyYXdUcmFuc2FjdGlvbjogc3RyaW5nKTogVHJhbnNhY3Rpb24ge1xuICAgIHRoaXMudmFsaWRhdGVSYXdUcmFuc2FjdGlvbihyYXdUcmFuc2FjdGlvbik7XG4gICAgdGhpcy5idWlsZEltcGxlbWVudGF0aW9uKCk7XG4gICAgcmV0dXJuIHRoaXMudHJhbnNhY3Rpb247XG4gIH1cblxuICAvKiogQGluaGVyaXRkb2MgKi9cbiAgcHJvdGVjdGVkIGFzeW5jIGJ1aWxkSW1wbGVtZW50YXRpb24oKTogUHJvbWlzZTxUcmFuc2FjdGlvbj4ge1xuICAgIHRoaXMudHJhbnNhY3Rpb24ubmVhclRyYW5zYWN0aW9uID0gdGhpcy5idWlsZE5lYXJUcmFuc2FjdGlvbigpO1xuICAgIGlmICh0aGlzLl9zaWduZXIpIHtcbiAgICAgIHRoaXMudHJhbnNhY3Rpb24uc2lnbih0aGlzLl9zaWduZXIpO1xuICAgIH1cbiAgICB0aGlzLnRyYW5zYWN0aW9uLmJ1aWxkSW5wdXRBbmRPdXRwdXQoKTtcbiAgICByZXR1cm4gdGhpcy50cmFuc2FjdGlvbjtcbiAgfVxuXG4gIC8qKiBAaW5oZXJpdGRvYyAqL1xuICBwcm90ZWN0ZWQgc2lnbkltcGxlbWVudGF0aW9uKGtleTogQmFzZUtleSk6IFRyYW5zYWN0aW9uIHtcbiAgICB0aGlzLl9zaWduZXIgPSBuZXcgS2V5UGFpcih7IHBydjoga2V5LmtleSB9KTtcbiAgICByZXR1cm4gdGhpcy5fdHJhbnNhY3Rpb247XG4gIH1cblxuICAvLyByZWdpb24gR2V0dGVycyBhbmQgU2V0dGVyc1xuICAvKiogQGluaGVyaXRkb2MgKi9cbiAgcHJvdGVjdGVkIGdldCB0cmFuc2FjdGlvbigpOiBUcmFuc2FjdGlvbiB7XG4gICAgcmV0dXJuIHRoaXMuX3RyYW5zYWN0aW9uO1xuICB9XG5cbiAgLyoqIEBpbmhlcml0ZG9jICovXG4gIHByb3RlY3RlZCBzZXQgdHJhbnNhY3Rpb24odHJhbnNhY3Rpb246IFRyYW5zYWN0aW9uKSB7XG4gICAgdGhpcy5fdHJhbnNhY3Rpb24gPSB0cmFuc2FjdGlvbjtcbiAgfVxuXG4gIC8vIGVuZHJlZ2lvblxuXG4gIC8vIHJlZ2lvbiBWYWxpZGF0b3JzXG4gIC8qKiBAaW5oZXJpdGRvYyAqL1xuICB2YWxpZGF0ZUFkZHJlc3MoYWRkcmVzczogQmFzZUFkZHJlc3MsIGFkZHJlc3NGb3JtYXQ/OiBzdHJpbmcpOiB2b2lkIHtcbiAgICBpZiAoIXV0aWxzLmlzVmFsaWRBZGRyZXNzKGFkZHJlc3MuYWRkcmVzcykpIHtcbiAgICAgIHRocm93IG5ldyBBZGRyZXNzVmFsaWRhdGlvbkVycm9yKGFkZHJlc3MuYWRkcmVzcyk7XG4gICAgfVxuICB9XG5cbiAgLyoqIEBpbmhlcml0ZG9jICovXG4gIHZhbGlkYXRlS2V5KGtleTogQmFzZUtleSk6IHZvaWQge1xuICAgIHRyeSB7XG4gICAgICBuZXcgS2V5UGFpcih7IHBydjoga2V5LmtleSB9KTtcbiAgICB9IGNhdGNoIHtcbiAgICAgIHRocm93IG5ldyBCdWlsZFRyYW5zYWN0aW9uRXJyb3IoYEtleSB2YWxpZGF0aW9uIGZhaWxlZGApO1xuICAgIH1cbiAgfVxuXG4gIC8qKiBAaW5oZXJpdGRvYyAqL1xuICB2YWxpZGF0ZVJhd1RyYW5zYWN0aW9uKHJhd1RyYW5zYWN0aW9uOiBhbnkpOiB2b2lkIHtcbiAgICB0cnkge1xuICAgICAgbmVhckFQSS51dGlscy5zZXJpYWxpemUuZGVzZXJpYWxpemUoXG4gICAgICAgIG5lYXJBUEkudHJhbnNhY3Rpb25zLlNDSEVNQSxcbiAgICAgICAgbmVhckFQSS50cmFuc2FjdGlvbnMuU2lnbmVkVHJhbnNhY3Rpb24sXG4gICAgICAgIHJhd1RyYW5zYWN0aW9uLFxuICAgICAgKTtcbiAgICB9IGNhdGNoIHtcbiAgICAgIHRyeSB7XG4gICAgICAgIG5lYXJBUEkudXRpbHMuc2VyaWFsaXplLmRlc2VyaWFsaXplKFxuICAgICAgICAgIG5lYXJBUEkudHJhbnNhY3Rpb25zLlNDSEVNQSxcbiAgICAgICAgICBuZWFyQVBJLnRyYW5zYWN0aW9ucy5UcmFuc2FjdGlvbixcbiAgICAgICAgICByYXdUcmFuc2FjdGlvbixcbiAgICAgICAgKTtcbiAgICAgIH0gY2F0Y2gge1xuICAgICAgICB0aHJvdyBuZXcgQnVpbGRUcmFuc2FjdGlvbkVycm9yKCdpbnZhbGlkIHJhdyB0cmFuc2FjdGlvbicpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8qKiBAaW5oZXJpdGRvYyAqL1xuICB2YWxpZGF0ZVRyYW5zYWN0aW9uKHRyYW5zYWN0aW9uOiBUcmFuc2FjdGlvbik6IHZvaWQge1xuICAgIGlmICghdHJhbnNhY3Rpb24ubmVhclRyYW5zYWN0aW9uKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIHRoaXMudmFsaWRhdGVBZGRyZXNzKHsgYWRkcmVzczogdHJhbnNhY3Rpb24ubmVhclRyYW5zYWN0aW9uLnNpZ25lcklkIH0pO1xuICAgIHRoaXMudmFsaWRhdGVBZGRyZXNzKHsgYWRkcmVzczogdHJhbnNhY3Rpb24ubmVhclRyYW5zYWN0aW9uLnJlY2VpdmVySWQgfSk7XG4gIH1cblxuICAvKiogQGluaGVyaXRkb2MgKi9cbiAgdmFsaWRhdGVWYWx1ZSh2YWx1ZTogQmlnTnVtYmVyKTogdm9pZCB7XG4gICAgaWYgKHZhbHVlLmlzTGVzc1RoYW4oMCkpIHtcbiAgICAgIHRocm93IG5ldyBCdWlsZFRyYW5zYWN0aW9uRXJyb3IoJ1ZhbHVlIGNhbm5vdCBiZSBsZXNzIHRoYW4gemVybycpO1xuICAgIH1cbiAgfVxuXG4gIC8vIGVuZHJlZ2lvblxuXG4gIHB1YmxpYyBzZW5kZXIodmFsdWU6IHN0cmluZykge1xuICAgIHRoaXMuX3NlbmRlciA9IHZhbHVlO1xuICB9XG5cbiAgcHVibGljIHJlY2VpdmVySWQodmFsdWU6IHN0cmluZykge1xuICAgIHRoaXMuX3JlY2VpdmVySWQgPSB2YWx1ZTtcbiAgfVxuXG4gIHB1YmxpYyBub3VuY2UodmFsdWU6IG51bWJlcikge1xuICAgIHRoaXMuX25vbmNlID0gdmFsdWU7XG4gIH1cblxuICBwdWJsaWMgcmVjZW50QmxvY2tIYXNoKHZhbHVlOiBzdHJpbmcpIHtcbiAgICB0aGlzLl9yZWNlbnRCbG9ja0hhc2ggPSB2YWx1ZTtcbiAgfVxuXG4gIHB1YmxpYyBhY3Rpb25zKHZhbHVlOiBuZWFyQVBJLnRyYW5zYWN0aW9ucy5BY3Rpb25bXSkge1xuICAgIHRoaXMuX2FjdGlvbnMgPSB2YWx1ZTtcbiAgfVxuXG4gIHB1YmxpYyBwdWJsaWNLZXkodmFsdWU6IHN0cmluZykge1xuICAgIHRoaXMuX3B1YmxpY0tleSA9IHZhbHVlO1xuICB9XG4gIC8qKlxuICAgKiBCdWlsZHMgdGhlIE5FQVIgdHJhbnNhY3Rpb24uXG4gICAqXG4gICAqIEByZXR1cm4ge1RyYW5zYWN0aW9ufSBuZWFyIHNkayB0cmFuc2FjdGlvblxuICAgKi9cbiAgcHJvdGVjdGVkIGJ1aWxkTmVhclRyYW5zYWN0aW9uKCk6IG5lYXJBUEkudHJhbnNhY3Rpb25zLlRyYW5zYWN0aW9uIHtcbiAgICBhc3NlcnQodGhpcy5fc2VuZGVyLCBuZXcgQnVpbGRUcmFuc2FjdGlvbkVycm9yKCdzZW5kZXIgaXMgcmVxdWlyZWQgYmVmb3JlIGJ1aWxkaW5nJykpO1xuICAgIGFzc2VydCh0aGlzLl9yZWNlbnRCbG9ja0hhc2gsIG5ldyBCdWlsZFRyYW5zYWN0aW9uRXJyb3IoJ3JlY2VudCBibG9ja2hhc2ggaXMgcmVxdWlyZWQgYmVmb3JlIGJ1aWxkaW5nJykpO1xuXG4gICAgY29uc3QgdHggPSBuZWFyQVBJLnRyYW5zYWN0aW9ucy5jcmVhdGVUcmFuc2FjdGlvbihcbiAgICAgIHRoaXMuX3NlbmRlcixcbiAgICAgIG5lYXJBUEkudXRpbHMuUHVibGljS2V5LmZyb21TdHJpbmcobmVhckFQSS51dGlscy5zZXJpYWxpemUuYmFzZV9lbmNvZGUoaGV4LmRlY29kZSh0aGlzLl9wdWJsaWNLZXkpKSksXG4gICAgICB0aGlzLl9yZWNlaXZlcklkLFxuICAgICAgdGhpcy5fbm9uY2UsXG4gICAgICB0aGlzLl9hY3Rpb25zLFxuICAgICAgbmVhckFQSS51dGlscy5zZXJpYWxpemUuYmFzZV9kZWNvZGUodGhpcy5fcmVjZW50QmxvY2tIYXNoKSxcbiAgICApO1xuXG4gICAgcmV0dXJuIHR4O1xuICB9XG59XG4iXX0=
|
|
@@ -7,7 +7,7 @@ import { Transaction } from './transaction';
|
|
|
7
7
|
export declare class TransactionBuilderFactory extends BaseTransactionBuilderFactory {
|
|
8
8
|
constructor(_coinConfig: Readonly<CoinConfig>);
|
|
9
9
|
/** @inheritdoc */
|
|
10
|
-
from(raw:
|
|
10
|
+
from(raw: string): TransactionBuilder;
|
|
11
11
|
/** @inheritdoc */
|
|
12
12
|
getWalletInitializationBuilder(tx?: Transaction): WalletInitializationBuilder;
|
|
13
13
|
/** @inheritdoc */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"transactionBuilderFactory.d.ts","sourceRoot":"","sources":["../../../../src/coin/near/transactionBuilderFactory.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,IAAI,UAAU,EAAE,MAAM,gBAAgB,CAAC;AACxD,OAAO,EAAE,6BAA6B,
|
|
1
|
+
{"version":3,"file":"transactionBuilderFactory.d.ts","sourceRoot":"","sources":["../../../../src/coin/near/transactionBuilderFactory.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,IAAI,UAAU,EAAE,MAAM,gBAAgB,CAAC;AACxD,OAAO,EAAE,6BAA6B,EAAmB,MAAM,aAAa,CAAC;AAE7E,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EAAE,2BAA2B,EAAE,MAAM,+BAA+B,CAAC;AAC5E,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAE5C,qBAAa,yBAA0B,SAAQ,6BAA6B;gBAC9D,WAAW,EAAE,QAAQ,CAAC,UAAU,CAAC;IAI7C,kBAAkB;IAClB,IAAI,CAAC,GAAG,EAAE,MAAM,GAAG,kBAAkB;IAiBrC,kBAAkB;IAClB,8BAA8B,CAAC,EAAE,CAAC,EAAE,WAAW,GAAG,2BAA2B;IAI7E,kBAAkB;IAClB,kBAAkB,CAAC,EAAE,CAAC,EAAE,WAAW,GAAG,eAAe;IAIrD;;;;;;OAMG;IACH,OAAO,CAAC,MAAM,CAAC,iBAAiB;CAMjC"}
|
|
@@ -20,6 +20,7 @@ var baseCoin_1 = require("../baseCoin");
|
|
|
20
20
|
var errors_1 = require("../baseCoin/errors");
|
|
21
21
|
var transferBuilder_1 = require("./transferBuilder");
|
|
22
22
|
var walletInitializationBuilder_1 = require("./walletInitializationBuilder");
|
|
23
|
+
var transaction_1 = require("./transaction");
|
|
23
24
|
var TransactionBuilderFactory = /** @class */ (function (_super) {
|
|
24
25
|
__extends(TransactionBuilderFactory, _super);
|
|
25
26
|
function TransactionBuilderFactory(_coinConfig) {
|
|
@@ -27,7 +28,21 @@ var TransactionBuilderFactory = /** @class */ (function (_super) {
|
|
|
27
28
|
}
|
|
28
29
|
/** @inheritdoc */
|
|
29
30
|
TransactionBuilderFactory.prototype.from = function (raw) {
|
|
30
|
-
|
|
31
|
+
try {
|
|
32
|
+
var tx = new transaction_1.Transaction(this._coinConfig);
|
|
33
|
+
tx.fromRawTransaction(raw);
|
|
34
|
+
switch (tx.type) {
|
|
35
|
+
case baseCoin_1.TransactionType.Send:
|
|
36
|
+
return this.getTransferBuilder(tx);
|
|
37
|
+
case baseCoin_1.TransactionType.WalletInitialization:
|
|
38
|
+
return this.getWalletInitializationBuilder(tx);
|
|
39
|
+
default:
|
|
40
|
+
throw new errors_1.InvalidTransactionError('unsupported transaction');
|
|
41
|
+
}
|
|
42
|
+
}
|
|
43
|
+
catch (e) {
|
|
44
|
+
throw e;
|
|
45
|
+
}
|
|
31
46
|
};
|
|
32
47
|
/** @inheritdoc */
|
|
33
48
|
TransactionBuilderFactory.prototype.getWalletInitializationBuilder = function (tx) {
|
|
@@ -53,4 +68,4 @@ var TransactionBuilderFactory = /** @class */ (function (_super) {
|
|
|
53
68
|
return TransactionBuilderFactory;
|
|
54
69
|
}(baseCoin_1.BaseTransactionBuilderFactory));
|
|
55
70
|
exports.TransactionBuilderFactory = TransactionBuilderFactory;
|
|
56
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
71
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNhY3Rpb25CdWlsZGVyRmFjdG9yeS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9jb2luL25lYXIvdHJhbnNhY3Rpb25CdWlsZGVyRmFjdG9yeS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFDQSx3Q0FBNkU7QUFDN0UsNkNBQTZEO0FBQzdELHFEQUFvRDtBQUNwRCw2RUFBNEU7QUFFNUUsNkNBQTRDO0FBRTVDO0lBQStDLDZDQUE2QjtJQUMxRSxtQ0FBWSxXQUFpQztlQUMzQyxrQkFBTSxXQUFXLENBQUM7SUFDcEIsQ0FBQztJQUVELGtCQUFrQjtJQUNsQix3Q0FBSSxHQUFKLFVBQUssR0FBVztRQUNkLElBQUk7WUFDRixJQUFNLEVBQUUsR0FBRyxJQUFJLHlCQUFXLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDO1lBQzdDLEVBQUUsQ0FBQyxrQkFBa0IsQ0FBQyxHQUFHLENBQUMsQ0FBQztZQUMzQixRQUFRLEVBQUUsQ0FBQyxJQUFJLEVBQUU7Z0JBQ2YsS0FBSywwQkFBZSxDQUFDLElBQUk7b0JBQ3ZCLE9BQU8sSUFBSSxDQUFDLGtCQUFrQixDQUFDLEVBQUUsQ0FBQyxDQUFDO2dCQUNyQyxLQUFLLDBCQUFlLENBQUMsb0JBQW9CO29CQUN2QyxPQUFPLElBQUksQ0FBQyw4QkFBOEIsQ0FBQyxFQUFFLENBQUMsQ0FBQztnQkFDakQ7b0JBQ0UsTUFBTSxJQUFJLGdDQUF1QixDQUFDLHlCQUF5QixDQUFDLENBQUM7YUFDaEU7U0FDRjtRQUFDLE9BQU8sQ0FBQyxFQUFFO1lBQ1YsTUFBTSxDQUFDLENBQUM7U0FDVDtJQUNILENBQUM7SUFFRCxrQkFBa0I7SUFDbEIsa0VBQThCLEdBQTlCLFVBQStCLEVBQWdCO1FBQzdDLE9BQU8seUJBQXlCLENBQUMsaUJBQWlCLENBQUMsRUFBRSxFQUFFLElBQUkseURBQTJCLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUM7SUFDNUcsQ0FBQztJQUVELGtCQUFrQjtJQUNsQixzREFBa0IsR0FBbEIsVUFBbUIsRUFBZ0I7UUFDakMsT0FBTyx5QkFBeUIsQ0FBQyxpQkFBaUIsQ0FBQyxFQUFFLEVBQUUsSUFBSSxpQ0FBZSxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsQ0FBQyxDQUFDO0lBQ2hHLENBQUM7SUFFRDs7Ozs7O09BTUc7SUFDWSwyQ0FBaUIsR0FBaEMsVUFBK0QsRUFBMkIsRUFBRSxPQUFVO1FBQ3BHLElBQUksRUFBRSxFQUFFO1lBQ04sT0FBTyxDQUFDLFdBQVcsQ0FBQyxFQUFFLENBQUMsQ0FBQztTQUN6QjtRQUNELE9BQU8sT0FBTyxDQUFDO0lBQ2pCLENBQUM7SUFDSCxnQ0FBQztBQUFELENBQUMsQUE5Q0QsQ0FBK0Msd0NBQTZCLEdBOEMzRTtBQTlDWSw4REFBeUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBCYXNlQ29pbiBhcyBDb2luQ29uZmlnIH0gZnJvbSAnQGJpdGdvL3N0YXRpY3MnO1xuaW1wb3J0IHsgQmFzZVRyYW5zYWN0aW9uQnVpbGRlckZhY3RvcnksIFRyYW5zYWN0aW9uVHlwZSB9IGZyb20gJy4uL2Jhc2VDb2luJztcbmltcG9ydCB7IEludmFsaWRUcmFuc2FjdGlvbkVycm9yIH0gZnJvbSAnLi4vYmFzZUNvaW4vZXJyb3JzJztcbmltcG9ydCB7IFRyYW5zZmVyQnVpbGRlciB9IGZyb20gJy4vdHJhbnNmZXJCdWlsZGVyJztcbmltcG9ydCB7IFdhbGxldEluaXRpYWxpemF0aW9uQnVpbGRlciB9IGZyb20gJy4vd2FsbGV0SW5pdGlhbGl6YXRpb25CdWlsZGVyJztcbmltcG9ydCB7IFRyYW5zYWN0aW9uQnVpbGRlciB9IGZyb20gJy4vdHJhbnNhY3Rpb25CdWlsZGVyJztcbmltcG9ydCB7IFRyYW5zYWN0aW9uIH0gZnJvbSAnLi90cmFuc2FjdGlvbic7XG5cbmV4cG9ydCBjbGFzcyBUcmFuc2FjdGlvbkJ1aWxkZXJGYWN0b3J5IGV4dGVuZHMgQmFzZVRyYW5zYWN0aW9uQnVpbGRlckZhY3Rvcnkge1xuICBjb25zdHJ1Y3RvcihfY29pbkNvbmZpZzogUmVhZG9ubHk8Q29pbkNvbmZpZz4pIHtcbiAgICBzdXBlcihfY29pbkNvbmZpZyk7XG4gIH1cblxuICAvKiogQGluaGVyaXRkb2MgKi9cbiAgZnJvbShyYXc6IHN0cmluZyk6IFRyYW5zYWN0aW9uQnVpbGRlciB7XG4gICAgdHJ5IHtcbiAgICAgIGNvbnN0IHR4ID0gbmV3IFRyYW5zYWN0aW9uKHRoaXMuX2NvaW5Db25maWcpO1xuICAgICAgdHguZnJvbVJhd1RyYW5zYWN0aW9uKHJhdyk7XG4gICAgICBzd2l0Y2ggKHR4LnR5cGUpIHtcbiAgICAgICAgY2FzZSBUcmFuc2FjdGlvblR5cGUuU2VuZDpcbiAgICAgICAgICByZXR1cm4gdGhpcy5nZXRUcmFuc2ZlckJ1aWxkZXIodHgpO1xuICAgICAgICBjYXNlIFRyYW5zYWN0aW9uVHlwZS5XYWxsZXRJbml0aWFsaXphdGlvbjpcbiAgICAgICAgICByZXR1cm4gdGhpcy5nZXRXYWxsZXRJbml0aWFsaXphdGlvbkJ1aWxkZXIodHgpO1xuICAgICAgICBkZWZhdWx0OlxuICAgICAgICAgIHRocm93IG5ldyBJbnZhbGlkVHJhbnNhY3Rpb25FcnJvcigndW5zdXBwb3J0ZWQgdHJhbnNhY3Rpb24nKTtcbiAgICAgIH1cbiAgICB9IGNhdGNoIChlKSB7XG4gICAgICB0aHJvdyBlO1xuICAgIH1cbiAgfVxuXG4gIC8qKiBAaW5oZXJpdGRvYyAqL1xuICBnZXRXYWxsZXRJbml0aWFsaXphdGlvbkJ1aWxkZXIodHg/OiBUcmFuc2FjdGlvbik6IFdhbGxldEluaXRpYWxpemF0aW9uQnVpbGRlciB7XG4gICAgcmV0dXJuIFRyYW5zYWN0aW9uQnVpbGRlckZhY3RvcnkuaW5pdGlhbGl6ZUJ1aWxkZXIodHgsIG5ldyBXYWxsZXRJbml0aWFsaXphdGlvbkJ1aWxkZXIodGhpcy5fY29pbkNvbmZpZykpO1xuICB9XG5cbiAgLyoqIEBpbmhlcml0ZG9jICovXG4gIGdldFRyYW5zZmVyQnVpbGRlcih0eD86IFRyYW5zYWN0aW9uKTogVHJhbnNmZXJCdWlsZGVyIHtcbiAgICByZXR1cm4gVHJhbnNhY3Rpb25CdWlsZGVyRmFjdG9yeS5pbml0aWFsaXplQnVpbGRlcih0eCwgbmV3IFRyYW5zZmVyQnVpbGRlcih0aGlzLl9jb2luQ29uZmlnKSk7XG4gIH1cblxuICAvKipcbiAgICogSW5pdGlhbGl6ZSB0aGUgYnVpbGRlciB3aXRoIHRoZSBnaXZlbiB0cmFuc2FjdGlvblxuICAgKlxuICAgKiBAcGFyYW0ge1RyYW5zYWN0aW9uIHwgdW5kZWZpbmVkfSB0eCAtIHRoZSB0cmFuc2FjdGlvbiB1c2VkIHRvIGluaXRpYWxpemUgdGhlIGJ1aWxkZXJcbiAgICogQHBhcmFtIHtUcmFuc2FjdGlvbkJ1aWxkZXJ9IGJ1aWxkZXIgLSB0aGUgYnVpbGRlciB0byBiZSBpbml0aWFsaXplZFxuICAgKiBAcmV0dXJucyB7VHJhbnNhY3Rpb25CdWlsZGVyfSB0aGUgYnVpbGRlciBpbml0aWFsaXplZFxuICAgKi9cbiAgcHJpdmF0ZSBzdGF0aWMgaW5pdGlhbGl6ZUJ1aWxkZXI8VCBleHRlbmRzIFRyYW5zYWN0aW9uQnVpbGRlcj4odHg6IFRyYW5zYWN0aW9uIHwgdW5kZWZpbmVkLCBidWlsZGVyOiBUKTogVCB7XG4gICAgaWYgKHR4KSB7XG4gICAgICBidWlsZGVyLmluaXRCdWlsZGVyKHR4KTtcbiAgICB9XG4gICAgcmV0dXJuIGJ1aWxkZXI7XG4gIH1cbn1cbiJdfQ==
|
|
@@ -7,8 +7,6 @@ export declare class TransferBuilder extends TransactionBuilder {
|
|
|
7
7
|
/** @inheritdoc */
|
|
8
8
|
protected buildImplementation(): Promise<Transaction>;
|
|
9
9
|
/** @inheritdoc */
|
|
10
|
-
protected fromImplementation(rawTransaction: any): Transaction;
|
|
11
|
-
/** @inheritdoc */
|
|
12
10
|
protected signImplementation(key: BaseKey): Transaction;
|
|
13
11
|
}
|
|
14
12
|
//# sourceMappingURL=transferBuilder.d.ts.map
|